bpmn-client 1.0.1 → 1.2.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/.env +4 -0
- package/Sample/package.json +44 -0
- package/Sample/test.js +30 -0
- package/Sample/test.ts +27 -0
- package/Sample/tsconfig.json +17 -0
- package/bpmn-client-1.2.0.tgz +0 -0
- package/index.js +10 -18
- package/index.ts +1 -10
- package/package.json +8 -25
- package/{BPMNClient.js → src/BPMNClient.js} +124 -52
- package/src/BPMNClient.ts +219 -0
- package/src/index.js +15 -0
- package/src/index.ts +4 -0
- package/src/interfaces/DataObjects.js +2 -0
- package/src/interfaces/DataObjects.ts +97 -0
- package/src/interfaces/Enums.js +117 -0
- package/src/interfaces/Enums.ts +71 -0
- package/test/.eslintrc.json +20 -0
- package/test/feature/.env +5 -0
- package/test/feature/carServer.js +117 -0
- package/test/helpers/setup.js +9 -0
- package/test/logs/Buy Used Carrepairsfalse cleaning +0 -0
- package/test/logs/Buy Used Carrepairstrue cleaning +0 -0
- package/test/logs/Buy Used Carscenario CaseId +0 -0
- package/test/logs/carrepairsfalse cleaning +0 -0
- package/test/logs/carrepairstrue cleaning +0 -0
- package/test/mocha.opts +5 -0
- package/test/resources/Invoice.js +91 -0
- package/test/resources/car.js +69 -0
- package/test/resources/loop.js +50 -0
- package/test.js +29 -0
- package/test.ts +27 -0
- package/test2.js +270 -0
- package/test2.ts +326 -0
- package/tsconfig.json +4 -4
- package/BPMNClient.d.ts +0 -36
- package/BPMNClient.js.map +0 -1
- package/BPMNClient.ts +0 -139
- package/index.d.ts +0 -1
- package/index.js.map +0 -1
- package/npm.list +0 -579
package/test2.ts
ADDED
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
//import { BPMNClient } from './';
|
|
2
|
+
//import { BPMNServer, IInstanceData, IItemData } from './';
|
|
3
|
+
|
|
4
|
+
import { BPMNServer, IDefinition, IInstanceData, IItemData } from '../WebApp/';
|
|
5
|
+
|
|
6
|
+
const dotenv = require('dotenv');
|
|
7
|
+
const res = dotenv.config();
|
|
8
|
+
|
|
9
|
+
console.log("Testing BPMNClient 2");
|
|
10
|
+
|
|
11
|
+
const https = require('https');
|
|
12
|
+
const http = require('http');
|
|
13
|
+
|
|
14
|
+
class WebService {
|
|
15
|
+
statusCode;
|
|
16
|
+
result;
|
|
17
|
+
constructor() {}
|
|
18
|
+
async invoke(params, options) {
|
|
19
|
+
|
|
20
|
+
var driver = http;
|
|
21
|
+
var body = JSON.stringify(params);
|
|
22
|
+
|
|
23
|
+
console.log(options, params);
|
|
24
|
+
if (options.port == 443)
|
|
25
|
+
driver = https;
|
|
26
|
+
|
|
27
|
+
let data = '';
|
|
28
|
+
let self = this;
|
|
29
|
+
return new Promise(function (resolve, reject) {
|
|
30
|
+
try {
|
|
31
|
+
|
|
32
|
+
driver.request(options, function (res) {
|
|
33
|
+
console.log('STATUS: ' + res.statusCode);
|
|
34
|
+
//console.log(res);
|
|
35
|
+
self.statusCode = res.statusCode;
|
|
36
|
+
res.setEncoding('utf8');
|
|
37
|
+
res.on('data', function (chunk) {
|
|
38
|
+
data += chunk;
|
|
39
|
+
});
|
|
40
|
+
res.on('end', () => {
|
|
41
|
+
self.result = JSON.parse(data);
|
|
42
|
+
|
|
43
|
+
resolve(self.result);
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
}).on("error", (err) => {
|
|
48
|
+
console.log("Error: " + err.message);
|
|
49
|
+
reject(err);
|
|
50
|
+
}).end(body);
|
|
51
|
+
}
|
|
52
|
+
catch (exc) {
|
|
53
|
+
console.log(exc);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
class BPMNClient extends WebService {
|
|
61
|
+
host;
|
|
62
|
+
port;
|
|
63
|
+
apiKey;
|
|
64
|
+
engine: ClientEngine;
|
|
65
|
+
datastore: ClientDatastore;
|
|
66
|
+
definitions: ClientDefinitions;
|
|
67
|
+
constructor(host, port, apiKey) {
|
|
68
|
+
super();
|
|
69
|
+
this.host = host;
|
|
70
|
+
this.port = port;
|
|
71
|
+
this.apiKey = apiKey;
|
|
72
|
+
this.engine = new ClientEngine(this);
|
|
73
|
+
this.datastore = new ClientDatastore(this);
|
|
74
|
+
this.definitions = new ClientDefinitions(this);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
async get(url, data = {}) {
|
|
78
|
+
return await this.request(url, 'GET', data);
|
|
79
|
+
|
|
80
|
+
}
|
|
81
|
+
async post(url, data = {}) {
|
|
82
|
+
return await this.request(url, 'POST', data);
|
|
83
|
+
|
|
84
|
+
}
|
|
85
|
+
async put(url, data = {}) {
|
|
86
|
+
return await this.request(url, 'PUT', data);
|
|
87
|
+
|
|
88
|
+
}
|
|
89
|
+
async del(url, data = {}) {
|
|
90
|
+
return await this.request(url, 'DELETE', data);
|
|
91
|
+
|
|
92
|
+
}
|
|
93
|
+
async request(url, method, params) {
|
|
94
|
+
|
|
95
|
+
var body = JSON.stringify(params);
|
|
96
|
+
|
|
97
|
+
var options;
|
|
98
|
+
|
|
99
|
+
if (params) {
|
|
100
|
+
options = {
|
|
101
|
+
host: this.host,
|
|
102
|
+
port: this.port,
|
|
103
|
+
path: '/api/' + url,
|
|
104
|
+
method: method,
|
|
105
|
+
headers: {
|
|
106
|
+
"Content-Type": "application/json",
|
|
107
|
+
"x-api-key": this.apiKey,
|
|
108
|
+
"Accept": "*/*",
|
|
109
|
+
// "User-Agent": "PostmanRuntime/ 7.26.8",
|
|
110
|
+
// "Accept-Encoding": "gzip, deflate, br",
|
|
111
|
+
"Connection": "keep-alive",
|
|
112
|
+
"Content-Length": Buffer.byteLength(body)
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
options = {
|
|
118
|
+
host: this.host,
|
|
119
|
+
port: this.port,
|
|
120
|
+
path: '/api/' + url,
|
|
121
|
+
method: method
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
return await this.invoke(params, options);
|
|
127
|
+
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
class ClientEngine {
|
|
133
|
+
private client: BPMNClient;
|
|
134
|
+
|
|
135
|
+
constructor(client) {
|
|
136
|
+
this.client = client;
|
|
137
|
+
}
|
|
138
|
+
async start(name, data): Promise<IInstanceData>{
|
|
139
|
+
const ret = await this.client.post('engine/start', { name, data });
|
|
140
|
+
if (ret['errors']) {
|
|
141
|
+
console.log(ret['errors']);
|
|
142
|
+
throw new Error(ret['errors']);
|
|
143
|
+
}
|
|
144
|
+
const instance = ret as IInstanceData;
|
|
145
|
+
return instance;
|
|
146
|
+
}
|
|
147
|
+
async invoke(query, data): Promise<IInstanceData> {
|
|
148
|
+
const ret = await this.client.put('engine/invoke', { query, data });
|
|
149
|
+
if (ret['errors']) {
|
|
150
|
+
console.log(ret['errors']);
|
|
151
|
+
throw new Error(ret['errors']);
|
|
152
|
+
}
|
|
153
|
+
const instance = ret['instance'] as IInstanceData;
|
|
154
|
+
return instance;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
async get(query): Promise<IInstanceData> {
|
|
158
|
+
const ret=await this.client.get('engine/get', query);
|
|
159
|
+
if (ret['errors']) {
|
|
160
|
+
console.log(ret['errors']);
|
|
161
|
+
throw new Error(ret['errors']);
|
|
162
|
+
}
|
|
163
|
+
const instance = ret['instance'] as IInstanceData;
|
|
164
|
+
return instance;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
class ClientDatastore {
|
|
168
|
+
private client: BPMNClient;
|
|
169
|
+
|
|
170
|
+
constructor(client) {
|
|
171
|
+
this.client = client;
|
|
172
|
+
}
|
|
173
|
+
async findItems(query) : Promise<IItemData []>{
|
|
174
|
+
var res = await this.client.get('datastore/findItems', query);
|
|
175
|
+
if (res['errors']) {
|
|
176
|
+
console.log(res['errors']);
|
|
177
|
+
throw new Error(res['errors']);
|
|
178
|
+
}
|
|
179
|
+
const items = res['items'] as IItemData[];
|
|
180
|
+
return items;
|
|
181
|
+
|
|
182
|
+
}
|
|
183
|
+
async findInstances(query) : Promise<IInstanceData []> {
|
|
184
|
+
const res = await this.client.get('datastore/findInstances', query);
|
|
185
|
+
if (res['errors']) {
|
|
186
|
+
console.log(res['errors']);
|
|
187
|
+
throw new Error(res['errors']);
|
|
188
|
+
}
|
|
189
|
+
const instances = res['instances'] as IInstanceData[];
|
|
190
|
+
return instances;
|
|
191
|
+
}
|
|
192
|
+
async deleteInstances(query) {
|
|
193
|
+
return await this.client.del('datastore/delete', query);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
class ClientDefinitions {
|
|
197
|
+
private client: BPMNClient;
|
|
198
|
+
|
|
199
|
+
constructor(client) {
|
|
200
|
+
this.client = client;
|
|
201
|
+
}
|
|
202
|
+
async list(): Promise<string[]> {
|
|
203
|
+
var res = await this.client.get('definitions/list', []);
|
|
204
|
+
if (res['errors']) {
|
|
205
|
+
console.log(res['errors']);
|
|
206
|
+
throw new Error(res['errors']);
|
|
207
|
+
}
|
|
208
|
+
return res as string[];
|
|
209
|
+
|
|
210
|
+
}
|
|
211
|
+
async load(name): Promise<IDefinition> {
|
|
212
|
+
const res = await this.client.get(encodeURI('definitions/load/'+name), {name:name} );
|
|
213
|
+
if (res['errors']) {
|
|
214
|
+
console.log(res['errors']);
|
|
215
|
+
throw new Error(res['errors']);
|
|
216
|
+
}
|
|
217
|
+
console.log(res);
|
|
218
|
+
return res as IDefinition;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
test();
|
|
225
|
+
|
|
226
|
+
async function test() {
|
|
227
|
+
|
|
228
|
+
const API_KEY = '12345';
|
|
229
|
+
const HOST = 'test.omniworkflow.com';
|
|
230
|
+
const PORT = '443';
|
|
231
|
+
|
|
232
|
+
// const HOST = 'localhost';
|
|
233
|
+
// const PORT = '3000';
|
|
234
|
+
|
|
235
|
+
const BASE_URL = 'api';
|
|
236
|
+
|
|
237
|
+
//const client = new BPMNClient(process.env.HOST, process.env.PORT, process.env.API_KEY);
|
|
238
|
+
|
|
239
|
+
const client = new BPMNClient(HOST, PORT, API_KEY);
|
|
240
|
+
|
|
241
|
+
const server = client;
|
|
242
|
+
const caseId = 3040;
|
|
243
|
+
|
|
244
|
+
var defs = await server.definitions.list();
|
|
245
|
+
|
|
246
|
+
console.log(defs);
|
|
247
|
+
var def = await server.definitions.load('Buy Used Car');
|
|
248
|
+
|
|
249
|
+
console.log(def['elements']);
|
|
250
|
+
|
|
251
|
+
//var instance = await client.engine.start("Buy Used Car", {});
|
|
252
|
+
|
|
253
|
+
var instance = await server.engine.start("Buy Used Car", { caseId: caseId });
|
|
254
|
+
|
|
255
|
+
|
|
256
|
+
console.log("instance.id", instance.id, instance.name, instance.status, instance.data.caseId);
|
|
257
|
+
|
|
258
|
+
var response = await server.engine.invoke(
|
|
259
|
+
{ id: instance.id, "items.elementId": 'task_Buy' }
|
|
260
|
+
, { needsCleaning: "Yes", needsRepairs: "Yes" });
|
|
261
|
+
|
|
262
|
+
console.log('after buy', response.id, response.data);
|
|
263
|
+
|
|
264
|
+
response = await server.engine.invoke(
|
|
265
|
+
{ id: instance.id, "items.elementId": 'task_clean' }
|
|
266
|
+
, {});
|
|
267
|
+
|
|
268
|
+
console.log('after clean', response.id, response.data);
|
|
269
|
+
|
|
270
|
+
response = await server.engine.invoke(
|
|
271
|
+
{ id: instance.id, "items.elementId": 'task_repair' }
|
|
272
|
+
, {});
|
|
273
|
+
|
|
274
|
+
console.log('after repair', response.id, response.data);
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
try {
|
|
278
|
+
response = await server.engine.invoke(
|
|
279
|
+
{ id: instance.id, "items.elementId": 'task_Drive' }
|
|
280
|
+
, {});
|
|
281
|
+
|
|
282
|
+
console.log('after drive', response.id, response.data);
|
|
283
|
+
|
|
284
|
+
}
|
|
285
|
+
catch (exc) {
|
|
286
|
+
console.log(exc);
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
|
|
290
|
+
|
|
291
|
+
var insts = await client.datastore.findInstances({ data: { caseId: caseId } });
|
|
292
|
+
|
|
293
|
+
insts.forEach(inst => {
|
|
294
|
+
console.log('Inst for CaseId id==>' + inst.id, inst.name, inst.data.caseId, 'status==>', inst.status);
|
|
295
|
+
});
|
|
296
|
+
var insts = await client.datastore.findInstances({ id: instance.id });
|
|
297
|
+
|
|
298
|
+
insts.forEach(inst => {
|
|
299
|
+
for (var i = 0; i < inst.items.length; i++) {
|
|
300
|
+
var item = inst.items[i];
|
|
301
|
+
console.log(' item: elementId==>' + item.elementId, item.name, 'status==>', item.status);
|
|
302
|
+
|
|
303
|
+
}
|
|
304
|
+
});
|
|
305
|
+
|
|
306
|
+
var inst = await client.engine.get( { id: instance.id });
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
for (var i = 0; i < inst.items.length; i++) {
|
|
310
|
+
var item = inst.items[i];
|
|
311
|
+
console.log(' item: elementId==>' + item.elementId, item.name, 'status==>', item.status);
|
|
312
|
+
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
|
|
316
|
+
|
|
317
|
+
// var items = await client.datastore.findItems({ query: { "items.elementId": "task_Buy" } });
|
|
318
|
+
var items = await client.datastore.findItems({ id: instance.id} );
|
|
319
|
+
|
|
320
|
+
|
|
321
|
+
items.forEach(item => {
|
|
322
|
+
console.log('item: id==>' + item.elementId,item.type, item.name, 'status==>', item.status);
|
|
323
|
+
});
|
|
324
|
+
|
|
325
|
+
}
|
|
326
|
+
|
package/tsconfig.json
CHANGED
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
"module": "commonjs",
|
|
4
4
|
"target": "es6",
|
|
5
5
|
"lib": [ "es6" ],
|
|
6
|
-
"sourceMap":
|
|
7
|
-
"declaration":
|
|
8
|
-
|
|
6
|
+
"sourceMap": false,
|
|
7
|
+
"declaration": false,
|
|
8
|
+
"listFiles" : false
|
|
9
9
|
|
|
10
10
|
},
|
|
11
11
|
"include": [
|
|
12
12
|
"**/*.ts"
|
|
13
13
|
],
|
|
14
14
|
"exclude": [
|
|
15
|
-
"node_modules" , "
|
|
15
|
+
"node_modules" , "Sample"
|
|
16
16
|
]
|
|
17
17
|
}
|
package/BPMNClient.d.ts
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
declare class BPMNClient {
|
|
2
|
-
host: any;
|
|
3
|
-
port: any;
|
|
4
|
-
statusCode: any;
|
|
5
|
-
result: any;
|
|
6
|
-
engine: Engine;
|
|
7
|
-
datastore: Datastore;
|
|
8
|
-
constructor(host: any, port: any);
|
|
9
|
-
get(url: any, data?: {}): Promise<unknown>;
|
|
10
|
-
post(url: any, data?: {}): Promise<unknown>;
|
|
11
|
-
put(url: any, data?: {}): Promise<unknown>;
|
|
12
|
-
del(url: any, data?: {}): Promise<unknown>;
|
|
13
|
-
request(url: any, method: any, params: any): Promise<unknown>;
|
|
14
|
-
getItem(id: any): any;
|
|
15
|
-
}
|
|
16
|
-
declare class Engine {
|
|
17
|
-
private client;
|
|
18
|
-
constructor(client: any);
|
|
19
|
-
start({ name, data }: {
|
|
20
|
-
name: any;
|
|
21
|
-
data: any;
|
|
22
|
-
}): Promise<unknown>;
|
|
23
|
-
invoke({ query, data }: {
|
|
24
|
-
query: any;
|
|
25
|
-
data: any;
|
|
26
|
-
}): Promise<unknown>;
|
|
27
|
-
get(query: any): Promise<unknown>;
|
|
28
|
-
}
|
|
29
|
-
declare class Datastore {
|
|
30
|
-
private client;
|
|
31
|
-
constructor(client: any);
|
|
32
|
-
findItems(query: any): Promise<unknown>;
|
|
33
|
-
findInsances(query: any): Promise<unknown>;
|
|
34
|
-
deleteInstances(query: any): Promise<unknown>;
|
|
35
|
-
}
|
|
36
|
-
export { BPMNClient, Engine };
|
package/BPMNClient.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BPMNClient.js","sourceRoot":"","sources":["BPMNClient.ts"],"names":[],"mappings":"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"}
|
package/BPMNClient.ts
DELETED
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
const http = require('http');
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
class BPMNClient {
|
|
7
|
-
host;
|
|
8
|
-
port;
|
|
9
|
-
statusCode;
|
|
10
|
-
result;
|
|
11
|
-
engine: Engine;
|
|
12
|
-
datastore: Datastore;
|
|
13
|
-
constructor(host, port) {
|
|
14
|
-
this.host = host;
|
|
15
|
-
this.port = port;
|
|
16
|
-
this.engine = new Engine(this);
|
|
17
|
-
this.datastore = new Datastore(this);
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
async get(url, data = {}) {
|
|
21
|
-
return await this.request(url, 'GET', data);
|
|
22
|
-
|
|
23
|
-
}
|
|
24
|
-
async post(url, data = {}) {
|
|
25
|
-
return await this.request(url, 'POST', data);
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
async put(url, data = {}) {
|
|
29
|
-
return await this.request(url, 'PUT', data);
|
|
30
|
-
|
|
31
|
-
}
|
|
32
|
-
async del(url, data = {}) {
|
|
33
|
-
return await this.request(url, 'DELETE', data);
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
async request(url, method, params) {
|
|
37
|
-
|
|
38
|
-
var options;
|
|
39
|
-
|
|
40
|
-
var body = JSON.stringify(params);
|
|
41
|
-
|
|
42
|
-
if (params) {
|
|
43
|
-
options = {
|
|
44
|
-
host: this.host,
|
|
45
|
-
port: this.port,
|
|
46
|
-
path: '/api/' + url,
|
|
47
|
-
method: method,
|
|
48
|
-
headers: {
|
|
49
|
-
"Content-Type": "application/json",
|
|
50
|
-
"Content-Length": Buffer.byteLength(body)
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
}
|
|
54
|
-
else {
|
|
55
|
-
options = {
|
|
56
|
-
host: this.host,
|
|
57
|
-
port: this.port,
|
|
58
|
-
path: '/api/' + url,
|
|
59
|
-
method: method
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
|
-
console.log(options);
|
|
63
|
-
let data = '';
|
|
64
|
-
let self = this;
|
|
65
|
-
return new Promise(function (resolve, reject) {
|
|
66
|
-
try {
|
|
67
|
-
|
|
68
|
-
http.request(options, function (res) {
|
|
69
|
-
console.log('STATUS: ' + res.statusCode);
|
|
70
|
-
// console.log('HEADERS: ' + JSON.stringify(res.headers));
|
|
71
|
-
self.statusCode = res.statusCode;
|
|
72
|
-
res.setEncoding('utf8');
|
|
73
|
-
res.on('data', function (chunk) {
|
|
74
|
-
data += chunk;
|
|
75
|
-
});
|
|
76
|
-
res.on('end', () => {
|
|
77
|
-
// console.log(JSON.parse(data));
|
|
78
|
-
self.result = JSON.parse(data);
|
|
79
|
-
|
|
80
|
-
resolve(self.result);
|
|
81
|
-
});
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}).on("error", (err) => {
|
|
85
|
-
console.log("Error: " + err.message);
|
|
86
|
-
reject(err);
|
|
87
|
-
}).end(body);
|
|
88
|
-
}
|
|
89
|
-
catch (exc) {
|
|
90
|
-
console.log(exc);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
});
|
|
94
|
-
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
getItem(id) {
|
|
98
|
-
if (!this.result.instance) {
|
|
99
|
-
console.log(this.result);
|
|
100
|
-
return;
|
|
101
|
-
}
|
|
102
|
-
return this.result.instance.items.filter(item => { return item.elementId == id; })[0];
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
class Engine {
|
|
107
|
-
private client: BPMNClient;
|
|
108
|
-
|
|
109
|
-
constructor(client) {
|
|
110
|
-
this.client = client;
|
|
111
|
-
}
|
|
112
|
-
async start({ name, data }) {
|
|
113
|
-
return await this.client.post('engine/start', { name, data });
|
|
114
|
-
}
|
|
115
|
-
async invoke({ query, data }) {
|
|
116
|
-
return await this.client.put('engine/invoke', { query, data });
|
|
117
|
-
}
|
|
118
|
-
async get(query) {
|
|
119
|
-
return await this.client.get('engine/get', query);
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
class Datastore {
|
|
123
|
-
private client: BPMNClient;
|
|
124
|
-
|
|
125
|
-
constructor(client) {
|
|
126
|
-
this.client = client;
|
|
127
|
-
}
|
|
128
|
-
async findItems(query) {
|
|
129
|
-
return await this.client.get('datastore/findItems', query);
|
|
130
|
-
}
|
|
131
|
-
async findInsances(query) {
|
|
132
|
-
return await this.client.get('datastore/findInstances', query);
|
|
133
|
-
}
|
|
134
|
-
async deleteInstances(query) {
|
|
135
|
-
return await this.client.del('datastore/delete', query);
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
export { BPMNClient , Engine}
|
package/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,6CAA0C;AAG1C,IAAI,EAAE,CAAC;AACP,SAAe,IAAI;;QACf,MAAM,MAAM,GAAG,IAAI,uBAAU,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAE,MAAM,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAErB,CAAC;CAAA"}
|