@coherentglobal/wasm-runner 0.0.83 → 0.0.85
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/.github/workflows/build-publish.yml +7 -3
- package/README.md +177 -9
- package/dist/browser.d.ts +1 -1
- package/dist/browser.js +77 -73
- package/dist/browser.js.map +1 -1
- package/package.json +56 -4
- package/tsconfig.json +17 -18
|
@@ -14,7 +14,9 @@ jobs:
|
|
|
14
14
|
steps:
|
|
15
15
|
- name: Checkout
|
|
16
16
|
uses: actions/checkout@v3
|
|
17
|
-
|
|
17
|
+
- uses: actions/setup-node@v3
|
|
18
|
+
with:
|
|
19
|
+
node-version: 16
|
|
18
20
|
- name: Get yarn cache directory path
|
|
19
21
|
id: yarn-cache-dir-path
|
|
20
22
|
run: echo "::set-output name=dir::$(yarn cache dir)"
|
|
@@ -54,7 +56,9 @@ jobs:
|
|
|
54
56
|
steps:
|
|
55
57
|
- name: Checkout
|
|
56
58
|
uses: actions/checkout@v3
|
|
57
|
-
|
|
59
|
+
- uses: actions/setup-node@v3
|
|
60
|
+
with:
|
|
61
|
+
node-version: 16
|
|
58
62
|
- name: Get yarn cache directory path
|
|
59
63
|
id: yarn-cache-dir-path
|
|
60
64
|
run: echo "::set-output name=dir::$(yarn cache dir)"
|
|
@@ -101,7 +105,7 @@ jobs:
|
|
|
101
105
|
steps:
|
|
102
106
|
- name: Checkout
|
|
103
107
|
uses: actions/checkout@v3
|
|
104
|
-
|
|
108
|
+
|
|
105
109
|
- name: Get yarn cache directory path
|
|
106
110
|
id: yarn-cache-dir-path
|
|
107
111
|
run: echo "::set-output name=dir::$(yarn cache dir)"
|
package/README.md
CHANGED
|
@@ -144,6 +144,174 @@ const response = await wasmRunner
|
|
|
144
144
|
// Do something the response
|
|
145
145
|
```
|
|
146
146
|
|
|
147
|
+
### NODE JS
|
|
148
|
+
|
|
149
|
+
We can call the SDK directly, then follow the normal process of initializing a model then calling the execute method for calculation.
|
|
150
|
+
|
|
151
|
+
```js
|
|
152
|
+
const { WasmRunner } = require("@coherentglobal/wasm-runner");
|
|
153
|
+
|
|
154
|
+
const param = {
|
|
155
|
+
id: "f30f5935-36c2-4155-aede-523ab2245fd6",
|
|
156
|
+
url: "<zip url>",
|
|
157
|
+
};
|
|
158
|
+
|
|
159
|
+
const payload = {
|
|
160
|
+
request_data: {
|
|
161
|
+
inputs: {
|
|
162
|
+
age: 60,
|
|
163
|
+
insure: "Insure",
|
|
164
|
+
medical: "Yes",
|
|
165
|
+
plan: "Plan 1",
|
|
166
|
+
},
|
|
167
|
+
},
|
|
168
|
+
request_meta: {
|
|
169
|
+
service_uri: "",
|
|
170
|
+
service_uuid: "",
|
|
171
|
+
version: "",
|
|
172
|
+
version_uuid: "f30f5935-36c2-4155-aede-523ab2245fd6",
|
|
173
|
+
transaction_date: "2021-08-18T04:17:17.142Z",
|
|
174
|
+
call_purpose: "postman_request",
|
|
175
|
+
source_system: "",
|
|
176
|
+
correlation_id: "",
|
|
177
|
+
requested_output: "",
|
|
178
|
+
},
|
|
179
|
+
};
|
|
180
|
+
|
|
181
|
+
const wasmRunner = new WasmRunner(param);
|
|
182
|
+
await wasmRunner.initialize();
|
|
183
|
+
const response = await wasmRunner
|
|
184
|
+
.execute(payload)
|
|
185
|
+
.catch((err) => ({ error: err.v3 }));
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
## Different Scenarios to Initialize a Model
|
|
189
|
+
|
|
190
|
+
### Scenario 1
|
|
191
|
+
|
|
192
|
+
Config is initialized directly on `WasmRunner` instance.
|
|
193
|
+
|
|
194
|
+
```js
|
|
195
|
+
const param = {
|
|
196
|
+
id: "f30f5935-36c2-4155-aede-523ab2245fd6",
|
|
197
|
+
url: "<zip url>",
|
|
198
|
+
};
|
|
199
|
+
|
|
200
|
+
const payload = {
|
|
201
|
+
request_data: {
|
|
202
|
+
inputs: {
|
|
203
|
+
age: 60,
|
|
204
|
+
insure: "Insure",
|
|
205
|
+
medical: "Yes",
|
|
206
|
+
plan: "Plan 1",
|
|
207
|
+
},
|
|
208
|
+
},
|
|
209
|
+
request_meta: {
|
|
210
|
+
service_uri: "",
|
|
211
|
+
service_uuid: "",
|
|
212
|
+
version: "",
|
|
213
|
+
version_uuid: "f30f5935-36c2-4155-aede-523ab2245fd6",
|
|
214
|
+
transaction_date: "2021-08-18T04:17:17.142Z",
|
|
215
|
+
call_purpose: "postman_request",
|
|
216
|
+
source_system: "",
|
|
217
|
+
correlation_id: "",
|
|
218
|
+
requested_output: "",
|
|
219
|
+
},
|
|
220
|
+
};
|
|
221
|
+
|
|
222
|
+
const wasmRunner = new WasmRunner(param);
|
|
223
|
+
await wasmRunner.initialize();
|
|
224
|
+
const response = await wasmRunner
|
|
225
|
+
.execute(payload)
|
|
226
|
+
.catch((err) => ({ error: err.v3 }));
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
### Scenario 2
|
|
230
|
+
|
|
231
|
+
Config is initialized via the `append` method.
|
|
232
|
+
|
|
233
|
+
```js
|
|
234
|
+
const param = {
|
|
235
|
+
id: "f30f5935-36c2-4155-aede-523ab2245fd6",
|
|
236
|
+
url: "<zip url>",
|
|
237
|
+
};
|
|
238
|
+
|
|
239
|
+
const payload = {
|
|
240
|
+
request_data: {
|
|
241
|
+
inputs: {
|
|
242
|
+
age: 60,
|
|
243
|
+
insure: "Insure",
|
|
244
|
+
medical: "Yes",
|
|
245
|
+
plan: "Plan 1",
|
|
246
|
+
},
|
|
247
|
+
},
|
|
248
|
+
request_meta: {
|
|
249
|
+
service_uri: "",
|
|
250
|
+
service_uuid: "",
|
|
251
|
+
version: "",
|
|
252
|
+
version_uuid: "f30f5935-36c2-4155-aede-523ab2245fd6",
|
|
253
|
+
transaction_date: "2021-08-18T04:17:17.142Z",
|
|
254
|
+
call_purpose: "postman_request",
|
|
255
|
+
source_system: "",
|
|
256
|
+
correlation_id: "",
|
|
257
|
+
requested_output: "",
|
|
258
|
+
},
|
|
259
|
+
};
|
|
260
|
+
|
|
261
|
+
const wasmRunner = new WasmRunner();
|
|
262
|
+
await wasmRunner.append(param);
|
|
263
|
+
await wasmRunner.initialize();
|
|
264
|
+
const response = await wasmRunner
|
|
265
|
+
.execute(payload)
|
|
266
|
+
.catch((err) => ({ error: err.v3 }));
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
### Scenario 3
|
|
270
|
+
|
|
271
|
+
Config is initialized directly on `WasmRunner` instance and append a new model via the `append` method.
|
|
272
|
+
|
|
273
|
+
```js
|
|
274
|
+
const param = {
|
|
275
|
+
id: "f30f5935-36c2-4155-aede-523ab2245fd6",
|
|
276
|
+
url: "<zip url>",
|
|
277
|
+
};
|
|
278
|
+
|
|
279
|
+
const param2 = {
|
|
280
|
+
id: "e8ba9e7e-169c-4752-8a8e-d6eb0c78cb01",
|
|
281
|
+
url: "<zip url>",
|
|
282
|
+
};
|
|
283
|
+
|
|
284
|
+
const payload = {
|
|
285
|
+
request_data: {
|
|
286
|
+
inputs: {
|
|
287
|
+
age: 60,
|
|
288
|
+
insure: "Insure",
|
|
289
|
+
medical: "Yes",
|
|
290
|
+
plan: "Plan 1",
|
|
291
|
+
},
|
|
292
|
+
},
|
|
293
|
+
request_meta: {
|
|
294
|
+
service_uri: "",
|
|
295
|
+
service_uuid: "",
|
|
296
|
+
version: "",
|
|
297
|
+
version_uuid: "f30f5935-36c2-4155-aede-523ab2245fd6",
|
|
298
|
+
transaction_date: "2021-08-18T04:17:17.142Z",
|
|
299
|
+
call_purpose: "postman_request",
|
|
300
|
+
source_system: "",
|
|
301
|
+
correlation_id: "",
|
|
302
|
+
requested_output: "",
|
|
303
|
+
},
|
|
304
|
+
};
|
|
305
|
+
|
|
306
|
+
const wasmRunner = new WasmRunner(param);
|
|
307
|
+
await wasmRunner.initialize();
|
|
308
|
+
await wasmRunner.append(param2);
|
|
309
|
+
|
|
310
|
+
const response = await wasmRunner
|
|
311
|
+
.execute(payload)
|
|
312
|
+
.catch((err) => ({ error: err.v3 }));
|
|
313
|
+
```
|
|
314
|
+
|
|
147
315
|
# Development
|
|
148
316
|
|
|
149
317
|
## Setup
|
|
@@ -162,7 +330,7 @@ $ yarn install
|
|
|
162
330
|
Append and initialized new model to runner
|
|
163
331
|
|
|
164
332
|
```js
|
|
165
|
-
await wasmRunner.append(param)
|
|
333
|
+
await wasmRunner.append(param);
|
|
166
334
|
```
|
|
167
335
|
|
|
168
336
|
### (async) execute(input)
|
|
@@ -170,11 +338,9 @@ await wasmRunner.append(param)
|
|
|
170
338
|
Perform calculation. The runner will use request_meta.version_uuid of input argument to locate model
|
|
171
339
|
|
|
172
340
|
```js
|
|
173
|
-
const response = await wasmRunner
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
// Do something here
|
|
177
|
-
});
|
|
341
|
+
const response = await wasmRunner.execute(payload).catch((err) => {
|
|
342
|
+
// Do something here
|
|
343
|
+
});
|
|
178
344
|
```
|
|
179
345
|
|
|
180
346
|
### isExist(id)
|
|
@@ -186,12 +352,13 @@ if (wasmRunner.isExist(id)) {
|
|
|
186
352
|
// Do something here
|
|
187
353
|
}
|
|
188
354
|
```
|
|
355
|
+
|
|
189
356
|
### remove(id)
|
|
190
357
|
|
|
191
358
|
Remove model from runner
|
|
192
359
|
|
|
193
360
|
```js
|
|
194
|
-
wasmRunner.remove(id)
|
|
361
|
+
wasmRunner.remove(id);
|
|
195
362
|
```
|
|
196
363
|
|
|
197
364
|
## Initialize Model
|
|
@@ -205,8 +372,9 @@ const wasmRunner = new WasmRunner(param);
|
|
|
205
372
|
And the second way is by using the append method.
|
|
206
373
|
|
|
207
374
|
```js
|
|
208
|
-
await wasmRunner.append(param)
|
|
375
|
+
await wasmRunner.append(param);
|
|
209
376
|
```
|
|
377
|
+
|
|
210
378
|
# Limitations
|
|
211
379
|
|
|
212
380
|
## Lower Level Error
|
|
@@ -217,7 +385,7 @@ Please note that if there's lower level error that occurs, wasm runner can't han
|
|
|
217
385
|
|
|
218
386
|
## Sample Payload
|
|
219
387
|
|
|
220
|
-
```
|
|
388
|
+
```js
|
|
221
389
|
{
|
|
222
390
|
"request_data": {
|
|
223
391
|
"inputs": {
|
package/dist/browser.d.ts
CHANGED
|
@@ -63,5 +63,5 @@ export declare class WasmRunner {
|
|
|
63
63
|
* @param {InputObject} input - Input data for calculation
|
|
64
64
|
* @returns {Promise<Object>} - Response model data
|
|
65
65
|
*/
|
|
66
|
-
execute(input: InputObject, id?:
|
|
66
|
+
execute(input: InputObject, id?: string): Promise<ResponseObject>;
|
|
67
67
|
}
|
package/dist/browser.js
CHANGED
|
@@ -39,77 +39,76 @@ exports.WasmRunner = void 0;
|
|
|
39
39
|
/* eslint-disable no-underscore-dangle */
|
|
40
40
|
/* eslint-disable import/prefer-default-export */
|
|
41
41
|
const cuid_1 = __importDefault(require("cuid"));
|
|
42
|
-
const jszip_1 = __importDefault(require("jszip"));
|
|
43
42
|
const path_1 = __importDefault(require("path"));
|
|
44
43
|
const utils = __importStar(require("./utils"));
|
|
45
44
|
const logger_1 = __importStar(require("./browser/logger"));
|
|
46
45
|
const template_1 = __importDefault(require("./browser/template"));
|
|
47
46
|
const is_buffer_1 = __importDefault(require("is-buffer"));
|
|
48
47
|
const error_1 = __importDefault(require("./error"));
|
|
48
|
+
const unzipit = __importStar(require("unzipit"));
|
|
49
49
|
const unzipFile = (zipURL) => __awaiter(void 0, void 0, void 0, function* () {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
if (path_1.default.extname(entry) === ".js") {
|
|
66
|
-
jsPath = entry;
|
|
67
|
-
}
|
|
68
|
-
if (path_1.default.extname(entry) === ".wasm") {
|
|
69
|
-
wasmPath = entry;
|
|
70
|
-
}
|
|
71
|
-
if (path_1.default.extname(entry) === ".data") {
|
|
72
|
-
dataPath = entry;
|
|
73
|
-
}
|
|
74
|
-
if (entry.toLowerCase().indexOf("_static.json") > -1) {
|
|
75
|
-
metadataPath = entry;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
if (!jsPath)
|
|
80
|
-
return reject(new Error("Missing runtime file"));
|
|
81
|
-
if (!wasmPath)
|
|
82
|
-
return reject(new Error("Missing engine file"));
|
|
83
|
-
js = yield zipped.file(jsPath).async("text");
|
|
84
|
-
wasm = yield zipped.file(wasmPath).async("arraybuffer");
|
|
85
|
-
const response = {
|
|
86
|
-
wasm: {
|
|
87
|
-
url: URL.createObjectURL(new Blob([wasm], { type: "application/wasm" })),
|
|
88
|
-
path: wasmPath,
|
|
89
|
-
},
|
|
90
|
-
js: {
|
|
91
|
-
url: URL.createObjectURL(new Blob([js], { type: "text/javascript" })),
|
|
92
|
-
path: jsPath,
|
|
93
|
-
},
|
|
94
|
-
};
|
|
95
|
-
if (dataPath) {
|
|
96
|
-
data = yield zipped.file(dataPath).async("arraybuffer");
|
|
97
|
-
response.data = {
|
|
98
|
-
url: URL.createObjectURL(new Blob([data], { type: "application/octet-stream" })),
|
|
99
|
-
path: dataPath,
|
|
100
|
-
};
|
|
50
|
+
try {
|
|
51
|
+
let js;
|
|
52
|
+
let jsPath;
|
|
53
|
+
let wasm;
|
|
54
|
+
let wasmPath;
|
|
55
|
+
let dataPath;
|
|
56
|
+
let data;
|
|
57
|
+
let metadata;
|
|
58
|
+
let metadataPath;
|
|
59
|
+
// USING UNZIPIT PACKAGE
|
|
60
|
+
const { entries } = yield unzipit.unzip(zipURL);
|
|
61
|
+
Object.keys(entries).forEach((entry) => {
|
|
62
|
+
if (entry.indexOf("__MACOSX") === -1) {
|
|
63
|
+
if (path_1.default.extname(entry) === ".js") {
|
|
64
|
+
jsPath = entry;
|
|
101
65
|
}
|
|
102
|
-
if (
|
|
103
|
-
|
|
104
|
-
response.metadata = {
|
|
105
|
-
url: URL.createObjectURL(new Blob([metadata], { type: "application/json" })),
|
|
106
|
-
path: metadataPath,
|
|
107
|
-
};
|
|
66
|
+
if (path_1.default.extname(entry) === ".wasm") {
|
|
67
|
+
wasmPath = entry;
|
|
108
68
|
}
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
69
|
+
if (path_1.default.extname(entry) === ".data") {
|
|
70
|
+
dataPath = entry;
|
|
71
|
+
}
|
|
72
|
+
if (entry.toLowerCase().indexOf("_static.json") > -1) {
|
|
73
|
+
metadataPath = entry;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
if (!jsPath)
|
|
78
|
+
throw new Error("Missing runtime file");
|
|
79
|
+
if (!wasmPath)
|
|
80
|
+
throw new Error("Missing engine file");
|
|
81
|
+
js = yield entries[jsPath].text();
|
|
82
|
+
wasm = yield entries[wasmPath].arrayBuffer();
|
|
83
|
+
const response = {
|
|
84
|
+
js: {
|
|
85
|
+
url: URL.createObjectURL(new Blob([js], { type: "text/javascript" })),
|
|
86
|
+
path: jsPath,
|
|
87
|
+
},
|
|
88
|
+
wasm: {
|
|
89
|
+
url: URL.createObjectURL(new Blob([wasm], { type: "application/wasm" })),
|
|
90
|
+
path: wasmPath,
|
|
91
|
+
},
|
|
92
|
+
};
|
|
93
|
+
if (dataPath) {
|
|
94
|
+
data = yield entries[dataPath].arrayBuffer();
|
|
95
|
+
response.data = {
|
|
96
|
+
url: URL.createObjectURL(new Blob([data], { type: "application/octet-stream" })),
|
|
97
|
+
path: dataPath,
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
if (metadataPath) {
|
|
101
|
+
metadata = yield entries[metadataPath].text();
|
|
102
|
+
response.metadata = {
|
|
103
|
+
url: URL.createObjectURL(new Blob([metadata], { type: "application/json" })),
|
|
104
|
+
path: metadataPath,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
return response;
|
|
108
|
+
}
|
|
109
|
+
catch (err) {
|
|
110
|
+
throw new Error(err);
|
|
111
|
+
}
|
|
113
112
|
});
|
|
114
113
|
const unzipBuffer = (model) => __awaiter(void 0, void 0, void 0, function* () {
|
|
115
114
|
let js;
|
|
@@ -121,9 +120,10 @@ const unzipBuffer = (model) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
121
120
|
let metadata;
|
|
122
121
|
let metadataPath;
|
|
123
122
|
const modelToBlob = new Blob([new Uint8Array(model)]);
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
123
|
+
// USING UNZIPIT
|
|
124
|
+
try {
|
|
125
|
+
const { entries } = yield unzipit.unzip(modelToBlob);
|
|
126
|
+
Object.keys(entries).forEach((entry) => {
|
|
127
127
|
if (entry.indexOf("__MACOSX") === -1) {
|
|
128
128
|
if (path_1.default.extname(entry) === ".js") {
|
|
129
129
|
jsPath = entry;
|
|
@@ -139,10 +139,12 @@ const unzipBuffer = (model) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
139
139
|
}
|
|
140
140
|
}
|
|
141
141
|
});
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
142
|
+
if (!jsPath)
|
|
143
|
+
throw new Error("Missing runtime file");
|
|
144
|
+
if (!wasmPath)
|
|
145
|
+
throw new Error("Missing engine file");
|
|
146
|
+
js = yield entries[jsPath].text();
|
|
147
|
+
wasm = yield entries[wasmPath].arrayBuffer();
|
|
146
148
|
const response = {
|
|
147
149
|
wasm: {
|
|
148
150
|
url: URL.createObjectURL(new Blob([wasm], { type: "application/wasm" })),
|
|
@@ -154,22 +156,24 @@ const unzipBuffer = (model) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
154
156
|
},
|
|
155
157
|
};
|
|
156
158
|
if (dataPath) {
|
|
157
|
-
data = yield
|
|
159
|
+
data = yield entries[dataPath].arrayBuffer();
|
|
158
160
|
response.data = {
|
|
159
161
|
url: URL.createObjectURL(new Blob([data], { type: "application/octet-stream" })),
|
|
160
162
|
path: dataPath,
|
|
161
163
|
};
|
|
162
164
|
}
|
|
163
165
|
if (metadataPath) {
|
|
164
|
-
metadata = yield
|
|
166
|
+
metadata = yield entries[metadataPath].text();
|
|
165
167
|
response.metadata = {
|
|
166
168
|
url: URL.createObjectURL(new Blob([metadata], { type: "application/json" })),
|
|
167
169
|
path: metadataPath,
|
|
168
170
|
};
|
|
169
171
|
}
|
|
170
172
|
return response;
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
+
}
|
|
174
|
+
catch (err) {
|
|
175
|
+
throw new Error(err);
|
|
176
|
+
}
|
|
173
177
|
});
|
|
174
178
|
const unzipppedModel = (model) => __awaiter(void 0, void 0, void 0, function* () {
|
|
175
179
|
const { servicename, wasm, js, data, metadata } = model;
|
package/dist/browser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@coherentglobal/wasm-runner",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.85",
|
|
4
4
|
"description": "Coherent WASM runner for Javascript and Node.js",
|
|
5
5
|
"main": "dist/node.js",
|
|
6
6
|
"browser": "dist/browser.js",
|
|
7
7
|
"repository": "git@github.com:CoherentCapital/wasm-runner-js.git",
|
|
8
8
|
"author": "Coherent Global",
|
|
9
9
|
"license": "MIT",
|
|
10
|
+
"directories": {
|
|
11
|
+
"test": "tests"
|
|
12
|
+
},
|
|
10
13
|
"scripts": {
|
|
11
14
|
"lint": "eslint ./src --fix",
|
|
12
15
|
"format": "prettier --write .",
|
|
@@ -19,16 +22,30 @@
|
|
|
19
22
|
"compress": "yarn compress:runtime && yarn compress:worker",
|
|
20
23
|
"bundle:full": "browserify src/browser.ts --standalone CoherentGlobal -p [ tsify ] > lib/wasmrunner.js",
|
|
21
24
|
"bundle:min": "browserify src/browser.ts --standalone CoherentGlobal -p [ tsify ] | terser --compress --mangle --comments false > lib/wasmrunner.min.js",
|
|
22
|
-
"prep:samples:simple-html": "yarn bundle && cp ./lib/wasmrunner.js example/simple-html/ && cp ./lib/wasmrunner.min.js example/simple-html/"
|
|
25
|
+
"prep:samples:simple-html": "yarn bundle && cp ./lib/wasmrunner.js example/simple-html/ && cp ./lib/wasmrunner.min.js example/simple-html/",
|
|
26
|
+
"test:lcov": "nyc --check-coverage --lines 50 npm run test ",
|
|
27
|
+
"test:reporter": "mocha -r ts-node/register tests/**/*.test.ts --bail --exit --recursive --timeout 100000 --reporter mocha-sonarqube-reporter tests --reporter-options output=./reports/test-reporter.xml",
|
|
28
|
+
"test-coverage": "npm run test:lcov && npm run test:reporter",
|
|
29
|
+
"test": "mocha -r ts-node/register tests/**/*.test.ts --bail --exit --recursive --timeout 100000",
|
|
30
|
+
"test:single": "mocha -r ts-node/register --timeout 100000 "
|
|
23
31
|
},
|
|
24
32
|
"devDependencies": {
|
|
25
33
|
"@babel/cli": "^7.20.7",
|
|
26
34
|
"@babel/core": "^7.20.12",
|
|
27
35
|
"@babel/plugin-transform-runtime": "^7.19.6",
|
|
28
36
|
"@babel/preset-env": "^7.20.2",
|
|
37
|
+
"@istanbuljs/nyc-config-typescript": "^1.0.2",
|
|
38
|
+
"@types/isomorphic-fetch": "^0.0.36",
|
|
39
|
+
"@types/jest": "^29.5.0",
|
|
40
|
+
"@types/jsdom": "^21.1.0",
|
|
41
|
+
"@types/mocha": "^10.0.1",
|
|
42
|
+
"@types/should": "^13.0.0",
|
|
43
|
+
"@types/sinon": "^10.0.13",
|
|
44
|
+
"@types/supertest": "^2.0.12",
|
|
29
45
|
"babel-eslint": "^10.1.0",
|
|
30
46
|
"babelify": "^10.0.0",
|
|
31
47
|
"browserify": "^17.0.0",
|
|
48
|
+
"cross-blob": "^3.0.2",
|
|
32
49
|
"eslint": "^8.32.0",
|
|
33
50
|
"eslint-config-airbnb": "19.0.4",
|
|
34
51
|
"eslint-config-node": "^4.1.0",
|
|
@@ -39,10 +56,21 @@
|
|
|
39
56
|
"eslint-plugin-prettier": "^4.2.1",
|
|
40
57
|
"eslint-plugin-react": "^7.32.1",
|
|
41
58
|
"eslint-plugin-react-hooks": "^4.6.0",
|
|
59
|
+
"isomorphic-blob": "^1.0.1",
|
|
60
|
+
"isomorphic-fetch": "^3.0.0",
|
|
42
61
|
"jest": "^29.4.0",
|
|
62
|
+
"jsdom": "^21.1.1",
|
|
63
|
+
"mocha": "^10.2.0",
|
|
64
|
+
"mocha-sonarqube-reporter": "^1.0.2",
|
|
65
|
+
"node-fetch": "^3.3.1",
|
|
66
|
+
"nyc": "^15.1.0",
|
|
43
67
|
"prettier": "^2.8.3",
|
|
44
68
|
"replace": "^1.2.2",
|
|
69
|
+
"should": "^13.2.3",
|
|
70
|
+
"sinon": "^15.0.2",
|
|
71
|
+
"supertest": "^6.3.3",
|
|
45
72
|
"terser": "^5.16.1",
|
|
73
|
+
"ts-node": "^10.9.1",
|
|
46
74
|
"typescript": "4.5.4"
|
|
47
75
|
},
|
|
48
76
|
"dependencies": {
|
|
@@ -50,6 +78,7 @@
|
|
|
50
78
|
"@types/ejs": "^3.1.1",
|
|
51
79
|
"@types/got": "^9.6.12",
|
|
52
80
|
"@types/node": "17.0.10",
|
|
81
|
+
"@types/pino": "^7.0.5",
|
|
53
82
|
"@types/tmp": "^0.2.3",
|
|
54
83
|
"@types/unzipper": "^0.10.5",
|
|
55
84
|
"@types/worker-threads-pool": "^2.0.1",
|
|
@@ -57,11 +86,11 @@
|
|
|
57
86
|
"ejs": "^3.1.8",
|
|
58
87
|
"got": "11.8.6",
|
|
59
88
|
"is-buffer": "^2.0.5",
|
|
60
|
-
"jszip": "^3.10.1",
|
|
61
89
|
"node-worker-threads-pool": "^1.5.1",
|
|
62
|
-
"pino": "^8.
|
|
90
|
+
"pino": "^8.11.0",
|
|
63
91
|
"tmp": "^0.2.1",
|
|
64
92
|
"tsify": "^5.0.4",
|
|
93
|
+
"unzipit": "^1.4.2",
|
|
65
94
|
"unzipper": "^0.10.11"
|
|
66
95
|
},
|
|
67
96
|
"browserify": {
|
|
@@ -83,5 +112,28 @@
|
|
|
83
112
|
}
|
|
84
113
|
]
|
|
85
114
|
]
|
|
115
|
+
},
|
|
116
|
+
"nyc": {
|
|
117
|
+
"extends": "@istanbuljs/nyc-config-typescript",
|
|
118
|
+
"check-coverage": true,
|
|
119
|
+
"extension": [
|
|
120
|
+
".ts"
|
|
121
|
+
],
|
|
122
|
+
"all": true,
|
|
123
|
+
"include": [
|
|
124
|
+
"src/**/*.ts",
|
|
125
|
+
"tests/**/*.test.ts"
|
|
126
|
+
],
|
|
127
|
+
"exclude": [
|
|
128
|
+
"tests/**/*.test.js"
|
|
129
|
+
],
|
|
130
|
+
"reporter": [
|
|
131
|
+
"lcov",
|
|
132
|
+
"text-summary"
|
|
133
|
+
],
|
|
134
|
+
"report-dir": "coverage",
|
|
135
|
+
"require": [
|
|
136
|
+
"ts-node/register"
|
|
137
|
+
]
|
|
86
138
|
}
|
|
87
139
|
}
|
package/tsconfig.json
CHANGED
|
@@ -1,22 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"compilerOptions": {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
3
|
+
"module": "CommonJS",
|
|
4
|
+
"target": "es6",
|
|
5
|
+
"esModuleInterop": true,
|
|
6
|
+
"allowSyntheticDefaultImports": true,
|
|
7
|
+
"noImplicitAny": false,
|
|
8
|
+
"moduleResolution": "node",
|
|
9
|
+
"sourceMap": true,
|
|
10
|
+
"outDir": "dist",
|
|
11
|
+
"allowJs": true,
|
|
12
|
+
"baseUrl": ".",
|
|
13
|
+
"paths": {
|
|
14
|
+
"*": ["node_modules/*"]
|
|
15
|
+
},
|
|
16
|
+
"resolveJsonModule": true,
|
|
17
|
+
"skipLibCheck": true
|
|
18
18
|
},
|
|
19
|
-
"include": [
|
|
20
|
-
|
|
21
|
-
]
|
|
19
|
+
"include": ["src"],
|
|
20
|
+
"exclude": ["tests/**/*.test.ts"]
|
|
22
21
|
}
|