@bjornpagen/bumbledb 0.3.0 → 0.5.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/COOKBOOK.md +246 -92
- package/README.md +31 -16
- package/dist/closed.d.ts +80 -75
- package/dist/closed.d.ts.map +1 -1
- package/dist/closed.js +102 -127
- package/dist/closed.js.map +1 -1
- package/dist/db.d.ts +37 -7
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +95 -55
- package/dist/db.js.map +1 -1
- package/dist/exhume.d.ts.map +1 -1
- package/dist/exhume.js +1 -14
- package/dist/exhume.js.map +1 -1
- package/dist/face.d.ts +40 -40
- package/dist/face.d.ts.map +1 -1
- package/dist/face.js +9 -17
- package/dist/face.js.map +1 -1
- package/dist/fields.d.ts +46 -15
- package/dist/fields.d.ts.map +1 -1
- package/dist/fields.js +58 -29
- package/dist/fields.js.map +1 -1
- package/dist/index.d.ts +13 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -5
- package/dist/index.js.map +1 -1
- package/dist/law.d.ts +2 -1
- package/dist/law.d.ts.map +1 -1
- package/dist/law.js +15 -14
- package/dist/law.js.map +1 -1
- package/dist/lower.d.ts.map +1 -1
- package/dist/lower.js +1 -7
- package/dist/lower.js.map +1 -1
- package/dist/marshal.d.ts +33 -6
- package/dist/marshal.d.ts.map +1 -1
- package/dist/marshal.js +75 -26
- package/dist/marshal.js.map +1 -1
- package/dist/native.d.ts +21 -2
- package/dist/native.d.ts.map +1 -1
- package/dist/native.js +20 -3
- package/dist/native.js.map +1 -1
- package/dist/order.d.ts +36 -0
- package/dist/order.d.ts.map +1 -0
- package/dist/order.js +135 -0
- package/dist/order.js.map +1 -0
- package/dist/query/atom.d.ts +76 -28
- package/dist/query/atom.d.ts.map +1 -1
- package/dist/query/atom.js +12 -16
- package/dist/query/atom.js.map +1 -1
- package/dist/query/lower.d.ts +5 -8
- package/dist/query/lower.d.ts.map +1 -1
- package/dist/query/lower.js +308 -72
- package/dist/query/lower.js.map +1 -1
- package/dist/query/predicate.d.ts.map +1 -1
- package/dist/query/predicate.js +34 -2
- package/dist/query/predicate.js.map +1 -1
- package/dist/query/run.d.ts +15 -5
- package/dist/query/run.d.ts.map +1 -1
- package/dist/query/run.js +27 -8
- package/dist/query/run.js.map +1 -1
- package/dist/query/scope.d.ts +37 -29
- package/dist/query/scope.d.ts.map +1 -1
- package/dist/query/scope.js +19 -47
- package/dist/query/scope.js.map +1 -1
- package/dist/relation.d.ts +17 -29
- package/dist/relation.d.ts.map +1 -1
- package/dist/relation.js +41 -38
- package/dist/relation.js.map +1 -1
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +7 -31
- package/dist/schema.js.map +1 -1
- package/dist/spec.d.ts +3 -2
- package/dist/spec.d.ts.map +1 -1
- package/dist/spec.js.map +1 -1
- package/dist/statements.d.ts +13 -4
- package/dist/statements.d.ts.map +1 -1
- package/dist/statements.js +75 -8
- package/dist/statements.js.map +1 -1
- package/package.json +2 -5
- package/src/closed.ts +144 -206
- package/src/db.ts +143 -68
- package/src/exhume.ts +1 -15
- package/src/face.ts +38 -48
- package/src/fields.ts +103 -49
- package/src/index.ts +11 -10
- package/src/law.ts +15 -14
- package/src/lower.ts +2 -9
- package/src/marshal.ts +82 -31
- package/src/native.ts +22 -4
- package/src/order.ts +156 -0
- package/src/query/atom.ts +70 -35
- package/src/query/lower.ts +354 -82
- package/src/query/predicate.ts +39 -4
- package/src/query/run.ts +27 -9
- package/src/query/scope.ts +52 -70
- package/src/relation.ts +54 -68
- package/src/schema.ts +7 -33
- package/src/spec.ts +3 -2
- package/src/statements.ts +82 -8
package/dist/db.js
CHANGED
|
@@ -31,10 +31,12 @@
|
|
|
31
31
|
*/
|
|
32
32
|
import * as path from "node:path";
|
|
33
33
|
import * as errors from "@superbuilders/errors";
|
|
34
|
+
import { isClosedMember, sealedFieldsOf } from "#closed.ts";
|
|
34
35
|
import { exhumeStore } from "#exhume.ts";
|
|
36
|
+
import { rosterOf } from "#fields.ts";
|
|
35
37
|
import { lower } from "#lower.ts";
|
|
36
|
-
import { factOf, isFreshField, isMintedFresh, keyRowOf, recordOf, rowOf } from "#marshal.ts";
|
|
37
|
-
import { native } from "#native.ts";
|
|
38
|
+
import { factOf, handleOf, isFreshField, isMintedFresh, keyRowOf, recordOf, rowOf } from "#marshal.ts";
|
|
39
|
+
import { bridged, native } from "#native.ts";
|
|
38
40
|
import { lowerQuery } from "#query/lower.ts";
|
|
39
41
|
import { decodeAnswers, wireParams } from "#query/run.ts";
|
|
40
42
|
/**
|
|
@@ -70,18 +72,6 @@ function isAbandon(value) {
|
|
|
70
72
|
* values stay bare, nothing is asserted.
|
|
71
73
|
*/
|
|
72
74
|
const preparedTypes = Symbol("bumbledb.prepared.types");
|
|
73
|
-
/**
|
|
74
|
-
* The bridge guard: runs one native call and wraps anything it throws —
|
|
75
|
-
* marshal-shape refusals and handle-lifecycle refusals cross as genuine
|
|
76
|
-
* typed failures, never bare foreign errors.
|
|
77
|
-
*/
|
|
78
|
-
function bridged(context, run) {
|
|
79
|
-
const result = errors.trySync(run);
|
|
80
|
-
if (result.error) {
|
|
81
|
-
throw errors.wrap(result.error, context);
|
|
82
|
-
}
|
|
83
|
-
return result.data;
|
|
84
|
-
}
|
|
85
75
|
/**
|
|
86
76
|
* Mirrors the engine's materialized statement order
|
|
87
77
|
* (`SchemaDescriptor::materialized_statements`, pinned by the fingerprint):
|
|
@@ -110,7 +100,7 @@ function materializedEntries(theory) {
|
|
|
110
100
|
function impliedKeyEntries(theory) {
|
|
111
101
|
const entries = [];
|
|
112
102
|
for (const member of Object.values(theory.relations)) {
|
|
113
|
-
if (
|
|
103
|
+
if (isClosedMember(member)) {
|
|
114
104
|
continue;
|
|
115
105
|
}
|
|
116
106
|
for (const declared of member.data.fields) {
|
|
@@ -124,7 +114,7 @@ function impliedKeyEntries(theory) {
|
|
|
124
114
|
}
|
|
125
115
|
}
|
|
126
116
|
for (const member of Object.values(theory.relations)) {
|
|
127
|
-
if (
|
|
117
|
+
if (isClosedMember(member)) {
|
|
128
118
|
entries.push({
|
|
129
119
|
kind: "functionality",
|
|
130
120
|
statement: undefined,
|
|
@@ -188,6 +178,27 @@ function isStatementValue(value) {
|
|
|
188
178
|
const data = value.data;
|
|
189
179
|
return typeof data === "object" && data !== null && "kind" in data;
|
|
190
180
|
}
|
|
181
|
+
/**
|
|
182
|
+
* THE one selector dispatch of the `get` overload pair (primary-key vs
|
|
183
|
+
* key-statement, `docs/architecture/70-api.md` § the freeze): judges the
|
|
184
|
+
* middle argument once and hands the narrowed pieces to the chosen
|
|
185
|
+
* continuation. `Db.get` and the read scope's `get` both dispatch through
|
|
186
|
+
* here, so the two mismatch refusals speak with one voice and the symmetry
|
|
187
|
+
* rule (`db.get(...) === db.read(snap => snap.get(...))`) holds by
|
|
188
|
+
* construction.
|
|
189
|
+
*/
|
|
190
|
+
function selectKeyRead(keyOrStatement, declaredKey, byStatement, byPrimary) {
|
|
191
|
+
if (declaredKey !== undefined) {
|
|
192
|
+
if (!isStatementValue(keyOrStatement)) {
|
|
193
|
+
throw errors.new("keyed get takes a key() statement value as its second argument");
|
|
194
|
+
}
|
|
195
|
+
return byStatement(keyOrStatement, declaredKey);
|
|
196
|
+
}
|
|
197
|
+
if (isStatementValue(keyOrStatement)) {
|
|
198
|
+
throw errors.new("keyed get with a statement selector also takes the key object — get(relation, keyStatement, key)");
|
|
199
|
+
}
|
|
200
|
+
return byPrimary(keyOrStatement);
|
|
201
|
+
}
|
|
191
202
|
/** Maps a slot's reversal flag to the violation's `orientation` payload. */
|
|
192
203
|
function orientationOf(reversed) {
|
|
193
204
|
if (reversed === undefined) {
|
|
@@ -265,6 +276,28 @@ const planReclaimer = new FinalizationRegistry(function reclaimPlan(handle) {
|
|
|
265
276
|
* callback on a fresh snapshot. It never escapes the SDK.
|
|
266
277
|
*/
|
|
267
278
|
const generationMovedSignal = errors.new("bumbledb witnessed generation moved");
|
|
279
|
+
/**
|
|
280
|
+
* The witnessed loop's attempt cap — a generous power of two. Benign
|
|
281
|
+
* self-inflicted contention (the host's own commits landing between an
|
|
282
|
+
* attempt's snapshot and its witnessed begin) converges in a handful of
|
|
283
|
+
* retries because each rerun reads a FRESHER snapshot; a workload that moves
|
|
284
|
+
* the generation on EVERY one of this many consecutive attempts is not
|
|
285
|
+
* converging and never will (see {@link ErrWitnessedLivelock}).
|
|
286
|
+
*/
|
|
287
|
+
const WITNESSED_ATTEMPT_CAP = 64;
|
|
288
|
+
/**
|
|
289
|
+
* The typed livelock refusal `writeWitnessed` throws past
|
|
290
|
+
* {@link WITNESSED_ATTEMPT_CAP} attempts: every attempt found the generation
|
|
291
|
+
* moved, which is only sustainable when the callback ITSELF (even
|
|
292
|
+
* indirectly) issues an interleaved plain `db.write` before its first tx
|
|
293
|
+
* verb on every attempt — each rerun then re-moves the generation it is
|
|
294
|
+
* about to witness, forever. That is host-policy pathology, not engine
|
|
295
|
+
* judgment (the engine ships the error, never a loop), so it THROWS rather
|
|
296
|
+
* than returning a result arm. Match with `errors.is`; the remedy is to
|
|
297
|
+
* move the interleaved write out of the callback (or make it first-attempt
|
|
298
|
+
* only — the delta belongs on `tx`, premise reads on `snap`).
|
|
299
|
+
*/
|
|
300
|
+
const ErrWitnessedLivelock = errors.new("bumbledb writeWitnessed livelock: the generation moved on every attempt — the callback itself commits an interleaved write each try, so no snapshot can ever stay current");
|
|
268
301
|
/**
|
|
269
302
|
* Fills one insert's omitted fresh cells through the engine's
|
|
270
303
|
* alloc-then-insert dyn lane (there is no insert-with-omitted-fields wire
|
|
@@ -313,18 +346,27 @@ function openDb(handle, theory, manifest) {
|
|
|
313
346
|
if (entry === undefined || entry.member !== relation) {
|
|
314
347
|
throw errors.new(`relation ${relation.name} is not a member of schema ${theory.name}`);
|
|
315
348
|
}
|
|
316
|
-
if (
|
|
349
|
+
if (isClosedMember(relation)) {
|
|
317
350
|
throw errors.new(`relation ${relation.name} is closed — its extension is schema data (axioms), never scanned or written`);
|
|
318
351
|
}
|
|
319
352
|
return entry;
|
|
320
353
|
}
|
|
321
354
|
function offendingFactOf(fact) {
|
|
322
|
-
|
|
355
|
+
const entry = tables.relations.get(fact.relation);
|
|
356
|
+
if (entry === undefined || !isMemberName(fact.relation)) {
|
|
323
357
|
throw errors.new(`bumbledb violation cites unknown relation ${fact.relation}`);
|
|
324
358
|
}
|
|
359
|
+
const declared = sealedFieldsOf(entry.member);
|
|
325
360
|
const decoded = {};
|
|
326
361
|
for (const cell of fact.fields) {
|
|
327
|
-
|
|
362
|
+
const cited = declared.find(function byName(candidate) {
|
|
363
|
+
return candidate.name === cell.name;
|
|
364
|
+
});
|
|
365
|
+
const roster = rosterOf(cited?.field);
|
|
366
|
+
decoded[cell.name] =
|
|
367
|
+
roster !== undefined
|
|
368
|
+
? handleOf(`violation fact ${fact.relation} field ${cell.name}`, roster, cell.value)
|
|
369
|
+
: cell.value;
|
|
328
370
|
}
|
|
329
371
|
return Object.freeze({ relation: fact.relation, fact: Object.freeze(decoded) });
|
|
330
372
|
}
|
|
@@ -383,21 +425,15 @@ function openDb(handle, theory, manifest) {
|
|
|
383
425
|
function get(relation, keyOrStatement, declaredKey) {
|
|
384
426
|
assertLive();
|
|
385
427
|
const entry = resolveOrdinary(relation);
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
428
|
+
return selectKeyRead(keyOrStatement, declaredKey, function byStatement(statement, key) {
|
|
429
|
+
return readThroughKey(relation, entry, declaredKeyOf(relation, statement), recordOf(key));
|
|
430
|
+
}, function byPrimary(key) {
|
|
431
|
+
const primaryKey = entry.primaryKey;
|
|
432
|
+
if (primaryKey === undefined) {
|
|
433
|
+
throw errors.new(`relation ${relation.name} has no candidate key — keyed get requires a fresh field or a declared key statement`);
|
|
389
434
|
}
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
}
|
|
393
|
-
if (isStatementValue(keyOrStatement)) {
|
|
394
|
-
throw errors.new("keyed get with a statement selector also takes the key object — get(relation, keyStatement, key)");
|
|
395
|
-
}
|
|
396
|
-
const primaryKey = entry.primaryKey;
|
|
397
|
-
if (primaryKey === undefined) {
|
|
398
|
-
throw errors.new(`relation ${relation.name} has no candidate key — keyed get requires a fresh field or a declared key statement`);
|
|
399
|
-
}
|
|
400
|
-
return readThroughKey(relation, entry, primaryKey, recordOf(keyOrStatement));
|
|
435
|
+
return readThroughKey(relation, entry, primaryKey, recordOf(key));
|
|
436
|
+
});
|
|
401
437
|
}
|
|
402
438
|
return { contains, get };
|
|
403
439
|
}
|
|
@@ -533,16 +569,11 @@ function openDb(handle, theory, manifest) {
|
|
|
533
569
|
}
|
|
534
570
|
function get(relation, keyOrStatement, declaredKey) {
|
|
535
571
|
return read(function getInScope(snap) {
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
}
|
|
542
|
-
if (isStatementValue(keyOrStatement)) {
|
|
543
|
-
throw errors.new("keyed get with a statement selector also takes the key object — get(relation, keyStatement, key)");
|
|
544
|
-
}
|
|
545
|
-
return snap.get(relation, keyOrStatement);
|
|
572
|
+
return selectKeyRead(keyOrStatement, declaredKey, function byStatement(statement, key) {
|
|
573
|
+
return snap.get(relation, statement, key);
|
|
574
|
+
}, function byPrimary(key) {
|
|
575
|
+
return snap.get(relation, key);
|
|
576
|
+
});
|
|
546
577
|
});
|
|
547
578
|
}
|
|
548
579
|
function contains(relation, fact) {
|
|
@@ -812,13 +843,29 @@ function openDb(handle, theory, manifest) {
|
|
|
812
843
|
}
|
|
813
844
|
return commitWitnessed(state, txHandle);
|
|
814
845
|
}
|
|
846
|
+
/**
|
|
847
|
+
* The witnessed retry loop. What it retries: the benign race — the
|
|
848
|
+
* host's OWN interleaved commit landing between an attempt's snapshot
|
|
849
|
+
* and its witnessed begin (every writer shares this handle, so a move
|
|
850
|
+
* is always self-inflicted) — by rerunning the WHOLE callback on a
|
|
851
|
+
* fresh snapshot, which converges because each rerun witnesses a
|
|
852
|
+
* strictly newer generation. What it refuses: the pathology where the
|
|
853
|
+
* callback itself (even indirectly) issues a plain `db.write` before
|
|
854
|
+
* its first tx verb, moving the generation on EVERY attempt — an
|
|
855
|
+
* unbounded loop would spin forever with no diagnostic, so past
|
|
856
|
+
* {@link WITNESSED_ATTEMPT_CAP} attempts the loop throws the typed
|
|
857
|
+
* {@link ErrWitnessedLivelock} instead (the engine's ruling: the
|
|
858
|
+
* error, never a loop — retry is host policy, and this is the host
|
|
859
|
+
* policy's own honesty bound).
|
|
860
|
+
*/
|
|
815
861
|
function writeWitnessed(fn) {
|
|
816
|
-
for (
|
|
862
|
+
for (let attempts = 0; attempts < WITNESSED_ATTEMPT_CAP; attempts += 1) {
|
|
817
863
|
const attempt = witnessedAttempt(fn);
|
|
818
864
|
if (attempt !== undefined) {
|
|
819
865
|
return attempt;
|
|
820
866
|
}
|
|
821
867
|
}
|
|
868
|
+
throw errors.wrap(ErrWitnessedLivelock, `writeWitnessed livelock: the generation moved on all ${WITNESSED_ATTEMPT_CAP} attempts against schema ${theory.name}`);
|
|
822
869
|
}
|
|
823
870
|
/**
|
|
824
871
|
* Verifies the declaration-ordinal law the query lowering leans on
|
|
@@ -837,16 +884,9 @@ function openDb(handle, theory, manifest) {
|
|
|
837
884
|
if (member === undefined) {
|
|
838
885
|
throw errors.new(`bumbledb manifest drift: schema ${theory.name} lost relation ${name}`);
|
|
839
886
|
}
|
|
840
|
-
const sealed =
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
...member.data.columns.map(function columnName(column) {
|
|
844
|
-
return column.name;
|
|
845
|
-
})
|
|
846
|
-
]
|
|
847
|
-
: member.data.fields.map(function fieldName(declared) {
|
|
848
|
-
return declared.name;
|
|
849
|
-
});
|
|
887
|
+
const sealed = sealedFieldsOf(member).map(function fieldName(declared) {
|
|
888
|
+
return declared.name;
|
|
889
|
+
});
|
|
850
890
|
sealed.forEach(function verifyField(fieldName, fieldOrdinal) {
|
|
851
891
|
if (entry.fieldIds.get(fieldName) !== fieldOrdinal) {
|
|
852
892
|
throw errors.new(`bumbledb manifest drift: ${name}.${fieldName} has engine field id ${entry.fieldIds.get(fieldName)}, its sealed ordinal is ${fieldOrdinal}`);
|
|
@@ -1035,5 +1075,5 @@ const Db = Object.freeze({
|
|
|
1035
1075
|
return exhumeStore(path.resolve(storePath));
|
|
1036
1076
|
}
|
|
1037
1077
|
});
|
|
1038
|
-
export { abandon, Db, ErrNewtypeMismatch };
|
|
1078
|
+
export { abandon, Db, ErrNewtypeMismatch, ErrWitnessedLivelock, WITNESSED_ATTEMPT_CAP };
|
|
1039
1079
|
//# sourceMappingURL=db.js.map
|
package/dist/db.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
package/dist/exhume.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exhume.d.ts","sourceRoot":"","sources":["../src/exhume.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAY,MAAM,YAAY,CAAA;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAE7C;;;;;;GAMG;AACH,QAAA,MAAM,qBAAqB,OAE1B,CAAA;AAED;;;;GAIG;AACH,QAAA,MAAM,uBAAuB,OAE5B,CAAA;AAED;;;;;GAKG;AACH,QAAA,MAAM,mBAAmB,OAA2F,CAAA;AAEpH;;;;;;GAMG;AACH,KAAK,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAA;AAEtD;;;;GAIG;AACH,UAAU,YAAY;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAA;CACjC;AAED;;;;GAIG;AACH,UAAU,YAAY;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAC5B;AAED;;;;;;;GAOG;AACH,UAAU,eAAe;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAA;IACxC,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,SAAS,CAAA;CACpD;AAED;;;;;;;GAOG;AACH,UAAU,iBAAiB;IAC1B,QAAQ,CAAC,SAAS,EAAE,SAAS,eAAe,EAAE,CAAA;CAC9C;AAED;;;;GAIG;AACH,UAAU,OAAO;IAChB,oEAAoE;IACpE,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAA;IACtC;;;;;;;OAOG;IACH,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,WAAW,EAAE,CAAA;CAC9C;
|
|
1
|
+
{"version":3,"file":"exhume.d.ts","sourceRoot":"","sources":["../src/exhume.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAY,MAAM,YAAY,CAAA;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAE7C;;;;;;GAMG;AACH,QAAA,MAAM,qBAAqB,OAE1B,CAAA;AAED;;;;GAIG;AACH,QAAA,MAAM,uBAAuB,OAE5B,CAAA;AAED;;;;;GAKG;AACH,QAAA,MAAM,mBAAmB,OAA2F,CAAA;AAEpH;;;;;;GAMG;AACH,KAAK,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAA;AAEtD;;;;GAIG;AACH,UAAU,YAAY;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAA;CACjC;AAED;;;;GAIG;AACH,UAAU,YAAY;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAA;CAC5B;AAED;;;;;;;GAOG;AACH,UAAU,eAAe;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAA;IACxC,QAAQ,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,SAAS,CAAA;CACpD;AAED;;;;;;;GAOG;AACH,UAAU,iBAAiB;IAC1B,QAAQ,CAAC,SAAS,EAAE,SAAS,eAAe,EAAE,CAAA;CAC9C;AAED;;;;GAIG;AACH,UAAU,OAAO;IAChB,oEAAoE;IACpE,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAA;IACtC;;;;;;;OAOG;IACH,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,WAAW,EAAE,CAAA;CAC9C;AA+BD;;;;;;;;;GASG;AACH,iBAAS,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAqD/C;AAED,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,CAAA;AACpG,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,WAAW,EAAE,CAAA"}
|
package/dist/exhume.js
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
* this surface, so there is nothing to flush.
|
|
25
25
|
*/
|
|
26
26
|
import * as errors from "@superbuilders/errors";
|
|
27
|
-
import { native } from "#native.ts";
|
|
27
|
+
import { bridged, native } from "#native.ts";
|
|
28
28
|
/**
|
|
29
29
|
* The typed `descriptorMissing` refusal: the store predates self-describing
|
|
30
30
|
* stores and has not been adopted. The remedy is in the message — one
|
|
@@ -46,19 +46,6 @@ const ErrExhumeFormatMismatch = errors.new("bumbledb exhume: storage format vers
|
|
|
46
46
|
* with `errors.is`.
|
|
47
47
|
*/
|
|
48
48
|
const ErrExhumeCorruption = errors.new("bumbledb exhume: the persisted schema descriptor fails its integrity gates");
|
|
49
|
-
/**
|
|
50
|
-
* The bridge guard (db.ts's twin over this module's calls): runs one
|
|
51
|
-
* native call and wraps anything it throws, so marshal-shape and
|
|
52
|
-
* handle-lifecycle refusals cross as genuine typed failures, never bare
|
|
53
|
-
* foreign errors.
|
|
54
|
-
*/
|
|
55
|
-
function bridged(context, run) {
|
|
56
|
-
const result = errors.trySync(run);
|
|
57
|
-
if (result.error) {
|
|
58
|
-
throw errors.wrap(result.error, context);
|
|
59
|
-
}
|
|
60
|
-
return result.data;
|
|
61
|
-
}
|
|
62
49
|
/**
|
|
63
50
|
* Shapes the bridge's manifest rendering of the stored descriptor into the
|
|
64
51
|
* SDK's {@link ExhumedDescriptor}: same relations in the same engine-id
|
package/dist/exhume.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exhume.js","sourceRoot":"","sources":["../src/exhume.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAE/C,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"exhume.js","sourceRoot":"","sources":["../src/exhume.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAG5C;;;;;;GAMG;AACH,MAAM,qBAAqB,GAAG,MAAM,CAAC,GAAG,CACvC,uMAAuM,CACvM,CAAA;AAED;;;;GAIG;AACH,MAAM,uBAAuB,GAAG,MAAM,CAAC,GAAG,CACzC,uGAAuG,CACvG,CAAA;AAED;;;;;GAKG;AACH,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,4EAA4E,CAAC,CAAA;AA6EpH;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,QAAkB;IACvC,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,UAAU,CAAC,QAAQ;QACpE,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,OAAO,CAAC,KAAK;YACxD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAA;QACvE,CAAC,CAAC,CAAA;QACF,IAAI,MAA2C,CAAA;QAC/C,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,GAAG,MAAM,CAAC,MAAM,CACrB,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,OAAO,CAAC,GAAG;gBAC1C,MAAM,MAAM,GAA8B,EAAE,CAAA;gBAC5C,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;oBAC/B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAA;gBAC/B,CAAC;gBACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YACxF,CAAC,CAAC,CACF,CAAA;QACF,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;IACrF,CAAC,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;AAC9D,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,WAAW,CAAC,SAAiB;IACrC,MAAM,OAAO,GAAG,OAAO,CAAC,4BAA4B,SAAS,EAAE,EAAE,SAAS,UAAU;QACnF,OAAO,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IAClC,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QACjB,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACtB,KAAK,mBAAmB;gBACvB,MAAM,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,UAAU,SAAS,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;YACpF,KAAK,gBAAgB;gBACpB,MAAM,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,UAAU,SAAS,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;YACtF,KAAK,YAAY;gBAChB,MAAM,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,UAAU,SAAS,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;QACnF,CAAC;IACF,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;IAC7B,MAAM,QAAQ,GAAG,OAAO,CAAC,kCAAkC,EAAE,SAAS,cAAc;QACnF,OAAO,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IACF,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IACzC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA6B,CAAA;IACvD,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;QAC7C,UAAU,CAAC,GAAG,CACb,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,KAAK;YACxC,OAAO,KAAK,CAAC,IAAI,CAAA;QAClB,CAAC,CAAC,CACF,CAAA;IACF,CAAC;IACD,SAAS,IAAI,CAAC,QAAgB;QAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QACtC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,MAAM,CAAC,GAAG,CAAC,gEAAgE,QAAQ,EAAE,CAAC,CAAA;QAC7F,CAAC;QACD,MAAM,IAAI,GAAG,OAAO,CAAC,kCAAkC,QAAQ,EAAE,EAAE,SAAS,QAAQ;YACnF,OAAO,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;QACF,OAAO,MAAM,CAAC,MAAM,CACnB,IAAI,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG;YAC3B,MAAM,IAAI,GAA8B,EAAE,CAAA;YAC1C,KAAK,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,IAAI,EAAE,KAAK;gBACtC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAA;gBACvB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACxB,MAAM,MAAM,CAAC,GAAG,CACf,mCAAmC,QAAQ,iCAAiC,KAAK,KAAK,IAAI,GAAG,CAC7F,CAAA;gBACF,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;YAClB,CAAC,CAAC,CAAA;YACF,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC3B,CAAC,CAAC,CACF,CAAA;IACF,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;AAC3C,CAAC;AAGD,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,WAAW,EAAE,CAAA"}
|
package/dist/face.d.ts
CHANGED
|
@@ -11,11 +11,12 @@
|
|
|
11
11
|
* positional: tuple order is preserved in the type, and the statement
|
|
12
12
|
* constructors pair the two sides' tuples by arity ({@link SameArity}) AND
|
|
13
13
|
* by structural shape ({@link SameShapes}) — every projected field's
|
|
14
|
-
* kind/width/element
|
|
15
|
-
* kernel: descriptors are pure structure
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
14
|
+
* kind/width/element/roster quadruple is read off the schema type (the
|
|
15
|
+
* minimal kernel: descriptors are pure structure, and a closed reference's
|
|
16
|
+
* roster IS part of that structure) and compared positionwise. There is no
|
|
17
|
+
* domain to compare at construction — domains are LAW-BORN: the statements
|
|
18
|
+
* themselves define the equivalence classes, and `schema()` is where they
|
|
19
|
+
* aggregate and get judged (the one-generator-per-class wall).
|
|
19
20
|
*/
|
|
20
21
|
import type { AnyClosed, AnySelectedClosed, PayloadField } from "#closed.ts";
|
|
21
22
|
import type { AnyField } from "#fields.ts";
|
|
@@ -29,21 +30,6 @@ import type { AnyRelation, AnySelected, FieldsShape, RelationFields, SelectionBi
|
|
|
29
30
|
* (and the projection tuple) straight off the statement type.
|
|
30
31
|
*/
|
|
31
32
|
type OwnerOf<S extends FaceSource> = S extends AnySelected | AnySelectedClosed ? S["relation"] : S;
|
|
32
|
-
/**
|
|
33
|
-
* A disjunctive literal set for a selection binding — `field == {A, B}`.
|
|
34
|
-
* The signature of {@link oneOf} demands two leading literals, so the
|
|
35
|
-
* one-element set (banned: it is the bare literal) and the empty set
|
|
36
|
-
* (banned: it selects nothing) are unwritable.
|
|
37
|
-
*/
|
|
38
|
-
interface OneOf<V> {
|
|
39
|
-
readonly literals: readonly [V, V, ...V[]];
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Constructs a literal set (read disjunctively) for a `where()` binding.
|
|
43
|
-
* Two leading arguments by signature: the degenerate sets have no spelling
|
|
44
|
-
* (the canonical-utterance law, `docs/architecture/70-api.md`).
|
|
45
|
-
*/
|
|
46
|
-
declare function oneOf<V>(first: V, second: V, ...rest: V[]): OneOf<V>;
|
|
47
33
|
/** The relation a face projects from — ordinary or closed. */
|
|
48
34
|
type FaceOwner = AnyRelation | AnyClosed;
|
|
49
35
|
/**
|
|
@@ -84,19 +70,26 @@ type FaceSource = AnyRelation | AnyClosed | AnySelected | AnySelectedClosed;
|
|
|
84
70
|
* bare or ψ-selected alike (`docs/architecture/70-api.md`: statement field
|
|
85
71
|
* names address the sealed shape).
|
|
86
72
|
*/
|
|
87
|
-
type FaceFields<S extends FaceSource> = S extends AnySelected ? keyof S["relation"]
|
|
73
|
+
type FaceFields<S extends FaceSource> = S extends AnySelected ? keyof RelationFields<S["relation"]> & string : S extends AnySelectedClosed ? "id" | (keyof S["relation"]["columns"] & string) : S extends AnyRelation ? keyof RelationFields<S> & string : S extends {
|
|
88
74
|
readonly axioms: Readonly<Record<string, infer Row>>;
|
|
89
75
|
} ? "id" | (keyof Row & string) : never;
|
|
90
76
|
/**
|
|
91
|
-
* One descriptor's structural comparand: the kind/width/element
|
|
92
|
-
* exactly the structure the minimal kernel carries
|
|
93
|
-
* engine's Q1 law pairs positions
|
|
94
|
-
* bound (bytes<16> vs bytes<32>
|
|
95
|
-
*
|
|
96
|
-
* domain and not a width, so
|
|
97
|
-
* (
|
|
98
|
-
*
|
|
99
|
-
* u64-vs-i64 interval
|
|
77
|
+
* One descriptor's structural comparand: the kind/width/element/roster
|
|
78
|
+
* quadruple — exactly the structure the minimal kernel carries. The first
|
|
79
|
+
* three slots compare exactly as the engine's Q1 law pairs positions
|
|
80
|
+
* (`schema/validate.rs`): a `bytes` width is bound (bytes<16> vs bytes<32>
|
|
81
|
+
* mismatch), while an INTERVAL width is FREE — the pointwise judgments
|
|
82
|
+
* quantify over points, which carry an element domain and not a width, so
|
|
83
|
+
* `interval(u64)` pairs with `interval(u64, 1n)` (recipe 9's extent/slot
|
|
84
|
+
* mirrors, recipe 29's mixed-width zones) and the width slot reads
|
|
85
|
+
* `undefined` for every interval. Elements stay bound: u64-vs-i64 interval
|
|
86
|
+
* pairs still mismatch. The ROSTER slot is SDK-only structure (the engine's
|
|
87
|
+
* wire carries plain u64s): a closed reference contributes its handle
|
|
88
|
+
* union, every other kind `undefined`, so a plain u64 face cannot pair with
|
|
89
|
+
* a closed `[id]` face — the vocabulary's own descriptor (`Kind.id`) is the
|
|
90
|
+
* ONE spelling of a closed reference at this surface, and a bare column
|
|
91
|
+
* cannot alias a vocabulary through a declared law. The runtime twin is the
|
|
92
|
+
* statement constructors' roster-identity walk (`statements.ts`).
|
|
100
93
|
*/
|
|
101
94
|
type ShapeOf<F extends AnyField> = readonly [
|
|
102
95
|
F["kind"],
|
|
@@ -107,7 +100,12 @@ type ShapeOf<F extends AnyField> = readonly [
|
|
|
107
100
|
} ? W : undefined,
|
|
108
101
|
F extends {
|
|
109
102
|
readonly element: infer E;
|
|
110
|
-
} ? E : undefined
|
|
103
|
+
} ? E : undefined,
|
|
104
|
+
F extends {
|
|
105
|
+
readonly closed: {
|
|
106
|
+
readonly handles: readonly (infer H extends string)[];
|
|
107
|
+
};
|
|
108
|
+
} ? H : undefined
|
|
111
109
|
];
|
|
112
110
|
/** One field's structural shape within a declared field block (`undefined` when the name is foreign). */
|
|
113
111
|
type ShapeIn<Fields extends FieldsShape, K extends string> = K extends keyof Fields ? ShapeOf<Fields[K]> : undefined;
|
|
@@ -154,10 +152,11 @@ type SameArity<A extends AnyFace, B extends AnyFace> = Arity<A> extends Arity<B>
|
|
|
154
152
|
* bijection, or window project structurally incompatible fields at any
|
|
155
153
|
* position, this type is intersected into the second face's parameter and
|
|
156
154
|
* names both shape tuples — a u64 face against a str face, a bytes width
|
|
157
|
-
* mismatch,
|
|
155
|
+
* mismatch, an interval element mismatch, or a bare column against a
|
|
156
|
+
* closed reference (the roster slot) is a COMPILE error.
|
|
158
157
|
*/
|
|
159
158
|
interface FaceShapeMismatch<Left, Right> {
|
|
160
|
-
readonly "face shape mismatch — positionwise kind, width, and
|
|
159
|
+
readonly "face shape mismatch — positionwise kind, width, element, and closed roster must be equal on both sides": readonly [
|
|
161
160
|
Left,
|
|
162
161
|
Right
|
|
163
162
|
];
|
|
@@ -166,11 +165,12 @@ interface FaceShapeMismatch<Left, Right> {
|
|
|
166
165
|
* Resolves to `unknown` (a no-op intersection) when the two faces project
|
|
167
166
|
* positionwise-equal structural shapes, and to {@link FaceShapeMismatch}
|
|
168
167
|
* otherwise. Equality is mutual tuple assignability over the
|
|
169
|
-
* kind/width/element
|
|
170
|
-
* deliberately: there is no domain to compare
|
|
171
|
-
*
|
|
172
|
-
*
|
|
173
|
-
*
|
|
168
|
+
* kind/width/element/roster quadruples. This is the whole
|
|
169
|
+
* construction-time wall — deliberately: there is no domain to compare
|
|
170
|
+
* here (the roster is descriptor STRUCTURE, not a domain). The domain wall
|
|
171
|
+
* lives where domains are BORN: `schema()` computes every field's class
|
|
172
|
+
* from the statement list and holds the one-generator-per-class law, and
|
|
173
|
+
* query joins compare class names off the schema type.
|
|
174
174
|
*/
|
|
175
175
|
type SameShapes<A extends AnyFace, B extends AnyFace> = FaceShapes<A> extends FaceShapes<B> ? FaceShapes<B> extends FaceShapes<A> ? unknown : FaceShapeMismatch<FaceShapes<A>, FaceShapes<B>> : FaceShapeMismatch<FaceShapes<A>, FaceShapes<B>>;
|
|
176
176
|
/**
|
|
@@ -191,6 +191,6 @@ declare function on<S extends FaceSource, const P extends readonly [FaceFields<S
|
|
|
191
191
|
* renderer's own shape, `schema/render.rs`).
|
|
192
192
|
*/
|
|
193
193
|
declare function renderFace(face: FaceData): string;
|
|
194
|
-
export type { AnyFace, Arity, Face, FaceArityMismatch, FaceData, FaceFields, FaceOwner, FaceShapeMismatch, FaceShapes, FaceSource,
|
|
195
|
-
export { on,
|
|
194
|
+
export type { AnyFace, Arity, Face, FaceArityMismatch, FaceData, FaceFields, FaceOwner, FaceShapeMismatch, FaceShapes, FaceSource, OwnerOf, SameArity, SameShapes };
|
|
195
|
+
export { on, renderFace };
|
|
196
196
|
//# sourceMappingURL=face.d.ts.map
|
package/dist/face.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"face.d.ts","sourceRoot":"","sources":["../src/face.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"face.d.ts","sourceRoot":"","sources":["../src/face.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC5E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAM3G;;;;;;;GAOG;AACH,KAAK,OAAO,CAAC,CAAC,SAAS,UAAU,IAAI,CAAC,SAAS,WAAW,GAAG,iBAAiB,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;AAmBlG,8DAA8D;AAC9D,KAAK,SAAS,GAAG,WAAW,GAAG,SAAS,CAAA;AAExC;;;;;;;GAOG;AACH,UAAU,QAAQ,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAAE,CAAC,SAAS,SAAS,MAAM,EAAE,GAAG,SAAS,MAAM,EAAE;IAClG,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;IACjB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAA;IACtB,QAAQ,CAAC,SAAS,EAAE,SAAS,gBAAgB,EAAE,CAAA;CAC/C;AAED;;;;;;;;GAQG;AACH,UAAU,IAAI,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,SAAS,MAAM,EAAE;IAC/D,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAClB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAA;IACtB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;CACtC;AAED,0DAA0D;AAC1D,KAAK,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC,CAAA;AAElD,8FAA8F;AAC9F,KAAK,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,iBAAiB,CAAA;AAE3E;;;;;;GAMG;AACH,KAAK,UAAU,CAAC,CAAC,SAAS,UAAU,IAAI,CAAC,SAAS,WAAW,GAC1D,MAAM,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,MAAM,GAC5C,CAAC,SAAS,iBAAiB,GAC1B,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,GAChD,CAAC,SAAS,WAAW,GACpB,MAAM,cAAc,CAAC,CAAC,CAAC,GAAG,MAAM,GAChC,CAAC,SAAS;IAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,CAAA;CAAE,GACjE,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,MAAM,CAAC,GAC3B,KAAK,CAAA;AAEX;;;;;;;;;;;;;;;;;GAiBG;AACH,KAAK,OAAO,CAAC,CAAC,SAAS,QAAQ,IAAI,SAAS;IAC3C,CAAC,CAAC,MAAM,CAAC;IACT,CAAC,SAAS;QAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;KAAE,GAAG,SAAS,GAAG,CAAC,SAAS;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,SAAS;IAC3G,CAAC,SAAS;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,SAAS;IACvD,CAAC,SAAS;QAAE,QAAQ,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,SAAS,MAAM,CAAC,EAAE,CAAA;SAAE,CAAA;KAAE,GAAG,CAAC,GAAG,SAAS;CACxG,CAAA;AAED,yGAAyG;AACzG,KAAK,OAAO,CAAC,MAAM,SAAS,WAAW,EAAE,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;AAEpH;;;;;;;;GAQG;AACH,KAAK,cAAc,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,WAAW,GAChF,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GACzC,CAAC,SAAS,iBAAiB,GAC1B,CAAC,SAAS,IAAI,GACb,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,GAC5B,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,GACrC,CAAC,SAAS,WAAW,GACpB,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAC7B,CAAC,SAAS;IACT,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,QAAQ,CAAA;IACtC,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;CACjE,GACA,CAAC,SAAS,IAAI,GACb,OAAO,CAAC,EAAE,CAAC,GACX,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,GACjB,SAAS,CAAA;AAEf,wEAAwE;AACxE,KAAK,QAAQ,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,SAAS,MAAM,EAAE,IAAI;IAClE,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;CACzD,CAAA;AAED,2FAA2F;AAC3F,KAAK,UAAU,CAAC,CAAC,SAAS,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAA;AAE9F,sCAAsC;AACtC,KAAK,KAAK,CAAC,CAAC,SAAS,OAAO,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAA;AAEzD;;;;GAIG;AACH,UAAU,iBAAiB,CAAC,IAAI,EAAE,KAAK;IACtC,QAAQ,CAAC,6FAA6F,EAAE,SAAS;QAChH,IAAI;QACJ,KAAK;KACL,CAAA;CACD;AAED;;;;GAIG;AACH,KAAK,SAAS,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,OAAO,IAClD,KAAK,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,GACtB,KAAK,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,GACxB,OAAO,GACP,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,GACtC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AAEzC;;;;;;;GAOG;AACH,UAAU,iBAAiB,CAAC,IAAI,EAAE,KAAK;IACtC,QAAQ,CAAC,wGAAwG,EAAE,SAAS;QAC3H,IAAI;QACJ,KAAK;KACL,CAAA;CACD;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,OAAO,IACnD,UAAU,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,GAChC,UAAU,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,GAClC,OAAO,GACP,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,GAChD,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;AAEnD;;;;;;;;;GASG;AACH,iBAAS,EAAE,CAAC,CAAC,SAAS,UAAU,EAAE,KAAK,CAAC,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;AAC5G,iBAAS,EAAE,CAAC,CAAC,SAAS,UAAU,EAAE,KAAK,CAAC,CAAC,SAAS,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAC7F,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,CAAC,GACP,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAuCb;;;;GAIG;AACH,iBAAS,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAW1C;AAED,YAAY,EACX,OAAO,EACP,KAAK,EACL,IAAI,EACJ,iBAAiB,EACjB,QAAQ,EACR,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,OAAO,EACP,SAAS,EACT,UAAU,EACV,CAAA;AACD,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,CAAA"}
|