rivetkit 2.0.20 → 2.0.21
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/actor/errors.cjs.map +1 -1
- package/dist/tsup/{chunk-L3YPHXPE.js → chunk-2POQCWMA.js} +481 -100
- package/dist/tsup/chunk-2POQCWMA.js.map +1 -0
- package/dist/tsup/{chunk-5F6X4AFU.js → chunk-3UIGKLZW.js} +6 -6
- package/dist/tsup/chunk-3UIGKLZW.js.map +1 -0
- package/dist/tsup/{chunk-M6LIJ6BK.js → chunk-4OINFQBR.js} +3 -3
- package/dist/tsup/{chunk-ZODINJWN.cjs → chunk-65SAIRRY.cjs} +12 -12
- package/dist/tsup/chunk-65SAIRRY.cjs.map +1 -0
- package/dist/tsup/{chunk-RI4YHZZW.js → chunk-6G76WIWL.js} +2 -2
- package/dist/tsup/{chunk-RI4YHZZW.js.map → chunk-6G76WIWL.js.map} +1 -1
- package/dist/tsup/{chunk-YFFCPYHY.js → chunk-D2LS4X6E.js} +11 -5
- package/dist/tsup/chunk-D2LS4X6E.js.map +1 -0
- package/dist/tsup/{chunk-QRUGCDA5.js → chunk-DYA34FHW.js} +2 -2
- package/dist/tsup/{chunk-KUZWEM23.cjs → chunk-ELDFBXDV.cjs} +8 -4
- package/dist/tsup/chunk-ELDFBXDV.cjs.map +1 -0
- package/dist/tsup/{chunk-FYP3TZXD.cjs → chunk-FDJ3AVNB.cjs} +32 -26
- package/dist/tsup/chunk-FDJ3AVNB.cjs.map +1 -0
- package/dist/tsup/{chunk-ER5OT3SQ.js → chunk-FUX6U6TL.js} +2 -2
- package/dist/tsup/chunk-FUX6U6TL.js.map +1 -0
- package/dist/tsup/{chunk-RJVSNJO7.cjs → chunk-HN7UXCYQ.cjs} +7 -7
- package/dist/tsup/chunk-HN7UXCYQ.cjs.map +1 -0
- package/dist/tsup/{chunk-QMVCFQ37.js → chunk-HUGSRAGL.js} +8 -4
- package/dist/tsup/chunk-HUGSRAGL.js.map +1 -0
- package/dist/tsup/{chunk-PV22ZBDE.cjs → chunk-JKOUXDK6.cjs} +16 -10
- package/dist/tsup/chunk-JKOUXDK6.cjs.map +1 -0
- package/dist/tsup/{chunk-2I6L3VRO.cjs → chunk-JTIBPF7N.cjs} +14 -14
- package/dist/tsup/chunk-JTIBPF7N.cjs.map +1 -0
- package/dist/tsup/chunk-KSRXX3Z4.cjs.map +1 -1
- package/dist/tsup/{chunk-JZD6FEOE.cjs → chunk-LMJHBF26.cjs} +455 -289
- package/dist/tsup/chunk-LMJHBF26.cjs.map +1 -0
- package/dist/tsup/{chunk-KKRR7DSG.cjs → chunk-LWGCMELP.cjs} +3 -3
- package/dist/tsup/chunk-LWGCMELP.cjs.map +1 -0
- package/dist/tsup/{chunk-2S7HJMMY.cjs → chunk-M5BHNJHB.cjs} +630 -249
- package/dist/tsup/chunk-M5BHNJHB.cjs.map +1 -0
- package/dist/tsup/{chunk-G6JGHCG4.cjs → chunk-O4GUKGK4.cjs} +6 -6
- package/dist/tsup/chunk-O4GUKGK4.cjs.map +1 -0
- package/dist/tsup/{chunk-7ACKZS3T.js → chunk-RZZDFDB6.js} +13 -7
- package/dist/tsup/chunk-RZZDFDB6.js.map +1 -0
- package/dist/tsup/{chunk-MGHPBNWB.js → chunk-VLR3TDHT.js} +2 -2
- package/dist/tsup/{chunk-GQ5WTE64.js → chunk-Y2QONT7B.js} +263 -97
- package/dist/tsup/chunk-Y2QONT7B.js.map +1 -0
- package/dist/tsup/{chunk-DUOTOMP7.cjs → chunk-ZNWE3XBT.cjs} +3 -3
- package/dist/tsup/chunk-ZNWE3XBT.cjs.map +1 -0
- package/dist/tsup/client/mod.cjs +9 -9
- package/dist/tsup/client/mod.cjs.map +1 -1
- package/dist/tsup/client/mod.d.cts +2 -2
- package/dist/tsup/client/mod.d.ts +2 -2
- package/dist/tsup/client/mod.js +8 -8
- package/dist/tsup/common/log.cjs +3 -3
- package/dist/tsup/common/log.cjs.map +1 -1
- package/dist/tsup/common/log.js +2 -2
- package/dist/tsup/common/websocket.cjs +4 -4
- package/dist/tsup/common/websocket.cjs.map +1 -1
- package/dist/tsup/common/websocket.js +3 -3
- package/dist/tsup/{conn-CmPcqOCF.d.ts → conn-Clu655RU.d.ts} +72 -71
- package/dist/tsup/{conn-DU5EbfCu.d.cts → conn-lUvFLo_q.d.cts} +72 -71
- package/dist/tsup/driver-helpers/mod.cjs +5 -5
- package/dist/tsup/driver-helpers/mod.cjs.map +1 -1
- 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 +4 -4
- package/dist/tsup/driver-test-suite/mod.cjs +603 -294
- 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 +574 -265
- package/dist/tsup/driver-test-suite/mod.js.map +1 -1
- package/dist/tsup/inspector/mod.cjs +6 -6
- package/dist/tsup/inspector/mod.cjs.map +1 -1
- package/dist/tsup/inspector/mod.d.cts +68 -7
- package/dist/tsup/inspector/mod.d.ts +68 -7
- package/dist/tsup/inspector/mod.js +5 -5
- package/dist/tsup/mod.cjs +10 -10
- 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 +9 -9
- package/dist/tsup/test/mod.cjs +11 -11
- package/dist/tsup/test/mod.cjs.map +1 -1
- 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.cjs.map +1 -1
- package/dist/tsup/utils.js +1 -1
- package/package.json +4 -3
- package/src/actor/config.ts +108 -15
- package/src/actor/conn-drivers.ts +2 -1
- package/src/actor/instance.ts +119 -35
- package/src/actor/keys.test.ts +13 -4
- package/src/actor/protocol/old.ts +10 -3
- package/src/actor/router-endpoints.ts +26 -16
- package/src/actor/router.ts +41 -13
- package/src/actor/unstable-react.ts +1 -1
- package/src/client/actor-common.ts +3 -1
- package/src/client/actor-conn.ts +44 -12
- package/src/client/actor-handle.ts +4 -1
- package/src/client/client.ts +32 -18
- package/src/client/utils.ts +21 -8
- package/src/common/actor-router-consts.ts +2 -0
- package/src/common/inline-websocket-adapter2.ts +24 -6
- package/src/common/log.ts +6 -2
- package/src/common/logfmt.ts +3 -1
- package/src/common/router.ts +3 -1
- package/src/common/utils.ts +6 -2
- package/src/driver-helpers/utils.ts +4 -1
- package/src/driver-test-suite/mod.ts +15 -4
- package/src/driver-test-suite/test-inline-client-driver.ts +35 -13
- package/src/driver-test-suite/tests/action-features.ts +6 -2
- package/src/driver-test-suite/tests/actor-conn-state.ts +18 -8
- package/src/driver-test-suite/tests/actor-conn.ts +35 -13
- package/src/driver-test-suite/tests/actor-handle.ts +35 -15
- package/src/driver-test-suite/tests/actor-inline-client.ts +34 -23
- package/src/driver-test-suite/tests/actor-inspector.ts +241 -131
- package/src/driver-test-suite/tests/actor-reconnect.ts +14 -4
- package/src/driver-test-suite/tests/actor-schedule.ts +12 -3
- package/src/driver-test-suite/tests/actor-sleep.ts +6 -3
- package/src/driver-test-suite/tests/actor-vars.ts +6 -2
- package/src/driver-test-suite/tests/manager-driver.ts +16 -6
- package/src/driver-test-suite/tests/raw-http-request-properties.ts +64 -25
- package/src/driver-test-suite/tests/raw-http.ts +17 -5
- package/src/driver-test-suite/tests/raw-websocket.ts +36 -12
- package/src/driver-test-suite/tests/request-access.ts +18 -8
- package/src/drivers/engine/actor-driver.ts +46 -25
- package/src/drivers/engine/config.ts +2 -1
- package/src/drivers/file-system/global-state.ts +58 -16
- package/src/drivers/file-system/manager.ts +35 -12
- package/src/drivers/file-system/mod.ts +6 -1
- package/src/drivers/file-system/utils.ts +8 -2
- package/src/engine-process/mod.ts +15 -4
- package/src/inspector/actor.ts +63 -23
- package/src/inspector/config.ts +2 -1
- package/src/inspector/manager.ts +10 -3
- package/src/inspector/utils.ts +2 -1
- package/src/manager/driver.ts +4 -1
- package/src/manager/gateway.ts +278 -8
- package/src/manager/hono-websocket-adapter.ts +33 -10
- package/src/manager/router-schema.ts +4 -2
- package/src/manager/router.ts +78 -12
- package/src/manager-api/actors.ts +2 -0
- package/src/registry/mod.ts +31 -9
- package/src/registry/run-config.ts +3 -1
- package/src/remote-manager-driver/api-endpoints.ts +2 -2
- package/src/remote-manager-driver/mod.ts +23 -7
- package/src/remote-manager-driver/ws-proxy.ts +21 -5
- package/src/serde.ts +6 -2
- package/src/test/mod.ts +2 -1
- package/src/utils.ts +6 -2
- package/dist/tsup/chunk-2I6L3VRO.cjs.map +0 -1
- package/dist/tsup/chunk-2S7HJMMY.cjs.map +0 -1
- package/dist/tsup/chunk-5F6X4AFU.js.map +0 -1
- package/dist/tsup/chunk-7ACKZS3T.js.map +0 -1
- package/dist/tsup/chunk-DUOTOMP7.cjs.map +0 -1
- package/dist/tsup/chunk-ER5OT3SQ.js.map +0 -1
- package/dist/tsup/chunk-FYP3TZXD.cjs.map +0 -1
- package/dist/tsup/chunk-G6JGHCG4.cjs.map +0 -1
- package/dist/tsup/chunk-GQ5WTE64.js.map +0 -1
- package/dist/tsup/chunk-JZD6FEOE.cjs.map +0 -1
- package/dist/tsup/chunk-KKRR7DSG.cjs.map +0 -1
- package/dist/tsup/chunk-KUZWEM23.cjs.map +0 -1
- package/dist/tsup/chunk-L3YPHXPE.js.map +0 -1
- package/dist/tsup/chunk-PV22ZBDE.cjs.map +0 -1
- package/dist/tsup/chunk-QMVCFQ37.js.map +0 -1
- package/dist/tsup/chunk-RJVSNJO7.cjs.map +0 -1
- package/dist/tsup/chunk-YFFCPYHY.js.map +0 -1
- package/dist/tsup/chunk-ZODINJWN.cjs.map +0 -1
- /package/dist/tsup/{chunk-M6LIJ6BK.js.map → chunk-4OINFQBR.js.map} +0 -0
- /package/dist/tsup/{chunk-QRUGCDA5.js.map → chunk-DYA34FHW.js.map} +0 -0
- /package/dist/tsup/{chunk-MGHPBNWB.js.map → chunk-VLR3TDHT.js.map} +0 -0
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _chunk65SAIRRYcjs = require('./chunk-65SAIRRY.cjs');
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _chunkLWGCMELPcjs = require('./chunk-LWGCMELP.cjs');
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
|
|
@@ -17,8 +17,8 @@ var _chunkKKRR7DSGcjs = require('./chunk-KKRR7DSG.cjs');
|
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
var _chunkFYP3TZXDcjs = require('./chunk-FYP3TZXD.cjs');
|
|
21
20
|
|
|
21
|
+
var _chunkFDJ3AVNBcjs = require('./chunk-FDJ3AVNB.cjs');
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
|
|
@@ -49,13 +49,13 @@ var _chunkFYP3TZXDcjs = require('./chunk-FYP3TZXD.cjs');
|
|
|
49
49
|
|
|
50
50
|
|
|
51
51
|
|
|
52
|
-
var _chunkPV22ZBDEcjs = require('./chunk-PV22ZBDE.cjs');
|
|
53
52
|
|
|
53
|
+
var _chunkJKOUXDK6cjs = require('./chunk-JKOUXDK6.cjs');
|
|
54
54
|
|
|
55
55
|
|
|
56
56
|
|
|
57
|
-
var _chunkRJVSNJO7cjs = require('./chunk-RJVSNJO7.cjs');
|
|
58
57
|
|
|
58
|
+
var _chunkHN7UXCYQcjs = require('./chunk-HN7UXCYQ.cjs');
|
|
59
59
|
|
|
60
60
|
|
|
61
61
|
|
|
@@ -67,7 +67,8 @@ var _chunkRJVSNJO7cjs = require('./chunk-RJVSNJO7.cjs');
|
|
|
67
67
|
|
|
68
68
|
|
|
69
69
|
|
|
70
|
-
|
|
70
|
+
|
|
71
|
+
var _chunkELDFBXDVcjs = require('./chunk-ELDFBXDV.cjs');
|
|
71
72
|
|
|
72
73
|
|
|
73
74
|
|
|
@@ -137,7 +138,7 @@ var WEBSOCKET_DRIVER = {
|
|
|
137
138
|
var SSE_DRIVER = {
|
|
138
139
|
sendMessage: (_actor, _conn, state, message) => {
|
|
139
140
|
state.stream.writeSSE({
|
|
140
|
-
data:
|
|
141
|
+
data: _chunkJKOUXDK6cjs.encodeDataToString.call(void 0, message.serialize(state.encoding))
|
|
141
142
|
});
|
|
142
143
|
},
|
|
143
144
|
disconnect: async (_actor, _conn, state, _reason) => {
|
|
@@ -166,7 +167,7 @@ function getConnDriverKindFromState(state) {
|
|
|
166
167
|
if (0 /* WEBSOCKET */ in state) return 0 /* WEBSOCKET */;
|
|
167
168
|
else if (1 /* SSE */ in state) return 1 /* SSE */;
|
|
168
169
|
else if (2 /* HTTP */ in state) return 2 /* HTTP */;
|
|
169
|
-
else
|
|
170
|
+
else _chunkELDFBXDVcjs.assertUnreachable.call(void 0, state);
|
|
170
171
|
}
|
|
171
172
|
|
|
172
173
|
// src/actor/conn.ts
|
|
@@ -174,7 +175,7 @@ function generateConnId() {
|
|
|
174
175
|
return crypto.randomUUID();
|
|
175
176
|
}
|
|
176
177
|
function generateConnToken() {
|
|
177
|
-
return
|
|
178
|
+
return _chunkJKOUXDK6cjs.generateSecureToken.call(void 0, 32);
|
|
178
179
|
}
|
|
179
180
|
function generateConnSocketId() {
|
|
180
181
|
return crypto.randomUUID();
|
|
@@ -317,17 +318,17 @@ var Conn = (_class = class {
|
|
|
317
318
|
connId: this.id
|
|
318
319
|
});
|
|
319
320
|
this._sendMessage(
|
|
320
|
-
new (0,
|
|
321
|
+
new (0, _chunkJKOUXDK6cjs.CachedSerializer)(
|
|
321
322
|
{
|
|
322
323
|
body: {
|
|
323
324
|
tag: "Event",
|
|
324
325
|
val: {
|
|
325
326
|
name: eventName,
|
|
326
|
-
args:
|
|
327
|
+
args: _chunkELDFBXDVcjs.bufferToArrayBuffer.call(void 0, cbor.encode(args))
|
|
327
328
|
}
|
|
328
329
|
}
|
|
329
330
|
},
|
|
330
|
-
|
|
331
|
+
_chunkFDJ3AVNBcjs.TO_CLIENT_VERSIONED
|
|
331
332
|
)
|
|
332
333
|
);
|
|
333
334
|
}
|
|
@@ -394,7 +395,7 @@ function createActorInspectorRouter() {
|
|
|
394
395
|
"/state",
|
|
395
396
|
_standardvalidator.sValidator.call(void 0,
|
|
396
397
|
"json",
|
|
397
|
-
_v42.default.object({ patch:
|
|
398
|
+
_v42.default.object({ patch: _chunk65SAIRRYcjs.PatchSchema }).or(_v42.default.object({ replace: _v42.default.any() }))
|
|
398
399
|
),
|
|
399
400
|
async (c) => {
|
|
400
401
|
if (!await c.var.inspector.accessors.isStateEnabled()) {
|
|
@@ -418,7 +419,10 @@ function createActorInspectorRouter() {
|
|
|
418
419
|
);
|
|
419
420
|
await c.var.inspector.accessors.setState(newState);
|
|
420
421
|
return c.json(
|
|
421
|
-
{
|
|
422
|
+
{
|
|
423
|
+
enabled: true,
|
|
424
|
+
state: await c.var.inspector.accessors.getState()
|
|
425
|
+
},
|
|
422
426
|
200
|
|
423
427
|
);
|
|
424
428
|
}
|
|
@@ -431,14 +435,17 @@ function createActorInspectorRouter() {
|
|
|
431
435
|
return _streaming.streamSSE.call(void 0,
|
|
432
436
|
c,
|
|
433
437
|
async (stream) => {
|
|
434
|
-
unsub = c.var.inspector.emitter.on(
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
438
|
+
unsub = c.var.inspector.emitter.on(
|
|
439
|
+
"stateUpdated",
|
|
440
|
+
async (state) => {
|
|
441
|
+
stream.writeSSE({
|
|
442
|
+
data: JSON.stringify(state) || "",
|
|
443
|
+
event: "state-update",
|
|
444
|
+
id: String(id++)
|
|
445
|
+
});
|
|
446
|
+
}
|
|
447
|
+
);
|
|
448
|
+
const { promise } = _chunkELDFBXDVcjs.promiseWithResolvers.call(void 0, );
|
|
442
449
|
return promise;
|
|
443
450
|
},
|
|
444
451
|
async () => {
|
|
@@ -454,16 +461,19 @@ function createActorInspectorRouter() {
|
|
|
454
461
|
return _streaming.streamSSE.call(void 0,
|
|
455
462
|
c,
|
|
456
463
|
async (stream) => {
|
|
457
|
-
unsub = c.var.inspector.emitter.on(
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
464
|
+
unsub = c.var.inspector.emitter.on(
|
|
465
|
+
"connectionUpdated",
|
|
466
|
+
async () => {
|
|
467
|
+
stream.writeSSE({
|
|
468
|
+
data: JSON.stringify(
|
|
469
|
+
await c.var.inspector.accessors.getConnections()
|
|
470
|
+
),
|
|
471
|
+
event: "connection-update",
|
|
472
|
+
id: String(id++)
|
|
473
|
+
});
|
|
474
|
+
}
|
|
475
|
+
);
|
|
476
|
+
const { promise } = _chunkELDFBXDVcjs.promiseWithResolvers.call(void 0, );
|
|
467
477
|
return promise;
|
|
468
478
|
},
|
|
469
479
|
async () => {
|
|
@@ -484,12 +494,14 @@ function createActorInspectorRouter() {
|
|
|
484
494
|
async (stream) => {
|
|
485
495
|
unsub = c.var.inspector.emitter.on("eventFired", () => {
|
|
486
496
|
stream.writeSSE({
|
|
487
|
-
data: JSON.stringify(
|
|
497
|
+
data: JSON.stringify(
|
|
498
|
+
c.var.inspector.lastRealtimeEvents
|
|
499
|
+
),
|
|
488
500
|
event: "realtime-event",
|
|
489
501
|
id: String(id++)
|
|
490
502
|
});
|
|
491
503
|
});
|
|
492
|
-
const { promise } =
|
|
504
|
+
const { promise } = _chunkELDFBXDVcjs.promiseWithResolvers.call(void 0, );
|
|
493
505
|
return promise;
|
|
494
506
|
},
|
|
495
507
|
async () => {
|
|
@@ -505,20 +517,22 @@ function createActorInspectorRouter() {
|
|
|
505
517
|
}
|
|
506
518
|
const db = await c.var.inspector.accessors.getDb();
|
|
507
519
|
const rows = await db.execute(`PRAGMA table_list`);
|
|
508
|
-
const tables =
|
|
520
|
+
const tables = _chunk65SAIRRYcjs.TablesSchema.parse(rows).filter(
|
|
509
521
|
(table) => table.schema !== "temp" && !table.name.startsWith("sqlite_")
|
|
510
522
|
);
|
|
511
523
|
const tablesInfo = await Promise.all(
|
|
512
|
-
tables.map(
|
|
524
|
+
tables.map(
|
|
525
|
+
(table) => db.execute(`PRAGMA table_info(${table.name})`)
|
|
526
|
+
)
|
|
513
527
|
);
|
|
514
|
-
const columns = tablesInfo.map((def) =>
|
|
528
|
+
const columns = tablesInfo.map((def) => _chunk65SAIRRYcjs.ColumnsSchema.parse(def));
|
|
515
529
|
const foreignKeysList = await Promise.all(
|
|
516
530
|
tables.map(
|
|
517
531
|
(table) => db.execute(`PRAGMA foreign_key_list(${table.name})`)
|
|
518
532
|
)
|
|
519
533
|
);
|
|
520
534
|
const foreignKeys = foreignKeysList.map(
|
|
521
|
-
(def) =>
|
|
535
|
+
(def) => _chunk65SAIRRYcjs.ForeignKeysSchema.parse(def)
|
|
522
536
|
);
|
|
523
537
|
const countInfo = await Promise.all(
|
|
524
538
|
tables.map(
|
|
@@ -546,7 +560,10 @@ function createActorInspectorRouter() {
|
|
|
546
560
|
"/db",
|
|
547
561
|
_standardvalidator.sValidator.call(void 0,
|
|
548
562
|
"json",
|
|
549
|
-
_v42.default.object({
|
|
563
|
+
_v42.default.object({
|
|
564
|
+
query: _v42.default.string(),
|
|
565
|
+
params: _v42.default.array(_v42.default.any()).optional()
|
|
566
|
+
})
|
|
550
567
|
),
|
|
551
568
|
async (c) => {
|
|
552
569
|
if (!await c.var.inspector.accessors.isDbEnabled()) {
|
|
@@ -564,6 +581,23 @@ function createActorInspectorRouter() {
|
|
|
564
581
|
return c.json({ error: error.message }, 500);
|
|
565
582
|
}
|
|
566
583
|
}
|
|
584
|
+
).post(
|
|
585
|
+
"/action",
|
|
586
|
+
_standardvalidator.sValidator.call(void 0,
|
|
587
|
+
"json",
|
|
588
|
+
_v42.default.object({
|
|
589
|
+
name: _v42.default.string(),
|
|
590
|
+
params: _v42.default.array(_v42.default.any()).optional()
|
|
591
|
+
})
|
|
592
|
+
),
|
|
593
|
+
async (c) => {
|
|
594
|
+
const { name, params } = c.req.valid("json");
|
|
595
|
+
const result = await c.var.inspector.accessors.executeAction(
|
|
596
|
+
name,
|
|
597
|
+
params
|
|
598
|
+
);
|
|
599
|
+
return c.json({ result }, 200);
|
|
600
|
+
}
|
|
567
601
|
);
|
|
568
602
|
}
|
|
569
603
|
var ActorInspector = (_class2 = class {
|
|
@@ -798,8 +832,8 @@ var ActorInstance = class {
|
|
|
798
832
|
#persist;
|
|
799
833
|
/** Raw state without the proxy wrapper */
|
|
800
834
|
#persistRaw;
|
|
801
|
-
#persistWriteQueue = new (0,
|
|
802
|
-
#alarmWriteQueue = new (0,
|
|
835
|
+
#persistWriteQueue = new (0, _chunkELDFBXDVcjs.SinglePromiseQueue)();
|
|
836
|
+
#alarmWriteQueue = new (0, _chunkELDFBXDVcjs.SinglePromiseQueue)();
|
|
803
837
|
#lastSaveTime = 0;
|
|
804
838
|
#pendingSaveTimeout;
|
|
805
839
|
#vars;
|
|
@@ -841,17 +875,39 @@ var ActorInstance = class {
|
|
|
841
875
|
return Object.keys(this.#config.actions);
|
|
842
876
|
},
|
|
843
877
|
getConnections: async () => {
|
|
844
|
-
return Array.from(this.#connections.entries()).map(
|
|
845
|
-
id,
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
878
|
+
return Array.from(this.#connections.entries()).map(
|
|
879
|
+
([id, conn]) => ({
|
|
880
|
+
id,
|
|
881
|
+
stateEnabled: conn.__stateEnabled,
|
|
882
|
+
params: conn.params,
|
|
883
|
+
state: conn.__stateEnabled ? conn.state : void 0
|
|
884
|
+
})
|
|
885
|
+
);
|
|
850
886
|
},
|
|
851
887
|
setState: async (state) => {
|
|
852
888
|
this.#validateStateEnabled();
|
|
853
889
|
this.#persist.state = { ...state };
|
|
854
890
|
await this.saveState({ immediate: true });
|
|
891
|
+
},
|
|
892
|
+
executeAction: async (name, params) => {
|
|
893
|
+
const socketId = generateConnSocketId();
|
|
894
|
+
const conn = await this.createConn(
|
|
895
|
+
{
|
|
896
|
+
socketId,
|
|
897
|
+
driverState: { [2 /* HTTP */]: {} }
|
|
898
|
+
},
|
|
899
|
+
void 0,
|
|
900
|
+
void 0
|
|
901
|
+
);
|
|
902
|
+
try {
|
|
903
|
+
return await this.executeAction(
|
|
904
|
+
new (0, _chunkFDJ3AVNBcjs.ActionContext)(this.actorContext, conn),
|
|
905
|
+
name,
|
|
906
|
+
params || []
|
|
907
|
+
);
|
|
908
|
+
} finally {
|
|
909
|
+
this.__connDisconnected(conn, true, socketId);
|
|
910
|
+
}
|
|
855
911
|
}
|
|
856
912
|
};
|
|
857
913
|
});
|
|
@@ -885,12 +941,15 @@ var ActorInstance = class {
|
|
|
885
941
|
key: serializeActorKey(key),
|
|
886
942
|
actorId
|
|
887
943
|
};
|
|
888
|
-
this.#log =
|
|
889
|
-
Object.assign(
|
|
944
|
+
this.#log = _chunkHN7UXCYQcjs.getBaseLogger.call(void 0, ).child(
|
|
945
|
+
Object.assign(
|
|
946
|
+
_chunkHN7UXCYQcjs.getIncludeTarget.call(void 0, ) ? { target: "actor" } : {},
|
|
947
|
+
logParams
|
|
948
|
+
)
|
|
890
949
|
);
|
|
891
|
-
this.#rLog =
|
|
950
|
+
this.#rLog = _chunkHN7UXCYQcjs.getBaseLogger.call(void 0, ).child(
|
|
892
951
|
Object.assign(
|
|
893
|
-
|
|
952
|
+
_chunkHN7UXCYQcjs.getIncludeTarget.call(void 0, ) ? { target: "actor-runtime" } : {},
|
|
894
953
|
logParams
|
|
895
954
|
)
|
|
896
955
|
);
|
|
@@ -910,7 +969,7 @@ var ActorInstance = class {
|
|
|
910
969
|
this.#actorDriver.getContext(this.#actorId)
|
|
911
970
|
);
|
|
912
971
|
if (dataOrPromise instanceof Promise) {
|
|
913
|
-
vars = await
|
|
972
|
+
vars = await _chunkJKOUXDK6cjs.deadline.call(void 0,
|
|
914
973
|
dataOrPromise,
|
|
915
974
|
this.#config.options.createVarsTimeout
|
|
916
975
|
);
|
|
@@ -920,7 +979,9 @@ var ActorInstance = class {
|
|
|
920
979
|
} else if ("vars" in this.#config) {
|
|
921
980
|
vars = structuredClone(this.#config.vars);
|
|
922
981
|
} else {
|
|
923
|
-
throw new Error(
|
|
982
|
+
throw new Error(
|
|
983
|
+
"Could not variables from 'createVars' or 'vars'"
|
|
984
|
+
);
|
|
924
985
|
}
|
|
925
986
|
this.#vars = vars;
|
|
926
987
|
}
|
|
@@ -941,7 +1002,9 @@ var ActorInstance = class {
|
|
|
941
1002
|
this.#db = client;
|
|
942
1003
|
}
|
|
943
1004
|
if (this.#persist.scheduledEvents.length > 0) {
|
|
944
|
-
await this.#queueSetAlarm(
|
|
1005
|
+
await this.#queueSetAlarm(
|
|
1006
|
+
this.#persist.scheduledEvents[0].timestamp
|
|
1007
|
+
);
|
|
945
1008
|
}
|
|
946
1009
|
this.#rLog.info({ msg: "actor ready" });
|
|
947
1010
|
this.#ready = true;
|
|
@@ -1044,7 +1107,7 @@ var ActorInstance = class {
|
|
|
1044
1107
|
} catch (error) {
|
|
1045
1108
|
this.actorContext.log.error({
|
|
1046
1109
|
msg: "error while running event",
|
|
1047
|
-
error:
|
|
1110
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error),
|
|
1048
1111
|
event: event.eventId,
|
|
1049
1112
|
timestamp: event.timestamp,
|
|
1050
1113
|
action: event.kind.generic.actionName
|
|
@@ -1053,7 +1116,7 @@ var ActorInstance = class {
|
|
|
1053
1116
|
} catch (error) {
|
|
1054
1117
|
this.actorContext.log.error({
|
|
1055
1118
|
msg: "internal error while running event",
|
|
1056
|
-
error:
|
|
1119
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error),
|
|
1057
1120
|
...event
|
|
1058
1121
|
});
|
|
1059
1122
|
}
|
|
@@ -1066,7 +1129,7 @@ var ActorInstance = class {
|
|
|
1066
1129
|
kind: {
|
|
1067
1130
|
generic: {
|
|
1068
1131
|
actionName: action,
|
|
1069
|
-
args:
|
|
1132
|
+
args: _chunkELDFBXDVcjs.bufferToArrayBuffer.call(void 0, cbor2.encode(args))
|
|
1070
1133
|
}
|
|
1071
1134
|
}
|
|
1072
1135
|
});
|
|
@@ -1117,10 +1180,14 @@ var ActorInstance = class {
|
|
|
1117
1180
|
const finished = this.#persistWriteQueue.enqueue(async () => {
|
|
1118
1181
|
this.#rLog.debug({ msg: "saving persist" });
|
|
1119
1182
|
this.#persistChanged = false;
|
|
1120
|
-
const bareData = this.#convertToBarePersisted(
|
|
1183
|
+
const bareData = this.#convertToBarePersisted(
|
|
1184
|
+
this.#persistRaw
|
|
1185
|
+
);
|
|
1121
1186
|
await this.#actorDriver.writePersistedData(
|
|
1122
1187
|
this.#actorId,
|
|
1123
|
-
|
|
1188
|
+
_chunkFDJ3AVNBcjs.PERSISTED_ACTOR_VERSIONED.serializeWithEmbeddedVersion(
|
|
1189
|
+
bareData
|
|
1190
|
+
)
|
|
1124
1191
|
);
|
|
1125
1192
|
this.#rLog.debug({ msg: "persist saved" });
|
|
1126
1193
|
});
|
|
@@ -1144,7 +1211,7 @@ var ActorInstance = class {
|
|
|
1144
1211
|
this.#persistRaw = target;
|
|
1145
1212
|
if (target === null || typeof target !== "object") {
|
|
1146
1213
|
let invalidPath = "";
|
|
1147
|
-
if (!
|
|
1214
|
+
if (!_chunkELDFBXDVcjs.isCborSerializable.call(void 0,
|
|
1148
1215
|
target,
|
|
1149
1216
|
(path) => {
|
|
1150
1217
|
invalidPath = path;
|
|
@@ -1166,7 +1233,7 @@ var ActorInstance = class {
|
|
|
1166
1233
|
return;
|
|
1167
1234
|
}
|
|
1168
1235
|
let invalidPath = "";
|
|
1169
|
-
if (!
|
|
1236
|
+
if (!_chunkELDFBXDVcjs.isCborSerializable.call(void 0,
|
|
1170
1237
|
value,
|
|
1171
1238
|
(invalidPathPart) => {
|
|
1172
1239
|
invalidPath = invalidPathPart;
|
|
@@ -1178,7 +1245,10 @@ var ActorInstance = class {
|
|
|
1178
1245
|
});
|
|
1179
1246
|
}
|
|
1180
1247
|
this.#persistChanged = true;
|
|
1181
|
-
this.inspector.emitter.emit(
|
|
1248
|
+
this.inspector.emitter.emit(
|
|
1249
|
+
"stateUpdated",
|
|
1250
|
+
this.#persist.state
|
|
1251
|
+
);
|
|
1182
1252
|
if (this.#config.onStateChange && this.#ready && !this.#isInOnStateChange) {
|
|
1183
1253
|
try {
|
|
1184
1254
|
this.#isInOnStateChange = true;
|
|
@@ -1189,7 +1259,7 @@ var ActorInstance = class {
|
|
|
1189
1259
|
} catch (error) {
|
|
1190
1260
|
this.#rLog.error({
|
|
1191
1261
|
msg: "error in `_onStateChange`",
|
|
1192
|
-
error:
|
|
1262
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
1193
1263
|
});
|
|
1194
1264
|
} finally {
|
|
1195
1265
|
this.#isInOnStateChange = false;
|
|
@@ -1207,7 +1277,7 @@ var ActorInstance = class {
|
|
|
1207
1277
|
persistDataBuffer !== void 0,
|
|
1208
1278
|
"persist data has not been set, it should be set when initialized"
|
|
1209
1279
|
);
|
|
1210
|
-
const bareData =
|
|
1280
|
+
const bareData = _chunkFDJ3AVNBcjs.PERSISTED_ACTOR_VERSIONED.deserializeWithEmbeddedVersion(
|
|
1211
1281
|
persistDataBuffer
|
|
1212
1282
|
);
|
|
1213
1283
|
const persistData = this.#convertFromBarePersisted(bareData);
|
|
@@ -1238,7 +1308,9 @@ var ActorInstance = class {
|
|
|
1238
1308
|
} else if ("state" in this.#config) {
|
|
1239
1309
|
stateData = structuredClone(this.#config.state);
|
|
1240
1310
|
} else {
|
|
1241
|
-
throw new Error(
|
|
1311
|
+
throw new Error(
|
|
1312
|
+
"Both 'createState' or 'state' were not defined"
|
|
1313
|
+
);
|
|
1242
1314
|
}
|
|
1243
1315
|
} else {
|
|
1244
1316
|
this.#rLog.debug({ msg: "state not enabled" });
|
|
@@ -1249,11 +1321,16 @@ var ActorInstance = class {
|
|
|
1249
1321
|
const bareData2 = this.#convertToBarePersisted(persistData);
|
|
1250
1322
|
await this.#actorDriver.writePersistedData(
|
|
1251
1323
|
this.#actorId,
|
|
1252
|
-
|
|
1324
|
+
_chunkFDJ3AVNBcjs.PERSISTED_ACTOR_VERSIONED.serializeWithEmbeddedVersion(
|
|
1325
|
+
bareData2
|
|
1326
|
+
)
|
|
1253
1327
|
);
|
|
1254
1328
|
this.#setPersist(persistData);
|
|
1255
1329
|
if (this.#config.onCreate) {
|
|
1256
|
-
await this.#config.onCreate(
|
|
1330
|
+
await this.#config.onCreate(
|
|
1331
|
+
this.actorContext,
|
|
1332
|
+
persistData.input
|
|
1333
|
+
);
|
|
1257
1334
|
}
|
|
1258
1335
|
}
|
|
1259
1336
|
}
|
|
@@ -1312,19 +1389,22 @@ var ActorInstance = class {
|
|
|
1312
1389
|
this.inspector.emitter.emit("connectionUpdated");
|
|
1313
1390
|
if (this.#config.onDisconnect) {
|
|
1314
1391
|
try {
|
|
1315
|
-
const result = this.#config.onDisconnect(
|
|
1392
|
+
const result = this.#config.onDisconnect(
|
|
1393
|
+
this.actorContext,
|
|
1394
|
+
conn
|
|
1395
|
+
);
|
|
1316
1396
|
if (result instanceof Promise) {
|
|
1317
1397
|
result.catch((error) => {
|
|
1318
1398
|
this.#rLog.error({
|
|
1319
1399
|
msg: "error in `onDisconnect`",
|
|
1320
|
-
error:
|
|
1400
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
1321
1401
|
});
|
|
1322
1402
|
});
|
|
1323
1403
|
}
|
|
1324
1404
|
} catch (error) {
|
|
1325
1405
|
this.#rLog.error({
|
|
1326
1406
|
msg: "error in `onDisconnect`",
|
|
1327
|
-
error:
|
|
1407
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
1328
1408
|
});
|
|
1329
1409
|
}
|
|
1330
1410
|
}
|
|
@@ -1365,7 +1445,7 @@ var ActorInstance = class {
|
|
|
1365
1445
|
this.#resetSleepTimer();
|
|
1366
1446
|
this.inspector.emitter.emit("connectionUpdated");
|
|
1367
1447
|
existingConn._sendMessage(
|
|
1368
|
-
new (0,
|
|
1448
|
+
new (0, _chunkJKOUXDK6cjs.CachedSerializer)(
|
|
1369
1449
|
{
|
|
1370
1450
|
body: {
|
|
1371
1451
|
tag: "Init",
|
|
@@ -1376,7 +1456,7 @@ var ActorInstance = class {
|
|
|
1376
1456
|
}
|
|
1377
1457
|
}
|
|
1378
1458
|
},
|
|
1379
|
-
|
|
1459
|
+
_chunkFDJ3AVNBcjs.TO_CLIENT_VERSIONED
|
|
1380
1460
|
)
|
|
1381
1461
|
);
|
|
1382
1462
|
return existingConn;
|
|
@@ -1410,7 +1490,7 @@ var ActorInstance = class {
|
|
|
1410
1490
|
params
|
|
1411
1491
|
);
|
|
1412
1492
|
if (dataOrPromise instanceof Promise) {
|
|
1413
|
-
connState = await
|
|
1493
|
+
connState = await _chunkJKOUXDK6cjs.deadline.call(void 0,
|
|
1414
1494
|
dataOrPromise,
|
|
1415
1495
|
this.#config.options.createConnStateTimeout
|
|
1416
1496
|
);
|
|
@@ -1443,27 +1523,28 @@ var ActorInstance = class {
|
|
|
1443
1523
|
try {
|
|
1444
1524
|
const result = this.#config.onConnect(this.actorContext, conn);
|
|
1445
1525
|
if (result instanceof Promise) {
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
}
|
|
1454
|
-
|
|
1526
|
+
_chunkJKOUXDK6cjs.deadline.call(void 0,
|
|
1527
|
+
result,
|
|
1528
|
+
this.#config.options.onConnectTimeout
|
|
1529
|
+
).catch((error) => {
|
|
1530
|
+
this.#rLog.error({
|
|
1531
|
+
msg: "error in `onConnect`, closing socket",
|
|
1532
|
+
error
|
|
1533
|
+
});
|
|
1534
|
+
conn == null ? void 0 : conn.disconnect("`onConnect` failed");
|
|
1535
|
+
});
|
|
1455
1536
|
}
|
|
1456
1537
|
} catch (error) {
|
|
1457
1538
|
this.#rLog.error({
|
|
1458
1539
|
msg: "error in `onConnect`",
|
|
1459
|
-
error:
|
|
1540
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
1460
1541
|
});
|
|
1461
1542
|
conn == null ? void 0 : conn.disconnect("`onConnect` failed");
|
|
1462
1543
|
}
|
|
1463
1544
|
}
|
|
1464
1545
|
this.inspector.emitter.emit("connectionUpdated");
|
|
1465
1546
|
conn._sendMessage(
|
|
1466
|
-
new (0,
|
|
1547
|
+
new (0, _chunkJKOUXDK6cjs.CachedSerializer)(
|
|
1467
1548
|
{
|
|
1468
1549
|
body: {
|
|
1469
1550
|
tag: "Init",
|
|
@@ -1474,14 +1555,14 @@ var ActorInstance = class {
|
|
|
1474
1555
|
}
|
|
1475
1556
|
}
|
|
1476
1557
|
},
|
|
1477
|
-
|
|
1558
|
+
_chunkFDJ3AVNBcjs.TO_CLIENT_VERSIONED
|
|
1478
1559
|
)
|
|
1479
1560
|
);
|
|
1480
1561
|
return conn;
|
|
1481
1562
|
}
|
|
1482
1563
|
// MARK: Messages
|
|
1483
1564
|
async processMessage(message, conn) {
|
|
1484
|
-
await
|
|
1565
|
+
await _chunkFDJ3AVNBcjs.processMessage.call(void 0, message, this, conn, {
|
|
1485
1566
|
onExecuteAction: async (ctx, name, args) => {
|
|
1486
1567
|
this.inspector.emitter.emit("eventFired", {
|
|
1487
1568
|
type: "action",
|
|
@@ -1576,7 +1657,10 @@ var ActorInstance = class {
|
|
|
1576
1657
|
this.#rLog.debug({ msg: "checking connections liveness" });
|
|
1577
1658
|
for (const conn of this.#connections.values()) {
|
|
1578
1659
|
if (conn.__status === "connected") {
|
|
1579
|
-
this.#rLog.debug({
|
|
1660
|
+
this.#rLog.debug({
|
|
1661
|
+
msg: "connection is alive",
|
|
1662
|
+
connId: conn.id
|
|
1663
|
+
});
|
|
1580
1664
|
} else {
|
|
1581
1665
|
const lastSeen = conn.__persist.lastSeen;
|
|
1582
1666
|
const sinceLastSeen = Date.now() - lastSeen;
|
|
@@ -1643,14 +1727,18 @@ var ActorInstance = class {
|
|
|
1643
1727
|
actionName,
|
|
1644
1728
|
args
|
|
1645
1729
|
});
|
|
1646
|
-
const outputOrPromise = actionFunction.call(
|
|
1730
|
+
const outputOrPromise = actionFunction.call(
|
|
1731
|
+
void 0,
|
|
1732
|
+
ctx,
|
|
1733
|
+
...args
|
|
1734
|
+
);
|
|
1647
1735
|
let output;
|
|
1648
1736
|
if (outputOrPromise instanceof Promise) {
|
|
1649
1737
|
this.#rLog.debug({
|
|
1650
1738
|
msg: "awaiting async action",
|
|
1651
1739
|
actionName
|
|
1652
1740
|
});
|
|
1653
|
-
output = await
|
|
1741
|
+
output = await _chunkJKOUXDK6cjs.deadline.call(void 0,
|
|
1654
1742
|
outputOrPromise,
|
|
1655
1743
|
this.#config.options.actionTimeout
|
|
1656
1744
|
);
|
|
@@ -1685,7 +1773,7 @@ var ActorInstance = class {
|
|
|
1685
1773
|
} catch (error) {
|
|
1686
1774
|
this.#rLog.error({
|
|
1687
1775
|
msg: "error in `onBeforeActionResponse`",
|
|
1688
|
-
error:
|
|
1776
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
1689
1777
|
});
|
|
1690
1778
|
}
|
|
1691
1779
|
}
|
|
@@ -1697,13 +1785,13 @@ var ActorInstance = class {
|
|
|
1697
1785
|
});
|
|
1698
1786
|
return output;
|
|
1699
1787
|
} catch (error) {
|
|
1700
|
-
if (error instanceof
|
|
1788
|
+
if (error instanceof _chunkJKOUXDK6cjs.DeadlineError) {
|
|
1701
1789
|
throw new (0, _chunkKSRXX3Z4cjs.ActionTimedOut)();
|
|
1702
1790
|
}
|
|
1703
1791
|
this.#rLog.error({
|
|
1704
1792
|
msg: "action error",
|
|
1705
1793
|
actionName,
|
|
1706
|
-
error:
|
|
1794
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
1707
1795
|
});
|
|
1708
1796
|
throw error;
|
|
1709
1797
|
} finally {
|
|
@@ -1737,10 +1825,16 @@ var ActorInstance = class {
|
|
|
1737
1825
|
}
|
|
1738
1826
|
return response;
|
|
1739
1827
|
} catch (error) {
|
|
1740
|
-
this.#rLog.error({
|
|
1828
|
+
this.#rLog.error({
|
|
1829
|
+
msg: "onFetch error",
|
|
1830
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
1831
|
+
});
|
|
1741
1832
|
throw error;
|
|
1742
1833
|
} finally {
|
|
1743
|
-
this.#activeRawFetchCount = Math.max(
|
|
1834
|
+
this.#activeRawFetchCount = Math.max(
|
|
1835
|
+
0,
|
|
1836
|
+
this.#activeRawFetchCount - 1
|
|
1837
|
+
);
|
|
1744
1838
|
this.#resetSleepTimer();
|
|
1745
1839
|
this.#savePersistThrottled();
|
|
1746
1840
|
}
|
|
@@ -1778,7 +1872,7 @@ var ActorInstance = class {
|
|
|
1778
1872
|
} catch (error) {
|
|
1779
1873
|
this.#rLog.error({
|
|
1780
1874
|
msg: "onWebSocket error",
|
|
1781
|
-
error:
|
|
1875
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
1782
1876
|
});
|
|
1783
1877
|
throw error;
|
|
1784
1878
|
} finally {
|
|
@@ -1873,17 +1967,17 @@ var ActorInstance = class {
|
|
|
1873
1967
|
});
|
|
1874
1968
|
const subscriptions = this.#subscriptionIndex.get(name);
|
|
1875
1969
|
if (!subscriptions) return;
|
|
1876
|
-
const toClientSerializer = new (0,
|
|
1970
|
+
const toClientSerializer = new (0, _chunkJKOUXDK6cjs.CachedSerializer)(
|
|
1877
1971
|
{
|
|
1878
1972
|
body: {
|
|
1879
1973
|
tag: "Event",
|
|
1880
1974
|
val: {
|
|
1881
1975
|
name,
|
|
1882
|
-
args:
|
|
1976
|
+
args: _chunkELDFBXDVcjs.bufferToArrayBuffer.call(void 0, cbor2.encode(args))
|
|
1883
1977
|
}
|
|
1884
1978
|
}
|
|
1885
1979
|
},
|
|
1886
|
-
|
|
1980
|
+
_chunkFDJ3AVNBcjs.TO_CLIENT_VERSIONED
|
|
1887
1981
|
);
|
|
1888
1982
|
for (const connection of subscriptions) {
|
|
1889
1983
|
connection._sendMessage(toClientSerializer);
|
|
@@ -1904,7 +1998,7 @@ var ActorInstance = class {
|
|
|
1904
1998
|
}).catch((error) => {
|
|
1905
1999
|
this.#rLog.error({
|
|
1906
2000
|
msg: "wait until promise failed",
|
|
1907
|
-
error:
|
|
2001
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
1908
2002
|
});
|
|
1909
2003
|
});
|
|
1910
2004
|
this.#backgroundPromises.push(nonfailablePromise);
|
|
@@ -1924,7 +2018,7 @@ var ActorInstance = class {
|
|
|
1924
2018
|
await this.#savePersistInner();
|
|
1925
2019
|
} else {
|
|
1926
2020
|
if (!this.#onPersistSavedPromise) {
|
|
1927
|
-
this.#onPersistSavedPromise =
|
|
2021
|
+
this.#onPersistSavedPromise = _chunkELDFBXDVcjs.promiseWithResolvers.call(void 0, );
|
|
1928
2022
|
}
|
|
1929
2023
|
this.#savePersistThrottled();
|
|
1930
2024
|
await this.#onPersistSavedPromise.promise;
|
|
@@ -1960,7 +2054,7 @@ var ActorInstance = class {
|
|
|
1960
2054
|
this._sleep().catch((error) => {
|
|
1961
2055
|
this.#rLog.error({
|
|
1962
2056
|
msg: "error during sleep",
|
|
1963
|
-
error:
|
|
2057
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
1964
2058
|
});
|
|
1965
2059
|
});
|
|
1966
2060
|
}, this.#config.options.sleepTimeout);
|
|
@@ -2003,6 +2097,10 @@ var ActorInstance = class {
|
|
|
2003
2097
|
}
|
|
2004
2098
|
this.#stopCalled = true;
|
|
2005
2099
|
this.#rLog.info({ msg: "actor stopping" });
|
|
2100
|
+
if (this.#sleepTimeout) {
|
|
2101
|
+
clearTimeout(this.#sleepTimeout);
|
|
2102
|
+
this.#sleepTimeout = void 0;
|
|
2103
|
+
}
|
|
2006
2104
|
try {
|
|
2007
2105
|
this.#abortController.abort();
|
|
2008
2106
|
} catch (e3) {
|
|
@@ -2012,16 +2110,16 @@ var ActorInstance = class {
|
|
|
2012
2110
|
this.#rLog.debug({ msg: "calling onStop" });
|
|
2013
2111
|
const result = this.#config.onStop(this.actorContext);
|
|
2014
2112
|
if (result instanceof Promise) {
|
|
2015
|
-
await
|
|
2113
|
+
await _chunkJKOUXDK6cjs.deadline.call(void 0, result, this.#config.options.onStopTimeout);
|
|
2016
2114
|
}
|
|
2017
2115
|
this.#rLog.debug({ msg: "onStop completed" });
|
|
2018
2116
|
} catch (error) {
|
|
2019
|
-
if (error instanceof
|
|
2117
|
+
if (error instanceof _chunkJKOUXDK6cjs.DeadlineError) {
|
|
2020
2118
|
this.#rLog.error({ msg: "onStop timed out" });
|
|
2021
2119
|
} else {
|
|
2022
2120
|
this.#rLog.error({
|
|
2023
2121
|
msg: "error in onStop",
|
|
2024
|
-
error:
|
|
2122
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
2025
2123
|
});
|
|
2026
2124
|
}
|
|
2027
2125
|
}
|
|
@@ -2030,7 +2128,9 @@ var ActorInstance = class {
|
|
|
2030
2128
|
for (const connection of this.#connections.values()) {
|
|
2031
2129
|
promises.push(connection.disconnect());
|
|
2032
2130
|
}
|
|
2033
|
-
await this.#waitBackgroundPromises(
|
|
2131
|
+
await this.#waitBackgroundPromises(
|
|
2132
|
+
this.#config.options.waitUntilTimeout
|
|
2133
|
+
);
|
|
2034
2134
|
if (this.#pendingSaveTimeout) clearTimeout(this.#pendingSaveTimeout);
|
|
2035
2135
|
if (this.#sleepTimeout) clearTimeout(this.#sleepTimeout);
|
|
2036
2136
|
if (this.#checkConnLivenessInterval)
|
|
@@ -2082,14 +2182,14 @@ var ActorInstance = class {
|
|
|
2082
2182
|
// MARK: BARE Conversion Helpers
|
|
2083
2183
|
#convertToBarePersisted(persist) {
|
|
2084
2184
|
return {
|
|
2085
|
-
input: persist.input !== void 0 ?
|
|
2185
|
+
input: persist.input !== void 0 ? _chunkELDFBXDVcjs.bufferToArrayBuffer.call(void 0, cbor2.encode(persist.input)) : null,
|
|
2086
2186
|
hasInitialized: persist.hasInitiated,
|
|
2087
|
-
state:
|
|
2187
|
+
state: _chunkELDFBXDVcjs.bufferToArrayBuffer.call(void 0, cbor2.encode(persist.state)),
|
|
2088
2188
|
connections: persist.connections.map((conn) => ({
|
|
2089
2189
|
id: conn.connId,
|
|
2090
2190
|
token: conn.token,
|
|
2091
|
-
parameters:
|
|
2092
|
-
state:
|
|
2191
|
+
parameters: _chunkELDFBXDVcjs.bufferToArrayBuffer.call(void 0, cbor2.encode(conn.params || {})),
|
|
2192
|
+
state: _chunkELDFBXDVcjs.bufferToArrayBuffer.call(void 0, cbor2.encode(conn.state || {})),
|
|
2093
2193
|
subscriptions: conn.subscriptions.map((sub) => ({
|
|
2094
2194
|
eventName: sub.eventName
|
|
2095
2195
|
})),
|
|
@@ -2211,7 +2311,7 @@ async function importEventSource() {
|
|
|
2211
2311
|
moduleName
|
|
2212
2312
|
)));
|
|
2213
2313
|
_EventSource = es.EventSource;
|
|
2214
|
-
|
|
2314
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug("using eventsource from npm");
|
|
2215
2315
|
} catch (err) {
|
|
2216
2316
|
_EventSource = class MockEventSource {
|
|
2217
2317
|
constructor() {
|
|
@@ -2220,7 +2320,7 @@ async function importEventSource() {
|
|
|
2220
2320
|
);
|
|
2221
2321
|
}
|
|
2222
2322
|
};
|
|
2223
|
-
|
|
2323
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug("using mock eventsource");
|
|
2224
2324
|
}
|
|
2225
2325
|
return _EventSource;
|
|
2226
2326
|
})();
|
|
@@ -2229,7 +2329,7 @@ async function importEventSource() {
|
|
|
2229
2329
|
|
|
2230
2330
|
// src/client/actor-query.ts
|
|
2231
2331
|
async function queryActor(c, query, managerDriver) {
|
|
2232
|
-
|
|
2332
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({ msg: "querying actor", query: JSON.stringify(query) });
|
|
2233
2333
|
let actorOutput;
|
|
2234
2334
|
if ("getForId" in query) {
|
|
2235
2335
|
const output = await managerDriver.getForId({
|
|
@@ -2276,7 +2376,7 @@ async function queryActor(c, query, managerDriver) {
|
|
|
2276
2376
|
} else {
|
|
2277
2377
|
throw new (0, _chunkKSRXX3Z4cjs.InvalidRequest)("Invalid query format");
|
|
2278
2378
|
}
|
|
2279
|
-
|
|
2379
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({ msg: "actor query result", actorId: actorOutput.actorId });
|
|
2280
2380
|
return { actorId: actorOutput.actorId };
|
|
2281
2381
|
}
|
|
2282
2382
|
|
|
@@ -2326,13 +2426,13 @@ async function rawHttpFetch(driver, actorQuery, params, input, init) {
|
|
|
2326
2426
|
}
|
|
2327
2427
|
try {
|
|
2328
2428
|
const { actorId } = await queryActor(void 0, actorQuery, driver);
|
|
2329
|
-
|
|
2429
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({ msg: "found actor for raw http", actorId });
|
|
2330
2430
|
_invariant2.default.call(void 0, actorId, "Missing actor ID");
|
|
2331
2431
|
const normalizedPath = path.startsWith("/") ? path.slice(1) : path;
|
|
2332
2432
|
const url = new URL(`http://actor/raw/http/${normalizedPath}`);
|
|
2333
2433
|
const proxyRequestHeaders = new Headers(mergedInit.headers);
|
|
2334
2434
|
if (params) {
|
|
2335
|
-
proxyRequestHeaders.set(
|
|
2435
|
+
proxyRequestHeaders.set(_chunkJKOUXDK6cjs.HEADER_CONN_PARAMS, JSON.stringify(params));
|
|
2336
2436
|
}
|
|
2337
2437
|
const proxyRequest = new Request(url, {
|
|
2338
2438
|
...mergedInit,
|
|
@@ -2340,9 +2440,9 @@ async function rawHttpFetch(driver, actorQuery, params, input, init) {
|
|
|
2340
2440
|
});
|
|
2341
2441
|
return driver.sendRequest(actorId, proxyRequest);
|
|
2342
2442
|
} catch (err) {
|
|
2343
|
-
const { group, code, message, metadata } =
|
|
2443
|
+
const { group, code, message, metadata } = _chunkELDFBXDVcjs.deconstructError.call(void 0,
|
|
2344
2444
|
err,
|
|
2345
|
-
|
|
2445
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ),
|
|
2346
2446
|
{},
|
|
2347
2447
|
true
|
|
2348
2448
|
);
|
|
@@ -2352,7 +2452,7 @@ async function rawHttpFetch(driver, actorQuery, params, input, init) {
|
|
|
2352
2452
|
async function rawWebSocket(driver, actorQuery, params, path, protocols) {
|
|
2353
2453
|
const encoding = "bare";
|
|
2354
2454
|
const { actorId } = await queryActor(void 0, actorQuery, driver);
|
|
2355
|
-
|
|
2455
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({ msg: "found actor for action", actorId });
|
|
2356
2456
|
_invariant2.default.call(void 0, actorId, "Missing actor ID");
|
|
2357
2457
|
let pathPortion = "";
|
|
2358
2458
|
let queryPortion = "";
|
|
@@ -2368,8 +2468,8 @@ async function rawWebSocket(driver, actorQuery, params, path, protocols) {
|
|
|
2368
2468
|
pathPortion = pathPortion.slice(1);
|
|
2369
2469
|
}
|
|
2370
2470
|
}
|
|
2371
|
-
const fullPath = `${
|
|
2372
|
-
|
|
2471
|
+
const fullPath = `${_chunkJKOUXDK6cjs.PATH_RAW_WEBSOCKET_PREFIX}${pathPortion}${queryPortion}`;
|
|
2472
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
2373
2473
|
msg: "opening websocket",
|
|
2374
2474
|
actorId,
|
|
2375
2475
|
encoding,
|
|
@@ -2395,10 +2495,10 @@ function messageLength(message) {
|
|
|
2395
2495
|
if (typeof message === "string") {
|
|
2396
2496
|
return message.length;
|
|
2397
2497
|
}
|
|
2398
|
-
|
|
2498
|
+
_chunkELDFBXDVcjs.assertUnreachable.call(void 0, message);
|
|
2399
2499
|
}
|
|
2400
2500
|
async function sendHttpRequest(opts) {
|
|
2401
|
-
|
|
2501
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
2402
2502
|
msg: "sending http request",
|
|
2403
2503
|
url: opts.url,
|
|
2404
2504
|
encoding: opts.encoding
|
|
@@ -2407,8 +2507,8 @@ async function sendHttpRequest(opts) {
|
|
|
2407
2507
|
let bodyData;
|
|
2408
2508
|
if (opts.method === "POST" || opts.method === "PUT") {
|
|
2409
2509
|
_invariant2.default.call(void 0, opts.body !== void 0, "missing body");
|
|
2410
|
-
contentType =
|
|
2411
|
-
bodyData =
|
|
2510
|
+
contentType = _chunkJKOUXDK6cjs.contentTypeForEncoding.call(void 0, opts.encoding);
|
|
2511
|
+
bodyData = _chunkJKOUXDK6cjs.serializeWithEncoding.call(void 0,
|
|
2412
2512
|
opts.encoding,
|
|
2413
2513
|
opts.body,
|
|
2414
2514
|
opts.requestVersionedDataHandler
|
|
@@ -2424,7 +2524,7 @@ async function sendHttpRequest(opts) {
|
|
|
2424
2524
|
...contentType ? {
|
|
2425
2525
|
"Content-Type": contentType
|
|
2426
2526
|
} : {},
|
|
2427
|
-
"User-Agent":
|
|
2527
|
+
"User-Agent": _chunkELDFBXDVcjs.httpUserAgent.call(void 0, )
|
|
2428
2528
|
},
|
|
2429
2529
|
body: bodyData,
|
|
2430
2530
|
credentials: "include",
|
|
@@ -2440,23 +2540,33 @@ async function sendHttpRequest(opts) {
|
|
|
2440
2540
|
const bufferResponse = await response.arrayBuffer();
|
|
2441
2541
|
let responseData;
|
|
2442
2542
|
try {
|
|
2443
|
-
responseData =
|
|
2543
|
+
responseData = _chunkJKOUXDK6cjs.deserializeWithEncoding.call(void 0,
|
|
2444
2544
|
opts.encoding,
|
|
2445
2545
|
new Uint8Array(bufferResponse),
|
|
2446
|
-
|
|
2546
|
+
_chunkFDJ3AVNBcjs.HTTP_RESPONSE_ERROR_VERSIONED
|
|
2447
2547
|
);
|
|
2448
2548
|
} catch (error) {
|
|
2449
|
-
const textResponse = new TextDecoder("utf-8", {
|
|
2450
|
-
|
|
2451
|
-
);
|
|
2452
|
-
|
|
2453
|
-
|
|
2549
|
+
const textResponse = new TextDecoder("utf-8", {
|
|
2550
|
+
fatal: false
|
|
2551
|
+
}).decode(bufferResponse);
|
|
2552
|
+
const rayId = response.headers.get("x-rivet-ray-id");
|
|
2553
|
+
if (rayId) {
|
|
2554
|
+
throw new HttpRequestError(
|
|
2555
|
+
`${response.statusText} (${response.status}) (Ray ID: ${rayId}):
|
|
2454
2556
|
${textResponse}`
|
|
2455
|
-
|
|
2557
|
+
);
|
|
2558
|
+
} else {
|
|
2559
|
+
throw new HttpRequestError(
|
|
2560
|
+
`${response.statusText} (${response.status}):
|
|
2561
|
+
${textResponse}`
|
|
2562
|
+
);
|
|
2563
|
+
}
|
|
2456
2564
|
}
|
|
2457
2565
|
let decodedMetadata;
|
|
2458
|
-
if (responseData.metadata &&
|
|
2459
|
-
decodedMetadata = cbor3.decode(
|
|
2566
|
+
if (responseData.metadata && _chunkJKOUXDK6cjs.encodingIsBinary.call(void 0, opts.encoding)) {
|
|
2567
|
+
decodedMetadata = cbor3.decode(
|
|
2568
|
+
new Uint8Array(responseData.metadata)
|
|
2569
|
+
);
|
|
2460
2570
|
}
|
|
2461
2571
|
throw new ActorError(
|
|
2462
2572
|
responseData.group,
|
|
@@ -2470,7 +2580,7 @@ ${textResponse}`
|
|
|
2470
2580
|
}
|
|
2471
2581
|
try {
|
|
2472
2582
|
const buffer = new Uint8Array(await response.arrayBuffer());
|
|
2473
|
-
return
|
|
2583
|
+
return _chunkJKOUXDK6cjs.deserializeWithEncoding.call(void 0,
|
|
2474
2584
|
opts.encoding,
|
|
2475
2585
|
buffer,
|
|
2476
2586
|
opts.responseVersionedDataHandler
|
|
@@ -2517,9 +2627,9 @@ var ActorHandleRaw = class {
|
|
|
2517
2627
|
this.#actorQuery,
|
|
2518
2628
|
this.#driver
|
|
2519
2629
|
);
|
|
2520
|
-
|
|
2630
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({ msg: "found actor for action", actorId });
|
|
2521
2631
|
_invariant2.default.call(void 0, actorId, "Missing actor ID");
|
|
2522
|
-
|
|
2632
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
2523
2633
|
msg: "handling action",
|
|
2524
2634
|
name: opts.name,
|
|
2525
2635
|
encoding: this.#encoding
|
|
@@ -2528,23 +2638,26 @@ var ActorHandleRaw = class {
|
|
|
2528
2638
|
url: `http://actor/action/${encodeURIComponent(opts.name)}`,
|
|
2529
2639
|
method: "POST",
|
|
2530
2640
|
headers: {
|
|
2531
|
-
[
|
|
2532
|
-
...this.#params !== void 0 ? { [
|
|
2641
|
+
[_chunkJKOUXDK6cjs.HEADER_ENCODING]: this.#encoding,
|
|
2642
|
+
...this.#params !== void 0 ? { [_chunkJKOUXDK6cjs.HEADER_CONN_PARAMS]: JSON.stringify(this.#params) } : {}
|
|
2533
2643
|
},
|
|
2534
2644
|
body: {
|
|
2535
|
-
args:
|
|
2645
|
+
args: _chunkELDFBXDVcjs.bufferToArrayBuffer.call(void 0, cbor4.encode(opts.args))
|
|
2536
2646
|
},
|
|
2537
2647
|
encoding: this.#encoding,
|
|
2538
|
-
customFetch: this.#driver.sendRequest.bind(
|
|
2648
|
+
customFetch: this.#driver.sendRequest.bind(
|
|
2649
|
+
this.#driver,
|
|
2650
|
+
actorId
|
|
2651
|
+
),
|
|
2539
2652
|
signal: opts == null ? void 0 : opts.signal,
|
|
2540
|
-
requestVersionedDataHandler:
|
|
2541
|
-
responseVersionedDataHandler:
|
|
2653
|
+
requestVersionedDataHandler: _chunkFDJ3AVNBcjs.HTTP_ACTION_REQUEST_VERSIONED,
|
|
2654
|
+
responseVersionedDataHandler: _chunkFDJ3AVNBcjs.HTTP_ACTION_RESPONSE_VERSIONED
|
|
2542
2655
|
});
|
|
2543
2656
|
return cbor4.decode(new Uint8Array(responseData.output));
|
|
2544
2657
|
} catch (err) {
|
|
2545
|
-
const { group, code, message, metadata } =
|
|
2658
|
+
const { group, code, message, metadata } = _chunkELDFBXDVcjs.deconstructError.call(void 0,
|
|
2546
2659
|
err,
|
|
2547
|
-
|
|
2660
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ),
|
|
2548
2661
|
{},
|
|
2549
2662
|
true
|
|
2550
2663
|
);
|
|
@@ -2558,7 +2671,7 @@ var ActorHandleRaw = class {
|
|
|
2558
2671
|
* @returns {ActorConn<AD>} A connection to the actor.
|
|
2559
2672
|
*/
|
|
2560
2673
|
connect() {
|
|
2561
|
-
|
|
2674
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
2562
2675
|
msg: "establishing connection from handle",
|
|
2563
2676
|
query: this.#actorQuery
|
|
2564
2677
|
});
|
|
@@ -2618,7 +2731,7 @@ var ActorHandleRaw = class {
|
|
|
2618
2731
|
} else if ("getOrCreateForKey" in this.#actorQuery) {
|
|
2619
2732
|
name = this.#actorQuery.getOrCreateForKey.name;
|
|
2620
2733
|
} else {
|
|
2621
|
-
|
|
2734
|
+
_chunkJKOUXDK6cjs.assertUnreachable.call(void 0, this.#actorQuery);
|
|
2622
2735
|
}
|
|
2623
2736
|
const { actorId } = await queryActor(
|
|
2624
2737
|
void 0,
|
|
@@ -2632,7 +2745,7 @@ var ActorHandleRaw = class {
|
|
|
2632
2745
|
} else if ("create" in this.#actorQuery) {
|
|
2633
2746
|
_invariant2.default.call(void 0, false, "actorQuery cannot be create");
|
|
2634
2747
|
} else {
|
|
2635
|
-
|
|
2748
|
+
_chunkJKOUXDK6cjs.assertUnreachable.call(void 0, this.#actorQuery);
|
|
2636
2749
|
}
|
|
2637
2750
|
}
|
|
2638
2751
|
};
|
|
@@ -2665,7 +2778,7 @@ var ClientRaw = (_class4 = class {
|
|
|
2665
2778
|
* @returns {ActorHandle<AD>} - A handle to the actor.
|
|
2666
2779
|
*/
|
|
2667
2780
|
getForId(name, actorId, opts) {
|
|
2668
|
-
|
|
2781
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
2669
2782
|
msg: "get handle to actor with id",
|
|
2670
2783
|
name,
|
|
2671
2784
|
actorId,
|
|
@@ -2691,7 +2804,7 @@ var ClientRaw = (_class4 = class {
|
|
|
2691
2804
|
*/
|
|
2692
2805
|
get(name, key, opts) {
|
|
2693
2806
|
const keyArray = typeof key === "string" ? [key] : key || [];
|
|
2694
|
-
|
|
2807
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
2695
2808
|
msg: "get handle to actor",
|
|
2696
2809
|
name,
|
|
2697
2810
|
key: keyArray,
|
|
@@ -2717,7 +2830,7 @@ var ClientRaw = (_class4 = class {
|
|
|
2717
2830
|
*/
|
|
2718
2831
|
getOrCreate(name, key, opts) {
|
|
2719
2832
|
const keyArray = typeof key === "string" ? [key] : key || [];
|
|
2720
|
-
|
|
2833
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
2721
2834
|
msg: "get or create handle to actor",
|
|
2722
2835
|
name,
|
|
2723
2836
|
key: keyArray,
|
|
@@ -2755,15 +2868,19 @@ var ClientRaw = (_class4 = class {
|
|
|
2755
2868
|
key: keyArray
|
|
2756
2869
|
}
|
|
2757
2870
|
};
|
|
2758
|
-
|
|
2871
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
2759
2872
|
msg: "create actor handle",
|
|
2760
2873
|
name,
|
|
2761
2874
|
key: keyArray,
|
|
2762
2875
|
parameters: opts == null ? void 0 : opts.params,
|
|
2763
2876
|
create: createQuery.create
|
|
2764
2877
|
});
|
|
2765
|
-
const { actorId } = await queryActor(
|
|
2766
|
-
|
|
2878
|
+
const { actorId } = await queryActor(
|
|
2879
|
+
void 0,
|
|
2880
|
+
createQuery,
|
|
2881
|
+
this.#driver
|
|
2882
|
+
);
|
|
2883
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
2767
2884
|
msg: "created actor with ID",
|
|
2768
2885
|
name,
|
|
2769
2886
|
key: keyArray,
|
|
@@ -2800,11 +2917,11 @@ var ClientRaw = (_class4 = class {
|
|
|
2800
2917
|
*/
|
|
2801
2918
|
async dispose() {
|
|
2802
2919
|
if (this.#disposed) {
|
|
2803
|
-
|
|
2920
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).warn({ msg: "client already disconnected" });
|
|
2804
2921
|
return;
|
|
2805
2922
|
}
|
|
2806
2923
|
this.#disposed = true;
|
|
2807
|
-
|
|
2924
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({ msg: "disposing client" });
|
|
2808
2925
|
const disposePromises = [];
|
|
2809
2926
|
for (const conn of this[ACTOR_CONNS_SYMBOL].values()) {
|
|
2810
2927
|
disposePromises.push(conn.dispose());
|
|
@@ -2827,21 +2944,13 @@ function createClientWithDriver(driver, config) {
|
|
|
2827
2944
|
return {
|
|
2828
2945
|
// Handle methods (stateless action)
|
|
2829
2946
|
get: (key, opts) => {
|
|
2830
|
-
return target.get(
|
|
2831
|
-
prop,
|
|
2832
|
-
key,
|
|
2833
|
-
opts
|
|
2834
|
-
);
|
|
2947
|
+
return target.get(prop, key, opts);
|
|
2835
2948
|
},
|
|
2836
2949
|
getOrCreate: (key, opts) => {
|
|
2837
2950
|
return target.getOrCreate(prop, key, opts);
|
|
2838
2951
|
},
|
|
2839
2952
|
getForId: (actorId, opts) => {
|
|
2840
|
-
return target.getForId(
|
|
2841
|
-
prop,
|
|
2842
|
-
actorId,
|
|
2843
|
-
opts
|
|
2844
|
-
);
|
|
2953
|
+
return target.getForId(prop, actorId, opts);
|
|
2845
2954
|
},
|
|
2846
2955
|
create: async (key, opts = {}) => {
|
|
2847
2956
|
return await target.create(prop, key, opts);
|
|
@@ -2893,7 +3002,10 @@ function createActorProxy(handle) {
|
|
|
2893
3002
|
},
|
|
2894
3003
|
// Support proper property descriptors
|
|
2895
3004
|
getOwnPropertyDescriptor(target, prop) {
|
|
2896
|
-
const targetDescriptor = Reflect.getOwnPropertyDescriptor(
|
|
3005
|
+
const targetDescriptor = Reflect.getOwnPropertyDescriptor(
|
|
3006
|
+
target,
|
|
3007
|
+
prop
|
|
3008
|
+
);
|
|
2897
3009
|
if (targetDescriptor) {
|
|
2898
3010
|
return targetDescriptor;
|
|
2899
3011
|
}
|
|
@@ -2969,18 +3081,22 @@ var ActorConnRaw = class {
|
|
|
2969
3081
|
* @returns {Promise<Response>} - A promise that resolves to the response of the action function.
|
|
2970
3082
|
*/
|
|
2971
3083
|
async action(opts) {
|
|
2972
|
-
|
|
3084
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({ msg: "action", name: opts.name, args: opts.args });
|
|
2973
3085
|
const actionId = this.#actionIdCounter;
|
|
2974
3086
|
this.#actionIdCounter += 1;
|
|
2975
|
-
const { promise, resolve, reject } =
|
|
2976
|
-
this.#actionsInFlight.set(actionId, {
|
|
3087
|
+
const { promise, resolve, reject } = _chunkELDFBXDVcjs.promiseWithResolvers.call(void 0, );
|
|
3088
|
+
this.#actionsInFlight.set(actionId, {
|
|
3089
|
+
name: opts.name,
|
|
3090
|
+
resolve,
|
|
3091
|
+
reject
|
|
3092
|
+
});
|
|
2977
3093
|
this.#sendMessage({
|
|
2978
3094
|
body: {
|
|
2979
3095
|
tag: "ActionRequest",
|
|
2980
3096
|
val: {
|
|
2981
3097
|
id: BigInt(actionId),
|
|
2982
3098
|
name: opts.name,
|
|
2983
|
-
args:
|
|
3099
|
+
args: _chunkELDFBXDVcjs.bufferToArrayBuffer.call(void 0, cbor5.encode(opts.args))
|
|
2984
3100
|
}
|
|
2985
3101
|
}
|
|
2986
3102
|
});
|
|
@@ -3009,10 +3125,10 @@ var ActorConnRaw = class {
|
|
|
3009
3125
|
minTimeout: 250,
|
|
3010
3126
|
maxTimeout: 3e4,
|
|
3011
3127
|
onFailedAttempt: (error) => {
|
|
3012
|
-
|
|
3128
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).warn({
|
|
3013
3129
|
msg: "failed to reconnect",
|
|
3014
3130
|
attempt: error.attemptNumber,
|
|
3015
|
-
error:
|
|
3131
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
3016
3132
|
});
|
|
3017
3133
|
},
|
|
3018
3134
|
// Cancel retry if aborted
|
|
@@ -3020,7 +3136,7 @@ var ActorConnRaw = class {
|
|
|
3020
3136
|
});
|
|
3021
3137
|
} catch (err) {
|
|
3022
3138
|
if (err.name === "AbortError") {
|
|
3023
|
-
|
|
3139
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).info({ msg: "connection retry aborted" });
|
|
3024
3140
|
return;
|
|
3025
3141
|
} else {
|
|
3026
3142
|
throw err;
|
|
@@ -3032,13 +3148,13 @@ var ActorConnRaw = class {
|
|
|
3032
3148
|
try {
|
|
3033
3149
|
if (this.#onOpenPromise)
|
|
3034
3150
|
throw new Error("#onOpenPromise already defined");
|
|
3035
|
-
this.#onOpenPromise =
|
|
3151
|
+
this.#onOpenPromise = _chunkELDFBXDVcjs.promiseWithResolvers.call(void 0, );
|
|
3036
3152
|
if (this.#client[TRANSPORT_SYMBOL] === "websocket") {
|
|
3037
3153
|
await this.#connectWebSocket();
|
|
3038
3154
|
} else if (this.#client[TRANSPORT_SYMBOL] === "sse") {
|
|
3039
3155
|
await this.#connectSse();
|
|
3040
3156
|
} else {
|
|
3041
|
-
|
|
3157
|
+
_chunkELDFBXDVcjs.assertUnreachable.call(void 0, this.#client[TRANSPORT_SYMBOL]);
|
|
3042
3158
|
}
|
|
3043
3159
|
await this.#onOpenPromise.promise;
|
|
3044
3160
|
} finally {
|
|
@@ -3053,13 +3169,13 @@ var ActorConnRaw = class {
|
|
|
3053
3169
|
);
|
|
3054
3170
|
const isReconnection = this.#connectionId && this.#connectionToken;
|
|
3055
3171
|
if (isReconnection) {
|
|
3056
|
-
|
|
3172
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
3057
3173
|
msg: "attempting websocket reconnection",
|
|
3058
3174
|
connectionId: this.#connectionId
|
|
3059
3175
|
});
|
|
3060
3176
|
}
|
|
3061
3177
|
const ws = await this.#driver.openWebSocket(
|
|
3062
|
-
|
|
3178
|
+
_chunkJKOUXDK6cjs.PATH_CONNECT_WEBSOCKET,
|
|
3063
3179
|
actorId,
|
|
3064
3180
|
this.#encoding,
|
|
3065
3181
|
this.#params,
|
|
@@ -3067,7 +3183,7 @@ var ActorConnRaw = class {
|
|
|
3067
3183
|
isReconnection ? this.#connectionId : void 0,
|
|
3068
3184
|
isReconnection ? this.#connectionToken : void 0
|
|
3069
3185
|
);
|
|
3070
|
-
|
|
3186
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
3071
3187
|
msg: "transport set to new websocket",
|
|
3072
3188
|
connectionId: this.#connectionId,
|
|
3073
3189
|
readyState: ws.readyState,
|
|
@@ -3075,7 +3191,7 @@ var ActorConnRaw = class {
|
|
|
3075
3191
|
});
|
|
3076
3192
|
this.#transport = { websocket: ws };
|
|
3077
3193
|
ws.addEventListener("open", () => {
|
|
3078
|
-
|
|
3194
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
3079
3195
|
msg: "client websocket open",
|
|
3080
3196
|
connectionId: this.#connectionId
|
|
3081
3197
|
});
|
|
@@ -3084,9 +3200,9 @@ var ActorConnRaw = class {
|
|
|
3084
3200
|
try {
|
|
3085
3201
|
await this.#handleOnMessage(ev.data);
|
|
3086
3202
|
} catch (err) {
|
|
3087
|
-
|
|
3203
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).error({
|
|
3088
3204
|
msg: "error in websocket message handler",
|
|
3089
|
-
error:
|
|
3205
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, err)
|
|
3090
3206
|
});
|
|
3091
3207
|
}
|
|
3092
3208
|
});
|
|
@@ -3094,9 +3210,9 @@ var ActorConnRaw = class {
|
|
|
3094
3210
|
try {
|
|
3095
3211
|
this.#handleOnClose(ev);
|
|
3096
3212
|
} catch (err) {
|
|
3097
|
-
|
|
3213
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).error({
|
|
3098
3214
|
msg: "error in websocket close handler",
|
|
3099
|
-
error:
|
|
3215
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, err)
|
|
3100
3216
|
});
|
|
3101
3217
|
}
|
|
3102
3218
|
});
|
|
@@ -3104,9 +3220,9 @@ var ActorConnRaw = class {
|
|
|
3104
3220
|
try {
|
|
3105
3221
|
this.#handleOnError();
|
|
3106
3222
|
} catch (err) {
|
|
3107
|
-
|
|
3223
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).error({
|
|
3108
3224
|
msg: "error in websocket error handler",
|
|
3109
|
-
error:
|
|
3225
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, err)
|
|
3110
3226
|
});
|
|
3111
3227
|
}
|
|
3112
3228
|
});
|
|
@@ -3118,9 +3234,9 @@ var ActorConnRaw = class {
|
|
|
3118
3234
|
this.#actorQuery,
|
|
3119
3235
|
this.#driver
|
|
3120
3236
|
);
|
|
3121
|
-
|
|
3237
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({ msg: "found actor for sse connection", actorId });
|
|
3122
3238
|
_invariant2.default.call(void 0, actorId, "Missing actor ID");
|
|
3123
|
-
|
|
3239
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
3124
3240
|
msg: "opening sse connection",
|
|
3125
3241
|
actorId,
|
|
3126
3242
|
encoding: this.#encoding
|
|
@@ -3134,12 +3250,16 @@ var ActorConnRaw = class {
|
|
|
3134
3250
|
...init,
|
|
3135
3251
|
headers: {
|
|
3136
3252
|
...init == null ? void 0 : init.headers,
|
|
3137
|
-
"User-Agent":
|
|
3138
|
-
[
|
|
3139
|
-
...this.#params !== void 0 ? {
|
|
3253
|
+
"User-Agent": _chunkELDFBXDVcjs.httpUserAgent.call(void 0, ),
|
|
3254
|
+
[_chunkJKOUXDK6cjs.HEADER_ENCODING]: this.#encoding,
|
|
3255
|
+
...this.#params !== void 0 ? {
|
|
3256
|
+
[_chunkJKOUXDK6cjs.HEADER_CONN_PARAMS]: JSON.stringify(
|
|
3257
|
+
this.#params
|
|
3258
|
+
)
|
|
3259
|
+
} : {},
|
|
3140
3260
|
...isReconnection ? {
|
|
3141
|
-
[
|
|
3142
|
-
[
|
|
3261
|
+
[_chunkJKOUXDK6cjs.HEADER_CONN_ID]: this.#connectionId,
|
|
3262
|
+
[_chunkJKOUXDK6cjs.HEADER_CONN_TOKEN]: this.#connectionToken
|
|
3143
3263
|
} : {}
|
|
3144
3264
|
}
|
|
3145
3265
|
})
|
|
@@ -3157,7 +3277,7 @@ var ActorConnRaw = class {
|
|
|
3157
3277
|
}
|
|
3158
3278
|
/** Called by the onopen event from drivers. */
|
|
3159
3279
|
#handleOnOpen() {
|
|
3160
|
-
|
|
3280
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
3161
3281
|
msg: "socket open",
|
|
3162
3282
|
messageQueueLength: this.#messageQueue.length,
|
|
3163
3283
|
connectionId: this.#connectionId
|
|
@@ -3165,14 +3285,14 @@ var ActorConnRaw = class {
|
|
|
3165
3285
|
if (this.#onOpenPromise) {
|
|
3166
3286
|
this.#onOpenPromise.resolve(void 0);
|
|
3167
3287
|
} else {
|
|
3168
|
-
|
|
3288
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).warn({ msg: "#onOpenPromise is undefined" });
|
|
3169
3289
|
}
|
|
3170
3290
|
for (const eventName of this.#eventSubscriptions.keys()) {
|
|
3171
3291
|
this.#sendSubscription(eventName, true);
|
|
3172
3292
|
}
|
|
3173
3293
|
const queue = this.#messageQueue;
|
|
3174
3294
|
this.#messageQueue = [];
|
|
3175
|
-
|
|
3295
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
3176
3296
|
msg: "flushing message queue",
|
|
3177
3297
|
queueLength: queue.length
|
|
3178
3298
|
});
|
|
@@ -3182,24 +3302,24 @@ var ActorConnRaw = class {
|
|
|
3182
3302
|
}
|
|
3183
3303
|
/** Called by the onmessage event from drivers. */
|
|
3184
3304
|
async #handleOnMessage(data) {
|
|
3185
|
-
|
|
3305
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).trace({
|
|
3186
3306
|
msg: "received message",
|
|
3187
3307
|
dataType: typeof data,
|
|
3188
3308
|
isBlob: data instanceof Blob,
|
|
3189
3309
|
isArrayBuffer: data instanceof ArrayBuffer
|
|
3190
3310
|
});
|
|
3191
3311
|
const response = await this.#parseMessage(data);
|
|
3192
|
-
|
|
3193
|
-
|
|
3312
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).trace(
|
|
3313
|
+
_chunkELDFBXDVcjs.getEnvUniversal.call(void 0, "_RIVETKIT_LOG_MESSAGE") ? {
|
|
3194
3314
|
msg: "parsed message",
|
|
3195
|
-
message:
|
|
3315
|
+
message: _chunkJKOUXDK6cjs.jsonStringifyCompat.call(void 0, response).substring(0, 100) + "..."
|
|
3196
3316
|
} : { msg: "parsed message" }
|
|
3197
3317
|
);
|
|
3198
3318
|
if (response.body.tag === "Init") {
|
|
3199
3319
|
this.#actorId = response.body.val.actorId;
|
|
3200
3320
|
this.#connectionId = response.body.val.connectionId;
|
|
3201
3321
|
this.#connectionToken = response.body.val.connectionToken;
|
|
3202
|
-
|
|
3322
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).trace({
|
|
3203
3323
|
msg: "received init message",
|
|
3204
3324
|
actorId: this.#actorId,
|
|
3205
3325
|
connectionId: this.#connectionId
|
|
@@ -3209,7 +3329,7 @@ var ActorConnRaw = class {
|
|
|
3209
3329
|
const { group, code, message, metadata, actionId } = response.body.val;
|
|
3210
3330
|
if (actionId) {
|
|
3211
3331
|
const inFlight = this.#takeActionInFlight(Number(actionId));
|
|
3212
|
-
|
|
3332
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).warn({
|
|
3213
3333
|
msg: "action error",
|
|
3214
3334
|
actionId,
|
|
3215
3335
|
actionName: inFlight == null ? void 0 : inFlight.name,
|
|
@@ -3218,9 +3338,11 @@ var ActorConnRaw = class {
|
|
|
3218
3338
|
message,
|
|
3219
3339
|
metadata
|
|
3220
3340
|
});
|
|
3221
|
-
inFlight.reject(
|
|
3341
|
+
inFlight.reject(
|
|
3342
|
+
new ActorError(group, code, message, metadata)
|
|
3343
|
+
);
|
|
3222
3344
|
} else {
|
|
3223
|
-
|
|
3345
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).warn({
|
|
3224
3346
|
msg: "connection error",
|
|
3225
3347
|
group,
|
|
3226
3348
|
code,
|
|
@@ -3244,22 +3366,25 @@ var ActorConnRaw = class {
|
|
|
3244
3366
|
}
|
|
3245
3367
|
} else if (response.body.tag === "ActionResponse") {
|
|
3246
3368
|
const { id: actionId } = response.body.val;
|
|
3247
|
-
|
|
3369
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).trace({
|
|
3248
3370
|
msg: "received action response",
|
|
3249
3371
|
actionId
|
|
3250
3372
|
});
|
|
3251
3373
|
const inFlight = this.#takeActionInFlight(Number(actionId));
|
|
3252
|
-
|
|
3374
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).trace({
|
|
3253
3375
|
msg: "resolving action promise",
|
|
3254
3376
|
actionId,
|
|
3255
3377
|
actionName: inFlight == null ? void 0 : inFlight.name
|
|
3256
3378
|
});
|
|
3257
3379
|
inFlight.resolve(response.body.val);
|
|
3258
3380
|
} else if (response.body.tag === "Event") {
|
|
3259
|
-
|
|
3381
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).trace({
|
|
3382
|
+
msg: "received event",
|
|
3383
|
+
name: response.body.val.name
|
|
3384
|
+
});
|
|
3260
3385
|
this.#dispatchEvent(response.body.val);
|
|
3261
3386
|
} else {
|
|
3262
|
-
|
|
3387
|
+
_chunkELDFBXDVcjs.assertUnreachable.call(void 0, response.body);
|
|
3263
3388
|
}
|
|
3264
3389
|
}
|
|
3265
3390
|
/** Called by the onclose event from drivers. */
|
|
@@ -3269,7 +3394,7 @@ var ActorConnRaw = class {
|
|
|
3269
3394
|
}
|
|
3270
3395
|
const closeEvent = event;
|
|
3271
3396
|
const wasClean = closeEvent.wasClean;
|
|
3272
|
-
|
|
3397
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).info({
|
|
3273
3398
|
msg: "socket closed",
|
|
3274
3399
|
code: closeEvent.code,
|
|
3275
3400
|
reason: closeEvent.reason,
|
|
@@ -3279,7 +3404,7 @@ var ActorConnRaw = class {
|
|
|
3279
3404
|
actionsInFlight: this.#actionsInFlight.size
|
|
3280
3405
|
});
|
|
3281
3406
|
if (this.#actionsInFlight.size > 0) {
|
|
3282
|
-
|
|
3407
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
3283
3408
|
msg: "rejecting in-flight actions after disconnect",
|
|
3284
3409
|
count: this.#actionsInFlight.size,
|
|
3285
3410
|
connectionId: this.#connectionId,
|
|
@@ -3295,7 +3420,7 @@ var ActorConnRaw = class {
|
|
|
3295
3420
|
}
|
|
3296
3421
|
this.#transport = void 0;
|
|
3297
3422
|
if (!this.#disposed && !this.#connecting) {
|
|
3298
|
-
|
|
3423
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
3299
3424
|
msg: "triggering reconnect",
|
|
3300
3425
|
connectionId: this.#connectionId,
|
|
3301
3426
|
messageQueueLength: this.#messageQueue.length
|
|
@@ -3306,7 +3431,7 @@ var ActorConnRaw = class {
|
|
|
3306
3431
|
/** Called by the onerror event from drivers. */
|
|
3307
3432
|
#handleOnError() {
|
|
3308
3433
|
if (this.#disposed) return;
|
|
3309
|
-
|
|
3434
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).warn("socket error");
|
|
3310
3435
|
}
|
|
3311
3436
|
#takeActionInFlight(id) {
|
|
3312
3437
|
const inFlight = this.#actionsInFlight.get(id);
|
|
@@ -3336,9 +3461,9 @@ var ActorConnRaw = class {
|
|
|
3336
3461
|
try {
|
|
3337
3462
|
handler(error);
|
|
3338
3463
|
} catch (err) {
|
|
3339
|
-
|
|
3464
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).error({
|
|
3340
3465
|
msg: "error in connection error handler",
|
|
3341
|
-
error:
|
|
3466
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, err)
|
|
3342
3467
|
});
|
|
3343
3468
|
}
|
|
3344
3469
|
}
|
|
@@ -3409,11 +3534,11 @@ var ActorConnRaw = class {
|
|
|
3409
3534
|
}
|
|
3410
3535
|
let queueMessage = false;
|
|
3411
3536
|
if (!this.#transport) {
|
|
3412
|
-
|
|
3537
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({ msg: "no transport, queueing message" });
|
|
3413
3538
|
queueMessage = true;
|
|
3414
3539
|
} else if ("websocket" in this.#transport) {
|
|
3415
3540
|
const readyState = this.#transport.websocket.readyState;
|
|
3416
|
-
|
|
3541
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
3417
3542
|
msg: "websocket send attempt",
|
|
3418
3543
|
readyState,
|
|
3419
3544
|
readyStateString: readyState === 0 ? "CONNECTING" : readyState === 1 ? "OPEN" : readyState === 2 ? "CLOSING" : "CLOSED",
|
|
@@ -3423,18 +3548,18 @@ var ActorConnRaw = class {
|
|
|
3423
3548
|
});
|
|
3424
3549
|
if (readyState === 1) {
|
|
3425
3550
|
try {
|
|
3426
|
-
const messageSerialized =
|
|
3551
|
+
const messageSerialized = _chunkJKOUXDK6cjs.serializeWithEncoding.call(void 0,
|
|
3427
3552
|
this.#encoding,
|
|
3428
3553
|
message,
|
|
3429
|
-
|
|
3554
|
+
_chunkFDJ3AVNBcjs.TO_SERVER_VERSIONED
|
|
3430
3555
|
);
|
|
3431
3556
|
this.#transport.websocket.send(messageSerialized);
|
|
3432
|
-
|
|
3557
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).trace({
|
|
3433
3558
|
msg: "sent websocket message",
|
|
3434
3559
|
len: messageLength(messageSerialized)
|
|
3435
3560
|
});
|
|
3436
3561
|
} catch (error) {
|
|
3437
|
-
|
|
3562
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).warn({
|
|
3438
3563
|
msg: "failed to send message, added to queue",
|
|
3439
3564
|
error,
|
|
3440
3565
|
connectionId: this.#connectionId
|
|
@@ -3442,7 +3567,7 @@ var ActorConnRaw = class {
|
|
|
3442
3567
|
queueMessage = true;
|
|
3443
3568
|
}
|
|
3444
3569
|
} else {
|
|
3445
|
-
|
|
3570
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
3446
3571
|
msg: "websocket not open, queueing message",
|
|
3447
3572
|
readyState
|
|
3448
3573
|
});
|
|
@@ -3455,11 +3580,11 @@ var ActorConnRaw = class {
|
|
|
3455
3580
|
queueMessage = true;
|
|
3456
3581
|
}
|
|
3457
3582
|
} else {
|
|
3458
|
-
|
|
3583
|
+
_chunkELDFBXDVcjs.assertUnreachable.call(void 0, this.#transport);
|
|
3459
3584
|
}
|
|
3460
3585
|
if (!(opts == null ? void 0 : opts.ephemeral) && queueMessage) {
|
|
3461
3586
|
this.#messageQueue.push(message);
|
|
3462
|
-
|
|
3587
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
3463
3588
|
msg: "queued connection message",
|
|
3464
3589
|
queueLength: this.#messageQueue.length,
|
|
3465
3590
|
connectionId: this.#connectionId,
|
|
@@ -3471,14 +3596,16 @@ var ActorConnRaw = class {
|
|
|
3471
3596
|
async #sendHttpMessage(message, opts) {
|
|
3472
3597
|
try {
|
|
3473
3598
|
if (!this.#actorId || !this.#connectionId || !this.#connectionToken)
|
|
3474
|
-
throw new InternalError2(
|
|
3475
|
-
|
|
3476
|
-
|
|
3599
|
+
throw new InternalError2(
|
|
3600
|
+
"Missing connection ID or token."
|
|
3601
|
+
);
|
|
3602
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).trace(
|
|
3603
|
+
_chunkELDFBXDVcjs.getEnvUniversal.call(void 0, "_RIVETKIT_LOG_MESSAGE") ? {
|
|
3477
3604
|
msg: "sent http message",
|
|
3478
|
-
message: `${
|
|
3605
|
+
message: `${_chunkJKOUXDK6cjs.jsonStringifyCompat.call(void 0, message).substring(0, 100)}...`
|
|
3479
3606
|
} : { msg: "sent http message" }
|
|
3480
3607
|
);
|
|
3481
|
-
|
|
3608
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({
|
|
3482
3609
|
msg: "sending http message",
|
|
3483
3610
|
actorId: this.#actorId,
|
|
3484
3611
|
connectionId: this.#connectionId
|
|
@@ -3487,19 +3614,25 @@ var ActorConnRaw = class {
|
|
|
3487
3614
|
url: "http://actor/connections/message",
|
|
3488
3615
|
method: "POST",
|
|
3489
3616
|
headers: {
|
|
3490
|
-
[
|
|
3491
|
-
[
|
|
3492
|
-
[
|
|
3617
|
+
[_chunkJKOUXDK6cjs.HEADER_ENCODING]: this.#encoding,
|
|
3618
|
+
[_chunkJKOUXDK6cjs.HEADER_CONN_ID]: this.#connectionId,
|
|
3619
|
+
[_chunkJKOUXDK6cjs.HEADER_CONN_TOKEN]: this.#connectionToken
|
|
3493
3620
|
},
|
|
3494
3621
|
body: message,
|
|
3495
3622
|
encoding: this.#encoding,
|
|
3496
3623
|
skipParseResponse: true,
|
|
3497
|
-
customFetch: this.#driver.sendRequest.bind(
|
|
3498
|
-
|
|
3499
|
-
|
|
3624
|
+
customFetch: this.#driver.sendRequest.bind(
|
|
3625
|
+
this.#driver,
|
|
3626
|
+
this.#actorId
|
|
3627
|
+
),
|
|
3628
|
+
requestVersionedDataHandler: _chunkFDJ3AVNBcjs.TO_SERVER_VERSIONED,
|
|
3629
|
+
responseVersionedDataHandler: _chunkFDJ3AVNBcjs.TO_CLIENT_VERSIONED
|
|
3500
3630
|
});
|
|
3501
3631
|
} catch (error) {
|
|
3502
|
-
|
|
3632
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).warn({
|
|
3633
|
+
msg: "failed to send message, added to queue",
|
|
3634
|
+
error
|
|
3635
|
+
});
|
|
3503
3636
|
if (!(opts == null ? void 0 : opts.ephemeral)) {
|
|
3504
3637
|
this.#messageQueue.unshift(message);
|
|
3505
3638
|
}
|
|
@@ -3507,7 +3640,7 @@ var ActorConnRaw = class {
|
|
|
3507
3640
|
}
|
|
3508
3641
|
async #parseMessage(data) {
|
|
3509
3642
|
_invariant2.default.call(void 0, this.#transport, "transport must be defined");
|
|
3510
|
-
if (
|
|
3643
|
+
if (_chunkJKOUXDK6cjs.encodingIsBinary.call(void 0, this.#encoding) && "sse" in this.#transport) {
|
|
3511
3644
|
if (typeof data === "string") {
|
|
3512
3645
|
const binaryString = atob(data);
|
|
3513
3646
|
data = new Uint8Array(
|
|
@@ -3519,8 +3652,12 @@ var ActorConnRaw = class {
|
|
|
3519
3652
|
);
|
|
3520
3653
|
}
|
|
3521
3654
|
}
|
|
3522
|
-
const buffer = await
|
|
3523
|
-
return
|
|
3655
|
+
const buffer = await _chunkFDJ3AVNBcjs.inputDataToBuffer.call(void 0, data);
|
|
3656
|
+
return _chunkJKOUXDK6cjs.deserializeWithEncoding.call(void 0,
|
|
3657
|
+
this.#encoding,
|
|
3658
|
+
buffer,
|
|
3659
|
+
_chunkFDJ3AVNBcjs.TO_CLIENT_VERSIONED
|
|
3660
|
+
);
|
|
3524
3661
|
}
|
|
3525
3662
|
/**
|
|
3526
3663
|
* Get the actor ID (for testing purposes).
|
|
@@ -3543,39 +3680,39 @@ var ActorConnRaw = class {
|
|
|
3543
3680
|
*/
|
|
3544
3681
|
async dispose() {
|
|
3545
3682
|
if (this.#disposed) {
|
|
3546
|
-
|
|
3683
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).warn({ msg: "connection already disconnected" });
|
|
3547
3684
|
return;
|
|
3548
3685
|
}
|
|
3549
3686
|
this.#disposed = true;
|
|
3550
|
-
|
|
3687
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({ msg: "disposing actor conn" });
|
|
3551
3688
|
clearInterval(this.#keepNodeAliveInterval);
|
|
3552
3689
|
this.#abortController.abort();
|
|
3553
3690
|
this.#client[ACTOR_CONNS_SYMBOL].delete(this);
|
|
3554
3691
|
if (!this.#transport) {
|
|
3555
3692
|
} else if ("websocket" in this.#transport) {
|
|
3556
|
-
|
|
3693
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug("closing ws");
|
|
3557
3694
|
const ws = this.#transport.websocket;
|
|
3558
3695
|
if (ws.readyState === 2 || ws.readyState === 3) {
|
|
3559
|
-
|
|
3696
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({ msg: "ws already closed or closing" });
|
|
3560
3697
|
} else {
|
|
3561
|
-
const { promise, resolve } =
|
|
3698
|
+
const { promise, resolve } = _chunkELDFBXDVcjs.promiseWithResolvers.call(void 0, );
|
|
3562
3699
|
ws.addEventListener("close", () => {
|
|
3563
|
-
|
|
3700
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug({ msg: "ws closed" });
|
|
3564
3701
|
resolve(void 0);
|
|
3565
3702
|
});
|
|
3566
3703
|
ws.close(1e3, "Normal closure");
|
|
3567
3704
|
await promise;
|
|
3568
3705
|
}
|
|
3569
3706
|
} else if ("sse" in this.#transport) {
|
|
3570
|
-
|
|
3707
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).debug("closing sse");
|
|
3571
3708
|
if (this.#connectionId && this.#connectionToken) {
|
|
3572
3709
|
try {
|
|
3573
3710
|
await sendHttpRequest({
|
|
3574
3711
|
url: "http://actor/connections/close",
|
|
3575
3712
|
method: "POST",
|
|
3576
3713
|
headers: {
|
|
3577
|
-
[
|
|
3578
|
-
[
|
|
3714
|
+
[_chunkJKOUXDK6cjs.HEADER_CONN_ID]: this.#connectionId,
|
|
3715
|
+
[_chunkJKOUXDK6cjs.HEADER_CONN_TOKEN]: this.#connectionToken
|
|
3579
3716
|
},
|
|
3580
3717
|
encoding: this.#encoding,
|
|
3581
3718
|
skipParseResponse: true,
|
|
@@ -3583,16 +3720,19 @@ var ActorConnRaw = class {
|
|
|
3583
3720
|
this.#driver,
|
|
3584
3721
|
this.#actorId
|
|
3585
3722
|
),
|
|
3586
|
-
requestVersionedDataHandler:
|
|
3587
|
-
responseVersionedDataHandler:
|
|
3723
|
+
requestVersionedDataHandler: _chunkFDJ3AVNBcjs.TO_SERVER_VERSIONED,
|
|
3724
|
+
responseVersionedDataHandler: _chunkFDJ3AVNBcjs.TO_CLIENT_VERSIONED
|
|
3588
3725
|
});
|
|
3589
3726
|
} catch (error) {
|
|
3590
|
-
|
|
3727
|
+
_chunkLWGCMELPcjs.logger.call(void 0, ).warn({
|
|
3728
|
+
msg: "failed to send close request",
|
|
3729
|
+
error
|
|
3730
|
+
});
|
|
3591
3731
|
}
|
|
3592
3732
|
}
|
|
3593
3733
|
this.#transport.sse.close();
|
|
3594
3734
|
} else {
|
|
3595
|
-
|
|
3735
|
+
_chunkELDFBXDVcjs.assertUnreachable.call(void 0, this.#transport);
|
|
3596
3736
|
}
|
|
3597
3737
|
this.#transport = void 0;
|
|
3598
3738
|
}
|
|
@@ -3618,7 +3758,7 @@ var ActorConnRaw = class {
|
|
|
3618
3758
|
|
|
3619
3759
|
// src/remote-manager-driver/log.ts
|
|
3620
3760
|
function logger2() {
|
|
3621
|
-
return
|
|
3761
|
+
return _chunkHN7UXCYQcjs.getLogger.call(void 0, "remote-manager-driver");
|
|
3622
3762
|
}
|
|
3623
3763
|
|
|
3624
3764
|
// src/remote-manager-driver/api-utils.ts
|
|
@@ -3635,7 +3775,7 @@ function getEndpoint(config) {
|
|
|
3635
3775
|
}
|
|
3636
3776
|
async function apiCall(config, method, path, body) {
|
|
3637
3777
|
const endpoint = getEndpoint(config);
|
|
3638
|
-
const url =
|
|
3778
|
+
const url = _chunkELDFBXDVcjs.combineUrlPath.call(void 0, endpoint, path, {
|
|
3639
3779
|
namespace: config.namespace
|
|
3640
3780
|
});
|
|
3641
3781
|
logger2().debug({ msg: "making api call", method, url });
|
|
@@ -3661,7 +3801,7 @@ async function apiCall(config, method, path, body) {
|
|
|
3661
3801
|
async function sendHttpRequestToActor(runConfig, actorId, actorRequest) {
|
|
3662
3802
|
const url = new URL(actorRequest.url);
|
|
3663
3803
|
const endpoint = getEndpoint(runConfig);
|
|
3664
|
-
const guardUrl =
|
|
3804
|
+
const guardUrl = _chunkELDFBXDVcjs.combineUrlPath.call(void 0, endpoint, url.pathname + url.search);
|
|
3665
3805
|
let bodyToSend = null;
|
|
3666
3806
|
const guardHeaders = buildGuardHeadersForHttp(
|
|
3667
3807
|
runConfig,
|
|
@@ -3698,19 +3838,19 @@ function buildGuardHeadersForHttp(runConfig, actorRequest, actorId) {
|
|
|
3698
3838
|
for (const [key, value] of Object.entries(runConfig.headers)) {
|
|
3699
3839
|
headers.set(key, value);
|
|
3700
3840
|
}
|
|
3701
|
-
headers.set(
|
|
3702
|
-
headers.set(
|
|
3841
|
+
headers.set(_chunkJKOUXDK6cjs.HEADER_RIVET_TARGET, "actor");
|
|
3842
|
+
headers.set(_chunkJKOUXDK6cjs.HEADER_RIVET_ACTOR, actorId);
|
|
3703
3843
|
if (runConfig.token) {
|
|
3704
|
-
headers.set(
|
|
3844
|
+
headers.set(_chunkJKOUXDK6cjs.HEADER_RIVET_TOKEN, runConfig.token);
|
|
3705
3845
|
}
|
|
3706
3846
|
return headers;
|
|
3707
3847
|
}
|
|
3708
3848
|
|
|
3709
3849
|
// src/remote-manager-driver/actor-websocket-client.ts
|
|
3710
3850
|
async function openWebSocketToActor(runConfig, path, actorId, encoding, params, connId, connToken) {
|
|
3711
|
-
const WebSocket2 = await
|
|
3851
|
+
const WebSocket2 = await _chunkLWGCMELPcjs.importWebSocket.call(void 0, );
|
|
3712
3852
|
const endpoint = getEndpoint(runConfig);
|
|
3713
|
-
const guardUrl =
|
|
3853
|
+
const guardUrl = _chunkELDFBXDVcjs.combineUrlPath.call(void 0, endpoint, path);
|
|
3714
3854
|
logger2().debug({
|
|
3715
3855
|
msg: "opening websocket to actor via guard",
|
|
3716
3856
|
actorId,
|
|
@@ -3734,33 +3874,33 @@ async function openWebSocketToActor(runConfig, path, actorId, encoding, params,
|
|
|
3734
3874
|
}
|
|
3735
3875
|
function buildWebSocketProtocols(runConfig, actorId, encoding, params, connId, connToken) {
|
|
3736
3876
|
const protocols = [];
|
|
3737
|
-
protocols.push(
|
|
3738
|
-
protocols.push(`${
|
|
3739
|
-
protocols.push(`${
|
|
3740
|
-
protocols.push(`${
|
|
3877
|
+
protocols.push(_chunkJKOUXDK6cjs.WS_PROTOCOL_STANDARD);
|
|
3878
|
+
protocols.push(`${_chunkJKOUXDK6cjs.WS_PROTOCOL_TARGET}actor`);
|
|
3879
|
+
protocols.push(`${_chunkJKOUXDK6cjs.WS_PROTOCOL_ACTOR}${actorId}`);
|
|
3880
|
+
protocols.push(`${_chunkJKOUXDK6cjs.WS_PROTOCOL_ENCODING}${encoding}`);
|
|
3741
3881
|
if (runConfig.token) {
|
|
3742
|
-
protocols.push(`${
|
|
3882
|
+
protocols.push(`${_chunkJKOUXDK6cjs.WS_PROTOCOL_TOKEN}${runConfig.token}`);
|
|
3743
3883
|
}
|
|
3744
3884
|
if (params) {
|
|
3745
3885
|
protocols.push(
|
|
3746
|
-
`${
|
|
3886
|
+
`${_chunkJKOUXDK6cjs.WS_PROTOCOL_CONN_PARAMS}${encodeURIComponent(JSON.stringify(params))}`
|
|
3747
3887
|
);
|
|
3748
3888
|
}
|
|
3749
3889
|
if (connId) {
|
|
3750
|
-
protocols.push(`${
|
|
3890
|
+
protocols.push(`${_chunkJKOUXDK6cjs.WS_PROTOCOL_CONN_ID}${connId}`);
|
|
3751
3891
|
}
|
|
3752
3892
|
if (connToken) {
|
|
3753
|
-
protocols.push(`${
|
|
3893
|
+
protocols.push(`${_chunkJKOUXDK6cjs.WS_PROTOCOL_CONN_TOKEN}${connToken}`);
|
|
3754
3894
|
}
|
|
3755
3895
|
return protocols;
|
|
3756
3896
|
}
|
|
3757
3897
|
|
|
3758
3898
|
// src/remote-manager-driver/api-endpoints.ts
|
|
3759
|
-
async function getActor(config,
|
|
3899
|
+
async function getActor(config, _, actorId) {
|
|
3760
3900
|
return apiCall(
|
|
3761
3901
|
config,
|
|
3762
3902
|
"GET",
|
|
3763
|
-
`/actors?
|
|
3903
|
+
`/actors?actor_ids=${encodeURIComponent(actorId)}`
|
|
3764
3904
|
);
|
|
3765
3905
|
}
|
|
3766
3906
|
async function getActorByKey(config, name, key) {
|
|
@@ -3811,7 +3951,7 @@ async function updateRunnerConfig(config, runnerName, request) {
|
|
|
3811
3951
|
|
|
3812
3952
|
// src/remote-manager-driver/ws-proxy.ts
|
|
3813
3953
|
async function createWebSocketProxy(c, targetUrl, protocols) {
|
|
3814
|
-
const WebSocket2 = await
|
|
3954
|
+
const WebSocket2 = await _chunkLWGCMELPcjs.importWebSocket.call(void 0, );
|
|
3815
3955
|
const state = {};
|
|
3816
3956
|
return {
|
|
3817
3957
|
onOpen: async (event, clientWs) => {
|
|
@@ -3828,7 +3968,10 @@ async function createWebSocketProxy(c, targetUrl, protocols) {
|
|
|
3828
3968
|
state.targetWs = targetWs;
|
|
3829
3969
|
state.connectPromise = new Promise((resolve, reject) => {
|
|
3830
3970
|
targetWs.addEventListener("open", () => {
|
|
3831
|
-
logger2().debug({
|
|
3971
|
+
logger2().debug({
|
|
3972
|
+
msg: "target websocket connected",
|
|
3973
|
+
targetUrl
|
|
3974
|
+
});
|
|
3832
3975
|
if (clientWs.readyState !== 1) {
|
|
3833
3976
|
logger2().warn({
|
|
3834
3977
|
msg: "client websocket closed before target connected",
|
|
@@ -3871,14 +4014,17 @@ async function createWebSocketProxy(c, targetUrl, protocols) {
|
|
|
3871
4014
|
logger2().error({
|
|
3872
4015
|
msg: "target websocket error",
|
|
3873
4016
|
targetUrl,
|
|
3874
|
-
error:
|
|
4017
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
3875
4018
|
});
|
|
3876
4019
|
closeWebSocketIfOpen(clientWs, 1011, "Target WebSocket error");
|
|
3877
4020
|
});
|
|
3878
4021
|
},
|
|
3879
4022
|
onMessage: async (event, clientWs) => {
|
|
3880
4023
|
if (!state.targetWs || !state.connectPromise) {
|
|
3881
|
-
logger2().error({
|
|
4024
|
+
logger2().error({
|
|
4025
|
+
msg: "websocket state not initialized",
|
|
4026
|
+
targetUrl
|
|
4027
|
+
});
|
|
3882
4028
|
return;
|
|
3883
4029
|
}
|
|
3884
4030
|
try {
|
|
@@ -3898,7 +4044,11 @@ async function createWebSocketProxy(c, targetUrl, protocols) {
|
|
|
3898
4044
|
targetUrl,
|
|
3899
4045
|
error
|
|
3900
4046
|
});
|
|
3901
|
-
closeWebSocketIfOpen(
|
|
4047
|
+
closeWebSocketIfOpen(
|
|
4048
|
+
clientWs,
|
|
4049
|
+
1011,
|
|
4050
|
+
"Failed to connect to target"
|
|
4051
|
+
);
|
|
3902
4052
|
}
|
|
3903
4053
|
},
|
|
3904
4054
|
onClose: (event, clientWs) => {
|
|
@@ -3911,7 +4061,10 @@ async function createWebSocketProxy(c, targetUrl, protocols) {
|
|
|
3911
4061
|
});
|
|
3912
4062
|
if (state.targetWs) {
|
|
3913
4063
|
if (state.targetWs.readyState === WebSocket2.OPEN || state.targetWs.readyState === WebSocket2.CONNECTING) {
|
|
3914
|
-
state.targetWs.close(
|
|
4064
|
+
state.targetWs.close(
|
|
4065
|
+
1e3,
|
|
4066
|
+
event.reason || "Client disconnected"
|
|
4067
|
+
);
|
|
3915
4068
|
}
|
|
3916
4069
|
}
|
|
3917
4070
|
},
|
|
@@ -3941,15 +4094,17 @@ var RemoteManagerDriver = class {
|
|
|
3941
4094
|
#config;
|
|
3942
4095
|
#metadataPromise;
|
|
3943
4096
|
constructor(runConfig) {
|
|
3944
|
-
if (
|
|
3945
|
-
logger2().info(
|
|
4097
|
+
if (_chunkELDFBXDVcjs.getEnvUniversal.call(void 0, "NEXT_PHASE") === "phase-production-build") {
|
|
4098
|
+
logger2().info(
|
|
4099
|
+
"detected next.js build phase, disabling health check"
|
|
4100
|
+
);
|
|
3946
4101
|
runConfig.disableHealthCheck = true;
|
|
3947
4102
|
}
|
|
3948
4103
|
this.#config = runConfig;
|
|
3949
4104
|
if (!runConfig.disableHealthCheck) {
|
|
3950
4105
|
this.#metadataPromise = this.#performMetadataCheck(runConfig);
|
|
3951
4106
|
this.#metadataPromise.catch((error) => {
|
|
3952
|
-
logger2().
|
|
4107
|
+
logger2().error({
|
|
3953
4108
|
msg: "metadata check failed",
|
|
3954
4109
|
error: error instanceof Error ? error.message : String(error)
|
|
3955
4110
|
});
|
|
@@ -3982,7 +4137,7 @@ var RemoteManagerDriver = class {
|
|
|
3982
4137
|
logger2().error({
|
|
3983
4138
|
msg: "health check failed, validate the Rivet endpoint is configured correctly",
|
|
3984
4139
|
endpoint,
|
|
3985
|
-
error:
|
|
4140
|
+
error: _chunkELDFBXDVcjs.stringifyError.call(void 0, error)
|
|
3986
4141
|
});
|
|
3987
4142
|
}
|
|
3988
4143
|
})();
|
|
@@ -4061,10 +4216,11 @@ var RemoteManagerDriver = class {
|
|
|
4061
4216
|
key
|
|
4062
4217
|
});
|
|
4063
4218
|
const { actor, created } = await getOrCreateActor(this.#config, {
|
|
4219
|
+
datacenter: region,
|
|
4064
4220
|
name,
|
|
4065
4221
|
key: serializeActorKey(key),
|
|
4066
4222
|
runner_name_selector: this.#config.runnerName,
|
|
4067
|
-
input: actorInput ?
|
|
4223
|
+
input: actorInput ? _chunkJKOUXDK6cjs.uint8ArrayToBase64.call(void 0, cbor6.encode(actorInput)) : void 0,
|
|
4068
4224
|
crash_policy: "sleep"
|
|
4069
4225
|
});
|
|
4070
4226
|
const actorId = actor.actor_id;
|
|
@@ -4085,17 +4241,19 @@ var RemoteManagerDriver = class {
|
|
|
4085
4241
|
c,
|
|
4086
4242
|
name,
|
|
4087
4243
|
key,
|
|
4088
|
-
input
|
|
4244
|
+
input,
|
|
4245
|
+
region
|
|
4089
4246
|
}) {
|
|
4090
4247
|
if (this.#metadataPromise) {
|
|
4091
4248
|
await this.#metadataPromise;
|
|
4092
4249
|
}
|
|
4093
4250
|
logger2().info({ msg: "creating actor via engine api", name, key });
|
|
4094
4251
|
const result = await createActor(this.#config, {
|
|
4252
|
+
datacenter: region,
|
|
4095
4253
|
name,
|
|
4096
4254
|
runner_name_selector: this.#config.runnerName,
|
|
4097
4255
|
key: serializeActorKey(key),
|
|
4098
|
-
input: input ?
|
|
4256
|
+
input: input ? _chunkJKOUXDK6cjs.uint8ArrayToBase64.call(void 0, cbor6.encode(input)) : void 0,
|
|
4099
4257
|
crash_policy: "sleep"
|
|
4100
4258
|
});
|
|
4101
4259
|
const actorId = result.actor.actor_id;
|
|
@@ -4118,7 +4276,11 @@ var RemoteManagerDriver = class {
|
|
|
4118
4276
|
if (this.#metadataPromise) {
|
|
4119
4277
|
await this.#metadataPromise;
|
|
4120
4278
|
}
|
|
4121
|
-
return await sendHttpRequestToActor(
|
|
4279
|
+
return await sendHttpRequestToActor(
|
|
4280
|
+
this.#config,
|
|
4281
|
+
actorId,
|
|
4282
|
+
actorRequest
|
|
4283
|
+
);
|
|
4122
4284
|
}
|
|
4123
4285
|
async openWebSocket(path, actorId, encoding, params, connId, connToken) {
|
|
4124
4286
|
if (this.#metadataPromise) {
|
|
@@ -4138,7 +4300,11 @@ var RemoteManagerDriver = class {
|
|
|
4138
4300
|
if (this.#metadataPromise) {
|
|
4139
4301
|
await this.#metadataPromise;
|
|
4140
4302
|
}
|
|
4141
|
-
return await sendHttpRequestToActor(
|
|
4303
|
+
return await sendHttpRequestToActor(
|
|
4304
|
+
this.#config,
|
|
4305
|
+
actorId,
|
|
4306
|
+
actorRequest
|
|
4307
|
+
);
|
|
4142
4308
|
}
|
|
4143
4309
|
async proxyWebSocket(c, path, actorId, encoding, params, connId, connToken) {
|
|
4144
4310
|
var _a, _b;
|
|
@@ -4148,7 +4314,7 @@ var RemoteManagerDriver = class {
|
|
|
4148
4314
|
const upgradeWebSocket = (_b = (_a = this.#config).getUpgradeWebSocket) == null ? void 0 : _b.call(_a);
|
|
4149
4315
|
_invariant2.default.call(void 0, upgradeWebSocket, "missing getUpgradeWebSocket");
|
|
4150
4316
|
const endpoint = getEndpoint(this.#config);
|
|
4151
|
-
const guardUrl =
|
|
4317
|
+
const guardUrl = _chunkELDFBXDVcjs.combineUrlPath.call(void 0, endpoint, path);
|
|
4152
4318
|
const wsGuardUrl = guardUrl.replace("http://", "ws://");
|
|
4153
4319
|
logger2().debug({
|
|
4154
4320
|
msg: "forwarding websocket to actor via guard",
|
|
@@ -4165,13 +4331,13 @@ var RemoteManagerDriver = class {
|
|
|
4165
4331
|
connToken
|
|
4166
4332
|
);
|
|
4167
4333
|
const args = await createWebSocketProxy(c, wsGuardUrl, protocols);
|
|
4168
|
-
return await upgradeWebSocket(() => args)(c,
|
|
4334
|
+
return await upgradeWebSocket(() => args)(c, _chunkELDFBXDVcjs.noopNext.call(void 0, ));
|
|
4169
4335
|
}
|
|
4170
4336
|
displayInformation() {
|
|
4171
4337
|
return { name: "Remote", properties: {} };
|
|
4172
4338
|
}
|
|
4173
4339
|
getOrCreateInspectorAccessToken() {
|
|
4174
|
-
return
|
|
4340
|
+
return _chunkJKOUXDK6cjs.generateRandomString.call(void 0, );
|
|
4175
4341
|
}
|
|
4176
4342
|
};
|
|
4177
4343
|
|
|
@@ -4197,4 +4363,4 @@ var RemoteManagerDriver = class {
|
|
|
4197
4363
|
|
|
4198
4364
|
|
|
4199
4365
|
exports.generateConnId = generateConnId; exports.generateConnToken = generateConnToken; exports.generateConnSocketId = generateConnSocketId; exports.createActorInspectorRouter = createActorInspectorRouter; exports.serializeActorKey = serializeActorKey; exports.deserializeActorKey = deserializeActorKey; exports.ActorDefinition = ActorDefinition; exports.lookupInRegistry = lookupInRegistry; exports.ActorClientError = ActorClientError; exports.InternalError = InternalError2; exports.ManagerError = ManagerError; exports.MalformedResponseMessage = MalformedResponseMessage; exports.ActorError = ActorError; exports.getEndpoint = getEndpoint; exports.ActorConnRaw = ActorConnRaw; exports.ActorHandleRaw = ActorHandleRaw; exports.createClientWithDriver = createClientWithDriver; exports.getDatacenters = getDatacenters; exports.updateRunnerConfig = updateRunnerConfig; exports.RemoteManagerDriver = RemoteManagerDriver;
|
|
4200
|
-
//# sourceMappingURL=chunk-
|
|
4366
|
+
//# sourceMappingURL=chunk-LMJHBF26.cjs.map
|