@peerbit/document 13.1.5 → 13.1.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.
- package/dist/src/resumable-iterator.d.ts +5 -0
- package/dist/src/resumable-iterator.d.ts.map +1 -1
- package/dist/src/resumable-iterator.js +58 -20
- package/dist/src/resumable-iterator.js.map +1 -1
- package/dist/src/search.d.ts +7 -7
- package/dist/src/search.d.ts.map +1 -1
- package/dist/src/search.js +116 -41
- package/dist/src/search.js.map +1 -1
- package/package.json +13 -13
- package/src/resumable-iterator.ts +68 -20
- package/src/search.ts +165 -42
|
@@ -8,11 +8,15 @@ export declare class ResumableIterators<T extends Record<string, any>> {
|
|
|
8
8
|
request: SearchRequest | SearchRequestIndexed | IterationRequest;
|
|
9
9
|
keepAlive: boolean;
|
|
10
10
|
}>;
|
|
11
|
+
private readonly pendingMarks;
|
|
11
12
|
constructor(index: indexerTypes.Index<T>, queues?: Cache<{
|
|
12
13
|
iterator: indexerTypes.IndexIterator<T, undefined>;
|
|
13
14
|
request: SearchRequest | SearchRequestIndexed | IterationRequest;
|
|
14
15
|
keepAlive: boolean;
|
|
15
16
|
}>);
|
|
17
|
+
private markKey;
|
|
18
|
+
private retainMarks;
|
|
19
|
+
private applyPendingMarks;
|
|
16
20
|
iterateAndFetch(request: SearchRequest | SearchRequestIndexed | IterationRequest, options?: {
|
|
17
21
|
keepAlive?: boolean;
|
|
18
22
|
}): Promise<indexerTypes.IndexedResults<T>>;
|
|
@@ -26,5 +30,6 @@ export declare class ResumableIterators<T extends Record<string, any>> {
|
|
|
26
30
|
clearAll(): Promise<void>;
|
|
27
31
|
has(id: string): boolean;
|
|
28
32
|
getPending(id: string): Promise<number | undefined>;
|
|
33
|
+
markYielded(id: string, ids: Iterable<indexerTypes.IdKey>): Promise<void>;
|
|
29
34
|
}
|
|
30
35
|
//# sourceMappingURL=resumable-iterator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resumable-iterator.d.ts","sourceRoot":"","sources":["../../src/resumable-iterator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EACN,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,KAAK,YAAY,MAAM,4BAA4B,CAAC;AAKhE,qBAAa,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"resumable-iterator.d.ts","sourceRoot":"","sources":["../../src/resumable-iterator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EACN,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,KAAK,YAAY,MAAM,4BAA4B,CAAC;AAKhE,qBAAa,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAO3D,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IACrC,QAAQ,CAAC,MAAM;kBACJ,YAAY,CAAC,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC;iBACzC,aAAa,GAAG,oBAAoB,GAAG,gBAAgB;mBACrD,OAAO;;IAVpB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAGzB;gBAGM,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAC5B,MAAM;kBACJ,YAAY,CAAC,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC;iBACzC,aAAa,GAAG,oBAAoB,GAAG,gBAAgB;mBACrD,OAAO;MACH;IAKjB,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,WAAW;YAWL,iBAAiB;IAezB,eAAe,CACpB,OAAO,EAAE,aAAa,GAAG,oBAAoB,GAAG,gBAAgB,EAChE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE;IAmC5B,IAAI,CACT,OAAO,EACJ,aAAa,GACb,oBAAoB,GACpB,gBAAgB,GAChB,kBAAkB,EACrB,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE;IAgDlC,KAAK,CAAC,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE;IAOjC,OAAO,CAAC,KAAK;IAwBP,QAAQ;IAkBd,GAAG,CAAC,EAAE,EAAE,MAAM;IAIR,UAAU,CAAC,EAAE,EAAE,MAAM;IAmBrB,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC;CAO/D"}
|
|
@@ -5,40 +5,69 @@ const iteratorLogger = loggerFn("peerbit:document:index:iterate");
|
|
|
5
5
|
export class ResumableIterators {
|
|
6
6
|
index;
|
|
7
7
|
queues;
|
|
8
|
+
pendingMarks = new Map();
|
|
8
9
|
constructor(index, queues = new Cache({ max: 1e4 })) {
|
|
9
10
|
this.index = index;
|
|
10
11
|
this.queues = queues;
|
|
11
12
|
// TODO choose upper limit better
|
|
12
13
|
}
|
|
14
|
+
markKey(id) {
|
|
15
|
+
return `${id.key instanceof Uint8Array ? "bytes" : typeof id.key}:${String(id.primitive)}`;
|
|
16
|
+
}
|
|
17
|
+
retainMarks(id, ids) {
|
|
18
|
+
let retained = this.pendingMarks.get(id);
|
|
19
|
+
for (const mark of ids) {
|
|
20
|
+
if (!retained) {
|
|
21
|
+
retained = new Map();
|
|
22
|
+
this.pendingMarks.set(id, retained);
|
|
23
|
+
}
|
|
24
|
+
retained.set(this.markKey(mark), mark);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
async applyPendingMarks(id, iterator) {
|
|
28
|
+
while (true) {
|
|
29
|
+
const retained = this.pendingMarks.get(id);
|
|
30
|
+
if (!retained?.size) {
|
|
31
|
+
this.pendingMarks.delete(id);
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
this.pendingMarks.delete(id);
|
|
35
|
+
await iterator.markYielded?.(retained.values());
|
|
36
|
+
}
|
|
37
|
+
}
|
|
13
38
|
async iterateAndFetch(request, options) {
|
|
14
39
|
iteratorLogger("iterate:start", {
|
|
15
40
|
id: request.idString,
|
|
16
41
|
fetch: request.fetch,
|
|
17
42
|
keepAlive: Boolean(options?.keepAlive),
|
|
18
43
|
});
|
|
19
|
-
const iterator = this.index.iterate(request);
|
|
20
|
-
const firstResult = await iterator.next(request.fetch);
|
|
21
44
|
const keepAlive = options?.keepAlive === true;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
45
|
+
const iterator = this.index.iterate(request);
|
|
46
|
+
this.queues.add(request.idString, { iterator, request, keepAlive });
|
|
47
|
+
try {
|
|
48
|
+
await this.applyPendingMarks(request.idString, iterator);
|
|
49
|
+
const firstResult = await iterator.next(request.fetch);
|
|
50
|
+
if (!keepAlive && iterator.done() === true) {
|
|
51
|
+
this.queues.del(request.idString);
|
|
52
|
+
this.pendingMarks.delete(request.idString);
|
|
53
|
+
}
|
|
54
|
+
iteratorLogger("iterate:queued", {
|
|
55
|
+
id: request.idString,
|
|
26
56
|
keepAlive,
|
|
27
|
-
|
|
28
|
-
|
|
57
|
+
done: iterator.done() === true,
|
|
58
|
+
batch: firstResult.length,
|
|
59
|
+
});
|
|
60
|
+
/* console.debug(
|
|
61
|
+
"[ResumableIterators] iterateAndFetch",
|
|
62
|
+
request.idString,
|
|
63
|
+
{ keepAlive },
|
|
64
|
+
); */
|
|
65
|
+
return firstResult;
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
this.clear(request.idString);
|
|
69
|
+
throw error;
|
|
29
70
|
}
|
|
30
|
-
iteratorLogger("iterate:queued", {
|
|
31
|
-
id: request.idString,
|
|
32
|
-
keepAlive,
|
|
33
|
-
done: iterator.done() === true,
|
|
34
|
-
batch: firstResult.length,
|
|
35
|
-
});
|
|
36
|
-
/* console.debug(
|
|
37
|
-
"[ResumableIterators] iterateAndFetch",
|
|
38
|
-
request.idString,
|
|
39
|
-
{ keepAlive },
|
|
40
|
-
); */
|
|
41
|
-
return firstResult;
|
|
42
71
|
}
|
|
43
72
|
async next(request, options) {
|
|
44
73
|
const iterator = this.queues.get(request.idString);
|
|
@@ -109,6 +138,7 @@ export class ResumableIterators {
|
|
|
109
138
|
}
|
|
110
139
|
}
|
|
111
140
|
this.queues.del(id);
|
|
141
|
+
this.pendingMarks.delete(id);
|
|
112
142
|
}
|
|
113
143
|
async clearAll() {
|
|
114
144
|
const cacheEntries = [...this.queues.map.entries()]
|
|
@@ -121,6 +151,7 @@ export class ResumableIterators {
|
|
|
121
151
|
});
|
|
122
152
|
})));
|
|
123
153
|
this.queues.clear();
|
|
154
|
+
this.pendingMarks.clear();
|
|
124
155
|
}
|
|
125
156
|
has(id) {
|
|
126
157
|
return this.queues.has(id);
|
|
@@ -143,5 +174,12 @@ export class ResumableIterators {
|
|
|
143
174
|
});
|
|
144
175
|
return pending;
|
|
145
176
|
}
|
|
177
|
+
async markYielded(id, ids) {
|
|
178
|
+
this.retainMarks(id, ids);
|
|
179
|
+
const iterator = this.queues.get(id);
|
|
180
|
+
if (iterator) {
|
|
181
|
+
await this.applyPendingMarks(id, iterator.iterator);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
146
184
|
}
|
|
147
185
|
//# sourceMappingURL=resumable-iterator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resumable-iterator.js","sourceRoot":"","sources":["../../src/resumable-iterator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EACN,kBAAkB,GAIlB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,cAAc,GAAG,QAAQ,CAAC,gCAAgC,CAAC,CAAC;AAElE,MAAM,OAAO,kBAAkB;
|
|
1
|
+
{"version":3,"file":"resumable-iterator.js","sourceRoot":"","sources":["../../src/resumable-iterator.ts"],"names":[],"mappings":"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"}
|
package/dist/src/search.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { type MaybePromise, PublicSignKey } from "@peerbit/crypto";
|
|
|
5
5
|
import * as types from "@peerbit/document-interface";
|
|
6
6
|
import { type QueryCacheOptions } from "@peerbit/indexer-cache";
|
|
7
7
|
import * as indexerTypes from "@peerbit/indexer-interface";
|
|
8
|
-
import { type Encoding, Entry } from "@peerbit/log";
|
|
8
|
+
import { type Encoding, type Entry } from "@peerbit/log";
|
|
9
9
|
import { Program } from "@peerbit/program";
|
|
10
10
|
import { RPC, type RPCRequestAllOptions } from "@peerbit/rpc";
|
|
11
11
|
import { type CoverRange, type ReplicationDomain, SharedLog } from "@peerbit/shared-log";
|
|
@@ -266,12 +266,12 @@ export declare class DocumentIndex<T, I extends Record<string, any>, D extends R
|
|
|
266
266
|
});
|
|
267
267
|
get valueEncoding(): Encoding<T>;
|
|
268
268
|
private ensurePrefetchAccumulator;
|
|
269
|
-
/**
|
|
270
|
-
*
|
|
271
|
-
*
|
|
272
|
-
*
|
|
273
|
-
|
|
274
|
-
private
|
|
269
|
+
/**
|
|
270
|
+
* Resolve documents without bypassing the resolver/program caches. Cache and
|
|
271
|
+
* identity-index hits are collected first; only the remaining heads cross the
|
|
272
|
+
* log read boundary, and those reads stay aligned in one batch.
|
|
273
|
+
*/
|
|
274
|
+
private resolveDocumentsWithBatchedHeads;
|
|
275
275
|
private wrapPushResults;
|
|
276
276
|
private drainQueuedResults;
|
|
277
277
|
private handleDocumentChange?;
|
package/dist/src/search.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/search.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,YAAY,EAMjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EACN,KAAK,YAAY,EACjB,aAAa,EAEb,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,KAAK,MAAM,6BAA6B,CAAC;AAOrD,OAAO,EAAe,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,KAAK,YAAY,MAAM,4BAA4B,CAAC;AAE3D,OAAO,EAAkB,KAAK,QAAQ,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAEpE,OAAO,EAAe,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAEN,GAAG,EACH,KAAK,oBAAoB,EAGzB,MAAM,cAAc,CAAC;AACtB,OAAO,EACN,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,SAAS,EACT,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGN,KAAK,QAAQ,EAEb,MAAM,2BAA2B,CAAC;AAMnC,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAIvE,OAAO,EAAE,KAAK,SAAS,EAAkB,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAQhD,OAAO,EAKN,KAAK,sBAAsB,EAE3B,KAAK,mBAAmB,EACxB,MAAM,gBAAgB,CAAC;AA6MxB,MAAM,MAAM,mBAAmB,CAC9B,CAAC,EACD,CAAC,EACD,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,GAAG,GAAG,oBAAoB,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,IAEvC,OAAO,GACP;IACA,MAAM,CAAC,EAAE,CACR,GAAG,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,KACtB,YAAY,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;CAC/C,CAAC;AACL,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE7E,MAAM,MAAM,eAAe,CAC1B,CAAC,EACD,CAAC,EACD,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,EAAE,GAAG,oBAAoB,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,IACrC;IACH;;;OAGG;IACH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD;;;OAGG;IACH,OAAO,CAAC,EAAE,CACT,KAAK,EAAE,EAAE,EAAE,EACX,IAAI,EAAE;QAAE,MAAM,EAAE,YAAY,CAAA;KAAE,KAC1B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAE5D,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,SAAS,OAAO,GAAG,SAAS,IAChE,OAAO,GACP,kBAAkB,GAClB,CAAC;IACD,wGAAwG;IACxG,KAAK,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAC3C,uEAAuE;IACvE,IAAI,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC,eAAe,CAAC;CACtC,GAAG,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAEvC,MAAM,MAAM,cAAc,GAAG;IAC5B,oCAAoC;IACpC,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC;IAE/C,gCAAgC;IAChC,UAAU,CAAC,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IAEpC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,OAAO,CAAC;AAEvD,MAAM,MAAM,sBAAsB,GAAG,CAAC,GAAG,EAAE;IAC1C,gEAAgE;IAChE,MAAM,EAAE,MAAM,CAAC;IAEf,4DAA4D;IAC5D,IAAI,EAAE,aAAa,CAAC;CACpB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE3B,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,OAAO,CAAC;AAE9C,MAAM,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1B,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;IACvB,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,CAAC,EAAE,GAAG,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAC3B,CAAC,SAAS,cAAc,GAAG,MAAM,EACjC,IAAI,GAAG,eAAe,IACnB;IACH,iFAAiF;IACjF,MAAM,EAAE,MAAM,CAAC;IAEf,6DAA6D;IAC7D,IAAI,CAAC,EAAE,aAAa,CAAC;CACrB,GAAG,CAAC,CAAC,SAAS,OAAO,GAAG;IAAE,KAAK,EAAE,IAAI,EAAE,CAAA;CAAE,GAAG;IAAE,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC,CAAC;AAEpE,MAAM,MAAM,kBAAkB,CAC7B,CAAC,SAAS,cAAc,GAAG,MAAM,EACjC,IAAI,GAAG,eAAe,IACnB;IACH,mEAAmE;IACnE,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,SAAS,OAAO,GAAG,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,SAAS,CAAC,CAAC;CACxE,CAAC;AAEF,MAAM,MAAM,YAAY,GACrB,OAAO,GACP,WAAW,CAAC;AAEf,MAAM,MAAM,UAAU,GAAG;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAChC,QAAQ,CAAC,EAAE,YAAY,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACxB,oCAAoC;IACpC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;IACtE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,MAAM,CAAC,EACJ;QACA,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;KACpB,GACD;QACA,KAAK,EAAE,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;KAClC,CAAC;IACL,wDAAwD;IACxD,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,4EAA4E;IAC5E,IAAI,CAAC,EAAE,UAAU,CAAC;CAClB,CAAC;AASF,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,SAAS,OAAO,GAAG,SAAS,IAAI;IACxE,MAAM,CAAC,EACJ,OAAO,GACP,kBAAkB,CAClB,KAAK,CAAC,qBAAqB,EAC3B,KAAK,CAAC,oBAAoB,EAC1B,CAAC,CACA,CAAC;IACL,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IACvC,UAAU,CAAC,EACR;QACA,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,CACR,GAAG,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAC7B,OAAO,EAAE,kBAAkB,CAAC,MAAM,CAAC,KAC/B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACzB,GACD;QACA,IAAI,EAAE,OAAO,CAAC;QACd,MAAM,CAAC,EAAE,CACR,GAAG,EAAE,gBAAgB,CAAC,OAAO,CAAC,EAC9B,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,KAChC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACzB,CAAC;IACL;;;;OAIG;IACH,WAAW,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,UAAU,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,OAAO,SAAS,OAAO,GAAG,SAAS,IAAI;IACxE,MAAM,CAAC,EACJ,OAAO,GACP,kBAAkB,CAClB,KAAK,CAAC,qBAAqB,EAC3B,KAAK,CAAC,oBAAoB,EAC1B,CAAC,CACA,CAAC;IACL,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,aAAa,CACxB,CAAC,EACD,CAAC,EACD,CAAC,EACD,OAAO,SAAS,OAAO,GAAG,SAAS,IAChC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;AAEnC,KAAK,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CACxB,GAAG,EAAE,CAAC,EACN,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,KAAK,CAAC,EAAE,sBAAsB,KAC1B,YAAY,CAAC,CAAC,CAAC,CAAC;AAErB,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI;IAChC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IACvC,IAAI,EAAE,MAAM,OAAO,CAAC;IACpB,GAAG,EAAE,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IACxB,OAAO,EAAE,MAAM,YAAY,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAChD,KAAK,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IACpC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,MAAM,aAAa,CAAC,CAAC,CAAC,CAAC;CAC/C,CAAC;AAmBF,KAAK,SAAS,GAAG;IAChB,KAAK,CAAC,EAAE,YAAY,CAAC,KAAK,EAAE,GAAG,YAAY,CAAC,SAAS,CAAC;IACtD,IAAI,CAAC,EAAE,YAAY,CAAC,IAAI,EAAE,GAAG,YAAY,CAAC,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC;CACvE,CAAC;AAEF,KAAK,yBAAyB,CAAC,CAAC,IAC/B,CAAC,SAAS,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,GAC3C,CAAC,SAAS,OAAO,GAChB,CAAC,GACD,IAAI,GACL,IAAI,CAAC;AA0NT,MAAM,MAAM,SAAS,GAAG,CACvB,OAAO,EACJ,KAAK,CAAC,aAAa,GACnB,KAAK,CAAC,gBAAgB,GACtB,KAAK,CAAC,kBAAkB,EAC3B,IAAI,EAAE,aAAa,KACf,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAEhC,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CACxB,MAAM,EAAE,CAAC,EACT,IAAI,EAAE,aAAa,KACf,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAEhC,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAC/B,MAAM,EAAE,CAAC,EACT,IAAI,EAAE,aAAa,KACf,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAEhC,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAC5B,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;CACzB,GAAG,CAAC,CAAC;AAEN,eAAO,MAAM,mBAAmB;;;;;;;;CAQtB,CAAC;AAEX,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAC3D,YAAY,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,mBAAmB,CAAC,CAAC;AAE9E,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI;IAE/B,SAAS,EAAE,CAAC,CAAC;CACb,GAAG,CAAC,CAAC;AAEN,MAAM,MAAM,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAEtE,MAAM,MAAM,oBAAoB,CAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,CAAC,EACD,CAAC,IACE,OAAO,SAAS,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAEtE,MAAM,MAAM,wBAAwB,CAAC,CAAC,EAAE,CAAC,IAAI;IAC5C,IAAI,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,qBAAqB,CAAC,CAAC,EAAE,CAAC,IAAI;IACzC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACtB,SAAS,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACrC,CAAC;AACF,MAAM,MAAM,gBAAgB,CAAC,CAAC,EAAE,CAAC,IAC9B,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC9B,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAQ/B,MAAM,MAAM,eAAe,GAAG;IAC7B,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,QAAQ,CAAC;IAQtB,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,WAAW,CACtB,CAAC,EACD,CAAC,EACD,CAAC,SAAS,iBAAiB,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,IAC7C;IACH,cAAc,EAAE,gBAAgB,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACvD,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAC9B,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,GAAG,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACrB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,SAAS,EAAE,CACV,OAAO,EACJ,KAAK,CAAC,aAAa,GACnB,KAAK,CAAC,oBAAoB,GAC1B,KAAK,CAAC,gBAAgB,EACzB,OAAO,EAAE,KAAK,CAAC,OAAO,CACrB,KAAK,CAAC,qBAAqB,CACxB,KAAK,CAAC,aAAa,GACnB,KAAK,CAAC,oBAAoB,GAC1B,KAAK,CAAC,gBAAgB,EACxB,CAAC,EACD,CAAC,CACD,CACD,KACG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,iBAAiB,CAAC;KAC1B,CAAC;IACF,aAAa,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IACzC,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,OAAO,KAAK,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;IACxD,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAC9C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,KAAK,cAAc,CAAC,CAAC,IAAI,KACxB,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,KAAK,CAAC,OAAO,KAClB,WAAW,CAAC,CAAC,CAAC,CAAC;AAEpB,KAAK,oBAAoB,GAAG;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,iBAAiB,CAAC,EAAE;QACnB,MAAM,EAAE,UAAU,CAAC;QACnB,MAAM,EAAE,UAAU,CAAC;KACnB,CAAC;IACF,cAAc,CAAC,EAAE,sBAAsB,CAAC;CACxC,CAAC;AA0BF,eAAO,MAAM,mBAAmB,GAAI,SAAS,KAAK,CAAC,OAAO,KAAG,UAmB5D,CAAC;AA4FF,eAAO,MAAM,iBAAiB,GAAI,CAAC,EAClC,OAAO,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,EACzB,SAAS,KAAK,CAAC,OAAO,KACpB,WAAW,CAAC,CAAC,CAIf,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,CAAC,EAAE,CAAC,EACrC,OAAO,CAAC,GAAG,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EAC5B,SAAS,CAAC,KACR,WAAW,CAAC,CAAC,EAAE,CAAC,CAIlB,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,CAAC,EAAE,CAAC,EACzC,OAAO,CAAC,GAAG,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,EACnC,cAAc,MAAM,CAAC,KACnB,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAyBzB,CAAC;AAEF,qBACa,aAAa,CACzB,CAAC,EACD,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7B,CAAC,SAAS,iBAAiB,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,CAC/C,SAAQ,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAEtC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAGrE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAG9B,WAAW,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,yBAAyB,CAAC,CAA8B;IAChE,OAAO,CAAC,6BAA6B,CAAC,CAA+B;IACrE,OAAO,CAAC,gCAAgC,CAAC,CAAmC;IAG5E,kBAAkB,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IACtC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAG7B,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,yBAAyB,EAAE,OAAO,CAAC;IAGnC,OAAO,CAAC,OAAO,CAAW;IAC1B,OAAO,CAAC,eAAe,CAAoC;IAC3D,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,mBAAmB,CAAqC;IAChE,OAAO,CAAC,SAAS,CAAC,CAA8B;IAChD,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,SAAS,CAAkB;IAEnC,aAAa,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAKzC,OAAO,CAAC,cAAc,CAAc;IAEpC,OAAO,CAAC,KAAK,CAMM;IAEnB,OAAO,CAAC,IAAI,CAA+B;IAE3C,OAAO,CAAC,qBAAqB,CAAC,CAAmC;IACjE,OAAO,CAAC,cAAc,CAAC,CAAW;IAClC,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,UAAU,CAA+C;IACjE,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,OAAO,CAAC,CAAa;IAE7B,OAAO,CAAC,cAAc,CAAyC;IAE/D,OAAO,CAAC,aAAa,CAAC,CAAkD;IAExE,OAAO,CAAC,YAAY,CAgBlB;IACF,OAAO,CAAC,uBAAuB,CAAC,CAA6C;IAE7E,OAAO,CAAC,yBAAyB;gBASrB,UAAU,CAAC,EAAE;QACxB,KAAK,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC;KACrE;IAOD,IAAI,aAAa,gBAEhB;IAED,OAAO,CAAC,yBAAyB;IAajC;;;;mFAI+E;YACjE,mBAAmB;YAiBnB,eAAe;YAkEf,kBAAkB;IA0DhC,OAAO,CAAC,oBAAoB,CAAC,CAEV;YAEL,gBAAgB;IA+E9B,OAAO,KAAK,gBAAgB,GAS3B;IACK,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IA+O3C,OAAO,CAAC,iCAAiC;IA0BzC,OAAO,CAAC,iCAAiC;IAOzC,OAAO,CAAC,oCAAoC;IAM5C,OAAO,CAAC,2CAA2C;IASnD,OAAO,CAAC,0DAA0D;IAUlE,OAAO,CAAC,mCAAmC;IAU3C,OAAO,CAAC,wCAAwC;IAmEhD,OAAO,CAAC,uDAAuD;IAkF/D,OAAO,CAAC,6DAA6D;IAiCrE,OAAO,CAAC,2CAA2C;IAmCnD,OAAO,CAAC,kBAAkB;IAc1B,IAAI,QAAQ,gCAEX;YAEa,uBAAuB;YAoEvB,mBAAmB;IAsG3B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB1B,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAS/D,IAAI,UAAU,YAKb;IAEK,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAkCvC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAiC/B,GAAG,CAAC,OAAO,SAAS,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC,EACrE,GAAG,EAAE,YAAY,CAAC,OAAO,GAAG,YAAY,CAAC,KAAK,EAC9C,OAAO,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvB,GAAG,CAAC,OAAO,SAAS,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAC1D,GAAG,EAAE,YAAY,CAAC,OAAO,GAAG,YAAY,CAAC,KAAK,EAC9C,OAAO,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAoHb,UAAU,CAAC,GAAG,EAAE,MAAM;IAOtB,WAAW,CAAC,IAAI,EAAE,MAAM;IAOxB,wBAAwB,CACpC,IAAI,EAAE,MAAM,GACV,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAOrD,2BAA2B,CACvC,IAAI,EAAE,MAAM,GACV,OAAO,CAAC,YAAY,CAAC,KAAK,GAAG,SAAS,CAAC;IAS1C,OAAO,CAAC,mBAAmB;IASpB,qBAAqB,CAC3B,KAAK,EAAE,MAAM,EAAE,GACb,KAAK,CAAC,YAAY,CAAC,KAAK,GAAG,SAAS,CAAC,GAAG,SAAS;IAQ7C,8BAA8B,CACpC,IAAI,EAAE,MAAM,GACV;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,YAAY,CAAC,KAAK,CAAA;KAAE;IAWtC,yBAAyB,CACrC,KAAK,EAAE,MAAM,EAAE,GACb,OAAO,CACT,KAAK,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,SAAS,CACzE;IAaM,2BAA2B,IAAI,OAAO;IAStC,sBAAsB,IAAI,OAAO;IAQjC,yCAAyC,CAC/C,KAAK,EAAE,SAAS,CAAC,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC,EAAE,GAC5C,OAAO;IAcH,+BAA+B,CACrC,KAAK,EAAE,SAAS,CAAC,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC,EAAE,GAC5C,OAAO;IAcH,0BAA0B,CAChC,EAAE,EAAE,YAAY,CAAC,KAAK,EACtB,IAAI,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,GAC9B,OAAO;IAeH,uBAAuB,CAC7B,KAAK,EAAE,CAAC,EACR,EAAE,EAAE,YAAY,CAAC,KAAK,EACtB,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,OAAO,CAAC,EAAE,oBAAoB,GAC5B,YAAY,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC;IAmC9C,6BAA6B,CACnC,KAAK,EAAE,CAAC,EACR,EAAE,EAAE,YAAY,CAAC,KAAK,EACtB,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,iBAAiB,EAAE,WAAW,CAAC,oBAAoB,CAAC,mBAAmB,CAAC,CAAC,EACzE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAC7B,YAAY,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC;IAyCrD,OAAO,CAAC,kDAAkD;IA6D1D,OAAO,CAAC,wDAAwD;IA+ChE,OAAO,CAAC,4DAA4D;YAiEtD,sDAAsD;YAqFtD,iDAAiD;IA8ElD,2BAA2B,CACvC,MAAM,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,CAAC,CAAC;QACT,EAAE,EAAE,YAAY,CAAC,KAAK,CAAC;QACvB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;QACvB,OAAO,CAAC,EAAE,oBAAoB,CAAC;KAC/B,CAAC,GACA,OAAO,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC;IA6DrC,GAAG,CACf,KAAK,EAAE,CAAC,EACR,EAAE,EAAE,YAAY,CAAC,KAAK,EACtB,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,EACvB,QAAQ,EACL,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAC1C,YAAY,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GACjD,IAAI,GACJ,SAAS,GACV,OAAO,CAAC;QAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;QAAC,SAAS,EAAE,CAAC,CAAA;KAAE,CAAC;IAsBvC,cAAc,CAC1B,KAAK,EAAE,CAAC,EACR,EAAE,EAAE,YAAY,CAAC,KAAK,EACtB,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,OAAO,CAAC,EAAE,oBAAoB,GAC5B,OAAO,CAAC;QAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;QAAC,SAAS,EAAE,CAAC,CAAA;KAAE,CAAC;IAmDvC,kBAAkB,CAC9B,MAAM,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,CAAC,CAAC;QACT,EAAE,EAAE,YAAY,CAAC,KAAK,CAAC;QACvB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;QACvB,OAAO,CAAC,EAAE,oBAAoB,CAAC;KAC/B,CAAC,GACA,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;QAAC,SAAS,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC;IA+FpD,2BAA2B,CACjC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAC5B,KAAK,EAAE,CAAC,GACN,IAAI;IAIP,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,0BAA0B;IAgBlC,OAAO,CAAC,iCAAiC;IAiBlC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,KAAK;IAOrB,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,KAAK,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBxD,yBAAyB,CAAC,IAAI,EAAE,YAAY,CAAC,KAAK,EAAE,GAAG,IAAI;IAM3D,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,KAAK,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC;IAoBtD,WAAW,CACvB,OAAO,SAAS,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAC9C,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,yBAAyB,CAAC,OAAO,CAAC,EACxE,EAAE,SAAS,KAAK,CAAC,MAAM,GAAG,OAAO,SAAS,IAAI,GAC3C,KAAK,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAC3C,KAAK,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAE3C,GAAG,EAAE,YAAY,CAAC,KAAK,GAAG,YAAY,CAAC,WAAW,EAClD,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,GACtC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,CAAC;IAmK3C,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM;YAIrB,eAAe;IA4CvB,YAAY,CACjB,CAAC,SACE,KAAK,CAAC,aAAa,GACnB,KAAK,CAAC,oBAAoB,GAC1B,KAAK,CAAC,gBAAgB,GACtB,KAAK,CAAC,kBAAkB,EAE3B,KAAK,EAAE,CAAC,EACR,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;QACT,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;KACrB,GACC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAwL/D,OAAO,CAAC,yBAAyB;IAgCjC,OAAO,CAAC,uBAAuB;IAY/B,OAAO,CAAC,iBAAiB;IAezB,IAAI,wBAAwB,WAE3B;IAED,OAAO,CAAC,oBAAoB;YAYd,iBAAiB;IA0H/B,OAAO,CAAC,4BAA4B;IA4DpC,2BAA2B,CAC1B,KAAK,EAAE,KAAK,CAAC,oBAAoB,EACjC,SAAS,EAAE,aAAa,GACtB,IAAI;IAiBP;;;;;OAKG;YACW,aAAa;IA8TpB,MAAM,CACZ,YAAY,EAAE,SAAS,EACvB,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GACpC,OAAO,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IACvC,MAAM,CACZ,YAAY,EAAE,SAAS,EACvB,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,GACrC,OAAO,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAgE/C,OAAO,CAAC,cAAc;IAuCf,OAAO,CACb,KAAK,CAAC,EAAE,SAAS,EACjB,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,GACxC,eAAe,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7C,OAAO,CAAC,OAAO,SAAS,OAAO,EACrC,KAAK,CAAC,EAAE,SAAS,EACjB,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,GACtC,eAAe,CAAC,oBAAoB,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAymE1C,aAAa,CAAC,CAAC,SAAS,OAAO,EAAE,EAAE,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,CAAC,EACxE,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,EACvB,MAAM,EAAE;QACP,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,OAAO,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9C,EACD,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,CAAC,GACR,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;IAwG7B;;;OAGG;IACI,SAAS,CACf,KAAK,EACF,oBAAoB,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,GAC/B,WAAW,CAAC,CAAC,CAAC,GACd,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,GACxB,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GACjB,CAAC,GACF,YAAY,CAAC,KAAK;IAYR,OAAO,CACnB,KAAK,EAAE,QAAQ,EACf,OAAO,CAAC,EAAE;QACT,IAAI,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;QACzB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;KACjB,GACC,OAAO,CAAC,MAAM,EAAE,CAAC;CAYpB"}
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/search.ts"],"names":[],"mappings":"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"}
|
package/dist/src/search.js
CHANGED
|
@@ -40,7 +40,7 @@ import { tryProjectDocumentIndexSimple, } from "./native-rust.js";
|
|
|
40
40
|
import { CachedIndex } from "@peerbit/indexer-cache";
|
|
41
41
|
import * as indexerTypes from "@peerbit/indexer-interface";
|
|
42
42
|
import { HashmapIndex } from "@peerbit/indexer-simple";
|
|
43
|
-
import { BORSH_ENCODING
|
|
43
|
+
import { BORSH_ENCODING } from "@peerbit/log";
|
|
44
44
|
import { logger as loggerFn } from "@peerbit/logger";
|
|
45
45
|
import { ClosedError, Program } from "@peerbit/program";
|
|
46
46
|
import { MissingResponsesError, RPC, queryAll, } from "@peerbit/rpc";
|
|
@@ -551,33 +551,76 @@ let DocumentIndex = (() => {
|
|
|
551
551
|
this._prefetch.accumulator = new Prefetch();
|
|
552
552
|
}
|
|
553
553
|
}
|
|
554
|
-
/**
|
|
555
|
-
*
|
|
556
|
-
*
|
|
557
|
-
*
|
|
558
|
-
|
|
559
|
-
async
|
|
560
|
-
const
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
554
|
+
/**
|
|
555
|
+
* Resolve documents without bypassing the resolver/program caches. Cache and
|
|
556
|
+
* identity-index hits are collected first; only the remaining heads cross the
|
|
557
|
+
* log read boundary, and those reads stay aligned in one batch.
|
|
558
|
+
*/
|
|
559
|
+
async resolveDocumentsWithBatchedHeads(values) {
|
|
560
|
+
const resolved = new Array(values.length);
|
|
561
|
+
const heads = new Array(values.length);
|
|
562
|
+
const unresolvedPositions = [];
|
|
563
|
+
for (let i = 0; i < values.length; i++) {
|
|
564
|
+
const value = values[i];
|
|
565
|
+
const cached = await this.resolveDocument({
|
|
566
|
+
...value,
|
|
567
|
+
headEntry: null,
|
|
568
|
+
});
|
|
569
|
+
if (cached) {
|
|
570
|
+
resolved[i] = cached;
|
|
570
571
|
}
|
|
571
|
-
|
|
572
|
-
|
|
572
|
+
else {
|
|
573
|
+
unresolvedPositions.push(i);
|
|
573
574
|
}
|
|
574
575
|
}
|
|
576
|
+
if (unresolvedPositions.length === 0) {
|
|
577
|
+
return { resolved, heads };
|
|
578
|
+
}
|
|
579
|
+
const unresolvedHeads = await this._log.log.getMany(unresolvedPositions.map((position) => values[position].head));
|
|
580
|
+
for (let i = 0; i < unresolvedPositions.length; i++) {
|
|
581
|
+
const position = unresolvedPositions[i];
|
|
582
|
+
const head = unresolvedHeads[i];
|
|
583
|
+
heads[position] = head;
|
|
584
|
+
resolved[position] = await this.resolveDocument({
|
|
585
|
+
...values[position],
|
|
586
|
+
headEntry: head ?? null,
|
|
587
|
+
});
|
|
588
|
+
}
|
|
589
|
+
return { resolved, heads };
|
|
575
590
|
}
|
|
576
591
|
async wrapPushResults(matches, resolve) {
|
|
577
592
|
if (!matches.length)
|
|
578
593
|
return [];
|
|
594
|
+
const headsByMatch = [];
|
|
595
|
+
const resolvedByMatch = [];
|
|
596
|
+
if (!resolve) {
|
|
597
|
+
headsByMatch.push(...(await this._log.log.getMany(matches.map((match) => match.__context.head))));
|
|
598
|
+
}
|
|
599
|
+
else {
|
|
600
|
+
const indexedPositions = [];
|
|
601
|
+
for (let i = 0; i < matches.length; i++) {
|
|
602
|
+
if (!(matches[i] instanceof this.documentType)) {
|
|
603
|
+
indexedPositions.push(i);
|
|
604
|
+
}
|
|
605
|
+
}
|
|
606
|
+
const indexedBatch = indexedPositions.length
|
|
607
|
+
? await this.resolveDocumentsWithBatchedHeads(indexedPositions.map((position) => {
|
|
608
|
+
const indexed = matches[position];
|
|
609
|
+
return {
|
|
610
|
+
indexed,
|
|
611
|
+
head: indexed.__context.head,
|
|
612
|
+
};
|
|
613
|
+
}))
|
|
614
|
+
: { resolved: [], heads: [] };
|
|
615
|
+
for (let i = 0; i < indexedPositions.length; i++) {
|
|
616
|
+
const position = indexedPositions[i];
|
|
617
|
+
resolvedByMatch[position] = indexedBatch.resolved[i];
|
|
618
|
+
headsByMatch[position] = indexedBatch.heads[i];
|
|
619
|
+
}
|
|
620
|
+
}
|
|
579
621
|
const results = [];
|
|
580
|
-
for (
|
|
622
|
+
for (let i = 0; i < matches.length; i++) {
|
|
623
|
+
const match = matches[i];
|
|
581
624
|
if (resolve) {
|
|
582
625
|
if (match instanceof this.documentType) {
|
|
583
626
|
const doc = match;
|
|
@@ -592,10 +635,7 @@ let DocumentIndex = (() => {
|
|
|
592
635
|
continue;
|
|
593
636
|
}
|
|
594
637
|
const indexed = match;
|
|
595
|
-
const resolved =
|
|
596
|
-
indexed,
|
|
597
|
-
head: indexed.__context.head,
|
|
598
|
-
});
|
|
638
|
+
const resolved = resolvedByMatch[i];
|
|
599
639
|
if (resolved) {
|
|
600
640
|
results.push(new types.ResultValue({
|
|
601
641
|
context: indexed.__context,
|
|
@@ -605,7 +645,7 @@ let DocumentIndex = (() => {
|
|
|
605
645
|
}));
|
|
606
646
|
continue;
|
|
607
647
|
}
|
|
608
|
-
const head =
|
|
648
|
+
const head = headsByMatch[i];
|
|
609
649
|
results.push(new types.ResultIndexedValue({
|
|
610
650
|
context: indexed.__context,
|
|
611
651
|
source: serialize(indexed),
|
|
@@ -615,7 +655,7 @@ let DocumentIndex = (() => {
|
|
|
615
655
|
}
|
|
616
656
|
else {
|
|
617
657
|
const indexed = match;
|
|
618
|
-
const head =
|
|
658
|
+
const head = headsByMatch[i];
|
|
619
659
|
results.push(new types.ResultIndexedValue({
|
|
620
660
|
context: indexed.__context,
|
|
621
661
|
source: serialize(indexed),
|
|
@@ -631,14 +671,21 @@ let DocumentIndex = (() => {
|
|
|
631
671
|
return [];
|
|
632
672
|
}
|
|
633
673
|
const drained = queueEntries.splice(0);
|
|
674
|
+
const resolvedBatch = resolve
|
|
675
|
+
? await this.resolveDocumentsWithBatchedHeads(drained.map((entry) => ({
|
|
676
|
+
indexed: entry.value,
|
|
677
|
+
head: entry.value.__context.head,
|
|
678
|
+
})))
|
|
679
|
+
: undefined;
|
|
680
|
+
const heads = resolvedBatch
|
|
681
|
+
? resolvedBatch.heads
|
|
682
|
+
: await this._log.log.getMany(drained.map((entry) => entry.value.__context.head));
|
|
634
683
|
const results = [];
|
|
635
|
-
for (
|
|
684
|
+
for (let i = 0; i < drained.length; i++) {
|
|
685
|
+
const entry = drained[i];
|
|
636
686
|
const indexedUnwrapped = Object.assign(Object.create(this.indexedType.prototype), entry.value);
|
|
637
687
|
if (resolve) {
|
|
638
|
-
const value =
|
|
639
|
-
indexed: entry.value,
|
|
640
|
-
head: entry.value.__context.head,
|
|
641
|
-
});
|
|
688
|
+
const value = resolvedBatch.resolved[i];
|
|
642
689
|
if (value) {
|
|
643
690
|
results.push(new types.ResultValue({
|
|
644
691
|
context: entry.value.__context,
|
|
@@ -648,7 +695,7 @@ let DocumentIndex = (() => {
|
|
|
648
695
|
}));
|
|
649
696
|
continue;
|
|
650
697
|
}
|
|
651
|
-
const head =
|
|
698
|
+
const head = heads[i];
|
|
652
699
|
results.push(new types.ResultIndexedValue({
|
|
653
700
|
context: entry.value.__context,
|
|
654
701
|
source: serialize(indexedUnwrapped),
|
|
@@ -657,7 +704,7 @@ let DocumentIndex = (() => {
|
|
|
657
704
|
}));
|
|
658
705
|
}
|
|
659
706
|
else {
|
|
660
|
-
const head =
|
|
707
|
+
const head = heads[i];
|
|
661
708
|
results.push(new types.ResultIndexedValue({
|
|
662
709
|
context: entry.value.__context,
|
|
663
710
|
source: serialize(indexedUnwrapped),
|
|
@@ -697,6 +744,7 @@ let DocumentIndex = (() => {
|
|
|
697
744
|
let pendingAdded = added;
|
|
698
745
|
do {
|
|
699
746
|
const batches = [];
|
|
747
|
+
let claimedIds = [];
|
|
700
748
|
const queued = await this.drainQueuedResults(queue.queue, resolveFlag);
|
|
701
749
|
if (queued.length) {
|
|
702
750
|
batches.push(...queued);
|
|
@@ -710,6 +758,13 @@ let DocumentIndex = (() => {
|
|
|
710
758
|
const wrapped = await this.wrapPushResults(matches, resolveFlag);
|
|
711
759
|
if (wrapped.length) {
|
|
712
760
|
batches.push(...wrapped);
|
|
761
|
+
claimedIds = wrapped
|
|
762
|
+
.map((result) => result instanceof types.ResultValue && result.indexed
|
|
763
|
+
? indexerTypes.toId(this.indexByResolver(result.indexed))
|
|
764
|
+
: result instanceof types.ResultIndexedValue
|
|
765
|
+
? indexerTypes.toId(this.indexByResolver(result.value))
|
|
766
|
+
: undefined)
|
|
767
|
+
.filter((id) => id !== undefined);
|
|
713
768
|
}
|
|
714
769
|
}
|
|
715
770
|
if (batches.length) {
|
|
@@ -727,6 +782,9 @@ let DocumentIndex = (() => {
|
|
|
727
782
|
redundancy: 1,
|
|
728
783
|
}),
|
|
729
784
|
});
|
|
785
|
+
if (claimedIds.length) {
|
|
786
|
+
await this._resumableIterators.markYielded(_iteratorId, claimedIds);
|
|
787
|
+
}
|
|
730
788
|
}
|
|
731
789
|
pendingAdded = queue.pendingAdded ?? [];
|
|
732
790
|
queue.pendingAdded = undefined;
|
|
@@ -2235,7 +2293,9 @@ let DocumentIndex = (() => {
|
|
|
2235
2293
|
delete obj.__context;
|
|
2236
2294
|
return { value: obj };
|
|
2237
2295
|
}
|
|
2238
|
-
const head =
|
|
2296
|
+
const head = value.headEntry === undefined
|
|
2297
|
+
? await this._log.log.get(value.head)
|
|
2298
|
+
: (value.headEntry ?? undefined);
|
|
2239
2299
|
if (!head) {
|
|
2240
2300
|
return undefined; // we could end up here if we recently pruned the document and other peers never persisted the entry
|
|
2241
2301
|
// TODO update changes in index before removing entries from log entry storage
|
|
@@ -2326,7 +2386,7 @@ let DocumentIndex = (() => {
|
|
|
2326
2386
|
}
|
|
2327
2387
|
this._resultQueue.set(query.idString, prevQueued);
|
|
2328
2388
|
}
|
|
2329
|
-
const
|
|
2389
|
+
const candidates = [];
|
|
2330
2390
|
const resolveDocumentsFlag = resolvesDocuments(fromQuery);
|
|
2331
2391
|
const replicateIndexFlag = replicatesIndex(fromQuery);
|
|
2332
2392
|
for (const result of toIterate) {
|
|
@@ -2342,11 +2402,24 @@ let DocumentIndex = (() => {
|
|
|
2342
2402
|
!(await options.canRead(indexedUnwrapped, from))) {
|
|
2343
2403
|
continue;
|
|
2344
2404
|
}
|
|
2405
|
+
candidates.push({ result, indexed: indexedUnwrapped });
|
|
2406
|
+
}
|
|
2407
|
+
const resolvedBatch = resolveDocumentsFlag
|
|
2408
|
+
? await this.resolveDocumentsWithBatchedHeads(candidates.map(({ result }) => ({
|
|
2409
|
+
indexed: result.value,
|
|
2410
|
+
head: result.value.__context.head,
|
|
2411
|
+
})))
|
|
2412
|
+
: undefined;
|
|
2413
|
+
const heads = resolvedBatch
|
|
2414
|
+
? resolvedBatch.heads
|
|
2415
|
+
: candidates.length > 0
|
|
2416
|
+
? await this._log.log.getMany(candidates.map(({ result }) => result.value.__context.head))
|
|
2417
|
+
: [];
|
|
2418
|
+
const filteredResults = [];
|
|
2419
|
+
for (let i = 0; i < candidates.length; i++) {
|
|
2420
|
+
const { result, indexed: indexedUnwrapped } = candidates[i];
|
|
2345
2421
|
if (resolveDocumentsFlag) {
|
|
2346
|
-
const value =
|
|
2347
|
-
indexed: result.value,
|
|
2348
|
-
head: result.value.__context.head,
|
|
2349
|
-
});
|
|
2422
|
+
const value = resolvedBatch.resolved[i];
|
|
2350
2423
|
if (!value) {
|
|
2351
2424
|
continue;
|
|
2352
2425
|
}
|
|
@@ -2359,7 +2432,7 @@ let DocumentIndex = (() => {
|
|
|
2359
2432
|
}
|
|
2360
2433
|
else {
|
|
2361
2434
|
const context = result.value.__context;
|
|
2362
|
-
const head =
|
|
2435
|
+
const head = heads[i];
|
|
2363
2436
|
if (replicateIndexFlag) {
|
|
2364
2437
|
if (!head) {
|
|
2365
2438
|
continue;
|
|
@@ -4107,7 +4180,8 @@ let DocumentIndex = (() => {
|
|
|
4107
4180
|
continue;
|
|
4108
4181
|
}
|
|
4109
4182
|
}
|
|
4110
|
-
const
|
|
4183
|
+
const indexId = indexerTypes.toId(this.indexByResolver(indexedCandidate));
|
|
4184
|
+
const id = indexId.primitive;
|
|
4111
4185
|
const existingIndexed = indexedPlaceholders?.get(id);
|
|
4112
4186
|
if (existingIndexed) {
|
|
4113
4187
|
if (resolve) {
|
|
@@ -4149,6 +4223,7 @@ let DocumentIndex = (() => {
|
|
|
4149
4223
|
if (!resolve) {
|
|
4150
4224
|
ensureIndexedPlaceholders().set(id, placeholder);
|
|
4151
4225
|
}
|
|
4226
|
+
await this._resumableIterators.markYielded(queryRequestCoerced.idString, [indexId]);
|
|
4152
4227
|
hasRelevantChange = true;
|
|
4153
4228
|
}
|
|
4154
4229
|
}
|