@prisma/orm-framework 8.0.0-rc.1-dev.28 → 8.0.0-rc.1-dev.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{codec-D6TctTla.mjs → codec-4A4n5x6T.mjs} +2 -2
- package/dist/{codec-D6TctTla.mjs.map → codec-4A4n5x6T.mjs.map} +1 -1
- package/dist/components.mjs +3 -3
- package/dist/components__authoring.mjs +1 -1
- package/dist/components__codec.mjs +1 -1
- package/dist/components__control.mjs +1 -1
- package/dist/contract-authoring.mjs +2 -2
- package/dist/contract.mjs +2 -2
- package/dist/contract__default-namespace.mjs +1 -1
- package/dist/contract__types.mjs +2 -2
- package/dist/{control-C_8057XM-DMCFN-Wb.mjs → control-C9JfxzPo-C4JAdFMg.mjs} +22 -3
- package/dist/control-C9JfxzPo-C4JAdFMg.mjs.map +1 -0
- package/dist/{control-DFqSH2EY.mjs → control-DuiafB_U.mjs} +2 -2
- package/dist/{control-DFqSH2EY.mjs.map → control-DuiafB_U.mjs.map} +1 -1
- package/dist/{control-BWHddgfQ-CHZkHCnz.d.mts → control-ql9N9u4f-Dz4QqSR1.d.mts} +17 -3
- package/dist/control-ql9N9u4f-Dz4QqSR1.d.mts.map +1 -0
- package/dist/{default-namespace-D4vCwkXg-BaiW8LNK.mjs → default-namespace-D4vCwkXg-yt1Ch4tq.mjs} +2 -2
- package/dist/{default-namespace-D4vCwkXg-BaiW8LNK.mjs.map → default-namespace-D4vCwkXg-yt1Ch4tq.mjs.map} +1 -1
- package/dist/{dist-DFakQfiQ.mjs → dist-CC1FPJKo.mjs} +2 -2
- package/dist/{dist-DFakQfiQ.mjs.map → dist-CC1FPJKo.mjs.map} +1 -1
- package/dist/errors.d.mts +3 -3
- package/dist/errors.mjs +3 -3
- package/dist/errors__control.d.mts +1 -1
- package/dist/errors__control.mjs +1 -1
- package/dist/errors__execution.d.mts +1 -1
- package/dist/errors__execution.mjs +1 -1
- package/dist/errors__migration.d.mts +1 -1
- package/dist/errors__migration.mjs +1 -1
- package/dist/{execution-BRMViM_W.mjs → execution-CXy93CMh.mjs} +35 -4
- package/dist/execution-CXy93CMh.mjs.map +1 -0
- package/dist/{execution-CStuUgUf.d.mts → execution-Cs6rxLIE.d.mts} +5 -2
- package/dist/execution-Cs6rxLIE.d.mts.map +1 -0
- package/dist/{framework-authoring-CDEvlouU-mlMWSksD.mjs → framework-authoring-CDEvlouU-CD43IJTJ.mjs} +2 -2
- package/dist/{framework-authoring-CDEvlouU-mlMWSksD.mjs.map → framework-authoring-CDEvlouU-CD43IJTJ.mjs.map} +1 -1
- package/dist/ids.mjs +1 -1
- package/dist/{migration-dka5vLtm.d.mts → migration-CSc3ZZK3.d.mts} +2 -2
- package/dist/{migration-dka5vLtm.d.mts.map → migration-CSc3ZZK3.d.mts.map} +1 -1
- package/dist/{migration-DdUmzx06.mjs → migration-jmLnbo_A.mjs} +11 -2
- package/dist/migration-jmLnbo_A.mjs.map +1 -0
- package/dist/operations.mjs +1 -1
- package/dist/psl-parser.mjs +1 -1
- package/dist/psl-parser__format.mjs +1 -1
- package/dist/psl-printer.mjs +2 -2
- package/dist/structured-error-BBdCpY44.d.mts +59 -0
- package/dist/structured-error-BBdCpY44.d.mts.map +1 -0
- package/dist/{structured-error-H6WU9Kjt.mjs → structured-error-xG_PRmbb.mjs} +2 -1
- package/dist/structured-error-xG_PRmbb.mjs.map +1 -0
- package/dist/ts-render.mjs +1 -1
- package/dist/{types-DgdgskBY.mjs → types-B1qkza2E.mjs} +2 -2
- package/dist/{types-DgdgskBY.mjs.map → types-B1qkza2E.mjs.map} +1 -1
- package/dist/utils.d.mts +2 -2
- package/dist/utils.mjs +1 -1
- package/dist/utils__structured-error.d.mts +2 -2
- package/dist/utils__structured-error.mjs +1 -1
- package/package.json +15 -15
- package/dist/control-BWHddgfQ-CHZkHCnz.d.mts.map +0 -1
- package/dist/control-C_8057XM-DMCFN-Wb.mjs.map +0 -1
- package/dist/execution-BRMViM_W.mjs.map +0 -1
- package/dist/execution-CStuUgUf.d.mts.map +0 -1
- package/dist/migration-DdUmzx06.mjs.map +0 -1
- package/dist/structured-error-BVmv2aPB.d.mts +0 -34
- package/dist/structured-error-BVmv2aPB.d.mts.map +0 -1
- package/dist/structured-error-H6WU9Kjt.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-namespace-D4vCwkXg-
|
|
1
|
+
{"version":3,"file":"default-namespace-D4vCwkXg-yt1Ch4tq.mjs","names":[],"sources":["../../../../1-framework/0-foundation/contract/dist/default-namespace-D4vCwkXg.mjs"],"sourcesContent":["import { structuredError } from \"@internal/utils/structured-error\";\n//#region src/contract-errors.ts\nfunction contractError(code, message, options) {\n\treturn structuredError(code, message, options);\n}\n//#endregion\n//#region src/default-namespace.ts\n/**\n* Reserved sentinel domain namespace id for the late-bound application-domain\n* slot — the namespace a model lands in when it is authored without an explicit\n* namespace. This is target-agnostic: targets that allow un-namespaced\n* authoring (e.g. Mongo, SQLite) declare this id as their default on the target\n* descriptor; the framework names the sentinel, never a target. Mirrors\n* storage's `UNBOUND_NAMESPACE_ID` on the domain plane.\n*/\nconst UNBOUND_DOMAIN_NAMESPACE_ID = \"__unbound__\";\n/**\n* Resolve the single domain namespace of a single-namespace contract.\n*\n* Bare-name access (`db.User`) reads \"the contract's one namespace\". Every\n* contract in scope today declares exactly one domain namespace, so this is\n* exact — there is nothing to infer. A contract that declares more than one\n* namespace is ambiguous for a bare name, so rather than silently pick one this\n* throws; cross-namespace selection is made explicit (TML-2550).\n*/\nfunction soleDomainNamespaceId(domain) {\n\tconst [soleNamespaceId, ...rest] = Object.keys(domain.namespaces);\n\tif (soleNamespaceId === void 0) throw contractError(\"CONTRACT.NAMESPACE_INVALID\", \"domain has no namespaces\", { meta: { reason: \"no-domain-namespaces\" } });\n\tif (rest.length > 0) {\n\t\tconst all = [soleNamespaceId, ...rest];\n\t\tthrow contractError(\"CONTRACT.NAMESPACE_INVALID\", `bare-name resolution requires exactly one domain namespace, found ${all.length} (${all.join(\", \")}); select a namespace explicitly`, { meta: {\n\t\t\treason: \"multiple-domain-namespaces\",\n\t\t\tnamespaceIds: all\n\t\t} });\n\t}\n\treturn soleNamespaceId;\n}\n//#endregion\nexport { soleDomainNamespaceId as n, contractError as r, UNBOUND_DOMAIN_NAMESPACE_ID as t };\n\n//# sourceMappingURL=default-namespace-D4vCwkXg.mjs.map"],"mappings":";;AAEA,SAAS,cAAc,MAAM,SAAS,SAAS;CAC9C,OAAO,gBAAgB,MAAM,SAAS,OAAO;AAC9C;;;;;;;;;AAWA,MAAM,8BAA8B;;;;;;;;;;AAUpC,SAAS,sBAAsB,QAAQ;CACtC,MAAM,CAAC,iBAAiB,GAAG,QAAQ,OAAO,KAAK,OAAO,UAAU;CAChE,IAAI,oBAAoB,KAAK,GAAG,MAAM,cAAc,8BAA8B,4BAA4B,EAAE,MAAM,EAAE,QAAQ,uBAAuB,EAAE,CAAC;CAC1J,IAAI,KAAK,SAAS,GAAG;EACpB,MAAM,MAAM,CAAC,iBAAiB,GAAG,IAAI;EACrC,MAAM,cAAc,8BAA8B,qEAAqE,IAAI,OAAO,IAAI,IAAI,KAAK,IAAI,EAAE,mCAAmC,EAAE,MAAM;GAC/L,QAAQ;GACR,cAAc;EACf,EAAE,CAAC;CACJ;CACA,OAAO;AACR"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as structuredError } from "./structured-error-
|
|
1
|
+
import { a as structuredError } from "./structured-error-xG_PRmbb.mjs";
|
|
2
2
|
import { t as InternalError } from "./internal-error-BIc-ehme-ouBQPoEL.mjs";
|
|
3
3
|
//#region ../../../1-framework/1-core/ts-render/dist/index.mjs
|
|
4
4
|
/**
|
|
@@ -249,4 +249,4 @@ var TsExpression = class {};
|
|
|
249
249
|
//#endregion
|
|
250
250
|
export { tsStringLiteral as i, jsonToTsSource as n, renderImports as r, TsExpression as t };
|
|
251
251
|
|
|
252
|
-
//# sourceMappingURL=dist-
|
|
252
|
+
//# sourceMappingURL=dist-CC1FPJKo.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dist-DFakQfiQ.mjs","names":[],"sources":["../../../../1-framework/1-core/ts-render/dist/index.mjs"],"sourcesContent":["import { InternalError } from \"@internal/utils/internal-error\";\nimport { structuredError } from \"@internal/utils/structured-error\";\n//#region src/ts-string-literal.ts\n/**\n* Renders a string as a TypeScript source-text literal.\n*\n* `JSON.stringify` already escapes quotes, backslashes, and control characters\n* exactly as TypeScript needs; it leaves U+2028/U+2029 unescaped, which legacy\n* parsers treat as line terminators, so those are escaped explicitly.\n*\n* Used for both value literals (`jsonToTsSource`) and type-level literals /\n* property keys (the contract emitter), so a physical name that a store admits\n* as a quoted identifier but TypeScript does not admit bare renders the same\n* way everywhere.\n*/\nfunction tsStringLiteral(value) {\n\treturn JSON.stringify(value).replace(/\\u2028/g, \"\\\\u2028\").replace(/\\u2029/g, \"\\\\u2029\");\n}\n//#endregion\n//#region src/json-to-ts-source.ts\n/**\n* Pure JSON-to-TypeScript-source printer.\n*\n* This module is the second stage of the codec → TS pipeline:\n*\n* jsValue → codec.encodeJson → JsonValue → jsonToTsSource → TS source text\n*\n* Stage 1 (`codec.encodeJson`) is a codec responsibility — date serialization,\n* opaque domain types (vector, bigint, uuid), JSON canonicalization. Stage 2\n* (this module) is a pure JSON-to-TS printer that must never grow type-specific\n* branches.\n*\n* To render a non-JSON JS value (Date, Vector, BigInt, Buffer, …), encode it\n* through the relevant codec's `encodeJson` first. Adding special cases to\n* this file is not the answer — that's what codecs are for.\n*/\n/**\n* Render a JSON-compatible value as a TypeScript source-text literal.\n*\n* Accepts `unknown` for ergonomics with structural types (e.g. `ColumnSpec`,\n* `ForeignKeySpec`) whose fields are all JSON-compatible but whose interfaces\n* lack the index signature TypeScript requires for `JsonObject` assignability.\n* Non-JSON values (Date, Symbol, Function, etc.) throw at runtime.\n*/\nfunction jsonToTsSource(value) {\n\tif (value === void 0) return \"undefined\";\n\tif (value === null) return \"null\";\n\tif (typeof value === \"string\") return tsStringLiteral(value);\n\tif (typeof value === \"number\" || typeof value === \"boolean\") return String(value);\n\tif (Array.isArray(value)) {\n\t\tif (value.length === 0) return \"[]\";\n\t\tconst items = value.map((v) => jsonToTsSource(v));\n\t\tconst singleLine = `[${items.join(\", \")}]`;\n\t\tif (singleLine.length <= 80) return singleLine;\n\t\treturn `[\\n${items.map((i) => ` ${i}`).join(\",\\n\")},\\n]`;\n\t}\n\tif (typeof value === \"object\") {\n\t\tconst entries = Object.entries(value).filter(([, v]) => v !== void 0);\n\t\tif (entries.length === 0) return \"{}\";\n\t\tconst items = entries.map(([k, v]) => `${renderKey(k)}: ${jsonToTsSource(v)}`);\n\t\tconst singleLine = `{ ${items.join(\", \")} }`;\n\t\tif (singleLine.length <= 80) return singleLine;\n\t\treturn `{\\n${items.map((i) => ` ${i}`).join(\",\\n\")},\\n}`;\n\t}\n\tthrow new InternalError(`jsonToTsSource: unsupported value type \"${typeof value}\"`);\n}\nfunction renderKey(key) {\n\tif (key === \"__proto__\") return tsStringLiteral(key);\n\treturn /^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(key) ? key : tsStringLiteral(key);\n}\n//#endregion\n//#region src/contract-errors.ts\nfunction contractError(code, message, options) {\n\treturn structuredError(code, message, options);\n}\n//#endregion\n//#region src/render-imports.ts\n/**\n* Render an aggregated `import` block from a flat list of\n* `ImportRequirement`s. Each target's migration renderer collects\n* requirements polymorphically from its call nodes and pipes them here.\n*\n* The emitter invariants:\n*\n* - **Usually one line per module specifier.** Named imports are aggregated\n* and emitted sorted; a single default symbol is combined onto the same\n* line when attributes agree (`import def, { a, b } from \"m\";`). Aliased\n* symbols render `symbol as alias`. When every symbol for a module is\n* `typeOnly`, the statement collapses to `import type { … }`; a module\n* mixing value and type symbols prefixes the type-only ones\n* (`import { type T, v }`). Exceptions that split into multiple lines: a\n* fully type-only statement with both a default and one or more named\n* bindings (`import type D from \"m\";` then `import type { N } from \"m\";`,\n* because TypeScript rejects `import type D, { N } from \"m\"` — TS1363),\n* and multiple distinct default symbols (see below).\n* - **Multiple distinct default symbols per module are allowed.** JS permits\n* re-importing the same specifier under different default-binding names\n* (`import a from 'm'; import b from 'm';`), so each distinct default\n* symbol renders its own `import` line, sorted alphabetically; a repeated\n* requirement for the same symbol still collapses into one binding,\n* merging `typeOnly` by AND.\n* - **Attribute unanimity per module.** All requirements for the same\n* module specifier must carry the same (or no) `attributes` map.\n* Divergent attribute maps throw — they can't collapse to one line\n* and there's no user-resolvable recovery at this layer.\n* - **Distinct (symbol, alias) pairs are distinct bindings.** TypeScript\n* permits importing the same export under multiple local names, so\n* `{ A }` + `{ A as B }` renders as `import { A, A as B } from \"m\"` and\n* `{ A as B }` + `{ A as C }` renders as `import { A as B, A as C } from \"m\"`.\n* Truly identical `(symbol, alias)` pairs still collapse to one binding,\n* merging `typeOnly` by AND.\n* - **Deterministic ordering.** Modules are emitted sorted by specifier;\n* within a module, named bindings are emitted sorted by `(symbol, alias)`\n* using JavaScript code-unit comparison, with the un-aliased form (no\n* alias) treated as alias `\"\"` so it sorts before any aliased form of the\n* same symbol.\n*\n* Returns a string containing one or more import lines per module (see the\n* splitting exceptions above), joined by `\\n` (no trailing newline). An\n* empty requirement list returns `\"\"`.\n*/\nfunction renderImports(requirements) {\n\treturn [...aggregateByModule(requirements).entries()].sort(([a], [b]) => a.localeCompare(b)).map(([moduleSpecifier, group]) => renderModuleImport(moduleSpecifier, group)).join(\"\\n\");\n}\nfunction aggregateByModule(requirements) {\n\tconst byModule = /* @__PURE__ */ new Map();\n\tfor (const req of requirements) {\n\t\tlet group = byModule.get(req.moduleSpecifier);\n\t\tif (!group) {\n\t\t\tgroup = {\n\t\t\t\tnamed: /* @__PURE__ */ new Map(),\n\t\t\t\tdefaults: /* @__PURE__ */ new Map(),\n\t\t\t\tattributes: null,\n\t\t\t\tattributesSet: false\n\t\t\t};\n\t\t\tbyModule.set(req.moduleSpecifier, group);\n\t\t}\n\t\tmergeRequirementIntoGroup(req, group);\n\t}\n\treturn byModule;\n}\nfunction mergeRequirementIntoGroup(req, group) {\n\tconst kind = req.kind ?? \"named\";\n\tconst typeOnly = req.typeOnly === true;\n\tif (kind === \"default\") {\n\t\tconst existingTypeOnly = group.defaults.get(req.symbol);\n\t\tgroup.defaults.set(req.symbol, existingTypeOnly === void 0 ? typeOnly : existingTypeOnly && typeOnly);\n\t} else {\n\t\tconst alias = req.alias && req.alias !== req.symbol ? req.alias : null;\n\t\tconst key = namedBindingKey(req.symbol, alias);\n\t\tconst existing = group.named.get(key);\n\t\tif (existing) existing.typeOnly = existing.typeOnly && typeOnly;\n\t\telse group.named.set(key, {\n\t\t\tsymbol: req.symbol,\n\t\t\talias,\n\t\t\ttypeOnly\n\t\t});\n\t}\n\tmergeAttributes(req, group);\n}\nfunction mergeAttributes(req, group) {\n\tconst incoming = req.attributes ?? null;\n\tif (!group.attributesSet) {\n\t\tgroup.attributes = incoming;\n\t\tgroup.attributesSet = true;\n\t\treturn;\n\t}\n\tif (!attributesEqual(group.attributes, incoming)) throw contractError(\"CONTRACT.PACK_CONTRIBUTION_INVALID\", `Conflicting import attributes for module \"${req.moduleSpecifier}\": ${stringifyAttributes(group.attributes)} vs ${stringifyAttributes(incoming)}.`, { meta: { moduleSpecifier: req.moduleSpecifier } });\n}\nfunction attributesEqual(a, b) {\n\tif (a === b) return true;\n\tif (a === null || b === null) return false;\n\tconst aKeys = Object.keys(a).sort();\n\tconst bKeys = Object.keys(b).sort();\n\tif (aKeys.length !== bKeys.length) return false;\n\tfor (let i = 0; i < aKeys.length; i++) {\n\t\tconst key = aKeys[i];\n\t\tif (key !== bKeys[i]) return false;\n\t\tif (a[key] !== b[key]) return false;\n\t}\n\treturn true;\n}\nfunction stringifyAttributes(attrs) {\n\tif (attrs === null) return \"(none)\";\n\treturn `{ ${Object.entries(attrs).sort(([a], [b]) => a.localeCompare(b)).map(([k, v]) => `${k}: ${JSON.stringify(v)}`).join(\", \")} }`;\n}\nfunction renderModuleImport(moduleSpecifier, group) {\n\tconst attrs = buildAttributesClause(group.attributes);\n\tconst defaultEntries = [...group.defaults.entries()].sort(([a], [b]) => a.localeCompare(b));\n\tconst hasNamed = group.named.size > 0;\n\tif (defaultEntries.length > 1) {\n\t\tconst defaultLines = defaultEntries.map(([symbol, typeOnly]) => `import ${typeOnly ? \"type \" : \"\"}${symbol} from '${moduleSpecifier}'${attrs};`);\n\t\tif (!hasNamed) return defaultLines.join(\"\\n\");\n\t\treturn [...defaultLines, renderNamedOnlyStatement(moduleSpecifier, group, attrs)].join(\"\\n\");\n\t}\n\tconst defaultEntry = defaultEntries[0];\n\tconst hasDefault = defaultEntry !== void 0;\n\tconst [defaultSymbol, defaultTypeOnly] = defaultEntry ?? [null, true];\n\tconst typeOnlyStatement = isStatementTypeOnly(hasDefault, defaultTypeOnly, group);\n\tif (typeOnlyStatement && hasDefault && hasNamed) return `${`import type ${defaultSymbol} from '${moduleSpecifier}'${attrs};`}\\n${`import type { ${renderNamedBindingsList(group, true)} } from '${moduleSpecifier}'${attrs};`}`;\n\treturn `${typeOnlyStatement ? \"import type\" : \"import\"} ${buildImportClause(defaultSymbol, group, typeOnlyStatement)} from '${moduleSpecifier}'${attrs};`;\n}\nfunction renderNamedOnlyStatement(moduleSpecifier, group, attrs) {\n\tconst typeOnlyStatement = [...group.named.values()].every((binding) => binding.typeOnly);\n\treturn `${typeOnlyStatement ? \"import type\" : \"import\"} { ${renderNamedBindingsList(group, typeOnlyStatement)} } from '${moduleSpecifier}'${attrs};`;\n}\nfunction isStatementTypeOnly(hasDefault, defaultTypeOnly, group) {\n\tconst hasNamed = group.named.size > 0;\n\tif (!hasDefault && !hasNamed) return false;\n\tif (hasDefault && !defaultTypeOnly) return false;\n\tfor (const binding of group.named.values()) if (!binding.typeOnly) return false;\n\treturn true;\n}\nfunction buildImportClause(defaultSymbol, group, statementTypeOnly) {\n\tconst hasNamed = group.named.size > 0;\n\tconst hasDefault = defaultSymbol !== null;\n\tconst namedClause = hasNamed ? renderNamedBindingsList(group, statementTypeOnly) : \"\";\n\tif (hasDefault && hasNamed) return `${defaultSymbol}, { ${namedClause} }`;\n\tif (hasDefault) return defaultSymbol;\n\treturn `{ ${namedClause} }`;\n}\nfunction renderNamedBindingsList(group, statementTypeOnly) {\n\treturn [...group.named.values()].sort(compareNamedBindings).map((binding) => renderNamedBinding(binding, statementTypeOnly)).join(\", \");\n}\nfunction compareNamedBindings(a, b) {\n\tif (a.symbol !== b.symbol) return a.symbol < b.symbol ? -1 : 1;\n\tconst aAlias = a.alias ?? \"\";\n\tconst bAlias = b.alias ?? \"\";\n\tif (aAlias === bAlias) return 0;\n\treturn aAlias < bAlias ? -1 : 1;\n}\nfunction namedBindingKey(symbol, alias) {\n\treturn `${symbol}\\x00${alias ?? \"\"}`;\n}\nfunction renderNamedBinding(binding, statementTypeOnly) {\n\tconst prefix = !statementTypeOnly && binding.typeOnly ? \"type \" : \"\";\n\tconst aliasClause = binding.alias !== null ? ` as ${binding.alias}` : \"\";\n\treturn `${prefix}${binding.symbol}${aliasClause}`;\n}\nfunction buildAttributesClause(attrs) {\n\tif (attrs === null) return \"\";\n\tconst entries = Object.entries(attrs).sort(([a], [b]) => a.localeCompare(b)).map(([k, v]) => `${k}: ${JSON.stringify(v)}`);\n\tif (entries.length === 0) return \"\";\n\treturn ` with { ${entries.join(\", \")} }`;\n}\n//#endregion\n//#region src/ts-expression.ts\n/**\n* Abstract base class for any IR node that can be emitted as a TypeScript\n* expression and declare its own import requirements.\n*\n* A top-level renderer walks an array of these polymorphically, concatenates\n* `renderTypeScript()` results, and aggregates `importRequirements()` into a\n* deduplicated import block.\n*/\nvar TsExpression = class {};\n//#endregion\nexport { TsExpression, jsonToTsSource, renderImports, tsStringLiteral };\n\n//# sourceMappingURL=index.mjs.map"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dist-CC1FPJKo.mjs","names":[],"sources":["../../../../1-framework/1-core/ts-render/dist/index.mjs"],"sourcesContent":["import { InternalError } from \"@internal/utils/internal-error\";\nimport { structuredError } from \"@internal/utils/structured-error\";\n//#region src/ts-string-literal.ts\n/**\n* Renders a string as a TypeScript source-text literal.\n*\n* `JSON.stringify` already escapes quotes, backslashes, and control characters\n* exactly as TypeScript needs; it leaves U+2028/U+2029 unescaped, which legacy\n* parsers treat as line terminators, so those are escaped explicitly.\n*\n* Used for both value literals (`jsonToTsSource`) and type-level literals /\n* property keys (the contract emitter), so a physical name that a store admits\n* as a quoted identifier but TypeScript does not admit bare renders the same\n* way everywhere.\n*/\nfunction tsStringLiteral(value) {\n\treturn JSON.stringify(value).replace(/\\u2028/g, \"\\\\u2028\").replace(/\\u2029/g, \"\\\\u2029\");\n}\n//#endregion\n//#region src/json-to-ts-source.ts\n/**\n* Pure JSON-to-TypeScript-source printer.\n*\n* This module is the second stage of the codec → TS pipeline:\n*\n* jsValue → codec.encodeJson → JsonValue → jsonToTsSource → TS source text\n*\n* Stage 1 (`codec.encodeJson`) is a codec responsibility — date serialization,\n* opaque domain types (vector, bigint, uuid), JSON canonicalization. Stage 2\n* (this module) is a pure JSON-to-TS printer that must never grow type-specific\n* branches.\n*\n* To render a non-JSON JS value (Date, Vector, BigInt, Buffer, …), encode it\n* through the relevant codec's `encodeJson` first. Adding special cases to\n* this file is not the answer — that's what codecs are for.\n*/\n/**\n* Render a JSON-compatible value as a TypeScript source-text literal.\n*\n* Accepts `unknown` for ergonomics with structural types (e.g. `ColumnSpec`,\n* `ForeignKeySpec`) whose fields are all JSON-compatible but whose interfaces\n* lack the index signature TypeScript requires for `JsonObject` assignability.\n* Non-JSON values (Date, Symbol, Function, etc.) throw at runtime.\n*/\nfunction jsonToTsSource(value) {\n\tif (value === void 0) return \"undefined\";\n\tif (value === null) return \"null\";\n\tif (typeof value === \"string\") return tsStringLiteral(value);\n\tif (typeof value === \"number\" || typeof value === \"boolean\") return String(value);\n\tif (Array.isArray(value)) {\n\t\tif (value.length === 0) return \"[]\";\n\t\tconst items = value.map((v) => jsonToTsSource(v));\n\t\tconst singleLine = `[${items.join(\", \")}]`;\n\t\tif (singleLine.length <= 80) return singleLine;\n\t\treturn `[\\n${items.map((i) => ` ${i}`).join(\",\\n\")},\\n]`;\n\t}\n\tif (typeof value === \"object\") {\n\t\tconst entries = Object.entries(value).filter(([, v]) => v !== void 0);\n\t\tif (entries.length === 0) return \"{}\";\n\t\tconst items = entries.map(([k, v]) => `${renderKey(k)}: ${jsonToTsSource(v)}`);\n\t\tconst singleLine = `{ ${items.join(\", \")} }`;\n\t\tif (singleLine.length <= 80) return singleLine;\n\t\treturn `{\\n${items.map((i) => ` ${i}`).join(\",\\n\")},\\n}`;\n\t}\n\tthrow new InternalError(`jsonToTsSource: unsupported value type \"${typeof value}\"`);\n}\nfunction renderKey(key) {\n\tif (key === \"__proto__\") return tsStringLiteral(key);\n\treturn /^[a-zA-Z_$][a-zA-Z0-9_$]*$/.test(key) ? key : tsStringLiteral(key);\n}\n//#endregion\n//#region src/contract-errors.ts\nfunction contractError(code, message, options) {\n\treturn structuredError(code, message, options);\n}\n//#endregion\n//#region src/render-imports.ts\n/**\n* Render an aggregated `import` block from a flat list of\n* `ImportRequirement`s. Each target's migration renderer collects\n* requirements polymorphically from its call nodes and pipes them here.\n*\n* The emitter invariants:\n*\n* - **Usually one line per module specifier.** Named imports are aggregated\n* and emitted sorted; a single default symbol is combined onto the same\n* line when attributes agree (`import def, { a, b } from \"m\";`). Aliased\n* symbols render `symbol as alias`. When every symbol for a module is\n* `typeOnly`, the statement collapses to `import type { … }`; a module\n* mixing value and type symbols prefixes the type-only ones\n* (`import { type T, v }`). Exceptions that split into multiple lines: a\n* fully type-only statement with both a default and one or more named\n* bindings (`import type D from \"m\";` then `import type { N } from \"m\";`,\n* because TypeScript rejects `import type D, { N } from \"m\"` — TS1363),\n* and multiple distinct default symbols (see below).\n* - **Multiple distinct default symbols per module are allowed.** JS permits\n* re-importing the same specifier under different default-binding names\n* (`import a from 'm'; import b from 'm';`), so each distinct default\n* symbol renders its own `import` line, sorted alphabetically; a repeated\n* requirement for the same symbol still collapses into one binding,\n* merging `typeOnly` by AND.\n* - **Attribute unanimity per module.** All requirements for the same\n* module specifier must carry the same (or no) `attributes` map.\n* Divergent attribute maps throw — they can't collapse to one line\n* and there's no user-resolvable recovery at this layer.\n* - **Distinct (symbol, alias) pairs are distinct bindings.** TypeScript\n* permits importing the same export under multiple local names, so\n* `{ A }` + `{ A as B }` renders as `import { A, A as B } from \"m\"` and\n* `{ A as B }` + `{ A as C }` renders as `import { A as B, A as C } from \"m\"`.\n* Truly identical `(symbol, alias)` pairs still collapse to one binding,\n* merging `typeOnly` by AND.\n* - **Deterministic ordering.** Modules are emitted sorted by specifier;\n* within a module, named bindings are emitted sorted by `(symbol, alias)`\n* using JavaScript code-unit comparison, with the un-aliased form (no\n* alias) treated as alias `\"\"` so it sorts before any aliased form of the\n* same symbol.\n*\n* Returns a string containing one or more import lines per module (see the\n* splitting exceptions above), joined by `\\n` (no trailing newline). An\n* empty requirement list returns `\"\"`.\n*/\nfunction renderImports(requirements) {\n\treturn [...aggregateByModule(requirements).entries()].sort(([a], [b]) => a.localeCompare(b)).map(([moduleSpecifier, group]) => renderModuleImport(moduleSpecifier, group)).join(\"\\n\");\n}\nfunction aggregateByModule(requirements) {\n\tconst byModule = /* @__PURE__ */ new Map();\n\tfor (const req of requirements) {\n\t\tlet group = byModule.get(req.moduleSpecifier);\n\t\tif (!group) {\n\t\t\tgroup = {\n\t\t\t\tnamed: /* @__PURE__ */ new Map(),\n\t\t\t\tdefaults: /* @__PURE__ */ new Map(),\n\t\t\t\tattributes: null,\n\t\t\t\tattributesSet: false\n\t\t\t};\n\t\t\tbyModule.set(req.moduleSpecifier, group);\n\t\t}\n\t\tmergeRequirementIntoGroup(req, group);\n\t}\n\treturn byModule;\n}\nfunction mergeRequirementIntoGroup(req, group) {\n\tconst kind = req.kind ?? \"named\";\n\tconst typeOnly = req.typeOnly === true;\n\tif (kind === \"default\") {\n\t\tconst existingTypeOnly = group.defaults.get(req.symbol);\n\t\tgroup.defaults.set(req.symbol, existingTypeOnly === void 0 ? typeOnly : existingTypeOnly && typeOnly);\n\t} else {\n\t\tconst alias = req.alias && req.alias !== req.symbol ? req.alias : null;\n\t\tconst key = namedBindingKey(req.symbol, alias);\n\t\tconst existing = group.named.get(key);\n\t\tif (existing) existing.typeOnly = existing.typeOnly && typeOnly;\n\t\telse group.named.set(key, {\n\t\t\tsymbol: req.symbol,\n\t\t\talias,\n\t\t\ttypeOnly\n\t\t});\n\t}\n\tmergeAttributes(req, group);\n}\nfunction mergeAttributes(req, group) {\n\tconst incoming = req.attributes ?? null;\n\tif (!group.attributesSet) {\n\t\tgroup.attributes = incoming;\n\t\tgroup.attributesSet = true;\n\t\treturn;\n\t}\n\tif (!attributesEqual(group.attributes, incoming)) throw contractError(\"CONTRACT.PACK_CONTRIBUTION_INVALID\", `Conflicting import attributes for module \"${req.moduleSpecifier}\": ${stringifyAttributes(group.attributes)} vs ${stringifyAttributes(incoming)}.`, { meta: { moduleSpecifier: req.moduleSpecifier } });\n}\nfunction attributesEqual(a, b) {\n\tif (a === b) return true;\n\tif (a === null || b === null) return false;\n\tconst aKeys = Object.keys(a).sort();\n\tconst bKeys = Object.keys(b).sort();\n\tif (aKeys.length !== bKeys.length) return false;\n\tfor (let i = 0; i < aKeys.length; i++) {\n\t\tconst key = aKeys[i];\n\t\tif (key !== bKeys[i]) return false;\n\t\tif (a[key] !== b[key]) return false;\n\t}\n\treturn true;\n}\nfunction stringifyAttributes(attrs) {\n\tif (attrs === null) return \"(none)\";\n\treturn `{ ${Object.entries(attrs).sort(([a], [b]) => a.localeCompare(b)).map(([k, v]) => `${k}: ${JSON.stringify(v)}`).join(\", \")} }`;\n}\nfunction renderModuleImport(moduleSpecifier, group) {\n\tconst attrs = buildAttributesClause(group.attributes);\n\tconst defaultEntries = [...group.defaults.entries()].sort(([a], [b]) => a.localeCompare(b));\n\tconst hasNamed = group.named.size > 0;\n\tif (defaultEntries.length > 1) {\n\t\tconst defaultLines = defaultEntries.map(([symbol, typeOnly]) => `import ${typeOnly ? \"type \" : \"\"}${symbol} from '${moduleSpecifier}'${attrs};`);\n\t\tif (!hasNamed) return defaultLines.join(\"\\n\");\n\t\treturn [...defaultLines, renderNamedOnlyStatement(moduleSpecifier, group, attrs)].join(\"\\n\");\n\t}\n\tconst defaultEntry = defaultEntries[0];\n\tconst hasDefault = defaultEntry !== void 0;\n\tconst [defaultSymbol, defaultTypeOnly] = defaultEntry ?? [null, true];\n\tconst typeOnlyStatement = isStatementTypeOnly(hasDefault, defaultTypeOnly, group);\n\tif (typeOnlyStatement && hasDefault && hasNamed) return `${`import type ${defaultSymbol} from '${moduleSpecifier}'${attrs};`}\\n${`import type { ${renderNamedBindingsList(group, true)} } from '${moduleSpecifier}'${attrs};`}`;\n\treturn `${typeOnlyStatement ? \"import type\" : \"import\"} ${buildImportClause(defaultSymbol, group, typeOnlyStatement)} from '${moduleSpecifier}'${attrs};`;\n}\nfunction renderNamedOnlyStatement(moduleSpecifier, group, attrs) {\n\tconst typeOnlyStatement = [...group.named.values()].every((binding) => binding.typeOnly);\n\treturn `${typeOnlyStatement ? \"import type\" : \"import\"} { ${renderNamedBindingsList(group, typeOnlyStatement)} } from '${moduleSpecifier}'${attrs};`;\n}\nfunction isStatementTypeOnly(hasDefault, defaultTypeOnly, group) {\n\tconst hasNamed = group.named.size > 0;\n\tif (!hasDefault && !hasNamed) return false;\n\tif (hasDefault && !defaultTypeOnly) return false;\n\tfor (const binding of group.named.values()) if (!binding.typeOnly) return false;\n\treturn true;\n}\nfunction buildImportClause(defaultSymbol, group, statementTypeOnly) {\n\tconst hasNamed = group.named.size > 0;\n\tconst hasDefault = defaultSymbol !== null;\n\tconst namedClause = hasNamed ? renderNamedBindingsList(group, statementTypeOnly) : \"\";\n\tif (hasDefault && hasNamed) return `${defaultSymbol}, { ${namedClause} }`;\n\tif (hasDefault) return defaultSymbol;\n\treturn `{ ${namedClause} }`;\n}\nfunction renderNamedBindingsList(group, statementTypeOnly) {\n\treturn [...group.named.values()].sort(compareNamedBindings).map((binding) => renderNamedBinding(binding, statementTypeOnly)).join(\", \");\n}\nfunction compareNamedBindings(a, b) {\n\tif (a.symbol !== b.symbol) return a.symbol < b.symbol ? -1 : 1;\n\tconst aAlias = a.alias ?? \"\";\n\tconst bAlias = b.alias ?? \"\";\n\tif (aAlias === bAlias) return 0;\n\treturn aAlias < bAlias ? -1 : 1;\n}\nfunction namedBindingKey(symbol, alias) {\n\treturn `${symbol}\\x00${alias ?? \"\"}`;\n}\nfunction renderNamedBinding(binding, statementTypeOnly) {\n\tconst prefix = !statementTypeOnly && binding.typeOnly ? \"type \" : \"\";\n\tconst aliasClause = binding.alias !== null ? ` as ${binding.alias}` : \"\";\n\treturn `${prefix}${binding.symbol}${aliasClause}`;\n}\nfunction buildAttributesClause(attrs) {\n\tif (attrs === null) return \"\";\n\tconst entries = Object.entries(attrs).sort(([a], [b]) => a.localeCompare(b)).map(([k, v]) => `${k}: ${JSON.stringify(v)}`);\n\tif (entries.length === 0) return \"\";\n\treturn ` with { ${entries.join(\", \")} }`;\n}\n//#endregion\n//#region src/ts-expression.ts\n/**\n* Abstract base class for any IR node that can be emitted as a TypeScript\n* expression and declare its own import requirements.\n*\n* A top-level renderer walks an array of these polymorphically, concatenates\n* `renderTypeScript()` results, and aggregates `importRequirements()` into a\n* deduplicated import block.\n*/\nvar TsExpression = class {};\n//#endregion\nexport { TsExpression, jsonToTsSource, renderImports, tsStringLiteral };\n\n//# sourceMappingURL=index.mjs.map"],"mappings":";;;;;;;;;;;;;;;AAeA,SAAS,gBAAgB,OAAO;CAC/B,OAAO,KAAK,UAAU,KAAK,CAAC,CAAC,QAAQ,WAAW,SAAS,CAAC,CAAC,QAAQ,WAAW,SAAS;AACxF;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA,SAAS,eAAe,OAAO;CAC9B,IAAI,UAAU,KAAK,GAAG,OAAO;CAC7B,IAAI,UAAU,MAAM,OAAO;CAC3B,IAAI,OAAO,UAAU,UAAU,OAAO,gBAAgB,KAAK;CAC3D,IAAI,OAAO,UAAU,YAAY,OAAO,UAAU,WAAW,OAAO,OAAO,KAAK;CAChF,IAAI,MAAM,QAAQ,KAAK,GAAG;EACzB,IAAI,MAAM,WAAW,GAAG,OAAO;EAC/B,MAAM,QAAQ,MAAM,KAAK,MAAM,eAAe,CAAC,CAAC;EAChD,MAAM,aAAa,IAAI,MAAM,KAAK,IAAI,EAAE;EACxC,IAAI,WAAW,UAAU,IAAI,OAAO;EACpC,OAAO,MAAM,MAAM,KAAK,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,KAAK,EAAE;CACrD;CACA,IAAI,OAAO,UAAU,UAAU;EAC9B,MAAM,UAAU,OAAO,QAAQ,KAAK,CAAC,CAAC,QAAQ,GAAG,OAAO,MAAM,KAAK,CAAC;EACpE,IAAI,QAAQ,WAAW,GAAG,OAAO;EACjC,MAAM,QAAQ,QAAQ,KAAK,CAAC,GAAG,OAAO,GAAG,UAAU,CAAC,EAAE,IAAI,eAAe,CAAC,GAAG;EAC7E,MAAM,aAAa,KAAK,MAAM,KAAK,IAAI,EAAE;EACzC,IAAI,WAAW,UAAU,IAAI,OAAO;EACpC,OAAO,MAAM,MAAM,KAAK,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,KAAK,EAAE;CACrD;CACA,MAAM,IAAI,cAAc,2CAA2C,OAAO,MAAM,EAAE;AACnF;AACA,SAAS,UAAU,KAAK;CACvB,IAAI,QAAQ,aAAa,OAAO,gBAAgB,GAAG;CACnD,OAAO,6BAA6B,KAAK,GAAG,IAAI,MAAM,gBAAgB,GAAG;AAC1E;AAGA,SAAS,cAAc,MAAM,SAAS,SAAS;CAC9C,OAAO,gBAAgB,MAAM,SAAS,OAAO;AAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+CA,SAAS,cAAc,cAAc;CACpC,OAAO,CAAC,GAAG,kBAAkB,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,iBAAiB,WAAW,mBAAmB,iBAAiB,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI;AACrL;AACA,SAAS,kBAAkB,cAAc;CACxC,MAAM,2BAA2B,IAAI,IAAI;CACzC,KAAK,MAAM,OAAO,cAAc;EAC/B,IAAI,QAAQ,SAAS,IAAI,IAAI,eAAe;EAC5C,IAAI,CAAC,OAAO;GACX,QAAQ;IACP,uBAAuB,IAAI,IAAI;IAC/B,0BAA0B,IAAI,IAAI;IAClC,YAAY;IACZ,eAAe;GAChB;GACA,SAAS,IAAI,IAAI,iBAAiB,KAAK;EACxC;EACA,0BAA0B,KAAK,KAAK;CACrC;CACA,OAAO;AACR;AACA,SAAS,0BAA0B,KAAK,OAAO;CAC9C,MAAM,OAAO,IAAI,QAAQ;CACzB,MAAM,WAAW,IAAI,aAAa;CAClC,IAAI,SAAS,WAAW;EACvB,MAAM,mBAAmB,MAAM,SAAS,IAAI,IAAI,MAAM;EACtD,MAAM,SAAS,IAAI,IAAI,QAAQ,qBAAqB,KAAK,IAAI,WAAW,oBAAoB,QAAQ;CACrG,OAAO;EACN,MAAM,QAAQ,IAAI,SAAS,IAAI,UAAU,IAAI,SAAS,IAAI,QAAQ;EAClE,MAAM,MAAM,gBAAgB,IAAI,QAAQ,KAAK;EAC7C,MAAM,WAAW,MAAM,MAAM,IAAI,GAAG;EACpC,IAAI,UAAU,SAAS,WAAW,SAAS,YAAY;OAClD,MAAM,MAAM,IAAI,KAAK;GACzB,QAAQ,IAAI;GACZ;GACA;EACD,CAAC;CACF;CACA,gBAAgB,KAAK,KAAK;AAC3B;AACA,SAAS,gBAAgB,KAAK,OAAO;CACpC,MAAM,WAAW,IAAI,cAAc;CACnC,IAAI,CAAC,MAAM,eAAe;EACzB,MAAM,aAAa;EACnB,MAAM,gBAAgB;EACtB;CACD;CACA,IAAI,CAAC,gBAAgB,MAAM,YAAY,QAAQ,GAAG,MAAM,cAAc,sCAAsC,6CAA6C,IAAI,gBAAgB,KAAK,oBAAoB,MAAM,UAAU,EAAE,MAAM,oBAAoB,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,iBAAiB,IAAI,gBAAgB,EAAE,CAAC;AACnT;AACA,SAAS,gBAAgB,GAAG,GAAG;CAC9B,IAAI,MAAM,GAAG,OAAO;CACpB,IAAI,MAAM,QAAQ,MAAM,MAAM,OAAO;CACrC,MAAM,QAAQ,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK;CAClC,MAAM,QAAQ,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK;CAClC,IAAI,MAAM,WAAW,MAAM,QAAQ,OAAO;CAC1C,KAAK,IAAI,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;EACtC,MAAM,MAAM,MAAM;EAClB,IAAI,QAAQ,MAAM,IAAI,OAAO;EAC7B,IAAI,EAAE,SAAS,EAAE,MAAM,OAAO;CAC/B;CACA,OAAO;AACR;AACA,SAAS,oBAAoB,OAAO;CACnC,IAAI,UAAU,MAAM,OAAO;CAC3B,OAAO,KAAK,OAAO,QAAQ,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,GAAG,EAAE,IAAI,KAAK,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE;AACnI;AACA,SAAS,mBAAmB,iBAAiB,OAAO;CACnD,MAAM,QAAQ,sBAAsB,MAAM,UAAU;CACpD,MAAM,iBAAiB,CAAC,GAAG,MAAM,SAAS,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;CAC1F,MAAM,WAAW,MAAM,MAAM,OAAO;CACpC,IAAI,eAAe,SAAS,GAAG;EAC9B,MAAM,eAAe,eAAe,KAAK,CAAC,QAAQ,cAAc,UAAU,WAAW,UAAU,KAAK,OAAO,SAAS,gBAAgB,GAAG,MAAM,EAAE;EAC/I,IAAI,CAAC,UAAU,OAAO,aAAa,KAAK,IAAI;EAC5C,OAAO,CAAC,GAAG,cAAc,yBAAyB,iBAAiB,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI;CAC5F;CACA,MAAM,eAAe,eAAe;CACpC,MAAM,aAAa,iBAAiB,KAAK;CACzC,MAAM,CAAC,eAAe,mBAAmB,gBAAgB,CAAC,MAAM,IAAI;CACpE,MAAM,oBAAoB,oBAAoB,YAAY,iBAAiB,KAAK;CAChF,IAAI,qBAAqB,cAAc,UAAU,OAAO,GAAG,eAAe,cAAc,SAAS,gBAAgB,GAAG,MAAM,GAAG,IAAI,iBAAiB,wBAAwB,OAAO,IAAI,EAAE,WAAW,gBAAgB,GAAG,MAAM;CAC3N,OAAO,GAAG,oBAAoB,gBAAgB,SAAS,GAAG,kBAAkB,eAAe,OAAO,iBAAiB,EAAE,SAAS,gBAAgB,GAAG,MAAM;AACxJ;AACA,SAAS,yBAAyB,iBAAiB,OAAO,OAAO;CAChE,MAAM,oBAAoB,CAAC,GAAG,MAAM,MAAM,OAAO,CAAC,CAAC,CAAC,OAAO,YAAY,QAAQ,QAAQ;CACvF,OAAO,GAAG,oBAAoB,gBAAgB,SAAS,KAAK,wBAAwB,OAAO,iBAAiB,EAAE,WAAW,gBAAgB,GAAG,MAAM;AACnJ;AACA,SAAS,oBAAoB,YAAY,iBAAiB,OAAO;CAChE,MAAM,WAAW,MAAM,MAAM,OAAO;CACpC,IAAI,CAAC,cAAc,CAAC,UAAU,OAAO;CACrC,IAAI,cAAc,CAAC,iBAAiB,OAAO;CAC3C,KAAK,MAAM,WAAW,MAAM,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,UAAU,OAAO;CAC1E,OAAO;AACR;AACA,SAAS,kBAAkB,eAAe,OAAO,mBAAmB;CACnE,MAAM,WAAW,MAAM,MAAM,OAAO;CACpC,MAAM,aAAa,kBAAkB;CACrC,MAAM,cAAc,WAAW,wBAAwB,OAAO,iBAAiB,IAAI;CACnF,IAAI,cAAc,UAAU,OAAO,GAAG,cAAc,MAAM,YAAY;CACtE,IAAI,YAAY,OAAO;CACvB,OAAO,KAAK,YAAY;AACzB;AACA,SAAS,wBAAwB,OAAO,mBAAmB;CAC1D,OAAO,CAAC,GAAG,MAAM,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,oBAAoB,CAAC,CAAC,KAAK,YAAY,mBAAmB,SAAS,iBAAiB,CAAC,CAAC,CAAC,KAAK,IAAI;AACvI;AACA,SAAS,qBAAqB,GAAG,GAAG;CACnC,IAAI,EAAE,WAAW,EAAE,QAAQ,OAAO,EAAE,SAAS,EAAE,SAAS,KAAK;CAC7D,MAAM,SAAS,EAAE,SAAS;CAC1B,MAAM,SAAS,EAAE,SAAS;CAC1B,IAAI,WAAW,QAAQ,OAAO;CAC9B,OAAO,SAAS,SAAS,KAAK;AAC/B;AACA,SAAS,gBAAgB,QAAQ,OAAO;CACvC,OAAO,GAAG,OAAO,MAAM,SAAS;AACjC;AACA,SAAS,mBAAmB,SAAS,mBAAmB;CACvD,MAAM,SAAS,CAAC,qBAAqB,QAAQ,WAAW,UAAU;CAClE,MAAM,cAAc,QAAQ,UAAU,OAAO,OAAO,QAAQ,UAAU;CACtE,OAAO,GAAG,SAAS,QAAQ,SAAS;AACrC;AACA,SAAS,sBAAsB,OAAO;CACrC,IAAI,UAAU,MAAM,OAAO;CAC3B,MAAM,UAAU,OAAO,QAAQ,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,GAAG,EAAE,IAAI,KAAK,UAAU,CAAC,GAAG;CACzH,IAAI,QAAQ,WAAW,GAAG,OAAO;CACjC,OAAO,WAAW,QAAQ,KAAK,IAAI,EAAE;AACtC;;;;;;;;;AAWA,IAAI,eAAe,MAAM,CAAC"}
|
package/dist/errors.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
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-
|
|
2
|
-
import { a as errorMarkerReadFailed, c as errorRunnerFailed, d as errorTargetMismatch, f as parseMarkerRowSafely, i as errorMarkerMissing, l as errorRuntime, m as withMarkerReadErrorHandling, n as errorDestructiveChanges, o as errorMarkerRequired, p as rethrowMarkerReadError, r as errorHashMismatch, s as errorMarkerRowCorrupt, t as ERROR_CODE_DESTRUCTIVE_CHANGES, u as errorSchemaVerificationFailed } from "./execution-
|
|
3
|
-
import { a as errorMigrationTargetMismatch, i as errorMigrationPlanNotArray, n as errorMigrationFileMissing, o as errorUnfilledPlaceholder, r as errorMigrationInvalidDefaultExport, s as placeholder, t as errorDataTransformContractMismatch } from "./migration-
|
|
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-ql9N9u4f-Dz4QqSR1.mjs";
|
|
2
|
+
import { a as errorMarkerReadFailed, c as errorRunnerFailed, d as errorTargetMismatch, f as parseMarkerRowSafely, i as errorMarkerMissing, l as errorRuntime, m as withMarkerReadErrorHandling, n as errorDestructiveChanges, o as errorMarkerRequired, p as rethrowMarkerReadError, r as errorHashMismatch, s as errorMarkerRowCorrupt, t as ERROR_CODE_DESTRUCTIVE_CHANGES, u as errorSchemaVerificationFailed } from "./execution-Cs6rxLIE.mjs";
|
|
3
|
+
import { a as errorMigrationTargetMismatch, i as errorMigrationPlanNotArray, n as errorMigrationFileMissing, o as errorUnfilledPlaceholder, r as errorMigrationInvalidDefaultExport, s as placeholder, t as errorDataTransformContractMismatch } from "./migration-CSc3ZZK3.mjs";
|
|
4
4
|
export { type CliErrorConflict, type CliErrorEnvelope, CliStructuredError, ERROR_CODE_DESTRUCTIVE_CHANGES, errorConfigEvaluationFailed, errorConfigFileNotFound, errorConfigValidation, errorConfigVersionMarkerMissing, errorContractConfigMissing, errorContractMissingExtensions, errorContractValidationFailed, errorDataTransformContractMismatch, errorDatabaseConnectionRequired, errorDestructiveChanges, errorDriverRequired, errorEnumCodecNotInPackStack, errorFamilyReadMarkerSqlRequired, errorFileNotFound, errorHashMismatch, errorInvalidOutputFormat, errorJsonFormatNotSupported, errorMarkerMissing, errorMarkerReadFailed, errorMarkerRequired, errorMarkerRowCorrupt, errorMigrationCliInvalidConfigArg, errorMigrationCliUnknownFlag, errorMigrationFileMissing, errorMigrationInvalidDefaultExport, errorMigrationPlanNotArray, errorMigrationPlanningFailed, errorMigrationTargetMismatch, errorOutputFormatMutex, errorQueryRunnerFactoryRequired, errorRunnerFailed, errorRuntime, errorSchemaVerificationFailed, errorTargetMigrationNotSupported, errorTargetMismatch, errorUnexpected, errorUnfilledPlaceholder, parseMarkerRowSafely, placeholder, rethrowMarkerReadError, withMarkerReadErrorHandling };
|
package/dist/errors.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { S as errorUnexpected, _ as errorMigrationCliUnknownFlag, a as errorConfigVersionMarkerMissing, b as errorQueryRunnerFactoryRequired, c as errorContractValidationFailed, d as errorEnumCodecNotInPackStack, f as errorFamilyReadMarkerSqlRequired, g as errorMigrationCliInvalidConfigArg, h as errorJsonFormatNotSupported, i as errorConfigValidation, l as errorDatabaseConnectionRequired, m as errorInvalidOutputFormat, n as errorConfigEvaluationFailed, o as errorContractConfigMissing, p as errorFileNotFound, r as errorConfigFileNotFound, s as errorContractMissingExtensions, t as CliStructuredError, u as errorDriverRequired, v as errorMigrationPlanningFailed, x as errorTargetMigrationNotSupported, y as errorOutputFormatMutex } from "./control-
|
|
2
|
-
import { a as errorMarkerReadFailed, c as errorRunnerFailed, d as errorTargetMismatch, f as parseMarkerRowSafely, i as errorMarkerMissing, l as errorRuntime, m as withMarkerReadErrorHandling, n as errorDestructiveChanges, o as errorMarkerRequired, p as rethrowMarkerReadError, r as errorHashMismatch, s as errorMarkerRowCorrupt, t as ERROR_CODE_DESTRUCTIVE_CHANGES, u as errorSchemaVerificationFailed } from "./execution-
|
|
3
|
-
import { a as errorMigrationTargetMismatch, i as errorMigrationPlanNotArray, n as errorMigrationFileMissing, o as errorUnfilledPlaceholder, r as errorMigrationInvalidDefaultExport, s as placeholder, t as errorDataTransformContractMismatch } from "./migration-
|
|
1
|
+
import { S as errorUnexpected, _ as errorMigrationCliUnknownFlag, a as errorConfigVersionMarkerMissing, b as errorQueryRunnerFactoryRequired, c as errorContractValidationFailed, d as errorEnumCodecNotInPackStack, f as errorFamilyReadMarkerSqlRequired, g as errorMigrationCliInvalidConfigArg, h as errorJsonFormatNotSupported, i as errorConfigValidation, l as errorDatabaseConnectionRequired, m as errorInvalidOutputFormat, n as errorConfigEvaluationFailed, o as errorContractConfigMissing, p as errorFileNotFound, r as errorConfigFileNotFound, s as errorContractMissingExtensions, t as CliStructuredError, u as errorDriverRequired, v as errorMigrationPlanningFailed, x as errorTargetMigrationNotSupported, y as errorOutputFormatMutex } from "./control-C9JfxzPo-C4JAdFMg.mjs";
|
|
2
|
+
import { a as errorMarkerReadFailed, c as errorRunnerFailed, d as errorTargetMismatch, f as parseMarkerRowSafely, i as errorMarkerMissing, l as errorRuntime, m as withMarkerReadErrorHandling, n as errorDestructiveChanges, o as errorMarkerRequired, p as rethrowMarkerReadError, r as errorHashMismatch, s as errorMarkerRowCorrupt, t as ERROR_CODE_DESTRUCTIVE_CHANGES, u as errorSchemaVerificationFailed } from "./execution-CXy93CMh.mjs";
|
|
3
|
+
import { a as errorMigrationTargetMismatch, i as errorMigrationPlanNotArray, n as errorMigrationFileMissing, o as errorUnfilledPlaceholder, r as errorMigrationInvalidDefaultExport, s as placeholder, t as errorDataTransformContractMismatch } from "./migration-jmLnbo_A.mjs";
|
|
4
4
|
export { CliStructuredError, ERROR_CODE_DESTRUCTIVE_CHANGES, errorConfigEvaluationFailed, errorConfigFileNotFound, errorConfigValidation, errorConfigVersionMarkerMissing, errorContractConfigMissing, errorContractMissingExtensions, errorContractValidationFailed, errorDataTransformContractMismatch, errorDatabaseConnectionRequired, errorDestructiveChanges, errorDriverRequired, errorEnumCodecNotInPackStack, errorFamilyReadMarkerSqlRequired, errorFileNotFound, errorHashMismatch, errorInvalidOutputFormat, errorJsonFormatNotSupported, errorMarkerMissing, errorMarkerReadFailed, errorMarkerRequired, errorMarkerRowCorrupt, errorMigrationCliInvalidConfigArg, errorMigrationCliUnknownFlag, errorMigrationFileMissing, errorMigrationInvalidDefaultExport, errorMigrationPlanNotArray, errorMigrationPlanningFailed, errorMigrationTargetMismatch, errorOutputFormatMutex, errorQueryRunnerFactoryRequired, errorRunnerFailed, errorRuntime, errorSchemaVerificationFailed, errorTargetMigrationNotSupported, errorTargetMismatch, errorUnexpected, errorUnfilledPlaceholder, parseMarkerRowSafely, placeholder, rethrowMarkerReadError, withMarkerReadErrorHandling };
|
|
@@ -1,2 +1,2 @@
|
|
|
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-
|
|
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-ql9N9u4f-Dz4QqSR1.mjs";
|
|
2
2
|
export { type CliErrorConflict, type CliErrorEnvelope, CliStructuredError, errorConfigEvaluationFailed, errorConfigFileNotFound, errorConfigValidation, errorConfigVersionMarkerMissing, errorContractConfigMissing, errorContractMissingExtensions, errorContractValidationFailed, errorDatabaseConnectionRequired, errorDriverRequired, errorEnumCodecNotInPackStack, errorFamilyReadMarkerSqlRequired, errorFileNotFound, errorInvalidOutputFormat, errorJsonFormatNotSupported, errorMigrationCliInvalidConfigArg, errorMigrationCliUnknownFlag, errorMigrationPlanningFailed, errorOutputFormatMutex, errorQueryRunnerFactoryRequired, errorTargetMigrationNotSupported, errorUnexpected };
|
package/dist/errors__control.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { S as errorUnexpected, _ as errorMigrationCliUnknownFlag, a as errorConfigVersionMarkerMissing, b as errorQueryRunnerFactoryRequired, c as errorContractValidationFailed, d as errorEnumCodecNotInPackStack, f as errorFamilyReadMarkerSqlRequired, g as errorMigrationCliInvalidConfigArg, h as errorJsonFormatNotSupported, i as errorConfigValidation, l as errorDatabaseConnectionRequired, m as errorInvalidOutputFormat, n as errorConfigEvaluationFailed, o as errorContractConfigMissing, p as errorFileNotFound, r as errorConfigFileNotFound, s as errorContractMissingExtensions, t as CliStructuredError, u as errorDriverRequired, v as errorMigrationPlanningFailed, x as errorTargetMigrationNotSupported, y as errorOutputFormatMutex } from "./control-
|
|
1
|
+
import { S as errorUnexpected, _ as errorMigrationCliUnknownFlag, a as errorConfigVersionMarkerMissing, b as errorQueryRunnerFactoryRequired, c as errorContractValidationFailed, d as errorEnumCodecNotInPackStack, f as errorFamilyReadMarkerSqlRequired, g as errorMigrationCliInvalidConfigArg, h as errorJsonFormatNotSupported, i as errorConfigValidation, l as errorDatabaseConnectionRequired, m as errorInvalidOutputFormat, n as errorConfigEvaluationFailed, o as errorContractConfigMissing, p as errorFileNotFound, r as errorConfigFileNotFound, s as errorContractMissingExtensions, t as CliStructuredError, u as errorDriverRequired, v as errorMigrationPlanningFailed, x as errorTargetMigrationNotSupported, y as errorOutputFormatMutex } from "./control-C9JfxzPo-C4JAdFMg.mjs";
|
|
2
2
|
export { CliStructuredError, errorConfigEvaluationFailed, errorConfigFileNotFound, errorConfigValidation, errorConfigVersionMarkerMissing, errorContractConfigMissing, errorContractMissingExtensions, errorContractValidationFailed, errorDatabaseConnectionRequired, errorDriverRequired, errorEnumCodecNotInPackStack, errorFamilyReadMarkerSqlRequired, errorFileNotFound, errorInvalidOutputFormat, errorJsonFormatNotSupported, errorMigrationCliInvalidConfigArg, errorMigrationCliUnknownFlag, errorMigrationPlanningFailed, errorOutputFormatMutex, errorQueryRunnerFactoryRequired, errorTargetMigrationNotSupported, errorUnexpected };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as errorMarkerReadFailed, c as errorRunnerFailed, d as errorTargetMismatch, f as parseMarkerRowSafely, i as errorMarkerMissing, l as errorRuntime, m as withMarkerReadErrorHandling, n as errorDestructiveChanges, o as errorMarkerRequired, p as rethrowMarkerReadError, r as errorHashMismatch, s as errorMarkerRowCorrupt, t as ERROR_CODE_DESTRUCTIVE_CHANGES, u as errorSchemaVerificationFailed } from "./execution-
|
|
1
|
+
import { a as errorMarkerReadFailed, c as errorRunnerFailed, d as errorTargetMismatch, f as parseMarkerRowSafely, i as errorMarkerMissing, l as errorRuntime, m as withMarkerReadErrorHandling, n as errorDestructiveChanges, o as errorMarkerRequired, p as rethrowMarkerReadError, r as errorHashMismatch, s as errorMarkerRowCorrupt, t as ERROR_CODE_DESTRUCTIVE_CHANGES, u as errorSchemaVerificationFailed } from "./execution-Cs6rxLIE.mjs";
|
|
2
2
|
export { ERROR_CODE_DESTRUCTIVE_CHANGES, errorDestructiveChanges, errorHashMismatch, errorMarkerMissing, errorMarkerReadFailed, errorMarkerRequired, errorMarkerRowCorrupt, errorRunnerFailed, errorRuntime, errorSchemaVerificationFailed, errorTargetMismatch, parseMarkerRowSafely, rethrowMarkerReadError, withMarkerReadErrorHandling };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as errorMarkerReadFailed, c as errorRunnerFailed, d as errorTargetMismatch, f as parseMarkerRowSafely, i as errorMarkerMissing, l as errorRuntime, m as withMarkerReadErrorHandling, n as errorDestructiveChanges, o as errorMarkerRequired, p as rethrowMarkerReadError, r as errorHashMismatch, s as errorMarkerRowCorrupt, t as ERROR_CODE_DESTRUCTIVE_CHANGES, u as errorSchemaVerificationFailed } from "./execution-
|
|
1
|
+
import { a as errorMarkerReadFailed, c as errorRunnerFailed, d as errorTargetMismatch, f as parseMarkerRowSafely, i as errorMarkerMissing, l as errorRuntime, m as withMarkerReadErrorHandling, n as errorDestructiveChanges, o as errorMarkerRequired, p as rethrowMarkerReadError, r as errorHashMismatch, s as errorMarkerRowCorrupt, t as ERROR_CODE_DESTRUCTIVE_CHANGES, u as errorSchemaVerificationFailed } from "./execution-CXy93CMh.mjs";
|
|
2
2
|
export { ERROR_CODE_DESTRUCTIVE_CHANGES, errorDestructiveChanges, errorHashMismatch, errorMarkerMissing, errorMarkerReadFailed, errorMarkerRequired, errorMarkerRowCorrupt, errorRunnerFailed, errorRuntime, errorSchemaVerificationFailed, errorTargetMismatch, parseMarkerRowSafely, rethrowMarkerReadError, withMarkerReadErrorHandling };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as errorMigrationTargetMismatch, i as errorMigrationPlanNotArray, n as errorMigrationFileMissing, o as errorUnfilledPlaceholder, r as errorMigrationInvalidDefaultExport, s as placeholder, t as errorDataTransformContractMismatch } from "./migration-
|
|
1
|
+
import { a as errorMigrationTargetMismatch, i as errorMigrationPlanNotArray, n as errorMigrationFileMissing, o as errorUnfilledPlaceholder, r as errorMigrationInvalidDefaultExport, s as placeholder, t as errorDataTransformContractMismatch } from "./migration-CSc3ZZK3.mjs";
|
|
2
2
|
export { errorDataTransformContractMismatch, errorMigrationFileMissing, errorMigrationInvalidDefaultExport, errorMigrationPlanNotArray, errorMigrationTargetMismatch, errorUnfilledPlaceholder, placeholder };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as errorMigrationTargetMismatch, i as errorMigrationPlanNotArray, n as errorMigrationFileMissing, o as errorUnfilledPlaceholder, r as errorMigrationInvalidDefaultExport, s as placeholder, t as errorDataTransformContractMismatch } from "./migration-
|
|
1
|
+
import { a as errorMigrationTargetMismatch, i as errorMigrationPlanNotArray, n as errorMigrationFileMissing, o as errorUnfilledPlaceholder, r as errorMigrationInvalidDefaultExport, s as placeholder, t as errorDataTransformContractMismatch } from "./migration-jmLnbo_A.mjs";
|
|
2
2
|
export { errorDataTransformContractMismatch, errorMigrationFileMissing, errorMigrationInvalidDefaultExport, errorMigrationPlanNotArray, errorMigrationTargetMismatch, errorUnfilledPlaceholder, placeholder };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as ifDefined } from "./defined-BQWA85QH-BRSBMULx.mjs";
|
|
2
|
-
import { t as CliStructuredError } from "./control-
|
|
2
|
+
import { t as CliStructuredError } from "./control-C9JfxzPo-C4JAdFMg.mjs";
|
|
3
3
|
//#region ../../../1-framework/1-core/errors/dist/execution.mjs
|
|
4
4
|
/**
|
|
5
5
|
* Contract marker not found in database.
|
|
@@ -7,7 +7,12 @@ import { t as CliStructuredError } from "./control-C_8057XM-DMCFN-Wb.mjs";
|
|
|
7
7
|
function errorMarkerMissing(options) {
|
|
8
8
|
return new CliStructuredError("CONTRACT.MARKER_MISSING", "Database not signed", {
|
|
9
9
|
why: options?.why ?? "No database signature (marker) found",
|
|
10
|
-
fix: "Run `prisma-next db sign --db <url>` to sign the database"
|
|
10
|
+
fix: "Run `prisma-next db sign --db <url>` to sign the database",
|
|
11
|
+
nextActions: [{
|
|
12
|
+
kind: "run-command",
|
|
13
|
+
label: "Sign the database",
|
|
14
|
+
command: "{bin} db sign --db <url>"
|
|
15
|
+
}]
|
|
11
16
|
});
|
|
12
17
|
}
|
|
13
18
|
/**
|
|
@@ -43,6 +48,12 @@ function errorMarkerRowCorrupt(options) {
|
|
|
43
48
|
return new CliStructuredError("CONTRACT.MARKER_ROW_CORRUPT", "Marker row is corrupt or incompatible", {
|
|
44
49
|
why: options.why,
|
|
45
50
|
fix: `The ${options.markerLocation} row for space "${options.space}" contains invalid data. Delete the row, then run \`prisma-next db sign --db <url>\` to write a fresh marker.`,
|
|
51
|
+
nextActions: [{
|
|
52
|
+
kind: "run-command",
|
|
53
|
+
label: "Write a fresh marker",
|
|
54
|
+
command: "{bin} db sign --db <url>",
|
|
55
|
+
reason: `Delete the invalid ${options.markerLocation} row for space "${options.space}" first — this command then writes a valid one.`
|
|
56
|
+
}],
|
|
46
57
|
meta: { space: options.space },
|
|
47
58
|
...ifDefined("cause", options.cause)
|
|
48
59
|
});
|
|
@@ -69,6 +80,12 @@ function errorLegacyMarkerShape(options) {
|
|
|
69
80
|
return errorRunnerFailed(`Legacy marker-table shape detected on ${options.markerLocation} (no \`space\` column). Prisma Next is in pre-1.0; the previous transitional auto-migration to the per-space-row schema has been removed. Drop \`${options.markerLocation}\` and re-run \`prisma-next db init\` to reinitialise from a clean baseline.`, {
|
|
70
81
|
why: options.why,
|
|
71
82
|
fix: "Legacy marker-table shape detected. Drop `prisma_contract.marker` (Postgres) or `_prisma_marker` (SQLite) and re-run `prisma-next db init` to recreate it with the current per-space schema.",
|
|
83
|
+
nextActions: [{
|
|
84
|
+
kind: "run-command",
|
|
85
|
+
label: "Reinitialise the marker table from a clean baseline",
|
|
86
|
+
command: "{bin} db init",
|
|
87
|
+
reason: `Drop \`${options.markerLocation}\` first — it has the legacy shape (no \`space\` column) and this command recreates it with the current per-space schema.`
|
|
88
|
+
}],
|
|
72
89
|
meta: { runnerErrorCode: "MIGRATION.LEGACY_MARKER_SHAPE" },
|
|
73
90
|
...ifDefined("cause", options.cause)
|
|
74
91
|
});
|
|
@@ -115,7 +132,12 @@ function parseMarkerRowSafely(row, parse, context) {
|
|
|
115
132
|
function errorMarkerRequired(options) {
|
|
116
133
|
return new CliStructuredError("CONTRACT.MARKER_REQUIRED", "Database must be signed first", {
|
|
117
134
|
why: options?.why ?? "No database signature (marker) found",
|
|
118
|
-
fix: options?.fix ?? "Run `prisma-next db init` first to sign the database"
|
|
135
|
+
fix: options?.fix ?? "Run `prisma-next db init` first to sign the database",
|
|
136
|
+
nextActions: options?.nextActions ?? [{
|
|
137
|
+
kind: "run-command",
|
|
138
|
+
label: "Sign the database",
|
|
139
|
+
command: "{bin} db init"
|
|
140
|
+
}]
|
|
119
141
|
});
|
|
120
142
|
}
|
|
121
143
|
/**
|
|
@@ -126,6 +148,14 @@ function errorSchemaVerificationFailed(options) {
|
|
|
126
148
|
return new CliStructuredError("CONTRACT.SCHEMA_VERIFICATION_FAILED", options.summary, {
|
|
127
149
|
why: "Database schema does not satisfy the contract",
|
|
128
150
|
fix: "Run `prisma-next db update` to reconcile, or adjust your contract to match the database",
|
|
151
|
+
nextActions: [{
|
|
152
|
+
kind: "run-command",
|
|
153
|
+
label: "Reconcile the database",
|
|
154
|
+
command: "{bin} db update"
|
|
155
|
+
}, {
|
|
156
|
+
kind: "edit-file",
|
|
157
|
+
label: "Adjust your contract to match the database"
|
|
158
|
+
}],
|
|
129
159
|
meta: {
|
|
130
160
|
verificationResult: options.verificationResult,
|
|
131
161
|
...ifDefined("issues", options.issues)
|
|
@@ -139,6 +169,7 @@ function errorRunnerFailed(summary, options) {
|
|
|
139
169
|
return new CliStructuredError("MIGRATION.RUNNER_FAILED", summary, {
|
|
140
170
|
why: options?.why ?? "Migration runner failed",
|
|
141
171
|
fix: options?.fix ?? "Inspect the reported conflict and reconcile schema drift",
|
|
172
|
+
...ifDefined("nextActions", options?.nextActions),
|
|
142
173
|
...options?.meta ? { meta: options.meta } : {},
|
|
143
174
|
...ifDefined("cause", options?.cause)
|
|
144
175
|
});
|
|
@@ -169,4 +200,4 @@ function errorRuntime(code, summary, options) {
|
|
|
169
200
|
//#endregion
|
|
170
201
|
export { errorMarkerReadFailed as a, errorRunnerFailed as c, errorTargetMismatch as d, parseMarkerRowSafely as f, errorMarkerMissing as i, errorRuntime as l, withMarkerReadErrorHandling as m, errorDestructiveChanges as n, errorMarkerRequired as o, rethrowMarkerReadError as p, errorHashMismatch as r, errorMarkerRowCorrupt as s, ERROR_CODE_DESTRUCTIVE_CHANGES as t, errorSchemaVerificationFailed as u };
|
|
171
202
|
|
|
172
|
-
//# sourceMappingURL=execution-
|
|
203
|
+
//# sourceMappingURL=execution-CXy93CMh.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execution-CXy93CMh.mjs","names":[],"sources":["../../../../1-framework/1-core/errors/dist/execution.mjs"],"sourcesContent":["import { t as CliStructuredError } from \"./control-C9JfxzPo.mjs\";\nimport { ifDefined } from \"@internal/utils/defined\";\n//#region src/execution.ts\n/**\n* Contract marker not found in database.\n*/\nfunction errorMarkerMissing(options) {\n\treturn new CliStructuredError(\"CONTRACT.MARKER_MISSING\", \"Database not signed\", {\n\t\twhy: options?.why ?? \"No database signature (marker) found\",\n\t\tfix: \"Run `prisma-next db sign --db <url>` to sign the database\",\n\t\tnextActions: [{\n\t\t\tkind: \"run-command\",\n\t\t\tlabel: \"Sign the database\",\n\t\t\tcommand: \"{bin} db sign --db <url>\"\n\t\t}]\n\t});\n}\n/**\n* Contract hash does not match database marker.\n*/\nfunction errorHashMismatch(options) {\n\treturn new CliStructuredError(\"CONTRACT.MARKER_MISMATCH\", \"Hash mismatch\", {\n\t\twhy: options?.why ?? \"Contract hash does not match database marker\",\n\t\tfix: \"Migrate database or re-sign if intentional\",\n\t\t...options?.expected !== void 0 || options?.actual !== void 0 ? { meta: {\n\t\t\t...ifDefined(\"expected\", options?.expected),\n\t\t\t...ifDefined(\"actual\", options?.actual)\n\t\t} } : {}\n\t});\n}\n/**\n* Contract target does not match config target.\n*/\nfunction errorTargetMismatch(expected, actual, options) {\n\treturn new CliStructuredError(\"CONTRACT.TARGET_MISMATCH\", \"Target mismatch\", {\n\t\twhy: options?.why ?? `Contract target does not match config target (expected: ${expected}, actual: ${actual})`,\n\t\tfix: \"Align contract target and config target\",\n\t\tmeta: {\n\t\t\texpected,\n\t\t\tactual\n\t\t}\n\t});\n}\n/**\n* Marker row exists but column values fail schema validation.\n*/\nfunction errorMarkerRowCorrupt(options) {\n\treturn new CliStructuredError(\"CONTRACT.MARKER_ROW_CORRUPT\", \"Marker row is corrupt or incompatible\", {\n\t\twhy: options.why,\n\t\tfix: `The ${options.markerLocation} row for space \"${options.space}\" contains invalid data. Delete the row, then run \\`prisma-next db sign --db <url>\\` to write a fresh marker.`,\n\t\tnextActions: [{\n\t\t\tkind: \"run-command\",\n\t\t\tlabel: \"Write a fresh marker\",\n\t\t\tcommand: \"{bin} db sign --db <url>\",\n\t\t\treason: `Delete the invalid ${options.markerLocation} row for space \"${options.space}\" first — this command then writes a valid one.`\n\t\t}],\n\t\tmeta: { space: options.space },\n\t\t...ifDefined(\"cause\", options.cause)\n\t});\n}\n/**\n* Driver-level failure while reading the contract marker table.\n*/\nfunction errorMarkerReadFailed(options) {\n\treturn new CliStructuredError(\"CONTRACT.MARKER_READ_FAILED\", \"Database error while reading contract marker\", {\n\t\twhy: options.why,\n\t\tfix: `Could not read marker at ${options.markerLocation} for space \"${options.space}\". Verify read permissions, connectivity, and locks, then retry.`,\n\t\tmeta: { space: options.space },\n\t\t...ifDefined(\"cause\", options.cause)\n\t});\n}\nfunction isMarkerRowParseError(err) {\n\treturn err instanceof Error && (err.message.startsWith(\"Invalid contract marker row:\") || err.message.startsWith(\"Invalid marker doc on\"));\n}\nfunction isLegacyMarkerShapeReadError(message) {\n\tconst normalized = message.toLowerCase();\n\treturn normalized.includes(\"column \\\"space\\\" does not exist\") || normalized.includes(\"no such column: space\");\n}\nfunction errorLegacyMarkerShape(options) {\n\treturn errorRunnerFailed(`Legacy marker-table shape detected on ${options.markerLocation} (no \\`space\\` column). Prisma Next is in pre-1.0; the previous transitional auto-migration to the per-space-row schema has been removed. Drop \\`${options.markerLocation}\\` and re-run \\`prisma-next db init\\` to reinitialise from a clean baseline.`, {\n\t\twhy: options.why,\n\t\tfix: \"Legacy marker-table shape detected. Drop `prisma_contract.marker` (Postgres) or `_prisma_marker` (SQLite) and re-run `prisma-next db init` to recreate it with the current per-space schema.\",\n\t\tnextActions: [{\n\t\t\tkind: \"run-command\",\n\t\t\tlabel: \"Reinitialise the marker table from a clean baseline\",\n\t\t\tcommand: \"{bin} db init\",\n\t\t\treason: `Drop \\`${options.markerLocation}\\` first — it has the legacy shape (no \\`space\\` column) and this command recreates it with the current per-space schema.`\n\t\t}],\n\t\tmeta: { runnerErrorCode: \"MIGRATION.LEGACY_MARKER_SHAPE\" },\n\t\t...ifDefined(\"cause\", options.cause)\n\t});\n}\nfunction rethrowMarkerReadError(err, context) {\n\tif (CliStructuredError.is(err)) throw err;\n\tif (isMarkerRowParseError(err)) throw errorMarkerRowCorrupt({\n\t\twhy: err.message,\n\t\tspace: context.space,\n\t\tmarkerLocation: context.markerLocation,\n\t\tcause: err\n\t});\n\tconst message = err instanceof Error ? err.message : String(err);\n\tif (isLegacyMarkerShapeReadError(message)) throw errorLegacyMarkerShape({\n\t\twhy: message,\n\t\tmarkerLocation: context.markerLocation,\n\t\tcause: err\n\t});\n\tthrow errorMarkerReadFailed({\n\t\twhy: message,\n\t\tspace: context.space,\n\t\tmarkerLocation: context.markerLocation,\n\t\tcause: err\n\t});\n}\nasync function withMarkerReadErrorHandling(operation, context) {\n\ttry {\n\t\treturn await operation();\n\t} catch (err) {\n\t\trethrowMarkerReadError(err, context);\n\t}\n}\nfunction parseMarkerRowSafely(row, parse, context) {\n\ttry {\n\t\treturn parse(row);\n\t} catch (err) {\n\t\trethrowMarkerReadError(err, context);\n\t}\n}\n/**\n* Database marker is required but not found.\n* Used by commands that require a pre-existing marker as a precondition.\n*/\nfunction errorMarkerRequired(options) {\n\treturn new CliStructuredError(\"CONTRACT.MARKER_REQUIRED\", \"Database must be signed first\", {\n\t\twhy: options?.why ?? \"No database signature (marker) found\",\n\t\tfix: options?.fix ?? \"Run `prisma-next db init` first to sign the database\",\n\t\tnextActions: options?.nextActions ?? [{\n\t\t\tkind: \"run-command\",\n\t\t\tlabel: \"Sign the database\",\n\t\t\tcommand: \"{bin} db init\"\n\t\t}]\n\t});\n}\n/**\n* Schema verification found mismatches between the database and the contract.\n* The full verification result is preserved in `meta.verificationResult`.\n*/\nfunction errorSchemaVerificationFailed(options) {\n\treturn new CliStructuredError(\"CONTRACT.SCHEMA_VERIFICATION_FAILED\", options.summary, {\n\t\twhy: \"Database schema does not satisfy the contract\",\n\t\tfix: \"Run `prisma-next db update` to reconcile, or adjust your contract to match the database\",\n\t\tnextActions: [{\n\t\t\tkind: \"run-command\",\n\t\t\tlabel: \"Reconcile the database\",\n\t\t\tcommand: \"{bin} db update\"\n\t\t}, {\n\t\t\tkind: \"edit-file\",\n\t\t\tlabel: \"Adjust your contract to match the database\"\n\t\t}],\n\t\tmeta: {\n\t\t\tverificationResult: options.verificationResult,\n\t\t\t...ifDefined(\"issues\", options.issues)\n\t\t}\n\t});\n}\n/**\n* Migration runner failed during execution.\n*/\nfunction errorRunnerFailed(summary, options) {\n\treturn new CliStructuredError(\"MIGRATION.RUNNER_FAILED\", summary, {\n\t\twhy: options?.why ?? \"Migration runner failed\",\n\t\tfix: options?.fix ?? \"Inspect the reported conflict and reconcile schema drift\",\n\t\t...ifDefined(\"nextActions\", options?.nextActions),\n\t\t...options?.meta ? { meta: options.meta } : {},\n\t\t...ifDefined(\"cause\", options?.cause)\n\t});\n}\n/** Error code for destructive changes that require explicit confirmation. */\nconst ERROR_CODE_DESTRUCTIVE_CHANGES = \"MIGRATION.DESTRUCTIVE_CHANGES\";\n/**\n* Destructive operations require explicit confirmation via -y/--yes.\n*/\nfunction errorDestructiveChanges(summary, options) {\n\treturn new CliStructuredError(ERROR_CODE_DESTRUCTIVE_CHANGES, summary, {\n\t\twhy: options?.why ?? \"Planned operations include destructive changes that require confirmation\",\n\t\tfix: options?.fix ?? \"Re-run with `-y` to apply, or use `--dry-run` to preview first\",\n\t\t...options?.meta ? { meta: options.meta } : {}\n\t});\n}\n/**\n* Generic runtime error carrying a caller-provided dotted code.\n*/\nfunction errorRuntime(code, summary, options) {\n\treturn new CliStructuredError(code, summary, {\n\t\t...ifDefined(\"why\", options?.why),\n\t\t...ifDefined(\"fix\", options?.fix),\n\t\t...ifDefined(\"meta\", options?.meta),\n\t\t...ifDefined(\"cause\", options?.cause)\n\t});\n}\n//#endregion\nexport { ERROR_CODE_DESTRUCTIVE_CHANGES, errorDestructiveChanges, errorHashMismatch, errorMarkerMissing, errorMarkerReadFailed, errorMarkerRequired, errorMarkerRowCorrupt, errorRunnerFailed, errorRuntime, errorSchemaVerificationFailed, errorTargetMismatch, parseMarkerRowSafely, rethrowMarkerReadError, withMarkerReadErrorHandling };\n\n//# sourceMappingURL=execution.mjs.map"],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { $ as SchemaDiffIssue, St as VerifyDatabaseSchemaResult } from "./control-tgMv-peQ.mjs";
|
|
2
|
-
import { r as
|
|
2
|
+
import { r as NextAction } from "./structured-error-BBdCpY44.mjs";
|
|
3
|
+
import { r as CliStructuredError } from "./control-ql9N9u4f-Dz4QqSR1.mjs";
|
|
3
4
|
//#region ../../../1-framework/1-core/errors/dist/execution.d.mts
|
|
4
5
|
//#region src/execution.d.ts
|
|
5
6
|
/**
|
|
@@ -59,6 +60,7 @@ declare function parseMarkerRowSafely<T>(row: unknown, parse: (value: unknown) =
|
|
|
59
60
|
declare function errorMarkerRequired(options?: {
|
|
60
61
|
readonly why?: string;
|
|
61
62
|
readonly fix?: string;
|
|
63
|
+
readonly nextActions?: readonly NextAction[];
|
|
62
64
|
}): CliStructuredError;
|
|
63
65
|
/**
|
|
64
66
|
* Schema verification found mismatches between the database and the contract.
|
|
@@ -75,6 +77,7 @@ declare function errorSchemaVerificationFailed(options: {
|
|
|
75
77
|
declare function errorRunnerFailed(summary: string, options?: {
|
|
76
78
|
readonly why?: string;
|
|
77
79
|
readonly fix?: string;
|
|
80
|
+
readonly nextActions?: readonly NextAction[];
|
|
78
81
|
readonly meta?: Record<string, unknown>;
|
|
79
82
|
readonly cause?: unknown;
|
|
80
83
|
}): CliStructuredError;
|
|
@@ -99,4 +102,4 @@ declare function errorRuntime(code: `${string}.${string}`, summary: string, opti
|
|
|
99
102
|
}): CliStructuredError;
|
|
100
103
|
//#endregion
|
|
101
104
|
export { errorMarkerReadFailed as a, errorRunnerFailed as c, errorTargetMismatch as d, parseMarkerRowSafely as f, errorMarkerMissing as i, errorRuntime as l, withMarkerReadErrorHandling as m, errorDestructiveChanges as n, errorMarkerRequired as o, rethrowMarkerReadError as p, errorHashMismatch as r, errorMarkerRowCorrupt as s, ERROR_CODE_DESTRUCTIVE_CHANGES as t, errorSchemaVerificationFailed as u };
|
|
102
|
-
//# sourceMappingURL=execution-
|
|
105
|
+
//# sourceMappingURL=execution-Cs6rxLIE.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execution-Cs6rxLIE.d.mts","names":[],"sources":["../../../../1-framework/1-core/errors/dist/execution.d.mts"],"mappings":";;;;;;;;iBAOiB,mBAAmB;WACzB;IACP;;;;iBAIa,kBAAkB;WACxB;WACA;WACA;IACP;;;;iBAIa,oBAAoB,kBAAkB,gBAAgB;WAC5D;IACP;;;;iBAIa,sBAAsB;WAC5B;WACA;WACA;WACA;IACP;;;;iBAIa,sBAAsB;WAC5B;WACA;WACA;WACA;IACP;iBACa,uBAAuB,cAAc;WAC3C;WACA;;iBAEM,4BAA4B,GAAG,iBAAiB,QAAQ,IAAI;WAClE;WACA;IACP,QAAQ;iBACK,qBAAqB,GAAG,cAAc,QAAQ,mBAAmB,GAAG;WAC1E;WACA;IACP;;;;;iBAKa,oBAAoB;WAC1B;WACA;WACA,uBAAuB;IAC9B;;;;;iBAKa,8BAA8B;WACpC;WACA,oBAAoB;WACpB,kBAAkB;IACzB;;;;iBAIa,kBAAkB,iBAAiB;WACzC;WACA;WACA,uBAAuB;WACvB,OAAO;WACP;IACP;;cAEU;;;;iBAIG,wBAAwB,iBAAiB;WAC/C;WACA;WACA,OAAO;IACd;;;;iBAIa,aAAa,6BAA6B,iBAAiB;WACjE;WACA;WACA,OAAO;WACP;IACP"}
|
package/dist/{framework-authoring-CDEvlouU-mlMWSksD.mjs → framework-authoring-CDEvlouU-CD43IJTJ.mjs}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as blindCast } from "./casts-DpaahrlC-Bd5n2coI.mjs";
|
|
2
2
|
import { t as ifDefined } from "./defined-BQWA85QH-BRSBMULx.mjs";
|
|
3
|
-
import { l as isColumnDefaultLiteralInputValue, u as isExecutionMutationDefaultValue } from "./types-
|
|
3
|
+
import { l as isColumnDefaultLiteralInputValue, u as isExecutionMutationDefaultValue } from "./types-B1qkza2E.mjs";
|
|
4
4
|
import { t as InternalError } from "./internal-error-BIc-ehme-ouBQPoEL.mjs";
|
|
5
5
|
import { n as runtimeError } from "./runtime-error-BA9d7XjZ-BlT8t6LB.mjs";
|
|
6
6
|
//#region ../../../1-framework/1-core/framework-components/dist/framework-authoring-CDEvlouU.mjs
|
|
@@ -695,4 +695,4 @@ function instantiateAuthoringFieldPreset(descriptor, args) {
|
|
|
695
695
|
//#endregion
|
|
696
696
|
export { mergeAuthoringNamespaces as _, collectScalarTypeConstructors as a, validateAuthoringHelperArguments as b, instantiateAuthoringEntityType as c, isAuthoringArgRef as d, isAuthoringEntityTypeDescriptor as f, isAuthoringTypeConstructorDescriptor as g, isAuthoringPslBlockDescriptor as h, collectContributedDescriptorPaths as i, instantiateAuthoringFieldPreset as l, isAuthoringModelAttributeDescriptor as m, assertResolvableTypeConstructorTemplates as n, flushAuthoringWarnings as o, isAuthoringFieldPresetDescriptor as p, classifyEnumMemberType as r, hasRegisteredFieldNamespace as s, assertNoCrossRegistryCollisions as t, instantiateAuthoringTypeConstructor as u, resolveAuthoringTemplateValue as v, resolveEnumCodecId as y };
|
|
697
697
|
|
|
698
|
-
//# sourceMappingURL=framework-authoring-CDEvlouU-
|
|
698
|
+
//# sourceMappingURL=framework-authoring-CDEvlouU-CD43IJTJ.mjs.map
|