@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,581 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/TraitLifecycle.ts
|
|
21
|
+
var TraitLifecycle_exports = {};
|
|
22
|
+
__export(TraitLifecycle_exports, {
|
|
23
|
+
Ref: () => Ref3,
|
|
24
|
+
cleanup: () => cleanup2,
|
|
25
|
+
install: () => install2,
|
|
26
|
+
makeSourceWiring: () => makeSourceWiring2,
|
|
27
|
+
scopedExecute: () => scopedExecute2,
|
|
28
|
+
scopedValidate: () => scopedValidate2
|
|
29
|
+
});
|
|
30
|
+
module.exports = __toCommonJS(TraitLifecycle_exports);
|
|
31
|
+
|
|
32
|
+
// src/internal/trait-lifecycle/index.ts
|
|
33
|
+
var import_effect7 = require("effect");
|
|
34
|
+
|
|
35
|
+
// src/internal/runtime/core/TaskRunner.ts
|
|
36
|
+
var import_effect5 = require("effect");
|
|
37
|
+
|
|
38
|
+
// src/internal/runtime/core/DebugSink.ts
|
|
39
|
+
var import_effect3 = require("effect");
|
|
40
|
+
|
|
41
|
+
// src/internal/observability/jsonValue.ts
|
|
42
|
+
var defaultOptions = {
|
|
43
|
+
maxDepth: 6,
|
|
44
|
+
maxObjectKeys: 32,
|
|
45
|
+
maxArrayLength: 32,
|
|
46
|
+
maxStringLength: 256,
|
|
47
|
+
maxJsonBytes: 4 * 1024,
|
|
48
|
+
oversizedPreviewBytes: 256
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
// src/internal/runtime/core/errorSummary.ts
|
|
52
|
+
var import_effect = require("effect");
|
|
53
|
+
|
|
54
|
+
// src/internal/runtime/core/EffectOpCore.ts
|
|
55
|
+
var import_effect2 = require("effect");
|
|
56
|
+
var currentLinkId = import_effect2.FiberRef.unsafeMake(void 0);
|
|
57
|
+
var EffectOpMiddlewareTag = class extends import_effect2.Context.Tag("Logix/EffectOpMiddleware")() {
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
// src/internal/runtime/core/DebugSink.ts
|
|
61
|
+
var currentDebugSinks = import_effect3.FiberRef.unsafeMake([]);
|
|
62
|
+
var currentRuntimeLabel = import_effect3.FiberRef.unsafeMake(void 0);
|
|
63
|
+
var currentTxnId = import_effect3.FiberRef.unsafeMake(void 0);
|
|
64
|
+
var currentOpSeq = import_effect3.FiberRef.unsafeMake(void 0);
|
|
65
|
+
var currentDiagnosticsLevel = import_effect3.FiberRef.unsafeMake("off");
|
|
66
|
+
var currentTraitConvergeDiagnosticsSampling = import_effect3.FiberRef.unsafeMake({
|
|
67
|
+
sampleEveryN: 32,
|
|
68
|
+
topK: 3
|
|
69
|
+
});
|
|
70
|
+
var browserLifecycleSeen = /* @__PURE__ */ new Set();
|
|
71
|
+
var browserDiagnosticSeen = /* @__PURE__ */ new Set();
|
|
72
|
+
var lifecycleErrorLog = (event) => {
|
|
73
|
+
const moduleId = event.moduleId ?? "unknown";
|
|
74
|
+
const causePretty = (() => {
|
|
75
|
+
try {
|
|
76
|
+
return import_effect3.Cause.pretty(event.cause, {
|
|
77
|
+
renderErrorCause: true
|
|
78
|
+
});
|
|
79
|
+
} catch {
|
|
80
|
+
try {
|
|
81
|
+
return JSON.stringify(event.cause, null, 2);
|
|
82
|
+
} catch {
|
|
83
|
+
return String(event.cause);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
})();
|
|
87
|
+
const message = `[Logix][module=${moduleId}] lifecycle:error
|
|
88
|
+
${causePretty}`;
|
|
89
|
+
return import_effect3.Effect.logError(message).pipe(
|
|
90
|
+
import_effect3.Effect.annotateLogs({
|
|
91
|
+
"logix.moduleId": moduleId,
|
|
92
|
+
"logix.event": "lifecycle:error",
|
|
93
|
+
"logix.cause": causePretty
|
|
94
|
+
})
|
|
95
|
+
);
|
|
96
|
+
};
|
|
97
|
+
var diagnosticLog = (event) => {
|
|
98
|
+
const moduleId = event.moduleId ?? "unknown";
|
|
99
|
+
const header = `[Logix][module=${moduleId}] diagnostic(${event.severity})`;
|
|
100
|
+
const detail = `code=${event.code} message=${event.message}${event.actionTag ? ` action=${event.actionTag}` : ""}${event.hint ? `
|
|
101
|
+
hint: ${event.hint}` : ""}`;
|
|
102
|
+
const msg = `${header}
|
|
103
|
+
${detail}`;
|
|
104
|
+
const base = event.severity === "warning" ? import_effect3.Effect.logWarning(msg) : event.severity === "info" ? import_effect3.Effect.logInfo(msg) : import_effect3.Effect.logError(msg);
|
|
105
|
+
const annotations = {
|
|
106
|
+
"logix.moduleId": moduleId,
|
|
107
|
+
"logix.event": `diagnostic(${event.severity})`,
|
|
108
|
+
"logix.diagnostic.code": event.code,
|
|
109
|
+
"logix.diagnostic.message": event.message
|
|
110
|
+
};
|
|
111
|
+
if (event.hint) {
|
|
112
|
+
annotations["logix.diagnostic.hint"] = event.hint;
|
|
113
|
+
}
|
|
114
|
+
if (event.actionTag) {
|
|
115
|
+
annotations["logix.diagnostic.actionTag"] = event.actionTag;
|
|
116
|
+
}
|
|
117
|
+
return base.pipe(import_effect3.Effect.annotateLogs(annotations));
|
|
118
|
+
};
|
|
119
|
+
var noopLayer = import_effect3.Layer.locallyScoped(currentDebugSinks, []);
|
|
120
|
+
var errorOnlySink = {
|
|
121
|
+
record: (event) => event.type === "lifecycle:error" ? lifecycleErrorLog(event) : event.type === "diagnostic" && event.severity !== "info" ? diagnosticLog(event) : import_effect3.Effect.void
|
|
122
|
+
};
|
|
123
|
+
var errorOnlyLayer = import_effect3.Layer.locallyScoped(currentDebugSinks, [errorOnlySink]);
|
|
124
|
+
var consoleSink = {
|
|
125
|
+
record: (event) => event.type === "lifecycle:error" ? lifecycleErrorLog(event) : event.type === "diagnostic" ? diagnosticLog(event) : import_effect3.Effect.logDebug({ debugEvent: event })
|
|
126
|
+
};
|
|
127
|
+
var consoleLayer = import_effect3.Layer.locallyScoped(currentDebugSinks, [consoleSink]);
|
|
128
|
+
var isBrowser = typeof window !== "undefined" && typeof document !== "undefined";
|
|
129
|
+
var renderBrowserConsoleEvent = (event) => {
|
|
130
|
+
if (typeof event.type === "string" && event.type.startsWith("trace:")) {
|
|
131
|
+
const moduleId = event.moduleId ?? "unknown";
|
|
132
|
+
const type = event.type;
|
|
133
|
+
return import_effect3.Effect.sync(() => {
|
|
134
|
+
console.groupCollapsed(
|
|
135
|
+
"%c[Logix]%c trace %c" + moduleId + "%c " + String(type),
|
|
136
|
+
"color:#6b7280;font-weight:bold",
|
|
137
|
+
// tag
|
|
138
|
+
"color:#3b82f6",
|
|
139
|
+
// label
|
|
140
|
+
"color:#9ca3af",
|
|
141
|
+
// module id
|
|
142
|
+
"color:#6b7280"
|
|
143
|
+
// type
|
|
144
|
+
);
|
|
145
|
+
console.log(event);
|
|
146
|
+
console.groupEnd();
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
if (event.type === "lifecycle:error") {
|
|
150
|
+
const moduleId = event.moduleId ?? "unknown";
|
|
151
|
+
const causePretty = (() => {
|
|
152
|
+
try {
|
|
153
|
+
return import_effect3.Cause.pretty(event.cause, { renderErrorCause: true });
|
|
154
|
+
} catch {
|
|
155
|
+
try {
|
|
156
|
+
return JSON.stringify(event.cause, null, 2);
|
|
157
|
+
} catch {
|
|
158
|
+
return String(event.cause);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
})();
|
|
162
|
+
const key = `${moduleId}|${causePretty}`;
|
|
163
|
+
if (browserLifecycleSeen.has(key)) {
|
|
164
|
+
return import_effect3.Effect.void;
|
|
165
|
+
}
|
|
166
|
+
browserLifecycleSeen.add(key);
|
|
167
|
+
return import_effect3.Effect.sync(() => {
|
|
168
|
+
console.groupCollapsed(
|
|
169
|
+
"%c[Logix]%c lifecycle:error %c" + moduleId,
|
|
170
|
+
"color:#ef4444;font-weight:bold",
|
|
171
|
+
// tag
|
|
172
|
+
"color:#ef4444",
|
|
173
|
+
// label
|
|
174
|
+
"color:#9ca3af"
|
|
175
|
+
// module id
|
|
176
|
+
);
|
|
177
|
+
console.error(causePretty);
|
|
178
|
+
console.groupEnd();
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
if (event.type === "diagnostic") {
|
|
182
|
+
const moduleId = event.moduleId ?? "unknown";
|
|
183
|
+
const detail = `code=${event.code} message=${event.message}${event.actionTag ? ` action=${event.actionTag}` : ""}${event.hint ? `
|
|
184
|
+
hint: ${event.hint}` : ""}`;
|
|
185
|
+
const color = event.severity === "warning" ? "color:#d97706" : event.severity === "info" ? "color:#3b82f6" : "color:#ef4444";
|
|
186
|
+
const label = event.severity === "warning" ? "diagnostic(warning)" : event.severity === "info" ? "diagnostic(info)" : "diagnostic(error)";
|
|
187
|
+
const key = `${moduleId}|${event.code}|${event.message}`;
|
|
188
|
+
if (browserDiagnosticSeen.has(key)) {
|
|
189
|
+
return import_effect3.Effect.void;
|
|
190
|
+
}
|
|
191
|
+
browserDiagnosticSeen.add(key);
|
|
192
|
+
return import_effect3.Effect.sync(() => {
|
|
193
|
+
console.groupCollapsed(
|
|
194
|
+
"%c[Logix]%c " + label + "%c module=" + moduleId,
|
|
195
|
+
"color:#6b7280;font-weight:bold",
|
|
196
|
+
color,
|
|
197
|
+
"color:#9ca3af"
|
|
198
|
+
);
|
|
199
|
+
if (event.severity === "warning") {
|
|
200
|
+
console.warn(detail);
|
|
201
|
+
} else if (event.severity === "info") {
|
|
202
|
+
console.info(detail);
|
|
203
|
+
} else {
|
|
204
|
+
console.error(detail);
|
|
205
|
+
}
|
|
206
|
+
console.groupEnd();
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
return import_effect3.Effect.void;
|
|
210
|
+
};
|
|
211
|
+
var browserConsoleSink = {
|
|
212
|
+
record: (event) => {
|
|
213
|
+
if (!isBrowser) {
|
|
214
|
+
return event.type === "lifecycle:error" ? lifecycleErrorLog(event) : event.type === "diagnostic" ? diagnosticLog(event) : import_effect3.Effect.logDebug({ debugEvent: event });
|
|
215
|
+
}
|
|
216
|
+
return renderBrowserConsoleEvent(event);
|
|
217
|
+
}
|
|
218
|
+
};
|
|
219
|
+
var browserConsoleLayer = import_effect3.Layer.locallyScoped(currentDebugSinks, [browserConsoleSink]);
|
|
220
|
+
var browserDiagnosticConsoleSink = {
|
|
221
|
+
record: (event) => {
|
|
222
|
+
if (!isBrowser) {
|
|
223
|
+
return event.type === "lifecycle:error" ? lifecycleErrorLog(event) : event.type === "diagnostic" && event.severity !== "info" ? diagnosticLog(event) : import_effect3.Effect.void;
|
|
224
|
+
}
|
|
225
|
+
return event.type === "lifecycle:error" || event.type === "diagnostic" && event.severity !== "info" ? renderBrowserConsoleEvent(event) : import_effect3.Effect.void;
|
|
226
|
+
}
|
|
227
|
+
};
|
|
228
|
+
var browserDiagnosticConsoleLayer = import_effect3.Layer.locallyScoped(currentDebugSinks, [browserDiagnosticConsoleSink]);
|
|
229
|
+
var browserPrettyLoggerLayer = import_effect3.Logger.replace(
|
|
230
|
+
import_effect3.Logger.defaultLogger,
|
|
231
|
+
import_effect3.Logger.prettyLogger({ mode: "browser", colors: true })
|
|
232
|
+
);
|
|
233
|
+
|
|
234
|
+
// src/internal/runtime/core/env.ts
|
|
235
|
+
var import_effect4 = require("effect");
|
|
236
|
+
var getNodeEnv = () => {
|
|
237
|
+
try {
|
|
238
|
+
const env = globalThis?.process?.env;
|
|
239
|
+
return typeof env?.NODE_ENV === "string" ? env.NODE_ENV : void 0;
|
|
240
|
+
} catch {
|
|
241
|
+
return void 0;
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
var isDevEnv = () => getNodeEnv() !== "production";
|
|
245
|
+
var StateTransactionConfigTagImpl = class extends import_effect4.Context.Tag("@logixjs/core/StateTransactionRuntimeConfig")() {
|
|
246
|
+
};
|
|
247
|
+
var ReadQueryStrictGateConfigTagImpl = class extends import_effect4.Context.Tag("@logixjs/core/ReadQueryStrictGateRuntimeConfig")() {
|
|
248
|
+
};
|
|
249
|
+
var ReplayModeConfigTagImpl = class extends import_effect4.Context.Tag("@logixjs/core/ReplayModeConfig")() {
|
|
250
|
+
};
|
|
251
|
+
var StateTransactionOverridesTagImpl = class extends import_effect4.Context.Tag("@logixjs/core/StateTransactionOverrides")() {
|
|
252
|
+
};
|
|
253
|
+
var ConcurrencyPolicyTagImpl = class extends import_effect4.Context.Tag("@logixjs/core/ConcurrencyPolicy")() {
|
|
254
|
+
};
|
|
255
|
+
var ConcurrencyPolicyOverridesTagImpl = class extends import_effect4.Context.Tag("@logixjs/core/ConcurrencyPolicyOverrides")() {
|
|
256
|
+
};
|
|
257
|
+
|
|
258
|
+
// src/internal/runtime/core/TaskRunner.ts
|
|
259
|
+
var inSyncTransactionFiber = import_effect5.FiberRef.unsafeMake(false);
|
|
260
|
+
var forceSourceRefresh = import_effect5.FiberRef.unsafeMake(false);
|
|
261
|
+
|
|
262
|
+
// src/internal/runtime/core/ReplayLog.ts
|
|
263
|
+
var import_effect6 = require("effect");
|
|
264
|
+
var ReplayLog = class extends import_effect6.Context.Tag("@logixjs/core/ReplayLog")() {
|
|
265
|
+
};
|
|
266
|
+
var snapshot = import_effect6.Effect.gen(function* () {
|
|
267
|
+
const log = yield* ReplayLog;
|
|
268
|
+
return yield* log.snapshot;
|
|
269
|
+
});
|
|
270
|
+
var resetCursor = import_effect6.Effect.gen(function* () {
|
|
271
|
+
const log = yield* ReplayLog;
|
|
272
|
+
yield* log.resetCursor;
|
|
273
|
+
});
|
|
274
|
+
|
|
275
|
+
// src/internal/state-trait/rowid.ts
|
|
276
|
+
var parseSegments = (path) => {
|
|
277
|
+
if (!path) return [];
|
|
278
|
+
return path.split(".").map((seg) => /^[0-9]+$/.test(seg) ? Number(seg) : seg);
|
|
279
|
+
};
|
|
280
|
+
var unsetAtPathMutating = (draft, path) => {
|
|
281
|
+
if (!path) return;
|
|
282
|
+
const segments = parseSegments(path);
|
|
283
|
+
if (segments.length === 0) return;
|
|
284
|
+
let current = draft;
|
|
285
|
+
for (let i = 0; i < segments.length - 1; i++) {
|
|
286
|
+
const key = segments[i];
|
|
287
|
+
const next = current?.[key];
|
|
288
|
+
if (next == null || typeof next !== "object") {
|
|
289
|
+
return;
|
|
290
|
+
}
|
|
291
|
+
current = next;
|
|
292
|
+
}
|
|
293
|
+
const last = segments[segments.length - 1];
|
|
294
|
+
if (Array.isArray(current) && typeof last === "number") {
|
|
295
|
+
current[last] = void 0;
|
|
296
|
+
return;
|
|
297
|
+
}
|
|
298
|
+
if (current && typeof current === "object") {
|
|
299
|
+
delete current[last];
|
|
300
|
+
}
|
|
301
|
+
};
|
|
302
|
+
|
|
303
|
+
// src/internal/runtime/core/runtimeInternalsAccessor.ts
|
|
304
|
+
var BOUND_INTERNALS = /* @__PURE__ */ Symbol.for("@logixjs/core/boundInternals");
|
|
305
|
+
var MODULE_TRAITS_PROGRAM = /* @__PURE__ */ Symbol.for("@logixjs/core/moduleTraitsProgram");
|
|
306
|
+
var getModuleTraitsProgram = (module2) => {
|
|
307
|
+
if (!module2) return void 0;
|
|
308
|
+
if (typeof module2 !== "object" && typeof module2 !== "function") return void 0;
|
|
309
|
+
return module2[MODULE_TRAITS_PROGRAM];
|
|
310
|
+
};
|
|
311
|
+
var getBoundInternals = (bound) => {
|
|
312
|
+
const internals = bound[BOUND_INTERNALS];
|
|
313
|
+
if (!internals) {
|
|
314
|
+
const msg = isDevEnv() ? [
|
|
315
|
+
"[MissingBoundInternals] Bound internals not installed on Bound API instance.",
|
|
316
|
+
"fix:",
|
|
317
|
+
"- Ensure BoundApiRuntime attaches internals (020 foundation).",
|
|
318
|
+
"- If you created a mock bound for tests, attach internals or avoid calling internal-only APIs."
|
|
319
|
+
].join("\n") : "Bound internals not installed";
|
|
320
|
+
throw new Error(msg);
|
|
321
|
+
}
|
|
322
|
+
return internals;
|
|
323
|
+
};
|
|
324
|
+
|
|
325
|
+
// src/internal/trait-lifecycle/index.ts
|
|
326
|
+
var Ref2 = {
|
|
327
|
+
field: (path) => ({ kind: "field", path }),
|
|
328
|
+
list: (path, listIndexPath) => ({
|
|
329
|
+
kind: "list",
|
|
330
|
+
path,
|
|
331
|
+
listIndexPath
|
|
332
|
+
}),
|
|
333
|
+
item: (path, index, options) => ({
|
|
334
|
+
kind: "item",
|
|
335
|
+
path,
|
|
336
|
+
index,
|
|
337
|
+
listIndexPath: options?.listIndexPath,
|
|
338
|
+
field: options?.field
|
|
339
|
+
}),
|
|
340
|
+
/**
|
|
341
|
+
* fromValuePath:
|
|
342
|
+
* - Parse a valuePath (e.g. "items.0.warehouseId") into a FieldRef.
|
|
343
|
+
* - Supports a single index (required) and multi-level indices via listIndexPath (optional but recommended).
|
|
344
|
+
*
|
|
345
|
+
* Conventions:
|
|
346
|
+
* - If numeric segments are present, return an item ref (the last index becomes item.index; preceding indices go into listIndexPath).
|
|
347
|
+
* - If no numeric segments are present:
|
|
348
|
+
* - "items[]" (pattern list root) returns a list ref.
|
|
349
|
+
* - Otherwise return a field ref (including pattern fields like "items[].x").
|
|
350
|
+
* - "$root" / empty string returns the root ref.
|
|
351
|
+
*/
|
|
352
|
+
fromValuePath: (valuePath) => {
|
|
353
|
+
const raw = typeof valuePath === "string" ? valuePath.trim() : "";
|
|
354
|
+
if (!raw || raw === "$root") return Ref2.root();
|
|
355
|
+
const segments = raw.split(".").filter(Boolean);
|
|
356
|
+
if (segments.length === 0) return Ref2.root();
|
|
357
|
+
const isIndex = (seg) => /^[0-9]+$/.test(seg);
|
|
358
|
+
const stripPattern = (seg) => seg.endsWith("[]") ? seg.slice(0, -2) : seg;
|
|
359
|
+
const indexPositions = [];
|
|
360
|
+
for (let i = 0; i < segments.length; i++) {
|
|
361
|
+
const seg = segments[i];
|
|
362
|
+
if (!isIndex(seg)) continue;
|
|
363
|
+
const index = Number(seg);
|
|
364
|
+
if (!Number.isFinite(index) || index < 0) return Ref2.field(raw);
|
|
365
|
+
indexPositions.push({ pos: i, index });
|
|
366
|
+
}
|
|
367
|
+
if (indexPositions.length > 0) {
|
|
368
|
+
const last = indexPositions[indexPositions.length - 1];
|
|
369
|
+
const listIndexPath = indexPositions.slice(0, -1).map((p) => p.index);
|
|
370
|
+
const listPath = segments.slice(0, last.pos).filter((seg) => !isIndex(seg)).map(stripPattern).join(".");
|
|
371
|
+
if (!listPath) return Ref2.field(raw);
|
|
372
|
+
const fieldRest = segments.slice(last.pos + 1).map(stripPattern).join(".");
|
|
373
|
+
return Ref2.item(listPath, last.index, {
|
|
374
|
+
listIndexPath: listIndexPath.length > 0 ? listIndexPath : void 0,
|
|
375
|
+
field: fieldRest ? fieldRest : void 0
|
|
376
|
+
});
|
|
377
|
+
}
|
|
378
|
+
if (segments.some((s) => s.includes("[]"))) {
|
|
379
|
+
const last = segments[segments.length - 1];
|
|
380
|
+
if (last.endsWith("[]")) {
|
|
381
|
+
return Ref2.list(segments.map(stripPattern).join("."));
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
return Ref2.field(raw);
|
|
385
|
+
},
|
|
386
|
+
root: () => ({ kind: "root" })
|
|
387
|
+
};
|
|
388
|
+
var scopedValidate = (bound, request) => import_effect7.Effect.gen(function* () {
|
|
389
|
+
let internals;
|
|
390
|
+
try {
|
|
391
|
+
internals = getBoundInternals(bound);
|
|
392
|
+
} catch {
|
|
393
|
+
return;
|
|
394
|
+
}
|
|
395
|
+
const enqueue = internals.traits.enqueueStateTraitValidateRequest;
|
|
396
|
+
if (!enqueue) return;
|
|
397
|
+
const toTarget = (ref) => {
|
|
398
|
+
if (ref.kind === "root") return { kind: "root" };
|
|
399
|
+
if (ref.kind === "field") return { kind: "field", path: ref.path };
|
|
400
|
+
if (ref.kind === "list") {
|
|
401
|
+
return {
|
|
402
|
+
kind: "list",
|
|
403
|
+
path: ref.path,
|
|
404
|
+
...ref.listIndexPath ? { listIndexPath: ref.listIndexPath } : {}
|
|
405
|
+
};
|
|
406
|
+
}
|
|
407
|
+
return {
|
|
408
|
+
kind: "item",
|
|
409
|
+
path: ref.path,
|
|
410
|
+
index: ref.index,
|
|
411
|
+
...ref.listIndexPath ? { listIndexPath: ref.listIndexPath } : {},
|
|
412
|
+
field: ref.field
|
|
413
|
+
};
|
|
414
|
+
};
|
|
415
|
+
const internal = {
|
|
416
|
+
mode: request.mode,
|
|
417
|
+
target: toTarget(request.target)
|
|
418
|
+
};
|
|
419
|
+
const inTxn = yield* import_effect7.FiberRef.get(inSyncTransactionFiber);
|
|
420
|
+
if (inTxn) {
|
|
421
|
+
enqueue(internal);
|
|
422
|
+
return;
|
|
423
|
+
}
|
|
424
|
+
yield* internals.txn.runWithStateTransaction(
|
|
425
|
+
{ kind: "trait", name: "scopedValidate", details: request },
|
|
426
|
+
() => import_effect7.Effect.sync(() => {
|
|
427
|
+
enqueue(internal);
|
|
428
|
+
})
|
|
429
|
+
);
|
|
430
|
+
});
|
|
431
|
+
var scopedExecute = (bound, request) => import_effect7.Effect.gen(function* () {
|
|
432
|
+
if (request.kind === "source:refresh") {
|
|
433
|
+
const toFieldPath = (ref) => {
|
|
434
|
+
if (ref.kind === "root") return void 0;
|
|
435
|
+
if (ref.kind === "field" || ref.kind === "list") return ref.path;
|
|
436
|
+
const base = `${ref.path}[]`;
|
|
437
|
+
return ref.field ? `${base}.${ref.field}` : base;
|
|
438
|
+
};
|
|
439
|
+
const fieldPath = toFieldPath(request.target);
|
|
440
|
+
if (!fieldPath) {
|
|
441
|
+
return;
|
|
442
|
+
}
|
|
443
|
+
yield* bound.traits.source.refresh(fieldPath);
|
|
444
|
+
return;
|
|
445
|
+
}
|
|
446
|
+
if (request.kind !== "query:invalidate") {
|
|
447
|
+
return;
|
|
448
|
+
}
|
|
449
|
+
const replayLogOpt = yield* import_effect7.Effect.serviceOption(ReplayLog);
|
|
450
|
+
if (import_effect7.Option.isNone(replayLogOpt)) {
|
|
451
|
+
return;
|
|
452
|
+
}
|
|
453
|
+
let moduleId;
|
|
454
|
+
let instanceId;
|
|
455
|
+
try {
|
|
456
|
+
const internals = getBoundInternals(bound);
|
|
457
|
+
moduleId = internals.moduleId;
|
|
458
|
+
instanceId = internals.instanceId;
|
|
459
|
+
} catch {
|
|
460
|
+
moduleId = void 0;
|
|
461
|
+
instanceId = void 0;
|
|
462
|
+
}
|
|
463
|
+
yield* replayLogOpt.value.record({
|
|
464
|
+
_tag: "InvalidateRequest",
|
|
465
|
+
timestamp: Date.now(),
|
|
466
|
+
moduleId,
|
|
467
|
+
instanceId,
|
|
468
|
+
kind: "query",
|
|
469
|
+
target: "query",
|
|
470
|
+
meta: request.request
|
|
471
|
+
});
|
|
472
|
+
});
|
|
473
|
+
var cleanup = (bound, request) => import_effect7.Effect.gen(function* () {
|
|
474
|
+
const apply = () => bound.state.mutate((draft) => {
|
|
475
|
+
const clearAt = (root, path) => {
|
|
476
|
+
if (!path) return;
|
|
477
|
+
unsetAtPathMutating(draft, `${root}.${path}`);
|
|
478
|
+
};
|
|
479
|
+
if (request.kind === "field:unregister") {
|
|
480
|
+
const target = request.target;
|
|
481
|
+
if (target.kind !== "field") return;
|
|
482
|
+
clearAt("errors", target.path);
|
|
483
|
+
clearAt("ui", target.path);
|
|
484
|
+
return;
|
|
485
|
+
}
|
|
486
|
+
if (request.kind === "list:item:remove") {
|
|
487
|
+
const target = request.target;
|
|
488
|
+
if (target.kind !== "item") return;
|
|
489
|
+
const base = `${target.path}.${target.index}`;
|
|
490
|
+
const path = target.field ? `${base}.${target.field}` : base;
|
|
491
|
+
clearAt("errors", path);
|
|
492
|
+
clearAt("ui", path);
|
|
493
|
+
return;
|
|
494
|
+
}
|
|
495
|
+
if (request.kind === "list:reorder") {
|
|
496
|
+
return;
|
|
497
|
+
}
|
|
498
|
+
});
|
|
499
|
+
const inTxn = yield* import_effect7.FiberRef.get(inSyncTransactionFiber);
|
|
500
|
+
if (inTxn) {
|
|
501
|
+
return yield* apply();
|
|
502
|
+
}
|
|
503
|
+
let runWithTxn;
|
|
504
|
+
try {
|
|
505
|
+
const internals = getBoundInternals(bound);
|
|
506
|
+
runWithTxn = (origin, body) => internals.txn.runWithStateTransaction(origin, body);
|
|
507
|
+
} catch {
|
|
508
|
+
runWithTxn = void 0;
|
|
509
|
+
}
|
|
510
|
+
if (!runWithTxn) {
|
|
511
|
+
return yield* apply();
|
|
512
|
+
}
|
|
513
|
+
return yield* runWithTxn({ kind: "trait", name: "cleanup", details: request }, apply);
|
|
514
|
+
});
|
|
515
|
+
var isAuxRootPath = (path) => path === "errors" || path === "ui" || path.startsWith("errors.") || path.startsWith("ui.");
|
|
516
|
+
var toPatternPath = (path) => {
|
|
517
|
+
if (!path) return path;
|
|
518
|
+
const segments = path.split(".").filter(Boolean);
|
|
519
|
+
return segments.map((seg) => /^[0-9]+$/.test(seg) ? "[]" : seg).join(".").replace(/\.\[\]/g, "[]");
|
|
520
|
+
};
|
|
521
|
+
var isDepAffectedByChange = (dep, changed) => {
|
|
522
|
+
if (!dep || !changed) return false;
|
|
523
|
+
if (dep === changed) return true;
|
|
524
|
+
if (changed.startsWith(`${dep}.`)) return true;
|
|
525
|
+
if (changed.startsWith(`${dep}[]`)) return true;
|
|
526
|
+
if (dep.startsWith(`${changed}[]`)) return true;
|
|
527
|
+
return false;
|
|
528
|
+
};
|
|
529
|
+
var makeSourceWiring = (bound, module2) => {
|
|
530
|
+
const program = getModuleTraitsProgram(module2);
|
|
531
|
+
const sources = program?.entries?.filter((e) => e && e.kind === "source") ?? [];
|
|
532
|
+
const sourceOnMount = sources.filter(
|
|
533
|
+
(e) => Array.isArray(e?.meta?.triggers) ? e.meta.triggers.includes("onMount") : false
|
|
534
|
+
);
|
|
535
|
+
const sourceOnKeyChange = sources.filter(
|
|
536
|
+
(e) => Array.isArray(e?.meta?.triggers) ? e.meta.triggers.includes("onKeyChange") : false
|
|
537
|
+
);
|
|
538
|
+
const setup = import_effect7.Effect.sync(() => {
|
|
539
|
+
if (sourceOnMount.length === 0) return;
|
|
540
|
+
bound.lifecycle.onStart(
|
|
541
|
+
import_effect7.Effect.forEach(sourceOnMount, (entry) => bound.traits.source.refresh(entry.fieldPath), {
|
|
542
|
+
concurrency: "unbounded"
|
|
543
|
+
}).pipe(import_effect7.Effect.asVoid)
|
|
544
|
+
);
|
|
545
|
+
});
|
|
546
|
+
const refreshOnKeyChange = (changedPath) => import_effect7.Effect.gen(function* () {
|
|
547
|
+
if (!changedPath || isAuxRootPath(changedPath)) return;
|
|
548
|
+
if (sourceOnKeyChange.length === 0) return;
|
|
549
|
+
const changedPattern = toPatternPath(changedPath);
|
|
550
|
+
yield* import_effect7.Effect.forEach(
|
|
551
|
+
sourceOnKeyChange,
|
|
552
|
+
(entry) => {
|
|
553
|
+
const deps = entry?.meta?.deps ?? [];
|
|
554
|
+
const affected = deps.some((dep) => isDepAffectedByChange(dep, changedPattern));
|
|
555
|
+
if (!affected) return import_effect7.Effect.void;
|
|
556
|
+
return bound.traits.source.refresh(entry.fieldPath);
|
|
557
|
+
},
|
|
558
|
+
{ concurrency: "unbounded" }
|
|
559
|
+
);
|
|
560
|
+
}).pipe(import_effect7.Effect.asVoid);
|
|
561
|
+
return { setup, refreshOnKeyChange };
|
|
562
|
+
};
|
|
563
|
+
var install = (_bound) => import_effect7.Effect.void;
|
|
564
|
+
|
|
565
|
+
// src/TraitLifecycle.ts
|
|
566
|
+
var Ref3 = Ref2;
|
|
567
|
+
var scopedValidate2 = (bound, request) => scopedValidate(bound, request);
|
|
568
|
+
var scopedExecute2 = (bound, request) => scopedExecute(bound, request);
|
|
569
|
+
var cleanup2 = (bound, request) => cleanup(bound, request);
|
|
570
|
+
var makeSourceWiring2 = (bound, module2) => makeSourceWiring(bound, module2);
|
|
571
|
+
var install2 = (bound) => install(bound);
|
|
572
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
573
|
+
0 && (module.exports = {
|
|
574
|
+
Ref,
|
|
575
|
+
cleanup,
|
|
576
|
+
install,
|
|
577
|
+
makeSourceWiring,
|
|
578
|
+
scopedExecute,
|
|
579
|
+
scopedValidate
|
|
580
|
+
});
|
|
581
|
+
//# sourceMappingURL=TraitLifecycle.cjs.map
|