rivetkit 2.0.4 → 2.0.5
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 +2 -2
- package/dist/tsup/actor/errors.js +1 -1
- package/dist/tsup/{chunk-HLLF4B4Q.js → chunk-2MD57QF4.js} +7 -5
- package/dist/tsup/chunk-2MD57QF4.js.map +1 -0
- package/dist/tsup/{chunk-SBHHJ6QS.cjs → chunk-5QGQK44L.cjs} +2 -2
- package/dist/tsup/{chunk-SBHHJ6QS.cjs.map → chunk-5QGQK44L.cjs.map} +1 -1
- package/dist/tsup/{chunk-4CXBCT26.cjs → chunk-5YTI25C3.cjs} +7 -7
- package/dist/tsup/{chunk-4CXBCT26.cjs.map → chunk-5YTI25C3.cjs.map} +1 -1
- package/dist/tsup/{chunk-TQ62L3X7.js → chunk-B2QGJGZQ.js} +18 -5
- package/dist/tsup/chunk-B2QGJGZQ.js.map +1 -0
- package/dist/tsup/{chunk-PQY7KKTL.js → chunk-CFFKMUYH.js} +32 -7
- package/dist/tsup/{chunk-PQY7KKTL.js.map → chunk-CFFKMUYH.js.map} +1 -1
- package/dist/tsup/{chunk-H26RP6GD.js → chunk-CKA54YQN.js} +2 -2
- package/dist/tsup/chunk-D7NWUCRK.cjs +20 -0
- package/dist/tsup/{chunk-4R73YDN3.cjs.map → chunk-D7NWUCRK.cjs.map} +1 -1
- package/dist/tsup/{chunk-IH6CKNDW.cjs → chunk-FGFT4FVX.cjs} +9 -9
- package/dist/tsup/{chunk-IH6CKNDW.cjs.map → chunk-FGFT4FVX.cjs.map} +1 -1
- package/dist/tsup/{chunk-HI3HWJRC.js → chunk-I5VTWPHW.js} +4 -4
- package/dist/tsup/{chunk-HI3HWJRC.js.map → chunk-I5VTWPHW.js.map} +1 -1
- package/dist/tsup/{chunk-GICQ3YCU.cjs → chunk-IRMBWX36.cjs} +39 -37
- package/dist/tsup/chunk-IRMBWX36.cjs.map +1 -0
- package/dist/tsup/{chunk-XJQHKJ4P.js → chunk-L7QRXNWP.js} +331 -62
- package/dist/tsup/chunk-L7QRXNWP.js.map +1 -0
- package/dist/tsup/{chunk-LWNKVZG5.cjs → chunk-LZIBTLEY.cjs} +12 -12
- package/dist/tsup/{chunk-LWNKVZG5.cjs.map → chunk-LZIBTLEY.cjs.map} +1 -1
- package/dist/tsup/{chunk-VO7ZRVVD.cjs → chunk-MRZS2J4X.cjs} +581 -312
- package/dist/tsup/chunk-MRZS2J4X.cjs.map +1 -0
- package/dist/tsup/{chunk-QK72M5JB.js → chunk-PG3K2LI7.js} +2 -2
- package/dist/tsup/{chunk-QNNXFOQV.cjs → chunk-PHSQJ6QI.cjs} +3 -3
- package/dist/tsup/{chunk-QNNXFOQV.cjs.map → chunk-PHSQJ6QI.cjs.map} +1 -1
- package/dist/tsup/{chunk-WHBPJNGW.cjs → chunk-RM2SVURR.cjs} +29 -16
- package/dist/tsup/chunk-RM2SVURR.cjs.map +1 -0
- package/dist/tsup/{chunk-6LJT3QRL.cjs → chunk-WADSS5X4.cjs} +37 -12
- package/dist/tsup/chunk-WADSS5X4.cjs.map +1 -0
- package/dist/tsup/{chunk-LV2S3OU3.js → chunk-WNGOBAA7.js} +2 -2
- package/dist/tsup/{chunk-NFU2BBT5.js → chunk-YPZFLUO6.js} +2 -2
- package/dist/tsup/chunk-YPZFLUO6.js.map +1 -0
- package/dist/tsup/{chunk-3F2YSRJL.js → chunk-YW6Y6VNE.js} +4 -4
- package/dist/tsup/client/mod.cjs +10 -10
- package/dist/tsup/client/mod.d.cts +2 -2
- package/dist/tsup/client/mod.d.ts +2 -2
- package/dist/tsup/client/mod.js +9 -9
- package/dist/tsup/common/log.cjs +4 -4
- package/dist/tsup/common/log.js +3 -3
- package/dist/tsup/common/websocket.cjs +5 -5
- package/dist/tsup/common/websocket.js +4 -4
- package/dist/tsup/{connection-BI-6UIBJ.d.ts → connection-BvE-Oq7t.d.ts} +22 -11
- package/dist/tsup/{connection-Dyd4NLGW.d.cts → connection-DTzmWwU5.d.cts} +22 -11
- package/dist/tsup/driver-helpers/mod.cjs +6 -6
- package/dist/tsup/driver-helpers/mod.d.cts +2 -2
- package/dist/tsup/driver-helpers/mod.d.ts +2 -2
- package/dist/tsup/driver-helpers/mod.js +5 -5
- package/dist/tsup/driver-test-suite/mod.cjs +606 -140
- package/dist/tsup/driver-test-suite/mod.cjs.map +1 -1
- package/dist/tsup/driver-test-suite/mod.d.cts +2 -2
- package/dist/tsup/driver-test-suite/mod.d.ts +2 -2
- package/dist/tsup/driver-test-suite/mod.js +563 -97
- package/dist/tsup/driver-test-suite/mod.js.map +1 -1
- package/dist/tsup/inspector/mod.cjs +6 -6
- package/dist/tsup/inspector/mod.js +5 -5
- package/dist/tsup/mod.cjs +9 -9
- package/dist/tsup/mod.d.cts +3 -3
- package/dist/tsup/mod.d.ts +3 -3
- package/dist/tsup/mod.js +8 -8
- package/dist/tsup/{router-endpoints-BTe_Rsdn.d.cts → router-endpoints-CctffZNL.d.cts} +1 -1
- package/dist/tsup/{router-endpoints-CBSrKHmo.d.ts → router-endpoints-DFm1BglJ.d.ts} +1 -1
- package/dist/tsup/test/mod.cjs +10 -10
- package/dist/tsup/test/mod.d.cts +1 -1
- package/dist/tsup/test/mod.d.ts +1 -1
- package/dist/tsup/test/mod.js +9 -9
- package/dist/tsup/utils.cjs +5 -3
- package/dist/tsup/utils.cjs.map +1 -1
- package/dist/tsup/utils.d.cts +18 -1
- package/dist/tsup/utils.d.ts +18 -1
- package/dist/tsup/utils.js +4 -2
- package/package.json +4 -4
- package/src/actor/errors.ts +1 -1
- package/src/actor/router-endpoints.ts +6 -1
- package/src/actor/router.ts +2 -1
- package/src/client/mod.ts +1 -1
- package/src/client/raw-utils.ts +1 -1
- package/src/driver-test-suite/mod.ts +1 -1
- package/src/driver-test-suite/test-inline-client-driver.ts +588 -0
- package/src/driver-test-suite/tests/actor-error-handling.ts +4 -12
- package/src/driver-test-suite/tests/actor-inspector.ts +2 -1
- package/src/driver-test-suite/utils.ts +10 -9
- package/src/drivers/file-system/global-state.ts +3 -1
- package/src/drivers/file-system/manager.ts +16 -21
- package/src/manager/router.ts +373 -5
- package/src/registry/mod.ts +29 -33
- package/src/registry/run-config.ts +16 -1
- package/src/remote-manager-driver/actor-http-client.ts +3 -1
- package/src/remote-manager-driver/actor-websocket-client.ts +2 -1
- package/src/remote-manager-driver/api-utils.ts +4 -1
- package/src/remote-manager-driver/mod.ts +2 -1
- package/src/utils.ts +53 -0
- package/dist/tsup/chunk-4R73YDN3.cjs +0 -20
- package/dist/tsup/chunk-6LJT3QRL.cjs.map +0 -1
- package/dist/tsup/chunk-GICQ3YCU.cjs.map +0 -1
- package/dist/tsup/chunk-HLLF4B4Q.js.map +0 -1
- package/dist/tsup/chunk-NFU2BBT5.js.map +0 -1
- package/dist/tsup/chunk-TQ62L3X7.js.map +0 -1
- package/dist/tsup/chunk-VO7ZRVVD.cjs.map +0 -1
- package/dist/tsup/chunk-WHBPJNGW.cjs.map +0 -1
- package/dist/tsup/chunk-XJQHKJ4P.js.map +0 -1
- /package/dist/tsup/{chunk-H26RP6GD.js.map → chunk-CKA54YQN.js.map} +0 -0
- /package/dist/tsup/{chunk-QK72M5JB.js.map → chunk-PG3K2LI7.js.map} +0 -0
- /package/dist/tsup/{chunk-LV2S3OU3.js.map → chunk-WNGOBAA7.js.map} +0 -0
- /package/dist/tsup/{chunk-3F2YSRJL.js.map → chunk-YW6Y6VNE.js.map} +0 -0
|
@@ -4,16 +4,16 @@
|
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _chunkLZIBTLEYcjs = require('./chunk-LZIBTLEY.cjs');
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
var
|
|
11
|
+
var _chunkPHSQJ6QIcjs = require('./chunk-PHSQJ6QI.cjs');
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _chunkRM2SVURRcjs = require('./chunk-RM2SVURR.cjs');
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
|
|
@@ -54,15 +54,15 @@ var _chunkWHBPJNGWcjs = require('./chunk-WHBPJNGW.cjs');
|
|
|
54
54
|
|
|
55
55
|
|
|
56
56
|
|
|
57
|
-
var _chunkGICQ3YCUcjs = require('./chunk-GICQ3YCU.cjs');
|
|
58
57
|
|
|
58
|
+
var _chunkIRMBWX36cjs = require('./chunk-IRMBWX36.cjs');
|
|
59
59
|
|
|
60
60
|
|
|
61
61
|
|
|
62
62
|
|
|
63
63
|
|
|
64
|
-
var _chunk4CXBCT26cjs = require('./chunk-4CXBCT26.cjs');
|
|
65
64
|
|
|
65
|
+
var _chunk5YTI25C3cjs = require('./chunk-5YTI25C3.cjs');
|
|
66
66
|
|
|
67
67
|
|
|
68
68
|
|
|
@@ -74,9 +74,9 @@ var _chunk4CXBCT26cjs = require('./chunk-4CXBCT26.cjs');
|
|
|
74
74
|
|
|
75
75
|
|
|
76
76
|
|
|
77
|
-
var _chunk6LJT3QRLcjs = require('./chunk-6LJT3QRL.cjs');
|
|
78
77
|
|
|
79
78
|
|
|
79
|
+
var _chunkWADSS5X4cjs = require('./chunk-WADSS5X4.cjs');
|
|
80
80
|
|
|
81
81
|
|
|
82
82
|
|
|
@@ -92,7 +92,9 @@ var _chunk6LJT3QRLcjs = require('./chunk-6LJT3QRL.cjs');
|
|
|
92
92
|
|
|
93
93
|
|
|
94
94
|
|
|
95
|
-
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
var _chunk5QGQK44Lcjs = require('./chunk-5QGQK44L.cjs');
|
|
96
98
|
|
|
97
99
|
// src/actor/config.ts
|
|
98
100
|
var _zod = require('zod');
|
|
@@ -180,7 +182,7 @@ function createActorInspectorRouter() {
|
|
|
180
182
|
"/state",
|
|
181
183
|
_standardvalidator.sValidator.call(void 0,
|
|
182
184
|
"json",
|
|
183
|
-
_v42.default.object({ patch:
|
|
185
|
+
_v42.default.object({ patch: _chunkLZIBTLEYcjs.PatchSchema }).or(_v42.default.object({ replace: _v42.default.any() }))
|
|
184
186
|
),
|
|
185
187
|
async (c) => {
|
|
186
188
|
if (!await c.var.inspector.accessors.isStateEnabled()) {
|
|
@@ -291,20 +293,20 @@ function createActorInspectorRouter() {
|
|
|
291
293
|
}
|
|
292
294
|
const db = await c.var.inspector.accessors.getDb();
|
|
293
295
|
const rows = await db.execute(`PRAGMA table_list`);
|
|
294
|
-
const tables =
|
|
296
|
+
const tables = _chunkLZIBTLEYcjs.TablesSchema.parse(rows).filter(
|
|
295
297
|
(table) => table.schema !== "temp" && !table.name.startsWith("sqlite_")
|
|
296
298
|
);
|
|
297
299
|
const tablesInfo = await Promise.all(
|
|
298
300
|
tables.map((table) => db.execute(`PRAGMA table_info(${table.name})`))
|
|
299
301
|
);
|
|
300
|
-
const columns = tablesInfo.map((def) =>
|
|
302
|
+
const columns = tablesInfo.map((def) => _chunkLZIBTLEYcjs.ColumnsSchema.parse(def));
|
|
301
303
|
const foreignKeysList = await Promise.all(
|
|
302
304
|
tables.map(
|
|
303
305
|
(table) => db.execute(`PRAGMA foreign_key_list(${table.name})`)
|
|
304
306
|
)
|
|
305
307
|
);
|
|
306
308
|
const foreignKeys = foreignKeysList.map(
|
|
307
|
-
(def) =>
|
|
309
|
+
(def) => _chunkLZIBTLEYcjs.ForeignKeysSchema.parse(def)
|
|
308
310
|
);
|
|
309
311
|
const countInfo = await Promise.all(
|
|
310
312
|
tables.map(
|
|
@@ -584,8 +586,8 @@ var ActorInstance = class {
|
|
|
584
586
|
#persist;
|
|
585
587
|
/** Raw state without the proxy wrapper */
|
|
586
588
|
#persistRaw;
|
|
587
|
-
#persistWriteQueue = new (0,
|
|
588
|
-
#alarmWriteQueue = new (0,
|
|
589
|
+
#persistWriteQueue = new (0, _chunkWADSS5X4cjs.SinglePromiseQueue)();
|
|
590
|
+
#alarmWriteQueue = new (0, _chunkWADSS5X4cjs.SinglePromiseQueue)();
|
|
589
591
|
#lastSaveTime = 0;
|
|
590
592
|
#pendingSaveTimeout;
|
|
591
593
|
#vars;
|
|
@@ -672,12 +674,12 @@ var ActorInstance = class {
|
|
|
672
674
|
key: serializeActorKey(key),
|
|
673
675
|
actorId
|
|
674
676
|
};
|
|
675
|
-
this.#log =
|
|
676
|
-
Object.assign(
|
|
677
|
+
this.#log = _chunk5YTI25C3cjs.getBaseLogger.call(void 0, ).child(
|
|
678
|
+
Object.assign(_chunk5YTI25C3cjs.getIncludeTarget.call(void 0, ) ? { target: "actor" } : {}, logParams)
|
|
677
679
|
);
|
|
678
|
-
this.#rLog =
|
|
680
|
+
this.#rLog = _chunk5YTI25C3cjs.getBaseLogger.call(void 0, ).child(
|
|
679
681
|
Object.assign(
|
|
680
|
-
|
|
682
|
+
_chunk5YTI25C3cjs.getIncludeTarget.call(void 0, ) ? { target: "actor-runtime" } : {},
|
|
681
683
|
logParams
|
|
682
684
|
)
|
|
683
685
|
);
|
|
@@ -698,7 +700,7 @@ var ActorInstance = class {
|
|
|
698
700
|
this.#actorDriver.getContext(this.#actorId)
|
|
699
701
|
);
|
|
700
702
|
if (dataOrPromise instanceof Promise) {
|
|
701
|
-
vars = await
|
|
703
|
+
vars = await _chunkIRMBWX36cjs.deadline.call(void 0,
|
|
702
704
|
dataOrPromise,
|
|
703
705
|
this.#config.options.createVarsTimeout
|
|
704
706
|
);
|
|
@@ -825,7 +827,7 @@ var ActorInstance = class {
|
|
|
825
827
|
} catch (error) {
|
|
826
828
|
this.actorContext.log.error({
|
|
827
829
|
msg: "error while running event",
|
|
828
|
-
error:
|
|
830
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error),
|
|
829
831
|
event: event.eventId,
|
|
830
832
|
timestamp: event.timestamp,
|
|
831
833
|
action: event.kind.generic.actionName
|
|
@@ -834,7 +836,7 @@ var ActorInstance = class {
|
|
|
834
836
|
} catch (error) {
|
|
835
837
|
this.actorContext.log.error({
|
|
836
838
|
msg: "internal error while running event",
|
|
837
|
-
error:
|
|
839
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error),
|
|
838
840
|
...event
|
|
839
841
|
});
|
|
840
842
|
}
|
|
@@ -847,7 +849,7 @@ var ActorInstance = class {
|
|
|
847
849
|
kind: {
|
|
848
850
|
generic: {
|
|
849
851
|
actionName: action,
|
|
850
|
-
args:
|
|
852
|
+
args: _chunkWADSS5X4cjs.bufferToArrayBuffer.call(void 0, cbor.encode(args))
|
|
851
853
|
}
|
|
852
854
|
}
|
|
853
855
|
});
|
|
@@ -857,7 +859,7 @@ var ActorInstance = class {
|
|
|
857
859
|
}
|
|
858
860
|
#validateStateEnabled() {
|
|
859
861
|
if (!this.stateEnabled) {
|
|
860
|
-
throw new (0,
|
|
862
|
+
throw new (0, _chunk5QGQK44Lcjs.StateNotEnabled)();
|
|
861
863
|
}
|
|
862
864
|
}
|
|
863
865
|
get #connStateEnabled() {
|
|
@@ -868,7 +870,7 @@ var ActorInstance = class {
|
|
|
868
870
|
}
|
|
869
871
|
#validateVarsEnabled() {
|
|
870
872
|
if (!this.#varsEnabled) {
|
|
871
|
-
throw new (0,
|
|
873
|
+
throw new (0, _chunk5QGQK44Lcjs.VarsNotEnabled)();
|
|
872
874
|
}
|
|
873
875
|
}
|
|
874
876
|
/** Promise used to wait for a save to complete. This is required since you cannot await `#saveStateThrottled`. */
|
|
@@ -901,7 +903,7 @@ var ActorInstance = class {
|
|
|
901
903
|
const bareData = this.#convertToBarePersisted(this.#persistRaw);
|
|
902
904
|
await this.#actorDriver.writePersistedData(
|
|
903
905
|
this.#actorId,
|
|
904
|
-
|
|
906
|
+
_chunkRM2SVURRcjs.PERSISTED_ACTOR_VERSIONED.serializeWithEmbeddedVersion(bareData)
|
|
905
907
|
);
|
|
906
908
|
this.#rLog.debug({ msg: "persist saved" });
|
|
907
909
|
});
|
|
@@ -925,14 +927,14 @@ var ActorInstance = class {
|
|
|
925
927
|
this.#persistRaw = target;
|
|
926
928
|
if (target === null || typeof target !== "object") {
|
|
927
929
|
let invalidPath = "";
|
|
928
|
-
if (!
|
|
930
|
+
if (!_chunkWADSS5X4cjs.isCborSerializable.call(void 0,
|
|
929
931
|
target,
|
|
930
932
|
(path3) => {
|
|
931
933
|
invalidPath = path3;
|
|
932
934
|
},
|
|
933
935
|
""
|
|
934
936
|
)) {
|
|
935
|
-
throw new (0,
|
|
937
|
+
throw new (0, _chunk5QGQK44Lcjs.InvalidStateType)({ path: invalidPath });
|
|
936
938
|
}
|
|
937
939
|
return target;
|
|
938
940
|
}
|
|
@@ -947,14 +949,14 @@ var ActorInstance = class {
|
|
|
947
949
|
return;
|
|
948
950
|
}
|
|
949
951
|
let invalidPath = "";
|
|
950
|
-
if (!
|
|
952
|
+
if (!_chunkWADSS5X4cjs.isCborSerializable.call(void 0,
|
|
951
953
|
value,
|
|
952
954
|
(invalidPathPart) => {
|
|
953
955
|
invalidPath = invalidPathPart;
|
|
954
956
|
},
|
|
955
957
|
""
|
|
956
958
|
)) {
|
|
957
|
-
throw new (0,
|
|
959
|
+
throw new (0, _chunk5QGQK44Lcjs.InvalidStateType)({
|
|
958
960
|
path: path3 + (invalidPath ? `.${invalidPath}` : "")
|
|
959
961
|
});
|
|
960
962
|
}
|
|
@@ -970,7 +972,7 @@ var ActorInstance = class {
|
|
|
970
972
|
} catch (error) {
|
|
971
973
|
this.#rLog.error({
|
|
972
974
|
msg: "error in `_onStateChange`",
|
|
973
|
-
error:
|
|
975
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error)
|
|
974
976
|
});
|
|
975
977
|
} finally {
|
|
976
978
|
this.#isInOnStateChange = false;
|
|
@@ -988,7 +990,7 @@ var ActorInstance = class {
|
|
|
988
990
|
persistDataBuffer !== void 0,
|
|
989
991
|
"persist data has not been set, it should be set when initialized"
|
|
990
992
|
);
|
|
991
|
-
const bareData =
|
|
993
|
+
const bareData = _chunkRM2SVURRcjs.PERSISTED_ACTOR_VERSIONED.deserializeWithEmbeddedVersion(
|
|
992
994
|
persistDataBuffer
|
|
993
995
|
);
|
|
994
996
|
const persistData = this.#convertFromBarePersisted(bareData);
|
|
@@ -1000,7 +1002,7 @@ var ActorInstance = class {
|
|
|
1000
1002
|
this.#setPersist(persistData);
|
|
1001
1003
|
for (const connPersist of this.#persist.connections) {
|
|
1002
1004
|
const driver = this.__getConnDriver(connPersist.connDriver);
|
|
1003
|
-
const conn = new (0,
|
|
1005
|
+
const conn = new (0, _chunkIRMBWX36cjs.Conn)(
|
|
1004
1006
|
this,
|
|
1005
1007
|
connPersist,
|
|
1006
1008
|
driver,
|
|
@@ -1036,7 +1038,7 @@ var ActorInstance = class {
|
|
|
1036
1038
|
const bareData2 = this.#convertToBarePersisted(persistData);
|
|
1037
1039
|
await this.#actorDriver.writePersistedData(
|
|
1038
1040
|
this.#actorId,
|
|
1039
|
-
|
|
1041
|
+
_chunkRM2SVURRcjs.PERSISTED_ACTOR_VERSIONED.serializeWithEmbeddedVersion(bareData2)
|
|
1040
1042
|
);
|
|
1041
1043
|
this.#setPersist(persistData);
|
|
1042
1044
|
if (this.#config.onCreate) {
|
|
@@ -1079,14 +1081,14 @@ var ActorInstance = class {
|
|
|
1079
1081
|
result.catch((error) => {
|
|
1080
1082
|
this.#rLog.error({
|
|
1081
1083
|
msg: "error in `onDisconnect`",
|
|
1082
|
-
error:
|
|
1084
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error)
|
|
1083
1085
|
});
|
|
1084
1086
|
});
|
|
1085
1087
|
}
|
|
1086
1088
|
} catch (error) {
|
|
1087
1089
|
this.#rLog.error({
|
|
1088
1090
|
msg: "error in `onDisconnect`",
|
|
1089
|
-
error:
|
|
1091
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error)
|
|
1090
1092
|
});
|
|
1091
1093
|
}
|
|
1092
1094
|
}
|
|
@@ -1112,7 +1114,7 @@ var ActorInstance = class {
|
|
|
1112
1114
|
params
|
|
1113
1115
|
);
|
|
1114
1116
|
if (dataOrPromise instanceof Promise) {
|
|
1115
|
-
connState = await
|
|
1117
|
+
connState = await _chunkIRMBWX36cjs.deadline.call(void 0,
|
|
1116
1118
|
dataOrPromise,
|
|
1117
1119
|
this.#config.options.createConnStateTimeout
|
|
1118
1120
|
);
|
|
@@ -1154,7 +1156,7 @@ var ActorInstance = class {
|
|
|
1154
1156
|
lastSeen: Date.now(),
|
|
1155
1157
|
subscriptions: []
|
|
1156
1158
|
};
|
|
1157
|
-
const conn = new (0,
|
|
1159
|
+
const conn = new (0, _chunkIRMBWX36cjs.Conn)(
|
|
1158
1160
|
this,
|
|
1159
1161
|
persist,
|
|
1160
1162
|
driver,
|
|
@@ -1168,7 +1170,7 @@ var ActorInstance = class {
|
|
|
1168
1170
|
try {
|
|
1169
1171
|
const result = this.#config.onConnect(this.actorContext, conn);
|
|
1170
1172
|
if (result instanceof Promise) {
|
|
1171
|
-
|
|
1173
|
+
_chunkIRMBWX36cjs.deadline.call(void 0, result, this.#config.options.onConnectTimeout).catch(
|
|
1172
1174
|
(error) => {
|
|
1173
1175
|
this.#rLog.error({
|
|
1174
1176
|
msg: "error in `onConnect`, closing socket",
|
|
@@ -1181,14 +1183,14 @@ var ActorInstance = class {
|
|
|
1181
1183
|
} catch (error) {
|
|
1182
1184
|
this.#rLog.error({
|
|
1183
1185
|
msg: "error in `onConnect`",
|
|
1184
|
-
error:
|
|
1186
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error)
|
|
1185
1187
|
});
|
|
1186
1188
|
conn == null ? void 0 : conn.disconnect("`onConnect` failed");
|
|
1187
1189
|
}
|
|
1188
1190
|
}
|
|
1189
1191
|
this.inspector.emitter.emit("connectionUpdated");
|
|
1190
1192
|
conn._sendMessage(
|
|
1191
|
-
new (0,
|
|
1193
|
+
new (0, _chunkIRMBWX36cjs.CachedSerializer)(
|
|
1192
1194
|
{
|
|
1193
1195
|
body: {
|
|
1194
1196
|
tag: "Init",
|
|
@@ -1199,14 +1201,14 @@ var ActorInstance = class {
|
|
|
1199
1201
|
}
|
|
1200
1202
|
}
|
|
1201
1203
|
},
|
|
1202
|
-
|
|
1204
|
+
_chunkIRMBWX36cjs.TO_CLIENT_VERSIONED
|
|
1203
1205
|
)
|
|
1204
1206
|
);
|
|
1205
1207
|
return conn;
|
|
1206
1208
|
}
|
|
1207
1209
|
// MARK: Messages
|
|
1208
1210
|
async processMessage(message, conn) {
|
|
1209
|
-
await
|
|
1211
|
+
await _chunkIRMBWX36cjs.processMessage.call(void 0, message, this, conn, {
|
|
1210
1212
|
onExecuteAction: async (ctx, name, args) => {
|
|
1211
1213
|
this.inspector.emitter.emit("eventFired", {
|
|
1212
1214
|
type: "action",
|
|
@@ -1287,11 +1289,11 @@ var ActorInstance = class {
|
|
|
1287
1289
|
}
|
|
1288
1290
|
}
|
|
1289
1291
|
#assertReady(allowStoppingState = false) {
|
|
1290
|
-
if (!this.#ready) throw new (0,
|
|
1292
|
+
if (!this.#ready) throw new (0, _chunk5QGQK44Lcjs.InternalError)("Actor not ready");
|
|
1291
1293
|
if (!allowStoppingState && this.#sleepCalled)
|
|
1292
|
-
throw new (0,
|
|
1294
|
+
throw new (0, _chunk5QGQK44Lcjs.InternalError)("Actor is going to sleep");
|
|
1293
1295
|
if (!allowStoppingState && this.#stopCalled)
|
|
1294
|
-
throw new (0,
|
|
1296
|
+
throw new (0, _chunk5QGQK44Lcjs.InternalError)("Actor is stopping");
|
|
1295
1297
|
}
|
|
1296
1298
|
/**
|
|
1297
1299
|
* Check the liveness of all connections.
|
|
@@ -1300,7 +1302,7 @@ var ActorInstance = class {
|
|
|
1300
1302
|
#checkConnectionsLiveness() {
|
|
1301
1303
|
this.#rLog.debug({ msg: "checking connections liveness" });
|
|
1302
1304
|
for (const conn of this.#connections.values()) {
|
|
1303
|
-
const liveness = conn[
|
|
1305
|
+
const liveness = conn[_chunkIRMBWX36cjs.CONNECTION_CHECK_LIVENESS_SYMBOL]();
|
|
1304
1306
|
if (liveness.status === "connected") {
|
|
1305
1307
|
this.#rLog.debug({ msg: "connection is alive", connId: conn.id });
|
|
1306
1308
|
} else {
|
|
@@ -1352,7 +1354,7 @@ var ActorInstance = class {
|
|
|
1352
1354
|
_invariant2.default.call(void 0, this.#ready, "executing action before ready");
|
|
1353
1355
|
if (!(actionName in this.#config.actions)) {
|
|
1354
1356
|
this.#rLog.warn({ msg: "action does not exist", actionName });
|
|
1355
|
-
throw new (0,
|
|
1357
|
+
throw new (0, _chunk5QGQK44Lcjs.ActionNotFound)(actionName);
|
|
1356
1358
|
}
|
|
1357
1359
|
const actionFunction = this.#config.actions[actionName];
|
|
1358
1360
|
if (typeof actionFunction !== "function") {
|
|
@@ -1361,7 +1363,7 @@ var ActorInstance = class {
|
|
|
1361
1363
|
actionName,
|
|
1362
1364
|
type: typeof actionFunction
|
|
1363
1365
|
});
|
|
1364
|
-
throw new (0,
|
|
1366
|
+
throw new (0, _chunk5QGQK44Lcjs.ActionNotFound)(actionName);
|
|
1365
1367
|
}
|
|
1366
1368
|
try {
|
|
1367
1369
|
this.#rLog.debug({
|
|
@@ -1376,7 +1378,7 @@ var ActorInstance = class {
|
|
|
1376
1378
|
msg: "awaiting async action",
|
|
1377
1379
|
actionName
|
|
1378
1380
|
});
|
|
1379
|
-
output = await
|
|
1381
|
+
output = await _chunkIRMBWX36cjs.deadline.call(void 0,
|
|
1380
1382
|
outputOrPromise,
|
|
1381
1383
|
this.#config.options.actionTimeout
|
|
1382
1384
|
);
|
|
@@ -1411,7 +1413,7 @@ var ActorInstance = class {
|
|
|
1411
1413
|
} catch (error) {
|
|
1412
1414
|
this.#rLog.error({
|
|
1413
1415
|
msg: "error in `onBeforeActionResponse`",
|
|
1414
|
-
error:
|
|
1416
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error)
|
|
1415
1417
|
});
|
|
1416
1418
|
}
|
|
1417
1419
|
}
|
|
@@ -1423,13 +1425,13 @@ var ActorInstance = class {
|
|
|
1423
1425
|
});
|
|
1424
1426
|
return output;
|
|
1425
1427
|
} catch (error) {
|
|
1426
|
-
if (error instanceof
|
|
1427
|
-
throw new (0,
|
|
1428
|
+
if (error instanceof _chunkIRMBWX36cjs.DeadlineError) {
|
|
1429
|
+
throw new (0, _chunk5QGQK44Lcjs.ActionTimedOut)();
|
|
1428
1430
|
}
|
|
1429
1431
|
this.#rLog.error({
|
|
1430
1432
|
msg: "action error",
|
|
1431
1433
|
actionName,
|
|
1432
|
-
error:
|
|
1434
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error)
|
|
1433
1435
|
});
|
|
1434
1436
|
throw error;
|
|
1435
1437
|
} finally {
|
|
@@ -1448,7 +1450,7 @@ var ActorInstance = class {
|
|
|
1448
1450
|
async handleFetch(request, opts) {
|
|
1449
1451
|
this.#assertReady();
|
|
1450
1452
|
if (!this.#config.onFetch) {
|
|
1451
|
-
throw new (0,
|
|
1453
|
+
throw new (0, _chunk5QGQK44Lcjs.FetchHandlerNotDefined)();
|
|
1452
1454
|
}
|
|
1453
1455
|
this.#activeRawFetchCount++;
|
|
1454
1456
|
this.#resetSleepTimer();
|
|
@@ -1459,11 +1461,11 @@ var ActorInstance = class {
|
|
|
1459
1461
|
opts
|
|
1460
1462
|
);
|
|
1461
1463
|
if (!response) {
|
|
1462
|
-
throw new (0,
|
|
1464
|
+
throw new (0, _chunk5QGQK44Lcjs.InvalidFetchResponse)();
|
|
1463
1465
|
}
|
|
1464
1466
|
return response;
|
|
1465
1467
|
} catch (error) {
|
|
1466
|
-
this.#rLog.error({ msg: "onFetch error", error:
|
|
1468
|
+
this.#rLog.error({ msg: "onFetch error", error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error) });
|
|
1467
1469
|
throw error;
|
|
1468
1470
|
} finally {
|
|
1469
1471
|
this.#activeRawFetchCount = Math.max(0, this.#activeRawFetchCount - 1);
|
|
@@ -1477,7 +1479,7 @@ var ActorInstance = class {
|
|
|
1477
1479
|
async handleWebSocket(websocket, opts) {
|
|
1478
1480
|
this.#assertReady();
|
|
1479
1481
|
if (!this.#config.onWebSocket) {
|
|
1480
|
-
throw new (0,
|
|
1482
|
+
throw new (0, _chunk5QGQK44Lcjs.InternalError)("onWebSocket handler not defined");
|
|
1481
1483
|
}
|
|
1482
1484
|
try {
|
|
1483
1485
|
const stateBeforeHandler = this.#persistChanged;
|
|
@@ -1504,7 +1506,7 @@ var ActorInstance = class {
|
|
|
1504
1506
|
} catch (error) {
|
|
1505
1507
|
this.#rLog.error({
|
|
1506
1508
|
msg: "onWebSocket error",
|
|
1507
|
-
error:
|
|
1509
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error)
|
|
1508
1510
|
});
|
|
1509
1511
|
throw error;
|
|
1510
1512
|
} finally {
|
|
@@ -1567,7 +1569,7 @@ var ActorInstance = class {
|
|
|
1567
1569
|
*/
|
|
1568
1570
|
get db() {
|
|
1569
1571
|
if (!this.#db) {
|
|
1570
|
-
throw new (0,
|
|
1572
|
+
throw new (0, _chunk5QGQK44Lcjs.DatabaseNotEnabled)();
|
|
1571
1573
|
}
|
|
1572
1574
|
return this.#db;
|
|
1573
1575
|
}
|
|
@@ -1599,17 +1601,17 @@ var ActorInstance = class {
|
|
|
1599
1601
|
});
|
|
1600
1602
|
const subscriptions = this.#subscriptionIndex.get(name);
|
|
1601
1603
|
if (!subscriptions) return;
|
|
1602
|
-
const toClientSerializer = new (0,
|
|
1604
|
+
const toClientSerializer = new (0, _chunkIRMBWX36cjs.CachedSerializer)(
|
|
1603
1605
|
{
|
|
1604
1606
|
body: {
|
|
1605
1607
|
tag: "Event",
|
|
1606
1608
|
val: {
|
|
1607
1609
|
name,
|
|
1608
|
-
args:
|
|
1610
|
+
args: _chunkWADSS5X4cjs.bufferToArrayBuffer.call(void 0, cbor.encode(args))
|
|
1609
1611
|
}
|
|
1610
1612
|
}
|
|
1611
1613
|
},
|
|
1612
|
-
|
|
1614
|
+
_chunkIRMBWX36cjs.TO_CLIENT_VERSIONED
|
|
1613
1615
|
);
|
|
1614
1616
|
for (const connection of subscriptions) {
|
|
1615
1617
|
connection._sendMessage(toClientSerializer);
|
|
@@ -1630,7 +1632,7 @@ var ActorInstance = class {
|
|
|
1630
1632
|
}).catch((error) => {
|
|
1631
1633
|
this.#rLog.error({
|
|
1632
1634
|
msg: "wait until promise failed",
|
|
1633
|
-
error:
|
|
1635
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error)
|
|
1634
1636
|
});
|
|
1635
1637
|
});
|
|
1636
1638
|
this.#backgroundPromises.push(nonfailablePromise);
|
|
@@ -1686,7 +1688,7 @@ var ActorInstance = class {
|
|
|
1686
1688
|
this._sleep().catch((error) => {
|
|
1687
1689
|
this.#rLog.error({
|
|
1688
1690
|
msg: "error during sleep",
|
|
1689
|
-
error:
|
|
1691
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error)
|
|
1690
1692
|
});
|
|
1691
1693
|
});
|
|
1692
1694
|
}, this.#config.options.sleepTimeout);
|
|
@@ -1738,16 +1740,16 @@ var ActorInstance = class {
|
|
|
1738
1740
|
this.#rLog.debug({ msg: "calling onStop" });
|
|
1739
1741
|
const result = this.#config.onStop(this.actorContext);
|
|
1740
1742
|
if (result instanceof Promise) {
|
|
1741
|
-
await
|
|
1743
|
+
await _chunkIRMBWX36cjs.deadline.call(void 0, result, this.#config.options.onStopTimeout);
|
|
1742
1744
|
}
|
|
1743
1745
|
this.#rLog.debug({ msg: "onStop completed" });
|
|
1744
1746
|
} catch (error) {
|
|
1745
|
-
if (error instanceof
|
|
1747
|
+
if (error instanceof _chunkIRMBWX36cjs.DeadlineError) {
|
|
1746
1748
|
this.#rLog.error({ msg: "onStop timed out" });
|
|
1747
1749
|
} else {
|
|
1748
1750
|
this.#rLog.error({
|
|
1749
1751
|
msg: "error in onStop",
|
|
1750
|
-
error:
|
|
1752
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error)
|
|
1751
1753
|
});
|
|
1752
1754
|
}
|
|
1753
1755
|
}
|
|
@@ -1808,18 +1810,18 @@ var ActorInstance = class {
|
|
|
1808
1810
|
// MARK: BARE Conversion Helpers
|
|
1809
1811
|
#convertToBarePersisted(persist) {
|
|
1810
1812
|
return {
|
|
1811
|
-
input: persist.input !== void 0 ?
|
|
1813
|
+
input: persist.input !== void 0 ? _chunkWADSS5X4cjs.bufferToArrayBuffer.call(void 0, cbor.encode(persist.input)) : null,
|
|
1812
1814
|
hasInitialized: persist.hasInitiated,
|
|
1813
|
-
state:
|
|
1815
|
+
state: _chunkWADSS5X4cjs.bufferToArrayBuffer.call(void 0, cbor.encode(persist.state)),
|
|
1814
1816
|
connections: persist.connections.map((conn) => ({
|
|
1815
1817
|
id: conn.connId,
|
|
1816
1818
|
token: conn.token,
|
|
1817
1819
|
driver: conn.connDriver,
|
|
1818
|
-
driverState:
|
|
1820
|
+
driverState: _chunkWADSS5X4cjs.bufferToArrayBuffer.call(void 0,
|
|
1819
1821
|
cbor.encode(conn.connDriverState || {})
|
|
1820
1822
|
),
|
|
1821
|
-
parameters:
|
|
1822
|
-
state:
|
|
1823
|
+
parameters: _chunkWADSS5X4cjs.bufferToArrayBuffer.call(void 0, cbor.encode(conn.params || {})),
|
|
1824
|
+
state: _chunkWADSS5X4cjs.bufferToArrayBuffer.call(void 0, cbor.encode(conn.state || {})),
|
|
1823
1825
|
subscriptions: conn.subscriptions.map((sub) => ({
|
|
1824
1826
|
eventName: sub.eventName
|
|
1825
1827
|
})),
|
|
@@ -1895,9 +1897,9 @@ var GenericConnGlobalState = (_class2 = class {constructor() { _class2.prototype
|
|
|
1895
1897
|
}, _class2);
|
|
1896
1898
|
function createGenericConnDrivers(globalState) {
|
|
1897
1899
|
return {
|
|
1898
|
-
[
|
|
1899
|
-
[
|
|
1900
|
-
[
|
|
1900
|
+
[_chunkIRMBWX36cjs.CONNECTION_DRIVER_WEBSOCKET]: createGenericWebSocketDriver(globalState),
|
|
1901
|
+
[_chunkIRMBWX36cjs.CONNECTION_DRIVER_SSE]: createGenericSseDriver(globalState),
|
|
1902
|
+
[_chunkIRMBWX36cjs.CONNECTION_DRIVER_HTTP]: createGenericHttpDriver()
|
|
1901
1903
|
};
|
|
1902
1904
|
}
|
|
1903
1905
|
function createGenericWebSocketDriver(globalState) {
|
|
@@ -1997,7 +1999,7 @@ function createGenericSseDriver(globalState) {
|
|
|
1997
1999
|
return;
|
|
1998
2000
|
}
|
|
1999
2001
|
stream.writeSSE({
|
|
2000
|
-
data:
|
|
2002
|
+
data: _chunkIRMBWX36cjs.encodeDataToString.call(void 0, message.serialize(state.encoding))
|
|
2001
2003
|
});
|
|
2002
2004
|
},
|
|
2003
2005
|
disconnect: async (actor2, conn, _state, _reason) => {
|
|
@@ -2045,7 +2047,7 @@ var _cors = require('hono/cors');
|
|
|
2045
2047
|
// src/common/router.ts
|
|
2046
2048
|
|
|
2047
2049
|
function logger3() {
|
|
2048
|
-
return
|
|
2050
|
+
return _chunk5YTI25C3cjs.getLogger.call(void 0, "router");
|
|
2049
2051
|
}
|
|
2050
2052
|
function loggerMiddleware(logger9) {
|
|
2051
2053
|
return async (c, next) => {
|
|
@@ -2070,8 +2072,8 @@ function handleRouteNotFound(c) {
|
|
|
2070
2072
|
return c.text("Not Found (RivetKit)", 404);
|
|
2071
2073
|
}
|
|
2072
2074
|
function handleRouteError(error, c) {
|
|
2073
|
-
const exposeInternalError =
|
|
2074
|
-
const { statusCode, group, code, message, metadata } =
|
|
2075
|
+
const exposeInternalError = _chunkIRMBWX36cjs.getRequestExposeInternalError.call(void 0, c.req.raw);
|
|
2076
|
+
const { statusCode, group, code, message, metadata } = _chunkWADSS5X4cjs.deconstructError.call(void 0,
|
|
2075
2077
|
error,
|
|
2076
2078
|
logger3(),
|
|
2077
2079
|
{
|
|
@@ -2082,20 +2084,20 @@ function handleRouteError(error, c) {
|
|
|
2082
2084
|
);
|
|
2083
2085
|
let encoding;
|
|
2084
2086
|
try {
|
|
2085
|
-
encoding =
|
|
2087
|
+
encoding = _chunkIRMBWX36cjs.getRequestEncoding.call(void 0, c.req);
|
|
2086
2088
|
} catch (_) {
|
|
2087
2089
|
encoding = "json";
|
|
2088
2090
|
}
|
|
2089
|
-
const output =
|
|
2091
|
+
const output = _chunkIRMBWX36cjs.serializeWithEncoding.call(void 0,
|
|
2090
2092
|
encoding,
|
|
2091
2093
|
{
|
|
2092
2094
|
group,
|
|
2093
2095
|
code,
|
|
2094
2096
|
message,
|
|
2095
2097
|
// TODO: Cannot serialize non-binary meta since it requires ArrayBuffer atm
|
|
2096
|
-
metadata:
|
|
2098
|
+
metadata: _chunkIRMBWX36cjs.encodingIsBinary.call(void 0, encoding) ? _chunkWADSS5X4cjs.bufferToArrayBuffer.call(void 0, cbor2.encode(metadata)) : null
|
|
2097
2099
|
},
|
|
2098
|
-
|
|
2100
|
+
_chunkIRMBWX36cjs.HTTP_RESPONSE_ERROR_VERSIONED
|
|
2099
2101
|
);
|
|
2100
2102
|
return c.body(output, { status: statusCode });
|
|
2101
2103
|
}
|
|
@@ -2106,7 +2108,7 @@ var _factory = require('hono/factory');
|
|
|
2106
2108
|
|
|
2107
2109
|
// src/inspector/log.ts
|
|
2108
2110
|
function inspectorLogger() {
|
|
2109
|
-
return
|
|
2111
|
+
return _chunk5YTI25C3cjs.getLogger.call(void 0, "inspector");
|
|
2110
2112
|
}
|
|
2111
2113
|
|
|
2112
2114
|
// src/inspector/utils.ts
|
|
@@ -2169,7 +2171,7 @@ var PATH_CONNECT_WEBSOCKET = "/connect/websocket";
|
|
|
2169
2171
|
var PATH_RAW_WEBSOCKET_PREFIX = "/raw/websocket/";
|
|
2170
2172
|
function createActorRouter(runConfig, actorDriver) {
|
|
2171
2173
|
const router = new (0, _hono.Hono)({ strict: false });
|
|
2172
|
-
router.use("*", loggerMiddleware(
|
|
2174
|
+
router.use("*", loggerMiddleware(_chunkIRMBWX36cjs.loggerWithoutContext.call(void 0, )));
|
|
2173
2175
|
router.get("/", (c) => {
|
|
2174
2176
|
return c.text(
|
|
2175
2177
|
"This is an RivetKit actor.\n\nLearn more at https://rivetkit.org"
|
|
@@ -2183,13 +2185,13 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
2183
2185
|
const upgradeWebSocket = (_a = runConfig.getUpgradeWebSocket) == null ? void 0 : _a.call(runConfig);
|
|
2184
2186
|
if (upgradeWebSocket) {
|
|
2185
2187
|
return upgradeWebSocket(async (c2) => {
|
|
2186
|
-
const encodingRaw = c2.req.header(
|
|
2187
|
-
const connParamsRaw = c2.req.header(
|
|
2188
|
-
const authDataRaw = c2.req.header(
|
|
2189
|
-
const encoding =
|
|
2188
|
+
const encodingRaw = c2.req.header(_chunkIRMBWX36cjs.HEADER_ENCODING);
|
|
2189
|
+
const connParamsRaw = c2.req.header(_chunkIRMBWX36cjs.HEADER_CONN_PARAMS);
|
|
2190
|
+
const authDataRaw = c2.req.header(_chunkIRMBWX36cjs.HEADER_AUTH_DATA);
|
|
2191
|
+
const encoding = _chunkIRMBWX36cjs.EncodingSchema.parse(encodingRaw);
|
|
2190
2192
|
const connParams = connParamsRaw ? JSON.parse(connParamsRaw) : void 0;
|
|
2191
2193
|
const authData = authDataRaw ? JSON.parse(authDataRaw) : void 0;
|
|
2192
|
-
return await
|
|
2194
|
+
return await _chunkIRMBWX36cjs.handleWebSocketConnect.call(void 0,
|
|
2193
2195
|
c2.req.raw,
|
|
2194
2196
|
runConfig,
|
|
2195
2197
|
actorDriver,
|
|
@@ -2198,7 +2200,7 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
2198
2200
|
connParams,
|
|
2199
2201
|
authData
|
|
2200
2202
|
);
|
|
2201
|
-
})(c,
|
|
2203
|
+
})(c, _chunkWADSS5X4cjs.noopNext.call(void 0, ));
|
|
2202
2204
|
} else {
|
|
2203
2205
|
return c.text(
|
|
2204
2206
|
"WebSockets are not enabled for this driver. Use SSE instead.",
|
|
@@ -2207,21 +2209,21 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
2207
2209
|
}
|
|
2208
2210
|
});
|
|
2209
2211
|
router.get("/connect/sse", async (c) => {
|
|
2210
|
-
const authDataRaw = c.req.header(
|
|
2212
|
+
const authDataRaw = c.req.header(_chunkIRMBWX36cjs.HEADER_AUTH_DATA);
|
|
2211
2213
|
let authData;
|
|
2212
2214
|
if (authDataRaw) {
|
|
2213
2215
|
authData = JSON.parse(authDataRaw);
|
|
2214
2216
|
}
|
|
2215
|
-
return
|
|
2217
|
+
return _chunkIRMBWX36cjs.handleSseConnect.call(void 0, c, runConfig, actorDriver, c.env.actorId, authData);
|
|
2216
2218
|
});
|
|
2217
2219
|
router.post("/action/:action", async (c) => {
|
|
2218
2220
|
const actionName = c.req.param("action");
|
|
2219
|
-
const authDataRaw = c.req.header(
|
|
2221
|
+
const authDataRaw = c.req.header(_chunkIRMBWX36cjs.HEADER_AUTH_DATA);
|
|
2220
2222
|
let authData;
|
|
2221
2223
|
if (authDataRaw) {
|
|
2222
2224
|
authData = JSON.parse(authDataRaw);
|
|
2223
2225
|
}
|
|
2224
|
-
return
|
|
2226
|
+
return _chunkIRMBWX36cjs.handleAction.call(void 0,
|
|
2225
2227
|
c,
|
|
2226
2228
|
runConfig,
|
|
2227
2229
|
actorDriver,
|
|
@@ -2231,12 +2233,12 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
2231
2233
|
);
|
|
2232
2234
|
});
|
|
2233
2235
|
router.post("/connections/message", async (c) => {
|
|
2234
|
-
const connId = c.req.header(
|
|
2235
|
-
const connToken = c.req.header(
|
|
2236
|
+
const connId = c.req.header(_chunkIRMBWX36cjs.HEADER_CONN_ID);
|
|
2237
|
+
const connToken = c.req.header(_chunkIRMBWX36cjs.HEADER_CONN_TOKEN);
|
|
2236
2238
|
if (!connId || !connToken) {
|
|
2237
2239
|
throw new Error("Missing required parameters");
|
|
2238
2240
|
}
|
|
2239
|
-
return
|
|
2241
|
+
return _chunkIRMBWX36cjs.handleConnectionMessage.call(void 0,
|
|
2240
2242
|
c,
|
|
2241
2243
|
runConfig,
|
|
2242
2244
|
actorDriver,
|
|
@@ -2246,7 +2248,7 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
2246
2248
|
);
|
|
2247
2249
|
});
|
|
2248
2250
|
router.all("/raw/http/*", async (c) => {
|
|
2249
|
-
const authDataRaw = c.req.header(
|
|
2251
|
+
const authDataRaw = c.req.header(_chunkIRMBWX36cjs.HEADER_AUTH_DATA);
|
|
2250
2252
|
let authData;
|
|
2251
2253
|
if (authDataRaw) {
|
|
2252
2254
|
authData = JSON.parse(authDataRaw);
|
|
@@ -2258,9 +2260,10 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
2258
2260
|
const correctedRequest = new Request(correctedUrl, {
|
|
2259
2261
|
method: c.req.method,
|
|
2260
2262
|
headers: c.req.raw.headers,
|
|
2261
|
-
body: c.req.raw.body
|
|
2263
|
+
body: c.req.raw.body,
|
|
2264
|
+
duplex: "half"
|
|
2262
2265
|
});
|
|
2263
|
-
|
|
2266
|
+
_chunkIRMBWX36cjs.loggerWithoutContext.call(void 0, ).debug({
|
|
2264
2267
|
msg: "rewriting http url",
|
|
2265
2268
|
from: c.req.url,
|
|
2266
2269
|
to: correctedRequest.url
|
|
@@ -2269,7 +2272,7 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
2269
2272
|
auth: authData
|
|
2270
2273
|
});
|
|
2271
2274
|
if (!response) {
|
|
2272
|
-
throw new (0,
|
|
2275
|
+
throw new (0, _chunk5QGQK44Lcjs.InternalError)("handleFetch returned void unexpectedly");
|
|
2273
2276
|
}
|
|
2274
2277
|
return response;
|
|
2275
2278
|
});
|
|
@@ -2278,29 +2281,29 @@ function createActorRouter(runConfig, actorDriver) {
|
|
|
2278
2281
|
const upgradeWebSocket = (_a = runConfig.getUpgradeWebSocket) == null ? void 0 : _a.call(runConfig);
|
|
2279
2282
|
if (upgradeWebSocket) {
|
|
2280
2283
|
return upgradeWebSocket(async (c2) => {
|
|
2281
|
-
const encodingRaw = c2.req.header(
|
|
2282
|
-
const connParamsRaw = c2.req.header(
|
|
2283
|
-
const authDataRaw = c2.req.header(
|
|
2284
|
-
const encoding =
|
|
2284
|
+
const encodingRaw = c2.req.header(_chunkIRMBWX36cjs.HEADER_ENCODING);
|
|
2285
|
+
const connParamsRaw = c2.req.header(_chunkIRMBWX36cjs.HEADER_CONN_PARAMS);
|
|
2286
|
+
const authDataRaw = c2.req.header(_chunkIRMBWX36cjs.HEADER_AUTH_DATA);
|
|
2287
|
+
const encoding = _chunkIRMBWX36cjs.EncodingSchema.parse(encodingRaw);
|
|
2285
2288
|
const connParams = connParamsRaw ? JSON.parse(connParamsRaw) : void 0;
|
|
2286
2289
|
const authData = authDataRaw ? JSON.parse(authDataRaw) : void 0;
|
|
2287
2290
|
const url = new URL(c2.req.url);
|
|
2288
2291
|
const pathWithQuery = c2.req.path + url.search;
|
|
2289
|
-
|
|
2292
|
+
_chunkIRMBWX36cjs.loggerWithoutContext.call(void 0, ).debug({
|
|
2290
2293
|
msg: "actor router raw websocket",
|
|
2291
2294
|
path: c2.req.path,
|
|
2292
2295
|
url: c2.req.url,
|
|
2293
2296
|
search: url.search,
|
|
2294
2297
|
pathWithQuery
|
|
2295
2298
|
});
|
|
2296
|
-
return await
|
|
2299
|
+
return await _chunkIRMBWX36cjs.handleRawWebSocketHandler.call(void 0,
|
|
2297
2300
|
c2.req.raw,
|
|
2298
2301
|
pathWithQuery,
|
|
2299
2302
|
actorDriver,
|
|
2300
2303
|
c2.env.actorId,
|
|
2301
2304
|
authData
|
|
2302
2305
|
);
|
|
2303
|
-
})(c,
|
|
2306
|
+
})(c, _chunkWADSS5X4cjs.noopNext.call(void 0, ));
|
|
2304
2307
|
} else {
|
|
2305
2308
|
return c.text(
|
|
2306
2309
|
"WebSockets are not enabled for this driver. Use SSE instead.",
|
|
@@ -2350,7 +2353,7 @@ async function importEventSource() {
|
|
|
2350
2353
|
try {
|
|
2351
2354
|
const es = await Promise.resolve().then(() => _interopRequireWildcard(require("eventsource")));
|
|
2352
2355
|
_EventSource = es.EventSource;
|
|
2353
|
-
|
|
2356
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug("using eventsource from npm");
|
|
2354
2357
|
} catch (err) {
|
|
2355
2358
|
_EventSource = class MockEventSource {
|
|
2356
2359
|
constructor() {
|
|
@@ -2359,7 +2362,7 @@ async function importEventSource() {
|
|
|
2359
2362
|
);
|
|
2360
2363
|
}
|
|
2361
2364
|
};
|
|
2362
|
-
|
|
2365
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug("using mock eventsource");
|
|
2363
2366
|
}
|
|
2364
2367
|
return _EventSource;
|
|
2365
2368
|
})();
|
|
@@ -2368,7 +2371,7 @@ async function importEventSource() {
|
|
|
2368
2371
|
|
|
2369
2372
|
// src/client/actor-query.ts
|
|
2370
2373
|
async function queryActor(c, query, managerDriver) {
|
|
2371
|
-
|
|
2374
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({ msg: "querying actor", query: JSON.stringify(query) });
|
|
2372
2375
|
let actorOutput;
|
|
2373
2376
|
if ("getForId" in query) {
|
|
2374
2377
|
const output = await managerDriver.getForId({
|
|
@@ -2376,7 +2379,7 @@ async function queryActor(c, query, managerDriver) {
|
|
|
2376
2379
|
name: query.getForId.name,
|
|
2377
2380
|
actorId: query.getForId.actorId
|
|
2378
2381
|
});
|
|
2379
|
-
if (!output) throw new (0,
|
|
2382
|
+
if (!output) throw new (0, _chunk5QGQK44Lcjs.ActorNotFound)(query.getForId.actorId);
|
|
2380
2383
|
actorOutput = output;
|
|
2381
2384
|
} else if ("getForKey" in query) {
|
|
2382
2385
|
const existingActor = await managerDriver.getWithKey({
|
|
@@ -2385,7 +2388,7 @@ async function queryActor(c, query, managerDriver) {
|
|
|
2385
2388
|
key: query.getForKey.key
|
|
2386
2389
|
});
|
|
2387
2390
|
if (!existingActor) {
|
|
2388
|
-
throw new (0,
|
|
2391
|
+
throw new (0, _chunk5QGQK44Lcjs.ActorNotFound)(
|
|
2389
2392
|
`${query.getForKey.name}:${JSON.stringify(query.getForKey.key)}`
|
|
2390
2393
|
);
|
|
2391
2394
|
}
|
|
@@ -2413,9 +2416,9 @@ async function queryActor(c, query, managerDriver) {
|
|
|
2413
2416
|
actorId: createOutput.actorId
|
|
2414
2417
|
};
|
|
2415
2418
|
} else {
|
|
2416
|
-
throw new (0,
|
|
2419
|
+
throw new (0, _chunk5QGQK44Lcjs.InvalidRequest)("Invalid query format");
|
|
2417
2420
|
}
|
|
2418
|
-
|
|
2421
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({ msg: "actor query result", actorId: actorOutput.actorId });
|
|
2419
2422
|
return { actorId: actorOutput.actorId };
|
|
2420
2423
|
}
|
|
2421
2424
|
|
|
@@ -2470,10 +2473,10 @@ function messageLength(message) {
|
|
|
2470
2473
|
if (typeof message === "string") {
|
|
2471
2474
|
return message.length;
|
|
2472
2475
|
}
|
|
2473
|
-
|
|
2476
|
+
_chunkWADSS5X4cjs.assertUnreachable.call(void 0, message);
|
|
2474
2477
|
}
|
|
2475
2478
|
async function sendHttpRequest(opts) {
|
|
2476
|
-
|
|
2479
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({
|
|
2477
2480
|
msg: "sending http request",
|
|
2478
2481
|
url: opts.url,
|
|
2479
2482
|
encoding: opts.encoding
|
|
@@ -2482,8 +2485,8 @@ async function sendHttpRequest(opts) {
|
|
|
2482
2485
|
let bodyData;
|
|
2483
2486
|
if (opts.method === "POST" || opts.method === "PUT") {
|
|
2484
2487
|
_invariant2.default.call(void 0, opts.body !== void 0, "missing body");
|
|
2485
|
-
contentType =
|
|
2486
|
-
bodyData =
|
|
2488
|
+
contentType = _chunkIRMBWX36cjs.contentTypeForEncoding.call(void 0, opts.encoding);
|
|
2489
|
+
bodyData = _chunkIRMBWX36cjs.serializeWithEncoding.call(void 0,
|
|
2487
2490
|
opts.encoding,
|
|
2488
2491
|
opts.body,
|
|
2489
2492
|
opts.requestVersionedDataHandler
|
|
@@ -2499,7 +2502,7 @@ async function sendHttpRequest(opts) {
|
|
|
2499
2502
|
...contentType ? {
|
|
2500
2503
|
"Content-Type": contentType
|
|
2501
2504
|
} : {},
|
|
2502
|
-
"User-Agent":
|
|
2505
|
+
"User-Agent": _chunkWADSS5X4cjs.httpUserAgent.call(void 0, )
|
|
2503
2506
|
},
|
|
2504
2507
|
body: bodyData,
|
|
2505
2508
|
credentials: "include",
|
|
@@ -2515,10 +2518,10 @@ async function sendHttpRequest(opts) {
|
|
|
2515
2518
|
const bufferResponse = await response.arrayBuffer();
|
|
2516
2519
|
let responseData;
|
|
2517
2520
|
try {
|
|
2518
|
-
responseData =
|
|
2521
|
+
responseData = _chunkIRMBWX36cjs.deserializeWithEncoding.call(void 0,
|
|
2519
2522
|
opts.encoding,
|
|
2520
2523
|
new Uint8Array(bufferResponse),
|
|
2521
|
-
|
|
2524
|
+
_chunkIRMBWX36cjs.HTTP_RESPONSE_ERROR_VERSIONED
|
|
2522
2525
|
);
|
|
2523
2526
|
} catch (error) {
|
|
2524
2527
|
const textResponse = new TextDecoder("utf-8", { fatal: false }).decode(
|
|
@@ -2541,7 +2544,7 @@ ${textResponse}`
|
|
|
2541
2544
|
}
|
|
2542
2545
|
try {
|
|
2543
2546
|
const buffer = new Uint8Array(await response.arrayBuffer());
|
|
2544
|
-
return
|
|
2547
|
+
return _chunkIRMBWX36cjs.deserializeWithEncoding.call(void 0,
|
|
2545
2548
|
opts.encoding,
|
|
2546
2549
|
buffer,
|
|
2547
2550
|
opts.responseVersionedDataHandler
|
|
@@ -2612,7 +2615,7 @@ var ActorConnRaw = class {
|
|
|
2612
2615
|
* @returns {Promise<Response>} - A promise that resolves to the response of the action function.
|
|
2613
2616
|
*/
|
|
2614
2617
|
async action(opts) {
|
|
2615
|
-
|
|
2618
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({ msg: "action", name: opts.name, args: opts.args });
|
|
2616
2619
|
const actionId = this.#actionIdCounter;
|
|
2617
2620
|
this.#actionIdCounter += 1;
|
|
2618
2621
|
const { promise, resolve, reject } = Promise.withResolvers();
|
|
@@ -2623,7 +2626,7 @@ var ActorConnRaw = class {
|
|
|
2623
2626
|
val: {
|
|
2624
2627
|
id: BigInt(actionId),
|
|
2625
2628
|
name: opts.name,
|
|
2626
|
-
args:
|
|
2629
|
+
args: _chunkWADSS5X4cjs.bufferToArrayBuffer.call(void 0, cbor4.encode(opts.args))
|
|
2627
2630
|
}
|
|
2628
2631
|
}
|
|
2629
2632
|
});
|
|
@@ -2652,10 +2655,10 @@ var ActorConnRaw = class {
|
|
|
2652
2655
|
minTimeout: 250,
|
|
2653
2656
|
maxTimeout: 3e4,
|
|
2654
2657
|
onFailedAttempt: (error) => {
|
|
2655
|
-
|
|
2658
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).warn({
|
|
2656
2659
|
msg: "failed to reconnect",
|
|
2657
2660
|
attempt: error.attemptNumber,
|
|
2658
|
-
error:
|
|
2661
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error)
|
|
2659
2662
|
});
|
|
2660
2663
|
},
|
|
2661
2664
|
// Cancel retry if aborted
|
|
@@ -2663,7 +2666,7 @@ var ActorConnRaw = class {
|
|
|
2663
2666
|
});
|
|
2664
2667
|
} catch (err) {
|
|
2665
2668
|
if (err.name === "AbortError") {
|
|
2666
|
-
|
|
2669
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).info({ msg: "connection retry aborted" });
|
|
2667
2670
|
return;
|
|
2668
2671
|
} else {
|
|
2669
2672
|
throw err;
|
|
@@ -2681,7 +2684,7 @@ var ActorConnRaw = class {
|
|
|
2681
2684
|
} else if (this.#client[TRANSPORT_SYMBOL] === "sse") {
|
|
2682
2685
|
await this.#connectSse();
|
|
2683
2686
|
} else {
|
|
2684
|
-
|
|
2687
|
+
_chunkWADSS5X4cjs.assertUnreachable.call(void 0, this.#client[TRANSPORT_SYMBOL]);
|
|
2685
2688
|
}
|
|
2686
2689
|
await this.#onOpenPromise.promise;
|
|
2687
2690
|
} finally {
|
|
@@ -2702,7 +2705,7 @@ var ActorConnRaw = class {
|
|
|
2702
2705
|
);
|
|
2703
2706
|
this.#transport = { websocket: ws };
|
|
2704
2707
|
ws.addEventListener("open", () => {
|
|
2705
|
-
|
|
2708
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({ msg: "websocket open" });
|
|
2706
2709
|
});
|
|
2707
2710
|
ws.addEventListener("message", async (ev) => {
|
|
2708
2711
|
this.#handleOnMessage(ev.data);
|
|
@@ -2721,9 +2724,9 @@ var ActorConnRaw = class {
|
|
|
2721
2724
|
this.#actorQuery,
|
|
2722
2725
|
this.#driver
|
|
2723
2726
|
);
|
|
2724
|
-
|
|
2727
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({ msg: "found actor for sse connection", actorId });
|
|
2725
2728
|
_invariant2.default.call(void 0, actorId, "Missing actor ID");
|
|
2726
|
-
|
|
2729
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({
|
|
2727
2730
|
msg: "opening sse connection",
|
|
2728
2731
|
actorId,
|
|
2729
2732
|
encoding: this.#encoding
|
|
@@ -2736,9 +2739,9 @@ var ActorConnRaw = class {
|
|
|
2736
2739
|
...init,
|
|
2737
2740
|
headers: {
|
|
2738
2741
|
...init == null ? void 0 : init.headers,
|
|
2739
|
-
"User-Agent":
|
|
2740
|
-
[
|
|
2741
|
-
...this.#params !== void 0 ? { [
|
|
2742
|
+
"User-Agent": _chunkWADSS5X4cjs.httpUserAgent.call(void 0, ),
|
|
2743
|
+
[_chunkIRMBWX36cjs.HEADER_ENCODING]: this.#encoding,
|
|
2744
|
+
...this.#params !== void 0 ? { [_chunkIRMBWX36cjs.HEADER_CONN_PARAMS]: JSON.stringify(this.#params) } : {}
|
|
2742
2745
|
}
|
|
2743
2746
|
})
|
|
2744
2747
|
);
|
|
@@ -2754,14 +2757,14 @@ var ActorConnRaw = class {
|
|
|
2754
2757
|
}
|
|
2755
2758
|
/** Called by the onopen event from drivers. */
|
|
2756
2759
|
#handleOnOpen() {
|
|
2757
|
-
|
|
2760
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({
|
|
2758
2761
|
msg: "socket open",
|
|
2759
2762
|
messageQueueLength: this.#messageQueue.length
|
|
2760
2763
|
});
|
|
2761
2764
|
if (this.#onOpenPromise) {
|
|
2762
2765
|
this.#onOpenPromise.resolve(void 0);
|
|
2763
2766
|
} else {
|
|
2764
|
-
|
|
2767
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).warn({ msg: "#onOpenPromise is undefined" });
|
|
2765
2768
|
}
|
|
2766
2769
|
for (const eventName of this.#eventSubscriptions.keys()) {
|
|
2767
2770
|
this.#sendSubscription(eventName, true);
|
|
@@ -2774,24 +2777,24 @@ var ActorConnRaw = class {
|
|
|
2774
2777
|
}
|
|
2775
2778
|
/** Called by the onmessage event from drivers. */
|
|
2776
2779
|
async #handleOnMessage(data) {
|
|
2777
|
-
|
|
2780
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).trace({
|
|
2778
2781
|
msg: "received message",
|
|
2779
2782
|
dataType: typeof data,
|
|
2780
2783
|
isBlob: data instanceof Blob,
|
|
2781
2784
|
isArrayBuffer: data instanceof ArrayBuffer
|
|
2782
2785
|
});
|
|
2783
2786
|
const response = await this.#parseMessage(data);
|
|
2784
|
-
|
|
2785
|
-
|
|
2787
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).trace(
|
|
2788
|
+
_chunkWADSS5X4cjs.getEnvUniversal.call(void 0, "_RIVETKIT_LOG_MESSAGE") ? {
|
|
2786
2789
|
msg: "parsed message",
|
|
2787
|
-
message:
|
|
2790
|
+
message: _chunkIRMBWX36cjs.jsonStringifyCompat.call(void 0, response).substring(0, 100) + "..."
|
|
2788
2791
|
} : { msg: "parsed message" }
|
|
2789
2792
|
);
|
|
2790
2793
|
if (response.body.tag === "Init") {
|
|
2791
2794
|
this.#actorId = response.body.val.actorId;
|
|
2792
2795
|
this.#connectionId = response.body.val.connectionId;
|
|
2793
2796
|
this.#connectionToken = response.body.val.connectionToken;
|
|
2794
|
-
|
|
2797
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).trace({
|
|
2795
2798
|
msg: "received init message",
|
|
2796
2799
|
actorId: this.#actorId,
|
|
2797
2800
|
connectionId: this.#connectionId
|
|
@@ -2801,7 +2804,7 @@ var ActorConnRaw = class {
|
|
|
2801
2804
|
const { group, code, message, metadata, actionId } = response.body.val;
|
|
2802
2805
|
if (actionId) {
|
|
2803
2806
|
const inFlight = this.#takeActionInFlight(Number(actionId));
|
|
2804
|
-
|
|
2807
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).warn({
|
|
2805
2808
|
msg: "action error",
|
|
2806
2809
|
actionId,
|
|
2807
2810
|
actionName: inFlight == null ? void 0 : inFlight.name,
|
|
@@ -2812,7 +2815,7 @@ var ActorConnRaw = class {
|
|
|
2812
2815
|
});
|
|
2813
2816
|
inFlight.reject(new ActorError(group, code, message, metadata));
|
|
2814
2817
|
} else {
|
|
2815
|
-
|
|
2818
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).warn({
|
|
2816
2819
|
msg: "connection error",
|
|
2817
2820
|
group,
|
|
2818
2821
|
code,
|
|
@@ -2836,22 +2839,22 @@ var ActorConnRaw = class {
|
|
|
2836
2839
|
}
|
|
2837
2840
|
} else if (response.body.tag === "ActionResponse") {
|
|
2838
2841
|
const { id: actionId } = response.body.val;
|
|
2839
|
-
|
|
2842
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).trace({
|
|
2840
2843
|
msg: "received action response",
|
|
2841
2844
|
actionId
|
|
2842
2845
|
});
|
|
2843
2846
|
const inFlight = this.#takeActionInFlight(Number(actionId));
|
|
2844
|
-
|
|
2847
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).trace({
|
|
2845
2848
|
msg: "resolving action promise",
|
|
2846
2849
|
actionId,
|
|
2847
2850
|
actionName: inFlight == null ? void 0 : inFlight.name
|
|
2848
2851
|
});
|
|
2849
2852
|
inFlight.resolve(response.body.val);
|
|
2850
2853
|
} else if (response.body.tag === "Event") {
|
|
2851
|
-
|
|
2854
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).trace({ msg: "received event", name: response.body.val.name });
|
|
2852
2855
|
this.#dispatchEvent(response.body.val);
|
|
2853
2856
|
} else {
|
|
2854
|
-
|
|
2857
|
+
_chunkWADSS5X4cjs.assertUnreachable.call(void 0, response.body);
|
|
2855
2858
|
}
|
|
2856
2859
|
}
|
|
2857
2860
|
/** Called by the onclose event from drivers. */
|
|
@@ -2861,14 +2864,14 @@ var ActorConnRaw = class {
|
|
|
2861
2864
|
}
|
|
2862
2865
|
const closeEvent = event;
|
|
2863
2866
|
if (closeEvent.wasClean) {
|
|
2864
|
-
|
|
2867
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).info({
|
|
2865
2868
|
msg: "socket closed",
|
|
2866
2869
|
code: closeEvent.code,
|
|
2867
2870
|
reason: closeEvent.reason,
|
|
2868
2871
|
wasClean: closeEvent.wasClean
|
|
2869
2872
|
});
|
|
2870
2873
|
} else {
|
|
2871
|
-
|
|
2874
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).warn({
|
|
2872
2875
|
msg: "socket closed",
|
|
2873
2876
|
code: closeEvent.code,
|
|
2874
2877
|
reason: closeEvent.reason,
|
|
@@ -2883,7 +2886,7 @@ var ActorConnRaw = class {
|
|
|
2883
2886
|
/** Called by the onerror event from drivers. */
|
|
2884
2887
|
#handleOnError() {
|
|
2885
2888
|
if (this.#disposed) return;
|
|
2886
|
-
|
|
2889
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).warn("socket error");
|
|
2887
2890
|
}
|
|
2888
2891
|
#takeActionInFlight(id) {
|
|
2889
2892
|
const inFlight = this.#actionsInFlight.get(id);
|
|
@@ -2913,9 +2916,9 @@ var ActorConnRaw = class {
|
|
|
2913
2916
|
try {
|
|
2914
2917
|
handler(error);
|
|
2915
2918
|
} catch (err) {
|
|
2916
|
-
|
|
2919
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).error({
|
|
2917
2920
|
msg: "error in connection error handler",
|
|
2918
|
-
error:
|
|
2921
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, err)
|
|
2919
2922
|
});
|
|
2920
2923
|
}
|
|
2921
2924
|
}
|
|
@@ -2989,18 +2992,18 @@ var ActorConnRaw = class {
|
|
|
2989
2992
|
} else if ("websocket" in this.#transport) {
|
|
2990
2993
|
if (this.#transport.websocket.readyState === 1) {
|
|
2991
2994
|
try {
|
|
2992
|
-
const messageSerialized =
|
|
2995
|
+
const messageSerialized = _chunkIRMBWX36cjs.serializeWithEncoding.call(void 0,
|
|
2993
2996
|
this.#encoding,
|
|
2994
2997
|
message,
|
|
2995
|
-
|
|
2998
|
+
_chunkIRMBWX36cjs.TO_SERVER_VERSIONED
|
|
2996
2999
|
);
|
|
2997
3000
|
this.#transport.websocket.send(messageSerialized);
|
|
2998
|
-
|
|
3001
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).trace({
|
|
2999
3002
|
msg: "sent websocket message",
|
|
3000
3003
|
len: messageLength(messageSerialized)
|
|
3001
3004
|
});
|
|
3002
3005
|
} catch (error) {
|
|
3003
|
-
|
|
3006
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).warn({
|
|
3004
3007
|
msg: "failed to send message, added to queue",
|
|
3005
3008
|
error
|
|
3006
3009
|
});
|
|
@@ -3016,24 +3019,24 @@ var ActorConnRaw = class {
|
|
|
3016
3019
|
queueMessage = true;
|
|
3017
3020
|
}
|
|
3018
3021
|
} else {
|
|
3019
|
-
|
|
3022
|
+
_chunkWADSS5X4cjs.assertUnreachable.call(void 0, this.#transport);
|
|
3020
3023
|
}
|
|
3021
3024
|
if (!(opts == null ? void 0 : opts.ephemeral) && queueMessage) {
|
|
3022
3025
|
this.#messageQueue.push(message);
|
|
3023
|
-
|
|
3026
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({ msg: "queued connection message" });
|
|
3024
3027
|
}
|
|
3025
3028
|
}
|
|
3026
3029
|
async #sendHttpMessage(message, opts) {
|
|
3027
3030
|
try {
|
|
3028
3031
|
if (!this.#actorId || !this.#connectionId || !this.#connectionToken)
|
|
3029
3032
|
throw new InternalError2("Missing connection ID or token.");
|
|
3030
|
-
|
|
3031
|
-
|
|
3033
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).trace(
|
|
3034
|
+
_chunkWADSS5X4cjs.getEnvUniversal.call(void 0, "_RIVETKIT_LOG_MESSAGE") ? {
|
|
3032
3035
|
msg: "sent http message",
|
|
3033
|
-
message: `${
|
|
3036
|
+
message: `${_chunkIRMBWX36cjs.jsonStringifyCompat.call(void 0, message).substring(0, 100)}...`
|
|
3034
3037
|
} : { msg: "sent http message" }
|
|
3035
3038
|
);
|
|
3036
|
-
|
|
3039
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({
|
|
3037
3040
|
msg: "sending http message",
|
|
3038
3041
|
actorId: this.#actorId,
|
|
3039
3042
|
connectionId: this.#connectionId
|
|
@@ -3042,19 +3045,19 @@ var ActorConnRaw = class {
|
|
|
3042
3045
|
url: "http://actor/connections/message",
|
|
3043
3046
|
method: "POST",
|
|
3044
3047
|
headers: {
|
|
3045
|
-
[
|
|
3046
|
-
[
|
|
3047
|
-
[
|
|
3048
|
+
[_chunkIRMBWX36cjs.HEADER_ENCODING]: this.#encoding,
|
|
3049
|
+
[_chunkIRMBWX36cjs.HEADER_CONN_ID]: this.#connectionId,
|
|
3050
|
+
[_chunkIRMBWX36cjs.HEADER_CONN_TOKEN]: this.#connectionToken
|
|
3048
3051
|
},
|
|
3049
3052
|
body: message,
|
|
3050
3053
|
encoding: this.#encoding,
|
|
3051
3054
|
skipParseResponse: true,
|
|
3052
3055
|
customFetch: this.#driver.sendRequest.bind(this.#driver, this.#actorId),
|
|
3053
|
-
requestVersionedDataHandler:
|
|
3054
|
-
responseVersionedDataHandler:
|
|
3056
|
+
requestVersionedDataHandler: _chunkIRMBWX36cjs.TO_SERVER_VERSIONED,
|
|
3057
|
+
responseVersionedDataHandler: _chunkIRMBWX36cjs.TO_CLIENT_VERSIONED
|
|
3055
3058
|
});
|
|
3056
3059
|
} catch (error) {
|
|
3057
|
-
|
|
3060
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).warn({ msg: "failed to send message, added to queue", error });
|
|
3058
3061
|
if (!(opts == null ? void 0 : opts.ephemeral)) {
|
|
3059
3062
|
this.#messageQueue.unshift(message);
|
|
3060
3063
|
}
|
|
@@ -3062,7 +3065,7 @@ var ActorConnRaw = class {
|
|
|
3062
3065
|
}
|
|
3063
3066
|
async #parseMessage(data) {
|
|
3064
3067
|
_invariant2.default.call(void 0, this.#transport, "transport must be defined");
|
|
3065
|
-
if (
|
|
3068
|
+
if (_chunkIRMBWX36cjs.encodingIsBinary.call(void 0, this.#encoding) && "sse" in this.#transport) {
|
|
3066
3069
|
if (typeof data === "string") {
|
|
3067
3070
|
const binaryString = atob(data);
|
|
3068
3071
|
data = new Uint8Array(
|
|
@@ -3074,8 +3077,8 @@ var ActorConnRaw = class {
|
|
|
3074
3077
|
);
|
|
3075
3078
|
}
|
|
3076
3079
|
}
|
|
3077
|
-
const buffer = await
|
|
3078
|
-
return
|
|
3080
|
+
const buffer = await _chunkIRMBWX36cjs.inputDataToBuffer.call(void 0, data);
|
|
3081
|
+
return _chunkIRMBWX36cjs.deserializeWithEncoding.call(void 0, this.#encoding, buffer, _chunkIRMBWX36cjs.TO_CLIENT_VERSIONED);
|
|
3079
3082
|
}
|
|
3080
3083
|
/**
|
|
3081
3084
|
* Disconnects from the actor.
|
|
@@ -3084,11 +3087,11 @@ var ActorConnRaw = class {
|
|
|
3084
3087
|
*/
|
|
3085
3088
|
async dispose() {
|
|
3086
3089
|
if (this.#disposed) {
|
|
3087
|
-
|
|
3090
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).warn({ msg: "connection already disconnected" });
|
|
3088
3091
|
return;
|
|
3089
3092
|
}
|
|
3090
3093
|
this.#disposed = true;
|
|
3091
|
-
|
|
3094
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({ msg: "disposing actor conn" });
|
|
3092
3095
|
clearInterval(this.#keepNodeAliveInterval);
|
|
3093
3096
|
this.#abortController.abort();
|
|
3094
3097
|
this.#client[ACTOR_CONNS_SYMBOL].delete(this);
|
|
@@ -3096,11 +3099,11 @@ var ActorConnRaw = class {
|
|
|
3096
3099
|
} else if ("websocket" in this.#transport) {
|
|
3097
3100
|
const ws = this.#transport.websocket;
|
|
3098
3101
|
if (ws.readyState === 2 || ws.readyState === 3) {
|
|
3099
|
-
|
|
3102
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({ msg: "ws already closed or closing" });
|
|
3100
3103
|
} else {
|
|
3101
3104
|
const { promise, resolve } = Promise.withResolvers();
|
|
3102
3105
|
ws.addEventListener("close", () => {
|
|
3103
|
-
|
|
3106
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({ msg: "ws closed" });
|
|
3104
3107
|
resolve(void 0);
|
|
3105
3108
|
});
|
|
3106
3109
|
ws.close();
|
|
@@ -3109,7 +3112,7 @@ var ActorConnRaw = class {
|
|
|
3109
3112
|
} else if ("sse" in this.#transport) {
|
|
3110
3113
|
this.#transport.sse.close();
|
|
3111
3114
|
} else {
|
|
3112
|
-
|
|
3115
|
+
_chunkWADSS5X4cjs.assertUnreachable.call(void 0, this.#transport);
|
|
3113
3116
|
}
|
|
3114
3117
|
this.#transport = void 0;
|
|
3115
3118
|
}
|
|
@@ -3175,23 +3178,23 @@ async function rawHttpFetch(driver, actorQuery, params, input, init) {
|
|
|
3175
3178
|
}
|
|
3176
3179
|
try {
|
|
3177
3180
|
const { actorId } = await queryActor(void 0, actorQuery, driver);
|
|
3178
|
-
|
|
3181
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({ msg: "found actor for raw http", actorId });
|
|
3179
3182
|
_invariant2.default.call(void 0, actorId, "Missing actor ID");
|
|
3180
3183
|
const normalizedPath = path3.startsWith("/") ? path3.slice(1) : path3;
|
|
3181
3184
|
const url = new URL(`http://actor/raw/http/${normalizedPath}`);
|
|
3182
3185
|
const proxyRequestHeaders = new Headers(mergedInit.headers);
|
|
3183
3186
|
if (params) {
|
|
3184
|
-
proxyRequestHeaders.set(
|
|
3187
|
+
proxyRequestHeaders.set(_chunkIRMBWX36cjs.HEADER_CONN_PARAMS, JSON.stringify(params));
|
|
3185
3188
|
}
|
|
3186
3189
|
const proxyRequest = new Request(url, {
|
|
3187
|
-
...
|
|
3190
|
+
...mergedInit,
|
|
3188
3191
|
headers: proxyRequestHeaders
|
|
3189
3192
|
});
|
|
3190
3193
|
return driver.sendRequest(actorId, proxyRequest);
|
|
3191
3194
|
} catch (err) {
|
|
3192
|
-
const { group, code, message, metadata } =
|
|
3195
|
+
const { group, code, message, metadata } = _chunkWADSS5X4cjs.deconstructError.call(void 0,
|
|
3193
3196
|
err,
|
|
3194
|
-
|
|
3197
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ),
|
|
3195
3198
|
{},
|
|
3196
3199
|
true
|
|
3197
3200
|
);
|
|
@@ -3201,7 +3204,7 @@ async function rawHttpFetch(driver, actorQuery, params, input, init) {
|
|
|
3201
3204
|
async function rawWebSocket(driver, actorQuery, params, path3, protocols) {
|
|
3202
3205
|
const encoding = "bare";
|
|
3203
3206
|
const { actorId } = await queryActor(void 0, actorQuery, driver);
|
|
3204
|
-
|
|
3207
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({ msg: "found actor for action", actorId });
|
|
3205
3208
|
_invariant2.default.call(void 0, actorId, "Missing actor ID");
|
|
3206
3209
|
let pathPortion = "";
|
|
3207
3210
|
let queryPortion = "";
|
|
@@ -3218,7 +3221,7 @@ async function rawWebSocket(driver, actorQuery, params, path3, protocols) {
|
|
|
3218
3221
|
}
|
|
3219
3222
|
}
|
|
3220
3223
|
const fullPath = `${PATH_RAW_WEBSOCKET_PREFIX}${pathPortion}${queryPortion}`;
|
|
3221
|
-
|
|
3224
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({
|
|
3222
3225
|
msg: "opening websocket",
|
|
3223
3226
|
actorId,
|
|
3224
3227
|
encoding,
|
|
@@ -3263,9 +3266,9 @@ var ActorHandleRaw = class {
|
|
|
3263
3266
|
this.#actorQuery,
|
|
3264
3267
|
this.#driver
|
|
3265
3268
|
);
|
|
3266
|
-
|
|
3269
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({ msg: "found actor for action", actorId });
|
|
3267
3270
|
_invariant2.default.call(void 0, actorId, "Missing actor ID");
|
|
3268
|
-
|
|
3271
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({
|
|
3269
3272
|
msg: "handling action",
|
|
3270
3273
|
name: opts.name,
|
|
3271
3274
|
encoding: this.#encoding
|
|
@@ -3274,23 +3277,23 @@ var ActorHandleRaw = class {
|
|
|
3274
3277
|
url: `http://actor/action/${encodeURIComponent(opts.name)}`,
|
|
3275
3278
|
method: "POST",
|
|
3276
3279
|
headers: {
|
|
3277
|
-
[
|
|
3278
|
-
...this.#params !== void 0 ? { [
|
|
3280
|
+
[_chunkIRMBWX36cjs.HEADER_ENCODING]: this.#encoding,
|
|
3281
|
+
...this.#params !== void 0 ? { [_chunkIRMBWX36cjs.HEADER_CONN_PARAMS]: JSON.stringify(this.#params) } : {}
|
|
3279
3282
|
},
|
|
3280
3283
|
body: {
|
|
3281
|
-
args:
|
|
3284
|
+
args: _chunkWADSS5X4cjs.bufferToArrayBuffer.call(void 0, cbor5.encode(opts.args))
|
|
3282
3285
|
},
|
|
3283
3286
|
encoding: this.#encoding,
|
|
3284
3287
|
customFetch: this.#driver.sendRequest.bind(this.#driver, actorId),
|
|
3285
3288
|
signal: opts == null ? void 0 : opts.signal,
|
|
3286
|
-
requestVersionedDataHandler:
|
|
3287
|
-
responseVersionedDataHandler:
|
|
3289
|
+
requestVersionedDataHandler: _chunkIRMBWX36cjs.HTTP_ACTION_REQUEST_VERSIONED,
|
|
3290
|
+
responseVersionedDataHandler: _chunkIRMBWX36cjs.HTTP_ACTION_RESPONSE_VERSIONED
|
|
3288
3291
|
});
|
|
3289
3292
|
return cbor5.decode(new Uint8Array(responseData.output));
|
|
3290
3293
|
} catch (err) {
|
|
3291
|
-
const { group, code, message, metadata } =
|
|
3294
|
+
const { group, code, message, metadata } = _chunkWADSS5X4cjs.deconstructError.call(void 0,
|
|
3292
3295
|
err,
|
|
3293
|
-
|
|
3296
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ),
|
|
3294
3297
|
{},
|
|
3295
3298
|
true
|
|
3296
3299
|
);
|
|
@@ -3304,7 +3307,7 @@ var ActorHandleRaw = class {
|
|
|
3304
3307
|
* @returns {ActorConn<AD>} A connection to the actor.
|
|
3305
3308
|
*/
|
|
3306
3309
|
connect() {
|
|
3307
|
-
|
|
3310
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({
|
|
3308
3311
|
msg: "establishing connection from handle",
|
|
3309
3312
|
query: this.#actorQuery
|
|
3310
3313
|
});
|
|
@@ -3364,7 +3367,7 @@ var ActorHandleRaw = class {
|
|
|
3364
3367
|
} else if ("getOrCreateForKey" in this.#actorQuery) {
|
|
3365
3368
|
name = this.#actorQuery.getOrCreateForKey.name;
|
|
3366
3369
|
} else {
|
|
3367
|
-
|
|
3370
|
+
_chunkIRMBWX36cjs.assertUnreachable.call(void 0, this.#actorQuery);
|
|
3368
3371
|
}
|
|
3369
3372
|
const { actorId } = await queryActor(
|
|
3370
3373
|
void 0,
|
|
@@ -3378,7 +3381,7 @@ var ActorHandleRaw = class {
|
|
|
3378
3381
|
} else if ("create" in this.#actorQuery) {
|
|
3379
3382
|
_invariant2.default.call(void 0, false, "actorQuery cannot be create");
|
|
3380
3383
|
} else {
|
|
3381
|
-
|
|
3384
|
+
_chunkIRMBWX36cjs.assertUnreachable.call(void 0, this.#actorQuery);
|
|
3382
3385
|
}
|
|
3383
3386
|
}
|
|
3384
3387
|
};
|
|
@@ -3415,7 +3418,7 @@ var ClientRaw = (_class4 = class {
|
|
|
3415
3418
|
* @returns {ActorHandle<AD>} - A handle to the actor.
|
|
3416
3419
|
*/
|
|
3417
3420
|
getForId(name, actorId, opts) {
|
|
3418
|
-
|
|
3421
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({
|
|
3419
3422
|
msg: "get handle to actor with id",
|
|
3420
3423
|
name,
|
|
3421
3424
|
actorId,
|
|
@@ -3441,7 +3444,7 @@ var ClientRaw = (_class4 = class {
|
|
|
3441
3444
|
*/
|
|
3442
3445
|
get(name, key, opts) {
|
|
3443
3446
|
const keyArray = typeof key === "string" ? [key] : key || [];
|
|
3444
|
-
|
|
3447
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({
|
|
3445
3448
|
msg: "get handle to actor",
|
|
3446
3449
|
name,
|
|
3447
3450
|
key: keyArray,
|
|
@@ -3467,7 +3470,7 @@ var ClientRaw = (_class4 = class {
|
|
|
3467
3470
|
*/
|
|
3468
3471
|
getOrCreate(name, key, opts) {
|
|
3469
3472
|
const keyArray = typeof key === "string" ? [key] : key || [];
|
|
3470
|
-
|
|
3473
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({
|
|
3471
3474
|
msg: "get or create handle to actor",
|
|
3472
3475
|
name,
|
|
3473
3476
|
key: keyArray,
|
|
@@ -3505,7 +3508,7 @@ var ClientRaw = (_class4 = class {
|
|
|
3505
3508
|
key: keyArray
|
|
3506
3509
|
}
|
|
3507
3510
|
};
|
|
3508
|
-
|
|
3511
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({
|
|
3509
3512
|
msg: "create actor handle",
|
|
3510
3513
|
name,
|
|
3511
3514
|
key: keyArray,
|
|
@@ -3513,7 +3516,7 @@ var ClientRaw = (_class4 = class {
|
|
|
3513
3516
|
create: createQuery.create
|
|
3514
3517
|
});
|
|
3515
3518
|
const { actorId } = await queryActor(void 0, createQuery, this.#driver);
|
|
3516
|
-
|
|
3519
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({
|
|
3517
3520
|
msg: "created actor with ID",
|
|
3518
3521
|
name,
|
|
3519
3522
|
key: keyArray,
|
|
@@ -3550,11 +3553,11 @@ var ClientRaw = (_class4 = class {
|
|
|
3550
3553
|
*/
|
|
3551
3554
|
async dispose() {
|
|
3552
3555
|
if (this.#disposed) {
|
|
3553
|
-
|
|
3556
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).warn({ msg: "client already disconnected" });
|
|
3554
3557
|
return;
|
|
3555
3558
|
}
|
|
3556
3559
|
this.#disposed = true;
|
|
3557
|
-
|
|
3560
|
+
_chunkPHSQJ6QIcjs.logger.call(void 0, ).debug({ msg: "disposing client" });
|
|
3558
3561
|
const disposePromises = [];
|
|
3559
3562
|
for (const conn of this[ACTOR_CONNS_SYMBOL].values()) {
|
|
3560
3563
|
disposePromises.push(conn.dispose());
|
|
@@ -3663,7 +3666,7 @@ function createActorProxy(handle) {
|
|
|
3663
3666
|
// src/common/inline-websocket-adapter2.ts
|
|
3664
3667
|
var _ws = require('hono/ws');
|
|
3665
3668
|
function logger4() {
|
|
3666
|
-
return
|
|
3669
|
+
return _chunk5YTI25C3cjs.getLogger.call(void 0, "fake-event-source2");
|
|
3667
3670
|
}
|
|
3668
3671
|
var InlineWebSocketAdapter2 = (_class5 = class {
|
|
3669
3672
|
// WebSocket readyState values
|
|
@@ -4003,7 +4006,7 @@ var InlineWebSocketAdapter2 = (_class5 = class {
|
|
|
4003
4006
|
|
|
4004
4007
|
// src/remote-manager-driver/log.ts
|
|
4005
4008
|
function logger5() {
|
|
4006
|
-
return
|
|
4009
|
+
return _chunk5YTI25C3cjs.getLogger.call(void 0, "remote-manager-driver");
|
|
4007
4010
|
}
|
|
4008
4011
|
|
|
4009
4012
|
// src/remote-manager-driver/api-utils.ts
|
|
@@ -4020,7 +4023,9 @@ function getEndpoint(config2) {
|
|
|
4020
4023
|
}
|
|
4021
4024
|
async function apiCall(config2, method, path3, body) {
|
|
4022
4025
|
const endpoint = getEndpoint(config2);
|
|
4023
|
-
const url =
|
|
4026
|
+
const url = _chunkWADSS5X4cjs.combineUrlPath.call(void 0, endpoint, path3, {
|
|
4027
|
+
namespace: config2.namespace
|
|
4028
|
+
});
|
|
4024
4029
|
logger5().debug({ msg: "making api call", method, url });
|
|
4025
4030
|
return await sendHttpRequest({
|
|
4026
4031
|
method,
|
|
@@ -4038,7 +4043,7 @@ async function apiCall(config2, method, path3, body) {
|
|
|
4038
4043
|
async function sendHttpRequestToActor(runConfig, actorId, actorRequest) {
|
|
4039
4044
|
const url = new URL(actorRequest.url);
|
|
4040
4045
|
const endpoint = getEndpoint(runConfig);
|
|
4041
|
-
const guardUrl =
|
|
4046
|
+
const guardUrl = _chunkWADSS5X4cjs.combineUrlPath.call(void 0, endpoint, url.pathname + url.search);
|
|
4042
4047
|
let bodyToSend = null;
|
|
4043
4048
|
const guardHeaders = buildGuardHeadersForHttp(actorRequest, actorId);
|
|
4044
4049
|
if (actorRequest.body && actorRequest.method !== "GET" && actorRequest.method !== "HEAD") {
|
|
@@ -4056,7 +4061,8 @@ async function sendHttpRequestToActor(runConfig, actorId, actorRequest) {
|
|
|
4056
4061
|
const guardRequest = new Request(guardUrl, {
|
|
4057
4062
|
method: actorRequest.method,
|
|
4058
4063
|
headers: guardHeaders,
|
|
4059
|
-
body: bodyToSend
|
|
4064
|
+
body: bodyToSend,
|
|
4065
|
+
signal: actorRequest.signal
|
|
4060
4066
|
});
|
|
4061
4067
|
return mutableResponse(await fetch(guardRequest));
|
|
4062
4068
|
}
|
|
@@ -4076,9 +4082,9 @@ function buildGuardHeadersForHttp(actorRequest, actorId) {
|
|
|
4076
4082
|
|
|
4077
4083
|
// src/remote-manager-driver/actor-websocket-client.ts
|
|
4078
4084
|
async function openWebSocketToActor(runConfig, path3, actorId, encoding, params) {
|
|
4079
|
-
const WebSocket2 = await
|
|
4085
|
+
const WebSocket2 = await _chunkPHSQJ6QIcjs.importWebSocket.call(void 0, );
|
|
4080
4086
|
const endpoint = getEndpoint(runConfig);
|
|
4081
|
-
const guardUrl =
|
|
4087
|
+
const guardUrl = _chunkWADSS5X4cjs.combineUrlPath.call(void 0, endpoint, path3);
|
|
4082
4088
|
logger5().debug({
|
|
4083
4089
|
msg: "opening websocket to actor via guard",
|
|
4084
4090
|
actorId,
|
|
@@ -4097,12 +4103,12 @@ function buildGuardHeadersForWebSocket(actorId, encoding, params, authData) {
|
|
|
4097
4103
|
headers["x-rivet-target"] = "actor";
|
|
4098
4104
|
headers["x-rivet-actor"] = actorId;
|
|
4099
4105
|
headers["x-rivet-port"] = "main";
|
|
4100
|
-
headers[
|
|
4106
|
+
headers[_chunkIRMBWX36cjs.HEADER_ENCODING] = encoding;
|
|
4101
4107
|
if (params) {
|
|
4102
|
-
headers[
|
|
4108
|
+
headers[_chunkIRMBWX36cjs.HEADER_CONN_PARAMS] = JSON.stringify(params);
|
|
4103
4109
|
}
|
|
4104
4110
|
if (authData) {
|
|
4105
|
-
headers[
|
|
4111
|
+
headers[_chunkIRMBWX36cjs.HEADER_AUTH_DATA] = JSON.stringify(authData);
|
|
4106
4112
|
}
|
|
4107
4113
|
return headers;
|
|
4108
4114
|
}
|
|
@@ -4149,7 +4155,7 @@ async function destroyActor(config2, actorId) {
|
|
|
4149
4155
|
|
|
4150
4156
|
// src/remote-manager-driver/ws-proxy.ts
|
|
4151
4157
|
async function createWebSocketProxy(c, targetUrl, headers) {
|
|
4152
|
-
const WebSocket2 = await
|
|
4158
|
+
const WebSocket2 = await _chunkPHSQJ6QIcjs.importWebSocket.call(void 0, );
|
|
4153
4159
|
for (const [k, v] of c.req.raw.headers.entries()) {
|
|
4154
4160
|
if (!k.startsWith("sec-") && k !== "connection" && k !== "upgrade") {
|
|
4155
4161
|
headers[k] = v;
|
|
@@ -4214,7 +4220,7 @@ async function createWebSocketProxy(c, targetUrl, headers) {
|
|
|
4214
4220
|
logger5().error({
|
|
4215
4221
|
msg: "target websocket error",
|
|
4216
4222
|
targetUrl,
|
|
4217
|
-
error:
|
|
4223
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error)
|
|
4218
4224
|
});
|
|
4219
4225
|
closeWebSocketIfOpen(clientWs, 1011, "Target WebSocket error");
|
|
4220
4226
|
});
|
|
@@ -4420,7 +4426,7 @@ var RemoteManagerDriver = class {
|
|
|
4420
4426
|
const upgradeWebSocket = (_b = (_a = this.#config).getUpgradeWebSocket) == null ? void 0 : _b.call(_a);
|
|
4421
4427
|
_invariant2.default.call(void 0, upgradeWebSocket, "missing getUpgradeWebSocket");
|
|
4422
4428
|
const endpoint = getEndpoint(this.#config);
|
|
4423
|
-
const guardUrl =
|
|
4429
|
+
const guardUrl = _chunkWADSS5X4cjs.combineUrlPath.call(void 0, endpoint, path3);
|
|
4424
4430
|
const wsGuardUrl = guardUrl.replace("http://", "ws://");
|
|
4425
4431
|
logger5().debug({
|
|
4426
4432
|
msg: "forwarding websocket to actor via guard",
|
|
@@ -4435,7 +4441,7 @@ var RemoteManagerDriver = class {
|
|
|
4435
4441
|
authData
|
|
4436
4442
|
);
|
|
4437
4443
|
const args = await createWebSocketProxy(c, wsGuardUrl, headers);
|
|
4438
|
-
return await upgradeWebSocket(() => args)(c,
|
|
4444
|
+
return await upgradeWebSocket(() => args)(c, _chunkWADSS5X4cjs.noopNext.call(void 0, ));
|
|
4439
4445
|
}
|
|
4440
4446
|
displayInformation() {
|
|
4441
4447
|
return { name: "Remote", properties: {} };
|
|
@@ -4455,7 +4461,7 @@ var KEYS = {
|
|
|
4455
4461
|
|
|
4456
4462
|
// src/drivers/engine/log.ts
|
|
4457
4463
|
function logger6() {
|
|
4458
|
-
return
|
|
4464
|
+
return _chunk5YTI25C3cjs.getLogger.call(void 0, "driver-engine");
|
|
4459
4465
|
}
|
|
4460
4466
|
|
|
4461
4467
|
// src/drivers/engine/actor-driver.ts
|
|
@@ -4524,7 +4530,7 @@ var EngineActorDriver = class {
|
|
|
4524
4530
|
websocket: this.#runnerWebSocket.bind(this),
|
|
4525
4531
|
onActorStart: this.#runnerOnActorStart.bind(this),
|
|
4526
4532
|
onActorStop: this.#runnerOnActorStop.bind(this),
|
|
4527
|
-
logger:
|
|
4533
|
+
logger: _chunk5YTI25C3cjs.getLogger.call(void 0, "engine-runner")
|
|
4528
4534
|
};
|
|
4529
4535
|
this.#runner = new (0, _enginerunner.Runner)(runnerConfig);
|
|
4530
4536
|
this.#runner.start();
|
|
@@ -4599,7 +4605,7 @@ var EngineActorDriver = class {
|
|
|
4599
4605
|
handler = {
|
|
4600
4606
|
genericConnGlobalState: new GenericConnGlobalState(),
|
|
4601
4607
|
actorStartPromise: Promise.withResolvers(),
|
|
4602
|
-
persistedData:
|
|
4608
|
+
persistedData: _chunkRM2SVURRcjs.serializeEmptyPersistData.call(void 0, input)
|
|
4603
4609
|
};
|
|
4604
4610
|
this.#actors.set(actorId, handler);
|
|
4605
4611
|
}
|
|
@@ -4651,15 +4657,15 @@ var EngineActorDriver = class {
|
|
|
4651
4657
|
const websocket = websocketRaw;
|
|
4652
4658
|
logger6().debug({ msg: "runner websocket", actorId, url: request.url });
|
|
4653
4659
|
const url = new URL(request.url);
|
|
4654
|
-
const encodingRaw = request.headers.get(
|
|
4655
|
-
const connParamsRaw = request.headers.get(
|
|
4656
|
-
const authDataRaw = request.headers.get(
|
|
4657
|
-
const encoding =
|
|
4660
|
+
const encodingRaw = request.headers.get(_chunkIRMBWX36cjs.HEADER_ENCODING);
|
|
4661
|
+
const connParamsRaw = request.headers.get(_chunkIRMBWX36cjs.HEADER_CONN_PARAMS);
|
|
4662
|
+
const authDataRaw = request.headers.get(_chunkIRMBWX36cjs.HEADER_AUTH_DATA);
|
|
4663
|
+
const encoding = _chunkIRMBWX36cjs.EncodingSchema.parse(encodingRaw);
|
|
4658
4664
|
const connParams = connParamsRaw ? JSON.parse(connParamsRaw) : void 0;
|
|
4659
4665
|
const authData = authDataRaw ? JSON.parse(authDataRaw) : void 0;
|
|
4660
4666
|
let wsHandlerPromise;
|
|
4661
4667
|
if (url.pathname === PATH_CONNECT_WEBSOCKET) {
|
|
4662
|
-
wsHandlerPromise =
|
|
4668
|
+
wsHandlerPromise = _chunkIRMBWX36cjs.handleWebSocketConnect.call(void 0,
|
|
4663
4669
|
request,
|
|
4664
4670
|
this.#runConfig,
|
|
4665
4671
|
this,
|
|
@@ -4669,7 +4675,7 @@ var EngineActorDriver = class {
|
|
|
4669
4675
|
authData
|
|
4670
4676
|
);
|
|
4671
4677
|
} else if (url.pathname.startsWith(PATH_RAW_WEBSOCKET_PREFIX)) {
|
|
4672
|
-
wsHandlerPromise =
|
|
4678
|
+
wsHandlerPromise = _chunkIRMBWX36cjs.handleRawWebSocketHandler.call(void 0,
|
|
4673
4679
|
request,
|
|
4674
4680
|
url.pathname + url.search,
|
|
4675
4681
|
this,
|
|
@@ -4730,14 +4736,14 @@ var EngineActorDriver = class {
|
|
|
4730
4736
|
var ConfigSchema = _zod.z.object({
|
|
4731
4737
|
app: _zod.z.custom().optional(),
|
|
4732
4738
|
endpoint: _zod.z.string().default(
|
|
4733
|
-
() => _nullishCoalesce(
|
|
4739
|
+
() => _nullishCoalesce(_chunkWADSS5X4cjs.getEnvUniversal.call(void 0, "RIVET_ENGINE"), () => ( "http://localhost:6420"))
|
|
4734
4740
|
),
|
|
4735
4741
|
pegboardEndpoint: _zod.z.string().optional(),
|
|
4736
|
-
namespace: _zod.z.string().default(() => _nullishCoalesce(
|
|
4737
|
-
runnerName: _zod.z.string().default(() => _nullishCoalesce(
|
|
4742
|
+
namespace: _zod.z.string().default(() => _nullishCoalesce(_chunkWADSS5X4cjs.getEnvUniversal.call(void 0, "RIVET_NAMESPACE"), () => ( "default"))),
|
|
4743
|
+
runnerName: _zod.z.string().default(() => _nullishCoalesce(_chunkWADSS5X4cjs.getEnvUniversal.call(void 0, "RIVET_RUNNER"), () => ( "rivetkit"))),
|
|
4738
4744
|
// TODO: Automatically attempt to determine key by common env vars (e.g. k8s pod name)
|
|
4739
4745
|
runnerKey: _zod.z.string().default(
|
|
4740
|
-
() => _nullishCoalesce(
|
|
4746
|
+
() => _nullishCoalesce(_chunkWADSS5X4cjs.getEnvUniversal.call(void 0, "RIVET_RUNNER_KEY"), () => ( crypto.randomUUID()))
|
|
4741
4747
|
),
|
|
4742
4748
|
totalSlots: _zod.z.number().default(1e5)
|
|
4743
4749
|
}).default({});
|
|
@@ -4806,7 +4812,7 @@ var FileSystemActorDriver = class {
|
|
|
4806
4812
|
const state = await this.#state.loadActorStateOrError(actorId);
|
|
4807
4813
|
await this.#state.writeActor(actorId, {
|
|
4808
4814
|
...state,
|
|
4809
|
-
persistedData:
|
|
4815
|
+
persistedData: _chunkWADSS5X4cjs.bufferToArrayBuffer.call(void 0, data)
|
|
4810
4816
|
});
|
|
4811
4817
|
}
|
|
4812
4818
|
async setAlarm(actor2, timestamp) {
|
|
@@ -4909,13 +4915,13 @@ function decodeActorAlarm(bytes) {
|
|
|
4909
4915
|
// src/schemas/file-system-driver/versioned.ts
|
|
4910
4916
|
var CURRENT_VERSION = 1;
|
|
4911
4917
|
var migrations = /* @__PURE__ */ new Map();
|
|
4912
|
-
var ACTOR_STATE_VERSIONED =
|
|
4918
|
+
var ACTOR_STATE_VERSIONED = _chunkIRMBWX36cjs.createVersionedDataHandler.call(void 0, {
|
|
4913
4919
|
currentVersion: CURRENT_VERSION,
|
|
4914
4920
|
migrations,
|
|
4915
4921
|
serializeVersion: (data) => encodeActorState(data),
|
|
4916
4922
|
deserializeVersion: (bytes) => decodeActorState(bytes)
|
|
4917
4923
|
});
|
|
4918
|
-
var ACTOR_ALARM_VERSIONED =
|
|
4924
|
+
var ACTOR_ALARM_VERSIONED = _chunkIRMBWX36cjs.createVersionedDataHandler.call(void 0, {
|
|
4919
4925
|
currentVersion: CURRENT_VERSION,
|
|
4920
4926
|
migrations,
|
|
4921
4927
|
serializeVersion: (data) => encodeActorAlarm(data),
|
|
@@ -4924,7 +4930,7 @@ var ACTOR_ALARM_VERSIONED = _chunkGICQ3YCUcjs.createVersionedDataHandler.call(vo
|
|
|
4924
4930
|
|
|
4925
4931
|
// src/drivers/file-system/log.ts
|
|
4926
4932
|
function logger7() {
|
|
4927
|
-
return
|
|
4933
|
+
return _chunk5YTI25C3cjs.getLogger.call(void 0, "driver-fs");
|
|
4928
4934
|
}
|
|
4929
4935
|
|
|
4930
4936
|
// src/drivers/file-system/utils.ts
|
|
@@ -5087,7 +5093,7 @@ var FileSystemGlobalState = class {
|
|
|
5087
5093
|
*/
|
|
5088
5094
|
async createActor(actorId, name, key, input) {
|
|
5089
5095
|
if (this.#actors.has(actorId)) {
|
|
5090
|
-
throw new (0,
|
|
5096
|
+
throw new (0, _chunk5QGQK44Lcjs.ActorAlreadyExists)(name, key);
|
|
5091
5097
|
}
|
|
5092
5098
|
const entry = this.#upsertEntry(actorId);
|
|
5093
5099
|
entry.state = {
|
|
@@ -5095,7 +5101,7 @@ var FileSystemGlobalState = class {
|
|
|
5095
5101
|
name,
|
|
5096
5102
|
key,
|
|
5097
5103
|
createdAt: BigInt(Date.now()),
|
|
5098
|
-
persistedData:
|
|
5104
|
+
persistedData: _chunkWADSS5X4cjs.bufferToArrayBuffer.call(void 0, _chunkRM2SVURRcjs.serializeEmptyPersistData.call(void 0, input))
|
|
5099
5105
|
};
|
|
5100
5106
|
await this.writeActor(actorId, entry.state);
|
|
5101
5107
|
return entry;
|
|
@@ -5143,7 +5149,7 @@ var FileSystemGlobalState = class {
|
|
|
5143
5149
|
name,
|
|
5144
5150
|
key,
|
|
5145
5151
|
createdAt: BigInt(Date.now()),
|
|
5146
|
-
persistedData:
|
|
5152
|
+
persistedData: _chunkWADSS5X4cjs.bufferToArrayBuffer.call(void 0, _chunkRM2SVURRcjs.serializeEmptyPersistData.call(void 0, input))
|
|
5147
5153
|
};
|
|
5148
5154
|
await this.writeActor(actorId, entry.state);
|
|
5149
5155
|
}
|
|
@@ -5255,7 +5261,9 @@ var FileSystemGlobalState = class {
|
|
|
5255
5261
|
var _a;
|
|
5256
5262
|
const entry = await this.loadActor(actorId);
|
|
5257
5263
|
if (!entry.state) {
|
|
5258
|
-
throw new Error(
|
|
5264
|
+
throw new Error(
|
|
5265
|
+
`Actor does not exist and cannot be started: "${actorId}"`
|
|
5266
|
+
);
|
|
5259
5267
|
}
|
|
5260
5268
|
if (entry.startPromise) {
|
|
5261
5269
|
await entry.startPromise.promise;
|
|
@@ -5331,7 +5339,7 @@ var FileSystemGlobalState = class {
|
|
|
5331
5339
|
logger7().error({
|
|
5332
5340
|
msg: "failed to read alarm file",
|
|
5333
5341
|
file,
|
|
5334
|
-
error:
|
|
5342
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, err)
|
|
5335
5343
|
});
|
|
5336
5344
|
}
|
|
5337
5345
|
}
|
|
@@ -5358,7 +5366,7 @@ var FileSystemGlobalState = class {
|
|
|
5358
5366
|
(_a = entry.alarmTimeout) == null ? void 0 : _a.abort();
|
|
5359
5367
|
entry.alarmTimestamp = timestamp;
|
|
5360
5368
|
const delay = Math.max(0, timestamp - Date.now());
|
|
5361
|
-
entry.alarmTimeout =
|
|
5369
|
+
entry.alarmTimeout = _chunkWADSS5X4cjs.setLongTimeout.call(void 0, async () => {
|
|
5362
5370
|
entry.alarmTimestamp = void 0;
|
|
5363
5371
|
if (this.#persist) {
|
|
5364
5372
|
try {
|
|
@@ -5368,7 +5376,7 @@ var FileSystemGlobalState = class {
|
|
|
5368
5376
|
logger7().debug({
|
|
5369
5377
|
msg: "failed to remove alarm file",
|
|
5370
5378
|
actorId,
|
|
5371
|
-
error:
|
|
5379
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, err)
|
|
5372
5380
|
});
|
|
5373
5381
|
}
|
|
5374
5382
|
}
|
|
@@ -5394,7 +5402,7 @@ var FileSystemGlobalState = class {
|
|
|
5394
5402
|
logger7().error({
|
|
5395
5403
|
msg: "failed to handle alarm",
|
|
5396
5404
|
actorId,
|
|
5397
|
-
error:
|
|
5405
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, err)
|
|
5398
5406
|
});
|
|
5399
5407
|
}
|
|
5400
5408
|
}, delay);
|
|
@@ -5404,7 +5412,7 @@ var FileSystemGlobalState = class {
|
|
|
5404
5412
|
if (fsSync2.existsSync(tokenPath)) {
|
|
5405
5413
|
return fsSync2.readFileSync(tokenPath, "utf-8");
|
|
5406
5414
|
}
|
|
5407
|
-
const newToken =
|
|
5415
|
+
const newToken = _chunkIRMBWX36cjs.generateRandomString.call(void 0, );
|
|
5408
5416
|
fsSync2.writeFileSync(tokenPath, newToken);
|
|
5409
5417
|
return newToken;
|
|
5410
5418
|
}
|
|
@@ -5469,7 +5477,7 @@ function createManagerInspectorRouter() {
|
|
|
5469
5477
|
inspectorLogger().error({ msg: "Failed to fetch actors", error });
|
|
5470
5478
|
return c.json("Failed to fetch actors", 500);
|
|
5471
5479
|
}
|
|
5472
|
-
}).post("/actors", _standardvalidator.sValidator.call(void 0, "json",
|
|
5480
|
+
}).post("/actors", _standardvalidator.sValidator.call(void 0, "json", _chunkLZIBTLEYcjs.CreateActorSchema), async (c) => {
|
|
5473
5481
|
const actor2 = await c.var.inspector.accessors.createActor(
|
|
5474
5482
|
c.req.valid("json")
|
|
5475
5483
|
);
|
|
@@ -5588,8 +5596,10 @@ var FileSystemManagerDriver = class {
|
|
|
5588
5596
|
});
|
|
5589
5597
|
}
|
|
5590
5598
|
async openWebSocket(path3, actorId, encoding, params) {
|
|
5591
|
-
|
|
5592
|
-
|
|
5599
|
+
const pathOnly = path3.split("?")[0];
|
|
5600
|
+
const normalizedPath = pathOnly.startsWith("/") ? pathOnly : `/${pathOnly}`;
|
|
5601
|
+
if (normalizedPath === PATH_CONNECT_WEBSOCKET) {
|
|
5602
|
+
const wsHandler = await _chunkIRMBWX36cjs.handleWebSocketConnect.call(void 0,
|
|
5593
5603
|
void 0,
|
|
5594
5604
|
this.#runConfig,
|
|
5595
5605
|
this.#actorDriver,
|
|
@@ -5599,11 +5609,10 @@ var FileSystemManagerDriver = class {
|
|
|
5599
5609
|
void 0
|
|
5600
5610
|
);
|
|
5601
5611
|
return new InlineWebSocketAdapter2(wsHandler);
|
|
5602
|
-
} else if (
|
|
5603
|
-
const
|
|
5604
|
-
const wsHandler = await _chunkGICQ3YCUcjs.handleRawWebSocketHandler.call(void 0,
|
|
5612
|
+
} else if (normalizedPath.startsWith(PATH_RAW_WEBSOCKET_PREFIX) || normalizedPath === "/raw/websocket") {
|
|
5613
|
+
const wsHandler = await _chunkIRMBWX36cjs.handleRawWebSocketHandler.call(void 0,
|
|
5605
5614
|
void 0,
|
|
5606
|
-
|
|
5615
|
+
path3,
|
|
5607
5616
|
this.#actorDriver,
|
|
5608
5617
|
actorId,
|
|
5609
5618
|
void 0
|
|
@@ -5618,31 +5627,32 @@ var FileSystemManagerDriver = class {
|
|
|
5618
5627
|
actorId
|
|
5619
5628
|
});
|
|
5620
5629
|
}
|
|
5621
|
-
async proxyWebSocket(c, path3, actorId, encoding, connParams
|
|
5630
|
+
async proxyWebSocket(c, path3, actorId, encoding, connParams) {
|
|
5622
5631
|
var _a, _b;
|
|
5623
5632
|
const upgradeWebSocket = (_b = (_a = this.#runConfig).getUpgradeWebSocket) == null ? void 0 : _b.call(_a);
|
|
5624
5633
|
_invariant2.default.call(void 0, upgradeWebSocket, "missing getUpgradeWebSocket");
|
|
5625
|
-
|
|
5626
|
-
|
|
5634
|
+
const pathOnly = path3.split("?")[0];
|
|
5635
|
+
const normalizedPath = pathOnly.startsWith("/") ? pathOnly : `/${pathOnly}`;
|
|
5636
|
+
if (normalizedPath === PATH_CONNECT_WEBSOCKET) {
|
|
5637
|
+
const wsHandler = await _chunkIRMBWX36cjs.handleWebSocketConnect.call(void 0,
|
|
5627
5638
|
c.req.raw,
|
|
5628
5639
|
this.#runConfig,
|
|
5629
5640
|
this.#actorDriver,
|
|
5630
5641
|
actorId,
|
|
5631
5642
|
encoding,
|
|
5632
5643
|
connParams,
|
|
5633
|
-
|
|
5644
|
+
void 0
|
|
5634
5645
|
);
|
|
5635
|
-
return upgradeWebSocket(() => wsHandler)(c,
|
|
5636
|
-
} else if (
|
|
5637
|
-
const
|
|
5638
|
-
const wsHandler = await _chunkGICQ3YCUcjs.handleRawWebSocketHandler.call(void 0,
|
|
5646
|
+
return upgradeWebSocket(() => wsHandler)(c, _chunkWADSS5X4cjs.noopNext.call(void 0, ));
|
|
5647
|
+
} else if (normalizedPath.startsWith(PATH_RAW_WEBSOCKET_PREFIX) || normalizedPath === "/raw/websocket") {
|
|
5648
|
+
const wsHandler = await _chunkIRMBWX36cjs.handleRawWebSocketHandler.call(void 0,
|
|
5639
5649
|
c.req.raw,
|
|
5640
|
-
|
|
5650
|
+
path3,
|
|
5641
5651
|
this.#actorDriver,
|
|
5642
5652
|
actorId,
|
|
5643
|
-
|
|
5653
|
+
void 0
|
|
5644
5654
|
);
|
|
5645
|
-
return upgradeWebSocket(() => wsHandler)(c,
|
|
5655
|
+
return upgradeWebSocket(() => wsHandler)(c, _chunkWADSS5X4cjs.noopNext.call(void 0, ));
|
|
5646
5656
|
} else {
|
|
5647
5657
|
throw new Error(`Unreachable path: ${path3}`);
|
|
5648
5658
|
}
|
|
@@ -5753,9 +5763,9 @@ function createMemoryDriver() {
|
|
|
5753
5763
|
|
|
5754
5764
|
// src/drivers/default.ts
|
|
5755
5765
|
function chooseDefaultDriver(runConfig) {
|
|
5756
|
-
const engineEndpoint = _nullishCoalesce(runConfig.endpoint, () => (
|
|
5766
|
+
const engineEndpoint = _nullishCoalesce(runConfig.endpoint, () => ( _chunkWADSS5X4cjs.getEnvUniversal.call(void 0, "RIVET_ENGINE")));
|
|
5757
5767
|
if (engineEndpoint && runConfig.driver) {
|
|
5758
|
-
throw new (0,
|
|
5768
|
+
throw new (0, _chunk5QGQK44Lcjs.UserError)(
|
|
5759
5769
|
"Cannot specify both 'engine' and 'driver' in configuration"
|
|
5760
5770
|
);
|
|
5761
5771
|
}
|
|
@@ -5763,13 +5773,13 @@ function chooseDefaultDriver(runConfig) {
|
|
|
5763
5773
|
return runConfig.driver;
|
|
5764
5774
|
}
|
|
5765
5775
|
if (engineEndpoint) {
|
|
5766
|
-
|
|
5776
|
+
_chunkIRMBWX36cjs.loggerWithoutContext.call(void 0, ).debug({
|
|
5767
5777
|
msg: "using rivet engine driver",
|
|
5768
5778
|
endpoint: engineEndpoint
|
|
5769
5779
|
});
|
|
5770
5780
|
return createEngineDriver({ endpoint: engineEndpoint });
|
|
5771
5781
|
}
|
|
5772
|
-
|
|
5782
|
+
_chunkIRMBWX36cjs.loggerWithoutContext.call(void 0, ).debug({ msg: "using default file system driver" });
|
|
5773
5783
|
return createFileSystemOrMemoryDriver(true);
|
|
5774
5784
|
}
|
|
5775
5785
|
|
|
@@ -5781,6 +5791,7 @@ var _zodopenapi = require('@hono/zod-openapi');
|
|
|
5781
5791
|
|
|
5782
5792
|
|
|
5783
5793
|
|
|
5794
|
+
|
|
5784
5795
|
// src/manager-api/routes/actors-create.ts
|
|
5785
5796
|
|
|
5786
5797
|
|
|
@@ -5862,11 +5873,11 @@ function buildOpenApiResponses(schema, validateBody) {
|
|
|
5862
5873
|
};
|
|
5863
5874
|
}
|
|
5864
5875
|
function createManagerRouter(registryConfig, runConfig, managerDriver, validateBody) {
|
|
5865
|
-
var _a;
|
|
5876
|
+
var _a, _b;
|
|
5866
5877
|
const router = new (0, _zodopenapi.OpenAPIHono)({ strict: false }).basePath(
|
|
5867
5878
|
runConfig.basePath
|
|
5868
5879
|
);
|
|
5869
|
-
router.use("*", loggerMiddleware(
|
|
5880
|
+
router.use("*", loggerMiddleware(_chunkIRMBWX36cjs.logger.call(void 0, )));
|
|
5870
5881
|
const cors2 = runConfig.cors ? _cors.cors.call(void 0, runConfig.cors) : _factory.createMiddleware.call(void 0, (_c, next) => next());
|
|
5871
5882
|
router.use("*", cors2, async (c, next) => {
|
|
5872
5883
|
var _a2;
|
|
@@ -5874,9 +5885,9 @@ function createManagerRouter(registryConfig, runConfig, managerDriver, validateB
|
|
|
5874
5885
|
const actorId = c.req.header("x-rivet-actor");
|
|
5875
5886
|
if (target === "actor") {
|
|
5876
5887
|
if (!actorId) {
|
|
5877
|
-
throw new (0,
|
|
5888
|
+
throw new (0, _chunk5QGQK44Lcjs.MissingActorHeader)();
|
|
5878
5889
|
}
|
|
5879
|
-
|
|
5890
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
5880
5891
|
msg: "proxying request to actor",
|
|
5881
5892
|
actorId,
|
|
5882
5893
|
path: c.req.path,
|
|
@@ -5885,7 +5896,7 @@ function createManagerRouter(registryConfig, runConfig, managerDriver, validateB
|
|
|
5885
5896
|
if (c.req.header("upgrade") === "websocket") {
|
|
5886
5897
|
const upgradeWebSocket = (_a2 = runConfig.getUpgradeWebSocket) == null ? void 0 : _a2.call(runConfig);
|
|
5887
5898
|
if (!upgradeWebSocket) {
|
|
5888
|
-
throw new (0,
|
|
5899
|
+
throw new (0, _chunk5QGQK44Lcjs.WebSocketsNotEnabled)();
|
|
5889
5900
|
}
|
|
5890
5901
|
const encoding = c.req.header("X-RivetKit-Encoding") || c.req.header("x-rivet-encoding") || "json";
|
|
5891
5902
|
const connParams = c.req.header("X-RivetKit-Conn-Params") || c.req.header("x-rivet-conn-params");
|
|
@@ -5907,9 +5918,10 @@ function createManagerRouter(registryConfig, runConfig, managerDriver, validateB
|
|
|
5907
5918
|
const url = new URL(c.req.url);
|
|
5908
5919
|
const proxyUrl = new URL(`http://actor${url.pathname}${url.search}`);
|
|
5909
5920
|
const proxyRequest = new Request(proxyUrl, {
|
|
5910
|
-
method: c.req.method,
|
|
5921
|
+
method: c.req.raw.method,
|
|
5911
5922
|
headers: proxyHeaders,
|
|
5912
|
-
body: c.req.raw.body
|
|
5923
|
+
body: c.req.raw.body,
|
|
5924
|
+
signal: c.req.raw.signal
|
|
5913
5925
|
});
|
|
5914
5926
|
return await managerDriver.proxyRequest(c, proxyRequest, actorId);
|
|
5915
5927
|
}
|
|
@@ -6021,16 +6033,16 @@ function createManagerRouter(registryConfig, runConfig, managerDriver, validateB
|
|
|
6021
6033
|
actorId: actor_id
|
|
6022
6034
|
});
|
|
6023
6035
|
if (!actorOutput) {
|
|
6024
|
-
throw new (0,
|
|
6036
|
+
throw new (0, _chunk5QGQK44Lcjs.ActorNotFound)(actor_id);
|
|
6025
6037
|
}
|
|
6026
6038
|
const actor2 = {
|
|
6027
6039
|
actor_id: actorOutput.actorId,
|
|
6028
6040
|
name: actorOutput.name,
|
|
6029
6041
|
key: actorOutput.key,
|
|
6030
|
-
namespace_id: "",
|
|
6031
|
-
//
|
|
6032
|
-
runner_name_selector: "",
|
|
6033
|
-
//
|
|
6042
|
+
namespace_id: "default",
|
|
6043
|
+
// Assert default namespace
|
|
6044
|
+
runner_name_selector: "rivetkit",
|
|
6045
|
+
// Assert rivetkit runner
|
|
6034
6046
|
create_ts: Date.now(),
|
|
6035
6047
|
// Not available from driver
|
|
6036
6048
|
connectable_ts: null,
|
|
@@ -6078,9 +6090,10 @@ function createManagerRouter(registryConfig, runConfig, managerDriver, validateB
|
|
|
6078
6090
|
actor_id: actorOutput.actorId,
|
|
6079
6091
|
name: actorOutput.name,
|
|
6080
6092
|
key: actorOutput.key,
|
|
6081
|
-
namespace_id: "",
|
|
6082
|
-
//
|
|
6083
|
-
runner_name_selector:
|
|
6093
|
+
namespace_id: "default",
|
|
6094
|
+
// Assert default namespace
|
|
6095
|
+
runner_name_selector: "rivetkit",
|
|
6096
|
+
// Assert rivetkit runner
|
|
6084
6097
|
create_ts: Date.now(),
|
|
6085
6098
|
connectable_ts: null,
|
|
6086
6099
|
destroy_ts: null,
|
|
@@ -6090,9 +6103,106 @@ function createManagerRouter(registryConfig, runConfig, managerDriver, validateB
|
|
|
6090
6103
|
return c.json({ actor: actor2 });
|
|
6091
6104
|
});
|
|
6092
6105
|
}
|
|
6093
|
-
if (
|
|
6106
|
+
if (registryConfig.test.enabled) {
|
|
6107
|
+
router.post(".test/inline-driver/call", async (c) => {
|
|
6108
|
+
const buffer = await c.req.arrayBuffer();
|
|
6109
|
+
const { encoding, transport, method, args } = cbor8.decode(new Uint8Array(buffer));
|
|
6110
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6111
|
+
msg: "received inline request",
|
|
6112
|
+
encoding,
|
|
6113
|
+
transport,
|
|
6114
|
+
method,
|
|
6115
|
+
args
|
|
6116
|
+
});
|
|
6117
|
+
let response;
|
|
6118
|
+
try {
|
|
6119
|
+
const output = await managerDriver[method](...args);
|
|
6120
|
+
response = { ok: output };
|
|
6121
|
+
} catch (rawErr) {
|
|
6122
|
+
const err = _chunkWADSS5X4cjs.deconstructError.call(void 0, rawErr, _chunkIRMBWX36cjs.logger.call(void 0, ), {}, true);
|
|
6123
|
+
response = { err };
|
|
6124
|
+
}
|
|
6125
|
+
return c.body(cbor8.encode(response));
|
|
6126
|
+
});
|
|
6127
|
+
router.get(".test/inline-driver/connect-websocket/*", async (c) => {
|
|
6128
|
+
var _a2;
|
|
6129
|
+
const upgradeWebSocket = (_a2 = runConfig.getUpgradeWebSocket) == null ? void 0 : _a2.call(runConfig);
|
|
6130
|
+
_invariant2.default.call(void 0, upgradeWebSocket, "websockets not supported on this platform");
|
|
6131
|
+
return upgradeWebSocket(async (c2) => {
|
|
6132
|
+
const {
|
|
6133
|
+
path: path3,
|
|
6134
|
+
actorId,
|
|
6135
|
+
params: paramsRaw,
|
|
6136
|
+
encodingKind
|
|
6137
|
+
} = c2.req.query();
|
|
6138
|
+
const params = paramsRaw !== void 0 ? JSON.parse(paramsRaw) : void 0;
|
|
6139
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6140
|
+
msg: "received test inline driver websocket",
|
|
6141
|
+
actorId,
|
|
6142
|
+
params,
|
|
6143
|
+
encodingKind,
|
|
6144
|
+
path: path3
|
|
6145
|
+
});
|
|
6146
|
+
const clientWsPromise = managerDriver.openWebSocket(
|
|
6147
|
+
path3,
|
|
6148
|
+
actorId,
|
|
6149
|
+
encodingKind,
|
|
6150
|
+
params
|
|
6151
|
+
);
|
|
6152
|
+
return await createTestWebSocketProxy(clientWsPromise, "standard");
|
|
6153
|
+
})(c, _chunkWADSS5X4cjs.noopNext.call(void 0, ));
|
|
6154
|
+
});
|
|
6155
|
+
router.all(".test/inline-driver/send-request/*", async (c) => {
|
|
6156
|
+
const actorId = c.req.header(_chunkIRMBWX36cjs.HEADER_ACTOR_ID);
|
|
6157
|
+
if (!actorId) {
|
|
6158
|
+
return c.text("Missing required headers", 400);
|
|
6159
|
+
}
|
|
6160
|
+
const pathOnly = c.req.path.split("/.test/inline-driver/send-request/")[1] || "";
|
|
6161
|
+
const url = new URL(c.req.url);
|
|
6162
|
+
const pathWithQuery = pathOnly + url.search;
|
|
6163
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6164
|
+
msg: "received test inline driver raw http",
|
|
6165
|
+
actorId,
|
|
6166
|
+
path: pathWithQuery,
|
|
6167
|
+
method: c.req.method
|
|
6168
|
+
});
|
|
6169
|
+
try {
|
|
6170
|
+
const response = await managerDriver.sendRequest(
|
|
6171
|
+
actorId,
|
|
6172
|
+
new Request(`http://actor/${pathWithQuery}`, {
|
|
6173
|
+
method: c.req.method,
|
|
6174
|
+
headers: c.req.raw.headers,
|
|
6175
|
+
body: c.req.raw.body
|
|
6176
|
+
})
|
|
6177
|
+
);
|
|
6178
|
+
return response;
|
|
6179
|
+
} catch (error) {
|
|
6180
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).error({
|
|
6181
|
+
msg: "error in test inline raw http",
|
|
6182
|
+
error: _chunkWADSS5X4cjs.stringifyError.call(void 0, error)
|
|
6183
|
+
});
|
|
6184
|
+
const err = _chunkWADSS5X4cjs.deconstructError.call(void 0, error, _chunkIRMBWX36cjs.logger.call(void 0, ), {}, true);
|
|
6185
|
+
return c.json(
|
|
6186
|
+
{
|
|
6187
|
+
error: {
|
|
6188
|
+
code: err.code,
|
|
6189
|
+
message: err.message,
|
|
6190
|
+
metadata: err.metadata
|
|
6191
|
+
}
|
|
6192
|
+
},
|
|
6193
|
+
err.statusCode
|
|
6194
|
+
);
|
|
6195
|
+
}
|
|
6196
|
+
});
|
|
6197
|
+
}
|
|
6198
|
+
(_a = managerDriver.modifyManagerRouter) == null ? void 0 : _a.call(
|
|
6199
|
+
managerDriver,
|
|
6200
|
+
registryConfig,
|
|
6201
|
+
router
|
|
6202
|
+
);
|
|
6203
|
+
if ((_b = runConfig.inspector) == null ? void 0 : _b.enabled) {
|
|
6094
6204
|
if (!managerDriver.inspector) {
|
|
6095
|
-
throw new (0,
|
|
6205
|
+
throw new (0, _chunk5QGQK44Lcjs.Unsupported)("inspector");
|
|
6096
6206
|
}
|
|
6097
6207
|
router.route(
|
|
6098
6208
|
"/inspect",
|
|
@@ -6106,6 +6216,166 @@ function createManagerRouter(registryConfig, runConfig, managerDriver, validateB
|
|
|
6106
6216
|
router.onError(handleRouteError);
|
|
6107
6217
|
return { router, openapi: router };
|
|
6108
6218
|
}
|
|
6219
|
+
async function createTestWebSocketProxy(clientWsPromise, connectionType) {
|
|
6220
|
+
let clientWs = null;
|
|
6221
|
+
try {
|
|
6222
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({ msg: "awaiting client websocket promise" });
|
|
6223
|
+
const ws = await clientWsPromise;
|
|
6224
|
+
clientWs = ws;
|
|
6225
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6226
|
+
msg: "client websocket promise resolved",
|
|
6227
|
+
constructor: ws == null ? void 0 : ws.constructor.name
|
|
6228
|
+
});
|
|
6229
|
+
await new Promise((resolve, reject) => {
|
|
6230
|
+
const onOpen = () => {
|
|
6231
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({ msg: "test websocket connection opened" });
|
|
6232
|
+
resolve();
|
|
6233
|
+
};
|
|
6234
|
+
const onError = (error) => {
|
|
6235
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).error({ msg: "test websocket connection failed", error });
|
|
6236
|
+
reject(
|
|
6237
|
+
new Error(`Failed to open WebSocket: ${error.message || error}`)
|
|
6238
|
+
);
|
|
6239
|
+
};
|
|
6240
|
+
ws.addEventListener("open", onOpen);
|
|
6241
|
+
ws.addEventListener("error", onError);
|
|
6242
|
+
});
|
|
6243
|
+
} catch (error) {
|
|
6244
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).error({
|
|
6245
|
+
msg: `failed to establish client ${connectionType} websocket connection`,
|
|
6246
|
+
error
|
|
6247
|
+
});
|
|
6248
|
+
return {
|
|
6249
|
+
onOpen: (_evt, serverWs) => {
|
|
6250
|
+
serverWs.close(1011, "Failed to establish connection");
|
|
6251
|
+
},
|
|
6252
|
+
onMessage: () => {
|
|
6253
|
+
},
|
|
6254
|
+
onError: () => {
|
|
6255
|
+
},
|
|
6256
|
+
onClose: () => {
|
|
6257
|
+
}
|
|
6258
|
+
};
|
|
6259
|
+
}
|
|
6260
|
+
return {
|
|
6261
|
+
onOpen: (_evt, serverWs) => {
|
|
6262
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6263
|
+
msg: `test ${connectionType} websocket connection opened`
|
|
6264
|
+
});
|
|
6265
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6266
|
+
msg: "clientWs info",
|
|
6267
|
+
constructor: clientWs.constructor.name,
|
|
6268
|
+
hasAddEventListener: typeof clientWs.addEventListener === "function",
|
|
6269
|
+
readyState: clientWs.readyState
|
|
6270
|
+
});
|
|
6271
|
+
clientWs.addEventListener("message", (clientEvt) => {
|
|
6272
|
+
var _a, _b;
|
|
6273
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6274
|
+
msg: `test ${connectionType} websocket connection message from client`,
|
|
6275
|
+
dataType: typeof clientEvt.data,
|
|
6276
|
+
isBlob: clientEvt.data instanceof Blob,
|
|
6277
|
+
isArrayBuffer: clientEvt.data instanceof ArrayBuffer,
|
|
6278
|
+
dataConstructor: (_b = (_a = clientEvt.data) == null ? void 0 : _a.constructor) == null ? void 0 : _b.name,
|
|
6279
|
+
dataStr: typeof clientEvt.data === "string" ? clientEvt.data.substring(0, 100) : void 0
|
|
6280
|
+
});
|
|
6281
|
+
if (serverWs.readyState === 1) {
|
|
6282
|
+
if (clientEvt.data instanceof Blob) {
|
|
6283
|
+
clientEvt.data.arrayBuffer().then((buffer) => {
|
|
6284
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6285
|
+
msg: "converted client blob to arraybuffer, sending to server",
|
|
6286
|
+
bufferSize: buffer.byteLength
|
|
6287
|
+
});
|
|
6288
|
+
serverWs.send(buffer);
|
|
6289
|
+
}).catch((error) => {
|
|
6290
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).error({
|
|
6291
|
+
msg: "failed to convert blob to arraybuffer",
|
|
6292
|
+
error
|
|
6293
|
+
});
|
|
6294
|
+
});
|
|
6295
|
+
} else {
|
|
6296
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6297
|
+
msg: "sending client data directly to server",
|
|
6298
|
+
dataType: typeof clientEvt.data,
|
|
6299
|
+
dataLength: typeof clientEvt.data === "string" ? clientEvt.data.length : void 0
|
|
6300
|
+
});
|
|
6301
|
+
serverWs.send(clientEvt.data);
|
|
6302
|
+
}
|
|
6303
|
+
}
|
|
6304
|
+
});
|
|
6305
|
+
clientWs.addEventListener("close", (clientEvt) => {
|
|
6306
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6307
|
+
msg: `test ${connectionType} websocket connection closed`
|
|
6308
|
+
});
|
|
6309
|
+
if (serverWs.readyState !== 3) {
|
|
6310
|
+
serverWs.close(clientEvt.code, clientEvt.reason);
|
|
6311
|
+
}
|
|
6312
|
+
});
|
|
6313
|
+
clientWs.addEventListener("error", () => {
|
|
6314
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6315
|
+
msg: `test ${connectionType} websocket connection error`
|
|
6316
|
+
});
|
|
6317
|
+
if (serverWs.readyState !== 3) {
|
|
6318
|
+
serverWs.close(1011, "Error in client websocket");
|
|
6319
|
+
}
|
|
6320
|
+
});
|
|
6321
|
+
},
|
|
6322
|
+
onMessage: (evt) => {
|
|
6323
|
+
var _a, _b;
|
|
6324
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6325
|
+
msg: "received message from server",
|
|
6326
|
+
dataType: typeof evt.data,
|
|
6327
|
+
isBlob: evt.data instanceof Blob,
|
|
6328
|
+
isArrayBuffer: evt.data instanceof ArrayBuffer,
|
|
6329
|
+
dataConstructor: (_b = (_a = evt.data) == null ? void 0 : _a.constructor) == null ? void 0 : _b.name,
|
|
6330
|
+
dataStr: typeof evt.data === "string" ? evt.data.substring(0, 100) : void 0
|
|
6331
|
+
});
|
|
6332
|
+
if (clientWs.readyState === 1) {
|
|
6333
|
+
if (evt.data instanceof Blob) {
|
|
6334
|
+
evt.data.arrayBuffer().then((buffer) => {
|
|
6335
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6336
|
+
msg: "converted blob to arraybuffer, sending",
|
|
6337
|
+
bufferSize: buffer.byteLength
|
|
6338
|
+
});
|
|
6339
|
+
clientWs.send(buffer);
|
|
6340
|
+
}).catch((error) => {
|
|
6341
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).error({
|
|
6342
|
+
msg: "failed to convert blob to arraybuffer",
|
|
6343
|
+
error
|
|
6344
|
+
});
|
|
6345
|
+
});
|
|
6346
|
+
} else {
|
|
6347
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6348
|
+
msg: "sending data directly",
|
|
6349
|
+
dataType: typeof evt.data,
|
|
6350
|
+
dataLength: typeof evt.data === "string" ? evt.data.length : void 0
|
|
6351
|
+
});
|
|
6352
|
+
clientWs.send(evt.data);
|
|
6353
|
+
}
|
|
6354
|
+
}
|
|
6355
|
+
},
|
|
6356
|
+
onClose: (event, serverWs) => {
|
|
6357
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).debug({
|
|
6358
|
+
msg: `server ${connectionType} websocket closed`,
|
|
6359
|
+
wasClean: event.wasClean,
|
|
6360
|
+
code: event.code,
|
|
6361
|
+
reason: event.reason
|
|
6362
|
+
});
|
|
6363
|
+
serverWs.close(1e3, "hack_force_close");
|
|
6364
|
+
if (clientWs && clientWs.readyState !== clientWs.CLOSED && clientWs.readyState !== clientWs.CLOSING) {
|
|
6365
|
+
clientWs.close(1e3, event.reason);
|
|
6366
|
+
}
|
|
6367
|
+
},
|
|
6368
|
+
onError: (error) => {
|
|
6369
|
+
_chunkIRMBWX36cjs.logger.call(void 0, ).error({
|
|
6370
|
+
msg: `error in server ${connectionType} websocket`,
|
|
6371
|
+
error
|
|
6372
|
+
});
|
|
6373
|
+
if (clientWs && clientWs.readyState !== clientWs.CLOSED && clientWs.readyState !== clientWs.CLOSING) {
|
|
6374
|
+
clientWs.close(1011, "Error in server websocket");
|
|
6375
|
+
}
|
|
6376
|
+
}
|
|
6377
|
+
};
|
|
6378
|
+
}
|
|
6109
6379
|
|
|
6110
6380
|
// src/registry/config.ts
|
|
6111
6381
|
|
|
@@ -6128,7 +6398,7 @@ var RegistryConfigSchema = _zod.z.object({
|
|
|
6128
6398
|
|
|
6129
6399
|
// src/registry/log.ts
|
|
6130
6400
|
function logger8() {
|
|
6131
|
-
return
|
|
6401
|
+
return _chunk5YTI25C3cjs.getLogger.call(void 0, "registry");
|
|
6132
6402
|
}
|
|
6133
6403
|
|
|
6134
6404
|
// src/registry/serve.ts
|
|
@@ -6180,17 +6450,24 @@ var Registry = class {
|
|
|
6180
6450
|
/**
|
|
6181
6451
|
* Runs the registry for a server.
|
|
6182
6452
|
*/
|
|
6183
|
-
|
|
6453
|
+
start(inputConfig) {
|
|
6184
6454
|
var _a, _b, _c, _d, _e;
|
|
6185
|
-
const config2 =
|
|
6455
|
+
const config2 = _chunkRM2SVURRcjs.RunConfigSchema.parse(inputConfig);
|
|
6186
6456
|
if ((_a = config2.logging) == null ? void 0 : _a.baseLogger) {
|
|
6187
|
-
|
|
6457
|
+
_chunk5YTI25C3cjs.configureBaseLogger.call(void 0, config2.logging.baseLogger);
|
|
6188
6458
|
} else {
|
|
6189
|
-
|
|
6459
|
+
_chunk5YTI25C3cjs.configureDefaultLogger.call(void 0, (_b = config2.logging) == null ? void 0 : _b.level);
|
|
6190
6460
|
}
|
|
6191
6461
|
const driver = chooseDefaultDriver(config2);
|
|
6192
6462
|
if (driver.name === "engine") {
|
|
6193
6463
|
config2.inspector.enabled = false;
|
|
6464
|
+
config2.disableServer = true;
|
|
6465
|
+
}
|
|
6466
|
+
if (driver.name === "cloudflare-workers") {
|
|
6467
|
+
config2.inspector.enabled = false;
|
|
6468
|
+
config2.disableServer = true;
|
|
6469
|
+
config2.disableActorDriver = true;
|
|
6470
|
+
config2.noWelcome = true;
|
|
6194
6471
|
}
|
|
6195
6472
|
let upgradeWebSocket;
|
|
6196
6473
|
if (!config2.getUpgradeWebSocket) {
|
|
@@ -6217,7 +6494,7 @@ var Registry = class {
|
|
|
6217
6494
|
if (!config2.noWelcome) {
|
|
6218
6495
|
const displayInfo = managerDriver.displayInformation();
|
|
6219
6496
|
console.log();
|
|
6220
|
-
console.log(` RivetKit ${
|
|
6497
|
+
console.log(` RivetKit ${_chunkWADSS5X4cjs.package_default.version} (${displayInfo.name})`);
|
|
6221
6498
|
console.log(` - Endpoint: http://127.0.0.1:6420`);
|
|
6222
6499
|
for (const [k, v] of Object.entries(displayInfo.properties)) {
|
|
6223
6500
|
const padding = " ".repeat(Math.max(0, 13 - k.length));
|
|
@@ -6228,33 +6505,25 @@ var Registry = class {
|
|
|
6228
6505
|
}
|
|
6229
6506
|
console.log();
|
|
6230
6507
|
}
|
|
6231
|
-
|
|
6232
|
-
|
|
6233
|
-
|
|
6234
|
-
|
|
6235
|
-
|
|
6236
|
-
|
|
6508
|
+
if (!config2.disableActorDriver) {
|
|
6509
|
+
const _actorDriver = driver.actor(
|
|
6510
|
+
this.#config,
|
|
6511
|
+
config2,
|
|
6512
|
+
managerDriver,
|
|
6513
|
+
client
|
|
6514
|
+
);
|
|
6515
|
+
}
|
|
6516
|
+
if (!config2.disableServer) {
|
|
6517
|
+
(async () => {
|
|
6518
|
+
const out = await crossPlatformServe(hono, void 0);
|
|
6519
|
+
upgradeWebSocket = out.upgradeWebSocket;
|
|
6520
|
+
})();
|
|
6521
|
+
}
|
|
6237
6522
|
return {
|
|
6238
|
-
config: config2,
|
|
6239
|
-
driver,
|
|
6240
6523
|
client,
|
|
6241
|
-
hono
|
|
6242
|
-
handler: async (req) => await hono.fetch(req),
|
|
6243
|
-
serve: async (app) => {
|
|
6244
|
-
const out = await crossPlatformServe(hono, app);
|
|
6245
|
-
upgradeWebSocket = out.upgradeWebSocket;
|
|
6246
|
-
}
|
|
6524
|
+
fetch: hono.fetch.bind(hono)
|
|
6247
6525
|
};
|
|
6248
6526
|
}
|
|
6249
|
-
/**
|
|
6250
|
-
* Runs the registry as a standalone server.
|
|
6251
|
-
*/
|
|
6252
|
-
async runServer(inputConfig) {
|
|
6253
|
-
const { driver, serve } = this.createServer(inputConfig);
|
|
6254
|
-
if (driver.name !== "engine") {
|
|
6255
|
-
serve();
|
|
6256
|
-
}
|
|
6257
|
-
}
|
|
6258
6527
|
};
|
|
6259
6528
|
function setup(input) {
|
|
6260
6529
|
const config2 = RegistryConfigSchema.parse(input);
|
|
@@ -6290,4 +6559,4 @@ function setup(input) {
|
|
|
6290
6559
|
|
|
6291
6560
|
exports.ActorDefinition = ActorDefinition; exports.lookupInRegistry = lookupInRegistry; exports.GenericConnGlobalState = GenericConnGlobalState; exports.createGenericConnDrivers = createGenericConnDrivers; exports.PATH_CONNECT_WEBSOCKET = PATH_CONNECT_WEBSOCKET; exports.PATH_RAW_WEBSOCKET_PREFIX = PATH_RAW_WEBSOCKET_PREFIX; exports.createActorRouter = createActorRouter; exports.actor = actor; exports.ActorClientError = ActorClientError; exports.InternalError = InternalError2; exports.ManagerError = ManagerError; exports.MalformedResponseMessage = MalformedResponseMessage; exports.ActorError = ActorError; exports.ActorConnRaw = ActorConnRaw; exports.ActorHandleRaw = ActorHandleRaw; exports.createClientWithDriver = createClientWithDriver; exports.InlineWebSocketAdapter2 = InlineWebSocketAdapter2; exports.RemoteManagerDriver = RemoteManagerDriver; exports.createEngineDriver = createEngineDriver; exports.createFileSystemOrMemoryDriver = createFileSystemOrMemoryDriver; exports.createFileSystemDriver = createFileSystemDriver; exports.createMemoryDriver = createMemoryDriver; exports.createManagerRouter = createManagerRouter; exports.RegistryConfigSchema = RegistryConfigSchema; exports.Registry = Registry; exports.setup = setup;
|
|
6292
6561
|
//! These configs configs hold anything that's not platform-specific about running actors.
|
|
6293
|
-
//# sourceMappingURL=chunk-
|
|
6562
|
+
//# sourceMappingURL=chunk-MRZS2J4X.cjs.map
|