From 22a5fb58b4a5e5d861c63f5b45fdf71051a8efdc Mon Sep 17 00:00:00 2001 From: Jon Staab Date: Thu, 20 Jun 2024 10:19:32 -0700 Subject: [PATCH] Fix sortBy to work with more data types, add kind 10014 --- package-lock.json | 16 ++++++++-------- packages/feeds/package.json | 2 +- packages/lib/package.json | 2 +- packages/lib/src/Tools.ts | 9 +++++++-- packages/net/package.json | 4 ++-- packages/util/package.json | 4 ++-- packages/util/src/Kinds.ts | 1 + 7 files changed, 22 insertions(+), 16 deletions(-) diff --git a/package-lock.json b/package-lock.json index 565cdf6..664d611 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3087,10 +3087,10 @@ }, "packages/feeds": { "name": "@welshman/feeds", - "version": "0.0.10", + "version": "0.0.12", "license": "MIT", "dependencies": { - "@welshman/util": "0.0.14" + "@welshman/util": "0.0.15" }, "devDependencies": { "gts": "^5.0.1", @@ -3100,7 +3100,7 @@ }, "packages/lib": { "name": "@welshman/lib", - "version": "0.0.9", + "version": "0.0.10", "license": "MIT", "dependencies": { "@scure/base": "^1.1.6", @@ -3124,11 +3124,11 @@ }, "packages/net": { "name": "@welshman/net", - "version": "0.0.12", + "version": "0.0.13", "license": "MIT", "dependencies": { - "@welshman/lib": "0.0.9", - "@welshman/util": "0.0.14", + "@welshman/lib": "0.0.10", + "@welshman/util": "0.0.15", "isomorphic-ws": "^5.0.0", "ws": "^8.16.0" }, @@ -3140,10 +3140,10 @@ }, "packages/util": { "name": "@welshman/util", - "version": "0.0.14", + "version": "0.0.15", "license": "MIT", "dependencies": { - "@welshman/lib": "0.0.9", + "@welshman/lib": "0.0.10", "nostr-tools": "^2.3.2" }, "devDependencies": { diff --git a/packages/feeds/package.json b/packages/feeds/package.json index 5e3a23d..1d70eed 100644 --- a/packages/feeds/package.json +++ b/packages/feeds/package.json @@ -31,6 +31,6 @@ "typescript": "~5.1.6" }, "dependencies": { - "@welshman/util": "0.0.14" + "@welshman/util": "0.0.15" } } diff --git a/packages/lib/package.json b/packages/lib/package.json index 6596c70..e2bf307 100644 --- a/packages/lib/package.json +++ b/packages/lib/package.json @@ -1,6 +1,6 @@ { "name": "@welshman/lib", - "version": "0.0.9", + "version": "0.0.10", "author": "hodlbod", "license": "MIT", "description": "A collection of utilities.", diff --git a/packages/lib/src/Tools.ts b/packages/lib/src/Tools.ts index d4de895..ff3c305 100644 --- a/packages/lib/src/Tools.ts +++ b/packages/lib/src/Tools.ts @@ -209,8 +209,13 @@ export const uniqBy = (f: (x: T) => any, xs: T[]) => { export const sort = (xs: T[]) => [...xs].sort() -export const sortBy = (f: (x: T) => number, xs: T[]) => - [...xs].sort((a: T, b: T) => f(a) - f(b)) +export const sortBy = (f: (x: T) => any, xs: T[]) => + [...xs].sort((a: T, b: T) => { + const x = f(a) + const y = f(b) + + return x < y ? -1 : x > y ? 1 : 0 + }) export const groupBy = (f: (x: T) => K, xs: T[]) => { const r = new Map() diff --git a/packages/net/package.json b/packages/net/package.json index 43d8acc..86f0c24 100644 --- a/packages/net/package.json +++ b/packages/net/package.json @@ -31,8 +31,8 @@ "typescript": "~5.1.6" }, "dependencies": { - "@welshman/lib": "0.0.9", - "@welshman/util": "0.0.14", + "@welshman/lib": "0.0.10", + "@welshman/util": "0.0.15", "isomorphic-ws": "^5.0.0", "ws": "^8.16.0" } diff --git a/packages/util/package.json b/packages/util/package.json index 7ef8b13..83a9d99 100644 --- a/packages/util/package.json +++ b/packages/util/package.json @@ -1,6 +1,6 @@ { "name": "@welshman/util", - "version": "0.0.14", + "version": "0.0.15", "author": "hodlbod", "license": "MIT", "description": "A collection of nostr-related utilities.", @@ -31,7 +31,7 @@ "typescript": "~5.1.6" }, "dependencies": { - "@welshman/lib": "0.0.9", + "@welshman/lib": "0.0.10", "nostr-tools": "^2.3.2" } } diff --git a/packages/util/src/Kinds.ts b/packages/util/src/Kinds.ts index f25f7ac..a5d4d3e 100644 --- a/packages/util/src/Kinds.ts +++ b/packages/util/src/Kinds.ts @@ -98,6 +98,7 @@ export const CHANNELS = 10005 export const BLOCKED_RELAYS = 10006 export const SEARCH_RELAYS = 10007 export const GROUPS = 10009 +export const FEEDS = 10014 export const TOPICS = 10015 export const EMOJIS = 10030 export const DM_INBOX_RELAYS = 10050