@graphrefly/graphrefly 0.44.0 → 0.46.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 (720) hide show
  1. package/README.md +22 -19
  2. package/dist/_internal-B23BagFd.d.cts +33 -0
  3. package/dist/_internal-B23BagFd.d.ts +33 -0
  4. package/dist/adaptive-rate-limiter-Dch_xYIi.d.cts +111 -0
  5. package/dist/adaptive-rate-limiter-Dch_xYIi.d.ts +111 -0
  6. package/dist/agents-C0Ji9ldU.d.cts +629 -0
  7. package/dist/agents-C9zexT7I.d.ts +629 -0
  8. package/dist/audit-BAXb3VOg.d.ts +246 -0
  9. package/dist/audit-C_bPfkqS.d.cts +246 -0
  10. package/dist/backoff-7KIK3WQW.js +24 -0
  11. package/dist/backoff-7KIK3WQW.js.map +1 -0
  12. package/dist/backoff-Bnb9OoPh.d.cts +6 -0
  13. package/dist/backoff-Bnb9OoPh.d.ts +6 -0
  14. package/dist/base/composition/index.cjs +811 -0
  15. package/dist/base/composition/index.cjs.map +1 -0
  16. package/dist/base/composition/index.d.cts +469 -0
  17. package/dist/base/composition/index.d.ts +469 -0
  18. package/dist/base/composition/index.js +40 -0
  19. package/dist/base/composition/index.js.map +1 -0
  20. package/dist/base/index.cjs +6336 -0
  21. package/dist/base/index.cjs.map +1 -0
  22. package/dist/base/index.d.cts +22 -0
  23. package/dist/base/index.d.ts +22 -0
  24. package/dist/base/index.js +259 -0
  25. package/dist/base/index.js.map +1 -0
  26. package/dist/base/io/index.cjs +3270 -0
  27. package/dist/base/io/index.cjs.map +1 -0
  28. package/dist/base/io/index.d.cts +2245 -0
  29. package/dist/base/io/index.d.ts +2245 -0
  30. package/dist/base/io/index.js +117 -0
  31. package/dist/base/io/index.js.map +1 -0
  32. package/dist/base/meta/index.cjs +43 -0
  33. package/dist/base/meta/index.cjs.map +1 -0
  34. package/dist/base/meta/index.d.cts +45 -0
  35. package/dist/base/meta/index.d.ts +45 -0
  36. package/dist/base/meta/index.js +13 -0
  37. package/dist/base/meta/index.js.map +1 -0
  38. package/dist/base/mutation/index.cjs +200 -0
  39. package/dist/base/mutation/index.cjs.map +1 -0
  40. package/dist/base/mutation/index.d.cts +177 -0
  41. package/dist/base/mutation/index.d.ts +177 -0
  42. package/dist/base/mutation/index.js +22 -0
  43. package/dist/base/mutation/index.js.map +1 -0
  44. package/dist/base/render/index.cjs +1120 -0
  45. package/dist/base/render/index.cjs.map +1 -0
  46. package/dist/{extra/render/index.d.ts → base/render/index.d.cts} +75 -31
  47. package/dist/{extra/render/index.d.cts → base/render/index.d.ts} +75 -31
  48. package/dist/base/render/index.js +24 -0
  49. package/dist/base/render/index.js.map +1 -0
  50. package/dist/base/sources/browser/index.cjs +172 -0
  51. package/dist/base/sources/browser/index.cjs.map +1 -0
  52. package/dist/base/sources/browser/index.d.cts +84 -0
  53. package/dist/base/sources/browser/index.d.ts +84 -0
  54. package/dist/base/sources/browser/index.js +151 -0
  55. package/dist/base/sources/browser/index.js.map +1 -0
  56. package/dist/base/sources/event/index.cjs +98 -0
  57. package/dist/base/sources/event/index.cjs.map +1 -0
  58. package/dist/base/sources/event/index.d.cts +91 -0
  59. package/dist/base/sources/event/index.d.ts +91 -0
  60. package/dist/base/sources/event/index.js +13 -0
  61. package/dist/base/sources/event/index.js.map +1 -0
  62. package/dist/base/sources/index.cjs +755 -0
  63. package/dist/base/sources/index.cjs.map +1 -0
  64. package/dist/{extra/sources.d.ts → base/sources/index.d.cts} +74 -301
  65. package/dist/{extra/sources.d.cts → base/sources/index.d.ts} +74 -301
  66. package/dist/base/sources/index.js +42 -0
  67. package/dist/base/sources/index.js.map +1 -0
  68. package/dist/base/sources/node/index.cjs +320 -0
  69. package/dist/base/sources/node/index.cjs.map +1 -0
  70. package/dist/{extra/node.d.ts → base/sources/node/index.d.cts} +35 -37
  71. package/dist/{extra/node.d.cts → base/sources/node/index.d.ts} +35 -37
  72. package/dist/base/sources/node/index.js +306 -0
  73. package/dist/base/sources/node/index.js.map +1 -0
  74. package/dist/base/utils/index.cjs +37 -0
  75. package/dist/base/utils/index.cjs.map +1 -0
  76. package/dist/base/utils/index.d.cts +37 -0
  77. package/dist/base/utils/index.d.ts +37 -0
  78. package/dist/base/utils/index.js +11 -0
  79. package/dist/base/utils/index.js.map +1 -0
  80. package/dist/base/worker/index.cjs +548 -0
  81. package/dist/base/worker/index.cjs.map +1 -0
  82. package/dist/base/worker/index.d.cts +207 -0
  83. package/dist/base/worker/index.d.ts +207 -0
  84. package/dist/base/worker/index.js +20 -0
  85. package/dist/base/worker/index.js.map +1 -0
  86. package/dist/breaker-C9skL3d8.d.ts +175 -0
  87. package/dist/breaker-ugSdq54q.d.cts +175 -0
  88. package/dist/{cascading-BglDkMdX.d.cts → cascading-CSSbKGrJ.d.ts} +3 -3
  89. package/dist/{cascading-MFgxu7Yo.d.ts → cascading-baGkiihI.d.cts} +3 -3
  90. package/dist/chunk-255UCBG4.js +58 -0
  91. package/dist/chunk-255UCBG4.js.map +1 -0
  92. package/dist/chunk-2LO3EL4W.js +1 -0
  93. package/dist/chunk-2LO3EL4W.js.map +1 -0
  94. package/dist/chunk-2OB3CEJS.js +1065 -0
  95. package/dist/chunk-2OB3CEJS.js.map +1 -0
  96. package/dist/chunk-36NMM65U.js +144 -0
  97. package/dist/chunk-36NMM65U.js.map +1 -0
  98. package/dist/chunk-3CEXCBN6.js +1 -0
  99. package/dist/chunk-3CEXCBN6.js.map +1 -0
  100. package/dist/chunk-3MUSLI6E.js +105 -0
  101. package/dist/chunk-3MUSLI6E.js.map +1 -0
  102. package/dist/chunk-3PSLNJDU.js +884 -0
  103. package/dist/chunk-3PSLNJDU.js.map +1 -0
  104. package/dist/chunk-3QZY5BI7.js +92 -0
  105. package/dist/chunk-3QZY5BI7.js.map +1 -0
  106. package/dist/chunk-42FQ27MQ.js +594 -0
  107. package/dist/chunk-42FQ27MQ.js.map +1 -0
  108. package/dist/chunk-4GYMCUDZ.js +1085 -0
  109. package/dist/chunk-4GYMCUDZ.js.map +1 -0
  110. package/dist/chunk-4S53H2KR.js +382 -0
  111. package/dist/chunk-4S53H2KR.js.map +1 -0
  112. package/dist/chunk-4XCHZRUJ.js +128 -0
  113. package/dist/chunk-4XCHZRUJ.js.map +1 -0
  114. package/dist/chunk-5THCXDWY.js +725 -0
  115. package/dist/chunk-5THCXDWY.js.map +1 -0
  116. package/dist/chunk-6XZYT4SW.js +256 -0
  117. package/dist/chunk-6XZYT4SW.js.map +1 -0
  118. package/dist/chunk-7EGRP2VX.js +76 -0
  119. package/dist/chunk-7EGRP2VX.js.map +1 -0
  120. package/dist/chunk-A7KV5UK4.js +150 -0
  121. package/dist/chunk-A7KV5UK4.js.map +1 -0
  122. package/dist/chunk-APY2SS5X.js +156 -0
  123. package/dist/chunk-APY2SS5X.js.map +1 -0
  124. package/dist/chunk-AZDQPQ3V.js +66 -0
  125. package/dist/chunk-AZDQPQ3V.js.map +1 -0
  126. package/dist/chunk-BU3SEFA5.js +90 -0
  127. package/dist/chunk-BU3SEFA5.js.map +1 -0
  128. package/dist/chunk-BXGZFGZ4.js +189 -0
  129. package/dist/chunk-BXGZFGZ4.js.map +1 -0
  130. package/dist/chunk-CGHORL6G.js +579 -0
  131. package/dist/chunk-CGHORL6G.js.map +1 -0
  132. package/dist/chunk-CXANAIZU.js +530 -0
  133. package/dist/chunk-CXANAIZU.js.map +1 -0
  134. package/dist/chunk-CZQHCKKG.js +1 -0
  135. package/dist/chunk-CZQHCKKG.js.map +1 -0
  136. package/dist/chunk-DKNHAICT.js +133 -0
  137. package/dist/chunk-DKNHAICT.js.map +1 -0
  138. package/dist/chunk-DM4OMPWK.js +584 -0
  139. package/dist/chunk-DM4OMPWK.js.map +1 -0
  140. package/dist/chunk-DMSNO6ZB.js +452 -0
  141. package/dist/chunk-DMSNO6ZB.js.map +1 -0
  142. package/dist/chunk-E5OZPDIW.js +229 -0
  143. package/dist/chunk-E5OZPDIW.js.map +1 -0
  144. package/dist/chunk-EVYY4X5A.js +509 -0
  145. package/dist/chunk-EVYY4X5A.js.map +1 -0
  146. package/dist/chunk-FDFD67UO.js +1 -0
  147. package/dist/chunk-FDFD67UO.js.map +1 -0
  148. package/dist/chunk-FMPF42Q4.js +13 -0
  149. package/dist/chunk-FMPF42Q4.js.map +1 -0
  150. package/dist/chunk-FR6RGA3B.js +1277 -0
  151. package/dist/chunk-FR6RGA3B.js.map +1 -0
  152. package/dist/chunk-FW23JYNQ.js +454 -0
  153. package/dist/chunk-FW23JYNQ.js.map +1 -0
  154. package/dist/chunk-GBCENOLN.js +1575 -0
  155. package/dist/chunk-GBCENOLN.js.map +1 -0
  156. package/dist/chunk-HL7HUJIX.js +1 -0
  157. package/dist/chunk-HL7HUJIX.js.map +1 -0
  158. package/dist/chunk-HULCUY35.js +2508 -0
  159. package/dist/chunk-HULCUY35.js.map +1 -0
  160. package/dist/chunk-IHTWQEDR.js +169 -0
  161. package/dist/chunk-IHTWQEDR.js.map +1 -0
  162. package/dist/chunk-IJRR6YAI.js +128 -0
  163. package/dist/chunk-IJRR6YAI.js.map +1 -0
  164. package/dist/chunk-JGFRAFDL.js +221 -0
  165. package/dist/chunk-JGFRAFDL.js.map +1 -0
  166. package/dist/chunk-KIIXR252.js +211 -0
  167. package/dist/chunk-KIIXR252.js.map +1 -0
  168. package/dist/chunk-KN3H5CNT.js +11 -0
  169. package/dist/chunk-KN3H5CNT.js.map +1 -0
  170. package/dist/chunk-KPG3DGLA.js +1 -0
  171. package/dist/chunk-KPG3DGLA.js.map +1 -0
  172. package/dist/chunk-KRNQ6RGQ.js +1 -0
  173. package/dist/chunk-KRNQ6RGQ.js.map +1 -0
  174. package/dist/chunk-LBAJK24K.js +1071 -0
  175. package/dist/chunk-LBAJK24K.js.map +1 -0
  176. package/dist/chunk-MLTPJMH6.js +417 -0
  177. package/dist/chunk-MLTPJMH6.js.map +1 -0
  178. package/dist/chunk-N3SZ7BMH.js +95 -0
  179. package/dist/chunk-N3SZ7BMH.js.map +1 -0
  180. package/dist/chunk-NDUD3IMO.js +540 -0
  181. package/dist/chunk-NDUD3IMO.js.map +1 -0
  182. package/dist/chunk-NY2PYHNC.js +873 -0
  183. package/dist/chunk-NY2PYHNC.js.map +1 -0
  184. package/dist/chunk-O3MT7DYI.js +225 -0
  185. package/dist/chunk-O3MT7DYI.js.map +1 -0
  186. package/dist/chunk-OCUDSN63.js +2386 -0
  187. package/dist/chunk-OCUDSN63.js.map +1 -0
  188. package/dist/chunk-OIWU3NYV.js +199 -0
  189. package/dist/chunk-OIWU3NYV.js.map +1 -0
  190. package/dist/chunk-OO5BM6CJ.js +1153 -0
  191. package/dist/chunk-OO5BM6CJ.js.map +1 -0
  192. package/dist/chunk-OQUIJT7A.js +1 -0
  193. package/dist/chunk-OQUIJT7A.js.map +1 -0
  194. package/dist/chunk-P5LBT622.js +105 -0
  195. package/dist/chunk-P5LBT622.js.map +1 -0
  196. package/dist/chunk-PKGQG5QQ.js +519 -0
  197. package/dist/chunk-PKGQG5QQ.js.map +1 -0
  198. package/dist/chunk-PKPO3JTZ.js +561 -0
  199. package/dist/chunk-PKPO3JTZ.js.map +1 -0
  200. package/dist/chunk-PL5UDIQ5.js +118 -0
  201. package/dist/chunk-PL5UDIQ5.js.map +1 -0
  202. package/dist/chunk-PZWISPIQ.js +432 -0
  203. package/dist/chunk-PZWISPIQ.js.map +1 -0
  204. package/dist/chunk-Q3EYOCZB.js +510 -0
  205. package/dist/chunk-Q3EYOCZB.js.map +1 -0
  206. package/dist/chunk-QMBYUVRL.js +15 -0
  207. package/dist/chunk-QMBYUVRL.js.map +1 -0
  208. package/dist/chunk-RAGGHLCV.js +200 -0
  209. package/dist/chunk-RAGGHLCV.js.map +1 -0
  210. package/dist/chunk-RGL53X5G.js +574 -0
  211. package/dist/chunk-RGL53X5G.js.map +1 -0
  212. package/dist/chunk-RJOG4IJU.js +1039 -0
  213. package/dist/chunk-RJOG4IJU.js.map +1 -0
  214. package/dist/chunk-SOOKUYVM.js +403 -0
  215. package/dist/chunk-SOOKUYVM.js.map +1 -0
  216. package/dist/chunk-T5BN5KG7.js +1 -0
  217. package/dist/chunk-T5BN5KG7.js.map +1 -0
  218. package/dist/chunk-TP7244Y6.js +207 -0
  219. package/dist/chunk-TP7244Y6.js.map +1 -0
  220. package/dist/chunk-TSBFTJKM.js +57 -0
  221. package/dist/chunk-TSBFTJKM.js.map +1 -0
  222. package/dist/chunk-URQ2CBBF.js +143 -0
  223. package/dist/chunk-URQ2CBBF.js.map +1 -0
  224. package/dist/chunk-W2BOPXTI.js +1 -0
  225. package/dist/chunk-W2BOPXTI.js.map +1 -0
  226. package/dist/chunk-WKSWLSCX.js +207 -0
  227. package/dist/chunk-WKSWLSCX.js.map +1 -0
  228. package/dist/chunk-Y52CS6YA.js +88 -0
  229. package/dist/chunk-Y52CS6YA.js.map +1 -0
  230. package/dist/chunk-YCBUWK77.js +92 -0
  231. package/dist/chunk-YCBUWK77.js.map +1 -0
  232. package/dist/chunk-YJ4U2D2C.js +314 -0
  233. package/dist/chunk-YJ4U2D2C.js.map +1 -0
  234. package/dist/chunk-Z4YXAUDN.js +239 -0
  235. package/dist/chunk-Z4YXAUDN.js.map +1 -0
  236. package/dist/chunk-Z6EGP5D7.js +92 -0
  237. package/dist/chunk-Z6EGP5D7.js.map +1 -0
  238. package/dist/compat/index.cjs +3100 -9
  239. package/dist/compat/index.cjs.map +1 -0
  240. package/dist/compat/index.d.cts +112 -18
  241. package/dist/compat/index.d.ts +112 -18
  242. package/dist/compat/index.js +176 -1
  243. package/dist/compat/index.js.map +1 -0
  244. package/dist/compat/jotai/index.cjs +149 -1
  245. package/dist/compat/jotai/index.cjs.map +1 -0
  246. package/dist/compat/jotai/index.d.cts +2 -2
  247. package/dist/compat/jotai/index.d.ts +2 -2
  248. package/dist/compat/jotai/index.js +8 -1
  249. package/dist/compat/jotai/index.js.map +1 -0
  250. package/dist/compat/nanostores/index.cjs +205 -1
  251. package/dist/compat/nanostores/index.cjs.map +1 -0
  252. package/dist/compat/nanostores/index.d.cts +2 -2
  253. package/dist/compat/nanostores/index.d.ts +2 -2
  254. package/dist/compat/nanostores/index.js +22 -1
  255. package/dist/compat/nanostores/index.js.map +1 -0
  256. package/dist/compat/nestjs/index.cjs +2241 -9
  257. package/dist/compat/nestjs/index.cjs.map +1 -0
  258. package/dist/compat/nestjs/index.d.cts +7 -10
  259. package/dist/compat/nestjs/index.d.ts +7 -10
  260. package/dist/compat/nestjs/index.js +78 -1
  261. package/dist/compat/nestjs/index.js.map +1 -0
  262. package/dist/compat/react/index.cjs +114 -1
  263. package/dist/compat/react/index.cjs.map +1 -0
  264. package/dist/compat/react/index.d.cts +2 -2
  265. package/dist/compat/react/index.d.ts +2 -2
  266. package/dist/compat/react/index.js +12 -1
  267. package/dist/compat/react/index.js.map +1 -0
  268. package/dist/compat/solid/index.cjs +101 -1
  269. package/dist/compat/solid/index.cjs.map +1 -0
  270. package/dist/compat/solid/index.d.cts +2 -2
  271. package/dist/compat/solid/index.d.ts +2 -2
  272. package/dist/compat/solid/index.js +12 -1
  273. package/dist/compat/solid/index.js.map +1 -0
  274. package/dist/compat/svelte/index.cjs +104 -1
  275. package/dist/compat/svelte/index.cjs.map +1 -0
  276. package/dist/compat/svelte/index.d.cts +2 -2
  277. package/dist/compat/svelte/index.d.ts +2 -2
  278. package/dist/compat/svelte/index.js +12 -1
  279. package/dist/compat/svelte/index.js.map +1 -0
  280. package/dist/compat/vue/index.cjs +119 -1
  281. package/dist/compat/vue/index.cjs.map +1 -0
  282. package/dist/compat/vue/index.d.cts +2 -2
  283. package/dist/compat/vue/index.d.ts +2 -2
  284. package/dist/compat/vue/index.js +12 -1
  285. package/dist/compat/vue/index.js.map +1 -0
  286. package/dist/compat/zustand/index.cjs +69 -3
  287. package/dist/compat/zustand/index.cjs.map +1 -0
  288. package/dist/compat/zustand/index.d.cts +2 -6
  289. package/dist/compat/zustand/index.d.ts +2 -6
  290. package/dist/compat/zustand/index.js +8 -1
  291. package/dist/compat/zustand/index.js.map +1 -0
  292. package/dist/distill-De6Rnn15.d.cts +48 -0
  293. package/dist/distill-De6Rnn15.d.ts +48 -0
  294. package/dist/external-register-CWyroXb_.d.cts +138 -0
  295. package/dist/external-register-CWyroXb_.d.ts +138 -0
  296. package/dist/{fallback-74oxi34l.d.cts → fallback-Bx46zqky.d.cts} +3 -10
  297. package/dist/{fallback-DUyyBTBK.d.ts → fallback-pIWW8A2d.d.ts} +3 -10
  298. package/dist/guarded-execution-BcdtxeBk.d.ts +207 -0
  299. package/dist/guarded-execution-C-3hnP6A.d.cts +207 -0
  300. package/dist/{index-CBGUK09R.d.ts → index-5SU_O78r.d.cts} +5 -5
  301. package/dist/{index-BmZXHqkE.d.ts → index-B6pxYJzO.d.cts} +1 -1
  302. package/dist/{index-hcDJ8PSI.d.cts → index-B6pxYJzO.d.ts} +1 -1
  303. package/dist/{index-C5stwKcw.d.cts → index-BFsng6v1.d.cts} +1 -1
  304. package/dist/{index-CdAlHFEt.d.ts → index-BFsng6v1.d.ts} +1 -1
  305. package/dist/{index-_6ODbuOu.d.cts → index-Bg-LwEt-.d.cts} +1 -1
  306. package/dist/{index-CviRnE4K.d.ts → index-Bg-LwEt-.d.ts} +1 -1
  307. package/dist/{index-CBBLl_rc.d.ts → index-Brp888t0.d.cts} +1 -1
  308. package/dist/{index-BQSKmbuG.d.cts → index-Brp888t0.d.ts} +1 -1
  309. package/dist/{index-sqkqlb1p.d.ts → index-CDfk6jHN.d.cts} +1 -1
  310. package/dist/{index-ZVQhLa2i.d.cts → index-CDfk6jHN.d.ts} +1 -1
  311. package/dist/{index-Climxqsu.d.cts → index-CEXCtYYJ.d.ts} +5 -5
  312. package/dist/index-DLAxYaN5.d.cts +169 -0
  313. package/dist/index-DLAxYaN5.d.ts +169 -0
  314. package/dist/{index-CK29LV56.d.cts → index-DeWbQzMe.d.cts} +1 -1
  315. package/dist/{index-CPQlGA29.d.ts → index-DeWbQzMe.d.ts} +1 -1
  316. package/dist/{index-BrPrLl4e.d.cts → index-dX9IzPqj.d.cts} +1 -1
  317. package/dist/{index-Dgl1HpPn.d.ts → index-dX9IzPqj.d.ts} +1 -1
  318. package/dist/index.cjs +25934 -191
  319. package/dist/index.cjs.map +1 -0
  320. package/dist/index.d.cts +58 -94
  321. package/dist/index.d.ts +58 -94
  322. package/dist/index.js +852 -1
  323. package/dist/index.js.map +1 -0
  324. package/dist/layout-types-B5aiHYgk.d.cts +72 -0
  325. package/dist/layout-types-B5aiHYgk.d.ts +72 -0
  326. package/dist/memory-composers-BryDrRBX.d.cts +529 -0
  327. package/dist/memory-composers-CVQqPYEV.d.ts +529 -0
  328. package/dist/{observable-DWjNfLvC.d.ts → observable-BXQoW1P-.d.cts} +1 -1
  329. package/dist/{observable-e3eiPPFy.d.cts → observable-BXQoW1P-.d.ts} +1 -1
  330. package/dist/{pipeline-graph-Sgj0gCwn.d.ts → pipeline-graph-Ce47CB6Y.d.cts} +13 -10
  331. package/dist/{pipeline-graph-CIKhynsF.d.cts → pipeline-graph-DXCwY9vG.d.ts} +13 -10
  332. package/dist/presets/ai/index.cjs +4377 -0
  333. package/dist/presets/ai/index.cjs.map +1 -0
  334. package/dist/presets/ai/index.d.cts +98 -0
  335. package/dist/presets/ai/index.d.ts +98 -0
  336. package/dist/presets/ai/index.js +54 -0
  337. package/dist/presets/ai/index.js.map +1 -0
  338. package/dist/presets/harness/index.cjs +5929 -0
  339. package/dist/presets/harness/index.cjs.map +1 -0
  340. package/dist/presets/harness/index.d.cts +566 -0
  341. package/dist/presets/harness/index.d.ts +566 -0
  342. package/dist/presets/harness/index.js +71 -0
  343. package/dist/presets/harness/index.js.map +1 -0
  344. package/dist/presets/index.cjs +9782 -0
  345. package/dist/presets/index.cjs.map +1 -0
  346. package/dist/presets/index.d.cts +28 -0
  347. package/dist/presets/index.d.ts +28 -0
  348. package/dist/presets/index.js +129 -0
  349. package/dist/presets/index.js.map +1 -0
  350. package/dist/presets/inspect/index.cjs +1087 -0
  351. package/dist/presets/inspect/index.cjs.map +1 -0
  352. package/dist/presets/inspect/index.d.cts +172 -0
  353. package/dist/presets/inspect/index.d.ts +172 -0
  354. package/dist/presets/inspect/index.js +21 -0
  355. package/dist/presets/inspect/index.js.map +1 -0
  356. package/dist/presets/resilience/index.cjs +1593 -0
  357. package/dist/presets/resilience/index.cjs.map +1 -0
  358. package/dist/presets/resilience/index.d.cts +205 -0
  359. package/dist/presets/resilience/index.d.ts +205 -0
  360. package/dist/presets/resilience/index.js +18 -0
  361. package/dist/presets/resilience/index.js.map +1 -0
  362. package/dist/rate-limiter-CEALq4N1.d.ts +559 -0
  363. package/dist/rate-limiter-DpVbSYdH.d.cts +559 -0
  364. package/dist/{reactive-layout-DOTs9P3X.d.ts → reactive-layout-fswlBUvX.d.cts} +19 -7
  365. package/dist/{reactive-layout-DgctbqZo.d.cts → reactive-layout-fswlBUvX.d.ts} +19 -7
  366. package/dist/retry-BDbRZ_gx.d.ts +125 -0
  367. package/dist/retry-DWuhjvsA.d.cts +125 -0
  368. package/dist/solutions/index.cjs +8200 -0
  369. package/dist/solutions/index.cjs.map +1 -0
  370. package/dist/solutions/index.d.cts +23 -0
  371. package/dist/solutions/index.d.ts +23 -0
  372. package/dist/solutions/index.js +55 -0
  373. package/dist/solutions/index.js.map +1 -0
  374. package/dist/spawnable-5mDY501F.d.cts +746 -0
  375. package/dist/spawnable-D3lR0oQu.d.ts +746 -0
  376. package/dist/status-U-rUI79b.d.cts +84 -0
  377. package/dist/status-U-rUI79b.d.ts +84 -0
  378. package/dist/timeout-U5O4ESK3.js +12 -0
  379. package/dist/timeout-U5O4ESK3.js.map +1 -0
  380. package/dist/{types-CWFysE9E.d.ts → types-BB5Lw-pB.d.cts} +3 -3
  381. package/dist/{types-C0_yquda.d.cts → types-BB5Lw-pB.d.ts} +3 -3
  382. package/dist/types-CJWIMJiZ.d.ts +548 -0
  383. package/dist/types-vCq7ShIm.d.cts +548 -0
  384. package/dist/utils/ai/browser.cjs +2169 -0
  385. package/dist/utils/ai/browser.cjs.map +1 -0
  386. package/dist/{patterns → utils}/ai/browser.d.cts +7 -5
  387. package/dist/{patterns → utils}/ai/browser.d.ts +7 -5
  388. package/dist/utils/ai/browser.js +255 -0
  389. package/dist/utils/ai/browser.js.map +1 -0
  390. package/dist/utils/ai/index.cjs +8468 -0
  391. package/dist/utils/ai/index.cjs.map +1 -0
  392. package/dist/{index-CR8QpwX8.d.ts → utils/ai/index.d.cts} +73 -976
  393. package/dist/{index-UPSiS-X7.d.cts → utils/ai/index.d.ts} +73 -976
  394. package/dist/utils/ai/index.js +173 -0
  395. package/dist/utils/ai/index.js.map +1 -0
  396. package/dist/utils/ai/node.cjs +648 -0
  397. package/dist/utils/ai/node.cjs.map +1 -0
  398. package/dist/{patterns → utils}/ai/node.d.cts +5 -7
  399. package/dist/{patterns → utils}/ai/node.d.ts +5 -7
  400. package/dist/utils/ai/node.js +84 -0
  401. package/dist/utils/ai/node.js.map +1 -0
  402. package/dist/utils/cqrs/index.cjs +1036 -0
  403. package/dist/utils/cqrs/index.cjs.map +1 -0
  404. package/dist/{index-CeFiHtAg.d.ts → utils/cqrs/index.d.cts} +7 -37
  405. package/dist/{index-B-_tFaqV.d.cts → utils/cqrs/index.d.ts} +7 -37
  406. package/dist/utils/cqrs/index.js +18 -0
  407. package/dist/utils/cqrs/index.js.map +1 -0
  408. package/dist/utils/demo-shell/index.cjs +865 -0
  409. package/dist/utils/demo-shell/index.cjs.map +1 -0
  410. package/dist/{index-B8YnZpIR.d.ts → utils/demo-shell/index.d.cts} +4 -16
  411. package/dist/{index-Cwv0KWcU.d.cts → utils/demo-shell/index.d.ts} +4 -16
  412. package/dist/utils/demo-shell/index.js +13 -0
  413. package/dist/utils/demo-shell/index.js.map +1 -0
  414. package/dist/utils/domain-templates/index.cjs +732 -0
  415. package/dist/utils/domain-templates/index.cjs.map +1 -0
  416. package/dist/{index-CzLVrjxn.d.ts → utils/domain-templates/index.d.cts} +3 -20
  417. package/dist/{index-BaQaY_IQ.d.cts → utils/domain-templates/index.d.ts} +3 -20
  418. package/dist/utils/domain-templates/index.js +17 -0
  419. package/dist/utils/domain-templates/index.js.map +1 -0
  420. package/dist/utils/graphspec/index.cjs +1174 -0
  421. package/dist/utils/graphspec/index.cjs.map +1 -0
  422. package/dist/{index-CMh5Rz1y.d.ts → utils/graphspec/index.d.cts} +106 -42
  423. package/dist/{index-CS0LTlB8.d.cts → utils/graphspec/index.d.ts} +106 -42
  424. package/dist/utils/graphspec/index.js +35 -0
  425. package/dist/utils/graphspec/index.js.map +1 -0
  426. package/dist/utils/harness/index.cjs +656 -0
  427. package/dist/utils/harness/index.cjs.map +1 -0
  428. package/dist/utils/harness/index.d.cts +542 -0
  429. package/dist/utils/harness/index.d.ts +542 -0
  430. package/dist/utils/harness/index.js +56 -0
  431. package/dist/utils/harness/index.js.map +1 -0
  432. package/dist/utils/index.cjs +17609 -0
  433. package/dist/utils/index.cjs.map +1 -0
  434. package/dist/utils/index.d.cts +96 -0
  435. package/dist/utils/index.d.ts +96 -0
  436. package/dist/utils/index.js +514 -0
  437. package/dist/utils/index.js.map +1 -0
  438. package/dist/utils/inspect/index.cjs +807 -0
  439. package/dist/utils/inspect/index.cjs.map +1 -0
  440. package/dist/utils/inspect/index.d.cts +123 -0
  441. package/dist/utils/inspect/index.d.ts +123 -0
  442. package/dist/utils/inspect/index.js +30 -0
  443. package/dist/utils/inspect/index.js.map +1 -0
  444. package/dist/utils/job-queue/index.cjs +717 -0
  445. package/dist/utils/job-queue/index.cjs.map +1 -0
  446. package/dist/{index-DisjX8a-.d.ts → utils/job-queue/index.d.cts} +5 -26
  447. package/dist/{index-DV_1YuVk.d.cts → utils/job-queue/index.d.ts} +5 -26
  448. package/dist/utils/job-queue/index.js +18 -0
  449. package/dist/utils/job-queue/index.js.map +1 -0
  450. package/dist/utils/memory/index.cjs +1451 -0
  451. package/dist/utils/memory/index.cjs.map +1 -0
  452. package/dist/{index-CZ3r5Rxp.d.ts → utils/memory/index.d.cts} +242 -34
  453. package/dist/{index-B17QddL1.d.cts → utils/memory/index.d.ts} +242 -34
  454. package/dist/utils/memory/index.js +19 -0
  455. package/dist/utils/memory/index.js.map +1 -0
  456. package/dist/utils/messaging/index.cjs +666 -0
  457. package/dist/utils/messaging/index.cjs.map +1 -0
  458. package/dist/utils/messaging/index.d.cts +562 -0
  459. package/dist/utils/messaging/index.d.ts +562 -0
  460. package/dist/utils/messaging/index.js +50 -0
  461. package/dist/utils/messaging/index.js.map +1 -0
  462. package/dist/utils/orchestration/index.cjs +876 -0
  463. package/dist/utils/orchestration/index.cjs.map +1 -0
  464. package/dist/utils/orchestration/index.d.cts +233 -0
  465. package/dist/utils/orchestration/index.d.ts +233 -0
  466. package/dist/utils/orchestration/index.js +19 -0
  467. package/dist/utils/orchestration/index.js.map +1 -0
  468. package/dist/utils/process/index.cjs +743 -0
  469. package/dist/utils/process/index.cjs.map +1 -0
  470. package/dist/{index-p09KSrTN.d.ts → utils/process/index.d.cts} +97 -44
  471. package/dist/{index-CasX6Pfq.d.cts → utils/process/index.d.ts} +97 -44
  472. package/dist/utils/process/index.js +14 -0
  473. package/dist/utils/process/index.js.map +1 -0
  474. package/dist/utils/reactive-layout/index.cjs +1607 -0
  475. package/dist/utils/reactive-layout/index.cjs.map +1 -0
  476. package/dist/{index-B5S8ULbU.d.ts → utils/reactive-layout/index.d.cts} +58 -81
  477. package/dist/{index-Dc4AYqrJ.d.cts → utils/reactive-layout/index.d.ts} +58 -81
  478. package/dist/utils/reactive-layout/index.js +52 -0
  479. package/dist/utils/reactive-layout/index.js.map +1 -0
  480. package/dist/utils/reduction/index.cjs +203 -0
  481. package/dist/utils/reduction/index.cjs.map +1 -0
  482. package/dist/{index-Byu-OpX_.d.ts → utils/reduction/index.d.cts} +6 -17
  483. package/dist/{index-tRCxuAXF.d.cts → utils/reduction/index.d.ts} +6 -17
  484. package/dist/utils/reduction/index.js +14 -0
  485. package/dist/utils/reduction/index.js.map +1 -0
  486. package/dist/utils/resilience/index.cjs +1617 -0
  487. package/dist/utils/resilience/index.cjs.map +1 -0
  488. package/dist/utils/resilience/index.d.cts +9 -0
  489. package/dist/utils/resilience/index.d.ts +9 -0
  490. package/dist/utils/resilience/index.js +44 -0
  491. package/dist/utils/resilience/index.js.map +1 -0
  492. package/dist/utils/surface/index.cjs +1070 -0
  493. package/dist/utils/surface/index.cjs.map +1 -0
  494. package/dist/{index-CYq8vAyV.d.ts → utils/surface/index.d.cts} +7 -58
  495. package/dist/{index-CSOmP7xT.d.cts → utils/surface/index.d.ts} +7 -58
  496. package/dist/utils/surface/index.js +30 -0
  497. package/dist/utils/surface/index.js.map +1 -0
  498. package/dist/utils/topology-view/index.cjs +620 -0
  499. package/dist/utils/topology-view/index.cjs.map +1 -0
  500. package/dist/utils/topology-view/index.d.cts +68 -0
  501. package/dist/utils/topology-view/index.d.ts +68 -0
  502. package/dist/utils/topology-view/index.js +11 -0
  503. package/dist/utils/topology-view/index.js.map +1 -0
  504. package/package.json +664 -584
  505. package/dist/backoff-HPZMEZNF.js +0 -1
  506. package/dist/chunk-2T7U5EU6.js +0 -1
  507. package/dist/chunk-3G5U5QNE.js +0 -5
  508. package/dist/chunk-4VVTGLXJ.js +0 -1
  509. package/dist/chunk-5M4CCMMD.js +0 -45
  510. package/dist/chunk-5QDBSZBV.js +0 -1
  511. package/dist/chunk-5XJ6B66J.js +0 -1
  512. package/dist/chunk-6QZNQS5B.js +0 -1
  513. package/dist/chunk-6X7AFUJV.js +0 -9
  514. package/dist/chunk-7K6PWTDQ.js +0 -1
  515. package/dist/chunk-7LIAPXJB.js +0 -1
  516. package/dist/chunk-7WPU3UHQ.js +0 -1
  517. package/dist/chunk-A5WCQ5NO.js +0 -1
  518. package/dist/chunk-APPIWSGD.js +0 -84
  519. package/dist/chunk-BEZWM2SY.js +0 -1
  520. package/dist/chunk-C72GO4IZ.js +0 -1
  521. package/dist/chunk-CB676TKJ.js +0 -1
  522. package/dist/chunk-CE6TI2TL.js +0 -1
  523. package/dist/chunk-CE72X3WO.js +0 -1
  524. package/dist/chunk-CK2E7BTU.js +0 -1
  525. package/dist/chunk-CLVB32RD.js +0 -1
  526. package/dist/chunk-CRVT7D2P.js +0 -1
  527. package/dist/chunk-D5RFJOZ2.js +0 -1
  528. package/dist/chunk-D7GPHKFH.js +0 -1
  529. package/dist/chunk-DHRX7JX4.js +0 -2
  530. package/dist/chunk-ESMPEKEV.js +0 -1
  531. package/dist/chunk-F672GV32.js +0 -1
  532. package/dist/chunk-FZMYDOWV.js +0 -1
  533. package/dist/chunk-GHBWHMRZ.js +0 -1
  534. package/dist/chunk-GLERH466.js +0 -1
  535. package/dist/chunk-GPW2V3RE.js +0 -1
  536. package/dist/chunk-HIDYF36O.js +0 -1
  537. package/dist/chunk-HITNVN6B.js +0 -3
  538. package/dist/chunk-HY4DJBA7.js +0 -5
  539. package/dist/chunk-KZIEYVXN.js +0 -1
  540. package/dist/chunk-L6NSJVJZ.js +0 -1
  541. package/dist/chunk-N4MQX6JU.js +0 -18
  542. package/dist/chunk-N7FHEL4D.js +0 -1
  543. package/dist/chunk-NTEURFZH.js +0 -1
  544. package/dist/chunk-OIVP6KFV.js +0 -1
  545. package/dist/chunk-OPHBU3LG.js +0 -1
  546. package/dist/chunk-OYQOZP2F.js +0 -5
  547. package/dist/chunk-PTZK576G.js +0 -1
  548. package/dist/chunk-QYADASLV.js +0 -1
  549. package/dist/chunk-ST7UXLWR.js +0 -1
  550. package/dist/chunk-SVY7VUYU.js +0 -1
  551. package/dist/chunk-TK3NWWD4.js +0 -1
  552. package/dist/chunk-TSOYJ743.js +0 -1
  553. package/dist/chunk-UNGSTR4X.js +0 -61
  554. package/dist/chunk-VIMF6LGM.js +0 -1
  555. package/dist/chunk-VJLMUKOI.js +0 -1
  556. package/dist/chunk-VN6RDSK2.js +0 -1
  557. package/dist/chunk-VV4N5P64.js +0 -1
  558. package/dist/chunk-W3I423PS.js +0 -1
  559. package/dist/chunk-WJR24TAG.js +0 -1
  560. package/dist/chunk-XTGKMHSW.js +0 -1
  561. package/dist/chunk-YBB7ZGTY.js +0 -1
  562. package/dist/chunk-Z4NPUARF.js +0 -1
  563. package/dist/chunk-ZGNQRPDT.js +0 -1
  564. package/dist/chunk-ZKPSFFKU.js +0 -1
  565. package/dist/chunk-ZLV5SQSX.js +0 -1
  566. package/dist/content-addressed-storage-4-ST1tYk.d.cts +0 -124
  567. package/dist/content-addressed-storage-DuYMjV7o.d.ts +0 -124
  568. package/dist/core/index.cjs +0 -1
  569. package/dist/core/index.d.cts +0 -3
  570. package/dist/core/index.d.ts +0 -3
  571. package/dist/core/index.js +0 -1
  572. package/dist/decay-BvOWTZ00.d.ts +0 -112
  573. package/dist/decay-CFlLvXUT.d.cts +0 -112
  574. package/dist/extra/browser.cjs +0 -1
  575. package/dist/extra/browser.d.cts +0 -4
  576. package/dist/extra/browser.d.ts +0 -4
  577. package/dist/extra/browser.js +0 -1
  578. package/dist/extra/index.cjs +0 -20
  579. package/dist/extra/index.d.cts +0 -17
  580. package/dist/extra/index.d.ts +0 -17
  581. package/dist/extra/index.js +0 -1
  582. package/dist/extra/node.cjs +0 -2
  583. package/dist/extra/node.js +0 -2
  584. package/dist/extra/operators.cjs +0 -1
  585. package/dist/extra/operators.d.cts +0 -958
  586. package/dist/extra/operators.d.ts +0 -958
  587. package/dist/extra/operators.js +0 -1
  588. package/dist/extra/reactive.cjs +0 -1
  589. package/dist/extra/reactive.d.cts +0 -353
  590. package/dist/extra/reactive.d.ts +0 -353
  591. package/dist/extra/reactive.js +0 -1
  592. package/dist/extra/render/index.cjs +0 -5
  593. package/dist/extra/render/index.js +0 -1
  594. package/dist/extra/sources.cjs +0 -3
  595. package/dist/extra/sources.js +0 -1
  596. package/dist/extra/storage-browser.cjs +0 -1
  597. package/dist/extra/storage-browser.d.cts +0 -37
  598. package/dist/extra/storage-browser.d.ts +0 -37
  599. package/dist/extra/storage-browser.js +0 -1
  600. package/dist/extra/storage-core.cjs +0 -1
  601. package/dist/extra/storage-core.d.cts +0 -28
  602. package/dist/extra/storage-core.d.ts +0 -28
  603. package/dist/extra/storage-core.js +0 -1
  604. package/dist/extra/storage-node.cjs +0 -1
  605. package/dist/extra/storage-node.d.cts +0 -2
  606. package/dist/extra/storage-node.d.ts +0 -2
  607. package/dist/extra/storage-node.js +0 -0
  608. package/dist/extra/storage-tiers-browser.cjs +0 -1
  609. package/dist/extra/storage-tiers-browser.d.cts +0 -120
  610. package/dist/extra/storage-tiers-browser.d.ts +0 -120
  611. package/dist/extra/storage-tiers-browser.js +0 -1
  612. package/dist/extra/storage-tiers-node.cjs +0 -1
  613. package/dist/extra/storage-tiers-node.d.cts +0 -210
  614. package/dist/extra/storage-tiers-node.d.ts +0 -210
  615. package/dist/extra/storage-tiers-node.js +0 -1
  616. package/dist/extra/storage-tiers.cjs +0 -1
  617. package/dist/extra/storage-tiers.d.cts +0 -412
  618. package/dist/extra/storage-tiers.d.ts +0 -412
  619. package/dist/extra/storage-tiers.js +0 -1
  620. package/dist/graph/index.cjs +0 -7
  621. package/dist/graph/index.d.cts +0 -7
  622. package/dist/graph/index.d.ts +0 -7
  623. package/dist/graph/index.js +0 -1
  624. package/dist/graph-CWvEUQAq.d.cts +0 -1861
  625. package/dist/graph-D9LFnda9.d.ts +0 -1861
  626. package/dist/index-5k1T6jl0.d.cts +0 -121
  627. package/dist/index-9770hRuQ.d.cts +0 -779
  628. package/dist/index-B1F8Enjf.d.ts +0 -704
  629. package/dist/index-BHskSB8v.d.ts +0 -3413
  630. package/dist/index-BIYAkbAi.d.cts +0 -26
  631. package/dist/index-BoJ5JHxI.d.ts +0 -557
  632. package/dist/index-BocU7pqs.d.ts +0 -779
  633. package/dist/index-BxNs2HB9.d.cts +0 -1858
  634. package/dist/index-C1T3d7V-.d.cts +0 -704
  635. package/dist/index-C5ri2Axc.d.cts +0 -301
  636. package/dist/index-C9l6OEBL.d.ts +0 -26
  637. package/dist/index-CC-AvFTy.d.cts +0 -557
  638. package/dist/index-CJF1URuX.d.ts +0 -121
  639. package/dist/index-CdTelp1M.d.ts +0 -202
  640. package/dist/index-Cj3WohTd.d.cts +0 -202
  641. package/dist/index-Co7uli2l.d.cts +0 -3413
  642. package/dist/index-D0aciIex.d.cts +0 -209
  643. package/dist/index-DHen9Klo.d.ts +0 -1858
  644. package/dist/index-Yq60JP3s.d.ts +0 -209
  645. package/dist/index-nozs3fFC.d.ts +0 -301
  646. package/dist/node-kK3CvTrR.d.cts +0 -1347
  647. package/dist/node-kK3CvTrR.d.ts +0 -1347
  648. package/dist/patterns/ai/browser.cjs +0 -8
  649. package/dist/patterns/ai/browser.js +0 -3
  650. package/dist/patterns/ai/index.cjs +0 -74
  651. package/dist/patterns/ai/index.d.cts +0 -20
  652. package/dist/patterns/ai/index.d.ts +0 -20
  653. package/dist/patterns/ai/index.js +0 -1
  654. package/dist/patterns/ai/node.cjs +0 -1
  655. package/dist/patterns/ai/node.js +0 -1
  656. package/dist/patterns/cqrs/index.cjs +0 -3
  657. package/dist/patterns/cqrs/index.d.cts +0 -8
  658. package/dist/patterns/cqrs/index.d.ts +0 -8
  659. package/dist/patterns/cqrs/index.js +0 -1
  660. package/dist/patterns/demo-shell/index.cjs +0 -5
  661. package/dist/patterns/demo-shell/index.d.cts +0 -7
  662. package/dist/patterns/demo-shell/index.d.ts +0 -7
  663. package/dist/patterns/demo-shell/index.js +0 -1
  664. package/dist/patterns/domain-templates/index.cjs +0 -3
  665. package/dist/patterns/domain-templates/index.d.cts +0 -6
  666. package/dist/patterns/domain-templates/index.d.ts +0 -6
  667. package/dist/patterns/domain-templates/index.js +0 -1
  668. package/dist/patterns/graphspec/index.cjs +0 -86
  669. package/dist/patterns/graphspec/index.d.cts +0 -8
  670. package/dist/patterns/graphspec/index.d.ts +0 -8
  671. package/dist/patterns/graphspec/index.js +0 -1
  672. package/dist/patterns/harness/index.cjs +0 -48
  673. package/dist/patterns/harness/index.d.cts +0 -13
  674. package/dist/patterns/harness/index.d.ts +0 -13
  675. package/dist/patterns/harness/index.js +0 -1
  676. package/dist/patterns/inspect/index.cjs +0 -3
  677. package/dist/patterns/inspect/index.d.cts +0 -9
  678. package/dist/patterns/inspect/index.d.ts +0 -9
  679. package/dist/patterns/inspect/index.js +0 -1
  680. package/dist/patterns/job-queue/index.cjs +0 -3
  681. package/dist/patterns/job-queue/index.d.cts +0 -9
  682. package/dist/patterns/job-queue/index.d.ts +0 -9
  683. package/dist/patterns/job-queue/index.js +0 -1
  684. package/dist/patterns/memory/index.cjs +0 -3
  685. package/dist/patterns/memory/index.d.cts +0 -8
  686. package/dist/patterns/memory/index.d.ts +0 -8
  687. package/dist/patterns/memory/index.js +0 -1
  688. package/dist/patterns/messaging/index.cjs +0 -3
  689. package/dist/patterns/messaging/index.d.cts +0 -7
  690. package/dist/patterns/messaging/index.d.ts +0 -7
  691. package/dist/patterns/messaging/index.js +0 -1
  692. package/dist/patterns/orchestration/index.cjs +0 -3
  693. package/dist/patterns/orchestration/index.d.cts +0 -8
  694. package/dist/patterns/orchestration/index.d.ts +0 -8
  695. package/dist/patterns/orchestration/index.js +0 -1
  696. package/dist/patterns/process/index.cjs +0 -3
  697. package/dist/patterns/process/index.d.cts +0 -10
  698. package/dist/patterns/process/index.d.ts +0 -10
  699. package/dist/patterns/process/index.js +0 -1
  700. package/dist/patterns/reactive-layout/index.cjs +0 -4
  701. package/dist/patterns/reactive-layout/index.d.cts +0 -7
  702. package/dist/patterns/reactive-layout/index.d.ts +0 -7
  703. package/dist/patterns/reactive-layout/index.js +0 -1
  704. package/dist/patterns/reduction/index.cjs +0 -3
  705. package/dist/patterns/reduction/index.d.cts +0 -6
  706. package/dist/patterns/reduction/index.d.ts +0 -6
  707. package/dist/patterns/reduction/index.js +0 -1
  708. package/dist/patterns/surface/index.cjs +0 -13
  709. package/dist/patterns/surface/index.d.cts +0 -9
  710. package/dist/patterns/surface/index.d.ts +0 -9
  711. package/dist/patterns/surface/index.js +0 -1
  712. package/dist/reactive-log-BKALbfal.d.ts +0 -223
  713. package/dist/reactive-log-DIGdYqQ6.d.cts +0 -223
  714. package/dist/reactive-map-CEFGp8TK.d.cts +0 -296
  715. package/dist/reactive-map-DS_SIAxv.d.ts +0 -296
  716. package/dist/resilience-6LYQJAC5.js +0 -1
  717. package/dist/sugar-DQjFmVqb.d.cts +0 -399
  718. package/dist/sugar-fhLIE7TT.d.ts +0 -399
  719. package/dist/topology-tree-Bcz27hpF.d.cts +0 -25
  720. package/dist/topology-tree-xvaD0fOX.d.ts +0 -25
@@ -1 +0,0 @@
1
- import{t as I,x as w}from"./chunk-CLVB32RD.js";import{c as O}from"./chunk-GHBWHMRZ.js";import{b as E}from"./chunk-BEZWM2SY.js";import{m as f,s as M}from"./chunk-CRVT7D2P.js";import{E as R,G as V,m as h}from"./chunk-NTEURFZH.js";import{b as v}from"./chunk-CK2E7BTU.js";function C(n){return typeof n=="object"&&n!==null&&"cache"in n&&typeof n.subscribe=="function"}function H(n,u,e){let i=f(n),o=i.v!=null,p=R(e?.initialVerified??null,{meta:{...O("verifiable"),...o?{sourceVersion:null}:{}}}),x=e?.trigger!==void 0&&e.trigger!==null,c=null;if(x&&e?.autoVerify?c=I(f(e.trigger),i):x?c=f(e.trigger):e?.autoVerify&&(c=i),c!==null){let y;if(c===i)y=w(i,l=>u(l));else{let l=i.cache;i.subscribe(m=>{for(let N of m)N[0]===v&&(l=N[1])}),y=w(c,()=>u(l))}M(y,l=>{h(()=>{if(p.down([[v,l]]),o){let m=i.v;m!=null&&p.meta.sourceVersion.down([[v,{id:m.id,version:m.version}]])}})})}return{node:i,verified:p,trigger:c}}function B(n){n.subscribe(()=>{})}function k(n){return n instanceof Map?n:new Map}function S(n,u){if(!Array.isArray(u.upsert))throw new TypeError("distill extraction requires upsert: Array<{ key, value }>");h(()=>{for(let{key:e,value:i}of u.upsert)n.set(e,i);for(let e of u.remove??[])n.delete(e)})}function J(n,u,e){let i=f(n),o=E(e.mapOptions??{}),p=e.budget??2e3,c=e.context!==void 0&&e.context!==null?f(e.context):R(null),y=k(o.entries.cache);o.entries.subscribe(t=>{for(let d of t)d[0]===v&&(y=k(d[1]))});let l=f(u(i,o.entries));if(M(l,t=>{S(o,t)}),e.evict){let t=new Map,d=V([o.entries],([g])=>{let T=[],b=k(g);for(let r of t.keys())b.has(r)||(t.get(r)(),t.delete(r));for(let[r,s]of b){let a=e.evict(r,s);if(C(a)){if(!t.has(r)){let D=M(a,z=>{z===!0&&o.has(r)&&o.delete(r)});t.set(r,D)}continue}if(typeof a=="boolean"){a&&T.push(r);continue}throw new TypeError("distill evict() must return boolean or Node<boolean>")}return T});M(d,g=>{for(let T of g)o.delete(T)})}let m=e.consolidateTrigger!==void 0&&e.consolidateTrigger!==null;if(e.consolidate&&m){let t=f(e.consolidateTrigger),d=w(t,()=>e.consolidate(y));M(d,g=>{S(o,g)})}let N=V([o.entries,c],([t,d])=>{let T=[...k(t).entries()].map(([s,a])=>({key:s,value:a,score:e.score(a,d),cost:e.cost(a)}));T.sort((s,a)=>a.score-s.score);let b=[],r=p;for(let s of T)s.cost<=r&&(b.push({key:s.key,value:s.value,score:s.score}),r-=s.cost);return b},{meta:{...O("distill",{budget:p})}}),A=V([o.entries],([t])=>k(t).size);return B(N),B(A),{store:o,compact:N,size:A}}export{H as a,J as b};
@@ -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 dr,b as fr}from"./chunk-PTZK576G.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-N4MQX6JU.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-D7GPHKFH.js";import{b as ur,c as pr,d as lr,e as hr,f as vr}from"./chunk-WJR24TAG.js";import{a as Cr}from"./chunk-N7FHEL4D.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-W3I423PS.js";import{a as xe}from"./chunk-L6NSJVJZ.js";import{e as Z}from"./chunk-HITNVN6B.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-CLVB32RD.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-A5WCQ5NO.js";import{a as yr,b as kr}from"./chunk-GLERH466.js";import{a as ar,b as cr}from"./chunk-BEZWM2SY.js";import{a as qn,b as Jn,c as Qn}from"./chunk-YBB7ZGTY.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-CRVT7D2P.js";import{A as K,D as C,E as O,J as D,m as W}from"./chunk-NTEURFZH.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{c as Q,g as N,h as U}from"./chunk-W3I423PS.js";import{j as z}from"./chunk-HITNVN6B.js";import{f as D,m as F}from"./chunk-CRVT7D2P.js";import{p as M}from"./chunk-NTEURFZH.js";import{b as x,i as B,j}from"./chunk-CK2E7BTU.js";import{b as ee}from"./chunk-QYADASLV.js";var ae={};ee(ae,{processInstanceKeyOf:()=>te,processManager:()=>re,processStateKeyOf:()=>ne});var te=d=>d.correlationId,ne=d=>d.correlationId;function W(d){if(d==null)return Promise.resolve(void 0);let p=F(d);return new Promise((s,v)=>{let f=!1,l,r=()=>{l&&l()};l=p.subscribe(a=>{if(!f)for(let u of a){if(u[0]===x){f=!0,Promise.resolve().then(r),s(u[1]);return}if(u[0]===j){f=!0,Promise.resolve().then(r),v(u[1]);return}if(u[0]===B){f=!0,Promise.resolve().then(r),s(void 0);return}}})})}async function se(d,p,s,v,f){let l;for(let r=0;r<=v;r++){if(r>0){let a=f[Math.min(r-1,f.length-1)]??0;a>0&&await new Promise(u=>setTimeout(u,a))}try{return await W(d(p,s))}catch(a){l=a}}return{outcome:"failure",error:l}}function re(d,p,s){let v=s.retryMax??0,f=s.backoffMs??[0],l=1024,r=new Map,a=new Set,u=new Map,R=`__processManagers__/${p}`,A=new z(p);try{d.mount(R,A)}catch(e){let t=e instanceof Error?e.message:String(e);throw new Error(`processManager: name "${p}" is already in use on this CQRS graph (mount path "${R}" collides). Call .dispose() on the prior manager OR pick a different name before re-creating. (${t})`)}let b=Q({name:"instances",retainedLimit:l,graph:A}),V=U(A,"seq",0),y=N(()=>{},{audit:b,seq:V,freeze:!0,...s.handlerVersion!==void 0?{handlerVersion:s.handlerVersion}:{},onSuccess:([e,t,n,i],o,{t_ns:c,seq:g})=>({correlationId:e,state:t,status:n,startedAt:u.get(e)??c,updatedAt:c,t_ns:c,seq:g??0,...i!==void 0?{reason:i}:{}})}),T=s.persistence?.stateStorage??[],K=(e,t)=>{if(T.length===0)return;let n=r.get(e);if(n===void 0)return;let i={correlationId:e,state:n,status:t,startedAt:u.get(e)??M(),updatedAt:M(),...s.handlerVersion!==void 0?{handlerVersion:s.handlerVersion}:{}};for(let o of T)try{let c=o.save(e,i);c!=null&&typeof c.then=="function"&&c.catch(()=>{})}catch{}},h=e=>{if(T.length!==0){for(let t of T)if(t.delete)try{let n=t.delete(e);n!=null&&typeof n.then=="function"&&n.catch(()=>{})}catch{}}},L=`_process_${p}_started`;d.event(L),s.persistence?.eventStorage&&d.attachEventStorage(s.persistence.eventStorage);async function q(e,t,n,i){if(a.delete(e),r.delete(e),u.delete(e),s.compensate)try{await W(s.compensate(t,n)),y(e,t,"compensated",i),h(e)}catch{y(e,t,"errored",void 0),h(e)}else y(e,t,"errored",void 0),h(e)}async function H(e,t){if(a.has(e)){if(t.outcome==="failure"){let n=r.get(e)??s.initial;await q(e,n,t.error);return}if(t.outcome==="success"){if(r.set(e,t.state),t.emit)for(let n of t.emit)try{d._appendEvent(n.type,n.payload,{correlationId:e,aggregateId:e})}catch{}if(y(e,t.state,"running",void 0),K(e,"running"),s.isTerminal?.(t.state)){a.delete(e),r.delete(e),u.delete(e),y(e,t.state,"terminated",void 0),h(e);return}if(t.schedule){let{afterMs:n,eventType:i}=t.schedule,o,c=D(n),g=m=>{for(let E of m)if(E[0]===x){if(o?o():queueMicrotask(()=>o?.()),!a.has(e))return;let w=r.get(e);if(w===void 0)return;let S=s.steps[i];if(!S)return;let C={type:i,payload:null,timestampNs:M(),seq:Number.NaN,correlationId:e,aggregateId:e};O(e,S,w,C)}};o=c.subscribe(g)}return}if(t.outcome==="terminate"){if(r.set(e,t.state),t.emit)for(let n of t.emit)try{d._appendEvent(n.type,n.payload,{correlationId:e,aggregateId:e})}catch{}a.delete(e),r.delete(e),u.delete(e),y(e,t.state,"terminated",void 0),h(e)}}}let k=new Map;function O(e,t,n,i){let c=(k.get(e)??Promise.resolve()).then(async()=>{let g=r.get(e);if(g===void 0||!a.has(e))return;let m;try{m=await se(t,g,i,v,f)}catch(E){await q(e,r.get(e)??s.initial,E);return}await H(e,m)});k.set(e,c),c.finally(()=>{k.get(e)===c&&k.delete(e)})}let P=!1,_=[];for(let e of s.watching){let t=d.event(e),n=0;n=(t.cache??[]).length;let o=t.subscribe(c=>{for(let g of c){if(g[0]!==x)continue;let m=g[1];if(m.length<=n)continue;let E=m.slice(n);n=m.length;for(let w of E){let S=w.correlationId;if(S===void 0||!a.has(S))continue;let C=s.steps[e];if(!C)continue;let $=r.get(S);$!==void 0&&O(S,C,$,w)}}});_.push(o)}let J=N((e,t)=>{d._appendEvent(L,t??null,{correlationId:e,aggregateId:e}),u.set(e,M()),r.set(e,s.initial),a.add(e)},{audit:b,seq:V,freeze:!0,...s.handlerVersion!==void 0?{handlerVersion:s.handlerVersion}:{},onSuccess:([e],t,{t_ns:n,seq:i})=>({correlationId:e,state:s.initial,status:"running",startedAt:u.get(e)??n,updatedAt:n,t_ns:n,seq:i??0})});function X(e,t){P||a.has(e)||(J(e,t),K(e,"running"))}function Y(e,t){if(P||!a.has(e))return;let n=r.get(e)??s.initial;q(e,n,new Error(`cancelled: ${t??"no reason given"}`),t)}function Z(e){return r.get(e)}async function G(){if(P)return 0;let e=T[0];if(e==null||e.list==null||e.load==null)return 0;let t=await e.list(),n=0;for(let i of t){let o=await e.load(i);o!=null&&o.status==="running"&&(r.set(o.correlationId,o.state),a.add(o.correlationId),u.set(o.correlationId,o.startedAt),n+=1)}return n}function I(){if(!P){P=!0;for(let e of _)try{e()}catch{}_.length=0;try{d.remove(R)}catch{}}}return{instances:b,audit:b,start:X,cancel:Y,getState:Z,restore:G,dispose:I}}export{te as a,ne as b,re as c,ae as d};
@@ -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-DHRX7JX4.js";import{a as N}from"./chunk-7LIAPXJB.js";import{a as X}from"./chunk-C72GO4IZ.js";import{j as T}from"./chunk-HITNVN6B.js";import{D as I,E as y,G as L,o as S}from"./chunk-NTEURFZH.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
- 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,61 +0,0 @@
1
- import{a as Rt,b as kt,c as xt,d as wt}from"./chunk-CE6TI2TL.js";import{f as We}from"./chunk-OIVP6KFV.js";import{c as vt}from"./chunk-ZKPSFFKU.js";import{a as Ht,b as Xt,c as Zt,d as er,e as tr,f as $e,g as rr}from"./chunk-OYQOZP2F.js";import{a as Ge,b as V,c as Ne,d as ue,e as ee,f as U,g as zt,h as Be,i as Yt,j as Jt,k as Qt}from"./chunk-OPHBU3LG.js";import{h as Lt}from"./chunk-APPIWSGD.js";import{b as we}from"./chunk-PTZK576G.js";import{a as Le,b as Mt}from"./chunk-TSOYJ743.js";import{d as ft,e as xe,f as gt,h as je}from"./chunk-D7GPHKFH.js";import{a as ut}from"./chunk-L6NSJVJZ.js";import{j as ae}from"./chunk-HITNVN6B.js";import{a as Z}from"./chunk-ESMPEKEV.js";import{R as pt,b as mt,s as ct,x as B}from"./chunk-CLVB32RD.js";import{b as ke,c as X}from"./chunk-GHBWHMRZ.js";import{b as de}from"./chunk-BEZWM2SY.js";import{b as fe}from"./chunk-YBB7ZGTY.js";import{A as Tt,C as j,f as yt,k as Fe,l as ht,m as k,x as se,z as bt}from"./chunk-CRVT7D2P.js";import{D as le,E as w,F as Q,G as v,J as re,m as H,o as z,p as Te}from"./chunk-NTEURFZH.js";import{b as F,d as pe,i as q,j as $}from"./chunk-CK2E7BTU.js";import{b as qt}from"./chunk-QYADASLV.js";var Zr={};qt(Zr,{AgentLoopGraph:()=>_e,AllTiersExhaustedError:()=>tr,BudgetExhaustedError:()=>Se,ChatStreamGraph:()=>De,CircuitOpenError:()=>xe,DEFAULT_DECAY_RATE:()=>Le,FallbackMissError:()=>Jt,LLMTimeoutError:()=>ye,ReplayCacheMissError:()=>zt,ToolRegistryGraph:()=>Pe,admissionFilter3D:()=>Wr,admissionScored:()=>Gt,agentLoop:()=>Vr,agentMemory:()=>Ur,anthropicAdapter:()=>Ht,canonicalJson:()=>Yt,cascadingLlmAdapter:()=>$e,chatStream:()=>nt,composePricing:()=>lr,computePrice:()=>Ke,contentGate:()=>_r,costMeterExtractor:()=>Sr,createAdapter:()=>er,createCapabilitiesRegistry:()=>nr,createPricingRegistry:()=>sr,dryRunAdapter:()=>Ge,fallbackAdapter:()=>Qt,frozenContext:()=>xr,gatedStream:()=>Nr,gaugesAsContext:()=>qr,googleAdapter:()=>Xt,graphFromSpec:()=>$t,graphFromSpecReactive:()=>Hr,handoff:()=>Fr,keywordFlagExtractor:()=>Ir,knobsAsTools:()=>Yr,llmConsolidator:()=>rt,llmExtractor:()=>tt,memoryRetrieval:()=>dt,memoryWithKG:()=>it,memoryWithTiers:()=>lt,memoryWithVectors:()=>st,observableAdapter:()=>or,openAICompatAdapter:()=>Zt,parseRateLimitFromError:()=>He,pricingFor:()=>dr,promptCall:()=>et,promptNode:()=>Ze,redactor:()=>jr,registryPricing:()=>ir,resilientAdapter:()=>Mr,streamExtractor:()=>Or,streamingPromptNode:()=>Lr,suggestStrategy:()=>Wt,suggestStrategyReactive:()=>Qr,systemPromptBuilder:()=>Ar,tier:()=>rr,toolCallExtractor:()=>Pr,toolExecution:()=>ot,toolRegistry:()=>at,toolSelector:()=>$r,validateGraphDef:()=>Xr,withBreaker:()=>Ve,withBudgetGate:()=>qe,withDryRun:()=>mr,withRateLimiter:()=>Ye,withReplayCache:()=>Be,withRetry:()=>Je,withTimeout:()=>Qe,zeroPrice:()=>Ce});function Me(t,e){return`${t}::${e}`}function nr(t){let e=de({name:"capabilitiesRegistry"}),r=i=>{e.set(Me(i.provider,i.id),i)};if(t)for(let i of t)r(i);let n=(i,d)=>{let m=e.get(Me(i,d));if(m)return m;let p=e.entries.cache;if(!p)return;let c;for(let[,g]of p){if(g.provider!==i)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,l=(i,d,m,p)=>{for(i.has(d)&&i.delete(d),i.set(d,m);i.size>p;){let c=i.keys().next().value;if(c===void 0)break;i.delete(c)}},u=v([e.entries],([i])=>i instanceof Map?Array.from(i.values()):[],{name:"capabilitiesRegistry/entries",initial:[]});return{register:r,lookup:n,remove(i,d){let m=e.has(Me(i,d));return m&&e.delete(Me(i,d)),m},entries(){let i=e.entries.cache;return(function*(){if(i)for(let d of i.values())yield d})()},lookupNode(i,d){let m=Me(i,d),p=a.get(m);if(p)return a.delete(m),a.set(m,p),p;let c=v([e.entries],()=>n(i,d),{name:`capabilitiesRegistry/lookup/${i}::${d}`,initial:void 0});return l(a,m,c,o),c},entriesNode:u,byProvider(i){let d=s.get(i);if(d)return s.delete(i),s.set(i,d),d;let m=v([u],([p])=>p.filter(c=>c.provider===i),{name:`capabilitiesRegistry/byProvider/${i}`,initial:[]});return l(s,i,m,o),m}}}function Y(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=fe(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+Y(h.usage),0),{name:"adapterStats/totalInputTokens",initial:0}),l=v([n.entries],([y])=>y.reduce((f,h)=>f+ne(h.usage),0),{name:"adapterStats/totalOutputTokens",initial:0}),u=[j(a),j(s),j(l)],i=y=>{n.append(y),o.emit(y)},d=()=>{n.clear(),o.emit(null)},m=V(t,{invoke(y,f){let h=z(),b=Te(),I=t.model??f?.model??"",C=N=>(i(ue({provider:t.provider,model:t.model??f?.model??N.model??"",tier:f?.tier??N.tier,usage:N.usage??ee(),startNs:h,startWallClockNs:b,method:"invoke"})),N),A=N=>{let R=N;i(ue({provider:t.provider,model:I,tier:f?.tier,usage:ee(),startNs:h,startWallClockNs:b,method:"invoke",error:{type:R?.name??"Error",message:R?.message??String(N)}}))};return Ne(t.invoke(y,f),{onResp:C,onError:A,name:"adapterStats/invokeTap"})},async*stream(y,f){let h=z(),b=Te(),I=t.model??f?.model??"",C;try{for await(let A of t.stream(y,f))A.type==="usage"&&(C=A.usage),yield A;i(ue({provider:t.provider,model:I,tier:f?.tier,usage:C??ee(),startNs:h,startWallClockNs:b,method:"stream"}))}catch(A){let N=A;throw i(ue({provider:t.provider,model:I,tier:f?.tier,usage:C??ee(),startNs:h,startWallClockNs:b,method:"stream",error:{type:N?.name??"Error",message:N?.message??String(A)}})),A}}});U(m,"observableAdapter",t);let p=!1;return{adapter:m,stats:{lastCall:o,allCalls:n,totalCalls:a,totalInputTokens:s,totalOutputTokens:l,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 Ce(t="USD"){return{total:0,currency:t}}function Ke(t,e,r){let n=Y(t),o=e.currency??"USD",a=r?.withBreakdown===!0,s=a?{}:null,l=0,u=(f,h,b)=>{if(!h||b==null)return;let I=ar(b,n),C=h*I/1e6;l+=C,a&&(s[f]=(s[f]??0)+C)},i=t.input,d=e.input;if(d&&(u("input.regular",i.regular,d.regular),u("input.cacheRead",i.cacheRead??0,d.cacheRead),u("input.cacheWrite5m",i.cacheWrite5m??0,d.cacheWrite5m),u("input.cacheWrite1h",i.cacheWrite1h??0,d.cacheWrite1h),u("input.cacheWriteOther",i.cacheWriteOther??0,d.cacheWriteOther),u("input.audio",i.audio??0,d.audio),u("input.image",i.image??0,d.image),u("input.video",i.video??0,d.video),u("input.toolUse",i.toolUse??0,d.toolUse),i.extensions&&d.extensions))for(let[f,h]of Object.entries(i.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&&(l*=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 I=h*b;l+=I,a&&(s[`auxiliary.${f}`]=I)}return a?{total:l,currency:o,breakdown:s}:{total:l,currency:o}}function Ae(t,e){return`${t}::${e}`}function sr(t){let e=new Map,r=new Map,n=(o,a,s)=>{e.set(Ae(o,a),{provider:o,model:a,pricing:s});let l=r.get(o);l||(l=new Set,r.set(o,l)),l.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(Ae(o,a));if(s)return s.pricing;let l=r.get(o);if(!l)return;let u;for(let i of l)if(a.startsWith(i)&&(!u||i.length>u.key.length)){let d=e.get(Ae(o,i));d&&(u={key:i,pricing:d.pricing})}return u?.pricing},remove(o,a){let s=e.delete(Ae(o,a));if(s){let l=r.get(o);l?.delete(a),l&&l.size===0&&r.delete(o)}return s},entries(){let o=e.values();return(function*(){for(let{provider:a,model:s,pricing:l}of o)yield[a,s,l]})()}}}function ir(t,e="USD"){return(r,n)=>{let o=t.lookup(n.provider,n.model);return o?Ke(r,o,{tier:n.tier,withBreakdown:n.withBreakdown}):Ce(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):Ce()}}function dr(t,e,r){return t?.pricing?Ke(e,t.pricing,r):Ce()}function Ve(t,e={}){let r=e.breaker??gt(e),n=V(t,{async invoke(o,a){if(!r.canExecute())throw new xe;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 xe;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 Se=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"},Ue=Object.freeze({calls:0,inputTokens:0,outputTokens:0,usd:0}),At=()=>({calls:0,inputTokens:0,outputTokens:0,usd:0});function qe(t,e){let r=fe(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],([i])=>{let d=i;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 i=e.onExhausted,d=!1,m=!0;o.subscribe(p=>{for(let c of p)if(c[0]===F){let g=c[1];if(d&&m&&g===!1){let y=Ct(n.cache??Ue,e.caps);y&&i(y)}m=g,d=!0}})}let a=()=>{if(o.cache===!1){let i=n.cache??Ue,d=Ct(i,e.caps);return new Se(d??"budget",e.caps[d??"calls"]??0,ur(i,d??"calls"))}},s=(i,d)=>{let m=t.provider,p=ue({provider:m,model:d.model,tier:d.tier,usage:i,startNs:d.startNs,method:d.method,...d.error?{error:d.error}:{}});r.append(p);let c=n.cache??Ue,g=e.pricingFn?c.usd+e.pricingFn(i,{model:d.model,provider:m,tier:d.tier}).total:c.usd;n.emit({calls:c.calls+1,inputTokens:c.inputTokens+Y(i),outputTokens:c.outputTokens+ne(i),usd:g})},l=()=>{r.clear(),n.emit(At())},u=V(t,{invoke(i,d){let m=a();if(m)return Promise.reject(m);let p=z(),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 Ne(t.invoke(i,d),{onResp:g,onError:y,name:"budgetGate/invokeTap"})},async*stream(i,d){let m=a();if(m)throw m;let p=z(),c;try{for await(let g of t.stream(i,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:l}}}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??Ge({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,l=V(t,{invoke(i,d){return s()?r.invoke(i,d):t.invoke(i,d)},stream(i,d){return s()?r.stream(i,d):t.stream(i,d)}});return U(l,"withDryRun",t),{adapter:l,dispose:()=>{a&&(a(),a=void 0)}}}function He(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 l=n("anthropic-ratelimit-requests-reset");if(l){let c=St(l);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 i=Ee(n,"x-ratelimit-limit-requests");i!=null&&(o.rpmCap=i);let d=Ee(n,"x-ratelimit-limit-tokens");d!=null&&(o.tpmCap=d);let m=Ee(n,"x-ratelimit-remaining-requests"),p=Ee(n,"x-ratelimit-remaining-tokens");if(m!=null&&i!=null&&i>0&&(o.usageHint??={},o.usageHint.rpm=1-m/i),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 Ee(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 ze(t){let e=new Error(t);return e.name="AbortError",e}function It(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"}),l=w({},{name:"adaptiveRateLimiter/lastSignal"}),u=v([n,a],([T,O])=>Math.min(Number(T??1/0),Number(O??1/0)),{name:"adaptiveRateLimiter/effectiveRpm"}),i=v([o,s],([T,O])=>Math.min(Number(T??1/0),Number(O??1/0)),{name:"adaptiveRateLimiter/effectiveTpm"}),d=ge(Number(n.cache??Number.POSITIVE_INFINITY),e),m=ge(Number(o.cache??Number.POSITIVE_INFINITY),e),p=!1,c=!1,g=u.subscribe(T=>{for(let O of T)if(O[0]===F){let _=Number(O[1]);Number.isFinite(_)&&_>0?(d=ge(_,e),p=!1):_===1/0?(d=ge(1/0,e),p=!1):_<=0&&(p=!0)}}),y=i.subscribe(T=>{for(let O of T)if(O[0]===F){let _=Number(O[1]);Number.isFinite(_)&&_>0?(m=ge(_,e),c=!1):_===1/0?(m=ge(1/0,e),c=!1):_<=0&&(c=!0)}}),f=0,h=new Z,b=new Z,I;t.adaptation!=null&&(I=k(t.adaptation).subscribe(O=>{for(let _ of O)_[0]===F&&C(_[1])}));function C(T){if(l.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 O=z()+T.retryAfterMs*1e6;O>f&&(f=O)}}let A=w(0,{name:"adaptiveRateLimiter/pending"}),N=w(Number.POSITIVE_INFINITY,{name:"adaptiveRateLimiter/rpmAvailable"}),R=w(Number.POSITIVE_INFINITY,{name:"adaptiveRateLimiter/tpmAvailable"}),E=T=>{A.emit((A.cache??0)+T)},D=()=>{N.emit(d.available()),R.emit(m.available())};async function S(T={}){let O=T.requestCost??1,_=T.tokenCost??0,K=T.signal;E(1);try{for(;;){if(K?.aborted)throw ze("AdaptiveRateLimiter.acquire aborted");let te=z();if(f>te){let M=Math.ceil((f-te)/1e6);await Ie(M,K);continue}if(O>0&&p||_>0&&c){await Ie(250,K);continue}let ie=d,me=m;if(!ie.tryConsume(O)){await Ie(Et(ie,O),K);continue}if(!(_>0?me.tryConsume(_):!0)){ie.putBack(O),await Ie(Et(me,_),K);continue}D();return}}finally{E(-1)}}function P(T){T>0?m.tryConsume(T):T<0&&m.putBack(-T),D()}function W(){g(),y(),I?.(),h.cancel(),b.cancel()}return{effectiveRpm:u,effectiveTpm:i,lastSignal:l,pending:A,rpmAvailable:N,tpmAvailable:R,acquire:S,recordUsage:P,recordSignal:C,dispose:W}}function ge(t,e){if(!Number.isFinite(t)||t===1/0)return je(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER);let r=Math.max(1,t*e),n=t/60;return je(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 Ie(t,e){return t<=0?Promise.resolve():e?.aborted?Promise.reject(ze("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(ze("AdaptiveRateLimiter.acquire aborted"))},e.addEventListener("abort",a,{once:!0}))})}function Ye(t,e={}){let r=e.limiter??It({name:e.name??"rateLimiter",rpm:e.rpm,tpm:e.tpm,adaptation:e.adaptation,burstMultiplier:e.burstMultiplier}),n=(s,l)=>e.costFn?e.costFn(s,l):0,o=s=>{let l=He(s);l&&r.recordSignal(l)},a=V(t,{async invoke(s,l){let u=n(s,l);await r.acquire({requestCost:1,tokenCost:u,signal:l?.signal});try{let i=await se(k(t.invoke(s,l))),d=i.usage??Nt(),p=Y(d)+ne(d)-u;return p>0&&r.recordUsage(p),i}catch(i){throw o(i),i}},async*stream(s,l){let u=n(s,l);await r.acquire({requestCost:1,tokenCost:u,signal:l?.signal});try{let i=0;for await(let m of t.stream(s,l))m.type==="usage"&&(i=Y(m.usage)+ne(m.usage)),yield m;let d=i-u;d>0&&r.recordUsage(d)}catch(i){throw o(i),i}}});return U(a,"withRateLimiter",t),{adapter:a,limiter:r}}function Oe(t="aborted"){let e=new Error(t);return e.name="AbortError",e}function Ot(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 Je(t,e={}){let r=e.attempts??3,n=e.baseDelayMs??500,o=e.maxDelayMs??1e4,a=e.strategy??"decorrelated",s=e.jitter??!0,l=e.shouldRetry??Tr,u=e.retryStreaming??!0,i=(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||!l(f,y))throw f;let h=i(y,g);g=h,await Ot(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||!l(h,y))throw h;let b=i(y,g);g=b,await Ot(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 ye=class extends Error{constructor(r){super(`LLM call timed out after ${r}ms`);this.ms=r}name="LLMTimeoutError"};function Qe(t,e){if(e<=0)throw new RangeError("withTimeout: ms must be > 0");let r=a=>{let s=new AbortController,l=!1,u,i=new Z;return a&&(a.aborted?s.abort(a.reason):(u=()=>{i.cancel(),s.abort(a.reason)},a.addEventListener("abort",u,{once:!0}))),i.start(e,()=>{l=!0,s.abort(new ye(e))}),{signal:s.signal,cancel:()=>{i.cancel(),a&&u&&a.removeEventListener("abort",u)},timedOut:()=>l}},n=(a,s)=>{if(!s||a instanceof ye)throw a;let l=a;if(l?.name==="AbortError"||l?.name==="DOMException"&&Number(l.code)===20||a?.message==="aborted"){let i=new ye(e);throw i.cause=a,i}throw a},o=V(t,{async invoke(a,s){let{signal:l,cancel:u,timedOut:i}=r(s?.signal);try{return await se(k(t.invoke(a,{...s,signal:l})))}catch(d){return n(d,i())}finally{u()}},async*stream(a,s){let{signal:l,cancel:u,timedOut:i}=r(s?.signal);try{for await(let d of t.stream(a,{...s,signal:l}))yield d}catch(d){n(d,i())}finally{u()}}});return U(o,"withTimeout",t),o}function Mr(t,e={}){let r={adapter:t},n=t;if(e.rateLimit){let o=Ye(n,e.rateLimit);n=o.adapter,r.rateLimiter=o.limiter}if(e.budget){let o=qe(n,e.budget);n=o.adapter,r.budget=o.budget}if(e.breaker){let o=Ve(n,e.breaker);n=o.adapter,r.breaker=o.breaker}if(e.timeoutMs!=null&&(n=Qe(n,e.timeoutMs)),e.retry&&(n=Je(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=$e([{name:e.name??"primary",adapter:n},{name:"fallback",adapter:e.fallback}],o)}return e.cache&&(n=Be(n,e.cache)),r.adapter=n,r}function L(t,e){return ut("ai",t,e)}function vr(t){return t!=null&&typeof t.then=="function"}function Xe(t){return typeof t=="object"&&t!==null&&"subscribe"in t&&typeof t.subscribe=="function"&&"cache"in t}function Rr(t){return t!=null&&typeof t=="object"&&Symbol.asyncIterator in t&&typeof t[Symbol.asyncIterator]=="function"}var kr=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??kr;return new Promise((n,o)=>{let a=new Z,s=t.subscribe(l=>{for(let u of l){if(u[0]===F){a.cancel(),s(),n(u[1]);return}if(u[0]===$){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 ve(t){return vr(t)?ve(await t):Xe(t)?Dt(t):Rr(t)?Dt(k(t)):t}function he(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=r.parentSignal,s=()=>{};if(a)if(a.aborted)o.abort();else{let p=()=>o.abort();a.addEventListener("abort",p,{once:!0}),s=()=>a.removeEventListener("abort",p)}let l=!1,u=null,i=p=>{l||(l=!0,n.down([[F,p],[q]]),u?.(),u=null)},d;try{d=t.invoke(e,{...r.invokeOpts,signal:o.signal})}catch(p){return i(r.onFailure("throw",p)),()=>{s(),o.abort()}}return u=k(d,{signal:o.signal}).subscribe(p=>{for(let c of p){if(l)return;if(c[0]===F){try{i(r.onSuccess(c[1]))}catch(g){i(r.onFailure("onSuccess-threw",g))}return}if(c[0]===$){i(r.onFailure("error",c[1]));return}if(c[0]===q){i(r.onFailure("complete",void 0));return}}}),l&&u&&(u(),u=null),()=>{s(),o.abort(),u?.(),u=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,l,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,l.emit(m),{invalidate:()=>{u.store.emitted=!1}}},{name:e?.name??"frozenContext",describeKind:"derived",initial:null,meta:L("frozen_context",{...a})}):le([r,n],(s,l,u)=>{let i=s[1];if(!(i!=null&&i.length>0))return;let m=s[0],p=m!=null&&m.length>0?m.at(-1):u.prevData[0];l.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 Ze(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,l=n?.tools!==void 0?[...e,n.tools]:e,u=v(l,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 B(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 A=Tt(n.abort);h.signal=A.signal,f=A.dispose}let b;try{b=t.invoke(m,h)}catch(A){return g=!0,c.down([[$,A]]),()=>{f?.()}}let C=k(b).subscribe(A=>{if(!(y||g))for(let N of A){if(g)return;if(N[0]===F){let R=N[1];if(o==="raw")c.emit(R);else try{let E=Pt(R),D=o==="json"?JSON.parse(he(E)):E;c.emit(D)}catch(E){let D=Pt(R),S=new Error(`promptNode: failed to parse LLM response as JSON: ${E.message}
2
- Raw content (first 200 chars): ${wr(D)}`);g=!0,c.down([[$,S]]);return}}else if(N[0]===$){g=!0,c.down([[$,N[1]]]);return}else if(N[0]===q){g=!0,c.down([[q]]);return}else c.down([N])}});return()=>{y=!0,C(),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 et(t,e,r,n){let o=r.name??n;return a=>{let s=w(a);return Ze(r.adapter,[s],l=>e(l),{name:o,format:"json",systemPrompt:t,model:r.model,temperature:r.temperature??0,maxTokens:r.maxTokens})}}function tt(t,e){let r=e.maxExistingKeys??100,n=et(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 rt(t,e){let r=et(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:Te()}),s.type==="token"&&(o+=s.delta);return o}function jt(t,e){if(e==="json")try{return JSON.parse(he(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=We(`${o}/stream`,{...n?.retainedLimit!=null?{retainedLimit:n.retainedLimit}:{}}),l=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=B(l,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")}),i=Ft(s,`${o}::accumulatedText`),d=j(u);return{output:u,deltaTopic:s,accumulatedText:i,dispose:()=>{d(),s.destroy()}}}function Nr(t,e,r,n,o,a){let s=w(0,{name:`${e}/cancel`}),l=0,u=[...n,s],i=a?.name??e,d=a?.format??"text",m=We(`${i}/stream`,{...a?.retainedLimit!=null?{retainedLimit:a.retainedLimit}:{}}),p=v(u,R=>{let E=R.slice(0,-1);if(E.some(S=>S==null))return[];let D=typeof o=="string"?o:o(...E);return D?[{role:"user",content:D}]:[]},{name:`${i}::messages`,meta:L("prompt_node::messages"),initial:[]}),c=B(p,R=>{let E=R;if(!E||E.length===0)return w(null);let D=new AbortController;async function*S(){try{let P=await _t(r,E,{model:a?.model,temperature:a?.temperature,maxTokens:a?.maxTokens,systemPrompt:a?.systemPrompt,signal:D.signal},m);yield jt(P,d)}finally{D.abort()}}return k(S())},{meta:X("gatedStream")}),g=Ft(m,`${i}::accumulatedText`),y=mt(c,R=>R!=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),I=j(h.output),C=j(g);t.addDisposer(b),t.addDisposer(I),t.addDisposer(C);let A=h.reject.bind(h),N={...h,reject(R=1){H(()=>{A(R),s.emit(++l)})}};return{output:h.output,deltaTopic:m,accumulatedText:g,gate:N,dispose:()=>{b(),I(),C(),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(l=>l!=null&&l!=="").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 l=a.store;s.type==="token"?(l.chunkCount+=1,l.charCount+=s.delta.length):s.type==="usage"&&(l.sawUsage=!0,l.usageTokens=Y(s.usage)+ne(s.usage));let u=l.sawUsage?l.usageTokens:Math.ceil(l.charCount/r);return{chunkCount:l.chunkCount,charCount:l.charCount,estimatedTokens:u,estimated:!l.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 Ir(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 l=a.store.flags,u=a.store.scannedTo,i=Math.max(0,u-r),d=s.slice(i),m=!1;for(let{pattern:p,label:c,compiled:g}of n){g.lastIndex=0;for(let y of d.matchAll(g)){let f=i+(y.index??0);f+y[0].length<=u||(l.push({label:c,pattern:p,match:y[0],position:f}),m=!0)}}return a.store.scannedTo=s.length,m?[...l]:l.slice()},{name:e.name??"keyword-flag-extractor",describeKind:"derived",initial:[],meta:L("keyword_flag_extractor"),equals:Er})}function Or(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,l=!1;for(;s<o.length;){let u=o.indexOf("{",s);if(u===-1){n.store.scanFrom=o.length;break}let i=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==="{")i++;else if(g==="}"&&(i--,i===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}),l=!0)}catch{}s=d+1,n.store.scanFrom=s}return l?[...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,l=>{let u=l[0]??"";if(u.length===0)return"allow";let i=a?l[1]??0:e(u);return i>=o?"block":i>=r?"review":"allow"},{name:n?.name??"content-gate",initial:"allow"})}function jr(t,e,r,n){let o=r??(()=>"[REDACTED]");function a(s){let l=s;for(let u of e){let i=u.global?u:new RegExp(u.source,`${u.flags}g`);l=l.replace(i,d=>o(d,u))}return l}return v([t],([s])=>a(s??""),{name:n?.name??"redactor",initial:""})}var De=class extends ae{_log;messages;latest;messageCount;constructor(e,r={}){super(e,r.graph),this._log=fe([],{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 nt(t,e){return new De(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 B(n,l=>{if(l==null)return a;let u=w(l);return e(u)},{meta:X("handoff")});let s=v([n,o],([l,u])=>({v:l,open:u===!0}),{name:r?.name?`${r.name}::router`:"handoff::router",describeKind:"derived"});return B(s,({v:l,open:u})=>{if(l==null)return a;if(!u)return w(l);let i=w(l);return e(i)},{meta:X("handoff")})}function ot(t){let{toolCalls:e,tools:r}=t,n=t.retryCount??1,o=t.onError??"rescue",a=(s,l)=>{if(s===l)return!0;if(s.length!==l.length)return!1;for(let u=0;u<s.length;u++){let i=s[u],d=l[u];if(i?.id!==d?.id||i?.content!==d?.content)return!1}return!0};return B(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 l=s.map(u=>Gr(u,r,n,o));return v(l,u=>u,{name:"toolExecution::batch",equals:a})})}function Gr(t,e,r,n){let o=ft(()=>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:pt(a,s=>({id:t.id,content:JSON.stringify({error:String(s)})}))}var Pe=class extends ae{definitions;schemas;_bundle;constructor(e,r={}){super(e,r.graph),this._bundle=de({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([[$,u]]),()=>{a.abort()}}let l=s.subscribe(u=>{o.down(u)});return()=>{a.abort(),l()}},{name:`executeReactive::${e}`,meta:L("tool_execute_reactive")})}getDefinition(e){return this._bundle.entries.cache?.get(e)}};function at(t,e){return new Pe(t,e)}function Br(t,e){return Xe(t)?t:t!=null&&typeof t.then=="function"?Fe(t,{signal:e}):t!=null&&typeof t=="object"&&Symbol.asyncIterator in t?ht(t,{signal:e}):Fe(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 l=s[0]??[],u=s.slice(1);return l.filter(i=>{for(let d of u)if(d!=null&&!d(i))return!1;return!0})},{name:r?.name??"tool-selector",describeKind:"derived",meta:{...L("tool_selector"),...X("toolSelector")},equals:(s,l)=>{let u=s,i=l;if(u.length!==i.length)return!1;for(let d=0;d<u.length;d++)if(u[d]!==i[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 st(t,e,r){let n=xt({dimension:r.dimension});t.add(n.entries,{name:"vectorIndex"});let a=re([e.store.entries],([s])=>{let l=s??new Map;for(let[u,i]of l){let d=r.embedFn(i);d&&n.upsert(u,d,i)}}).subscribe(()=>{});return t.addDisposer(a),{vectors:n,dispose:()=>a()}}function it(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],([i])=>{let d=i??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 lt(t,e,r,n){let o=n.decayRate??Le,a=n.maxActive??1e3,s=n.archiveThreshold??.1,l=n.permanentFilter??(()=>!1),u=kt("permanent",{ranked:!1});t.mount("permanent",u);let i=de({name:"permanentKeys"});t.add(i.entries,{name:"permanentKeys"});let d=de({name:"entryCreatedAtNs"});t.add(d.entries,{name:"entryCreatedAtNs"});let m=n.context?k(n.context):w(null),p=m.cache,c=m.subscribe(R=>{for(let E of R)E[0]===F&&(p=E[1])}),g={score:(R,E)=>{if(l(R,E)||i.has(R))return Number.POSITIVE_INFINITY;let D=z(),S=d.get(R);S===void 0&&(S=D,d.set(R,D));let P=Number(D-S)/1e9;return Mt(n.score(E,p),P,o)},archiveThreshold:s,maxSize:a},y=we(e,r,{score:n.score,cost:n.cost,...n.budget!==void 0?{budget:n.budget}:{},...n.evict!==void 0?{evict:n.evict}:{},...n.consolidate!==void 0?{consolidate:n.consolidate}:{},...n.consolidateTrigger!==void 0?{consolidateTrigger:n.consolidateTrigger}:{},...n.context!==void 0?{context:n.context}:{},mapOptions:{retention:g}}),f=R=>i.has(R)?"permanent":(y.store.entries.cache??new Map).has(R)?"active":"archived",h=(R,E)=>{i.set(R,!0),u.upsert(R,E)},b=y.store.entries.subscribe(R=>{for(let E of R){if(E[0]!==F)continue;let D=E[1],S=d.entries.cache;if(S==null)continue;let P=[];for(let W of S.keys())D.has(W)||P.push(W);P.length>0&&H(()=>{for(let W of P)d.delete(W)})}}),C=re([y.store.entries],([R])=>{let E=R??new Map;for(let[D,S]of E)i.has(D)||l(D,S)&&H(()=>{h(D,S)})}).subscribe(()=>{}),A=null;n.archiveTier&&(A=t.attachSnapshotStorage([n.archiveTier],n.archiveStorageOptions??{}));let N=()=>{C(),b(),c(),A?.dispose()};return t.addDisposer(N),{store:y,tiers:{permanent:u,activeEntries:y.store.entries,archiveHandle:A,tierOf:f,markPermanent:h},dispose:N}}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 dt(t,e,r,n,o){let a=o.topK??20,s=o.graphDepth??1,l=o.budget??2e3,u=o.contextWeight??0,i=o.context?k(o.context):w(null),d=(f,h,b)=>{let I=new Map,C=[];if(r&&b.vector){let S=b.vector,P=r.entries.cache;if(P&&P.size>0&&a>0){C=[...P.values()].map(T=>({id:T.id,score:Rt(S,T.vector),...T.meta!==void 0?{meta:T.meta}:{}})).sort((T,O)=>O.score-T.score).slice(0,a);for(let T of C){let O=f.get(T.id);O&&I.set(T.id,{value:O,sources:new Set(["vector"])})}}}let A=[];if(n){let S=n.adjacencyOut.cache,P=n.adjacencyIn.cache,W=[...b.entityIds??[],...I.keys()],T=new Set,O=W;for(let _=0;_<s;_++){let K=[];for(let te of O){if(T.has(te))continue;T.add(te);let ie=S?.get(te)??[],me=P?.get(te)??[];for(let ce of ie){let x=ce.to;if(!T.has(x)){K.push(x);let M=f.get(x);if(M){let G=I.get(x);G?G.sources.add("graph"):I.set(x,{value:M,sources:new Set(["graph"])}),A.push(x)}}}for(let ce of me){let x=ce.from;if(!T.has(x)){K.push(x);let M=f.get(x);if(M){let G=I.get(x);G?G.sources.add("graph"):I.set(x,{value:M,sources:new Set(["graph"])}),A.push(x)}}}}O=K}}for(let[S,P]of f)I.has(S)||I.set(S,{value:P,sources:new Set(["store"])});let N=b.context?.length??0,R=[];for(let[S,{value:P,sources:W}]of I){let T=o.contextOf?o.contextOf(P):void 0,O=o.score(P,h);if(u>0&&N>0){let K=Kr(b.context,T);K>0&&(O=O*(1+u*K/N))}let _=T?{key:S,value:P,score:O,sources:[...W],context:T}:{key:S,value:P,score:O,sources:[...W]};R.push(_)}R.sort((S,P)=>P.score-S.score);let E=[],D=0;for(let S of R){let P=o.cost(S.value);if(D+P>l&&E.length>0)break;E.push(S),D+=P}return{packed:E,trace:{vectorCandidates:C,graphExpanded:A,ranked:R,packed:E}}},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:I}=d(h,i.cache,f);return H(()=>{p.emit(b),c.emit(I)}),b},retrieveReactive:f=>{let h=k(f),b=v([e.store.entries,i,h],([A,N,R])=>{if(R==null)return{packed:[],trace:null};let E=A??new Map,{packed:D,trace:S}=d(E,N,R);return{packed:D,trace:S}},{name:"retrievalReactive::result",describeKind:"derived",meta:L("retrieval_reactive_result"),initial:{packed:[],trace:null}}),C=re([b],([A])=>{let N=A;H(()=>{p.emit(N.packed),N.trace&&c.emit(N.trace)})}).subscribe(()=>{});return t.addDisposer(C),v([b],([A])=>A.packed,{name:"retrievalReactive",describeKind:"derived",meta:L("retrieval_reactive"),initial:[],equals:m})}}}var _e=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=nt(`${e}-chat`,{maxMessages:r.maxMessages}),this.mount("chat",this.chat),this.tools=at(`${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]===F&&(n=M[1])}),a=!1,s=this.aborted.subscribe(x=>{for(let M of x)M[0]===F&&(a=M[1])}),l=this.chat.messages.cache??[],u=this.chat.messages.subscribe(x=>{for(let M of x)M[0]===F&&(l=M[1])}),i=this.tools.schemas.cache??[],d=this.tools.schemas.subscribe(x=>{for(let M of x)M[0]===F&&(i=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,I=this.tools,C=this.status,A=this.turn,N=this.aborted,R=le([C],(x,M,G)=>{if(Re(x,G.prevData,0,"idle")!=="thinking"||a||n>=f){M.down([[pe]]);return}if(l.length===0){M.down([[pe]]);return}M.emit({messages:l,tools:i})},{name:"promptInput",describeKind:"derived",meta:L("agent_prompt_input",{closureReads:["aborted","turn","chat.messages","tools.schemas"]})}),E=B(R,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}),D=w(null,{name:"lastResponse",describeKind:"state",meta:L("agent_last_response")});this.lastResponse=D;let S=le([D,C],(x,M,G)=>{let J=Re(x,G.prevData,0,null);if(Re(x,G.prevData,1,"idle")!=="acting"){M.down([[pe]]);return}let oe=J?.toolCalls;if(oe==null||oe.length===0){M.down([[pe]]);return}M.emit(oe)},{name:"toolCallsRaw",describeKind:"derived",meta:L("agent_tool_calls_raw")}),P=r.interceptToolCalls?r.interceptToolCalls(S):S;this.toolCalls=P;let W=ot({toolCalls:P,tools:I,retryCount:1});this.toolResults=W;let T=re([E],([x])=>{if(a)return;let M=x,G=n+1,J=M.toolCalls!=null&&M.toolCalls.length>0,be=M.finishReason==="end_turn"&&(!M.toolCalls||M.toolCalls.length===0),oe=h?.(M)===!0,Vt=G>=f,Ut=oe||be||!J||Vt?"done":"acting";H(()=>{D.emit(M),C.emit(Ut),A.emit(G),b.append("assistant",M.content,{toolCalls:M.toolCalls})})}),O=re([W],([x])=>{if(a)return;let M=x;if(M.length===0)return;let G=n>=f?"done":"thinking";H(()=>{C.emit(G);for(let J of M)b.appendToolResult(J.id,J.content)})}),_=C.cache??"idle",K=C.subscribe(x=>{for(let M of x)M[0]===F&&(_=M[1])}),te=re([N],([x])=>{x===!0&&(this._currentAbortController?.abort(new Error("agentLoop: aborted")),_!=="done"&&C.emit("done"))}),ie=j(T),me=j(O),ce=j(te);this._terminalResult=le([C,D],(x,M,G)=>{let J=Re(x,G.prevData,0,"idle"),be=Re(x,G.prevData,1,null);if(J==="done"){if(be!=null){M.emit(be);return}let oe=new Error("agentLoop: aborted");oe.name="AbortError",M.down([[$,oe]]);return}if(J==="error"){M.down([[$,new Error("agentLoop: errored")]]);return}M.down([[pe]])},{name:"terminalResult",describeKind:"derived",meta:L("agent_terminal_result")}),this.add(R,{name:"promptInput"}),this.add(E,{name:"llmResponse"}),this.add(this.lastResponse,{name:"lastResponse"}),this.toolCalls===S?this.add(this.toolCalls,{name:"toolCalls"}):(this.add(S,{name:"toolCallsRaw"}),this.add(this.toolCalls,{name:"toolCalls"})),this.add(W,{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(me),this.addDisposer(ce),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{H(()=>{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=bt(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 Re(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 _e(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=tt(r.extractPrompt,{adapter:r.adapter});else throw new Error("agentMemory: provide either extractFn or adapter + extractPrompt");let a=(b,I)=>{let C=I.cache??new Map,A=I.subscribe(N=>{for(let R of N)R[0]===F&&(C=R[1])});return n.addDisposer(A),B(b,N=>N==null?{upsert:[]}:o(N,C))},s=e;if(r.admissionFilter){let b=k(e),I=r.admissionFilter;s=v([b],([C])=>{if(I(C))return C},{name:"admissionFilter",describeKind:"derived"})}let l;r.consolidateFn?l=r.consolidateFn:r.adapter&&r.consolidatePrompt&&(l=rt(r.consolidatePrompt,{adapter:r.adapter}));let u=r.consolidateTrigger;if(!u&&l&&r.reflection?.enabled!==!1){let b=r.reflection?.interval??3e5;u=yt(b,{period:b})}let i={score:r.score,cost:r.cost,budget:r.budget??2e3,context:r.context,consolidate:l,consolidateTrigger:u},d,m=null;if(r.tiers){let b=lt(n,s,a,{...r.tiers,score:r.score,cost:r.cost,...r.budget!==void 0?{budget:r.budget}:{budget:2e3},...r.context!==void 0?{context:r.context}:{},...l!==void 0?{consolidate:l}:{},...u!==void 0?{consolidateTrigger:u}:{}});d=b.store,m=b.tiers}else d=we(s,a,i);n.add(d.store.entries,{name:"store"}),n.add(d.compact,{name:"compact"}),n.add(d.size,{name:"size"});let p=null;r.vectorDimensions&&r.vectorDimensions>0&&r.embedFn&&(p=st(n,d,{dimension:r.vectorDimensions,embedFn:r.embedFn}).vectors);let c=null;r.enableKnowledgeGraph&&(c=it(n,d,t,{mountPath:"kg",entityFn:r.entityFn}).kg);let g=null,y=null,f=null,h=null;if(p||c){let b=dt(n,d,p,c,{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:p,kg:c,memoryTiers:m,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=[],l=r?.sinceVersion;for(let[u,i]of Object.entries(n.nodes)){let d=i.meta??{},m=d.description,p=d.format;if(!m&&!p)continue;if(l!=null&&i.v!=null){let h=l.get(u);if(h!=null&&h.id===i.v.id&&i.v.version<=h.version)continue}let c=m??u,g=i.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,i=[];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 i.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 i.length>0&&d.push(i.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}),l=(await ve(a)).content.trim();l.startsWith("```")&&(l=he(l));let u;try{u=JSON.parse(l)}catch{throw new Error(`graphFromSpec: LLM response is not valid JSON: ${l.slice(0,200)}`)}return Lt(u,{catalog:r?.catalog})}function Hr(t,e,r){let n=k(t);return B(n,o=>!o||typeof o!="string"||o.trim().length===0?w(null):Q(a=>{let s=new AbortController,l=!1;return $t(o,e,{...r,signal:s.signal}).then(u=>{if(l){u.destroy();return}a.emit(u),a.down([[q]])}).catch(u=>{l||a.down([[$,u]])}),()=>{l=!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,l]of Object.entries(r.nodes)){if(l.type!=="state"||s.includes("::__meta__::")||l.status==="completed"||l.status==="errored")continue;let u=l.meta??{},i=u.access;if(i==="human"||i==="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=l.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})}],l=r.invoke(s,{model:n?.model,temperature:n?.temperature??0,maxTokens:n?.maxTokens,signal:n?.signal}),i=(await ve(l)).content.trim();i.startsWith("```")&&(i=i.replace(/^```(?:json)?\s*/,"").replace(/\s*```$/,""));let d;try{d=JSON.parse(i)}catch{throw new Error(`suggestStrategy: LLM response is not valid JSON: ${i.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=ct(o,t);return B(a,s=>{if(s==null)return w(null);let[l,u]=s;return!u||!l||typeof l!="string"||l.trim().length===0?w(null):u.destroyed?w(null):Q(i=>{let d=new AbortController,m=!1;return Wt(u,l,r,{...n,signal:d.signal}).then(p=>{m||(i.emit(p),i.down([[q]]))}).catch(p=>{m||i.down([[$,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 l of s.deps)typeof l=="string"&&!n.has(l)&&e.push(`Node "${o}": dep "${l}" 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 l=s;(typeof l.from!="string"||!n.has(l.from))&&e.push(`Edge [${a}]: 'from' "${String(l.from)}" does not reference an existing node`),(typeof l.to!="string"||!n.has(l.to))&&e.push(`Edge [${a}]: 'to' "${String(l.to)}" does not reference an existing node`);let u=`${l.from}->${l.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,Ce as c,Ke as d,sr as e,ir as f,lr as g,dr as h,Ve as i,Se as j,qe as k,mr as l,He as m,Ye as n,Je as o,ye as p,Qe as q,Mr as r,he as s,co as t,xr as u,Ze as v,et as w,tt as x,rt as y,Lr as z,Nr as A,Ar as B,Sr as C,Ir as D,Or as E,Pr as F,_r as G,jr as H,De as I,nt as J,Fr as K,ot as L,Pe as M,at as N,$r as O,Gt as P,Wr as Q,st as R,it as S,lt as T,dt as U,_e 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
- 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{c as M,f as re,g as se,h as oe,i as ae}from"./chunk-W3I423PS.js";import{a as ee}from"./chunk-L6NSJVJZ.js";import{j as ne}from"./chunk-HITNVN6B.js";import{b as te}from"./chunk-GHBWHMRZ.js";import{b as J}from"./chunk-YBB7ZGTY.js";import{C as V}from"./chunk-CRVT7D2P.js";import{D as X,E as Y,G as j,p as W,t as D}from"./chunk-NTEURFZH.js";import{b as Q}from"./chunk-CK2E7BTU.js";import{b as le}from"./chunk-QYADASLV.js";var ye={};le(ye,{CqrsGraph:()=>F,cqrs:()=>me,cqrsEventKeyOf:()=>he,dispatchKeyOf:()=>ve,sagaInvocationKeyOf:()=>fe});var I=class extends Error{constructor(e,n){super(e,n),this.name=this.constructor.name}},N=class extends I{constructor(n,t){super(`Duplicate ${n} registration: "${t}"`);this.kind=n;this.registrationName=t}},B=class extends I{constructor(n,t,r){super(`Command "${n}" emitted undeclared event "${t}". Declared emits: [${r.join(", ")}]`);this.commandName=n;this.eventName=t;this.declaredEmits=r}},K=class extends I{constructor(n,t,r){super(`Optimistic concurrency conflict on aggregate "${n}": expected version ${t}, got ${r}`);this.aggregateId=n;this.expected=t;this.actual=r}},H=class extends I{constructor(n){super(`Unknown command: "${n}". Register with command() first.`);this.commandName=n}},O=class extends I{constructor(n,t){super(`Command handler "${n}" threw: ${t instanceof Error?t.message:String(t)}`,{cause:t});this.commandName=n}};var P=class extends I{constructor(n,t){super(`Projection "${n}" rebuild failed: ${t instanceof Error?t.message:String(t)}`,{cause:t});this.projectionName=n}};var ue=D((o,e)=>{o("write"),o("signal"),e("observe")}),pe=D((o,e)=>{o("observe"),o("signal"),e("write")}),ie=D((o,e)=>{o("observe"),o("signal"),e("write")});function $(o,e){return ee("cqrs",o,e)}function de(o){if(o===null||typeof o!="object"||Object.isFrozen(o))return o;for(let e of Object.keys(o))de(o[e]);return Object.freeze(o)}var he=o=>`${o.type}::${o.aggregateId??"__default__"}`,ve=o=>o.commandName,fe=o=>o.eventType,F=class extends ne{_eventLogs=new Map;_eventLogsByAggregate=new Map;_aggregateVersions=new Map;_aggregateLru=new Map;_commandRegs=new Map;_projections=new Set;_sagas=new Set;_keepaliveDisposers=[];_seq=0;_retainedLimit;_freezeCommandPayload;_freezeEventPayload;_maxAggregates;_dispatchSeqCursor;dispatches;audit;aggregateEvictions;constructor(e,n={}){super(e,n.graph),this._retainedLimit=n.retainedLimit??1024,this._freezeCommandPayload=n.freezeCommandPayload??!0,this._freezeEventPayload=n.freezeEventPayload??!0,this._maxAggregates=n.maxAggregates??1e4,this.dispatches=M({name:"dispatches",retainedLimit:this._retainedLimit,graph:this}),this.audit=this.dispatches,this.aggregateEvictions=M({name:"aggregateEvictions",retainedLimit:this._retainedLimit,graph:this}),this._dispatchSeqCursor=oe(this,"dispatch_seq",0)}aggregateVersion(e,n){return this._aggregateVersions.get(`${e}::${n}`)??0}_touchAggregate(e){this._aggregateLru.delete(e),this._aggregateLru.set(e,!0)}_enforceAggregateLru(){for(;this._aggregateLru.size>this._maxAggregates;){let e=this._aggregateLru.keys().next();if(e.done)break;let n=e.value;this._aggregateLru.delete(n);let t=n.indexOf("::");if(t<0)continue;let r=n.slice(0,t),s=n.slice(t+2),a=this._aggregateVersions.get(n)??0;this._aggregateVersions.delete(n);let d=this._eventLogsByAggregate.get(r);d&&(d.delete(s),d.size===0&&this._eventLogsByAggregate.delete(r)),this.aggregateEvictions.append({aggregateId:s,type:r,lastVersion:a,t_ns:W()})}}destroy(){for(let e of this._keepaliveDisposers)e();this._keepaliveDisposers.length=0,super.destroy()}_attachedEventTiers=[];_attachedTierDisposers=new Map;attachEventStorage(e){this._attachedEventTiers.push(e);for(let[n,t]of this._eventLogs){let r=t.log.attachStorage(e),s=this._attachedTierDisposers.get(n);s||(s=[],this._attachedTierDisposers.set(n,s)),s.push(r)}for(let[n,t]of this._eventLogsByAggregate)for(let[r,s]of t){let a=`${n}::${r}`,d=s.log.attachStorage(e),u=this._attachedTierDisposers.get(a);u||(u=[],this._attachedTierDisposers.set(a,u)),u.push(d)}return()=>{let n=this._attachedEventTiers.indexOf(e);n>=0&&this._attachedEventTiers.splice(n,1)}}_autoWireStreamStorage(e,n){if(this._attachedEventTiers.length===0)return;let t=this._attachedTierDisposers.get(e);t||(t=[],this._attachedTierDisposers.set(e,t));for(let r of this._attachedEventTiers)t.push(n.attachStorage(r))}event(e,n){if(n!==void 0)return this._ensureAggregateStream(e,n).node;let t=this._eventLogs.get(e);if(t)return t.node;let r=J([],{name:e,versioning:0,maxSize:this._retainedLimit});r.withLatest();let s=r.entries,a=j([s],([d])=>d,{name:e,describeKind:"state",meta:$("event",{event_name:e}),guard:ie,initial:s.cache});return this.add(a,{name:e}),this._keepaliveDisposers.push(V(a)),this._eventLogs.set(e,{log:r,node:a}),this._autoWireStreamStorage(e,r),a}_ensureAggregateStream(e,n){this._eventLogs.has(e)||this.event(e);let t=this._eventLogsByAggregate.get(e);t||(t=new Map,this._eventLogsByAggregate.set(e,t));let r=`${e}::${n}`;this._touchAggregate(r);let s=t.get(n);if(s)return s;let a=`${e}_${n.replace(/[^a-zA-Z0-9_-]/g,"_")}`,d=J([],{name:a,versioning:0,maxSize:this._retainedLimit});d.withLatest();let u=d.entries,i=j([u],([T])=>T,{name:a,describeKind:"state",meta:$("event_aggregate",{event_name:e,aggregate_id:n}),guard:ie,initial:u.cache}),g=a,h=0;for(;this.nameOf(this.resolveOptional(g)??i)===g&&(h+=1,g=`${a}_${h}`,this.resolveOptional(g)!==void 0););try{this.add(i,{name:g})}catch{}this._keepaliveDisposers.push(V(i));let w={log:d,node:i};return t.set(n,w),this._autoWireStreamStorage(`${e}::${n}`,d),this._enforceAggregateLru(),w}resolveOptional(e){try{return this.resolve(e)}catch{return}}_appendEvent(e,n,t){let r=this._eventLogs.get(e);if(r||(this.event(e),r=this._eventLogs.get(e)),r.node.status==="completed"||r.node.status==="errored")throw new Error(`Cannot dispatch to terminated event stream "${e}" (status: ${r.node.status}).`);let s,a;if(t?.aggregateId!==void 0){let g=`${e}::${t.aggregateId}`;s=(this._aggregateVersions.get(g)??0)+1,this._aggregateVersions.set(g,s),a=this._ensureAggregateStream(e,t.aggregateId)}let d=r.log.entries.v,u=this._freezeEventPayload?de(n):n,i={type:e,payload:u,timestampNs:W(),seq:++this._seq,...t?.aggregateId!==void 0?{aggregateId:t.aggregateId}:{},...s!==void 0?{aggregateVersion:s}:{},...t?.correlationId!==void 0?{correlationId:t.correlationId}:{},...t?.causationId!==void 0?{causationId:t.causationId}:{},...t?.metadata!==void 0?{metadata:Object.freeze({...t.metadata})}:{},...t?.handlerVersion!==void 0?{handlerVersion:t.handlerVersion}:{},...d!=null?{v0:{id:d.id,version:d.version}}:{}};return r.log.append(i),a&&a.log.append(i),i}command(e,n){if(this._commandRegs.has(e))throw new N("command",e);let t=typeof n=="function"?{handler:n}:n,r=Y(void 0,{name:e,describeKind:"state",meta:{...$("command",{command_name:e}),error:null},guard:ue});if(this.add(r,{name:e}),this._commandRegs.set(e,{handler:t.handler,...t.emits!==void 0?{emits:t.emits}:{},...t.handlerVersion!==void 0?{handlerVersion:t.handlerVersion}:{}}),t.emits)for(let s of t.emits)this._eventLogs.has(s)||this.event(s);return r}dispatch(e,n,t){let r=this._commandRegs.get(e);if(!r)throw new H(e);if(t?.aggregateId!==void 0&&t.expectedAggregateVersion!==void 0&&r.emits!==void 0){let i=0;for(let g of r.emits){let h=this._aggregateVersions.get(`${g}::${t.aggregateId}`);h!==void 0&&h>i&&(i=h)}if(i!==t.expectedAggregateVersion)throw new K(t.aggregateId,t.expectedAggregateVersion,i)}let s=this.resolve(e),a=[],d=!1,u=i=>{s.emit(i,{internal:!0});try{r.handler(i,{emit:(g,h)=>{if(r.emits!==void 0&&!r.emits.includes(g))throw new B(e,g,r.emits);a.push(g),this._appendEvent(g,h,{...t?.aggregateId!==void 0?{aggregateId:t.aggregateId}:{},...t?.correlationId!==void 0?{correlationId:t.correlationId}:{},...t?.causationId!==void 0?{causationId:t.causationId}:{},...t?.metadata!==void 0?{metadata:Object.freeze({...t.metadata})}:{},...r.handlerVersion!==void 0?{handlerVersion:r.handlerVersion}:{}})}}),s.meta.error.emit(null,{internal:!0})}catch(g){throw d=!0,g}};try{se(u,{audit:this.dispatches,seq:this._dispatchSeqCursor,freeze:this._freezeCommandPayload,onSuccess:([i],g,{t_ns:h,seq:w})=>({commandName:e,payload:i,outcome:"success",emittedEvents:[...a],t_ns:h,seq:w??0,...r.handlerVersion!==void 0?{handlerVersion:r.handlerVersion}:{}}),onFailure:([i],g,{t_ns:h,seq:w,errorType:T})=>{let p=g instanceof O?g:new O(e,g);return{commandName:e,payload:i,outcome:"failure",error:p,errorType:T,emittedEvents:[...a],t_ns:h,seq:w??0,...r.handlerVersion!==void 0?{handlerVersion:r.handlerVersion}:{}}}})(n)}catch(i){throw d&&s.meta.error.emit(i,{internal:!0}),i}}projection(e){let{name:n,events:t,reducer:r,initial:s}=e,a=e.mode??"scan",d=e.freezeInputs??!0,u=e.snapshot,i=t.map(l=>(this._eventLogs.has(l)||this.event(l),this._eventLogs.get(l).node));function g(l){l.sort((c,v)=>c.timestampNs-v.timestampNs||c.seq-v.seq||(c.aggregateId??"").localeCompare(v.aggregateId??""))}function h(l){let c=[];for(let v of l)c.push(...v);return g(c),c}let w=i.map(l=>l.cache??[]),T=h(w),p=d?Object.freeze(T):T,m=0,y=s;a==="scan"&&T.length>0&&(y=r(s,p),m=T.length);let E=a==="replay"?r(s,p):y,S=u?.saveDebounceMs??1e3,A=u?.saveEvery??1e3,_,x=0;function R(l){if(u?.save){if(x+=1,x>=A){x=0,_!==void 0&&(clearTimeout(_),_=void 0);let c=u.save(l);c instanceof Promise&&c.catch(()=>{});return}_!==void 0&&clearTimeout(_),_=setTimeout(()=>{_=void 0,x=0;let c=u.save(l);c instanceof Promise&&c.catch(()=>{})},S)}}let k=j(i,l=>{let c=h(l),v;if(a==="replay"){let b=d?Object.freeze(c):c;v=r(s,b)}else{let b=c.slice(m);m=c.length;let f=d?Object.freeze(b):b;v=r(y,f),y=v}return R(v),v},{name:n,describeKind:"derived",meta:$("projection",{projection_name:n,source_events:t}),guard:pe,initial:E});return this.add(k,{name:n}),this._keepaliveDisposers.push(V(k)),this._keepaliveDisposers.push(()=>{_!==void 0&&(clearTimeout(_),_=void 0)}),this._projections.add(n),{node:k,rebuild:async l=>{try{let c=l?.pageSize??1e3,v=l?.fromTier??this._attachedEventTiers[0]?.[0],b=h(i.map(C=>C.cache??[])).length,f=s;if(u?.load){let C=await u.load();C!==void 0&&(f=C)}if(!v||!v.loadEntries){let C=h(i.map(L=>L.cache??[])),q=d?Object.freeze(C):C;f=r(f,q)}else{let C=new Set(t),q,L=!1;for(;!L;){let G=await v.loadEntries({cursor:q,pageSize:c}),U=[...G.entries].filter(ce=>C.has(ce.type));g(U);let ge=d?Object.freeze(U):U;f=r(f,ge),q=G.cursor,L=!q||G.entries.length===0}}if(a==="scan"){let C=h(i.map(L=>L.cache??[])),q=C.slice(b);if(q.length>0){let L=d?Object.freeze(q):q;f=r(f,L)}y=f,m=C.length}return k.emit(f,{internal:!0}),f}catch(c){throw new P(n,c)}},reset:async()=>{try{let l=s;if(u?.load){let f=await u.load();f!==void 0&&(l=f)}let c=h(i.map(f=>f.cache??[])),v=d?Object.freeze(c):c,b=r(l,v);return a==="scan"&&(y=b,m=c.length),k.emit(b,{internal:!0}),b}catch(l){throw new P(n,l)}}}}saga(e,n,t,r={}){let s=n.map(p=>(this._eventLogs.has(p)||this.event(p),this._eventLogs.get(p).node)),a=ae(this,`${e}_cursor`,n,0),d=M({name:`${e}_invocations`,retainedLimit:this._retainedLimit,graph:this}),u=r.aggregateId,i=r.errorPolicy??"advance",g=new Map;for(let p of n){let m=a[p];g.set(p,m.cache??0);let y=m.subscribe(E=>{for(let S of E)S[0]===Q&&g.set(p,S[1])});this._keepaliveDisposers.push(y)}let h=re((p,m)=>{t(p)},{audit:d,freeze:!1,...r.handlerVersion!==void 0?{handlerVersion:r.handlerVersion}:{},onSuccess:([p,m],y,{t_ns:E})=>({eventType:m,outcome:"success",aggregateId:p.aggregateId,event:p,t_ns:E}),onFailure:([p,m],y,{t_ns:E,errorType:S})=>({eventType:m,outcome:"failure",error:y,errorType:S,aggregateId:p.aggregateId,event:p,t_ns:E})}),w={},T=X(s,(p,m)=>{let y=w.n.meta.error;for(let E=0;E<p.length;E++){let S=p[E];if(S==null||S.length===0)continue;let A=S.at(-1);if(!A)continue;let _=n[E],x=a[_],R=g.get(_)??0;if(A.length>R){let k=A.slice(R),z=R;for(let Z of k){let l=Z;if(u!==void 0&&l.aggregateId!==u){z+=1;continue}try{h(l,_),y.emit(null,{internal:!0}),z+=1}catch(c){if(y.emit(c,{internal:!0}),i==="hold")break;z+=1}}x.emit(z)}}},{name:e,describeKind:"effect",meta:{...$("saga",{saga_name:e,source_events:n}),error:null}});return w.n=T,this.add(T,{name:e}),this._keepaliveDisposers.push(V(T)),this._sagas.add(e),{node:T,invocations:d,audit:d,cursors:a}}};function me(o,e){let n=new F(o,e),{factory:t,factoryArgs:r,...s}=e??{};return n.tagFactory("cqrs",te(s)),n}export{he as a,ve as b,fe as c,F as d,me as e,ye as f};
@@ -1 +0,0 @@
1
- import{j as y}from"./chunk-HITNVN6B.js";import{b as x}from"./chunk-YBB7ZGTY.js";import{E as T,m as A,p as f,t as b}from"./chunk-NTEURFZH.js";import{b as m,c as R}from"./chunk-CK2E7BTU.js";function z(r,e){let n=r.cache??0;return n>=e?!1:(r.down([[R],[m,n+1]]),!0)}var k=b((r,e)=>{r("observe"),r("signal"),e("write")});function q(r){let e=x([],{name:r.name,maxSize:r.retainedLimit??1024,guard:r.guard??k,...r.versioning!=null?{versioning:r.versioning}:{}});return e.withLatest(),r.graph&&r.graph.add(e.entries,{name:r.name}),e}function p(r){if(r===null||typeof r!="object"||Object.isFrozen(r))return r;for(let e of Object.keys(r))p(r[e]);return Object.freeze(r)}var h=new WeakSet;function w(r){let e=r.cache,n=typeof e=="number"&&Number.isFinite(e);!n&&e!==void 0&&!h.has(r)&&(h.add(r),console.warn(`bumpCursor: cursor cache held a non-numeric value (${String(e)}); resetting to 0. Causes include: a snapshot codec round-tripping the cursor as a string / null / NaN, OR a malformed initial seed (e.g. state<number>(NaN)). Audit consumers may see colliding seq values after this point.`));let s=(n?e:0)+1;return r.down([[R],[m,s]]),s}function l(r,e,n,i,s,u){let o=e(n,i,s);if(o===void 0)return;let a=u!=null?{...o,handlerVersion:u}:o;r.append(a)}function G(r,e){let n=e.freeze??!0;return function(...s){let u=n?s.map(p):s,o=f(),a=e.seq?w(e.seq):void 0;try{let t=r(...u);return e.audit&&e.onSuccess&&l(e.audit,e.onSuccess,u,t,{t_ns:o,seq:a},e.handlerVersion),t}catch(t){if(e.audit&&e.onFailure){let d=t instanceof Error?t.name:typeof t;l(e.audit,e.onFailure,u,t,{t_ns:o,seq:a,errorType:d},e.handlerVersion)}throw t}}}function V(r,e){let n=e.freeze??!0;return function(...s){let u=n?s.map(p):s,o=f(),a,t,d=!1,g;try{A(()=>{e.seq&&(g=w(e.seq));try{a=r(...u),e.audit&&e.onSuccess&&l(e.audit,e.onSuccess,u,a,{t_ns:o,seq:g},e.handlerVersion)}catch(c){throw t=c,d=!0,c}})}catch(c){if(d&&e.audit&&e.onFailure){let M=t instanceof Error?t.name:typeof t;l(e.audit,e.onFailure,u,t,{t_ns:o,seq:g,errorType:M},e.handlerVersion)}throw d?t:c}return a}}function _(r,e,n=0){let i=T(n,{name:e,describeKind:"state"});return r.add(i,{name:e}),i}function C(r,e,n,i=0){let s={},u=new y(e);for(let o of n){let a=T(i,{name:o,describeKind:"state"});u.add(a,{name:o}),s[o]=a}return r.mount(e,u),s}export{z as a,k as b,q as c,w as d,l as e,G as f,V as g,_ as h,C as i};
@@ -1 +0,0 @@
1
- import{m as x,x as w}from"./chunk-CRVT7D2P.js";import{i as g,j as p}from"./chunk-CK2E7BTU.js";async function k(o){let i=typeof o=="string"?new TextEncoder().encode(o):o,c=await globalThis.crypto.subtle.digest("SHA-256",i),t=new Uint8Array(c),n="";for(let r=0;r<t.length;r++)n+=b[t[r]];return n}var b=new Array(256);for(let o=0;o<256;o++)b[o]=o.toString(16).padStart(2,"0");var m=class extends Error{constructor(c,t){super(`content-addressed lookup miss in read-strict mode: ${c}`);this.key=c;this.context=t;this.name="ContentAddressedMissError"}};function T(o){let i=new Set,c=t=>{if(t===null||typeof t!="object")return t;let n=t;if(i.has(n))return{__cycle:!0};i.add(n);try{if(Array.isArray(t))return t.map(c);let r={};for(let d of Object.keys(t).sort())r[d]=c(t[d]);return r}finally{i.delete(n)}};return JSON.stringify(c(o))}function P(o){let{storage:i,keyContext:c,keyPrefix:t,mode:n="read-write"}=o,r=c??(e=>e);async function d(e){let s=T(r(e)),a=await k(s);return t?`${t}:${a}`:a}return{keyFor:d,async lookup(e){if(n==="write")return;let s=await d(e),a=await i.load(s);if(a===void 0){if(n==="read-strict")throw new m(s,e);return}return a},async store(e,s){if(n==="read")return;let a=await d(e);await i.save(a,s)},async forget(e){if(n==="read"||n==="write"||!i.delete)return;let s=await d(e);await i.delete(s)}}}function K(o,i={}){let c=i.keyFn??(n=>String(n)),t=new Map;return n=>{let r=c(n),d=t.get(r);if(d)return d;let e=o(n),s;e!=null&&typeof e.then=="function"?s=Promise.resolve(e):e!=null&&typeof e=="object"&&"subscribe"in e&&"cache"in e?s=w(e):e!=null&&typeof e=="object"&&Symbol.asyncIterator in e?s=(async()=>{let u=e[Symbol.asyncIterator]();try{let{value:l,done:f}=await u.next();if(f)throw new Error("singleFromAny: factory returned empty async iterable");return l}finally{await u.return?.()}})():e!=null&&typeof e=="object"&&Symbol.iterator in e?s=(async()=>{let u=e[Symbol.iterator]();try{let{value:l,done:f}=u.next();if(f)throw new Error("singleFromAny: factory returned empty iterable");return l}finally{u.return?.()}})():s=Promise.resolve(e);let a,y=()=>{t.get(r)===a&&t.delete(r)};return a=s.then(u=>(y(),u),u=>{throw y(),u}),t.set(r,a),a}}function j(o,i={}){let c=i.keyFn??(n=>String(n)),t=new Map;return n=>{let r=c(n),d=t.get(r);if(d)return d;let e=x(o(n));t.set(r,e);let s=e.subscribe(a=>{for(let y of a)if(y[0]===p||y[0]===g){t.get(r)===e&&t.delete(r),s();return}});return e}}export{k as a,m as b,T as c,P as d,K as e,j as f};
@@ -1 +0,0 @@
1
- import{F as l}from"./chunk-NTEURFZH.js";import{b as u,i as d,j as t}from"./chunk-CK2E7BTU.js";function c(r){return l(n=>{let e=!1,o=()=>{r.onsuccess=null,r.onerror=null};return r.onsuccess=()=>{e||(e=!0,o(),n.down([[u,r.result],[d]]))},r.onerror=()=>{e||(e=!0,o(),n.down([[t,r.error??new Error("IndexedDB request failed")]]))},()=>{e=!0,o()}})}function f(r){return l(n=>{let e=!1,o=()=>{r.oncomplete=null,r.onerror=null,r.onabort=null};return r.oncomplete=()=>{e||(e=!0,o(),n.down([[u,void 0],[d]]))},r.onerror=()=>{e||(e=!0,o(),n.down([[t,r.error??new Error("IndexedDB transaction failed")]]))},r.onabort=()=>{e||(e=!0,o(),n.down([[t,r.error??new Error("IndexedDB transaction aborted")]]))},()=>{e=!0,o()}})}export{c as a,f as b};
@@ -1 +0,0 @@
1
- import{C as O}from"./chunk-CRVT7D2P.js";import{D as H,E as A,G as k,m as D}from"./chunk-NTEURFZH.js";import{b as N,c as $,d as K,i as B,j as E}from"./chunk-CK2E7BTU.js";var C=class{_version=0;_maxSize;_buf;_head=0;_size=0;constructor(n,t){if(t!==void 0&&t<1)throw new RangeError("maxSize must be >= 1");if(this._maxSize=t,t!==void 0){if(this._buf=new Array(t),n&&n.length>0){let s=Math.min(n.length,t),h=n.length-s;for(let o=0;o<s;o++)this._buf[o]=n[h+o];this._size=s}}else this._buf=n?[...n]:[],this._size=this._buf.length}get version(){return this._version}get size(){return this._size}at(n){if(!Number.isInteger(n))return;let t=n>=0?n:this._size+n;if(!(t<0||t>=this._size))return this._maxSize!==void 0?this._buf[(this._head+t)%this._maxSize]:this._buf[t]}append(n){this._rawAppend(n),this._version+=1}appendMany(n){if(n.length===0)return;let t=this._maxSize!==void 0&&n.length>this._maxSize?n.length-this._maxSize:0;for(let s=t;s<n.length;s++)this._rawAppend(n[s]);this._version+=1}clear(){if(this._size===0)return 0;let n=this._size;if(this._maxSize===void 0)this._buf.length=0;else for(let t=0;t<n;t++)this._buf[(this._head+t)%this._maxSize]=void 0;return this._head=0,this._size=0,this._version+=1,n}trimHead(n){if(!Number.isInteger(n)||n<0)throw new RangeError(`trimHead: n must be a non-negative integer (got ${n})`);if(n===0||this._size===0)return 0;let t=Math.min(n,this._size);if(this._maxSize===void 0)this._buf.splice(0,t);else{for(let s=0;s<t;s++)this._buf[(this._head+s)%this._maxSize]=void 0;this._head=(this._head+t)%this._maxSize}return this._size-=t,this._version+=1,t}slice(n,t){if(!Number.isInteger(n)||n<0)throw new RangeError(`slice: start must be a non-negative integer (got ${n})`);if(t!==void 0&&(!Number.isInteger(t)||t<0))throw new RangeError(`slice: stop must be a non-negative integer or undefined (got ${t})`);let s=t===void 0?this._size:Math.min(Math.max(t,0),this._size),h=Math.min(n,this._size);if(h>=s)return[];let o=s-h;if(this._maxSize===void 0)return this._buf.slice(h,s);let b=new Array(o);for(let r=0;r<o;r++)b[r]=this._buf[(this._head+h+r)%this._maxSize];return b}tail(n){if(!Number.isInteger(n)||n<0)throw new RangeError(`tail: n must be a non-negative integer (got ${n})`);if(n===0||this._size===0)return[];let t=Math.min(n,this._size);return this.slice(this._size-t,this._size)}toArray(){if(this._maxSize===void 0)return[...this._buf];let n=new Array(this._size);for(let t=0;t<this._size;t++)n[t]=this._buf[(this._head+t)%this._maxSize];return n}snapshot(){return this.toArray()}restore(n){if(this._maxSize===void 0){this._buf.length=0;for(let t=0;t<n.length;t++)this._buf.push(n[t]);this._size=this._buf.length}else{let t=this._maxSize;for(let o=0;o<t;o++)this._buf[o]=void 0;this._head=0;let s=Math.min(n.length,t),h=n.length-s;for(let o=0;o<s;o++)this._buf[o]=n[h+o];this._size=s}this._version+=1}_rawAppend(n){if(this._maxSize===void 0){this._buf.push(n),this._size=this._buf.length;return}this._size<this._maxSize?(this._buf[(this._head+this._size)%this._maxSize]=n,this._size+=1):(this._buf[this._head]=n,this._head=(this._head+1)%this._maxSize)}};function x(g){return g.subscribe(()=>{})}var G=64;function Q(g,n={}){let{name:t,maxSize:s,versioning:h,guard:o,backend:b}=n,r=b??new C(g,s),m=A(r.toArray(),{name:t,describeKind:"state",equals:(e,i)=>e===i,...h!=null?{versioning:h}:{},...o!=null?{guard:o}:{}});function w(){let e=r.toArray();D(()=>{m.down([[$]],{internal:!0}),m.down([[N,e]],{internal:!0})})}let u=new Map,l=new Map,_=new Map;function M(e,i){return`${e}:${i===void 0?"END":i}`}function y(e){if(e.size<G)return;let i=e.keys().next();if(i.done)return;let d=e.get(i.value);d!==void 0&&d.dispose(),e.delete(i.value)}function v(e){let i=r.version;try{return e()}finally{r.version!==i&&w()}}function P(e){if(!Number.isInteger(e)||e<0)throw new RangeError(`tail: n must be a non-negative integer (got ${e})`);let i=u.get(e);if(i!==void 0)return u.delete(e),u.set(e,i),i.node;y(u);let d=k([m],([f])=>{let c=f;return e===0||c.length===0?[]:c.slice(Math.max(0,c.length-e))},{initial:r.tail(e),describeKind:"derived"}),a=x(d);return u.set(e,{node:d,dispose:a}),d}function j(e,i){if(!Number.isInteger(e)||e<0)throw new RangeError(`slice: start must be a non-negative integer (got ${e})`);if(i!==void 0&&(!Number.isInteger(i)||i<0))throw new RangeError(`slice: stop must be a non-negative integer or undefined (got ${i})`);let d=M(e,i),a=l.get(d);if(a!==void 0)return l.delete(d),l.set(d,a),a.node;y(l);let f=k([m],([p])=>{let T=p;return i===void 0?T.slice(e):T.slice(e,i)},{initial:r.slice(e,i),describeKind:"derived"}),c=x(f);return l.set(d,{node:f,dispose:c}),f}function q(e){let i=_.get(e);if(i!==void 0)return i.node;let d=k([m,e],([f,c])=>{let p=f,T=Math.max(0,Math.trunc(c??0));return p.slice(T)},{initial:[],describeKind:"derived"}),a=x(d);return _.set(e,{node:d,dispose:a}),d}let L,S;function R(){L===void 0&&(L=H([m],(e,i,d)=>{let a=e[0],c=a!=null&&a.length>0?a.at(-1):d.prevData[0];if(c==null||c.length===0){i.down([[K]]);return}i.emit(c[c.length-1])},{name:t!=null?`${t}::lastValue`:"lastValue",describeKind:"derived",initial:r.size===0?void 0:r.at(r.size-1)}),S=k([m],([e])=>e.length>0,{name:t!=null?`${t}::hasLatest`:"hasLatest",describeKind:"derived",initial:r.size>0}),x(L),x(S))}let I={entries:m,get size(){return r.size},at(e){return r.at(e)},append(e){v(()=>r.append(e))},appendMany(e){e.length!==0&&v(()=>r.appendMany(e))},clear(){v(()=>r.clear())},trimHead(e){v(()=>r.trimHead(e))},withLatest(){return R(),m},get lastValue(){return R(),L},get hasLatest(){return R(),S},view(e){switch(e.kind){case"tail":return P(e.n);case"slice":return j(e.start,e.stop);case"fromCursor":return q(e.cursor)}},attach(e){let i=e.subscribe(d=>{for(let a of d)a[0]===N&&I.append(a[1])});return()=>i()},attachStorage(e){if(e.length===0)return()=>{};let i=new Map;for(let a of e)i.set(a,r.size);(async()=>{for(let a of e)if(typeof a.loadEntries=="function")try{let f=await Promise.resolve(a.loadEntries());f.entries.length>0&&r.size===0&&(r.restore(f.entries),i.set(a,f.entries.length),w());break}catch{}})();let d=m.subscribe(a=>{for(let f of a){if(f[0]!==N)continue;let c=f[1];for(let p of e){let T=i.get(p)??0;if(c.length<T){try{let z=p.appendEntries(c);z instanceof Promise&&z.catch(()=>{})}catch{}i.set(p,c.length);continue}if(c.length===T)continue;let F=c.slice(T);i.set(p,c.length);try{let z=p.appendEntries(F);z instanceof Promise&&z.catch(()=>{})}catch{}}}});return()=>d()},disposeAllViews(){for(let e of u.values())e.dispose();u.clear();for(let e of l.values())e.dispose();l.clear();for(let e of _.values())e.dispose();_.clear()},dispose(){for(let e of u.values())e.dispose();u.clear();for(let e of l.values())e.dispose();l.clear();for(let e of _.values())e.dispose();_.clear()}};return I}var V=new WeakMap;function Z(g){let n=V.get(g);if(n)return n;let t=g.map(u=>u.cache??[]),s=t.flat(),h=A(s,{name:"mergeReactiveLogs",describeKind:"state",equals:(u,l)=>u===l}),o=g.map((u,l)=>[...t[l]??[]]),b=[];for(let u=0;u<g.length;u++){let l=u,_=g[l].subscribe(M=>{for(let y of M)if(y[0]===N)o[l]=[...y[1]],h.emit(o.flat());else if(y[0]===B){o[l]=[];let v=b[l];v!==void 0&&(b[l]=void 0,v())}else y[0]===E&&h.down([[E,y[1]]])});b.push(_)}let r=O(h),m=!1,w={node:h,dispose(){if(!m){m=!0;for(let u of b)u?.();b.length=0,r(),V.delete(g)}}};return V.set(g,w),w}export{C as a,Q as b,Z as c};
@@ -1 +0,0 @@
1
- import{a as I}from"./chunk-W3I423PS.js";import{a as F}from"./chunk-L6NSJVJZ.js";import{j as h}from"./chunk-HITNVN6B.js";import{t as T}from"./chunk-CLVB32RD.js";import{C as y}from"./chunk-CRVT7D2P.js";import{D as v,E as x,G as S,J as E,m as _}from"./chunk-NTEURFZH.js";import{b as R,i as O,j as k}from"./chunk-CK2E7BTU.js";import{b as A}from"./chunk-QYADASLV.js";var M={};A(M,{feedback:()=>G,funnel:()=>$,scorer:()=>q});function N(e,n){return F("reduction",e,n)}function $(e,n,t,l){if(n.length===0)throw new RangeError("funnel requires at least one source");if(t.length===0)throw new RangeError("funnel requires at least one stage");let r=new h(e,l),m=n.length===1?n[0]:T(...n);r.add(m,{name:"merged"});let a="merged";for(let c=0;c<t.length;c++){let o=t[c],s=new h(o.name);o.build(s);try{s.resolve("input")}catch{throw new Error(`funnel stage "${o.name}" must define an "input" node`)}try{s.resolve("output")}catch{throw new Error(`funnel stage "${o.name}" must define an "output" node`)}r.mount(o.name,s);let i=r.resolve(a),u=`${o.name}::input`,p=r.resolve(u),f=`__bridge_${a}\u2192${o.name}_input`,b=E([i],([d])=>{p.emit(d)},{name:f});r.add(b,{name:f}),r.addDisposer(y(b)),a=`${o.name}::output`}return r}function G(e,n,t,l){let r=l?.maxIterations??10,m=`__feedback_${n}`,a=x(0,{meta:N("feedback_counter",{maxIterations:r,feedbackFrom:n,feedbackTo:t})});e.add(a,{name:m});let c=e.resolve(n),o=e.resolve(t),s=`__feedback_effect_${n}`,i=v([],(u,p)=>{let f=c.subscribe(b=>{for(let d of b){let g=d[0];if(g===R){let w=d[1];if(w==null)return;_(()=>{I(a,r)&&o.emit(w)})}else if(g===O||g===k){let w=g===k&&d.length>1?[k,d[1]]:[g];a.down([w])}}});return()=>f()},{name:s,describeKind:"effect",meta:{...N("feedback_effect",{feedbackFrom:n,feedbackTo:t}),_internal:!0}});return e.add(i,{name:s}),e.addDisposer(y(i)),e}function q(e,n,t){if(e.length===0)throw new RangeError("scorer requires at least one source");if(e.length!==n.length)throw new RangeError("scorer requires the same number of sources and weights");let l=[...e,...n],r=e.length,m=t?.scoreFns;return S(l,a=>{let c=a.slice(0,r),o=a.slice(r),s=[],i=0;for(let u=0;u<r;u++){let p=c[u]??0,f=o[u]??0,d=(m?.[u]?m[u](p):p)*f;s.push(d),i+=d}return{value:c,score:i,breakdown:s}},{...t?{equals:t.equals,resubscribable:t.resubscribable,resetOnTeardown:t.resetOnTeardown}:{},describeKind:"derived",meta:N("scorer",t?.meta)})}export{$ as a,G as b,q as c,M as d};
@@ -1 +0,0 @@
1
- import{E as l,L as f}from"./chunk-NTEURFZH.js";import{b as m,j as d}from"./chunk-CK2E7BTU.js";import{b as p}from"./chunk-QYADASLV.js";var F={};p(F,{atom:()=>A});function A(s,n,e){if(typeof s=="function"){let t=s;return typeof n=="function"?b(t,n,e):b(t,void 0,n)}return v(s,n)}function c(s){let n=s.cache,e;if(s.subscribe(i=>{for(let[r,o]of i)r===m&&(n=o),r===d&&(e=o)})(),e)throw e;return n}function v(s,n){let e=l(s,{...n,resubscribable:!0,resetOnTeardown:!0});return{get:()=>e.status==="sentinel"?c(e):e.cache,set:t=>e.emit(t),update:t=>{let i=e.status==="sentinel"?c(e):e.cache;e.emit(t(i))},subscribe:t=>{let i=!0;return e.subscribe(r=>{for(let[o,a]of r)if(o===m){if(i){i=!1;continue}t(a)}})},meta:e.meta,_node:e}}function b(s,n,e){let t=f(r=>s(o=>{let a=o._node;return a.status==="sentinel"&&c(a),r(a)}),{...e,resubscribable:!0,resetOnTeardown:!0}),i={get:()=>t.status==="sentinel"?c(t):t.cache,subscribe:r=>{let o=!0;return t.subscribe(a=>{for(let[u,T]of a)if(u===m){if(o){o=!1;continue}r(T)}})},meta:t.meta,_node:t};if(n){let r=u=>u.get(),o=(u,T)=>u.set(T),a=i;return a.set=u=>n(r,o,u),a.update=u=>{let T=t.status==="sentinel"?c(t):t.cache;return n(r,o,u(T))},a}return i}export{A as a,F as b};
@@ -1 +0,0 @@
1
- import{c as $,g as _}from"./chunk-W3I423PS.js";import{a as L}from"./chunk-L6NSJVJZ.js";import{j as F}from"./chunk-HITNVN6B.js";import{b as z}from"./chunk-GHBWHMRZ.js";import{D as j,E as G,G as D,m as E,p as B}from"./chunk-NTEURFZH.js";import{b as P,d as S,i as I,j as K}from"./chunk-CK2E7BTU.js";import{b as ie}from"./chunk-QYADASLV.js";var se={};ie(se,{PipelineGraph:()=>x,decisionKeyOf:()=>q,pipelineGraph:()=>W});function N(y,t){return L("orchestration",y,t)}var q=y=>y.action,x=class extends F{constructor(t,i){super(t,i)}task(t,i,e={}){let a=(e.deps??[]).map(c=>this._resolveStep(c)),p=D(a,i,{name:t,describeKind:"derived",meta:N("task",e.meta)});return this.add(p,{name:t}),p}classify(t,i,e,a={}){let p=this._resolveStep(i),c=D([p],([d])=>{try{return{tag:e(d),value:d}}catch(f){return{tag:"error",value:d,error:f}}},{name:t,describeKind:"derived",meta:N("classify",a.meta)});return this.add(c,{name:t}),c}combine(t,i,e={}){let a=Object.keys(i),p=a.map(d=>this._resolveStep(i[d])),c=D(p,d=>{let f={};for(let s=0;s<a.length;s++)f[a[s]]=d[s];return f},{name:t,describeKind:"derived",meta:N("combine",e.meta)});return this.add(c,{name:t}),c}approvalGate(t,i,e={}){let a=e.maxPending??1e3;if(a<1&&a!==Number.POSITIVE_INFINITY)throw new RangeError("approvalGate: maxPending must be >= 1");let p=e.startOpen??!1;typeof i!="string"&&this.nameOf(i)===void 0&&this.add(i,{name:`${t}/source`});let c=this._resolveStep(i),d=new F(`${t}_state`),f=G([],{name:"pending",equals:()=>!1}),s=G(p,{name:"isOpen"}),R=D([f],([n])=>n.length,{name:"count"}),T=G(0,{name:"droppedCount"}),u=$({name:"decisions",retainedLimit:1024,graph:d});d.add(f,{name:"pending"}),d.add(s,{name:"isOpen"}),d.add(R,{name:"count"}),d.add(T,{name:"droppedCount"}),this.mount(`${t}_state`,d);let l=[],v=!1,k=!1,w=p,M=s.subscribe(n=>{for(let o of n)o[0]===P&&(w=o[1])});this.addDisposer(M);function A(){f.emit([...l])}function C(n,o,r){u.append({action:n,t_ns:B(),...o!==void 0?{items:o,count:o.length}:{},...r!==void 0?{unflushed:r}:{},...e.handlerVersion!=null?{handlerVersion:e.handlerVersion}:{}})}function U(n){if(l.push(n),l.length>a){let o=l.shift();T.emit(T.cache+1),C("drop",[o])}A()}function O(n){let o=l.splice(0,n);return A(),o}let b=j([c],(n,o,r)=>{let h=r.terminalDeps[0];if(h!==void 0){v=!0;let g=l.length;l=[],A(),C("teardown",void 0,g),o.down(h===!0?[[I]]:[[K,h]]);return}let m=n[0];if(m==null||m.length===0){o.down([[S]]);return}for(let g of m)w?o.emit(g):(U(g),o.down([[S]]))},{name:t,describeKind:"derived",meta:N("approval_gate",e.meta)});if(this.add(b,{name:t}),e.approver!=null){e.approver.cache&&(s.emit(!0),w=!0,e.onceOnly&&(k=!0));let o=e.approver.subscribe(r=>{for(let h of r){if(h[0]!==P)continue;let m=!!h[1];if(m&&!w){if(e.onceOnly){if(k)continue;k=!0}E(()=>{s.emit(!0);let g=O(l.length);C("open",g);for(let te of g){if(v)break;b.emit(te)}})}else if(!m&&w){if(e.onceOnly&&k)continue;E(()=>{s.emit(!1),C("close")})}}});this.addDisposer(o)}let V=n=>{if(v)throw new Error(`approvalGate: ${n}() called after the gate was torn down`)},Y=(n=1)=>{V("approve");let o=O(n);for(let r of o){if(v)break;b.emit(r)}},H=(n=1)=>{V("reject"),O(n)},J=(n,o=1)=>{V("modify");let r=[...l],h=O(o);for(let m=0;m<h.length&&!v;m++)b.emit(n(h[m],m,r))},Q=()=>{V("open"),s.emit(!0);let n=O(l.length);for(let o of n){if(v)break;b.emit(o)}},X=()=>{V("close"),!(e.onceOnly&&k)&&s.emit(!1)},Z=_(Y,{audit:u,freeze:!1,onSuccess:(n,o,r)=>({action:"approve",count:n[0]??1,t_ns:r.t_ns,...e.handlerVersion!=null?{handlerVersion:e.handlerVersion}:{}}),onFailure:(n,o,r)=>({action:"drop",t_ns:r.t_ns,errorType:r.errorType,...e.handlerVersion!=null?{handlerVersion:e.handlerVersion}:{}})}),ee=_(H,{audit:u,freeze:!1,onSuccess:(n,o,r)=>({action:"reject",count:n[0]??1,t_ns:r.t_ns,...e.handlerVersion!=null?{handlerVersion:e.handlerVersion}:{}}),onFailure:(n,o,r)=>({action:"drop",t_ns:r.t_ns,errorType:r.errorType,...e.handlerVersion!=null?{handlerVersion:e.handlerVersion}:{}})}),ne=_(J,{audit:u,freeze:!1,onSuccess:(n,o,r)=>({action:"modify",count:n[1]??1,t_ns:r.t_ns,...e.handlerVersion!=null?{handlerVersion:e.handlerVersion}:{}}),onFailure:(n,o,r)=>({action:"drop",t_ns:r.t_ns,errorType:r.errorType,...e.handlerVersion!=null?{handlerVersion:e.handlerVersion}:{}})}),re=_(Q,{audit:u,freeze:!1,onSuccess:(n,o,r)=>({action:"open",t_ns:r.t_ns,...e.handlerVersion!=null?{handlerVersion:e.handlerVersion}:{}}),onFailure:(n,o,r)=>({action:"drop",t_ns:r.t_ns,errorType:r.errorType,...e.handlerVersion!=null?{handlerVersion:e.handlerVersion}:{}})}),oe=_(X,{audit:u,freeze:!1,onSuccess:(n,o,r)=>({action:"close",t_ns:r.t_ns,...e.handlerVersion!=null?{handlerVersion:e.handlerVersion}:{}}),onFailure:(n,o,r)=>({action:"drop",t_ns:r.t_ns,errorType:r.errorType,...e.handlerVersion!=null?{handlerVersion:e.handlerVersion}:{}})});return this.addDisposer(R.subscribe(()=>{})),{output:b,pending:f,count:R,isOpen:s,droppedCount:T,decisions:u,audit:u,approve:Z,reject:ee,modify:ne,open:re,close:oe}}approval(t,i,e,a={}){return this.approvalGate(t,i,{...a,approver:e,maxPending:1})}catch(t,i,e,a={}){let p=this._resolveStep(i),c=a.on??"errored",d=j([p],(f,s,R)=>{let T=R.terminalDeps[0];if(T!==void 0){let l=T===!0?{kind:"completed"}:{kind:"errored",error:T};if(c==="terminal"||c===l.kind){s.emit(e(l,s));return}s.down(l.kind==="completed"?[[I]]:[[K,l.error]]);return}let u=f[0];if(u==null||u.length===0){s.down([[S]]);return}for(let l of u)s.emit(l)},{name:t,describeKind:"derived",completeWhenDepsComplete:a.completeWhenDepsComplete??!(c==="completed"||c==="terminal"),errorWhenDepsError:!(c==="errored"||c==="terminal"),meta:N("catch",a.meta)});return this.add(d,{name:t}),d}_resolveStep(t){if(typeof t=="string")return this.resolve(t);if(this.nameOf(t)===void 0)throw new Error(`PipelineGraph "${this.name}": Node dep is not registered. Pass a string path or call graph.add(node) first.`);return t}};function W(y,t){let i=new x(y,t),{factory:e,factoryArgs:a,...p}=t??{};return i.tagFactory("pipelineGraph",z(p)),i}export{q as a,x as b,W as c,se as d};
@@ -1 +0,0 @@
1
- import{a as T,b as k}from"./chunk-DHRX7JX4.js";import{d as H}from"./chunk-3G5U5QNE.js";import{j as B}from"./chunk-HITNVN6B.js";import{a as j,d as q}from"./chunk-GHBWHMRZ.js";import{E as d,G as o,J as x,m as O}from"./chunk-NTEURFZH.js";import{b as re}from"./chunk-QYADASLV.js";var oe={};re(oe,{demoShell:()=>ie});function w(h){return Math.max(0,Math.min(1,h))}function ie(h){let E=w(h?.mainRatio??.65),J=w(h?.sideSplit??.5),K=Math.max(0,h?.viewportWidth??1280),F=h?.nodeRegistry??new Map,m=h?.adapter??null,M=h?.layoutFont??"14px monospace",p=h?.onHighlight,t=new B("demo-shell"),D=d(E,{name:"pane/main-ratio"}),L=d(J,{name:"pane/side-split"}),g=d(null,{name:"pane/fullscreen"}),G=d(K,{name:"viewport/width"});t.add(D,{name:"pane/main-ratio"}),t.add(L,{name:"pane/side-split"}),t.add(g,{name:"pane/fullscreen"}),t.add(G,{name:"viewport/width"});let R=o([D,G,g],([e,a,n])=>{let l=e,r=a,i=n;return i==="main"?r:i==="graph"||i==="code"?0:Math.round(r*l)},{name:"pane/main-width"}),C=o([R,G,g],([e,a,n])=>{let l=n,r=a;return l==="main"?0:l==="graph"||l==="code"?r:r-e},{name:"pane/side-width"}),z=o([L,g],([e,a])=>{let n=a;return n==="graph"?1:n==="code"||n==="main"?0:w(e)},{name:"pane/graph-height-ratio"}),Q=o([z,g],([e,a])=>{let n=a;return n==="code"?1:n==="graph"||n==="main"?0:1-e},{name:"pane/code-height-ratio"});t.add(R,{name:"pane/main-width"}),t.add(C,{name:"pane/side-width"}),t.add(z,{name:"pane/graph-height-ratio"}),t.add(Q,{name:"pane/code-height-ratio"});let b=d(null,{name:"demo/graph-ref"}),u=d(0,{name:"demo/graph-tick"});t.add(b,{name:"demo/graph-ref"}),t.add(u,{name:"demo/graph-tick"});let U=o([b,u],([e,a])=>{let n=e;return n?H(n.describe()):""},{name:"graph/mermaid"}),P=o([b,u],([e,a])=>{let n=e;if(!n)return null;let{expand:l,...r}=n.describe({detail:"standard"});return r},{name:"graph/describe"});t.add(U,{name:"graph/mermaid"}),t.add(P,{name:"graph/describe"});let S=d(null,{name:"hover/target"});t.add(S,{name:"hover/target"});let W=o([S],([e])=>{let a=e;if(!a)return null;let n=F.get(a.id);return n?n.codeLine:null},{name:"highlight/code-scroll"}),N=o([S],([e])=>{let a=e;if(!a)return null;let n=F.get(a.id);return n?n.visualSelector:null},{name:"highlight/visual"}),_=o([S],([e])=>{let a=e;return a?a.id:null},{name:"highlight/graph"});if(t.add(W,{name:"highlight/code-scroll"}),t.add(N,{name:"highlight/visual"}),t.add(_,{name:"highlight/graph"}),p?.codeScroll){let e=p.codeScroll,a=x([W],([n])=>{e(n)});t.add(a,{name:"highlight/apply-code-scroll"})}if(p?.visual){let e=p.visual,a=x([N],([n])=>{e(n)});t.add(a,{name:"highlight/apply-visual"})}if(p?.graph){let e=p.graph,a=x([_],([n])=>{e(n)});t.add(a,{name:"highlight/apply-graph"})}let I=d(null,{name:"inspect/selected-node"});t.add(I,{name:"inspect/selected-node"});let X=j("standard"),Y=o([I,b,u],([e,a,n])=>{let l=a,r=e;if(!l||!r)return null;try{let i=l.resolve(r),s=q(i,X);return{path:r,...s,value:i.cache}}catch{return null}},{name:"inspect/node-detail"}),Z=o([b,u],([e,a])=>{let n=e;return n?n.trace():[]},{name:"inspect/trace-log"});t.add(Y,{name:"inspect/node-detail"}),t.add(Z,{name:"inspect/trace-log"});let V=d(!1,{name:"meta/debug"});t.add(V,{name:"meta/debug"});let $=o([V,u],([e,a])=>e?H(t.describe()):"",{name:"meta/shell-mermaid"});t.add($,{name:"meta/shell-mermaid"});let A=d("",{name:"layout/code-text"});if(t.add(A,{name:"layout/code-text"}),m){let e=new Map,a=o([P],([r])=>{let i=r;if(!i)return new Map;let s=new Map;for(let[c]of Object.entries(i.nodes)){let f=T(c,M,m,e),v=k(f,1/0,m,M,e),y=v.lines.reduce((ne,ae)=>Math.max(ne,ae.width),0),te=v.lineCount*20;s.set(c,{width:y,height:te})}return s},{name:"layout/graph-labels",equals:(r,i)=>{if(r===i)return!0;let s=r,c=i;if(s.size!==c.size)return!1;for(let[f,v]of s){let y=c.get(f);if(!y||y.width!==v.width||y.height!==v.height)return!1}return!0}}),n=o([A,C],([r,i])=>{let s=r;if(!s)return{lineCount:0,lines:[]};let c=T(s,M,m,e),f=i-40;return k(c,Math.max(100,f),m,M,e)},{name:"layout/code-lines"}),l=o([a],([r])=>{let i=r;if(i.size===0)return 200;let s=0;for(let{width:c}of i.values())c>s&&(s=c);return Math.max(200,Math.round(s+80))},{name:"layout/side-width-hint"});t.add(a,{name:"layout/graph-labels"}),t.add(n,{name:"layout/code-lines"}),t.add(l,{name:"layout/side-width-hint"})}let ee=0;return{graph:t,setMainRatio(e){t.set("pane/main-ratio",w(e))},setSideSplit(e){t.set("pane/side-split",w(e))},setFullscreen(e){t.set("pane/fullscreen",e)},setViewportWidth(e){t.set("viewport/width",Math.max(0,e))},setHoverTarget(e){t.set("hover/target",e)},setDemoGraph(e){t.set("demo/graph-ref",e)},bumpGraphTick(){t.set("demo/graph-tick",++ee)},selectNode(e){t.set("inspect/selected-node",e)},setMetaDebug(e){t.set("meta/debug",e)},setCodeText(e){t.set("layout/code-text",e)},batch(e){O(e)},destroy(){t.destroy()}}}export{ie as a,oe as b};
@@ -1,124 +0,0 @@
1
- import { KvStorageTier } from './extra/storage-tiers.cjs';
2
-
3
- /**
4
- * Content-addressed storage substrate — a generic lookup / store helper over
5
- * any {@link StorageTier}. Hashes an arbitrary context object via
6
- * {@link canonicalJson} + sha256 to produce a stable key, then reads or writes
7
- * the record from the underlying tier.
8
- *
9
- * Substrate shared by LLM adapters (`withReplayCache`, `fallbackAdapter`) —
10
- * the LLM-specific shape (key prefix, `ChatMessage` + `LLMInvokeOptions`
11
- * context) lives in a thin wrapper inside `patterns/ai/adapters/_internal/`.
12
- * Any consumer that wants "memoize by content hash over a pluggable tier"
13
- * (tool result caches, embedding caches, deterministic function memoization,
14
- * fixtures for replay tests) can use this primitive directly.
15
- *
16
- * Universal tier — browser + Node safe. `sha256Hex` is pulled from
17
- * `core/hash.ts` (Web Crypto), `canonicalJson` is a pure function in this
18
- * module.
19
- *
20
- * @module
21
- */
22
-
23
- /**
24
- * Read / write / read-write / read-strict.
25
- *
26
- * - `"read"` — lookups hit storage; misses fall through to the caller.
27
- * - `"write"` — store only; lookups always return `undefined`.
28
- * - `"read-write"` — lookups hit storage, misses are writable by the caller.
29
- * - `"read-strict"` — lookups hit storage, misses throw (no fallthrough).
30
- * Used by fixture-based replay flows where a missing fixture is a test bug.
31
- *
32
- * @category extra
33
- */
34
- type ContentAddressedMode = "read" | "write" | "read-write" | "read-strict";
35
- /** Error thrown when `read-strict` mode misses. */
36
- declare class ContentAddressedMissError extends Error {
37
- readonly key: string;
38
- readonly context: unknown;
39
- constructor(key: string, context: unknown);
40
- }
41
- /**
42
- * Options for {@link contentAddressedStorage}.
43
- *
44
- * @category extra
45
- */
46
- type ContentAddressedStorageOptions<Ctx> = {
47
- /** Underlying storage tier (any `KvStorageTier` — memoryKv, fileKv, indexedDbKv). */
48
- storage: KvStorageTier;
49
- /**
50
- * Derive the hashable context from `ctx`. Defaults to `ctx` itself.
51
- * Use when the caller's `ctx` carries fields that should NOT participate in
52
- * the key (e.g. an `AbortSignal`, a retry count).
53
- */
54
- keyContext?: (ctx: Ctx) => unknown;
55
- /**
56
- * Optional key prefix — applied as `${prefix}:${hex}` so multiple consumers
57
- * can share one storage tier without collisions.
58
- */
59
- keyPrefix?: string;
60
- /** Mode — see {@link ContentAddressedMode}. Default `"read-write"`. */
61
- mode?: ContentAddressedMode;
62
- };
63
- /**
64
- * Handle returned by {@link contentAddressedStorage}.
65
- *
66
- * @category extra
67
- */
68
- type ContentAddressedStorage<Ctx, V> = {
69
- /**
70
- * Compute the content-addressed key for `ctx` — useful when a caller needs
71
- * to thread the same key through a singleflight / dedup stage without
72
- * re-hashing.
73
- */
74
- keyFor(ctx: Ctx): Promise<string>;
75
- /**
76
- * Look up a value by hashing `ctx`. In `read-strict` mode, throws
77
- * {@link ContentAddressedMissError} on miss.
78
- */
79
- lookup(ctx: Ctx): Promise<V | undefined>;
80
- /** Store `value` under the hash of `ctx`. No-op in `"read"` mode. */
81
- store(ctx: Ctx, value: V): Promise<void>;
82
- /** Clear the entry for `ctx`. No-op in `"read"` or `"write"` mode, or when the tier lacks `clear()`. */
83
- forget(ctx: Ctx): Promise<void>;
84
- };
85
- /**
86
- * Canonical JSON — sorts object keys for stable sha256 while detecting true
87
- * cycles (not sibling shared refs).
88
- *
89
- * We recurse manually with a **path stack** (`seen` contains only the current
90
- * ancestor chain, not every previously-visited object). On enter we push; on
91
- * exit we pop. Back-edges to ancestors serialize as `{"__cycle": true}`;
92
- * siblings that share the same reference serialize normally, producing
93
- * identical hashes to a freshly-reconstructed equivalent.
94
- *
95
- * @category extra
96
- */
97
- declare function canonicalJson(value: unknown): string;
98
- /**
99
- * Creates a content-addressed lookup / store handle over `storage`. The key
100
- * is `sha256Hex(canonicalJson(keyContext(ctx)))`, optionally prefixed by
101
- * `keyPrefix`.
102
- *
103
- * @example
104
- * ```ts
105
- * import { contentAddressedStorage, memoryKv } from "@graphrefly/graphrefly-ts";
106
- *
107
- * const cache = contentAddressedStorage<{ query: string }, { answer: string }>({
108
- * storage: memoryKv(),
109
- * keyPrefix: "qa",
110
- * mode: "read-write",
111
- * });
112
- *
113
- * const hit = await cache.lookup({ query: "what is graphrefly?" });
114
- * if (!hit) {
115
- * const ans = await computeAnswer({ query: "what is graphrefly?" });
116
- * await cache.store({ query: "what is graphrefly?" }, { answer: ans.text });
117
- * }
118
- * ```
119
- *
120
- * @category extra
121
- */
122
- declare function contentAddressedStorage<Ctx, V>(opts: ContentAddressedStorageOptions<Ctx>): ContentAddressedStorage<Ctx, V>;
123
-
124
- export { ContentAddressedMissError as C, type ContentAddressedMode as a, type ContentAddressedStorage as b, type ContentAddressedStorageOptions as c, canonicalJson as d, contentAddressedStorage as e };