@prisma/orm-framework 8.0.0-rc.15-dev.2 → 8.0.0-rc.16

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.
Files changed (77) hide show
  1. package/dist/{authoring-CcT010vl.d.mts → authoring-DZ6xCFkL.d.mts} +2 -2
  2. package/dist/{authoring-CcT010vl.d.mts.map → authoring-DZ6xCFkL.d.mts.map} +1 -1
  3. package/dist/authoring-DcJL9g8s.mjs +352 -0
  4. package/dist/authoring-DcJL9g8s.mjs.map +1 -0
  5. package/dist/{binder-Dz5zT7tr-Dc_RkyB2.d.mts → binder-CfxKD8hm-CtG0Bs3W.d.mts} +30 -13
  6. package/dist/binder-CfxKD8hm-CtG0Bs3W.d.mts.map +1 -0
  7. package/dist/codec-U-xbQys_.mjs.map +1 -1
  8. package/dist/{components-CK8GHz8l.d.mts → components-DFGmVWZ7.d.mts} +2 -2
  9. package/dist/{components-CK8GHz8l.d.mts.map → components-DFGmVWZ7.d.mts.map} +1 -1
  10. package/dist/components.d.mts +8 -8
  11. package/dist/components.mjs +7 -6
  12. package/dist/components__authoring.d.mts +3 -3
  13. package/dist/components__authoring.mjs +3 -3
  14. package/dist/components__codec.mjs +2 -1
  15. package/dist/components__components.d.mts +2 -2
  16. package/dist/components__control.d.mts +3 -3
  17. package/dist/components__control.mjs +2 -2
  18. package/dist/components__execution.d.mts +1 -1
  19. package/dist/{config-types-D-P60plU.d.mts → config-types-CHO5rbVo.d.mts} +10 -8
  20. package/dist/config-types-CHO5rbVo.d.mts.map +1 -0
  21. package/dist/config.d.mts +1 -1
  22. package/dist/config__config-types.d.mts +1 -1
  23. package/dist/contract-authoring.d.mts +1 -1
  24. package/dist/contract-authoring.mjs +1 -1
  25. package/dist/{control-BIv_-3QB.mjs → control-DZJQzwlC.mjs} +8 -4
  26. package/dist/control-DZJQzwlC.mjs.map +1 -0
  27. package/dist/{control-C1x8zzHb.d.mts → control-_4dB7KvO.d.mts} +7 -7
  28. package/dist/{control-C1x8zzHb.d.mts.map → control-_4dB7KvO.d.mts.map} +1 -1
  29. package/dist/{resolve-codec-vOfdHcIJ-IeNjz3Tm.mjs → data-type-4xQlxYB5-DD158cOq.mjs} +3 -70
  30. package/dist/data-type-4xQlxYB5-DD158cOq.mjs.map +1 -0
  31. package/dist/{declarations-DDT0hm5r-BZoOKiu1.mjs → declarations-5xLxC310-R3-Z4vcK.mjs} +6 -6
  32. package/dist/{declarations-DDT0hm5r-BZoOKiu1.mjs.map → declarations-5xLxC310-R3-Z4vcK.mjs.map} +1 -1
  33. package/dist/errors.d.mts +1 -1
  34. package/dist/errors__execution.d.mts +1 -1
  35. package/dist/{execution-gjfB1CvH.d.mts → execution-CYxp6gvp.d.mts} +2 -2
  36. package/dist/{execution-gjfB1CvH.d.mts.map → execution-CYxp6gvp.d.mts.map} +1 -1
  37. package/dist/{execution-o-z5gzZh.d.mts → execution-Utsq8aY6.d.mts} +2 -2
  38. package/dist/{execution-o-z5gzZh.d.mts.map → execution-Utsq8aY6.d.mts.map} +1 -1
  39. package/dist/{framework-components-DDr6lZoZ-EpXYrZj7.d.mts → framework-components-BY_7sg-B-ChOD-ovL.d.mts} +3 -3
  40. package/dist/{framework-components-DDr6lZoZ-EpXYrZj7.d.mts.map → framework-components-BY_7sg-B-ChOD-ovL.d.mts.map} +1 -1
  41. package/dist/{mutation-default-types-D_M8NC3U-BQNexfRU.d.mts → mutation-default-types-CMx8Y9zx-yQN8l2GU.d.mts} +4 -10
  42. package/dist/mutation-default-types-CMx8Y9zx-yQN8l2GU.d.mts.map +1 -0
  43. package/dist/{parse-ymgXJUnk-CwVCe8ZD.mjs → parse-Cjjj1-m4-Coaz3UzQ.mjs} +3 -3
  44. package/dist/{parse-ymgXJUnk-CwVCe8ZD.mjs.map → parse-Cjjj1-m4-Coaz3UzQ.mjs.map} +1 -1
  45. package/dist/{parse-eSQ_clQv-YWR_NQoq.d.mts → parse-GXhoypXR-CeQ_TuEg.d.mts} +7 -7
  46. package/dist/{parse-eSQ_clQv-YWR_NQoq.d.mts.map → parse-GXhoypXR-CeQ_TuEg.d.mts.map} +1 -1
  47. package/dist/psl-parser.d.mts +36 -7
  48. package/dist/psl-parser.d.mts.map +1 -1
  49. package/dist/psl-parser.mjs +161 -18
  50. package/dist/psl-parser.mjs.map +1 -1
  51. package/dist/psl-parser__format.d.mts +1 -1
  52. package/dist/psl-parser__format.mjs +2 -2
  53. package/dist/psl-parser__format.mjs.map +1 -1
  54. package/dist/psl-parser__interpret.d.mts +4 -4
  55. package/dist/psl-parser__interpret.mjs +1 -1
  56. package/dist/psl-parser__syntax.d.mts +1 -1
  57. package/dist/psl-parser__syntax.mjs +2 -2
  58. package/dist/psl-parser__syntax.mjs.map +1 -1
  59. package/dist/psl-printer.d.mts +1 -1
  60. package/dist/psl-printer.mjs +1 -1
  61. package/dist/resolve-codec-qqMjZrmn-Cok8elAo.mjs +74 -0
  62. package/dist/resolve-codec-qqMjZrmn-Cok8elAo.mjs.map +1 -0
  63. package/dist/{temporal-presets-DIo9uYtS-Odk6WBk8.mjs → temporal-presets-DUCEijgt-CODhqGVy.mjs} +20 -11
  64. package/dist/{temporal-presets-DIo9uYtS-Odk6WBk8.mjs.map → temporal-presets-DUCEijgt-CODhqGVy.mjs.map} +1 -1
  65. package/dist/utils.d.mts +1 -1
  66. package/dist/written-value-BB9UYfrg-OiFCVcz2.d.mts +278 -0
  67. package/dist/written-value-BB9UYfrg-OiFCVcz2.d.mts.map +1 -0
  68. package/package.json +15 -15
  69. package/dist/authoring-iMWszF7p.mjs +0 -157
  70. package/dist/authoring-iMWszF7p.mjs.map +0 -1
  71. package/dist/binder-Dz5zT7tr-Dc_RkyB2.d.mts.map +0 -1
  72. package/dist/config-types-D-P60plU.d.mts.map +0 -1
  73. package/dist/control-BIv_-3QB.mjs.map +0 -1
  74. package/dist/mutation-default-types-D_M8NC3U-BQNexfRU.d.mts.map +0 -1
  75. package/dist/resolve-codec-vOfdHcIJ-IeNjz3Tm.mjs.map +0 -1
  76. package/dist/temporal-presets-CLsu00ZK-CAx-cLAM.d.mts +0 -160
  77. package/dist/temporal-presets-CLsu00ZK-CAx-cLAM.d.mts.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"control-DZJQzwlC.mjs","names":[],"sources":["../../../../1-framework/1-core/framework-components/dist/control.mjs"],"sourcesContent":["import { n as runtimeError } from \"./runtime-error-BA9d7XjZ.mjs\";\nimport { n as assembleDataTypes, o as objectSchemaKeys } from \"./data-type-4xQlxYB5.mjs\";\nimport { n as codecDescriptorMissing, r as codecForRef } from \"./resolve-codec-qqMjZrmn.mjs\";\nimport { n as aggregateDescriptorKey, r as isAggregateDescriptor, t as mergeCapabilityMatrices } from \"./capabilities-CnCdDH1J.mjs\";\nimport { E as isAuthoringArgRef, L as tagEntryKey, M as isTagEntryKey, N as mergeAuthoringAttributeSpecs, O as isAuthoringFieldPresetDescriptor, P as mergeAuthoringNamespaces, _ as authoringEntryType, b as collectScalarTypeConstructors, c as TAGGED_LITERAL_MAX_BYTES, g as assertResolvableTypeConstructorTemplates, h as assertNoCrossRegistryCollisions, j as isAuthoringTypeConstructorDescriptor, l as canonicalizeTaggedLiteralBody, m as resolveTemplateTagEscapes, p as resolvePslBacktickEscapes, s as timestampNowControlDescriptor, u as describeTaggedLiteralFailure, y as collectContributedDescriptorPaths } from \"./temporal-presets-DUCEijgt.mjs\";\nimport { blindCast } from \"@internal/utils/casts\";\nimport { ifDefined } from \"@internal/utils/defined\";\nimport { InternalError, isInternalError } from \"@internal/utils/internal-error\";\n//#region src/control/contract-snapshot-layout.ts\nconst CONTRACT_SNAPSHOTS_DIRNAME = \"snapshots\";\nconst STORAGE_HASH_PATTERN = /^[0-9a-f]{64}$/;\n/** Validate a storage hash for use as a directory name. */\nfunction storageHashHex(storageHash) {\n\tif (!STORAGE_HASH_PATTERN.test(storageHash)) throw new InternalError(`Invalid storage hash \"${storageHash}\": expected 64 lowercase hex characters`);\n\treturn storageHash;\n}\n/** Module specifier for the store's `contract.json`, POSIX separators. */\nfunction contractSnapshotJsonSpecifier(snapshotsImportPath, storageHash) {\n\treturn `${snapshotsImportPath}/${storageHashHex(storageHash)}/contract.json`;\n}\n/** Type-only module specifier for the store's `contract.d.ts` (no extension). */\nfunction contractSnapshotTypesSpecifier(snapshotsImportPath, storageHash) {\n\treturn `${snapshotsImportPath}/${storageHashHex(storageHash)}/contract`;\n}\n//#endregion\n//#region src/control/control-capabilities.ts\nfunction hasMigrations(target) {\n\treturn \"migrations\" in target && !!target[\"migrations\"];\n}\nfunction hasSchemaView(instance) {\n\treturn \"toSchemaView\" in instance && typeof instance[\"toSchemaView\"] === \"function\";\n}\nfunction hasPslContractInfer(instance) {\n\treturn \"inferPslContract\" in instance && typeof instance[\"inferPslContract\"] === \"function\";\n}\nfunction hasPslContractBuild(instance) {\n\treturn \"buildPslContract\" in instance && typeof Reflect.get(instance, \"buildPslContract\") === \"function\";\n}\nfunction hasOperationPreview(instance) {\n\treturn \"toOperationPreview\" in instance && typeof instance[\"toOperationPreview\"] === \"function\";\n}\nfunction hasSchemaSubjectClassifier(instance) {\n\treturn \"classifySubjectGranularity\" in instance && typeof instance[\"classifySubjectGranularity\"] === \"function\" && \"classifyEntityKind\" in instance && typeof instance[\"classifyEntityKind\"] === \"function\";\n}\n//#endregion\n//#region src/control/control-operation-results.ts\nconst VERIFY_CODE_MARKER_MISSING = \"CONTRACT.MARKER_MISSING\";\nconst VERIFY_CODE_HASH_MISMATCH = \"CONTRACT.MARKER_MISMATCH\";\nconst VERIFY_CODE_TARGET_MISMATCH = \"CONTRACT.TARGET_MISMATCH\";\nconst VERIFY_CODE_SCHEMA_FAILURE = \"CONTRACT.SCHEMA_VERIFICATION_FAILED\";\n/** Whether two markers hold the same hashes, `null` standing for no marker. */\nfunction sameMarkerHashes(a, b) {\n\tif (a === null || b === null) return a === b;\n\treturn a.storageHash === b.storageHash && a.profileHash === b.profileHash;\n}\n//#endregion\n//#region src/control/control-schema-view.ts\nvar SchemaTreeNode = class {\n\tkind;\n\tid;\n\tlabel;\n\tmeta;\n\tchildren;\n\tconstructor(options) {\n\t\tthis.kind = options.kind;\n\t\tthis.id = options.id;\n\t\tthis.label = options.label;\n\t\tif (options.meta !== void 0) this.meta = options.meta;\n\t\tif (options.children !== void 0) this.children = options.children;\n\t\tObject.freeze(this);\n\t}\n\taccept(visitor) {\n\t\treturn visitor.visit(this);\n\t}\n};\n//#endregion\n//#region src/control/control-spaces.ts\n/**\n* Canonical control-plane identifiers for contract spaces.\n*\n* A contract space is the disjoint `(contract.json, migration-graph)` unit\n* the per-space planner / runner / verifier (project: extension contract\n* spaces, TML-2397) operates on. The application owns one well-known\n* space — the value below — and each loaded extension that contributes\n* schema owns a uniquely-named space.\n*\n* Lives in `framework-components/control` so every layer that has to\n* reason about space identity (the migration tooling, the SQL runtime's\n* marker reader, target-side statement builders, target-side adapters)\n* can import a single value rather than duplicating the literal. Raw\n* `'app'` string literals in framework / target / runtime / adapter\n* source code are forbidden and policed by\n* `scripts/lint-app-space-id.mjs` (wired into `pnpm lint:deps`).\n*\n* @see specs/framework-mechanism.spec.md § 3 — Layout convention (γ).\n*/\nconst APP_SPACE_ID = \"app\";\n//#endregion\n//#region src/control/control-stack.ts\nfunction addUniqueId(ids, seen, id) {\n\tif (!seen.has(id)) {\n\t\tids.push(id);\n\t\tseen.add(id);\n\t}\n}\nfunction assertUniqueCodecOwner(options) {\n\tconst existingOwner = options.owners.get(options.codecId);\n\tif (existingOwner !== void 0) throw new InternalError(`Duplicate ${options.entityLabel} for codecId \"${options.codecId}\". Descriptor \"${options.descriptorId}\" conflicts with \"${existingOwner}\". Each codecId can only have one ${options.entityOwnershipLabel}.`);\n}\nfunction extractCodecTypeImports(descriptors) {\n\tconst imports = [];\n\tfor (const descriptor of descriptors) {\n\t\tconst codecTypes = descriptor.types?.codecTypes;\n\t\tif (codecTypes?.import) imports.push(codecTypes.import);\n\t\tif (codecTypes?.typeImports) imports.push(...codecTypes.typeImports);\n\t}\n\treturn imports;\n}\nfunction extractQueryOperationTypeImports(descriptors) {\n\tconst imports = [];\n\tfor (const descriptor of descriptors) {\n\t\tconst queryOperationTypes = descriptor.types?.queryOperationTypes;\n\t\tif (queryOperationTypes?.import) imports.push(queryOperationTypes.import);\n\t}\n\treturn imports;\n}\nfunction extractComponentIds(family, target, adapter, extensions) {\n\tconst ids = [];\n\tconst seen = /* @__PURE__ */ new Set();\n\taddUniqueId(ids, seen, family.id);\n\taddUniqueId(ids, seen, target.id);\n\tif (adapter) addUniqueId(ids, seen, adapter.id);\n\tfor (const ext of extensions) addUniqueId(ids, seen, ext.id);\n\treturn ids;\n}\nfunction assembleAuthoringContributions(descriptors) {\n\tconst field = {};\n\tconst type = {};\n\tconst entityTypes = {};\n\tconst pslBlockDescriptors = {};\n\tconst modelAttributes = {};\n\tconst attributeSpecs = {\n\t\tmodel: {},\n\t\tfield: {}\n\t};\n\tconst attributeSpecOwners = /* @__PURE__ */ new Map();\n\tconst pathOwners = /* @__PURE__ */ new Map();\n\tconst claimContributedPaths = (namespace, descriptorKind, label, descriptorId) => {\n\t\tfor (const path of collectContributedDescriptorPaths(namespace, descriptorKind)) {\n\t\t\tconst key = `${label}:${path}`;\n\t\t\tconst existingOwner = pathOwners.get(key);\n\t\t\tif (existingOwner !== void 0) throw new InternalError(`Duplicate authoring ${label} helper \"${path}\". Descriptor \"${descriptorId}\" conflicts with \"${existingOwner}\".`);\n\t\t\tpathOwners.set(key, descriptorId);\n\t\t}\n\t};\n\tlet valueObjectStorageDeclaration;\n\tfor (const descriptor of descriptors) {\n\t\tconst descriptorId = descriptor.id ?? \"<unknown>\";\n\t\tconst declaredValueObjectStorageType = descriptor.authoring?.valueObjectStorageType;\n\t\tif (declaredValueObjectStorageType !== void 0) {\n\t\t\tif (valueObjectStorageDeclaration !== void 0) throw new InternalError(`Duplicate authoring valueObjectStorageType declaration. Descriptor \"${descriptorId}\" conflicts with \"${valueObjectStorageDeclaration.ownerId}\". Exactly one composed component may declare the value-object storage type.`);\n\t\t\tvalueObjectStorageDeclaration = {\n\t\t\t\tname: declaredValueObjectStorageType,\n\t\t\t\townerId: descriptorId\n\t\t\t};\n\t\t}\n\t\tif (descriptor.authoring?.field) {\n\t\t\tclaimContributedPaths(descriptor.authoring.field, \"fieldPreset\", \"field\", descriptorId);\n\t\t\tmergeAuthoringNamespaces(field, descriptor.authoring.field, [], \"fieldPreset\", \"field\");\n\t\t}\n\t\tif (descriptor.authoring?.type) {\n\t\t\tclaimContributedPaths(descriptor.authoring.type, \"typeConstructor\", \"type\", descriptorId);\n\t\t\tassertResolvableTypeConstructorTemplates(descriptor.authoring.type, descriptorId);\n\t\t\tmergeAuthoringNamespaces(type, descriptor.authoring.type, [], \"typeConstructor\", \"type\");\n\t\t}\n\t\tif (descriptor.authoring?.entityTypes) {\n\t\t\tclaimContributedPaths(descriptor.authoring.entityTypes, \"entity\", \"entity\", descriptorId);\n\t\t\tmergeAuthoringNamespaces(entityTypes, descriptor.authoring.entityTypes, [], \"entity\", \"entity\");\n\t\t}\n\t\tif (descriptor.authoring?.pslBlockDescriptors) {\n\t\t\tclaimContributedPaths(descriptor.authoring.pslBlockDescriptors, \"pslBlock\", \"pslBlock\", descriptorId);\n\t\t\tmergeAuthoringNamespaces(pslBlockDescriptors, descriptor.authoring.pslBlockDescriptors, [], \"pslBlock\", \"pslBlock\");\n\t\t}\n\t\tif (descriptor.authoring?.modelAttributes) mergeAuthoringNamespaces(modelAttributes, descriptor.authoring.modelAttributes, [], \"modelAttribute\", \"modelAttribute\");\n\t\tif (descriptor.authoring?.attributeSpecs) mergeAuthoringAttributeSpecs(attributeSpecs, descriptor.authoring.attributeSpecs, descriptorId, attributeSpecOwners);\n\t}\n\tconst fieldNamespace = field;\n\tconst typeNamespace = type;\n\tconst entityTypeNamespace = entityTypes;\n\tconst pslBlockDescriptorNamespace = blindCast(pslBlockDescriptors);\n\tconst modelAttributeNamespace = blindCast(modelAttributes);\n\tassertNoCrossRegistryCollisions(typeNamespace, fieldNamespace, entityTypeNamespace, pslBlockDescriptorNamespace, modelAttributeNamespace);\n\tif (valueObjectStorageDeclaration !== void 0 && !collectScalarTypeConstructors(typeNamespace).has(valueObjectStorageDeclaration.name)) throw new InternalError(`Invalid authoring valueObjectStorageType \"${valueObjectStorageDeclaration.name}\" declared by descriptor \"${valueObjectStorageDeclaration.ownerId}\". The name must be a top-level bare-eligible type constructor in the assembled authoring namespace.`);\n\treturn {\n\t\tdataTypes: assembleAuthoringDataTypes(descriptors),\n\t\tfield: fieldNamespace,\n\t\ttype: typeNamespace,\n\t\tentityTypes: entityTypeNamespace,\n\t\tpslBlockDescriptors: pslBlockDescriptorNamespace,\n\t\tmodelAttributes: modelAttributeNamespace,\n\t\tattributeSpecs,\n\t\t...valueObjectStorageDeclaration !== void 0 ? { valueObjectStorageType: valueObjectStorageDeclaration.name } : {}\n\t};\n}\n/** Merge every component's PSL support for its data types, refusing two claims on one key. */\nfunction assembleAuthoringDataTypes(descriptors) {\n\tconst merged = {};\n\tconst owners = /* @__PURE__ */ new Map();\n\tfor (const descriptor of descriptors) {\n\t\tconst contributedBy = descriptor.id ?? \"<unknown>\";\n\t\tfor (const [key, entry] of Object.entries(descriptor.authoring?.dataTypes ?? {})) {\n\t\t\tconst existingOwner = owners.get(key);\n\t\t\tif (existingOwner !== void 0) throw runtimeError(\"CONTRACT.DATA_TYPE_ENTRY_DUPLICATE\", `Duplicate authoring entry for \"${key}\". Component \"${contributedBy}\" conflicts with \"${existingOwner}\".`, {\n\t\t\t\tkey,\n\t\t\t\tcontributedBy,\n\t\t\t\towner: existingOwner\n\t\t\t});\n\t\t\towners.set(key, contributedBy);\n\t\t\tmerged[key] = entry;\n\t\t}\n\t}\n\treturn merged;\n}\nfunction descriptorsIn(namespace, isLeaf, path = []) {\n\treturn Object.entries(namespace ?? {}).flatMap(([key, value]) => {\n\t\tconst currentPath = [...path, key];\n\t\tif (isLeaf(value)) return [{\n\t\t\tpath: currentPath.join(\".\"),\n\t\t\tdescriptor: value\n\t\t}];\n\t\tif (typeof value !== \"object\" || value === null || Array.isArray(value)) return [];\n\t\treturn descriptorsIn(value, isLeaf, currentPath);\n\t});\n}\n/** Every type constructor and field preset a component contributes. */\nfunction contributedConstructors(descriptor) {\n\treturn [...descriptorsIn(descriptor.authoring?.type, isAuthoringTypeConstructorDescriptor), ...descriptorsIn(descriptor.authoring?.field, isAuthoringFieldPresetDescriptor)].map((entry) => ({\n\t\t...entry,\n\t\tcontributedBy: descriptor.id\n\t}));\n}\nfunction argumentMappedKeys(descriptor) {\n\treturn Object.entries(descriptor.output.typeParams ?? {}).flatMap(([key, template]) => isAuthoringArgRef(template) ? [key] : []);\n}\nfunction enforceConstructorInvariants(input) {\n\tconst inferredBy = /* @__PURE__ */ new Map();\n\tfor (const contributed of input.constructors) {\n\t\tconst { path, descriptor, contributedBy } = contributed;\n\t\tconst kind = descriptor.kind === \"typeConstructor\" ? \"Type constructor\" : \"Field preset\";\n\t\tconst codecId = descriptor.output.codecId;\n\t\tconst codec = input.codecDescriptorFor(codecId);\n\t\tif (codec === void 0) throw new InternalError(`${kind} \"${path}\" contributed by \"${contributedBy}\" names codec \"${codecId}\", which no component registers.`);\n\t\tif (descriptor.kind !== \"typeConstructor\") continue;\n\t\tconst codecKeys = codec.paramsSchema === void 0 ? [] : objectSchemaKeys(codec.paramsSchema);\n\t\tif (codecKeys !== void 0) {\n\t\t\tconst declared = /* @__PURE__ */ new Set([...codecKeys, ...objectSchemaKeys(input.lookup.get(codec.dataType)?.params) ?? []]);\n\t\t\tfor (const key of argumentMappedKeys(descriptor)) if (!declared.has(key)) throw new InternalError(`Type constructor \"${path}\" contributed by \"${contributedBy}\" maps an argument onto the parameter \"${key}\", which neither data type \"${codec.dataType}\" nor codec \"${codecId}\" declares.`);\n\t\t}\n\t\tif (descriptor.inferred !== true) continue;\n\t\tconst existing = inferredBy.get(codec.dataType);\n\t\tif (existing !== void 0) throw new InternalError(`Type constructors \"${existing.path}\" contributed by \"${existing.contributedBy}\" and \"${path}\" contributed by \"${contributedBy}\" are both marked inferred for data type \"${codec.dataType}\"; a data type has at most one.`);\n\t\tinferredBy.set(codec.dataType, contributed);\n\t}\n}\n/**\n* The things assembly checks across packs, each naming the component and the id at fault:\n*\n* 1. every codec names a registered data type;\n* 2. every authoring entry, and every type a cast takes values of, names a registered data type;\n* 3. no two entries claim one tag or one plain form;\n* 4. every type a cast takes values of can be written, because a cast from a type nobody can write\n* is never exercised;\n* 5. every type constructor and field preset names a registered codec;\n* 6. a type constructor maps its arguments only onto parameters its data type or codec declares;\n* 7. at most one type constructor per data type is marked inferred.\n*/\nfunction enforceDataTypeInvariants(input) {\n\tconst unregistered = (contributedBy, id, what) => {\n\t\tthrow runtimeError(\"CONTRACT.DATA_TYPE_UNREGISTERED\", `${what} names data type \"${id}\", which no component registers. Contributed by \"${contributedBy}\".`, {\n\t\t\tdataType: id,\n\t\t\tcontributedBy\n\t\t});\n\t};\n\tfor (const codec of input.codecs) if (!input.lookup.has(codec.dataType)) unregistered(codec.contributedBy, codec.dataType, `Codec \"${codec.codecId}\"`);\n\tfor (const { key, entry, contributedBy } of input.authoringEntries) {\n\t\tconst written = entry.written;\n\t\tconst tagType = written.kind === \"tag\" && \"type\" in written ? written.type : void 0;\n\t\tif (isTagEntryKey(key) || tagType !== void 0) {\n\t\t\tif (written.kind !== \"tag\" || tagType === void 0 || key !== tagEntryKey(written.tag)) throw runtimeError(\"CONTRACT.DATA_TYPE_ENTRY_KEY_INVALID\", `Authoring entry \"${key}\" contributed by \"${contributedBy}\" must sit under its tag's key and name the data type its body is, or sit under that data type's id and name none.`, {\n\t\t\t\tkey,\n\t\t\t\tcontributedBy\n\t\t\t});\n\t\t\tif (!input.lookup.has(tagType)) unregistered(contributedBy, tagType, `Authoring entry \"${key}\"`);\n\t\t\tcontinue;\n\t\t}\n\t\tif (!input.lookup.has(key)) unregistered(contributedBy, key, \"Authoring entry\");\n\t\tif (entry.written.kind === \"plain\" && entry.written.syntax === \"number\") {\n\t\t\tfor (const classified of entry.written.types) if (!input.lookup.has(classified)) unregistered(contributedBy, classified, `The classifier of authoring entry \"${key}\"`);\n\t\t}\n\t}\n\tconst writable = new Set(input.authoringEntries.flatMap(({ key, entry }) => [authoringEntryType(key, entry), ...entry.written.kind === \"plain\" && entry.written.syntax === \"number\" ? entry.written.types : []]));\n\tfor (const { type, contributedBy } of input.declaredTypes) {\n\t\tconst sources = [...Object.keys(type.casts), ...type.listCast?.of ?? []];\n\t\tfor (const source of sources) {\n\t\t\tif (!input.lookup.has(source)) unregistered(contributedBy, source, `The casts of data type \"${type.id}\"`);\n\t\t\tif (!writable.has(source)) throw runtimeError(\"CONTRACT.DATA_TYPE_NOT_WRITABLE\", `Data type \"${type.id}\" casts from \"${source}\", which no contract source can write, so the cast is never exercised. Contributed by \"${contributedBy}\".`, {\n\t\t\t\tdataType: type.id,\n\t\t\t\tsource,\n\t\t\t\tcontributedBy\n\t\t\t});\n\t\t}\n\t}\n\tconst claimants = /* @__PURE__ */ new Map();\n\tfor (const { key, entry, contributedBy } of input.authoringEntries) {\n\t\tconst written = entry.written;\n\t\tconst claim = written.kind === \"tag\" ? `tag \"${written.tag}\"` : `plain ${written.syntax}`;\n\t\tconst existing = claimants.get(claim);\n\t\tif (existing !== void 0) throw runtimeError(\"CONTRACT.DATA_TYPE_WRITTEN_FORM_DUPLICATE\", `Two authoring entries claim the ${claim}: \"${key}\" from \"${contributedBy}\" conflicts with \"${existing.key}\" from \"${existing.contributedBy}\".`, {\n\t\t\tclaim,\n\t\t\tkey,\n\t\t\tcontributedBy,\n\t\t\towner: existing.key,\n\t\t\townerContributedBy: existing.contributedBy\n\t\t});\n\t\tclaimants.set(claim, {\n\t\t\tkey,\n\t\t\tcontributedBy\n\t\t});\n\t}\n\tenforceConstructorInvariants(input);\n}\nfunction assembleControlMutationDefaults(descriptors) {\n\tconst defaultFunctionRegistry = /* @__PURE__ */ new Map();\n\tconst functionOwners = /* @__PURE__ */ new Map();\n\tconst generatorMap = /* @__PURE__ */ new Map();\n\tconst generatorOwners = /* @__PURE__ */ new Map();\n\tfor (const descriptor of descriptors) {\n\t\tconst contributions = descriptor.controlMutationDefaults;\n\t\tif (!contributions) continue;\n\t\tconst descriptorId = descriptor.id ?? \"<unknown>\";\n\t\tfor (const generatorDescriptor of contributions.generatorDescriptors) {\n\t\t\tconst existingOwner = generatorOwners.get(generatorDescriptor.id);\n\t\t\tif (existingOwner !== void 0) throw new InternalError(`Duplicate mutation default generator id \"${generatorDescriptor.id}\". Descriptor \"${descriptorId}\" conflicts with \"${existingOwner}\".`);\n\t\t\tgeneratorMap.set(generatorDescriptor.id, generatorDescriptor);\n\t\t\tgeneratorOwners.set(generatorDescriptor.id, descriptorId);\n\t\t}\n\t\tfor (const [functionName, handler] of contributions.defaultFunctionRegistry) {\n\t\t\tconst existingOwner = functionOwners.get(functionName);\n\t\t\tif (existingOwner !== void 0) throw new InternalError(`Duplicate mutation default function \"${functionName}\". Descriptor \"${descriptorId}\" conflicts with \"${existingOwner}\".`);\n\t\t\tdefaultFunctionRegistry.set(functionName, handler);\n\t\t\tfunctionOwners.set(functionName, descriptorId);\n\t\t}\n\t}\n\treturn {\n\t\tdefaultFunctionRegistry,\n\t\tgeneratorDescriptors: Array.from(generatorMap.values())\n\t};\n}\n/**\n* Collect every contributed {@link AggregateDescriptor} across the composed components, rejecting malformed shapes and second claims on one `(operation, input)` overload.\n*\n* Both planes read the same contribution slot: emission derives result types from these descriptors, and family runtimes build their resolution registry from them. Rejections are user-facing — an extension author's bad contribution surfaces here first, during `contract emit` — so a malformed shape raises `CONTRACT.AGGREGATE_DESCRIPTOR_INVALID` and a second claim raises `CONTRACT.AGGREGATE_DESCRIPTOR_DUPLICATE`, each naming the contributing component.\n*/\nfunction collectAggregateDescriptors(descriptors) {\n\tconst collected = [];\n\tconst owners = /* @__PURE__ */ new Map();\n\tfor (const descriptor of descriptors) {\n\t\tconst descriptorId = descriptor.id ?? \"<unknown>\";\n\t\tfor (const contributed of descriptor.types?.aggregateDescriptors ?? []) {\n\t\t\tif (!isAggregateDescriptor(contributed)) throw runtimeError(\"CONTRACT.AGGREGATE_DESCRIPTOR_INVALID\", `Malformed aggregate descriptor contributed by \"${descriptorId}\". A descriptor declares a non-empty \\`operation\\`, an \\`input\\` match of kind \\`none\\`/\\`any\\`/\\`codec\\`/\\`trait\\`, an \\`output\\` of kind \\`self\\`/\\`codec\\`, and a boolean \\`nullable\\` — plus \\`emptyResultJson\\`, in the result codec's canonical JSON, where \\`nullable\\` is false; a \\`self\\` output needs an input to reuse.`, {\n\t\t\t\tcontributedBy: descriptorId,\n\t\t\t\tdescriptor: contributed\n\t\t\t});\n\t\t\tconst key = aggregateDescriptorKey(contributed);\n\t\t\tconst existingOwner = owners.get(key);\n\t\t\tif (existingOwner !== void 0) throw runtimeError(\"CONTRACT.AGGREGATE_DESCRIPTOR_DUPLICATE\", `Duplicate aggregate descriptor for \"${key}\". Descriptor \"${descriptorId}\" conflicts with \"${existingOwner}\". Each operation/input pair can only have one provider.`, {\n\t\t\t\tkey,\n\t\t\t\tcontributedBy: descriptorId,\n\t\t\t\towner: existingOwner\n\t\t\t});\n\t\t\towners.set(key, descriptorId);\n\t\t\tcollected.push(contributed);\n\t\t}\n\t}\n\treturn collected;\n}\n/**\n* Flatten the codec descriptors the composed components contribute.\n*\n* A component may know a codec and still withhold it — an adapter that cannot name a codec's emitted type contributes the rest without it — so the contributed set is not always the set some component's own registry holds. Consumers whose output must agree with what the runtime resolves read this list rather than any one component's registry.\n*/\nfunction collectCodecDescriptors(descriptors) {\n\treturn descriptors.flatMap((descriptor) => descriptor.types?.codecTypes?.codecDescriptors ?? []);\n}\nfunction extractCodecLookup(descriptors) {\n\tconst byId = /* @__PURE__ */ new Map();\n\tconst descriptorsById = /* @__PURE__ */ new Map();\n\tconst renderersById = /* @__PURE__ */ new Map();\n\tconst inputRenderersById = /* @__PURE__ */ new Map();\n\tconst valueLiteralRenderersById = /* @__PURE__ */ new Map();\n\tconst owners = /* @__PURE__ */ new Map();\n\tfor (const descriptor of descriptors) {\n\t\tconst codecTypes = descriptor.types?.codecTypes;\n\t\tconst descriptorId = descriptor.id;\n\t\tfor (const codecDescriptor of codecTypes?.codecDescriptors ?? []) {\n\t\t\tassertUniqueCodecOwner({\n\t\t\t\tcodecId: codecDescriptor.codecId,\n\t\t\t\towners,\n\t\t\t\tdescriptorId,\n\t\t\t\tentityLabel: \"codec descriptor\",\n\t\t\t\tentityOwnershipLabel: \"codec descriptor provider\"\n\t\t\t});\n\t\t\towners.set(codecDescriptor.codecId, descriptorId);\n\t\t\tdescriptorsById.set(codecDescriptor.codecId, codecDescriptor);\n\t\t\tif (typeof codecDescriptor.renderOutputType === \"function\") renderersById.set(codecDescriptor.codecId, codecDescriptor.renderOutputType);\n\t\t\tif (typeof codecDescriptor.renderInputType === \"function\") inputRenderersById.set(codecDescriptor.codecId, codecDescriptor.renderInputType);\n\t\t\tif (typeof codecDescriptor.renderValueLiteral === \"function\") valueLiteralRenderersById.set(codecDescriptor.codecId, codecDescriptor.renderValueLiteral);\n\t\t\tif (!byId.has(codecDescriptor.codecId)) if (codecDescriptor.isParameterized) try {\n\t\t\t\tconst representative = codecDescriptor.factory({})({ name: `<lookup:${codecDescriptor.codecId}>` });\n\t\t\t\tbyId.set(codecDescriptor.codecId, representative);\n\t\t\t} catch (error) {\n\t\t\t\tif (isInternalError(error)) throw error;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst representative = codecDescriptor.factory(void 0)({ name: `<lookup:${codecDescriptor.codecId}>` });\n\t\t\t\tbyId.set(codecDescriptor.codecId, representative);\n\t\t\t}\n\t\t}\n\t}\n\tconst registry = {\n\t\tget: (id) => byId.get(id),\n\t\tforCodecRef(ref) {\n\t\t\treturn codecForRef(registry, ref) ?? codecDescriptorMissing(ref, \"CONTRACT.CODEC_DESCRIPTOR_MISSING\");\n\t\t},\n\t\tforColumn: () => void 0,\n\t\trenderOutputTypeFor: (id, params) => renderersById.get(id)?.(params),\n\t\trenderInputTypeFor: (id, params) => inputRenderersById.get(id)?.(params),\n\t\trenderValueLiteralFor: (id, value, side) => valueLiteralRenderersById.get(id)?.(value, side),\n\t\tdescriptorFor: (id) => descriptorsById.get(id)\n\t};\n\treturn registry;\n}\nfunction assembleExtensionContracts(extensions) {\n\tconst result = /* @__PURE__ */ new Map();\n\tfor (const ext of extensions) {\n\t\tif (ext.contractSpace === void 0) continue;\n\t\tresult.set(ext.id, ext.contractSpace.contractJson);\n\t}\n\treturn result;\n}\nfunction readDeclaredDependencyIds(descriptor) {\n\tconst packs = descriptor.contractSpace?.contractJson?.extensions;\n\tif (packs === null || typeof packs !== \"object\") return [];\n\treturn Object.keys(packs);\n}\n/**\n* Builds a dependency-respecting load order for the given extension descriptors\n* using Kahn's topological sort algorithm. Dependencies (packs declared in\n* `contractSpace.contractJson.extensions`) are placed before the extensions\n* that depend on them.\n*\n* Throws if the dependency graph contains a cycle, with an error message that\n* names every extension involved in the cycle.\n*\n* Throws if any extension declares a dependency on a pack ID that is not present\n* in the provided list — add the missing pack to the `extensions` list to\n* resolve the error.\n*/\nfunction buildExtensionLoadOrder(extensions) {\n\tif (extensions.length === 0) return [];\n\tconst idSet = new Set(extensions.map((e) => e.id));\n\tconst inDegree = /* @__PURE__ */ new Map();\n\tconst dependents = /* @__PURE__ */ new Map();\n\tfor (const ext of extensions) {\n\t\tif (!inDegree.has(ext.id)) inDegree.set(ext.id, 0);\n\t\tif (!dependents.has(ext.id)) dependents.set(ext.id, []);\n\t}\n\tfor (const ext of extensions) for (const depId of readDeclaredDependencyIds(ext)) {\n\t\tif (!idSet.has(depId)) throw new InternalError(`Extension \"${ext.id}\" declares a dependency on \"${depId}\", but \"${depId}\" is not in the provided extension set. Add the missing space to extensions.`);\n\t\tinDegree.set(ext.id, (inDegree.get(ext.id) ?? 0) + 1);\n\t\tconst list = dependents.get(depId);\n\t\tif (list !== void 0) list.push(ext.id);\n\t}\n\tconst queue = [];\n\tfor (const [id, deg] of inDegree) if (deg === 0) queue.push(id);\n\tqueue.sort();\n\tconst result = [];\n\twhile (queue.length > 0) {\n\t\tconst id = queue.shift();\n\t\tif (id === void 0) break;\n\t\tresult.push(id);\n\t\tconst children = dependents.get(id) ?? [];\n\t\tchildren.sort();\n\t\tfor (const childId of children) {\n\t\t\tconst newDeg = (inDegree.get(childId) ?? 1) - 1;\n\t\t\tinDegree.set(childId, newDeg);\n\t\t\tif (newDeg === 0) queue.push(childId);\n\t\t}\n\t}\n\tif (result.length < extensions.length) throw new InternalError(`Extension dependency cycle detected. Cycle members: ${extensions.map((e) => e.id).filter((id) => !result.includes(id)).sort().map((id) => `\"${id}\"`).join(\", \")}.`);\n\treturn result;\n}\nfunction createControlStack(input) {\n\tconst { family, target, adapter, driver, extensions = [] } = input;\n\tconst orderedIds = buildExtensionLoadOrder(extensions);\n\tconst extensionById = new Map(extensions.map((ext) => [ext.id, ext]));\n\tconst orderedExtensions = orderedIds.map((id) => extensionById.get(id)).filter((ext) => ext !== void 0);\n\tconst allDescriptors = [\n\t\tfamily,\n\t\ttarget,\n\t\t...adapter ? [adapter] : [],\n\t\t...orderedExtensions\n\t];\n\tconst codecLookup = extractCodecLookup(allDescriptors);\n\tconst authoringContributions = assembleAuthoringContributions(allDescriptors);\n\tconst codecDescriptors = collectCodecDescriptors(allDescriptors);\n\tconst dataTypes = assembleDataTypes(allDescriptors);\n\tenforceDataTypeInvariants({\n\t\tlookup: dataTypes.lookup,\n\t\tdeclaredTypes: dataTypes.declared,\n\t\tcodecs: allDescriptors.flatMap((descriptor) => (descriptor.types?.codecTypes?.codecDescriptors ?? []).map((codecDescriptor) => ({\n\t\t\tcodecId: codecDescriptor.codecId,\n\t\t\tdataType: codecDescriptor.dataType,\n\t\t\tcontributedBy: descriptor.id\n\t\t}))),\n\t\tauthoringEntries: allDescriptors.flatMap((descriptor) => Object.entries(descriptor.authoring?.dataTypes ?? {}).map(([key, entry]) => ({\n\t\t\tkey,\n\t\t\tentry,\n\t\t\tcontributedBy: descriptor.id\n\t\t}))),\n\t\tconstructors: allDescriptors.flatMap(contributedConstructors),\n\t\tcodecDescriptorFor: (codecId) => codecLookup.descriptorFor?.(codecId)\n\t});\n\treturn {\n\t\tfamily,\n\t\ttarget,\n\t\tadapter,\n\t\tdriver,\n\t\textensions: orderedExtensions,\n\t\textensionContracts: assembleExtensionContracts(orderedExtensions),\n\t\tcodecTypeImports: extractCodecTypeImports(allDescriptors),\n\t\tqueryOperationTypeImports: extractQueryOperationTypeImports(allDescriptors),\n\t\textensionIds: extractComponentIds(family, target, adapter, orderedExtensions),\n\t\tcodecLookup,\n\t\tcodecDescriptors,\n\t\tdataTypes: {\n\t\t\tentries: authoringContributions.dataTypes,\n\t\t\tlookup: dataTypes.lookup\n\t\t},\n\t\tdeclaredDataTypes: dataTypes.declared,\n\t\taggregateDescriptors: collectAggregateDescriptors(allDescriptors),\n\t\tauthoringContributions,\n\t\tscalarTypes: [...collectScalarTypeConstructors(authoringContributions.type).keys()],\n\t\tcontrolMutationDefaults: assembleControlMutationDefaults(allDescriptors),\n\t\tcapabilities: mergeCapabilityMatrices({}, [\n\t\t\ttarget,\n\t\t\t...adapter ? [adapter] : [],\n\t\t\t...orderedExtensions\n\t\t])\n\t};\n}\n//#endregion\n//#region src/control/order-issues-by-dependencies.ts\nconst PATH_DELIMITER = \" \";\nfunction pathKey(path) {\n\treturn path.join(PATH_DELIMITER);\n}\n/**\n* Whether an issue's op builds its subject up (create or alter) rather than\n* only tearing it down. The differ sets `expected` on every create (`not-found`)\n* and alter (`not-equal`) issue and leaves it absent on a pure drop\n* (`not-expected`). This is the single signal the ordering law reads for edge\n* direction — never `reason`.\n*/\nfunction buildsUp(issue) {\n\treturn issue.expected !== void 0;\n}\n/**\n* The nearest strict-ancestor bucket of `path` — the surviving parent entity a\n* child is contained by. Walks the path's proper prefixes from longest to\n* shortest and returns the first prefix that maps to a bucket; a gap (a prefix\n* with no bucket) is skipped so containment always attaches to the closest real\n* parent.\n*\n* Returns a list because a path prefix can be shared by two siblings of\n* different `nodeKind` (a role and a namespace named alike); linking the child\n* to every candidate over-constrains safely (the extra edge points at a same-\n* direction op and never forms a cycle, since a parent never depends on its\n* child) rather than risk picking the wrong one.\n*/\nfunction nearestAncestors(path, byPath) {\n\tfor (let end = path.length - 1; end >= 1; end -= 1) {\n\t\tconst bucket = byPath.get(pathKey(path.slice(0, end)));\n\t\tif (bucket !== void 0) return bucket;\n\t}\n\treturn [];\n}\n/**\n* Orders schema-diff issues so that every dependency's op precedes its\n* dependent on the way up and follows it on the way down, breaking ties\n* deterministically by path.\n*\n* Edges come from two sources:\n* - **`dependsOn` cross-links** — the resolved issue-to-issue paths the differ\n* mirrors onto each issue (a node's declared structural prerequisites). A\n* path that resolves to no issue in this list is skipped (the dependency is\n* satisfied by reality); a path shared by two same-id/different-kind siblings\n* links to every match, over-constraining safely.\n* - **containment** — every issue depends on its nearest strict-ancestor issue\n* (a child entity on the parent entity that owns it). Subtree coalescing has\n* already removed the descendants of a whole create/drop, so this only links\n* the parent/child pairs that legitimately survive together.\n*\n* The ordering law reads each dependent's presence for direction: an issue that\n* builds up (`expected` present — a create or alter) needs its dependency\n* first; a pure drop needs its dependent removed first, so the edge reverses.\n* The graph is a DAG by construction (dependencies point from dependents to\n* their prerequisites, and prerequisites never point back), so a cycle is a\n* derivation or authoring bug: the topological sort asserts acyclicity and\n* throws, naming the issues it could not place.\n*/\nfunction orderIssuesByDependencies(issues) {\n\tif (issues.length <= 1) return issues;\n\tconst nodes = issues.map((issue) => ({\n\t\tissue,\n\t\tkey: pathKey(issue.path),\n\t\tbuildsUp: buildsUp(issue),\n\t\toutgoing: /* @__PURE__ */ new Set(),\n\t\tinDegree: 0\n\t}));\n\tconst nodesByPath = /* @__PURE__ */ new Map();\n\tfor (const node of nodes) {\n\t\tconst bucket = nodesByPath.get(node.key);\n\t\tif (bucket === void 0) nodesByPath.set(node.key, [node]);\n\t\telse bucket.push(node);\n\t}\n\tconst addEdge = (before, after) => {\n\t\tif (before.outgoing.has(after)) return;\n\t\tbefore.outgoing.add(after);\n\t\tafter.inDegree += 1;\n\t};\n\tconst addDependency = (dependent, dependency) => {\n\t\tif (dependent === dependency) return;\n\t\tif (dependent.buildsUp) addEdge(dependency, dependent);\n\t\telse addEdge(dependent, dependency);\n\t};\n\tfor (const node of nodes) {\n\t\tfor (const targetPath of node.issue.dependsOn ?? []) for (const target of nodesByPath.get(pathKey(targetPath)) ?? []) addDependency(node, target);\n\t\tfor (const ancestor of nearestAncestors(node.issue.path, nodesByPath)) addDependency(node, ancestor);\n\t}\n\tconst ready = nodes.filter((node) => node.inDegree === 0);\n\tconst order = [];\n\twhile (ready.length > 0) {\n\t\tlet best;\n\t\tfor (const candidate of ready) if (best === void 0 || candidate.key < best.key) best = candidate;\n\t\tif (best === void 0) break;\n\t\tready.splice(ready.indexOf(best), 1);\n\t\torder.push(best);\n\t\tfor (const next of best.outgoing) {\n\t\t\tnext.inDegree -= 1;\n\t\t\tif (next.inDegree === 0) ready.push(next);\n\t\t}\n\t}\n\tif (order.length !== nodes.length) {\n\t\tconst placed = new Set(order);\n\t\tthrow new InternalError(`orderIssuesByDependencies: dependency cycle among schema-diff issues (unresolved: ${nodes.filter((node) => !placed.has(node)).map((node) => node.issue.path.join(\"/\")).join(\", \")})`);\n\t}\n\treturn order.map((node) => node.issue);\n}\n//#endregion\n//#region src/control/schema-diff.ts\n/**\n* The outcome an issue represents, discriminated by presence rather than any\n* stored field — the single source of truth every consumer reads. An issue\n* always carries at least one side by construction; neither is a malformed\n* issue and throws.\n*/\nfunction issueOutcome(issue) {\n\tconst hasExpected = issue.expected !== void 0;\n\tconst hasActual = issue.actual !== void 0;\n\tif (hasExpected && hasActual) return \"not-equal\";\n\tif (hasExpected) return \"not-found\";\n\tif (hasActual) return \"not-expected\";\n\tthrow new InternalError(`issueOutcome: issue at \"${issue.path.join(\"/\")}\" carries neither an expected nor an actual node`);\n}\nfunction siblingKey(node) {\n\treturn JSON.stringify([node.nodeKind, node.id]);\n}\nfunction insertNode(map, node) {\n\tconst key = siblingKey(node);\n\tif (map.has(key)) throw new InternalError(`diffSchemas: duplicate id among siblings: ${node.nodeKind}/${node.id}`);\n\tmap.set(key, node);\n}\nfunction emitMissingSubtree(node, parentPath) {\n\tconst path = [...parentPath, node.id];\n\treturn [{\n\t\tpath,\n\t\texpected: node,\n\t\t...ifDefined(\"explanation\", node.explainMismatch?.(void 0))\n\t}, ...node.children().flatMap((c) => emitMissingSubtree(c, path))];\n}\nfunction emitExtraSubtree(node, parentPath) {\n\tconst path = [...parentPath, node.id];\n\treturn [{\n\t\tpath,\n\t\tactual: node\n\t}, ...node.children().flatMap((c) => emitExtraSubtree(c, path))];\n}\n/**\n* Diff two schema trees starting from their roots.\n*\n* The differ is **total**: every node-level difference is reported. An unmatched\n* non-leaf node emits its own issue and descends, emitting an issue for every\n* node in the missing/extra subtree. Coalescing a parent change over its\n* children is the planner's responsibility. Ownership filtering (dropping `extra`\n* issues in namespaces a contract doesn't own) is the caller's responsibility.\n*/\nfunction diffSchemas(expected, actual) {\n\treturn mirrorDependsOnOntoIssues(diffPair(expected, actual, []));\n}\nfunction schemaNodeRefKey(ref) {\n\treturn JSON.stringify(ref.map((step) => step.id));\n}\nfunction issuePathKey(path) {\n\treturn JSON.stringify(path);\n}\nfunction terminalNodeKind(issue) {\n\treturn (issue.expected ?? issue.actual)?.nodeKind;\n}\n/**\n* Copies each issue's node's `dependsOn` refs onto the issue itself, as\n* issue-to-issue path references. A ref is kept only when some emitted issue\n* sits at that exact path AND that issue's node `nodeKind` matches the ref's\n* last step — otherwise the ref is dropped (its target either didn't\n* change, or was never part of either tree; either way the dependency is\n* satisfied by reality, not by an operation this diff will produce).\n*\n* The path index is a multimap: two siblings may share an `id` under\n* different `nodeKind`s (a role and a namespace named alike), so an id-path\n* alone is ambiguous. The ref's terminal `nodeKind` disambiguates — the ref\n* resolves only against a same-path issue whose own node carries that kind.\n*/\nfunction mirrorDependsOnOntoIssues(issues) {\n\tconst issuesByPath = /* @__PURE__ */ new Map();\n\tfor (const issue of issues) {\n\t\tconst key = issuePathKey(issue.path);\n\t\tconst bucket = issuesByPath.get(key);\n\t\tif (bucket === void 0) issuesByPath.set(key, [issue]);\n\t\telse bucket.push(issue);\n\t}\n\treturn issues.map((issue) => {\n\t\tconst refs = (issue.expected ?? issue.actual)?.dependsOn;\n\t\tif (refs === void 0 || refs.length === 0) return issue;\n\t\tconst dependsOn = refs.flatMap((ref) => {\n\t\t\tconst lastStep = ref[ref.length - 1];\n\t\t\tif (lastStep === void 0) return [];\n\t\t\tif (!(issuesByPath.get(schemaNodeRefKey(ref)) ?? []).some((c) => terminalNodeKind(c) === lastStep.nodeKind)) return [];\n\t\t\treturn [ref.map((step) => step.id)];\n\t\t});\n\t\tif (dependsOn.length === 0) return issue;\n\t\treturn {\n\t\t\t...issue,\n\t\t\tdependsOn\n\t\t};\n\t});\n}\nfunction diffPair(expected, actual, parentPath) {\n\tconst path = [...parentPath, expected.id];\n\tconst issues = [];\n\tif (!expected.isEqualTo(actual)) issues.push({\n\t\tpath,\n\t\texpected,\n\t\tactual,\n\t\t...ifDefined(\"explanation\", expected.explainMismatch?.(actual))\n\t});\n\tissues.push(...diffChildren(expected.children(), actual.children(), path));\n\treturn issues;\n}\n/**\n* Align one level of nodes by `(nodeKind, id)`; emit issues in input order\n* and recurse.\n*\n* A missing node emits one issue for itself and one for every node in its\n* subtree (total descent). Same for extra nodes. A matched pair recurses via\n* `diffPair`.\n*/\nfunction diffChildren(expected, actual, parentPath) {\n\tconst expectedMap = /* @__PURE__ */ new Map();\n\tfor (const node of expected) insertNode(expectedMap, node);\n\tconst actualMap = /* @__PURE__ */ new Map();\n\tfor (const node of actual) insertNode(actualMap, node);\n\tconst issues = [];\n\tfor (const [key, expectedNode] of expectedMap) {\n\t\tconst actualNode = actualMap.get(key);\n\t\tif (actualNode === void 0) issues.push(...emitMissingSubtree(expectedNode, parentPath));\n\t\telse issues.push(...diffPair(expectedNode, actualNode, parentPath));\n\t}\n\tfor (const [key, actualNode] of actualMap) if (!expectedMap.has(key)) issues.push(...emitExtraSubtree(actualNode, parentPath));\n\treturn issues;\n}\n/**\n* The result of diffing a contract's expected schema against the introspected\n* actual schema: one node-typed issue list. Carries no verdict, verification\n* tree, or counts — those are the verifier's own presentation, built from the\n* same underlying comparison.\n*\n* `TNode` is the concrete schema-IR node the issues carry; it defaults to\n* `DiffableNode`, so this is purely additive — a caller that wants the\n* concrete node opts in (the Postgres planner uses the concrete node type),\n* everyone else keeps the default unchanged.\n*/\nvar SchemaDiff = class SchemaDiff {\n\tissues;\n\tconstructor(issues) {\n\t\tthis.issues = issues;\n\t}\n\t/** Returns a new `SchemaDiff` narrowed to the issues `keep` returns true for. */\n\tfilter(keep) {\n\t\treturn new SchemaDiff(this.issues.filter(keep));\n\t}\n};\n//#endregion\n//#region src/control/verifier-disposition.ts\n/**\n* Grades a target-neutral issue category against a control policy.\n*\n* - `observed` warns on everything.\n* - `tolerated` suppresses only an extra nested element (everything else fails).\n* - `external` suppresses every extra category and value drift (existence and\n* declared-shape divergences still fail).\n* - `managed` (and any other) fails.\n*/\nfunction dispositionForCategory(controlPolicy, category) {\n\tif (controlPolicy === \"observed\") return \"warn\";\n\tif (controlPolicy === \"tolerated\" && category === \"extraNestedElement\") return \"suppress\";\n\tif (controlPolicy === \"external\") {\n\t\tif (category === \"extraNestedElement\" || category === \"extraAuxiliary\" || category === \"extraTopLevelObject\" || category === \"valueDrift\") return \"suppress\";\n\t}\n\treturn \"fail\";\n}\n//#endregion\nexport { APP_SPACE_ID, CONTRACT_SNAPSHOTS_DIRNAME, SchemaDiff, SchemaTreeNode, TAGGED_LITERAL_MAX_BYTES, VERIFY_CODE_HASH_MISMATCH, VERIFY_CODE_MARKER_MISSING, VERIFY_CODE_SCHEMA_FAILURE, VERIFY_CODE_TARGET_MISMATCH, assembleAuthoringContributions, assembleAuthoringDataTypes, assembleControlMutationDefaults, assertUniqueCodecOwner, buildExtensionLoadOrder, canonicalizeTaggedLiteralBody, contractSnapshotJsonSpecifier, contractSnapshotTypesSpecifier, createControlStack, describeTaggedLiteralFailure, diffSchemas, dispositionForCategory, enforceDataTypeInvariants, extractCodecLookup, extractCodecTypeImports, extractComponentIds, extractQueryOperationTypeImports, hasMigrations, hasOperationPreview, hasPslContractBuild, hasPslContractInfer, hasSchemaSubjectClassifier, hasSchemaView, issueOutcome, orderIssuesByDependencies, resolvePslBacktickEscapes, resolveTemplateTagEscapes, sameMarkerHashes, storageHashHex, timestampNowControlDescriptor };\n\n//# sourceMappingURL=control.mjs.map"],"mappings":";;;;;;;;;AASA,MAAM,6BAA6B;AACnC,MAAM,uBAAuB;;AAE7B,SAAS,eAAe,aAAa;CACpC,IAAI,CAAC,qBAAqB,KAAK,WAAW,GAAG,MAAM,IAAI,cAAc,yBAAyB,YAAY,wCAAwC;CAClJ,OAAO;AACR;;AAEA,SAAS,8BAA8B,qBAAqB,aAAa;CACxE,OAAO,GAAG,oBAAoB,GAAG,eAAe,WAAW,EAAE;AAC9D;;AAEA,SAAS,+BAA+B,qBAAqB,aAAa;CACzE,OAAO,GAAG,oBAAoB,GAAG,eAAe,WAAW,EAAE;AAC9D;AAGA,SAAS,cAAc,QAAQ;CAC9B,OAAO,gBAAgB,UAAU,CAAC,CAAC,OAAO;AAC3C;AACA,SAAS,cAAc,UAAU;CAChC,OAAO,kBAAkB,YAAY,OAAO,SAAS,oBAAoB;AAC1E;AACA,SAAS,oBAAoB,UAAU;CACtC,OAAO,sBAAsB,YAAY,OAAO,SAAS,wBAAwB;AAClF;AACA,SAAS,oBAAoB,UAAU;CACtC,OAAO,sBAAsB,YAAY,OAAO,QAAQ,IAAI,UAAU,kBAAkB,MAAM;AAC/F;AACA,SAAS,oBAAoB,UAAU;CACtC,OAAO,wBAAwB,YAAY,OAAO,SAAS,0BAA0B;AACtF;AACA,SAAS,2BAA2B,UAAU;CAC7C,OAAO,gCAAgC,YAAY,OAAO,SAAS,kCAAkC,cAAc,wBAAwB,YAAY,OAAO,SAAS,0BAA0B;AAClM;AAGA,MAAM,6BAA6B;AACnC,MAAM,4BAA4B;AAClC,MAAM,8BAA8B;AACpC,MAAM,6BAA6B;;AAEnC,SAAS,iBAAiB,GAAG,GAAG;CAC/B,IAAI,MAAM,QAAQ,MAAM,MAAM,OAAO,MAAM;CAC3C,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE;AAC/D;AAGA,IAAI,iBAAiB,MAAM;CAC1B;CACA;CACA;CACA;CACA;CACA,YAAY,SAAS;EACpB,KAAK,OAAO,QAAQ;EACpB,KAAK,KAAK,QAAQ;EAClB,KAAK,QAAQ,QAAQ;EACrB,IAAI,QAAQ,SAAS,KAAK,GAAG,KAAK,OAAO,QAAQ;EACjD,IAAI,QAAQ,aAAa,KAAK,GAAG,KAAK,WAAW,QAAQ;EACzD,OAAO,OAAO,IAAI;CACnB;CACA,OAAO,SAAS;EACf,OAAO,QAAQ,MAAM,IAAI;CAC1B;AACD;;;;;;;;;;;;;;;;;;;;AAsBA,MAAM,eAAe;AAGrB,SAAS,YAAY,KAAK,MAAM,IAAI;CACnC,IAAI,CAAC,KAAK,IAAI,EAAE,GAAG;EAClB,IAAI,KAAK,EAAE;EACX,KAAK,IAAI,EAAE;CACZ;AACD;AACA,SAAS,uBAAuB,SAAS;CACxC,MAAM,gBAAgB,QAAQ,OAAO,IAAI,QAAQ,OAAO;CACxD,IAAI,kBAAkB,KAAK,GAAG,MAAM,IAAI,cAAc,aAAa,QAAQ,YAAY,gBAAgB,QAAQ,QAAQ,iBAAiB,QAAQ,aAAa,oBAAoB,cAAc,oCAAoC,QAAQ,qBAAqB,EAAE;AACnQ;AACA,SAAS,wBAAwB,aAAa;CAC7C,MAAM,UAAU,CAAC;CACjB,KAAK,MAAM,cAAc,aAAa;EACrC,MAAM,aAAa,WAAW,OAAO;EACrC,IAAI,YAAY,QAAQ,QAAQ,KAAK,WAAW,MAAM;EACtD,IAAI,YAAY,aAAa,QAAQ,KAAK,GAAG,WAAW,WAAW;CACpE;CACA,OAAO;AACR;AACA,SAAS,iCAAiC,aAAa;CACtD,MAAM,UAAU,CAAC;CACjB,KAAK,MAAM,cAAc,aAAa;EACrC,MAAM,sBAAsB,WAAW,OAAO;EAC9C,IAAI,qBAAqB,QAAQ,QAAQ,KAAK,oBAAoB,MAAM;CACzE;CACA,OAAO;AACR;AACA,SAAS,oBAAoB,QAAQ,QAAQ,SAAS,YAAY;CACjE,MAAM,MAAM,CAAC;CACb,MAAM,uBAAuB,IAAI,IAAI;CACrC,YAAY,KAAK,MAAM,OAAO,EAAE;CAChC,YAAY,KAAK,MAAM,OAAO,EAAE;CAChC,IAAI,SAAS,YAAY,KAAK,MAAM,QAAQ,EAAE;CAC9C,KAAK,MAAM,OAAO,YAAY,YAAY,KAAK,MAAM,IAAI,EAAE;CAC3D,OAAO;AACR;AACA,SAAS,+BAA+B,aAAa;CACpD,MAAM,QAAQ,CAAC;CACf,MAAM,OAAO,CAAC;CACd,MAAM,cAAc,CAAC;CACrB,MAAM,sBAAsB,CAAC;CAC7B,MAAM,kBAAkB,CAAC;CACzB,MAAM,iBAAiB;EACtB,OAAO,CAAC;EACR,OAAO,CAAC;CACT;CACA,MAAM,sCAAsC,IAAI,IAAI;CACpD,MAAM,6BAA6B,IAAI,IAAI;CAC3C,MAAM,yBAAyB,WAAW,gBAAgB,OAAO,iBAAiB;EACjF,KAAK,MAAM,QAAQ,kCAAkC,WAAW,cAAc,GAAG;GAChF,MAAM,MAAM,GAAG,MAAM,GAAG;GACxB,MAAM,gBAAgB,WAAW,IAAI,GAAG;GACxC,IAAI,kBAAkB,KAAK,GAAG,MAAM,IAAI,cAAc,uBAAuB,MAAM,WAAW,KAAK,iBAAiB,aAAa,oBAAoB,cAAc,GAAG;GACtK,WAAW,IAAI,KAAK,YAAY;EACjC;CACD;CACA,IAAI;CACJ,KAAK,MAAM,cAAc,aAAa;EACrC,MAAM,eAAe,WAAW,MAAM;EACtC,MAAM,iCAAiC,WAAW,WAAW;EAC7D,IAAI,mCAAmC,KAAK,GAAG;GAC9C,IAAI,kCAAkC,KAAK,GAAG,MAAM,IAAI,cAAc,uEAAuE,aAAa,oBAAoB,8BAA8B,QAAQ,6EAA6E;GACjS,gCAAgC;IAC/B,MAAM;IACN,SAAS;GACV;EACD;EACA,IAAI,WAAW,WAAW,OAAO;GAChC,sBAAsB,WAAW,UAAU,OAAO,eAAe,SAAS,YAAY;GACtF,yBAAyB,OAAO,WAAW,UAAU,OAAO,CAAC,GAAG,eAAe,OAAO;EACvF;EACA,IAAI,WAAW,WAAW,MAAM;GAC/B,sBAAsB,WAAW,UAAU,MAAM,mBAAmB,QAAQ,YAAY;GACxF,yCAAyC,WAAW,UAAU,MAAM,YAAY;GAChF,yBAAyB,MAAM,WAAW,UAAU,MAAM,CAAC,GAAG,mBAAmB,MAAM;EACxF;EACA,IAAI,WAAW,WAAW,aAAa;GACtC,sBAAsB,WAAW,UAAU,aAAa,UAAU,UAAU,YAAY;GACxF,yBAAyB,aAAa,WAAW,UAAU,aAAa,CAAC,GAAG,UAAU,QAAQ;EAC/F;EACA,IAAI,WAAW,WAAW,qBAAqB;GAC9C,sBAAsB,WAAW,UAAU,qBAAqB,YAAY,YAAY,YAAY;GACpG,yBAAyB,qBAAqB,WAAW,UAAU,qBAAqB,CAAC,GAAG,YAAY,UAAU;EACnH;EACA,IAAI,WAAW,WAAW,iBAAiB,yBAAyB,iBAAiB,WAAW,UAAU,iBAAiB,CAAC,GAAG,kBAAkB,gBAAgB;EACjK,IAAI,WAAW,WAAW,gBAAgB,6BAA6B,gBAAgB,WAAW,UAAU,gBAAgB,cAAc,mBAAmB;CAC9J;CACA,MAAM,iBAAiB;CACvB,MAAM,gBAAgB;CACtB,MAAM,sBAAsB;CAC5B,MAAM,8BAA8B,UAAU,mBAAmB;CACjE,MAAM,0BAA0B,UAAU,eAAe;CACzD,gCAAgC,eAAe,gBAAgB,qBAAqB,6BAA6B,uBAAuB;CACxI,IAAI,kCAAkC,KAAK,KAAK,CAAC,8BAA8B,aAAa,CAAC,CAAC,IAAI,8BAA8B,IAAI,GAAG,MAAM,IAAI,cAAc,6CAA6C,8BAA8B,KAAK,4BAA4B,8BAA8B,QAAQ,qGAAqG;CACtZ,OAAO;EACN,WAAW,2BAA2B,WAAW;EACjD,OAAO;EACP,MAAM;EACN,aAAa;EACb,qBAAqB;EACrB,iBAAiB;EACjB;EACA,GAAG,kCAAkC,KAAK,IAAI,EAAE,wBAAwB,8BAA8B,KAAK,IAAI,CAAC;CACjH;AACD;;AAEA,SAAS,2BAA2B,aAAa;CAChD,MAAM,SAAS,CAAC;CAChB,MAAM,yBAAyB,IAAI,IAAI;CACvC,KAAK,MAAM,cAAc,aAAa;EACrC,MAAM,gBAAgB,WAAW,MAAM;EACvC,KAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,WAAW,WAAW,aAAa,CAAC,CAAC,GAAG;GACjF,MAAM,gBAAgB,OAAO,IAAI,GAAG;GACpC,IAAI,kBAAkB,KAAK,GAAG,MAAM,aAAa,sCAAsC,kCAAkC,IAAI,gBAAgB,cAAc,oBAAoB,cAAc,KAAK;IACjM;IACA;IACA,OAAO;GACR,CAAC;GACD,OAAO,IAAI,KAAK,aAAa;GAC7B,OAAO,OAAO;EACf;CACD;CACA,OAAO;AACR;AACA,SAAS,cAAc,WAAW,QAAQ,OAAO,CAAC,GAAG;CACpD,OAAO,OAAO,QAAQ,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,WAAW;EAChE,MAAM,cAAc,CAAC,GAAG,MAAM,GAAG;EACjC,IAAI,OAAO,KAAK,GAAG,OAAO,CAAC;GAC1B,MAAM,YAAY,KAAK,GAAG;GAC1B,YAAY;EACb,CAAC;EACD,IAAI,OAAO,UAAU,YAAY,UAAU,QAAQ,MAAM,QAAQ,KAAK,GAAG,OAAO,CAAC;EACjF,OAAO,cAAc,OAAO,QAAQ,WAAW;CAChD,CAAC;AACF;;AAEA,SAAS,wBAAwB,YAAY;CAC5C,OAAO,CAAC,GAAG,cAAc,WAAW,WAAW,MAAM,oCAAoC,GAAG,GAAG,cAAc,WAAW,WAAW,OAAO,gCAAgC,CAAC,CAAC,CAAC,KAAK,WAAW;EAC5L,GAAG;EACH,eAAe,WAAW;CAC3B,EAAE;AACH;AACA,SAAS,mBAAmB,YAAY;CACvC,OAAO,OAAO,QAAQ,WAAW,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,cAAc,kBAAkB,QAAQ,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;AAChI;AACA,SAAS,6BAA6B,OAAO;CAC5C,MAAM,6BAA6B,IAAI,IAAI;CAC3C,KAAK,MAAM,eAAe,MAAM,cAAc;EAC7C,MAAM,EAAE,MAAM,YAAY,kBAAkB;EAC5C,MAAM,OAAO,WAAW,SAAS,oBAAoB,qBAAqB;EAC1E,MAAM,UAAU,WAAW,OAAO;EAClC,MAAM,QAAQ,MAAM,mBAAmB,OAAO;EAC9C,IAAI,UAAU,KAAK,GAAG,MAAM,IAAI,cAAc,GAAG,KAAK,IAAI,KAAK,oBAAoB,cAAc,iBAAiB,QAAQ,iCAAiC;EAC3J,IAAI,WAAW,SAAS,mBAAmB;EAC3C,MAAM,YAAY,MAAM,iBAAiB,KAAK,IAAI,CAAC,IAAI,iBAAiB,MAAM,YAAY;EAC1F,IAAI,cAAc,KAAK,GAAG;GACzB,MAAM,2BAA2B,IAAI,IAAI,CAAC,GAAG,WAAW,GAAG,iBAAiB,MAAM,OAAO,IAAI,MAAM,QAAQ,CAAC,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC;GAC5H,KAAK,MAAM,OAAO,mBAAmB,UAAU,GAAG,IAAI,CAAC,SAAS,IAAI,GAAG,GAAG,MAAM,IAAI,cAAc,qBAAqB,KAAK,oBAAoB,cAAc,yCAAyC,IAAI,8BAA8B,MAAM,SAAS,eAAe,QAAQ,YAAY;EAC5R;EACA,IAAI,WAAW,aAAa,MAAM;EAClC,MAAM,WAAW,WAAW,IAAI,MAAM,QAAQ;EAC9C,IAAI,aAAa,KAAK,GAAG,MAAM,IAAI,cAAc,sBAAsB,SAAS,KAAK,oBAAoB,SAAS,cAAc,SAAS,KAAK,oBAAoB,cAAc,4CAA4C,MAAM,SAAS,gCAAgC;EAC3Q,WAAW,IAAI,MAAM,UAAU,WAAW;CAC3C;AACD;;;;;;;;;;;;;AAaA,SAAS,0BAA0B,OAAO;CACzC,MAAM,gBAAgB,eAAe,IAAI,SAAS;EACjD,MAAM,aAAa,mCAAmC,GAAG,KAAK,oBAAoB,GAAG,mDAAmD,cAAc,KAAK;GAC1J,UAAU;GACV;EACD,CAAC;CACF;CACA,KAAK,MAAM,SAAS,MAAM,QAAQ,IAAI,CAAC,MAAM,OAAO,IAAI,MAAM,QAAQ,GAAG,aAAa,MAAM,eAAe,MAAM,UAAU,UAAU,MAAM,QAAQ,EAAE;CACrJ,KAAK,MAAM,EAAE,KAAK,OAAO,mBAAmB,MAAM,kBAAkB;EACnE,MAAM,UAAU,MAAM;EACtB,MAAM,UAAU,QAAQ,SAAS,SAAS,UAAU,UAAU,QAAQ,OAAO,KAAK;EAClF,IAAI,cAAc,GAAG,KAAK,YAAY,KAAK,GAAG;GAC7C,IAAI,QAAQ,SAAS,SAAS,YAAY,KAAK,KAAK,QAAQ,YAAY,QAAQ,GAAG,GAAG,MAAM,aAAa,wCAAwC,oBAAoB,IAAI,oBAAoB,cAAc,qHAAqH;IAC/T;IACA;GACD,CAAC;GACD,IAAI,CAAC,MAAM,OAAO,IAAI,OAAO,GAAG,aAAa,eAAe,SAAS,oBAAoB,IAAI,EAAE;GAC/F;EACD;EACA,IAAI,CAAC,MAAM,OAAO,IAAI,GAAG,GAAG,aAAa,eAAe,KAAK,iBAAiB;EAC9E,IAAI,MAAM,QAAQ,SAAS,WAAW,MAAM,QAAQ,WAAW,UACzD;QAAA,MAAM,cAAc,MAAM,QAAQ,OAAO,IAAI,CAAC,MAAM,OAAO,IAAI,UAAU,GAAG,aAAa,eAAe,YAAY,sCAAsC,IAAI,EAAE;EAAA;CAEvK;CACA,MAAM,WAAW,IAAI,IAAI,MAAM,iBAAiB,SAAS,EAAE,KAAK,YAAY,CAAC,mBAAmB,KAAK,KAAK,GAAG,GAAG,MAAM,QAAQ,SAAS,WAAW,MAAM,QAAQ,WAAW,WAAW,MAAM,QAAQ,QAAQ,CAAC,CAAC,CAAC,CAAC;CAChN,KAAK,MAAM,EAAE,MAAM,mBAAmB,MAAM,eAAe;EAC1D,MAAM,UAAU,CAAC,GAAG,OAAO,KAAK,KAAK,KAAK,GAAG,GAAG,KAAK,UAAU,MAAM,CAAC,CAAC;EACvE,KAAK,MAAM,UAAU,SAAS;GAC7B,IAAI,CAAC,MAAM,OAAO,IAAI,MAAM,GAAG,aAAa,eAAe,QAAQ,2BAA2B,KAAK,GAAG,EAAE;GACxG,IAAI,CAAC,SAAS,IAAI,MAAM,GAAG,MAAM,aAAa,mCAAmC,cAAc,KAAK,GAAG,gBAAgB,OAAO,yFAAyF,cAAc,KAAK;IACzO,UAAU,KAAK;IACf;IACA;GACD,CAAC;EACF;CACD;CACA,MAAM,4BAA4B,IAAI,IAAI;CAC1C,KAAK,MAAM,EAAE,KAAK,OAAO,mBAAmB,MAAM,kBAAkB;EACnE,MAAM,UAAU,MAAM;EACtB,MAAM,QAAQ,QAAQ,SAAS,QAAQ,QAAQ,QAAQ,IAAI,KAAK,SAAS,QAAQ;EACjF,MAAM,WAAW,UAAU,IAAI,KAAK;EACpC,IAAI,aAAa,KAAK,GAAG,MAAM,aAAa,6CAA6C,mCAAmC,MAAM,KAAK,IAAI,UAAU,cAAc,oBAAoB,SAAS,IAAI,UAAU,SAAS,cAAc,KAAK;GACzO;GACA;GACA;GACA,OAAO,SAAS;GAChB,oBAAoB,SAAS;EAC9B,CAAC;EACD,UAAU,IAAI,OAAO;GACpB;GACA;EACD,CAAC;CACF;CACA,6BAA6B,KAAK;AACnC;AACA,SAAS,gCAAgC,aAAa;CACrD,MAAM,0CAA0C,IAAI,IAAI;CACxD,MAAM,iCAAiC,IAAI,IAAI;CAC/C,MAAM,+BAA+B,IAAI,IAAI;CAC7C,MAAM,kCAAkC,IAAI,IAAI;CAChD,KAAK,MAAM,cAAc,aAAa;EACrC,MAAM,gBAAgB,WAAW;EACjC,IAAI,CAAC,eAAe;EACpB,MAAM,eAAe,WAAW,MAAM;EACtC,KAAK,MAAM,uBAAuB,cAAc,sBAAsB;GACrE,MAAM,gBAAgB,gBAAgB,IAAI,oBAAoB,EAAE;GAChE,IAAI,kBAAkB,KAAK,GAAG,MAAM,IAAI,cAAc,4CAA4C,oBAAoB,GAAG,iBAAiB,aAAa,oBAAoB,cAAc,GAAG;GAC5L,aAAa,IAAI,oBAAoB,IAAI,mBAAmB;GAC5D,gBAAgB,IAAI,oBAAoB,IAAI,YAAY;EACzD;EACA,KAAK,MAAM,CAAC,cAAc,YAAY,cAAc,yBAAyB;GAC5E,MAAM,gBAAgB,eAAe,IAAI,YAAY;GACrD,IAAI,kBAAkB,KAAK,GAAG,MAAM,IAAI,cAAc,wCAAwC,aAAa,iBAAiB,aAAa,oBAAoB,cAAc,GAAG;GAC9K,wBAAwB,IAAI,cAAc,OAAO;GACjD,eAAe,IAAI,cAAc,YAAY;EAC9C;CACD;CACA,OAAO;EACN;EACA,sBAAsB,MAAM,KAAK,aAAa,OAAO,CAAC;CACvD;AACD;;;;;;AAMA,SAAS,4BAA4B,aAAa;CACjD,MAAM,YAAY,CAAC;CACnB,MAAM,yBAAyB,IAAI,IAAI;CACvC,KAAK,MAAM,cAAc,aAAa;EACrC,MAAM,eAAe,WAAW,MAAM;EACtC,KAAK,MAAM,eAAe,WAAW,OAAO,wBAAwB,CAAC,GAAG;GACvE,IAAI,CAAC,sBAAsB,WAAW,GAAG,MAAM,aAAa,yCAAyC,kDAAkD,aAAa,sUAAsU;IACze,eAAe;IACf,YAAY;GACb,CAAC;GACD,MAAM,MAAM,uBAAuB,WAAW;GAC9C,MAAM,gBAAgB,OAAO,IAAI,GAAG;GACpC,IAAI,kBAAkB,KAAK,GAAG,MAAM,aAAa,2CAA2C,uCAAuC,IAAI,iBAAiB,aAAa,oBAAoB,cAAc,2DAA2D;IACjQ;IACA,eAAe;IACf,OAAO;GACR,CAAC;GACD,OAAO,IAAI,KAAK,YAAY;GAC5B,UAAU,KAAK,WAAW;EAC3B;CACD;CACA,OAAO;AACR;;;;;;AAMA,SAAS,wBAAwB,aAAa;CAC7C,OAAO,YAAY,SAAS,eAAe,WAAW,OAAO,YAAY,oBAAoB,CAAC,CAAC;AAChG;AACA,SAAS,mBAAmB,aAAa;CACxC,MAAM,uBAAuB,IAAI,IAAI;CACrC,MAAM,kCAAkC,IAAI,IAAI;CAChD,MAAM,gCAAgC,IAAI,IAAI;CAC9C,MAAM,qCAAqC,IAAI,IAAI;CACnD,MAAM,4CAA4C,IAAI,IAAI;CAC1D,MAAM,yBAAyB,IAAI,IAAI;CACvC,KAAK,MAAM,cAAc,aAAa;EACrC,MAAM,aAAa,WAAW,OAAO;EACrC,MAAM,eAAe,WAAW;EAChC,KAAK,MAAM,mBAAmB,YAAY,oBAAoB,CAAC,GAAG;GACjE,uBAAuB;IACtB,SAAS,gBAAgB;IACzB;IACA;IACA,aAAa;IACb,sBAAsB;GACvB,CAAC;GACD,OAAO,IAAI,gBAAgB,SAAS,YAAY;GAChD,gBAAgB,IAAI,gBAAgB,SAAS,eAAe;GAC5D,IAAI,OAAO,gBAAgB,qBAAqB,YAAY,cAAc,IAAI,gBAAgB,SAAS,gBAAgB,gBAAgB;GACvI,IAAI,OAAO,gBAAgB,oBAAoB,YAAY,mBAAmB,IAAI,gBAAgB,SAAS,gBAAgB,eAAe;GAC1I,IAAI,OAAO,gBAAgB,uBAAuB,YAAY,0BAA0B,IAAI,gBAAgB,SAAS,gBAAgB,kBAAkB;GACvJ,IAAI,CAAC,KAAK,IAAI,gBAAgB,OAAO,GAAG,IAAI,gBAAgB,iBAAiB,IAAI;IAChF,MAAM,iBAAiB,gBAAgB,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,WAAW,gBAAgB,QAAQ,GAAG,CAAC;IAClG,KAAK,IAAI,gBAAgB,SAAS,cAAc;GACjD,SAAS,OAAO;IACf,IAAI,gBAAgB,KAAK,GAAG,MAAM;GACnC;QACK;IACJ,MAAM,iBAAiB,gBAAgB,QAAQ,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,WAAW,gBAAgB,QAAQ,GAAG,CAAC;IACtG,KAAK,IAAI,gBAAgB,SAAS,cAAc;GACjD;EACD;CACD;CACA,MAAM,WAAW;EAChB,MAAM,OAAO,KAAK,IAAI,EAAE;EACxB,YAAY,KAAK;GAChB,OAAO,YAAY,UAAU,GAAG,KAAK,uBAAuB,KAAK,mCAAmC;EACrG;EACA,iBAAiB,KAAK;EACtB,sBAAsB,IAAI,WAAW,cAAc,IAAI,EAAE,CAAC,GAAG,MAAM;EACnE,qBAAqB,IAAI,WAAW,mBAAmB,IAAI,EAAE,CAAC,GAAG,MAAM;EACvE,wBAAwB,IAAI,OAAO,SAAS,0BAA0B,IAAI,EAAE,CAAC,GAAG,OAAO,IAAI;EAC3F,gBAAgB,OAAO,gBAAgB,IAAI,EAAE;CAC9C;CACA,OAAO;AACR;AACA,SAAS,2BAA2B,YAAY;CAC/C,MAAM,yBAAyB,IAAI,IAAI;CACvC,KAAK,MAAM,OAAO,YAAY;EAC7B,IAAI,IAAI,kBAAkB,KAAK,GAAG;EAClC,OAAO,IAAI,IAAI,IAAI,IAAI,cAAc,YAAY;CAClD;CACA,OAAO;AACR;AACA,SAAS,0BAA0B,YAAY;CAC9C,MAAM,QAAQ,WAAW,eAAe,cAAc;CACtD,IAAI,UAAU,QAAQ,OAAO,UAAU,UAAU,OAAO,CAAC;CACzD,OAAO,OAAO,KAAK,KAAK;AACzB;;;;;;;;;;;;;;AAcA,SAAS,wBAAwB,YAAY;CAC5C,IAAI,WAAW,WAAW,GAAG,OAAO,CAAC;CACrC,MAAM,QAAQ,IAAI,IAAI,WAAW,KAAK,MAAM,EAAE,EAAE,CAAC;CACjD,MAAM,2BAA2B,IAAI,IAAI;CACzC,MAAM,6BAA6B,IAAI,IAAI;CAC3C,KAAK,MAAM,OAAO,YAAY;EAC7B,IAAI,CAAC,SAAS,IAAI,IAAI,EAAE,GAAG,SAAS,IAAI,IAAI,IAAI,CAAC;EACjD,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE,GAAG,WAAW,IAAI,IAAI,IAAI,CAAC,CAAC;CACvD;CACA,KAAK,MAAM,OAAO,YAAY,KAAK,MAAM,SAAS,0BAA0B,GAAG,GAAG;EACjF,IAAI,CAAC,MAAM,IAAI,KAAK,GAAG,MAAM,IAAI,cAAc,cAAc,IAAI,GAAG,8BAA8B,MAAM,UAAU,MAAM,6EAA6E;EACrM,SAAS,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,EAAE,KAAK,KAAK,CAAC;EACpD,MAAM,OAAO,WAAW,IAAI,KAAK;EACjC,IAAI,SAAS,KAAK,GAAG,KAAK,KAAK,IAAI,EAAE;CACtC;CACA,MAAM,QAAQ,CAAC;CACf,KAAK,MAAM,CAAC,IAAI,QAAQ,UAAU,IAAI,QAAQ,GAAG,MAAM,KAAK,EAAE;CAC9D,MAAM,KAAK;CACX,MAAM,SAAS,CAAC;CAChB,OAAO,MAAM,SAAS,GAAG;EACxB,MAAM,KAAK,MAAM,MAAM;EACvB,IAAI,OAAO,KAAK,GAAG;EACnB,OAAO,KAAK,EAAE;EACd,MAAM,WAAW,WAAW,IAAI,EAAE,KAAK,CAAC;EACxC,SAAS,KAAK;EACd,KAAK,MAAM,WAAW,UAAU;GAC/B,MAAM,UAAU,SAAS,IAAI,OAAO,KAAK,KAAK;GAC9C,SAAS,IAAI,SAAS,MAAM;GAC5B,IAAI,WAAW,GAAG,MAAM,KAAK,OAAO;EACrC;CACD;CACA,IAAI,OAAO,SAAS,WAAW,QAAQ,MAAM,IAAI,cAAc,uDAAuD,WAAW,KAAK,MAAM,EAAE,EAAE,CAAC,CAAC,QAAQ,OAAO,CAAC,OAAO,SAAS,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE;CAClO,OAAO;AACR;AACA,SAAS,mBAAmB,OAAO;CAClC,MAAM,EAAE,QAAQ,QAAQ,SAAS,QAAQ,aAAa,CAAC,MAAM;CAC7D,MAAM,aAAa,wBAAwB,UAAU;CACrD,MAAM,gBAAgB,IAAI,IAAI,WAAW,KAAK,QAAQ,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;CACpE,MAAM,oBAAoB,WAAW,KAAK,OAAO,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,QAAQ,QAAQ,KAAK,CAAC;CACtG,MAAM,iBAAiB;EACtB;EACA;EACA,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC;EAC1B,GAAG;CACJ;CACA,MAAM,cAAc,mBAAmB,cAAc;CACrD,MAAM,yBAAyB,+BAA+B,cAAc;CAC5E,MAAM,mBAAmB,wBAAwB,cAAc;CAC/D,MAAM,YAAY,kBAAkB,cAAc;CAClD,0BAA0B;EACzB,QAAQ,UAAU;EAClB,eAAe,UAAU;EACzB,QAAQ,eAAe,SAAS,gBAAgB,WAAW,OAAO,YAAY,oBAAoB,CAAC,EAAA,CAAG,KAAK,qBAAqB;GAC/H,SAAS,gBAAgB;GACzB,UAAU,gBAAgB;GAC1B,eAAe,WAAW;EAC3B,EAAE,CAAC;EACH,kBAAkB,eAAe,SAAS,eAAe,OAAO,QAAQ,WAAW,WAAW,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,YAAY;GACrI;GACA;GACA,eAAe,WAAW;EAC3B,EAAE,CAAC;EACH,cAAc,eAAe,QAAQ,uBAAuB;EAC5D,qBAAqB,YAAY,YAAY,gBAAgB,OAAO;CACrE,CAAC;CACD,OAAO;EACN;EACA;EACA;EACA;EACA,YAAY;EACZ,oBAAoB,2BAA2B,iBAAiB;EAChE,kBAAkB,wBAAwB,cAAc;EACxD,2BAA2B,iCAAiC,cAAc;EAC1E,cAAc,oBAAoB,QAAQ,QAAQ,SAAS,iBAAiB;EAC5E;EACA;EACA,WAAW;GACV,SAAS,uBAAuB;GAChC,QAAQ,UAAU;EACnB;EACA,mBAAmB,UAAU;EAC7B,sBAAsB,4BAA4B,cAAc;EAChE;EACA,aAAa,CAAC,GAAG,8BAA8B,uBAAuB,IAAI,CAAC,CAAC,KAAK,CAAC;EAClF,yBAAyB,gCAAgC,cAAc;EACvE,cAAc,wBAAwB,CAAC,GAAG;GACzC;GACA,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC;GAC1B,GAAG;EACJ,CAAC;CACF;AACD;AAGA,MAAM,iBAAiB;AACvB,SAAS,QAAQ,MAAM;CACtB,OAAO,KAAK,KAAK,cAAc;AAChC;;;;;;;;AAQA,SAAS,SAAS,OAAO;CACxB,OAAO,MAAM,aAAa,KAAK;AAChC;;;;;;;;;;;;;;AAcA,SAAS,iBAAiB,MAAM,QAAQ;CACvC,KAAK,IAAI,MAAM,KAAK,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG;EACnD,MAAM,SAAS,OAAO,IAAI,QAAQ,KAAK,MAAM,GAAG,GAAG,CAAC,CAAC;EACrD,IAAI,WAAW,KAAK,GAAG,OAAO;CAC/B;CACA,OAAO,CAAC;AACT;;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,SAAS,0BAA0B,QAAQ;CAC1C,IAAI,OAAO,UAAU,GAAG,OAAO;CAC/B,MAAM,QAAQ,OAAO,KAAK,WAAW;EACpC;EACA,KAAK,QAAQ,MAAM,IAAI;EACvB,UAAU,SAAS,KAAK;EACxB,0BAA0B,IAAI,IAAI;EAClC,UAAU;CACX,EAAE;CACF,MAAM,8BAA8B,IAAI,IAAI;CAC5C,KAAK,MAAM,QAAQ,OAAO;EACzB,MAAM,SAAS,YAAY,IAAI,KAAK,GAAG;EACvC,IAAI,WAAW,KAAK,GAAG,YAAY,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC;OAClD,OAAO,KAAK,IAAI;CACtB;CACA,MAAM,WAAW,QAAQ,UAAU;EAClC,IAAI,OAAO,SAAS,IAAI,KAAK,GAAG;EAChC,OAAO,SAAS,IAAI,KAAK;EACzB,MAAM,YAAY;CACnB;CACA,MAAM,iBAAiB,WAAW,eAAe;EAChD,IAAI,cAAc,YAAY;EAC9B,IAAI,UAAU,UAAU,QAAQ,YAAY,SAAS;OAChD,QAAQ,WAAW,UAAU;CACnC;CACA,KAAK,MAAM,QAAQ,OAAO;EACzB,KAAK,MAAM,cAAc,KAAK,MAAM,aAAa,CAAC,GAAG,KAAK,MAAM,UAAU,YAAY,IAAI,QAAQ,UAAU,CAAC,KAAK,CAAC,GAAG,cAAc,MAAM,MAAM;EAChJ,KAAK,MAAM,YAAY,iBAAiB,KAAK,MAAM,MAAM,WAAW,GAAG,cAAc,MAAM,QAAQ;CACpG;CACA,MAAM,QAAQ,MAAM,QAAQ,SAAS,KAAK,aAAa,CAAC;CACxD,MAAM,QAAQ,CAAC;CACf,OAAO,MAAM,SAAS,GAAG;EACxB,IAAI;EACJ,KAAK,MAAM,aAAa,OAAO,IAAI,SAAS,KAAK,KAAK,UAAU,MAAM,KAAK,KAAK,OAAO;EACvF,IAAI,SAAS,KAAK,GAAG;EACrB,MAAM,OAAO,MAAM,QAAQ,IAAI,GAAG,CAAC;EACnC,MAAM,KAAK,IAAI;EACf,KAAK,MAAM,QAAQ,KAAK,UAAU;GACjC,KAAK,YAAY;GACjB,IAAI,KAAK,aAAa,GAAG,MAAM,KAAK,IAAI;EACzC;CACD;CACA,IAAI,MAAM,WAAW,MAAM,QAAQ;EAClC,MAAM,SAAS,IAAI,IAAI,KAAK;EAC5B,MAAM,IAAI,cAAc,qFAAqF,MAAM,QAAQ,SAAS,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,KAAK,MAAM,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE;CAC9M;CACA,OAAO,MAAM,KAAK,SAAS,KAAK,KAAK;AACtC;;;;;;;AASA,SAAS,aAAa,OAAO;CAC5B,MAAM,cAAc,MAAM,aAAa,KAAK;CAC5C,MAAM,YAAY,MAAM,WAAW,KAAK;CACxC,IAAI,eAAe,WAAW,OAAO;CACrC,IAAI,aAAa,OAAO;CACxB,IAAI,WAAW,OAAO;CACtB,MAAM,IAAI,cAAc,2BAA2B,MAAM,KAAK,KAAK,GAAG,EAAE,iDAAiD;AAC1H;AACA,SAAS,WAAW,MAAM;CACzB,OAAO,KAAK,UAAU,CAAC,KAAK,UAAU,KAAK,EAAE,CAAC;AAC/C;AACA,SAAS,WAAW,KAAK,MAAM;CAC9B,MAAM,MAAM,WAAW,IAAI;CAC3B,IAAI,IAAI,IAAI,GAAG,GAAG,MAAM,IAAI,cAAc,6CAA6C,KAAK,SAAS,GAAG,KAAK,IAAI;CACjH,IAAI,IAAI,KAAK,IAAI;AAClB;AACA,SAAS,mBAAmB,MAAM,YAAY;CAC7C,MAAM,OAAO,CAAC,GAAG,YAAY,KAAK,EAAE;CACpC,OAAO,CAAC;EACP;EACA,UAAU;EACV,GAAG,UAAU,eAAe,KAAK,kBAAkB,KAAK,CAAC,CAAC;CAC3D,GAAG,GAAG,KAAK,SAAS,CAAC,CAAC,SAAS,MAAM,mBAAmB,GAAG,IAAI,CAAC,CAAC;AAClE;AACA,SAAS,iBAAiB,MAAM,YAAY;CAC3C,MAAM,OAAO,CAAC,GAAG,YAAY,KAAK,EAAE;CACpC,OAAO,CAAC;EACP;EACA,QAAQ;CACT,GAAG,GAAG,KAAK,SAAS,CAAC,CAAC,SAAS,MAAM,iBAAiB,GAAG,IAAI,CAAC,CAAC;AAChE;;;;;;;;;;AAUA,SAAS,YAAY,UAAU,QAAQ;CACtC,OAAO,0BAA0B,SAAS,UAAU,QAAQ,CAAC,CAAC,CAAC;AAChE;AACA,SAAS,iBAAiB,KAAK;CAC9B,OAAO,KAAK,UAAU,IAAI,KAAK,SAAS,KAAK,EAAE,CAAC;AACjD;AACA,SAAS,aAAa,MAAM;CAC3B,OAAO,KAAK,UAAU,IAAI;AAC3B;AACA,SAAS,iBAAiB,OAAO;CAChC,QAAQ,MAAM,YAAY,MAAM,OAAA,EAAS;AAC1C;;;;;;;;;;;;;;AAcA,SAAS,0BAA0B,QAAQ;CAC1C,MAAM,+BAA+B,IAAI,IAAI;CAC7C,KAAK,MAAM,SAAS,QAAQ;EAC3B,MAAM,MAAM,aAAa,MAAM,IAAI;EACnC,MAAM,SAAS,aAAa,IAAI,GAAG;EACnC,IAAI,WAAW,KAAK,GAAG,aAAa,IAAI,KAAK,CAAC,KAAK,CAAC;OAC/C,OAAO,KAAK,KAAK;CACvB;CACA,OAAO,OAAO,KAAK,UAAU;EAC5B,MAAM,QAAQ,MAAM,YAAY,MAAM,OAAA,EAAS;EAC/C,IAAI,SAAS,KAAK,KAAK,KAAK,WAAW,GAAG,OAAO;EACjD,MAAM,YAAY,KAAK,SAAS,QAAQ;GACvC,MAAM,WAAW,IAAI,IAAI,SAAS;GAClC,IAAI,aAAa,KAAK,GAAG,OAAO,CAAC;GACjC,IAAI,EAAE,aAAa,IAAI,iBAAiB,GAAG,CAAC,KAAK,CAAC,EAAA,CAAG,MAAM,MAAM,iBAAiB,CAAC,MAAM,SAAS,QAAQ,GAAG,OAAO,CAAC;GACrH,OAAO,CAAC,IAAI,KAAK,SAAS,KAAK,EAAE,CAAC;EACnC,CAAC;EACD,IAAI,UAAU,WAAW,GAAG,OAAO;EACnC,OAAO;GACN,GAAG;GACH;EACD;CACD,CAAC;AACF;AACA,SAAS,SAAS,UAAU,QAAQ,YAAY;CAC/C,MAAM,OAAO,CAAC,GAAG,YAAY,SAAS,EAAE;CACxC,MAAM,SAAS,CAAC;CAChB,IAAI,CAAC,SAAS,UAAU,MAAM,GAAG,OAAO,KAAK;EAC5C;EACA;EACA;EACA,GAAG,UAAU,eAAe,SAAS,kBAAkB,MAAM,CAAC;CAC/D,CAAC;CACD,OAAO,KAAK,GAAG,aAAa,SAAS,SAAS,GAAG,OAAO,SAAS,GAAG,IAAI,CAAC;CACzE,OAAO;AACR;;;;;;;;;AASA,SAAS,aAAa,UAAU,QAAQ,YAAY;CACnD,MAAM,8BAA8B,IAAI,IAAI;CAC5C,KAAK,MAAM,QAAQ,UAAU,WAAW,aAAa,IAAI;CACzD,MAAM,4BAA4B,IAAI,IAAI;CAC1C,KAAK,MAAM,QAAQ,QAAQ,WAAW,WAAW,IAAI;CACrD,MAAM,SAAS,CAAC;CAChB,KAAK,MAAM,CAAC,KAAK,iBAAiB,aAAa;EAC9C,MAAM,aAAa,UAAU,IAAI,GAAG;EACpC,IAAI,eAAe,KAAK,GAAG,OAAO,KAAK,GAAG,mBAAmB,cAAc,UAAU,CAAC;OACjF,OAAO,KAAK,GAAG,SAAS,cAAc,YAAY,UAAU,CAAC;CACnE;CACA,KAAK,MAAM,CAAC,KAAK,eAAe,WAAW,IAAI,CAAC,YAAY,IAAI,GAAG,GAAG,OAAO,KAAK,GAAG,iBAAiB,YAAY,UAAU,CAAC;CAC7H,OAAO;AACR;;;;;;;;;;;;AAYA,IAAI,aAAa,MAAM,WAAW;CACjC;CACA,YAAY,QAAQ;EACnB,KAAK,SAAS;CACf;;CAEA,OAAO,MAAM;EACZ,OAAO,IAAI,WAAW,KAAK,OAAO,OAAO,IAAI,CAAC;CAC/C;AACD;;;;;;;;;;AAYA,SAAS,uBAAuB,eAAe,UAAU;CACxD,IAAI,kBAAkB,YAAY,OAAO;CACzC,IAAI,kBAAkB,eAAe,aAAa,sBAAsB,OAAO;CAC/E,IAAI,kBAAkB,YACjB;MAAA,aAAa,wBAAwB,aAAa,oBAAoB,aAAa,yBAAyB,aAAa,cAAc,OAAO;CAAA;CAEnJ,OAAO;AACR"}
@@ -2,17 +2,17 @@ import { H as LedgerEntryRecord, m as ContractMarkerRecord } from "./domain-enve
2
2
  import { i as ControlPolicy, t as Contract } from "./contract-types-BIaUtO7Z-Bcxx2I74.mjs";
3
3
  import { b as DataTypeLookup, h as CodecRegistry, t as AnyCodecDescriptor, v as DataType, y as DataTypeId } from "./codec-types-8NKqm4AQ-DyNSay3e.mjs";
4
4
  import { C as AuthoringPslBlockDescriptorNamespace, D as AuthoringTypeConstructorDescriptor, N as DataTypeAuthoringEntry, _ as AuthoringModelAttributeDescriptorNamespace, a as AuthoringContributions, f as AuthoringFieldNamespace, k as AuthoringTypeNamespace, p as AuthoringFieldPresetDescriptor, r as AuthoringAttributeSpecContributions, u as AuthoringEntityTypeNamespace } from "./framework-authoring-DRrZ8_s0-CJ7XXqvx.mjs";
5
- import { i as ControlMutationDefaults } from "./mutation-default-types-D_M8NC3U-BQNexfRU.mjs";
6
- import "./temporal-presets-CLsu00ZK-CAx-cLAM.mjs";
5
+ import { i as ControlMutationDefaults } from "./mutation-default-types-CMx8Y9zx-yQN8l2GU.mjs";
6
+ import { r as Result } from "./result-BYCOANWy.mjs";
7
+ import { n as DataTypeSupport } from "./written-value-BB9UYfrg-OiFCVcz2.mjs";
7
8
  import { l as TypesImportSpec, t as AggregateDescriptor } from "./types-import-spec-U2GFdg-x-CRt_XdWj.mjs";
8
9
  import { t as CapabilityMatrix } from "./capabilities-Cupq4-1--C71ORI3N.mjs";
9
- import { a as ComponentMetadata, b as TargetInstance, c as DriverDescriptor, d as ExtensionDescriptor, f as ExtensionInstance, h as FamilyInstance, l as DriverInstance, m as FamilyDescriptor, n as AdapterInstance, t as AdapterDescriptor, v as TargetBoundComponentDescriptor, y as TargetDescriptor } from "./framework-components-DDr6lZoZ-EpXYrZj7.mjs";
10
+ import { a as ComponentMetadata, b as TargetInstance, c as DriverDescriptor, d as ExtensionDescriptor, f as ExtensionInstance, h as FamilyInstance, l as DriverInstance, m as FamilyDescriptor, n as AdapterInstance, t as AdapterDescriptor, v as TargetBoundComponentDescriptor, y as TargetDescriptor } from "./framework-components-BY_7sg-B-ChOD-ovL.mjs";
10
11
  import { r as ImportSpecifierResolver, t as EmissionSpi } from "./emission-types-BpY3maMX-pzm7Xmn7.mjs";
11
12
  import { f as PslDocumentAst } from "./psl-ast-BVYEC5xX-BEqjBVqF.mjs";
12
13
  import { t as ImportRequirement } from "./index-DeSumOoq.mjs";
13
14
  import { n as JsonObject } from "./json-Dkqr3say.mjs";
14
15
  import { i as StorageSort, n as PreserveEmptyPredicate } from "./canonicalization-DufIiCLc-D8HOry-O.mjs";
15
- import { r as Result } from "./result-BYCOANWy.mjs";
16
16
  //#region ../../../1-framework/1-core/framework-components/dist/control.d.mts
17
17
  //#region src/control/contract-serializer.d.ts
18
18
  /**
@@ -1120,8 +1120,8 @@ interface ControlStack<TFamilyId extends string = string, TTargetId extends stri
1120
1120
  /** Every aggregate overload the composed components declare, validated for shape and single ownership at assembly. */
1121
1121
  readonly aggregateDescriptors: ReadonlyArray<AggregateDescriptor>;
1122
1122
  readonly authoringContributions: AssembledAuthoringContributions;
1123
- /** Every data type the composed components register, by id. ADR 254. */
1124
- readonly dataTypeLookup: DataTypeLookup;
1123
+ /** Every data type the composed components register, with the authoring entries that write them. ADR 254. */
1124
+ readonly dataTypes: DataTypeSupport;
1125
1125
  /** Every data type the composed components register, with the id of the component that registered it. ADR 254. */
1126
1126
  readonly declaredDataTypes: ReadonlyArray<{
1127
1127
  readonly type: DataType;
@@ -1512,4 +1512,4 @@ type VerifierIssueCategory = 'declaredMissing' | 'declaredIncompatible' | 'value
1512
1512
  declare function dispositionForCategory(controlPolicy: ControlPolicy, category: VerifierIssueCategory): VerifierOutcome;
1513
1513
  //#endregion
1514
1514
  export { PslContractBuildCapable as $, orderIssuesByDependencies as $t, MigrationOperationPolicy as A, VerifyDatabaseSchemaResult as At, MigrationRunner as B, dispositionForCategory as Bt, EmitContractResult as C, VERIFY_CODE_MARKER_MISSING as Ct, MigratableTargetDescriptor as D, VerifierIssueCategory as Dt, MarkerHashes as E, VerificationStatus as Et, MigrationPlanner as F, buildExtensionLoadOrder as Ft, MigrationRunnerResult as G, extractQueryOperationTypeImports as Gt, MigrationRunnerFailure as H, extractCodecLookup as Ht, MigrationPlannerConflict as I, contractSnapshotJsonSpecifier as It, OpFactoryCall as J, hasPslContractBuild as Jt, MigrationRunnerSuccessValue as K, hasMigrations as Kt, MigrationPlannerFailureResult as L, contractSnapshotTypesSpecifier as Lt, MigrationPlan as M, assembleAuthoringDataTypes as Mt, MigrationPlanOperation as N, assembleControlMutationDefaults as Nt, MigrationMetadata as O, VerifierOutcome as Ot, MigrationPlanWithAuthoringSurface as P, assertUniqueCodecOwner as Pt, OperationPreviewStatement as Q, issueOutcome as Qt, MigrationPlannerResult as R, createControlStack as Rt, DiffableNode as S, VERIFY_CODE_HASH_MISMATCH as St, IntrospectSchemaResult as T, VERIFY_CODE_TARGET_MISMATCH as Tt, MigrationRunnerPerSpaceOptions as U, extractCodecTypeImports as Ut, MigrationRunnerExecutionChecks as V, enforceDataTypeInvariants as Vt, MigrationRunnerPerSpaceSuccessValue as W, extractComponentIds as Wt, OperationPreview as X, hasSchemaSubjectClassifier as Xt, OperationContext as Y, hasPslContractInfer as Yt, OperationPreviewCapable as Z, hasSchemaView as Zt, ControlTargetInstance as _, SpaceMarkerConflict as _t, ContractSpace as a, SchemaEntityCoordinate as at, DataTypeInvariantInput as b, SpaceToSign as bt, ControlAdapterInstance as c, SchemaSubjectClassifierCapable as ct, ControlExtensionDescriptor as d, SchemaTreeVisitor as dt, sameMarkerHashes as en, PslContractDocument as et, ControlExtensionInstance as f, SchemaVerifier as ft, ControlTargetDescriptor as g, SchemaViewNodeKind as gt, ControlStack as h, SchemaViewCapable as ht, ContractSerializer as i, SchemaDiffIssue as it, MigrationPackage as j, assembleAuthoringContributions as jt, MigrationOperationClass as k, VerifyDatabaseResult as kt, ControlDriverDescriptor as l, SchemaTreeNode as lt, ControlFamilyInstance as m, SchemaVerifyResult as mt, AssembledAuthoringContributions as n, PslSourceSettings as nt, ContractSpaceHeadRef as o, SchemaNodeRef as ot, ControlFamilyDescriptor as p, SchemaVerifyOptions as pt, MigrationScaffoldContext as q, hasOperationPreview as qt, CONTRACT_SNAPSHOTS_DIRNAME as r, SchemaDiff as rt, ControlAdapterDescriptor as s, SchemaOwnership as st, APP_SPACE_ID as t, storageHashHex as tn, PslContractInferCapable as tt, ControlDriverInstance as u, SchemaTreeNodeOptions as ut, CoreSchemaView as v, SpaceSignature as vt, ExpectationFailureReason as w, VERIFY_CODE_SCHEMA_FAILURE as wt, DiffSubjectGranularity as x, TargetMigrationsCapability as xt, CreateControlStackInput as y, SpaceSigned as yt, MigrationPlannerSuccessResult as z, diffSchemas as zt };
1515
- //# sourceMappingURL=control-C1x8zzHb.d.mts.map
1515
+ //# sourceMappingURL=control-_4dB7KvO.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"control-C1x8zzHb.d.mts","names":[],"sources":["../../../../1-framework/1-core/framework-components/dist/control.d.mts"],"mappings":"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"}
1
+ {"version":3,"file":"control-_4dB7KvO.d.mts","names":[],"sources":["../../../../1-framework/1-core/framework-components/dist/control.d.mts"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { t as blindCast } from "./casts-DpaahrlC-Bd5n2coI.mjs";
2
2
  import { t as ifDefined } from "./defined-BQWA85QH-BRSBMULx.mjs";
3
3
  import { n as runtimeError } from "./runtime-error-BA9d7XjZ-BlT8t6LB.mjs";
4
- //#region ../../../1-framework/1-core/framework-components/dist/resolve-codec-vOfdHcIJ.mjs
4
+ //#region ../../../1-framework/1-core/framework-components/dist/data-type-4xQlxYB5.mjs
5
5
  /** The whole of what a data type id is: `owner/name` in lower case, with no version. */
6
6
  const DATA_TYPE_ID_PATTERN = /^[a-z0-9]+(?:-[a-z0-9]+)*\/[a-z0-9]+(?:-[a-z0-9]+)*$/;
7
7
  /** Read `id` as a data type id, refusing anything that is not `owner/name` in lower case. */
@@ -90,74 +90,7 @@ function assembleDataTypes(descriptors) {
90
90
  declared
91
91
  };
92
92
  }
93
- const CONTRACT_CODEC_DESCRIPTOR_MISSING = "CONTRACT.CODEC_DESCRIPTOR_MISSING";
94
- /**
95
- * Look up a descriptor for `ref.codecId` using `descriptorFor`; throw
96
- * `code` if none is found. Each plane names its own error path: the control
97
- * plane resolves contract-stack descriptors (`CONTRACT.*`), the execution
98
- * plane resolves at query time (`RUNTIME.*`).
99
- */
100
- function resolveCodecDescriptorOrThrow(descriptorFor, ref, code) {
101
- return descriptorFor(ref.codecId) ?? codecDescriptorMissing(ref, code);
102
- }
103
- /** Throws the error for a codec reference no descriptor has, under the plane's `code`. */
104
- function codecDescriptorMissing(ref, code) {
105
- throw runtimeError(code, `No codec descriptor registered for codecId '${ref.codecId}'.`, { codecId: ref.codecId });
106
- }
107
- function isAbsentOrEmpty(typeParams) {
108
- return typeParams === void 0 || typeof typeParams === "object" && typeParams !== null && !Array.isArray(typeParams) && Object.keys(typeParams).length === 0;
109
- }
110
- /**
111
- * Validates `ref.typeParams` against `descriptor.paramsSchema`.
112
- *
113
- * A codec without a `paramsSchema` takes no params: it accepts absent or empty
114
- * `typeParams` (a bare native-type alias carries `{}`) and rejects anything else.
115
- * A parameterized codec whose ref omits `typeParams` validates `{}` (mirrors
116
- * `ast-codec-resolver.ts` semantics). Throws `RUNTIME.TYPE_PARAMS_INVALID` when
117
- * params are given to a codec without params, or when the validator returns a
118
- * `Promise` or reports issues.
119
- */
120
- function validateCodecTypeParams(descriptor, ref) {
121
- const schema = descriptor.paramsSchema;
122
- if (schema === void 0) {
123
- if (!isAbsentOrEmpty(ref.typeParams)) throw runtimeError("RUNTIME.TYPE_PARAMS_INVALID", `Invalid typeParams for codec '${ref.codecId}': unexpected typeParams for non-parameterized codec`, {
124
- codecId: ref.codecId,
125
- typeParams: ref.typeParams
126
- });
127
- return;
128
- }
129
- const result = blindCast(schema["~standard"].validate(ref.typeParams ?? {}));
130
- if (result instanceof Promise) throw runtimeError("RUNTIME.TYPE_PARAMS_INVALID", `paramsSchema for codec '${ref.codecId}' returned a Promise; runtime validation requires a synchronous Standard Schema validator.`, {
131
- codecId: ref.codecId,
132
- typeParams: ref.typeParams
133
- });
134
- if ("issues" in result && result.issues) {
135
- const messages = result.issues.map((issue) => issue.message).join("; ");
136
- throw runtimeError("RUNTIME.TYPE_PARAMS_INVALID", `Invalid typeParams for codec '${ref.codecId}': ${messages}`, {
137
- codecId: ref.codecId,
138
- typeParams: ref.typeParams
139
- });
140
- }
141
- return blindCast(result).value;
142
- }
143
- /**
144
- * Resolves a `Codec` instance: validates `ref.typeParams` via
145
- * {@link validateCodecTypeParams} then calls `descriptor.factory(validated)(ctx)`
146
- * as a method on `descriptor`, preserving `this` for factories that build
147
- * their returned codec from the descriptor instance (e.g. `new XCodec(this)`).
148
- */
149
- function materializeCodec(descriptor, ref, ctx) {
150
- const validated = validateCodecTypeParams(descriptor, ref);
151
- return descriptor.factory(validated)(ctx);
152
- }
153
- /**
154
- * Builds the codec a codec reference names with the reference's type parameters, so a parameterized codec checks values against them. `undefined` when no descriptor has the id.
155
- */
156
- function codecForRef(lookup, ref) {
157
- const descriptor = lookup.descriptorFor(ref.codecId);
158
- return descriptor === void 0 ? void 0 : materializeCodec(descriptor, ref, { name: ref.codecId });
159
- }
160
93
  //#endregion
161
- export { codecForRef as a, dataTypeId as c, requiredParamKeys as d, requiredSchemaKeys as f, codecDescriptorMissing as i, materializeCodec as l, validateCodecTypeParams as m, DATA_TYPE_ID_PATTERN as n, createDataTypeLookup as o, resolveCodecDescriptorOrThrow as p, assembleDataTypes as r, dataType as s, CONTRACT_CODEC_DESCRIPTOR_MISSING as t, objectSchemaKeys as u };
94
+ export { dataTypeId as a, requiredSchemaKeys as c, dataType as i, assembleDataTypes as n, objectSchemaKeys as o, createDataTypeLookup as r, requiredParamKeys as s, DATA_TYPE_ID_PATTERN as t };
162
95
 
163
- //# sourceMappingURL=resolve-codec-vOfdHcIJ-IeNjz3Tm.mjs.map
96
+ //# sourceMappingURL=data-type-4xQlxYB5-DD158cOq.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-type-4xQlxYB5-DD158cOq.mjs","names":[],"sources":["../../../../1-framework/1-core/framework-components/dist/data-type-4xQlxYB5.mjs"],"sourcesContent":["import { n as runtimeError } from \"./runtime-error-BA9d7XjZ.mjs\";\nimport { blindCast } from \"@internal/utils/casts\";\nimport { ifDefined } from \"@internal/utils/defined\";\n//#region src/shared/data-type.ts\n/** The whole of what a data type id is: `owner/name` in lower case, with no version. */\nconst DATA_TYPE_ID_PATTERN = /^[a-z0-9]+(?:-[a-z0-9]+)*\\/[a-z0-9]+(?:-[a-z0-9]+)*$/;\n/** Read `id` as a data type id, refusing anything that is not `owner/name` in lower case. */\nfunction dataTypeId(id) {\n\tif (!DATA_TYPE_ID_PATTERN.test(id)) throw runtimeError(\"CONTRACT.DATA_TYPE_ID_INVALID\", `\"${id}\" is not a data type id. A data type id is \"owner/name\" in lower case and carries no version, as in \"owner/name\"; a versioned id names a codec.`, { id });\n\treturn blindCast(id);\n}\n/** Declare a data type. Every id it names, its own and each cast's source, is validated here. */\nfunction dataType(id, spec) {\n\tconst casts = {};\n\tfor (const [source, cast] of Object.entries(spec.casts ?? {})) casts[dataTypeId(source)] = cast;\n\tconst listCast = spec.listCast;\n\treturn {\n\t\tid: dataTypeId(id),\n\t\t...ifDefined(\"params\", spec.params),\n\t\tcasts,\n\t\t...listCast === void 0 ? {} : { listCast: {\n\t\t\tof: listCast.of.map(dataTypeId),\n\t\t\tcast: listCast.cast\n\t\t} },\n\t\t...spec.toCanonicalForm === void 0 ? {} : { toCanonicalForm: spec.toCanonicalForm }\n\t};\n}\nfunction isSchemaPropList(value) {\n\treturn Array.isArray(value) && value.every((prop) => prop !== null && (typeof prop === \"object\" || typeof prop === \"function\") && \"key\" in prop);\n}\nfunction describesObjects(schema) {\n\tconst extendsType = Reflect.get(schema, \"extends\");\n\treturn typeof extendsType === \"function\" && extendsType.call(schema, \"object\") === true;\n}\nfunction objectSchemaProps(schema) {\n\tif (schema === null || typeof schema !== \"object\" && typeof schema !== \"function\") return;\n\tif (!describesObjects(schema)) return void 0;\n\tconst props = readProps(schema);\n\treturn isSchemaPropList(props) ? props : void 0;\n}\n/** Arktype throws from `props` for a union or a morph, whose keys it cannot list. */\nfunction readProps(schema) {\n\ttry {\n\t\treturn Reflect.get(schema, \"props\");\n\t} catch {\n\t\treturn;\n\t}\n}\n/** The keys an arktype object schema declares, or undefined when `schema` is not one. */\nfunction objectSchemaKeys(schema) {\n\treturn objectSchemaProps(schema)?.flatMap((prop) => typeof prop.key === \"string\" ? [prop.key] : []);\n}\n/** The required keys an arktype object schema declares, or undefined when `schema` is not one. */\nfunction requiredSchemaKeys(schema) {\n\treturn objectSchemaProps(schema)?.flatMap((prop) => prop.kind === \"required\" && typeof prop.key === \"string\" ? [prop.key] : []);\n}\n/** The parameters a data type requires. */\nfunction requiredParamKeys(type) {\n\treturn requiredSchemaKeys(type.params) ?? [];\n}\nfunction createDataTypeLookup(types) {\n\tconst byId = new Map(types.map((type) => [type.id, type]));\n\treturn {\n\t\tget: (id) => byId.get(id),\n\t\thas: (id) => byId.has(id)\n\t};\n}\n/** Collect every data type the composed components register, refusing two declarations of one id. */\nfunction assembleDataTypes(descriptors) {\n\tconst declared = [];\n\tconst owners = /* @__PURE__ */ new Map();\n\tfor (const descriptor of descriptors) {\n\t\tconst contributedBy = descriptor.id ?? \"<unknown>\";\n\t\tfor (const type of descriptor.dataTypes ?? []) {\n\t\t\tconst existingOwner = owners.get(type.id);\n\t\t\tif (existingOwner !== void 0) throw runtimeError(\"CONTRACT.DATA_TYPE_DUPLICATE\", `Duplicate data type \"${type.id}\". Component \"${contributedBy}\" conflicts with \"${existingOwner}\". Each data type has exactly one owner across the composed stack.`, {\n\t\t\t\tdataType: type.id,\n\t\t\t\tcontributedBy,\n\t\t\t\towner: existingOwner\n\t\t\t});\n\t\t\towners.set(type.id, contributedBy);\n\t\t\tdeclared.push({\n\t\t\t\ttype,\n\t\t\t\tcontributedBy\n\t\t\t});\n\t\t}\n\t}\n\treturn {\n\t\tlookup: createDataTypeLookup(declared.map((entry) => entry.type)),\n\t\tdeclared\n\t};\n}\n//#endregion\nexport { dataTypeId as a, requiredSchemaKeys as c, dataType as i, assembleDataTypes as n, objectSchemaKeys as o, createDataTypeLookup as r, requiredParamKeys as s, DATA_TYPE_ID_PATTERN as t };\n\n//# sourceMappingURL=data-type-4xQlxYB5.mjs.map"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { A as resolvePslBacktickEscapes, c as canonicalizeTaggedLiteralBody } from "./temporal-presets-DIo9uYtS-Odk6WBk8.mjs";
1
+ import { c as canonicalizeTaggedLiteralBody, j as resolvePslBacktickEscapes } from "./temporal-presets-DUCEijgt-CODhqGVy.mjs";
2
2
  import { r as isTerminatedStringLiteral } from "./tokenizer-BMz7z2KR-J0yZ4im3.mjs";
3
3
  import { c as findFirstChild, o as filterChildren, s as findChildToken, t as SyntaxNode, u as readDocComment } from "./ast-helpers-CzydMPdh-Mi0SrZRa.mjs";
4
- //#region ../../../1-framework/2-authoring/psl-parser/dist/declarations-DDT0hm5r.mjs
4
+ //#region ../../../1-framework/2-authoring/psl-parser/dist/declarations-5xLxC310.mjs
5
5
  var IdentifierAst = class IdentifierAst {
6
6
  syntax;
7
7
  constructor(syntax) {
@@ -308,10 +308,10 @@ var TaggedLiteralExprAst = class TaggedLiteralExprAst {
308
308
  canonicalization() {
309
309
  return canonicalizeTaggedLiteralBody(this.literal()?.value() ?? "");
310
310
  }
311
- /** The canonical body shared with the TypeScript `sql` tag, or `undefined` when canonicalization fails. */
312
- body() {
311
+ /** The canonical text shared with the TypeScript `sql` tag, or `undefined` when canonicalization fails. */
312
+ text() {
313
313
  const result = this.canonicalization();
314
- return result.ok ? result.body : void 0;
314
+ return result.ok ? result.text : void 0;
315
315
  }
316
316
  static cast(node) {
317
317
  return node.kind === "TaggedLiteral" ? new TaggedLiteralExprAst(node) : void 0;
@@ -822,4 +822,4 @@ var NamedTypeDeclarationAst = class NamedTypeDeclarationAst {
822
822
  //#endregion
823
823
  export { TaggedLiteralExprAst as C, dottedPathsIn as D, castExpression as E, StringLiteralExprAst as S, TypesBlockAst as T, NumberLiteralExprAst as _, CompositeTypeDeclarationAst as a, PathExprAst as b, FieldDeclarationAst as c, IdentifierAst as d, KeyValuePairAst as f, NamespaceDeclarationAst as g, NamedTypeDeclarationAst as h, BooleanLiteralExprAst as i, FunctionCallAst as l, ModelDeclarationAst as m, AttributeArgAst as n, DocumentAst as o, ModelAttributeAst as p, AttributeArgListAst as r, FieldAttributeAst as s, ArrayLiteralAst as t, GenericBlockDeclarationAst as u, ObjectFieldAst as v, TypeAnnotationAst as w, QualifiedNameAst as x, ObjectLiteralExprAst as y };
824
824
 
825
- //# sourceMappingURL=declarations-DDT0hm5r-BZoOKiu1.mjs.map
825
+ //# sourceMappingURL=declarations-5xLxC310-R3-Z4vcK.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"declarations-DDT0hm5r-BZoOKiu1.mjs","names":["#segmentBefore","#segmentAfter","#separatorCount","#questionTokens"],"sources":["../../../../1-framework/2-authoring/psl-parser/dist/declarations-DDT0hm5r.mjs"],"sourcesContent":["import { r as isTerminatedStringLiteral } from \"./tokenizer-BMz7z2KR.mjs\";\nimport { i as findFirstChild, n as filterChildren, o as readDocComment, r as findChildToken, s as SyntaxNode } from \"./ast-helpers-CzydMPdh.mjs\";\nimport { canonicalizeTaggedLiteralBody, resolvePslBacktickEscapes } from \"@internal/framework-components/control\";\n//#region src/syntax/ast/identifier.ts\nvar IdentifierAst = class IdentifierAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\ttoken() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tname() {\n\t\treturn this.token()?.text;\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"Identifier\" ? new IdentifierAst(node) : void 0;\n\t}\n};\n//#endregion\n//#region src/syntax/ast/qualified-name.ts\n/** A namespace-qualified name, e.g. `pgvector.Vector` or `supabase:auth.User`. */\nvar QualifiedNameAst = class QualifiedNameAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\t#segmentBefore(boundary) {\n\t\tlet found;\n\t\tfor (const segment of filterChildren(this.syntax, IdentifierAst.cast)) {\n\t\t\tif (segment.syntax.offset >= boundary) break;\n\t\t\tfound = segment;\n\t\t}\n\t\treturn found;\n\t}\n\t#segmentAfter(boundary) {\n\t\tfor (const segment of filterChildren(this.syntax, IdentifierAst.cast)) if (segment.syntax.offset > boundary) return segment;\n\t}\n\t#separatorCount(kind) {\n\t\tlet count = 0;\n\t\tfor (const child of this.syntax.children()) if (!(child instanceof SyntaxNode) && child.kind === kind) count++;\n\t\treturn count;\n\t}\n\tcolon() {\n\t\treturn findChildToken(this.syntax, \"Colon\");\n\t}\n\tdot() {\n\t\treturn findChildToken(this.syntax, \"Dot\");\n\t}\n\tspace() {\n\t\tconst colon = this.colon();\n\t\tif (!colon) return void 0;\n\t\treturn this.#segmentBefore(colon.offset);\n\t}\n\tnamespace() {\n\t\tconst dot = this.dot();\n\t\tif (!dot) return void 0;\n\t\treturn this.#segmentBefore(dot.offset);\n\t}\n\tidentifier() {\n\t\tconst dot = this.dot();\n\t\tif (dot) return this.#segmentAfter(dot.offset);\n\t\tconst colon = this.colon();\n\t\tif (colon) return this.#segmentAfter(colon.offset);\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tsegments() {\n\t\treturn filterChildren(this.syntax, IdentifierAst.cast);\n\t}\n\t/**\n\t* Every identifier segment, in source order. A bare `Vector` yields\n\t* `['Vector']`; a qualified `pgvector.Vector` yields `['pgvector', 'Vector']`.\n\t*/\n\tpath() {\n\t\tconst segments = [];\n\t\tfor (const segment of this.segments()) {\n\t\t\tconst text = segment.token()?.text;\n\t\t\tif (text !== void 0) segments.push(text);\n\t\t}\n\t\treturn segments;\n\t}\n\t/** True iff this is a single unqualified identifier whose text equals `name`. */\n\tisSimpleName(name) {\n\t\tif (this.dot() !== void 0 || this.colon() !== void 0) return false;\n\t\treturn this.identifier()?.token()?.text === name;\n\t}\n\t/**\n\t* Flags a malformed name with more qualifier segments than allowed (a second\n\t* `:`-space or a second `.`-namespace).\n\t*/\n\tisOverQualified() {\n\t\treturn this.#separatorCount(\"Dot\") > 1 || this.#separatorCount(\"Colon\") > 1;\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"QualifiedName\" ? new QualifiedNameAst(node) : void 0;\n\t}\n};\n//#endregion\n//#region src/syntax/ast/expressions.ts\nvar FunctionCallAst = class FunctionCallAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\t/** The callee when it is a bare name, such as `now` in `now()`; `undefined` when the callee is dotted. */\n\tname() {\n\t\treturn findFirstChild(this.syntax, QualifiedNameAst.cast);\n\t}\n\t/**\n\t* The callee's segments, in source order. A bare `Vector(…)` yields\n\t* `['Vector']`; `pgvector.Vector(…)` yields `['pgvector', 'Vector']`;\n\t* `address.geo.lat(…)` yields `['address', 'geo', 'lat']`. Empty when the\n\t* call carries no identifier.\n\t*/\n\tpath() {\n\t\treturn segmentNames((this.name() ?? this.memberPath())?.syntax ?? this.syntax);\n\t}\n\t/** The callee when it is dotted, such as `address.city` in `address.city(sort: Asc)`; `undefined` for a bare callee. */\n\tmemberPath() {\n\t\treturn findFirstChild(this.syntax, PathExprAst.cast);\n\t}\n\tlparen() {\n\t\treturn findChildToken(this.syntax, \"LParen\");\n\t}\n\trparen() {\n\t\treturn findChildToken(this.syntax, \"RParen\");\n\t}\n\t*args() {\n\t\tyield* filterChildren(this.syntax, AttributeArgAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"FunctionCall\" ? new FunctionCallAst(node) : void 0;\n\t}\n};\nfunction segmentNames(node) {\n\tconst segments = [];\n\tfor (const segment of filterChildren(node, IdentifierAst.cast)) {\n\t\tconst text = segment.token()?.text;\n\t\tif (text !== void 0) segments.push(text);\n\t}\n\treturn segments;\n}\n/** A dotted member path in expression position, such as `address.city` in `@@index([address.city])`. */\nvar PathExprAst = class PathExprAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\t*segments() {\n\t\tyield* filterChildren(this.syntax, IdentifierAst.cast);\n\t}\n\t/**\n\t* The segment names, in source order: `['address', 'city']` for `address.city`. A path that ends\n\t* in a `.` with no name after it, as in `address.`, ends in an empty name.\n\t*/\n\tpath() {\n\t\tconst segments = segmentNames(this.syntax);\n\t\treturn this.syntax.lastToken?.kind === \"Dot\" ? [...segments, \"\"] : segments;\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"PathExpr\" ? new PathExprAst(node) : void 0;\n\t}\n};\nvar ArrayLiteralAst = class ArrayLiteralAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tlbracket() {\n\t\treturn findChildToken(this.syntax, \"LBracket\");\n\t}\n\trbracket() {\n\t\treturn findChildToken(this.syntax, \"RBracket\");\n\t}\n\t*elements() {\n\t\tyield* filterChildren(this.syntax, castExpression);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"ArrayLiteral\" ? new ArrayLiteralAst(node) : void 0;\n\t}\n};\nconst HEX = /^[0-9a-fA-F]+$/;\nfunction decodeFixedHex(raw, start, width) {\n\tif (start + width > raw.length) return void 0;\n\tconst hex = raw.slice(start, start + width);\n\tif (!HEX.test(hex)) return void 0;\n\treturn String.fromCharCode(Number.parseInt(hex, 16));\n}\nfunction decodeStringLiteral(raw) {\n\tlet out = \"\";\n\tlet i = 0;\n\twhile (i < raw.length) {\n\t\tconst ch = raw.charAt(i);\n\t\tif (ch !== \"\\\\\" || i + 1 >= raw.length) {\n\t\t\tout += ch;\n\t\t\ti++;\n\t\t\tcontinue;\n\t\t}\n\t\tconst next = raw.charAt(i + 1);\n\t\tswitch (next) {\n\t\t\tcase \"/\":\n\t\t\t\tout += \"/\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"b\":\n\t\t\t\tout += \"\\b\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"f\":\n\t\t\t\tout += \"\\f\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"n\":\n\t\t\t\tout += \"\\n\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"r\":\n\t\t\t\tout += \"\\r\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"t\":\n\t\t\t\tout += \"\t\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"\\\"\":\n\t\t\t\tout += \"\\\"\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"'\":\n\t\t\t\tout += \"'\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"\\\\\":\n\t\t\t\tout += \"\\\\\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"x\": {\n\t\t\t\tconst decoded = decodeFixedHex(raw, i + 2, 2);\n\t\t\t\tif (decoded === void 0) {\n\t\t\t\t\tout += \"\\\\x\";\n\t\t\t\t\ti += 2;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tout += decoded;\n\t\t\t\ti += 4;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tcase \"u\": {\n\t\t\t\tconst decoded = decodeFixedHex(raw, i + 2, 4);\n\t\t\t\tif (decoded === void 0) {\n\t\t\t\t\tout += \"\\\\u\";\n\t\t\t\t\ti += 2;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tout += decoded;\n\t\t\t\ti += 6;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tdefault:\n\t\t\t\tout += `\\\\${next}`;\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t}\n\t}\n\treturn out;\n}\nvar StringLiteralExprAst = class StringLiteralExprAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\ttoken() {\n\t\treturn findChildToken(this.syntax, \"StringLiteral\");\n\t}\n\tquote() {\n\t\tconst quote = this.token()?.text.charAt(0);\n\t\treturn quote === \"\\\"\" || quote === \"'\" || quote === \"`\" ? quote : void 0;\n\t}\n\t/**\n\t* The decoded string. A `\"` or `'` string resolves the usual escapes; a backtick string resolves\n\t* only `` \\` `` and `\\\\`, keeping every other backslash sequence as written.\n\t*/\n\tvalue() {\n\t\tconst tok = this.token();\n\t\tif (!tok) return void 0;\n\t\tconst raw = isTerminatedStringLiteral(tok.text) ? tok.text.slice(1, -1) : tok.text.slice(1);\n\t\treturn this.quote() === \"`\" ? resolvePslBacktickEscapes(raw) : decodeStringLiteral(raw);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"StringLiteralExpr\" ? new StringLiteralExprAst(node) : void 0;\n\t}\n};\n/** `` tag`body` ``, `tag\"body\"`, or `tag'body'`: a qualified-name tag followed by a string literal. */\nvar TaggedLiteralExprAst = class TaggedLiteralExprAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\ttag() {\n\t\treturn findFirstChild(this.syntax, QualifiedNameAst.cast);\n\t}\n\t/** The tag without trivia, e.g. `postgis.geometry`. */\n\ttagName() {\n\t\tconst tag = this.tag();\n\t\tconst space = tag?.space()?.name();\n\t\tconst namespace = tag?.namespace()?.name();\n\t\treturn (space === void 0 ? \"\" : `${space}:`) + (namespace === void 0 ? \"\" : `${namespace}.`) + (tag?.identifier()?.name() ?? \"\");\n\t}\n\tliteral() {\n\t\treturn findFirstChild(this.syntax, StringLiteralExprAst.cast);\n\t}\n\tcanonicalization() {\n\t\treturn canonicalizeTaggedLiteralBody(this.literal()?.value() ?? \"\");\n\t}\n\t/** The canonical body shared with the TypeScript `sql` tag, or `undefined` when canonicalization fails. */\n\tbody() {\n\t\tconst result = this.canonicalization();\n\t\treturn result.ok ? result.body : void 0;\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"TaggedLiteral\" ? new TaggedLiteralExprAst(node) : void 0;\n\t}\n};\nvar NumberLiteralExprAst = class NumberLiteralExprAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\ttoken() {\n\t\treturn findChildToken(this.syntax, \"NumberLiteral\");\n\t}\n\tvalue() {\n\t\tconst tok = this.token();\n\t\tif (!tok) return void 0;\n\t\treturn Number(tok.text);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"NumberLiteralExpr\" ? new NumberLiteralExprAst(node) : void 0;\n\t}\n};\nvar BooleanLiteralExprAst = class BooleanLiteralExprAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\ttoken() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tvalue() {\n\t\tconst tok = this.token();\n\t\tif (!tok) return void 0;\n\t\tif (tok.text === \"true\") return true;\n\t\tif (tok.text === \"false\") return false;\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"BooleanLiteralExpr\" ? new BooleanLiteralExprAst(node) : void 0;\n\t}\n};\nvar ObjectLiteralExprAst = class ObjectLiteralExprAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tlbrace() {\n\t\treturn findChildToken(this.syntax, \"LBrace\");\n\t}\n\trbrace() {\n\t\treturn findChildToken(this.syntax, \"RBrace\");\n\t}\n\t*fields() {\n\t\tyield* filterChildren(this.syntax, ObjectFieldAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"ObjectLiteralExpr\" ? new ObjectLiteralExprAst(node) : void 0;\n\t}\n};\nvar ObjectFieldAst = class ObjectFieldAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkey() {\n\t\tfor (const child of this.syntax.children()) {\n\t\t\tif (!(child instanceof SyntaxNode)) {\n\t\t\t\tif (child.kind === \"Colon\") break;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\treturn IdentifierAst.cast(child);\n\t\t}\n\t}\n\t/**\n\t* The field's logical key name, unquoted. An identifier key (`length:`) yields\n\t* its text; a string-literal key (`\"length\":`) yields the decoded string.\n\t* `undefined` when the field carries no key node.\n\t*/\n\tkeyName() {\n\t\tfor (const child of this.syntax.children()) {\n\t\t\tif (!(child instanceof SyntaxNode)) {\n\t\t\t\tif (child.kind === \"Colon\") break;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tconst identifier = IdentifierAst.cast(child);\n\t\t\tif (identifier) return identifier.token()?.text;\n\t\t\tconst stringKey = StringLiteralExprAst.cast(child);\n\t\t\tif (stringKey) return stringKey.value();\n\t\t\treturn;\n\t\t}\n\t}\n\tcolon() {\n\t\treturn findChildToken(this.syntax, \"Colon\");\n\t}\n\tvalue() {\n\t\tif (this.colon()) {\n\t\t\tlet pastColon = false;\n\t\t\tfor (const child of this.syntax.children()) {\n\t\t\t\tif (!(child instanceof SyntaxNode)) {\n\t\t\t\t\tif (child.kind === \"Colon\") pastColon = true;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (pastColon) {\n\t\t\t\t\tconst expr = castExpression(child);\n\t\t\t\t\tif (expr) return expr;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\treturn findFirstChild(this.syntax, castExpression);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"ObjectField\" ? new ObjectFieldAst(node) : void 0;\n\t}\n};\n/** Every dotted path in an expression: the expression itself, a dotted callee, or a path inside a list, record or call argument. */\nfunction dottedPathsIn(expression) {\n\tconst paths = [];\n\tfor (const element of expression.syntax.descendants()) {\n\t\tconst path = element instanceof SyntaxNode ? PathExprAst.cast(element) : void 0;\n\t\tif (path !== void 0) paths.push(path);\n\t}\n\treturn paths;\n}\nfunction castExpression(node) {\n\treturn FunctionCallAst.cast(node) ?? ArrayLiteralAst.cast(node) ?? StringLiteralExprAst.cast(node) ?? TaggedLiteralExprAst.cast(node) ?? NumberLiteralExprAst.cast(node) ?? BooleanLiteralExprAst.cast(node) ?? ObjectLiteralExprAst.cast(node) ?? PathExprAst.cast(node) ?? IdentifierAst.cast(node);\n}\nvar AttributeArgAst = class AttributeArgAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tname() {\n\t\tif (!this.colon()) return void 0;\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tcolon() {\n\t\treturn findChildToken(this.syntax, \"Colon\");\n\t}\n\tvalue() {\n\t\tif (this.colon()) {\n\t\t\tlet pastColon = false;\n\t\t\tfor (const child of this.syntax.children()) {\n\t\t\t\tif (!(child instanceof SyntaxNode)) {\n\t\t\t\t\tif (child.kind === \"Colon\") pastColon = true;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (pastColon) {\n\t\t\t\t\tconst expr = castExpression(child);\n\t\t\t\t\tif (expr) return expr;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\treturn findFirstChild(this.syntax, castExpression);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"AttributeArg\" ? new AttributeArgAst(node) : void 0;\n\t}\n};\n//#endregion\n//#region src/syntax/ast/attributes.ts\nvar AttributeArgListAst = class AttributeArgListAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tlparen() {\n\t\treturn findChildToken(this.syntax, \"LParen\");\n\t}\n\trparen() {\n\t\treturn findChildToken(this.syntax, \"RParen\");\n\t}\n\t*args() {\n\t\tyield* filterChildren(this.syntax, AttributeArgAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"AttributeArgList\" ? new AttributeArgListAst(node) : void 0;\n\t}\n};\nvar FieldAttributeAst = class FieldAttributeAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tat() {\n\t\treturn findChildToken(this.syntax, \"At\");\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, QualifiedNameAst.cast);\n\t}\n\targList() {\n\t\treturn findFirstChild(this.syntax, AttributeArgListAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"FieldAttribute\" ? new FieldAttributeAst(node) : void 0;\n\t}\n};\nvar ModelAttributeAst = class ModelAttributeAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tdoubleAt() {\n\t\treturn findChildToken(this.syntax, \"DoubleAt\");\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, QualifiedNameAst.cast);\n\t}\n\targList() {\n\t\treturn findFirstChild(this.syntax, AttributeArgListAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"ModelAttribute\" ? new ModelAttributeAst(node) : void 0;\n\t}\n};\n//#endregion\n//#region src/syntax/ast/type-annotation.ts\nvar TypeAnnotationAst = class TypeAnnotationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\t/** The annotation's reference, doubling as the constructor callee when an {@link argList} follows. */\n\tname() {\n\t\treturn findFirstChild(this.syntax, QualifiedNameAst.cast);\n\t}\n\t/** Present when the annotation is a constructor (`Vector(1536)`) rather than a plain reference. */\n\targList() {\n\t\treturn findFirstChild(this.syntax, AttributeArgListAst.cast);\n\t}\n\tisConstructor() {\n\t\treturn this.argList() !== void 0;\n\t}\n\tlbracket() {\n\t\treturn findChildToken(this.syntax, \"LBracket\");\n\t}\n\trbracket() {\n\t\treturn findChildToken(this.syntax, \"RBracket\");\n\t}\n\tquestionMark() {\n\t\treturn findChildToken(this.syntax, \"Question\");\n\t}\n\tisList() {\n\t\treturn this.lbracket() !== void 0;\n\t}\n\t/**\n\t* The list/field axis: a `?` after `]` (list nullable) or, when this is not a\n\t* list, the sole field-level `?`. A `?` before `[` is the element axis and\n\t* does not count here.\n\t*/\n\tisOptional() {\n\t\tconst lbracket = this.lbracket();\n\t\tif (lbracket === void 0) return this.questionMark() !== void 0;\n\t\tconst anchor = this.rbracket() ?? lbracket;\n\t\treturn this.#questionTokens().some((question) => question.index > anchor.index);\n\t}\n\t/** The element axis: a `?` positioned before `[`, meaningful only for lists. */\n\tisElementOptional() {\n\t\tconst lbracket = this.lbracket();\n\t\tif (lbracket === void 0) return false;\n\t\treturn this.#questionTokens().some((question) => question.index < lbracket.index);\n\t}\n\t#questionTokens() {\n\t\tconst result = [];\n\t\tfor (const child of this.syntax.children()) if (!(child instanceof SyntaxNode) && child.kind === \"Question\") result.push(child);\n\t\treturn result;\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"TypeAnnotation\" ? new TypeAnnotationAst(node) : void 0;\n\t}\n};\n//#endregion\n//#region src/syntax/ast/declarations.ts\nfunction castNamespaceMember(node) {\n\treturn ModelDeclarationAst.cast(node) ?? CompositeTypeDeclarationAst.cast(node) ?? GenericBlockDeclarationAst.cast(node);\n}\nvar DocumentAst = class DocumentAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\t*declarations() {\n\t\tyield* filterChildren(this.syntax, (node) => castNamespaceMember(node) ?? TypesBlockAst.cast(node) ?? NamespaceDeclarationAst.cast(node));\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"Document\" ? new DocumentAst(node) : void 0;\n\t}\n};\nvar ModelDeclarationAst = class ModelDeclarationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkeyword() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tlbrace() {\n\t\treturn findChildToken(this.syntax, \"LBrace\");\n\t}\n\trbrace() {\n\t\treturn findChildToken(this.syntax, \"RBrace\");\n\t}\n\t*fields() {\n\t\tyield* filterChildren(this.syntax, FieldDeclarationAst.cast);\n\t}\n\t*attributes() {\n\t\tyield* filterChildren(this.syntax, ModelAttributeAst.cast);\n\t}\n\t*members() {\n\t\tyield* filterChildren(this.syntax, (node) => FieldDeclarationAst.cast(node) ?? ModelAttributeAst.cast(node));\n\t}\n\tdocComment() {\n\t\treturn readDocComment(this.syntax);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"ModelDeclaration\" ? new ModelDeclarationAst(node) : void 0;\n\t}\n};\nvar CompositeTypeDeclarationAst = class CompositeTypeDeclarationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkeyword() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tlbrace() {\n\t\treturn findChildToken(this.syntax, \"LBrace\");\n\t}\n\trbrace() {\n\t\treturn findChildToken(this.syntax, \"RBrace\");\n\t}\n\t*fields() {\n\t\tyield* filterChildren(this.syntax, FieldDeclarationAst.cast);\n\t}\n\t*attributes() {\n\t\tyield* filterChildren(this.syntax, ModelAttributeAst.cast);\n\t}\n\t*members() {\n\t\tyield* filterChildren(this.syntax, (node) => FieldDeclarationAst.cast(node) ?? ModelAttributeAst.cast(node));\n\t}\n\tdocComment() {\n\t\treturn readDocComment(this.syntax);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"CompositeTypeDeclaration\" ? new CompositeTypeDeclarationAst(node) : void 0;\n\t}\n};\nvar NamespaceDeclarationAst = class NamespaceDeclarationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkeyword() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tlbrace() {\n\t\treturn findChildToken(this.syntax, \"LBrace\");\n\t}\n\trbrace() {\n\t\treturn findChildToken(this.syntax, \"RBrace\");\n\t}\n\t*declarations() {\n\t\tyield* filterChildren(this.syntax, castNamespaceMember);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"Namespace\" ? new NamespaceDeclarationAst(node) : void 0;\n\t}\n};\nvar TypesBlockAst = class TypesBlockAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkeyword() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tlbrace() {\n\t\treturn findChildToken(this.syntax, \"LBrace\");\n\t}\n\trbrace() {\n\t\treturn findChildToken(this.syntax, \"RBrace\");\n\t}\n\t*declarations() {\n\t\tyield* filterChildren(this.syntax, NamedTypeDeclarationAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"TypesBlock\" ? new TypesBlockAst(node) : void 0;\n\t}\n};\nvar GenericBlockDeclarationAst = class GenericBlockDeclarationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkeyword() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tlbrace() {\n\t\treturn findChildToken(this.syntax, \"LBrace\");\n\t}\n\trbrace() {\n\t\treturn findChildToken(this.syntax, \"RBrace\");\n\t}\n\t*entries() {\n\t\tyield* filterChildren(this.syntax, KeyValuePairAst.cast);\n\t}\n\t/** Field lines of a `view` body. Empty for every other generic block. */\n\t*fields() {\n\t\tyield* filterChildren(this.syntax, FieldDeclarationAst.cast);\n\t}\n\t*attributes() {\n\t\tyield* filterChildren(this.syntax, ModelAttributeAst.cast);\n\t}\n\t*members() {\n\t\tyield* filterChildren(this.syntax, (node) => KeyValuePairAst.cast(node) ?? ModelAttributeAst.cast(node));\n\t}\n\tdocComment() {\n\t\treturn readDocComment(this.syntax);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"GenericBlockDeclaration\" ? new GenericBlockDeclarationAst(node) : void 0;\n\t}\n};\nvar KeyValuePairAst = class KeyValuePairAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkey() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tequals() {\n\t\treturn findChildToken(this.syntax, \"Equals\");\n\t}\n\tvalue() {\n\t\tlet pastEquals = false;\n\t\tfor (const child of this.syntax.children()) {\n\t\t\tif (!(child instanceof SyntaxNode)) {\n\t\t\t\tif (child.kind === \"Equals\") pastEquals = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (pastEquals) {\n\t\t\t\tconst expr = castExpression(child);\n\t\t\t\tif (expr) return expr;\n\t\t\t}\n\t\t}\n\t}\n\t/** `@` attributes after the key or value, as in `USER @map(\"user\")`. */\n\t*attributes() {\n\t\tyield* filterChildren(this.syntax, FieldAttributeAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"KeyValuePair\" ? new KeyValuePairAst(node) : void 0;\n\t}\n};\nvar FieldDeclarationAst = class FieldDeclarationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\ttypeAnnotation() {\n\t\treturn findFirstChild(this.syntax, TypeAnnotationAst.cast);\n\t}\n\t*attributes() {\n\t\tyield* filterChildren(this.syntax, FieldAttributeAst.cast);\n\t}\n\tdocComment() {\n\t\treturn readDocComment(this.syntax);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"FieldDeclaration\" ? new FieldDeclarationAst(node) : void 0;\n\t}\n};\nvar NamedTypeDeclarationAst = class NamedTypeDeclarationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tequals() {\n\t\treturn findChildToken(this.syntax, \"Equals\");\n\t}\n\ttypeAnnotation() {\n\t\treturn findFirstChild(this.syntax, TypeAnnotationAst.cast);\n\t}\n\t*attributes() {\n\t\tyield* filterChildren(this.syntax, FieldAttributeAst.cast);\n\t}\n\tdocComment() {\n\t\treturn readDocComment(this.syntax);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"NamedTypeDeclaration\" ? new NamedTypeDeclarationAst(node) : void 0;\n\t}\n};\n//#endregion\nexport { TaggedLiteralExprAst as C, IdentifierAst as D, QualifiedNameAst as E, StringLiteralExprAst as S, dottedPathsIn as T, FunctionCallAst as _, KeyValuePairAst as a, ObjectLiteralExprAst as b, NamespaceDeclarationAst as c, AttributeArgListAst as d, FieldAttributeAst as f, BooleanLiteralExprAst as g, AttributeArgAst as h, GenericBlockDeclarationAst as i, TypesBlockAst as l, ArrayLiteralAst as m, DocumentAst as n, ModelDeclarationAst as o, ModelAttributeAst as p, FieldDeclarationAst as r, NamedTypeDeclarationAst as s, CompositeTypeDeclarationAst as t, TypeAnnotationAst as u, NumberLiteralExprAst as v, castExpression as w, PathExprAst as x, ObjectFieldAst as y };\n\n//# sourceMappingURL=declarations-DDT0hm5r.mjs.map"],"mappings":"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"}
1
+ {"version":3,"file":"declarations-5xLxC310-R3-Z4vcK.mjs","names":["#segmentBefore","#segmentAfter","#separatorCount","#questionTokens"],"sources":["../../../../1-framework/2-authoring/psl-parser/dist/declarations-5xLxC310.mjs"],"sourcesContent":["import { r as isTerminatedStringLiteral } from \"./tokenizer-BMz7z2KR.mjs\";\nimport { i as findFirstChild, n as filterChildren, o as readDocComment, r as findChildToken, s as SyntaxNode } from \"./ast-helpers-CzydMPdh.mjs\";\nimport { canonicalizeTaggedLiteralBody, resolvePslBacktickEscapes } from \"@internal/framework-components/control\";\n//#region src/syntax/ast/identifier.ts\nvar IdentifierAst = class IdentifierAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\ttoken() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tname() {\n\t\treturn this.token()?.text;\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"Identifier\" ? new IdentifierAst(node) : void 0;\n\t}\n};\n//#endregion\n//#region src/syntax/ast/qualified-name.ts\n/** A namespace-qualified name, e.g. `pgvector.Vector` or `supabase:auth.User`. */\nvar QualifiedNameAst = class QualifiedNameAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\t#segmentBefore(boundary) {\n\t\tlet found;\n\t\tfor (const segment of filterChildren(this.syntax, IdentifierAst.cast)) {\n\t\t\tif (segment.syntax.offset >= boundary) break;\n\t\t\tfound = segment;\n\t\t}\n\t\treturn found;\n\t}\n\t#segmentAfter(boundary) {\n\t\tfor (const segment of filterChildren(this.syntax, IdentifierAst.cast)) if (segment.syntax.offset > boundary) return segment;\n\t}\n\t#separatorCount(kind) {\n\t\tlet count = 0;\n\t\tfor (const child of this.syntax.children()) if (!(child instanceof SyntaxNode) && child.kind === kind) count++;\n\t\treturn count;\n\t}\n\tcolon() {\n\t\treturn findChildToken(this.syntax, \"Colon\");\n\t}\n\tdot() {\n\t\treturn findChildToken(this.syntax, \"Dot\");\n\t}\n\tspace() {\n\t\tconst colon = this.colon();\n\t\tif (!colon) return void 0;\n\t\treturn this.#segmentBefore(colon.offset);\n\t}\n\tnamespace() {\n\t\tconst dot = this.dot();\n\t\tif (!dot) return void 0;\n\t\treturn this.#segmentBefore(dot.offset);\n\t}\n\tidentifier() {\n\t\tconst dot = this.dot();\n\t\tif (dot) return this.#segmentAfter(dot.offset);\n\t\tconst colon = this.colon();\n\t\tif (colon) return this.#segmentAfter(colon.offset);\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tsegments() {\n\t\treturn filterChildren(this.syntax, IdentifierAst.cast);\n\t}\n\t/**\n\t* Every identifier segment, in source order. A bare `Vector` yields\n\t* `['Vector']`; a qualified `pgvector.Vector` yields `['pgvector', 'Vector']`.\n\t*/\n\tpath() {\n\t\tconst segments = [];\n\t\tfor (const segment of this.segments()) {\n\t\t\tconst text = segment.token()?.text;\n\t\t\tif (text !== void 0) segments.push(text);\n\t\t}\n\t\treturn segments;\n\t}\n\t/** True iff this is a single unqualified identifier whose text equals `name`. */\n\tisSimpleName(name) {\n\t\tif (this.dot() !== void 0 || this.colon() !== void 0) return false;\n\t\treturn this.identifier()?.token()?.text === name;\n\t}\n\t/**\n\t* Flags a malformed name with more qualifier segments than allowed (a second\n\t* `:`-space or a second `.`-namespace).\n\t*/\n\tisOverQualified() {\n\t\treturn this.#separatorCount(\"Dot\") > 1 || this.#separatorCount(\"Colon\") > 1;\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"QualifiedName\" ? new QualifiedNameAst(node) : void 0;\n\t}\n};\n//#endregion\n//#region src/syntax/ast/expressions.ts\nvar FunctionCallAst = class FunctionCallAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\t/** The callee when it is a bare name, such as `now` in `now()`; `undefined` when the callee is dotted. */\n\tname() {\n\t\treturn findFirstChild(this.syntax, QualifiedNameAst.cast);\n\t}\n\t/**\n\t* The callee's segments, in source order. A bare `Vector(…)` yields\n\t* `['Vector']`; `pgvector.Vector(…)` yields `['pgvector', 'Vector']`;\n\t* `address.geo.lat(…)` yields `['address', 'geo', 'lat']`. Empty when the\n\t* call carries no identifier.\n\t*/\n\tpath() {\n\t\treturn segmentNames((this.name() ?? this.memberPath())?.syntax ?? this.syntax);\n\t}\n\t/** The callee when it is dotted, such as `address.city` in `address.city(sort: Asc)`; `undefined` for a bare callee. */\n\tmemberPath() {\n\t\treturn findFirstChild(this.syntax, PathExprAst.cast);\n\t}\n\tlparen() {\n\t\treturn findChildToken(this.syntax, \"LParen\");\n\t}\n\trparen() {\n\t\treturn findChildToken(this.syntax, \"RParen\");\n\t}\n\t*args() {\n\t\tyield* filterChildren(this.syntax, AttributeArgAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"FunctionCall\" ? new FunctionCallAst(node) : void 0;\n\t}\n};\nfunction segmentNames(node) {\n\tconst segments = [];\n\tfor (const segment of filterChildren(node, IdentifierAst.cast)) {\n\t\tconst text = segment.token()?.text;\n\t\tif (text !== void 0) segments.push(text);\n\t}\n\treturn segments;\n}\n/** A dotted member path in expression position, such as `address.city` in `@@index([address.city])`. */\nvar PathExprAst = class PathExprAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\t*segments() {\n\t\tyield* filterChildren(this.syntax, IdentifierAst.cast);\n\t}\n\t/**\n\t* The segment names, in source order: `['address', 'city']` for `address.city`. A path that ends\n\t* in a `.` with no name after it, as in `address.`, ends in an empty name.\n\t*/\n\tpath() {\n\t\tconst segments = segmentNames(this.syntax);\n\t\treturn this.syntax.lastToken?.kind === \"Dot\" ? [...segments, \"\"] : segments;\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"PathExpr\" ? new PathExprAst(node) : void 0;\n\t}\n};\nvar ArrayLiteralAst = class ArrayLiteralAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tlbracket() {\n\t\treturn findChildToken(this.syntax, \"LBracket\");\n\t}\n\trbracket() {\n\t\treturn findChildToken(this.syntax, \"RBracket\");\n\t}\n\t*elements() {\n\t\tyield* filterChildren(this.syntax, castExpression);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"ArrayLiteral\" ? new ArrayLiteralAst(node) : void 0;\n\t}\n};\nconst HEX = /^[0-9a-fA-F]+$/;\nfunction decodeFixedHex(raw, start, width) {\n\tif (start + width > raw.length) return void 0;\n\tconst hex = raw.slice(start, start + width);\n\tif (!HEX.test(hex)) return void 0;\n\treturn String.fromCharCode(Number.parseInt(hex, 16));\n}\nfunction decodeStringLiteral(raw) {\n\tlet out = \"\";\n\tlet i = 0;\n\twhile (i < raw.length) {\n\t\tconst ch = raw.charAt(i);\n\t\tif (ch !== \"\\\\\" || i + 1 >= raw.length) {\n\t\t\tout += ch;\n\t\t\ti++;\n\t\t\tcontinue;\n\t\t}\n\t\tconst next = raw.charAt(i + 1);\n\t\tswitch (next) {\n\t\t\tcase \"/\":\n\t\t\t\tout += \"/\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"b\":\n\t\t\t\tout += \"\\b\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"f\":\n\t\t\t\tout += \"\\f\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"n\":\n\t\t\t\tout += \"\\n\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"r\":\n\t\t\t\tout += \"\\r\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"t\":\n\t\t\t\tout += \"\t\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"\\\"\":\n\t\t\t\tout += \"\\\"\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"'\":\n\t\t\t\tout += \"'\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"\\\\\":\n\t\t\t\tout += \"\\\\\";\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t\tcase \"x\": {\n\t\t\t\tconst decoded = decodeFixedHex(raw, i + 2, 2);\n\t\t\t\tif (decoded === void 0) {\n\t\t\t\t\tout += \"\\\\x\";\n\t\t\t\t\ti += 2;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tout += decoded;\n\t\t\t\ti += 4;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tcase \"u\": {\n\t\t\t\tconst decoded = decodeFixedHex(raw, i + 2, 4);\n\t\t\t\tif (decoded === void 0) {\n\t\t\t\t\tout += \"\\\\u\";\n\t\t\t\t\ti += 2;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tout += decoded;\n\t\t\t\ti += 6;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tdefault:\n\t\t\t\tout += `\\\\${next}`;\n\t\t\t\ti += 2;\n\t\t\t\tcontinue;\n\t\t}\n\t}\n\treturn out;\n}\nvar StringLiteralExprAst = class StringLiteralExprAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\ttoken() {\n\t\treturn findChildToken(this.syntax, \"StringLiteral\");\n\t}\n\tquote() {\n\t\tconst quote = this.token()?.text.charAt(0);\n\t\treturn quote === \"\\\"\" || quote === \"'\" || quote === \"`\" ? quote : void 0;\n\t}\n\t/**\n\t* The decoded string. A `\"` or `'` string resolves the usual escapes; a backtick string resolves\n\t* only `` \\` `` and `\\\\`, keeping every other backslash sequence as written.\n\t*/\n\tvalue() {\n\t\tconst tok = this.token();\n\t\tif (!tok) return void 0;\n\t\tconst raw = isTerminatedStringLiteral(tok.text) ? tok.text.slice(1, -1) : tok.text.slice(1);\n\t\treturn this.quote() === \"`\" ? resolvePslBacktickEscapes(raw) : decodeStringLiteral(raw);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"StringLiteralExpr\" ? new StringLiteralExprAst(node) : void 0;\n\t}\n};\n/** `` tag`body` ``, `tag\"body\"`, or `tag'body'`: a qualified-name tag followed by a string literal. */\nvar TaggedLiteralExprAst = class TaggedLiteralExprAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\ttag() {\n\t\treturn findFirstChild(this.syntax, QualifiedNameAst.cast);\n\t}\n\t/** The tag without trivia, e.g. `postgis.geometry`. */\n\ttagName() {\n\t\tconst tag = this.tag();\n\t\tconst space = tag?.space()?.name();\n\t\tconst namespace = tag?.namespace()?.name();\n\t\treturn (space === void 0 ? \"\" : `${space}:`) + (namespace === void 0 ? \"\" : `${namespace}.`) + (tag?.identifier()?.name() ?? \"\");\n\t}\n\tliteral() {\n\t\treturn findFirstChild(this.syntax, StringLiteralExprAst.cast);\n\t}\n\tcanonicalization() {\n\t\treturn canonicalizeTaggedLiteralBody(this.literal()?.value() ?? \"\");\n\t}\n\t/** The canonical text shared with the TypeScript `sql` tag, or `undefined` when canonicalization fails. */\n\ttext() {\n\t\tconst result = this.canonicalization();\n\t\treturn result.ok ? result.text : void 0;\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"TaggedLiteral\" ? new TaggedLiteralExprAst(node) : void 0;\n\t}\n};\nvar NumberLiteralExprAst = class NumberLiteralExprAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\ttoken() {\n\t\treturn findChildToken(this.syntax, \"NumberLiteral\");\n\t}\n\tvalue() {\n\t\tconst tok = this.token();\n\t\tif (!tok) return void 0;\n\t\treturn Number(tok.text);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"NumberLiteralExpr\" ? new NumberLiteralExprAst(node) : void 0;\n\t}\n};\nvar BooleanLiteralExprAst = class BooleanLiteralExprAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\ttoken() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tvalue() {\n\t\tconst tok = this.token();\n\t\tif (!tok) return void 0;\n\t\tif (tok.text === \"true\") return true;\n\t\tif (tok.text === \"false\") return false;\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"BooleanLiteralExpr\" ? new BooleanLiteralExprAst(node) : void 0;\n\t}\n};\nvar ObjectLiteralExprAst = class ObjectLiteralExprAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tlbrace() {\n\t\treturn findChildToken(this.syntax, \"LBrace\");\n\t}\n\trbrace() {\n\t\treturn findChildToken(this.syntax, \"RBrace\");\n\t}\n\t*fields() {\n\t\tyield* filterChildren(this.syntax, ObjectFieldAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"ObjectLiteralExpr\" ? new ObjectLiteralExprAst(node) : void 0;\n\t}\n};\nvar ObjectFieldAst = class ObjectFieldAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkey() {\n\t\tfor (const child of this.syntax.children()) {\n\t\t\tif (!(child instanceof SyntaxNode)) {\n\t\t\t\tif (child.kind === \"Colon\") break;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\treturn IdentifierAst.cast(child);\n\t\t}\n\t}\n\t/**\n\t* The field's logical key name, unquoted. An identifier key (`length:`) yields\n\t* its text; a string-literal key (`\"length\":`) yields the decoded string.\n\t* `undefined` when the field carries no key node.\n\t*/\n\tkeyName() {\n\t\tfor (const child of this.syntax.children()) {\n\t\t\tif (!(child instanceof SyntaxNode)) {\n\t\t\t\tif (child.kind === \"Colon\") break;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tconst identifier = IdentifierAst.cast(child);\n\t\t\tif (identifier) return identifier.token()?.text;\n\t\t\tconst stringKey = StringLiteralExprAst.cast(child);\n\t\t\tif (stringKey) return stringKey.value();\n\t\t\treturn;\n\t\t}\n\t}\n\tcolon() {\n\t\treturn findChildToken(this.syntax, \"Colon\");\n\t}\n\tvalue() {\n\t\tif (this.colon()) {\n\t\t\tlet pastColon = false;\n\t\t\tfor (const child of this.syntax.children()) {\n\t\t\t\tif (!(child instanceof SyntaxNode)) {\n\t\t\t\t\tif (child.kind === \"Colon\") pastColon = true;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (pastColon) {\n\t\t\t\t\tconst expr = castExpression(child);\n\t\t\t\t\tif (expr) return expr;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\treturn findFirstChild(this.syntax, castExpression);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"ObjectField\" ? new ObjectFieldAst(node) : void 0;\n\t}\n};\n/** Every dotted path in an expression: the expression itself, a dotted callee, or a path inside a list, record or call argument. */\nfunction dottedPathsIn(expression) {\n\tconst paths = [];\n\tfor (const element of expression.syntax.descendants()) {\n\t\tconst path = element instanceof SyntaxNode ? PathExprAst.cast(element) : void 0;\n\t\tif (path !== void 0) paths.push(path);\n\t}\n\treturn paths;\n}\nfunction castExpression(node) {\n\treturn FunctionCallAst.cast(node) ?? ArrayLiteralAst.cast(node) ?? StringLiteralExprAst.cast(node) ?? TaggedLiteralExprAst.cast(node) ?? NumberLiteralExprAst.cast(node) ?? BooleanLiteralExprAst.cast(node) ?? ObjectLiteralExprAst.cast(node) ?? PathExprAst.cast(node) ?? IdentifierAst.cast(node);\n}\nvar AttributeArgAst = class AttributeArgAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tname() {\n\t\tif (!this.colon()) return void 0;\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tcolon() {\n\t\treturn findChildToken(this.syntax, \"Colon\");\n\t}\n\tvalue() {\n\t\tif (this.colon()) {\n\t\t\tlet pastColon = false;\n\t\t\tfor (const child of this.syntax.children()) {\n\t\t\t\tif (!(child instanceof SyntaxNode)) {\n\t\t\t\t\tif (child.kind === \"Colon\") pastColon = true;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (pastColon) {\n\t\t\t\t\tconst expr = castExpression(child);\n\t\t\t\t\tif (expr) return expr;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\treturn findFirstChild(this.syntax, castExpression);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"AttributeArg\" ? new AttributeArgAst(node) : void 0;\n\t}\n};\n//#endregion\n//#region src/syntax/ast/attributes.ts\nvar AttributeArgListAst = class AttributeArgListAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tlparen() {\n\t\treturn findChildToken(this.syntax, \"LParen\");\n\t}\n\trparen() {\n\t\treturn findChildToken(this.syntax, \"RParen\");\n\t}\n\t*args() {\n\t\tyield* filterChildren(this.syntax, AttributeArgAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"AttributeArgList\" ? new AttributeArgListAst(node) : void 0;\n\t}\n};\nvar FieldAttributeAst = class FieldAttributeAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tat() {\n\t\treturn findChildToken(this.syntax, \"At\");\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, QualifiedNameAst.cast);\n\t}\n\targList() {\n\t\treturn findFirstChild(this.syntax, AttributeArgListAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"FieldAttribute\" ? new FieldAttributeAst(node) : void 0;\n\t}\n};\nvar ModelAttributeAst = class ModelAttributeAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tdoubleAt() {\n\t\treturn findChildToken(this.syntax, \"DoubleAt\");\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, QualifiedNameAst.cast);\n\t}\n\targList() {\n\t\treturn findFirstChild(this.syntax, AttributeArgListAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"ModelAttribute\" ? new ModelAttributeAst(node) : void 0;\n\t}\n};\n//#endregion\n//#region src/syntax/ast/type-annotation.ts\nvar TypeAnnotationAst = class TypeAnnotationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\t/** The annotation's reference, doubling as the constructor callee when an {@link argList} follows. */\n\tname() {\n\t\treturn findFirstChild(this.syntax, QualifiedNameAst.cast);\n\t}\n\t/** Present when the annotation is a constructor (`Vector(1536)`) rather than a plain reference. */\n\targList() {\n\t\treturn findFirstChild(this.syntax, AttributeArgListAst.cast);\n\t}\n\tisConstructor() {\n\t\treturn this.argList() !== void 0;\n\t}\n\tlbracket() {\n\t\treturn findChildToken(this.syntax, \"LBracket\");\n\t}\n\trbracket() {\n\t\treturn findChildToken(this.syntax, \"RBracket\");\n\t}\n\tquestionMark() {\n\t\treturn findChildToken(this.syntax, \"Question\");\n\t}\n\tisList() {\n\t\treturn this.lbracket() !== void 0;\n\t}\n\t/**\n\t* The list/field axis: a `?` after `]` (list nullable) or, when this is not a\n\t* list, the sole field-level `?`. A `?` before `[` is the element axis and\n\t* does not count here.\n\t*/\n\tisOptional() {\n\t\tconst lbracket = this.lbracket();\n\t\tif (lbracket === void 0) return this.questionMark() !== void 0;\n\t\tconst anchor = this.rbracket() ?? lbracket;\n\t\treturn this.#questionTokens().some((question) => question.index > anchor.index);\n\t}\n\t/** The element axis: a `?` positioned before `[`, meaningful only for lists. */\n\tisElementOptional() {\n\t\tconst lbracket = this.lbracket();\n\t\tif (lbracket === void 0) return false;\n\t\treturn this.#questionTokens().some((question) => question.index < lbracket.index);\n\t}\n\t#questionTokens() {\n\t\tconst result = [];\n\t\tfor (const child of this.syntax.children()) if (!(child instanceof SyntaxNode) && child.kind === \"Question\") result.push(child);\n\t\treturn result;\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"TypeAnnotation\" ? new TypeAnnotationAst(node) : void 0;\n\t}\n};\n//#endregion\n//#region src/syntax/ast/declarations.ts\nfunction castNamespaceMember(node) {\n\treturn ModelDeclarationAst.cast(node) ?? CompositeTypeDeclarationAst.cast(node) ?? GenericBlockDeclarationAst.cast(node);\n}\nvar DocumentAst = class DocumentAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\t*declarations() {\n\t\tyield* filterChildren(this.syntax, (node) => castNamespaceMember(node) ?? TypesBlockAst.cast(node) ?? NamespaceDeclarationAst.cast(node));\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"Document\" ? new DocumentAst(node) : void 0;\n\t}\n};\nvar ModelDeclarationAst = class ModelDeclarationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkeyword() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tlbrace() {\n\t\treturn findChildToken(this.syntax, \"LBrace\");\n\t}\n\trbrace() {\n\t\treturn findChildToken(this.syntax, \"RBrace\");\n\t}\n\t*fields() {\n\t\tyield* filterChildren(this.syntax, FieldDeclarationAst.cast);\n\t}\n\t*attributes() {\n\t\tyield* filterChildren(this.syntax, ModelAttributeAst.cast);\n\t}\n\t*members() {\n\t\tyield* filterChildren(this.syntax, (node) => FieldDeclarationAst.cast(node) ?? ModelAttributeAst.cast(node));\n\t}\n\tdocComment() {\n\t\treturn readDocComment(this.syntax);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"ModelDeclaration\" ? new ModelDeclarationAst(node) : void 0;\n\t}\n};\nvar CompositeTypeDeclarationAst = class CompositeTypeDeclarationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkeyword() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tlbrace() {\n\t\treturn findChildToken(this.syntax, \"LBrace\");\n\t}\n\trbrace() {\n\t\treturn findChildToken(this.syntax, \"RBrace\");\n\t}\n\t*fields() {\n\t\tyield* filterChildren(this.syntax, FieldDeclarationAst.cast);\n\t}\n\t*attributes() {\n\t\tyield* filterChildren(this.syntax, ModelAttributeAst.cast);\n\t}\n\t*members() {\n\t\tyield* filterChildren(this.syntax, (node) => FieldDeclarationAst.cast(node) ?? ModelAttributeAst.cast(node));\n\t}\n\tdocComment() {\n\t\treturn readDocComment(this.syntax);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"CompositeTypeDeclaration\" ? new CompositeTypeDeclarationAst(node) : void 0;\n\t}\n};\nvar NamespaceDeclarationAst = class NamespaceDeclarationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkeyword() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tlbrace() {\n\t\treturn findChildToken(this.syntax, \"LBrace\");\n\t}\n\trbrace() {\n\t\treturn findChildToken(this.syntax, \"RBrace\");\n\t}\n\t*declarations() {\n\t\tyield* filterChildren(this.syntax, castNamespaceMember);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"Namespace\" ? new NamespaceDeclarationAst(node) : void 0;\n\t}\n};\nvar TypesBlockAst = class TypesBlockAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkeyword() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tlbrace() {\n\t\treturn findChildToken(this.syntax, \"LBrace\");\n\t}\n\trbrace() {\n\t\treturn findChildToken(this.syntax, \"RBrace\");\n\t}\n\t*declarations() {\n\t\tyield* filterChildren(this.syntax, NamedTypeDeclarationAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"TypesBlock\" ? new TypesBlockAst(node) : void 0;\n\t}\n};\nvar GenericBlockDeclarationAst = class GenericBlockDeclarationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkeyword() {\n\t\treturn findChildToken(this.syntax, \"Ident\");\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tlbrace() {\n\t\treturn findChildToken(this.syntax, \"LBrace\");\n\t}\n\trbrace() {\n\t\treturn findChildToken(this.syntax, \"RBrace\");\n\t}\n\t*entries() {\n\t\tyield* filterChildren(this.syntax, KeyValuePairAst.cast);\n\t}\n\t/** Field lines of a `view` body. Empty for every other generic block. */\n\t*fields() {\n\t\tyield* filterChildren(this.syntax, FieldDeclarationAst.cast);\n\t}\n\t*attributes() {\n\t\tyield* filterChildren(this.syntax, ModelAttributeAst.cast);\n\t}\n\t*members() {\n\t\tyield* filterChildren(this.syntax, (node) => KeyValuePairAst.cast(node) ?? ModelAttributeAst.cast(node));\n\t}\n\tdocComment() {\n\t\treturn readDocComment(this.syntax);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"GenericBlockDeclaration\" ? new GenericBlockDeclarationAst(node) : void 0;\n\t}\n};\nvar KeyValuePairAst = class KeyValuePairAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tkey() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tequals() {\n\t\treturn findChildToken(this.syntax, \"Equals\");\n\t}\n\tvalue() {\n\t\tlet pastEquals = false;\n\t\tfor (const child of this.syntax.children()) {\n\t\t\tif (!(child instanceof SyntaxNode)) {\n\t\t\t\tif (child.kind === \"Equals\") pastEquals = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (pastEquals) {\n\t\t\t\tconst expr = castExpression(child);\n\t\t\t\tif (expr) return expr;\n\t\t\t}\n\t\t}\n\t}\n\t/** `@` attributes after the key or value, as in `USER @map(\"user\")`. */\n\t*attributes() {\n\t\tyield* filterChildren(this.syntax, FieldAttributeAst.cast);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"KeyValuePair\" ? new KeyValuePairAst(node) : void 0;\n\t}\n};\nvar FieldDeclarationAst = class FieldDeclarationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\ttypeAnnotation() {\n\t\treturn findFirstChild(this.syntax, TypeAnnotationAst.cast);\n\t}\n\t*attributes() {\n\t\tyield* filterChildren(this.syntax, FieldAttributeAst.cast);\n\t}\n\tdocComment() {\n\t\treturn readDocComment(this.syntax);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"FieldDeclaration\" ? new FieldDeclarationAst(node) : void 0;\n\t}\n};\nvar NamedTypeDeclarationAst = class NamedTypeDeclarationAst {\n\tsyntax;\n\tconstructor(syntax) {\n\t\tthis.syntax = syntax;\n\t}\n\tname() {\n\t\treturn findFirstChild(this.syntax, IdentifierAst.cast);\n\t}\n\tequals() {\n\t\treturn findChildToken(this.syntax, \"Equals\");\n\t}\n\ttypeAnnotation() {\n\t\treturn findFirstChild(this.syntax, TypeAnnotationAst.cast);\n\t}\n\t*attributes() {\n\t\tyield* filterChildren(this.syntax, FieldAttributeAst.cast);\n\t}\n\tdocComment() {\n\t\treturn readDocComment(this.syntax);\n\t}\n\tstatic cast(node) {\n\t\treturn node.kind === \"NamedTypeDeclaration\" ? new NamedTypeDeclarationAst(node) : void 0;\n\t}\n};\n//#endregion\nexport { TaggedLiteralExprAst as C, IdentifierAst as D, QualifiedNameAst as E, StringLiteralExprAst as S, dottedPathsIn as T, FunctionCallAst as _, KeyValuePairAst as a, ObjectLiteralExprAst as b, NamespaceDeclarationAst as c, AttributeArgListAst as d, FieldAttributeAst as f, BooleanLiteralExprAst as g, AttributeArgAst as h, GenericBlockDeclarationAst as i, TypesBlockAst as l, ArrayLiteralAst as m, DocumentAst as n, ModelDeclarationAst as o, ModelAttributeAst as p, FieldDeclarationAst as r, NamedTypeDeclarationAst as s, CompositeTypeDeclarationAst as t, TypeAnnotationAst as u, NumberLiteralExprAst as v, castExpression as w, PathExprAst as x, ObjectFieldAst as y };\n\n//# sourceMappingURL=declarations-5xLxC310.mjs.map"],"mappings":"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"}
package/dist/errors.d.mts CHANGED
@@ -1,4 +1,4 @@
1
1
  import { C as errorTargetMigrationNotSupported, S as errorQueryRunnerFactoryRequired, _ as errorJsonFormatNotSupported, a as errorConfigFileNotFound, b as errorMigrationPlanningFailed, c as errorContractConfigMissing, d as errorDatabaseConnectionRequired, f as errorDriverRequired, g as errorInvalidOutputFormat, h as errorFileNotFound, i as errorConfigEvaluationFailed, l as errorContractMissingExtensions, m as errorFamilyReadMarkerSqlRequired, n as CliErrorEnvelope, o as errorConfigValidation, p as errorEnumCodecNotInPackStack, r as CliStructuredError, s as errorConfigVersionMarkerMissing, t as CliErrorConflict, u as errorContractValidationFailed, v as errorMigrationCliInvalidConfigArg, w as errorUnexpected, x as errorOutputFormatMutex, y as errorMigrationCliUnknownFlag } from "./control-CJlRO0fS-DW9k9mRB.mjs";
2
- import { a as errorHashMismatch, c as errorMarkerRequired, d as errorRuntime, f as errorSchemaVerificationFailed, g as withMarkerReadErrorHandling, h as rethrowMarkerReadError, i as errorDestructiveChanges, l as errorMarkerRowCorrupt, m as parseMarkerRowSafely, n as ERROR_CODE_DESTRUCTIVE_CHANGES, o as errorMarkerMissing, p as errorTargetMismatch, r as errorConsentPlanMismatch, s as errorMarkerReadFailed, t as ERROR_CODE_CONSENT_PLAN_MISMATCH, u as errorRunnerFailed } from "./execution-o-z5gzZh.mjs";
2
+ import { a as errorHashMismatch, c as errorMarkerRequired, d as errorRuntime, f as errorSchemaVerificationFailed, g as withMarkerReadErrorHandling, h as rethrowMarkerReadError, i as errorDestructiveChanges, l as errorMarkerRowCorrupt, m as parseMarkerRowSafely, n as ERROR_CODE_DESTRUCTIVE_CHANGES, o as errorMarkerMissing, p as errorTargetMismatch, r as errorConsentPlanMismatch, s as errorMarkerReadFailed, t as ERROR_CODE_CONSENT_PLAN_MISMATCH, u as errorRunnerFailed } from "./execution-Utsq8aY6.mjs";
3
3
  import { a as errorMigrationPlanNotArray, c as placeholder, i as errorMigrationOperationOptionRemoved, n as errorMigrationFileMissing, o as errorMigrationTargetMismatch, r as errorMigrationInvalidDefaultExport, s as errorUnfilledPlaceholder, t as errorDataTransformContractMismatch } from "./migration-o0OGRAcI.mjs";
4
4
  export { type CliErrorConflict, type CliErrorEnvelope, CliStructuredError, ERROR_CODE_CONSENT_PLAN_MISMATCH, ERROR_CODE_DESTRUCTIVE_CHANGES, errorConfigEvaluationFailed, errorConfigFileNotFound, errorConfigValidation, errorConfigVersionMarkerMissing, errorConsentPlanMismatch, errorContractConfigMissing, errorContractMissingExtensions, errorContractValidationFailed, errorDataTransformContractMismatch, errorDatabaseConnectionRequired, errorDestructiveChanges, errorDriverRequired, errorEnumCodecNotInPackStack, errorFamilyReadMarkerSqlRequired, errorFileNotFound, errorHashMismatch, errorInvalidOutputFormat, errorJsonFormatNotSupported, errorMarkerMissing, errorMarkerReadFailed, errorMarkerRequired, errorMarkerRowCorrupt, errorMigrationCliInvalidConfigArg, errorMigrationCliUnknownFlag, errorMigrationFileMissing, errorMigrationInvalidDefaultExport, errorMigrationOperationOptionRemoved, errorMigrationPlanNotArray, errorMigrationPlanningFailed, errorMigrationTargetMismatch, errorOutputFormatMutex, errorQueryRunnerFactoryRequired, errorRunnerFailed, errorRuntime, errorSchemaVerificationFailed, errorTargetMigrationNotSupported, errorTargetMismatch, errorUnexpected, errorUnfilledPlaceholder, parseMarkerRowSafely, placeholder, rethrowMarkerReadError, withMarkerReadErrorHandling };
@@ -1,2 +1,2 @@
1
- import { a as errorHashMismatch, c as errorMarkerRequired, d as errorRuntime, f as errorSchemaVerificationFailed, g as withMarkerReadErrorHandling, h as rethrowMarkerReadError, i as errorDestructiveChanges, l as errorMarkerRowCorrupt, m as parseMarkerRowSafely, n as ERROR_CODE_DESTRUCTIVE_CHANGES, o as errorMarkerMissing, p as errorTargetMismatch, r as errorConsentPlanMismatch, s as errorMarkerReadFailed, t as ERROR_CODE_CONSENT_PLAN_MISMATCH, u as errorRunnerFailed } from "./execution-o-z5gzZh.mjs";
1
+ import { a as errorHashMismatch, c as errorMarkerRequired, d as errorRuntime, f as errorSchemaVerificationFailed, g as withMarkerReadErrorHandling, h as rethrowMarkerReadError, i as errorDestructiveChanges, l as errorMarkerRowCorrupt, m as parseMarkerRowSafely, n as ERROR_CODE_DESTRUCTIVE_CHANGES, o as errorMarkerMissing, p as errorTargetMismatch, r as errorConsentPlanMismatch, s as errorMarkerReadFailed, t as ERROR_CODE_CONSENT_PLAN_MISMATCH, u as errorRunnerFailed } from "./execution-Utsq8aY6.mjs";
2
2
  export { ERROR_CODE_CONSENT_PLAN_MISMATCH, ERROR_CODE_DESTRUCTIVE_CHANGES, errorConsentPlanMismatch, errorDestructiveChanges, errorHashMismatch, errorMarkerMissing, errorMarkerReadFailed, errorMarkerRequired, errorMarkerRowCorrupt, errorRunnerFailed, errorRuntime, errorSchemaVerificationFailed, errorTargetMismatch, parseMarkerRowSafely, rethrowMarkerReadError, withMarkerReadErrorHandling };