@forestadmin/datasource-sql 1.14.31 → 1.16.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/dist/index.d.ts +2 -4
- package/dist/index.js +7 -5
- package/dist/orm-builder/model.d.ts +2 -1
- package/dist/orm-builder/model.js +12 -4
- package/dist/types.d.ts +6 -0
- package/package.json +4 -4
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { PlainConnectionOptions, PlainConnectionOptionsOrUri, SslMode } from './types';
|
|
1
|
+
import type { PlainConnectionOptions, PlainConnectionOptionsOrUri, SqlDatasourceOptions, SslMode } from './types';
|
|
2
2
|
import type { DataSourceFactory, Logger } from '@forestadmin/datasource-toolkit';
|
|
3
3
|
import { Sequelize } from 'sequelize';
|
|
4
4
|
import listCollectionsFromIntrospection from './introspection/list-collections-from-introspection';
|
|
@@ -6,9 +6,7 @@ import { Introspection, SupportedIntrospection, Table } from './introspection/ty
|
|
|
6
6
|
export declare function introspect(uriOrOptions: PlainConnectionOptionsOrUri, logger?: Logger): Promise<Introspection>;
|
|
7
7
|
export declare function buildDisconnectedSequelizeInstance(introspection: SupportedIntrospection, logger: Logger): Promise<Sequelize>;
|
|
8
8
|
export declare function buildSequelizeInstance(uriOrOptions: PlainConnectionOptionsOrUri, logger: Logger, introspection?: SupportedIntrospection): Promise<Sequelize>;
|
|
9
|
-
export declare function createSqlDataSource(uriOrOptions: PlainConnectionOptionsOrUri, options?:
|
|
10
|
-
introspection?: SupportedIntrospection;
|
|
11
|
-
}): DataSourceFactory;
|
|
9
|
+
export declare function createSqlDataSource(uriOrOptions: PlainConnectionOptionsOrUri, options?: SqlDatasourceOptions): DataSourceFactory;
|
|
12
10
|
/** Preprocess the connection options so that they can be cached for faster connections */
|
|
13
11
|
export declare function preprocessOptions(uriOrOptions: PlainConnectionOptionsOrUri): Promise<PlainConnectionOptions>;
|
|
14
12
|
export * from './connection/errors';
|
package/dist/index.js
CHANGED
|
@@ -40,10 +40,10 @@ async function introspect(uriOrOptions, logger) {
|
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
42
|
exports.introspect = introspect;
|
|
43
|
-
async function buildModelsAndRelations(sequelize, logger, introspection) {
|
|
43
|
+
async function buildModelsAndRelations(sequelize, logger, introspection, displaySoftDeleted) {
|
|
44
44
|
try {
|
|
45
45
|
const latestIntrospection = await introspector_1.default.migrateOrIntrospect(sequelize, logger, introspection);
|
|
46
|
-
model_1.default.defineModels(sequelize, logger, latestIntrospection);
|
|
46
|
+
model_1.default.defineModels(sequelize, logger, latestIntrospection, displaySoftDeleted);
|
|
47
47
|
relations_1.default.defineRelations(sequelize, logger, latestIntrospection);
|
|
48
48
|
return latestIntrospection;
|
|
49
49
|
}
|
|
@@ -69,8 +69,10 @@ exports.buildSequelizeInstance = buildSequelizeInstance;
|
|
|
69
69
|
function createSqlDataSource(uriOrOptions, options) {
|
|
70
70
|
return async (logger) => {
|
|
71
71
|
const sequelize = await (0, connection_1.default)(new connection_options_1.default(uriOrOptions, logger));
|
|
72
|
-
const latestIntrospection = await buildModelsAndRelations(sequelize, logger, options?.introspection);
|
|
73
|
-
return new sql_datasource_1.default(new datasource_sequelize_1.SequelizeDataSource(sequelize, logger
|
|
72
|
+
const latestIntrospection = await buildModelsAndRelations(sequelize, logger, options?.introspection, options?.displaySoftDeleted);
|
|
73
|
+
return new sql_datasource_1.default(new datasource_sequelize_1.SequelizeDataSource(sequelize, logger, {
|
|
74
|
+
liveQueryConnections: options?.liveQueryConnections,
|
|
75
|
+
}), latestIntrospection.views);
|
|
74
76
|
};
|
|
75
77
|
}
|
|
76
78
|
exports.createSqlDataSource = createSqlDataSource;
|
|
@@ -80,4 +82,4 @@ async function preprocessOptions(uriOrOptions) {
|
|
|
80
82
|
}
|
|
81
83
|
exports.preprocessOptions = preprocessOptions;
|
|
82
84
|
__exportStar(require("./connection/errors"), exports);
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRQSw0RUFBd0U7QUFHeEUsOERBQW1DO0FBQ25DLHlGQUFnRTtBQUNoRSx1RkFBOEQ7QUFDOUQsaUZBQXdEO0FBQ3hELGdGQUF3RDtBQUN4RCw4SEFBbUc7QUErRzFGLDJDQS9HRiw2Q0FBZ0MsQ0ErR0U7QUF4R3pDLGdFQUErQztBQUMvQyx3RUFBc0Q7QUFFL0MsS0FBSyxVQUFVLFVBQVUsQ0FDOUIsWUFBeUMsRUFDekMsTUFBZTtJQUVmLE1BQU0sT0FBTyxHQUFHLElBQUksNEJBQWlCLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzVELElBQUksU0FBb0IsQ0FBQztJQUV6QixJQUFJO1FBQ0YsU0FBUyxHQUFHLE1BQU0sSUFBQSxvQkFBTyxFQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRW5DLE9BQU8sTUFBTSxzQkFBWSxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7S0FDekQ7WUFBUztRQUNSLE1BQU0sU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDO0tBQzFCO0FBQ0gsQ0FBQztBQWRELGdDQWNDO0FBRUQsS0FBSyxVQUFVLHVCQUF1QixDQUNwQyxTQUFvQixFQUNwQixNQUFjLEVBQ2QsYUFBcUMsRUFDckMsa0JBQStEO0lBRS9ELElBQUk7UUFDRixNQUFNLG1CQUFtQixHQUFHLE1BQU0sc0JBQVksQ0FBQyxtQkFBbUIsQ0FDaEUsU0FBUyxFQUNULE1BQU0sRUFDTixhQUFhLENBQ2QsQ0FBQztRQUNGLGVBQVksQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxtQkFBbUIsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3RGLG1CQUFlLENBQUMsZUFBZSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztRQUV4RSxPQUFPLG1CQUFtQixDQUFDO0tBQzVCO0lBQUMsT0FBTyxLQUFLLEVBQUU7UUFDZCxNQUFNLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUN6QixNQUFNLEtBQUssQ0FBQztLQUNiO0FBQ0gsQ0FBQztBQUVNLEtBQUssVUFBVSxrQ0FBa0MsQ0FDdEQsYUFBcUMsRUFDckMsTUFBYztJQUVkLE1BQU0sT0FBTyxHQUFHLElBQUksNEJBQWlCLENBQ25DLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsRUFDN0QsTUFBTSxDQUNQLENBQUM7SUFDRixNQUFNLFNBQVMsR0FBRywyQkFBZ0IsQ0FBQyxLQUFLLENBQUMsTUFBTSxPQUFPLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxDQUFDO0lBQ3BGLE1BQU0sdUJBQXVCLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxhQUFhLENBQUMsQ0FBQztJQUVoRSxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDO0FBWkQsZ0ZBWUM7QUFFTSxLQUFLLFVBQVUsc0JBQXNCLENBQzFDLFlBQXlDLEVBQ3pDLE1BQWMsRUFDZCxhQUFzQztJQUV0QyxNQUFNLE9BQU8sR0FBRyxJQUFJLDRCQUFpQixDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM1RCxNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUEsb0JBQU8sRUFBQyxPQUFPLENBQUMsQ0FBQztJQUN6QyxNQUFNLHVCQUF1QixDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFFaEUsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQztBQVZELHdEQVVDO0FBRUQsU0FBZ0IsbUJBQW1CLENBQ2pDLFlBQXlDLEVBQ3pDLE9BQThCO0lBRTlCLE9BQU8sS0FBSyxFQUFFLE1BQWMsRUFBRSxFQUFFO1FBQzlCLE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBQSxvQkFBTyxFQUFDLElBQUksNEJBQWlCLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDN0UsTUFBTSxtQkFBbUIsR0FBRyxNQUFNLHVCQUF1QixDQUN2RCxTQUFTLEVBQ1QsTUFBTSxFQUNOLE9BQU8sRUFBRSxhQUFhLEVBQ3RCLE9BQU8sRUFBRSxrQkFBa0IsQ0FDNUIsQ0FBQztRQUVGLE9BQU8sSUFBSSx3QkFBYSxDQUN0QixJQUFJLDBDQUFtQixDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUU7WUFDekMsb0JBQW9CLEVBQUUsT0FBTyxFQUFFLG9CQUFvQjtTQUNwRCxDQUFDLEVBQ0YsbUJBQW1CLENBQUMsS0FBSyxDQUMxQixDQUFDO0lBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQXBCRCxrREFvQkM7QUFFRCwwRkFBMEY7QUFDbkYsS0FBSyxVQUFVLGlCQUFpQixDQUNyQyxZQUF5QztJQUV6QyxPQUFPLElBQUksNEJBQWlCLENBQUMsWUFBWSxDQUFDLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztBQUN4RSxDQUFDO0FBSkQsOENBSUM7QUFFRCxzREFBb0MifQ==
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { Logger } from '@forestadmin/datasource-toolkit';
|
|
2
2
|
import { Sequelize } from 'sequelize';
|
|
3
3
|
import { LatestIntrospection } from '../introspection/types';
|
|
4
|
+
import { SqlDatasourceOptions } from '../types';
|
|
4
5
|
export default class ModelBuilder {
|
|
5
|
-
static defineModels(sequelize: Sequelize, logger: Logger, introspection: LatestIntrospection): void;
|
|
6
|
+
static defineModels(sequelize: Sequelize, logger: Logger, introspection: LatestIntrospection, displaySoftDeleted?: SqlDatasourceOptions['displaySoftDeleted']): void;
|
|
6
7
|
private static defineModelFromTable;
|
|
7
8
|
private static buildModelAttributes;
|
|
8
9
|
/**
|
|
@@ -15,15 +15,18 @@ const autoTimestampFieldsMap = {
|
|
|
15
15
|
deleted_at: 'deletedAt',
|
|
16
16
|
};
|
|
17
17
|
class ModelBuilder {
|
|
18
|
-
static defineModels(sequelize, logger, introspection) {
|
|
18
|
+
static defineModels(sequelize, logger, introspection, displaySoftDeleted) {
|
|
19
19
|
for (const table of introspection.tables) {
|
|
20
|
-
|
|
20
|
+
const shouldDisplaySoftDeleted = displaySoftDeleted === true ||
|
|
21
|
+
(Array.isArray(displaySoftDeleted) &&
|
|
22
|
+
displaySoftDeleted.some(tableName => table.name === tableName));
|
|
23
|
+
this.defineModelFromTable(sequelize, logger, table, shouldDisplaySoftDeleted);
|
|
21
24
|
}
|
|
22
25
|
for (const table of introspection.views) {
|
|
23
26
|
this.defineModelFromTable(sequelize, logger, { ...table, view: true });
|
|
24
27
|
}
|
|
25
28
|
}
|
|
26
|
-
static defineModelFromTable(sequelize, logger, table) {
|
|
29
|
+
static defineModelFromTable(sequelize, logger, table, displaySoftDeleted) {
|
|
27
30
|
const hasTimestamps = this.hasTimestamps(table);
|
|
28
31
|
const isParanoid = this.isParanoid(table);
|
|
29
32
|
const dialect = sequelize.getDialect();
|
|
@@ -36,6 +39,11 @@ class ModelBuilder {
|
|
|
36
39
|
schema: table.schema,
|
|
37
40
|
...this.getAutoTimestampFieldsOverride(table),
|
|
38
41
|
});
|
|
42
|
+
if (displaySoftDeleted) {
|
|
43
|
+
model.beforeFind(option => {
|
|
44
|
+
option.paranoid = false;
|
|
45
|
+
});
|
|
46
|
+
}
|
|
39
47
|
// @see https://sequelize.org/docs/v6/other-topics/legacy/#primary-keys
|
|
40
48
|
// Tell sequelize NOT to invent primary keys when we don't provide them.
|
|
41
49
|
// (Note that this does not seem to work)
|
|
@@ -131,4 +139,4 @@ class ModelBuilder {
|
|
|
131
139
|
}
|
|
132
140
|
}
|
|
133
141
|
exports.default = ModelBuilder;
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3JtLWJ1aWxkZXIvbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSx5Q0FBK0Q7QUFJL0QsOEVBQTREO0FBTTVELE1BQU0sZUFBZSxHQUFHLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO0FBQ3BELE1BQU0sZUFBZSxHQUFHLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO0FBQ3BELE1BQU0sZUFBZSxHQUFHLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO0FBQ3BELE1BQU0sZUFBZSxHQUFHLENBQUMsR0FBRyxlQUFlLEVBQUUsR0FBRyxlQUFlLENBQUMsQ0FBQztBQUVqRSxNQUFNLHNCQUFzQixHQUFHO0lBQzdCLFVBQVUsRUFBRSxXQUFXO0lBQ3ZCLFVBQVUsRUFBRSxXQUFXO0lBQ3ZCLFVBQVUsRUFBRSxXQUFXO0NBQ3hCLENBQUM7QUFFRixNQUFxQixZQUFZO0lBQy9CLE1BQU0sQ0FBQyxZQUFZLENBQ2pCLFNBQW9CLEVBQ3BCLE1BQWMsRUFDZCxhQUFrQyxFQUNsQyxrQkFBK0Q7UUFFL0QsS0FBSyxNQUFNLEtBQUssSUFBSSxhQUFhLENBQUMsTUFBTSxFQUFFO1lBQ3hDLE1BQU0sd0JBQXdCLEdBQzVCLGtCQUFrQixLQUFLLElBQUk7Z0JBQzNCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztvQkFDaEMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBRXBFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO1NBQy9FO1FBRUQsS0FBSyxNQUFNLEtBQUssSUFBSSxhQUFhLENBQUMsS0FBSyxFQUFFO1lBQ3ZDLElBQUksQ0FB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
|
package/dist/types.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Options } from 'sequelize/types';
|
|
2
2
|
import { ConnectConfig } from 'ssh2';
|
|
3
|
+
import { SupportedIntrospection } from './introspection/types';
|
|
3
4
|
type SupportedSequelizeOptions = Pick<Options, 'database' | 'dialect' | 'dialectModule' | 'dialectModulePath' | 'dialectOptions' | 'host' | 'minifyAliases' | 'native' | 'password' | 'pool' | 'port' | 'protocol' | 'replication' | 'schema' | 'ssl' | 'storage' | 'username'>;
|
|
4
5
|
export type ProxyOptions = {
|
|
5
6
|
userId?: string;
|
|
@@ -19,5 +20,10 @@ export type PlainConnectionOptions = SupportedSequelizeOptions & {
|
|
|
19
20
|
};
|
|
20
21
|
export type PlainConnectionOptionsOrUri = PlainConnectionOptions | string;
|
|
21
22
|
export type SslMode = 'preferred' | 'disabled' | 'required' | 'verify' | 'manual';
|
|
23
|
+
export type SqlDatasourceOptions = {
|
|
24
|
+
introspection?: SupportedIntrospection;
|
|
25
|
+
displaySoftDeleted?: string[] | true;
|
|
26
|
+
liveQueryConnections?: string;
|
|
27
|
+
};
|
|
22
28
|
export {};
|
|
23
29
|
//# sourceMappingURL=types.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forestadmin/datasource-sql",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.16.0",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"license": "GPL-3.0",
|
|
6
6
|
"publishConfig": {
|
|
@@ -12,10 +12,10 @@
|
|
|
12
12
|
"directory": "packages/datasource-sql"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@forestadmin/datasource-sequelize": "1.
|
|
16
|
-
"@forestadmin/datasource-toolkit": "1.
|
|
15
|
+
"@forestadmin/datasource-sequelize": "1.11.0",
|
|
16
|
+
"@forestadmin/datasource-toolkit": "1.44.0",
|
|
17
17
|
"pluralize": "^8.0.0",
|
|
18
|
-
"sequelize": "^6.
|
|
18
|
+
"sequelize": "^6.37.5",
|
|
19
19
|
"socks": "^2.7.1",
|
|
20
20
|
"ssh2": "^1.14.0",
|
|
21
21
|
"@types/ssh2": "^1.11.11"
|