@welshman/app 0.6.7 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/dist/app/src/blossom.d.ts +7 -5
  2. package/dist/app/src/blossom.d.ts.map +1 -1
  3. package/dist/app/src/blossom.js +12 -11
  4. package/dist/app/src/blossom.js.map +1 -1
  5. package/dist/app/src/commands.d.ts +2 -2
  6. package/dist/app/src/commands.d.ts.map +1 -1
  7. package/dist/app/src/commands.js +31 -31
  8. package/dist/app/src/commands.js.map +1 -1
  9. package/dist/app/src/core.d.ts +0 -6
  10. package/dist/app/src/core.d.ts.map +1 -1
  11. package/dist/app/src/core.js +0 -33
  12. package/dist/app/src/core.js.map +1 -1
  13. package/dist/app/src/feeds.d.ts.map +1 -1
  14. package/dist/app/src/feeds.js +5 -4
  15. package/dist/app/src/feeds.js.map +1 -1
  16. package/dist/app/src/follows.d.ts +8 -5
  17. package/dist/app/src/follows.d.ts.map +1 -1
  18. package/dist/app/src/follows.js +12 -10
  19. package/dist/app/src/follows.js.map +1 -1
  20. package/dist/app/src/handles.d.ts +14 -5
  21. package/dist/app/src/handles.d.ts.map +1 -1
  22. package/dist/app/src/handles.js +46 -37
  23. package/dist/app/src/handles.js.map +1 -1
  24. package/dist/app/src/index.d.ts +2 -2
  25. package/dist/app/src/index.d.ts.map +1 -1
  26. package/dist/app/src/index.js +12 -12
  27. package/dist/app/src/index.js.map +1 -1
  28. package/dist/app/src/messagingRelayLists.d.ts +9 -0
  29. package/dist/app/src/messagingRelayLists.d.ts.map +1 -0
  30. package/dist/app/src/messagingRelayLists.js +18 -0
  31. package/dist/app/src/messagingRelayLists.js.map +1 -0
  32. package/dist/app/src/mutes.d.ts +8 -4
  33. package/dist/app/src/mutes.d.ts.map +1 -1
  34. package/dist/app/src/mutes.js +12 -10
  35. package/dist/app/src/mutes.js.map +1 -1
  36. package/dist/app/src/pins.d.ts +8 -5
  37. package/dist/app/src/pins.d.ts.map +1 -1
  38. package/dist/app/src/pins.js +12 -10
  39. package/dist/app/src/pins.js.map +1 -1
  40. package/dist/app/src/profiles.d.ts +9 -6
  41. package/dist/app/src/profiles.d.ts.map +1 -1
  42. package/dist/app/src/profiles.js +15 -13
  43. package/dist/app/src/profiles.js.map +1 -1
  44. package/dist/app/src/relayLists.d.ts +15 -0
  45. package/dist/app/src/relayLists.d.ts.map +1 -0
  46. package/dist/app/src/{relaySelections.js → relayLists.js} +14 -12
  47. package/dist/app/src/relayLists.js.map +1 -0
  48. package/dist/app/src/relayStats.d.ts +8 -3
  49. package/dist/app/src/relayStats.d.ts.map +1 -1
  50. package/dist/app/src/relayStats.js +16 -10
  51. package/dist/app/src/relayStats.js.map +1 -1
  52. package/dist/app/src/relays.d.ts +16 -5
  53. package/dist/app/src/relays.d.ts.map +1 -1
  54. package/dist/app/src/relays.js +57 -47
  55. package/dist/app/src/relays.js.map +1 -1
  56. package/dist/app/src/search.js +3 -3
  57. package/dist/app/src/search.js.map +1 -1
  58. package/dist/app/src/session.d.ts.map +1 -1
  59. package/dist/app/src/session.js +2 -2
  60. package/dist/app/src/session.js.map +1 -1
  61. package/dist/app/src/sync.js +2 -2
  62. package/dist/app/src/sync.js.map +1 -1
  63. package/dist/app/src/thunk.d.ts.map +1 -1
  64. package/dist/app/src/thunk.js +2 -2
  65. package/dist/app/src/thunk.js.map +1 -1
  66. package/dist/app/src/topics.d.ts +2 -1
  67. package/dist/app/src/topics.d.ts.map +1 -1
  68. package/dist/app/src/topics.js +33 -15
  69. package/dist/app/src/topics.js.map +1 -1
  70. package/dist/app/src/user.d.ts +24 -21
  71. package/dist/app/src/user.d.ts.map +1 -1
  72. package/dist/app/src/user.js +35 -50
  73. package/dist/app/src/user.js.map +1 -1
  74. package/dist/app/src/wot.d.ts +8 -4
  75. package/dist/app/src/wot.d.ts.map +1 -1
  76. package/dist/app/src/wot.js +20 -16
  77. package/dist/app/src/wot.js.map +1 -1
  78. package/dist/app/src/zappers.d.ts +22 -7
  79. package/dist/app/src/zappers.d.ts.map +1 -1
  80. package/dist/app/src/zappers.js +48 -40
  81. package/dist/app/src/zappers.js.map +1 -1
  82. package/dist/feeds/src/controller.d.ts.map +1 -1
  83. package/dist/feeds/src/controller.js +6 -3
  84. package/dist/feeds/src/controller.js.map +1 -1
  85. package/dist/lib/src/Tools.d.ts +43 -15
  86. package/dist/lib/src/Tools.d.ts.map +1 -1
  87. package/dist/lib/src/Tools.js +90 -42
  88. package/dist/lib/src/Tools.js.map +1 -1
  89. package/dist/net/src/repository.js +1 -1
  90. package/dist/net/src/repository.js.map +1 -1
  91. package/dist/signer/src/nip59.d.ts.map +1 -1
  92. package/dist/signer/src/nip59.js +2 -2
  93. package/dist/signer/src/nip59.js.map +1 -1
  94. package/dist/signer/src/signers/nip01.d.ts.map +1 -1
  95. package/dist/signer/src/signers/nip01.js +2 -1
  96. package/dist/signer/src/signers/nip01.js.map +1 -1
  97. package/dist/signer/src/signers/nip07.d.ts.map +1 -1
  98. package/dist/signer/src/signers/nip07.js +2 -1
  99. package/dist/signer/src/signers/nip07.js.map +1 -1
  100. package/dist/signer/src/signers/nip46.d.ts.map +1 -1
  101. package/dist/signer/src/signers/nip46.js +2 -2
  102. package/dist/signer/src/signers/nip46.js.map +1 -1
  103. package/dist/signer/src/signers/nip55.d.ts.map +1 -1
  104. package/dist/signer/src/signers/nip55.js +2 -1
  105. package/dist/signer/src/signers/nip55.js.map +1 -1
  106. package/dist/signer/src/util.d.ts +1 -36
  107. package/dist/signer/src/util.d.ts.map +1 -1
  108. package/dist/signer/src/util.js +2 -25
  109. package/dist/signer/src/util.js.map +1 -1
  110. package/dist/store/src/index.d.ts +1 -5
  111. package/dist/store/src/index.d.ts.map +1 -1
  112. package/dist/store/src/index.js +1 -5
  113. package/dist/store/src/index.js.map +1 -1
  114. package/dist/store/src/misc.d.ts +18 -0
  115. package/dist/store/src/misc.d.ts.map +1 -0
  116. package/dist/store/src/misc.js +66 -0
  117. package/dist/store/src/misc.js.map +1 -0
  118. package/dist/store/src/repository.d.ts +49 -11
  119. package/dist/store/src/repository.d.ts.map +1 -1
  120. package/dist/store/src/repository.js +293 -81
  121. package/dist/store/src/repository.js.map +1 -1
  122. package/dist/tsconfig.build.tsbuildinfo +1 -1
  123. package/dist/util/src/Keys.d.ts +37 -0
  124. package/dist/util/src/Keys.d.ts.map +1 -0
  125. package/dist/util/src/Keys.js +26 -0
  126. package/dist/util/src/Keys.js.map +1 -0
  127. package/dist/util/src/Kinds.d.ts +8 -1
  128. package/dist/util/src/Kinds.d.ts.map +1 -1
  129. package/dist/util/src/Kinds.js +8 -1
  130. package/dist/util/src/Kinds.js.map +1 -1
  131. package/dist/util/src/Pow.d.ts +11 -0
  132. package/dist/util/src/Pow.d.ts.map +1 -0
  133. package/dist/util/src/Pow.js +127 -0
  134. package/dist/util/src/Pow.js.map +1 -0
  135. package/dist/util/src/Relay.d.ts +1 -1
  136. package/dist/util/src/Relay.d.ts.map +1 -1
  137. package/dist/util/src/Relay.js +1 -1
  138. package/dist/util/src/Relay.js.map +1 -1
  139. package/dist/util/src/index.d.ts +2 -0
  140. package/dist/util/src/index.d.ts.map +1 -1
  141. package/dist/util/src/index.js +2 -0
  142. package/dist/util/src/index.js.map +1 -1
  143. package/package.json +8 -8
  144. package/dist/app/src/inboxRelaySelections.d.ts +0 -6
  145. package/dist/app/src/inboxRelaySelections.d.ts.map +0 -1
  146. package/dist/app/src/inboxRelaySelections.js +0 -16
  147. package/dist/app/src/inboxRelaySelections.js.map +0 -1
  148. package/dist/app/src/relaySelections.d.ts +0 -11
  149. package/dist/app/src/relaySelections.d.ts.map +0 -1
  150. package/dist/app/src/relaySelections.js.map +0 -1
  151. package/dist/store/src/collection.d.ts +0 -34
  152. package/dist/store/src/collection.d.ts.map +0 -1
  153. package/dist/store/src/collection.js +0 -82
  154. package/dist/store/src/collection.js.map +0 -1
  155. package/dist/store/src/custom.d.ts +0 -10
  156. package/dist/store/src/custom.d.ts.map +0 -1
  157. package/dist/store/src/custom.js +0 -41
  158. package/dist/store/src/custom.js.map +0 -1
  159. package/dist/store/src/getter.d.ts +0 -11
  160. package/dist/store/src/getter.d.ts.map +0 -1
  161. package/dist/store/src/getter.js +0 -11
  162. package/dist/store/src/getter.js.map +0 -1
  163. package/dist/store/src/memoize.d.ts +0 -5
  164. package/dist/store/src/memoize.d.ts.map +0 -1
  165. package/dist/store/src/memoize.js +0 -6
  166. package/dist/store/src/memoize.js.map +0 -1
  167. package/dist/store/src/throttle.d.ts +0 -3
  168. package/dist/store/src/throttle.d.ts.map +0 -1
  169. package/dist/store/src/throttle.js +0 -9
  170. package/dist/store/src/throttle.js.map +0 -1
@@ -1,6 +1,8 @@
1
- import { PublishedList } from "@welshman/util";
2
- export declare const blossomServers: import("@welshman/store").WritableWithGetter<PublishedList[]>;
3
- export declare const blossomServersByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, deriveBlossomServers: (key: string | undefined, relays?: string[]) => import("svelte/store").Readable<undefined> | {
4
- subscribe: (f: import("svelte/store").Subscriber<PublishedList | undefined>) => import("svelte/store").Unsubscriber;
5
- }, loadBlossomServers: (key: string, relays?: string[], force?: boolean) => Promise<PublishedList | undefined>;
1
+ export declare const blossomServerListsByPubkey: import("svelte/store").Readable<Map<string, import("@welshman/util").PublishedList>>;
2
+ export declare const blossomServerLists: import("svelte/store").Readable<import("@welshman/util").PublishedList[]>;
3
+ export declare const getBlossomServerListsByPubkey: () => Map<string, import("@welshman/util").PublishedList>;
4
+ export declare const getBlossomServerList: (pubkey: string) => import("@welshman/util").PublishedList | undefined;
5
+ export declare const forceLoadBlossomServerList: (key: string, ...args: any[]) => Promise<import("@welshman/util").PublishedList | undefined>;
6
+ export declare const loadBlossomServerList: (key: string, ...args: any[]) => Promise<import("@welshman/lib").Maybe<import("@welshman/util").PublishedList>>;
7
+ export declare const deriveBlossomServerList: (key?: string, ...args: any[]) => import("svelte/store").Readable<import("@welshman/util").PublishedList | undefined>;
6
8
  //# sourceMappingURL=blossom.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"blossom.d.ts","sourceRoot":"","sources":["../../../src/blossom.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,aAAa,EAAC,MAAM,gBAAgB,CAAA;AAK1D,eAAO,MAAM,cAAc,+DAIzB,CAAA;AAEF,eAAO,MACO,sBAAsB,4EACtB,oBAAoB;;GACtB,kBAAkB,yFAM5B,CAAA"}
1
+ {"version":3,"file":"blossom.d.ts","sourceRoot":"","sources":["../../../src/blossom.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,0BAA0B,sFAKrC,CAAA;AAEF,eAAO,MAAM,kBAAkB,2EAA0C,CAAA;AAEzE,eAAO,MAAM,6BAA6B,2DAAqC,CAAA;AAE/E,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,uDAAgD,CAAA;AAEnG,eAAO,MAAM,0BAA0B,8FAGtC,CAAA;AAED,eAAO,MAAM,qBAAqB,iHAGjC,CAAA;AAED,eAAO,MAAM,uBAAuB,uHAGnC,CAAA"}
@@ -1,16 +1,17 @@
1
1
  import { BLOSSOM_SERVERS, asDecryptedEvent, readList } from "@welshman/util";
2
- import { deriveEventsMapped, collection } from "@welshman/store";
2
+ import { deriveItemsByKey, deriveItems, makeForceLoadItem, makeLoadItem, makeDeriveItem, getter, } from "@welshman/store";
3
3
  import { repository } from "./core.js";
4
- import { makeOutboxLoader } from "./relaySelections.js";
5
- export const blossomServers = deriveEventsMapped(repository, {
6
- filters: [{ kinds: [BLOSSOM_SERVERS] }],
7
- itemToEvent: item => item.event,
4
+ import { makeOutboxLoader } from "./relayLists.js";
5
+ export const blossomServerListsByPubkey = deriveItemsByKey({
6
+ repository,
8
7
  eventToItem: (event) => readList(asDecryptedEvent(event)),
8
+ filters: [{ kinds: [BLOSSOM_SERVERS] }],
9
+ getKey: blossomServerList => blossomServerList.event.pubkey,
9
10
  });
10
- export const { indexStore: blossomServersByPubkey, deriveItem: deriveBlossomServers, loadItem: loadBlossomServers, } = collection({
11
- name: "blossomServers",
12
- store: blossomServers,
13
- getKey: blossomServers => blossomServers.event.pubkey,
14
- load: makeOutboxLoader(BLOSSOM_SERVERS),
15
- });
11
+ export const blossomServerLists = deriveItems(blossomServerListsByPubkey);
12
+ export const getBlossomServerListsByPubkey = getter(blossomServerListsByPubkey);
13
+ export const getBlossomServerList = (pubkey) => getBlossomServerListsByPubkey().get(pubkey);
14
+ export const forceLoadBlossomServerList = makeForceLoadItem(makeOutboxLoader(BLOSSOM_SERVERS), getBlossomServerList);
15
+ export const loadBlossomServerList = makeLoadItem(makeOutboxLoader(BLOSSOM_SERVERS), getBlossomServerList);
16
+ export const deriveBlossomServerList = makeDeriveItem(blossomServerListsByPubkey, loadBlossomServerList);
16
17
  //# sourceMappingURL=blossom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"blossom.js","sourceRoot":"","sources":["../../../src/blossom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAE,gBAAgB,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAA;AAE1E,OAAO,EAAC,kBAAkB,EAAE,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AACpC,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAA;AAErD,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAAgB,UAAU,EAAE;IAC1E,OAAO,EAAE,CAAC,EAAC,KAAK,EAAE,CAAC,eAAe,CAAC,EAAC,CAAC;IACrC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK;IAC/B,WAAW,EAAE,CAAC,KAAmB,EAAE,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;CACxE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,EACX,UAAU,EAAE,sBAAsB,EAClC,UAAU,EAAE,oBAAoB,EAChC,QAAQ,EAAE,kBAAkB,GAC7B,GAAG,UAAU,CAAC;IACb,IAAI,EAAE,gBAAgB;IACtB,KAAK,EAAE,cAAc;IACrB,MAAM,EAAE,cAAc,CAAC,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM;IACrD,IAAI,EAAE,gBAAgB,CAAC,eAAe,CAAC;CACxC,CAAC,CAAA"}
1
+ {"version":3,"file":"blossom.js","sourceRoot":"","sources":["../../../src/blossom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAE,gBAAgB,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAA;AAE1E,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,MAAM,GACP,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AACpC,OAAO,EAAC,gBAAgB,EAAC,MAAM,iBAAiB,CAAA;AAEhD,MAAM,CAAC,MAAM,0BAA0B,GAAG,gBAAgB,CAAC;IACzD,UAAU;IACV,WAAW,EAAE,CAAC,KAAmB,EAAE,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACvE,OAAO,EAAE,CAAC,EAAC,KAAK,EAAE,CAAC,eAAe,CAAC,EAAC,CAAC;IACrC,MAAM,EAAE,iBAAiB,CAAC,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM;CAC5D,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,WAAW,CAAC,0BAA0B,CAAC,CAAA;AAEzE,MAAM,CAAC,MAAM,6BAA6B,GAAG,MAAM,CAAC,0BAA0B,CAAC,CAAA;AAE/E,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,6BAA6B,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAEnG,MAAM,CAAC,MAAM,0BAA0B,GAAG,iBAAiB,CACzD,gBAAgB,CAAC,eAAe,CAAC,EACjC,oBAAoB,CACrB,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,YAAY,CAC/C,gBAAgB,CAAC,eAAe,CAAC,EACjC,oBAAoB,CACrB,CAAA;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,cAAc,CACnD,0BAA0B,EAC1B,qBAAqB,CACtB,CAAA"}
@@ -3,8 +3,8 @@ import type { RoomMeta, Profile } from "@welshman/util";
3
3
  import { ThunkOptions, MergedThunk } from "./thunk.js";
4
4
  export declare const removeRelay: (url: string, mode: RelayMode) => Promise<import("./thunk.js").Thunk>;
5
5
  export declare const addRelay: (url: string, mode: RelayMode) => Promise<import("./thunk.js").Thunk>;
6
- export declare const removeInboxRelay: (url: string) => Promise<import("./thunk.js").Thunk>;
7
- export declare const addInboxRelay: (url: string) => Promise<import("./thunk.js").Thunk>;
6
+ export declare const removeMessagingRelay: (url: string) => Promise<import("./thunk.js").Thunk>;
7
+ export declare const addMessagingRelay: (url: string) => Promise<import("./thunk.js").Thunk>;
8
8
  export declare const setProfile: (profile: Profile) => import("./thunk.js").Thunk;
9
9
  export declare const unfollow: (value: string) => Promise<import("./thunk.js").Thunk>;
10
10
  export declare const follow: (tag: string[]) => Promise<import("./thunk.js").Thunk>;
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/commands.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,iBAAiB,EAIjB,aAAa,EAgBb,SAAS,EAMV,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAC,QAAQ,EAAE,OAAO,EAAC,MAAM,gBAAgB,CAAA;AAerD,OAAO,EAAC,YAAY,EAAE,WAAW,EAAe,MAAM,YAAY,CAAA;AAIlE,eAAO,MAAM,WAAW,GAAU,KAAK,MAAM,EAAE,MAAM,SAAS,wCAoB7D,CAAA;AAED,eAAO,MAAM,QAAQ,GAAU,KAAK,MAAM,EAAE,MAAM,SAAS,wCAW1D,CAAA;AAID,eAAO,MAAM,gBAAgB,GAAU,KAAK,MAAM,wCAQjD,CAAA;AAED,eAAO,MAAM,aAAa,GAAU,KAAK,MAAM,wCAQ9C,CAAA;AAID,eAAO,MAAM,UAAU,GAAI,SAAS,OAAO,+BAM1C,CAAA;AAID,eAAO,MAAM,QAAQ,GAAU,OAAO,MAAM,wCAQ3C,CAAA;AAED,eAAO,MAAM,MAAM,GAAU,KAAK,MAAM,EAAE,wCAQzC,CAAA;AAED,eAAO,MAAM,MAAM,GAAU,OAAO,MAAM,wCAQzC,CAAA;AAED,eAAO,MAAM,YAAY,GAAU,KAAK,MAAM,EAAE,wCAQ/C,CAAA;AAED,eAAO,MAAM,aAAa,GAAU,KAAK,MAAM,EAAE,wCAQhD,CAAA;AAED,eAAO,MAAM,QAAQ,GAAU,8BAG5B;IACD,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,EAAE,CAAA;CACzB,wCAQA,CAAA;AAED,eAAO,MAAM,KAAK,GAAU,OAAO,MAAM,wCAQxC,CAAA;AAED,eAAO,MAAM,GAAG,GAAU,KAAK,MAAM,EAAE,wCAQtC,CAAA;AAID,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,YAAY,EAAE,OAAO,GAAG,QAAQ,CAAC,GAAG;IACxE,KAAK,EAAE,aAAa,CAAA;IACpB,UAAU,EAAE,MAAM,EAAE,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,mCAAiC,kBAAkB,gBAO5E,CAAA;AAIH,eAAO,MAAM,WAAW,GAAU,KAAK,MAAM,EAAE,SAAS,iBAAiB,yDAOxE,CAAA;AAID,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,+BACW,CAAA;AAEjE,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,+BACW,CAAA;AAEjE,eAAO,MAAM,QAAQ,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,+BACW,CAAA;AAE/D,eAAO,MAAM,QAAQ,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,+BACW,CAAA;AAE/D,eAAO,MAAM,SAAS,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,+BACW,CAAA;AAEhE,eAAO,MAAM,aAAa,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,EAAE,QAAQ,MAAM,+BACG,CAAA;AAE5E,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,EAAE,QAAQ,MAAM,+BACG,CAAA"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/commands.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,iBAAiB,EAIjB,aAAa,EAgBb,SAAS,EAMV,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAC,QAAQ,EAAE,OAAO,EAAC,MAAM,gBAAgB,CAAA;AAerD,OAAO,EAAC,YAAY,EAAE,WAAW,EAAe,MAAM,YAAY,CAAA;AAIlE,eAAO,MAAM,WAAW,GAAU,KAAK,MAAM,EAAE,MAAM,SAAS,wCAoB7D,CAAA;AAED,eAAO,MAAM,QAAQ,GAAU,KAAK,MAAM,EAAE,MAAM,SAAS,wCAW1D,CAAA;AAID,eAAO,MAAM,oBAAoB,GAAU,KAAK,MAAM,wCAQrD,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAU,KAAK,MAAM,wCAQlD,CAAA;AAID,eAAO,MAAM,UAAU,GAAI,SAAS,OAAO,+BAM1C,CAAA;AAID,eAAO,MAAM,QAAQ,GAAU,OAAO,MAAM,wCAQ3C,CAAA;AAED,eAAO,MAAM,MAAM,GAAU,KAAK,MAAM,EAAE,wCAQzC,CAAA;AAED,eAAO,MAAM,MAAM,GAAU,OAAO,MAAM,wCAQzC,CAAA;AAED,eAAO,MAAM,YAAY,GAAU,KAAK,MAAM,EAAE,wCAQ/C,CAAA;AAED,eAAO,MAAM,aAAa,GAAU,KAAK,MAAM,EAAE,wCAQhD,CAAA;AAED,eAAO,MAAM,QAAQ,GAAU,8BAG5B;IACD,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,EAAE,CAAA;CACzB,wCAQA,CAAA;AAED,eAAO,MAAM,KAAK,GAAU,OAAO,MAAM,wCAQxC,CAAA;AAED,eAAO,MAAM,GAAG,GAAU,KAAK,MAAM,EAAE,wCAQtC,CAAA;AAID,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,YAAY,EAAE,OAAO,GAAG,QAAQ,CAAC,GAAG;IACxE,KAAK,EAAE,aAAa,CAAA;IACpB,UAAU,EAAE,MAAM,EAAE,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,mCAAiC,kBAAkB,gBAO5E,CAAA;AAIH,eAAO,MAAM,WAAW,GAAU,KAAK,MAAM,EAAE,SAAS,iBAAiB,yDAOxE,CAAA;AAID,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,+BACW,CAAA;AAEjE,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,+BACW,CAAA;AAEjE,eAAO,MAAM,QAAQ,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,+BACW,CAAA;AAE/D,eAAO,MAAM,QAAQ,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,+BACW,CAAA;AAE/D,eAAO,MAAM,SAAS,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,+BACW,CAAA;AAEhE,eAAO,MAAM,aAAa,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,EAAE,QAAQ,MAAM,+BACG,CAAA;AAE5E,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,EAAE,MAAM,QAAQ,EAAE,QAAQ,MAAM,+BACG,CAAA"}
@@ -1,14 +1,14 @@
1
1
  import { get } from "svelte/store";
2
- import { uniq, nthNe, removeNil, nthEq } from "@welshman/lib";
3
- import { sendManagementRequest, addToListPublicly, addToListPrivately, updateList, removeFromList, makeHttpAuth, getListTags, getRelayTags, makeList, makeRoomCreateEvent, makeRoomDeleteEvent, makeRoomEditEvent, makeRoomJoinEvent, makeRoomLeaveEvent, makeRoomAddMemberEvent, makeRoomRemoveMemberEvent, isPublishedProfile, createProfile, editProfile, RelayMode, INBOX_RELAYS, FOLLOWS, RELAYS, MUTES, PINS, } from "@welshman/util";
2
+ import { uniq, nthNe, removeUndefined, nthEq } from "@welshman/lib";
3
+ import { sendManagementRequest, addToListPublicly, addToListPrivately, updateList, removeFromList, makeHttpAuth, getListTags, getRelayTags, makeList, makeRoomCreateEvent, makeRoomDeleteEvent, makeRoomEditEvent, makeRoomJoinEvent, makeRoomLeaveEvent, makeRoomAddMemberEvent, makeRoomRemoveMemberEvent, isPublishedProfile, createProfile, editProfile, RelayMode, MESSAGING_RELAYS, FOLLOWS, RELAYS, MUTES, PINS, } from "@welshman/util";
4
4
  import { Router, addMaximalFallbacks } from "@welshman/router";
5
- import { userRelaySelections, loadUserRelaySelections, userInboxRelaySelections, loadUserInboxRelaySelections, userFollows, loadUserFollows, userMutes, loadUserMutes, userPins, loadUserPins, } from "./user.js";
5
+ import { userRelayList, forceLoadUserRelayList, userMessagingRelayList, forceLoadUserMessagingRelayList, userFollowList, forceLoadUserFollowList, userMuteList, forceLoadUserMuteList, userPinList, forceLoadUserPinList, } from "./user.js";
6
6
  import { nip44EncryptToSelf, signer } from "./session.js";
7
7
  import { MergedThunk, publishThunk } from "./thunk.js";
8
8
  // NIP 65
9
9
  export const removeRelay = async (url, mode) => {
10
- await loadUserRelaySelections([], true);
11
- const list = get(userRelaySelections) || makeList({ kind: RELAYS });
10
+ await forceLoadUserRelayList([]);
11
+ const list = get(userRelayList) || makeList({ kind: RELAYS });
12
12
  const dup = getRelayTags(getListTags(list)).find(nthEq(1, url));
13
13
  const alt = mode === RelayMode.Read ? RelayMode.Write : RelayMode.Read;
14
14
  const tags = list.publicTags.filter(nthNe(1, url));
@@ -23,26 +23,26 @@ export const removeRelay = async (url, mode) => {
23
23
  return publishThunk({ event, relays });
24
24
  };
25
25
  export const addRelay = async (url, mode) => {
26
- await loadUserRelaySelections([], true);
27
- const list = get(userRelaySelections) || makeList({ kind: RELAYS });
26
+ await forceLoadUserRelayList([]);
27
+ const list = get(userRelayList) || makeList({ kind: RELAYS });
28
28
  const dup = getRelayTags(getListTags(list)).find(nthEq(1, url));
29
- const tag = removeNil(["r", url, dup && dup[2] !== mode ? undefined : mode]);
29
+ const tag = removeUndefined(["r", url, dup && dup[2] !== mode ? undefined : mode]);
30
30
  const tags = [...list.publicTags.filter(nthNe(1, url)), tag];
31
31
  const event = { kind: list.kind, content: list.event?.content || "", tags };
32
32
  const relays = Router.get().FromUser().policy(addMaximalFallbacks).getUrls();
33
33
  return publishThunk({ event, relays });
34
34
  };
35
35
  // NIP 17
36
- export const removeInboxRelay = async (url) => {
37
- await loadUserInboxRelaySelections([], true);
38
- const list = get(userInboxRelaySelections) || makeList({ kind: INBOX_RELAYS });
36
+ export const removeMessagingRelay = async (url) => {
37
+ await forceLoadUserMessagingRelayList([]);
38
+ const list = get(userMessagingRelayList) || makeList({ kind: MESSAGING_RELAYS });
39
39
  const event = await removeFromList(list, url).reconcile(nip44EncryptToSelf);
40
40
  const relays = Router.get().FromUser().policy(addMaximalFallbacks).getUrls();
41
41
  return publishThunk({ event, relays });
42
42
  };
43
- export const addInboxRelay = async (url) => {
44
- await loadUserInboxRelaySelections([], true);
45
- const list = get(userInboxRelaySelections) || makeList({ kind: INBOX_RELAYS });
43
+ export const addMessagingRelay = async (url) => {
44
+ await forceLoadUserMessagingRelayList([]);
45
+ const list = get(userMessagingRelayList) || makeList({ kind: MESSAGING_RELAYS });
46
46
  const event = await addToListPublicly(list, ["relay", url]).reconcile(nip44EncryptToSelf);
47
47
  const relays = Router.get().FromUser().policy(addMaximalFallbacks).getUrls();
48
48
  return publishThunk({ event, relays });
@@ -56,63 +56,63 @@ export const setProfile = (profile) => {
56
56
  };
57
57
  // NIP 02
58
58
  export const unfollow = async (value) => {
59
- await loadUserFollows([], true);
60
- const list = get(userFollows) || makeList({ kind: FOLLOWS });
59
+ await forceLoadUserFollowList([]);
60
+ const list = get(userFollowList) || makeList({ kind: FOLLOWS });
61
61
  const event = await removeFromList(list, value).reconcile(nip44EncryptToSelf);
62
62
  const relays = Router.get().FromUser().policy(addMaximalFallbacks).getUrls();
63
63
  return publishThunk({ event, relays });
64
64
  };
65
65
  export const follow = async (tag) => {
66
- await loadUserFollows([], true);
67
- const list = get(userFollows) || makeList({ kind: FOLLOWS });
66
+ await forceLoadUserFollowList([]);
67
+ const list = get(userFollowList) || makeList({ kind: FOLLOWS });
68
68
  const event = await addToListPublicly(list, tag).reconcile(nip44EncryptToSelf);
69
69
  const relays = Router.get().FromUser().policy(addMaximalFallbacks).getUrls();
70
70
  return publishThunk({ event, relays });
71
71
  };
72
72
  export const unmute = async (value) => {
73
- await loadUserMutes([], true);
74
- const list = get(userMutes) || makeList({ kind: MUTES });
73
+ await forceLoadUserMuteList([]);
74
+ const list = get(userMuteList) || makeList({ kind: MUTES });
75
75
  const event = await removeFromList(list, value).reconcile(nip44EncryptToSelf);
76
76
  const relays = Router.get().FromUser().policy(addMaximalFallbacks).getUrls();
77
77
  return publishThunk({ event, relays });
78
78
  };
79
79
  export const mutePublicly = async (tag) => {
80
- await loadUserMutes([], true);
81
- const list = get(userMutes) || makeList({ kind: MUTES });
80
+ await forceLoadUserMuteList([]);
81
+ const list = get(userMuteList) || makeList({ kind: MUTES });
82
82
  const event = await addToListPublicly(list, tag).reconcile(nip44EncryptToSelf);
83
83
  const relays = Router.get().FromUser().policy(addMaximalFallbacks).getUrls();
84
84
  return publishThunk({ event, relays });
85
85
  };
86
86
  export const mutePrivately = async (tag) => {
87
- await loadUserMutes([], true);
88
- const list = get(userMutes) || makeList({ kind: MUTES });
87
+ await forceLoadUserMuteList([]);
88
+ const list = get(userMuteList) || makeList({ kind: MUTES });
89
89
  const event = await addToListPrivately(list, tag).reconcile(nip44EncryptToSelf);
90
90
  const relays = Router.get().FromUser().policy(addMaximalFallbacks).getUrls();
91
91
  return publishThunk({ event, relays });
92
92
  };
93
93
  export const setMutes = async ({ publicTags, privateTags, }) => {
94
- await loadUserMutes([], true);
95
- const list = get(userMutes) || makeList({ kind: MUTES });
94
+ await forceLoadUserMuteList([]);
95
+ const list = get(userMuteList) || makeList({ kind: MUTES });
96
96
  const event = await updateList(list, { publicTags, privateTags }).reconcile(nip44EncryptToSelf);
97
97
  const relays = Router.get().FromUser().policy(addMaximalFallbacks).getUrls();
98
98
  return publishThunk({ event, relays });
99
99
  };
100
100
  export const unpin = async (value) => {
101
- await loadUserPins([], true);
102
- const list = get(userPins) || makeList({ kind: PINS });
101
+ await forceLoadUserPinList([]);
102
+ const list = get(userPinList) || makeList({ kind: PINS });
103
103
  const event = await removeFromList(list, value).reconcile(nip44EncryptToSelf);
104
104
  const relays = Router.get().FromUser().policy(addMaximalFallbacks).getUrls();
105
105
  return publishThunk({ event, relays });
106
106
  };
107
107
  export const pin = async (tag) => {
108
- await loadUserPins([], true);
109
- const list = get(userPins) || makeList({ kind: PINS });
108
+ await forceLoadUserPinList([]);
109
+ const list = get(userPinList) || makeList({ kind: PINS });
110
110
  const event = await addToListPublicly(list, tag).reconcile(nip44EncryptToSelf);
111
111
  const relays = Router.get().FromUser().policy(addMaximalFallbacks).getUrls();
112
112
  return publishThunk({ event, relays });
113
113
  };
114
114
  export const sendWrapped = ({ event, recipients, ...options }) => new MergedThunk(uniq(recipients).map(recipient => {
115
- const relays = Router.get().PubkeyInbox(recipient).getUrls();
115
+ const relays = Router.get().MessagesForPubkey(recipient).getUrls();
116
116
  return publishThunk({ event, relays, recipient, ...options });
117
117
  }));
118
118
  // NIP 86
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/commands.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,4 @@
1
1
  import { Repository, Tracker } from "@welshman/net";
2
2
  export declare const tracker: Tracker;
3
3
  export declare const repository: Repository;
4
- export declare const makeRepositoryStore: ({ throttle: t }?: {
5
- throttle?: number;
6
- }) => import("@welshman/store").WritableWithGetter<Repository>;
7
- export declare const makeTrackerStore: ({ throttle: t }?: {
8
- throttle?: number;
9
- }) => import("@welshman/store").WritableWithGetter<Tracker>;
10
4
  //# sourceMappingURL=core.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/core.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAE,OAAO,EAAC,MAAM,eAAe,CAAA;AAGjD,eAAO,MAAM,OAAO,SAAgB,CAAA;AAEpC,eAAO,MAAM,UAAU,YAAmB,CAAA;AAI1C,eAAO,MAAM,mBAAmB,GAAI,kBAAqB;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAM,6DAiB9E,CAAA;AAEH,eAAO,MAAM,gBAAgB,GAAI,kBAAqB;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAM,0DAyB3E,CAAA"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,OAAO,EAAC,MAAM,eAAe,CAAA;AAEjD,eAAO,MAAM,OAAO,SAAgB,CAAA;AAEpC,eAAO,MAAM,UAAU,YAAmB,CAAA"}
@@ -1,37 +1,4 @@
1
- import { throttle } from "@welshman/lib";
2
1
  import { Repository, Tracker } from "@welshman/net";
3
- import { custom } from "@welshman/store";
4
2
  export const tracker = new Tracker();
5
3
  export const repository = Repository.get();
6
- // Adapt objects to stores
7
- export const makeRepositoryStore = ({ throttle: t = 300 } = {}) => custom(setter => {
8
- let onUpdate = () => setter(repository);
9
- if (t) {
10
- onUpdate = throttle(t, onUpdate);
11
- }
12
- onUpdate();
13
- repository.on("update", onUpdate);
14
- return () => repository.off("update", onUpdate);
15
- }, {
16
- onUpdate: (other) => repository.load(other.dump()),
17
- });
18
- export const makeTrackerStore = ({ throttle: t = 300 } = {}) => custom(setter => {
19
- let onUpdate = () => setter(tracker);
20
- if (t) {
21
- onUpdate = throttle(t, onUpdate);
22
- }
23
- onUpdate();
24
- tracker.on("add", onUpdate);
25
- tracker.on("remove", onUpdate);
26
- tracker.on("load", onUpdate);
27
- tracker.on("clear", onUpdate);
28
- return () => {
29
- tracker.off("add", onUpdate);
30
- tracker.off("remove", onUpdate);
31
- tracker.off("load", onUpdate);
32
- tracker.off("clear", onUpdate);
33
- };
34
- }, {
35
- onUpdate: (other) => tracker.load(other.relaysById),
36
- });
37
4
  //# sourceMappingURL=core.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAA;AACtC,OAAO,EAAC,UAAU,EAAE,OAAO,EAAC,MAAM,eAAe,CAAA;AACjD,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAA;AAEtC,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAEpC,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE,CAAA;AAE1C,0BAA0B;AAE1B,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAAC,QAAQ,EAAE,CAAC,GAAG,GAAG,KAAyB,EAAE,EAAE,EAAE,CACnF,MAAM,CACJ,MAAM,CAAC,EAAE;IACP,IAAI,QAAQ,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IAEvC,IAAI,CAAC,EAAE,CAAC;QACN,QAAQ,GAAG,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;IAClC,CAAC;IAED,QAAQ,EAAE,CAAA;IACV,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAEjC,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;AACjD,CAAC,EACD;IACE,QAAQ,EAAE,CAAC,KAAiB,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;CAC/D,CACF,CAAA;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAAC,QAAQ,EAAE,CAAC,GAAG,GAAG,KAAyB,EAAE,EAAE,EAAE,CAChF,MAAM,CACJ,MAAM,CAAC,EAAE;IACP,IAAI,QAAQ,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAEpC,IAAI,CAAC,EAAE,CAAC;QACN,QAAQ,GAAG,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;IAClC,CAAC;IAED,QAAQ,EAAE,CAAA;IACV,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IAC3B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC9B,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC5B,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAE7B,OAAO,GAAG,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;QAC5B,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAC/B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QAC7B,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAChC,CAAC,CAAA;AACH,CAAC,EACD;IACE,QAAQ,EAAE,CAAC,KAAc,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;CAC7D,CACF,CAAA"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,OAAO,EAAC,MAAM,eAAe,CAAA;AAEjD,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAEpC,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"feeds.d.ts","sourceRoot":"","sources":["../../../src/feeds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,cAAc,EAAE,qBAAqB,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAA;AAIlF,eAAO,MAAM,kBAAkB,GAAI,OAAO,MAAM,aAmB/C,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,KAAK,MAAM,EAAE,KAAK,MAAM,aAY7D,CAAA;AAED,KAAK,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,GAAG;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,CAAA;AAE5F,eAAO,MAAM,kBAAkB,GAAI,SAAS,yBAAyB,mBAC8B,CAAA"}
1
+ {"version":3,"file":"feeds.d.ts","sourceRoot":"","sources":["../../../src/feeds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,cAAc,EAAE,qBAAqB,EAAE,IAAI,EAAC,MAAM,iBAAiB,CAAA;AAIlF,eAAO,MAAM,kBAAkB,GAAI,OAAO,MAAM,aAmB/C,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,KAAK,MAAM,EAAE,KAAK,MAAM,aAa7D,CAAA;AAED,KAAK,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,GAAG;IAAC,IAAI,EAAE,IAAI,CAAA;CAAC,CAAA;AAE5F,eAAO,MAAM,kBAAkB,GAAI,SAAS,yBAAyB,mBAC8B,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { Scope, FeedController } from "@welshman/feeds";
2
2
  import { pubkey, signer } from "./session.js";
3
- import { wotGraph, maxWot, getFollows, getNetwork, getFollowers } from "./wot.js";
3
+ import { getWotGraph, getMaxWot, getFollows, getNetwork, getFollowers } from "./wot.js";
4
4
  export const getPubkeysForScope = (scope) => {
5
5
  const $pubkey = pubkey.get();
6
6
  if (!$pubkey) {
@@ -21,9 +21,10 @@ export const getPubkeysForScope = (scope) => {
21
21
  };
22
22
  export const getPubkeysForWOTRange = (min, max) => {
23
23
  const pubkeys = [];
24
- const thresholdMin = maxWot.get() * min;
25
- const thresholdMax = maxWot.get() * max;
26
- for (const [tpk, score] of wotGraph.get().entries()) {
24
+ const $maxWot = getMaxWot();
25
+ const thresholdMin = $maxWot * min;
26
+ const thresholdMax = $maxWot * max;
27
+ for (const [tpk, score] of getWotGraph().entries()) {
27
28
  if (score >= thresholdMin && score <= thresholdMax) {
28
29
  pubkeys.push(tpk);
29
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"feeds.js","sourceRoot":"","sources":["../../../src/feeds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,cAAc,EAA8B,MAAM,iBAAiB,CAAA;AAClF,OAAO,EAAC,MAAM,EAAE,MAAM,EAAC,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAC,MAAM,UAAU,CAAA;AAE/E,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;IAClD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,CAAA;IAE5B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,CAAA;IACX,CAAC;IAED,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,KAAK,CAAC,IAAI;YACb,OAAO,CAAC,OAAO,CAAC,CAAA;QAClB,KAAK,KAAK,CAAC,OAAO;YAChB,OAAO,UAAU,CAAC,OAAO,CAAC,CAAA;QAC5B,KAAK,KAAK,CAAC,OAAO;YAChB,OAAO,UAAU,CAAC,OAAO,CAAC,CAAA;QAC5B,KAAK,KAAK,CAAC,SAAS;YAClB,OAAO,YAAY,CAAC,OAAO,CAAC,CAAA;QAC9B;YACE,OAAO,EAAE,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,EAAE;IAChE,MAAM,OAAO,GAAG,EAAE,CAAA;IAClB,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,CAAA;IACvC,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,CAAA;IAEvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;QACpD,IAAI,KAAK,IAAI,YAAY,IAAI,KAAK,IAAI,YAAY,EAAE,CAAC;YACnD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAID,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAkC,EAAE,EAAE,CACvE,IAAI,cAAc,CAAC,EAAC,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,EAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"feeds.js","sourceRoot":"","sources":["../../../src/feeds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,cAAc,EAA8B,MAAM,iBAAiB,CAAA;AAClF,OAAO,EAAC,MAAM,EAAE,MAAM,EAAC,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAC,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAC,MAAM,UAAU,CAAA;AAErF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;IAClD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,CAAA;IAE5B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,EAAE,CAAA;IACX,CAAC;IAED,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,KAAK,CAAC,IAAI;YACb,OAAO,CAAC,OAAO,CAAC,CAAA;QAClB,KAAK,KAAK,CAAC,OAAO;YAChB,OAAO,UAAU,CAAC,OAAO,CAAC,CAAA;QAC5B,KAAK,KAAK,CAAC,OAAO;YAChB,OAAO,UAAU,CAAC,OAAO,CAAC,CAAA;QAC5B,KAAK,KAAK,CAAC,SAAS;YAClB,OAAO,YAAY,CAAC,OAAO,CAAC,CAAA;QAC9B;YACE,OAAO,EAAE,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,EAAE;IAChE,MAAM,OAAO,GAAG,EAAE,CAAA;IAClB,MAAM,OAAO,GAAG,SAAS,EAAE,CAAA;IAC3B,MAAM,YAAY,GAAG,OAAO,GAAG,GAAG,CAAA;IAClC,MAAM,YAAY,GAAG,OAAO,GAAG,GAAG,CAAA;IAElC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;QACnD,IAAI,KAAK,IAAI,YAAY,IAAI,KAAK,IAAI,YAAY,EAAE,CAAC;YACnD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAID,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAkC,EAAE,EAAE,CACvE,IAAI,cAAc,CAAC,EAAC,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,EAAE,GAAG,OAAO,EAAC,CAAC,CAAA"}
@@ -1,6 +1,9 @@
1
- import { PublishedList } from "@welshman/util";
2
- export declare const follows: import("@welshman/store").WritableWithGetter<PublishedList[]>;
3
- export declare const followsByPubkey: import("@welshman/store").ReadableWithGetter<Map<string, PublishedList>>, deriveFollows: (key: string | undefined, relays?: string[]) => import("svelte/store").Readable<undefined> | {
4
- subscribe: (f: import("svelte/store").Subscriber<PublishedList | undefined>) => import("svelte/store").Unsubscriber;
5
- }, loadFollows: (key: string, relays?: string[], force?: boolean) => Promise<PublishedList | undefined>;
1
+ export declare const followListsByPubkey: import("svelte/store").Readable<Map<string, import("@welshman/util").PublishedList>>;
2
+ export declare const followLists: import("svelte/store").Readable<import("@welshman/util").PublishedList[]>;
3
+ export declare const getFollowListsByPubkey: () => Map<string, import("@welshman/util").PublishedList>;
4
+ export declare const getFollowLists: () => import("@welshman/util").PublishedList[];
5
+ export declare const getFollowList: (pubkey: string) => import("@welshman/util").PublishedList | undefined;
6
+ export declare const forceLoadFollowList: (key: string, ...args: any[]) => Promise<import("@welshman/util").PublishedList | undefined>;
7
+ export declare const loadFollowList: (key: string, ...args: any[]) => Promise<import("@welshman/lib").Maybe<import("@welshman/util").PublishedList>>;
8
+ export declare const deriveFollowList: (key?: string, ...args: any[]) => import("svelte/store").Readable<import("@welshman/util").PublishedList | undefined>;
6
9
  //# sourceMappingURL=follows.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"follows.d.ts","sourceRoot":"","sources":["../../../src/follows.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,aAAa,EAAC,MAAM,gBAAgB,CAAA;AAK1D,eAAO,MAAM,OAAO,+DAIlB,CAAA;AAEF,eAAO,MACO,eAAe,4EACf,aAAa;;GACf,WAAW,yFAMrB,CAAA"}
1
+ {"version":3,"file":"follows.d.ts","sourceRoot":"","sources":["../../../src/follows.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,mBAAmB,sFAK9B,CAAA;AAEF,eAAO,MAAM,WAAW,2EAAmC,CAAA;AAE3D,eAAO,MAAM,sBAAsB,2DAA8B,CAAA;AAEjE,eAAO,MAAM,cAAc,gDAAsB,CAAA;AAEjD,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,uDAAyC,CAAA;AAErF,eAAO,MAAM,mBAAmB,8FAA8D,CAAA;AAE9F,eAAO,MAAM,cAAc,iHAAyD,CAAA;AAEpF,eAAO,MAAM,gBAAgB,uHAAsD,CAAA"}
@@ -1,16 +1,18 @@
1
1
  import { FOLLOWS, asDecryptedEvent, readList } from "@welshman/util";
2
- import { deriveEventsMapped, collection } from "@welshman/store";
2
+ import { deriveItemsByKey, deriveItems, makeForceLoadItem, makeLoadItem, makeDeriveItem, getter, } from "@welshman/store";
3
3
  import { repository } from "./core.js";
4
- import { makeOutboxLoader } from "./relaySelections.js";
5
- export const follows = deriveEventsMapped(repository, {
4
+ import { makeOutboxLoader } from "./relayLists.js";
5
+ export const followListsByPubkey = deriveItemsByKey({
6
+ repository,
6
7
  filters: [{ kinds: [FOLLOWS] }],
7
- itemToEvent: item => item.event,
8
8
  eventToItem: (event) => readList(asDecryptedEvent(event)),
9
+ getKey: followList => followList.event.pubkey,
9
10
  });
10
- export const { indexStore: followsByPubkey, deriveItem: deriveFollows, loadItem: loadFollows, } = collection({
11
- name: "follows",
12
- store: follows,
13
- getKey: follows => follows.event.pubkey,
14
- load: makeOutboxLoader(FOLLOWS),
15
- });
11
+ export const followLists = deriveItems(followListsByPubkey);
12
+ export const getFollowListsByPubkey = getter(followListsByPubkey);
13
+ export const getFollowLists = getter(followLists);
14
+ export const getFollowList = (pubkey) => getFollowListsByPubkey().get(pubkey);
15
+ export const forceLoadFollowList = makeForceLoadItem(makeOutboxLoader(FOLLOWS), getFollowList);
16
+ export const loadFollowList = makeLoadItem(makeOutboxLoader(FOLLOWS), getFollowList);
17
+ export const deriveFollowList = makeDeriveItem(followListsByPubkey, loadFollowList);
16
18
  //# sourceMappingURL=follows.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"follows.js","sourceRoot":"","sources":["../../../src/follows.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAA;AAElE,OAAO,EAAC,kBAAkB,EAAE,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAC9D,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AACpC,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAA;AAErD,MAAM,CAAC,MAAM,OAAO,GAAG,kBAAkB,CAAgB,UAAU,EAAE;IACnE,OAAO,EAAE,CAAC,EAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAC,CAAC;IAC7B,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK;IAC/B,WAAW,EAAE,CAAC,KAAmB,EAAE,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;CACxE,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,EACX,UAAU,EAAE,eAAe,EAC3B,UAAU,EAAE,aAAa,EACzB,QAAQ,EAAE,WAAW,GACtB,GAAG,UAAU,CAAC;IACb,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM;IACvC,IAAI,EAAE,gBAAgB,CAAC,OAAO,CAAC;CAChC,CAAC,CAAA"}
1
+ {"version":3,"file":"follows.js","sourceRoot":"","sources":["../../../src/follows.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAA;AAElE,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,MAAM,GACP,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAC,UAAU,EAAC,MAAM,WAAW,CAAA;AACpC,OAAO,EAAC,gBAAgB,EAAC,MAAM,iBAAiB,CAAA;AAEhD,MAAM,CAAC,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;IAClD,UAAU;IACV,OAAO,EAAE,CAAC,EAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAC,CAAC;IAC7B,WAAW,EAAE,CAAC,KAAmB,EAAE,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACvE,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM;CAC9C,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,WAAW,CAAC,mBAAmB,CAAC,CAAA;AAE3D,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAA;AAEjE,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CAAC,CAAA;AAEjD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,sBAAsB,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAErF,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAA;AAE9F,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAA;AAEpF,MAAM,CAAC,MAAM,gBAAgB,GAAG,cAAc,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAA"}
@@ -1,3 +1,4 @@
1
+ import { Subscriber } from "svelte/store";
1
2
  export type Handle = {
2
3
  nip05: string;
3
4
  pubkey?: string;
@@ -10,11 +11,19 @@ export declare function queryProfile(nip05: string): Promise<{
10
11
  nip46: any;
11
12
  relays: any;
12
13
  } | undefined>;
13
- export declare const handles: import("svelte/store").Writable<Handle[]>;
14
- export declare const fetchHandles: (nip05s: string[]) => Promise<Map<string, Handle>>;
15
- export declare const handlesByNip05: import("@welshman/store").ReadableWithGetter<Map<string, Handle>>, deriveHandle: (key: string | undefined, relays?: string[]) => import("svelte/store").Readable<undefined> | {
16
- subscribe: (f: import("svelte/store").Subscriber<Handle | undefined>) => import("svelte/store").Unsubscriber;
17
- }, loadHandle: (key: string, relays?: string[], force?: boolean) => Promise<Handle | undefined>, onHandle: (cb: import("svelte/store").Subscriber<Handle>) => () => void;
14
+ export declare const handlesByNip05: import("svelte/store").Writable<Map<string, Handle>>;
15
+ export declare const handles: import("svelte/store").Readable<Handle[]>;
16
+ export declare const getHandlesByNip05: () => Map<string, Handle>;
17
+ export declare const getHandles: () => Handle[];
18
+ export declare const getHandle: (nip05: string) => Handle | undefined;
19
+ export declare const handleSubscribers: Subscriber<Handle>[];
20
+ export declare const notifyHandle: (handle: Handle) => void;
21
+ export declare const onHandle: (sub: (handle: Handle) => void) => () => Subscriber<Handle>[];
22
+ export declare const fetchHandle: (request: string) => Promise<Handle | undefined>;
23
+ export declare const forceLoadHandle: (key: string, ...args: any[]) => Promise<Handle | undefined>;
24
+ export declare const loadHandle: (key: string, ...args: any[]) => Promise<import("@welshman/lib").Maybe<Handle>>;
25
+ export declare const deriveHandle: (key?: string, ...args: any[]) => import("svelte/store").Readable<Handle | undefined>;
26
+ export declare const loadHandleForPubkey: (pubkey: string, relays?: string[]) => Promise<import("@welshman/lib").Maybe<Handle>>;
18
27
  export declare const deriveHandleForPubkey: (pubkey: string, relays?: string[]) => import("svelte/store").Readable<Handle | undefined>;
19
28
  export declare const displayNip05: (nip05: string) => string;
20
29
  export declare const displayHandle: (handle: Handle) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"handles.d.ts","sourceRoot":"","sources":["../../../src/handles.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,MAAM,GAAG;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM;;;;;eA2B/C;AAED,eAAO,MAAM,OAAO,2CAAyB,CAAA;AAE7C,eAAO,MAAM,YAAY,GAAU,QAAQ,MAAM,EAAE,iCA+BlD,CAAA;AAED,eAAO,MACO,cAAc,qEACd,YAAY;;GACd,UAAU,oFACZ,QAAQ,+DAqBhB,CAAA;AAEF,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,EAAE,SAAQ,MAAM,EAAO,wDAavE,CAAA;AAEJ,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,WACgB,CAAA;AAE1D,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,WAA+B,CAAA"}
1
+ {"version":3,"file":"handles.d.ts","sourceRoot":"","sources":["../../../src/handles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,UAAU,EAAC,MAAM,cAAc,CAAA;AAM1D,MAAM,MAAM,MAAM,GAAG;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM;;;;;eA2B/C;AAED,eAAO,MAAM,cAAc,sDAAsC,CAAA;AAEjE,eAAO,MAAM,OAAO,2CAA8B,CAAA;AAElD,eAAO,MAAM,iBAAiB,2BAAyB,CAAA;AAEvD,eAAO,MAAM,UAAU,gBAAkB,CAAA;AAEzC,eAAO,MAAM,SAAS,GAAI,OAAO,MAAM,uBAAmC,CAAA;AAE1E,eAAO,MAAM,iBAAiB,EAAE,UAAU,CAAC,MAAM,CAAC,EAAO,CAAA;AAEzD,eAAO,MAAM,YAAY,GAAI,QAAQ,MAAM,SAAkD,CAAA;AAE7F,eAAO,MAAM,QAAQ,GAAI,KAAK,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,+BAQrD,CAAA;AAED,eAAO,MAAM,WAAW,kDA0CtB,CAAA;AAEF,eAAO,MAAM,eAAe,8DAA4C,CAAA;AAExE,eAAO,MAAM,UAAU,iFAAuC,CAAA;AAE9D,eAAO,MAAM,YAAY,uFAA6C,CAAA;AAEtE,eAAO,MAAM,mBAAmB,GAAU,QAAQ,MAAM,EAAE,SAAQ,MAAM,EAAO,mDAI9E,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,EAAE,SAAQ,MAAM,EAAO,wDAY1E,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,WACgB,CAAA;AAE1D,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,WAA+B,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import { writable, derived } from "svelte/store";
2
- import { tryCatch, fetchJson, uniq, batcher, postJson, last } from "@welshman/lib";
3
- import { collection } from "@welshman/store";
4
- import { deriveProfile } from "./profiles.js";
2
+ import { tryCatch, fetchJson, batcher, postJson, last } from "@welshman/lib";
3
+ import { getter, deriveItems, makeForceLoadItem, makeLoadItem, makeDeriveItem } from "@welshman/store";
4
+ import { deriveProfile, loadProfile } from "./profiles.js";
5
5
  import { appContext } from "./context.js";
6
6
  export async function queryProfile(nip05) {
7
7
  const parts = nip05.split("@");
@@ -24,16 +24,25 @@ export async function queryProfile(nip05) {
24
24
  return undefined;
25
25
  }
26
26
  }
27
- export const handles = writable([]);
28
- export const fetchHandles = async (nip05s) => {
29
- const base = appContext.dufflepudUrl;
30
- const handlesByNip05 = new Map();
27
+ export const handlesByNip05 = writable(new Map());
28
+ export const handles = deriveItems(handlesByNip05);
29
+ export const getHandlesByNip05 = getter(handlesByNip05);
30
+ export const getHandles = getter(handles);
31
+ export const getHandle = (nip05) => getHandlesByNip05().get(nip05);
32
+ export const handleSubscribers = [];
33
+ export const notifyHandle = (handle) => handleSubscribers.forEach(sub => sub(handle));
34
+ export const onHandle = (sub) => {
35
+ handleSubscribers.push(sub);
36
+ return () => handleSubscribers.splice(handleSubscribers.findIndex(s => s === sub), 1);
37
+ };
38
+ export const fetchHandle = batcher(800, async (nip05s) => {
39
+ const result = new Map();
31
40
  // Use dufflepud if we it's set up to protect user privacy, otherwise fetch directly
32
- if (base) {
33
- const res = await tryCatch(async () => await postJson(`${base}/handle/info`, { handles: nip05s }));
41
+ if (appContext.dufflepudUrl) {
42
+ const res = await tryCatch(async () => await postJson(`${appContext.dufflepudUrl}/handle/info`, { handles: nip05s }));
34
43
  for (const { handle: nip05, info } of res?.data || []) {
35
44
  if (info) {
36
- handlesByNip05.set(nip05, info);
45
+ result.set(nip05, { ...info, nip05 });
37
46
  }
38
47
  }
39
48
  }
@@ -44,39 +53,39 @@ export const fetchHandles = async (nip05s) => {
44
53
  })));
45
54
  for (const { nip05, info } of results) {
46
55
  if (info) {
47
- handlesByNip05.set(nip05, info);
56
+ result.set(nip05, { ...info, nip05 });
48
57
  }
49
58
  }
50
59
  }
51
- return handlesByNip05;
52
- };
53
- export const { indexStore: handlesByNip05, deriveItem: deriveHandle, loadItem: loadHandle, onItem: onHandle, } = collection({
54
- name: "handles",
55
- store: handles,
56
- getKey: (handle) => handle.nip05,
57
- load: batcher(800, async (nip05s) => {
58
- const fresh = await fetchHandles(uniq(nip05s));
59
- const stale = handlesByNip05.get();
60
- for (const nip05 of nip05s) {
61
- const newHandle = fresh.get(nip05);
62
- if (newHandle) {
63
- stale.set(nip05, { ...newHandle, nip05 });
64
- }
60
+ handlesByNip05.update($handlesByNip05 => {
61
+ for (const [nip05, info] of result) {
62
+ $handlesByNip05.set(nip05, info);
65
63
  }
66
- handles.set(Array.from(stale.values()));
67
- return nip05s;
68
- }),
69
- });
70
- export const deriveHandleForPubkey = (pubkey, relays = []) => derived([handlesByNip05, deriveProfile(pubkey, relays)], ([$handlesByNip05, $profile]) => {
71
- if (!$profile?.nip05) {
72
- return undefined;
73
- }
74
- loadHandle($profile.nip05);
75
- const handle = $handlesByNip05.get($profile.nip05);
76
- if (handle?.pubkey === pubkey) {
77
- return handle;
64
+ return $handlesByNip05;
65
+ });
66
+ for (const info of result.values()) {
67
+ notifyHandle(info);
78
68
  }
69
+ return nip05s.map(nip05 => result.get(nip05));
79
70
  });
71
+ export const forceLoadHandle = makeForceLoadItem(fetchHandle, getHandle);
72
+ export const loadHandle = makeLoadItem(fetchHandle, getHandle);
73
+ export const deriveHandle = makeDeriveItem(handlesByNip05, loadHandle);
74
+ export const loadHandleForPubkey = async (pubkey, relays = []) => {
75
+ const $profile = await loadProfile(pubkey, relays);
76
+ return $profile?.nip05 ? loadHandle($profile.nip05) : undefined;
77
+ };
78
+ export const deriveHandleForPubkey = (pubkey, relays = []) => {
79
+ loadHandleForPubkey(pubkey, relays);
80
+ return derived([handlesByNip05, deriveProfile(pubkey, relays)], ([$handlesByNip05, $profile]) => {
81
+ if (!$profile?.nip05)
82
+ return undefined;
83
+ const handle = $handlesByNip05.get($profile.nip05);
84
+ if (handle?.pubkey !== pubkey)
85
+ return undefined;
86
+ return handle;
87
+ });
88
+ };
80
89
  export const displayNip05 = (nip05) => nip05?.startsWith("_@") ? last(nip05.split("@")) : nip05;
81
90
  export const displayHandle = (handle) => displayNip05(handle.nip05);
82
91
  //# sourceMappingURL=handles.js.map