@graphrefly/graphrefly 0.43.0 → 0.45.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 (422) hide show
  1. package/README.md +21 -17
  2. package/dist/compat/index.cjs +20 -10
  3. package/dist/compat/index.cjs.map +1 -0
  4. package/dist/compat/index.d.cts +1 -22
  5. package/dist/compat/index.d.ts +1 -22
  6. package/dist/compat/index.js +3 -1
  7. package/dist/compat/index.js.map +1 -0
  8. package/dist/compat/jotai/index.cjs +21 -1
  9. package/dist/compat/jotai/index.cjs.map +1 -0
  10. package/dist/compat/jotai/index.d.cts +1 -2
  11. package/dist/compat/jotai/index.d.ts +1 -2
  12. package/dist/compat/jotai/index.js +3 -1
  13. package/dist/compat/jotai/index.js.map +1 -0
  14. package/dist/compat/nanostores/index.cjs +21 -1
  15. package/dist/compat/nanostores/index.cjs.map +1 -0
  16. package/dist/compat/nanostores/index.d.cts +1 -2
  17. package/dist/compat/nanostores/index.d.ts +1 -2
  18. package/dist/compat/nanostores/index.js +3 -1
  19. package/dist/compat/nanostores/index.js.map +1 -0
  20. package/dist/compat/nestjs/index.cjs +20 -10
  21. package/dist/compat/nestjs/index.cjs.map +1 -0
  22. package/dist/compat/nestjs/index.d.cts +1 -13
  23. package/dist/compat/nestjs/index.d.ts +1 -13
  24. package/dist/compat/nestjs/index.js +3 -1
  25. package/dist/compat/nestjs/index.js.map +1 -0
  26. package/dist/compat/react/index.cjs +21 -1
  27. package/dist/compat/react/index.cjs.map +1 -0
  28. package/dist/compat/react/index.d.cts +1 -2
  29. package/dist/compat/react/index.d.ts +1 -2
  30. package/dist/compat/react/index.js +3 -1
  31. package/dist/compat/react/index.js.map +1 -0
  32. package/dist/compat/solid/index.cjs +21 -1
  33. package/dist/compat/solid/index.cjs.map +1 -0
  34. package/dist/compat/solid/index.d.cts +1 -2
  35. package/dist/compat/solid/index.d.ts +1 -2
  36. package/dist/compat/solid/index.js +3 -1
  37. package/dist/compat/solid/index.js.map +1 -0
  38. package/dist/compat/svelte/index.cjs +21 -1
  39. package/dist/compat/svelte/index.cjs.map +1 -0
  40. package/dist/compat/svelte/index.d.cts +1 -2
  41. package/dist/compat/svelte/index.d.ts +1 -2
  42. package/dist/compat/svelte/index.js +3 -1
  43. package/dist/compat/svelte/index.js.map +1 -0
  44. package/dist/compat/vue/index.cjs +21 -1
  45. package/dist/compat/vue/index.cjs.map +1 -0
  46. package/dist/compat/vue/index.d.cts +1 -3
  47. package/dist/compat/vue/index.d.ts +1 -3
  48. package/dist/compat/vue/index.js +3 -1
  49. package/dist/compat/vue/index.js.map +1 -0
  50. package/dist/compat/zustand/index.cjs +21 -3
  51. package/dist/compat/zustand/index.cjs.map +1 -0
  52. package/dist/compat/zustand/index.d.cts +1 -6
  53. package/dist/compat/zustand/index.d.ts +1 -6
  54. package/dist/compat/zustand/index.js +3 -1
  55. package/dist/compat/zustand/index.js.map +1 -0
  56. package/dist/core/index.cjs +21 -1
  57. package/dist/core/index.cjs.map +1 -0
  58. package/dist/core/index.d.cts +1 -4
  59. package/dist/core/index.d.ts +1 -4
  60. package/dist/core/index.js +3 -1
  61. package/dist/core/index.js.map +1 -0
  62. package/dist/extra/browser.cjs +21 -1
  63. package/dist/extra/browser.cjs.map +1 -0
  64. package/dist/extra/browser.d.cts +1 -4
  65. package/dist/extra/browser.d.ts +1 -4
  66. package/dist/extra/browser.js +3 -1
  67. package/dist/extra/browser.js.map +1 -0
  68. package/dist/extra/index.cjs +20 -19
  69. package/dist/extra/index.cjs.map +1 -0
  70. package/dist/extra/index.d.cts +1 -17
  71. package/dist/extra/index.d.ts +1 -17
  72. package/dist/extra/index.js +3 -1
  73. package/dist/extra/index.js.map +1 -0
  74. package/dist/extra/node.cjs +21 -2
  75. package/dist/extra/node.cjs.map +1 -0
  76. package/dist/extra/node.d.cts +1 -187
  77. package/dist/extra/node.d.ts +1 -187
  78. package/dist/extra/node.js +3 -2
  79. package/dist/extra/node.js.map +1 -0
  80. package/dist/extra/operators.cjs +21 -1
  81. package/dist/extra/operators.cjs.map +1 -0
  82. package/dist/extra/operators.d.cts +1 -950
  83. package/dist/extra/operators.d.ts +1 -950
  84. package/dist/extra/operators.js +3 -1
  85. package/dist/extra/operators.js.map +1 -0
  86. package/dist/extra/reactive.cjs +21 -1
  87. package/dist/extra/reactive.cjs.map +1 -0
  88. package/dist/extra/reactive.d.cts +1 -353
  89. package/dist/extra/reactive.d.ts +1 -353
  90. package/dist/extra/reactive.js +3 -1
  91. package/dist/extra/reactive.js.map +1 -0
  92. package/dist/extra/render/index.cjs +21 -5
  93. package/dist/extra/render/index.cjs.map +1 -0
  94. package/dist/extra/render/index.d.cts +1 -183
  95. package/dist/extra/render/index.d.ts +1 -183
  96. package/dist/extra/render/index.js +3 -1
  97. package/dist/extra/render/index.js.map +1 -0
  98. package/dist/extra/sources.cjs +21 -3
  99. package/dist/extra/sources.cjs.map +1 -0
  100. package/dist/extra/sources.d.cts +1 -584
  101. package/dist/extra/sources.d.ts +1 -584
  102. package/dist/extra/sources.js +3 -1
  103. package/dist/extra/sources.js.map +1 -0
  104. package/dist/extra/storage-browser.cjs +21 -1
  105. package/dist/extra/storage-browser.cjs.map +1 -0
  106. package/dist/extra/storage-browser.d.cts +1 -37
  107. package/dist/extra/storage-browser.d.ts +1 -37
  108. package/dist/extra/storage-browser.js +3 -1
  109. package/dist/extra/storage-browser.js.map +1 -0
  110. package/dist/extra/storage-core.cjs +21 -1
  111. package/dist/extra/storage-core.cjs.map +1 -0
  112. package/dist/extra/storage-core.d.cts +1 -28
  113. package/dist/extra/storage-core.d.ts +1 -28
  114. package/dist/extra/storage-core.js +3 -1
  115. package/dist/extra/storage-core.js.map +1 -0
  116. package/dist/extra/storage-node.cjs +20 -0
  117. package/dist/extra/storage-node.cjs.map +1 -0
  118. package/dist/extra/storage-node.d.cts +1 -2
  119. package/dist/extra/storage-node.d.ts +1 -2
  120. package/dist/extra/storage-node.js +3 -0
  121. package/dist/extra/storage-node.js.map +1 -0
  122. package/dist/extra/storage-tiers-browser.cjs +21 -1
  123. package/dist/extra/storage-tiers-browser.cjs.map +1 -0
  124. package/dist/extra/storage-tiers-browser.d.cts +1 -120
  125. package/dist/extra/storage-tiers-browser.d.ts +1 -120
  126. package/dist/extra/storage-tiers-browser.js +3 -1
  127. package/dist/extra/storage-tiers-browser.js.map +1 -0
  128. package/dist/extra/storage-tiers-node.cjs +21 -1
  129. package/dist/extra/storage-tiers-node.cjs.map +1 -0
  130. package/dist/extra/storage-tiers-node.d.cts +1 -210
  131. package/dist/extra/storage-tiers-node.d.ts +1 -210
  132. package/dist/extra/storage-tiers-node.js +3 -1
  133. package/dist/extra/storage-tiers-node.js.map +1 -0
  134. package/dist/extra/storage-tiers.cjs +21 -1
  135. package/dist/extra/storage-tiers.cjs.map +1 -0
  136. package/dist/extra/storage-tiers.d.cts +1 -412
  137. package/dist/extra/storage-tiers.d.ts +1 -412
  138. package/dist/extra/storage-tiers.js +3 -1
  139. package/dist/extra/storage-tiers.js.map +1 -0
  140. package/dist/extra/storage-wal.cjs +21 -0
  141. package/dist/extra/storage-wal.cjs.map +1 -0
  142. package/dist/extra/storage-wal.d.cts +1 -0
  143. package/dist/extra/storage-wal.d.ts +1 -0
  144. package/dist/extra/storage-wal.js +3 -0
  145. package/dist/extra/storage-wal.js.map +1 -0
  146. package/dist/graph/index.cjs +21 -7
  147. package/dist/graph/index.cjs.map +1 -0
  148. package/dist/graph/index.d.cts +1 -7
  149. package/dist/graph/index.d.ts +1 -7
  150. package/dist/graph/index.js +3 -1
  151. package/dist/graph/index.js.map +1 -0
  152. package/dist/index.cjs +20 -227
  153. package/dist/index.cjs.map +1 -0
  154. package/dist/index.d.cts +45 -96
  155. package/dist/index.d.ts +45 -96
  156. package/dist/index.js +3 -1
  157. package/dist/index.js.map +1 -0
  158. package/dist/patterns/ai/browser.cjs +20 -7
  159. package/dist/patterns/ai/browser.cjs.map +1 -0
  160. package/dist/patterns/ai/browser.d.cts +1 -127
  161. package/dist/patterns/ai/browser.d.ts +1 -127
  162. package/dist/patterns/ai/browser.js +3 -3
  163. package/dist/patterns/ai/browser.js.map +1 -0
  164. package/dist/patterns/ai/index.cjs +20 -73
  165. package/dist/patterns/ai/index.cjs.map +1 -0
  166. package/dist/patterns/ai/index.d.cts +1 -21
  167. package/dist/patterns/ai/index.d.ts +1 -21
  168. package/dist/patterns/ai/index.js +3 -1
  169. package/dist/patterns/ai/index.js.map +1 -0
  170. package/dist/patterns/ai/node.cjs +21 -1
  171. package/dist/patterns/ai/node.cjs.map +1 -0
  172. package/dist/patterns/ai/node.d.cts +1 -59
  173. package/dist/patterns/ai/node.d.ts +1 -59
  174. package/dist/patterns/ai/node.js +3 -1
  175. package/dist/patterns/ai/node.js.map +1 -0
  176. package/dist/patterns/cqrs/index.cjs +21 -3
  177. package/dist/patterns/cqrs/index.cjs.map +1 -0
  178. package/dist/patterns/cqrs/index.d.cts +1 -8
  179. package/dist/patterns/cqrs/index.d.ts +1 -8
  180. package/dist/patterns/cqrs/index.js +3 -1
  181. package/dist/patterns/cqrs/index.js.map +1 -0
  182. package/dist/patterns/demo-shell/index.cjs +21 -5
  183. package/dist/patterns/demo-shell/index.cjs.map +1 -0
  184. package/dist/patterns/demo-shell/index.d.cts +1 -7
  185. package/dist/patterns/demo-shell/index.d.ts +1 -7
  186. package/dist/patterns/demo-shell/index.js +3 -1
  187. package/dist/patterns/demo-shell/index.js.map +1 -0
  188. package/dist/patterns/domain-templates/index.cjs +21 -3
  189. package/dist/patterns/domain-templates/index.cjs.map +1 -0
  190. package/dist/patterns/domain-templates/index.d.cts +1 -6
  191. package/dist/patterns/domain-templates/index.d.ts +1 -6
  192. package/dist/patterns/domain-templates/index.js +3 -1
  193. package/dist/patterns/domain-templates/index.js.map +1 -0
  194. package/dist/patterns/graphspec/index.cjs +21 -86
  195. package/dist/patterns/graphspec/index.cjs.map +1 -0
  196. package/dist/patterns/graphspec/index.d.cts +1 -8
  197. package/dist/patterns/graphspec/index.d.ts +1 -8
  198. package/dist/patterns/graphspec/index.js +3 -1
  199. package/dist/patterns/graphspec/index.js.map +1 -0
  200. package/dist/patterns/harness/index.cjs +21 -48
  201. package/dist/patterns/harness/index.cjs.map +1 -0
  202. package/dist/patterns/harness/index.d.cts +1 -14
  203. package/dist/patterns/harness/index.d.ts +1 -14
  204. package/dist/patterns/harness/index.js +3 -1
  205. package/dist/patterns/harness/index.js.map +1 -0
  206. package/dist/patterns/inspect/index.cjs +21 -3
  207. package/dist/patterns/inspect/index.cjs.map +1 -0
  208. package/dist/patterns/inspect/index.d.cts +1 -9
  209. package/dist/patterns/inspect/index.d.ts +1 -9
  210. package/dist/patterns/inspect/index.js +3 -1
  211. package/dist/patterns/inspect/index.js.map +1 -0
  212. package/dist/patterns/job-queue/index.cjs +21 -3
  213. package/dist/patterns/job-queue/index.cjs.map +1 -0
  214. package/dist/patterns/job-queue/index.d.cts +1 -9
  215. package/dist/patterns/job-queue/index.d.ts +1 -9
  216. package/dist/patterns/job-queue/index.js +3 -1
  217. package/dist/patterns/job-queue/index.js.map +1 -0
  218. package/dist/patterns/memory/index.cjs +21 -3
  219. package/dist/patterns/memory/index.cjs.map +1 -0
  220. package/dist/patterns/memory/index.d.cts +1 -8
  221. package/dist/patterns/memory/index.d.ts +1 -8
  222. package/dist/patterns/memory/index.js +3 -1
  223. package/dist/patterns/memory/index.js.map +1 -0
  224. package/dist/patterns/messaging/index.cjs +21 -3
  225. package/dist/patterns/messaging/index.cjs.map +1 -0
  226. package/dist/patterns/messaging/index.d.cts +1 -7
  227. package/dist/patterns/messaging/index.d.ts +1 -7
  228. package/dist/patterns/messaging/index.js +3 -1
  229. package/dist/patterns/messaging/index.js.map +1 -0
  230. package/dist/patterns/orchestration/index.cjs +21 -3
  231. package/dist/patterns/orchestration/index.cjs.map +1 -0
  232. package/dist/patterns/orchestration/index.d.cts +1 -9
  233. package/dist/patterns/orchestration/index.d.ts +1 -9
  234. package/dist/patterns/orchestration/index.js +3 -1
  235. package/dist/patterns/orchestration/index.js.map +1 -0
  236. package/dist/patterns/process/index.cjs +21 -1
  237. package/dist/patterns/process/index.cjs.map +1 -0
  238. package/dist/patterns/process/index.d.cts +1 -10
  239. package/dist/patterns/process/index.d.ts +1 -10
  240. package/dist/patterns/process/index.js +3 -1
  241. package/dist/patterns/process/index.js.map +1 -0
  242. package/dist/patterns/reactive-layout/index.cjs +21 -4
  243. package/dist/patterns/reactive-layout/index.cjs.map +1 -0
  244. package/dist/patterns/reactive-layout/index.d.cts +1 -7
  245. package/dist/patterns/reactive-layout/index.d.ts +1 -7
  246. package/dist/patterns/reactive-layout/index.js +3 -1
  247. package/dist/patterns/reactive-layout/index.js.map +1 -0
  248. package/dist/patterns/reduction/index.cjs +21 -3
  249. package/dist/patterns/reduction/index.cjs.map +1 -0
  250. package/dist/patterns/reduction/index.d.cts +1 -6
  251. package/dist/patterns/reduction/index.d.ts +1 -6
  252. package/dist/patterns/reduction/index.js +3 -1
  253. package/dist/patterns/reduction/index.js.map +1 -0
  254. package/dist/patterns/surface/index.cjs +21 -13
  255. package/dist/patterns/surface/index.cjs.map +1 -0
  256. package/dist/patterns/surface/index.d.cts +1 -9
  257. package/dist/patterns/surface/index.d.ts +1 -9
  258. package/dist/patterns/surface/index.js +3 -1
  259. package/dist/patterns/surface/index.js.map +1 -0
  260. package/dist/patterns/topology-view/index.cjs +21 -0
  261. package/dist/patterns/topology-view/index.cjs.map +1 -0
  262. package/dist/patterns/topology-view/index.d.cts +1 -0
  263. package/dist/patterns/topology-view/index.d.ts +1 -0
  264. package/dist/patterns/topology-view/index.js +3 -0
  265. package/dist/patterns/topology-view/index.js.map +1 -0
  266. package/dist/testing/index.cjs +21 -0
  267. package/dist/testing/index.cjs.map +1 -0
  268. package/dist/testing/index.d.cts +1 -0
  269. package/dist/testing/index.d.ts +1 -0
  270. package/dist/testing/index.js +3 -0
  271. package/dist/testing/index.js.map +1 -0
  272. package/package.json +608 -584
  273. package/dist/backoff-HPZMEZNF.js +0 -1
  274. package/dist/cascading-CH-_VwG9.d.cts +0 -199
  275. package/dist/cascading-OgKQZjsa.d.ts +0 -199
  276. package/dist/chunk-35JTVPOX.js +0 -1
  277. package/dist/chunk-3G5U5QNE.js +0 -5
  278. package/dist/chunk-3XDYJRYU.js +0 -1
  279. package/dist/chunk-4I45FVQS.js +0 -1
  280. package/dist/chunk-4VVTGLXJ.js +0 -1
  281. package/dist/chunk-4YAN45KM.js +0 -1
  282. package/dist/chunk-5QDBSZBV.js +0 -1
  283. package/dist/chunk-626TESAC.js +0 -3
  284. package/dist/chunk-6HOSXQKF.js +0 -1
  285. package/dist/chunk-6QZNQS5B.js +0 -1
  286. package/dist/chunk-C72GO4IZ.js +0 -1
  287. package/dist/chunk-CE72X3WO.js +0 -1
  288. package/dist/chunk-CK2E7BTU.js +0 -1
  289. package/dist/chunk-CLD3F4R5.js +0 -1
  290. package/dist/chunk-CUNIRONA.js +0 -1
  291. package/dist/chunk-D27JNOLZ.js +0 -1
  292. package/dist/chunk-D5RFJOZ2.js +0 -1
  293. package/dist/chunk-EBW4V6JN.js +0 -1
  294. package/dist/chunk-ESMPEKEV.js +0 -1
  295. package/dist/chunk-F3IGTWCQ.js +0 -1
  296. package/dist/chunk-F672GV32.js +0 -1
  297. package/dist/chunk-FDQGFWLF.js +0 -1
  298. package/dist/chunk-FG4TKHMC.js +0 -1
  299. package/dist/chunk-GPW2V3RE.js +0 -1
  300. package/dist/chunk-I7IGYPSL.js +0 -1
  301. package/dist/chunk-INQD2KRQ.js +0 -1
  302. package/dist/chunk-JNWRYDJN.js +0 -1
  303. package/dist/chunk-JQFH2DV6.js +0 -1
  304. package/dist/chunk-K2Q24F5T.js +0 -1
  305. package/dist/chunk-KGKJCHEK.js +0 -1
  306. package/dist/chunk-KRH66M4O.js +0 -1
  307. package/dist/chunk-KVV66NN2.js +0 -1
  308. package/dist/chunk-L6NSJVJZ.js +0 -1
  309. package/dist/chunk-LYCLF26R.js +0 -1
  310. package/dist/chunk-NNKJUORL.js +0 -1
  311. package/dist/chunk-NON4NLIC.js +0 -45
  312. package/dist/chunk-O2BLLH7M.js +0 -18
  313. package/dist/chunk-OCKEEPRJ.js +0 -2
  314. package/dist/chunk-OFZG3TB3.js +0 -9
  315. package/dist/chunk-OYJKFY7V.js +0 -1
  316. package/dist/chunk-P6C4WHZO.js +0 -5
  317. package/dist/chunk-PT7W5FCD.js +0 -5
  318. package/dist/chunk-Q4U3A3L5.js +0 -1
  319. package/dist/chunk-QE4IGY7I.js +0 -61
  320. package/dist/chunk-QYADASLV.js +0 -1
  321. package/dist/chunk-QYVXF7GW.js +0 -1
  322. package/dist/chunk-S3EEIPO7.js +0 -1
  323. package/dist/chunk-SUWT3ZON.js +0 -1
  324. package/dist/chunk-TPKQW72B.js +0 -1
  325. package/dist/chunk-TSOYJ743.js +0 -1
  326. package/dist/chunk-TZQPPQEQ.js +0 -1
  327. package/dist/chunk-V5A7M7RJ.js +0 -1
  328. package/dist/chunk-VIMF6LGM.js +0 -1
  329. package/dist/chunk-VJLMUKOI.js +0 -1
  330. package/dist/chunk-VN6RDSK2.js +0 -1
  331. package/dist/chunk-VNC3TMVY.js +0 -1
  332. package/dist/chunk-VOPGGIL7.js +0 -1
  333. package/dist/chunk-VQ4A6T2A.js +0 -1
  334. package/dist/chunk-XG62INFA.js +0 -1
  335. package/dist/chunk-Y4NI3X7O.js +0 -84
  336. package/dist/content-addressed-storage-4-ST1tYk.d.cts +0 -124
  337. package/dist/content-addressed-storage-DuYMjV7o.d.ts +0 -124
  338. package/dist/decay-2ZukgQ4o.d.cts +0 -112
  339. package/dist/decay-CdEBmDIs.d.ts +0 -112
  340. package/dist/fallback-CqYVLL6X.d.ts +0 -250
  341. package/dist/fallback-Ctlj2tMY.d.cts +0 -250
  342. package/dist/graph-7VguS7a4.d.ts +0 -1668
  343. package/dist/graph-C4SHb3Ly.d.cts +0 -1668
  344. package/dist/index-0rKFCVFp.d.cts +0 -557
  345. package/dist/index-B-i4_g3k.d.ts +0 -651
  346. package/dist/index-B5iz82A3.d.cts +0 -2655
  347. package/dist/index-BAOD98JD.d.cts +0 -754
  348. package/dist/index-BG0BN3PB.d.ts +0 -44
  349. package/dist/index-BJX94aud.d.cts +0 -34
  350. package/dist/index-BP8a88zx.d.ts +0 -385
  351. package/dist/index-BTQtTb_H.d.cts +0 -301
  352. package/dist/index-BVpm6noz.d.cts +0 -36
  353. package/dist/index-Bc41FuHp.d.cts +0 -291
  354. package/dist/index-BdGtBX-X.d.cts +0 -515
  355. package/dist/index-Bf7eqeSF.d.ts +0 -113
  356. package/dist/index-BiX1Nkgx.d.cts +0 -1844
  357. package/dist/index-BoLv_OfD.d.cts +0 -651
  358. package/dist/index-BojK2fwH.d.cts +0 -299
  359. package/dist/index-BsT7F2et.d.ts +0 -291
  360. package/dist/index-BwLvVVsy.d.cts +0 -189
  361. package/dist/index-C59mYFKp.d.ts +0 -121
  362. package/dist/index-C7O6r5fV.d.ts +0 -37
  363. package/dist/index-C9kSENB4.d.cts +0 -127
  364. package/dist/index-C9pjcz3l.d.cts +0 -209
  365. package/dist/index-CAC_rNzm.d.ts +0 -189
  366. package/dist/index-CCq87F7t.d.ts +0 -127
  367. package/dist/index-CDXc9zKM.d.cts +0 -26
  368. package/dist/index-CJK1JkYy.d.ts +0 -36
  369. package/dist/index-CLon-IWF.d.cts +0 -374
  370. package/dist/index-COD1kVoS.d.cts +0 -468
  371. package/dist/index-CPT7C_f1.d.ts +0 -374
  372. package/dist/index-CQG3D1cp.d.ts +0 -468
  373. package/dist/index-CZQXo5tH.d.ts +0 -209
  374. package/dist/index-CZjOhcBy.d.cts +0 -113
  375. package/dist/index-ChOyVLKm.d.cts +0 -86
  376. package/dist/index-CvrqGfNS.d.ts +0 -34
  377. package/dist/index-D-AEQVLo.d.ts +0 -2655
  378. package/dist/index-D4Y1cMG0.d.ts +0 -26
  379. package/dist/index-DBHK8O6H.d.ts +0 -301
  380. package/dist/index-DBevwHj_.d.ts +0 -515
  381. package/dist/index-DIOoAZUX.d.ts +0 -45
  382. package/dist/index-DSZ3ZCHF.d.ts +0 -3402
  383. package/dist/index-Dgs8zcj7.d.ts +0 -102
  384. package/dist/index-Dh_HJ82K.d.ts +0 -299
  385. package/dist/index-Dhc7a7Xo.d.cts +0 -102
  386. package/dist/index-Dmqp7KjD.d.ts +0 -86
  387. package/dist/index-Dn-wI9g4.d.ts +0 -231
  388. package/dist/index-Du7u1lSf.d.cts +0 -385
  389. package/dist/index-DwigL4lY.d.ts +0 -1844
  390. package/dist/index-DyR7eU5S.d.cts +0 -779
  391. package/dist/index-JZUPJIJy.d.ts +0 -779
  392. package/dist/index-K0_0eR8g.d.ts +0 -557
  393. package/dist/index-O16yXPK4.d.cts +0 -3402
  394. package/dist/index-O7fucFrU.d.cts +0 -121
  395. package/dist/index-RV_yDjOX.d.cts +0 -198
  396. package/dist/index-cm1GNcWE.d.ts +0 -754
  397. package/dist/index-f5IivDUX.d.cts +0 -37
  398. package/dist/index-hHcaFlJX.d.cts +0 -45
  399. package/dist/index-tJoTcnHh.d.cts +0 -231
  400. package/dist/index-wAzD9yVj.d.ts +0 -198
  401. package/dist/index-z96luz5O.d.cts +0 -44
  402. package/dist/meta-BgVAsg9j.d.ts +0 -102
  403. package/dist/meta-vE8bxW1E.d.cts +0 -102
  404. package/dist/node-ClS5yC-B.d.cts +0 -1347
  405. package/dist/node-ClS5yC-B.d.ts +0 -1347
  406. package/dist/observable-BsBzUrcI.d.ts +0 -36
  407. package/dist/observable-DLGPPtb8.d.cts +0 -36
  408. package/dist/pipeline-graph-DPqKDk59.d.cts +0 -137
  409. package/dist/pipeline-graph-loP57TBA.d.ts +0 -137
  410. package/dist/reactive-layout-Dsvob4zD.d.cts +0 -183
  411. package/dist/reactive-layout-v7KPvxoc.d.ts +0 -183
  412. package/dist/reactive-log-B00laMSQ.d.cts +0 -223
  413. package/dist/reactive-log-BezYsbA_.d.ts +0 -223
  414. package/dist/reactive-map-48mnZ-nu.d.cts +0 -296
  415. package/dist/reactive-map-BVVPdvmi.d.ts +0 -296
  416. package/dist/resilience-YIWPK4YC.js +0 -1
  417. package/dist/sugar-DLwvMr3F.d.ts +0 -223
  418. package/dist/sugar-DyVGtczU.d.cts +0 -223
  419. package/dist/topology-tree-BNGvuG82.d.ts +0 -25
  420. package/dist/topology-tree-BSdfSwMi.d.cts +0 -25
  421. package/dist/types-B1jDWVsM.d.cts +0 -442
  422. package/dist/types-DkzUUs0H.d.ts +0 -442
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/patterns/ai/index.ts"],"sourcesContent":["// Phase 13.9.A shim — re-export from pure-TS sibling until\n// @graphrefly/native (napi binding) and per-milestone swap-overs land.\nexport * from \"@graphrefly/pure-ts/patterns/ai\";\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAAA;AAEA,uBAAc,4CAFd;","names":[]}
@@ -1,21 +1 @@
1
- export { e as CapabilitiesRegistry, C as ChatMessage, L as LLMAdapter, a as LLMInvokeOptions, b as LLMResponse, M as ModelCapabilities, f as ModelFeatures, g as ModelLimits, h as ModelPricing, i as PriceBreakdown, P as PricingFn, j as PricingRegistry, R as Rate, S as StreamDelta, k as TieredRate, T as TokenUsage, c as ToolCall, d as ToolDefinition, l as composePricing, m as computePrice, n as createCapabilitiesRegistry, o as createPricingRegistry, p as pricingFor, r as registryPricing, z as zeroPrice } from '../../types-B1jDWVsM.cjs';
2
- export { A as AdapterProvider, b as AdapterTier, d as AllTiersExhaustedError, a as CascadeExhaustionReport, C as CascadingLlmAdapterOptions, e as CreateAdapterOptions, O as OpenAICompatAdapterOptions, f as OpenAICompatPreset, g as OpenAISdkLike, h as cascadingLlmAdapter, c as createAdapter, o as openAICompatAdapter, t as tier } from '../../cascading-CH-_VwG9.cjs';
3
- export { A as AdapterStats, a as AdmissionScore3DOptions, b as AdmissionScoredOptions, c as AdmissionScores, d as AdmissionThresholds, e as AgentLoopGraph, f as AgentLoopOptions, g as AgentLoopStatus, h as AgentMemoryGraph, j as AgentMemoryOptions, k as AnthropicAdapterOptions, l as AnthropicSdkLike, B as BudgetCaps, m as BudgetExhaustedError, n as BudgetGateBundle, o as BudgetTotals, C as CallStatsEvent, p as ChatStreamGraph, q as ChatStreamOptions, r as ContentDecision, s as ContentGateOptions, t as CostMeterOptions, u as CostMeterReading, D as DryRunAdapterOptions, E as ExtractedToolCall, F as FrozenContextOptions, G as GatedStreamHandle, v as GatedStreamOptions, w as GaugesAsContextOptions, x as GoogleAdapterOptions, y as GoogleSdkLike, z as GoogleSdkRequestConfig, H as GoogleSdkRequestParams, I as GraphDefValidation, J as GraphFromSpecOptions, K as HandoffOptions, L as HttpErrorLike, M as KeywordFlag, N as KeywordFlagExtractorOptions, O as KnobsAsToolsResult, P as LLMConsolidatorOptions, Q as LLMExtractorOptions, R as LLMTimeoutError, S as McpToolSchema, T as MemoryRetrievalBundle, U as MemoryRetrievalOptions, V as MemoryTier, W as MemoryTiersBundle, X as MemoryTiersOptions, Y as MemoryWithKGOptions, Z as MemoryWithTiersOptions, _ as MemoryWithVectorsOptions, $ as OpenAIToolSchema, a0 as PromptCallOptions, a1 as PromptNodeOptions, a2 as RedactorOptions, a3 as ResilientAdapterBundle, a4 as ResilientAdapterOptions, a5 as RetrievalEntry, a6 as RetrievalPipelineOptions, a7 as RetrievalQuery, a8 as RetrievalTrace, a9 as StampedDelta, aa as StrategyOperation, ab as StrategyPlan, ac as StreamingPromptNodeHandle, ad as StreamingPromptNodeOptions, ae as SuggestStrategyOptions, af as SystemPromptHandle, ag as ToolExecutionOptions, ah as ToolRegistryGraph, ai as ToolRegistryOptions, aj as ToolResult, ak as ToolSelectorOptions, al as WithBreakerOptions, am as WithBudgetGateOptions, an as WithDryRunBundle, ao as WithDryRunOptions, ap as WithRateLimiterOptions, aq as WithRetryOptions, ar as admissionFilter3D, as as admissionScored, at as agentLoop, au as agentMemory, av as anthropicAdapter, aw as chatStream, ax as contentGate, ay as costMeterExtractor, az as dryRunAdapter, aA as frozenContext, aB as gatedStream, aC as gaugesAsContext, aD as googleAdapter, aE as graphFromSpec, aF as graphFromSpecReactive, aG as handoff, aH as keywordFlagExtractor, aI as knobsAsTools, aJ as llmConsolidator, aK as llmExtractor, aL as memoryRetrieval, aM as memoryWithKG, aN as memoryWithTiers, aO as memoryWithVectors, aP as observableAdapter, aQ as parseRateLimitFromError, aR as promptCall, aS as promptNode, aT as redactor, aU as resilientAdapter, aV as streamExtractor, aW as streamingPromptNode, aX as suggestStrategy, aY as suggestStrategyReactive, aZ as systemPromptBuilder, a_ as toolCallExtractor, a$ as toolExecution, b0 as toolRegistry, b1 as toolSelector, b2 as validateGraphDef, b3 as withBreaker, b4 as withBudgetGate, b5 as withDryRun, b6 as withRateLimiter, b7 as withRetry, b8 as withTimeout } from '../../index-B5iz82A3.cjs';
4
- export { F as FallbackAdapterOptions, a as FallbackFixture, b as FallbackMissError, c as FallbackMissPolicy, R as ReplayCacheKeyContext, d as ReplayCacheMissError, e as ReplayCacheMode, W as WithReplayCacheOptions, f as canonicalJson, g as fallbackAdapter, w as withReplayCache } from '../../fallback-Ctlj2tMY.cjs';
5
- export { c as CircuitOpenError } from '../../index-BoLv_OfD.cjs';
6
- export { f as DEFAULT_DECAY_RATE } from '../../decay-2ZukgQ4o.cjs';
7
- import '../../node-ClS5yC-B.cjs';
8
- import '../../extra/sources.cjs';
9
- import '../../reactive-log-B00laMSQ.cjs';
10
- import '../../extra/storage-tiers.cjs';
11
- import '../../graph-C4SHb3Ly.cjs';
12
- import '../../meta-vE8bxW1E.cjs';
13
- import '../../extra/storage-core.cjs';
14
- import '../../index-BTQtTb_H.cjs';
15
- import '../../pipeline-graph-DPqKDk59.cjs';
16
- import '../../sugar-DyVGtczU.cjs';
17
- import '../../index-C9pjcz3l.cjs';
18
- import '../../index-CLon-IWF.cjs';
19
- import '../../index-Du7u1lSf.cjs';
20
- import '../../content-addressed-storage-4-ST1tYk.cjs';
21
- import '../../reactive-map-48mnZ-nu.cjs';
1
+ export * from '@graphrefly/pure-ts/patterns/ai';
@@ -1,21 +1 @@
1
- export { e as CapabilitiesRegistry, C as ChatMessage, L as LLMAdapter, a as LLMInvokeOptions, b as LLMResponse, M as ModelCapabilities, f as ModelFeatures, g as ModelLimits, h as ModelPricing, i as PriceBreakdown, P as PricingFn, j as PricingRegistry, R as Rate, S as StreamDelta, k as TieredRate, T as TokenUsage, c as ToolCall, d as ToolDefinition, l as composePricing, m as computePrice, n as createCapabilitiesRegistry, o as createPricingRegistry, p as pricingFor, r as registryPricing, z as zeroPrice } from '../../types-DkzUUs0H.js';
2
- export { A as AdapterProvider, b as AdapterTier, d as AllTiersExhaustedError, a as CascadeExhaustionReport, C as CascadingLlmAdapterOptions, e as CreateAdapterOptions, O as OpenAICompatAdapterOptions, f as OpenAICompatPreset, g as OpenAISdkLike, h as cascadingLlmAdapter, c as createAdapter, o as openAICompatAdapter, t as tier } from '../../cascading-OgKQZjsa.js';
3
- export { A as AdapterStats, a as AdmissionScore3DOptions, b as AdmissionScoredOptions, c as AdmissionScores, d as AdmissionThresholds, e as AgentLoopGraph, f as AgentLoopOptions, g as AgentLoopStatus, h as AgentMemoryGraph, j as AgentMemoryOptions, k as AnthropicAdapterOptions, l as AnthropicSdkLike, B as BudgetCaps, m as BudgetExhaustedError, n as BudgetGateBundle, o as BudgetTotals, C as CallStatsEvent, p as ChatStreamGraph, q as ChatStreamOptions, r as ContentDecision, s as ContentGateOptions, t as CostMeterOptions, u as CostMeterReading, D as DryRunAdapterOptions, E as ExtractedToolCall, F as FrozenContextOptions, G as GatedStreamHandle, v as GatedStreamOptions, w as GaugesAsContextOptions, x as GoogleAdapterOptions, y as GoogleSdkLike, z as GoogleSdkRequestConfig, H as GoogleSdkRequestParams, I as GraphDefValidation, J as GraphFromSpecOptions, K as HandoffOptions, L as HttpErrorLike, M as KeywordFlag, N as KeywordFlagExtractorOptions, O as KnobsAsToolsResult, P as LLMConsolidatorOptions, Q as LLMExtractorOptions, R as LLMTimeoutError, S as McpToolSchema, T as MemoryRetrievalBundle, U as MemoryRetrievalOptions, V as MemoryTier, W as MemoryTiersBundle, X as MemoryTiersOptions, Y as MemoryWithKGOptions, Z as MemoryWithTiersOptions, _ as MemoryWithVectorsOptions, $ as OpenAIToolSchema, a0 as PromptCallOptions, a1 as PromptNodeOptions, a2 as RedactorOptions, a3 as ResilientAdapterBundle, a4 as ResilientAdapterOptions, a5 as RetrievalEntry, a6 as RetrievalPipelineOptions, a7 as RetrievalQuery, a8 as RetrievalTrace, a9 as StampedDelta, aa as StrategyOperation, ab as StrategyPlan, ac as StreamingPromptNodeHandle, ad as StreamingPromptNodeOptions, ae as SuggestStrategyOptions, af as SystemPromptHandle, ag as ToolExecutionOptions, ah as ToolRegistryGraph, ai as ToolRegistryOptions, aj as ToolResult, ak as ToolSelectorOptions, al as WithBreakerOptions, am as WithBudgetGateOptions, an as WithDryRunBundle, ao as WithDryRunOptions, ap as WithRateLimiterOptions, aq as WithRetryOptions, ar as admissionFilter3D, as as admissionScored, at as agentLoop, au as agentMemory, av as anthropicAdapter, aw as chatStream, ax as contentGate, ay as costMeterExtractor, az as dryRunAdapter, aA as frozenContext, aB as gatedStream, aC as gaugesAsContext, aD as googleAdapter, aE as graphFromSpec, aF as graphFromSpecReactive, aG as handoff, aH as keywordFlagExtractor, aI as knobsAsTools, aJ as llmConsolidator, aK as llmExtractor, aL as memoryRetrieval, aM as memoryWithKG, aN as memoryWithTiers, aO as memoryWithVectors, aP as observableAdapter, aQ as parseRateLimitFromError, aR as promptCall, aS as promptNode, aT as redactor, aU as resilientAdapter, aV as streamExtractor, aW as streamingPromptNode, aX as suggestStrategy, aY as suggestStrategyReactive, aZ as systemPromptBuilder, a_ as toolCallExtractor, a$ as toolExecution, b0 as toolRegistry, b1 as toolSelector, b2 as validateGraphDef, b3 as withBreaker, b4 as withBudgetGate, b5 as withDryRun, b6 as withRateLimiter, b7 as withRetry, b8 as withTimeout } from '../../index-D-AEQVLo.js';
4
- export { F as FallbackAdapterOptions, a as FallbackFixture, b as FallbackMissError, c as FallbackMissPolicy, R as ReplayCacheKeyContext, d as ReplayCacheMissError, e as ReplayCacheMode, W as WithReplayCacheOptions, f as canonicalJson, g as fallbackAdapter, w as withReplayCache } from '../../fallback-CqYVLL6X.js';
5
- export { c as CircuitOpenError } from '../../index-B-i4_g3k.js';
6
- export { f as DEFAULT_DECAY_RATE } from '../../decay-CdEBmDIs.js';
7
- import '../../node-ClS5yC-B.js';
8
- import '../../extra/sources.js';
9
- import '../../reactive-log-BezYsbA_.js';
10
- import '../../extra/storage-tiers.js';
11
- import '../../graph-7VguS7a4.js';
12
- import '../../meta-BgVAsg9j.js';
13
- import '../../extra/storage-core.js';
14
- import '../../index-DBHK8O6H.js';
15
- import '../../pipeline-graph-loP57TBA.js';
16
- import '../../sugar-DLwvMr3F.js';
17
- import '../../index-CZQXo5tH.js';
18
- import '../../index-CPT7C_f1.js';
19
- import '../../index-BP8a88zx.js';
20
- import '../../content-addressed-storage-DuYMjV7o.js';
21
- import '../../reactive-map-BVVPdvmi.js';
1
+ export * from '@graphrefly/pure-ts/patterns/ai';
@@ -1 +1,3 @@
1
- import{$ as ma,A as N,B as O,C as P,D as Q,E as R,F as S,G as T,H as U,I as V,J as W,K as X,L as Y,M as Z,N as _,O as $,P as aa,Q as ba,R as ca,S as da,T as ea,U as fa,V as ga,W as ha,X as ia,Y as ja,Z as ka,_ as la,a as c,aa as na,b as n,ba as oa,c as o,ca as pa,d as p,e as q,f as r,g as s,h as t,i as u,j as v,k as w,l as x,m as y,n as z,o as D,p as E,q as F,r as G,u as H,v as I,w as J,x as K,y as L,z as M}from"../../chunk-QE4IGY7I.js";import"../../chunk-SUWT3ZON.js";import"../../chunk-OYJKFY7V.js";import"../../chunk-JNWRYDJN.js";import{a as d,b as k,c as l,d as m,e as A,f as B,g as C}from"../../chunk-PT7W5FCD.js";import{a as e,g as f,h as g,i as h,j as i,k as j}from"../../chunk-Q4U3A3L5.js";import"../../chunk-Y4NI3X7O.js";import"../../chunk-CUNIRONA.js";import"../../chunk-4I45FVQS.js";import"../../chunk-6HOSXQKF.js";import{a as b}from"../../chunk-TSOYJ743.js";import"../../chunk-O2BLLH7M.js";import{e as a}from"../../chunk-VNC3TMVY.js";import"../../chunk-XG62INFA.js";import"../../chunk-FDQGFWLF.js";import"../../chunk-L6NSJVJZ.js";import"../../chunk-KVV66NN2.js";import"../../chunk-3G5U5QNE.js";import"../../chunk-C72GO4IZ.js";import"../../chunk-626TESAC.js";import"../../chunk-ESMPEKEV.js";import"../../chunk-D5RFJOZ2.js";import"../../chunk-CE72X3WO.js";import"../../chunk-VOPGGIL7.js";import"../../chunk-4VVTGLXJ.js";import"../../chunk-35JTVPOX.js";import"../../chunk-TZQPPQEQ.js";import"../../chunk-JQFH2DV6.js";import"../../chunk-V5A7M7RJ.js";import"../../chunk-LYCLF26R.js";import"../../chunk-CK2E7BTU.js";import"../../chunk-QYADASLV.js";export{ga as AgentLoopGraph,A as AllTiersExhaustedError,v as BudgetExhaustedError,V as ChatStreamGraph,a as CircuitOpenError,b as DEFAULT_DECAY_RATE,i as FallbackMissError,E as LLMTimeoutError,f as ReplayCacheMissError,Z as ToolRegistryGraph,ba as admissionFilter3D,aa as admissionScored,ha as agentLoop,ia as agentMemory,d as anthropicAdapter,h as canonicalJson,B as cascadingLlmAdapter,W as chatStream,s as composePricing,p as computePrice,T as contentGate,P as costMeterExtractor,m as createAdapter,c as createCapabilitiesRegistry,q as createPricingRegistry,e as dryRunAdapter,j as fallbackAdapter,H as frozenContext,N as gatedStream,ja as gaugesAsContext,k as googleAdapter,ka as graphFromSpec,la as graphFromSpecReactive,X as handoff,Q as keywordFlagExtractor,ma as knobsAsTools,L as llmConsolidator,K as llmExtractor,fa as memoryRetrieval,da as memoryWithKG,ea as memoryWithTiers,ca as memoryWithVectors,n as observableAdapter,l as openAICompatAdapter,y as parseRateLimitFromError,t as pricingFor,J as promptCall,I as promptNode,U as redactor,r as registryPricing,G as resilientAdapter,R as streamExtractor,M as streamingPromptNode,na as suggestStrategy,oa as suggestStrategyReactive,O as systemPromptBuilder,C as tier,S as toolCallExtractor,Y as toolExecution,_ as toolRegistry,$ as toolSelector,pa as validateGraphDef,u as withBreaker,w as withBudgetGate,x as withDryRun,z as withRateLimiter,g as withReplayCache,D as withRetry,F as withTimeout,o as zeroPrice};
1
+ // src/patterns/ai/index.ts
2
+ export * from "@graphrefly/pure-ts/patterns/ai";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/patterns/ai/index.ts"],"sourcesContent":["// Phase 13.9.A shim — re-export from pure-TS sibling until\n// @graphrefly/native (napi binding) and per-milestone swap-overs land.\nexport * from \"@graphrefly/pure-ts/patterns/ai\";\n"],"mappings":";AAEA,cAAc;","names":[]}
@@ -1 +1,21 @@
1
- "use strict";var ce=Object.defineProperty;var xt=Object.getOwnPropertyDescriptor;var At=Object.getOwnPropertyNames;var St=Object.prototype.hasOwnProperty;var k=(t,e)=>()=>(t&&(e=t(t=0)),e);var Mt=(t,e)=>{for(var n in e)ce(t,n,{get:e[n],enumerable:!0})},Nt=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of At(e))!St.call(t,o)&&o!==n&&ce(t,o,{get:()=>e[o],enumerable:!(r=xt(e,o))||r.enumerable});return t};var Et=t=>Nt(ce({},"__esModule",{value:!0}),t);function Re(){return Math.trunc(performance.now()*1e6)}function D(){return Date.now()*1e6}var Y=k(()=>{"use strict"});var G,A,L,O,I,V,$,R,S,y,H,ye,Dt,me,It,Vt,be,De,Ie,Ve,ve,X=k(()=>{"use strict";G=Symbol.for("graphrefly/START"),A=Symbol.for("graphrefly/DATA"),L=Symbol.for("graphrefly/DIRTY"),O=Symbol.for("graphrefly/RESOLVED"),I=Symbol.for("graphrefly/INVALIDATE"),V=Symbol.for("graphrefly/PAUSE"),$=Symbol.for("graphrefly/RESUME"),R=Symbol.for("graphrefly/TEARDOWN"),S=Symbol.for("graphrefly/COMPLETE"),y=Symbol.for("graphrefly/ERROR"),H=Object.freeze([L]),ye=Object.freeze([O]),Dt=Object.freeze([I]),me=Object.freeze([G]),It=Object.freeze([S]),Vt=Object.freeze([R]),be=Object.freeze([H]),De=Object.freeze([ye]),Ie=Object.freeze([Dt]),Ve=Object.freeze([It]),ve=Object.freeze([Vt])});function Ge(t){t.registerCodec(Gt)}var Gt,He=k(()=>{"use strict";Gt={name:"json",version:1,contentType:"application/json",encode(t){let e=JSON.stringify(t);return new TextEncoder().encode(e)},decode(t,e){let n=new TextDecoder().decode(t);return JSON.parse(n)}}});function Z(t){if(t==null)return Ht;let{type:e,id:n,...r}=t;return{type:e??"system",id:n??"",...r}}var Ht,Ue=k(()=>{"use strict";Ht={type:"system",id:""}});function We(){return _e>0||Ut}function $e(){return _e>0}function ze(t){_e>0?jt.push(t):t()}function Q(t,e,n){if(e.length===0)return;if(e.length===1){let c=n(e[0][0]);if(c<3||!We()){t(e);return}(c>=5?Be:c===4?Ke:je).push(()=>t(e));return}let r=e.length,o=r,i=r,d=r,s=0;for(;s<r&&n(e[s][0])<3;)s++;for(o=s;s<r&&n(e[s][0])===3;)s++;for(i=s;s<r&&n(e[s][0])===4;)s++;d=s;let a=We();if(o>0){let c=e.slice(0,o);t(c)}if(i>o){let c=e.slice(o,i);a?je.push(()=>t(c)):t(c)}if(d>i){let c=e.slice(i,d);a?Ke.push(()=>t(c)):t(c)}if(r>d){let c=e.slice(d,r);a?Be.push(()=>t(c)):t(c)}}var _e,Ut,je,Ke,Be,jt,qe=k(()=>{"use strict";_e=0,Ut=!1,je=[],Ke=[],Be=[],jt=[]});function Ye(t){t.registerMessageType(G,{tier:0,wireCrossing:!1}),t.registerMessageType(L,{tier:1,wireCrossing:!1}),t.registerMessageType(I,{tier:1,wireCrossing:!1,metaPassthrough:!1}),t.registerMessageType(V,{tier:2,wireCrossing:!1}),t.registerMessageType($,{tier:2,wireCrossing:!1}),t.registerMessageType(A,{tier:3,wireCrossing:!0}),t.registerMessageType(O,{tier:3,wireCrossing:!0}),t.registerMessageType(S,{tier:4,wireCrossing:!0,metaPassthrough:!1}),t.registerMessageType(y,{tier:4,wireCrossing:!0,metaPassthrough:!1}),t.registerMessageType(R,{tier:5,wireCrossing:!0,metaPassthrough:!1})}var ee,Je=k(()=>{"use strict";X();ee=class{_messageTypes=new Map;_codecs=new Map;_onMessage;_onSubscribe;_defaultVersioning;_defaultHashFn;_inspectorEnabled=!(typeof process<"u"&&process.env?.NODE_ENV==="production");_globalInspector;_rigorRecorder;_frozen=!1;tierOf;constructor(e){this._onMessage=e.onMessage,this._onSubscribe=e.onSubscribe,this._defaultVersioning=e.defaultVersioning,this._defaultHashFn=e.defaultHashFn,this.tierOf=n=>{let r=this._messageTypes.get(n);return r!=null?r.tier:1}}get onMessage(){return this._frozen=!0,this._onMessage}get onSubscribe(){return this._frozen=!0,this._onSubscribe}set onMessage(e){this._assertUnfrozen(),this._onMessage=e}set onSubscribe(e){this._assertUnfrozen(),this._onSubscribe=e}get defaultVersioning(){return this._defaultVersioning}set defaultVersioning(e){this._assertUnfrozen(),this._defaultVersioning=e}get defaultHashFn(){return this._defaultHashFn}set defaultHashFn(e){this._assertUnfrozen(),this._defaultHashFn=e}get inspectorEnabled(){return this._inspectorEnabled}set inspectorEnabled(e){this._inspectorEnabled=e}get globalInspector(){return this._globalInspector}set globalInspector(e){this._globalInspector=e}get rigorRecorder(){return this._rigorRecorder}set rigorRecorder(e){this._rigorRecorder=e}registerMessageType(e,n){return this._assertUnfrozen(),this._messageTypes.set(e,{tier:n.tier,wireCrossing:n.wireCrossing??n.tier>=3,metaPassthrough:n.metaPassthrough??!0}),this}messageTier(e){let n=this._messageTypes.get(e);return n!=null?n.tier:1}isWireCrossing(e){let n=this._messageTypes.get(e);return n!=null?n.wireCrossing:!0}isLocalOnly(e){return!this.isWireCrossing(e)}isMetaPassthrough(e){let n=this._messageTypes.get(e);return n!=null?n.metaPassthrough:!0}isKnownMessageType(e){return this._messageTypes.has(e)}registerCodec(e){return this._assertUnfrozen(),this._codecs.set(e.name,e),this}lookupCodec(e){return this._codecs.get(e)}_isFrozen(){return this._frozen}_assertUnfrozen(){if(this._frozen)throw new Error("GraphReFlyConfig is frozen: a node has already captured this config. Register custom types and set hooks before creating any node.")}}});var U,Xe=k(()=>{"use strict";U=class extends Error{actor;action;nodeName;constructor(e,n){super(n??`GuardDenied: action "${String(e.action)}" denied for actor type "${String(e.actor.type)}"`),this.name="GuardDenied",this.actor=e.actor,this.action=e.action,this.nodeName=e.nodeName}get node(){return this.nodeName}}});function Te(t){if(t===void 0)return null;if(typeof t=="number"){if(!Number.isFinite(t))throw new TypeError(`Cannot hash non-finite number: ${t}`);if(Number.isInteger(t)&&!Number.isSafeInteger(t))throw new TypeError(`Cannot hash integer outside safe range (|n| > 2^53-1): ${t}. Cross-language cid parity is not guaranteed for unsafe integers.`);return t}if(typeof t=="string"||typeof t=="boolean"||t===null)return t;if(Array.isArray(t))return t.map(Te);if(typeof t=="object"&&t!==null){let e={};for(let n of Object.keys(t).sort())e[n]=Te(t[n]);return e}return null}function Wt(t){let e=Bt.encode(t),n=e.length,r=n*8,o=n+9+63&-64,i=new Uint8Array(o);i.set(e),i[n]=128;let d=new DataView(i.buffer);d.setUint32(o-4,r>>>0,!1),d.setUint32(o-8,Math.floor(r/4294967296)>>>0,!1);let s=1779033703,a=3144134277,c=1013904242,l=2773480762,u=1359893119,p=2600822924,f=528734635,h=1541459225,m=new Uint32Array(64),v=(M,w)=>M>>>w|M<<32-w;for(let M=0;M<o;M+=64){for(let _=0;_<16;_++)m[_]=d.getUint32(M+_*4,!1);for(let _=16;_<64;_++){let B=m[_-15],W=m[_-2],q=v(B,7)^v(B,18)^B>>>3,de=v(W,17)^v(W,19)^W>>>10;m[_]=m[_-16]+q+m[_-7]+de>>>0}let w=s,E=a,N=c,g=l,b=u,C=p,F=f,ae=h;for(let _=0;_<64;_++){let B=v(b,6)^v(b,11)^v(b,25),W=b&C^~b&F,q=ae+B+W+Kt[_]+m[_]>>>0,de=v(w,2)^v(w,13)^v(w,22),wt=w&E^w&N^E&N,kt=de+wt>>>0;ae=F,F=C,C=b,b=g+q>>>0,g=N,N=E,E=w,w=q+kt>>>0}s=s+w>>>0,a=a+E>>>0,c=c+N>>>0,l=l+g>>>0,u=u+b>>>0,p=p+C>>>0,f=f+F>>>0,h=h+ae>>>0}let T=M=>M.toString(16).padStart(8,"0");return T(s)+T(a)+T(c)+T(l)+T(u)+T(p)+T(f)+T(h)}function we(t){let e=Te(t??null),n=JSON.stringify(e);return Wt(n).slice(0,16)}function $t(){let t=globalThis.crypto;if(t?.randomUUID)return t.randomUUID();let e=()=>Math.floor(Math.random()*4294967296).toString(16).padStart(8,"0"),n=e()+e()+e()+e();return`${n.slice(0,8)}-${n.slice(8,12)}-4${n.slice(13,16)}-${(parseInt(n.slice(16,17),16)&3|8).toString(16)}${n.slice(17,20)}-${n.slice(20,32)}`}function ke(t,e,n){let r=n?.id??$t();if(t===0)return{id:r,version:0};let i=(n?.hash??we)(e);return{id:r,version:0,cid:i,prev:null}}function Ze(t,e,n){t.version+=1,"cid"in t&&(t.prev=t.cid,t.cid=n(e))}var Kt,Bt,Qe=k(()=>{"use strict";Kt=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Bt=new TextEncoder});function nt(t){return{node:t,unsub:null,prevData:void 0,dirty:!1,involvedThisWave:!1,dataBatch:[],terminal:void 0}}function xe(t){t.prevData=void 0,t.dirty=!1,t.involvedThisWave=!1,t.dataBatch.length=0,t.terminal=void 0}function te(t){return t.length===0?t:typeof t[0]=="symbol"?[t]:t}function ot(t,e,n){let r=rt(t)?t:[],o=typeof t=="function"?t:typeof e=="function"?e:void 0,i={};return rt(t)?i=(Ae(e)?e:n)??{}:Ae(t)?i=t:i=(Ae(e)?e:n)??{},new ne(r,o,i)}var et,tt,zt,qt,Se,ne,rt,Ae,st=k(()=>{"use strict";He();Ue();qe();Y();Je();Xe();X();Qe();et=()=>{},tt=100;zt=(t,e,n,r)=>{n.direction==="down-in"&&t._onDepMessage(n.depIndex,e)},qt=(t,e,n,r)=>{let o=t;if(o._status==="completed"||o._status==="errored")return;let i=o._cached,d=i===void 0?[me]:[me,[A,i]];o._status==="dirty"&&d.push(H),Q(e,d,o._config.tierOf)},Se=new ee({onMessage:zt,onSubscribe:qt});Ye(Se);Ge(Se);ne=class t{_optsName;_describeKind;meta;_hasMeta;_config;_deps;_sinks=null;_sinkCount=0;_cached;_status;_cleanup;_store={};_waveHasNewData=!1;_hasNewTerminal=!1;_hasCalledFnOnce=!1;_paused=!1;_pendingWave=!1;_isExecutingFn=!1;_pendingRerun=!1;_rerunDepth=0;_dirtyDepCount=0;_batchPendingMessages=null;_pauseLocks=null;_pauseBuffer=null;_fn;_equals;_resubscribable;_resetOnTeardown;_autoComplete;_autoError;_pausable;_partial;_guard;_extraGuards;_hashFn;_versioning;_versioningLevel;_lastMutation;_inspectorHooks;_actions;constructor(e,n,r){this._config=r.config??Se,this._config.onMessage,this._optsName=r.name,this._describeKind=r.describeKind,this._equals=r.equals??Object.is,this._resubscribable=r.resubscribable??!1,this._resetOnTeardown=r.resetOnTeardown??!1,this._autoComplete=r.completeWhenDepsComplete??!0,this._autoError=r.errorWhenDepsError??!0,this._pausable=r.pausable??!0,this._guard=r.guard,this._fn=n,this._partial=r.partial??!1,this._cached=r.initial!==void 0?r.initial:void 0,this._status=e.length===0&&n==null&&this._cached!==void 0?"settled":"sentinel",this._hashFn=r.versioningHash??this._config.defaultHashFn??we;let o=r.versioning??this._config.defaultVersioning;this._versioningLevel=o,this._versioning=o!=null?ke(o,this._cached===void 0?void 0:this._cached,{id:r.versioningId,hash:this._hashFn}):void 0,this._deps=e.map(nt);let i={};for(let[s,a]of Object.entries(r.meta??{})){let c={initial:a,name:`${r.name??"node"}:meta:${s}`,describeKind:"state",config:this._config};r.guard!=null&&(c.guard=r.guard),i[s]=new t([],void 0,c)}Object.freeze(i),this.meta=i,this._hasMeta=Object.keys(i).length>0;let d=this;this._actions={emit(s){d._emit([[A,s]])},down(s){d._emit(te(s))},up(s){d._emitUp(te(s))}},this.down=this.down.bind(this),this.up=this.up.bind(this)}get _isTerminal(){return this._status==="completed"||this._status==="errored"}get name(){return this._optsName}get status(){return this._status}get cache(){return this._cached===void 0?void 0:this._cached}get lastMutation(){return this._lastMutation}get v(){return this._versioning}hasGuard(){return this._guard!=null}_applyVersioning(e,n){if(this._isExecutingFn)throw new Error(`Node "${this.name}": _applyVersioning cannot run mid-fn \u2014 call it outside of \`_execFn\` (typically at graph setup time before the first subscribe).`);let r=this._versioningLevel;if(r!=null&&e<=r)return;let o=n?.hash??this._hashFn;o!==this._hashFn&&(this._hashFn=o);let i=this._cached===void 0?void 0:this._cached,d=this._versioning,s=d?.id??n?.id,a=d?.version??0,c=ke(e,i,{id:s,hash:o});c.version=a,this._versioning=c,this._versioningLevel=e}_setInspectorHook(e){return e==null?()=>{}:(this._inspectorHooks==null&&(this._inspectorHooks=new Set),this._inspectorHooks.add(e),()=>{this._inspectorHooks?.delete(e),this._inspectorHooks?.size===0&&(this._inspectorHooks=void 0)})}_pushGuard(e){return this._extraGuards==null&&(this._extraGuards=new Set),this._extraGuards.add(e),()=>{this._extraGuards?.delete(e),this._extraGuards?.size===0&&(this._extraGuards=void 0)}}allowsObserve(e){if(this._guard==null&&this._extraGuards==null)return!0;let n=Z(e);if(this._guard!=null&&!this._guard(n,"observe"))return!1;if(this._extraGuards!=null){for(let r of this._extraGuards)if(!r(n,"observe"))return!1}return!0}_checkGuard(e){if(e?.internal)return;let n=this._guard!=null||this._extraGuards!=null,r=e?.actor!=null;if(!n&&!r)return;let o=Z(e?.actor),i=e?.delivery==="signal"?"signal":"write";if(this._guard!=null&&!this._guard(o,i))throw new U({actor:o,action:i,nodeName:this.name});if(this._extraGuards!=null){for(let d of this._extraGuards)if(!d(o,i))throw new U({actor:o,action:i,nodeName:this.name})}this._lastMutation={actor:o,timestamp_ns:D()}}down(e,n){let r=te(e);r.length!==0&&(this._checkGuard(n),this._emit(r))}emit(e,n){this._checkGuard(n),this._emit([[A,e]])}up(e,n){if(this._deps.length===0)return;let r=te(e);if(r.length===0)return;this._checkGuard(n);let o=n??{internal:!0};this._validateUpTiers(r);for(let i of this._deps)i.node.up?.(r,o)}_emitUp(e){if(this._deps.length!==0&&e.length!==0){this._validateUpTiers(e);for(let n of this._deps)n.node.up?.(e,{internal:!0})}}_validateUpTiers(e){let n=this._config.tierOf;for(let r of e){let o=n(r[0]);if(o===3||o===4)throw new Error(`Node "${this.name}": tier-${o} messages cannot flow up \u2014 DATA/RESOLVED/COMPLETE/ERROR are downstream-only. Use \`down(...)\` for value delivery; \`up(...)\` is for control signals (DIRTY, INVALIDATE, PAUSE, RESUME, TEARDOWN).`)}}subscribe(e,n){if(n!=null&&this._guard!=null){let a=Z(n);if(!this._guard(a,"observe"))throw new U({actor:a,action:"observe",nodeName:this.name})}let o=this._isTerminal&&this._resubscribable;if(o){this._cached=void 0,this._status="sentinel",this._store={},this._hasCalledFnOnce=!1,this._waveHasNewData=!1,this._hasNewTerminal=!1,this._paused=!1,this._pendingWave=!1,this._pendingRerun=!1,this._isExecutingFn=!1,this._rerunDepth=0,this._dirtyDepCount=0,this._pauseLocks=null,this._pauseBuffer=null;for(let a of this._deps)xe(a);if(this._partial===!1){for(let a of this._deps)if(a.prevData!==void 0||a.dataBatch.length!==0||a.terminal!==void 0||a.dirty)throw new Error(`resubscribable-reset invariant: DepRecord not fully reset for node ${this._optsName??"(anonymous)"}`)}}this._sinkCount+=1;let i;try{i=this._config.onSubscribe(this,e,{sinkCount:this._sinkCount,afterTerminalReset:o},this._actions)}catch(a){throw this._sinkCount-=1,a}this._sinks==null?this._sinks=e:typeof this._sinks=="function"?this._sinks=new Set([this._sinks,e]):this._sinks.add(e);let d=this._isTerminal;if(this._sinkCount===1&&!d)try{this._activate()}catch(a){if(this._sinkCount-=1,this._removeSink(e),this._sinkCount===0&&(this._status="sentinel"),typeof i=="function")try{i()}catch{}throw a}this._status==="sentinel"&&this._cached===void 0&&(this._status="pending");let s=!1;return()=>{s||(s=!0,this._sinkCount-=1,this._removeSink(e),typeof i=="function"&&i(),this._sinks==null&&this._deactivate())}}_removeSink(e){if(this._sinks===e)this._sinks=null;else if(this._sinks!=null&&typeof this._sinks!="function")if(this._sinks.delete(e),this._sinks.size===1){let[n]=this._sinks;this._sinks=n}else this._sinks.size===0&&(this._sinks=null)}_activate(){if(this._deps.length===0){this._fn&&this._execFn();return}this._dirtyDepCount=0;let e=this._deps.length,n=0;try{for(let r=0;r<e;r++){let o=r,i=this._deps[r];i.unsub=et,i.unsub=i.node.subscribe(d=>{if(i.unsub===null)return;let s=this._config.tierOf,a=!1;for(let c of d)s(c[0])>=3&&(a=!0),this._config.onMessage(this,c,{direction:"down-in",depIndex:o},this._actions);a&&this._maybeRunFnOnSettlement()}),n++}}catch(r){this._deps[n].unsub=null;for(let o=0;o<n;o++){let i=this._deps[o];if(i.unsub!=null){let d=i.unsub;i.unsub=null;try{d()}catch{}xe(i)}}throw this._dirtyDepCount=0,r}}_addDep(e){for(let o=0;o<this._deps.length;o++)if(this._deps[o].node===e)return o;let n=this._deps.length,r=nt(e);if(this._deps.push(r),this._sinks==null)return n;r.dirty=!0,this._dirtyDepCount++,this._status!=="dirty"&&this._emit(be),r.unsub=et;try{r.unsub=e.subscribe(o=>{if(r.unsub===null)return;let i=this._config.tierOf,d=!1;for(let s of o)i(s[0])>=3&&(d=!0),this._config.onMessage(this,s,{direction:"down-in",depIndex:n},this._actions);d&&this._maybeRunFnOnSettlement()})}catch(o){throw r.unsub=null,this._deps.pop(),this._dirtyDepCount--,o}return n}_deactivate(e=!1){let n=this._cleanup;if(this._cleanup=void 0,typeof n=="function")try{n()}catch(r){this._emit([[y,this._wrapFnError("cleanup threw",r)]])}else if(n!=null&&typeof n=="object"){let r=n.deactivate;if(typeof r=="function")try{r()}catch(o){this._emit([[y,this._wrapFnError("cleanup.deactivate threw",o)]])}}for(let r of this._deps){if(r.unsub!=null){let o=r.unsub;r.unsub=null;try{o()}catch{}}xe(r)}this._waveHasNewData=!1,this._hasNewTerminal=!1,this._hasCalledFnOnce=!1,this._paused=!1,this._pendingWave=!1,this._pendingRerun=!1,this._rerunDepth=0,this._store={},this._dirtyDepCount=0,this._pauseLocks=null,this._pauseBuffer=null,this._fn!=null&&(this._cached=void 0),e||(this._fn!=null||this._deps.length>0)&&(!this._isTerminal||this._resubscribable)&&(this._status="sentinel")}_onDepMessage(e,n){let r=this._deps[e],o=n[0];if(this._inspectorHooks!=null){let i={kind:"dep_message",depIndex:e,message:n};for(let d of this._inspectorHooks)d(i)}if(o!==G){if(o===L){this._depDirtied(r);return}if(o===I){if(this._depInvalidated(r),this._cached===void 0)return;this._emit(Ie);return}if(o===V||o===$){this._emit([n]);return}if(o===R){this._emit(ve);return}if(o===A)this._depSettledAsData(r,n[1]);else if(o===O)this._depSettledAsResolved(r);else if(o===S)this._depSettledAsTerminal(r,!0);else if(o===y)this._depSettledAsTerminal(r,n[1]);else{this._emit([n]);return}if(!this._fn){(o===A||o===O)&&this._emit([n]),(o===S||o===y)&&this._maybeAutoTerminalAfterWave();return}}}_depDirtied(e){e.dirty||(e.dirty=!0,e.involvedThisWave=!0,this._dirtyDepCount++,this._status!=="dirty"&&this._emit(be))}_depSettledAsData(e,n){e.dirty&&(e.dirty=!1,this._dirtyDepCount--),e.involvedThisWave=!0,e.dataBatch.push(n),this._waveHasNewData=!0}_depSettledAsResolved(e){e.dirty&&(e.dirty=!1,this._dirtyDepCount--)}_depSettledAsTerminal(e,n){e.dirty&&(e.dirty=!1,this._dirtyDepCount--),e.terminal=n,e.involvedThisWave=!0,this._hasNewTerminal=!0}_depInvalidated(e){e.prevData=void 0,e.terminal=void 0,e.dataBatch.length=0,e.dirty?e.involvedThisWave=!1:(e.dirty=!0,e.involvedThisWave=!0,this._dirtyDepCount++)}_maybeRunFnOnSettlement(){if(!(this._isTerminal&&!this._resubscribable)&&!(this._dirtyDepCount>0)){if(!this._partial&&!this._hasCalledFnOnce)for(let e=0;e<this._deps.length;e++){let n=this._deps[e];if(n.dataBatch.length===0&&n.prevData===void 0&&n.terminal===void 0){this._maybeAutoTerminalAfterWave();return}}if(this._paused){this._pendingWave=!0;return}if(!this._waveHasNewData&&!this._hasNewTerminal&&this._hasCalledFnOnce){this._clearWaveFlags(),this._emit(De),this._maybeAutoTerminalAfterWave();return}this._fn&&this._execFn(),this._maybeAutoTerminalAfterWave()}}_maybeAutoTerminalAfterWave(){if(this._deps.length===0||this._isTerminal)return;let e=this._deps.find(n=>n.terminal!==void 0&&n.terminal!==!0);if(e!=null){this._autoError&&this._emit([[y,e.terminal]]);return}this._autoComplete&&this._deps.every(n=>n.terminal!==void 0)&&this._emit(Ve)}_execFn(){if(!this._fn||this._isTerminal&&!this._resubscribable)return;if(this._isExecutingFn){this._pendingRerun=!0;return}let e=this._cleanup;if(typeof e=="function"){this._cleanup=void 0;try{e()}catch(d){this._emit([[y,this._wrapFnError("cleanup threw",d)]]);return}}else if(e!=null&&typeof e=="object"){let d=e.beforeRun;if(typeof d=="function"){e.beforeRun=void 0;try{d()}catch(s){this._emit([[y,this._wrapFnError("cleanup.beforeRun threw",s)]]);return}}}let n=this._deps.map(d=>d.involvedThisWave?d.dataBatch.length>0?[...d.dataBatch]:[]:void 0),r=this._deps.map(d=>d.prevData);for(let d=0;d<this._deps.length;d++){let s=n[d];s!=null&&s.length>0&&(this._deps[d].prevData=s[s.length-1])}let o=this._deps.map(d=>d.terminal),i={prevData:r,terminalDeps:o,store:this._store};if(this._hasCalledFnOnce=!0,this._clearWaveFlags(),this._inspectorHooks!=null){let d={kind:"run",batchData:n,prevData:r};for(let s of this._inspectorHooks)s(d)}this._isExecutingFn=!0;try{let d=this._fn(n,this._actions,i);if(typeof d=="function")this._cleanup=d;else if(d!=null&&typeof d=="object"){let s=d;(typeof s.beforeRun=="function"||typeof s.deactivate=="function"||typeof s.invalidate=="function")&&(this._cleanup=d)}}catch(d){this._emit([[y,this._wrapFnError("fn threw",d)]])}finally{this._isExecutingFn=!1,this._pendingRerun?(this._pendingRerun=!1,this._rerunDepth+=1,this._rerunDepth>tt?(this._rerunDepth=0,this._emit([[y,new Error(`Node "${this.name}": _pendingRerun depth exceeded ${tt} \u2014 likely a reactive cycle`)]])):this._maybeRunFnOnSettlement()):this._rerunDepth=0,this._clearWaveFlags()}}_clearWaveFlags(){this._waveHasNewData=!1,this._hasNewTerminal=!1;for(let e of this._deps)e.involvedThisWave=!1,e.dataBatch.length=0}_wrapFnError(e,n){let r=n instanceof Error?n.message:String(n);return new Error(`Node "${this.name}": ${e}: ${r}`,{cause:n})}_frameBatch(e){let n=this._config.tierOf;if(e.length===1)return n(e[0][0])===3&&this._status!=="dirty"?[H,e[0]]:e;let r=!0,o=!1,i=!1,d=-1;for(let a of e){let c=n(a[0]);c<d&&(r=!1),c===3&&(o=!0),a[0]===L&&(i=!0),d=c}let s=e;if(!r){let a=e.map((c,l)=>({m:c,i:l,tier:n(c[0])}));a.sort((c,l)=>c.tier-l.tier||c.i-l.i),s=a.map(c=>c.m)}if(o&&!i&&this._status!=="dirty"){let a=0;for(;a<s.length&&n(s[a][0])===0;)a++;return a===0?[H,...s]:[...s.slice(0,a),H,...s.slice(a)]}return s}_emit(e){if(e.length===0)return;for(let s=0;s<e.length;s++){let a=e[s];if(a[0]===y&&a[1]===void 0)throw new TypeError('[ERROR, payload] requires a non-undefined payload (spec \xA71.2). Pass an Error object or domain tag instead \u2014 e.g. node.down([[ERROR, new Error("reason")]])')}let n=e;if(this._isTerminal&&!this._resubscribable){let s=e.filter(a=>a[0]===R||a[0]===I);if(s.length===0)return;n=s}n=this._frameBatch(n);let o=null;for(let s=0;s<n.length;s++){let a=n[s],c=a[0];if(c!==V&&c!==$){o?.push(a);continue}if(a.length<2)throw new Error(`Node "${this.name}": [[${c===V?"PAUSE":"RESUME"}]] must carry a lockId payload \u2014 bare PAUSE/RESUME is a protocol violation (C0 rule). Use \`[[PAUSE, lockId]]\` / \`[[RESUME, lockId]]\`.`);let l=!0;if(this._pausable!==!1){let u=a[1];if(c===V)this._pauseLocks==null&&(this._pauseLocks=new Set),this._pauseLocks.add(u),this._paused=!0,this._pausable==="resumeAll"&&this._pauseBuffer==null&&(this._pauseBuffer=[]);else if(this._pauseLocks==null||!this._pauseLocks.has(u))l=!1;else if(this._pauseLocks.delete(u),this._pauseLocks.size===0){if(this._paused=!1,this._pauseBuffer!=null&&this._pauseBuffer.length>0){let p=this._pauseBuffer;this._pauseBuffer=[],this._emit(p)}this._pendingWave&&(this._pendingWave=!1,this._maybeRunFnOnSettlement())}}l?o?.push(a):o==null&&(o=n.slice(0,s))}if(o!=null){if(o.length===0)return;n=o}if(this._hasMeta&&n.some(s=>s[0]===R))for(let s of Object.keys(this.meta))try{this.meta[s]._emit(ve)}catch{}let{finalMessages:i,equalsError:d}=this._updateState(n);if(i.length>0&&this._config.inspectorEnabled){let s=this._config.globalInspector;if(s!=null)try{s({kind:"emit",node:this,messages:i})}catch{}}if(i.length>0)if(this._paused&&this._pausable==="resumeAll"&&this._pauseBuffer!=null){let s=this._config.tierOf,a=[];for(let c of i)s(c[0])===3?this._pauseBuffer.push(c):a.push(c);a.length>0&&this._dispatchOrAccumulate(a)}else this._dispatchOrAccumulate(i);d!=null&&this._emit([[y,d]])}_updateState(e){let n=this._config.tierOf,r,o,i=-1,d=0;for(let l of e)n(l[0])===3&&d++;let s=d<=1,a=-1;if(this._versioning!=null&&d>1){for(let l=e.length-1;l>=0;l--)if(e[l][0]===A){a=l;break}}for(let l=0;l<e.length;l++){let u=e[l],p=u[0];if(p===A){if(u.length>=2){let f=!1;if(s&&this._cached!==void 0)try{f=this._equals(this._cached,u[1])}catch(h){o=this._wrapFnError("equals threw",h),i=l;break}if(f){r==null&&(r=e.slice(0,l)),r.push(ye),this._status="resolved";continue}this._cached=u[1],this._versioning!=null&&(a<0||l===a)&&Ze(this._versioning,u[1],this._hashFn)}this._status="settled",r?.push(u)}else if(r?.push(u),p===L)this._status="dirty";else if(p===O)this._status="resolved";else if(p===S){this._status="completed";{let f=this._config.rigorRecorder;if(f!=null)try{f.onTerminalTransition(this,"completed",this._autoComplete,this._autoError,this._deps.length>0)}catch{}}}else if(p===y){this._status="errored";{let f=this._config.rigorRecorder;if(f!=null)try{f.onTerminalTransition(this,"errored",this._autoComplete,this._autoError,this._deps.length>0)}catch{}}}else if(p===I){if(this._cached!==void 0){let h=this._config.rigorRecorder;if(h!=null)try{h.onNonVacuousInvalidate(this,this._cached)}catch{}}this._cached=void 0,this._status="dirty";let f=this._cleanup;if(typeof f=="function"){this._cleanup=void 0;try{f()}catch{}}else if(f!=null&&typeof f=="object"){let h=f.invalidate;if(typeof h=="function")try{h()}catch{}}}else p===R&&(this._resetOnTeardown&&(this._cached=void 0),this._deactivate(!0),this._status="sentinel")}let c=i>=0?r??e.slice(0,i):r??e;return o!=null?{finalMessages:c,equalsError:o}:{finalMessages:c}}_deliverToSinks=e=>{if(this._sinks==null)return;if(typeof this._sinks=="function"){this._sinks(e);return}let n=[...this._sinks];for(let r of n)r(e)};_dispatchOrAccumulate(e){if($e()){this._batchPendingMessages===null&&(this._batchPendingMessages=[],ze(()=>this._flushBatchPending()));for(let n of e)this._batchPendingMessages.push(n);return}Q(this._deliverToSinks,e,this._config.tierOf)}_flushBatchPending(){let e=this._batchPendingMessages;if(e===null||(this._batchPendingMessages=null,e.length===0))return;let n=this._frameBatch(e);Q(this._deliverToSinks,n,this._config.tierOf)}},rt=t=>Array.isArray(t),Ae=t=>typeof t=="object"&&t!=null&&!Array.isArray(t)});function re(t,e){return ot((r,o,i)=>t(o,i)??void 0,{describeKind:"producer",...e})}var it=k(()=>{"use strict";st()});function Me(t){return{describeKind:"producer",...t}}function at(t,e){return re(n=>{let r=!1;try{for(let o of t){if(r)return;n.emit(o)}r||n.down([[S]])}catch(o){r||n.down([[y,o]])}return()=>{r=!0}},Me(e))}function Yt(t){return t!=null&&typeof t.then=="function"}function Jt(t,e){let{signal:n,...r}=e??{};return re(o=>{let i=!1,d=()=>{i||(i=!0,o.down([[y,n.reason]]))};if(n?.aborted){d();return}return n?.addEventListener("abort",d,{once:!0}),Promise.resolve(t).then(s=>{i||(i=!0,n?.removeEventListener("abort",d),o.emit(s),o.down([[S]]))},s=>{i||(i=!0,n?.removeEventListener("abort",d),o.down([[y,s]]))}),()=>{i=!0,n?.removeEventListener("abort",d)}},Me(r))}function Xt(t,e){let{signal:n,...r}=e??{};return re(o=>{let i=new AbortController,d=()=>i.abort(n?.reason);n?.aborted?i.abort(n.reason):n?.addEventListener("abort",d,{once:!0});let s=n??i.signal,a=!1,c=t[Symbol.asyncIterator](),l=()=>{a||s.aborted||Promise.resolve(c.next()).then(u=>{if(!(a||s.aborted)){if(u.done){o.down([[S]]);return}o.emit(u.value),l()}},u=>{!a&&!s.aborted&&o.down([[y,u]])})};return l(),()=>{a=!0,n?.removeEventListener("abort",d),i.abort(),Promise.resolve(c.return?.()).catch(()=>{})}},Me(r))}function Zt(t){return t!=null&&typeof t=="object"&&"cache"in t&&typeof t.subscribe=="function"}function Ne(t,e){if(Zt(t))return t;if(Yt(t))return Jt(t,e);if(t!=null){let n=t;if(typeof n[Symbol.asyncIterator]=="function")return Xt(t,e);if(typeof n[Symbol.iterator]=="function")return at(t,e)}return Qt(t)}function Qt(...t){return at(t,void 0)}function oe(t){return new Promise((e,n)=>{let r=!1,o=!1,i;i=t.subscribe(d=>{for(let s of d){if(r)return;if(s[0]===A){r=!0,e(s[1]),i?(i(),i=void 0):o=!0;return}if(s[0]===y){r=!0,n(s[1]),i?(i(),i=void 0):o=!0;return}if(s[0]===S){r=!0,n(new Error("completed without DATA")),i?(i(),i=void 0):o=!0;return}}}),o&&(i?.(),i=void 0)})}var dt=k(()=>{"use strict";X();it()});var Ee=k(()=>{"use strict";dt()});var j,Ce=k(()=>{"use strict";j=class{_timer;_gen=0;start(e,n){this.cancel(),this._gen+=1;let r=this._gen;this._timer=setTimeout(()=>{this._timer=void 0,r===this._gen&&n()},e)}cancel(){this._timer!==void 0&&(clearTimeout(this._timer),this._timer=void 0)}get pending(){return this._timer!==void 0}}});var sn={};Mt(sn,{fallbackAdapter:()=>Tt});module.exports=Et(sn);var K=require("node:fs"),ie=require("node:path");var Oe=require("node:crypto"),x=require("node:fs"),P=require("node:path"),Ft=require("node:sqlite");function le(t){if(t===null||typeof t!="object")return t;if(Array.isArray(t))return t.map(le);let e=t,n=Object.keys(e).sort(),r={};for(let o of n)r[o]=le(e[o]);return r}function Le(t){return JSON.stringify(le(t),void 0,0)}var Ct=new TextEncoder,Lt=new TextDecoder("utf-8",{fatal:!0}),Ot={name:"json",version:1,encode(t){return Ct.encode(Le(t))},decode(t){return JSON.parse(Lt.decode(t))}};function Rt(){let t=new Map;return{name:"memory",read(e){let n=t.get(e);return n===void 0?void 0:new Uint8Array(n)},write(e,n){t.set(e,new Uint8Array(n))},delete(e){t.delete(e)},list(e){let n=[...t.keys()];return e?n.filter(r=>r.startsWith(e)).sort():n.sort()}}}function ue(t,e={}){let n=e.codec??Ot,r=e.name??t.name??"kv",o=e.compactEvery,i=new Map,d=0,s={name:r,debounceMs:e.debounceMs,compactEvery:o,filter:e.filter,save(c,l){if(!(e.filter&&!e.filter(c,l))&&(i.set(c,l),d+=1,o!==void 0&&d%o===0||!e.debounceMs))return a()},load(c){let l=t.read(c);if(l!==void 0)return l instanceof Uint8Array?l.length===0?void 0:n.decode(l):Promise.resolve(l).then(u=>u===void 0||u.length===0?void 0:n.decode(u))},delete(c){if(i.delete(c),!!t.delete)return t.delete(c)},list(c){return t.list?t.list(c):[]},async flush(){await a()},async rollback(){i=new Map}};function a(){if(i.size===0)return;let c=i;i=new Map;let l=[];for(let[u,p]of c){let f=n.encode(p),h=t.write(u,f);h instanceof Promise&&l.push(h)}if(l.length>0)return Promise.all(l).then(()=>{})}return s}function fe(t){return ue(Rt(),t)}function Pt(t){let e=new TextEncoder,n=new TextDecoder("utf-8",{fatal:!0}),r=i=>{let d="";for(let s of i){if(s.length===1&&/[a-zA-Z0-9_-]/.test(s)){d+=s;continue}for(let a of e.encode(s))d+=`%${a.toString(16).padStart(2,"0")}`}return(0,P.join)(t,`${d}.bin`)},o=i=>{if(!i.endsWith(".bin"))return null;let d=i.slice(0,-4),s=[],a=l=>{for(let u=0;u<l.length;u++)s.push(l.charCodeAt(u))},c=0;for(;c<d.length;){let l=d[c];if(l==="%"&&c+2<d.length){let u=d.slice(c+1,c+3);if(/^[0-9a-f]{2}$/i.test(u)){s.push(Number.parseInt(u,16)),c+=3;continue}}a(l),c+=1}try{return n.decode(new Uint8Array(s))}catch{return null}};return{name:`file:${t}`,read(i){try{let d=(0,x.readFileSync)(r(i));return new Uint8Array(d.buffer,d.byteOffset,d.byteLength)}catch{return}},write(i,d){(0,x.mkdirSync)(t,{recursive:!0});let s=r(i),a=(0,P.basename)(s),c=(0,P.dirname)(s),l=(0,P.join)(c,`.${a}.${(0,Oe.randomBytes)(8).toString("hex")}.tmp`);try{(0,x.writeFileSync)(l,d),(0,x.renameSync)(l,s)}catch(u){try{(0,x.unlinkSync)(l)}catch{}throw u}},delete(i){try{(0,x.unlinkSync)(r(i))}catch(d){if(d.code!=="ENOENT")throw d}},list(i){try{let d=(0,x.readdirSync)(t),s=[];for(let a of d){if(a.startsWith("."))continue;let c=o(a);c!==null&&(i!==void 0&&!c.startsWith(i)||s.push(c))}return s.sort()}catch(d){if(d.code==="ENOENT")return[];throw d}}}}function pe(t,e){return ue(Pt(t),e)}Y();async function J(t){let e=typeof t=="string"?new TextEncoder().encode(t):t,n=await globalThis.crypto.subtle.digest("SHA-256",e),r=new Uint8Array(n),o="";for(let i=0;i<r.length;i++)o+=Fe[r[i]];return o}var Fe=new Array(256);for(let t=0;t<256;t++)Fe[t]=t.toString(16).padStart(2,"0");Y();var he=class extends Error{constructor(n,r){super(`content-addressed lookup miss in read-strict mode: ${n}`);this.key=n;this.context=r;this.name="ContentAddressedMissError"}};function ge(t){let e=new Set,n=r=>{if(r===null||typeof r!="object")return r;let o=r;if(e.has(o))return{__cycle:!0};e.add(o);try{if(Array.isArray(r))return r.map(n);let i={};for(let d of Object.keys(r).sort())i[d]=n(r[d]);return i}finally{e.delete(o)}};return JSON.stringify(n(t))}function Pe(t){let{storage:e,keyContext:n,keyPrefix:r,mode:o="read-write"}=t,i=n??(s=>s);async function d(s){let a=ge(i(s)),c=await J(a);return r?`${r}:${c}`:c}return{keyFor:d,async lookup(s){if(o==="write")return;let a=await d(s),c=await e.load(a);if(c===void 0){if(o==="read-strict")throw new he(a,s);return}return c},async store(s,a){if(o==="read")return;let c=await d(s);await e.save(c,a)},async forget(s){if(o==="read"||o==="write"||!e.delete)return;let a=await d(s);await e.delete(a)}}}Ee();function ct(t,e={}){let n=e.keyFn??(o=>String(o)),r=new Map;return o=>{let i=n(o),d=r.get(i);if(d)return d;let s=t(o),a;s!=null&&typeof s.then=="function"?a=Promise.resolve(s):s!=null&&typeof s=="object"&&"subscribe"in s&&"cache"in s?a=oe(s):s!=null&&typeof s=="object"&&Symbol.asyncIterator in s?a=(async()=>{let u=s[Symbol.asyncIterator]();try{let{value:p,done:f}=await u.next();if(f)throw new Error("singleFromAny: factory returned empty async iterable");return p}finally{await u.return?.()}})():s!=null&&typeof s=="object"&&Symbol.iterator in s?a=(async()=>{let u=s[Symbol.iterator]();try{let{value:p,done:f}=u.next();if(f)throw new Error("singleFromAny: factory returned empty iterable");return p}finally{u.return?.()}})():a=Promise.resolve(s);let c,l=()=>{r.get(i)===c&&r.delete(i)};return c=a.then(u=>(l(),u),u=>{throw l(),u}),r.set(i,c),c}}Ee();Ce();function lt(t){let{storage:e,mode:n="read-write",keyFn:r,keyPrefix:o="llm-replay"}=t,d=Pe({storage:e,keyPrefix:o,mode:n==="read-strict"?"read":n,keyContext:({messages:a,opts:c})=>{let{signal:l,keyContext:u,...p}=c??{};return{messages:a,opts:p}}});async function s(a,c){if(r){if(r.length<=1){let u={messages:a,opts:c,context:c?.keyContext},p=await r(u);return`${o}:${p}`}let l=await r(a,c);return`${o}:${l}`}return d.keyFor({messages:a,opts:c})}return{keyFor:s,async lookup(a,c){if(n!=="write"){if(r){let l=await s(a,c),u=await e.load(l);return u===void 0?void 0:u}return d.lookup({messages:a,opts:c})}},async store(a,c,l){if(n!=="read"){if(r){let u=await s(a,c);await e.save(u,l);return}await d.store({messages:a,opts:c},l)}},async forget(a,c){if(!(n==="read"||n==="write")&&e.delete){if(r){let l=await s(a,c);await e.delete(l);return}await d.forget({messages:a,opts:c})}}}}function ut(t,e,n){return{provider:n?.provider??t.provider,model:n?.model??t.model,capabilities:n?.capabilities??t.capabilities?.bind(t),invoke:e.invoke,stream:e.stream}}var ft=Symbol.for("graphrefly.adapter.middlewareLayers");function pt(t,e,n){let o=[...n?en(n):[],e];return Object.defineProperty(t,ft,{value:Object.freeze(o),enumerable:!1,writable:!1,configurable:!1}),t}function en(t){let e=t[ft];return Array.isArray(e)?e:[]}var z=class extends Error{constructor(n,r){super(`withReplayCache: no cached response for ${r} (key=${n}, mode=read-strict)`);this.key=n;this.method=r}name="ReplayCacheMissError"};function ht(t,e){let n=e.mode??"read-write",r=e.cacheStreaming??!1,o=e.captureStreamCadence??!1,i=e.replaySpeed??1,d=e.keyPrefix??"llm-replay",s=n==="read"||n==="read-strict",a=lt({storage:e.storage,mode:n==="write-only"?"write":n,keyFn:e.keyFn,keyPrefix:d}),c=p=>p<=0?Promise.resolve():new Promise(f=>{new j().start(p,()=>f())}),l=ct(async({messages:p,invokeOpts:f})=>await oe(Ne(t.invoke(p,f))),{keyFn:({_precomputedKey:p})=>p}),u=ut(t,{async invoke(p,f){let h=await a.keyFor(p,f),m=await a.lookup(p,f);if(m?.response){let T=m.response;return{...T,metadata:{...T.metadata??{},replayCache:"hit"}}}if(n==="read-strict")throw new z(h,"invoke");let v=await l({messages:p,invokeOpts:f,_precomputedKey:h});return s||await a.store(p,f,{response:v,storedAtNs:D()}),v},async*stream(p,f){if(!r){for await(let g of t.stream(p,f))yield g;return}let h=await a.keyFor(p,f),m=await a.lookup(p,f);if(m){let g=m.response;if(m.streamChunks&&m.streamCadenceMs)for(let b=0;b<m.streamChunks.length;b++){let C=m.streamCadenceMs[b]??0,F=i>0?C/i:0;F>0&&await c(F),yield{type:"token",delta:m.streamChunks[b]?.delta??""}}else g.content&&(yield{type:"token",delta:g.content});g.usage&&(yield{type:"usage",usage:g.usage}),yield{type:"finish",reason:g.finishReason??"stop"};return}if(n==="read-strict")throw new z(h,"stream");let v="",T,M,w=[],E=[],N;for await(let g of t.stream(p,f)){if(g.type==="token"&&(v+=g.delta,o)){let b=Re(),C=N===void 0?0:(b-N)/1e6;E.push(C),N=b,w.push({delta:g.delta})}g.type==="usage"&&(T=g.usage),g.type==="finish"&&(M=g.reason),yield g}if((v||T)&&!s){let b={response:{content:v,usage:T??{input:{regular:0},output:{regular:0}},finishReason:M,model:t.model??f?.model??"",provider:t.provider},storedAtNs:D(),...o?{streamChunks:w,streamCadenceMs:E}:{}};await a.store(p,f,b)}}});return pt(u,"withReplayCache",t),u}var gt=ge;Ce();function se(){let t=new Error("aborted");return t.name="AbortError",t}function yt(t,e){return t<=0?Promise.resolve():e?.aborted?Promise.reject(se()):new Promise((n,r)=>{let o=new j,i,d=()=>{o.cancel(),e&&i&&e.removeEventListener("abort",i)};o.start(t,()=>{d(),n()}),e&&(i=()=>{d(),r(se())},e.addEventListener("abort",i,{once:!0}))})}function mt(t={}){let e=t.provider??"dry-run",n=t.model??"dry-run-v1",r=t.latencyMs??0,o=Math.max(1,t.streamChunkSize??16),i=t.respond??(s=>{let a=[...s].reverse().find(c=>c.role==="user");return a?`echo: ${a.content}`:"dry-run: no user message"}),d=t.usage??((s,a)=>{let c=s.reduce((l,u)=>l+u.content.length,0);return{input:{regular:Math.ceil(c/4)},output:{regular:Math.ceil(a.length/4)}}});return{provider:e,model:n,async invoke(s,a){if(await yt(r,a?.signal),a?.signal?.aborted)throw se();let c=i(s,a),l=d(s,c);return{content:c,usage:l,finishReason:"stop",model:a?.model??n,provider:e,tier:a?.tier,metadata:{dryRun:!0}}},async*stream(s,a){let c=i(s,a),l=d(s,c),u=Math.ceil(c.length/o)||1,p=r>0?r/u:0;for(let f=0;f<c.length;f+=o){if(a?.signal?.aborted)throw se();await yt(p,a?.signal),yield{type:"token",delta:c.slice(f,f+o)}}yield{type:"usage",usage:l},yield{type:"finish",reason:"stop"}}}}function bt(t,e){return{content:"[fallback: no cached response available for this request]",usage:{input:{regular:0},output:{regular:0}},finishReason:"stop",model:e,provider:t,metadata:{degraded:!0,reason:"no-fixture"}}}function vt(t,e,n){return typeof t=="string"?{content:t,usage:{input:{regular:0},output:{regular:0}},finishReason:"stop",model:n,provider:e,metadata:{degraded:!0,reason:"respond"}}:t}async function tn(t,e){if("key"in t)return t.key;let n=gt({messages:t.messages,opts:t.invokeOpts??{}}),r=await J(n);return`${e}:${r}`}function nn(t){let e={response:t.response,storedAtNs:D()};if("key"in t&&t.stream){let n=t.stream.chunks.filter(r=>r.type==="token");return{...e,streamChunks:n.map(r=>({delta:r.delta})),streamCadenceMs:t.stream.delaysMs??n.map(()=>0)}}return e}function rn(t,e){let n=[];if(t.fixtures!=null&&n.push("fixtures"),t.fixturesStorage!=null&&n.push("fixturesStorage"),n.length>1)throw new TypeError(`fallbackAdapter: \`fixtures\` and \`fixturesStorage\` are mutually exclusive; got both ${n.join(" and ")}. Pick one source. For filesystem directories use the node subpath's \`fallbackAdapter\`.`);if(t.fixtures){let r=fe(),o=t.fixtures,i=(async()=>{for(let d of o){let s=await tn(d,e);await r.save(s,nn(d))}})();return i.catch(()=>{}),{tier:r,seedReady:i}}return t.fixturesStorage?{tier:t.fixturesStorage,seedReady:Promise.resolve()}:{tier:void 0,seedReady:Promise.resolve()}}function _t(t={}){let e=t.provider??"fallback",n=t.model??"fallback",r=t.onMiss??"respond",o=t.keyPrefix??"fallback",i=t.record?t.record.adapter:r==="throw"?mt({provider:e,model:n,respond:()=>"[unreachable: read-strict mode throws on miss]"}):{provider:e,model:n,async invoke(l,u){let p=t.respond?t.respond(l,u):bt(e,n);return vt(p,e,n)},async*stream(l,u){let p=t.respond?t.respond(l,u):bt(e,n),f=vt(p,e,n);yield{type:"token",delta:f.content},f.usage&&(yield{type:"usage",usage:f.usage}),yield{type:"finish",reason:f.finishReason??"stop"}}},d,s=Promise.resolve();if(t.record){if(!t.record.storage)throw new TypeError("fallbackAdapter: `record.storage` is required in record mode. For filesystem `record.dir` convenience, use the node subpath's `fallbackAdapter`.");d=t.record.storage}else{let l=rn(t,o);d=l.tier??fe(),s=l.seedReady}let a=t.record?"read-write":r==="throw"?"read-strict":"read",c=ht(i,{storage:d,mode:a,keyPrefix:o,cacheStreaming:!0,captureStreamCadence:!0,replaySpeed:t.replaySpeed,...t.keyFn?{keyFn:t.keyFn}:{}});return{provider:e,model:n,capabilities:c.capabilities?.bind(c),async invoke(l,u){return await s,c.invoke(l,u)},async*stream(l,u){await s;for await(let p of c.stream(l,u))yield p}}}function on(t){if(!(0,K.existsSync)(t))return;let e=(0,K.readdirSync)(t).filter(a=>a.endsWith(".json"));if(e.length===0)return;let n=e[0],r=(0,ie.join)(t,n),o;try{o=JSON.parse((0,K.readFileSync)(r,"utf8"))}catch(a){throw new TypeError(`fallbackAdapter: ${r} is not valid JSON (${a.message}).`)}let i=o,d=i!=null&&"messages"in i,s=i==null||typeof i.response?.content!="string"||typeof i.storedAtNs!="number";if(d||s){let a=d?"`messages` at the top level means this looks hand-authored. ":"";throw new TypeError(`fallbackAdapter: ${r} is not in cache-file format. ${a}Expected \`{ response: { content, usage, ... }, storedAtNs, ... }\` (the shape \`withReplayCache\` and this adapter's \`record\` mode write). For hand-authored fixtures, use the inline \`fixtures: FallbackFixture[]\` option \u2014 the adapter hashes messages for you.`)}}function Tt(t={}){let e=t.keyPrefix??"fallback",n=[];if(t.fixtures!=null&&n.push("fixtures"),t.fixturesDir!=null&&n.push("fixturesDir"),t.fixturesStorage!=null&&n.push("fixturesStorage"),n.length>1)throw new TypeError(`fallbackAdapter: \`fixtures\`, \`fixturesDir\`, and \`fixturesStorage\` are mutually exclusive; got both ${n.join(" and ")}. Pick one source.`);let r=t.fixturesStorage;if(t.fixturesDir!=null){let c=(0,ie.join)(t.fixturesDir,e);on(c),r=pe(c)}let o;if(t.record){if(t.record.storage&&t.record.dir)throw new TypeError("fallbackAdapter: `record.storage` and `record.dir` are mutually exclusive; pick one.");if(t.record.storage)o={adapter:t.record.adapter,storage:t.record.storage};else{let c=t.record.dir??t.fixturesDir;if(c==null)throw new TypeError("fallbackAdapter: record mode requires either `record.dir`, `record.storage`, or an inherited `fixturesDir`.");o={adapter:t.record.adapter,storage:pe((0,ie.join)(c,e))}}}let{fixturesDir:i,record:d,...s}=t,a={...s,...r?{fixturesStorage:r}:{},...o?{record:o}:{}};return _t(a)}0&&(module.exports={fallbackAdapter});
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
+
17
+ // src/patterns/ai/node.ts
18
+ var node_exports = {};
19
+ module.exports = __toCommonJS(node_exports);
20
+ __reExport(node_exports, require("@graphrefly/pure-ts/patterns/ai/node"), module.exports);
21
+ //# sourceMappingURL=node.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/patterns/ai/node.ts"],"sourcesContent":["// Phase 13.9.A shim — re-export from pure-TS sibling until\n// @graphrefly/native (napi binding) and per-milestone swap-overs land.\nexport * from \"@graphrefly/pure-ts/patterns/ai/node\";\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AAAA;AAEA,yBAAc,iDAFd;","names":[]}
@@ -1,59 +1 @@
1
- import { KvStorageTier } from '../../extra/storage-tiers.cjs';
2
- import { L as LLMAdapter } from '../../types-B1jDWVsM.cjs';
3
- import { F as FallbackAdapterOptions } from '../../fallback-Ctlj2tMY.cjs';
4
- export { a as FallbackFixture, b as FallbackMissError, c as FallbackMissPolicy } from '../../fallback-Ctlj2tMY.cjs';
5
- import '../../node-ClS5yC-B.cjs';
6
- import '../../extra/sources.cjs';
7
- import '../../content-addressed-storage-4-ST1tYk.cjs';
8
-
9
- /**
10
- * Node-subpath extension of {@link fallbackAdapter} — adds filesystem
11
- * directory convenience options (`fixturesDir`, `record.dir`) that rely on
12
- * `node:fs` / `node:path` / `fileKv`.
13
- *
14
- * This module intentionally lives outside the main `patterns/ai` entry so
15
- * browser bundles don't pull `node:fs` / `node:path`. Import this variant
16
- * from `@graphrefly/graphrefly/patterns/ai/node` in Node
17
- * environments when you want the ergonomic directory options.
18
- *
19
- * @module
20
- */
21
-
22
- /**
23
- * Options for the node-only `fallbackAdapter`. Adds `fixturesDir` and
24
- * `record.dir` to the base options.
25
- */
26
- interface NodeFallbackAdapterOptions extends Omit<FallbackAdapterOptions, "record"> {
27
- /**
28
- * Directory of cache-format JSON files. Auto-namespaced to
29
- * `join(dir, keyPrefix)` so multiple adapters pointing at the same root
30
- * don't commingle files. Init-time validator throws a clear `TypeError`
31
- * if the namespaced subdirectory contains files that aren't in cache
32
- * format. Mutually exclusive with `fixtures` and `fixturesStorage`.
33
- */
34
- readonly fixturesDir?: string;
35
- /**
36
- * Record mode — same as the base, with `dir` as a convenience sibling to
37
- * `storage`. `dir` auto-namespaces to `join(dir, keyPrefix)`; `storage` is
38
- * pass-through. If `dir` is omitted and `fixturesDir` is set, record
39
- * defaults to writing to `fixturesDir` — the "read baseline, append
40
- * misses to same dir" pattern.
41
- */
42
- readonly record?: {
43
- readonly adapter: LLMAdapter;
44
- readonly dir?: string;
45
- readonly storage?: KvStorageTier;
46
- };
47
- }
48
- /**
49
- * Node-only `fallbackAdapter` — the base variant extended with `fixturesDir`
50
- * and `record.dir` filesystem convenience options. Resolves those to
51
- * `fileKv(...)` tiers and delegates to the base `fallbackAdapter`.
52
- *
53
- * For browser-safe usage, import `fallbackAdapter` from
54
- * `@graphrefly/graphrefly/patterns/ai` instead — that variant only accepts
55
- * `fixtures` and `fixturesStorage`, no `node:*` imports.
56
- */
57
- declare function fallbackAdapter(opts?: NodeFallbackAdapterOptions): LLMAdapter;
58
-
59
- export { FallbackAdapterOptions as BaseFallbackAdapterOptions, type NodeFallbackAdapterOptions, fallbackAdapter };
1
+ export * from '@graphrefly/pure-ts/patterns/ai/node';
@@ -1,59 +1 @@
1
- import { KvStorageTier } from '../../extra/storage-tiers.js';
2
- import { L as LLMAdapter } from '../../types-DkzUUs0H.js';
3
- import { F as FallbackAdapterOptions } from '../../fallback-CqYVLL6X.js';
4
- export { a as FallbackFixture, b as FallbackMissError, c as FallbackMissPolicy } from '../../fallback-CqYVLL6X.js';
5
- import '../../node-ClS5yC-B.js';
6
- import '../../extra/sources.js';
7
- import '../../content-addressed-storage-DuYMjV7o.js';
8
-
9
- /**
10
- * Node-subpath extension of {@link fallbackAdapter} — adds filesystem
11
- * directory convenience options (`fixturesDir`, `record.dir`) that rely on
12
- * `node:fs` / `node:path` / `fileKv`.
13
- *
14
- * This module intentionally lives outside the main `patterns/ai` entry so
15
- * browser bundles don't pull `node:fs` / `node:path`. Import this variant
16
- * from `@graphrefly/graphrefly/patterns/ai/node` in Node
17
- * environments when you want the ergonomic directory options.
18
- *
19
- * @module
20
- */
21
-
22
- /**
23
- * Options for the node-only `fallbackAdapter`. Adds `fixturesDir` and
24
- * `record.dir` to the base options.
25
- */
26
- interface NodeFallbackAdapterOptions extends Omit<FallbackAdapterOptions, "record"> {
27
- /**
28
- * Directory of cache-format JSON files. Auto-namespaced to
29
- * `join(dir, keyPrefix)` so multiple adapters pointing at the same root
30
- * don't commingle files. Init-time validator throws a clear `TypeError`
31
- * if the namespaced subdirectory contains files that aren't in cache
32
- * format. Mutually exclusive with `fixtures` and `fixturesStorage`.
33
- */
34
- readonly fixturesDir?: string;
35
- /**
36
- * Record mode — same as the base, with `dir` as a convenience sibling to
37
- * `storage`. `dir` auto-namespaces to `join(dir, keyPrefix)`; `storage` is
38
- * pass-through. If `dir` is omitted and `fixturesDir` is set, record
39
- * defaults to writing to `fixturesDir` — the "read baseline, append
40
- * misses to same dir" pattern.
41
- */
42
- readonly record?: {
43
- readonly adapter: LLMAdapter;
44
- readonly dir?: string;
45
- readonly storage?: KvStorageTier;
46
- };
47
- }
48
- /**
49
- * Node-only `fallbackAdapter` — the base variant extended with `fixturesDir`
50
- * and `record.dir` filesystem convenience options. Resolves those to
51
- * `fileKv(...)` tiers and delegates to the base `fallbackAdapter`.
52
- *
53
- * For browser-safe usage, import `fallbackAdapter` from
54
- * `@graphrefly/graphrefly/patterns/ai` instead — that variant only accepts
55
- * `fixtures` and `fixturesStorage`, no `node:*` imports.
56
- */
57
- declare function fallbackAdapter(opts?: NodeFallbackAdapterOptions): LLMAdapter;
58
-
59
- export { FallbackAdapterOptions as BaseFallbackAdapterOptions, type NodeFallbackAdapterOptions, fallbackAdapter };
1
+ export * from '@graphrefly/pure-ts/patterns/ai/node';
@@ -1 +1,3 @@
1
- import{k as f}from"../../chunk-Q4U3A3L5.js";import"../../chunk-XG62INFA.js";import"../../chunk-ESMPEKEV.js";import{g as c}from"../../chunk-VN6RDSK2.js";import"../../chunk-D5RFJOZ2.js";import"../../chunk-CE72X3WO.js";import"../../chunk-VOPGGIL7.js";import"../../chunk-4VVTGLXJ.js";import"../../chunk-35JTVPOX.js";import"../../chunk-V5A7M7RJ.js";import"../../chunk-LYCLF26R.js";import"../../chunk-CK2E7BTU.js";import"../../chunk-QYADASLV.js";import{existsSync as u,readdirSync as k,readFileSync as h}from"fs";import{join as p}from"path";function b(e){if(!u(e))return;let i=k(e).filter(o=>o.endsWith(".json"));if(i.length===0)return;let r=i[0],a=p(e,r),t;try{t=JSON.parse(h(a,"utf8"))}catch(o){throw new TypeError(`fallbackAdapter: ${a} is not valid JSON (${o.message}).`)}let s=t,l=s!=null&&"messages"in s,d=s==null||typeof s.response?.content!="string"||typeof s.storedAtNs!="number";if(l||d){let o=l?"`messages` at the top level means this looks hand-authored. ":"";throw new TypeError(`fallbackAdapter: ${a} is not in cache-file format. ${o}Expected \`{ response: { content, usage, ... }, storedAtNs, ... }\` (the shape \`withReplayCache\` and this adapter's \`record\` mode write). For hand-authored fixtures, use the inline \`fixtures: FallbackFixture[]\` option \u2014 the adapter hashes messages for you.`)}}function x(e={}){let i=e.keyPrefix??"fallback",r=[];if(e.fixtures!=null&&r.push("fixtures"),e.fixturesDir!=null&&r.push("fixturesDir"),e.fixturesStorage!=null&&r.push("fixturesStorage"),r.length>1)throw new TypeError(`fallbackAdapter: \`fixtures\`, \`fixturesDir\`, and \`fixturesStorage\` are mutually exclusive; got both ${r.join(" and ")}. Pick one source.`);let a=e.fixturesStorage;if(e.fixturesDir!=null){let n=p(e.fixturesDir,i);b(n),a=c(n)}let t;if(e.record){if(e.record.storage&&e.record.dir)throw new TypeError("fallbackAdapter: `record.storage` and `record.dir` are mutually exclusive; pick one.");if(e.record.storage)t={adapter:e.record.adapter,storage:e.record.storage};else{let n=e.record.dir??e.fixturesDir;if(n==null)throw new TypeError("fallbackAdapter: record mode requires either `record.dir`, `record.storage`, or an inherited `fixturesDir`.");t={adapter:e.record.adapter,storage:c(p(n,i))}}}let{fixturesDir:s,record:l,...d}=e,o={...d,...a?{fixturesStorage:a}:{},...t?{record:t}:{}};return f(o)}export{x as fallbackAdapter};
1
+ // src/patterns/ai/node.ts
2
+ export * from "@graphrefly/pure-ts/patterns/ai/node";
3
+ //# sourceMappingURL=node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/patterns/ai/node.ts"],"sourcesContent":["// Phase 13.9.A shim — re-export from pure-TS sibling until\n// @graphrefly/native (napi binding) and per-milestone swap-overs land.\nexport * from \"@graphrefly/pure-ts/patterns/ai/node\";\n"],"mappings":";AAEA,cAAc;","names":[]}