@prisma/orm-family-sql 8.0.0-rc.19-dev.7 → 8.0.0-rc.19-dev.8
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/{authoring-entity-types-DUQLeBf_-DSWWvkLJ.d.mts → authoring-entity-types-CgKIgWq5-Dxf_T0Ih.d.mts} +3 -3
- package/dist/authoring-entity-types-CgKIgWq5-Dxf_T0Ih.d.mts.map +1 -0
- package/dist/{config-types-BLDwd9wS.mjs → config-types-BbBY5_GQ.mjs} +2 -2
- package/dist/{config-types-BLDwd9wS.mjs.map → config-types-BbBY5_GQ.mjs.map} +1 -1
- package/dist/{contract-builder-CNeGxqP_.mjs → contract-builder-D7cTmhfs.mjs} +4 -5
- package/dist/contract-builder-D7cTmhfs.mjs.map +1 -0
- package/dist/contract-prisma7__provider.mjs +10 -4
- package/dist/contract-prisma7__provider.mjs.map +1 -1
- package/dist/contract-psl.mjs +1 -1
- package/dist/contract-psl__attribute-specs.mjs +1 -1
- package/dist/contract-psl__provider.mjs +2 -2
- package/dist/contract-psl__provider.mjs.map +1 -1
- package/dist/contract-ts.mjs +3 -3
- package/dist/contract-ts__config-types.mjs +1 -1
- package/dist/contract-ts__contract-builder.mjs +2 -2
- package/dist/contract.d.mts +3 -3
- package/dist/contract.mjs +3 -3
- package/dist/contract__data-type-support.d.mts +2 -2
- package/dist/contract__data-type-support.mjs +2 -2
- package/dist/contract__data-type.d.mts +2 -2
- package/dist/contract__data-type.mjs +2 -2
- package/dist/{control-Dv1ea79q.d.mts → control-BW6gbqvb.d.mts} +2 -2
- package/dist/{control-Dv1ea79q.d.mts.map → control-BW6gbqvb.d.mts.map} +1 -1
- package/dist/{control-Cih61sJa.mjs → control-DnFJf5_F.mjs} +3 -3
- package/dist/{control-Cih61sJa.mjs.map → control-DnFJf5_F.mjs.map} +1 -1
- package/dist/{data-type-CUJMZOHo.mjs → data-type-BMnEHaW3.mjs} +2 -17
- package/dist/data-type-BMnEHaW3.mjs.map +1 -0
- package/dist/{data-type-CWFhlpaq.d.mts → data-type-iatMyRs6.d.mts} +2 -9
- package/dist/data-type-iatMyRs6.d.mts.map +1 -0
- package/dist/data-type-support-a9BR-PbH.d.mts +7 -0
- package/dist/data-type-support-a9BR-PbH.d.mts.map +1 -0
- package/dist/data-type-support-juGV2d9c.mjs +9 -0
- package/dist/data-type-support-juGV2d9c.mjs.map +1 -0
- package/dist/{derived-checks-iXF3y0Ki-28vqz_8w.mjs → derived-checks-D5HVRvqN-B37oe30Z.mjs} +2 -2
- package/dist/{derived-checks-iXF3y0Ki-28vqz_8w.mjs.map → derived-checks-D5HVRvqN-B37oe30Z.mjs.map} +1 -1
- package/dist/family.d.mts +3 -3
- package/dist/family.mjs +4 -4
- package/dist/family__control.d.mts +1 -1
- package/dist/family__control.mjs +1 -1
- package/dist/family__pack.d.mts +1 -1
- package/dist/family__pack.mjs +2 -2
- package/dist/family__psl-build.d.mts +1 -1
- package/dist/family__psl-build.mjs +1 -1
- package/dist/{generator-functions-DuDZSQHE-Dl5EP61A.mjs → generator-functions-D_qdqBV--BoeJwWsz.mjs} +4 -4
- package/dist/generator-functions-D_qdqBV--BoeJwWsz.mjs.map +1 -0
- package/dist/{interpreter-BGgim2OE-D9BG-4aU.mjs → interpreter-BDpym-rc-BZVFp5GU.mjs} +112 -77
- package/dist/interpreter-BDpym-rc-BZVFp5GU.mjs.map +1 -0
- package/dist/{pack-B5_CfdgT.mjs → pack-BifOs83a.mjs} +3 -3
- package/dist/{pack-B5_CfdgT.mjs.map → pack-BifOs83a.mjs.map} +1 -1
- package/dist/{pack-BJ53Inwa.d.mts → pack-CdaZMfI_.d.mts} +2 -2
- package/dist/{pack-BJ53Inwa.d.mts.map → pack-CdaZMfI_.d.mts.map} +1 -1
- package/dist/{psl-build-prdUw3sC.d.mts → psl-build-BYXXz2XD.d.mts} +2 -2
- package/dist/{psl-build-prdUw3sC.d.mts.map → psl-build-BYXXz2XD.d.mts.map} +1 -1
- package/dist/{psl-build-D5VG40ej.mjs → psl-build-fwoI6rBO.mjs} +3 -4
- package/dist/{psl-build-D5VG40ej.mjs.map → psl-build-fwoI6rBO.mjs.map} +1 -1
- package/dist/{psl-field-resolution-C9zwpsAu-DCc7Eifv.mjs → psl-field-resolution-C5KQ7kzP-DH8oSBIL.mjs} +4 -22
- package/dist/psl-field-resolution-C5KQ7kzP-DH8oSBIL.mjs.map +1 -0
- package/package.json +18 -18
- package/dist/authoring-entity-types-DUQLeBf_-DSWWvkLJ.d.mts.map +0 -1
- package/dist/contract-builder-CNeGxqP_.mjs.map +0 -1
- package/dist/data-type-CUJMZOHo.mjs.map +0 -1
- package/dist/data-type-CWFhlpaq.d.mts.map +0 -1
- package/dist/data-type-support-C5-XxxeB.mjs +0 -364
- package/dist/data-type-support-C5-XxxeB.mjs.map +0 -1
- package/dist/data-type-support-CBcYhSkD.d.mts +0 -88
- package/dist/data-type-support-CBcYhSkD.d.mts.map +0 -1
- package/dist/generator-functions-DuDZSQHE-Dl5EP61A.mjs.map +0 -1
- package/dist/interpreter-BGgim2OE-D9BG-4aU.mjs.map +0 -1
- package/dist/psl-field-resolution-C9zwpsAu-DCc7Eifv.mjs.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { h as checkSqlDefaultText } from "./validators-BDuMio1F.mjs";
|
|
2
2
|
import { C as SqlPlannerConflict, D as SqlPlannerResult, E as SqlPlannerFailureResult, O as SqlPlannerSuccessResult, S as SqlPlanTargetDetails, T as SqlPlannerConflictLocation, _ as SqlMigrationRunnerExecuteCallbacks, a as ResolveIdentityValueInput, b as SqlMigrationRunnerResult, c as SqlMigrationPlan, d as SqlMigrationPlanOperationStep, f as SqlMigrationPlanOperationTarget, g as SqlMigrationRunnerErrorCode, h as SqlMigrationRunner, i as FieldEventContext, k as StorageTypePlanResult, l as SqlMigrationPlanContractInfo, m as SqlMigrationPlannerPlanOptions, n as CreateSqlMigrationPlanOptions, o as SqlControlAdapterDescriptor, p as SqlMigrationPlanner, r as FieldEvent, s as SqlControlExtensionDescriptor, t as CodecControlHooks, u as SqlMigrationPlanOperation, v as SqlMigrationRunnerExecuteOptions, w as SqlPlannerConflictKind, x as SqlMigrationRunnerSuccessValue, y as SqlMigrationRunnerFailure } from "./types-Cq6ImLAB-BqOfLAYG.mjs";
|
|
3
3
|
import { n as SqlSchemaDiffInput, r as SqlSchemaDiffResult, t as SqlSchemaDiffFn } from "./schema-differ-DmP74bB8-0ZupRJKb.mjs";
|
|
4
|
-
import { $ as SubjectStorage, $t as sqlOfSlot, A as NoTable, At as isUnfilledSlot, B as SingleOperationCall, Bt as readColumnDefault, C as MigrationPlannerConflict, Ct as detectDestructiveChanges, D as NO_RENAMED_ORIGINS, Dt as fieldOfColumn, E as ModelTable, Et as fieldEventStorage, F as ReportedBody, Ft as planFieldEventCalls, G as SqlPslBuildContext, Gt as resolveColumnRenameAgainst, H as SqlControlTargetDescriptor, Ht as requiredColumnMeta, I as ReportedLiteralDefault, It as planFieldEventOperations, J as SqlSlot, Jt as rowsWithoutValueSummary, K as SqlQuote, Kt as resolveTableRenameAgainst, L as RequiredColumn, Lt as planStatements, M as PlannedStatements, Mt as otherSpaceDeclaring, N as ReadColumnDefault, Nt as partitionCallsByControlPolicy, O as NamespaceRename, Ot as fieldRenameStorageEffect, P as ReadReportedDefault, Pt as partitionIssuesByControlPolicy, Q as StatementPlanningTarget, Qt as sqlDefaultFunctions, R as RequiredColumnMark, Rt as plannerFailure, S as MigrationPlanner, St as createSqlTextSources, T as ModelStorageEffect, Tt as extractCodecControlHooks, U as SqlDefaultFunctionName, Ut as requiredColumnOf, V as SqlControlFamilyInstance, Vt as readReportedDefault, W as SqlDescribedContractSpace, Wt as requiredColumnsOfMigration, X as StatementColumn, Xt as runnerSuccess, Y as SqlTextSources, Yt as runnerFailure, Z as StatementOwnership, Zt as slotSource, _ as INIT_ADDITIVE_POLICY, _t as contractNamespaceToSchemaIR, a as ColumnRename, an as unmatchedColumnRename, at as TableRenameByHand, b as MigrationPlan, bt as convertedColumnOf, c as ContractColumns, ct as TargetRefusal, d as ConvertedColumn, dt as appliedStatementsInOrder, en as sqlTypeLookupsOf, et as SuppressionRecord, f as DefaultResolver, ft as assembleAuthoringContributions, g as FieldStorageEffect, gt as contractColumns, h as FieldStatementColumns, ht as columnTakesTemporaryValue, i as ColumnOnOneSide, in as unknownCallNames, it as TableRename, j as PlanFieldEventOperationsOptions, jt as modelRenameStorageEffect, k as NamespaceStatementTarget, kt as fieldStatementColumns, l as ContractToSchemaIROptions, lt as WorkingSchemaOrigins, m as FieldEventCall, mt as checkSqlExpressionText, n as CallSubjects, nn as subjectsOfCalls, nt as TableMove, o as ColumnRenameRequest, on as unmatchedTableRename, ot as TableRenameRequest, p as DefaultResolverColumn, pt as backfillOfDefaultedField, q as SqlQuotingRules, qt as rowsWithoutValueFailure, r as CallWithCompanions, rn as unconvertedFieldOf, rt as TableNameCaseGuardTable, s as ContractColumn, st as TargetMigrationsCapability, t as COLUMN_RENAME_UNMATCHED_CODE, tn as storageNameOfOperation, tt as TABLE_NAME_CASE_CHANGED_CODE, u as ControlPolicySubject, ut as _default, v as MigrationOperationClass, vt as contractToSchemaIR, w as MigrationPlannerResult, wt as detectTableNameCaseChanges, x as MigrationPlanOperation, xt as createMigrationPlan, y as MigrationOperationPolicy, yt as convertedColumnMeta, z as SchemaTables, zt as plannerSuccess } from "./control-
|
|
4
|
+
import { $ as SubjectStorage, $t as sqlOfSlot, A as NoTable, At as isUnfilledSlot, B as SingleOperationCall, Bt as readColumnDefault, C as MigrationPlannerConflict, Ct as detectDestructiveChanges, D as NO_RENAMED_ORIGINS, Dt as fieldOfColumn, E as ModelTable, Et as fieldEventStorage, F as ReportedBody, Ft as planFieldEventCalls, G as SqlPslBuildContext, Gt as resolveColumnRenameAgainst, H as SqlControlTargetDescriptor, Ht as requiredColumnMeta, I as ReportedLiteralDefault, It as planFieldEventOperations, J as SqlSlot, Jt as rowsWithoutValueSummary, K as SqlQuote, Kt as resolveTableRenameAgainst, L as RequiredColumn, Lt as planStatements, M as PlannedStatements, Mt as otherSpaceDeclaring, N as ReadColumnDefault, Nt as partitionCallsByControlPolicy, O as NamespaceRename, Ot as fieldRenameStorageEffect, P as ReadReportedDefault, Pt as partitionIssuesByControlPolicy, Q as StatementPlanningTarget, Qt as sqlDefaultFunctions, R as RequiredColumnMark, Rt as plannerFailure, S as MigrationPlanner, St as createSqlTextSources, T as ModelStorageEffect, Tt as extractCodecControlHooks, U as SqlDefaultFunctionName, Ut as requiredColumnOf, V as SqlControlFamilyInstance, Vt as readReportedDefault, W as SqlDescribedContractSpace, Wt as requiredColumnsOfMigration, X as StatementColumn, Xt as runnerSuccess, Y as SqlTextSources, Yt as runnerFailure, Z as StatementOwnership, Zt as slotSource, _ as INIT_ADDITIVE_POLICY, _t as contractNamespaceToSchemaIR, a as ColumnRename, an as unmatchedColumnRename, at as TableRenameByHand, b as MigrationPlan, bt as convertedColumnOf, c as ContractColumns, ct as TargetRefusal, d as ConvertedColumn, dt as appliedStatementsInOrder, en as sqlTypeLookupsOf, et as SuppressionRecord, f as DefaultResolver, ft as assembleAuthoringContributions, g as FieldStorageEffect, gt as contractColumns, h as FieldStatementColumns, ht as columnTakesTemporaryValue, i as ColumnOnOneSide, in as unknownCallNames, it as TableRename, j as PlanFieldEventOperationsOptions, jt as modelRenameStorageEffect, k as NamespaceStatementTarget, kt as fieldStatementColumns, l as ContractToSchemaIROptions, lt as WorkingSchemaOrigins, m as FieldEventCall, mt as checkSqlExpressionText, n as CallSubjects, nn as subjectsOfCalls, nt as TableMove, o as ColumnRenameRequest, on as unmatchedTableRename, ot as TableRenameRequest, p as DefaultResolverColumn, pt as backfillOfDefaultedField, q as SqlQuotingRules, qt as rowsWithoutValueFailure, r as CallWithCompanions, rn as unconvertedFieldOf, rt as TableNameCaseGuardTable, s as ContractColumn, st as TargetMigrationsCapability, t as COLUMN_RENAME_UNMATCHED_CODE, tn as storageNameOfOperation, tt as TABLE_NAME_CASE_CHANGED_CODE, u as ControlPolicySubject, ut as _default, v as MigrationOperationClass, vt as contractToSchemaIR, w as MigrationPlannerResult, wt as detectTableNameCaseChanges, x as MigrationPlanOperation, xt as createMigrationPlan, y as MigrationOperationPolicy, yt as convertedColumnMeta, z as SchemaTables, zt as plannerSuccess } from "./control-BW6gbqvb.mjs";
|
|
5
5
|
export { COLUMN_RENAME_UNMATCHED_CODE, type CallSubjects, type CallWithCompanions, type CodecControlHooks, type ColumnOnOneSide, type ColumnRename, type ColumnRenameRequest, type ContractColumn, type ContractColumns, type ContractToSchemaIROptions, type ControlPolicySubject, type ConvertedColumn, type CreateSqlMigrationPlanOptions, type DefaultResolver, type DefaultResolverColumn, type FieldEvent, type FieldEventCall, type FieldEventContext, type FieldStatementColumns, type FieldStorageEffect, INIT_ADDITIVE_POLICY, type MigrationOperationClass, type MigrationOperationPolicy, type MigrationPlan, type MigrationPlanOperation, type MigrationPlanner, type MigrationPlannerConflict, type MigrationPlannerResult, type ModelStorageEffect, type ModelTable, NO_RENAMED_ORIGINS, type NamespaceRename, type NamespaceStatementTarget, type NoTable, type PlanFieldEventOperationsOptions, type PlannedStatements, type ReadColumnDefault, type ReadReportedDefault, type ReportedBody, type ReportedLiteralDefault, type RequiredColumn, type RequiredColumnMark, type ResolveIdentityValueInput, type SchemaTables, type SingleOperationCall, type SqlControlAdapterDescriptor, type SqlControlExtensionDescriptor, type SqlControlFamilyInstance, type SqlControlTargetDescriptor, type SqlDefaultFunctionName, type SqlDescribedContractSpace, type SqlMigrationPlan, type SqlMigrationPlanContractInfo, type SqlMigrationPlanOperation, type SqlMigrationPlanOperationStep, type SqlMigrationPlanOperationTarget, type SqlMigrationPlanner, type SqlMigrationPlannerPlanOptions, type SqlMigrationRunner, type SqlMigrationRunnerErrorCode, type SqlMigrationRunnerExecuteCallbacks, type SqlMigrationRunnerExecuteOptions, type SqlMigrationRunnerFailure, type SqlMigrationRunnerResult, type SqlMigrationRunnerSuccessValue, type SqlPlanTargetDetails, type SqlPlannerConflict, type SqlPlannerConflictKind, type SqlPlannerConflictLocation, type SqlPlannerFailureResult, type SqlPlannerResult, type SqlPlannerSuccessResult, type SqlPslBuildContext, type SqlQuote, type SqlQuotingRules, type SqlSchemaDiffFn, type SqlSchemaDiffInput, type SqlSchemaDiffResult, type SqlSlot, type SqlTextSources, type StatementColumn, type StatementOwnership, type StatementPlanningTarget, type StorageTypePlanResult, type SubjectStorage, type SuppressionRecord, TABLE_NAME_CASE_CHANGED_CODE, type TableMove, type TableNameCaseGuardTable, type TableRename, type TableRenameByHand, type TableRenameRequest, type TargetMigrationsCapability, type TargetRefusal, type WorkingSchemaOrigins, appliedStatementsInOrder, assembleAuthoringContributions, backfillOfDefaultedField, checkSqlDefaultText, checkSqlExpressionText, columnTakesTemporaryValue, contractColumns, contractNamespaceToSchemaIR, contractToSchemaIR, convertedColumnMeta, convertedColumnOf, createMigrationPlan, createSqlTextSources, _default as default, detectDestructiveChanges, detectTableNameCaseChanges, extractCodecControlHooks, fieldEventStorage, fieldOfColumn, fieldRenameStorageEffect, fieldStatementColumns, isUnfilledSlot, modelRenameStorageEffect, otherSpaceDeclaring, partitionCallsByControlPolicy, partitionIssuesByControlPolicy, planFieldEventCalls, planFieldEventOperations, planStatements, plannerFailure, plannerSuccess, readColumnDefault, readReportedDefault, requiredColumnMeta, requiredColumnOf, requiredColumnsOfMigration, resolveColumnRenameAgainst, resolveTableRenameAgainst, rowsWithoutValueFailure, rowsWithoutValueSummary, runnerFailure, runnerSuccess, slotSource, sqlDefaultFunctions, sqlOfSlot, sqlTypeLookupsOf, storageNameOfOperation, subjectsOfCalls, unconvertedFieldOf, unknownCallNames, unmatchedColumnRename, unmatchedTableRename };
|
package/dist/family__control.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { n as checkSqlDefaultText } from "./validators-xXKEHvnw.mjs";
|
|
2
2
|
import { s as extractCodecControlHooks } from "./schema-verify-C3wbdviw-BifQBCpu.mjs";
|
|
3
|
-
import { $ as unmatchedColumnRename, A as planFieldEventOperations, B as resolveTableRenameAgainst, C as fieldStatementColumns, D as partitionCallsByControlPolicy, E as otherSpaceDeclaring, F as readReportedDefault, G as slotSource, H as rowsWithoutValueSummary, I as requiredColumnMeta, J as sqlTypeLookupsOf, K as sqlDefaultFunctions, L as requiredColumnOf, M as plannerFailure, N as plannerSuccess, O as partitionIssuesByControlPolicy, P as readColumnDefault, Q as unknownCallNames, R as requiredColumnsOfMigration, S as fieldRenameStorageEffect, T as modelRenameStorageEffect, U as runnerFailure, V as rowsWithoutValueFailure, W as runnerSuccess, X as subjectsOfCalls, Y as storageNameOfOperation, Z as unconvertedFieldOf, _ as createSqlTextSources, a as appliedStatementsInOrder, b as fieldEventStorage, c as checkSqlExpressionText, d as contractNamespaceToSchemaIR, et as unmatchedTableRename, f as contractToSchemaIR, g as createMigrationPlan, h as convertedColumnOf, i as TABLE_NAME_CASE_CHANGED_CODE, j as planStatements, k as planFieldEventCalls, l as columnTakesTemporaryValue, m as convertedColumnMeta, n as INIT_ADDITIVE_POLICY, o as assembleAuthoringContributions, p as control_default, q as sqlOfSlot, r as NO_RENAMED_ORIGINS, s as backfillOfDefaultedField, t as COLUMN_RENAME_UNMATCHED_CODE, u as contractColumns, v as detectDestructiveChanges, w as isUnfilledSlot, x as fieldOfColumn, y as detectTableNameCaseChanges, z as resolveColumnRenameAgainst } from "./control-
|
|
3
|
+
import { $ as unmatchedColumnRename, A as planFieldEventOperations, B as resolveTableRenameAgainst, C as fieldStatementColumns, D as partitionCallsByControlPolicy, E as otherSpaceDeclaring, F as readReportedDefault, G as slotSource, H as rowsWithoutValueSummary, I as requiredColumnMeta, J as sqlTypeLookupsOf, K as sqlDefaultFunctions, L as requiredColumnOf, M as plannerFailure, N as plannerSuccess, O as partitionIssuesByControlPolicy, P as readColumnDefault, Q as unknownCallNames, R as requiredColumnsOfMigration, S as fieldRenameStorageEffect, T as modelRenameStorageEffect, U as runnerFailure, V as rowsWithoutValueFailure, W as runnerSuccess, X as subjectsOfCalls, Y as storageNameOfOperation, Z as unconvertedFieldOf, _ as createSqlTextSources, a as appliedStatementsInOrder, b as fieldEventStorage, c as checkSqlExpressionText, d as contractNamespaceToSchemaIR, et as unmatchedTableRename, f as contractToSchemaIR, g as createMigrationPlan, h as convertedColumnOf, i as TABLE_NAME_CASE_CHANGED_CODE, j as planStatements, k as planFieldEventCalls, l as columnTakesTemporaryValue, m as convertedColumnMeta, n as INIT_ADDITIVE_POLICY, o as assembleAuthoringContributions, p as control_default, q as sqlOfSlot, r as NO_RENAMED_ORIGINS, s as backfillOfDefaultedField, t as COLUMN_RENAME_UNMATCHED_CODE, u as contractColumns, v as detectDestructiveChanges, w as isUnfilledSlot, x as fieldOfColumn, y as detectTableNameCaseChanges, z as resolveColumnRenameAgainst } from "./control-DnFJf5_F.mjs";
|
|
4
4
|
export { COLUMN_RENAME_UNMATCHED_CODE, INIT_ADDITIVE_POLICY, NO_RENAMED_ORIGINS, TABLE_NAME_CASE_CHANGED_CODE, appliedStatementsInOrder, assembleAuthoringContributions, backfillOfDefaultedField, checkSqlDefaultText, checkSqlExpressionText, columnTakesTemporaryValue, contractColumns, contractNamespaceToSchemaIR, contractToSchemaIR, convertedColumnMeta, convertedColumnOf, createMigrationPlan, createSqlTextSources, control_default as default, detectDestructiveChanges, detectTableNameCaseChanges, extractCodecControlHooks, fieldEventStorage, fieldOfColumn, fieldRenameStorageEffect, fieldStatementColumns, isUnfilledSlot, modelRenameStorageEffect, otherSpaceDeclaring, partitionCallsByControlPolicy, partitionIssuesByControlPolicy, planFieldEventCalls, planFieldEventOperations, planStatements, plannerFailure, plannerSuccess, readColumnDefault, readReportedDefault, requiredColumnMeta, requiredColumnOf, requiredColumnsOfMigration, resolveColumnRenameAgainst, resolveTableRenameAgainst, rowsWithoutValueFailure, rowsWithoutValueSummary, runnerFailure, runnerSuccess, slotSource, sqlDefaultFunctions, sqlOfSlot, sqlTypeLookupsOf, storageNameOfOperation, subjectsOfCalls, unconvertedFieldOf, unknownCallNames, unmatchedColumnRename, unmatchedTableRename };
|
package/dist/family__pack.d.mts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as temporalCodecPresetWithPrecision, i as sqlTargetTypeConstructors, n as sqlFamilyPack, o as temporalStringAuthoringPresets, r as sqlIntegerArgumentGeneratorFunctions, t as idGeneratorFunctionBindings } from "./pack-
|
|
1
|
+
import { a as temporalCodecPresetWithPrecision, i as sqlTargetTypeConstructors, n as sqlFamilyPack, o as temporalStringAuthoringPresets, r as sqlIntegerArgumentGeneratorFunctions, t as idGeneratorFunctionBindings } from "./pack-CdaZMfI_.mjs";
|
|
2
2
|
export { sqlFamilyPack as default, idGeneratorFunctionBindings, sqlIntegerArgumentGeneratorFunctions, sqlTargetTypeConstructors, temporalCodecPresetWithPrecision, temporalStringAuthoringPresets };
|
package/dist/family__pack.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { c as sqlIntegerArgumentGeneratorFunctions, l as sqlTargetTypeConstructors, t as idGeneratorFunctionBindings } from "./generator-functions-
|
|
2
|
-
import { n as temporalCodecPresetWithPrecision, r as temporalStringAuthoringPresets, t as sqlFamilyPack } from "./pack-
|
|
1
|
+
import { c as sqlIntegerArgumentGeneratorFunctions, l as sqlTargetTypeConstructors, t as idGeneratorFunctionBindings } from "./generator-functions-D_qdqBV--BoeJwWsz.mjs";
|
|
2
|
+
import { n as temporalCodecPresetWithPrecision, r as temporalStringAuthoringPresets, t as sqlFamilyPack } from "./pack-BifOs83a.mjs";
|
|
3
3
|
export { sqlFamilyPack as default, idGeneratorFunctionBindings, sqlIntegerArgumentGeneratorFunctions, sqlTargetTypeConstructors, temporalCodecPresetWithPrecision, temporalStringAuthoringPresets };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { a as writeDefaultLiteral, i as writeDataTypeValue, n as DefaultMappingResult, r as mapDefault, t as DefaultMappingOptions } from "./default-mapping-CAOONlKQ-v7GTIkjE.mjs";
|
|
2
|
-
import { a as InferredTypeConstructors, c as PslTypeCall, d as inferColumnTypes, f as inferredTypeConstructors, i as InferredTypeConstructor, l as fewestArgumentsCall, m as writtenTypeArguments, n as GeneratorCallRefusal, o as IntrospectedTable, p as toEnumMemberName, r as GeneratorCallsResult, s as PhaseCallText, t as ColumnTypeOf, u as generatorCallsFor } from "./psl-build-
|
|
2
|
+
import { a as InferredTypeConstructors, c as PslTypeCall, d as inferColumnTypes, f as inferredTypeConstructors, i as InferredTypeConstructor, l as fewestArgumentsCall, m as writtenTypeArguments, n as GeneratorCallRefusal, o as IntrospectedTable, p as toEnumMemberName, r as GeneratorCallsResult, s as PhaseCallText, t as ColumnTypeOf, u as generatorCallsFor } from "./psl-build-BYXXz2XD.mjs";
|
|
3
3
|
export { type ColumnTypeOf, type DefaultMappingOptions, type DefaultMappingResult, type GeneratorCallRefusal, type GeneratorCallsResult, type InferredTypeConstructor, type InferredTypeConstructors, type IntrospectedTable, type PhaseCallText, type PslTypeCall, fewestArgumentsCall, generatorCallsFor, inferColumnTypes, inferredTypeConstructors, mapDefault, toEnumMemberName, writeDataTypeValue, writeDefaultLiteral, writtenTypeArguments };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { s as toEnumMemberName } from "./psl-names-C3cwe0rg-CsuHOV7E.mjs";
|
|
2
|
-
import { a as mapDefault, c as writtenTypeArguments, i as inferredTypeConstructors, n as generatorCallsFor, o as writeDataTypeValue, r as inferColumnTypes, s as writeDefaultLiteral, t as fewestArgumentsCall } from "./psl-build-
|
|
2
|
+
import { a as mapDefault, c as writtenTypeArguments, i as inferredTypeConstructors, n as generatorCallsFor, o as writeDataTypeValue, r as inferColumnTypes, s as writeDefaultLiteral, t as fewestArgumentsCall } from "./psl-build-fwoI6rBO.mjs";
|
|
3
3
|
export { fewestArgumentsCall, generatorCallsFor, inferColumnTypes, inferredTypeConstructors, mapDefault, toEnumMemberName, writeDataTypeValue, writeDefaultLiteral, writtenTypeArguments };
|
package/dist/{generator-functions-DuDZSQHE-Dl5EP61A.mjs → generator-functions-D_qdqBV--BoeJwWsz.mjs}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as enumType } from "./contract-builder-
|
|
1
|
+
import { c as enumType } from "./contract-builder-D7cTmhfs.mjs";
|
|
2
2
|
import { c as SQL_TEXT_CODEC_ID, i as SQL_CHAR_CODEC_ID, l as SQL_VARCHAR_CODEC_ID } from "./ast-BJs2669T.mjs";
|
|
3
3
|
import { readEnumBlockMembers, resolveEnumCodecId } from "@prisma/orm-framework/components/authoring";
|
|
4
4
|
import { enumRefusalOf, requiredParamKeys } from "@prisma/orm-framework/components/codec";
|
|
@@ -8,7 +8,7 @@ import { singleGeneratorBinding } from "@prisma/orm-framework/components/compone
|
|
|
8
8
|
import { notOk, ok } from "@prisma/orm-framework/utils/result";
|
|
9
9
|
import { blockAttribute, dataTypeValue, enumMemberValue, leafDiagnostic, mapBlock, optional, refineArg, str } from "@prisma/orm-framework/psl-parser";
|
|
10
10
|
import { CUID_VERSION, NANOID_SIZE, UUID_VERSIONS, generatedLength } from "@prisma/orm-framework/ids";
|
|
11
|
-
//#region ../../../2-sql/9-family/dist/generator-functions-
|
|
11
|
+
//#region ../../../2-sql/9-family/dist/generator-functions-D_qdqBV-.mjs
|
|
12
12
|
function sqlFamilyEnumSpec() {
|
|
13
13
|
return mapBlock({
|
|
14
14
|
value: {
|
|
@@ -48,7 +48,7 @@ const sqlFamilyEntityTypes = { enum: {
|
|
|
48
48
|
});
|
|
49
49
|
return;
|
|
50
50
|
}
|
|
51
|
-
const dataType = ctx.
|
|
51
|
+
const dataType = ctx.dataTypes.lookup.get(descriptor.dataType);
|
|
52
52
|
if (dataType === void 0) {
|
|
53
53
|
diagnostics?.push({
|
|
54
54
|
code: "PSL_EXTENSION_INVALID_VALUE",
|
|
@@ -541,4 +541,4 @@ function checkedInteger(integer, dataTypes, allowed, refusal) {
|
|
|
541
541
|
//#endregion
|
|
542
542
|
export { sqlFamilyGeneratorDescriptors as a, sqlIntegerArgumentGeneratorFunctions as c, sqlFamilyEntityTypes as i, sqlTargetTypeConstructors as l, sqlFamilyAuthoringFieldPresets as n, sqlFamilyGeneratorFunctions as o, sqlFamilyAuthoringTypes as r, sqlFamilyPslBlockDescriptors as s, idGeneratorFunctionBindings as t };
|
|
543
543
|
|
|
544
|
-
//# sourceMappingURL=generator-functions-
|
|
544
|
+
//# sourceMappingURL=generator-functions-D_qdqBV--BoeJwWsz.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator-functions-D_qdqBV--BoeJwWsz.mjs","names":[],"sources":["../../../../2-sql/9-family/dist/generator-functions-D_qdqBV-.mjs"],"sourcesContent":["import { readEnumBlockMembers, resolveEnumCodecId } from \"@internal/framework-components/authoring\";\nimport { enumRefusalOf, requiredParamKeys } from \"@internal/framework-components/codec\";\nimport { blockAttribute, dataTypeValue, enumMemberValue, leafDiagnostic, mapBlock, optional, refineArg, str } from \"@internal/psl-parser\";\nimport { enumType } from \"@internal/sql-contract-ts/contract-builder\";\nimport { CUID_VERSION, NANOID_SIZE, UUID_VERSIONS, generatedLength } from \"@internal/ids\";\nimport { blindCast } from \"@internal/utils/casts\";\nimport { InternalError } from \"@internal/utils/internal-error\";\nimport { singleGeneratorBinding } from \"@internal/framework-components/components\";\nimport { SQL_CHAR_CODEC_ID, SQL_TEXT_CODEC_ID, SQL_VARCHAR_CODEC_ID } from \"@internal/sql-relational-core/ast\";\nimport { notOk, ok } from \"@internal/utils/result\";\n//#region src/core/authoring-entity-types.ts\nfunction sqlFamilyEnumSpec() {\n\treturn mapBlock({\n\t\tvalue: {\n\t\t\ttype: enumMemberValue(),\n\t\t\tdocumentation: \"The member's value, written as a value of the enum's data type; a bare member stores its own name.\"\n\t\t},\n\t\tallowBare: true\n\t});\n}\nconst sqlFamilyEntityTypes = { enum: {\n\tkind: \"entity\",\n\tdiscriminator: \"enum\",\n\toutput: { factory: (block, ctx) => {\n\t\tconst sourceId = ctx.sourceId ?? \"unknown\";\n\t\tconst diagnostics = ctx.diagnostics;\n\t\tconst resolved = resolveEnumCodecId(block, ctx);\n\t\tif (resolved === void 0) return;\n\t\tconst { codecId, codecSpan } = resolved;\n\t\tconst descriptor = ctx.codecLookup.descriptorFor(codecId);\n\t\tconst codec = ctx.codecLookup.get(codecId);\n\t\tif (descriptor === void 0 || codec === void 0) {\n\t\t\tdiagnostics?.push({\n\t\t\t\tcode: \"PSL_EXTENSION_INVALID_VALUE\",\n\t\t\t\tmessage: `enum \"${block.name}\" @@type references unknown codec \"${codecId}\"`,\n\t\t\t\tsourceId,\n\t\t\t\tspan: codecSpan\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tconst enumRefusal = enumRefusalOf(descriptor);\n\t\tif (enumRefusal !== void 0) {\n\t\t\tdiagnostics?.push({\n\t\t\t\tcode: \"PSL_EXTENSION_INVALID_VALUE\",\n\t\t\t\tmessage: `enum \"${block.name}\" cannot use the codec \"${codecId}\". ${enumRefusal}`,\n\t\t\t\tsourceId,\n\t\t\t\tspan: codecSpan\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tconst dataType = ctx.dataTypes.lookup.get(descriptor.dataType);\n\t\tif (dataType === void 0) {\n\t\t\tdiagnostics?.push({\n\t\t\t\tcode: \"PSL_EXTENSION_INVALID_VALUE\",\n\t\t\t\tmessage: `enum \"${block.name}\" @@type codec \"${codecId}\" represents data type \"${descriptor.dataType}\", which no component registers`,\n\t\t\t\tsourceId,\n\t\t\t\tspan: codecSpan\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tconst [requiredParam] = requiredParamKeys(dataType);\n\t\tif (requiredParam !== void 0) {\n\t\t\tdiagnostics?.push({\n\t\t\t\tcode: \"PSL_ENUM_TYPE_NEEDS_PARAMETERS\",\n\t\t\t\tmessage: `enum \"${block.name}\" @@type codec \"${codecId}\" represents data type \"${dataType.id}\", which requires the parameter \"${requiredParam}\"; an enum block gives it none`,\n\t\t\t\tsourceId,\n\t\t\t\tspan: codecSpan\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tconst members = readEnumBlockMembers(block, codecId, codec, ctx);\n\t\tif (members === void 0) return void 0;\n\t\treturn enumType(block.name, { codecId }, ...members);\n\t} }\n} };\nconst enumTypeBlockAttribute = blockAttribute(\"type\", {\n\tdocumentation: \"Selects the storage codec for this enum.\",\n\tpositional: [{\n\t\tkey: \"codecId\",\n\t\ttype: str(),\n\t\tdocumentation: \"The fully qualified codec identifier used to store enum values.\"\n\t}]\n});\nconst sqlFamilyPslBlockDescriptors = { enum: {\n\tkind: \"pslBlock\",\n\tkeyword: \"enum\",\n\tdocumentation: \"Defines an enum with named values and an inferred or explicitly selected storage codec.\",\n\tdiscriminator: \"enum\",\n\tname: { required: true },\n\tspec: sqlFamilyEnumSpec,\n\tattributes: { type: () => enumTypeBlockAttribute }\n} };\n//#endregion\n//#region src/core/authoring-field-presets.ts\n/**\n* Family-level SQL authoring field presets.\n*\n* Only presets whose codec IDs align with the ID generator metadata live here\n* (see `@internal/ids`). These presets are target-agnostic because the\n* generator metadata fixes their codec/native-type to `sql/char@1`\n* (`character`) regardless of target, and the PSL interpreter lets the\n* generator override the scalar descriptor.\n*\n* The `uuidString` / `id.uuidv4String` / `id.uuidv7String` presets store UUID\n* values as `character(36)` — portable across all SQL targets. For a native\n* Postgres `uuid` column use `uuidNative` / `id.uuidv4Native` /\n* `id.uuidv7Native` from `@internal/target-postgres`.\n*\n* Scalar presets that map to target-specific codecs (e.g. `text`, `int`,\n* `boolean`, `dateTime`) are contributed by the target pack (see\n* `postgresAuthoringFieldPresets` in `@internal/target-postgres`) so the\n* TS callback surface and the PSL scalar surface lower to byte-identical\n* contracts for the active target.\n*/\nconst CHARACTER_CODEC_ID = \"sql/char@1\";\nconst nanoidOptionsArgument = {\n\tkind: \"object\",\n\toptional: true,\n\tproperties: { size: {\n\t\tkind: \"number\",\n\t\toptional: true,\n\t\tinteger: true,\n\t\tminimum: NANOID_SIZE.min,\n\t\tmaximum: NANOID_SIZE.max\n\t} }\n};\nconst sqlFamilyAuthoringFieldPresets = {\n\tuuidString: {\n\t\tkind: \"fieldPreset\",\n\t\toutput: {\n\t\t\tcodecId: CHARACTER_CODEC_ID,\n\t\t\ttypeParams: { length: 36 }\n\t\t}\n\t},\n\tulid: {\n\t\tkind: \"fieldPreset\",\n\t\toutput: {\n\t\t\tcodecId: CHARACTER_CODEC_ID,\n\t\t\ttypeParams: { length: 26 }\n\t\t}\n\t},\n\tnanoid: {\n\t\tkind: \"fieldPreset\",\n\t\targs: [nanoidOptionsArgument],\n\t\toutput: {\n\t\t\tcodecId: CHARACTER_CODEC_ID,\n\t\t\ttypeParams: { length: {\n\t\t\t\tkind: \"arg\",\n\t\t\t\tindex: 0,\n\t\t\t\tpath: [\"size\"],\n\t\t\t\tdefault: 21\n\t\t\t} }\n\t\t}\n\t},\n\tcuid2: {\n\t\tkind: \"fieldPreset\",\n\t\toutput: {\n\t\t\tcodecId: CHARACTER_CODEC_ID,\n\t\t\ttypeParams: { length: 24 }\n\t\t}\n\t},\n\tksuid: {\n\t\tkind: \"fieldPreset\",\n\t\toutput: {\n\t\t\tcodecId: CHARACTER_CODEC_ID,\n\t\t\ttypeParams: { length: 27 }\n\t\t}\n\t},\n\tid: {\n\t\tuuidv4String: {\n\t\t\tkind: \"fieldPreset\",\n\t\t\toutput: {\n\t\t\t\tcodecId: CHARACTER_CODEC_ID,\n\t\t\t\ttypeParams: { length: 36 },\n\t\t\t\texecutionDefaults: { onCreate: {\n\t\t\t\t\tkind: \"generator\",\n\t\t\t\t\tid: \"uuidv4\"\n\t\t\t\t} },\n\t\t\t\tid: true\n\t\t\t}\n\t\t},\n\t\tuuidv7String: {\n\t\t\tkind: \"fieldPreset\",\n\t\t\toutput: {\n\t\t\t\tcodecId: CHARACTER_CODEC_ID,\n\t\t\t\ttypeParams: { length: 36 },\n\t\t\t\texecutionDefaults: { onCreate: {\n\t\t\t\t\tkind: \"generator\",\n\t\t\t\t\tid: \"uuidv7\"\n\t\t\t\t} },\n\t\t\t\tid: true\n\t\t\t}\n\t\t},\n\t\tulid: {\n\t\t\tkind: \"fieldPreset\",\n\t\t\toutput: {\n\t\t\t\tcodecId: CHARACTER_CODEC_ID,\n\t\t\t\ttypeParams: { length: 26 },\n\t\t\t\texecutionDefaults: { onCreate: {\n\t\t\t\t\tkind: \"generator\",\n\t\t\t\t\tid: \"ulid\"\n\t\t\t\t} },\n\t\t\t\tid: true\n\t\t\t}\n\t\t},\n\t\tnanoid: {\n\t\t\tkind: \"fieldPreset\",\n\t\t\targs: [nanoidOptionsArgument],\n\t\t\toutput: {\n\t\t\t\tcodecId: CHARACTER_CODEC_ID,\n\t\t\t\ttypeParams: { length: {\n\t\t\t\t\tkind: \"arg\",\n\t\t\t\t\tindex: 0,\n\t\t\t\t\tpath: [\"size\"],\n\t\t\t\t\tdefault: 21\n\t\t\t\t} },\n\t\t\t\texecutionDefaults: { onCreate: {\n\t\t\t\t\tkind: \"generator\",\n\t\t\t\t\tid: \"nanoid\",\n\t\t\t\t\tparams: { size: {\n\t\t\t\t\t\tkind: \"arg\",\n\t\t\t\t\t\tindex: 0,\n\t\t\t\t\t\tpath: [\"size\"]\n\t\t\t\t\t} }\n\t\t\t\t} },\n\t\t\t\tid: true\n\t\t\t}\n\t\t},\n\t\tcuid2: {\n\t\t\tkind: \"fieldPreset\",\n\t\t\toutput: {\n\t\t\t\tcodecId: CHARACTER_CODEC_ID,\n\t\t\t\ttypeParams: { length: 24 },\n\t\t\t\texecutionDefaults: { onCreate: {\n\t\t\t\t\tkind: \"generator\",\n\t\t\t\t\tid: \"cuid2\"\n\t\t\t\t} },\n\t\t\t\tid: true\n\t\t\t}\n\t\t},\n\t\tksuid: {\n\t\t\tkind: \"fieldPreset\",\n\t\t\toutput: {\n\t\t\t\tcodecId: CHARACTER_CODEC_ID,\n\t\t\t\ttypeParams: { length: 27 },\n\t\t\t\texecutionDefaults: { onCreate: {\n\t\t\t\t\tkind: \"generator\",\n\t\t\t\t\tid: \"ksuid\"\n\t\t\t\t} },\n\t\t\t\tid: true\n\t\t\t}\n\t\t}\n\t}\n};\n//#endregion\n//#region src/core/authoring-type-constructors.ts\nconst sqlFamilyAuthoringTypes = { Raw: {\n\tkind: \"typeConstructor\",\n\tdocumentation: \"A column of a type no other column type covers, written exactly as the database catalog prints it, such as Raw(sql`tsvector`). Its values are typed unknown, and its default is a sql expression.\",\n\targs: [{\n\t\tkind: \"value\",\n\t\tdataType: \"sql/expression\",\n\t\tname: \"sql\"\n\t}],\n\toutput: {\n\t\tcodecId: \"sql/raw@1\",\n\t\ttypeParams: { sql: {\n\t\t\tkind: \"arg\",\n\t\t\tindex: 0\n\t\t} }\n\t}\n} };\n/**\n* The type constructors every SQL target contributes itself, because their arguments are sizes, such as a length, and only the target names the data type a size is a value of: `sizeType`, such as `pg/int4`.\n*/\nfunction sqlTargetTypeConstructors(input) {\n\treturn { sql: { String: {\n\t\tkind: \"typeConstructor\",\n\t\tdocumentation: \"Variable-length text with a required maximum character length.\",\n\t\targs: [{\n\t\t\tkind: \"value\",\n\t\t\tdataType: input.sizeType,\n\t\t\tname: \"length\"\n\t\t}],\n\t\toutput: {\n\t\t\tcodecId: \"sql/varchar@1\",\n\t\t\ttypeParams: { length: {\n\t\t\t\tkind: \"arg\",\n\t\t\t\tindex: 0\n\t\t\t} }\n\t\t}\n\t} } };\n}\n//#endregion\n//#region src/core/generator-functions.ts\nconst NANOID_DEFAULT_SIZE = 21;\nconst nowSignature = { documentation: \"Writes the current time, as the column's codec represents it.\" };\nconst ulidSignature = { documentation: \"Generates a ULID when a value is not supplied.\" };\nconst ksuidSignature = { documentation: \"Generates a KSUID when a value is not supplied.\" };\nfunction refused(message) {\n\treturn {\n\t\tok: false,\n\t\tmessage\n\t};\n}\nfunction generated(id, params) {\n\treturn {\n\t\tok: true,\n\t\tgenerator: params === void 0 ? {\n\t\t\tkind: \"generator\",\n\t\t\tid\n\t\t} : {\n\t\t\tkind: \"generator\",\n\t\t\tid,\n\t\t\tparams\n\t\t}\n\t};\n}\nfunction uuidBinding(codecIds) {\n\treturn {\n\t\tcodecIds,\n\t\tgeneratorIds: [\"uuidv4\", \"uuidv7\"],\n\t\tresolve: ({ args }) => {\n\t\t\tconst version = args[\"version\"];\n\t\t\tif (version === void 0 || version === UUID_VERSIONS.v4) return generated(\"uuidv4\");\n\t\t\tif (version === UUID_VERSIONS.v7) return generated(\"uuidv7\");\n\t\t\treturn refused(`uuid: version must be ${UUID_VERSIONS.v4} or ${UUID_VERSIONS.v7}, got ${String(version)}`);\n\t\t},\n\t\tprintArguments: (generator) => {\n\t\t\tif (generator.id === \"uuidv4\") return {\n\t\t\t\targs: {},\n\t\t\t\ttext: \"\"\n\t\t\t};\n\t\t\tif (generator.id === \"uuidv7\") return {\n\t\t\t\targs: { version: UUID_VERSIONS.v7 },\n\t\t\t\ttext: String(UUID_VERSIONS.v7)\n\t\t\t};\n\t\t}\n\t};\n}\nfunction cuidBinding(codecIds) {\n\treturn {\n\t\tcodecIds,\n\t\tgeneratorIds: [\"cuid2\"],\n\t\tresolve: ({ args }) => {\n\t\t\tconst version = args[\"version\"];\n\t\t\treturn version === CUID_VERSION ? generated(\"cuid2\") : refused(`cuid: version must be ${CUID_VERSION}, got ${String(version)}`);\n\t\t},\n\t\tprintArguments: (generator) => generator.id === \"cuid2\" ? {\n\t\t\targs: { version: CUID_VERSION },\n\t\t\ttext: String(CUID_VERSION)\n\t\t} : void 0\n\t};\n}\nfunction isNanoidSize(size) {\n\treturn typeof size === \"number\" && Number.isInteger(size) && size >= NANOID_SIZE.min && size <= NANOID_SIZE.max;\n}\n/**\n* A Nano ID has the size the call gives, or 21; the column's length never sets it. A shorter identifier in a fixed-length column is padded by the database, as Prisma 7 does.\n*/\nfunction nanoidBinding(codecIds) {\n\treturn {\n\t\tcodecIds,\n\t\tgeneratorIds: [\"nanoid\"],\n\t\tresolve: ({ args }) => {\n\t\t\tconst explicit = args[\"size\"];\n\t\t\tif (explicit !== void 0 && !isNanoidSize(explicit)) return refused(`nanoid: size must be between ${NANOID_SIZE.min} and ${NANOID_SIZE.max}, got ${String(explicit)}`);\n\t\t\treturn explicit === void 0 ? generated(\"nanoid\") : generated(\"nanoid\", { size: explicit });\n\t\t},\n\t\tprintArguments: (generator) => {\n\t\t\tif (generator.id !== \"nanoid\") return void 0;\n\t\t\tconst size = generator.params?.[\"size\"];\n\t\t\treturn typeof size === \"number\" ? {\n\t\t\t\targs: { size },\n\t\t\t\ttext: String(size)\n\t\t\t} : {\n\t\t\t\targs: {},\n\t\t\t\ttext: \"\"\n\t\t\t};\n\t\t}\n\t};\n}\n/**\n* `binding`, refusing a column whose length, in its data type's normal form, is shorter than the identifier the generator writes. The database would refuse every insert of a longer value.\n*/\nfunction fittingColumn(name, binding) {\n\treturn {\n\t\t...binding,\n\t\tresolve: (input) => {\n\t\t\tconst resolution = binding.resolve(input);\n\t\t\tconst length = input.field.length;\n\t\t\tif (!resolution.ok || length === void 0) return resolution;\n\t\t\tconst { generator } = resolution;\n\t\t\tconst written = generatedLength(blindCast(generator.id), generator.params);\n\t\t\tif (written <= length) return resolution;\n\t\t\treturn refused(`${`${name}(${binding.printArguments(generator, input.field)?.text ?? \"\"})`} writes ${written} characters, which does not fit a column of ${length} ${length === 1 ? \"character\" : \"characters\"}.`);\n\t\t}\n\t};\n}\n/** The identifier generator functions bound to a target's text codecs, and `uuid` to its uuid codecs. Each refuses a column too short for what it writes. */\nfunction idGeneratorFunctionBindings(codecs) {\n\tconst { text } = codecs;\n\treturn [\n\t\t{\n\t\t\tname: \"uuid\",\n\t\t\tbindings: [fittingColumn(\"uuid\", uuidBinding([...text, ...codecs.uuid ?? []]))]\n\t\t},\n\t\t{\n\t\t\tname: \"cuid\",\n\t\t\tbindings: [fittingColumn(\"cuid\", cuidBinding(text))]\n\t\t},\n\t\t{\n\t\t\tname: \"ulid\",\n\t\t\tbindings: [fittingColumn(\"ulid\", singleGeneratorBinding({\n\t\t\t\tcodecIds: text,\n\t\t\t\tgeneratorId: \"ulid\"\n\t\t\t}))]\n\t\t},\n\t\t{\n\t\t\tname: \"ksuid\",\n\t\t\tbindings: [fittingColumn(\"ksuid\", singleGeneratorBinding({\n\t\t\t\tcodecIds: text,\n\t\t\t\tgeneratorId: \"ksuid\"\n\t\t\t}))]\n\t\t},\n\t\t{\n\t\t\tname: \"nanoid\",\n\t\t\tbindings: [fittingColumn(\"nanoid\", nanoidBinding(text))]\n\t\t}\n\t];\n}\nconst familyIdBindings = idGeneratorFunctionBindings({ text: [\n\tSQL_CHAR_CODEC_ID,\n\tSQL_VARCHAR_CODEC_ID,\n\tSQL_TEXT_CODEC_ID\n] });\nfunction familyBindingsOf(name) {\n\treturn familyIdBindings.find((contribution) => contribution.name === name)?.bindings ?? [];\n}\n/** The generator functions the SQL family declares, with their bindings to the family's codecs. Targets bind `now` and their own codecs. */\nconst sqlFamilyGeneratorFunctions = [\n\t{\n\t\tname: \"now\",\n\t\tsignature: nowSignature,\n\t\tbindings: []\n\t},\n\t{\n\t\tname: \"uuid\",\n\t\tbindings: familyBindingsOf(\"uuid\")\n\t},\n\t{\n\t\tname: \"cuid\",\n\t\tbindings: familyBindingsOf(\"cuid\")\n\t},\n\t{\n\t\tname: \"ulid\",\n\t\tsignature: ulidSignature,\n\t\tbindings: familyBindingsOf(\"ulid\")\n\t},\n\t{\n\t\tname: \"nanoid\",\n\t\tbindings: familyBindingsOf(\"nanoid\")\n\t},\n\t{\n\t\tname: \"ksuid\",\n\t\tsignature: ksuidSignature,\n\t\tbindings: familyBindingsOf(\"ksuid\")\n\t}\n];\n/** The identifier generators the family's bindings produce, which the family registers so that a target binding them through `idGeneratorFunctionBindings` registers none. */\nconst sqlFamilyGeneratorDescriptors = [...new Set(sqlFamilyGeneratorFunctions.flatMap(({ bindings }) => bindings.flatMap(({ generatorIds }) => generatorIds)))].map((id) => ({ id }));\n/**\n* The generator functions whose arguments are integers, declared with their signatures: `uuid(version?)`, `cuid(version)` and `nanoid(size?)`. Each argument is a value of `integer`, the target's integer data type, read and cast like a default, then checked by its function. A target declares them, because only it knows its integer type; the family and the target bind them.\n*/\nfunction sqlIntegerArgumentGeneratorFunctions({ integer }) {\n\treturn [\n\t\t{\n\t\t\tname: \"uuid\",\n\t\t\tsignature: (dataTypes) => uuidSignature(integer, dataTypes),\n\t\t\tbindings: []\n\t\t},\n\t\t{\n\t\t\tname: \"cuid\",\n\t\t\tsignature: (dataTypes) => cuidSignature(integer, dataTypes),\n\t\t\tbindings: []\n\t\t},\n\t\t{\n\t\t\tname: \"nanoid\",\n\t\t\tsignature: (dataTypes) => nanoidSignature(integer, dataTypes),\n\t\t\tbindings: []\n\t\t}\n\t];\n}\nfunction uuidSignature(integer, dataTypes) {\n\tconst versions = [UUID_VERSIONS.v4, UUID_VERSIONS.v7];\n\treturn {\n\t\tdocumentation: \"Generates a UUID when a value is not supplied.\",\n\t\tpositional: [{\n\t\t\tkey: \"version\",\n\t\t\ttype: optional(checkedInteger(integer, dataTypes, listed(versions), (version, written) => versions.some((allowed) => allowed === version) ? void 0 : `uuid: version must be ${UUID_VERSIONS.v4} or ${UUID_VERSIONS.v7}, got ${written}`)),\n\t\t\tdocumentation: `The UUID version: \\`${UUID_VERSIONS.v4}\\` or \\`${UUID_VERSIONS.v7}\\`. Defaults to \\`${UUID_VERSIONS.v4}\\`.`\n\t\t}]\n\t};\n}\nfunction cuidSignature(integer, dataTypes) {\n\treturn {\n\t\tdocumentation: \"Generates a CUID2 identifier when a value is not supplied.\",\n\t\tpositional: [{\n\t\t\tkey: \"version\",\n\t\t\ttype: checkedInteger(integer, dataTypes, listed([CUID_VERSION]), (version, written) => version === CUID_VERSION ? void 0 : `cuid: version must be ${CUID_VERSION}, got ${written}`),\n\t\t\tdocumentation: `The CUID version. Only \\`${CUID_VERSION}\\` is supported.`\n\t\t}]\n\t};\n}\nfunction nanoidSignature(integer, dataTypes) {\n\treturn {\n\t\tdocumentation: \"Generates a Nano ID when a value is not supplied.\",\n\t\tpositional: [{\n\t\t\tkey: \"size\",\n\t\t\ttype: optional(checkedInteger(integer, dataTypes, {\n\t\t\t\tlabel: `integer from ${NANOID_SIZE.min} to ${NANOID_SIZE.max}`,\n\t\t\t\tsuggestions: []\n\t\t\t}, (size, written) => isNanoidSize(size) ? void 0 : `nanoid: size must be between ${NANOID_SIZE.min} and ${NANOID_SIZE.max}, got ${written}`)),\n\t\t\tdocumentation: `The identifier length, from \\`${NANOID_SIZE.min}\\` through \\`${NANOID_SIZE.max}\\`. Defaults to ${NANOID_DEFAULT_SIZE}.`\n\t\t}]\n\t};\n}\n/** The label and completion suggestions of an argument that takes one of `values`. */\nfunction listed(values) {\n\tconst suggestions = values.map(String);\n\treturn {\n\t\tlabel: suggestions.join(\" | \"),\n\t\tsuggestions\n\t};\n}\n/**\n* One value of the integer data type, as a number, refused at the argument with the function's message when `refusal` returns one.\n*/\nfunction checkedInteger(integer, dataTypes, allowed, refusal) {\n\treturn refineArg(dataTypeValue(integer, dataTypes, allowed), ({ value }, arg, ctx) => {\n\t\tconst stored = value.value;\n\t\tif (typeof stored !== \"number\" && typeof stored !== \"string\") throw new InternalError(`Data type \"${integer}\" stores an integer as ${typeof stored}, not a number or digit text.`);\n\t\tconst message = refusal(Number(stored), String(stored));\n\t\treturn message === void 0 ? ok(blindCast(Number(stored))) : notOk([leafDiagnostic(ctx, arg, message, \"PSL_INVALID_GENERATOR_ARGUMENT\")]);\n\t});\n}\n//#endregion\nexport { sqlFamilyAuthoringTypes as a, sqlFamilyEntityTypes as c, sqlIntegerArgumentGeneratorFunctions as i, sqlFamilyPslBlockDescriptors as l, sqlFamilyGeneratorDescriptors as n, sqlTargetTypeConstructors as o, sqlFamilyGeneratorFunctions as r, sqlFamilyAuthoringFieldPresets as s, idGeneratorFunctionBindings as t };\n\n//# sourceMappingURL=generator-functions-D_qdqBV-.mjs.map"],"mappings":"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"}
|
|
@@ -4,13 +4,13 @@ import { n as providesPslEntityPlacement } from "./entity-handle-lowering-hook-B
|
|
|
4
4
|
import "./foreign-key-materialization-BPQqd0qF.mjs";
|
|
5
5
|
import { p as sqlTextFromStored } from "./sql-expression-BJCuy-WI.mjs";
|
|
6
6
|
import { t as deriveValueSetFromEntity } from "./value-set-derivation-hook-Di9JZ0X7.mjs";
|
|
7
|
-
import { n as buildSqlContractFromDefinition } from "./derived-checks-
|
|
7
|
+
import { n as buildSqlContractFromDefinition } from "./derived-checks-D5HVRvqN-B37oe30Z.mjs";
|
|
8
8
|
import { i as mapFieldNamesToColumns, n as getAttribute, o as storageName, r as getNamedArgument, t as formatDbAttributeMigrationMessage } from "./psl-attribute-parsing-BCsFWsSp-LaNsbcrw.mjs";
|
|
9
|
-
import {
|
|
9
|
+
import { _ as modelSpecContext, b as sqlAttributeSpecs, d as interpretModelAttribute, f as lowerEnumDefault, g as modelCoordinateKey, h as modelAttributeSpecsFrom, l as instantiatePslTypeConstructor, m as lowerTypeGenerators, n as collectResolvedFields, o as fieldSpecContext, p as lowerTypeDefault, r as contractError, s as getAuthoringEntity, t as PSL_CHECK_ON_STI_VARIANT, u as interpretFieldAttribute, y as resolveFieldTypeDescriptor } from "./psl-field-resolution-C5KQ7kzP-DH8oSBIL.mjs";
|
|
10
10
|
import { t as defaultTableName } from "./default-table-name-BfFY8qYR-lHNcVmY5.mjs";
|
|
11
11
|
import { isStructuredError } from "@prisma/orm-framework/utils/structured-error";
|
|
12
12
|
import { ifDefined } from "@prisma/orm-framework/utils/defined";
|
|
13
|
-
import { instantiateAuthoringEntityType, instantiateAuthoringTypeAlias, instantiateAuthoringTypeConstructor, isAuthoringEntityTypeDescriptor, isAuthoringModelAttributeDescriptor, resolveTypeAliasGenerators } from "@prisma/orm-framework/components/authoring";
|
|
13
|
+
import { applyDiscriminatorRule, describeDiscriminatorRefusal, encodeEnumMembers, instantiateAuthoringEntityType, instantiateAuthoringTypeAlias, instantiateAuthoringTypeConstructor, isAuthoringEntityTypeDescriptor, isAuthoringModelAttributeDescriptor, resolveTypeAliasGenerators } from "@prisma/orm-framework/components/authoring";
|
|
14
14
|
import { UNBOUND_NAMESPACE_ID } from "@prisma/orm-framework/components/ir";
|
|
15
15
|
import { blindCast } from "@prisma/orm-framework/utils/casts";
|
|
16
16
|
import { InternalError } from "@prisma/orm-framework/utils/internal-error";
|
|
@@ -21,7 +21,7 @@ import { assertDefined, invariant } from "@prisma/orm-framework/utils/assertions
|
|
|
21
21
|
import { notOk, ok } from "@prisma/orm-framework/utils/result";
|
|
22
22
|
import { contributedTypeAliasOf, createPslDiagnosticCollector, diagnosticSource, findBlockDescriptor, interpretExtensionBlocks, nodePslSpan, resolveTypeAliases, typeAliasAttributeNames, typeAliasSpecContext, typeReferenceNode } from "@prisma/orm-framework/psl-parser";
|
|
23
23
|
import { claimedBlockKeywords, enumMemberAttributeDiagnostics, fkRelationPairKey, requiredOneToOneBackrelationDiagnostic, unsupportedBlockDiagnostic } from "@prisma/orm-framework/psl-parser/interpret";
|
|
24
|
-
//#region ../../../2-sql/2-authoring/contract-psl/dist/interpreter-
|
|
24
|
+
//#region ../../../2-sql/2-authoring/contract-psl/dist/interpreter-BDpym-rc.mjs
|
|
25
25
|
function describeUnsupportedSqlAliasAttribute(attribute) {
|
|
26
26
|
return attribute.name.startsWith("db.") ? formatDbAttributeMigrationMessage(attribute) : void 0;
|
|
27
27
|
}
|
|
@@ -1028,7 +1028,7 @@ function buildModelNodeFromPsl(input) {
|
|
|
1028
1028
|
family: input.familyId,
|
|
1029
1029
|
target: input.targetId,
|
|
1030
1030
|
codecLookup: input.codecLookup,
|
|
1031
|
-
|
|
1031
|
+
dataTypes: input.dataTypes,
|
|
1032
1032
|
modelName: model.name,
|
|
1033
1033
|
storageName: tableName,
|
|
1034
1034
|
fieldStorageName: (fieldName) => {
|
|
@@ -1415,15 +1415,10 @@ function buildValueObjectNodes(input) {
|
|
|
1415
1415
|
};
|
|
1416
1416
|
});
|
|
1417
1417
|
}
|
|
1418
|
-
|
|
1419
|
-
|
|
1420
|
-
if (textDataTypes.length === 0) throw new InternalError("The stack names no text data types, so no column can be a discriminator; the target names its text types in its authoring contributions.");
|
|
1421
|
-
const dataType = codecLookup.descriptorFor(column.codecId)?.dataType;
|
|
1422
|
-
return dataType !== void 0 && textDataTypes.includes(dataType);
|
|
1423
|
-
}
|
|
1424
|
-
function collectPolymorphismDeclarations(identities, symbols, sources, binder, specContextFor, discriminatorColumnOf, codecLookup, dataTypes, textDataTypes, diagnostics) {
|
|
1425
|
-
const discriminatorDeclarations = /* @__PURE__ */ new Map();
|
|
1418
|
+
function collectPolymorphismDeclarations(identities, symbols, sources, binder, specContextFor, discriminatorFieldOf, codecLookup, dataTypes, diagnostics) {
|
|
1419
|
+
const pendingDiscriminators = /* @__PURE__ */ new Map();
|
|
1426
1420
|
const pendingBaseDeclarations = /* @__PURE__ */ new Map();
|
|
1421
|
+
const reported = { discriminators: /* @__PURE__ */ new Set() };
|
|
1427
1422
|
for (const { model, namespaceId, key } of identities.values()) {
|
|
1428
1423
|
const source = diagnosticSource(sources, model.node.syntax);
|
|
1429
1424
|
const discriminatorNode = getAttribute(model.attributes, "discriminator")?.node;
|
|
@@ -1437,23 +1432,16 @@ function collectPolymorphismDeclarations(identities, symbols, sources, binder, s
|
|
|
1437
1432
|
binder,
|
|
1438
1433
|
diagnostics
|
|
1439
1434
|
});
|
|
1440
|
-
if (parsed !== void 0) {
|
|
1441
|
-
|
|
1442
|
-
const discField = model.fields[parsed.field];
|
|
1443
|
-
const column = discriminatorColumnOf(model, parsed.field);
|
|
1444
|
-
if (column === void 0 || !isTextColumn(column, codecLookup, textDataTypes)) diagnostics.push({
|
|
1445
|
-
code: "PSL_INVALID_ATTRIBUTE_ARGUMENT",
|
|
1446
|
-
message: `Discriminator field "${parsed.field}" on model "${model.name}" must be text, such as String, but is "${discField?.typeName ?? parsed.field}"`,
|
|
1447
|
-
...source.at(span)
|
|
1448
|
-
});
|
|
1449
|
-
else discriminatorDeclarations.set(key, {
|
|
1435
|
+
if (parsed !== void 0) pendingDiscriminators.set(key, {
|
|
1436
|
+
declaration: {
|
|
1450
1437
|
model,
|
|
1451
1438
|
fieldName: parsed.field,
|
|
1452
|
-
|
|
1453
|
-
span,
|
|
1439
|
+
span: nodePslSpan(discriminatorNode.syntax, sources),
|
|
1454
1440
|
source
|
|
1455
|
-
}
|
|
1456
|
-
|
|
1441
|
+
},
|
|
1442
|
+
field: discriminatorFieldOf(model, parsed.field)
|
|
1443
|
+
});
|
|
1444
|
+
else reported.discriminators.add(key);
|
|
1457
1445
|
}
|
|
1458
1446
|
const baseNode = getAttribute(model.attributes, "base")?.node;
|
|
1459
1447
|
if (baseNode !== void 0) {
|
|
@@ -1480,57 +1468,91 @@ function collectPolymorphismDeclarations(identities, symbols, sources, binder, s
|
|
|
1480
1468
|
}
|
|
1481
1469
|
}
|
|
1482
1470
|
}
|
|
1483
|
-
const
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
dataTypes,
|
|
1491
|
-
diagnostics
|
|
1492
|
-
})
|
|
1471
|
+
const discriminatorDeclarations = /* @__PURE__ */ new Map();
|
|
1472
|
+
const values = /* @__PURE__ */ new Map();
|
|
1473
|
+
for (const [baseKey, { declaration, field }] of pendingDiscriminators) {
|
|
1474
|
+
const accepted = acceptedDiscriminator(declaration, field, [...pendingBaseDeclarations].filter(([, base]) => base.base.key === baseKey), {
|
|
1475
|
+
codecLookup,
|
|
1476
|
+
dataTypes,
|
|
1477
|
+
diagnostics
|
|
1493
1478
|
});
|
|
1479
|
+
if (accepted === void 0) {
|
|
1480
|
+
reported.discriminators.add(baseKey);
|
|
1481
|
+
continue;
|
|
1482
|
+
}
|
|
1483
|
+
discriminatorDeclarations.set(baseKey, declaration);
|
|
1484
|
+
for (const [variantKey, value] of accepted) values.set(variantKey, value);
|
|
1494
1485
|
}
|
|
1486
|
+
const baseDeclarations = /* @__PURE__ */ new Map();
|
|
1487
|
+
for (const [key, { model, namespaceId, source, base, span }] of pendingBaseDeclarations) baseDeclarations.set(key, {
|
|
1488
|
+
model,
|
|
1489
|
+
namespaceId,
|
|
1490
|
+
source,
|
|
1491
|
+
base,
|
|
1492
|
+
span,
|
|
1493
|
+
value: values.get(key)
|
|
1494
|
+
});
|
|
1495
1495
|
return {
|
|
1496
1496
|
discriminatorDeclarations,
|
|
1497
|
-
baseDeclarations
|
|
1497
|
+
baseDeclarations,
|
|
1498
|
+
reported
|
|
1498
1499
|
};
|
|
1499
1500
|
}
|
|
1500
1501
|
/**
|
|
1501
|
-
*
|
|
1502
|
+
* The stored discriminator value of each variant, by the variant's key, when the discriminator rule accepts the field; `undefined` when it refuses the field. A refusal is reported at the `@@discriminator` attribute or at the `@@base` value it is about.
|
|
1502
1503
|
*/
|
|
1503
|
-
function
|
|
1504
|
-
|
|
1505
|
-
const
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
},
|
|
1512
|
-
|
|
1513
|
-
column: discriminator.column,
|
|
1504
|
+
function acceptedDiscriminator(declaration, discriminatorField, bases, input) {
|
|
1505
|
+
const { model, fieldName } = declaration;
|
|
1506
|
+
const baseByKey = new Map(bases);
|
|
1507
|
+
const decision = applyDiscriminatorRule({
|
|
1508
|
+
field: discriminatorField.field,
|
|
1509
|
+
variants: bases.map(([key, base]) => ({
|
|
1510
|
+
key,
|
|
1511
|
+
written: writtenBaseValue(base)
|
|
1512
|
+
})),
|
|
1513
|
+
subject: `Field "${model.name}.${fieldName}"`,
|
|
1514
1514
|
codecLookup: input.codecLookup,
|
|
1515
|
-
dataTypes: input.dataTypes
|
|
1516
|
-
subject: `Field "${discriminator.model.name}.${discriminator.fieldName}"`,
|
|
1517
|
-
sourceElementIndexes: void 0
|
|
1515
|
+
dataTypes: input.dataTypes
|
|
1518
1516
|
});
|
|
1519
|
-
|
|
1517
|
+
const baseOf = (variantKey) => {
|
|
1518
|
+
const base = baseByKey.get(variantKey);
|
|
1519
|
+
invariant(base !== void 0, "A refused @@base value belongs to a collected variant");
|
|
1520
|
+
return base;
|
|
1521
|
+
};
|
|
1522
|
+
const subject = {
|
|
1523
|
+
modelName: model.name,
|
|
1524
|
+
fieldName,
|
|
1525
|
+
typeName: model.fields[fieldName]?.typeName ?? fieldName,
|
|
1526
|
+
enumName: discriminatorField.enumName,
|
|
1527
|
+
variantName: (variantKey) => baseOf(variantKey).model.name
|
|
1528
|
+
};
|
|
1529
|
+
for (const refusal of decision.fieldRefusals) input.diagnostics.push({
|
|
1530
|
+
code: "PSL_INVALID_ATTRIBUTE_ARGUMENT",
|
|
1531
|
+
message: describeDiscriminatorRefusal(refusal, subject),
|
|
1532
|
+
...declaration.source.at(declaration.span)
|
|
1533
|
+
});
|
|
1534
|
+
if (decision.fieldRefusals.length > 0) return void 0;
|
|
1535
|
+
for (const refusal of decision.variantRefusals) {
|
|
1536
|
+
const base = baseOf(refusal.key);
|
|
1520
1537
|
input.diagnostics.push({
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1538
|
+
...refusal.kind === "unreadable" ? refusal.refusal : {
|
|
1539
|
+
code: "PSL_INVALID_ATTRIBUTE_ARGUMENT",
|
|
1540
|
+
message: describeDiscriminatorRefusal(refusal, subject)
|
|
1541
|
+
},
|
|
1542
|
+
...base.source.at(base.written.span)
|
|
1524
1543
|
});
|
|
1525
|
-
return;
|
|
1526
1544
|
}
|
|
1527
|
-
|
|
1528
|
-
|
|
1545
|
+
return decision.values;
|
|
1546
|
+
}
|
|
1547
|
+
/** A `@@base` value as it is written; the grammar reads only a quoted string there. */
|
|
1548
|
+
function writtenBaseValue(base) {
|
|
1549
|
+
if (base.written.written === void 0) throw new InternalError("A @@base value is a quoted string, never a tagged literal.");
|
|
1550
|
+
return base.written.written;
|
|
1529
1551
|
}
|
|
1530
1552
|
function modelLabel(namespaceId, modelName, qualified) {
|
|
1531
1553
|
return qualified ? `${namespaceId}.${modelName}` : modelName;
|
|
1532
1554
|
}
|
|
1533
|
-
function resolvePolymorphism(models, physicalNames, discriminatorDeclarations, baseDeclarations, syntheticPkFieldsByVariant, stiBaseFieldsByBase, diagnostics) {
|
|
1555
|
+
function resolvePolymorphism(models, physicalNames, discriminatorDeclarations, baseDeclarations, reported, syntheticPkFieldsByVariant, stiBaseFieldsByBase, diagnostics) {
|
|
1534
1556
|
let patched = models;
|
|
1535
1557
|
for (const [baseKey, fieldNames] of stiBaseFieldsByBase) {
|
|
1536
1558
|
const baseModel = patched[baseKey];
|
|
@@ -1569,6 +1591,7 @@ function resolvePolymorphism(models, physicalNames, discriminatorDeclarations, b
|
|
|
1569
1591
|
variants[baseDecl.value] = crossRef(variantName, baseDecl.namespaceId);
|
|
1570
1592
|
}
|
|
1571
1593
|
if (Object.keys(variants).length === 0) {
|
|
1594
|
+
if ([...baseDeclarations.values()].some((baseDecl) => baseDecl.base.key === modelKey && baseDecl.value === void 0)) continue;
|
|
1572
1595
|
diagnostics.push({
|
|
1573
1596
|
code: "PSL_ORPHANED_DISCRIMINATOR",
|
|
1574
1597
|
message: `Model "${modelName}" has @@discriminator but no variant models declare @@base(${modelName}, ...)`,
|
|
@@ -1588,6 +1611,7 @@ function resolvePolymorphism(models, physicalNames, discriminatorDeclarations, b
|
|
|
1588
1611
|
for (const [variantKey, baseDecl] of baseDeclarations) {
|
|
1589
1612
|
const baseName = baseDecl.base.model.name;
|
|
1590
1613
|
if (!discriminatorDeclarations.has(baseDecl.base.key)) {
|
|
1614
|
+
if (reported.discriminators.has(baseDecl.base.key)) continue;
|
|
1591
1615
|
const qualified = baseDecl.namespaceId !== baseDecl.base.namespaceId;
|
|
1592
1616
|
const variantLabel = modelLabel(baseDecl.namespaceId, baseDecl.model.name, qualified);
|
|
1593
1617
|
const baseLabel = modelLabel(baseDecl.base.namespaceId, baseName, qualified);
|
|
@@ -1927,18 +1951,11 @@ function interpretPslDocumentToSqlContract(input) {
|
|
|
1927
1951
|
family: input.target.familyId,
|
|
1928
1952
|
target: input.target.targetId,
|
|
1929
1953
|
codecLookup: input.codecLookup,
|
|
1930
|
-
|
|
1954
|
+
dataTypes: input.dataTypes,
|
|
1931
1955
|
sourceId: source.sources.sourceFileFor(source.node).filename,
|
|
1932
1956
|
diagnostics: { push: (d) => {
|
|
1933
1957
|
diagnostics.pushExternal(blindCast(d));
|
|
1934
1958
|
} },
|
|
1935
|
-
readWrittenValueForCodec: ({ written, codecId, subject }) => input.codecLookup.descriptorFor(codecId) === void 0 ? void 0 : readWrittenValueForCodec({
|
|
1936
|
-
written,
|
|
1937
|
-
codecId,
|
|
1938
|
-
codecLookup: input.codecLookup,
|
|
1939
|
-
dataTypes: input.dataTypes,
|
|
1940
|
-
subject
|
|
1941
|
-
}),
|
|
1942
1959
|
...ifDefined("enumInferenceCodecs", input.enumInferenceCodecs)
|
|
1943
1960
|
},
|
|
1944
1961
|
diagnostics
|
|
@@ -1953,7 +1970,7 @@ function interpretPslDocumentToSqlContract(input) {
|
|
|
1953
1970
|
target: input.target.targetId,
|
|
1954
1971
|
...ifDefined("enumInferenceCodecs", input.enumInferenceCodecs),
|
|
1955
1972
|
codecLookup: input.codecLookup,
|
|
1956
|
-
|
|
1973
|
+
dataTypes: input.dataTypes,
|
|
1957
1974
|
sourceId: source.sources.sourceFileFor(source.node).filename,
|
|
1958
1975
|
diagnostics: { push: (d) => {
|
|
1959
1976
|
diagnostics.pushExternal(blindCast(d));
|
|
@@ -2123,15 +2140,33 @@ function interpretPslDocumentToSqlContract(input) {
|
|
|
2123
2140
|
namespaceId,
|
|
2124
2141
|
key: modelCoordinateKey(namespaceId, model.name)
|
|
2125
2142
|
}]));
|
|
2126
|
-
const
|
|
2143
|
+
const discriminatorFieldOf = (model, fieldName) => {
|
|
2127
2144
|
const field = modelNodes.get(model)?.fields.find((node) => node.fieldName === fieldName);
|
|
2128
|
-
if (field === void 0 || !("columnName" in field)
|
|
2145
|
+
if (field === void 0 || !("columnName" in field)) return {
|
|
2146
|
+
field: {
|
|
2147
|
+
ref: void 0,
|
|
2148
|
+
nullable: false,
|
|
2149
|
+
many: false,
|
|
2150
|
+
enumMembers: void 0
|
|
2151
|
+
},
|
|
2152
|
+
enumName: void 0
|
|
2153
|
+
};
|
|
2154
|
+
const handle = "enumTypeHandle" in field ? field.enumTypeHandle : void 0;
|
|
2155
|
+
const encoded = handle === void 0 ? void 0 : encodeEnumMembers(handle, input.codecLookup);
|
|
2129
2156
|
return {
|
|
2130
|
-
|
|
2131
|
-
|
|
2157
|
+
field: {
|
|
2158
|
+
ref: {
|
|
2159
|
+
codecId: field.descriptor.codecId,
|
|
2160
|
+
...ifDefined("typeParams", field.descriptor.typeParams === void 0 ? void 0 : blindCast(field.descriptor.typeParams))
|
|
2161
|
+
},
|
|
2162
|
+
nullable: field.nullable,
|
|
2163
|
+
many: field.many === true,
|
|
2164
|
+
enumMembers: encoded?.ok ? encoded.value.map(({ value }) => value) : void 0
|
|
2165
|
+
},
|
|
2166
|
+
enumName: handle?.enumName
|
|
2132
2167
|
};
|
|
2133
2168
|
};
|
|
2134
|
-
const { discriminatorDeclarations, baseDeclarations } = collectPolymorphismDeclarations(modelIdentities, input.symbolTable, input.sources, binder, specContextFor,
|
|
2169
|
+
const { discriminatorDeclarations, baseDeclarations, reported } = collectPolymorphismDeclarations(modelIdentities, input.symbolTable, input.sources, binder, specContextFor, discriminatorFieldOf, input.codecLookup, dataTypes, diagnostics);
|
|
2135
2170
|
const stiVariantKeys = /* @__PURE__ */ new Set();
|
|
2136
2171
|
for (const [variantKey, declaration] of baseDeclarations) if (!(getAttribute(declaration.model.attributes, "map") !== void 0)) stiVariantKeys.add(variantKey);
|
|
2137
2172
|
for (const variantKey of stiVariantKeys) {
|
|
@@ -2224,7 +2259,7 @@ function interpretPslDocumentToSqlContract(input) {
|
|
|
2224
2259
|
modelsByCoordinate[coordinate] = model;
|
|
2225
2260
|
}
|
|
2226
2261
|
const polyDiagnostics = createPslDiagnosticCollector(input.sources);
|
|
2227
|
-
const polymorphicModels = resolvePolymorphism(modelsByCoordinate, physicalNames, discriminatorDeclarations, baseDeclarations, syntheticPkFieldsByVariant, stiBaseFieldsByBase, polyDiagnostics);
|
|
2262
|
+
const polymorphicModels = resolvePolymorphism(modelsByCoordinate, physicalNames, discriminatorDeclarations, baseDeclarations, reported, syntheticPkFieldsByVariant, stiBaseFieldsByBase, polyDiagnostics);
|
|
2228
2263
|
if (polyDiagnostics.length > 0) return notOk({
|
|
2229
2264
|
summary: "PSL to SQL contract interpretation failed",
|
|
2230
2265
|
diagnostics: polyDiagnostics.toExternal()
|
|
@@ -2243,4 +2278,4 @@ function interpretPslDocumentToSqlContract(input) {
|
|
|
2243
2278
|
//#endregion
|
|
2244
2279
|
export { normalizeReferentialAction as a, interpretPslDocumentToSqlContract as i, buildEntityTypesByDiscriminator as n, indexFkRelations as r, applyBackrelationCandidates as t };
|
|
2245
2280
|
|
|
2246
|
-
//# sourceMappingURL=interpreter-
|
|
2281
|
+
//# sourceMappingURL=interpreter-BDpym-rc-BZVFp5GU.mjs.map
|