@mainsail/crypto-worker 0.0.1-evm.4 → 0.0.1-evm.41
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/distribution/defaults.js +3 -3
- package/distribution/defaults.js.map +1 -1
- package/distribution/service-provider.d.ts.map +1 -1
- package/distribution/service-provider.js +22 -6
- package/distribution/service-provider.js.map +1 -1
- package/distribution/worker-handler.d.ts +1 -1
- package/distribution/worker-handler.d.ts.map +1 -1
- package/distribution/worker-handler.js +42 -49
- package/distribution/worker-handler.js.map +1 -1
- package/distribution/worker-pool.d.ts +1 -1
- package/distribution/worker-pool.d.ts.map +1 -1
- package/distribution/worker-pool.js +10 -22
- package/distribution/worker-pool.js.map +1 -1
- package/distribution/worker.d.ts +1 -1
- package/distribution/worker.d.ts.map +1 -1
- package/distribution/worker.js +12 -26
- package/distribution/worker.js.map +1 -1
- package/package.json +11 -11
package/distribution/defaults.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { EnvironmentVariables } from "@mainsail/constants";
|
|
2
2
|
import { Environment } from "@mainsail/kernel";
|
|
3
3
|
import { cpus } from "os";
|
|
4
4
|
export const defaults = {
|
|
5
|
-
workerCount: Environment.get(
|
|
6
|
-
workerLoggingEnabled: Environment.isTrue(
|
|
5
|
+
workerCount: Environment.get(EnvironmentVariables.MAINSAIL_CRYPTO_WORKER_COUNT, cpus().length),
|
|
6
|
+
workerLoggingEnabled: Environment.isTrue(EnvironmentVariables.MAINSAIL_CRYPTO_WORKER_LOGGING_ENABLED),
|
|
7
7
|
};
|
|
8
8
|
//# sourceMappingURL=defaults.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../source/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../source/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAE1B,MAAM,CAAC,MAAM,QAAQ,GAAG;IACvB,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,oBAAoB,CAAC,4BAA4B,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC;IAC9F,oBAAoB,EAAE,WAAW,CAAC,MAAM,CAAC,oBAAoB,CAAC,sCAAsC,CAAC;CACrG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-provider.d.ts","sourceRoot":"","sources":["../source/service-provider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"service-provider.d.ts","sourceRoot":"","sources":["../source/service-provider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAO,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,GAAG,MAAM,KAAK,CAAC;AAQtB,qBACa,eAAgB,SAAQ,SAAS,CAAC,eAAe;IAChD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBzB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxB,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;IAIlC,YAAY,IAAI,GAAG,CAAC,SAAS;CAMpC"}
|
|
@@ -1,4 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { Identifiers } from "@mainsail/constants";
|
|
8
|
+
import { injectable } from "@mainsail/container";
|
|
2
9
|
import { Ipc, Providers } from "@mainsail/kernel";
|
|
3
10
|
import Joi from "joi";
|
|
4
11
|
import { cpus } from "os";
|
|
@@ -6,14 +13,19 @@ import { URL } from "url";
|
|
|
6
13
|
import { Worker } from "worker_threads";
|
|
7
14
|
import { Worker as WorkerInstance } from "./worker.js";
|
|
8
15
|
import { WorkerPool } from "./worker-pool.js";
|
|
9
|
-
|
|
16
|
+
let ServiceProvider = class ServiceProvider extends Providers.ServiceProvider {
|
|
10
17
|
async register() {
|
|
11
18
|
this.app.bind(Identifiers.CryptoWorker.Worker.Instance).to(WorkerInstance);
|
|
12
|
-
this.app
|
|
19
|
+
this.app
|
|
20
|
+
.bind(Identifiers.CryptoWorker.Worker.Factory)
|
|
21
|
+
.toFactory((context) => () => context.get(Identifiers.CryptoWorker.Worker.Instance));
|
|
13
22
|
this.app.bind(Identifiers.CryptoWorker.WorkerPool).to(WorkerPool).inSingletonScope();
|
|
14
23
|
this.app.bind(Identifiers.CryptoWorker.WorkerSubprocess.Factory).toFactory(() => () => {
|
|
15
|
-
const subprocess = new Worker(`${new URL(".", import.meta.url).pathname}/worker-script.js`, {
|
|
16
|
-
|
|
24
|
+
const subprocess = new Worker(`${new URL(".", import.meta.url).pathname}/worker-script.js`, {
|
|
25
|
+
stderr: true,
|
|
26
|
+
stdout: true,
|
|
27
|
+
});
|
|
28
|
+
return new Ipc.Subprocess(this.app, "system", subprocess);
|
|
17
29
|
});
|
|
18
30
|
}
|
|
19
31
|
async boot() {
|
|
@@ -31,5 +43,9 @@ export class ServiceProvider extends Providers.ServiceProvider {
|
|
|
31
43
|
workerLoggingEnabled: Joi.bool().required(),
|
|
32
44
|
}).unknown(true);
|
|
33
45
|
}
|
|
34
|
-
}
|
|
46
|
+
};
|
|
47
|
+
ServiceProvider = __decorate([
|
|
48
|
+
injectable()
|
|
49
|
+
], ServiceProvider);
|
|
50
|
+
export { ServiceProvider };
|
|
35
51
|
//# sourceMappingURL=service-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-provider.js","sourceRoot":"","sources":["../source/service-provider.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"service-provider.js","sourceRoot":"","sources":["../source/service-provider.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGvC,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,SAAS,CAAC,eAAe;IACtD,KAAK,CAAC,QAAQ;QACpB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC;QAC3E,IAAI,CAAC,GAAG;aACN,IAAI,CAAuB,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC;aACnE,SAAS,CACT,CAAC,OAAqD,EAAE,EAAE,CAAC,GAAG,EAAE,CAC/D,OAAO,CAAC,GAAG,CAAiB,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CACtE,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,gBAAgB,EAAE,CAAC;QAErF,IAAI,CAAC,GAAG,CAAC,IAAI,CAAuB,WAAW,CAAC,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE;YAC3G,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,mBAAmB,EAAE;gBAC3F,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,IAAI;aACZ,CAAC,CAAC;YACH,OAAO,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,IAAI;QAChB,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAA8B,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7F,CAAC;IAEM,KAAK,CAAC,OAAO;QACnB,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAA8B,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC;IACjG,CAAC;IAEM,KAAK,CAAC,QAAQ;QACpB,OAAO,IAAI,CAAC;IACb,CAAC;IAEM,YAAY;QAClB,OAAO,GAAG,CAAC,MAAM,CAAC;YACjB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE;YACxE,oBAAoB,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;SAC3C,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;CACD,CAAA;AAvCY,eAAe;IAD3B,UAAU,EAAE;GACA,eAAe,CAuC3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-handler.d.ts","sourceRoot":"","sources":["../source/worker-handler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worker-handler.d.ts","sourceRoot":"","sources":["../source/worker-handler.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAyGrD,qBAAa,mBAAoB,YAAW,SAAS,CAAC,MAAM,CAAC,mBAAmB;;IAGlE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAexD,kBAAkB,CAAC,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,EAClG,MAAM,EAAE,CAAC,EACT,GAAG,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GACtD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAKxC,eAAe,CAAC,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,EAC/F,MAAM,EAAE,CAAC,EACT,GAAG,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GACtD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAKxC,YAAY,CAAC,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,EAC/F,MAAM,EAAE,CAAC,EACT,GAAG,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GACzD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAK3C,kBAAkB,CAAC,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAC3G,MAAM,EAAE,CAAC,EACT,GAAG,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GAC/D,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;IAKjD,gBAAgB,CAAC,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,EACvG,MAAM,EAAE,CAAC,EACT,GAAG,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAC7D,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;CAI5D"}
|
|
@@ -7,54 +7,45 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
9
|
};
|
|
10
|
-
|
|
11
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
12
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
13
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
14
|
-
};
|
|
15
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
16
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
17
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
18
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
19
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
20
|
-
};
|
|
21
|
-
var _WorkerImpl_instances, _WorkerImpl_call, _WorkerScriptHandler_app, _WorkerScriptHandler_impl;
|
|
10
|
+
import { Identifiers } from "@mainsail/constants";
|
|
22
11
|
import { Container, inject, injectable, tagged } from "@mainsail/container";
|
|
23
|
-
import { Contracts, Identifiers } from "@mainsail/contracts";
|
|
24
12
|
import { Application, Services } from "@mainsail/kernel";
|
|
25
13
|
let WorkerImpl = class WorkerImpl {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
14
|
+
blockFactory;
|
|
15
|
+
transactionFactory;
|
|
16
|
+
consensusSignature;
|
|
17
|
+
publicKeyFactory;
|
|
18
|
+
walletSignature;
|
|
29
19
|
async callConsensusSignature(method, arguments_) {
|
|
30
|
-
return
|
|
20
|
+
return this.#call(this.consensusSignature, method, arguments_);
|
|
31
21
|
}
|
|
32
22
|
async callWalletSignawture(method, arguments_) {
|
|
33
|
-
return
|
|
23
|
+
return this.#call(this.walletSignature, method, arguments_);
|
|
34
24
|
}
|
|
35
25
|
async callTransactionFactory(method, arguments_) {
|
|
36
|
-
return
|
|
26
|
+
return this.#call(this.transactionFactory, method, arguments_);
|
|
37
27
|
}
|
|
38
28
|
async callBlockFactory(method, arguments_) {
|
|
39
|
-
return
|
|
29
|
+
return this.#call(this.blockFactory, method, arguments_);
|
|
40
30
|
}
|
|
41
31
|
async callPublicKeyFactory(method, arguments_) {
|
|
42
|
-
return
|
|
32
|
+
return this.#call(this.publicKeyFactory, method, arguments_);
|
|
43
33
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
return argument
|
|
34
|
+
async #call(object, method, arguments_) {
|
|
35
|
+
const normalizedArguments = arguments_.map((argument) => {
|
|
36
|
+
if (isBufferJson(argument)) {
|
|
37
|
+
return Buffer.from(argument.data);
|
|
38
|
+
}
|
|
39
|
+
if (Array.isArray(argument) && argument.length > 0 && isBufferJson(argument[0])) {
|
|
40
|
+
return argument.map((item) => Buffer.from(item.data));
|
|
41
|
+
}
|
|
42
|
+
return argument;
|
|
43
|
+
});
|
|
44
|
+
if (typeof object[method] !== "function") {
|
|
45
|
+
throw new TypeError(`property "${method}" is not a function`);
|
|
53
46
|
}
|
|
54
|
-
return
|
|
55
|
-
}
|
|
56
|
-
// @ts-ignore
|
|
57
|
-
return object[method](...arguments_);
|
|
47
|
+
return object[method](...normalizedArguments);
|
|
48
|
+
}
|
|
58
49
|
};
|
|
59
50
|
__decorate([
|
|
60
51
|
inject(Identifiers.Cryptography.Block.Factory),
|
|
@@ -82,13 +73,18 @@ __decorate([
|
|
|
82
73
|
WorkerImpl = __decorate([
|
|
83
74
|
injectable()
|
|
84
75
|
], WorkerImpl);
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
_WorkerScriptHandler_app.set(this, void 0);
|
|
89
|
-
// @ts-ignore
|
|
90
|
-
_WorkerScriptHandler_impl.set(this, void 0);
|
|
76
|
+
function isBufferJson(value) {
|
|
77
|
+
if (typeof value !== "object" || value === null) {
|
|
78
|
+
return false;
|
|
91
79
|
}
|
|
80
|
+
const v = value;
|
|
81
|
+
if (v.type !== "Buffer") {
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
return Array.isArray(v.data) || v.data instanceof Uint8Array;
|
|
85
|
+
}
|
|
86
|
+
export class WorkerScriptHandler {
|
|
87
|
+
#impl;
|
|
92
88
|
async boot(flags) {
|
|
93
89
|
const app = new Application(new Container());
|
|
94
90
|
await app.bootstrap({
|
|
@@ -97,31 +93,28 @@ export class WorkerScriptHandler {
|
|
|
97
93
|
if (!flags.workerLoggingEnabled) {
|
|
98
94
|
app.rebind(Identifiers.Services.Log.Service).to(Services.Log.NullLogger);
|
|
99
95
|
}
|
|
100
|
-
// eslint-disable-next-line @typescript-eslint/await-thenable
|
|
101
96
|
await app.boot();
|
|
102
|
-
|
|
103
|
-
__classPrivateFieldSet(this, _WorkerScriptHandler_impl, app.resolve(WorkerImpl), "f");
|
|
97
|
+
this.#impl = app.resolve(WorkerImpl);
|
|
104
98
|
}
|
|
105
99
|
async consensusSignature(method, ...arguments_) {
|
|
106
100
|
// @ts-ignore
|
|
107
|
-
return
|
|
101
|
+
return this.#impl.callConsensusSignature(method, arguments_[0]);
|
|
108
102
|
}
|
|
109
103
|
async walletSignature(method, ...arguments_) {
|
|
110
104
|
// @ts-ignore
|
|
111
|
-
return
|
|
105
|
+
return this.#impl.callWalletSignawture(method, arguments_[0]);
|
|
112
106
|
}
|
|
113
107
|
async blockFactory(method, ...arguments_) {
|
|
114
108
|
// @ts-ignore
|
|
115
|
-
return
|
|
109
|
+
return this.#impl.callBlockFactory(method, arguments_[0]);
|
|
116
110
|
}
|
|
117
111
|
async transactionFactory(method, ...arguments_) {
|
|
118
112
|
// @ts-ignore
|
|
119
|
-
return
|
|
113
|
+
return this.#impl.callTransactionFactory(method, arguments_[0]);
|
|
120
114
|
}
|
|
121
115
|
async publicKeyFactory(method, ...arguments_) {
|
|
122
116
|
// @ts-ignore
|
|
123
|
-
return
|
|
117
|
+
return this.#impl.callPublicKeyFactory(method, arguments_[0]);
|
|
124
118
|
}
|
|
125
119
|
}
|
|
126
|
-
_WorkerScriptHandler_app = new WeakMap(), _WorkerScriptHandler_impl = new WeakMap();
|
|
127
120
|
//# sourceMappingURL=worker-handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-handler.js","sourceRoot":"","sources":["../source/worker-handler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worker-handler.js","sourceRoot":"","sources":["../source/worker-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool.d.ts","sourceRoot":"","sources":["../source/worker-pool.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worker-pool.d.ts","sourceRoot":"","sources":["../source/worker-pool.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAErD,qBACa,UAAW,YAAW,SAAS,CAAC,MAAM,CAAC,UAAU;;IAG7D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwC;IAGtE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2B;IAGlD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAkC;IAE/D,OAAO,CAAC,OAAO,CAAiC;IAGhD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgC;IAIzC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBrB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;CAM1D"}
|
|
@@ -7,26 +7,15 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
9
|
};
|
|
10
|
-
|
|
11
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
12
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
13
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
14
|
-
};
|
|
15
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
16
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
17
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
18
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
19
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
20
|
-
};
|
|
21
|
-
var _WorkerPool_currentWorkerIndex;
|
|
10
|
+
import { Identifiers } from "@mainsail/constants";
|
|
22
11
|
import { inject, injectable, tagged } from "@mainsail/container";
|
|
23
|
-
import { Contracts, Identifiers } from "@mainsail/contracts";
|
|
24
|
-
import { Providers, Types } from "@mainsail/kernel";
|
|
25
12
|
let WorkerPool = class WorkerPool {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
13
|
+
configuration;
|
|
14
|
+
logger;
|
|
15
|
+
createWorker;
|
|
16
|
+
workers = [];
|
|
17
|
+
flags;
|
|
18
|
+
#currentWorkerIndex = 0;
|
|
30
19
|
async boot() {
|
|
31
20
|
const workerCount = this.configuration.getRequired("workerCount");
|
|
32
21
|
for (let index = 0; index < workerCount; index++) {
|
|
@@ -44,16 +33,15 @@ let WorkerPool = class WorkerPool {
|
|
|
44
33
|
await Promise.all(this.workers.map(async (worker) => await worker.kill()));
|
|
45
34
|
}
|
|
46
35
|
async getWorker() {
|
|
47
|
-
const worker = this.workers[
|
|
48
|
-
|
|
36
|
+
const worker = this.workers[this.#currentWorkerIndex];
|
|
37
|
+
this.#currentWorkerIndex = (this.#currentWorkerIndex + 1) % this.workers.length;
|
|
49
38
|
return worker;
|
|
50
39
|
}
|
|
51
40
|
};
|
|
52
|
-
_WorkerPool_currentWorkerIndex = new WeakMap();
|
|
53
41
|
__decorate([
|
|
54
42
|
inject(Identifiers.ServiceProvider.Configuration),
|
|
55
43
|
tagged("plugin", "crypto-worker"),
|
|
56
|
-
__metadata("design:type",
|
|
44
|
+
__metadata("design:type", Object)
|
|
57
45
|
], WorkerPool.prototype, "configuration", void 0);
|
|
58
46
|
__decorate([
|
|
59
47
|
inject(Identifiers.Services.Log.Service),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool.js","sourceRoot":"","sources":["../source/worker-pool.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worker-pool.js","sourceRoot":"","sources":["../source/worker-pool.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAI1D,IAAM,UAAU,GAAhB,MAAM,UAAU;IAGL,aAAa,CAAwC;IAGrD,MAAM,CAA2B;IAGjC,YAAY,CAAkC;IAEvD,OAAO,GAA8B,EAAE,CAAC;IAG/B,KAAK,CAAgC;IAEtD,mBAAmB,GAAG,CAAC,CAAC;IAEjB,KAAK,CAAC,IAAI;QAChB,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAS,aAAa,CAAC,CAAC;QAE1E,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACnC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,OAAO,CAAC,MAAM,iBAAiB,CAAC,CAAC;QAErE,MAAM,OAAO,CAAC,GAAG,CAChB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAC3B,MAAM,CAAC,IAAI,CAAC;YACX,GAAG,IAAI,CAAC,KAAK;YACb,MAAM,EAAE,eAAe;YACvB,oBAAoB,EAAE,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,sBAAsB,CAAC;SAC5E,CAAC,CACF,CACD,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,QAAQ;QACpB,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC5E,CAAC;IAEM,KAAK,CAAC,SAAS;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACtD,IAAI,CAAC,mBAAmB,GAAG,CAAC,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAEhF,OAAO,MAAM,CAAC;IACf,CAAC;CACD,CAAA;AA9CiB;IAFhB,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,aAAa,CAAC;IACjD,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC;;iDACoC;AAGrD;IADhB,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;;0CACS;AAGjC;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC;;gDACe;AAK9C;IADhB,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC;;yCACqB;AAd1C,UAAU;IADtB,UAAU,EAAE;GACA,UAAU,CAiDtB"}
|
package/distribution/worker.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../source/worker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../source/worker.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGrD,qBACa,MAAO,YAAW,SAAS,CAAC,MAAM,CAAC,MAAM;;IAErD,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAA4C;IAEnF,OAAO,CAAC,aAAa,CAAqC;IAK7C,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBxD,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAI7B,YAAY,IAAI,MAAM;IAIhB,kBAAkB,CAAC,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,EAClG,MAAM,EAAE,CAAC,EACT,GAAG,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GACtD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAMxC,eAAe,CAAC,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,EAC/F,MAAM,EAAE,CAAC,EACT,GAAG,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GACtD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAMxC,YAAY,CAAC,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,EAC/F,MAAM,EAAE,CAAC,EACT,GAAG,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GACzD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAM3C,kBAAkB,CAAC,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAC3G,MAAM,EAAE,CAAC,EACT,GAAG,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GAC/D,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;IAMjD,gBAAgB,CAAC,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,EACvG,MAAM,EAAE,CAAC,EACT,GAAG,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAC7D,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;CAK5D"}
|
package/distribution/worker.js
CHANGED
|
@@ -7,38 +7,26 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
9
|
};
|
|
10
|
-
|
|
11
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
12
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
13
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
14
|
-
};
|
|
15
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
16
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
17
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
18
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
19
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
20
|
-
};
|
|
21
|
-
var _Worker_booted, _Worker_booting;
|
|
10
|
+
import { Identifiers } from "@mainsail/constants";
|
|
22
11
|
import { inject, injectable } from "@mainsail/container";
|
|
23
|
-
import {
|
|
24
|
-
import { Utils } from "@mainsail/kernel";
|
|
12
|
+
import { sleep } from "@mainsail/utils";
|
|
25
13
|
let Worker = class Worker {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
14
|
+
createWorkerSubprocess;
|
|
15
|
+
ipcSubprocess;
|
|
16
|
+
#booted = false;
|
|
17
|
+
#booting = false;
|
|
30
18
|
async boot(flags) {
|
|
31
19
|
this.ipcSubprocess = this.createWorkerSubprocess();
|
|
32
|
-
while (
|
|
33
|
-
await
|
|
20
|
+
while (this.#booting) {
|
|
21
|
+
await sleep(50);
|
|
34
22
|
}
|
|
35
|
-
if (
|
|
23
|
+
if (this.#booted) {
|
|
36
24
|
return;
|
|
37
25
|
}
|
|
38
|
-
|
|
26
|
+
this.#booting = true;
|
|
39
27
|
await this.ipcSubprocess.sendRequest("boot", flags);
|
|
40
|
-
|
|
41
|
-
|
|
28
|
+
this.#booting = false;
|
|
29
|
+
this.#booted = true;
|
|
42
30
|
}
|
|
43
31
|
async kill() {
|
|
44
32
|
return this.ipcSubprocess.kill();
|
|
@@ -62,8 +50,6 @@ let Worker = class Worker {
|
|
|
62
50
|
return this.ipcSubprocess.sendRequest("publicKeyFactory", method, arguments_);
|
|
63
51
|
}
|
|
64
52
|
};
|
|
65
|
-
_Worker_booted = new WeakMap();
|
|
66
|
-
_Worker_booting = new WeakMap();
|
|
67
53
|
__decorate([
|
|
68
54
|
inject(Identifiers.CryptoWorker.WorkerSubprocess.Factory),
|
|
69
55
|
__metadata("design:type", Function)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../source/worker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../source/worker.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAGjC,IAAM,MAAM,GAAZ,MAAM,MAAM;IAED,sBAAsB,CAA4C;IAE3E,aAAa,CAAqC;IAE1D,OAAO,GAAG,KAAK,CAAC;IAChB,QAAQ,GAAG,KAAK,CAAC;IAEV,KAAK,CAAC,IAAI,CAAC,KAAmC;QACpD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAEnD,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,KAAK,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,OAAO;QACR,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QAErB,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEpD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACrB,CAAC;IAEM,KAAK,CAAC,IAAI;QAChB,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IAClC,CAAC;IAEM,YAAY;QAClB,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;IAC1C,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAC9B,MAAS,EACT,GAAG,UAAqD;QAExD,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,oBAAoB,EAAE,MAAM,EAAE,UAAU,CAE7E,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,eAAe,CAC3B,MAAS,EACT,GAAG,UAAqD;QAExD,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,iBAAiB,EAAE,MAAM,EAAE,UAAU,CAE1E,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,YAAY,CACxB,MAAS,EACT,GAAG,UAAwD;QAE3D,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,UAAU,CAEvE,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAC9B,MAAS,EACT,GAAG,UAA8D;QAEjE,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,oBAAoB,EAAE,MAAM,EAAE,UAAU,CAE7E,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAC5B,MAAS,EACT,GAAG,UAA4D;QAE/D,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,kBAAkB,EAAE,MAAM,EAAE,UAAU,CAE3E,CAAC;IACH,CAAC;CACD,CAAA;AA9EiB;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,gBAAgB,CAAC,OAAO,CAAC;;sDACyB;AAFvE,MAAM;IADlB,UAAU,EAAE;GACA,MAAM,CAgFlB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mainsail/crypto-worker",
|
|
3
|
-
"version": "0.0.1-evm.
|
|
3
|
+
"version": "0.0.1-evm.41",
|
|
4
4
|
"description": "Crypto worker based on node child processes for Mainsail blockchain",
|
|
5
5
|
"license": "GPL-3.0-only",
|
|
6
6
|
"contributors": [],
|
|
@@ -10,29 +10,29 @@
|
|
|
10
10
|
"/distribution"
|
|
11
11
|
],
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"joi": "
|
|
14
|
-
"@mainsail/
|
|
15
|
-
"@mainsail/
|
|
16
|
-
"@mainsail/
|
|
13
|
+
"joi": "18.0.0",
|
|
14
|
+
"@mainsail/kernel": "0.0.1-evm.41",
|
|
15
|
+
"@mainsail/utils": "0.0.1-evm.41",
|
|
16
|
+
"@mainsail/constants": "0.0.1-evm.41",
|
|
17
|
+
"@mainsail/container": "0.0.1-evm.41"
|
|
17
18
|
},
|
|
18
19
|
"devDependencies": {
|
|
19
|
-
"@types/chance": "1.1.
|
|
20
|
+
"@types/chance": "1.1.7",
|
|
20
21
|
"@types/fs-extra": "11.0.4",
|
|
21
22
|
"@types/lodash.clonedeep": "4.5.9",
|
|
22
|
-
"@types/sinon": "^17.0.3",
|
|
23
23
|
"@types/tmp": "0.2.6",
|
|
24
|
-
"uvu": "
|
|
24
|
+
"uvu": "0.5.6",
|
|
25
|
+
"@mainsail/contracts": "0.0.1-evm.41"
|
|
25
26
|
},
|
|
26
27
|
"engines": {
|
|
27
28
|
"node": ">=20.x"
|
|
28
29
|
},
|
|
29
30
|
"scripts": {
|
|
30
|
-
"build": "
|
|
31
|
+
"build": "tsc -b",
|
|
31
32
|
"build:watch": "pnpm run clean && tsc -w",
|
|
32
|
-
"clean": "del distribution",
|
|
33
33
|
"release": "pnpm publish --access public",
|
|
34
34
|
"test": "pnpm run uvu source .test.ts",
|
|
35
|
-
"test:coverage": "c8 pnpm run test",
|
|
35
|
+
"test:coverage": "c8 -r=text -r=lcov --all pnpm run test",
|
|
36
36
|
"test:coverage:html": "c8 -r html --all pnpm run test",
|
|
37
37
|
"test:file": "pnpm run uvu source",
|
|
38
38
|
"uvu": "tsx --tsconfig ../../tsconfig.test.json ./node_modules/uvu/bin.js"
|