rivetkit 2.0.2 → 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.
- package/README.md +3 -5
- package/dist/browser/client.d.ts +2485 -0
- package/dist/browser/client.js +5182 -0
- package/dist/browser/client.js.map +1 -0
- package/dist/browser/inspector/client.d.ts +130 -0
- package/dist/browser/inspector/client.js +2854 -0
- package/dist/browser/inspector/client.js.map +1 -0
- package/dist/browser/v3-DnYObHH3.d.ts +279 -0
- package/dist/inspector.tar.gz +0 -0
- package/dist/schemas/actor-inspector/v1.ts +784 -0
- package/dist/schemas/actor-inspector/v2.ts +796 -0
- package/dist/schemas/actor-inspector/v3.ts +899 -0
- package/dist/schemas/actor-persist/v1.ts +225 -0
- package/dist/schemas/actor-persist/v2.ts +268 -0
- package/dist/schemas/actor-persist/v3.ts +280 -0
- package/dist/schemas/actor-persist/v4.ts +406 -0
- package/dist/schemas/client-protocol/v1.ts +441 -0
- package/dist/schemas/client-protocol/v2.ts +438 -0
- package/dist/schemas/client-protocol/v3.ts +554 -0
- package/dist/schemas/file-system-driver/v1.ts +108 -0
- package/dist/schemas/file-system-driver/v2.ts +142 -0
- package/dist/schemas/file-system-driver/v3.ts +167 -0
- package/dist/schemas/persist/v1.ts +781 -0
- package/dist/schemas/transport/v1.ts +697 -0
- package/dist/tsup/actor/errors.cjs +106 -0
- package/dist/tsup/actor/errors.cjs.map +1 -0
- package/dist/tsup/actor/errors.d.cts +188 -0
- package/dist/tsup/actor/errors.d.ts +188 -0
- package/dist/tsup/actor/errors.js +106 -0
- package/dist/tsup/actor/errors.js.map +1 -0
- package/dist/tsup/actor-router-consts-D29T1Z-K.d.cts +24 -0
- package/dist/tsup/actor-router-consts-D29T1Z-K.d.ts +24 -0
- package/dist/tsup/chunk-325TLXJT.js +1060 -0
- package/dist/tsup/chunk-325TLXJT.js.map +1 -0
- package/dist/tsup/chunk-424PT5DM.js +23 -0
- package/dist/tsup/chunk-424PT5DM.js.map +1 -0
- package/dist/tsup/chunk-4JVIG3SS.cjs +6289 -0
- package/dist/tsup/chunk-4JVIG3SS.cjs.map +1 -0
- package/dist/tsup/chunk-6LJAZ5R4.cjs +96 -0
- package/dist/tsup/chunk-6LJAZ5R4.cjs.map +1 -0
- package/dist/tsup/chunk-6XU3FMCB.cjs +534 -0
- package/dist/tsup/chunk-6XU3FMCB.cjs.map +1 -0
- package/dist/tsup/chunk-7HTNH26M.js +509 -0
- package/dist/tsup/chunk-7HTNH26M.js.map +1 -0
- package/dist/tsup/chunk-AUVH72RE.cjs +5977 -0
- package/dist/tsup/chunk-AUVH72RE.cjs.map +1 -0
- package/dist/tsup/chunk-D4BYUPNQ.js +645 -0
- package/dist/tsup/chunk-D4BYUPNQ.js.map +1 -0
- package/dist/tsup/chunk-HDQ2JUQT.cjs +23 -0
- package/dist/tsup/chunk-HDQ2JUQT.cjs.map +1 -0
- package/dist/tsup/chunk-HHXX2VRM.js +6289 -0
- package/dist/tsup/chunk-HHXX2VRM.js.map +1 -0
- package/dist/tsup/chunk-JEAEA2PB.js +49 -0
- package/dist/tsup/chunk-JEAEA2PB.js.map +1 -0
- package/dist/tsup/chunk-JYSEG3VF.cjs +642 -0
- package/dist/tsup/chunk-JYSEG3VF.cjs.map +1 -0
- package/dist/tsup/chunk-K6DGYILQ.js +2657 -0
- package/dist/tsup/chunk-K6DGYILQ.js.map +1 -0
- package/dist/tsup/chunk-KJSYAUOM.js +96 -0
- package/dist/tsup/chunk-KJSYAUOM.js.map +1 -0
- package/dist/tsup/chunk-L47L3ZWJ.cjs +509 -0
- package/dist/tsup/chunk-L47L3ZWJ.cjs.map +1 -0
- package/dist/tsup/chunk-LXUQ667X.js +2006 -0
- package/dist/tsup/chunk-LXUQ667X.js.map +1 -0
- package/dist/tsup/chunk-MXNPAB5W.js +5977 -0
- package/dist/tsup/chunk-MXNPAB5W.js.map +1 -0
- package/dist/tsup/chunk-N4KRDJ56.js +72 -0
- package/dist/tsup/chunk-N4KRDJ56.js.map +1 -0
- package/dist/tsup/chunk-NIYZDWMW.cjs +2006 -0
- package/dist/tsup/chunk-NIYZDWMW.cjs.map +1 -0
- package/dist/tsup/chunk-PQZHDKRW.cjs +1060 -0
- package/dist/tsup/chunk-PQZHDKRW.cjs.map +1 -0
- package/dist/tsup/chunk-PVOE6BU7.cjs +1050 -0
- package/dist/tsup/chunk-PVOE6BU7.cjs.map +1 -0
- package/dist/tsup/chunk-Q4UD2GA4.cjs +1810 -0
- package/dist/tsup/chunk-Q4UD2GA4.cjs.map +1 -0
- package/dist/tsup/chunk-QUD664YZ.js +1810 -0
- package/dist/tsup/chunk-QUD664YZ.js.map +1 -0
- package/dist/tsup/chunk-RTOCTWME.js +1050 -0
- package/dist/tsup/chunk-RTOCTWME.js.map +1 -0
- package/dist/tsup/chunk-SAZZ4SB2.cjs +2657 -0
- package/dist/tsup/chunk-SAZZ4SB2.cjs.map +1 -0
- package/dist/tsup/chunk-SR3KQE7Q.cjs +72 -0
- package/dist/tsup/chunk-SR3KQE7Q.cjs.map +1 -0
- package/dist/tsup/chunk-V2GHLYC6.cjs +49 -0
- package/dist/tsup/chunk-V2GHLYC6.cjs.map +1 -0
- package/dist/tsup/chunk-V3WG7XTW.cjs +645 -0
- package/dist/tsup/chunk-V3WG7XTW.cjs.map +1 -0
- package/dist/tsup/chunk-VKVNIQRQ.js +257 -0
- package/dist/tsup/chunk-VKVNIQRQ.js.map +1 -0
- package/dist/tsup/chunk-WMPW7JYC.js +642 -0
- package/dist/tsup/chunk-WMPW7JYC.js.map +1 -0
- package/dist/tsup/chunk-Z7HNQ2WF.js +534 -0
- package/dist/tsup/chunk-Z7HNQ2WF.js.map +1 -0
- package/dist/tsup/chunk-ZFY5J2EP.cjs +257 -0
- package/dist/tsup/chunk-ZFY5J2EP.cjs.map +1 -0
- package/dist/tsup/client/mod.cjs +33 -0
- package/dist/tsup/client/mod.cjs.map +1 -0
- package/dist/tsup/client/mod.d.cts +64 -0
- package/dist/tsup/client/mod.d.ts +64 -0
- package/dist/tsup/client/mod.js +33 -0
- package/dist/tsup/client/mod.js.map +1 -0
- package/dist/tsup/common/log.cjs +21 -0
- package/dist/tsup/common/log.cjs.map +1 -0
- package/dist/tsup/common/log.d.cts +34 -0
- package/dist/tsup/common/log.d.ts +34 -0
- package/dist/tsup/common/log.js +21 -0
- package/dist/tsup/common/log.js.map +1 -0
- package/dist/tsup/common/websocket.cjs +10 -0
- package/dist/tsup/common/websocket.cjs.map +1 -0
- package/dist/tsup/common/websocket.d.cts +3 -0
- package/dist/tsup/common/websocket.d.ts +3 -0
- package/dist/tsup/common/websocket.js +10 -0
- package/dist/tsup/common/websocket.js.map +1 -0
- package/dist/tsup/config-BiNoIHRs.d.cts +80 -0
- package/dist/tsup/config-BiNoIHRs.d.ts +80 -0
- package/dist/tsup/config-P3XujgRr.d.ts +2594 -0
- package/dist/tsup/config-_gfywqqI.d.cts +2594 -0
- package/dist/tsup/context-Bxd8Cx4H.d.cts +75 -0
- package/dist/tsup/context-uNA4TRn3.d.ts +75 -0
- package/dist/tsup/db/drizzle/mod.cjs +49 -0
- package/dist/tsup/db/drizzle/mod.cjs.map +1 -0
- package/dist/tsup/db/drizzle/mod.d.cts +17 -0
- package/dist/tsup/db/drizzle/mod.d.ts +17 -0
- package/dist/tsup/db/drizzle/mod.js +49 -0
- package/dist/tsup/db/drizzle/mod.js.map +1 -0
- package/dist/tsup/db/mod.cjs +9 -0
- package/dist/tsup/db/mod.cjs.map +1 -0
- package/dist/tsup/db/mod.d.cts +9 -0
- package/dist/tsup/db/mod.d.ts +9 -0
- package/dist/tsup/db/mod.js +9 -0
- package/dist/tsup/db/mod.js.map +1 -0
- package/dist/tsup/driver-BcLvZcKl.d.cts +13 -0
- package/dist/tsup/driver-CPGHKXyh.d.ts +13 -0
- package/dist/tsup/driver-helpers/mod.cjs +53 -0
- package/dist/tsup/driver-helpers/mod.cjs.map +1 -0
- package/dist/tsup/driver-helpers/mod.d.cts +47 -0
- package/dist/tsup/driver-helpers/mod.d.ts +47 -0
- package/dist/tsup/driver-helpers/mod.js +53 -0
- package/dist/tsup/driver-helpers/mod.js.map +1 -0
- package/dist/tsup/driver-test-suite/mod.cjs +4974 -0
- package/dist/tsup/driver-test-suite/mod.cjs.map +1 -0
- package/dist/tsup/driver-test-suite/mod.d.cts +73 -0
- package/dist/tsup/driver-test-suite/mod.d.ts +73 -0
- package/dist/tsup/driver-test-suite/mod.js +4974 -0
- package/dist/tsup/driver-test-suite/mod.js.map +1 -0
- package/dist/tsup/inspector/mod.cjs +164 -0
- package/dist/tsup/inspector/mod.cjs.map +1 -0
- package/dist/tsup/inspector/mod.d.cts +130 -0
- package/dist/tsup/inspector/mod.d.ts +130 -0
- package/dist/tsup/inspector/mod.js +164 -0
- package/dist/tsup/inspector/mod.js.map +1 -0
- package/dist/tsup/keys-CydblqMh.d.cts +13 -0
- package/dist/tsup/keys-CydblqMh.d.ts +13 -0
- package/dist/tsup/mod.cjs +82 -0
- package/dist/tsup/mod.cjs.map +1 -0
- package/dist/tsup/mod.d.cts +126 -0
- package/dist/tsup/mod.d.ts +126 -0
- package/dist/tsup/mod.js +82 -0
- package/dist/tsup/mod.js.map +1 -0
- package/dist/tsup/serve-test-suite/mod.cjs +2601 -0
- package/dist/tsup/serve-test-suite/mod.cjs.map +1 -0
- package/dist/tsup/serve-test-suite/mod.d.cts +9 -0
- package/dist/tsup/serve-test-suite/mod.d.ts +9 -0
- package/dist/tsup/serve-test-suite/mod.js +2601 -0
- package/dist/tsup/serve-test-suite/mod.js.map +1 -0
- package/dist/tsup/test/mod.cjs +90 -0
- package/dist/tsup/test/mod.cjs.map +1 -0
- package/dist/tsup/test/mod.d.cts +26 -0
- package/dist/tsup/test/mod.d.ts +26 -0
- package/dist/tsup/test/mod.js +90 -0
- package/dist/tsup/test/mod.js.map +1 -0
- package/dist/tsup/utils-fwx3o3K9.d.cts +18 -0
- package/dist/tsup/utils-fwx3o3K9.d.ts +18 -0
- package/dist/tsup/utils.cjs +43 -0
- package/dist/tsup/utils.cjs.map +1 -0
- package/dist/tsup/utils.d.cts +148 -0
- package/dist/tsup/utils.d.ts +148 -0
- package/dist/tsup/utils.js +43 -0
- package/dist/tsup/utils.js.map +1 -0
- package/dist/tsup/v3-DnYObHH3.d.cts +279 -0
- package/dist/tsup/v3-DnYObHH3.d.ts +279 -0
- package/dist/tsup/workflow/mod.cjs +16 -0
- package/dist/tsup/workflow/mod.cjs.map +1 -0
- package/dist/tsup/workflow/mod.d.cts +25 -0
- package/dist/tsup/workflow/mod.d.ts +25 -0
- package/dist/tsup/workflow/mod.js +16 -0
- package/dist/tsup/workflow/mod.js.map +1 -0
- package/package.json +293 -5
- package/src/actor/config.ts +1221 -0
- package/src/actor/conn/driver.ts +61 -0
- package/src/actor/conn/drivers/http.ts +17 -0
- package/src/actor/conn/drivers/raw-request.ts +24 -0
- package/src/actor/conn/drivers/raw-websocket.ts +65 -0
- package/src/actor/conn/drivers/websocket.ts +144 -0
- package/src/actor/conn/mod.ts +288 -0
- package/src/actor/conn/persisted.ts +81 -0
- package/src/actor/conn/state-manager.ts +196 -0
- package/src/actor/contexts/action.ts +47 -0
- package/src/actor/contexts/base/actor.ts +347 -0
- package/src/actor/contexts/base/conn-init.ts +68 -0
- package/src/actor/contexts/base/conn.ts +73 -0
- package/src/actor/contexts/before-action-response.ts +42 -0
- package/src/actor/contexts/before-connect.ts +31 -0
- package/src/actor/contexts/connect.ts +42 -0
- package/src/actor/contexts/create-conn-state.ts +32 -0
- package/src/actor/contexts/create-vars.ts +39 -0
- package/src/actor/contexts/create.ts +39 -0
- package/src/actor/contexts/destroy.ts +42 -0
- package/src/actor/contexts/disconnect.ts +43 -0
- package/src/actor/contexts/index.ts +33 -0
- package/src/actor/contexts/request.ts +80 -0
- package/src/actor/contexts/run.ts +47 -0
- package/src/actor/contexts/sleep.ts +42 -0
- package/src/actor/contexts/state-change.ts +42 -0
- package/src/actor/contexts/wake.ts +42 -0
- package/src/actor/contexts/websocket.ts +80 -0
- package/src/actor/database.ts +13 -0
- package/src/actor/definition.ts +64 -0
- package/src/actor/driver.ts +114 -0
- package/src/actor/errors.ts +556 -0
- package/src/actor/instance/connection-manager.ts +574 -0
- package/src/actor/instance/event-manager.ts +314 -0
- package/src/actor/instance/keys.ts +146 -0
- package/src/actor/instance/kv.ts +241 -0
- package/src/actor/instance/mod.ts +1658 -0
- package/src/actor/instance/persisted.ts +67 -0
- package/src/actor/instance/queue-manager.ts +603 -0
- package/src/actor/instance/queue.ts +345 -0
- package/src/actor/instance/schedule-manager.ts +392 -0
- package/src/actor/instance/state-manager.ts +542 -0
- package/src/actor/instance/traces-driver.ts +128 -0
- package/src/actor/keys.test.ts +275 -0
- package/src/actor/keys.ts +89 -0
- package/src/actor/log.ts +6 -0
- package/src/actor/mod.ts +110 -0
- package/src/actor/protocol/old.ts +416 -0
- package/src/actor/protocol/serde.ts +222 -0
- package/src/actor/router-endpoints.ts +400 -0
- package/src/actor/router-websocket-endpoints.test.ts +54 -0
- package/src/actor/router-websocket-endpoints.ts +405 -0
- package/src/actor/router.ts +380 -0
- package/src/actor/schedule.ts +17 -0
- package/src/actor/schema.ts +291 -0
- package/src/actor/utils.test.ts +48 -0
- package/src/actor/utils.ts +158 -0
- package/src/client/actor-common.ts +32 -0
- package/src/client/actor-conn.ts +1262 -0
- package/src/client/actor-handle.ts +344 -0
- package/src/client/actor-query.ts +112 -0
- package/src/client/client.ts +558 -0
- package/src/client/config.ts +151 -0
- package/src/client/errors.ts +76 -0
- package/src/client/log.ts +5 -0
- package/src/client/mod.browser.ts +2 -0
- package/src/client/mod.ts +70 -0
- package/src/client/queue.ts +146 -0
- package/src/client/raw-utils.ts +149 -0
- package/src/client/test.ts +44 -0
- package/src/client/utils.ts +252 -0
- package/src/common/actor-router-consts.ts +59 -0
- package/src/common/cors.ts +57 -0
- package/src/common/eventsource-interface.ts +47 -0
- package/src/common/eventsource.ts +44 -0
- package/src/common/inline-websocket-adapter.ts +154 -0
- package/src/common/log-levels.ts +27 -0
- package/src/common/log.ts +229 -0
- package/src/common/logfmt.ts +221 -0
- package/src/common/network.ts +2 -0
- package/src/common/router.ts +174 -0
- package/src/common/utils.ts +339 -0
- package/src/common/websocket-interface.ts +7 -0
- package/src/common/websocket.ts +43 -0
- package/src/db/config.ts +100 -0
- package/src/db/drizzle/mod.ts +226 -0
- package/src/db/drizzle/sqlite-core.ts +22 -0
- package/src/db/mod.ts +125 -0
- package/src/db/shared.ts +92 -0
- package/src/db/sqlite-vfs.ts +12 -0
- package/src/devtools-loader/index.ts +33 -0
- package/src/devtools-loader/log.ts +5 -0
- package/src/driver-helpers/mod.ts +33 -0
- package/src/driver-helpers/utils.ts +54 -0
- package/src/driver-test-suite/log.ts +5 -0
- package/src/driver-test-suite/mod.ts +293 -0
- package/src/driver-test-suite/test-inline-client-driver.ts +307 -0
- package/src/driver-test-suite/tests/access-control.ts +218 -0
- package/src/driver-test-suite/tests/action-features.ts +203 -0
- package/src/driver-test-suite/tests/actor-conn-hibernation.ts +152 -0
- package/src/driver-test-suite/tests/actor-conn-state.ts +300 -0
- package/src/driver-test-suite/tests/actor-conn.ts +596 -0
- package/src/driver-test-suite/tests/actor-db-raw.ts +73 -0
- package/src/driver-test-suite/tests/actor-db.ts +477 -0
- package/src/driver-test-suite/tests/actor-destroy.ts +294 -0
- package/src/driver-test-suite/tests/actor-driver.ts +18 -0
- package/src/driver-test-suite/tests/actor-error-handling.ts +150 -0
- package/src/driver-test-suite/tests/actor-handle.ts +312 -0
- package/src/driver-test-suite/tests/actor-inline-client.ts +163 -0
- package/src/driver-test-suite/tests/actor-inspector.ts +264 -0
- package/src/driver-test-suite/tests/actor-kv.ts +65 -0
- package/src/driver-test-suite/tests/actor-metadata.ts +116 -0
- package/src/driver-test-suite/tests/actor-onstatechange.ts +95 -0
- package/src/driver-test-suite/tests/actor-queue.ts +325 -0
- package/src/driver-test-suite/tests/actor-run.ts +181 -0
- package/src/driver-test-suite/tests/actor-schedule.ts +97 -0
- package/src/driver-test-suite/tests/actor-sleep.ts +415 -0
- package/src/driver-test-suite/tests/actor-state.ts +54 -0
- package/src/driver-test-suite/tests/actor-stateless.ts +70 -0
- package/src/driver-test-suite/tests/actor-vars.ts +97 -0
- package/src/driver-test-suite/tests/actor-workflow.ts +118 -0
- package/src/driver-test-suite/tests/manager-driver.ts +388 -0
- package/src/driver-test-suite/tests/raw-http-direct-registry.ts +227 -0
- package/src/driver-test-suite/tests/raw-http-request-properties.ts +454 -0
- package/src/driver-test-suite/tests/raw-http.ts +359 -0
- package/src/driver-test-suite/tests/raw-websocket-direct-registry.ts +393 -0
- package/src/driver-test-suite/tests/raw-websocket.ts +513 -0
- package/src/driver-test-suite/tests/request-access.ts +240 -0
- package/src/driver-test-suite/utils.ts +80 -0
- package/src/drivers/default.ts +38 -0
- package/src/drivers/engine/actor-driver.ts +1027 -0
- package/src/drivers/engine/config.ts +43 -0
- package/src/drivers/engine/log.ts +5 -0
- package/src/drivers/engine/mod.ts +36 -0
- package/src/drivers/file-system/actor.ts +102 -0
- package/src/drivers/file-system/global-state.ts +1445 -0
- package/src/drivers/file-system/kv-limits.ts +70 -0
- package/src/drivers/file-system/log.ts +5 -0
- package/src/drivers/file-system/manager.ts +300 -0
- package/src/drivers/file-system/mod.ts +78 -0
- package/src/drivers/file-system/sqlite-runtime.ts +210 -0
- package/src/drivers/file-system/utils.ts +125 -0
- package/src/engine-process/constants.ts +2 -0
- package/src/engine-process/log.ts +5 -0
- package/src/engine-process/mod.ts +464 -0
- package/src/globals.d.ts +35 -0
- package/src/inspector/actor-inspector.ts +352 -0
- package/src/inspector/config.ts +49 -0
- package/src/inspector/handler.ts +273 -0
- package/src/inspector/log.ts +5 -0
- package/src/inspector/mod.browser.ts +8 -0
- package/src/inspector/mod.ts +4 -0
- package/src/inspector/serve-ui.ts +40 -0
- package/src/inspector/transport.ts +18 -0
- package/src/inspector/utils.ts +32 -0
- package/src/manager/driver.ts +106 -0
- package/src/manager/gateway.ts +668 -0
- package/src/manager/log.ts +5 -0
- package/src/manager/mod.ts +2 -0
- package/src/manager/protocol/mod.ts +22 -0
- package/src/manager/protocol/query.ts +85 -0
- package/src/manager/router-schema.ts +22 -0
- package/src/manager/router.ts +660 -0
- package/src/manager-api/actors.ts +83 -0
- package/src/manager-api/common.ts +4 -0
- package/src/mod.ts +24 -0
- package/src/registry/config/driver.ts +21 -0
- package/src/registry/config/index.ts +510 -0
- package/src/registry/config/legacy-runner.ts +157 -0
- package/src/registry/config/runner.ts +21 -0
- package/src/registry/config/serverless.ts +94 -0
- package/src/registry/index.ts +194 -0
- package/src/registry/log.ts +5 -0
- package/src/remote-manager-driver/actor-http-client.ts +84 -0
- package/src/remote-manager-driver/actor-websocket-client.ts +81 -0
- package/src/remote-manager-driver/api-endpoints.ts +159 -0
- package/src/remote-manager-driver/api-utils.ts +69 -0
- package/src/remote-manager-driver/log.ts +5 -0
- package/src/remote-manager-driver/metadata.ts +64 -0
- package/src/remote-manager-driver/mod.ts +414 -0
- package/src/remote-manager-driver/ws-proxy.ts +189 -0
- package/src/schemas/actor-inspector/mod.ts +1 -0
- package/src/schemas/actor-inspector/versioned.ts +233 -0
- package/src/schemas/actor-persist/mod.ts +1 -0
- package/src/schemas/actor-persist/versioned.ts +217 -0
- package/src/schemas/client-protocol/mod.ts +1 -0
- package/src/schemas/client-protocol/versioned.ts +330 -0
- package/src/schemas/client-protocol-zod/mod.ts +118 -0
- package/src/schemas/file-system-driver/mod.ts +1 -0
- package/src/schemas/file-system-driver/versioned.ts +135 -0
- package/src/schemas/persist/mod.ts +1 -0
- package/src/schemas/transport/mod.ts +1 -0
- package/src/serde.ts +138 -0
- package/src/serve-test-suite/mod.ts +148 -0
- package/src/serverless/configure.ts +82 -0
- package/src/serverless/log.ts +5 -0
- package/src/serverless/router.test.ts +299 -0
- package/src/serverless/router.ts +215 -0
- package/src/test/log.ts +5 -0
- package/src/test/mod.ts +99 -0
- package/src/utils/crypto.ts +24 -0
- package/src/utils/endpoint-parser.test.ts +202 -0
- package/src/utils/endpoint-parser.ts +124 -0
- package/src/utils/env-vars.ts +78 -0
- package/src/utils/node.ts +178 -0
- package/src/utils/router.ts +83 -0
- package/src/utils/serve.ts +212 -0
- package/src/utils.test.ts +34 -0
- package/src/utils.ts +437 -0
- package/src/workflow/constants.ts +2 -0
- package/src/workflow/context.ts +597 -0
- package/src/workflow/driver.ts +194 -0
- package/src/workflow/inspector.ts +268 -0
- package/src/workflow/mod.ts +128 -0
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
// @generated - post-processed by compile-bare.ts
|
|
2
|
+
import * as bare from "@rivetkit/bare-ts"
|
|
3
|
+
|
|
4
|
+
const config = /* @__PURE__ */ bare.Config({})
|
|
5
|
+
|
|
6
|
+
export type u64 = bigint
|
|
7
|
+
|
|
8
|
+
export type PersistedSubscription = {
|
|
9
|
+
readonly eventName: string,
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function readPersistedSubscription(bc: bare.ByteCursor): PersistedSubscription {
|
|
13
|
+
return {
|
|
14
|
+
eventName: bare.readString(bc),
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export function writePersistedSubscription(bc: bare.ByteCursor, x: PersistedSubscription): void {
|
|
19
|
+
bare.writeString(bc, x.eventName)
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
function read0(bc: bare.ByteCursor): readonly PersistedSubscription[] {
|
|
23
|
+
const len = bare.readUintSafe(bc)
|
|
24
|
+
if (len === 0) { return [] }
|
|
25
|
+
const result = [readPersistedSubscription(bc)]
|
|
26
|
+
for (let i = 1; i < len; i++) {
|
|
27
|
+
result[i] = readPersistedSubscription(bc)
|
|
28
|
+
}
|
|
29
|
+
return result
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
function write0(bc: bare.ByteCursor, x: readonly PersistedSubscription[]): void {
|
|
33
|
+
bare.writeUintSafe(bc, x.length)
|
|
34
|
+
for (let i = 0; i < x.length; i++) {
|
|
35
|
+
writePersistedSubscription(bc, x[i])
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export type PersistedConnection = {
|
|
40
|
+
readonly id: string,
|
|
41
|
+
readonly token: string,
|
|
42
|
+
readonly parameters: ArrayBuffer,
|
|
43
|
+
readonly state: ArrayBuffer,
|
|
44
|
+
readonly subscriptions: readonly PersistedSubscription[],
|
|
45
|
+
readonly lastSeen: u64,
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export function readPersistedConnection(bc: bare.ByteCursor): PersistedConnection {
|
|
49
|
+
return {
|
|
50
|
+
id: bare.readString(bc),
|
|
51
|
+
token: bare.readString(bc),
|
|
52
|
+
parameters: bare.readData(bc),
|
|
53
|
+
state: bare.readData(bc),
|
|
54
|
+
subscriptions: read0(bc),
|
|
55
|
+
lastSeen: bare.readU64(bc),
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export function writePersistedConnection(bc: bare.ByteCursor, x: PersistedConnection): void {
|
|
60
|
+
bare.writeString(bc, x.id)
|
|
61
|
+
bare.writeString(bc, x.token)
|
|
62
|
+
bare.writeData(bc, x.parameters)
|
|
63
|
+
bare.writeData(bc, x.state)
|
|
64
|
+
write0(bc, x.subscriptions)
|
|
65
|
+
bare.writeU64(bc, x.lastSeen)
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
function read1(bc: bare.ByteCursor): ArrayBuffer | null {
|
|
69
|
+
return bare.readBool(bc)
|
|
70
|
+
? bare.readData(bc)
|
|
71
|
+
: null
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
function write1(bc: bare.ByteCursor, x: ArrayBuffer | null): void {
|
|
75
|
+
bare.writeBool(bc, x !== null)
|
|
76
|
+
if (x !== null) {
|
|
77
|
+
bare.writeData(bc, x)
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export type GenericPersistedScheduleEvent = {
|
|
82
|
+
readonly action: string,
|
|
83
|
+
readonly args: ArrayBuffer | null,
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
export function readGenericPersistedScheduleEvent(bc: bare.ByteCursor): GenericPersistedScheduleEvent {
|
|
87
|
+
return {
|
|
88
|
+
action: bare.readString(bc),
|
|
89
|
+
args: read1(bc),
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
export function writeGenericPersistedScheduleEvent(bc: bare.ByteCursor, x: GenericPersistedScheduleEvent): void {
|
|
94
|
+
bare.writeString(bc, x.action)
|
|
95
|
+
write1(bc, x.args)
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
export type PersistedScheduleEventKind =
|
|
99
|
+
| { readonly tag: "GenericPersistedScheduleEvent", readonly val: GenericPersistedScheduleEvent }
|
|
100
|
+
|
|
101
|
+
export function readPersistedScheduleEventKind(bc: bare.ByteCursor): PersistedScheduleEventKind {
|
|
102
|
+
const offset = bc.offset
|
|
103
|
+
const tag = bare.readU8(bc)
|
|
104
|
+
switch (tag) {
|
|
105
|
+
case 0:
|
|
106
|
+
return { tag: "GenericPersistedScheduleEvent", val: readGenericPersistedScheduleEvent(bc) }
|
|
107
|
+
default: {
|
|
108
|
+
bc.offset = offset
|
|
109
|
+
throw new bare.BareError(offset, "invalid tag")
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
export function writePersistedScheduleEventKind(bc: bare.ByteCursor, x: PersistedScheduleEventKind): void {
|
|
115
|
+
switch (x.tag) {
|
|
116
|
+
case "GenericPersistedScheduleEvent": {
|
|
117
|
+
bare.writeU8(bc, 0)
|
|
118
|
+
writeGenericPersistedScheduleEvent(bc, x.val)
|
|
119
|
+
break
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export type PersistedScheduleEvent = {
|
|
125
|
+
readonly eventId: string,
|
|
126
|
+
readonly timestamp: u64,
|
|
127
|
+
readonly kind: PersistedScheduleEventKind,
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
export function readPersistedScheduleEvent(bc: bare.ByteCursor): PersistedScheduleEvent {
|
|
131
|
+
return {
|
|
132
|
+
eventId: bare.readString(bc),
|
|
133
|
+
timestamp: bare.readU64(bc),
|
|
134
|
+
kind: readPersistedScheduleEventKind(bc),
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
export function writePersistedScheduleEvent(bc: bare.ByteCursor, x: PersistedScheduleEvent): void {
|
|
139
|
+
bare.writeString(bc, x.eventId)
|
|
140
|
+
bare.writeU64(bc, x.timestamp)
|
|
141
|
+
writePersistedScheduleEventKind(bc, x.kind)
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
function read2(bc: bare.ByteCursor): readonly PersistedConnection[] {
|
|
145
|
+
const len = bare.readUintSafe(bc)
|
|
146
|
+
if (len === 0) { return [] }
|
|
147
|
+
const result = [readPersistedConnection(bc)]
|
|
148
|
+
for (let i = 1; i < len; i++) {
|
|
149
|
+
result[i] = readPersistedConnection(bc)
|
|
150
|
+
}
|
|
151
|
+
return result
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
function write2(bc: bare.ByteCursor, x: readonly PersistedConnection[]): void {
|
|
155
|
+
bare.writeUintSafe(bc, x.length)
|
|
156
|
+
for (let i = 0; i < x.length; i++) {
|
|
157
|
+
writePersistedConnection(bc, x[i])
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
function read3(bc: bare.ByteCursor): readonly PersistedScheduleEvent[] {
|
|
162
|
+
const len = bare.readUintSafe(bc)
|
|
163
|
+
if (len === 0) { return [] }
|
|
164
|
+
const result = [readPersistedScheduleEvent(bc)]
|
|
165
|
+
for (let i = 1; i < len; i++) {
|
|
166
|
+
result[i] = readPersistedScheduleEvent(bc)
|
|
167
|
+
}
|
|
168
|
+
return result
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
function write3(bc: bare.ByteCursor, x: readonly PersistedScheduleEvent[]): void {
|
|
172
|
+
bare.writeUintSafe(bc, x.length)
|
|
173
|
+
for (let i = 0; i < x.length; i++) {
|
|
174
|
+
writePersistedScheduleEvent(bc, x[i])
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
export type PersistedActor = {
|
|
179
|
+
readonly input: ArrayBuffer | null,
|
|
180
|
+
readonly hasInitialized: boolean,
|
|
181
|
+
readonly state: ArrayBuffer,
|
|
182
|
+
readonly connections: readonly PersistedConnection[],
|
|
183
|
+
readonly scheduledEvents: readonly PersistedScheduleEvent[],
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
export function readPersistedActor(bc: bare.ByteCursor): PersistedActor {
|
|
187
|
+
return {
|
|
188
|
+
input: read1(bc),
|
|
189
|
+
hasInitialized: bare.readBool(bc),
|
|
190
|
+
state: bare.readData(bc),
|
|
191
|
+
connections: read2(bc),
|
|
192
|
+
scheduledEvents: read3(bc),
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
export function writePersistedActor(bc: bare.ByteCursor, x: PersistedActor): void {
|
|
197
|
+
write1(bc, x.input)
|
|
198
|
+
bare.writeBool(bc, x.hasInitialized)
|
|
199
|
+
bare.writeData(bc, x.state)
|
|
200
|
+
write2(bc, x.connections)
|
|
201
|
+
write3(bc, x.scheduledEvents)
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
export function encodePersistedActor(x: PersistedActor): Uint8Array {
|
|
205
|
+
const bc = new bare.ByteCursor(
|
|
206
|
+
new Uint8Array(config.initialBufferLength),
|
|
207
|
+
config
|
|
208
|
+
)
|
|
209
|
+
writePersistedActor(bc, x)
|
|
210
|
+
return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
export function decodePersistedActor(bytes: Uint8Array): PersistedActor {
|
|
214
|
+
const bc = new bare.ByteCursor(bytes, config)
|
|
215
|
+
const result = readPersistedActor(bc)
|
|
216
|
+
if (bc.offset < bc.view.byteLength) {
|
|
217
|
+
throw new bare.BareError(bc.offset, "remaining bytes")
|
|
218
|
+
}
|
|
219
|
+
return result
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
function assert(condition: boolean, message?: string): asserts condition {
|
|
224
|
+
if (!condition) throw new Error(message ?? "Assertion failed")
|
|
225
|
+
}
|
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
// @generated - post-processed by compile-bare.ts
|
|
2
|
+
import * as bare from "@rivetkit/bare-ts"
|
|
3
|
+
|
|
4
|
+
const config = /* @__PURE__ */ bare.Config({})
|
|
5
|
+
|
|
6
|
+
export type i64 = bigint
|
|
7
|
+
|
|
8
|
+
export type PersistedSubscription = {
|
|
9
|
+
readonly eventName: string,
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function readPersistedSubscription(bc: bare.ByteCursor): PersistedSubscription {
|
|
13
|
+
return {
|
|
14
|
+
eventName: bare.readString(bc),
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export function writePersistedSubscription(bc: bare.ByteCursor, x: PersistedSubscription): void {
|
|
19
|
+
bare.writeString(bc, x.eventName)
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
function read0(bc: bare.ByteCursor): readonly PersistedSubscription[] {
|
|
23
|
+
const len = bare.readUintSafe(bc)
|
|
24
|
+
if (len === 0) { return [] }
|
|
25
|
+
const result = [readPersistedSubscription(bc)]
|
|
26
|
+
for (let i = 1; i < len; i++) {
|
|
27
|
+
result[i] = readPersistedSubscription(bc)
|
|
28
|
+
}
|
|
29
|
+
return result
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
function write0(bc: bare.ByteCursor, x: readonly PersistedSubscription[]): void {
|
|
33
|
+
bare.writeUintSafe(bc, x.length)
|
|
34
|
+
for (let i = 0; i < x.length; i++) {
|
|
35
|
+
writePersistedSubscription(bc, x[i])
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
function read1(bc: bare.ByteCursor): ArrayBuffer | null {
|
|
40
|
+
return bare.readBool(bc)
|
|
41
|
+
? bare.readData(bc)
|
|
42
|
+
: null
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
function write1(bc: bare.ByteCursor, x: ArrayBuffer | null): void {
|
|
46
|
+
bare.writeBool(bc, x !== null)
|
|
47
|
+
if (x !== null) {
|
|
48
|
+
bare.writeData(bc, x)
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export type PersistedConnection = {
|
|
53
|
+
readonly id: string,
|
|
54
|
+
readonly token: string,
|
|
55
|
+
readonly parameters: ArrayBuffer,
|
|
56
|
+
readonly state: ArrayBuffer,
|
|
57
|
+
readonly subscriptions: readonly PersistedSubscription[],
|
|
58
|
+
readonly lastSeen: i64,
|
|
59
|
+
readonly hibernatableRequestId: ArrayBuffer | null,
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export function readPersistedConnection(bc: bare.ByteCursor): PersistedConnection {
|
|
63
|
+
return {
|
|
64
|
+
id: bare.readString(bc),
|
|
65
|
+
token: bare.readString(bc),
|
|
66
|
+
parameters: bare.readData(bc),
|
|
67
|
+
state: bare.readData(bc),
|
|
68
|
+
subscriptions: read0(bc),
|
|
69
|
+
lastSeen: bare.readI64(bc),
|
|
70
|
+
hibernatableRequestId: read1(bc),
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export function writePersistedConnection(bc: bare.ByteCursor, x: PersistedConnection): void {
|
|
75
|
+
bare.writeString(bc, x.id)
|
|
76
|
+
bare.writeString(bc, x.token)
|
|
77
|
+
bare.writeData(bc, x.parameters)
|
|
78
|
+
bare.writeData(bc, x.state)
|
|
79
|
+
write0(bc, x.subscriptions)
|
|
80
|
+
bare.writeI64(bc, x.lastSeen)
|
|
81
|
+
write1(bc, x.hibernatableRequestId)
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
export type GenericPersistedScheduleEvent = {
|
|
85
|
+
readonly action: string,
|
|
86
|
+
readonly args: ArrayBuffer | null,
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
export function readGenericPersistedScheduleEvent(bc: bare.ByteCursor): GenericPersistedScheduleEvent {
|
|
90
|
+
return {
|
|
91
|
+
action: bare.readString(bc),
|
|
92
|
+
args: read1(bc),
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
export function writeGenericPersistedScheduleEvent(bc: bare.ByteCursor, x: GenericPersistedScheduleEvent): void {
|
|
97
|
+
bare.writeString(bc, x.action)
|
|
98
|
+
write1(bc, x.args)
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
export type PersistedScheduleEventKind =
|
|
102
|
+
| { readonly tag: "GenericPersistedScheduleEvent", readonly val: GenericPersistedScheduleEvent }
|
|
103
|
+
|
|
104
|
+
export function readPersistedScheduleEventKind(bc: bare.ByteCursor): PersistedScheduleEventKind {
|
|
105
|
+
const offset = bc.offset
|
|
106
|
+
const tag = bare.readU8(bc)
|
|
107
|
+
switch (tag) {
|
|
108
|
+
case 0:
|
|
109
|
+
return { tag: "GenericPersistedScheduleEvent", val: readGenericPersistedScheduleEvent(bc) }
|
|
110
|
+
default: {
|
|
111
|
+
bc.offset = offset
|
|
112
|
+
throw new bare.BareError(offset, "invalid tag")
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
export function writePersistedScheduleEventKind(bc: bare.ByteCursor, x: PersistedScheduleEventKind): void {
|
|
118
|
+
switch (x.tag) {
|
|
119
|
+
case "GenericPersistedScheduleEvent": {
|
|
120
|
+
bare.writeU8(bc, 0)
|
|
121
|
+
writeGenericPersistedScheduleEvent(bc, x.val)
|
|
122
|
+
break
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
export type PersistedScheduleEvent = {
|
|
128
|
+
readonly eventId: string,
|
|
129
|
+
readonly timestamp: i64,
|
|
130
|
+
readonly kind: PersistedScheduleEventKind,
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
export function readPersistedScheduleEvent(bc: bare.ByteCursor): PersistedScheduleEvent {
|
|
134
|
+
return {
|
|
135
|
+
eventId: bare.readString(bc),
|
|
136
|
+
timestamp: bare.readI64(bc),
|
|
137
|
+
kind: readPersistedScheduleEventKind(bc),
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
export function writePersistedScheduleEvent(bc: bare.ByteCursor, x: PersistedScheduleEvent): void {
|
|
142
|
+
bare.writeString(bc, x.eventId)
|
|
143
|
+
bare.writeI64(bc, x.timestamp)
|
|
144
|
+
writePersistedScheduleEventKind(bc, x.kind)
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
export type PersistedHibernatableWebSocket = {
|
|
148
|
+
readonly requestId: ArrayBuffer,
|
|
149
|
+
readonly lastSeenTimestamp: i64,
|
|
150
|
+
readonly msgIndex: i64,
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
export function readPersistedHibernatableWebSocket(bc: bare.ByteCursor): PersistedHibernatableWebSocket {
|
|
154
|
+
return {
|
|
155
|
+
requestId: bare.readData(bc),
|
|
156
|
+
lastSeenTimestamp: bare.readI64(bc),
|
|
157
|
+
msgIndex: bare.readI64(bc),
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
export function writePersistedHibernatableWebSocket(bc: bare.ByteCursor, x: PersistedHibernatableWebSocket): void {
|
|
162
|
+
bare.writeData(bc, x.requestId)
|
|
163
|
+
bare.writeI64(bc, x.lastSeenTimestamp)
|
|
164
|
+
bare.writeI64(bc, x.msgIndex)
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
function read2(bc: bare.ByteCursor): readonly PersistedConnection[] {
|
|
168
|
+
const len = bare.readUintSafe(bc)
|
|
169
|
+
if (len === 0) { return [] }
|
|
170
|
+
const result = [readPersistedConnection(bc)]
|
|
171
|
+
for (let i = 1; i < len; i++) {
|
|
172
|
+
result[i] = readPersistedConnection(bc)
|
|
173
|
+
}
|
|
174
|
+
return result
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
function write2(bc: bare.ByteCursor, x: readonly PersistedConnection[]): void {
|
|
178
|
+
bare.writeUintSafe(bc, x.length)
|
|
179
|
+
for (let i = 0; i < x.length; i++) {
|
|
180
|
+
writePersistedConnection(bc, x[i])
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
function read3(bc: bare.ByteCursor): readonly PersistedScheduleEvent[] {
|
|
185
|
+
const len = bare.readUintSafe(bc)
|
|
186
|
+
if (len === 0) { return [] }
|
|
187
|
+
const result = [readPersistedScheduleEvent(bc)]
|
|
188
|
+
for (let i = 1; i < len; i++) {
|
|
189
|
+
result[i] = readPersistedScheduleEvent(bc)
|
|
190
|
+
}
|
|
191
|
+
return result
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
function write3(bc: bare.ByteCursor, x: readonly PersistedScheduleEvent[]): void {
|
|
195
|
+
bare.writeUintSafe(bc, x.length)
|
|
196
|
+
for (let i = 0; i < x.length; i++) {
|
|
197
|
+
writePersistedScheduleEvent(bc, x[i])
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
function read4(bc: bare.ByteCursor): readonly PersistedHibernatableWebSocket[] {
|
|
202
|
+
const len = bare.readUintSafe(bc)
|
|
203
|
+
if (len === 0) { return [] }
|
|
204
|
+
const result = [readPersistedHibernatableWebSocket(bc)]
|
|
205
|
+
for (let i = 1; i < len; i++) {
|
|
206
|
+
result[i] = readPersistedHibernatableWebSocket(bc)
|
|
207
|
+
}
|
|
208
|
+
return result
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
function write4(bc: bare.ByteCursor, x: readonly PersistedHibernatableWebSocket[]): void {
|
|
212
|
+
bare.writeUintSafe(bc, x.length)
|
|
213
|
+
for (let i = 0; i < x.length; i++) {
|
|
214
|
+
writePersistedHibernatableWebSocket(bc, x[i])
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
export type PersistedActor = {
|
|
219
|
+
readonly input: ArrayBuffer | null,
|
|
220
|
+
readonly hasInitialized: boolean,
|
|
221
|
+
readonly state: ArrayBuffer,
|
|
222
|
+
readonly connections: readonly PersistedConnection[],
|
|
223
|
+
readonly scheduledEvents: readonly PersistedScheduleEvent[],
|
|
224
|
+
readonly hibernatableWebSockets: readonly PersistedHibernatableWebSocket[],
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
export function readPersistedActor(bc: bare.ByteCursor): PersistedActor {
|
|
228
|
+
return {
|
|
229
|
+
input: read1(bc),
|
|
230
|
+
hasInitialized: bare.readBool(bc),
|
|
231
|
+
state: bare.readData(bc),
|
|
232
|
+
connections: read2(bc),
|
|
233
|
+
scheduledEvents: read3(bc),
|
|
234
|
+
hibernatableWebSockets: read4(bc),
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
export function writePersistedActor(bc: bare.ByteCursor, x: PersistedActor): void {
|
|
239
|
+
write1(bc, x.input)
|
|
240
|
+
bare.writeBool(bc, x.hasInitialized)
|
|
241
|
+
bare.writeData(bc, x.state)
|
|
242
|
+
write2(bc, x.connections)
|
|
243
|
+
write3(bc, x.scheduledEvents)
|
|
244
|
+
write4(bc, x.hibernatableWebSockets)
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
export function encodePersistedActor(x: PersistedActor): Uint8Array {
|
|
248
|
+
const bc = new bare.ByteCursor(
|
|
249
|
+
new Uint8Array(config.initialBufferLength),
|
|
250
|
+
config
|
|
251
|
+
)
|
|
252
|
+
writePersistedActor(bc, x)
|
|
253
|
+
return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
export function decodePersistedActor(bytes: Uint8Array): PersistedActor {
|
|
257
|
+
const bc = new bare.ByteCursor(bytes, config)
|
|
258
|
+
const result = readPersistedActor(bc)
|
|
259
|
+
if (bc.offset < bc.view.byteLength) {
|
|
260
|
+
throw new bare.BareError(bc.offset, "remaining bytes")
|
|
261
|
+
}
|
|
262
|
+
return result
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
function assert(condition: boolean, message?: string): asserts condition {
|
|
267
|
+
if (!condition) throw new Error(message ?? "Assertion failed")
|
|
268
|
+
}
|