@astrale-os/kernel-client 0.3.0 → 0.4.0
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/graph/api.d.ts +3 -0
- package/dist/graph/api.d.ts.map +1 -1
- package/dist/graph/api.js +2 -0
- package/dist/graph/api.js.map +1 -1
- package/dist/graph/index.d.ts +2 -0
- package/dist/graph/index.d.ts.map +1 -1
- package/dist/graph/index.js +1 -0
- package/dist/graph/index.js.map +1 -1
- package/dist/graph/reconcile/execute.d.ts +8 -0
- package/dist/graph/reconcile/execute.d.ts.map +1 -0
- package/dist/graph/reconcile/execute.js +56 -0
- package/dist/graph/reconcile/execute.js.map +1 -0
- package/dist/graph/reconcile/index.d.ts +5 -0
- package/dist/graph/reconcile/index.d.ts.map +1 -0
- package/dist/graph/reconcile/index.js +3 -0
- package/dist/graph/reconcile/index.js.map +1 -0
- package/dist/graph/reconcile/input.d.ts +80 -0
- package/dist/graph/reconcile/input.d.ts.map +1 -0
- package/dist/graph/reconcile/input.js +5 -0
- package/dist/graph/reconcile/input.js.map +1 -0
- package/dist/graph/reconcile/normalize.d.ts +3 -0
- package/dist/graph/reconcile/normalize.d.ts.map +1 -0
- package/dist/graph/reconcile/normalize.js +144 -0
- package/dist/graph/reconcile/normalize.js.map +1 -0
- package/dist/graph/reconcile/result.d.ts +19 -0
- package/dist/graph/reconcile/result.d.ts.map +1 -0
- package/dist/graph/reconcile/result.js +95 -0
- package/dist/graph/reconcile/result.js.map +1 -0
- package/dist/graph/reconcile/scope.d.ts +6 -0
- package/dist/graph/reconcile/scope.d.ts.map +1 -0
- package/dist/graph/reconcile/scope.js +69 -0
- package/dist/graph/reconcile/scope.js.map +1 -0
- package/dist/store/memory.d.ts +3 -1
- package/dist/store/memory.d.ts.map +1 -1
- package/dist/store/memory.js +23 -0
- package/dist/store/memory.js.map +1 -1
- package/package.json +5 -5
package/dist/graph/api.d.ts
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
import type { QueryASTInput } from '@astrale-os/kernel-core';
|
|
10
10
|
import type { PatchBuilder, PatchInput, WriteShorthands } from './mutate';
|
|
11
11
|
import type { GatherBuilder, QuerySource, ReadShorthands } from './query';
|
|
12
|
+
import type { ReconcileFn } from './reconcile';
|
|
12
13
|
import type { GraphResult } from './result';
|
|
13
14
|
import type { MutationResultWire } from './wire';
|
|
14
15
|
/** Colon FunctionPath of the `function.get` read syscall. */
|
|
@@ -33,6 +34,8 @@ export interface GraphApi extends ReadShorthands, WriteShorthands {
|
|
|
33
34
|
query: QueryFn;
|
|
34
35
|
/** Batch write — `function.mutate`, all-or-nothing. See {@link MutateFn}. */
|
|
35
36
|
mutate: MutateFn;
|
|
37
|
+
/** Scoped read-diff-mutate convergence. See {@link ReconcileFn}. */
|
|
38
|
+
reconcile: ReconcileFn;
|
|
36
39
|
}
|
|
37
40
|
/**
|
|
38
41
|
* The write operation `mutate`, two shapes under one name:
|
package/dist/graph/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/graph/api.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAY,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAItE,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,KAAK,EAAiB,kBAAkB,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/graph/api.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAY,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAItE,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,KAAK,EAAiB,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAW/D,6DAA6D;AAC7D,eAAO,MAAM,eAAe,QAA+B,CAAA;AAC3D,iEAAiE;AACjE,eAAO,MAAM,kBAAkB,QAAkC,CAAA;AAEjE;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,QAAS,SAAQ,cAAc,EAAE,eAAe;IAC/D,4EAA4E;IAC5E,KAAK,EAAE,OAAO,CAAA;IACd,6EAA6E;IAC7E,MAAM,EAAE,QAAQ,CAAA;IAChB,oEAAoE;IACpE,SAAS,EAAE,WAAW,CAAA;CACvB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,QAAQ;IACvB,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAC/E,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;CACjD;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,OAAO;IACtB,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IAChE,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;CAC3C;AAED;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;AAE7E,mDAAmD;AACnD,wBAAgB,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,QAAQ,CAwD7E;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAA;CACzC,CAAA"}
|
package/dist/graph/api.js
CHANGED
|
@@ -10,6 +10,7 @@ import { K, queryAstSchema } from '@astrale-os/kernel-core';
|
|
|
10
10
|
import { NotFoundError } from '../errors/errors';
|
|
11
11
|
import { makeWriteShorthands, PatchBuilderImpl } from './mutate';
|
|
12
12
|
import { lowerToGet, makeReadShorthands, Q } from './query';
|
|
13
|
+
import { makeReconcile } from './reconcile';
|
|
13
14
|
import { makeGraphResult } from './result';
|
|
14
15
|
// Call addresses straight from the compiled kernel schema — the one canonical
|
|
15
16
|
// accessor, no constant mirrors. Exported as the schema-derived syscall paths
|
|
@@ -57,6 +58,7 @@ export function createGraph(call, opts) {
|
|
|
57
58
|
return {
|
|
58
59
|
query,
|
|
59
60
|
mutate,
|
|
61
|
+
reconcile: makeReconcile(read, commit),
|
|
60
62
|
...makeReadShorthands(runGet),
|
|
61
63
|
...makeWriteShorthands(commit),
|
|
62
64
|
};
|
package/dist/graph/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/graph/api.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,CAAC,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/graph/api.ts"],"names":[],"mappings":"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"}
|
package/dist/graph/index.d.ts
CHANGED
|
@@ -20,5 +20,7 @@ export { DESCRIPTION_KEY, NAME_KEY, STATUS_KEY, descriptionOf, nameOf, statusOf
|
|
|
20
20
|
export type { NamedNodeLike } from './named';
|
|
21
21
|
export { edgeKey, prop, rawOf } from './wire';
|
|
22
22
|
export type { EdgeIdentity, GetNextCursors, GetResultWire, GraphEdgeWire, GraphNodeWire, MutationResultWire, } from './wire';
|
|
23
|
+
export { DEFAULT_CLIENT_RECONCILE_POLICY } from './reconcile';
|
|
24
|
+
export type { ReconcileEdgeInput, ReconcileFn, ReconcileInput, ReconcileNodeInput, ReconcilePolicyInput, ReconcileResult, ReconcileScopeInput, ReconcileSpecInput, } from './reconcile';
|
|
23
25
|
export type { ChildrenSelectorInput, EdgeKey, EdgeMatch, EdgeRef, EdgeSelectorInput, EdgeWire, Expand, Filter, GetInput, GetOutput, GetOutputWire, GraphData, GraphDataWire, MutationResult, NodeWire, PatchData, PatchDataInput, PathLike, PermName, Properties, PropertyValue, QueryAST, QueryASTInput, QueryDir, QueryOrder, QueryPage, QueryRoot, QueryStep, Wire, } from '@astrale-os/kernel-core';
|
|
24
26
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/graph/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAA;AACxE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AACpF,YAAY,EACV,gBAAgB,EAChB,OAAO,EACP,YAAY,EACZ,UAAU,EACV,GAAG,EACH,eAAe,GAChB,MAAM,UAAU,CAAA;AAGjB,OAAO,EACL,CAAC,EACD,iBAAiB,EACjB,UAAU,EACV,kBAAkB,EAClB,CAAC,EACD,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,SAAS,CAAA;AAChB,YAAY,EACV,YAAY,EACZ,SAAS,EACT,WAAW,EACX,WAAW,EACX,aAAa,EACb,OAAO,EACP,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,UAAU,EACV,YAAY,EACZ,WAAW,EACX,cAAc,EACd,WAAW,EACX,YAAY,EACZ,QAAQ,GACT,MAAM,SAAS,CAAA;AAGhB,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AACrF,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAGjE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAChG,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC7C,YAAY,EACV,YAAY,EACZ,cAAc,EACd,aAAa,EACb,aAAa,EACb,aAAa,EACb,kBAAkB,GACnB,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/graph/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAA;AACxE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AACpF,YAAY,EACV,gBAAgB,EAChB,OAAO,EACP,YAAY,EACZ,UAAU,EACV,GAAG,EACH,eAAe,GAChB,MAAM,UAAU,CAAA;AAGjB,OAAO,EACL,CAAC,EACD,iBAAiB,EACjB,UAAU,EACV,kBAAkB,EAClB,CAAC,EACD,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,SAAS,CAAA;AAChB,YAAY,EACV,YAAY,EACZ,SAAS,EACT,WAAW,EACX,WAAW,EACX,aAAa,EACb,OAAO,EACP,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,UAAU,EACV,YAAY,EACZ,WAAW,EACX,cAAc,EACd,WAAW,EACX,YAAY,EACZ,QAAQ,GACT,MAAM,SAAS,CAAA;AAGhB,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AACrF,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAGjE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAChG,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC7C,YAAY,EACV,YAAY,EACZ,cAAc,EACd,aAAa,EACb,aAAa,EACb,aAAa,EACb,kBAAkB,GACnB,MAAM,QAAQ,CAAA;AACf,OAAO,EAAE,+BAA+B,EAAE,MAAM,aAAa,CAAA;AAC7D,YAAY,EACV,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,aAAa,CAAA;AAIpB,YAAY,EACV,qBAAqB,EACrB,OAAO,EACP,SAAS,EACT,OAAO,EACP,iBAAiB,EACjB,QAAQ,EACR,MAAM,EACN,MAAM,EACN,QAAQ,EACR,SAAS,EACT,aAAa,EACb,SAAS,EACT,aAAa,EACb,cAAc,EACd,QAAQ,EACR,SAAS,EACT,cAAc,EACd,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,aAAa,EACb,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,UAAU,EACV,SAAS,EACT,SAAS,EACT,SAAS,EACT,IAAI,GACL,MAAM,yBAAyB,CAAA"}
|
package/dist/graph/index.js
CHANGED
|
@@ -17,4 +17,5 @@ export { makeGraphResult, makePaged, nextQuery, NotImplementedError } from './re
|
|
|
17
17
|
// ─── Universal-prop helpers (blessed; single-sourced from K) ─────────────────
|
|
18
18
|
export { DESCRIPTION_KEY, NAME_KEY, STATUS_KEY, descriptionOf, nameOf, statusOf } from './named';
|
|
19
19
|
export { edgeKey, prop, rawOf } from './wire';
|
|
20
|
+
export { DEFAULT_CLIENT_RECONCILE_POLICY } from './reconcile';
|
|
20
21
|
//# sourceMappingURL=index.js.map
|
package/dist/graph/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/graph/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAA;AAWxE,gFAAgF;AAChF,OAAO,EACL,CAAC,EACD,iBAAiB,EACjB,UAAU,EACV,kBAAkB,EAClB,CAAC,EACD,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,SAAS,CAAA;AAoBhB,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAGrF,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAGhG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/graph/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAA;AAWxE,gFAAgF;AAChF,OAAO,EACL,CAAC,EACD,iBAAiB,EACjB,UAAU,EACV,kBAAkB,EAClB,CAAC,EACD,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,SAAS,CAAA;AAoBhB,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAGrF,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAGhG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAS7C,OAAO,EAAE,+BAA+B,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { GetInput, MutationResult, PatchDataInput } from '@astrale-os/kernel-core';
|
|
2
|
+
import type { GetResultWire } from '../wire';
|
|
3
|
+
import type { ReconcileFn } from './input';
|
|
4
|
+
type Read = (input: GetInput) => Promise<GetResultWire>;
|
|
5
|
+
type Commit = (patch: PatchDataInput) => Promise<MutationResult>;
|
|
6
|
+
export declare function makeReconcile(read: Read, commit: Commit): ReconcileFn;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=execute.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../../src/graph/reconcile/execute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAYnG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAO1C,KAAK,IAAI,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC,aAAa,CAAC,CAAA;AACvD,KAAK,MAAM,GAAG,CAAC,KAAK,EAAE,cAAc,KAAK,OAAO,CAAC,cAAc,CAAC,CAAA;AAEhE,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,CAuCrE"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { diff, Graph, MatchingStrategy, reconcile as reconcileChanges, setAliases, SYSTEM_PROPERTY_KEYS, toEdgeKey, } from '@astrale-os/kernel-core';
|
|
2
|
+
import { normalizeReconcileInput } from './normalize';
|
|
3
|
+
import { applyResult, dryRunResult, emptyApplyResult, isPatchEmpty, toPatchInput } from './result';
|
|
4
|
+
import { assertNoSpecClassMismatches, filterOwnedBase, resolveExistingSpecNodeIds } from './scope';
|
|
5
|
+
export function makeReconcile(read, commit) {
|
|
6
|
+
return async (input) => {
|
|
7
|
+
const normalized = normalizeReconcileInput(input);
|
|
8
|
+
const baseWire = await read(readInput(normalized));
|
|
9
|
+
const base = Graph.fromWire(baseWire);
|
|
10
|
+
assertNoSpecClassMismatches(base, normalized.spec);
|
|
11
|
+
const scopedBase = filterOwnedBase(base, normalized.scope, normalized.specEdgeKeys);
|
|
12
|
+
const existingNodes = resolveExistingSpecNodeIds(base, normalized.specNodePaths);
|
|
13
|
+
const spec = Graph.fromWire({
|
|
14
|
+
nodes: normalized.spec.nodes,
|
|
15
|
+
edges: normalized.spec.edges,
|
|
16
|
+
});
|
|
17
|
+
const changes = diff(scopedBase, spec, {
|
|
18
|
+
nodes: MatchingStrategy.byPath,
|
|
19
|
+
edges: MatchingStrategy.byEdgeIdentity,
|
|
20
|
+
nodeConflict: (node) => normalized.nodeConflictByPath.get(node.path.raw),
|
|
21
|
+
edgeConflict: (edge) => normalized.edgeConflictByKey.get(toEdgeKey(edge)),
|
|
22
|
+
ignoredProperties: SYSTEM_PROPERTY_KEYS,
|
|
23
|
+
});
|
|
24
|
+
const patch = toPatchInput(setAliases(reconcileChanges(changes, {
|
|
25
|
+
defaultStrategy: normalized.policy.onConflict,
|
|
26
|
+
removed: normalized.policy.onRemoved,
|
|
27
|
+
...(normalized.policy.onUntracked !== undefined
|
|
28
|
+
? { untracked: normalized.policy.onUntracked }
|
|
29
|
+
: {}),
|
|
30
|
+
}), spec));
|
|
31
|
+
if (normalized.dryRun)
|
|
32
|
+
return dryRunResult(patch, existingNodes);
|
|
33
|
+
if (isPatchEmpty(patch))
|
|
34
|
+
return emptyApplyResult(patch, existingNodes);
|
|
35
|
+
return applyResult(patch, existingNodes, await commit(patch));
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
function readInput(input) {
|
|
39
|
+
const edgeSelector = edgeReadSelector(input);
|
|
40
|
+
return {
|
|
41
|
+
roots: [...input.scope.roots],
|
|
42
|
+
depth: input.scope.depth,
|
|
43
|
+
...(edgeSelector !== undefined ? { edges: edgeSelector } : {}),
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
function edgeReadSelector(input) {
|
|
47
|
+
if (input.spec.edges.length === 0 && input.policy.onRemoved.edges === 'preserve')
|
|
48
|
+
return undefined;
|
|
49
|
+
if (input.policy.onRemoved.edges !== 'preserve')
|
|
50
|
+
return { direction: 'both' };
|
|
51
|
+
return {
|
|
52
|
+
direction: 'both',
|
|
53
|
+
...(input.specEdgeClasses.length > 0 ? { classes: input.specEdgeClasses } : {}),
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=execute.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/graph/reconcile/execute.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { makeReconcile } from './execute';
|
|
2
|
+
export { DEFAULT_CLIENT_RECONCILE_POLICY } from './input';
|
|
3
|
+
export type { NormalizedReconcileEdge, NormalizedReconcileInput, NormalizedReconcileNode, NormalizedReconcileScope, ReconcileEdgeInput, ReconcileFn, ReconcileInput, ReconcileNodeInput, ReconcilePolicyInput, ReconcileScopeInput, ReconcileSpecInput, } from './input';
|
|
4
|
+
export type { ReconcileResult } from './result';
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graph/reconcile/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,+BAA+B,EAAE,MAAM,SAAS,CAAA;AACzD,YAAY,EACV,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,SAAS,CAAA;AAChB,YAAY,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/graph/reconcile/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,+BAA+B,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import type { ConflictStrategy, IntegrityConstraints, PathLike, Properties, UntrackedPolicy } from '@astrale-os/kernel-core';
|
|
2
|
+
import type { EdgeKey } from '@astrale-os/kernel-core';
|
|
3
|
+
import type { ReconcileResult } from './result';
|
|
4
|
+
export interface ReconcileFn {
|
|
5
|
+
(input: ReconcileInput): Promise<ReconcileResult>;
|
|
6
|
+
}
|
|
7
|
+
export interface ReconcileInput {
|
|
8
|
+
spec: ReconcileSpecInput;
|
|
9
|
+
scope: ReconcileScopeInput;
|
|
10
|
+
policy?: ReconcilePolicyInput;
|
|
11
|
+
integrity?: Partial<IntegrityConstraints>;
|
|
12
|
+
dryRun?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface ReconcileSpecInput {
|
|
15
|
+
nodes?: readonly ReconcileNodeInput[];
|
|
16
|
+
edges?: readonly ReconcileEdgeInput[];
|
|
17
|
+
}
|
|
18
|
+
export interface ReconcileNodeInput {
|
|
19
|
+
class: PathLike;
|
|
20
|
+
path: PathLike;
|
|
21
|
+
props?: Properties;
|
|
22
|
+
onConflict?: ConflictStrategy;
|
|
23
|
+
}
|
|
24
|
+
export interface ReconcileEdgeInput {
|
|
25
|
+
class: PathLike;
|
|
26
|
+
source: PathLike;
|
|
27
|
+
slug?: string;
|
|
28
|
+
target: PathLike;
|
|
29
|
+
props?: Properties;
|
|
30
|
+
onConflict?: ConflictStrategy;
|
|
31
|
+
}
|
|
32
|
+
export interface ReconcileScopeInput {
|
|
33
|
+
roots: readonly PathLike[];
|
|
34
|
+
depth?: number;
|
|
35
|
+
classes?: readonly PathLike[];
|
|
36
|
+
}
|
|
37
|
+
export interface ReconcilePolicyInput {
|
|
38
|
+
onConflict?: ConflictStrategy;
|
|
39
|
+
onRemoved?: UntrackedPolicy;
|
|
40
|
+
onUntracked?: UntrackedPolicy;
|
|
41
|
+
}
|
|
42
|
+
export interface NormalizedReconcileInput {
|
|
43
|
+
spec: {
|
|
44
|
+
nodes: NormalizedReconcileNode[];
|
|
45
|
+
edges: NormalizedReconcileEdge[];
|
|
46
|
+
};
|
|
47
|
+
scope: NormalizedReconcileScope;
|
|
48
|
+
policy: Required<Pick<ReconcilePolicyInput, 'onConflict' | 'onRemoved'>> & Pick<ReconcilePolicyInput, 'onUntracked'>;
|
|
49
|
+
dryRun: boolean;
|
|
50
|
+
nodeConflictByPath: ReadonlyMap<string, ConflictStrategy>;
|
|
51
|
+
edgeConflictByKey: ReadonlyMap<EdgeKey, ConflictStrategy>;
|
|
52
|
+
specNodePaths: readonly string[];
|
|
53
|
+
specEdgeKeys: ReadonlySet<EdgeKey>;
|
|
54
|
+
specEdgeClasses: readonly string[];
|
|
55
|
+
}
|
|
56
|
+
export interface NormalizedReconcileNode {
|
|
57
|
+
class: string;
|
|
58
|
+
path: string;
|
|
59
|
+
props: Properties;
|
|
60
|
+
}
|
|
61
|
+
export interface NormalizedReconcileEdge {
|
|
62
|
+
class: string;
|
|
63
|
+
source: string;
|
|
64
|
+
slug?: string;
|
|
65
|
+
target: string;
|
|
66
|
+
props: Properties;
|
|
67
|
+
}
|
|
68
|
+
export interface NormalizedReconcileScope {
|
|
69
|
+
roots: readonly string[];
|
|
70
|
+
depth: number;
|
|
71
|
+
classes?: ReadonlySet<string>;
|
|
72
|
+
}
|
|
73
|
+
export declare const DEFAULT_CLIENT_RECONCILE_POLICY: {
|
|
74
|
+
onConflict: "merge";
|
|
75
|
+
onRemoved: {
|
|
76
|
+
nodes: "preserve";
|
|
77
|
+
edges: "preserve";
|
|
78
|
+
};
|
|
79
|
+
};
|
|
80
|
+
//# sourceMappingURL=input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/graph/reconcile/input.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input.js","sourceRoot":"","sources":["../../../src/graph/reconcile/input.ts"],"names":[],"mappings":"AA4FA,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC7C,UAAU,EAAE,OAAO;IACnB,SAAS,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;CACuB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../../../src/graph/reconcile/normalize.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAEV,wBAAwB,EAExB,cAAc,EAEf,MAAM,SAAS,CAAA;AAIhB,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,cAAc,GAAG,wBAAwB,CAqEvF"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import { AbsolutePath, isConflictStrategy, isReconcileEntityPolicy, rawOf, toEdgeKey, } from '@astrale-os/kernel-core';
|
|
2
|
+
import { DEFAULT_CLIENT_RECONCILE_POLICY } from './input';
|
|
3
|
+
export function normalizeReconcileInput(input) {
|
|
4
|
+
if (input.integrity !== undefined && Object.keys(input.integrity).length > 0) {
|
|
5
|
+
throw new Error('graph.reconcile: client v0 does not support integrity constraints');
|
|
6
|
+
}
|
|
7
|
+
const scope = normalizeScope(input);
|
|
8
|
+
const policy = normalizePolicy(input.policy);
|
|
9
|
+
const nodeConflictByPath = new Map();
|
|
10
|
+
const edgeConflictByKey = new Map();
|
|
11
|
+
const nodePaths = new Set();
|
|
12
|
+
const edgeKeys = new Set();
|
|
13
|
+
const specNodePaths = [];
|
|
14
|
+
const specEdgeClasses = new Set();
|
|
15
|
+
const nodes = (input.spec.nodes ?? []).map((node) => {
|
|
16
|
+
const path = normalizeAbsolute(node.path, 'spec node path');
|
|
17
|
+
if (nodePaths.has(path))
|
|
18
|
+
throw new Error(`graph.reconcile: duplicate spec node path "${path}"`);
|
|
19
|
+
nodePaths.add(path);
|
|
20
|
+
specNodePaths.push(path);
|
|
21
|
+
assertInScope(path, scope.roots, scope.depth, 'spec node path');
|
|
22
|
+
const cls = rawOf(node.class);
|
|
23
|
+
assertClassAllowed(cls, scope.classes, 'spec node class');
|
|
24
|
+
if (node.onConflict !== undefined) {
|
|
25
|
+
assertConflictStrategy(node.onConflict, 'spec node onConflict');
|
|
26
|
+
nodeConflictByPath.set(path, node.onConflict);
|
|
27
|
+
}
|
|
28
|
+
return {
|
|
29
|
+
class: cls,
|
|
30
|
+
path,
|
|
31
|
+
props: { ...node.props },
|
|
32
|
+
};
|
|
33
|
+
});
|
|
34
|
+
const edges = (input.spec.edges ?? []).map((edge) => {
|
|
35
|
+
const cls = rawOf(edge.class);
|
|
36
|
+
assertClassAllowed(cls, scope.classes, 'spec edge class');
|
|
37
|
+
const source = normalizeAbsolute(edge.source, 'spec edge source');
|
|
38
|
+
assertInScope(source, scope.roots, scope.depth, 'spec edge source');
|
|
39
|
+
const target = normalizeAbsolute(edge.target, 'spec edge target');
|
|
40
|
+
const normalized = {
|
|
41
|
+
class: cls,
|
|
42
|
+
source,
|
|
43
|
+
...(edge.slug !== undefined ? { slug: edge.slug } : {}),
|
|
44
|
+
target,
|
|
45
|
+
props: { ...edge.props },
|
|
46
|
+
};
|
|
47
|
+
const key = toEdgeKey(normalized);
|
|
48
|
+
if (edgeKeys.has(key))
|
|
49
|
+
throw new Error(`graph.reconcile: duplicate spec edge identity "${key}"`);
|
|
50
|
+
edgeKeys.add(key);
|
|
51
|
+
specEdgeClasses.add(cls);
|
|
52
|
+
if (edge.onConflict !== undefined) {
|
|
53
|
+
assertConflictStrategy(edge.onConflict, 'spec edge onConflict');
|
|
54
|
+
edgeConflictByKey.set(key, edge.onConflict);
|
|
55
|
+
}
|
|
56
|
+
return normalized;
|
|
57
|
+
});
|
|
58
|
+
return {
|
|
59
|
+
spec: { nodes, edges },
|
|
60
|
+
scope,
|
|
61
|
+
policy,
|
|
62
|
+
dryRun: input.dryRun === true,
|
|
63
|
+
nodeConflictByPath,
|
|
64
|
+
edgeConflictByKey,
|
|
65
|
+
specNodePaths,
|
|
66
|
+
specEdgeKeys: edgeKeys,
|
|
67
|
+
specEdgeClasses: [...specEdgeClasses],
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
function normalizeScope(input) {
|
|
71
|
+
const roots = input.scope.roots.map((root) => normalizeAbsolute(root, 'scope root'));
|
|
72
|
+
if (roots.length === 0)
|
|
73
|
+
throw new Error('graph.reconcile: scope.roots must be non-empty');
|
|
74
|
+
const depth = input.scope.depth ?? 0;
|
|
75
|
+
if (!Number.isInteger(depth) || depth < 0 || depth > 5) {
|
|
76
|
+
throw new Error('graph.reconcile: scope.depth must be an integer from 0 to 5');
|
|
77
|
+
}
|
|
78
|
+
const classes = input.scope.classes === undefined ? undefined : new Set(input.scope.classes.map(rawOf));
|
|
79
|
+
return { roots, depth, ...(classes !== undefined ? { classes } : {}) };
|
|
80
|
+
}
|
|
81
|
+
function normalizePolicy(input) {
|
|
82
|
+
const onConflict = input?.onConflict ?? DEFAULT_CLIENT_RECONCILE_POLICY.onConflict;
|
|
83
|
+
assertConflictStrategy(onConflict, 'policy.onConflict');
|
|
84
|
+
const onRemoved = {
|
|
85
|
+
nodes: input?.onRemoved?.nodes ?? DEFAULT_CLIENT_RECONCILE_POLICY.onRemoved.nodes,
|
|
86
|
+
edges: input?.onRemoved?.edges ?? DEFAULT_CLIENT_RECONCILE_POLICY.onRemoved.edges,
|
|
87
|
+
};
|
|
88
|
+
assertUntrackedPolicy(onRemoved, 'policy.onRemoved');
|
|
89
|
+
if (input?.onUntracked !== undefined)
|
|
90
|
+
assertUntrackedPolicy(input.onUntracked, 'policy.onUntracked');
|
|
91
|
+
return {
|
|
92
|
+
onConflict,
|
|
93
|
+
onRemoved,
|
|
94
|
+
...(input?.onUntracked !== undefined ? { onUntracked: input.onUntracked } : {}),
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
function normalizeAbsolute(path, label) {
|
|
98
|
+
const raw = rawOf(path);
|
|
99
|
+
try {
|
|
100
|
+
AbsolutePath.parse(raw);
|
|
101
|
+
}
|
|
102
|
+
catch (error) {
|
|
103
|
+
throw new Error(`graph.reconcile: invalid ${label} "${raw}": ${error.message}`);
|
|
104
|
+
}
|
|
105
|
+
return raw;
|
|
106
|
+
}
|
|
107
|
+
function assertInScope(path, roots, depth, label) {
|
|
108
|
+
for (const root of roots) {
|
|
109
|
+
const distance = distanceFromRoot(path, root);
|
|
110
|
+
if (distance !== null && distance <= depth)
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
throw new Error(`graph.reconcile: ${label} "${path}" is outside scope`);
|
|
114
|
+
}
|
|
115
|
+
function distanceFromRoot(path, root) {
|
|
116
|
+
const rootSegments = AbsolutePath.segments(root);
|
|
117
|
+
const pathSegments = AbsolutePath.segments(path);
|
|
118
|
+
if (pathSegments.length < rootSegments.length)
|
|
119
|
+
return null;
|
|
120
|
+
for (let i = 0; i < rootSegments.length; i++) {
|
|
121
|
+
if (pathSegments[i] !== rootSegments[i])
|
|
122
|
+
return null;
|
|
123
|
+
}
|
|
124
|
+
return pathSegments.length - rootSegments.length;
|
|
125
|
+
}
|
|
126
|
+
function assertClassAllowed(cls, classes, label) {
|
|
127
|
+
if (classes !== undefined && !classes.has(cls)) {
|
|
128
|
+
throw new Error(`graph.reconcile: ${label} "${cls}" is outside scope.classes`);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
function assertConflictStrategy(value, label) {
|
|
132
|
+
if (!isConflictStrategy(value)) {
|
|
133
|
+
throw new Error(`graph.reconcile: unsupported ${label} "${String(value)}"`);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
function assertUntrackedPolicy(policy, label) {
|
|
137
|
+
if (!isReconcileEntityPolicy(policy.nodes)) {
|
|
138
|
+
throw new Error(`graph.reconcile: unsupported ${label}.nodes "${String(policy.nodes)}"`);
|
|
139
|
+
}
|
|
140
|
+
if (!isReconcileEntityPolicy(policy.edges)) {
|
|
141
|
+
throw new Error(`graph.reconcile: unsupported ${label}.edges "${String(policy.edges)}"`);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=normalize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../../src/graph/reconcile/normalize.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { MutationResult, NodeId, PatchData, PatchDataInput, PatchValidationResult } from '@astrale-os/kernel-core';
|
|
2
|
+
export interface ReconcileResult {
|
|
3
|
+
/** False only for dryRun or validation failure. */
|
|
4
|
+
applied: boolean;
|
|
5
|
+
/** PatchDataInput is the client/wire shape accepted by graph.mutate(). */
|
|
6
|
+
patch: PatchDataInput;
|
|
7
|
+
/** Path raw -> NodeId for every spec node that exists after apply. */
|
|
8
|
+
nodes: Record<string, NodeId>;
|
|
9
|
+
/** Existing function.mutate result. Undefined for dryRun. */
|
|
10
|
+
mutation?: MutationResult;
|
|
11
|
+
validation?: PatchValidationResult;
|
|
12
|
+
}
|
|
13
|
+
export declare const EMPTY_MUTATION_RESULT: MutationResult;
|
|
14
|
+
export declare function dryRunResult(patch: PatchDataInput, nodes: Record<string, NodeId>): ReconcileResult;
|
|
15
|
+
export declare function emptyApplyResult(patch: PatchDataInput, nodes: Record<string, NodeId>): ReconcileResult;
|
|
16
|
+
export declare function applyResult(patch: PatchDataInput, existingNodes: Record<string, NodeId>, mutation: MutationResult): ReconcileResult;
|
|
17
|
+
export declare function isPatchEmpty(patch: PatchDataInput): boolean;
|
|
18
|
+
export declare function toPatchInput(patch: PatchData): PatchDataInput;
|
|
19
|
+
//# sourceMappingURL=result.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../../src/graph/reconcile/result.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIV,cAAc,EAGd,MAAM,EAEN,SAAS,EACT,cAAc,EACd,qBAAqB,EACtB,MAAM,yBAAyB,CAAA;AAIhC,MAAM,WAAW,eAAe;IAC9B,mDAAmD;IACnD,OAAO,EAAE,OAAO,CAAA;IAChB,0EAA0E;IAC1E,KAAK,EAAE,cAAc,CAAA;IACrB,sEAAsE;IACtE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC7B,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,cAAc,CAAA;IACzB,UAAU,CAAC,EAAE,qBAAqB,CAAA;CACnC;AAED,eAAO,MAAM,qBAAqB,EAAE,cAGnC,CAAA;AAED,wBAAgB,YAAY,CAC1B,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC5B,eAAe,CAEjB;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC5B,eAAe,CAEjB;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,cAAc,EACrB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACrC,QAAQ,EAAE,cAAc,GACvB,eAAe,CAOjB;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAW3D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,cAAc,CAO7D"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { rawOf } from '@astrale-os/kernel-core';
|
|
2
|
+
export const EMPTY_MUTATION_RESULT = {
|
|
3
|
+
createdNodes: {},
|
|
4
|
+
createdEdges: {},
|
|
5
|
+
};
|
|
6
|
+
export function dryRunResult(patch, nodes) {
|
|
7
|
+
return { applied: false, patch, nodes };
|
|
8
|
+
}
|
|
9
|
+
export function emptyApplyResult(patch, nodes) {
|
|
10
|
+
return { applied: true, patch, nodes, mutation: EMPTY_MUTATION_RESULT };
|
|
11
|
+
}
|
|
12
|
+
export function applyResult(patch, existingNodes, mutation) {
|
|
13
|
+
return {
|
|
14
|
+
applied: true,
|
|
15
|
+
patch,
|
|
16
|
+
mutation,
|
|
17
|
+
nodes: { ...existingNodes, ...mutation.createdNodes },
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export function isPatchEmpty(patch) {
|
|
21
|
+
const nodes = patch.nodes;
|
|
22
|
+
const edges = patch.edges;
|
|
23
|
+
return ((nodes?.create?.length ?? 0) === 0 &&
|
|
24
|
+
(nodes?.update?.length ?? 0) === 0 &&
|
|
25
|
+
(nodes?.delete?.length ?? 0) === 0 &&
|
|
26
|
+
(edges?.create?.length ?? 0) === 0 &&
|
|
27
|
+
(edges?.update?.length ?? 0) === 0 &&
|
|
28
|
+
(edges?.delete?.length ?? 0) === 0);
|
|
29
|
+
}
|
|
30
|
+
export function toPatchInput(patch) {
|
|
31
|
+
const out = {};
|
|
32
|
+
const nodes = compactNodes(patch.nodes);
|
|
33
|
+
const edges = compactEdges(patch.edges);
|
|
34
|
+
if (nodes !== undefined)
|
|
35
|
+
out.nodes = nodes;
|
|
36
|
+
if (edges !== undefined)
|
|
37
|
+
out.edges = edges;
|
|
38
|
+
return out;
|
|
39
|
+
}
|
|
40
|
+
function compactNodes(nodes) {
|
|
41
|
+
const out = {};
|
|
42
|
+
if (nodes.create.length > 0)
|
|
43
|
+
out.create = nodes.create.map(wireNodeCreate);
|
|
44
|
+
if (nodes.update.length > 0)
|
|
45
|
+
out.update = nodes.update.map(wireNodeUpdate);
|
|
46
|
+
if (nodes.delete.length > 0)
|
|
47
|
+
out.delete = nodes.delete.map(wireNodeDelete);
|
|
48
|
+
return Object.keys(out).length === 0 ? undefined : out;
|
|
49
|
+
}
|
|
50
|
+
function compactEdges(edges) {
|
|
51
|
+
const out = {};
|
|
52
|
+
if (edges.create.length > 0)
|
|
53
|
+
out.create = edges.create.map(wireEdgeCreate);
|
|
54
|
+
if (edges.update.length > 0)
|
|
55
|
+
out.update = edges.update.map(wireEdgeUpdate);
|
|
56
|
+
if (edges.delete.length > 0)
|
|
57
|
+
out.delete = edges.delete.map(wireEdgeDelete);
|
|
58
|
+
return Object.keys(out).length === 0 ? undefined : out;
|
|
59
|
+
}
|
|
60
|
+
function wireNodeCreate(node) {
|
|
61
|
+
return { class: rawOf(node.class), at: rawOf(node.at), props: { ...node.props } };
|
|
62
|
+
}
|
|
63
|
+
function wireNodeUpdate(node) {
|
|
64
|
+
return { class: rawOf(node.class), path: rawOf(node.path), props: { ...node.props } };
|
|
65
|
+
}
|
|
66
|
+
function wireNodeDelete(node) {
|
|
67
|
+
return { class: rawOf(node.class), path: rawOf(node.path) };
|
|
68
|
+
}
|
|
69
|
+
function wireEdgeCreate(edge) {
|
|
70
|
+
return {
|
|
71
|
+
class: rawOf(edge.class),
|
|
72
|
+
source: rawOf(edge.source),
|
|
73
|
+
...(edge.slug !== undefined ? { slug: edge.slug } : {}),
|
|
74
|
+
target: rawOf(edge.target),
|
|
75
|
+
props: { ...edge.props },
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
function wireEdgeUpdate(edge) {
|
|
79
|
+
return {
|
|
80
|
+
class: rawOf(edge.class),
|
|
81
|
+
source: rawOf(edge.source),
|
|
82
|
+
...(edge.slug !== undefined ? { slug: edge.slug } : {}),
|
|
83
|
+
target: rawOf(edge.target),
|
|
84
|
+
props: { ...edge.props },
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
function wireEdgeDelete(edge) {
|
|
88
|
+
return {
|
|
89
|
+
class: rawOf(edge.class),
|
|
90
|
+
source: rawOf(edge.source),
|
|
91
|
+
...(edge.slug !== undefined ? { slug: edge.slug } : {}),
|
|
92
|
+
target: rawOf(edge.target),
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=result.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"result.js","sourceRoot":"","sources":["../../../src/graph/reconcile/result.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { EdgeKey, Graph, NodeId } from '@astrale-os/kernel-core';
|
|
2
|
+
import type { NormalizedReconcileInput } from './input';
|
|
3
|
+
export declare function filterOwnedBase(base: Graph, scope: NormalizedReconcileInput['scope'], specEdgeKeys: ReadonlySet<EdgeKey>): Graph;
|
|
4
|
+
export declare function resolveExistingSpecNodeIds(base: Graph, specNodePaths: readonly string[]): Record<string, NodeId>;
|
|
5
|
+
export declare function assertNoSpecClassMismatches(base: Graph, spec: NormalizedReconcileInput['spec']): void;
|
|
6
|
+
//# sourceMappingURL=scope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../../src/graph/reconcile/scope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAIrE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAEvD,wBAAgB,eAAe,CAC7B,IAAI,EAAE,KAAK,EACX,KAAK,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACxC,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC,GACjC,KAAK,CAwBP;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,KAAK,EACX,aAAa,EAAE,SAAS,MAAM,EAAE,GAC/B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOxB;AAED,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,KAAK,EACX,IAAI,EAAE,wBAAwB,CAAC,MAAM,CAAC,GACrC,IAAI,CAWN"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { Graph as CoreGraph, rawOf, toEdgeKey } from '@astrale-os/kernel-core';
|
|
2
|
+
export function filterOwnedBase(base, scope, specEdgeKeys) {
|
|
3
|
+
const nodes = base.nodes.filter((node) => pathInScope(rawOf(node.path), scope.roots, scope.depth) &&
|
|
4
|
+
classAllowed(rawOf(node.class), scope.classes));
|
|
5
|
+
const nodeIds = new Set(nodes.map((node) => node.id));
|
|
6
|
+
const edges = base.edges.filter((edge) => {
|
|
7
|
+
if (specEdgeKeys.has(toEdgeKey(edge)))
|
|
8
|
+
return true;
|
|
9
|
+
if (!classAllowed(rawOf(edge.class), scope.classes))
|
|
10
|
+
return false;
|
|
11
|
+
const endpoints = base.endpoints(edge);
|
|
12
|
+
return (endpoints.source !== null &&
|
|
13
|
+
endpoints.target !== null &&
|
|
14
|
+
nodeIds.has(endpoints.source.id) &&
|
|
15
|
+
nodeIds.has(endpoints.target.id));
|
|
16
|
+
});
|
|
17
|
+
const aliases = base.aliases?.filter(([id]) => nodeIds.has(id));
|
|
18
|
+
return CoreGraph.from({
|
|
19
|
+
nodes,
|
|
20
|
+
edges,
|
|
21
|
+
...(aliases !== undefined && aliases.length > 0 ? { aliases } : {}),
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
export function resolveExistingSpecNodeIds(base, specNodePaths) {
|
|
25
|
+
const nodes = {};
|
|
26
|
+
for (const path of specNodePaths) {
|
|
27
|
+
const existing = base.nodes.at(path);
|
|
28
|
+
if (existing !== undefined && existing !== null)
|
|
29
|
+
nodes[path] = existing.id;
|
|
30
|
+
}
|
|
31
|
+
return nodes;
|
|
32
|
+
}
|
|
33
|
+
export function assertNoSpecClassMismatches(base, spec) {
|
|
34
|
+
for (const node of spec.nodes) {
|
|
35
|
+
const existing = base.nodes.at(node.path);
|
|
36
|
+
if (existing === undefined || existing === null)
|
|
37
|
+
continue;
|
|
38
|
+
const existingClass = rawOf(existing.class);
|
|
39
|
+
if (existingClass !== node.class) {
|
|
40
|
+
throw new Error(`graph.reconcile: node path "${node.path}" already has class "${existingClass}", not "${node.class}"`);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
function pathInScope(path, roots, depth) {
|
|
45
|
+
for (const root of roots) {
|
|
46
|
+
const distance = distanceFromRoot(path, root);
|
|
47
|
+
if (distance !== null && distance <= depth)
|
|
48
|
+
return true;
|
|
49
|
+
}
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
function distanceFromRoot(path, root) {
|
|
53
|
+
const rootParts = pathParts(root);
|
|
54
|
+
const pathPartsValue = pathParts(path);
|
|
55
|
+
if (pathPartsValue.length < rootParts.length)
|
|
56
|
+
return null;
|
|
57
|
+
for (let i = 0; i < rootParts.length; i++) {
|
|
58
|
+
if (pathPartsValue[i] !== rootParts[i])
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
return pathPartsValue.length - rootParts.length;
|
|
62
|
+
}
|
|
63
|
+
function pathParts(path) {
|
|
64
|
+
return path.split('/').filter(Boolean);
|
|
65
|
+
}
|
|
66
|
+
function classAllowed(cls, classes) {
|
|
67
|
+
return classes === undefined || classes.has(cls);
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=scope.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scope.js","sourceRoot":"","sources":["../../../src/graph/reconcile/scope.ts"],"names":[],"mappings":"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"}
|
package/dist/store/memory.d.ts
CHANGED
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
* with no surface change (`commitOverlay` is already the server-delta seam).
|
|
34
34
|
*/
|
|
35
35
|
import type { Node } from '@astrale-os/kernel-core';
|
|
36
|
-
import type { EdgeIdentity, GraphApi, MutationResultWire, PatchBuilder, PatchInput, PathLike, Properties } from '../graph';
|
|
36
|
+
import type { EdgeIdentity, GraphApi, MutationResultWire, PatchBuilder, PatchInput, PathLike, Properties, ReconcileInput, ReconcileResult } from '../graph';
|
|
37
37
|
import type { ShapeInput } from './canonicalize';
|
|
38
38
|
import type { LiveResult, MutateOptions, ReadOptions, MemoryOptions } from './types';
|
|
39
39
|
/** The framework-free memory surface (SHELL_REACT §5 + FRONTEND §4.5). */
|
|
@@ -58,6 +58,8 @@ export interface GraphMemory {
|
|
|
58
58
|
watch(shape: ShapeInput, cb: (result: LiveResult) => void, opts?: ReadOptions): () => void;
|
|
59
59
|
/** Batch write — optimistic-auto (§4.4). Builder or pre-built patch. */
|
|
60
60
|
mutate(arg: ((m: PatchBuilder) => void | Promise<void>) | PatchInput, opts?: MutateOptions): Promise<MutationResultWire>;
|
|
61
|
+
/** Delegates to `GraphApi.reconcile`; the store only invalidates touched shapes. */
|
|
62
|
+
reconcile(input: ReconcileInput): Promise<ReconcileResult>;
|
|
61
63
|
update(node: Node | PathLike, props: Properties, opts?: MutateOptions): Promise<void>;
|
|
62
64
|
create(cls: PathLike, at: PathLike, props?: Properties, opts?: MutateOptions): Promise<string>;
|
|
63
65
|
remove(node: Node | PathLike, opts?: MutateOptions): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/store/memory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAA;AAInD,OAAO,KAAK,EACV,YAAY,EAEZ,QAAQ,EACR,kBAAkB,EAClB,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,UAAU,
|
|
1
|
+
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/store/memory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAA;AAInD,OAAO,KAAK,EACV,YAAY,EAEZ,QAAQ,EACR,kBAAkB,EAClB,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,UAAU,EAEV,cAAc,EACd,eAAe,EAChB,MAAM,UAAU,CAAA;AACjB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAe,aAAa,EAAE,MAAM,SAAS,CAAA;AAgBjG,0EAA0E;AAC1E,MAAM,WAAW,WAAW;IAC1B,2DAA2D;IAC3D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,gCAAgC;IAChC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAA;IAEtB,sFAAsF;IACtF,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACjE,wEAAwE;IACxE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,IAAI,CAAA;IAC9D,iDAAiD;IACjD,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE7D,kFAAkF;IAClF,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,IAAI,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,MAAM,IAAI,CAAA;IACvF,qFAAqF;IACrF,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,UAAU,CAAA;IAC9D,kFAAkF;IAClF,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACnE,wFAAwF;IACxF,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,MAAM,IAAI,CAAA;IAE1F,wEAAwE;IACxE,MAAM,CACJ,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,UAAU,EAC7D,IAAI,CAAC,EAAE,aAAa,GACnB,OAAO,CAAC,kBAAkB,CAAC,CAAA;IAC9B,oFAAoF;IACpF,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;IAC1D,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACrF,MAAM,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAC9F,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,QAAQ,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAClE,IAAI,CAAC,IAAI,EAAE,YAAY,GAAG;QAAE,KAAK,CAAC,EAAE,UAAU,CAAA;KAAE,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACxF,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE/D;;;;;;;OAOG;IACH,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,IAAI,EAAE,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,iBAAiB,CAAA;IAEvF,iFAAiF;IACjF,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAA;IACpD,4EAA4E;IAC5E,KAAK,IAAI,IAAI,CAAA;CACd;AAED,sEAAsE;AACtE,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAA;IACzC,8CAA8C;IAC9C,QAAQ,IAAI,IAAI,CAAA;CACjB;AA4BD,yCAAyC;AACzC,wBAAgB,YAAY,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,WAAW,CAE7E"}
|
package/dist/store/memory.js
CHANGED
|
@@ -82,6 +82,7 @@ class Memory {
|
|
|
82
82
|
promise: (shape, o) => this.promise(scope, shape, o),
|
|
83
83
|
watch: (shape, cb, o) => this.watchShape(scope, shape, cb, o),
|
|
84
84
|
mutate: (arg, o) => this.mutate(scope, arg, o),
|
|
85
|
+
reconcile: (input) => this.runReconcile(scope, input),
|
|
85
86
|
update: (node, props, o) => this.update(scope, node, props, o),
|
|
86
87
|
create: (cls, at, props, o) => this.create(scope, cls, at, props, o),
|
|
87
88
|
remove: (node, o) => this.remove(scope, node, o),
|
|
@@ -367,6 +368,20 @@ class Memory {
|
|
|
367
368
|
}
|
|
368
369
|
return this.applyWrite(scope, arg, opts);
|
|
369
370
|
}
|
|
371
|
+
async runReconcile(scope, input) {
|
|
372
|
+
const result = await this.apiFor(scope).reconcile(input);
|
|
373
|
+
if (!result.applied)
|
|
374
|
+
return result;
|
|
375
|
+
const dispatched = normalizePatch(result.patch);
|
|
376
|
+
if (!patchHasOperations(dispatched))
|
|
377
|
+
return result;
|
|
378
|
+
for (const part of this.partitionsOf(scope)) {
|
|
379
|
+
part.epoch++;
|
|
380
|
+
for (const p of this.markStaleByPatch(part, dispatched))
|
|
381
|
+
void p;
|
|
382
|
+
}
|
|
383
|
+
return result;
|
|
384
|
+
}
|
|
370
385
|
async update(scope, node, props, opts) {
|
|
371
386
|
const state = this.state(scope);
|
|
372
387
|
const patch = {
|
|
@@ -731,6 +746,14 @@ function rawIdentity(edge) {
|
|
|
731
746
|
target: rawOf(edge.target),
|
|
732
747
|
};
|
|
733
748
|
}
|
|
749
|
+
function patchHasOperations(patch) {
|
|
750
|
+
return (patch.nodes.create.length > 0 ||
|
|
751
|
+
patch.nodes.update.length > 0 ||
|
|
752
|
+
patch.nodes.delete.length > 0 ||
|
|
753
|
+
patch.edges.create.length > 0 ||
|
|
754
|
+
patch.edges.update.length > 0 ||
|
|
755
|
+
patch.edges.delete.length > 0);
|
|
756
|
+
}
|
|
734
757
|
/**
|
|
735
758
|
* Fold the accumulated window into a reconcile AST (§5.7): each paged expand's
|
|
736
759
|
* limit grows to `baseLimit × windowPages`, so a post-write refetch re-requests
|
package/dist/store/memory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/store/memory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAIH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAgBtD,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,OAAO,EAAoB,MAAM,WAAW,CAAA;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAmB,MAAM,UAAU,CAAA;AA8FhG,yCAAyC;AACzC,MAAM,UAAU,YAAY,CAAC,GAAa,EAAE,IAAoB;IAC9D,OAAO,IAAI,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,SAAS,CAAC,CAAA;AAC/D,CAAC;AAED,MAAM,MAAM;IAgBS,UAAU;IAfZ,MAAM,GAAG,IAAI,GAAG,EAAsB,CAAA;IACtC,IAAI,GAAG,IAAI,GAAG,EAAoB,CAAA;IAClC,GAAG,CAAc;IACjB,KAAK,CAAQ;IACb,cAAc,CAAQ;IACtB,OAAO,CAA+B;IACtC,GAAG,CAAS;IACZ,UAAU,CAAQ;IAClB,SAAS,CAAuB;IAEzC,KAAK,GAAG,CAAC,CAAA;IACT,WAAW,GAAG,CAAC,CAAA;IACf,OAAO,GAAG,CAAC,CAAA;IAEnB,YACmB,UAAoB,EACrC,IAAoB;0BADH,UAAU;QAG3B,IAAI,CAAC,GAAG,GAAG,IAAI,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,CAAA;QAChC,IAAI,CAAC,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,MAAM,CAAA;QAClC,IAAI,CAAC,cAAc,GAAG,IAAI,EAAE,cAAc,IAAI,OAAO,CAAA;QACrD,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,OAAO,CAAA;QAC5B,IAAI,CAAC,GAAG,GAAG,IAAI,EAAE,GAAG,IAAI,KAAK,CAAA;QAC7B,IAAI,CAAC,UAAU,GAAG,IAAI,EAAE,UAAU,IAAI,GAAG,CAAA;QACzC,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAa,IAAI,EAAE,WAAW,IAAI,CAAC,CAAC,CAAA;IACpE,CAAC;IAED,MAAM,CAAC,KAAa;QAClB,OAAO;YACL,KAAK;YACL,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YACvB,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YAChD,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9C,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YACpD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;YAChE,WAAW,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5D,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YACpD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;YAC7D,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YAC9C,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9D,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACpE,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5C,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,IAAI,KAAK,EAAE,KAAK,CAAC;YACjE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjB,IAAI,CAAC,KAAK,SAAS;oBAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;gBACxC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YACvB,CAAC;YACD,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE;SAC1B,CAAA;IACH,CAAC;IAED,+EAA+E;IAEvE,MAAM,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAA;IAChD,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,SAAiB,EAAE,QAAiB;QACjD,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,UAAU,QAAQ,EAAE,CAAA;IAC9E,CAAC;IAEO,KAAK,CAAC,SAAiB,EAAE,QAAiB;QAChD,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAC5C,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAC5B,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,CAAC,GAAG;gBACF,SAAS;gBACT,MAAM,EAAE,GAAG;gBACX,QAAQ,EAAE,IAAI,WAAW,EAAE;gBAC3B,MAAM,EAAE,IAAI,UAAU,EAAE;gBACxB,OAAO,EAAE,IAAI,OAAO,EAAE;gBACtB,KAAK,EAAE,CAAC;aACT,CAAA;YACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QACzB,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED,mFAAmF;IAC3E,YAAY,CAAC,SAAiB;QACpC,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAA;IAC3E,CAAC;IAEO,KAAK,CAAC,KAAiB,EAAE,KAAa,EAAE,GAAkB;QAChE,OAAO,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;IAC3E,CAAC;IAED,6FAA6F;IACrF,MAAM,CAAC,KAAiB,EAAE,IAAkB;QAClD,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;QAClC,IAAI,IAAI,EAAE,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAA;QAC1F,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,wDAAwD;IAChD,QAAQ,CACd,KAAiB,EACjB,KAAa,EACb,KAAiB,EACjB,IAAkB;QAElB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;QACzC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,CAAA;QACnD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;QACrF,4EAA4E;QAC5E,qDAAqD;QACrD,IAAI,OAAO,IAAI,IAAI,EAAE,MAAM,KAAK,SAAS;YAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QACrE,IAAI,KAAK,CAAC,SAAS,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,KAAK,IAAI;YAAE,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACrF,OAAO,KAAK,CAAA;IACd,CAAC;IAED,uFAAuF;IAC/E,MAAM,CACZ,KAAiB,EACjB,KAAa,EACb,KAAiB,EACjB,IAAkB;QAElB,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;IAC7E,CAAC;IAED,yFAAyF;IACjF,IAAI,CAAC,KAAiB,EAAE,KAAiB;QAC/C,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAA;IAC7C,CAAC;IAED,gFAAgF;IAExE,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,KAAiB,EAAE,IAAkB;QACtE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QAC3C,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACpD,IAAI,CAAC,IAAI,EAAE,CAAA;QACX,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YAC5E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,6EAA6E;gBAC7E,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO;oBAAE,MAAM,KAAK,CAAA;YACnD,CAAC;YACD,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QACjC,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC;IAEO,IAAI,CAAC,KAAa,EAAE,KAAiB,EAAE,IAAkB;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACpD,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO;YAAE,OAAO,IAAI,CAAA;QACtD,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,KAAa,EAAE,KAAiB,EAAE,IAAkB;QACxE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACtD,IAAI,CAAC,IAAI,EAAE,CAAA;QACX,IAAI,CAAC,KAAK,CAAC,OAAO;YAAE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IAClF,CAAC;IAEO,SAAS,CACf,KAAa,EACb,KAAiB,EACjB,aAAyB,EACzB,IAAkB;QAElB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACtD,KAAK,CAAC,SAAS,EAAE,CAAA;QACjB,KAAK,CAAC,UAAU,GAAG,IAAI,CAAA;QACvB,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;QAClC,IAAI,CAAC,IAAI,EAAE,CAAA;QACX,8EAA8E;QAC9E,6EAA6E;QAC7E,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,EAAE,IAAI,KAAK,KAAK,EAAE,CAAC;YACvF,KAAK,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QAC3F,CAAC;QACD,OAAO,GAAG,EAAE;YACV,uEAAuE;YACvE,iEAAiE;YACjE,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;YACjC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;YACjC,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAA;YAC1C,IAAI,CAAC,CAAC,SAAS,KAAK,CAAC;gBAAE,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAClD,CAAC,CAAA;IACH,CAAC;IAED;;;;;OAKG;IACK,WAAW,CAAC,KAAa,EAAE,KAAiB,EAAE,IAAkB;QACtE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACpD,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,IAAI,CAAA;QACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC;IAEO,OAAO,CAAC,KAAa,EAAE,KAAiB,EAAE,IAAkB;QAClE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACtD,IAAI,KAAK,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;QACtE,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CACtD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAC9C,CAAA;IACH,CAAC;IAEO,UAAU,CAChB,KAAa,EACb,KAAiB,EACjB,EAAgC,EAChC,IAAkB;QAElB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAC1B,KAAK,EACL,KAAK,EACL,GAAG,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EACvD,IAAI,CACL,CAAA;QACD,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;QACjD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,iFAAiF;IAEjF,yFAAyF;IACjF,SAAS,CACf,KAAiB,EACjB,MAAmB;QAKnB,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,OAAO;gBACL,GAAG,EAAE,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO;gBACnC,IAAI,EAAE,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;aACtD,CAAA;QACH,CAAC;QACD,6EAA6E;QAC7E,uEAAuE;QACvE,IAAI,MAAM,KAAK,WAAW;YACxB,OAAO,EAAE,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;QAC9E,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;IAChD,CAAC;IAED;;;;;OAKG;IACK,UAAU,CAChB,KAAiB,EACjB,KAAiB,EACjB,MAAmB;QAEnB,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC,QAAQ,CAAA;QAClD,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACnD,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAA;QACjC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;aAC/B,KAAK,CAAC,GAAG,CAAC;aACV,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACf,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;YACxB,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,KAAK,CAAA,CAAC,2CAA2C;YACpE,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACnC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;YACjE,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;YACpD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;YACpB,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,KAAK,QAAQ;gBAAE,IAAI,CAAC,WAAW,EAAE,CAAA;iBACzD,IAAI,MAAM,KAAK,OAAO;gBAAE,IAAI,CAAC,WAAW,GAAG,CAAC,CAAA;YACjD,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;YACrC,IAAI,aAAa,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;gBAChC,sEAAsE;gBACtE,uEAAuE;gBACvE,iEAAiE;gBACjE,iCAAiC;gBACjC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;gBACjB,KAAK,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YAC1C,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACjB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YACjB,OAAO,IAAI,CAAA;QACb,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YACxB,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAA;YACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;YACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;YAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;YACjB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;YACjB,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;YACtD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACjB,MAAM,KAAK,CAAA;QACb,CAAC,CAAC,CAAA;QACJ,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAA;QAClB,KAAK,CAAC,KAAK,GAAG,IAAI,CAAA;QAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAClB,OAAO,CAAC,CAAA;IACV,CAAC;IAED,uFAAuF;IAC/E,iBAAiB,CAAC,KAAiB,EAAE,KAAiB;QAC5D,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,CACxC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC,IAAI,CAC/D,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CAChB,CACF,CAAA;IACH,CAAC;IAED,iFAAiF;IAEjF,oFAAoF;IAC5E,QAAQ,CAAC,KAAiB,EAAE,KAAiB;QACnD,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI;YAAE,OAAO,KAAK,CAAC,MAAM,CAAA;QAC9D,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;QAC7D,MAAM,MAAM,GAAe;YACzB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,IAAI,EAAE,GAAG,CAAC,KAAK;YACf,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YACxC,OAAO,EAAE,KAAK,CAAC,QAAQ,KAAK,IAAI;YAChC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,IAAI,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC;YACzB,GAAG,EAAE,CAAC;YACN,IAAI,EAAE;gBACJ,GAAG,EAAE,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI;gBAC/C,OAAO,EAAE,KAAK,CAAC,QAAQ,KAAK,IAAI;gBAChC,IAAI,EAAE,KAAK,IAAI,EAAE;oBACf,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;oBACjC,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI;wBAAE,OAAM;oBAC7C,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,CAAA;gBACzC,CAAC;aACF;YACD,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;gBACjC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAA;gBACd,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,WAAW,CAAC,CAAA,CAAC,oBAAoB;YACnE,CAAC;SACF,CAAA;QACD,KAAK,CAAC,MAAM,GAAG,MAAM,CAAA;QACrB,KAAK,CAAC,KAAK,GAAG,KAAK,CAAA;QACnB,OAAO,MAAM,CAAA;IACf,CAAC;IAEO,MAAM,CAAC,KAAiB;QAC9B,KAAK,CAAC,KAAK,GAAG,IAAI,CAAA;QAClB,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,SAAS;YAAE,QAAQ,EAAE,CAAA;IACpD,CAAC;IAED,mFAAmF;IAE3E,KAAK,CAAC,MAAM,CAClB,KAAa,EACb,GAA6D,EAC7D,IAAoB;QAEpB,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,IAAI,gBAAgB,EAAE,CAAA;YACtC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAA;YAClB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,CAAA;YAC7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;YACxD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;YACpC,OAAO,MAAM,CAAA;QACf,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IAC1C,CAAC;IAEO,KAAK,CAAC,MAAM,CAClB,KAAa,EACb,IAAqB,EACrB,KAAiB,EACjB,IAAoB;QAEpB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/B,MAAM,KAAK,GAAe;YACxB,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;SACzF,CAAA;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IAC3C,CAAC;IAEO,KAAK,CAAC,MAAM,CAClB,KAAa,EACb,GAAa,EACb,EAAY,EACZ,KAAkB,EAClB,IAAoB;QAEpB,MAAM,KAAK,GAAG,KAAK,CAAC,EAAE,CAAC,CAAA;QACvB,MAAM,KAAK,GAAe;YACxB,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC,EAAE;SAC1E,CAAA;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACxD,OAAO,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;IACrD,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,IAAqB,EAAE,IAAoB;QAC7E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/B,MAAM,KAAK,GAAe;YACxB,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;SAClF,CAAA;QACD,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IAC3C,CAAC;IAEO,KAAK,CAAC,IAAI,CAChB,KAAa,EACb,IAA2C,EAC3C,IAAoB;QAEpB,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAA;QACnC,MAAM,KAAK,GAAe;YACxB,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC,EAAE;SACtE,CAAA;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACxD,OAAO,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAA;IACjE,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,IAAkB,EAAE,IAAoB;QAC1E,MAAM,KAAK,GAAe,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAA;QACpE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;IAC3C,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,UAAU,CACtB,KAAa,EACb,KAAiB,EACjB,IAAoB;QAEpB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC9B,MAAM,IAAI,GAAG,IAAI,EAAE,UAAU,IAAI,MAAM,CAAA;QACvC,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;QACxC,MAAM,OAAO,GACX,IAAI,KAAK,KAAK;YACZ,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,IAAI,CAAC,WAAW,CACd,IAAI,EACJ,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CACrE,CAAA;QACP,MAAM,GAAG,GAAG,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAC3F,IAAI,CAAC,IAAI,EAAE,CAAA;QAEX,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACrD,yEAAyE;YACzE,sEAAsE;YACtE,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;gBAAE,IAAI,CAAC,KAAK,EAAE,CAAA;YACzD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;YAC5C,IAAI,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAA;YACxB,OAAO,MAAM,CAAA;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,GAAG,KAAK,IAAI,IAAI,IAAI,EAAE,QAAQ,KAAK,KAAK;gBAAE,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YAC7E,IAAI,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,CAAA;YACtB,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,IAAI,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAA;YAC/E,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACK,WAAW,CACjB,KAAiB,EACjB,UAAuB;QAKvB,MAAM,MAAM,GAAmC,EAAE,CAAA;QACjD,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACxC,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YACjD,IAAI,EAAE,KAAK,SAAS;gBAAE,SAAQ,CAAC,oDAAoD;YACnF,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAA;YAC/C,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;YACnC,IAAI,CAAC,CAAC,UAAU;gBAAE,SAAQ,CAAC,+CAA+C;YAC1E,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;QACvC,CAAC;QACD,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAAA;QACnC,MAAM,KAAK,GAAgB;YACzB,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE;YAC1C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;SAC9C,CAAA;QACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAA;IAC5D,CAAC;IAED,mFAAmF;IAC3E,YAAY,CAAC,KAAiB,EAAE,YAAyB;QAC/D,MAAM,UAAU,GAAG,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAA;QAC3C,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;YAChB,UAAU;YACV,KAAK,EAAE,YAAY;YACnB,gBAAgB,EAAE,IAAI,GAAG,EAAkB;YAC3C,gBAAgB,EAAE,IAAI,GAAG,EAAmB;SAC7C,CAAC,CAAA;QACF,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,YAAY,CAAC,CAAA;QAC1D,KAAK,MAAM,KAAK,IAAI,QAAQ;YAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAChD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACjB,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAA;IACtD,CAAC;IAED,uFAAuF;IAC/E,eAAe,CAAC,KAAiB,EAAE,GAAe;QACxD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAClC,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,QAAQ;YAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACpD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACnB,CAAC;IAED;;;;;OAKG;IACK,SAAS,CACf,KAAa,EACb,UAAuB,EACvB,IAAgB,EAChB,GAAsB;QAEtB,MAAM,QAAQ,GAAoB,EAAE,CAAA;QACpC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5C,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,UAAU,CAAC;gBAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAC3E,CAAC;QACD,IAAI,GAAG,KAAK,IAAI;YAAE,OAAM;QACxB,KAAK,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAA;IAC3E,CAAC;IAED;;;;;OAKG;IACK,WAAW,CAAC,KAAiB,EAAE,GAAe;QACpD,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;QACjC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAClC,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,QAAQ;YAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACpD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACnB,CAAC;IAEO,gBAAgB,CAAC,KAAiB,EAAE,GAAe;QACzD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,OAAM;QACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACpC,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QACjD,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACvC,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YACjD,IAAI,EAAE,KAAK,SAAS;gBAAE,SAAQ;YAC9B,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;YACtE,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,IAAI,IAAI,CAAA;YACvD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;oBAC7D,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAA;oBACjF,MAAK;gBACP,CAAC;YACH,CAAC;QACH,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACvC,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YACjD,wEAAwE;YACxE,IAAI,EAAE,KAAK,SAAS,IAAI,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC3E,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAC,CAAA;YAC1F,CAAC;QACH,CAAC;IACH,CAAC;IAED,mFAAmF;IAC3E,eAAe,CAAC,KAAiB,EAAE,KAAkB;QAC3D,MAAM,GAAG,GAAG;YACV,cAAc,EAAE,gBAAgB;YAChC,OAAO,EAAE,CAAC,GAAW,EAAsB,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC;SAClF,CAAA;QACD,MAAM,OAAO,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAA;QACvC,MAAM,GAAG,GAAG,cAAc,CACxB,KAAK,EACL,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,EAClD,GAAG,CACJ,CAAA;QACD,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC;IAED;;;;;;OAMG;IACK,gBAAgB,CAAC,KAAiB,EAAE,KAAkB;QAC5D,MAAM,QAAQ,GAAoB,EAAE,CAAA;QACpC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YACvD,KAAK,CAAC,KAAK,GAAG,IAAI,CAAA;YAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAClB,IAAI,KAAK,CAAC,SAAS,GAAG,CAAC;gBAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;QAC9E,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,iEAAiE;IACzD,UAAU,CAAC,KAAgC;QACjD,MAAM,CAAC,GAAG,IAAI,gBAAgB,EAAE,CAAA;QAChC,KAAK,CAAC,CAAC,CAAC,CAAA;QACR,OAAO,CAAC,CAAC,KAAK,EAAE,CAAA;IAClB,CAAC;IAED;;;;OAIG;IACK,WAAW,CAAC,KAAa,EAAE,KAAgC;QACjE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC/E,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QACxE,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,OAAO;YACL,MAAM,EAAE,CAAC,OAA4B,EAAE,EAAE;gBACvC,IAAI,OAAO;oBAAE,OAAM;gBACnB,OAAO,GAAG,IAAI,CAAA;gBACd,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;oBAAE,IAAI,CAAC,KAAK,EAAE,CAAA;gBACzD,IAAI,GAAG,KAAK,IAAI;oBAAE,OAAM;gBACxB,MAAM,QAAQ,GAAoB,EAAE,CAAA;gBACpC,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;oBACjC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAA;oBAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;oBAClB,IAAI,KAAK,CAAC,SAAS,GAAG,CAAC;wBAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;gBAC9E,CAAC;gBACD,KAAK,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAA;YAC5E,CAAC;YACD,QAAQ,EAAE,GAAG,EAAE;gBACb,IAAI,OAAO;oBAAE,OAAM;gBACnB,OAAO,GAAG,IAAI,CAAA;gBACd,IAAI,GAAG,KAAK,IAAI;oBAAE,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;YACpD,CAAC;SACF,CAAA;IACH,CAAC;IAEO,OAAO,CAAC,KAAiB,EAAE,IAAqB;QACtD,IAAI,WAAW,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC/C,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;QACtD,MAAM,GAAG,GAAG,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;QAC9E,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,wCAAwC,KAAK,CAAC,IAAI,CAAC,kBAAkB;gBACnE,yEAAyE,CAC5E,CAAA;QACH,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,gFAAgF;IAEhF,yFAAyF;IACjF,IAAI;QACV,IAAI,EAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,KAAK,CAAC;YAAE,IAAI,CAAC,KAAK,EAAE,CAAA;IAC1D,CAAC;IAED,KAAK;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YACzC,MAAM,OAAO,GAAiB,EAAE,CAAA;YAChC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;gBACvC,IACE,KAAK,CAAC,SAAS,KAAK,CAAC;oBACrB,KAAK,CAAC,UAAU,KAAK,IAAI;oBACzB,GAAG,GAAG,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,EACnC,CAAC;oBACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACrB,CAAC;YACH,CAAC;YACD,KAAK,MAAM,KAAK,IAAI,OAAO;gBAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACvD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,CAAA;YACtC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;QACvE,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,KAAiB;QAC7B,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,OAAM;QACrB,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;YACvC,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;gBAC7C,IAAI,CAAC,IAAI,CAAC;oBACR,IAAI,EAAE,WAAW;oBACjB,KAAK,EAAE,KAAK,CAAC,GAAG;oBAChB,MAAM,EAAE,aAAa,KAAK,CAAC,SAAS,CAAC,IAAI,iBAAiB,KAAK,CAAC,SAAS,EAAE;iBAC5E,CAAC,CAAA;YACJ,CAAC;YACD,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI;gBAAE,SAAQ,CAAC,kCAAkC;YACxE,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;gBACnC,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;oBACzC,IAAI,CAAC,IAAI,CAAC;wBACR,IAAI,EAAE,WAAW;wBACjB,KAAK,EAAE,KAAK,CAAC,GAAG;wBAChB,MAAM,EAAE,iBAAiB,EAAE,gBAAgB;qBAC5C,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC7B,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;oBACnC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC;wBAClF,IAAI,CAAC,IAAI,CAAC;4BACR,IAAI,EAAE,WAAW;4BACjB,KAAK,EAAE,KAAK,CAAC,GAAG;4BAChB,MAAM,EAAE,0BAA0B,EAAE,EAAE;yBACvC,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAEO,IAAI,CAAC,KAAkB;QAC7B,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAA;IACvB,CAAC;CACF;AAED,kFAAkF;AAElF;;;;;GAKG;AACH,MAAM,IAAI,GAAe,MAAM,CAAC,MAAM,CAAC;IACrC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC/C,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,IAAI;IACX,IAAI,EAAE,IAAI;IACV,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAC5C,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,KAAK;IACX,GAAG,EAAE,CAAC;IACN,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC,EAAE,CAAC;IACzE,OAAO,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;CACxB,CAAC,CAAA;AAEF,kFAAkF;AAElF,SAAS,QAAQ,CAAC,OAAgC;IAChD,KAAK,MAAM,CAAC,IAAI,OAAO;QAAE,OAAO,CAAC,CAAC,GAAG,CAAA;IACrC,OAAO,EAAE,CAAA;AACX,CAAC;AAED,SAAS,WAAW,CAAC,CAAkB;IACrC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,CAAA;AACxF,CAAC;AAED,SAAS,UAAU,CAAC,CAAkB;IACpC,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAClD,CAAC;AAED,SAAS,WAAW,CAAC,IAAkB;IAMrC,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;QACxB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;QAC1B,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;KAC3B,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,SAAS,CAAC,IAAmB,EAAE,KAAa;IACnD,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IACvD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACpC,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAA;QACrC,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,IAAI,CAAA;QACpC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,EAAE,EAAE,EAAE,CAAA;IAC5F,CAAC,CAAC,CAAA;IACF,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAA;AAC3B,CAAC;AAED,gFAAgF;AAEhF,sFAAsF;AACtF,SAAS,cAAc,CAAC,GAAW;IACjC,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;AACxD,CAAC;AAED,+FAA+F;AAC/F,SAAS,MAAM,CAAC,GAAW;IACzB,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;AAC5C,CAAC;AAED;;;;;;GAMG;AACH,SAAS,WAAW,CAClB,KAAiB,EACjB,GAA2B;IAE3B,IAAI,UAAU,GAAG,KAAK,CAAA;IACtB,MAAM,GAAG,GAAe,EAAE,CAAA;IAC1B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,IAAI,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;YACtB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;YACV,SAAQ;QACV,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACtB,MAAM,OAAO,GACX,GAAG,KAAK,SAAS;YACf,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;YAC5E,CAAC,CAAC,EAAE,CAAA;QACR,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC,CAAA;aACzC,CAAC;YACJ,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;YACV,UAAU,GAAG,IAAI,CAAA,CAAC,uDAAuD;QAC3E,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,CAAA;AACnC,CAAC"}
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/store/memory.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@astrale-os/kernel-client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Unified kernel client — protocol-first, transport-agnostic",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"astrale",
|
|
@@ -57,9 +57,9 @@
|
|
|
57
57
|
"dependencies": {
|
|
58
58
|
"@tanstack/pacer": "^0.20.0",
|
|
59
59
|
"dequal": "2.0.3",
|
|
60
|
-
"@astrale-os/kernel-
|
|
61
|
-
"@astrale-os/kernel-
|
|
62
|
-
"@astrale-os/kernel-
|
|
60
|
+
"@astrale-os/kernel-api": "^0.4.9",
|
|
61
|
+
"@astrale-os/kernel-dsl": "^0.1.3",
|
|
62
|
+
"@astrale-os/kernel-core": "^0.7.1"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
65
|
"@astrale/typescript-config": "npm:@jsr/astrale__typescript-config@~1.1.0",
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
"vitest": "^3.1.4",
|
|
74
74
|
"ws": "^8.18.0",
|
|
75
75
|
"zod": "^4.3.6",
|
|
76
|
-
"@astrale-os/kernel-server": "^0.4.
|
|
76
|
+
"@astrale-os/kernel-server": "^0.4.8"
|
|
77
77
|
},
|
|
78
78
|
"scripts": {
|
|
79
79
|
"build": "tsgo",
|