@wovin/core 0.0.9-RC3 → 0.0.10

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 (78) hide show
  1. package/LICENSE +661 -0
  2. package/dist/applog/applog-helpers.d.ts +26 -7
  3. package/dist/applog/applog-helpers.d.ts.map +1 -1
  4. package/dist/applog/applog-utils.d.ts +11 -2
  5. package/dist/applog/applog-utils.d.ts.map +1 -1
  6. package/dist/applog/datom-types.d.ts +24 -13
  7. package/dist/applog/datom-types.d.ts.map +1 -1
  8. package/dist/applog.min.js +11 -3
  9. package/dist/chunk-4432UCLM.min.js +544 -0
  10. package/dist/chunk-4432UCLM.min.js.map +1 -0
  11. package/dist/{chunk-PTGUFZ3Q.min.js → chunk-5UN776TZ.min.js} +1 -5
  12. package/dist/{chunk-PTGUFZ3Q.min.js.map → chunk-5UN776TZ.min.js.map} +1 -1
  13. package/dist/{chunk-RMPMFLPZ.min.js → chunk-BLAIQY2K.min.js} +345 -296
  14. package/dist/chunk-BLAIQY2K.min.js.map +1 -0
  15. package/dist/chunk-DF3UOPRV.min.js +5085 -0
  16. package/dist/chunk-DF3UOPRV.min.js.map +1 -0
  17. package/dist/{chunk-QXKFFDHN.min.js → chunk-ITYJ7DMX.min.js} +5931 -5722
  18. package/dist/chunk-ITYJ7DMX.min.js.map +1 -0
  19. package/dist/chunk-QPGEBDMJ.min.js +9 -0
  20. package/dist/chunk-QPGEBDMJ.min.js.map +1 -0
  21. package/dist/index.min.js +99 -50
  22. package/dist/ipfs/car.d.ts +47 -7
  23. package/dist/ipfs/car.d.ts.map +1 -1
  24. package/dist/ipfs/ipfs-utils.d.ts +18 -7
  25. package/dist/ipfs/ipfs-utils.d.ts.map +1 -1
  26. package/dist/ipfs.min.js +26 -7
  27. package/dist/mobx/mobx-utils.d.ts +23 -17
  28. package/dist/mobx/mobx-utils.d.ts.map +1 -1
  29. package/dist/mobx.d.ts +2 -0
  30. package/dist/mobx.d.ts.map +1 -0
  31. package/dist/mobx.min.js +141 -0
  32. package/dist/pubsub/connector.d.ts +3 -1
  33. package/dist/pubsub/connector.d.ts.map +1 -1
  34. package/dist/pubsub/pub-pull.d.ts +14 -0
  35. package/dist/pubsub/pub-pull.d.ts.map +1 -0
  36. package/dist/pubsub/pub-push.d.ts +41 -0
  37. package/dist/pubsub/pub-push.d.ts.map +1 -0
  38. package/dist/pubsub/pubsub-types.d.ts +25 -0
  39. package/dist/pubsub/pubsub-types.d.ts.map +1 -1
  40. package/dist/pubsub.d.ts +2 -1
  41. package/dist/pubsub.d.ts.map +1 -1
  42. package/dist/pubsub.min.js +18 -7
  43. package/dist/query/basic.d.ts +40 -8
  44. package/dist/query/basic.d.ts.map +1 -1
  45. package/dist/query/divergences.d.ts.map +1 -1
  46. package/dist/query.min.js +36 -20
  47. package/dist/thread/basic.d.ts +24 -4
  48. package/dist/thread/basic.d.ts.map +1 -1
  49. package/dist/thread/filters.d.ts +1 -1
  50. package/dist/thread/filters.d.ts.map +1 -1
  51. package/dist/thread/mapped.d.ts +10 -3
  52. package/dist/thread/mapped.d.ts.map +1 -1
  53. package/dist/thread/utils.d.ts +16 -0
  54. package/dist/thread/utils.d.ts.map +1 -0
  55. package/dist/thread/writeable.d.ts +4 -3
  56. package/dist/thread/writeable.d.ts.map +1 -1
  57. package/dist/thread.d.ts +1 -0
  58. package/dist/thread.d.ts.map +1 -1
  59. package/dist/thread.min.js +13 -3
  60. package/dist/types/typescript-utils.d.ts +5 -4
  61. package/dist/types/typescript-utils.d.ts.map +1 -1
  62. package/dist/types.min.js +1 -5
  63. package/dist/utils.d.ts +3 -0
  64. package/dist/utils.d.ts.map +1 -1
  65. package/dist/utils.min.js +9 -0
  66. package/package.json +16 -11
  67. package/dist/chunk-GJGWIEIE.min.js +0 -66
  68. package/dist/chunk-GJGWIEIE.min.js.map +0 -1
  69. package/dist/chunk-PG6EJTCU.min.js +0 -4411
  70. package/dist/chunk-PG6EJTCU.min.js.map +0 -1
  71. package/dist/chunk-QXKFFDHN.min.js.map +0 -1
  72. package/dist/chunk-RMPMFLPZ.min.js.map +0 -1
  73. package/dist/chunk-RPPZKO5L.min.js +0 -1
  74. package/dist/chunk-WIE7ME3N.min.js +0 -120
  75. package/dist/chunk-WIE7ME3N.min.js.map +0 -1
  76. package/dist/pubsub/publication.d.ts +0 -15
  77. package/dist/pubsub/publication.d.ts.map +0 -1
  78. /package/dist/{chunk-RPPZKO5L.min.js.map → mobx.min.js.map} +0 -0
@@ -0,0 +1,141 @@
1
+ import {
2
+ $mobx,
3
+ FlowCancellationError,
4
+ ObservableMap,
5
+ ObservableSet,
6
+ Reaction,
7
+ _endAction,
8
+ _startAction,
9
+ action,
10
+ allowStateChanges,
11
+ allowStateReadsEnd,
12
+ allowStateReadsStart,
13
+ apiDefineProperty,
14
+ apiOwnKeys,
15
+ autoAction,
16
+ autorun,
17
+ comparer,
18
+ computed,
19
+ configure,
20
+ createAtom,
21
+ entries,
22
+ extendObservable,
23
+ flow,
24
+ flowResult,
25
+ get,
26
+ getAdministration,
27
+ getAtom,
28
+ getDebugName,
29
+ getDependencyTree,
30
+ getGlobalState,
31
+ getObserverTree,
32
+ has,
33
+ intercept,
34
+ interceptReads,
35
+ isAction,
36
+ isComputed,
37
+ isComputedProp,
38
+ isComputingDerivation,
39
+ isFlow,
40
+ isFlowCancellationError,
41
+ isObservable,
42
+ isObservableArray,
43
+ isObservableMap,
44
+ isObservableObject,
45
+ isObservableProp,
46
+ isObservableSet,
47
+ isObservableValue,
48
+ keys,
49
+ makeAutoObservable,
50
+ makeObservable,
51
+ observable,
52
+ observe,
53
+ onBecomeObserved,
54
+ onBecomeUnobserved,
55
+ onReactionError,
56
+ override,
57
+ reaction,
58
+ remove,
59
+ resetGlobalState,
60
+ runInAction,
61
+ set,
62
+ spy,
63
+ toJS,
64
+ trace,
65
+ transaction,
66
+ untracked,
67
+ values,
68
+ when
69
+ } from "./chunk-DF3UOPRV.min.js";
70
+ import "./chunk-KRQZ6V4Y.min.js";
71
+ export {
72
+ $mobx,
73
+ FlowCancellationError,
74
+ ObservableMap,
75
+ ObservableSet,
76
+ Reaction,
77
+ allowStateChanges as _allowStateChanges,
78
+ runInAction as _allowStateChangesInsideComputed,
79
+ allowStateReadsEnd as _allowStateReadsEnd,
80
+ allowStateReadsStart as _allowStateReadsStart,
81
+ autoAction as _autoAction,
82
+ _endAction,
83
+ getAdministration as _getAdministration,
84
+ getGlobalState as _getGlobalState,
85
+ interceptReads as _interceptReads,
86
+ isComputingDerivation as _isComputingDerivation,
87
+ resetGlobalState as _resetGlobalState,
88
+ _startAction,
89
+ action,
90
+ autorun,
91
+ comparer,
92
+ computed,
93
+ configure,
94
+ createAtom,
95
+ apiDefineProperty as defineProperty,
96
+ entries,
97
+ extendObservable,
98
+ flow,
99
+ flowResult,
100
+ get,
101
+ getAtom,
102
+ getDebugName,
103
+ getDependencyTree,
104
+ getObserverTree,
105
+ has,
106
+ intercept,
107
+ isAction,
108
+ isObservableValue as isBoxedObservable,
109
+ isComputed,
110
+ isComputedProp,
111
+ isFlow,
112
+ isFlowCancellationError,
113
+ isObservable,
114
+ isObservableArray,
115
+ isObservableMap,
116
+ isObservableObject,
117
+ isObservableProp,
118
+ isObservableSet,
119
+ keys,
120
+ makeAutoObservable,
121
+ makeObservable,
122
+ observable,
123
+ observe,
124
+ onBecomeObserved,
125
+ onBecomeUnobserved,
126
+ onReactionError,
127
+ override,
128
+ apiOwnKeys as ownKeys,
129
+ reaction,
130
+ remove,
131
+ runInAction,
132
+ set,
133
+ spy,
134
+ toJS,
135
+ trace,
136
+ transaction,
137
+ untracked,
138
+ values,
139
+ when
140
+ };
141
+ //# sourceMappingURL=mobx.min.js.map
@@ -1,7 +1,9 @@
1
1
  import { CarReader } from '@ipld/car';
2
2
  import { CID } from 'multiformats';
3
3
  export interface StorageConnector {
4
- retrieveCar(cid: CID): Promise<CarReader>;
5
4
  storeCar(car: Blob): Promise<CID>;
6
5
  }
6
+ export interface RetrievalConnector {
7
+ retrieveCar(cid: CID): Promise<CarReader>;
8
+ }
7
9
  //# sourceMappingURL=connector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"connector.d.ts","sourceRoot":"","sources":["../../src/pubsub/connector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAElC,MAAM,WAAW,gBAAgB;IAChC,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IAEzC,QAAQ,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;CACjC"}
1
+ {"version":3,"file":"connector.d.ts","sourceRoot":"","sources":["../../src/pubsub/connector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAElC,MAAM,WAAW,gBAAgB;IAChC,QAAQ,CAAC,GAAG,EAAE,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;CACjC;AACD,MAAM,WAAW,kBAAkB;IAClC,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;CACzC"}
@@ -0,0 +1,14 @@
1
+ import { CID } from 'multiformats';
2
+ import { EntityID } from '../applog/datom-types';
3
+ import { Thread } from '../thread';
4
+ export type PubPullData = {
5
+ cid: CID;
6
+ thread: Thread;
7
+ };
8
+ export declare function integratePub({ targetThread, agentHash, subID, pubData }: {
9
+ targetThread: Thread;
10
+ agentHash: EntityID;
11
+ pubData: PubPullData;
12
+ subID?: EntityID;
13
+ }): import("../applog/datom-types").Applog[];
14
+ //# sourceMappingURL=pub-pull.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pub-pull.d.ts","sourceRoot":"","sources":["../../src/pubsub/pub-pull.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAIlC,MAAM,MAAM,WAAW,GAAG;IACzB,GAAG,EAAE,GAAG,CAAA;IACR,MAAM,EAAE,MAAM,CAAA;CACd,CAAA;AAED,wBAAgB,YAAY,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IACzE,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,QAAQ,CAAA;IACnB,OAAO,EAAE,WAAW,CAAA;IACpB,KAAK,CAAC,EAAE,QAAQ,CAAA;CAChB,4CAYA"}
@@ -0,0 +1,41 @@
1
+ import { CID } from 'multiformats/cid';
2
+ import type { Applog, ApplogArrayMaybeEncryptedRO, ApplogArrayNoCIDMaybeEncryptedRO } from '../applog/datom-types';
3
+ import { BlockStoreish } from '../ipfs/car';
4
+ import { ApplogsOrThread, Thread } from '../thread';
5
+ import type { AppAgent, IPublication, PubBlockChunks, PubBlockLogsOrChunks } from './pubsub-types';
6
+ export declare function preparePubForPush(agent: AppAgent, appThread: Thread, threadToPublish: ApplogsOrThread, publication: IPublication, prevPubCID: CID | null): Promise<{
7
+ cid: CID<unknown, 297, 18, 1>;
8
+ blob: Blob;
9
+ blocks: import("multiformats").BlockView<unknown, 297, 18, 1>[];
10
+ infoLogCids: CID<unknown, 297, 18, 1>[];
11
+ applogCids: CID<unknown, 297, 18, 1>[];
12
+ }>;
13
+ /**
14
+ * @param applogs Encrypted or plain applogs
15
+ * @returns Car file
16
+ */
17
+ export declare function encodePubAsCar(agent: AppAgent, applogs: ApplogArrayNoCIDMaybeEncryptedRO, infoLogs: readonly Applog[], prevPubCID: CID | null): Promise<{
18
+ cid: CID<unknown, 297, 18, 1>;
19
+ blob: Blob;
20
+ blocks: import("multiformats").BlockView<unknown, 297, 18, 1>[];
21
+ infoLogCids: CID<unknown, 297, 18, 1>[];
22
+ applogCids: CID<unknown, 297, 18, 1>[];
23
+ }>;
24
+ /** (i) IPFS has a block size limit of 1MB - which is about 15K CIDs */
25
+ export declare function chunkApplogs(applogCids: CID<unknown, 297, 18, 1>[], size?: number): Promise<{
26
+ rootCID: any;
27
+ blocks: any[];
28
+ chunks?: undefined;
29
+ } | {
30
+ rootCID: CID<unknown, 297, 18, 1>;
31
+ blocks: any[];
32
+ chunks: any[];
33
+ }>;
34
+ export declare function unchunkApplogsBlock(block: PubBlockLogsOrChunks, blockStore: BlockStoreish): Promise<CID[]>;
35
+ export declare function isPubBlockChunks(block: PubBlockLogsOrChunks): block is PubBlockChunks;
36
+ /**
37
+ * @param applogs Encrypted or plain applogs
38
+ * @returns Car file
39
+ */
40
+ export declare function encodeApplogsAsCar(applogs: ApplogArrayMaybeEncryptedRO): Promise<Blob>;
41
+ //# sourceMappingURL=pub-push.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pub-push.d.ts","sourceRoot":"","sources":["../../src/pubsub/pub-push.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAGtC,OAAO,KAAK,EACX,MAAM,EAEN,2BAA2B,EAC3B,gCAAgC,EAIhC,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,aAAa,EAA4C,MAAM,aAAa,CAAA;AAGrF,OAAO,EAAE,eAAe,EAAqB,MAAM,EAAE,MAAM,WAAW,CAAA;AAGtE,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAgB,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAehH,wBAAsB,iBAAiB,CACtC,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,eAAe,EAChC,WAAW,EAAE,YAAY,EACzB,UAAU,EAAE,GAAG,GAAG,IAAI;;;;;;GAyHtB;AAED;;;GAGG;AACH,wBAAsB,cAAc,CACnC,KAAK,EAAE,QAAQ,EACf,OAAO,EAAE,gCAAgC,EACzC,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,UAAU,EAAE,GAAG,GAAG,IAAI;;;;;;GAgCtB;AAED,uEAAuE;AACvE,wBAAsB,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,SAAQ;;;;;;;;GAatF;AACD,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,oBAAoB,EAAE,UAAU,EAAE,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAYhH;AACD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,oBAAoB,GAAG,KAAK,IAAI,cAAc,CAErF;AACD;;;GAGG;AACH,wBAAsB,kBAAkB,CACvC,OAAO,EAAE,2BAA2B,iBAUpC"}
@@ -1,3 +1,4 @@
1
+ import { CID } from 'multiformats/cid';
1
2
  import { AgentHash, AgentID } from '../applog/datom-types';
2
3
  import { Tagged } from '../types';
3
4
  type AgentString = Tagged<string, 'AgentString'>;
@@ -9,16 +10,39 @@ export interface AppAgent {
9
10
  did: DIDString;
10
11
  sign(data: Uint8Array): Promise<Uint8Array>;
11
12
  }
13
+ export interface AppAgentForWorker {
14
+ ag: AgentHash;
15
+ agentString: AgentString;
16
+ did: DIDString;
17
+ signerSecret?: Uint8Array;
18
+ sign?: (data: Uint8Array) => Promise<Uint8Array>;
19
+ }
20
+ export interface PubBlockRoot {
21
+ applogs: CID;
22
+ applogsSignature: Uint8Array;
23
+ info: CID;
24
+ infoSignature: Uint8Array;
25
+ prev?: CID;
26
+ }
27
+ export interface PubBlockLogs {
28
+ logs: CID[];
29
+ }
30
+ export interface PubBlockChunks {
31
+ chunks: CID[];
32
+ }
33
+ export type PubBlockLogsOrChunks = PubBlockLogs | PubBlockChunks;
12
34
  export interface IPublication {
13
35
  id?: string;
14
36
  createdAt: string;
15
37
  name: string;
16
38
  isDeleted?: boolean;
39
+ purgeBeforePush?: boolean;
17
40
  pk: Uint8Array;
18
41
  autopush: boolean;
19
42
  lastPush: string | null;
20
43
  lastCID?: string;
21
44
  latestLogTs?: string;
45
+ pubCounter?: number;
22
46
  publishedBy: string;
23
47
  selectors?: string[];
24
48
  encryptedFor?: string | null;
@@ -36,6 +60,7 @@ export interface ISubscription {
36
60
  lastPullAttempt?: string | null;
37
61
  autopull: boolean;
38
62
  lastCID?: string;
63
+ lastApplogCID?: string;
39
64
  publishedBy?: string;
40
65
  encryptedFor?: string | undefined;
41
66
  encryptedWith?: CryptoKey | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"pubsub-types.d.ts","sourceRoot":"","sources":["../../src/pubsub/pubsub-types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,KAAK,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;AAChD,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;AACtC,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,CAAA;AAEjD,MAAM,WAAW,QAAQ;IACxB,EAAE,EAAE,SAAS,CAAA;IACb,WAAW,EAAE,WAAW,CAAA;IACxB,GAAG,EAAE,SAAS,CAAA;IAEd,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;CAC3C;AAED,MAAM,WAAW,YAAY;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB,EAAE,EAAE,UAAU,CAAA;IAEd,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,aAAa,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IAGhC,SAAS,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IAC5B,YAAY,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;IAC/B,YAAY,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;CAC1C;AACD,MAAM,WAAW,aAAa;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,OAAO,CAAA;IAElB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,QAAQ,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACjC,aAAa,CAAC,EAAE,SAAS,GAAG,SAAS,CAAA;CACrC;AACD,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,YAAY,CAE3D;AACD,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,aAAa,CAE7D;AAED,MAAM,MAAM,OAAO,GAAG,YAAY,GAAG,aAAa,CAAA;AAElD,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,UAEnD"}
1
+ {"version":3,"file":"pubsub-types.d.ts","sourceRoot":"","sources":["../../src/pubsub/pubsub-types.ts"],"names":[],"mappings":"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"}
package/dist/pubsub.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from './pubsub/connector';
2
- export * from './pubsub/publication';
2
+ export * from './pubsub/pub-pull';
3
+ export * from './pubsub/pub-push';
3
4
  export * from './pubsub/pubsub-types';
4
5
  //# sourceMappingURL=pubsub.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pubsub.d.ts","sourceRoot":"","sources":["../src/pubsub.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA"}
1
+ {"version":3,"file":"pubsub.d.ts","sourceRoot":"","sources":["../src/pubsub.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,uBAAuB,CAAA"}
@@ -1,22 +1,33 @@
1
1
  import {
2
2
  agentToShortHash,
3
+ chunkApplogs,
3
4
  encodeApplogsAsCar,
4
5
  encodePubAsCar,
6
+ integratePub,
7
+ isPubBlockChunks,
5
8
  isPublication,
6
9
  isSubscription,
7
- preparePubForPush
8
- } from "./chunk-WIE7ME3N.min.js";
9
- import "./chunk-RMPMFLPZ.min.js";
10
- import "./chunk-QXKFFDHN.min.js";
11
- import "./chunk-PG6EJTCU.min.js";
12
- import "./chunk-PTGUFZ3Q.min.js";
10
+ preparePubForPush,
11
+ unchunkApplogsBlock
12
+ } from "./chunk-BLAIQY2K.min.js";
13
+ import "./chunk-QPGEBDMJ.min.js";
14
+ import "./chunk-7IDQIMQO.min.js";
15
+ import "./chunk-4432UCLM.min.js";
16
+ import "./chunk-ITYJ7DMX.min.js";
17
+ import "./chunk-DF3UOPRV.min.js";
18
+ import "./chunk-5MMGBK2U.min.js";
19
+ import "./chunk-5UN776TZ.min.js";
13
20
  import "./chunk-KRQZ6V4Y.min.js";
14
21
  export {
15
22
  agentToShortHash,
23
+ chunkApplogs,
16
24
  encodeApplogsAsCar,
17
25
  encodePubAsCar,
26
+ integratePub,
27
+ isPubBlockChunks,
18
28
  isPublication,
19
29
  isSubscription,
20
- preparePubForPush
30
+ preparePubForPush,
31
+ unchunkApplogsBlock
21
32
  };
22
33
  //# sourceMappingURL=pubsub.min.js.map
@@ -1,4 +1,4 @@
1
- import { Applog, ApplogValue, DatalogQueryPattern, EntityID, SearchContext } from '../applog/datom-types';
1
+ import { AgentHash, Applog, ApplogValue, DatalogQueryPattern, EntityID, SearchContext } from '../applog/datom-types';
2
2
  import { Thread } from '../thread/basic';
3
3
  import { ThreadOnlyCurrent } from '../thread/filters';
4
4
  import { MappedThread } from '../thread/mapped';
@@ -15,7 +15,7 @@ export declare const lastWriteWins: (thread: Thread, { inverseToOnlyReturnFirstL
15
15
  * ! WARNING: If not based on lastWriteWins, it will not respect un-deletions yet (isDeleted: false)
16
16
  */
17
17
  export declare const withoutDeleted: (thread: Thread) => MappedThread;
18
- export declare const query: (thread: Thread, patternOrPatterns: DatalogQueryPattern | DatalogQueryPattern[], startVariables?: SearchContext, opts?: {
18
+ export declare const query: (threadOrLogs: Thread | Applog[], patternOrPatterns: DatalogQueryPattern | DatalogQueryPattern[], startVariables?: SearchContext, opts?: {
19
19
  debug?: boolean;
20
20
  }) => QueryResult;
21
21
  export declare const queryStep: (thread: Thread, nodeSet: QueryResult | null, pattern: DatalogQueryPattern, opts?: {
@@ -33,18 +33,50 @@ export declare const filterAndMap: <R>(thread: Thread, pattern: DatalogQueryPatt
33
33
  at: string;
34
34
  vl: string;
35
35
  }> | ((applog: Applog) => R)) => import("..").ReadonlyObservableArray<any>;
36
- export declare const queryAndMap: <R>(thread: Thread, patternOrPatterns: DatalogQueryPattern | DatalogQueryPattern[], map: string | ((record: SearchContext) => R), variables?: SearchContext) => import("..").ReadonlyObservableArray<any>;
37
- export declare const queryEntity: <R>(thread: Thread, name: string, entityID: EntityID, attributes: readonly string[]) => import("mobx").IComputedValue<{
36
+ export declare const queryAndMap: <R>(threadOrLogs: Thread | Applog[], patternOrPatterns: Parameters<typeof query>[1], mapDef: string | Partial<{
37
+ [x: string]: string;
38
+ }> | ((record: SearchContext) => R), variables?: SearchContext) => import("..").ReadonlyObservableArray<any>;
39
+ export declare const queryEntity: (thread: Thread, name: string, entityID: EntityID, attributes: readonly string[]) => import("mobx").IComputedValue<{
38
40
  [k: string]: ApplogValue;
39
41
  }>;
40
- export declare const agentsOfThread: <R>(thread: Thread) => import("mobx").ObservableMap<string, number>;
42
+ export declare const agentsOfThread: (thread: Thread) => import("mobx").ObservableMap<string, number>;
41
43
  export declare const entityOverlap: (threadA: Thread, threadB: Thread) => import("mobx").IComputedValue<string[]>;
42
44
  export declare const entityOverlapMap: (threadA: Thread, threadB: Thread, threadAName?: string, threadBName?: string) => void;
43
45
  export declare const entityOverlapCount: (threadA: Thread, threadB: Thread) => import("mobx").IComputedValue<number>;
44
- export declare function mapTo(applogFieldMap: Partial<{
45
- [key in keyof Applog]: string;
46
- }>): (applog: any) => SearchContext;
46
+ export declare const querySingle: (threadOrLogs: Thread | Applog[], patternOrPatterns: Parameters<typeof query>[1], variables?: SearchContext) => import("mobx").IComputedValue<Applog>;
47
+ export declare const querySingleAndMap: <MAP extends keyof Applog | Partial<{
48
+ cid: string;
49
+ pv: string;
50
+ ts: string;
51
+ ag: string;
52
+ en: string;
53
+ at: string;
54
+ vl: string;
55
+ }>>(threadOrLogs: Thread | Applog[], patternOrPatterns: Parameters<typeof query>[1], mapDef: MAP, variables?: SearchContext) => import("mobx").IComputedValue<ApplogValue | { [key in keyof MAP]: ApplogValue; }>;
56
+ export declare const mapThreadWith: <R>(thread: Thread, mapDef: keyof Applog | Partial<{
57
+ cid: string;
58
+ pv: string;
59
+ ts: string;
60
+ ag: string;
61
+ en: string;
62
+ at: string;
63
+ vl: string;
64
+ }> | ((applog: Applog) => R)) => R[] | (AgentHash | import("../applog/datom-types").CidString | ApplogValue)[] | Partial<{
65
+ [x: string]: ApplogValue;
66
+ }>[];
67
+ export declare const mapQueryResultWith: <R>(queryResult: QueryResult, mapDef: string | Partial<{
68
+ [x: string]: string;
69
+ }> | ((record: SearchContext) => R)) => any[];
70
+ /**
71
+ * Map Applog to custom named record, e.g.:
72
+ * { en: 'movieID', vl: 'movieName' }
73
+ * will map the applog to { movieID: .., movieName: .. }
74
+ */
75
+ export declare function createObjMapper<FROM extends string, TO extends string>(applogFieldMap: Partial<{
76
+ [key in FROM]: TO;
77
+ }>): (applog: { [key in FROM]: any; }) => Partial<{ [key_1 in TO]: ApplogValue; }>;
47
78
  export declare function startsWith(str: string): (value: any) => any;
48
79
  export declare function prefixAttrs(prefix: string, attrs: readonly string[]): string[];
49
80
  export declare function prefixAt(prefix: string, attr: string): string;
81
+ export declare function threadFromMaybeArray(threadOrLogs: Thread | Applog[]): Thread;
50
82
  //# sourceMappingURL=basic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"basic.d.ts","sourceRoot":"","sources":["../../src/query/basic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,mBAAmB,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAezG,OAAO,EAAe,MAAM,EAAe,MAAM,iBAAiB,CAAA;AAClE,OAAO,EAAgC,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAE/C,OAAO,EAAa,WAAW,EAAE,MAAM,SAAS,CAAA;AAqBhD;;GAEG;AACH,eAAO,MAAM,aAAa,WACjB,MAAM;mCAEkB,OAAO;8BACZ,OAAO;MAEhC,iBAgFkH,CAAA;AAErH;;;GAGG;AACH,eAAO,MAAM,cAAc,WAClB,MAAM,iBAsBqB,CAAA;AAoBpC,eAAO,MAAM,KAAK,WACT,MAAM,qBACK,mBAAmB,GAAG,mBAAmB,EAAE,mBAC9C,aAAa,SACvB;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,gBAqBxB,CAAA;AAEF,eAAO,MAAM,SAAS,WACb,MAAM,WACL,WAAW,GAAG,IAAI,WAClB,mBAAmB,SAEtB;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,gBAoE+G,CAAA;AAEzI,eAAO,MAAM,QAAQ,WACZ,MAAM,cACF,WAAW,qBACJ,mBAAmB,GAAG,mBAAmB,EAAE,SACxD;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,gBAoB6G,CAAA;AA8BvI,eAAO,MAAM,YAAY,cAChB,MAAM,WACL,mBAAmB;;;;;;;;eACsD,MAAM,qDAqB4C,CAAA;AAErI,eAAO,MAAM,WAAW,cACf,MAAM,qBACK,mBAAmB,GAAG,mBAAmB,EAAE,0BACtC,aAAa,qBAC1B,aAAa,8CAqB2G,CAAA;AAEpI,eAAO,MAAM,WAAW,cACf,MAAM,QACR,MAAM,YACF,QAAQ,cACN,SAAS,MAAM,EAAE;;EAc5B,CAAA;AAEF,eAAO,MAAM,cAAc,cAClB,MAAM,iDAuBb,CAAA;AAEF,eAAO,MAAM,aAAa,YAChB,MAAM,WACN,MAAM,4CASd,CAAA;AAEF,eAAO,MAAM,gBAAgB,YACnB,MAAM,WACN,MAAM,qDAaf,CAAA;AAED,eAAO,MAAM,kBAAkB,YAEO,MAAM,WAAW,MAAM,0CAG5D,CAAA;AAMD,wBAAgB,KAAK,CAAC,cAAc,EAAE,OAAO,CAAC;KAAG,GAAG,IAAI,MAAM,MAAM,GAAG,MAAM;CAAE,CAAC,kCAO/E;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,uBAErC;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,YAEnE;AACD,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAEpD"}
1
+ {"version":3,"file":"basic.d.ts","sourceRoot":"","sources":["../../src/query/basic.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"divergences.d.ts","sourceRoot":"","sources":["../../src/query/divergences.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAE9C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAIpD,MAAM,WAAW,cAAc;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;CACd;AAED,eAAO,MAAM,sBAAsB,iBACpB,MAAM;;;EAqCc,CAAA"}
1
+ {"version":3,"file":"divergences.d.ts","sourceRoot":"","sources":["../../src/query/divergences.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAa,MAAM,uBAAuB,CAAA;AAEzD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAIpD,MAAM,WAAW,cAAc;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;CACd;AAED,eAAO,MAAM,sBAAsB,iBACpB,MAAM;;;EAqCc,CAAA"}
package/dist/query.min.js CHANGED
@@ -1,40 +1,48 @@
1
- import {
2
- includedIn,
3
- includes,
4
- queryDivergencesByPrev
5
- } from "./chunk-GJGWIEIE.min.js";
6
1
  import {
7
2
  QueryNode,
8
3
  QueryResult,
9
4
  agentsOfThread,
10
- applogThreadComparer,
11
- autorunButAlsoImmediately,
12
- computedFnDeepCompare,
13
- computedStructuralComparer,
14
- createDebugName,
15
- createDebugNameObj,
5
+ createObjMapper,
16
6
  entityOverlap,
17
7
  entityOverlapCount,
18
8
  entityOverlapMap,
19
9
  filterAndMap,
10
+ includedIn,
11
+ includes,
20
12
  lastWriteWins,
21
- mapTo,
22
- observableArrayMap,
23
- observableMapMap,
13
+ mapQueryResultWith,
14
+ mapThreadWith,
24
15
  prefixAt,
25
16
  prefixAttrs,
26
- prettifyThreadName,
27
17
  query,
28
18
  queryAndMap,
19
+ queryDivergencesByPrev,
29
20
  queryEntity,
30
- queryNodesComparer,
31
21
  queryNot,
22
+ querySingle,
23
+ querySingleAndMap,
32
24
  queryStep,
33
25
  startsWith,
26
+ threadFromMaybeArray,
34
27
  withoutDeleted
35
- } from "./chunk-QXKFFDHN.min.js";
36
- import "./chunk-PG6EJTCU.min.js";
37
- import "./chunk-PTGUFZ3Q.min.js";
28
+ } from "./chunk-4432UCLM.min.js";
29
+ import {
30
+ applogThreadComparer,
31
+ autorunButAlsoImmediately,
32
+ computedFnDeepCompare,
33
+ computedStructuralComparer,
34
+ createDebugName,
35
+ createDebugNameObj,
36
+ observableArrayMap,
37
+ observableMapMap,
38
+ observableMapToObject,
39
+ observableSetMap,
40
+ prettifyThreadName,
41
+ queryNodesComparer,
42
+ rootsQueries
43
+ } from "./chunk-ITYJ7DMX.min.js";
44
+ import "./chunk-DF3UOPRV.min.js";
45
+ import "./chunk-5UN776TZ.min.js";
38
46
  import "./chunk-KRQZ6V4Y.min.js";
39
47
  export {
40
48
  QueryNode,
@@ -46,6 +54,7 @@ export {
46
54
  computedStructuralComparer,
47
55
  createDebugName,
48
56
  createDebugNameObj,
57
+ createObjMapper,
49
58
  entityOverlap,
50
59
  entityOverlapCount,
51
60
  entityOverlapMap,
@@ -53,9 +62,12 @@ export {
53
62
  includedIn,
54
63
  includes,
55
64
  lastWriteWins,
56
- mapTo,
65
+ mapQueryResultWith,
66
+ mapThreadWith,
57
67
  observableArrayMap,
58
68
  observableMapMap,
69
+ observableMapToObject,
70
+ observableSetMap,
59
71
  prefixAt,
60
72
  prefixAttrs,
61
73
  prettifyThreadName,
@@ -65,8 +77,12 @@ export {
65
77
  queryEntity,
66
78
  queryNodesComparer,
67
79
  queryNot,
80
+ querySingle,
81
+ querySingleAndMap,
68
82
  queryStep,
83
+ rootsQueries,
69
84
  startsWith,
85
+ threadFromMaybeArray,
70
86
  withoutDeleted
71
87
  };
72
88
  //# sourceMappingURL=query.min.js.map
@@ -1,4 +1,5 @@
1
1
  import { IObservableArray } from 'mobx';
2
+ import { CID } from 'multiformats';
2
3
  import { type Applog, ApplogForInsert, CidString } from '../applog/datom-types';
3
4
  import { ArrayOrSingle } from '../types/typescript-utils';
4
5
  export type ThreadEvent = {
@@ -17,26 +18,45 @@ export declare abstract class Thread {
17
18
  readonly filters: readonly string[];
18
19
  readonly parents: IObservableArray<Thread> | Thread[] | readonly Thread[] | null;
19
20
  protected _subscribers: ((event: ThreadEvent) => void)[];
20
- constructor(name: string, /* = null */ parents: ArrayOrSingle<Thread> | IObservableArray<Thread> | readonly Thread[] | null, filters: readonly string[], _applogs?: Applog[]);
21
+ constructor(name: string, /* = null */ parents: ArrayOrSingle<Thread> | IObservableArray<Thread> | readonly Thread[] | null, filters: readonly string[], _applogs?: Applog[], opts?: {
22
+ skipObservable?: boolean;
23
+ });
21
24
  get readOnly(): any;
22
- insert(appLogsToInsert: ApplogForInsert[]): any;
23
- insertRaw(appLogsToInsert: Applog[]): any;
25
+ insert(appLogsToInsert: readonly ApplogForInsert[]): any;
26
+ insertRaw(appLogsToInsert: readonly Applog[]): any;
24
27
  subscribe(callback: (event: ThreadEvent) => void): () => void;
25
28
  unsubscribe(callback: (event: ThreadEvent) => void): void;
26
29
  protected notifySubscribers(event: ThreadEvent): void;
27
30
  get applogs(): readonly Applog[];
28
31
  get applogsCids(): readonly CidString[];
29
32
  map<R>(fn: (applog: Applog) => R): R[];
33
+ get findLast(): {
34
+ <S extends Applog>(predicate: (value: Applog, index: number, array: readonly Applog[]) => value is S, thisArg?: any): S;
35
+ (predicate: (value: Applog, index: number, array: readonly Applog[]) => unknown, thisArg?: any): Applog;
36
+ };
37
+ get findFirst(): {
38
+ <S extends Applog>(predicate: (value: Applog, index: number, obj: readonly Applog[]) => value is S, thisArg?: any): S;
39
+ (predicate: (value: Applog, index: number, obj: readonly Applog[]) => unknown, thisArg?: any): Applog;
40
+ };
30
41
  get firstLog(): Applog;
31
42
  get latestLog(): Applog;
32
43
  hasApplog(applog: Applog, byRef: boolean): boolean;
33
- hasApplogCid(cid: CidString): boolean;
44
+ hasApplogCid(cid: CID | CidString): boolean;
45
+ get applogsByCid(): Map<CidString, Applog>;
46
+ getApplog(cid: CID | CidString): Applog;
34
47
  hasApplogWithDiffTs(applog: ApplogForInsert): Applog;
35
48
  get isEmpty(): boolean;
36
49
  get size(): number;
50
+ get length(): number;
37
51
  get untrackedSize(): number;
38
52
  get nameAndSizeUntracked(): string;
39
53
  get prettyName(): string;
54
+ get hasParents(): boolean;
40
55
  }
41
56
  export declare const getLogsFromThread: (logsOrThread: ApplogsOrThread) => readonly Applog[];
57
+ export declare class StaticThread extends Thread {
58
+ static fromArray(applogs: Applog[], name?: string): StaticThread;
59
+ constructor(name: string, /* = null */ parents: ArrayOrSingle<Thread> | IObservableArray<Thread> | readonly Thread[] | null, filters: readonly string[], _applogs: Applog[]);
60
+ get readOnly(): boolean;
61
+ }
42
62
  //# sourceMappingURL=basic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"basic.d.ts","sourceRoot":"","sources":["../../src/thread/basic.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,gBAAgB,EAA6B,MAAM,MAAM,CAAA;AAM9F,OAAO,EAAE,KAAK,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAE/E,OAAO,EAAiB,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAIxE,MAAM,MAAM,WAAW,GAAG;IAAE,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAAA;AACvH,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,KAAK,IAAI;IAAE,IAAI,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAEpF;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,SAAS,MAAM,EAAE,CAAA;AAExD,8BAAsB,MAAM;IAM1B,QAAQ,CAAC,IAAI,EAAE,MAAM;IAGrB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE;IAR7B,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;IACnC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE,GAAG,IAAI,CAAA;IAChF,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC,EAAE,CAAK;gBAGnD,IAAI,EAAE,MAAM,EAAE,YAAY,CACnC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC,GAAG,SAAS,MAAM,EAAE,GAAG,IAAI,EACpF,OAAO,EAAE,SAAS,MAAM,EAAE,EAChB,QAAQ,GAAE,MAAM,EAAO;IAmBlC,IAAI,QAAQ,QAGX;IAEM,MAAM,CAAC,eAAe,EAAE,eAAe,EAAE;IAMzC,SAAS,CAAC,eAAe,EAAE,MAAM,EAAE;IAO1C,SAAS,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI;IAKhD,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI;IAOlD,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,WAAW;IAO9C,IAAI,OAAO,IAAI,SAAS,MAAM,EAAE,CAG/B;IACD,IAAI,WAAW,IAAI,SAAS,SAAS,EAAE,CAEtC;IAEM,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC;IAKvC,IAAI,QAAQ,WAEX;IACD,IAAI,SAAS,WAEZ;IACM,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;IAgBxC,YAAY,CAAC,GAAG,EAAE,SAAS;IAI3B,mBAAmB,CAAC,MAAM,EAAE,eAAe;IAUlD,IAAI,OAAO,YAEV;IACD,IAAI,IAAI,WAEP;IACD,IAAI,aAAa,WAEhB;IACD,IAAI,oBAAoB,WAEvB;IACD,IAAI,UAAU,WAEb;CACD;AAED,eAAO,MAAM,iBAAiB,iBAAkB,eAAe,sBAAyE,CAAA"}
1
+ {"version":3,"file":"basic.d.ts","sourceRoot":"","sources":["../../src/thread/basic.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ export declare const rollingAcc: <ACC extends IObservableArray<any> | Observable
14
14
  name?: string;
15
15
  }) => ACC;
16
16
  export declare const getUntrackedPattern: (pattern: DatalogQueryPattern) => {
17
- [k: string]: string | boolean | Number | import("../applog/datom-types").AgentHash | CidString | readonly string[] | ((value: string) => boolean) | readonly CidString[] | ((value: CidString) => boolean) | readonly import("../applog/datom-types").AgentHash[] | ((value: import("../applog/datom-types").AgentHash) => boolean) | readonly ApplogValue[] | ((value: ApplogValue) => boolean);
17
+ [k: string]: string | number | boolean | import("../applog/datom-types").AgentHash | CidString | ReadonlySet<string> | readonly string[] | ((value: string) => boolean) | ReadonlySet<CidString> | readonly CidString[] | ((value: CidString) => boolean) | ReadonlySet<import("../applog/datom-types").AgentHash> | readonly import("../applog/datom-types").AgentHash[] | ((value: import("../applog/datom-types").AgentHash) => boolean) | ReadonlySet<ApplogValue> | readonly ApplogValue[] | ((value: ApplogValue) => boolean);
18
18
  };
19
19
  export declare function makeFilter(pattern: DatalogQueryPattern): (logs: readonly Applog[]) => Applog[];
20
20
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"filters.d.ts","sourceRoot":"","sources":["../../src/thread/filters.ts"],"names":[],"mappings":"AACA,OAAO,EAGN,gBAAgB,EAEhB,aAAa,EACb,aAAa,EAKb,MAAM,MAAM,CAAA;AAIb,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,SAAS,EAAE,mBAAmB,EAAkB,MAAM,uBAAuB,CAAA;AAE5H,OAAO,EAAe,MAAM,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAI1D,eAAO,MAAM,aAAa,WACjB,MAAM,WACL,mBAAmB,SACtB;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,iBA8DhD,CAAA;AAEF,eAAO,MAAM,aAAa,WACjB,MAAM,eACD,iBAAiB,SACxB;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,iBAkBhD,CAAA;AAEF,eAAO,MAAM,UAAU,6FAGb,MAAM,iCAEO,WAAW,eAAe,IAAI,SAC7C;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,QAYxB,CAAA;AAwBD,eAAO,MAAM,mBAAmB,YACtB,mBAAmB;;CAO5B,CAAA;AACD,wBAAgB,UAAU,CACzB,OAAO,EAAE,mBAAmB,UAEd,SAAS,MAAM,EAAE,cAY/B;AAED;;GAEG;AACH,eAAO,MAAM,yBAAyB,WAC7B,MAAM,WACL,mBAAmB,SACtB;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,aAKvB,CAAA;AAKD,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,MAAM,IAAI,MAAM,GAAG;IACzD,OAAO,EAAE,SAAS,CAAC,EAAE,CAAA;CACrB,CAAA;AACD,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAEpG;AACD,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,wBAKvC;AACD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM;;;;EAM/C;AACD,MAAM,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAA;AACjE,MAAM,MAAM,eAAe,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,CAAA;AAChE,MAAM,MAAM,0BAA0B,GAAG,gBAAgB,CAAC,eAAe,GAAG,gBAAgB,CAAC,CAAA;AAC7F,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG;IAAE,OAAO,EAAE,EAAE,CAAA;CAAE,CAAA;AAM3D,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,eAAe,CAAA;AACjF,eAAO,MAAM,kBAAkB,WACtB,MAAM,aACH,YAAY,SACjB;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,iBAwDjD,CAAA"}
1
+ {"version":3,"file":"filters.d.ts","sourceRoot":"","sources":["../../src/thread/filters.ts"],"names":[],"mappings":"AACA,OAAO,EAGN,gBAAgB,EAEhB,aAAa,EACb,aAAa,EAKb,MAAM,MAAM,CAAA;AAIb,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,SAAS,EAAE,mBAAmB,EAAkB,MAAM,uBAAuB,CAAA;AAE5H,OAAO,EAAe,MAAM,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAI1D,eAAO,MAAM,aAAa,WACjB,MAAM,WACL,mBAAmB,SACtB;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,iBAmEhD,CAAA;AAEF,eAAO,MAAM,aAAa,WACjB,MAAM,eACD,iBAAiB,SACxB;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,iBAmBhD,CAAA;AAEF,eAAO,MAAM,UAAU,6FAGb,MAAM,OACT,GAAG,eACK,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,SAC7C;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,QAYxB,CAAA;AAwBD,eAAO,MAAM,mBAAmB,YACtB,mBAAmB;;CAS5B,CAAA;AACD,wBAAgB,UAAU,CACzB,OAAO,EAAE,mBAAmB,UAEK,SAAS,MAAM,EAAE,cAclD;AAED;;GAEG;AACH,eAAO,MAAM,yBAAyB,WAC7B,MAAM,WACL,mBAAmB,SACtB;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,aAKvB,CAAA;AAKD,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,MAAM,IAAI,MAAM,GAAG;IACzD,OAAO,EAAE,SAAS,CAAC,EAAE,CAAA;CACrB,CAAA;AACD,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAEpG;AACD,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,wBAKvC;AACD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM;;;;EAM/C;AACD,MAAM,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAA;AACjE,MAAM,MAAM,eAAe,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,CAAA;AAChE,MAAM,MAAM,0BAA0B,GAAG,gBAAgB,CAAC,eAAe,GAAG,gBAAgB,CAAC,CAAA;AAC7F,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG;IAAE,OAAO,EAAE,EAAE,CAAA;CAAE,CAAA;AAM3D,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,eAAe,CAAA;AACjF,eAAO,MAAM,kBAAkB,WACtB,MAAM,aACH,YAAY,SACjB;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,iBAwDjD,CAAA"}