@forestadmin/datasource-sequelize 1.10.4 → 1.11.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/datasource.d.ts +3 -1
- package/dist/datasource.js +16 -2
- package/dist/index.d.ts +2 -1
- package/dist/index.js +3 -3
- package/dist/types.d.ts +4 -0
- package/dist/types.js +3 -0
- package/package.json +3 -3
package/dist/datasource.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { BaseDataSource, Logger } from '@forestadmin/datasource-toolkit';
|
|
2
2
|
import { Sequelize } from 'sequelize';
|
|
3
3
|
import SequelizeCollection from './collection';
|
|
4
|
+
import { SequelizeDatasourceOptions } from './types';
|
|
4
5
|
export default class SequelizeDataSource extends BaseDataSource<SequelizeCollection> {
|
|
5
6
|
/**
|
|
6
7
|
* We can't directly use the Sequelize version we install in the package.json
|
|
@@ -9,8 +10,9 @@ export default class SequelizeDataSource extends BaseDataSource<SequelizeCollect
|
|
|
9
10
|
* and use the customer sequelize version to deal with the data manipulation.
|
|
10
11
|
*/
|
|
11
12
|
protected sequelize: Sequelize;
|
|
12
|
-
constructor(sequelize: Sequelize, logger?: Logger);
|
|
13
|
+
constructor(sequelize: Sequelize, logger?: Logger, options?: SequelizeDatasourceOptions);
|
|
13
14
|
close(): Promise<void>;
|
|
14
15
|
protected createCollections(models: Sequelize['models'], logger?: Logger): void;
|
|
16
|
+
executeNativeQuery<R extends object>(connectionName: string, query: string, contextVariables?: {}): Promise<R[]>;
|
|
15
17
|
}
|
|
16
18
|
//# sourceMappingURL=datasource.d.ts.map
|
package/dist/datasource.js
CHANGED
|
@@ -4,9 +4,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const datasource_toolkit_1 = require("@forestadmin/datasource-toolkit");
|
|
7
|
+
const sequelize_1 = require("sequelize");
|
|
7
8
|
const collection_1 = __importDefault(require("./collection"));
|
|
8
9
|
class SequelizeDataSource extends datasource_toolkit_1.BaseDataSource {
|
|
9
|
-
constructor(sequelize, logger) {
|
|
10
|
+
constructor(sequelize, logger, options) {
|
|
10
11
|
super();
|
|
11
12
|
/**
|
|
12
13
|
* We can't directly use the Sequelize version we install in the package.json
|
|
@@ -21,6 +22,9 @@ class SequelizeDataSource extends datasource_toolkit_1.BaseDataSource {
|
|
|
21
22
|
throw new Error('Invalid (null) Sequelize models.');
|
|
22
23
|
this.sequelize = sequelize;
|
|
23
24
|
this.createCollections(this.sequelize.models, logger);
|
|
25
|
+
if (options?.liveQueryConnections) {
|
|
26
|
+
this.addNativeQueryConnection(options.liveQueryConnections, { instance: this.sequelize });
|
|
27
|
+
}
|
|
24
28
|
}
|
|
25
29
|
async close() {
|
|
26
30
|
await this.sequelize.close();
|
|
@@ -34,6 +38,16 @@ class SequelizeDataSource extends datasource_toolkit_1.BaseDataSource {
|
|
|
34
38
|
this.addCollection(collection);
|
|
35
39
|
});
|
|
36
40
|
}
|
|
41
|
+
async executeNativeQuery(connectionName, query, contextVariables = {}) {
|
|
42
|
+
if (!this.nativeQueryConnections[connectionName]) {
|
|
43
|
+
throw new Error(`Unknown connection name '${connectionName}'`);
|
|
44
|
+
}
|
|
45
|
+
return this.nativeQueryConnections[connectionName].instance.query(query, {
|
|
46
|
+
bind: contextVariables,
|
|
47
|
+
type: sequelize_1.QueryTypes.SELECT,
|
|
48
|
+
raw: true,
|
|
49
|
+
});
|
|
50
|
+
}
|
|
37
51
|
}
|
|
38
52
|
exports.default = SequelizeDataSource;
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kYXRhc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsd0VBQXlFO0FBQ3pFLHlDQUFrRDtBQUVsRCw4REFBK0M7QUFPL0MsTUFBcUIsbUJBQW9CLFNBQVEsbUNBQW1DO0lBU2xGLFlBQVksU0FBb0IsRUFBRSxNQUFlLEVBQUUsT0FBb0M7UUFDckYsS0FBSyxFQUFFLENBQUM7UUFUVjs7Ozs7V0FLRztRQUNPLGNBQVMsR0FBYyxJQUFJLENBQUM7UUFLcEMsSUFBSSxDQUFDLFNBQVM7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7UUFDdEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FBRTNFLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBRTNCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUV0RCxJQUFJLE9BQU8sRUFBRSxvQkFBb0IsRUFBRTtZQUNqQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsT0FBTyxDQUFDLG9CQUFvQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1NBQzNGO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUFLO1FBQ1QsTUFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFUyxpQkFBaUIsQ0FBQyxNQUEyQixFQUFFLE1BQWU7UUFDdEUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7WUFDbkIsMEJBQTBCO2FBQ3pCLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDOUQsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2YsTUFBTSxVQUFVLEdBQUcsSUFBSSxvQkFBbUIsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDNUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFUSxLQUFLLENBQUMsa0JBQWtCLENBQy9CLGNBQXNCLEVBQ3RCLEtBQWEsRUFDYixnQkFBZ0IsR0FBRyxFQUFFO1FBRXJCLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsY0FBYyxDQUFDLEVBQUU7WUFDaEQsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsY0FBYyxHQUFHLENBQUMsQ0FBQztTQUNoRTtRQUVELE9BQVEsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGNBQWMsQ0FBMkIsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUMxRixLQUFLLEVBQ0w7WUFDRSxJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLElBQUksRUFBRSxzQkFBVSxDQUFDLE1BQU07WUFDdkIsR0FBRyxFQUFFLElBQUk7U0FDVixDQUNGLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUF4REQsc0NBd0RDIn0=
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { DataSourceFactory } from '@forestadmin/datasource-toolkit';
|
|
2
2
|
import { Sequelize } from 'sequelize';
|
|
3
|
+
import { SequelizeDatasourceOptions } from './types';
|
|
3
4
|
export { default as SequelizeCollection } from './collection';
|
|
4
5
|
export { default as SequelizeDataSource } from './datasource';
|
|
5
6
|
export { default as TypeConverter } from './utils/type-converter';
|
|
6
|
-
export declare function createSequelizeDataSource(connection: Sequelize): DataSourceFactory;
|
|
7
|
+
export declare function createSequelizeDataSource(connection: Sequelize, options?: SequelizeDatasourceOptions): DataSourceFactory;
|
|
7
8
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -11,8 +11,8 @@ var datasource_2 = require("./datasource");
|
|
|
11
11
|
Object.defineProperty(exports, "SequelizeDataSource", { enumerable: true, get: function () { return __importDefault(datasource_2).default; } });
|
|
12
12
|
var type_converter_1 = require("./utils/type-converter");
|
|
13
13
|
Object.defineProperty(exports, "TypeConverter", { enumerable: true, get: function () { return __importDefault(type_converter_1).default; } });
|
|
14
|
-
function createSequelizeDataSource(connection) {
|
|
15
|
-
return async (logger) => new datasource_1.default(connection, logger);
|
|
14
|
+
function createSequelizeDataSource(connection, options) {
|
|
15
|
+
return async (logger) => new datasource_1.default(connection, logger, options);
|
|
16
16
|
}
|
|
17
17
|
exports.createSequelizeDataSource = createSequelizeDataSource;
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBR0EsOERBQStDO0FBRy9DLDJDQUE4RDtBQUFyRCxrSUFBQSxPQUFPLE9BQXVCO0FBQ3ZDLDJDQUE4RDtBQUFyRCxrSUFBQSxPQUFPLE9BQXVCO0FBQ3ZDLHlEQUFrRTtBQUF6RCxnSUFBQSxPQUFPLE9BQWlCO0FBRWpDLFNBQWdCLHlCQUF5QixDQUN2QyxVQUFxQixFQUNyQixPQUFvQztJQUVwQyxPQUFPLEtBQUssRUFBRSxNQUFjLEVBQUUsRUFBRSxDQUFDLElBQUksb0JBQW1CLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztBQUN4RixDQUFDO0FBTEQsOERBS0MifQ==
|
package/dist/types.d.ts
ADDED
package/dist/types.js
ADDED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forestadmin/datasource-sequelize",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.11.0",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"license": "GPL-3.0",
|
|
6
6
|
"publishConfig": {
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"directory": "packages/datasource-sequelize"
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@forestadmin/datasource-toolkit": "1.
|
|
15
|
+
"@forestadmin/datasource-toolkit": "1.44.0"
|
|
16
16
|
},
|
|
17
17
|
"files": [
|
|
18
18
|
"dist/**/*.js",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"test": "jest"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"sequelize": "^6.
|
|
29
|
+
"sequelize": "^6.37.5"
|
|
30
30
|
},
|
|
31
31
|
"peerDependencies": {
|
|
32
32
|
"sequelize": ">= 6.12.0 < 7"
|