@graphrefly/graphrefly 0.47.1 → 0.48.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 (303) hide show
  1. package/dist/base/composition/index.cjs +28 -19
  2. package/dist/base/composition/index.cjs.map +1 -1
  3. package/dist/base/composition/index.d.cts +14 -5
  4. package/dist/base/composition/index.d.ts +14 -5
  5. package/dist/base/composition/index.js +9 -9
  6. package/dist/base/index.cjs +294 -164
  7. package/dist/base/index.cjs.map +1 -1
  8. package/dist/base/index.d.cts +2 -2
  9. package/dist/base/index.d.ts +2 -2
  10. package/dist/base/index.js +77 -72
  11. package/dist/base/io/index.cjs +145 -85
  12. package/dist/base/io/index.cjs.map +1 -1
  13. package/dist/base/io/index.d.cts +32 -5
  14. package/dist/base/io/index.d.ts +32 -5
  15. package/dist/base/io/index.js +5 -5
  16. package/dist/base/mutation/index.cjs +21 -0
  17. package/dist/base/mutation/index.cjs.map +1 -1
  18. package/dist/base/mutation/index.d.cts +23 -1
  19. package/dist/base/mutation/index.d.ts +23 -1
  20. package/dist/base/mutation/index.js +3 -1
  21. package/dist/base/sources/browser/index.cjs +18 -12
  22. package/dist/base/sources/browser/index.cjs.map +1 -1
  23. package/dist/base/sources/browser/index.d.cts +20 -2
  24. package/dist/base/sources/browser/index.d.ts +20 -2
  25. package/dist/base/sources/browser/index.js +18 -12
  26. package/dist/base/sources/browser/index.js.map +1 -1
  27. package/dist/base/sources/event/index.cjs +29 -1
  28. package/dist/base/sources/event/index.cjs.map +1 -1
  29. package/dist/base/sources/event/index.d.cts +67 -3
  30. package/dist/base/sources/event/index.d.ts +67 -3
  31. package/dist/base/sources/event/index.js +5 -2
  32. package/dist/base/sources/index.cjs +96 -50
  33. package/dist/base/sources/index.cjs.map +1 -1
  34. package/dist/base/sources/index.d.cts +1 -1
  35. package/dist/base/sources/index.d.ts +1 -1
  36. package/dist/base/sources/index.js +7 -4
  37. package/dist/base/sources/node/index.cjs +43 -37
  38. package/dist/base/sources/node/index.cjs.map +1 -1
  39. package/dist/base/sources/node/index.js +43 -37
  40. package/dist/base/sources/node/index.js.map +1 -1
  41. package/dist/{chunk-J5WFUEO4.js → chunk-23MAWVOJ.js} +3 -3
  42. package/dist/{chunk-YXCPV26R.js → chunk-3REMCHSS.js} +39 -27
  43. package/dist/chunk-3REMCHSS.js.map +1 -0
  44. package/dist/{chunk-CEVNQ74M.js → chunk-3YGXPUHW.js} +2 -2
  45. package/dist/{chunk-CEVNQ74M.js.map → chunk-3YGXPUHW.js.map} +1 -1
  46. package/dist/{chunk-EVYY4X5A.js → chunk-46X2EFQH.js} +16 -5
  47. package/dist/chunk-46X2EFQH.js.map +1 -0
  48. package/dist/{chunk-NY2PYHNC.js → chunk-5UY3PNFY.js} +12 -5
  49. package/dist/chunk-5UY3PNFY.js.map +1 -0
  50. package/dist/{chunk-RGMTUZCL.js → chunk-65OM4XLQ.js} +50 -4
  51. package/dist/chunk-65OM4XLQ.js.map +1 -0
  52. package/dist/{chunk-3PSLNJDU.js → chunk-6DQYBIHW.js} +314 -49
  53. package/dist/chunk-6DQYBIHW.js.map +1 -0
  54. package/dist/{chunk-LDCSZ72P.js → chunk-6YBER5UP.js} +3 -3
  55. package/dist/{chunk-LDCSZ72P.js.map → chunk-6YBER5UP.js.map} +1 -1
  56. package/dist/{chunk-7EGRP2VX.js → chunk-7BULJTL6.js} +2 -2
  57. package/dist/{chunk-7EGRP2VX.js.map → chunk-7BULJTL6.js.map} +1 -1
  58. package/dist/{chunk-VLAGJZSL.js → chunk-7T7WLEPM.js} +25 -4
  59. package/dist/chunk-7T7WLEPM.js.map +1 -0
  60. package/dist/{chunk-PKPO3JTZ.js → chunk-AQAKDE7F.js} +29 -11
  61. package/dist/chunk-AQAKDE7F.js.map +1 -0
  62. package/dist/{chunk-2OB3CEJS.js → chunk-B5Y5GPD5.js} +2 -2
  63. package/dist/{chunk-BXGZFGZ4.js → chunk-C5QD5DQX.js} +22 -1
  64. package/dist/chunk-C5QD5DQX.js.map +1 -0
  65. package/dist/{chunk-4XCHZRUJ.js → chunk-D5YGR4TP.js} +58 -7
  66. package/dist/chunk-D5YGR4TP.js.map +1 -0
  67. package/dist/{chunk-NPRP3MCV.js → chunk-DHDCOOJU.js} +2 -2
  68. package/dist/chunk-DHDCOOJU.js.map +1 -0
  69. package/dist/{chunk-MTTRCEJT.js → chunk-DVTDF5OI.js} +2 -2
  70. package/dist/{chunk-SOOKUYVM.js → chunk-F7EKHR32.js} +13 -9
  71. package/dist/chunk-F7EKHR32.js.map +1 -0
  72. package/dist/{chunk-A7KV5UK4.js → chunk-G7H6PN7P.js} +2 -2
  73. package/dist/{chunk-OCUDSN63.js → chunk-GGKHHG5Y.js} +110 -64
  74. package/dist/chunk-GGKHHG5Y.js.map +1 -0
  75. package/dist/{chunk-RAGGHLCV.js → chunk-GUNIRPEJ.js} +8 -6
  76. package/dist/{chunk-RAGGHLCV.js.map → chunk-GUNIRPEJ.js.map} +1 -1
  77. package/dist/{chunk-YJ4U2D2C.js → chunk-J5TBZFBD.js} +9 -7
  78. package/dist/chunk-J5TBZFBD.js.map +1 -0
  79. package/dist/{chunk-Y52CS6YA.js → chunk-JA67ZQG2.js} +2 -2
  80. package/dist/{chunk-Y52CS6YA.js.map → chunk-JA67ZQG2.js.map} +1 -1
  81. package/dist/{chunk-U225SKB4.js → chunk-K4ZYJ4EM.js} +569 -424
  82. package/dist/chunk-K4ZYJ4EM.js.map +1 -0
  83. package/dist/{chunk-Z4YXAUDN.js → chunk-KUFXLAEY.js} +11 -7
  84. package/dist/{chunk-Z4YXAUDN.js.map → chunk-KUFXLAEY.js.map} +1 -1
  85. package/dist/{chunk-IHTWQEDR.js → chunk-LTSI7ULC.js} +3 -3
  86. package/dist/{chunk-IHTWQEDR.js.map → chunk-LTSI7ULC.js.map} +1 -1
  87. package/dist/{chunk-DKNHAICT.js → chunk-MMHGYX44.js} +25 -9
  88. package/dist/chunk-MMHGYX44.js.map +1 -0
  89. package/dist/{chunk-K7PDZYQE.js → chunk-MQMTRKY3.js} +129 -50
  90. package/dist/chunk-MQMTRKY3.js.map +1 -0
  91. package/dist/{chunk-42FQ27MQ.js → chunk-MTODGQBR.js} +44 -179
  92. package/dist/chunk-MTODGQBR.js.map +1 -0
  93. package/dist/{chunk-O3MT7DYI.js → chunk-N6MNJNHB.js} +2 -2
  94. package/dist/{chunk-FVINAAKA.js → chunk-NBK6QQMG.js} +14 -13
  95. package/dist/{chunk-FVINAAKA.js.map → chunk-NBK6QQMG.js.map} +1 -1
  96. package/dist/{chunk-DM4OMPWK.js → chunk-NSA5K5G2.js} +2 -2
  97. package/dist/{chunk-MLTPJMH6.js → chunk-QQYULEZL.js} +2 -2
  98. package/dist/chunk-QSW4DFKE.js +31 -0
  99. package/dist/chunk-QSW4DFKE.js.map +1 -0
  100. package/dist/{chunk-PZWISPIQ.js → chunk-S7HN5FHL.js} +17 -11
  101. package/dist/chunk-S7HN5FHL.js.map +1 -0
  102. package/dist/{chunk-4S53H2KR.js → chunk-SUNCHMML.js} +2 -2
  103. package/dist/{chunk-4GYMCUDZ.js → chunk-T2U6N3FV.js} +7 -7
  104. package/dist/{chunk-RJOG4IJU.js → chunk-T5URUIIY.js} +50 -35
  105. package/dist/chunk-T5URUIIY.js.map +1 -0
  106. package/dist/{chunk-B4AKFXGE.js → chunk-TPTZZV25.js} +6 -6
  107. package/dist/chunk-TPTZZV25.js.map +1 -0
  108. package/dist/{chunk-BU3SEFA5.js → chunk-V46JWFGV.js} +7 -6
  109. package/dist/chunk-V46JWFGV.js.map +1 -0
  110. package/dist/{chunk-IJRR6YAI.js → chunk-VLDRAMP7.js} +18 -12
  111. package/dist/chunk-VLDRAMP7.js.map +1 -0
  112. package/dist/{chunk-6XZYT4SW.js → chunk-X6ESZDR6.js} +8 -9
  113. package/dist/chunk-X6ESZDR6.js.map +1 -0
  114. package/dist/{chunk-E5OZPDIW.js → chunk-X7BA5PWG.js} +7 -5
  115. package/dist/chunk-X7BA5PWG.js.map +1 -0
  116. package/dist/{chunk-CXANAIZU.js → chunk-XEWV254I.js} +3 -3
  117. package/dist/{chunk-CXANAIZU.js.map → chunk-XEWV254I.js.map} +1 -1
  118. package/dist/{chunk-V4Y3TM7U.js → chunk-YBJVKMTM.js} +38 -16
  119. package/dist/chunk-YBJVKMTM.js.map +1 -0
  120. package/dist/{chunk-7ADWWI2T.js → chunk-ZW32BPXV.js} +17 -6
  121. package/dist/chunk-ZW32BPXV.js.map +1 -0
  122. package/dist/compat/index.cjs +52 -5
  123. package/dist/compat/index.cjs.map +1 -1
  124. package/dist/compat/index.d.cts +1 -1
  125. package/dist/compat/index.d.ts +1 -1
  126. package/dist/compat/index.js +7 -7
  127. package/dist/compat/nestjs/index.cjs +52 -5
  128. package/dist/compat/nestjs/index.cjs.map +1 -1
  129. package/dist/compat/nestjs/index.d.cts +1 -1
  130. package/dist/compat/nestjs/index.d.ts +1 -1
  131. package/dist/compat/nestjs/index.js +4 -4
  132. package/dist/{fallback-Bx46zqky.d.cts → fallback-BROR6ZhO.d.cts} +1 -1
  133. package/dist/{fallback-pIWW8A2d.d.ts → fallback-DO80aM_3.d.ts} +1 -1
  134. package/dist/{index-B_p8tnvf.d.cts → index-D1z3XcF9.d.cts} +1 -0
  135. package/dist/{index-_HDSmPyp.d.ts → index-DZ6yua0Q.d.ts} +1 -0
  136. package/dist/index.cjs +2387 -1707
  137. package/dist/index.cjs.map +1 -1
  138. package/dist/index.d.cts +10 -10
  139. package/dist/index.d.ts +10 -10
  140. package/dist/index.js +173 -150
  141. package/dist/index.js.map +1 -1
  142. package/dist/presets/ai/index.cjs +88 -26
  143. package/dist/presets/ai/index.cjs.map +1 -1
  144. package/dist/presets/ai/index.js +14 -14
  145. package/dist/presets/harness/index.cjs +183 -51
  146. package/dist/presets/harness/index.cjs.map +1 -1
  147. package/dist/presets/harness/index.d.cts +15 -5
  148. package/dist/presets/harness/index.d.ts +15 -5
  149. package/dist/presets/harness/index.js +26 -26
  150. package/dist/presets/index.cjs +298 -101
  151. package/dist/presets/index.cjs.map +1 -1
  152. package/dist/presets/index.d.cts +2 -2
  153. package/dist/presets/index.d.ts +2 -2
  154. package/dist/presets/index.js +49 -49
  155. package/dist/presets/inspect/index.cjs +63 -14
  156. package/dist/presets/inspect/index.cjs.map +1 -1
  157. package/dist/presets/inspect/index.d.cts +1 -1
  158. package/dist/presets/inspect/index.d.ts +1 -1
  159. package/dist/presets/inspect/index.js +6 -6
  160. package/dist/presets/resilience/index.cjs +64 -44
  161. package/dist/presets/resilience/index.cjs.map +1 -1
  162. package/dist/presets/resilience/index.d.cts +12 -8
  163. package/dist/presets/resilience/index.d.ts +12 -8
  164. package/dist/presets/resilience/index.js +6 -6
  165. package/dist/{rate-limiter-DpVbSYdH.d.cts → rate-limiter-DC26FM8J.d.cts} +10 -1
  166. package/dist/{rate-limiter-CEALq4N1.d.ts → rate-limiter-DyWpwpQP.d.ts} +10 -1
  167. package/dist/{reactive-layout-fswlBUvX.d.ts → reactive-layout-BBBWH0V_.d.cts} +85 -4
  168. package/dist/{reactive-layout-fswlBUvX.d.cts → reactive-layout-BBBWH0V_.d.ts} +85 -4
  169. package/dist/solutions/index.cjs +239 -92
  170. package/dist/solutions/index.cjs.map +1 -1
  171. package/dist/solutions/index.d.cts +2 -2
  172. package/dist/solutions/index.d.ts +2 -2
  173. package/dist/solutions/index.js +32 -32
  174. package/dist/{spawnable-5mDY501F.d.cts → spawnable-B2IlW60f.d.cts} +23 -2
  175. package/dist/{spawnable-D3lR0oQu.d.ts → spawnable-tttFz2Nh.d.ts} +23 -2
  176. package/dist/testing/index.cjs +94 -0
  177. package/dist/testing/index.cjs.map +1 -0
  178. package/dist/testing/index.d.cts +59 -0
  179. package/dist/testing/index.d.ts +59 -0
  180. package/dist/testing/index.js +73 -0
  181. package/dist/testing/index.js.map +1 -0
  182. package/dist/{timeout-U5O4ESK3.js → timeout-BEABACRP.js} +2 -2
  183. package/dist/utils/ai/browser.cjs.map +1 -1
  184. package/dist/utils/ai/browser.d.cts +2 -2
  185. package/dist/utils/ai/browser.d.ts +2 -2
  186. package/dist/utils/ai/browser.js +10 -10
  187. package/dist/utils/ai/browser.js.map +1 -1
  188. package/dist/utils/ai/index.cjs +291 -191
  189. package/dist/utils/ai/index.cjs.map +1 -1
  190. package/dist/utils/ai/index.d.cts +108 -12
  191. package/dist/utils/ai/index.d.ts +108 -12
  192. package/dist/utils/ai/index.js +23 -21
  193. package/dist/utils/ai/node.cjs.map +1 -1
  194. package/dist/utils/ai/node.d.cts +5 -5
  195. package/dist/utils/ai/node.d.ts +5 -5
  196. package/dist/utils/ai/node.js +3 -3
  197. package/dist/utils/ai/node.js.map +1 -1
  198. package/dist/utils/cqrs/index.cjs +29 -3
  199. package/dist/utils/cqrs/index.cjs.map +1 -1
  200. package/dist/utils/cqrs/index.d.cts +12 -7
  201. package/dist/utils/cqrs/index.d.ts +12 -7
  202. package/dist/utils/cqrs/index.js +2 -2
  203. package/dist/utils/demo-shell/index.cjs +45 -19
  204. package/dist/utils/demo-shell/index.cjs.map +1 -1
  205. package/dist/utils/demo-shell/index.d.cts +1 -1
  206. package/dist/utils/demo-shell/index.d.ts +1 -1
  207. package/dist/utils/demo-shell/index.js +2 -2
  208. package/dist/utils/domain-templates/index.cjs +1 -1
  209. package/dist/utils/domain-templates/index.cjs.map +1 -1
  210. package/dist/utils/domain-templates/index.js +3 -3
  211. package/dist/utils/graphspec/index.cjs +1 -1
  212. package/dist/utils/graphspec/index.cjs.map +1 -1
  213. package/dist/utils/graphspec/index.js +3 -3
  214. package/dist/utils/harness/index.cjs +16 -10
  215. package/dist/utils/harness/index.cjs.map +1 -1
  216. package/dist/utils/harness/index.js +1 -1
  217. package/dist/utils/index.cjs +1692 -1192
  218. package/dist/utils/index.cjs.map +1 -1
  219. package/dist/utils/index.d.cts +7 -7
  220. package/dist/utils/index.d.ts +7 -7
  221. package/dist/utils/index.js +77 -59
  222. package/dist/utils/inspect/index.cjs +52 -4
  223. package/dist/utils/inspect/index.cjs.map +1 -1
  224. package/dist/utils/inspect/index.d.cts +32 -3
  225. package/dist/utils/inspect/index.d.ts +32 -3
  226. package/dist/utils/inspect/index.js +4 -4
  227. package/dist/utils/job-queue/index.cjs +46 -9
  228. package/dist/utils/job-queue/index.cjs.map +1 -1
  229. package/dist/utils/job-queue/index.d.cts +33 -3
  230. package/dist/utils/job-queue/index.d.ts +33 -3
  231. package/dist/utils/job-queue/index.js +2 -2
  232. package/dist/utils/memory/index.cjs +570 -425
  233. package/dist/utils/memory/index.cjs.map +1 -1
  234. package/dist/utils/memory/index.d.cts +261 -33
  235. package/dist/utils/memory/index.d.ts +261 -33
  236. package/dist/utils/memory/index.js +10 -2
  237. package/dist/utils/messaging/index.cjs.map +1 -1
  238. package/dist/utils/messaging/index.d.cts +4 -3
  239. package/dist/utils/messaging/index.d.ts +4 -3
  240. package/dist/utils/messaging/index.js +2 -2
  241. package/dist/utils/orchestration/index.cjs +14 -3
  242. package/dist/utils/orchestration/index.cjs.map +1 -1
  243. package/dist/utils/orchestration/index.js +3 -3
  244. package/dist/utils/process/index.cjs +32 -2
  245. package/dist/utils/process/index.cjs.map +1 -1
  246. package/dist/utils/process/index.d.cts +4 -3
  247. package/dist/utils/process/index.d.ts +4 -3
  248. package/dist/utils/process/index.js +3 -3
  249. package/dist/utils/reactive-layout/index.cjs +184 -55
  250. package/dist/utils/reactive-layout/index.cjs.map +1 -1
  251. package/dist/utils/reactive-layout/index.d.cts +128 -3
  252. package/dist/utils/reactive-layout/index.d.ts +128 -3
  253. package/dist/utils/reactive-layout/index.js +16 -8
  254. package/dist/utils/reduction/index.cjs +1 -1
  255. package/dist/utils/reduction/index.cjs.map +1 -1
  256. package/dist/utils/reduction/index.js +2 -2
  257. package/dist/utils/resilience/index.cjs +64 -43
  258. package/dist/utils/resilience/index.cjs.map +1 -1
  259. package/dist/utils/resilience/index.d.cts +1 -1
  260. package/dist/utils/resilience/index.d.ts +1 -1
  261. package/dist/utils/resilience/index.js +5 -5
  262. package/dist/utils/surface/index.cjs +1 -1
  263. package/dist/utils/surface/index.cjs.map +1 -1
  264. package/dist/utils/surface/index.js +4 -4
  265. package/package.json +15 -3
  266. package/dist/chunk-3PSLNJDU.js.map +0 -1
  267. package/dist/chunk-42FQ27MQ.js.map +0 -1
  268. package/dist/chunk-4XCHZRUJ.js.map +0 -1
  269. package/dist/chunk-6XZYT4SW.js.map +0 -1
  270. package/dist/chunk-7ADWWI2T.js.map +0 -1
  271. package/dist/chunk-B4AKFXGE.js.map +0 -1
  272. package/dist/chunk-BU3SEFA5.js.map +0 -1
  273. package/dist/chunk-BXGZFGZ4.js.map +0 -1
  274. package/dist/chunk-DKNHAICT.js.map +0 -1
  275. package/dist/chunk-E5OZPDIW.js.map +0 -1
  276. package/dist/chunk-EVYY4X5A.js.map +0 -1
  277. package/dist/chunk-IJRR6YAI.js.map +0 -1
  278. package/dist/chunk-K7PDZYQE.js.map +0 -1
  279. package/dist/chunk-NPRP3MCV.js.map +0 -1
  280. package/dist/chunk-NY2PYHNC.js.map +0 -1
  281. package/dist/chunk-OCUDSN63.js.map +0 -1
  282. package/dist/chunk-PKPO3JTZ.js.map +0 -1
  283. package/dist/chunk-PZWISPIQ.js.map +0 -1
  284. package/dist/chunk-RGMTUZCL.js.map +0 -1
  285. package/dist/chunk-RJOG4IJU.js.map +0 -1
  286. package/dist/chunk-SOOKUYVM.js.map +0 -1
  287. package/dist/chunk-U225SKB4.js.map +0 -1
  288. package/dist/chunk-V4Y3TM7U.js.map +0 -1
  289. package/dist/chunk-VLAGJZSL.js.map +0 -1
  290. package/dist/chunk-W2BOPXTI.js +0 -1
  291. package/dist/chunk-YJ4U2D2C.js.map +0 -1
  292. package/dist/chunk-YXCPV26R.js.map +0 -1
  293. package/dist/timeout-U5O4ESK3.js.map +0 -1
  294. /package/dist/{chunk-J5WFUEO4.js.map → chunk-23MAWVOJ.js.map} +0 -0
  295. /package/dist/{chunk-2OB3CEJS.js.map → chunk-B5Y5GPD5.js.map} +0 -0
  296. /package/dist/{chunk-MTTRCEJT.js.map → chunk-DVTDF5OI.js.map} +0 -0
  297. /package/dist/{chunk-A7KV5UK4.js.map → chunk-G7H6PN7P.js.map} +0 -0
  298. /package/dist/{chunk-O3MT7DYI.js.map → chunk-N6MNJNHB.js.map} +0 -0
  299. /package/dist/{chunk-DM4OMPWK.js.map → chunk-NSA5K5G2.js.map} +0 -0
  300. /package/dist/{chunk-MLTPJMH6.js.map → chunk-QQYULEZL.js.map} +0 -0
  301. /package/dist/{chunk-4S53H2KR.js.map → chunk-SUNCHMML.js.map} +0 -0
  302. /package/dist/{chunk-4GYMCUDZ.js.map → chunk-T2U6N3FV.js.map} +0 -0
  303. /package/dist/{chunk-W2BOPXTI.js.map → timeout-BEABACRP.js.map} +0 -0
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  sourceOpts
3
- } from "./chunk-SOOKUYVM.js";
3
+ } from "./chunk-F7EKHR32.js";
4
4
  import {
5
5
  withStatus
6
- } from "./chunk-Y52CS6YA.js";
6
+ } from "./chunk-JA67ZQG2.js";
7
7
  import {
8
8
  retry
9
- } from "./chunk-Z4YXAUDN.js";
9
+ } from "./chunk-KUFXLAEY.js";
10
10
  import {
11
11
  NS_PER_MS,
12
12
  NS_PER_SEC,
@@ -15,12 +15,17 @@ import {
15
15
  import {
16
16
  externalBundle,
17
17
  externalProducer
18
- } from "./chunk-IJRR6YAI.js";
18
+ } from "./chunk-VLDRAMP7.js";
19
19
 
20
20
  // src/base/io/checkpoint.ts
21
21
  import { wallClockNs } from "@graphrefly/pure-ts/core";
22
22
  function checkpointToS3(graph, client, bucket, opts) {
23
- const { prefix = "checkpoints/", debounceMs = 500, compactEvery = 10, onError } = opts ?? {};
23
+ const {
24
+ prefix = "checkpoints/",
25
+ debounceMs = 500,
26
+ compactEvery = 10,
27
+ onError = (err) => console.error(`checkpointToS3(${bucket}): checkpoint persistence failed`, err)
28
+ } = opts ?? {};
24
29
  const tier = {
25
30
  name: `s3:${bucket}`,
26
31
  debounceMs,
@@ -32,7 +37,7 @@ function checkpointToS3(graph, client, bucket, opts) {
32
37
  try {
33
38
  body = JSON.stringify(record);
34
39
  } catch (err) {
35
- onError?.(err);
40
+ onError(err);
36
41
  return;
37
42
  }
38
43
  void client.putObject({
@@ -40,13 +45,13 @@ function checkpointToS3(graph, client, bucket, opts) {
40
45
  Key: s3Key,
41
46
  Body: body,
42
47
  ContentType: "application/json"
43
- }).catch((err) => onError?.(err));
48
+ }).catch((err) => onError(err));
44
49
  }
45
50
  // S3 tier is write-only here — one object per checkpoint timestamp,
46
51
  // no canonical "latest" key for load.
47
52
  };
48
53
  return graph.attachSnapshotStorage([{ snapshot: tier }], {
49
- onError: (err) => onError?.(err)
54
+ onError: (err) => onError(err)
50
55
  });
51
56
  }
52
57
  function checkpointToRedis(graph, client, opts) {
@@ -54,7 +59,7 @@ function checkpointToRedis(graph, client, opts) {
54
59
  prefix = "graphrefly:checkpoint:",
55
60
  debounceMs = 500,
56
61
  compactEvery = 10,
57
- onError
62
+ onError = (err) => console.error(`checkpointToRedis(${graph.name}): checkpoint persistence failed`, err)
58
63
  } = opts ?? {};
59
64
  const redisKey = `${prefix}${graph.name}`;
60
65
  const tier = {
@@ -66,23 +71,24 @@ function checkpointToRedis(graph, client, opts) {
66
71
  try {
67
72
  body = JSON.stringify(record);
68
73
  } catch (err) {
69
- onError?.(err);
74
+ onError(err);
70
75
  return;
71
76
  }
72
- void client.set(redisKey, body).catch((err) => onError?.(err));
77
+ void client.set(redisKey, body).catch((err) => onError(err));
73
78
  },
74
79
  async load() {
75
80
  const raw = await client.get(redisKey);
76
81
  if (raw == null) return void 0;
77
82
  try {
78
83
  return JSON.parse(raw);
79
- } catch {
84
+ } catch (err) {
85
+ onError(err);
80
86
  return void 0;
81
87
  }
82
88
  }
83
89
  };
84
90
  return graph.attachSnapshotStorage([{ snapshot: tier }], {
85
- onError: (err) => onError?.(err)
91
+ onError: (err) => onError(err)
86
92
  });
87
93
  }
88
94
 
@@ -120,8 +126,10 @@ function fromClickHouseWatch(client, query, opts) {
120
126
  }
121
127
  };
122
128
  void run();
123
- return () => {
124
- active = false;
129
+ return {
130
+ onDeactivation: () => {
131
+ active = false;
132
+ }
125
133
  };
126
134
  })
127
135
  );
@@ -185,8 +193,10 @@ function fromCSV(source, opts) {
185
193
  }
186
194
  };
187
195
  void run();
188
- return () => {
189
- cancelled = true;
196
+ return {
197
+ onDeactivation: () => {
198
+ cancelled = true;
199
+ }
190
200
  };
191
201
  },
192
202
  sourceOpts(rest)
@@ -290,8 +300,10 @@ function fromDrizzle(query, opts) {
290
300
  } catch {
291
301
  }
292
302
  });
293
- return () => {
294
- active = false;
303
+ return {
304
+ onDeactivation: () => {
305
+ active = false;
306
+ }
295
307
  };
296
308
  },
297
309
  { ...rest, describeKind: "producer", completeWhenDepsComplete: false }
@@ -476,7 +488,21 @@ function reactiveSink(source, config) {
476
488
  }
477
489
  return run();
478
490
  };
479
- const maxBuf = backpressure?.maxBuffer ?? Number.POSITIVE_INFINITY;
491
+ let maxBuf = Number.POSITIVE_INFINITY;
492
+ if (backpressure) {
493
+ const mb = backpressure.maxBuffer;
494
+ if (mb === void 0) {
495
+ throw new RangeError(
496
+ "reactiveSink: backpressure requires explicit maxBuffer (use Infinity to opt in to unbounded)"
497
+ );
498
+ }
499
+ if (mb !== Number.POSITIVE_INFINITY && (!Number.isInteger(mb) || mb < 1)) {
500
+ throw new RangeError(
501
+ "reactiveSink: backpressure.maxBuffer must be a positive integer (or Infinity for unbounded)"
502
+ );
503
+ }
504
+ maxBuf = mb;
505
+ }
480
506
  const buffer = new BackpressureBuffer(maxBuf);
481
507
  let flushTimer;
482
508
  let disposed = false;
@@ -796,9 +822,11 @@ function fromHTTP(url, opts) {
796
822
  };
797
823
  const sourceNode = node5(
798
824
  [],
799
- (_data, a) => runFetch({
800
- emit: (v) => a.emit(v),
801
- down: (msgs) => a.down(msgs)
825
+ (_data, a) => ({
826
+ onDeactivation: runFetch({
827
+ emit: (v) => a.emit(v),
828
+ down: (msgs) => a.down(msgs)
829
+ })
802
830
  }),
803
831
  {
804
832
  ...sourceOpts(rest),
@@ -899,8 +927,8 @@ function fromHTTPStream(url, opts) {
899
927
  const abort = new AbortController();
900
928
  if (externalSignal?.aborted) {
901
929
  a.down([[ERROR5, externalSignal.reason ?? new Error("Aborted")]]);
902
- return () => {
903
- };
930
+ return { onDeactivation: () => {
931
+ } };
904
932
  }
905
933
  externalSignal?.addEventListener("abort", () => abort.abort(externalSignal.reason), {
906
934
  once: true
@@ -926,9 +954,11 @@ function fromHTTPStream(url, opts) {
926
954
  }
927
955
  };
928
956
  void run();
929
- return () => {
930
- active = false;
931
- abort.abort();
957
+ return {
958
+ onDeactivation: () => {
959
+ active = false;
960
+ abort.abort();
961
+ }
932
962
  };
933
963
  },
934
964
  sourceOpts(rest)
@@ -990,8 +1020,10 @@ function fromKafka(consumer, topic, opts) {
990
1020
  }
991
1021
  };
992
1022
  void start();
993
- return () => {
994
- active = false;
1023
+ return {
1024
+ onDeactivation: () => {
1025
+ active = false;
1026
+ }
995
1027
  };
996
1028
  },
997
1029
  sourceOpts(rest)
@@ -1031,8 +1063,10 @@ function fromKysely(query, opts) {
1031
1063
  } catch {
1032
1064
  }
1033
1065
  });
1034
- return () => {
1035
- active = false;
1066
+ return {
1067
+ onDeactivation: () => {
1068
+ active = false;
1069
+ }
1036
1070
  };
1037
1071
  },
1038
1072
  { ...rest, describeKind: "producer", completeWhenDepsComplete: false }
@@ -1096,8 +1130,10 @@ function fromNATS(client, subject, opts) {
1096
1130
  }
1097
1131
  };
1098
1132
  void loop();
1099
- return () => {
1100
- active = false;
1133
+ return {
1134
+ onDeactivation: () => {
1135
+ active = false;
1136
+ }
1101
1137
  };
1102
1138
  },
1103
1139
  sourceOpts(rest)
@@ -1181,8 +1217,10 @@ function fromNDJSON(source, opts) {
1181
1217
  }
1182
1218
  };
1183
1219
  void run();
1184
- return () => {
1185
- cancelled = true;
1220
+ return {
1221
+ onDeactivation: () => {
1222
+ cancelled = true;
1223
+ }
1186
1224
  };
1187
1225
  },
1188
1226
  sourceOpts(opts)
@@ -1238,8 +1276,10 @@ function fromPrisma(model, opts) {
1238
1276
  } catch {
1239
1277
  }
1240
1278
  });
1241
- return () => {
1242
- active = false;
1279
+ return {
1280
+ onDeactivation: () => {
1281
+ active = false;
1282
+ }
1243
1283
  };
1244
1284
  },
1245
1285
  { ...rest, describeKind: "producer", completeWhenDepsComplete: false }
@@ -1294,10 +1334,12 @@ function fromPrometheus(endpoint, opts) {
1294
1334
  }
1295
1335
  };
1296
1336
  void run();
1297
- return () => {
1298
- active = false;
1299
- clearTimeout(timeoutId);
1300
- abort.abort();
1337
+ return {
1338
+ onDeactivation: () => {
1339
+ active = false;
1340
+ clearTimeout(timeoutId);
1341
+ abort.abort();
1342
+ }
1301
1343
  };
1302
1344
  })
1303
1345
  );
@@ -1447,8 +1489,10 @@ function fromPulsar(consumer, opts) {
1447
1489
  }
1448
1490
  };
1449
1491
  void loop();
1450
- return () => {
1451
- active = false;
1492
+ return {
1493
+ onDeactivation: () => {
1494
+ active = false;
1495
+ }
1452
1496
  };
1453
1497
  },
1454
1498
  sourceOpts(rest)
@@ -1569,10 +1613,12 @@ function fromRabbitMQ(channel, queue, opts) {
1569
1613
  }
1570
1614
  };
1571
1615
  void start();
1572
- return () => {
1573
- active = false;
1574
- if (consumerTag !== void 0) {
1575
- void channel.cancel(consumerTag);
1616
+ return {
1617
+ onDeactivation: () => {
1618
+ active = false;
1619
+ if (consumerTag !== void 0) {
1620
+ void channel.cancel(consumerTag);
1621
+ }
1576
1622
  }
1577
1623
  };
1578
1624
  },
@@ -1650,8 +1696,10 @@ function fromRedisStream(client, key, opts) {
1650
1696
  }
1651
1697
  };
1652
1698
  void poll();
1653
- return () => {
1654
- active = false;
1699
+ return {
1700
+ onDeactivation: () => {
1701
+ active = false;
1702
+ }
1655
1703
  };
1656
1704
  },
1657
1705
  sourceOpts(rest)
@@ -2217,9 +2265,11 @@ function fromWebSocket(socketOrRegister, opts) {
2217
2265
  } catch (err) {
2218
2266
  terminate([ERROR16, err]);
2219
2267
  }
2220
- return () => {
2221
- active = false;
2222
- runCleanup();
2268
+ return {
2269
+ onDeactivation: () => {
2270
+ active = false;
2271
+ runCleanup();
2272
+ }
2223
2273
  };
2224
2274
  }
2225
2275
  const ws = socketOrRegister;
@@ -2235,9 +2285,11 @@ function fromWebSocket(socketOrRegister, opts) {
2235
2285
  ws.removeEventListener("close", onClose);
2236
2286
  if (closeOnTeardown) ws.close();
2237
2287
  };
2238
- return () => {
2239
- active = false;
2240
- runCleanup();
2288
+ return {
2289
+ onDeactivation: () => {
2290
+ active = false;
2291
+ runCleanup();
2292
+ }
2241
2293
  };
2242
2294
  },
2243
2295
  sourceOpts(rest)
@@ -2317,13 +2369,7 @@ function toWebSocket(source, socket, opts) {
2317
2369
  return handle;
2318
2370
  }
2319
2371
  function fromWebSocketReconnect(factory, opts) {
2320
- const {
2321
- parse,
2322
- maxRetries,
2323
- backoff = "exponential",
2324
- closeOnTeardown = true,
2325
- ...rest
2326
- } = opts ?? {};
2372
+ const { parse, maxRetries, backoff = "exponential", closeOnTeardown = true, ...rest } = opts;
2327
2373
  return retry(
2328
2374
  () => fromWebSocket(factory(), {
2329
2375
  parse,
@@ -2383,4 +2429,4 @@ export {
2383
2429
  toWebSocket,
2384
2430
  fromWebSocketReconnect
2385
2431
  };
2386
- //# sourceMappingURL=chunk-OCUDSN63.js.map
2432
+ //# sourceMappingURL=chunk-GGKHHG5Y.js.map