@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
@@ -1,9 +0,0 @@
1
- import{e as ce}from"./chunk-VQ4A6T2A.js";import{a as se,b as L}from"./chunk-5QDBSZBV.js";import{j as P}from"./chunk-626TESAC.js";import{f as ae,h as ie}from"./chunk-V5A7M7RJ.js";import{i as ne,j as U}from"./chunk-LYCLF26R.js";import{b,h as _,i as T,j as W}from"./chunk-CK2E7BTU.js";import{b as Oe,c as re,d as te,e as oe}from"./chunk-QYADASLV.js";var ke={};Oe(ke,{ACTOR_KEY:()=>F,COMMAND_HANDLERS:()=>A,CQRS_EVENT_HANDLERS:()=>S,CRON_HANDLERS:()=>D,CommandHandler:()=>me,EVENT_HANDLERS:()=>G,EventHandler:()=>ve,GRAPHREFLY_REQUEST_GRAPH:()=>R,GRAPHREFLY_ROOT_GRAPH:()=>v,GraphCron:()=>fe,GraphInterval:()=>he,GraphReflyEventExplorer:()=>x,GraphReflyGuard:()=>Re,GraphReflyGuardImpl:()=>I,GraphReflyModule:()=>Q,INTERVAL_HANDLERS:()=>O,InjectCqrsGraph:()=>de,InjectGraph:()=>ue,InjectNode:()=>pe,ObserveGateway:()=>B,OnGraphEvent:()=>le,QUERY_HANDLERS:()=>H,QueryHandler:()=>ye,SAGA_HANDLERS:()=>N,SagaHandler:()=>ge,fromHeader:()=>Ee,fromJwtPayload:()=>V,getActor:()=>we,getGraphToken:()=>m,getNodeToken:()=>y,observeSSE:()=>Me,observeSubscription:()=>Ce,toObservable:()=>se});import{Inject as j}from"@nestjs/common";var v=Symbol.for("graphrefly:root-graph");var R=Symbol.for("graphrefly:request-graph");function m(s){return Symbol.for(`graphrefly:graph:${s}`)}function y(s){return Symbol.for(`graphrefly:node:${s}`)}var G=new Map,O=new Map,D=new Map,A=new Map,S=new Map,H=new Map,N=new Map;function ue(s){return s==="request"?j(R):j(s?m(s):v)}function de(s){return j(m(s))}function pe(s){return j(y(s))}function le(s){return(e,r)=>{let t=r.name;r.addInitializer(function(){let o=this.constructor,n=G.get(o)??[];n.push({nodeName:s,methodKey:t}),G.set(o,n)})}}function he(s){return(e,r)=>{let t=r.name;r.addInitializer(function(){let o=this.constructor,n=O.get(o)??[];n.push({ms:s,methodKey:t}),O.set(o,n)})}}function fe(s){return(e,r)=>{let t=r.name;r.addInitializer(function(){let o=this.constructor,n=D.get(o)??[];n.push({expr:s,methodKey:t}),D.set(o,n)})}}function me(s,e){return(r,t)=>{let o=t.name;t.addInitializer(function(){let n=this.constructor,a=A.get(n)??[];a.push({cqrsName:s,commandName:e,methodKey:o}),A.set(n,a)})}}function ve(s,e){return(r,t)=>{let o=t.name;t.addInitializer(function(){let n=this.constructor,a=S.get(n)??[];a.push({cqrsName:s,eventName:e,methodKey:o}),S.set(n,a)})}}function ye(s,e){return(r,t)=>{let o=t.name;t.addInitializer(function(){let n=this.constructor,a=H.get(n)??[];a.push({cqrsName:s,projectionName:e,methodKey:o}),H.set(n,a)})}}function ge(s,e,r){return(t,o)=>{let n=o.name;o.addInitializer(function(){let a=this.constructor,c=N.get(a)??[];c.push({cqrsName:s,eventNames:r,sagaName:e,methodKey:n}),N.set(a,c)})}}var be=0,x=class{constructor(e,r){this.graph=e;this.moduleRef=r}disposers=[];scheduleNodeNames=[];onModuleInit(){this.wireEvents(),this.wireIntervals(),this.wireCrons(),this.wireCqrsCommands(),this.wireCqrsEvents(),this.wireCqrsQueries(),this.wireCqrsSagas()}onModuleDestroy(){for(let e of this.disposers)e();this.disposers.length=0;for(let e of this.scheduleNodeNames)try{this.graph.remove(e)}catch{}this.scheduleNodeNames.length=0}wireEvents(){for(let[e,r]of G){let t=this.resolveInstance(e);if(t)for(let o of r)this.wireEventHandler(t,o)}}wireEventHandler(e,r){let t=e[r.methodKey];if(typeof t!="function")return;let o=t.bind(e),a=this.observeNode(r.nodeName).subscribe(c=>{for(let l of c)l[0]===b&&o(l[1])});this.disposers.push(a)}wireIntervals(){for(let[e,r]of O){let t=this.resolveInstance(e);if(t)for(let o of r)this.wireIntervalHandler(t,e,o)}}wireIntervalHandler(e,r,t){let o=e[t.methodKey];if(typeof o!="function")return;let n=o.bind(e),c=`__schedule__.${r.name??"anonymous"}.${String(t.methodKey)}.${be++}`,l=ae(t.ms,{period:t.ms,name:c});this.graph.add(l),this.scheduleNodeNames.push(c);let p=this.observeNode(c).subscribe(u=>{for(let d of u)d[0]===b&&n(d[1])});this.disposers.push(p)}wireCrons(){for(let[e,r]of D){let t=this.resolveInstance(e);if(t)for(let o of r)this.wireCronHandler(t,e,o)}}wireCronHandler(e,r,t){let o=e[t.methodKey];if(typeof o!="function")return;let n=o.bind(e),c=`__schedule__.${r.name??"anonymous"}.${String(t.methodKey)}.${be++}`,l=ie(t.expr,{name:c});this.graph.add(l),this.scheduleNodeNames.push(c);let p=this.observeNode(c).subscribe(u=>{for(let d of u)d[0]===b&&n(d[1])});this.disposers.push(p)}wireCqrsCommands(){for(let[e,r]of A){let t=this.resolveInstance(e);if(t)for(let o of r)this.wireCqrsCommand(t,o)}}wireCqrsCommand(e,r){let t=e[r.methodKey];if(typeof t!="function")return;let o=t.bind(e),n=this.resolveCqrsGraph(r.cqrsName);n&&n.command(r.commandName,o)}wireCqrsEvents(){for(let[e,r]of S){let t=this.resolveInstance(e);if(t)for(let o of r)this.wireCqrsEventHandler(t,o)}}wireCqrsEventHandler(e,r){let t=e[r.methodKey];if(typeof t!="function")return;let o=t.bind(e),n=this.resolveCqrsGraph(r.cqrsName);if(!n)return;n.event(r.eventName);let c=n.resolve(r.eventName).cache,l=c&&c.length>0?c[c.length-1].seq:0,p=this.observeNodeOn(n,r.eventName).subscribe(u=>{for(let d of u)if(d[0]===b){let g=d[1];for(let i of g)i.seq>l&&(o(i),l=i.seq)}});this.disposers.push(p)}wireCqrsQueries(){for(let[e,r]of H){let t=this.resolveInstance(e);if(t)for(let o of r)this.wireCqrsQuery(t,o)}}wireCqrsQuery(e,r){let t=e[r.methodKey];if(typeof t!="function")return;let o=t.bind(e),n=this.resolveCqrsGraph(r.cqrsName);if(!n)return;let c=this.observeNodeOn(n,r.projectionName).subscribe(l=>{for(let f of l)f[0]===b&&o(f[1])});this.disposers.push(c)}wireCqrsSagas(){for(let[e,r]of N){let t=this.resolveInstance(e);if(t)for(let o of r)this.wireCqrsSaga(t,o)}}wireCqrsSaga(e,r){let t=e[r.methodKey];if(typeof t!="function")return;let o=t.bind(e),n=this.resolveCqrsGraph(r.cqrsName);n&&n.saga(r.sagaName,r.eventNames,o)}observeNode(e){return this.graph.observe(e)}observeNodeOn(e,r){return e.observe(r)}resolveCqrsGraph(e){try{return this.moduleRef.get(m(e),{strict:!1})}catch{return console.warn(`[GraphReFly] CqrsGraph "${e}" not found in DI \u2014 did you import GraphReflyModule.forCqrs({ name: "${e}" })?`),null}}resolveInstance(e){try{return this.moduleRef.get(e,{strict:!1})}catch{return null}}};function Me(s,e,r){let{actor:t,serialize:o=De,keepAliveMs:n,signal:a}=r??{},c=new TextEncoder,l,f=r?.highWaterMark!=null,p,u,d=[],g=!1;return new ReadableStream({start(i){let h,w=()=>{},M=()=>{if(!g){g=!0,h!==void 0&&clearInterval(h),a?.removeEventListener("abort",K),w(),p?.dispose(),u?.(),u=void 0;for(let k of d)i.enqueue(k.frame);d.length=0,i.close()}};l=M;let K=()=>M(),ee=s.observe(e,{actor:t});f&&(p=L(k=>ee.up(k),{highWaterMark:r.highWaterMark,lowWaterMark:r.lowWaterMark??Math.floor(r.highWaterMark/2)})),w=ee.subscribe(k=>{for(let $ of k){if(g)return;let q=$[0];if(q===b){let C=c.encode(Y("data",o($[1])));f?(d.push({frame:C,counted:!0}),p.onEnqueue(),u?.(),u=void 0):i.enqueue(C)}else if(q===W){let C=c.encode(Y("error",o($[1])));f?(d.push({frame:C,counted:!1}),u?.(),u=void 0):i.enqueue(C),M();return}else if(q===T||q===_){if(q===T){let C=c.encode(Y("complete"));f?(d.push({frame:C,counted:!1}),u?.(),u=void 0):i.enqueue(C)}M();return}}}),n!==void 0&&n>0&&(h=setInterval(()=>{g||(f?(d.push({frame:c.encode(`: keepalive
2
-
3
- `),counted:!1}),u?.(),u=void 0):i.enqueue(c.encode(`: keepalive
4
-
5
- `)))},n)),a?.aborted?K():a?.addEventListener("abort",K,{once:!0})},pull(i){if(f&&!g){if(d.length>0){let h=d.shift();i.enqueue(h.frame),h.counted&&p.onDequeue();return}return new Promise(h=>{u=h})}},cancel(){try{l?.()}catch{}}})}function Ce(s,e,r){let{actor:t,filter:o}=r??{},n=[],a=[],c=!1,l=s.observe(e,{actor:t}),f=r?.highWaterMark!=null?L(i=>l.up(i),{highWaterMark:r.highWaterMark,lowWaterMark:r.lowWaterMark??Math.floor(r.highWaterMark/2)}):void 0,p=()=>{c||(c=!0,f?.dispose(),d())},u=i=>{if(!c)if(a.length>0){let h=a.shift();i.done&&i.error?h.reject(i.error):i.done?h.resolve({done:!0,value:void 0}):h.resolve({done:!1,value:i.value})}else n.push(i),i.done||f?.onEnqueue()},d=l.subscribe(i=>{for(let h of i){let w=h[0];if(w===b){let M=h[1];if(o&&!o(M))continue;u({done:!1,value:M})}else if(w===W){let M=h[1]instanceof Error?h[1]:new Error(String(h[1]));u({done:!0,error:M}),p();return}else if(w===T||w===_){u({done:!0}),p();return}}});return{next(){if(n.length>0){let i=n.shift();return i.done||f?.onDequeue(),i.done&&i.error?Promise.reject(i.error):Promise.resolve(i.done?{done:!0,value:void 0}:{done:!1,value:i.value})}return c?Promise.resolve({done:!0,value:void 0}):new Promise((i,h)=>{a.push({resolve:i,reject:h})})},return(){p();for(let i of a)i.resolve({done:!0,value:void 0});return a.length=0,Promise.resolve({done:!0,value:void 0})},throw(i){return p(),Promise.reject(i)},[Symbol.asyncIterator](){return this}}}var B=class{constructor(e,r){this.graph=e;this.extractActor=r?.extractActor??(()=>{}),this.parse=r?.parse??Ae,this.highWaterMark=r?.highWaterMark,this.lowWaterMark=r?.lowWaterMark}clients=new Map;extractActor;parse;highWaterMark;lowWaterMark;handleConnection(e){this.clients.has(e)||this.clients.set(e,new Map)}handleDisconnect(e){let r=this.clients.get(e);if(r){for(let t of r.values())t.wm?.dispose(),t.unsub();this.clients.delete(e)}}handleMessage(e,r,t){let o=t??Se.bind(null,e),n;try{n=typeof r=="string"?this.parse(r):r}catch{o({type:"err",message:"invalid command"});return}n.type==="subscribe"?this.subscribe(e,n.path,o):n.type==="unsubscribe"?this.unsubscribe(e,n.path,o):n.type==="ack"?this.ack(e,n.path,n.count??1):o({type:"err",message:`unknown command type: ${n.type}`})}subscriptionCount(e){return this.clients.get(e)?.size??0}destroy(){for(let[e]of this.clients)this.handleDisconnect(e)}subscribe(e,r,t){let o=this.clients.get(e);if(o||(o=new Map,this.clients.set(e,o)),o.has(r)){t({type:"subscribed",path:r});return}let n=this.extractActor(e),a;try{a=this.graph.observe(r,{actor:n})}catch(p){let u=p instanceof Error?p.message:String(p);t({type:"err",message:u});return}let c=this.highWaterMark!=null?L(p=>a.up(p),{highWaterMark:this.highWaterMark,lowWaterMark:this.lowWaterMark??Math.floor(this.highWaterMark/2)}):void 0,l=()=>{c?.dispose(),f(),o.delete(r)},f=a.subscribe(p=>{for(let u of p){let d=u[0];if(d===b)c?.onEnqueue(),z(t,{type:"data",path:r,value:u[1]});else if(d===W){let g=u[1]instanceof Error?u[1].message:String(u[1]);z(t,{type:"error",path:r,error:g}),l();return}else if(d===T||d===_){z(t,{type:"complete",path:r}),l();return}}});o.set(r,{unsub:f,wm:c}),t({type:"subscribed",path:r})}unsubscribe(e,r,t){let o=this.clients.get(e),n=o?.get(r);n&&(n.wm?.dispose(),n.unsub(),o.delete(r)),t({type:"unsubscribed",path:r})}ack(e,r,t){let o=this.clients.get(e)?.get(r);if(!o?.wm)return;let n=Math.min(Math.max(0,Math.floor(t)),1024);for(let a=0;a<n;a++)o.wm.onDequeue()}};function De(s){if(s instanceof Error)return s.message;try{return JSON.stringify(s)}catch{return String(s)}}function Y(s,e){let r=`event: ${s}
6
- `;if(e!==void 0)for(let t of e.split(`
7
- `))r+=`data: ${t}
8
- `;return r+=`
9
- `,r}function Ae(s){return JSON.parse(s)}function Se(s,e){try{s.send(JSON.stringify(e))}catch{}}function z(s,e){try{s(e)}catch{}}var F="graphReflyActor";function V(s){return e=>{let t=e.switchToHttp().getRequest()?.user;if(t!=null)return s?s(t):t}}function Ee(s="x-graphrefly-actor"){return e=>{let t=e.switchToHttp().getRequest()?.headers?.[s.toLowerCase()];if(!(typeof t!="string"||t.length===0))try{return JSON.parse(t)}catch{return}}}function we(s){let e=s?.[F];return e!=null?U(e):ne}var I=class{constructor(e){this.extractor=e}canActivate(e){let r=U(this.extractor(e)),t=e.switchToHttp().getRequest();return t!=null&&(t[F]=r),!0}};function Re(s){return new I(s??V())}import{Module as He,Scope as xe}from"@nestjs/common";import{ModuleRef as Ne}from"@nestjs/core";var X=class{constructor(e){this.graph=e}onModuleDestroy(){this.graph.destroy()}},Z=class{graph=new P("request");onModuleDestroy(){this.graph.destroy()}},Ge,J;Ge=[He({})];var E=class E{static forRoot(e){let r=e??{},t=r.name??"root",o=[{provide:v,useFactory:()=>{let n=new P(t);return r.build&&r.build(n),r.snapshot&&n.restore(r.snapshot),n}},{provide:Symbol.for("graphrefly:root-lifecycle"),useFactory:n=>new X(n),inject:[v]},{provide:x,useFactory:(n,a)=>new x(n,a),inject:[v,Ne]}];if(r.nodes)for(let n of r.nodes)o.push({provide:y(n),useFactory:a=>a.resolve(n),inject:[v]});return r.requestScope&&o.push({provide:Symbol.for("graphrefly:request-lifecycle"),useFactory:()=>new Z,scope:xe.REQUEST},{provide:R,useFactory:n=>n.graph,inject:[Symbol.for("graphrefly:request-lifecycle")],scope:xe.REQUEST}),{module:E,global:!0,providers:o,exports:[v,...(r.nodes??[]).map(y),...r.requestScope?[R]:[]]}}static forFeature(e){let r=[{provide:m(e.name),useFactory:t=>{let o=new P(e.name);return e.build&&e.build(o),e.snapshot&&o.restore(e.snapshot),t.mount(e.name,o),o},inject:[v]}];if(e.nodes)for(let t of e.nodes)r.push({provide:y(`${e.name}::${t}`),useFactory:o=>o.resolve(t),inject:[m(e.name)]});return{module:E,providers:r,exports:[m(e.name),...(e.nodes??[]).map(t=>y(`${e.name}::${t}`))]}}static forCqrs(e){let r=[{provide:m(e.name),useFactory:t=>{let o=ce(e.name,e.cqrs);return e.eventStorage&&o.attachEventStorage(e.eventStorage),e.build&&e.build(o),t.mount(e.name,o),o},inject:[v]}];if(e.nodes)for(let t of e.nodes)r.push({provide:y(`${e.name}::${t}`),useFactory:o=>o.resolve(t),inject:[m(e.name)]});return{module:E,providers:r,exports:[m(e.name),...(e.nodes??[]).map(t=>y(`${e.name}::${t}`))]}}};J=re(null),E=oe(J,0,"GraphReflyModule",Ge,E),te(J,1,E);var Q=E;export{v as a,R as b,m as c,y as d,G as e,O as f,D as g,A as h,S as i,H as j,N as k,ue as l,de as m,pe as n,le as o,he as p,fe as q,me as r,ve as s,ye as t,ge as u,x as v,Me as w,Ce as x,B as y,F as z,V as A,Ee as B,we as C,I as D,Re as E,Q as F,ke as G};
@@ -1 +0,0 @@
1
- import{f as b}from"./chunk-FDQGFWLF.js";import{a as S}from"./chunk-L6NSJVJZ.js";import{j as T}from"./chunk-626TESAC.js";import{b as D}from"./chunk-JQFH2DV6.js";import{C as d}from"./chunk-V5A7M7RJ.js";import{D as N,E as _,G as y,m as P}from"./chunk-LYCLF26R.js";import{b as M,i as A}from"./chunk-CK2E7BTU.js";import{b as C}from"./chunk-QYADASLV.js";var $={};C($,{MessagingHubGraph:()=>k,SubscriptionGraph:()=>f,TopicBridgeGraph:()=>O,TopicGraph:()=>g,TopicRegistry:()=>I,messagingHub:()=>F,subscription:()=>R,topic:()=>H,topicBridge:()=>U});var z=256;function l(r,e){if(!Number.isFinite(r)||!Number.isInteger(r)||r<0)throw new Error(`${e} must be a non-negative integer`);return r}function p(r,e){return S("messaging",r,e)}var B=1024,g=class extends T{_log;_publishImpl;events;latest;hasLatest;constructor(e,n={}){super(e,n.graph),this._log=D([],{name:"events",maxSize:n.retainedLimit??B}),this._log.withLatest(),this.events=this._log.entries,this.add(this.events,{name:"events"}),this.latest=y([this.events],([t])=>{let i=t;return i.length===0?null:i[i.length-1]},{name:"latest",describeKind:"derived",meta:p("topic_latest")}),this.add(this.latest,{name:"latest"}),this.addDisposer(d(this.latest)),this.hasLatest=y([this.events],([t])=>t.length>0,{name:"hasLatest",describeKind:"derived",meta:p("topic_has_latest")}),this.add(this.hasLatest,{name:"hasLatest"}),this.addDisposer(d(this.hasLatest)),this.addDisposer(()=>{this.events.down([[A]])}),this.addDisposer(()=>this._log.disposeAllViews()),this._publishImpl=b(t=>{this._log.append(t)},{freeze:!1})}publish(e){if(e===void 0)throw new TypeError(`TopicGraph "${this.name}": publish(undefined) is not allowed (spec \xA75.12 SENTINEL).`);this._publishImpl(e)}attachEventStorage(e){return this._log.attachStorage(e)}retained(){return this.events.cache}get _logBundle(){return this._log}},f=class extends T{cursor;available;topic;_disposed=!1;_ackImpl;_pullAndAckImpl;constructor(e,n,t={}){super(e,t.graph),this.topic=n;let i;if(t.from!==void 0?t.from==="retained"?i=0:t.from==="now"?i=n.events.cache.length:i=l(t.from,"subscription from"):i=l(t.cursor??0,"subscription cursor"),this.cursor=_(i,{name:"cursor",describeKind:"state",meta:p("subscription_cursor")}),this.add(this.cursor,{name:"cursor"}),this.available=n._logBundle.view({kind:"fromCursor",cursor:this.cursor}),this.add(this.available,{name:"available"}),this.addDisposer(d(this.available)),t.advanceOn!==void 0){let s=t.advanceOn,a=!1,c=N([s],()=>{if(!a){a=!0;return}if(this._disposed)return;let o=this.available.cache;if(o.length===0)return;let u=this.cursor.cache+o.length;this.cursor.emit(u)},{name:"advancePump",describeKind:"effect",meta:p("subscription_advance_pump")});this.add(c,{name:"advancePump"}),this.addDisposer(d(c))}this._ackImpl=b(s=>{let a=this.available.cache,c=s===void 0?a.length:l(s,"subscription ack count"),o=Math.min(c,a.length);if(o<=0)return this.cursor.cache;let u=this.cursor.cache+o;return this.cursor.emit(u),u},{freeze:!1}),this._pullAndAckImpl=b(s=>{let a=this.available.cache,c=s===void 0?a.length:l(s,"subscription pullAndAck limit"),o=a.slice(0,c);if(o.length===0)return{items:o,cursor:this.cursor.cache};let u=this.cursor.cache+o.length;return this.cursor.emit(u),{items:o,cursor:u}},{freeze:!1})}ack(e){return this._disposed?this.cursor.cache:this._ackImpl(e)}pull(e){if(this._disposed)return[];let n=this.available.cache,t=e===void 0?n.length:l(e,"subscription pull limit");return n.slice(0,t)}pullAndAck(e){return this._disposed?{items:[],cursor:this.cursor.cache}:this._pullAndAckImpl(e)}dispose(){this._disposed||(this._disposed=!0,this.cursor.down([[A]]),this.destroy())}},O=class extends T{_sourceSub;bridgedCount;output;constructor(e,n,t,i={}){super(e,i.graph),this._sourceSub=R(`${e}-subscription`,n,{cursor:i.cursor}),this.mount("subscription",this._sourceSub);let s=Math.max(1,l(i.maxPerPump??z,"topic bridge maxPerPump")),a=i.map??(h=>h);this.output=y([this._sourceSub.available],([h])=>{let v=h,m=[],w=Math.min(v.length,s);for(let x=0;x<w;x++){let L=a(v[x]);L!==void 0&&m.push(L)}return m},{name:"output",describeKind:"derived",meta:p("topic_bridge_output",{targetRef:t.name}),initial:[]}),this.add(this.output,{name:"output"}),this.addDisposer(d(this.output)),this.bridgedCount=_(0,{name:"bridgedCount",describeKind:"state",meta:p("topic_bridge_count")}),this.add(this.bridgedCount,{name:"bridgedCount"}),this.addDisposer(d(this.bridgedCount));let c=this.output,o=this._sourceSub,u=this.bridgedCount,G=N([c],()=>{let h=c.cache;if(h.length===0)return;let v=o.available.cache.length,m=Math.min(v,s);if(m>0){o.ack(m);let w=u.cache??0;u.emit(w+h.length)}},{name:"ackPump",describeKind:"effect",meta:p("topic_bridge_ack_pump")});this.add(G,{name:"ackPump"}),this.addDisposer(d(G));let E=K(this.output,t);this.addDisposer(E)}};function K(r,e){return r.subscribe(n=>{for(let t of n){if(t[0]!==M)continue;let i=t[1];i.length!==0&&P(()=>{for(let s of i)e.publish(s)})}})}var I=class{_map=new Map;version;constructor(e){this.version=e}get size(){return this._map.size}has(e){return this._map.has(e)}get(e){return this._map.get(e)}set(e,n){this._map.set(e,n)}delete(e){return this._map.delete(e)}keys(){return this._map.keys()}},k=class extends T{_registry;version;_defaultTopicOptions;_removeTopicImpl;constructor(e,n={}){super(e,n.graph);let t=_(0,{name:"version",describeKind:"state",meta:p("hub_version")});this.add(t,{name:"version"}),this.version=t,this._registry=new I(t),this._defaultTopicOptions={...n.defaultTopicOptions??{}},this._removeTopicImpl=b(i=>{try{this.remove(i)}finally{this._registry.delete(i);let s=this.version.cache??0;this.version.emit(s+1)}},{freeze:!1})}get size(){return this._registry.size}has(e){return this._registry.has(e)}topicNames(){return this._registry.keys()}topic(e,n){let t=this._registry.get(e);if(t===void 0){let i={...this._defaultTopicOptions,...n??{}};t=new g(e,i),this._registry.set(e,t),this.mount(e,t);let s=this.version.cache??0;this.version.emit(s+1)}return t}publish(e,n){this.topic(e).publish(n)}publishMany(e){P(()=>{for(let[n,t]of e)this.topic(n).publish(t)})}subscribe(e,n,t){let i=this.topic(n);return new f(e,i,t)}removeTopic(e){return this._registry.has(e)?(this._removeTopicImpl(e),!0):!1}};function H(r,e){return new g(r,e)}function F(r,e){return new k(r,e)}function R(r,e,n){return new f(r,e,n)}function U(r,e,n,t){return new O(r,e,n,t)}export{g as a,f as b,O as c,I as d,k as e,H as f,F as g,R as h,U as i,$ as j};
@@ -1,5 +0,0 @@
1
- import{f as F,g as j,h as A}from"./chunk-Y4NI3X7O.js";import{i as b,j as x}from"./chunk-626TESAC.js";import{p as _}from"./chunk-LYCLF26R.js";import{b as C,d as $,i as T,j as N}from"./chunk-CK2E7BTU.js";import{b as J}from"./chunk-QYADASLV.js";var Y={};J(Y,{SNAPSHOT_WIRE_VERSION:()=>v,SurfaceError:()=>o,asSurfaceError:()=>K,createGraph:()=>R,deleteSnapshot:()=>L,diffSnapshots:()=>V,listSnapshots:()=>W,restoreSnapshot:()=>U,runReduction:()=>D,saveSnapshot:()=>M});var o=class extends Error{code;details;constructor(t,r,n){super(r),this.name="SurfaceError",this.code=t,n!==void 0&&(this.details=n)}toJSON(){let t={code:this.code,message:this.message};if(this.details!==void 0){let r=q(this.details);r!==void 0&&(t.details=r)}return t}};function q(e){try{return JSON.parse(JSON.stringify(e))}catch{return}}function K(e,t="internal-error"){if(e instanceof o)return e;let r=e instanceof Error?e.message:String(e);return new o(t,r)}function R(e,t){let r=j(e);if(!r.valid)throw new o("invalid-spec",`GraphSpec validation failed:
2
- ${r.errors.join(`
3
- `)}`,{errors:r.errors});let n=t?.catalog??{},s=F(e,n);if(!s.valid)throw new o("catalog-error",`Catalog validation failed:
4
- ${s.errors.join(`
5
- `)}`,{errors:s.errors});try{return A(e,t)}catch(a){let i=a instanceof Error?a.message:String(a);throw new o("catalog-error",i)}}var z=3e4;async function D(e,t,r){let n=r?.inputPath??"input",s=r?.outputPath??"output",a=r?.timeoutMs??z,i=R(e,{catalog:r?.catalog}),u;try{u=i.resolve(s)}catch{throw i.destroy(),new o("node-not-found",`reduce: output path "${s}" is not registered`,{path:s})}try{i.resolve(n)}catch{throw i.destroy(),new o("node-not-found",`reduce: input path "${n}" is not registered`,{path:n})}try{return await new Promise((g,d)=>{let l=!1,y=!1,E,h,k=!1,m=p=>{y||(y=!0,E!==void 0&&clearTimeout(E),h!==void 0?(h(),h=void 0):k=!0,p())};h=u.subscribe(p=>{for(let f of p){if(y)return;if(l){if(f[0]===C){m(()=>g(f[1]));return}if(f[0]===$){let c=u.cache;m(()=>g(c));return}if(f[0]===N){let c=f[1],H=c instanceof Error?c.message:String(c),O=c instanceof Error?c:void 0;m(()=>d(new o("internal-error",`reduce: output emitted ERROR: ${H}`,O!=null?{cause:O}:void 0)));return}if(f[0]===T){m(()=>d(new o("internal-error","reduce: output COMPLETEd without a post-push DATA")));return}}}}),k&&(h?.(),h=void 0),l=!0;try{i.set(n,t)}catch(p){let f=p instanceof Error?p.message:String(p),c=p instanceof Error?p:void 0;m(()=>d(new o("internal-error",`reduce: failed to set input on "${n}": ${f}`,c!=null?{path:n,cause:c}:{path:n})));return}!y&&Number.isFinite(a)&&a>0&&(E=setTimeout(()=>{m(()=>d(new o("reduce-timeout",`reduce: no output emitted within ${a}ms`,{timeoutMs:a,outputPath:s})))},a),E.unref?.())})}finally{i.destroy()}}var v=b,S="snapshot:";function w(e){if(e.startsWith(S))throw new o("snapshot-failed",`snapshot id must not start with "${S}" (reserved); got "${e}"`,{snapshotId:e})}function G(e){return`${S}${e}`}function X(e){return e.startsWith(S)?e.slice(S.length):void 0}function P(e,t){if(e==null||typeof e!="object")throw new o("snapshot-not-found",`snapshot "${t}" not found in tier`,{snapshotId:t});let r=e;if("mode"in r){if(r.mode==="full"&&"snapshot"in r)return r.snapshot;throw r.mode==="diff"?new o("restore-failed",`snapshot "${t}" is a diff record; restore the baseline and replay WAL instead`,{snapshotId:t,mode:"diff"}):new o("restore-failed",`snapshot "${t}" has unknown mode "${String(r.mode)}"`,{snapshotId:t,mode:String(r.mode)})}if("nodes"in r&&"edges"in r&&"subgraphs"in r&&"name"in r)return r;throw new o("restore-failed",`snapshot "${t}" payload is not a GraphCheckpointRecord or GraphPersistSnapshot`,{snapshotId:t})}async function M(e,t,r){w(t);let n;try{n=e.snapshot()}catch(a){let i=a instanceof Error?a.message:String(a);throw new o("snapshot-failed",`snapshot "${t}" serialization failed: ${i}`,{snapshotId:t})}let s={name:e.name,mode:"full",seq:0,timestamp_ns:_(),format_version:v,snapshot:n};try{await r.save(G(t),s)}catch(a){let i=a instanceof Error?a.message:String(a);throw new o("snapshot-failed",`snapshot "${t}" save failed: ${i}`,{snapshotId:t})}return{snapshotId:t,timestamp_ns:s.timestamp_ns}}async function U(e,t,r){w(e);let n=G(e),s=await t.load(n);s===void 0&&(s=await t.load(e));let a=P(s,e);try{return x.fromSnapshot(a,r?.factories?{factories:r.factories}:void 0)}catch(i){let u=i instanceof Error?i.message:String(i);throw new o("restore-failed",`snapshot "${e}" restore failed: ${u}`,{snapshotId:e})}}async function V(e,t,r){w(e),w(t);let n=async g=>{let d=G(g),l=await r.load(d);return l===void 0&&(l=await r.load(g)),l},[s,a]=await Promise.all([n(e),n(t)]),i=P(s,e),u=P(a,t);return x.diff(i,u)}async function W(e,t){if(typeof e.list!="function")throw new o("tier-no-list","KvStorageTier does not implement list(); wrap the tier with an enumerator or use a different backend");let r=await e.list(),n=[],s=t?.includeUnprefixed===!0;for(let a of r){let i=X(a);i!==void 0?n.push(i):s&&n.push(a)}return n}async function L(e,t){if(w(e),typeof t.delete!="function")throw new o("snapshot-failed",`KvStorageTier is append-only (no delete()); cannot delete "${e}"`,{snapshotId:e});try{await t.delete(G(e))}catch(r){let n=r instanceof Error?r.message:String(r);throw new o("snapshot-failed",`snapshot "${e}" delete failed: ${n}`,{snapshotId:e})}}export{o as a,K as b,R as c,D as d,v as e,M as f,U as g,V as h,W as i,L as j,Y as k};
@@ -1,5 +0,0 @@
1
- import{a as O,f as v,k as P}from"./chunk-Q4U3A3L5.js";import{ba as _,k as A}from"./chunk-O2BLLH7M.js";import{f as E}from"./chunk-VNC3TMVY.js";import{m as U,x as T}from"./chunk-V5A7M7RJ.js";import{o as y}from"./chunk-LYCLF26R.js";function G(e={}){return e.sdk?V(e):H(e)}function b(e,t,o,r){let s=t?.model??o;if(!s)throw new Error("anthropicAdapter: model must be set via options.model or invokeOpts.model");let{system:n,chat:i}=J(e,t?.systemPrompt),a={model:s,messages:i.map(F),max_tokens:t?.maxTokens??4096};return n&&(a.system=n),t?.temperature!=null&&(a.temperature=t.temperature),t?.tools&&t.tools.length>0&&(a.tools=t.tools.map(Y)),t?.maxReasoningTokens!=null&&(a.thinking={type:"enabled",budget_tokens:t.maxReasoningTokens}),t?.cacheHint,r&&(a.stream=!0),t?.providerExtras&&Object.assign(a,t.providerExtras),a}function J(e,t){let o=[];t&&o.push(t);let r=[];for(let s of e)s.role==="system"?o.push(s.content):r.push(s);return{system:o.length>0?o.join(`
2
-
3
- `):void 0,chat:r}}function F(e){if(e.role==="tool")return{role:"user",content:[{type:"tool_result",tool_use_id:e.toolCallId,content:e.content}]};if(e.role==="assistant"&&e.toolCalls&&e.toolCalls.length>0){let t=[];e.content&&t.push({type:"text",text:e.content});for(let o of e.toolCalls)t.push({type:"tool_use",id:o.id,name:o.name,input:o.arguments});return{role:"assistant",content:t}}return{role:e.role,content:e.content}}function Y(e){return{name:e.name,description:e.description,input_schema:e.parameters}}function R(e,t){if(!e)return{...t};let o={...e};return t.input_tokens!=null&&(o.input_tokens=t.input_tokens),t.output_tokens!=null&&(o.output_tokens=t.output_tokens),t.cache_read_input_tokens!=null&&(o.cache_read_input_tokens=t.cache_read_input_tokens),t.cache_creation_input_tokens!=null&&(o.cache_creation_input_tokens=t.cache_creation_input_tokens),t.cache_creation&&(o.cache_creation={...e.cache_creation??{},...t.cache_creation}),t.server_tool_use&&(o.server_tool_use={...e.server_tool_use??{},...t.server_tool_use}),o}function x(e){let t={input:{regular:e?.input_tokens??0},output:{regular:e?.output_tokens??0},raw:e};return e?.cache_read_input_tokens&&(t.input.cacheRead=e.cache_read_input_tokens),e?.cache_creation?(e.cache_creation.ephemeral_5m_input_tokens&&(t.input.cacheWrite5m=e.cache_creation.ephemeral_5m_input_tokens),e.cache_creation.ephemeral_1h_input_tokens&&(t.input.cacheWrite1h=e.cache_creation.ephemeral_1h_input_tokens)):e?.cache_creation_input_tokens&&(t.input.cacheWrite5m=e.cache_creation_input_tokens),e?.server_tool_use?.web_search_requests&&(t.auxiliary={webSearchRequests:e.server_tool_use.web_search_requests}),t}function K(e,t){let o=[],r=[];for(let s of e.content)if(s.type==="text"&&typeof s.text=="string")o.push(s.text);else if(s.type==="tool_use"){let n=s;r.push({id:n.id,name:n.name,arguments:n.input??{}})}return{content:o.join(""),toolCalls:r.length>0?r:void 0,usage:x(e.usage),finishReason:e.stop_reason,latencyMs:t,model:e.model,provider:"anthropic"}}function H(e){let t=e.apiKey??globalThis.process?.env?.ANTHROPIC_API_KEY,o=e.baseURL??"https://api.anthropic.com",r=e.anthropicVersion??"2023-06-01",s=e.fetchImpl??fetch,n=()=>{if(!t)throw new Error("anthropicAdapter: apiKey required for invoke/stream (or provide opts.sdk)");return{"x-api-key":t,"anthropic-version":r,"content-type":"application/json",...e.headers??{}}};return{provider:"anthropic",model:e.model,async invoke(i,a){let d=b(i,a,e.model,!1),g=y(),l=await s(`${o}/v1/messages`,{method:"POST",headers:n(),body:JSON.stringify(d),signal:a?.signal});if(!l.ok)throw await _(l,"Anthropic");let c=await l.json(),p=Math.max(0,(y()-g)/1e6);return K(c,p)},async*stream(i,a){let d=b(i,a,e.model,!0),g=await s(`${o}/v1/messages`,{method:"POST",headers:{...n(),accept:"text/event-stream"},body:JSON.stringify(d),signal:a?.signal});if(!g.ok)throw await _(g,"Anthropic");if(!g.body)throw new Error("anthropicAdapter: streaming response has no body");let l,c,p=new Map;for await(let m of A(g.body,{signal:a?.signal})){let h=m.data;if(!h)continue;let k;try{k=JSON.parse(h)}catch{continue}switch(k.type){case"message_start":{l=R(l,k.message.usage);break}case"content_block_start":{let u=k,f=u.content_block;f.type==="tool_use"&&(p.set(u.index,{id:String(f.id??""),name:String(f.name??""),argBuf:""}),yield{type:"tool-call-delta",delta:{id:String(f.id??""),name:String(f.name??"")}});break}case"content_block_delta":{let u=k,f=u.delta;if(f.type==="text_delta"&&typeof f.text=="string")yield{type:"token",delta:f.text};else if(f.type==="input_json_delta"&&typeof f.partial_json=="string"){let S=p.get(u.index);S&&(S.argBuf+=f.partial_json),yield{type:"tool-call-delta",delta:{argumentsDelta:f.partial_json}}}else f.type==="thinking_delta"&&typeof f.thinking=="string"&&(yield{type:"thinking",delta:f.thinking});break}case"message_delta":{let u=k;u.delta.stop_reason&&(c=u.delta.stop_reason),u.delta.usage&&(l=R(l,u.delta.usage));break}case"message_stop":break}}l&&(yield{type:"usage",usage:x(l)}),yield{type:"finish",reason:c??"stop"}}}}function V(e){let t=e.sdk;if(!t)throw new Error("sdkBackedAnthropic: sdk instance required");return{provider:"anthropic",model:e.model,async invoke(o,r){let s=b(o,r,e.model,!1),n=y(),i=await t.messages.create(s,{signal:r?.signal}),a=Math.max(0,(y()-n)/1e6);return K(i,a)},async*stream(o,r){if(!t.messages.stream)throw new Error("sdkBackedAnthropic: SDK instance does not expose .messages.stream");let s=b(o,r,e.model,!0),n,i;for await(let a of t.messages.stream(s,{signal:r?.signal}))switch(a.type){case"message_start":n=R(n,a.message.usage);break;case"content_block_delta":{let d=a.delta;d?.type==="text_delta"&&typeof d.text=="string"?yield{type:"token",delta:d.text}:d?.type==="input_json_delta"&&typeof d.partial_json=="string"?yield{type:"tool-call-delta",delta:{argumentsDelta:d.partial_json}}:d?.type==="thinking_delta"&&typeof d.thinking=="string"&&(yield{type:"thinking",delta:d.thinking});break}case"message_delta":{let d=a;d.delta.stop_reason&&(i=d.delta.stop_reason),d.delta.usage&&(n=R(n,d.delta.usage));break}}n&&(yield{type:"usage",usage:x(n)}),yield{type:"finish",reason:i??"stop"}}}}function D(e={}){return e.sdk?X(e):Q(e)}function w(e,t){let o=[],r=[];t?.systemPrompt&&o.push(t.systemPrompt);for(let i of e){if(i.role==="system"){o.push(i.content);continue}if(i.role==="tool"){r.push({role:"user",parts:[{functionResponse:{name:i.name??i.toolCallId??"tool",response:{result:i.content}}}]});continue}if(i.role==="assistant"&&i.toolCalls&&i.toolCalls.length>0){let a=[];i.content&&a.push({text:i.content});for(let d of i.toolCalls)a.push({functionCall:{name:d.name,args:d.arguments}});r.push({role:"model",parts:a});continue}r.push({role:i.role==="assistant"?"model":"user",parts:[{text:i.content}]})}let s={contents:r};o.length>0&&(s.systemInstruction={role:"system",parts:[{text:o.join(`
4
-
5
- `)}]});let n={};return t?.maxTokens!=null&&(n.maxOutputTokens=t.maxTokens),t?.temperature!=null&&(n.temperature=t.temperature),t?.maxReasoningTokens!=null&&(n.thinkingConfig={thinkingBudget:t.maxReasoningTokens}),Object.keys(n).length>0&&(s.generationConfig=n),t?.tools&&t.tools.length>0&&(s.tools=[{functionDeclarations:t.tools.map(W)}]),t?.providerExtras&&Object.assign(s,t.providerExtras),s}function W(e){return{name:e.name,description:e.description,parameters:e.parameters}}function j(e,t,o){let r={},s=e.generationConfig;s&&(typeof s.maxOutputTokens=="number"&&(r.maxOutputTokens=s.maxOutputTokens),typeof s.temperature=="number"&&(r.temperature=s.temperature),s.thinkingConfig&&(r.thinkingConfig=s.thinkingConfig)),e.systemInstruction&&(r.systemInstruction=e.systemInstruction),e.tools&&(r.tools=e.tools);for(let[n,i]of Object.entries(e))n==="contents"||n==="generationConfig"||n==="systemInstruction"||n==="tools"||n==="abortSignal"||n==="model"||(r[n]=i);return o&&(r.abortSignal=o),{model:t,contents:e.contents,config:Object.keys(r).length>0?r:void 0}}function M(e){let t={input:{regular:0},output:{regular:0},raw:e};if(!e)return t;let o=e.promptTokenCount??0,r=e.cachedContentTokenCount??0;if(t.input.regular=Math.max(0,o-r),r>0&&(t.input.cacheRead=r),e.toolUsePromptTokenCount&&(t.input.toolUse=e.toolUsePromptTokenCount),e.promptTokensDetails)for(let s of e.promptTokensDetails){let n=s.modality?.toLowerCase();n==="image"?t.input.image=(t.input.image??0)+s.tokenCount:n==="audio"?t.input.audio=(t.input.audio??0)+s.tokenCount:n==="video"&&(t.input.video=(t.input.video??0)+s.tokenCount)}return t.output.regular=e.candidatesTokenCount??0,e.thoughtsTokenCount&&(t.output.reasoning=e.thoughtsTokenCount),t}function B(e,t){let o=e.candidates?.[0],r=o?.content?.parts??[],s=[],n=[],i=0;for(let a of r)typeof a.text=="string"&&s.push(a.text),a.functionCall&&n.push({id:`${a.functionCall.name}-${i++}`,name:a.functionCall.name,arguments:a.functionCall.args??{}});return{content:s.join(""),toolCalls:n.length>0?n:void 0,usage:M(e.usageMetadata),finishReason:o?.finishReason,latencyMs:t,model:e.modelVersion,provider:"google"}}function z(e){if(e.apiKey)return e.apiKey;let t=globalThis.process?.env;return t?.GOOGLE_API_KEY??t?.GEMINI_API_KEY}function Q(e){let t=e.baseURL??"https://generativelanguage.googleapis.com/v1beta",o=e.fetchImpl??fetch,r=n=>{let i=n?.model??e.model;if(!i)throw new Error("googleAdapter: model must be set via options.model or invokeOpts.model");return i},s=()=>{let n=z(e);if(!n)throw new Error("googleAdapter: apiKey required for invoke/stream");return`key=${encodeURIComponent(n)}`};return{provider:"google",model:e.model,async invoke(n,i){let a=r(i),d=w(n,i),g=y(),l=`${t}/models/${encodeURIComponent(a)}:generateContent?${s()}`,c=await o(l,{method:"POST",headers:{"content-type":"application/json",...e.headers??{}},body:JSON.stringify(d),signal:i?.signal});if(!c.ok)throw await _(c,"Google");let p=await c.json(),m=Math.max(0,(y()-g)/1e6);return B(p,m)},async*stream(n,i){let a=r(i),d=w(n,i),g=`${t}/models/${encodeURIComponent(a)}:streamGenerateContent?alt=sse&${s()}`,l=await o(g,{method:"POST",headers:{"content-type":"application/json",accept:"text/event-stream",...e.headers??{}},body:JSON.stringify(d),signal:i?.signal});if(!l.ok)throw await _(l,"Google");if(!l.body)throw new Error("googleAdapter: streaming response has no body");let c,p;for await(let m of A(l.body,{signal:i?.signal})){if(!m.data)continue;let h;try{h=JSON.parse(m.data)}catch{continue}let k=h.candidates?.[0];for(let u of k?.content?.parts??[])typeof u.text=="string"&&(u.thought?yield{type:"thinking",delta:u.text}:yield{type:"token",delta:u.text}),u.functionCall&&(yield{type:"tool-call-delta",delta:{name:u.functionCall.name,argumentsDelta:JSON.stringify(u.functionCall.args??{})}});k?.finishReason&&(p=k.finishReason),h.usageMetadata&&(c=h.usageMetadata)}c&&(yield{type:"usage",usage:M(c)}),yield{type:"finish",reason:p??"stop"}}}}function X(e){let t=e.sdk;if(!t)throw new Error("sdkBackedGoogle: sdk instance required");return{provider:"google",model:e.model,async invoke(o,r){let s=w(o,r),n=r?.model??e.model;if(!n)throw new Error("googleAdapter: model required");let i=j(s,n,r?.signal),a=y(),d=await t.models.generateContent(i),g=Math.max(0,(y()-a)/1e6);return B(d,g)},async*stream(o,r){if(!t.models.generateContentStream)throw new Error("sdkBackedGoogle: SDK instance does not expose generateContentStream");let s=w(o,r),n=r?.model??e.model;if(!n)throw new Error("googleAdapter: model required");let i=j(s,n,r?.signal),a,d,g=await t.models.generateContentStream(i);for await(let l of g){let c=l.candidates?.[0];for(let p of c?.content?.parts??[])typeof p.text=="string"&&(p.thought?yield{type:"thinking",delta:p.text}:yield{type:"token",delta:p.text}),p.functionCall&&(yield{type:"tool-call-delta",delta:{name:p.functionCall.name,argumentsDelta:JSON.stringify(p.functionCall.args??{})}});c?.finishReason&&(d=c.finishReason),l.usageMetadata&&(a=l.usageMetadata)}a&&(yield{type:"usage",usage:M(a)}),yield{type:"finish",reason:d??"stop"}}}}var Z={openai:{baseURL:"https://api.openai.com/v1",apiKeyEnv:"OPENAI_API_KEY",provider:"openai"},openrouter:{baseURL:"https://openrouter.ai/api/v1",apiKeyEnv:"OPENROUTER_API_KEY",provider:"openrouter"},groq:{baseURL:"https://api.groq.com/openai/v1",apiKeyEnv:"GROQ_API_KEY",provider:"groq"},ollama:{baseURL:"http://localhost:11434/v1",provider:"ollama"},deepseek:{baseURL:"https://api.deepseek.com/v1",apiKeyEnv:"DEEPSEEK_API_KEY",provider:"deepseek"},xai:{baseURL:"https://api.x.ai/v1",apiKeyEnv:"XAI_API_KEY",provider:"xai"}};function q(e={}){return e.sdk?re(e):oe(e)}function C(e,t,o,r,s){let n=t?.model??o;if(!n)throw new Error("openAICompatAdapter: model must be set via options.model or invokeOpts.model");let i=e.map(ee);t?.systemPrompt&&!e.some(d=>d.role==="system")&&i.unshift({role:"system",content:t.systemPrompt});let a={model:n,messages:i};return t?.maxTokens!=null&&(a.max_tokens=t.maxTokens),t?.temperature!=null&&(a.temperature=t.temperature),t?.tools&&t.tools.length>0&&(a.tools=t.tools.map(te)),t?.maxReasoningTokens!=null&&(a.reasoning={max_tokens:t.maxReasoningTokens}),r&&(a.stream=!0,a.stream_options={include_usage:!0}),s&&Object.assign(a,s),t?.providerExtras&&Object.assign(a,t.providerExtras),a}function ee(e){return e.role==="tool"?{role:"tool",tool_call_id:e.toolCallId,content:e.content}:e.role==="assistant"&&e.toolCalls&&e.toolCalls.length>0?{role:"assistant",content:e.content||null,tool_calls:e.toolCalls.map(t=>({id:t.id,type:"function",function:{name:t.name,arguments:JSON.stringify(t.arguments)}}))}:{role:e.role,content:e.content}}function te(e){return{type:"function",function:{name:e.name,description:e.description,parameters:e.parameters}}}function I(e){let t={input:{regular:0},output:{regular:0},raw:e};if(!e)return t;let o=e.prompt_tokens??0,r=e.prompt_tokens_details?.cached_tokens??0;e.prompt_cache_hit_tokens!=null?(r=e.prompt_cache_hit_tokens,t.input.regular=e.prompt_cache_miss_tokens??Math.max(0,o-r)):t.input.regular=Math.max(0,o-r),r>0&&(t.input.cacheRead=r),e.prompt_tokens_details?.audio_tokens&&(t.input.audio=e.prompt_tokens_details.audio_tokens);let s=e.completion_tokens??0,n=e.completion_tokens_details?.reasoning_tokens??0;return t.output.regular=Math.max(0,s-n),n>0&&(t.output.reasoning=n),e.completion_tokens_details?.audio_tokens&&(t.output.audio=e.completion_tokens_details.audio_tokens),e.completion_tokens_details?.accepted_prediction_tokens&&(t.output.predictionAccepted=e.completion_tokens_details.accepted_prediction_tokens),e.completion_tokens_details?.rejected_prediction_tokens&&(t.output.predictionRejected=e.completion_tokens_details.rejected_prediction_tokens),t}function $(e,t,o){let r=e.choices[0],s=r?.message,n=s?.content??"",i=(s?.tool_calls??[]).map(a=>({id:a.id,name:a.function.name,arguments:ne(a.function.arguments)}));return{content:n,toolCalls:i.length>0?i:void 0,usage:I(e.usage),finishReason:r?.finish_reason,latencyMs:t,model:e.model,provider:o}}function ne(e){try{let t=JSON.parse(e);return typeof t=="object"&&t!=null?t:{_raw:e}}catch{return{_raw:e}}}function N(e){let t=e.preset??"openai",o=Z[t],r=e.baseURL??o.baseURL,s=e.provider??o.provider,n=o.apiKeyEnv,i=e.apiKey??(n?globalThis.process?.env?.[n]:void 0);return{provider:s,baseURL:r,apiKey:i}}function oe(e){let{provider:t,baseURL:o,apiKey:r}=N(e),s=e.fetchImpl??fetch,n=t!=="ollama",i=()=>{let a={"content-type":"application/json",...e.headers??{}};if(n){if(!r)throw new Error(`openAICompatAdapter[${t}]: apiKey required for invoke/stream`);a.authorization=`Bearer ${r}`}return a};return{provider:t,model:e.model,async invoke(a,d){let g=C(a,d,e.model,!1,e.bodyExtras),l=y(),c=await s(`${o}/chat/completions`,{method:"POST",headers:i(),body:JSON.stringify(g),signal:d?.signal});if(!c.ok)throw await _(c,t);let p=await c.json(),m=Math.max(0,(y()-l)/1e6);return $(p,m,t)},async*stream(a,d){let g=C(a,d,e.model,!0,e.bodyExtras),l=await s(`${o}/chat/completions`,{method:"POST",headers:{...i(),accept:"text/event-stream"},body:JSON.stringify(g),signal:d?.signal});if(!l.ok)throw await _(l,t);if(!l.body)throw new Error(`openAICompatAdapter[${t}]: streaming response has no body`);let c,p;for await(let m of A(l.body,{signal:d?.signal})){if(!m.data||m.data==="[DONE]")continue;let h;try{h=JSON.parse(m.data)}catch{continue}let k=h.choices;if(k){let u=k[0];if(u?.delta?.content&&(yield{type:"token",delta:u.delta.content}),u?.delta?.reasoning_content&&(yield{type:"thinking",delta:u.delta.reasoning_content}),u?.delta?.tool_calls)for(let f of u.delta.tool_calls)yield{type:"tool-call-delta",delta:{id:f.id,name:f.function?.name,argumentsDelta:f.function?.arguments}};u?.finish_reason&&(p=u.finish_reason)}h.usage&&(c=h.usage,yield{type:"usage",usage:I(c)})}yield{type:"finish",reason:p??"stop"}}}}function re(e){let t=e.sdk;if(!t)throw new Error("sdkBackedOpenAI: sdk instance required");let{provider:o}=N(e);return{provider:o,model:e.model,async invoke(r,s){let n=C(r,s,e.model,!1,e.bodyExtras),i=y(),a=await t.chat.completions.create(n,{signal:s?.signal}),d=Math.max(0,(y()-i)/1e6);return $(a,d,o)},async*stream(r,s){let n=C(r,s,e.model,!0,e.bodyExtras),i=await t.chat.completions.create(n,{signal:s?.signal}),a,d;for await(let g of i){let l=g.choices;if(l){let p=l[0];if(p?.delta?.content&&(yield{type:"token",delta:p.delta.content}),p?.delta?.reasoning_content&&(yield{type:"thinking",delta:p.delta.reasoning_content}),p?.delta?.tool_calls)for(let m of p.delta.tool_calls)yield{type:"tool-call-delta",delta:{id:m.id,name:m.function?.name,argumentsDelta:m.function?.arguments}};p?.finish_reason&&(d=p.finish_reason)}let c=g.usage;c&&(a=c,yield{type:"usage",usage:I(c)})}yield{type:"finish",reason:d??"stop"}}}}function Re(e){switch(e.provider){case"anthropic":{let t={apiKey:e.apiKey,model:e.model,baseURL:e.baseURL,headers:e.headers,sdk:e.sdk,fetchImpl:e.fetchImpl,...e.extras};return G(t)}case"google":{let t={apiKey:e.apiKey,model:e.model,baseURL:e.baseURL,headers:e.headers,sdk:e.sdk,fetchImpl:e.fetchImpl,...e.extras};return D(t)}case"dry-run":{let t={model:e.model,...e.extras};return O(t)}case"fallback":{let t={provider:e.provider,model:e.model,...e.extras};return P(t)}case"openai":case"openrouter":case"groq":case"ollama":case"deepseek":case"xai":{let t={preset:e.provider,apiKey:e.apiKey,model:e.model,baseURL:e.baseURL,headers:e.headers,bodyExtras:e.bodyExtras,sdk:e.sdk,fetchImpl:e.fetchImpl,...e.extras};return q(t)}default:{let t=e.provider;throw new Error(`createAdapter: unknown provider: ${String(t)}`)}}}var L=class extends Error{name="AllTiersExhaustedError";skipped;failed;constructor(t){let o=[];t.failed.size>0&&o.push(`failed=[${[...t.failed.keys()].join(",")}]`),t.skipped.length>0&&o.push(`skipped=[${t.skipped.map(r=>`${r.name}(${r.reason})`).join(",")}]`),super(`All LLM adapter tiers exhausted: ${o.join(" ")}`),this.skipped=t.skipped,this.failed=t.failed}};function Me(e,t={}){if(e.length===0)throw new RangeError("cascadingLlmAdapter: tiers must be non-empty");let o=e.map(n=>({name:n.name,adapter:n.adapter,filter:n.filter,breaker:n.breaker?"canExecute"in n.breaker?n.breaker:E(n.breaker):void 0})),r=t.streamRetryBeforeFirstChunk??!0,s={provider:"cascading",model:void 0,async invoke(n,i){let a=[],d=new Map;for(let l=0;l<o.length;l++){let c=o[l];if(c.filter&&!c.filter(n,i)){a.push({name:c.name,reason:"filter"});continue}if(c.breaker&&!c.breaker.canExecute()){a.push({name:c.name,reason:"breaker"});continue}try{let p=await T(U(c.adapter.invoke(n,i)));return c.breaker?.recordSuccess(),{...p,metadata:{...p.metadata??{},tier:c.name}}}catch(p){d.set(c.name,p),c.breaker?.recordFailure(p);let m=o[l+1];m&&t.onFallback?.(c.name,m.name,p)}}let g={skipped:a,failed:d};throw t.onExhausted?.(g),new L(g)},async*stream(n,i){let a=[],d=new Map;for(let l=0;l<o.length;l++){let c=o[l];if(c.filter&&!c.filter(n,i)){a.push({name:c.name,reason:"filter"});continue}if(c.breaker&&!c.breaker.canExecute()){a.push({name:c.name,reason:"breaker"});continue}let p=!1;try{for await(let m of c.adapter.stream(n,i))p=!0,yield m;c.breaker?.recordSuccess();return}catch(m){if(d.set(c.name,m),c.breaker?.recordFailure(m),p||!r)throw m;let h=o[l+1];h&&t.onFallback?.(c.name,h.name,m)}}let g={skipped:a,failed:d};throw t.onExhausted?.(g),new L(g)}};return v(s,`cascade[${o.map(n=>n.name).join(",")}]`),s}function Ie(e,t,o){let r={name:e,adapter:t};return o?.breaker&&(r.breaker=o.breaker),o?.filter&&(r.filter=o.filter),r}export{G as a,D as b,q as c,Re as d,L as e,Me as f,Ie as g};
@@ -1 +0,0 @@
1
- import{a as D,c as j,d as V,e as $}from"./chunk-XG62INFA.js";import{a as v}from"./chunk-ESMPEKEV.js";import{i as S}from"./chunk-D5RFJOZ2.js";import{n as N}from"./chunk-VOPGGIL7.js";import{m as R,x as T}from"./chunk-V5A7M7RJ.js";import{G as K,o as b,p as L}from"./chunk-LYCLF26R.js";import{j as O}from"./chunk-CK2E7BTU.js";function w(){let e=new Error("aborted");return e.name="AbortError",e}function W(e,r){return e<=0?Promise.resolve():r?.aborted?Promise.reject(w()):new Promise((t,s)=>{let p=new v,u,y=()=>{p.cancel(),r&&u&&r.removeEventListener("abort",u)};p.start(e,()=>{y(),t()}),r&&(u=()=>{y(),s(w())},r.addEventListener("abort",u,{once:!0}))})}function U(e={}){let r=e.provider??"dry-run",t=e.model??"dry-run-v1",s=e.latencyMs??0,p=Math.max(1,e.streamChunkSize??16),u=e.respond??(d=>{let o=[...d].reverse().find(n=>n.role==="user");return o?`echo: ${o.content}`:"dry-run: no user message"}),y=e.usage??((d,o)=>{let n=d.reduce((a,l)=>a+l.content.length,0);return{input:{regular:Math.ceil(n/4)},output:{regular:Math.ceil(o.length/4)}}});return{provider:r,model:t,async invoke(d,o){if(await W(s,o?.signal),o?.signal?.aborted)throw w();let n=u(d,o),a=y(d,n);return{content:n,usage:a,finishReason:"stop",model:o?.model??t,provider:r,tier:o?.tier,metadata:{dryRun:!0}}},async*stream(d,o){let n=u(d,o),a=y(d,n),l=Math.ceil(n.length/p)||1,i=s>0?s/l:0;for(let c=0;c<n.length;c+=p){if(o?.signal?.aborted)throw w();await W(i,o?.signal),yield{type:"token",delta:n.slice(c,c+p)}}yield{type:"usage",usage:a},yield{type:"finish",reason:"stop"}}}}function _(e){let{storage:r,mode:t="read-write",keyFn:s,keyPrefix:p="llm-replay"}=e,y=V({storage:r,keyPrefix:p,mode:t==="read-strict"?"read":t,keyContext:({messages:o,opts:n})=>{let{signal:a,keyContext:l,...i}=n??{};return{messages:o,opts:i}}});async function d(o,n){if(s){if(s.length<=1){let l={messages:o,opts:n,context:n?.keyContext},i=await s(l);return`${p}:${i}`}let a=await s(o,n);return`${p}:${a}`}return y.keyFor({messages:o,opts:n})}return{keyFor:d,async lookup(o,n){if(t!=="write"){if(s){let a=await d(o,n),l=await r.load(a);return l===void 0?void 0:l}return y.lookup({messages:o,opts:n})}},async store(o,n,a){if(t!=="read"){if(s){let l=await d(o,n);await r.save(l,a);return}await y.store({messages:o,opts:n},a)}},async forget(o,n){if(!(t==="read"||t==="write")&&r.delete){if(s){let a=await d(o,n);await r.delete(a);return}await y.forget({messages:o,opts:n})}}}}function z(e,r,t){return{provider:t?.provider??e.provider,model:t?.model??e.model,capabilities:t?.capabilities??e.capabilities?.bind(e),invoke:r.invoke,stream:r.stream}}function ce(e,r){let{onResp:t,onError:s,name:p}=r;if(e!=null&&typeof e.then=="function"){let n=e;return s?n.then(t).catch(a=>{throw s(a),a}):n.then(t)}if(e!=null&&typeof e=="object"&&"content"in e)return t(e);let u=R(e);if(s){let n=!1;u.subscribe(a=>{for(let l of a){if(n)return;l[0]===O&&(n=!0,s(l[1]))}})}let y,d=!1,o=N(u,n=>{y=t(n),d=!0});return K([o],([n])=>n==null?null:d?y:t(n),{name:p??"adapt/invokeTap"})}function pe(e){let r=e.endNs??b();return{timestamp:r,wallClock:e.startWallClockNs??L(),provider:e.provider,model:e.model,tier:e.tier,usage:e.usage,latencyMs:Math.max(0,(r-e.startNs)/1e6),method:e.method,...e.error?{error:e.error}:{}}}function ye(){return{input:{regular:0},output:{regular:0}}}var G=Symbol.for("graphrefly.adapter.middlewareLayers");function J(e,r,t){let p=[...t?Q(t):[],r];return Object.defineProperty(e,G,{value:Object.freeze(p),enumerable:!1,writable:!1,configurable:!1}),e}function Q(e){let r=e[G];return Array.isArray(r)?r:[]}var M=class extends Error{constructor(t,s){super(`withReplayCache: no cached response for ${s} (key=${t}, mode=read-strict)`);this.key=t;this.method=s}name="ReplayCacheMissError"};function q(e,r){let t=r.mode??"read-write",s=r.cacheStreaming??!1,p=r.captureStreamCadence??!1,u=r.replaySpeed??1,y=r.keyPrefix??"llm-replay",d=t==="read"||t==="read-strict",o=_({storage:r.storage,mode:t==="write-only"?"write":t,keyFn:r.keyFn,keyPrefix:y}),n=i=>i<=0?Promise.resolve():new Promise(c=>{new v().start(i,()=>c())}),a=$(async({messages:i,invokeOpts:c})=>await T(R(e.invoke(i,c))),{keyFn:({_precomputedKey:i})=>i}),l=z(e,{async invoke(i,c){let C=await o.keyFor(i,c),f=await o.lookup(i,c);if(f?.response){let k=f.response;return{...k,metadata:{...k.metadata??{},replayCache:"hit"}}}if(t==="read-strict")throw new M(C,"invoke");let h=await a({messages:i,invokeOpts:c,_precomputedKey:C});return d||await o.store(i,c,{response:h,storedAtNs:L()}),h},async*stream(i,c){if(!s){for await(let m of e.stream(i,c))yield m;return}let C=await o.keyFor(i,c),f=await o.lookup(i,c);if(f){let m=f.response;if(f.streamChunks&&f.streamCadenceMs)for(let g=0;g<f.streamChunks.length;g++){let A=f.streamCadenceMs[g]??0,E=u>0?A/u:0;E>0&&await n(E),yield{type:"token",delta:f.streamChunks[g]?.delta??""}}else m.content&&(yield{type:"token",delta:m.content});m.usage&&(yield{type:"usage",usage:m.usage}),yield{type:"finish",reason:m.finishReason??"stop"};return}if(t==="read-strict")throw new M(C,"stream");let h="",k,P,F=[],I=[],x;for await(let m of e.stream(i,c)){if(m.type==="token"&&(h+=m.delta,p)){let g=b(),A=x===void 0?0:(g-x)/1e6;I.push(A),x=g,F.push({delta:m.delta})}m.type==="usage"&&(k=m.usage),m.type==="finish"&&(P=m.reason),yield m}if((h||k)&&!d){let g={response:{content:h,usage:k??{input:{regular:0},output:{regular:0}},finishReason:P,model:e.model??c?.model??"",provider:e.provider},storedAtNs:L(),...p?{streamChunks:F,streamCadenceMs:I}:{}};await o.store(i,c,g)}}});return J(l,"withReplayCache",e),l}var B=j;var Ae=M;function H(e,r){return{content:"[fallback: no cached response available for this request]",usage:{input:{regular:0},output:{regular:0}},finishReason:"stop",model:r,provider:e,metadata:{degraded:!0,reason:"no-fixture"}}}function Y(e,r,t){return typeof e=="string"?{content:e,usage:{input:{regular:0},output:{regular:0}},finishReason:"stop",model:t,provider:r,metadata:{degraded:!0,reason:"respond"}}:e}async function X(e,r){if("key"in e)return e.key;let t=B({messages:e.messages,opts:e.invokeOpts??{}}),s=await D(t);return`${r}:${s}`}function Z(e){let r={response:e.response,storedAtNs:L()};if("key"in e&&e.stream){let t=e.stream.chunks.filter(s=>s.type==="token");return{...r,streamChunks:t.map(s=>({delta:s.delta})),streamCadenceMs:e.stream.delaysMs??t.map(()=>0)}}return r}function ee(e,r){let t=[];if(e.fixtures!=null&&t.push("fixtures"),e.fixturesStorage!=null&&t.push("fixturesStorage"),t.length>1)throw new TypeError(`fallbackAdapter: \`fixtures\` and \`fixturesStorage\` are mutually exclusive; got both ${t.join(" and ")}. Pick one source. For filesystem directories use the node subpath's \`fallbackAdapter\`.`);if(e.fixtures){let s=S(),p=e.fixtures,u=(async()=>{for(let y of p){let d=await X(y,r);await s.save(d,Z(y))}})();return u.catch(()=>{}),{tier:s,seedReady:u}}return e.fixturesStorage?{tier:e.fixturesStorage,seedReady:Promise.resolve()}:{tier:void 0,seedReady:Promise.resolve()}}function Se(e={}){let r=e.provider??"fallback",t=e.model??"fallback",s=e.onMiss??"respond",p=e.keyPrefix??"fallback",u=e.record?e.record.adapter:s==="throw"?U({provider:r,model:t,respond:()=>"[unreachable: read-strict mode throws on miss]"}):{provider:r,model:t,async invoke(a,l){let i=e.respond?e.respond(a,l):H(r,t);return Y(i,r,t)},async*stream(a,l){let i=e.respond?e.respond(a,l):H(r,t),c=Y(i,r,t);yield{type:"token",delta:c.content},c.usage&&(yield{type:"usage",usage:c.usage}),yield{type:"finish",reason:c.finishReason??"stop"}}},y,d=Promise.resolve();if(e.record){if(!e.record.storage)throw new TypeError("fallbackAdapter: `record.storage` is required in record mode. For filesystem `record.dir` convenience, use the node subpath's `fallbackAdapter`.");y=e.record.storage}else{let a=ee(e,p);y=a.tier??S(),d=a.seedReady}let o=e.record?"read-write":s==="throw"?"read-strict":"read",n=q(u,{storage:y,mode:o,keyPrefix:p,cacheStreaming:!0,captureStreamCadence:!0,replaySpeed:e.replaySpeed,...e.keyFn?{keyFn:e.keyFn}:{}});return{provider:r,model:t,capabilities:n.capabilities?.bind(n),async invoke(a,l){return await d,n.invoke(a,l)},async*stream(a,l){await d;for await(let i of n.stream(a,l))yield i}}}export{U as a,z as b,ce as c,pe as d,ye as e,J as f,M as g,q as h,B as i,Ae as j,Se as k};
@@ -1,61 +0,0 @@
1
- import{a as kt,b as Rt,c as xt,d as wt}from"./chunk-SUWT3ZON.js";import{f as $e}from"./chunk-OYJKFY7V.js";import{c as vt}from"./chunk-JNWRYDJN.js";import{a as Ht,b as Xt,c as Zt,d as er,e as tr,f as Be,g as rr}from"./chunk-PT7W5FCD.js";import{a as Fe,b as V,c as Le,d as de,e as ee,f as U,g as zt,h as Ge,i as Yt,j as Jt,k as Qt}from"./chunk-Q4U3A3L5.js";import{h as Lt}from"./chunk-Y4NI3X7O.js";import{b as Tt}from"./chunk-6HOSXQKF.js";import{a as we,b as Mt}from"./chunk-TSOYJ743.js";import{d as pt,e as Re,f as ft,h as _e}from"./chunk-VNC3TMVY.js";import{a as dt}from"./chunk-L6NSJVJZ.js";import{j as ae}from"./chunk-626TESAC.js";import{a as Z}from"./chunk-ESMPEKEV.js";import{R as ct,b as ut,s as mt,x as $}from"./chunk-VOPGGIL7.js";import{b as ke,c as X}from"./chunk-35JTVPOX.js";import{b as xe}from"./chunk-TZQPPQEQ.js";import{b as pe}from"./chunk-JQFH2DV6.js";import{A as bt,C as j,f as gt,k as je,l as yt,m as k,x as se,z as ht}from"./chunk-V5A7M7RJ.js";import{D as le,E as w,F as Q,G as v,H as re,m as J,o as H,p as be}from"./chunk-LYCLF26R.js";import{b as G,d as ce,i as q,j as W}from"./chunk-CK2E7BTU.js";import{b as qt}from"./chunk-QYADASLV.js";var Zr={};qt(Zr,{AgentLoopGraph:()=>Pe,AllTiersExhaustedError:()=>tr,BudgetExhaustedError:()=>Ce,ChatStreamGraph:()=>Ie,CircuitOpenError:()=>Re,DEFAULT_DECAY_RATE:()=>we,FallbackMissError:()=>Jt,LLMTimeoutError:()=>ge,ReplayCacheMissError:()=>zt,ToolRegistryGraph:()=>De,admissionFilter3D:()=>Wr,admissionScored:()=>Gt,agentLoop:()=>Vr,agentMemory:()=>Ur,anthropicAdapter:()=>Ht,canonicalJson:()=>Yt,cascadingLlmAdapter:()=>Be,chatStream:()=>rt,composePricing:()=>lr,computePrice:()=>We,contentGate:()=>_r,costMeterExtractor:()=>Sr,createAdapter:()=>er,createCapabilitiesRegistry:()=>nr,createPricingRegistry:()=>sr,dryRunAdapter:()=>Fe,fallbackAdapter:()=>Qt,frozenContext:()=>xr,gatedStream:()=>Nr,gaugesAsContext:()=>qr,googleAdapter:()=>Xt,graphFromSpec:()=>$t,graphFromSpecReactive:()=>Hr,handoff:()=>Fr,keywordFlagExtractor:()=>Or,knobsAsTools:()=>Yr,llmConsolidator:()=>tt,llmExtractor:()=>et,memoryRetrieval:()=>lt,memoryWithKG:()=>st,memoryWithTiers:()=>it,memoryWithVectors:()=>at,observableAdapter:()=>or,openAICompatAdapter:()=>Zt,parseRateLimitFromError:()=>qe,pricingFor:()=>dr,promptCall:()=>Ze,promptNode:()=>Xe,redactor:()=>jr,registryPricing:()=>ir,resilientAdapter:()=>Mr,streamExtractor:()=>Ir,streamingPromptNode:()=>Lr,suggestStrategy:()=>Wt,suggestStrategyReactive:()=>Qr,systemPromptBuilder:()=>Ar,tier:()=>rr,toolCallExtractor:()=>Pr,toolExecution:()=>nt,toolRegistry:()=>ot,toolSelector:()=>$r,validateGraphDef:()=>Xr,withBreaker:()=>Ke,withBudgetGate:()=>Ue,withDryRun:()=>mr,withRateLimiter:()=>ze,withReplayCache:()=>Ge,withRetry:()=>Ye,withTimeout:()=>Je,zeroPrice:()=>Ae});function Te(t,e){return`${t}::${e}`}function nr(t){let e=xe({name:"capabilitiesRegistry"}),r=l=>{e.set(Te(l.provider,l.id),l)};if(t)for(let l of t)r(l);let n=(l,d)=>{let m=e.get(Te(l,d));if(m)return m;let p=e.entries.cache;if(!p)return;let c;for(let[,g]of p){if(g.provider!==l)continue;let y=g.id;d.startsWith(y)&&(!c||y.length>c.id.length)&&(c=g)}return c},o=128,a=new Map,s=new Map,i=(l,d,m,p)=>{for(l.has(d)&&l.delete(d),l.set(d,m);l.size>p;){let c=l.keys().next().value;if(c===void 0)break;l.delete(c)}},u=v([e.entries],([l])=>l instanceof Map?Array.from(l.values()):[],{name:"capabilitiesRegistry/entries",initial:[]});return{register:r,lookup:n,remove(l,d){let m=e.has(Te(l,d));return m&&e.delete(Te(l,d)),m},entries(){let l=e.entries.cache;return(function*(){if(l)for(let d of l.values())yield d})()},lookupNode(l,d){let m=Te(l,d),p=a.get(m);if(p)return a.delete(m),a.set(m,p),p;let c=v([e.entries],()=>n(l,d),{name:`capabilitiesRegistry/lookup/${l}::${d}`,initial:void 0});return i(a,m,c,o),c},entriesNode:u,byProvider(l){let d=s.get(l);if(d)return s.delete(l),s.set(l,d),d;let m=v([u],([p])=>p.filter(c=>c.provider===l),{name:`capabilitiesRegistry/byProvider/${l}`,initial:[]});return i(s,l,m,o),m}}}function z(t){let e=t.input,r=e.regular+(e.cacheRead??0)+(e.cacheWrite5m??0)+(e.cacheWrite1h??0)+(e.cacheWriteOther??0)+(e.audio??0)+(e.image??0)+(e.video??0)+(e.toolUse??0);if(!e.extensions)return r;let n=0;for(let o of Object.values(e.extensions))n+=o;return r+n}function ne(t){let e=t.output,r=e.regular+(e.reasoning??0)+(e.audio??0)+(e.predictionAccepted??0)+(e.predictionRejected??0);if(!e.extensions)return r;let n=0;for(let o of Object.values(e.extensions))n+=o;return r+n}function Nt(){return{input:{regular:0},output:{regular:0}}}function or(t,e){let r=e?.logMax??1e3,n=pe(void 0,{name:e?.name?`${e.name}/stats`:"adapterStats",maxSize:r}),o=w(null,{name:"adapterStats/lastCall"}),a=v([n.entries],([y])=>y.length,{name:"adapterStats/totalCalls",initial:0}),s=v([n.entries],([y])=>y.reduce((f,h)=>f+z(h.usage),0),{name:"adapterStats/totalInputTokens",initial:0}),i=v([n.entries],([y])=>y.reduce((f,h)=>f+ne(h.usage),0),{name:"adapterStats/totalOutputTokens",initial:0}),u=[j(a),j(s),j(i)],l=y=>{n.append(y),o.emit(y)},d=()=>{n.clear(),o.emit(null)},m=V(t,{invoke(y,f){let h=H(),b=be(),N=t.model??f?.model??"",A=R=>(l(de({provider:t.provider,model:t.model??f?.model??R.model??"",tier:f?.tier??R.tier,usage:R.usage??ee(),startNs:h,startWallClockNs:b,method:"invoke"})),R),C=R=>{let D=R;l(de({provider:t.provider,model:N,tier:f?.tier,usage:ee(),startNs:h,startWallClockNs:b,method:"invoke",error:{type:D?.name??"Error",message:D?.message??String(R)}}))};return Le(t.invoke(y,f),{onResp:A,onError:C,name:"adapterStats/invokeTap"})},async*stream(y,f){let h=H(),b=be(),N=t.model??f?.model??"",A;try{for await(let C of t.stream(y,f))C.type==="usage"&&(A=C.usage),yield C;l(de({provider:t.provider,model:N,tier:f?.tier,usage:A??ee(),startNs:h,startWallClockNs:b,method:"stream"}))}catch(C){let R=C;throw l(de({provider:t.provider,model:N,tier:f?.tier,usage:A??ee(),startNs:h,startWallClockNs:b,method:"stream",error:{type:R?.name??"Error",message:R?.message??String(C)}})),C}}});U(m,"observableAdapter",t);let p=!1;return{adapter:m,stats:{lastCall:o,allCalls:n,totalCalls:a,totalInputTokens:s,totalOutputTokens:i,reset:d,dispose:()=>{if(!p){p=!0;for(let y of u)y();u.length=0}}}}}function ar(t,e){return t==null?0:typeof t=="number"?t:t.thresholdTokens!=null&&t.pricePerMillionAbove!=null&&e>t.thresholdTokens?t.pricePerMillionAbove:t.pricePerMillion}function Ae(t="USD"){return{total:0,currency:t}}function We(t,e,r){let n=z(t),o=e.currency??"USD",a=r?.withBreakdown===!0,s=a?{}:null,i=0,u=(f,h,b)=>{if(!h||b==null)return;let N=ar(b,n),A=h*N/1e6;i+=A,a&&(s[f]=(s[f]??0)+A)},l=t.input,d=e.input;if(d&&(u("input.regular",l.regular,d.regular),u("input.cacheRead",l.cacheRead??0,d.cacheRead),u("input.cacheWrite5m",l.cacheWrite5m??0,d.cacheWrite5m),u("input.cacheWrite1h",l.cacheWrite1h??0,d.cacheWrite1h),u("input.cacheWriteOther",l.cacheWriteOther??0,d.cacheWriteOther),u("input.audio",l.audio??0,d.audio),u("input.image",l.image??0,d.image),u("input.video",l.video??0,d.video),u("input.toolUse",l.toolUse??0,d.toolUse),l.extensions&&d.extensions))for(let[f,h]of Object.entries(l.extensions))u(`input.ext.${f}`,h,d.extensions[f]);let m=t.output,p=e.output;if(p&&(u("output.regular",m.regular,p.regular),u("output.reasoning",m.reasoning??0,p.reasoning),u("output.audio",m.audio??0,p.audio),u("output.predictionAccepted",m.predictionAccepted??0,p.predictionAccepted),u("output.predictionRejected",m.predictionRejected??0,p.predictionRejected),m.extensions&&p.extensions))for(let[f,h]of Object.entries(m.extensions))u(`output.ext.${f}`,h,p.extensions[f]);let c=r?.tier;if(c&&e.tierMultipliers){let f=e.tierMultipliers[c];if(f!=null&&(i*=f,a))for(let h of Object.keys(s))s[h]*=f}let g=t.auxiliary,y=e.auxiliary;if(g&&y)for(let[f,h]of Object.entries(g)){let b=y[f];if(b==null||!h)continue;let N=h*b;i+=N,a&&(s[`auxiliary.${f}`]=N)}return a?{total:i,currency:o,breakdown:s}:{total:i,currency:o}}function Ne(t,e){return`${t}::${e}`}function sr(t){let e=new Map,r=new Map,n=(o,a,s)=>{e.set(Ne(o,a),{provider:o,model:a,pricing:s});let i=r.get(o);i||(i=new Set,r.set(o,i)),i.add(a)};if(t)for(let[o,a,s]of t)n(o,a,s);return{register:n,lookup(o,a){let s=e.get(Ne(o,a));if(s)return s.pricing;let i=r.get(o);if(!i)return;let u;for(let l of i)if(a.startsWith(l)&&(!u||l.length>u.key.length)){let d=e.get(Ne(o,l));d&&(u={key:l,pricing:d.pricing})}return u?.pricing},remove(o,a){let s=e.delete(Ne(o,a));if(s){let i=r.get(o);i?.delete(a),i&&i.size===0&&r.delete(o)}return s},entries(){let o=e.values();return(function*(){for(let{provider:a,model:s,pricing:i}of o)yield[a,s,i]})()}}}function ir(t,e="USD"){return(r,n)=>{let o=t.lookup(n.provider,n.model);return o?We(r,o,{tier:n.tier,withBreakdown:n.withBreakdown}):Ae(e)}}function lr(...t){return(e,r)=>{for(let n of t){let o=n(e,r);if(o.total!==0)return o}return t.length>0?t[0](e,r):Ae()}}function dr(t,e,r){return t?.pricing?We(e,t.pricing,r):Ae()}function Ke(t,e={}){let r=e.breaker??ft(e),n=V(t,{async invoke(o,a){if(!r.canExecute())throw new Re;try{let s=await se(k(t.invoke(o,a)));return r.recordSuccess(),s}catch(s){throw r.recordFailure(s),s}},async*stream(o,a){if(!r.canExecute())throw new Re;try{for await(let s of t.stream(o,a))yield s;r.recordSuccess()}catch(s){throw r.recordFailure(s),s}}});return U(n,"withBreaker",t),{adapter:n,breaker:r}}var Ce=class extends Error{constructor(r,n,o){super(`Budget exhausted: ${r} (limit=${n}, observed=${o})`);this.which=r;this.limit=n;this.observed=o}name="BudgetExhaustedError"},Ve=Object.freeze({calls:0,inputTokens:0,outputTokens:0,usd:0}),At=()=>({calls:0,inputTokens:0,outputTokens:0,usd:0});function Ue(t,e){let r=pe(void 0,{name:e.name?`${e.name}/log`:"budgetGate/log",maxSize:e.logMax??1e3}),n=w(At(),{name:e.name?`${e.name}/totals`:"budgetGate/totals"}),o=v([n],([l])=>{let d=l;return!(e.caps.calls!=null&&d.calls>=e.caps.calls||e.caps.inputTokens!=null&&d.inputTokens>=e.caps.inputTokens||e.caps.outputTokens!=null&&d.outputTokens>=e.caps.outputTokens||e.caps.usd!=null&&d.usd>=e.caps.usd)},{name:e.name?`${e.name}/isOpen`:"budgetGate/isOpen",initial:!0});if(j(o),e.onExhausted!=null){let l=e.onExhausted,d=!1,m=!0;o.subscribe(p=>{for(let c of p)if(c[0]===G){let g=c[1];if(d&&m&&g===!1){let y=Ct(n.cache??Ve,e.caps);y&&l(y)}m=g,d=!0}})}let a=()=>{if(o.cache===!1){let l=n.cache??Ve,d=Ct(l,e.caps);return new Ce(d??"budget",e.caps[d??"calls"]??0,ur(l,d??"calls"))}},s=(l,d)=>{let m=t.provider,p=de({provider:m,model:d.model,tier:d.tier,usage:l,startNs:d.startNs,method:d.method,...d.error?{error:d.error}:{}});r.append(p);let c=n.cache??Ve,g=e.pricingFn?c.usd+e.pricingFn(l,{model:d.model,provider:m,tier:d.tier}).total:c.usd;n.emit({calls:c.calls+1,inputTokens:c.inputTokens+z(l),outputTokens:c.outputTokens+ne(l),usd:g})},i=()=>{r.clear(),n.emit(At())},u=V(t,{invoke(l,d){let m=a();if(m)return Promise.reject(m);let p=H(),c=t.model??d?.model??"",g=f=>(s(f.usage??ee(),{model:t.model??d?.model??f.model??"",tier:d?.tier??f.tier,startNs:p,method:"invoke"}),f),y=f=>{let h=f;s(ee(),{model:c,tier:d?.tier,startNs:p,method:"invoke",error:{type:h?.name??"Error",message:h?.message??String(f)}})};return Le(t.invoke(l,d),{onResp:g,onError:y,name:"budgetGate/invokeTap"})},async*stream(l,d){let m=a();if(m)throw m;let p=H(),c;try{for await(let g of t.stream(l,d))g.type==="usage"&&(c=g.usage),yield g;s(c??ee(),{model:t.model??d?.model??"",tier:d?.tier,startNs:p,method:"stream"})}catch(g){let y=g;throw s(c??ee(),{model:t.model??d?.model??"",tier:d?.tier,startNs:p,method:"stream",error:{type:y?.name??"Error",message:y?.message??String(g)}}),g}}});return U(u,"withBudgetGate",t),{adapter:u,budget:{totals:n,isOpen:o,log:r,reset:i}}}function Ct(t,e){if(e.calls!=null&&t.calls>=e.calls)return"calls";if(e.inputTokens!=null&&t.inputTokens>=e.inputTokens)return"inputTokens";if(e.outputTokens!=null&&t.outputTokens>=e.outputTokens)return"outputTokens";if(e.usd!=null&&t.usd>=e.usd)return"usd"}function ur(t,e){switch(e){case"calls":return t.calls;case"inputTokens":return t.inputTokens;case"outputTokens":return t.outputTokens;case"usd":return t.usd}}function mr(t,e){let r=e.mock??Fe({provider:t.provider,model:t.model}),n=typeof e.enabled=="boolean"?e.enabled:void 0,o=n===void 0?k(e.enabled):void 0,a;o&&(a=j(o));let s=()=>n!==void 0?n:!!o?.cache,i=V(t,{invoke(l,d){return s()?r.invoke(l,d):t.invoke(l,d)},stream(l,d){return s()?r.stream(l,d):t.stream(l,d)}});return U(i,"withDryRun",t),{adapter:i,dispose:()=>{a&&(a(),a=void 0)}}}function qe(t){if(t==null||typeof t!="object")return;let e=t,r=e.status,n=cr(e.headers);if(r!==429&&r!==503&&!br(e.message))return;let o={},a=n("retry-after"),s=fr(a);s!=null&&(o.retryAfterMs=s);let i=n("anthropic-ratelimit-requests-reset");if(i){let c=St(i);c!=null&&(o.retryAfterMs=Math.max(o.retryAfterMs??0,c))}let u=n("anthropic-ratelimit-tokens-reset");if(u){let c=St(u);c!=null&&(o.retryAfterMs=Math.max(o.retryAfterMs??0,c))}let l=Se(n,"x-ratelimit-limit-requests");l!=null&&(o.rpmCap=l);let d=Se(n,"x-ratelimit-limit-tokens");d!=null&&(o.tpmCap=d);let m=Se(n,"x-ratelimit-remaining-requests"),p=Se(n,"x-ratelimit-remaining-tokens");if(m!=null&&l!=null&&l>0&&(o.usageHint??={},o.usageHint.rpm=1-m/l),p!=null&&d!=null&&d>0&&(o.usageHint??={},o.usageHint.tpm=1-p/d),o.retryAfterMs==null&&e.message){let c=yr(e.message);c!=null&&(o.retryAfterMs=c)}return e.headers&&(o.metadata={headers:pr(e.headers)}),o.retryAfterMs==null&&o.rpmCap==null&&o.tpmCap==null&&o.usageHint==null?o.metadata?o:void 0:o}function cr(t){if(!t)return()=>{};if(typeof t.get=="function"){let n=t;return o=>n.get(o)??n.get(o.toLowerCase())??void 0}let e=t,r={};for(let[n,o]of Object.entries(e)){let a=Array.isArray(o)?o.join(", "):o;a!=null&&(r[n.toLowerCase()]=a)}return n=>r[n.toLowerCase()]}function pr(t){let e={};if(typeof t.forEach=="function")return t.forEach((r,n)=>{e[n]=r}),e;for(let[r,n]of Object.entries(t))n!=null&&(e[r]=Array.isArray(n)?n.join(", "):n);return e}function Se(t,e){let r=t(e);if(r==null)return;let n=Number(r);return Number.isFinite(n)?n:void 0}function fr(t){if(!t)return;let e=t.trim(),r=Number(e);if(Number.isFinite(r)&&r>=0)return r*1e3;let n=Date.parse(e);if(Number.isFinite(n)){let o=n-Date.now();if(o>0)return o}}function St(t){if(!t)return;let e=Date.parse(t);if(Number.isFinite(e))return Math.max(0,e-Date.now())}var gr=/retry\s+(?:in|after)\s+(\d+(?:\.\d+)?)\s*(ms|s|sec|seconds?|m|min|minutes?)/i;function yr(t){let e=gr.exec(t);if(!e)return;let r=Number(e[1]);if(!Number.isFinite(r))return;let n=(e[2]??"s").toLowerCase();if(n==="ms")return r;if(n.startsWith("s"))return r*1e3;if(n.startsWith("m"))return r*6e4}var hr=/rate\s*limit|too\s*many\s*requests|quota|429/i;function br(t){return!!t&&hr.test(t)}function He(t){let e=new Error(t);return e.name="AbortError",e}function Ot(t={}){let e=Math.max(1,t.burstMultiplier??1),r=t.clampCooldownMs??6e4,n=t.rpm!=null?k(t.rpm):w(Number.POSITIVE_INFINITY),o=t.tpm!=null?k(t.tpm):w(Number.POSITIVE_INFINITY),a=w(Number.POSITIVE_INFINITY,{name:"adaptiveRateLimiter/signalRpmCap"}),s=w(Number.POSITIVE_INFINITY,{name:"adaptiveRateLimiter/signalTpmCap"}),i=w({},{name:"adaptiveRateLimiter/lastSignal"}),u=v([n,a],([T,I])=>Math.min(Number(T??1/0),Number(I??1/0)),{name:"adaptiveRateLimiter/effectiveRpm"}),l=v([o,s],([T,I])=>Math.min(Number(T??1/0),Number(I??1/0)),{name:"adaptiveRateLimiter/effectiveTpm"}),d=fe(Number(n.cache??Number.POSITIVE_INFINITY),e),m=fe(Number(o.cache??Number.POSITIVE_INFINITY),e),p=!1,c=!1,g=u.subscribe(T=>{for(let I of T)if(I[0]===G){let _=Number(I[1]);Number.isFinite(_)&&_>0?(d=fe(_,e),p=!1):_===1/0?(d=fe(1/0,e),p=!1):_<=0&&(p=!0)}}),y=l.subscribe(T=>{for(let I of T)if(I[0]===G){let _=Number(I[1]);Number.isFinite(_)&&_>0?(m=fe(_,e),c=!1):_===1/0?(m=fe(1/0,e),c=!1):_<=0&&(c=!0)}}),f=0,h=new Z,b=new Z,N;t.adaptation!=null&&(N=k(t.adaptation).subscribe(I=>{for(let _ of I)_[0]===G&&A(_[1])}));function A(T){if(i.emit(T),T.rpmCap!=null&&Number.isFinite(T.rpmCap)&&T.rpmCap>=0&&(a.emit(T.rpmCap),Number.isFinite(r)&&r>0&&h.start(r,()=>a.emit(Number.POSITIVE_INFINITY))),T.tpmCap!=null&&Number.isFinite(T.tpmCap)&&T.tpmCap>=0&&(s.emit(T.tpmCap),Number.isFinite(r)&&r>0&&b.start(r,()=>s.emit(Number.POSITIVE_INFINITY))),T.retryAfterMs!=null&&T.retryAfterMs>0){let I=H()+T.retryAfterMs*1e6;I>f&&(f=I)}}let C=w(0,{name:"adaptiveRateLimiter/pending"}),R=w(Number.POSITIVE_INFINITY,{name:"adaptiveRateLimiter/rpmAvailable"}),D=w(Number.POSITIVE_INFINITY,{name:"adaptiveRateLimiter/tpmAvailable"}),P=T=>{C.emit((C.cache??0)+T)},S=()=>{R.emit(d.available()),D.emit(m.available())};async function E(T={}){let I=T.requestCost??1,_=T.tokenCost??0,K=T.signal;P(1);try{for(;;){if(K?.aborted)throw He("AdaptiveRateLimiter.acquire aborted");let te=H();if(f>te){let M=Math.ceil((f-te)/1e6);await Ee(M,K);continue}if(I>0&&p||_>0&&c){await Ee(250,K);continue}let ie=d,ue=m;if(!ie.tryConsume(I)){await Ee(Et(ie,I),K);continue}if(!(_>0?ue.tryConsume(_):!0)){ie.putBack(I),await Ee(Et(ue,_),K);continue}S();return}}finally{P(-1)}}function O(T){T>0?m.tryConsume(T):T<0&&m.putBack(-T),S()}function F(){g(),y(),N?.(),h.cancel(),b.cancel()}return{effectiveRpm:u,effectiveTpm:l,lastSignal:i,pending:C,rpmAvailable:R,tpmAvailable:D,acquire:E,recordUsage:O,recordSignal:A,dispose:F}}function fe(t,e){if(!Number.isFinite(t)||t===1/0)return _e(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER);let r=Math.max(1,t*e),n=t/60;return _e(r,n)}function Et(t,e){let r=t.available(),n=Math.max(0,e-r);return n<=0?25:Math.min(5e3,Math.max(50,n*100))}function Ee(t,e){return t<=0?Promise.resolve():e?.aborted?Promise.reject(He("AdaptiveRateLimiter.acquire aborted")):new Promise((r,n)=>{let o=new Z,a,s=()=>{o.cancel(),e&&a&&e.removeEventListener("abort",a)};o.start(t,()=>{s(),r()}),e&&(a=()=>{s(),n(He("AdaptiveRateLimiter.acquire aborted"))},e.addEventListener("abort",a,{once:!0}))})}function ze(t,e={}){let r=e.limiter??Ot({name:e.name??"rateLimiter",rpm:e.rpm,tpm:e.tpm,adaptation:e.adaptation,burstMultiplier:e.burstMultiplier}),n=(s,i)=>e.costFn?e.costFn(s,i):0,o=s=>{let i=qe(s);i&&r.recordSignal(i)},a=V(t,{async invoke(s,i){let u=n(s,i);await r.acquire({requestCost:1,tokenCost:u,signal:i?.signal});try{let l=await se(k(t.invoke(s,i))),d=l.usage??Nt(),p=z(d)+ne(d)-u;return p>0&&r.recordUsage(p),l}catch(l){throw o(l),l}},async*stream(s,i){let u=n(s,i);await r.acquire({requestCost:1,tokenCost:u,signal:i?.signal});try{let l=0;for await(let m of t.stream(s,i))m.type==="usage"&&(l=z(m.usage)+ne(m.usage)),yield m;let d=l-u;d>0&&r.recordUsage(d)}catch(l){throw o(l),l}}});return U(a,"withRateLimiter",t),{adapter:a,limiter:r}}function Oe(t="aborted"){let e=new Error(t);return e.name="AbortError",e}function It(t,e){return t<=0?Promise.resolve():e?.aborted?Promise.reject(Oe()):new Promise((r,n)=>{let o=new Z,a,s=()=>{o.cancel(),e&&a&&e.removeEventListener("abort",a)};o.start(t,()=>{s(),r()}),e&&(a=()=>{s(),n(Oe())},e.addEventListener("abort",a,{once:!0}))})}function Ye(t,e={}){let r=e.attempts??3,n=e.baseDelayMs??500,o=e.maxDelayMs??1e4,a=e.strategy??"decorrelated",s=e.jitter??!0,i=e.shouldRetry??Tr,u=e.retryStreaming??!0,l=(m,p)=>{if(a==="decorrelated"){let f=Math.min(o,Math.max(n,p*3));return n+Math.random()*(f-n)}let c=a==="exp"?n*2**(m-1):n*m,g=Math.min(o,c);if(!s)return g;let y=g*(.5+Math.random());return Math.min(o,y)},d=V(t,{async invoke(m,p){if(p?.signal?.aborted)throw Oe();let c,g=n;for(let y=1;y<=r;y++)try{return await se(k(t.invoke(m,p)))}catch(f){if(c=f,y>=r||!i(f,y))throw f;let h=l(y,g);g=h,await It(h,p?.signal)}throw c},async*stream(m,p){if(p?.signal?.aborted)throw Oe();if(!u){for await(let y of t.stream(m,p))yield y;return}let c,g=n;for(let y=1;y<=r;y++){let f=!1;try{for await(let h of t.stream(m,p))f=!0,yield h;return}catch(h){if(c=h,f||y>=r||!i(h,y))throw h;let b=l(y,g);g=b,await It(b,p?.signal)}}throw c}});return U(d,"withRetry",t),d}function Tr(t,e){if(t==null)return!1;let r=t;return r.name==="LLMTimeoutError"?!0:r.name==="AbortError"||r.message==="aborted"||r.name==="DOMException"&&r.code!=null&&Number(r.code)===20||r.name==="BudgetExhaustedError"||r.name==="CircuitOpenError"?!1:r.status!=null?r.status===429||r.status>=500&&r.status<600:r.code&&typeof r.code=="string"&&/^E[A-Z]+$/.test(r.code)?!0:r.message?/network|timeout|socket|fetch|econn|eai_/i.test(r.message):!1}var ge=class extends Error{constructor(r){super(`LLM call timed out after ${r}ms`);this.ms=r}name="LLMTimeoutError"};function Je(t,e){if(e<=0)throw new RangeError("withTimeout: ms must be > 0");let r=a=>{let s=new AbortController,i=!1,u,l=new Z;return a&&(a.aborted?s.abort(a.reason):(u=()=>{l.cancel(),s.abort(a.reason)},a.addEventListener("abort",u,{once:!0}))),l.start(e,()=>{i=!0,s.abort(new ge(e))}),{signal:s.signal,cancel:()=>{l.cancel(),a&&u&&a.removeEventListener("abort",u)},timedOut:()=>i}},n=(a,s)=>{if(!s||a instanceof ge)throw a;let i=a;if(i?.name==="AbortError"||i?.name==="DOMException"&&Number(i.code)===20||a?.message==="aborted"){let l=new ge(e);throw l.cause=a,l}throw a},o=V(t,{async invoke(a,s){let{signal:i,cancel:u,timedOut:l}=r(s?.signal);try{return await se(k(t.invoke(a,{...s,signal:i})))}catch(d){return n(d,l())}finally{u()}},async*stream(a,s){let{signal:i,cancel:u,timedOut:l}=r(s?.signal);try{for await(let d of t.stream(a,{...s,signal:i}))yield d}catch(d){n(d,l())}finally{u()}}});return U(o,"withTimeout",t),o}function Mr(t,e={}){let r={adapter:t},n=t;if(e.rateLimit){let o=ze(n,e.rateLimit);n=o.adapter,r.rateLimiter=o.limiter}if(e.budget){let o=Ue(n,e.budget);n=o.adapter,r.budget=o.budget}if(e.breaker){let o=Ke(n,e.breaker);n=o.adapter,r.breaker=o.breaker}if(e.timeoutMs!=null&&(n=Je(n,e.timeoutMs)),e.retry&&(n=Ye(n,e.retry)),e.fallback){if(e.name==="fallback")throw new RangeError('resilientAdapter: `name` cannot be "fallback" \u2014 collides with the secondary tier label.');let o={};e.onFallback&&(o.onFallback=e.onFallback),e.onExhausted&&(o.onExhausted=e.onExhausted),n=Be([{name:e.name??"primary",adapter:n},{name:"fallback",adapter:e.fallback}],o)}return e.cache&&(n=Ge(n,e.cache)),r.adapter=n,r}function L(t,e){return dt("ai",t,e)}function vr(t){return t!=null&&typeof t.then=="function"}function Qe(t){return typeof t=="object"&&t!==null&&"subscribe"in t&&typeof t.subscribe=="function"&&"cache"in t}function kr(t){return t!=null&&typeof t=="object"&&Symbol.asyncIterator in t&&typeof t[Symbol.asyncIterator]=="function"}var Rr=3e4;function Dt(t,e){if(t.status==="settled"){let n=t.cache;if(n!==void 0)return Promise.resolve(n)}let r=e?.timeoutMs??Rr;return new Promise((n,o)=>{let a=new Z,s=t.subscribe(i=>{for(let u of i){if(u[0]===G){a.cancel(),s(),n(u[1]);return}if(u[0]===W){a.cancel(),s(),o(u[1]);return}if(u[0]===q){a.cancel(),s(),o(new Error("firstDataFromNode: completed without producing a value"));return}}});a.start(r,()=>{s(),o(new Error(`firstDataFromNode: timed out after ${r}ms`))})})}async function Me(t){return vr(t)?Me(await t):Qe(t)?Dt(t):kr(t)?Dt(k(t)):t}function ye(t){let e=t.match(/^```(?:json)?\s*([\s\S]*?)\s*```[\s\S]*$/);return e?e[1]:t}function co(t,e,r){return Q(n=>{let o=new AbortController,a=!1,s=null,i=d=>{a||(a=!0,n.down([[G,d],[q]]),s?.(),s=null)},u;try{u=t.invoke(e,{...r.invokeOpts,signal:o.signal})}catch(d){return i(r.onFailure("throw",d)),()=>o.abort()}return s=k(u,{signal:o.signal}).subscribe(d=>{for(let m of d){if(a)return;if(m[0]===G){try{i(r.onSuccess(m[1]))}catch(p){i(r.onFailure("onSuccess-threw",p))}return}if(m[0]===W){i(r.onFailure("error",m[1]));return}if(m[0]===q){i(r.onFailure("complete",void 0));return}}}),a&&s&&(s(),s=null),()=>{o.abort(),s?.(),s=null}})}function xr(t,e){let r=k(t),n=e?.refreshTrigger!=null?k(e.refreshTrigger):null,o=e?.name!==void 0?{name:e.name}:void 0,a=X("frozenContext",o);return n==null?le([r],(s,i,u)=>{if(u.store.emitted===!0)return;let d=s[0],m=d!=null&&d.length>0?d.at(-1):u.prevData[0];if(m!==void 0)return u.store.emitted=!0,i.emit(m),{invalidate:()=>{u.store.emitted=!1}}},{name:e?.name??"frozenContext",describeKind:"derived",initial:null,meta:L("frozen_context",{...a})}):le([r,n],(s,i,u)=>{let l=s[1];if(!(l!=null&&l.length>0))return;let m=s[0],p=m!=null&&m.length>0?m.at(-1):u.prevData[0];i.emit(p)},{name:e?.name??"frozenContext",describeKind:"derived",initial:null,meta:L("frozen_context",{...a})})}function Pt(t){return t!=null&&typeof t=="object"&&"content"in t?String(t.content):typeof t=="string"?t:String(t)}function wr(t,e=200){return t.length<=e?t:`${t.slice(0,e)}\u2026`}function Xe(t,e,r,n){let o=n?.format??"text",a=n?.name??"prompt_node";n?.tools!==void 0&&o!=="raw"&&console.warn("promptNode: `tools` is set but `format !== 'raw'`. Tool calls in the response will be silently dropped \u2014 set `format: 'raw'` to receive the full LLMResponse with `toolCalls`.");let s=e.length,i=n?.tools!==void 0?[...e,n.tools]:e,u=v(i,d=>{let m=d.slice(0,s),p=n?.tools!==void 0?d[s]:void 0;if(m.some(g=>g==null))return{messages:[],tools:p};let c=typeof r=="string"?r:r(...m);return c?{messages:[{role:"user",content:c}],tools:p}:{messages:[],tools:p}},{name:`${a}::messages`,meta:L("prompt_node")});return $(u,d=>{let{messages:m,tools:p}=d;return!m||m.length===0?w(null):Q(c=>{let g=!1,y=!1,f,h={model:n?.model,temperature:n?.temperature,maxTokens:n?.maxTokens,systemPrompt:n?.systemPrompt,...p!==void 0?{tools:p}:{}};if(n?.abort){let C=bt(n.abort);h.signal=C.signal,f=C.dispose}let b;try{b=t.invoke(m,h)}catch(C){return g=!0,c.down([[W,C]]),()=>{f?.()}}let A=k(b).subscribe(C=>{if(!(y||g))for(let R of C){if(g)return;if(R[0]===G){let D=R[1];if(o==="raw")c.emit(D);else try{let P=Pt(D),S=o==="json"?JSON.parse(ye(P)):P;c.emit(S)}catch(P){let S=Pt(D),E=new Error(`promptNode: failed to parse LLM response as JSON: ${P.message}
2
- Raw content (first 200 chars): ${wr(S)}`);g=!0,c.down([[W,E]]);return}}else if(R[0]===W){g=!0,c.down([[W,R[1]]]);return}else if(R[0]===q){g=!0,c.down([[q]]);return}else c.down([R])}});return()=>{y=!0,A(),f?.()}},{name:`${a}::call`,meta:L("prompt_node::call")})},{name:`${a}::output`,meta:n?.meta?{...L("prompt_node::output"),...n.meta}:L("prompt_node::output")})}function Ze(t,e,r,n){let o=r.name??n;return a=>{let s=w(a);return Xe(r.adapter,[s],i=>e(i),{name:o,format:"json",systemPrompt:t,model:r.model,temperature:r.temperature??0,maxTokens:r.maxTokens})}}function et(t,e){let r=e.maxExistingKeys??100,n=Ze(t,o=>JSON.stringify({input:o.raw,existingKeys:o.existingKeys}),e,"llmExtractor");return(o,a)=>{let s=r===Number.POSITIVE_INFINITY?[...a.keys()]:[...a.keys()].slice(0,r);return n({raw:o,existingKeys:s})}}function tt(t,e){let r=Ze(t,n=>JSON.stringify({memories:n}),e,"llmConsolidator");return n=>{let o=[...n.entries()].map(([a,s])=>({key:a,value:s}));return r(o)}}async function _t(t,e,r,n){let o="",a=0;for await(let s of t.stream(e,r))n.publish({...s,seq:a++,ts:be()}),s.type==="token"&&(o+=s.delta);return o}function jt(t,e){if(e==="json")try{return JSON.parse(ye(t))}catch(r){let n=t.slice(0,160);throw new Error(`streamingPromptNode: format:"json" \u2014 failed to parse accumulated text as JSON: ${r.message}; content preview: ${n}`)}return t}function Ft(t,e){return v([t.latest],([r],n)=>{let o=n.store;if(r==null)return o.acc??"";let a=r;return a.seq===0&&(o.acc=""),a.type==="token"&&(o.acc=(o.acc??"")+a.delta),o.acc??""},{name:e,meta:L("accumulated_text"),initial:""})}function Lr(t,e,r,n){let o=n?.name??"llm",a=n?.format??"text",s=$e(`${o}/stream`,{...n?.retainedLimit!=null?{retainedLimit:n.retainedLimit}:{}}),i=v(e,m=>{if(m.some(c=>c==null))return[];let p=typeof r=="string"?r:r(...m);return p?[{role:"user",content:p}]:[]},{name:`${o}::messages`,meta:L("prompt_node::messages"),initial:[]}),u=$(i,m=>{let p=m;if(!p||p.length===0)return w(null);let c=new AbortController;async function*g(){try{let y=await _t(t,p,{model:n?.model,temperature:n?.temperature,maxTokens:n?.maxTokens,systemPrompt:n?.systemPrompt,signal:c.signal},s);yield jt(y,a)}finally{c.abort()}}return k(g())},{meta:X("streamingPromptNode")}),l=Ft(s,`${o}::accumulatedText`),d=j(u);return{output:u,deltaTopic:s,accumulatedText:l,dispose:()=>{d(),s.destroy()}}}function Nr(t,e,r,n,o,a){let s=w(0,{name:`${e}/cancel`}),i=0,u=[...n,s],l=a?.name??e,d=a?.format??"text",m=$e(`${l}/stream`,{...a?.retainedLimit!=null?{retainedLimit:a.retainedLimit}:{}}),p=v(u,D=>{let P=D.slice(0,-1);if(P.some(E=>E==null))return[];let S=typeof o=="string"?o:o(...P);return S?[{role:"user",content:S}]:[]},{name:`${l}::messages`,meta:L("prompt_node::messages"),initial:[]}),c=$(p,D=>{let P=D;if(!P||P.length===0)return w(null);let S=new AbortController;async function*E(){try{let O=await _t(r,P,{model:a?.model,temperature:a?.temperature,maxTokens:a?.maxTokens,systemPrompt:a?.systemPrompt,signal:S.signal},m);yield jt(O,d)}finally{S.abort()}}return k(E())},{meta:X("gatedStream")}),g=Ft(m,`${l}::accumulatedText`),y=ut(c,D=>D!=null);t.add(y,{name:`${e}/raw`});let f=vt(`${e}/gate-graph`);t.mount(`${e}/gate-graph`,f),f.add(y,{name:`${e}/raw`});let h=f.approvalGate(`${e}/gate`,`${e}/raw`,a?.gate),b=j(c),N=j(h.node),A=j(g);t.addDisposer(b),t.addDisposer(N),t.addDisposer(A);let C=h.reject.bind(h),R={...h,reject(D=1){J(()=>{C(D),s.emit(++i)})}};return{output:h.node,deltaTopic:m,accumulatedText:g,gate:R,dispose:()=>{b(),N(),A(),m.destroy()}}}function Ar(t,e){let r=e?.separator??`
3
-
4
- `,n=t.map(s=>typeof s=="string"?w(s):k(s)),o=v(n,s=>s.filter(i=>i!=null&&i!=="").join(r),{name:e?.name??"systemPrompt",describeKind:"derived",meta:L("system_prompt"),initial:""}),a=j(o);return Object.assign(o,{dispose:a})}var Cr=(t,e)=>t===e?!0:t.chunkCount===e.chunkCount&&t.charCount===e.charCount&&t.estimatedTokens===e.estimatedTokens&&t.estimated===e.estimated;function Sr(t,e){let r=e?.charsPerToken??4,n={chunkCount:0,charCount:0,estimatedTokens:0,estimated:!0};return v([t.latest],([o],a)=>{if(o==null)return n;let s=o;"chunkCount"in a.store||(a.store.chunkCount=0,a.store.charCount=0,a.store.usageTokens=0,a.store.sawUsage=!1);let i=a.store;s.type==="token"?(i.chunkCount+=1,i.charCount+=s.delta.length):s.type==="usage"&&(i.sawUsage=!0,i.usageTokens=z(s.usage)+ne(s.usage));let u=i.sawUsage?i.usageTokens:Math.ceil(i.charCount/r);return{chunkCount:i.chunkCount,charCount:i.charCount,estimatedTokens:u,estimated:!i.sawUsage}},{name:e?.name??"cost-meter",describeKind:"derived",initial:n,meta:L("cost_meter_extractor"),equals:Cr})}var Er=(t,e)=>{if(t===e)return!0;if(t==null||e==null)return t===e;if(t.length!==e.length)return!1;for(let r=0;r<t.length;r++){let n=t[r],o=e[r];if(n.label!==o.label||n.pattern!==o.pattern||n.match!==o.match||n.position!==o.position)return!1}return!0};function Or(t,e){let r=e.maxPatternLength??128;for(let o of e.patterns)if(o.pattern.source.length>r)throw new Error(`keywordFlagExtractor: pattern "${o.label}" literal exceeds maxPatternLength (${o.pattern.source.length} > ${r}); raise the option or shorten the pattern.`);let n=e.patterns.map(o=>({label:o.label,pattern:o.pattern,compiled:new RegExp(o.pattern.source,`${o.pattern.flags.replace("g","")}g`)}));return v([t],([o],a)=>{if(o==null)return[];let s=o;"flags"in a.store||(a.store.flags=[],a.store.scannedTo=0);let i=a.store.flags,u=a.store.scannedTo,l=Math.max(0,u-r),d=s.slice(l),m=!1;for(let{pattern:p,label:c,compiled:g}of n){g.lastIndex=0;for(let y of d.matchAll(g)){let f=l+(y.index??0);f+y[0].length<=u||(i.push({label:c,pattern:p,match:y[0],position:f}),m=!0)}}return a.store.scannedTo=s.length,m?[...i]:i.slice()},{name:e.name??"keyword-flag-extractor",describeKind:"derived",initial:[],meta:L("keyword_flag_extractor"),equals:Er})}function Ir(t,e,r){return v([t],([n])=>n==null?null:e(n),{name:r?.name??"extractor",describeKind:"derived",initial:null,meta:L("stream_extractor"),...r?.equals?{equals:r.equals}:{}})}var Dr=(t,e)=>{if(t===e)return!0;if(t==null||e==null)return t===e;if(t.length!==e.length)return!1;for(let r=0;r<t.length;r++){let n=t[r],o=e[r];if(n.startIndex!==o.startIndex||n.name!==o.name||n.raw!==o.raw)return!1}return!0};function Pr(t,e){return v([t],([r],n)=>{if(r==null)return[];let o=r;"calls"in n.store||(n.store.calls=[],n.store.scanFrom=0);let a=n.store.calls,s=n.store.scanFrom,i=!1;for(;s<o.length;){let u=o.indexOf("{",s);if(u===-1){n.store.scanFrom=o.length;break}let l=0,d=-1,m=!1;for(let c=u;c<o.length;c++){let g=o[c];if(m)g==="\\"&&c+1<o.length?c++:g==='"'&&(m=!1);else if(g==='"')m=!0;else if(g==="{")l++;else if(g==="}"&&(l--,l===0)){d=c;break}}if(d===-1){n.store.scanFrom=u;break}let p=o.slice(u,d+1);try{let c=JSON.parse(p);typeof c.name=="string"&&c.arguments!=null&&typeof c.arguments=="object"&&(a.push({name:c.name,arguments:c.arguments,raw:p,startIndex:u}),i=!0)}catch{}s=d+1,n.store.scanFrom=s}return i?[...a]:a.slice()},{name:e?.name??"tool-call-extractor",describeKind:"derived",initial:[],meta:L("tool_call_extractor"),equals:Dr})}function _r(t,e,r,n){let o=r*(n?.hardMultiplier??1.5),a=typeof e!="function",s=[t];return a&&s.push(e),v(s,i=>{let u=i[0]??"";if(u.length===0)return"allow";let l=a?i[1]??0:e(u);return l>=o?"block":l>=r?"review":"allow"},{name:n?.name??"content-gate",initial:"allow"})}function jr(t,e,r,n){let o=r??(()=>"[REDACTED]");function a(s){let i=s;for(let u of e){let l=u.global?u:new RegExp(u.source,`${u.flags}g`);i=i.replace(l,d=>o(d,u))}return i}return v([t],([s])=>a(s??""),{name:n?.name??"redactor",initial:""})}var Ie=class extends ae{_log;messages;latest;messageCount;constructor(e,r={}){super(e,r.graph),this._log=pe([],{name:"messages",maxSize:r.maxMessages}),this.messages=this._log.entries,this.add(this.messages,{name:"messages"}),this.latest=v([this.messages],([n])=>{let o=n;return o.length===0?null:o[o.length-1]},{name:"latest",describeKind:"derived",meta:L("chat_latest")}),this.add(this.latest,{name:"latest"}),this.addDisposer(j(this.latest)),this.messageCount=v([this.messages],([n])=>n.length,{name:"messageCount",describeKind:"derived",meta:L("chat_message_count"),initial:0}),this.add(this.messageCount,{name:"messageCount"}),this.addDisposer(j(this.messageCount))}append(e,r,n){this._log.append({role:e,content:r,...n})}appendToolResult(e,r){this._log.append({role:"tool",content:r,toolCallId:e})}clear(){this._log.clear()}allMessages(){return this.messages.cache}};function rt(t,e){return new Ie(t,e)}function Fr(t,e,r){let n=k(t),o=r?.condition!=null?k(r.condition):null,a=w(null,{name:r?.name?`${r.name}::null`:"handoff::null"});if(o==null)return $(n,i=>{if(i==null)return a;let u=w(i);return e(u)},{meta:X("handoff")});let s=v([n,o],([i,u])=>({v:i,open:u===!0}),{name:r?.name?`${r.name}::router`:"handoff::router",describeKind:"derived"});return $(s,({v:i,open:u})=>{if(i==null)return a;if(!u)return w(i);let l=w(i);return e(l)},{meta:X("handoff")})}function nt(t){let{toolCalls:e,tools:r}=t,n=t.retryCount??1,o=t.onError??"rescue",a=(s,i)=>{if(s===i)return!0;if(s.length!==i.length)return!1;for(let u=0;u<s.length;u++){let l=s[u],d=i[u];if(l?.id!==d?.id||l?.content!==d?.content)return!1}return!0};return $(e,s=>{if(s==null||s.length===0)throw new Error("toolExecution: received an empty tool-call batch as DATA \u2014 callers must upstream-filter empty batches (emit RESOLVED) so switchMap is only dispatched for non-empty batches.");let i=s.map(u=>Gr(u,r,n,o));return v(i,u=>u,{name:"toolExecution::batch",equals:a})})}function Gr(t,e,r,n){let o=pt(()=>e.executeReactive(t.name,t.arguments),{count:r}),a=v([o],([s])=>({id:t.id,content:typeof s=="string"?s:JSON.stringify(s)}));return n==="propagate"?a:ct(a,s=>({id:t.id,content:JSON.stringify({error:String(s)})}))}var De=class extends ae{definitions;schemas;_bundle;constructor(e,r={}){super(e,r.graph),this._bundle=xe({name:"definitions"}),this.definitions=this._bundle.entries,this.add(this.definitions,{name:"definitions"}),this.schemas=v([this.definitions],([n])=>[...(n??new Map).values()],{name:"schemas",describeKind:"derived",meta:L("tool_schemas"),initial:[]}),this.add(this.schemas,{name:"schemas"}),this.addDisposer(j(this.schemas))}register(e){this._bundle.set(e.name,e)}unregister(e){this._bundle.delete(e)}executeReactive(e,r){let n=this._bundle.get(e);if(!n)throw new Error(`toolRegistry: unknown tool "${e}"`);return Q(o=>{let a=new AbortController,s;try{let u=n.handler(r,{signal:a.signal});s=Br(u,a.signal)}catch(u){return o.down([[W,u]]),()=>{a.abort()}}let i=s.subscribe(u=>{o.down(u)});return()=>{a.abort(),i()}},{name:`executeReactive::${e}`,meta:L("tool_execute_reactive")})}getDefinition(e){return this._bundle.entries.cache?.get(e)}};function ot(t,e){return new De(t,e)}function Br(t,e){return Qe(t)?t:t!=null&&typeof t.then=="function"?je(t,{signal:e}):t!=null&&typeof t=="object"&&Symbol.asyncIterator in t?yt(t,{signal:e}):je(Promise.resolve(t),{signal:e})}function $r(t,e,r){let n=k(t),o=e.map(s=>k(s)),a=[n,...o];return v(a,s=>{let i=s[0]??[],u=s.slice(1);return i.filter(l=>{for(let d of u)if(d!=null&&!d(l))return!1;return!0})},{name:r?.name??"tool-selector",describeKind:"derived",meta:{...L("tool_selector"),...X("toolSelector")},equals:(s,i)=>{let u=s,l=i;if(u.length!==l.length)return!1;for(let d=0;d<u.length;d++)if(u[d]!==l[d])return!1;return!0}})}function Gt(t){let e=t.thresholds??{};return r=>{let n=t.scoreFn(r);for(let o of Object.keys(e)){let a=e[o];if(a===void 0)continue;let s=n[o];if((Number.isFinite(s)?s:Number.NEGATIVE_INFINITY)<a)return!1}return!0}}function Wr(t){let e={persistence:t.persistenceThreshold??.3,personalValue:t.personalValueThreshold??.3},r=Gt({scoreFn:t.scoreFn,thresholds:e});return t.requireStructured?n=>{if(!r(n))return!1;let o=t.scoreFn(n).structure;return Number.isFinite(o)&&o>0}:r}function at(t,e,r){let n=xt({dimension:r.dimension});t.add(n.entries,{name:"vectorIndex"});let a=re([e.store.entries],([s])=>{let i=s??new Map;for(let[u,l]of i){let d=r.embedFn(l);d&&n.upsert(u,d,l)}}).subscribe(()=>{});return t.addDisposer(a),{vectors:n,dispose:()=>a()}}function st(t,e,r,n){let o=n.mountPath??r,a=wt(`${r}-kg`);if(t.mount(o,a),!n.entityFn)return{kg:a,dispose:()=>{}};let s=n.entityFn,u=re([e.store.entries],([l])=>{let d=l??new Map;for(let[m,p]of d){let c=s(m,p);if(c){for(let g of c.entities??[])a.upsertEntity(g.id,g.value);for(let g of c.relations??[])a.link(g.from,g.to,g.relation,g.weight)}}}).subscribe(()=>{});return t.addDisposer(u),{kg:a,dispose:()=>u()}}function it(t,e,r){let n=r.decayRate??we,o=r.maxActive??1e3,a=r.archiveThreshold??.1,s=r.permanentFilter??(()=>!1),i=Rt("permanent",{ranked:!1});t.mount("permanent",i);let u=new Set,l=b=>u.has(b)?"permanent":(e.store.entries.cache??new Map).has(b)?"active":"archived",d=(b,N)=>{u.add(b),i.upsert(b,N)},m=new Map,p=e.store.entries,c=r.context?k(r.context):w(null),y=re([p,c],([b,N])=>{let A=b??new Map,C=H(),R=[],D=[];for(let[S,E]of A){if(m.has(S)||m.set(S,C),s(S,E)){D.push({key:S,value:E});continue}let O=r.score(E,N),F=m.get(S)??C,T=Number(C-F)/1e9;Mt(O,T,n)<a&&R.push(S)}for(let S of m.keys())A.has(S)||m.delete(S);for(let{key:S,value:E}of D)u.has(S)||d(S,E);let P=A.size-u.size;if(P>o){let S=[...A.entries()].filter(([O])=>!u.has(O)).map(([O,F])=>({key:O,score:r.score(F,N)})).sort((O,F)=>O.score-F.score),E=P-o;for(let O=0;O<E&&O<S.length;O++){let F=S[O].key;R.includes(F)||R.push(F)}}R.length>0&&J(()=>{for(let S of R)e.store.delete(S)})}).subscribe(()=>{}),f=null;r.archiveTier&&(f=t.attachSnapshotStorage([r.archiveTier],r.archiveStorageOptions??{}));let h=()=>{y(),f?.dispose()};return t.addDisposer(h),{tiers:{permanent:i,activeEntries:p,archiveHandle:f,tierOf:l,markPermanent:d},dispose:h}}function Kr(t,e){if(!t||!e)return 0;let r=Math.min(t.length,e.length),n=0;for(;n<r&&t[n]===e[n];)n++;return n}function lt(t,e,r,n,o){let a=o.topK??20,s=o.graphDepth??1,i=o.budget??2e3,u=o.contextWeight??0,l=o.context?k(o.context):w(null),d=(f,h,b)=>{let N=new Map,A=[];if(r&&b.vector){let E=b.vector,O=r.entries.cache;if(O&&O.size>0&&a>0){A=[...O.values()].map(T=>({id:T.id,score:kt(E,T.vector),...T.meta!==void 0?{meta:T.meta}:{}})).sort((T,I)=>I.score-T.score).slice(0,a);for(let T of A){let I=f.get(T.id);I&&N.set(T.id,{value:I,sources:new Set(["vector"])})}}}let C=[];if(n){let E=n.adjacencyOut.cache,O=n.adjacencyIn.cache,F=[...b.entityIds??[],...N.keys()],T=new Set,I=F;for(let _=0;_<s;_++){let K=[];for(let te of I){if(T.has(te))continue;T.add(te);let ie=E?.get(te)??[],ue=O?.get(te)??[];for(let me of ie){let x=me.to;if(!T.has(x)){K.push(x);let M=f.get(x);if(M){let B=N.get(x);B?B.sources.add("graph"):N.set(x,{value:M,sources:new Set(["graph"])}),C.push(x)}}}for(let me of ue){let x=me.from;if(!T.has(x)){K.push(x);let M=f.get(x);if(M){let B=N.get(x);B?B.sources.add("graph"):N.set(x,{value:M,sources:new Set(["graph"])}),C.push(x)}}}}I=K}}for(let[E,O]of f)N.has(E)||N.set(E,{value:O,sources:new Set(["store"])});let R=b.context?.length??0,D=[];for(let[E,{value:O,sources:F}]of N){let T=o.contextOf?o.contextOf(O):void 0,I=o.score(O,h);if(u>0&&R>0){let K=Kr(b.context,T);K>0&&(I=I*(1+u*K/R))}let _=T?{key:E,value:O,score:I,sources:[...F],context:T}:{key:E,value:O,score:I,sources:[...F]};D.push(_)}D.sort((E,O)=>O.score-E.score);let P=[],S=0;for(let E of D){let O=o.cost(E.value);if(S+O>i&&P.length>0)break;P.push(E),S+=O}return{packed:P,trace:{vectorCandidates:A,graphExpanded:C,ranked:D,packed:P}}},m=(f,h)=>{if(f===h)return!0;if(f.length!==h.length)return!1;for(let b=0;b<f.length;b++)if(f[b]!==h[b])return!1;return!0},p=w([],{name:"retrieval",describeKind:"state",meta:L("retrieval_pipeline"),equals:m});t.add(p,{name:"retrieval"});let c=w(null,{name:"retrievalTrace",describeKind:"state",meta:L("retrieval_trace")});return t.add(c,{name:"retrievalTrace"}),{retrieval:p,retrievalTrace:c,retrieve:f=>{let h=e.store.entries.cache??new Map,{packed:b,trace:N}=d(h,l.cache,f);return J(()=>{p.emit(b),c.emit(N)}),b},retrieveReactive:f=>{let h=k(f),b=v([e.store.entries,l,h],([C,R,D])=>{if(D==null)return{packed:[],trace:null};let P=C??new Map,{packed:S,trace:E}=d(P,R,D);return{packed:S,trace:E}},{name:"retrievalReactive::result",describeKind:"derived",meta:L("retrieval_reactive_result"),initial:{packed:[],trace:null}}),A=re([b],([C])=>{let R=C;J(()=>{p.emit(R.packed),R.trace&&c.emit(R.trace)})}).subscribe(()=>{});return t.addDisposer(A),v([b],([C])=>C.packed,{name:"retrievalReactive",describeKind:"derived",meta:L("retrieval_reactive"),initial:[],equals:m})}}}var Pe=class extends ae{chat;tools;status;turn;aborted;lastResponse;toolCalls;toolResults;_terminalResult;_disposeRunWiring;_running=!1;_currentAbortController=null;constructor(e,r){if(super(e,r.graph),this.chat=rt(`${e}-chat`,{maxMessages:r.maxMessages}),this.mount("chat",this.chat),this.tools=ot(`${e}-tools`),this.mount("tools",this.tools),r.tools)for(let x of r.tools)this.tools.register(x);this.status=w("idle",{name:"status",describeKind:"state",meta:L("agent_status")}),this.add(this.status,{name:"status"}),this.turn=w(0,{name:"turn",describeKind:"state",meta:L("agent_turn_count")}),this.add(this.turn,{name:"turn"}),this.aborted=w(!1,{name:"aborted",describeKind:"state",meta:L("agent_aborted")}),this.add(this.aborted,{name:"aborted"});let n=0,o=this.turn.subscribe(x=>{for(let M of x)M[0]===G&&(n=M[1])}),a=!1,s=this.aborted.subscribe(x=>{for(let M of x)M[0]===G&&(a=M[1])}),i=this.chat.messages.cache??[],u=this.chat.messages.subscribe(x=>{for(let M of x)M[0]===G&&(i=M[1])}),l=this.tools.schemas.cache??[],d=this.tools.schemas.subscribe(x=>{for(let M of x)M[0]===G&&(l=M[1])}),m=r.adapter,p=r.systemPrompt,c=r.model,g=r.temperature,y=r.maxTokens,f=r.maxTurns??10,h=r.stopWhen,b=this.chat,N=this.tools,A=this.status,C=this.turn,R=this.aborted,D=le([A],(x,M,B)=>{if(ve(x,B.prevData,0,"idle")!=="thinking"||a||n>=f){M.down([[ce]]);return}if(i.length===0){M.down([[ce]]);return}M.emit({messages:i,tools:l})},{name:"promptInput",describeKind:"derived",meta:L("agent_prompt_input",{closureReads:["aborted","turn","chat.messages","tools.schemas"]})}),P=$(D,x=>{let M=new AbortController;return this._currentAbortController=M,a&&M.abort(new Error("agentLoop: aborted")),k(m.invoke(x.messages,{tools:x.tools.length>0?x.tools:void 0,systemPrompt:p,model:c,temperature:g,maxTokens:y,signal:M.signal}),{signal:M.signal})},{equals:()=>!1}),S=w(null,{name:"lastResponse",describeKind:"state",meta:L("agent_last_response")});this.lastResponse=S;let E=le([S,A],(x,M,B)=>{let Y=ve(x,B.prevData,0,null);if(ve(x,B.prevData,1,"idle")!=="acting"){M.down([[ce]]);return}let oe=Y?.toolCalls;if(oe==null||oe.length===0){M.down([[ce]]);return}M.emit(oe)},{name:"toolCallsRaw",describeKind:"derived",meta:L("agent_tool_calls_raw")}),O=r.interceptToolCalls?r.interceptToolCalls(E):E;this.toolCalls=O;let F=nt({toolCalls:O,tools:N,retryCount:1});this.toolResults=F;let T=re([P],([x])=>{if(a)return;let M=x,B=n+1,Y=M.toolCalls!=null&&M.toolCalls.length>0,he=M.finishReason==="end_turn"&&(!M.toolCalls||M.toolCalls.length===0),oe=h?.(M)===!0,Vt=B>=f,Ut=oe||he||!Y||Vt?"done":"acting";J(()=>{S.emit(M),A.emit(Ut),C.emit(B),b.append("assistant",M.content,{toolCalls:M.toolCalls})})}),I=re([F],([x])=>{if(a)return;let M=x;if(M.length===0)return;let B=n>=f?"done":"thinking";J(()=>{A.emit(B);for(let Y of M)b.appendToolResult(Y.id,Y.content)})}),_=A.cache??"idle",K=A.subscribe(x=>{for(let M of x)M[0]===G&&(_=M[1])}),te=re([R],([x])=>{x===!0&&(this._currentAbortController?.abort(new Error("agentLoop: aborted")),_!=="done"&&A.emit("done"))}),ie=j(T),ue=j(I),me=j(te);this._terminalResult=le([A,S],(x,M,B)=>{let Y=ve(x,B.prevData,0,"idle"),he=ve(x,B.prevData,1,null);if(Y==="done"){if(he!=null){M.emit(he);return}let oe=new Error("agentLoop: aborted");oe.name="AbortError",M.down([[W,oe]]);return}if(Y==="error"){M.down([[W,new Error("agentLoop: errored")]]);return}M.down([[ce]])},{name:"terminalResult",describeKind:"derived",meta:L("agent_terminal_result")}),this.add(D,{name:"promptInput"}),this.add(P,{name:"llmResponse"}),this.add(this.lastResponse,{name:"lastResponse"}),this.toolCalls===E?this.add(this.toolCalls,{name:"toolCalls"}):(this.add(E,{name:"toolCallsRaw"}),this.add(this.toolCalls,{name:"toolCalls"})),this.add(F,{name:"toolResults"}),this.add(this._terminalResult,{name:"terminalResult"}),this.addDisposer(o),this.addDisposer(s),this.addDisposer(K),this.addDisposer(u),this.addDisposer(d),this.addDisposer(ie),this.addDisposer(ue),this.addDisposer(me),this._disposeRunWiring=()=>{}}async run(e,r){if(this._running)throw new RangeError(`agentLoop "${this.name}": run() called while a previous run() is still pending \u2014 await the previous run before starting another, or call abort() first`);this._running=!0;let n;try{J(()=>{this.turn.emit(0),this.aborted.emit(!1),this.status.emit("idle"),this.lastResponse.emit(null)}),e!=null&&this.chat.append("user",e);let o=ht(this._terminalResult,{skipCurrent:!0});if(r!=null)if(r.aborted)this.aborted.emit(!0);else{let a=()=>this.aborted.emit(!0);r.addEventListener("abort",a,{once:!0}),n=()=>r.removeEventListener("abort",a)}return r?.aborted!==!0&&this.status.emit("thinking"),await o}finally{n?.(),this._running=!1,this._currentAbortController=null}}abort(){this.aborted.emit(!0)}destroy(){try{this._disposeRunWiring()}catch{}super.destroy()}};function ve(t,e,r,n){let o=t[r];if(o!=null&&o.length>0)return o[o.length-1];let a=e[r];return a!==void 0?a:n}function Vr(t,e){let r=new Pe(t,e);return r.tagFactory("agentLoop",ke(e)),r}function Ur(t,e,r){let n=new ae(t,r.graph);n.tagFactory("agentMemory",ke(r));let o;if(r.extractFn)o=r.extractFn;else if(r.adapter&&r.extractPrompt)o=et(r.extractPrompt,{adapter:r.adapter});else throw new Error("agentMemory: provide either extractFn or adapter + extractPrompt");let a=(b,N)=>{let A=N.cache??new Map,C=N.subscribe(R=>{for(let D of R)D[0]===G&&(A=D[1])});return n.addDisposer(C),$(b,R=>R==null?{upsert:[]}:o(R,A))},s=e;if(r.admissionFilter){let b=k(e),N=r.admissionFilter;s=v([b],([A])=>{if(N(A))return A},{name:"admissionFilter",describeKind:"derived"})}let i;r.consolidateFn?i=r.consolidateFn:r.adapter&&r.consolidatePrompt&&(i=tt(r.consolidatePrompt,{adapter:r.adapter}));let u=r.consolidateTrigger;if(!u&&i&&r.reflection?.enabled!==!1){let b=r.reflection?.interval??3e5;u=gt(b,{period:b})}let l={score:r.score,cost:r.cost,budget:r.budget??2e3,context:r.context,consolidate:i,consolidateTrigger:u},d=Tt(s,a,l);n.add(d.store.entries,{name:"store"}),n.add(d.compact,{name:"compact"}),n.add(d.size,{name:"size"});let m=null;r.vectorDimensions&&r.vectorDimensions>0&&r.embedFn&&(m=at(n,d,{dimension:r.vectorDimensions,embedFn:r.embedFn}).vectors);let p=null;r.enableKnowledgeGraph&&(p=st(n,d,t,{mountPath:"kg",entityFn:r.entityFn}).kg);let c=null;r.tiers&&(c=it(n,d,{...r.tiers,score:r.score,context:r.context}).tiers);let g=null,y=null,f=null,h=null;if(m||p){let b=lt(n,d,m,p,{score:r.score,cost:r.cost,budget:r.budget,topK:r.retrieval?.topK,graphDepth:r.retrieval?.graphDepth,contextOf:r.contextOf,contextWeight:r.contextWeight,context:r.context});g=b.retrieval,y=b.retrievalTrace,f=b.retrieve,h=b.retrieveReactive}return Object.assign(n,{distillBundle:d,compact:d.compact,size:d.size,vectors:m,kg:p,memoryTiers:c,retrieval:g,retrievalTrace:y,retrieve:f,retrieveReactive:h})}function qr(t,e,r){let n=t.describe({actor:e,detail:"full"}),o=r?.groupByTags??!0,a=r?.separator??`
5
- `,s=[],i=r?.sinceVersion;for(let[u,l]of Object.entries(n.nodes)){let d=l.meta??{},m=d.description,p=d.format;if(!m&&!p)continue;if(i!=null&&l.v!=null){let h=i.get(u);if(h!=null&&h.id===l.v.id&&l.v.version<=h.version)continue}let c=m??u,g=l.value,y=d.unit,f;p==="currency"&&typeof g=="number"?f=`$${g.toFixed(2)}`:p==="percentage"&&typeof g=="number"?f=`${(g*100).toFixed(1)}%`:g==null?f="(no value)":f=String(g),y&&p!=="currency"&&p!=="percentage"&&(f=`${f} ${y}`),s.push({path:u,description:c,formatted:f})}if(s.length===0)return"";if(o){let u=new Map,l=[];for(let m of s){let c=n.nodes[m.path].meta?.tags;if(c&&c.length>0){let g=c[0],y=u.get(g);y||(y=[],u.set(g,y)),y.push(m)}else l.push(m)}if(u.size===0)return s.map(m=>`- ${m.description}: ${m.formatted}`).join(a);let d=[];for(let[m,p]of[...u.entries()].sort((c,g)=>c[0].localeCompare(g[0])))d.push(`[${m}]${a}${p.map(c=>`- ${c.description}: ${c.formatted}`).join(a)}`);return l.length>0&&d.push(l.map(m=>`- ${m.description}: ${m.formatted}`).join(a)),d.join(a+a)}return s.map(u=>`- ${u.description}: ${u.formatted}`).join(a)}var Bt=`You are a graph architect for GraphReFly, a reactive graph protocol.
6
-
7
- Given a natural-language description, produce a JSON graph specification with this structure:
8
-
9
- {
10
- "name": "<graph_name>",
11
- "nodes": {
12
- "<node_name>": {
13
- "type": "state" | "derived" | "producer" | "effect" | "operator",
14
- "initial": <initial_value_for_state_nodes>,
15
- "deps": ["<dep_node_name>", ...],
16
- "meta": {
17
- "description": "<human-readable purpose>",
18
- "type": "string" | "number" | "boolean" | "integer" | "enum",
19
- "range": [min, max],
20
- "values": ["a", "b"],
21
- "format": "currency" | "percentage" | "status",
22
- "access": "human" | "llm" | "both" | "system",
23
- "unit": "<unit>",
24
- "tags": ["<tag>"]
25
- }
26
- }
27
- }
28
- }
29
-
30
- Rules:
31
- - "state" nodes have no deps and hold user/LLM-writable values (knobs). Use "initial" for the starting value.
32
- - "derived" nodes have deps and compute from them (pure, no side effects).
33
- - "effect" nodes have deps but produce side effects (no return value).
34
- - "producer" nodes have no deps but generate values asynchronously.
35
- - "operator" nodes are parameterized transformations with deps.
36
- - Use "deps" inside each node to declare dependencies \u2014 no separate "edges" array.
37
- - meta.description is required for every node.
38
- - Return ONLY valid JSON, no markdown fences or commentary.`;async function $t(t,e,r){let o=[{role:"system",content:r?.systemPromptExtra?`${Bt}
39
-
40
- ${r.systemPromptExtra}`:Bt},{role:"user",content:t}],a=e.invoke(o,{model:r?.model,temperature:r?.temperature??0,maxTokens:r?.maxTokens,signal:r?.signal}),i=(await Me(a)).content.trim();i.startsWith("```")&&(i=ye(i));let u;try{u=JSON.parse(i)}catch{throw new Error(`graphFromSpec: LLM response is not valid JSON: ${i.slice(0,200)}`)}return Lt(u,{catalog:r?.catalog})}function Hr(t,e,r){let n=k(t);return $(n,o=>!o||typeof o!="string"||o.trim().length===0?w(null):Q(a=>{let s=new AbortController,i=!1;return $t(o,e,{...r,signal:s.signal}).then(u=>{if(i){u.destroy();return}a.emit(u),a.down([[q]])}).catch(u=>{i||a.down([[W,u]])}),()=>{i=!0,s.abort()}},{name:"graphFromSpec::call"}))}function zr(t){let e={},r=t.type;return r==="enum"&&Array.isArray(t.values)?(e.type="string",e.enum=t.values):r==="integer"?e.type="integer":r==="number"?e.type="number":r==="boolean"?e.type="boolean":r==="string"?e.type="string":e.type=["string","number","boolean"],Array.isArray(t.range)&&t.range.length===2&&(e.minimum=t.range[0],e.maximum=t.range[1]),typeof t.format=="string"&&(e.description=`Format: ${t.format}`),typeof t.unit=="string"&&(e.description?e.description+=` (${t.unit})`:e.description=`Unit: ${t.unit}`),e}function Yr(t,e){let r=t.describe({actor:e,detail:"full"}),n=[],o=[],a=[];for(let[s,i]of Object.entries(r.nodes)){if(i.type!=="state"||s.includes("::__meta__::")||i.status==="completed"||i.status==="errored")continue;let u=i.meta??{},l=u.access;if(l==="human"||l==="system")continue;let d=u.description??`Set the value of ${s}`,m=zr(u),p={type:"object",required:["value"],properties:{value:m},additionalProperties:!1},c=s.replace(/::/g,"__");n.push({type:"function",function:{name:c,description:d,parameters:p}}),o.push({name:s,description:d,inputSchema:p});let g=t,y=e,f=i.v;a.push({name:s,description:d,parameters:p,handler(h){return g.set(s,h.value,y?{actor:y}:void 0),h.value},...f!=null?{version:{id:f.id,version:f.version}}:{}})}return{openai:n,mcp:o,definitions:a}}var Jr=`You are a reactive graph optimizer for GraphReFly.
41
-
42
- Given a graph's current structure (from describe()) and a problem statement, suggest topology and parameter changes to solve the problem.
43
-
44
- Return ONLY valid JSON with this structure:
45
- {
46
- "summary": "<one-line summary of the strategy>",
47
- "reasoning": "<explanation of why these changes help>",
48
- "operations": [
49
- { "type": "add_node", "name": "<name>", "nodeType": "state|derived|effect|producer|operator", "meta": {...}, "initial": <value> },
50
- { "type": "remove_node", "name": "<name>" },
51
- { "type": "connect", "from": "<source>", "to": "<target>" },
52
- { "type": "disconnect", "from": "<source>", "to": "<target>" },
53
- { "type": "set_value", "name": "<name>", "value": <new_value> },
54
- { "type": "update_meta", "name": "<name>", "key": "<meta_key>", "value": <new_value> }
55
- ]
56
- }
57
-
58
- Rules:
59
- - Only suggest operations that reference existing nodes (for remove/disconnect/set_value/update_meta) or new nodes you define (for add_node).
60
- - Keep changes minimal \u2014 prefer the smallest set of operations that solves the problem.
61
- - Return ONLY valid JSON, no markdown fences or commentary.`;async function Wt(t,e,r,n){let{expand:o,...a}=t.describe({actor:n?.actor,detail:"standard"}),s=[{role:"system",content:Jr},{role:"user",content:JSON.stringify({graph:a,problem:e})}],i=r.invoke(s,{model:n?.model,temperature:n?.temperature??0,maxTokens:n?.maxTokens,signal:n?.signal}),l=(await Me(i)).content.trim();l.startsWith("```")&&(l=l.replace(/^```(?:json)?\s*/,"").replace(/\s*```$/,""));let d;try{d=JSON.parse(l)}catch{throw new Error(`suggestStrategy: LLM response is not valid JSON: ${l.slice(0,200)}`)}let m=d;if(typeof m.summary!="string")throw new Error("suggestStrategy: missing 'summary' in response");if(typeof m.reasoning!="string")throw new Error("suggestStrategy: missing 'reasoning' in response");if(!Array.isArray(m.operations))throw new Error("suggestStrategy: missing 'operations' array in response");return{summary:m.summary,reasoning:m.reasoning,operations:m.operations}}function Qr(t,e,r,n){let o=k(e),a=mt(o,t);return $(a,s=>{if(s==null)return w(null);let[i,u]=s;return!u||!i||typeof i!="string"||i.trim().length===0?w(null):u.destroyed?w(null):Q(l=>{let d=new AbortController,m=!1;return Wt(u,i,r,{...n,signal:d.signal}).then(p=>{m||(l.emit(p),l.down([[q]]))}).catch(p=>{m||l.down([[W,p]])}),()=>{m=!0,d.abort()}},{name:"suggestStrategy::call"})})}var Kt=new Set(["state","derived","producer","operator","effect"]);function Xr(t){let e=[];if(t==null||typeof t!="object")return{valid:!1,errors:["Definition must be a non-null object"]};let r=t;if((typeof r.name!="string"||r.name.length===0)&&e.push("Missing or empty 'name' field"),r.nodes==null||typeof r.nodes!="object"||Array.isArray(r.nodes))return e.push("Missing or invalid 'nodes' field (must be an object)"),{valid:!1,errors:e};let n=new Set(Object.keys(r.nodes));for(let[o,a]of Object.entries(r.nodes)){if(a==null||typeof a!="object"){e.push(`Node "${o}": must be an object`);continue}let s=a;if((typeof s.type!="string"||!Kt.has(s.type))&&e.push(`Node "${o}": invalid type "${String(s.type)}" (expected: ${[...Kt].join(", ")})`),Array.isArray(s.deps))for(let i of s.deps)typeof i=="string"&&!n.has(i)&&e.push(`Node "${o}": dep "${i}" does not reference an existing node`)}if(!Array.isArray(r.edges))r.edges!==void 0&&e.push("'edges' must be an array");else{let o=new Set;for(let a=0;a<r.edges.length;a++){let s=r.edges[a];if(s==null||typeof s!="object"){e.push(`Edge [${a}]: must be an object`);continue}let i=s;(typeof i.from!="string"||!n.has(i.from))&&e.push(`Edge [${a}]: 'from' "${String(i.from)}" does not reference an existing node`),(typeof i.to!="string"||!n.has(i.to))&&e.push(`Edge [${a}]: 'to' "${String(i.to)}" does not reference an existing node`);let u=`${i.from}->${i.to}`;o.has(u)&&e.push(`Edge [${a}]: duplicate edge ${u}`),o.add(u)}}return{valid:e.length===0,errors:e}}export{nr as a,or as b,Ae as c,We as d,sr as e,ir as f,lr as g,dr as h,Ke as i,Ce as j,Ue as k,mr as l,qe as m,ze as n,Ye as o,ge as p,Je as q,Mr as r,ye as s,co as t,xr as u,Xe as v,Ze as w,et as x,tt as y,Lr as z,Nr as A,Ar as B,Sr as C,Or as D,Ir as E,Pr as F,_r as G,jr as H,Ie as I,rt as J,Fr as K,nt as L,De as M,ot as N,$r as O,Gt as P,Wr as Q,at as R,st as S,it as T,lt as U,Pe as V,Vr as W,Ur as X,qr as Y,$t as Z,Hr as _,Yr as $,Wt as aa,Qr as ba,Xr as ca,Zr as da};
@@ -1 +0,0 @@
1
- var F=Object.create;var p=Object.defineProperty;var G=Object.getOwnPropertyDescriptor;var C=(a,b)=>(b=Symbol[a])?b:Symbol.for("Symbol."+a),o=a=>{throw TypeError(a)};var H=(a,b,c)=>b in a?p(a,b,{enumerable:!0,configurable:!0,writable:!0,value:c}):a[b]=c;var z=(a,b)=>p(a,"name",{value:b,configurable:!0}),M=(a=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(a,{get:(b,c)=>(typeof require<"u"?require:b)[c]}):a)(function(a){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+a+'" is not supported')});var N=(a,b)=>{for(var c in b)p(a,c,{get:b[c],enumerable:!0})};var O=a=>[,,,F(a?.[C("metadata")]??null)],D=["class","method","getter","setter","accessor","field","value","get","set"],n=a=>a!==void 0&&typeof a!="function"?o("Function expected"):a,I=(a,b,c,i,e)=>({kind:D[a],name:b,metadata:i,addInitializer:f=>c._?o("Already initialized"):e.push(n(f||null))}),J=(a,b)=>H(b,C("metadata"),a[3]),P=(a,b,c,i)=>{for(var e=0,f=a[b>>1],l=f&&f.length;e<l;e++)b&1?f[e].call(c):i=f[e].call(c,i);return i},Q=(a,b,c,i,e,f)=>{var l,h,w,m,q,d=b&7,r=!!(b&8),k=!!(b&16),s=d>3?a.length+1:d?r?1:2:0,x=D[d+5],y=d>3&&(a[s-1]=[]),E=a[s]||(a[s]=[]),j=d&&(!k&&!r&&(e=e.prototype),d<5&&(d>3||!k)&&G(d<4?e:{get[c](){return A(this,f)},set[c](g){return B(this,f,g)}},c));d?k&&d<4&&z(f,(d>2?"set ":d>1?"get ":"")+c):z(e,c);for(var t=i.length-1;t>=0;t--)m=I(d,c,w={},a[3],E),d&&(m.static=r,m.private=k,q=m.access={has:k?g=>K(e,g):g=>c in g},d^3&&(q.get=k?g=>(d^1?A:L)(g,e,d^4?f:j.get):g=>g[c]),d>2&&(q.set=k?(g,u)=>B(g,e,u,d^4?f:j.set):(g,u)=>g[c]=u)),h=(0,i[t])(d?d<4?k?f:j[x]:d>4?void 0:{get:j.get,set:j.set}:e,m),w._=1,d^4||h===void 0?n(h)&&(d>4?y.unshift(h):d?k?f=h:j[x]=h:e=h):typeof h!="object"||h===null?o("Object expected"):(n(l=h.get)&&(j.get=l),n(l=h.set)&&(j.set=l),n(l=h.init)&&y.unshift(l));return d||J(a,e),j&&p(e,c,j),k?d^4?f:j:e};var v=(a,b,c)=>b.has(a)||o("Cannot "+c),K=(a,b)=>Object(b)!==b?o('Cannot use the "in" operator on this value'):a.has(b),A=(a,b,c)=>(v(a,b,"read from private field"),c?c.call(a):b.get(a));var B=(a,b,c,i)=>(v(a,b,"write to private field"),i?i.call(a,c):b.set(a,c),c),L=(a,b,c)=>(v(a,b,"access private method"),c);export{M as a,N as b,O as c,P as d,Q as e};
@@ -1 +0,0 @@
1
- import{a as O,b as H,c as j,d as E,e as W,f as ne}from"./chunk-OCKEEPRJ.js";import{a as N}from"./chunk-D27JNOLZ.js";import{a as X}from"./chunk-C72GO4IZ.js";import{j as T}from"./chunk-626TESAC.js";import{D as I,E as y,G as L,o as S}from"./chunk-LYCLF26R.js";import{b as te}from"./chunk-QYADASLV.js";var ie={};te(ie,{CanvasMeasureAdapter:()=>$,CliMeasureAdapter:()=>D,ImageSizeAdapter:()=>J,NodeCanvasMeasureAdapter:()=>q,PrecomputedAdapter:()=>V,SvgBoundsAdapter:()=>z,analyzeAndMeasure:()=>O,carveTextLineSlots:()=>E,circleIntervalForBand:()=>Q,computeBlockFlow:()=>_,computeCharPositions:()=>W,computeFlowLines:()=>ee,computeLineBreaks:()=>H,computeTotalHeight:()=>U,layoutNextLine:()=>j,measureBlock:()=>Y,measureBlocks:()=>K,reactiveBlockLayout:()=>re,reactiveFlowLayout:()=>se,reactiveLayout:()=>ne,rectIntervalForBand:()=>Z});var D=class{cellPx;constructor(t){this.cellPx=t?.cellPx??8}measureSegment(t,n){return{width:X(t)*this.cellPx}}},G=class extends Error{name="KeyError"},V=class{metrics;fallback;constructor(t){this.metrics=t.metrics;let n=t.fallback??"per-char";if(n!=="per-char"&&n!=="error")throw new Error(`fallback must be 'per-char' or 'error', got ${JSON.stringify(t.fallback)}`);this.fallback=n}measureSegment(t,n){let i=this.metrics[n];if(i){let o=i[t];if(o!==void 0)return{width:o}}if(this.fallback==="error")throw new G(`PrecomputedAdapter: no metrics for segment ${JSON.stringify(t)} in font ${JSON.stringify(n)}`);let r=0;if(i)for(let o of t){let l=i[o];l!==void 0&&(r+=l)}return{width:r}}},$=class{ctx=null;currentFont="";emojiCorrection;constructor(t){this.emojiCorrection=t?.emojiCorrection??1}getContext(){if(!this.ctx){if(typeof OffscreenCanvas>"u")throw new Error("CanvasMeasureAdapter requires a browser environment with OffscreenCanvas support. Use CliMeasureAdapter or NodeCanvasMeasureAdapter for Node.js.");let n=new OffscreenCanvas(0,0).getContext("2d");if(!n)throw new Error("CanvasMeasureAdapter: failed to get 2d context");this.ctx=n}return this.ctx}measureSegment(t,n){let i=this.getContext();n!==this.currentFont&&(i.font=n,this.currentFont=n);let r=i.measureText(t).width;return this.emojiCorrection!==1&&new RegExp("\\p{Emoji_Presentation}","u").test(t)&&(r*=this.emojiCorrection),{width:r}}clearCache(){this.currentFont=""}},q=class{ctx=null;currentFont="";canvasModule;constructor(t){this.canvasModule=t}getContext(){if(!this.ctx){let n=this.canvasModule.createCanvas(0,0).getContext("2d");if(!n)throw new Error("NodeCanvasMeasureAdapter: failed to get 2d context");this.ctx=n}return this.ctx}measureSegment(t,n){let i=this.getContext();return n!==this.currentFont&&(i.font=n,this.currentFont=n),{width:i.measureText(t).width}}clearCache(){this.currentFont=""}},z=class{measureSvg(t){let n=t.match(/viewBox\s*=\s*["']([^"']+)["']/);if(n){let o=n[1].trim().split(/[\s,]+/);if(o.length>=4){let l=Number.parseFloat(o[2]),a=Number.parseFloat(o[3]);if(Number.isFinite(l)&&Number.isFinite(a)&&l>0&&a>0)return{width:l,height:a};throw new Error("SvgBoundsAdapter: viewBox width/height are missing, non-finite, or not positive")}}let i=t.match(/<svg[^>]*\bwidth\s*=\s*["']?([\d.]+)/),r=t.match(/<svg[^>]*\bheight\s*=\s*["']?([\d.]+)/);if(i&&r){let o=Number.parseFloat(i[1]),l=Number.parseFloat(r[1]);if(Number.isFinite(o)&&Number.isFinite(l)&&o>0&&l>0)return{width:o,height:l};throw new Error("SvgBoundsAdapter: svg width/height attributes are non-finite or not positive")}throw new Error("SvgBoundsAdapter: cannot determine dimensions \u2014 SVG has no viewBox or width/height attributes")}},J=class{sizes;constructor(t){this.sizes=new Map(Object.entries(t))}measureImage(t){let n=this.sizes.get(t);if(!n)throw new Error(`ImageSizeAdapter: no dimensions registered for ${JSON.stringify(t)}`);return{width:n.width,height:n.height}}};function Y(e,t,n,i,r,o,l){switch(e.type){case"text":{let a=e.font??r,m=e.lineHeight??o,d=O(e.text,a,n.text,i),w=H(d,t,n.text,a,i),v=W(w,d,m),B=w.lineCount*m,c=0;for(let x of w.lines)x.width>c&&(c=x.width);return{index:l,type:"text",width:Math.min(c,t),height:B,textSegments:d,textLineBreaks:w,textCharPositions:v}}case"image":{let a,m;if(e.naturalWidth!=null&&e.naturalHeight!=null)a=e.naturalWidth,m=e.naturalHeight;else if(n.image){let d=n.image.measureImage(e.src);a=d.width,m=d.height}else throw new Error(`Image block at index ${l} has no naturalWidth/naturalHeight and no ImageMeasurer adapter`);return a>t&&(m=m*t/a,a=t),{index:l,type:"image",width:a,height:m}}case"svg":{let a,m;if(e.viewBox)a=e.viewBox.width,m=e.viewBox.height;else if(n.svg){let d=n.svg.measureSvg(e.content);a=d.width,m=d.height}else throw new Error(`SVG block at index ${l} has no viewBox and no SvgMeasurer adapter`);return a>t&&(m=m*t/a,a=t),{index:l,type:"svg",width:a,height:m}}}}function K(e,t,n,i,r,o){return e.map((l,a)=>Y(l,t,n,i,r,o,a))}function _(e,t){let n=[],i=0;for(let r=0;r<e.length;r++){let o=e[r];n.push({...o,x:0,y:i}),i+=o.height+(r<e.length-1?t:0)}return n}function U(e){if(e.length===0)return 0;let t=e[e.length-1];return t.y+t.height}function re(e){let{adapters:t,name:n="reactive-block-layout",defaultFont:i="16px sans-serif",defaultLineHeight:r=20}=e,o=new T(n),l=new Map,a=y(e.blocks??[],{name:"blocks"}),m=y(Math.max(0,e.maxWidth??800),{name:"max-width"}),d=y(e.gap??0,{name:"gap"}),w=I([a,m],(c,x,s)=>{let p=c[0]!=null&&c[0].length>0?c[0].at(-1):s.prevData[0],h=c[1]!=null&&c[1].length>0?c[1].at(-1):s.prevData[1],g=S(),u=K(p,h,t,l,i,r),f=S()-g,b=w.meta;b&&(N(b["block-count"],u.length),N(b["layout-time-ns"],f)),x.emit(u);let C=()=>{l.clear(),t.text.clearCache?.()};return{deactivate:C,invalidate:C}},{name:"measured-blocks",describeKind:"derived",meta:{"block-count":0,"layout-time-ns":0},equals:(c,x)=>{let s=c,p=x;if(s==null||p==null)return s===p;if(s.length!==p.length)return!1;for(let h=0;h<s.length;h++){let g=s[h],u=p[h];if(g.type!==u.type||g.width!==u.width||g.height!==u.height||g.index!==u.index)return!1}return!0}}),v=L([w,d],([c,x])=>_(c,x),{name:"block-flow",equals:(c,x)=>{let s=c,p=x;if(s==null||p==null)return s===p;if(s.length!==p.length)return!1;for(let h=0;h<s.length;h++){let g=s[h],u=p[h];if(g.x!==u.x||g.y!==u.y||g.width!==u.width||g.height!==u.height)return!1}return!0}}),B=L([v],([c])=>U(c),{name:"total-height"});return o.add(a,{name:"blocks"}),o.add(m,{name:"max-width"}),o.add(d,{name:"gap"}),o.add(w,{name:"measured-blocks"}),o.add(v,{name:"block-flow"}),o.add(B,{name:"total-height"}),{graph:o,setBlocks:c=>o.set("blocks",c),setMaxWidth:c=>o.set("max-width",Math.max(0,c)),setGap:c=>o.set("gap",c),measuredBlocks:w,blockFlow:v,totalHeight:B}}function Q(e,t,n){let i=e.hPad??0,r=e.vPad??0,o=t-r,l=n+r;if(o>=e.cy+e.r||l<=e.cy-e.r)return null;let a=e.cy>=o&&e.cy<=l?0:e.cy<o?o-e.cy:e.cy-l;if(a>=e.r)return null;let m=Math.sqrt(e.r*e.r-a*a);return{left:e.cx-m-i,right:e.cx+m+i}}function Z(e,t,n){let i=e.hPad??0,r=e.vPad??0;return n<=e.y-r||t>=e.y+e.h+r?null:{left:e.x-i,right:e.x+e.w+i}}function oe(e,t,n){return e.kind==="circle"?Q(e,t,n):Z(e,t,n)}function ee(e,t,n,i,r,o,l){let a=l?.paragraphSpacing??r,m=[],d={segmentIndex:0,graphemeIndex:0};if(e.length===0||n.count<=0||r<=0)return{lines:m,cursor:d};let w=t.paddingX??0,v=t.paddingY??0,B=Math.max(0,t.width-w*2),c=Math.max(0,t.height-v*2),x=n.gap*Math.max(0,n.count-1),s=Math.max(0,(B-x)/n.count);if(s<=0)return{lines:m,cursor:d};e:for(let p=0;p<n.count;p++){let h=w+p*(s+n.gap),g=h+s,u=v;for(;u+r<=v+c;){let f=u+r,b=[];for(let k=0;k<i.length;k++){let M=oe(i[k],u,f);M!==null&&b.push(M)}let C=E({left:h,right:g},b,o);if(C.length===0){u+=r;continue}let P=!1;for(let k=0;k<C.length;k++){let M=C[k],R=M.right-M.left,F=j(e,d,R);if(F===null)return{lines:m,cursor:d};if(F.text.length===0&&F.width===0){d=F.end,P=!0;break}m.push({x:M.left,y:u,width:F.width,slotWidth:R,text:F.text,columnIndex:p,flushToRight:M.right<g-.5}),d=F.end}if(P){u+=a;continue}if(u+=r,d.segmentIndex>=e.length)break e}if(d.segmentIndex>=e.length)break}return{lines:m,cursor:d}}function se(e){let{adapter:t,name:n="reactive-flow-layout",minSlotWidth:i=20}=e,r=new T(n),o=new Map,l=y(e.text??"",{name:"text"}),a=y(e.font??"16px sans-serif",{name:"font"}),m=y(e.lineHeight??20,{name:"line-height"}),d=y(e.container??{width:800,height:600,paddingX:0,paddingY:0},{name:"container"}),w=y(e.columns??{count:1,gap:0},{name:"columns"}),v=y(e.obstacles??[],{name:"obstacles"}),B=y(e.paragraphSpacing??null,{name:"paragraph-spacing"}),c=I([l,a],(s,p,h)=>{let g=s[0],u=g!=null&&g.length>0?g.at(-1):h.prevData[0],f=s[1],b=f!=null&&f.length>0?f.at(-1):h.prevData[1],C=O(u,b,t,o);p.emit(C);let P=()=>{o.clear(),t.clearCache?.()};return{deactivate:P,invalidate:P}},{name:"segments",describeKind:"derived"}),x=L([c,d,w,v,m,B],([s,p,h,g,u,f])=>{let b=s,C=S(),P=f??u,{lines:k,cursor:M}=ee(b,p,h,g,u,i,{paragraphSpacing:P}),R=S()-C,F=Math.max(0,b.length-M.segmentIndex),A=x.meta;return A&&(N(A["line-count"],k.length),N(A["layout-time-ns"],R),N(A["overflow-segments"],F)),k},{name:"flow-lines",meta:{"line-count":0,"layout-time-ns":0,"overflow-segments":0},equals:(s,p)=>{let h=s,g=p;if(h.length!==g.length)return!1;for(let u=0;u<h.length;u++){let f=h[u],b=g[u];if(f.x!==b.x||f.y!==b.y||f.width!==b.width||f.slotWidth!==b.slotWidth||f.text!==b.text||f.columnIndex!==b.columnIndex||f.flushToRight!==b.flushToRight)return!1}return!0}});return r.add(l,{name:"text"}),r.add(a,{name:"font"}),r.add(m,{name:"line-height"}),r.add(d,{name:"container"}),r.add(w,{name:"columns"}),r.add(v,{name:"obstacles"}),r.add(B,{name:"paragraph-spacing"}),r.add(c,{name:"segments"}),r.add(x,{name:"flow-lines"}),{graph:r,setText:s=>r.set("text",s),setFont:s=>r.set("font",s),setLineHeight:s=>r.set("line-height",s),setContainer:s=>r.set("container",s),setColumns:s=>r.set("columns",s),setObstacles:s=>r.set("obstacles",s),setParagraphSpacing:s=>r.set("paragraph-spacing",s),segments:c,flowLines:x}}export{D as a,V as b,$ as c,q as d,z as e,J as f,Y as g,K as h,_ as i,U as j,re as k,Q as l,Z as m,ee as n,se as o,ie as p};
@@ -1 +0,0 @@
1
- import{a as dr,b as fr}from"./chunk-6HOSXQKF.js";import{b as pe}from"./chunk-TSOYJ743.js";import{$ as sr,A as It,B as Lt,C as Ct,D as jt,E as Vt,F as Pt,G as At,H as zt,I as Kt,J as Dt,K as Ut,L as _t,M as $t,N as Ft,O as Ht,P as Gt,Q as qt,R as Jt,S as Qt,T as Xt,U as Yt,V as Zt,W as er,X as nr,Y as tr,Z as rr,_ as or,a as it,aa as ir,b as at,ba as mr,c as ct,d as dt,e as ft,f as ut,g as pt,h as lt,i as mt,j as gt,k as bt,l as yt,m as kt,n as ht,o as vt,p as xt,q as Tt,r as wt,s as Et,t as Nt,u as Mt,v as St,w as Rt,x as Bt,y as Ot,z as Wt}from"./chunk-O2BLLH7M.js";import{a as Y,d as ne,e as te,f as re,g as oe,h as se,i as ie,j as ae,k as ce,l as de,m as fe,n as ue}from"./chunk-VNC3TMVY.js";import{b as ur,c as pr,d as lr,e as hr,f as vr}from"./chunk-XG62INFA.js";import{a as Cr}from"./chunk-4YAN45KM.js";import{a as ke,b as Gn}from"./chunk-5QDBSZBV.js";import{a as Xn,b as Yn,c as Zn,d as et,e as nt,f as tt,g as rt,h as ot,i as st}from"./chunk-FDQGFWLF.js";import{a as xe}from"./chunk-L6NSJVJZ.js";import{e as Z}from"./chunk-626TESAC.js";import{a as ee}from"./chunk-ESMPEKEV.js";import{a as wr,b as Er,c as Nr,d as Mr,e as Sr,f as Rr,g as Br,h as Or,i as Wr,j as Ir,k as Lr}from"./chunk-D5RFJOZ2.js";import{a as xr,b as Tr}from"./chunk-CE72X3WO.js";import{A as Xe,B as Ye,C as Ze,D as en,E as nn,F as tn,G as rn,I as on,J as sn,K as an,L as cn,M as dn,N as fn,O as un,P as pn,Q as ln,R as mn,S as gn,T as bn,U as yn,V as kn,W as hn,a as U,b as q,c as Be,d as Oe,e as We,f as Ie,g as Le,h as Ce,i as J,j as je,k as Ve,l as Pe,m as Ae,n as ze,o as Ke,p as De,q as Ue,r as _e,s as $e,t as Q,u as Fe,v as He,w as Ge,x as qe,y as Je,z as Qe}from"./chunk-VOPGGIL7.js";import{c as Te,d as we,e as Ee,f as Ne,g as Me,h as Se,i as Re}from"./chunk-4VVTGLXJ.js";import{a as gr,b as br}from"./chunk-NNKJUORL.js";import{a as yr,b as kr}from"./chunk-KGKJCHEK.js";import{a as ar,b as cr}from"./chunk-TZQPPQEQ.js";import{a as qn,b as Jn,c as Qn}from"./chunk-JQFH2DV6.js";import{A as _n,B as $n,C as Fn,D as Hn,a as he,b as ve,c as vn,d as xn,e as Tn,f as X,g as wn,h as En,i as Nn,j as Mn,k as Sn,l as Rn,m as Bn,n as On,o as Wn,p as In,q as Ln,r as Cn,s as jn,t as Vn,u as Pn,v as An,w as zn,x as Kn,y as Dn,z as Un}from"./chunk-V5A7M7RJ.js";import{A as K,D as C,E as O,H as D,m as W}from"./chunk-LYCLF26R.js";import{b as h,e as $,f as F,g as H,h as S,i as G,j as B}from"./chunk-CK2E7BTU.js";import{b as ye}from"./chunk-QYADASLV.js";var Dr={};ye(Dr,{CircuitOpenError:()=>te,ContentAddressedMissError:()=>ur,DEFAULT_AUDIT_GUARD:()=>Yn,NS_PER_MS:()=>NS_PER_MS,NS_PER_SEC:()=>NS_PER_SEC,NativeIndexBackend:()=>gr,NativeListBackend:()=>yr,NativeLogBackend:()=>qn,NativeMapBackend:()=>ar,NativePubSubBackend:()=>_,RateLimiterOverflowError:()=>ie,ResettableTimer:()=>ee,TimeoutError:()=>de,appendAudit:()=>nt,appendLogStorage:()=>Sr,audit:()=>rn,awaitSettled:()=>Un,budgetGate:()=>Y,buffer:()=>on,bufferCount:()=>sn,bufferTime:()=>cn,bumpCursor:()=>et,cached:()=>zn,canonicalJson:()=>pr,cascadingCache:()=>jr,catchError:()=>hn,checkpointToRedis:()=>er,checkpointToS3:()=>Zt,circuitBreaker:()=>re,combine:()=>_e,combineLatest:()=>bn,concat:()=>He,concatMap:()=>Qe,constant:()=>Te,contentAddressedStorage:()=>lr,createAuditLog:()=>Zn,createTransport:()=>L,createWatermarkController:()=>Gn,csvRows:()=>jt,debounce:()=>en,debounceTime:()=>yn,decay:()=>pe,decorrelatedJitter:()=>Me,defer:()=>Cn,delay:()=>Ze,deserializeError:()=>A,dictKv:()=>Ir,dictSnapshot:()=>Lr,distill:()=>fr,distinctUntilChanged:()=>De,domainMeta:()=>xe,elementAt:()=>Pe,empty:()=>Wn,escapeRegexChar:()=>vn,exhaustMap:()=>Je,exponential:()=>Ee,externalBundle:()=>at,externalProducer:()=>it,fallback:()=>fe,fibonacci:()=>Ne,filter:()=>q,find:()=>Ve,first:()=>J,firstValueFrom:()=>Kn,firstWhere:()=>Dn,flatMap:()=>Ye,forEach:()=>jn,fromAny:()=>Bn,fromAsyncIter:()=>Rn,fromCSV:()=>Ct,fromClickHouseWatch:()=>At,fromCron:()=>En,fromDrizzle:()=>sr,fromEvent:()=>Nn,fromHTTP:()=>ut,fromHTTPPoll:()=>ht,fromHTTPStream:()=>kt,fromIter:()=>Mn,fromKafka:()=>Ot,fromKysely:()=>ir,fromMCP:()=>Tt,fromNATS:()=>Dt,fromNDJSON:()=>Pt,fromOTel:()=>wt,fromPrisma:()=>or,fromPrometheus:()=>Rt,fromPromise:()=>Sn,fromPulsar:()=>zt,fromRabbitMQ:()=>_t,fromRaf:()=>wn,fromRedisStream:()=>It,fromSSE:()=>yt,fromSqlite:()=>nr,fromSqliteCursor:()=>tr,fromStatsD:()=>Mt,fromSyslog:()=>Et,fromTimer:()=>X,fromWebSocket:()=>dt,fromWebSocketReconnect:()=>xt,fromWebhook:()=>ft,globToRegExp:()=>xn,interval:()=>un,jsonCodec:()=>wr,jsonCodecFor:()=>Er,keepalive:()=>Fn,kvStorage:()=>Rr,last:()=>je,lightMutation:()=>tt,linear:()=>we,lru:()=>le,makeHttpError:()=>mr,map:()=>U,matchesAnyPattern:()=>Tn,matchesCron:()=>ve,memoryAppendLog:()=>Or,memoryBackend:()=>Nr,memoryKv:()=>Wr,memorySnapshot:()=>Br,merge:()=>Q,mergeMap:()=>Xe,mergeReactiveLogs:()=>Qn,nameToSignal:()=>V,ndjsonRows:()=>Vt,never:()=>In,nodeSignal:()=>_n,of:()=>On,onFirstData:()=>ze,pairwise:()=>Ue,parseCron:()=>he,parsePrometheusText:()=>Bt,parseSSEStream:()=>bt,parseStatsD:()=>St,parseSyslog:()=>Nt,pausable:()=>ln,pubsub:()=>Vr,race:()=>Ge,rateLimiter:()=>ae,reactiveCounter:()=>Hn,reactiveIndex:()=>br,reactiveList:()=>kr,reactiveLog:()=>Jn,reactiveMap:()=>cr,reactiveSink:()=>ct,reduce:()=>Oe,registerCursor:()=>ot,registerCursorMap:()=>st,repeat:()=>pn,replay:()=>An,rescue:()=>mn,resolveBackoffPreset:()=>Re,retry:()=>ne,sample:()=>tn,scan:()=>Be,serializeError:()=>P,share:()=>Pn,shareReplay:()=>$n,signalToName:()=>I,singleFromAny:()=>hr,singleNodeFromAny:()=>vr,skip:()=>Ie,snapshotStorage:()=>Mr,sortJsonValue:()=>xr,stableJsonString:()=>Tr,stratify:()=>Cr,switchMap:()=>qe,take:()=>We,takeUntil:()=>Ce,takeWhile:()=>Le,tap:()=>Ae,tapFirst:()=>Ke,throttle:()=>nn,throttleTime:()=>kn,throwError:()=>Ln,timeout:()=>ue,toArray:()=>Vn,toCSV:()=>Ht,toClickHouse:()=>Gt,toFile:()=>Ft,toHTTP:()=>pt,toKafka:()=>Wt,toLoki:()=>Xt,toMongo:()=>Qt,toNATS:()=>Ut,toObservable:()=>ke,toPostgres:()=>Jt,toPulsar:()=>Kt,toRabbitMQ:()=>$t,toReadableStream:()=>gt,toRedisStream:()=>Lt,toS3:()=>qt,toSSE:()=>lt,toSSEBytes:()=>mt,toSqlite:()=>rr,toTempo:()=>Yt,toWebSocket:()=>vt,tokenBucket:()=>se,topologyDiff:()=>Z,tryIncrementBounded:()=>Xn,valve:()=>gn,verifiable:()=>dr,window:()=>fn,windowCount:()=>an,windowTime:()=>dn,withBreaker:()=>oe,withLatestFrom:()=>$e,withMaxAttempts:()=>Se,withStatus:()=>ce,workerBridge:()=>ge,workerSelf:()=>be,wrapMutation:()=>rt,zip:()=>Fe});function le(){let e=new Map,r=null,n=null;function p(t){t.prev?t.prev.next=t.next:r=t.next,t.next?t.next.prev=t.prev:n=t.prev,t.prev=null,t.next=null}function l(t){t.next=r,t.prev=null,r&&(r.prev=t),r=t,n===null&&(n=t)}return{insert(t){if(e.has(t)){this.touch(t);return}let f={key:t,prev:null,next:null};e.set(t,f),l(f)},touch(t){let f=e.get(t);f&&(p(f),l(f))},delete(t){let f=e.get(t);f&&(p(f),e.delete(t))},evict(t){let f=[];for(let v=0;v<t&&n!==null;v++){let N=n;f.push(N.key),p(N),e.delete(N.key)}return f},size(){return e.size}}}function me(e){return e!=null&&typeof e.then=="function"}function j(e){me(e)&&e.catch(()=>{})}function jr(e,r){let n=new Map,p=r?.maxSize??0,l=p>0?r?.eviction??le():null,t=r?.writeThrough??!1;function f(o,u,m){for(let g=0;g<m;g++)try{j(e[g].save(o,u))}catch{}}function v(o,u,m=0){for(let g=m;g<e.length;g++){let w;try{w=e[g].load(o)}catch{continue}if(me(w)){let T=g;w.then(M=>{M!==void 0?(u.down([[h,M]]),f(o,M,T)):v(o,u,T+1)},()=>{v(o,u,T+1)});return}if(w!==void 0){u.down([[h,w]]),f(o,w,g);return}}}function N(){if(!(!l||p<=0))for(;l.size()>=p;){let o=l.evict(1);if(o.length===0)break;for(let u of o){let m=n.get(u);if(m){let g=m.cache;if(m.status!=="sentinel"&&e.length>0){let w=e.length-1;try{j(e[w].save(u,g))}catch{}for(let T=0;T<w;T++)try{let M=e[T].delete;M&&j(M.call(e[T],u))}catch{}}m.down([[S]])}n.delete(u)}}}return{load(o){let u=n.get(o);if(u)return l?.touch(o),u;l&&p>0&&l.size()>=p&&N();let m=O(void 0);return n.set(o,m),l?.insert(o),v(o,m),m},save(o,u){if(t)for(let g of e)try{j(g.save(o,u))}catch{}else if(e[0])try{j(e[0].save(o,u))}catch{}let m=n.get(o);if(m)m.down([[h,u]]),l?.touch(o);else{l&&p>0&&l.size()>=p&&N();let g=O(u);n.set(o,g),l?.insert(o)}},invalidate(o){let u=n.get(o);u&&v(o,u)},delete(o){l?.delete(o);let u=n.get(o);u&&u.down([[S]]),n.delete(o);for(let m of e)try{let g=m.delete;g&&j(g.call(m,o))}catch{}},has(o){return n.has(o)},get size(){return n.size}}}var _=class{_version=0;_topics=new Set;get version(){return this._version}get topicCount(){return this._topics.size}hasTopic(r){return this._topics.has(r)}topicNames(){return this._topics.values()}createTopic(r){return this._topics.has(r)?!1:(this._topics.add(r),this._version+=1,!0)}removeTopic(r){let n=this._topics.delete(r);return n&&(this._version+=1),n}};function Vr(e={}){let{backend:r}=e,n=r??new _,p=new Map;function l(t){let f=p.get(t);return f===void 0&&(f=C({describeKind:"state"}),p.set(t,f),n.createTopic(t)),f}return{topic(t){return l(t)},publish(t,f){l(t).emit(f)},publishMany(t){W(()=>{for(let[f,v]of t)l(f).emit(v)})},removeTopic(t){let f=p.get(t);return f===void 0?!1:(p.delete(t),n.removeTopic(t),f.down([[S]]),!0)},has(t){return n.hasTopic(t)},get size(){return n.topicCount},topicNames(){return n.topicNames()}}}var Pr=new Map([[$,"INVALIDATE"],[F,"PAUSE"],[H,"RESUME"],[S,"TEARDOWN"],[G,"COMPLETE"],[B,"ERROR"]]),Ar=new Map([["INVALIDATE",$],["PAUSE",F],["RESUME",H],["TEARDOWN",S],["COMPLETE",G],["ERROR",B]]);function I(e){let r=Pr.get(e);return r||(Symbol.keyFor(e)??"UNKNOWN")}function V(e){let r=Ar.get(e);if(r)return r;if(e&&e!=="UNKNOWN")return Symbol.for(e)}function P(e){return e instanceof Error?{message:e.message,name:e.name,stack:e.stack}:{message:String(e),name:"Error"}}function A(e){let r=new Error(e.message);return r.name=e.name,e.stack&&(r.stack=e.stack),r}function L(e){if(typeof MessagePort<"u"&&e instanceof MessagePort)return{post(r,n){e.postMessage(r,n??[])},listen(r){let n=p=>r(p.data);return e.addEventListener("message",n),e.start(),()=>e.removeEventListener("message",n)},terminate(){e.close()}};if(typeof SharedWorker<"u"&&e instanceof SharedWorker)return L(e.port);if(typeof Worker<"u"&&e instanceof Worker)return{post(r,n){e.postMessage(r,n??[])},listen(r){let n=p=>r(p.data);return e.addEventListener("message",n),()=>e.removeEventListener("message",n)},terminate(){e.terminate()}};if(typeof BroadcastChannel<"u"&&e instanceof BroadcastChannel)return{post(r,n){n&&n.length>0&&console.warn("[graphrefly] WorkerTransport: BroadcastChannel does not support Transferable objects. The transfer argument is ignored and objects will be cloned instead."),e.postMessage(r)},listen(r){let n=p=>r(p.data);return e.addEventListener("message",n),()=>e.removeEventListener("message",n)},terminate(){e.close()}};if(typeof ServiceWorker<"u"&&e instanceof ServiceWorker)return{post(r,n){e.postMessage(r,n??[])},listen(r){let n=p=>{p.source===e&&r(p.data)};return navigator.serviceWorker.addEventListener("message",n),()=>navigator.serviceWorker.removeEventListener("message",n)}};throw new Error("createTransport: unsupported target type. Expected Worker, SharedWorker, ServiceWorker, BroadcastChannel, or MessagePort.")}function zr(e){return typeof e=="object"&&e!==null&&typeof e.post=="function"&&typeof e.listen=="function"}function ge(e,r){let n=zr(e)?e:L(e),p=r.name??"workerBridge",l=Object.entries(r.expose??{}),t=r.import??[],f=r.transfer??{},v=O("connecting",{name:`${p}::meta::status`}),N=O(null,{name:`${p}::meta::error`}),o=new Map,u=new Map;for(let c of t){let a=O(void 0,{name:`${p}::${c}`});o.set(c,a)}let m;if(l.length>0){let c=l.map(([,d])=>d),a=C(c,(d,i)=>{let k={};for(let y=0;y<l.length;y++){let[R]=l[y],E=d[y];E!=null&&E.length>0&&(k[R]=E.at(-1))}Object.keys(k).length!==0&&i.emit(k)},{name:`${p}::aggregated`,partial:!0});m=D([a],d=>{let i=d[0];if(i==null||Object.keys(i).length===0)return;let k=[];for(let E of Object.keys(i)){let z=f[E];z&&k.push(...z(i[E]))}let y;for(let[E,z]of l)E in i&&z.v!=null&&(y==null&&(y={}),y[E]=z.v.version);let R={t:"b",u:i,...y?{v:y}:{}};try{n.post(R,k.length>0?k:void 0)}catch(E){N.down([[h,E instanceof Error?E:new Error(String(E))]])}}).subscribe(()=>{})}let g=!1,w=n.listen(c=>{if(g)return;let a=c;switch(a.t){case"r":{W(()=>{for(let[d,i]of Object.entries(a.stores)){let k=o.get(d);k&&k.down([[h,i]])}}),v.down([[h,"connected"]]);let s={};for(let[d,i]of l)s[d]=i.cache;n.post({t:"i",stores:s});break}case"v":{let s=o.get(a.s);s&&s.down([[h,a.d]]);break}case"b":{W(()=>{for(let[s,d]of Object.entries(a.u)){let i=a.v?.[s];if(i!=null){let y=u.get(s);if(y!=null&&i<=y)continue;u.set(s,i)}let k=o.get(s);k&&k.down([[h,d]])}});break}case"e":{let s=o.get(a.s);s&&s.down([[B,A(a.err)]]);break}case"s":{let s=V(a.sig);if(!s)break;let d=a.s==="*"?[...o.values()]:o.has(a.s)?[o.get(a.s)]:[];for(let i of d)i.down(a.d===void 0?[[s]]:[[s,a.d]]);break}}}),T=[];for(let[c,a]of l){let s=a.subscribe((d=>{if(!g)for(let i of d){let k=i[0];k!==h&&(K.isLocalOnly(k)||(k===B?n.post({t:"e",s:c,err:P(i[1])}):n.post({t:"s",s:c,sig:I(k),d:i.length>1?i[1]:void 0})))}}));T.push(s)}let M;if(r.timeoutMs!=null&&r.timeoutMs>0){let c=X(r.timeoutMs),a=q(v,d=>d==="connected");M=J(Q(U(c,()=>"timeout"),U(a,()=>"ready"))).subscribe(d=>{for(let i of d)i[0]===h&&i[1]==="timeout"&&(N.down([[h,new Error("Worker bridge handshake timeout")]]),x())})}function x(){if(!g){g=!0,M?.(),n.post({t:"s",s:"*",sig:I(S)}),m&&m();for(let c of T)c();T.length=0,w(),v.down([[h,"closed"]]),u.clear(),o.clear()}}let b={meta:{status:v,error:N},destroy:x};for(let[c,a]of o)b[c]=a;return b}function Kr(e){return typeof e=="object"&&e!==null&&typeof e.post=="function"&&typeof e.listen=="function"}function be(e,r){let n=Kr(e)?e:L(e),p=r.import??[],l=r.transfer??{},t=new Map,f=new Map,v={};for(let x of p){let b=O(void 0,{name:`worker::${x}`});t.set(x,b),v[x]=b}let N=r.expose(v),o=Object.entries(N),u,m=!1;if(o.length>0){let x=o.map(([,a])=>a),b=C(x,(a,s)=>{let d={};for(let i=0;i<o.length;i++){let[k]=o[i],y=a[i];y!=null&&y.length>0&&(d[k]=y.at(-1))}Object.keys(d).length!==0&&s.emit(d)},{name:"workerSelf::aggregated",partial:!0});u=D([b],a=>{if(m)return;let s=a[0];if(s==null||Object.keys(s).length===0)return;let d=[];for(let y of Object.keys(s)){let R=l[y];R&&d.push(...R(s[y]))}let i;for(let[y,R]of o)y in s&&R.v!=null&&(i==null&&(i={}),i[y]=R.v.version);let k={t:"b",u:s,...i?{v:i}:{}};try{n.post(k,d.length>0?d:void 0)}catch{}}).subscribe(()=>{})}let g=[];for(let[x,b]of o){let c=b.subscribe((a=>{if(!m)for(let s of a){let d=s[0];d!==h&&(K.isLocalOnly(d)||(d===B?n.post({t:"e",s:x,err:P(s[1])}):n.post({t:"s",s:x,sig:I(d),d:s.length>1?s[1]:void 0})))}}));g.push(c)}let w=n.listen(x=>{if(m)return;let b=x;switch(b.t){case"i":{W(()=>{for(let[c,a]of Object.entries(b.stores)){let s=t.get(c);s&&s.down([[h,a]])}});break}case"v":{let c=t.get(b.s);c&&c.down([[h,b.d]]);break}case"b":{W(()=>{for(let[c,a]of Object.entries(b.u)){let s=b.v?.[c];if(s!=null){let i=f.get(c);if(i!=null&&s<=i)continue;f.set(c,s)}let d=t.get(c);d&&d.down([[h,a]])}});break}case"e":{let c=t.get(b.s);c&&c.down([[B,A(b.err)]]);break}case"s":{let c=V(b.sig);if(!c)break;if(c===S&&b.s==="*"){M();return}let a=b.s==="*"?[...t.values()]:t.has(b.s)?[t.get(b.s)]:[];for(let s of a)s.down(b.d===void 0?[[c]]:[[c,b.d]]);break}}}),T={};for(let[x,b]of o)T[x]=b.cache;n.post({t:"r",stores:T});function M(){if(!m){m=!0,u&&u();for(let x of g)x();g.length=0,w(),n.terminate?.(),f.clear(),t.clear()}}return{destroy:M}}export{le as a,jr as b,_ as c,Vr as d,I as e,V as f,P as g,A as h,L as i,ge as j,be as k,Dr as l};
@@ -1 +0,0 @@
1
- import{b as ne}from"./chunk-TSOYJ743.js";import{c as W,d as ee,f as N,h as J}from"./chunk-FDQGFWLF.js";import{a as te}from"./chunk-L6NSJVJZ.js";import{j as P}from"./chunk-626TESAC.js";import{b as L}from"./chunk-TZQPPQEQ.js";import{C as I,f as oe}from"./chunk-V5A7M7RJ.js";import{C as Y,E as Z,G as x,o as V,p as X}from"./chunk-LYCLF26R.js";import{b as ce}from"./chunk-QYADASLV.js";var pe={};ce(pe,{collection:()=>fe,cosineSimilarity:()=>de,knowledgeGraph:()=>me,vectorIndex:()=>ye});var le=1e9;function S(o,t){return te("memory",o,t)}function $(o,t){return o instanceof Y?o:Z(o,t?{name:t}:void 0)}function re(o,t){return(o-t)/le}function de(o,t){let g=Math.max(o.length,t.length),r=0,d=0,f=0;for(let y=0;y<g;y+=1){let R=o[y]??0,k=t[y]??0;r+=R*k,d+=R*R,f+=k*k}if(d===0||f===0)return 0;let l=r/Math.sqrt(d*f);return Number.isFinite(l)?l:0}function ue(o,t){if(o===t)return!0;if(o==null||t==null||o.length!==t.length)return!1;for(let g=0;g<o.length;g+=1){let r=o[g],d=t[g];if(r.id!==d.id||r.score!==d.score||r.meta!==d.meta)return!1}return!0}function ge(o,t){if(o===t)return!0;if(o==null||t==null||o.length!==t.length)return!1;for(let g=0;g<o.length;g+=1){let r=o[g],d=t[g];if(r.id!==d.id||r.score!==d.score||r.lastAccessNs!==d.lastAccessNs||r.value!==d.value)return!1}return!0}function fe(o,t={}){let g=t.maxSize,r=t.ranked??!0,d=r?t.decayRate??0:0,f=t.minScore??0;if(g!==void 0&&g<1)throw new RangeError("collection: maxSize must be >= 1");let l=()=>r?1:0,y=t.score??l,R=r&&y instanceof Y?y:void 0,k=()=>R?R.cache??l:y,v=new P(o),p=L({name:"items",...g!==void 0?{retention:{score:(n,c)=>r?ne(c.baseScore,re(V(),c.lastAccessNs),d,f):c.lastAccessNs,maxSize:g}}:{}});v.add(p.entries,{name:"items"});let E;if(r&&d>0){let n=t.refreshIntervalMs??Math.max(1,1e3*Math.LN2/(10*d)),c=oe(n,{period:n});E=x([c],()=>V(),{name:"refresh_tick_ns",describeKind:"derived",initial:V(),meta:S("clock")}),v.add(E,{name:"refresh_tick_ns"})}let w;if(r){let n=[p.entries];E&&n.push(E),R&&n.push(R),w=x(n,c=>{let u=c[0],m;if(E){let M=c[1];m=typeof M=="number"?M:V()}else m=V();if(!u||u.size===0)return[];let h=[];for(let M of u.values())h.push({...M,score:ne(M.baseScore,re(m,M.lastAccessNs),d,f)});return h.sort((M,b)=>b.score-M.score||b.lastAccessNs-M.lastAccessNs),h},{name:"ranked",describeKind:"derived",equals:ge,meta:S("ranked")}),v.add(w,{name:"ranked"})}else w=Z([],{name:"ranked",describeKind:"state",meta:S("ranked_disabled")}),v.add(w,{name:"ranked"});let z=x([p.entries],([n])=>(n??new Map).size,{name:"size",describeKind:"derived",initial:0,meta:S("size")});v.add(z,{name:"size"}),v.addDisposer(I(z));let q=W({name:"events",retainedLimit:1024,graph:v}),K=J(v,"seq",0),O=(n,c,u)=>{let m=V(),h=p.get(n),M=u?.score??k()(c);p.set(n,{id:n,value:c,baseScore:M,createdAtNs:h?.createdAtNs??m,lastAccessNs:m})},G=n=>{p.has(n)&&p.delete(n)},j=()=>{p.size!==0&&p.clear()},D=()=>{if(!r)return;let n=k(),c=p.entries.cache;if(!c||c.size===0)return;let u=[];for(let m of c.values())u.push([m.id,{...m,baseScore:n(m.value)}]);p.setMany(u)},F=N(O,{audit:q,seq:K,onSuccess:([n],c,u)=>({action:"upsert",id:n,t_ns:u.t_ns,seq:u.seq})}),H=N(G,{audit:q,seq:K,onSuccess:([n],c,u)=>({action:"remove",id:n,t_ns:u.t_ns,seq:u.seq})}),i=N(j,{audit:q,seq:K,onSuccess:(n,c,u)=>({action:"clear",t_ns:u.t_ns,seq:u.seq})}),e=N(D,{audit:q,seq:K,onSuccess:(n,c,u)=>({action:"rescore",t_ns:u.t_ns,seq:u.seq})});function s(n){let c=$(n,"id");return x([p.entries,c],([u,m])=>u?.get(m),{describeKind:"derived",meta:S("collection_item")})}function a(n){let c=$(n,"id");return x([p.entries,c],([u,m])=>u?.has(m)??!1,{describeKind:"derived",meta:S("collection_has")})}return Object.assign(v,{events:q,items:p.entries,ranked:w,size:z,upsert:F,remove:H,clear:i,rescore:e,itemNode:s,hasNode:a})}function ye(o={}){let t=o.backend??"flat",g=o.dimension,r=o.strictDimension??!0,d=o.maxSize,f=o.retentionScore,l;if(t==="hnsw"&&(l=o.hnswFactory?.(),!l))throw new Error('vectorIndex backend "hnsw" requires an optional dependency adapter; install your HNSW package and provide `hnswFactory`.');let y=new P(o.name??"vector_index"),R;function k(e){if(g!==void 0){if(e.length!==g)throw new RangeError(`vector dimension mismatch: expected ${g}, got ${e.length}`);return}if(r){if(R===void 0){R=e.length;return}if(e.length!==R)throw new RangeError(`vector dimension mismatch: inferred ${R} from first upsert, got ${e.length}. Pass \`strictDimension: false\` to opt into zero-pad behavior, or set an explicit \`dimension\`.`)}}let v=f??(e=>e.upsertedAtNs),C=!1,p=W({name:"events",retainedLimit:1024,graph:y}),E=J(y,"seq",0),w=L({name:"entries",...d!==void 0?{retention:{score:(e,s)=>v(s),maxSize:d,onArchive:e=>{C||(t==="hnsw"&&l.remove(e),p.append({action:"evict",id:e,t_ns:X(),seq:ee(E)}))}}}:{}});if(y.add(w.entries,{name:"entries"}),y.addDisposer(I(w.entries)),l?.dispose){let e=l.dispose.bind(l);y.addDisposer(()=>e())}let z=(e,s,a)=>{k(s),t==="hnsw"&&l.upsert(e,s,a);let T=(()=>{if(a!==void 0)return a===null||typeof a!="object"?a:Array.isArray(a)?[...a]:{...a}})(),n={id:e,vector:[...s],...T!==void 0?{meta:T}:{},upsertedAtNs:V()};w.set(e,n)},q=e=>{w.has(e)&&(t==="hnsw"&&l.remove(e),w.delete(e))},K=()=>{if(w.size!==0){C=!0;try{w.clear(),t==="hnsw"&&l.clear()}finally{C=!1}R=void 0}},O=()=>{if(t!=="hnsw")return;let e=w.entries.cache;if(e){l.clear();for(let s of e.values())l.upsert(s.id,s.vector,s.meta)}},G=N(z,{audit:p,freeze:!1,seq:E,onSuccess:([e],s,a)=>({action:"upsert",id:e,t_ns:a.t_ns,seq:a.seq})}),j=N(q,{audit:p,seq:E,onSuccess:([e],s,a)=>({action:"remove",id:e,t_ns:a.t_ns,seq:a.seq})}),D=N(K,{audit:p,seq:E,onSuccess:(e,s,a)=>({action:"clear",t_ns:a.t_ns,seq:a.seq})}),F=N(O,{audit:p,seq:E,onSuccess:(e,s,a)=>({action:"reindex",t_ns:a.t_ns,seq:a.seq})});function H(e,s=5){let a=$(s,"k");return x([w.entries,e,a],T=>{let n=T[0],c=T[1],u=T[2],m=Number.isFinite(u)?Math.max(0,Math.floor(u)):0;if(!n||n.size===0||m<=0)return[];if(c==null||c.length===0)return[];let h=g??(r?R:void 0);return h!==void 0&&c.length!==h?[]:t==="hnsw"?[...l.search(c,m)]:[...n.values()].map(b=>({id:b.id,score:de(c,b.vector),...b.meta!==void 0?{meta:b.meta}:{}})).sort((b,A)=>A.score-b.score).slice(0,m)},{describeKind:"derived",equals:(T,n)=>ue(T,n),meta:S("vector_search")})}return Object.assign(y,{backend:t,events:p,entries:w.entries,upsert:G,remove:j,clear:D,reindex:F,searchNode:H})}var se="\0";function Q(o,t,g){return`${o}${se}${t}${se}${g}`}function ie(o,t){if(!o||o.size===0)return new Map;let g=new Map;for(let d of o.values()){let f=t==="from"?d.from:d.to,l=g.get(f);l||(l=[],g.set(f,l)),l.push(d)}let r=new Map;for(let[d,f]of g)r.set(d,Object.freeze(f));return r}function ae(o,t){if(o===t)return!0;if(o==null||t==null||o.size!==t.size)return!1;for(let[g,r]of o){let d=t.get(g);if(!d||r.length!==d.length)return!1;for(let f=0;f<r.length;f+=1){let l=r[f],y=d[f];if(l.from!==y.from||l.to!==y.to||l.relation!==y.relation||l.weight!==y.weight)return!1}}return!0}function me(o,t={}){let g=t.orphanGC??"keep";if(t.entitiesMaxSize!==void 0&&t.entitiesMaxSize<1)throw new RangeError("knowledgeGraph: entitiesMaxSize must be >= 1");if(t.edgesMaxSize!==void 0&&t.edgesMaxSize<1)throw new RangeError("knowledgeGraph: edgesMaxSize must be >= 1");let r=new P(o),d=L({name:"entities",...t.entitiesMaxSize!==void 0?{maxSize:t.entitiesMaxSize}:{}}),f=L({name:"edges",...t.edgesMaxSize!==void 0?{maxSize:t.edgesMaxSize}:{}});r.add(d.entries,{name:"entities"}),r.add(f.entries,{name:"edges"});let l=x([f.entries],([i])=>ie(i,"from"),{name:"adjacencyOut",describeKind:"derived",initial:new Map,equals:ae,meta:S("adjacency_out")}),y=x([f.entries],([i])=>ie(i,"to"),{name:"adjacencyIn",describeKind:"derived",initial:new Map,equals:ae,meta:S("adjacency_in")});r.add(l,{name:"adjacencyOut"}),r.add(y,{name:"adjacencyIn"}),r.addDisposer(I(l)),r.addDisposer(I(y));let R=x([d.entries],([i])=>(i??new Map).size,{name:"entityCount",describeKind:"derived",initial:0,meta:S("entity_count")}),k=x([f.entries],([i])=>(i??new Map).size,{name:"edgeCount",describeKind:"derived",initial:0,meta:S("edge_count")});r.add(R,{name:"entityCount"}),r.add(k,{name:"edgeCount"}),r.addDisposer(I(R)),r.addDisposer(I(k));let v=W({name:"events",retainedLimit:1024,graph:r}),C=J(r,"seq",0);function p(i){let e=l.cache,s=y.cache;return(e?.get(i)?.length??0)>0||(s?.get(i)?.length??0)>0}function E(i){if(g==="remove")for(let e of i)d.has(e)&&(p(e)||(d.delete(e),v.append({action:"orphanRemove",id:e,t_ns:X(),seq:ee(C)})))}let w=(i,e)=>{d.set(i,e)},z=i=>{let e=f.entries.cache,s=new Set;if(e){let a=[];for(let[T,n]of e)(n.from===i||n.to===i)&&(a.push(T),n.from!==i&&s.add(n.from),n.to!==i&&s.add(n.to));a.length>0&&f.deleteMany(a)}d.has(i)&&d.delete(i),E([...s])},q=(i,e,s,a=1)=>{f.set(Q(i,e,s),{from:i,to:e,relation:s,weight:a})},K=(i,e,s)=>{if(s!==void 0)f.delete(Q(i,e,s));else{let a=f.entries.cache;if(!a)return;let T=[];for(let[n,c]of a)c.from===i&&c.to===e&&T.push(n);T.length>0&&f.deleteMany(T)}E([i,e])},O=N(w,{audit:v,seq:C,onSuccess:([i],e,s)=>({action:"upsertEntity",id:i,t_ns:s.t_ns,seq:s.seq})}),G=N(z,{audit:v,seq:C,onSuccess:([i],e,s)=>({action:"removeEntity",id:i,t_ns:s.t_ns,seq:s.seq})}),j=N(q,{audit:v,seq:C,onSuccess:([i,e,s,a],T,n)=>({action:"link",from:i,to:e,relation:s,weight:a??1,t_ns:n.t_ns,seq:n.seq})}),D=N(K,{audit:v,seq:C,onSuccess:([i,e,s],a,T)=>({action:"unlink",from:i,to:e,...s!==void 0?{relation:s}:{},t_ns:T.t_ns,seq:T.seq})});function F(i,e){let s=$(i,"id"),a=e!==void 0?$(e,"relation"):void 0;return x(a?[l,y,s,a]:[l,y,s],n=>{let c=n[0],u=n[1],m=n[2],h=a?n[3]:void 0,M=c.get(m)??[],b=u.get(m)??[],A=new Set,U=[];for(let _ of M){let B=Q(_.from,_.to,_.relation);A.has(B)||h!==void 0&&_.relation!==h||(A.add(B),U.push(_))}for(let _ of b){let B=Q(_.from,_.to,_.relation);A.has(B)||h!==void 0&&_.relation!==h||(A.add(B),U.push(_))}return U},{describeKind:"derived",equals:(n,c)=>{let u=n,m=c;if(u===m)return!0;if(u==null||m==null||u.length!==m.length)return!1;for(let h=0;h<u.length;h+=1){let M=u[h],b=m[h];if(M.from!==b.from||M.to!==b.to||M.relation!==b.relation||M.weight!==b.weight)return!1}return!0},meta:S("related")})}return Object.assign(r,{events:v,entities:d.entries,edges:f.entries,adjacencyOut:l,adjacencyIn:y,entityCount:R,edgeCount:k,upsertEntity:O,removeEntity:G,link:j,unlink:D,relatedNode:F})}export{de as a,fe as b,ye as c,me as d,pe as e};
@@ -1 +0,0 @@
1
- import{j as f}from"./chunk-626TESAC.js";import{E as d}from"./chunk-LYCLF26R.js";import{b as S}from"./chunk-CK2E7BTU.js";import{b}from"./chunk-QYADASLV.js";var g={};b(g,{create:()=>v});var m=()=>!1;function v(l){let o=new f("zustand"),t=d(void 0,{name:"state",equals:m});o.add(t,{name:"state"});let r=()=>t.cache,n=(e,s)=>{let a=t.cache,i=typeof e=="function"?e(a):e;t.emit(s?i:{...a,...i})},c={getState:r,setState:n,getInitialState:()=>T,subscribe:e=>{let s=!0,a=t.cache;return t.subscribe(i=>{for(let[u,p]of i)if(u===S){if(s){s=!1;continue}e(p,a),a=p}})},destroy:o.destroy.bind(o)},T=l(n,r,c);return t.emit(T),Object.assign(o,c)}export{v as a,g as b};
@@ -1 +0,0 @@
1
- var r=Math.LN2/604800;function x(t,i,n,u=0){if(!Number.isFinite(t))return u;if(!Number.isFinite(i)||i<=0||!Number.isFinite(n)||n<=0)return Math.max(u,t);let m=t*Math.exp(-n*i);return Math.max(u,m)}export{r as a,x as b};
@@ -1 +0,0 @@
1
- import{E as M,m as x,o as v}from"./chunk-LYCLF26R.js";import{b as _,c as K}from"./chunk-CK2E7BTU.js";var b=class{_version=0;_store=new Map;_maxSize;_defaultTtl;constructor(t={}){let{maxSize:e,defaultTtl:i}=t;if(e!==void 0&&e<1)throw new RangeError("maxSize must be >= 1");if(i!==void 0&&i<=0)throw new RangeError("defaultTtl must be positive");this._maxSize=e,this._defaultTtl=i}get version(){return this._version}get size(){return this._store.size}has(t){let e=this._store.get(t);return e===void 0?!1:this._isExpired(e)?(this._store.delete(t),this._version+=1,!1):(this._touchLru(t,e),!0)}get(t){let e=this._store.get(t);if(e!==void 0){if(this._isExpired(e)){this._store.delete(t),this._version+=1;return}return this._touchLru(t,e),e.value}}set(t,e,i){let s=this._resolveExpiresAt(i);this._store.has(t)&&this._store.delete(t),this._store.set(t,{value:e,expiresAt:s}),this._evictLruWhileOver(),this._version+=1}setMany(t,e){let i=this._resolveExpiresAt(e),s=0;try{for(let[f,a]of t)this._store.has(f)&&this._store.delete(f),this._store.set(f,{value:a,expiresAt:i}),s+=1}finally{s>0&&(this._evictLruWhileOver(),this._version+=1)}}delete(t){let e=this._store.delete(t);return e&&(this._version+=1),e}deleteMany(t){let e=0;try{for(let i of t)this._store.delete(i)&&(e+=1)}finally{e>0&&(this._version+=1)}return e}clear(){let t=this._store.size;return t===0?0:(this._store.clear(),this._version+=1,t)}pruneExpired(){let t=v(),e=0;for(let[i,s]of this._store)this._isExpired(s,t)&&(this._store.delete(i),e+=1);return e>0&&(this._version+=1),e}toMap(){let t=v(),e=new Map;for(let[i,s]of this._store)this._isExpired(s,t)||e.set(i,s.value);return e}_resolveExpiresAt(t){let e=t??this._defaultTtl;if(e!==void 0){if(!Number.isFinite(e)||e<=0)throw new RangeError(`MapBackend: ttl must be a positive finite number (got ${e})`);return v()+e*1e9}}_isExpired(t,e){return t.expiresAt===void 0?!1:(e??v())>=t.expiresAt}_touchLru(t,e){this._store.delete(t),this._store.set(t,e)}_evictLruWhileOver(){if(this._maxSize!==void 0)for(;this._store.size>this._maxSize;){let t=this._store.keys().next().value;if(t===void 0)break;this._store.delete(t)}}};function R(y={}){let{name:t,maxSize:e,defaultTtl:i,versioning:s,backend:f,retention:a}=y;if(a&&e!==void 0)throw new RangeError("reactiveMap: `maxSize` (LRU) and `retention` (score-based) are mutually exclusive. Pick one eviction policy.");if(a&&a.archiveThreshold===void 0&&a.maxSize===void 0)throw new RangeError("reactiveMap: `retention` requires at least one of `archiveThreshold` or `maxSize` to trigger archival.");let o=f??new b({maxSize:e,defaultTtl:i}),m=M(o.toMap(),{name:t,describeKind:"state",equals:(r,d)=>r===d,...s!=null?{versioning:s}:{}});function V(){let r=o.toMap();x(()=>{m.down([[K]]),m.down([[_,r]])})}function k(){if(!a)return;let r=o.toMap(),d=a.archiveThreshold,l=a.maxSize,p=[];for(let[n,h]of r)p.push({key:n,value:h,score:a.score(n,h)});p.sort((n,h)=>n.score-h.score);let c=new Set;if(d!==void 0)for(let n of p)if(n.score<d)c.add(n.key);else break;if(l!==void 0&&p.length-c.size>l)for(let n of p){if(p.length-c.size<=l)break;c.has(n.key)||c.add(n.key)}if(c.size!==0)for(let n of p)c.has(n.key)&&(a.onArchive?.(n.key,n.value,n.score),o.delete(n.key))}function u(r,d="mutation"){let l=o.version;try{return r()}finally{o.version!==l&&(d==="mutation"&&k(),V())}}return{entries:m,has(r){return u(()=>o.has(r),"read")},get(r){return u(()=>o.get(r),"read")},set(r,d,l){u(()=>o.set(r,d,l?.ttl))},setMany(r,d){u(()=>o.setMany(r,d?.ttl))},delete(r){u(()=>o.delete(r))},deleteMany(r){u(()=>o.deleteMany(r))},clear(){u(()=>o.clear())},pruneExpired(){u(()=>o.pruneExpired())},get size(){return o.size},dispose(){}}}export{b as a,R as b};
@@ -1 +0,0 @@
1
- import{D as w,E as I,F as b,p as C}from"./chunk-LYCLF26R.js";import{a as S,b as h,c as A,d as x,i as T,j as p}from"./chunk-CK2E7BTU.js";function y(e,n,t){let u=new Set;for(let o of e.split(",")){let[r,i]=o.split("/"),s=i?Number.parseInt(i,10):1;if(Number.isNaN(s)||s<1)throw new Error(`Invalid cron step: ${o}`);let a,d;if(r==="*")a=n,d=t;else if(r.includes("-")){let[f,c]=r.split("-");a=Number.parseInt(f,10),d=Number.parseInt(c,10)}else a=Number.parseInt(r,10),d=a;if(Number.isNaN(a)||Number.isNaN(d))throw new Error(`Invalid cron field: ${e}`);if(a<n||d>t)throw new Error(`Cron field out of range: ${e} (${n}-${t})`);if(a>d)throw new Error(`Invalid cron range: ${a}-${d} in ${e}`);for(let f=a;f<=d;f+=s)u.add(f)}return u}function L(e){let n=e.trim().split(/\s+/);if(n.length!==5)throw new Error(`Invalid cron: expected 5 fields, got ${n.length}`);return{minutes:y(n[0],0,59),hours:y(n[1],0,23),daysOfMonth:y(n[2],1,31),months:y(n[3],1,12),daysOfWeek:y(n[4],0,6)}}function P(e,n){return e.minutes.has(n.getMinutes())&&e.hours.has(n.getHours())&&e.daysOfMonth.has(n.getDate())&&e.months.has(n.getMonth()+1)&&e.daysOfWeek.has(n.getDay())}function m(e){return{describeKind:"producer",...e}}function $(e){return/[\\^$+?.()|[\]{}]/.test(e)?`\\${e}`:e}function X(e){let n="^";for(let t=0;t<e.length;t+=1){let u=e[t];if(u==="*"){e[t+1]==="*"?(n+=".*",t+=1):n+="[^/]*";continue}n+=$(u)}return n+="$",new RegExp(n)}function Z(e,n){for(let t of n)if(t.test(e))return!0;return!1}function K(e,n){let t=w([e],(o,r)=>{let i=o[0];if(i==null||i.length===0){r.down([[x]]);return}for(let s of i)r.emit(s)},{describeKind:"derived",initial:e.cache}),u=t.subscribe.bind(t);return t.subscribe=(o,r)=>(n(o),u(o,r)),t}function ee(e,n){let{signal:t,period:u,...o}=n??{};return b(r=>{let i=!1,s=0,a,d,f=()=>{i=!0,a!==void 0&&clearTimeout(a),d!==void 0&&clearInterval(d),t?.removeEventListener("abort",l)},c=()=>{i||(u!=null?(r.emit(s++),d=setInterval(()=>{i||r.emit(s++)},u)):(i=!0,t?.removeEventListener("abort",l),r.emit(s++),r.down([[T]])))},l=()=>{i||(f(),r.down([[p,t.reason]]))};if(t?.aborted){l();return}return a=setTimeout(c,e),t?.addEventListener("abort",l,{once:!0}),f},m(o))}function ne(e){let{signal:n,...t}=e??{};return b(u=>{let o=!1,r,i,s=!1,a=!1,d=typeof requestAnimationFrame=="function"?requestAnimationFrame:void 0,f=typeof cancelAnimationFrame=="function"?cancelAnimationFrame:void 0,c=typeof document<"u"?document:void 0,l=()=>{r!==void 0&&f&&f(r),i!==void 0&&clearTimeout(i),r=void 0,i=void 0},v=()=>{o=!0,l(),s&&(n?.removeEventListener("abort",N),s=!1),a&&c&&(c.removeEventListener("visibilitychange",k),a=!1)},N=()=>{o||(v(),u.down([[p,n.reason]]))},O=_=>{o||(u.emit(_),g())},g=()=>{o||(d&&(!c||c.visibilityState!=="hidden")?r=d(O):i=setTimeout(()=>O(performance.now()),16))},k=()=>{o||(l(),g())};return n?.aborted?(N(),v):(n?.addEventListener("abort",N,{once:!0}),s=n!==void 0,c&&d&&(c.addEventListener("visibilitychange",k),a=!0),g(),v)},m(t))}function te(e,n){let t=L(e),{tickMs:u,output:o,...r}=n??{},i=u??6e4,s=o==="date";return b(a=>{let d=-1,f=()=>{let l=new Date,v=l.getFullYear()*1e8+(l.getMonth()+1)*1e6+l.getDate()*1e4+l.getHours()*100+l.getMinutes();v!==d&&P(t,l)&&(d=v,a.emit(s?l:C()))};f();let c=setInterval(f,i);return()=>clearInterval(c)},{...m(r),name:r.name??`cron:${e}`})}function re(e,n,t){let{capture:u,passive:o,once:r,...i}=t??{};return b(s=>{let a=f=>{s.emit(f)},d={capture:u,passive:o,once:r};return e.addEventListener(n,a,d),()=>e.removeEventListener(n,a,d)},m(i))}function D(e,n){return b(t=>{let u=!1;try{for(let o of e){if(u)return;t.emit(o)}u||t.down([[T]])}catch(o){u||t.down([[p,o]])}return()=>{u=!0}},m(n))}function W(e){return e!=null&&typeof e.then=="function"}function q(e,n){let{signal:t,...u}=n??{};return b(o=>{let r=!1,i=()=>{r||(r=!0,o.down([[p,t.reason]]))};if(t?.aborted){i();return}return t?.addEventListener("abort",i,{once:!0}),Promise.resolve(e).then(s=>{r||(r=!0,t?.removeEventListener("abort",i),o.emit(s),o.down([[T]]))},s=>{r||(r=!0,t?.removeEventListener("abort",i),o.down([[p,s]]))}),()=>{r=!0,t?.removeEventListener("abort",i)}},m(u))}function H(e,n){let{signal:t,...u}=n??{};return b(o=>{let r=new AbortController,i=()=>r.abort(t?.reason);t?.aborted?r.abort(t.reason):t?.addEventListener("abort",i,{once:!0});let s=t??r.signal,a=!1,d=e[Symbol.asyncIterator](),f=()=>{a||s.aborted||Promise.resolve(d.next()).then(c=>{if(!(a||s.aborted)){if(c.done){o.down([[T]]);return}o.emit(c.value),f()}},c=>{!a&&!s.aborted&&o.down([[p,c]])})};return f(),()=>{a=!0,t?.removeEventListener("abort",i),r.abort(),Promise.resolve(d.return?.()).catch(()=>{})}},m(u))}function U(e){return e!=null&&typeof e=="object"&&"cache"in e&&typeof e.subscribe=="function"}function V(e,n){if(U(e))return e;if(W(e))return q(e,n);if(e!=null){let t=e;if(typeof t[Symbol.asyncIterator]=="function")return H(e,n);if(typeof t[Symbol.iterator]=="function")return D(e,n)}return B(e)}function B(...e){return D(e,void 0)}function oe(e){return b(n=>{n.down([[T]])},m(e))}function ie(e){return b(()=>{},m(e))}function se(e,n){return b(t=>{t.down([[p,e]])},m(n))}function ue(e,n){let{signal:t,...u}=n??{},o=m(u),r=o.resubscribable===void 0?{...o,resubscribable:!0}:o;return b(i=>{let s,a=!1;try{let d=e();s=V(d,n).subscribe(c=>{if(!a)for(let l of c){let v=l[0];if(v!==S)if(v===h)i.emit(l[1]);else if(v===T){a=!0,i.down([[T]]);break}else if(v===p){a=!0,i.down([[p,l[1]]]);break}else i.down([l])}})}catch(d){let f=d===void 0?new Error("defer: thunk threw undefined"):d;i.down([[p,f]])}return()=>{a=!0,s?.()}},r)}function ae(e,n,t){return w([e],(o,r)=>{let i=o[0];if(i!=null&&i.length>0)for(let s of i)n(s)},{describeKind:"effect",...t}).subscribe(()=>{})}function de(e,n){return w([e],(t,u,o)=>{o.store.buf||(o.store.buf=[]);let r=o.store.buf,i=t[0];if(i!=null&&i.length>0)for(let s of i)r.push(s);if(o.terminalDeps[0]===!0){u.emit([...r]),u.down([[T]]);return}(i==null||i.length===0)&&u.down([[x]])},{describeKind:"derived",completeWhenDepsComplete:!1,...n})}function fe(e,n){return b(t=>e.subscribe(u=>{t.down(u)}),{...m(n),initial:e.cache})}function F(e,n,t){if(n<1)throw new RangeError("replay expects bufferSize >= 1");let u=[],o=b(r=>e.subscribe(i=>{for(let s of i)s[0]===h&&(u.push(s[1]),u.length>n&&u.shift());r.down(i)}),{...m(t),initial:e.cache});return K(o,r=>{for(let i of u)r([[h,i]])})}function ce(e,n){return F(e,1,n)}function le(e){return new Promise((n,t)=>{let u=!1,o=!1,r;r=e.subscribe(i=>{for(let s of i){if(u)return;if(s[0]===h){u=!0,n(s[1]),r?(r(),r=void 0):o=!0;return}if(s[0]===p){u=!0,t(s[1]),r?(r(),r=void 0):o=!0;return}if(s[0]===T){u=!0,t(new Error("completed without DATA")),r?(r(),r=void 0):o=!0;return}}}),o&&(r?.(),r=void 0)})}function R(e,n,t){return new Promise((u,o)=>{let r=!1,i=!1,s,a=t?.skipCurrent===!0;s=e.subscribe(d=>{for(let f of d){if(r)return;if(!(a&&f[0]===h)){if(f[0]===h){let c=f[1];if(n(c)){r=!0,u(c),s?(s(),s=void 0):i=!0;return}}if(f[0]===p){r=!0,o(f[1]),s?(s(),s=void 0):i=!0;return}if(f[0]===T){r=!0,o(new Error("completed without matching value")),s?(s(),s=void 0):i=!0;return}}}}),a=!1,i&&(s?.(),s=void 0)})}var E,M;async function pe(e,n){let t=n?.predicate??(r=>r!=null),u=n?.skipCurrent;if(n?.timeoutMs==null||n.timeoutMs<=0)return await R(e,t,{skipCurrent:u});if(E===void 0){let[r,i]=await Promise.all([import("./resilience-YIWPK4YC.js"),import("./backoff-HPZMEZNF.js")]);E=r.timeout,M=i.NS_PER_MS}let o=E(e,n.timeoutMs*M);return await R(o,t,{skipCurrent:u})}function be(e,n){let t=new AbortController,u=n?.reason??new Error("cancelled via nodeSignal"),o,r=!1,i=()=>{o?(o(),o=void 0):r=!0};return o=e.subscribe(s=>{if(!t.signal.aborted)for(let a of s){if(a[0]===h&&a[1]===!0){t.abort(u),i();return}if(a[0]===p){t.abort(a[1]),i();return}if(a[0]===T){i();return}}}),r&&(o?.(),o=void 0),{signal:t.signal,dispose:()=>{o&&(o(),o=void 0)}}}var me=F;function Te(e){return e.subscribe(()=>{})}function ve(e){let n=I(0);return{node:n,increment(){let t=n.cache??0;return t>=e?!1:(n.down([[A],[h,t+1]]),!0)},get(){return n.cache??0},atCap(){return(n.cache??0)>=e}}}export{L as a,P as b,$ as c,X as d,Z as e,ee as f,ne as g,te as h,re as i,D as j,q as k,H as l,V as m,B as n,oe as o,ie as p,se as q,ue as r,ae as s,de as t,fe as u,F as v,ce as w,le as x,R as y,pe as z,be as A,me as B,Te as C,ve as D};
@@ -1 +0,0 @@
1
- import{b as l,c as p,d as R}from"./chunk-CK2E7BTU.js";import{b as K}from"./chunk-QYADASLV.js";var x={};K(x,{useStore:()=>g,useSubscribe:()=>h,useSubscribeRecord:()=>w});import{createSignal as y,getOwner as T,onCleanup as S}from"solid-js";function h(e){let[c,r]=y(e.cache,{equals:!1}),n=e.subscribe(()=>{r(()=>e.cache)});return T()?S(()=>n()):typeof console<"u"&&console.warn("[graphrefly-ts] useSubscribe called outside a Solid reactive owner \u2014 subscription will not be auto-disposed."),c}function g(e){return[h(e),n=>{e.down([[p],[l,n]])}]}function w(e,c){let[r,n]=y({},{equals:!1}),i=[],d=()=>{for(let s of i)s();i=[]},f=()=>{let s={};for(let o of e.cache??[]){let t=c(o),u={};for(let a of Object.keys(t))u[a]=t[a].cache;s[o]=u}return s},b=s=>{d();for(let o of s){let t=c(o);for(let u of Object.keys(t)){let a=t[u].subscribe(()=>{n(()=>f())});i.push(a)}}n(()=>f())},v=e.subscribe(s=>{s.some(o=>o[0]===l||o[0]===R)&&b(e.cache??[])});return b(e.cache??[]),T()?S(()=>{v(),d()}):typeof console<"u"&&console.warn("[graphrefly-ts] useSubscribeRecord called outside a Solid reactive owner \u2014 subscription will not be auto-disposed."),r}export{h as a,g as b,w as c,x as d};
@@ -1 +0,0 @@
1
- import{b as l,c as y,d as S}from"./chunk-CK2E7BTU.js";import{b as x}from"./chunk-QYADASLV.js";var A={};x(A,{useStore:()=>E,useSubscribe:()=>T,useSubscribeRecord:()=>j});import{useCallback as K,useMemo as g,useRef as v,useSyncExternalStore as h}from"react";function T(e){return h(o=>{let s=!1,t=e.subscribe(()=>{s||o()});return()=>{s=!0,t()}},()=>e.cache,()=>e.cache)}function E(e){let o=T(e),s=K(t=>{e.down([[y],[l,t]])},[e]);return[o,s]}function j(e,o){let s=v(o);s.current=o;let t=g(()=>{let b=()=>{let c={},n=e.cache??[];for(let r of n){let u=s.current(r),a={};for(let d of Object.keys(u))a[d]=u[d].cache;c[r]=a}return c},p=b();return{subscribe:c=>{let n=!1,r=[],u=()=>{for(let f of r)f();r=[]},a=f=>{u();for(let R of f){let i=s.current(R);for(let k of Object.keys(i)){let m=i[k].subscribe(()=>{p=b(),n||c()});r.push(m)}}p=b(),n||c()},d=e.subscribe(f=>{let R=f.some(i=>i[0]===l||i[0]===S);!n&&R&&a(e.cache??[])});return a(e.cache??[]),()=>{n=!0,d(),u()}},getSnapshot:()=>p}},[e]);return h(t.subscribe,t.getSnapshot,t.getSnapshot)}export{T as a,E as b,j as c,A as d};
@@ -1 +0,0 @@
1
- import{d as l,e as d,f as u}from"./chunk-D5RFJOZ2.js";import{randomBytes as E}from"crypto";import{mkdirSync as y,readdirSync as O,readFileSync as k,renameSync as b,unlinkSync as h,writeFileSync as L}from"fs";import{basename as v,dirname as A,join as m}from"path";import{DatabaseSync as w}from"sqlite";function S(n){let t=new TextEncoder,r=new TextDecoder("utf-8",{fatal:!0}),i=o=>{let e="";for(let s of o){if(s.length===1&&/[a-zA-Z0-9_-]/.test(s)){e+=s;continue}for(let p of t.encode(s))e+=`%${p.toString(16).padStart(2,"0")}`}return m(n,`${e}.bin`)},T=o=>{if(!o.endsWith(".bin"))return null;let e=o.slice(0,-4),s=[],p=c=>{for(let g=0;g<c.length;g++)s.push(c.charCodeAt(g))},a=0;for(;a<e.length;){let c=e[a];if(c==="%"&&a+2<e.length){let g=e.slice(a+1,a+3);if(/^[0-9a-f]{2}$/i.test(g)){s.push(Number.parseInt(g,16)),a+=3;continue}}p(c),a+=1}try{return r.decode(new Uint8Array(s))}catch{return null}};return{name:`file:${n}`,read(o){try{let e=k(i(o));return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}catch{return}},write(o,e){y(n,{recursive:!0});let s=i(o),p=v(s),a=A(s),c=m(a,`.${p}.${E(8).toString("hex")}.tmp`);try{L(c,e),b(c,s)}catch(g){try{h(c)}catch{}throw g}},delete(o){try{h(i(o))}catch(e){if(e.code!=="ENOENT")throw e}},list(o){try{let e=O(n),s=[];for(let p of e){if(p.startsWith("."))continue;let a=T(p);a!==null&&(o!==void 0&&!a.startsWith(o)||s.push(a))}return s.sort()}catch(e){if(e.code==="ENOENT")return[];throw e}}}}function f(n){let t=new w(n);return t.exec("CREATE TABLE IF NOT EXISTS graphrefly_storage (k TEXT PRIMARY KEY, v BLOB NOT NULL)"),{name:`sqlite:${n}`,read(r){return t.prepare("SELECT v FROM graphrefly_storage WHERE k = ?").get(r)?.v},write(r,i){t.prepare("INSERT OR REPLACE INTO graphrefly_storage (k, v) VALUES (?, ?)").run(r,i)},delete(r){t.prepare("DELETE FROM graphrefly_storage WHERE k = ?").run(r)},list(r){if(r===void 0)return t.prepare("SELECT k FROM graphrefly_storage ORDER BY k").all().map(e=>e.k);let i=r.replace(/[\\%_]/g,"\\$&");return t.prepare("SELECT k FROM graphrefly_storage WHERE k LIKE ? ESCAPE '\\' ORDER BY k").all(`${i}%`).map(o=>o.k)},close(){try{t.close()}catch{}}}}function K(n,t){return l(S(n),t)}function $(n,t){return d(S(n),t)}function _(n,t){let r=f(n),i=l(r,t);return Object.assign(i,{close:()=>r.close()})}function C(n,t){let r=f(n),i=d(r,t);return Object.assign(i,{close:()=>r.close()})}function I(n,t){return u(S(n),t)}function W(n,t){let r=f(n),i=u(r,t);return Object.assign(i,{close:()=>r.close()})}export{S as a,f as b,K as c,$ as d,_ as e,C as f,I as g,W as h};
@@ -1 +0,0 @@
1
- import{a as N}from"./chunk-L6NSJVJZ.js";import{f as ue,j as ae}from"./chunk-626TESAC.js";import{a as V}from"./chunk-ESMPEKEV.js";import{x as L}from"./chunk-VOPGGIL7.js";import{a as S,b as P,i as se}from"./chunk-4VVTGLXJ.js";import{b as oe,c as R}from"./chunk-35JTVPOX.js";import{m as de}from"./chunk-V5A7M7RJ.js";import{D as F,F as C,m as K,o as Y}from"./chunk-LYCLF26R.js";import{b as y,c as k,d as w,f as U,g as q,h as _,i as T,j as g}from"./chunk-CK2E7BTU.js";var $=class{buf=[];head=0;get size(){return this.buf.length-this.head}push(t){this.buf.push(t)}shift(){if(this.head>=this.buf.length)return;let t=this.buf[this.head];return this.buf[this.head]=void 0,this.head++,this.head>32&&this.head*2>this.buf.length&&(this.buf=this.buf.slice(this.head),this.head=0),t}clear(){this.buf=[],this.head=0}};function W(e,t,n){if(t.length===0)throw new RangeError("budgetGate requires at least one constraint");let r=t.map(c=>c.node),i=[e,...r],l=new $,u=!1,s=!1,o=Symbol("budget-gate"),d=new Array(t.length);function f(){return t.every((c,b)=>c.check(d[b]))}function a(c){for(;l.size>0&&f();){let b=l.shift();c.emit(b)}l.size===0&&s&&(s=!1,c.down([[w]]))}return F([],(c,b)=>{for(let m=0;m<t.length;m++)d[m]=t[m].node.cache;let h=[];for(let m=0;m<i.length;m++){let O=i[m];h.push(O.subscribe(E=>{for(let M of E)p(M,m,b)}))}return()=>{for(let m of h)m()}},{...n,describeKind:"derived",meta:N("resilience","budget_gate",n?.meta)});function p(c,b,h){let m=c[0];if(b===0){if(m===y)return f()&&l.size===0?h.emit(c[1]):(l.push(c[1]),u||(u=!0,h.up([[U,o]]))),!0;if(m===k)return h.down([[k]]),!0;if(m===w)return l.size===0?h.down([[w]]):s=!0,!0;if(m===T||m===g){for(;l.size>0;)h.emit(l.shift());return s=!1,u&&(u=!1,h.up([[q,o]])),h.down([c]),!0}return!1}if(m===y&&(d[b-1]=c[1]),m===y||m===w){let O=f();return O&&l.size>0?(a(h),l.size===0&&u&&(u=!1,h.up([[q,o]]))):!O&&!u&&l.size>0&&(u=!0,h.up([[U,o]])),!0}return m===k?!0:m===g?(h.down([c]),!0):m===T}}function z(e){return typeof e=="object"&&e!==null&&"subscribe"in e&&"down"in e}function fe(e){if(e<=0)throw new RangeError("timeoutMs must be > 0");if(e>9e6)throw new RangeError("timeoutMs must be <= 9_000_000 (\u22482.5h) to stay within safe ns arithmetic")}var D=class extends ae{output;status;lastError;breakerState;droppedCount;rateLimitState;constructor(t,n={}){super(n.name??"resilient_pipeline",n.graph);let r=t,i,l,u;if(n.rateLimit!=null)if(z(n.rateLimit)){let o=r,d=n.rateLimit;r=L(d,f=>{let a={...f,maxBuffer:f.maxBuffer??1/0,meta:N("resilient","rate-limit")};return Z(o,a).node}),this.add(r,{name:"rateLimited"})}else{let o={...n.rateLimit,maxBuffer:n.rateLimit.maxBuffer??1/0,meta:N("resilient","rate-limit")},d=Z(r,o);r=d.node,i=d.droppedCount,l=d.rateLimitState,this.add(r,{name:"rateLimited"}),this.add(i,{name:"droppedCount"}),this.add(l,{name:"rateLimitState"})}if(n.budget!=null)if(z(n.budget)){let o=r,d=n.budget;r=L(d,f=>f.length>0?W(o,f,{meta:N("resilient","budget")}):o),this.add(r,{name:"budgetGated"})}else n.budget.length>0&&(r=W(r,n.budget,{meta:N("resilient","budget")}),this.add(r,{name:"budgetGated"}));if(n.breaker!=null)if(z(n.breaker)){let o=r,d=n.breaker,f=n.breakerOnOpen??"skip";r=L(d,a=>{let p=J(a);return X(p,{onOpen:f,meta:N("resilient","breaker")})(o).node}),this.add(r,{name:"breakerWrapped"})}else{let o=J(n.breaker),d=n.breakerOnOpen??"skip",f=X(o,{onOpen:d,meta:N("resilient","breaker")})(r);r=f.node,u=f.breakerState,this.add(r,{name:"breakerWrapped"}),this.add(u,{name:"breakerState"})}if(n.timeoutMs!=null)if(z(n.timeoutMs)){let o=r,d=n.timeoutMs;r=L(d,f=>(fe(f),H(o,f*1e6,{meta:N("resilient","timeout")}))),this.add(r,{name:"timeoutWrapped"})}else fe(n.timeoutMs),r=H(r,n.timeoutMs*1e6,{meta:N("resilient","timeout")}),this.add(r,{name:"timeoutWrapped"});if(n.retry!=null)if(z(n.retry)){let o=r,d=n.retry;r=L(d,f=>Q(o,{...f,meta:N("resilient","retry")})),this.add(r,{name:"retryWrapped"})}else r=Q(r,{...n.retry,meta:N("resilient","retry")}),this.add(r,{name:"retryWrapped"});n.fallback!==void 0&&(r=ce(r,n.fallback,{meta:N("resilient","fallback")}),this.add(r,{name:"fallbackWrapped"}));let s=le(r,{initialStatus:n.initialStatus??"pending",meta:N("resilient","status")});this.output=s.node,this.status=s.status,this.lastError=s.error,this.breakerState=u,this.droppedCount=i,this.rateLimitState=l,this.add(this.output,{name:"output"}),this.add(this.status,{name:"status"}),this.add(this.lastError,{name:"lastError"})}};function ye(e,t={}){let n=new D(e,t);return n.tagFactory("resilientPipeline",oe(t)),n}function v(e){return{describeKind:"derived",...e}}function we(e){return e<0?0:e}function re(e){return e[1]}function Te(e){if(typeof e!="number"||!Number.isFinite(e))throw new TypeError("backoff strategy must return a finite number");return e<0?0:e}function me(e){let t=e?.count,n=e?.backoff;if(n!==void 0&&t===void 0)throw new RangeError("retry({ backoff }) requires explicit count to prevent unbounded retries; pass { count: <n>, backoff: ... }");let r=t!==void 0?t:0;if(r<0)throw new RangeError("retry count must be >= 0");let i=n===void 0?null:typeof n=="string"?se(n):n;return{maxRetries:r,strategy:i}}function pe(e){let t={};return e?.count!==void 0&&(t.count=e.count),typeof e?.backoff=="string"&&(t.backoff=e.backoff),Object.keys(t).length>0?t:void 0}function be(e,t,n){let r=0,i=!1,l=null,u,s=new V;function o(){u?.(),u=void 0}function d(a){if(i)return;if(r>=e.maxRetries){o(),n.down([[g,a]]);return}let p=e.strategy===null?0:e.strategy(r,a,l);if(p==null){o(),n.down([[g,a]]);return}let c;try{c=Te(p)}catch{o(),n.down([[g,a]]);return}l=c,r+=1,o();let b=c>0?c/1e6:1;s.start(b,()=>{i||f()})}function f(){s.cancel(),o();let a;try{a=t()}catch(p){d(p);return}u=a.subscribe(p=>{if(!i)for(let c of p){let b=c[0];if(b===k)n.down([[k]]);else if(b===y)r=0,l=null,n.emit(c[1]);else if(b===w)n.down([[w]]);else if(b===T)o(),n.down([[T]]);else if(b===g){d(re(c));return}else n.down([c])}})}return f(),()=>{i=!0,s.cancel(),o()}}function Q(e,t){return typeof e=="function"?ge(e,t):ke(e,t)}function ke(e,t){let n=me(t);return C(r=>be(n,()=>e,r),{...v(),initial:e.cache,meta:{...t?.meta??{},...R("retry",pe(t))}})}function ge(e,t){let n=me(t);return C(r=>be(n,e,r),{...v(),initial:t?.initial,meta:{...t?.meta??{},...R("retry",pe(t))}})}var ee=class extends Error{name="CircuitOpenError";constructor(){super("Circuit breaker is open")}};function J(e){let t=Math.max(1,e?.failureThreshold??5),n=we(e?.cooldownNs??30*1e9),r=e?.cooldown??null,i=Math.max(1,e?.halfOpenMax??1),l=e?.now??Y,u="closed",s=0,o=0,d=0,f=n,a=0;function p(){if(!r)return n;let h=r(o);return h!==null?h:n}function c(){u="open",f=p(),d=l(),a=0}return{canExecute(){return u==="closed"?!0:u==="open"?l()-d>=f?(u="half-open",a=1,!0):!1:a<i?(a++,!0):!1},recordSuccess(){u==="half-open"?(u="closed",s=0,o=0):u==="closed"&&(s=0)},recordFailure(h){if(u==="half-open"){o++,c();return}u==="closed"&&(s++,s>=t&&c())},get state(){return u},get failureCount(){return s},reset(){u="closed",s=0,o=0,a=0}}}function X(e,t){let n=t?.onOpen??"skip",r=t?.meta;return i=>{let l=F([],(u,s)=>{function o(){l.meta.breakerState.down([[y,e.state]])}let d=i.subscribe(f=>{for(let a of f){let p=a[0];p===k?s.down([[k]]):p===y?e.canExecute()?(o(),s.emit(a[1])):(o(),n==="error"?s.down([[g,new ee]]):s.down([[w]])):p===w?s.down([[w]]):p===T?(e.recordSuccess(),o(),s.down([[T]])):p===g?(e.recordFailure(re(a)),o(),s.down([a])):s.down([a])}});return o(),d},{...v(),meta:{...r??{},breakerState:e.state,...R("withBreaker",{onOpen:n})},completeWhenDepsComplete:!1,initial:i.cache});return{node:l,breakerState:l.meta.breakerState}}}function Ne(e,t,n){if(e<=0)throw new RangeError("capacity must be > 0");if(t<0)throw new RangeError("refillPerSecond must be >= 0");let r=n?.clock??Y,i=e,l=r();function u(s){if(t>0){let o=s-l;i=Math.min(e,i+o/1e9*t)}l=s}return{available(){return u(r()),i},tryConsume(s=1){if(s<=0)return!0;let o=r();return u(o),i>=s?(i-=s,!0):!1},putBack(s=1){s<=0||(u(r()),i=Math.min(e,i+s))}}}var te=class extends Error{name="RateLimiterOverflowError";constructor(t){super(`rateLimiter buffer overflow (maxBuffer=${t})`)}};function Re(e,t){return e.droppedCount===t.droppedCount&&e.pendingCount===t.pendingCount&&e.paused===t.paused}var G=Object.freeze({droppedCount:0,pendingCount:0,paused:!1});function Z(e,t){let{maxEvents:n,windowNs:r}=t;if(n<=0)throw new RangeError("maxEvents must be > 0");if(r<=0)throw new RangeError("windowNs must be > 0");let i=t.maxBuffer;if(i===void 0)throw new RangeError("rateLimiter requires explicit maxBuffer (use Infinity to opt in to unbounded)");let l=i===1/0;if(!l&&(!Number.isInteger(i)||i<1))throw new RangeError("maxBuffer must be a positive integer (or Infinity for unbounded)");let u=t.onOverflow??"drop-newest",s=n*1e9/r,o=C(d=>{let f=Ne(n,s),a=l?Se():Oe(i),p=new V,c=!1,b=0,h=1e9/s,m=o.meta.droppedCount,O=o.meta.rateLimitState,E=G;function M(){m.emit(b);let A={droppedCount:b,pendingCount:a.size,paused:a.size>0};Re(E,A)||(E=A,O.emit(A))}E=G,m.emit(0),O.emit(G);function ie(){for(;a.size>0;)if(f.tryConsume(1))d.emit(a.shift()),M();else{p.start(Math.max(1,h/1e6),ie);return}}function j(){b+=1,M()}function I(){for(c=!0,p.cancel();a.size>0;)a.shift();b=0}let he=e.subscribe(A=>{for(let x of A){if(c)return;let B=x[0];if(B===k)d.down([[k]]);else if(B===y){if(!l&&a.size>=i)if(u==="drop-newest")j();else if(u==="drop-oldest")a.shift(),a.push(x[1]),j();else{j(),I(),d.down([[g,new te(i)]]);return}else a.push(x[1]),M();ie()}else if(B===w)d.down([[w]]);else if(B===T)I(),d.down([[T]]);else if(B===g)I(),d.down([x]);else if(B===_){I(),d.down([x]);return}else d.down([x])}});return()=>{c=!0,p.cancel(),he()}},{...v(),initial:e.cache,meta:{...t.meta??{},droppedCount:0,rateLimitState:G,...R("rateLimiter",t)}});return{node:o,droppedCount:o.meta.droppedCount,rateLimitState:o.meta.rateLimitState}}function Oe(e){let t=new ue(e);return{push:n=>t.push(n),shift:()=>t.shift(),get size(){return t.size}}}function Se(){let e=[];return{push:t=>{e.push(t)},shift:()=>e.shift(),get size(){return e.length}}}function le(e,t){let n=t?.initialStatus??"pending",r=t?.meta,i=F([],(l,u)=>{let s=n;return i.meta.status.down([[y,n]]),i.meta.error.down([[y,null]]),e.subscribe(d=>{for(let f of d){let a=f[0];if(a===k)u.down([[k]]);else if(a===y)s==="errored"?K(()=>{i.meta.error.down([[y,null]]),i.meta.status.down([[y,"running"]])}):i.meta.status.down([[y,"running"]]),s="running",u.emit(f[1]);else if(a===w)u.down([[w]]);else if(a===T)i.meta.status.down([[y,"completed"]]),s="completed",u.down([[T]]);else if(a===g){let p=re(f);K(()=>{i.meta.error.down([[y,p]]),i.meta.status.down([[y,"errored"]])}),s="errored",u.down([f])}else u.down([f])}})},{...v(),meta:{...r??{},status:n,error:null,...R("withStatus",{initialStatus:n})},completeWhenDepsComplete:!1,resubscribable:!0,initial:e.cache});return{node:i,status:i.meta.status,error:i.meta.error}}var ne=class extends Error{name="TimeoutError";constructor(t){super(`Timed out after ${t/1e6}ms`)}};function ve(e){return e!=null&&typeof e=="object"&&"cache"in e&&typeof e.subscribe=="function"}function xe(e){return e!=null&&typeof e.then=="function"}function Be(e){return e!=null&&typeof e=="object"&&typeof e[Symbol.asyncIterator]=="function"}function ce(e,t,n){let r=n?.meta;return C(i=>{let l,u;function s(){u?.(),u=void 0,ve(t)||xe(t)||Be(t)?l=de(t).subscribe(d=>{i.down(d);for(let f of d){let a=f[0];if(a===T||a===g||a===_){l=void 0;return}}}):(i.emit(t),i.down([[T]]))}return u=e.subscribe(o=>{for(let d of o){let f=d[0];if(f===k)i.down([[k]]);else if(f===y)i.emit(d[1]);else if(f===w)i.down([[w]]);else if(f===T)i.down([[T]]);else if(f===g){s();return}else if(f===_){l?.(),i.down([d]);return}else i.down([d])}}),()=>{u?.(),l?.()}},{...v(),initial:e.cache,meta:{...r??{},...R("fallback")}})}function H(e,t,n){if(t<=0)throw new RangeError("timeoutNs must be > 0");let r=n?.meta;return C(i=>{let l=!1,u=new V;function s(){let d=t/1e6;u.start(d,()=>{l||(l=!0,o(),i.down([[g,new ne(t)]]))})}let o=e.subscribe(d=>{for(let f of d){if(l)return;let a=f[0];if(a===k)i.down([[k]]);else if(a===y)s(),i.emit(f[1]);else if(a===w)i.down([[w]]);else if(a===T){u.cancel(),l=!0,i.down([[T]]);return}else if(a===g){u.cancel(),l=!0,i.down([f]);return}else if(a===_){u.cancel(),l=!0,i.down([f]);return}else i.down([f])}});return s(),()=>{l=!0,u.cancel(),o()}},{...v(),initial:e.cache,meta:{...r??{},...R("timeout",{timeoutNs:t})}})}export{W as a,D as b,ye as c,Q as d,ee as e,J as f,X as g,Ne as h,te as i,Z as j,le as k,ne as l,ce as m,H as n};