rivetkit 2.3.11 → 2.3.12-rc.2
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/dist/browser/client.d.ts +4 -0
- package/dist/browser/client.js +65 -32
- package/dist/browser/client.js.map +1 -1
- package/dist/browser/inspector/client.js +1 -1
- package/dist/browser/inspector/client.js.map +1 -1
- package/dist/tsup/actor/errors.cjs +2 -2
- package/dist/tsup/actor/errors.d.cts +1 -1
- package/dist/tsup/actor/errors.d.ts +1 -1
- package/dist/tsup/actor/errors.js +1 -1
- package/dist/tsup/agent-os/index.cjs +2 -2
- package/dist/tsup/agent-os/index.cjs.map +1 -1
- package/dist/tsup/agent-os/index.d.cts +4 -0
- package/dist/tsup/agent-os/index.d.ts +4 -0
- package/dist/tsup/agent-os/index.js +2 -2
- package/dist/tsup/agent-os/index.js.map +1 -1
- package/dist/tsup/{chunk-MO2SSUOR.js → chunk-3JBE7REK.js} +4 -4
- package/dist/tsup/{chunk-5UYWLCRO.js → chunk-6XR7IKBZ.js} +2 -2
- package/dist/tsup/{chunk-GU7ML3KE.cjs → chunk-APQQFCPR.cjs} +15 -10
- package/dist/tsup/chunk-APQQFCPR.cjs.map +1 -0
- package/dist/tsup/{chunk-3ZR542SK.js → chunk-BK2JOGQQ.js} +62 -36
- package/dist/tsup/chunk-BK2JOGQQ.js.map +1 -0
- package/dist/tsup/{chunk-VBJQIBXI.cjs → chunk-CZKQ2UR5.cjs} +4 -4
- package/dist/tsup/{chunk-VBJQIBXI.cjs.map → chunk-CZKQ2UR5.cjs.map} +1 -1
- package/dist/tsup/{chunk-RXXDNJXB.cjs → chunk-DXN6RPPQ.cjs} +214 -188
- package/dist/tsup/chunk-DXN6RPPQ.cjs.map +1 -0
- package/dist/tsup/{chunk-GLIPKKEC.cjs → chunk-GGGZ4TN7.cjs} +7 -7
- package/dist/tsup/{chunk-GLIPKKEC.cjs.map → chunk-GGGZ4TN7.cjs.map} +1 -1
- package/dist/tsup/{chunk-LWQFXGKS.cjs → chunk-HRJHLVHZ.cjs} +3 -3
- package/dist/tsup/{chunk-LWQFXGKS.cjs.map → chunk-HRJHLVHZ.cjs.map} +1 -1
- package/dist/tsup/{chunk-PUZY2XCD.cjs → chunk-IU6TTH6L.cjs} +10 -10
- package/dist/tsup/{chunk-PUZY2XCD.cjs.map → chunk-IU6TTH6L.cjs.map} +1 -1
- package/dist/tsup/{chunk-ZZ3WBRPD.js → chunk-IXBD7BXC.js} +15 -4
- package/dist/tsup/chunk-IXBD7BXC.js.map +1 -0
- package/dist/tsup/{chunk-JQ2AZ5FN.js → chunk-JZGMOEEI.js} +3 -3
- package/dist/tsup/{chunk-QFJ24MBU.js → chunk-KPZQI3TG.js} +2 -2
- package/dist/tsup/{chunk-6WYATRS4.js → chunk-KRQI5GXM.js} +2 -2
- package/dist/tsup/{chunk-4FC7TVS6.cjs → chunk-SPJORZMM.cjs} +15 -4
- package/dist/tsup/chunk-SPJORZMM.cjs.map +1 -0
- package/dist/tsup/{chunk-B3W74FBB.cjs → chunk-WTD54OHL.cjs} +3 -3
- package/dist/tsup/{chunk-B3W74FBB.cjs.map → chunk-WTD54OHL.cjs.map} +1 -1
- package/dist/tsup/{chunk-GN2EUMEW.cjs → chunk-XBPOYV4E.cjs} +3 -3
- package/dist/tsup/{chunk-GN2EUMEW.cjs.map → chunk-XBPOYV4E.cjs.map} +1 -1
- package/dist/tsup/{chunk-OUENKQHB.js → chunk-YW75TS76.js} +8 -3
- package/dist/tsup/chunk-YW75TS76.js.map +1 -0
- package/dist/tsup/{chunk-FWROC5LA.js → chunk-ZEIH7S4M.js} +2 -2
- package/dist/tsup/client/mod.cjs +6 -6
- package/dist/tsup/client/mod.d.cts +5 -5
- package/dist/tsup/client/mod.d.ts +5 -5
- package/dist/tsup/client/mod.js +5 -5
- package/dist/tsup/common/log.cjs +3 -3
- package/dist/tsup/common/log.js +2 -2
- package/dist/tsup/common/websocket.cjs +4 -4
- package/dist/tsup/common/websocket.js +3 -3
- package/dist/tsup/{config-DTGoWdkG.d.cts → config-BXSV17G7.d.cts} +2 -2
- package/dist/tsup/{config-C4OSv0QP.d.ts → config-Bi1r6gI7.d.ts} +2 -2
- package/dist/tsup/{context-C6cvDNyk.d.cts → context-4fJemY0D.d.cts} +1 -1
- package/dist/tsup/{context-CMygeBxS.d.ts → context-D4sNYboo.d.ts} +1 -1
- package/dist/tsup/db/drizzle.cjs +3 -3
- package/dist/tsup/db/drizzle.js +2 -2
- package/dist/tsup/db/mod.cjs +4 -4
- package/dist/tsup/db/mod.js +3 -3
- package/dist/tsup/dynamic/mod.d.cts +3 -3
- package/dist/tsup/dynamic/mod.d.ts +3 -3
- package/dist/tsup/inspector/mod.cjs +6 -6
- package/dist/tsup/inspector/mod.js +5 -5
- package/dist/tsup/inspector/workflow.cjs +5 -5
- package/dist/tsup/inspector/workflow.js +4 -4
- package/dist/tsup/inspector-tab/mod.d.cts +4 -4
- package/dist/tsup/inspector-tab/mod.d.ts +4 -4
- package/dist/tsup/mod.cjs +112 -111
- package/dist/tsup/mod.cjs.map +1 -1
- package/dist/tsup/mod.d.cts +5 -5
- package/dist/tsup/mod.d.ts +5 -5
- package/dist/tsup/mod.js +10 -9
- package/dist/tsup/mod.js.map +1 -1
- package/dist/tsup/test/mod.cjs +7 -7
- package/dist/tsup/test/mod.d.cts +3 -3
- package/dist/tsup/test/mod.d.ts +3 -3
- package/dist/tsup/test/mod.js +5 -5
- package/dist/tsup/{utils-DQDCphrl.d.cts → utils-Bbz-3411.d.cts} +1 -1
- package/dist/tsup/{utils-CV0akuDD.d.ts → utils-BqdWVlzm.d.ts} +1 -1
- package/dist/tsup/{utils-CqDnC_PS.d.cts → utils-vvJQyygr.d.cts} +5 -0
- package/dist/tsup/{utils-CqDnC_PS.d.ts → utils-vvJQyygr.d.ts} +5 -0
- package/dist/tsup/utils.cjs +3 -3
- package/dist/tsup/utils.d.cts +2 -2
- package/dist/tsup/utils.d.ts +2 -2
- package/dist/tsup/utils.js +2 -2
- package/dist/tsup/workflow/mod.cjs +11 -11
- package/dist/tsup/workflow/mod.cjs.map +1 -1
- package/dist/tsup/workflow/mod.d.cts +5 -5
- package/dist/tsup/workflow/mod.d.ts +5 -5
- package/dist/tsup/workflow/mod.js +5 -5
- package/package.json +8 -8
- package/src/actor/errors.ts +29 -2
- package/src/client/actor-conn.ts +5 -4
- package/src/client/actor-handle.ts +32 -9
- package/src/client/actor-query.ts +8 -1
- package/src/client/errors.ts +2 -1
- package/src/client/raw-utils.ts +3 -5
- package/src/client/utils.ts +2 -0
- package/src/common/utils.ts +6 -0
- package/src/registry/native.ts +1 -0
- package/dist/tsup/chunk-3ZR542SK.js.map +0 -1
- package/dist/tsup/chunk-4FC7TVS6.cjs.map +0 -1
- package/dist/tsup/chunk-GU7ML3KE.cjs.map +0 -1
- package/dist/tsup/chunk-OUENKQHB.js.map +0 -1
- package/dist/tsup/chunk-RXXDNJXB.cjs.map +0 -1
- package/dist/tsup/chunk-ZZ3WBRPD.js.map +0 -1
- /package/dist/tsup/{chunk-MO2SSUOR.js.map → chunk-3JBE7REK.js.map} +0 -0
- /package/dist/tsup/{chunk-5UYWLCRO.js.map → chunk-6XR7IKBZ.js.map} +0 -0
- /package/dist/tsup/{chunk-JQ2AZ5FN.js.map → chunk-JZGMOEEI.js.map} +0 -0
- /package/dist/tsup/{chunk-QFJ24MBU.js.map → chunk-KPZQI3TG.js.map} +0 -0
- /package/dist/tsup/{chunk-6WYATRS4.js.map → chunk-KRQI5GXM.js.map} +0 -0
- /package/dist/tsup/{chunk-FWROC5LA.js.map → chunk-ZEIH7S4M.js.map} +0 -0
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _chunkDXN6RPPQcjs = require('./chunk-DXN6RPPQ.cjs');
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _chunkAPQQFCPRcjs = require('./chunk-APQQFCPR.cjs');
|
|
9
9
|
|
|
10
10
|
// src/devtools-loader/log.ts
|
|
11
11
|
function logger() {
|
|
12
|
-
return
|
|
12
|
+
return _chunkAPQQFCPRcjs.getLogger.call(void 0, "devtools");
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
// src/devtools-loader/index.ts
|
|
@@ -35,15 +35,15 @@ function injectDevtools(config) {
|
|
|
35
35
|
// src/client/mod.ts
|
|
36
36
|
function createClient(endpointOrConfig) {
|
|
37
37
|
const configInput = endpointOrConfig === void 0 ? {} : typeof endpointOrConfig === "string" ? { endpoint: endpointOrConfig } : endpointOrConfig;
|
|
38
|
-
const config =
|
|
39
|
-
const driver = new (0,
|
|
38
|
+
const config = _chunkDXN6RPPQcjs.ClientConfigSchema.parse(configInput);
|
|
39
|
+
const driver = new (0, _chunkDXN6RPPQcjs.RemoteEngineControlClient)(config);
|
|
40
40
|
if (config.devtools) {
|
|
41
41
|
injectDevtools(config);
|
|
42
42
|
}
|
|
43
|
-
return
|
|
43
|
+
return _chunkDXN6RPPQcjs.createClientWithDriver.call(void 0, driver, config);
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
|
|
47
47
|
|
|
48
48
|
exports.createClient = createClient;
|
|
49
|
-
//# sourceMappingURL=chunk-
|
|
49
|
+
//# sourceMappingURL=chunk-GGGZ4TN7.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-GGGZ4TN7.cjs","../../src/devtools-loader/log.ts","../../src/devtools-loader/index.ts","../../src/client/mod.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACPO,SAAS,MAAA,CAAA,EAAS;AACxB,EAAA,OAAO,yCAAA,UAAoB,CAAA;AAC5B;ADSA;AACA;AENA,IAAM,SAAA,EAAW,0BAAA;AAEV,SAAS,cAAA,CAAe,MAAA,EAA2B;AAV1D,EAAA,IAAA,EAAA;AAWC,EAAA,GAAA,CAAI,CAAC,MAAA,EAAQ;AACZ,IAAA,MAAA,CAAO,CAAA,CAAE,IAAA,CAAK,oDAAoD,CAAA;AAClE,IAAA,MAAA;AAAA,EACD;AAEA,EAAA,GAAA,CAAI,CAAC,QAAA,CAAS,cAAA,CAAe,QAAQ,CAAA,EAAG;AACvC,IAAA,MAAM,IAAA,EAEL,CAAA,EAAA;AACK,IAAA;AACM,IAAA;AACC,IAAA;AACN,IAAA;AACE,IAAA;AACV,EAAA;AAEO,EAAA;AACA,EAAA;AACR;AFIiB;AACA;AGqBD;AAIT,EAAA;AAMS,EAAA;AAGA,EAAA;AAEJ,EAAA;AACV,IAAA;AACD,EAAA;AAEO,EAAA;AACR;AH/BiB;AACA;AACA;AACA","file":"/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-GGGZ4TN7.cjs","sourcesContent":[null,"import { getLogger } from \"@/common/log\";\n\nexport function logger() {\n\treturn getLogger(\"devtools\");\n}\n","import type { ClientConfigInput } from \"@/client/client\";\nimport { logger } from \"./log\";\n\ndeclare global {\n\t// Injected via tsup config\n\tvar CUSTOM_RIVETKIT_DEVTOOLS_URL: string | undefined;\n}\n\nconst scriptId = \"rivetkit-devtools-script\";\n\nexport function injectDevtools(config: ClientConfigInput) {\n\tif (!window) {\n\t\tlogger().warn(\"devtools not available outside browser environment\");\n\t\treturn;\n\t}\n\n\tif (!document.getElementById(scriptId)) {\n\t\tconst src =\n\t\t\tglobalThis.CUSTOM_RIVETKIT_DEVTOOLS_URL ||\n\t\t\t`${config.endpoint?.replace(/\\/$/, \"\")}/devtools/mod.js`;\n\t\tconst script = document.createElement(\"script\");\n\t\tscript.id = scriptId;\n\t\tscript.src = src;\n\t\tscript.async = true;\n\t\tdocument.head.appendChild(script);\n\t}\n\n\twindow.__rivetkit = window.__rivetkit || [];\n\twindow.__rivetkit.push(config);\n}\n","import { injectDevtools } from \"@/devtools-loader\";\nimport { RemoteEngineControlClient } from \"@/engine-client/mod\";\nimport type { Registry } from \"@/registry\";\nimport {\n\ttype Client,\n\ttype ClientConfigInput,\n\tcreateClientWithDriver,\n} from \"./client\";\nimport { ClientConfigSchema } from \"./config\";\n\nexport type { ActorDefinition, AnyActorDefinition } from \"@/actor/definition\";\nexport {\n\tActorClientError,\n\tActorConnDisposed,\n\tActorError,\n\tMalformedResponseMessage,\n\tManagerError,\n\tRivetError,\n\tUserError,\n} from \"@/client/errors\";\nexport type { CreateRequest } from \"@/client/query\";\nexport type { Encoding } from \"@/common/encoding\";\nexport type {\n\tActorActionFunction,\n\tActorActionOptions,\n\tActorConnectOptions,\n\tActorGatewayOptions,\n} from \"./actor-common\";\nexport type {\n\tActorConn,\n\tActorConnStatus,\n\tConnectionStateCallback,\n\tEventUnsubscribe,\n\tStatusChangeCallback,\n} from \"./actor-conn\";\nexport { ActorConnRaw } from \"./actor-conn\";\nexport type { ActorHandle } from \"./actor-handle\";\nexport { ActorHandleRaw } from \"./actor-handle\";\nexport type {\n\tActorAccessor,\n\tClient,\n\tClientConfigInput,\n\tClientRaw,\n\tCreateOptions,\n\tExtractActorsFromRegistry,\n\tExtractRegistryFromClient,\n\tGetOptions,\n\tGetWithIdOptions,\n\tQueryOptions,\n\tRegion,\n} from \"./client\";\n\n/**\n * Creates a client with the actor accessor proxy.\n */\nexport function createClient<A extends Registry<any>>(\n\tendpointOrConfig?: string | ClientConfigInput,\n): Client<A> {\n\t// Parse config\n\tconst configInput =\n\t\tendpointOrConfig === undefined\n\t\t\t? {}\n\t\t\t: typeof endpointOrConfig === \"string\"\n\t\t\t\t? { endpoint: endpointOrConfig }\n\t\t\t\t: endpointOrConfig;\n\tconst config = ClientConfigSchema.parse(configInput);\n\n\t// Create client\n\tconst driver = new RemoteEngineControlClient(config);\n\n\tif (config.devtools) {\n\t\tinjectDevtools(config);\n\t}\n\n\treturn createClientWithDriver<A>(driver, config);\n}\n"]}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
var _chunkKVFIONKQcjs = require('./chunk-KVFIONKQ.cjs');
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
var
|
|
11
|
+
var _chunkAPQQFCPRcjs = require('./chunk-APQQFCPR.cjs');
|
|
12
12
|
|
|
13
13
|
// src/common/database/mod.ts
|
|
14
14
|
var nativeStateTransactionOpeners = /* @__PURE__ */ new WeakMap();
|
|
@@ -59,7 +59,7 @@ function db({
|
|
|
59
59
|
ensureOpen();
|
|
60
60
|
if (!transactionScoped && warnOnManualTransactions && !manualTransactionWarned && !hasMultipleStatements(query) && _chunkKVFIONKQcjs.isManualTransactionControl.call(void 0, query)) {
|
|
61
61
|
manualTransactionWarned = true;
|
|
62
|
-
|
|
62
|
+
_chunkAPQQFCPRcjs.getLogger.call(void 0, "database").warn(
|
|
63
63
|
{ actorId: ctx.actorId },
|
|
64
64
|
"Manual cross-call SQLite transactions can interleave with other actor work. Use db.transaction() for coordinated transactions. Set warnOnManualTransactions: false in your db(...) configuration to disable this warning."
|
|
65
65
|
);
|
|
@@ -240,4 +240,4 @@ async function withMigrationSavepoint(client, callback) {
|
|
|
240
240
|
|
|
241
241
|
|
|
242
242
|
exports.registerNativeStateTransactionOpener = registerNativeStateTransactionOpener; exports.bindNativeStateTransactionContext = bindNativeStateTransactionContext; exports.db = db;
|
|
243
|
-
//# sourceMappingURL=chunk-
|
|
243
|
+
//# sourceMappingURL=chunk-HRJHLVHZ.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-LWQFXGKS.cjs","../../src/common/database/mod.ts"],"names":["db","client"],"mappings":"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","file":"/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-LWQFXGKS.cjs","sourcesContent":[null,"import { getLogger } from \"@/common/log\";\nimport type {\n\tDatabaseProvider,\n\tNativeDatabaseProvider,\n\tRawAccess,\n\tSqliteDatabase,\n\tSqliteProfilingOptions,\n\tSqliteTransactionDatabase,\n\tSqliteTransactionOptions,\n} from \"./config\";\nimport {\n\tisManualTransactionControl,\n\tisSqliteBindingObject,\n\tMIGRATION_TRANSACTION_TIMEOUT_MS,\n\ttoSqliteBindings,\n\tvalidateTransactionName,\n\tvalidateTransactionTimeout,\n} from \"./shared\";\n\nexport type { RawAccess } from \"./config\";\n\nexport interface DatabaseFactoryConfig {\n\tonMigrate?: (db: RawAccess) => Promise<void> | void;\n\twarnOnManualTransactions?: boolean;\n\t/**\n\t * SQLite profiling configuration.\n\t *\n\t * @experimental This entire configuration surface is experimental and\n\t * subject to change without notice.\n\t */\n\tprofiling?: SqliteProfilingOptions;\n}\nconst nativeStateTransactionOpeners = new WeakMap<\n\tNativeDatabaseProvider,\n\t(\n\t\ttimeoutMs?: number,\n\t\tcontext?: unknown,\n\t) => Promise<SqliteTransactionDatabase>\n>();\ntype NativeStateTransactionContext = {\n\tenter(): Promise<unknown>;\n\texit(scope: unknown): void;\n};\nconst nativeStateTransactionClientBinders = new WeakMap<\n\tobject,\n\t(context: NativeStateTransactionContext) => object\n>();\n\n/** @internal */\nexport function registerNativeStateTransactionOpener<\n\tT extends NativeDatabaseProvider,\n>(\n\tprovider: T,\n\topener: (\n\t\ttimeoutMs?: number,\n\t\tcontext?: unknown,\n\t) => Promise<SqliteTransactionDatabase>,\n): T {\n\tnativeStateTransactionOpeners.set(provider, opener);\n\treturn provider;\n}\n\n/** @internal */\nexport function bindNativeStateTransactionContext<T>(\n\tclient: T,\n\tcontext: NativeStateTransactionContext,\n): T {\n\tif (\n\t\t(typeof client !== \"object\" || client === null) &&\n\t\ttypeof client !== \"function\"\n\t) {\n\t\treturn client;\n\t}\n\tconst bind = nativeStateTransactionClientBinders.get(client as object);\n\treturn (bind?.(context) ?? client) as T;\n}\n\nfunction hasMultipleStatements(query: string): boolean {\n\tconst trimmed = query.trim().replace(/;+$/, \"\").trimEnd();\n\treturn trimmed.includes(\";\");\n}\n\nexport function db({\n\tonMigrate,\n\twarnOnManualTransactions = true,\n\tprofiling,\n}: DatabaseFactoryConfig = {}): DatabaseProvider<RawAccess> {\n\tconst provider: DatabaseProvider<RawAccess> = {\n\t\tsqliteProfiling: profiling,\n\t\tcreateClient: async (ctx) => {\n\t\t\tconst nativeDatabaseProvider = ctx.nativeDatabaseProvider;\n\t\t\tif (!nativeDatabaseProvider) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t\"native SQLite is required, but the current runtime did not provide a native database provider\",\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst db = await nativeDatabaseProvider.open(ctx.actorId);\n\t\t\tlet closed = false;\n\t\t\tlet manualTransactionWarned = false;\n\t\t\tconst ensureOpen = () => {\n\t\t\t\tif (closed) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\"Database is closed. This usually means a background timer (setInterval, setTimeout) or a stray promise is still running after the actor stopped. Use c.abortSignal to clean up timers before the actor shuts down.\",\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst createClient = (\n\t\t\t\ttarget: SqliteDatabase | SqliteTransactionDatabase,\n\t\t\t\ttransactionScoped = false,\n\t\t\t\tstateTransactionContext?: NativeStateTransactionContext,\n\t\t\t): RawAccess => {\n\t\t\t\tconst client: RawAccess = {\n\t\t\t\t\texecute: async <\n\t\t\t\t\t\tTRow extends Record<string, unknown> = Record<\n\t\t\t\t\t\t\tstring,\n\t\t\t\t\t\t\tunknown\n\t\t\t\t\t\t>,\n\t\t\t\t\t>(\n\t\t\t\t\t\tquery: string,\n\t\t\t\t\t\t...args: unknown[]\n\t\t\t\t\t): Promise<TRow[]> => {\n\t\t\t\t\t\tensureOpen();\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t!transactionScoped &&\n\t\t\t\t\t\t\twarnOnManualTransactions &&\n\t\t\t\t\t\t\t!manualTransactionWarned &&\n\t\t\t\t\t\t\t!hasMultipleStatements(query) &&\n\t\t\t\t\t\t\tisManualTransactionControl(query)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tmanualTransactionWarned = true;\n\t\t\t\t\t\t\tgetLogger(\"database\").warn(\n\t\t\t\t\t\t\t\t{ actorId: ctx.actorId },\n\t\t\t\t\t\t\t\t\"Manual cross-call SQLite transactions can interleave with other actor work. Use db.transaction() for coordinated transactions. Set warnOnManualTransactions: false in your db(...) configuration to disable this warning.\",\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst kvReadsBefore = ctx.metrics?.totalKvReads ?? 0;\n\t\t\t\t\t\tconst kvWritesBefore = ctx.metrics?.totalKvWrites ?? 0;\n\t\t\t\t\t\tconst start = performance.now();\n\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tif (args.length > 0) {\n\t\t\t\t\t\t\t\tconst bindings =\n\t\t\t\t\t\t\t\t\targs.length === 1 &&\n\t\t\t\t\t\t\t\t\tisSqliteBindingObject(args[0])\n\t\t\t\t\t\t\t\t\t\t? toSqliteBindings(args[0])\n\t\t\t\t\t\t\t\t\t\t: toSqliteBindings(args);\n\t\t\t\t\t\t\t\tconst { rows, columns } = await target.execute(\n\t\t\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\t\t\tbindings,\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn rows.map((row) =>\n\t\t\t\t\t\t\t\t\trowToObject<TRow>(row, columns),\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (!hasMultipleStatements(query)) {\n\t\t\t\t\t\t\t\tconst { rows, columns } = await target.execute(\n\t\t\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn rows.map((row) =>\n\t\t\t\t\t\t\t\t\trowToObject<TRow>(row, columns),\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn await execMultiStatement<TRow>(\n\t\t\t\t\t\t\t\ttarget,\n\t\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\tconst durationMs = performance.now() - start;\n\t\t\t\t\t\t\tctx.metrics?.trackSql(query, durationMs);\n\t\t\t\t\t\t\tif (ctx.metrics) {\n\t\t\t\t\t\t\t\tconst kvReads =\n\t\t\t\t\t\t\t\t\tctx.metrics.totalKvReads - kvReadsBefore;\n\t\t\t\t\t\t\t\tconst kvWrites =\n\t\t\t\t\t\t\t\t\tctx.metrics.totalKvWrites - kvWritesBefore;\n\t\t\t\t\t\t\t\tctx.log?.debug({\n\t\t\t\t\t\t\t\t\tmsg: \"sql query\",\n\t\t\t\t\t\t\t\t\tquery: query.slice(0, 120),\n\t\t\t\t\t\t\t\t\tdurationMs,\n\t\t\t\t\t\t\t\t\tkvReads,\n\t\t\t\t\t\t\t\t\tkvWrites,\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\ttransaction: async <T>(\n\t\t\t\t\t\tcallback: (tx: RawAccess) => Promise<T> | T,\n\t\t\t\t\t\toptions?: SqliteTransactionOptions,\n\t\t\t\t\t): Promise<T> => {\n\t\t\t\t\t\tvalidateTransactionTimeout(options?.timeout);\n\t\t\t\t\t\tvalidateTransactionName(options?.name);\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\ttransactionScoped &&\n\t\t\t\t\t\t\toptions?.experimental?.includeState\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\t\t\"experimental.includeState is not supported for nested transactions\",\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst includeState =\n\t\t\t\t\t\t\toptions?.experimental?.includeState === true;\n\t\t\t\t\t\tconst stateScope =\n\t\t\t\t\t\t\tincludeState && stateTransactionContext\n\t\t\t\t\t\t\t\t? await stateTransactionContext.enter()\n\t\t\t\t\t\t\t\t: undefined;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tconst transaction = includeState\n\t\t\t\t\t\t\t\t? await (() => {\n\t\t\t\t\t\t\t\t\t\tconst beginStateTransaction =\n\t\t\t\t\t\t\t\t\t\t\tctx.nativeDatabaseProvider &&\n\t\t\t\t\t\t\t\t\t\t\tnativeStateTransactionOpeners.get(\n\t\t\t\t\t\t\t\t\t\t\t\tctx.nativeDatabaseProvider,\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\tif (!beginStateTransaction) {\n\t\t\t\t\t\t\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\t\t\t\t\t\t\"experimental.includeState is only supported by RivetKit's embedded database provider\",\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\treturn beginStateTransaction(\n\t\t\t\t\t\t\t\t\t\t\toptions?.timeout,\n\t\t\t\t\t\t\t\t\t\t\tstateScope,\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})()\n\t\t\t\t\t\t\t\t: await db.beginTransaction(\n\t\t\t\t\t\t\t\t\t\toptions?.timeout,\n\t\t\t\t\t\t\t\t\t\toptions?.name,\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tconst tx = createClient(transaction, true);\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\tconst result = await callback(tx);\n\t\t\t\t\t\t\t\tawait transaction.commit();\n\t\t\t\t\t\t\t\treturn result;\n\t\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\tawait transaction.rollback();\n\t\t\t\t\t\t\t\t} catch {\n\t\t\t\t\t\t\t\t\t// Preserve the callback or commit error after expiry cleanup.\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tthrow error;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\tif (stateScope !== undefined) {\n\t\t\t\t\t\t\t\tstateTransactionContext?.exit(stateScope);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\tclose: async () => {\n\t\t\t\t\t\tif (!closed) {\n\t\t\t\t\t\t\tclosed = true;\n\t\t\t\t\t\t\tawait db.close();\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\tnativeMetrics: () => db.nativeMetrics?.() ?? null,\n\t\t\t\t};\n\t\t\t\tif (!transactionScoped) {\n\t\t\t\t\tnativeStateTransactionClientBinders.set(client, (context) =>\n\t\t\t\t\t\tcreateClient(target, false, context),\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn client;\n\t\t\t};\n\t\t\tconst client = createClient(db);\n\t\t\treturn client;\n\t\t},\n\t\tonMigrate: async (client) => {\n\t\t\tif (onMigrate) {\n\t\t\t\tawait withMigrationSavepoint(client, (leased) =>\n\t\t\t\t\tonMigrate(leased),\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t};\n\treturn provider;\n}\n\nfunction rowToObject<TRow extends Record<string, unknown>>(\n\trow: unknown[],\n\tcolumns: string[],\n): TRow {\n\tconst rowObj: Record<string, unknown> = {};\n\tfor (let i = 0; i < columns.length; i++) {\n\t\trowObj[columns[i]] = row[i];\n\t}\n\treturn rowObj as TRow;\n}\n\nasync function execMultiStatement<TRow extends Record<string, unknown>>(\n\tdb: Pick<SqliteDatabase, \"exec\">,\n\tquery: string,\n): Promise<TRow[]> {\n\tconst results: Record<string, unknown>[] = [];\n\tlet columnNames: string[] | null = null;\n\tawait db.exec(query, (row: unknown[], columns: string[]) => {\n\t\tif (!columnNames) {\n\t\t\tcolumnNames = columns;\n\t\t}\n\t\tresults.push(rowToObject(row, columnNames));\n\t});\n\treturn results as TRow[];\n}\n\nasync function withMigrationSavepoint<T>(\n\tclient: RawAccess,\n\tcallback: (leased: RawAccess) => Promise<T> | T,\n): Promise<T> {\n\treturn await client.transaction(\n\t\tasync (transaction) => {\n\t\t\tawait transaction.execute(\"SAVEPOINT __rivet_on_migrate\");\n\t\t\ttry {\n\t\t\t\tconst result = await callback(transaction);\n\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\"RELEASE SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t);\n\t\t\t\treturn result;\n\t\t\t} catch (error) {\n\t\t\t\ttry {\n\t\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\t\"ROLLBACK TO SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t\t);\n\t\t\t\t} finally {\n\t\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\t\"RELEASE SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tname: \"rivetkit-migration\",\n\t\t\ttimeout: MIGRATION_TRANSACTION_TIMEOUT_MS,\n\t\t},\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-HRJHLVHZ.cjs","../../src/common/database/mod.ts"],"names":["db","client"],"mappings":"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","file":"/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-HRJHLVHZ.cjs","sourcesContent":[null,"import { getLogger } from \"@/common/log\";\nimport type {\n\tDatabaseProvider,\n\tNativeDatabaseProvider,\n\tRawAccess,\n\tSqliteDatabase,\n\tSqliteProfilingOptions,\n\tSqliteTransactionDatabase,\n\tSqliteTransactionOptions,\n} from \"./config\";\nimport {\n\tisManualTransactionControl,\n\tisSqliteBindingObject,\n\tMIGRATION_TRANSACTION_TIMEOUT_MS,\n\ttoSqliteBindings,\n\tvalidateTransactionName,\n\tvalidateTransactionTimeout,\n} from \"./shared\";\n\nexport type { RawAccess } from \"./config\";\n\nexport interface DatabaseFactoryConfig {\n\tonMigrate?: (db: RawAccess) => Promise<void> | void;\n\twarnOnManualTransactions?: boolean;\n\t/**\n\t * SQLite profiling configuration.\n\t *\n\t * @experimental This entire configuration surface is experimental and\n\t * subject to change without notice.\n\t */\n\tprofiling?: SqliteProfilingOptions;\n}\nconst nativeStateTransactionOpeners = new WeakMap<\n\tNativeDatabaseProvider,\n\t(\n\t\ttimeoutMs?: number,\n\t\tcontext?: unknown,\n\t) => Promise<SqliteTransactionDatabase>\n>();\ntype NativeStateTransactionContext = {\n\tenter(): Promise<unknown>;\n\texit(scope: unknown): void;\n};\nconst nativeStateTransactionClientBinders = new WeakMap<\n\tobject,\n\t(context: NativeStateTransactionContext) => object\n>();\n\n/** @internal */\nexport function registerNativeStateTransactionOpener<\n\tT extends NativeDatabaseProvider,\n>(\n\tprovider: T,\n\topener: (\n\t\ttimeoutMs?: number,\n\t\tcontext?: unknown,\n\t) => Promise<SqliteTransactionDatabase>,\n): T {\n\tnativeStateTransactionOpeners.set(provider, opener);\n\treturn provider;\n}\n\n/** @internal */\nexport function bindNativeStateTransactionContext<T>(\n\tclient: T,\n\tcontext: NativeStateTransactionContext,\n): T {\n\tif (\n\t\t(typeof client !== \"object\" || client === null) &&\n\t\ttypeof client !== \"function\"\n\t) {\n\t\treturn client;\n\t}\n\tconst bind = nativeStateTransactionClientBinders.get(client as object);\n\treturn (bind?.(context) ?? client) as T;\n}\n\nfunction hasMultipleStatements(query: string): boolean {\n\tconst trimmed = query.trim().replace(/;+$/, \"\").trimEnd();\n\treturn trimmed.includes(\";\");\n}\n\nexport function db({\n\tonMigrate,\n\twarnOnManualTransactions = true,\n\tprofiling,\n}: DatabaseFactoryConfig = {}): DatabaseProvider<RawAccess> {\n\tconst provider: DatabaseProvider<RawAccess> = {\n\t\tsqliteProfiling: profiling,\n\t\tcreateClient: async (ctx) => {\n\t\t\tconst nativeDatabaseProvider = ctx.nativeDatabaseProvider;\n\t\t\tif (!nativeDatabaseProvider) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t\"native SQLite is required, but the current runtime did not provide a native database provider\",\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst db = await nativeDatabaseProvider.open(ctx.actorId);\n\t\t\tlet closed = false;\n\t\t\tlet manualTransactionWarned = false;\n\t\t\tconst ensureOpen = () => {\n\t\t\t\tif (closed) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\"Database is closed. This usually means a background timer (setInterval, setTimeout) or a stray promise is still running after the actor stopped. Use c.abortSignal to clean up timers before the actor shuts down.\",\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tconst createClient = (\n\t\t\t\ttarget: SqliteDatabase | SqliteTransactionDatabase,\n\t\t\t\ttransactionScoped = false,\n\t\t\t\tstateTransactionContext?: NativeStateTransactionContext,\n\t\t\t): RawAccess => {\n\t\t\t\tconst client: RawAccess = {\n\t\t\t\t\texecute: async <\n\t\t\t\t\t\tTRow extends Record<string, unknown> = Record<\n\t\t\t\t\t\t\tstring,\n\t\t\t\t\t\t\tunknown\n\t\t\t\t\t\t>,\n\t\t\t\t\t>(\n\t\t\t\t\t\tquery: string,\n\t\t\t\t\t\t...args: unknown[]\n\t\t\t\t\t): Promise<TRow[]> => {\n\t\t\t\t\t\tensureOpen();\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t!transactionScoped &&\n\t\t\t\t\t\t\twarnOnManualTransactions &&\n\t\t\t\t\t\t\t!manualTransactionWarned &&\n\t\t\t\t\t\t\t!hasMultipleStatements(query) &&\n\t\t\t\t\t\t\tisManualTransactionControl(query)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tmanualTransactionWarned = true;\n\t\t\t\t\t\t\tgetLogger(\"database\").warn(\n\t\t\t\t\t\t\t\t{ actorId: ctx.actorId },\n\t\t\t\t\t\t\t\t\"Manual cross-call SQLite transactions can interleave with other actor work. Use db.transaction() for coordinated transactions. Set warnOnManualTransactions: false in your db(...) configuration to disable this warning.\",\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst kvReadsBefore = ctx.metrics?.totalKvReads ?? 0;\n\t\t\t\t\t\tconst kvWritesBefore = ctx.metrics?.totalKvWrites ?? 0;\n\t\t\t\t\t\tconst start = performance.now();\n\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tif (args.length > 0) {\n\t\t\t\t\t\t\t\tconst bindings =\n\t\t\t\t\t\t\t\t\targs.length === 1 &&\n\t\t\t\t\t\t\t\t\tisSqliteBindingObject(args[0])\n\t\t\t\t\t\t\t\t\t\t? toSqliteBindings(args[0])\n\t\t\t\t\t\t\t\t\t\t: toSqliteBindings(args);\n\t\t\t\t\t\t\t\tconst { rows, columns } = await target.execute(\n\t\t\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\t\t\tbindings,\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn rows.map((row) =>\n\t\t\t\t\t\t\t\t\trowToObject<TRow>(row, columns),\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (!hasMultipleStatements(query)) {\n\t\t\t\t\t\t\t\tconst { rows, columns } = await target.execute(\n\t\t\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\treturn rows.map((row) =>\n\t\t\t\t\t\t\t\t\trowToObject<TRow>(row, columns),\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn await execMultiStatement<TRow>(\n\t\t\t\t\t\t\t\ttarget,\n\t\t\t\t\t\t\t\tquery,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\tconst durationMs = performance.now() - start;\n\t\t\t\t\t\t\tctx.metrics?.trackSql(query, durationMs);\n\t\t\t\t\t\t\tif (ctx.metrics) {\n\t\t\t\t\t\t\t\tconst kvReads =\n\t\t\t\t\t\t\t\t\tctx.metrics.totalKvReads - kvReadsBefore;\n\t\t\t\t\t\t\t\tconst kvWrites =\n\t\t\t\t\t\t\t\t\tctx.metrics.totalKvWrites - kvWritesBefore;\n\t\t\t\t\t\t\t\tctx.log?.debug({\n\t\t\t\t\t\t\t\t\tmsg: \"sql query\",\n\t\t\t\t\t\t\t\t\tquery: query.slice(0, 120),\n\t\t\t\t\t\t\t\t\tdurationMs,\n\t\t\t\t\t\t\t\t\tkvReads,\n\t\t\t\t\t\t\t\t\tkvWrites,\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\ttransaction: async <T>(\n\t\t\t\t\t\tcallback: (tx: RawAccess) => Promise<T> | T,\n\t\t\t\t\t\toptions?: SqliteTransactionOptions,\n\t\t\t\t\t): Promise<T> => {\n\t\t\t\t\t\tvalidateTransactionTimeout(options?.timeout);\n\t\t\t\t\t\tvalidateTransactionName(options?.name);\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\ttransactionScoped &&\n\t\t\t\t\t\t\toptions?.experimental?.includeState\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\t\t\"experimental.includeState is not supported for nested transactions\",\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst includeState =\n\t\t\t\t\t\t\toptions?.experimental?.includeState === true;\n\t\t\t\t\t\tconst stateScope =\n\t\t\t\t\t\t\tincludeState && stateTransactionContext\n\t\t\t\t\t\t\t\t? await stateTransactionContext.enter()\n\t\t\t\t\t\t\t\t: undefined;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tconst transaction = includeState\n\t\t\t\t\t\t\t\t? await (() => {\n\t\t\t\t\t\t\t\t\t\tconst beginStateTransaction =\n\t\t\t\t\t\t\t\t\t\t\tctx.nativeDatabaseProvider &&\n\t\t\t\t\t\t\t\t\t\t\tnativeStateTransactionOpeners.get(\n\t\t\t\t\t\t\t\t\t\t\t\tctx.nativeDatabaseProvider,\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\tif (!beginStateTransaction) {\n\t\t\t\t\t\t\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t\t\t\t\t\t\t\"experimental.includeState is only supported by RivetKit's embedded database provider\",\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\treturn beginStateTransaction(\n\t\t\t\t\t\t\t\t\t\t\toptions?.timeout,\n\t\t\t\t\t\t\t\t\t\t\tstateScope,\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})()\n\t\t\t\t\t\t\t\t: await db.beginTransaction(\n\t\t\t\t\t\t\t\t\t\toptions?.timeout,\n\t\t\t\t\t\t\t\t\t\toptions?.name,\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tconst tx = createClient(transaction, true);\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\tconst result = await callback(tx);\n\t\t\t\t\t\t\t\tawait transaction.commit();\n\t\t\t\t\t\t\t\treturn result;\n\t\t\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\tawait transaction.rollback();\n\t\t\t\t\t\t\t\t} catch {\n\t\t\t\t\t\t\t\t\t// Preserve the callback or commit error after expiry cleanup.\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tthrow error;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\tif (stateScope !== undefined) {\n\t\t\t\t\t\t\t\tstateTransactionContext?.exit(stateScope);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\tclose: async () => {\n\t\t\t\t\t\tif (!closed) {\n\t\t\t\t\t\t\tclosed = true;\n\t\t\t\t\t\t\tawait db.close();\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\tnativeMetrics: () => db.nativeMetrics?.() ?? null,\n\t\t\t\t};\n\t\t\t\tif (!transactionScoped) {\n\t\t\t\t\tnativeStateTransactionClientBinders.set(client, (context) =>\n\t\t\t\t\t\tcreateClient(target, false, context),\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn client;\n\t\t\t};\n\t\t\tconst client = createClient(db);\n\t\t\treturn client;\n\t\t},\n\t\tonMigrate: async (client) => {\n\t\t\tif (onMigrate) {\n\t\t\t\tawait withMigrationSavepoint(client, (leased) =>\n\t\t\t\t\tonMigrate(leased),\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t};\n\treturn provider;\n}\n\nfunction rowToObject<TRow extends Record<string, unknown>>(\n\trow: unknown[],\n\tcolumns: string[],\n): TRow {\n\tconst rowObj: Record<string, unknown> = {};\n\tfor (let i = 0; i < columns.length; i++) {\n\t\trowObj[columns[i]] = row[i];\n\t}\n\treturn rowObj as TRow;\n}\n\nasync function execMultiStatement<TRow extends Record<string, unknown>>(\n\tdb: Pick<SqliteDatabase, \"exec\">,\n\tquery: string,\n): Promise<TRow[]> {\n\tconst results: Record<string, unknown>[] = [];\n\tlet columnNames: string[] | null = null;\n\tawait db.exec(query, (row: unknown[], columns: string[]) => {\n\t\tif (!columnNames) {\n\t\t\tcolumnNames = columns;\n\t\t}\n\t\tresults.push(rowToObject(row, columnNames));\n\t});\n\treturn results as TRow[];\n}\n\nasync function withMigrationSavepoint<T>(\n\tclient: RawAccess,\n\tcallback: (leased: RawAccess) => Promise<T> | T,\n): Promise<T> {\n\treturn await client.transaction(\n\t\tasync (transaction) => {\n\t\t\tawait transaction.execute(\"SAVEPOINT __rivet_on_migrate\");\n\t\t\ttry {\n\t\t\t\tconst result = await callback(transaction);\n\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\"RELEASE SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t);\n\t\t\t\treturn result;\n\t\t\t} catch (error) {\n\t\t\t\ttry {\n\t\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\t\"ROLLBACK TO SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t\t);\n\t\t\t\t} finally {\n\t\t\t\t\tawait transaction.execute(\n\t\t\t\t\t\t\"RELEASE SAVEPOINT __rivet_on_migrate\",\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\tname: \"rivetkit-migration\",\n\t\t\ttimeout: MIGRATION_TRANSACTION_TIMEOUT_MS,\n\t\t},\n\t);\n}\n"]}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkWTD54OHLcjs = require('./chunk-WTD54OHL.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _chunkCZKQ2UR5cjs = require('./chunk-CZKQ2UR5.cjs');
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
var
|
|
9
|
+
var _chunkAPQQFCPRcjs = require('./chunk-APQQFCPR.cjs');
|
|
10
10
|
|
|
11
11
|
// src/workflow/inspector.ts
|
|
12
12
|
function createHistoryEmitter() {
|
|
@@ -38,7 +38,7 @@ function createWorkflowInspectorAdapter() {
|
|
|
38
38
|
};
|
|
39
39
|
const update = (snapshot) => {
|
|
40
40
|
const transportHistory = toWorkflowHistory(snapshot);
|
|
41
|
-
const next =
|
|
41
|
+
const next = _chunkCZKQ2UR5cjs.encodeWorkflowHistoryTransport.call(void 0, transportHistory);
|
|
42
42
|
history = next;
|
|
43
43
|
emitter.emit(next);
|
|
44
44
|
};
|
|
@@ -54,7 +54,7 @@ function createWorkflowInspectorAdapter() {
|
|
|
54
54
|
};
|
|
55
55
|
}
|
|
56
56
|
function encodeCbor(value) {
|
|
57
|
-
return
|
|
57
|
+
return _chunkWTD54OHLcjs.encodeWorkflowInspectorValue.call(void 0, value);
|
|
58
58
|
}
|
|
59
59
|
function encodeOptionalCbor(value) {
|
|
60
60
|
if (value === void 0) {
|
|
@@ -151,7 +151,7 @@ function toWorkflowEntryKind(kind) {
|
|
|
151
151
|
}
|
|
152
152
|
};
|
|
153
153
|
default:
|
|
154
|
-
|
|
154
|
+
_chunkAPQQFCPRcjs.assertUnreachable.call(void 0, kind);
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
157
|
function toWorkflowEntry(entry) {
|
|
@@ -174,7 +174,7 @@ function toWorkflowEntryStatus(status) {
|
|
|
174
174
|
case "exhausted":
|
|
175
175
|
return "EXHAUSTED" /* EXHAUSTED */;
|
|
176
176
|
default:
|
|
177
|
-
|
|
177
|
+
_chunkAPQQFCPRcjs.assertUnreachable.call(void 0, status);
|
|
178
178
|
}
|
|
179
179
|
}
|
|
180
180
|
function toWorkflowSleepState(state) {
|
|
@@ -186,7 +186,7 @@ function toWorkflowSleepState(state) {
|
|
|
186
186
|
case "interrupted":
|
|
187
187
|
return "INTERRUPTED" /* INTERRUPTED */;
|
|
188
188
|
default:
|
|
189
|
-
|
|
189
|
+
_chunkAPQQFCPRcjs.assertUnreachable.call(void 0, state);
|
|
190
190
|
}
|
|
191
191
|
}
|
|
192
192
|
function toWorkflowBranchStatusType(status) {
|
|
@@ -202,7 +202,7 @@ function toWorkflowBranchStatusType(status) {
|
|
|
202
202
|
case "cancelled":
|
|
203
203
|
return "CANCELLED" /* CANCELLED */;
|
|
204
204
|
default:
|
|
205
|
-
|
|
205
|
+
_chunkAPQQFCPRcjs.assertUnreachable.call(void 0, status);
|
|
206
206
|
}
|
|
207
207
|
}
|
|
208
208
|
function toWorkflowBranchStatus(status) {
|
|
@@ -249,4 +249,4 @@ function toWorkflowHistory(snapshot) {
|
|
|
249
249
|
|
|
250
250
|
|
|
251
251
|
exports.createWorkflowInspectorAdapter = createWorkflowInspectorAdapter;
|
|
252
|
-
//# sourceMappingURL=chunk-
|
|
252
|
+
//# sourceMappingURL=chunk-IU6TTH6L.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-PUZY2XCD.cjs","../../src/workflow/inspector.ts"],"names":[],"mappings":"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","file":"/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-PUZY2XCD.cjs","sourcesContent":[null,"import type {\n\tBranchStatus,\n\tBranchStatusType,\n\tEntryKind,\n\tEntryStatus,\n\tLocation,\n\tSleepState,\n\tWorkflowEntryMetadataSnapshot,\n\tWorkflowHistoryEntry,\n\tWorkflowHistorySnapshot,\n\tWorkflowState,\n} from \"@rivetkit/workflow-engine\";\nimport * as transport from \"@/inspector/workflow\";\nimport {\n\tencodeWorkflowHistoryTransport,\n\tencodeWorkflowInspectorValue,\n\ttype WorkflowInspectorAdapter as PublicWorkflowInspectorAdapter,\n\ttype WorkflowHistoryBytes,\n} from \"@/inspector/workflow\";\nimport { assertUnreachable } from \"@/utils\";\n\ntype HistoryListener = (history: WorkflowHistoryBytes) => void;\n\nfunction createHistoryEmitter() {\n\tconst listeners = new Set<HistoryListener>();\n\n\treturn {\n\t\ton: (listener: HistoryListener) => {\n\t\t\tlisteners.add(listener);\n\t\t\treturn () => listeners.delete(listener);\n\t\t},\n\t\temit: (history: WorkflowHistoryBytes) => {\n\t\t\tfor (const listener of listeners) {\n\t\t\t\tlistener(history);\n\t\t\t}\n\t\t},\n\t};\n}\n\nexport type WorkflowInspectorAdapter = PublicWorkflowInspectorAdapter;\n\nexport function createWorkflowInspectorAdapter(): {\n\tadapter: WorkflowInspectorAdapter;\n\tupdate: (snapshot: WorkflowHistorySnapshot) => void;\n\tsetGetState: (fn: () => Promise<WorkflowState | null>) => void;\n\tsetReplayFromStep: (\n\t\tfn: (entryId?: string) => Promise<WorkflowHistoryBytes | null>,\n\t) => void;\n} {\n\tconst emitter = createHistoryEmitter();\n\tlet history: WorkflowHistoryBytes | null = null;\n\tlet getState: () => Promise<WorkflowState | null> = async () => null;\n\tlet replayFromStep: (\n\t\tentryId?: string,\n\t) => Promise<WorkflowHistoryBytes | null> = async () => {\n\t\tthrow new Error(\"Workflow replay controls are not initialized\");\n\t};\n\n\tconst adapter: WorkflowInspectorAdapter = {\n\t\tgetHistory: () => history,\n\t\tgetState: async () => await getState(),\n\t\tonHistoryUpdated: (listener) => emitter.on(listener),\n\t\treplayFromStep: async (entryId) => await replayFromStep(entryId),\n\t};\n\n\tconst update = (snapshot: WorkflowHistorySnapshot) => {\n\t\tconst transportHistory = toWorkflowHistory(snapshot);\n\t\tconst next = encodeWorkflowHistoryTransport(transportHistory);\n\t\thistory = next;\n\t\temitter.emit(next);\n\t};\n\n\treturn {\n\t\tadapter,\n\t\tupdate,\n\t\tsetGetState: (fn) => {\n\t\t\tgetState = fn;\n\t\t},\n\t\tsetReplayFromStep: (fn) => {\n\t\t\treplayFromStep = fn;\n\t\t},\n\t};\n}\n\nfunction encodeCbor(value: unknown): ArrayBuffer {\n\treturn encodeWorkflowInspectorValue(value);\n}\n\nfunction encodeOptionalCbor(value: unknown): ArrayBuffer | null {\n\tif (value === undefined) {\n\t\treturn null;\n\t}\n\treturn encodeCbor(value);\n}\n\nfunction toU64(value: number): bigint {\n\treturn BigInt(Math.max(0, Math.floor(value)));\n}\n\nfunction toWorkflowLocation(location: Location): transport.WorkflowLocation {\n\treturn location.map((segment) => {\n\t\tif (typeof segment === \"number\") {\n\t\t\treturn { tag: \"WorkflowNameIndex\", val: segment };\n\t\t}\n\t\treturn {\n\t\t\ttag: \"WorkflowLoopIterationMarker\",\n\t\t\tval: {\n\t\t\t\tloop: segment.loop,\n\t\t\t\titeration: segment.iteration,\n\t\t\t},\n\t\t};\n\t});\n}\n\nfunction toWorkflowEntryKind(kind: EntryKind): transport.WorkflowEntryKind {\n\tswitch (kind.type) {\n\t\tcase \"step\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowStepEntry\",\n\t\t\t\tval: {\n\t\t\t\t\toutput: encodeOptionalCbor(kind.data.output),\n\t\t\t\t\terror: kind.data.error ?? null,\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"loop\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowLoopEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tstate: encodeCbor(kind.data.state),\n\t\t\t\t\titeration: kind.data.iteration,\n\t\t\t\t\toutput: encodeOptionalCbor(kind.data.output),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"sleep\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowSleepEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tdeadline: toU64(kind.data.deadline),\n\t\t\t\t\tstate: toWorkflowSleepState(kind.data.state),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"message\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowMessageEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tname: kind.data.name,\n\t\t\t\t\tmessageData: encodeCbor(kind.data.data),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"rollback_checkpoint\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowRollbackCheckpointEntry\",\n\t\t\t\tval: { name: kind.data.name },\n\t\t\t};\n\t\tcase \"join\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowJoinEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tbranches: toWorkflowBranchStatusMap(kind.data.branches),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"race\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowRaceEntry\",\n\t\t\t\tval: {\n\t\t\t\t\twinner: kind.data.winner ?? null,\n\t\t\t\t\tbranches: toWorkflowBranchStatusMap(kind.data.branches),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"removed\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowRemovedEntry\",\n\t\t\t\tval: {\n\t\t\t\t\toriginalType: kind.data.originalType,\n\t\t\t\t\toriginalName: kind.data.originalName ?? null,\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"version_check\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowVersionCheckEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tresolved: kind.data.resolved,\n\t\t\t\t\tlatest: kind.data.latest,\n\t\t\t\t},\n\t\t\t};\n\t\tdefault:\n\t\t\tassertUnreachable(kind as never);\n\t}\n}\n\nfunction toWorkflowEntry(entry: WorkflowHistoryEntry): transport.WorkflowEntry {\n\treturn {\n\t\tid: entry.id,\n\t\tlocation: toWorkflowLocation(entry.location),\n\t\tkind: toWorkflowEntryKind(entry.kind),\n\t};\n}\n\nfunction toWorkflowEntryStatus(\n\tstatus: EntryStatus,\n): transport.WorkflowEntryStatus {\n\tswitch (status) {\n\t\tcase \"pending\":\n\t\t\treturn transport.WorkflowEntryStatus.PENDING;\n\t\tcase \"running\":\n\t\t\treturn transport.WorkflowEntryStatus.RUNNING;\n\t\tcase \"completed\":\n\t\t\treturn transport.WorkflowEntryStatus.COMPLETED;\n\t\tcase \"failed\":\n\t\t\treturn transport.WorkflowEntryStatus.FAILED;\n\t\tcase \"exhausted\":\n\t\t\treturn transport.WorkflowEntryStatus.EXHAUSTED;\n\t\tdefault:\n\t\t\tassertUnreachable(status as never);\n\t}\n}\n\nfunction toWorkflowSleepState(state: SleepState): transport.WorkflowSleepState {\n\tswitch (state) {\n\t\tcase \"pending\":\n\t\t\treturn transport.WorkflowSleepState.PENDING;\n\t\tcase \"completed\":\n\t\t\treturn transport.WorkflowSleepState.COMPLETED;\n\t\tcase \"interrupted\":\n\t\t\treturn transport.WorkflowSleepState.INTERRUPTED;\n\t\tdefault:\n\t\t\tassertUnreachable(state as never);\n\t}\n}\n\nfunction toWorkflowBranchStatusType(\n\tstatus: BranchStatusType,\n): transport.WorkflowBranchStatusType {\n\tswitch (status) {\n\t\tcase \"pending\":\n\t\t\treturn transport.WorkflowBranchStatusType.PENDING;\n\t\tcase \"running\":\n\t\t\treturn transport.WorkflowBranchStatusType.RUNNING;\n\t\tcase \"completed\":\n\t\t\treturn transport.WorkflowBranchStatusType.COMPLETED;\n\t\tcase \"failed\":\n\t\t\treturn transport.WorkflowBranchStatusType.FAILED;\n\t\tcase \"cancelled\":\n\t\t\treturn transport.WorkflowBranchStatusType.CANCELLED;\n\t\tdefault:\n\t\t\tassertUnreachable(status as never);\n\t}\n}\n\nfunction toWorkflowBranchStatus(\n\tstatus: BranchStatus,\n): transport.WorkflowBranchStatus {\n\treturn {\n\t\tstatus: toWorkflowBranchStatusType(status.status),\n\t\toutput: encodeOptionalCbor(status.output),\n\t\terror: status.error ?? null,\n\t};\n}\n\nfunction toWorkflowBranchStatusMap(\n\tbranches: Record<string, BranchStatus>,\n): ReadonlyMap<string, transport.WorkflowBranchStatus> {\n\treturn new Map(\n\t\tObject.entries(branches).map(([name, status]) => [\n\t\t\tname,\n\t\t\ttoWorkflowBranchStatus(status),\n\t\t]),\n\t);\n}\n\nfunction toWorkflowEntryMetadata(\n\tmetadata: WorkflowEntryMetadataSnapshot,\n): transport.WorkflowEntryMetadata {\n\tconst rollbackCompletedAt = (\n\t\tmetadata as WorkflowEntryMetadataSnapshot & {\n\t\t\trollbackCompletedAt?: number;\n\t\t}\n\t).rollbackCompletedAt;\n\tconst rollbackError = (\n\t\tmetadata as WorkflowEntryMetadataSnapshot & {\n\t\t\trollbackError?: string | null;\n\t\t}\n\t).rollbackError;\n\n\treturn {\n\t\tstatus: toWorkflowEntryStatus(metadata.status),\n\t\terror: metadata.error ?? null,\n\t\tattempts: metadata.attempts,\n\t\tlastAttemptAt: toU64(metadata.lastAttemptAt),\n\t\tcreatedAt: toU64(metadata.createdAt),\n\t\tcompletedAt:\n\t\t\tmetadata.completedAt === undefined\n\t\t\t\t? null\n\t\t\t\t: toU64(metadata.completedAt),\n\t\trollbackCompletedAt:\n\t\t\trollbackCompletedAt === undefined\n\t\t\t\t? null\n\t\t\t\t: toU64(rollbackCompletedAt),\n\t\trollbackError: rollbackError ?? null,\n\t};\n}\n\nfunction toWorkflowHistory(\n\tsnapshot: WorkflowHistorySnapshot,\n): transport.WorkflowHistory {\n\tconst entryMetadata = new Map<string, transport.WorkflowEntryMetadata>();\n\tfor (const [id, metadata] of snapshot.entryMetadata) {\n\t\tentryMetadata.set(id, toWorkflowEntryMetadata(metadata));\n\t}\n\n\treturn {\n\t\tnameRegistry: [...snapshot.nameRegistry],\n\t\tentries: snapshot.entries.map(toWorkflowEntry),\n\t\tentryMetadata,\n\t};\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-IU6TTH6L.cjs","../../src/workflow/inspector.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACaA,SAAS,oBAAA,CAAA,EAAuB;AAC/B,EAAA,MAAM,UAAA,kBAAY,IAAI,GAAA,CAAqB,CAAA;AAE3C,EAAA,OAAO;AAAA,IACN,EAAA,EAAI,CAAC,QAAA,EAAA,GAA8B;AAClC,MAAA,SAAA,CAAU,GAAA,CAAI,QAAQ,CAAA;AACtB,MAAA,OAAO,CAAA,EAAA,GAAM,SAAA,CAAU,MAAA,CAAO,QAAQ,CAAA;AAAA,IACvC,CAAA;AAAA,IACA,IAAA,EAAM,CAAC,OAAA,EAAA,GAAkC;AACxC,MAAA,IAAA,CAAA,MAAW,SAAA,GAAY,SAAA,EAAW;AACjC,QAAA,QAAA,CAAS,OAAO,CAAA;AAAA,MACjB;AAAA,IACD;AAAA,EACD,CAAA;AACD;AAIO,SAAS,8BAAA,CAAA,EAOd;AACD,EAAA,MAAM,QAAA,EAAU,oBAAA,CAAqB,CAAA;AACrC,EAAA,IAAI,QAAA,EAAuC,IAAA;AAC3C,EAAA,IAAI,SAAA,EAAgD,MAAA,CAAA,EAAA,GAAY,IAAA;AAChE,EAAA,IAAI,eAAA,EAEwC,MAAA,CAAA,EAAA,GAAY;AACvD,IAAA,MAAM,IAAI,KAAA,CAAM,8CAA8C,CAAA;AAAA,EAC/D,CAAA;AAEA,EAAA,MAAM,QAAA,EAAoC;AAAA,IACzC,UAAA,EAAY,CAAA,EAAA,GAAM,OAAA;AAAA,IAClB,QAAA,EAAU,MAAA,CAAA,EAAA,GAAY,MAAM,QAAA,CAAS,CAAA;AAAA,IACrC,gBAAA,EAAkB,CAAC,QAAA,EAAA,GAAa,OAAA,CAAQ,EAAA,CAAG,QAAQ,CAAA;AAAA,IACnD,cAAA,EAAgB,MAAA,CAAO,OAAA,EAAA,GAAY,MAAM,cAAA,CAAe,OAAO;AAAA,EAChE,CAAA;AAEA,EAAA,MAAM,OAAA,EAAS,CAAC,QAAA,EAAA,GAAsC;AACrD,IAAA,MAAM,iBAAA,EAAmB,iBAAA,CAAkB,QAAQ,CAAA;AACnD,IAAA,MAAM,KAAA,EAAO,8DAAA,gBAA+C,CAAA;AAC5D,IAAA,QAAA,EAAU,IAAA;AACV,IAAA,OAAA,CAAQ,IAAA,CAAK,IAAI,CAAA;AAAA,EAClB,CAAA;AAEA,EAAA,OAAO;AAAA,IACN,OAAA;AAAA,IACA,MAAA;AAAA,IACA,WAAA,EAAa,CAAC,EAAA,EAAA,GAAO;AACpB,MAAA,SAAA,EAAW,EAAA;AAAA,IACZ,CAAA;AAAA,IACA,iBAAA,EAAmB,CAAC,EAAA,EAAA,GAAO;AAC1B,MAAA,eAAA,EAAiB,EAAA;AAAA,IAClB;AAAA,EACD,CAAA;AACD;AAEA,SAAS,UAAA,CAAW,KAAA,EAA6B;AAChD,EAAA,OAAO,4DAAA,KAAkC,CAAA;AAC1C;AAEA,SAAS,kBAAA,CAAmB,KAAA,EAAoC;AAC/D,EAAA,GAAA,CAAI,MAAA,IAAU,KAAA,CAAA,EAAW;AACxB,IAAA,OAAO,IAAA;AAAA,EACR;AACA,EAAA,OAAO,UAAA,CAAW,KAAK,CAAA;AACxB;AAEA,SAAS,KAAA,CAAM,KAAA,EAAuB;AACrC,EAAA,OAAO,MAAA,CAAO,IAAA,CAAK,GAAA,CAAI,CAAA,EAAG,IAAA,CAAK,KAAA,CAAM,KAAK,CAAC,CAAC,CAAA;AAC7C;AAEA,SAAS,kBAAA,CAAmB,QAAA,EAAgD;AAC3E,EAAA,OAAO,QAAA,CAAS,GAAA,CAAI,CAAC,OAAA,EAAA,GAAY;AAChC,IAAA,GAAA,CAAI,OAAO,QAAA,IAAY,QAAA,EAAU;AAChC,MAAA,OAAO,EAAE,GAAA,EAAK,mBAAA,EAAqB,GAAA,EAAK,QAAQ,CAAA;AAAA,IACjD;AACA,IAAA,OAAO;AAAA,MACN,GAAA,EAAK,6BAAA;AAAA,MACL,GAAA,EAAK;AAAA,QACJ,IAAA,EAAM,OAAA,CAAQ,IAAA;AAAA,QACd,SAAA,EAAW,OAAA,CAAQ;AAAA,MACpB;AAAA,IACD,CAAA;AAAA,EACD,CAAC,CAAA;AACF;AAEA,SAAS,mBAAA,CAAoB,IAAA,EAA8C;AAC1E,EAAA,OAAA,CAAQ,IAAA,CAAK,IAAA,EAAM;AAAA,IAClB,KAAK,MAAA;AACJ,MAAA,OAAO;AAAA,QACN,GAAA,EAAK,mBAAA;AAAA,QACL,GAAA,EAAK;AAAA,UACJ,MAAA,EAAQ,kBAAA,CAAmB,IAAA,CAAK,IAAA,CAAK,MAAM,CAAA;AAAA,UAC3C,KAAA,mBAAO,IAAA,CAAK,IAAA,CAAK,KAAA,UAAS;AAAA,QAC3B;AAAA,MACD,CAAA;AAAA,IACD,KAAK,MAAA;AACJ,MAAA,OAAO;AAAA,QACN,GAAA,EAAK,mBAAA;AAAA,QACL,GAAA,EAAK;AAAA,UACJ,KAAA,EAAO,UAAA,CAAW,IAAA,CAAK,IAAA,CAAK,KAAK,CAAA;AAAA,UACjC,SAAA,EAAW,IAAA,CAAK,IAAA,CAAK,SAAA;AAAA,UACrB,MAAA,EAAQ,kBAAA,CAAmB,IAAA,CAAK,IAAA,CAAK,MAAM;AAAA,QAC5C;AAAA,MACD,CAAA;AAAA,IACD,KAAK,OAAA;AACJ,MAAA,OAAO;AAAA,QACN,GAAA,EAAK,oBAAA;AAAA,QACL,GAAA,EAAK;AAAA,UACJ,QAAA,EAAU,KAAA,CAAM,IAAA,CAAK,IAAA,CAAK,QAAQ,CAAA;AAAA,UAClC,KAAA,EAAO,oBAAA,CAAqB,IAAA,CAAK,IAAA,CAAK,KAAK;AAAA,QAC5C;AAAA,MACD,CAAA;AAAA,IACD,KAAK,SAAA;AACJ,MAAA,OAAO;AAAA,QACN,GAAA,EAAK,sBAAA;AAAA,QACL,GAAA,EAAK;AAAA,UACJ,IAAA,EAAM,IAAA,CAAK,IAAA,CAAK,IAAA;AAAA,UAChB,WAAA,EAAa,UAAA,CAAW,IAAA,CAAK,IAAA,CAAK,IAAI;AAAA,QACvC;AAAA,MACD,CAAA;AAAA,IACD,KAAK,qBAAA;AACJ,MAAA,OAAO;AAAA,QACN,GAAA,EAAK,iCAAA;AAAA,QACL,GAAA,EAAK,EAAE,IAAA,EAAM,IAAA,CAAK,IAAA,CAAK,KAAK;AAAA,MAC7B,CAAA;AAAA,IACD,KAAK,MAAA;AACJ,MAAA,OAAO;AAAA,QACN,GAAA,EAAK,mBAAA;AAAA,QACL,GAAA,EAAK;AAAA,UACJ,QAAA,EAAU,yBAAA,CAA0B,IAAA,CAAK,IAAA,CAAK,QAAQ;AAAA,QACvD;AAAA,MACD,CAAA;AAAA,IACD,KAAK,MAAA;AACJ,MAAA,OAAO;AAAA,QACN,GAAA,EAAK,mBAAA;AAAA,QACL,GAAA,EAAK;AAAA,UACJ,MAAA,mBAAQ,IAAA,CAAK,IAAA,CAAK,MAAA,UAAU,MAAA;AAAA,UAC5B,QAAA,EAAU,yBAAA,CAA0B,IAAA,CAAK,IAAA,CAAK,QAAQ;AAAA,QACvD;AAAA,MACD,CAAA;AAAA,IACD,KAAK,SAAA;AACJ,MAAA,OAAO;AAAA,QACN,GAAA,EAAK,sBAAA;AAAA,QACL,GAAA,EAAK;AAAA,UACJ,YAAA,EAAc,IAAA,CAAK,IAAA,CAAK,YAAA;AAAA,UACxB,YAAA,mBAAc,IAAA,CAAK,IAAA,CAAK,YAAA,UAAgB;AAAA,QACzC;AAAA,MACD,CAAA;AAAA,IACD,KAAK,eAAA;AACJ,MAAA,OAAO;AAAA,QACN,GAAA,EAAK,2BAAA;AAAA,QACL,GAAA,EAAK;AAAA,UACJ,QAAA,EAAU,IAAA,CAAK,IAAA,CAAK,QAAA;AAAA,UACpB,MAAA,EAAQ,IAAA,CAAK,IAAA,CAAK;AAAA,QACnB;AAAA,MACD,CAAA;AAAA,IACD,OAAA;AACC,MAAA,iDAAA,IAA+B,CAAA;AAAA,EACjC;AACD;AAEA,SAAS,eAAA,CAAgB,KAAA,EAAsD;AAC9E,EAAA,OAAO;AAAA,IACN,EAAA,EAAI,KAAA,CAAM,EAAA;AAAA,IACV,QAAA,EAAU,kBAAA,CAAmB,KAAA,CAAM,QAAQ,CAAA;AAAA,IAC3C,IAAA,EAAM,mBAAA,CAAoB,KAAA,CAAM,IAAI;AAAA,EACrC,CAAA;AACD;AAEA,SAAS,qBAAA,CACR,MAAA,EACgC;AAChC,EAAA,OAAA,CAAQ,MAAA,EAAQ;AAAA,IACf,KAAK,SAAA;AACJ,MAAA,OAAA,uBAAA;AAAA,IACD,KAAK,SAAA;AACJ,MAAA,OAAA,uBAAA;AAAA,IACD,KAAK,WAAA;AACJ,MAAA,OAAA,2BAAA;AAAA,IACD,KAAK,QAAA;AACJ,MAAA,OAAA,qBAAA;AAAA,IACD,KAAK,WAAA;AACJ,MAAA,OAAA,2BAAA;AAAA,IACD,OAAA;AACC,MAAA,iDAAA,MAAiC,CAAA;AAAA,EACnC;AACD;AAEA,SAAS,oBAAA,CAAqB,KAAA,EAAiD;AAC9E,EAAA,OAAA,CAAQ,KAAA,EAAO;AAAA,IACd,KAAK,SAAA;AACJ,MAAA,OAAA,uBAAA;AAAA,IACD,KAAK,WAAA;AACJ,MAAA,OAAA,2BAAA;AAAA,IACD,KAAK,aAAA;AACJ,MAAA,OAAA,+BAAA;AAAA,IACD,OAAA;AACC,MAAA,iDAAA,KAAgC,CAAA;AAAA,EAClC;AACD;AAEA,SAAS,0BAAA,CACR,MAAA,EACqC;AACrC,EAAA,OAAA,CAAQ,MAAA,EAAQ;AAAA,IACf,KAAK,SAAA;AACJ,MAAA,OAAA,uBAAA;AAAA,IACD,KAAK,SAAA;AACJ,MAAA,OAAA,uBAAA;AAAA,IACD,KAAK,WAAA;AACJ,MAAA,OAAA,2BAAA;AAAA,IACD,KAAK,QAAA;AACJ,MAAA,OAAA,qBAAA;AAAA,IACD,KAAK,WAAA;AACJ,MAAA,OAAA,2BAAA;AAAA,IACD,OAAA;AACC,MAAA,iDAAA,MAAiC,CAAA;AAAA,EACnC;AACD;AAEA,SAAS,sBAAA,CACR,MAAA,EACiC;AACjC,EAAA,OAAO;AAAA,IACN,MAAA,EAAQ,0BAAA,CAA2B,MAAA,CAAO,MAAM,CAAA;AAAA,IAChD,MAAA,EAAQ,kBAAA,CAAmB,MAAA,CAAO,MAAM,CAAA;AAAA,IACxC,KAAA,mBAAO,MAAA,CAAO,KAAA,UAAS;AAAA,EACxB,CAAA;AACD;AAEA,SAAS,yBAAA,CACR,QAAA,EACsD;AACtD,EAAA,OAAO,IAAI,GAAA;AAAA,IACV,MAAA,CAAO,OAAA,CAAQ,QAAQ,CAAA,CAAE,GAAA,CAAI,CAAC,CAAC,IAAA,EAAM,MAAM,CAAA,EAAA,GAAM;AAAA,MAChD,IAAA;AAAA,MACA,sBAAA,CAAuB,MAAM;AAAA,IAC9B,CAAC;AAAA,EACF,CAAA;AACD;AAEA,SAAS,uBAAA,CACR,QAAA,EACkC;AAClC,EAAA,MAAM,oBAAA,EACL,QAAA,CAGC,mBAAA;AACF,EAAA,MAAM,cAAA,EACL,QAAA,CAGC,aAAA;AAEF,EAAA,OAAO;AAAA,IACN,MAAA,EAAQ,qBAAA,CAAsB,QAAA,CAAS,MAAM,CAAA;AAAA,IAC7C,KAAA,mBAAO,QAAA,CAAS,KAAA,UAAS,MAAA;AAAA,IACzB,QAAA,EAAU,QAAA,CAAS,QAAA;AAAA,IACnB,aAAA,EAAe,KAAA,CAAM,QAAA,CAAS,aAAa,CAAA;AAAA,IAC3C,SAAA,EAAW,KAAA,CAAM,QAAA,CAAS,SAAS,CAAA;AAAA,IACnC,WAAA,EACC,QAAA,CAAS,YAAA,IAAgB,KAAA,EAAA,EACtB,KAAA,EACA,KAAA,CAAM,QAAA,CAAS,WAAW,CAAA;AAAA,IAC9B,mBAAA,EACC,oBAAA,IAAwB,KAAA,EAAA,EACrB,KAAA,EACA,KAAA,CAAM,mBAAmB,CAAA;AAAA,IAC7B,aAAA,mBAAe,aAAA,UAAiB;AAAA,EACjC,CAAA;AACD;AAEA,SAAS,iBAAA,CACR,QAAA,EAC4B;AAC5B,EAAA,MAAM,cAAA,kBAAgB,IAAI,GAAA,CAA6C,CAAA;AACvE,EAAA,IAAA,CAAA,MAAW,CAAC,EAAA,EAAI,QAAQ,EAAA,GAAK,QAAA,CAAS,aAAA,EAAe;AACpD,IAAA,aAAA,CAAc,GAAA,CAAI,EAAA,EAAI,uBAAA,CAAwB,QAAQ,CAAC,CAAA;AAAA,EACxD;AAEA,EAAA,OAAO;AAAA,IACN,YAAA,EAAc,CAAC,GAAG,QAAA,CAAS,YAAY,CAAA;AAAA,IACvC,OAAA,EAAS,QAAA,CAAS,OAAA,CAAQ,GAAA,CAAI,eAAe,CAAA;AAAA,IAC7C;AAAA,EACD,CAAA;AACD;ADpEA;AACA;AACE;AACF,wEAAC","file":"/home/runner/work/actors/actors/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-IU6TTH6L.cjs","sourcesContent":[null,"import type {\n\tBranchStatus,\n\tBranchStatusType,\n\tEntryKind,\n\tEntryStatus,\n\tLocation,\n\tSleepState,\n\tWorkflowEntryMetadataSnapshot,\n\tWorkflowHistoryEntry,\n\tWorkflowHistorySnapshot,\n\tWorkflowState,\n} from \"@rivetkit/workflow-engine\";\nimport * as transport from \"@/inspector/workflow\";\nimport {\n\tencodeWorkflowHistoryTransport,\n\tencodeWorkflowInspectorValue,\n\ttype WorkflowInspectorAdapter as PublicWorkflowInspectorAdapter,\n\ttype WorkflowHistoryBytes,\n} from \"@/inspector/workflow\";\nimport { assertUnreachable } from \"@/utils\";\n\ntype HistoryListener = (history: WorkflowHistoryBytes) => void;\n\nfunction createHistoryEmitter() {\n\tconst listeners = new Set<HistoryListener>();\n\n\treturn {\n\t\ton: (listener: HistoryListener) => {\n\t\t\tlisteners.add(listener);\n\t\t\treturn () => listeners.delete(listener);\n\t\t},\n\t\temit: (history: WorkflowHistoryBytes) => {\n\t\t\tfor (const listener of listeners) {\n\t\t\t\tlistener(history);\n\t\t\t}\n\t\t},\n\t};\n}\n\nexport type WorkflowInspectorAdapter = PublicWorkflowInspectorAdapter;\n\nexport function createWorkflowInspectorAdapter(): {\n\tadapter: WorkflowInspectorAdapter;\n\tupdate: (snapshot: WorkflowHistorySnapshot) => void;\n\tsetGetState: (fn: () => Promise<WorkflowState | null>) => void;\n\tsetReplayFromStep: (\n\t\tfn: (entryId?: string) => Promise<WorkflowHistoryBytes | null>,\n\t) => void;\n} {\n\tconst emitter = createHistoryEmitter();\n\tlet history: WorkflowHistoryBytes | null = null;\n\tlet getState: () => Promise<WorkflowState | null> = async () => null;\n\tlet replayFromStep: (\n\t\tentryId?: string,\n\t) => Promise<WorkflowHistoryBytes | null> = async () => {\n\t\tthrow new Error(\"Workflow replay controls are not initialized\");\n\t};\n\n\tconst adapter: WorkflowInspectorAdapter = {\n\t\tgetHistory: () => history,\n\t\tgetState: async () => await getState(),\n\t\tonHistoryUpdated: (listener) => emitter.on(listener),\n\t\treplayFromStep: async (entryId) => await replayFromStep(entryId),\n\t};\n\n\tconst update = (snapshot: WorkflowHistorySnapshot) => {\n\t\tconst transportHistory = toWorkflowHistory(snapshot);\n\t\tconst next = encodeWorkflowHistoryTransport(transportHistory);\n\t\thistory = next;\n\t\temitter.emit(next);\n\t};\n\n\treturn {\n\t\tadapter,\n\t\tupdate,\n\t\tsetGetState: (fn) => {\n\t\t\tgetState = fn;\n\t\t},\n\t\tsetReplayFromStep: (fn) => {\n\t\t\treplayFromStep = fn;\n\t\t},\n\t};\n}\n\nfunction encodeCbor(value: unknown): ArrayBuffer {\n\treturn encodeWorkflowInspectorValue(value);\n}\n\nfunction encodeOptionalCbor(value: unknown): ArrayBuffer | null {\n\tif (value === undefined) {\n\t\treturn null;\n\t}\n\treturn encodeCbor(value);\n}\n\nfunction toU64(value: number): bigint {\n\treturn BigInt(Math.max(0, Math.floor(value)));\n}\n\nfunction toWorkflowLocation(location: Location): transport.WorkflowLocation {\n\treturn location.map((segment) => {\n\t\tif (typeof segment === \"number\") {\n\t\t\treturn { tag: \"WorkflowNameIndex\", val: segment };\n\t\t}\n\t\treturn {\n\t\t\ttag: \"WorkflowLoopIterationMarker\",\n\t\t\tval: {\n\t\t\t\tloop: segment.loop,\n\t\t\t\titeration: segment.iteration,\n\t\t\t},\n\t\t};\n\t});\n}\n\nfunction toWorkflowEntryKind(kind: EntryKind): transport.WorkflowEntryKind {\n\tswitch (kind.type) {\n\t\tcase \"step\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowStepEntry\",\n\t\t\t\tval: {\n\t\t\t\t\toutput: encodeOptionalCbor(kind.data.output),\n\t\t\t\t\terror: kind.data.error ?? null,\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"loop\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowLoopEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tstate: encodeCbor(kind.data.state),\n\t\t\t\t\titeration: kind.data.iteration,\n\t\t\t\t\toutput: encodeOptionalCbor(kind.data.output),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"sleep\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowSleepEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tdeadline: toU64(kind.data.deadline),\n\t\t\t\t\tstate: toWorkflowSleepState(kind.data.state),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"message\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowMessageEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tname: kind.data.name,\n\t\t\t\t\tmessageData: encodeCbor(kind.data.data),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"rollback_checkpoint\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowRollbackCheckpointEntry\",\n\t\t\t\tval: { name: kind.data.name },\n\t\t\t};\n\t\tcase \"join\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowJoinEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tbranches: toWorkflowBranchStatusMap(kind.data.branches),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"race\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowRaceEntry\",\n\t\t\t\tval: {\n\t\t\t\t\twinner: kind.data.winner ?? null,\n\t\t\t\t\tbranches: toWorkflowBranchStatusMap(kind.data.branches),\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"removed\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowRemovedEntry\",\n\t\t\t\tval: {\n\t\t\t\t\toriginalType: kind.data.originalType,\n\t\t\t\t\toriginalName: kind.data.originalName ?? null,\n\t\t\t\t},\n\t\t\t};\n\t\tcase \"version_check\":\n\t\t\treturn {\n\t\t\t\ttag: \"WorkflowVersionCheckEntry\",\n\t\t\t\tval: {\n\t\t\t\t\tresolved: kind.data.resolved,\n\t\t\t\t\tlatest: kind.data.latest,\n\t\t\t\t},\n\t\t\t};\n\t\tdefault:\n\t\t\tassertUnreachable(kind as never);\n\t}\n}\n\nfunction toWorkflowEntry(entry: WorkflowHistoryEntry): transport.WorkflowEntry {\n\treturn {\n\t\tid: entry.id,\n\t\tlocation: toWorkflowLocation(entry.location),\n\t\tkind: toWorkflowEntryKind(entry.kind),\n\t};\n}\n\nfunction toWorkflowEntryStatus(\n\tstatus: EntryStatus,\n): transport.WorkflowEntryStatus {\n\tswitch (status) {\n\t\tcase \"pending\":\n\t\t\treturn transport.WorkflowEntryStatus.PENDING;\n\t\tcase \"running\":\n\t\t\treturn transport.WorkflowEntryStatus.RUNNING;\n\t\tcase \"completed\":\n\t\t\treturn transport.WorkflowEntryStatus.COMPLETED;\n\t\tcase \"failed\":\n\t\t\treturn transport.WorkflowEntryStatus.FAILED;\n\t\tcase \"exhausted\":\n\t\t\treturn transport.WorkflowEntryStatus.EXHAUSTED;\n\t\tdefault:\n\t\t\tassertUnreachable(status as never);\n\t}\n}\n\nfunction toWorkflowSleepState(state: SleepState): transport.WorkflowSleepState {\n\tswitch (state) {\n\t\tcase \"pending\":\n\t\t\treturn transport.WorkflowSleepState.PENDING;\n\t\tcase \"completed\":\n\t\t\treturn transport.WorkflowSleepState.COMPLETED;\n\t\tcase \"interrupted\":\n\t\t\treturn transport.WorkflowSleepState.INTERRUPTED;\n\t\tdefault:\n\t\t\tassertUnreachable(state as never);\n\t}\n}\n\nfunction toWorkflowBranchStatusType(\n\tstatus: BranchStatusType,\n): transport.WorkflowBranchStatusType {\n\tswitch (status) {\n\t\tcase \"pending\":\n\t\t\treturn transport.WorkflowBranchStatusType.PENDING;\n\t\tcase \"running\":\n\t\t\treturn transport.WorkflowBranchStatusType.RUNNING;\n\t\tcase \"completed\":\n\t\t\treturn transport.WorkflowBranchStatusType.COMPLETED;\n\t\tcase \"failed\":\n\t\t\treturn transport.WorkflowBranchStatusType.FAILED;\n\t\tcase \"cancelled\":\n\t\t\treturn transport.WorkflowBranchStatusType.CANCELLED;\n\t\tdefault:\n\t\t\tassertUnreachable(status as never);\n\t}\n}\n\nfunction toWorkflowBranchStatus(\n\tstatus: BranchStatus,\n): transport.WorkflowBranchStatus {\n\treturn {\n\t\tstatus: toWorkflowBranchStatusType(status.status),\n\t\toutput: encodeOptionalCbor(status.output),\n\t\terror: status.error ?? null,\n\t};\n}\n\nfunction toWorkflowBranchStatusMap(\n\tbranches: Record<string, BranchStatus>,\n): ReadonlyMap<string, transport.WorkflowBranchStatus> {\n\treturn new Map(\n\t\tObject.entries(branches).map(([name, status]) => [\n\t\t\tname,\n\t\t\ttoWorkflowBranchStatus(status),\n\t\t]),\n\t);\n}\n\nfunction toWorkflowEntryMetadata(\n\tmetadata: WorkflowEntryMetadataSnapshot,\n): transport.WorkflowEntryMetadata {\n\tconst rollbackCompletedAt = (\n\t\tmetadata as WorkflowEntryMetadataSnapshot & {\n\t\t\trollbackCompletedAt?: number;\n\t\t}\n\t).rollbackCompletedAt;\n\tconst rollbackError = (\n\t\tmetadata as WorkflowEntryMetadataSnapshot & {\n\t\t\trollbackError?: string | null;\n\t\t}\n\t).rollbackError;\n\n\treturn {\n\t\tstatus: toWorkflowEntryStatus(metadata.status),\n\t\terror: metadata.error ?? null,\n\t\tattempts: metadata.attempts,\n\t\tlastAttemptAt: toU64(metadata.lastAttemptAt),\n\t\tcreatedAt: toU64(metadata.createdAt),\n\t\tcompletedAt:\n\t\t\tmetadata.completedAt === undefined\n\t\t\t\t? null\n\t\t\t\t: toU64(metadata.completedAt),\n\t\trollbackCompletedAt:\n\t\t\trollbackCompletedAt === undefined\n\t\t\t\t? null\n\t\t\t\t: toU64(rollbackCompletedAt),\n\t\trollbackError: rollbackError ?? null,\n\t};\n}\n\nfunction toWorkflowHistory(\n\tsnapshot: WorkflowHistorySnapshot,\n): transport.WorkflowHistory {\n\tconst entryMetadata = new Map<string, transport.WorkflowEntryMetadata>();\n\tfor (const [id, metadata] of snapshot.entryMetadata) {\n\t\tentryMetadata.set(id, toWorkflowEntryMetadata(metadata));\n\t}\n\n\treturn {\n\t\tnameRegistry: [...snapshot.nameRegistry],\n\t\tentries: snapshot.entries.map(toWorkflowEntry),\n\t\tentryMetadata,\n\t};\n}\n"]}
|
|
@@ -4,7 +4,7 @@ var INTERNAL_ERROR_DESCRIPTION = "An internal error occurred";
|
|
|
4
4
|
var USER_ERROR_CODE = "user_error";
|
|
5
5
|
var BRIDGE_RIVET_ERROR_PREFIX = "__RIVET_ERROR_JSON__:";
|
|
6
6
|
function looksLikeRivetErrorOptions(value) {
|
|
7
|
-
return typeof value === "object" && value !== null && ("public" in value || "metadata" in value || "statusCode" in value || "actor" in value || "cause" in value);
|
|
7
|
+
return typeof value === "object" && value !== null && ("public" in value || "metadata" in value || "rayId" in value || "statusCode" in value || "actor" in value || "cause" in value);
|
|
8
8
|
}
|
|
9
9
|
function isTypedErrorTag(value) {
|
|
10
10
|
return value === "ActorError" || value === "RivetError";
|
|
@@ -16,7 +16,7 @@ function errorMessage(error, fallback = String(error)) {
|
|
|
16
16
|
return fallback;
|
|
17
17
|
}
|
|
18
18
|
function isRivetErrorLike(error) {
|
|
19
|
-
return typeof error === "object" && error !== null && "group" in error && typeof error.group === "string" && "code" in error && typeof error.code === "string" && "message" in error && typeof error.message === "string" && (!("__type" in error) || isTypedErrorTag(error.__type));
|
|
19
|
+
return typeof error === "object" && error !== null && "group" in error && typeof error.group === "string" && "code" in error && typeof error.code === "string" && "message" in error && typeof error.message === "string" && (!("rayId" in error) || error.rayId === void 0 || typeof error.rayId === "string") && (!("__type" in error) || isTypedErrorTag(error.__type));
|
|
20
20
|
}
|
|
21
21
|
function isActorAbortedError(error) {
|
|
22
22
|
return isRivetErrorLike(error) && error.group === "actor" && error.code === "aborted";
|
|
@@ -28,6 +28,7 @@ var RivetError = class extends Error {
|
|
|
28
28
|
__type = "RivetError";
|
|
29
29
|
public;
|
|
30
30
|
metadata;
|
|
31
|
+
rayId;
|
|
31
32
|
statusCode;
|
|
32
33
|
actor;
|
|
33
34
|
group;
|
|
@@ -46,6 +47,7 @@ var RivetError = class extends Error {
|
|
|
46
47
|
this.code = code;
|
|
47
48
|
this.public = normalized.public ?? false;
|
|
48
49
|
this.metadata = normalized.metadata;
|
|
50
|
+
this.rayId = normalized.rayId ?? void 0;
|
|
49
51
|
this.statusCode = normalized.statusCode ?? (this.public ? 400 : 500);
|
|
50
52
|
this.actor = normalized.actor;
|
|
51
53
|
}
|
|
@@ -80,6 +82,7 @@ function toRivetError(error, fallback) {
|
|
|
80
82
|
public: error.public,
|
|
81
83
|
statusCode: error.statusCode,
|
|
82
84
|
metadata: error.metadata,
|
|
85
|
+
rayId: error.rayId,
|
|
83
86
|
actor: error.actor,
|
|
84
87
|
cause: error instanceof Error ? error.cause : void 0
|
|
85
88
|
});
|
|
@@ -92,6 +95,7 @@ function toRivetError(error, fallback) {
|
|
|
92
95
|
public: fallback == null ? void 0 : fallback.public,
|
|
93
96
|
statusCode: fallback == null ? void 0 : fallback.statusCode,
|
|
94
97
|
metadata: fallback == null ? void 0 : fallback.metadata,
|
|
98
|
+
rayId: fallback == null ? void 0 : fallback.rayId,
|
|
95
99
|
actor: fallback == null ? void 0 : fallback.actor,
|
|
96
100
|
cause: error instanceof Error ? error : void 0
|
|
97
101
|
}
|
|
@@ -103,6 +107,7 @@ function encodeBridgeRivetError(error) {
|
|
|
103
107
|
code: error.code,
|
|
104
108
|
message: error.message,
|
|
105
109
|
metadata: error.metadata,
|
|
110
|
+
rayId: error.rayId,
|
|
106
111
|
public: error.public,
|
|
107
112
|
statusCode: error.statusCode,
|
|
108
113
|
actor: error.actor
|
|
@@ -113,9 +118,13 @@ function decodeBridgeRivetErrorPayload(value) {
|
|
|
113
118
|
return void 0;
|
|
114
119
|
}
|
|
115
120
|
try {
|
|
116
|
-
const
|
|
121
|
+
const raw = JSON.parse(
|
|
117
122
|
value.slice(BRIDGE_RIVET_ERROR_PREFIX.length)
|
|
118
123
|
);
|
|
124
|
+
const payload = {
|
|
125
|
+
...raw,
|
|
126
|
+
rayId: raw.rayId ?? void 0
|
|
127
|
+
};
|
|
119
128
|
if (!isRivetErrorLike(payload)) {
|
|
120
129
|
return void 0;
|
|
121
130
|
}
|
|
@@ -134,6 +143,7 @@ function decodeBridgeRivetError(value) {
|
|
|
134
143
|
}
|
|
135
144
|
return new RivetError(payload.group, payload.code, payload.message, {
|
|
136
145
|
metadata: payload.metadata,
|
|
146
|
+
rayId: payload.rayId,
|
|
137
147
|
public: payload.public,
|
|
138
148
|
statusCode: payload.statusCode,
|
|
139
149
|
actor: payload.actor ?? void 0
|
|
@@ -151,6 +161,7 @@ function internalError(message, options) {
|
|
|
151
161
|
public: options == null ? void 0 : options.public,
|
|
152
162
|
statusCode: options == null ? void 0 : options.statusCode,
|
|
153
163
|
metadata: options == null ? void 0 : options.metadata,
|
|
164
|
+
rayId: options == null ? void 0 : options.rayId,
|
|
154
165
|
actor: options == null ? void 0 : options.actor,
|
|
155
166
|
cause: options == null ? void 0 : options.cause
|
|
156
167
|
}
|
|
@@ -246,4 +257,4 @@ export {
|
|
|
246
257
|
forbiddenError,
|
|
247
258
|
unsupportedFeature
|
|
248
259
|
};
|
|
249
|
-
//# sourceMappingURL=chunk-
|
|
260
|
+
//# sourceMappingURL=chunk-IXBD7BXC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/actor/errors.ts"],"sourcesContent":["import type { DeconstructedError } from \"@/common/utils\";\n\nexport const INTERNAL_ERROR_CODE = \"internal_error\";\nexport const INTERNAL_ERROR_DESCRIPTION = \"An internal error occurred\";\nexport type InternalErrorMetadata = Record<string, never>;\n\nexport const USER_ERROR_CODE = \"user_error\";\nexport const BRIDGE_RIVET_ERROR_PREFIX = \"__RIVET_ERROR_JSON__:\";\n\nexport interface RivetErrorOptions extends ErrorOptions {\n\t/** Error data can safely be serialized in a response to the client. */\n\tpublic?: boolean;\n\t/** Metadata associated with this error. */\n\tmetadata?: unknown;\n\t/** Request identifier used to correlate this error with engine logs. */\n\trayId?: string;\n\t/** Explicit HTTP status override for router responses. */\n\tstatusCode?: number;\n\t/** Actor context associated with this error. */\n\tactor?: ActorSpecifier;\n}\n\n/** Identifies the actor that was handling work when an error was produced. */\nexport interface ActorSpecifier {\n\tactorId: string;\n\tgeneration: number;\n\tkey?: string;\n}\n\nexport interface RivetErrorLike {\n\t__type?: \"ActorError\" | \"RivetError\";\n\tgroup: string;\n\tcode: string;\n\tmessage: string;\n\tmetadata?: unknown;\n\trayId?: string;\n\tpublic?: boolean;\n\tstatusCode?: number;\n\tactor?: ActorSpecifier;\n}\n\nexport interface BridgeRivetErrorPayload extends RivetErrorLike {}\n\n/**\n * Shape as it arrives from the native bridge, where an absent ray ID serializes\n * to null. Normalized to a BridgeRivetErrorPayload before validation.\n */\ninterface NativeBridgeErrorPayload extends Omit<BridgeRivetErrorPayload, \"rayId\"> {\n\trayId?: string | null;\n}\n\nexport interface UserErrorOptions extends ErrorOptions {\n\t/**\n\t * Machine readable code for this error. Useful for catching different types of\n\t * errors in try-catch.\n\t */\n\tcode?: string;\n\t/**\n\t * Additional metadata related to the error. Useful for understanding context\n\t * about the error.\n\t */\n\tmetadata?: unknown;\n}\n\nfunction looksLikeRivetErrorOptions(\n\tvalue: unknown,\n): value is RivetErrorOptions {\n\treturn (\n\t\ttypeof value === \"object\" &&\n\t\tvalue !== null &&\n\t\t(\"public\" in value ||\n\t\t\t\"metadata\" in value ||\n\t\t\t\"rayId\" in value ||\n\t\t\t\"statusCode\" in value ||\n\t\t\t\"actor\" in value ||\n\t\t\t\"cause\" in value)\n\t);\n}\n\nfunction isTypedErrorTag(value: unknown): value is \"ActorError\" | \"RivetError\" {\n\treturn value === \"ActorError\" || value === \"RivetError\";\n}\n\nfunction errorMessage(error: unknown, fallback = String(error)): string {\n\tif (\n\t\terror &&\n\t\ttypeof error === \"object\" &&\n\t\t\"message\" in error &&\n\t\ttypeof error.message === \"string\"\n\t) {\n\t\treturn error.message;\n\t}\n\n\treturn fallback;\n}\n\nexport function isRivetErrorLike(\n\terror: unknown,\n): error is RivetError | DeconstructedError | RivetErrorLike {\n\treturn (\n\t\ttypeof error === \"object\" &&\n\t\terror !== null &&\n\t\t\"group\" in error &&\n\t\ttypeof error.group === \"string\" &&\n\t\t\"code\" in error &&\n\t\ttypeof error.code === \"string\" &&\n\t\t\"message\" in error &&\n\t\ttypeof error.message === \"string\" &&\n\t\t(!(\"rayId\" in error) ||\n\t\t\terror.rayId === undefined ||\n\t\t\ttypeof error.rayId === \"string\") &&\n\t\t(!(\"__type\" in error) || isTypedErrorTag(error.__type))\n\t);\n}\n\n// Matches the `actor`/`aborted` error that core raises when an in-flight queue\n// wait is interrupted because the actor is going to sleep. This is the expected\n// way a parked `run` handler unwinds during sleep, not a failure.\nexport function isActorAbortedError(error: unknown): boolean {\n\treturn (\n\t\tisRivetErrorLike(error) &&\n\t\terror.group === \"actor\" &&\n\t\terror.code === \"aborted\"\n\t);\n}\n\nfunction isActorSpecifier(value: unknown): value is ActorSpecifier {\n\treturn (\n\t\ttypeof value === \"object\" &&\n\t\tvalue !== null &&\n\t\t\"actorId\" in value &&\n\t\ttypeof value.actorId === \"string\" &&\n\t\t\"generation\" in value &&\n\t\ttypeof value.generation === \"number\" &&\n\t\t(!(\"key\" in value) ||\n\t\t\tvalue.key === undefined ||\n\t\t\ttypeof value.key === \"string\")\n\t);\n}\n\nexport class RivetError extends Error {\n\t__type = \"RivetError\" as const;\n\n\tpublic public: boolean;\n\tpublic metadata?: unknown;\n\tpublic readonly rayId?: string;\n\tpublic statusCode: number;\n\tpublic actor?: ActorSpecifier;\n\tpublic readonly group: string;\n\tpublic readonly code: string;\n\n\tpublic static isRivetError(\n\t\terror: unknown,\n\t): error is RivetError | DeconstructedError {\n\t\treturn isRivetErrorLike(error);\n\t}\n\n\tpublic static isActorError(\n\t\terror: unknown,\n\t): error is RivetError | DeconstructedError {\n\t\treturn isRivetErrorLike(error);\n\t}\n\n\tconstructor(\n\t\tgroup: string,\n\t\tcode: string,\n\t\tmessage: string,\n\t\toptions?: RivetErrorOptions | unknown,\n\t) {\n\t\tconst normalized = looksLikeRivetErrorOptions(options)\n\t\t\t? options\n\t\t\t: { metadata: options };\n\n\t\tsuper(message, { cause: normalized.cause });\n\t\tthis.name = \"RivetError\";\n\t\tthis.group = group;\n\t\tthis.code = code;\n\t\tthis.public = normalized.public ?? false;\n\t\tthis.metadata = normalized.metadata;\n\t\tthis.rayId = normalized.rayId ?? undefined;\n\t\tthis.statusCode = normalized.statusCode ?? (this.public ? 400 : 500);\n\t\tthis.actor = normalized.actor;\n\t}\n\n\ttoString() {\n\t\treturn this.message;\n\t}\n}\n\nexport { RivetError as ActorError };\n\nexport class UserError extends RivetError {\n\tconstructor(message: string, options?: UserErrorOptions) {\n\t\tsuper(\"user\", options?.code ?? USER_ERROR_CODE, message, {\n\t\t\tpublic: true,\n\t\t\tmetadata: options?.metadata,\n\t\t\tcause: options?.cause,\n\t\t});\n\t}\n}\n\nexport function toRivetError(\n\terror: unknown,\n\tfallback?: Partial<RivetErrorLike>,\n): RivetError {\n\tif (typeof error === \"string\") {\n\t\tconst bridged = decodeBridgeRivetError(error);\n\t\tif (bridged) {\n\t\t\treturn bridged;\n\t\t}\n\t}\n\n\tif (error instanceof Error) {\n\t\tconst bridged = decodeBridgeRivetError(error.message);\n\t\tif (bridged) {\n\t\t\treturn bridged;\n\t\t}\n\t}\n\n\tif (isRivetErrorLike(error)) {\n\t\treturn new RivetError(error.group, error.code, error.message, {\n\t\t\tpublic: error.public,\n\t\t\tstatusCode: error.statusCode,\n\t\t\tmetadata: error.metadata,\n\t\t\trayId: error.rayId,\n\t\t\tactor: error.actor,\n\t\t\tcause: error instanceof Error ? error.cause : undefined,\n\t\t});\n\t}\n\n\treturn new RivetError(\n\t\tfallback?.group ?? \"actor\",\n\t\tfallback?.code ?? INTERNAL_ERROR_CODE,\n\t\terrorMessage(error, fallback?.message ?? \"Unknown error\"),\n\t\t{\n\t\t\tpublic: fallback?.public,\n\t\t\tstatusCode: fallback?.statusCode,\n\t\t\tmetadata: fallback?.metadata,\n\t\t\trayId: fallback?.rayId,\n\t\t\tactor: fallback?.actor,\n\t\t\tcause: error instanceof Error ? error : undefined,\n\t\t},\n\t);\n}\n\nexport function encodeBridgeRivetError(error: RivetErrorLike): string {\n\treturn `${BRIDGE_RIVET_ERROR_PREFIX}${JSON.stringify({\n\t\tgroup: error.group,\n\t\tcode: error.code,\n\t\tmessage: error.message,\n\t\tmetadata: error.metadata,\n\t\trayId: error.rayId,\n\t\tpublic: error.public,\n\t\tstatusCode: error.statusCode,\n\t\tactor: error.actor,\n\t})}`;\n}\n\nexport function decodeBridgeRivetErrorPayload(\n\tvalue: string,\n): BridgeRivetErrorPayload | undefined {\n\tif (!value.startsWith(BRIDGE_RIVET_ERROR_PREFIX)) {\n\t\treturn undefined;\n\t}\n\n\ttry {\n\t\tconst raw = JSON.parse(\n\t\t\tvalue.slice(BRIDGE_RIVET_ERROR_PREFIX.length),\n\t\t) as NativeBridgeErrorPayload;\n\t\t// Coerce the native bridge's null ray ID to undefined before validation.\n\t\tconst payload: BridgeRivetErrorPayload = {\n\t\t\t...raw,\n\t\t\trayId: raw.rayId ?? undefined,\n\t\t};\n\t\tif (!isRivetErrorLike(payload)) {\n\t\t\treturn undefined;\n\t\t}\n\t\tif (\n\t\t\tpayload.actor !== undefined &&\n\t\t\tpayload.actor !== null &&\n\t\t\t!isActorSpecifier(payload.actor)\n\t\t) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\treturn payload;\n\t} catch {\n\t\treturn undefined;\n\t}\n}\n\nexport function decodeBridgeRivetError(value: string): RivetError | undefined {\n\tconst payload = decodeBridgeRivetErrorPayload(value);\n\tif (!payload) {\n\t\treturn undefined;\n\t}\n\n\treturn new RivetError(payload.group, payload.code, payload.message, {\n\t\tmetadata: payload.metadata,\n\t\trayId: payload.rayId,\n\t\tpublic: payload.public,\n\t\tstatusCode: payload.statusCode,\n\t\tactor: payload.actor ?? undefined,\n\t});\n}\n\nexport function isRivetErrorCode(\n\terror: unknown,\n\tgroup: string,\n\tcode: string,\n): error is RivetError {\n\treturn (\n\t\tisRivetErrorLike(error) && error.group === group && error.code === code\n\t);\n}\n\nexport function internalError(\n\tmessage: string,\n\toptions?: Partial<RivetErrorOptions> & {\n\t\tgroup?: string;\n\t\tcode?: string;\n\t},\n): RivetError {\n\treturn new RivetError(\n\t\toptions?.group ?? \"actor\",\n\t\toptions?.code ?? INTERNAL_ERROR_CODE,\n\t\tmessage,\n\t\t{\n\t\t\tpublic: options?.public,\n\t\t\tstatusCode: options?.statusCode,\n\t\t\tmetadata: options?.metadata,\n\t\t\trayId: options?.rayId,\n\t\t\tactor: options?.actor,\n\t\t\tcause: options?.cause,\n\t\t},\n\t);\n}\n\nexport function invalidEncoding(format?: string): RivetError {\n\treturn new RivetError(\n\t\t\"encoding\",\n\t\t\"invalid\",\n\t\t`Invalid encoding \\`${format}\\`. (https://www.rivet.dev/docs/clients/javascript)`,\n\t\t{\n\t\t\tpublic: true,\n\t\t},\n\t);\n}\n\nexport function invalidRequest(error?: unknown): RivetError {\n\treturn new RivetError(\n\t\t\"request\",\n\t\t\"invalid\",\n\t\t`Invalid request: ${errorMessage(error, String(error))}`,\n\t\t{\n\t\t\tpublic: true,\n\t\t\tcause: error instanceof Error ? error : undefined,\n\t\t},\n\t);\n}\n\nexport function actorNotFound(identifier?: string): RivetError {\n\treturn new RivetError(\n\t\t\"actor\",\n\t\t\"not_found\",\n\t\tidentifier\n\t\t\t? `Actor not found: ${identifier} (https://www.rivet.dev/docs/clients/javascript)`\n\t\t\t: \"Actor not found (https://www.rivet.dev/docs/clients/javascript)\",\n\t\t{ public: true },\n\t);\n}\n\nexport function actorStopping(identifier?: string): RivetError {\n\treturn new RivetError(\n\t\t\"actor\",\n\t\t\"stopping\",\n\t\tidentifier ? `Actor stopping: ${identifier}` : \"Actor stopping\",\n\t\t{ public: true },\n\t);\n}\n\nexport interface ActorRestartingOptions {\n\tphase?: \"stopping\" | \"sleeping\" | \"waking\" | \"runner_shutdown\";\n\tretryAfterMs?: number;\n}\n\nexport function actorRestarting(opts?: ActorRestartingOptions): RivetError {\n\treturn new RivetError(\n\t\t\"actor\",\n\t\t\"restarting\",\n\t\t\"Actor is restarting. Retry the request.\",\n\t\t{\n\t\t\tpublic: true,\n\t\t\tstatusCode: 503,\n\t\t\tmetadata: {\n\t\t\t\tretryable: true,\n\t\t\t\t...(opts?.phase ? { phase: opts.phase } : {}),\n\t\t\t\t...(opts?.retryAfterMs !== undefined\n\t\t\t\t\t? { retryAfterMs: opts.retryAfterMs }\n\t\t\t\t\t: {}),\n\t\t\t},\n\t\t},\n\t);\n}\n\nexport function forbiddenError(): RivetError {\n\treturn new RivetError(\"auth\", \"forbidden\", \"Forbidden\", {\n\t\tpublic: true,\n\t\tstatusCode: 403,\n\t});\n}\n\nexport function unsupportedFeature(feature: string): RivetError {\n\treturn new RivetError(\n\t\t\"feature\",\n\t\t\"unsupported\",\n\t\t`Unsupported feature: ${feature}`,\n\t);\n}\n"],"mappings":"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","names":[]}
|
|
@@ -2,10 +2,10 @@ import {
|
|
|
2
2
|
ClientConfigSchema,
|
|
3
3
|
RemoteEngineControlClient,
|
|
4
4
|
createClientWithDriver
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-BK2JOGQQ.js";
|
|
6
6
|
import {
|
|
7
7
|
getLogger
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-YW75TS76.js";
|
|
9
9
|
|
|
10
10
|
// src/devtools-loader/log.ts
|
|
11
11
|
function logger() {
|
|
@@ -46,4 +46,4 @@ function createClient(endpointOrConfig) {
|
|
|
46
46
|
export {
|
|
47
47
|
createClient
|
|
48
48
|
};
|
|
49
|
-
//# sourceMappingURL=chunk-
|
|
49
|
+
//# sourceMappingURL=chunk-JZGMOEEI.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
bufferToArrayBuffer,
|
|
3
3
|
toUint8Array
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-YW75TS76.js";
|
|
5
5
|
|
|
6
6
|
// src/common/bare/transport/v1.ts
|
|
7
7
|
import * as bare from "@rivetkit/bare-ts";
|
|
@@ -593,4 +593,4 @@ export {
|
|
|
593
593
|
encodeWorkflowHistoryTransport,
|
|
594
594
|
decodeWorkflowHistoryTransport
|
|
595
595
|
};
|
|
596
|
-
//# sourceMappingURL=chunk-
|
|
596
|
+
//# sourceMappingURL=chunk-KPZQI3TG.js.map
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
} from "./chunk-JTHHCZCZ.js";
|
|
9
9
|
import {
|
|
10
10
|
getLogger
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-YW75TS76.js";
|
|
12
12
|
|
|
13
13
|
// src/common/database/mod.ts
|
|
14
14
|
var nativeStateTransactionOpeners = /* @__PURE__ */ new WeakMap();
|
|
@@ -240,4 +240,4 @@ export {
|
|
|
240
240
|
bindNativeStateTransactionContext,
|
|
241
241
|
db
|
|
242
242
|
};
|
|
243
|
-
//# sourceMappingURL=chunk-
|
|
243
|
+
//# sourceMappingURL=chunk-KRQI5GXM.js.map
|
|
@@ -4,7 +4,7 @@ var INTERNAL_ERROR_DESCRIPTION = "An internal error occurred";
|
|
|
4
4
|
var USER_ERROR_CODE = "user_error";
|
|
5
5
|
var BRIDGE_RIVET_ERROR_PREFIX = "__RIVET_ERROR_JSON__:";
|
|
6
6
|
function looksLikeRivetErrorOptions(value) {
|
|
7
|
-
return typeof value === "object" && value !== null && ("public" in value || "metadata" in value || "statusCode" in value || "actor" in value || "cause" in value);
|
|
7
|
+
return typeof value === "object" && value !== null && ("public" in value || "metadata" in value || "rayId" in value || "statusCode" in value || "actor" in value || "cause" in value);
|
|
8
8
|
}
|
|
9
9
|
function isTypedErrorTag(value) {
|
|
10
10
|
return value === "ActorError" || value === "RivetError";
|
|
@@ -16,7 +16,7 @@ function errorMessage(error, fallback = String(error)) {
|
|
|
16
16
|
return fallback;
|
|
17
17
|
}
|
|
18
18
|
function isRivetErrorLike(error) {
|
|
19
|
-
return typeof error === "object" && error !== null && "group" in error && typeof error.group === "string" && "code" in error && typeof error.code === "string" && "message" in error && typeof error.message === "string" && (!("__type" in error) || isTypedErrorTag(error.__type));
|
|
19
|
+
return typeof error === "object" && error !== null && "group" in error && typeof error.group === "string" && "code" in error && typeof error.code === "string" && "message" in error && typeof error.message === "string" && (!("rayId" in error) || error.rayId === void 0 || typeof error.rayId === "string") && (!("__type" in error) || isTypedErrorTag(error.__type));
|
|
20
20
|
}
|
|
21
21
|
function isActorAbortedError(error) {
|
|
22
22
|
return isRivetErrorLike(error) && error.group === "actor" && error.code === "aborted";
|
|
@@ -32,6 +32,7 @@ var RivetError = (_class = class extends Error {
|
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
|
|
35
|
+
|
|
35
36
|
static isRivetError(error) {
|
|
36
37
|
return isRivetErrorLike(error);
|
|
37
38
|
}
|
|
@@ -46,6 +47,7 @@ var RivetError = (_class = class extends Error {
|
|
|
46
47
|
this.code = code;
|
|
47
48
|
this.public = _nullishCoalesce(normalized.public, () => ( false));
|
|
48
49
|
this.metadata = normalized.metadata;
|
|
50
|
+
this.rayId = _nullishCoalesce(normalized.rayId, () => ( void 0));
|
|
49
51
|
this.statusCode = _nullishCoalesce(normalized.statusCode, () => ( (this.public ? 400 : 500)));
|
|
50
52
|
this.actor = normalized.actor;
|
|
51
53
|
}
|
|
@@ -80,6 +82,7 @@ function toRivetError(error, fallback) {
|
|
|
80
82
|
public: error.public,
|
|
81
83
|
statusCode: error.statusCode,
|
|
82
84
|
metadata: error.metadata,
|
|
85
|
+
rayId: error.rayId,
|
|
83
86
|
actor: error.actor,
|
|
84
87
|
cause: error instanceof Error ? error.cause : void 0
|
|
85
88
|
});
|
|
@@ -92,6 +95,7 @@ function toRivetError(error, fallback) {
|
|
|
92
95
|
public: fallback == null ? void 0 : fallback.public,
|
|
93
96
|
statusCode: fallback == null ? void 0 : fallback.statusCode,
|
|
94
97
|
metadata: fallback == null ? void 0 : fallback.metadata,
|
|
98
|
+
rayId: fallback == null ? void 0 : fallback.rayId,
|
|
95
99
|
actor: fallback == null ? void 0 : fallback.actor,
|
|
96
100
|
cause: error instanceof Error ? error : void 0
|
|
97
101
|
}
|
|
@@ -103,6 +107,7 @@ function encodeBridgeRivetError(error) {
|
|
|
103
107
|
code: error.code,
|
|
104
108
|
message: error.message,
|
|
105
109
|
metadata: error.metadata,
|
|
110
|
+
rayId: error.rayId,
|
|
106
111
|
public: error.public,
|
|
107
112
|
statusCode: error.statusCode,
|
|
108
113
|
actor: error.actor
|
|
@@ -113,9 +118,13 @@ function decodeBridgeRivetErrorPayload(value) {
|
|
|
113
118
|
return void 0;
|
|
114
119
|
}
|
|
115
120
|
try {
|
|
116
|
-
const
|
|
121
|
+
const raw = JSON.parse(
|
|
117
122
|
value.slice(BRIDGE_RIVET_ERROR_PREFIX.length)
|
|
118
123
|
);
|
|
124
|
+
const payload = {
|
|
125
|
+
...raw,
|
|
126
|
+
rayId: _nullishCoalesce(raw.rayId, () => ( void 0))
|
|
127
|
+
};
|
|
119
128
|
if (!isRivetErrorLike(payload)) {
|
|
120
129
|
return void 0;
|
|
121
130
|
}
|
|
@@ -134,6 +143,7 @@ function decodeBridgeRivetError(value) {
|
|
|
134
143
|
}
|
|
135
144
|
return new RivetError(payload.group, payload.code, payload.message, {
|
|
136
145
|
metadata: payload.metadata,
|
|
146
|
+
rayId: payload.rayId,
|
|
137
147
|
public: payload.public,
|
|
138
148
|
statusCode: payload.statusCode,
|
|
139
149
|
actor: _nullishCoalesce(payload.actor, () => ( void 0))
|
|
@@ -151,6 +161,7 @@ function internalError(message, options) {
|
|
|
151
161
|
public: options == null ? void 0 : options.public,
|
|
152
162
|
statusCode: options == null ? void 0 : options.statusCode,
|
|
153
163
|
metadata: options == null ? void 0 : options.metadata,
|
|
164
|
+
rayId: options == null ? void 0 : options.rayId,
|
|
154
165
|
actor: options == null ? void 0 : options.actor,
|
|
155
166
|
cause: options == null ? void 0 : options.cause
|
|
156
167
|
}
|
|
@@ -246,4 +257,4 @@ function unsupportedFeature(feature) {
|
|
|
246
257
|
|
|
247
258
|
|
|
248
259
|
exports.INTERNAL_ERROR_CODE = INTERNAL_ERROR_CODE; exports.INTERNAL_ERROR_DESCRIPTION = INTERNAL_ERROR_DESCRIPTION; exports.USER_ERROR_CODE = USER_ERROR_CODE; exports.BRIDGE_RIVET_ERROR_PREFIX = BRIDGE_RIVET_ERROR_PREFIX; exports.isRivetErrorLike = isRivetErrorLike; exports.isActorAbortedError = isActorAbortedError; exports.RivetError = RivetError; exports.UserError = UserError; exports.toRivetError = toRivetError; exports.encodeBridgeRivetError = encodeBridgeRivetError; exports.decodeBridgeRivetErrorPayload = decodeBridgeRivetErrorPayload; exports.decodeBridgeRivetError = decodeBridgeRivetError; exports.isRivetErrorCode = isRivetErrorCode; exports.internalError = internalError; exports.invalidEncoding = invalidEncoding; exports.invalidRequest = invalidRequest; exports.actorNotFound = actorNotFound; exports.actorStopping = actorStopping; exports.actorRestarting = actorRestarting; exports.forbiddenError = forbiddenError; exports.unsupportedFeature = unsupportedFeature;
|
|
249
|
-
//# sourceMappingURL=chunk-
|
|
260
|
+
//# sourceMappingURL=chunk-SPJORZMM.cjs.map
|