rivetkit 2.0.29-rc.1 → 2.0.29
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/tsup/{chunk-HXWPIIEM.js → chunk-2LOXTB3G.js} +2 -2
- package/dist/tsup/{chunk-2Q6FJITJ.cjs → chunk-3RJG3PC3.cjs} +3 -3
- package/dist/tsup/{chunk-2Q6FJITJ.cjs.map → chunk-3RJG3PC3.cjs.map} +1 -1
- package/dist/tsup/{chunk-CGIRSKRW.js → chunk-5IE76QRF.js} +3 -3
- package/dist/tsup/{chunk-XVBIJET6.cjs → chunk-72P7NQS4.cjs} +10 -10
- package/dist/tsup/{chunk-XVBIJET6.cjs.map → chunk-72P7NQS4.cjs.map} +1 -1
- package/dist/tsup/{chunk-BAEMOCS7.cjs → chunk-7DSWCOGX.cjs} +169 -169
- package/dist/tsup/chunk-7DSWCOGX.cjs.map +1 -0
- package/dist/tsup/{chunk-J74MGKP5.cjs → chunk-7XZX3T4D.cjs} +6 -6
- package/dist/tsup/{chunk-J74MGKP5.cjs.map → chunk-7XZX3T4D.cjs.map} +1 -1
- package/dist/tsup/{chunk-WUFUT7CZ.js → chunk-EWQE7L3V.js} +2 -2
- package/dist/tsup/{chunk-CHPLLKNL.js → chunk-FBPZAU3N.js} +79 -14
- package/dist/tsup/chunk-FBPZAU3N.js.map +1 -0
- package/dist/tsup/{chunk-SDJFBUFE.js → chunk-H27UUFLD.js} +9 -9
- package/dist/tsup/{chunk-AJ36VBHL.cjs → chunk-HK6QNZX3.cjs} +2 -2
- package/dist/tsup/chunk-HK6QNZX3.cjs.map +1 -0
- package/dist/tsup/{chunk-EVQJYFFP.js → chunk-KMOA3GQ2.js} +2 -2
- package/dist/tsup/{chunk-MG2TWYPF.cjs → chunk-MZ3SRIPM.cjs} +260 -195
- package/dist/tsup/chunk-MZ3SRIPM.cjs.map +1 -0
- package/dist/tsup/{chunk-SE37OCA2.cjs → chunk-MZCRC64W.cjs} +17 -17
- package/dist/tsup/{chunk-SE37OCA2.cjs.map → chunk-MZCRC64W.cjs.map} +1 -1
- package/dist/tsup/{chunk-5RN6O2RW.js → chunk-POJ4HHIO.js} +3 -3
- package/dist/tsup/chunk-POJ4HHIO.js.map +1 -0
- package/dist/tsup/{chunk-IRGPMCKQ.cjs → chunk-QB7FJ2OK.cjs} +15 -15
- package/dist/tsup/{chunk-IRGPMCKQ.cjs.map → chunk-QB7FJ2OK.cjs.map} +1 -1
- package/dist/tsup/{chunk-J3M5ATO5.cjs → chunk-UBBTSSAP.cjs} +3 -3
- package/dist/tsup/{chunk-J3M5ATO5.cjs.map → chunk-UBBTSSAP.cjs.map} +1 -1
- package/dist/tsup/{chunk-QT7PPLSB.cjs → chunk-UENID7AK.cjs} +6 -6
- package/dist/tsup/chunk-UENID7AK.cjs.map +1 -0
- package/dist/tsup/{chunk-EU7VV5PU.js → chunk-UJ6ETM45.js} +2 -2
- package/dist/tsup/{chunk-YJXB7BPR.js → chunk-WXLDDJCI.js} +2 -2
- package/dist/tsup/chunk-WXLDDJCI.js.map +1 -0
- package/dist/tsup/{chunk-QKDCNAPW.js → chunk-YPHTAWZP.js} +15 -15
- package/dist/tsup/chunk-YPHTAWZP.js.map +1 -0
- package/dist/tsup/client/mod.cjs +8 -8
- package/dist/tsup/client/mod.d.cts +2 -2
- package/dist/tsup/client/mod.d.ts +2 -2
- package/dist/tsup/client/mod.js +7 -7
- package/dist/tsup/common/log.cjs +2 -2
- package/dist/tsup/common/log.js +1 -1
- package/dist/tsup/common/websocket.cjs +3 -3
- package/dist/tsup/common/websocket.js +2 -2
- package/dist/tsup/{config-DxlmiJS1.d.cts → config-BEu-kmmR.d.cts} +32 -1
- package/dist/tsup/{config-CcMdKDv9.d.ts → config-DELCUYts.d.ts} +32 -1
- package/dist/tsup/driver-helpers/mod.cjs +4 -4
- package/dist/tsup/driver-helpers/mod.d.cts +1 -1
- package/dist/tsup/driver-helpers/mod.d.ts +1 -1
- package/dist/tsup/driver-helpers/mod.js +3 -3
- package/dist/tsup/driver-test-suite/mod.cjs +189 -71
- package/dist/tsup/driver-test-suite/mod.cjs.map +1 -1
- package/dist/tsup/driver-test-suite/mod.d.cts +1 -1
- package/dist/tsup/driver-test-suite/mod.d.ts +1 -1
- package/dist/tsup/driver-test-suite/mod.js +134 -16
- package/dist/tsup/driver-test-suite/mod.js.map +1 -1
- package/dist/tsup/inspector/mod.cjs +5 -5
- package/dist/tsup/inspector/mod.d.cts +2 -2
- package/dist/tsup/inspector/mod.d.ts +2 -2
- package/dist/tsup/inspector/mod.js +4 -4
- package/dist/tsup/mod.cjs +9 -9
- package/dist/tsup/mod.cjs.map +1 -1
- package/dist/tsup/mod.d.cts +2 -2
- package/dist/tsup/mod.d.ts +2 -2
- package/dist/tsup/mod.js +8 -8
- package/dist/tsup/test/mod.cjs +11 -11
- package/dist/tsup/test/mod.d.cts +1 -1
- package/dist/tsup/test/mod.d.ts +1 -1
- package/dist/tsup/test/mod.js +10 -10
- package/dist/tsup/utils.cjs +2 -2
- package/dist/tsup/utils.js +1 -1
- package/package.json +2 -2
- package/src/actor/mod.ts +2 -0
- package/src/client/actor-conn.ts +87 -0
- package/src/client/mod.ts +5 -1
- package/src/driver-test-suite/tests/actor-conn.ts +199 -0
- package/dist/tsup/chunk-5RN6O2RW.js.map +0 -1
- package/dist/tsup/chunk-AJ36VBHL.cjs.map +0 -1
- package/dist/tsup/chunk-BAEMOCS7.cjs.map +0 -1
- package/dist/tsup/chunk-CHPLLKNL.js.map +0 -1
- package/dist/tsup/chunk-MG2TWYPF.cjs.map +0 -1
- package/dist/tsup/chunk-QKDCNAPW.js.map +0 -1
- package/dist/tsup/chunk-QT7PPLSB.cjs.map +0 -1
- package/dist/tsup/chunk-YJXB7BPR.js.map +0 -1
- /package/dist/tsup/{chunk-HXWPIIEM.js.map → chunk-2LOXTB3G.js.map} +0 -0
- /package/dist/tsup/{chunk-CGIRSKRW.js.map → chunk-5IE76QRF.js.map} +0 -0
- /package/dist/tsup/{chunk-WUFUT7CZ.js.map → chunk-EWQE7L3V.js.map} +0 -0
- /package/dist/tsup/{chunk-SDJFBUFE.js.map → chunk-H27UUFLD.js.map} +0 -0
- /package/dist/tsup/{chunk-EVQJYFFP.js.map → chunk-KMOA3GQ2.js.map} +0 -0
- /package/dist/tsup/{chunk-EU7VV5PU.js.map → chunk-UJ6ETM45.js.map} +0 -0
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } }
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunk7XZX3T4Dcjs = require('./chunk-7XZX3T4D.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
var
|
|
9
|
+
var _chunkHK6QNZX3cjs = require('./chunk-HK6QNZX3.cjs');
|
|
10
10
|
|
|
11
11
|
// src/registry/run-config.ts
|
|
12
12
|
var _zod = require('zod'); var _zod2 = _interopRequireDefault(_zod);
|
|
@@ -19,15 +19,15 @@ var _zod = require('zod'); var _zod2 = _interopRequireDefault(_zod);
|
|
|
19
19
|
var ClientConfigSchema = _zod2.default.object({
|
|
20
20
|
/** Endpoint to connect to for Rivet Engine or RivetKit manager API. */
|
|
21
21
|
endpoint: _zod2.default.string().optional().transform(
|
|
22
|
-
(x) => _nullishCoalesce(_nullishCoalesce(x, () => (
|
|
22
|
+
(x) => _nullishCoalesce(_nullishCoalesce(x, () => ( _chunkHK6QNZX3cjs.getEnvUniversal.call(void 0, "RIVET_ENGINE"))), () => ( _chunkHK6QNZX3cjs.getEnvUniversal.call(void 0, "RIVET_ENDPOINT")))
|
|
23
23
|
),
|
|
24
24
|
/** Token to use to authenticate with the API. */
|
|
25
|
-
token: _zod2.default.string().optional().transform((x) => _nullishCoalesce(x, () => (
|
|
25
|
+
token: _zod2.default.string().optional().transform((x) => _nullishCoalesce(x, () => ( _chunkHK6QNZX3cjs.getEnvUniversal.call(void 0, "RIVET_TOKEN")))),
|
|
26
26
|
/** Namespace to connect to. */
|
|
27
|
-
namespace: _zod2.default.string().default(() => _nullishCoalesce(
|
|
27
|
+
namespace: _zod2.default.string().default(() => _nullishCoalesce(_chunkHK6QNZX3cjs.getEnvUniversal.call(void 0, "RIVET_NAMESPACE"), () => ( "default"))),
|
|
28
28
|
/** Name of the runner. This is used to group together runners in to different pools. */
|
|
29
|
-
runnerName: _zod2.default.string().default(() => _nullishCoalesce(
|
|
30
|
-
encoding:
|
|
29
|
+
runnerName: _zod2.default.string().default(() => _nullishCoalesce(_chunkHK6QNZX3cjs.getEnvUniversal.call(void 0, "RIVET_RUNNER"), () => ( "default"))),
|
|
30
|
+
encoding: _chunk7XZX3T4Dcjs.EncodingSchema.default("bare"),
|
|
31
31
|
headers: _zod2.default.record(_zod2.default.string(), _zod2.default.string()).optional().default(() => ({})),
|
|
32
32
|
// See RunConfig.getUpgradeWebSocket
|
|
33
33
|
getUpgradeWebSocket: _zod2.default.custom().optional(),
|
|
@@ -38,7 +38,7 @@ var ClientConfigSchema = _zod2.default.object({
|
|
|
38
38
|
// src/drivers/engine/config.ts
|
|
39
39
|
var EngineConfigSchemaBase = _zod.z.object({
|
|
40
40
|
/** Unique key for this runner. Runners connecting a given key will replace any other runner connected with the same key. */
|
|
41
|
-
runnerKey: _zod.z.string().optional().transform((x) => _nullishCoalesce(x, () => (
|
|
41
|
+
runnerKey: _zod.z.string().optional().transform((x) => _nullishCoalesce(x, () => ( _chunkHK6QNZX3cjs.getEnvUniversal.call(void 0, "RIVET_RUNNER_KEY")))),
|
|
42
42
|
/** How many actors this runner can run. */
|
|
43
43
|
totalSlots: _zod.z.number().default(1e5)
|
|
44
44
|
}).merge(ClientConfigSchema);
|
|
@@ -49,14 +49,14 @@ var EngingConfigSchema = EngineConfigSchemaBase.default(
|
|
|
49
49
|
// src/inspector/config.ts
|
|
50
50
|
|
|
51
51
|
var defaultTokenFn = () => {
|
|
52
|
-
const envToken =
|
|
52
|
+
const envToken = _chunkHK6QNZX3cjs.getEnvUniversal.call(void 0, "RIVETKIT_INSPECTOR_TOKEN");
|
|
53
53
|
if (envToken) {
|
|
54
54
|
return envToken;
|
|
55
55
|
}
|
|
56
56
|
return "";
|
|
57
57
|
};
|
|
58
58
|
var defaultEnabled = () => {
|
|
59
|
-
return
|
|
59
|
+
return _chunkHK6QNZX3cjs.getEnvUniversal.call(void 0, "NODE_ENV") !== "production" || !_chunkHK6QNZX3cjs.getEnvUniversal.call(void 0, "RIVETKIT_INSPECTOR_DISABLE");
|
|
60
60
|
};
|
|
61
61
|
var InspectorConfigSchema = _zod.z.object({
|
|
62
62
|
enabled: _zod.z.boolean().or(
|
|
@@ -98,10 +98,10 @@ var RunnerConfigSchemaUnmerged = _zod.z.object({
|
|
|
98
98
|
/** @experimental */
|
|
99
99
|
defaultServerPort: _zod.z.number().default(6420),
|
|
100
100
|
/** @experimental */
|
|
101
|
-
runEngine: _zod.z.boolean().optional().default(() =>
|
|
101
|
+
runEngine: _zod.z.boolean().optional().default(() => _chunkHK6QNZX3cjs.getEnvUniversal.call(void 0, "RIVET_RUN_ENGINE") === "1"),
|
|
102
102
|
/** @experimental */
|
|
103
103
|
runEngineVersion: _zod.z.string().optional().default(
|
|
104
|
-
() => _nullishCoalesce(
|
|
104
|
+
() => _nullishCoalesce(_chunkHK6QNZX3cjs.getEnvUniversal.call(void 0, "RIVET_RUN_ENGINE_VERSION"), () => ( _chunkHK6QNZX3cjs.VERSION))
|
|
105
105
|
),
|
|
106
106
|
/** @experimental */
|
|
107
107
|
overrideServerAddress: _zod.z.string().optional(),
|
|
@@ -114,7 +114,7 @@ var RunnerConfigSchemaUnmerged = _zod.z.object({
|
|
|
114
114
|
* serverlessly (by the Rivet Engine for example).
|
|
115
115
|
*/
|
|
116
116
|
runnerKind: _zod.z.enum(["serverless", "normal"]).optional().default(
|
|
117
|
-
() =>
|
|
117
|
+
() => _chunkHK6QNZX3cjs.getEnvUniversal.call(void 0, "RIVET_RUNNER_KIND") === "serverless" ? "serverless" : "normal"
|
|
118
118
|
),
|
|
119
119
|
totalSlots: _zod.z.number().optional(),
|
|
120
120
|
/**
|
|
@@ -136,7 +136,7 @@ var RunnerConfigSchemaUnmerged = _zod.z.object({
|
|
|
136
136
|
* */
|
|
137
137
|
logging: _zod.z.object({
|
|
138
138
|
baseLogger: _zod.z.custom().optional(),
|
|
139
|
-
level:
|
|
139
|
+
level: _chunkHK6QNZX3cjs.LogLevelSchema.optional()
|
|
140
140
|
}).optional().default(() => ({})),
|
|
141
141
|
/**
|
|
142
142
|
* @experimental
|
|
@@ -862,9 +862,9 @@ var CONN_VERSIONED = _vbare.createVersionedDataHandler.call(void 0, {
|
|
|
862
862
|
// src/driver-helpers/utils.ts
|
|
863
863
|
function serializeEmptyPersistData(input) {
|
|
864
864
|
const persistData = {
|
|
865
|
-
input: input !== void 0 ?
|
|
865
|
+
input: input !== void 0 ? _chunkHK6QNZX3cjs.bufferToArrayBuffer.call(void 0, cbor.encode(input)) : null,
|
|
866
866
|
hasInitialized: false,
|
|
867
|
-
state:
|
|
867
|
+
state: _chunkHK6QNZX3cjs.bufferToArrayBuffer.call(void 0, cbor.encode(void 0)),
|
|
868
868
|
scheduledEvents: []
|
|
869
869
|
};
|
|
870
870
|
return ACTOR_VERSIONED.serializeWithEmbeddedVersion(
|
|
@@ -888,4 +888,4 @@ function getInitialActorKvState(input) {
|
|
|
888
888
|
|
|
889
889
|
|
|
890
890
|
exports.CURRENT_VERSION = CURRENT_VERSION; exports.ACTOR_VERSIONED = ACTOR_VERSIONED; exports.CONN_VERSIONED = CONN_VERSIONED; exports.KEYS = KEYS; exports.makeConnKey = makeConnKey; exports.ClientConfigSchema = ClientConfigSchema; exports.DriverConfigSchema = DriverConfigSchema; exports.RunnerConfigSchema = RunnerConfigSchema; exports.getInitialActorKvState = getInitialActorKvState;
|
|
891
|
-
//# sourceMappingURL=chunk-
|
|
891
|
+
//# sourceMappingURL=chunk-MZCRC64W.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-SE37OCA2.cjs","../../src/registry/run-config.ts","../../src/drivers/engine/config.ts","../../src/client/config.ts","../../src/inspector/config.ts","../../src/driver-helpers/utils.ts","../../src/actor/instance/kv.ts","../../src/schemas/actor-persist/versioned.ts","../schemas/actor-persist/v1.ts","../schemas/actor-persist/v2.ts","../schemas/actor-persist/v3.ts"],"names":["z","config","readPersistedSubscription","writePersistedSubscription","read0","write0","read1","write1","readPersistedConnection","writePersistedConnection","readGenericPersistedScheduleEvent","writeGenericPersistedScheduleEvent","readPersistedScheduleEventKind","writePersistedScheduleEventKind","readPersistedScheduleEvent","writePersistedScheduleEvent","read2","write2","read3","write3","readPersistedActor","writePersistedActor","encodePersistedActor","decodePersistedActor"],"mappings":"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","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-SE37OCA2.cjs","sourcesContent":[null,"import type { Logger } from \"pino\";\nimport { z } from \"zod\";\nimport type { ActorDriverBuilder } from \"@/actor/driver\";\nimport { LogLevelSchema } from \"@/common/log\";\nimport { EngingConfigSchema as EngineConfigSchema } from \"@/drivers/engine/config\";\nimport { InspectorConfigSchema } from \"@/inspector/config\";\nimport type { ManagerDriverBuilder } from \"@/manager/driver\";\nimport type { GetUpgradeWebSocket } from \"@/utils\";\nimport { getEnvUniversal, VERSION } from \"@/utils\";\n\nexport const DriverConfigSchema = z.object({\n\t/** Machine-readable name to identify this driver by. */\n\tname: z.string(),\n\tmanager: z.custom<ManagerDriverBuilder>(),\n\tactor: z.custom<ActorDriverBuilder>(),\n});\n\nexport type DriverConfig = z.infer<typeof DriverConfigSchema>;\n\n/** Base config used for the actor config across all platforms. */\nconst RunnerConfigSchemaUnmerged = z\n\t.object({\n\t\tdriver: DriverConfigSchema.optional(),\n\n\t\t/** @experimental */\n\t\tmaxIncomingMessageSize: z.number().optional().default(65_536),\n\n\t\t/** @experimental */\n\t\tinspector: InspectorConfigSchema,\n\n\t\t/** @experimental */\n\t\tdisableDefaultServer: z.boolean().optional().default(false),\n\n\t\t/** @experimental */\n\t\tdefaultServerPort: z.number().default(6420),\n\n\t\t/** @experimental */\n\t\trunEngine: z\n\t\t\t.boolean()\n\t\t\t.optional()\n\t\t\t.default(() => getEnvUniversal(\"RIVET_RUN_ENGINE\") === \"1\"),\n\n\t\t/** @experimental */\n\t\trunEngineVersion: z\n\t\t\t.string()\n\t\t\t.optional()\n\t\t\t.default(\n\t\t\t\t() => getEnvUniversal(\"RIVET_RUN_ENGINE_VERSION\") ?? VERSION,\n\t\t\t),\n\n\t\t/** @experimental */\n\t\toverrideServerAddress: z.string().optional(),\n\n\t\t/** @experimental */\n\t\tdisableActorDriver: z.boolean().optional().default(false),\n\n\t\t/**\n\t\t * @experimental\n\t\t *\n\t\t * Whether to run runners normally or have them managed\n\t\t * serverlessly (by the Rivet Engine for example).\n\t\t */\n\t\trunnerKind: z\n\t\t\t.enum([\"serverless\", \"normal\"])\n\t\t\t.optional()\n\t\t\t.default(() =>\n\t\t\t\tgetEnvUniversal(\"RIVET_RUNNER_KIND\") === \"serverless\"\n\t\t\t\t\t? \"serverless\"\n\t\t\t\t\t: \"normal\",\n\t\t\t),\n\t\ttotalSlots: z.number().optional(),\n\n\t\t/**\n\t\t * @experimental\n\t\t *\n\t\t * Base path for the router. This is used to prefix all routes.\n\t\t * For example, if the base path is `/api`, then the route `/actors` will be\n\t\t * available at `/api/actors`.\n\t\t */\n\t\tbasePath: z.string().optional().default(\"/\"),\n\n\t\t/**\n\t\t * @experimental\n\t\t *\n\t\t * Disable welcome message.\n\t\t * */\n\t\tnoWelcome: z.boolean().optional().default(false),\n\n\t\t/**\n\t\t * @experimental\n\t\t * */\n\t\tlogging: z\n\t\t\t.object({\n\t\t\t\tbaseLogger: z.custom<Logger>().optional(),\n\t\t\t\tlevel: LogLevelSchema.optional(),\n\t\t\t})\n\t\t\t.optional()\n\t\t\t.default(() => ({})),\n\n\t\t/**\n\t\t * @experimental\n\t\t *\n\t\t * Automatically configure serverless runners in the engine.\n\t\t * Can only be used when runnerKind is \"serverless\".\n\t\t * If true, uses default configuration. Can also provide custom configuration.\n\t\t */\n\t\tautoConfigureServerless: z\n\t\t\t.union([\n\t\t\t\tz.boolean(),\n\t\t\t\tz.object({\n\t\t\t\t\turl: z.string().optional(),\n\t\t\t\t\theaders: z.record(z.string(), z.string()).optional(),\n\t\t\t\t\tmaxRunners: z.number().optional(),\n\t\t\t\t\tminRunners: z.number().optional(),\n\t\t\t\t\trequestLifespan: z.number().optional(),\n\t\t\t\t\trunnersMargin: z.number().optional(),\n\t\t\t\t\tslotsPerRunner: z.number().optional(),\n\t\t\t\t\tmetadata: z.record(z.string(), z.unknown()).optional(),\n\t\t\t\t}),\n\t\t\t])\n\t\t\t.optional(),\n\n\t\t// This is a function to allow for lazy configuration of upgradeWebSocket on the\n\t\t// fly. This is required since the dependencies that upgradeWebSocket\n\t\t// (specifically Node.js) can sometimes only be specified after the router is\n\t\t// created or must be imported async using `await import(...)`\n\t\tgetUpgradeWebSocket: z.custom<GetUpgradeWebSocket>().optional(),\n\t})\n\t.merge(EngineConfigSchema.removeDefault());\n\nconst RunnerConfigSchemaBase = RunnerConfigSchemaUnmerged;\nexport const RunnerConfigSchema = RunnerConfigSchemaBase.default(() =>\n\tRunnerConfigSchemaBase.parse({}),\n);\n\nexport type RunnerConfig = z.infer<typeof RunnerConfigSchema>;\nexport type RunnerConfigInput = z.input<typeof RunnerConfigSchema>;\n","import { z } from \"zod\";\nimport { ClientConfigSchema } from \"@/client/config\";\nimport { getEnvUniversal } from \"@/utils\";\n\nconst EngineConfigSchemaBase = z\n\t.object({\n\t\t/** Unique key for this runner. Runners connecting a given key will replace any other runner connected with the same key. */\n\t\trunnerKey: z\n\t\t\t.string()\n\t\t\t.optional()\n\t\t\t.transform((x) => x ?? getEnvUniversal(\"RIVET_RUNNER_KEY\")),\n\n\t\t/** How many actors this runner can run. */\n\t\ttotalSlots: z.number().default(100_000),\n\t})\n\t// We include the client config since this includes the common properties like endpoint, namespace, etc.\n\t.merge(ClientConfigSchema);\n\nexport const EngingConfigSchema = EngineConfigSchemaBase.default(() =>\n\tEngineConfigSchemaBase.parse({}),\n);\n\nexport type EngineConfig = z.infer<typeof EngingConfigSchema>;\nexport type EngineConfigInput = z.input<typeof EngingConfigSchema>;\n","import z from \"zod\";\nimport { EncodingSchema } from \"@/actor/protocol/serde\";\nimport { type GetUpgradeWebSocket, getEnvUniversal } from \"@/utils\";\n\nexport const ClientConfigSchema = z.object({\n\t/** Endpoint to connect to for Rivet Engine or RivetKit manager API. */\n\tendpoint: z\n\t\t.string()\n\t\t.optional()\n\t\t.transform(\n\t\t\t(x) =>\n\t\t\t\tx ??\n\t\t\t\tgetEnvUniversal(\"RIVET_ENGINE\") ??\n\t\t\t\tgetEnvUniversal(\"RIVET_ENDPOINT\"),\n\t\t),\n\n\t/** Token to use to authenticate with the API. */\n\ttoken: z\n\t\t.string()\n\t\t.optional()\n\t\t.transform((x) => x ?? getEnvUniversal(\"RIVET_TOKEN\")),\n\n\t/** Namespace to connect to. */\n\tnamespace: z\n\t\t.string()\n\t\t.default(() => getEnvUniversal(\"RIVET_NAMESPACE\") ?? \"default\"),\n\n\t/** Name of the runner. This is used to group together runners in to different pools. */\n\trunnerName: z\n\t\t.string()\n\t\t.default(() => getEnvUniversal(\"RIVET_RUNNER\") ?? \"default\"),\n\n\tencoding: EncodingSchema.default(\"bare\"),\n\n\theaders: z.record(z.string(), z.string()).optional().default(() => ({})),\n\n\t// See RunConfig.getUpgradeWebSocket\n\tgetUpgradeWebSocket: z.custom<GetUpgradeWebSocket>().optional(),\n\n\t/** Whether to automatically perform health checks when the client is created. */\n\tdisableMetadataLookup: z.boolean().optional().default(false),\n});\n\nexport type ClientConfig = z.infer<typeof ClientConfigSchema>;\n\nexport type ClientConfigInput = z.input<typeof ClientConfigSchema>;\n","import { z } from \"zod\";\nimport { getEnvUniversal } from \"@/utils\";\n\nconst defaultTokenFn = () => {\n\tconst envToken = getEnvUniversal(\"RIVETKIT_INSPECTOR_TOKEN\");\n\n\tif (envToken) {\n\t\treturn envToken;\n\t}\n\n\treturn \"\";\n};\n\nconst defaultEnabled = () => {\n\treturn (\n\t\tgetEnvUniversal(\"NODE_ENV\") !== \"production\" ||\n\t\t!getEnvUniversal(\"RIVETKIT_INSPECTOR_DISABLE\")\n\t);\n};\n\nexport const InspectorConfigSchema = z\n\t.object({\n\t\tenabled: z\n\t\t\t.boolean()\n\t\t\t.or(\n\t\t\t\tz.object({\n\t\t\t\t\tactor: z.boolean().optional().default(true),\n\t\t\t\t\tmanager: z.boolean().optional().default(true),\n\t\t\t\t}),\n\t\t\t)\n\t\t\t.optional()\n\t\t\t.default(defaultEnabled),\n\n\t\t/**\n\t\t * Token used to access the Inspector.\n\t\t */\n\t\ttoken: z\n\t\t\t.custom<() => string>()\n\t\t\t.optional()\n\t\t\t.default(() => defaultTokenFn),\n\n\t\t/**\n\t\t * Default RivetKit server endpoint for Rivet Inspector to connect to. This should be the same endpoint as what you use for your Rivet client to connect to RivetKit.\n\t\t *\n\t\t * This is a convenience property just for printing out the inspector URL.\n\t\t */\n\t\tdefaultEndpoint: z.string().optional(),\n\t})\n\t.optional()\n\t.default(() => ({\n\t\tenabled: defaultEnabled(),\n\t\ttoken: defaultTokenFn,\n\t}));\nexport type InspectorConfig = z.infer<typeof InspectorConfigSchema>;\n","import * as cbor from \"cbor-x\";\nimport { KEYS } from \"@/actor/instance/kv\";\nimport type * as persistSchema from \"@/schemas/actor-persist/mod\";\nimport {\n\tACTOR_VERSIONED,\n\tCURRENT_VERSION,\n} from \"@/schemas/actor-persist/versioned\";\nimport { bufferToArrayBuffer } from \"@/utils\";\nimport type { ActorDriver } from \"./mod\";\n\nfunction serializeEmptyPersistData(input: unknown | undefined): Uint8Array {\n\tconst persistData: persistSchema.Actor = {\n\t\tinput:\n\t\t\tinput !== undefined\n\t\t\t\t? bufferToArrayBuffer(cbor.encode(input))\n\t\t\t\t: null,\n\t\thasInitialized: false,\n\t\tstate: bufferToArrayBuffer(cbor.encode(undefined)),\n\t\tscheduledEvents: [],\n\t};\n\treturn ACTOR_VERSIONED.serializeWithEmbeddedVersion(\n\t\tpersistData,\n\t\tCURRENT_VERSION,\n\t);\n}\n\n/**\n * Returns the initial KV state for a new actor. This is ued by the drivers to\n * write the initial state in to KV storage before starting the actor.\n */\nexport function getInitialActorKvState(\n\tinput: unknown | undefined,\n): [Uint8Array, Uint8Array][] {\n\tconst persistData = serializeEmptyPersistData(input);\n\treturn [[KEYS.PERSIST_DATA, persistData]];\n}\n","export const KEYS = {\n\tPERSIST_DATA: Uint8Array.from([1]),\n\tCONN_PREFIX: Uint8Array.from([2]), // Prefix for connection keys\n\tINSPECTOR_TOKEN: Uint8Array.from([3]), // Inspector token key\n};\n\n// Helper to create a connection key\nexport function makeConnKey(connId: string): Uint8Array {\n\tconst encoder = new TextEncoder();\n\tconst connIdBytes = encoder.encode(connId);\n\tconst key = new Uint8Array(KEYS.CONN_PREFIX.length + connIdBytes.length);\n\tkey.set(KEYS.CONN_PREFIX, 0);\n\tkey.set(connIdBytes, KEYS.CONN_PREFIX.length);\n\treturn key;\n}\n","import { createVersionedDataHandler } from \"vbare\";\nimport * as v1 from \"../../../dist/schemas/actor-persist/v1\";\nimport * as v2 from \"../../../dist/schemas/actor-persist/v2\";\nimport * as v3 from \"../../../dist/schemas/actor-persist/v3\";\n\nexport const CURRENT_VERSION = 3;\n\n// Converter from v1 to v2\nconst v1ToV2 = (v1Data: v1.PersistedActor): v2.PersistedActor => ({\n\t...v1Data,\n\tconnections: v1Data.connections.map((conn) => ({\n\t\t...conn,\n\t\thibernatableRequestId: null,\n\t})),\n\thibernatableWebSockets: [],\n});\n\n// Converter from v2 to v3\nconst v2ToV3 = (v2Data: v2.PersistedActor): v3.Actor => {\n\t// Transform scheduled events from nested structure to flat structure\n\tconst scheduledEvents: v3.ScheduleEvent[] = v2Data.scheduledEvents.map(\n\t\t(event) => {\n\t\t\t// Extract action and args from the kind wrapper\n\t\t\tif (event.kind.tag === \"GenericPersistedScheduleEvent\") {\n\t\t\t\treturn {\n\t\t\t\t\teventId: event.eventId,\n\t\t\t\t\ttimestamp: event.timestamp,\n\t\t\t\t\taction: event.kind.val.action,\n\t\t\t\t\targs: event.kind.val.args,\n\t\t\t\t};\n\t\t\t}\n\t\t\t// Fallback for unknown kinds\n\t\t\tthrow new Error(`Unknown schedule event kind: ${event.kind.tag}`);\n\t\t},\n\t);\n\n\treturn {\n\t\tinput: v2Data.input,\n\t\thasInitialized: v2Data.hasInitialized,\n\t\tstate: v2Data.state,\n\t\tscheduledEvents,\n\t};\n};\n\n// Converter from v3 to v2\nconst v3ToV2 = (v3Data: v3.Actor): v2.PersistedActor => {\n\t// Transform scheduled events from flat structure back to nested structure\n\tconst scheduledEvents: v2.PersistedScheduleEvent[] = v3Data.scheduledEvents.map(\n\t\t(event) => ({\n\t\t\teventId: event.eventId,\n\t\t\ttimestamp: event.timestamp,\n\t\t\tkind: {\n\t\t\t\ttag: \"GenericPersistedScheduleEvent\" as const,\n\t\t\t\tval: {\n\t\t\t\t\taction: event.action,\n\t\t\t\t\targs: event.args,\n\t\t\t\t},\n\t\t\t},\n\t\t}),\n\t);\n\n\treturn {\n\t\tinput: v3Data.input,\n\t\thasInitialized: v3Data.hasInitialized,\n\t\tstate: v3Data.state,\n\t\tscheduledEvents,\n\t\tconnections: [],\n\t\thibernatableWebSockets: [],\n\t};\n};\n\n// Converter from v2 to v1\nconst v2ToV1 = (v2Data: v2.PersistedActor): v1.PersistedActor => {\n\treturn {\n\t\tinput: v2Data.input,\n\t\thasInitialized: v2Data.hasInitialized,\n\t\tstate: v2Data.state,\n\t\tscheduledEvents: v2Data.scheduledEvents,\n\t\tconnections: v2Data.connections.map((conn) => {\n\t\t\tconst { hibernatableRequestId, ...rest } = conn;\n\t\t\treturn rest;\n\t\t}),\n\t};\n};\n\nexport const ACTOR_VERSIONED = createVersionedDataHandler<v3.Actor>({\n\tdeserializeVersion: (bytes, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn v1.decodePersistedActor(bytes);\n\t\t\tcase 2:\n\t\t\t\treturn v2.decodePersistedActor(bytes);\n\t\t\tcase 3:\n\t\t\t\treturn v3.decodeActor(bytes);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown version ${version}`);\n\t\t}\n\t},\n\tserializeVersion: (data, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn v1.encodePersistedActor(data as v1.PersistedActor);\n\t\t\tcase 2:\n\t\t\t\treturn v2.encodePersistedActor(data as v2.PersistedActor);\n\t\t\tcase 3:\n\t\t\t\treturn v3.encodeActor(data as v3.Actor);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown version ${version}`);\n\t\t}\n\t},\n\tdeserializeConverters: () => [v1ToV2, v2ToV3],\n\tserializeConverters: () => [v3ToV2, v2ToV1],\n});\n\nexport const CONN_VERSIONED = createVersionedDataHandler<v3.Conn>({\n\tdeserializeVersion: (bytes, version) => {\n\t\tswitch (version) {\n\t\t\tcase 3:\n\t\t\t\treturn v3.decodeConn(bytes);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Conn type only exists in version 3+, got version ${version}`,\n\t\t\t\t);\n\t\t}\n\t},\n\tserializeVersion: (data, version) => {\n\t\tswitch (version) {\n\t\t\tcase 3:\n\t\t\t\treturn v3.encodeConn(data as v3.Conn);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Conn type only exists in version 3+, got version ${version}`,\n\t\t\t\t);\n\t\t}\n\t},\n\tdeserializeConverters: () => [],\n\tserializeConverters: () => [],\n});\n","import * as bare from \"@bare-ts/lib\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type u64 = bigint\n\nexport type PersistedSubscription = {\n readonly eventName: string,\n}\n\nexport function readPersistedSubscription(bc: bare.ByteCursor): PersistedSubscription {\n return {\n eventName: bare.readString(bc),\n }\n}\n\nexport function writePersistedSubscription(bc: bare.ByteCursor, x: PersistedSubscription): void {\n bare.writeString(bc, x.eventName)\n}\n\nfunction read0(bc: bare.ByteCursor): readonly PersistedSubscription[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedSubscription(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedSubscription(bc)\n }\n return result\n}\n\nfunction write0(bc: bare.ByteCursor, x: readonly PersistedSubscription[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedSubscription(bc, x[i])\n }\n}\n\nexport type PersistedConnection = {\n readonly id: string,\n readonly token: string,\n readonly parameters: ArrayBuffer,\n readonly state: ArrayBuffer,\n readonly subscriptions: readonly PersistedSubscription[],\n readonly lastSeen: u64,\n}\n\nexport function readPersistedConnection(bc: bare.ByteCursor): PersistedConnection {\n return {\n id: bare.readString(bc),\n token: bare.readString(bc),\n parameters: bare.readData(bc),\n state: bare.readData(bc),\n subscriptions: read0(bc),\n lastSeen: bare.readU64(bc),\n }\n}\n\nexport function writePersistedConnection(bc: bare.ByteCursor, x: PersistedConnection): void {\n bare.writeString(bc, x.id)\n bare.writeString(bc, x.token)\n bare.writeData(bc, x.parameters)\n bare.writeData(bc, x.state)\n write0(bc, x.subscriptions)\n bare.writeU64(bc, x.lastSeen)\n}\n\nfunction read1(bc: bare.ByteCursor): ArrayBuffer | null {\n return bare.readBool(bc)\n ? bare.readData(bc)\n : null\n}\n\nfunction write1(bc: bare.ByteCursor, x: ArrayBuffer | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n bare.writeData(bc, x)\n }\n}\n\nexport type GenericPersistedScheduleEvent = {\n readonly action: string,\n readonly args: ArrayBuffer | null,\n}\n\nexport function readGenericPersistedScheduleEvent(bc: bare.ByteCursor): GenericPersistedScheduleEvent {\n return {\n action: bare.readString(bc),\n args: read1(bc),\n }\n}\n\nexport function writeGenericPersistedScheduleEvent(bc: bare.ByteCursor, x: GenericPersistedScheduleEvent): void {\n bare.writeString(bc, x.action)\n write1(bc, x.args)\n}\n\nexport type PersistedScheduleEventKind =\n | { readonly tag: \"GenericPersistedScheduleEvent\", readonly val: GenericPersistedScheduleEvent }\n\nexport function readPersistedScheduleEventKind(bc: bare.ByteCursor): PersistedScheduleEventKind {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"GenericPersistedScheduleEvent\", val: readGenericPersistedScheduleEvent(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writePersistedScheduleEventKind(bc: bare.ByteCursor, x: PersistedScheduleEventKind): void {\n switch (x.tag) {\n case \"GenericPersistedScheduleEvent\": {\n bare.writeU8(bc, 0)\n writeGenericPersistedScheduleEvent(bc, x.val)\n break\n }\n }\n}\n\nexport type PersistedScheduleEvent = {\n readonly eventId: string,\n readonly timestamp: u64,\n readonly kind: PersistedScheduleEventKind,\n}\n\nexport function readPersistedScheduleEvent(bc: bare.ByteCursor): PersistedScheduleEvent {\n return {\n eventId: bare.readString(bc),\n timestamp: bare.readU64(bc),\n kind: readPersistedScheduleEventKind(bc),\n }\n}\n\nexport function writePersistedScheduleEvent(bc: bare.ByteCursor, x: PersistedScheduleEvent): void {\n bare.writeString(bc, x.eventId)\n bare.writeU64(bc, x.timestamp)\n writePersistedScheduleEventKind(bc, x.kind)\n}\n\nfunction read2(bc: bare.ByteCursor): readonly PersistedConnection[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedConnection(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedConnection(bc)\n }\n return result\n}\n\nfunction write2(bc: bare.ByteCursor, x: readonly PersistedConnection[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedConnection(bc, x[i])\n }\n}\n\nfunction read3(bc: bare.ByteCursor): readonly PersistedScheduleEvent[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedScheduleEvent(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedScheduleEvent(bc)\n }\n return result\n}\n\nfunction write3(bc: bare.ByteCursor, x: readonly PersistedScheduleEvent[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedScheduleEvent(bc, x[i])\n }\n}\n\nexport type PersistedActor = {\n readonly input: ArrayBuffer | null,\n readonly hasInitialized: boolean,\n readonly state: ArrayBuffer,\n readonly connections: readonly PersistedConnection[],\n readonly scheduledEvents: readonly PersistedScheduleEvent[],\n}\n\nexport function readPersistedActor(bc: bare.ByteCursor): PersistedActor {\n return {\n input: read1(bc),\n hasInitialized: bare.readBool(bc),\n state: bare.readData(bc),\n connections: read2(bc),\n scheduledEvents: read3(bc),\n }\n}\n\nexport function writePersistedActor(bc: bare.ByteCursor, x: PersistedActor): void {\n write1(bc, x.input)\n bare.writeBool(bc, x.hasInitialized)\n bare.writeData(bc, x.state)\n write2(bc, x.connections)\n write3(bc, x.scheduledEvents)\n}\n\nexport function encodePersistedActor(x: PersistedActor): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writePersistedActor(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodePersistedActor(bytes: Uint8Array): PersistedActor {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readPersistedActor(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n\n","import * as bare from \"@bare-ts/lib\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type i64 = bigint\n\nexport type PersistedSubscription = {\n readonly eventName: string,\n}\n\nexport function readPersistedSubscription(bc: bare.ByteCursor): PersistedSubscription {\n return {\n eventName: bare.readString(bc),\n }\n}\n\nexport function writePersistedSubscription(bc: bare.ByteCursor, x: PersistedSubscription): void {\n bare.writeString(bc, x.eventName)\n}\n\nfunction read0(bc: bare.ByteCursor): readonly PersistedSubscription[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedSubscription(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedSubscription(bc)\n }\n return result\n}\n\nfunction write0(bc: bare.ByteCursor, x: readonly PersistedSubscription[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedSubscription(bc, x[i])\n }\n}\n\nfunction read1(bc: bare.ByteCursor): ArrayBuffer | null {\n return bare.readBool(bc)\n ? bare.readData(bc)\n : null\n}\n\nfunction write1(bc: bare.ByteCursor, x: ArrayBuffer | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n bare.writeData(bc, x)\n }\n}\n\nexport type PersistedConnection = {\n readonly id: string,\n readonly token: string,\n readonly parameters: ArrayBuffer,\n readonly state: ArrayBuffer,\n readonly subscriptions: readonly PersistedSubscription[],\n readonly lastSeen: i64,\n readonly hibernatableRequestId: ArrayBuffer | null,\n}\n\nexport function readPersistedConnection(bc: bare.ByteCursor): PersistedConnection {\n return {\n id: bare.readString(bc),\n token: bare.readString(bc),\n parameters: bare.readData(bc),\n state: bare.readData(bc),\n subscriptions: read0(bc),\n lastSeen: bare.readI64(bc),\n hibernatableRequestId: read1(bc),\n }\n}\n\nexport function writePersistedConnection(bc: bare.ByteCursor, x: PersistedConnection): void {\n bare.writeString(bc, x.id)\n bare.writeString(bc, x.token)\n bare.writeData(bc, x.parameters)\n bare.writeData(bc, x.state)\n write0(bc, x.subscriptions)\n bare.writeI64(bc, x.lastSeen)\n write1(bc, x.hibernatableRequestId)\n}\n\nexport type GenericPersistedScheduleEvent = {\n readonly action: string,\n readonly args: ArrayBuffer | null,\n}\n\nexport function readGenericPersistedScheduleEvent(bc: bare.ByteCursor): GenericPersistedScheduleEvent {\n return {\n action: bare.readString(bc),\n args: read1(bc),\n }\n}\n\nexport function writeGenericPersistedScheduleEvent(bc: bare.ByteCursor, x: GenericPersistedScheduleEvent): void {\n bare.writeString(bc, x.action)\n write1(bc, x.args)\n}\n\nexport type PersistedScheduleEventKind =\n | { readonly tag: \"GenericPersistedScheduleEvent\", readonly val: GenericPersistedScheduleEvent }\n\nexport function readPersistedScheduleEventKind(bc: bare.ByteCursor): PersistedScheduleEventKind {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"GenericPersistedScheduleEvent\", val: readGenericPersistedScheduleEvent(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writePersistedScheduleEventKind(bc: bare.ByteCursor, x: PersistedScheduleEventKind): void {\n switch (x.tag) {\n case \"GenericPersistedScheduleEvent\": {\n bare.writeU8(bc, 0)\n writeGenericPersistedScheduleEvent(bc, x.val)\n break\n }\n }\n}\n\nexport type PersistedScheduleEvent = {\n readonly eventId: string,\n readonly timestamp: i64,\n readonly kind: PersistedScheduleEventKind,\n}\n\nexport function readPersistedScheduleEvent(bc: bare.ByteCursor): PersistedScheduleEvent {\n return {\n eventId: bare.readString(bc),\n timestamp: bare.readI64(bc),\n kind: readPersistedScheduleEventKind(bc),\n }\n}\n\nexport function writePersistedScheduleEvent(bc: bare.ByteCursor, x: PersistedScheduleEvent): void {\n bare.writeString(bc, x.eventId)\n bare.writeI64(bc, x.timestamp)\n writePersistedScheduleEventKind(bc, x.kind)\n}\n\nexport type PersistedHibernatableWebSocket = {\n readonly requestId: ArrayBuffer,\n readonly lastSeenTimestamp: i64,\n readonly msgIndex: i64,\n}\n\nexport function readPersistedHibernatableWebSocket(bc: bare.ByteCursor): PersistedHibernatableWebSocket {\n return {\n requestId: bare.readData(bc),\n lastSeenTimestamp: bare.readI64(bc),\n msgIndex: bare.readI64(bc),\n }\n}\n\nexport function writePersistedHibernatableWebSocket(bc: bare.ByteCursor, x: PersistedHibernatableWebSocket): void {\n bare.writeData(bc, x.requestId)\n bare.writeI64(bc, x.lastSeenTimestamp)\n bare.writeI64(bc, x.msgIndex)\n}\n\nfunction read2(bc: bare.ByteCursor): readonly PersistedConnection[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedConnection(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedConnection(bc)\n }\n return result\n}\n\nfunction write2(bc: bare.ByteCursor, x: readonly PersistedConnection[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedConnection(bc, x[i])\n }\n}\n\nfunction read3(bc: bare.ByteCursor): readonly PersistedScheduleEvent[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedScheduleEvent(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedScheduleEvent(bc)\n }\n return result\n}\n\nfunction write3(bc: bare.ByteCursor, x: readonly PersistedScheduleEvent[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedScheduleEvent(bc, x[i])\n }\n}\n\nfunction read4(bc: bare.ByteCursor): readonly PersistedHibernatableWebSocket[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedHibernatableWebSocket(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedHibernatableWebSocket(bc)\n }\n return result\n}\n\nfunction write4(bc: bare.ByteCursor, x: readonly PersistedHibernatableWebSocket[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedHibernatableWebSocket(bc, x[i])\n }\n}\n\nexport type PersistedActor = {\n readonly input: ArrayBuffer | null,\n readonly hasInitialized: boolean,\n readonly state: ArrayBuffer,\n readonly connections: readonly PersistedConnection[],\n readonly scheduledEvents: readonly PersistedScheduleEvent[],\n readonly hibernatableWebSockets: readonly PersistedHibernatableWebSocket[],\n}\n\nexport function readPersistedActor(bc: bare.ByteCursor): PersistedActor {\n return {\n input: read1(bc),\n hasInitialized: bare.readBool(bc),\n state: bare.readData(bc),\n connections: read2(bc),\n scheduledEvents: read3(bc),\n hibernatableWebSockets: read4(bc),\n }\n}\n\nexport function writePersistedActor(bc: bare.ByteCursor, x: PersistedActor): void {\n write1(bc, x.input)\n bare.writeBool(bc, x.hasInitialized)\n bare.writeData(bc, x.state)\n write2(bc, x.connections)\n write3(bc, x.scheduledEvents)\n write4(bc, x.hibernatableWebSockets)\n}\n\nexport function encodePersistedActor(x: PersistedActor): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writePersistedActor(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodePersistedActor(bytes: Uint8Array): PersistedActor {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readPersistedActor(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n\n","\nimport * as bare from \"@bare-ts/lib\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type i64 = bigint\nexport type u16 = number\n\nexport type GatewayId = ArrayBuffer\n\nexport function readGatewayId(bc: bare.ByteCursor): GatewayId {\n return bare.readFixedData(bc, 4)\n}\n\nexport function writeGatewayId(bc: bare.ByteCursor, x: GatewayId): void {\n assert(x.byteLength === 4)\n bare.writeFixedData(bc, x)\n}\n\nexport type RequestId = ArrayBuffer\n\nexport function readRequestId(bc: bare.ByteCursor): RequestId {\n return bare.readFixedData(bc, 4)\n}\n\nexport function writeRequestId(bc: bare.ByteCursor, x: RequestId): void {\n assert(x.byteLength === 4)\n bare.writeFixedData(bc, x)\n}\n\nexport type MessageIndex = u16\n\nexport function readMessageIndex(bc: bare.ByteCursor): MessageIndex {\n return bare.readU16(bc)\n}\n\nexport function writeMessageIndex(bc: bare.ByteCursor, x: MessageIndex): void {\n bare.writeU16(bc, x)\n}\n\nexport function encodeMessageIndex(x: MessageIndex): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeMessageIndex(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeMessageIndex(bytes: Uint8Array): MessageIndex {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readMessageIndex(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\nexport type Cbor = ArrayBuffer\n\nexport function readCbor(bc: bare.ByteCursor): Cbor {\n return bare.readData(bc)\n}\n\nexport function writeCbor(bc: bare.ByteCursor, x: Cbor): void {\n bare.writeData(bc, x)\n}\n\nexport type Subscription = {\n readonly eventName: string,\n}\n\nexport function readSubscription(bc: bare.ByteCursor): Subscription {\n return {\n eventName: bare.readString(bc),\n }\n}\n\nexport function writeSubscription(bc: bare.ByteCursor, x: Subscription): void {\n bare.writeString(bc, x.eventName)\n}\n\nfunction read0(bc: bare.ByteCursor): readonly Subscription[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readSubscription(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readSubscription(bc)\n }\n return result\n}\n\nfunction write0(bc: bare.ByteCursor, x: readonly Subscription[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeSubscription(bc, x[i])\n }\n}\n\nfunction read1(bc: bare.ByteCursor): ReadonlyMap<string, string> {\n const len = bare.readUintSafe(bc)\n const result = new Map<string, string>()\n for (let i = 0; i < len; i++) {\n const offset = bc.offset\n const key = bare.readString(bc)\n if (result.has(key)) {\n bc.offset = offset\n throw new bare.BareError(offset, \"duplicated key\")\n }\n result.set(key, bare.readString(bc))\n }\n return result\n}\n\nfunction write1(bc: bare.ByteCursor, x: ReadonlyMap<string, string>): void {\n bare.writeUintSafe(bc, x.size)\n for(const kv of x) {\n bare.writeString(bc, kv[0])\n bare.writeString(bc, kv[1])\n }\n}\n\nexport type Conn = {\n readonly id: string,\n readonly parameters: Cbor,\n readonly state: Cbor,\n readonly subscriptions: readonly Subscription[],\n readonly gatewayId: GatewayId,\n readonly requestId: RequestId,\n readonly serverMessageIndex: u16,\n readonly clientMessageIndex: u16,\n readonly requestPath: string,\n readonly requestHeaders: ReadonlyMap<string, string>,\n}\n\nexport function readConn(bc: bare.ByteCursor): Conn {\n return {\n id: bare.readString(bc),\n parameters: readCbor(bc),\n state: readCbor(bc),\n subscriptions: read0(bc),\n gatewayId: readGatewayId(bc),\n requestId: readRequestId(bc),\n serverMessageIndex: bare.readU16(bc),\n clientMessageIndex: bare.readU16(bc),\n requestPath: bare.readString(bc),\n requestHeaders: read1(bc),\n }\n}\n\nexport function writeConn(bc: bare.ByteCursor, x: Conn): void {\n bare.writeString(bc, x.id)\n writeCbor(bc, x.parameters)\n writeCbor(bc, x.state)\n write0(bc, x.subscriptions)\n writeGatewayId(bc, x.gatewayId)\n writeRequestId(bc, x.requestId)\n bare.writeU16(bc, x.serverMessageIndex)\n bare.writeU16(bc, x.clientMessageIndex)\n bare.writeString(bc, x.requestPath)\n write1(bc, x.requestHeaders)\n}\n\nexport function encodeConn(x: Conn): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeConn(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeConn(bytes: Uint8Array): Conn {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readConn(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\nfunction read2(bc: bare.ByteCursor): Cbor | null {\n return bare.readBool(bc)\n ? readCbor(bc)\n : null\n}\n\nfunction write2(bc: bare.ByteCursor, x: Cbor | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeCbor(bc, x)\n }\n}\n\nexport type ScheduleEvent = {\n readonly eventId: string,\n readonly timestamp: i64,\n readonly action: string,\n readonly args: Cbor | null,\n}\n\nexport function readScheduleEvent(bc: bare.ByteCursor): ScheduleEvent {\n return {\n eventId: bare.readString(bc),\n timestamp: bare.readI64(bc),\n action: bare.readString(bc),\n args: read2(bc),\n }\n}\n\nexport function writeScheduleEvent(bc: bare.ByteCursor, x: ScheduleEvent): void {\n bare.writeString(bc, x.eventId)\n bare.writeI64(bc, x.timestamp)\n bare.writeString(bc, x.action)\n write2(bc, x.args)\n}\n\nfunction read3(bc: bare.ByteCursor): readonly ScheduleEvent[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readScheduleEvent(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readScheduleEvent(bc)\n }\n return result\n}\n\nfunction write3(bc: bare.ByteCursor, x: readonly ScheduleEvent[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeScheduleEvent(bc, x[i])\n }\n}\n\nexport type Actor = {\n readonly input: Cbor | null,\n readonly hasInitialized: boolean,\n readonly state: Cbor,\n readonly scheduledEvents: readonly ScheduleEvent[],\n}\n\nexport function readActor(bc: bare.ByteCursor): Actor {\n return {\n input: read2(bc),\n hasInitialized: bare.readBool(bc),\n state: readCbor(bc),\n scheduledEvents: read3(bc),\n }\n}\n\nexport function writeActor(bc: bare.ByteCursor, x: Actor): void {\n write2(bc, x.input)\n bare.writeBool(bc, x.hasInitialized)\n writeCbor(bc, x.state)\n write3(bc, x.scheduledEvents)\n}\n\nexport function encodeActor(x: Actor): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeActor(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeActor(bytes: Uint8Array): Actor {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readActor(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n\n"]}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-MZCRC64W.cjs","../../src/registry/run-config.ts","../../src/drivers/engine/config.ts","../../src/client/config.ts","../../src/inspector/config.ts","../../src/driver-helpers/utils.ts","../../src/actor/instance/kv.ts","../../src/schemas/actor-persist/versioned.ts","../schemas/actor-persist/v1.ts","../schemas/actor-persist/v2.ts","../schemas/actor-persist/v3.ts"],"names":["z","config","readPersistedSubscription","writePersistedSubscription","read0","write0","read1","write1","readPersistedConnection","writePersistedConnection","readGenericPersistedScheduleEvent","writeGenericPersistedScheduleEvent","readPersistedScheduleEventKind","writePersistedScheduleEventKind","readPersistedScheduleEvent","writePersistedScheduleEvent","read2","write2","read3","write3","readPersistedActor","writePersistedActor","encodePersistedActor","decodePersistedActor"],"mappings":"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","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-MZCRC64W.cjs","sourcesContent":[null,"import type { Logger } from \"pino\";\nimport { z } from \"zod\";\nimport type { ActorDriverBuilder } from \"@/actor/driver\";\nimport { LogLevelSchema } from \"@/common/log\";\nimport { EngingConfigSchema as EngineConfigSchema } from \"@/drivers/engine/config\";\nimport { InspectorConfigSchema } from \"@/inspector/config\";\nimport type { ManagerDriverBuilder } from \"@/manager/driver\";\nimport type { GetUpgradeWebSocket } from \"@/utils\";\nimport { getEnvUniversal, VERSION } from \"@/utils\";\n\nexport const DriverConfigSchema = z.object({\n\t/** Machine-readable name to identify this driver by. */\n\tname: z.string(),\n\tmanager: z.custom<ManagerDriverBuilder>(),\n\tactor: z.custom<ActorDriverBuilder>(),\n});\n\nexport type DriverConfig = z.infer<typeof DriverConfigSchema>;\n\n/** Base config used for the actor config across all platforms. */\nconst RunnerConfigSchemaUnmerged = z\n\t.object({\n\t\tdriver: DriverConfigSchema.optional(),\n\n\t\t/** @experimental */\n\t\tmaxIncomingMessageSize: z.number().optional().default(65_536),\n\n\t\t/** @experimental */\n\t\tinspector: InspectorConfigSchema,\n\n\t\t/** @experimental */\n\t\tdisableDefaultServer: z.boolean().optional().default(false),\n\n\t\t/** @experimental */\n\t\tdefaultServerPort: z.number().default(6420),\n\n\t\t/** @experimental */\n\t\trunEngine: z\n\t\t\t.boolean()\n\t\t\t.optional()\n\t\t\t.default(() => getEnvUniversal(\"RIVET_RUN_ENGINE\") === \"1\"),\n\n\t\t/** @experimental */\n\t\trunEngineVersion: z\n\t\t\t.string()\n\t\t\t.optional()\n\t\t\t.default(\n\t\t\t\t() => getEnvUniversal(\"RIVET_RUN_ENGINE_VERSION\") ?? VERSION,\n\t\t\t),\n\n\t\t/** @experimental */\n\t\toverrideServerAddress: z.string().optional(),\n\n\t\t/** @experimental */\n\t\tdisableActorDriver: z.boolean().optional().default(false),\n\n\t\t/**\n\t\t * @experimental\n\t\t *\n\t\t * Whether to run runners normally or have them managed\n\t\t * serverlessly (by the Rivet Engine for example).\n\t\t */\n\t\trunnerKind: z\n\t\t\t.enum([\"serverless\", \"normal\"])\n\t\t\t.optional()\n\t\t\t.default(() =>\n\t\t\t\tgetEnvUniversal(\"RIVET_RUNNER_KIND\") === \"serverless\"\n\t\t\t\t\t? \"serverless\"\n\t\t\t\t\t: \"normal\",\n\t\t\t),\n\t\ttotalSlots: z.number().optional(),\n\n\t\t/**\n\t\t * @experimental\n\t\t *\n\t\t * Base path for the router. This is used to prefix all routes.\n\t\t * For example, if the base path is `/api`, then the route `/actors` will be\n\t\t * available at `/api/actors`.\n\t\t */\n\t\tbasePath: z.string().optional().default(\"/\"),\n\n\t\t/**\n\t\t * @experimental\n\t\t *\n\t\t * Disable welcome message.\n\t\t * */\n\t\tnoWelcome: z.boolean().optional().default(false),\n\n\t\t/**\n\t\t * @experimental\n\t\t * */\n\t\tlogging: z\n\t\t\t.object({\n\t\t\t\tbaseLogger: z.custom<Logger>().optional(),\n\t\t\t\tlevel: LogLevelSchema.optional(),\n\t\t\t})\n\t\t\t.optional()\n\t\t\t.default(() => ({})),\n\n\t\t/**\n\t\t * @experimental\n\t\t *\n\t\t * Automatically configure serverless runners in the engine.\n\t\t * Can only be used when runnerKind is \"serverless\".\n\t\t * If true, uses default configuration. Can also provide custom configuration.\n\t\t */\n\t\tautoConfigureServerless: z\n\t\t\t.union([\n\t\t\t\tz.boolean(),\n\t\t\t\tz.object({\n\t\t\t\t\turl: z.string().optional(),\n\t\t\t\t\theaders: z.record(z.string(), z.string()).optional(),\n\t\t\t\t\tmaxRunners: z.number().optional(),\n\t\t\t\t\tminRunners: z.number().optional(),\n\t\t\t\t\trequestLifespan: z.number().optional(),\n\t\t\t\t\trunnersMargin: z.number().optional(),\n\t\t\t\t\tslotsPerRunner: z.number().optional(),\n\t\t\t\t\tmetadata: z.record(z.string(), z.unknown()).optional(),\n\t\t\t\t}),\n\t\t\t])\n\t\t\t.optional(),\n\n\t\t// This is a function to allow for lazy configuration of upgradeWebSocket on the\n\t\t// fly. This is required since the dependencies that upgradeWebSocket\n\t\t// (specifically Node.js) can sometimes only be specified after the router is\n\t\t// created or must be imported async using `await import(...)`\n\t\tgetUpgradeWebSocket: z.custom<GetUpgradeWebSocket>().optional(),\n\t})\n\t.merge(EngineConfigSchema.removeDefault());\n\nconst RunnerConfigSchemaBase = RunnerConfigSchemaUnmerged;\nexport const RunnerConfigSchema = RunnerConfigSchemaBase.default(() =>\n\tRunnerConfigSchemaBase.parse({}),\n);\n\nexport type RunnerConfig = z.infer<typeof RunnerConfigSchema>;\nexport type RunnerConfigInput = z.input<typeof RunnerConfigSchema>;\n","import { z } from \"zod\";\nimport { ClientConfigSchema } from \"@/client/config\";\nimport { getEnvUniversal } from \"@/utils\";\n\nconst EngineConfigSchemaBase = z\n\t.object({\n\t\t/** Unique key for this runner. Runners connecting a given key will replace any other runner connected with the same key. */\n\t\trunnerKey: z\n\t\t\t.string()\n\t\t\t.optional()\n\t\t\t.transform((x) => x ?? getEnvUniversal(\"RIVET_RUNNER_KEY\")),\n\n\t\t/** How many actors this runner can run. */\n\t\ttotalSlots: z.number().default(100_000),\n\t})\n\t// We include the client config since this includes the common properties like endpoint, namespace, etc.\n\t.merge(ClientConfigSchema);\n\nexport const EngingConfigSchema = EngineConfigSchemaBase.default(() =>\n\tEngineConfigSchemaBase.parse({}),\n);\n\nexport type EngineConfig = z.infer<typeof EngingConfigSchema>;\nexport type EngineConfigInput = z.input<typeof EngingConfigSchema>;\n","import z from \"zod\";\nimport { EncodingSchema } from \"@/actor/protocol/serde\";\nimport { type GetUpgradeWebSocket, getEnvUniversal } from \"@/utils\";\n\nexport const ClientConfigSchema = z.object({\n\t/** Endpoint to connect to for Rivet Engine or RivetKit manager API. */\n\tendpoint: z\n\t\t.string()\n\t\t.optional()\n\t\t.transform(\n\t\t\t(x) =>\n\t\t\t\tx ??\n\t\t\t\tgetEnvUniversal(\"RIVET_ENGINE\") ??\n\t\t\t\tgetEnvUniversal(\"RIVET_ENDPOINT\"),\n\t\t),\n\n\t/** Token to use to authenticate with the API. */\n\ttoken: z\n\t\t.string()\n\t\t.optional()\n\t\t.transform((x) => x ?? getEnvUniversal(\"RIVET_TOKEN\")),\n\n\t/** Namespace to connect to. */\n\tnamespace: z\n\t\t.string()\n\t\t.default(() => getEnvUniversal(\"RIVET_NAMESPACE\") ?? \"default\"),\n\n\t/** Name of the runner. This is used to group together runners in to different pools. */\n\trunnerName: z\n\t\t.string()\n\t\t.default(() => getEnvUniversal(\"RIVET_RUNNER\") ?? \"default\"),\n\n\tencoding: EncodingSchema.default(\"bare\"),\n\n\theaders: z.record(z.string(), z.string()).optional().default(() => ({})),\n\n\t// See RunConfig.getUpgradeWebSocket\n\tgetUpgradeWebSocket: z.custom<GetUpgradeWebSocket>().optional(),\n\n\t/** Whether to automatically perform health checks when the client is created. */\n\tdisableMetadataLookup: z.boolean().optional().default(false),\n});\n\nexport type ClientConfig = z.infer<typeof ClientConfigSchema>;\n\nexport type ClientConfigInput = z.input<typeof ClientConfigSchema>;\n","import { z } from \"zod\";\nimport { getEnvUniversal } from \"@/utils\";\n\nconst defaultTokenFn = () => {\n\tconst envToken = getEnvUniversal(\"RIVETKIT_INSPECTOR_TOKEN\");\n\n\tif (envToken) {\n\t\treturn envToken;\n\t}\n\n\treturn \"\";\n};\n\nconst defaultEnabled = () => {\n\treturn (\n\t\tgetEnvUniversal(\"NODE_ENV\") !== \"production\" ||\n\t\t!getEnvUniversal(\"RIVETKIT_INSPECTOR_DISABLE\")\n\t);\n};\n\nexport const InspectorConfigSchema = z\n\t.object({\n\t\tenabled: z\n\t\t\t.boolean()\n\t\t\t.or(\n\t\t\t\tz.object({\n\t\t\t\t\tactor: z.boolean().optional().default(true),\n\t\t\t\t\tmanager: z.boolean().optional().default(true),\n\t\t\t\t}),\n\t\t\t)\n\t\t\t.optional()\n\t\t\t.default(defaultEnabled),\n\n\t\t/**\n\t\t * Token used to access the Inspector.\n\t\t */\n\t\ttoken: z\n\t\t\t.custom<() => string>()\n\t\t\t.optional()\n\t\t\t.default(() => defaultTokenFn),\n\n\t\t/**\n\t\t * Default RivetKit server endpoint for Rivet Inspector to connect to. This should be the same endpoint as what you use for your Rivet client to connect to RivetKit.\n\t\t *\n\t\t * This is a convenience property just for printing out the inspector URL.\n\t\t */\n\t\tdefaultEndpoint: z.string().optional(),\n\t})\n\t.optional()\n\t.default(() => ({\n\t\tenabled: defaultEnabled(),\n\t\ttoken: defaultTokenFn,\n\t}));\nexport type InspectorConfig = z.infer<typeof InspectorConfigSchema>;\n","import * as cbor from \"cbor-x\";\nimport { KEYS } from \"@/actor/instance/kv\";\nimport type * as persistSchema from \"@/schemas/actor-persist/mod\";\nimport {\n\tACTOR_VERSIONED,\n\tCURRENT_VERSION,\n} from \"@/schemas/actor-persist/versioned\";\nimport { bufferToArrayBuffer } from \"@/utils\";\nimport type { ActorDriver } from \"./mod\";\n\nfunction serializeEmptyPersistData(input: unknown | undefined): Uint8Array {\n\tconst persistData: persistSchema.Actor = {\n\t\tinput:\n\t\t\tinput !== undefined\n\t\t\t\t? bufferToArrayBuffer(cbor.encode(input))\n\t\t\t\t: null,\n\t\thasInitialized: false,\n\t\tstate: bufferToArrayBuffer(cbor.encode(undefined)),\n\t\tscheduledEvents: [],\n\t};\n\treturn ACTOR_VERSIONED.serializeWithEmbeddedVersion(\n\t\tpersistData,\n\t\tCURRENT_VERSION,\n\t);\n}\n\n/**\n * Returns the initial KV state for a new actor. This is ued by the drivers to\n * write the initial state in to KV storage before starting the actor.\n */\nexport function getInitialActorKvState(\n\tinput: unknown | undefined,\n): [Uint8Array, Uint8Array][] {\n\tconst persistData = serializeEmptyPersistData(input);\n\treturn [[KEYS.PERSIST_DATA, persistData]];\n}\n","export const KEYS = {\n\tPERSIST_DATA: Uint8Array.from([1]),\n\tCONN_PREFIX: Uint8Array.from([2]), // Prefix for connection keys\n\tINSPECTOR_TOKEN: Uint8Array.from([3]), // Inspector token key\n};\n\n// Helper to create a connection key\nexport function makeConnKey(connId: string): Uint8Array {\n\tconst encoder = new TextEncoder();\n\tconst connIdBytes = encoder.encode(connId);\n\tconst key = new Uint8Array(KEYS.CONN_PREFIX.length + connIdBytes.length);\n\tkey.set(KEYS.CONN_PREFIX, 0);\n\tkey.set(connIdBytes, KEYS.CONN_PREFIX.length);\n\treturn key;\n}\n","import { createVersionedDataHandler } from \"vbare\";\nimport * as v1 from \"../../../dist/schemas/actor-persist/v1\";\nimport * as v2 from \"../../../dist/schemas/actor-persist/v2\";\nimport * as v3 from \"../../../dist/schemas/actor-persist/v3\";\n\nexport const CURRENT_VERSION = 3;\n\n// Converter from v1 to v2\nconst v1ToV2 = (v1Data: v1.PersistedActor): v2.PersistedActor => ({\n\t...v1Data,\n\tconnections: v1Data.connections.map((conn) => ({\n\t\t...conn,\n\t\thibernatableRequestId: null,\n\t})),\n\thibernatableWebSockets: [],\n});\n\n// Converter from v2 to v3\nconst v2ToV3 = (v2Data: v2.PersistedActor): v3.Actor => {\n\t// Transform scheduled events from nested structure to flat structure\n\tconst scheduledEvents: v3.ScheduleEvent[] = v2Data.scheduledEvents.map(\n\t\t(event) => {\n\t\t\t// Extract action and args from the kind wrapper\n\t\t\tif (event.kind.tag === \"GenericPersistedScheduleEvent\") {\n\t\t\t\treturn {\n\t\t\t\t\teventId: event.eventId,\n\t\t\t\t\ttimestamp: event.timestamp,\n\t\t\t\t\taction: event.kind.val.action,\n\t\t\t\t\targs: event.kind.val.args,\n\t\t\t\t};\n\t\t\t}\n\t\t\t// Fallback for unknown kinds\n\t\t\tthrow new Error(`Unknown schedule event kind: ${event.kind.tag}`);\n\t\t},\n\t);\n\n\treturn {\n\t\tinput: v2Data.input,\n\t\thasInitialized: v2Data.hasInitialized,\n\t\tstate: v2Data.state,\n\t\tscheduledEvents,\n\t};\n};\n\n// Converter from v3 to v2\nconst v3ToV2 = (v3Data: v3.Actor): v2.PersistedActor => {\n\t// Transform scheduled events from flat structure back to nested structure\n\tconst scheduledEvents: v2.PersistedScheduleEvent[] = v3Data.scheduledEvents.map(\n\t\t(event) => ({\n\t\t\teventId: event.eventId,\n\t\t\ttimestamp: event.timestamp,\n\t\t\tkind: {\n\t\t\t\ttag: \"GenericPersistedScheduleEvent\" as const,\n\t\t\t\tval: {\n\t\t\t\t\taction: event.action,\n\t\t\t\t\targs: event.args,\n\t\t\t\t},\n\t\t\t},\n\t\t}),\n\t);\n\n\treturn {\n\t\tinput: v3Data.input,\n\t\thasInitialized: v3Data.hasInitialized,\n\t\tstate: v3Data.state,\n\t\tscheduledEvents,\n\t\tconnections: [],\n\t\thibernatableWebSockets: [],\n\t};\n};\n\n// Converter from v2 to v1\nconst v2ToV1 = (v2Data: v2.PersistedActor): v1.PersistedActor => {\n\treturn {\n\t\tinput: v2Data.input,\n\t\thasInitialized: v2Data.hasInitialized,\n\t\tstate: v2Data.state,\n\t\tscheduledEvents: v2Data.scheduledEvents,\n\t\tconnections: v2Data.connections.map((conn) => {\n\t\t\tconst { hibernatableRequestId, ...rest } = conn;\n\t\t\treturn rest;\n\t\t}),\n\t};\n};\n\nexport const ACTOR_VERSIONED = createVersionedDataHandler<v3.Actor>({\n\tdeserializeVersion: (bytes, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn v1.decodePersistedActor(bytes);\n\t\t\tcase 2:\n\t\t\t\treturn v2.decodePersistedActor(bytes);\n\t\t\tcase 3:\n\t\t\t\treturn v3.decodeActor(bytes);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown version ${version}`);\n\t\t}\n\t},\n\tserializeVersion: (data, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn v1.encodePersistedActor(data as v1.PersistedActor);\n\t\t\tcase 2:\n\t\t\t\treturn v2.encodePersistedActor(data as v2.PersistedActor);\n\t\t\tcase 3:\n\t\t\t\treturn v3.encodeActor(data as v3.Actor);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown version ${version}`);\n\t\t}\n\t},\n\tdeserializeConverters: () => [v1ToV2, v2ToV3],\n\tserializeConverters: () => [v3ToV2, v2ToV1],\n});\n\nexport const CONN_VERSIONED = createVersionedDataHandler<v3.Conn>({\n\tdeserializeVersion: (bytes, version) => {\n\t\tswitch (version) {\n\t\t\tcase 3:\n\t\t\t\treturn v3.decodeConn(bytes);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Conn type only exists in version 3+, got version ${version}`,\n\t\t\t\t);\n\t\t}\n\t},\n\tserializeVersion: (data, version) => {\n\t\tswitch (version) {\n\t\t\tcase 3:\n\t\t\t\treturn v3.encodeConn(data as v3.Conn);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Conn type only exists in version 3+, got version ${version}`,\n\t\t\t\t);\n\t\t}\n\t},\n\tdeserializeConverters: () => [],\n\tserializeConverters: () => [],\n});\n","import * as bare from \"@bare-ts/lib\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type u64 = bigint\n\nexport type PersistedSubscription = {\n readonly eventName: string,\n}\n\nexport function readPersistedSubscription(bc: bare.ByteCursor): PersistedSubscription {\n return {\n eventName: bare.readString(bc),\n }\n}\n\nexport function writePersistedSubscription(bc: bare.ByteCursor, x: PersistedSubscription): void {\n bare.writeString(bc, x.eventName)\n}\n\nfunction read0(bc: bare.ByteCursor): readonly PersistedSubscription[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedSubscription(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedSubscription(bc)\n }\n return result\n}\n\nfunction write0(bc: bare.ByteCursor, x: readonly PersistedSubscription[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedSubscription(bc, x[i])\n }\n}\n\nexport type PersistedConnection = {\n readonly id: string,\n readonly token: string,\n readonly parameters: ArrayBuffer,\n readonly state: ArrayBuffer,\n readonly subscriptions: readonly PersistedSubscription[],\n readonly lastSeen: u64,\n}\n\nexport function readPersistedConnection(bc: bare.ByteCursor): PersistedConnection {\n return {\n id: bare.readString(bc),\n token: bare.readString(bc),\n parameters: bare.readData(bc),\n state: bare.readData(bc),\n subscriptions: read0(bc),\n lastSeen: bare.readU64(bc),\n }\n}\n\nexport function writePersistedConnection(bc: bare.ByteCursor, x: PersistedConnection): void {\n bare.writeString(bc, x.id)\n bare.writeString(bc, x.token)\n bare.writeData(bc, x.parameters)\n bare.writeData(bc, x.state)\n write0(bc, x.subscriptions)\n bare.writeU64(bc, x.lastSeen)\n}\n\nfunction read1(bc: bare.ByteCursor): ArrayBuffer | null {\n return bare.readBool(bc)\n ? bare.readData(bc)\n : null\n}\n\nfunction write1(bc: bare.ByteCursor, x: ArrayBuffer | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n bare.writeData(bc, x)\n }\n}\n\nexport type GenericPersistedScheduleEvent = {\n readonly action: string,\n readonly args: ArrayBuffer | null,\n}\n\nexport function readGenericPersistedScheduleEvent(bc: bare.ByteCursor): GenericPersistedScheduleEvent {\n return {\n action: bare.readString(bc),\n args: read1(bc),\n }\n}\n\nexport function writeGenericPersistedScheduleEvent(bc: bare.ByteCursor, x: GenericPersistedScheduleEvent): void {\n bare.writeString(bc, x.action)\n write1(bc, x.args)\n}\n\nexport type PersistedScheduleEventKind =\n | { readonly tag: \"GenericPersistedScheduleEvent\", readonly val: GenericPersistedScheduleEvent }\n\nexport function readPersistedScheduleEventKind(bc: bare.ByteCursor): PersistedScheduleEventKind {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"GenericPersistedScheduleEvent\", val: readGenericPersistedScheduleEvent(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writePersistedScheduleEventKind(bc: bare.ByteCursor, x: PersistedScheduleEventKind): void {\n switch (x.tag) {\n case \"GenericPersistedScheduleEvent\": {\n bare.writeU8(bc, 0)\n writeGenericPersistedScheduleEvent(bc, x.val)\n break\n }\n }\n}\n\nexport type PersistedScheduleEvent = {\n readonly eventId: string,\n readonly timestamp: u64,\n readonly kind: PersistedScheduleEventKind,\n}\n\nexport function readPersistedScheduleEvent(bc: bare.ByteCursor): PersistedScheduleEvent {\n return {\n eventId: bare.readString(bc),\n timestamp: bare.readU64(bc),\n kind: readPersistedScheduleEventKind(bc),\n }\n}\n\nexport function writePersistedScheduleEvent(bc: bare.ByteCursor, x: PersistedScheduleEvent): void {\n bare.writeString(bc, x.eventId)\n bare.writeU64(bc, x.timestamp)\n writePersistedScheduleEventKind(bc, x.kind)\n}\n\nfunction read2(bc: bare.ByteCursor): readonly PersistedConnection[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedConnection(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedConnection(bc)\n }\n return result\n}\n\nfunction write2(bc: bare.ByteCursor, x: readonly PersistedConnection[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedConnection(bc, x[i])\n }\n}\n\nfunction read3(bc: bare.ByteCursor): readonly PersistedScheduleEvent[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedScheduleEvent(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedScheduleEvent(bc)\n }\n return result\n}\n\nfunction write3(bc: bare.ByteCursor, x: readonly PersistedScheduleEvent[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedScheduleEvent(bc, x[i])\n }\n}\n\nexport type PersistedActor = {\n readonly input: ArrayBuffer | null,\n readonly hasInitialized: boolean,\n readonly state: ArrayBuffer,\n readonly connections: readonly PersistedConnection[],\n readonly scheduledEvents: readonly PersistedScheduleEvent[],\n}\n\nexport function readPersistedActor(bc: bare.ByteCursor): PersistedActor {\n return {\n input: read1(bc),\n hasInitialized: bare.readBool(bc),\n state: bare.readData(bc),\n connections: read2(bc),\n scheduledEvents: read3(bc),\n }\n}\n\nexport function writePersistedActor(bc: bare.ByteCursor, x: PersistedActor): void {\n write1(bc, x.input)\n bare.writeBool(bc, x.hasInitialized)\n bare.writeData(bc, x.state)\n write2(bc, x.connections)\n write3(bc, x.scheduledEvents)\n}\n\nexport function encodePersistedActor(x: PersistedActor): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writePersistedActor(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodePersistedActor(bytes: Uint8Array): PersistedActor {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readPersistedActor(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n\n","import * as bare from \"@bare-ts/lib\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type i64 = bigint\n\nexport type PersistedSubscription = {\n readonly eventName: string,\n}\n\nexport function readPersistedSubscription(bc: bare.ByteCursor): PersistedSubscription {\n return {\n eventName: bare.readString(bc),\n }\n}\n\nexport function writePersistedSubscription(bc: bare.ByteCursor, x: PersistedSubscription): void {\n bare.writeString(bc, x.eventName)\n}\n\nfunction read0(bc: bare.ByteCursor): readonly PersistedSubscription[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedSubscription(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedSubscription(bc)\n }\n return result\n}\n\nfunction write0(bc: bare.ByteCursor, x: readonly PersistedSubscription[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedSubscription(bc, x[i])\n }\n}\n\nfunction read1(bc: bare.ByteCursor): ArrayBuffer | null {\n return bare.readBool(bc)\n ? bare.readData(bc)\n : null\n}\n\nfunction write1(bc: bare.ByteCursor, x: ArrayBuffer | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n bare.writeData(bc, x)\n }\n}\n\nexport type PersistedConnection = {\n readonly id: string,\n readonly token: string,\n readonly parameters: ArrayBuffer,\n readonly state: ArrayBuffer,\n readonly subscriptions: readonly PersistedSubscription[],\n readonly lastSeen: i64,\n readonly hibernatableRequestId: ArrayBuffer | null,\n}\n\nexport function readPersistedConnection(bc: bare.ByteCursor): PersistedConnection {\n return {\n id: bare.readString(bc),\n token: bare.readString(bc),\n parameters: bare.readData(bc),\n state: bare.readData(bc),\n subscriptions: read0(bc),\n lastSeen: bare.readI64(bc),\n hibernatableRequestId: read1(bc),\n }\n}\n\nexport function writePersistedConnection(bc: bare.ByteCursor, x: PersistedConnection): void {\n bare.writeString(bc, x.id)\n bare.writeString(bc, x.token)\n bare.writeData(bc, x.parameters)\n bare.writeData(bc, x.state)\n write0(bc, x.subscriptions)\n bare.writeI64(bc, x.lastSeen)\n write1(bc, x.hibernatableRequestId)\n}\n\nexport type GenericPersistedScheduleEvent = {\n readonly action: string,\n readonly args: ArrayBuffer | null,\n}\n\nexport function readGenericPersistedScheduleEvent(bc: bare.ByteCursor): GenericPersistedScheduleEvent {\n return {\n action: bare.readString(bc),\n args: read1(bc),\n }\n}\n\nexport function writeGenericPersistedScheduleEvent(bc: bare.ByteCursor, x: GenericPersistedScheduleEvent): void {\n bare.writeString(bc, x.action)\n write1(bc, x.args)\n}\n\nexport type PersistedScheduleEventKind =\n | { readonly tag: \"GenericPersistedScheduleEvent\", readonly val: GenericPersistedScheduleEvent }\n\nexport function readPersistedScheduleEventKind(bc: bare.ByteCursor): PersistedScheduleEventKind {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"GenericPersistedScheduleEvent\", val: readGenericPersistedScheduleEvent(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writePersistedScheduleEventKind(bc: bare.ByteCursor, x: PersistedScheduleEventKind): void {\n switch (x.tag) {\n case \"GenericPersistedScheduleEvent\": {\n bare.writeU8(bc, 0)\n writeGenericPersistedScheduleEvent(bc, x.val)\n break\n }\n }\n}\n\nexport type PersistedScheduleEvent = {\n readonly eventId: string,\n readonly timestamp: i64,\n readonly kind: PersistedScheduleEventKind,\n}\n\nexport function readPersistedScheduleEvent(bc: bare.ByteCursor): PersistedScheduleEvent {\n return {\n eventId: bare.readString(bc),\n timestamp: bare.readI64(bc),\n kind: readPersistedScheduleEventKind(bc),\n }\n}\n\nexport function writePersistedScheduleEvent(bc: bare.ByteCursor, x: PersistedScheduleEvent): void {\n bare.writeString(bc, x.eventId)\n bare.writeI64(bc, x.timestamp)\n writePersistedScheduleEventKind(bc, x.kind)\n}\n\nexport type PersistedHibernatableWebSocket = {\n readonly requestId: ArrayBuffer,\n readonly lastSeenTimestamp: i64,\n readonly msgIndex: i64,\n}\n\nexport function readPersistedHibernatableWebSocket(bc: bare.ByteCursor): PersistedHibernatableWebSocket {\n return {\n requestId: bare.readData(bc),\n lastSeenTimestamp: bare.readI64(bc),\n msgIndex: bare.readI64(bc),\n }\n}\n\nexport function writePersistedHibernatableWebSocket(bc: bare.ByteCursor, x: PersistedHibernatableWebSocket): void {\n bare.writeData(bc, x.requestId)\n bare.writeI64(bc, x.lastSeenTimestamp)\n bare.writeI64(bc, x.msgIndex)\n}\n\nfunction read2(bc: bare.ByteCursor): readonly PersistedConnection[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedConnection(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedConnection(bc)\n }\n return result\n}\n\nfunction write2(bc: bare.ByteCursor, x: readonly PersistedConnection[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedConnection(bc, x[i])\n }\n}\n\nfunction read3(bc: bare.ByteCursor): readonly PersistedScheduleEvent[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedScheduleEvent(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedScheduleEvent(bc)\n }\n return result\n}\n\nfunction write3(bc: bare.ByteCursor, x: readonly PersistedScheduleEvent[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedScheduleEvent(bc, x[i])\n }\n}\n\nfunction read4(bc: bare.ByteCursor): readonly PersistedHibernatableWebSocket[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readPersistedHibernatableWebSocket(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readPersistedHibernatableWebSocket(bc)\n }\n return result\n}\n\nfunction write4(bc: bare.ByteCursor, x: readonly PersistedHibernatableWebSocket[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writePersistedHibernatableWebSocket(bc, x[i])\n }\n}\n\nexport type PersistedActor = {\n readonly input: ArrayBuffer | null,\n readonly hasInitialized: boolean,\n readonly state: ArrayBuffer,\n readonly connections: readonly PersistedConnection[],\n readonly scheduledEvents: readonly PersistedScheduleEvent[],\n readonly hibernatableWebSockets: readonly PersistedHibernatableWebSocket[],\n}\n\nexport function readPersistedActor(bc: bare.ByteCursor): PersistedActor {\n return {\n input: read1(bc),\n hasInitialized: bare.readBool(bc),\n state: bare.readData(bc),\n connections: read2(bc),\n scheduledEvents: read3(bc),\n hibernatableWebSockets: read4(bc),\n }\n}\n\nexport function writePersistedActor(bc: bare.ByteCursor, x: PersistedActor): void {\n write1(bc, x.input)\n bare.writeBool(bc, x.hasInitialized)\n bare.writeData(bc, x.state)\n write2(bc, x.connections)\n write3(bc, x.scheduledEvents)\n write4(bc, x.hibernatableWebSockets)\n}\n\nexport function encodePersistedActor(x: PersistedActor): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writePersistedActor(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodePersistedActor(bytes: Uint8Array): PersistedActor {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readPersistedActor(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n\n","\nimport * as bare from \"@bare-ts/lib\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type i64 = bigint\nexport type u16 = number\n\nexport type GatewayId = ArrayBuffer\n\nexport function readGatewayId(bc: bare.ByteCursor): GatewayId {\n return bare.readFixedData(bc, 4)\n}\n\nexport function writeGatewayId(bc: bare.ByteCursor, x: GatewayId): void {\n assert(x.byteLength === 4)\n bare.writeFixedData(bc, x)\n}\n\nexport type RequestId = ArrayBuffer\n\nexport function readRequestId(bc: bare.ByteCursor): RequestId {\n return bare.readFixedData(bc, 4)\n}\n\nexport function writeRequestId(bc: bare.ByteCursor, x: RequestId): void {\n assert(x.byteLength === 4)\n bare.writeFixedData(bc, x)\n}\n\nexport type MessageIndex = u16\n\nexport function readMessageIndex(bc: bare.ByteCursor): MessageIndex {\n return bare.readU16(bc)\n}\n\nexport function writeMessageIndex(bc: bare.ByteCursor, x: MessageIndex): void {\n bare.writeU16(bc, x)\n}\n\nexport function encodeMessageIndex(x: MessageIndex): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeMessageIndex(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeMessageIndex(bytes: Uint8Array): MessageIndex {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readMessageIndex(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\nexport type Cbor = ArrayBuffer\n\nexport function readCbor(bc: bare.ByteCursor): Cbor {\n return bare.readData(bc)\n}\n\nexport function writeCbor(bc: bare.ByteCursor, x: Cbor): void {\n bare.writeData(bc, x)\n}\n\nexport type Subscription = {\n readonly eventName: string,\n}\n\nexport function readSubscription(bc: bare.ByteCursor): Subscription {\n return {\n eventName: bare.readString(bc),\n }\n}\n\nexport function writeSubscription(bc: bare.ByteCursor, x: Subscription): void {\n bare.writeString(bc, x.eventName)\n}\n\nfunction read0(bc: bare.ByteCursor): readonly Subscription[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readSubscription(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readSubscription(bc)\n }\n return result\n}\n\nfunction write0(bc: bare.ByteCursor, x: readonly Subscription[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeSubscription(bc, x[i])\n }\n}\n\nfunction read1(bc: bare.ByteCursor): ReadonlyMap<string, string> {\n const len = bare.readUintSafe(bc)\n const result = new Map<string, string>()\n for (let i = 0; i < len; i++) {\n const offset = bc.offset\n const key = bare.readString(bc)\n if (result.has(key)) {\n bc.offset = offset\n throw new bare.BareError(offset, \"duplicated key\")\n }\n result.set(key, bare.readString(bc))\n }\n return result\n}\n\nfunction write1(bc: bare.ByteCursor, x: ReadonlyMap<string, string>): void {\n bare.writeUintSafe(bc, x.size)\n for(const kv of x) {\n bare.writeString(bc, kv[0])\n bare.writeString(bc, kv[1])\n }\n}\n\nexport type Conn = {\n readonly id: string,\n readonly parameters: Cbor,\n readonly state: Cbor,\n readonly subscriptions: readonly Subscription[],\n readonly gatewayId: GatewayId,\n readonly requestId: RequestId,\n readonly serverMessageIndex: u16,\n readonly clientMessageIndex: u16,\n readonly requestPath: string,\n readonly requestHeaders: ReadonlyMap<string, string>,\n}\n\nexport function readConn(bc: bare.ByteCursor): Conn {\n return {\n id: bare.readString(bc),\n parameters: readCbor(bc),\n state: readCbor(bc),\n subscriptions: read0(bc),\n gatewayId: readGatewayId(bc),\n requestId: readRequestId(bc),\n serverMessageIndex: bare.readU16(bc),\n clientMessageIndex: bare.readU16(bc),\n requestPath: bare.readString(bc),\n requestHeaders: read1(bc),\n }\n}\n\nexport function writeConn(bc: bare.ByteCursor, x: Conn): void {\n bare.writeString(bc, x.id)\n writeCbor(bc, x.parameters)\n writeCbor(bc, x.state)\n write0(bc, x.subscriptions)\n writeGatewayId(bc, x.gatewayId)\n writeRequestId(bc, x.requestId)\n bare.writeU16(bc, x.serverMessageIndex)\n bare.writeU16(bc, x.clientMessageIndex)\n bare.writeString(bc, x.requestPath)\n write1(bc, x.requestHeaders)\n}\n\nexport function encodeConn(x: Conn): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeConn(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeConn(bytes: Uint8Array): Conn {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readConn(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\nfunction read2(bc: bare.ByteCursor): Cbor | null {\n return bare.readBool(bc)\n ? readCbor(bc)\n : null\n}\n\nfunction write2(bc: bare.ByteCursor, x: Cbor | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeCbor(bc, x)\n }\n}\n\nexport type ScheduleEvent = {\n readonly eventId: string,\n readonly timestamp: i64,\n readonly action: string,\n readonly args: Cbor | null,\n}\n\nexport function readScheduleEvent(bc: bare.ByteCursor): ScheduleEvent {\n return {\n eventId: bare.readString(bc),\n timestamp: bare.readI64(bc),\n action: bare.readString(bc),\n args: read2(bc),\n }\n}\n\nexport function writeScheduleEvent(bc: bare.ByteCursor, x: ScheduleEvent): void {\n bare.writeString(bc, x.eventId)\n bare.writeI64(bc, x.timestamp)\n bare.writeString(bc, x.action)\n write2(bc, x.args)\n}\n\nfunction read3(bc: bare.ByteCursor): readonly ScheduleEvent[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readScheduleEvent(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readScheduleEvent(bc)\n }\n return result\n}\n\nfunction write3(bc: bare.ByteCursor, x: readonly ScheduleEvent[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeScheduleEvent(bc, x[i])\n }\n}\n\nexport type Actor = {\n readonly input: Cbor | null,\n readonly hasInitialized: boolean,\n readonly state: Cbor,\n readonly scheduledEvents: readonly ScheduleEvent[],\n}\n\nexport function readActor(bc: bare.ByteCursor): Actor {\n return {\n input: read2(bc),\n hasInitialized: bare.readBool(bc),\n state: readCbor(bc),\n scheduledEvents: read3(bc),\n }\n}\n\nexport function writeActor(bc: bare.ByteCursor, x: Actor): void {\n write2(bc, x.input)\n bare.writeBool(bc, x.hasInitialized)\n writeCbor(bc, x.state)\n write3(bc, x.scheduledEvents)\n}\n\nexport function encodeActor(x: Actor): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeActor(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeActor(bytes: Uint8Array): Actor {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readActor(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n\n"]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
RemoteManagerDriver,
|
|
3
3
|
createClientWithDriver
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-FBPZAU3N.js";
|
|
5
5
|
import {
|
|
6
6
|
ClientConfigSchema
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-5IE76QRF.js";
|
|
8
8
|
|
|
9
9
|
// src/client/mod.ts
|
|
10
10
|
function createClient(endpointOrConfig) {
|
|
@@ -17,4 +17,4 @@ function createClient(endpointOrConfig) {
|
|
|
17
17
|
export {
|
|
18
18
|
createClient
|
|
19
19
|
};
|
|
20
|
-
//# sourceMappingURL=chunk-
|
|
20
|
+
//# sourceMappingURL=chunk-POJ4HHIO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/client/mod.ts"],"sourcesContent":["import type { Registry } from \"@/registry/mod\";\nimport { RemoteManagerDriver } from \"@/remote-manager-driver/mod\";\nimport {\n\ttype Client,\n\ttype ClientConfigInput,\n\tcreateClientWithDriver,\n} from \"./client\";\nimport { ClientConfigSchema } from \"./config\";\n\nexport {\n\tActorDefinition,\n\tAnyActorDefinition,\n} from \"@/actor/definition\";\nexport type { Encoding } from \"@/actor/protocol/serde\";\nexport {\n\tActorClientError,\n\tActorError,\n\tInternalError,\n\tMalformedResponseMessage,\n\tManagerError,\n} from \"@/client/errors\";\nexport type { CreateRequest } from \"@/manager/protocol/query\";\nexport type { ActorActionFunction } from \"./actor-common\";\nexport type {\n\tActorConn,\n\tConnectionStateCallback,\n\tEventUnsubscribe,\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\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 RemoteManagerDriver(config);\n\treturn createClientWithDriver<A>(driver, config);\n}\n"],"mappings":";;;;;;;;;AA+CO,SAAS,aACf,kBACY;AAEZ,QAAM,cACL,qBAAqB,SAClB,CAAC,IACD,OAAO,qBAAqB,WAC3B,EAAE,UAAU,iBAAiB,IAC7B;AACL,QAAM,SAAS,mBAAmB,MAAM,WAAW;AAGnD,QAAM,SAAS,IAAI,oBAAoB,MAAM;AAC7C,SAAO,uBAA0B,QAAQ,MAAM;AAChD;","names":[]}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var _chunk7DSWCOGXcjs = require('./chunk-7DSWCOGX.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunkUENID7AKcjs = require('./chunk-UENID7AK.cjs');
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _chunkMZ3SRIPMcjs = require('./chunk-MZ3SRIPM.cjs');
|
|
11
11
|
|
|
12
12
|
|
|
13
|
-
var _chunkMG2TWYPFcjs = require('./chunk-MG2TWYPF.cjs');
|
|
14
13
|
|
|
14
|
+
var _chunkMZCRC64Wcjs = require('./chunk-MZCRC64W.cjs');
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
var
|
|
17
|
+
var _chunkUBBTSSAPcjs = require('./chunk-UBBTSSAP.cjs');
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
var
|
|
20
|
+
var _chunkHK6QNZX3cjs = require('./chunk-HK6QNZX3.cjs');
|
|
21
21
|
|
|
22
22
|
// src/test/mod.ts
|
|
23
23
|
var _net = require('net');
|
|
@@ -27,18 +27,18 @@ var _invariant = require('invariant'); var _invariant2 = _interopRequireDefault(
|
|
|
27
27
|
|
|
28
28
|
// src/test/log.ts
|
|
29
29
|
function logger() {
|
|
30
|
-
return
|
|
30
|
+
return _chunkHK6QNZX3cjs.getLogger.call(void 0, "test");
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
// src/test/mod.ts
|
|
34
34
|
async function setupTest(c, registry) {
|
|
35
35
|
registry.config.test.enabled = true;
|
|
36
|
-
const driver = await
|
|
36
|
+
const driver = await _chunk7DSWCOGXcjs.createFileSystemOrMemoryDriver.call(void 0,
|
|
37
37
|
true,
|
|
38
38
|
`/tmp/rivetkit-test-${crypto.randomUUID()}`
|
|
39
39
|
);
|
|
40
40
|
let upgradeWebSocket;
|
|
41
|
-
const config =
|
|
41
|
+
const config = _chunkMZCRC64Wcjs.RunnerConfigSchema.parse({
|
|
42
42
|
driver,
|
|
43
43
|
getUpgradeWebSocket: () => upgradeWebSocket,
|
|
44
44
|
inspector: {
|
|
@@ -47,12 +47,12 @@ async function setupTest(c, registry) {
|
|
|
47
47
|
}
|
|
48
48
|
});
|
|
49
49
|
const managerDriver = driver.manager(registry.config, config);
|
|
50
|
-
const internalClient =
|
|
50
|
+
const internalClient = _chunkMZ3SRIPMcjs.createClientWithDriver.call(void 0,
|
|
51
51
|
managerDriver,
|
|
52
|
-
|
|
52
|
+
_chunkMZCRC64Wcjs.ClientConfigSchema.parse({})
|
|
53
53
|
);
|
|
54
|
-
|
|
55
|
-
const { router } =
|
|
54
|
+
_chunkUBBTSSAPcjs.configureInspectorAccessToken.call(void 0, config, managerDriver);
|
|
55
|
+
const { router } = _chunk7DSWCOGXcjs.createManagerRouter.call(void 0,
|
|
56
56
|
registry.config,
|
|
57
57
|
config,
|
|
58
58
|
managerDriver,
|
|
@@ -77,7 +77,7 @@ async function setupTest(c, registry) {
|
|
|
77
77
|
c.onTestFinished(async () => {
|
|
78
78
|
await new Promise((resolve) => server.close(() => resolve(void 0)));
|
|
79
79
|
});
|
|
80
|
-
const client =
|
|
80
|
+
const client = _chunkUENID7AKcjs.createClient.call(void 0, {
|
|
81
81
|
endpoint,
|
|
82
82
|
namespace: "default",
|
|
83
83
|
runnerName: "default"
|
|
@@ -126,4 +126,4 @@ async function getPort() {
|
|
|
126
126
|
|
|
127
127
|
|
|
128
128
|
exports.setupTest = setupTest; exports.getPort = getPort;
|
|
129
|
-
//# sourceMappingURL=chunk-
|
|
129
|
+
//# sourceMappingURL=chunk-QB7FJ2OK.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-QB7FJ2OK.cjs","../../src/test/mod.ts","../../src/test/log.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACA;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACA;ACrBA,0BAA6B;AAC7B,+CAAmC;AACnC,uCAAoC;AACpC,4FAAsB;ADuBtB;AACA;AEzBO,SAAS,MAAA,CAAA,EAAS;AACxB,EAAA,OAAO,yCAAA,MAAgB,CAAA;AACxB;AF2BA;AACA;ACbA,MAAA,SAAsB,SAAA,CACrB,CAAA,EACA,QAAA,EAC8B;AAE9B,EAAA,QAAA,CAAS,MAAA,CAAO,IAAA,CAAK,QAAA,EAAU,IAAA;AAG/B,EAAA,MAAM,OAAA,EAAS,MAAM,8DAAA;AAAA,IACpB,IAAA;AAAA,IACA,CAAA,mBAAA,EAAsB,MAAA,CAAO,UAAA,CAAW,CAAC,CAAA;AAAA,EAAA;AAK1C,EAAA;AACA,EAAA;AAAmD,IAAA;AAClD,IAAA;AAC2B,IAAA;AAChB,MAAA;AACD,MAAA;AACI,IAAA;AACd,EAAA;AAID,EAAA;AACA,EAAA;AAAuB,IAAA;AACtB,IAAA;AAC2B,EAAA;AAE5B,EAAA;AACA,EAAA;AAAmB,IAAA;AACT,IAAA;AACT,IAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AAID,EAAA;AACA,EAAA;AAGA,EAAA;AACA,EAAA;AAAyB,IAAA;AACV,IAAA;AACJ,IAAA;AACV,EAAA;AAED,EAAA;AAAA,IAAA;AACmC,IAAA;AAClC,EAAA;AAED,EAAA;AACA,EAAA;AAEA,EAAA;AAGA,EAAA;AACC,IAAA;AAAqE,EAAA;AAItE,EAAA;AAA+B,IAAA;AAC9B,IAAA;AACW,IAAA;AACC,EAAA;AAEb,EAAA;AAEA,EAAA;AACD;AAEA;AAEC,EAAA;AACA,EAAA;AACA,EAAA;AAGA,EAAA;AACA,EAAA;AAEA,EAAA;AACC,IAAA;AAEC,MAAA;AACC,QAAA;AAEA,QAAA;AACC,UAAA;AACC,YAAA;AAA0C,UAAA;AAE1C,YAAA;AAAU,UAAA;AACX,QAAA;AAGD,QAAA;AACC,UAAA;AAAc,QAAA;AAGf,QAAA;AAAkB,MAAA;AAInB,MAAA;AACC,QAAA;AAA4B,MAAA;AAG7B,MAAA;AAAO,IAAA;AAGP,MAAA;AACA,MAAA;AACC,QAAA;AAAA,MAAA;AAED,MAAA;AAAqB,IAAA;AACtB,EAAA;AAGD,EAAA;AACD;ADpBA;AACA;AACA;AACA;AACA","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/rivetkit/dist/tsup/chunk-QB7FJ2OK.cjs","sourcesContent":[null,"import { createServer } from \"node:net\";\nimport { serve as honoServe } from \"@hono/node-server\";\nimport { createNodeWebSocket } from \"@hono/node-ws\";\nimport invariant from \"invariant\";\nimport { type TestContext, vi } from \"vitest\";\nimport { type Client, createClient } from \"@/client/mod\";\nimport { createFileSystemOrMemoryDriver } from \"@/drivers/file-system/mod\";\nimport { configureInspectorAccessToken } from \"@/inspector/utils\";\nimport { createManagerRouter } from \"@/manager/router\";\nimport { createClientWithDriver, type Registry, type RunConfig } from \"@/mod\";\nimport { ClientConfigSchema } from \"@/client/config\";\nimport { RunnerConfigSchema } from \"@/registry/run-config\";\nimport { logger } from \"./log\";\n\nexport interface SetupTestResult<A extends Registry<any>> {\n\tclient: Client<A>;\n}\n\n// Must use `TestContext` since global hooks do not work when running concurrently\nexport async function setupTest<A extends Registry<any>>(\n\tc: TestContext,\n\tregistry: A,\n): Promise<SetupTestResult<A>> {\n\t// Force enable test mode\n\tregistry.config.test.enabled = true;\n\n\t// Create driver\n\tconst driver = await createFileSystemOrMemoryDriver(\n\t\ttrue,\n\t\t`/tmp/rivetkit-test-${crypto.randomUUID()}`,\n\t);\n\n\t// Build driver config\n\t// biome-ignore lint/style/useConst: Assigned later\n\tlet upgradeWebSocket: any;\n\tconst config: RunConfig = RunnerConfigSchema.parse({\n\t\tdriver,\n\t\tgetUpgradeWebSocket: () => upgradeWebSocket!,\n\t\tinspector: {\n\t\t\tenabled: true,\n\t\t\ttoken: () => \"token\",\n\t\t},\n\t});\n\n\t// Create router\n\tconst managerDriver = driver.manager(registry.config, config);\n\tconst internalClient = createClientWithDriver(\n\t\tmanagerDriver,\n\t\tClientConfigSchema.parse({}),\n\t);\n\tconfigureInspectorAccessToken(config, managerDriver);\n\tconst { router } = createManagerRouter(\n\t\tregistry.config,\n\t\tconfig,\n\t\tmanagerDriver,\n\t\tdriver,\n\t\tinternalClient,\n\t);\n\n\t// Inject WebSocket\n\tconst nodeWebSocket = createNodeWebSocket({ app: router });\n\tupgradeWebSocket = nodeWebSocket.upgradeWebSocket;\n\n\t// Start server\n\tconst port = await getPort();\n\tconst server = honoServe({\n\t\tfetch: router.fetch,\n\t\thostname: \"127.0.0.1\",\n\t\tport,\n\t});\n\tinvariant(\n\t\tnodeWebSocket.injectWebSocket !== undefined,\n\t\t\"should have injectWebSocket\",\n\t);\n\tnodeWebSocket.injectWebSocket(server);\n\tconst endpoint = `http://127.0.0.1:${port}`;\n\n\tlogger().info({ msg: \"test server listening\", port });\n\n\t// Cleanup on test finish\n\tc.onTestFinished(async () => {\n\t\tawait new Promise((resolve) => server.close(() => resolve(undefined)));\n\t});\n\n\t// Create client\n\tconst client = createClient<A>({\n\t\tendpoint,\n\t\tnamespace: \"default\",\n\t\trunnerName: \"default\",\n\t});\n\tc.onTestFinished(async () => await client.dispose());\n\n\treturn { client };\n}\n\nexport async function getPort(): Promise<number> {\n\t// Pick random port between 10000 and 65535 (avoiding well-known and registered ports)\n\tconst MIN_PORT = 10000;\n\tconst MAX_PORT = 65535;\n\tconst getRandomPort = () =>\n\t\tMath.floor(Math.random() * (MAX_PORT - MIN_PORT + 1)) + MIN_PORT;\n\n\tlet port = getRandomPort();\n\tlet maxAttempts = 10;\n\n\twhile (maxAttempts > 0) {\n\t\ttry {\n\t\t\t// Try to create a server on the port to check if it's available\n\t\t\tconst server = await new Promise<any>((resolve, reject) => {\n\t\t\t\tconst server = createServer();\n\n\t\t\t\tserver.once(\"error\", (err: Error & { code?: string }) => {\n\t\t\t\t\tif (err.code === \"EADDRINUSE\") {\n\t\t\t\t\t\treject(new Error(`Port ${port} is in use`));\n\t\t\t\t\t} else {\n\t\t\t\t\t\treject(err);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tserver.once(\"listening\", () => {\n\t\t\t\t\tresolve(server);\n\t\t\t\t});\n\n\t\t\t\tserver.listen(port);\n\t\t\t});\n\n\t\t\t// Close the server since we're just checking availability\n\t\t\tawait new Promise<void>((resolve) => {\n\t\t\t\tserver.close(() => resolve());\n\t\t\t});\n\n\t\t\treturn port;\n\t\t} catch (err) {\n\t\t\t// If port is in use, try a different one\n\t\t\tmaxAttempts--;\n\t\t\tif (maxAttempts <= 0) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tport = getRandomPort();\n\t\t}\n\t}\n\n\tthrow new Error(\"Could not find an available port after multiple attempts\");\n}\n","import { getLogger } from \"@/common/log\";\n\nexport function logger() {\n\treturn getLogger(\"test\");\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
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 _chunkHK6QNZX3cjs = require('./chunk-HK6QNZX3.cjs');
|
|
4
4
|
|
|
5
5
|
// src/inspector/protocol/actor.ts
|
|
6
6
|
var _client = require('hono/client');
|
|
@@ -17,7 +17,7 @@ var _factory = require('hono/factory');
|
|
|
17
17
|
|
|
18
18
|
// src/inspector/log.ts
|
|
19
19
|
function inspectorLogger() {
|
|
20
|
-
return
|
|
20
|
+
return _chunkHK6QNZX3cjs.getLogger.call(void 0, "inspector");
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
// src/inspector/utils.ts
|
|
@@ -96,4 +96,4 @@ var configureInspectorAccessToken = (runConfig, managerDriver) => {
|
|
|
96
96
|
|
|
97
97
|
|
|
98
98
|
exports.inspectorLogger = inspectorLogger; exports.compareSecrets = compareSecrets; exports.secureInspector = secureInspector; exports.getInspectorUrl = getInspectorUrl; exports.isInspectorEnabled = isInspectorEnabled; exports.configureInspectorAccessToken = configureInspectorAccessToken; exports.createActorInspectorClient = createActorInspectorClient; exports.createManagerInspectorClient = createManagerInspectorClient;
|
|
99
|
-
//# sourceMappingURL=chunk-
|
|
99
|
+
//# sourceMappingURL=chunk-UBBTSSAP.cjs.map
|