@prisma-next/target-postgres 0.12.0-dev.4 → 0.12.0-dev.40
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-ids-DliyCWPY.d.mts → codec-ids-Cx7C07Y_.d.mts} +3 -2
- package/dist/codec-ids-Cx7C07Y_.d.mts.map +1 -0
- package/dist/{codec-ids-C5qzBqus.mjs → codec-ids-DTqscwN9.mjs} +3 -2
- package/dist/codec-ids-DTqscwN9.mjs.map +1 -0
- package/dist/codec-ids.d.mts +2 -2
- package/dist/codec-ids.mjs +2 -2
- package/dist/{codec-types-BF1DXTPs.d.mts → codec-types-BoxMGJk-.d.mts} +2 -2
- package/dist/{codec-types-BF1DXTPs.d.mts.map → codec-types-BoxMGJk-.d.mts.map} +1 -1
- package/dist/codec-types.d.mts +1 -1
- package/dist/{codecs-DuP3d9Au.d.mts → codecs-DCSyTOCb.d.mts} +2 -2
- package/dist/codecs-DCSyTOCb.d.mts.map +1 -0
- package/dist/codecs.d.mts +1 -1
- package/dist/codecs.mjs +37 -2
- package/dist/codecs.mjs.map +1 -1
- package/dist/column-type-compatibility-Dzxz_CkP.mjs +11 -0
- package/dist/column-type-compatibility-Dzxz_CkP.mjs.map +1 -0
- package/dist/column-type-compatibility.d.mts +5 -0
- package/dist/column-type-compatibility.d.mts.map +1 -0
- package/dist/column-type-compatibility.mjs +2 -0
- package/dist/contract-free.d.mts +75 -0
- package/dist/contract-free.d.mts.map +1 -0
- package/dist/contract-free.mjs +139 -0
- package/dist/contract-free.mjs.map +1 -0
- package/dist/control.d.mts +1 -1
- package/dist/control.mjs +64 -36
- package/dist/control.mjs.map +1 -1
- package/dist/{data-transform-CAPmAdxS.d.mts → data-transform-5gLOgP68.d.mts} +2 -2
- package/dist/{data-transform-CAPmAdxS.d.mts.map → data-transform-5gLOgP68.d.mts.map} +1 -1
- package/dist/{data-transform-CRkv2T_U.mjs → data-transform-DIYwbe4S.mjs} +1 -1
- package/dist/{data-transform-CRkv2T_U.mjs.map → data-transform-DIYwbe4S.mjs.map} +1 -1
- package/dist/data-transform.d.mts +1 -1
- package/dist/data-transform.mjs +1 -1
- package/dist/ddl.d.mts +2 -0
- package/dist/ddl.mjs +2 -0
- package/dist/{default-normalizer-DaAhmzBV.mjs → default-normalizer-DFHtpCPH.mjs} +1 -1
- package/dist/{default-normalizer-DaAhmzBV.mjs.map → default-normalizer-DFHtpCPH.mjs.map} +1 -1
- package/dist/default-normalizer.mjs +1 -1
- package/dist/{descriptor-meta-Uu8QaClr.mjs → descriptor-meta-BqATo5Dz.mjs} +3 -2
- package/dist/descriptor-meta-BqATo5Dz.mjs.map +1 -0
- package/dist/{descriptor-meta-runtime-DMRX39kp.mjs → descriptor-meta-runtime-BBL7VdnR.mjs} +2 -2
- package/dist/{descriptor-meta-runtime-DMRX39kp.mjs.map → descriptor-meta-runtime-BBL7VdnR.mjs.map} +1 -1
- package/dist/{enum-planning-DRA9LaMU.mjs → enum-planning-Nt9TYPHe.mjs} +0 -0
- package/dist/{enum-planning-DRA9LaMU.mjs.map → enum-planning-Nt9TYPHe.mjs.map} +1 -1
- package/dist/enum-planning.d.mts +1 -1
- package/dist/enum-planning.mjs +1 -1
- package/dist/{errors-BbnITmAD.mjs → errors-De185dnO.mjs} +1 -1
- package/dist/{errors-BbnITmAD.mjs.map → errors-De185dnO.mjs.map} +1 -1
- package/dist/errors.mjs +1 -1
- package/dist/{issue-planner-BtaL6OfW.mjs → issue-planner-SUBi9fH8.mjs} +10 -10
- package/dist/{issue-planner-BtaL6OfW.mjs.map → issue-planner-SUBi9fH8.mjs.map} +1 -1
- package/dist/issue-planner.d.mts +1 -1
- package/dist/issue-planner.mjs +1 -1
- package/dist/migration.d.mts +3 -3
- package/dist/migration.mjs +3 -3
- package/dist/{native-type-normalizer-BNEQ9VDs.mjs → native-type-normalizer-BUUe8USD.mjs} +1 -1
- package/dist/{native-type-normalizer-BNEQ9VDs.mjs.map → native-type-normalizer-BUUe8USD.mjs.map} +1 -1
- package/dist/native-type-normalizer.mjs +1 -1
- package/dist/nodes-DCC8-DhV.mjs +42 -0
- package/dist/nodes-DCC8-DhV.mjs.map +1 -0
- package/dist/nodes-DflxwrE8.d.mts +38 -0
- package/dist/nodes-DflxwrE8.d.mts.map +1 -0
- package/dist/{op-factory-call-CDlImOF_.d.mts → op-factory-call-B-HEOf41.d.mts} +3 -3
- package/dist/{op-factory-call-CDlImOF_.d.mts.map → op-factory-call-B-HEOf41.d.mts.map} +1 -1
- package/dist/{op-factory-call-ewOd5q6L.mjs → op-factory-call-D8XePTfV.mjs} +2 -2
- package/dist/{op-factory-call-ewOd5q6L.mjs.map → op-factory-call-D8XePTfV.mjs.map} +1 -1
- package/dist/op-factory-call.d.mts +1 -1
- package/dist/op-factory-call.mjs +1 -1
- package/dist/pack.d.mts +3 -2
- package/dist/pack.d.mts.map +1 -1
- package/dist/pack.mjs +1 -1
- package/dist/planner-BruD4_LM.mjs +342 -0
- package/dist/planner-BruD4_LM.mjs.map +1 -0
- package/dist/{planner-ddl-builders-BNMfSE9r.mjs → planner-ddl-builders-BcRMeGgx.mjs} +3 -3
- package/dist/{planner-ddl-builders-BNMfSE9r.mjs.map → planner-ddl-builders-BcRMeGgx.mjs.map} +1 -1
- package/dist/planner-ddl-builders.d.mts +1 -1
- package/dist/planner-ddl-builders.mjs +1 -1
- package/dist/{planner-identity-values-nhVj0hp-.mjs → planner-identity-values-DmwlJe_z.mjs} +1 -1
- package/dist/{planner-identity-values-nhVj0hp-.mjs.map → planner-identity-values-DmwlJe_z.mjs.map} +1 -1
- package/dist/planner-identity-values.mjs +1 -1
- package/dist/{planner-produced-postgres-migration-D02NOhVQ.d.mts → planner-produced-postgres-migration-Co71_VbU.d.mts} +3 -3
- package/dist/{planner-produced-postgres-migration-D02NOhVQ.d.mts.map → planner-produced-postgres-migration-Co71_VbU.d.mts.map} +1 -1
- package/dist/{planner-produced-postgres-migration-D_nsXbhl.mjs → planner-produced-postgres-migration-D6KXC2DH.mjs} +4 -4
- package/dist/{planner-produced-postgres-migration-D_nsXbhl.mjs.map → planner-produced-postgres-migration-D6KXC2DH.mjs.map} +1 -1
- package/dist/planner-produced-postgres-migration.d.mts +1 -1
- package/dist/planner-produced-postgres-migration.mjs +1 -1
- package/dist/{planner-schema-lookup-CGxxYfnD.mjs → planner-schema-lookup-Bm4S3LvB.mjs} +1 -1
- package/dist/{planner-schema-lookup-CGxxYfnD.mjs.map → planner-schema-lookup-Bm4S3LvB.mjs.map} +1 -1
- package/dist/planner-schema-lookup.mjs +1 -1
- package/dist/{planner-sql-checks-CfEiTXoQ.mjs → planner-sql-checks-lxWZQCFz.mjs} +3 -3
- package/dist/{planner-sql-checks-CfEiTXoQ.mjs.map → planner-sql-checks-lxWZQCFz.mjs.map} +1 -1
- package/dist/planner-sql-checks.mjs +1 -1
- package/dist/{planner-target-details-a_wuOiYf.d.mts → planner-target-details-Dv5N6x6k.d.mts} +1 -1
- package/dist/{planner-target-details-a_wuOiYf.d.mts.map → planner-target-details-Dv5N6x6k.d.mts.map} +1 -1
- package/dist/planner-target-details.d.mts +1 -1
- package/dist/planner.d.mts +3 -2
- package/dist/planner.d.mts.map +1 -1
- package/dist/planner.mjs +1 -1
- package/dist/{postgres-contract-serializer-BnOboPWs.mjs → postgres-contract-serializer-OfORJ-GY.mjs} +3 -3
- package/dist/{postgres-contract-serializer-BnOboPWs.mjs.map → postgres-contract-serializer-OfORJ-GY.mjs.map} +1 -1
- package/dist/{postgres-enum-type-CSzsvXrO.d.mts → postgres-enum-type-CWwVGBNK.d.mts} +1 -1
- package/dist/{postgres-enum-type-CSzsvXrO.d.mts.map → postgres-enum-type-CWwVGBNK.d.mts.map} +1 -1
- package/dist/{postgres-enum-type-BMgyxNyy.mjs → postgres-enum-type-CaGZ2mfI.mjs} +1 -1
- package/dist/{postgres-enum-type-BMgyxNyy.mjs.map → postgres-enum-type-CaGZ2mfI.mjs.map} +1 -1
- package/dist/{postgres-migration-DRY8V-bQ.d.mts → postgres-migration-BcKS2Lqq.d.mts} +3 -3
- package/dist/{postgres-migration-DRY8V-bQ.d.mts.map → postgres-migration-BcKS2Lqq.d.mts.map} +1 -1
- package/dist/{postgres-migration-BatbEvU6.mjs → postgres-migration-BnDg_Nj0.mjs} +3 -3
- package/dist/{postgres-migration-BatbEvU6.mjs.map → postgres-migration-BnDg_Nj0.mjs.map} +1 -1
- package/dist/{postgres-schema-BxAuNFX0.mjs → postgres-schema-Dky_Jff8.mjs} +3 -3
- package/dist/{postgres-schema-BxAuNFX0.mjs.map → postgres-schema-Dky_Jff8.mjs.map} +1 -1
- package/dist/{render-ops-XhICjX_P.mjs → render-ops-BpU-Qv06.mjs} +1 -1
- package/dist/{render-ops-XhICjX_P.mjs.map → render-ops-BpU-Qv06.mjs.map} +1 -1
- package/dist/render-ops.d.mts +1 -1
- package/dist/render-ops.mjs +1 -1
- package/dist/{render-typescript-K125n-RZ.mjs → render-typescript-D9O7aOS_.mjs} +1 -1
- package/dist/{render-typescript-K125n-RZ.mjs.map → render-typescript-D9O7aOS_.mjs.map} +1 -1
- package/dist/render-typescript.mjs +1 -1
- package/dist/runtime.mjs +2 -2
- package/dist/{shared-Do_a5ymU.d.mts → shared-CMqM-2BA.d.mts} +2 -2
- package/dist/{shared-Do_a5ymU.d.mts.map → shared-CMqM-2BA.d.mts.map} +1 -1
- package/dist/{sql-utils-CggjWNij.mjs → sql-utils-DR_F9aHR.mjs} +1 -1
- package/dist/{sql-utils-CggjWNij.mjs.map → sql-utils-DR_F9aHR.mjs.map} +1 -1
- package/dist/sql-utils.mjs +1 -1
- package/dist/{tables-DoA39Yqo.mjs → tables-Cuy4VIgu.mjs} +3 -3
- package/dist/{tables-DoA39Yqo.mjs.map → tables-Cuy4VIgu.mjs.map} +1 -1
- package/dist/{types-O40IcFV9.d.mts → types-kggVJs6C.d.mts} +1 -1
- package/dist/types-kggVJs6C.d.mts.map +1 -0
- package/dist/types.d.mts +2 -2
- package/dist/types.mjs +2 -2
- package/package.json +20 -18
- package/src/contract-free/columns.ts +49 -0
- package/src/contract-free/control-bootstrap.ts +55 -0
- package/src/contract-free/ddl.ts +32 -0
- package/src/core/ast/table-source.ts +23 -0
- package/src/core/codec-ids.ts +1 -0
- package/src/core/codecs.ts +44 -0
- package/src/core/column-type-compatibility.ts +13 -0
- package/src/core/ddl/nodes.ts +59 -0
- package/src/core/descriptor-meta.ts +1 -0
- package/src/core/migrations/control-policy.ts +235 -0
- package/src/core/migrations/planner.ts +57 -6
- package/src/core/migrations/runner.ts +78 -45
- package/src/exports/column-type-compatibility.ts +1 -0
- package/src/exports/contract-free.ts +7 -0
- package/src/exports/ddl.ts +7 -0
- package/dist/codec-ids-C5qzBqus.mjs.map +0 -1
- package/dist/codec-ids-DliyCWPY.d.mts.map +0 -1
- package/dist/codecs-DuP3d9Au.d.mts.map +0 -1
- package/dist/descriptor-meta-Uu8QaClr.mjs.map +0 -1
- package/dist/planner-Bjz5pnLa.mjs +0 -177
- package/dist/planner-Bjz5pnLa.mjs.map +0 -1
- package/dist/statement-builders-DVI5IVAa.mjs +0 -131
- package/dist/statement-builders-DVI5IVAa.mjs.map +0 -1
- package/dist/statement-builders.d.mts +0 -51
- package/dist/statement-builders.d.mts.map +0 -1
- package/dist/statement-builders.mjs +0 -2
- package/dist/types-O40IcFV9.d.mts.map +0 -1
- package/src/core/migrations/statement-builders.ts +0 -183
- package/src/exports/statement-builders.ts +0 -8
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
import type { Contract } from '@prisma-next/contract/types';
|
|
2
|
+
import type { ControlPolicySubject } from '@prisma-next/family-sql/control';
|
|
3
|
+
import type { SchemaIssue } from '@prisma-next/framework-components/control';
|
|
4
|
+
import { UNBOUND_NAMESPACE_ID } from '@prisma-next/framework-components/ir';
|
|
5
|
+
import {
|
|
6
|
+
isPostgresEnumStorageEntry,
|
|
7
|
+
type SqlStorage,
|
|
8
|
+
storageTableAt,
|
|
9
|
+
} from '@prisma-next/sql-contract/types';
|
|
10
|
+
import { ifDefined } from '@prisma-next/utils/defined';
|
|
11
|
+
import { isPostgresSchema } from '../postgres-schema';
|
|
12
|
+
import type { PostgresOpFactoryCall } from './op-factory-call';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Factory calls that create a whole, previously-absent top-level storage
|
|
16
|
+
* object. Used to decide whether `tolerated` permits a call (it only allows
|
|
17
|
+
* creating absent objects, never modifying existing ones).
|
|
18
|
+
*
|
|
19
|
+
* Deliberately an explicit, closed set rather than a `factoryName`
|
|
20
|
+
* create/alter/drop classification: it answers exactly one yes/no question
|
|
21
|
+
* and is fail-closed. Any call not listed here — including future or
|
|
22
|
+
* extension-contributed factories — is treated as NOT object-creation, so it
|
|
23
|
+
* is suppressed under `tolerated` rather than permissively emitted.
|
|
24
|
+
*/
|
|
25
|
+
const OBJECT_CREATION_FACTORIES: ReadonlySet<string> = new Set<string>([
|
|
26
|
+
'createTable',
|
|
27
|
+
'createEnumType',
|
|
28
|
+
'createSchema',
|
|
29
|
+
]);
|
|
30
|
+
|
|
31
|
+
function createsNewTopLevelObject(call: PostgresOpFactoryCall): boolean {
|
|
32
|
+
return OBJECT_CREATION_FACTORIES.has(call.factoryName);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
function ddlSchemaNameForNamespace(contract: Contract<SqlStorage>, namespaceId: string): string {
|
|
36
|
+
const namespace = contract.storage.namespaces[namespaceId];
|
|
37
|
+
return isPostgresSchema(namespace) ? namespace.ddlSchemaName(contract.storage) : namespaceId;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
function resolveNamespaceIdForTable(
|
|
41
|
+
contract: Contract<SqlStorage>,
|
|
42
|
+
tableName: string,
|
|
43
|
+
ddlSchemaName: string | undefined,
|
|
44
|
+
): string {
|
|
45
|
+
for (const namespaceId of Object.keys(contract.storage.namespaces)) {
|
|
46
|
+
const table = storageTableAt(contract.storage, namespaceId, tableName);
|
|
47
|
+
if (!table) continue;
|
|
48
|
+
if (
|
|
49
|
+
ddlSchemaName === undefined ||
|
|
50
|
+
ddlSchemaNameForNamespace(contract, namespaceId) === ddlSchemaName
|
|
51
|
+
) {
|
|
52
|
+
return namespaceId;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return UNBOUND_NAMESPACE_ID;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
function resolveNamespaceIdForDdlSchema(
|
|
59
|
+
contract: Contract<SqlStorage>,
|
|
60
|
+
ddlSchemaName: string,
|
|
61
|
+
): string {
|
|
62
|
+
for (const namespaceId of Object.keys(contract.storage.namespaces)) {
|
|
63
|
+
const ns = contract.storage.namespaces[namespaceId];
|
|
64
|
+
if (isPostgresSchema(ns) && ns.ddlSchemaName(contract.storage) === ddlSchemaName) {
|
|
65
|
+
return namespaceId;
|
|
66
|
+
}
|
|
67
|
+
if (namespaceId === ddlSchemaName) {
|
|
68
|
+
return namespaceId;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return UNBOUND_NAMESPACE_ID;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
interface PostgresCallFields {
|
|
75
|
+
readonly schemaName?: string;
|
|
76
|
+
readonly tableName?: string;
|
|
77
|
+
readonly columnName?: string;
|
|
78
|
+
readonly typeName?: string;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
function postgresCallFields(call: PostgresOpFactoryCall): PostgresCallFields {
|
|
82
|
+
return {
|
|
83
|
+
...ifDefined('schemaName', 'schemaName' in call ? call.schemaName : undefined),
|
|
84
|
+
...ifDefined('tableName', 'tableName' in call ? call.tableName : undefined),
|
|
85
|
+
...ifDefined('columnName', 'columnName' in call ? call.columnName : undefined),
|
|
86
|
+
...ifDefined('typeName', 'typeName' in call ? call.typeName : undefined),
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
export function formatPostgresControlPolicySubjectLabel(
|
|
91
|
+
factoryName: string,
|
|
92
|
+
subject: ControlPolicySubject | undefined,
|
|
93
|
+
contract: Contract<SqlStorage>,
|
|
94
|
+
): string {
|
|
95
|
+
if (subject?.table) {
|
|
96
|
+
const ddlSchema = ddlSchemaNameForNamespace(contract, subject.namespaceId);
|
|
97
|
+
return `${factoryName}(${ddlSchema}.${subject.table})`;
|
|
98
|
+
}
|
|
99
|
+
if (subject?.typeName) {
|
|
100
|
+
const ddlSchema = ddlSchemaNameForNamespace(contract, subject.namespaceId);
|
|
101
|
+
return `${factoryName}(${ddlSchema}.${subject.typeName})`;
|
|
102
|
+
}
|
|
103
|
+
return factoryName;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
export function resolvePostgresCallControlPolicySubject(
|
|
107
|
+
call: PostgresOpFactoryCall,
|
|
108
|
+
contract: Contract<SqlStorage>,
|
|
109
|
+
): ControlPolicySubject | undefined {
|
|
110
|
+
const callFields = postgresCallFields(call);
|
|
111
|
+
const createsNewObject = createsNewTopLevelObject(call);
|
|
112
|
+
|
|
113
|
+
if (call.factoryName === 'createSchema' && callFields.schemaName) {
|
|
114
|
+
return {
|
|
115
|
+
namespaceId: resolveNamespaceIdForDdlSchema(contract, callFields.schemaName),
|
|
116
|
+
createsNewObject,
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
if (callFields.typeName && call.factoryName !== 'addColumn') {
|
|
121
|
+
const namespaceId = callFields.schemaName
|
|
122
|
+
? resolveNamespaceIdForDdlSchema(contract, callFields.schemaName)
|
|
123
|
+
: UNBOUND_NAMESPACE_ID;
|
|
124
|
+
const ns = contract.storage.namespaces[namespaceId];
|
|
125
|
+
const rawEnum =
|
|
126
|
+
ns && 'enum' in ns && ns.enum != null ? ns.enum[callFields.typeName] : undefined;
|
|
127
|
+
const controlPolicy = isPostgresEnumStorageEntry(rawEnum) ? rawEnum.control : undefined;
|
|
128
|
+
return {
|
|
129
|
+
namespaceId,
|
|
130
|
+
...ifDefined('explicitNodeControlPolicy', controlPolicy),
|
|
131
|
+
typeName: callFields.typeName,
|
|
132
|
+
createsNewObject,
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
if (callFields.tableName) {
|
|
137
|
+
const namespaceId = resolveNamespaceIdForTable(
|
|
138
|
+
contract,
|
|
139
|
+
callFields.tableName,
|
|
140
|
+
callFields.schemaName,
|
|
141
|
+
);
|
|
142
|
+
const table = storageTableAt(contract.storage, namespaceId, callFields.tableName);
|
|
143
|
+
const tableControlPolicy = table?.control;
|
|
144
|
+
return {
|
|
145
|
+
namespaceId,
|
|
146
|
+
...ifDefined('explicitNodeControlPolicy', tableControlPolicy),
|
|
147
|
+
table: callFields.tableName,
|
|
148
|
+
...ifDefined('column', callFields.columnName),
|
|
149
|
+
createsNewObject,
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
if (callFields.schemaName) {
|
|
154
|
+
return {
|
|
155
|
+
namespaceId: resolveNamespaceIdForDdlSchema(contract, callFields.schemaName),
|
|
156
|
+
createsNewObject,
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
return undefined;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Issue kinds that describe the absence of a whole, top-level Postgres
|
|
165
|
+
* object — the same kinds `createsNewTopLevelObject` recognises for calls.
|
|
166
|
+
* Used by {@link resolvePostgresIssueCreationFactoryName} to decide whether
|
|
167
|
+
* a `tolerated` subject permits the issue to flow into the planner
|
|
168
|
+
* (create-if-absent) and to seed the suppressed-subject warning's
|
|
169
|
+
* `factoryName` when the planner is skipped.
|
|
170
|
+
*/
|
|
171
|
+
const POSTGRES_ISSUE_CREATION_FACTORY: Readonly<Record<string, string>> = Object.freeze({
|
|
172
|
+
missing_schema: 'createSchema',
|
|
173
|
+
missing_table: 'createTable',
|
|
174
|
+
type_missing: 'createEnumType',
|
|
175
|
+
});
|
|
176
|
+
|
|
177
|
+
export function resolvePostgresIssueCreationFactoryName(issue: SchemaIssue): string | undefined {
|
|
178
|
+
return POSTGRES_ISSUE_CREATION_FACTORY[issue.kind];
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
/**
|
|
182
|
+
* Resolve the control-policy subject coordinate for a single
|
|
183
|
+
* {@link SchemaIssue}. Mirrors the resolution `resolvePostgresCallControlPolicySubject`
|
|
184
|
+
* performs for a generated DDL call, but works *off the issue* — so the
|
|
185
|
+
* planner can partition issues by effective policy before the diff engine
|
|
186
|
+
* runs. `createsNewObject` is derived from the issue's kind: schema/table/
|
|
187
|
+
* type-missing issues describe a brand-new top-level object; everything else
|
|
188
|
+
* touches an existing object.
|
|
189
|
+
*
|
|
190
|
+
* An `extra_table` issue carries no contract namespace coordinate (the table
|
|
191
|
+
* isn't in any contract namespace), so the subject's `namespaceId` falls
|
|
192
|
+
* back to {@link UNBOUND_NAMESPACE_ID}; the call-side resolver does the same
|
|
193
|
+
* for the `DropTableCall` it produces.
|
|
194
|
+
*/
|
|
195
|
+
export function resolvePostgresIssueControlPolicySubject(
|
|
196
|
+
issue: SchemaIssue,
|
|
197
|
+
contract: Contract<SqlStorage>,
|
|
198
|
+
): ControlPolicySubject | undefined {
|
|
199
|
+
const createsNewObject = POSTGRES_ISSUE_CREATION_FACTORY[issue.kind] !== undefined;
|
|
200
|
+
|
|
201
|
+
if (issue.kind === 'missing_schema' && issue.namespaceId) {
|
|
202
|
+
return { namespaceId: issue.namespaceId, createsNewObject };
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
if ('typeName' in issue && issue.typeName) {
|
|
206
|
+
const namespaceId =
|
|
207
|
+
'namespaceId' in issue && issue.namespaceId ? issue.namespaceId : UNBOUND_NAMESPACE_ID;
|
|
208
|
+
const ns = contract.storage.namespaces[namespaceId];
|
|
209
|
+
const rawEnum = ns && 'enum' in ns && ns.enum != null ? ns.enum[issue.typeName] : undefined;
|
|
210
|
+
const controlPolicy = isPostgresEnumStorageEntry(rawEnum) ? rawEnum.control : undefined;
|
|
211
|
+
return {
|
|
212
|
+
namespaceId,
|
|
213
|
+
...ifDefined('explicitNodeControlPolicy', controlPolicy),
|
|
214
|
+
typeName: issue.typeName,
|
|
215
|
+
createsNewObject,
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
if ('table' in issue && issue.table) {
|
|
220
|
+
const namespaceId =
|
|
221
|
+
'namespaceId' in issue && issue.namespaceId
|
|
222
|
+
? issue.namespaceId
|
|
223
|
+
: resolveNamespaceIdForTable(contract, issue.table, undefined);
|
|
224
|
+
const table = storageTableAt(contract.storage, namespaceId, issue.table);
|
|
225
|
+
return {
|
|
226
|
+
namespaceId,
|
|
227
|
+
...ifDefined('explicitNodeControlPolicy', table?.control),
|
|
228
|
+
table: issue.table,
|
|
229
|
+
...ifDefined('column', 'column' in issue ? issue.column : undefined),
|
|
230
|
+
createsNewObject,
|
|
231
|
+
};
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
return undefined;
|
|
235
|
+
}
|
|
@@ -2,10 +2,13 @@ import type { Contract } from '@prisma-next/contract/types';
|
|
|
2
2
|
import type {
|
|
3
3
|
MigrationOperationPolicy,
|
|
4
4
|
SqlMigrationPlannerPlanOptions,
|
|
5
|
+
SqlPlannerConflict,
|
|
5
6
|
SqlPlannerFailureResult,
|
|
6
7
|
} from '@prisma-next/family-sql/control';
|
|
7
8
|
import {
|
|
8
9
|
extractCodecControlHooks,
|
|
10
|
+
partitionCallsByControlPolicy,
|
|
11
|
+
partitionIssuesByControlPolicy,
|
|
9
12
|
planFieldEventOperations,
|
|
10
13
|
plannerFailure,
|
|
11
14
|
} from '@prisma-next/family-sql/control';
|
|
@@ -18,10 +21,19 @@ import type {
|
|
|
18
21
|
SchemaIssue,
|
|
19
22
|
} from '@prisma-next/framework-components/control';
|
|
20
23
|
import { UNBOUND_NAMESPACE_ID } from '@prisma-next/framework-components/ir';
|
|
24
|
+
import { blindCast } from '@prisma-next/utils/casts';
|
|
25
|
+
import { postgresColumnsCompatible } from '../column-type-compatibility';
|
|
21
26
|
import { parsePostgresDefault } from '../default-normalizer';
|
|
22
27
|
import { normalizeSchemaNativeType } from '../native-type-normalizer';
|
|
28
|
+
import {
|
|
29
|
+
formatPostgresControlPolicySubjectLabel,
|
|
30
|
+
resolvePostgresCallControlPolicySubject,
|
|
31
|
+
resolvePostgresIssueControlPolicySubject,
|
|
32
|
+
resolvePostgresIssueCreationFactoryName,
|
|
33
|
+
} from './control-policy';
|
|
23
34
|
import { createResolveExistingEnumValues } from './enum-planning';
|
|
24
35
|
import { planIssues } from './issue-planner';
|
|
36
|
+
import type { PostgresOpFactoryCall } from './op-factory-call';
|
|
25
37
|
import { TypeScriptRenderablePostgresMigration } from './planner-produced-postgres-migration';
|
|
26
38
|
import { postgresPlannerStrategies } from './planner-strategies';
|
|
27
39
|
import { verifyPostgresNamespacePresence } from './verify-postgres-namespaces';
|
|
@@ -52,7 +64,11 @@ export function createPostgresMigrationPlanner(): PostgresMigrationPlanner {
|
|
|
52
64
|
* uniformly.
|
|
53
65
|
*/
|
|
54
66
|
export type PostgresPlanResult =
|
|
55
|
-
| {
|
|
67
|
+
| {
|
|
68
|
+
readonly kind: 'success';
|
|
69
|
+
readonly plan: TypeScriptRenderablePostgresMigration;
|
|
70
|
+
readonly warnings?: readonly SqlPlannerConflict[];
|
|
71
|
+
}
|
|
56
72
|
| SqlPlannerFailureResult;
|
|
57
73
|
|
|
58
74
|
/**
|
|
@@ -131,8 +147,25 @@ export class PostgresMigrationPlanner implements MigrationPlanner<'sql', 'postgr
|
|
|
131
147
|
const codecHooks = extractCodecControlHooks(options.frameworkComponents);
|
|
132
148
|
const storageTypes = options.contract.storage.types ?? {};
|
|
133
149
|
|
|
134
|
-
|
|
150
|
+
// Input-side control-policy partition. `external` / `observed` subjects
|
|
151
|
+
// — and non-creation issues for `tolerated` subjects — are dropped from
|
|
152
|
+
// the planner's input entirely; the planner never observes them, never
|
|
153
|
+
// diffs them, never generates DDL for them. Suppression warnings are
|
|
154
|
+
// built directly from the suppressed partition (one per subject), so the
|
|
155
|
+
// user-visible message survives even when the planner would have failed
|
|
156
|
+
// to model the subject's live shape.
|
|
157
|
+
const issuePartition = partitionIssuesByControlPolicy({
|
|
135
158
|
issues: schemaIssues,
|
|
159
|
+
contract: options.contract,
|
|
160
|
+
resolveControlPolicySubject: (issue) =>
|
|
161
|
+
resolvePostgresIssueControlPolicySubject(issue, options.contract),
|
|
162
|
+
resolveCreationFactoryName: resolvePostgresIssueCreationFactoryName,
|
|
163
|
+
formatSubjectLabel: (factoryName, subject) =>
|
|
164
|
+
formatPostgresControlPolicySubjectLabel(factoryName, subject, options.contract),
|
|
165
|
+
});
|
|
166
|
+
|
|
167
|
+
const result = planIssues({
|
|
168
|
+
issues: issuePartition.plannable,
|
|
136
169
|
toContract: options.contract,
|
|
137
170
|
// `fromContract` is only supplied by `migration plan`. It is `null` for
|
|
138
171
|
// `db update` / `db init`, which means data-safety strategies needing
|
|
@@ -163,10 +196,26 @@ export class PostgresMigrationPlanner implements MigrationPlanner<'sql', 'postgr
|
|
|
163
196
|
newContract: options.contract,
|
|
164
197
|
codecHooks,
|
|
165
198
|
});
|
|
166
|
-
// Codec
|
|
167
|
-
//
|
|
168
|
-
|
|
169
|
-
|
|
199
|
+
// Codec hook ops are target-agnostic `OpFactoryCall`; Postgres planning
|
|
200
|
+
// lifts them at this integration boundary (see field-event-planner JSDoc).
|
|
201
|
+
const fieldEventPostgresCalls = blindCast<
|
|
202
|
+
readonly PostgresOpFactoryCall[],
|
|
203
|
+
'Codec hook ops conform to PostgresOpFactoryCall at the app emitter boundary'
|
|
204
|
+
>(fieldEventOps);
|
|
205
|
+
const fieldEventPartition = partitionCallsByControlPolicy({
|
|
206
|
+
calls: fieldEventPostgresCalls,
|
|
207
|
+
contract: options.contract,
|
|
208
|
+
resolveControlPolicySubject: (call) =>
|
|
209
|
+
resolvePostgresCallControlPolicySubject(call, options.contract),
|
|
210
|
+
resolveFactoryName: (call) => call.factoryName,
|
|
211
|
+
formatSubjectLabel: (factoryName, subject) =>
|
|
212
|
+
formatPostgresControlPolicySubjectLabel(factoryName, subject, options.contract),
|
|
213
|
+
});
|
|
214
|
+
const calls = [...result.value.calls, ...fieldEventPartition.kept];
|
|
215
|
+
const warnings: SqlPlannerConflict[] = [
|
|
216
|
+
...issuePartition.warnings,
|
|
217
|
+
...fieldEventPartition.warnings,
|
|
218
|
+
];
|
|
170
219
|
|
|
171
220
|
return Object.freeze({
|
|
172
221
|
kind: 'success' as const,
|
|
@@ -178,6 +227,7 @@ export class PostgresMigrationPlanner implements MigrationPlanner<'sql', 'postgr
|
|
|
178
227
|
},
|
|
179
228
|
options.spaceId,
|
|
180
229
|
),
|
|
230
|
+
...(warnings.length > 0 ? { warnings: Object.freeze(warnings) } : {}),
|
|
181
231
|
});
|
|
182
232
|
}
|
|
183
233
|
|
|
@@ -208,6 +258,7 @@ export class PostgresMigrationPlanner implements MigrationPlanner<'sql', 'postgr
|
|
|
208
258
|
frameworkComponents: options.frameworkComponents,
|
|
209
259
|
normalizeDefault: parsePostgresDefault,
|
|
210
260
|
normalizeNativeType: normalizeSchemaNativeType,
|
|
261
|
+
columnsCompatible: postgresColumnsCompatible,
|
|
211
262
|
resolveExistingEnumValues: createResolveExistingEnumValues(options.contract.storage),
|
|
212
263
|
};
|
|
213
264
|
const verifyResult = verifySqlSchema(verifyOptions);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ContractMarkerRecord } from '@prisma-next/contract/types';
|
|
1
|
+
import type { Contract, ContractMarkerRecord } from '@prisma-next/contract/types';
|
|
2
2
|
import type {
|
|
3
3
|
MigrationOperationPolicy,
|
|
4
4
|
SqlControlFamilyInstance,
|
|
@@ -19,22 +19,17 @@ import type {
|
|
|
19
19
|
} from '@prisma-next/framework-components/control';
|
|
20
20
|
import { APP_SPACE_ID } from '@prisma-next/framework-components/control';
|
|
21
21
|
import { UNBOUND_NAMESPACE_ID } from '@prisma-next/framework-components/ir';
|
|
22
|
+
import type { SqlStorage } from '@prisma-next/sql-contract/types';
|
|
22
23
|
import { SqlQueryError } from '@prisma-next/sql-errors';
|
|
24
|
+
import type { LoweredStatement } from '@prisma-next/sql-relational-core/ast';
|
|
23
25
|
import { ifDefined } from '@prisma-next/utils/defined';
|
|
24
26
|
import type { Result } from '@prisma-next/utils/result';
|
|
25
27
|
import { notOk, ok, okVoid } from '@prisma-next/utils/result';
|
|
28
|
+
import { postgresColumnsCompatible } from '../column-type-compatibility';
|
|
26
29
|
import { parsePostgresDefault } from '../default-normalizer';
|
|
27
30
|
import { normalizeSchemaNativeType } from '../native-type-normalizer';
|
|
28
31
|
import { createResolveExistingEnumValues } from './enum-planning';
|
|
29
32
|
import type { PostgresPlanTargetDetails } from './planner-target-details';
|
|
30
|
-
import {
|
|
31
|
-
buildLedgerInsertStatement,
|
|
32
|
-
buildMergeMarkerStatements,
|
|
33
|
-
ensureLedgerTableStatement,
|
|
34
|
-
ensureMarkerTableStatement,
|
|
35
|
-
ensurePrismaContractSchemaStatement,
|
|
36
|
-
type SqlStatement,
|
|
37
|
-
} from './statement-builders';
|
|
38
33
|
|
|
39
34
|
interface ApplyPlanSuccessValue {
|
|
40
35
|
readonly operationsExecuted: number;
|
|
@@ -107,7 +102,7 @@ class PostgresMigrationRunner implements SqlMigrationRunner<PostgresPlanTargetDe
|
|
|
107
102
|
if (!policyCheck.ok) return policyCheck;
|
|
108
103
|
|
|
109
104
|
await this.acquireLock(driver, lockKey);
|
|
110
|
-
const ensureResult = await this.ensureControlTables(driver);
|
|
105
|
+
const ensureResult = await this.ensureControlTables(driver, options.destinationContract);
|
|
111
106
|
if (!ensureResult.ok) return ensureResult;
|
|
112
107
|
const existingMarker = await this.family.readMarker({ driver, space });
|
|
113
108
|
|
|
@@ -146,6 +141,7 @@ class PostgresMigrationRunner implements SqlMigrationRunner<PostgresPlanTargetDe
|
|
|
146
141
|
frameworkComponents: options.frameworkComponents,
|
|
147
142
|
normalizeDefault: parsePostgresDefault,
|
|
148
143
|
normalizeNativeType: normalizeSchemaNativeType,
|
|
144
|
+
columnsCompatible: postgresColumnsCompatible,
|
|
149
145
|
resolveExistingEnumValues: createResolveExistingEnumValues(
|
|
150
146
|
options.destinationContract.storage,
|
|
151
147
|
),
|
|
@@ -165,8 +161,9 @@ class PostgresMigrationRunner implements SqlMigrationRunner<PostgresPlanTargetDe
|
|
|
165
161
|
isSelfEdge && applyValue.operationsExecuted === 0 && incomingIsSubsetOfExisting;
|
|
166
162
|
|
|
167
163
|
if (!isSelfEdgeNoOp) {
|
|
168
|
-
await this.upsertMarker(driver, options, existingMarker, space);
|
|
169
|
-
|
|
164
|
+
const markerResult = await this.upsertMarker(driver, options, existingMarker, space);
|
|
165
|
+
if (!markerResult.ok) return markerResult;
|
|
166
|
+
await this.recordLedgerEntries(driver, options, applyValue.executedOperations);
|
|
170
167
|
}
|
|
171
168
|
|
|
172
169
|
return runnerSuccess({
|
|
@@ -282,18 +279,22 @@ class PostgresMigrationRunner implements SqlMigrationRunner<PostgresPlanTargetDe
|
|
|
282
279
|
|
|
283
280
|
private async ensureControlTables(
|
|
284
281
|
driver: SqlMigrationRunnerExecuteOptions<PostgresPlanTargetDetails>['driver'],
|
|
282
|
+
contract: Contract<SqlStorage>,
|
|
285
283
|
): Promise<Result<void, SqlMigrationRunnerFailure>> {
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
284
|
+
const lowererContext = { contract };
|
|
285
|
+
const bootstrapQueries = this.family.bootstrapControlTableQueries();
|
|
286
|
+
const [schemaQuery, ...tableQueries] = bootstrapQueries;
|
|
287
|
+
if (schemaQuery === undefined) {
|
|
288
|
+
throw new Error('Postgres control-table bootstrap must include CREATE SCHEMA');
|
|
289
|
+
}
|
|
290
|
+
await this.executeStatement(driver, this.family.lowerAst(schemaQuery, lowererContext));
|
|
291
291
|
const legacyDetection = await this.detectLegacyMarkerShape(driver);
|
|
292
292
|
if (!legacyDetection.ok) {
|
|
293
293
|
return legacyDetection;
|
|
294
294
|
}
|
|
295
|
-
|
|
296
|
-
|
|
295
|
+
for (const query of tableQueries) {
|
|
296
|
+
await this.executeStatement(driver, this.family.lowerAst(query, lowererContext));
|
|
297
|
+
}
|
|
297
298
|
return okVoid();
|
|
298
299
|
}
|
|
299
300
|
|
|
@@ -594,43 +595,75 @@ class PostgresMigrationRunner implements SqlMigrationRunner<PostgresPlanTargetDe
|
|
|
594
595
|
options: SqlMigrationRunnerExecuteOptions<PostgresPlanTargetDetails>,
|
|
595
596
|
existingMarker: ContractMarkerRecord | null,
|
|
596
597
|
space: string,
|
|
597
|
-
): Promise<void
|
|
598
|
-
const
|
|
599
|
-
const writeStatements = buildMergeMarkerStatements({
|
|
600
|
-
space,
|
|
598
|
+
): Promise<Result<void, SqlMigrationRunnerFailure>> {
|
|
599
|
+
const destination = {
|
|
601
600
|
storageHash: options.plan.destination.storageHash,
|
|
602
601
|
profileHash:
|
|
603
602
|
options.plan.destination.profileHash ??
|
|
604
603
|
options.destinationContract.profileHash ??
|
|
605
604
|
options.plan.destination.storageHash,
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
605
|
+
invariants: options.plan.providedInvariants ?? [],
|
|
606
|
+
};
|
|
607
|
+
if (!existingMarker) {
|
|
608
|
+
await this.family.initMarker({ driver, space, destination });
|
|
609
|
+
return okVoid();
|
|
610
|
+
}
|
|
611
|
+
const updated = await this.family.updateMarker({
|
|
612
|
+
driver,
|
|
613
|
+
space,
|
|
614
|
+
expectedFrom: existingMarker.storageHash,
|
|
615
|
+
destination,
|
|
610
616
|
});
|
|
611
|
-
|
|
612
|
-
|
|
617
|
+
if (!updated) {
|
|
618
|
+
return runnerFailure(
|
|
619
|
+
'MARKER_CAS_FAILURE',
|
|
620
|
+
'Marker was modified by another process during migration execution.',
|
|
621
|
+
{
|
|
622
|
+
meta: {
|
|
623
|
+
space,
|
|
624
|
+
expectedStorageHash: existingMarker.storageHash,
|
|
625
|
+
destinationStorageHash: options.plan.destination.storageHash,
|
|
626
|
+
},
|
|
627
|
+
},
|
|
628
|
+
);
|
|
629
|
+
}
|
|
630
|
+
return okVoid();
|
|
613
631
|
}
|
|
614
632
|
|
|
615
|
-
private async
|
|
633
|
+
private async recordLedgerEntries(
|
|
616
634
|
driver: SqlMigrationRunnerExecuteOptions<PostgresPlanTargetDetails>['driver'],
|
|
617
635
|
options: SqlMigrationRunnerExecuteOptions<PostgresPlanTargetDetails>,
|
|
618
|
-
existingMarker: ContractMarkerRecord | null,
|
|
619
636
|
executedOperations: readonly SqlMigrationPlanOperation<PostgresPlanTargetDetails>[],
|
|
620
637
|
): Promise<void> {
|
|
621
|
-
const
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
638
|
+
const plan = options.plan;
|
|
639
|
+
const space = plan.spaceId;
|
|
640
|
+
const edges = options.migrationEdges;
|
|
641
|
+
const totalEdgeOps = edges.reduce((sum, edge) => sum + edge.operationCount, 0);
|
|
642
|
+
if (totalEdgeOps !== plan.operations.length) {
|
|
643
|
+
throw new Error(
|
|
644
|
+
`Ledger write: plan.operations length (${plan.operations.length}) does not match sum of migrationEdges operationCount (${totalEdgeOps})`,
|
|
645
|
+
);
|
|
646
|
+
}
|
|
647
|
+
// The ledger records the operations as executed — idempotency-skipped ops
|
|
648
|
+
// are substituted with skip records (empty `execute`) by `applyPlan`, so the
|
|
649
|
+
// journal reflects what actually ran rather than the raw plan.
|
|
650
|
+
let offset = 0;
|
|
651
|
+
for (const edge of edges) {
|
|
652
|
+
const edgeOps = executedOperations.slice(offset, offset + edge.operationCount);
|
|
653
|
+
offset += edge.operationCount;
|
|
654
|
+
await this.family.writeLedgerEntry({
|
|
655
|
+
driver,
|
|
656
|
+
space,
|
|
657
|
+
entry: {
|
|
658
|
+
edgeId: `${edge.from}->${edge.to}`,
|
|
659
|
+
from: edge.from,
|
|
660
|
+
to: edge.to,
|
|
661
|
+
migrationName: edge.dirName,
|
|
662
|
+
migrationHash: edge.migrationHash,
|
|
663
|
+
operations: edgeOps,
|
|
664
|
+
},
|
|
665
|
+
});
|
|
666
|
+
}
|
|
634
667
|
}
|
|
635
668
|
|
|
636
669
|
private async acquireLock(
|
|
@@ -660,7 +693,7 @@ class PostgresMigrationRunner implements SqlMigrationRunner<PostgresPlanTargetDe
|
|
|
660
693
|
|
|
661
694
|
private async executeStatement(
|
|
662
695
|
driver: SqlMigrationRunnerExecuteOptions<PostgresPlanTargetDetails>['driver'],
|
|
663
|
-
statement:
|
|
696
|
+
statement: LoweredStatement,
|
|
664
697
|
): Promise<void> {
|
|
665
698
|
if (statement.params.length > 0) {
|
|
666
699
|
await driver.query(statement.sql, statement.params);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { postgresColumnsCompatible } from '../core/column-type-compatibility';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { int4, int8, jsonb, pgTable, text, textArray, timestamptz } from '../contract-free/columns';
|
|
2
|
+
export {
|
|
3
|
+
buildControlTableBootstrapQueries,
|
|
4
|
+
buildSignMarkerBootstrapQueries,
|
|
5
|
+
} from '../contract-free/control-bootstrap';
|
|
6
|
+
export { createSchema, createTable } from '../contract-free/ddl';
|
|
7
|
+
export { PostgresTableSource } from '../core/ast/table-source';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codec-ids-C5qzBqus.mjs","names":[],"sources":["../src/core/codec-ids.ts"],"sourcesContent":["export {\n SQL_CHAR_CODEC_ID,\n SQL_FLOAT_CODEC_ID,\n SQL_INT_CODEC_ID,\n SQL_TEXT_CODEC_ID,\n SQL_TIMESTAMP_CODEC_ID,\n SQL_VARCHAR_CODEC_ID,\n} from '@prisma-next/sql-relational-core/ast';\nexport const PG_TEXT_CODEC_ID = 'pg/text@1' as const;\nexport const PG_ENUM_CODEC_ID = 'pg/enum@1' as const;\nexport const PG_CHAR_CODEC_ID = 'pg/char@1' as const;\nexport const PG_VARCHAR_CODEC_ID = 'pg/varchar@1' as const;\nexport const PG_INT_CODEC_ID = 'pg/int@1' as const;\nexport const PG_INT2_CODEC_ID = 'pg/int2@1' as const;\nexport const PG_INT4_CODEC_ID = 'pg/int4@1' as const;\nexport const PG_INT8_CODEC_ID = 'pg/int8@1' as const;\nexport const PG_FLOAT_CODEC_ID = 'pg/float@1' as const;\nexport const PG_FLOAT4_CODEC_ID = 'pg/float4@1' as const;\nexport const PG_FLOAT8_CODEC_ID = 'pg/float8@1' as const;\nexport const PG_NUMERIC_CODEC_ID = 'pg/numeric@1' as const;\nexport const PG_BOOL_CODEC_ID = 'pg/bool@1' as const;\nexport const PG_BIT_CODEC_ID = 'pg/bit@1' as const;\nexport const PG_VARBIT_CODEC_ID = 'pg/varbit@1' as const;\nexport const PG_TIMESTAMP_CODEC_ID = 'pg/timestamp@1' as const;\nexport const PG_TIMESTAMPTZ_CODEC_ID = 'pg/timestamptz@1' as const;\nexport const PG_TIME_CODEC_ID = 'pg/time@1' as const;\nexport const PG_TIMETZ_CODEC_ID = 'pg/timetz@1' as const;\nexport const PG_INTERVAL_CODEC_ID = 'pg/interval@1' as const;\nexport const PG_JSON_CODEC_ID = 'pg/json@1' as const;\nexport const PG_JSONB_CODEC_ID = 'pg/jsonb@1' as const;\nexport const PG_BYTEA_CODEC_ID = 'pg/bytea@1' as const;\n"],"mappings":";;AAQA,MAAa,mBAAmB;AAChC,MAAa,mBAAmB;AAChC,MAAa,mBAAmB;AAChC,MAAa,sBAAsB;AACnC,MAAa,kBAAkB;AAC/B,MAAa,mBAAmB;AAChC,MAAa,mBAAmB;AAChC,MAAa,mBAAmB;AAChC,MAAa,oBAAoB;AACjC,MAAa,qBAAqB;AAClC,MAAa,qBAAqB;AAClC,MAAa,sBAAsB;AACnC,MAAa,mBAAmB;AAChC,MAAa,kBAAkB;AAC/B,MAAa,qBAAqB;AAClC,MAAa,wBAAwB;AACrC,MAAa,0BAA0B;AACvC,MAAa,mBAAmB;AAChC,MAAa,qBAAqB;AAClC,MAAa,uBAAuB;AACpC,MAAa,mBAAmB;AAChC,MAAa,oBAAoB;AACjC,MAAa,oBAAoB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codec-ids-DliyCWPY.d.mts","names":[],"sources":["../src/core/codec-ids.ts"],"mappings":";;;cAQa,gBAAA;AAAA,cACA,gBAAA;AAAA,cACA,gBAAA;AAAA,cACA,mBAAA;AAAA,cACA,eAAA;AAAA,cACA,gBAAA;AAAA,cACA,gBAAA;AAAA,cACA,gBAAA;AAAA,cACA,iBAAA;AAAA,cACA,kBAAA;AAAA,cACA,kBAAA;AAAA,cACA,mBAAA;AAAA,cACA,gBAAA;AAAA,cACA,eAAA;AAAA,cACA,kBAAA;AAAA,cACA,qBAAA;AAAA,cACA,uBAAA;AAAA,cACA,gBAAA;AAAA,cACA,kBAAA;AAAA,cACA,oBAAA;AAAA,cACA,gBAAA;AAAA,cACA,iBAAA;AAAA,cACA,iBAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codecs-DuP3d9Au.d.mts","names":[],"sources":["../src/core/codecs.ts"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"descriptor-meta-Uu8QaClr.mjs","names":[],"sources":["../src/core/descriptor-meta.ts"],"sourcesContent":["import type { CodecTypes } from '../exports/codec-types';\nimport {\n postgresAuthoringEntityTypes,\n postgresAuthoringFieldPresets,\n postgresAuthoringTypes,\n} from './authoring';\nimport { postgresTargetDescriptorMetaRuntime } from './descriptor-meta-runtime';\n\nconst postgresTargetDescriptorMetaBase = {\n ...postgresTargetDescriptorMetaRuntime,\n authoring: {\n type: postgresAuthoringTypes,\n field: postgresAuthoringFieldPresets,\n entityTypes: postgresAuthoringEntityTypes,\n },\n} as const;\n\nexport const postgresTargetDescriptorMeta: typeof postgresTargetDescriptorMetaBase & {\n readonly __codecTypes?: CodecTypes;\n} = postgresTargetDescriptorMetaBase;\n"],"mappings":";AAiBA,MAAa,+BAET;CAVF,GAAG;CACH,WAAW;EACT,MAAM;EACN,OAAO;EACP,aAAa;CACf;AAKE"}
|