@logixjs/core 0.0.1 → 1.0.0
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/LICENSE +201 -0
- package/dist/{Action-mqVvtEHt.d.ts → Action-DYl88bwj.d.ts} +1 -1
- package/dist/{Action-BkRHy2vg.d.cts → Action-DkxsI_DK.d.cts} +1 -1
- package/dist/Action.cjs.map +1 -1
- package/dist/Action.d.cts +1 -1
- package/dist/Action.d.ts +1 -1
- package/dist/Action.js +2 -2
- package/dist/{Actions-AsQ07yTP.d.cts → Actions-Dicm7jdc.d.cts} +2 -2
- package/dist/{Actions-AsQ07yTP.d.ts → Actions-Dicm7jdc.d.ts} +2 -2
- package/dist/Actions.cjs.map +1 -1
- package/dist/Actions.d.cts +1 -1
- package/dist/Actions.d.ts +1 -1
- package/dist/Actions.js +1 -1
- package/dist/{Bound-BN1DQ_lM.d.ts → Bound-1OJLzVIS.d.ts} +2 -2
- package/dist/{Bound-BPIfH9SS.d.cts → Bound-BMLrtQ1V.d.cts} +2 -2
- package/dist/Bound.cjs +1737 -399
- package/dist/Bound.cjs.map +1 -1
- package/dist/Bound.d.cts +5 -5
- package/dist/Bound.d.ts +5 -5
- package/dist/Bound.js +19 -17
- package/dist/{Debug-B5q5Bkzx.d.ts → Debug-DKrWP5H1.d.ts} +40 -22
- package/dist/{Debug-Bq8Sqjcr.d.cts → Debug-hIT44XsY.d.cts} +40 -22
- package/dist/Debug.cjs +1348 -318
- package/dist/Debug.cjs.map +1 -1
- package/dist/Debug.d.cts +12 -11
- package/dist/Debug.d.ts +12 -11
- package/dist/Debug.js +20 -11
- package/dist/EffectOp.cjs +15 -6
- package/dist/EffectOp.cjs.map +1 -1
- package/dist/EffectOp.js +3 -3
- package/dist/Env.cjs +772 -6
- package/dist/Env.cjs.map +1 -1
- package/dist/Env.js +5 -2
- package/dist/ExternalStore-DqJKKRJ4.d.ts +61 -0
- package/dist/ExternalStore-JC-gAgEI.d.cts +61 -0
- package/dist/ExternalStore.cjs +774 -0
- package/dist/ExternalStore.cjs.map +1 -0
- package/dist/ExternalStore.d.cts +8 -0
- package/dist/ExternalStore.d.ts +8 -0
- package/dist/ExternalStore.js +19 -0
- package/dist/ExternalStore.js.map +1 -0
- package/dist/{Flow-BhpjE22E.d.ts → Flow-CZmXRDqp.d.cts} +13 -4
- package/dist/{Flow-1fZT8MpX.d.cts → Flow-DIVDxz7R.d.ts} +13 -4
- package/dist/Flow.cjs +765 -148
- package/dist/Flow.cjs.map +1 -1
- package/dist/Flow.d.cts +6 -6
- package/dist/Flow.d.ts +6 -6
- package/dist/Flow.js +9 -8
- package/dist/{Handle-D_cLW1Z3.d.ts → Handle-Bo6cAFut.d.ts} +1 -1
- package/dist/{Handle-D8D1zPb_.d.cts → Handle-CfDvSqN7.d.cts} +1 -1
- package/dist/Handle.d.cts +5 -5
- package/dist/Handle.d.ts +5 -5
- package/dist/{Kernel-8kC-jOda.d.cts → Kernel-CuXBF9S_.d.cts} +16 -7
- package/dist/{Kernel-CnGE1Fyk.d.ts → Kernel-D9guNwRL.d.ts} +16 -7
- package/dist/Kernel.cjs +814 -26
- package/dist/Kernel.cjs.map +1 -1
- package/dist/Kernel.d.cts +13 -12
- package/dist/Kernel.d.ts +13 -12
- package/dist/Kernel.js +7 -4
- package/dist/{Link-Db7975nU.d.ts → Link-CUM0yUCH.d.ts} +10 -3
- package/dist/{Link-fX8x1eCK.d.cts → Link-NAfR6uGD.d.cts} +10 -3
- package/dist/Link.cjs +1294 -121
- package/dist/Link.cjs.map +1 -1
- package/dist/Link.d.cts +5 -5
- package/dist/Link.d.ts +5 -5
- package/dist/Link.js +37 -29
- package/dist/{Logic-DRh4sDZj.d.cts → Logic-09VQpIj3.d.cts} +7 -4
- package/dist/{Logic-BRjEMr-W.d.ts → Logic-DKg7ghGy.d.ts} +7 -4
- package/dist/Logic.cjs +2 -1
- package/dist/Logic.cjs.map +1 -1
- package/dist/Logic.d.cts +5 -5
- package/dist/Logic.d.ts +5 -5
- package/dist/Logic.js +1 -1
- package/dist/{MatchBuilder-CJk5oCkR.d.cts → MatchBuilder-CsW5jgrL.d.ts} +1 -1
- package/dist/{MatchBuilder-0QOc-nlU.d.ts → MatchBuilder-Dksk07F4.d.cts} +1 -1
- package/dist/MatchBuilder.cjs +2 -2
- package/dist/MatchBuilder.cjs.map +1 -1
- package/dist/MatchBuilder.d.cts +6 -6
- package/dist/MatchBuilder.d.ts +6 -6
- package/dist/MatchBuilder.js +2 -2
- package/dist/Middleware-D8tUDLv_.d.cts +100 -0
- package/dist/Middleware-DS7CbTTN.d.ts +100 -0
- package/dist/Middleware.cjs +678 -58
- package/dist/Middleware.cjs.map +1 -1
- package/dist/Middleware.d.cts +2 -86
- package/dist/Middleware.d.ts +2 -86
- package/dist/Middleware.js +15 -12
- package/dist/{Module-DnzluX2J.d.ts → Module-B_Cntyms.d.ts} +54 -25
- package/dist/{Module-B_0xRDMR.d.cts → Module-CmNOVXzf.d.cts} +54 -25
- package/dist/Module.cjs +9331 -3317
- package/dist/Module.cjs.map +1 -1
- package/dist/Module.d.cts +7 -6
- package/dist/Module.d.ts +7 -6
- package/dist/Module.js +39 -31
- package/dist/ModuleTag-CGho_InD.d.ts +113 -0
- package/dist/ModuleTag-CITb8L_G.d.cts +113 -0
- package/dist/ModuleTag.cjs +7248 -2847
- package/dist/ModuleTag.cjs.map +1 -1
- package/dist/ModuleTag.d.cts +6 -6
- package/dist/ModuleTag.d.ts +6 -6
- package/dist/ModuleTag.js +35 -29
- package/dist/Observability-Bdhnx2Dv.d.ts +385 -0
- package/dist/Observability-DXGAFBIT.d.cts +385 -0
- package/dist/Observability.cjs +5093 -1556
- package/dist/Observability.cjs.map +1 -1
- package/dist/Observability.d.cts +6 -7
- package/dist/Observability.d.ts +6 -7
- package/dist/Observability.js +28 -23
- package/dist/{Platform-CHX8o-U4.d.ts → Platform-B4s8tg6C.d.cts} +4 -5
- package/dist/{Platform-C49Pv956.d.cts → Platform-BV_0MW7g.d.cts} +5 -2
- package/dist/{Platform-C49Pv956.d.ts → Platform-BV_0MW7g.d.ts} +5 -2
- package/dist/{Platform-CVlv0xLQ.d.cts → Platform-W0Mefy_e.d.ts} +4 -5
- package/dist/Platform.cjs +2 -1
- package/dist/Platform.cjs.map +1 -1
- package/dist/Platform.d.cts +2 -3
- package/dist/Platform.d.ts +2 -3
- package/dist/Platform.js +2 -2
- package/dist/{Process-CM9xbMdP.d.ts → Process-CO8G7HO9.d.cts} +30 -5
- package/dist/{Process-mL8fHDSB.d.cts → Process-Cyf6VNDR.d.ts} +30 -5
- package/dist/Process.cjs +1288 -120
- package/dist/Process.cjs.map +1 -1
- package/dist/Process.d.cts +6 -6
- package/dist/Process.d.ts +6 -6
- package/dist/Process.js +34 -26
- package/dist/ReadQuery-C_or5nLC.d.ts +128 -0
- package/dist/ReadQuery-DXLzCE0E.d.cts +614 -0
- package/dist/ReadQuery-DXLzCE0E.d.ts +614 -0
- package/dist/ReadQuery-Yve1lmUo.d.cts +128 -0
- package/dist/ReadQuery.cjs +290 -5
- package/dist/ReadQuery.cjs.map +1 -1
- package/dist/ReadQuery.d.cts +3 -2
- package/dist/ReadQuery.d.ts +3 -2
- package/dist/ReadQuery.js +23 -5
- package/dist/{Reflection-CQnKwPXj.d.ts → Reflection-B2Xi1e4Q.d.ts} +89 -7
- package/dist/{Reflection-Kabo1mlU.d.cts → Reflection-DNB4V4_e.d.cts} +89 -7
- package/dist/Reflection.cjs +3227 -1617
- package/dist/Reflection.cjs.map +1 -1
- package/dist/Reflection.d.cts +17 -15
- package/dist/Reflection.d.ts +17 -15
- package/dist/Reflection.js +33 -25
- package/dist/{Resource-Dy1xD_DG.d.cts → Resource-pKvQQ4x5.d.cts} +3 -3
- package/dist/{Resource-Dy1xD_DG.d.ts → Resource-pKvQQ4x5.d.ts} +3 -3
- package/dist/Resource.cjs +781 -15
- package/dist/Resource.cjs.map +1 -1
- package/dist/Resource.d.cts +1 -1
- package/dist/Resource.d.ts +1 -1
- package/dist/Resource.js +6 -3
- package/dist/{Root-7ADUMk4t.d.cts → Root-CCVuFHB6.d.cts} +3 -3
- package/dist/{Root-7ADUMk4t.d.ts → Root-CCVuFHB6.d.ts} +3 -3
- package/dist/Root.cjs +786 -20
- package/dist/Root.cjs.map +1 -1
- package/dist/Root.d.cts +2 -2
- package/dist/Root.d.ts +2 -2
- package/dist/Root.js +7 -3
- package/dist/{Runtime-CtyzZG4i.d.ts → Runtime-CRmvwK4I.d.ts} +70 -14
- package/dist/{Runtime-B-aL-f29.d.cts → Runtime-C_wJM9mN.d.cts} +70 -14
- package/dist/Runtime.cjs +4942 -1601
- package/dist/Runtime.cjs.map +1 -1
- package/dist/Runtime.d.cts +17 -15
- package/dist/Runtime.d.ts +17 -15
- package/dist/Runtime.js +44 -32
- package/dist/{ScopeRegistry-D1owDNSm.d.cts → ScopeRegistry-BhYzqWri.d.cts} +6 -6
- package/dist/{ScopeRegistry-D1owDNSm.d.ts → ScopeRegistry-BhYzqWri.d.ts} +6 -6
- package/dist/ScopeRegistry.cjs +776 -10
- package/dist/ScopeRegistry.cjs.map +1 -1
- package/dist/ScopeRegistry.d.cts +1 -1
- package/dist/ScopeRegistry.d.ts +1 -1
- package/dist/ScopeRegistry.js +6 -3
- package/dist/{State-CU50R26M.d.cts → State-rNFsFPTl.d.cts} +2 -2
- package/dist/{State-CU50R26M.d.ts → State-rNFsFPTl.d.ts} +2 -2
- package/dist/State.cjs.map +1 -1
- package/dist/State.d.cts +1 -1
- package/dist/State.d.ts +1 -1
- package/dist/State.js +1 -1
- package/dist/{StateTrait-BGsZghTz.d.ts → StateTrait-CijdwNb6.d.ts} +25 -8
- package/dist/{StateTrait-OWhbj12c.d.cts → StateTrait-Dltto6PU.d.cts} +25 -8
- package/dist/StateTrait.cjs +1890 -528
- package/dist/StateTrait.cjs.map +1 -1
- package/dist/StateTrait.d.cts +9 -7
- package/dist/StateTrait.d.ts +9 -7
- package/dist/StateTrait.js +18 -14
- package/dist/{TraitLifecycle-CwV5WPFX.d.cts → TraitLifecycle-BKzDqzLu.d.cts} +2 -2
- package/dist/{TraitLifecycle-LdIWmKlg.d.ts → TraitLifecycle-Cvo94uDB.d.ts} +2 -2
- package/dist/TraitLifecycle.cjs +630 -67
- package/dist/TraitLifecycle.cjs.map +1 -1
- package/dist/TraitLifecycle.d.cts +6 -6
- package/dist/TraitLifecycle.d.ts +6 -6
- package/dist/TraitLifecycle.js +8 -7
- package/dist/Workflow-C_OWr4dV.d.ts +415 -0
- package/dist/Workflow-DmydkHO8.d.cts +415 -0
- package/dist/Workflow.cjs +3150 -0
- package/dist/Workflow.cjs.map +1 -0
- package/dist/Workflow.d.cts +7 -0
- package/dist/Workflow.d.ts +7 -0
- package/dist/Workflow.js +58 -0
- package/dist/Workflow.js.map +1 -0
- package/dist/{action-DiMDD_0v.d.cts → action-BQxjPFEw.d.cts} +5 -5
- package/dist/{action-DiMDD_0v.d.ts → action-BQxjPFEw.d.ts} +5 -5
- package/dist/chunk-2XRLXDWR.js +276 -0
- package/dist/chunk-2XRLXDWR.js.map +1 -0
- package/dist/chunk-3L6QGFMM.js +701 -0
- package/dist/chunk-3L6QGFMM.js.map +1 -0
- package/dist/{chunk-GMPEOUP2.js → chunk-4MZ7BT3R.js} +2 -2
- package/dist/chunk-4MZ7BT3R.js.map +1 -0
- package/dist/{chunk-3IYZ5IGG.js → chunk-5WKUGEBY.js} +2 -2
- package/dist/{chunk-3RMKLXHX.js → chunk-63ZQ5RIN.js} +2 -2
- package/dist/{chunk-M3WTHJHJ.js → chunk-67DIEA53.js} +385 -148
- package/dist/chunk-67DIEA53.js.map +1 -0
- package/dist/{chunk-YS3AZQ2G.js → chunk-6HFAW2MH.js} +1 -1
- package/dist/chunk-6HFAW2MH.js.map +1 -0
- package/dist/{chunk-EY4NZKDR.js → chunk-6Y2TKCNY.js} +2 -2
- package/dist/{chunk-76WT3HOR.js → chunk-6YZOXFPQ.js} +25 -24
- package/dist/chunk-6YZOXFPQ.js.map +1 -0
- package/dist/{chunk-G5ZBFPNU.js → chunk-A2RQOJC7.js} +2 -2
- package/dist/{chunk-AUIR5O6W.js → chunk-AFSB6NKM.js} +13 -19
- package/dist/chunk-AFSB6NKM.js.map +1 -0
- package/dist/{chunk-JCXGZRMU.js → chunk-AO4JEOKD.js} +22 -23
- package/dist/chunk-AO4JEOKD.js.map +1 -0
- package/dist/{chunk-TAAPQVZN.js → chunk-AYELIQXR.js} +2 -2
- package/dist/{chunk-QMM6O4CD.js → chunk-BLHZW7DG.js} +15 -3
- package/dist/{chunk-QMM6O4CD.js.map → chunk-BLHZW7DG.js.map} +1 -1
- package/dist/{chunk-TQOBJYDP.js → chunk-CD4N74YC.js} +1 -1
- package/dist/chunk-CD4N74YC.js.map +1 -0
- package/dist/{chunk-ANLBCBDC.js → chunk-CGE2HBTH.js} +11 -11
- package/dist/chunk-CGE2HBTH.js.map +1 -0
- package/dist/{chunk-OFADUJWJ.js → chunk-CYYSQMLO.js} +5 -5
- package/dist/chunk-CYYSQMLO.js.map +1 -0
- package/dist/{chunk-66ALHVEX.js → chunk-EB46EYI7.js} +3 -3
- package/dist/{chunk-NZJKFF45.js → chunk-EKCDHWRK.js} +4 -4
- package/dist/chunk-EKCDHWRK.js.map +1 -0
- package/dist/{chunk-BABLDP24.js → chunk-EPQFNJU3.js} +152 -7
- package/dist/chunk-EPQFNJU3.js.map +1 -0
- package/dist/{chunk-OGWBVHB3.js → chunk-ESR6HGOY.js} +73 -14
- package/dist/chunk-ESR6HGOY.js.map +1 -0
- package/dist/{chunk-NBD3KUOZ.js → chunk-F6RP62H3.js} +150 -98
- package/dist/chunk-F6RP62H3.js.map +1 -0
- package/dist/chunk-FBYW3QDI.js +252 -0
- package/dist/chunk-FBYW3QDI.js.map +1 -0
- package/dist/{chunk-IPF7E66P.js → chunk-FYAODKVP.js} +2 -2
- package/dist/chunk-GNEN7NKO.js +908 -0
- package/dist/chunk-GNEN7NKO.js.map +1 -0
- package/dist/chunk-GWSM4KLB.js +763 -0
- package/dist/chunk-GWSM4KLB.js.map +1 -0
- package/dist/{chunk-4SO6JMZL.js → chunk-HDMXCUZL.js} +1 -1
- package/dist/chunk-HDMXCUZL.js.map +1 -0
- package/dist/{chunk-ZFY7U2FR.js → chunk-HJM5Y5NU.js} +43 -3
- package/dist/chunk-HJM5Y5NU.js.map +1 -0
- package/dist/{chunk-ZGDVUPTM.js → chunk-IOZ3VKPK.js} +129 -68
- package/dist/chunk-IOZ3VKPK.js.map +1 -0
- package/dist/{chunk-PYOE4VSI.js → chunk-IVXSVHO4.js} +303 -247
- package/dist/chunk-IVXSVHO4.js.map +1 -0
- package/dist/chunk-J3CWXIPV.js +242 -0
- package/dist/chunk-J3CWXIPV.js.map +1 -0
- package/dist/chunk-K6JQW266.js +42 -0
- package/dist/chunk-K6JQW266.js.map +1 -0
- package/dist/chunk-KMZYQF6Q.js +202 -0
- package/dist/chunk-KMZYQF6Q.js.map +1 -0
- package/dist/{chunk-JWOYLO27.js → chunk-LPPZDFTD.js} +22 -12
- package/dist/chunk-LPPZDFTD.js.map +1 -0
- package/dist/{chunk-PAYXCY6A.js → chunk-MYB2B5WX.js} +997 -576
- package/dist/chunk-MYB2B5WX.js.map +1 -0
- package/dist/chunk-MYKNINNN.js +228 -0
- package/dist/chunk-MYKNINNN.js.map +1 -0
- package/dist/chunk-NSQIRMVF.js +27 -0
- package/dist/{chunk-QCHIQWAJ.js.map → chunk-NSQIRMVF.js.map} +1 -1
- package/dist/chunk-NUDBM4MM.js +30 -0
- package/dist/chunk-NUDBM4MM.js.map +1 -0
- package/dist/chunk-NZMWWDAY.js +23 -0
- package/dist/chunk-NZMWWDAY.js.map +1 -0
- package/dist/{chunk-RNFE3ML2.js → chunk-OCUV2Y25.js} +4 -3
- package/dist/chunk-OCUV2Y25.js.map +1 -0
- package/dist/chunk-P4ZJOQA7.js +271 -0
- package/dist/chunk-P4ZJOQA7.js.map +1 -0
- package/dist/chunk-P6C5EZ3D.js +342 -0
- package/dist/chunk-P6C5EZ3D.js.map +1 -0
- package/dist/{chunk-CW6T36TN.js → chunk-PBD7BJUN.js} +62 -4
- package/dist/chunk-PBD7BJUN.js.map +1 -0
- package/dist/chunk-PBIUCQY3.js +696 -0
- package/dist/chunk-PBIUCQY3.js.map +1 -0
- package/dist/chunk-PD6YECQH.js +845 -0
- package/dist/chunk-PD6YECQH.js.map +1 -0
- package/dist/{chunk-M7IYCTJV.js → chunk-R4LFQGP3.js} +2 -2
- package/dist/chunk-RHJIGDUE.js +21 -0
- package/dist/chunk-RHJIGDUE.js.map +1 -0
- package/dist/{chunk-KP7MUZNX.js → chunk-RLXO27MW.js} +30 -8
- package/dist/chunk-RLXO27MW.js.map +1 -0
- package/dist/{chunk-DFNM3WX2.js → chunk-S44BEV4B.js} +168 -45
- package/dist/chunk-S44BEV4B.js.map +1 -0
- package/dist/chunk-S4S5N4BJ.js +1461 -0
- package/dist/chunk-S4S5N4BJ.js.map +1 -0
- package/dist/{chunk-BZ2SHDN2.js → chunk-SGTRAXXX.js} +3 -3
- package/dist/chunk-SGTRAXXX.js.map +1 -0
- package/dist/{chunk-M2RGJPXX.js → chunk-SJAE5PB5.js} +3 -3
- package/dist/{chunk-JGIWG6SR.js → chunk-SNPNHU3H.js} +3937 -1776
- package/dist/chunk-SNPNHU3H.js.map +1 -0
- package/dist/{chunk-IHVBV5C2.js → chunk-SOOBFXRR.js} +94 -71
- package/dist/chunk-SOOBFXRR.js.map +1 -0
- package/dist/{chunk-ZDTRWK5F.js → chunk-TAHFWKS6.js} +2 -2
- package/dist/chunk-UEFFTVPY.js +9 -0
- package/dist/chunk-UEFFTVPY.js.map +1 -0
- package/dist/{chunk-24VULZ7A.js → chunk-UR5BXLBP.js} +3 -3
- package/dist/chunk-UR5BXLBP.js.map +1 -0
- package/dist/{chunk-DMBALCE2.js → chunk-V2SBGVDO.js} +471 -186
- package/dist/chunk-V2SBGVDO.js.map +1 -0
- package/dist/chunk-VJLWD47W.js +23 -0
- package/dist/chunk-VJLWD47W.js.map +1 -0
- package/dist/{chunk-4CQAV7YB.js → chunk-W647DX5Z.js} +2 -2
- package/dist/{chunk-THATMZXD.js → chunk-WFIIU3YZ.js} +2 -2
- package/dist/{chunk-THATMZXD.js.map → chunk-WFIIU3YZ.js.map} +1 -1
- package/dist/chunk-YZDJMAKL.js +82 -0
- package/dist/chunk-YZDJMAKL.js.map +1 -0
- package/dist/{chunk-3TMODYZV.js → chunk-Z5XH6VHY.js} +5 -5
- package/dist/chunk-Z5XH6VHY.js.map +1 -0
- package/dist/{chunk-BE3HW4FY.js → chunk-ZBBMZMA6.js} +377 -170
- package/dist/chunk-ZBBMZMA6.js.map +1 -0
- package/dist/index.cjs +21224 -11714
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +195 -49
- package/dist/index.d.ts +195 -49
- package/dist/index.js +150 -74
- package/dist/index.js.map +1 -1
- package/dist/{ir-BMP7yxJJ.d.cts → ir-BSosEwc8.d.cts} +1 -1
- package/dist/{ir-DUOz6H-5.d.ts → ir-D-uqwL_4.d.ts} +1 -1
- package/dist/{module-B8CBqIZ_.d.cts → module-Ds4tarcI.d.cts} +230 -140
- package/dist/{module-k7m3txak.d.ts → module-Zd1Gn-Nj.d.ts} +230 -140
- package/package.json +20 -4
- package/dist/ModuleTag-C8FHY_sY.d.ts +0 -93
- package/dist/ModuleTag-EGbgBMpZ.d.cts +0 -93
- package/dist/Observability-COqEvp2C.d.cts +0 -713
- package/dist/Observability-cY4kLn0S.d.ts +0 -713
- package/dist/ReadQuery-BlMwhe-F.d.ts +0 -30
- package/dist/ReadQuery-CL5XlXts.d.cts +0 -30
- package/dist/ReadQuery-SinbStGF.d.cts +0 -38
- package/dist/ReadQuery-SinbStGF.d.ts +0 -38
- package/dist/chunk-24VULZ7A.js.map +0 -1
- package/dist/chunk-3QMIVH35.js +0 -43
- package/dist/chunk-3QMIVH35.js.map +0 -1
- package/dist/chunk-3TMODYZV.js.map +0 -1
- package/dist/chunk-4SO6JMZL.js.map +0 -1
- package/dist/chunk-76WT3HOR.js.map +0 -1
- package/dist/chunk-ANLBCBDC.js.map +0 -1
- package/dist/chunk-AUIR5O6W.js.map +0 -1
- package/dist/chunk-BABLDP24.js.map +0 -1
- package/dist/chunk-BE3HW4FY.js.map +0 -1
- package/dist/chunk-BZ2SHDN2.js.map +0 -1
- package/dist/chunk-CW6T36TN.js.map +0 -1
- package/dist/chunk-DFNM3WX2.js.map +0 -1
- package/dist/chunk-DMBALCE2.js.map +0 -1
- package/dist/chunk-EGK3KN7B.js +0 -406
- package/dist/chunk-EGK3KN7B.js.map +0 -1
- package/dist/chunk-GMPEOUP2.js.map +0 -1
- package/dist/chunk-IHVBV5C2.js.map +0 -1
- package/dist/chunk-JCXGZRMU.js.map +0 -1
- package/dist/chunk-JGIWG6SR.js.map +0 -1
- package/dist/chunk-JWOYLO27.js.map +0 -1
- package/dist/chunk-KIXAU3GM.js +0 -137
- package/dist/chunk-KIXAU3GM.js.map +0 -1
- package/dist/chunk-KL5ACTCT.js +0 -8
- package/dist/chunk-KL5ACTCT.js.map +0 -1
- package/dist/chunk-KP7MUZNX.js.map +0 -1
- package/dist/chunk-M3BFQ7HK.js +0 -13
- package/dist/chunk-M3BFQ7HK.js.map +0 -1
- package/dist/chunk-M3WTHJHJ.js.map +0 -1
- package/dist/chunk-NBD3KUOZ.js.map +0 -1
- package/dist/chunk-NQZ2OSGR.js +0 -151
- package/dist/chunk-NQZ2OSGR.js.map +0 -1
- package/dist/chunk-NZJKFF45.js.map +0 -1
- package/dist/chunk-OFADUJWJ.js.map +0 -1
- package/dist/chunk-OGWBVHB3.js.map +0 -1
- package/dist/chunk-PAYXCY6A.js.map +0 -1
- package/dist/chunk-PYOE4VSI.js.map +0 -1
- package/dist/chunk-QCHIQWAJ.js +0 -21
- package/dist/chunk-RNFE3ML2.js.map +0 -1
- package/dist/chunk-TKZ7MEIA.js +0 -27
- package/dist/chunk-TKZ7MEIA.js.map +0 -1
- package/dist/chunk-TQOBJYDP.js.map +0 -1
- package/dist/chunk-VZB726PE.js +0 -93
- package/dist/chunk-VZB726PE.js.map +0 -1
- package/dist/chunk-W3TEWHLO.js +0 -568
- package/dist/chunk-W3TEWHLO.js.map +0 -1
- package/dist/chunk-YS3AZQ2G.js.map +0 -1
- package/dist/chunk-ZFLHVFUC.js +0 -192
- package/dist/chunk-ZFLHVFUC.js.map +0 -1
- package/dist/chunk-ZFY7U2FR.js.map +0 -1
- package/dist/chunk-ZGDVUPTM.js.map +0 -1
- package/dist/protocol-g_1897M2.d.cts +0 -127
- package/dist/protocol-g_1897M2.d.ts +0 -127
- /package/dist/{chunk-3IYZ5IGG.js.map → chunk-5WKUGEBY.js.map} +0 -0
- /package/dist/{chunk-3RMKLXHX.js.map → chunk-63ZQ5RIN.js.map} +0 -0
- /package/dist/{chunk-EY4NZKDR.js.map → chunk-6Y2TKCNY.js.map} +0 -0
- /package/dist/{chunk-G5ZBFPNU.js.map → chunk-A2RQOJC7.js.map} +0 -0
- /package/dist/{chunk-TAAPQVZN.js.map → chunk-AYELIQXR.js.map} +0 -0
- /package/dist/{chunk-66ALHVEX.js.map → chunk-EB46EYI7.js.map} +0 -0
- /package/dist/{chunk-IPF7E66P.js.map → chunk-FYAODKVP.js.map} +0 -0
- /package/dist/{chunk-M7IYCTJV.js.map → chunk-R4LFQGP3.js.map} +0 -0
- /package/dist/{chunk-M2RGJPXX.js.map → chunk-SJAE5PB5.js.map} +0 -0
- /package/dist/{chunk-ZDTRWK5F.js.map → chunk-TAHFWKS6.js.map} +0 -0
- /package/dist/{chunk-4CQAV7YB.js.map → chunk-W647DX5Z.js.map} +0 -0
package/dist/Kernel.cjs
CHANGED
|
@@ -35,14 +35,14 @@ __export(Kernel_exports, {
|
|
|
35
35
|
runtimeServicesRegistryLayer: () => runtimeServicesRegistryLayer
|
|
36
36
|
});
|
|
37
37
|
module.exports = __toCommonJS(Kernel_exports);
|
|
38
|
-
var
|
|
38
|
+
var import_effect13 = require("effect");
|
|
39
39
|
|
|
40
40
|
// src/internal/runtime/core/FullCutoverGate.ts
|
|
41
41
|
var CutoverCoverageMatrix = {
|
|
42
42
|
version: "v1",
|
|
43
43
|
requiredServiceIds: ["txnQueue", "operationRunner", "transaction", "dispatch"]
|
|
44
44
|
};
|
|
45
|
-
var expectedImplIdForKernel = (kernelId) => kernelId
|
|
45
|
+
var expectedImplIdForKernel = (kernelId) => kernelId;
|
|
46
46
|
var parseFallbackServiceIds = (overridesApplied) => {
|
|
47
47
|
const out = /* @__PURE__ */ new Set();
|
|
48
48
|
for (const entry of overridesApplied) {
|
|
@@ -54,7 +54,7 @@ var parseFallbackServiceIds = (overridesApplied) => {
|
|
|
54
54
|
const serviceId = entry.slice(colon + 1, eq);
|
|
55
55
|
if (serviceId.length > 0) out.add(serviceId);
|
|
56
56
|
}
|
|
57
|
-
return Array.from(out).sort(
|
|
57
|
+
return Array.from(out).sort();
|
|
58
58
|
};
|
|
59
59
|
var collectMissingServiceIds = (args) => {
|
|
60
60
|
const bindingByServiceId = /* @__PURE__ */ new Map();
|
|
@@ -65,14 +65,24 @@ var collectMissingServiceIds = (args) => {
|
|
|
65
65
|
for (const serviceId of args.requiredServiceIds) {
|
|
66
66
|
const binding = bindingByServiceId.get(serviceId);
|
|
67
67
|
const implId = binding?.implId;
|
|
68
|
-
if (!implId || implId !== args.expectedImplId) {
|
|
68
|
+
if (!implId || args.expectedImplId != null && implId !== args.expectedImplId) {
|
|
69
69
|
missing.push(serviceId);
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
72
|
return missing;
|
|
73
73
|
};
|
|
74
|
+
var resolveGateReason = (args) => {
|
|
75
|
+
if (args.fullyActivated) return "fully_activated";
|
|
76
|
+
if (args.mode === "trial") return "trial_mode_with_fallback";
|
|
77
|
+
const hasMissing = args.missingServiceIds.length > 0;
|
|
78
|
+
const hasFallback = args.fallbackServiceIds.length > 0;
|
|
79
|
+
if (hasMissing && hasFallback) return "missing_and_fallback";
|
|
80
|
+
if (hasMissing) return "missing_required_bindings";
|
|
81
|
+
return "fallback_bindings_detected";
|
|
82
|
+
};
|
|
74
83
|
var evaluateFullCutoverGate = (args) => {
|
|
75
|
-
const expectedImplId = expectedImplIdForKernel(args.requestedKernelId);
|
|
84
|
+
const expectedImplId = args.requestedKernelId === "core" ? void 0 : expectedImplIdForKernel(args.requestedKernelId);
|
|
85
|
+
const expectedImplIdLabel = expectedImplId ?? "(any)";
|
|
76
86
|
const matrix = args.coverageMatrix ?? CutoverCoverageMatrix;
|
|
77
87
|
const fallbackServiceIds = parseFallbackServiceIds(args.runtimeServicesEvidence.overridesApplied);
|
|
78
88
|
const missingServiceIds = collectMissingServiceIds({
|
|
@@ -82,6 +92,12 @@ var evaluateFullCutoverGate = (args) => {
|
|
|
82
92
|
});
|
|
83
93
|
const fullyActivated = missingServiceIds.length === 0 && fallbackServiceIds.length === 0;
|
|
84
94
|
const verdict = args.mode === "fullCutover" ? fullyActivated ? "PASS" : "FAIL" : "PASS";
|
|
95
|
+
const reason = resolveGateReason({
|
|
96
|
+
mode: args.mode,
|
|
97
|
+
missingServiceIds,
|
|
98
|
+
fallbackServiceIds,
|
|
99
|
+
fullyActivated
|
|
100
|
+
});
|
|
85
101
|
const moduleIdRaw = args.runtimeServicesEvidence.moduleId;
|
|
86
102
|
const moduleId = typeof moduleIdRaw === "string" && moduleIdRaw.length > 0 ? moduleIdRaw : "unknown";
|
|
87
103
|
const anchor = {
|
|
@@ -99,9 +115,15 @@ var evaluateFullCutoverGate = (args) => {
|
|
|
99
115
|
missingServiceIds,
|
|
100
116
|
fallbackServiceIds,
|
|
101
117
|
anchor,
|
|
118
|
+
reason,
|
|
119
|
+
evidence: {
|
|
120
|
+
requiredServiceCount: matrix.requiredServiceIds.length,
|
|
121
|
+
missingServiceIds,
|
|
122
|
+
fallbackServiceIds
|
|
123
|
+
},
|
|
102
124
|
...level === "off" ? {} : {
|
|
103
125
|
details: {
|
|
104
|
-
expectedImplId,
|
|
126
|
+
expectedImplId: expectedImplIdLabel,
|
|
105
127
|
bindings: args.runtimeServicesEvidence.bindings,
|
|
106
128
|
overridesApplied: args.runtimeServicesEvidence.overridesApplied
|
|
107
129
|
}
|
|
@@ -110,10 +132,753 @@ var evaluateFullCutoverGate = (args) => {
|
|
|
110
132
|
};
|
|
111
133
|
|
|
112
134
|
// src/internal/runtime/core/RuntimeKernel.ts
|
|
113
|
-
var
|
|
135
|
+
var import_effect10 = require("effect");
|
|
114
136
|
|
|
115
137
|
// src/internal/runtime/core/env.ts
|
|
138
|
+
var import_effect9 = require("effect");
|
|
139
|
+
|
|
140
|
+
// src/internal/runtime/core/HostScheduler.ts
|
|
141
|
+
var noopCancel = () => {
|
|
142
|
+
};
|
|
143
|
+
var safeNowMs = () => {
|
|
144
|
+
const perf = globalThis.performance;
|
|
145
|
+
if (perf && typeof perf.now === "function") {
|
|
146
|
+
try {
|
|
147
|
+
const v = perf.now();
|
|
148
|
+
if (typeof v === "number" && Number.isFinite(v)) return v;
|
|
149
|
+
} catch {
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
return Date.now();
|
|
153
|
+
};
|
|
154
|
+
var safeQueueMicrotask = (cb) => {
|
|
155
|
+
const qm = globalThis.queueMicrotask;
|
|
156
|
+
if (typeof qm === "function") {
|
|
157
|
+
try {
|
|
158
|
+
qm(cb);
|
|
159
|
+
return;
|
|
160
|
+
} catch {
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
try {
|
|
164
|
+
Promise.resolve().then(cb);
|
|
165
|
+
} catch {
|
|
166
|
+
setTimeout(cb, 0);
|
|
167
|
+
}
|
|
168
|
+
};
|
|
169
|
+
var safeSetTimeout = (ms, cb) => {
|
|
170
|
+
const id = setTimeout(cb, ms);
|
|
171
|
+
return () => {
|
|
172
|
+
try {
|
|
173
|
+
clearTimeout(id);
|
|
174
|
+
} catch {
|
|
175
|
+
}
|
|
176
|
+
};
|
|
177
|
+
};
|
|
178
|
+
var makeMessageChannelMacrotask = () => {
|
|
179
|
+
const MC = globalThis.MessageChannel;
|
|
180
|
+
if (typeof MC !== "function") return void 0;
|
|
181
|
+
let channel;
|
|
182
|
+
try {
|
|
183
|
+
channel = new MC();
|
|
184
|
+
} catch {
|
|
185
|
+
return void 0;
|
|
186
|
+
}
|
|
187
|
+
const queue = [];
|
|
188
|
+
let scheduled = false;
|
|
189
|
+
const flush = () => {
|
|
190
|
+
scheduled = false;
|
|
191
|
+
const tasks = queue.splice(0, queue.length);
|
|
192
|
+
for (const t of tasks) {
|
|
193
|
+
if (t.canceled) continue;
|
|
194
|
+
try {
|
|
195
|
+
t.cb();
|
|
196
|
+
} catch {
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
};
|
|
200
|
+
try {
|
|
201
|
+
channel.port1.onmessage = flush;
|
|
202
|
+
} catch {
|
|
203
|
+
return void 0;
|
|
204
|
+
}
|
|
205
|
+
const schedule = (cb) => {
|
|
206
|
+
const task = { canceled: false, cb };
|
|
207
|
+
queue.push(task);
|
|
208
|
+
if (!scheduled) {
|
|
209
|
+
scheduled = true;
|
|
210
|
+
try {
|
|
211
|
+
channel.port2.postMessage(void 0);
|
|
212
|
+
} catch {
|
|
213
|
+
scheduled = false;
|
|
214
|
+
return safeSetTimeout(0, cb);
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
return () => {
|
|
218
|
+
task.canceled = true;
|
|
219
|
+
};
|
|
220
|
+
};
|
|
221
|
+
return schedule;
|
|
222
|
+
};
|
|
223
|
+
var makeSetImmediateMacrotask = () => {
|
|
224
|
+
const si = globalThis.setImmediate;
|
|
225
|
+
const ci = globalThis.clearImmediate;
|
|
226
|
+
if (typeof si !== "function") return void 0;
|
|
227
|
+
return (cb) => {
|
|
228
|
+
let id;
|
|
229
|
+
try {
|
|
230
|
+
id = si(cb);
|
|
231
|
+
} catch {
|
|
232
|
+
return safeSetTimeout(0, cb);
|
|
233
|
+
}
|
|
234
|
+
return () => {
|
|
235
|
+
if (typeof ci !== "function") return;
|
|
236
|
+
try {
|
|
237
|
+
ci(id);
|
|
238
|
+
} catch {
|
|
239
|
+
}
|
|
240
|
+
};
|
|
241
|
+
};
|
|
242
|
+
};
|
|
243
|
+
var makeRaf = () => {
|
|
244
|
+
const raf = globalThis.requestAnimationFrame;
|
|
245
|
+
const cancel = globalThis.cancelAnimationFrame;
|
|
246
|
+
if (typeof raf !== "function") return void 0;
|
|
247
|
+
return (cb) => {
|
|
248
|
+
let id;
|
|
249
|
+
try {
|
|
250
|
+
id = raf(cb);
|
|
251
|
+
} catch {
|
|
252
|
+
return noopCancel;
|
|
253
|
+
}
|
|
254
|
+
return () => {
|
|
255
|
+
if (typeof cancel !== "function") return;
|
|
256
|
+
try {
|
|
257
|
+
cancel(id);
|
|
258
|
+
} catch {
|
|
259
|
+
}
|
|
260
|
+
};
|
|
261
|
+
};
|
|
262
|
+
};
|
|
263
|
+
var makeDefaultHostScheduler = () => {
|
|
264
|
+
const macrotask = makeSetImmediateMacrotask() ?? makeMessageChannelMacrotask() ?? ((cb) => safeSetTimeout(0, cb));
|
|
265
|
+
const raf = makeRaf();
|
|
266
|
+
return {
|
|
267
|
+
nowMs: safeNowMs,
|
|
268
|
+
scheduleMicrotask: safeQueueMicrotask,
|
|
269
|
+
scheduleMacrotask: macrotask,
|
|
270
|
+
scheduleAnimationFrame: (cb) => raf?.(cb) ?? macrotask(cb),
|
|
271
|
+
scheduleTimeout: safeSetTimeout
|
|
272
|
+
};
|
|
273
|
+
};
|
|
274
|
+
var globalHostScheduler;
|
|
275
|
+
var getGlobalHostScheduler = () => {
|
|
276
|
+
globalHostScheduler ?? (globalHostScheduler = makeDefaultHostScheduler());
|
|
277
|
+
return globalHostScheduler;
|
|
278
|
+
};
|
|
279
|
+
|
|
280
|
+
// src/internal/runtime/core/RuntimeStore.ts
|
|
281
|
+
var parseTopicKey = (topicKey) => {
|
|
282
|
+
const idx = topicKey.indexOf("::");
|
|
283
|
+
if (idx <= 0) return void 0;
|
|
284
|
+
const moduleId = topicKey.slice(0, idx);
|
|
285
|
+
const rest = topicKey.slice(idx + 2);
|
|
286
|
+
if (rest.length === 0) return void 0;
|
|
287
|
+
const idx2 = rest.indexOf("::");
|
|
288
|
+
if (idx2 < 0) {
|
|
289
|
+
return { kind: "module", moduleInstanceKey: `${moduleId}::${rest}` };
|
|
290
|
+
}
|
|
291
|
+
const instanceId = rest.slice(0, idx2);
|
|
292
|
+
const suffix = rest.slice(idx2 + 2);
|
|
293
|
+
if (suffix.startsWith("rq:")) {
|
|
294
|
+
const selectorId = suffix.slice("rq:".length);
|
|
295
|
+
if (selectorId.length === 0) return void 0;
|
|
296
|
+
return {
|
|
297
|
+
kind: "readQuery",
|
|
298
|
+
moduleInstanceKey: `${moduleId}::${instanceId}`,
|
|
299
|
+
selectorId
|
|
300
|
+
};
|
|
301
|
+
}
|
|
302
|
+
return { kind: "module", moduleInstanceKey: `${moduleId}::${instanceId}` };
|
|
303
|
+
};
|
|
304
|
+
var EMPTY_LISTENER_SNAPSHOT = [];
|
|
305
|
+
var NO_CHANGED_TOPIC_LISTENERS = [];
|
|
306
|
+
var makeRuntimeStore = () => {
|
|
307
|
+
let tickSeq = 0;
|
|
308
|
+
const moduleStates = /* @__PURE__ */ new Map();
|
|
309
|
+
const topicVersions = /* @__PURE__ */ new Map();
|
|
310
|
+
const topicPriorities = /* @__PURE__ */ new Map();
|
|
311
|
+
const listenersByTopic = /* @__PURE__ */ new Map();
|
|
312
|
+
const subscriberCountByModule = /* @__PURE__ */ new Map();
|
|
313
|
+
const getTopicVersion = (topicKey) => topicVersions.get(topicKey) ?? 0;
|
|
314
|
+
const getTopicPriority = (topicKey) => topicPriorities.get(topicKey) ?? "normal";
|
|
315
|
+
const commitTopicBump = (topicKey, priority) => {
|
|
316
|
+
const prev = topicVersions.get(topicKey) ?? 0;
|
|
317
|
+
topicVersions.set(topicKey, prev + 1);
|
|
318
|
+
topicPriorities.set(topicKey, priority);
|
|
319
|
+
};
|
|
320
|
+
const refreshTopicSnapshot = (state) => {
|
|
321
|
+
state.snapshot = Array.from(state.listeners);
|
|
322
|
+
};
|
|
323
|
+
const subscribeTopic = (topicKey, listener) => {
|
|
324
|
+
const info = parseTopicKey(topicKey);
|
|
325
|
+
const existing = listenersByTopic.get(topicKey);
|
|
326
|
+
const state = existing ?? { listeners: /* @__PURE__ */ new Set(), snapshot: EMPTY_LISTENER_SNAPSHOT };
|
|
327
|
+
const alreadyHas = state.listeners.has(listener);
|
|
328
|
+
if (!alreadyHas) {
|
|
329
|
+
state.listeners.add(listener);
|
|
330
|
+
refreshTopicSnapshot(state);
|
|
331
|
+
}
|
|
332
|
+
if (!existing) {
|
|
333
|
+
listenersByTopic.set(topicKey, state);
|
|
334
|
+
}
|
|
335
|
+
if (!alreadyHas && info) {
|
|
336
|
+
const prev = subscriberCountByModule.get(info.moduleInstanceKey) ?? 0;
|
|
337
|
+
subscriberCountByModule.set(info.moduleInstanceKey, prev + 1);
|
|
338
|
+
}
|
|
339
|
+
return () => {
|
|
340
|
+
const currentState = listenersByTopic.get(topicKey);
|
|
341
|
+
if (!currentState) return;
|
|
342
|
+
const deleted = currentState.listeners.delete(listener);
|
|
343
|
+
if (deleted && info) {
|
|
344
|
+
const prev = subscriberCountByModule.get(info.moduleInstanceKey) ?? 0;
|
|
345
|
+
const next = prev - 1;
|
|
346
|
+
if (next <= 0) {
|
|
347
|
+
subscriberCountByModule.delete(info.moduleInstanceKey);
|
|
348
|
+
} else {
|
|
349
|
+
subscriberCountByModule.set(info.moduleInstanceKey, next);
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
if (currentState.listeners.size === 0) {
|
|
353
|
+
listenersByTopic.delete(topicKey);
|
|
354
|
+
} else if (deleted) {
|
|
355
|
+
refreshTopicSnapshot(currentState);
|
|
356
|
+
}
|
|
357
|
+
};
|
|
358
|
+
};
|
|
359
|
+
const getTopicSubscriberCount = (topicKey) => listenersByTopic.get(topicKey)?.listeners.size ?? 0;
|
|
360
|
+
const getModuleSubscriberCount = (moduleInstanceKey) => subscriberCountByModule.get(moduleInstanceKey) ?? 0;
|
|
361
|
+
const registerModuleInstance = (args) => {
|
|
362
|
+
moduleStates.set(args.moduleInstanceKey, args.initialState);
|
|
363
|
+
if (!topicVersions.has(args.moduleInstanceKey)) {
|
|
364
|
+
topicVersions.set(args.moduleInstanceKey, 0);
|
|
365
|
+
topicPriorities.set(args.moduleInstanceKey, "normal");
|
|
366
|
+
}
|
|
367
|
+
};
|
|
368
|
+
const unregisterModuleInstance = (moduleInstanceKey) => {
|
|
369
|
+
moduleStates.delete(moduleInstanceKey);
|
|
370
|
+
};
|
|
371
|
+
const commitTick = (args) => {
|
|
372
|
+
tickSeq = args.tickSeq;
|
|
373
|
+
for (const [key, commit] of args.accepted.modules) {
|
|
374
|
+
moduleStates.set(key, commit.state);
|
|
375
|
+
}
|
|
376
|
+
if (args.accepted.dirtyTopics.size === 0) {
|
|
377
|
+
return {
|
|
378
|
+
changedTopicListeners: NO_CHANGED_TOPIC_LISTENERS
|
|
379
|
+
};
|
|
380
|
+
}
|
|
381
|
+
if (args.onListener) {
|
|
382
|
+
let firstTopicListeners;
|
|
383
|
+
let secondTopicListeners;
|
|
384
|
+
let restTopicListeners;
|
|
385
|
+
for (const [topicKey, priority] of args.accepted.dirtyTopics) {
|
|
386
|
+
commitTopicBump(topicKey, priority);
|
|
387
|
+
const listeners = listenersByTopic.get(topicKey)?.snapshot ?? EMPTY_LISTENER_SNAPSHOT;
|
|
388
|
+
if (listeners.length === 0) {
|
|
389
|
+
continue;
|
|
390
|
+
}
|
|
391
|
+
if (!firstTopicListeners) {
|
|
392
|
+
firstTopicListeners = listeners;
|
|
393
|
+
continue;
|
|
394
|
+
}
|
|
395
|
+
if (!secondTopicListeners) {
|
|
396
|
+
secondTopicListeners = listeners;
|
|
397
|
+
continue;
|
|
398
|
+
}
|
|
399
|
+
if (!restTopicListeners) {
|
|
400
|
+
restTopicListeners = [];
|
|
401
|
+
}
|
|
402
|
+
restTopicListeners.push(listeners);
|
|
403
|
+
}
|
|
404
|
+
if (firstTopicListeners) {
|
|
405
|
+
for (const listener of firstTopicListeners) {
|
|
406
|
+
try {
|
|
407
|
+
args.onListener(listener);
|
|
408
|
+
} catch {
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
if (secondTopicListeners) {
|
|
413
|
+
for (const listener of secondTopicListeners) {
|
|
414
|
+
try {
|
|
415
|
+
args.onListener(listener);
|
|
416
|
+
} catch {
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
if (restTopicListeners) {
|
|
421
|
+
for (const listeners of restTopicListeners) {
|
|
422
|
+
for (const listener of listeners) {
|
|
423
|
+
try {
|
|
424
|
+
args.onListener(listener);
|
|
425
|
+
} catch {
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
}
|
|
429
|
+
}
|
|
430
|
+
return {
|
|
431
|
+
changedTopicListeners: NO_CHANGED_TOPIC_LISTENERS
|
|
432
|
+
};
|
|
433
|
+
}
|
|
434
|
+
let singleTopicListeners;
|
|
435
|
+
let flattenedTopicListeners;
|
|
436
|
+
for (const [topicKey, priority] of args.accepted.dirtyTopics) {
|
|
437
|
+
commitTopicBump(topicKey, priority);
|
|
438
|
+
const listeners = listenersByTopic.get(topicKey)?.snapshot ?? EMPTY_LISTENER_SNAPSHOT;
|
|
439
|
+
if (listeners.length === 0) {
|
|
440
|
+
continue;
|
|
441
|
+
}
|
|
442
|
+
if (flattenedTopicListeners) {
|
|
443
|
+
for (const listener of listeners) {
|
|
444
|
+
flattenedTopicListeners.push(listener);
|
|
445
|
+
}
|
|
446
|
+
continue;
|
|
447
|
+
}
|
|
448
|
+
if (!singleTopicListeners) {
|
|
449
|
+
singleTopicListeners = listeners;
|
|
450
|
+
continue;
|
|
451
|
+
}
|
|
452
|
+
flattenedTopicListeners = Array.from(singleTopicListeners);
|
|
453
|
+
for (const listener of listeners) {
|
|
454
|
+
flattenedTopicListeners.push(listener);
|
|
455
|
+
}
|
|
456
|
+
}
|
|
457
|
+
return {
|
|
458
|
+
changedTopicListeners: flattenedTopicListeners ?? singleTopicListeners ?? NO_CHANGED_TOPIC_LISTENERS
|
|
459
|
+
};
|
|
460
|
+
};
|
|
461
|
+
const getModuleState = (moduleInstanceKey) => moduleStates.get(moduleInstanceKey);
|
|
462
|
+
const dispose = () => {
|
|
463
|
+
moduleStates.clear();
|
|
464
|
+
topicVersions.clear();
|
|
465
|
+
topicPriorities.clear();
|
|
466
|
+
listenersByTopic.clear();
|
|
467
|
+
subscriberCountByModule.clear();
|
|
468
|
+
};
|
|
469
|
+
return {
|
|
470
|
+
getTickSeq: () => tickSeq,
|
|
471
|
+
getModuleState,
|
|
472
|
+
getTopicVersion,
|
|
473
|
+
getTopicPriority,
|
|
474
|
+
subscribeTopic,
|
|
475
|
+
getTopicSubscriberCount,
|
|
476
|
+
getModuleSubscriberCount,
|
|
477
|
+
registerModuleInstance,
|
|
478
|
+
unregisterModuleInstance,
|
|
479
|
+
commitTick,
|
|
480
|
+
dispose
|
|
481
|
+
};
|
|
482
|
+
};
|
|
483
|
+
|
|
484
|
+
// src/internal/runtime/core/TickScheduler.ts
|
|
485
|
+
var import_effect7 = require("effect");
|
|
486
|
+
|
|
487
|
+
// src/internal/runtime/core/DebugSink.record.ts
|
|
488
|
+
var import_effect3 = require("effect");
|
|
489
|
+
|
|
490
|
+
// src/internal/observability/jsonValue.ts
|
|
491
|
+
var defaultOptions = {
|
|
492
|
+
maxDepth: 6,
|
|
493
|
+
maxObjectKeys: 32,
|
|
494
|
+
maxArrayLength: 32,
|
|
495
|
+
maxStringLength: 256,
|
|
496
|
+
maxJsonBytes: 4 * 1024,
|
|
497
|
+
oversizedPreviewBytes: 256
|
|
498
|
+
};
|
|
499
|
+
|
|
500
|
+
// src/internal/runtime/core/errorSummary.ts
|
|
116
501
|
var import_effect = require("effect");
|
|
502
|
+
|
|
503
|
+
// src/internal/runtime/core/EffectOpCore.ts
|
|
504
|
+
var import_effect2 = require("effect");
|
|
505
|
+
var currentLinkId = import_effect2.ServiceMap.Reference("@logixjs/core/CurrentLinkId", {
|
|
506
|
+
defaultValue: () => void 0
|
|
507
|
+
});
|
|
508
|
+
var EffectOpMiddlewareTag = class extends import_effect2.ServiceMap.Service()("Logix/EffectOpMiddleware") {
|
|
509
|
+
};
|
|
510
|
+
|
|
511
|
+
// src/internal/runtime/core/DebugSink.record.ts
|
|
512
|
+
var currentDebugSinks = import_effect3.ServiceMap.Reference("@logixjs/core/Debug.currentDebugSinks", {
|
|
513
|
+
defaultValue: () => []
|
|
514
|
+
});
|
|
515
|
+
var currentRuntimeLabel = import_effect3.ServiceMap.Reference("@logixjs/core/Debug.currentRuntimeLabel", {
|
|
516
|
+
defaultValue: () => void 0
|
|
517
|
+
});
|
|
518
|
+
var currentTxnId = import_effect3.ServiceMap.Reference("@logixjs/core/Debug.currentTxnId", {
|
|
519
|
+
defaultValue: () => void 0
|
|
520
|
+
});
|
|
521
|
+
var currentOpSeq = import_effect3.ServiceMap.Reference("@logixjs/core/Debug.currentOpSeq", {
|
|
522
|
+
defaultValue: () => void 0
|
|
523
|
+
});
|
|
524
|
+
var currentDiagnosticsLevel = import_effect3.ServiceMap.Reference("@logixjs/core/Debug.currentDiagnosticsLevel", {
|
|
525
|
+
defaultValue: () => "off"
|
|
526
|
+
});
|
|
527
|
+
var currentDiagnosticsMaterialization = import_effect3.ServiceMap.Reference(
|
|
528
|
+
"@logixjs/core/Debug.currentDiagnosticsMaterialization",
|
|
529
|
+
{
|
|
530
|
+
defaultValue: () => "eager"
|
|
531
|
+
}
|
|
532
|
+
);
|
|
533
|
+
var currentTraceMode = import_effect3.ServiceMap.Reference("@logixjs/core/Debug.currentTraceMode", {
|
|
534
|
+
defaultValue: () => "on"
|
|
535
|
+
});
|
|
536
|
+
var currentTraitConvergeDiagnosticsSampling = import_effect3.ServiceMap.Reference(
|
|
537
|
+
"@logixjs/core/Debug.currentTraitConvergeDiagnosticsSampling",
|
|
538
|
+
{
|
|
539
|
+
defaultValue: () => ({
|
|
540
|
+
sampleEveryN: 32,
|
|
541
|
+
topK: 3
|
|
542
|
+
})
|
|
543
|
+
}
|
|
544
|
+
);
|
|
545
|
+
var browserLifecycleSeen = /* @__PURE__ */ new Set();
|
|
546
|
+
var browserDiagnosticSeen = /* @__PURE__ */ new Set();
|
|
547
|
+
var lifecycleErrorLog = (event) => {
|
|
548
|
+
const moduleId = event.moduleId ?? "unknown";
|
|
549
|
+
const causePretty = (() => {
|
|
550
|
+
try {
|
|
551
|
+
return import_effect3.Cause.pretty(event.cause);
|
|
552
|
+
} catch {
|
|
553
|
+
try {
|
|
554
|
+
return JSON.stringify(event.cause, null, 2);
|
|
555
|
+
} catch {
|
|
556
|
+
return String(event.cause);
|
|
557
|
+
}
|
|
558
|
+
}
|
|
559
|
+
})();
|
|
560
|
+
const message = `[Logix][module=${moduleId}] lifecycle:error
|
|
561
|
+
${causePretty}`;
|
|
562
|
+
return import_effect3.Effect.logError(message).pipe(
|
|
563
|
+
import_effect3.Effect.annotateLogs({
|
|
564
|
+
"logix.moduleId": moduleId,
|
|
565
|
+
"logix.event": "lifecycle:error",
|
|
566
|
+
"logix.cause": causePretty
|
|
567
|
+
})
|
|
568
|
+
);
|
|
569
|
+
};
|
|
570
|
+
var diagnosticLog = (event) => {
|
|
571
|
+
const moduleId = event.moduleId ?? "unknown";
|
|
572
|
+
const header = `[Logix][module=${moduleId}] diagnostic(${event.severity})`;
|
|
573
|
+
const detail = `code=${event.code} message=${event.message}${event.actionTag ? ` action=${event.actionTag}` : ""}${event.hint ? `
|
|
574
|
+
hint: ${event.hint}` : ""}`;
|
|
575
|
+
const msg = `${header}
|
|
576
|
+
${detail}`;
|
|
577
|
+
const base = event.severity === "warning" ? import_effect3.Effect.logWarning(msg) : event.severity === "info" ? import_effect3.Effect.logInfo(msg) : import_effect3.Effect.logError(msg);
|
|
578
|
+
const annotations = {
|
|
579
|
+
"logix.moduleId": moduleId,
|
|
580
|
+
"logix.event": `diagnostic(${event.severity})`,
|
|
581
|
+
"logix.diagnostic.code": event.code,
|
|
582
|
+
"logix.diagnostic.message": event.message
|
|
583
|
+
};
|
|
584
|
+
if (event.hint) {
|
|
585
|
+
annotations["logix.diagnostic.hint"] = event.hint;
|
|
586
|
+
}
|
|
587
|
+
if (event.actionTag) {
|
|
588
|
+
annotations["logix.diagnostic.actionTag"] = event.actionTag;
|
|
589
|
+
}
|
|
590
|
+
return base.pipe(import_effect3.Effect.annotateLogs(annotations));
|
|
591
|
+
};
|
|
592
|
+
var noopLayer = import_effect3.Layer.succeed(currentDebugSinks, []);
|
|
593
|
+
var errorOnlySink = {
|
|
594
|
+
record: (event) => event.type === "lifecycle:error" ? lifecycleErrorLog(event) : event.type === "diagnostic" && event.severity !== "info" ? diagnosticLog(event) : import_effect3.Effect.void
|
|
595
|
+
};
|
|
596
|
+
var errorOnlyLayer = import_effect3.Layer.succeed(currentDebugSinks, [errorOnlySink]);
|
|
597
|
+
var consoleSink = {
|
|
598
|
+
record: (event) => event.type === "lifecycle:error" ? lifecycleErrorLog(event) : event.type === "diagnostic" ? diagnosticLog(event) : import_effect3.Effect.logDebug({ debugEvent: event })
|
|
599
|
+
};
|
|
600
|
+
var consoleLayer = import_effect3.Layer.succeed(currentDebugSinks, [consoleSink]);
|
|
601
|
+
var isBrowser = typeof window !== "undefined" && typeof document !== "undefined";
|
|
602
|
+
var renderBrowserConsoleEvent = (event) => {
|
|
603
|
+
if (typeof event.type === "string" && event.type.startsWith("trace:")) {
|
|
604
|
+
const moduleId = event.moduleId ?? "unknown";
|
|
605
|
+
const type = event.type;
|
|
606
|
+
return import_effect3.Effect.sync(() => {
|
|
607
|
+
console.groupCollapsed(
|
|
608
|
+
"%c[Logix]%c trace %c" + moduleId + "%c " + String(type),
|
|
609
|
+
"color:#6b7280;font-weight:bold",
|
|
610
|
+
// tag
|
|
611
|
+
"color:#3b82f6",
|
|
612
|
+
// label
|
|
613
|
+
"color:#9ca3af",
|
|
614
|
+
// module id
|
|
615
|
+
"color:#6b7280"
|
|
616
|
+
// type
|
|
617
|
+
);
|
|
618
|
+
console.log(event);
|
|
619
|
+
console.groupEnd();
|
|
620
|
+
});
|
|
621
|
+
}
|
|
622
|
+
if (event.type === "lifecycle:error") {
|
|
623
|
+
const moduleId = event.moduleId ?? "unknown";
|
|
624
|
+
const causePretty = (() => {
|
|
625
|
+
try {
|
|
626
|
+
return import_effect3.Cause.pretty(event.cause);
|
|
627
|
+
} catch {
|
|
628
|
+
try {
|
|
629
|
+
return JSON.stringify(event.cause, null, 2);
|
|
630
|
+
} catch {
|
|
631
|
+
return String(event.cause);
|
|
632
|
+
}
|
|
633
|
+
}
|
|
634
|
+
})();
|
|
635
|
+
const key = `${moduleId}|${causePretty}`;
|
|
636
|
+
if (browserLifecycleSeen.has(key)) {
|
|
637
|
+
return import_effect3.Effect.void;
|
|
638
|
+
}
|
|
639
|
+
browserLifecycleSeen.add(key);
|
|
640
|
+
return import_effect3.Effect.sync(() => {
|
|
641
|
+
console.groupCollapsed(
|
|
642
|
+
"%c[Logix]%c lifecycle:error %c" + moduleId,
|
|
643
|
+
"color:#ef4444;font-weight:bold",
|
|
644
|
+
// tag
|
|
645
|
+
"color:#ef4444",
|
|
646
|
+
// label
|
|
647
|
+
"color:#9ca3af"
|
|
648
|
+
// module id
|
|
649
|
+
);
|
|
650
|
+
console.error(causePretty);
|
|
651
|
+
console.groupEnd();
|
|
652
|
+
});
|
|
653
|
+
}
|
|
654
|
+
if (event.type === "diagnostic") {
|
|
655
|
+
const moduleId = event.moduleId ?? "unknown";
|
|
656
|
+
const detail = `code=${event.code} message=${event.message}${event.actionTag ? ` action=${event.actionTag}` : ""}${event.hint ? `
|
|
657
|
+
hint: ${event.hint}` : ""}`;
|
|
658
|
+
const color = event.severity === "warning" ? "color:#d97706" : event.severity === "info" ? "color:#3b82f6" : "color:#ef4444";
|
|
659
|
+
const label = event.severity === "warning" ? "diagnostic(warning)" : event.severity === "info" ? "diagnostic(info)" : "diagnostic(error)";
|
|
660
|
+
const key = `${moduleId}|${event.code}|${event.message}`;
|
|
661
|
+
if (browserDiagnosticSeen.has(key)) {
|
|
662
|
+
return import_effect3.Effect.void;
|
|
663
|
+
}
|
|
664
|
+
browserDiagnosticSeen.add(key);
|
|
665
|
+
return import_effect3.Effect.sync(() => {
|
|
666
|
+
console.groupCollapsed(
|
|
667
|
+
"%c[Logix]%c " + label + "%c module=" + moduleId,
|
|
668
|
+
"color:#6b7280;font-weight:bold",
|
|
669
|
+
color,
|
|
670
|
+
"color:#9ca3af"
|
|
671
|
+
);
|
|
672
|
+
if (event.severity === "warning") {
|
|
673
|
+
console.warn(detail);
|
|
674
|
+
} else if (event.severity === "info") {
|
|
675
|
+
console.info(detail);
|
|
676
|
+
} else {
|
|
677
|
+
console.error(detail);
|
|
678
|
+
}
|
|
679
|
+
console.groupEnd();
|
|
680
|
+
});
|
|
681
|
+
}
|
|
682
|
+
return import_effect3.Effect.void;
|
|
683
|
+
};
|
|
684
|
+
var browserConsoleSink = {
|
|
685
|
+
record: (event) => {
|
|
686
|
+
if (!isBrowser) {
|
|
687
|
+
return event.type === "lifecycle:error" ? lifecycleErrorLog(event) : event.type === "diagnostic" ? diagnosticLog(event) : import_effect3.Effect.logDebug({ debugEvent: event });
|
|
688
|
+
}
|
|
689
|
+
return renderBrowserConsoleEvent(event);
|
|
690
|
+
}
|
|
691
|
+
};
|
|
692
|
+
var browserConsoleLayer = import_effect3.Layer.succeed(currentDebugSinks, [browserConsoleSink]);
|
|
693
|
+
var browserDiagnosticConsoleSink = {
|
|
694
|
+
record: (event) => {
|
|
695
|
+
if (!isBrowser) {
|
|
696
|
+
return event.type === "lifecycle:error" ? lifecycleErrorLog(event) : event.type === "diagnostic" && event.severity !== "info" ? diagnosticLog(event) : import_effect3.Effect.void;
|
|
697
|
+
}
|
|
698
|
+
return event.type === "lifecycle:error" || event.type === "diagnostic" && event.severity !== "info" ? renderBrowserConsoleEvent(event) : import_effect3.Effect.void;
|
|
699
|
+
}
|
|
700
|
+
};
|
|
701
|
+
var browserDiagnosticConsoleLayer = import_effect3.Layer.succeed(currentDebugSinks, [browserDiagnosticConsoleSink]);
|
|
702
|
+
var browserPrettyLoggerLayer = import_effect3.Layer.effect(
|
|
703
|
+
import_effect3.Logger.CurrentLoggers,
|
|
704
|
+
import_effect3.Effect.gen(function* () {
|
|
705
|
+
const current = yield* import_effect3.Effect.service(import_effect3.Logger.CurrentLoggers);
|
|
706
|
+
return new Set(
|
|
707
|
+
[...current].filter((logger) => logger !== import_effect3.Logger.defaultLogger).concat(import_effect3.Logger.consolePretty({ mode: "browser", colors: true }))
|
|
708
|
+
);
|
|
709
|
+
})
|
|
710
|
+
);
|
|
711
|
+
|
|
712
|
+
// src/internal/runtime/core/TaskRunner.ts
|
|
713
|
+
var import_effect6 = require("effect");
|
|
714
|
+
|
|
715
|
+
// src/internal/runtime/core/ModeRunner.ts
|
|
716
|
+
var import_effect5 = require("effect");
|
|
717
|
+
|
|
718
|
+
// src/internal/runtime/core/LatestFiberSlot.ts
|
|
719
|
+
var import_effect4 = require("effect");
|
|
720
|
+
|
|
721
|
+
// src/internal/runtime/core/TaskRunner.ts
|
|
722
|
+
var inSyncTransactionFiber = import_effect6.ServiceMap.Reference("@logixjs/core/TaskRunner.inSyncTransactionFiber", {
|
|
723
|
+
defaultValue: () => false
|
|
724
|
+
});
|
|
725
|
+
var forceSourceRefresh = import_effect6.ServiceMap.Reference("@logixjs/core/TaskRunner.forceSourceRefresh", {
|
|
726
|
+
defaultValue: () => false
|
|
727
|
+
});
|
|
728
|
+
|
|
729
|
+
// src/internal/runtime/core/DeclarativeLinkRuntime.ts
|
|
730
|
+
var import_effect8 = require("effect");
|
|
731
|
+
var makeDeclarativeLinkRuntime = () => {
|
|
732
|
+
const moduleAsSourceById = /* @__PURE__ */ new Map();
|
|
733
|
+
const moduleAsSourceIdsBySource = /* @__PURE__ */ new Map();
|
|
734
|
+
const declarativeById = /* @__PURE__ */ new Map();
|
|
735
|
+
const declarativeReadNodesBySource = /* @__PURE__ */ new Map();
|
|
736
|
+
const registerModuleAsSourceLink = (link) => {
|
|
737
|
+
const stored = {
|
|
738
|
+
...link,
|
|
739
|
+
hasValue: false,
|
|
740
|
+
lastValue: void 0
|
|
741
|
+
};
|
|
742
|
+
moduleAsSourceById.set(link.id, stored);
|
|
743
|
+
const set = moduleAsSourceIdsBySource.get(link.sourceModuleInstanceKey) ?? /* @__PURE__ */ new Set();
|
|
744
|
+
set.add(link.id);
|
|
745
|
+
moduleAsSourceIdsBySource.set(link.sourceModuleInstanceKey, set);
|
|
746
|
+
return () => {
|
|
747
|
+
moduleAsSourceById.delete(link.id);
|
|
748
|
+
const current = moduleAsSourceIdsBySource.get(link.sourceModuleInstanceKey);
|
|
749
|
+
if (!current) return;
|
|
750
|
+
current.delete(link.id);
|
|
751
|
+
if (current.size === 0) {
|
|
752
|
+
moduleAsSourceIdsBySource.delete(link.sourceModuleInstanceKey);
|
|
753
|
+
}
|
|
754
|
+
};
|
|
755
|
+
};
|
|
756
|
+
const registerDeclarativeLink = (link) => {
|
|
757
|
+
const readNodeById = /* @__PURE__ */ new Map();
|
|
758
|
+
for (const n of link.readNodes) {
|
|
759
|
+
readNodeById.set(n.nodeId, n);
|
|
760
|
+
}
|
|
761
|
+
const dispatchNodeById = /* @__PURE__ */ new Map();
|
|
762
|
+
for (const n of link.dispatchNodes) {
|
|
763
|
+
dispatchNodeById.set(n.nodeId, n);
|
|
764
|
+
}
|
|
765
|
+
const incomingByDispatch = /* @__PURE__ */ new Map();
|
|
766
|
+
for (const e of link.ir.edges) {
|
|
767
|
+
const to = e.to;
|
|
768
|
+
const isDispatch = dispatchNodeById.has(to);
|
|
769
|
+
if (!isDispatch) continue;
|
|
770
|
+
incomingByDispatch.set(to, (incomingByDispatch.get(to) ?? 0) + 1);
|
|
771
|
+
const count = incomingByDispatch.get(to) ?? 0;
|
|
772
|
+
if (count > 1) {
|
|
773
|
+
throw new Error(
|
|
774
|
+
`[DeclarativeLinkRuntime] Invalid DeclarativeLinkIR: dispatch node has multiple incoming edges (linkId=${link.linkId}, nodeId=${to}).`
|
|
775
|
+
);
|
|
776
|
+
}
|
|
777
|
+
}
|
|
778
|
+
const dispatchTargetsByReadNode = /* @__PURE__ */ new Map();
|
|
779
|
+
for (const e of link.ir.edges) {
|
|
780
|
+
const from = e.from;
|
|
781
|
+
const to = e.to;
|
|
782
|
+
if (!readNodeById.has(from)) continue;
|
|
783
|
+
if (!dispatchNodeById.has(to)) continue;
|
|
784
|
+
const list = dispatchTargetsByReadNode.get(from) ?? [];
|
|
785
|
+
list.push(to);
|
|
786
|
+
dispatchTargetsByReadNode.set(from, list);
|
|
787
|
+
}
|
|
788
|
+
const stored = {
|
|
789
|
+
...link,
|
|
790
|
+
readNodeById,
|
|
791
|
+
dispatchNodeById,
|
|
792
|
+
dispatchTargetsByReadNode,
|
|
793
|
+
readNodeState: /* @__PURE__ */ new Map()
|
|
794
|
+
};
|
|
795
|
+
declarativeById.set(link.linkId, stored);
|
|
796
|
+
for (const n of link.readNodes) {
|
|
797
|
+
const list = declarativeReadNodesBySource.get(n.moduleInstanceKey) ?? [];
|
|
798
|
+
list.push({ linkId: link.linkId, nodeId: n.nodeId });
|
|
799
|
+
declarativeReadNodesBySource.set(n.moduleInstanceKey, list);
|
|
800
|
+
}
|
|
801
|
+
return () => {
|
|
802
|
+
declarativeById.delete(link.linkId);
|
|
803
|
+
for (const n of link.readNodes) {
|
|
804
|
+
const list = declarativeReadNodesBySource.get(n.moduleInstanceKey);
|
|
805
|
+
if (!list) continue;
|
|
806
|
+
const next = list.filter((x) => !(x.linkId === link.linkId && x.nodeId === n.nodeId));
|
|
807
|
+
if (next.length === 0) {
|
|
808
|
+
declarativeReadNodesBySource.delete(n.moduleInstanceKey);
|
|
809
|
+
} else {
|
|
810
|
+
declarativeReadNodesBySource.set(n.moduleInstanceKey, next);
|
|
811
|
+
}
|
|
812
|
+
}
|
|
813
|
+
};
|
|
814
|
+
};
|
|
815
|
+
const applyForSources = (args) => import_effect8.Effect.gen(function* () {
|
|
816
|
+
let scheduled = false;
|
|
817
|
+
for (const sourceKey of args.changedModuleInstanceKeys) {
|
|
818
|
+
const ids = moduleAsSourceIdsBySource.get(sourceKey);
|
|
819
|
+
if (!ids || ids.size === 0) continue;
|
|
820
|
+
const commit = args.acceptedModules.get(sourceKey);
|
|
821
|
+
if (!commit) continue;
|
|
822
|
+
for (const id of ids) {
|
|
823
|
+
const link = moduleAsSourceById.get(id);
|
|
824
|
+
if (!link) continue;
|
|
825
|
+
let selected;
|
|
826
|
+
try {
|
|
827
|
+
selected = link.readQuery.select(commit.state);
|
|
828
|
+
} catch {
|
|
829
|
+
continue;
|
|
830
|
+
}
|
|
831
|
+
const nextValue = link.computeValue(selected);
|
|
832
|
+
if (link.hasValue && link.equalsValue(link.lastValue, nextValue)) {
|
|
833
|
+
continue;
|
|
834
|
+
}
|
|
835
|
+
link.hasValue = true;
|
|
836
|
+
link.lastValue = nextValue;
|
|
837
|
+
scheduled = true;
|
|
838
|
+
yield* link.applyValue(nextValue);
|
|
839
|
+
}
|
|
840
|
+
}
|
|
841
|
+
for (const sourceKey of args.changedModuleInstanceKeys) {
|
|
842
|
+
const refs = declarativeReadNodesBySource.get(sourceKey);
|
|
843
|
+
if (!refs || refs.length === 0) continue;
|
|
844
|
+
const commit = args.acceptedModules.get(sourceKey);
|
|
845
|
+
if (!commit) continue;
|
|
846
|
+
for (const ref of refs) {
|
|
847
|
+
const link = declarativeById.get(ref.linkId);
|
|
848
|
+
if (!link) continue;
|
|
849
|
+
const readNode = link.readNodeById.get(ref.nodeId);
|
|
850
|
+
if (!readNode) continue;
|
|
851
|
+
let value;
|
|
852
|
+
try {
|
|
853
|
+
value = readNode.readQuery.select(commit.state);
|
|
854
|
+
} catch {
|
|
855
|
+
continue;
|
|
856
|
+
}
|
|
857
|
+
const state = link.readNodeState.get(ref.nodeId) ?? { hasValue: false, lastValue: void 0 };
|
|
858
|
+
const changed = !state.hasValue || !Object.is(state.lastValue, value);
|
|
859
|
+
if (!changed) continue;
|
|
860
|
+
state.hasValue = true;
|
|
861
|
+
state.lastValue = value;
|
|
862
|
+
link.readNodeState.set(ref.nodeId, state);
|
|
863
|
+
const targets = link.dispatchTargetsByReadNode.get(ref.nodeId) ?? [];
|
|
864
|
+
for (const dispatchNodeId of targets) {
|
|
865
|
+
const node = link.dispatchNodeById.get(dispatchNodeId);
|
|
866
|
+
if (!node) continue;
|
|
867
|
+
scheduled = true;
|
|
868
|
+
yield* node.dispatch(value);
|
|
869
|
+
}
|
|
870
|
+
}
|
|
871
|
+
}
|
|
872
|
+
return { scheduled };
|
|
873
|
+
});
|
|
874
|
+
return {
|
|
875
|
+
registerModuleAsSourceLink,
|
|
876
|
+
registerDeclarativeLink,
|
|
877
|
+
applyForSources
|
|
878
|
+
};
|
|
879
|
+
};
|
|
880
|
+
|
|
881
|
+
// src/internal/runtime/core/env.ts
|
|
117
882
|
var getNodeEnv = () => {
|
|
118
883
|
try {
|
|
119
884
|
const env = globalThis?.process?.env;
|
|
@@ -123,31 +888,54 @@ var getNodeEnv = () => {
|
|
|
123
888
|
}
|
|
124
889
|
};
|
|
125
890
|
var isDevEnv = () => getNodeEnv() !== "production";
|
|
126
|
-
var StateTransactionConfigTagImpl = class extends
|
|
891
|
+
var StateTransactionConfigTagImpl = class extends import_effect9.ServiceMap.Service()("@logixjs/core/StateTransactionRuntimeConfig") {
|
|
892
|
+
};
|
|
893
|
+
var ReadQueryStrictGateConfigTagImpl = class extends import_effect9.ServiceMap.Service()("@logixjs/core/ReadQueryStrictGateRuntimeConfig") {
|
|
894
|
+
};
|
|
895
|
+
var ReplayModeConfigTagImpl = class extends import_effect9.ServiceMap.Service()("@logixjs/core/ReplayModeConfig") {
|
|
127
896
|
};
|
|
128
|
-
var
|
|
897
|
+
var StateTransactionOverridesTagImpl = class extends import_effect9.ServiceMap.Service()("@logixjs/core/StateTransactionOverrides") {
|
|
129
898
|
};
|
|
130
|
-
var
|
|
899
|
+
var SchedulingPolicySurfaceTagImpl = class extends import_effect9.ServiceMap.Service()("@logixjs/core/SchedulingPolicySurface") {
|
|
131
900
|
};
|
|
132
|
-
var
|
|
901
|
+
var SchedulingPolicySurfaceOverridesTagImpl = class extends import_effect9.ServiceMap.Service()("@logixjs/core/SchedulingPolicySurfaceOverrides") {
|
|
133
902
|
};
|
|
134
|
-
var
|
|
903
|
+
var RuntimeStoreTag = class extends import_effect9.ServiceMap.Service()("@logixjs/core/RuntimeStore") {
|
|
135
904
|
};
|
|
136
|
-
var
|
|
905
|
+
var runtimeStoreLayer = import_effect9.Layer.effect(
|
|
906
|
+
RuntimeStoreTag,
|
|
907
|
+
import_effect9.Effect.acquireRelease(
|
|
908
|
+
import_effect9.Effect.sync(() => makeRuntimeStore()),
|
|
909
|
+
(store) => import_effect9.Effect.sync(() => store.dispose())
|
|
910
|
+
)
|
|
911
|
+
);
|
|
912
|
+
var HostSchedulerTag = class extends import_effect9.ServiceMap.Service()("@logixjs/core/HostScheduler") {
|
|
913
|
+
};
|
|
914
|
+
var hostSchedulerLayer = import_effect9.Layer.succeed(
|
|
915
|
+
HostSchedulerTag,
|
|
916
|
+
getGlobalHostScheduler()
|
|
917
|
+
);
|
|
918
|
+
var DeclarativeLinkRuntimeTag = class extends import_effect9.ServiceMap.Service()("@logixjs/core/DeclarativeLinkRuntime") {
|
|
919
|
+
};
|
|
920
|
+
var declarativeLinkRuntimeLayer = import_effect9.Layer.succeed(
|
|
921
|
+
DeclarativeLinkRuntimeTag,
|
|
922
|
+
makeDeclarativeLinkRuntime()
|
|
923
|
+
);
|
|
924
|
+
var TickSchedulerTag = class extends import_effect9.ServiceMap.Service()("@logixjs/core/TickScheduler") {
|
|
137
925
|
};
|
|
138
926
|
|
|
139
927
|
// src/internal/runtime/core/RuntimeKernel.ts
|
|
140
|
-
var RuntimeServicesRuntimeConfigTagImpl = class extends
|
|
928
|
+
var RuntimeServicesRuntimeConfigTagImpl = class extends import_effect10.ServiceMap.Service()("@logixjs/core/RuntimeServicesRuntimeConfig") {
|
|
141
929
|
};
|
|
142
930
|
var RuntimeServicesRuntimeConfigTag = RuntimeServicesRuntimeConfigTagImpl;
|
|
143
|
-
var RuntimeServicesProviderOverridesTagImpl = class extends
|
|
931
|
+
var RuntimeServicesProviderOverridesTagImpl = class extends import_effect10.ServiceMap.Service()("@logixjs/core/RuntimeServicesProviderOverrides") {
|
|
144
932
|
};
|
|
145
|
-
var RuntimeServicesInstanceOverridesTagImpl = class extends
|
|
933
|
+
var RuntimeServicesInstanceOverridesTagImpl = class extends import_effect10.ServiceMap.Service()("@logixjs/core/RuntimeServicesInstanceOverrides") {
|
|
146
934
|
};
|
|
147
|
-
var FullCutoverGateModeTagImpl = class extends
|
|
935
|
+
var FullCutoverGateModeTagImpl = class extends import_effect10.ServiceMap.Service()("@logixjs/core/FullCutoverGateMode") {
|
|
148
936
|
};
|
|
149
937
|
var FullCutoverGateModeTag = FullCutoverGateModeTagImpl;
|
|
150
|
-
var RuntimeServicesRegistryTagImpl = class extends
|
|
938
|
+
var RuntimeServicesRegistryTagImpl = class extends import_effect10.ServiceMap.Service()("@logixjs/core/RuntimeServicesRegistry") {
|
|
151
939
|
};
|
|
152
940
|
var RuntimeServicesRegistryTag = RuntimeServicesRegistryTagImpl;
|
|
153
941
|
var RUNTIME_SERVICES_EVIDENCE = /* @__PURE__ */ Symbol.for("@logixjs/core/runtimeServicesEvidence");
|
|
@@ -183,7 +971,7 @@ var getRuntimeServicesEvidence = (runtime) => {
|
|
|
183
971
|
};
|
|
184
972
|
|
|
185
973
|
// src/internal/runtime/core/KernelRef.ts
|
|
186
|
-
var
|
|
974
|
+
var import_effect11 = require("effect");
|
|
187
975
|
var isKernelId = (value) => typeof value === "string" && value.length > 0 && /^[a-z0-9-]+$/.test(value);
|
|
188
976
|
var defaultKernelImplementationRef = {
|
|
189
977
|
kernelId: "core",
|
|
@@ -212,7 +1000,7 @@ var isKernelImplementationRef = (value) => {
|
|
|
212
1000
|
}
|
|
213
1001
|
return true;
|
|
214
1002
|
};
|
|
215
|
-
var KernelImplementationRefTagImpl = class extends
|
|
1003
|
+
var KernelImplementationRefTagImpl = class extends import_effect11.ServiceMap.Service()("@logixjs/core/KernelImplementationRef") {
|
|
216
1004
|
};
|
|
217
1005
|
var KernelImplementationRefTag = KernelImplementationRefTagImpl;
|
|
218
1006
|
var KERNEL_IMPLEMENTATION_REF = /* @__PURE__ */ Symbol.for("@logixjs/core/kernelImplementationRef");
|
|
@@ -238,8 +1026,8 @@ var getKernelImplementationRef = (runtime) => {
|
|
|
238
1026
|
};
|
|
239
1027
|
|
|
240
1028
|
// src/internal/runtime/core/RuntimeServiceBuiltins.ts
|
|
241
|
-
var
|
|
242
|
-
var RuntimeServiceBuiltinsTag = class extends
|
|
1029
|
+
var import_effect12 = require("effect");
|
|
1030
|
+
var RuntimeServiceBuiltinsTag = class extends import_effect12.ServiceMap.Service()("@logixjs/core/RuntimeServiceBuiltins") {
|
|
243
1031
|
};
|
|
244
1032
|
|
|
245
1033
|
// src/Kernel.ts
|
|
@@ -256,14 +1044,14 @@ var evaluateFullCutoverGate2 = (args) => {
|
|
|
256
1044
|
});
|
|
257
1045
|
};
|
|
258
1046
|
var KernelContractMetaAllowlist = [];
|
|
259
|
-
var kernelLayer = (ref) =>
|
|
260
|
-
var runtimeDefaultServicesOverridesLayer = (services) =>
|
|
1047
|
+
var kernelLayer = (ref) => import_effect13.Layer.succeed(KernelImplementationRefTag, ref);
|
|
1048
|
+
var runtimeDefaultServicesOverridesLayer = (services) => import_effect13.Layer.succeed(RuntimeServicesRuntimeConfigTag, {
|
|
261
1049
|
services
|
|
262
1050
|
});
|
|
263
1051
|
var getRuntimeServicesEvidence2 = getRuntimeServicesEvidence;
|
|
264
1052
|
var getKernelImplementationRef2 = getKernelImplementationRef;
|
|
265
|
-
var runtimeServicesRegistryLayer = (registry) =>
|
|
266
|
-
var fullCutoverGateModeLayer = (mode) =>
|
|
1053
|
+
var runtimeServicesRegistryLayer = (registry) => import_effect13.Layer.succeed(RuntimeServicesRegistryTag, registry);
|
|
1054
|
+
var fullCutoverGateModeLayer = (mode) => import_effect13.Layer.succeed(FullCutoverGateModeTag, mode);
|
|
267
1055
|
var isKernelFullyActivated = (evidence) => !evidence.overridesApplied.some((s) => s.includes("fallback="));
|
|
268
1056
|
// Annotate the CommonJS export names for ESM import in node:
|
|
269
1057
|
0 && (module.exports = {
|