drizzle-kit 0.21.1 → 0.21.2-3abb478
Sign up to get free protection for your applications and to get access to all the features.
- package/bin.cjs +4697 -3858
- package/package.json +3 -3
- package/payload.d.mts +96 -10
- package/payload.d.ts +96 -10
- package/payload.js +1585 -1150
- package/payload.mjs +1585 -1150
- package/utils-studio.js +167 -23
- package/utils-studio.mjs +167 -23
- package/utils.js +89 -8
- package/utils.mjs +89 -8
package/utils-studio.js
CHANGED
@@ -569,7 +569,7 @@ var init_global = __esm({
|
|
569
569
|
"src/global.ts"() {
|
570
570
|
"use strict";
|
571
571
|
originUUID = "00000000-0000-0000-0000-000000000000";
|
572
|
-
snapshotVersion = "
|
572
|
+
snapshotVersion = "7";
|
573
573
|
}
|
574
574
|
});
|
575
575
|
|
@@ -4498,7 +4498,7 @@ var init_mysqlSchema = __esm({
|
|
4498
4498
|
});
|
4499
4499
|
|
4500
4500
|
// src/serializer/pgSchema.ts
|
4501
|
-
var indexV2, columnV2, tableV2, enumSchemaV1, enumSchema, pgSchemaV2, references, columnV1, tableV1, pgSchemaV1, index2, fk2, column2, tableV32, compositePK2, uniqueConstraint2, tableV42, table2, schemaHash2, kitInternals2, pgSchemaInternalV3, pgSchemaInternalV4, pgSchemaInternalV5, pgSchemaExternal, pgSchemaInternal, tableSquashed2, tableSquashedV42, pgSchemaSquashedV4, pgSchemaSquashed, pgSchemaV3, pgSchemaV4, pgSchemaV5, pgSchema2, backwardCompatiblePgSchema, dryPg;
|
4501
|
+
var indexV2, columnV2, tableV2, enumSchemaV1, enumSchema, pgSchemaV2, references, columnV1, tableV1, pgSchemaV1, indexColumn, index2, indexV4, indexV5, indexV6, fk2, column2, tableV32, compositePK2, uniqueConstraint2, tableV42, tableV6, tableV5, table2, schemaHash2, kitInternals2, pgSchemaInternalV3, pgSchemaInternalV4, pgSchemaInternalV5, pgSchemaInternalV6, pgSchemaExternal, pgSchemaInternal, tableSquashed2, tableSquashedV42, pgSchemaSquashedV4, pgSchemaSquashedV6, pgSchemaSquashed, pgSchemaV3, pgSchemaV4, pgSchemaV5, pgSchemaV6, pgSchema2, backwardCompatiblePgSchema, dryPg;
|
4502
4502
|
var init_pgSchema = __esm({
|
4503
4503
|
"src/serializer/pgSchema.ts"() {
|
4504
4504
|
"use strict";
|
@@ -4566,10 +4566,48 @@ var init_pgSchema = __esm({
|
|
4566
4566
|
tables: recordType(stringType(), tableV1),
|
4567
4567
|
enums: recordType(stringType(), enumSchemaV1)
|
4568
4568
|
}).strict();
|
4569
|
+
indexColumn = objectType({
|
4570
|
+
expression: stringType(),
|
4571
|
+
isExpression: booleanType(),
|
4572
|
+
asc: booleanType(),
|
4573
|
+
nulls: stringType().optional(),
|
4574
|
+
opclass: stringType().optional()
|
4575
|
+
});
|
4569
4576
|
index2 = objectType({
|
4577
|
+
name: stringType(),
|
4578
|
+
columns: indexColumn.array(),
|
4579
|
+
isUnique: booleanType(),
|
4580
|
+
with: recordType(stringType(), anyType()).optional(),
|
4581
|
+
method: stringType().default("btree"),
|
4582
|
+
where: stringType().optional(),
|
4583
|
+
concurrently: booleanType().default(false)
|
4584
|
+
}).strict();
|
4585
|
+
indexV4 = objectType({
|
4570
4586
|
name: stringType(),
|
4571
4587
|
columns: stringType().array(),
|
4572
|
-
isUnique: booleanType()
|
4588
|
+
isUnique: booleanType(),
|
4589
|
+
with: recordType(stringType(), stringType()).optional(),
|
4590
|
+
method: stringType().default("btree"),
|
4591
|
+
where: stringType().optional(),
|
4592
|
+
concurrently: booleanType().default(false)
|
4593
|
+
}).strict();
|
4594
|
+
indexV5 = objectType({
|
4595
|
+
name: stringType(),
|
4596
|
+
columns: stringType().array(),
|
4597
|
+
isUnique: booleanType(),
|
4598
|
+
with: recordType(stringType(), stringType()).optional(),
|
4599
|
+
method: stringType().default("btree"),
|
4600
|
+
where: stringType().optional(),
|
4601
|
+
concurrently: booleanType().default(false)
|
4602
|
+
}).strict();
|
4603
|
+
indexV6 = objectType({
|
4604
|
+
name: stringType(),
|
4605
|
+
columns: stringType().array(),
|
4606
|
+
isUnique: booleanType(),
|
4607
|
+
with: recordType(stringType(), stringType()).optional(),
|
4608
|
+
method: stringType().default("btree"),
|
4609
|
+
where: stringType().optional(),
|
4610
|
+
concurrently: booleanType().default(false)
|
4573
4611
|
}).strict();
|
4574
4612
|
fk2 = objectType({
|
4575
4613
|
name: stringType(),
|
@@ -4611,9 +4649,27 @@ var init_pgSchema = __esm({
|
|
4611
4649
|
name: stringType(),
|
4612
4650
|
schema: stringType(),
|
4613
4651
|
columns: recordType(stringType(), column2),
|
4614
|
-
indexes: recordType(stringType(),
|
4652
|
+
indexes: recordType(stringType(), indexV4),
|
4615
4653
|
foreignKeys: recordType(stringType(), fk2)
|
4616
4654
|
}).strict();
|
4655
|
+
tableV6 = objectType({
|
4656
|
+
name: stringType(),
|
4657
|
+
schema: stringType(),
|
4658
|
+
columns: recordType(stringType(), column2),
|
4659
|
+
indexes: recordType(stringType(), indexV6),
|
4660
|
+
foreignKeys: recordType(stringType(), fk2),
|
4661
|
+
compositePrimaryKeys: recordType(stringType(), compositePK2),
|
4662
|
+
uniqueConstraints: recordType(stringType(), uniqueConstraint2).default({})
|
4663
|
+
}).strict();
|
4664
|
+
tableV5 = objectType({
|
4665
|
+
name: stringType(),
|
4666
|
+
schema: stringType(),
|
4667
|
+
columns: recordType(stringType(), column2),
|
4668
|
+
indexes: recordType(stringType(), indexV5),
|
4669
|
+
foreignKeys: recordType(stringType(), fk2),
|
4670
|
+
compositePrimaryKeys: recordType(stringType(), compositePK2),
|
4671
|
+
uniqueConstraints: recordType(stringType(), uniqueConstraint2).default({})
|
4672
|
+
}).strict();
|
4617
4673
|
table2 = objectType({
|
4618
4674
|
name: stringType(),
|
4619
4675
|
schema: stringType(),
|
@@ -4658,7 +4714,7 @@ var init_pgSchema = __esm({
|
|
4658
4714
|
pgSchemaInternalV5 = objectType({
|
4659
4715
|
version: literalType("5"),
|
4660
4716
|
dialect: literalType("pg"),
|
4661
|
-
tables: recordType(stringType(),
|
4717
|
+
tables: recordType(stringType(), tableV5),
|
4662
4718
|
enums: recordType(stringType(), enumSchemaV1),
|
4663
4719
|
schemas: recordType(stringType(), stringType()),
|
4664
4720
|
_meta: objectType({
|
@@ -4668,6 +4724,19 @@ var init_pgSchema = __esm({
|
|
4668
4724
|
}),
|
4669
4725
|
internal: kitInternals2
|
4670
4726
|
}).strict();
|
4727
|
+
pgSchemaInternalV6 = objectType({
|
4728
|
+
version: literalType("6"),
|
4729
|
+
dialect: literalType("postgresql"),
|
4730
|
+
tables: recordType(stringType(), tableV6),
|
4731
|
+
enums: recordType(stringType(), enumSchema),
|
4732
|
+
schemas: recordType(stringType(), stringType()),
|
4733
|
+
_meta: objectType({
|
4734
|
+
schemas: recordType(stringType(), stringType()),
|
4735
|
+
tables: recordType(stringType(), stringType()),
|
4736
|
+
columns: recordType(stringType(), stringType())
|
4737
|
+
}),
|
4738
|
+
internal: kitInternals2
|
4739
|
+
}).strict();
|
4671
4740
|
pgSchemaExternal = objectType({
|
4672
4741
|
version: literalType("5"),
|
4673
4742
|
dialect: literalType("pg"),
|
@@ -4681,7 +4750,7 @@ var init_pgSchema = __esm({
|
|
4681
4750
|
})
|
4682
4751
|
}).strict();
|
4683
4752
|
pgSchemaInternal = objectType({
|
4684
|
-
version: literalType("
|
4753
|
+
version: literalType("7"),
|
4685
4754
|
dialect: literalType("postgresql"),
|
4686
4755
|
tables: recordType(stringType(), table2),
|
4687
4756
|
enums: recordType(stringType(), enumSchema),
|
@@ -4716,18 +4785,30 @@ var init_pgSchema = __esm({
|
|
4716
4785
|
enums: recordType(stringType(), enumSchemaV1),
|
4717
4786
|
schemas: recordType(stringType(), stringType())
|
4718
4787
|
}).strict();
|
4719
|
-
|
4788
|
+
pgSchemaSquashedV6 = objectType({
|
4720
4789
|
version: literalType("6"),
|
4721
4790
|
dialect: literalType("postgresql"),
|
4722
4791
|
tables: recordType(stringType(), tableSquashed2),
|
4723
4792
|
enums: recordType(stringType(), enumSchema),
|
4724
4793
|
schemas: recordType(stringType(), stringType())
|
4725
4794
|
}).strict();
|
4795
|
+
pgSchemaSquashed = objectType({
|
4796
|
+
version: literalType("7"),
|
4797
|
+
dialect: literalType("postgresql"),
|
4798
|
+
tables: recordType(stringType(), tableSquashed2),
|
4799
|
+
enums: recordType(stringType(), enumSchema),
|
4800
|
+
schemas: recordType(stringType(), stringType())
|
4801
|
+
}).strict();
|
4726
4802
|
pgSchemaV3 = pgSchemaInternalV3.merge(schemaHash2);
|
4727
4803
|
pgSchemaV4 = pgSchemaInternalV4.merge(schemaHash2);
|
4728
4804
|
pgSchemaV5 = pgSchemaInternalV5.merge(schemaHash2);
|
4805
|
+
pgSchemaV6 = pgSchemaInternalV6.merge(schemaHash2);
|
4729
4806
|
pgSchema2 = pgSchemaInternal.merge(schemaHash2);
|
4730
|
-
backwardCompatiblePgSchema = unionType([
|
4807
|
+
backwardCompatiblePgSchema = unionType([
|
4808
|
+
pgSchemaV5,
|
4809
|
+
pgSchemaV6,
|
4810
|
+
pgSchema2
|
4811
|
+
]);
|
4731
4812
|
dryPg = pgSchema2.parse({
|
4732
4813
|
version: snapshotVersion,
|
4733
4814
|
dialect: "postgresql",
|
@@ -5639,7 +5720,10 @@ var init_pgSerializer = __esm({
|
|
5639
5720
|
columnTypeMapped = trimChar(columnTypeMapped, '"');
|
5640
5721
|
columnToReturn[columnName] = {
|
5641
5722
|
name: columnName,
|
5642
|
-
type:
|
5723
|
+
type: (
|
5724
|
+
// filter vectors, but in future we should filter any extension that was installed by user
|
5725
|
+
columnAdditionalDT === "USER-DEFINED" && enumType3 !== "vector" ? enumType3 : columnTypeMapped
|
5726
|
+
),
|
5643
5727
|
typeSchema: enumsToReturn[`${tableSchema}.${enumType3}`] !== void 0 ? enumsToReturn[`${tableSchema}.${enumType3}`].schema : void 0,
|
5644
5728
|
primaryKey: primaryKey.length === 1 && cprimaryKey.length < 2,
|
5645
5729
|
// default: isSerial ? undefined : defaultValue,
|
@@ -5650,15 +5734,42 @@ var init_pgSerializer = __esm({
|
|
5650
5734
|
}
|
5651
5735
|
}
|
5652
5736
|
const dbIndexes = await db.query(
|
5653
|
-
`SELECT
|
5654
|
-
|
5655
|
-
|
5656
|
-
|
5657
|
-
|
5658
|
-
|
5659
|
-
|
5660
|
-
|
5661
|
-
|
5737
|
+
`SELECT t.relname as table_name, ic.relname AS indexname,
|
5738
|
+
k.i AS index_order,
|
5739
|
+
i.indisunique as is_unique,
|
5740
|
+
am.amname as method,
|
5741
|
+
ic.reloptions as with,
|
5742
|
+
coalesce(a.attname,
|
5743
|
+
(('{' || pg_get_expr(
|
5744
|
+
i.indexprs,
|
5745
|
+
i.indrelid
|
5746
|
+
)
|
5747
|
+
|| '}')::text[]
|
5748
|
+
)[k.i]
|
5749
|
+
) AS column_name,
|
5750
|
+
CASE
|
5751
|
+
WHEN pg_get_expr(i.indexprs, i.indrelid) IS NOT NULL THEN 1
|
5752
|
+
ELSE 0
|
5753
|
+
END AS is_expression,
|
5754
|
+
i.indoption[k.i-1] & 1 = 1 AS descending,
|
5755
|
+
i.indoption[k.i-1] & 2 = 2 AS nulls_first,
|
5756
|
+
pg_get_expr(
|
5757
|
+
i.indpred,
|
5758
|
+
i.indrelid
|
5759
|
+
) as where,
|
5760
|
+
opc.opcname
|
5761
|
+
FROM pg_class t
|
5762
|
+
LEFT JOIN pg_index i ON t.oid = i.indrelid
|
5763
|
+
LEFT JOIN pg_class ic ON ic.oid = i.indexrelid
|
5764
|
+
CROSS JOIN LATERAL (SELECT unnest(i.indkey), generate_subscripts(i.indkey, 1) + 1) AS k(attnum, i)
|
5765
|
+
LEFT JOIN pg_attribute AS a
|
5766
|
+
ON i.indrelid = a.attrelid AND k.attnum = a.attnum
|
5767
|
+
JOIN pg_namespace c on c.oid = t.relnamespace
|
5768
|
+
LEFT JOIN pg_am AS am ON ic.relam = am.oid
|
5769
|
+
JOIN pg_opclass opc ON opc.oid = ANY(i.indclass)
|
5770
|
+
WHERE
|
5771
|
+
c.nspname = '${tableSchema}' AND
|
5772
|
+
t.relname = '${tableName}';`
|
5662
5773
|
);
|
5663
5774
|
const dbIndexFromConstraint = await db.query(
|
5664
5775
|
`SELECT
|
@@ -5675,18 +5786,51 @@ var init_pgSerializer = __esm({
|
|
5675
5786
|
);
|
5676
5787
|
const idxsInConsteraint = dbIndexFromConstraint.filter((it) => it.generated_by_constraint === 1).map((it) => it.index_name);
|
5677
5788
|
for (const dbIndex of dbIndexes) {
|
5678
|
-
const indexName = dbIndex.
|
5789
|
+
const indexName = dbIndex.indexname;
|
5679
5790
|
const indexColumnName = dbIndex.column_name;
|
5680
5791
|
const indexIsUnique = dbIndex.is_unique;
|
5792
|
+
const indexMethod = dbIndex.method;
|
5793
|
+
const indexWith = dbIndex.with;
|
5794
|
+
const indexWhere = dbIndex.where;
|
5795
|
+
const opclass = dbIndex.opcname;
|
5796
|
+
const isExpression = dbIndex.is_expression === 1;
|
5797
|
+
const desc = dbIndex.descending;
|
5798
|
+
const nullsFirst = dbIndex.nulls_first;
|
5799
|
+
const mappedWith = {};
|
5800
|
+
if (indexWith !== null) {
|
5801
|
+
indexWith.forEach((it) => {
|
5802
|
+
const splitted = it.split("=");
|
5803
|
+
mappedWith[splitted[0]] = splitted[1];
|
5804
|
+
});
|
5805
|
+
}
|
5681
5806
|
if (idxsInConsteraint.includes(indexName))
|
5682
5807
|
continue;
|
5683
5808
|
if (typeof indexToReturn[indexName] !== "undefined") {
|
5684
|
-
indexToReturn[indexName].columns.push(
|
5809
|
+
indexToReturn[indexName].columns.push({
|
5810
|
+
expression: indexColumnName,
|
5811
|
+
asc: !desc,
|
5812
|
+
nulls: nullsFirst ? "first" : "last",
|
5813
|
+
opclass,
|
5814
|
+
isExpression
|
5815
|
+
});
|
5685
5816
|
} else {
|
5686
5817
|
indexToReturn[indexName] = {
|
5687
5818
|
name: indexName,
|
5688
|
-
columns: [
|
5689
|
-
|
5819
|
+
columns: [
|
5820
|
+
{
|
5821
|
+
expression: indexColumnName,
|
5822
|
+
asc: !desc,
|
5823
|
+
nulls: nullsFirst ? "first" : "last",
|
5824
|
+
opclass,
|
5825
|
+
isExpression
|
5826
|
+
}
|
5827
|
+
],
|
5828
|
+
isUnique: indexIsUnique,
|
5829
|
+
// should not be a part of diff detecs
|
5830
|
+
concurrently: false,
|
5831
|
+
method: indexMethod,
|
5832
|
+
where: indexWhere === null ? void 0 : indexWhere,
|
5833
|
+
with: mappedWith
|
5690
5834
|
};
|
5691
5835
|
}
|
5692
5836
|
}
|
@@ -5722,7 +5866,7 @@ var init_pgSerializer = __esm({
|
|
5722
5866
|
}
|
5723
5867
|
const schemasObject = Object.fromEntries([...schemas].map((it) => [it, it]));
|
5724
5868
|
return {
|
5725
|
-
version: "
|
5869
|
+
version: "7",
|
5726
5870
|
dialect: "postgresql",
|
5727
5871
|
tables: result,
|
5728
5872
|
enums: enumsToReturn,
|
package/utils-studio.mjs
CHANGED
@@ -570,7 +570,7 @@ var init_global = __esm({
|
|
570
570
|
"src/global.ts"() {
|
571
571
|
"use strict";
|
572
572
|
originUUID = "00000000-0000-0000-0000-000000000000";
|
573
|
-
snapshotVersion = "
|
573
|
+
snapshotVersion = "7";
|
574
574
|
}
|
575
575
|
});
|
576
576
|
|
@@ -4499,7 +4499,7 @@ var init_mysqlSchema = __esm({
|
|
4499
4499
|
});
|
4500
4500
|
|
4501
4501
|
// src/serializer/pgSchema.ts
|
4502
|
-
var indexV2, columnV2, tableV2, enumSchemaV1, enumSchema, pgSchemaV2, references, columnV1, tableV1, pgSchemaV1, index2, fk2, column2, tableV32, compositePK2, uniqueConstraint2, tableV42, table2, schemaHash2, kitInternals2, pgSchemaInternalV3, pgSchemaInternalV4, pgSchemaInternalV5, pgSchemaExternal, pgSchemaInternal, tableSquashed2, tableSquashedV42, pgSchemaSquashedV4, pgSchemaSquashed, pgSchemaV3, pgSchemaV4, pgSchemaV5, pgSchema2, backwardCompatiblePgSchema, dryPg;
|
4502
|
+
var indexV2, columnV2, tableV2, enumSchemaV1, enumSchema, pgSchemaV2, references, columnV1, tableV1, pgSchemaV1, indexColumn, index2, indexV4, indexV5, indexV6, fk2, column2, tableV32, compositePK2, uniqueConstraint2, tableV42, tableV6, tableV5, table2, schemaHash2, kitInternals2, pgSchemaInternalV3, pgSchemaInternalV4, pgSchemaInternalV5, pgSchemaInternalV6, pgSchemaExternal, pgSchemaInternal, tableSquashed2, tableSquashedV42, pgSchemaSquashedV4, pgSchemaSquashedV6, pgSchemaSquashed, pgSchemaV3, pgSchemaV4, pgSchemaV5, pgSchemaV6, pgSchema2, backwardCompatiblePgSchema, dryPg;
|
4503
4503
|
var init_pgSchema = __esm({
|
4504
4504
|
"src/serializer/pgSchema.ts"() {
|
4505
4505
|
"use strict";
|
@@ -4567,10 +4567,48 @@ var init_pgSchema = __esm({
|
|
4567
4567
|
tables: recordType(stringType(), tableV1),
|
4568
4568
|
enums: recordType(stringType(), enumSchemaV1)
|
4569
4569
|
}).strict();
|
4570
|
+
indexColumn = objectType({
|
4571
|
+
expression: stringType(),
|
4572
|
+
isExpression: booleanType(),
|
4573
|
+
asc: booleanType(),
|
4574
|
+
nulls: stringType().optional(),
|
4575
|
+
opclass: stringType().optional()
|
4576
|
+
});
|
4570
4577
|
index2 = objectType({
|
4578
|
+
name: stringType(),
|
4579
|
+
columns: indexColumn.array(),
|
4580
|
+
isUnique: booleanType(),
|
4581
|
+
with: recordType(stringType(), anyType()).optional(),
|
4582
|
+
method: stringType().default("btree"),
|
4583
|
+
where: stringType().optional(),
|
4584
|
+
concurrently: booleanType().default(false)
|
4585
|
+
}).strict();
|
4586
|
+
indexV4 = objectType({
|
4571
4587
|
name: stringType(),
|
4572
4588
|
columns: stringType().array(),
|
4573
|
-
isUnique: booleanType()
|
4589
|
+
isUnique: booleanType(),
|
4590
|
+
with: recordType(stringType(), stringType()).optional(),
|
4591
|
+
method: stringType().default("btree"),
|
4592
|
+
where: stringType().optional(),
|
4593
|
+
concurrently: booleanType().default(false)
|
4594
|
+
}).strict();
|
4595
|
+
indexV5 = objectType({
|
4596
|
+
name: stringType(),
|
4597
|
+
columns: stringType().array(),
|
4598
|
+
isUnique: booleanType(),
|
4599
|
+
with: recordType(stringType(), stringType()).optional(),
|
4600
|
+
method: stringType().default("btree"),
|
4601
|
+
where: stringType().optional(),
|
4602
|
+
concurrently: booleanType().default(false)
|
4603
|
+
}).strict();
|
4604
|
+
indexV6 = objectType({
|
4605
|
+
name: stringType(),
|
4606
|
+
columns: stringType().array(),
|
4607
|
+
isUnique: booleanType(),
|
4608
|
+
with: recordType(stringType(), stringType()).optional(),
|
4609
|
+
method: stringType().default("btree"),
|
4610
|
+
where: stringType().optional(),
|
4611
|
+
concurrently: booleanType().default(false)
|
4574
4612
|
}).strict();
|
4575
4613
|
fk2 = objectType({
|
4576
4614
|
name: stringType(),
|
@@ -4612,9 +4650,27 @@ var init_pgSchema = __esm({
|
|
4612
4650
|
name: stringType(),
|
4613
4651
|
schema: stringType(),
|
4614
4652
|
columns: recordType(stringType(), column2),
|
4615
|
-
indexes: recordType(stringType(),
|
4653
|
+
indexes: recordType(stringType(), indexV4),
|
4616
4654
|
foreignKeys: recordType(stringType(), fk2)
|
4617
4655
|
}).strict();
|
4656
|
+
tableV6 = objectType({
|
4657
|
+
name: stringType(),
|
4658
|
+
schema: stringType(),
|
4659
|
+
columns: recordType(stringType(), column2),
|
4660
|
+
indexes: recordType(stringType(), indexV6),
|
4661
|
+
foreignKeys: recordType(stringType(), fk2),
|
4662
|
+
compositePrimaryKeys: recordType(stringType(), compositePK2),
|
4663
|
+
uniqueConstraints: recordType(stringType(), uniqueConstraint2).default({})
|
4664
|
+
}).strict();
|
4665
|
+
tableV5 = objectType({
|
4666
|
+
name: stringType(),
|
4667
|
+
schema: stringType(),
|
4668
|
+
columns: recordType(stringType(), column2),
|
4669
|
+
indexes: recordType(stringType(), indexV5),
|
4670
|
+
foreignKeys: recordType(stringType(), fk2),
|
4671
|
+
compositePrimaryKeys: recordType(stringType(), compositePK2),
|
4672
|
+
uniqueConstraints: recordType(stringType(), uniqueConstraint2).default({})
|
4673
|
+
}).strict();
|
4618
4674
|
table2 = objectType({
|
4619
4675
|
name: stringType(),
|
4620
4676
|
schema: stringType(),
|
@@ -4659,7 +4715,7 @@ var init_pgSchema = __esm({
|
|
4659
4715
|
pgSchemaInternalV5 = objectType({
|
4660
4716
|
version: literalType("5"),
|
4661
4717
|
dialect: literalType("pg"),
|
4662
|
-
tables: recordType(stringType(),
|
4718
|
+
tables: recordType(stringType(), tableV5),
|
4663
4719
|
enums: recordType(stringType(), enumSchemaV1),
|
4664
4720
|
schemas: recordType(stringType(), stringType()),
|
4665
4721
|
_meta: objectType({
|
@@ -4669,6 +4725,19 @@ var init_pgSchema = __esm({
|
|
4669
4725
|
}),
|
4670
4726
|
internal: kitInternals2
|
4671
4727
|
}).strict();
|
4728
|
+
pgSchemaInternalV6 = objectType({
|
4729
|
+
version: literalType("6"),
|
4730
|
+
dialect: literalType("postgresql"),
|
4731
|
+
tables: recordType(stringType(), tableV6),
|
4732
|
+
enums: recordType(stringType(), enumSchema),
|
4733
|
+
schemas: recordType(stringType(), stringType()),
|
4734
|
+
_meta: objectType({
|
4735
|
+
schemas: recordType(stringType(), stringType()),
|
4736
|
+
tables: recordType(stringType(), stringType()),
|
4737
|
+
columns: recordType(stringType(), stringType())
|
4738
|
+
}),
|
4739
|
+
internal: kitInternals2
|
4740
|
+
}).strict();
|
4672
4741
|
pgSchemaExternal = objectType({
|
4673
4742
|
version: literalType("5"),
|
4674
4743
|
dialect: literalType("pg"),
|
@@ -4682,7 +4751,7 @@ var init_pgSchema = __esm({
|
|
4682
4751
|
})
|
4683
4752
|
}).strict();
|
4684
4753
|
pgSchemaInternal = objectType({
|
4685
|
-
version: literalType("
|
4754
|
+
version: literalType("7"),
|
4686
4755
|
dialect: literalType("postgresql"),
|
4687
4756
|
tables: recordType(stringType(), table2),
|
4688
4757
|
enums: recordType(stringType(), enumSchema),
|
@@ -4717,18 +4786,30 @@ var init_pgSchema = __esm({
|
|
4717
4786
|
enums: recordType(stringType(), enumSchemaV1),
|
4718
4787
|
schemas: recordType(stringType(), stringType())
|
4719
4788
|
}).strict();
|
4720
|
-
|
4789
|
+
pgSchemaSquashedV6 = objectType({
|
4721
4790
|
version: literalType("6"),
|
4722
4791
|
dialect: literalType("postgresql"),
|
4723
4792
|
tables: recordType(stringType(), tableSquashed2),
|
4724
4793
|
enums: recordType(stringType(), enumSchema),
|
4725
4794
|
schemas: recordType(stringType(), stringType())
|
4726
4795
|
}).strict();
|
4796
|
+
pgSchemaSquashed = objectType({
|
4797
|
+
version: literalType("7"),
|
4798
|
+
dialect: literalType("postgresql"),
|
4799
|
+
tables: recordType(stringType(), tableSquashed2),
|
4800
|
+
enums: recordType(stringType(), enumSchema),
|
4801
|
+
schemas: recordType(stringType(), stringType())
|
4802
|
+
}).strict();
|
4727
4803
|
pgSchemaV3 = pgSchemaInternalV3.merge(schemaHash2);
|
4728
4804
|
pgSchemaV4 = pgSchemaInternalV4.merge(schemaHash2);
|
4729
4805
|
pgSchemaV5 = pgSchemaInternalV5.merge(schemaHash2);
|
4806
|
+
pgSchemaV6 = pgSchemaInternalV6.merge(schemaHash2);
|
4730
4807
|
pgSchema2 = pgSchemaInternal.merge(schemaHash2);
|
4731
|
-
backwardCompatiblePgSchema = unionType([
|
4808
|
+
backwardCompatiblePgSchema = unionType([
|
4809
|
+
pgSchemaV5,
|
4810
|
+
pgSchemaV6,
|
4811
|
+
pgSchema2
|
4812
|
+
]);
|
4732
4813
|
dryPg = pgSchema2.parse({
|
4733
4814
|
version: snapshotVersion,
|
4734
4815
|
dialect: "postgresql",
|
@@ -5648,7 +5729,10 @@ var init_pgSerializer = __esm({
|
|
5648
5729
|
columnTypeMapped = trimChar(columnTypeMapped, '"');
|
5649
5730
|
columnToReturn[columnName] = {
|
5650
5731
|
name: columnName,
|
5651
|
-
type:
|
5732
|
+
type: (
|
5733
|
+
// filter vectors, but in future we should filter any extension that was installed by user
|
5734
|
+
columnAdditionalDT === "USER-DEFINED" && enumType3 !== "vector" ? enumType3 : columnTypeMapped
|
5735
|
+
),
|
5652
5736
|
typeSchema: enumsToReturn[`${tableSchema}.${enumType3}`] !== void 0 ? enumsToReturn[`${tableSchema}.${enumType3}`].schema : void 0,
|
5653
5737
|
primaryKey: primaryKey.length === 1 && cprimaryKey.length < 2,
|
5654
5738
|
// default: isSerial ? undefined : defaultValue,
|
@@ -5659,15 +5743,42 @@ var init_pgSerializer = __esm({
|
|
5659
5743
|
}
|
5660
5744
|
}
|
5661
5745
|
const dbIndexes = await db.query(
|
5662
|
-
`SELECT
|
5663
|
-
|
5664
|
-
|
5665
|
-
|
5666
|
-
|
5667
|
-
|
5668
|
-
|
5669
|
-
|
5670
|
-
|
5746
|
+
`SELECT t.relname as table_name, ic.relname AS indexname,
|
5747
|
+
k.i AS index_order,
|
5748
|
+
i.indisunique as is_unique,
|
5749
|
+
am.amname as method,
|
5750
|
+
ic.reloptions as with,
|
5751
|
+
coalesce(a.attname,
|
5752
|
+
(('{' || pg_get_expr(
|
5753
|
+
i.indexprs,
|
5754
|
+
i.indrelid
|
5755
|
+
)
|
5756
|
+
|| '}')::text[]
|
5757
|
+
)[k.i]
|
5758
|
+
) AS column_name,
|
5759
|
+
CASE
|
5760
|
+
WHEN pg_get_expr(i.indexprs, i.indrelid) IS NOT NULL THEN 1
|
5761
|
+
ELSE 0
|
5762
|
+
END AS is_expression,
|
5763
|
+
i.indoption[k.i-1] & 1 = 1 AS descending,
|
5764
|
+
i.indoption[k.i-1] & 2 = 2 AS nulls_first,
|
5765
|
+
pg_get_expr(
|
5766
|
+
i.indpred,
|
5767
|
+
i.indrelid
|
5768
|
+
) as where,
|
5769
|
+
opc.opcname
|
5770
|
+
FROM pg_class t
|
5771
|
+
LEFT JOIN pg_index i ON t.oid = i.indrelid
|
5772
|
+
LEFT JOIN pg_class ic ON ic.oid = i.indexrelid
|
5773
|
+
CROSS JOIN LATERAL (SELECT unnest(i.indkey), generate_subscripts(i.indkey, 1) + 1) AS k(attnum, i)
|
5774
|
+
LEFT JOIN pg_attribute AS a
|
5775
|
+
ON i.indrelid = a.attrelid AND k.attnum = a.attnum
|
5776
|
+
JOIN pg_namespace c on c.oid = t.relnamespace
|
5777
|
+
LEFT JOIN pg_am AS am ON ic.relam = am.oid
|
5778
|
+
JOIN pg_opclass opc ON opc.oid = ANY(i.indclass)
|
5779
|
+
WHERE
|
5780
|
+
c.nspname = '${tableSchema}' AND
|
5781
|
+
t.relname = '${tableName}';`
|
5671
5782
|
);
|
5672
5783
|
const dbIndexFromConstraint = await db.query(
|
5673
5784
|
`SELECT
|
@@ -5684,18 +5795,51 @@ var init_pgSerializer = __esm({
|
|
5684
5795
|
);
|
5685
5796
|
const idxsInConsteraint = dbIndexFromConstraint.filter((it) => it.generated_by_constraint === 1).map((it) => it.index_name);
|
5686
5797
|
for (const dbIndex of dbIndexes) {
|
5687
|
-
const indexName = dbIndex.
|
5798
|
+
const indexName = dbIndex.indexname;
|
5688
5799
|
const indexColumnName = dbIndex.column_name;
|
5689
5800
|
const indexIsUnique = dbIndex.is_unique;
|
5801
|
+
const indexMethod = dbIndex.method;
|
5802
|
+
const indexWith = dbIndex.with;
|
5803
|
+
const indexWhere = dbIndex.where;
|
5804
|
+
const opclass = dbIndex.opcname;
|
5805
|
+
const isExpression = dbIndex.is_expression === 1;
|
5806
|
+
const desc = dbIndex.descending;
|
5807
|
+
const nullsFirst = dbIndex.nulls_first;
|
5808
|
+
const mappedWith = {};
|
5809
|
+
if (indexWith !== null) {
|
5810
|
+
indexWith.forEach((it) => {
|
5811
|
+
const splitted = it.split("=");
|
5812
|
+
mappedWith[splitted[0]] = splitted[1];
|
5813
|
+
});
|
5814
|
+
}
|
5690
5815
|
if (idxsInConsteraint.includes(indexName))
|
5691
5816
|
continue;
|
5692
5817
|
if (typeof indexToReturn[indexName] !== "undefined") {
|
5693
|
-
indexToReturn[indexName].columns.push(
|
5818
|
+
indexToReturn[indexName].columns.push({
|
5819
|
+
expression: indexColumnName,
|
5820
|
+
asc: !desc,
|
5821
|
+
nulls: nullsFirst ? "first" : "last",
|
5822
|
+
opclass,
|
5823
|
+
isExpression
|
5824
|
+
});
|
5694
5825
|
} else {
|
5695
5826
|
indexToReturn[indexName] = {
|
5696
5827
|
name: indexName,
|
5697
|
-
columns: [
|
5698
|
-
|
5828
|
+
columns: [
|
5829
|
+
{
|
5830
|
+
expression: indexColumnName,
|
5831
|
+
asc: !desc,
|
5832
|
+
nulls: nullsFirst ? "first" : "last",
|
5833
|
+
opclass,
|
5834
|
+
isExpression
|
5835
|
+
}
|
5836
|
+
],
|
5837
|
+
isUnique: indexIsUnique,
|
5838
|
+
// should not be a part of diff detecs
|
5839
|
+
concurrently: false,
|
5840
|
+
method: indexMethod,
|
5841
|
+
where: indexWhere === null ? void 0 : indexWhere,
|
5842
|
+
with: mappedWith
|
5699
5843
|
};
|
5700
5844
|
}
|
5701
5845
|
}
|
@@ -5731,7 +5875,7 @@ var init_pgSerializer = __esm({
|
|
5731
5875
|
}
|
5732
5876
|
const schemasObject = Object.fromEntries([...schemas].map((it) => [it, it]));
|
5733
5877
|
return {
|
5734
|
-
version: "
|
5878
|
+
version: "7",
|
5735
5879
|
dialect: "postgresql",
|
5736
5880
|
tables: result,
|
5737
5881
|
enums: enumsToReturn,
|