@welshman/app 0.9.0-pre2 → 0.9.0-pre3

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 (179) hide show
  1. package/dist/app/src/app.d.ts +6 -2
  2. package/dist/app/src/app.d.ts.map +1 -1
  3. package/dist/app/src/app.js +6 -5
  4. package/dist/app/src/app.js.map +1 -1
  5. package/dist/app/src/index.d.ts +2 -0
  6. package/dist/app/src/index.d.ts.map +1 -1
  7. package/dist/app/src/index.js +2 -0
  8. package/dist/app/src/index.js.map +1 -1
  9. package/dist/app/src/plugins/base.d.ts +6 -5
  10. package/dist/app/src/plugins/base.d.ts.map +1 -1
  11. package/dist/app/src/plugins/base.js +9 -2
  12. package/dist/app/src/plugins/base.js.map +1 -1
  13. package/dist/app/src/plugins/domain.d.ts +5 -4
  14. package/dist/app/src/plugins/domain.d.ts.map +1 -1
  15. package/dist/app/src/plugins/domain.js +5 -1
  16. package/dist/app/src/plugins/domain.js.map +1 -1
  17. package/dist/app/src/plugins/events.d.ts +31 -0
  18. package/dist/app/src/plugins/events.d.ts.map +1 -0
  19. package/dist/app/src/plugins/events.js +64 -0
  20. package/dist/app/src/plugins/events.js.map +1 -0
  21. package/dist/app/src/plugins/feeds.d.ts.map +1 -1
  22. package/dist/app/src/plugins/feeds.js +8 -4
  23. package/dist/app/src/plugins/feeds.js.map +1 -1
  24. package/dist/app/src/plugins/logger.d.ts +1 -4
  25. package/dist/app/src/plugins/logger.d.ts.map +1 -1
  26. package/dist/app/src/plugins/network.d.ts +2 -0
  27. package/dist/app/src/plugins/network.d.ts.map +1 -1
  28. package/dist/app/src/plugins/network.js +14 -3
  29. package/dist/app/src/plugins/network.js.map +1 -1
  30. package/dist/app/src/plugins/profiles.d.ts.map +1 -1
  31. package/dist/app/src/plugins/profiles.js +7 -7
  32. package/dist/app/src/plugins/profiles.js.map +1 -1
  33. package/dist/app/src/plugins/reactions.js +4 -4
  34. package/dist/app/src/plugins/reactions.js.map +1 -1
  35. package/dist/app/src/plugins/relayRoles.js +1 -1
  36. package/dist/app/src/plugins/relayRoles.js.map +1 -1
  37. package/dist/app/src/plugins/relays.d.ts +1 -1
  38. package/dist/app/src/plugins/relays.js +1 -1
  39. package/dist/app/src/plugins/roomLists.d.ts +11 -7
  40. package/dist/app/src/plugins/roomLists.d.ts.map +1 -1
  41. package/dist/app/src/plugins/roomLists.js +17 -4
  42. package/dist/app/src/plugins/roomLists.js.map +1 -1
  43. package/dist/app/src/plugins/roomPins.d.ts +18 -0
  44. package/dist/app/src/plugins/roomPins.d.ts.map +1 -0
  45. package/dist/app/src/plugins/roomPins.js +34 -0
  46. package/dist/app/src/plugins/roomPins.js.map +1 -0
  47. package/dist/app/src/plugins/rooms.d.ts +24 -10
  48. package/dist/app/src/plugins/rooms.d.ts.map +1 -1
  49. package/dist/app/src/plugins/rooms.js +113 -46
  50. package/dist/app/src/plugins/rooms.js.map +1 -1
  51. package/dist/app/src/plugins/thunk.d.ts.map +1 -1
  52. package/dist/app/src/plugins/thunk.js +18 -2
  53. package/dist/app/src/plugins/thunk.js.map +1 -1
  54. package/dist/app/src/plugins/wot.d.ts +45 -19
  55. package/dist/app/src/plugins/wot.d.ts.map +1 -1
  56. package/dist/app/src/plugins/wot.js +155 -94
  57. package/dist/app/src/plugins/wot.js.map +1 -1
  58. package/dist/app/src/plugins/wraps.d.ts.map +1 -1
  59. package/dist/app/src/plugins/wraps.js +13 -7
  60. package/dist/app/src/plugins/wraps.js.map +1 -1
  61. package/dist/app/src/plugins/zappers.d.ts.map +1 -1
  62. package/dist/app/src/plugins/zappers.js +5 -9
  63. package/dist/app/src/plugins/zappers.js.map +1 -1
  64. package/dist/app/src/policy.d.ts.map +1 -1
  65. package/dist/app/src/policy.js +6 -5
  66. package/dist/app/src/policy.js.map +1 -1
  67. package/dist/app/src/user.d.ts +2 -2
  68. package/dist/app/src/user.d.ts.map +1 -1
  69. package/dist/app/src/user.js +1 -1
  70. package/dist/app/src/user.js.map +1 -1
  71. package/dist/domain/src/core/EventReader.d.ts +30 -3
  72. package/dist/domain/src/core/EventReader.d.ts.map +1 -1
  73. package/dist/domain/src/core/EventReader.js +24 -3
  74. package/dist/domain/src/core/EventReader.js.map +1 -1
  75. package/dist/domain/src/core/EventWriter.d.ts +6 -6
  76. package/dist/domain/src/core/EventWriter.d.ts.map +1 -1
  77. package/dist/domain/src/core/EventWriter.js +12 -12
  78. package/dist/domain/src/core/EventWriter.js.map +1 -1
  79. package/dist/domain/src/core/Kind.d.ts +5 -5
  80. package/dist/domain/src/core/Kind.d.ts.map +1 -1
  81. package/dist/domain/src/core/Kind.js +4 -6
  82. package/dist/domain/src/core/Kind.js.map +1 -1
  83. package/dist/domain/src/core/ListReader.d.ts +3 -3
  84. package/dist/domain/src/core/ListReader.d.ts.map +1 -1
  85. package/dist/domain/src/core/ListReader.js +3 -2
  86. package/dist/domain/src/core/ListReader.js.map +1 -1
  87. package/dist/domain/src/index.d.ts +3 -1
  88. package/dist/domain/src/index.d.ts.map +1 -1
  89. package/dist/domain/src/index.js +3 -1
  90. package/dist/domain/src/index.js.map +1 -1
  91. package/dist/domain/src/kinds/AppData.d.ts +3 -3
  92. package/dist/domain/src/kinds/AppData.d.ts.map +1 -1
  93. package/dist/domain/src/kinds/AppData.js +5 -4
  94. package/dist/domain/src/kinds/AppData.js.map +1 -1
  95. package/dist/domain/src/kinds/CommunityList.d.ts +12 -0
  96. package/dist/domain/src/kinds/CommunityList.d.ts.map +1 -0
  97. package/dist/domain/src/kinds/{GroupList.js → CommunityList.js} +10 -9
  98. package/dist/domain/src/kinds/CommunityList.js.map +1 -0
  99. package/dist/domain/src/kinds/Delete.d.ts +1 -1
  100. package/dist/domain/src/kinds/Delete.d.ts.map +1 -1
  101. package/dist/domain/src/kinds/Delete.js +7 -7
  102. package/dist/domain/src/kinds/Delete.js.map +1 -1
  103. package/dist/domain/src/kinds/Handler.d.ts +1 -1
  104. package/dist/domain/src/kinds/Handler.d.ts.map +1 -1
  105. package/dist/domain/src/kinds/Handler.js +2 -1
  106. package/dist/domain/src/kinds/Handler.js.map +1 -1
  107. package/dist/domain/src/kinds/Profile.d.ts +1 -1
  108. package/dist/domain/src/kinds/Profile.d.ts.map +1 -1
  109. package/dist/domain/src/kinds/Profile.js +2 -1
  110. package/dist/domain/src/kinds/Profile.js.map +1 -1
  111. package/dist/domain/src/kinds/RoomCreate.js +2 -2
  112. package/dist/domain/src/kinds/RoomCreate.js.map +1 -1
  113. package/dist/domain/src/kinds/RoomDelete.js +3 -3
  114. package/dist/domain/src/kinds/RoomDelete.js.map +1 -1
  115. package/dist/domain/src/kinds/RoomEdit.js +3 -3
  116. package/dist/domain/src/kinds/RoomEdit.js.map +1 -1
  117. package/dist/domain/src/kinds/RoomJoin.js +2 -2
  118. package/dist/domain/src/kinds/RoomJoin.js.map +1 -1
  119. package/dist/domain/src/kinds/RoomLeave.js +3 -3
  120. package/dist/domain/src/kinds/RoomLeave.js.map +1 -1
  121. package/dist/domain/src/kinds/RoomList.d.ts +7 -5
  122. package/dist/domain/src/kinds/RoomList.d.ts.map +1 -1
  123. package/dist/domain/src/kinds/RoomList.js +44 -16
  124. package/dist/domain/src/kinds/RoomList.js.map +1 -1
  125. package/dist/domain/src/kinds/RoomPins.d.ts +15 -0
  126. package/dist/domain/src/kinds/RoomPins.d.ts.map +1 -0
  127. package/dist/domain/src/kinds/RoomPins.js +34 -0
  128. package/dist/domain/src/kinds/RoomPins.js.map +1 -0
  129. package/dist/domain/src/kinds/RoomUpdatePins.d.ts +15 -0
  130. package/dist/domain/src/kinds/RoomUpdatePins.d.ts.map +1 -0
  131. package/dist/domain/src/kinds/RoomUpdatePins.js +38 -0
  132. package/dist/domain/src/kinds/RoomUpdatePins.js.map +1 -0
  133. package/dist/domain/src/kinds/ZapGoal.d.ts +5 -0
  134. package/dist/domain/src/kinds/ZapGoal.d.ts.map +1 -1
  135. package/dist/domain/src/kinds/ZapGoal.js +29 -4
  136. package/dist/domain/src/kinds/ZapGoal.js.map +1 -1
  137. package/dist/domain/src/kinds/ZapReceipt.d.ts +1 -1
  138. package/dist/domain/src/kinds/ZapReceipt.d.ts.map +1 -1
  139. package/dist/domain/src/kinds/ZapReceipt.js +2 -1
  140. package/dist/domain/src/kinds/ZapReceipt.js.map +1 -1
  141. package/dist/lib/src/Tools.js +1 -1
  142. package/dist/lib/src/Tools.js.map +1 -1
  143. package/dist/net/src/auth.d.ts.map +1 -1
  144. package/dist/net/src/auth.js +2 -2
  145. package/dist/net/src/auth.js.map +1 -1
  146. package/dist/net/src/publish.d.ts.map +1 -1
  147. package/dist/net/src/publish.js +13 -0
  148. package/dist/net/src/publish.js.map +1 -1
  149. package/dist/net/src/request.d.ts +1 -2
  150. package/dist/net/src/request.d.ts.map +1 -1
  151. package/dist/net/src/request.js +16 -2
  152. package/dist/net/src/request.js.map +1 -1
  153. package/dist/signer/src/nip59.d.ts +1 -1
  154. package/dist/signer/src/nip59.d.ts.map +1 -1
  155. package/dist/signer/src/nip59.js +26 -30
  156. package/dist/signer/src/nip59.js.map +1 -1
  157. package/dist/signer/src/signers/nip07.d.ts.map +1 -1
  158. package/dist/signer/src/signers/nip07.js +19 -5
  159. package/dist/signer/src/signers/nip07.js.map +1 -1
  160. package/dist/signer/src/util.d.ts +2 -2
  161. package/dist/signer/src/util.d.ts.map +1 -1
  162. package/dist/signer/src/util.js +2 -6
  163. package/dist/signer/src/util.js.map +1 -1
  164. package/dist/store/src/misc.d.ts +4 -2
  165. package/dist/store/src/misc.d.ts.map +1 -1
  166. package/dist/store/src/misc.js +2 -4
  167. package/dist/store/src/misc.js.map +1 -1
  168. package/dist/store/src/repository.d.ts.map +1 -1
  169. package/dist/store/src/repository.js +44 -19
  170. package/dist/store/src/repository.js.map +1 -1
  171. package/dist/tsconfig.build.tsbuildinfo +1 -1
  172. package/dist/util/src/Kinds.d.ts +2 -0
  173. package/dist/util/src/Kinds.d.ts.map +1 -1
  174. package/dist/util/src/Kinds.js +2 -0
  175. package/dist/util/src/Kinds.js.map +1 -1
  176. package/package.json +18 -18
  177. package/dist/domain/src/kinds/GroupList.d.ts +0 -12
  178. package/dist/domain/src/kinds/GroupList.d.ts.map +0 -1
  179. package/dist/domain/src/kinds/GroupList.js.map +0 -1
@@ -1,4 +1,3 @@
1
- import { Deferred } from "@welshman/lib";
2
1
  import { Filter, TrustedEvent } from "@welshman/util";
3
2
  import { AdapterContext } from "./adapter.js";
4
3
  import { Tracker } from "./tracker.js";
@@ -23,7 +22,7 @@ export type RequestOneOptions = BaseRequestOptions & {
23
22
  relay: string;
24
23
  filters: Filter[];
25
24
  };
26
- export declare const requestOne: (options: RequestOneOptions) => Deferred<TrustedEvent[], TrustedEvent[]>;
25
+ export declare const requestOne: (options: RequestOneOptions) => Promise<TrustedEvent[]>;
27
26
  export type RequestOptions = BaseRequestOptions & {
28
27
  relays: string[];
29
28
  filters: Filter[];
@@ -1 +1 @@
1
- {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../net/src/request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../net/src/request.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,12 @@ import { getAdapter, AdapterEvent } from "./adapter.js";
5
5
  import { SocketEvent, SocketStatus } from "./socket.js";
6
6
  import { Tracker } from "./tracker.js";
7
7
  export const requestOne = (options) => {
8
+ // An already-aborted signal never fires its listener, so bail before building
9
+ // an adapter — that would pull a socket out of the pool for a request no one
10
+ // is waiting on, and nothing would ever close it
11
+ if (options.signal?.aborted) {
12
+ return Promise.resolve([]);
13
+ }
8
14
  const ids = new Set();
9
15
  const eose = new Set();
10
16
  const events = [];
@@ -167,8 +173,13 @@ export const makeLoader = (options) => batcher(options.delay, (allRequests) => {
167
173
  for (const relay of uniq(request.relays)) {
168
174
  pushToMapKey(requestsByRelay, relay, request);
169
175
  resultsByRequest.set(request, defer());
170
- // Propagate abort when all requests have been closed for a given relay
171
- if (request.signal) {
176
+ // Propagate abort when all requests have been closed for a given relay.
177
+ // A request aborted during the batch delay is already past its listener,
178
+ // so close it here instead.
179
+ if (request.signal?.aborted) {
180
+ close(relay, request);
181
+ }
182
+ else if (request.signal) {
172
183
  const abortHandler = () => close(relay, request);
173
184
  abortHandlersByRequest.set(request, abortHandler);
174
185
  request.signal.addEventListener("abort", abortHandler);
@@ -186,6 +197,9 @@ export const makeLoader = (options) => batcher(options.delay, (allRequests) => {
186
197
  signalsByRelay.set(relay, AbortSignal.any(signals));
187
198
  }
188
199
  Array.from(requestsByRelay).forEach(([relay, requests]) => {
200
+ // Don't touch the pool if every request for this relay was aborted
201
+ if (closedRequestsByRelay.get(relay)?.size === requests.length)
202
+ return;
189
203
  // Union all filters for a given request and send them together
190
204
  const filters = unionFilters(requests.flatMap(r => r.filters));
191
205
  // Propagate events to caller, but only for requests that have not been aborted
@@ -1 +1 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../../net/src/request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../../../net/src/request.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { SignedEvent, HashedEvent, StampedEvent } from "@welshman/util";
2
2
  import { ISigner } from "./util.js";
3
- export declare const seen: Map<string, Error | HashedEvent>;
4
3
  export declare const now: (drift?: number) => number;
5
4
  export declare const getSeal: (signer: ISigner, pubkey: string, rumor: HashedEvent) => Promise<SignedEvent>;
6
5
  export declare const getWrap: (wrapper: ISigner, pubkey: string, seal: SignedEvent, tags: string[][]) => Promise<SignedEvent>;
@@ -9,6 +8,7 @@ export declare const unwrap: (signer: ISigner, wrap: SignedEvent) => Promise<Has
9
8
  export declare class Nip59 {
10
9
  private signer;
11
10
  private wrapper?;
11
+ private cache;
12
12
  constructor(signer: ISigner, wrapper?: ISigner | undefined);
13
13
  static fromSigner: (signer: ISigner) => Nip59;
14
14
  static fromSecret: (secret: string) => Nip59;
@@ -1 +1 @@
1
- {"version":3,"file":"nip59.d.ts","sourceRoot":"","sources":["../../../../signer/src/nip59.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EACX,WAAW,EACX,YAAY,EAKb,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAU,OAAO,EAAC,MAAM,WAAW,CAAA;AAG1C,eAAO,MAAM,IAAI,kCAAyC,CAAA;AAE1D,eAAO,MAAM,GAAG,GAAI,cAAS,WACwC,CAAA;AAErE,eAAO,MAAM,OAAO,GAAU,QAAQ,OAAO,EAAE,QAAQ,MAAM,EAAE,OAAO,WAAW,yBAS9E,CAAA;AAEH,eAAO,MAAM,OAAO,GAClB,SAAS,OAAO,EAChB,QAAQ,MAAM,EACd,MAAM,WAAW,EACjB,MAAM,MAAM,EAAE,EAAE,yBAUf,CAAA;AAEH,eAAO,MAAM,IAAI,GACf,QAAQ,OAAO,EACf,SAAS,OAAO,EAChB,QAAQ,MAAM,EACd,UAAU,YAAY,EACtB,OAAM,MAAM,EAAE,EAAO,yBAQtB,CAAA;AAED,eAAO,MAAM,MAAM,GAAU,QAAQ,OAAO,EAAE,MAAM,WAAW,KAAG,OAAO,CAAC,WAAW,CA2BpF,CAAA;AAMD,qBAAa,KAAK;IAEd,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,OAAO,CAAC;gBADR,MAAM,EAAE,OAAO,EACf,OAAO,CAAC,EAAE,OAAO,YAAA;IAG3B,MAAM,CAAC,UAAU,GAAI,QAAQ,OAAO,WAAsB;IAE1D,MAAM,CAAC,UAAU,GAAI,QAAQ,MAAM,WAAuC;IAE1E,WAAW,GAAI,SAAS,OAAO,WAAoC;IAEnE,IAAI,GAAI,QAAQ,MAAM,EAAE,UAAU,YAAY,EAAE,OAAM,MAAM,EAAE,EAAO,0BACe;IAEpF,MAAM,GAAI,OAAO,WAAW,0BAA+B;CAC5D"}
1
+ {"version":3,"file":"nip59.d.ts","sourceRoot":"","sources":["../../../../signer/src/nip59.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EACX,WAAW,EACX,YAAY,EAKb,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAU,OAAO,EAAC,MAAM,WAAW,CAAA;AAG1C,eAAO,MAAM,GAAG,GAAI,cAAS,WACwC,CAAA;AAErE,eAAO,MAAM,OAAO,GAAU,QAAQ,OAAO,EAAE,QAAQ,MAAM,EAAE,OAAO,WAAW,yBAS9E,CAAA;AAEH,eAAO,MAAM,OAAO,GAClB,SAAS,OAAO,EAChB,QAAQ,MAAM,EACd,MAAM,WAAW,EACjB,MAAM,MAAM,EAAE,EAAE,yBAUf,CAAA;AAEH,eAAO,MAAM,IAAI,GACf,QAAQ,OAAO,EACf,SAAS,OAAO,EAChB,QAAQ,MAAM,EACd,UAAU,YAAY,EACtB,OAAM,MAAM,EAAE,EAAO,yBAQtB,CAAA;AAED,eAAO,MAAM,MAAM,GAAU,QAAQ,OAAO,EAAE,MAAM,WAAW,KAAG,OAAO,CAAC,WAAW,CAQpF,CAAA;AAED,qBAAa,KAAK;IAId,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,OAAO,CAAC;IAJlB,OAAO,CAAC,KAAK,CAAyC;gBAG5C,MAAM,EAAE,OAAO,EACf,OAAO,CAAC,EAAE,OAAO,YAAA;IAG3B,MAAM,CAAC,UAAU,GAAI,QAAQ,OAAO,WAAsB;IAE1D,MAAM,CAAC,UAAU,GAAI,QAAQ,MAAM,WAAuC;IAE1E,WAAW,GAAI,SAAS,OAAO,WAAoC;IAEnE,IAAI,GAAI,QAAQ,MAAM,EAAE,UAAU,YAAY,EAAE,OAAM,MAAM,EAAE,EAAO,0BACe;IAEpF,MAAM,GAAU,OAAO,WAAW,KAAG,OAAO,CAAC,WAAW,CAAC,CAsBxD;CACF"}
@@ -1,7 +1,6 @@
1
1
  import { isHashedEvent, WRAP, SEAL, prep, hash, } from "@welshman/util";
2
2
  import { decrypt } from "./util.js";
3
3
  import { Nip01Signer } from "./signers/nip01.js";
4
- export const seen = new Map();
5
4
  export const now = (drift = 0) => Math.round(Date.now() / 1000 - Math.random() * Math.pow(10, drift));
6
5
  export const getSeal = async (signer, pubkey, rumor) => signer.sign(hash({
7
6
  kind: SEAL,
@@ -25,38 +24,18 @@ export const wrap = async (signer, wrapper, pubkey, template, tags = []) => {
25
24
  return wrap;
26
25
  };
27
26
  export const unwrap = async (signer, wrap) => {
28
- // Avoid decrypting the same event multiple times
29
- if (seen.has(wrap.id)) {
30
- const rumorOrError = seen.get(wrap.id);
31
- if (rumorOrError instanceof Error) {
32
- throw rumorOrError;
33
- }
34
- else {
35
- return rumorOrError;
36
- }
37
- }
38
- try {
39
- const seal = JSON.parse(await decrypt(signer, wrap.pubkey, wrap.content));
40
- const rumor = JSON.parse(await decrypt(signer, seal.pubkey, seal.content));
41
- if (seal.pubkey !== rumor.pubkey)
42
- throw new Error("Seal pubkey does not match rumor pubkey");
43
- if (!isHashedEvent(rumor))
44
- throw new Error("Unwrapped object was not a hashed event");
45
- seen.set(wrap.id, rumor);
46
- return rumor;
47
- }
48
- catch (error) {
49
- seen.set(wrap.id, error);
50
- throw error;
51
- }
27
+ const seal = JSON.parse(await decrypt(signer, wrap.pubkey, wrap.content));
28
+ const rumor = JSON.parse(await decrypt(signer, seal.pubkey, seal.content));
29
+ if (seal.pubkey !== rumor.pubkey)
30
+ throw new Error("Seal pubkey does not match rumor pubkey");
31
+ if (!isHashedEvent(rumor))
32
+ throw new Error("Unwrapped object was not a hashed event");
33
+ return rumor;
52
34
  };
53
- // This is a utility that makes it harder to re-use wrapper signers, since that can result in
54
- // leaked metadata. It simultaneously makes it easier to wrap stuff, because it allows for
55
- // wrapping a single user signer and omit the wrapper signer argument to wrap, while still
56
- // making it possible to pass a wrapper signer if desired.
57
35
  export class Nip59 {
58
36
  signer;
59
37
  wrapper;
38
+ cache = new Map();
60
39
  constructor(signer, wrapper) {
61
40
  this.signer = signer;
62
41
  this.wrapper = wrapper;
@@ -65,6 +44,23 @@ export class Nip59 {
65
44
  static fromSecret = (secret) => new Nip59(new Nip01Signer(secret));
66
45
  withWrapper = (wrapper) => new Nip59(this.signer, wrapper);
67
46
  wrap = (pubkey, template, tags = []) => wrap(this.signer, this.wrapper || Nip01Signer.ephemeral(), pubkey, template, tags);
68
- unwrap = (event) => unwrap(this.signer, event);
47
+ unwrap = async (event) => {
48
+ const cached = this.cache.get(event.id);
49
+ if (cached) {
50
+ if (cached instanceof Error) {
51
+ throw cached;
52
+ }
53
+ return cached;
54
+ }
55
+ try {
56
+ const rumor = await unwrap(this.signer, event);
57
+ this.cache.set(event.id, rumor);
58
+ return rumor;
59
+ }
60
+ catch (error) {
61
+ this.cache.set(event.id, error);
62
+ throw error;
63
+ }
64
+ };
69
65
  }
70
66
  //# sourceMappingURL=nip59.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nip59.js","sourceRoot":"","sources":["../../../../signer/src/nip59.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nip59.js","sourceRoot":"","sources":["../../../../signer/src/nip59.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"nip07.d.ts","sourceRoot":"","sources":["../../../../../signer/src/signers/nip07.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAY,MAAM,gBAAgB,CAAA;AACtD,OAAO,EAAkB,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,wBAAwB,EAAC,MAAM,YAAY,CAAA;AAEhG,MAAM,MAAM,KAAK,GAAG;IAClB,SAAS,EAAE,IAAI,CAAA;IACf,KAAK,EAAE,wBAAwB,CAAA;IAC/B,KAAK,EAAE,wBAAwB,CAAA;IAC/B,YAAY,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;CACvC,CAAA;AAED,eAAO,MAAM,QAAQ,yBAA0C,CAAA;AAE/D,qBAAa,WAAY,YAAW,OAAO;;IAkBzC,SAAS,wBAAsE;IAE/E,IAAI,GAAI,UAAU,YAAY,EAAE,UAAS,WAAgB,mDAItD;IAEH,KAAK;0BACe,MAAM,WAAW,MAAM;0BAEvB,MAAM,WAAW,MAAM;MAE1C;IAED,KAAK;0BACe,MAAM,WAAW,MAAM;0BAEvB,MAAM,WAAW,MAAM;MAE1C;CACF"}
1
+ {"version":3,"file":"nip07.d.ts","sourceRoot":"","sources":["../../../../../signer/src/signers/nip07.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAkB,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,wBAAwB,EAAC,MAAM,YAAY,CAAA;AAEhG,MAAM,MAAM,KAAK,GAAG;IAClB,SAAS,EAAE,IAAI,CAAA;IACf,KAAK,EAAE,wBAAwB,CAAA;IAC/B,KAAK,EAAE,wBAAwB,CAAA;IAC/B,YAAY,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;CACvC,CAAA;AAED,eAAO,MAAM,QAAQ,yBAA0C,CAAA;AAY/D,qBAAa,WAAY,YAAW,OAAO;;IAkBzC,SAAS,wBASR;IAED,IAAI,GAAI,UAAU,YAAY,EAAE,UAAS,WAAgB,mDAItD;IAEH,KAAK;0BACe,MAAM,WAAW,MAAM;0BAEvB,MAAM,WAAW,MAAM;MAE1C;IAED,KAAK;0BACe,MAAM,WAAW,MAAM;0BAEvB,MAAM,WAAW,MAAM;MAE1C;CACF"}
@@ -1,9 +1,16 @@
1
1
  import { noop } from "@welshman/lib";
2
- import { hash, own } from "@welshman/util";
3
2
  import { signWithOptions } from "../util.js";
4
3
  export const getNip07 = () => window.nostr;
4
+ const release = (promise) => new Promise(resolve => {
5
+ const timeout = setTimeout(resolve, 30_000);
6
+ promise.catch(noop).then(() => {
7
+ clearTimeout(timeout);
8
+ resolve();
9
+ });
10
+ });
5
11
  export class Nip07Signer {
6
12
  #lock = Promise.resolve();
13
+ #pubkey;
7
14
  #then = async (f) => {
8
15
  const promise = this.#lock.then(() => {
9
16
  const ext = getNip07();
@@ -11,12 +18,19 @@ export class Nip07Signer {
11
18
  throw new Error("Nip07 is not enabled");
12
19
  return f(ext);
13
20
  });
14
- // Recover from errors
15
- this.#lock = promise.then(noop).catch(noop);
21
+ this.#lock = release(promise);
16
22
  return promise;
17
23
  };
18
- getPubkey = async () => this.#then(ext => ext.getPublicKey());
19
- sign = (template, options = {}) => signWithOptions(this.#then(async (ext) => ext.signEvent(hash(own(template, await ext.getPublicKey())))), options);
24
+ getPubkey = () => {
25
+ if (!this.#pubkey) {
26
+ this.#pubkey = this.#then(ext => ext.getPublicKey());
27
+ this.#pubkey.catch(() => {
28
+ this.#pubkey = undefined;
29
+ });
30
+ }
31
+ return this.#pubkey;
32
+ };
33
+ sign = (template, options = {}) => signWithOptions(this.#then(ext => ext.signEvent(template)), options);
20
34
  nip04 = {
21
35
  encrypt: (pubkey, message) => this.#then(ext => ext.nip04.encrypt(pubkey, message)),
22
36
  decrypt: (pubkey, message) => this.#then(ext => ext.nip04.decrypt(pubkey, message)),
@@ -1 +1 @@
1
- {"version":3,"file":"nip07.js","sourceRoot":"","sources":["../../../../../signer/src/signers/nip07.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,eAAe,CAAA;AAClC,OAAO,EAAe,IAAI,EAAE,GAAG,EAAC,MAAM,gBAAgB,CAAA;AACtD,OAAO,EAAC,eAAe,EAAuD,MAAM,YAAY,CAAA;AAShG,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAE,MAA0B,CAAC,KAAK,CAAA;AAE/D,MAAM,OAAO,WAAW;IACtB,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,CAAA;IAEzB,KAAK,GAAG,KAAK,EAAK,CAAiC,EAAE,EAAE;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;YACnC,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAA;YAEtB,IAAI,CAAC,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;YAEjD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAA;QACf,CAAC,CAAC,CAAA;QAEF,sBAAsB;QACtB,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAE3C,OAAO,OAAO,CAAA;IAChB,CAAC,CAAA;IAED,SAAS,GAAG,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,KAAK,CAAS,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,YAAY,EAAY,CAAC,CAAA;IAE/E,IAAI,GAAG,CAAC,QAAsB,EAAE,UAAuB,EAAE,EAAE,EAAE,CAC3D,eAAe,CACb,IAAI,CAAC,KAAK,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,YAAY,EAAG,CAAC,CAAC,CAAC,CAAC,EACtF,OAAO,CACR,CAAA;IAEH,KAAK,GAAG;QACN,OAAO,EAAE,CAAC,MAAc,EAAE,OAAe,EAAE,EAAE,CAC3C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvD,OAAO,EAAE,CAAC,MAAc,EAAE,OAAe,EAAE,EAAE,CAC3C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACxD,CAAA;IAED,KAAK,GAAG;QACN,OAAO,EAAE,CAAC,MAAc,EAAE,OAAe,EAAE,EAAE,CAC3C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvD,OAAO,EAAE,CAAC,MAAc,EAAE,OAAe,EAAE,EAAE,CAC3C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACxD,CAAA;CACF"}
1
+ {"version":3,"file":"nip07.js","sourceRoot":"","sources":["../../../../../signer/src/signers/nip07.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,eAAe,CAAA;AAElC,OAAO,EAAC,eAAe,EAAuD,MAAM,YAAY,CAAA;AAShG,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAE,MAA0B,CAAC,KAAK,CAAA;AAE/D,MAAM,OAAO,GAAG,CAAC,OAAyB,EAAE,EAAE,CAC5C,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE;IAC1B,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAE3C,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;QAC5B,YAAY,CAAC,OAAO,CAAC,CAAA;QACrB,OAAO,EAAE,CAAA;IACX,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEJ,MAAM,OAAO,WAAW;IACtB,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,CAAA;IACzB,OAAO,CAAkB;IAEzB,KAAK,GAAG,KAAK,EAAK,CAAiC,EAAE,EAAE;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE;YACnC,MAAM,GAAG,GAAG,QAAQ,EAAE,CAAA;YAEtB,IAAI,CAAC,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;YAEjD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAA;QACf,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;QAE7B,OAAO,OAAO,CAAA;IAChB,CAAC,CAAA;IAED,SAAS,GAAG,GAAG,EAAE;QACf,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAS,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,YAAY,EAAY,CAAC,CAAA;YACtE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;gBACtB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;YAC1B,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC,CAAA;IAED,IAAI,GAAG,CAAC,QAAsB,EAAE,UAAuB,EAAE,EAAE,EAAE,CAC3D,eAAe,CACb,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAC1C,OAAO,CACR,CAAA;IAEH,KAAK,GAAG;QACN,OAAO,EAAE,CAAC,MAAc,EAAE,OAAe,EAAE,EAAE,CAC3C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvD,OAAO,EAAE,CAAC,MAAc,EAAE,OAAe,EAAE,EAAE,CAC3C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACxD,CAAA;IAED,KAAK,GAAG;QACN,OAAO,EAAE,CAAC,MAAc,EAAE,OAAe,EAAE,EAAE,CAC3C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvD,OAAO,EAAE,CAAC,MAAc,EAAE,OAAe,EAAE,EAAE,CAC3C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACxD,CAAA;CACF"}
@@ -40,8 +40,8 @@ export declare class WrappedSigner extends Emitter implements ISigner {
40
40
  readonly signer: ISigner;
41
41
  readonly wrapMethod: SignerMethodWrapper;
42
42
  constructor(signer: ISigner, wrapMethod: SignerMethodWrapper);
43
- sign(event: StampedEvent, options?: SignOptions): Promise<SignedEvent>;
44
- getPubkey(): Promise<string>;
43
+ sign: (event: StampedEvent, options?: SignOptions) => Promise<SignedEvent>;
44
+ getPubkey: () => Promise<string>;
45
45
  nip04: {
46
46
  encrypt: (pubkey: string, message: string) => Promise<string>;
47
47
  decrypt: (pubkey: string, message: string) => Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../signer/src/util.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,OAAO,EAAS,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAC,WAAW,EAAE,YAAY,EAAC,MAAM,gBAAgB,CAAA;AAExD,eAAO,MAAM,KAAK;gBACJ,MAAM;sBACA,MAAM,UAAU,MAAM,KAAK,MAAM;sBACjC,MAAM,UAAU,MAAM,KAAK,MAAM;CACpD,CAAA;AAED,eAAO,MAAM,KAAK;;;;;;;;sBAOE,MAAM,UAAU,MAAM,KAAK,MAAM;sBAEjC,MAAM,UAAU,MAAM,KAAK,MAAM;CAEpD,CAAA;AAED,MAAM,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,WAAW,CAAC,CAAA;AAEhE,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,WAAW,CAAC,CAAA;AAElG,MAAM,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;AAE1E,MAAM,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;AAE1E,MAAM,MAAM,wBAAwB,GAAG;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,eAAe,CAAA;IACrB,KAAK,EAAE,wBAAwB,CAAA;IAC/B,KAAK,EAAE,wBAAwB,CAAA;IAC/B,SAAS,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IAChC,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC9B;AAED,eAAO,MAAM,OAAO,GAAU,QAAQ,OAAO,EAAE,QAAQ,MAAM,EAAE,SAAS,MAAM,oBAGnC,CAAA;AAK3C,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,EAClC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACvB,IAAI,EAAE,OAAO,EAAE,KACZ,OAAO,CAAC,CAAC,CAAC,CAAA;AAEf,qBAAa,aAAc,SAAQ,OAAQ,YAAW,OAAO;IAEzD,QAAQ,CAAC,MAAM,EAAE,OAAO;IACxB,QAAQ,CAAC,UAAU,EAAE,mBAAmB;gBAD/B,MAAM,EAAE,OAAO,EACf,UAAU,EAAE,mBAAmB;IAK1C,IAAI,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,GAAE,WAAgB;IAInD,SAAS;IAIT,KAAK;0BACqB,MAAM,WAAW,MAAM;0BAKvB,MAAM,WAAW,MAAM;MAKhD;IAED,KAAK;0BACqB,MAAM,WAAW,MAAM;0BAKvB,MAAM,WAAW,MAAM;MAKhD;IAEK,OAAO;CAGd;AAED,eAAO,MAAM,eAAe,GAC1B,SAAS,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,EAC3C,SAAS,WAAW,yBAMlB,CAAA"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../signer/src/util.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,OAAO,EAAS,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAC,WAAW,EAAE,YAAY,EAAC,MAAM,gBAAgB,CAAA;AAExD,eAAO,MAAM,KAAK;gBACJ,MAAM;sBACA,MAAM,UAAU,MAAM,KAAK,MAAM;sBACjC,MAAM,UAAU,MAAM,KAAK,MAAM;CACpD,CAAA;AAED,eAAO,MAAM,KAAK;;;;;;;;sBAOE,MAAM,UAAU,MAAM,KAAK,MAAM;sBAEjC,MAAM,UAAU,MAAM,KAAK,MAAM;CAEpD,CAAA;AAED,MAAM,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,WAAW,CAAC,CAAA;AAEhE,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,WAAW,CAAC,CAAA;AAElG,MAAM,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;AAE1E,MAAM,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;AAE1E,MAAM,MAAM,wBAAwB,GAAG;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,eAAe,CAAA;IACrB,KAAK,EAAE,wBAAwB,CAAA;IAC/B,KAAK,EAAE,wBAAwB,CAAA;IAC/B,SAAS,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IAChC,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC9B;AAED,eAAO,MAAM,OAAO,GAAU,QAAQ,OAAO,EAAE,QAAQ,MAAM,EAAE,SAAS,MAAM,oBAGnC,CAAA;AAK3C,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,EAClC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACvB,IAAI,EAAE,OAAO,EAAE,KACZ,OAAO,CAAC,CAAC,CAAC,CAAA;AAEf,qBAAa,aAAc,SAAQ,OAAQ,YAAW,OAAO;IAEzD,QAAQ,CAAC,MAAM,EAAE,OAAO;IACxB,QAAQ,CAAC,UAAU,EAAE,mBAAmB;gBAD/B,MAAM,EAAE,OAAO,EACf,UAAU,EAAE,mBAAmB;IAK1C,IAAI,GAAI,OAAO,YAAY,EAAE,UAAS,WAAgB,0BAC6B;IAEnF,SAAS,wBAAwE;IAEjF,KAAK;0BACqB,MAAM,WAAW,MAAM;0BAKvB,MAAM,WAAW,MAAM;MAKhD;IAED,KAAK;0BACqB,MAAM,WAAW,MAAM;0BAKvB,MAAM,WAAW,MAAM;MAKhD;IAEK,OAAO;CAGd;AAED,eAAO,MAAM,eAAe,GAC1B,SAAS,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,EAC3C,SAAS,WAAW,yBAMlB,CAAA"}
@@ -27,12 +27,8 @@ export class WrappedSigner extends Emitter {
27
27
  this.signer = signer;
28
28
  this.wrapMethod = wrapMethod;
29
29
  }
30
- sign(event, options = {}) {
31
- return this.wrapMethod("sign", () => this.signer.sign(event, options), [event, options]);
32
- }
33
- getPubkey() {
34
- return this.wrapMethod("getPubkey", () => this.signer.getPubkey(), []);
35
- }
30
+ sign = (event, options = {}) => this.wrapMethod("sign", () => this.signer.sign(event, options), [event, options]);
31
+ getPubkey = () => this.wrapMethod("getPubkey", () => this.signer.getPubkey(), []);
36
32
  nip04 = {
37
33
  encrypt: async (pubkey, message) => this.wrapMethod("nip04.encrypt", () => this.signer.nip04.encrypt(pubkey, message), [
38
34
  pubkey,
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../signer/src/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,8BAA8B,CAAA;AACvD,OAAO,KAAK,IAAI,MAAM,mBAAmB,CAAA;AACzC,OAAO,KAAK,IAAI,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAC,OAAO,EAAE,MAAM,EAAC,MAAM,eAAe,CAAA;AAG7C,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,MAAM,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,CAAC,MAAc,EAAE,MAAc,EAAE,CAAS,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACvF,OAAO,EAAE,CAAC,MAAc,EAAE,MAAc,EAAE,CAAS,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CACxF,CAAA;AAED,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,eAAe,EAAE,MAAM,CAAC;QACtB,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,IAAI,MAAM,EAAE;QACnD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,CAAW,EAAE,EAAE,CACvC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;KAC/D,CAAC;IACF,OAAO,EAAE,CAAC,MAAc,EAAE,MAAc,EAAE,CAAS,EAAE,EAAE,CACrD,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAE,CAAC;IAC5D,OAAO,EAAE,CAAC,MAAc,EAAE,MAAc,EAAE,CAAS,EAAE,EAAE,CACrD,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAE,CAAC;CAC7D,CAAA;AA2BD,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAe,EAAE,MAAc,EAAE,OAAe,EAAE,EAAE,CAChF,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;IACnB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC;IACvC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAW3C,MAAM,OAAO,aAAc,SAAQ,OAAO;IAE7B;IACA;IAFX,YACW,MAAe,EACf,UAA+B;QAExC,KAAK,EAAE,CAAA;QAHE,WAAM,GAAN,MAAM,CAAS;QACf,eAAU,GAAV,UAAU,CAAqB;IAG1C,CAAC;IAED,IAAI,CAAC,KAAmB,EAAE,UAAuB,EAAE;QACjD,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;IAC1F,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,EAAE,CAAC,CAAA;IACxE,CAAC;IAED,KAAK,GAAG;QACN,OAAO,EAAE,KAAK,EAAE,MAAc,EAAE,OAAe,EAAE,EAAE,CACjD,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;YACjF,MAAM;YACN,OAAO;SACR,CAAC;QACJ,OAAO,EAAE,KAAK,EAAE,MAAc,EAAE,OAAe,EAAE,EAAE,CACjD,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;YACjF,MAAM;YACN,OAAO;SACR,CAAC;KACL,CAAA;IAED,KAAK,GAAG;QACN,OAAO,EAAE,KAAK,EAAE,MAAc,EAAE,OAAe,EAAE,EAAE,CACjD,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;YACjF,MAAM;YACN,OAAO;SACR,CAAC;QACJ,OAAO,EAAE,KAAK,EAAE,MAAc,EAAE,OAAe,EAAE,EAAE,CACjD,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;YACjF,MAAM;YACN,OAAO;SACR,CAAC;KACL,CAAA;IAED,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAA;IAC/B,CAAC;CACF;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,OAA2C,EAC3C,OAAoB,EACpB,EAAE,CACF,IAAI,OAAO,CAAc,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC3C,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IACpD,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,CAAA;IACrD,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAA;AAChF,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../signer/src/util.ts"],"names":[],"mappings":"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"}
@@ -3,9 +3,11 @@ type Stores = Readable<any> | [Readable<any>, ...Array<Readable<any>>] | Array<R
3
3
  type StoresValues<T> = T extends Readable<infer U> ? U : {
4
4
  [K in keyof T]: T[K] extends Readable<infer U> ? U : never;
5
5
  };
6
- export declare const getter: <T>(store: Readable<T>, { threshold }?: {
6
+ export type GetterOptions<T> = {
7
7
  threshold?: number;
8
- }) => () => T;
8
+ read?: () => T;
9
+ };
10
+ export declare const getter: <T>(store: Readable<T>, { threshold, read }?: GetterOptions<T>) => () => T;
9
11
  export type WritableWithGetter<T> = Writable<T> & {
10
12
  get: () => T;
11
13
  };
@@ -1 +1 @@
1
- {"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../../../../store/src/misc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAC,MAAM,cAAc,CAAA;AAIvF,KAAK,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;AAC7F,KAAK,YAAY,CAAC,CAAC,IACjB,CAAC,SAAS,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CAAC,CAAA;AAKhG,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,gBAAkB;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAM,YA0CxF,CAAA;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG;IAAC,GAAG,EAAE,MAAM,CAAC,CAAA;CAAC,CAAA;AAChE,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG;IAAC,GAAG,EAAE,MAAM,CAAC,CAAA;CAAC,CAAA;AAEhE,wBAAgB,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAA;AACxE,wBAAgB,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAA;AAKxE,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,OAAO,QAAQ,CAAC,CAAC,CAAC;mBAGX,UAAU,CAAC,CAAC,CAAC;CAC/C,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,CAAC,SAAS,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,MAAM,EAAE,OAAO,CAAC,MAQ1E,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,MAAM,EAAE,CAAC,EACpD,QAAQ,CAAC,EACT,KAAK,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,KACvC,QAAQ,CAAC,CAAC,CAWZ,CAAA;AAED,eAAO,MAAM,yBAAyB,GAAI,CAAC,SAAS,MAAM,EAAE,CAAC,EAC3D,QAAQ,CAAC,EACT,KAAK,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,KACvC,QAAQ,CAAC,CAAC,CAWZ,CAAA;AAED,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,MAAM,EAAE,QAAQ,CAAC,oHAA8B,CAAA"}
1
+ {"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../../../../store/src/misc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAC,MAAM,cAAc,CAAA;AAIvF,KAAK,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;AAC7F,KAAK,YAAY,CAAC,CAAC,IACjB,CAAC,SAAS,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CAAC,CAAA;AAKhG,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAGlB,IAAI,CAAC,EAAE,MAAM,CAAC,CAAA;CACf,CAAA;AAED,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,OAAO,QAAQ,CAAC,CAAC,CAAC,EAAE,sBAAwB,aAAa,CAAC,CAAC,CAAM,YA0C1F,CAAA;AAED,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG;IAAC,GAAG,EAAE,MAAM,CAAC,CAAA;CAAC,CAAA;AAChE,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG;IAAC,GAAG,EAAE,MAAM,CAAC,CAAA;CAAC,CAAA;AAEhE,wBAAgB,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAA;AACxE,wBAAgB,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAA;AAKxE,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,OAAO,QAAQ,CAAC,CAAC,CAAC;mBAGX,UAAU,CAAC,CAAC,CAAC;CAC/C,CAAA;AAED,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,CAAC,SAAS,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,MAAM,EAAE,OAAO,CAAC,MAQ1E,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,MAAM,EAAE,CAAC,EACpD,QAAQ,CAAC,EACT,KAAK,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,KACvC,QAAQ,CAAC,CAAC,CAWZ,CAAA;AAED,eAAO,MAAM,yBAAyB,GAAI,CAAC,SAAS,MAAM,EAAE,CAAC,EAC3D,QAAQ,CAAC,EACT,KAAK,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,KACvC,QAAQ,CAAC,CAAC,CAWZ,CAAA;AAED,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS,MAAM,EAAE,QAAQ,CAAC,oHAA8B,CAAA"}
@@ -1,8 +1,6 @@
1
1
  import { get, derived } from "svelte/store";
2
2
  import { memoize, identity, equals, throttle } from "@welshman/lib";
3
- // Smart getter that adjusts between svelte's get and aggressive subscription depending on how hot
4
- // the path is
5
- export const getter = (store, { threshold = 10 } = {}) => {
3
+ export const getter = (store, { threshold = 10, read } = {}) => {
6
4
  const calls = [];
7
5
  let unsubscribe;
8
6
  let offset = 0;
@@ -35,7 +33,7 @@ export const getter = (store, { threshold = 10 } = {}) => {
35
33
  unsubscribe();
36
34
  unsubscribe = undefined;
37
35
  }
38
- return get(store);
36
+ return read ? read() : get(store);
39
37
  }
40
38
  };
41
39
  };
@@ -1 +1 @@
1
- {"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../../store/src/misc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../../store/src/misc.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../../store/src/repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../../store/src/repository.ts"],"names":[],"mappings":"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"}
@@ -210,17 +210,13 @@ export const deriveItemsByKey = ({ getKey, filters, repository, eventToItem, inc
210
210
  const idsByKey = new Map();
211
211
  const keysById = new Map();
212
212
  return readable(itemsByKey, set => {
213
- const addEvent = async (event) => {
213
+ const onError = (error) => console.warn("Failed to build an item from an event", error);
214
+ const addEvent = (event) => {
214
215
  if (deferred.has(event.id))
215
216
  return;
216
217
  if (keysById.has(event.id))
217
218
  return;
218
- const itemOrPromise = eventToItem(event);
219
- if (itemOrPromise instanceof Promise) {
220
- deferred.set(event.id, itemOrPromise);
221
- }
222
- try {
223
- const item = await itemOrPromise;
219
+ const commit = (item) => {
224
220
  if (item) {
225
221
  const key = getKey(item);
226
222
  itemsByKey.set(key, item);
@@ -228,9 +224,24 @@ export const deriveItemsByKey = ({ getKey, filters, repository, eventToItem, inc
228
224
  keysById.set(event.id, key);
229
225
  set(itemsByKey);
230
226
  }
227
+ };
228
+ try {
229
+ const itemOrPromise = eventToItem(event);
230
+ // Commit synchronously when `eventToItem` doesn't need IO, so items are in
231
+ // place before the initial subscription returns rather than a microtask later
232
+ if (itemOrPromise instanceof Promise) {
233
+ deferred.set(event.id, itemOrPromise);
234
+ itemOrPromise
235
+ .then(commit)
236
+ .catch(onError)
237
+ .finally(() => deferred.delete(event.id));
238
+ }
239
+ else {
240
+ commit(itemOrPromise);
241
+ }
231
242
  }
232
- finally {
233
- deferred.delete(event.id);
243
+ catch (error) {
244
+ onError(error);
234
245
  }
235
246
  };
236
247
  for (const event of repository.query(filters, { includeDeleted })) {
@@ -246,7 +257,10 @@ export const deriveItemsByKey = ({ getKey, filters, repository, eventToItem, inc
246
257
  let dirty = false;
247
258
  for (const id of removed) {
248
259
  const key = mapPop(id, keysById);
249
- if (key) {
260
+ // Only remove if this id still owns the key — replacing a replaceable event
261
+ // reports the old id as removed in the same update that adds the new one,
262
+ // and the newer event has already taken the key over.
263
+ if (key && idsByKey.get(key) === id) {
250
264
  idsByKey.delete(key);
251
265
  itemsByKey.delete(key);
252
266
  dirty = true;
@@ -295,18 +309,14 @@ export const deriveItemsByKeyByUrl = ({ getKey, filters, repository, tracker, ev
295
309
  }
296
310
  return false;
297
311
  };
298
- const addEvent = async (event, urls) => {
312
+ const onError = (error) => console.warn("Failed to build an item from an event", error);
313
+ const addEvent = (event, urls) => {
299
314
  const pending = Array.from(urls).filter(url => keysById.get(event.id)?.get(url) === undefined);
300
315
  if (pending.length === 0)
301
316
  return;
302
317
  if (deferred.has(event.id))
303
318
  return;
304
- const itemOrPromise = eventToItem(event);
305
- if (itemOrPromise instanceof Promise) {
306
- deferred.add(event.id);
307
- }
308
- try {
309
- const item = await itemOrPromise;
319
+ const commit = (item) => {
310
320
  if (item) {
311
321
  for (const url of pending) {
312
322
  const key = getKey(item, url);
@@ -316,9 +326,24 @@ export const deriveItemsByKeyByUrl = ({ getKey, filters, repository, tracker, ev
316
326
  }
317
327
  set(itemsByKey);
318
328
  }
329
+ };
330
+ try {
331
+ const itemOrPromise = eventToItem(event);
332
+ // Commit synchronously when `eventToItem` doesn't need IO, so items are in
333
+ // place before the initial subscription returns rather than a microtask later
334
+ if (itemOrPromise instanceof Promise) {
335
+ deferred.add(event.id);
336
+ itemOrPromise
337
+ .then(commit)
338
+ .catch(onError)
339
+ .finally(() => deferred.delete(event.id));
340
+ }
341
+ else {
342
+ commit(itemOrPromise);
343
+ }
319
344
  }
320
- finally {
321
- deferred.delete(event.id);
345
+ catch (error) {
346
+ onError(error);
322
347
  }
323
348
  };
324
349
  const removeEvent = (id) => {