@steedos/service-package-loader 2.2.30 → 2.2.33
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/index.js +2 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +9 -1
- package/lib/index.js.map +1 -1
- package/lib/processTriggerLoader/index.d.ts +1 -0
- package/lib/processTriggerLoader/index.js +39 -0
- package/lib/processTriggerLoader/index.js.map +1 -0
- package/lib/processTriggerLoader/types/index.d.ts +1 -0
- package/lib/processTriggerLoader/types/index.js +5 -0
- package/lib/processTriggerLoader/types/index.js.map +1 -0
- package/lib/processTriggerLoader/types/trigger.d.ts +6 -0
- package/lib/processTriggerLoader/types/trigger.js +3 -0
- package/lib/processTriggerLoader/types/trigger.js.map +1 -0
- package/package.json +5 -5
- package/src/index.ts +9 -1
- package/src/processTriggerLoader/index.ts +37 -0
- package/src/processTriggerLoader/types/index.ts +1 -0
- package/src/processTriggerLoader/types/trigger.ts +6 -0
package/index.js
CHANGED
|
@@ -4,6 +4,7 @@ const objectql = require('@steedos/objectql');
|
|
|
4
4
|
const core = require('@steedos/core');
|
|
5
5
|
const triggerLoader = require('./lib').triggerLoader;
|
|
6
6
|
const processLoader = require('./lib').processLoader;
|
|
7
|
+
const processTriggerLoader = require('./lib').processTriggerLoader;
|
|
7
8
|
const sendPackageFlowToDb = require('./lib/loadPackageFlow').sendPackageFlowToDb;
|
|
8
9
|
const path = require('path');
|
|
9
10
|
const Future = require('fibers/future');
|
|
@@ -80,6 +81,7 @@ module.exports = {
|
|
|
80
81
|
await objectql.loadStandardMetadata(name, datasourceName);
|
|
81
82
|
await objectql.addAllConfigFiles(packagePath, datasourceName, name);
|
|
82
83
|
await triggerLoader.load(this.broker, packagePath, name);
|
|
84
|
+
await processTriggerLoader.load(this.broker, packagePath, name);
|
|
83
85
|
core.loadClientScripts();
|
|
84
86
|
let routersData = objectql.loadRouters(packagePath);
|
|
85
87
|
let oldRoutersInfo = await this.broker.call(`@steedos/service-packages.getPackageRoutersInfo`, {packageName: name})
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.processLoader = exports.triggerLoader = void 0;
|
|
3
|
+
exports.processTriggerLoader = exports.processLoader = exports.triggerLoader = void 0;
|
|
4
|
+
/*
|
|
5
|
+
* @Author: sunhaolin@hotoa.com
|
|
6
|
+
* @Date: 2022-05-14 10:16:03
|
|
7
|
+
* @LastEditors: sunhaolin@hotoa.com
|
|
8
|
+
* @LastEditTime: 2022-05-14 13:51:40
|
|
9
|
+
* @Description:
|
|
10
|
+
*/
|
|
4
11
|
exports.triggerLoader = require("./triggerLoader");
|
|
5
12
|
exports.processLoader = require("./processLoader");
|
|
13
|
+
exports.processTriggerLoader = require("./processTriggerLoader");
|
|
6
14
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,mDAAgD;AAChD,mDAAgD"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACH,mDAAgD;AAChD,mDAAgD;AAChD,iEAA8D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function load(broker: any, packagePath: string, packageServiceName: string): Promise<void>;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.load = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const _ = require("underscore");
|
|
6
|
+
const path = require("path");
|
|
7
|
+
const objectql_1 = require("@steedos/objectql");
|
|
8
|
+
const ENUM_WHEN = ['beforeDraftInsert', 'afterDraftInsert', 'beforeDraftSubmit', 'afterDraftSubmit', 'beforeStepSubmit', 'afterStepSubmit', 'cacluateNextStepUsers',
|
|
9
|
+
'beforeCancel', 'afterCancel', 'beforeTerminate', 'afterTerminate', 'beforeEnd', 'afterEnd'];
|
|
10
|
+
const LISTENTO_ALL_FLOWS = 'LISTENTO_ALL_FLOWS';
|
|
11
|
+
function load(broker, packagePath, packageServiceName) {
|
|
12
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
13
|
+
let filePath = path.join(packagePath, "**");
|
|
14
|
+
let wTriggers = (0, objectql_1.loadProcessTriggers)(filePath);
|
|
15
|
+
if (_.isEmpty(wTriggers)) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
for (const wt of wTriggers) {
|
|
19
|
+
if (_.isString(wt.listenTo)) {
|
|
20
|
+
for (const when of ENUM_WHEN) {
|
|
21
|
+
let handler = wt[when];
|
|
22
|
+
if (!handler) {
|
|
23
|
+
continue;
|
|
24
|
+
}
|
|
25
|
+
let name = wt.name || (0, objectql_1.getMD5)((0, objectql_1.JSONStringify)(wt));
|
|
26
|
+
let config = {
|
|
27
|
+
name: name,
|
|
28
|
+
"listenTo": wt.listenTo == '*' ? LISTENTO_ALL_FLOWS : wt.listenTo,
|
|
29
|
+
"when": when,
|
|
30
|
+
"handler": handler.toString()
|
|
31
|
+
};
|
|
32
|
+
yield objectql_1.registerProcessTrigger.register(broker, packageServiceName, config);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
exports.load = load;
|
|
39
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/processTriggerLoader/index.ts"],"names":[],"mappings":";;;;AAAA,gCAAgC;AAChC,6BAA6B;AAC7B,gDAAuG;AAGvG,MAAM,SAAS,GAAG,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,uBAAuB;IAC/J,cAAc,EAAE,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;AACjG,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;AAEhD,SAAsB,IAAI,CAAC,MAAW,EAAE,WAAmB,EAAE,kBAA0B;;QACnF,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,SAAS,GAAG,IAAA,8BAAmB,EAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YACtB,OAAO;SACV;QACD,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE;YAExB,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE;gBACzB,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;oBAC1B,IAAI,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;oBACvB,IAAI,CAAC,OAAO,EAAE;wBACV,SAAS;qBACZ;oBACD,IAAI,IAAI,GAAG,EAAE,CAAC,IAAI,IAAI,IAAA,iBAAM,EAAC,IAAA,wBAAa,EAAC,EAAE,CAAC,CAAC,CAAC;oBAChD,IAAI,MAAM,GAAY;wBAClB,IAAI,EAAE,IAAI;wBACV,UAAU,EAAE,EAAE,CAAC,QAAQ,IAAI,GAAG,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ;wBACjE,MAAM,EAAE,IAAI;wBACZ,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE;qBAChC,CAAA;oBACD,MAAM,iCAAsB,CAAC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,EAAE,MAAM,CAAC,CAAC;iBAC7E;aAEJ;SACJ;IAEL,CAAC;CAAA;AA3BD,oBA2BC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './trigger';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/processTriggerLoader/types/index.ts"],"names":[],"mappings":";;;AAAA,yDAA0B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trigger.js","sourceRoot":"","sources":["../../../src/processTriggerLoader/types/trigger.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@steedos/service-package-loader",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.33",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -11,9 +11,9 @@
|
|
|
11
11
|
"author": "",
|
|
12
12
|
"license": "MIT",
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"@steedos/core": "2.2.
|
|
15
|
-
"@steedos/metadata-core": "2.2.
|
|
16
|
-
"@steedos/objectql": "2.2.
|
|
14
|
+
"@steedos/core": "2.2.33",
|
|
15
|
+
"@steedos/metadata-core": "2.2.33",
|
|
16
|
+
"@steedos/objectql": "2.2.33",
|
|
17
17
|
"clone": "^2.1.2",
|
|
18
18
|
"globby": "^9.1.0",
|
|
19
19
|
"moleculer": "^0.14.12",
|
|
@@ -33,5 +33,5 @@
|
|
|
33
33
|
"publishConfig": {
|
|
34
34
|
"access": "public"
|
|
35
35
|
},
|
|
36
|
-
"gitHead": "
|
|
36
|
+
"gitHead": "04b381ed43ccf2e9d5ff8106f3e917a0d2ef1655"
|
|
37
37
|
}
|
package/src/index.ts
CHANGED
|
@@ -1,2 +1,10 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @Author: sunhaolin@hotoa.com
|
|
3
|
+
* @Date: 2022-05-14 10:16:03
|
|
4
|
+
* @LastEditors: sunhaolin@hotoa.com
|
|
5
|
+
* @LastEditTime: 2022-05-14 13:51:40
|
|
6
|
+
* @Description:
|
|
7
|
+
*/
|
|
1
8
|
export * as triggerLoader from "./triggerLoader"
|
|
2
|
-
export * as processLoader from "./processLoader"
|
|
9
|
+
export * as processLoader from "./processLoader"
|
|
10
|
+
export * as processTriggerLoader from "./processTriggerLoader"
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import * as _ from "underscore";
|
|
2
|
+
import * as path from "path";
|
|
3
|
+
import { getMD5, JSONStringify, loadProcessTriggers, registerProcessTrigger } from "@steedos/objectql";
|
|
4
|
+
import { Trigger } from "./types";
|
|
5
|
+
|
|
6
|
+
const ENUM_WHEN = ['beforeDraftInsert', 'afterDraftInsert', 'beforeDraftSubmit', 'afterDraftSubmit', 'beforeStepSubmit', 'afterStepSubmit', 'cacluateNextStepUsers',
|
|
7
|
+
'beforeCancel', 'afterCancel', 'beforeTerminate', 'afterTerminate', 'beforeEnd', 'afterEnd'];
|
|
8
|
+
const LISTENTO_ALL_FLOWS = 'LISTENTO_ALL_FLOWS';
|
|
9
|
+
|
|
10
|
+
export async function load(broker: any, packagePath: string, packageServiceName: string) {
|
|
11
|
+
let filePath = path.join(packagePath, "**");
|
|
12
|
+
let wTriggers = loadProcessTriggers(filePath);
|
|
13
|
+
if (_.isEmpty(wTriggers)) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
for (const wt of wTriggers) {
|
|
17
|
+
|
|
18
|
+
if (_.isString(wt.listenTo)) {
|
|
19
|
+
for (const when of ENUM_WHEN) {
|
|
20
|
+
let handler = wt[when];
|
|
21
|
+
if (!handler) {
|
|
22
|
+
continue;
|
|
23
|
+
}
|
|
24
|
+
let name = wt.name || getMD5(JSONStringify(wt));
|
|
25
|
+
let config: Trigger = {
|
|
26
|
+
name: name,
|
|
27
|
+
"listenTo": wt.listenTo == '*' ? LISTENTO_ALL_FLOWS : wt.listenTo,
|
|
28
|
+
"when": when,
|
|
29
|
+
"handler": handler.toString()
|
|
30
|
+
}
|
|
31
|
+
await registerProcessTrigger.register(broker, packageServiceName, config);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './trigger';
|