@forestadmin/datasource-sql 1.7.36 → 1.7.38
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.
|
@@ -5,6 +5,8 @@ export default class Introspector {
|
|
|
5
5
|
static introspect(sequelize: Sequelize, logger?: Logger): Promise<Table[]>;
|
|
6
6
|
/** Get names of all tables in the public schema of the db */
|
|
7
7
|
private static getTableNames;
|
|
8
|
+
private static getDefaultSchema;
|
|
9
|
+
private static getTableIdentifier;
|
|
8
10
|
/** Instrospect a single table */
|
|
9
11
|
private static getTable;
|
|
10
12
|
private static getColumn;
|
|
@@ -19,20 +19,60 @@ class Introspector {
|
|
|
19
19
|
const tableIdentifiers = await sequelize
|
|
20
20
|
.getQueryInterface()
|
|
21
21
|
.showAllTables();
|
|
22
|
+
const requestedSchema = sequelize.options.schema || this.getDefaultSchema(sequelize);
|
|
22
23
|
// Sometimes sequelize returns only strings,
|
|
23
24
|
// and sometimes objects with a tableName and schema property.
|
|
24
25
|
// @see https://github.com/sequelize/sequelize/blob/main/src/dialects/mariadb/query.js#L295
|
|
25
|
-
return tableIdentifiers
|
|
26
|
+
return (tableIdentifiers
|
|
27
|
+
.map((tableIdentifier) => typeof tableIdentifier === 'string'
|
|
28
|
+
? { tableName: tableIdentifier, schema: requestedSchema }
|
|
29
|
+
: {
|
|
30
|
+
schema: tableIdentifier.schema || requestedSchema,
|
|
31
|
+
tableName: tableIdentifier.tableName,
|
|
32
|
+
})
|
|
33
|
+
// MSSQL returns all tables, not filtered by schema
|
|
34
|
+
.filter(identifier => identifier.schema === requestedSchema));
|
|
35
|
+
}
|
|
36
|
+
static getDefaultSchema(sequelize) {
|
|
37
|
+
switch (sequelize.getDialect()) {
|
|
38
|
+
case 'postgres':
|
|
39
|
+
return 'public';
|
|
40
|
+
case 'mssql':
|
|
41
|
+
return 'dbo';
|
|
42
|
+
// MariaDB returns the database name as "schema" in table identifiers
|
|
43
|
+
case 'mariadb':
|
|
44
|
+
case 'mysql':
|
|
45
|
+
return sequelize.getDatabaseName();
|
|
46
|
+
default:
|
|
47
|
+
return undefined;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
static getTableIdentifier(tableIdentifier, sequelize) {
|
|
51
|
+
switch (sequelize.getDialect()) {
|
|
52
|
+
case 'postgres':
|
|
53
|
+
case 'mssql':
|
|
54
|
+
case 'sqlite':
|
|
55
|
+
return tableIdentifier;
|
|
56
|
+
case 'mariadb':
|
|
57
|
+
case 'mysql':
|
|
58
|
+
default:
|
|
59
|
+
return { tableName: tableIdentifier.tableName };
|
|
60
|
+
}
|
|
26
61
|
}
|
|
27
62
|
/** Instrospect a single table */
|
|
28
63
|
static async getTable(sequelize, logger, tableIdentifier) {
|
|
29
64
|
const queryInterface = sequelize.getQueryInterface();
|
|
65
|
+
// Sequelize is not consistent in the way it handles table identifiers either when it returns
|
|
66
|
+
// it, when it uses it internally, or when it is passed as an argument.
|
|
67
|
+
// Plus it has some bugs with schema handling in postgresql that forces us to be sure that
|
|
68
|
+
// the table identifier is correct on our side
|
|
69
|
+
const tableIdentifierForQuery = Introspector.getTableIdentifier(tableIdentifier, sequelize);
|
|
30
70
|
const [columnDescriptions, tableIndexes, tableReferences] = await Promise.all([
|
|
31
|
-
queryInterface.describeTable(
|
|
32
|
-
queryInterface.showIndex(
|
|
33
|
-
queryInterface.getForeignKeyReferencesForTable(
|
|
71
|
+
queryInterface.describeTable(tableIdentifierForQuery),
|
|
72
|
+
queryInterface.showIndex(tableIdentifierForQuery),
|
|
73
|
+
queryInterface.getForeignKeyReferencesForTable(tableIdentifierForQuery),
|
|
34
74
|
]);
|
|
35
|
-
await this.detectBrokenRelationship(
|
|
75
|
+
await this.detectBrokenRelationship(tableIdentifierForQuery, sequelize, tableReferences, logger);
|
|
36
76
|
const columns = await Promise.all(Object.entries(columnDescriptions).map(async ([name, description]) => {
|
|
37
77
|
const references = tableReferences.filter(
|
|
38
78
|
// There is a bug right now with sequelize on postgresql: returned association
|
|
@@ -43,8 +83,8 @@ class Introspector {
|
|
|
43
83
|
return this.getColumn(sequelize, logger, tableIdentifier, options);
|
|
44
84
|
}));
|
|
45
85
|
return {
|
|
46
|
-
name:
|
|
47
|
-
schema:
|
|
86
|
+
name: tableIdentifierForQuery.tableName,
|
|
87
|
+
schema: tableIdentifierForQuery.schema,
|
|
48
88
|
columns: columns.filter(Boolean),
|
|
49
89
|
unique: tableIndexes
|
|
50
90
|
.filter(i => i.unique || i.primary)
|
|
@@ -144,4 +184,4 @@ class Introspector {
|
|
|
144
184
|
}
|
|
145
185
|
}
|
|
146
186
|
exports.default = Introspector;
|
|
147
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50cm9zcGVjdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludHJvc3BlY3Rpb24vaW50cm9zcGVjdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EseUNBQTJEO0FBRTNELDBGQUFnRTtBQUNoRSxzRkFBNEQ7QUFVNUQsTUFBcUIsWUFBWTtJQUMvQixNQUFNLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFvQixFQUFFLE1BQWU7UUFDM0QsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQWlDLENBQUMsQ0FBQztRQUMvRSxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDaEYsTUFBTSxNQUFNLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTNDLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFN0IsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELDZEQUE2RDtJQUNyRCxNQUFNLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FDaEMsU0FBK0I7UUFFL0IsTUFBTSxnQkFBZ0IsR0FBdUMsTUFBTSxTQUFTO2FBQ3pFLGlCQUFpQixFQUFFO2FBQ25CLGFBQWEsRUFBRSxDQUFDO1FBRW5CLE1BQU0sZUFBZSxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVyRiw0Q0FBNEM7UUFDNUMsOERBQThEO1FBQzlELDJGQUEyRjtRQUMzRixPQUFPLENBQ0wsZ0JBQWdCO2FBQ2IsR0FBRyxDQUFDLENBQUMsZUFBa0QsRUFBRSxFQUFFLENBQzFELE9BQU8sZUFBZSxLQUFLLFFBQVE7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
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AbstractDataType, AbstractDataTypeConstructor, ColumnDescription, Logging, QueryInterface, QueryInterfaceOptions, QueryOptions, TableName } from 'sequelize/types';
|
|
1
|
+
import { AbstractDataType, AbstractDataTypeConstructor, ColumnDescription, Logging, QueryInterface, QueryInterfaceOptions, QueryOptions, Sequelize, TableName } from 'sequelize/types';
|
|
2
2
|
export interface SequelizeIndex {
|
|
3
3
|
name: string;
|
|
4
4
|
primary: boolean;
|
|
@@ -38,4 +38,9 @@ export interface QueryInterfaceExt extends QueryInterface {
|
|
|
38
38
|
schemaDelimiter?: string;
|
|
39
39
|
} & Logging)): Promise<Record<string, SequelizeColumn>>;
|
|
40
40
|
}
|
|
41
|
+
export interface SequelizeWithOptions extends Sequelize {
|
|
42
|
+
options: {
|
|
43
|
+
schema?: string;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
41
46
|
//# sourceMappingURL=type-overrides.d.ts.map
|