@welshman/store 0.12.5 → 0.12.6

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.
@@ -1,6 +1,7 @@
1
1
  import type { SignedEvent, Filter } from "@welshman/util";
2
2
  export declare enum RelayMessageType {
3
3
  Notice = "NOTICE",
4
+ Notify = "NOTIFY",
4
5
  Auth = "AUTH",
5
6
  Closed = "CLOSED",
6
7
  Count = "COUNT",
@@ -12,6 +13,7 @@ export declare enum RelayMessageType {
12
13
  }
13
14
  export type RelayMessage = any[];
14
15
  export type RelayNoticePayload = [string];
16
+ export type RelayNotifyPayload = [string];
15
17
  export type RelayAuthPayload = [string];
16
18
  export type RelayClosedPayload = [string, string];
17
19
  export type RelayCountPayload = [string, {
@@ -24,6 +26,7 @@ export type RelayNegErrPayload = [string, string];
24
26
  export type RelayNegMsgPayload = [string, string];
25
27
  export type RelayOkPayload = [string, boolean, string];
26
28
  export type RelayNotice = [RelayMessageType.Notice, ...RelayNoticePayload];
29
+ export type RelayNotify = [RelayMessageType.Notify, ...RelayNotifyPayload];
27
30
  export type RelayAuth = [RelayMessageType.Auth, ...RelayAuthPayload];
28
31
  export type RelayClosed = [RelayMessageType.Closed, ...RelayClosedPayload];
29
32
  export type RelayCount = [RelayMessageType.Count, ...RelayCountPayload];
@@ -33,6 +36,7 @@ export type RelayNegErr = [RelayMessageType.NegErr, ...RelayNegErrPayload];
33
36
  export type RelayNegMsg = [RelayMessageType.NegMsg, ...RelayNegMsgPayload];
34
37
  export type RelayOk = [RelayMessageType.Ok, ...RelayOkPayload];
35
38
  export declare const isRelayNotice: (m: RelayMessage) => m is RelayNotice;
39
+ export declare const isRelayNotify: (m: RelayMessage) => m is RelayNotify;
36
40
  export declare const isRelayAuth: (m: RelayMessage) => m is RelayAuth;
37
41
  export declare const isRelayClosed: (m: RelayMessage) => m is RelayClosed;
38
42
  export declare const isRelayCount: (m: RelayMessage) => m is RelayCount;
@@ -1 +1 @@
1
- {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../../net/src/message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../../../net/src/message.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  export var RelayMessageType;
3
3
  (function (RelayMessageType) {
4
4
  RelayMessageType["Notice"] = "NOTICE";
5
+ RelayMessageType["Notify"] = "NOTIFY";
5
6
  RelayMessageType["Auth"] = "AUTH";
6
7
  RelayMessageType["Closed"] = "CLOSED";
7
8
  RelayMessageType["Count"] = "COUNT";
@@ -12,6 +13,7 @@ export var RelayMessageType;
12
13
  RelayMessageType["Ok"] = "OK";
13
14
  })(RelayMessageType || (RelayMessageType = {}));
14
15
  export const isRelayNotice = (m) => m[0] === RelayMessageType.Notice;
16
+ export const isRelayNotify = (m) => m[0] === RelayMessageType.Notify;
15
17
  export const isRelayAuth = (m) => m[0] === RelayMessageType.Auth;
16
18
  export const isRelayClosed = (m) => m[0] === RelayMessageType.Closed;
17
19
  export const isRelayCount = (m) => m[0] === RelayMessageType.Count;
@@ -1 +1 @@
1
- {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../net/src/message.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../net/src/message.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,11 @@
1
1
  import { Emitter } from "@welshman/lib";
2
2
  import { Filter, TrustedEvent } from "@welshman/util";
3
3
  export declare const LOCAL_RELAY_URL = "local://welshman.relay/";
4
+ export type QueryOptions = {
5
+ includeDeleted: boolean;
6
+ includeExpired: boolean;
7
+ shouldSort: boolean;
8
+ };
4
9
  export type RepositoryUpdate = {
5
10
  added: TrustedEvent[];
6
11
  removed: Set<string>;
@@ -38,6 +43,10 @@ export declare class Repository extends Emitter {
38
43
  isExpired: (event: TrustedEvent) => boolean;
39
44
  _sortEvents: (shouldSort: boolean, events: TrustedEvent[]) => TrustedEvent[];
40
45
  _updateIndex: <K>(m: Map<K, TrustedEvent[]>, k: K, add?: TrustedEvent, remove?: TrustedEvent) => void;
46
+ _queryOne: (filter: Filter, options: QueryOptions) => TrustedEvent[];
47
+ _queryDays: (filter: Filter, options: QueryOptions) => TrustedEvent[];
48
+ _queryIndex: (originalFilter: Filter, options: QueryOptions) => TrustedEvent[];
49
+ _isIncluded: (event: TrustedEvent, { includeDeleted, includeExpired }: QueryOptions) => boolean;
41
50
  _getEvents: (ids: Iterable<string>) => TrustedEvent[];
42
51
  _applyIdsFilter: (filter: Filter) => {
43
52
  filter: Filter;
@@ -1 +1 @@
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,UAY7B;IAID,QAAQ,GAAI,aAAa,MAAM,8BAI9B;IAED,QAAQ,GAAI,OAAO,YAAY,aAI9B;IAED,WAAW,GAAI,aAAa,MAAM,UAwCjC;IAED,KAAK,GACH,SAAS,MAAM,EAAE,EACjB;;;;KAAwE,oBAoCzE;IAED,OAAO,GAAI,OAAO,YAAY,EAAE;;KAA0B,KAAG,OAAO,CAQnE;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,KAAG,gBAAgB,GAAG,SAAS,CA8E7D;IAGD,YAAY,GAAI,SAAS,gBAAgB,EAAE,UAa1C;IAGD,aAAa,GAAI,UAAU,YAAY,EAAE,OAAO,YAAY,UAgB3D;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
+ {"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,YAAY,GAAG;IACzB,cAAc,EAAE,OAAO,CAAA;IACvB,cAAc,EAAE,OAAO,CAAA;IACvB,UAAU,EAAE,OAAO,CAAA;CACpB,CAAA;AAED,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,UAY7B;IAID,QAAQ,GAAI,aAAa,MAAM,8BAI9B;IAED,QAAQ,GAAI,OAAO,YAAY,aAI9B;IAED,WAAW,GAAI,aAAa,MAAM,UAwCjC;IAED,KAAK,GACH,SAAS,MAAM,EAAE,EACjB;;;;KAAwE,oBASzE;IAED,OAAO,GAAI,OAAO,YAAY,EAAE;;KAA0B,KAAG,OAAO,CAQnE;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;IAGD,SAAS,GAAI,QAAQ,MAAM,EAAE,SAAS,YAAY,oBAGX;IAGvC,UAAU,GAAI,QAAQ,MAAM,EAAE,SAAS,YAAY,oBAmBlD;IAED,WAAW,GAAI,gBAAgB,MAAM,EAAE,SAAS,YAAY,oBAmB3D;IAED,WAAW,GAAI,OAAO,YAAY,EAAE,oCAAkC,YAAY,aACQ;IAE1F,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,KAAG,gBAAgB,GAAG,SAAS,CA8E7D;IAGD,YAAY,GAAI,SAAS,gBAAgB,EAAE,UAa1C;IAGD,aAAa,GAAI,UAAU,YAAY,EAAE,OAAO,YAAY,UAgB3D;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"}
@@ -102,30 +102,8 @@ export class Repository extends Emitter {
102
102
  }
103
103
  };
104
104
  query = (filters, { includeDeleted = false, includeExpired = false, shouldSort = true } = {}) => {
105
- const result = [];
106
- for (const originalFilter of filters) {
107
- // Attempt to fulfill the query using one of our indexes. Fall back to all events.
108
- const applied = this._applyAnyFilter(originalFilter);
109
- const filter = applied?.filter || originalFilter;
110
- const events = applied ? this._getEvents(applied.ids) : this.dump();
111
- const sorted = this._sortEvents(shouldSort || Boolean(filter.limit), events);
112
- const chunk = [];
113
- for (const event of sorted) {
114
- if (filter.limit && chunk.length >= filter.limit) {
115
- break;
116
- }
117
- if (!includeDeleted && this.isDeleted(event)) {
118
- continue;
119
- }
120
- if (!includeExpired && this.isExpired(event)) {
121
- continue;
122
- }
123
- if (matchFilter(filter, event)) {
124
- chunk.push(event);
125
- }
126
- }
127
- result.push(chunk);
128
- }
105
+ const options = { includeDeleted, includeExpired, shouldSort };
106
+ const result = filters.map(filter => this._queryOne(filter, options));
129
107
  // Only re-sort if we had multiple filters, or if our single filter wasn't sorted
130
108
  const shouldSortAll = shouldSort && (filters.length > 1 || !filters[0]?.limit);
131
109
  return this._sortEvents(shouldSortAll, uniq(flatten(result)));
@@ -165,6 +143,46 @@ export class Repository extends Emitter {
165
143
  m.delete(k);
166
144
  }
167
145
  };
146
+ // A page with a ceiling comes from the day index, which bounds the work to the window
147
+ _queryOne = (filter, options) => filter.limit && filter.until
148
+ ? this._queryDays(filter, options)
149
+ : this._queryIndex(filter, options);
150
+ // Every event in a day bucket is newer than every event below it, so a full page ends the walk
151
+ _queryDays = (filter, options) => {
152
+ const limit = filter.limit || Infinity;
153
+ const sinceDay = getDay(filter.since || EPOCH);
154
+ const untilDay = getDay(filter.until || now());
155
+ const found = [];
156
+ for (let day = untilDay; day >= sinceDay && found.length < limit; day--) {
157
+ for (const event of sortEventsDesc(this.eventsByDay.get(day) || [])) {
158
+ if (found.length >= limit) {
159
+ break;
160
+ }
161
+ if (this._isIncluded(event, options) && matchFilter(filter, event)) {
162
+ found.push(event);
163
+ }
164
+ }
165
+ }
166
+ return found;
167
+ };
168
+ _queryIndex = (originalFilter, options) => {
169
+ // Attempt to fulfill the query using one of our indexes. Fall back to all events.
170
+ const applied = this._applyAnyFilter(originalFilter);
171
+ const filter = applied?.filter || originalFilter;
172
+ const events = applied ? this._getEvents(applied.ids) : this.dump();
173
+ const sorted = this._sortEvents(options.shouldSort || Boolean(filter.limit), events);
174
+ const found = [];
175
+ for (const event of sorted) {
176
+ if (filter.limit && found.length >= filter.limit) {
177
+ break;
178
+ }
179
+ if (this._isIncluded(event, options) && matchFilter(filter, event)) {
180
+ found.push(event);
181
+ }
182
+ }
183
+ return found;
184
+ };
185
+ _isIncluded = (event, { includeDeleted, includeExpired }) => (includeDeleted || !this.isDeleted(event)) && (includeExpired || !this.isExpired(event));
168
186
  _getEvents = (ids) => {
169
187
  const events = [];
170
188
  for (const id of ids) {
@@ -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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"}
@@ -8,7 +8,8 @@ export declare const WRAP_DRIFT: number;
8
8
  * Rewrites a filter so re-sending it picks up where the subscription left off rather than
9
9
  * repeating itself. A filter asking for gift wraps reaches further back, since a wrap
10
10
  * published after the subscription dropped carries a timestamp from before it. Neither reaches
11
- * back past the filter's own `since`.
11
+ * back past the filter's own `since`. A limit sizes the subscription's first page, and `since`
12
+ * bounds the gap, so the catch-up drops it.
12
13
  * @param filter - the filter as originally sent
13
14
  * @param since - when the socket last heard from the relay
14
15
  * @returns a filter covering the gap
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../net/src/util.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAA;AAE1C,MAAM,MAAM,YAAY,GAAG,MAAM,IAAI,CAAA;AAErC;;GAEG;AACH,eAAO,MAAM,UAAU,QAAU,CAAA;AAEjC;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,EAAE,OAAO,MAAM,KAAG,MAS7D,CAAA"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../net/src/util.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAA;AAE1C,MAAM,MAAM,YAAY,GAAG,MAAM,IAAI,CAAA;AAErC;;GAEG;AACH,eAAO,MAAM,UAAU,QAAU,CAAA;AAEjC;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,EAAE,OAAO,MAAM,KAAG,MAQ7D,CAAA"}
@@ -8,7 +8,8 @@ export const WRAP_DRIFT = 2 * DAY;
8
8
  * Rewrites a filter so re-sending it picks up where the subscription left off rather than
9
9
  * repeating itself. A filter asking for gift wraps reaches further back, since a wrap
10
10
  * published after the subscription dropped carries a timestamp from before it. Neither reaches
11
- * back past the filter's own `since`.
11
+ * back past the filter's own `since`. A limit sizes the subscription's first page, and `since`
12
+ * bounds the gap, so the catch-up drops it.
12
13
  * @param filter - the filter as originally sent
13
14
  * @param since - when the socket last heard from the relay
14
15
  * @returns a filter covering the gap
@@ -16,9 +17,9 @@ export const WRAP_DRIFT = 2 * DAY;
16
17
  export const catchUpFilter = (filter, since) => {
17
18
  // Only a filter that names wraps is widened: one without kinds would fetch days of everything
18
19
  const drift = filter.kinds?.includes(WRAP) ? WRAP_DRIFT : 0;
19
- if (filter.limit === 0) {
20
- filter = omit(["limit"], filter);
21
- }
22
- return { ...filter, since: Math.max(filter.since || 0, since - drift) };
20
+ return {
21
+ ...omit(["limit"], filter),
22
+ since: Math.max(filter.since || 0, since - drift),
23
+ };
23
24
  };
24
25
  //# sourceMappingURL=util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../net/src/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAC,MAAM,eAAe,CAAA;AACvC,OAAO,EAAC,IAAI,EAAC,MAAM,gBAAgB,CAAA;AAKnC;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAG,GAAG,CAAA;AAEjC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,KAAa,EAAU,EAAE;IACrE,8FAA8F;IAC9F,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;IAE3D,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAA;IAClC,CAAC;IAED,OAAO,EAAC,GAAG,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,EAAC,CAAA;AACvE,CAAC,CAAA"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../net/src/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAC,MAAM,eAAe,CAAA;AACvC,OAAO,EAAC,IAAI,EAAC,MAAM,gBAAgB,CAAA;AAKnC;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAG,GAAG,CAAA;AAEjC;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAc,EAAE,KAAa,EAAU,EAAE;IACrE,8FAA8F;IAC9F,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;IAE3D,OAAO;QACL,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAC1B,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;KAClD,CAAA;AACH,CAAC,CAAA"}
@@ -24,5 +24,23 @@ export declare const throttled: <T, S extends Readable<T>>(delay: number, store:
24
24
  export declare const deriveDeduplicated: <S extends Stores, T>(stores: S, get: (storeValues: StoresValues<S>) => T) => Readable<T>;
25
25
  export declare const deriveDeduplicatedByValue: <S extends Stores, T>(stores: S, get: (storeValues: StoresValues<S>) => T) => Readable<T>;
26
26
  export declare const merged: <S extends Stores>(stores: S) => Readable<S extends Readable<infer U> ? U : { [K in keyof S]: S[K] extends Readable<infer U_1> ? U_1 : never; }>;
27
+ /**
28
+ * Utility type which allows for using the same value both for hot gets and derived
29
+ * subscriptions. It is a store itself, so `derived(someProjection, ...)` works as well
30
+ * as `derived(someProjection.$, ...)`.
31
+ */
32
+ export type Projection<T> = ReadableWithGetter<T> & {
33
+ $: Readable<T>;
34
+ };
35
+ /**
36
+ * Build a `Projection` from a readable store and an optional `read` function, which falls
37
+ * back to `get($)`. On hot paths, the store value is cached, and read is skipped.
38
+ */
39
+ export declare const projection: <T>($: Readable<T>, read?: () => T) => Projection<T>;
40
+ /**
41
+ * Build a `Projection` derived from another `Projection`: re-read `src`
42
+ * reactively via `.$` or synchronously via `.get()`.
43
+ */
44
+ export declare const projectFrom: <S, U>(src: Projection<S>, read: ($: S) => U) => Projection<U>;
27
45
  export {};
28
46
  //# sourceMappingURL=misc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../../../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;AAGhE,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,KACL,CAAC,GAAG;IAAC,GAAG,EAAE,MAAM,YAAY,CAAC,CAAC,CAAC,CAAA;CAAC,CAAA;AAEvF,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":["../../../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;AAGhE,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,KACL,CAAC,GAAG;IAAC,GAAG,EAAE,MAAM,YAAY,CAAC,CAAC,CAAC,CAAA;CAAC,CAAA;AAEvF,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;AAEhF;;;;GAIG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,GAAG;IAClD,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;CACf,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,MAAM,CAAC,KAAG,UAAU,CAAC,CAAC,CAIzE,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,EAAE,CAAC,EAAE,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAG,UAAU,CAAC,CAAC,CAC7B,CAAA"}
@@ -71,4 +71,18 @@ export const deriveDeduplicatedByValue = (stores, get) => {
71
71
  });
72
72
  };
73
73
  export const merged = (stores) => derived(stores, identity);
74
+ /**
75
+ * Build a `Projection` from a readable store and an optional `read` function, which falls
76
+ * back to `get($)`. On hot paths, the store value is cached, and read is skipped.
77
+ */
78
+ export const projection = ($, read) => ({
79
+ $,
80
+ subscribe: $.subscribe,
81
+ get: getter($, { read }),
82
+ });
83
+ /**
84
+ * Build a `Projection` derived from another `Projection`: re-read `src`
85
+ * reactively via `.$` or synchronously via `.get()`.
86
+ */
87
+ export const projectFrom = (src, read) => projection(derived(src.$, read), () => read(src.get()));
74
88
  //# sourceMappingURL=misc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../src/misc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../src/misc.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { Readable } from "svelte/store";
2
2
  import { Maybe, MaybeAsync } from "@welshman/lib";
3
3
  import { Filter, TrustedEvent } from "@welshman/util";
4
4
  import { Repository, Tracker } from "@welshman/net";
5
+ import type { Projection } from "./misc.js";
5
6
  export type EventsById = Map<string, TrustedEvent>;
6
7
  export type EventsByIdOptions = {
7
8
  filters: Filter[];
@@ -9,32 +10,43 @@ export type EventsByIdOptions = {
9
10
  includeDeleted?: boolean;
10
11
  };
11
12
  export declare const getEventsById: ({ filters, repository, includeDeleted }: EventsByIdOptions) => Map<string, TrustedEvent>;
12
- export declare const deriveEventsById: ({ filters, repository, includeDeleted }: EventsByIdOptions) => Readable<EventsById>;
13
- export declare const deriveArray: <T>(itemsByIdStore: Readable<Map<string, T>>) => Readable<T[]>;
14
- export declare const deriveEventsAsc: (eventsByIdStore: Readable<EventsById>) => Readable<TrustedEvent[]>;
15
- export declare const deriveEventsDesc: (eventsByIdStore: Readable<EventsById>) => Readable<TrustedEvent[]>;
16
- export declare const deriveEvents: (options: EventsByIdOptions) => Readable<TrustedEvent[]>;
13
+ export declare const deriveEventsById: (options: EventsByIdOptions) => Projection<EventsById>;
14
+ export declare const deriveArray: <T>(itemsById: Projection<Map<string, T>>) => Projection<T[]>;
15
+ export declare const deriveEventsAsc: (eventsById: Projection<EventsById>) => Projection<TrustedEvent[]>;
16
+ export declare const deriveEventsDesc: (eventsById: Projection<EventsById>) => Projection<TrustedEvent[]>;
17
+ export declare const deriveEvents: (options: EventsByIdOptions) => Projection<TrustedEvent[]>;
17
18
  export type EventOptions = {
18
19
  repository: Repository;
19
20
  includeDeleted?: boolean;
20
21
  onDerive?: (filters: Filter[], ...args: any[]) => void;
21
22
  };
22
- export declare const makeDeriveEvent: ({ repository, includeDeleted, onDerive }: EventOptions) => (idOrAddress: string, ...args: any[]) => Readable<Maybe<TrustedEvent>>;
23
+ export declare const makeDeriveEvent: ({ repository, includeDeleted, onDerive }: EventOptions) => (idOrAddress: string, ...args: any[]) => Projection<Maybe<TrustedEvent>>;
23
24
  export type EventsByIdByUrl = Map<string, EventsById>;
24
25
  export type EventsByIdByUrlOptions = EventsByIdOptions & {
25
26
  tracker: Tracker;
26
27
  };
27
28
  export declare const getEventsByIdByUrl: ({ filters, tracker, repository, includeDeleted, }: EventsByIdByUrlOptions) => EventsByIdByUrl;
28
- export declare const deriveEventsByIdByUrl: ({ filters, tracker, repository, includeDeleted, }: EventsByIdByUrlOptions) => Readable<EventsByIdByUrl>;
29
+ export declare const deriveEventsByIdByUrl: (options: EventsByIdByUrlOptions) => Projection<EventsByIdByUrl>;
29
30
  export type EventsByIdForUrlOptions = EventsByIdOptions & {
30
31
  url: string;
31
32
  tracker: Tracker;
32
33
  };
33
34
  export declare const getEventsByIdForUrl: ({ url, filters, tracker, repository, includeDeleted, }: EventsByIdForUrlOptions) => EventsById;
34
- export declare const deriveEventsByIdForUrl: ({ url, filters, tracker, repository, includeDeleted, }: EventsByIdForUrlOptions) => Readable<EventsById>;
35
+ export declare const deriveEventsByIdForUrl: (options: EventsByIdForUrlOptions) => Projection<EventsById>;
35
36
  export type ItemsByKey<T> = Map<string, T>;
36
37
  export type EventToItem<T> = (event: TrustedEvent) => MaybeAsync<Maybe<T>>;
37
- export type GetItem<T> = (key: string, ...args: any[]) => Maybe<T>;
38
+ export type GetItem<T> = (key: string, ...args: any[]) => MaybeAsync<Maybe<T>>;
39
+ /**
40
+ * A keyed collection of items built from events: a `Projection` over an index, plus a
41
+ * `read` that waits out the parses the index has outstanding.
42
+ *
43
+ * `eventToItem` returns a promise for any kind that decrypts, so the item an event
44
+ * builds is committed after the event was read rather than with it. `read` is how a
45
+ * caller gets an item the collection has seen the event for but not yet parsed.
46
+ */
47
+ export type ItemCollection<T> = Projection<ItemsByKey<T>> & {
48
+ read: (key: string) => MaybeAsync<Maybe<T>>;
49
+ };
38
50
  export type ItemsByKeyOptions<T> = {
39
51
  getKey: (item: T) => string;
40
52
  filters: Filter[];
@@ -42,7 +54,7 @@ export type ItemsByKeyOptions<T> = {
42
54
  eventToItem: EventToItem<T>;
43
55
  includeDeleted?: boolean;
44
56
  };
45
- export declare const deriveItemsByKey: <T>({ getKey, filters, repository, eventToItem, includeDeleted, }: ItemsByKeyOptions<T>) => Readable<Map<string, T>>;
57
+ export declare const deriveItemsByKey: <T>({ getKey, filters, repository, eventToItem, includeDeleted, }: ItemsByKeyOptions<T>) => ItemCollection<T>;
46
58
  export type ItemsByKeyByUrlOptions<T> = {
47
59
  getKey: (item: T, url: string) => string | undefined;
48
60
  filters: Filter[];
@@ -59,7 +71,7 @@ export type ItemsByKeyByUrlOptions<T> = {
59
71
  * relay roles — where the same addressable coordinate can exist independently
60
72
  * on multiple relays.
61
73
  */
62
- export declare const deriveItemsByKeyByUrl: <T>({ getKey, filters, repository, tracker, eventToItem, includeDeleted, revalidateOn, }: ItemsByKeyByUrlOptions<T>) => Readable<Map<string, T>>;
74
+ export declare const deriveItemsByKeyByUrl: <T>({ getKey, filters, repository, tracker, eventToItem, includeDeleted, revalidateOn, }: ItemsByKeyByUrlOptions<T>) => ItemCollection<T>;
63
75
  export declare const deriveItems: <T>(itemsByKeyStore: Readable<ItemsByKey<T>>) => Readable<T[]>;
64
76
  export declare const deriveItemsSorted: <T>(sortFn: (item: T) => number, itemsStore: Readable<T[]>) => Readable<T[]>;
65
77
  export declare const makeDeriveItem: <T>(itemsByKeyStore: Readable<ItemsByKey<T>>, onDerive?: (key: string, ...args: any[]) => unknown) => (key?: string, ...args: any[]) => Readable<T | undefined>;
@@ -73,5 +85,5 @@ export type MakeLoadItemOptions = {
73
85
  timeout?: number;
74
86
  };
75
87
  export declare const makeLoadItem: <T>(loadItem: LoadItem, getItem: GetItem<T>, options?: MakeLoadItemOptions) => (key: string, ...args: any[]) => Promise<Maybe<T>>;
76
- export declare const deriveIsDeleted: (repository: Repository, event: TrustedEvent) => Readable<boolean>;
88
+ export declare const deriveIsDeleted: (repository: Repository, event: TrustedEvent) => Projection<boolean>;
77
89
  //# sourceMappingURL=repository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../src/repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../src/repository.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { readable } from "svelte/store";
1
+ import { derived, readable } from "svelte/store";
2
2
  import { on, gt, now, noop, mapPop, LRUCache, call, sortBy, first, } from "@welshman/lib";
3
3
  import { matchFilters, getIdFilters, sortEventsAsc, sortEventsDesc, getIdOrAddress, } from "@welshman/util";
4
- import { deriveDeduplicated } from "./misc.js";
4
+ import { deriveDeduplicated, projection, projectFrom } from "./misc.js";
5
5
  export const getEventsById = ({ filters, repository, includeDeleted }) => {
6
6
  const eventsById = new Map();
7
7
  for (const event of repository.query(filters, { includeDeleted })) {
@@ -9,38 +9,42 @@ export const getEventsById = ({ filters, repository, includeDeleted }) => {
9
9
  }
10
10
  return eventsById;
11
11
  };
12
- export const deriveEventsById = ({ filters, repository, includeDeleted }) => readable(new Map(), set => {
13
- const eventsById = getEventsById({ filters, repository, includeDeleted });
14
- set(eventsById);
15
- return on(repository, "update", ({ added, removed }) => {
16
- let dirty = false;
17
- for (const event of added) {
18
- if (matchFilters(filters, event)) {
19
- dirty = true;
20
- eventsById.set(event.id, event);
21
- }
22
- }
23
- if (!includeDeleted) {
24
- for (const id of removed) {
25
- if (mapPop(id, eventsById)) {
12
+ export const deriveEventsById = (options) => {
13
+ const { filters, repository, includeDeleted } = options;
14
+ const store = readable(new Map(), set => {
15
+ const eventsById = getEventsById(options);
16
+ set(eventsById);
17
+ return on(repository, "update", ({ added, removed }) => {
18
+ let dirty = false;
19
+ for (const event of added) {
20
+ if (matchFilters(filters, event)) {
26
21
  dirty = true;
22
+ eventsById.set(event.id, event);
27
23
  }
28
24
  }
29
- }
30
- if (dirty) {
31
- set(eventsById);
32
- }
25
+ if (!includeDeleted) {
26
+ for (const id of removed) {
27
+ if (mapPop(id, eventsById)) {
28
+ dirty = true;
29
+ }
30
+ }
31
+ }
32
+ if (dirty) {
33
+ set(eventsById);
34
+ }
35
+ });
33
36
  });
34
- });
35
- export const deriveArray = (itemsByIdStore) => deriveDeduplicated(itemsByIdStore, itemsById => Array.from(itemsById.values()));
36
- export const deriveEventsAsc = (eventsByIdStore) => deriveDeduplicated(eventsByIdStore, eventsById => sortEventsAsc(eventsById.values()));
37
- export const deriveEventsDesc = (eventsByIdStore) => deriveDeduplicated(eventsByIdStore, eventsById => sortEventsDesc(eventsById.values()));
37
+ return projection(store, () => getEventsById(options));
38
+ };
39
+ export const deriveArray = (itemsById) => projectFrom(itemsById, $itemsById => Array.from($itemsById.values()));
40
+ export const deriveEventsAsc = (eventsById) => projectFrom(eventsById, $eventsById => sortEventsAsc($eventsById.values()));
41
+ export const deriveEventsDesc = (eventsById) => projectFrom(eventsById, $eventsById => sortEventsDesc($eventsById.values()));
38
42
  export const deriveEvents = (options) => deriveArray(deriveEventsById(options));
39
43
  export const makeDeriveEvent = ({ repository, includeDeleted = false, onDerive }) => {
40
44
  return (idOrAddress, ...args) => {
41
45
  const filters = getIdFilters([idOrAddress]);
42
46
  onDerive?.(filters, ...args);
43
- return readable(undefined, set => {
47
+ const store = readable(undefined, set => {
44
48
  let event = first(repository.query(filters, { includeDeleted }));
45
49
  set(event);
46
50
  return on(repository, "update", ({ added, removed }) => {
@@ -59,6 +63,7 @@ export const makeDeriveEvent = ({ repository, includeDeleted = false, onDerive }
59
63
  }
60
64
  });
61
65
  });
66
+ return projection(store, () => first(repository.query(filters, { includeDeleted })));
62
67
  };
63
68
  };
64
69
  export const getEventsByIdByUrl = ({ filters, tracker, repository, includeDeleted, }) => {
@@ -75,83 +80,87 @@ export const getEventsByIdByUrl = ({ filters, tracker, repository, includeDelete
75
80
  }
76
81
  return eventsByIdByUrl;
77
82
  };
78
- export const deriveEventsByIdByUrl = ({ filters, tracker, repository, includeDeleted, }) => readable(new Map(), set => {
79
- const eventsByIdByUrl = getEventsByIdByUrl({ filters, tracker, repository, includeDeleted });
80
- const addEvent = (url, event) => {
81
- if (!matchFilters(filters, event))
82
- return false;
83
- const eventsById = eventsByIdByUrl.get(url);
84
- // The repository swaps a changed copy of a held event in under the same id.
85
- if (eventsById?.get(event.id) === event)
86
- return false;
87
- // Create a new map so we can detect which key changed
88
- const newEventsById = new Map(eventsById);
89
- newEventsById.set(event.id, event);
90
- eventsByIdByUrl.set(url, newEventsById);
91
- return true;
92
- };
93
- const removeEvent = (url, id) => {
94
- const eventsById = eventsByIdByUrl.get(url);
95
- if (eventsById?.has(id)) {
96
- eventsById.delete(id);
97
- if (eventsById.size === 0) {
98
- eventsByIdByUrl.delete(url);
99
- }
100
- else {
101
- // Create a new map so we can detect which key changed
102
- eventsByIdByUrl.set(url, new Map(eventsById));
103
- }
83
+ export const deriveEventsByIdByUrl = (options) => {
84
+ const { filters, tracker, repository, includeDeleted } = options;
85
+ const store = readable(new Map(), set => {
86
+ const eventsByIdByUrl = getEventsByIdByUrl(options);
87
+ const addEvent = (url, event) => {
88
+ if (!matchFilters(filters, event))
89
+ return false;
90
+ const eventsById = eventsByIdByUrl.get(url);
91
+ // The repository swaps a changed copy of a held event in under the same id.
92
+ if (eventsById?.get(event.id) === event)
93
+ return false;
94
+ // Create a new map so we can detect which key changed
95
+ const newEventsById = new Map(eventsById);
96
+ newEventsById.set(event.id, event);
97
+ eventsByIdByUrl.set(url, newEventsById);
104
98
  return true;
105
- }
106
- return false;
107
- };
108
- set(eventsByIdByUrl);
109
- const unsubscribers = [
110
- on(repository, "update", ({ added, removed }) => {
111
- let dirty = false;
112
- for (const event of added) {
113
- for (const url of tracker.getRelays(event.id)) {
114
- dirty = dirty || addEvent(url, event);
99
+ };
100
+ const removeEvent = (url, id) => {
101
+ const eventsById = eventsByIdByUrl.get(url);
102
+ if (eventsById?.has(id)) {
103
+ eventsById.delete(id);
104
+ if (eventsById.size === 0) {
105
+ eventsByIdByUrl.delete(url);
106
+ }
107
+ else {
108
+ // Create a new map so we can detect which key changed
109
+ eventsByIdByUrl.set(url, new Map(eventsById));
115
110
  }
111
+ return true;
116
112
  }
117
- if (!includeDeleted) {
118
- for (const id of removed) {
119
- for (const url of tracker.getRelays(id)) {
120
- dirty = dirty || removeEvent(url, id);
113
+ return false;
114
+ };
115
+ set(eventsByIdByUrl);
116
+ const unsubscribers = [
117
+ on(repository, "update", ({ added, removed }) => {
118
+ let dirty = false;
119
+ for (const event of added) {
120
+ for (const url of tracker.getRelays(event.id)) {
121
+ dirty = dirty || addEvent(url, event);
122
+ }
123
+ }
124
+ if (!includeDeleted) {
125
+ for (const id of removed) {
126
+ for (const url of tracker.getRelays(id)) {
127
+ dirty = dirty || removeEvent(url, id);
128
+ }
129
+ }
130
+ }
131
+ if (dirty) {
132
+ set(eventsByIdByUrl);
133
+ }
134
+ }),
135
+ on(tracker, "add", (id, url) => {
136
+ const event = repository.getEvent(id);
137
+ if (event && addEvent(url, event)) {
138
+ set(eventsByIdByUrl);
139
+ }
140
+ }),
141
+ on(tracker, "remove", (id, url) => {
142
+ if (removeEvent(url, id)) {
143
+ set(eventsByIdByUrl);
144
+ }
145
+ }),
146
+ on(tracker, "load", () => {
147
+ eventsByIdByUrl.clear();
148
+ for (const event of repository.query(filters, { includeDeleted })) {
149
+ for (const url of tracker.getRelays(event.id)) {
150
+ addEvent(url, event);
121
151
  }
122
152
  }
123
- }
124
- if (dirty) {
125
- set(eventsByIdByUrl);
126
- }
127
- }),
128
- on(tracker, "add", (id, url) => {
129
- const event = repository.getEvent(id);
130
- if (event && addEvent(url, event)) {
131
153
  set(eventsByIdByUrl);
132
- }
133
- }),
134
- on(tracker, "remove", (id, url) => {
135
- if (removeEvent(url, id)) {
154
+ }),
155
+ on(tracker, "clear", () => {
156
+ eventsByIdByUrl.clear();
136
157
  set(eventsByIdByUrl);
137
- }
138
- }),
139
- on(tracker, "load", () => {
140
- eventsByIdByUrl.clear();
141
- for (const event of repository.query(filters, { includeDeleted })) {
142
- for (const url of tracker.getRelays(event.id)) {
143
- addEvent(url, event);
144
- }
145
- }
146
- set(eventsByIdByUrl);
147
- }),
148
- on(tracker, "clear", () => {
149
- eventsByIdByUrl.clear();
150
- set(eventsByIdByUrl);
151
- }),
152
- ];
153
- return () => unsubscribers.forEach(call);
154
- });
158
+ }),
159
+ ];
160
+ return () => unsubscribers.forEach(call);
161
+ });
162
+ return projection(store, () => getEventsByIdByUrl(options));
163
+ };
155
164
  export const getEventsByIdForUrl = ({ url, filters, tracker, repository, includeDeleted, }) => {
156
165
  const initialIds = Array.from(tracker.getIds(url));
157
166
  const initialFilters = filters.map(filter => ({ ids: initialIds, ...filter }));
@@ -161,11 +170,12 @@ export const getEventsByIdForUrl = ({ url, filters, tracker, repository, include
161
170
  }
162
171
  return eventsById;
163
172
  };
164
- export const deriveEventsByIdForUrl = ({ url, filters, tracker, repository, includeDeleted, }) => {
165
- let eventsById = getEventsByIdForUrl({ url, filters, tracker, repository, includeDeleted });
166
- return readable(eventsById, set => {
173
+ export const deriveEventsByIdForUrl = (options) => {
174
+ const { url, filters, tracker, repository, includeDeleted } = options;
175
+ let eventsById = getEventsByIdForUrl(options);
176
+ const store = readable(eventsById, set => {
167
177
  const reset = () => {
168
- eventsById = getEventsByIdForUrl({ url, filters, tracker, repository, includeDeleted });
178
+ eventsById = getEventsByIdForUrl(options);
169
179
  set(eventsById);
170
180
  };
171
181
  reset();
@@ -210,16 +220,23 @@ export const deriveEventsByIdForUrl = ({ url, filters, tracker, repository, incl
210
220
  ];
211
221
  return () => unsubscribers.forEach(call);
212
222
  });
223
+ return projection(store, () => getEventsByIdForUrl(options));
224
+ };
225
+ const asCollection = (store, pending) => {
226
+ const self = projection(store);
227
+ // Subscribing queues the parses, so a key the index lacks is read, drained, and read again
228
+ const read = (key) => self.get().get(key) ?? Promise.all(pending.values()).then(() => self.get().get(key));
229
+ return { ...self, read };
213
230
  };
231
+ const onParseError = (error) => console.warn("Failed to build an item from an event", error);
214
232
  export const deriveItemsByKey = ({ getKey, filters, repository, eventToItem, includeDeleted, }) => {
215
- const deferred = new Map();
233
+ const pending = new Map();
216
234
  const itemsByKey = new Map();
217
235
  const idsByKey = new Map();
218
236
  const keysById = new Map();
219
- return readable(itemsByKey, set => {
220
- const onError = (error) => console.warn("Failed to build an item from an event", error);
237
+ const store = readable(itemsByKey, set => {
221
238
  const addEvent = (event) => {
222
- if (deferred.has(event.id))
239
+ if (pending.has(event.id))
223
240
  return;
224
241
  if (keysById.has(event.id))
225
242
  return;
@@ -237,18 +254,16 @@ export const deriveItemsByKey = ({ getKey, filters, repository, eventToItem, inc
237
254
  // Commit synchronously when `eventToItem` doesn't need IO, so items are in
238
255
  // place before the initial subscription returns rather than a microtask later
239
256
  if (itemOrPromise instanceof Promise) {
240
- deferred.set(event.id, itemOrPromise);
241
- itemOrPromise
242
- .then(commit)
243
- .catch(onError)
244
- .finally(() => deferred.delete(event.id));
257
+ // Hold the committed promise, so awaiting it means the item is in the index
258
+ const forget = () => pending.delete(event.id);
259
+ pending.set(event.id, itemOrPromise.then(commit).catch(onParseError).finally(forget));
245
260
  }
246
261
  else {
247
262
  commit(itemOrPromise);
248
263
  }
249
264
  }
250
265
  catch (error) {
251
- onError(error);
266
+ onParseError(error);
252
267
  }
253
268
  };
254
269
  for (const event of repository.query(filters, { includeDeleted })) {
@@ -279,6 +294,7 @@ export const deriveItemsByKey = ({ getKey, filters, repository, eventToItem, inc
279
294
  }
280
295
  });
281
296
  });
297
+ return asCollection(store, pending);
282
298
  };
283
299
  /**
284
300
  * Like `deriveItemsByKey`, but relay-scoped: an event is keyed once per relay
@@ -288,14 +304,18 @@ export const deriveItemsByKey = ({ getKey, filters, repository, eventToItem, inc
288
304
  * on multiple relays.
289
305
  */
290
306
  export const deriveItemsByKeyByUrl = ({ getKey, filters, repository, tracker, eventToItem, includeDeleted, revalidateOn, }) => {
291
- const deferred = new Set();
307
+ const pending = new Map();
292
308
  const itemsByKey = new Map();
293
309
  // Which event currently owns each composite key, so a stale event's removal
294
310
  // doesn't clobber the entry a newer replaceable event has taken over.
295
311
  const ownerByKey = new Map();
296
312
  // The composite keys contributed by each event, per relay url, for teardown.
297
313
  const keysById = new Map();
298
- return readable(itemsByKey, set => {
314
+ // What each event parsed to, so a rebuild re-keys it without parsing it again.
315
+ const itemsById = new Map();
316
+ const store = readable(itemsByKey, set => {
317
+ // Held while a catch-up keys its events, so a rebuild emits once rather than per event
318
+ let holding = false;
299
319
  const setKey = (key, id, url, item) => {
300
320
  itemsByKey.set(key, item);
301
321
  ownerByKey.set(key, id);
@@ -316,45 +336,55 @@ export const deriveItemsByKeyByUrl = ({ getKey, filters, repository, tracker, ev
316
336
  }
317
337
  return false;
318
338
  };
319
- const onError = (error) => console.warn("Failed to build an item from an event", error);
320
339
  const addEvent = (event, urls) => {
321
- const pending = Array.from(urls).filter(url => keysById.get(event.id)?.get(url) === undefined);
322
- if (pending.length === 0)
323
- return;
324
- if (deferred.has(event.id))
325
- return;
340
+ const unkeyed = Array.from(urls).filter(url => keysById.get(event.id)?.get(url) === undefined);
341
+ if (unkeyed.length === 0)
342
+ return false;
343
+ if (pending.has(event.id))
344
+ return false;
326
345
  const commit = (item) => {
346
+ let keyed = false;
327
347
  if (item) {
328
- for (const url of pending) {
348
+ itemsById.set(event.id, item);
349
+ for (const url of unkeyed) {
329
350
  const key = getKey(item, url);
330
351
  if (key !== undefined) {
331
352
  setKey(key, event.id, url, item);
353
+ keyed = true;
332
354
  }
333
355
  }
334
- set(itemsByKey);
356
+ // An item no url keys leaves the index alone, so it owes no emission
357
+ if (keyed && !holding)
358
+ set(itemsByKey);
335
359
  }
360
+ return keyed;
336
361
  };
362
+ const parsed = itemsById.get(event.id);
363
+ // A rebuild clears the keys and keeps the items, so re-keying needs no parse
364
+ if (parsed)
365
+ return commit(parsed);
366
+ let changed = false;
337
367
  try {
338
368
  const itemOrPromise = eventToItem(event);
339
369
  // Commit synchronously when `eventToItem` doesn't need IO, so items are in
340
370
  // place before the initial subscription returns rather than a microtask later
341
371
  if (itemOrPromise instanceof Promise) {
342
- deferred.add(event.id);
343
- itemOrPromise
344
- .then(commit)
345
- .catch(onError)
346
- .finally(() => deferred.delete(event.id));
372
+ // Hold the committed promise, so awaiting it means the item is in the index
373
+ const forget = () => pending.delete(event.id);
374
+ pending.set(event.id, itemOrPromise.then(commit).catch(onParseError).finally(forget));
347
375
  }
348
376
  else {
349
- commit(itemOrPromise);
377
+ changed = commit(itemOrPromise);
350
378
  }
351
379
  }
352
380
  catch (error) {
353
- onError(error);
381
+ onParseError(error);
354
382
  }
383
+ return changed;
355
384
  };
356
385
  const removeEvent = (id) => {
357
386
  const byUrl = mapPop(id, keysById);
387
+ itemsById.delete(id);
358
388
  if (!byUrl)
359
389
  return false;
360
390
  let dirty = false;
@@ -374,16 +404,32 @@ export const deriveItemsByKeyByUrl = ({ getKey, filters, repository, tracker, ev
374
404
  }
375
405
  return dropKey(key, id);
376
406
  };
377
- const rebuild = () => {
407
+ const catchUp = (cleared = false) => {
408
+ const events = repository.query(filters, { includeDeleted });
409
+ const ids = new Set(events.map(event => event.id));
410
+ let dirty = cleared;
411
+ for (const id of Array.from(keysById.keys())) {
412
+ if (!ids.has(id)) {
413
+ dirty = removeEvent(id) || dirty;
414
+ }
415
+ }
416
+ holding = true;
417
+ for (const event of events) {
418
+ dirty = addEvent(event, tracker.getRelays(event.id)) || dirty;
419
+ }
420
+ holding = false;
421
+ if (dirty)
422
+ set(itemsByKey);
423
+ };
424
+ const clear = () => {
425
+ const dirty = itemsByKey.size > 0;
378
426
  itemsByKey.clear();
379
427
  ownerByKey.clear();
380
428
  keysById.clear();
381
- for (const event of repository.query(filters, { includeDeleted })) {
382
- addEvent(event, tracker.getRelays(event.id));
383
- }
384
- set(itemsByKey);
429
+ return dirty;
385
430
  };
386
- rebuild();
431
+ const rebuild = () => catchUp(clear());
432
+ catchUp();
387
433
  const unsubscribers = [
388
434
  on(repository, "update", ({ added, removed }) => {
389
435
  for (const event of added) {
@@ -413,10 +459,8 @@ export const deriveItemsByKeyByUrl = ({ getKey, filters, repository, tracker, ev
413
459
  }),
414
460
  on(tracker, "load", rebuild),
415
461
  on(tracker, "clear", () => {
416
- itemsByKey.clear();
417
- ownerByKey.clear();
418
- keysById.clear();
419
- set(itemsByKey);
462
+ if (clear())
463
+ set(itemsByKey);
420
464
  }),
421
465
  ];
422
466
  // Re-evaluate everything when external key state (e.g. relay self pubkeys)
@@ -435,9 +479,10 @@ export const deriveItemsByKeyByUrl = ({ getKey, filters, repository, tracker, ev
435
479
  }
436
480
  return () => unsubscribers.forEach(call);
437
481
  });
482
+ return asCollection(store, pending);
438
483
  };
439
- export const deriveItems = (itemsByKeyStore) => deriveDeduplicated(itemsByKeyStore, itemsByKey => Array.from(itemsByKey.values()));
440
- export const deriveItemsSorted = (sortFn, itemsStore) => deriveDeduplicated(itemsStore, items => sortBy(sortFn, items));
484
+ export const deriveItems = (itemsByKeyStore) => derived(itemsByKeyStore, itemsByKey => Array.from(itemsByKey.values()));
485
+ export const deriveItemsSorted = (sortFn, itemsStore) => derived(itemsStore, items => sortBy(sortFn, items));
441
486
  export const makeDeriveItem = (itemsByKeyStore, onDerive) => {
442
487
  return (key, ...args) => {
443
488
  if (!key)
@@ -464,7 +509,7 @@ export const makeLoadItem = (loadItem, getItem, options = {}) => {
464
509
  const attempts = new LRUCache(maxSize);
465
510
  const pending = new Map();
466
511
  return async (key, ...args) => {
467
- const stale = getItem(key);
512
+ const stale = await getItem(key);
468
513
  // If we have an item, reload if it's relatively recent
469
514
  if (stale && getFetched(key) > now() - timeout) {
470
515
  return stale;
@@ -499,7 +544,7 @@ export const makeLoadItem = (loadItem, getItem, options = {}) => {
499
544
  };
500
545
  };
501
546
  // Miscellaneous other stuff
502
- export const deriveIsDeleted = (repository, event) => readable(false, set => {
547
+ export const deriveIsDeleted = (repository, event) => projection(readable(false, set => {
503
548
  const idOrAddress = getIdOrAddress(event);
504
549
  set(repository.isDeleted(event));
505
550
  return on(repository, "update", ({ removed, added }) => {
@@ -512,5 +557,5 @@ export const deriveIsDeleted = (repository, event) => readable(false, set => {
512
557
  }
513
558
  }
514
559
  });
515
- });
560
+ }), () => repository.isDeleted(event));
516
561
  //# sourceMappingURL=repository.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../../src/repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../../src/repository.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@welshman/store",
3
- "version": "0.12.5",
3
+ "version": "0.12.6",
4
4
  "author": "hodlbod",
5
5
  "license": "MIT",
6
6
  "description": "A collection of utilities based on svelte/store for use with welshman",
@@ -16,17 +16,17 @@
16
16
  ],
17
17
  "peerDependencies": {
18
18
  "svelte": "^4.0.0 || ^5.0.0",
19
- "@welshman/lib": "0.12.5",
20
- "@welshman/net": "0.12.5",
21
- "@welshman/util": "0.12.5"
19
+ "@welshman/util": "0.12.6",
20
+ "@welshman/lib": "0.12.6",
21
+ "@welshman/net": "0.12.6"
22
22
  },
23
23
  "devDependencies": {
24
24
  "rimraf": "~6.0.0",
25
25
  "typescript": "~5.8.0",
26
26
  "svelte": "5.55.9",
27
- "@welshman/lib": "0.12.5",
28
- "@welshman/util": "0.12.5",
29
- "@welshman/net": "0.12.5"
27
+ "@welshman/lib": "0.12.6",
28
+ "@welshman/net": "0.12.6",
29
+ "@welshman/util": "0.12.6"
30
30
  },
31
31
  "scripts": {
32
32
  "build": "pnpm run clean && pnpm run compile --force",