@logixjs/core 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Action-BkRHy2vg.d.cts +10 -0
- package/dist/Action-mqVvtEHt.d.ts +10 -0
- package/dist/Action.cjs +57 -0
- package/dist/Action.cjs.map +1 -0
- package/dist/Action.d.cts +2 -0
- package/dist/Action.d.ts +2 -0
- package/dist/Action.js +9 -0
- package/dist/Action.js.map +1 -0
- package/dist/Actions-AsQ07yTP.d.cts +22 -0
- package/dist/Actions-AsQ07yTP.d.ts +22 -0
- package/dist/Actions.cjs +19 -0
- package/dist/Actions.cjs.map +1 -0
- package/dist/Actions.d.cts +2 -0
- package/dist/Actions.d.ts +2 -0
- package/dist/Actions.js +2 -0
- package/dist/Actions.js.map +1 -0
- package/dist/Bound-BN1DQ_lM.d.ts +23 -0
- package/dist/Bound-BPIfH9SS.d.cts +23 -0
- package/dist/Bound.cjs +1532 -0
- package/dist/Bound.cjs.map +1 -0
- package/dist/Bound.d.cts +7 -0
- package/dist/Bound.d.ts +7 -0
- package/dist/Bound.js +25 -0
- package/dist/Bound.js.map +1 -0
- package/dist/Debug-B5q5Bkzx.d.ts +320 -0
- package/dist/Debug-Bq8Sqjcr.d.cts +320 -0
- package/dist/Debug.cjs +1821 -0
- package/dist/Debug.cjs.map +1 -0
- package/dist/Debug.d.cts +13 -0
- package/dist/Debug.d.ts +13 -0
- package/dist/Debug.js +76 -0
- package/dist/Debug.js.map +1 -0
- package/dist/EffectOp.cjs +169 -0
- package/dist/EffectOp.cjs.map +1 -0
- package/dist/EffectOp.d.cts +118 -0
- package/dist/EffectOp.d.ts +118 -0
- package/dist/EffectOp.js +28 -0
- package/dist/EffectOp.js.map +1 -0
- package/dist/Env-DuJ6JrU2.d.cts +10 -0
- package/dist/Env-DuJ6JrU2.d.ts +10 -0
- package/dist/Env.cjs +60 -0
- package/dist/Env.cjs.map +1 -0
- package/dist/Env.d.cts +1 -0
- package/dist/Env.d.ts +1 -0
- package/dist/Env.js +11 -0
- package/dist/Env.js.map +1 -0
- package/dist/Flow-1fZT8MpX.d.cts +152 -0
- package/dist/Flow-BhpjE22E.d.ts +152 -0
- package/dist/Flow.cjs +504 -0
- package/dist/Flow.cjs.map +1 -0
- package/dist/Flow.d.cts +8 -0
- package/dist/Flow.d.ts +8 -0
- package/dist/Flow.js +15 -0
- package/dist/Flow.js.map +1 -0
- package/dist/Handle-D8D1zPb_.d.cts +30 -0
- package/dist/Handle-D_cLW1Z3.d.ts +30 -0
- package/dist/Handle.cjs +42 -0
- package/dist/Handle.cjs.map +1 -0
- package/dist/Handle.d.cts +7 -0
- package/dist/Handle.d.ts +7 -0
- package/dist/Handle.js +10 -0
- package/dist/Handle.js.map +1 -0
- package/dist/Kernel-8kC-jOda.d.cts +171 -0
- package/dist/Kernel-CnGE1Fyk.d.ts +171 -0
- package/dist/Kernel.cjs +284 -0
- package/dist/Kernel.cjs.map +1 -0
- package/dist/Kernel.d.cts +14 -0
- package/dist/Kernel.d.ts +14 -0
- package/dist/Kernel.js +36 -0
- package/dist/Kernel.js.map +1 -0
- package/dist/Link-Db7975nU.d.ts +45 -0
- package/dist/Link-fX8x1eCK.d.cts +45 -0
- package/dist/Link.cjs +542 -0
- package/dist/Link.cjs.map +1 -0
- package/dist/Link.d.cts +7 -0
- package/dist/Link.d.ts +7 -0
- package/dist/Link.js +35 -0
- package/dist/Link.js.map +1 -0
- package/dist/Logic-BRjEMr-W.d.ts +38 -0
- package/dist/Logic-DRh4sDZj.d.cts +38 -0
- package/dist/Logic.cjs +37 -0
- package/dist/Logic.cjs.map +1 -0
- package/dist/Logic.d.cts +7 -0
- package/dist/Logic.d.ts +7 -0
- package/dist/Logic.js +10 -0
- package/dist/Logic.js.map +1 -0
- package/dist/MatchBuilder-0QOc-nlU.d.ts +14 -0
- package/dist/MatchBuilder-CJk5oCkR.d.cts +14 -0
- package/dist/MatchBuilder.cjs +85 -0
- package/dist/MatchBuilder.cjs.map +1 -0
- package/dist/MatchBuilder.d.cts +8 -0
- package/dist/MatchBuilder.d.ts +8 -0
- package/dist/MatchBuilder.js +11 -0
- package/dist/MatchBuilder.js.map +1 -0
- package/dist/Middleware.cjs +411 -0
- package/dist/Middleware.cjs.map +1 -0
- package/dist/Middleware.d.cts +88 -0
- package/dist/Middleware.d.ts +88 -0
- package/dist/Middleware.js +27 -0
- package/dist/Middleware.js.map +1 -0
- package/dist/Module-B_0xRDMR.d.cts +203 -0
- package/dist/Module-DnzluX2J.d.ts +203 -0
- package/dist/Module.cjs +13512 -0
- package/dist/Module.cjs.map +1 -0
- package/dist/Module.d.cts +8 -0
- package/dist/Module.d.ts +8 -0
- package/dist/Module.js +53 -0
- package/dist/Module.js.map +1 -0
- package/dist/ModuleTag-C8FHY_sY.d.ts +93 -0
- package/dist/ModuleTag-EGbgBMpZ.d.cts +93 -0
- package/dist/ModuleTag.cjs +12231 -0
- package/dist/ModuleTag.cjs.map +1 -0
- package/dist/ModuleTag.d.cts +8 -0
- package/dist/ModuleTag.d.ts +8 -0
- package/dist/ModuleTag.js +39 -0
- package/dist/ModuleTag.js.map +1 -0
- package/dist/Observability-COqEvp2C.d.cts +713 -0
- package/dist/Observability-cY4kLn0S.d.ts +713 -0
- package/dist/Observability.cjs +5865 -0
- package/dist/Observability.cjs.map +1 -0
- package/dist/Observability.d.cts +9 -0
- package/dist/Observability.d.ts +9 -0
- package/dist/Observability.js +41 -0
- package/dist/Observability.js.map +1 -0
- package/dist/Platform-C49Pv956.d.cts +21 -0
- package/dist/Platform-C49Pv956.d.ts +21 -0
- package/dist/Platform-CHX8o-U4.d.ts +51 -0
- package/dist/Platform-CVlv0xLQ.d.cts +51 -0
- package/dist/Platform.cjs +58 -0
- package/dist/Platform.cjs.map +1 -0
- package/dist/Platform.d.cts +4 -0
- package/dist/Platform.d.ts +4 -0
- package/dist/Platform.js +15 -0
- package/dist/Platform.js.map +1 -0
- package/dist/Process-CM9xbMdP.d.ts +92 -0
- package/dist/Process-mL8fHDSB.d.cts +92 -0
- package/dist/Process.cjs +575 -0
- package/dist/Process.cjs.map +1 -0
- package/dist/Process.d.cts +8 -0
- package/dist/Process.d.ts +8 -0
- package/dist/Process.js +42 -0
- package/dist/Process.js.map +1 -0
- package/dist/ReadQuery-BlMwhe-F.d.ts +30 -0
- package/dist/ReadQuery-CL5XlXts.d.cts +30 -0
- package/dist/ReadQuery-SinbStGF.d.cts +38 -0
- package/dist/ReadQuery-SinbStGF.d.ts +38 -0
- package/dist/ReadQuery.cjs +377 -0
- package/dist/ReadQuery.cjs.map +1 -0
- package/dist/ReadQuery.d.cts +2 -0
- package/dist/ReadQuery.d.ts +2 -0
- package/dist/ReadQuery.js +14 -0
- package/dist/ReadQuery.js.map +1 -0
- package/dist/Reflection-CQnKwPXj.d.ts +182 -0
- package/dist/Reflection-Kabo1mlU.d.cts +182 -0
- package/dist/Reflection.cjs +2954 -0
- package/dist/Reflection.cjs.map +1 -0
- package/dist/Reflection.d.cts +17 -0
- package/dist/Reflection.d.ts +17 -0
- package/dist/Reflection.js +40 -0
- package/dist/Reflection.js.map +1 -0
- package/dist/Resource-Dy1xD_DG.d.cts +75 -0
- package/dist/Resource-Dy1xD_DG.d.ts +75 -0
- package/dist/Resource.cjs +166 -0
- package/dist/Resource.cjs.map +1 -0
- package/dist/Resource.d.cts +3 -0
- package/dist/Resource.d.ts +3 -0
- package/dist/Resource.js +21 -0
- package/dist/Resource.js.map +1 -0
- package/dist/Root-7ADUMk4t.d.cts +29 -0
- package/dist/Root-7ADUMk4t.d.ts +29 -0
- package/dist/Root.cjs +125 -0
- package/dist/Root.cjs.map +1 -0
- package/dist/Root.d.cts +4 -0
- package/dist/Root.d.ts +4 -0
- package/dist/Root.js +12 -0
- package/dist/Root.js.map +1 -0
- package/dist/Runtime-B-aL-f29.d.cts +274 -0
- package/dist/Runtime-CtyzZG4i.d.ts +274 -0
- package/dist/Runtime.cjs +5740 -0
- package/dist/Runtime.cjs.map +1 -0
- package/dist/Runtime.d.cts +19 -0
- package/dist/Runtime.d.ts +19 -0
- package/dist/Runtime.js +62 -0
- package/dist/Runtime.js.map +1 -0
- package/dist/ScopeRegistry-D1owDNSm.d.cts +61 -0
- package/dist/ScopeRegistry-D1owDNSm.d.ts +61 -0
- package/dist/ScopeRegistry.cjs +152 -0
- package/dist/ScopeRegistry.cjs.map +1 -0
- package/dist/ScopeRegistry.d.cts +2 -0
- package/dist/ScopeRegistry.d.ts +2 -0
- package/dist/ScopeRegistry.js +16 -0
- package/dist/ScopeRegistry.js.map +1 -0
- package/dist/State-CU50R26M.d.cts +19 -0
- package/dist/State-CU50R26M.d.ts +19 -0
- package/dist/State.cjs +19 -0
- package/dist/State.cjs.map +1 -0
- package/dist/State.d.cts +2 -0
- package/dist/State.d.ts +2 -0
- package/dist/State.js +2 -0
- package/dist/State.js.map +1 -0
- package/dist/StateTrait-BGsZghTz.d.ts +122 -0
- package/dist/StateTrait-OWhbj12c.d.cts +122 -0
- package/dist/StateTrait.cjs +2737 -0
- package/dist/StateTrait.cjs.map +1 -0
- package/dist/StateTrait.d.cts +9 -0
- package/dist/StateTrait.d.ts +9 -0
- package/dist/StateTrait.js +39 -0
- package/dist/StateTrait.js.map +1 -0
- package/dist/TraitLifecycle-CwV5WPFX.d.cts +88 -0
- package/dist/TraitLifecycle-LdIWmKlg.d.ts +88 -0
- package/dist/TraitLifecycle.cjs +581 -0
- package/dist/TraitLifecycle.cjs.map +1 -0
- package/dist/TraitLifecycle.d.cts +8 -0
- package/dist/TraitLifecycle.d.ts +8 -0
- package/dist/TraitLifecycle.js +24 -0
- package/dist/TraitLifecycle.js.map +1 -0
- package/dist/action-DiMDD_0v.d.cts +35 -0
- package/dist/action-DiMDD_0v.d.ts +35 -0
- package/dist/chunk-24VULZ7A.js +76 -0
- package/dist/chunk-24VULZ7A.js.map +1 -0
- package/dist/chunk-3IYZ5IGG.js +17 -0
- package/dist/chunk-3IYZ5IGG.js.map +1 -0
- package/dist/chunk-3QMIVH35.js +43 -0
- package/dist/chunk-3QMIVH35.js.map +1 -0
- package/dist/chunk-3RMKLXHX.js +83 -0
- package/dist/chunk-3RMKLXHX.js.map +1 -0
- package/dist/chunk-3TMODYZV.js +111 -0
- package/dist/chunk-3TMODYZV.js.map +1 -0
- package/dist/chunk-3VG5TWQR.js +27 -0
- package/dist/chunk-3VG5TWQR.js.map +1 -0
- package/dist/chunk-4CQAV7YB.js +37 -0
- package/dist/chunk-4CQAV7YB.js.map +1 -0
- package/dist/chunk-4SO6JMZL.js +7 -0
- package/dist/chunk-4SO6JMZL.js.map +1 -0
- package/dist/chunk-66ALHVEX.js +40 -0
- package/dist/chunk-66ALHVEX.js.map +1 -0
- package/dist/chunk-76WT3HOR.js +397 -0
- package/dist/chunk-76WT3HOR.js.map +1 -0
- package/dist/chunk-ANLBCBDC.js +285 -0
- package/dist/chunk-ANLBCBDC.js.map +1 -0
- package/dist/chunk-AUIR5O6W.js +75 -0
- package/dist/chunk-AUIR5O6W.js.map +1 -0
- package/dist/chunk-BABLDP24.js +445 -0
- package/dist/chunk-BABLDP24.js.map +1 -0
- package/dist/chunk-BE3HW4FY.js +1099 -0
- package/dist/chunk-BE3HW4FY.js.map +1 -0
- package/dist/chunk-BZ2SHDN2.js +54 -0
- package/dist/chunk-BZ2SHDN2.js.map +1 -0
- package/dist/chunk-CW6T36TN.js +393 -0
- package/dist/chunk-CW6T36TN.js.map +1 -0
- package/dist/chunk-DFNM3WX2.js +632 -0
- package/dist/chunk-DFNM3WX2.js.map +1 -0
- package/dist/chunk-DMBALCE2.js +1034 -0
- package/dist/chunk-DMBALCE2.js.map +1 -0
- package/dist/chunk-EGK3KN7B.js +406 -0
- package/dist/chunk-EGK3KN7B.js.map +1 -0
- package/dist/chunk-EY4NZKDR.js +19 -0
- package/dist/chunk-EY4NZKDR.js.map +1 -0
- package/dist/chunk-G5ZBFPNU.js +23 -0
- package/dist/chunk-G5ZBFPNU.js.map +1 -0
- package/dist/chunk-GMPEOUP2.js +31 -0
- package/dist/chunk-GMPEOUP2.js.map +1 -0
- package/dist/chunk-IHVBV5C2.js +279 -0
- package/dist/chunk-IHVBV5C2.js.map +1 -0
- package/dist/chunk-IPF7E66P.js +23 -0
- package/dist/chunk-IPF7E66P.js.map +1 -0
- package/dist/chunk-JCXGZRMU.js +204 -0
- package/dist/chunk-JCXGZRMU.js.map +1 -0
- package/dist/chunk-JGIWG6SR.js +6359 -0
- package/dist/chunk-JGIWG6SR.js.map +1 -0
- package/dist/chunk-JWOYLO27.js +241 -0
- package/dist/chunk-JWOYLO27.js.map +1 -0
- package/dist/chunk-KIXAU3GM.js +137 -0
- package/dist/chunk-KIXAU3GM.js.map +1 -0
- package/dist/chunk-KL5ACTCT.js +8 -0
- package/dist/chunk-KL5ACTCT.js.map +1 -0
- package/dist/chunk-KP7MUZNX.js +83 -0
- package/dist/chunk-KP7MUZNX.js.map +1 -0
- package/dist/chunk-LEU6UA5J.js +1 -0
- package/dist/chunk-LEU6UA5J.js.map +1 -0
- package/dist/chunk-M2RGJPXX.js +35 -0
- package/dist/chunk-M2RGJPXX.js.map +1 -0
- package/dist/chunk-M3BFQ7HK.js +13 -0
- package/dist/chunk-M3BFQ7HK.js.map +1 -0
- package/dist/chunk-M3WTHJHJ.js +1051 -0
- package/dist/chunk-M3WTHJHJ.js.map +1 -0
- package/dist/chunk-M7IYCTJV.js +79 -0
- package/dist/chunk-M7IYCTJV.js.map +1 -0
- package/dist/chunk-NBD3KUOZ.js +838 -0
- package/dist/chunk-NBD3KUOZ.js.map +1 -0
- package/dist/chunk-NQZ2OSGR.js +151 -0
- package/dist/chunk-NQZ2OSGR.js.map +1 -0
- package/dist/chunk-NZJKFF45.js +106 -0
- package/dist/chunk-NZJKFF45.js.map +1 -0
- package/dist/chunk-OFADUJWJ.js +175 -0
- package/dist/chunk-OFADUJWJ.js.map +1 -0
- package/dist/chunk-OGWBVHB3.js +461 -0
- package/dist/chunk-OGWBVHB3.js.map +1 -0
- package/dist/chunk-PAYXCY6A.js +1696 -0
- package/dist/chunk-PAYXCY6A.js.map +1 -0
- package/dist/chunk-PYOE4VSI.js +1924 -0
- package/dist/chunk-PYOE4VSI.js.map +1 -0
- package/dist/chunk-PZ5AY32C.js +10 -0
- package/dist/chunk-PZ5AY32C.js.map +1 -0
- package/dist/chunk-QCHIQWAJ.js +21 -0
- package/dist/chunk-QCHIQWAJ.js.map +1 -0
- package/dist/chunk-QMM6O4CD.js +71 -0
- package/dist/chunk-QMM6O4CD.js.map +1 -0
- package/dist/chunk-RNFE3ML2.js +22 -0
- package/dist/chunk-RNFE3ML2.js.map +1 -0
- package/dist/chunk-TAAPQVZN.js +23 -0
- package/dist/chunk-TAAPQVZN.js.map +1 -0
- package/dist/chunk-THATMZXD.js +21 -0
- package/dist/chunk-THATMZXD.js.map +1 -0
- package/dist/chunk-TKZ7MEIA.js +27 -0
- package/dist/chunk-TKZ7MEIA.js.map +1 -0
- package/dist/chunk-TQOBJYDP.js +7 -0
- package/dist/chunk-TQOBJYDP.js.map +1 -0
- package/dist/chunk-VZB726PE.js +93 -0
- package/dist/chunk-VZB726PE.js.map +1 -0
- package/dist/chunk-W3TEWHLO.js +568 -0
- package/dist/chunk-W3TEWHLO.js.map +1 -0
- package/dist/chunk-YS3AZQ2G.js +52 -0
- package/dist/chunk-YS3AZQ2G.js.map +1 -0
- package/dist/chunk-ZDTRWK5F.js +40 -0
- package/dist/chunk-ZDTRWK5F.js.map +1 -0
- package/dist/chunk-ZFLHVFUC.js +192 -0
- package/dist/chunk-ZFLHVFUC.js.map +1 -0
- package/dist/chunk-ZFY7U2FR.js +133 -0
- package/dist/chunk-ZFY7U2FR.js.map +1 -0
- package/dist/chunk-ZGDVUPTM.js +270 -0
- package/dist/chunk-ZGDVUPTM.js.map +1 -0
- package/dist/index.cjs +19700 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +195 -0
- package/dist/index.d.ts +195 -0
- package/dist/index.js +286 -0
- package/dist/index.js.map +1 -0
- package/dist/ir-BMP7yxJJ.d.cts +39 -0
- package/dist/ir-DUOz6H-5.d.ts +39 -0
- package/dist/module-B8CBqIZ_.d.cts +1191 -0
- package/dist/module-k7m3txak.d.ts +1191 -0
- package/dist/protocol-g_1897M2.d.cts +127 -0
- package/dist/protocol-g_1897M2.d.ts +127 -0
- package/package.json +162 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Link
|
|
3
|
+
} from "./chunk-JCXGZRMU.js";
|
|
4
|
+
import {
|
|
5
|
+
attachMeta,
|
|
6
|
+
getDefinition,
|
|
7
|
+
getMeta
|
|
8
|
+
} from "./chunk-PAYXCY6A.js";
|
|
9
|
+
import {
|
|
10
|
+
__export
|
|
11
|
+
} from "./chunk-PZ5AY32C.js";
|
|
12
|
+
|
|
13
|
+
// src/Process.ts
|
|
14
|
+
var Process_exports = {};
|
|
15
|
+
__export(Process_exports, {
|
|
16
|
+
attachMeta: () => attachMeta2,
|
|
17
|
+
getDefinition: () => getDefinition2,
|
|
18
|
+
getMeta: () => getMeta2,
|
|
19
|
+
link: () => link,
|
|
20
|
+
make: () => make
|
|
21
|
+
});
|
|
22
|
+
var DEFAULT_TRIGGERS = [{ kind: "platformEvent", platformEvent: "runtime:boot" }];
|
|
23
|
+
var normalizeDefinition = (input) => {
|
|
24
|
+
const base = typeof input === "string" ? { processId: input } : input;
|
|
25
|
+
const processId = base.processId;
|
|
26
|
+
if (typeof processId !== "string" || processId.length === 0) {
|
|
27
|
+
throw new Error("[Process.make] processId must be a non-empty string");
|
|
28
|
+
}
|
|
29
|
+
const triggers = Array.isArray(base.triggers) && base.triggers.length > 0 ? base.triggers : DEFAULT_TRIGGERS;
|
|
30
|
+
const concurrency = base.concurrency ?? { mode: "latest" };
|
|
31
|
+
const errorPolicy = base.errorPolicy ?? { mode: "failStop" };
|
|
32
|
+
const diagnosticsLevel = base.diagnosticsLevel ?? "off";
|
|
33
|
+
return {
|
|
34
|
+
processId,
|
|
35
|
+
name: base.name,
|
|
36
|
+
description: base.description,
|
|
37
|
+
requires: base.requires,
|
|
38
|
+
triggers,
|
|
39
|
+
concurrency,
|
|
40
|
+
errorPolicy,
|
|
41
|
+
diagnosticsLevel
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
var make = (definition, effect) => attachMeta(effect, {
|
|
45
|
+
definition: normalizeDefinition(definition),
|
|
46
|
+
kind: "process"
|
|
47
|
+
});
|
|
48
|
+
var getDefinition2 = (effect) => getDefinition(effect);
|
|
49
|
+
var getMeta2 = (effect) => getMeta(effect);
|
|
50
|
+
var attachMeta2 = (effect, meta) => attachMeta(effect, meta);
|
|
51
|
+
var isModuleLike = (value) => Boolean(value) && typeof value === "object" && (value._kind === "ModuleDef" || value._kind === "Module") && "tag" in value;
|
|
52
|
+
var unwrapModuleTag = (module) => {
|
|
53
|
+
if (isModuleLike(module)) {
|
|
54
|
+
return module.tag;
|
|
55
|
+
}
|
|
56
|
+
return module;
|
|
57
|
+
};
|
|
58
|
+
function link(config, logic) {
|
|
59
|
+
const linkId = config.id ?? [...config.modules].map((m) => m.id).sort().join("~");
|
|
60
|
+
const modulesRecord = /* @__PURE__ */ Object.create(null);
|
|
61
|
+
const requires = /* @__PURE__ */ new Set();
|
|
62
|
+
for (const module of config.modules) {
|
|
63
|
+
const tag = unwrapModuleTag(module);
|
|
64
|
+
requires.add(String(tag.id));
|
|
65
|
+
modulesRecord[tag.id] = tag;
|
|
66
|
+
}
|
|
67
|
+
const effect = Link(
|
|
68
|
+
modulesRecord,
|
|
69
|
+
logic
|
|
70
|
+
);
|
|
71
|
+
const definition = {
|
|
72
|
+
processId: linkId,
|
|
73
|
+
requires: Array.from(requires),
|
|
74
|
+
triggers: [...DEFAULT_TRIGGERS, { kind: "platformEvent", platformEvent: `link:${linkId}` }],
|
|
75
|
+
concurrency: { mode: "latest" },
|
|
76
|
+
errorPolicy: { mode: "failStop" },
|
|
77
|
+
diagnosticsLevel: "off"
|
|
78
|
+
};
|
|
79
|
+
return attachMeta(effect, {
|
|
80
|
+
definition,
|
|
81
|
+
kind: "link"
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export {
|
|
86
|
+
make,
|
|
87
|
+
getDefinition2 as getDefinition,
|
|
88
|
+
getMeta2 as getMeta,
|
|
89
|
+
attachMeta2 as attachMeta,
|
|
90
|
+
link,
|
|
91
|
+
Process_exports
|
|
92
|
+
};
|
|
93
|
+
//# sourceMappingURL=chunk-VZB726PE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/Process.ts"],"sourcesContent":["import { Effect } from 'effect'\nimport * as ModuleFactory from './internal/runtime/ModuleFactory.js'\nimport type * as Protocol from './internal/runtime/core/process/protocol.js'\nimport * as Meta from './internal/runtime/core/process/meta.js'\nimport type { AnyModuleShape, ModuleHandle, ModuleLike, ModuleTag } from './internal/module.js'\n\nexport type DiagnosticsLevel = Protocol.DiagnosticsLevel\nexport type ProcessScope = Protocol.ProcessScope\nexport type ProcessIdentity = Protocol.ProcessIdentity\nexport type ProcessInstanceIdentity = Protocol.ProcessInstanceIdentity\nexport type ProcessTriggerSpec = Protocol.ProcessTriggerSpec\nexport type ProcessTrigger = Protocol.ProcessTrigger\nexport type ProcessConcurrencyPolicy = Protocol.ProcessConcurrencyPolicy\nexport type ProcessErrorPolicy = Protocol.ProcessErrorPolicy\nexport type ProcessDefinition = Protocol.ProcessDefinition\nexport type ProcessInstallation = Protocol.ProcessInstallation\nexport type SerializableErrorSummary = Protocol.SerializableErrorSummary\nexport type ProcessInstanceStatus = Protocol.ProcessInstanceStatus\nexport type ProcessEvent = Protocol.ProcessEvent\nexport type ProcessControlRequest = Protocol.ProcessControlRequest\nexport type ProcessPlatformEvent = Protocol.ProcessPlatformEvent\n\nexport type ProcessEffect<E = never, R = never> = Meta.ProcessEffect<E, R>\n\nexport type ProcessMakeDefinition =\n | string\n | {\n readonly processId: string\n readonly name?: string\n readonly description?: string\n readonly requires?: ReadonlyArray<string>\n readonly triggers?: ReadonlyArray<ProcessTriggerSpec>\n readonly concurrency?: ProcessConcurrencyPolicy\n readonly errorPolicy?: ProcessErrorPolicy\n readonly diagnosticsLevel?: DiagnosticsLevel\n }\n\nconst DEFAULT_TRIGGERS: ReadonlyArray<ProcessTriggerSpec> = [{ kind: 'platformEvent', platformEvent: 'runtime:boot' }]\n\nconst normalizeDefinition = (input: ProcessMakeDefinition): ProcessDefinition => {\n const base = typeof input === 'string' ? ({ processId: input } satisfies { readonly processId: string }) : input\n\n const processId = base.processId\n if (typeof processId !== 'string' || processId.length === 0) {\n throw new Error('[Process.make] processId must be a non-empty string')\n }\n\n const triggers = Array.isArray(base.triggers) && base.triggers.length > 0 ? base.triggers : DEFAULT_TRIGGERS\n\n const concurrency = base.concurrency ?? ({ mode: 'latest' } satisfies ProcessConcurrencyPolicy)\n const errorPolicy = base.errorPolicy ?? ({ mode: 'failStop' } satisfies ProcessErrorPolicy)\n const diagnosticsLevel = base.diagnosticsLevel ?? 'off'\n\n return {\n processId,\n name: base.name,\n description: base.description,\n requires: base.requires,\n triggers,\n concurrency,\n errorPolicy,\n diagnosticsLevel,\n }\n}\n\nexport const make = <E, R>(definition: ProcessMakeDefinition, effect: Effect.Effect<void, E, R>): ProcessEffect<E, R> =>\n Meta.attachMeta(effect, {\n definition: normalizeDefinition(definition),\n kind: 'process',\n })\n\nexport const getDefinition = (effect: Effect.Effect<void, any, any>): ProcessDefinition | undefined =>\n Meta.getDefinition(effect)\n\nexport const getMeta = (effect: Effect.Effect<void, any, any>): Meta.ProcessMeta | undefined => Meta.getMeta(effect)\n\nexport const attachMeta = <E, R>(effect: Effect.Effect<void, E, R>, meta: Meta.ProcessMeta): ProcessEffect<E, R> =>\n Meta.attachMeta(effect, meta)\n\ntype LinkModuleToken<Id extends string, Sh extends AnyModuleShape> = ModuleTag<Id, Sh> | ModuleLike<Id, Sh, object>\n\ntype LinkModuleIdOf<M> = M extends { readonly id: infer Id } ? Id : never\ntype LinkModuleShapeOf<M> =\n M extends ModuleLike<string, infer Sh, object> ? Sh : M extends ModuleTag<string, infer Sh> ? Sh : never\ntype LinkModuleTagOf<M> =\n M extends ModuleLike<string, infer Sh, object>\n ? ModuleTag<string, Sh>\n : M extends ModuleTag<string, AnyModuleShape>\n ? M\n : never\n\nconst isModuleLike = (value: unknown): value is ModuleLike<string, AnyModuleShape, object> =>\n Boolean(value) &&\n typeof value === 'object' &&\n ((value as { readonly _kind?: unknown })._kind === 'ModuleDef' ||\n (value as { readonly _kind?: unknown })._kind === 'Module') &&\n 'tag' in (value as object)\n\nconst unwrapModuleTag = <Id extends string, Sh extends AnyModuleShape>(\n module: LinkModuleToken<Id, Sh>,\n): ModuleTag<Id, Sh> => {\n if (isModuleLike(module)) {\n return module.tag\n }\n return module as ModuleTag<Id, Sh>\n}\n\nexport interface LinkConfig<Ms extends readonly LinkModuleToken<string, AnyModuleShape>[]> {\n readonly id?: string\n readonly modules: Ms\n}\n\nexport type LinkHandles<Ms extends readonly LinkModuleToken<string, AnyModuleShape>[]> = {\n [M in Ms[number] as LinkModuleIdOf<M>]: ModuleHandle<LinkModuleShapeOf<M>>\n}\n\ntype ModulesRecord<Ms extends readonly LinkModuleToken<string, AnyModuleShape>[]> = {\n [M in Ms[number] as LinkModuleIdOf<M>]: LinkModuleTagOf<M>\n}\n\nexport function link<Ms extends readonly LinkModuleToken<string, AnyModuleShape>[], E = never, R = never>(\n config: LinkConfig<Ms>,\n logic: ($: LinkHandles<Ms>) => Effect.Effect<void, E, R>,\n): ProcessEffect<E, R> {\n const linkId =\n config.id ??\n [...config.modules]\n .map((m) => m.id)\n .sort()\n .join('~')\n\n const modulesRecord = Object.create(null) as ModulesRecord<Ms>\n const requires = new Set<string>()\n\n for (const module of config.modules) {\n const tag = unwrapModuleTag(module)\n requires.add(String(tag.id))\n ;(modulesRecord as Record<string, ModuleTag<string, AnyModuleShape>>)[tag.id] = tag as unknown as ModuleTag<\n string,\n AnyModuleShape\n >\n }\n\n const effect = ModuleFactory.Link(\n modulesRecord as unknown as Record<string, ModuleTag<string, AnyModuleShape>>,\n logic as unknown as ($: Record<string, ModuleHandle<AnyModuleShape>>) => Effect.Effect<void, E, R>,\n )\n\n const definition: ProcessDefinition = {\n processId: linkId,\n requires: Array.from(requires),\n triggers: [...DEFAULT_TRIGGERS, { kind: 'platformEvent', platformEvent: `link:${linkId}` }],\n concurrency: { mode: 'latest' },\n errorPolicy: { mode: 'failStop' },\n diagnosticsLevel: 'off',\n }\n\n return Meta.attachMeta(effect, {\n definition,\n kind: 'link',\n }) as ProcessEffect<E, R>\n}\n"],"mappings":";;;;;;;;;;;;;AAAA;AAAA;AAAA,oBAAAA;AAAA,EAAA,qBAAAC;AAAA,EAAA,eAAAC;AAAA,EAAA;AAAA;AAAA;AAqCA,IAAM,mBAAsD,CAAC,EAAE,MAAM,iBAAiB,eAAe,eAAe,CAAC;AAErH,IAAM,sBAAsB,CAAC,UAAoD;AAC/E,QAAM,OAAO,OAAO,UAAU,WAAY,EAAE,WAAW,MAAM,IAA8C;AAE3G,QAAM,YAAY,KAAK;AACvB,MAAI,OAAO,cAAc,YAAY,UAAU,WAAW,GAAG;AAC3D,UAAM,IAAI,MAAM,qDAAqD;AAAA,EACvE;AAEA,QAAM,WAAW,MAAM,QAAQ,KAAK,QAAQ,KAAK,KAAK,SAAS,SAAS,IAAI,KAAK,WAAW;AAE5F,QAAM,cAAc,KAAK,eAAgB,EAAE,MAAM,SAAS;AAC1D,QAAM,cAAc,KAAK,eAAgB,EAAE,MAAM,WAAW;AAC5D,QAAM,mBAAmB,KAAK,oBAAoB;AAElD,SAAO;AAAA,IACL;AAAA,IACA,MAAM,KAAK;AAAA,IACX,aAAa,KAAK;AAAA,IAClB,UAAU,KAAK;AAAA,IACf;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAEO,IAAM,OAAO,CAAO,YAAmC,WACvD,WAAW,QAAQ;AAAA,EACtB,YAAY,oBAAoB,UAAU;AAAA,EAC1C,MAAM;AACR,CAAC;AAEI,IAAMC,iBAAgB,CAAC,WACvB,cAAc,MAAM;AAEpB,IAAMC,WAAU,CAAC,WAA6E,QAAQ,MAAM;AAE5G,IAAMC,cAAa,CAAO,QAAmC,SAC7D,WAAW,QAAQ,IAAI;AAc9B,IAAM,eAAe,CAAC,UACpB,QAAQ,KAAK,KACb,OAAO,UAAU,aACf,MAAuC,UAAU,eAChD,MAAuC,UAAU,aACpD,SAAU;AAEZ,IAAM,kBAAkB,CACtB,WACsB;AACtB,MAAI,aAAa,MAAM,GAAG;AACxB,WAAO,OAAO;AAAA,EAChB;AACA,SAAO;AACT;AAeO,SAAS,KACd,QACA,OACqB;AACrB,QAAM,SACJ,OAAO,MACP,CAAC,GAAG,OAAO,OAAO,EACf,IAAI,CAAC,MAAM,EAAE,EAAE,EACf,KAAK,EACL,KAAK,GAAG;AAEb,QAAM,gBAAgB,uBAAO,OAAO,IAAI;AACxC,QAAM,WAAW,oBAAI,IAAY;AAEjC,aAAW,UAAU,OAAO,SAAS;AACnC,UAAM,MAAM,gBAAgB,MAAM;AAClC,aAAS,IAAI,OAAO,IAAI,EAAE,CAAC;AAC1B,IAAC,cAAoE,IAAI,EAAE,IAAI;AAAA,EAIlF;AAEA,QAAM,SAAuB;AAAA,IAC3B;AAAA,IACA;AAAA,EACF;AAEA,QAAM,aAAgC;AAAA,IACpC,WAAW;AAAA,IACX,UAAU,MAAM,KAAK,QAAQ;AAAA,IAC7B,UAAU,CAAC,GAAG,kBAAkB,EAAE,MAAM,iBAAiB,eAAe,QAAQ,MAAM,GAAG,CAAC;AAAA,IAC1F,aAAa,EAAE,MAAM,SAAS;AAAA,IAC9B,aAAa,EAAE,MAAM,WAAW;AAAA,IAChC,kBAAkB;AAAA,EACpB;AAEA,SAAY,WAAW,QAAQ;AAAA,IAC7B;AAAA,IACA,MAAM;AAAA,EACR,CAAC;AACH;","names":["attachMeta","getDefinition","getMeta","getDefinition","getMeta","attachMeta"]}
|
|
@@ -0,0 +1,568 @@
|
|
|
1
|
+
import {
|
|
2
|
+
getModuleProgramById
|
|
3
|
+
} from "./chunk-66ALHVEX.js";
|
|
4
|
+
import {
|
|
5
|
+
appendConvergeStaticIrCollectors
|
|
6
|
+
} from "./chunk-M3BFQ7HK.js";
|
|
7
|
+
import {
|
|
8
|
+
getModuleTraitsProgram,
|
|
9
|
+
getRuntimeInternals
|
|
10
|
+
} from "./chunk-3RMKLXHX.js";
|
|
11
|
+
import {
|
|
12
|
+
getNodeEnv
|
|
13
|
+
} from "./chunk-3QMIVH35.js";
|
|
14
|
+
import {
|
|
15
|
+
browserConsoleLayer,
|
|
16
|
+
browserDiagnosticConsoleLayer,
|
|
17
|
+
clearRuntimeDebugEventSeq,
|
|
18
|
+
currentDebugSinks,
|
|
19
|
+
currentDiagnosticsLevel,
|
|
20
|
+
currentRuntimeLabel,
|
|
21
|
+
currentTraitConvergeDiagnosticsSampling,
|
|
22
|
+
errorOnlyLayer,
|
|
23
|
+
noopLayer,
|
|
24
|
+
record,
|
|
25
|
+
toRuntimeDebugEventRef,
|
|
26
|
+
traitConvergeDiagnosticsSampling
|
|
27
|
+
} from "./chunk-DMBALCE2.js";
|
|
28
|
+
import {
|
|
29
|
+
OBSERVABILITY_PROTOCOL_VERSION,
|
|
30
|
+
exportEvidencePackage
|
|
31
|
+
} from "./chunk-M7IYCTJV.js";
|
|
32
|
+
import {
|
|
33
|
+
__export
|
|
34
|
+
} from "./chunk-PZ5AY32C.js";
|
|
35
|
+
|
|
36
|
+
// src/Debug.ts
|
|
37
|
+
var Debug_exports = {};
|
|
38
|
+
__export(Debug_exports, {
|
|
39
|
+
appendSinks: () => appendSinks,
|
|
40
|
+
clearDevtoolsEvents: () => clearDevtoolsEvents2,
|
|
41
|
+
devtoolsHubLayer: () => devtoolsHubLayer,
|
|
42
|
+
diagnosticsLevel: () => diagnosticsLevel,
|
|
43
|
+
exportEvidencePackage: () => exportEvidencePackage2,
|
|
44
|
+
getDevtoolsRunId: () => getDevtoolsRunId2,
|
|
45
|
+
getDevtoolsSnapshot: () => getDevtoolsSnapshot2,
|
|
46
|
+
getDevtoolsSnapshotToken: () => getDevtoolsSnapshotToken2,
|
|
47
|
+
getInstanceLabel: () => getInstanceLabel2,
|
|
48
|
+
getModuleFinalTraits: () => getModuleFinalTraits,
|
|
49
|
+
getModuleTraits: () => getModuleTraits,
|
|
50
|
+
getModuleTraitsById: () => getModuleTraitsById,
|
|
51
|
+
getModuleTraitsSnapshot: () => getModuleTraitsSnapshot,
|
|
52
|
+
internal: () => internal,
|
|
53
|
+
isDevtoolsEnabled: () => isDevtoolsEnabled2,
|
|
54
|
+
layer: () => layer,
|
|
55
|
+
makeModuleRuntimeCounterSink: () => makeModuleRuntimeCounterSink,
|
|
56
|
+
makeRingBufferSink: () => makeRingBufferSink,
|
|
57
|
+
noopLayer: () => noopLayer2,
|
|
58
|
+
record: () => record2,
|
|
59
|
+
replace: () => replace,
|
|
60
|
+
runtimeLabel: () => runtimeLabel,
|
|
61
|
+
setDevtoolsRunId: () => setDevtoolsRunId2,
|
|
62
|
+
setInstanceLabel: () => setInstanceLabel2,
|
|
63
|
+
startDevtoolsRun: () => startDevtoolsRun2,
|
|
64
|
+
subscribeDevtoolsSnapshot: () => subscribeDevtoolsSnapshot2,
|
|
65
|
+
toRuntimeDebugEventRef: () => toRuntimeDebugEventRef2,
|
|
66
|
+
traceLayer: () => traceLayer,
|
|
67
|
+
traitConvergeDiagnosticsSampling: () => traitConvergeDiagnosticsSampling2,
|
|
68
|
+
withPrettyLogger: () => withPrettyLogger
|
|
69
|
+
});
|
|
70
|
+
import { Effect as Effect2, Layer, Logger } from "effect";
|
|
71
|
+
|
|
72
|
+
// src/internal/runtime/core/DevtoolsHub.ts
|
|
73
|
+
import { Effect, FiberRef } from "effect";
|
|
74
|
+
var instances = /* @__PURE__ */ new Map();
|
|
75
|
+
var latestStates = /* @__PURE__ */ new Map();
|
|
76
|
+
var latestTraitSummaries = /* @__PURE__ */ new Map();
|
|
77
|
+
var instanceLabels = /* @__PURE__ */ new Map();
|
|
78
|
+
var convergeStaticIrByDigest = /* @__PURE__ */ new Map();
|
|
79
|
+
var liveInstanceKeys = /* @__PURE__ */ new Set();
|
|
80
|
+
var exportBudget = {
|
|
81
|
+
dropped: 0,
|
|
82
|
+
oversized: 0
|
|
83
|
+
};
|
|
84
|
+
var lastRunTs = 0;
|
|
85
|
+
var lastRunTsSeq = 0;
|
|
86
|
+
var nextRunId = () => {
|
|
87
|
+
const ts = Date.now();
|
|
88
|
+
if (ts === lastRunTs) {
|
|
89
|
+
lastRunTsSeq += 1;
|
|
90
|
+
} else {
|
|
91
|
+
lastRunTs = ts;
|
|
92
|
+
lastRunTsSeq = 0;
|
|
93
|
+
}
|
|
94
|
+
return lastRunTsSeq === 0 ? `run-${ts}` : `run-${ts}.${lastRunTsSeq}`;
|
|
95
|
+
};
|
|
96
|
+
var currentRunId = nextRunId();
|
|
97
|
+
var nextSeq = 1;
|
|
98
|
+
var bufferSize = 500;
|
|
99
|
+
var ringBuffer = [];
|
|
100
|
+
var ringBufferSeq = [];
|
|
101
|
+
var snapshotToken = 0;
|
|
102
|
+
var ensureRingBufferSize = () => {
|
|
103
|
+
if (bufferSize <= 0) {
|
|
104
|
+
ringBuffer.length = 0;
|
|
105
|
+
ringBufferSeq.length = 0;
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
if (ringBuffer.length <= bufferSize) return;
|
|
109
|
+
const excess = ringBuffer.length - bufferSize;
|
|
110
|
+
ringBuffer.splice(0, excess);
|
|
111
|
+
ringBufferSeq.splice(0, excess);
|
|
112
|
+
};
|
|
113
|
+
var trimRingBufferIfNeeded = () => {
|
|
114
|
+
if (bufferSize <= 0) {
|
|
115
|
+
ringBuffer.length = 0;
|
|
116
|
+
ringBufferSeq.length = 0;
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
if (bufferSize <= 64) {
|
|
120
|
+
ensureRingBufferSize();
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
const slack = Math.min(1024, Math.floor(bufferSize / 2));
|
|
124
|
+
const threshold = bufferSize + Math.max(1, slack);
|
|
125
|
+
if (ringBuffer.length <= threshold) return;
|
|
126
|
+
const excess = ringBuffer.length - bufferSize;
|
|
127
|
+
ringBuffer.splice(0, excess);
|
|
128
|
+
ringBufferSeq.splice(0, excess);
|
|
129
|
+
};
|
|
130
|
+
var currentSnapshot = {
|
|
131
|
+
snapshotToken,
|
|
132
|
+
instances,
|
|
133
|
+
events: ringBuffer,
|
|
134
|
+
latestStates,
|
|
135
|
+
latestTraitSummaries,
|
|
136
|
+
exportBudget
|
|
137
|
+
};
|
|
138
|
+
var listeners = /* @__PURE__ */ new Set();
|
|
139
|
+
var notifyScheduled = false;
|
|
140
|
+
var scheduleNotify = () => {
|
|
141
|
+
if (notifyScheduled) return;
|
|
142
|
+
notifyScheduled = true;
|
|
143
|
+
queueMicrotask(() => {
|
|
144
|
+
notifyScheduled = false;
|
|
145
|
+
for (const listener of listeners) {
|
|
146
|
+
listener();
|
|
147
|
+
}
|
|
148
|
+
});
|
|
149
|
+
};
|
|
150
|
+
var devtoolsEnabled = false;
|
|
151
|
+
var bumpSnapshotToken = () => {
|
|
152
|
+
snapshotToken += 1;
|
|
153
|
+
currentSnapshot.snapshotToken = snapshotToken;
|
|
154
|
+
};
|
|
155
|
+
var markSnapshotChanged = () => {
|
|
156
|
+
bumpSnapshotToken();
|
|
157
|
+
scheduleNotify();
|
|
158
|
+
};
|
|
159
|
+
var configureDevtoolsHub = (options) => {
|
|
160
|
+
devtoolsEnabled = true;
|
|
161
|
+
if (typeof options?.bufferSize === "number" && Number.isFinite(options.bufferSize)) {
|
|
162
|
+
const next = Math.floor(options.bufferSize);
|
|
163
|
+
const nextBufferSize = next >= 0 ? next : 0;
|
|
164
|
+
if (nextBufferSize !== bufferSize) {
|
|
165
|
+
bufferSize = nextBufferSize;
|
|
166
|
+
ensureRingBufferSize();
|
|
167
|
+
markSnapshotChanged();
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
};
|
|
171
|
+
var isDevtoolsEnabled = () => devtoolsEnabled;
|
|
172
|
+
var getDevtoolsSnapshot = () => currentSnapshot;
|
|
173
|
+
var getDevtoolsSnapshotToken = () => snapshotToken;
|
|
174
|
+
var subscribeDevtoolsSnapshot = (listener) => {
|
|
175
|
+
listeners.add(listener);
|
|
176
|
+
return () => {
|
|
177
|
+
listeners.delete(listener);
|
|
178
|
+
};
|
|
179
|
+
};
|
|
180
|
+
var getDevtoolsRunId = () => currentRunId;
|
|
181
|
+
var setDevtoolsRunId = (runId) => {
|
|
182
|
+
if (typeof runId !== "string" || runId.length === 0) return;
|
|
183
|
+
if (runId !== currentRunId) {
|
|
184
|
+
currentRunId = runId;
|
|
185
|
+
markSnapshotChanged();
|
|
186
|
+
}
|
|
187
|
+
};
|
|
188
|
+
var startDevtoolsRun = (runId) => {
|
|
189
|
+
currentRunId = typeof runId === "string" && runId.length > 0 ? runId : nextRunId();
|
|
190
|
+
nextSeq = 1;
|
|
191
|
+
clearRuntimeDebugEventSeq();
|
|
192
|
+
clearDevtoolsEvents();
|
|
193
|
+
return currentRunId;
|
|
194
|
+
};
|
|
195
|
+
var clearDevtoolsEvents = () => {
|
|
196
|
+
ringBuffer.length = 0;
|
|
197
|
+
ringBufferSeq.length = 0;
|
|
198
|
+
exportBudget.dropped = 0;
|
|
199
|
+
exportBudget.oversized = 0;
|
|
200
|
+
markSnapshotChanged();
|
|
201
|
+
};
|
|
202
|
+
var setInstanceLabel = (instanceId, label) => {
|
|
203
|
+
instanceLabels.set(instanceId, label);
|
|
204
|
+
markSnapshotChanged();
|
|
205
|
+
};
|
|
206
|
+
var getInstanceLabel = (instanceId) => instanceLabels.get(instanceId);
|
|
207
|
+
var registerConvergeStaticIr = (ir) => {
|
|
208
|
+
convergeStaticIrByDigest.set(ir.staticIrDigest, ir);
|
|
209
|
+
};
|
|
210
|
+
var devtoolsHubConvergeStaticIrCollector = {
|
|
211
|
+
register: registerConvergeStaticIr
|
|
212
|
+
};
|
|
213
|
+
var exportDevtoolsEvidencePackage = (options) => {
|
|
214
|
+
const protocolVersion = options?.protocolVersion ?? OBSERVABILITY_PROTOCOL_VERSION;
|
|
215
|
+
const runId = options?.runId ?? currentRunId;
|
|
216
|
+
const source = options?.source ?? { host: "unknown" };
|
|
217
|
+
const events = ringBuffer.map((payload, i) => ({
|
|
218
|
+
protocolVersion,
|
|
219
|
+
runId,
|
|
220
|
+
seq: ringBufferSeq[i] ?? i + 1,
|
|
221
|
+
timestamp: payload.timestamp,
|
|
222
|
+
type: "debug:event",
|
|
223
|
+
payload
|
|
224
|
+
}));
|
|
225
|
+
const isRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
226
|
+
const convergeDigests = /* @__PURE__ */ new Set();
|
|
227
|
+
let sawFullConverge = false;
|
|
228
|
+
for (const ref of ringBuffer) {
|
|
229
|
+
if (ref.kind !== "trait:converge") continue;
|
|
230
|
+
const meta = ref.meta;
|
|
231
|
+
if (!isRecord(meta)) continue;
|
|
232
|
+
const digest = meta.staticIrDigest;
|
|
233
|
+
if (typeof digest === "string" && digest.length > 0) {
|
|
234
|
+
convergeDigests.add(digest);
|
|
235
|
+
}
|
|
236
|
+
const dirty = meta.dirty;
|
|
237
|
+
if (isRecord(dirty) && typeof dirty.rootCount === "number") {
|
|
238
|
+
sawFullConverge = true;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
let summary;
|
|
242
|
+
if (sawFullConverge && convergeDigests.size > 0) {
|
|
243
|
+
const staticIrByDigest = {};
|
|
244
|
+
for (const digest of convergeDigests) {
|
|
245
|
+
const ir = convergeStaticIrByDigest.get(digest);
|
|
246
|
+
if (ir) {
|
|
247
|
+
staticIrByDigest[digest] = ir;
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
if (Object.keys(staticIrByDigest).length > 0) {
|
|
251
|
+
summary = { converge: { staticIrByDigest } };
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
return exportEvidencePackage({
|
|
255
|
+
protocolVersion,
|
|
256
|
+
runId,
|
|
257
|
+
source,
|
|
258
|
+
events,
|
|
259
|
+
summary
|
|
260
|
+
});
|
|
261
|
+
};
|
|
262
|
+
var devtoolsHubSink = {
|
|
263
|
+
record: (event) => Effect.gen(function* () {
|
|
264
|
+
const level = yield* FiberRef.get(currentDiagnosticsLevel);
|
|
265
|
+
let changed = false;
|
|
266
|
+
if (event.type === "trace:instanceLabel") {
|
|
267
|
+
const instanceId = event.instanceId;
|
|
268
|
+
const data = event.data;
|
|
269
|
+
const label = data && typeof data === "object" && "label" in data ? String(data.label) : void 0;
|
|
270
|
+
if (instanceId && label) {
|
|
271
|
+
instanceLabels.set(instanceId, label);
|
|
272
|
+
changed = true;
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
if (event.type === "module:init" || event.type === "module:destroy") {
|
|
276
|
+
const moduleId = event.moduleId ?? "unknown";
|
|
277
|
+
const runtimeLabel2 = event.runtimeLabel ?? "unknown";
|
|
278
|
+
const instanceId = event.instanceId;
|
|
279
|
+
const key = `${runtimeLabel2}::${moduleId}`;
|
|
280
|
+
const prev = instances.get(key) ?? 0;
|
|
281
|
+
if (event.type === "module:init") {
|
|
282
|
+
instances.set(key, prev + 1);
|
|
283
|
+
changed = true;
|
|
284
|
+
if (instanceId) {
|
|
285
|
+
const instanceKey = `${runtimeLabel2}::${moduleId}::${instanceId}`;
|
|
286
|
+
liveInstanceKeys.add(instanceKey);
|
|
287
|
+
if (latestStates.delete(instanceKey)) changed = true;
|
|
288
|
+
if (latestTraitSummaries.delete(instanceKey)) changed = true;
|
|
289
|
+
}
|
|
290
|
+
} else {
|
|
291
|
+
const next = prev - 1;
|
|
292
|
+
if (next <= 0) {
|
|
293
|
+
if (instances.delete(key)) changed = true;
|
|
294
|
+
} else {
|
|
295
|
+
instances.set(key, next);
|
|
296
|
+
changed = true;
|
|
297
|
+
}
|
|
298
|
+
if (instanceId) {
|
|
299
|
+
const instanceKey = `${runtimeLabel2}::${moduleId}::${instanceId}`;
|
|
300
|
+
liveInstanceKeys.delete(instanceKey);
|
|
301
|
+
if (latestStates.delete(instanceKey)) changed = true;
|
|
302
|
+
if (latestTraitSummaries.delete(instanceKey)) changed = true;
|
|
303
|
+
if (instanceLabels.delete(instanceId)) changed = true;
|
|
304
|
+
changed = true;
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
let exportBudgetChanged = false;
|
|
309
|
+
const ref = toRuntimeDebugEventRef(event, {
|
|
310
|
+
diagnosticsLevel: level,
|
|
311
|
+
resolveConvergeStaticIr: (staticIrDigest) => convergeStaticIrByDigest.get(staticIrDigest),
|
|
312
|
+
onMetaProjection: ({ stats }) => {
|
|
313
|
+
if (stats.dropped !== 0 || stats.oversized !== 0) {
|
|
314
|
+
exportBudgetChanged = true;
|
|
315
|
+
}
|
|
316
|
+
exportBudget.dropped += stats.dropped;
|
|
317
|
+
exportBudget.oversized += stats.oversized;
|
|
318
|
+
}
|
|
319
|
+
});
|
|
320
|
+
if (exportBudgetChanged) {
|
|
321
|
+
changed = true;
|
|
322
|
+
}
|
|
323
|
+
if (!ref) {
|
|
324
|
+
if (changed) {
|
|
325
|
+
markSnapshotChanged();
|
|
326
|
+
}
|
|
327
|
+
return;
|
|
328
|
+
}
|
|
329
|
+
if (ref.kind === "state" && ref.label === "state:update") {
|
|
330
|
+
const runtimeLabel2 = ref.runtimeLabel ?? "unknown";
|
|
331
|
+
const key = `${runtimeLabel2}::${ref.moduleId}::${ref.instanceId}`;
|
|
332
|
+
if (liveInstanceKeys.has(key)) {
|
|
333
|
+
if (ref.meta && typeof ref.meta === "object" && !Array.isArray(ref.meta)) {
|
|
334
|
+
const anyMeta = ref.meta;
|
|
335
|
+
if ("state" in anyMeta) {
|
|
336
|
+
latestStates.set(key, anyMeta.state);
|
|
337
|
+
changed = true;
|
|
338
|
+
}
|
|
339
|
+
if ("traitSummary" in anyMeta && anyMeta.traitSummary !== void 0) {
|
|
340
|
+
latestTraitSummaries.set(key, anyMeta.traitSummary);
|
|
341
|
+
changed = true;
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
if (bufferSize > 0) {
|
|
347
|
+
const seq = nextSeq++;
|
|
348
|
+
ringBuffer.push(ref);
|
|
349
|
+
ringBufferSeq.push(seq);
|
|
350
|
+
trimRingBufferIfNeeded();
|
|
351
|
+
changed = true;
|
|
352
|
+
}
|
|
353
|
+
if (changed) {
|
|
354
|
+
markSnapshotChanged();
|
|
355
|
+
}
|
|
356
|
+
})
|
|
357
|
+
};
|
|
358
|
+
|
|
359
|
+
// src/Debug.ts
|
|
360
|
+
var toRuntimeDebugEventRef2 = toRuntimeDebugEventRef;
|
|
361
|
+
var internal = {
|
|
362
|
+
currentDebugSinks,
|
|
363
|
+
currentRuntimeLabel,
|
|
364
|
+
currentDiagnosticsLevel,
|
|
365
|
+
currentTraitConvergeDiagnosticsSampling,
|
|
366
|
+
toRuntimeDebugEventRef
|
|
367
|
+
};
|
|
368
|
+
var getDevtoolsSnapshot2 = getDevtoolsSnapshot;
|
|
369
|
+
var getDevtoolsSnapshotToken2 = getDevtoolsSnapshotToken;
|
|
370
|
+
var subscribeDevtoolsSnapshot2 = subscribeDevtoolsSnapshot;
|
|
371
|
+
var clearDevtoolsEvents2 = clearDevtoolsEvents;
|
|
372
|
+
var getDevtoolsRunId2 = getDevtoolsRunId;
|
|
373
|
+
var setDevtoolsRunId2 = setDevtoolsRunId;
|
|
374
|
+
var startDevtoolsRun2 = startDevtoolsRun;
|
|
375
|
+
var setInstanceLabel2 = setInstanceLabel;
|
|
376
|
+
var getInstanceLabel2 = getInstanceLabel;
|
|
377
|
+
var exportEvidencePackage2 = (options) => exportDevtoolsEvidencePackage(options);
|
|
378
|
+
var diagnosticsLevel = (level) => Layer.fiberRefLocallyScopedWith(currentDiagnosticsLevel, () => level);
|
|
379
|
+
var traitConvergeDiagnosticsSampling2 = (config) => traitConvergeDiagnosticsSampling(config);
|
|
380
|
+
var isDevtoolsEnabled2 = isDevtoolsEnabled;
|
|
381
|
+
var makeModuleRuntimeCounterSink = () => {
|
|
382
|
+
const counts = /* @__PURE__ */ new Map();
|
|
383
|
+
const sink = {
|
|
384
|
+
record: (event) => Effect2.sync(() => {
|
|
385
|
+
if (event.type === "module:init") {
|
|
386
|
+
const moduleId = event.moduleId ?? "unknown";
|
|
387
|
+
const runtimeLabel2 = "runtimeLabel" in event && event.runtimeLabel ? event.runtimeLabel : "unknown";
|
|
388
|
+
const key = `${runtimeLabel2}::${moduleId}`;
|
|
389
|
+
const prev = counts.get(key) ?? 0;
|
|
390
|
+
counts.set(key, prev + 1);
|
|
391
|
+
return;
|
|
392
|
+
}
|
|
393
|
+
if (event.type === "module:destroy") {
|
|
394
|
+
const moduleId = event.moduleId ?? "unknown";
|
|
395
|
+
const runtimeLabel2 = "runtimeLabel" in event && event.runtimeLabel ? event.runtimeLabel : "unknown";
|
|
396
|
+
const key = `${runtimeLabel2}::${moduleId}`;
|
|
397
|
+
const prev = counts.get(key) ?? 0;
|
|
398
|
+
const next = prev - 1;
|
|
399
|
+
if (next <= 0) {
|
|
400
|
+
counts.delete(key);
|
|
401
|
+
} else {
|
|
402
|
+
counts.set(key, next);
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
})
|
|
406
|
+
};
|
|
407
|
+
const getSnapshot = () => new Map(counts);
|
|
408
|
+
return { sink, getSnapshot };
|
|
409
|
+
};
|
|
410
|
+
var makeRingBufferSink = (capacity = 1e3) => {
|
|
411
|
+
const buffer = [];
|
|
412
|
+
const sink = {
|
|
413
|
+
record: (event) => Effect2.sync(() => {
|
|
414
|
+
if (capacity <= 0) {
|
|
415
|
+
return;
|
|
416
|
+
}
|
|
417
|
+
if (buffer.length >= capacity) {
|
|
418
|
+
buffer.shift();
|
|
419
|
+
}
|
|
420
|
+
buffer.push(event);
|
|
421
|
+
})
|
|
422
|
+
};
|
|
423
|
+
const getSnapshot = () => buffer.slice();
|
|
424
|
+
const clear = () => {
|
|
425
|
+
buffer.length = 0;
|
|
426
|
+
};
|
|
427
|
+
return { sink, getSnapshot, clear };
|
|
428
|
+
};
|
|
429
|
+
var record2 = record;
|
|
430
|
+
var noopLayer2 = noopLayer;
|
|
431
|
+
var resolveMode = (mode) => {
|
|
432
|
+
if (mode && mode !== "auto") {
|
|
433
|
+
return mode;
|
|
434
|
+
}
|
|
435
|
+
const env = getNodeEnv();
|
|
436
|
+
return env === "production" ? "prod" : "dev";
|
|
437
|
+
};
|
|
438
|
+
var layer = (options) => {
|
|
439
|
+
const mode = resolveMode(options?.mode);
|
|
440
|
+
const diagnostics = options?.diagnosticsLevel;
|
|
441
|
+
const sinks = (() => {
|
|
442
|
+
switch (mode) {
|
|
443
|
+
case "off":
|
|
444
|
+
return noopLayer;
|
|
445
|
+
case "prod":
|
|
446
|
+
return errorOnlyLayer;
|
|
447
|
+
case "dev":
|
|
448
|
+
case "auto": {
|
|
449
|
+
return options?.devConsole === "diagnostic" ? browserDiagnosticConsoleLayer : browserConsoleLayer;
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
})();
|
|
453
|
+
return diagnostics ? Layer.mergeAll(sinks, diagnosticsLevel(diagnostics)) : sinks;
|
|
454
|
+
};
|
|
455
|
+
var withPrettyLogger = (base, options) => Layer.merge(
|
|
456
|
+
base,
|
|
457
|
+
Logger.replace(Logger.defaultLogger, Logger.prettyLogger(options))
|
|
458
|
+
);
|
|
459
|
+
var replace = (sinks) => Layer.locallyScoped(internal.currentDebugSinks, sinks);
|
|
460
|
+
var appendSinks = (sinks) => Layer.fiberRefLocallyScopedWith(currentDebugSinks, (current) => [
|
|
461
|
+
...current,
|
|
462
|
+
...sinks
|
|
463
|
+
]);
|
|
464
|
+
function devtoolsHubLayer(baseOrOptions, maybeOptions) {
|
|
465
|
+
const isLayerValue = (value) => typeof value === "object" && value !== null && "_op_layer" in value;
|
|
466
|
+
const hasBase = isLayerValue(baseOrOptions);
|
|
467
|
+
const base = hasBase ? baseOrOptions : Layer.empty;
|
|
468
|
+
const options = hasBase ? maybeOptions : baseOrOptions;
|
|
469
|
+
configureDevtoolsHub(options);
|
|
470
|
+
const append = appendSinks([devtoolsHubSink]);
|
|
471
|
+
const appendConvergeStaticIr = appendConvergeStaticIrCollectors([
|
|
472
|
+
devtoolsHubConvergeStaticIrCollector
|
|
473
|
+
]);
|
|
474
|
+
const enableExportableDiagnostics = diagnosticsLevel(options?.diagnosticsLevel ?? "light");
|
|
475
|
+
const convergeSamplingLayer = options?.traitConvergeDiagnosticsSampling ? traitConvergeDiagnosticsSampling2(options.traitConvergeDiagnosticsSampling) : Layer.empty;
|
|
476
|
+
return Layer.provideMerge(
|
|
477
|
+
Layer.mergeAll(append, enableExportableDiagnostics, convergeSamplingLayer, appendConvergeStaticIr),
|
|
478
|
+
base
|
|
479
|
+
);
|
|
480
|
+
}
|
|
481
|
+
var runtimeLabel = (label) => Layer.fiberRefLocallyScopedWith(internal.currentRuntimeLabel, () => label);
|
|
482
|
+
var getModuleTraits = (module) => {
|
|
483
|
+
const moduleTag = module.tag ? module.tag : module;
|
|
484
|
+
const program = getModuleTraitsProgram(moduleTag);
|
|
485
|
+
if (!program) {
|
|
486
|
+
return {};
|
|
487
|
+
}
|
|
488
|
+
return {
|
|
489
|
+
program,
|
|
490
|
+
graph: program.graph,
|
|
491
|
+
plan: program.plan
|
|
492
|
+
};
|
|
493
|
+
};
|
|
494
|
+
var getModuleTraitsById = (moduleId) => {
|
|
495
|
+
const program = getModuleProgramById(moduleId);
|
|
496
|
+
if (!program) {
|
|
497
|
+
return void 0;
|
|
498
|
+
}
|
|
499
|
+
return {
|
|
500
|
+
program,
|
|
501
|
+
graph: program.graph,
|
|
502
|
+
plan: program.plan
|
|
503
|
+
};
|
|
504
|
+
};
|
|
505
|
+
var getModuleTraitsSnapshot = (runtime) => {
|
|
506
|
+
try {
|
|
507
|
+
const internals = getRuntimeInternals(runtime);
|
|
508
|
+
return internals.traits.getModuleTraitsSnapshot();
|
|
509
|
+
} catch {
|
|
510
|
+
return void 0;
|
|
511
|
+
}
|
|
512
|
+
};
|
|
513
|
+
var getModuleFinalTraits = (runtime) => {
|
|
514
|
+
const snapshot = getModuleTraitsSnapshot(runtime);
|
|
515
|
+
if (!snapshot) return [];
|
|
516
|
+
return snapshot.traits.map((t) => ({
|
|
517
|
+
traitId: t.traitId,
|
|
518
|
+
name: t.name,
|
|
519
|
+
description: t.description,
|
|
520
|
+
provenance: snapshot.provenanceIndex[t.traitId]
|
|
521
|
+
}));
|
|
522
|
+
};
|
|
523
|
+
var isLayer = (value) => typeof value === "object" && value !== null && "_op_layer" in value;
|
|
524
|
+
function traceLayer(baseOrHandler, maybeOnTrace) {
|
|
525
|
+
const hasBase = isLayer(baseOrHandler);
|
|
526
|
+
const base = hasBase ? baseOrHandler : Layer.empty;
|
|
527
|
+
const onTrace = hasBase ? maybeOnTrace : baseOrHandler;
|
|
528
|
+
const traceSink = {
|
|
529
|
+
record: (event) => typeof event.type === "string" && event.type.startsWith("trace:") ? onTrace ? onTrace(event) : Effect2.logDebug({ traceEvent: event }) : Effect2.void
|
|
530
|
+
};
|
|
531
|
+
const appendTrace = Layer.fiberRefLocallyScopedWith(currentDebugSinks, (sinks) => [...sinks, traceSink]);
|
|
532
|
+
return Layer.provideMerge(appendTrace, base);
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
export {
|
|
536
|
+
toRuntimeDebugEventRef2 as toRuntimeDebugEventRef,
|
|
537
|
+
internal,
|
|
538
|
+
getDevtoolsSnapshot2 as getDevtoolsSnapshot,
|
|
539
|
+
getDevtoolsSnapshotToken2 as getDevtoolsSnapshotToken,
|
|
540
|
+
subscribeDevtoolsSnapshot2 as subscribeDevtoolsSnapshot,
|
|
541
|
+
clearDevtoolsEvents2 as clearDevtoolsEvents,
|
|
542
|
+
getDevtoolsRunId2 as getDevtoolsRunId,
|
|
543
|
+
setDevtoolsRunId2 as setDevtoolsRunId,
|
|
544
|
+
startDevtoolsRun2 as startDevtoolsRun,
|
|
545
|
+
setInstanceLabel2 as setInstanceLabel,
|
|
546
|
+
getInstanceLabel2 as getInstanceLabel,
|
|
547
|
+
exportEvidencePackage2 as exportEvidencePackage,
|
|
548
|
+
diagnosticsLevel,
|
|
549
|
+
traitConvergeDiagnosticsSampling2 as traitConvergeDiagnosticsSampling,
|
|
550
|
+
isDevtoolsEnabled2 as isDevtoolsEnabled,
|
|
551
|
+
makeModuleRuntimeCounterSink,
|
|
552
|
+
makeRingBufferSink,
|
|
553
|
+
record2 as record,
|
|
554
|
+
noopLayer2 as noopLayer,
|
|
555
|
+
layer,
|
|
556
|
+
withPrettyLogger,
|
|
557
|
+
replace,
|
|
558
|
+
appendSinks,
|
|
559
|
+
devtoolsHubLayer,
|
|
560
|
+
runtimeLabel,
|
|
561
|
+
getModuleTraits,
|
|
562
|
+
getModuleTraitsById,
|
|
563
|
+
getModuleTraitsSnapshot,
|
|
564
|
+
getModuleFinalTraits,
|
|
565
|
+
traceLayer,
|
|
566
|
+
Debug_exports
|
|
567
|
+
};
|
|
568
|
+
//# sourceMappingURL=chunk-W3TEWHLO.js.map
|