@welshman/app 0.6.8 → 0.7.1

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 (178) hide show
  1. package/dist/app/src/blossom.d.ts +7 -5
  2. package/dist/app/src/blossom.d.ts.map +1 -1
  3. package/dist/app/src/blossom.js +12 -11
  4. package/dist/app/src/blossom.js.map +1 -1
  5. package/dist/app/src/commands.d.ts +2 -2
  6. package/dist/app/src/commands.d.ts.map +1 -1
  7. package/dist/app/src/commands.js +29 -29
  8. package/dist/app/src/commands.js.map +1 -1
  9. package/dist/app/src/core.d.ts +0 -6
  10. package/dist/app/src/core.d.ts.map +1 -1
  11. package/dist/app/src/core.js +0 -33
  12. package/dist/app/src/core.js.map +1 -1
  13. package/dist/app/src/feeds.d.ts.map +1 -1
  14. package/dist/app/src/feeds.js +5 -4
  15. package/dist/app/src/feeds.js.map +1 -1
  16. package/dist/app/src/follows.d.ts +8 -5
  17. package/dist/app/src/follows.d.ts.map +1 -1
  18. package/dist/app/src/follows.js +12 -10
  19. package/dist/app/src/follows.js.map +1 -1
  20. package/dist/app/src/handles.d.ts +14 -5
  21. package/dist/app/src/handles.d.ts.map +1 -1
  22. package/dist/app/src/handles.js +46 -37
  23. package/dist/app/src/handles.js.map +1 -1
  24. package/dist/app/src/index.d.ts +2 -2
  25. package/dist/app/src/index.d.ts.map +1 -1
  26. package/dist/app/src/index.js +12 -12
  27. package/dist/app/src/index.js.map +1 -1
  28. package/dist/app/src/messagingRelayLists.d.ts +9 -0
  29. package/dist/app/src/messagingRelayLists.d.ts.map +1 -0
  30. package/dist/app/src/messagingRelayLists.js +18 -0
  31. package/dist/app/src/messagingRelayLists.js.map +1 -0
  32. package/dist/app/src/mutes.d.ts +8 -4
  33. package/dist/app/src/mutes.d.ts.map +1 -1
  34. package/dist/app/src/mutes.js +12 -10
  35. package/dist/app/src/mutes.js.map +1 -1
  36. package/dist/app/src/pins.d.ts +8 -5
  37. package/dist/app/src/pins.d.ts.map +1 -1
  38. package/dist/app/src/pins.js +12 -10
  39. package/dist/app/src/pins.js.map +1 -1
  40. package/dist/app/src/profiles.d.ts +9 -6
  41. package/dist/app/src/profiles.d.ts.map +1 -1
  42. package/dist/app/src/profiles.js +15 -13
  43. package/dist/app/src/profiles.js.map +1 -1
  44. package/dist/app/src/relayLists.d.ts +15 -0
  45. package/dist/app/src/relayLists.d.ts.map +1 -0
  46. package/dist/app/src/{relaySelections.js → relayLists.js} +14 -12
  47. package/dist/app/src/relayLists.js.map +1 -0
  48. package/dist/app/src/relayStats.d.ts +8 -3
  49. package/dist/app/src/relayStats.d.ts.map +1 -1
  50. package/dist/app/src/relayStats.js +16 -10
  51. package/dist/app/src/relayStats.js.map +1 -1
  52. package/dist/app/src/relays.d.ts +15 -8
  53. package/dist/app/src/relays.d.ts.map +1 -1
  54. package/dist/app/src/relays.js +48 -42
  55. package/dist/app/src/relays.js.map +1 -1
  56. package/dist/app/src/search.js +3 -3
  57. package/dist/app/src/search.js.map +1 -1
  58. package/dist/app/src/session.d.ts.map +1 -1
  59. package/dist/app/src/session.js +2 -2
  60. package/dist/app/src/session.js.map +1 -1
  61. package/dist/app/src/sync.js +2 -2
  62. package/dist/app/src/sync.js.map +1 -1
  63. package/dist/app/src/thunk.d.ts.map +1 -1
  64. package/dist/app/src/thunk.js +2 -2
  65. package/dist/app/src/thunk.js.map +1 -1
  66. package/dist/app/src/topics.d.ts +2 -1
  67. package/dist/app/src/topics.d.ts.map +1 -1
  68. package/dist/app/src/topics.js +33 -15
  69. package/dist/app/src/topics.js.map +1 -1
  70. package/dist/app/src/user.d.ts +24 -21
  71. package/dist/app/src/user.d.ts.map +1 -1
  72. package/dist/app/src/user.js +35 -50
  73. package/dist/app/src/user.js.map +1 -1
  74. package/dist/app/src/wot.d.ts +8 -4
  75. package/dist/app/src/wot.d.ts.map +1 -1
  76. package/dist/app/src/wot.js +20 -16
  77. package/dist/app/src/wot.js.map +1 -1
  78. package/dist/app/src/zappers.d.ts +14 -7
  79. package/dist/app/src/zappers.d.ts.map +1 -1
  80. package/dist/app/src/zappers.js +55 -47
  81. package/dist/app/src/zappers.js.map +1 -1
  82. package/dist/lib/src/Tools.d.ts +36 -9
  83. package/dist/lib/src/Tools.d.ts.map +1 -1
  84. package/dist/lib/src/Tools.js +86 -38
  85. package/dist/lib/src/Tools.js.map +1 -1
  86. package/dist/net/src/policy.d.ts.map +1 -1
  87. package/dist/net/src/policy.js +18 -3
  88. package/dist/net/src/policy.js.map +1 -1
  89. package/dist/net/src/repository.js +1 -1
  90. package/dist/net/src/repository.js.map +1 -1
  91. package/dist/signer/src/nip59.d.ts.map +1 -1
  92. package/dist/signer/src/nip59.js +2 -2
  93. package/dist/signer/src/nip59.js.map +1 -1
  94. package/dist/signer/src/signers/nip01.d.ts.map +1 -1
  95. package/dist/signer/src/signers/nip01.js +2 -1
  96. package/dist/signer/src/signers/nip01.js.map +1 -1
  97. package/dist/signer/src/signers/nip07.d.ts.map +1 -1
  98. package/dist/signer/src/signers/nip07.js +2 -1
  99. package/dist/signer/src/signers/nip07.js.map +1 -1
  100. package/dist/signer/src/signers/nip46.d.ts +17 -2
  101. package/dist/signer/src/signers/nip46.d.ts.map +1 -1
  102. package/dist/signer/src/signers/nip46.js +137 -14
  103. package/dist/signer/src/signers/nip46.js.map +1 -1
  104. package/dist/signer/src/signers/nip55.d.ts.map +1 -1
  105. package/dist/signer/src/signers/nip55.js +2 -1
  106. package/dist/signer/src/signers/nip55.js.map +1 -1
  107. package/dist/signer/src/util.d.ts +1 -36
  108. package/dist/signer/src/util.d.ts.map +1 -1
  109. package/dist/signer/src/util.js +2 -25
  110. package/dist/signer/src/util.js.map +1 -1
  111. package/dist/store/src/index.d.ts +1 -5
  112. package/dist/store/src/index.d.ts.map +1 -1
  113. package/dist/store/src/index.js +1 -5
  114. package/dist/store/src/index.js.map +1 -1
  115. package/dist/store/src/misc.d.ts +18 -0
  116. package/dist/store/src/misc.d.ts.map +1 -0
  117. package/dist/store/src/misc.js +66 -0
  118. package/dist/store/src/misc.js.map +1 -0
  119. package/dist/store/src/repository.d.ts +52 -11
  120. package/dist/store/src/repository.d.ts.map +1 -1
  121. package/dist/store/src/repository.js +305 -80
  122. package/dist/store/src/repository.js.map +1 -1
  123. package/dist/tsconfig.build.tsbuildinfo +1 -1
  124. package/dist/util/src/Events.d.ts +2 -0
  125. package/dist/util/src/Events.d.ts.map +1 -1
  126. package/dist/util/src/Events.js +3 -1
  127. package/dist/util/src/Events.js.map +1 -1
  128. package/dist/util/src/Keys.d.ts +37 -0
  129. package/dist/util/src/Keys.d.ts.map +1 -0
  130. package/dist/util/src/Keys.js +26 -0
  131. package/dist/util/src/Keys.js.map +1 -0
  132. package/dist/util/src/Kinds.d.ts +8 -1
  133. package/dist/util/src/Kinds.d.ts.map +1 -1
  134. package/dist/util/src/Kinds.js +8 -1
  135. package/dist/util/src/Kinds.js.map +1 -1
  136. package/dist/util/src/Pow.d.ts +11 -0
  137. package/dist/util/src/Pow.d.ts.map +1 -0
  138. package/dist/util/src/Pow.js +127 -0
  139. package/dist/util/src/Pow.js.map +1 -0
  140. package/dist/util/src/Relay.d.ts +1 -1
  141. package/dist/util/src/Relay.d.ts.map +1 -1
  142. package/dist/util/src/Relay.js +1 -1
  143. package/dist/util/src/Relay.js.map +1 -1
  144. package/dist/util/src/Zaps.d.ts.map +1 -1
  145. package/dist/util/src/Zaps.js +2 -2
  146. package/dist/util/src/Zaps.js.map +1 -1
  147. package/dist/util/src/index.d.ts +2 -0
  148. package/dist/util/src/index.d.ts.map +1 -1
  149. package/dist/util/src/index.js +2 -0
  150. package/dist/util/src/index.js.map +1 -1
  151. package/package.json +8 -8
  152. package/dist/app/src/inboxRelaySelections.d.ts +0 -6
  153. package/dist/app/src/inboxRelaySelections.d.ts.map +0 -1
  154. package/dist/app/src/inboxRelaySelections.js +0 -16
  155. package/dist/app/src/inboxRelaySelections.js.map +0 -1
  156. package/dist/app/src/relaySelections.d.ts +0 -11
  157. package/dist/app/src/relaySelections.d.ts.map +0 -1
  158. package/dist/app/src/relaySelections.js.map +0 -1
  159. package/dist/store/src/collection.d.ts +0 -34
  160. package/dist/store/src/collection.d.ts.map +0 -1
  161. package/dist/store/src/collection.js +0 -82
  162. package/dist/store/src/collection.js.map +0 -1
  163. package/dist/store/src/custom.d.ts +0 -10
  164. package/dist/store/src/custom.d.ts.map +0 -1
  165. package/dist/store/src/custom.js +0 -41
  166. package/dist/store/src/custom.js.map +0 -1
  167. package/dist/store/src/getter.d.ts +0 -11
  168. package/dist/store/src/getter.d.ts.map +0 -1
  169. package/dist/store/src/getter.js +0 -11
  170. package/dist/store/src/getter.js.map +0 -1
  171. package/dist/store/src/memoize.d.ts +0 -5
  172. package/dist/store/src/memoize.d.ts.map +0 -1
  173. package/dist/store/src/memoize.js +0 -6
  174. package/dist/store/src/memoize.js.map +0 -1
  175. package/dist/store/src/throttle.d.ts +0 -3
  176. package/dist/store/src/throttle.d.ts.map +0 -1
  177. package/dist/store/src/throttle.js +0 -9
  178. package/dist/store/src/throttle.js.map +0 -1
@@ -0,0 +1,66 @@
1
+ import { get, derived, } from "svelte/store";
2
+ import { memoize, throttle } from "@welshman/lib";
3
+ // Smart getter that adjusts between svelte's get and aggressive subscription depending on how hot
4
+ // the path is
5
+ export const getter = (store, { threshold = 10 } = {}) => {
6
+ const calls = [];
7
+ let unsubscribe;
8
+ let offset = 0;
9
+ let value;
10
+ return () => {
11
+ const now = Date.now();
12
+ const cutoff = now - 1000;
13
+ // Find the first timestamp within the window (avoid expensive shift)
14
+ while (offset < calls.length && calls[offset] < cutoff) {
15
+ offset++;
16
+ }
17
+ // Periodically clean up old timestamps to prevent unbounded growth
18
+ if (offset > 100) {
19
+ calls.splice(0, offset);
20
+ offset = 0;
21
+ }
22
+ // Add current timestamp
23
+ calls.push(now);
24
+ // Check if call rate exceeds threshold and switch to more aggressive mode
25
+ if (calls.length - offset > threshold) {
26
+ if (!unsubscribe) {
27
+ unsubscribe = store.subscribe((newValue) => {
28
+ value = newValue;
29
+ });
30
+ }
31
+ return value;
32
+ }
33
+ else {
34
+ if (unsubscribe) {
35
+ unsubscribe();
36
+ unsubscribe = undefined;
37
+ }
38
+ return get(store);
39
+ }
40
+ };
41
+ };
42
+ export function withGetter(store) {
43
+ return { ...store, get: getter(store) };
44
+ }
45
+ export const memoized = (store) => {
46
+ const { subscribe } = store;
47
+ return { ...store, subscribe: (f) => subscribe(memoize(f)) };
48
+ };
49
+ export const throttled = (delay, store) => {
50
+ if (delay) {
51
+ const { subscribe } = store;
52
+ store = { ...store, subscribe: (f) => subscribe(throttle(delay, f)) };
53
+ }
54
+ return store;
55
+ };
56
+ export const deriveDeduplicated = (stores, get) => {
57
+ let prev;
58
+ return derived(stores, (storeValues, set) => {
59
+ const result = get(storeValues);
60
+ if (prev !== result) {
61
+ prev = result;
62
+ set(result);
63
+ }
64
+ });
65
+ };
66
+ //# sourceMappingURL=misc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.js","sourceRoot":"","sources":["../../../../store/src/misc.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EACH,OAAO,GAOR,MAAM,cAAc,CAAA;AACrB,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAA;AAE/C,kGAAkG;AAClG,cAAc;AAEd,MAAM,CAAC,MAAM,MAAM,GAAG,CAAI,KAAkB,EAAE,EAAC,SAAS,GAAG,EAAE,KAA0B,EAAE,EAAE,EAAE;IAC3F,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,IAAI,WAAqC,CAAA;IACzC,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,IAAI,KAAQ,CAAA;IAEZ,OAAO,GAAG,EAAE;QACV,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,MAAM,MAAM,GAAG,GAAG,GAAG,IAAI,CAAA;QAEzB,qEAAqE;QACrE,OAAO,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC;YACvD,MAAM,EAAE,CAAA;QACV,CAAC;QAED,mEAAmE;QACnE,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;YACjB,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;YACvB,MAAM,GAAG,CAAC,CAAA;QACZ,CAAC;QAED,wBAAwB;QACxB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEf,0EAA0E;QAC1E,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,QAAW,EAAE,EAAE;oBAC5C,KAAK,GAAG,QAAQ,CAAA;gBAClB,CAAC,CAAC,CAAA;YACJ,CAAC;YAED,OAAO,KAAK,CAAA;QACd,CAAC;aAAM,CAAC;YACN,IAAI,WAAW,EAAE,CAAC;gBAChB,WAAW,EAAE,CAAA;gBACb,WAAW,GAAG,SAAS,CAAA;YACzB,CAAC;YAED,OAAO,GAAG,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAOD,MAAM,UAAU,UAAU,CAAI,KAAgC;IAC5D,OAAO,EAAC,GAAG,KAAK,EAAE,GAAG,EAAE,MAAM,CAAI,KAAK,CAAC,EAAC,CAAA;AAC1C,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAI,KAAkB,EAAE,EAAE;IAChD,MAAM,EAAC,SAAS,EAAC,GAAG,KAAK,CAAA;IAEzB,OAAO,EAAC,GAAG,KAAK,EAAE,SAAS,EAAE,CAAC,CAAgB,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAC,CAAA;AAC3E,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CAA2B,KAAa,EAAE,KAAQ,EAAE,EAAE;IAC7E,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,EAAC,SAAS,EAAC,GAAG,KAAK,CAAA;QAEzB,KAAK,GAAG,EAAC,GAAG,KAAK,EAAE,SAAS,EAAE,CAAC,CAAgB,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAC,CAAA;IACpF,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,MAAS,EACT,GAAwC,EAC3B,EAAE;IACf,IAAI,IAAO,CAAA;IAEX,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE;QAC1C,MAAM,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC,CAAA;QAE/B,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,IAAI,GAAG,MAAM,CAAA;YACb,GAAG,CAAC,MAAM,CAAC,CAAA;QACb,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -1,16 +1,57 @@
1
+ import { Readable } from "svelte/store";
2
+ import { Maybe, MaybeAsync } from "@welshman/lib";
1
3
  import { Filter, TrustedEvent } from "@welshman/util";
2
- import { Repository } from "@welshman/net";
3
- export type DeriveEventsMappedOptions<T> = {
4
+ import { Repository, Tracker } from "@welshman/net";
5
+ export type EventsById = Map<string, TrustedEvent>;
6
+ export type EventsByIdOptions = {
4
7
  filters: Filter[];
5
- eventToItem: (event: TrustedEvent) => undefined | T | T[] | Promise<undefined | T | T[]>;
6
- itemToEvent: (item: T) => TrustedEvent;
7
- throttle?: number;
8
+ repository: Repository;
8
9
  includeDeleted?: boolean;
9
10
  };
10
- export declare const deriveEventsMapped: <T>(repository: Repository, { filters, eventToItem, itemToEvent, throttle, includeDeleted, }: DeriveEventsMappedOptions<T>) => import("./getter.js").WritableWithGetter<T[]>;
11
- export type DeriveEventsOptions<T> = Omit<DeriveEventsMappedOptions<T>, "itemToEvent" | "eventToItem">;
12
- export declare const deriveEvents: <T>(repository: Repository, opts: DeriveEventsOptions<T>) => import("./getter.js").WritableWithGetter<TrustedEvent[]>;
13
- export declare const deriveEvent: (repository: Repository, idOrAddress: string) => import("svelte/store").Readable<TrustedEvent | undefined>;
14
- export declare const deriveIsDeleted: (repository: Repository, event: TrustedEvent) => import("./getter.js").WritableWithGetter<boolean>;
15
- export declare const deriveIsDeletedByAddress: (repository: Repository, event: TrustedEvent) => import("./getter.js").WritableWithGetter<boolean>;
11
+ 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 type EventOptions = {
17
+ repository: Repository;
18
+ includeDeleted?: boolean;
19
+ onDerive?: (filters: Filter[], ...args: any[]) => void;
20
+ };
21
+ export declare const makeDeriveEvent: ({ repository, includeDeleted, onDerive }: EventOptions) => (idOrAddress: string, ...args: any[]) => Readable<Maybe<TrustedEvent>>;
22
+ export type EventsByIdByUrl = Map<string, EventsById>;
23
+ export type EventsByIdByUrlOptions = EventsByIdOptions & {
24
+ tracker: Tracker;
25
+ };
26
+ export declare const getEventsByIdByUrl: ({ filters, tracker, repository, includeDeleted, }: EventsByIdByUrlOptions) => EventsByIdByUrl;
27
+ export declare const deriveEventsByIdByUrl: ({ filters, tracker, repository, includeDeleted, }: EventsByIdByUrlOptions) => Readable<EventsByIdByUrl>;
28
+ export type EventsByIdForUrlOptions = EventsByIdOptions & {
29
+ url: string;
30
+ tracker: Tracker;
31
+ };
32
+ export declare const getEventsByIdForUrl: ({ url, filters, tracker, repository, includeDeleted, }: EventsByIdForUrlOptions) => EventsById;
33
+ export declare const deriveEventsByIdForUrl: ({ url, filters, tracker, repository, includeDeleted, }: EventsByIdForUrlOptions) => Readable<EventsById>;
34
+ export type ItemsByKey<T> = Map<string, T>;
35
+ export type EventToItem<T> = (event: TrustedEvent) => MaybeAsync<Maybe<T>>;
36
+ export type GetItem<T> = (key: string, ...args: any[]) => Maybe<T>;
37
+ export type ItemsByKeyOptions<T> = {
38
+ getKey: (item: T) => string;
39
+ filters: Filter[];
40
+ repository: Repository;
41
+ eventToItem: EventToItem<T>;
42
+ includeDeleted?: boolean;
43
+ };
44
+ export declare const deriveItemsByKey: <T>({ getKey, filters, repository, eventToItem, includeDeleted, }: ItemsByKeyOptions<T>) => Readable<Map<string, T>>;
45
+ export declare const deriveItems: <T>(itemsByKeyStore: Readable<ItemsByKey<T>>) => Readable<T[]>;
46
+ export declare const deriveItemsSorted: <T>(sortFn: (item: T) => number, itemsStore: Readable<T[]>) => Readable<T[]>;
47
+ export declare const makeDeriveItem: <T>(itemsByKeyStore: Readable<ItemsByKey<T>>, onDerive?: (key: string, ...args: any[]) => void) => (key?: string, ...args: any[]) => Readable<T | undefined>;
48
+ export type LoadItem = (key: string, ...args: any[]) => Promise<unknown>;
49
+ export declare const makeForceLoadItem: <T>(loadItem: LoadItem, getItem: GetItem<T>) => (key: string, ...args: any[]) => Promise<T | undefined>;
50
+ export type MakeLoadItemOptions = {
51
+ getFetched?: (key: string) => number;
52
+ setFetched?: (key: string, ts: number) => void;
53
+ timeout?: number;
54
+ };
55
+ export declare const makeLoadItem: <T>(loadItem: LoadItem, getItem: GetItem<T>, options?: MakeLoadItemOptions) => (key: string, ...args: any[]) => Promise<Maybe<T>>;
56
+ export declare const deriveIsDeleted: (repository: Repository, event: TrustedEvent) => Readable<boolean>;
16
57
  //# sourceMappingURL=repository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../../store/src/repository.ts"],"names":[],"mappings":"AAUA,OAAO,EAA8C,MAAM,EAAE,YAAY,EAAC,MAAM,gBAAgB,CAAA;AAChG,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAA;AAGxC,MAAM,MAAM,yBAAyB,CAAC,CAAC,IAAI;IACzC,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,WAAW,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,SAAS,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACxF,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,YAAY,CAAA;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,CAAC,EAClC,YAAY,UAAU,EACtB,kEAMG,yBAAyB,CAAC,CAAC,CAAC,kDAkG9B,CAAA;AAEH,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,IAAI,CACvC,yBAAyB,CAAC,CAAC,CAAC,EAC5B,aAAa,GAAG,aAAa,CAC9B,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,CAAC,EAAE,YAAY,UAAU,EAAE,MAAM,mBAAmB,CAAC,CAAC,CAAC,6DAKhF,CAAA;AAEJ,eAAO,MAAM,WAAW,GAAI,YAAY,UAAU,EAAE,aAAa,MAAM,8DAOpE,CAAA;AAEH,eAAO,MAAM,eAAe,GAAI,YAAY,UAAU,EAAE,OAAO,YAAY,sDASvE,CAAA;AAEJ,eAAO,MAAM,wBAAwB,GAAI,YAAY,UAAU,EAAE,OAAO,YAAY,sDAShF,CAAA"}
1
+ {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../../store/src/repository.ts"],"names":[],"mappings":"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"}
@@ -1,100 +1,325 @@
1
- import { derived } from "svelte/store";
2
- import { sortBy, identity, ensurePlural, removeUndefined, batch, partition, first, } from "@welshman/lib";
3
- import { matchFilters, getIdAndAddress, getIdFilters } from "@welshman/util";
4
- import { custom } from "./custom.js";
5
- export const deriveEventsMapped = (repository, { filters, eventToItem, itemToEvent, throttle = 0, includeDeleted = false, }) => custom(setter => {
6
- let data = [];
7
- const deferred = new Set();
8
- const defer = (event, promise) => {
9
- deferred.add(event.id);
10
- void promise.then(items => {
11
- if (deferred.has(event.id)) {
12
- deferred.delete(event.id);
13
- for (const item of removeUndefined(ensurePlural(items))) {
14
- data.push(item);
15
- }
16
- setter(sortBy(item => -itemToEvent(item).created_at, data));
1
+ import { readable } from "svelte/store";
2
+ import { on, assoc, now, mapPop, call, sortBy, first } from "@welshman/lib";
3
+ import { matchFilters, getIdFilters, sortEventsAsc, sortEventsDesc, } from "@welshman/util";
4
+ import { deriveDeduplicated } from "./misc.js";
5
+ export const getEventsById = ({ filters, repository, includeDeleted }) => {
6
+ const eventsById = new Map();
7
+ for (const event of repository.query(filters, { includeDeleted })) {
8
+ eventsById.set(event.id, event);
9
+ }
10
+ return eventsById;
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);
17
21
  }
22
+ }
23
+ for (const id of removed) {
24
+ if (mapPop(id, eventsById)) {
25
+ dirty = true;
26
+ }
27
+ }
28
+ if (dirty) {
29
+ set(eventsById);
30
+ }
31
+ });
32
+ });
33
+ export const deriveArray = (itemsByIdStore) => deriveDeduplicated(itemsByIdStore, itemsById => Array.from(itemsById.values()));
34
+ export const deriveEventsAsc = (eventsByIdStore) => deriveDeduplicated(eventsByIdStore, eventsById => sortEventsAsc(eventsById.values()));
35
+ export const deriveEventsDesc = (eventsByIdStore) => deriveDeduplicated(eventsByIdStore, eventsById => sortEventsDesc(eventsById.values()));
36
+ export const makeDeriveEvent = ({ repository, includeDeleted = false, onDerive }) => {
37
+ return (idOrAddress, ...args) => {
38
+ const filters = getIdFilters([idOrAddress]);
39
+ onDerive?.(filters, ...args);
40
+ return readable(undefined, set => {
41
+ let event = first(repository.query(filters, { includeDeleted }));
42
+ set(event);
43
+ return on(repository, "update", ({ added, removed }) => {
44
+ for (const newEvent of added) {
45
+ if (matchFilters(filters, newEvent)) {
46
+ event = newEvent;
47
+ set(event);
48
+ }
49
+ }
50
+ for (const id of removed) {
51
+ if (event?.id === id) {
52
+ set(undefined);
53
+ }
54
+ }
55
+ });
18
56
  });
19
57
  };
58
+ };
59
+ export const getEventsByIdByUrl = ({ filters, tracker, repository, includeDeleted, }) => {
60
+ const eventsByIdByUrl = new Map();
20
61
  for (const event of repository.query(filters, { includeDeleted })) {
21
- const items = eventToItem(event);
22
- if (!items) {
23
- continue;
24
- }
25
- if (items instanceof Promise) {
26
- defer(event, items);
27
- }
28
- else {
29
- for (const item of removeUndefined(ensurePlural(items))) {
30
- data.push(item);
62
+ for (const url of tracker.getRelays(event.id)) {
63
+ let eventsById = eventsByIdByUrl.get(url);
64
+ if (!eventsById) {
65
+ eventsById = new Map();
66
+ eventsByIdByUrl.set(url, eventsById);
31
67
  }
68
+ eventsById.set(event.id, event);
32
69
  }
33
70
  }
34
- setter(sortBy(item => -itemToEvent(item).created_at, data));
35
- const onUpdate = batch(300, (updates) => {
36
- const removed = new Set();
37
- const added = new Map();
38
- // Apply updates in order
39
- for (const update of updates) {
40
- for (const event of update.added.values()) {
41
- added.set(event.id, event);
42
- removed.delete(event.id);
43
- }
44
- for (const id of update.removed) {
45
- removed.add(id);
46
- added.delete(id);
47
- deferred.delete(id);
71
+ return eventsByIdByUrl;
72
+ };
73
+ export const deriveEventsByIdByUrl = ({ filters, tracker, repository, includeDeleted, }) => readable(new Map(), set => {
74
+ const eventsByIdByUrl = getEventsByIdByUrl({ filters, tracker, repository, includeDeleted });
75
+ const addEvent = (url, event) => {
76
+ if (!matchFilters(filters, event))
77
+ return false;
78
+ const eventsById = eventsByIdByUrl.get(url);
79
+ if (eventsById?.has(event.id))
80
+ return false;
81
+ // Create a new map so we can detect which key changed
82
+ const newEventsById = new Map(eventsById);
83
+ newEventsById.set(event.id, event);
84
+ eventsByIdByUrl.set(url, newEventsById);
85
+ return true;
86
+ };
87
+ const removeEvent = (url, id) => {
88
+ const eventsById = eventsByIdByUrl.get(url);
89
+ if (eventsById?.has(id)) {
90
+ eventsById.delete(id);
91
+ if (eventsById.size === 0) {
92
+ eventsByIdByUrl.delete(url);
93
+ }
94
+ else {
95
+ // Create a new map so we can detect which key changed
96
+ eventsByIdByUrl.set(url, new Map(eventsById));
48
97
  }
98
+ return true;
49
99
  }
50
- let dirty = false;
51
- for (const event of added.values()) {
52
- if (matchFilters(filters, event)) {
53
- const items = eventToItem(event);
54
- if (items instanceof Promise) {
55
- defer(event, items);
100
+ return false;
101
+ };
102
+ set(eventsByIdByUrl);
103
+ const unsubscribers = [
104
+ on(repository, "update", ({ added, removed }) => {
105
+ let dirty = false;
106
+ for (const event of added) {
107
+ for (const url of tracker.getRelays(event.id)) {
108
+ dirty = dirty || addEvent(url, event);
109
+ }
110
+ }
111
+ for (const id of removed) {
112
+ for (const url of tracker.getRelays(id)) {
113
+ dirty = dirty || removeEvent(url, id);
114
+ }
115
+ }
116
+ if (dirty) {
117
+ set(eventsByIdByUrl);
118
+ }
119
+ }),
120
+ on(tracker, "add", (id, url) => {
121
+ const event = repository.getEvent(id);
122
+ if (event && addEvent(url, event)) {
123
+ set(eventsByIdByUrl);
124
+ }
125
+ }),
126
+ on(tracker, "remove", (id, url) => {
127
+ if (removeEvent(url, id)) {
128
+ set(eventsByIdByUrl);
129
+ }
130
+ }),
131
+ on(tracker, "load", () => {
132
+ eventsByIdByUrl.clear();
133
+ for (const event of repository.query(filters, { includeDeleted })) {
134
+ for (const url of tracker.getRelays(event.id)) {
135
+ addEvent(url, event);
56
136
  }
57
- else if (items) {
58
- dirty = true;
59
- for (const item of removeUndefined(ensurePlural(items))) {
60
- data.push(item);
137
+ }
138
+ set(eventsByIdByUrl);
139
+ }),
140
+ on(tracker, "clear", () => {
141
+ eventsByIdByUrl.clear();
142
+ set(eventsByIdByUrl);
143
+ }),
144
+ ];
145
+ return () => unsubscribers.forEach(call);
146
+ });
147
+ export const getEventsByIdForUrl = ({ url, filters, tracker, repository, includeDeleted, }) => {
148
+ const initialIds = Array.from(tracker.getIds(url));
149
+ const initialFilters = filters.map(assoc("ids", initialIds));
150
+ const eventsById = new Map();
151
+ for (const event of repository.query(initialFilters, { includeDeleted })) {
152
+ eventsById.set(event.id, event);
153
+ }
154
+ return eventsById;
155
+ };
156
+ export const deriveEventsByIdForUrl = ({ url, filters, tracker, repository, includeDeleted, }) => {
157
+ let eventsById = getEventsByIdForUrl({ url, filters, tracker, repository, includeDeleted });
158
+ return readable(eventsById, set => {
159
+ const reset = () => {
160
+ eventsById = getEventsByIdForUrl({ url, filters, tracker, repository, includeDeleted });
161
+ set(eventsById);
162
+ };
163
+ reset();
164
+ const unsubscribers = [
165
+ on(repository, "update", ({ added, removed }) => {
166
+ let dirty = false;
167
+ for (const event of added) {
168
+ if (tracker.hasRelay(event.id, url) && matchFilters(filters, event)) {
169
+ eventsById.set(event.id, event);
170
+ dirty = true;
171
+ }
172
+ }
173
+ for (const id of removed) {
174
+ if (eventsById.has(id)) {
175
+ eventsById.delete(id);
176
+ dirty = true;
61
177
  }
62
178
  }
179
+ if (dirty) {
180
+ set(eventsById);
181
+ }
182
+ }),
183
+ on(tracker, "add", (id, url) => {
184
+ const event = repository.getEvent(id);
185
+ if (event && tracker.hasRelay(id, url) && matchFilters(filters, event)) {
186
+ eventsById.set(id, event);
187
+ set(eventsById);
188
+ }
189
+ }),
190
+ on(tracker, "remove", (id, url) => {
191
+ if (eventsById.has(id)) {
192
+ eventsById.delete(id);
193
+ set(eventsById);
194
+ }
195
+ }),
196
+ on(tracker, "load", reset),
197
+ on(tracker, "clear", reset),
198
+ ];
199
+ return () => unsubscribers.forEach(call);
200
+ });
201
+ };
202
+ export const deriveItemsByKey = ({ getKey, filters, repository, eventToItem, includeDeleted, }) => {
203
+ const deferred = new Map();
204
+ const itemsByKey = new Map();
205
+ const idsByKey = new Map();
206
+ const keysById = new Map();
207
+ return readable(itemsByKey, set => {
208
+ const addEvent = async (event) => {
209
+ if (deferred.has(event.id))
210
+ return;
211
+ if (keysById.has(event.id))
212
+ return;
213
+ const itemOrPromise = eventToItem(event);
214
+ if (itemOrPromise instanceof Promise) {
215
+ deferred.set(event.id, itemOrPromise);
216
+ }
217
+ try {
218
+ const item = await itemOrPromise;
219
+ if (item) {
220
+ const key = getKey(item);
221
+ itemsByKey.set(key, item);
222
+ idsByKey.set(key, event.id);
223
+ keysById.set(event.id, key);
224
+ set(itemsByKey);
225
+ }
226
+ }
227
+ finally {
228
+ deferred.delete(event.id);
63
229
  }
230
+ };
231
+ for (const event of repository.query(filters, { includeDeleted })) {
232
+ addEvent(event);
64
233
  }
65
- if (!includeDeleted && removed.size > 0) {
66
- const [deleted, ok] = partition((item) => getIdAndAddress(itemToEvent(item)).some((id) => removed.has(id)), data);
67
- if (deleted.length > 0) {
68
- dirty = true;
69
- data = ok;
234
+ return on(repository, "update", ({ added, removed }) => {
235
+ for (const event of added) {
236
+ if (matchFilters(filters, event)) {
237
+ addEvent(event);
238
+ }
239
+ }
240
+ if (!includeDeleted) {
241
+ let dirty = false;
242
+ for (const id of removed) {
243
+ const key = mapPop(id, keysById);
244
+ if (key) {
245
+ idsByKey.delete(key);
246
+ itemsByKey.delete(key);
247
+ dirty = true;
248
+ }
249
+ }
250
+ if (dirty) {
251
+ set(itemsByKey);
252
+ }
70
253
  }
254
+ });
255
+ });
256
+ };
257
+ export const deriveItems = (itemsByKeyStore) => deriveDeduplicated(itemsByKeyStore, itemsByKey => Array.from(itemsByKey.values()));
258
+ export const deriveItemsSorted = (sortFn, itemsStore) => deriveDeduplicated(itemsStore, items => sortBy(sortFn, items));
259
+ export const makeDeriveItem = (itemsByKeyStore, onDerive) => {
260
+ return (key, ...args) => {
261
+ if (!key)
262
+ return readable(undefined);
263
+ onDerive?.(key, ...args);
264
+ return deriveDeduplicated(itemsByKeyStore, itemsByKey => itemsByKey.get(key));
265
+ };
266
+ };
267
+ export const makeForceLoadItem = (loadItem, getItem) => {
268
+ return (key, ...args) => loadItem(key, ...args).then(() => getItem(key));
269
+ };
270
+ export const makeLoadItem = (loadItem, getItem, options = {}) => {
271
+ const timeout = options.timeout || 3600;
272
+ const fetched = new Map();
273
+ const getFetched = options.getFetched || ((key) => fetched.get(key) || 0);
274
+ const setFetched = options.setFetched || ((key, ts) => fetched.set(key, ts));
275
+ const pending = new Map();
276
+ const attempts = new Map();
277
+ return async (key, ...args) => {
278
+ const stale = getItem(key);
279
+ const fetched = getFetched(key);
280
+ // If we have an item, reload if it's relatively recent
281
+ if (stale && fetched > now() - timeout) {
282
+ return stale;
71
283
  }
72
- if (dirty) {
73
- setter(sortBy(item => -itemToEvent(item).created_at, data));
284
+ const pendingItem = pending.get(key);
285
+ // If we already are loading, await and return
286
+ if (pendingItem) {
287
+ return pendingItem;
288
+ }
289
+ const attempt = attempts.get(key) || 0;
290
+ // Use exponential backoff to throttle attempts
291
+ if (fetched > now() - Math.pow(2, attempt)) {
292
+ return stale;
293
+ }
294
+ attempts.set(key, attempt + 1);
295
+ setFetched(key, now());
296
+ const promise = loadItem(key, ...args).then(() => getItem(key));
297
+ pending.set(key, promise);
298
+ let item;
299
+ try {
300
+ item = await promise;
301
+ }
302
+ catch (e) {
303
+ console.warn(`Failed to load item ${key}`, e);
304
+ }
305
+ finally {
306
+ pending.delete(key);
307
+ }
308
+ if (item) {
309
+ attempts.delete(key);
310
+ }
311
+ return item;
312
+ };
313
+ };
314
+ // Miscellaneous other stuff
315
+ export const deriveIsDeleted = (repository, event) => readable(false, set => {
316
+ set(repository.isDeleted(event));
317
+ const unsubscribe = on(repository, "update", ({ removed }) => {
318
+ if (removed.has(event.id)) {
319
+ set(true);
320
+ unsubscribe();
74
321
  }
75
322
  });
76
- repository.on("update", onUpdate);
77
- return () => repository.off("update", onUpdate);
78
- }, { throttle });
79
- export const deriveEvents = (repository, opts) => deriveEventsMapped(repository, {
80
- ...opts,
81
- eventToItem: identity,
82
- itemToEvent: identity,
83
- });
84
- export const deriveEvent = (repository, idOrAddress) => derived(deriveEvents(repository, {
85
- filters: getIdFilters([idOrAddress]),
86
- includeDeleted: true,
87
- }), first);
88
- export const deriveIsDeleted = (repository, event) => custom(setter => {
89
- setter(repository.isDeleted(event));
90
- const onUpdate = batch(300, () => setter(repository.isDeleted(event)));
91
- repository.on("update", onUpdate);
92
- return () => repository.off("update", onUpdate);
93
- });
94
- export const deriveIsDeletedByAddress = (repository, event) => custom(setter => {
95
- setter(repository.isDeletedByAddress(event));
96
- const onUpdate = batch(300, () => setter(repository.isDeletedByAddress(event)));
97
- repository.on("update", onUpdate);
98
- return () => repository.off("update", onUpdate);
323
+ return unsubscribe;
99
324
  });
100
325
  //# sourceMappingURL=repository.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../../../store/src/repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../../../store/src/repository.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"root":["../src/blossom.ts","../src/commands.ts","../src/context.ts","../src/core.ts","../src/feeds.ts","../src/follows.ts","../src/handles.ts","../src/inboxrelayselections.ts","../src/index.ts","../src/mutes.ts","../src/pins.ts","../src/plaintext.ts","../src/profiles.ts","../src/relayselections.ts","../src/relaystats.ts","../src/relays.ts","../src/search.ts","../src/session.ts","../src/sync.ts","../src/tags.ts","../src/thunk.ts","../src/topics.ts","../src/user.ts","../src/wot.ts","../src/zappers.ts"],"version":"5.8.2"}
1
+ {"root":["../src/blossom.ts","../src/commands.ts","../src/context.ts","../src/core.ts","../src/feeds.ts","../src/follows.ts","../src/handles.ts","../src/index.ts","../src/messagingrelaylists.ts","../src/mutes.ts","../src/pins.ts","../src/plaintext.ts","../src/profiles.ts","../src/relaylists.ts","../src/relaystats.ts","../src/relays.ts","../src/search.ts","../src/session.ts","../src/sync.ts","../src/tags.ts","../src/thunk.ts","../src/topics.ts","../src/user.ts","../src/wot.ts","../src/zappers.ts"],"version":"5.8.2"}
@@ -66,4 +66,6 @@ export declare const getParentId: (event: EventTemplate) => string | undefined;
66
66
  export declare const getParentAddrs: (event: EventTemplate) => string[];
67
67
  export declare const getParentAddr: (event: EventTemplate) => string | undefined;
68
68
  export declare const isChildOf: (child: EventTemplate, parent: HashedEvent) => boolean;
69
+ export declare const sortEventsAsc: (events: Iterable<TrustedEvent>) => TrustedEvent[];
70
+ export declare const sortEventsDesc: (events: Iterable<TrustedEvent>) => TrustedEvent[];
69
71
  //# sourceMappingURL=Events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Events.d.ts","sourceRoot":"","sources":["../../../../util/src/Events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Events.d.ts","sourceRoot":"","sources":["../../../../util/src/Events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAiC,MAAM,kBAAkB,CAAA;AAc/E,OAAO,EAAC,cAAc,EAAC,CAAA;AAEvB,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,EAAE,EAAE,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,YAAY,GAAG;IACzC,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,aAAa,GAAG;IACzC,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG;IACtC,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG;IACrC,EAAE,EAAE,MAAM,CAAA;CACX,CAAA;AAED,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG;IACtC,GAAG,EAAE,MAAM,CAAA;IACX,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG;IACvC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAID,eAAO,MAAM,SAAS,GACpB,MAAM,MAAM,EACZ,gCAA+C,aAAkB;;;;;CAC3B,CAAA;AAIxC,eAAO,MAAM,WAAW,UAeP,YAAY,YAMzB,CAAA;AAIJ,eAAO,MAAM,eAAe,GAAI,GAAG,aAAa,KAAG,CAAC,IAAI,aAMvD,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,GAAG,YAAY,KAAG,CAAC,IAAI,YACsB,CAAA;AAE5E,eAAO,MAAM,YAAY,GAAI,GAAG,UAAU,KAAG,CAAC,IAAI,UACoC,CAAA;AAEtF,eAAO,MAAM,aAAa,GAAI,GAAG,WAAW,KAAG,CAAC,IAAI,WACwB,CAAA;AAE5E,eAAO,MAAM,aAAa,GAAI,GAAG,YAAY,KAAG,CAAC,IAAI,WACuB,CAAA;AAI5E,eAAO,MAAM,eAAe,GAAI,GAAG,aAAa,KAAG,aACb,CAAA;AAEtC,eAAO,MAAM,cAAc,GAAI,GAAG,YAAY,KAAG,YACG,CAAA;AAEpD,eAAO,MAAM,YAAY,GAAI,GAAG,UAAU,KAAG,UACiB,CAAA;AAE9D,eAAO,MAAM,aAAa,GAAI,GAAG,WAAW,KAAG,WACqB,CAAA;AAEpE,eAAO,MAAM,aAAa,GAAI,GAAG,WAAW,KAAG,WAC4B,CAAA;AAI3E,eAAO,MAAM,aAAa,GAAI,GAAG,aAAa,uBAAwC,CAAA;AAEtF,eAAO,MAAM,cAAc,GAAI,GAAG,WAAW,WAA8C,CAAA;AAE3F,eAAO,MAAM,eAAe,GAAI,GAAG,WAAW,aACK,CAAA;AAEnD,eAAO,MAAM,iBAAiB,GAAI,QAAQ,YAAY,EAAE,mBAYvD,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,GAAG,aAAa,YAA4B,CAAA;AAExE,eAAO,MAAM,aAAa,GAAI,GAAG,aAAa,YAA8B,CAAA;AAE5E,eAAO,MAAM,kBAAkB,GAAI,GAAG,aAAa,YAAmC,CAAA;AAEtF,eAAO,MAAM,0BAA0B,GAAI,GAAG,aAAa,YACnB,CAAA;AAExC,eAAO,MAAM,eAAe,GAAI,gBAAc,aAAa;;;CACG,CAAA;AAE9D,eAAO,MAAM,YAAY,GAAI,gBAAc,aAAa,6BACgB,CAAA;AAExE,eAAO,MAAM,oBAAoB,GAAI,OAAO,aAAa,aAIxD,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAI,OAAO,aAAa,uBAAuC,CAAA;AAE7F,eAAO,MAAM,YAAY,GAAI,OAAO,aAAa,aAOhD,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,OAAO,aAAa,uBAA+B,CAAA;AAE/E,eAAO,MAAM,cAAc,GAAI,OAAO,aAAa,aAOlD,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,OAAO,aAAa,uBAAiC,CAAA;AAEnF,eAAO,MAAM,SAAS,GAAI,OAAO,aAAa,EAAE,QAAQ,WAAW,YAIlE,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,QAAQ,QAAQ,CAAC,YAAY,CAAC,mBAAsC,CAAA;AAElG,eAAO,MAAM,cAAc,GAAI,QAAQ,QAAQ,CAAC,YAAY,CAAC,mBAAuC,CAAA"}