@agentshouse/mdruntime 0.1.0-c44866799613e → 0.1.0-c44d5cc00aee5
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/README.md +18 -17
- package/dist/acceptance.d.ts +3 -0
- package/dist/acceptance.d.ts.map +1 -0
- package/dist/acceptance.js +299 -0
- package/dist/act-lanes.d.ts +30 -0
- package/dist/act-lanes.d.ts.map +1 -0
- package/dist/act-lanes.js +225 -0
- package/dist/actions.d.ts +26 -0
- package/dist/actions.d.ts.map +1 -0
- package/dist/actions.js +302 -0
- package/dist/adapter.d.ts +110 -112
- package/dist/adapter.d.ts.map +1 -1
- package/dist/attached-model.d.ts +3 -11
- package/dist/attached-model.d.ts.map +1 -1
- package/dist/attached-model.js +28 -51
- package/dist/bootstrap.d.ts +15 -18
- package/dist/bootstrap.d.ts.map +1 -1
- package/dist/bootstrap.js +252 -158
- package/dist/cell.d.ts +6 -0
- package/dist/cell.d.ts.map +1 -0
- package/dist/cell.js +9 -0
- package/dist/chain.d.ts +2 -1
- package/dist/chain.d.ts.map +1 -1
- package/dist/change-set.d.ts +4 -0
- package/dist/change-set.d.ts.map +1 -1
- package/dist/change-set.js +6 -0
- package/dist/change.d.ts +1 -0
- package/dist/change.d.ts.map +1 -1
- package/dist/change.js +4 -2
- package/dist/chat-types.d.ts +3 -0
- package/dist/chat-types.d.ts.map +1 -0
- package/dist/chat-types.js +11 -0
- package/dist/client.d.ts +27 -21
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +36 -17
- package/dist/collection.d.ts +23 -7
- package/dist/collection.d.ts.map +1 -1
- package/dist/collection.js +13 -19
- package/dist/compile.d.ts +8 -6
- package/dist/compile.d.ts.map +1 -1
- package/dist/compile.js +288 -329
- package/dist/connection.d.ts +5 -143
- package/dist/connection.d.ts.map +1 -1
- package/dist/connection.js +109 -5104
- package/dist/context.d.ts +2 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +7 -0
- package/dist/conversation-live.d.ts +143 -0
- package/dist/conversation-live.d.ts.map +1 -0
- package/dist/conversation-live.js +254 -0
- package/dist/conversation-row.d.ts +33 -0
- package/dist/conversation-row.d.ts.map +1 -0
- package/dist/conversation-row.js +53 -0
- package/dist/conversation.d.ts +65 -48
- package/dist/conversation.d.ts.map +1 -1
- package/dist/conversation.js +987 -838
- package/dist/declaration.d.ts +10 -0
- package/dist/declaration.d.ts.map +1 -0
- package/dist/declaration.js +24 -0
- package/dist/discovery.d.ts +10 -0
- package/dist/discovery.d.ts.map +1 -0
- package/dist/discovery.js +150 -0
- package/dist/durability.d.ts +19 -1
- package/dist/durability.d.ts.map +1 -1
- package/dist/durability.js +4 -0
- package/dist/entry.d.ts +3 -2
- package/dist/entry.d.ts.map +1 -1
- package/dist/entry.js +19 -9
- package/dist/expectation.d.ts +26 -13
- package/dist/expectation.d.ts.map +1 -1
- package/dist/expectation.js +72 -19
- package/dist/failure.d.ts +3 -0
- package/dist/failure.d.ts.map +1 -1
- package/dist/failure.js +6 -0
- package/dist/figures.d.ts +49 -0
- package/dist/figures.d.ts.map +1 -0
- package/dist/figures.js +197 -0
- package/dist/holdings.d.ts +29 -0
- package/dist/holdings.d.ts.map +1 -0
- package/dist/holdings.js +95 -0
- package/dist/host.d.ts +21 -8
- package/dist/host.d.ts.map +1 -1
- package/dist/host.js +73 -40
- package/dist/identity.d.ts +0 -1
- package/dist/identity.d.ts.map +1 -1
- package/dist/identity.js +0 -3
- package/dist/index.d.ts +34 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -5
- package/dist/install.d.ts +54 -0
- package/dist/install.d.ts.map +1 -0
- package/dist/install.js +530 -0
- package/dist/lifecycle.d.ts +7 -0
- package/dist/lifecycle.d.ts.map +1 -0
- package/dist/lifecycle.js +277 -0
- package/dist/listing.d.ts +48 -0
- package/dist/listing.d.ts.map +1 -0
- package/dist/listing.js +139 -0
- package/dist/live.d.ts +5 -4
- package/dist/live.d.ts.map +1 -1
- package/dist/live.js +64 -23
- package/dist/locks.d.ts +7 -0
- package/dist/locks.d.ts.map +1 -0
- package/dist/locks.js +32 -0
- package/dist/lost.d.ts +5 -0
- package/dist/lost.d.ts.map +1 -0
- package/dist/lost.js +49 -0
- package/dist/media.d.ts +2 -2
- package/dist/media.d.ts.map +1 -1
- package/dist/media.js +23 -13
- package/dist/memory.d.ts +17 -7
- package/dist/memory.d.ts.map +1 -1
- package/dist/memory.js +210 -97
- package/dist/messages.d.ts +33 -5
- package/dist/messages.d.ts.map +1 -1
- package/dist/messages.js +104 -36
- package/dist/model.d.ts +2 -11
- package/dist/model.d.ts.map +1 -1
- package/dist/model.js +0 -23
- package/dist/models.d.ts +10 -0
- package/dist/models.d.ts.map +1 -0
- package/dist/models.js +153 -0
- package/dist/observation.d.ts +4 -3
- package/dist/observation.d.ts.map +1 -1
- package/dist/observation.js +23 -17
- package/dist/opened.d.ts +1 -1
- package/dist/opened.d.ts.map +1 -1
- package/dist/opened.js +5 -5
- package/dist/opening.d.ts +4 -0
- package/dist/opening.d.ts.map +1 -0
- package/dist/opening.js +53 -0
- package/dist/outcome.d.ts +7 -4
- package/dist/outcome.d.ts.map +1 -1
- package/dist/outcome.js +18 -0
- package/dist/overlay.d.ts +6 -1
- package/dist/overlay.d.ts.map +1 -1
- package/dist/overlay.js +47 -21
- package/dist/page-metadata.d.ts +8 -0
- package/dist/page-metadata.d.ts.map +1 -0
- package/dist/page-metadata.js +19 -0
- package/dist/parts.d.ts +4 -0
- package/dist/parts.d.ts.map +1 -0
- package/dist/parts.js +13 -0
- package/dist/paths.d.ts +2 -0
- package/dist/paths.d.ts.map +1 -1
- package/dist/paths.js +26 -0
- package/dist/preparation.d.ts +20 -0
- package/dist/preparation.d.ts.map +1 -0
- package/dist/preparation.js +227 -0
- package/dist/presence.d.ts +52 -0
- package/dist/presence.d.ts.map +1 -0
- package/dist/presence.js +220 -0
- package/dist/queries.d.ts +16 -0
- package/dist/queries.d.ts.map +1 -0
- package/dist/queries.js +282 -0
- package/dist/query.d.ts +14 -210
- package/dist/query.d.ts.map +1 -1
- package/dist/query.js +3 -505
- package/dist/questions.d.ts +29 -0
- package/dist/questions.d.ts.map +1 -0
- package/dist/questions.js +115 -0
- package/dist/queue.d.ts +40 -0
- package/dist/queue.d.ts.map +1 -0
- package/dist/queue.js +450 -0
- package/dist/reach.d.ts +15 -12
- package/dist/reach.d.ts.map +1 -1
- package/dist/reach.js +240 -149
- package/dist/react.d.ts +15 -2
- package/dist/react.d.ts.map +1 -1
- package/dist/react.js +33 -1
- package/dist/read.d.ts +7 -0
- package/dist/read.d.ts.map +1 -0
- package/dist/read.js +17 -0
- package/dist/readiness.d.ts +4 -19
- package/dist/readiness.d.ts.map +1 -1
- package/dist/readiness.js +4 -10
- package/dist/reads.d.ts +38 -10
- package/dist/reads.d.ts.map +1 -1
- package/dist/reads.js +163 -85
- package/dist/recovery.d.ts +3 -0
- package/dist/recovery.d.ts.map +1 -1
- package/dist/recovery.js +57 -1
- package/dist/refresh.d.ts +7 -5
- package/dist/refresh.d.ts.map +1 -1
- package/dist/refresh.js +35 -7
- package/dist/refusal.d.ts +5 -0
- package/dist/refusal.d.ts.map +1 -0
- package/dist/refusal.js +55 -0
- package/dist/replica.d.ts +12 -18
- package/dist/replica.d.ts.map +1 -1
- package/dist/replica.js +64 -34
- package/dist/retried.d.ts +30 -0
- package/dist/retried.d.ts.map +1 -0
- package/dist/retried.js +72 -0
- package/dist/room-draft.d.ts +24 -10
- package/dist/room-draft.d.ts.map +1 -1
- package/dist/room-draft.js +142 -106
- package/dist/room-drafts.d.ts +24 -0
- package/dist/room-drafts.d.ts.map +1 -0
- package/dist/room-drafts.js +217 -0
- package/dist/rows.d.ts +14 -21
- package/dist/rows.d.ts.map +1 -1
- package/dist/rows.js +49 -186
- package/dist/runtime.d.ts +34 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +1 -0
- package/dist/save.d.ts +42 -84
- package/dist/save.d.ts.map +1 -1
- package/dist/save.js +349 -170
- package/dist/saves.d.ts +32 -0
- package/dist/saves.d.ts.map +1 -0
- package/dist/saves.js +410 -0
- package/dist/search.d.ts +12 -63
- package/dist/search.d.ts.map +1 -1
- package/dist/search.js +9 -52
- package/dist/seed.d.ts +11 -2
- package/dist/seed.d.ts.map +1 -1
- package/dist/seed.js +71 -1
- package/dist/shared.d.ts +1 -7
- package/dist/shared.d.ts.map +1 -1
- package/dist/shared.js +13 -105
- package/dist/shown.d.ts +33 -0
- package/dist/shown.d.ts.map +1 -0
- package/dist/shown.js +302 -0
- package/dist/socket/admission.d.ts +7 -0
- package/dist/socket/admission.d.ts.map +1 -0
- package/dist/socket/admission.js +39 -0
- package/dist/socket/answers.d.ts +6 -0
- package/dist/socket/answers.d.ts.map +1 -0
- package/dist/socket/answers.js +20 -0
- package/dist/socket/lanes.d.ts +28 -0
- package/dist/socket/lanes.d.ts.map +1 -0
- package/dist/socket/lanes.js +103 -0
- package/dist/socket/reads.d.ts +10 -0
- package/dist/socket/reads.d.ts.map +1 -0
- package/dist/socket/reads.js +31 -0
- package/dist/socket/session.d.ts +38 -0
- package/dist/socket/session.d.ts.map +1 -0
- package/dist/socket/session.js +23 -0
- package/dist/socket.d.ts +67 -0
- package/dist/socket.d.ts.map +1 -0
- package/dist/socket.js +164 -0
- package/dist/source.d.ts +54 -0
- package/dist/source.d.ts.map +1 -0
- package/dist/source.js +82 -0
- package/dist/status.d.ts +4 -5
- package/dist/status.d.ts.map +1 -1
- package/dist/status.js +3 -7
- package/dist/store/installs.d.ts +30 -0
- package/dist/store/installs.d.ts.map +1 -0
- package/dist/store/installs.js +34 -0
- package/dist/store/readiness.d.ts +10 -0
- package/dist/store/readiness.d.ts.map +1 -0
- package/dist/store/readiness.js +52 -0
- package/dist/store/records.d.ts +214 -0
- package/dist/store/records.d.ts.map +1 -0
- package/dist/store/records.js +438 -0
- package/dist/store/room-held.d.ts +8 -0
- package/dist/store/room-held.d.ts.map +1 -0
- package/dist/store/room-held.js +17 -0
- package/dist/store/space.d.ts +11 -0
- package/dist/store/space.d.ts.map +1 -0
- package/dist/store/space.js +41 -0
- package/dist/store/watchers.d.ts +17 -0
- package/dist/store/watchers.d.ts.map +1 -0
- package/dist/store/watchers.js +56 -0
- package/dist/store/writes.d.ts +24 -0
- package/dist/store/writes.d.ts.map +1 -0
- package/dist/store/writes.js +125 -0
- package/dist/store.d.ts +120 -171
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +166 -414
- package/dist/stored.d.ts +62 -57
- package/dist/stored.d.ts.map +1 -1
- package/dist/stored.js +317 -239
- package/dist/surface.d.ts +88 -0
- package/dist/surface.d.ts.map +1 -0
- package/dist/surface.js +220 -0
- package/dist/sync.d.ts +19 -0
- package/dist/sync.d.ts.map +1 -0
- package/dist/sync.js +535 -0
- package/dist/tables.d.ts +126 -65
- package/dist/tables.d.ts.map +1 -1
- package/dist/tables.js +250 -113
- package/dist/tallies.d.ts +18 -0
- package/dist/tallies.d.ts.map +1 -0
- package/dist/tallies.js +128 -0
- package/dist/transfer.d.ts +0 -5
- package/dist/transfer.d.ts.map +1 -1
- package/dist/validation.d.ts +3 -4
- package/dist/validation.d.ts.map +1 -1
- package/dist/validation.js +42 -100
- package/dist/windows.d.ts +1 -12
- package/dist/windows.d.ts.map +1 -1
- package/dist/windows.js +2 -75
- package/dist/wire.d.ts +65 -9
- package/dist/wire.d.ts.map +1 -1
- package/dist/wire.js +22 -5
- package/package.json +3 -2
- package/dist/attempt.d.ts +0 -16
- package/dist/attempt.d.ts.map +0 -1
- package/dist/attempt.js +0 -70
- package/dist/fence.d.ts +0 -6
- package/dist/fence.d.ts.map +0 -1
- package/dist/fence.js +0 -10
- package/dist/fulltext.d.ts +0 -27
- package/dist/fulltext.d.ts.map +0 -1
- package/dist/fulltext.js +0 -368
- package/dist/log.d.ts +0 -5
- package/dist/log.d.ts.map +0 -1
- package/dist/log.js +0 -14
- package/dist/words.d.ts +0 -19
- package/dist/words.d.ts.map +0 -1
- package/dist/words.js +0 -150
package/dist/bootstrap.d.ts
CHANGED
|
@@ -1,47 +1,44 @@
|
|
|
1
1
|
import type { ModelState } from './model.js';
|
|
2
|
-
import type { Adapter, AdapterFailure, Authorization, DiscoveredRoom,
|
|
2
|
+
import type { Adapter, TypedPath, AdapterFailure, Authorization, BootstrapPart, DiscoveredRoom, NotReady, RetryableRefusal, RoomModels } from './adapter.js';
|
|
3
3
|
import type { Composition } from './collection.js';
|
|
4
4
|
import type { InstallationStep } from './readiness.js';
|
|
5
5
|
import { type Refreshing } from './refresh.js';
|
|
6
|
-
import type
|
|
6
|
+
import { type ReplicaRecord } from './replica.js';
|
|
7
7
|
import type { StagedPage, TransferRecord } from './store.js';
|
|
8
|
-
import type
|
|
9
|
-
import { type Refused, type Unconfirmed } from './transfer.js';
|
|
8
|
+
import { type Unconfirmed } from './transfer.js';
|
|
10
9
|
export type Bootstrapped = {
|
|
11
10
|
kind: 'staged';
|
|
12
11
|
record: ReplicaRecord;
|
|
13
12
|
refreshed: boolean;
|
|
14
13
|
};
|
|
15
|
-
export type BootstrapOutcome = Bootstrapped |
|
|
14
|
+
export type BootstrapOutcome = Bootstrapped | Unconfirmed | NotReady | RetryableRefusal | AdapterFailure;
|
|
16
15
|
export type HeldModels = {
|
|
17
16
|
collection: ModelState;
|
|
18
17
|
};
|
|
19
18
|
export type Remodel = (models: RoomModels | undefined, held: HeldModels) => HeldModels;
|
|
20
19
|
export type Reads = Pick<Adapter, 'bootstrap' | 'refresh' | 'reached'>;
|
|
21
20
|
export type Arriving = {
|
|
22
|
-
at(
|
|
21
|
+
at(bytes: number): void;
|
|
23
22
|
end(): void;
|
|
24
23
|
};
|
|
24
|
+
export type Resumed = {
|
|
25
|
+
readonly record: TransferRecord | null;
|
|
26
|
+
readonly staged: ReadonlySet<string>;
|
|
27
|
+
};
|
|
25
28
|
export type Staging = {
|
|
26
29
|
held(locator: string): TransferRecord | null;
|
|
27
30
|
turn(locator: string, step: InstallationStep): Promise<() => void>;
|
|
28
|
-
|
|
31
|
+
unqueued(): Promise<void>;
|
|
32
|
+
queued(text: number): () => void;
|
|
29
33
|
arriving(locator: string): Arriving;
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
stage(record: TransferRecord, page: StagedPage, composition: Composition, written: string | null): Promise<TransferRecord | null>;
|
|
34
|
+
readonly streamed: boolean;
|
|
35
|
+
stage(record: TransferRecord, page: StagedPage, composition: Composition): Promise<TransferRecord | null>;
|
|
36
|
+
resume(record: TransferRecord, parts: readonly BootstrapPart[], composition: Composition): Promise<Resumed | null>;
|
|
34
37
|
derive(locator: string, key: number, composition: Composition): Promise<boolean>;
|
|
35
38
|
refreshing(locator: string, key: number, composition: Composition): Promise<Refreshing>;
|
|
36
39
|
abandon(locator: string): Promise<void>;
|
|
37
40
|
setAside(locator: string): Promise<void>;
|
|
38
41
|
release(key: number): Promise<void>;
|
|
39
|
-
content(key: number): HeldContent;
|
|
40
|
-
validate(record: ReplicaRecord, view: View): Promise<Refused | null>;
|
|
41
|
-
};
|
|
42
|
-
export declare const NOTHING_DONE: {
|
|
43
|
-
readonly parts: 0;
|
|
44
|
-
readonly bytes: 0;
|
|
45
42
|
};
|
|
46
|
-
export declare function bootstrapRoom(adapter: Reads, authorization: Authorization, room: DiscoveredRoom, held: HeldModels, builtIn: ModelState, remodel: Remodel, continuing: () => boolean, staging: Staging
|
|
43
|
+
export declare function bootstrapRoom(adapter: Reads, authorization: Authorization, room: DiscoveredRoom, held: HeldModels, builtIn: ModelState, typedPaths: readonly TypedPath[], remodel: Remodel, continuing: () => boolean, staging: Staging): Promise<BootstrapOutcome>;
|
|
47
44
|
//# sourceMappingURL=bootstrap.d.ts.map
|
package/dist/bootstrap.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EACV,OAAO,EACP,cAAc,EACd,aAAa,
|
|
1
|
+
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
|
package/dist/bootstrap.js
CHANGED
|
@@ -1,54 +1,34 @@
|
|
|
1
|
+
import { declared } from './declaration.js';
|
|
1
2
|
import { transferIdentity } from './identity.js';
|
|
2
3
|
import { advancement, pageEntries } from './refresh.js';
|
|
4
|
+
import { entriesIn } from './shared.js';
|
|
5
|
+
import { compositionOf } from './replica.js';
|
|
3
6
|
import { unconfirmed } from './transfer.js';
|
|
4
|
-
export const NOTHING_DONE = { parts: 0, bytes: 0 };
|
|
5
|
-
const RESUMABLE = new Set([
|
|
6
|
-
'transport-uncertainty',
|
|
7
|
-
'retryable-refusal',
|
|
8
|
-
'unconfirmed',
|
|
9
|
-
]);
|
|
10
7
|
const NOTHING_PRIOR = () => Promise.resolve(new Map());
|
|
11
|
-
|
|
8
|
+
const PARTS_IN_FLIGHT = 6;
|
|
9
|
+
function textOf(page) {
|
|
10
|
+
let text = 0;
|
|
11
|
+
for (const [, content] of entriesIn(page.documents))
|
|
12
|
+
text += content.length;
|
|
13
|
+
return text;
|
|
14
|
+
}
|
|
15
|
+
async function pageOf(page, part) {
|
|
12
16
|
return {
|
|
13
17
|
entries: await pageEntries(page, [], page.roomVersion, NOTHING_PRIOR),
|
|
14
18
|
folders: page.folders ?? [],
|
|
19
|
+
...(part === undefined ? {} : { part }),
|
|
15
20
|
};
|
|
16
21
|
}
|
|
17
|
-
function
|
|
18
|
-
if (
|
|
19
|
-
return second;
|
|
20
|
-
return {
|
|
21
|
-
async files(after, limit) {
|
|
22
|
-
const [left, right] = await Promise.all([
|
|
23
|
-
first.files(after, limit),
|
|
24
|
-
second.files(after, limit),
|
|
25
|
-
]);
|
|
26
|
-
const merged = new Map([...left, ...right].map((file) => [file.path, file]));
|
|
27
|
-
return [...merged.values()]
|
|
28
|
-
.sort((one, other) => (one.path < other.path ? -1 : one.path > other.path ? 1 : 0))
|
|
29
|
-
.slice(0, limit);
|
|
30
|
-
},
|
|
31
|
-
async contents(paths) {
|
|
32
|
-
const [left, right] = await Promise.all([first.contents(paths), second.contents(paths)]);
|
|
33
|
-
return new Map([...left, ...right]);
|
|
34
|
-
},
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
const NO_CONTENT = {
|
|
38
|
-
files: () => Promise.resolve([]),
|
|
39
|
-
contents: () => Promise.resolve(new Map()),
|
|
40
|
-
};
|
|
41
|
-
export async function bootstrapRoom(adapter, authorization, room, held, builtIn, remodel, continuing, staging, reuse) {
|
|
42
|
-
const kept = staging.held(room.locator);
|
|
43
|
-
const resumed = kept !== null && kept.selection === room.replica.selection ? kept : null;
|
|
44
|
-
if (kept !== null && resumed === null)
|
|
22
|
+
export async function bootstrapRoom(adapter, authorization, room, held, builtIn, typedPaths, remodel, continuing, staging) {
|
|
23
|
+
if (staging.held(room.locator) !== null)
|
|
45
24
|
await staging.abandon(room.locator);
|
|
46
|
-
const
|
|
25
|
+
const begun = () => started(adapter, authorization, room, held, builtIn, typedPaths, remodel, continuing, staging);
|
|
26
|
+
const first = await begun();
|
|
47
27
|
if (first.kind !== 'expired')
|
|
48
28
|
return first;
|
|
49
29
|
await staging.setAside(room.locator);
|
|
50
30
|
try {
|
|
51
|
-
const replacement = await
|
|
31
|
+
const replacement = await begun();
|
|
52
32
|
if (replacement.kind !== 'expired')
|
|
53
33
|
return replacement;
|
|
54
34
|
await staging.abandon(room.locator);
|
|
@@ -59,107 +39,88 @@ export async function bootstrapRoom(adapter, authorization, room, held, builtIn,
|
|
|
59
39
|
await staging.release(first.key);
|
|
60
40
|
}
|
|
61
41
|
}
|
|
62
|
-
const UNASKED = { page: unconfirmed, reused: false };
|
|
63
|
-
const NOTHING_KEPT = Promise.resolve();
|
|
64
42
|
function dropped(ahead) {
|
|
65
43
|
void ahead?.fetched.then(({ next, written }) => {
|
|
66
44
|
written();
|
|
67
45
|
dropped(next);
|
|
68
46
|
}, () => { });
|
|
69
47
|
}
|
|
70
|
-
function
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
48
|
+
async function started(adapter, authorization, room, held, builtIn, typedPaths, remodel, continuing, staging) {
|
|
49
|
+
const mode = { paged: false };
|
|
50
|
+
let outcome;
|
|
51
|
+
try {
|
|
52
|
+
outcome = await bundle(adapter, authorization, room, held, builtIn, typedPaths, remodel, continuing, staging, mode);
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
await stopped(staging, room.locator, mode).catch(() => { });
|
|
56
|
+
throw error;
|
|
57
|
+
}
|
|
58
|
+
if (outcome.kind !== 'staged' && outcome.kind !== 'expired') {
|
|
59
|
+
await stopped(staging, room.locator, mode);
|
|
60
|
+
}
|
|
61
|
+
return outcome;
|
|
62
|
+
}
|
|
63
|
+
function stopped(staging, locator, mode) {
|
|
64
|
+
return mode.paged ? staging.abandon(locator) : staging.setAside(locator);
|
|
77
65
|
}
|
|
78
|
-
async function bundle(adapter, authorization, room, held, builtIn, remodel, continuing, staging,
|
|
66
|
+
async function bundle(adapter, authorization, room, held, builtIn, typedPaths, remodel, continuing, staging, mode) {
|
|
79
67
|
const locator = room.locator;
|
|
80
68
|
const selection = room.replica.selection;
|
|
81
|
-
|
|
82
|
-
let looking = kept !== null;
|
|
83
|
-
let stopped = false;
|
|
84
|
-
let begin = () => { };
|
|
85
|
-
const begun = kept === null
|
|
86
|
-
? new Promise((resolve) => {
|
|
87
|
-
begin = resolve;
|
|
88
|
-
})
|
|
89
|
-
: NOTHING_KEPT;
|
|
69
|
+
const ending = new AbortController();
|
|
90
70
|
const arriving = staging.arriving(locator);
|
|
91
|
-
const
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
: { pageToken: token, arriving: (bytes) => arriving.at(token, bytes) }),
|
|
101
|
-
...(pool === null ? {} : { held: pool }),
|
|
102
|
-
...(received === null ? {} : { received }),
|
|
103
|
-
});
|
|
104
|
-
return { page, reused: received !== null };
|
|
105
|
-
};
|
|
71
|
+
const downloaded = await staging.turn(locator, 'downloading');
|
|
72
|
+
const asking = (token) => adapter.bootstrap(authorization, {
|
|
73
|
+
locator,
|
|
74
|
+
selection,
|
|
75
|
+
signal: ending.signal,
|
|
76
|
+
...(token === null
|
|
77
|
+
? { arriving: (bytes) => arriving.at(bytes) }
|
|
78
|
+
: { pageToken: token }),
|
|
79
|
+
});
|
|
106
80
|
const fetching = (token) => {
|
|
107
81
|
const fetched = (async () => {
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
finally {
|
|
114
|
-
release();
|
|
115
|
-
}
|
|
116
|
-
const { page, reused } = asked;
|
|
117
|
-
if (page.kind !== 'bootstrap') {
|
|
118
|
-
return { page, kept: NOTHING_KEPT, next: null, written: () => { } };
|
|
119
|
-
}
|
|
120
|
-
const received = page.received;
|
|
121
|
-
const written = staging.queued(received?.byteLength ?? 0);
|
|
122
|
-
let kept = NOTHING_KEPT;
|
|
123
|
-
if (token !== null && received !== undefined && !reused) {
|
|
124
|
-
kept = begun.then(() => staging.keep(locator, token, received));
|
|
125
|
-
kept.catch(() => { });
|
|
126
|
-
}
|
|
82
|
+
await staging.unqueued();
|
|
83
|
+
const page = continuing() ? await asking(token) : unconfirmed;
|
|
84
|
+
if (page.kind !== 'bootstrap')
|
|
85
|
+
return { page, next: null, written: () => { } };
|
|
86
|
+
const written = staging.queued(textOf(page));
|
|
127
87
|
const later = page.pageToken;
|
|
128
|
-
|
|
129
|
-
|
|
88
|
+
if (later === undefined && page.parts === undefined) {
|
|
89
|
+
downloaded();
|
|
90
|
+
arriving.end();
|
|
91
|
+
}
|
|
92
|
+
return { page, written, next: later === undefined || !continuing() ? null : fetching(later) };
|
|
130
93
|
})();
|
|
131
94
|
fetched.catch(() => { });
|
|
132
|
-
return {
|
|
95
|
+
return { fetched };
|
|
133
96
|
};
|
|
134
|
-
let
|
|
97
|
+
let transfer = null;
|
|
98
|
+
let ahead = fetching(null);
|
|
135
99
|
try {
|
|
136
|
-
while (
|
|
100
|
+
while (ahead !== null) {
|
|
137
101
|
if (!continuing())
|
|
138
102
|
return unconfirmed;
|
|
139
|
-
const
|
|
140
|
-
const current = ahead !== null && ahead.token === asked ? ahead : fetching(asked);
|
|
141
|
-
if (ahead !== current)
|
|
142
|
-
dropped(ahead);
|
|
143
|
-
ahead = null;
|
|
144
|
-
const fetched = await current.fetched;
|
|
103
|
+
const fetched = await ahead.fetched;
|
|
145
104
|
ahead = fetched.next;
|
|
146
105
|
try {
|
|
147
106
|
if (!continuing())
|
|
148
107
|
return unconfirmed;
|
|
149
108
|
const page = fetched.page;
|
|
150
|
-
if (page.kind === 'beyond-horizon')
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
}
|
|
154
|
-
if (page.kind !== 'bootstrap') {
|
|
155
|
-
if (!RESUMABLE.has(page.kind))
|
|
156
|
-
await staging.abandon(locator);
|
|
109
|
+
if (page.kind === 'beyond-horizon')
|
|
110
|
+
return { kind: 'expired', key: transfer?.key ?? null };
|
|
111
|
+
if (page.kind !== 'bootstrap')
|
|
157
112
|
return page;
|
|
113
|
+
if (transfer === null && page.parts !== undefined) {
|
|
114
|
+
const parted = await parts(page, page.parts);
|
|
115
|
+
if (parted.kind !== 'parted')
|
|
116
|
+
return parted;
|
|
117
|
+
transfer = parted.transfer;
|
|
118
|
+
continue;
|
|
158
119
|
}
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
const
|
|
162
|
-
const
|
|
120
|
+
if (transfer === null)
|
|
121
|
+
mode.paged = true;
|
|
122
|
+
const models = remodel(page.models, transfer?.models ?? held);
|
|
123
|
+
const staged = await staging.stage({
|
|
163
124
|
locator,
|
|
164
125
|
transfer: transfer?.transfer ?? transferIdentity(),
|
|
165
126
|
selection,
|
|
@@ -169,17 +130,13 @@ async function bundle(adapter, authorization, room, held, builtIn, remodel, cont
|
|
|
169
130
|
last: transfer !== null && !adapter.reached(locator, page.roomVersion, transfer.last)
|
|
170
131
|
? transfer.last
|
|
171
132
|
: page.roomVersion,
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
done: part === undefined ? done : { parts: done.parts + 1, bytes: done.bytes + part },
|
|
175
|
-
models: remodel(page.models, transfer?.models ?? held),
|
|
133
|
+
done: { bytes: (transfer?.done.bytes ?? 0) + (page.bytes ?? 0) },
|
|
134
|
+
models,
|
|
176
135
|
key: transfer?.key ?? null,
|
|
177
|
-
};
|
|
178
|
-
const staged = await staging.stage(next, await pageOf(page), compositionFor(room, next.models, builtIn), part === undefined ? null : asked);
|
|
136
|
+
}, await pageOf(page), compositionOf(models.collection, room.typedSelection, builtIn, typedPaths));
|
|
179
137
|
if (staged === null)
|
|
180
138
|
return unconfirmed;
|
|
181
139
|
transfer = staged;
|
|
182
|
-
begin();
|
|
183
140
|
}
|
|
184
141
|
finally {
|
|
185
142
|
fetched.written();
|
|
@@ -187,49 +144,186 @@ async function bundle(adapter, authorization, room, held, builtIn, remodel, cont
|
|
|
187
144
|
}
|
|
188
145
|
}
|
|
189
146
|
finally {
|
|
190
|
-
|
|
191
|
-
|
|
147
|
+
ending.abort();
|
|
148
|
+
downloaded();
|
|
192
149
|
arriving.end();
|
|
150
|
+
dropped(ahead);
|
|
193
151
|
}
|
|
194
|
-
|
|
195
|
-
if (!(await staging.derive(locator, transfer.key, composition)))
|
|
152
|
+
if (transfer === null)
|
|
196
153
|
return unconfirmed;
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
154
|
+
return installed(transfer);
|
|
155
|
+
async function parts(head, listed) {
|
|
156
|
+
const models = remodel(head.models, held);
|
|
157
|
+
const composition = compositionOf(models.collection, room.typedSelection, builtIn, typedPaths);
|
|
158
|
+
const resumed = await staging.resume({
|
|
159
|
+
locator,
|
|
160
|
+
transfer: transferIdentity(),
|
|
161
|
+
selection,
|
|
162
|
+
from: head.roomVersion,
|
|
163
|
+
last: head.roomVersion,
|
|
164
|
+
done: { bytes: 0 },
|
|
165
|
+
models,
|
|
166
|
+
key: null,
|
|
167
|
+
}, listed, composition);
|
|
168
|
+
if (resumed === null)
|
|
169
|
+
return unconfirmed;
|
|
170
|
+
let staged = resumed.record ?? {
|
|
171
|
+
locator,
|
|
172
|
+
transfer: transferIdentity(),
|
|
173
|
+
selection,
|
|
174
|
+
from: head.roomVersion,
|
|
175
|
+
last: head.roomVersion,
|
|
176
|
+
done: { bytes: 0 },
|
|
177
|
+
models,
|
|
178
|
+
key: null,
|
|
179
|
+
};
|
|
180
|
+
const wanted = listed.filter((part) => !resumed.staged.has(part.id));
|
|
181
|
+
let arrived = staged.done.bytes;
|
|
182
|
+
const partial = new Map();
|
|
183
|
+
const report = () => {
|
|
184
|
+
let bytes = arrived;
|
|
185
|
+
for (const held of partial.values())
|
|
186
|
+
bytes += held;
|
|
187
|
+
arriving.at(bytes);
|
|
188
|
+
};
|
|
189
|
+
report();
|
|
190
|
+
const arrivals = [];
|
|
191
|
+
let woken = null;
|
|
192
|
+
let next = 0;
|
|
193
|
+
let flying = 0;
|
|
194
|
+
let halted = false;
|
|
195
|
+
let stopped = false;
|
|
196
|
+
let admitted = Promise.resolve();
|
|
197
|
+
const fetched = () => {
|
|
198
|
+
if ((next < wanted.length && !halted) || flying > 0)
|
|
199
|
+
return;
|
|
200
|
+
downloaded();
|
|
201
|
+
arriving.end();
|
|
202
|
+
};
|
|
203
|
+
const landed = (one) => {
|
|
204
|
+
flying -= 1;
|
|
205
|
+
if (stopped)
|
|
206
|
+
one.written();
|
|
207
|
+
else
|
|
208
|
+
arrivals.push(one);
|
|
209
|
+
woken?.();
|
|
210
|
+
ask();
|
|
211
|
+
fetched();
|
|
212
|
+
};
|
|
213
|
+
const fetch = async (part) => {
|
|
214
|
+
let written = () => { };
|
|
215
|
+
const admission = admitted.then(async () => {
|
|
216
|
+
await staging.unqueued();
|
|
217
|
+
written = staging.queued(part.bytes);
|
|
218
|
+
});
|
|
219
|
+
admitted = admission;
|
|
220
|
+
await admission;
|
|
221
|
+
const page = continuing()
|
|
222
|
+
? await adapter.bootstrap(authorization, {
|
|
223
|
+
locator,
|
|
224
|
+
selection,
|
|
225
|
+
signal: ending.signal,
|
|
226
|
+
pageToken: part.id,
|
|
227
|
+
arriving: (bytes) => {
|
|
228
|
+
partial.set(part.id, Math.min(bytes, part.bytes));
|
|
229
|
+
report();
|
|
230
|
+
},
|
|
231
|
+
})
|
|
232
|
+
: unconfirmed;
|
|
233
|
+
landed({ part, page, written });
|
|
234
|
+
};
|
|
235
|
+
const ask = () => {
|
|
236
|
+
while (!stopped && !halted && flying < PARTS_IN_FLIGHT && next < wanted.length) {
|
|
237
|
+
const part = wanted[next];
|
|
238
|
+
next += 1;
|
|
239
|
+
flying += 1;
|
|
240
|
+
fetch(part).catch((error) => landed({ part, page: unconfirmed, written: () => { }, error }));
|
|
241
|
+
}
|
|
242
|
+
};
|
|
243
|
+
let failed = null;
|
|
244
|
+
ask();
|
|
245
|
+
fetched();
|
|
246
|
+
try {
|
|
247
|
+
for (;;) {
|
|
248
|
+
while (arrivals.length === 0) {
|
|
249
|
+
if (flying === 0 && (halted || next >= wanted.length))
|
|
250
|
+
break;
|
|
251
|
+
await new Promise((wake) => (woken = wake));
|
|
252
|
+
woken = null;
|
|
253
|
+
}
|
|
254
|
+
const one = arrivals.shift();
|
|
255
|
+
if (one === undefined)
|
|
256
|
+
break;
|
|
257
|
+
const { part, page, written, error } = one;
|
|
258
|
+
try {
|
|
259
|
+
if (error !== undefined)
|
|
260
|
+
throw error;
|
|
261
|
+
if (!continuing())
|
|
262
|
+
return unconfirmed;
|
|
263
|
+
if (page.kind !== 'bootstrap') {
|
|
264
|
+
halted = true;
|
|
265
|
+
failed ??= page.kind === 'beyond-horizon' ? unconfirmed : page;
|
|
266
|
+
continue;
|
|
267
|
+
}
|
|
268
|
+
partial.delete(part.id);
|
|
269
|
+
arrived += part.bytes;
|
|
270
|
+
report();
|
|
271
|
+
const kept = await staging.stage({ ...staged, done: { bytes: staged.done.bytes + part.bytes } }, await pageOf({ ...page, roomVersion: head.roomVersion }, part.id), composition);
|
|
272
|
+
if (kept === null)
|
|
273
|
+
return unconfirmed;
|
|
274
|
+
staged = kept;
|
|
275
|
+
}
|
|
276
|
+
finally {
|
|
277
|
+
written();
|
|
278
|
+
}
|
|
279
|
+
}
|
|
226
280
|
}
|
|
227
|
-
|
|
281
|
+
finally {
|
|
282
|
+
stopped = true;
|
|
283
|
+
for (const one of arrivals.splice(0))
|
|
284
|
+
one.written();
|
|
285
|
+
}
|
|
286
|
+
if (failed !== null)
|
|
287
|
+
return failed;
|
|
288
|
+
if (staged.key === null) {
|
|
289
|
+
const empty = await staging.stage(staged, { entries: [], folders: [] }, composition);
|
|
290
|
+
if (empty === null)
|
|
291
|
+
return unconfirmed;
|
|
292
|
+
staged = empty;
|
|
293
|
+
}
|
|
294
|
+
return { kind: 'parted', transfer: staged };
|
|
228
295
|
}
|
|
229
|
-
|
|
230
|
-
|
|
296
|
+
async function installed(transfer) {
|
|
297
|
+
const composition = compositionOf(transfer.models.collection, room.typedSelection, builtIn, typedPaths);
|
|
298
|
+
if (!(await staging.derive(locator, transfer.key, composition)))
|
|
299
|
+
return unconfirmed;
|
|
300
|
+
await staging.turn(locator, 'replaying');
|
|
301
|
+
if (!continuing())
|
|
302
|
+
return unconfirmed;
|
|
303
|
+
const record = {
|
|
304
|
+
locator,
|
|
305
|
+
declaration: declared(room),
|
|
306
|
+
model: transfer.models.collection,
|
|
307
|
+
roomVersion: transfer.from,
|
|
308
|
+
transfer: transfer.transfer,
|
|
309
|
+
inventory: transfer.done,
|
|
310
|
+
key: transfer.key,
|
|
311
|
+
};
|
|
312
|
+
const last = transfer.last;
|
|
313
|
+
const refresh = adapter.refresh;
|
|
314
|
+
const reconciled = last === transfer.from &&
|
|
315
|
+
(staging.streamed || adapter.reached(locator, last, room.roomVersion))
|
|
316
|
+
? { kind: 'still-current' }
|
|
317
|
+
: refresh === undefined
|
|
318
|
+
? unconfirmed
|
|
319
|
+
: await advancement(refresh, authorization, record, remodel, continuing, await staging.refreshing(locator, record.key, composition));
|
|
320
|
+
if (reconciled.kind === 'advanced') {
|
|
321
|
+
return { kind: 'staged', record: reconciled.record, refreshed: true };
|
|
322
|
+
}
|
|
323
|
+
if (reconciled.kind === 'still-current')
|
|
324
|
+
return { kind: 'staged', record, refreshed: false };
|
|
325
|
+
if (reconciled.kind === 'beyond-horizon')
|
|
326
|
+
return { kind: 'expired', key: record.key };
|
|
327
|
+
return reconciled;
|
|
231
328
|
}
|
|
232
|
-
if (!RESUMABLE.has(reconciled.kind))
|
|
233
|
-
await staging.abandon(locator);
|
|
234
|
-
return reconciled;
|
|
235
329
|
}
|
package/dist/cell.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cell.d.ts","sourceRoot":"","sources":["../src/cell.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,CAAC,CAAC,IAAI;IACpB,GAAG,IAAI,CAAC,CAAC;IACT,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CAC/B,CAAC;AAEF,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAQ9D"}
|
package/dist/cell.js
ADDED
package/dist/chain.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import type { DocumentQuery, GroupQuery } from '@agentshouse/mdmodel';
|
|
1
2
|
import type { MdRuntimeClient } from './client.js';
|
|
2
|
-
import type {
|
|
3
|
+
import type { DocumentResult, GroupResult, PendingResult } from './query.js';
|
|
3
4
|
type Rows = DocumentResult | GroupResult;
|
|
4
5
|
export type WindowAnswer = Rows | PendingResult;
|
|
5
6
|
export type WindowChain = {
|
package/dist/chain.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../src/chain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../src/chain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE7E,KAAK,IAAI,GAAG,cAAc,GAAG,WAAW,CAAC;AAEzC,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,aAAa,CAAC;AAEhD,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,IAAI,IAAI,CAAC;CACf,CAAC;AAaF,wBAAgB,cAAc,CAC5B,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,aAAa,GAAG,UAAU,EACjC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,GAC7E,WAAW,CAkEb"}
|
package/dist/change-set.d.ts
CHANGED
|
@@ -12,6 +12,8 @@ export type ChangeSet = {
|
|
|
12
12
|
queues: readonly string[];
|
|
13
13
|
presentations: readonly string[];
|
|
14
14
|
conversations: readonly string[];
|
|
15
|
+
unindexed: readonly string[];
|
|
16
|
+
due: readonly string[];
|
|
15
17
|
};
|
|
16
18
|
type Changed = {
|
|
17
19
|
documents?: readonly string[] | null;
|
|
@@ -19,6 +21,8 @@ type Changed = {
|
|
|
19
21
|
room?: boolean;
|
|
20
22
|
queue?: boolean;
|
|
21
23
|
presentation?: string;
|
|
24
|
+
unindexed?: boolean;
|
|
25
|
+
due?: boolean;
|
|
22
26
|
};
|
|
23
27
|
export declare function changeSet(locator: string, changed?: Changed): ChangeSet;
|
|
24
28
|
export declare function conversationChangeSet(conversations: readonly string[]): ChangeSet;
|
package/dist/change-set.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-set.d.ts","sourceRoot":"","sources":["../src/change-set.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAExF,MAAM,MAAM,SAAS,GAAG;IACtB,SAAS,EAAE,SAAS,cAAc,EAAE,CAAC;IACrC,MAAM,EAAE,SAAS;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACrD,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"change-set.d.ts","sourceRoot":"","sources":["../src/change-set.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC;AAExF,MAAM,MAAM,SAAS,GAAG;IACtB,SAAS,EAAE,SAAS,cAAc,EAAE,CAAC;IACrC,MAAM,EAAE,SAAS;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACrD,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,GAAG,EAAE,SAAS,MAAM,EAAE,CAAC;CACxB,CAAC;AAEF,KAAK,OAAO,GAAG;IACb,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;IACrC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,OAAY,GAAG,SAAS,CAiB3E;AAED,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAWjF;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,CAWrE;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAI9E"}
|
package/dist/change-set.js
CHANGED
|
@@ -11,6 +11,8 @@ export function changeSet(locator, changed = {}) {
|
|
|
11
11
|
queues: changed.queue ? [locator] : [],
|
|
12
12
|
presentations: changed.presentation === undefined ? [] : [changed.presentation],
|
|
13
13
|
conversations: [],
|
|
14
|
+
unindexed: changed.unindexed ? [locator] : [],
|
|
15
|
+
due: changed.due ? [locator] : [],
|
|
14
16
|
};
|
|
15
17
|
}
|
|
16
18
|
export function conversationChangeSet(conversations) {
|
|
@@ -21,6 +23,8 @@ export function conversationChangeSet(conversations) {
|
|
|
21
23
|
queues: [],
|
|
22
24
|
presentations: [],
|
|
23
25
|
conversations: [...new Set(conversations)],
|
|
26
|
+
unindexed: [],
|
|
27
|
+
due: [],
|
|
24
28
|
};
|
|
25
29
|
}
|
|
26
30
|
export function mergeChangeSets(sets) {
|
|
@@ -31,6 +35,8 @@ export function mergeChangeSets(sets) {
|
|
|
31
35
|
queues: [...new Set(sets.flatMap((set) => set.queues))],
|
|
32
36
|
presentations: [...new Set(sets.flatMap((set) => set.presentations))],
|
|
33
37
|
conversations: [...new Set(sets.flatMap((set) => set.conversations))],
|
|
38
|
+
unindexed: [...new Set(sets.flatMap((set) => set.unindexed))],
|
|
39
|
+
due: [...new Set(sets.flatMap((set) => set.due))],
|
|
34
40
|
};
|
|
35
41
|
}
|
|
36
42
|
export function touches(set, locator, path) {
|