@mikro-orm/knex 6.2.9-dev.17 → 6.2.9-dev.19
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mikro-orm/knex",
|
|
3
|
-
"version": "6.2.9-dev.
|
|
3
|
+
"version": "6.2.9-dev.19",
|
|
4
4
|
"description": "TypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns. Supports MongoDB, MySQL, PostgreSQL and SQLite databases as well as usage with vanilla JavaScript.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"module": "index.mjs",
|
|
@@ -66,6 +66,6 @@
|
|
|
66
66
|
"@mikro-orm/core": "^6.2.8"
|
|
67
67
|
},
|
|
68
68
|
"peerDependencies": {
|
|
69
|
-
"@mikro-orm/core": "6.2.9-dev.
|
|
69
|
+
"@mikro-orm/core": "6.2.9-dev.19"
|
|
70
70
|
}
|
|
71
71
|
}
|
package/schema/DatabaseTable.js
CHANGED
|
@@ -484,7 +484,7 @@ class SchemaComparator {
|
|
|
484
484
|
// index that has no constraints.
|
|
485
485
|
return true;
|
|
486
486
|
}
|
|
487
|
-
return index1.primary === index2.primary && index1.unique === index2.unique;
|
|
487
|
+
return index1.primary === index2.primary && index1.unique === index2.unique && index1.deferMode === index2.deferMode;
|
|
488
488
|
}
|
|
489
489
|
diffExpression(expr1, expr2) {
|
|
490
490
|
// expressions like check constraints might be normalized by the driver,
|
|
@@ -90,11 +90,11 @@ class SqlSchemaGenerator extends core_1.AbstractSchemaGenerator {
|
|
|
90
90
|
await this.execute(sql);
|
|
91
91
|
}
|
|
92
92
|
async createNamespace(name) {
|
|
93
|
-
const sql =
|
|
93
|
+
const sql = this.helper.getCreateNamespaceSQL(name);
|
|
94
94
|
await this.execute(sql);
|
|
95
95
|
}
|
|
96
96
|
async dropNamespace(name) {
|
|
97
|
-
const sql =
|
|
97
|
+
const sql = this.helper.getDropNamespaceSQL(name);
|
|
98
98
|
await this.execute(sql);
|
|
99
99
|
}
|
|
100
100
|
async clearDatabase(options) {
|
|
@@ -359,14 +359,17 @@ class SqlSchemaGenerator extends core_1.AbstractSchemaGenerator {
|
|
|
359
359
|
const foreignKey = Object.values(diff.addedForeignKeys).find(fk => fk.columnNames.length === 1 && fk.columnNames[0] === column.name);
|
|
360
360
|
if (foreignKey && this.options.createForeignKeyConstraints) {
|
|
361
361
|
delete diff.addedForeignKeys[foreignKey.constraintName];
|
|
362
|
-
col.references(foreignKey.referencedColumnNames[0])
|
|
362
|
+
const builder = col.references(foreignKey.referencedColumnNames[0])
|
|
363
363
|
.inTable(this.getReferencedTableName(foreignKey.referencedTableName))
|
|
364
364
|
.withKeyName(foreignKey.constraintName)
|
|
365
365
|
.onUpdate(foreignKey.updateRule)
|
|
366
366
|
.onDelete(foreignKey.deleteRule);
|
|
367
|
+
if (foreignKey.deferMode) {
|
|
368
|
+
builder.deferrable(foreignKey.deferMode);
|
|
369
|
+
}
|
|
367
370
|
}
|
|
368
371
|
}
|
|
369
|
-
for (const { column, changedProperties
|
|
372
|
+
for (const { column, changedProperties } of Object.values(diff.changedColumns)) {
|
|
370
373
|
if (changedProperties.size === 1 && changedProperties.has('comment')) {
|
|
371
374
|
continue;
|
|
372
375
|
}
|
|
@@ -527,7 +530,7 @@ class SqlSchemaGenerator extends core_1.AbstractSchemaGenerator {
|
|
|
527
530
|
table.index(columns.map(column => this.knex.raw(column)), index.keyName, { indexType: 'unique' });
|
|
528
531
|
}
|
|
529
532
|
else {
|
|
530
|
-
table.unique(index.columnNames, { indexName: index.keyName });
|
|
533
|
+
table.unique(index.columnNames, { indexName: index.keyName, deferrable: index.deferMode });
|
|
531
534
|
}
|
|
532
535
|
}
|
|
533
536
|
else if (index.expression) {
|