drizzle-kit 0.20.8 → 0.20.9-03fb33f
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/bin.cjs +663 -693
- package/cli/commands/pgIntrospect.d.ts +2 -0
- package/package.json +4 -3
- package/schemaValidator.d.ts +7 -0
- package/serializer/pgSchema.d.ts +89 -0
- package/serializer/pgSerializer.d.ts +0 -2
- package/serializer/schemaToDrizzle.d.ts +7 -0
- package/serializer/sqliteSerializer.d.ts +0 -2
- package/serializer/studioUtils.d.ts +4 -4
- package/utils-studio.d.mts +2 -2
- package/utils-studio.d.ts +2 -2
- package/utils-studio.js +953 -944
- package/utils-studio.mjs +631 -622
- package/utils.d.ts +2 -0
- package/utils.js +209 -190
package/utils.d.ts
CHANGED
@@ -106,6 +106,7 @@ export declare const statementsForDiffs: (in1: any, in2: any) => Promise<{
|
|
106
106
|
columnsFrom: string[];
|
107
107
|
tableTo: string;
|
108
108
|
columnsTo: string[];
|
109
|
+
schemaTo: string;
|
109
110
|
}>;
|
110
111
|
schema: string;
|
111
112
|
compositePrimaryKeys: Record<string, {
|
@@ -168,6 +169,7 @@ export declare const statementsForDiffs: (in1: any, in2: any) => Promise<{
|
|
168
169
|
columnsFrom: string[];
|
169
170
|
tableTo: string;
|
170
171
|
columnsTo: string[];
|
172
|
+
schemaTo: string;
|
171
173
|
}>;
|
172
174
|
schema: string;
|
173
175
|
compositePrimaryKeys: Record<string, {
|
package/utils.js
CHANGED
@@ -4817,6 +4817,7 @@ var init_pgSchema = __esm({
|
|
4817
4817
|
tableFrom: stringType(),
|
4818
4818
|
columnsFrom: stringType().array(),
|
4819
4819
|
tableTo: stringType(),
|
4820
|
+
schemaTo: stringType(),
|
4820
4821
|
columnsTo: stringType().array(),
|
4821
4822
|
onUpdate: stringType().optional(),
|
4822
4823
|
onDelete: stringType().optional()
|
@@ -4974,7 +4975,7 @@ var init_pgSchema = __esm({
|
|
4974
4975
|
return result;
|
4975
4976
|
},
|
4976
4977
|
squashFK: (fk4) => {
|
4977
|
-
return `${fk4.name};${fk4.tableFrom};${fk4.columnsFrom.join(",")};${fk4.tableTo};${fk4.columnsTo.join(",")};${fk4.onUpdate ?? ""};${fk4.onDelete ?? ""}`;
|
4978
|
+
return `${fk4.name};${fk4.tableFrom};${fk4.columnsFrom.join(",")};${fk4.tableTo};${fk4.columnsTo.join(",")};${fk4.onUpdate ?? ""};${fk4.onDelete ?? ""};${fk4.schemaTo ?? ""}`;
|
4978
4979
|
},
|
4979
4980
|
squashPK: (pk) => {
|
4980
4981
|
return `${pk.columns.join(",")};${pk.name}`;
|
@@ -5002,12 +5003,14 @@ var init_pgSchema = __esm({
|
|
5002
5003
|
tableTo,
|
5003
5004
|
columnsToStr,
|
5004
5005
|
onUpdate,
|
5005
|
-
onDelete
|
5006
|
+
onDelete,
|
5007
|
+
schemaTo
|
5006
5008
|
] = input.split(";");
|
5007
5009
|
const result = fk2.parse({
|
5008
5010
|
name,
|
5009
5011
|
tableFrom,
|
5010
5012
|
columnsFrom: columnsFromStr.split(","),
|
5013
|
+
schemaTo,
|
5011
5014
|
tableTo,
|
5012
5015
|
columnsTo: columnsToStr.split(","),
|
5013
5016
|
onUpdate,
|
@@ -11898,10 +11901,9 @@ var pgSerializer_exports = {};
|
|
11898
11901
|
__export(pgSerializer_exports, {
|
11899
11902
|
fromDatabase: () => fromDatabase2,
|
11900
11903
|
generatePgSnapshot: () => generatePgSnapshot,
|
11901
|
-
indexName: () => indexName2
|
11902
|
-
toDrizzle: () => toDrizzle
|
11904
|
+
indexName: () => indexName2
|
11903
11905
|
});
|
11904
|
-
var import_pg_core2, import_pg_core3, import_drizzle_orm5, dialect4, indexName2, generatePgSnapshot, trimChar, fromDatabase2, columnToDefault, defaultForColumn
|
11906
|
+
var import_pg_core2, import_pg_core3, import_drizzle_orm5, dialect4, indexName2, generatePgSnapshot, trimChar, fromDatabase2, columnToDefault, defaultForColumn;
|
11905
11907
|
var init_pgSerializer = __esm({
|
11906
11908
|
"src/serializer/pgSerializer.ts"() {
|
11907
11909
|
import_pg_core2 = require("drizzle-orm/pg-core");
|
@@ -12039,12 +12041,14 @@ ${withStyle.errorWarning(`We've found duplicated unique constraint names in ${so
|
|
12039
12041
|
const onUpdate = fk4.onUpdate;
|
12040
12042
|
const reference = fk4.reference();
|
12041
12043
|
const tableTo = (0, import_drizzle_orm5.getTableName)(reference.foreignTable);
|
12044
|
+
const schemaTo = (0, import_pg_core3.getTableConfig)(reference.foreignTable).schema;
|
12042
12045
|
const columnsFrom = reference.columns.map((it) => it.name);
|
12043
12046
|
const columnsTo = reference.foreignColumns.map((it) => it.name);
|
12044
12047
|
return {
|
12045
12048
|
name,
|
12046
12049
|
tableFrom,
|
12047
12050
|
tableTo,
|
12051
|
+
schemaTo,
|
12048
12052
|
columnsFrom,
|
12049
12053
|
columnsTo,
|
12050
12054
|
onDelete,
|
@@ -12221,24 +12225,29 @@ ${withStyle.errorWarning(
|
|
12221
12225
|
}
|
12222
12226
|
const tableForeignKeys = await db.query(
|
12223
12227
|
`SELECT
|
12224
|
-
|
12225
|
-
|
12226
|
-
|
12227
|
-
|
12228
|
-
|
12229
|
-
|
12230
|
-
|
12231
|
-
|
12232
|
-
|
12233
|
-
|
12234
|
-
|
12235
|
-
|
12236
|
-
|
12237
|
-
|
12238
|
-
|
12239
|
-
|
12240
|
-
|
12241
|
-
|
12228
|
+
tc.table_schema,
|
12229
|
+
tc.constraint_name,
|
12230
|
+
tc.table_name,
|
12231
|
+
kcu.column_name,
|
12232
|
+
(
|
12233
|
+
SELECT ccu.table_schema
|
12234
|
+
FROM information_schema.constraint_column_usage ccu
|
12235
|
+
WHERE ccu.constraint_name = tc.constraint_name
|
12236
|
+
LIMIT 1
|
12237
|
+
) AS foreign_table_schema,
|
12238
|
+
ccu.table_name AS foreign_table_name,
|
12239
|
+
ccu.column_name AS foreign_column_name,
|
12240
|
+
rc.delete_rule,
|
12241
|
+
rc.update_rule
|
12242
|
+
FROM
|
12243
|
+
information_schema.table_constraints AS tc
|
12244
|
+
JOIN information_schema.key_column_usage AS kcu
|
12245
|
+
ON tc.constraint_name = kcu.constraint_name
|
12246
|
+
AND tc.table_schema = kcu.table_schema
|
12247
|
+
JOIN information_schema.constraint_column_usage AS ccu
|
12248
|
+
ON ccu.constraint_name = tc.constraint_name
|
12249
|
+
JOIN information_schema.referential_constraints AS rc
|
12250
|
+
ON ccu.constraint_name = rc.constraint_name
|
12242
12251
|
WHERE tc.constraint_type = 'FOREIGN KEY' AND tc.table_name='${tableName}' and tc.table_schema='${tableSchema}';`
|
12243
12252
|
);
|
12244
12253
|
foreignKeysCount += tableForeignKeys.length;
|
@@ -12249,6 +12258,7 @@ ${withStyle.errorWarning(
|
|
12249
12258
|
const columnFrom = fk4.column_name;
|
12250
12259
|
const tableTo = fk4.foreign_table_name;
|
12251
12260
|
const columnTo = fk4.foreign_column_name;
|
12261
|
+
const schemaTo = fk4.foreign_table_schema;
|
12252
12262
|
const foreignKeyName = fk4.constraint_name;
|
12253
12263
|
const onUpdate = fk4.update_rule.toLowerCase();
|
12254
12264
|
const onDelete = fk4.delete_rule.toLowerCase();
|
@@ -12260,6 +12270,7 @@ ${withStyle.errorWarning(
|
|
12260
12270
|
name: foreignKeyName,
|
12261
12271
|
tableFrom: tableName,
|
12262
12272
|
tableTo,
|
12273
|
+
schemaTo,
|
12263
12274
|
columnsFrom: [columnFrom],
|
12264
12275
|
columnsTo: [columnTo],
|
12265
12276
|
onDelete,
|
@@ -12531,108 +12542,6 @@ ${withStyle.errorWarning(
|
|
12531
12542
|
}
|
12532
12543
|
}
|
12533
12544
|
};
|
12534
|
-
toDrizzle = (schema4, schemaName) => {
|
12535
|
-
const tables = {};
|
12536
|
-
Object.values(schema4.tables).forEach((t) => {
|
12537
|
-
const columns = {};
|
12538
|
-
Object.values(t.columns).forEach((c) => {
|
12539
|
-
const columnName = c.name;
|
12540
|
-
const type = c.type;
|
12541
|
-
let columnBuilder;
|
12542
|
-
if (type === "bigint") {
|
12543
|
-
columnBuilder = new import_pg_core2.PgBigInt53Builder(columnName);
|
12544
|
-
} else if (type === "bigserial") {
|
12545
|
-
columnBuilder = new import_pg_core2.PgBigSerial53Builder(columnName);
|
12546
|
-
} else if (type === "boolean") {
|
12547
|
-
columnBuilder = new import_pg_core2.PgBooleanBuilder(columnName);
|
12548
|
-
} else if (type === "cidr") {
|
12549
|
-
columnBuilder = new import_pg_core2.PgCidrBuilder(columnName);
|
12550
|
-
} else if (type === "date") {
|
12551
|
-
columnBuilder = new import_pg_core2.PgDateBuilder(columnName);
|
12552
|
-
} else if (type === "double precision") {
|
12553
|
-
columnBuilder = new import_pg_core2.PgDoublePrecisionBuilder(columnName);
|
12554
|
-
} else if (type === "inet") {
|
12555
|
-
columnBuilder = new import_pg_core2.PgInetBuilder(columnName);
|
12556
|
-
} else if (type === "integer") {
|
12557
|
-
columnBuilder = new import_pg_core2.PgIntegerBuilder(columnName);
|
12558
|
-
} else if (type === "interval" || type.startsWith("interval ")) {
|
12559
|
-
columnBuilder = new import_pg_core2.PgIntervalBuilder(columnName, {});
|
12560
|
-
} else if (type === "json") {
|
12561
|
-
columnBuilder = new import_pg_core2.PgJsonBuilder(columnName);
|
12562
|
-
} else if (type === "jsonb") {
|
12563
|
-
columnBuilder = new import_pg_core2.PgJsonbBuilder(columnName);
|
12564
|
-
} else if (type === "macaddr") {
|
12565
|
-
columnBuilder = new import_pg_core2.PgMacaddrBuilder(columnName);
|
12566
|
-
} else if (type === "macaddr8") {
|
12567
|
-
columnBuilder = new import_pg_core2.PgMacaddr8Builder(columnName);
|
12568
|
-
} else if (type === "numeric" || type.startsWith("numeric(")) {
|
12569
|
-
columnBuilder = new import_pg_core2.PgNumericBuilder(columnName);
|
12570
|
-
} else if (type === "real") {
|
12571
|
-
columnBuilder = new import_pg_core2.PgRealBuilder(columnName);
|
12572
|
-
} else if (type === "serial") {
|
12573
|
-
columnBuilder = new import_pg_core2.PgSerialBuilder(columnName);
|
12574
|
-
} else if (type === "smallint") {
|
12575
|
-
columnBuilder = new import_pg_core2.PgSmallIntBuilder(columnName);
|
12576
|
-
} else if (type === "smallserial") {
|
12577
|
-
columnBuilder = new import_pg_core2.PgSmallSerialBuilder(columnName);
|
12578
|
-
} else if (type === "text") {
|
12579
|
-
columnBuilder = new import_pg_core2.PgTextBuilder(columnName, {});
|
12580
|
-
} else if (type === "time" || type.startsWith("time(") || type === "time with time zone") {
|
12581
|
-
columnBuilder = new import_pg_core2.PgTimeBuilder(columnName, false, void 0);
|
12582
|
-
} else if (type === "timestamp" || type.startsWith("timestamp(") || type === "timestamp with time zone") {
|
12583
|
-
columnBuilder = new import_pg_core2.PgTimestampBuilder(columnName, false, void 0);
|
12584
|
-
} else if (type === "uuid") {
|
12585
|
-
columnBuilder = new import_pg_core2.PgUUIDBuilder(columnName);
|
12586
|
-
} else if (type === "varchar" || type.startsWith("varchar(")) {
|
12587
|
-
columnBuilder = new import_pg_core2.PgVarcharBuilder(columnName, {});
|
12588
|
-
} else if (type === "char" || type.startsWith("char(")) {
|
12589
|
-
columnBuilder = new import_pg_core2.PgCharBuilder(columnName, {});
|
12590
|
-
} else {
|
12591
|
-
columnBuilder = (0, import_pg_core2.customType)({
|
12592
|
-
dataType() {
|
12593
|
-
return type;
|
12594
|
-
}
|
12595
|
-
})(columnName);
|
12596
|
-
}
|
12597
|
-
if (c.notNull) {
|
12598
|
-
columnBuilder = columnBuilder.notNull();
|
12599
|
-
}
|
12600
|
-
if (c.default) {
|
12601
|
-
columnBuilder = columnBuilder.default(c.default);
|
12602
|
-
}
|
12603
|
-
if (c.primaryKey) {
|
12604
|
-
columnBuilder = columnBuilder.primaryKey();
|
12605
|
-
}
|
12606
|
-
columns[columnName] = columnBuilder;
|
12607
|
-
});
|
12608
|
-
if (schemaName === "public") {
|
12609
|
-
tables[t.name] = (0, import_pg_core2.pgTable)(t.name, columns, (cb) => {
|
12610
|
-
const res = {};
|
12611
|
-
Object.values(t.compositePrimaryKeys).forEach((cpk) => {
|
12612
|
-
const gh = cpk.columns.map((c) => cb[c]);
|
12613
|
-
res[cpk.name] = new import_pg_core2.PrimaryKeyBuilder(
|
12614
|
-
gh,
|
12615
|
-
cpk.name
|
12616
|
-
);
|
12617
|
-
});
|
12618
|
-
return res;
|
12619
|
-
});
|
12620
|
-
} else {
|
12621
|
-
tables[t.name] = (0, import_pg_core2.pgSchema)(schemaName).table(t.name, columns, (cb) => {
|
12622
|
-
const res = {};
|
12623
|
-
Object.values(t.compositePrimaryKeys).forEach((cpk) => {
|
12624
|
-
const gh = cpk.columns.map((c) => cb[c]);
|
12625
|
-
res[cpk.name] = new import_pg_core2.PrimaryKeyBuilder(
|
12626
|
-
gh,
|
12627
|
-
cpk.name
|
12628
|
-
);
|
12629
|
-
});
|
12630
|
-
return res;
|
12631
|
-
});
|
12632
|
-
}
|
12633
|
-
});
|
12634
|
-
return tables;
|
12635
|
-
};
|
12636
12545
|
}
|
12637
12546
|
});
|
12638
12547
|
|
@@ -12671,8 +12580,7 @@ var init_sqliteImports = __esm({
|
|
12671
12580
|
var sqliteSerializer_exports = {};
|
12672
12581
|
__export(sqliteSerializer_exports, {
|
12673
12582
|
fromDatabase: () => fromDatabase3,
|
12674
|
-
generateSqliteSnapshot: () => generateSqliteSnapshot
|
12675
|
-
toDrizzle: () => toDrizzle2
|
12583
|
+
generateSqliteSnapshot: () => generateSqliteSnapshot
|
12676
12584
|
});
|
12677
12585
|
function mapSqlToSqliteType(sqlType) {
|
12678
12586
|
if ([
|
@@ -12709,7 +12617,7 @@ function mapSqlToSqliteType(sqlType) {
|
|
12709
12617
|
return "numeric";
|
12710
12618
|
}
|
12711
12619
|
}
|
12712
|
-
var import_drizzle_orm7, import_sqlite_core2, dialect5, generateSqliteSnapshot, fromDatabase3
|
12620
|
+
var import_drizzle_orm7, import_sqlite_core2, dialect5, generateSqliteSnapshot, fromDatabase3;
|
12713
12621
|
var init_sqliteSerializer = __esm({
|
12714
12622
|
"src/serializer/sqliteSerializer.ts"() {
|
12715
12623
|
import_drizzle_orm7 = require("drizzle-orm");
|
@@ -13077,50 +12985,6 @@ WHERE
|
|
13077
12985
|
}
|
13078
12986
|
};
|
13079
12987
|
};
|
13080
|
-
toDrizzle2 = (schema4) => {
|
13081
|
-
const tables = {};
|
13082
|
-
Object.values(schema4.tables).forEach((t) => {
|
13083
|
-
const columns = {};
|
13084
|
-
Object.values(t.columns).forEach((c) => {
|
13085
|
-
const columnName = c.name;
|
13086
|
-
const type = c.type;
|
13087
|
-
let columnBuilder;
|
13088
|
-
if (type === "integer") {
|
13089
|
-
columnBuilder = new import_sqlite_core2.SQLiteIntegerBuilder(columnName);
|
13090
|
-
} else if (type === "text") {
|
13091
|
-
columnBuilder = new import_sqlite_core2.SQLiteTextBuilder(columnName, {});
|
13092
|
-
} else if (type === "blob") {
|
13093
|
-
columnBuilder = new import_sqlite_core2.SQLiteBlobBufferBuilder(columnName);
|
13094
|
-
} else if (type === "real") {
|
13095
|
-
columnBuilder = new import_sqlite_core2.SQLiteRealBuilder(columnName);
|
13096
|
-
} else {
|
13097
|
-
columnBuilder = new import_sqlite_core2.SQLiteNumericBuilder(columnName);
|
13098
|
-
}
|
13099
|
-
if (c.notNull) {
|
13100
|
-
columnBuilder = columnBuilder.notNull();
|
13101
|
-
}
|
13102
|
-
if (c.default) {
|
13103
|
-
columnBuilder = columnBuilder.default(c.default);
|
13104
|
-
}
|
13105
|
-
if (c.primaryKey) {
|
13106
|
-
columnBuilder = columnBuilder.primaryKey();
|
13107
|
-
}
|
13108
|
-
columns[columnName] = columnBuilder;
|
13109
|
-
});
|
13110
|
-
tables[t.name] = (0, import_sqlite_core2.sqliteTable)(t.name, columns, (cb) => {
|
13111
|
-
const res = {};
|
13112
|
-
Object.values(t.compositePrimaryKeys).forEach((cpk) => {
|
13113
|
-
const gh = cpk.columns.map((c) => cb[c]);
|
13114
|
-
res[cpk.name] = new import_sqlite_core2.PrimaryKeyBuilder(
|
13115
|
-
gh,
|
13116
|
-
cpk.name
|
13117
|
-
);
|
13118
|
-
});
|
13119
|
-
return res;
|
13120
|
-
});
|
13121
|
-
});
|
13122
|
-
return tables;
|
13123
|
-
};
|
13124
12988
|
}
|
13125
12989
|
});
|
13126
12990
|
|
@@ -16031,14 +15895,15 @@ ${BREAKPOINT}ALTER TABLE ${tableNameWithSchema} ADD CONSTRAINT ${statement.newCo
|
|
16031
15895
|
columnsFrom,
|
16032
15896
|
columnsTo,
|
16033
15897
|
onDelete,
|
16034
|
-
onUpdate
|
15898
|
+
onUpdate,
|
15899
|
+
schemaTo
|
16035
15900
|
} = PgSquasher.unsquashFK(statement.data);
|
16036
15901
|
const onDeleteStatement = onDelete ? ` ON DELETE ${onDelete}` : "";
|
16037
15902
|
const onUpdateStatement = onUpdate ? ` ON UPDATE ${onUpdate}` : "";
|
16038
15903
|
const fromColumnsString = columnsFrom.map((it) => `"${it}"`).join(",");
|
16039
15904
|
const toColumnsString = columnsTo.map((it) => `"${it}"`).join(",");
|
16040
15905
|
const tableNameWithSchema = statement.schema ? `"${statement.schema}"."${tableFrom}"` : `"${tableFrom}"`;
|
16041
|
-
const tableToNameWithSchema = statement.schema ? `"${
|
15906
|
+
const tableToNameWithSchema = statement.schema ? `"${schemaTo}"."${tableTo}"` : `"${tableTo}"`;
|
16042
15907
|
const alterStatement = `ALTER TABLE ${tableNameWithSchema} ADD CONSTRAINT "${name}" FOREIGN KEY (${fromColumnsString}) REFERENCES ${tableToNameWithSchema}(${toColumnsString})${onDeleteStatement}${onUpdateStatement}`;
|
16043
15908
|
let sql2 = "DO $$ BEGIN\n";
|
16044
15909
|
sql2 += " " + alterStatement + ";\n";
|
@@ -18095,7 +17960,7 @@ var init_introspect_pg = __esm({
|
|
18095
17960
|
const schemaStatements = Object.entries(schemas).map((it) => {
|
18096
17961
|
return `export const ${it[1]} = pgSchema("${it[0]}");
|
18097
17962
|
`;
|
18098
|
-
}).join();
|
17963
|
+
}).join("");
|
18099
17964
|
const tableStatements = Object.values(schema4.tables).map((table4) => {
|
18100
17965
|
const tableSchema = schemas[table4.schema];
|
18101
17966
|
const func = tableSchema ? `${tableSchema}.table` : "pgTable";
|
@@ -24908,6 +24773,161 @@ var init_sqliteIntrospect = __esm({
|
|
24908
24773
|
}
|
24909
24774
|
});
|
24910
24775
|
|
24776
|
+
// src/serializer/schemaToDrizzle.ts
|
24777
|
+
var import_pg_core4, import_sqlite_core3, pgSchemaToDrizzle, sqliteSchemaToDrizzle;
|
24778
|
+
var init_schemaToDrizzle = __esm({
|
24779
|
+
"src/serializer/schemaToDrizzle.ts"() {
|
24780
|
+
import_pg_core4 = require("drizzle-orm/pg-core");
|
24781
|
+
import_sqlite_core3 = require("drizzle-orm/sqlite-core");
|
24782
|
+
pgSchemaToDrizzle = (schema4, schemaName) => {
|
24783
|
+
const tables = {};
|
24784
|
+
Object.values(schema4.tables).forEach((t) => {
|
24785
|
+
const columns = {};
|
24786
|
+
Object.values(t.columns).forEach((c) => {
|
24787
|
+
const columnName = c.name;
|
24788
|
+
const type = c.type;
|
24789
|
+
let columnBuilder;
|
24790
|
+
if (type === "bigint") {
|
24791
|
+
columnBuilder = new import_pg_core4.PgBigInt53Builder(columnName);
|
24792
|
+
} else if (type === "bigserial") {
|
24793
|
+
columnBuilder = new import_pg_core4.PgBigSerial53Builder(columnName);
|
24794
|
+
} else if (type === "boolean") {
|
24795
|
+
columnBuilder = new import_pg_core4.PgBooleanBuilder(columnName);
|
24796
|
+
} else if (type === "cidr") {
|
24797
|
+
columnBuilder = new import_pg_core4.PgCidrBuilder(columnName);
|
24798
|
+
} else if (type === "date") {
|
24799
|
+
columnBuilder = new import_pg_core4.PgDateBuilder(columnName);
|
24800
|
+
} else if (type === "double precision") {
|
24801
|
+
columnBuilder = new import_pg_core4.PgDoublePrecisionBuilder(columnName);
|
24802
|
+
} else if (type === "inet") {
|
24803
|
+
columnBuilder = new import_pg_core4.PgInetBuilder(columnName);
|
24804
|
+
} else if (type === "integer") {
|
24805
|
+
columnBuilder = new import_pg_core4.PgIntegerBuilder(columnName);
|
24806
|
+
} else if (type === "interval" || type.startsWith("interval ")) {
|
24807
|
+
columnBuilder = new import_pg_core4.PgIntervalBuilder(columnName, {});
|
24808
|
+
} else if (type === "json") {
|
24809
|
+
columnBuilder = new import_pg_core4.PgJsonBuilder(columnName);
|
24810
|
+
} else if (type === "jsonb") {
|
24811
|
+
columnBuilder = new import_pg_core4.PgJsonbBuilder(columnName);
|
24812
|
+
} else if (type === "macaddr") {
|
24813
|
+
columnBuilder = new import_pg_core4.PgMacaddrBuilder(columnName);
|
24814
|
+
} else if (type === "macaddr8") {
|
24815
|
+
columnBuilder = new import_pg_core4.PgMacaddr8Builder(columnName);
|
24816
|
+
} else if (type === "numeric" || type.startsWith("numeric(")) {
|
24817
|
+
columnBuilder = new import_pg_core4.PgNumericBuilder(columnName);
|
24818
|
+
} else if (type === "real") {
|
24819
|
+
columnBuilder = new import_pg_core4.PgRealBuilder(columnName);
|
24820
|
+
} else if (type === "serial") {
|
24821
|
+
columnBuilder = new import_pg_core4.PgSerialBuilder(columnName);
|
24822
|
+
} else if (type === "smallint") {
|
24823
|
+
columnBuilder = new import_pg_core4.PgSmallIntBuilder(columnName);
|
24824
|
+
} else if (type === "smallserial") {
|
24825
|
+
columnBuilder = new import_pg_core4.PgSmallSerialBuilder(columnName);
|
24826
|
+
} else if (type === "text") {
|
24827
|
+
columnBuilder = new import_pg_core4.PgTextBuilder(columnName, {});
|
24828
|
+
} else if (type === "time" || type.startsWith("time(") || type === "time with time zone") {
|
24829
|
+
columnBuilder = new import_pg_core4.PgTimeBuilder(columnName, false, void 0);
|
24830
|
+
} else if (type === "timestamp" || type.startsWith("timestamp(") || type === "timestamp with time zone") {
|
24831
|
+
columnBuilder = new import_pg_core4.PgTimestampBuilder(columnName, false, void 0);
|
24832
|
+
} else if (type === "uuid") {
|
24833
|
+
columnBuilder = new import_pg_core4.PgUUIDBuilder(columnName);
|
24834
|
+
} else if (type === "varchar" || type.startsWith("varchar(")) {
|
24835
|
+
columnBuilder = new import_pg_core4.PgVarcharBuilder(columnName, {});
|
24836
|
+
} else if (type === "char" || type.startsWith("char(")) {
|
24837
|
+
columnBuilder = new import_pg_core4.PgCharBuilder(columnName, {});
|
24838
|
+
} else {
|
24839
|
+
columnBuilder = (0, import_pg_core4.customType)({
|
24840
|
+
dataType() {
|
24841
|
+
return type;
|
24842
|
+
}
|
24843
|
+
})(columnName);
|
24844
|
+
}
|
24845
|
+
if (c.notNull) {
|
24846
|
+
columnBuilder = columnBuilder.notNull();
|
24847
|
+
}
|
24848
|
+
if (c.default) {
|
24849
|
+
columnBuilder = columnBuilder.default(c.default);
|
24850
|
+
}
|
24851
|
+
if (c.primaryKey) {
|
24852
|
+
columnBuilder = columnBuilder.primaryKey();
|
24853
|
+
}
|
24854
|
+
columns[columnName] = columnBuilder;
|
24855
|
+
});
|
24856
|
+
if (schemaName === "public") {
|
24857
|
+
tables[t.name] = (0, import_pg_core4.pgTable)(t.name, columns, (cb) => {
|
24858
|
+
const res = {};
|
24859
|
+
Object.values(t.compositePrimaryKeys).forEach((cpk) => {
|
24860
|
+
const gh = cpk.columns.map((c) => cb[c]);
|
24861
|
+
res[cpk.name] = new import_pg_core4.PrimaryKeyBuilder(
|
24862
|
+
gh,
|
24863
|
+
cpk.name
|
24864
|
+
);
|
24865
|
+
});
|
24866
|
+
return res;
|
24867
|
+
});
|
24868
|
+
} else {
|
24869
|
+
tables[t.name] = (0, import_pg_core4.pgSchema)(schemaName).table(t.name, columns, (cb) => {
|
24870
|
+
const res = {};
|
24871
|
+
Object.values(t.compositePrimaryKeys).forEach((cpk) => {
|
24872
|
+
const gh = cpk.columns.map((c) => cb[c]);
|
24873
|
+
res[cpk.name] = new import_pg_core4.PrimaryKeyBuilder(
|
24874
|
+
gh,
|
24875
|
+
cpk.name
|
24876
|
+
);
|
24877
|
+
});
|
24878
|
+
return res;
|
24879
|
+
});
|
24880
|
+
}
|
24881
|
+
});
|
24882
|
+
return tables;
|
24883
|
+
};
|
24884
|
+
sqliteSchemaToDrizzle = (schema4) => {
|
24885
|
+
const tables = {};
|
24886
|
+
Object.values(schema4.tables).forEach((t) => {
|
24887
|
+
const columns = {};
|
24888
|
+
Object.values(t.columns).forEach((c) => {
|
24889
|
+
const columnName = c.name;
|
24890
|
+
const type = c.type;
|
24891
|
+
let columnBuilder;
|
24892
|
+
if (type === "integer") {
|
24893
|
+
columnBuilder = new import_sqlite_core3.SQLiteIntegerBuilder(columnName);
|
24894
|
+
} else if (type === "text") {
|
24895
|
+
columnBuilder = new import_sqlite_core3.SQLiteTextBuilder(columnName, {});
|
24896
|
+
} else if (type === "blob") {
|
24897
|
+
columnBuilder = new import_sqlite_core3.SQLiteBlobBufferBuilder(columnName);
|
24898
|
+
} else if (type === "real") {
|
24899
|
+
columnBuilder = new import_sqlite_core3.SQLiteRealBuilder(columnName);
|
24900
|
+
} else {
|
24901
|
+
columnBuilder = new import_sqlite_core3.SQLiteNumericBuilder(columnName);
|
24902
|
+
}
|
24903
|
+
if (c.notNull) {
|
24904
|
+
columnBuilder = columnBuilder.notNull();
|
24905
|
+
}
|
24906
|
+
if (c.default) {
|
24907
|
+
columnBuilder = columnBuilder.default(c.default);
|
24908
|
+
}
|
24909
|
+
if (c.primaryKey) {
|
24910
|
+
columnBuilder = columnBuilder.primaryKey();
|
24911
|
+
}
|
24912
|
+
columns[columnName] = columnBuilder;
|
24913
|
+
});
|
24914
|
+
tables[t.name] = (0, import_sqlite_core3.sqliteTable)(t.name, columns, (cb) => {
|
24915
|
+
const res = {};
|
24916
|
+
Object.values(t.compositePrimaryKeys).forEach((cpk) => {
|
24917
|
+
const gh = cpk.columns.map((c) => cb[c]);
|
24918
|
+
res[cpk.name] = new import_sqlite_core3.PrimaryKeyBuilder(
|
24919
|
+
gh,
|
24920
|
+
cpk.name
|
24921
|
+
);
|
24922
|
+
});
|
24923
|
+
return res;
|
24924
|
+
});
|
24925
|
+
});
|
24926
|
+
return tables;
|
24927
|
+
};
|
24928
|
+
}
|
24929
|
+
});
|
24930
|
+
|
24911
24931
|
// node_modules/.pnpm/semver@7.5.4/node_modules/semver/internal/constants.js
|
24912
24932
|
var require_constants = __commonJS({
|
24913
24933
|
"node_modules/.pnpm/semver@7.5.4/node_modules/semver/internal/constants.js"(exports, module2) {
|
@@ -43251,15 +43271,15 @@ var require_promise = __commonJS({
|
|
43251
43271
|
});
|
43252
43272
|
|
43253
43273
|
// src/orm-extenstions/d1-driver/session.ts
|
43254
|
-
var import_drizzle_orm10, import_drizzle_orm11, import_drizzle_orm12,
|
43274
|
+
var import_drizzle_orm10, import_drizzle_orm11, import_drizzle_orm12, import_sqlite_core4, import_drizzle_orm13, _a, SQLiteWranglerD1Session, _a2, PreparedQuery;
|
43255
43275
|
var init_session = __esm({
|
43256
43276
|
"src/orm-extenstions/d1-driver/session.ts"() {
|
43257
43277
|
import_drizzle_orm10 = require("drizzle-orm");
|
43258
43278
|
import_drizzle_orm11 = require("drizzle-orm");
|
43259
43279
|
import_drizzle_orm12 = require("drizzle-orm");
|
43260
|
-
|
43280
|
+
import_sqlite_core4 = require("drizzle-orm/sqlite-core");
|
43261
43281
|
import_drizzle_orm13 = require("drizzle-orm");
|
43262
|
-
SQLiteWranglerD1Session = class extends
|
43282
|
+
SQLiteWranglerD1Session = class extends import_sqlite_core4.SQLiteSession {
|
43263
43283
|
constructor(client, configPath, dbName, dialect6, schema4, options = {}) {
|
43264
43284
|
super(dialect6);
|
43265
43285
|
this.client = client;
|
@@ -43288,7 +43308,7 @@ var init_session = __esm({
|
|
43288
43308
|
};
|
43289
43309
|
_a = import_drizzle_orm10.entityKind;
|
43290
43310
|
SQLiteWranglerD1Session[_a] = "SQLiteD1Session";
|
43291
|
-
PreparedQuery = class extends
|
43311
|
+
PreparedQuery = class extends import_sqlite_core4.SQLitePreparedQuery {
|
43292
43312
|
constructor(stmt, configPath, dbName, queryString, params, logger, fields, executeMethod, customResultMapper) {
|
43293
43313
|
super("async", executeMethod, {
|
43294
43314
|
sql: queryString,
|
@@ -43413,20 +43433,20 @@ function drizzle(client, configPath, dbName, config = {}) {
|
|
43413
43433
|
const session = new SQLiteWranglerD1Session(client, configPath, dbName, dialect6, schema4, {
|
43414
43434
|
logger
|
43415
43435
|
});
|
43416
|
-
return new
|
43436
|
+
return new import_sqlite_core5.BaseSQLiteDatabase(
|
43417
43437
|
"async",
|
43418
43438
|
dialect6,
|
43419
43439
|
session,
|
43420
43440
|
schema4
|
43421
43441
|
);
|
43422
43442
|
}
|
43423
|
-
var import_drizzle_orm14,
|
43443
|
+
var import_drizzle_orm14, import_sqlite_core5, WranglerDialect;
|
43424
43444
|
var init_driver = __esm({
|
43425
43445
|
"src/orm-extenstions/d1-driver/driver.ts"() {
|
43426
43446
|
import_drizzle_orm14 = require("drizzle-orm");
|
43427
|
-
|
43447
|
+
import_sqlite_core5 = require("drizzle-orm/sqlite-core");
|
43428
43448
|
init_session();
|
43429
|
-
WranglerDialect = class extends
|
43449
|
+
WranglerDialect = class extends import_sqlite_core5.SQLiteAsyncDialect {
|
43430
43450
|
sqlToQuery(sql2) {
|
43431
43451
|
return sql2.toQuery({
|
43432
43452
|
escapeName: this.escapeName,
|
@@ -58742,13 +58762,13 @@ var init_wrangler_client = __esm({
|
|
58742
58762
|
});
|
58743
58763
|
|
58744
58764
|
// src/serializer/studioUtils.ts
|
58745
|
-
var import_drizzle_orm15, import_mysql_core4,
|
58765
|
+
var import_drizzle_orm15, import_mysql_core4, import_pg_core5, import_sqlite_core6, drizzleDb;
|
58746
58766
|
var init_studioUtils = __esm({
|
58747
58767
|
"src/serializer/studioUtils.ts"() {
|
58748
58768
|
import_drizzle_orm15 = require("drizzle-orm");
|
58749
58769
|
import_mysql_core4 = require("drizzle-orm/mysql-core");
|
58750
|
-
|
58751
|
-
|
58770
|
+
import_pg_core5 = require("drizzle-orm/pg-core");
|
58771
|
+
import_sqlite_core6 = require("drizzle-orm/sqlite-core");
|
58752
58772
|
init_utils();
|
58753
58773
|
init_utils3();
|
58754
58774
|
init_global();
|
@@ -58857,8 +58877,7 @@ var init_utils5 = __esm({
|
|
58857
58877
|
init_pgIntrospect();
|
58858
58878
|
init_pgPushUtils();
|
58859
58879
|
init_sqliteIntrospect();
|
58860
|
-
|
58861
|
-
init_pgSerializer();
|
58880
|
+
init_schemaToDrizzle();
|
58862
58881
|
init_studioUtils();
|
58863
58882
|
init_pgConnect();
|
58864
58883
|
assertV1OutFolder = (out, dialect6) => {
|
@@ -59177,7 +59196,7 @@ var init_utils5 = __esm({
|
|
59177
59196
|
preparedConnection.client,
|
59178
59197
|
[]
|
59179
59198
|
);
|
59180
|
-
const models =
|
59199
|
+
const models = sqliteSchemaToDrizzle(schema4);
|
59181
59200
|
const drizzleDbInstance = await drizzleDb(
|
59182
59201
|
connection,
|
59183
59202
|
{ sqliteSchema: models },
|
@@ -59202,7 +59221,7 @@ var init_utils5 = __esm({
|
|
59202
59221
|
[],
|
59203
59222
|
[schemaName]
|
59204
59223
|
);
|
59205
|
-
const models =
|
59224
|
+
const models = pgSchemaToDrizzle(schema4, schemaName);
|
59206
59225
|
response[schemaName] = await drizzleDb(
|
59207
59226
|
// @ts-ignore I don't know how to fix it yet. But will find a way
|
59208
59227
|
connection,
|