@superbee/core 0.2.0-pre.19 → 0.2.0-pre.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -18
- package/dist/connectors.d.ts +7 -0
- package/dist/connectors.d.ts.map +1 -1
- package/dist/connectors.js +17 -10
- package/dist/connectors.js.map +1 -1
- package/dist/recipe-lifecycle/errors.d.ts +17 -0
- package/dist/recipe-lifecycle/errors.d.ts.map +1 -1
- package/dist/recipe-lifecycle/errors.js +26 -0
- package/dist/recipe-lifecycle/errors.js.map +1 -1
- package/dist/recipe-lifecycle/evolution.d.ts +6 -2
- package/dist/recipe-lifecycle/evolution.d.ts.map +1 -1
- package/dist/recipe-lifecycle/evolution.js +132 -2
- package/dist/recipe-lifecycle/evolution.js.map +1 -1
- package/dist/recipe-lifecycle/index.d.ts +10 -9
- package/dist/recipe-lifecycle/index.d.ts.map +1 -1
- package/dist/recipe-lifecycle/index.js +9 -8
- package/dist/recipe-lifecycle/index.js.map +1 -1
- package/dist/recipe-lifecycle/install.d.ts +22 -7
- package/dist/recipe-lifecycle/install.d.ts.map +1 -1
- package/dist/recipe-lifecycle/install.js +102 -3
- package/dist/recipe-lifecycle/install.js.map +1 -1
- package/dist/recipe-lifecycle/stamp.d.ts +46 -19
- package/dist/recipe-lifecycle/stamp.d.ts.map +1 -1
- package/dist/recipe-lifecycle/stamp.js +97 -37
- package/dist/recipe-lifecycle/stamp.js.map +1 -1
- package/dist/recipes.d.ts +24 -1
- package/dist/recipes.d.ts.map +1 -1
- package/dist/recipes.js +132 -1
- package/dist/recipes.js.map +1 -1
- package/dist/search/backend-source.d.ts +6 -0
- package/dist/search/backend-source.d.ts.map +1 -0
- package/dist/search/backend-source.js +33 -0
- package/dist/search/backend-source.js.map +1 -0
- package/dist/search/index.d.ts +1 -0
- package/dist/search/index.d.ts.map +1 -1
- package/dist/search/index.js +1 -0
- package/dist/search/index.js.map +1 -1
- package/dist/search/memory-source.d.ts +11 -0
- package/dist/search/memory-source.d.ts.map +1 -1
- package/dist/search/memory-source.js +7 -2
- package/dist/search/memory-source.js.map +1 -1
- package/dist/search/search.d.ts.map +1 -1
- package/dist/search/search.js +25 -8
- package/dist/search/search.js.map +1 -1
- package/dist/source-harness/conformance.js +1 -1
- package/dist/source-harness/conformance.js.map +1 -1
- package/package.json +1 -1
|
@@ -4,10 +4,14 @@ import { type RecipeEvolutionCompletedDefinition } from "./errors.js";
|
|
|
4
4
|
import { type RecipeStampState } from "./stamp.js";
|
|
5
5
|
export interface RecipeEvolutionDefinition {
|
|
6
6
|
id: ConceptId;
|
|
7
|
+
/**
|
|
8
|
+
* The Kind a convention governs; `Connector` on a Connector row, a value no recipe convention
|
|
9
|
+
* may govern.
|
|
10
|
+
*/
|
|
7
11
|
governs: string;
|
|
8
|
-
/** Content only: whether the
|
|
12
|
+
/** Content only: whether the definition's declarations change (a Connector's, as a whole). */
|
|
9
13
|
action: "missing" | "unchanged" | "update";
|
|
10
|
-
/** The installed
|
|
14
|
+
/** The installed definition's recipe stamp relative to this recipe. */
|
|
11
15
|
stamp: RecipeStampState;
|
|
12
16
|
expected_version: Version | null;
|
|
13
17
|
desired_version: Version;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evolution.d.ts","sourceRoot":"","sources":["../../src/recipe-lifecycle/evolution.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"evolution.d.ts","sourceRoot":"","sources":["../../src/recipe-lifecycle/evolution.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAe,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3E,OAAO,EAML,KAAK,kCAAkC,EACxC,MAAM,aAAa,CAAC;AAMrB,OAAO,EAOL,KAAK,gBAAgB,EACtB,MAAM,YAAY,CAAC;AAUpB,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,SAAS,CAAC;IACd;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,8FAA8F;IAC9F,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC3C,uEAAuE;IACvE,KAAK,EAAE,gBAAgB,CAAC;IACxB,gBAAgB,EAAE,OAAO,GAAG,IAAI,CAAC;IACjC,eAAe,EAAE,OAAO,CAAC;IACzB,wEAAwE;IACxE,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,8EAA8E;AAC9E,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,gBAAgB,CAAC;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,kEAAkE;IAClE,OAAO,EAAE,OAAO,CAAC;IACjB,oGAAoG;IACpG,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,yBAAyB,EAAE,CAAC;IACzC,MAAM,EAAE;QACN,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,yFAAyF;QACzF,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,QAAQ,EAAE,sBAAsB,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,0BAA0B;IACzC,wGAAwG;IACxG,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,iBAAiB,CAAC;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,kCAAkC,EAAE,CAAC;IAClD,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CACjE;AAy4BD,0FAA0F;AAC1F,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,mBAAmB,CAAC,CAE9B;AAED,sEAAsE;AACtE,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,iBAAiB,EAAE,MAAM,EACzB,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAC/B,OAAO,CAAC,0BAA0B,CAAC,CAsHrC"}
|
|
@@ -5,7 +5,10 @@
|
|
|
5
5
|
// exact-token preflight and exact-version CAS apply over each target whose content or recipe stamp
|
|
6
6
|
// needs a write. The stamp travels in the same write as the convention's content. Since the bundle
|
|
7
7
|
// has no cross-document transaction, a postcondition reports concurrent non-target changes honestly.
|
|
8
|
+
// A Connector the recipe carries is a declaration without instances: its content change replaces
|
|
9
|
+
// the whole document, and only one this recipe wrote that nobody changed since.
|
|
8
10
|
import { query, readBlob, readBundleOkfVersion, readDocVersioned } from "../bundle-ops.js";
|
|
11
|
+
import { checkConnectorAgainstKinds, CONNECTOR_TYPE } from "../connectors.js";
|
|
9
12
|
import { resolveContentType } from "../content-type.js";
|
|
10
13
|
import { DocumentNotFoundError, mutateDocument } from "../document-mutation.js";
|
|
11
14
|
import { applyV02MutationMetadata } from "../document-write-policy.js";
|
|
@@ -127,6 +130,67 @@ function additiveConventionCandidate(existing, desired, blockers) {
|
|
|
127
130
|
addedPaths: [...new Set(addedPaths)].sort(),
|
|
128
131
|
};
|
|
129
132
|
}
|
|
133
|
+
/**
|
|
134
|
+
* The recipe's Connector as the replacement of the installed one: every content key and the body
|
|
135
|
+
* from the recipe, the root metadata and a bundle-local `order` from the installed document, as a
|
|
136
|
+
* convention update keeps them.
|
|
137
|
+
*/
|
|
138
|
+
function connectorReplacement(existing, desired) {
|
|
139
|
+
const frontmatter = {};
|
|
140
|
+
for (const [key, value] of Object.entries(desired.frontmatter)) {
|
|
141
|
+
if (!PRESERVED_ROOT_METADATA.has(key))
|
|
142
|
+
setOwn(frontmatter, key, value);
|
|
143
|
+
}
|
|
144
|
+
for (const key of [...PRESERVED_ROOT_METADATA, ...BUNDLE_LOCAL_PLACEMENT]) {
|
|
145
|
+
if (BUNDLE_LOCAL_PLACEMENT.has(key) && desired.frontmatter[key] !== undefined)
|
|
146
|
+
continue;
|
|
147
|
+
if (Object.hasOwn(existing.frontmatter, key))
|
|
148
|
+
setOwn(frontmatter, key, existing.frontmatter[key]);
|
|
149
|
+
}
|
|
150
|
+
return { id: desired.id, frontmatter: frontmatter, body: desired.body };
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Why an installed Connector may not be written, or null. A Connector has no additive merge, so
|
|
154
|
+
* evolution writes one only when this recipe's stamp holds and its definition digest shows nobody
|
|
155
|
+
* changed it since, or when it is unstamped and already equal to the recipe's. A person's edit, a
|
|
156
|
+
* hand-written declaration and another recipe's Connector all block, so their content is never
|
|
157
|
+
* replaced and their stamp never rewritten.
|
|
158
|
+
*/
|
|
159
|
+
function connectorWriteBlocker(existing, stamp, unchanged) {
|
|
160
|
+
const id = existing.id;
|
|
161
|
+
if (existing.frontmatter.type !== CONNECTOR_TYPE) {
|
|
162
|
+
return {
|
|
163
|
+
code: "RECIPE_EVOLUTION_IDENTITY_CONFLICT",
|
|
164
|
+
message: `existing '${id}' has type '${String(existing.frontmatter.type)}', not '${CONNECTOR_TYPE}'`,
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
if (stamp === "foreign") {
|
|
168
|
+
return {
|
|
169
|
+
code: "RECIPE_EVOLUTION_REPLACEMENT_UNSUPPORTED",
|
|
170
|
+
message: `Connector '${id}' belongs to another recipe (its stamp names '${String(plainRecord(existing.frontmatter[RECIPE_STAMP_KEY])?.id)}'); evolution never replaces or re-stamps another recipe's Connector`,
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
if (stamp === "missing") {
|
|
174
|
+
return unchanged ? null : {
|
|
175
|
+
code: "RECIPE_EVOLUTION_REPLACEMENT_UNSUPPORTED",
|
|
176
|
+
message: `Connector '${id}' carries no recipe stamp and differs from this recipe's; evolution does not adopt a hand-written declaration: remove it and run 'recipe add', or keep it and leave this recipe where it is`,
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
const definition = conventionStampState(existing);
|
|
180
|
+
if (definition === "diverged") {
|
|
181
|
+
return {
|
|
182
|
+
code: "RECIPE_EVOLUTION_REPLACEMENT_UNSUPPORTED",
|
|
183
|
+
message: `Connector '${id}' changed since this recipe wrote it; evolution never replaces or re-stamps a Connector a person changed: undo the change, or remove the Connector and run 'recipe add'`,
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
if (definition === "unknown") {
|
|
187
|
+
return {
|
|
188
|
+
code: "RECIPE_EVOLUTION_REPLACEMENT_UNSUPPORTED",
|
|
189
|
+
message: `Connector '${id}' carries a stamp whose digest rules this release does not read, so it cannot prove nobody changed it`,
|
|
190
|
+
};
|
|
191
|
+
}
|
|
192
|
+
return null;
|
|
193
|
+
}
|
|
130
194
|
async function readRecipeDocIfPresent(bundle, id) {
|
|
131
195
|
try {
|
|
132
196
|
return await readDocVersioned(bundle, id);
|
|
@@ -423,6 +487,71 @@ async function prepareRecipeEvolution(bundle, sourceRecipe) {
|
|
|
423
487
|
evolutionBlocker(blockers, "RECIPE_EVOLUTION_DUPLICATE_GOVERNS", kind.id, `prospective registry keeps '${prospectiveRegistry.kinds.get(governs)?.id ?? "none"}' as the authority for '${governs}', not '${kind.id}'`, governs);
|
|
424
488
|
}
|
|
425
489
|
}
|
|
490
|
+
const connectorIds = new Set();
|
|
491
|
+
for (const { doc: authored, connector } of recipe.connectors ?? []) {
|
|
492
|
+
const target = recipeDocumentForApply(authored, okfVersion, "1970-01-01T00:00:00.000Z");
|
|
493
|
+
connectorIds.add(target.id);
|
|
494
|
+
// The target-Kind rules over the registry this plan would leave, so an unsatisfied Kind is a
|
|
495
|
+
// blocker here and never a failure part way through the apply.
|
|
496
|
+
for (const error of checkConnectorAgainstKinds(connector, prospectiveRegistry)) {
|
|
497
|
+
evolutionBlocker(blockers, "RECIPE_EVOLUTION_CONNECTOR_TARGET", target.id, `${error.code}: ${error.message}`, error.path);
|
|
498
|
+
}
|
|
499
|
+
const existing = await readRecipeDocIfPresent(bundle, target.id);
|
|
500
|
+
if (!existing) {
|
|
501
|
+
const desiredVersion = contentVersion(comparableRecipeDoc(target, okfVersion));
|
|
502
|
+
definitions.push({
|
|
503
|
+
id: target.id,
|
|
504
|
+
governs: CONNECTOR_TYPE,
|
|
505
|
+
action: "missing",
|
|
506
|
+
stamp: "missing",
|
|
507
|
+
expected_version: null,
|
|
508
|
+
desired_version: desiredVersion,
|
|
509
|
+
added_paths: [],
|
|
510
|
+
});
|
|
511
|
+
proofs.push({ kind: "connector", id: target.id, current_version: null, desired_version: desiredVersion });
|
|
512
|
+
evolutionBlocker(blockers, "RECIPE_EVOLUTION_ASSET_MISSING", target.id, `recipe Connector '${target.id}' is not installed; install the complete recipe with 'recipe add' first`);
|
|
513
|
+
continue;
|
|
514
|
+
}
|
|
515
|
+
let candidate = connectorReplacement(existing.doc, target);
|
|
516
|
+
if (okfVersion === "0.2") {
|
|
517
|
+
try {
|
|
518
|
+
const withMetadata = applyV02MutationMetadata({
|
|
519
|
+
existing: existing.doc,
|
|
520
|
+
candidate: { frontmatter: candidate.frontmatter, body: candidate.body },
|
|
521
|
+
meaningfulChangeAt: "1970-01-01T00:00:00.000Z",
|
|
522
|
+
allowGeneratedProvenanceSeed: false,
|
|
523
|
+
});
|
|
524
|
+
candidate = { id: candidate.id, ...withMetadata };
|
|
525
|
+
}
|
|
526
|
+
catch (error) {
|
|
527
|
+
if (!(error instanceof InvalidInputError))
|
|
528
|
+
throw error;
|
|
529
|
+
evolutionBlocker(blockers, "RECIPE_EVOLUTION_WRITE_POLICY_INVALID", target.id, `prospective Connector cannot satisfy the OKF v0.2 write policy: ${error.message}`);
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
const desiredVersion = contentVersion(comparableRecipeDoc(candidate, okfVersion));
|
|
533
|
+
const unchanged = sameInstalledDoc(existing.doc, candidate, okfVersion);
|
|
534
|
+
const stamp = recipeStampState(existing.doc, identity);
|
|
535
|
+
definitions.push({
|
|
536
|
+
id: target.id,
|
|
537
|
+
governs: CONNECTOR_TYPE,
|
|
538
|
+
action: unchanged ? "unchanged" : "update",
|
|
539
|
+
stamp,
|
|
540
|
+
expected_version: existing.version,
|
|
541
|
+
desired_version: desiredVersion,
|
|
542
|
+
added_paths: [],
|
|
543
|
+
});
|
|
544
|
+
proofs.push({ kind: "connector", id: target.id, current_version: existing.version, desired_version: desiredVersion });
|
|
545
|
+
const blocked = connectorWriteBlocker(existing.doc, stamp, unchanged);
|
|
546
|
+
if (blocked) {
|
|
547
|
+
evolutionBlocker(blockers, blocked.code, target.id, blocked.message, "/");
|
|
548
|
+
continue;
|
|
549
|
+
}
|
|
550
|
+
if (!unchanged)
|
|
551
|
+
writes.set(target.id, withRecipeStamp(candidate, identity));
|
|
552
|
+
else if (stamp === "stale" || stamp === "missing")
|
|
553
|
+
writes.set(target.id, withRecipeStamp(existing.doc, identity));
|
|
554
|
+
}
|
|
426
555
|
const assetDocProof = async (kind, authored) => {
|
|
427
556
|
const target = recipeDocumentForApply(authored, okfVersion, "1970-01-01T00:00:00.000Z");
|
|
428
557
|
const wanted = contentVersion(comparableRecipeDoc(target, okfVersion));
|
|
@@ -451,7 +580,7 @@ async function prepareRecipeEvolution(bundle, sourceRecipe) {
|
|
|
451
580
|
}
|
|
452
581
|
}
|
|
453
582
|
const changingKinds = definitions
|
|
454
|
-
.filter((definition) => definition.action === "update")
|
|
583
|
+
.filter((definition) => definition.action === "update" && !connectorIds.has(definition.id))
|
|
455
584
|
.map((definition) => desiredKinds.get(definition.governs))
|
|
456
585
|
.filter((kind) => kind !== undefined);
|
|
457
586
|
let instancesChecked = 0;
|
|
@@ -518,7 +647,8 @@ async function prepareRecipeEvolution(bundle, sourceRecipe) {
|
|
|
518
647
|
}
|
|
519
648
|
}
|
|
520
649
|
proofs.push(...instanceProofs.sort((a, b) => a.id.localeCompare(b.id)));
|
|
521
|
-
|
|
650
|
+
// Connectors after conventions, so an apply writes a Kind before a Connector that maps onto it.
|
|
651
|
+
definitions.sort((a, b) => Number(connectorIds.has(a.id)) - Number(connectorIds.has(b.id)) || a.id.localeCompare(b.id));
|
|
522
652
|
proofs.sort((a, b) => `${a.kind}:${a.id}`.localeCompare(`${b.kind}:${b.id}`));
|
|
523
653
|
blockers.sort((a, b) => `${a.code}:${a.id}:${a.field ?? ""}`.localeCompare(`${b.code}:${b.id}:${b.field ?? ""}`));
|
|
524
654
|
// Each definition's stamp state and the stamp the apply writes (the recipe's source digest)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evolution.js","sourceRoot":"","sources":["../../src/recipe-lifecycle/evolution.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,EAAE;AACF,iGAAiG;AACjG,iGAAiG;AACjG,mGAAmG;AACnG,mGAAmG;AACnG,qGAAqG;AACrG,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,6BAA6B,EAC7B,mBAAmB,GAGpB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,uBAAuB,EAA4B,MAAM,kBAAkB,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,GAE7B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,GAEhB,MAAM,YAAY,CAAC;AAEpB,MAAM,+BAA+B,GAAiB,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAEzF,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACzE,CAAC,CAAC,KAAgC;QAClC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AA2ED,SAAS,mBAAmB,CAAC,GAAgB,EAAE,UAAkB;IAC/D,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,GAAG,GAAG,CAAC,WAAW,CAAC;IAC9F,MAAM,SAAS,GAAG,WAAW,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACrD,IAAI,UAAU,KAAK,KAAK,IAAI,SAAS,EAAE,CAAC;QACtC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,SAAS,CAAC;QACvC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC;;YAC1D,OAAO,WAAW,CAAC,SAAS,CAAC;IACpC,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;AACrD,CAAC;AAED,gGAAgG;AAChG,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,qBAAqB,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAClI;;;;;GAKG;AACH,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;AAOlD,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,MAAM,CAAC,MAA+B,EAAE,GAAW,EAAE,KAAc;IAC1E,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE;QACjC,KAAK;QACL,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;QAClB,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAS,2BAA2B,CAClC,QAAqB,EACrB,OAAoB,EACpB,QAAkC;IAElC,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,MAAM,KAAK,GAAG,CAAC,OAAgB,EAAE,IAAa,EAAE,OAAe,EAAW,EAAE;QAC1E,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,gBAAgB,CACd,QAAQ,EACR,sCAAsC,EACtC,OAAO,CAAC,EAAE,EACV,8DAA8D,OAAO,yDAAyD,EAC9H,OAAO,CACR,CAAC;YACF,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,IAAI,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC;YAAE,OAAO,OAAO,CAAC;QAClD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;YAC5B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;oBAChE,gBAAgB,CACd,QAAQ,EACR,sCAAsC,EACtC,OAAO,CAAC,EAAE,EACV,oEAAoE,OAAO,GAAG,EAC9E,OAAO,CACR,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;gBACzB,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;oBAAE,SAAS;gBAC3E,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACnB,UAAU,CAAC,IAAI,CAAC,GAAG,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YACjE,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,aAAa,IAAI,UAAU,EAAE,CAAC;YAChC,MAAM,MAAM,GAA4B,EAAE,GAAG,aAAa,EAAE,CAAC;YAC7D,KAAK,MAAM,GAAG,IAAI,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvF,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,CACvB,aAAa,CAAC,GAAG,CAAC,EAClB,UAAU,CAAC,GAAG,CAAC,EACf,GAAG,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CACpC,CAAC,CAAC;YACL,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,gBAAgB,CACd,QAAQ,EACR,0CAA0C,EAC1C,OAAO,CAAC,EAAE,EACV,qEAAqE,OAAO,GAAG,EAC/E,OAAO,CACR,CAAC;QACF,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,QAAQ,CAAC,WAAW,CAAC;IAChD,MAAM,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC;IAC/C,MAAM,oBAAoB,GAA4B,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAChF,KAAK,MAAM,GAAG,IAAI,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;QACpG,6FAA6F;QAC7F,8FAA8F;QAC9F,IAAI,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC/C,IAAI,sBAAsB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,GAAG,CAAC,KAAK,SAAS;YAAE,SAAS;QACvF,MAAM,CAAC,oBAAoB,EAAE,GAAG,EAAE,KAAK,CACrC,kBAAkB,CAAC,GAAG,CAAC,EACvB,kBAAkB,CAAC,GAAG,CAAC,EACvB,gBAAgB,cAAc,CAAC,GAAG,CAAC,EAAE,CACtC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IACzB,IAAI,QAAQ,CAAC,IAAI,KAAK,EAAE,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;QAChD,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACpB,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;SAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;QAC1C,gBAAgB,CACd,QAAQ,EACR,+CAA+C,EAC/C,OAAO,CAAC,EAAE,EACV,mGAAmG,EACnG,OAAO,CACR,CAAC;IACJ,CAAC;IAED,OAAO;QACL,SAAS,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,WAAW,EAAE,oBAAkD,EAAE,IAAI,EAAE;QACpG,UAAU,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE;KAC5C,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,MAAc,EACd,EAAa;IAEb,IAAI,CAAC;QACH,OAAO,MAAM,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,qBAAqB,IAAK,KAA+B,EAAE,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC/G,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CACvB,QAAkC,EAClC,IAAY,EACZ,EAAU,EACV,OAAe,EACf,KAAc;IAEd,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,0BAA0B,CACjC,OAAuB,EACvB,OAAuB,EACvB,QAAkC;IAElC,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACzD,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC5C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,gBAAgB,CACd,QAAQ,EACR,gCAAgC,EAChC,OAAO,CAAC,EAAE,EACV,6CAA6C,KAAK,UAAU,OAAO,CAAC,OAAO,uCAAuC,EAClH,KAAK,CACN,CAAC;QACJ,CAAC;IACH,CAAC;IAED,gGAAgG;IAChG,kGAAkG;IAClG,iGAAiG;IACjG,gEAAgE;IAChE,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1F,KAAK,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3E,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,IAAI,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,SAAS;YACzC,gBAAgB,CACd,QAAQ,EACR,gCAAgC,EAChC,OAAO,CAAC,EAAE,EACV,0DAA0D,KAAK,UAAU,OAAO,CAAC,OAAO,eAAe,KAAK,+CAA+C,EAC3J,KAAK,CACN,CAAC;YACF,SAAS;QACX,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACrE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,gBAAgB,CACd,QAAQ,EACR,gCAAgC,EAChC,OAAO,CAAC,EAAE,EACV,8CAA8C,KAAK,mBAAmB,OAAO,CAAC,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC/G,KAAK,CACN,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IACxD,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;QAC7C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,gBAAgB,CACd,QAAQ,EACR,gCAAgC,EAChC,OAAO,CAAC,EAAE,EACV,mDAAmD,OAAO,kBAAkB,OAAO,CAAC,OAAO,GAAG,EAC9F,OAAO,CACR,CAAC;QACJ,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,iGAAiG;IACjG,+FAA+F;IAC/F,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;IACzC,KAAK,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;QACrE,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,KAAK,MAAM;YAAE,SAAS;QACzF,gBAAgB,CACd,QAAQ,EACR,sCAAsC,EACtC,OAAO,CAAC,EAAE,EACV,2EAA2E,QAAQ,UAAU,OAAO,CAAC,OAAO,GAAG,EAC/G,SAAS,QAAQ,EAAE,CACpB,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,EAAE,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC,EAAE,CAAC;QAChF,gBAAgB,CACd,QAAQ,EACR,sCAAsC,EACtC,OAAO,CAAC,EAAE,EACV,8EAA8E,OAAO,CAAC,OAAO,GAAG,EAChG,iBAAiB,CAClB,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtE,gBAAgB,CACd,QAAQ,EACR,kCAAkC,EAClC,OAAO,CAAC,EAAE,EACV,qEAAqE,OAAO,CAAC,OAAO,2CAA2C,EAC/H,iBAAiB,CAClB,CAAC;IACJ,CAAC;AACH,CAAC;AAYD,SAAS,sBAAsB,CAAC,OAAuB,EAAE,OAAuB;IAC9E,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxC,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;QACvE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE,KAAK,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAChF,CAAC;IACD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1F,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC3C,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACrE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/E,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAC3B,CAAC;AAED,kFAAkF;AAClF,MAAM,2BAA2B,GAAG,EAAE,CAAC;AAEvC,0FAA0F;AAC1F,SAAS,cAAc,CAAC,OAAuB,EAAE,OAAuB;IACtE,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;IACzC,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;AACvG,CAAC;AAED;;;;;GAKG;AACH,SAAS,wBAAwB,CAC/B,IAA4B,EAC5B,UAA+B,EAC/B,eAA6B,EAC7B,QAAsB,EACtB,QAAkC;IAElC,MAAM,YAAY,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IACvD,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,eAAe,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,CAAC,GAAgB,EAAU,EAAE,CAAC,OAAO,GAAG,CAAC,WAAW,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACnH,MAAM,OAAO,GAAkB,EAAE,CAAC;IAClC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,KAAK,MAAM,IAAI,IAAI,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,SAAS;YACzC,OAAO,GAAG,IAAI,CAAC;YACf,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrC,IAAI,CAAC,MAAM;gBAAE,SAAS,CAAC,kDAAkD;YACzE,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YAChC,MAAM,QAAQ,GAAG,CAAC,QAAwC,EAA8B,EAAE;gBACxF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,IAAI,CAAC;gBACvC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,KAAK,UAAU,CAAC,CAAC;gBACnF,OAAO,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,QAAQ,CAAC,CAAC,CAAE,CAAC;YACxF,CAAC,CAAC;YACF,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7D,IAAI,CAAC,QAAQ;gBAAE,SAAS;YACxB,qFAAqF;YACrF,4DAA4D;YAC5D,IAAI,QAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAAE,SAAS;YACjE,gBAAgB,CACd,QAAQ,EACR,mCAAmC,EACnC,GAAG,CAAC,EAAE,EACN,wBAAwB,IAAI,CAAC,IAAI,6BAA6B,IAAI,CAAC,EAAE,2BAA2B,QAAQ,CAAC,OAAO,OAAO,QAAQ,CAAC,MAAM,WAAW,UAAU,IAAI,SAAS,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,SAAS,GAAG,EAC9M,SAAS,IAAI,CAAC,IAAI,EAAE,CACrB,CAAC;QACJ,CAAC;QACD,IAAI,OAAO;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,OAAO,UAAU,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;AACtD,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,MAAc,EAAE,YAA0B;IAC9E,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC;IAC/D,MAAM,MAAM,GAAG,2BAA2B,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,mBAAmB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAC3D,MAAM,QAAQ,GAA6B,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC3E,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnD,CAAC,CAAC,CAAC;IACJ,MAAM,WAAW,GAAgC,EAAE,CAAC;IACpD,MAAM,MAAM,GAAG,IAAI,GAAG,EAA0B,CAAC;IACjD,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,MAAM,YAAY,GAAG,IAAI,GAAG,EAA0B,CAAC;IAEvD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IACzC,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAkC,CAAC;IACpE,MAAM,kBAAkB,GAA6C,EAAE,CAAC;IACxE,MAAM,oBAAoB,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE;QACnG,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC;KACtD,CAAC,CAAC;IACH,KAAK,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;QACzC,gBAAgB,CACd,QAAQ,EACR,wCAAwC,EACxC,OAAO,CAAC,EAAE,EACV,2DAA2D,OAAO,CAAC,EAAE,oBAAoB,OAAO,CAAC,MAAM,EAAE,CAC1G,CAAC;IACJ,CAAC;IACD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAClF,MAAM,eAAe,GAAG,iBAAiB,CAAC,oBAAoB,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;IAEpF,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,sBAAsB,CAAC,QAAQ,EAAE,UAAU,EAAE,0BAA0B,CAAC,CAAC;QACxF,MAAM,aAAa,GAAG,kBAAkB,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC;YACtB,gBAAgB,CACd,QAAQ,EACR,qCAAqC,EACrC,MAAM,CAAC,EAAE,EACT,sBAAsB,MAAM,CAAC,EAAE,mBAAmB,aAAa,CAAC,MAAM,EAAE,CACzE,CAAC;YACF,SAAS;QACX,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,aAAa,CAAC,QAAQ,EAAE,CAAC;YAC7C,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACtF,CAAC;QACD,IAAI,aAAa,CAAC,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnD,gBAAgB,CACd,QAAQ,EACR,qBAAqB,EACrB,MAAM,CAAC,EAAE,EACT,sDAAsD,aAAa,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EACtG,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAC3C,CAAC;QACJ,CAAC;QACD,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,wBAAwB,CAAC;oBACvB,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;oBACjE,kBAAkB,EAAE,0BAA0B;oBAC9C,4BAA4B,EAAE,KAAK;iBACpC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,CAAC,KAAK,YAAY,iBAAiB,CAAC;oBAAE,MAAM,KAAK,CAAC;gBACvD,gBAAgB,CACd,QAAQ,EACR,uCAAuC,EACvC,MAAM,CAAC,EAAE,EACT,+DAA+D,KAAK,CAAC,OAAO,EAAE,CAC/E,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACvC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;YACjE,MAAM,cAAc,GAAG,cAAc,CAAC,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;YAC/E,WAAW,CAAC,IAAI,CAAC;gBACf,EAAE,EAAE,MAAM,CAAC,EAAE;gBACb,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,OAAO;gBACnC,MAAM,EAAE,SAAS;gBACjB,KAAK,EAAE,SAAS;gBAChB,gBAAgB,EAAE,IAAI;gBACtB,eAAe,EAAE,cAAc;gBAC/B,WAAW,EAAE,EAAE;aAChB,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC,CAAC;YAC3G,gBAAgB,CACd,QAAQ,EACR,qCAAqC,EACrC,MAAM,CAAC,EAAE,EACT,0GAA0G,CAC3G,CAAC;YACF,SAAS;QACX,CAAC;QAED,MAAM,aAAa,GAAG,kBAAkB,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QACvE,IACE,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,KAAK,YAAY;eAC3C,CAAC,aAAa,CAAC,EAAE;eACjB,aAAa,CAAC,IAAI,CAAC,OAAO,KAAK,aAAa,CAAC,IAAI,CAAC,OAAO,EAC5D,CAAC;YACD,gBAAgB,CACd,QAAQ,EACR,oCAAoC,EACpC,MAAM,CAAC,EAAE,EACT,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,KAAK,YAAY;gBAC5C,CAAC,CAAC,aAAa,MAAM,CAAC,EAAE,eAAe,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,qBAAqB;gBACjG,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE;oBACnB,CAAC,CAAC,aAAa,MAAM,CAAC,EAAE,gCAAgC,aAAa,CAAC,MAAM,EAAE;oBAC9E,CAAC,CAAC,aAAa,MAAM,CAAC,EAAE,cAAc,aAAa,CAAC,IAAI,CAAC,OAAO,WAAW,aAAa,CAAC,IAAI,CAAC,OAAO,GAAG,EAC1G,SAAS,CACV,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,2BAA2B,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC3E,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACjC,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,wBAAwB,CAAC;oBAC5C,QAAQ,EAAE,QAAQ,CAAC,GAAG;oBACtB,SAAS,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE;oBACvE,kBAAkB,EAAE,0BAA0B;oBAC9C,4BAA4B,EAAE,KAAK;iBACpC,CAAC,CAAC;gBACH,SAAS,GAAG,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,GAAG,YAAY,EAAE,CAAC;YACpD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,CAAC,KAAK,YAAY,iBAAiB,CAAC;oBAAE,MAAM,KAAK,CAAC;gBACvD,gBAAgB,CACd,QAAQ,EACR,uCAAuC,EACvC,MAAM,CAAC,EAAE,EACT,oEAAoE,KAAK,CAAC,OAAO,EAAE,CACpF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAC1C,MAAM,eAAe,GAAG,kBAAkB,CAAC,SAAS,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;YACxB,gBAAgB,CACd,QAAQ,EACR,qCAAqC,EACrC,MAAM,CAAC,EAAE,EACT,2BAA2B,MAAM,CAAC,EAAE,mBAAmB,eAAe,CAAC,MAAM,EAAE,CAChF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;YACrE,mFAAmF;YACnF,KAAK,MAAM,OAAO,IAAI,eAAe,CAAC,QAAQ,EAAE,CAAC;gBAC/C,IAAI,OAAO,CAAC,IAAI,KAAK,+BAA+B,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC;oBAAE,SAAS;gBACtJ,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YACtF,CAAC;QACH,CAAC;QAED,MAAM,cAAc,GAAG,cAAc,CAAC,mBAAmB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;QAClF,MAAM,SAAS,GAAG,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QACxE,gGAAgG;QAChG,6FAA6F;QAC7F,8FAA8F;QAC9F,iDAAiD;QACjD,MAAM,aAAa,GAAG,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC/D,MAAM,KAAK,GACT,SAAS;YACT,aAAa,KAAK,SAAS;YAC3B,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,UAAU;YACjD,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,gBAAgB,CAAC,MAAM,CAAC;YACzD,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,aAAa,CAAC;QACpB,WAAW,CAAC,IAAI,CAAC;YACf,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,OAAO;YACnC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ;YAC1C,KAAK;YACL,gBAAgB,EAAE,QAAQ,CAAC,OAAO;YAClC,eAAe,EAAE,cAAc;YAC/B,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU;SAChD,CAAC,CAAC;QACH,4FAA4F;QAC5F,yFAAyF;QACzF,IAAI,CAAC,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;aACvE,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,eAAe,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;QAClH,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,YAAY;YAClB,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,eAAe,EAAE,QAAQ,CAAC,OAAO;YACjC,eAAe,EAAE,cAAc;SAChC,CAAC,CAAC;QACH,IACE,CAAC,SAAS;eACP,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,KAAK,YAAY;eAC9C,aAAa,CAAC,EAAE;eAChB,eAAe,CAAC,EAAE;eAClB,aAAa,CAAC,IAAI,CAAC,OAAO,KAAK,eAAe,CAAC,IAAI,CAAC,OAAO,EAC9D,CAAC;YACD,0BAA0B,CAAC,aAAa,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC/E,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,sBAAsB,CAAC,aAAa,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;YACtH,KAAK,MAAM,QAAQ,IAAI,cAAc,CAAC,aAAa,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC;gBAAE,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChH,CAAC;IACH,CAAC;IAED,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;IACjG,KAAK,MAAM,OAAO,IAAI,mBAAmB,CAAC,QAAQ,EAAE,CAAC;QACnD,IAAI,OAAO,CAAC,IAAI,KAAK,wBAAwB,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,SAAS;QAC9G,gBAAgB,CACd,QAAQ,EACR,oCAAoC,EACpC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAE,CAAC,EAAE,EACnC,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,KAAK,CACd,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,YAAY,EAAE,CAAC;QAC3C,IAAI,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC;YAC3D,gBAAgB,CACd,QAAQ,EACR,oCAAoC,EACpC,IAAI,CAAC,EAAE,EACP,+BAA+B,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,MAAM,2BAA2B,OAAO,WAAW,IAAI,CAAC,EAAE,GAAG,EAC1I,OAAO,CACR,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAG,KAAK,EACzB,IAAmC,EACnC,QAAqB,EACN,EAAE;QACjB,MAAM,MAAM,GAAG,sBAAsB,CAAC,QAAQ,EAAE,UAAU,EAAE,0BAA0B,CAAC,CAAC;QACxF,MAAM,MAAM,GAAG,cAAc,CAAC,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;QACvE,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QACjE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,IAAI,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1G,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,gBAAgB,CACd,QAAQ,EACR,gCAAgC,EAChC,MAAM,CAAC,EAAE,EACT,iBAAiB,MAAM,CAAC,EAAE,yEAAyE,CACpG,CAAC;QACJ,CAAC;aAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC;YAC/D,gBAAgB,CACd,QAAQ,EACR,2CAA2C,EAC3C,MAAM,CAAC,EAAE,EACT,iDAAiD,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,QAAQ,CAC9G,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IAEF,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU;QAAE,MAAM,aAAa,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;IAC3F,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAChC,MAAM,aAAa,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACpD,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,IAAI,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,CAAC;QACzH,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,gBAAgB,CACd,QAAQ,EACR,gCAAgC,EAChC,IAAI,CAAC,KAAK,EACV,sBAAsB,IAAI,CAAC,KAAK,yEAAyE,CAC1G,CAAC;QACJ,CAAC;aAAM,IACL,QAAQ,CAAC,OAAO,KAAK,MAAM,IAAI,QAAQ,CAAC,WAAW,KAAK,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EACtF,CAAC;YACD,gBAAgB,CACd,QAAQ,EACR,2CAA2C,EAC3C,IAAI,CAAC,KAAK,EACV,yGAAyG,CAC1G,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAG,WAAW;SAC9B,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,KAAK,QAAQ,CAAC;SACtD,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;SACzD,MAAM,CAAC,CAAC,IAAI,EAA0B,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IAChE,IAAI,gBAAgB,GAAG,CAAC,CAAC;IACzB,MAAM,cAAc,GAAqB,EAAE,CAAC;IAC5C,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,gBAAgB,GAA6C,EAAE,CAAC;QACtE,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC9F,KAAK,MAAM,OAAO,IAAI,gBAAgB,EAAE,CAAC;YACvC,gBAAgB,CACd,QAAQ,EACR,sCAAsC,EACtC,OAAO,CAAC,EAAE,EACV,8CAA8C,OAAO,CAAC,EAAE,oBAAoB,OAAO,CAAC,MAAM,EAAE,CAC7F,CAAC;QACJ,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAClD,4FAA4F;YAC5F,mFAAmF;YACnF,MAAM,UAAU,GAAG,IAAI,GAAG,EAAwD,CAAC;YACnF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,IAAI,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO;oBAAE,SAAS;gBAC5D,gBAAgB,IAAI,CAAC,CAAC;gBACtB,cAAc,CAAC,IAAI,CAAC;oBAClB,IAAI,EAAE,UAAU;oBAChB,EAAE,EAAE,GAAG,CAAC,EAAE;oBACV,eAAe,EAAE,cAAc,CAAC,GAAG,CAAC;iBACrC,CAAC,CAAC;gBACH,MAAM,MAAM,GAAG,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBAC9C,MAAM,SAAS,GAAG,6BAA6B,CAAC,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC1E,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;oBACnD,wFAAwF;oBACxF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAE,CAAC,KAAK,IAAI,EAAE,CAAC;oBACzC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,KAAK,iBAAiB,IAAI,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;wBAC/E,CAAC,CAAC,gBAAgB,KAAK,EAAE;wBACzB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,kBAAkB,IAAI,OAAO,CAAC,IAAI,KAAK,kBAAkB,CAAC,IAAI,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;4BAC1G,CAAC,CAAC,iBAAiB,KAAK,EAAE;4BAC1B,CAAC,CAAC,SAAS,CAAC;oBACd,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;wBAC9B,gBAAgB,CACd,QAAQ,EACR,mCAAmC,EACnC,GAAG,CAAC,EAAE,EACN,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,KAAK,CACd,CAAC;wBACF,SAAS;oBACX,CAAC;oBACD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,GAAG,EAAkB,EAAE,CAAC;oBACxF,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;oBACrE,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;YACD,KAAK,MAAM,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC;gBACnE,MAAM,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACzC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,2BAA2B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnE,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,GAAG,2BAA2B,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,MAAM,GAAG,2BAA2B,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtH,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,CAAC,eAAe,CAAC;oBACtD,CAAC,CAAC,SAAS,KAAM,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG;oBACrC,CAAC,CAAC,mBAAmB,KAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;gBAC/D,gBAAgB,CACd,QAAQ,EACR,uCAAuC,EACvC,IAAI,CAAC,EAAE,EACP,UAAU,QAAQ,QAAQ,KAAK,UAAU,IAAI,CAAC,OAAO,gBAAgB,GAAG,CAAC,MAAM,kCAAkC,KAAK,GAAG,IAAI,0BAA0B,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,GAAG,EAC3L,WAAW,CACZ,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,cAAc,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;YAChE,KAAK,MAAM,GAAG,IAAI,wBAAwB,CAAC,IAAI,EAAE,cAAc,EAAE,eAAe,EAAE,mBAAmB,EAAE,QAAQ,CAAC,EAAE,CAAC;gBACjH,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBAAE,SAAS;gBACjC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACnB,gBAAgB,IAAI,CAAC,CAAC;gBACtB,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,eAAe,EAAE,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9F,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAExE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrD,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9E,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IAClH,4FAA4F;IAC5F,mFAAmF;IACnF,MAAM,KAAK,GAAG,kBAAkB,CAAC;QAC/B,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,EAAE;QAChH,UAAU;QACV,WAAW;QACX,MAAM;QACN,QAAQ;KACT,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC;IAC1F,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;IAC/F,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;IAC3F,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC;IAC3H,OAAO;QACL,IAAI,EAAE;YACJ,MAAM,EAAE,gBAAgB;YACxB,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,WAAW,EAAE,UAAU;YACvB,KAAK,EAAE,QAAQ,CAAC,MAAM,KAAK,CAAC;YAC5B,OAAO,EAAE,OAAO,GAAG,CAAC;YACpB,MAAM,EAAE,MAAM,CAAC,IAAI;YACnB,UAAU,EAAE,KAAK;YACjB,WAAW;YACX,MAAM,EAAE;gBACN,WAAW,EAAE,WAAW,CAAC,MAAM;gBAC/B,OAAO;gBACP,YAAY,EAAE,WAAW;gBACzB,SAAS;gBACT,OAAO;gBACP,iBAAiB,EAAE,gBAAgB;gBACnC,QAAQ,EAAE,QAAQ,CAAC,MAAM;aAC1B;YACD,QAAQ;SACT;QACD,MAAM;KACP,CAAC;AACJ,CAAC;AAED,0FAA0F;AAC1F,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAAc,EACd,MAAoB;IAEpB,OAAO,CAAC,MAAM,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7D,CAAC;AAED,sEAAsE;AACtE,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAc,EACd,MAAoB,EACpB,iBAAyB,EACzB,UAA8B,EAAE;IAEhC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAC1B,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9D,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;IAC1B,IAAI,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAE,CAAC;QAC1C,MAAM,IAAI,0BAA0B,CAAC,iBAAiB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAChB,MAAM,IAAI,sBAAsB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,SAAS,GAAyC,EAAE,CAAC;IAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC/H,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACnD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,gBAAiB,EAAE,CAAC,CAAC;YAC7G,SAAS;QACX,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,sBAAsB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACvE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;gBAClC,MAAM;gBACN,EAAE,EAAE,UAAU,CAAC,EAAE;gBACjB,IAAI,EAAE,kBAAkB;gBACxB,QAAQ,EAAE,MAAM;gBAChB,eAAe,EAAE,UAAU,CAAC,gBAAiB;gBAC7C,WAAW,EAAE,CAAC;gBACd,QAAQ,EAAE,+BAA+B;gBACzC,MAAM,EAAE,KAAK;gBACb,2FAA2F;gBAC3F,oFAAoF;gBACpF,mBAAmB,EAAE,KAAK;gBAC1B,2FAA2F;gBAC3F,YAAY,EAAE,KAAK;gBACnB,KAAK;gBACL,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG;gBACd,cAAc,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;oBACrC,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;wBAC5C,MAAM,IAAI,oBAAoB,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;oBACpF,CAAC;oBACD,OAAO,EAAE,WAAW,EAAE,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;gBACzE,CAAC;aACF,CAAC,CAAC;YACH,SAAS,CAAC,IAAI,CAAC;gBACb,EAAE,EAAE,UAAU,CAAC,EAAE;gBACjB,OAAO,EAAE,UAAU,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO;gBACzD,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,MAAM,CAAC,OAAO;aACxB,CAAC,CAAC;YACH,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,oBAAoB,EAAE,CAAC;gBAC1C,MAAM,IAAI,0BAA0B,CAAC,iBAAiB,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACpG,CAAC;YACD,IAAI,KAAK,YAAY,eAAe,IAAI,KAAK,YAAY,qBAAqB,EAAE,CAAC;gBAC/E,MAAM,IAAI,0BAA0B,CAClC,MAAM,EACN,oDAAoD,UAAU,CAAC,EAAE,oCAAoC,EACrG,SAAS,EACT,OAAO,EACP,KAAK,CACN,CAAC;YACJ,CAAC;YACD,wFAAwF;YACxF,4FAA4F;YAC5F,IAAI,KAAK,YAAY,iBAAiB,IAAI,CAAC,CAAC,KAAK,YAAY,aAAa,CAAC,EAAE,CAAC;gBAC5E,MAAM,IAAI,0BAA0B,CAClC,cAAc,EACd,2CAA2C,UAAU,CAAC,EAAE,sBAAsB,KAAK,CAAC,OAAO,EAAE,EAC7F,SAAS,EACT,OAAO,EACP,KAAK,CACN,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,0BAA0B,CAClC,OAAO,EACP,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACtD,SAAS,EACT,OAAO,EACP,KAAK,CACN,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IAC5E,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IACnG,MAAM,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IAClC,IAAI,aAAsC,CAAC;IAC3C,IAAI,CAAC;QACH,aAAa,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,4BAA4B,CACpC,cAAc,EACd,0BAA0B,OAAO,gEAAgE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACzJ,SAAS,EACT,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7F,MAAM,IAAI,4BAA4B,CACpC,SAAS,EACT,0BAA0B,OAAO,uJAAuJ,EACxL,SAAS,EACT,EAAE,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,kBAAkB,EAAE,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,CAC7F,CAAC;IACJ,CAAC;IACD,OAAO;QACL,MAAM,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB;QAC7E,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,OAAO,EAAE,OAAO,GAAG,CAAC;QACpB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,WAAW,EAAE,SAAS;QACtB,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,MAAM,GAAG,OAAO,EAAE;KACpE,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"evolution.js","sourceRoot":"","sources":["../../src/recipe-lifecycle/evolution.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +1,23 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `@superbee/core/recipe-lifecycle`: install and evolve a parsed recipe on any bundle.
|
|
3
3
|
*
|
|
4
|
-
* `installRecipe` creates a recipe's conventions, View pairs and References
|
|
5
|
-
* overwriting what a bundle already holds
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
4
|
+
* `installRecipe` creates a recipe's conventions, Connectors, View pairs and References
|
|
5
|
+
* create-only, never overwriting what a bundle already holds, after checking every Connector
|
|
6
|
+
* against the Kinds the bundle will hold. `planRecipeEvolution` is a read-only, state-bound
|
|
7
|
+
* preflight of an additive upgrade to installed conventions and of the replacement of Connectors
|
|
8
|
+
* this recipe wrote and nobody changed since, and `applyRecipeEvolution` applies exactly the plan
|
|
9
|
+
* whose token the caller observed, one exact-version CAS write per changed definition. The caller acquires the recipe (`@superbee/core/recipes` parses files into a
|
|
9
10
|
* `LoadedRecipe`) and presents results and typed errors. Storage-neutral: it runs in Node,
|
|
10
11
|
* Workers and browsers over any `StorageBackend`.
|
|
11
12
|
*
|
|
12
|
-
* Every convention either path writes carries an `x_recipe` stamp in the same write;
|
|
13
|
+
* Every convention and Connector either path writes carries an `x_recipe` stamp in the same write;
|
|
13
14
|
* `installedRecipes` derives each recipe's install state from those stamps alone.
|
|
14
15
|
*/
|
|
15
|
-
export { installRecipe, installedConventionDocs, isRecipeApplied, materializeRecipeForEdition, recipeDrifts, } from "./install.js";
|
|
16
|
-
export type { RecipeDocResult, RecipeInstallCounts, RecipeInstallResult, RecipePageResult, RecipeReferenceResult, } from "./install.js";
|
|
16
|
+
export { installRecipe, installedConnectorDocs, installedConventionDocs, isRecipeApplied, materializeRecipeForEdition, recipeDrifts, } from "./install.js";
|
|
17
|
+
export type { RecipeConnectorResult, RecipeDocResult, RecipeInstallCounts, RecipeInstallResult, RecipePageResult, RecipeReferenceResult, } from "./install.js";
|
|
17
18
|
export { applyRecipeEvolution, planRecipeEvolution } from "./evolution.js";
|
|
18
19
|
export type { RecipeEvolutionApplyResult, RecipeEvolutionBlocker, RecipeEvolutionDefinition, RecipeEvolutionPlan, } from "./evolution.js";
|
|
19
|
-
export { RecipeAssetConflict, RecipeEditionChanged, RecipeEvolutionBlocked, RecipeEvolutionInterrupted, RecipeEvolutionPlanChanged, RecipeEvolutionPostcondition, RecipeInputError, RecipeLifecycleError, } from "./errors.js";
|
|
20
|
+
export { ConnectorTargetUnsatisfied, RecipeAssetConflict, RecipeEditionChanged, RecipeEvolutionBlocked, RecipeEvolutionInterrupted, RecipeEvolutionPlanChanged, RecipeEvolutionPostcondition, RecipeInputError, RecipeLifecycleError, } from "./errors.js";
|
|
20
21
|
export type { RecipeEvolutionCompletedDefinition, RecipeEvolutionInterruptionReason } from "./errors.js";
|
|
21
22
|
export { DEFINITION_DIGEST_RULES, RECIPE_STAMP_KEY, definitionDigest, installedRecipes, readRecipeStamp, recipeSourceDigest, } from "./stamp.js";
|
|
22
23
|
export type { ConventionStampState, InstalledRecipeRow, RecipeInstallState, RecipeStamp, RecipeStampState, } from "./stamp.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/recipe-lifecycle/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/recipe-lifecycle/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,eAAe,EACf,2BAA2B,EAC3B,YAAY,GACb,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,qBAAqB,EACrB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC3E,YAAY,EACV,0BAA0B,EAC1B,sBAAsB,EACtB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,kCAAkC,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;AACzG,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,gBAAgB,GACjB,MAAM,YAAY,CAAC"}
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `@superbee/core/recipe-lifecycle`: install and evolve a parsed recipe on any bundle.
|
|
3
3
|
*
|
|
4
|
-
* `installRecipe` creates a recipe's conventions, View pairs and References
|
|
5
|
-
* overwriting what a bundle already holds
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
4
|
+
* `installRecipe` creates a recipe's conventions, Connectors, View pairs and References
|
|
5
|
+
* create-only, never overwriting what a bundle already holds, after checking every Connector
|
|
6
|
+
* against the Kinds the bundle will hold. `planRecipeEvolution` is a read-only, state-bound
|
|
7
|
+
* preflight of an additive upgrade to installed conventions and of the replacement of Connectors
|
|
8
|
+
* this recipe wrote and nobody changed since, and `applyRecipeEvolution` applies exactly the plan
|
|
9
|
+
* whose token the caller observed, one exact-version CAS write per changed definition. The caller acquires the recipe (`@superbee/core/recipes` parses files into a
|
|
9
10
|
* `LoadedRecipe`) and presents results and typed errors. Storage-neutral: it runs in Node,
|
|
10
11
|
* Workers and browsers over any `StorageBackend`.
|
|
11
12
|
*
|
|
12
|
-
* Every convention either path writes carries an `x_recipe` stamp in the same write;
|
|
13
|
+
* Every convention and Connector either path writes carries an `x_recipe` stamp in the same write;
|
|
13
14
|
* `installedRecipes` derives each recipe's install state from those stamps alone.
|
|
14
15
|
*/
|
|
15
|
-
export { installRecipe, installedConventionDocs, isRecipeApplied, materializeRecipeForEdition, recipeDrifts, } from "./install.js";
|
|
16
|
+
export { installRecipe, installedConnectorDocs, installedConventionDocs, isRecipeApplied, materializeRecipeForEdition, recipeDrifts, } from "./install.js";
|
|
16
17
|
export { applyRecipeEvolution, planRecipeEvolution } from "./evolution.js";
|
|
17
|
-
export { RecipeAssetConflict, RecipeEditionChanged, RecipeEvolutionBlocked, RecipeEvolutionInterrupted, RecipeEvolutionPlanChanged, RecipeEvolutionPostcondition, RecipeInputError, RecipeLifecycleError, } from "./errors.js";
|
|
18
|
+
export { ConnectorTargetUnsatisfied, RecipeAssetConflict, RecipeEditionChanged, RecipeEvolutionBlocked, RecipeEvolutionInterrupted, RecipeEvolutionPlanChanged, RecipeEvolutionPostcondition, RecipeInputError, RecipeLifecycleError, } from "./errors.js";
|
|
18
19
|
export { DEFINITION_DIGEST_RULES, RECIPE_STAMP_KEY, definitionDigest, installedRecipes, readRecipeStamp, recipeSourceDigest, } from "./stamp.js";
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/recipe-lifecycle/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/recipe-lifecycle/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,uBAAuB,EACvB,eAAe,EACf,2BAA2B,EAC3B,YAAY,GACb,MAAM,cAAc,CAAC;AAStB,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAO3E,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,4BAA4B,EAC5B,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,GACnB,MAAM,YAAY,CAAC"}
|
|
@@ -38,12 +38,19 @@ export interface RecipeReferenceResult {
|
|
|
38
38
|
id: ConceptId;
|
|
39
39
|
changed: boolean;
|
|
40
40
|
}
|
|
41
|
-
/**
|
|
41
|
+
/** One Connector's install outcome: created, or left as it was (`source_differs` when it differs). */
|
|
42
|
+
export interface RecipeConnectorResult {
|
|
43
|
+
id: ConceptId;
|
|
44
|
+
changed: boolean;
|
|
45
|
+
/** The existing document was preserved, but it differs from this recipe's Connector. */
|
|
46
|
+
source_differs?: true;
|
|
47
|
+
}
|
|
48
|
+
/** Per-artifact tally (docs + connectors + pages + references; a page's registry/entry pair is ONE artifact). */
|
|
42
49
|
export interface RecipeInstallCounts {
|
|
43
50
|
created: number;
|
|
44
51
|
existing: number;
|
|
45
52
|
legacy_present: number;
|
|
46
|
-
/** Existing convention docs whose definitions do not match the recipe source. */
|
|
53
|
+
/** Existing convention or Connector docs whose definitions do not match the recipe source. */
|
|
47
54
|
source_differs?: number;
|
|
48
55
|
/** Artifacts whose slot is held by RETIRED-name content (see `migration_required` fields). */
|
|
49
56
|
migration_required: number;
|
|
@@ -58,19 +65,22 @@ export interface RecipeInstallResult {
|
|
|
58
65
|
version: string;
|
|
59
66
|
source: string;
|
|
60
67
|
docs: RecipeDocResult[];
|
|
68
|
+
/** One row per Connector the recipe carries; empty for a recipe without connectors. */
|
|
69
|
+
connectors: RecipeConnectorResult[];
|
|
61
70
|
pages: RecipePageResult[];
|
|
62
71
|
references: RecipeReferenceResult[];
|
|
63
72
|
counts: RecipeInstallCounts;
|
|
64
73
|
changed: boolean;
|
|
65
74
|
/**
|
|
66
|
-
* The worst stamp among the recipe's conventions after the install, in the order
|
|
67
|
-
* stale, foreign, missing: a created
|
|
68
|
-
* since install never rewrites it. A `stale` or `missing` stamp is converged by
|
|
75
|
+
* The worst stamp among the recipe's conventions and Connectors after the install, in the order
|
|
76
|
+
* current, stale, foreign, missing: a created document is `current`; an existing one keeps its
|
|
77
|
+
* stamp, since install never rewrites it. A `stale` or `missing` stamp is converged by
|
|
78
|
+
* `recipe evolve`.
|
|
69
79
|
*/
|
|
70
80
|
stamp: RecipeStampState;
|
|
71
|
-
/** Existing conventions whose stamp is `stale` or `missing`: what an evolve plan would
|
|
81
|
+
/** Existing conventions and Connectors whose stamp is `stale` or `missing`: what an evolve plan would look at. */
|
|
72
82
|
restamp_ids: string[];
|
|
73
|
-
/** Existing conventions another recipe's stamp owns; they stay with that recipe. */
|
|
83
|
+
/** Existing conventions and Connectors another recipe's stamp owns; they stay with that recipe. */
|
|
74
84
|
foreign_ids: string[];
|
|
75
85
|
warnings: ValidationWarning[];
|
|
76
86
|
}
|
|
@@ -97,6 +107,11 @@ export declare function sameInstalledDoc(existing: OkfDocument, desired: OkfDocu
|
|
|
97
107
|
* a full read; returning the docs instead of discarding their content costs zero added I/O.
|
|
98
108
|
*/
|
|
99
109
|
export declare function installedConventionDocs(bundle: Bundle): Promise<Map<ConceptId, OkfDocument>>;
|
|
110
|
+
/**
|
|
111
|
+
* The documents under `connectors/`, by id: the Connector documents `installedRecipes` reads beside
|
|
112
|
+
* the conventions, in one round-trip.
|
|
113
|
+
*/
|
|
114
|
+
export declare function installedConnectorDocs(bundle: Bundle): Promise<Map<ConceptId, OkfDocument>>;
|
|
100
115
|
/**
|
|
101
116
|
* True when at least one of `recipe`'s installed docs differs in content from the recipe source
|
|
102
117
|
* (the same `sameInstalledDoc` comparison `installRecipe` makes; timestamp-insensitive). Honest at
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/recipe-lifecycle/install.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/recipe-lifecycle/install.ts"],"names":[],"mappings":"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"}
|