ormbridge 0.13.0 → 0.15.0
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/README.md +23 -22
- package/dist/cliRunner.js +20 -2
- package/dist/cliRunner.js.map +1 -1
- package/dist/config.d.ts +6 -1
- package/dist/config.js +17 -0
- package/dist/config.js.map +1 -1
- package/dist/emitters/jpa.d.ts +17 -2
- package/dist/emitters/jpa.js +55 -7
- package/dist/emitters/jpa.js.map +1 -1
- package/dist/emitters/jpaKeyClass.d.ts +18 -0
- package/dist/emitters/jpaKeyClass.js +88 -0
- package/dist/emitters/jpaKeyClass.js.map +1 -0
- package/dist/emitters/jpaKeys.d.ts +1 -7
- package/dist/emitters/jpaKeys.js +0 -43
- package/dist/emitters/jpaKeys.js.map +1 -1
- package/dist/emitters/jpaRelations.d.ts +5 -1
- package/dist/emitters/jpaRelations.js +7 -1
- package/dist/emitters/jpaRelations.js.map +1 -1
- package/dist/emitters/jpaRender.d.ts +5 -1
- package/dist/emitters/jpaRender.js +11 -4
- package/dist/emitters/jpaRender.js.map +1 -1
- package/dist/emitters/jpaTypes.d.ts +9 -3
- package/dist/emitters/jpaTypes.js +8 -0
- package/dist/emitters/jpaTypes.js.map +1 -1
- package/dist/emitters/sequelize.d.ts +16 -3
- package/dist/emitters/sequelize.js +270 -45
- package/dist/emitters/sequelize.js.map +1 -1
- package/dist/emitters/sequelize7.d.ts +68 -0
- package/dist/emitters/sequelize7.js +199 -0
- package/dist/emitters/sequelize7.js.map +1 -0
- package/dist/emitters/sequelizeText.d.ts +12 -0
- package/dist/emitters/sequelizeText.js +37 -0
- package/dist/emitters/sequelizeText.js.map +1 -0
- package/dist/formats.d.ts +13 -2
- package/dist/formats.js +17 -6
- package/dist/formats.js.map +1 -1
- package/dist/index.d.ts +7 -4
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/io.js +105 -26
- package/dist/io.js.map +1 -1
- package/dist/parsers/efcore.js +60 -3
- package/dist/parsers/efcore.js.map +1 -1
- package/dist/parsers/efcoreAnnotations.js +1 -1
- package/dist/parsers/efcoreAnnotations.js.map +1 -1
- package/dist/parsers/efcoreBuild.d.ts +1 -0
- package/dist/parsers/efcoreBuild.js +15 -4
- package/dist/parsers/efcoreBuild.js.map +1 -1
- package/dist/parsers/efcoreEntities.js +90 -22
- package/dist/parsers/efcoreEntities.js.map +1 -1
- package/dist/parsers/efcoreMigrationHistory.d.ts +17 -0
- package/dist/parsers/efcoreMigrationHistory.js +105 -0
- package/dist/parsers/efcoreMigrationHistory.js.map +1 -0
- package/dist/parsers/efcoreMigrationReplay.d.ts +25 -0
- package/dist/parsers/efcoreMigrationReplay.js +790 -0
- package/dist/parsers/efcoreMigrationReplay.js.map +1 -0
- package/dist/parsers/efcoreMigrationSchema.d.ts +14 -0
- package/dist/parsers/efcoreMigrationSchema.js +550 -0
- package/dist/parsers/efcoreMigrationSchema.js.map +1 -0
- package/dist/parsers/efcoreMigrationState.d.ts +82 -0
- package/dist/parsers/efcoreMigrationState.js +104 -0
- package/dist/parsers/efcoreMigrationState.js.map +1 -0
- package/dist/parsers/efcoreModel.d.ts +18 -2
- package/dist/parsers/efcoreOwned.d.ts +12 -0
- package/dist/parsers/efcoreOwned.js +139 -0
- package/dist/parsers/efcoreOwned.js.map +1 -0
- package/dist/parsers/efcoreSnapshot.d.ts +85 -0
- package/dist/parsers/efcoreSnapshot.js +791 -0
- package/dist/parsers/efcoreSnapshot.js.map +1 -0
- package/dist/parsers/efcoreSteps.js +28 -3
- package/dist/parsers/efcoreSteps.js.map +1 -1
- package/dist/parsers/jpaBuild.js +2 -1
- package/dist/parsers/jpaBuild.js.map +1 -1
- package/dist/parsers/jpaClasses.js +7 -1
- package/dist/parsers/jpaClasses.js.map +1 -1
- package/dist/parsers/jpaColumns.d.ts +4 -1
- package/dist/parsers/jpaColumns.js +8 -2
- package/dist/parsers/jpaColumns.js.map +1 -1
- package/dist/parsers/jpaEntities.js +15 -0
- package/dist/parsers/jpaEntities.js.map +1 -1
- package/dist/parsers/jpaModel.d.ts +6 -0
- package/dist/parsers/sequelize.js +37 -10
- package/dist/parsers/sequelize.js.map +1 -1
- package/dist/parsers/sequelizeAssociations.js +13 -2
- package/dist/parsers/sequelizeAssociations.js.map +1 -1
- package/dist/parsers/sequelizeCollect.d.ts +7 -2
- package/dist/parsers/sequelizeCollect.js +120 -9
- package/dist/parsers/sequelizeCollect.js.map +1 -1
- package/dist/parsers/sequelizeMigrationState.d.ts +75 -0
- package/dist/parsers/sequelizeMigrationState.js +330 -0
- package/dist/parsers/sequelizeMigrationState.js.map +1 -0
- package/dist/parsers/sequelizeMigrations.d.ts +14 -0
- package/dist/parsers/sequelizeMigrations.js +1123 -0
- package/dist/parsers/sequelizeMigrations.js.map +1 -0
- package/dist/parsers/sequelizeModel.d.ts +19 -2
- package/dist/parsers/sqlDdl.js +1306 -65
- package/dist/parsers/sqlDdl.js.map +1 -1
- package/dist/parsers/sqlMigrationOrder.d.ts +8 -0
- package/dist/parsers/sqlMigrationOrder.js +110 -0
- package/dist/parsers/sqlMigrationOrder.js.map +1 -0
- package/dist/parsers/sqlSyntax.d.ts +6 -0
- package/dist/parsers/sqlSyntax.js +15 -2
- package/dist/parsers/sqlSyntax.js.map +1 -1
- package/dist/parsers/zod.d.ts +11 -0
- package/dist/parsers/zod.js +796 -0
- package/dist/parsers/zod.js.map +1 -0
- package/dist/parsers/zodFields.d.ts +73 -0
- package/dist/parsers/zodFields.js +681 -0
- package/dist/parsers/zodFields.js.map +1 -0
- package/dist/parsers/zodSyntax.d.ts +72 -0
- package/dist/parsers/zodSyntax.js +347 -0
- package/dist/parsers/zodSyntax.js.map +1 -0
- package/dist/styles.d.ts +3 -3
- package/dist/styles.js +4 -4
- package/dist/styles.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,330 @@
|
|
|
1
|
+
import { underscore } from './sequelizeInflection.js';
|
|
2
|
+
export function tableKey(name, schema) {
|
|
3
|
+
return schema === undefined ? name : `${schema}.${name}`;
|
|
4
|
+
}
|
|
5
|
+
export function newState() {
|
|
6
|
+
return { tables: new Map() };
|
|
7
|
+
}
|
|
8
|
+
/** A table by the name a migration uses for it; a bare name also finds a table in a schema when unambiguous. */
|
|
9
|
+
export function findTable(state, name, schema) {
|
|
10
|
+
const exact = state.tables.get(tableKey(name, schema));
|
|
11
|
+
if (exact !== undefined || schema !== undefined) {
|
|
12
|
+
return exact;
|
|
13
|
+
}
|
|
14
|
+
const matches = [...state.tables.values()].filter((table) => table.name === name);
|
|
15
|
+
return matches.length === 1 ? matches[0] : undefined;
|
|
16
|
+
}
|
|
17
|
+
export function findColumn(table, name) {
|
|
18
|
+
return table.columns.find((column) => column.name === name);
|
|
19
|
+
}
|
|
20
|
+
/** `Utils.nameIndex`: the name Sequelize gives an index that has none (`users_first_name`). */
|
|
21
|
+
export function defaultIndexName(table, fields) {
|
|
22
|
+
return underscore(`${table}_${fields.join('_')}`);
|
|
23
|
+
}
|
|
24
|
+
/** The name `addConstraint` gives a constraint that has none (`users_email_uk`). */
|
|
25
|
+
export function defaultConstraintName(table, kind, columns, referencedTable) {
|
|
26
|
+
const joined = columns.join('_');
|
|
27
|
+
switch (kind) {
|
|
28
|
+
case 'unique':
|
|
29
|
+
return `${table}_${joined}_uk`;
|
|
30
|
+
case 'primary key':
|
|
31
|
+
return `${table}_${joined}_pk`;
|
|
32
|
+
case 'foreign key':
|
|
33
|
+
return `${table}_${joined}_${referencedTable ?? ''}_fk`;
|
|
34
|
+
case 'check':
|
|
35
|
+
return `${table}_${joined}_ck`;
|
|
36
|
+
default:
|
|
37
|
+
return `${table}_${joined}_df`;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
function sameColumns(first, second) {
|
|
41
|
+
return (first.length === second.length &&
|
|
42
|
+
first.every((name, at) => name === second[at]));
|
|
43
|
+
}
|
|
44
|
+
/** The columns a table's indexes and constraints list, without the ones that are gone. */
|
|
45
|
+
function dropColumnFromLists(table, column) {
|
|
46
|
+
table.indexes = table.indexes.filter((entry) => !entry.index.fields.some((field) => field.name === column));
|
|
47
|
+
table.constraints = table.constraints.filter((constraint) => !constraint.columns.includes(column));
|
|
48
|
+
}
|
|
49
|
+
// ---------------------------------------------------------------------------
|
|
50
|
+
// Tables
|
|
51
|
+
// ---------------------------------------------------------------------------
|
|
52
|
+
/** Adds a table; returns the reason when a table of that name exists already. */
|
|
53
|
+
export function createTable(state, table) {
|
|
54
|
+
const key = tableKey(table.name, table.schema);
|
|
55
|
+
if (state.tables.has(key)) {
|
|
56
|
+
return `a table named "${table.name}" exists already`;
|
|
57
|
+
}
|
|
58
|
+
state.tables.set(key, table);
|
|
59
|
+
return undefined;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Removes a table. The foreign keys of other tables that pointed at it stay as plain columns (the database
|
|
63
|
+
* either refuses the drop or, with `cascade`, drops them); their columns are returned for the warning.
|
|
64
|
+
*/
|
|
65
|
+
export function dropTable(state, name, schema) {
|
|
66
|
+
const table = findTable(state, name, schema);
|
|
67
|
+
if (table === undefined) {
|
|
68
|
+
return { dropped: undefined, dangling: [] };
|
|
69
|
+
}
|
|
70
|
+
state.tables.delete(tableKey(table.name, table.schema));
|
|
71
|
+
const dangling = [];
|
|
72
|
+
for (const other of state.tables.values()) {
|
|
73
|
+
for (const column of other.columns) {
|
|
74
|
+
if (referencedTableOf(column) === table.name) {
|
|
75
|
+
delete column.references;
|
|
76
|
+
delete column.onDelete;
|
|
77
|
+
delete column.onUpdate;
|
|
78
|
+
other.constraints = other.constraints.filter((constraint) => !(constraint.kind === 'foreign key' &&
|
|
79
|
+
constraint.columns.includes(column.name)));
|
|
80
|
+
dangling.push(`${other.name}.${column.name}`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return { dropped: table, dangling };
|
|
85
|
+
}
|
|
86
|
+
/** Renames a table and every foreign key that points at it; returns the reason when it does not fit. */
|
|
87
|
+
export function renameTable(state, from, to, schema) {
|
|
88
|
+
const table = findTable(state, from, schema);
|
|
89
|
+
if (table === undefined) {
|
|
90
|
+
return `the table "${from}" does not exist at this point`;
|
|
91
|
+
}
|
|
92
|
+
const key = tableKey(to, table.schema);
|
|
93
|
+
if (state.tables.has(key)) {
|
|
94
|
+
return `a table named "${to}" exists already`;
|
|
95
|
+
}
|
|
96
|
+
// Rebuild the map so the renamed table keeps its place in the creation order.
|
|
97
|
+
const entries = [...state.tables.entries()];
|
|
98
|
+
state.tables.clear();
|
|
99
|
+
for (const [oldKey, entry] of entries) {
|
|
100
|
+
if (entry === table) {
|
|
101
|
+
table.name = to;
|
|
102
|
+
state.tables.set(key, table);
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
state.tables.set(oldKey, entry);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
for (const other of state.tables.values()) {
|
|
109
|
+
for (const column of other.columns) {
|
|
110
|
+
if (referencedTableOf(column) === from) {
|
|
111
|
+
setReferencedTable(column, to);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
return undefined;
|
|
116
|
+
}
|
|
117
|
+
// ---------------------------------------------------------------------------
|
|
118
|
+
// References
|
|
119
|
+
// ---------------------------------------------------------------------------
|
|
120
|
+
/** The table a column's `references` names, when it is a plain name. */
|
|
121
|
+
export function referencedTableOf(column) {
|
|
122
|
+
const model = column.references?.model;
|
|
123
|
+
return model !== undefined && model.kind === 'string'
|
|
124
|
+
? model.value
|
|
125
|
+
: undefined;
|
|
126
|
+
}
|
|
127
|
+
function setReferencedTable(column, table) {
|
|
128
|
+
column.references = {
|
|
129
|
+
...(column.references ?? {}),
|
|
130
|
+
model: { kind: 'string', value: table },
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
// ---------------------------------------------------------------------------
|
|
134
|
+
// Columns
|
|
135
|
+
// ---------------------------------------------------------------------------
|
|
136
|
+
/** Adds a column; returns the reason when the table has a column of that name. */
|
|
137
|
+
export function addColumn(table, attribute) {
|
|
138
|
+
if (findColumn(table, attribute.name) !== undefined) {
|
|
139
|
+
return `a column named "${attribute.name}" exists already`;
|
|
140
|
+
}
|
|
141
|
+
table.columns.push(attribute);
|
|
142
|
+
return undefined;
|
|
143
|
+
}
|
|
144
|
+
/** Drops a column with the indexes and constraints that use it; returns the reason when there is none. */
|
|
145
|
+
export function removeColumn(table, name) {
|
|
146
|
+
const column = findColumn(table, name);
|
|
147
|
+
if (column === undefined) {
|
|
148
|
+
return `the column "${name}" does not exist at this point`;
|
|
149
|
+
}
|
|
150
|
+
table.columns = table.columns.filter((candidate) => candidate !== column);
|
|
151
|
+
dropColumnFromLists(table, name);
|
|
152
|
+
return undefined;
|
|
153
|
+
}
|
|
154
|
+
/** Renames a column and everything that lists it; returns the reason when it does not fit. */
|
|
155
|
+
export function renameColumn(state, table, from, to) {
|
|
156
|
+
const column = findColumn(table, from);
|
|
157
|
+
if (column === undefined) {
|
|
158
|
+
return `the column "${from}" does not exist at this point`;
|
|
159
|
+
}
|
|
160
|
+
if (findColumn(table, to) !== undefined) {
|
|
161
|
+
return `a column named "${to}" exists already`;
|
|
162
|
+
}
|
|
163
|
+
column.name = to;
|
|
164
|
+
for (const entry of table.indexes) {
|
|
165
|
+
for (const field of entry.index.fields) {
|
|
166
|
+
if (field.name === from) {
|
|
167
|
+
field.name = to;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
// An unnamed index keeps the name Sequelize derives from its columns.
|
|
171
|
+
if (!entry.isExplicit) {
|
|
172
|
+
entry.name = defaultIndexName(table.name, entry.index.fields.map((field) => field.name));
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
for (const constraint of table.constraints) {
|
|
176
|
+
constraint.columns = constraint.columns.map((name) => name === from ? to : name);
|
|
177
|
+
}
|
|
178
|
+
for (const other of state.tables.values()) {
|
|
179
|
+
for (const candidate of other.columns) {
|
|
180
|
+
if (referencedTableOf(candidate) === table.name &&
|
|
181
|
+
candidate.references?.key === from) {
|
|
182
|
+
candidate.references = { ...candidate.references, key: to };
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
return undefined;
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* `changeColumn`: the attributes the call names replace those of the column and the rest stay as they were
|
|
190
|
+
* (SQLite rebuilds the table that way; PostgreSQL also drops an unnamed default and MySQL resets what the call
|
|
191
|
+
* does not name). Returns the reason when the table has no such column.
|
|
192
|
+
*/
|
|
193
|
+
export function changeColumn(table, name, changes, named) {
|
|
194
|
+
const column = findColumn(table, name);
|
|
195
|
+
if (column === undefined) {
|
|
196
|
+
return `the column "${name}" does not exist at this point`;
|
|
197
|
+
}
|
|
198
|
+
if (named.has('type')) {
|
|
199
|
+
if (changes.type !== undefined) {
|
|
200
|
+
column.type = changes.type;
|
|
201
|
+
}
|
|
202
|
+
delete column.enumValues;
|
|
203
|
+
if (changes.enumValues !== undefined) {
|
|
204
|
+
column.enumValues = changes.enumValues;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
const keys = [
|
|
208
|
+
'allowNull',
|
|
209
|
+
'primaryKey',
|
|
210
|
+
'autoIncrement',
|
|
211
|
+
'defaultValue',
|
|
212
|
+
'references',
|
|
213
|
+
'onDelete',
|
|
214
|
+
'onUpdate',
|
|
215
|
+
'comment',
|
|
216
|
+
];
|
|
217
|
+
for (const key of keys) {
|
|
218
|
+
if (named.has(key)) {
|
|
219
|
+
const value = changes[key];
|
|
220
|
+
if (value === undefined) {
|
|
221
|
+
delete column[key];
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
column[key] = value;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
if (named.has('unique')) {
|
|
229
|
+
if (changes.unique === undefined) {
|
|
230
|
+
delete column.unique;
|
|
231
|
+
}
|
|
232
|
+
else {
|
|
233
|
+
column.unique = changes.unique;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
return undefined;
|
|
237
|
+
}
|
|
238
|
+
// ---------------------------------------------------------------------------
|
|
239
|
+
// Indexes and constraints
|
|
240
|
+
// ---------------------------------------------------------------------------
|
|
241
|
+
export function addIndex(table, entry) {
|
|
242
|
+
if (table.indexes.some((candidate) => candidate.name === entry.name)) {
|
|
243
|
+
return `an index named "${entry.name}" exists already`;
|
|
244
|
+
}
|
|
245
|
+
table.indexes.push(entry);
|
|
246
|
+
return undefined;
|
|
247
|
+
}
|
|
248
|
+
/** Removes an index by name, or by the list of columns it covers; returns the reason when none matches. */
|
|
249
|
+
export function removeIndex(table, nameOrFields) {
|
|
250
|
+
const at = table.indexes.findIndex((entry) => typeof nameOrFields === 'string'
|
|
251
|
+
? entry.name === nameOrFields
|
|
252
|
+
: sameColumns(entry.index.fields.map((field) => field.name), nameOrFields));
|
|
253
|
+
if (at === -1) {
|
|
254
|
+
return typeof nameOrFields === 'string'
|
|
255
|
+
? `no index named "${nameOrFields}" exists at this point`
|
|
256
|
+
: `no index on (${nameOrFields.join(', ')}) exists at this point`;
|
|
257
|
+
}
|
|
258
|
+
table.indexes.splice(at, 1);
|
|
259
|
+
return undefined;
|
|
260
|
+
}
|
|
261
|
+
/** The constraint that a database invents for a column definition (`users_email_key`, `users_pkey`, ...). */
|
|
262
|
+
function inlineConstraint(table, name) {
|
|
263
|
+
if (name === `${table.name}_pkey`) {
|
|
264
|
+
const columns = table.columns
|
|
265
|
+
.filter((column) => column.primaryKey === true)
|
|
266
|
+
.map((column) => column.name);
|
|
267
|
+
return columns.length === 0
|
|
268
|
+
? undefined
|
|
269
|
+
: { kind: 'primary key', columns, isInline: true };
|
|
270
|
+
}
|
|
271
|
+
for (const column of table.columns) {
|
|
272
|
+
if (name === `${table.name}_${column.name}_fkey` &&
|
|
273
|
+
column.references !== undefined) {
|
|
274
|
+
return { kind: 'foreign key', columns: [column.name], isInline: true };
|
|
275
|
+
}
|
|
276
|
+
if (name === `${table.name}_${column.name}_key` &&
|
|
277
|
+
column.unique !== undefined) {
|
|
278
|
+
return { kind: 'unique', columns: [column.name], isInline: true };
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
const mysqlForeign = new RegExp(`^${table.name.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}_ibfk_(\\d+)$`).exec(name);
|
|
282
|
+
if (mysqlForeign !== null) {
|
|
283
|
+
const referencing = table.columns.filter((column) => column.references !== undefined)[Number(mysqlForeign[1]) - 1];
|
|
284
|
+
return referencing === undefined
|
|
285
|
+
? undefined
|
|
286
|
+
: { kind: 'foreign key', columns: [referencing.name], isInline: true };
|
|
287
|
+
}
|
|
288
|
+
return undefined;
|
|
289
|
+
}
|
|
290
|
+
/** Adds a constraint to the list; the caller has applied its effect on the columns. */
|
|
291
|
+
export function addConstraint(table, constraint) {
|
|
292
|
+
if (table.constraints.some((candidate) => candidate.name === constraint.name) ||
|
|
293
|
+
table.indexes.some((entry) => entry.name === constraint.name)) {
|
|
294
|
+
return `a constraint or index named "${constraint.name}" exists already`;
|
|
295
|
+
}
|
|
296
|
+
table.constraints.push(constraint);
|
|
297
|
+
return undefined;
|
|
298
|
+
}
|
|
299
|
+
/** Removes a constraint by name together with what it enforced; returns the reason when none matches. */
|
|
300
|
+
export function removeConstraint(table, name) {
|
|
301
|
+
const named = table.constraints.find((candidate) => candidate.name === name);
|
|
302
|
+
const found = named ?? inlineConstraint(table, name);
|
|
303
|
+
if (found === undefined) {
|
|
304
|
+
return `no constraint named "${name}" exists at this point`;
|
|
305
|
+
}
|
|
306
|
+
table.constraints = table.constraints.filter((candidate) => candidate !== named);
|
|
307
|
+
for (const columnName of found.columns) {
|
|
308
|
+
const column = findColumn(table, columnName);
|
|
309
|
+
if (column === undefined) {
|
|
310
|
+
continue;
|
|
311
|
+
}
|
|
312
|
+
if (found.kind === 'primary key') {
|
|
313
|
+
delete column.primaryKey;
|
|
314
|
+
delete column.autoIncrement;
|
|
315
|
+
}
|
|
316
|
+
else if (found.kind === 'foreign key') {
|
|
317
|
+
delete column.references;
|
|
318
|
+
delete column.onDelete;
|
|
319
|
+
delete column.onUpdate;
|
|
320
|
+
}
|
|
321
|
+
else if (found.kind === 'unique' && found.isInline === true) {
|
|
322
|
+
delete column.unique;
|
|
323
|
+
}
|
|
324
|
+
else if (found.kind === 'default') {
|
|
325
|
+
delete column.defaultValue;
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
return undefined;
|
|
329
|
+
}
|
|
330
|
+
//# sourceMappingURL=sequelizeMigrationState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sequelizeMigrationState.js","sourceRoot":"","sources":["../../src/parsers/sequelizeMigrationState.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type Ctx } from './sequelizeCollect.js';
|
|
2
|
+
import type { FileInfo, Project, RawModel } from './sequelizeModel.js';
|
|
3
|
+
/**
|
|
4
|
+
* True when the file is a migration: it has an `up` function that works on a query interface. The text test
|
|
5
|
+
* keeps ordinary models (which never call `queryInterface` or `createTable`) out of the tree walk.
|
|
6
|
+
*/
|
|
7
|
+
export declare function isMigrationFile(file: FileInfo, ctx: Ctx): boolean;
|
|
8
|
+
/** Migration files in the order they run: by file name, as `sequelize-cli` (umzug) sorts them. */
|
|
9
|
+
export declare function orderMigrationFiles(files: readonly FileInfo[]): FileInfo[];
|
|
10
|
+
/**
|
|
11
|
+
* Replays the `up` functions of the migration files and returns one model per table that exists at the end.
|
|
12
|
+
* Warnings go to `project.warnings`.
|
|
13
|
+
*/
|
|
14
|
+
export declare function replayMigrations(files: readonly FileInfo[], project: Project): RawModel[];
|