itrm-tools 1.0.2 → 1.0.4
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/api/check/CheckableAPIRequest.d.ts +6 -3
- package/dist/api/check/CheckableAPIRequest.js +33 -23
- package/dist/api/check/CheckableAPIRequest.js.map +1 -1
- package/dist/api/check/request/CheckableDeleteRequest.d.ts +1 -2
- package/dist/api/check/request/CheckableDeleteRequest.js +2 -2
- package/dist/api/check/request/CheckableDeleteRequest.js.map +1 -1
- package/dist/api/check/request/CheckableGetRequest.d.ts +1 -2
- package/dist/api/check/request/CheckableGetRequest.js +2 -2
- package/dist/api/check/request/CheckableGetRequest.js.map +1 -1
- package/dist/api/check/request/CheckablePostRequest.d.ts +1 -2
- package/dist/api/check/request/CheckablePostRequest.js +2 -2
- package/dist/api/check/request/CheckablePostRequest.js.map +1 -1
- package/dist/api/check/request/CheckablePutRequest.d.ts +1 -2
- package/dist/api/check/request/CheckablePutRequest.js +2 -2
- package/dist/api/check/request/CheckablePutRequest.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/sequelize/SequelizeConnection.d.ts +15 -0
- package/dist/sequelize/SequelizeConnection.js +20 -0
- package/dist/sequelize/SequelizeConnection.js.map +1 -0
- package/dist/sequelize/SequelizeModelManager.d.ts +19 -0
- package/dist/sequelize/SequelizeModelManager.js +37 -0
- package/dist/sequelize/SequelizeModelManager.js.map +1 -0
- package/package.json +5 -1
|
@@ -3,8 +3,11 @@ import { APIRequest, APIRequestConfig, RequestMethod } from "../APIRequest";
|
|
|
3
3
|
import { APIChecker, APICheckResult } from "./APIChecker";
|
|
4
4
|
export declare abstract class CheckableAPIRequest extends APIRequest {
|
|
5
5
|
private checkers;
|
|
6
|
-
constructor(method: RequestMethod, config: APIRequestConfig
|
|
6
|
+
constructor(method: RequestMethod, config: APIRequestConfig);
|
|
7
|
+
addChecker(checker: APIChecker): void;
|
|
7
8
|
check(req: Request, res: Response, next: NextFunction): Promise<void | Response<any, Record<string, any>>>;
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
private reject;
|
|
10
|
+
protected applyChecks(req: Request): Promise<APICheckResult>;
|
|
11
|
+
private applyCheck;
|
|
12
|
+
protected abstract getCheckConfiguration(): any;
|
|
10
13
|
}
|
|
@@ -13,41 +13,51 @@ exports.CheckableAPIRequest = void 0;
|
|
|
13
13
|
const APIRequest_1 = require("../APIRequest");
|
|
14
14
|
const APIService_1 = require("../APIService");
|
|
15
15
|
class CheckableAPIRequest extends APIRequest_1.APIRequest {
|
|
16
|
-
constructor(method, config
|
|
16
|
+
constructor(method, config) {
|
|
17
17
|
super(method, config);
|
|
18
|
-
this.checkers =
|
|
18
|
+
this.checkers = [];
|
|
19
|
+
}
|
|
20
|
+
addChecker(checker) {
|
|
21
|
+
this.checkers.push(checker);
|
|
19
22
|
}
|
|
20
23
|
check(req, res, next) {
|
|
21
24
|
return __awaiter(this, void 0, void 0, function* () {
|
|
22
25
|
let request = APIService_1.ITRMAPIServiceGlobal.requests[req.method + "_" + req.route.path];
|
|
23
|
-
let result = yield request.applyChecks(
|
|
26
|
+
let result = yield request.applyChecks(req);
|
|
24
27
|
if (result.approved)
|
|
25
|
-
return next();
|
|
26
|
-
|
|
27
|
-
return res.status(result.rejection.code).json(result.rejection.payload);
|
|
28
|
-
return res.status(401).json({ message: 'Unknown reason' });
|
|
28
|
+
return yield next();
|
|
29
|
+
return yield request.reject(res, result);
|
|
29
30
|
});
|
|
30
31
|
}
|
|
31
|
-
|
|
32
|
+
reject(res, result) {
|
|
33
|
+
if (result.rejection)
|
|
34
|
+
return res.status(result.rejection.code).json(result.rejection.payload);
|
|
35
|
+
return res.status(401).json({ message: 'Unknown reason' });
|
|
36
|
+
}
|
|
37
|
+
applyChecks(req) {
|
|
32
38
|
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
-
let
|
|
34
|
-
|
|
35
|
-
if (
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
return result;
|
|
39
|
-
}
|
|
40
|
-
else
|
|
41
|
-
return {
|
|
42
|
-
approved: false,
|
|
43
|
-
rejection: {
|
|
44
|
-
code: 500,
|
|
45
|
-
payload: { message: 'Invalid check configuration' }
|
|
46
|
-
}
|
|
47
|
-
};
|
|
39
|
+
for (let checker of this.checkers) {
|
|
40
|
+
let result = yield this.applyCheck(checker, req);
|
|
41
|
+
if (!result.approved)
|
|
42
|
+
return result;
|
|
43
|
+
}
|
|
48
44
|
return { approved: true };
|
|
49
45
|
});
|
|
50
46
|
}
|
|
47
|
+
applyCheck(checker, req) {
|
|
48
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
let config = this.getCheckConfiguration();
|
|
50
|
+
if (checker.isValidConfiguration(config))
|
|
51
|
+
return yield checker.apply(config, req);
|
|
52
|
+
return {
|
|
53
|
+
approved: false,
|
|
54
|
+
rejection: {
|
|
55
|
+
code: 500,
|
|
56
|
+
payload: { message: 'Invalid check configuration' }
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
});
|
|
60
|
+
}
|
|
51
61
|
}
|
|
52
62
|
exports.CheckableAPIRequest = CheckableAPIRequest;
|
|
53
63
|
//# sourceMappingURL=CheckableAPIRequest.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckableAPIRequest.js","sourceRoot":"","sources":["../../../src/api/check/CheckableAPIRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,8CAA4E;AAC5E,8CAAqD;AAGrD,MAAsB,mBAAoB,SAAQ,uBAAU;IAGxD,YAAY,MAAqB,EAAE,MAAwB
|
|
1
|
+
{"version":3,"file":"CheckableAPIRequest.js","sourceRoot":"","sources":["../../../src/api/check/CheckableAPIRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,8CAA4E;AAC5E,8CAAqD;AAGrD,MAAsB,mBAAoB,SAAQ,uBAAU;IAGxD,YAAY,MAAqB,EAAE,MAAwB;QACvD,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAHlB,aAAQ,GAAiB,EAAE,CAAC;IAIpC,CAAC;IAEM,UAAU,CAAC,OAAmB;QACjC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAEY,KAAK,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB;;YAC9D,IAAI,OAAO,GAAwB,iCAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACpG,IAAI,MAAM,GAAmB,MAAM,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YAC3D,IAAI,MAAM,CAAC,QAAQ;gBACf,OAAO,MAAM,IAAI,EAAE,CAAC;YACxB,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;KAAA;IAEO,MAAM,CAAC,GAAa,EAAE,MAAsB;QAChD,IAAI,MAAM,CAAC,SAAS;YAChB,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC5E,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAC/D,CAAC;IAEe,WAAW,CAAC,GAAY;;YACpC,KAAK,IAAI,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAC/B,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBACjD,IAAI,CAAC,MAAM,CAAC,QAAQ;oBAChB,OAAO,MAAM,CAAC;aACrB;YACD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC9B,CAAC;KAAA;IAEa,UAAU,CAAC,OAAmB,EAAE,GAAY;;YACtD,IAAI,MAAM,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC1C,IAAI,OAAO,CAAC,oBAAoB,CAAC,MAAM,CAAC;gBACpC,OAAO,MAAM,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC5C,OAAO;gBACH,QAAQ,EAAE,KAAK;gBACf,SAAS,EAAE;oBACP,IAAI,EAAE,GAAG;oBACT,OAAO,EAAE,EAAE,OAAO,EAAE,6BAA6B,EAAE;iBACtD;aACJ,CAAC;QACN,CAAC;KAAA;CAGJ;AAhDD,kDAgDC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { Express } from "express";
|
|
2
2
|
import { APIRequestConfig } from "../../APIRequest";
|
|
3
|
-
import { APIChecker } from "../APIChecker";
|
|
4
3
|
import { CheckableAPIRequest } from "../CheckableAPIRequest";
|
|
5
4
|
export declare abstract class CheckableDeleteRequest extends CheckableAPIRequest {
|
|
6
|
-
constructor(config: APIRequestConfig
|
|
5
|
+
constructor(config: APIRequestConfig);
|
|
7
6
|
init(app: Express): void;
|
|
8
7
|
}
|
|
@@ -4,8 +4,8 @@ exports.CheckableDeleteRequest = void 0;
|
|
|
4
4
|
const APIRequest_1 = require("../../APIRequest");
|
|
5
5
|
const CheckableAPIRequest_1 = require("../CheckableAPIRequest");
|
|
6
6
|
class CheckableDeleteRequest extends CheckableAPIRequest_1.CheckableAPIRequest {
|
|
7
|
-
constructor(config
|
|
8
|
-
super(APIRequest_1.RequestMethod.DELETE, config
|
|
7
|
+
constructor(config) {
|
|
8
|
+
super(APIRequest_1.RequestMethod.DELETE, config);
|
|
9
9
|
}
|
|
10
10
|
init(app) {
|
|
11
11
|
app.delete(this.path, this.check, this.process);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckableDeleteRequest.js","sourceRoot":"","sources":["../../../../src/api/check/request/CheckableDeleteRequest.ts"],"names":[],"mappings":";;;AACA,iDAAmE;
|
|
1
|
+
{"version":3,"file":"CheckableDeleteRequest.js","sourceRoot":"","sources":["../../../../src/api/check/request/CheckableDeleteRequest.ts"],"names":[],"mappings":";;;AACA,iDAAmE;AACnE,gEAA6D;AAE7D,MAAsB,sBAAuB,SAAQ,yCAAmB;IACpE,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAEM,IAAI,CAAC,GAAY;QACpB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;CACJ;AARD,wDAQC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { Express } from "express";
|
|
2
2
|
import { APIRequestConfig } from "../../APIRequest";
|
|
3
|
-
import { APIChecker } from "../APIChecker";
|
|
4
3
|
import { CheckableAPIRequest } from "../CheckableAPIRequest";
|
|
5
4
|
export declare abstract class CheckableGetRequest extends CheckableAPIRequest {
|
|
6
|
-
constructor(config: APIRequestConfig
|
|
5
|
+
constructor(config: APIRequestConfig);
|
|
7
6
|
init(app: Express): void;
|
|
8
7
|
}
|
|
@@ -4,8 +4,8 @@ exports.CheckableGetRequest = void 0;
|
|
|
4
4
|
const APIRequest_1 = require("../../APIRequest");
|
|
5
5
|
const CheckableAPIRequest_1 = require("../CheckableAPIRequest");
|
|
6
6
|
class CheckableGetRequest extends CheckableAPIRequest_1.CheckableAPIRequest {
|
|
7
|
-
constructor(config
|
|
8
|
-
super(APIRequest_1.RequestMethod.GET, config
|
|
7
|
+
constructor(config) {
|
|
8
|
+
super(APIRequest_1.RequestMethod.GET, config);
|
|
9
9
|
}
|
|
10
10
|
init(app) {
|
|
11
11
|
app.get(this.path, this.check, this.process);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckableGetRequest.js","sourceRoot":"","sources":["../../../../src/api/check/request/CheckableGetRequest.ts"],"names":[],"mappings":";;;AACA,iDAAmE;
|
|
1
|
+
{"version":3,"file":"CheckableGetRequest.js","sourceRoot":"","sources":["../../../../src/api/check/request/CheckableGetRequest.ts"],"names":[],"mappings":";;;AACA,iDAAmE;AACnE,gEAA6D;AAE7D,MAAsB,mBAAoB,SAAQ,yCAAmB;IACjE,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAEM,IAAI,CAAC,GAAY;QACpB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;CACJ;AARD,kDAQC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { Express } from "express";
|
|
2
2
|
import { APIRequestConfig } from "../../APIRequest";
|
|
3
|
-
import { APIChecker } from "../APIChecker";
|
|
4
3
|
import { CheckableAPIRequest } from "../CheckableAPIRequest";
|
|
5
4
|
export declare abstract class CheckablePostRequest extends CheckableAPIRequest {
|
|
6
|
-
constructor(config: APIRequestConfig
|
|
5
|
+
constructor(config: APIRequestConfig);
|
|
7
6
|
init(app: Express): void;
|
|
8
7
|
}
|
|
@@ -4,8 +4,8 @@ exports.CheckablePostRequest = void 0;
|
|
|
4
4
|
const APIRequest_1 = require("../../APIRequest");
|
|
5
5
|
const CheckableAPIRequest_1 = require("../CheckableAPIRequest");
|
|
6
6
|
class CheckablePostRequest extends CheckableAPIRequest_1.CheckableAPIRequest {
|
|
7
|
-
constructor(config
|
|
8
|
-
super(APIRequest_1.RequestMethod.POST, config
|
|
7
|
+
constructor(config) {
|
|
8
|
+
super(APIRequest_1.RequestMethod.POST, config);
|
|
9
9
|
}
|
|
10
10
|
init(app) {
|
|
11
11
|
app.post(this.path, this.check, this.process);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckablePostRequest.js","sourceRoot":"","sources":["../../../../src/api/check/request/CheckablePostRequest.ts"],"names":[],"mappings":";;;AACA,iDAAmE;
|
|
1
|
+
{"version":3,"file":"CheckablePostRequest.js","sourceRoot":"","sources":["../../../../src/api/check/request/CheckablePostRequest.ts"],"names":[],"mappings":";;;AACA,iDAAmE;AACnE,gEAA6D;AAE7D,MAAsB,oBAAqB,SAAQ,yCAAmB;IAClE,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAEM,IAAI,CAAC,GAAY;QACpB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;CACJ;AARD,oDAQC"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { Express } from "express";
|
|
2
2
|
import { APIRequestConfig } from "../../APIRequest";
|
|
3
|
-
import { APIChecker } from "../APIChecker";
|
|
4
3
|
import { CheckableAPIRequest } from "../CheckableAPIRequest";
|
|
5
4
|
export declare abstract class CheckablePutRequest extends CheckableAPIRequest {
|
|
6
|
-
constructor(config: APIRequestConfig
|
|
5
|
+
constructor(config: APIRequestConfig);
|
|
7
6
|
init(app: Express): void;
|
|
8
7
|
}
|
|
@@ -4,8 +4,8 @@ exports.CheckablePutRequest = void 0;
|
|
|
4
4
|
const APIRequest_1 = require("../../APIRequest");
|
|
5
5
|
const CheckableAPIRequest_1 = require("../CheckableAPIRequest");
|
|
6
6
|
class CheckablePutRequest extends CheckableAPIRequest_1.CheckableAPIRequest {
|
|
7
|
-
constructor(config
|
|
8
|
-
super(APIRequest_1.RequestMethod.PUT, config
|
|
7
|
+
constructor(config) {
|
|
8
|
+
super(APIRequest_1.RequestMethod.PUT, config);
|
|
9
9
|
}
|
|
10
10
|
init(app) {
|
|
11
11
|
app.put(this.path, this.check, this.process);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckablePutRequest.js","sourceRoot":"","sources":["../../../../src/api/check/request/CheckablePutRequest.ts"],"names":[],"mappings":";;;AACA,iDAAmE;
|
|
1
|
+
{"version":3,"file":"CheckablePutRequest.js","sourceRoot":"","sources":["../../../../src/api/check/request/CheckablePutRequest.ts"],"names":[],"mappings":";;;AACA,iDAAmE;AACnE,gEAA6D;AAE7D,MAAsB,mBAAoB,SAAQ,yCAAmB;IACjE,YAAY,MAAwB;QAChC,KAAK,CAAC,0BAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAEM,IAAI,CAAC,GAAY;QACpB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;CACJ;AARD,kDAQC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export { SequelizeConnection as SequelizeConnection } from './sequelize/SequelizeConnection';
|
|
2
|
+
export { SequelizeModelManager as SequelizeModelManager } from './sequelize/SequelizeModelManager';
|
|
1
3
|
export { APIServiceConfig as APIServiceConfig, APIService as APIService, APIServiceResponse as APIServiceResponse } from './api/APIService';
|
|
2
4
|
export { HttpsAPIService as HttpsAPIService } from './api/HttpsAPIService';
|
|
3
5
|
export { ExpressConfiguration as ExpressConfiguration } from './api/ExpressConfiguration';
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CheckablePutRequest = exports.CheckablePostRequest = exports.CheckableGetRequest = exports.CheckableDeleteRequest = exports.CheckableAPIRequest = exports.DeleteRequest = exports.PutRequest = exports.PostRequest = exports.GetRequest = exports.RequestContext = exports.RequestMethod = exports.APIRequest = exports.ExpressStandardConfiguration = exports.HttpsAPIService = exports.APIService = void 0;
|
|
3
|
+
exports.CheckablePutRequest = exports.CheckablePostRequest = exports.CheckableGetRequest = exports.CheckableDeleteRequest = exports.CheckableAPIRequest = exports.DeleteRequest = exports.PutRequest = exports.PostRequest = exports.GetRequest = exports.RequestContext = exports.RequestMethod = exports.APIRequest = exports.ExpressStandardConfiguration = exports.HttpsAPIService = exports.APIService = exports.SequelizeModelManager = exports.SequelizeConnection = void 0;
|
|
4
|
+
var SequelizeConnection_1 = require("./sequelize/SequelizeConnection");
|
|
5
|
+
Object.defineProperty(exports, "SequelizeConnection", { enumerable: true, get: function () { return SequelizeConnection_1.SequelizeConnection; } });
|
|
6
|
+
var SequelizeModelManager_1 = require("./sequelize/SequelizeModelManager");
|
|
7
|
+
Object.defineProperty(exports, "SequelizeModelManager", { enumerable: true, get: function () { return SequelizeModelManager_1.SequelizeModelManager; } });
|
|
4
8
|
var APIService_1 = require("./api/APIService");
|
|
5
9
|
Object.defineProperty(exports, "APIService", { enumerable: true, get: function () { return APIService_1.APIService; } });
|
|
6
10
|
var HttpsAPIService_1 = require("./api/HttpsAPIService");
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,+CAA4I;AAA7F,wGAAA,UAAU,OAAc;AACvE,yDAA2E;AAAlE,kHAAA,eAAe,OAAmB;AAG3C,2FAA0H;AAAjH,4IAAA,4BAA4B,OAAgC;AAErE,+CAA4M;AAAnM,wGAAA,UAAU,OAAc;AAAE,2GAAA,aAAa,OAAiB;AAAE,4GAAA,cAAc,OAAkB;AACnG,uDAAoE;AAA3D,wGAAA,UAAU,OAAc;AACjC,yDAAuE;AAA9D,0GAAA,WAAW,OAAe;AACnC,uDAAoE;AAA3D,wGAAA,UAAU,OAAc;AACjC,6DAA6E;AAApE,8GAAA,aAAa,OAAiB;AAGvC,uEAA6F;AAApF,0HAAA,mBAAmB,OAAuB;AACnD,qFAA8G;AAArG,gIAAA,sBAAsB,OAA0B;AACzD,+EAAqG;AAA5F,0HAAA,mBAAmB,OAAuB;AACnD,iFAAwG;AAA/F,4HAAA,oBAAoB,OAAwB;AACrD,+EAAqG;AAA5F,0HAAA,mBAAmB,OAAuB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,uEAA6F;AAApF,0HAAA,mBAAmB,OAAuB;AACnD,2EAAmG;AAA1F,8HAAA,qBAAqB,OAAyB;AAEvD,+CAA4I;AAA7F,wGAAA,UAAU,OAAc;AACvE,yDAA2E;AAAlE,kHAAA,eAAe,OAAmB;AAG3C,2FAA0H;AAAjH,4IAAA,4BAA4B,OAAgC;AAErE,+CAA4M;AAAnM,wGAAA,UAAU,OAAc;AAAE,2GAAA,aAAa,OAAiB;AAAE,4GAAA,cAAc,OAAkB;AACnG,uDAAoE;AAA3D,wGAAA,UAAU,OAAc;AACjC,yDAAuE;AAA9D,0GAAA,WAAW,OAAe;AACnC,uDAAoE;AAA3D,wGAAA,UAAU,OAAc;AACjC,6DAA6E;AAApE,8GAAA,aAAa,OAAiB;AAGvC,uEAA6F;AAApF,0HAAA,mBAAmB,OAAuB;AACnD,qFAA8G;AAArG,gIAAA,sBAAsB,OAA0B;AACzD,+EAAqG;AAA5F,0HAAA,mBAAmB,OAAuB;AACnD,iFAAwG;AAA/F,4HAAA,oBAAoB,OAAwB;AACrD,+EAAqG;AAA5F,0HAAA,mBAAmB,OAAuB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ModelAttributes, ModelOptions, Options } from "@sequelize/core";
|
|
2
|
+
export interface SequelizeConnectionConfig {
|
|
3
|
+
host: string;
|
|
4
|
+
username: string;
|
|
5
|
+
password: string;
|
|
6
|
+
database: string;
|
|
7
|
+
engine: string;
|
|
8
|
+
}
|
|
9
|
+
export declare class SequelizeConnection {
|
|
10
|
+
private connection;
|
|
11
|
+
constructor(config: Options);
|
|
12
|
+
connect(): Promise<void>;
|
|
13
|
+
define(name: string, attributes: ModelAttributes, options?: ModelOptions): import("@sequelize/core").ModelCtor<import("@sequelize/core").Model<any, any>>;
|
|
14
|
+
disconnect(): Promise<void>;
|
|
15
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SequelizeConnection = void 0;
|
|
4
|
+
const core_1 = require("@sequelize/core");
|
|
5
|
+
class SequelizeConnection {
|
|
6
|
+
constructor(config) {
|
|
7
|
+
this.connection = new core_1.Sequelize(config);
|
|
8
|
+
}
|
|
9
|
+
connect() {
|
|
10
|
+
return this.connection.authenticate();
|
|
11
|
+
}
|
|
12
|
+
define(name, attributes, options) {
|
|
13
|
+
return this.connection.define(name, attributes, options);
|
|
14
|
+
}
|
|
15
|
+
disconnect() {
|
|
16
|
+
return this.connection.close();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.SequelizeConnection = SequelizeConnection;
|
|
20
|
+
//# sourceMappingURL=SequelizeConnection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SequelizeConnection.js","sourceRoot":"","sources":["../../src/sequelize/SequelizeConnection.ts"],"names":[],"mappings":";;;AAAA,0CAAoF;AAUpF,MAAa,mBAAmB;IAG5B,YAAY,MAAe;QACvB,IAAI,CAAC,UAAU,GAAG,IAAI,gBAAS,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAEM,OAAO;QACV,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;IAC1C,CAAC;IAEM,MAAM,CAAC,IAAY,EAAE,UAA2B,EAAE,OAAsB;QAC3E,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;CACJ;AAlBD,kDAkBC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { DestroyOptions, FindOptions, ModelAttributes, ModelOptions, UpdateOptions } from "@sequelize/core";
|
|
2
|
+
import { SequelizeConnection } from "./SequelizeConnection";
|
|
3
|
+
export interface ModelDefinition {
|
|
4
|
+
name: string;
|
|
5
|
+
attributes: ModelAttributes;
|
|
6
|
+
options?: ModelOptions;
|
|
7
|
+
}
|
|
8
|
+
export declare class SequelizeModelManager<S> {
|
|
9
|
+
private definition;
|
|
10
|
+
private model;
|
|
11
|
+
constructor(definition: ModelDefinition);
|
|
12
|
+
init(connection: SequelizeConnection, syncOptions?: any): Promise<any>;
|
|
13
|
+
create(values: S): any;
|
|
14
|
+
findAll(options?: FindOptions): any;
|
|
15
|
+
update(values: {
|
|
16
|
+
[x: string]: any;
|
|
17
|
+
}, options: UpdateOptions): any;
|
|
18
|
+
destroy(options?: DestroyOptions): any;
|
|
19
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.SequelizeModelManager = void 0;
|
|
13
|
+
class SequelizeModelManager {
|
|
14
|
+
constructor(definition) {
|
|
15
|
+
this.definition = definition;
|
|
16
|
+
}
|
|
17
|
+
init(connection, syncOptions) {
|
|
18
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
this.model = yield connection.define(this.definition.name, this.definition.attributes, this.definition.options);
|
|
20
|
+
return yield this.model.sync(syncOptions);
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
create(values) {
|
|
24
|
+
return this.model.create(values);
|
|
25
|
+
}
|
|
26
|
+
findAll(options) {
|
|
27
|
+
return this.model.findAll(options);
|
|
28
|
+
}
|
|
29
|
+
update(values, options) {
|
|
30
|
+
return this.model.update(values, options);
|
|
31
|
+
}
|
|
32
|
+
destroy(options) {
|
|
33
|
+
return this.model.destroy(options);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.SequelizeModelManager = SequelizeModelManager;
|
|
37
|
+
//# sourceMappingURL=SequelizeModelManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SequelizeModelManager.js","sourceRoot":"","sources":["../../src/sequelize/SequelizeModelManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AASA,MAAa,qBAAqB;IAI9B,YAAY,UAA2B;QACnC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAEY,IAAI,CAAC,UAA+B,EAAE,WAAiB;;YAChE,IAAI,CAAC,KAAK,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAChH,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9C,CAAC;KAAA;IAEM,MAAM,CAAC,MAAS;QACnB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAEM,OAAO,CAAC,OAAqB;QAChC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAEM,MAAM,CAAC,MAA6B,EAAE,OAAsB;QAC/D,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAEM,OAAO,CAAC,OAAwB;QACnC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;CACJ;AA5BD,sDA4BC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "itrm-tools",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -33,15 +33,19 @@
|
|
|
33
33
|
"ts-jest": "^29.0.3"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
+
"@sequelize/core": "^7.0.0-alpha.10",
|
|
36
37
|
"@types/express": "^4.17.15",
|
|
37
38
|
"@types/node": "^18.11.18",
|
|
38
39
|
"@types/ws": "^8.5.4",
|
|
39
40
|
"axios": "^1.2.2",
|
|
40
41
|
"body-parser": "^1.20.1",
|
|
41
42
|
"cors": "^2.8.5",
|
|
43
|
+
"dotenv": "^16.0.3",
|
|
42
44
|
"express": "^4.18.2",
|
|
43
45
|
"fs": "^0.0.1-security",
|
|
44
46
|
"https": "^1.0.0",
|
|
47
|
+
"pg": "^8.8.0",
|
|
48
|
+
"pg-hstore": "^2.3.4",
|
|
45
49
|
"rimraf": "^3.0.2",
|
|
46
50
|
"typescript": "^4.9.4",
|
|
47
51
|
"ws": "^8.12.0"
|