@bluelibs/runner 4.5.9 → 4.6.0-alpha
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/AI.md +48 -102
- package/README.md +50 -6
- package/dist/browser/index.mjs +4492 -0
- package/dist/browser/index.mjs.map +1 -0
- package/dist/{index.mjs → edge/index.mjs} +473 -306
- package/dist/edge/index.mjs.map +1 -0
- package/dist/{index.d.ts → index.d.mts} +14 -9
- package/dist/index.unused.js +4344 -0
- package/dist/index.unused.js.map +1 -0
- package/dist/{index.cjs → node/index.cjs} +473 -312
- package/dist/node/index.cjs.map +1 -0
- package/dist/node/index.mjs +4492 -0
- package/dist/node/index.mjs.map +1 -0
- package/dist/universal/index.cjs +4524 -0
- package/dist/universal/index.cjs.map +1 -0
- package/dist/universal/index.mjs +4524 -0
- package/dist/universal/index.mjs.map +1 -0
- package/package.json +49 -11
- package/dist/index.cjs.map +0 -1
- package/dist/index.mjs.map +0 -1
|
@@ -1,18 +1,11 @@
|
|
|
1
1
|
import { LRUCache } from 'lru-cache';
|
|
2
2
|
|
|
3
3
|
var __defProp = Object.defineProperty;
|
|
4
|
-
var __typeError = (msg) => {
|
|
5
|
-
throw TypeError(msg);
|
|
6
|
-
};
|
|
7
4
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
8
5
|
var __export = (target, all) => {
|
|
9
6
|
for (var name in all)
|
|
10
7
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
8
|
};
|
|
12
|
-
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
|
13
|
-
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
14
|
-
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
15
|
-
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), member.set(obj, value), value);
|
|
16
9
|
|
|
17
10
|
// src/defs.ts
|
|
18
11
|
var defs_exports = {};
|
|
@@ -230,7 +223,224 @@ __export(errors_exports, {
|
|
|
230
223
|
ValidationError: () => ValidationError
|
|
231
224
|
});
|
|
232
225
|
|
|
233
|
-
// src/platform/
|
|
226
|
+
// src/platform/adapters/node-als.ts
|
|
227
|
+
async function loadAsyncLocalStorageClass() {
|
|
228
|
+
const mod = await import('async_hooks');
|
|
229
|
+
return mod.AsyncLocalStorage;
|
|
230
|
+
}
|
|
231
|
+
__name(loadAsyncLocalStorageClass, "loadAsyncLocalStorageClass");
|
|
232
|
+
|
|
233
|
+
// src/platform/adapters/node.ts
|
|
234
|
+
var NodePlatformAdapter = class {
|
|
235
|
+
constructor() {
|
|
236
|
+
this.setTimeout = globalThis.setTimeout;
|
|
237
|
+
this.clearTimeout = globalThis.clearTimeout;
|
|
238
|
+
}
|
|
239
|
+
static {
|
|
240
|
+
__name(this, "NodePlatformAdapter");
|
|
241
|
+
}
|
|
242
|
+
async init() {
|
|
243
|
+
this.alsClass = await loadAsyncLocalStorageClass();
|
|
244
|
+
}
|
|
245
|
+
onUncaughtException(handler) {
|
|
246
|
+
process.on("uncaughtException", handler);
|
|
247
|
+
return () => process.off("uncaughtException", handler);
|
|
248
|
+
}
|
|
249
|
+
onUnhandledRejection(handler) {
|
|
250
|
+
const h = /* @__PURE__ */ __name((reason) => handler(reason), "h");
|
|
251
|
+
process.on("unhandledRejection", h);
|
|
252
|
+
return () => process.off("unhandledRejection", h);
|
|
253
|
+
}
|
|
254
|
+
onShutdownSignal(handler) {
|
|
255
|
+
process.on("SIGINT", handler);
|
|
256
|
+
process.on("SIGTERM", handler);
|
|
257
|
+
return () => {
|
|
258
|
+
process.off("SIGINT", handler);
|
|
259
|
+
process.off("SIGTERM", handler);
|
|
260
|
+
};
|
|
261
|
+
}
|
|
262
|
+
exit(code) {
|
|
263
|
+
process.exit(code);
|
|
264
|
+
}
|
|
265
|
+
getEnv(key) {
|
|
266
|
+
return process.env[key];
|
|
267
|
+
}
|
|
268
|
+
hasAsyncLocalStorage() {
|
|
269
|
+
return true;
|
|
270
|
+
}
|
|
271
|
+
createAsyncLocalStorage() {
|
|
272
|
+
let instance;
|
|
273
|
+
const ensure = /* @__PURE__ */ __name(() => {
|
|
274
|
+
if (!this.alsClass) {
|
|
275
|
+
throw new PlatformUnsupportedFunction(
|
|
276
|
+
"createAsyncLocalStorage: Platform not initialized"
|
|
277
|
+
);
|
|
278
|
+
}
|
|
279
|
+
return instance ??= new this.alsClass();
|
|
280
|
+
}, "ensure");
|
|
281
|
+
return {
|
|
282
|
+
getStore: /* @__PURE__ */ __name(() => ensure().getStore(), "getStore"),
|
|
283
|
+
run: /* @__PURE__ */ __name((store2, callback) => ensure().run(store2, callback), "run")
|
|
284
|
+
};
|
|
285
|
+
}
|
|
286
|
+
};
|
|
287
|
+
|
|
288
|
+
// src/platform/adapters/browser.ts
|
|
289
|
+
var BrowserPlatformAdapter = class {
|
|
290
|
+
constructor() {
|
|
291
|
+
this.setTimeout = globalThis.setTimeout;
|
|
292
|
+
this.clearTimeout = globalThis.clearTimeout;
|
|
293
|
+
}
|
|
294
|
+
static {
|
|
295
|
+
__name(this, "BrowserPlatformAdapter");
|
|
296
|
+
}
|
|
297
|
+
async init() {
|
|
298
|
+
}
|
|
299
|
+
onUncaughtException(handler) {
|
|
300
|
+
const target = globalThis.window ?? globalThis;
|
|
301
|
+
const h = /* @__PURE__ */ __name((e) => handler(e?.error ?? e), "h");
|
|
302
|
+
target.addEventListener?.("error", h);
|
|
303
|
+
return () => target.removeEventListener?.("error", h);
|
|
304
|
+
}
|
|
305
|
+
onUnhandledRejection(handler) {
|
|
306
|
+
const target = globalThis.window ?? globalThis;
|
|
307
|
+
const wrap = /* @__PURE__ */ __name((e) => handler(e?.reason ?? e), "wrap");
|
|
308
|
+
target.addEventListener?.("unhandledrejection", wrap);
|
|
309
|
+
return () => target.removeEventListener?.("unhandledrejection", wrap);
|
|
310
|
+
}
|
|
311
|
+
onShutdownSignal(handler) {
|
|
312
|
+
const win = globalThis.window ?? globalThis;
|
|
313
|
+
const handlers = {};
|
|
314
|
+
handlers.before = (e) => handler();
|
|
315
|
+
win.addEventListener?.("beforeunload", handlers.before);
|
|
316
|
+
const doc = globalThis.document;
|
|
317
|
+
if (doc && typeof win.addEventListener === "function") {
|
|
318
|
+
handlers.visibility = () => {
|
|
319
|
+
if (doc.visibilityState === "hidden") handler();
|
|
320
|
+
};
|
|
321
|
+
win.addEventListener?.("visibilitychange", handlers.visibility);
|
|
322
|
+
}
|
|
323
|
+
return () => {
|
|
324
|
+
win.removeEventListener?.("beforeunload", handlers.before);
|
|
325
|
+
if (handlers.visibility) win.removeEventListener?.("visibilitychange", handlers.visibility);
|
|
326
|
+
};
|
|
327
|
+
}
|
|
328
|
+
exit() {
|
|
329
|
+
throw new PlatformUnsupportedFunction("exit");
|
|
330
|
+
}
|
|
331
|
+
getEnv(key) {
|
|
332
|
+
const g = globalThis;
|
|
333
|
+
if (g.__ENV__ && typeof g.__ENV__ === "object") return g.__ENV__[key];
|
|
334
|
+
if (typeof process !== "undefined" && process.env)
|
|
335
|
+
return process.env[key];
|
|
336
|
+
if (g.env && typeof g.env === "object") return g.env[key];
|
|
337
|
+
return void 0;
|
|
338
|
+
}
|
|
339
|
+
hasAsyncLocalStorage() {
|
|
340
|
+
return false;
|
|
341
|
+
}
|
|
342
|
+
createAsyncLocalStorage() {
|
|
343
|
+
return {
|
|
344
|
+
getStore: /* @__PURE__ */ __name(() => {
|
|
345
|
+
throw new PlatformUnsupportedFunction("createAsyncLocalStorage");
|
|
346
|
+
}, "getStore"),
|
|
347
|
+
run: /* @__PURE__ */ __name(() => {
|
|
348
|
+
throw new PlatformUnsupportedFunction("createAsyncLocalStorage");
|
|
349
|
+
}, "run")
|
|
350
|
+
};
|
|
351
|
+
}
|
|
352
|
+
};
|
|
353
|
+
|
|
354
|
+
// src/platform/adapters/edge.ts
|
|
355
|
+
var EdgePlatformAdapter = class extends BrowserPlatformAdapter {
|
|
356
|
+
static {
|
|
357
|
+
__name(this, "EdgePlatformAdapter");
|
|
358
|
+
}
|
|
359
|
+
onShutdownSignal(handler) {
|
|
360
|
+
return () => {
|
|
361
|
+
};
|
|
362
|
+
}
|
|
363
|
+
};
|
|
364
|
+
|
|
365
|
+
// src/platform/adapters/universal-generic.ts
|
|
366
|
+
var GenericUniversalPlatformAdapter = class {
|
|
367
|
+
constructor() {
|
|
368
|
+
this.setTimeout = globalThis.setTimeout;
|
|
369
|
+
this.clearTimeout = globalThis.clearTimeout;
|
|
370
|
+
}
|
|
371
|
+
static {
|
|
372
|
+
__name(this, "GenericUniversalPlatformAdapter");
|
|
373
|
+
}
|
|
374
|
+
async init() {
|
|
375
|
+
}
|
|
376
|
+
onUncaughtException(handler) {
|
|
377
|
+
const tgt = globalThis;
|
|
378
|
+
if (tgt.addEventListener) {
|
|
379
|
+
const h = /* @__PURE__ */ __name((e) => handler(e?.error ?? e), "h");
|
|
380
|
+
tgt.addEventListener("error", h);
|
|
381
|
+
return () => tgt.removeEventListener?.("error", h);
|
|
382
|
+
}
|
|
383
|
+
return () => {
|
|
384
|
+
};
|
|
385
|
+
}
|
|
386
|
+
onUnhandledRejection(handler) {
|
|
387
|
+
const tgt = globalThis;
|
|
388
|
+
if (tgt.addEventListener) {
|
|
389
|
+
const wrap = /* @__PURE__ */ __name((e) => handler(e?.reason ?? e), "wrap");
|
|
390
|
+
tgt.addEventListener("unhandledrejection", wrap);
|
|
391
|
+
return () => tgt.removeEventListener?.("unhandledrejection", wrap);
|
|
392
|
+
}
|
|
393
|
+
return () => {
|
|
394
|
+
};
|
|
395
|
+
}
|
|
396
|
+
onShutdownSignal(handler) {
|
|
397
|
+
const tgt = globalThis;
|
|
398
|
+
if (tgt.addEventListener) {
|
|
399
|
+
const handlers = {};
|
|
400
|
+
handlers.before = (e) => handler();
|
|
401
|
+
tgt.addEventListener("beforeunload", handlers.before);
|
|
402
|
+
const doc = globalThis.document;
|
|
403
|
+
if (doc) {
|
|
404
|
+
handlers.visibility = () => {
|
|
405
|
+
if (doc.visibilityState === "hidden") handler();
|
|
406
|
+
};
|
|
407
|
+
tgt.addEventListener?.("visibilitychange", handlers.visibility);
|
|
408
|
+
}
|
|
409
|
+
return () => {
|
|
410
|
+
tgt.removeEventListener?.("beforeunload", handlers.before);
|
|
411
|
+
if (handlers.visibility) tgt.removeEventListener?.("visibilitychange", handlers.visibility);
|
|
412
|
+
};
|
|
413
|
+
}
|
|
414
|
+
return () => {
|
|
415
|
+
};
|
|
416
|
+
}
|
|
417
|
+
exit() {
|
|
418
|
+
throw new PlatformUnsupportedFunction("exit");
|
|
419
|
+
}
|
|
420
|
+
getEnv(key) {
|
|
421
|
+
const g = globalThis;
|
|
422
|
+
if (g.__ENV__ && typeof g.__ENV__ === "object") return g.__ENV__[key];
|
|
423
|
+
if (typeof process !== "undefined" && process.env)
|
|
424
|
+
return process.env[key];
|
|
425
|
+
if (g.env && typeof g.env === "object") return g.env[key];
|
|
426
|
+
return void 0;
|
|
427
|
+
}
|
|
428
|
+
hasAsyncLocalStorage() {
|
|
429
|
+
return false;
|
|
430
|
+
}
|
|
431
|
+
createAsyncLocalStorage() {
|
|
432
|
+
return {
|
|
433
|
+
getStore: /* @__PURE__ */ __name(() => {
|
|
434
|
+
throw new PlatformUnsupportedFunction("createAsyncLocalStorage");
|
|
435
|
+
}, "getStore"),
|
|
436
|
+
run: /* @__PURE__ */ __name(() => {
|
|
437
|
+
throw new PlatformUnsupportedFunction("createAsyncLocalStorage");
|
|
438
|
+
}, "run")
|
|
439
|
+
};
|
|
440
|
+
}
|
|
441
|
+
};
|
|
442
|
+
|
|
443
|
+
// src/platform/adapters/universal.ts
|
|
234
444
|
function detectEnvironment() {
|
|
235
445
|
if (typeof window !== "undefined" && typeof document !== "undefined") {
|
|
236
446
|
return "browser";
|
|
@@ -238,211 +448,141 @@ function detectEnvironment() {
|
|
|
238
448
|
if (typeof process !== "undefined" && process.versions && process.versions.node) {
|
|
239
449
|
return "node";
|
|
240
450
|
}
|
|
451
|
+
if (typeof globalThis.Deno !== "undefined") {
|
|
452
|
+
return "universal";
|
|
453
|
+
}
|
|
454
|
+
if (typeof globalThis.Bun !== "undefined" || typeof process !== "undefined" && process.versions?.bun) {
|
|
455
|
+
return "universal";
|
|
456
|
+
}
|
|
457
|
+
if (typeof globalThis.WorkerGlobalScope !== "undefined" && typeof self !== "undefined" && self instanceof globalThis.WorkerGlobalScope) {
|
|
458
|
+
return "edge";
|
|
459
|
+
}
|
|
241
460
|
return "universal";
|
|
242
461
|
}
|
|
243
462
|
__name(detectEnvironment, "detectEnvironment");
|
|
244
|
-
var
|
|
245
|
-
constructor(
|
|
246
|
-
this.
|
|
247
|
-
this.nodeALSClass = null;
|
|
248
|
-
// timers
|
|
463
|
+
var UniversalPlatformAdapter = class {
|
|
464
|
+
constructor() {
|
|
465
|
+
this.inner = null;
|
|
249
466
|
this.setTimeout = globalThis.setTimeout;
|
|
250
467
|
this.clearTimeout = globalThis.clearTimeout;
|
|
251
|
-
|
|
468
|
+
}
|
|
469
|
+
static {
|
|
470
|
+
__name(this, "UniversalPlatformAdapter");
|
|
252
471
|
}
|
|
253
472
|
async init() {
|
|
254
|
-
if (this.
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
473
|
+
if (!this.inner) {
|
|
474
|
+
const kind = detectEnvironment();
|
|
475
|
+
if (typeof globalThis.document !== "undefined" || typeof globalThis.addEventListener === "function") {
|
|
476
|
+
this.inner = new BrowserPlatformAdapter();
|
|
477
|
+
} else {
|
|
478
|
+
switch (kind) {
|
|
479
|
+
case "node":
|
|
480
|
+
this.inner = new NodePlatformAdapter();
|
|
481
|
+
break;
|
|
482
|
+
// istanbul ignore next: this branch is unreachable in practice because detectEnvironment()
|
|
483
|
+
// returns "browser" only when document is defined; we keep it for completeness.
|
|
484
|
+
case "browser":
|
|
485
|
+
this.inner = new BrowserPlatformAdapter();
|
|
486
|
+
break;
|
|
487
|
+
case "edge":
|
|
488
|
+
this.inner = new EdgePlatformAdapter();
|
|
489
|
+
break;
|
|
490
|
+
default:
|
|
491
|
+
this.inner = new GenericUniversalPlatformAdapter();
|
|
259
492
|
}
|
|
260
493
|
}
|
|
261
494
|
}
|
|
495
|
+
await this.inner.init();
|
|
262
496
|
}
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
}
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
497
|
+
get() {
|
|
498
|
+
if (!this.inner) {
|
|
499
|
+
const kind = detectEnvironment();
|
|
500
|
+
if (typeof globalThis.document !== "undefined" || typeof globalThis.addEventListener === "function") {
|
|
501
|
+
this.inner = new BrowserPlatformAdapter();
|
|
502
|
+
} else {
|
|
503
|
+
switch (kind) {
|
|
504
|
+
case "node":
|
|
505
|
+
this.inner = new NodePlatformAdapter();
|
|
506
|
+
break;
|
|
507
|
+
// istanbul ignore next: this branch is unreachable in practice because detectEnvironment()
|
|
508
|
+
// returns "browser" only when document is defined; we keep it for completeness.
|
|
509
|
+
case "browser":
|
|
510
|
+
this.inner = new BrowserPlatformAdapter();
|
|
511
|
+
break;
|
|
512
|
+
case "edge":
|
|
513
|
+
this.inner = new EdgePlatformAdapter();
|
|
514
|
+
break;
|
|
515
|
+
default:
|
|
516
|
+
this.inner = new GenericUniversalPlatformAdapter();
|
|
281
517
|
}
|
|
282
|
-
return () => {
|
|
283
|
-
};
|
|
284
518
|
}
|
|
285
519
|
}
|
|
520
|
+
return this.inner;
|
|
521
|
+
}
|
|
522
|
+
onUncaughtException(handler) {
|
|
523
|
+
return this.get().onUncaughtException(handler);
|
|
286
524
|
}
|
|
287
525
|
onUnhandledRejection(handler) {
|
|
288
|
-
|
|
289
|
-
case "node": {
|
|
290
|
-
const h = /* @__PURE__ */ __name((reason) => handler(reason), "h");
|
|
291
|
-
process.on("unhandledRejection", h);
|
|
292
|
-
return () => process.off("unhandledRejection", h);
|
|
293
|
-
}
|
|
294
|
-
case "browser": {
|
|
295
|
-
const target = globalThis.window;
|
|
296
|
-
const wrap = /* @__PURE__ */ __name((e) => handler(e.reason), "wrap");
|
|
297
|
-
target.addEventListener?.("unhandledrejection", wrap);
|
|
298
|
-
return () => target.removeEventListener?.("unhandledrejection", wrap);
|
|
299
|
-
}
|
|
300
|
-
default: {
|
|
301
|
-
const tgt = globalThis;
|
|
302
|
-
if (tgt.addEventListener) {
|
|
303
|
-
const wrap = /* @__PURE__ */ __name((e) => handler(e.reason ?? e), "wrap");
|
|
304
|
-
tgt.addEventListener("unhandledrejection", wrap);
|
|
305
|
-
return () => tgt.removeEventListener("unhandledrejection", wrap);
|
|
306
|
-
}
|
|
307
|
-
return () => {
|
|
308
|
-
};
|
|
309
|
-
}
|
|
310
|
-
}
|
|
526
|
+
return this.get().onUnhandledRejection(handler);
|
|
311
527
|
}
|
|
312
528
|
onShutdownSignal(handler) {
|
|
313
|
-
|
|
314
|
-
case "node": {
|
|
315
|
-
process.on("SIGINT", handler);
|
|
316
|
-
process.on("SIGTERM", handler);
|
|
317
|
-
return () => {
|
|
318
|
-
process.off("SIGINT", handler);
|
|
319
|
-
process.off("SIGTERM", handler);
|
|
320
|
-
};
|
|
321
|
-
}
|
|
322
|
-
case "browser": {
|
|
323
|
-
const win = window;
|
|
324
|
-
win.addEventListener?.("beforeunload", handler);
|
|
325
|
-
return () => {
|
|
326
|
-
win.removeEventListener?.("beforeunload", handler);
|
|
327
|
-
};
|
|
328
|
-
}
|
|
329
|
-
default: {
|
|
330
|
-
const tgt = globalThis;
|
|
331
|
-
const cleanup = [];
|
|
332
|
-
if (tgt.addEventListener) {
|
|
333
|
-
tgt.addEventListener("beforeunload", handler);
|
|
334
|
-
cleanup.push(
|
|
335
|
-
() => tgt.removeEventListener?.("beforeunload", handler)
|
|
336
|
-
);
|
|
337
|
-
const vis = /* @__PURE__ */ __name(() => {
|
|
338
|
-
const doc = globalThis.document;
|
|
339
|
-
if (doc && doc.visibilityState === "hidden") handler();
|
|
340
|
-
}, "vis");
|
|
341
|
-
tgt.addEventListener("visibilitychange", vis);
|
|
342
|
-
cleanup.push(
|
|
343
|
-
() => tgt.removeEventListener?.("visibilitychange", vis)
|
|
344
|
-
);
|
|
345
|
-
}
|
|
346
|
-
if (typeof process !== "undefined" && process.on) {
|
|
347
|
-
process.on("SIGINT", handler);
|
|
348
|
-
process.on("SIGTERM", handler);
|
|
349
|
-
cleanup.push(() => {
|
|
350
|
-
process.off?.("SIGINT", handler);
|
|
351
|
-
process.off?.("SIGTERM", handler);
|
|
352
|
-
});
|
|
353
|
-
}
|
|
354
|
-
return () => cleanup.forEach((fn) => fn());
|
|
355
|
-
}
|
|
356
|
-
}
|
|
529
|
+
return this.get().onShutdownSignal(handler);
|
|
357
530
|
}
|
|
358
531
|
exit(code) {
|
|
359
|
-
|
|
360
|
-
case "node":
|
|
361
|
-
process.exit(code);
|
|
362
|
-
return;
|
|
363
|
-
default:
|
|
364
|
-
throw new PlatformUnsupportedFunction("exit");
|
|
365
|
-
}
|
|
532
|
+
return this.get().exit(code);
|
|
366
533
|
}
|
|
367
534
|
getEnv(key) {
|
|
368
|
-
|
|
369
|
-
case "node":
|
|
370
|
-
return process.env[key];
|
|
371
|
-
default: {
|
|
372
|
-
const g = globalThis;
|
|
373
|
-
if (g.__ENV__ && typeof g.__ENV__ === "object") return g.__ENV__[key];
|
|
374
|
-
if (typeof process !== "undefined" && process.env)
|
|
375
|
-
return process.env[key];
|
|
376
|
-
if (g.env && typeof g.env === "object") return g.env[key];
|
|
377
|
-
return void 0;
|
|
378
|
-
}
|
|
379
|
-
}
|
|
535
|
+
return this.get().getEnv(key);
|
|
380
536
|
}
|
|
381
537
|
hasAsyncLocalStorage() {
|
|
382
|
-
|
|
383
|
-
case "node":
|
|
384
|
-
return true;
|
|
385
|
-
// We'll try native, else polyfill
|
|
386
|
-
case "browser":
|
|
387
|
-
default:
|
|
388
|
-
return false;
|
|
389
|
-
}
|
|
538
|
+
return this.get().hasAsyncLocalStorage();
|
|
390
539
|
}
|
|
391
540
|
createAsyncLocalStorage() {
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
instance = new this.nodeALSClass();
|
|
403
|
-
}
|
|
404
|
-
return instance;
|
|
405
|
-
}, "get");
|
|
406
|
-
return {
|
|
407
|
-
getStore: /* @__PURE__ */ __name(() => get().getStore(), "getStore"),
|
|
408
|
-
run: /* @__PURE__ */ __name((store2, callback) => get().run(store2, callback), "run")
|
|
409
|
-
};
|
|
410
|
-
}
|
|
541
|
+
return this.get().createAsyncLocalStorage();
|
|
542
|
+
}
|
|
543
|
+
};
|
|
544
|
+
|
|
545
|
+
// src/platform/factory.ts
|
|
546
|
+
function createPlatformAdapter() {
|
|
547
|
+
{
|
|
548
|
+
switch ("edge") {
|
|
549
|
+
case "node":
|
|
550
|
+
return new NodePlatformAdapter();
|
|
411
551
|
case "browser":
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
throw new PlatformUnsupportedFunction("createAsyncLocalStorage");
|
|
416
|
-
}, "getStore"),
|
|
417
|
-
run: /* @__PURE__ */ __name(() => {
|
|
418
|
-
throw new PlatformUnsupportedFunction("createAsyncLocalStorage");
|
|
419
|
-
}, "run")
|
|
420
|
-
};
|
|
552
|
+
return new BrowserPlatformAdapter();
|
|
553
|
+
case "edge":
|
|
554
|
+
return new EdgePlatformAdapter();
|
|
421
555
|
}
|
|
422
556
|
}
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
557
|
+
return new UniversalPlatformAdapter();
|
|
558
|
+
}
|
|
559
|
+
__name(createPlatformAdapter, "createPlatformAdapter");
|
|
560
|
+
|
|
561
|
+
// src/platform/index.ts
|
|
426
562
|
var platformInstance = null;
|
|
427
563
|
function getPlatform() {
|
|
428
564
|
if (!platformInstance) {
|
|
429
|
-
|
|
430
|
-
|
|
565
|
+
platformInstance = createPlatformAdapter();
|
|
566
|
+
detectEnvironment();
|
|
431
567
|
}
|
|
432
568
|
return platformInstance;
|
|
433
569
|
}
|
|
434
570
|
__name(getPlatform, "getPlatform");
|
|
435
571
|
|
|
436
572
|
// src/errors.ts
|
|
437
|
-
var
|
|
573
|
+
var RuntimeError = class extends Error {
|
|
574
|
+
static {
|
|
575
|
+
__name(this, "RuntimeError");
|
|
576
|
+
}
|
|
438
577
|
constructor(message) {
|
|
439
578
|
super(message);
|
|
440
579
|
this.name = "RuntimeError";
|
|
441
580
|
}
|
|
442
581
|
};
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
582
|
+
var DuplicateRegistrationError = class extends RuntimeError {
|
|
583
|
+
static {
|
|
584
|
+
__name(this, "DuplicateRegistrationError");
|
|
585
|
+
}
|
|
446
586
|
constructor(type, id2) {
|
|
447
587
|
super(
|
|
448
588
|
`${type} "${id2.toString()}" already registered. You might have used the same 'id' in two different components or you may have registered the same element twice.`
|
|
@@ -450,9 +590,10 @@ var _DuplicateRegistrationError = class _DuplicateRegistrationError extends Runt
|
|
|
450
590
|
this.name = "DuplicateRegistrationError";
|
|
451
591
|
}
|
|
452
592
|
};
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
593
|
+
var DependencyNotFoundError = class extends RuntimeError {
|
|
594
|
+
static {
|
|
595
|
+
__name(this, "DependencyNotFoundError");
|
|
596
|
+
}
|
|
456
597
|
constructor(key) {
|
|
457
598
|
super(
|
|
458
599
|
`Dependency ${key.toString()} not found. Did you forget to register it through a resource?`
|
|
@@ -460,9 +601,10 @@ var _DependencyNotFoundError = class _DependencyNotFoundError extends RuntimeErr
|
|
|
460
601
|
this.name = "DependencyNotFoundError";
|
|
461
602
|
}
|
|
462
603
|
};
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
604
|
+
var UnknownItemTypeError = class extends RuntimeError {
|
|
605
|
+
static {
|
|
606
|
+
__name(this, "UnknownItemTypeError");
|
|
607
|
+
}
|
|
466
608
|
constructor(item) {
|
|
467
609
|
super(
|
|
468
610
|
`Unknown item type: ${item}. Please ensure you are not using different versions of '@bluelibs/runner'`
|
|
@@ -470,17 +612,19 @@ var _UnknownItemTypeError = class _UnknownItemTypeError extends RuntimeError {
|
|
|
470
612
|
this.name = "UnknownItemTypeError";
|
|
471
613
|
}
|
|
472
614
|
};
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
615
|
+
var ContextError = class extends Error {
|
|
616
|
+
static {
|
|
617
|
+
__name(this, "ContextError");
|
|
618
|
+
}
|
|
476
619
|
constructor(message) {
|
|
477
620
|
super(message);
|
|
478
621
|
this.name = "ContextError";
|
|
479
622
|
}
|
|
480
623
|
};
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
624
|
+
var CircularDependenciesError = class extends RuntimeError {
|
|
625
|
+
static {
|
|
626
|
+
__name(this, "CircularDependenciesError");
|
|
627
|
+
}
|
|
484
628
|
constructor(cycles) {
|
|
485
629
|
const cycleDetails = cycles.map((cycle) => ` \u2022 ${cycle}`).join("\n");
|
|
486
630
|
const hasMiddleware = cycles.some((cycle) => cycle.includes("middleware"));
|
|
@@ -496,17 +640,19 @@ ${cycleDetails}${guidance}`);
|
|
|
496
640
|
this.name = "CircularDependenciesError";
|
|
497
641
|
}
|
|
498
642
|
};
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
643
|
+
var EventNotFoundError = class extends RuntimeError {
|
|
644
|
+
static {
|
|
645
|
+
__name(this, "EventNotFoundError");
|
|
646
|
+
}
|
|
502
647
|
constructor(id2) {
|
|
503
648
|
super(`Event "${id2.toString()}" not found. Did you forget to register it?`);
|
|
504
649
|
this.name = "EventNotFoundError";
|
|
505
650
|
}
|
|
506
651
|
};
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
652
|
+
var ResourceNotFoundError = class extends RuntimeError {
|
|
653
|
+
static {
|
|
654
|
+
__name(this, "ResourceNotFoundError");
|
|
655
|
+
}
|
|
510
656
|
constructor(id2) {
|
|
511
657
|
super(
|
|
512
658
|
`Resource "${id2.toString()}" not found. Did you forget to register it or are you using the correct id?`
|
|
@@ -514,9 +660,10 @@ var _ResourceNotFoundError = class _ResourceNotFoundError extends RuntimeError {
|
|
|
514
660
|
this.name = "ResourceNotFoundError";
|
|
515
661
|
}
|
|
516
662
|
};
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
663
|
+
var MiddlewareNotRegisteredError = class extends RuntimeError {
|
|
664
|
+
static {
|
|
665
|
+
__name(this, "MiddlewareNotRegisteredError");
|
|
666
|
+
}
|
|
520
667
|
constructor(type, source, middlewareId) {
|
|
521
668
|
super(
|
|
522
669
|
`Middleware inside ${type} "${source}" depends on "${middlewareId}" but it's not registered. Did you forget to register it?`
|
|
@@ -524,9 +671,10 @@ var _MiddlewareNotRegisteredError = class _MiddlewareNotRegisteredError extends
|
|
|
524
671
|
this.name = `MiddlewareNotRegisteredError: ${type} ${source} ${middlewareId}`;
|
|
525
672
|
}
|
|
526
673
|
};
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
674
|
+
var TagNotFoundError = class extends RuntimeError {
|
|
675
|
+
static {
|
|
676
|
+
__name(this, "TagNotFoundError");
|
|
677
|
+
}
|
|
530
678
|
constructor(id2) {
|
|
531
679
|
super(
|
|
532
680
|
`Tag "${id2}" not registered. Did you forget to register it inside a resource?`
|
|
@@ -534,34 +682,38 @@ var _TagNotFoundError = class _TagNotFoundError extends RuntimeError {
|
|
|
534
682
|
this.name = "TagNotRegisteredError";
|
|
535
683
|
}
|
|
536
684
|
};
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
685
|
+
var LockedError = class extends RuntimeError {
|
|
686
|
+
static {
|
|
687
|
+
__name(this, "LockedError");
|
|
688
|
+
}
|
|
540
689
|
constructor(what) {
|
|
541
690
|
super(`Cannot modify the ${what.toString()} when it is locked.`);
|
|
542
691
|
this.name = "LockedError";
|
|
543
692
|
}
|
|
544
693
|
};
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
694
|
+
var StoreAlreadyInitializedError = class extends RuntimeError {
|
|
695
|
+
static {
|
|
696
|
+
__name(this, "StoreAlreadyInitializedError");
|
|
697
|
+
}
|
|
548
698
|
constructor() {
|
|
549
699
|
super("Store already initialized. Cannot reinitialize.");
|
|
550
700
|
this.name = "StoreAlreadyInitializedError";
|
|
551
701
|
}
|
|
552
702
|
};
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
703
|
+
var ValidationError = class extends RuntimeError {
|
|
704
|
+
static {
|
|
705
|
+
__name(this, "ValidationError");
|
|
706
|
+
}
|
|
556
707
|
constructor(type, id2, originalError) {
|
|
557
708
|
const errorMessage = originalError instanceof Error ? originalError.message : String(originalError);
|
|
558
709
|
super(`${type} validation failed for ${id2.toString()}: ${errorMessage}`);
|
|
559
710
|
this.name = "ValidationError";
|
|
560
711
|
}
|
|
561
712
|
};
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
713
|
+
var EventCycleError = class extends RuntimeError {
|
|
714
|
+
static {
|
|
715
|
+
__name(this, "EventCycleError");
|
|
716
|
+
}
|
|
565
717
|
constructor(path) {
|
|
566
718
|
const chain = path.map((p) => `${p.id}\u2190${p.source}`).join(" -> ");
|
|
567
719
|
super(
|
|
@@ -573,9 +725,10 @@ Break the cycle by changing hook logic (avoid mutual emits) or gate with conditi
|
|
|
573
725
|
this.name = "EventCycleError";
|
|
574
726
|
}
|
|
575
727
|
};
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
728
|
+
var EventEmissionCycleError = class extends RuntimeError {
|
|
729
|
+
static {
|
|
730
|
+
__name(this, "EventEmissionCycleError");
|
|
731
|
+
}
|
|
579
732
|
constructor(cycles) {
|
|
580
733
|
const list = cycles.map((c) => ` \u2022 ${c}`).join("\n");
|
|
581
734
|
super(
|
|
@@ -587,9 +740,10 @@ This was detected at compile time (dry-run). Break the cycle by avoiding mutual
|
|
|
587
740
|
this.name = "EventEmissionCycleError";
|
|
588
741
|
}
|
|
589
742
|
};
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
743
|
+
var PlatformUnsupportedFunction = class extends RuntimeError {
|
|
744
|
+
static {
|
|
745
|
+
__name(this, "PlatformUnsupportedFunction");
|
|
746
|
+
}
|
|
593
747
|
constructor(functionName) {
|
|
594
748
|
super(
|
|
595
749
|
`Platform function not supported in this environment: ${functionName}. Detected platform: ${detectEnvironment()}.`
|
|
@@ -597,8 +751,6 @@ var _PlatformUnsupportedFunction = class _PlatformUnsupportedFunction extends Ru
|
|
|
597
751
|
this.name = "PlatformUnsupportedFunction";
|
|
598
752
|
}
|
|
599
753
|
};
|
|
600
|
-
__name(_PlatformUnsupportedFunction, "PlatformUnsupportedFunction");
|
|
601
|
-
var PlatformUnsupportedFunction = _PlatformUnsupportedFunction;
|
|
602
754
|
|
|
603
755
|
// src/definers/defineResource.ts
|
|
604
756
|
function defineResource(constConfig) {
|
|
@@ -991,7 +1143,7 @@ var globalEvents = {
|
|
|
991
1143
|
var globalEventsArray = [globalEvents.ready];
|
|
992
1144
|
|
|
993
1145
|
// src/models/Queue.ts
|
|
994
|
-
var
|
|
1146
|
+
var Queue = class {
|
|
995
1147
|
constructor() {
|
|
996
1148
|
this.tail = Promise.resolve();
|
|
997
1149
|
this.disposed = false;
|
|
@@ -1000,6 +1152,9 @@ var _Queue = class _Queue {
|
|
|
1000
1152
|
this.executionContext = getPlatform().createAsyncLocalStorage();
|
|
1001
1153
|
this.hasAsyncLocalStorage = getPlatform().hasAsyncLocalStorage();
|
|
1002
1154
|
}
|
|
1155
|
+
static {
|
|
1156
|
+
__name(this, "Queue");
|
|
1157
|
+
}
|
|
1003
1158
|
/**
|
|
1004
1159
|
* Schedule an asynchronous task.
|
|
1005
1160
|
* @param task – receives an AbortSignal so it can cancel early if desired.
|
|
@@ -1038,8 +1193,6 @@ var _Queue = class _Queue {
|
|
|
1038
1193
|
});
|
|
1039
1194
|
}
|
|
1040
1195
|
};
|
|
1041
|
-
__name(_Queue, "Queue");
|
|
1042
|
-
var Queue = _Queue;
|
|
1043
1196
|
|
|
1044
1197
|
// src/globals/resources/queue.resource.ts
|
|
1045
1198
|
var queueResource = defineResource({
|
|
@@ -1238,7 +1391,7 @@ var globalMiddlewares = {
|
|
|
1238
1391
|
};
|
|
1239
1392
|
|
|
1240
1393
|
// src/models/TaskRunner.ts
|
|
1241
|
-
var
|
|
1394
|
+
var TaskRunner = class {
|
|
1242
1395
|
constructor(store2, eventManager, logger) {
|
|
1243
1396
|
this.store = store2;
|
|
1244
1397
|
this.eventManager = eventManager;
|
|
@@ -1246,6 +1399,9 @@ var _TaskRunner = class _TaskRunner {
|
|
|
1246
1399
|
this.runnerStore = /* @__PURE__ */ new Map();
|
|
1247
1400
|
this.middlewareManager = this.store.getMiddlewareManager();
|
|
1248
1401
|
}
|
|
1402
|
+
static {
|
|
1403
|
+
__name(this, "TaskRunner");
|
|
1404
|
+
}
|
|
1249
1405
|
/**
|
|
1250
1406
|
* Begins the execution of an task. These are registered tasks and all sanity checks have been performed at this stage to ensure consistency of the object.
|
|
1251
1407
|
* This function can throw only if any of the event listeners or run function throws
|
|
@@ -1283,12 +1439,9 @@ var _TaskRunner = class _TaskRunner {
|
|
|
1283
1439
|
return this.middlewareManager.composeTaskRunner(task);
|
|
1284
1440
|
}
|
|
1285
1441
|
};
|
|
1286
|
-
__name(_TaskRunner, "TaskRunner");
|
|
1287
|
-
var TaskRunner = _TaskRunner;
|
|
1288
1442
|
|
|
1289
1443
|
// src/models/MiddlewareManager.ts
|
|
1290
|
-
var
|
|
1291
|
-
var _MiddlewareManager = class _MiddlewareManager {
|
|
1444
|
+
var MiddlewareManager = class {
|
|
1292
1445
|
constructor(store2, eventManager, logger) {
|
|
1293
1446
|
this.store = store2;
|
|
1294
1447
|
this.eventManager = eventManager;
|
|
@@ -1300,25 +1453,29 @@ var _MiddlewareManager = class _MiddlewareManager {
|
|
|
1300
1453
|
this.perMiddlewareInterceptors = /* @__PURE__ */ new Map();
|
|
1301
1454
|
this.perResourceMiddlewareInterceptors = /* @__PURE__ */ new Map();
|
|
1302
1455
|
// Locking mechanism to prevent modifications after initialization
|
|
1303
|
-
|
|
1456
|
+
this.#isLocked = false;
|
|
1457
|
+
}
|
|
1458
|
+
static {
|
|
1459
|
+
__name(this, "MiddlewareManager");
|
|
1304
1460
|
}
|
|
1461
|
+
#isLocked;
|
|
1305
1462
|
/**
|
|
1306
1463
|
* Gets the current lock status of the MiddlewareManager
|
|
1307
1464
|
*/
|
|
1308
1465
|
get isLocked() {
|
|
1309
|
-
return
|
|
1466
|
+
return this.#isLocked;
|
|
1310
1467
|
}
|
|
1311
1468
|
/**
|
|
1312
1469
|
* Locks the MiddlewareManager, preventing any further modifications to interceptors
|
|
1313
1470
|
*/
|
|
1314
1471
|
lock() {
|
|
1315
|
-
|
|
1472
|
+
this.#isLocked = true;
|
|
1316
1473
|
}
|
|
1317
1474
|
/**
|
|
1318
1475
|
* Throws an error if the MiddlewareManager is locked
|
|
1319
1476
|
*/
|
|
1320
1477
|
checkLock() {
|
|
1321
|
-
if (
|
|
1478
|
+
if (this.#isLocked) {
|
|
1322
1479
|
throw new LockedError("MiddlewareManager");
|
|
1323
1480
|
}
|
|
1324
1481
|
}
|
|
@@ -1649,12 +1806,9 @@ var _MiddlewareManager = class _MiddlewareManager {
|
|
|
1649
1806
|
}).map((x) => x.middleware);
|
|
1650
1807
|
}
|
|
1651
1808
|
};
|
|
1652
|
-
_isLocked = new WeakMap();
|
|
1653
|
-
__name(_MiddlewareManager, "MiddlewareManager");
|
|
1654
|
-
var MiddlewareManager = _MiddlewareManager;
|
|
1655
1809
|
|
|
1656
1810
|
// src/models/ResourceInitializer.ts
|
|
1657
|
-
var
|
|
1811
|
+
var ResourceInitializer = class {
|
|
1658
1812
|
constructor(store2, eventManager, logger) {
|
|
1659
1813
|
this.store = store2;
|
|
1660
1814
|
this.eventManager = eventManager;
|
|
@@ -1665,6 +1819,9 @@ var _ResourceInitializer = class _ResourceInitializer {
|
|
|
1665
1819
|
this.logger
|
|
1666
1820
|
);
|
|
1667
1821
|
}
|
|
1822
|
+
static {
|
|
1823
|
+
__name(this, "ResourceInitializer");
|
|
1824
|
+
}
|
|
1668
1825
|
/**
|
|
1669
1826
|
* Begins the execution of an task. These are registered tasks and all sanity checks have been performed at this stage to ensure consistency of the object.
|
|
1670
1827
|
* This function can throw only if any of the event listeners or run function throws
|
|
@@ -1695,8 +1852,6 @@ var _ResourceInitializer = class _ResourceInitializer {
|
|
|
1695
1852
|
);
|
|
1696
1853
|
}
|
|
1697
1854
|
};
|
|
1698
|
-
__name(_ResourceInitializer, "ResourceInitializer");
|
|
1699
|
-
var ResourceInitializer = _ResourceInitializer;
|
|
1700
1855
|
|
|
1701
1856
|
// src/models/utils/safeStringify.ts
|
|
1702
1857
|
function safeStringify(value, space, options) {
|
|
@@ -1763,7 +1918,10 @@ var ICONS = {
|
|
|
1763
1918
|
error: "\u2715",
|
|
1764
1919
|
critical: "\u2588"
|
|
1765
1920
|
};
|
|
1766
|
-
var
|
|
1921
|
+
var LogPrinter = class _LogPrinter {
|
|
1922
|
+
static {
|
|
1923
|
+
__name(this, "LogPrinter");
|
|
1924
|
+
}
|
|
1767
1925
|
constructor(options) {
|
|
1768
1926
|
this.strategy = options.strategy;
|
|
1769
1927
|
if (options.strategy === "plain") {
|
|
@@ -1895,6 +2053,30 @@ var _LogPrinter = class _LogPrinter {
|
|
|
1895
2053
|
}
|
|
1896
2054
|
return normalized;
|
|
1897
2055
|
}
|
|
2056
|
+
static {
|
|
2057
|
+
this.NO_COLORS = {
|
|
2058
|
+
trace: "",
|
|
2059
|
+
debug: "",
|
|
2060
|
+
info: "",
|
|
2061
|
+
warn: "",
|
|
2062
|
+
error: "",
|
|
2063
|
+
critical: "",
|
|
2064
|
+
reset: "",
|
|
2065
|
+
bold: "",
|
|
2066
|
+
dim: "",
|
|
2067
|
+
blue: "",
|
|
2068
|
+
cyan: "",
|
|
2069
|
+
gray: ""
|
|
2070
|
+
};
|
|
2071
|
+
}
|
|
2072
|
+
static {
|
|
2073
|
+
this.writers = {
|
|
2074
|
+
// eslint-disable-next-line no-console
|
|
2075
|
+
log: /* @__PURE__ */ __name((msg) => console.log(msg), "log"),
|
|
2076
|
+
// eslint-disable-next-line no-console
|
|
2077
|
+
error: /* @__PURE__ */ __name((msg) => console.error?.(msg), "error")
|
|
2078
|
+
};
|
|
2079
|
+
}
|
|
1898
2080
|
static setWriters(writers) {
|
|
1899
2081
|
_LogPrinter.writers = { ..._LogPrinter.writers, ...writers };
|
|
1900
2082
|
}
|
|
@@ -1905,31 +2087,9 @@ var _LogPrinter = class _LogPrinter {
|
|
|
1905
2087
|
};
|
|
1906
2088
|
}
|
|
1907
2089
|
};
|
|
1908
|
-
__name(_LogPrinter, "LogPrinter");
|
|
1909
|
-
_LogPrinter.NO_COLORS = {
|
|
1910
|
-
trace: "",
|
|
1911
|
-
debug: "",
|
|
1912
|
-
info: "",
|
|
1913
|
-
warn: "",
|
|
1914
|
-
error: "",
|
|
1915
|
-
critical: "",
|
|
1916
|
-
reset: "",
|
|
1917
|
-
bold: "",
|
|
1918
|
-
dim: "",
|
|
1919
|
-
blue: "",
|
|
1920
|
-
cyan: "",
|
|
1921
|
-
gray: ""
|
|
1922
|
-
};
|
|
1923
|
-
_LogPrinter.writers = {
|
|
1924
|
-
// eslint-disable-next-line no-console
|
|
1925
|
-
log: /* @__PURE__ */ __name((msg) => console.log(msg), "log"),
|
|
1926
|
-
// eslint-disable-next-line no-console
|
|
1927
|
-
error: /* @__PURE__ */ __name((msg) => console.error?.(msg), "error")
|
|
1928
|
-
};
|
|
1929
|
-
var LogPrinter = _LogPrinter;
|
|
1930
2090
|
|
|
1931
2091
|
// src/models/Logger.ts
|
|
1932
|
-
var
|
|
2092
|
+
var Logger = class _Logger {
|
|
1933
2093
|
constructor(options, boundContext = {}, source, printer) {
|
|
1934
2094
|
this.printThreshold = "info";
|
|
1935
2095
|
this.printStrategy = "pretty";
|
|
@@ -1951,6 +2111,19 @@ var _Logger = class _Logger {
|
|
|
1951
2111
|
useColors: this.useColors
|
|
1952
2112
|
});
|
|
1953
2113
|
}
|
|
2114
|
+
static {
|
|
2115
|
+
__name(this, "Logger");
|
|
2116
|
+
}
|
|
2117
|
+
static {
|
|
2118
|
+
this.Severity = {
|
|
2119
|
+
trace: 0,
|
|
2120
|
+
debug: 1,
|
|
2121
|
+
info: 2,
|
|
2122
|
+
warn: 3,
|
|
2123
|
+
error: 4,
|
|
2124
|
+
critical: 5
|
|
2125
|
+
};
|
|
2126
|
+
}
|
|
1954
2127
|
detectColorSupport() {
|
|
1955
2128
|
const noColor = typeof process !== "undefined" && !!process.env.NO_COLOR;
|
|
1956
2129
|
if (noColor) return false;
|
|
@@ -2101,19 +2274,9 @@ var _Logger = class _Logger {
|
|
|
2101
2274
|
}
|
|
2102
2275
|
}
|
|
2103
2276
|
};
|
|
2104
|
-
__name(_Logger, "Logger");
|
|
2105
|
-
_Logger.Severity = {
|
|
2106
|
-
trace: 0,
|
|
2107
|
-
debug: 1,
|
|
2108
|
-
info: 2,
|
|
2109
|
-
warn: 3,
|
|
2110
|
-
error: 4,
|
|
2111
|
-
critical: 5
|
|
2112
|
-
};
|
|
2113
|
-
var Logger = _Logger;
|
|
2114
2277
|
|
|
2115
2278
|
// src/models/DependencyProcessor.ts
|
|
2116
|
-
var
|
|
2279
|
+
var DependencyProcessor = class {
|
|
2117
2280
|
constructor(store2, eventManager, taskRunner, logger) {
|
|
2118
2281
|
this.store = store2;
|
|
2119
2282
|
this.eventManager = eventManager;
|
|
@@ -2125,6 +2288,9 @@ var _DependencyProcessor = class _DependencyProcessor {
|
|
|
2125
2288
|
logger
|
|
2126
2289
|
);
|
|
2127
2290
|
}
|
|
2291
|
+
static {
|
|
2292
|
+
__name(this, "DependencyProcessor");
|
|
2293
|
+
}
|
|
2128
2294
|
/**
|
|
2129
2295
|
* This function is going to go through all the resources, tasks and middleware to compute their required dependencies.
|
|
2130
2296
|
*/
|
|
@@ -2389,13 +2555,10 @@ var _DependencyProcessor = class _DependencyProcessor {
|
|
|
2389
2555
|
return storeResource.value;
|
|
2390
2556
|
}
|
|
2391
2557
|
};
|
|
2392
|
-
__name(_DependencyProcessor, "DependencyProcessor");
|
|
2393
|
-
var DependencyProcessor = _DependencyProcessor;
|
|
2394
2558
|
|
|
2395
2559
|
// src/models/EventManager.ts
|
|
2396
2560
|
var HandlerOptionsDefaults = { order: 0 };
|
|
2397
|
-
var
|
|
2398
|
-
var _EventManager = class _EventManager {
|
|
2561
|
+
var EventManager = class {
|
|
2399
2562
|
constructor(options) {
|
|
2400
2563
|
// Core storage for event listeners
|
|
2401
2564
|
this.listeners = /* @__PURE__ */ new Map();
|
|
@@ -2407,7 +2570,7 @@ var _EventManager = class _EventManager {
|
|
|
2407
2570
|
this.emissionInterceptors = [];
|
|
2408
2571
|
this.hookInterceptors = [];
|
|
2409
2572
|
// Locking mechanism to prevent modifications after initialization
|
|
2410
|
-
|
|
2573
|
+
this.#isLocked = false;
|
|
2411
2574
|
this.runtimeCycleDetection = options?.runtimeCycleDetection ?? true;
|
|
2412
2575
|
if (getPlatform().hasAsyncLocalStorage() && this.runtimeCycleDetection) {
|
|
2413
2576
|
this.emissionStack = getPlatform().createAsyncLocalStorage();
|
|
@@ -2418,18 +2581,22 @@ var _EventManager = class _EventManager {
|
|
|
2418
2581
|
this.currentHookIdContext = null;
|
|
2419
2582
|
}
|
|
2420
2583
|
}
|
|
2584
|
+
static {
|
|
2585
|
+
__name(this, "EventManager");
|
|
2586
|
+
}
|
|
2587
|
+
#isLocked;
|
|
2421
2588
|
// ==================== PUBLIC API ====================
|
|
2422
2589
|
/**
|
|
2423
2590
|
* Gets the current lock status of the EventManager
|
|
2424
2591
|
*/
|
|
2425
2592
|
get isLocked() {
|
|
2426
|
-
return
|
|
2593
|
+
return this.#isLocked;
|
|
2427
2594
|
}
|
|
2428
2595
|
/**
|
|
2429
2596
|
* Locks the EventManager, preventing any further modifications to listeners
|
|
2430
2597
|
*/
|
|
2431
2598
|
lock() {
|
|
2432
|
-
|
|
2599
|
+
this.#isLocked = true;
|
|
2433
2600
|
}
|
|
2434
2601
|
/**
|
|
2435
2602
|
* Emits an event to all registered listeners for that event type.
|
|
@@ -2670,7 +2837,7 @@ var _EventManager = class _EventManager {
|
|
|
2670
2837
|
* Throws an error if the EventManager is locked
|
|
2671
2838
|
*/
|
|
2672
2839
|
checkLock() {
|
|
2673
|
-
if (
|
|
2840
|
+
if (this.#isLocked) {
|
|
2674
2841
|
throw new LockedError("EventManager");
|
|
2675
2842
|
}
|
|
2676
2843
|
}
|
|
@@ -2772,9 +2939,6 @@ var _EventManager = class _EventManager {
|
|
|
2772
2939
|
}
|
|
2773
2940
|
}
|
|
2774
2941
|
};
|
|
2775
|
-
_isLocked2 = new WeakMap();
|
|
2776
|
-
__name(_EventManager, "EventManager");
|
|
2777
|
-
var EventManager = _EventManager;
|
|
2778
2942
|
|
|
2779
2943
|
// src/models/utils/findCircularDependencies.ts
|
|
2780
2944
|
function findCircularDependencies(nodes) {
|
|
@@ -2821,10 +2985,13 @@ function findCircularDependencies(nodes) {
|
|
|
2821
2985
|
__name(findCircularDependencies, "findCircularDependencies");
|
|
2822
2986
|
|
|
2823
2987
|
// src/models/StoreValidator.ts
|
|
2824
|
-
var
|
|
2988
|
+
var StoreValidator = class {
|
|
2825
2989
|
constructor(registry) {
|
|
2826
2990
|
this.registry = registry;
|
|
2827
2991
|
}
|
|
2992
|
+
static {
|
|
2993
|
+
__name(this, "StoreValidator");
|
|
2994
|
+
}
|
|
2828
2995
|
checkIfIDExists(id2) {
|
|
2829
2996
|
if (this.registry.tasks.has(id2)) {
|
|
2830
2997
|
throw new DuplicateRegistrationError("Task", id2);
|
|
@@ -2900,11 +3067,9 @@ var _StoreValidator = class _StoreValidator {
|
|
|
2900
3067
|
}
|
|
2901
3068
|
}
|
|
2902
3069
|
};
|
|
2903
|
-
__name(_StoreValidator, "StoreValidator");
|
|
2904
|
-
var StoreValidator = _StoreValidator;
|
|
2905
3070
|
|
|
2906
3071
|
// src/models/StoreRegistry.ts
|
|
2907
|
-
var
|
|
3072
|
+
var StoreRegistry = class {
|
|
2908
3073
|
constructor(store2) {
|
|
2909
3074
|
this.store = store2;
|
|
2910
3075
|
this.tasks = /* @__PURE__ */ new Map();
|
|
@@ -2916,6 +3081,9 @@ var _StoreRegistry = class _StoreRegistry {
|
|
|
2916
3081
|
this.tags = /* @__PURE__ */ new Map();
|
|
2917
3082
|
this.validator = new StoreValidator(this);
|
|
2918
3083
|
}
|
|
3084
|
+
static {
|
|
3085
|
+
__name(this, "StoreRegistry");
|
|
3086
|
+
}
|
|
2919
3087
|
getValidator() {
|
|
2920
3088
|
return this.validator;
|
|
2921
3089
|
}
|
|
@@ -3255,16 +3423,17 @@ var _StoreRegistry = class _StoreRegistry {
|
|
|
3255
3423
|
return currentItem;
|
|
3256
3424
|
}
|
|
3257
3425
|
};
|
|
3258
|
-
__name(_StoreRegistry, "StoreRegistry");
|
|
3259
|
-
var StoreRegistry = _StoreRegistry;
|
|
3260
3426
|
|
|
3261
3427
|
// src/models/OverrideManager.ts
|
|
3262
|
-
var
|
|
3428
|
+
var OverrideManager = class {
|
|
3263
3429
|
constructor(registry) {
|
|
3264
3430
|
this.registry = registry;
|
|
3265
3431
|
this.overrides = /* @__PURE__ */ new Map();
|
|
3266
3432
|
this.overrideRequests = /* @__PURE__ */ new Set();
|
|
3267
3433
|
}
|
|
3434
|
+
static {
|
|
3435
|
+
__name(this, "OverrideManager");
|
|
3436
|
+
}
|
|
3268
3437
|
storeOverridesDeeply(element) {
|
|
3269
3438
|
element.overrides.forEach((override) => {
|
|
3270
3439
|
if (!override) {
|
|
@@ -3322,23 +3491,23 @@ var _OverrideManager = class _OverrideManager {
|
|
|
3322
3491
|
}
|
|
3323
3492
|
}
|
|
3324
3493
|
};
|
|
3325
|
-
__name(_OverrideManager, "OverrideManager");
|
|
3326
|
-
var OverrideManager = _OverrideManager;
|
|
3327
3494
|
|
|
3328
3495
|
// src/models/Store.ts
|
|
3329
|
-
var
|
|
3330
|
-
var _Store = class _Store {
|
|
3496
|
+
var Store = class {
|
|
3331
3497
|
constructor(eventManager, logger, onUnhandledError) {
|
|
3332
3498
|
this.eventManager = eventManager;
|
|
3333
3499
|
this.logger = logger;
|
|
3334
3500
|
this.onUnhandledError = onUnhandledError;
|
|
3335
|
-
__privateAdd(this, _isLocked3, false);
|
|
3336
|
-
__privateAdd(this, _isInitialized, false);
|
|
3337
3501
|
this.registry = new StoreRegistry(this);
|
|
3338
3502
|
this.validator = this.registry.getValidator();
|
|
3339
3503
|
this.overrideManager = new OverrideManager(this.registry);
|
|
3340
3504
|
this.middlewareManager = new MiddlewareManager(this, eventManager, logger);
|
|
3341
3505
|
}
|
|
3506
|
+
static {
|
|
3507
|
+
__name(this, "Store");
|
|
3508
|
+
}
|
|
3509
|
+
#isLocked = false;
|
|
3510
|
+
#isInitialized = false;
|
|
3342
3511
|
// Delegate properties to registry
|
|
3343
3512
|
get tasks() {
|
|
3344
3513
|
return this.registry.tasks;
|
|
@@ -3373,13 +3542,13 @@ var _Store = class _Store {
|
|
|
3373
3542
|
return this.middlewareManager;
|
|
3374
3543
|
}
|
|
3375
3544
|
get isLocked() {
|
|
3376
|
-
return
|
|
3545
|
+
return this.#isLocked;
|
|
3377
3546
|
}
|
|
3378
3547
|
lock() {
|
|
3379
|
-
|
|
3548
|
+
this.#isLocked = true;
|
|
3380
3549
|
}
|
|
3381
3550
|
checkLock() {
|
|
3382
|
-
if (
|
|
3551
|
+
if (this.#isLocked) {
|
|
3383
3552
|
throw new Error("Cannot modify the Store when it is locked.");
|
|
3384
3553
|
}
|
|
3385
3554
|
}
|
|
@@ -3463,7 +3632,7 @@ var _Store = class _Store {
|
|
|
3463
3632
|
}
|
|
3464
3633
|
}
|
|
3465
3634
|
initializeStore(root, config) {
|
|
3466
|
-
if (
|
|
3635
|
+
if (this.#isInitialized) {
|
|
3467
3636
|
throw new StoreAlreadyInitializedError();
|
|
3468
3637
|
}
|
|
3469
3638
|
this.registerGlobalComponents();
|
|
@@ -3472,7 +3641,7 @@ var _Store = class _Store {
|
|
|
3472
3641
|
for (const resource of this.resources.values()) {
|
|
3473
3642
|
this.overrideManager.storeOverridesDeeply(resource.resource);
|
|
3474
3643
|
}
|
|
3475
|
-
|
|
3644
|
+
this.#isInitialized = true;
|
|
3476
3645
|
}
|
|
3477
3646
|
async dispose() {
|
|
3478
3647
|
for (const resource of this.resources.values()) {
|
|
@@ -3517,10 +3686,6 @@ var _Store = class _Store {
|
|
|
3517
3686
|
return this.registry.getResourcesWithTag(tag);
|
|
3518
3687
|
}
|
|
3519
3688
|
};
|
|
3520
|
-
_isLocked3 = new WeakMap();
|
|
3521
|
-
_isInitialized = new WeakMap();
|
|
3522
|
-
__name(_Store, "Store");
|
|
3523
|
-
var Store = _Store;
|
|
3524
3689
|
|
|
3525
3690
|
// src/globals/resources/debug/types.ts
|
|
3526
3691
|
var allFalse = Object.freeze({
|
|
@@ -3947,7 +4112,7 @@ async function safeReportUnhandledError(handler, info) {
|
|
|
3947
4112
|
__name(safeReportUnhandledError, "safeReportUnhandledError");
|
|
3948
4113
|
|
|
3949
4114
|
// src/models/RunResult.ts
|
|
3950
|
-
var
|
|
4115
|
+
var RunResult = class {
|
|
3951
4116
|
constructor(value, logger, store2, eventManager, taskRunner, disposeFn) {
|
|
3952
4117
|
this.value = value;
|
|
3953
4118
|
this.logger = logger;
|
|
@@ -4002,9 +4167,10 @@ var _RunResult = class _RunResult {
|
|
|
4002
4167
|
return this.disposeFn();
|
|
4003
4168
|
}, "dispose");
|
|
4004
4169
|
}
|
|
4170
|
+
static {
|
|
4171
|
+
__name(this, "RunResult");
|
|
4172
|
+
}
|
|
4005
4173
|
};
|
|
4006
|
-
__name(_RunResult, "RunResult");
|
|
4007
|
-
var RunResult = _RunResult;
|
|
4008
4174
|
|
|
4009
4175
|
// src/run.ts
|
|
4010
4176
|
var platform3 = getPlatform();
|
|
@@ -4165,7 +4331,7 @@ function buildTestFacade(deps) {
|
|
|
4165
4331
|
__name(buildTestFacade, "buildTestFacade");
|
|
4166
4332
|
|
|
4167
4333
|
// src/models/Semaphore.ts
|
|
4168
|
-
var
|
|
4334
|
+
var Semaphore = class {
|
|
4169
4335
|
constructor(maxPermits) {
|
|
4170
4336
|
this.waitingQueue = [];
|
|
4171
4337
|
this.disposed = false;
|
|
@@ -4175,6 +4341,9 @@ var _Semaphore = class _Semaphore {
|
|
|
4175
4341
|
this.permits = maxPermits;
|
|
4176
4342
|
this.maxPermits = maxPermits;
|
|
4177
4343
|
}
|
|
4344
|
+
static {
|
|
4345
|
+
__name(this, "Semaphore");
|
|
4346
|
+
}
|
|
4178
4347
|
/**
|
|
4179
4348
|
* Acquire a permit. If no permits are available, waits until one becomes available.
|
|
4180
4349
|
*/
|
|
@@ -4309,8 +4478,6 @@ var _Semaphore = class _Semaphore {
|
|
|
4309
4478
|
};
|
|
4310
4479
|
}
|
|
4311
4480
|
};
|
|
4312
|
-
__name(_Semaphore, "Semaphore");
|
|
4313
|
-
var Semaphore = _Semaphore;
|
|
4314
4481
|
|
|
4315
4482
|
// src/index.ts
|
|
4316
4483
|
var globals = {
|