@graphrefly/graphrefly 0.37.0 → 0.39.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/dist/budget-gate-CmmVtasH.d.ts +115 -0
- package/dist/budget-gate-DiP_nK0n.d.cts +115 -0
- package/dist/{cascading-BsJ4GbnS.d.ts → cascading-BzuxW0_w.d.cts} +2 -2
- package/dist/{cascading-B25wxpRa.d.cts → cascading-g2_rhhaM.d.ts} +2 -2
- package/dist/chunk-35JTVPOX.js +1 -0
- package/dist/chunk-3G5U5QNE.js +5 -0
- package/dist/chunk-4I45FVQS.js +1 -0
- package/dist/chunk-5LK7XMEV.js +1 -0
- package/dist/chunk-5XRI6RM3.js +1 -0
- package/dist/chunk-73PBQNST.js +1 -0
- package/dist/chunk-7JRF5YEK.js +3 -0
- package/dist/{chunk-YVYSO5CW.js → chunk-7NZMZJMW.js} +1 -1
- package/dist/chunk-7QFRK3N3.js +84 -0
- package/dist/{chunk-K6ZFJ473.js → chunk-7SD73DS6.js} +1 -1
- package/dist/{chunk-LOQRPP4Y.js → chunk-A6ZSKGUG.js} +1 -1
- package/dist/{chunk-KUVDFOJH.js → chunk-AU7YTQX7.js} +1 -1
- package/dist/chunk-C72GO4IZ.js +1 -0
- package/dist/{chunk-Q7EUZ6NN.js → chunk-CGDMTXSY.js} +1 -1
- package/dist/chunk-D27JNOLZ.js +1 -0
- package/dist/chunk-D47YVDR5.js +1 -0
- package/dist/chunk-EWF7KCDJ.js +61 -0
- package/dist/{chunk-PCD2MU7X.js → chunk-GEAO3TL3.js} +1 -1
- package/dist/chunk-GX5LSSRE.js +1 -0
- package/dist/{chunk-2C4NESZE.js → chunk-HAWKGIXM.js} +1 -1
- package/dist/chunk-HX3EGQ5Z.js +1 -0
- package/dist/{chunk-MQZWA3DF.js → chunk-IA7DUNGB.js} +1 -1
- package/dist/{chunk-MYFR67PY.js → chunk-INH6FS2G.js} +2 -2
- package/dist/chunk-INHC33EH.js +1 -0
- package/dist/chunk-IUB4NYI2.js +1 -0
- package/dist/{chunk-TFK4P4CX.js → chunk-JNMC2WJ6.js} +1 -1
- package/dist/{chunk-TLS7M7H4.js → chunk-KD4NHLMU.js} +1 -1
- package/dist/chunk-L6NSJVJZ.js +1 -0
- package/dist/chunk-L7WY6TZS.js +1 -0
- package/dist/chunk-LQNOXGET.js +1 -0
- package/dist/chunk-MC4UYY2X.js +1 -0
- package/dist/{chunk-U3COB5WU.js → chunk-N7UIBZCW.js} +1 -1
- package/dist/chunk-NQI2C36M.js +1 -0
- package/dist/chunk-R75BMDLA.js +1 -0
- package/dist/chunk-RF3QZP6D.js +1 -0
- package/dist/{chunk-MC5LZG3U.js → chunk-S2U57TFC.js} +1 -1
- package/dist/{chunk-QP5TH523.js → chunk-SC7BQDNP.js} +1 -1
- package/dist/{chunk-5CPPC75H.js → chunk-TFPZLQ5H.js} +1 -1
- package/dist/chunk-VJJLIEAL.js +1 -0
- package/dist/chunk-WHIZM6JV.js +1 -0
- package/dist/chunk-XEUANKBO.js +43 -0
- package/dist/chunk-XQ55HO5N.js +1 -0
- package/dist/chunk-ZJ7SM3G2.js +1 -0
- package/dist/{chunk-T4U24DXX.js → chunk-ZOX3LBRV.js} +1 -1
- package/dist/compat/index.cjs +9 -13
- package/dist/compat/index.d.cts +16 -16
- package/dist/compat/index.d.ts +16 -16
- package/dist/compat/index.js +1 -1
- package/dist/compat/jotai/index.d.cts +2 -2
- package/dist/compat/jotai/index.d.ts +2 -2
- package/dist/compat/nanostores/index.d.cts +2 -2
- package/dist/compat/nanostores/index.d.ts +2 -2
- package/dist/compat/nestjs/index.cjs +8 -12
- package/dist/compat/nestjs/index.d.cts +8 -8
- package/dist/compat/nestjs/index.d.ts +8 -8
- package/dist/compat/nestjs/index.js +1 -1
- package/dist/compat/react/index.d.cts +2 -2
- package/dist/compat/react/index.d.ts +2 -2
- package/dist/compat/solid/index.d.cts +2 -2
- package/dist/compat/solid/index.d.ts +2 -2
- package/dist/compat/svelte/index.d.cts +2 -2
- package/dist/compat/svelte/index.d.ts +2 -2
- package/dist/compat/vue/index.d.cts +2 -2
- package/dist/compat/vue/index.d.ts +2 -2
- package/dist/compat/zustand/index.cjs +3 -7
- package/dist/compat/zustand/index.d.cts +4 -4
- package/dist/compat/zustand/index.d.ts +4 -4
- package/dist/compat/zustand/index.js +1 -1
- package/dist/{composite-_XckYx2e.d.cts → composite-CKd0e2vz.d.cts} +10 -3
- package/dist/{composite-CT_mApQD.d.ts → composite-DGatA-JK.d.ts} +10 -3
- package/dist/core/index.cjs +1 -1
- package/dist/core/index.d.cts +4 -4
- package/dist/core/index.d.ts +4 -4
- package/dist/core/index.js +1 -1
- package/dist/extra/browser.d.cts +1 -1
- package/dist/extra/browser.d.ts +1 -1
- package/dist/extra/index.cjs +17 -21
- package/dist/extra/index.d.cts +11 -9
- package/dist/extra/index.d.ts +11 -9
- package/dist/extra/index.js +1 -1
- package/dist/extra/node.cjs +2 -2
- package/dist/extra/node.d.cts +108 -2
- package/dist/extra/node.d.ts +108 -2
- package/dist/extra/node.js +2 -2
- package/dist/extra/operators.cjs +1 -1
- package/dist/extra/operators.d.cts +1 -1
- package/dist/extra/operators.d.ts +1 -1
- package/dist/extra/operators.js +1 -1
- package/dist/extra/reactive.cjs +1 -1
- package/dist/extra/reactive.d.cts +3 -3
- package/dist/extra/reactive.d.ts +3 -3
- package/dist/extra/reactive.js +1 -1
- package/dist/extra/render/index.cjs +5 -0
- package/dist/extra/render/index.d.cts +183 -0
- package/dist/extra/render/index.d.ts +183 -0
- package/dist/extra/render/index.js +1 -0
- package/dist/extra/sources.cjs +1 -1
- package/dist/extra/sources.d.cts +1 -1
- package/dist/extra/sources.d.ts +1 -1
- package/dist/extra/sources.js +1 -1
- package/dist/extra/storage-browser.d.cts +1 -1
- package/dist/extra/storage-browser.d.ts +1 -1
- package/dist/extra/storage-tiers-browser.d.cts +76 -5
- package/dist/extra/storage-tiers-browser.d.ts +76 -5
- package/dist/extra/storage-tiers-node.d.cts +137 -13
- package/dist/extra/storage-tiers-node.d.ts +137 -13
- package/dist/extra/storage-tiers.d.cts +151 -23
- package/dist/extra/storage-tiers.d.ts +151 -23
- package/dist/{fallback-axI2cXwt.d.cts → fallback-8JYU8tlT.d.cts} +1 -1
- package/dist/{fallback-DuEXfA4F.d.ts → fallback-CMZl39L5.d.ts} +1 -1
- package/dist/graph/index.cjs +7 -7
- package/dist/graph/index.d.cts +5 -5
- package/dist/graph/index.d.ts +5 -5
- package/dist/graph/index.js +1 -1
- package/dist/{graph-YQXDndFy.d.ts → graph-30XSgtVX.d.ts} +287 -104
- package/dist/{graph-CaNXUc3c.d.cts → graph-BUwMAxJI.d.cts} +287 -104
- package/dist/{index-CIcu6fIR.d.ts → index-2n8Eai6M.d.ts} +1 -1
- package/dist/{index-BmLkcDlj.d.ts → index-89FczVZ_.d.ts} +47 -71
- package/dist/{index-Ci358GSC.d.cts → index-8R1vzNOx.d.cts} +9 -9
- package/dist/{index-CDvC1m5p.d.ts → index-B2RUoIUz.d.ts} +1 -1
- package/dist/{index-DuhOdNyg.d.ts → index-B41Asm7D.d.ts} +10 -8
- package/dist/{index-CKcnuQ2c.d.ts → index-B9fmw5n2.d.ts} +4 -6
- package/dist/{index-0qOD-421.d.ts → index-BAlaVimV.d.ts} +9 -9
- package/dist/{index-Ae6L8liv.d.ts → index-BC9VybQs.d.ts} +41 -48
- package/dist/{index-CUTHDZ7Q.d.ts → index-BEHmxORq.d.ts} +11 -11
- package/dist/{index-C_qi0WlF.d.cts → index-BJ26eEjs.d.cts} +26 -19
- package/dist/{index-BiomL7AW.d.ts → index-BJSZxSFX.d.ts} +1 -1
- package/dist/{index-DCAuN9u5.d.cts → index-BKMdnYnk.d.ts} +75 -39
- package/dist/{index-DfAo9WKr.d.ts → index-BM9szD8n.d.cts} +14 -6
- package/dist/{index-CajEOoAN.d.ts → index-BUPVld1w.d.ts} +2 -2
- package/dist/{index-C-pFD_FV.d.ts → index-BXd6OMEy.d.ts} +3 -3
- package/dist/index-BhUaMYm_.d.ts +113 -0
- package/dist/{index-DAKm44My.d.cts → index-BndG0cpK.d.cts} +3 -3
- package/dist/{index-Bpzw8hx3.d.ts → index-Br3WnqEn.d.ts} +84 -9
- package/dist/{index-D6tRNEKz.d.cts → index-BskfDoZ_.d.ts} +14 -6
- package/dist/{index-9mbs_PIG.d.ts → index-C19qqa38.d.ts} +4 -4
- package/dist/{index-fHKHdAso.d.ts → index-C7VV_qOs.d.ts} +4 -4
- package/dist/{index-CLPQyYY5.d.cts → index-CIRG8Hxp.d.cts} +11 -11
- package/dist/{index-B3D_z0Z6.d.cts → index-CL7oilfm.d.cts} +1 -1
- package/dist/{index-BOfHwQc1.d.ts → index-CPhBvRJU.d.ts} +1 -1
- package/dist/{index-B9qJmmv3.d.cts → index-CWHtYmSh.d.cts} +1 -1
- package/dist/{index-D_d1erkR.d.ts → index-Cey6VTnX.d.ts} +8 -5
- package/dist/{resilience-BWP2c7Af.d.cts → index-CmqiJZKM.d.ts} +141 -23
- package/dist/{index-JYtN9uqM.d.ts → index-CoM4rzyB.d.ts} +1 -1
- package/dist/{index-DTYIRT_v.d.cts → index-CpLpJb6A.d.cts} +8 -5
- package/dist/{index-BjWZARLy.d.ts → index-Ctb7_2sG.d.ts} +1 -1
- package/dist/index-CusEP3Sv.d.ts +210 -0
- package/dist/{resilience-Bys63Cpd.d.ts → index-CwP_KAMS.d.cts} +141 -23
- package/dist/{index-BFuVcqL8.d.cts → index-D3ayz3hy.d.cts} +1 -1
- package/dist/{index-CrpjECS6.d.cts → index-DCbE8fFM.d.cts} +3 -3
- package/dist/{index-D_DThl_J.d.cts → index-DIHcMLr6.d.cts} +1 -1
- package/dist/index-DINuaZlJ.d.cts +210 -0
- package/dist/{index-9xhIaM-w.d.cts → index-DOBLxOti.d.cts} +1 -1
- package/dist/index-DQUVq1_d.d.ts +374 -0
- package/dist/{index-B1IcU--K.d.cts → index-DTtBpuQy.d.cts} +4 -6
- package/dist/{index-D_QQ_dTD.d.cts → index-DYTBbF8T.d.cts} +1 -1
- package/dist/{index-DqtXA3yX.d.cts → index-DlgHqQxW.d.cts} +84 -9
- package/dist/{index-D1E1tqHT.d.ts → index-DlrWu9Hs.d.cts} +75 -39
- package/dist/{index-DcWbx58m.d.cts → index-DoYc8BWK.d.cts} +41 -48
- package/dist/{index-D0ZxFXYl.d.ts → index-DszPlZzK.d.ts} +3 -3
- package/dist/{index-BECJ8M0T.d.cts → index-DyM4tFAe.d.cts} +10 -8
- package/dist/{index-D11pGlaI.d.cts → index-FVoPvhAu.d.cts} +4 -4
- package/dist/{index-BwtIbzSV.d.cts → index-H_I66pav.d.cts} +2 -2
- package/dist/{index-e1m3ZHgc.d.cts → index-IwFqHxCs.d.cts} +2 -2
- package/dist/index-K-vl_c6A.d.cts +113 -0
- package/dist/{index-C4N-dg5U.d.cts → index-KlZ_ZUip.d.cts} +2 -2
- package/dist/index-L8XI8Zql.d.cts +374 -0
- package/dist/{index-D8IyqHvT.d.cts → index-MxYuWOrf.d.cts} +6 -4
- package/dist/{index-CpZKtdMw.d.cts → index-PgwvGWa1.d.cts} +1 -1
- package/dist/{index-B46GWgk3.d.ts → index-PlJ3MraE.d.ts} +1 -1
- package/dist/{index-DPqR3wdW.d.ts → index-PqbnoScQ.d.ts} +3 -3
- package/dist/{index-CU3z8Cel.d.cts → index-PsVHpPwP.d.cts} +3 -3
- package/dist/{index-C0tga1_x.d.ts → index-WyFKER-c.d.ts} +2 -2
- package/dist/{index-B5UR87KG.d.ts → index-eaQuGJnv.d.ts} +6 -4
- package/dist/{index-CzIWlnPp.d.ts → index-iTX5IqSP.d.ts} +140 -9
- package/dist/{index-CRycrNfn.d.ts → index-jKLph6cu.d.ts} +2 -2
- package/dist/{index-BhLA9feT.d.ts → index-jr6PuSBt.d.ts} +26 -19
- package/dist/{index-4IwO4mH2.d.cts → index-mNwgxC21.d.cts} +140 -9
- package/dist/{index-CkN8CZlT.d.cts → index-pVDQcbar.d.cts} +47 -71
- package/dist/{index-D6pwWiOc.d.cts → index-xZYcDqFH.d.cts} +4 -4
- package/dist/{index-8OxXae3g.d.ts → index-yLt-aPMp.d.ts} +1 -1
- package/dist/{index-CqSJ25A9.d.cts → index-z8WFPVI8.d.cts} +1 -1
- package/dist/index.cjs +64 -60
- package/dist/index.d.cts +48 -47
- package/dist/index.d.ts +48 -47
- package/dist/index.js +1 -1
- package/dist/meta-Ct9nqQS5.d.cts +102 -0
- package/dist/meta-D8OyedKp.d.ts +102 -0
- package/dist/{node-fSc-hCv8.d.cts → node-BYInONRr.d.cts} +3 -3
- package/dist/{node-fSc-hCv8.d.ts → node-BYInONRr.d.ts} +3 -3
- package/dist/{observable-Cqty11jG.d.cts → observable-DMIlYJV1.d.cts} +1 -1
- package/dist/{observable-EAV_rNfM.d.ts → observable-DO8DDEzv.d.ts} +1 -1
- package/dist/patterns/ai/browser.cjs +5 -5
- package/dist/patterns/ai/browser.d.cts +4 -4
- package/dist/patterns/ai/browser.d.ts +4 -4
- package/dist/patterns/ai/browser.js +1 -1
- package/dist/patterns/ai/index.cjs +17 -21
- package/dist/patterns/ai/index.d.cts +17 -17
- package/dist/patterns/ai/index.d.ts +17 -17
- package/dist/patterns/ai/index.js +1 -1
- package/dist/patterns/ai/node.cjs +1 -1
- package/dist/patterns/ai/node.d.cts +4 -4
- package/dist/patterns/ai/node.d.ts +4 -4
- package/dist/patterns/ai/node.js +1 -1
- package/dist/patterns/audit/index.cjs +3 -7
- package/dist/patterns/audit/index.d.cts +6 -6
- package/dist/patterns/audit/index.d.ts +6 -6
- package/dist/patterns/audit/index.js +1 -1
- package/dist/patterns/cqrs/index.cjs +3 -7
- package/dist/patterns/cqrs/index.d.cts +6 -6
- package/dist/patterns/cqrs/index.d.ts +6 -6
- package/dist/patterns/cqrs/index.js +1 -1
- package/dist/patterns/demo-shell/index.cjs +5 -8
- package/dist/patterns/demo-shell/index.d.cts +5 -5
- package/dist/patterns/demo-shell/index.d.ts +5 -5
- package/dist/patterns/demo-shell/index.js +1 -1
- package/dist/patterns/domain-templates/index.cjs +3 -7
- package/dist/patterns/domain-templates/index.d.cts +4 -4
- package/dist/patterns/domain-templates/index.d.ts +4 -4
- package/dist/patterns/domain-templates/index.js +1 -1
- package/dist/patterns/graphspec/index.cjs +38 -38
- package/dist/patterns/graphspec/index.d.cts +5 -5
- package/dist/patterns/graphspec/index.d.ts +5 -5
- package/dist/patterns/graphspec/index.js +1 -1
- package/dist/patterns/guarded-execution/index.cjs +3 -7
- package/dist/patterns/guarded-execution/index.d.cts +7 -7
- package/dist/patterns/guarded-execution/index.d.ts +7 -7
- package/dist/patterns/guarded-execution/index.js +1 -1
- package/dist/patterns/harness/index.cjs +8 -12
- package/dist/patterns/harness/index.d.cts +12 -12
- package/dist/patterns/harness/index.d.ts +12 -12
- package/dist/patterns/harness/index.js +1 -1
- package/dist/patterns/job-queue/index.cjs +3 -7
- package/dist/patterns/job-queue/index.d.cts +6 -6
- package/dist/patterns/job-queue/index.d.ts +6 -6
- package/dist/patterns/job-queue/index.js +1 -1
- package/dist/patterns/lens/index.cjs +3 -7
- package/dist/patterns/lens/index.d.cts +6 -6
- package/dist/patterns/lens/index.d.ts +6 -6
- package/dist/patterns/lens/index.js +1 -1
- package/dist/patterns/memory/index.cjs +3 -7
- package/dist/patterns/memory/index.d.cts +7 -5
- package/dist/patterns/memory/index.d.ts +7 -5
- package/dist/patterns/memory/index.js +1 -1
- package/dist/patterns/messaging/index.cjs +3 -7
- package/dist/patterns/messaging/index.d.cts +5 -5
- package/dist/patterns/messaging/index.d.ts +5 -5
- package/dist/patterns/messaging/index.js +1 -1
- package/dist/patterns/orchestration/index.cjs +3 -7
- package/dist/patterns/orchestration/index.d.cts +8 -8
- package/dist/patterns/orchestration/index.d.ts +8 -8
- package/dist/patterns/orchestration/index.js +1 -1
- package/dist/patterns/process/index.cjs +1 -1
- package/dist/patterns/process/index.d.cts +7 -7
- package/dist/patterns/process/index.d.ts +7 -7
- package/dist/patterns/process/index.js +1 -1
- package/dist/patterns/reactive-layout/index.cjs +4 -8
- package/dist/patterns/reactive-layout/index.d.cts +5 -5
- package/dist/patterns/reactive-layout/index.d.ts +5 -5
- package/dist/patterns/reactive-layout/index.js +1 -1
- package/dist/patterns/reduction/index.cjs +3 -7
- package/dist/patterns/reduction/index.d.cts +4 -4
- package/dist/patterns/reduction/index.d.ts +4 -4
- package/dist/patterns/reduction/index.js +1 -1
- package/dist/patterns/refine-loop/index.cjs +5 -9
- package/dist/patterns/refine-loop/index.d.cts +6 -6
- package/dist/patterns/refine-loop/index.d.ts +6 -6
- package/dist/patterns/refine-loop/index.js +1 -1
- package/dist/patterns/resilient-pipeline/index.cjs +1 -1
- package/dist/patterns/resilient-pipeline/index.d.cts +4 -8
- package/dist/patterns/resilient-pipeline/index.d.ts +4 -8
- package/dist/patterns/resilient-pipeline/index.js +1 -1
- package/dist/patterns/surface/index.cjs +13 -17
- package/dist/patterns/surface/index.d.cts +6 -6
- package/dist/patterns/surface/index.d.ts +6 -6
- package/dist/patterns/surface/index.js +1 -1
- package/dist/{pipeline-graph-BrrYGjuZ.d.cts → pipeline-graph-BQPr2Lqs.d.cts} +34 -17
- package/dist/{pipeline-graph-DX2Twdj-.d.ts → pipeline-graph-D8vKcO_p.d.ts} +34 -17
- package/dist/{reactive-layout-DrGjuwyC.d.cts → reactive-layout-8CSc0tiA.d.cts} +2 -2
- package/dist/{reactive-layout-BDdngW56.d.ts → reactive-layout-DkTXxtSy.d.ts} +2 -2
- package/dist/{reactive-log-jirQsxMY.d.ts → reactive-log-BlAsPLl2.d.ts} +30 -3
- package/dist/{reactive-log-ScpWyqny.d.cts → reactive-log-_zeEnB9H.d.cts} +30 -3
- package/dist/{reactive-map-DmgeADH8.d.cts → reactive-map-B2qfD3hb.d.cts} +1 -1
- package/dist/{reactive-map-CHyeCf4D.d.ts → reactive-map-jFIsE6Kt.d.ts} +1 -1
- package/dist/resilience-HTF2LBRS.js +1 -0
- package/dist/{sugar-D13E2M_z.d.ts → sugar-BhfjgetH.d.ts} +1 -1
- package/dist/{sugar-DgaGJcI6.d.cts → sugar-DzePN5-g.d.cts} +1 -1
- package/dist/{topology-tree-BkhmMg2a.d.cts → topology-tree-B5Ngw3j0.d.cts} +1 -1
- package/dist/{topology-tree-BI665P0L.d.ts → topology-tree-BtvbgMXJ.d.ts} +1 -1
- package/dist/{types-BMSGPlpO.d.cts → types-1Dhoi7HM.d.cts} +1 -1
- package/dist/{types-CidcBDuk.d.ts → types-39jk0kaV.d.ts} +1 -1
- package/package.json +11 -1
- package/dist/chunk-4EATTNAE.js +0 -1
- package/dist/chunk-533RQFF6.js +0 -1
- package/dist/chunk-6SVKZ7VI.js +0 -1
- package/dist/chunk-A5HZZYRK.js +0 -1
- package/dist/chunk-B4L5X2QO.js +0 -7
- package/dist/chunk-C5CBVOCB.js +0 -1
- package/dist/chunk-CZIQ6JCE.js +0 -1
- package/dist/chunk-FJ6IEMOS.js +0 -1
- package/dist/chunk-FMI4CWFL.js +0 -1
- package/dist/chunk-G6Q3DUMJ.js +0 -1
- package/dist/chunk-GDDPCDLG.js +0 -1
- package/dist/chunk-GFOT6UBB.js +0 -1
- package/dist/chunk-JJTF75VS.js +0 -1
- package/dist/chunk-K2WYIVHM.js +0 -1
- package/dist/chunk-KTWBUJO5.js +0 -61
- package/dist/chunk-M27MVZCP.js +0 -1
- package/dist/chunk-NKKUUKPD.js +0 -43
- package/dist/chunk-O32GJOUJ.js +0 -1
- package/dist/chunk-QKBCTKH7.js +0 -1
- package/dist/chunk-QWVQIL3T.js +0 -1
- package/dist/chunk-UODQF4EY.js +0 -1
- package/dist/chunk-WGST56ZH.js +0 -80
- package/dist/chunk-WSLN4JFO.js +0 -1
- package/dist/chunk-XIJKEXWR.js +0 -1
- package/dist/imperative-audit-ahAE65a9.d.cts +0 -28
- package/dist/imperative-audit-ahAE65a9.d.ts +0 -28
- package/dist/index-BCq12BqB.d.ts +0 -139
- package/dist/index-BokynmA4.d.cts +0 -186
- package/dist/index-DXz9uwcs.d.ts +0 -186
- package/dist/index-DbWwMWiB.d.cts +0 -139
- package/dist/meta-BGO6C7K9.d.cts +0 -41
- package/dist/meta-CC6EPdpK.d.ts +0 -41
- package/dist/resilience-OBU472D2.js +0 -1
|
@@ -15,14 +15,48 @@ type IndexedDbBackendSpec = {
|
|
|
15
15
|
version?: number;
|
|
16
16
|
};
|
|
17
17
|
/**
|
|
18
|
-
* IndexedDB backend
|
|
19
|
-
*
|
|
18
|
+
* Creates an IndexedDB backend for browser-based persistent storage.
|
|
19
|
+
*
|
|
20
|
+
* All operations (`read`, `write`, `delete`, `list`) are async and return
|
|
21
|
+
* `Promise`. The backing object store is created automatically on first open
|
|
22
|
+
* if it does not already exist.
|
|
23
|
+
*
|
|
24
|
+
* @param spec - Database name, object store name, and optional schema version.
|
|
25
|
+
* @returns `StorageBackend` backed by an IndexedDB object store.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```ts
|
|
29
|
+
* import { indexedDbBackend, snapshotStorage } from "@graphrefly/graphrefly/extra/browser";
|
|
30
|
+
*
|
|
31
|
+
* const backend = indexedDbBackend({ dbName: "my-app", storeName: "snapshots" });
|
|
32
|
+
* const tier = snapshotStorage(backend, { name: "graph1" });
|
|
33
|
+
* await tier.save({ name: "graph1", state: {} });
|
|
34
|
+
* ```
|
|
20
35
|
*
|
|
21
36
|
* @category extra
|
|
22
37
|
*/
|
|
23
38
|
declare function indexedDbBackend(spec: IndexedDbBackendSpec): StorageBackend;
|
|
24
39
|
/**
|
|
25
|
-
* IndexedDB snapshot tier
|
|
40
|
+
* Creates an IndexedDB snapshot tier backed by an `indexedDbBackend`.
|
|
41
|
+
*
|
|
42
|
+
* Convenience wrapper for `snapshotStorage(indexedDbBackend(spec), opts)`.
|
|
43
|
+
* All reads and writes are async via IndexedDB. Requires a browser or
|
|
44
|
+
* browser-compatible environment.
|
|
45
|
+
*
|
|
46
|
+
* @param spec - Database name, object store name, and optional schema version.
|
|
47
|
+
* @param opts - Optional snapshot storage options (name, codec, filter, keyOf, debounce, compactEvery).
|
|
48
|
+
* @returns `SnapshotStorageTier<T>` backed by IndexedDB.
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```ts
|
|
52
|
+
* import { indexedDbSnapshot } from "@graphrefly/graphrefly/extra/browser";
|
|
53
|
+
*
|
|
54
|
+
* const tier = indexedDbSnapshot<{ count: number }>(
|
|
55
|
+
* { dbName: "my-app", storeName: "snapshots" },
|
|
56
|
+
* { name: "counter" },
|
|
57
|
+
* );
|
|
58
|
+
* await tier.save({ count: 1 });
|
|
59
|
+
* ```
|
|
26
60
|
*
|
|
27
61
|
* @category extra
|
|
28
62
|
*/
|
|
@@ -30,7 +64,25 @@ declare function indexedDbSnapshot<T>(spec: IndexedDbBackendSpec, opts?: Omit<Sn
|
|
|
30
64
|
name?: string;
|
|
31
65
|
}): SnapshotStorageTier<T>;
|
|
32
66
|
/**
|
|
33
|
-
* IndexedDB append-log tier
|
|
67
|
+
* Creates an IndexedDB append-log tier backed by an `indexedDbBackend`.
|
|
68
|
+
*
|
|
69
|
+
* Convenience wrapper for `appendLogStorage(indexedDbBackend(spec), opts)`.
|
|
70
|
+
* All reads and writes are async via IndexedDB. Requires a browser or
|
|
71
|
+
* browser-compatible environment.
|
|
72
|
+
*
|
|
73
|
+
* @param spec - Database name, object store name, and optional schema version.
|
|
74
|
+
* @param opts - Optional append-log storage options (name, codec, keyOf, debounce, compactEvery).
|
|
75
|
+
* @returns `AppendLogStorageTier<T>` backed by IndexedDB.
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* ```ts
|
|
79
|
+
* import { indexedDbAppendLog } from "@graphrefly/graphrefly/extra/browser";
|
|
80
|
+
*
|
|
81
|
+
* const tier = indexedDbAppendLog<{ type: string }>(
|
|
82
|
+
* { dbName: "my-app", storeName: "events" },
|
|
83
|
+
* );
|
|
84
|
+
* await tier.appendEntries([{ type: "init" }]);
|
|
85
|
+
* ```
|
|
34
86
|
*
|
|
35
87
|
* @category extra
|
|
36
88
|
*/
|
|
@@ -38,7 +90,26 @@ declare function indexedDbAppendLog<T>(spec: IndexedDbBackendSpec, opts?: Omit<A
|
|
|
38
90
|
name?: string;
|
|
39
91
|
}): AppendLogStorageTier<T>;
|
|
40
92
|
/**
|
|
41
|
-
* IndexedDB
|
|
93
|
+
* Creates an IndexedDB key-value tier backed by an `indexedDbBackend`.
|
|
94
|
+
*
|
|
95
|
+
* Convenience wrapper for `kvStorage(indexedDbBackend(spec), opts)`.
|
|
96
|
+
* All reads and writes are async via IndexedDB. Requires a browser or
|
|
97
|
+
* browser-compatible environment.
|
|
98
|
+
*
|
|
99
|
+
* @param spec - Database name, object store name, and optional schema version.
|
|
100
|
+
* @param opts - Optional kv storage options (name, codec, filter, debounce, compactEvery).
|
|
101
|
+
* @returns `KvStorageTier<T>` backed by IndexedDB.
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* ```ts
|
|
105
|
+
* import { indexedDbKv } from "@graphrefly/graphrefly/extra/browser";
|
|
106
|
+
*
|
|
107
|
+
* const kv = indexedDbKv<{ score: number }>(
|
|
108
|
+
* { dbName: "my-app", storeName: "scores" },
|
|
109
|
+
* );
|
|
110
|
+
* await kv.save("player1", { score: 100 });
|
|
111
|
+
* const val = await kv.load("player1");
|
|
112
|
+
* ```
|
|
42
113
|
*
|
|
43
114
|
* @category extra
|
|
44
115
|
*/
|
|
@@ -15,14 +15,48 @@ type IndexedDbBackendSpec = {
|
|
|
15
15
|
version?: number;
|
|
16
16
|
};
|
|
17
17
|
/**
|
|
18
|
-
* IndexedDB backend
|
|
19
|
-
*
|
|
18
|
+
* Creates an IndexedDB backend for browser-based persistent storage.
|
|
19
|
+
*
|
|
20
|
+
* All operations (`read`, `write`, `delete`, `list`) are async and return
|
|
21
|
+
* `Promise`. The backing object store is created automatically on first open
|
|
22
|
+
* if it does not already exist.
|
|
23
|
+
*
|
|
24
|
+
* @param spec - Database name, object store name, and optional schema version.
|
|
25
|
+
* @returns `StorageBackend` backed by an IndexedDB object store.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```ts
|
|
29
|
+
* import { indexedDbBackend, snapshotStorage } from "@graphrefly/graphrefly/extra/browser";
|
|
30
|
+
*
|
|
31
|
+
* const backend = indexedDbBackend({ dbName: "my-app", storeName: "snapshots" });
|
|
32
|
+
* const tier = snapshotStorage(backend, { name: "graph1" });
|
|
33
|
+
* await tier.save({ name: "graph1", state: {} });
|
|
34
|
+
* ```
|
|
20
35
|
*
|
|
21
36
|
* @category extra
|
|
22
37
|
*/
|
|
23
38
|
declare function indexedDbBackend(spec: IndexedDbBackendSpec): StorageBackend;
|
|
24
39
|
/**
|
|
25
|
-
* IndexedDB snapshot tier
|
|
40
|
+
* Creates an IndexedDB snapshot tier backed by an `indexedDbBackend`.
|
|
41
|
+
*
|
|
42
|
+
* Convenience wrapper for `snapshotStorage(indexedDbBackend(spec), opts)`.
|
|
43
|
+
* All reads and writes are async via IndexedDB. Requires a browser or
|
|
44
|
+
* browser-compatible environment.
|
|
45
|
+
*
|
|
46
|
+
* @param spec - Database name, object store name, and optional schema version.
|
|
47
|
+
* @param opts - Optional snapshot storage options (name, codec, filter, keyOf, debounce, compactEvery).
|
|
48
|
+
* @returns `SnapshotStorageTier<T>` backed by IndexedDB.
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```ts
|
|
52
|
+
* import { indexedDbSnapshot } from "@graphrefly/graphrefly/extra/browser";
|
|
53
|
+
*
|
|
54
|
+
* const tier = indexedDbSnapshot<{ count: number }>(
|
|
55
|
+
* { dbName: "my-app", storeName: "snapshots" },
|
|
56
|
+
* { name: "counter" },
|
|
57
|
+
* );
|
|
58
|
+
* await tier.save({ count: 1 });
|
|
59
|
+
* ```
|
|
26
60
|
*
|
|
27
61
|
* @category extra
|
|
28
62
|
*/
|
|
@@ -30,7 +64,25 @@ declare function indexedDbSnapshot<T>(spec: IndexedDbBackendSpec, opts?: Omit<Sn
|
|
|
30
64
|
name?: string;
|
|
31
65
|
}): SnapshotStorageTier<T>;
|
|
32
66
|
/**
|
|
33
|
-
* IndexedDB append-log tier
|
|
67
|
+
* Creates an IndexedDB append-log tier backed by an `indexedDbBackend`.
|
|
68
|
+
*
|
|
69
|
+
* Convenience wrapper for `appendLogStorage(indexedDbBackend(spec), opts)`.
|
|
70
|
+
* All reads and writes are async via IndexedDB. Requires a browser or
|
|
71
|
+
* browser-compatible environment.
|
|
72
|
+
*
|
|
73
|
+
* @param spec - Database name, object store name, and optional schema version.
|
|
74
|
+
* @param opts - Optional append-log storage options (name, codec, keyOf, debounce, compactEvery).
|
|
75
|
+
* @returns `AppendLogStorageTier<T>` backed by IndexedDB.
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* ```ts
|
|
79
|
+
* import { indexedDbAppendLog } from "@graphrefly/graphrefly/extra/browser";
|
|
80
|
+
*
|
|
81
|
+
* const tier = indexedDbAppendLog<{ type: string }>(
|
|
82
|
+
* { dbName: "my-app", storeName: "events" },
|
|
83
|
+
* );
|
|
84
|
+
* await tier.appendEntries([{ type: "init" }]);
|
|
85
|
+
* ```
|
|
34
86
|
*
|
|
35
87
|
* @category extra
|
|
36
88
|
*/
|
|
@@ -38,7 +90,26 @@ declare function indexedDbAppendLog<T>(spec: IndexedDbBackendSpec, opts?: Omit<A
|
|
|
38
90
|
name?: string;
|
|
39
91
|
}): AppendLogStorageTier<T>;
|
|
40
92
|
/**
|
|
41
|
-
* IndexedDB
|
|
93
|
+
* Creates an IndexedDB key-value tier backed by an `indexedDbBackend`.
|
|
94
|
+
*
|
|
95
|
+
* Convenience wrapper for `kvStorage(indexedDbBackend(spec), opts)`.
|
|
96
|
+
* All reads and writes are async via IndexedDB. Requires a browser or
|
|
97
|
+
* browser-compatible environment.
|
|
98
|
+
*
|
|
99
|
+
* @param spec - Database name, object store name, and optional schema version.
|
|
100
|
+
* @param opts - Optional kv storage options (name, codec, filter, debounce, compactEvery).
|
|
101
|
+
* @returns `KvStorageTier<T>` backed by IndexedDB.
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* ```ts
|
|
105
|
+
* import { indexedDbKv } from "@graphrefly/graphrefly/extra/browser";
|
|
106
|
+
*
|
|
107
|
+
* const kv = indexedDbKv<{ score: number }>(
|
|
108
|
+
* { dbName: "my-app", storeName: "scores" },
|
|
109
|
+
* );
|
|
110
|
+
* await kv.save("player1", { score: 100 });
|
|
111
|
+
* const val = await kv.load("player1");
|
|
112
|
+
* ```
|
|
42
113
|
*
|
|
43
114
|
* @category extra
|
|
44
115
|
*/
|
|
@@ -10,15 +10,45 @@ import { AppendLogStorageOptions, AppendLogStorageTier, StorageBackend, KvStorag
|
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
|
-
*
|
|
14
|
-
*
|
|
13
|
+
* Creates a filesystem backend that maps each key to a file under `dir`.
|
|
14
|
+
*
|
|
15
|
+
* Writes are atomic via temp + rename. Keys are percent-encoded to safe
|
|
16
|
+
* filenames; `list(prefix)` enumerates `.bin` files in the directory.
|
|
17
|
+
*
|
|
18
|
+
* @param dir - Directory path where key files are stored (created on first write).
|
|
19
|
+
* @returns `StorageBackend` backed by the filesystem under `dir`.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```ts
|
|
23
|
+
* import { fileBackend, snapshotStorage } from "@graphrefly/graphrefly/extra/node";
|
|
24
|
+
*
|
|
25
|
+
* const backend = fileBackend("./checkpoints");
|
|
26
|
+
* const tier = snapshotStorage(backend, { name: "my-graph" });
|
|
27
|
+
* await tier.save({ name: "my-graph", state: { count: 1 } });
|
|
28
|
+
* ```
|
|
15
29
|
*
|
|
16
30
|
* @category extra
|
|
17
31
|
*/
|
|
18
32
|
declare function fileBackend(dir: string): StorageBackend;
|
|
19
33
|
/**
|
|
20
|
-
* SQLite backend
|
|
21
|
-
*
|
|
34
|
+
* Creates a SQLite backend using Node 22.5+ `node:sqlite`.
|
|
35
|
+
*
|
|
36
|
+
* Stores byte values under string keys in a single `graphrefly_storage` table.
|
|
37
|
+
* The caller owns the connection lifetime — call `.close()` for explicit teardown.
|
|
38
|
+
* Requires Node 22.5 or later for `node:sqlite`.
|
|
39
|
+
*
|
|
40
|
+
* @param path - Filesystem path to the SQLite database file (created if absent).
|
|
41
|
+
* @returns `StorageBackend` with an extra `close()` method for explicit teardown.
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```ts
|
|
45
|
+
* import { sqliteBackend, snapshotStorage } from "@graphrefly/graphrefly/extra/node";
|
|
46
|
+
*
|
|
47
|
+
* const backend = sqliteBackend("./state.db");
|
|
48
|
+
* const tier = snapshotStorage(backend, { name: "my-graph" });
|
|
49
|
+
* await tier.save({ name: "my-graph", state: { count: 1 } });
|
|
50
|
+
* backend.close();
|
|
51
|
+
* ```
|
|
22
52
|
*
|
|
23
53
|
* @category extra
|
|
24
54
|
*/
|
|
@@ -26,7 +56,22 @@ declare function sqliteBackend(path: string): StorageBackend & {
|
|
|
26
56
|
close(): void;
|
|
27
57
|
};
|
|
28
58
|
/**
|
|
29
|
-
*
|
|
59
|
+
* Creates a filesystem snapshot tier backed by a `fileBackend` under `dir`.
|
|
60
|
+
*
|
|
61
|
+
* Convenience wrapper for `snapshotStorage(fileBackend(dir), opts)`.
|
|
62
|
+
* Writes are atomic (temp + rename). Requires Node.js with filesystem access.
|
|
63
|
+
*
|
|
64
|
+
* @param dir - Directory path where snapshot files are stored.
|
|
65
|
+
* @param opts - Optional snapshot storage options (name, codec, filter, keyOf, debounce, compactEvery).
|
|
66
|
+
* @returns `SnapshotStorageTier<T>` backed by the filesystem.
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```ts
|
|
70
|
+
* import { fileSnapshot } from "@graphrefly/graphrefly/extra/node";
|
|
71
|
+
*
|
|
72
|
+
* const tier = fileSnapshot<{ count: number }>("./checkpoints", { name: "counter" });
|
|
73
|
+
* await tier.save({ count: 1 });
|
|
74
|
+
* ```
|
|
30
75
|
*
|
|
31
76
|
* @category extra
|
|
32
77
|
*/
|
|
@@ -34,7 +79,22 @@ declare function fileSnapshot<T>(dir: string, opts?: Omit<SnapshotStorageOptions
|
|
|
34
79
|
name?: string;
|
|
35
80
|
}): SnapshotStorageTier<T>;
|
|
36
81
|
/**
|
|
37
|
-
*
|
|
82
|
+
* Creates a filesystem append-log tier backed by a `fileBackend` under `dir`.
|
|
83
|
+
*
|
|
84
|
+
* Convenience wrapper for `appendLogStorage(fileBackend(dir), opts)`.
|
|
85
|
+
* Writes are atomic (temp + rename). Requires Node.js with filesystem access.
|
|
86
|
+
*
|
|
87
|
+
* @param dir - Directory path where append-log files are stored.
|
|
88
|
+
* @param opts - Optional append-log storage options (name, codec, keyOf, debounce, compactEvery).
|
|
89
|
+
* @returns `AppendLogStorageTier<T>` backed by the filesystem.
|
|
90
|
+
*
|
|
91
|
+
* @example
|
|
92
|
+
* ```ts
|
|
93
|
+
* import { fileAppendLog } from "@graphrefly/graphrefly/extra/node";
|
|
94
|
+
*
|
|
95
|
+
* const tier = fileAppendLog<{ type: string; id: number }>("./events");
|
|
96
|
+
* await tier.appendEntries([{ type: "created", id: 1 }]);
|
|
97
|
+
* ```
|
|
38
98
|
*
|
|
39
99
|
* @category extra
|
|
40
100
|
*/
|
|
@@ -42,8 +102,24 @@ declare function fileAppendLog<T>(dir: string, opts?: Omit<AppendLogStorageOptio
|
|
|
42
102
|
name?: string;
|
|
43
103
|
}): AppendLogStorageTier<T>;
|
|
44
104
|
/**
|
|
45
|
-
* SQLite snapshot tier
|
|
46
|
-
*
|
|
105
|
+
* Creates a SQLite snapshot tier; caller owns the connection lifetime.
|
|
106
|
+
*
|
|
107
|
+
* Convenience wrapper for `snapshotStorage(sqliteBackend(path), opts)`.
|
|
108
|
+
* The returned tier exposes an extra `close()` method — call it for explicit
|
|
109
|
+
* teardown of the underlying SQLite connection.
|
|
110
|
+
*
|
|
111
|
+
* @param path - Filesystem path to the SQLite database file.
|
|
112
|
+
* @param opts - Optional snapshot storage options (name, codec, filter, keyOf, debounce, compactEvery).
|
|
113
|
+
* @returns `SnapshotStorageTier<T>` with a `close()` method for connection teardown.
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* ```ts
|
|
117
|
+
* import { sqliteSnapshot } from "@graphrefly/graphrefly/extra/node";
|
|
118
|
+
*
|
|
119
|
+
* const tier = sqliteSnapshot<{ count: number }>("./state.db", { name: "counter" });
|
|
120
|
+
* await tier.save({ count: 42 });
|
|
121
|
+
* tier.close();
|
|
122
|
+
* ```
|
|
47
123
|
*
|
|
48
124
|
* @category extra
|
|
49
125
|
*/
|
|
@@ -53,8 +129,24 @@ declare function sqliteSnapshot<T>(path: string, opts?: Omit<SnapshotStorageOpti
|
|
|
53
129
|
close(): void;
|
|
54
130
|
};
|
|
55
131
|
/**
|
|
56
|
-
* SQLite append-log tier
|
|
57
|
-
*
|
|
132
|
+
* Creates a SQLite append-log tier; caller owns the connection lifetime.
|
|
133
|
+
*
|
|
134
|
+
* Convenience wrapper for `appendLogStorage(sqliteBackend(path), opts)`.
|
|
135
|
+
* The returned tier exposes an extra `close()` method — call it for explicit
|
|
136
|
+
* teardown of the underlying SQLite connection.
|
|
137
|
+
*
|
|
138
|
+
* @param path - Filesystem path to the SQLite database file.
|
|
139
|
+
* @param opts - Optional append-log storage options (name, codec, keyOf, debounce, compactEvery).
|
|
140
|
+
* @returns `AppendLogStorageTier<T>` with a `close()` method for connection teardown.
|
|
141
|
+
*
|
|
142
|
+
* @example
|
|
143
|
+
* ```ts
|
|
144
|
+
* import { sqliteAppendLog } from "@graphrefly/graphrefly/extra/node";
|
|
145
|
+
*
|
|
146
|
+
* const tier = sqliteAppendLog<{ type: string }>("./events.db", { name: "events" });
|
|
147
|
+
* await tier.appendEntries([{ type: "created" }]);
|
|
148
|
+
* tier.close();
|
|
149
|
+
* ```
|
|
58
150
|
*
|
|
59
151
|
* @category extra
|
|
60
152
|
*/
|
|
@@ -64,7 +156,23 @@ declare function sqliteAppendLog<T>(path: string, opts?: Omit<AppendLogStorageOp
|
|
|
64
156
|
close(): void;
|
|
65
157
|
};
|
|
66
158
|
/**
|
|
67
|
-
*
|
|
159
|
+
* Creates a filesystem key-value tier backed by a `fileBackend` under `dir`.
|
|
160
|
+
*
|
|
161
|
+
* Convenience wrapper for `kvStorage(fileBackend(dir), opts)`.
|
|
162
|
+
* Each key is stored as a separate file; writes are atomic (temp + rename).
|
|
163
|
+
*
|
|
164
|
+
* @param dir - Directory path where key files are stored.
|
|
165
|
+
* @param opts - Optional kv storage options (name, codec, filter, debounce, compactEvery).
|
|
166
|
+
* @returns `KvStorageTier<T>` backed by the filesystem.
|
|
167
|
+
*
|
|
168
|
+
* @example
|
|
169
|
+
* ```ts
|
|
170
|
+
* import { fileKv } from "@graphrefly/graphrefly/extra/node";
|
|
171
|
+
*
|
|
172
|
+
* const kv = fileKv<{ score: number }>("./scores");
|
|
173
|
+
* await kv.save("player1", { score: 100 });
|
|
174
|
+
* const val = await kv.load("player1");
|
|
175
|
+
* ```
|
|
68
176
|
*
|
|
69
177
|
* @category extra
|
|
70
178
|
*/
|
|
@@ -72,8 +180,24 @@ declare function fileKv<T>(dir: string, opts?: Omit<KvStorageOptions<T>, "name">
|
|
|
72
180
|
name?: string;
|
|
73
181
|
}): KvStorageTier<T>;
|
|
74
182
|
/**
|
|
75
|
-
* SQLite
|
|
76
|
-
*
|
|
183
|
+
* Creates a SQLite key-value tier; caller owns the connection lifetime.
|
|
184
|
+
*
|
|
185
|
+
* Convenience wrapper for `kvStorage(sqliteBackend(path), opts)`.
|
|
186
|
+
* The returned tier exposes an extra `close()` method — call it for explicit
|
|
187
|
+
* teardown of the underlying SQLite connection.
|
|
188
|
+
*
|
|
189
|
+
* @param path - Filesystem path to the SQLite database file.
|
|
190
|
+
* @param opts - Optional kv storage options (name, codec, filter, debounce, compactEvery).
|
|
191
|
+
* @returns `KvStorageTier<T>` with a `close()` method for connection teardown.
|
|
192
|
+
*
|
|
193
|
+
* @example
|
|
194
|
+
* ```ts
|
|
195
|
+
* import { sqliteKv } from "@graphrefly/graphrefly/extra/node";
|
|
196
|
+
*
|
|
197
|
+
* const kv = sqliteKv<{ score: number }>("./scores.db");
|
|
198
|
+
* await kv.save("player1", { score: 100 });
|
|
199
|
+
* kv.close();
|
|
200
|
+
* ```
|
|
77
201
|
*
|
|
78
202
|
* @category extra
|
|
79
203
|
*/
|
|
@@ -10,15 +10,45 @@ import { AppendLogStorageOptions, AppendLogStorageTier, StorageBackend, KvStorag
|
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
|
-
*
|
|
14
|
-
*
|
|
13
|
+
* Creates a filesystem backend that maps each key to a file under `dir`.
|
|
14
|
+
*
|
|
15
|
+
* Writes are atomic via temp + rename. Keys are percent-encoded to safe
|
|
16
|
+
* filenames; `list(prefix)` enumerates `.bin` files in the directory.
|
|
17
|
+
*
|
|
18
|
+
* @param dir - Directory path where key files are stored (created on first write).
|
|
19
|
+
* @returns `StorageBackend` backed by the filesystem under `dir`.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```ts
|
|
23
|
+
* import { fileBackend, snapshotStorage } from "@graphrefly/graphrefly/extra/node";
|
|
24
|
+
*
|
|
25
|
+
* const backend = fileBackend("./checkpoints");
|
|
26
|
+
* const tier = snapshotStorage(backend, { name: "my-graph" });
|
|
27
|
+
* await tier.save({ name: "my-graph", state: { count: 1 } });
|
|
28
|
+
* ```
|
|
15
29
|
*
|
|
16
30
|
* @category extra
|
|
17
31
|
*/
|
|
18
32
|
declare function fileBackend(dir: string): StorageBackend;
|
|
19
33
|
/**
|
|
20
|
-
* SQLite backend
|
|
21
|
-
*
|
|
34
|
+
* Creates a SQLite backend using Node 22.5+ `node:sqlite`.
|
|
35
|
+
*
|
|
36
|
+
* Stores byte values under string keys in a single `graphrefly_storage` table.
|
|
37
|
+
* The caller owns the connection lifetime — call `.close()` for explicit teardown.
|
|
38
|
+
* Requires Node 22.5 or later for `node:sqlite`.
|
|
39
|
+
*
|
|
40
|
+
* @param path - Filesystem path to the SQLite database file (created if absent).
|
|
41
|
+
* @returns `StorageBackend` with an extra `close()` method for explicit teardown.
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```ts
|
|
45
|
+
* import { sqliteBackend, snapshotStorage } from "@graphrefly/graphrefly/extra/node";
|
|
46
|
+
*
|
|
47
|
+
* const backend = sqliteBackend("./state.db");
|
|
48
|
+
* const tier = snapshotStorage(backend, { name: "my-graph" });
|
|
49
|
+
* await tier.save({ name: "my-graph", state: { count: 1 } });
|
|
50
|
+
* backend.close();
|
|
51
|
+
* ```
|
|
22
52
|
*
|
|
23
53
|
* @category extra
|
|
24
54
|
*/
|
|
@@ -26,7 +56,22 @@ declare function sqliteBackend(path: string): StorageBackend & {
|
|
|
26
56
|
close(): void;
|
|
27
57
|
};
|
|
28
58
|
/**
|
|
29
|
-
*
|
|
59
|
+
* Creates a filesystem snapshot tier backed by a `fileBackend` under `dir`.
|
|
60
|
+
*
|
|
61
|
+
* Convenience wrapper for `snapshotStorage(fileBackend(dir), opts)`.
|
|
62
|
+
* Writes are atomic (temp + rename). Requires Node.js with filesystem access.
|
|
63
|
+
*
|
|
64
|
+
* @param dir - Directory path where snapshot files are stored.
|
|
65
|
+
* @param opts - Optional snapshot storage options (name, codec, filter, keyOf, debounce, compactEvery).
|
|
66
|
+
* @returns `SnapshotStorageTier<T>` backed by the filesystem.
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```ts
|
|
70
|
+
* import { fileSnapshot } from "@graphrefly/graphrefly/extra/node";
|
|
71
|
+
*
|
|
72
|
+
* const tier = fileSnapshot<{ count: number }>("./checkpoints", { name: "counter" });
|
|
73
|
+
* await tier.save({ count: 1 });
|
|
74
|
+
* ```
|
|
30
75
|
*
|
|
31
76
|
* @category extra
|
|
32
77
|
*/
|
|
@@ -34,7 +79,22 @@ declare function fileSnapshot<T>(dir: string, opts?: Omit<SnapshotStorageOptions
|
|
|
34
79
|
name?: string;
|
|
35
80
|
}): SnapshotStorageTier<T>;
|
|
36
81
|
/**
|
|
37
|
-
*
|
|
82
|
+
* Creates a filesystem append-log tier backed by a `fileBackend` under `dir`.
|
|
83
|
+
*
|
|
84
|
+
* Convenience wrapper for `appendLogStorage(fileBackend(dir), opts)`.
|
|
85
|
+
* Writes are atomic (temp + rename). Requires Node.js with filesystem access.
|
|
86
|
+
*
|
|
87
|
+
* @param dir - Directory path where append-log files are stored.
|
|
88
|
+
* @param opts - Optional append-log storage options (name, codec, keyOf, debounce, compactEvery).
|
|
89
|
+
* @returns `AppendLogStorageTier<T>` backed by the filesystem.
|
|
90
|
+
*
|
|
91
|
+
* @example
|
|
92
|
+
* ```ts
|
|
93
|
+
* import { fileAppendLog } from "@graphrefly/graphrefly/extra/node";
|
|
94
|
+
*
|
|
95
|
+
* const tier = fileAppendLog<{ type: string; id: number }>("./events");
|
|
96
|
+
* await tier.appendEntries([{ type: "created", id: 1 }]);
|
|
97
|
+
* ```
|
|
38
98
|
*
|
|
39
99
|
* @category extra
|
|
40
100
|
*/
|
|
@@ -42,8 +102,24 @@ declare function fileAppendLog<T>(dir: string, opts?: Omit<AppendLogStorageOptio
|
|
|
42
102
|
name?: string;
|
|
43
103
|
}): AppendLogStorageTier<T>;
|
|
44
104
|
/**
|
|
45
|
-
* SQLite snapshot tier
|
|
46
|
-
*
|
|
105
|
+
* Creates a SQLite snapshot tier; caller owns the connection lifetime.
|
|
106
|
+
*
|
|
107
|
+
* Convenience wrapper for `snapshotStorage(sqliteBackend(path), opts)`.
|
|
108
|
+
* The returned tier exposes an extra `close()` method — call it for explicit
|
|
109
|
+
* teardown of the underlying SQLite connection.
|
|
110
|
+
*
|
|
111
|
+
* @param path - Filesystem path to the SQLite database file.
|
|
112
|
+
* @param opts - Optional snapshot storage options (name, codec, filter, keyOf, debounce, compactEvery).
|
|
113
|
+
* @returns `SnapshotStorageTier<T>` with a `close()` method for connection teardown.
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* ```ts
|
|
117
|
+
* import { sqliteSnapshot } from "@graphrefly/graphrefly/extra/node";
|
|
118
|
+
*
|
|
119
|
+
* const tier = sqliteSnapshot<{ count: number }>("./state.db", { name: "counter" });
|
|
120
|
+
* await tier.save({ count: 42 });
|
|
121
|
+
* tier.close();
|
|
122
|
+
* ```
|
|
47
123
|
*
|
|
48
124
|
* @category extra
|
|
49
125
|
*/
|
|
@@ -53,8 +129,24 @@ declare function sqliteSnapshot<T>(path: string, opts?: Omit<SnapshotStorageOpti
|
|
|
53
129
|
close(): void;
|
|
54
130
|
};
|
|
55
131
|
/**
|
|
56
|
-
* SQLite append-log tier
|
|
57
|
-
*
|
|
132
|
+
* Creates a SQLite append-log tier; caller owns the connection lifetime.
|
|
133
|
+
*
|
|
134
|
+
* Convenience wrapper for `appendLogStorage(sqliteBackend(path), opts)`.
|
|
135
|
+
* The returned tier exposes an extra `close()` method — call it for explicit
|
|
136
|
+
* teardown of the underlying SQLite connection.
|
|
137
|
+
*
|
|
138
|
+
* @param path - Filesystem path to the SQLite database file.
|
|
139
|
+
* @param opts - Optional append-log storage options (name, codec, keyOf, debounce, compactEvery).
|
|
140
|
+
* @returns `AppendLogStorageTier<T>` with a `close()` method for connection teardown.
|
|
141
|
+
*
|
|
142
|
+
* @example
|
|
143
|
+
* ```ts
|
|
144
|
+
* import { sqliteAppendLog } from "@graphrefly/graphrefly/extra/node";
|
|
145
|
+
*
|
|
146
|
+
* const tier = sqliteAppendLog<{ type: string }>("./events.db", { name: "events" });
|
|
147
|
+
* await tier.appendEntries([{ type: "created" }]);
|
|
148
|
+
* tier.close();
|
|
149
|
+
* ```
|
|
58
150
|
*
|
|
59
151
|
* @category extra
|
|
60
152
|
*/
|
|
@@ -64,7 +156,23 @@ declare function sqliteAppendLog<T>(path: string, opts?: Omit<AppendLogStorageOp
|
|
|
64
156
|
close(): void;
|
|
65
157
|
};
|
|
66
158
|
/**
|
|
67
|
-
*
|
|
159
|
+
* Creates a filesystem key-value tier backed by a `fileBackend` under `dir`.
|
|
160
|
+
*
|
|
161
|
+
* Convenience wrapper for `kvStorage(fileBackend(dir), opts)`.
|
|
162
|
+
* Each key is stored as a separate file; writes are atomic (temp + rename).
|
|
163
|
+
*
|
|
164
|
+
* @param dir - Directory path where key files are stored.
|
|
165
|
+
* @param opts - Optional kv storage options (name, codec, filter, debounce, compactEvery).
|
|
166
|
+
* @returns `KvStorageTier<T>` backed by the filesystem.
|
|
167
|
+
*
|
|
168
|
+
* @example
|
|
169
|
+
* ```ts
|
|
170
|
+
* import { fileKv } from "@graphrefly/graphrefly/extra/node";
|
|
171
|
+
*
|
|
172
|
+
* const kv = fileKv<{ score: number }>("./scores");
|
|
173
|
+
* await kv.save("player1", { score: 100 });
|
|
174
|
+
* const val = await kv.load("player1");
|
|
175
|
+
* ```
|
|
68
176
|
*
|
|
69
177
|
* @category extra
|
|
70
178
|
*/
|
|
@@ -72,8 +180,24 @@ declare function fileKv<T>(dir: string, opts?: Omit<KvStorageOptions<T>, "name">
|
|
|
72
180
|
name?: string;
|
|
73
181
|
}): KvStorageTier<T>;
|
|
74
182
|
/**
|
|
75
|
-
* SQLite
|
|
76
|
-
*
|
|
183
|
+
* Creates a SQLite key-value tier; caller owns the connection lifetime.
|
|
184
|
+
*
|
|
185
|
+
* Convenience wrapper for `kvStorage(sqliteBackend(path), opts)`.
|
|
186
|
+
* The returned tier exposes an extra `close()` method — call it for explicit
|
|
187
|
+
* teardown of the underlying SQLite connection.
|
|
188
|
+
*
|
|
189
|
+
* @param path - Filesystem path to the SQLite database file.
|
|
190
|
+
* @param opts - Optional kv storage options (name, codec, filter, debounce, compactEvery).
|
|
191
|
+
* @returns `KvStorageTier<T>` with a `close()` method for connection teardown.
|
|
192
|
+
*
|
|
193
|
+
* @example
|
|
194
|
+
* ```ts
|
|
195
|
+
* import { sqliteKv } from "@graphrefly/graphrefly/extra/node";
|
|
196
|
+
*
|
|
197
|
+
* const kv = sqliteKv<{ score: number }>("./scores.db");
|
|
198
|
+
* await kv.save("player1", { score: 100 });
|
|
199
|
+
* kv.close();
|
|
200
|
+
* ```
|
|
77
201
|
*
|
|
78
202
|
* @category extra
|
|
79
203
|
*/
|