@graphrefly/graphrefly 0.26.0 → 0.28.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.
Files changed (396) hide show
  1. package/dist/backoff-HPZMEZNF.js +1 -0
  2. package/dist/cascading-B-5zmAUv.d.cts +180 -0
  3. package/dist/cascading-D9WG1-9L.d.ts +180 -0
  4. package/dist/chunk-2FOAM3OR.js +1 -0
  5. package/dist/chunk-2PMCKKRK.js +1 -0
  6. package/dist/chunk-3JXNEPCD.js +2 -0
  7. package/dist/chunk-3R5HFPX7.js +78 -0
  8. package/dist/chunk-4GKB4OUJ.js +1 -0
  9. package/dist/chunk-4VVTGLXJ.js +1 -0
  10. package/dist/chunk-5QDBSZBV.js +1 -0
  11. package/dist/chunk-6QZNQS5B.js +1 -0
  12. package/dist/chunk-6V3SEX2I.js +1 -0
  13. package/dist/chunk-76A3HVQE.js +9 -0
  14. package/dist/chunk-7H6LGFUG.js +64 -0
  15. package/dist/chunk-CK2E7BTU.js +1 -0
  16. package/dist/chunk-CKCSDI7T.js +6 -0
  17. package/dist/chunk-CRXTH3SH.js +1 -0
  18. package/dist/chunk-CWLN3X3N.js +1 -0
  19. package/dist/chunk-D7A7DBE4.js +1 -0
  20. package/dist/chunk-DBGGMN3D.js +1 -0
  21. package/dist/chunk-DQA3UIQ2.js +1 -0
  22. package/dist/chunk-ERLIRFPA.js +1 -0
  23. package/dist/chunk-ESMPEKEV.js +1 -0
  24. package/dist/chunk-ETWTCCJI.js +1 -0
  25. package/dist/chunk-FNYWM6JC.js +1 -0
  26. package/dist/chunk-GHJJR5P4.js +1 -0
  27. package/dist/chunk-GPW2V3RE.js +1 -0
  28. package/dist/chunk-I6VIH3VA.js +1 -0
  29. package/dist/chunk-K2GNMCQT.js +1 -0
  30. package/dist/chunk-LBTDSCCO.js +3 -0
  31. package/dist/chunk-LQ3Y5NJS.js +1 -0
  32. package/dist/chunk-MIQTDPY4.js +5 -0
  33. package/dist/chunk-MTTAAPCK.js +1 -0
  34. package/dist/chunk-OAWLCNJJ.js +1 -0
  35. package/dist/chunk-OBKQQA5I.js +1 -0
  36. package/dist/chunk-OYHGKYQM.js +1 -0
  37. package/dist/chunk-PIOGHC63.js +1 -0
  38. package/dist/chunk-QWAPKG3O.js +2 -0
  39. package/dist/chunk-QYADASLV.js +1 -0
  40. package/dist/chunk-RHESUC3V.js +43 -0
  41. package/dist/chunk-S35VARIR.js +1 -0
  42. package/dist/chunk-SC3U7ETD.js +1 -0
  43. package/dist/chunk-U3AICJKU.js +1 -0
  44. package/dist/chunk-UMBIDLJ4.js +1 -0
  45. package/dist/chunk-UPHHLMHE.js +1 -0
  46. package/dist/chunk-UPXUCFMX.js +1 -0
  47. package/dist/chunk-UWJE5FQA.js +18 -0
  48. package/dist/chunk-V6YQICXZ.js +1 -0
  49. package/dist/chunk-VIMF6LGM.js +1 -0
  50. package/dist/chunk-VJLMUKOI.js +1 -0
  51. package/dist/chunk-VPYBOXVT.js +1 -0
  52. package/dist/chunk-VTPVOGHH.js +1 -0
  53. package/dist/chunk-WQ2BN6X6.js +1 -0
  54. package/dist/chunk-XAUNPIMX.js +1 -0
  55. package/dist/chunk-Y2EMPB3I.js +1 -0
  56. package/dist/chunk-Z4HDAS2Q.js +1 -0
  57. package/dist/chunk-ZB5EHBIO.js +1 -0
  58. package/dist/chunk-ZV2DXV5A.js +23 -0
  59. package/dist/compat/index.cjs +14 -7656
  60. package/dist/compat/index.d.cts +15 -14
  61. package/dist/compat/index.d.ts +15 -14
  62. package/dist/compat/index.js +1 -49
  63. package/dist/compat/jotai/index.cjs +1 -2048
  64. package/dist/compat/jotai/index.d.cts +2 -2
  65. package/dist/compat/jotai/index.d.ts +2 -2
  66. package/dist/compat/jotai/index.js +1 -9
  67. package/dist/compat/nanostores/index.cjs +1 -2175
  68. package/dist/compat/nanostores/index.d.cts +2 -2
  69. package/dist/compat/nanostores/index.d.ts +2 -2
  70. package/dist/compat/nanostores/index.js +1 -23
  71. package/dist/compat/nestjs/index.cjs +14 -6782
  72. package/dist/compat/nestjs/index.d.cts +7 -6
  73. package/dist/compat/nestjs/index.d.ts +7 -6
  74. package/dist/compat/nestjs/index.js +1 -82
  75. package/dist/compat/react/index.cjs +1 -141
  76. package/dist/compat/react/index.d.cts +2 -2
  77. package/dist/compat/react/index.d.ts +2 -2
  78. package/dist/compat/react/index.js +1 -12
  79. package/dist/compat/solid/index.cjs +1 -128
  80. package/dist/compat/solid/index.d.cts +2 -2
  81. package/dist/compat/solid/index.d.ts +2 -2
  82. package/dist/compat/solid/index.js +1 -12
  83. package/dist/compat/svelte/index.cjs +1 -131
  84. package/dist/compat/svelte/index.d.cts +2 -2
  85. package/dist/compat/svelte/index.d.ts +2 -2
  86. package/dist/compat/svelte/index.js +1 -12
  87. package/dist/compat/vue/index.cjs +1 -146
  88. package/dist/compat/vue/index.d.cts +2 -2
  89. package/dist/compat/vue/index.d.ts +2 -2
  90. package/dist/compat/vue/index.js +1 -12
  91. package/dist/compat/zustand/index.cjs +6 -4931
  92. package/dist/compat/zustand/index.d.cts +5 -5
  93. package/dist/compat/zustand/index.d.ts +5 -5
  94. package/dist/compat/zustand/index.js +1 -12
  95. package/dist/composite-B-xqw4Kk.d.cts +69 -0
  96. package/dist/composite-BhbKHbOS.d.ts +69 -0
  97. package/dist/core/index.cjs +1 -2271
  98. package/dist/core/index.d.cts +4 -3
  99. package/dist/core/index.d.ts +4 -3
  100. package/dist/core/index.js +1 -110
  101. package/dist/extra/browser.cjs +1 -0
  102. package/dist/extra/browser.d.cts +3 -0
  103. package/dist/extra/browser.d.ts +3 -0
  104. package/dist/extra/browser.js +1 -0
  105. package/dist/extra/index.cjs +23 -9971
  106. package/dist/extra/index.d.cts +13 -5
  107. package/dist/extra/index.d.ts +13 -5
  108. package/dist/extra/index.js +1 -375
  109. package/dist/extra/node.cjs +3 -0
  110. package/dist/extra/node.d.cts +81 -0
  111. package/dist/extra/node.d.ts +81 -0
  112. package/dist/extra/node.js +2 -0
  113. package/dist/extra/operators.cjs +1 -0
  114. package/dist/extra/operators.d.cts +910 -0
  115. package/dist/extra/operators.d.ts +910 -0
  116. package/dist/extra/operators.js +1 -0
  117. package/dist/extra/reactive.cjs +1 -0
  118. package/dist/extra/reactive.d.cts +352 -0
  119. package/dist/extra/reactive.d.ts +352 -0
  120. package/dist/extra/reactive.js +1 -0
  121. package/dist/extra/sources.cjs +1 -2486
  122. package/dist/extra/sources.d.cts +6 -2
  123. package/dist/extra/sources.d.ts +6 -2
  124. package/dist/extra/sources.js +1 -57
  125. package/dist/extra/storage-browser.cjs +1 -0
  126. package/dist/extra/storage-browser.d.cts +71 -0
  127. package/dist/extra/storage-browser.d.ts +71 -0
  128. package/dist/extra/storage-browser.js +1 -0
  129. package/dist/extra/storage-core.cjs +1 -0
  130. package/dist/extra/storage-core.d.cts +98 -0
  131. package/dist/extra/storage-core.d.ts +98 -0
  132. package/dist/extra/storage-core.js +1 -0
  133. package/dist/extra/storage-node.cjs +2 -0
  134. package/dist/extra/storage-node.d.cts +60 -0
  135. package/dist/extra/storage-node.d.ts +60 -0
  136. package/dist/extra/storage-node.js +1 -0
  137. package/dist/fallback-BaTS7vVY.d.cts +258 -0
  138. package/dist/fallback-eOm3LNxP.d.ts +258 -0
  139. package/dist/graph/index.cjs +6 -5030
  140. package/dist/graph/index.d.cts +6 -5
  141. package/dist/graph/index.d.ts +6 -5
  142. package/dist/graph/index.js +1 -50
  143. package/dist/{graph-6tZ5jEzr.d.cts → graph-BZGRXwOm.d.ts} +134 -31
  144. package/dist/{graph-DQ69XU0g.d.ts → graph-D48Qw9Cg.d.cts} +134 -31
  145. package/dist/index-8FSVk4Uf.d.ts +135 -0
  146. package/dist/index-9oDeHH2u.d.cts +291 -0
  147. package/dist/index-B0c4cmIO.d.ts +207 -0
  148. package/dist/{index-CDAjUFIv.d.ts → index-B1AmmSlb.d.ts} +1 -1
  149. package/dist/{index-Bd_fwmLf.d.cts → index-B2pwesl9.d.cts} +1 -1
  150. package/dist/index-BHvIquRZ.d.ts +1957 -0
  151. package/dist/{index-CPgZ5wRl.d.ts → index-BVHOrDwO.d.ts} +1 -1
  152. package/dist/{index-DrISNAOm.d.ts → index-BWJV63ti.d.ts} +1 -1
  153. package/dist/{index-B_IP40nB.d.cts → index-B_agccPe.d.cts} +1 -1
  154. package/dist/index-BgyGlizc.d.ts +163 -0
  155. package/dist/index-BpA5c4G9.d.ts +357 -0
  156. package/dist/index-BpIFjILY.d.cts +357 -0
  157. package/dist/{index-qldRdbQw.d.ts → index-Bqachn9_.d.ts} +1 -1
  158. package/dist/index-Btib9rsU.d.ts +607 -0
  159. package/dist/{index-BYOHF0zP.d.ts → index-BwM9BEkt.d.ts} +1 -1
  160. package/dist/index-BxJ86YZZ.d.cts +105 -0
  161. package/dist/index-C73n7lo-.d.cts +251 -0
  162. package/dist/index-CEXXwWVH.d.cts +192 -0
  163. package/dist/index-CHEswufn.d.cts +163 -0
  164. package/dist/{index-xdGjv0nO.d.ts → index-CMn8S8Hw.d.ts} +1 -1
  165. package/dist/{index-QBpffFW-.d.cts → index-CRO83MmV.d.cts} +1 -1
  166. package/dist/{index-BjI6ty9z.d.ts → index-CloUk1kY.d.ts} +9 -9
  167. package/dist/index-CpgYhnrG.d.ts +291 -0
  168. package/dist/{index-CUyrtuOf.d.cts → index-Cyojz0AE.d.cts} +1 -1
  169. package/dist/{demo-shell-DEp-nMTl.d.ts → index-CzobVSMr.d.ts} +14 -14
  170. package/dist/index-Czq6ynh8.d.ts +143 -0
  171. package/dist/index-D-YB-Vl3.d.ts +195 -0
  172. package/dist/index-DAlweici.d.ts +231 -0
  173. package/dist/index-DEwTb_fm.d.cts +1957 -0
  174. package/dist/{index-DFhjO4Gg.d.cts → index-DL-rYJrx.d.cts} +1 -1
  175. package/dist/index-DP4ZTkdw.d.ts +139 -0
  176. package/dist/{index-BeIdBfcb.d.cts → index-DUqMOlKZ.d.cts} +200 -2366
  177. package/dist/{index-Bxb5ZYc9.d.cts → index-D_NwnRYS.d.cts} +1 -1
  178. package/dist/index-DaLJvH8Z.d.ts +105 -0
  179. package/dist/index-DcXZBF5a.d.cts +135 -0
  180. package/dist/index-DfyOkTvs.d.ts +321 -0
  181. package/dist/{index-CmnuOibw.d.ts → index-DiOXyAwt.d.ts} +1 -1
  182. package/dist/index-DpHe5e0Q.d.ts +186 -0
  183. package/dist/index-DraikLjn.d.ts +86 -0
  184. package/dist/{index-BEfE8H_G.d.cts → index-DxsnAMWD.d.cts} +9 -9
  185. package/dist/index-DyxjtScX.d.cts +207 -0
  186. package/dist/index-HDpJe9hX.d.ts +251 -0
  187. package/dist/index-O6TgGUBV.d.cts +195 -0
  188. package/dist/{index-B4MP_8V_.d.cts → index-Oi8d8w4R.d.cts} +1 -1
  189. package/dist/{index-BW1z3BN9.d.ts → index-ROpQmGjE.d.ts} +30 -6
  190. package/dist/index-RukJ4DLS.d.cts +607 -0
  191. package/dist/{index-DdD5MVDL.d.ts → index-ZftwfxJM.d.ts} +200 -2366
  192. package/dist/{index-CuYwdKO-.d.ts → index-cByzxQIC.d.cts} +10 -195
  193. package/dist/index-dtN7YA2x.d.cts +143 -0
  194. package/dist/{index-C8mdwMXc.d.cts → index-fM6y00vT.d.cts} +30 -6
  195. package/dist/{index-_oMEWlDq.d.cts → index-m-yHof5p.d.ts} +10 -195
  196. package/dist/index-pXrDMpRO.d.cts +231 -0
  197. package/dist/index-rHJSKsU8.d.cts +186 -0
  198. package/dist/index-rX8HBM5h.d.cts +321 -0
  199. package/dist/{index-CUwyr1Kk.d.cts → index-rnwQly8X.d.cts} +147 -20
  200. package/dist/index-sm373fsH.d.ts +192 -0
  201. package/dist/index-tbf2gKHd.d.cts +139 -0
  202. package/dist/{demo-shell-26p5fVxn.d.cts → index-u15meRxL.d.cts} +14 -14
  203. package/dist/{index-eJ6T_qGM.d.ts → index-umtoWT8K.d.ts} +147 -20
  204. package/dist/index-vscRDkjW.d.cts +86 -0
  205. package/dist/index.cjs +150 -24142
  206. package/dist/index.d.cts +69 -3756
  207. package/dist/index.d.ts +69 -3756
  208. package/dist/index.js +1 -7292
  209. package/dist/{meta-C0-8XW6Q.d.cts → meta-Cgj6zeji.d.cts} +5 -5
  210. package/dist/{meta-BGqSZ7mt.d.ts → meta-CwesDrMD.d.ts} +5 -5
  211. package/dist/{node-C_IBuvX2.d.cts → node-Cc1TniY8.d.cts} +36 -9
  212. package/dist/{node-C_IBuvX2.d.ts → node-Cc1TniY8.d.ts} +36 -9
  213. package/dist/{observable-DCk45RH5.d.ts → observable-Ct-gJ9jI.d.ts} +1 -1
  214. package/dist/{observable-Crr1jgzx.d.cts → observable-glXQoGj2.d.cts} +1 -1
  215. package/dist/patterns/ai/browser.cjs +25 -0
  216. package/dist/patterns/ai/browser.d.cts +127 -0
  217. package/dist/patterns/ai/browser.d.ts +127 -0
  218. package/dist/patterns/ai/browser.js +3 -0
  219. package/dist/patterns/ai/index.cjs +91 -0
  220. package/dist/patterns/ai/index.d.cts +17 -0
  221. package/dist/patterns/ai/index.d.ts +17 -0
  222. package/dist/patterns/ai/index.js +1 -0
  223. package/dist/patterns/ai/node.cjs +2 -0
  224. package/dist/patterns/ai/node.d.cts +58 -0
  225. package/dist/patterns/ai/node.d.ts +58 -0
  226. package/dist/patterns/ai/node.js +1 -0
  227. package/dist/patterns/audit/index.cjs +6 -0
  228. package/dist/patterns/audit/index.d.cts +6 -0
  229. package/dist/patterns/audit/index.d.ts +6 -0
  230. package/dist/patterns/audit/index.js +1 -0
  231. package/dist/patterns/cqrs/index.cjs +6 -0
  232. package/dist/patterns/cqrs/index.d.cts +5 -0
  233. package/dist/patterns/cqrs/index.d.ts +5 -0
  234. package/dist/patterns/cqrs/index.js +1 -0
  235. package/dist/patterns/demo-shell/index.cjs +7 -0
  236. package/dist/patterns/demo-shell/index.d.cts +6 -0
  237. package/dist/patterns/demo-shell/index.d.ts +6 -0
  238. package/dist/patterns/demo-shell/index.js +1 -0
  239. package/dist/patterns/domain-templates/index.cjs +6 -0
  240. package/dist/patterns/domain-templates/index.d.cts +5 -0
  241. package/dist/patterns/domain-templates/index.d.ts +5 -0
  242. package/dist/patterns/domain-templates/index.js +1 -0
  243. package/dist/patterns/graphspec/index.cjs +83 -0
  244. package/dist/patterns/graphspec/index.d.cts +7 -0
  245. package/dist/patterns/graphspec/index.d.ts +7 -0
  246. package/dist/patterns/graphspec/index.js +1 -0
  247. package/dist/patterns/guarded-execution/index.cjs +6 -0
  248. package/dist/patterns/guarded-execution/index.d.cts +7 -0
  249. package/dist/patterns/guarded-execution/index.d.ts +7 -0
  250. package/dist/patterns/guarded-execution/index.js +1 -0
  251. package/dist/patterns/harness/index.cjs +48 -0
  252. package/dist/patterns/harness/index.d.cts +8 -0
  253. package/dist/patterns/harness/index.d.ts +8 -0
  254. package/dist/patterns/harness/index.js +1 -0
  255. package/dist/patterns/job-queue/index.cjs +6 -0
  256. package/dist/patterns/job-queue/index.d.cts +5 -0
  257. package/dist/patterns/job-queue/index.d.ts +5 -0
  258. package/dist/patterns/job-queue/index.js +1 -0
  259. package/dist/patterns/lens/index.cjs +6 -0
  260. package/dist/patterns/lens/index.d.cts +7 -0
  261. package/dist/patterns/lens/index.d.ts +7 -0
  262. package/dist/patterns/lens/index.js +1 -0
  263. package/dist/patterns/memory/index.cjs +6 -0
  264. package/dist/patterns/memory/index.d.cts +5 -0
  265. package/dist/patterns/memory/index.d.ts +5 -0
  266. package/dist/patterns/memory/index.js +1 -0
  267. package/dist/patterns/messaging/index.cjs +6 -0
  268. package/dist/patterns/messaging/index.d.cts +5 -0
  269. package/dist/patterns/messaging/index.d.ts +5 -0
  270. package/dist/patterns/messaging/index.js +1 -0
  271. package/dist/patterns/orchestration/index.cjs +6 -0
  272. package/dist/patterns/orchestration/index.d.cts +6 -0
  273. package/dist/patterns/orchestration/index.d.ts +6 -0
  274. package/dist/patterns/orchestration/index.js +1 -0
  275. package/dist/patterns/reactive-layout/index.cjs +7 -6444
  276. package/dist/patterns/reactive-layout/index.d.cts +6 -6
  277. package/dist/patterns/reactive-layout/index.d.ts +6 -6
  278. package/dist/patterns/reactive-layout/index.js +1 -56
  279. package/dist/patterns/reduction/index.cjs +6 -0
  280. package/dist/patterns/reduction/index.d.cts +5 -0
  281. package/dist/patterns/reduction/index.d.ts +5 -0
  282. package/dist/patterns/reduction/index.js +1 -0
  283. package/dist/patterns/refine-loop/index.cjs +8 -0
  284. package/dist/patterns/refine-loop/index.d.cts +7 -0
  285. package/dist/patterns/refine-loop/index.d.ts +7 -0
  286. package/dist/patterns/refine-loop/index.js +1 -0
  287. package/dist/patterns/resilient-pipeline/index.cjs +1 -0
  288. package/dist/patterns/resilient-pipeline/index.d.cts +7 -0
  289. package/dist/patterns/resilient-pipeline/index.d.ts +7 -0
  290. package/dist/patterns/resilient-pipeline/index.js +1 -0
  291. package/dist/patterns/surface/index.cjs +14 -0
  292. package/dist/patterns/surface/index.d.cts +8 -0
  293. package/dist/patterns/surface/index.d.ts +8 -0
  294. package/dist/patterns/surface/index.js +1 -0
  295. package/dist/{reactive-layout-BaOQefHu.d.cts → reactive-layout-CpYb5qLP.d.cts} +2 -2
  296. package/dist/{reactive-layout-D9gejYXE.d.ts → reactive-layout-D8u4wuUR.d.ts} +2 -2
  297. package/dist/reactive-log-DPzuUDj5.d.cts +190 -0
  298. package/dist/reactive-log-YuH9VYN8.d.ts +190 -0
  299. package/dist/reactive-map-CdbNoSgP.d.ts +238 -0
  300. package/dist/reactive-map-DUeRmb9d.d.cts +238 -0
  301. package/dist/resilience-Ba5-b4WD.d.cts +493 -0
  302. package/dist/resilience-CGRzhnD3.d.ts +493 -0
  303. package/dist/resilience-QAHKANT5.js +1 -0
  304. package/dist/sugar-BV0htudb.d.cts +205 -0
  305. package/dist/sugar-Dtyrq2_q.d.ts +205 -0
  306. package/dist/topology-tree-CYHOwQZ_.d.ts +25 -0
  307. package/dist/topology-tree-DROUdq5B.d.cts +25 -0
  308. package/dist/types-O3GzJY2U.d.cts +401 -0
  309. package/dist/types-u64Ose53.d.ts +401 -0
  310. package/package.json +267 -7
  311. package/dist/chunk-3ZWCKRHX.js +0 -117
  312. package/dist/chunk-3ZWCKRHX.js.map +0 -1
  313. package/dist/chunk-6LDQFTYS.js +0 -102
  314. package/dist/chunk-6LDQFTYS.js.map +0 -1
  315. package/dist/chunk-7TAQJHQV.js +0 -103
  316. package/dist/chunk-7TAQJHQV.js.map +0 -1
  317. package/dist/chunk-AMCG74RZ.js +0 -7000
  318. package/dist/chunk-AMCG74RZ.js.map +0 -1
  319. package/dist/chunk-BVZYTZ5H.js +0 -599
  320. package/dist/chunk-BVZYTZ5H.js.map +0 -1
  321. package/dist/chunk-FQMKGR6L.js +0 -330
  322. package/dist/chunk-FQMKGR6L.js.map +0 -1
  323. package/dist/chunk-HXZEYDUR.js +0 -94
  324. package/dist/chunk-HXZEYDUR.js.map +0 -1
  325. package/dist/chunk-IZYUSJC7.js +0 -1369
  326. package/dist/chunk-IZYUSJC7.js.map +0 -1
  327. package/dist/chunk-J22W6HV3.js +0 -107
  328. package/dist/chunk-J22W6HV3.js.map +0 -1
  329. package/dist/chunk-JSCT3CR4.js +0 -38
  330. package/dist/chunk-JSCT3CR4.js.map +0 -1
  331. package/dist/chunk-JYXEWPH4.js +0 -62
  332. package/dist/chunk-JYXEWPH4.js.map +0 -1
  333. package/dist/chunk-LCE3GF5P.js +0 -866
  334. package/dist/chunk-LCE3GF5P.js.map +0 -1
  335. package/dist/chunk-MJ2NKQQL.js +0 -119
  336. package/dist/chunk-MJ2NKQQL.js.map +0 -1
  337. package/dist/chunk-N6UR7YVY.js +0 -198
  338. package/dist/chunk-N6UR7YVY.js.map +0 -1
  339. package/dist/chunk-OHISZPOJ.js +0 -97
  340. package/dist/chunk-OHISZPOJ.js.map +0 -1
  341. package/dist/chunk-PHOUUNK7.js +0 -2291
  342. package/dist/chunk-PHOUUNK7.js.map +0 -1
  343. package/dist/chunk-RB6QPHJ7.js +0 -393
  344. package/dist/chunk-RB6QPHJ7.js.map +0 -1
  345. package/dist/chunk-SN4YWWYO.js +0 -171
  346. package/dist/chunk-SN4YWWYO.js.map +0 -1
  347. package/dist/chunk-SX52TAR4.js +0 -110
  348. package/dist/chunk-SX52TAR4.js.map +0 -1
  349. package/dist/chunk-THTWHNU4.js +0 -2712
  350. package/dist/chunk-THTWHNU4.js.map +0 -1
  351. package/dist/chunk-VYPWMZ6H.js +0 -98
  352. package/dist/chunk-VYPWMZ6H.js.map +0 -1
  353. package/dist/chunk-XGPU467M.js +0 -136
  354. package/dist/chunk-XGPU467M.js.map +0 -1
  355. package/dist/chunk-ZQMEI34O.js +0 -713
  356. package/dist/chunk-ZQMEI34O.js.map +0 -1
  357. package/dist/compat/index.cjs.map +0 -1
  358. package/dist/compat/index.js.map +0 -1
  359. package/dist/compat/jotai/index.cjs.map +0 -1
  360. package/dist/compat/jotai/index.js.map +0 -1
  361. package/dist/compat/nanostores/index.cjs.map +0 -1
  362. package/dist/compat/nanostores/index.js.map +0 -1
  363. package/dist/compat/nestjs/index.cjs.map +0 -1
  364. package/dist/compat/nestjs/index.js.map +0 -1
  365. package/dist/compat/react/index.cjs.map +0 -1
  366. package/dist/compat/react/index.js.map +0 -1
  367. package/dist/compat/solid/index.cjs.map +0 -1
  368. package/dist/compat/solid/index.js.map +0 -1
  369. package/dist/compat/svelte/index.cjs.map +0 -1
  370. package/dist/compat/svelte/index.js.map +0 -1
  371. package/dist/compat/vue/index.cjs.map +0 -1
  372. package/dist/compat/vue/index.js.map +0 -1
  373. package/dist/compat/zustand/index.cjs.map +0 -1
  374. package/dist/compat/zustand/index.js.map +0 -1
  375. package/dist/core/index.cjs.map +0 -1
  376. package/dist/core/index.js.map +0 -1
  377. package/dist/extra/index.cjs.map +0 -1
  378. package/dist/extra/index.js.map +0 -1
  379. package/dist/extra/sources.cjs.map +0 -1
  380. package/dist/extra/sources.js.map +0 -1
  381. package/dist/graph/index.cjs.map +0 -1
  382. package/dist/graph/index.js.map +0 -1
  383. package/dist/index-C0ZXMaXO.d.cts +0 -392
  384. package/dist/index-CY2TljO4.d.ts +0 -392
  385. package/dist/index.cjs.map +0 -1
  386. package/dist/index.js.map +0 -1
  387. package/dist/patterns/demo-shell.cjs +0 -5604
  388. package/dist/patterns/demo-shell.cjs.map +0 -1
  389. package/dist/patterns/demo-shell.d.cts +0 -6
  390. package/dist/patterns/demo-shell.d.ts +0 -6
  391. package/dist/patterns/demo-shell.js +0 -15
  392. package/dist/patterns/demo-shell.js.map +0 -1
  393. package/dist/patterns/reactive-layout/index.cjs.map +0 -1
  394. package/dist/patterns/reactive-layout/index.js.map +0 -1
  395. package/dist/storage-BMycWEh2.d.ts +0 -190
  396. package/dist/storage-DiqWHzVI.d.cts +0 -190
@@ -1,98 +0,0 @@
1
- import {
2
- NodeImpl,
3
- accessHintForGuard
4
- } from "./chunk-PHOUUNK7.js";
5
-
6
- // src/core/meta.ts
7
- function resolveDescribeFields(detail, fields) {
8
- if (fields != null && fields.length > 0) return new Set(fields);
9
- switch (detail) {
10
- case "standard":
11
- return /* @__PURE__ */ new Set(["type", "status", "value", "deps", "meta", "v"]);
12
- case "full":
13
- return null;
14
- default:
15
- return /* @__PURE__ */ new Set(["type", "deps"]);
16
- }
17
- }
18
- function inferDescribeType(n) {
19
- if (n._describeKind != null) return n._describeKind;
20
- const hasDeps = n._deps.length > 0;
21
- if (!hasDeps) return n._fn != null ? "producer" : "state";
22
- return "derived";
23
- }
24
- function metaSnapshot(node) {
25
- const out = {};
26
- for (const [key, child] of Object.entries(node.meta)) {
27
- try {
28
- out[key] = child.cache;
29
- } catch {
30
- }
31
- }
32
- return out;
33
- }
34
- function describeNode(node, includeFields) {
35
- const all = includeFields == null;
36
- const metaKeys = !all && includeFields != null ? [...includeFields].filter((f) => f.startsWith("meta.")).map((f) => f.slice(5)) : null;
37
- const wantsMeta = all || includeFields.has("meta") || metaKeys != null && metaKeys.length > 0;
38
- let type = "state";
39
- let deps = [];
40
- if (node instanceof NodeImpl) {
41
- type = inferDescribeType(node);
42
- deps = node._deps.map((d) => d.node.name ?? "");
43
- }
44
- const out = { type, deps };
45
- if (all || includeFields.has("status")) {
46
- out.status = node.status;
47
- }
48
- const guard = node instanceof NodeImpl ? node._guard : void 0;
49
- if (wantsMeta) {
50
- const rawMeta = { ...metaSnapshot(node) };
51
- if (guard != null && rawMeta.access === void 0) {
52
- rawMeta.access = accessHintForGuard(guard);
53
- }
54
- if (metaKeys != null && metaKeys.length > 0 && !includeFields.has("meta")) {
55
- const filtered = {};
56
- for (const k of metaKeys) {
57
- if (k in rawMeta) filtered[k] = rawMeta[k];
58
- }
59
- out.meta = filtered;
60
- } else {
61
- out.meta = rawMeta;
62
- }
63
- }
64
- if (node.name != null) {
65
- out.name = node.name;
66
- }
67
- if (all || includeFields.has("value")) {
68
- if (node.status === "sentinel") out.sentinel = true;
69
- try {
70
- out.value = node.cache;
71
- } catch {
72
- }
73
- }
74
- if ((all || includeFields.has("v")) && node.v != null) {
75
- const vInfo = {
76
- id: node.v.id,
77
- version: node.v.version
78
- };
79
- if ("cid" in node.v) {
80
- vInfo.cid = node.v.cid;
81
- vInfo.prev = node.v.prev;
82
- }
83
- out.v = vInfo;
84
- }
85
- if (all || includeFields.has("guard")) {
86
- if (guard != null) out.guard = accessHintForGuard(guard);
87
- }
88
- if (all || includeFields.has("lastMutation")) {
89
- if (node.lastMutation != null) out.lastMutation = node.lastMutation;
90
- }
91
- return out;
92
- }
93
-
94
- export {
95
- resolveDescribeFields,
96
- describeNode
97
- };
98
- //# sourceMappingURL=chunk-VYPWMZ6H.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/core/meta.ts"],"sourcesContent":["import type { Actor } from \"./actor.js\";\nimport { accessHintForGuard } from \"./guard.js\";\nimport { type Node, type NodeDescribeKind, NodeImpl } from \"./node.js\";\n\n/**\n * JSON-shaped slice of a node for `Graph.describe()`\n * (GRAPHREFLY-SPEC §3.6, Appendix B).\n */\nexport type DescribeNodeOutput = {\n\ttype: NodeDescribeKind;\n\tstatus?: Node[\"status\"];\n\tdeps: string[];\n\tmeta?: Record<string, unknown>;\n\tname?: string;\n\tvalue?: unknown;\n\t/** True when the node is in `\"sentinel\"` state (no value ever). */\n\tsentinel?: boolean;\n\tv?: { id: string; version: number; cid?: string; prev?: string | null };\n\tguard?: string;\n\tlastMutation?: Readonly<{ actor: Actor; timestamp_ns: number }>;\n\t/**\n\t * Latest reason annotation attached via `graph.trace(path, reason)`,\n\t * when present. Populated by `Graph.describe` only — `describeNode`\n\t * has no graph context.\n\t */\n\treason?: string;\n};\n\n/** Detail level for progressive disclosure (Phase 3.3b). */\nexport type DescribeDetail = \"minimal\" | \"standard\" | \"full\";\n\n/** Valid field names for `describe({ fields: [...] })`. */\nexport type DescribeField =\n\t| \"type\"\n\t| \"status\"\n\t| \"value\"\n\t| \"deps\"\n\t| \"meta\"\n\t| \"v\"\n\t| \"guard\"\n\t| \"lastMutation\"\n\t| `meta.${string}`;\n\n/** Resolve which fields to include based on detail level or explicit field list. */\nexport function resolveDescribeFields(\n\tdetail?: DescribeDetail,\n\tfields?: readonly DescribeField[],\n): Set<string> | null {\n\tif (fields != null && fields.length > 0) return new Set(fields);\n\tswitch (detail) {\n\t\tcase \"standard\":\n\t\t\treturn new Set([\"type\", \"status\", \"value\", \"deps\", \"meta\", \"v\"]);\n\t\tcase \"full\":\n\t\t\treturn null;\n\t\tdefault:\n\t\t\treturn new Set([\"type\", \"deps\"]);\n\t}\n}\n\nfunction inferDescribeType(n: NodeImpl): NodeDescribeKind {\n\tif (n._describeKind != null) return n._describeKind;\n\tconst hasDeps = n._deps.length > 0;\n\tif (!hasDeps) return n._fn != null ? \"producer\" : \"state\";\n\t// With deps: derived (passthrough falls under derived, no fn → derived shape).\n\treturn \"derived\";\n}\n\n/**\n * Reads the current cached value of every companion meta field on a node,\n * suitable for merging into `describe()`-style JSON.\n *\n * Values come from {@link Node.cache}, which returns the last settled cache.\n * If a meta field is in `\"dirty\"` status (DIRTY received, DATA pending), the\n * snapshot contains the *previous* value — check `node.meta[key].status`\n * when freshness matters.\n */\nexport function metaSnapshot(node: Node): Record<string, unknown> {\n\tconst out: Record<string, unknown> = {};\n\tfor (const [key, child] of Object.entries(node.meta)) {\n\t\ttry {\n\t\t\tout[key] = child.cache;\n\t\t} catch {\n\t\t\t/* omit key — describe tooling still gets other fields */\n\t\t}\n\t}\n\treturn out;\n}\n\n/**\n * Builds a single-node slice of `Graph.describe()` JSON (structure + `meta`\n * snapshot). Parity with `graphrefly-py` `describe_node`.\n */\nexport function describeNode(node: Node, includeFields?: Set<string> | null): DescribeNodeOutput {\n\tconst all = includeFields == null;\n\tconst metaKeys: string[] | null =\n\t\t!all && includeFields != null\n\t\t\t? [...includeFields].filter((f) => f.startsWith(\"meta.\")).map((f) => f.slice(5))\n\t\t\t: null;\n\tconst wantsMeta = all || includeFields!.has(\"meta\") || (metaKeys != null && metaKeys.length > 0);\n\n\tlet type: NodeDescribeKind = \"state\";\n\tlet deps: string[] = [];\n\n\tif (node instanceof NodeImpl) {\n\t\ttype = inferDescribeType(node);\n\t\tdeps = node._deps.map((d) => d.node.name ?? \"\");\n\t}\n\n\tconst out: DescribeNodeOutput = { type, deps };\n\n\tif (all || includeFields!.has(\"status\")) {\n\t\tout.status = node.status;\n\t}\n\n\tconst guard = node instanceof NodeImpl ? node._guard : undefined;\n\n\tif (wantsMeta) {\n\t\tconst rawMeta: Record<string, unknown> = { ...metaSnapshot(node) };\n\t\tif (guard != null && rawMeta.access === undefined) {\n\t\t\trawMeta.access = accessHintForGuard(guard);\n\t\t}\n\t\tif (metaKeys != null && metaKeys.length > 0 && !includeFields!.has(\"meta\")) {\n\t\t\tconst filtered: Record<string, unknown> = {};\n\t\t\tfor (const k of metaKeys) {\n\t\t\t\tif (k in rawMeta) filtered[k] = rawMeta[k];\n\t\t\t}\n\t\t\tout.meta = filtered;\n\t\t} else {\n\t\t\tout.meta = rawMeta;\n\t\t}\n\t}\n\n\tif (node.name != null) {\n\t\tout.name = node.name;\n\t}\n\n\tif (all || includeFields!.has(\"value\")) {\n\t\tif (node.status === \"sentinel\") out.sentinel = true;\n\t\ttry {\n\t\t\tout.value = node.cache;\n\t\t} catch {\n\t\t\t/* omit value */\n\t\t}\n\t}\n\n\tif ((all || includeFields!.has(\"v\")) && node.v != null) {\n\t\tconst vInfo: NonNullable<DescribeNodeOutput[\"v\"]> = {\n\t\t\tid: node.v.id,\n\t\t\tversion: node.v.version,\n\t\t};\n\t\tif (\"cid\" in node.v) {\n\t\t\tvInfo.cid = (node.v as { cid: string }).cid;\n\t\t\tvInfo.prev = (node.v as { prev: string | null }).prev;\n\t\t}\n\t\tout.v = vInfo;\n\t}\n\n\tif (all || includeFields!.has(\"guard\")) {\n\t\tif (guard != null) out.guard = accessHintForGuard(guard);\n\t}\n\n\tif (all || includeFields!.has(\"lastMutation\")) {\n\t\tif (node.lastMutation != null) out.lastMutation = node.lastMutation;\n\t}\n\n\treturn out;\n}\n"],"mappings":"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","names":[]}
@@ -1,136 +0,0 @@
1
- import {
2
- autoTrackNode,
3
- state
4
- } from "./chunk-PHOUUNK7.js";
5
- import {
6
- DATA,
7
- ERROR,
8
- __export
9
- } from "./chunk-SX52TAR4.js";
10
-
11
- // src/compat/jotai/index.ts
12
- var jotai_exports = {};
13
- __export(jotai_exports, {
14
- atom: () => atom
15
- });
16
- function atom(initialOrRead, writeOrOptions, options) {
17
- if (typeof initialOrRead === "function") {
18
- const read = initialOrRead;
19
- if (typeof writeOrOptions === "function") {
20
- return createDerivedAtom(read, writeOrOptions, options);
21
- }
22
- return createDerivedAtom(read, void 0, writeOrOptions);
23
- }
24
- return createPrimitiveAtom(initialOrRead, writeOrOptions);
25
- }
26
- function pull(n) {
27
- let val = n.cache;
28
- let err;
29
- const unsub = n.subscribe((msgs) => {
30
- for (const [t, v] of msgs) {
31
- if (t === DATA) val = v;
32
- if (t === ERROR) err = v;
33
- }
34
- });
35
- unsub();
36
- if (err) throw err;
37
- return val;
38
- }
39
- function createPrimitiveAtom(initial, options) {
40
- const n = state(initial, {
41
- ...options,
42
- resubscribable: true,
43
- resetOnTeardown: true
44
- });
45
- return {
46
- get: () => {
47
- if (n.status === "sentinel") {
48
- return pull(n);
49
- }
50
- return n.cache;
51
- },
52
- // Use `n.emit` (not raw `n.down`) so writes go through the framed
53
- // emit pipeline: bundle() auto-prefixes DIRTY (diamond-safe wave
54
- // coordination) and the equals check folds same-value writes to
55
- // RESOLVED (no spurious subscriber fires).
56
- set: (value) => n.emit(value),
57
- update: (fn) => {
58
- const current = n.status === "sentinel" ? pull(n) : n.cache;
59
- n.emit(fn(current));
60
- },
61
- subscribe: (cb) => {
62
- let initial2 = true;
63
- return n.subscribe((msgs) => {
64
- for (const [t, v] of msgs) {
65
- if (t === DATA) {
66
- if (initial2) {
67
- initial2 = false;
68
- continue;
69
- }
70
- cb(v);
71
- }
72
- }
73
- });
74
- },
75
- meta: n.meta,
76
- _node: n
77
- };
78
- }
79
- function createDerivedAtom(read, write, options) {
80
- const n = autoTrackNode(
81
- (track) => read((a) => {
82
- const dn = a._node;
83
- if (dn.status === "sentinel") {
84
- pull(dn);
85
- }
86
- return track(dn);
87
- }),
88
- {
89
- ...options,
90
- resubscribable: true,
91
- resetOnTeardown: true
92
- }
93
- );
94
- const result = {
95
- get: () => {
96
- if (n.status === "sentinel") {
97
- return pull(n);
98
- }
99
- return n.cache;
100
- },
101
- subscribe: (cb) => {
102
- let initial = true;
103
- return n.subscribe((msgs) => {
104
- for (const [t, v] of msgs) {
105
- if (t === DATA) {
106
- if (initial) {
107
- initial = false;
108
- continue;
109
- }
110
- cb(v);
111
- }
112
- }
113
- });
114
- },
115
- meta: n.meta,
116
- _node: n
117
- };
118
- if (write) {
119
- const getFn = (a) => a.get();
120
- const setFn = (a, value) => a.set(value);
121
- const writable = result;
122
- writable.set = (value) => write(getFn, setFn, value);
123
- writable.update = (fn) => {
124
- const current = n.status === "sentinel" ? pull(n) : n.cache;
125
- return write(getFn, setFn, fn(current));
126
- };
127
- return writable;
128
- }
129
- return result;
130
- }
131
-
132
- export {
133
- atom,
134
- jotai_exports
135
- };
136
- //# sourceMappingURL=chunk-XGPU467M.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/compat/jotai/index.ts"],"sourcesContent":["import { DATA, ERROR, type Messages } from \"../../core/messages.js\";\nimport type { Node } from \"../../core/node.js\";\nimport { autoTrackNode, state } from \"../../core/sugar.js\";\n\n/**\n * Options for creating an atom.\n *\n * @category compat\n */\nexport interface AtomOptions {\n\t/** Optional identifier for the underlying node. */\n\tname?: string;\n\t/** Optional companion meta nodes. */\n\tmeta?: Record<string, unknown>;\n}\n\n/**\n * A read-only Jotai-compatible atom.\n *\n * @category compat\n */\nexport interface ReadableAtom<T> {\n\t/** Returns the current cached value. */\n\tget(): T;\n\t/** Subscribes to value changes. Returns an unsubscribe function. */\n\tsubscribe(callback: (value: T) => void): () => void;\n\t/** Access to companion meta nodes. */\n\treadonly meta: Record<string, Node>;\n\t/** @internal The underlying GraphReFly node. */\n\t_node: Node<T>;\n}\n\n/**\n * A writable Jotai-compatible atom.\n *\n * @category compat\n */\nexport interface WritableAtom<T> extends ReadableAtom<T> {\n\t/** Sets a new value. */\n\tset(value: T): void;\n\t/** Updates the value using a transformation function. */\n\tupdate(fn: (current: T) => T): void;\n}\n\n/** Function type for reading other atoms inside a derived atom. */\nexport type GetFn = <V>(a: ReadableAtom<V>) => V;\n/** Function type for writing to other atoms inside a writable derived atom. */\nexport type SetFn = <V>(a: WritableAtom<V>, value: V) => void;\n\n/** Function that computes the atom's value. */\nexport type ReadFn<T> = (get: GetFn) => T;\n/** Function that handles writes to the atom. */\nexport type WriteFn<T> = (get: GetFn, set: SetFn, value: T) => void;\n\n/**\n * Creates a Jotai-compatible atom built on GraphReFly primitives.\n *\n * Supports three overloads:\n * 1. `atom(initial)` — Writable primitive atom (wraps `state()`).\n * 2. `atom(read)` — Read-only derived atom (wraps `dynamicNode()`).\n * 3. `atom(read, write)` — Writable derived atom.\n *\n * @param initialOrRead - Initial value or a read function.\n * @param writeOrOptions - Write function or options object.\n * @param options - Optional configuration.\n * @returns WritableAtom or ReadableAtom.\n *\n * @example\n * ```ts\n * const count = atom(0);\n * count.set(1);\n * const doubled = atom((get) => get(count)! * 2);\n * ```\n *\n * @category compat\n */\nexport function atom<T>(initial: T, options?: AtomOptions): WritableAtom<T>;\nexport function atom<T>(read: ReadFn<T>, options?: AtomOptions): ReadableAtom<T>;\nexport function atom<T>(read: ReadFn<T>, write: WriteFn<T>, options?: AtomOptions): WritableAtom<T>;\nexport function atom<T>(\n\tinitialOrRead: T | ReadFn<T>,\n\twriteOrOptions?: WriteFn<T> | AtomOptions,\n\toptions?: AtomOptions,\n): ReadableAtom<T> | WritableAtom<T> {\n\tif (typeof initialOrRead === \"function\") {\n\t\tconst read = initialOrRead as ReadFn<T>;\n\t\tif (typeof writeOrOptions === \"function\") {\n\t\t\treturn createDerivedAtom(read, writeOrOptions as WriteFn<T>, options);\n\t\t}\n\t\treturn createDerivedAtom(read, undefined, writeOrOptions as AtomOptions);\n\t}\n\n\treturn createPrimitiveAtom(initialOrRead as T, writeOrOptions as AtomOptions);\n}\n\nfunction pull<T>(n: Node<T>): T {\n\tlet val: T | undefined | null = n.cache;\n\tlet err: any;\n\tconst unsub = n.subscribe((msgs: Messages) => {\n\t\tfor (const [t, v] of msgs) {\n\t\t\tif (t === DATA) val = v as T;\n\t\t\tif (t === ERROR) err = v;\n\t\t}\n\t});\n\tunsub();\n\tif (err) throw err;\n\treturn val as T;\n}\n\nfunction createPrimitiveAtom<T>(initial: T, options?: AtomOptions): WritableAtom<T> {\n\tconst n = state(initial, {\n\t\t...options,\n\t\tresubscribable: true,\n\t\tresetOnTeardown: true,\n\t});\n\treturn {\n\t\tget: () => {\n\t\t\tif (n.status === \"sentinel\") {\n\t\t\t\treturn pull(n);\n\t\t\t}\n\t\t\treturn n.cache as T;\n\t\t},\n\t\t// Use `n.emit` (not raw `n.down`) so writes go through the framed\n\t\t// emit pipeline: bundle() auto-prefixes DIRTY (diamond-safe wave\n\t\t// coordination) and the equals check folds same-value writes to\n\t\t// RESOLVED (no spurious subscriber fires).\n\t\tset: (value: T) => n.emit(value),\n\t\tupdate: (fn: (current: T) => T) => {\n\t\t\tconst current = n.status === \"sentinel\" ? pull(n) : (n.cache as T);\n\t\t\tn.emit(fn(current));\n\t\t},\n\t\tsubscribe: (cb: (value: T) => void) => {\n\t\t\t// Skip the initial push-on-subscribe DATA — jotai subscribe fires on changes only.\n\t\t\tlet initial = true;\n\t\t\treturn n.subscribe((msgs: Messages) => {\n\t\t\t\tfor (const [t, v] of msgs) {\n\t\t\t\t\tif (t === DATA) {\n\t\t\t\t\t\tif (initial) {\n\t\t\t\t\t\t\tinitial = false;\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcb(v as T);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tmeta: n.meta,\n\t\t_node: n,\n\t};\n}\n\nfunction createDerivedAtom<T>(\n\tread: ReadFn<T>,\n\twrite?: WriteFn<T>,\n\toptions?: AtomOptions,\n): ReadableAtom<T> | WritableAtom<T> {\n\tconst n = autoTrackNode(\n\t\t(track) =>\n\t\t\tread(<V>(a: ReadableAtom<V>) => {\n\t\t\t\tconst dn = a._node;\n\t\t\t\tif (dn.status === \"sentinel\") {\n\t\t\t\t\tpull(dn);\n\t\t\t\t}\n\t\t\t\treturn track(dn) as V;\n\t\t\t}),\n\t\t{\n\t\t\t...options,\n\t\t\tresubscribable: true,\n\t\t\tresetOnTeardown: true,\n\t\t},\n\t);\n\n\tconst result: ReadableAtom<T> = {\n\t\tget: () => {\n\t\t\tif (n.status === \"sentinel\") {\n\t\t\t\treturn pull(n);\n\t\t\t}\n\t\t\treturn n.cache as T;\n\t\t},\n\t\tsubscribe: (cb: (value: T) => void) => {\n\t\t\t// Skip the initial push-on-subscribe DATA — jotai subscribe fires on changes only.\n\t\t\tlet initial = true;\n\t\t\treturn n.subscribe((msgs: Messages) => {\n\t\t\t\tfor (const [t, v] of msgs) {\n\t\t\t\t\tif (t === DATA) {\n\t\t\t\t\t\tif (initial) {\n\t\t\t\t\t\t\tinitial = false;\n\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcb(v as T);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tmeta: n.meta,\n\t\t_node: n,\n\t};\n\n\tif (write) {\n\t\tconst getFn: GetFn = <V>(a: ReadableAtom<V>) => a.get();\n\t\tconst setFn: SetFn = <V>(a: WritableAtom<V>, value: V) => a.set(value);\n\n\t\tconst writable = result as WritableAtom<T>;\n\t\twritable.set = (value: T) => write(getFn, setFn, value);\n\t\twritable.update = (fn: (current: T) => T) => {\n\t\t\tconst current = n.status === \"sentinel\" ? pull(n) : (n.cache as T);\n\t\t\treturn write(getFn, setFn, fn(current));\n\t\t};\n\t\treturn writable;\n\t}\n\n\treturn result;\n}\n"],"mappings":";;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AA+EO,SAAS,KACf,eACA,gBACA,SACoC;AACpC,MAAI,OAAO,kBAAkB,YAAY;AACxC,UAAM,OAAO;AACb,QAAI,OAAO,mBAAmB,YAAY;AACzC,aAAO,kBAAkB,MAAM,gBAA8B,OAAO;AAAA,IACrE;AACA,WAAO,kBAAkB,MAAM,QAAW,cAA6B;AAAA,EACxE;AAEA,SAAO,oBAAoB,eAAoB,cAA6B;AAC7E;AAEA,SAAS,KAAQ,GAAe;AAC/B,MAAI,MAA4B,EAAE;AAClC,MAAI;AACJ,QAAM,QAAQ,EAAE,UAAU,CAAC,SAAmB;AAC7C,eAAW,CAAC,GAAG,CAAC,KAAK,MAAM;AAC1B,UAAI,MAAM,KAAM,OAAM;AACtB,UAAI,MAAM,MAAO,OAAM;AAAA,IACxB;AAAA,EACD,CAAC;AACD,QAAM;AACN,MAAI,IAAK,OAAM;AACf,SAAO;AACR;AAEA,SAAS,oBAAuB,SAAY,SAAwC;AACnF,QAAM,IAAI,MAAM,SAAS;AAAA,IACxB,GAAG;AAAA,IACH,gBAAgB;AAAA,IAChB,iBAAiB;AAAA,EAClB,CAAC;AACD,SAAO;AAAA,IACN,KAAK,MAAM;AACV,UAAI,EAAE,WAAW,YAAY;AAC5B,eAAO,KAAK,CAAC;AAAA,MACd;AACA,aAAO,EAAE;AAAA,IACV;AAAA;AAAA;AAAA;AAAA;AAAA,IAKA,KAAK,CAAC,UAAa,EAAE,KAAK,KAAK;AAAA,IAC/B,QAAQ,CAAC,OAA0B;AAClC,YAAM,UAAU,EAAE,WAAW,aAAa,KAAK,CAAC,IAAK,EAAE;AACvD,QAAE,KAAK,GAAG,OAAO,CAAC;AAAA,IACnB;AAAA,IACA,WAAW,CAAC,OAA2B;AAEtC,UAAIA,WAAU;AACd,aAAO,EAAE,UAAU,CAAC,SAAmB;AACtC,mBAAW,CAAC,GAAG,CAAC,KAAK,MAAM;AAC1B,cAAI,MAAM,MAAM;AACf,gBAAIA,UAAS;AACZ,cAAAA,WAAU;AACV;AAAA,YACD;AACA,eAAG,CAAM;AAAA,UACV;AAAA,QACD;AAAA,MACD,CAAC;AAAA,IACF;AAAA,IACA,MAAM,EAAE;AAAA,IACR,OAAO;AAAA,EACR;AACD;AAEA,SAAS,kBACR,MACA,OACA,SACoC;AACpC,QAAM,IAAI;AAAA,IACT,CAAC,UACA,KAAK,CAAI,MAAuB;AAC/B,YAAM,KAAK,EAAE;AACb,UAAI,GAAG,WAAW,YAAY;AAC7B,aAAK,EAAE;AAAA,MACR;AACA,aAAO,MAAM,EAAE;AAAA,IAChB,CAAC;AAAA,IACF;AAAA,MACC,GAAG;AAAA,MACH,gBAAgB;AAAA,MAChB,iBAAiB;AAAA,IAClB;AAAA,EACD;AAEA,QAAM,SAA0B;AAAA,IAC/B,KAAK,MAAM;AACV,UAAI,EAAE,WAAW,YAAY;AAC5B,eAAO,KAAK,CAAC;AAAA,MACd;AACA,aAAO,EAAE;AAAA,IACV;AAAA,IACA,WAAW,CAAC,OAA2B;AAEtC,UAAI,UAAU;AACd,aAAO,EAAE,UAAU,CAAC,SAAmB;AACtC,mBAAW,CAAC,GAAG,CAAC,KAAK,MAAM;AAC1B,cAAI,MAAM,MAAM;AACf,gBAAI,SAAS;AACZ,wBAAU;AACV;AAAA,YACD;AACA,eAAG,CAAM;AAAA,UACV;AAAA,QACD;AAAA,MACD,CAAC;AAAA,IACF;AAAA,IACA,MAAM,EAAE;AAAA,IACR,OAAO;AAAA,EACR;AAEA,MAAI,OAAO;AACV,UAAM,QAAe,CAAI,MAAuB,EAAE,IAAI;AACtD,UAAM,QAAe,CAAI,GAAoB,UAAa,EAAE,IAAI,KAAK;AAErE,UAAM,WAAW;AACjB,aAAS,MAAM,CAAC,UAAa,MAAM,OAAO,OAAO,KAAK;AACtD,aAAS,SAAS,CAAC,OAA0B;AAC5C,YAAM,UAAU,EAAE,WAAW,aAAa,KAAK,CAAC,IAAK,EAAE;AACvD,aAAO,MAAM,OAAO,OAAO,GAAG,OAAO,CAAC;AAAA,IACvC;AACA,WAAO;AAAA,EACR;AAEA,SAAO;AACR;","names":["initial"]}