@codenotch/codenotch.react 2.0.1 → 2.0.3
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/index.d.ts.map +1 -1
- package/dist/index.js +93 -2
- package/dist/models/Codenotch.d.ts +1 -1
- package/dist/models/Codenotch.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +102 -2
- package/src/models/Codenotch.ts +1 -1
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuC,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,KAAK,iBAAiB,EAAkB,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAGjK,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAoB,aAAa,EAAkB,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExH,OAAO,UAAU,MAAM,yBAAyB,CAAC;AAEjD;;;GAGG;AACH,QAAA,MAAM,GAAG,EAAE,aAAkB,CAAC;AA6B9B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,iBAAS,IAAI,CAAC,YAAY,EAAE,GAAG,GAAG,IAAI,CA0DrC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuC,KAAK,aAAa,EAAE,KAAK,cAAc,EAAE,KAAK,iBAAiB,EAAkB,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAGjK,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAoB,aAAa,EAAkB,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExH,OAAO,UAAU,MAAM,yBAAyB,CAAC;AAEjD;;;GAGG;AACH,QAAA,MAAM,GAAG,EAAE,aAAkB,CAAC;AA6B9B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,iBAAS,IAAI,CAAC,YAAY,EAAE,GAAG,GAAG,IAAI,CA0DrC;AA+QD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,iBAAS,YAAY,IAAI,aAAa,CAErC;AAED;;;;;;;;;;;;;GAaG;AACH,iBAAS,YAAY,IAAI,aAAa,CAErC;AAED;;;;;;;;;;;;;;GAcG;AACH,iBAAS,iBAAiB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,WAAW,CAG5D;AAED,wFAAwF;AACxF,KAAK,qBAAqB,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,MAAM,kBAAkB,CAAC,CAAC;AAElE,8FAA8F;AAC9F,KAAK,iBAAiB,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAElF;;;;;;;;;;GAUG;AACH,iBAAS,aAAa,CAAC,CAAC,SAAS,aAAa,CAAC,GAAG,CAAC,EAC/C,SAAS,EAAE,CAAC,GACb,iBAAiB,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAQnG;AAED,OAAO,EACH,GAAG,EACH,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,IAAI,EACJ,UAAU,EACb,CAAC;AAEF,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,2BAA2B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -194,8 +194,99 @@ function createApi() {
|
|
|
194
194
|
}
|
|
195
195
|
return await response.json();
|
|
196
196
|
},
|
|
197
|
-
startProcess: async (
|
|
198
|
-
|
|
197
|
+
startProcess: async (processId, inputs) => {
|
|
198
|
+
if (env.clusterUrl === undefined)
|
|
199
|
+
throw new Error(MISSING_CLUSTER_URL_ERROR);
|
|
200
|
+
if (env.serviceName === undefined)
|
|
201
|
+
throw new Error(MISSING_SERVICE_NAME_ERROR);
|
|
202
|
+
// Exemple url: http://127.0.0.1:5005/test1/processes/helloWorldProcess/instances
|
|
203
|
+
// Format: {env.clusterUrl}/{env.serviceName}/processes/{process}/instances
|
|
204
|
+
/*
|
|
205
|
+
Response is like :
|
|
206
|
+
{
|
|
207
|
+
"instanceId": "0bb026e7-5470-486d-8164-dc83d7e32bd7",
|
|
208
|
+
"instanceToken": "eyJhbGciOiJSUzI1NiIsImtpZCI6IjI5NTllZGY4LTdkY2UtND...0wYVg"
|
|
209
|
+
}
|
|
210
|
+
*/
|
|
211
|
+
// Starts the process
|
|
212
|
+
const response = await fetch(`${env.clusterUrl}/${env.serviceName}/processes/${processId}/instances`, {
|
|
213
|
+
method: 'POST',
|
|
214
|
+
body: JSON.stringify({
|
|
215
|
+
"id": (0, uuid_1.v4)(),
|
|
216
|
+
"input": inputs
|
|
217
|
+
}),
|
|
218
|
+
headers: {
|
|
219
|
+
'Content-Type': 'application/json',
|
|
220
|
+
}
|
|
221
|
+
});
|
|
222
|
+
if (response.status.toString().startsWith('2') === false) {
|
|
223
|
+
console.warn("Codenotch startProcess: failed to start process", response.status, response.statusText);
|
|
224
|
+
return {
|
|
225
|
+
isError: true,
|
|
226
|
+
output: undefined,
|
|
227
|
+
processInstanceId: '',
|
|
228
|
+
errorMessage: `Failed to start process: ${response.status} ${response.statusText}`
|
|
229
|
+
};
|
|
230
|
+
}
|
|
231
|
+
// Check response
|
|
232
|
+
const instanceData = await response.json();
|
|
233
|
+
if (!instanceData.instanceId || !instanceData.instanceToken) {
|
|
234
|
+
console.warn("Codenotch startProcess: invalid response data", instanceData);
|
|
235
|
+
return {
|
|
236
|
+
isError: true,
|
|
237
|
+
output: undefined,
|
|
238
|
+
processInstanceId: '',
|
|
239
|
+
errorMessage: `Failed to start process: invalid response data`
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
const getProcessResult = async () => {
|
|
243
|
+
// Instance get: http://127.0.0.1:5005/instances/826bd498-e410-4c48-b29a-e79a76b75ef1
|
|
244
|
+
// Token header: Codenotch-Instance-Token
|
|
245
|
+
/*
|
|
246
|
+
{
|
|
247
|
+
"id": "826bd498-e410-4c48-b29a-e79a76b75ef1",
|
|
248
|
+
"state": "SUCCESS",
|
|
249
|
+
"output": {
|
|
250
|
+
"result": "Hello, World!"
|
|
251
|
+
},
|
|
252
|
+
"errors": []
|
|
253
|
+
}
|
|
254
|
+
*/
|
|
255
|
+
const instanceResp = await fetch(`${env.clusterUrl}/instances/${instanceData.instanceId}`, {
|
|
256
|
+
method: 'GET',
|
|
257
|
+
headers: {
|
|
258
|
+
'Codenotch-Instance-Token': instanceData.instanceToken
|
|
259
|
+
}
|
|
260
|
+
});
|
|
261
|
+
const instanceDataResp = await instanceResp.json();
|
|
262
|
+
if (instanceDataResp.state === 'SUCCESS') {
|
|
263
|
+
return instanceDataResp.output;
|
|
264
|
+
}
|
|
265
|
+
console.log("instanceDataResp", instanceDataResp);
|
|
266
|
+
return undefined;
|
|
267
|
+
};
|
|
268
|
+
const timeout = 30000; // 30 seconds
|
|
269
|
+
const pollInterval = 500; // 0.5 second
|
|
270
|
+
const startTime = Date.now();
|
|
271
|
+
while (Date.now() - startTime < timeout) {
|
|
272
|
+
const result = await getProcessResult();
|
|
273
|
+
if (result !== undefined) {
|
|
274
|
+
return {
|
|
275
|
+
isError: false,
|
|
276
|
+
output: result,
|
|
277
|
+
processInstanceId: instanceData.instanceId,
|
|
278
|
+
errorMessage: ''
|
|
279
|
+
};
|
|
280
|
+
}
|
|
281
|
+
await new Promise(resolve => setTimeout(resolve, pollInterval));
|
|
282
|
+
}
|
|
283
|
+
console.warn(`Codenotch startProcess: process ${processId} timed out after ${timeout} ms`);
|
|
284
|
+
return {
|
|
285
|
+
isError: true,
|
|
286
|
+
output: undefined,
|
|
287
|
+
processInstanceId: instanceData.instanceId,
|
|
288
|
+
errorMessage: `Process timed out after ${timeout} ms`
|
|
289
|
+
};
|
|
199
290
|
},
|
|
200
291
|
getUrlParams: () => {
|
|
201
292
|
let result = {};
|
|
@@ -58,7 +58,7 @@ export interface ICodenotchApi {
|
|
|
58
58
|
/**
|
|
59
59
|
* Start a server-side BPMN process and wait for its completion.
|
|
60
60
|
*/
|
|
61
|
-
startProcess<
|
|
61
|
+
startProcess<TInput, TOutput>(processId: string, inputs: TInput): Promise<IProcessResult<TOutput>>;
|
|
62
62
|
/** Runtime environment (cluster, service, language, theme dictionaries, manifests…). Populated by `init()`. */
|
|
63
63
|
readonly env: ICodenotchEnv;
|
|
64
64
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Codenotch.d.ts","sourceRoot":"","sources":["../../src/models/Codenotch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAGpF;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC1B,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iGAAiG;IACjG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oHAAoH;IACpH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iGAAiG;IACjG,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yGAAyG;IACzG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2CAA2C;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2GAA2G;IAC3G,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAEzB,gGAAgG;IAChG,WAAW,CAAC,EAAE,YAAY,CAAC;IAC3B,8EAA8E;IAC9E,eAAe,CAAC,EAAE,yBAAyB,CAAC;IAE5C,8DAA8D;IAC9D,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,GAAG;IAEnC,kDAAkD;IAClD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iEAAiE;IACjE,MAAM,EAAE,CAAC,CAAC;IACV,oFAAoF;IACpF,OAAO,EAAE,OAAO,CAAC;IACjB,oDAAoD;IACpD,YAAY,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa;IAE1B;;OAEG;IACH,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"Codenotch.d.ts","sourceRoot":"","sources":["../../src/models/Codenotch.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codenotch/codenotch.react",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.3",
|
|
4
4
|
"description": "React bindings for Codenotch applications: start BPMN processes, run cnql queries, listen to real-time signals, manage theme and language.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"codenotch",
|
package/src/index.ts
CHANGED
|
@@ -177,8 +177,108 @@ function createApi(): ICodenotchApi {
|
|
|
177
177
|
|
|
178
178
|
return await response.json();
|
|
179
179
|
},
|
|
180
|
-
startProcess: async <
|
|
181
|
-
throw new Error(
|
|
180
|
+
startProcess: async <TInput, TOutput>(processId: string, inputs: TInput): Promise<IProcessResult<TOutput>> => {
|
|
181
|
+
if (env.clusterUrl === undefined) throw new Error(MISSING_CLUSTER_URL_ERROR);
|
|
182
|
+
if (env.serviceName === undefined) throw new Error(MISSING_SERVICE_NAME_ERROR);
|
|
183
|
+
|
|
184
|
+
// Exemple url: http://127.0.0.1:5005/test1/processes/helloWorldProcess/instances
|
|
185
|
+
// Format: {env.clusterUrl}/{env.serviceName}/processes/{process}/instances
|
|
186
|
+
/*
|
|
187
|
+
Response is like :
|
|
188
|
+
{
|
|
189
|
+
"instanceId": "0bb026e7-5470-486d-8164-dc83d7e32bd7",
|
|
190
|
+
"instanceToken": "eyJhbGciOiJSUzI1NiIsImtpZCI6IjI5NTllZGY4LTdkY2UtND...0wYVg"
|
|
191
|
+
}
|
|
192
|
+
*/
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
// Starts the process
|
|
196
|
+
const response = await fetch(`${env.clusterUrl}/${env.serviceName}/processes/${processId}/instances`,
|
|
197
|
+
{
|
|
198
|
+
method: 'POST',
|
|
199
|
+
body: JSON.stringify({
|
|
200
|
+
"id": v4(),
|
|
201
|
+
"input": inputs
|
|
202
|
+
}),
|
|
203
|
+
headers: {
|
|
204
|
+
'Content-Type': 'application/json',
|
|
205
|
+
}
|
|
206
|
+
});
|
|
207
|
+
if (response.status.toString().startsWith('2') === false) {
|
|
208
|
+
console.warn("Codenotch startProcess: failed to start process", response.status, response.statusText);
|
|
209
|
+
return {
|
|
210
|
+
isError: true,
|
|
211
|
+
output: undefined as any,
|
|
212
|
+
processInstanceId: '',
|
|
213
|
+
errorMessage: `Failed to start process: ${response.status} ${response.statusText}`
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
// Check response
|
|
218
|
+
const instanceData: { instanceId: string; instanceToken: string } = await response.json();
|
|
219
|
+
if (!instanceData.instanceId || !instanceData.instanceToken) {
|
|
220
|
+
console.warn("Codenotch startProcess: invalid response data", instanceData);
|
|
221
|
+
return {
|
|
222
|
+
isError: true,
|
|
223
|
+
output: undefined as any,
|
|
224
|
+
processInstanceId: '',
|
|
225
|
+
errorMessage: `Failed to start process: invalid response data`
|
|
226
|
+
};
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
const getProcessResult = async () => {
|
|
230
|
+
// Instance get: http://127.0.0.1:5005/instances/826bd498-e410-4c48-b29a-e79a76b75ef1
|
|
231
|
+
// Token header: Codenotch-Instance-Token
|
|
232
|
+
/*
|
|
233
|
+
{
|
|
234
|
+
"id": "826bd498-e410-4c48-b29a-e79a76b75ef1",
|
|
235
|
+
"state": "SUCCESS",
|
|
236
|
+
"output": {
|
|
237
|
+
"result": "Hello, World!"
|
|
238
|
+
},
|
|
239
|
+
"errors": []
|
|
240
|
+
}
|
|
241
|
+
*/
|
|
242
|
+
const instanceResp = await fetch(`${env.clusterUrl}/instances/${instanceData.instanceId}`, {
|
|
243
|
+
method: 'GET',
|
|
244
|
+
headers: {
|
|
245
|
+
'Codenotch-Instance-Token': instanceData.instanceToken
|
|
246
|
+
}
|
|
247
|
+
});
|
|
248
|
+
const instanceDataResp: { state: string; output: any; errors: any[] } = await instanceResp.json();
|
|
249
|
+
if (instanceDataResp.state === 'SUCCESS') {
|
|
250
|
+
return instanceDataResp.output;
|
|
251
|
+
}
|
|
252
|
+
console.log("instanceDataResp", instanceDataResp);
|
|
253
|
+
return undefined;
|
|
254
|
+
};
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
const timeout = 30000; // 30 seconds
|
|
258
|
+
const pollInterval = 500; // 0.5 second
|
|
259
|
+
const startTime = Date.now();
|
|
260
|
+
while (Date.now() - startTime < timeout) {
|
|
261
|
+
const result = await getProcessResult();
|
|
262
|
+
if (result !== undefined) {
|
|
263
|
+
return {
|
|
264
|
+
isError: false,
|
|
265
|
+
output: result as TOutput,
|
|
266
|
+
processInstanceId: instanceData.instanceId,
|
|
267
|
+
errorMessage: ''
|
|
268
|
+
};
|
|
269
|
+
}
|
|
270
|
+
await new Promise(resolve => setTimeout(resolve, pollInterval));
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
console.warn(`Codenotch startProcess: process ${processId} timed out after ${timeout} ms`);
|
|
274
|
+
return {
|
|
275
|
+
isError: true,
|
|
276
|
+
output: undefined as any,
|
|
277
|
+
processInstanceId: instanceData.instanceId,
|
|
278
|
+
errorMessage: `Process timed out after ${timeout} ms`
|
|
279
|
+
};
|
|
280
|
+
|
|
281
|
+
|
|
182
282
|
},
|
|
183
283
|
getUrlParams: () => {
|
|
184
284
|
let result: { [key: string]: string } = {};
|
package/src/models/Codenotch.ts
CHANGED
|
@@ -66,7 +66,7 @@ export interface ICodenotchApi {
|
|
|
66
66
|
/**
|
|
67
67
|
* Start a server-side BPMN process and wait for its completion.
|
|
68
68
|
*/
|
|
69
|
-
startProcess<
|
|
69
|
+
startProcess<TInput, TOutput>(processId: string, inputs: TInput): Promise<IProcessResult<TOutput>>;
|
|
70
70
|
|
|
71
71
|
/** Runtime environment (cluster, service, language, theme dictionaries, manifests…). Populated by `init()`. */
|
|
72
72
|
readonly env: ICodenotchEnv;
|