rivetkit 2.0.3 → 2.0.4-rc.1

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 (474) hide show
  1. package/README.md +11 -0
  2. package/dist/browser/client.d.ts +2485 -0
  3. package/dist/browser/client.js +5182 -0
  4. package/dist/browser/client.js.map +1 -0
  5. package/dist/browser/inspector/client.d.ts +130 -0
  6. package/dist/browser/inspector/client.js +2854 -0
  7. package/dist/browser/inspector/client.js.map +1 -0
  8. package/dist/browser/v3-DnYObHH3.d.ts +279 -0
  9. package/dist/inspector.tar.gz +0 -0
  10. package/dist/schemas/actor-inspector/v1.ts +784 -0
  11. package/dist/schemas/actor-inspector/v2.ts +796 -0
  12. package/dist/schemas/actor-inspector/v3.ts +899 -0
  13. package/dist/schemas/actor-persist/v1.ts +28 -31
  14. package/dist/schemas/actor-persist/v2.ts +268 -0
  15. package/dist/schemas/actor-persist/v3.ts +280 -0
  16. package/dist/schemas/actor-persist/v4.ts +406 -0
  17. package/dist/schemas/client-protocol/v1.ts +13 -1
  18. package/dist/schemas/client-protocol/v2.ts +438 -0
  19. package/dist/schemas/client-protocol/v3.ts +554 -0
  20. package/dist/schemas/file-system-driver/v1.ts +7 -1
  21. package/dist/schemas/file-system-driver/v2.ts +142 -0
  22. package/dist/schemas/file-system-driver/v3.ts +167 -0
  23. package/dist/schemas/persist/v1.ts +781 -0
  24. package/dist/schemas/transport/v1.ts +697 -0
  25. package/dist/tsup/actor/errors.cjs +39 -2
  26. package/dist/tsup/actor/errors.cjs.map +1 -1
  27. package/dist/tsup/actor/errors.d.cts +73 -28
  28. package/dist/tsup/actor/errors.d.ts +73 -28
  29. package/dist/tsup/actor/errors.js +54 -17
  30. package/dist/tsup/actor-router-consts-D29T1Z-K.d.cts +24 -0
  31. package/dist/tsup/actor-router-consts-D29T1Z-K.d.ts +24 -0
  32. package/dist/tsup/chunk-325TLXJT.js +1060 -0
  33. package/dist/tsup/chunk-325TLXJT.js.map +1 -0
  34. package/dist/tsup/chunk-424PT5DM.js +23 -0
  35. package/dist/tsup/chunk-424PT5DM.js.map +1 -0
  36. package/dist/tsup/chunk-4JVIG3SS.cjs +6289 -0
  37. package/dist/tsup/chunk-4JVIG3SS.cjs.map +1 -0
  38. package/dist/tsup/chunk-6LJAZ5R4.cjs +96 -0
  39. package/dist/tsup/chunk-6LJAZ5R4.cjs.map +1 -0
  40. package/dist/tsup/chunk-6XU3FMCB.cjs +534 -0
  41. package/dist/tsup/chunk-6XU3FMCB.cjs.map +1 -0
  42. package/dist/tsup/chunk-7HTNH26M.js +509 -0
  43. package/dist/tsup/chunk-7HTNH26M.js.map +1 -0
  44. package/dist/tsup/chunk-AUVH72RE.cjs +5977 -0
  45. package/dist/tsup/chunk-AUVH72RE.cjs.map +1 -0
  46. package/dist/tsup/chunk-D4BYUPNQ.js +645 -0
  47. package/dist/tsup/chunk-D4BYUPNQ.js.map +1 -0
  48. package/dist/tsup/chunk-HDQ2JUQT.cjs +23 -0
  49. package/dist/tsup/chunk-HDQ2JUQT.cjs.map +1 -0
  50. package/dist/tsup/chunk-HHXX2VRM.js +6289 -0
  51. package/dist/tsup/chunk-HHXX2VRM.js.map +1 -0
  52. package/dist/tsup/{chunk-PO4VLDWA.js → chunk-JEAEA2PB.js} +8 -6
  53. package/dist/tsup/chunk-JEAEA2PB.js.map +1 -0
  54. package/dist/tsup/chunk-JYSEG3VF.cjs +642 -0
  55. package/dist/tsup/chunk-JYSEG3VF.cjs.map +1 -0
  56. package/dist/tsup/chunk-K6DGYILQ.js +2657 -0
  57. package/dist/tsup/chunk-K6DGYILQ.js.map +1 -0
  58. package/dist/tsup/chunk-KJSYAUOM.js +96 -0
  59. package/dist/tsup/chunk-KJSYAUOM.js.map +1 -0
  60. package/dist/tsup/chunk-L47L3ZWJ.cjs +509 -0
  61. package/dist/tsup/chunk-L47L3ZWJ.cjs.map +1 -0
  62. package/dist/tsup/chunk-LXUQ667X.js +2006 -0
  63. package/dist/tsup/chunk-LXUQ667X.js.map +1 -0
  64. package/dist/tsup/chunk-MXNPAB5W.js +5977 -0
  65. package/dist/tsup/chunk-MXNPAB5W.js.map +1 -0
  66. package/dist/tsup/chunk-N4KRDJ56.js +72 -0
  67. package/dist/tsup/chunk-N4KRDJ56.js.map +1 -0
  68. package/dist/tsup/chunk-NIYZDWMW.cjs +2006 -0
  69. package/dist/tsup/chunk-NIYZDWMW.cjs.map +1 -0
  70. package/dist/tsup/chunk-PQZHDKRW.cjs +1060 -0
  71. package/dist/tsup/chunk-PQZHDKRW.cjs.map +1 -0
  72. package/dist/tsup/chunk-PVOE6BU7.cjs +1050 -0
  73. package/dist/tsup/chunk-PVOE6BU7.cjs.map +1 -0
  74. package/dist/tsup/chunk-Q4UD2GA4.cjs +1810 -0
  75. package/dist/tsup/chunk-Q4UD2GA4.cjs.map +1 -0
  76. package/dist/tsup/chunk-QUD664YZ.js +1810 -0
  77. package/dist/tsup/chunk-QUD664YZ.js.map +1 -0
  78. package/dist/tsup/chunk-RTOCTWME.js +1050 -0
  79. package/dist/tsup/chunk-RTOCTWME.js.map +1 -0
  80. package/dist/tsup/chunk-SAZZ4SB2.cjs +2657 -0
  81. package/dist/tsup/chunk-SAZZ4SB2.cjs.map +1 -0
  82. package/dist/tsup/chunk-SR3KQE7Q.cjs +72 -0
  83. package/dist/tsup/chunk-SR3KQE7Q.cjs.map +1 -0
  84. package/dist/tsup/{chunk-TZJKSBUQ.cjs → chunk-V2GHLYC6.cjs} +8 -6
  85. package/dist/tsup/chunk-V2GHLYC6.cjs.map +1 -0
  86. package/dist/tsup/chunk-V3WG7XTW.cjs +645 -0
  87. package/dist/tsup/chunk-V3WG7XTW.cjs.map +1 -0
  88. package/dist/tsup/chunk-VKVNIQRQ.js +257 -0
  89. package/dist/tsup/chunk-VKVNIQRQ.js.map +1 -0
  90. package/dist/tsup/chunk-WMPW7JYC.js +642 -0
  91. package/dist/tsup/chunk-WMPW7JYC.js.map +1 -0
  92. package/dist/tsup/chunk-Z7HNQ2WF.js +534 -0
  93. package/dist/tsup/chunk-Z7HNQ2WF.js.map +1 -0
  94. package/dist/tsup/chunk-ZFY5J2EP.cjs +257 -0
  95. package/dist/tsup/chunk-ZFY5J2EP.cjs.map +1 -0
  96. package/dist/tsup/client/mod.cjs +11 -10
  97. package/dist/tsup/client/mod.cjs.map +1 -1
  98. package/dist/tsup/client/mod.d.cts +57 -19
  99. package/dist/tsup/client/mod.d.ts +57 -19
  100. package/dist/tsup/client/mod.js +15 -14
  101. package/dist/tsup/common/log.cjs +12 -4
  102. package/dist/tsup/common/log.cjs.map +1 -1
  103. package/dist/tsup/common/log.d.cts +31 -17
  104. package/dist/tsup/common/log.d.ts +31 -17
  105. package/dist/tsup/common/log.js +15 -7
  106. package/dist/tsup/common/websocket.cjs +5 -5
  107. package/dist/tsup/common/websocket.cjs.map +1 -1
  108. package/dist/tsup/common/websocket.js +4 -4
  109. package/dist/tsup/config-BiNoIHRs.d.cts +80 -0
  110. package/dist/tsup/config-BiNoIHRs.d.ts +80 -0
  111. package/dist/tsup/config-P3XujgRr.d.ts +2594 -0
  112. package/dist/tsup/config-_gfywqqI.d.cts +2594 -0
  113. package/dist/tsup/context-Bxd8Cx4H.d.cts +75 -0
  114. package/dist/tsup/context-uNA4TRn3.d.ts +75 -0
  115. package/dist/tsup/db/drizzle/mod.cjs +49 -0
  116. package/dist/tsup/db/drizzle/mod.cjs.map +1 -0
  117. package/dist/tsup/db/drizzle/mod.d.cts +17 -0
  118. package/dist/tsup/db/drizzle/mod.d.ts +17 -0
  119. package/dist/tsup/db/drizzle/mod.js +49 -0
  120. package/dist/tsup/db/drizzle/mod.js.map +1 -0
  121. package/dist/tsup/db/mod.cjs +9 -0
  122. package/dist/tsup/db/mod.cjs.map +1 -0
  123. package/dist/tsup/db/mod.d.cts +9 -0
  124. package/dist/tsup/db/mod.d.ts +9 -0
  125. package/dist/tsup/db/mod.js +9 -0
  126. package/dist/tsup/db/mod.js.map +1 -0
  127. package/dist/tsup/driver-BcLvZcKl.d.cts +13 -0
  128. package/dist/tsup/driver-CPGHKXyh.d.ts +13 -0
  129. package/dist/tsup/driver-helpers/mod.cjs +27 -7
  130. package/dist/tsup/driver-helpers/mod.cjs.map +1 -1
  131. package/dist/tsup/driver-helpers/mod.d.cts +43 -14
  132. package/dist/tsup/driver-helpers/mod.d.ts +43 -14
  133. package/dist/tsup/driver-helpers/mod.js +41 -21
  134. package/dist/tsup/driver-test-suite/mod.cjs +2749 -2394
  135. package/dist/tsup/driver-test-suite/mod.cjs.map +1 -1
  136. package/dist/tsup/driver-test-suite/mod.d.cts +28 -12
  137. package/dist/tsup/driver-test-suite/mod.d.ts +28 -12
  138. package/dist/tsup/driver-test-suite/mod.js +3319 -2964
  139. package/dist/tsup/driver-test-suite/mod.js.map +1 -1
  140. package/dist/tsup/inspector/mod.cjs +118 -7
  141. package/dist/tsup/inspector/mod.cjs.map +1 -1
  142. package/dist/tsup/inspector/mod.d.cts +126 -404
  143. package/dist/tsup/inspector/mod.d.ts +126 -404
  144. package/dist/tsup/inspector/mod.js +159 -48
  145. package/dist/tsup/keys-CydblqMh.d.cts +13 -0
  146. package/dist/tsup/keys-CydblqMh.d.ts +13 -0
  147. package/dist/tsup/mod.cjs +21 -12
  148. package/dist/tsup/mod.cjs.map +1 -1
  149. package/dist/tsup/mod.d.cts +102 -76
  150. package/dist/tsup/mod.d.ts +102 -76
  151. package/dist/tsup/mod.js +51 -42
  152. package/dist/tsup/serve-test-suite/mod.cjs +2601 -0
  153. package/dist/tsup/serve-test-suite/mod.cjs.map +1 -0
  154. package/dist/tsup/serve-test-suite/mod.d.cts +9 -0
  155. package/dist/tsup/serve-test-suite/mod.d.ts +9 -0
  156. package/dist/tsup/serve-test-suite/mod.js +2601 -0
  157. package/dist/tsup/serve-test-suite/mod.js.map +1 -0
  158. package/dist/tsup/test/mod.cjs +84 -15
  159. package/dist/tsup/test/mod.cjs.map +1 -1
  160. package/dist/tsup/test/mod.d.cts +15 -16
  161. package/dist/tsup/test/mod.d.ts +15 -16
  162. package/dist/tsup/test/mod.js +85 -16
  163. package/dist/tsup/test/mod.js.map +1 -1
  164. package/dist/tsup/{utils-CT0cv4jd.d.ts → utils-fwx3o3K9.d.cts} +1 -0
  165. package/dist/tsup/{utils-CT0cv4jd.d.cts → utils-fwx3o3K9.d.ts} +1 -0
  166. package/dist/tsup/utils.cjs +20 -3
  167. package/dist/tsup/utils.cjs.map +1 -1
  168. package/dist/tsup/utils.d.cts +114 -2
  169. package/dist/tsup/utils.d.ts +114 -2
  170. package/dist/tsup/utils.js +19 -2
  171. package/dist/tsup/v3-DnYObHH3.d.cts +279 -0
  172. package/dist/tsup/v3-DnYObHH3.d.ts +279 -0
  173. package/dist/tsup/workflow/mod.cjs +16 -0
  174. package/dist/tsup/workflow/mod.cjs.map +1 -0
  175. package/dist/tsup/workflow/mod.d.cts +25 -0
  176. package/dist/tsup/workflow/mod.d.ts +25 -0
  177. package/dist/tsup/workflow/mod.js +16 -0
  178. package/dist/tsup/workflow/mod.js.map +1 -0
  179. package/package.json +101 -16
  180. package/src/actor/config.ts +674 -218
  181. package/src/actor/conn/driver.ts +61 -0
  182. package/src/actor/conn/drivers/http.ts +17 -0
  183. package/src/actor/conn/drivers/raw-request.ts +24 -0
  184. package/src/actor/conn/drivers/raw-websocket.ts +65 -0
  185. package/src/actor/conn/drivers/websocket.ts +144 -0
  186. package/src/actor/conn/mod.ts +288 -0
  187. package/src/actor/conn/persisted.ts +81 -0
  188. package/src/actor/conn/state-manager.ts +196 -0
  189. package/src/actor/contexts/action.ts +47 -0
  190. package/src/actor/contexts/base/actor.ts +347 -0
  191. package/src/actor/contexts/base/conn-init.ts +68 -0
  192. package/src/actor/contexts/base/conn.ts +73 -0
  193. package/src/actor/contexts/before-action-response.ts +42 -0
  194. package/src/actor/contexts/before-connect.ts +31 -0
  195. package/src/actor/contexts/connect.ts +42 -0
  196. package/src/actor/contexts/create-conn-state.ts +32 -0
  197. package/src/actor/contexts/create-vars.ts +39 -0
  198. package/src/actor/contexts/create.ts +39 -0
  199. package/src/actor/contexts/destroy.ts +42 -0
  200. package/src/actor/contexts/disconnect.ts +43 -0
  201. package/src/actor/contexts/index.ts +33 -0
  202. package/src/actor/contexts/request.ts +80 -0
  203. package/src/actor/contexts/run.ts +47 -0
  204. package/src/actor/contexts/sleep.ts +42 -0
  205. package/src/actor/contexts/state-change.ts +42 -0
  206. package/src/actor/contexts/wake.ts +42 -0
  207. package/src/actor/contexts/websocket.ts +80 -0
  208. package/src/actor/database.ts +8 -18
  209. package/src/actor/definition.ts +23 -45
  210. package/src/actor/driver.ts +78 -48
  211. package/src/actor/errors.ts +281 -85
  212. package/src/actor/instance/connection-manager.ts +574 -0
  213. package/src/actor/instance/event-manager.ts +314 -0
  214. package/src/actor/instance/keys.ts +146 -0
  215. package/src/actor/instance/kv.ts +241 -0
  216. package/src/actor/instance/mod.ts +1658 -0
  217. package/src/actor/instance/persisted.ts +67 -0
  218. package/src/actor/instance/queue-manager.ts +603 -0
  219. package/src/actor/instance/queue.ts +345 -0
  220. package/src/actor/instance/schedule-manager.ts +392 -0
  221. package/src/actor/instance/state-manager.ts +542 -0
  222. package/src/actor/instance/traces-driver.ts +128 -0
  223. package/src/{drivers/engine → actor}/keys.test.ts +13 -4
  224. package/src/actor/log.ts +4 -13
  225. package/src/actor/mod.ts +37 -40
  226. package/src/actor/protocol/old.ts +205 -70
  227. package/src/actor/protocol/serde.ts +100 -9
  228. package/src/actor/router-endpoints.ts +249 -534
  229. package/src/actor/router-websocket-endpoints.test.ts +54 -0
  230. package/src/actor/router-websocket-endpoints.ts +405 -0
  231. package/src/actor/router.ts +305 -188
  232. package/src/actor/schedule.ts +1 -1
  233. package/src/actor/schema.ts +291 -0
  234. package/src/actor/utils.test.ts +48 -0
  235. package/src/actor/utils.ts +71 -11
  236. package/src/client/actor-common.ts +4 -2
  237. package/src/client/actor-conn.ts +758 -300
  238. package/src/client/actor-handle.ts +198 -62
  239. package/src/client/actor-query.ts +112 -0
  240. package/src/client/client.ts +59 -124
  241. package/src/client/config.ts +151 -0
  242. package/src/client/errors.ts +37 -2
  243. package/src/client/log.ts +2 -4
  244. package/src/client/mod.browser.ts +2 -0
  245. package/src/client/mod.ts +33 -19
  246. package/src/client/queue.ts +146 -0
  247. package/src/client/raw-utils.ts +84 -27
  248. package/src/client/utils.ts +141 -39
  249. package/src/common/actor-router-consts.ts +59 -0
  250. package/src/common/cors.ts +57 -0
  251. package/src/common/eventsource.ts +7 -43
  252. package/src/common/inline-websocket-adapter.ts +154 -0
  253. package/src/common/log.ts +191 -101
  254. package/src/common/logfmt.ts +23 -30
  255. package/src/common/router.ts +114 -27
  256. package/src/common/utils.ts +35 -18
  257. package/src/common/websocket-interface.ts +7 -49
  258. package/src/common/websocket.ts +2 -2
  259. package/src/db/config.ts +100 -0
  260. package/src/db/drizzle/mod.ts +226 -0
  261. package/src/db/drizzle/sqlite-core.ts +22 -0
  262. package/src/db/mod.ts +125 -0
  263. package/src/db/shared.ts +92 -0
  264. package/src/db/sqlite-vfs.ts +12 -0
  265. package/src/devtools-loader/index.ts +33 -0
  266. package/src/devtools-loader/log.ts +5 -0
  267. package/src/driver-helpers/mod.ts +19 -8
  268. package/src/driver-helpers/utils.ts +46 -9
  269. package/src/driver-test-suite/log.ts +1 -3
  270. package/src/driver-test-suite/mod.ts +188 -108
  271. package/src/driver-test-suite/test-inline-client-driver.ts +179 -274
  272. package/src/driver-test-suite/tests/access-control.ts +218 -0
  273. package/src/driver-test-suite/tests/action-features.ts +69 -2
  274. package/src/driver-test-suite/tests/actor-conn-hibernation.ts +152 -0
  275. package/src/driver-test-suite/tests/actor-conn-state.ts +73 -22
  276. package/src/driver-test-suite/tests/actor-conn.ts +375 -128
  277. package/src/driver-test-suite/tests/actor-db-raw.ts +73 -0
  278. package/src/driver-test-suite/tests/actor-db.ts +477 -0
  279. package/src/driver-test-suite/tests/actor-destroy.ts +294 -0
  280. package/src/driver-test-suite/tests/actor-driver.ts +0 -7
  281. package/src/driver-test-suite/tests/actor-error-handling.ts +4 -12
  282. package/src/driver-test-suite/tests/actor-handle.ts +78 -25
  283. package/src/driver-test-suite/tests/actor-inline-client.ts +34 -23
  284. package/src/driver-test-suite/tests/actor-inspector.ts +216 -522
  285. package/src/driver-test-suite/tests/actor-kv.ts +65 -0
  286. package/src/driver-test-suite/tests/actor-metadata.ts +1 -1
  287. package/src/driver-test-suite/tests/actor-queue.ts +325 -0
  288. package/src/driver-test-suite/tests/actor-run.ts +181 -0
  289. package/src/driver-test-suite/tests/actor-schedule.ts +31 -42
  290. package/src/driver-test-suite/tests/actor-sleep.ts +27 -25
  291. package/src/driver-test-suite/tests/actor-stateless.ts +70 -0
  292. package/src/driver-test-suite/tests/actor-vars.ts +6 -2
  293. package/src/driver-test-suite/tests/actor-workflow.ts +118 -0
  294. package/src/driver-test-suite/tests/manager-driver.ts +32 -9
  295. package/src/driver-test-suite/tests/raw-http-direct-registry.ts +227 -226
  296. package/src/driver-test-suite/tests/raw-http-request-properties.ts +71 -31
  297. package/src/driver-test-suite/tests/raw-http.ts +22 -10
  298. package/src/driver-test-suite/tests/raw-websocket-direct-registry.ts +393 -392
  299. package/src/driver-test-suite/tests/raw-websocket.ts +86 -57
  300. package/src/driver-test-suite/tests/request-access.ts +130 -134
  301. package/src/driver-test-suite/utils.ts +28 -16
  302. package/src/drivers/default.ts +22 -15
  303. package/src/drivers/engine/actor-driver.ts +864 -197
  304. package/src/drivers/engine/config.ts +41 -37
  305. package/src/drivers/engine/log.ts +1 -3
  306. package/src/drivers/engine/mod.ts +16 -16
  307. package/src/drivers/file-system/actor.ts +46 -35
  308. package/src/drivers/file-system/global-state.ts +903 -131
  309. package/src/drivers/file-system/kv-limits.ts +70 -0
  310. package/src/drivers/file-system/log.ts +1 -3
  311. package/src/drivers/file-system/manager.ts +171 -177
  312. package/src/drivers/file-system/mod.ts +47 -17
  313. package/src/drivers/file-system/sqlite-runtime.ts +210 -0
  314. package/src/drivers/file-system/utils.ts +26 -10
  315. package/src/engine-process/constants.ts +2 -0
  316. package/src/engine-process/log.ts +5 -0
  317. package/src/engine-process/mod.ts +464 -0
  318. package/src/globals.d.ts +29 -0
  319. package/src/inspector/actor-inspector.ts +352 -0
  320. package/src/inspector/config.ts +11 -45
  321. package/src/inspector/handler.ts +273 -0
  322. package/src/inspector/log.ts +1 -1
  323. package/src/inspector/mod.browser.ts +8 -0
  324. package/src/inspector/mod.ts +4 -2
  325. package/src/inspector/serve-ui.ts +40 -0
  326. package/src/inspector/transport.ts +18 -0
  327. package/src/inspector/utils.ts +13 -57
  328. package/src/manager/driver.ts +40 -14
  329. package/src/manager/gateway.ts +668 -0
  330. package/src/manager/log.ts +2 -4
  331. package/src/manager/mod.ts +2 -2
  332. package/src/manager/protocol/mod.ts +1 -3
  333. package/src/manager/protocol/query.ts +2 -6
  334. package/src/manager/router-schema.ts +22 -0
  335. package/src/manager/router.ts +555 -1687
  336. package/src/manager-api/actors.ts +83 -0
  337. package/src/manager-api/common.ts +4 -0
  338. package/src/mod.ts +10 -6
  339. package/src/registry/config/driver.ts +21 -0
  340. package/src/registry/config/index.ts +510 -0
  341. package/src/registry/config/legacy-runner.ts +157 -0
  342. package/src/registry/config/runner.ts +21 -0
  343. package/src/registry/config/serverless.ts +94 -0
  344. package/src/registry/index.ts +194 -0
  345. package/src/registry/log.ts +2 -4
  346. package/src/remote-manager-driver/actor-http-client.ts +84 -0
  347. package/src/remote-manager-driver/actor-websocket-client.ts +81 -0
  348. package/src/remote-manager-driver/api-endpoints.ts +159 -0
  349. package/src/remote-manager-driver/api-utils.ts +69 -0
  350. package/src/remote-manager-driver/log.ts +5 -0
  351. package/src/remote-manager-driver/metadata.ts +64 -0
  352. package/src/remote-manager-driver/mod.ts +414 -0
  353. package/src/{drivers/engine → remote-manager-driver}/ws-proxy.ts +46 -27
  354. package/src/schemas/actor-inspector/mod.ts +1 -0
  355. package/src/schemas/actor-inspector/versioned.ts +233 -0
  356. package/src/schemas/actor-persist/mod.ts +1 -1
  357. package/src/schemas/actor-persist/versioned.ts +211 -19
  358. package/src/schemas/client-protocol/mod.ts +1 -1
  359. package/src/schemas/client-protocol/versioned.ts +310 -43
  360. package/src/schemas/client-protocol-zod/mod.ts +118 -0
  361. package/src/schemas/file-system-driver/mod.ts +1 -1
  362. package/src/schemas/file-system-driver/versioned.ts +128 -21
  363. package/src/schemas/persist/mod.ts +1 -0
  364. package/src/schemas/transport/mod.ts +1 -0
  365. package/src/serde.ts +67 -13
  366. package/src/serve-test-suite/mod.ts +148 -0
  367. package/src/serverless/configure.ts +82 -0
  368. package/src/serverless/log.ts +5 -0
  369. package/src/serverless/router.test.ts +299 -0
  370. package/src/serverless/router.ts +215 -0
  371. package/src/test/log.ts +1 -3
  372. package/src/test/mod.ts +70 -124
  373. package/src/utils/crypto.ts +24 -0
  374. package/src/utils/endpoint-parser.test.ts +202 -0
  375. package/src/utils/endpoint-parser.ts +124 -0
  376. package/src/utils/env-vars.ts +78 -0
  377. package/src/utils/node.ts +178 -0
  378. package/src/utils/router.ts +83 -0
  379. package/src/utils/serve.ts +212 -0
  380. package/src/utils.test.ts +34 -0
  381. package/src/utils.ts +278 -13
  382. package/src/workflow/constants.ts +2 -0
  383. package/src/workflow/context.ts +597 -0
  384. package/src/workflow/driver.ts +194 -0
  385. package/src/workflow/inspector.ts +268 -0
  386. package/src/workflow/mod.ts +128 -0
  387. package/dist/tsup/chunk-2CRLFV6Z.cjs +0 -202
  388. package/dist/tsup/chunk-2CRLFV6Z.cjs.map +0 -1
  389. package/dist/tsup/chunk-3H7O2A7I.js +0 -525
  390. package/dist/tsup/chunk-3H7O2A7I.js.map +0 -1
  391. package/dist/tsup/chunk-42I3OZ3Q.js +0 -15
  392. package/dist/tsup/chunk-42I3OZ3Q.js.map +0 -1
  393. package/dist/tsup/chunk-4NSUQZ2H.js +0 -1790
  394. package/dist/tsup/chunk-4NSUQZ2H.js.map +0 -1
  395. package/dist/tsup/chunk-6PDXBYI5.js +0 -132
  396. package/dist/tsup/chunk-6PDXBYI5.js.map +0 -1
  397. package/dist/tsup/chunk-6WKQDDUD.cjs +0 -1790
  398. package/dist/tsup/chunk-6WKQDDUD.cjs.map +0 -1
  399. package/dist/tsup/chunk-CTBOSFUH.cjs +0 -116
  400. package/dist/tsup/chunk-CTBOSFUH.cjs.map +0 -1
  401. package/dist/tsup/chunk-EGVZZFE2.js +0 -2857
  402. package/dist/tsup/chunk-EGVZZFE2.js.map +0 -1
  403. package/dist/tsup/chunk-FCCPJNMA.cjs +0 -132
  404. package/dist/tsup/chunk-FCCPJNMA.cjs.map +0 -1
  405. package/dist/tsup/chunk-FLMTTN27.js +0 -244
  406. package/dist/tsup/chunk-FLMTTN27.js.map +0 -1
  407. package/dist/tsup/chunk-GIR3AFFI.cjs +0 -315
  408. package/dist/tsup/chunk-GIR3AFFI.cjs.map +0 -1
  409. package/dist/tsup/chunk-INGJP237.js +0 -315
  410. package/dist/tsup/chunk-INGJP237.js.map +0 -1
  411. package/dist/tsup/chunk-KJCJLKRM.js +0 -116
  412. package/dist/tsup/chunk-KJCJLKRM.js.map +0 -1
  413. package/dist/tsup/chunk-KUPQZYUQ.cjs +0 -15
  414. package/dist/tsup/chunk-KUPQZYUQ.cjs.map +0 -1
  415. package/dist/tsup/chunk-O2MBYIXO.cjs +0 -2857
  416. package/dist/tsup/chunk-O2MBYIXO.cjs.map +0 -1
  417. package/dist/tsup/chunk-OGAPU3UG.cjs +0 -525
  418. package/dist/tsup/chunk-OGAPU3UG.cjs.map +0 -1
  419. package/dist/tsup/chunk-OV6AYD4S.js +0 -4406
  420. package/dist/tsup/chunk-OV6AYD4S.js.map +0 -1
  421. package/dist/tsup/chunk-PO4VLDWA.js.map +0 -1
  422. package/dist/tsup/chunk-R2OPSKIV.cjs +0 -244
  423. package/dist/tsup/chunk-R2OPSKIV.cjs.map +0 -1
  424. package/dist/tsup/chunk-TZJKSBUQ.cjs.map +0 -1
  425. package/dist/tsup/chunk-UBUC5C3G.cjs +0 -189
  426. package/dist/tsup/chunk-UBUC5C3G.cjs.map +0 -1
  427. package/dist/tsup/chunk-UIM22YJL.cjs +0 -4406
  428. package/dist/tsup/chunk-UIM22YJL.cjs.map +0 -1
  429. package/dist/tsup/chunk-URVFQMYI.cjs +0 -230
  430. package/dist/tsup/chunk-URVFQMYI.cjs.map +0 -1
  431. package/dist/tsup/chunk-UVUPOS46.js +0 -230
  432. package/dist/tsup/chunk-UVUPOS46.js.map +0 -1
  433. package/dist/tsup/chunk-VRRHBNJC.js +0 -189
  434. package/dist/tsup/chunk-VRRHBNJC.js.map +0 -1
  435. package/dist/tsup/chunk-XFSS33EQ.js +0 -202
  436. package/dist/tsup/chunk-XFSS33EQ.js.map +0 -1
  437. package/dist/tsup/common-CpqORuCq.d.cts +0 -218
  438. package/dist/tsup/common-CpqORuCq.d.ts +0 -218
  439. package/dist/tsup/connection-BR_Ve4ku.d.cts +0 -2117
  440. package/dist/tsup/connection-BwUMoe6n.d.ts +0 -2117
  441. package/dist/tsup/router-endpoints-AYkXG8Tl.d.cts +0 -66
  442. package/dist/tsup/router-endpoints-DAbqVFx2.d.ts +0 -66
  443. package/src/actor/action.ts +0 -182
  444. package/src/actor/connection.ts +0 -260
  445. package/src/actor/context.ts +0 -171
  446. package/src/actor/generic-conn-driver.ts +0 -234
  447. package/src/actor/instance.ts +0 -1800
  448. package/src/actor/persisted.ts +0 -42
  449. package/src/actor/unstable-react.ts +0 -110
  450. package/src/client/http-client-driver.ts +0 -326
  451. package/src/common/fake-event-source.ts +0 -266
  452. package/src/common/inline-websocket-adapter2.ts +0 -445
  453. package/src/common/versioned-data.ts +0 -95
  454. package/src/driver-test-suite/tests/actor-auth.ts +0 -591
  455. package/src/drivers/engine/api-endpoints.ts +0 -128
  456. package/src/drivers/engine/api-utils.ts +0 -70
  457. package/src/drivers/engine/kv.ts +0 -3
  458. package/src/drivers/engine/manager-driver.ts +0 -391
  459. package/src/inline-client-driver/log.ts +0 -7
  460. package/src/inline-client-driver/mod.ts +0 -385
  461. package/src/inspector/actor.ts +0 -298
  462. package/src/inspector/manager.ts +0 -86
  463. package/src/inspector/protocol/actor.ts +0 -10
  464. package/src/inspector/protocol/common.ts +0 -196
  465. package/src/inspector/protocol/manager.ts +0 -10
  466. package/src/inspector/protocol/mod.ts +0 -2
  467. package/src/manager/auth.ts +0 -121
  468. package/src/manager/hono-websocket-adapter.ts +0 -333
  469. package/src/registry/config.ts +0 -32
  470. package/src/registry/mod.ts +0 -124
  471. package/src/registry/run-config.ts +0 -54
  472. package/src/registry/serve.ts +0 -53
  473. package/src/test/config.ts +0 -16
  474. /package/src/{drivers/engine → actor}/keys.ts +0 -0
@@ -1,21 +1,90 @@
1
1
  import {
2
- getPort,
3
- setupTest
4
- } from "../chunk-6PDXBYI5.js";
5
- import "../chunk-OV6AYD4S.js";
6
- import "../chunk-42I3OZ3Q.js";
7
- import "../chunk-UVUPOS46.js";
8
- import "../chunk-EGVZZFE2.js";
9
- import "../chunk-FLMTTN27.js";
10
- import "../chunk-PO4VLDWA.js";
11
- import "../chunk-KJCJLKRM.js";
12
- import "../chunk-VRRHBNJC.js";
13
- import "../chunk-4NSUQZ2H.js";
14
- import "../chunk-XFSS33EQ.js";
15
- import "../chunk-3H7O2A7I.js";
16
- import "../chunk-INGJP237.js";
2
+ createFileSystemOrMemoryDriver
3
+ } from "../chunk-MXNPAB5W.js";
4
+ import {
5
+ createClient
6
+ } from "../chunk-K6DGYILQ.js";
7
+ import "../chunk-JEAEA2PB.js";
8
+ import {
9
+ buildManagerRouter
10
+ } from "../chunk-HHXX2VRM.js";
11
+ import "../chunk-LXUQ667X.js";
12
+ import "../chunk-RTOCTWME.js";
13
+ import {
14
+ getLogger
15
+ } from "../chunk-325TLXJT.js";
16
+ import "../chunk-7HTNH26M.js";
17
+ import "../chunk-424PT5DM.js";
18
+
19
+ // src/test/mod.ts
20
+ import { serve as honoServe } from "@hono/node-server";
21
+ import { createNodeWebSocket } from "@hono/node-ws";
22
+ import invariant from "invariant";
23
+
24
+ // src/test/log.ts
25
+ function logger() {
26
+ return getLogger("test");
27
+ }
28
+
29
+ // src/test/mod.ts
30
+ async function setupTest(c, registry) {
31
+ var _a;
32
+ registry.config.test = { ...registry.config.test, enabled: true };
33
+ const driver = createFileSystemOrMemoryDriver(
34
+ true,
35
+ { path: `/tmp/rivetkit-test-${crypto.randomUUID()}` }
36
+ );
37
+ let upgradeWebSocket;
38
+ registry.config.driver = driver;
39
+ registry.config.inspector = {
40
+ enabled: true,
41
+ token: () => "token"
42
+ };
43
+ const parsedConfig = registry.parseConfig();
44
+ const managerDriver = (_a = driver.manager) == null ? void 0 : _a.call(driver, parsedConfig);
45
+ invariant(managerDriver, "missing manager driver");
46
+ const getUpgradeWebSocket = () => upgradeWebSocket;
47
+ managerDriver.setGetUpgradeWebSocket(getUpgradeWebSocket);
48
+ const { router } = buildManagerRouter(
49
+ parsedConfig,
50
+ managerDriver,
51
+ getUpgradeWebSocket
52
+ );
53
+ const nodeWebSocket = createNodeWebSocket({ app: router });
54
+ upgradeWebSocket = nodeWebSocket.upgradeWebSocket;
55
+ const server = honoServe({
56
+ fetch: router.fetch,
57
+ hostname: "127.0.0.1",
58
+ port: 0
59
+ });
60
+ if (!server.listening) {
61
+ await new Promise((resolve) => {
62
+ server.once("listening", () => resolve());
63
+ });
64
+ }
65
+ invariant(
66
+ nodeWebSocket.injectWebSocket !== void 0,
67
+ "should have injectWebSocket"
68
+ );
69
+ nodeWebSocket.injectWebSocket(server);
70
+ const address = server.address();
71
+ invariant(address && typeof address !== "string", "missing server address");
72
+ const port = address.port;
73
+ const endpoint = `http://127.0.0.1:${port}`;
74
+ logger().info({ msg: "test server listening", port });
75
+ c.onTestFinished(async () => {
76
+ await new Promise((resolve) => server.close(() => resolve(void 0)));
77
+ });
78
+ const client = createClient({
79
+ endpoint,
80
+ namespace: "default",
81
+ runnerName: "default",
82
+ disableMetadataLookup: true
83
+ });
84
+ c.onTestFinished(async () => await client.dispose());
85
+ return { client };
86
+ }
17
87
  export {
18
- getPort,
19
88
  setupTest
20
89
  };
21
90
  //# sourceMappingURL=mod.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
1
+ {"version":3,"sources":["../../../src/test/mod.ts","../../../src/test/log.ts"],"sourcesContent":["import { serve as honoServe } from \"@hono/node-server\";\nimport { createNodeWebSocket } from \"@hono/node-ws\";\nimport invariant from \"invariant\";\nimport { type TestContext, vi } from \"vitest\";\nimport { ClientConfigSchema } from \"@/client/config\";\nimport { type Client, createClient } from \"@/client/mod\";\nimport { createFileSystemOrMemoryDriver } from \"@/drivers/file-system/mod\";\nimport { createClientWithDriver, type Registry } from \"@/mod\";\nimport { RegistryConfig, RegistryConfigSchema } from \"@/registry/config\";\nimport { buildManagerRouter } from \"@/manager/router\";\nimport { logger } from \"./log\";\n\nexport interface SetupTestResult<A extends Registry<any>> {\n\tclient: Client<A>;\n}\n\n// Must use `TestContext` since global hooks do not work when running concurrently\nexport async function setupTest<A extends Registry<any>>(\n\tc: TestContext,\n\tregistry: A,\n): Promise<SetupTestResult<A>> {\n\t// Force enable test mode\n\tregistry.config.test = { ...registry.config.test, enabled: true };\n\n\t// Create driver\n\tconst driver = createFileSystemOrMemoryDriver(\n\t\ttrue,\n\t\t{ path: `/tmp/rivetkit-test-${crypto.randomUUID()}` },\n\t);\n\n\t// Build driver config\n\t// biome-ignore lint/style/useConst: Assigned later\n\tlet upgradeWebSocket: any;\n\tregistry.config.driver = driver;\n\tregistry.config.inspector = {\n\t\tenabled: true,\n\t\ttoken: () => \"token\",\n\t};\n\n\t// Create router\n\tconst parsedConfig = registry.parseConfig();\n\tconst managerDriver = driver.manager?.(parsedConfig);\n\tinvariant(managerDriver, \"missing manager driver\");\n\tconst getUpgradeWebSocket = () => upgradeWebSocket;\n\tmanagerDriver.setGetUpgradeWebSocket(getUpgradeWebSocket);\n\t// const internalClient = createClientWithDriver(\n\t// \tmanagerDriver,\n\t// \tClientConfigSchema.parse({}),\n\t// );\n\tconst { router } = buildManagerRouter(\n\t\tparsedConfig,\n\t\tmanagerDriver,\n\t\tgetUpgradeWebSocket,\n\t);\n\n\t// Inject WebSocket\n\tconst nodeWebSocket = createNodeWebSocket({ app: router });\n\tupgradeWebSocket = nodeWebSocket.upgradeWebSocket;\n\n\t// TODO: I think this whole function is fucked, we should probably switch to calling registry.serve() directly\n\t// Start server\n\tconst server = honoServe({\n\t\tfetch: router.fetch,\n\t\thostname: \"127.0.0.1\",\n\t\tport: 0,\n\t});\n\tif (!server.listening) {\n\t\tawait new Promise<void>((resolve) => {\n\t\t\tserver.once(\"listening\", () => resolve());\n\t\t});\n\t}\n\tinvariant(\n\t\tnodeWebSocket.injectWebSocket !== undefined,\n\t\t\"should have injectWebSocket\",\n\t);\n\tnodeWebSocket.injectWebSocket(server);\n\tconst address = server.address();\n\tinvariant(address && typeof address !== \"string\", \"missing server address\");\n\tconst port = address.port;\n\tconst endpoint = `http://127.0.0.1:${port}`;\n\n\tlogger().info({ msg: \"test server listening\", port });\n\n\t// Cleanup on test finish\n\tc.onTestFinished(async () => {\n\t\tawait new Promise((resolve) => server.close(() => resolve(undefined)));\n\t});\n\n\t// Create client\n\tconst client = createClient<A>({\n\t\tendpoint,\n\t\tnamespace: \"default\",\n\t\trunnerName: \"default\",\n\t\tdisableMetadataLookup: true,\n\t});\n\tc.onTestFinished(async () => await client.dispose());\n\n\treturn { client };\n}\n","import { getLogger } from \"@/common/log\";\n\nexport function logger() {\n\treturn getLogger(\"test\");\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,SAAS,SAAS,iBAAiB;AACnC,SAAS,2BAA2B;AACpC,OAAO,eAAe;;;ACAf,SAAS,SAAS;AACxB,SAAO,UAAU,MAAM;AACxB;;;ADaA,eAAsB,UACrB,GACA,UAC8B;AApB/B;AAsBC,WAAS,OAAO,OAAO,EAAE,GAAG,SAAS,OAAO,MAAM,SAAS,KAAK;AAGhE,QAAM,SAAS;AAAA,IACd;AAAA,IACA,EAAE,MAAM,sBAAsB,OAAO,WAAW,CAAC,GAAG;AAAA,EACrD;AAIA,MAAI;AACJ,WAAS,OAAO,SAAS;AACzB,WAAS,OAAO,YAAY;AAAA,IAC3B,SAAS;AAAA,IACT,OAAO,MAAM;AAAA,EACd;AAGA,QAAM,eAAe,SAAS,YAAY;AAC1C,QAAM,iBAAgB,YAAO,YAAP,gCAAiB;AACvC,YAAU,eAAe,wBAAwB;AACjD,QAAM,sBAAsB,MAAM;AAClC,gBAAc,uBAAuB,mBAAmB;AAKxD,QAAM,EAAE,OAAO,IAAI;AAAA,IAClB;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAGA,QAAM,gBAAgB,oBAAoB,EAAE,KAAK,OAAO,CAAC;AACzD,qBAAmB,cAAc;AAIjC,QAAM,SAAS,UAAU;AAAA,IACxB,OAAO,OAAO;AAAA,IACd,UAAU;AAAA,IACV,MAAM;AAAA,EACP,CAAC;AACD,MAAI,CAAC,OAAO,WAAW;AACtB,UAAM,IAAI,QAAc,CAAC,YAAY;AACpC,aAAO,KAAK,aAAa,MAAM,QAAQ,CAAC;AAAA,IACzC,CAAC;AAAA,EACF;AACA;AAAA,IACC,cAAc,oBAAoB;AAAA,IAClC;AAAA,EACD;AACA,gBAAc,gBAAgB,MAAM;AACpC,QAAM,UAAU,OAAO,QAAQ;AAC/B,YAAU,WAAW,OAAO,YAAY,UAAU,wBAAwB;AAC1E,QAAM,OAAO,QAAQ;AACrB,QAAM,WAAW,oBAAoB,IAAI;AAEzC,SAAO,EAAE,KAAK,EAAE,KAAK,yBAAyB,KAAK,CAAC;AAGpD,IAAE,eAAe,YAAY;AAC5B,UAAM,IAAI,QAAQ,CAAC,YAAY,OAAO,MAAM,MAAM,QAAQ,MAAS,CAAC,CAAC;AAAA,EACtE,CAAC;AAGD,QAAM,SAAS,aAAgB;AAAA,IAC9B;AAAA,IACA,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,uBAAuB;AAAA,EACxB,CAAC;AACD,IAAE,eAAe,YAAY,MAAM,OAAO,QAAQ,CAAC;AAEnD,SAAO,EAAE,OAAO;AACjB;","names":[]}
@@ -6,6 +6,7 @@ interface DeconstructedError {
6
6
  __type: "ActorError";
7
7
  statusCode: ContentfulStatusCode;
8
8
  public: boolean;
9
+ group: string;
9
10
  code: string;
10
11
  message: string;
11
12
  metadata?: unknown;
@@ -6,6 +6,7 @@ interface DeconstructedError {
6
6
  __type: "ActorError";
7
7
  statusCode: ContentfulStatusCode;
8
8
  public: boolean;
9
+ group: string;
9
10
  code: string;
10
11
  message: string;
11
12
  metadata?: unknown;
@@ -9,8 +9,6 @@
9
9
 
10
10
 
11
11
 
12
- var _chunkOGAPU3UGcjs = require('./chunk-OGAPU3UG.cjs');
13
- require('./chunk-GIR3AFFI.cjs');
14
12
 
15
13
 
16
14
 
@@ -19,8 +17,27 @@ require('./chunk-GIR3AFFI.cjs');
19
17
 
20
18
 
21
19
 
20
+ var _chunkPQZHDKRWcjs = require('./chunk-PQZHDKRW.cjs');
21
+ require('./chunk-L47L3ZWJ.cjs');
22
+ require('./chunk-HDQ2JUQT.cjs');
22
23
 
23
24
 
24
25
 
25
- exports.SinglePromiseQueue = _chunkOGAPU3UGcjs.SinglePromiseQueue; exports.VERSION = _chunkOGAPU3UGcjs.VERSION; exports.assertUnreachable = _chunkOGAPU3UGcjs.assertUnreachable; exports.bufferToArrayBuffer = _chunkOGAPU3UGcjs.bufferToArrayBuffer; exports.dbg = _chunkOGAPU3UGcjs.dbg; exports.getEnvUniversal = _chunkOGAPU3UGcjs.getEnvUniversal; exports.httpUserAgent = _chunkOGAPU3UGcjs.httpUserAgent; exports.setLongTimeout = _chunkOGAPU3UGcjs.setLongTimeout; exports.stringifyError = _chunkOGAPU3UGcjs.stringifyError; exports.toUint8Array = _chunkOGAPU3UGcjs.toUint8Array;
26
+
27
+
28
+
29
+
30
+
31
+
32
+
33
+
34
+
35
+
36
+
37
+
38
+
39
+
40
+
41
+
42
+ exports.EXTRA_ERROR_LOG = _chunkPQZHDKRWcjs.EXTRA_ERROR_LOG; exports.SinglePromiseQueue = _chunkPQZHDKRWcjs.SinglePromiseQueue; exports.VERSION = _chunkPQZHDKRWcjs.VERSION; exports.arrayBuffersEqual = _chunkPQZHDKRWcjs.arrayBuffersEqual; exports.assertUnreachable = _chunkPQZHDKRWcjs.assertUnreachable; exports.bufferToArrayBuffer = _chunkPQZHDKRWcjs.bufferToArrayBuffer; exports.combineUrlPath = _chunkPQZHDKRWcjs.combineUrlPath; exports.dbg = _chunkPQZHDKRWcjs.dbg; exports.detectRuntime = _chunkPQZHDKRWcjs.detectRuntime; exports.getEnvUniversal = _chunkPQZHDKRWcjs.getEnvUniversal; exports.httpUserAgent = _chunkPQZHDKRWcjs.httpUserAgent; exports.interval = _chunkPQZHDKRWcjs.interval; exports.joinSignals = _chunkPQZHDKRWcjs.joinSignals; exports.promiseWithResolvers = _chunkPQZHDKRWcjs.promiseWithResolvers; exports.setLongTimeout = _chunkPQZHDKRWcjs.setLongTimeout; exports.sleep = _chunkPQZHDKRWcjs.sleep; exports.stringifyError = _chunkPQZHDKRWcjs.stringifyError; exports.toUint8Array = _chunkPQZHDKRWcjs.toUint8Array;
26
43
  //# sourceMappingURL=utils.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/nathan/rivetkit/packages/rivetkit/dist/tsup/utils.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,6jBAAC","file":"/Users/nathan/rivetkit/packages/rivetkit/dist/tsup/utils.cjs"}
1
+ {"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/utils.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,mgCAAC","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/utils.cjs"}
@@ -1,11 +1,56 @@
1
- export { a as assertUnreachable, s as stringifyError } from './utils-CT0cv4jd.cjs';
1
+ export { a as assertUnreachable, s as stringifyError } from './utils-fwx3o3K9.cjs';
2
2
  import { Context, Handler } from 'hono';
3
3
  import 'hono/utils/http-status';
4
4
 
5
+ /**
6
+ * Joins multiple abort signals into one.
7
+ *
8
+ * The returned signal aborts when the first input signal aborts.
9
+ * Uses `AbortSignal.any(...)` when available, with a runtime fallback.
10
+ *
11
+ * @experimental
12
+ */
13
+ declare function joinSignals(...signals: Array<AbortSignal | undefined | null>): AbortSignal;
14
+ /**
15
+ * Returns a promise that resolves after the given number of milliseconds.
16
+ *
17
+ * @experimental
18
+ */
19
+ declare function sleep(ms: number): Promise<void>;
20
+ /**
21
+ * Creates a fixed-rate interval tick function that can be awaited in a loop.
22
+ *
23
+ * @example
24
+ * const tick = interval(100);
25
+ * while (!c.aborted) {
26
+ * await tick();
27
+ * if (c.aborted) break;
28
+ * // ... game logic
29
+ * }
30
+ *
31
+ * @experimental
32
+ */
33
+ declare function interval(ms: number): () => Promise<void>;
5
34
  declare const VERSION: string;
35
+ /**
36
+ * Builds the HTTP user agent used by this library.
37
+ *
38
+ * @experimental
39
+ */
6
40
  declare function httpUserAgent(): string;
7
41
  type UpgradeWebSocket = (createEvents: (c: Context) => any) => Handler;
42
+ type GetUpgradeWebSocket = () => UpgradeWebSocket;
43
+ /**
44
+ * Reads an environment variable from Deno or Node runtimes.
45
+ *
46
+ * @experimental
47
+ */
8
48
  declare function getEnvUniversal(key: string): string | undefined;
49
+ /**
50
+ * Traces a debug value and returns it.
51
+ *
52
+ * @experimental
53
+ */
9
54
  declare function dbg<T>(x: T): T;
10
55
  /**
11
56
  * Converts various ArrayBuffer-like types to Uint8Array.
@@ -13,11 +58,30 @@ declare function dbg<T>(x: T): T;
13
58
  *
14
59
  * @param data - The ArrayBuffer or ArrayBufferView to convert
15
60
  * @returns A Uint8Array view of the data
61
+ *
62
+ * @experimental
16
63
  */
17
64
  declare function toUint8Array(data: ArrayBuffer | ArrayBufferView): Uint8Array;
18
65
  type LongTimeoutHandle = {
19
66
  abort: () => void;
20
67
  };
68
+ /**
69
+ * Polyfill for Promise.withResolvers().
70
+ *
71
+ * This is specifically for Cloudflare Workers. Their implementation of Promise.withResolvers does not work correctly.
72
+ *
73
+ * @experimental
74
+ */
75
+ declare function promiseWithResolvers<T>(onReject: (reason?: any) => void): {
76
+ promise: Promise<T>;
77
+ resolve: (value: T | PromiseLike<T>) => void;
78
+ reject: (reason?: any) => void;
79
+ };
80
+ /**
81
+ * Sets a timeout that supports delays larger than the JavaScript timer limit.
82
+ *
83
+ * @experimental
84
+ */
21
85
  declare function setLongTimeout(listener: () => void, after: number): LongTimeoutHandle;
22
86
  /**
23
87
  * A tiny utility that coalesces/enqueues async operations so only the latest
@@ -31,6 +95,54 @@ declare class SinglePromiseQueue {
31
95
  /** Queue the next operation and return a promise that resolves when it flushes. */
32
96
  enqueue(op: () => Promise<void>): Promise<void>;
33
97
  }
98
+ /**
99
+ * Converts a Buffer or Uint8Array into an ArrayBuffer view.
100
+ *
101
+ * @experimental
102
+ */
34
103
  declare function bufferToArrayBuffer(buf: Buffer | Uint8Array): ArrayBuffer;
104
+ /**
105
+ * Properly combines a base URL endpoint with a path, preserving any base path in the endpoint.
106
+ *
107
+ * @example
108
+ * combineUrlPath("http://localhost:8787/rivet", "/actors/action")
109
+ * // Returns: "http://localhost:8787/rivet/actors/action"
110
+ *
111
+ * @example
112
+ * combineUrlPath("http://localhost:8787/rivet", "/actors?type=foo", { namespace: "test" })
113
+ * // Returns: "http://localhost:8787/rivet/actors?type=foo&namespace=test"
114
+ *
115
+ * @param endpoint The base URL endpoint that may contain a path component
116
+ * @param path The path to append to the endpoint (may include query parameters)
117
+ * @param queryParams Optional additional query parameters to append
118
+ * @returns The properly combined URL string
119
+ *
120
+ * @experimental
121
+ */
122
+ declare function combineUrlPath(endpoint: string, path: string, queryParams?: Record<string, string | undefined>): string;
123
+ /**
124
+ * Compares two ArrayBuffer values by byte content.
125
+ *
126
+ * @experimental
127
+ */
128
+ declare function arrayBuffersEqual(buf1: ArrayBuffer, buf2: ArrayBuffer): boolean;
129
+ declare const EXTRA_ERROR_LOG: {
130
+ issues: string;
131
+ support: string;
132
+ version: string;
133
+ };
134
+ type Runtime = "deno" | "bun" | "node";
135
+ /**
136
+ * Detects the current JavaScript runtime from the user agent.
137
+ *
138
+ * @experimental
139
+ */
140
+ declare function detectRuntime(): Runtime;
141
+ type DeepReadonly<T> = {
142
+ readonly [K in keyof T]: T[K] extends object ? DeepReadonly<T[K]> : T[K];
143
+ };
144
+ type DeepMutable<T> = {
145
+ -readonly [K in keyof T]: T[K] extends object ? DeepMutable<T[K]> : T[K];
146
+ };
35
147
 
36
- export { type LongTimeoutHandle, SinglePromiseQueue, type UpgradeWebSocket, VERSION, bufferToArrayBuffer, dbg, getEnvUniversal, httpUserAgent, setLongTimeout, toUint8Array };
148
+ export { type DeepMutable, type DeepReadonly, EXTRA_ERROR_LOG, type GetUpgradeWebSocket, type LongTimeoutHandle, type Runtime, SinglePromiseQueue, type UpgradeWebSocket, VERSION, arrayBuffersEqual, bufferToArrayBuffer, combineUrlPath, dbg, detectRuntime, getEnvUniversal, httpUserAgent, interval, joinSignals, promiseWithResolvers, setLongTimeout, sleep, toUint8Array };
@@ -1,11 +1,56 @@
1
- export { a as assertUnreachable, s as stringifyError } from './utils-CT0cv4jd.js';
1
+ export { a as assertUnreachable, s as stringifyError } from './utils-fwx3o3K9.js';
2
2
  import { Context, Handler } from 'hono';
3
3
  import 'hono/utils/http-status';
4
4
 
5
+ /**
6
+ * Joins multiple abort signals into one.
7
+ *
8
+ * The returned signal aborts when the first input signal aborts.
9
+ * Uses `AbortSignal.any(...)` when available, with a runtime fallback.
10
+ *
11
+ * @experimental
12
+ */
13
+ declare function joinSignals(...signals: Array<AbortSignal | undefined | null>): AbortSignal;
14
+ /**
15
+ * Returns a promise that resolves after the given number of milliseconds.
16
+ *
17
+ * @experimental
18
+ */
19
+ declare function sleep(ms: number): Promise<void>;
20
+ /**
21
+ * Creates a fixed-rate interval tick function that can be awaited in a loop.
22
+ *
23
+ * @example
24
+ * const tick = interval(100);
25
+ * while (!c.aborted) {
26
+ * await tick();
27
+ * if (c.aborted) break;
28
+ * // ... game logic
29
+ * }
30
+ *
31
+ * @experimental
32
+ */
33
+ declare function interval(ms: number): () => Promise<void>;
5
34
  declare const VERSION: string;
35
+ /**
36
+ * Builds the HTTP user agent used by this library.
37
+ *
38
+ * @experimental
39
+ */
6
40
  declare function httpUserAgent(): string;
7
41
  type UpgradeWebSocket = (createEvents: (c: Context) => any) => Handler;
42
+ type GetUpgradeWebSocket = () => UpgradeWebSocket;
43
+ /**
44
+ * Reads an environment variable from Deno or Node runtimes.
45
+ *
46
+ * @experimental
47
+ */
8
48
  declare function getEnvUniversal(key: string): string | undefined;
49
+ /**
50
+ * Traces a debug value and returns it.
51
+ *
52
+ * @experimental
53
+ */
9
54
  declare function dbg<T>(x: T): T;
10
55
  /**
11
56
  * Converts various ArrayBuffer-like types to Uint8Array.
@@ -13,11 +58,30 @@ declare function dbg<T>(x: T): T;
13
58
  *
14
59
  * @param data - The ArrayBuffer or ArrayBufferView to convert
15
60
  * @returns A Uint8Array view of the data
61
+ *
62
+ * @experimental
16
63
  */
17
64
  declare function toUint8Array(data: ArrayBuffer | ArrayBufferView): Uint8Array;
18
65
  type LongTimeoutHandle = {
19
66
  abort: () => void;
20
67
  };
68
+ /**
69
+ * Polyfill for Promise.withResolvers().
70
+ *
71
+ * This is specifically for Cloudflare Workers. Their implementation of Promise.withResolvers does not work correctly.
72
+ *
73
+ * @experimental
74
+ */
75
+ declare function promiseWithResolvers<T>(onReject: (reason?: any) => void): {
76
+ promise: Promise<T>;
77
+ resolve: (value: T | PromiseLike<T>) => void;
78
+ reject: (reason?: any) => void;
79
+ };
80
+ /**
81
+ * Sets a timeout that supports delays larger than the JavaScript timer limit.
82
+ *
83
+ * @experimental
84
+ */
21
85
  declare function setLongTimeout(listener: () => void, after: number): LongTimeoutHandle;
22
86
  /**
23
87
  * A tiny utility that coalesces/enqueues async operations so only the latest
@@ -31,6 +95,54 @@ declare class SinglePromiseQueue {
31
95
  /** Queue the next operation and return a promise that resolves when it flushes. */
32
96
  enqueue(op: () => Promise<void>): Promise<void>;
33
97
  }
98
+ /**
99
+ * Converts a Buffer or Uint8Array into an ArrayBuffer view.
100
+ *
101
+ * @experimental
102
+ */
34
103
  declare function bufferToArrayBuffer(buf: Buffer | Uint8Array): ArrayBuffer;
104
+ /**
105
+ * Properly combines a base URL endpoint with a path, preserving any base path in the endpoint.
106
+ *
107
+ * @example
108
+ * combineUrlPath("http://localhost:8787/rivet", "/actors/action")
109
+ * // Returns: "http://localhost:8787/rivet/actors/action"
110
+ *
111
+ * @example
112
+ * combineUrlPath("http://localhost:8787/rivet", "/actors?type=foo", { namespace: "test" })
113
+ * // Returns: "http://localhost:8787/rivet/actors?type=foo&namespace=test"
114
+ *
115
+ * @param endpoint The base URL endpoint that may contain a path component
116
+ * @param path The path to append to the endpoint (may include query parameters)
117
+ * @param queryParams Optional additional query parameters to append
118
+ * @returns The properly combined URL string
119
+ *
120
+ * @experimental
121
+ */
122
+ declare function combineUrlPath(endpoint: string, path: string, queryParams?: Record<string, string | undefined>): string;
123
+ /**
124
+ * Compares two ArrayBuffer values by byte content.
125
+ *
126
+ * @experimental
127
+ */
128
+ declare function arrayBuffersEqual(buf1: ArrayBuffer, buf2: ArrayBuffer): boolean;
129
+ declare const EXTRA_ERROR_LOG: {
130
+ issues: string;
131
+ support: string;
132
+ version: string;
133
+ };
134
+ type Runtime = "deno" | "bun" | "node";
135
+ /**
136
+ * Detects the current JavaScript runtime from the user agent.
137
+ *
138
+ * @experimental
139
+ */
140
+ declare function detectRuntime(): Runtime;
141
+ type DeepReadonly<T> = {
142
+ readonly [K in keyof T]: T[K] extends object ? DeepReadonly<T[K]> : T[K];
143
+ };
144
+ type DeepMutable<T> = {
145
+ -readonly [K in keyof T]: T[K] extends object ? DeepMutable<T[K]> : T[K];
146
+ };
35
147
 
36
- export { type LongTimeoutHandle, SinglePromiseQueue, type UpgradeWebSocket, VERSION, bufferToArrayBuffer, dbg, getEnvUniversal, httpUserAgent, setLongTimeout, toUint8Array };
148
+ export { type DeepMutable, type DeepReadonly, EXTRA_ERROR_LOG, type GetUpgradeWebSocket, type LongTimeoutHandle, type Runtime, SinglePromiseQueue, type UpgradeWebSocket, VERSION, arrayBuffersEqual, bufferToArrayBuffer, combineUrlPath, dbg, detectRuntime, getEnvUniversal, httpUserAgent, interval, joinSignals, promiseWithResolvers, setLongTimeout, sleep, toUint8Array };
@@ -1,25 +1,42 @@
1
1
  import {
2
+ EXTRA_ERROR_LOG,
2
3
  SinglePromiseQueue,
3
4
  VERSION,
5
+ arrayBuffersEqual,
4
6
  assertUnreachable,
5
7
  bufferToArrayBuffer,
8
+ combineUrlPath,
6
9
  dbg,
10
+ detectRuntime,
7
11
  getEnvUniversal,
8
12
  httpUserAgent,
13
+ interval,
14
+ joinSignals,
15
+ promiseWithResolvers,
9
16
  setLongTimeout,
17
+ sleep,
10
18
  stringifyError,
11
19
  toUint8Array
12
- } from "./chunk-3H7O2A7I.js";
13
- import "./chunk-INGJP237.js";
20
+ } from "./chunk-325TLXJT.js";
21
+ import "./chunk-7HTNH26M.js";
22
+ import "./chunk-424PT5DM.js";
14
23
  export {
24
+ EXTRA_ERROR_LOG,
15
25
  SinglePromiseQueue,
16
26
  VERSION,
27
+ arrayBuffersEqual,
17
28
  assertUnreachable,
18
29
  bufferToArrayBuffer,
30
+ combineUrlPath,
19
31
  dbg,
32
+ detectRuntime,
20
33
  getEnvUniversal,
21
34
  httpUserAgent,
35
+ interval,
36
+ joinSignals,
37
+ promiseWithResolvers,
22
38
  setLongTimeout,
39
+ sleep,
23
40
  stringifyError,
24
41
  toUint8Array
25
42
  };