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/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, toDrizzle;
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
- tc.table_schema,
12225
- tc.constraint_name,
12226
- tc.table_name,
12227
- kcu.column_name,
12228
- ccu.table_schema AS foreign_table_schema,
12229
- ccu.table_name AS foreign_table_name,
12230
- ccu.column_name AS foreign_column_name,
12231
- rc.delete_rule, rc.update_rule
12232
- FROM
12233
- information_schema.table_constraints AS tc
12234
- JOIN information_schema.key_column_usage AS kcu
12235
- ON tc.constraint_name = kcu.constraint_name
12236
- AND tc.table_schema = kcu.table_schema
12237
- JOIN information_schema.constraint_column_usage AS ccu
12238
- ON ccu.constraint_name = tc.constraint_name
12239
- AND ccu.table_schema = tc.table_schema
12240
- JOIN information_schema.referential_constraints AS rc
12241
- ON ccu.constraint_name = rc.constraint_name
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, toDrizzle2;
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 ? `"${statement.schema}"."${tableTo}"` : `"${tableTo}"`;
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, import_sqlite_core3, import_drizzle_orm13, _a, SQLiteWranglerD1Session, _a2, PreparedQuery;
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
- import_sqlite_core3 = require("drizzle-orm/sqlite-core");
43280
+ import_sqlite_core4 = require("drizzle-orm/sqlite-core");
43261
43281
  import_drizzle_orm13 = require("drizzle-orm");
43262
- SQLiteWranglerD1Session = class extends import_sqlite_core3.SQLiteSession {
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 import_sqlite_core3.SQLitePreparedQuery {
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 import_sqlite_core4.BaseSQLiteDatabase(
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, import_sqlite_core4, WranglerDialect;
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
- import_sqlite_core4 = require("drizzle-orm/sqlite-core");
43447
+ import_sqlite_core5 = require("drizzle-orm/sqlite-core");
43428
43448
  init_session();
43429
- WranglerDialect = class extends import_sqlite_core4.SQLiteAsyncDialect {
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, import_pg_core4, import_sqlite_core5, drizzleDb;
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
- import_pg_core4 = require("drizzle-orm/pg-core");
58751
- import_sqlite_core5 = require("drizzle-orm/sqlite-core");
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
- init_sqliteSerializer();
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 = toDrizzle2(schema4);
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 = toDrizzle(schema4, schemaName);
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,