@welshman/app 0.10.9 → 0.11.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 (90) hide show
  1. package/dist/app/src/command.d.ts +1 -7
  2. package/dist/app/src/command.d.ts.map +1 -1
  3. package/dist/app/src/command.js +1 -16
  4. package/dist/app/src/command.js.map +1 -1
  5. package/dist/app/src/plugins/events.js +1 -1
  6. package/dist/app/src/plugins/events.js.map +1 -1
  7. package/dist/app/src/plugins/network.d.ts +3 -2
  8. package/dist/app/src/plugins/network.d.ts.map +1 -1
  9. package/dist/app/src/plugins/network.js +9 -5
  10. package/dist/app/src/plugins/network.js.map +1 -1
  11. package/dist/app/src/plugins/pinboards.js +1 -1
  12. package/dist/app/src/plugins/pinboards.js.map +1 -1
  13. package/dist/app/src/plugins/profiles.js +1 -1
  14. package/dist/app/src/plugins/profiles.js.map +1 -1
  15. package/dist/app/src/plugins/relayLists.js +1 -1
  16. package/dist/app/src/plugins/relayLists.js.map +1 -1
  17. package/dist/app/src/plugins/relayMembers.js +1 -1
  18. package/dist/app/src/plugins/relayMembers.js.map +1 -1
  19. package/dist/app/src/plugins/relayRoles.d.ts.map +1 -1
  20. package/dist/app/src/plugins/relayRoles.js +3 -1
  21. package/dist/app/src/plugins/relayRoles.js.map +1 -1
  22. package/dist/app/src/plugins/roomPins.js +1 -1
  23. package/dist/app/src/plugins/roomPins.js.map +1 -1
  24. package/dist/app/src/plugins/rooms.d.ts +1 -0
  25. package/dist/app/src/plugins/rooms.d.ts.map +1 -1
  26. package/dist/app/src/plugins/rooms.js +5 -2
  27. package/dist/app/src/plugins/rooms.js.map +1 -1
  28. package/dist/app/src/plugins/thunk.d.ts +4 -2
  29. package/dist/app/src/plugins/thunk.d.ts.map +1 -1
  30. package/dist/app/src/plugins/thunk.js +20 -19
  31. package/dist/app/src/plugins/thunk.js.map +1 -1
  32. package/dist/domain/src/index.d.ts +1 -0
  33. package/dist/domain/src/index.d.ts.map +1 -1
  34. package/dist/domain/src/index.js +1 -0
  35. package/dist/domain/src/index.js.map +1 -1
  36. package/dist/domain/src/kinds/Command.d.ts +0 -2
  37. package/dist/domain/src/kinds/Command.d.ts.map +1 -1
  38. package/dist/domain/src/kinds/Command.js +5 -11
  39. package/dist/domain/src/kinds/Command.js.map +1 -1
  40. package/dist/domain/src/kinds/Comment.d.ts.map +1 -1
  41. package/dist/domain/src/kinds/Comment.js +13 -9
  42. package/dist/domain/src/kinds/Comment.js.map +1 -1
  43. package/dist/domain/src/kinds/RoomDeleteEvent.d.ts +18 -0
  44. package/dist/domain/src/kinds/RoomDeleteEvent.d.ts.map +1 -0
  45. package/dist/domain/src/kinds/RoomDeleteEvent.js +40 -0
  46. package/dist/domain/src/kinds/RoomDeleteEvent.js.map +1 -0
  47. package/dist/lib/src/TaskQueue.d.ts +1 -0
  48. package/dist/lib/src/TaskQueue.d.ts.map +1 -1
  49. package/dist/lib/src/TaskQueue.js +23 -1
  50. package/dist/lib/src/TaskQueue.js.map +1 -1
  51. package/dist/net/src/message.d.ts +5 -0
  52. package/dist/net/src/message.d.ts.map +1 -1
  53. package/dist/net/src/message.js +12 -0
  54. package/dist/net/src/message.js.map +1 -1
  55. package/dist/net/src/policy.d.ts +8 -0
  56. package/dist/net/src/policy.d.ts.map +1 -1
  57. package/dist/net/src/policy.js +35 -3
  58. package/dist/net/src/policy.js.map +1 -1
  59. package/dist/net/src/publish.d.ts +2 -0
  60. package/dist/net/src/publish.d.ts.map +1 -1
  61. package/dist/net/src/publish.js +4 -3
  62. package/dist/net/src/publish.js.map +1 -1
  63. package/dist/net/src/repository.d.ts +6 -5
  64. package/dist/net/src/repository.d.ts.map +1 -1
  65. package/dist/net/src/repository.js +66 -20
  66. package/dist/net/src/repository.js.map +1 -1
  67. package/dist/net/src/request.d.ts +4 -1
  68. package/dist/net/src/request.d.ts.map +1 -1
  69. package/dist/net/src/request.js +15 -9
  70. package/dist/net/src/request.js.map +1 -1
  71. package/dist/net/src/socket.d.ts +4 -2
  72. package/dist/net/src/socket.d.ts.map +1 -1
  73. package/dist/net/src/socket.js +11 -6
  74. package/dist/net/src/socket.js.map +1 -1
  75. package/dist/store/src/repository.d.ts.map +1 -1
  76. package/dist/store/src/repository.js +2 -1
  77. package/dist/store/src/repository.js.map +1 -1
  78. package/dist/util/src/Command.d.ts +1 -1
  79. package/dist/util/src/Command.d.ts.map +1 -1
  80. package/dist/util/src/Command.js +6 -8
  81. package/dist/util/src/Command.js.map +1 -1
  82. package/dist/util/src/Nip86.d.ts +3 -3
  83. package/dist/util/src/Nip86.d.ts.map +1 -1
  84. package/dist/util/src/Nip86.js +5 -5
  85. package/dist/util/src/Nip86.js.map +1 -1
  86. package/dist/util/src/Pow.d.ts +2 -0
  87. package/dist/util/src/Pow.d.ts.map +1 -1
  88. package/dist/util/src/Pow.js +41 -9
  89. package/dist/util/src/Pow.js.map +1 -1
  90. package/package.json +15 -15
@@ -8,6 +8,14 @@ import { Socket, SocketPolicy } from "./socket.js";
8
8
  * @return a cleanup function
9
9
  */
10
10
  export declare const socketPolicyAuthBuffer: (socket: Socket) => () => void;
11
+ /**
12
+ * Drops subscriptions that are closed before they've been sent, along with the close
13
+ * message itself. Besides saving a round trip, this keeps a prioritized close from
14
+ * jumping ahead of its own req, which would leave the subscription open on the relay.
15
+ * @param socket - a Socket object
16
+ * @return a cleanup function
17
+ */
18
+ export declare const socketPolicyCancelUnsent: (socket: Socket) => () => void;
11
19
  /**
12
20
  * Auto-connects a closed socket when a message is sent unless there was a recent error
13
21
  * @param socket - a Socket object
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../../net/src/policy.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,YAAY,EAAE,WAAW,EAAsB,MAAM,gBAAgB,CAAA;AAkBzF,OAAO,EAAC,MAAM,EAA6B,YAAY,EAAC,MAAM,aAAa,CAAA;AAI3E;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,MAAM,eA8DpD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,GAAI,QAAQ,MAAM,eAqBvD,CAAA;AAQD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,eA4GnD,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,WAAW,CAAC,CAAA;IACnD,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAA;CACzC,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,SAAS,uBAAuB,MAAM,QAAQ,MAAM,eAcxF,CAAA;AAED,eAAO,MAAM,qBAAqB,EAAE,YAAY,EAI/C,CAAA"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../../net/src/policy.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,YAAY,EAAE,WAAW,EAAsB,MAAM,gBAAgB,CAAA;AAmBzF,OAAO,EAAC,MAAM,EAA6B,YAAY,EAAC,MAAM,aAAa,CAAA;AAI3E;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,MAAM,eA8DpD,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,GAAI,QAAQ,MAAM,eA0BtD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,GAAI,QAAQ,MAAM,eAqBvD,CAAA;AAQD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,eA6GnD,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,WAAW,CAAC,CAAA;IACnD,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAA;CACzC,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,SAAS,uBAAuB,MAAM,QAAQ,MAAM,eAcxF,CAAA;AAED,eAAO,MAAM,qBAAqB,EAAE,YAAY,EAK/C,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { on, ms, nthNe, always, call, randomId, sleep, ago, now } from "@welshman/lib";
2
2
  import { RELAY_JOIN, neverFilter } from "@welshman/util";
3
- import { isClientAuth, isClientClose, isClientEvent, isClientReq, isClientNegOpen, isClientNegClose, ClientMessageType, isRelayOk, isRelayEose, isRelayClosed, isRelayNegErr, matchReason, RelayReasonPrefix, } from "./message.js";
3
+ import { isClientAuth, isClientClose, isClientEvent, isClientReq, isClientNegOpen, isClientNegClose, ClientMessageType, copyPriority, isRelayOk, isRelayEose, isRelayClosed, isRelayNegErr, matchReason, RelayReasonPrefix, } from "./message.js";
4
4
  import { SocketStatus, SocketEvent } from "./socket.js";
5
5
  import { AuthStatus, AuthStateEvent } from "./auth.js";
6
6
  import { catchUpFilter } from "./util.js";
@@ -32,7 +32,7 @@ export const socketPolicyAuthBuffer = (socket) => {
32
32
  buffer = buffer.filter(nthNe(1, message[1]));
33
33
  }
34
34
  else {
35
- buffer = buffer.slice(-50).concat([message]);
35
+ buffer = buffer.slice(-1000).concat([message]);
36
36
  }
37
37
  }),
38
38
  on(socket, SocketEvent.Receiving, (message) => {
@@ -67,6 +67,36 @@ export const socketPolicyAuthBuffer = (socket) => {
67
67
  ];
68
68
  return () => unsubscribers.forEach(call);
69
69
  };
70
+ /**
71
+ * Drops subscriptions that are closed before they've been sent, along with the close
72
+ * message itself. Besides saving a round trip, this keeps a prioritized close from
73
+ * jumping ahead of its own req, which would leave the subscription open on the relay.
74
+ * @param socket - a Socket object
75
+ * @return a cleanup function
76
+ */
77
+ export const socketPolicyCancelUnsent = (socket) => {
78
+ const unsubscribers = [
79
+ on(socket, SocketEvent.Sending, (message) => {
80
+ let isSubscription;
81
+ if (isClientClose(message)) {
82
+ isSubscription = isClientReq;
83
+ }
84
+ else if (isClientNegClose(message)) {
85
+ isSubscription = isClientNegOpen;
86
+ }
87
+ else {
88
+ return;
89
+ }
90
+ const subscription = socket._sendQueue.items.find(other => isSubscription(other) && other[1] === message[1]);
91
+ // The close is already queued at this point, so drop it along with the req
92
+ if (subscription) {
93
+ socket._sendQueue.remove(subscription);
94
+ socket._sendQueue.remove(message);
95
+ }
96
+ }),
97
+ ];
98
+ return () => unsubscribers.forEach(call);
99
+ };
70
100
  /**
71
101
  * Auto-connects a closed socket when a message is sent unless there was a recent error
72
102
  * @param socket - a Socket object
@@ -129,7 +159,8 @@ export const socketPolicyLifecycle = (socket) => {
129
159
  for (const message of pending.values()) {
130
160
  if (isClientReq(message)) {
131
161
  const filters = message.slice(2).map(filter => catchUpFilter(filter, since));
132
- socket.send([...message.slice(0, 2), ...filters]);
162
+ // Rebuilding the message drops its priority symbol, so carry it over
163
+ socket.send(copyPriority([...message.slice(0, 2), ...filters], message));
133
164
  }
134
165
  else {
135
166
  socket.send(message);
@@ -212,6 +243,7 @@ export const makeSocketPolicyAuth = (options) => (socket) => {
212
243
  };
213
244
  export const defaultSocketPolicies = [
214
245
  socketPolicyAuthBuffer,
246
+ socketPolicyCancelUnsent,
215
247
  socketPolicyConnectOnSend,
216
248
  socketPolicyLifecycle,
217
249
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../../../net/src/policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../../../net/src/policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAC,MAAM,eAAe,CAAA;AACpF,OAAO,EAAC,UAAU,EAAqC,WAAW,EAAC,MAAM,gBAAgB,CAAA;AACzF,OAAO,EAEL,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EAEjB,YAAY,EACZ,SAAS,EACT,WAAW,EACX,aAAa,EACb,aAAa,EACb,WAAW,EACX,iBAAiB,GAClB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAS,YAAY,EAAE,WAAW,EAAe,MAAM,aAAa,CAAA;AAC3E,OAAO,EAAC,UAAU,EAAE,cAAc,EAAC,MAAM,WAAW,CAAA;AACpD,OAAO,EAAC,aAAa,EAAC,MAAM,WAAW,CAAA;AAEvC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,MAAc,EAAE,EAAE;IACvD,MAAM,EAAC,IAAI,EAAE,EAAE,EAAE,eAAe,EAAE,SAAS,EAAC,GAAG,UAAU,CAAA;IACzD,MAAM,gBAAgB,GAAG,CAAC,EAAE,EAAE,eAAe,EAAE,SAAS,CAAC,CAAA;IAEzD,IAAI,MAAM,GAAoB,EAAE,CAAA;IAEhC,MAAM,aAAa,GAAG;QACpB,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,OAAsB,EAAE,EAAE;YACzD,4BAA4B;YAC5B,IAAI,YAAY,CAAC,OAAO,CAAC;gBAAE,OAAM;YAEjC,qCAAqC;YACrC,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU;gBAAE,OAAM;YAEpE,0DAA0D;YAC1D,IAAI,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;gBAAE,OAAM;YAEzD,8DAA8D;YAC9D,2FAA2F;YAC3F,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC9C,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;YAChD,CAAC;QACH,CAAC,CAAC;QACF,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,OAAqB,EAAE,EAAE;YAC1D,uFAAuF;YACvF,IACE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC;gBAClD,WAAW,CAAC,iBAAiB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EACvD,CAAC;gBACD,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YACnC,CAAC;YAED,oEAAoE;YACpE,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACrE,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YACnC,CAAC;YAED,yFAAyF;YACzF,IACE,SAAS,CAAC,OAAO,CAAC;gBAClB,CAAC,OAAO,CAAC,CAAC,CAAC;gBACX,WAAW,CAAC,iBAAiB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EACvD,CAAC;gBACD,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YACnC,CAAC;QACH,CAAC,CAAC;QACF,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC,MAAkB,EAAE,EAAE;YAC5D,kFAAkF;YAClF,+BAA+B;YAC/B,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;gBAClB,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBACtB,CAAC;YACH,CAAC;iBAAM,IAAI,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,MAAM,GAAG,EAAE,CAAA;YACb,CAAC;QACH,CAAC,CAAC;KACH,CAAA;IAED,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAC1C,CAAC,CAAA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,MAAc,EAAE,EAAE;IACzD,MAAM,aAAa,GAAG;QACpB,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,OAAsB,EAAE,EAAE;YACzD,IAAI,cAAmD,CAAA;YAEvD,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,cAAc,GAAG,WAAW,CAAA;YAC9B,CAAC;iBAAM,IAAI,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrC,cAAc,GAAG,eAAe,CAAA;YAClC,CAAC;iBAAM,CAAC;gBACN,OAAM;YACR,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAC/C,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAC1D,CAAA;YAED,2EAA2E;YAC3E,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;gBACtC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YACnC,CAAC;QACH,CAAC,CAAC;KACH,CAAA;IAED,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAC1C,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,MAAc,EAAE,EAAE;IAC1D,IAAI,SAAS,GAAG,CAAC,CAAA;IAEjB,MAAM,aAAa,GAAG;QACpB,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,SAAuB,EAAE,EAAE;YACzD,sCAAsC;YACtC,IAAI,SAAS,KAAK,YAAY,CAAC,KAAK,EAAE,CAAC;gBACrC,SAAS,GAAG,GAAG,EAAE,CAAA;YACnB,CAAC;QACH,CAAC,CAAC;QACF,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,OAAsB,EAAE,EAAE;YACzD,MAAM,QAAQ,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YAElF,6FAA6F;YAC7F,IAAI,QAAQ,IAAI,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnC,MAAM,CAAC,IAAI,EAAE,CAAA;YACf,CAAC;QACH,CAAC,CAAC;KACH,CAAA;IAED,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAC1C,CAAC,CAAA;AAED,sFAAsF;AACtF,MAAM,UAAU,GAAG,EAAE,CAAA;AAErB,gDAAgD;AAChD,MAAM,aAAa,GAAG,EAAE,CAAA;AAExB;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,MAAc,EAAE,EAAE;IACtD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAA;IAEhD,IAAI,QAAQ,GAAG,GAAG,EAAE,CAAA;IACpB,IAAI,YAAY,GAAG,GAAG,EAAE,CAAA;IACxB,IAAI,WAAW,GAAG,GAAG,EAAE,CAAA;IACvB,IAAI,OAA2B,CAAA;IAC/B,IAAI,QAAQ,GAAG,CAAC,CAAA;IAEhB,MAAM,aAAa,GAAG;QACpB,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,SAAuB,EAAE,EAAE;YACzD,MAAM,QAAQ,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;YAE9E,qCAAqC;YACrC,IAAI,SAAS,KAAK,YAAY,CAAC,IAAI,EAAE,CAAC;gBACpC,QAAQ,GAAG,GAAG,EAAE,CAAA;YAClB,CAAC;YAED,8EAA8E;YAC9E,IAAI,QAAQ,IAAI,OAAO,EAAE,CAAC;gBACxB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;gBACvB,OAAO,GAAG,SAAS,CAAA;YACrB,CAAC;YAED,sEAAsE;YACtE,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBAC7B,MAAM,KAAK,GAAG,WAAW,CAAA;gBACzB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;gBAErD,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;oBACrB,MAAM,CAAC,aAAa,EAAE,CAAA;oBAEtB,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;wBACvC,IAAI,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;4BACzB,MAAM,OAAO,GAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAc,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAC1D,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAC7B,CAAA;4BAED,qEAAqE;4BACrE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;wBAC1E,CAAC;6BAAM,CAAC;4BACN,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;wBACtB,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC,CAAC;QACF,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,OAAsB,EAAE,EAAE;YACtD,YAAY,GAAG,GAAG,EAAE,CAAA;YAEpB,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;YACrC,CAAC;YAED,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;YAClC,CAAC;YAED,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxD,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YAC5B,CAAC;QACH,CAAC,CAAC;QACF,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,OAAqB,EAAE,EAAE;YACxD,YAAY,GAAG,GAAG,EAAE,CAAA;YACpB,WAAW,GAAG,GAAG,EAAE,CAAA;YAEnB,oEAAoE;YACpE,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;gBAC/C,OAAO,GAAG,SAAS,CAAA;YACrB,CAAC;YAED,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACjD,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YAC5B,CAAC;QACH,CAAC,CAAC;KACH,CAAA;IAED,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;QAChC,IAAI,MAAM,CAAC,MAAM,KAAK,YAAY,CAAC,IAAI;YAAE,OAAM;QAE/C,kDAAkD;QAClD,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACvB,IAAI,YAAY,GAAG,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC3B,MAAM,CAAC,KAAK,EAAE,CAAA;YAChB,CAAC;YAED,OAAM;QACR,CAAC;QAED,4FAA4F;QAC5F,yFAAyF;QACzF,2FAA2F;QAC3F,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,QAAQ,GAAG,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;gBAClC,MAAM,CAAC,KAAK,EAAE,CAAA;YAChB,CAAC;QACH,CAAC;aAAM,IAAI,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACzC,OAAO,GAAG,QAAQ,QAAQ,EAAE,EAAE,CAAA;YAC9B,QAAQ,GAAG,GAAG,EAAE,CAAA;YAEhB,MAAM,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAA;QAC5D,CAAC;IACH,CAAC,EAAE,IAAI,CAAC,CAAA;IAER,OAAO,GAAG,EAAE;QACV,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC3B,aAAa,CAAC,QAAQ,CAAC,CAAA;IACzB,CAAC,CAAA;AACH,CAAC,CAAA;AAOD;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAAgC,EAAE,EAAE,CAAC,CAAC,MAAc,EAAE,EAAE;IAC3F,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,CAAA;IAErD,MAAM,aAAa,GAAG;QACpB,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,MAAM,EAAE,CAAC,MAAkB,EAAE,EAAE;YAC5D,IAAI,MAAM,KAAK,UAAU,CAAC,SAAS,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1D,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YAClC,CAAC;QACH,CAAC,CAAC;KACH,CAAA;IAED,OAAO,GAAG,EAAE;QACV,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7B,CAAC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAmB;IACnD,sBAAsB;IACtB,wBAAwB;IACxB,yBAAyB;IACzB,qBAAqB;CACtB,CAAA"}
@@ -17,6 +17,7 @@ export type PublishOneOptions = {
17
17
  event: SignedEvent;
18
18
  relay: string;
19
19
  signal?: AbortSignal;
20
+ priority?: number;
20
21
  timeout?: number;
21
22
  context?: AdapterContext;
22
23
  onSuccess?: (result: PublishResult) => void;
@@ -32,6 +33,7 @@ export type PublishOptions = {
32
33
  event: SignedEvent;
33
34
  relays: string[];
34
35
  signal?: AbortSignal;
36
+ priority?: number;
35
37
  timeout?: number;
36
38
  context?: AdapterContext;
37
39
  onSuccess?: (result: PublishResult) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../../../net/src/publish.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAA;AAE1C,OAAO,EAAe,cAAc,EAAa,MAAM,cAAc,CAAA;AAErE,oBAAY,aAAa;IACvB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,aAAa,CAAA;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,WAAW,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;CAC7C,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,SAAS,iBAAiB,2BAuFjD,CAAA;AAEJ,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;AAEjE,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,WAAW,CAAA;IAClB,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;CAC7C,CAAA;AAED,eAAO,MAAM,OAAO,GAAU,SAAS,cAAc,KAAG,OAAO,CAAC,qBAAqB,CAoCpF,CAAA"}
1
+ {"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../../../net/src/publish.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAA;AAE1C,OAAO,EAAe,cAAc,EAAa,MAAM,cAAc,CAAA;AAErE,oBAAY,aAAa;IACvB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,aAAa,CAAA;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,WAAW,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;CAC7C,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,SAAS,iBAAiB,2BAuFjD,CAAA;AAEJ,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;AAEjE,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,WAAW,CAAA;IAClB,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;IAC3C,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;CAC7C,CAAA;AAED,eAAO,MAAM,OAAO,GAAU,SAAS,cAAc,KAAG,OAAO,CAAC,qBAAqB,CAqCpF,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { fromPairs, once } from "@welshman/lib";
2
- import { ClientMessageType, isRelayOk } from "./message.js";
2
+ import { ClientMessageType, setPriority, isRelayOk } from "./message.js";
3
3
  import { AdapterEvent, getAdapter } from "./adapter.js";
4
4
  export var PublishStatus;
5
5
  (function (PublishStatus) {
@@ -77,10 +77,10 @@ export const publishOne = (options) => new Promise(resolve => {
77
77
  }
78
78
  cleanup();
79
79
  }, options.timeout || 10_000);
80
- adapter.send([ClientMessageType.Event, options.event]);
80
+ adapter.send(setPriority([ClientMessageType.Event, options.event], options.priority));
81
81
  });
82
82
  export const publish = async (options) => {
83
- const { event, timeout, signal, context } = options;
83
+ const { event, timeout, signal, context, priority } = options;
84
84
  const completed = new Set();
85
85
  const relays = new Set(options.relays);
86
86
  if (relays.size !== options.relays.length) {
@@ -93,6 +93,7 @@ export const publish = async (options) => {
93
93
  signal,
94
94
  timeout,
95
95
  context,
96
+ priority,
96
97
  onSuccess: options.onSuccess,
97
98
  onFailure: options.onFailure,
98
99
  onPending: options.onPending,
@@ -1 +1 @@
1
- {"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../../net/src/publish.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../../net/src/publish.ts"],"names":[],"mappings":"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"}
@@ -13,10 +13,8 @@ export declare class Repository extends Emitter {
13
13
  eventsByDay: Map<number, TrustedEvent[]>;
14
14
  eventsByAuthor: Map<string, TrustedEvent[]>;
15
15
  eventsByKind: Map<number, TrustedEvent[]>;
16
- deletes: Map<string, {
17
- created_at: number;
18
- pubkey: string;
19
- }[]>;
16
+ deletes: Map<string, Pick<TrustedEvent, "pubkey" | "created_at" | "id">[]>;
17
+ deletedBy: Map<string, string[]>;
20
18
  expired: Map<string, number>;
21
19
  replaced: Map<string, TrustedEvent>;
22
20
  constructor();
@@ -65,7 +63,10 @@ export declare class Repository extends Emitter {
65
63
  filter: Filter;
66
64
  ids: Set<string>;
67
65
  } | undefined;
66
+ _replaceEvent: (existing: TrustedEvent, event: TrustedEvent, shouldNotify: boolean) => void;
68
67
  _reindex: (event: TrustedEvent, remove?: TrustedEvent) => void;
69
- _restore: ({ pubkey, created_at }: TrustedEvent, replaced: TrustedEvent) => void;
68
+ _delete: (event: TrustedEvent, key: string) => void;
69
+ _undelete: (id: string) => TrustedEvent[];
70
+ _isVisible: (event: TrustedEvent) => boolean;
70
71
  }
71
72
  //# sourceMappingURL=repository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../../net/src/repository.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,OAAO,EAaR,MAAM,eAAe,CAAA;AACtB,OAAO,EAOL,MAAM,EACN,YAAY,EACb,MAAM,gBAAgB,CAAA;AAEvB,eAAO,MAAM,eAAe,4BAA4B,CAAA;AAIxD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,YAAY,EAAE,CAAA;IACrB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,sBAAsB,GAAI,SAAS,gBAAgB,EAAE,KAAG,gBAiBpE,CAAA;AAED,qBAAa,UAAW,SAAQ,OAAO;IACrC,UAAU,4BAAkC;IAC5C,eAAe,4BAAkC;IACjD,WAAW,8BAAoC;IAC/C,WAAW,8BAAoC;IAC/C,cAAc,8BAAoC;IAClD,YAAY,8BAAoC;IAChD,OAAO;oBAAgC,MAAM;gBAAU,MAAM;SAAM;IACnE,OAAO,sBAA4B;IACnC,QAAQ,4BAAkC;;IAU1C,IAAI,uBAEH;IAED,KAAK,aAWJ;IAED,IAAI,GAAI,QAAQ,YAAY,EAAE,UA0B7B;IAID,QAAQ,GAAI,aAAa,MAAM,8BAI9B;IAED,QAAQ,GAAI,OAAO,YAAY,yBAI9B;IAED,WAAW,GAAI,aAAa,MAAM,UAmCjC;IAED,KAAK,GACH,SAAS,MAAM,EAAE,EACjB;;;;KAAwE,oBAoCzE;IAED,OAAO,GAAI,OAAO,YAAY,EAAE;;KAA0B,KAAG,OAAO,CA2EnE;IAID,aAAa,GAAI,OAAO,YAAY,aACkC;IAItE,kBAAkB,GAAI,OAAO,YAAY,aAItC;IAEH,SAAS,GAAI,OAAO,YAAY,aAAgE;IAEhG,SAAS,GAAI,OAAO,YAAY,aAI/B;IAID,WAAW,GAAI,YAAY,OAAO,EAAE,QAAQ,YAAY,EAAE,oBACZ;IAE9C,YAAY,GAAI,CAAC,EACf,GAAG,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EACzB,GAAG,CAAC,EACJ,MAAM,YAAY,EAClB,SAAS,YAAY,UAiBtB;IAED,UAAU,GAAI,KAAK,QAAQ,CAAC,MAAM,CAAC,oBAYlC;IAED,eAAe,GAAI,QAAQ,MAAM;;;kBAOhC;IAED,mBAAmB,GAAI,QAAQ,MAAM;;;kBASpC;IAED,gBAAgB,GAAI,QAAQ,MAAM;;;kBAkBjC;IAED,iBAAiB,GAAI,QAAQ,MAAM;;;kBASlC;IAED,gBAAgB,GAAI,QAAQ,MAAM;;;kBAUjC;IAED,eAAe,GAAI,QAAQ,MAAM;;;kBAkBhC;IAGD,QAAQ,GAAI,OAAO,YAAY,EAAE,SAAS,YAAY,UAUrD;IAED,QAAQ,GAAI,wBAAsB,YAAY,EAAE,UAAU,YAAY,UAYrE;CACF"}
1
+ {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../../net/src/repository.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,OAAO,EAcR,MAAM,eAAe,CAAA;AACtB,OAAO,EAOL,MAAM,EACN,YAAY,EACb,MAAM,gBAAgB,CAAA;AAEvB,eAAO,MAAM,eAAe,4BAA4B,CAAA;AAIxD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,YAAY,EAAE,CAAA;IACrB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,sBAAsB,GAAI,SAAS,gBAAgB,EAAE,KAAG,gBAiBpE,CAAA;AAED,qBAAa,UAAW,SAAQ,OAAO;IACrC,UAAU,4BAAkC;IAC5C,eAAe,4BAAkC;IACjD,WAAW,8BAAoC;IAC/C,WAAW,8BAAoC;IAC/C,cAAc,8BAAoC;IAClD,YAAY,8BAAoC;IAChD,OAAO,oEAA0E;IACjF,SAAS,wBAA8B;IACvC,OAAO,sBAA4B;IACnC,QAAQ,4BAAkC;;IAU1C,IAAI,uBAEH;IAED,KAAK,aAYJ;IAED,IAAI,GAAI,QAAQ,YAAY,EAAE,UA0B7B;IAID,QAAQ,GAAI,aAAa,MAAM,8BAI9B;IAED,QAAQ,GAAI,OAAO,YAAY,yBAI9B;IAED,WAAW,GAAI,aAAa,MAAM,UAwCjC;IAED,KAAK,GACH,SAAS,MAAM,EAAE,EACjB;;;;KAAwE,oBAoCzE;IAED,OAAO,GAAI,OAAO,YAAY,EAAE;;KAA0B,KAAG,OAAO,CAmFnE;IAID,aAAa,GAAI,OAAO,YAAY,aACkC;IAItE,kBAAkB,GAAI,OAAO,YAAY,aAItC;IAEH,SAAS,GAAI,OAAO,YAAY,aAAgE;IAEhG,SAAS,GAAI,OAAO,YAAY,aAI/B;IAID,WAAW,GAAI,YAAY,OAAO,EAAE,QAAQ,YAAY,EAAE,oBACZ;IAE9C,YAAY,GAAI,CAAC,EACf,GAAG,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EACzB,GAAG,CAAC,EACJ,MAAM,YAAY,EAClB,SAAS,YAAY,UAiBtB;IAED,UAAU,GAAI,KAAK,QAAQ,CAAC,MAAM,CAAC,oBAYlC;IAED,eAAe,GAAI,QAAQ,MAAM;;;kBAOhC;IAED,mBAAmB,GAAI,QAAQ,MAAM;;;kBASpC;IAED,gBAAgB,GAAI,QAAQ,MAAM;;;kBAkBjC;IAED,iBAAiB,GAAI,QAAQ,MAAM;;;kBASlC;IAED,gBAAgB,GAAI,QAAQ,MAAM;;;kBAUjC;IAED,eAAe,GAAI,QAAQ,MAAM;;;kBAkBhC;IAGD,aAAa,GAAI,UAAU,YAAY,EAAE,OAAO,YAAY,EAAE,cAAc,OAAO,UAoBlF;IAGD,QAAQ,GAAI,OAAO,YAAY,EAAE,SAAS,YAAY,UAUrD;IAID,OAAO,GAAI,OAAO,YAAY,EAAE,KAAK,MAAM,UAG1C;IAGD,SAAS,GAAI,IAAI,MAAM,oBAoBtB;IAGD,UAAU,GAAI,OAAO,YAAY,aAIiD;CACnF"}
@@ -1,4 +1,4 @@
1
- import { DAY, Emitter, flatten, pick, pushToMapKey, pluck, inc, uniq, omit, now, range, mapPop, spec, some, } from "@welshman/lib";
1
+ import { DAY, Emitter, equals, flatten, pick, pushToMapKey, pluck, inc, uniq, omit, now, range, mapPop, spec, some, } from "@welshman/lib";
2
2
  import { DELETE, EPOCH, matchFilter, isReplaceable, getAddress, sortEventsDesc, } from "@welshman/util";
3
3
  export const LOCAL_RELAY_URL = "local://welshman.relay/";
4
4
  const getDay = (ts) => Math.floor(ts / DAY);
@@ -25,6 +25,7 @@ export class Repository extends Emitter {
25
25
  eventsByAuthor = new Map();
26
26
  eventsByKind = new Map();
27
27
  deletes = new Map();
28
+ deletedBy = new Map();
28
29
  expired = new Map();
29
30
  replaced = new Map();
30
31
  constructor() {
@@ -43,6 +44,7 @@ export class Repository extends Emitter {
43
44
  this.eventsByAuthor.clear();
44
45
  this.eventsByKind.clear();
45
46
  this.deletes.clear();
47
+ this.deletedBy.clear();
46
48
  this.expired.clear();
47
49
  this.replaced.clear();
48
50
  this.emit("clear");
@@ -82,6 +84,7 @@ export class Repository extends Emitter {
82
84
  const event = this.getEvent(idOrAddress);
83
85
  if (event) {
84
86
  this.eventsById.delete(event.id);
87
+ this.expired.delete(event.id);
85
88
  // Only touch the address index (and restore what this event superseded) if this
86
89
  // event is still the current occupant — it may have already been replaced itself.
87
90
  const address = getAddress(event);
@@ -97,12 +100,15 @@ export class Repository extends Emitter {
97
100
  this._updateIndex(this.eventsByDay, getDay(event.created_at), undefined, event);
98
101
  this._updateIndex(this.eventsByAuthor, event.pubkey, undefined, event);
99
102
  this._updateIndex(this.eventsByKind, event.kind, undefined, event);
103
+ // Put back whatever this event superseded, unless it was itself removed in the meantime
100
104
  const replaced = mapPop(event.id, this.replaced);
101
- const added = [];
102
- if (isCurrent && replaced) {
103
- this._restore(event, replaced);
104
- added.push(replaced);
105
+ if (isCurrent && replaced && this.eventsById.get(replaced.id) === replaced) {
106
+ this.eventsByAddress.set(getAddress(replaced), replaced);
107
+ this._reindex(replaced);
105
108
  }
109
+ // Drop every delete this event asserted — its own tags, and the implicit delete of
110
+ // anything it replaced — and report whatever that uncovers
111
+ const added = this._undelete(event.id);
106
112
  this.emit("update", { added, removed: new Set([event.id]) });
107
113
  }
108
114
  };
@@ -140,9 +146,14 @@ export class Repository extends Emitter {
140
146
  console.warn("Attempted to publish invalid event to repository", event);
141
147
  return false;
142
148
  }
143
- // If we've already seen this event we're done
144
- if (this.eventsById.get(event.id)) {
145
- return false;
149
+ const existing = this.eventsById.get(event.id);
150
+ // An event we hold can come back changed, most often an unsigned one carrying its signature
151
+ if (existing) {
152
+ if (equals(existing, event)) {
153
+ return false;
154
+ }
155
+ this._replaceEvent(existing, event, shouldNotify);
156
+ return true;
146
157
  }
147
158
  const removed = new Set();
148
159
  const address = getAddress(event);
@@ -153,7 +164,7 @@ export class Repository extends Emitter {
153
164
  return false;
154
165
  }
155
166
  // If our event is newer than what it's replacing, delete the old version
156
- pushToMapKey(this.deletes, duplicate.id, pick(["pubkey", "created_at"], event));
167
+ this._delete(event, duplicate.id);
157
168
  // Notify listeners that it's been removed
158
169
  removed.add(duplicate.id);
159
170
  // Remember what this event replaced so it can be restored if this event is later removed
@@ -173,7 +184,7 @@ export class Repository extends Emitter {
173
184
  // If this is a delete event, the tag value is an id or address. Track when it was
174
185
  // deleted so that replaceables can be restored.
175
186
  if (event.kind === DELETE && ["a", "e"].includes(tag[0]) && tag[1]) {
176
- pushToMapKey(this.deletes, tag[1], pick(["pubkey", "created_at"], event));
187
+ this._delete(event, tag[1]);
177
188
  const deletedEvent = this.getEvent(tag[1]);
178
189
  if (deletedEvent && this.isDeleted(deletedEvent)) {
179
190
  removed.add(deletedEvent.id);
@@ -299,6 +310,23 @@ export class Repository extends Emitter {
299
310
  }
300
311
  return undefined;
301
312
  };
313
+ // Swap `event` in where `existing` sat; removing and re-adding it blinks it out of derived stores
314
+ _replaceEvent = (existing, event, shouldNotify) => {
315
+ const address = getAddress(event);
316
+ const isCurrent = this.eventsByAddress.get(address) === existing;
317
+ // A superseded replaceable was evicted from the secondary indexes and must stay out.
318
+ const isIndexed = isCurrent || !isReplaceable(existing);
319
+ this.eventsById.set(event.id, event);
320
+ if (isCurrent) {
321
+ this.eventsByAddress.set(address, event);
322
+ }
323
+ if (isIndexed) {
324
+ this._reindex(event, existing);
325
+ }
326
+ if (shouldNotify && !this.isDeleted(event)) {
327
+ this.emit("update", { added: [event], removed: new Set() });
328
+ }
329
+ };
302
330
  // Insert `event` into the day/author/kind/tag indexes, optionally evicting `remove` from them
303
331
  _reindex = (event, remove) => {
304
332
  this._updateIndex(this.eventsByDay, getDay(event.created_at), event, remove);
@@ -310,17 +338,35 @@ export class Repository extends Emitter {
310
338
  }
311
339
  }
312
340
  };
313
- _restore = ({ pubkey, created_at }, replaced) => {
314
- const records = this.deletes.get(replaced.id);
315
- if (records) {
316
- const i = records.findIndex(spec({ pubkey, created_at }));
317
- if (i >= 0)
318
- records.splice(i, 1);
319
- if (records.length === 0)
320
- this.deletes.delete(replaced.id);
341
+ // Record that `event` deletes `key` (an id or address), keeping the reverse index that
342
+ // lets the assertion be withdrawn if `event` is later removed
343
+ _delete = (event, key) => {
344
+ pushToMapKey(this.deletes, key, pick(["id", "pubkey", "created_at"], event));
345
+ pushToMapKey(this.deletedBy, event.id, key);
346
+ };
347
+ // Withdraw every delete asserted by `id`, returning the events that became visible again
348
+ _undelete = (id) => {
349
+ const added = [];
350
+ for (const key of mapPop(id, this.deletedBy) || []) {
351
+ const target = this.getEvent(key);
352
+ const wasVisible = Boolean(target && this._isVisible(target));
353
+ const records = (this.deletes.get(key) || []).filter(record => record.id !== id);
354
+ if (records.length > 0) {
355
+ this.deletes.set(key, records);
356
+ }
357
+ else {
358
+ this.deletes.delete(key);
359
+ }
360
+ if (target && !wasVisible && this._isVisible(target)) {
361
+ added.push(target);
362
+ }
321
363
  }
322
- this.eventsByAddress.set(getAddress(replaced), replaced);
323
- this._reindex(replaced);
364
+ return added;
324
365
  };
366
+ // An event is visible if it's still indexed, still the current version, and not hidden
367
+ _isVisible = (event) => this.eventsById.get(event.id) === event &&
368
+ !this.isDeleted(event) &&
369
+ !this.isExpired(event) &&
370
+ (!isReplaceable(event) || this.eventsByAddress.get(getAddress(event)) === event);
325
371
  }
326
372
  //# sourceMappingURL=repository.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../../../net/src/repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../../../net/src/repository.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,11 @@
1
1
  import { Filter, TrustedEvent } from "@welshman/util";
2
2
  import { AdapterContext } from "./adapter.js";
3
3
  import { Tracker } from "./tracker.js";
4
+ export declare const AUTO_CLOSE_TIMEOUT = 30000;
4
5
  export type IsEventValid = (event: TrustedEvent, url: string) => boolean;
5
6
  export type BaseRequestOptions = {
6
7
  signal?: AbortSignal;
8
+ priority?: number;
7
9
  tracker?: Tracker;
8
10
  context?: AdapterContext;
9
11
  autoClose?: boolean;
@@ -55,5 +57,6 @@ export type Loader = (options: LoadOptions) => Promise<TrustedEvent[]>;
55
57
  * @returns - a load function
56
58
  */
57
59
  export declare const makeLoader: (options: LoaderOptions) => Loader;
58
- export declare const load: Loader;
60
+ export declare const loadComplete: Loader;
61
+ export declare const loadLenient: Loader;
59
62
  //# sourceMappingURL=request.d.ts.map
@@ -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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"}
@@ -1,10 +1,11 @@
1
1
  import { on, ms, now, sleep, uniq, flatten, addToMapKey, defer, call, randomId, pushToMapKey, batcher, } from "@welshman/lib";
2
2
  import { unionFilters, matchFilters, verifyEvent, deduplicateEvents, getFilterResultCardinality, } from "@welshman/util";
3
- import { ClientMessageType, isRelayEvent, isRelayEose, isRelayClosed, isTerminalReason, } from "./message.js";
3
+ import { ClientMessageType, setPriority, isRelayEvent, isRelayEose, isRelayClosed, isTerminalReason, } from "./message.js";
4
4
  import { getAdapter, AdapterEvent } from "./adapter.js";
5
5
  import { SocketEvent, SocketStatus } from "./socket.js";
6
6
  import { Tracker } from "./tracker.js";
7
7
  import { catchUpFilter } from "./util.js";
8
+ export const AUTO_CLOSE_TIMEOUT = 30_000;
8
9
  export const requestOne = (options) => {
9
10
  // An already-aborted signal never fires its listener, so bail before building
10
11
  // an adapter — that would pull a socket out of the pool for a request no one
@@ -33,7 +34,8 @@ export const requestOne = (options) => {
33
34
  let timeoutId;
34
35
  const closeId = (id) => {
35
36
  if (open.delete(id)) {
36
- adapter.send([ClientMessageType.Close, id]);
37
+ // Match the req's priority so the close can't be sent ahead of it
38
+ adapter.send(setPriority([ClientMessageType.Close, id], options.priority));
37
39
  }
38
40
  };
39
41
  // A relay that drops a long-lived subscription for a reason that might not hold next time — a
@@ -55,7 +57,7 @@ export const requestOne = (options) => {
55
57
  if (!closed) {
56
58
  open.add(id);
57
59
  pending.add(id);
58
- adapter.send([ClientMessageType.Req, id, catchUpFilter(filtersById.get(id), retry.since)]);
60
+ adapter.send(setPriority([ClientMessageType.Req, id, catchUpFilter(filtersById.get(id), retry.since)], options.priority));
59
61
  }
60
62
  });
61
63
  };
@@ -151,10 +153,11 @@ export const requestOne = (options) => {
151
153
  signal.addEventListener("abort", close);
152
154
  unsubscribers.push(() => signal.removeEventListener("abort", close));
153
155
  }
154
- // If we're auto-closing, make sure it happens even if the relay doesn't send an eose
155
- // and the caller doesn't provide a signal, in order to avoid memory leaks
156
- if (options.autoClose && !options.signal) {
157
- timeoutId = setTimeout(close, 30_000);
156
+ // If we're auto-closing, make sure it happens even if the relay never sends an eose, in order
157
+ // to avoid memory leaks. A caller's signal is a reason to close earlier than that, not a
158
+ // reason to go without a ceiling.
159
+ if (options.autoClose) {
160
+ timeoutId = setTimeout(close, AUTO_CLOSE_TIMEOUT);
158
161
  }
159
162
  for (const filter of options.filters) {
160
163
  const id = `REQ-${randomId().slice(0, 8)}`;
@@ -162,7 +165,7 @@ export const requestOne = (options) => {
162
165
  open.add(id);
163
166
  pending.add(id);
164
167
  filtersById.set(id, filter);
165
- adapter.send([ClientMessageType.Req, id, filter]);
168
+ adapter.send(setPriority([ClientMessageType.Req, id, filter], options.priority));
166
169
  }
167
170
  return deferred;
168
171
  };
@@ -293,5 +296,8 @@ export const makeLoader = (options) => batcher(options.delay, (allRequests) => {
293
296
  });
294
297
  return allRequests.map(r => resultsByRequest.get(r) || []);
295
298
  });
296
- export const load = makeLoader({ delay: 30, timeout: 3000, threshold: 0.5 });
299
+ // Resolves once every relay has closed or timed out.
300
+ export const loadComplete = makeLoader({ delay: 30, timeout: 3000 });
301
+ // Resolves as soon as half the relays have closed, leaving the rest open.
302
+ export const loadLenient = makeLoader({ delay: 30, timeout: 3000, threshold: 0.5 });
297
303
  //# sourceMappingURL=request.js.map