bpmn-client 1.2.5 → 1.3.2
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/.env +2 -2
- package/Sample/package.json +44 -44
- package/index.js +1 -5
- package/monitor.js +91 -0
- package/monitor.ts +100 -0
- package/package.json +2 -2
- package/src/BPMNClient.js +3 -3
- package/src/BPMNClient.ts +3 -3
- package/src/index.js +1 -5
- package/test/feature/.env +1 -3
- package/test.js +12 -0
- package/test.ts +14 -3
- package/test2.js +70 -249
- package/test3.js +42 -0
- package/test3.ts +40 -0
- package/testCLI.js +152 -0
- package/testCLI.ts +163 -0
- package/test2.ts +0 -326
package/.env
CHANGED
package/Sample/package.json
CHANGED
|
@@ -1,44 +1,44 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "bpmn-client-sample",
|
|
3
|
-
"version": "1.2.0",
|
|
4
|
-
"license": "MIT",
|
|
5
|
-
"scripts": {
|
|
6
|
-
"build": "tsc --build",
|
|
7
|
-
"clean": "tsc --build --clean",
|
|
8
|
-
"start": "node app.ts",
|
|
9
|
-
"test": "mocha -R dot",
|
|
10
|
-
"posttest": "eslint . --cache && npm run toc",
|
|
11
|
-
"wintest": "node_modules/.bin/mocha",
|
|
12
|
-
"start:watch": "tsc-watch --project . --onSuccess \"nodemon ./test.ts\"",
|
|
13
|
-
"toc": "node scripts/generate-api-toc ./docs/API.md,./docs/Examples.md",
|
|
14
|
-
"test-md": "node scripts/test-markdown.js ./docs/API.md && node scripts/test-markdown.js ./docs/Examples.md"
|
|
15
|
-
},
|
|
16
|
-
"description": "Client API for BPMN-Server webservices",
|
|
17
|
-
"keywords": [
|
|
18
|
-
"BPMN",
|
|
19
|
-
"BPMN 2.0",
|
|
20
|
-
"Workflow",
|
|
21
|
-
"Node.js",
|
|
22
|
-
"TypeScript"
|
|
23
|
-
],
|
|
24
|
-
"author": {
|
|
25
|
-
"name": "ralphhanna"
|
|
26
|
-
},
|
|
27
|
-
"dependencies": {
|
|
28
|
-
"bpmn-client": "*",
|
|
29
|
-
"connect-busboy": "0.0.2",
|
|
30
|
-
"core-js": "^3.6.5",
|
|
31
|
-
"dotenv": "^16.0.1"
|
|
32
|
-
},
|
|
33
|
-
"devDependencies": {
|
|
34
|
-
"@types/mime": "^1.3.1",
|
|
35
|
-
"@types/node": "^8.10.66",
|
|
36
|
-
"@types/serve-static": "^1.7.32",
|
|
37
|
-
"nodemon": "^2.0.19",
|
|
38
|
-
"ts-node": "^8.10.2",
|
|
39
|
-
"typescript": "^3.9.7"
|
|
40
|
-
},
|
|
41
|
-
"engines": {
|
|
42
|
-
"node": "^14.0.0"
|
|
43
|
-
}
|
|
44
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "bpmn-client-sample",
|
|
3
|
+
"version": "1.2.0",
|
|
4
|
+
"license": "MIT",
|
|
5
|
+
"scripts": {
|
|
6
|
+
"build": "tsc --build",
|
|
7
|
+
"clean": "tsc --build --clean",
|
|
8
|
+
"start": "node app.ts",
|
|
9
|
+
"test": "mocha -R dot",
|
|
10
|
+
"posttest": "eslint . --cache && npm run toc",
|
|
11
|
+
"wintest": "node_modules/.bin/mocha",
|
|
12
|
+
"start:watch": "tsc-watch --project . --onSuccess \"nodemon ./test.ts\"",
|
|
13
|
+
"toc": "node scripts/generate-api-toc ./docs/API.md,./docs/Examples.md",
|
|
14
|
+
"test-md": "node scripts/test-markdown.js ./docs/API.md && node scripts/test-markdown.js ./docs/Examples.md"
|
|
15
|
+
},
|
|
16
|
+
"description": "Client API for BPMN-Server webservices",
|
|
17
|
+
"keywords": [
|
|
18
|
+
"BPMN",
|
|
19
|
+
"BPMN 2.0",
|
|
20
|
+
"Workflow",
|
|
21
|
+
"Node.js",
|
|
22
|
+
"TypeScript"
|
|
23
|
+
],
|
|
24
|
+
"author": {
|
|
25
|
+
"name": "ralphhanna"
|
|
26
|
+
},
|
|
27
|
+
"dependencies": {
|
|
28
|
+
"bpmn-client": "*",
|
|
29
|
+
"connect-busboy": "0.0.2",
|
|
30
|
+
"core-js": "^3.6.5",
|
|
31
|
+
"dotenv": "^16.0.1"
|
|
32
|
+
},
|
|
33
|
+
"devDependencies": {
|
|
34
|
+
"@types/mime": "^1.3.1",
|
|
35
|
+
"@types/node": "^8.10.66",
|
|
36
|
+
"@types/serve-static": "^1.7.32",
|
|
37
|
+
"nodemon": "^2.0.19",
|
|
38
|
+
"ts-node": "^8.10.2",
|
|
39
|
+
"typescript": "^3.9.7"
|
|
40
|
+
},
|
|
41
|
+
"engines": {
|
|
42
|
+
"node": "^14.0.0"
|
|
43
|
+
}
|
|
44
|
+
}
|
package/index.js
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
9
5
|
}) : (function(o, m, k, k2) {
|
|
10
6
|
if (k2 === undefined) k2 = k;
|
|
11
7
|
o[k2] = m[k];
|
package/monitor.js
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
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
|
+
const _1 = require("./");
|
|
13
|
+
console.log("Testing BPMNClient");
|
|
14
|
+
const dotenv = require('dotenv');
|
|
15
|
+
const res = dotenv.config();
|
|
16
|
+
console.log(res);
|
|
17
|
+
monitor();
|
|
18
|
+
function monitor() {
|
|
19
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
const server = new _1.BPMNClient(process.env.HOST, process.env.PORT, process.env.API_KEY);
|
|
21
|
+
console.log('running monitor');
|
|
22
|
+
for (var i = 0; i < 1000; i++) {
|
|
23
|
+
yield checkStatus(server);
|
|
24
|
+
yield delay(15000, 'test');
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
function checkStatus(server, reason = '') {
|
|
29
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
30
|
+
var list = yield server.engine.status();
|
|
31
|
+
var insT = 0, insR = 0, itmT = 0, itmR = 0, tokT = 0, tokR = 0;
|
|
32
|
+
for (var i = 0; i < list.length; i++) {
|
|
33
|
+
var exec = list[i];
|
|
34
|
+
var dInstance = null;
|
|
35
|
+
insT++;
|
|
36
|
+
tokT += exec.instance.tokens.length;
|
|
37
|
+
if (exec.instance.status == 'running')
|
|
38
|
+
insR++;
|
|
39
|
+
var started = dateDiff(exec.instance.startedAt);
|
|
40
|
+
var ended = dateDiff(exec.instance.endedAt);
|
|
41
|
+
var msg = ` Instance for '${exec.instance.name}' Status: ${exec.status} Started At ${started} Ended ${ended} items: ${exec.instance.items.length}`;
|
|
42
|
+
try {
|
|
43
|
+
dInstance = yield server.datastore.findInstances({ id: exec.instance.id }, {});
|
|
44
|
+
//console.log(reason+' logs:',exec.instance.logs.length, dInstance.logs.length,dInstance.data.caseId);
|
|
45
|
+
if (dInstance.length > 0)
|
|
46
|
+
msg += ' items:' + dInstance[0].items.length;
|
|
47
|
+
}
|
|
48
|
+
catch (exc) {
|
|
49
|
+
msg += ' no instance' + exc.toString();
|
|
50
|
+
}
|
|
51
|
+
console.log(msg);
|
|
52
|
+
}
|
|
53
|
+
console.log(`${reason} ->Instances: Total: ${insT} Running: ${insR}`); // Tokens: ${tokT} `);
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
function delay(time, result) {
|
|
57
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
58
|
+
return new Promise(function (resolve) {
|
|
59
|
+
setTimeout(function () {
|
|
60
|
+
resolve(result);
|
|
61
|
+
}, time);
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
function dateDiff(dateStr) {
|
|
66
|
+
var endDate = new Date();
|
|
67
|
+
var startTime = new Date(dateStr);
|
|
68
|
+
var time1 = endDate.getTime();
|
|
69
|
+
var time2 = startTime;
|
|
70
|
+
var seconds = Math.abs(time1 - time2) / 1000;
|
|
71
|
+
// get total seconds between the times
|
|
72
|
+
var delta = seconds; //Math.abs(date_future - date_now) / 1000;
|
|
73
|
+
// calculate (and subtract) whole days
|
|
74
|
+
var days = Math.floor(delta / 86400);
|
|
75
|
+
delta -= days * 86400;
|
|
76
|
+
// calculate (and subtract) whole hours
|
|
77
|
+
var hours = Math.floor(delta / 3600) % 24;
|
|
78
|
+
delta -= hours * 3600;
|
|
79
|
+
// calculate (and subtract) whole minutes
|
|
80
|
+
var minutes = Math.floor(delta / 60) % 60;
|
|
81
|
+
delta -= minutes * 60;
|
|
82
|
+
// what's left is seconds
|
|
83
|
+
var seconds = Math.floor(delta % 60); // in theory the modulus is not required
|
|
84
|
+
if (days > 0)
|
|
85
|
+
return (days + " days");
|
|
86
|
+
if (hours > 0)
|
|
87
|
+
return (hours + " hours");
|
|
88
|
+
if (minutes > 0)
|
|
89
|
+
return (minutes + " minutes");
|
|
90
|
+
return (seconds + " seconds");
|
|
91
|
+
}
|
package/monitor.ts
ADDED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { BPMNClient } from './';
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
console.log("Testing BPMNClient");
|
|
5
|
+
const dotenv = require('dotenv');
|
|
6
|
+
const res = dotenv.config();
|
|
7
|
+
|
|
8
|
+
console.log(res);
|
|
9
|
+
monitor();
|
|
10
|
+
|
|
11
|
+
async function monitor() {
|
|
12
|
+
|
|
13
|
+
const server = new BPMNClient(process.env.HOST, process.env.PORT, process.env.API_KEY);
|
|
14
|
+
|
|
15
|
+
console.log('running monitor');
|
|
16
|
+
for (var i = 0; i < 1000; i++) {
|
|
17
|
+
await checkStatus(server);
|
|
18
|
+
await delay(15000, 'test');
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
}
|
|
23
|
+
async function checkStatus(server, reason = '') {
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
var list = await server.engine.status();
|
|
27
|
+
|
|
28
|
+
var insT = 0, insR = 0, itmT = 0, itmR = 0, tokT = 0, tokR = 0;
|
|
29
|
+
for (var i = 0; i < list.length; i++) {
|
|
30
|
+
var exec = list[i];
|
|
31
|
+
var dInstance = null;
|
|
32
|
+
insT++;
|
|
33
|
+
tokT += exec.instance.tokens.length;
|
|
34
|
+
if (exec.instance.status == 'running') insR++;
|
|
35
|
+
var started = dateDiff(exec.instance.startedAt);
|
|
36
|
+
var ended = dateDiff(exec.instance.endedAt);
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
var msg = ` Instance for '${exec.instance.name}' Status: ${exec.status} Started At ${started} Ended ${ended} items: ${exec.instance.items.length}`;
|
|
40
|
+
try {
|
|
41
|
+
dInstance = await server.datastore.findInstances({ id: exec.instance.id }, {});
|
|
42
|
+
//console.log(reason+' logs:',exec.instance.logs.length, dInstance.logs.length,dInstance.data.caseId);
|
|
43
|
+
if (dInstance.length > 0)
|
|
44
|
+
msg += ' items:' + dInstance[0].items.length;
|
|
45
|
+
}
|
|
46
|
+
catch (exc) {
|
|
47
|
+
msg += ' no instance' + exc.toString();
|
|
48
|
+
}
|
|
49
|
+
console.log(msg);
|
|
50
|
+
|
|
51
|
+
}
|
|
52
|
+
console.log(`${reason} ->Instances: Total: ${insT} Running: ${insR}`);// Tokens: ${tokT} `);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
async function delay(time, result) {
|
|
56
|
+
return new Promise(function (resolve) {
|
|
57
|
+
setTimeout(function () {
|
|
58
|
+
resolve(result);
|
|
59
|
+
}, time);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
function dateDiff(dateStr) {
|
|
67
|
+
|
|
68
|
+
var endDate = new Date();
|
|
69
|
+
var startTime = new Date(dateStr);
|
|
70
|
+
var time1 = endDate.getTime();
|
|
71
|
+
var time2 = startTime as unknown as number;
|
|
72
|
+
|
|
73
|
+
var seconds = Math.abs(time1 - time2) / 1000;
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
// get total seconds between the times
|
|
77
|
+
var delta = seconds; //Math.abs(date_future - date_now) / 1000;
|
|
78
|
+
|
|
79
|
+
// calculate (and subtract) whole days
|
|
80
|
+
var days = Math.floor(delta / 86400);
|
|
81
|
+
delta -= days * 86400;
|
|
82
|
+
|
|
83
|
+
// calculate (and subtract) whole hours
|
|
84
|
+
var hours = Math.floor(delta / 3600) % 24;
|
|
85
|
+
delta -= hours * 3600;
|
|
86
|
+
|
|
87
|
+
// calculate (and subtract) whole minutes
|
|
88
|
+
var minutes = Math.floor(delta / 60) % 60;
|
|
89
|
+
delta -= minutes * 60;
|
|
90
|
+
|
|
91
|
+
// what's left is seconds
|
|
92
|
+
var seconds = Math.floor(delta % 60); // in theory the modulus is not required
|
|
93
|
+
if (days > 0)
|
|
94
|
+
return (days + " days");
|
|
95
|
+
if (hours > 0)
|
|
96
|
+
return (hours + " hours");
|
|
97
|
+
if (minutes > 0)
|
|
98
|
+
return (minutes + " minutes");
|
|
99
|
+
return (seconds + " seconds");
|
|
100
|
+
}
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bpmn-client",
|
|
3
|
-
"version": "1.2
|
|
3
|
+
"version": "1.3.2",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build": "tsc --build",
|
|
7
|
-
"compileRun": "tsc --build && node
|
|
7
|
+
"compileRun": "tsc --build && node test.js",
|
|
8
8
|
"dev": "nodemon -e ts --exec \"npm run compileRun\"",
|
|
9
9
|
"clean": "tsc --build --clean",
|
|
10
10
|
"start": "node test.ts",
|
package/src/BPMNClient.js
CHANGED
|
@@ -19,7 +19,7 @@ class WebService {
|
|
|
19
19
|
return __awaiter(this, void 0, void 0, function* () {
|
|
20
20
|
var driver = http;
|
|
21
21
|
var body = JSON.stringify(params);
|
|
22
|
-
console.log(options, params);
|
|
22
|
+
// console.log(options, params);
|
|
23
23
|
if (options.port == 443)
|
|
24
24
|
driver = https;
|
|
25
25
|
let data = '';
|
|
@@ -27,7 +27,7 @@ class WebService {
|
|
|
27
27
|
return new Promise(function (resolve, reject) {
|
|
28
28
|
try {
|
|
29
29
|
driver.request(options, function (res) {
|
|
30
|
-
console.log('STATUS: ' + res.statusCode);
|
|
30
|
+
// console.log('STATUS: ' + res.statusCode);
|
|
31
31
|
this.response = res;
|
|
32
32
|
//console.log(res);
|
|
33
33
|
self.statusCode = res.statusCode;
|
|
@@ -212,7 +212,7 @@ class ClientDatastore {
|
|
|
212
212
|
}
|
|
213
213
|
deleteInstances(query) {
|
|
214
214
|
return __awaiter(this, void 0, void 0, function* () {
|
|
215
|
-
return yield this.client.del('datastore/
|
|
215
|
+
return yield this.client.del('datastore/deleteInstances', query);
|
|
216
216
|
});
|
|
217
217
|
}
|
|
218
218
|
}
|
package/src/BPMNClient.ts
CHANGED
|
@@ -15,7 +15,7 @@ class WebService {
|
|
|
15
15
|
var driver = http;
|
|
16
16
|
var body = JSON.stringify(params);
|
|
17
17
|
|
|
18
|
-
console.log(options, params);
|
|
18
|
+
// console.log(options, params);
|
|
19
19
|
if (options.port == 443)
|
|
20
20
|
driver = https;
|
|
21
21
|
|
|
@@ -25,7 +25,7 @@ class WebService {
|
|
|
25
25
|
try {
|
|
26
26
|
|
|
27
27
|
driver.request(options, function (res) {
|
|
28
|
-
console.log('STATUS: ' + res.statusCode);
|
|
28
|
+
// console.log('STATUS: ' + res.statusCode);
|
|
29
29
|
this.response = res;
|
|
30
30
|
//console.log(res);
|
|
31
31
|
self.statusCode = res.statusCode;
|
|
@@ -213,7 +213,7 @@ class ClientDatastore {
|
|
|
213
213
|
return instances;
|
|
214
214
|
}
|
|
215
215
|
async deleteInstances(query) {
|
|
216
|
-
return await this.client.del('datastore/
|
|
216
|
+
return await this.client.del('datastore/deleteInstances', query);
|
|
217
217
|
}
|
|
218
218
|
}
|
|
219
219
|
class ClientDefinitions {
|
package/src/index.js
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
9
5
|
}) : (function(o, m, k, k2) {
|
|
10
6
|
if (k2 === undefined) k2 = k;
|
|
11
7
|
o[k2] = m[k];
|
package/test/feature/.env
CHANGED
package/test.js
CHANGED
|
@@ -19,6 +19,9 @@ function test() {
|
|
|
19
19
|
return __awaiter(this, void 0, void 0, function* () {
|
|
20
20
|
const server = new _1.BPMNClient(process.env.HOST, process.env.PORT, process.env.API_KEY);
|
|
21
21
|
const caseId = 3040;
|
|
22
|
+
var delResp = yield server.datastore.deleteInstances({ name: 'Buy Used Car' });
|
|
23
|
+
//console.log(delResp);
|
|
24
|
+
//return;
|
|
22
25
|
var defs = yield server.definitions.list();
|
|
23
26
|
console.log(defs);
|
|
24
27
|
var def = yield server.definitions.load('Buy Used Car');
|
|
@@ -66,3 +69,12 @@ function test() {
|
|
|
66
69
|
});
|
|
67
70
|
});
|
|
68
71
|
}
|
|
72
|
+
function delay(time, result) {
|
|
73
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
74
|
+
return new Promise(function (resolve) {
|
|
75
|
+
setTimeout(function () {
|
|
76
|
+
resolve(result);
|
|
77
|
+
}, time);
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
}
|
package/test.ts
CHANGED
|
@@ -10,10 +10,14 @@ test();
|
|
|
10
10
|
|
|
11
11
|
async function test() {
|
|
12
12
|
|
|
13
|
-
const server= new BPMNClient(process.env.HOST, process.env.PORT, process.env.API_KEY);
|
|
13
|
+
const server = new BPMNClient(process.env.HOST, process.env.PORT, process.env.API_KEY);
|
|
14
14
|
|
|
15
15
|
const caseId = 3040;
|
|
16
16
|
|
|
17
|
+
|
|
18
|
+
var delResp = await server.datastore.deleteInstances({ name: 'Buy Used Car' });
|
|
19
|
+
//console.log(delResp);
|
|
20
|
+
//return;
|
|
17
21
|
var defs = await server.definitions.list();
|
|
18
22
|
|
|
19
23
|
console.log(defs);
|
|
@@ -60,7 +64,7 @@ async function test() {
|
|
|
60
64
|
}
|
|
61
65
|
|
|
62
66
|
|
|
63
|
-
|
|
67
|
+
|
|
64
68
|
|
|
65
69
|
var items = await server.datastore.findItems({ "items.status": "end", "items.elementId": "task_Buy" });
|
|
66
70
|
|
|
@@ -70,7 +74,7 @@ async function test() {
|
|
|
70
74
|
});
|
|
71
75
|
|
|
72
76
|
|
|
73
|
-
|
|
77
|
+
|
|
74
78
|
var insts = await server.datastore.findInstances({ data: { caseId: caseId } });
|
|
75
79
|
|
|
76
80
|
insts.forEach(inst => {
|
|
@@ -104,7 +108,14 @@ async function test() {
|
|
|
104
108
|
items.forEach(item => {
|
|
105
109
|
console.log('item: id==>' + item.elementId, item.type, item.name, 'status==>', item.status);
|
|
106
110
|
});
|
|
111
|
+
}
|
|
107
112
|
|
|
113
|
+
async function delay(time, result) {
|
|
114
|
+
return new Promise(function (resolve) {
|
|
115
|
+
setTimeout(function () {
|
|
116
|
+
resolve(result);
|
|
117
|
+
}, time);
|
|
118
|
+
});
|
|
108
119
|
}
|
|
109
120
|
|
|
110
121
|
|