rivetkit 2.0.2 → 2.0.3

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.
Files changed (253) hide show
  1. package/dist/schemas/actor-persist/v1.ts +228 -0
  2. package/dist/schemas/client-protocol/v1.ts +429 -0
  3. package/dist/schemas/file-system-driver/v1.ts +102 -0
  4. package/dist/tsup/actor/errors.cjs +69 -0
  5. package/dist/tsup/actor/errors.cjs.map +1 -0
  6. package/dist/tsup/actor/errors.d.cts +143 -0
  7. package/dist/tsup/actor/errors.d.ts +143 -0
  8. package/dist/tsup/actor/errors.js +69 -0
  9. package/dist/tsup/actor/errors.js.map +1 -0
  10. package/dist/tsup/chunk-2CRLFV6Z.cjs +202 -0
  11. package/dist/tsup/chunk-2CRLFV6Z.cjs.map +1 -0
  12. package/dist/tsup/chunk-3H7O2A7I.js +525 -0
  13. package/dist/tsup/chunk-3H7O2A7I.js.map +1 -0
  14. package/dist/tsup/chunk-42I3OZ3Q.js +15 -0
  15. package/dist/tsup/chunk-42I3OZ3Q.js.map +1 -0
  16. package/dist/tsup/chunk-4NSUQZ2H.js +1790 -0
  17. package/dist/tsup/chunk-4NSUQZ2H.js.map +1 -0
  18. package/dist/tsup/chunk-6PDXBYI5.js +132 -0
  19. package/dist/tsup/chunk-6PDXBYI5.js.map +1 -0
  20. package/dist/tsup/chunk-6WKQDDUD.cjs +1790 -0
  21. package/dist/tsup/chunk-6WKQDDUD.cjs.map +1 -0
  22. package/dist/tsup/chunk-CTBOSFUH.cjs +116 -0
  23. package/dist/tsup/chunk-CTBOSFUH.cjs.map +1 -0
  24. package/dist/tsup/chunk-EGVZZFE2.js +2857 -0
  25. package/dist/tsup/chunk-EGVZZFE2.js.map +1 -0
  26. package/dist/tsup/chunk-FCCPJNMA.cjs +132 -0
  27. package/dist/tsup/chunk-FCCPJNMA.cjs.map +1 -0
  28. package/dist/tsup/chunk-FLMTTN27.js +244 -0
  29. package/dist/tsup/chunk-FLMTTN27.js.map +1 -0
  30. package/dist/tsup/chunk-GIR3AFFI.cjs +315 -0
  31. package/dist/tsup/chunk-GIR3AFFI.cjs.map +1 -0
  32. package/dist/tsup/chunk-INGJP237.js +315 -0
  33. package/dist/tsup/chunk-INGJP237.js.map +1 -0
  34. package/dist/tsup/chunk-KJCJLKRM.js +116 -0
  35. package/dist/tsup/chunk-KJCJLKRM.js.map +1 -0
  36. package/dist/tsup/chunk-KUPQZYUQ.cjs +15 -0
  37. package/dist/tsup/chunk-KUPQZYUQ.cjs.map +1 -0
  38. package/dist/tsup/chunk-O2MBYIXO.cjs +2857 -0
  39. package/dist/tsup/chunk-O2MBYIXO.cjs.map +1 -0
  40. package/dist/tsup/chunk-OGAPU3UG.cjs +525 -0
  41. package/dist/tsup/chunk-OGAPU3UG.cjs.map +1 -0
  42. package/dist/tsup/chunk-OV6AYD4S.js +4406 -0
  43. package/dist/tsup/chunk-OV6AYD4S.js.map +1 -0
  44. package/dist/tsup/chunk-PO4VLDWA.js +47 -0
  45. package/dist/tsup/chunk-PO4VLDWA.js.map +1 -0
  46. package/dist/tsup/chunk-R2OPSKIV.cjs +244 -0
  47. package/dist/tsup/chunk-R2OPSKIV.cjs.map +1 -0
  48. package/dist/tsup/chunk-TZJKSBUQ.cjs +47 -0
  49. package/dist/tsup/chunk-TZJKSBUQ.cjs.map +1 -0
  50. package/dist/tsup/chunk-UBUC5C3G.cjs +189 -0
  51. package/dist/tsup/chunk-UBUC5C3G.cjs.map +1 -0
  52. package/dist/tsup/chunk-UIM22YJL.cjs +4406 -0
  53. package/dist/tsup/chunk-UIM22YJL.cjs.map +1 -0
  54. package/dist/tsup/chunk-URVFQMYI.cjs +230 -0
  55. package/dist/tsup/chunk-URVFQMYI.cjs.map +1 -0
  56. package/dist/tsup/chunk-UVUPOS46.js +230 -0
  57. package/dist/tsup/chunk-UVUPOS46.js.map +1 -0
  58. package/dist/tsup/chunk-VRRHBNJC.js +189 -0
  59. package/dist/tsup/chunk-VRRHBNJC.js.map +1 -0
  60. package/dist/tsup/chunk-XFSS33EQ.js +202 -0
  61. package/dist/tsup/chunk-XFSS33EQ.js.map +1 -0
  62. package/dist/tsup/client/mod.cjs +32 -0
  63. package/dist/tsup/client/mod.cjs.map +1 -0
  64. package/dist/tsup/client/mod.d.cts +26 -0
  65. package/dist/tsup/client/mod.d.ts +26 -0
  66. package/dist/tsup/client/mod.js +32 -0
  67. package/dist/tsup/client/mod.js.map +1 -0
  68. package/dist/tsup/common/log.cjs +13 -0
  69. package/dist/tsup/common/log.cjs.map +1 -0
  70. package/dist/tsup/common/log.d.cts +20 -0
  71. package/dist/tsup/common/log.d.ts +20 -0
  72. package/dist/tsup/common/log.js +13 -0
  73. package/dist/tsup/common/log.js.map +1 -0
  74. package/dist/tsup/common/websocket.cjs +10 -0
  75. package/dist/tsup/common/websocket.cjs.map +1 -0
  76. package/dist/tsup/common/websocket.d.cts +3 -0
  77. package/dist/tsup/common/websocket.d.ts +3 -0
  78. package/dist/tsup/common/websocket.js +10 -0
  79. package/dist/tsup/common/websocket.js.map +1 -0
  80. package/dist/tsup/common-CpqORuCq.d.cts +218 -0
  81. package/dist/tsup/common-CpqORuCq.d.ts +218 -0
  82. package/dist/tsup/connection-BR_Ve4ku.d.cts +2117 -0
  83. package/dist/tsup/connection-BwUMoe6n.d.ts +2117 -0
  84. package/dist/tsup/driver-helpers/mod.cjs +33 -0
  85. package/dist/tsup/driver-helpers/mod.cjs.map +1 -0
  86. package/dist/tsup/driver-helpers/mod.d.cts +18 -0
  87. package/dist/tsup/driver-helpers/mod.d.ts +18 -0
  88. package/dist/tsup/driver-helpers/mod.js +33 -0
  89. package/dist/tsup/driver-helpers/mod.js.map +1 -0
  90. package/dist/tsup/driver-test-suite/mod.cjs +4619 -0
  91. package/dist/tsup/driver-test-suite/mod.cjs.map +1 -0
  92. package/dist/tsup/driver-test-suite/mod.d.cts +57 -0
  93. package/dist/tsup/driver-test-suite/mod.d.ts +57 -0
  94. package/dist/tsup/driver-test-suite/mod.js +4619 -0
  95. package/dist/tsup/driver-test-suite/mod.js.map +1 -0
  96. package/dist/tsup/inspector/mod.cjs +53 -0
  97. package/dist/tsup/inspector/mod.cjs.map +1 -0
  98. package/dist/tsup/inspector/mod.d.cts +408 -0
  99. package/dist/tsup/inspector/mod.d.ts +408 -0
  100. package/dist/tsup/inspector/mod.js +53 -0
  101. package/dist/tsup/inspector/mod.js.map +1 -0
  102. package/dist/tsup/mod.cjs +73 -0
  103. package/dist/tsup/mod.cjs.map +1 -0
  104. package/dist/tsup/mod.d.cts +100 -0
  105. package/dist/tsup/mod.d.ts +100 -0
  106. package/dist/tsup/mod.js +73 -0
  107. package/dist/tsup/mod.js.map +1 -0
  108. package/dist/tsup/router-endpoints-AYkXG8Tl.d.cts +66 -0
  109. package/dist/tsup/router-endpoints-DAbqVFx2.d.ts +66 -0
  110. package/dist/tsup/test/mod.cjs +21 -0
  111. package/dist/tsup/test/mod.cjs.map +1 -0
  112. package/dist/tsup/test/mod.d.cts +27 -0
  113. package/dist/tsup/test/mod.d.ts +27 -0
  114. package/dist/tsup/test/mod.js +21 -0
  115. package/dist/tsup/test/mod.js.map +1 -0
  116. package/dist/tsup/utils-CT0cv4jd.d.cts +17 -0
  117. package/dist/tsup/utils-CT0cv4jd.d.ts +17 -0
  118. package/dist/tsup/utils.cjs +26 -0
  119. package/dist/tsup/utils.cjs.map +1 -0
  120. package/dist/tsup/utils.d.cts +36 -0
  121. package/dist/tsup/utils.d.ts +36 -0
  122. package/dist/tsup/utils.js +26 -0
  123. package/dist/tsup/utils.js.map +1 -0
  124. package/package.json +208 -5
  125. package/src/actor/action.ts +182 -0
  126. package/src/actor/config.ts +765 -0
  127. package/src/actor/connection.ts +260 -0
  128. package/src/actor/context.ts +171 -0
  129. package/src/actor/database.ts +23 -0
  130. package/src/actor/definition.ts +86 -0
  131. package/src/actor/driver.ts +84 -0
  132. package/src/actor/errors.ts +360 -0
  133. package/src/actor/generic-conn-driver.ts +234 -0
  134. package/src/actor/instance.ts +1800 -0
  135. package/src/actor/log.ts +15 -0
  136. package/src/actor/mod.ts +113 -0
  137. package/src/actor/persisted.ts +42 -0
  138. package/src/actor/protocol/old.ts +281 -0
  139. package/src/actor/protocol/serde.ts +131 -0
  140. package/src/actor/router-endpoints.ts +685 -0
  141. package/src/actor/router.ts +263 -0
  142. package/src/actor/schedule.ts +17 -0
  143. package/src/actor/unstable-react.ts +110 -0
  144. package/src/actor/utils.ts +98 -0
  145. package/src/client/actor-common.ts +30 -0
  146. package/src/client/actor-conn.ts +804 -0
  147. package/src/client/actor-handle.ts +208 -0
  148. package/src/client/client.ts +623 -0
  149. package/src/client/errors.ts +41 -0
  150. package/src/client/http-client-driver.ts +326 -0
  151. package/src/client/log.ts +7 -0
  152. package/src/client/mod.ts +56 -0
  153. package/src/client/raw-utils.ts +92 -0
  154. package/src/client/test.ts +44 -0
  155. package/src/client/utils.ts +150 -0
  156. package/src/common/eventsource-interface.ts +47 -0
  157. package/src/common/eventsource.ts +80 -0
  158. package/src/common/fake-event-source.ts +266 -0
  159. package/src/common/inline-websocket-adapter2.ts +445 -0
  160. package/src/common/log-levels.ts +27 -0
  161. package/src/common/log.ts +139 -0
  162. package/src/common/logfmt.ts +228 -0
  163. package/src/common/network.ts +2 -0
  164. package/src/common/router.ts +87 -0
  165. package/src/common/utils.ts +322 -0
  166. package/src/common/versioned-data.ts +95 -0
  167. package/src/common/websocket-interface.ts +49 -0
  168. package/src/common/websocket.ts +43 -0
  169. package/src/driver-helpers/mod.ts +22 -0
  170. package/src/driver-helpers/utils.ts +17 -0
  171. package/src/driver-test-suite/log.ts +7 -0
  172. package/src/driver-test-suite/mod.ts +213 -0
  173. package/src/driver-test-suite/test-inline-client-driver.ts +402 -0
  174. package/src/driver-test-suite/tests/action-features.ts +136 -0
  175. package/src/driver-test-suite/tests/actor-auth.ts +591 -0
  176. package/src/driver-test-suite/tests/actor-conn-state.ts +249 -0
  177. package/src/driver-test-suite/tests/actor-conn.ts +349 -0
  178. package/src/driver-test-suite/tests/actor-driver.ts +25 -0
  179. package/src/driver-test-suite/tests/actor-error-handling.ts +158 -0
  180. package/src/driver-test-suite/tests/actor-handle.ts +259 -0
  181. package/src/driver-test-suite/tests/actor-inline-client.ts +152 -0
  182. package/src/driver-test-suite/tests/actor-inspector.ts +570 -0
  183. package/src/driver-test-suite/tests/actor-metadata.ts +116 -0
  184. package/src/driver-test-suite/tests/actor-onstatechange.ts +95 -0
  185. package/src/driver-test-suite/tests/actor-schedule.ts +108 -0
  186. package/src/driver-test-suite/tests/actor-sleep.ts +413 -0
  187. package/src/driver-test-suite/tests/actor-state.ts +54 -0
  188. package/src/driver-test-suite/tests/actor-vars.ts +93 -0
  189. package/src/driver-test-suite/tests/manager-driver.ts +365 -0
  190. package/src/driver-test-suite/tests/raw-http-direct-registry.ts +226 -0
  191. package/src/driver-test-suite/tests/raw-http-request-properties.ts +414 -0
  192. package/src/driver-test-suite/tests/raw-http.ts +347 -0
  193. package/src/driver-test-suite/tests/raw-websocket-direct-registry.ts +392 -0
  194. package/src/driver-test-suite/tests/raw-websocket.ts +484 -0
  195. package/src/driver-test-suite/tests/request-access.ts +244 -0
  196. package/src/driver-test-suite/utils.ts +68 -0
  197. package/src/drivers/default.ts +31 -0
  198. package/src/drivers/engine/actor-driver.ts +360 -0
  199. package/src/drivers/engine/api-endpoints.ts +128 -0
  200. package/src/drivers/engine/api-utils.ts +70 -0
  201. package/src/drivers/engine/config.ts +39 -0
  202. package/src/drivers/engine/keys.test.ts +266 -0
  203. package/src/drivers/engine/keys.ts +89 -0
  204. package/src/drivers/engine/kv.ts +3 -0
  205. package/src/drivers/engine/log.ts +7 -0
  206. package/src/drivers/engine/manager-driver.ts +391 -0
  207. package/src/drivers/engine/mod.ts +36 -0
  208. package/src/drivers/engine/ws-proxy.ts +170 -0
  209. package/src/drivers/file-system/actor.ts +91 -0
  210. package/src/drivers/file-system/global-state.ts +673 -0
  211. package/src/drivers/file-system/log.ts +7 -0
  212. package/src/drivers/file-system/manager.ts +306 -0
  213. package/src/drivers/file-system/mod.ts +48 -0
  214. package/src/drivers/file-system/utils.ts +109 -0
  215. package/src/globals.d.ts +6 -0
  216. package/src/inline-client-driver/log.ts +7 -0
  217. package/src/inline-client-driver/mod.ts +385 -0
  218. package/src/inspector/actor.ts +298 -0
  219. package/src/inspector/config.ts +83 -0
  220. package/src/inspector/log.ts +5 -0
  221. package/src/inspector/manager.ts +86 -0
  222. package/src/inspector/mod.ts +2 -0
  223. package/src/inspector/protocol/actor.ts +10 -0
  224. package/src/inspector/protocol/common.ts +196 -0
  225. package/src/inspector/protocol/manager.ts +10 -0
  226. package/src/inspector/protocol/mod.ts +2 -0
  227. package/src/inspector/utils.ts +76 -0
  228. package/src/manager/auth.ts +121 -0
  229. package/src/manager/driver.ts +80 -0
  230. package/src/manager/hono-websocket-adapter.ts +333 -0
  231. package/src/manager/log.ts +7 -0
  232. package/src/manager/mod.ts +2 -0
  233. package/src/manager/protocol/mod.ts +24 -0
  234. package/src/manager/protocol/query.ts +89 -0
  235. package/src/manager/router.ts +1792 -0
  236. package/src/mod.ts +20 -0
  237. package/src/registry/config.ts +32 -0
  238. package/src/registry/log.ts +7 -0
  239. package/src/registry/mod.ts +124 -0
  240. package/src/registry/run-config.ts +54 -0
  241. package/src/registry/serve.ts +53 -0
  242. package/src/schemas/actor-persist/mod.ts +1 -0
  243. package/src/schemas/actor-persist/versioned.ts +25 -0
  244. package/src/schemas/client-protocol/mod.ts +1 -0
  245. package/src/schemas/client-protocol/versioned.ts +63 -0
  246. package/src/schemas/file-system-driver/mod.ts +1 -0
  247. package/src/schemas/file-system-driver/versioned.ts +28 -0
  248. package/src/serde.ts +84 -0
  249. package/src/test/config.ts +16 -0
  250. package/src/test/log.ts +7 -0
  251. package/src/test/mod.ts +153 -0
  252. package/src/utils.ts +172 -0
  253. package/README.md +0 -13
@@ -0,0 +1,244 @@
1
+ import {
2
+ EncodingSchema,
3
+ HEADER_ACTOR_ID,
4
+ HEADER_ACTOR_QUERY,
5
+ HEADER_CONN_ID,
6
+ HEADER_CONN_PARAMS,
7
+ HEADER_CONN_TOKEN,
8
+ HEADER_ENCODING
9
+ } from "./chunk-4NSUQZ2H.js";
10
+
11
+ // src/inspector/protocol/common.ts
12
+ import z2 from "zod/v4";
13
+
14
+ // src/manager/protocol/query.ts
15
+ import { z } from "zod";
16
+ var MAX_ACTOR_KEY_SIZE = 128;
17
+ var ActorKeySchema = z.array(z.string().max(MAX_ACTOR_KEY_SIZE));
18
+ var CreateRequestSchema = z.object({
19
+ name: z.string(),
20
+ key: ActorKeySchema,
21
+ input: z.unknown().optional(),
22
+ region: z.string().optional()
23
+ });
24
+ var GetForKeyRequestSchema = z.object({
25
+ name: z.string(),
26
+ key: ActorKeySchema
27
+ });
28
+ var GetOrCreateRequestSchema = z.object({
29
+ name: z.string(),
30
+ key: ActorKeySchema,
31
+ input: z.unknown().optional(),
32
+ region: z.string().optional()
33
+ });
34
+ var ActorQuerySchema = z.union([
35
+ z.object({
36
+ getForId: z.object({
37
+ name: z.string(),
38
+ actorId: z.string()
39
+ })
40
+ }),
41
+ z.object({
42
+ getForKey: GetForKeyRequestSchema
43
+ }),
44
+ z.object({
45
+ getOrCreateForKey: GetOrCreateRequestSchema
46
+ }),
47
+ z.object({
48
+ create: CreateRequestSchema
49
+ })
50
+ ]);
51
+ var ConnectRequestSchema = z.object({
52
+ query: ActorQuerySchema.describe(HEADER_ACTOR_QUERY),
53
+ encoding: EncodingSchema.describe(HEADER_ENCODING),
54
+ connParams: z.string().optional().describe(HEADER_CONN_PARAMS)
55
+ });
56
+ var ConnectWebSocketRequestSchema = z.object({
57
+ query: ActorQuerySchema.describe("query"),
58
+ encoding: EncodingSchema.describe("encoding"),
59
+ connParams: z.unknown().optional().describe("conn_params")
60
+ });
61
+ var ConnMessageRequestSchema = z.object({
62
+ actorId: z.string().describe(HEADER_ACTOR_ID),
63
+ connId: z.string().describe(HEADER_CONN_ID),
64
+ encoding: EncodingSchema.describe(HEADER_ENCODING),
65
+ connToken: z.string().describe(HEADER_CONN_TOKEN)
66
+ });
67
+ var ResolveRequestSchema = z.object({
68
+ query: ActorQuerySchema.describe(HEADER_ACTOR_QUERY),
69
+ connParams: z.string().optional().describe(HEADER_CONN_PARAMS)
70
+ });
71
+
72
+ // src/inspector/protocol/common.ts
73
+ var ActorId = z2.string().brand("ActorId");
74
+ var ActorFeature = /* @__PURE__ */ ((ActorFeature2) => {
75
+ ActorFeature2["Logs"] = "logs";
76
+ ActorFeature2["Config"] = "config";
77
+ ActorFeature2["Connections"] = "connections";
78
+ ActorFeature2["State"] = "state";
79
+ ActorFeature2["Console"] = "console";
80
+ ActorFeature2["Runtime"] = "runtime";
81
+ ActorFeature2["Metrics"] = "metrics";
82
+ ActorFeature2["EventsMonitoring"] = "events-monitoring";
83
+ ActorFeature2["Database"] = "database";
84
+ return ActorFeature2;
85
+ })(ActorFeature || {});
86
+ var ActorLogEntry = z2.object({
87
+ level: z2.string(),
88
+ message: z2.string(),
89
+ timestamp: z2.string(),
90
+ metadata: z2.record(z2.string(), z2.any()).optional()
91
+ });
92
+ var ActorSchema = z2.object({
93
+ id: ActorId,
94
+ name: z2.string(),
95
+ key: z2.array(z2.string()),
96
+ tags: z2.record(z2.string(), z2.string()).optional(),
97
+ region: z2.string().optional(),
98
+ createdAt: z2.string().optional(),
99
+ startedAt: z2.string().optional(),
100
+ destroyedAt: z2.string().optional(),
101
+ features: z2.array(z2.enum(ActorFeature)).optional()
102
+ });
103
+ var OperationSchema = z2.discriminatedUnion("op", [
104
+ z2.object({
105
+ op: z2.literal("remove"),
106
+ path: z2.string()
107
+ }),
108
+ z2.object({
109
+ op: z2.literal("add"),
110
+ path: z2.string(),
111
+ value: z2.unknown()
112
+ }),
113
+ z2.object({
114
+ op: z2.literal("replace"),
115
+ path: z2.string(),
116
+ value: z2.unknown()
117
+ }),
118
+ z2.object({
119
+ op: z2.literal("move"),
120
+ path: z2.string(),
121
+ from: z2.string()
122
+ }),
123
+ z2.object({
124
+ op: z2.literal("copy"),
125
+ path: z2.string(),
126
+ from: z2.string()
127
+ }),
128
+ z2.object({
129
+ op: z2.literal("test"),
130
+ path: z2.string(),
131
+ value: z2.unknown()
132
+ })
133
+ ]);
134
+ var PatchSchema = z2.array(OperationSchema);
135
+ var ConnectionSchema = z2.object({
136
+ params: z2.record(z2.string(), z2.any()).optional(),
137
+ id: z2.string(),
138
+ stateEnabled: z2.boolean().optional(),
139
+ state: z2.any().optional(),
140
+ auth: z2.record(z2.string(), z2.any()).optional()
141
+ });
142
+ var RealtimeEventSchema = z2.discriminatedUnion("type", [
143
+ z2.object({
144
+ type: z2.literal("action"),
145
+ name: z2.string(),
146
+ args: z2.array(z2.any()),
147
+ connId: z2.string()
148
+ }),
149
+ z2.object({
150
+ type: z2.literal("broadcast"),
151
+ eventName: z2.string(),
152
+ args: z2.array(z2.any())
153
+ }),
154
+ z2.object({
155
+ type: z2.literal("subscribe"),
156
+ eventName: z2.string(),
157
+ connId: z2.string()
158
+ }),
159
+ z2.object({
160
+ type: z2.literal("unsubscribe"),
161
+ eventName: z2.string(),
162
+ connId: z2.string()
163
+ }),
164
+ z2.object({
165
+ type: z2.literal("event"),
166
+ eventName: z2.string(),
167
+ args: z2.array(z2.any()),
168
+ connId: z2.string()
169
+ })
170
+ ]);
171
+ var RecordedRealtimeEventSchema = RealtimeEventSchema.and(
172
+ z2.object({
173
+ id: z2.string(),
174
+ timestamp: z2.number()
175
+ })
176
+ );
177
+ var DatabaseQuerySchema = z2.object({
178
+ sql: z2.string(),
179
+ args: z2.array(z2.string().or(z2.number()))
180
+ });
181
+ var TableSchema = z2.object({
182
+ schema: z2.string(),
183
+ name: z2.string(),
184
+ type: z2.enum(["table", "view"])
185
+ });
186
+ var TablesSchema = z2.array(TableSchema);
187
+ var ColumnSchema = z2.object({
188
+ cid: z2.number(),
189
+ name: z2.string(),
190
+ type: z2.string().toLowerCase().transform((val) => {
191
+ return z2.enum(["integer", "text", "real", "blob", "numeric", "serial"]).parse(val);
192
+ }),
193
+ notnull: z2.coerce.boolean(),
194
+ dflt_value: z2.string().nullable(),
195
+ pk: z2.coerce.boolean().nullable()
196
+ });
197
+ var ColumnsSchema = z2.array(ColumnSchema);
198
+ var ForeignKeySchema = z2.object({
199
+ id: z2.number(),
200
+ table: z2.string(),
201
+ from: z2.string(),
202
+ to: z2.string()
203
+ });
204
+ var ForeignKeysSchema = z2.array(ForeignKeySchema);
205
+ var BuildSchema = z2.object({
206
+ name: z2.string(),
207
+ createdAt: z2.string().optional(),
208
+ tags: z2.record(z2.string(), z2.string()).optional()
209
+ });
210
+ var BuildsSchema = z2.array(BuildSchema);
211
+ var CreateActorSchema = z2.object({
212
+ name: z2.string(),
213
+ // FIXME: Replace with ActorKeySchema when ready
214
+ key: z2.array(z2.string().max(MAX_ACTOR_KEY_SIZE)),
215
+ input: z2.any()
216
+ });
217
+
218
+ export {
219
+ ActorQuerySchema,
220
+ ConnectRequestSchema,
221
+ ConnectWebSocketRequestSchema,
222
+ ConnMessageRequestSchema,
223
+ ResolveRequestSchema,
224
+ ActorId,
225
+ ActorFeature,
226
+ ActorLogEntry,
227
+ ActorSchema,
228
+ OperationSchema,
229
+ PatchSchema,
230
+ ConnectionSchema,
231
+ RealtimeEventSchema,
232
+ RecordedRealtimeEventSchema,
233
+ DatabaseQuerySchema,
234
+ TableSchema,
235
+ TablesSchema,
236
+ ColumnSchema,
237
+ ColumnsSchema,
238
+ ForeignKeySchema,
239
+ ForeignKeysSchema,
240
+ BuildSchema,
241
+ BuildsSchema,
242
+ CreateActorSchema
243
+ };
244
+ //# sourceMappingURL=chunk-FLMTTN27.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/inspector/protocol/common.ts","../../src/manager/protocol/query.ts"],"sourcesContent":["import z from \"zod/v4\";\nimport { ActorKeySchema, MAX_ACTOR_KEY_SIZE } from \"@/manager/protocol/query\";\n\nexport const ActorId = z.string().brand(\"ActorId\");\nexport type ActorId = z.infer<typeof ActorId>;\n\nexport enum ActorFeature {\n\tLogs = \"logs\",\n\tConfig = \"config\",\n\tConnections = \"connections\",\n\tState = \"state\",\n\tConsole = \"console\",\n\tRuntime = \"runtime\",\n\tMetrics = \"metrics\",\n\tEventsMonitoring = \"events-monitoring\",\n\tDatabase = \"database\",\n}\n\nexport const ActorLogEntry = z.object({\n\tlevel: z.string(),\n\tmessage: z.string(),\n\ttimestamp: z.string(),\n\tmetadata: z.record(z.string(), z.any()).optional(),\n});\n\nexport const ActorSchema = z.object({\n\tid: ActorId,\n\tname: z.string(),\n\tkey: z.array(z.string()),\n\ttags: z.record(z.string(), z.string()).optional(),\n\tregion: z.string().optional(),\n\tcreatedAt: z.string().optional(),\n\tstartedAt: z.string().optional(),\n\tdestroyedAt: z.string().optional(),\n\tfeatures: z.array(z.enum(ActorFeature)).optional(),\n});\n\nexport type Actor = z.infer<typeof ActorSchema>;\nexport type ActorLogEntry = z.infer<typeof ActorLogEntry>;\n\n// MARK: State\n\nexport const OperationSchema = z.discriminatedUnion(\"op\", [\n\tz.object({\n\t\top: z.literal(\"remove\"),\n\t\tpath: z.string(),\n\t}),\n\tz.object({\n\t\top: z.literal(\"add\"),\n\t\tpath: z.string(),\n\t\tvalue: z.unknown(),\n\t}),\n\tz.object({\n\t\top: z.literal(\"replace\"),\n\t\tpath: z.string(),\n\t\tvalue: z.unknown(),\n\t}),\n\tz.object({\n\t\top: z.literal(\"move\"),\n\t\tpath: z.string(),\n\t\tfrom: z.string(),\n\t}),\n\tz.object({\n\t\top: z.literal(\"copy\"),\n\t\tpath: z.string(),\n\t\tfrom: z.string(),\n\t}),\n\tz.object({\n\t\top: z.literal(\"test\"),\n\t\tpath: z.string(),\n\t\tvalue: z.unknown(),\n\t}),\n]);\nexport type Operation = z.infer<typeof OperationSchema>;\n\nexport const PatchSchema = z.array(OperationSchema);\nexport type Patch = z.infer<typeof PatchSchema>;\n\n// MARK: Connections\n\nexport const ConnectionSchema = z.object({\n\tparams: z.record(z.string(), z.any()).optional(),\n\tid: z.string(),\n\tstateEnabled: z.boolean().optional(),\n\tstate: z.any().optional(),\n\tauth: z.record(z.string(), z.any()).optional(),\n});\nexport type Connection = z.infer<typeof ConnectionSchema>;\n\n// MARK: Realtime Events\n\nexport const RealtimeEventSchema = z.discriminatedUnion(\"type\", [\n\tz.object({\n\t\ttype: z.literal(\"action\"),\n\t\tname: z.string(),\n\t\targs: z.array(z.any()),\n\t\tconnId: z.string(),\n\t}),\n\tz.object({\n\t\ttype: z.literal(\"broadcast\"),\n\t\teventName: z.string(),\n\t\targs: z.array(z.any()),\n\t}),\n\tz.object({\n\t\ttype: z.literal(\"subscribe\"),\n\t\teventName: z.string(),\n\t\tconnId: z.string(),\n\t}),\n\tz.object({\n\t\ttype: z.literal(\"unsubscribe\"),\n\t\teventName: z.string(),\n\t\tconnId: z.string(),\n\t}),\n\tz.object({\n\t\ttype: z.literal(\"event\"),\n\t\teventName: z.string(),\n\t\targs: z.array(z.any()),\n\t\tconnId: z.string(),\n\t}),\n]);\nexport type RealtimeEvent = z.infer<typeof RealtimeEventSchema>;\nexport const RecordedRealtimeEventSchema = RealtimeEventSchema.and(\n\tz.object({\n\t\tid: z.string(),\n\t\ttimestamp: z.number(),\n\t}),\n);\nexport type RecordedRealtimeEvent = z.infer<typeof RecordedRealtimeEventSchema>;\n\n// MARK: Database\n\nexport const DatabaseQuerySchema = z.object({\n\tsql: z.string(),\n\targs: z.array(z.string().or(z.number())),\n});\nexport type DatabaseQuery = z.infer<typeof DatabaseQuerySchema>;\n\nexport const TableSchema = z.object({\n\tschema: z.string(),\n\tname: z.string(),\n\ttype: z.enum([\"table\", \"view\"]),\n});\nexport type Table = z.infer<typeof TableSchema>;\n\nexport const TablesSchema = z.array(TableSchema);\nexport type Tables = z.infer<typeof TablesSchema>;\n\nexport const ColumnSchema = z.object({\n\tcid: z.number(),\n\tname: z.string(),\n\ttype: z\n\t\t.string()\n\t\t.toLowerCase()\n\t\t.transform((val) => {\n\t\t\treturn z\n\t\t\t\t.enum([\"integer\", \"text\", \"real\", \"blob\", \"numeric\", \"serial\"])\n\t\t\t\t.parse(val);\n\t\t}),\n\tnotnull: z.coerce.boolean(),\n\tdflt_value: z.string().nullable(),\n\tpk: z.coerce.boolean().nullable(),\n});\nexport type Column = z.infer<typeof ColumnSchema>;\n\nexport const ColumnsSchema = z.array(ColumnSchema);\nexport type Columns = z.infer<typeof ColumnsSchema>;\n\nexport const ForeignKeySchema = z.object({\n\tid: z.number(),\n\ttable: z.string(),\n\tfrom: z.string(),\n\tto: z.string(),\n});\nexport type ForeignKey = z.infer<typeof ForeignKeySchema>;\n\nexport const ForeignKeysSchema = z.array(ForeignKeySchema);\nexport type ForeignKeys = z.infer<typeof ForeignKeysSchema>;\n\n// MARK: Builds\n\nexport const BuildSchema = z.object({\n\tname: z.string(),\n\tcreatedAt: z.string().optional(),\n\ttags: z.record(z.string(), z.string()).optional(),\n});\nexport type Build = z.infer<typeof BuildSchema>;\nexport const BuildsSchema = z.array(BuildSchema);\nexport type Builds = z.infer<typeof BuildsSchema>;\n\nexport const CreateActorSchema = z.object({\n\tname: z.string(),\n\t// FIXME: Replace with ActorKeySchema when ready\n\tkey: z.array(z.string().max(MAX_ACTOR_KEY_SIZE)),\n\tinput: z.any(),\n});\nexport type CreateActor = z.infer<typeof CreateActorSchema>;\n","import { z } from \"zod\";\nimport { EncodingSchema } from \"@/actor/protocol/serde\";\nimport {\n\tHEADER_ACTOR_ID,\n\tHEADER_ACTOR_QUERY,\n\tHEADER_CONN_ID,\n\tHEADER_CONN_PARAMS,\n\tHEADER_CONN_TOKEN,\n\tHEADER_ENCODING,\n} from \"@/actor/router-endpoints\";\n\n// Maximum size of a key component in bytes\n// Set to 128 bytes to allow for separators and escape characters in the full key\n// Cloudflare's maximum key size is 512 bytes, so we need to be significantly smaller\nexport const MAX_ACTOR_KEY_SIZE = 128;\n\nexport const ActorKeySchema = z.array(z.string().max(MAX_ACTOR_KEY_SIZE));\n\nexport type ActorKey = z.infer<typeof ActorKeySchema>;\n\nexport const CreateRequestSchema = z.object({\n\tname: z.string(),\n\tkey: ActorKeySchema,\n\tinput: z.unknown().optional(),\n\tregion: z.string().optional(),\n});\n\nexport const GetForKeyRequestSchema = z.object({\n\tname: z.string(),\n\tkey: ActorKeySchema,\n});\n\nexport const GetOrCreateRequestSchema = z.object({\n\tname: z.string(),\n\tkey: ActorKeySchema,\n\tinput: z.unknown().optional(),\n\tregion: z.string().optional(),\n});\n\nexport const ActorQuerySchema = z.union([\n\tz.object({\n\t\tgetForId: z.object({\n\t\t\tname: z.string(),\n\t\t\tactorId: z.string(),\n\t\t}),\n\t}),\n\tz.object({\n\t\tgetForKey: GetForKeyRequestSchema,\n\t}),\n\tz.object({\n\t\tgetOrCreateForKey: GetOrCreateRequestSchema,\n\t}),\n\tz.object({\n\t\tcreate: CreateRequestSchema,\n\t}),\n]);\n\nexport const ConnectRequestSchema = z.object({\n\tquery: ActorQuerySchema.describe(HEADER_ACTOR_QUERY),\n\tencoding: EncodingSchema.describe(HEADER_ENCODING),\n\tconnParams: z.string().optional().describe(HEADER_CONN_PARAMS),\n});\n\nexport const ConnectWebSocketRequestSchema = z.object({\n\tquery: ActorQuerySchema.describe(\"query\"),\n\tencoding: EncodingSchema.describe(\"encoding\"),\n\tconnParams: z.unknown().optional().describe(\"conn_params\"),\n});\n\nexport const ConnMessageRequestSchema = z.object({\n\tactorId: z.string().describe(HEADER_ACTOR_ID),\n\tconnId: z.string().describe(HEADER_CONN_ID),\n\tencoding: EncodingSchema.describe(HEADER_ENCODING),\n\tconnToken: z.string().describe(HEADER_CONN_TOKEN),\n});\n\nexport const ResolveRequestSchema = z.object({\n\tquery: ActorQuerySchema.describe(HEADER_ACTOR_QUERY),\n\tconnParams: z.string().optional().describe(HEADER_CONN_PARAMS),\n});\n\nexport type ActorQuery = z.infer<typeof ActorQuerySchema>;\nexport type GetForKeyRequest = z.infer<typeof GetForKeyRequestSchema>;\nexport type GetOrCreateRequest = z.infer<typeof GetOrCreateRequestSchema>;\nexport type ConnectQuery = z.infer<typeof ConnectRequestSchema>;\n/**\n * Interface representing a request to create a actor.\n */\nexport type CreateRequest = z.infer<typeof CreateRequestSchema>;\n"],"mappings":"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","names":["z","z","ActorFeature"]}
@@ -0,0 +1,315 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } var _class;// src/actor/errors.ts
2
+ var INTERNAL_ERROR_CODE = "internal_error";
3
+ var INTERNAL_ERROR_DESCRIPTION = "Internal error. Read the server logs for more details.";
4
+ var USER_ERROR_CODE = "user_error";
5
+ var ActorError = (_class = class extends Error {
6
+ constructor(code, message, opts) {
7
+ super(message, { cause: opts == null ? void 0 : opts.cause });_class.prototype.__init.call(this);_class.prototype.__init2.call(this);;
8
+ this.code = code;
9
+ this.public = _nullishCoalesce((opts == null ? void 0 : opts.public), () => ( false));
10
+ this.metadata = opts == null ? void 0 : opts.metadata;
11
+ if (opts == null ? void 0 : opts.public) {
12
+ this.statusCode = 400;
13
+ }
14
+ }
15
+ __init() {this.__type = "ActorError"}
16
+
17
+
18
+ __init2() {this.statusCode = 500}
19
+ static isActorError(error) {
20
+ return typeof error === "object" && error.__type === "ActorError";
21
+ }
22
+ toString() {
23
+ return this.message;
24
+ }
25
+ /**
26
+ * Serialize error for HTTP response
27
+ */
28
+ serializeForHttp() {
29
+ return {
30
+ type: this.code,
31
+ message: this.message,
32
+ metadata: this.metadata
33
+ };
34
+ }
35
+ }, _class);
36
+ var InternalError = class extends ActorError {
37
+ constructor(message) {
38
+ super(INTERNAL_ERROR_CODE, message);
39
+ }
40
+ };
41
+ var Unreachable = class extends InternalError {
42
+ constructor(x) {
43
+ super(`Unreachable case: ${x}`);
44
+ }
45
+ };
46
+ var StateNotEnabled = class extends ActorError {
47
+ constructor() {
48
+ super(
49
+ "state_not_enabled",
50
+ "State not enabled. Must implement `createState` or `state` to use state. (https://www.rivet.gg/docs/actors/state/#initializing-state)"
51
+ );
52
+ }
53
+ };
54
+ var ConnStateNotEnabled = class extends ActorError {
55
+ constructor() {
56
+ super(
57
+ "conn_state_not_enabled",
58
+ "Connection state not enabled. Must implement `createConnectionState` or `connectionState` to use connection state. (https://www.rivet.gg/docs/actors/connections/#connection-state)"
59
+ );
60
+ }
61
+ };
62
+ var VarsNotEnabled = class extends ActorError {
63
+ constructor() {
64
+ super(
65
+ "vars_not_enabled",
66
+ "Variables not enabled. Must implement `createVars` or `vars` to use state. (https://www.rivet.gg/docs/actors/ephemeral-variables/#initializing-variables)"
67
+ );
68
+ }
69
+ };
70
+ var ActionTimedOut = class extends ActorError {
71
+ constructor() {
72
+ super(
73
+ "action_timed_out",
74
+ "Action timed out. This can be increased with: `actor({ options: { action: { timeout: ... } } })`",
75
+ { public: true }
76
+ );
77
+ }
78
+ };
79
+ var ActionNotFound = class extends ActorError {
80
+ constructor(name) {
81
+ super(
82
+ "action_not_found",
83
+ `Action '${name}' not found. Validate the action exists on your actor.`,
84
+ { public: true }
85
+ );
86
+ }
87
+ };
88
+ var InvalidEncoding = class extends ActorError {
89
+ constructor(format) {
90
+ super(
91
+ "invalid_encoding",
92
+ `Invalid encoding \`${format}\`. (https://www.rivet.gg/docs/actors/clients/#actor-client)`,
93
+ {
94
+ public: true
95
+ }
96
+ );
97
+ }
98
+ };
99
+ var ConnNotFound = class extends ActorError {
100
+ constructor(id) {
101
+ super("conn_not_found", `Connection not found for ID: ${id}`, {
102
+ public: true
103
+ });
104
+ }
105
+ };
106
+ var IncorrectConnToken = class extends ActorError {
107
+ constructor() {
108
+ super("incorrect_conn_token", "Incorrect connection token.", {
109
+ public: true
110
+ });
111
+ }
112
+ };
113
+ var MessageTooLong = class extends ActorError {
114
+ constructor() {
115
+ super(
116
+ "message_too_long",
117
+ "Message too long. This can be configured with: `registry.runServer({ maxIncomingMessageSize: ... })`",
118
+ { public: true }
119
+ );
120
+ }
121
+ };
122
+ var MalformedMessage = class extends ActorError {
123
+ constructor(cause) {
124
+ super("malformed_message", `Malformed message: ${cause}`, {
125
+ public: true,
126
+ cause
127
+ });
128
+ }
129
+ };
130
+ var InvalidStateType = class extends ActorError {
131
+ constructor(opts) {
132
+ let msg = "";
133
+ if (opts == null ? void 0 : opts.path) {
134
+ msg += `Attempted to set invalid state at path \`${opts.path}\`.`;
135
+ } else {
136
+ msg += "Attempted to set invalid state.";
137
+ }
138
+ msg += " Valid types include: null, undefined, boolean, string, number, BigInt, Date, RegExp, Error, typed arrays (Uint8Array, Int8Array, Float32Array, etc.), Map, Set, Array, and plain objects. (https://www.rivet.gg/docs/actors/state/#limitations)";
139
+ super("invalid_state_type", msg);
140
+ }
141
+ };
142
+ var Unsupported = class extends ActorError {
143
+ constructor(feature) {
144
+ super("unsupported", `Unsupported feature: ${feature}`);
145
+ }
146
+ };
147
+ var UserError = class extends ActorError {
148
+ /**
149
+ * Constructs a new UserError instance.
150
+ *
151
+ * @param message - The error message to be displayed.
152
+ * @param opts - Optional parameters for the error, including a machine-readable code and additional metadata.
153
+ */
154
+ constructor(message, opts) {
155
+ super(_nullishCoalesce((opts == null ? void 0 : opts.code), () => ( USER_ERROR_CODE)), message, {
156
+ public: true,
157
+ metadata: opts == null ? void 0 : opts.metadata
158
+ });
159
+ }
160
+ };
161
+ var InvalidQueryJSON = class extends ActorError {
162
+ constructor(error) {
163
+ super("invalid_query_json", `Invalid query JSON: ${error}`, {
164
+ public: true,
165
+ cause: error
166
+ });
167
+ }
168
+ };
169
+ var InvalidRequest = class extends ActorError {
170
+ constructor(error) {
171
+ super("invalid_request", `Invalid request: ${error}`, {
172
+ public: true,
173
+ cause: error
174
+ });
175
+ }
176
+ };
177
+ var ActorNotFound = class extends ActorError {
178
+ constructor(identifier) {
179
+ super(
180
+ "actor_not_found",
181
+ identifier ? `Actor not found: ${identifier} (https://www.rivet.gg/docs/actors/clients/#actor-client)` : "Actor not found (https://www.rivet.gg/docs/actors/clients/#actor-client)",
182
+ { public: true }
183
+ );
184
+ }
185
+ };
186
+ var ActorAlreadyExists = class extends ActorError {
187
+ constructor(name, key) {
188
+ super(
189
+ "actor_already_exists",
190
+ `Actor already exists with name '${name}' and key '${JSON.stringify(key)}' (https://www.rivet.gg/docs/actors/clients/#actor-client)`,
191
+ { public: true }
192
+ );
193
+ }
194
+ };
195
+ var ProxyError = class extends ActorError {
196
+ constructor(operation, error) {
197
+ super(
198
+ "proxy_error",
199
+ `Error proxying ${operation}, this is likely an internal error: ${error}`,
200
+ {
201
+ public: true,
202
+ cause: error
203
+ }
204
+ );
205
+ }
206
+ };
207
+ var InvalidActionRequest = class extends ActorError {
208
+ constructor(message) {
209
+ super("invalid_action_request", message, { public: true });
210
+ }
211
+ };
212
+ var InvalidParams = class extends ActorError {
213
+ constructor(message) {
214
+ super("invalid_params", message, { public: true });
215
+ }
216
+ };
217
+ var Unauthorized = class extends ActorError {
218
+ constructor(message) {
219
+ super(
220
+ "unauthorized",
221
+ _nullishCoalesce(message, () => ( "Unauthorized. Access denied. (https://www.rivet.gg/docs/actors/authentication/)")),
222
+ {
223
+ public: true
224
+ }
225
+ );
226
+ this.statusCode = 401;
227
+ }
228
+ };
229
+ var Forbidden = class extends ActorError {
230
+ constructor(message, opts) {
231
+ super(
232
+ "forbidden",
233
+ _nullishCoalesce(message, () => ( "Forbidden. Access denied. (https://www.rivet.gg/docs/actors/authentication/)")),
234
+ {
235
+ public: true,
236
+ metadata: opts == null ? void 0 : opts.metadata
237
+ }
238
+ );
239
+ this.statusCode = 403;
240
+ }
241
+ };
242
+ var DatabaseNotEnabled = class extends ActorError {
243
+ constructor() {
244
+ super(
245
+ "database_not_enabled",
246
+ "Database not enabled. Must implement `database` to use database."
247
+ );
248
+ }
249
+ };
250
+ var FetchHandlerNotDefined = class extends ActorError {
251
+ constructor() {
252
+ super(
253
+ "fetch_handler_not_defined",
254
+ "Raw HTTP handler not defined. Actor must implement `onFetch` to handle raw HTTP requests. (https://www.rivet.gg/docs/actors/fetch-and-websocket-handler/)",
255
+ { public: true }
256
+ );
257
+ this.statusCode = 404;
258
+ }
259
+ };
260
+ var WebSocketHandlerNotDefined = class extends ActorError {
261
+ constructor() {
262
+ super(
263
+ "websocket_handler_not_defined",
264
+ "Raw WebSocket handler not defined. Actor must implement `onWebSocket` to handle raw WebSocket connections. (https://www.rivet.gg/docs/actors/fetch-and-websocket-handler/)",
265
+ { public: true }
266
+ );
267
+ this.statusCode = 404;
268
+ }
269
+ };
270
+ var InvalidFetchResponse = class extends ActorError {
271
+ constructor() {
272
+ super(
273
+ "invalid_fetch_response",
274
+ "Actor's onFetch handler must return a Response object. Returning void/undefined is not allowed. (https://www.rivet.gg/docs/actors/fetch-and-websocket-handler/)",
275
+ { public: true }
276
+ );
277
+ this.statusCode = 500;
278
+ }
279
+ };
280
+
281
+
282
+
283
+
284
+
285
+
286
+
287
+
288
+
289
+
290
+
291
+
292
+
293
+
294
+
295
+
296
+
297
+
298
+
299
+
300
+
301
+
302
+
303
+
304
+
305
+
306
+
307
+
308
+
309
+
310
+
311
+
312
+
313
+
314
+ exports.INTERNAL_ERROR_CODE = INTERNAL_ERROR_CODE; exports.INTERNAL_ERROR_DESCRIPTION = INTERNAL_ERROR_DESCRIPTION; exports.USER_ERROR_CODE = USER_ERROR_CODE; exports.ActorError = ActorError; exports.InternalError = InternalError; exports.Unreachable = Unreachable; exports.StateNotEnabled = StateNotEnabled; exports.ConnStateNotEnabled = ConnStateNotEnabled; exports.VarsNotEnabled = VarsNotEnabled; exports.ActionTimedOut = ActionTimedOut; exports.ActionNotFound = ActionNotFound; exports.InvalidEncoding = InvalidEncoding; exports.ConnNotFound = ConnNotFound; exports.IncorrectConnToken = IncorrectConnToken; exports.MessageTooLong = MessageTooLong; exports.MalformedMessage = MalformedMessage; exports.InvalidStateType = InvalidStateType; exports.Unsupported = Unsupported; exports.UserError = UserError; exports.InvalidQueryJSON = InvalidQueryJSON; exports.InvalidRequest = InvalidRequest; exports.ActorNotFound = ActorNotFound; exports.ActorAlreadyExists = ActorAlreadyExists; exports.ProxyError = ProxyError; exports.InvalidActionRequest = InvalidActionRequest; exports.InvalidParams = InvalidParams; exports.Unauthorized = Unauthorized; exports.Forbidden = Forbidden; exports.DatabaseNotEnabled = DatabaseNotEnabled; exports.FetchHandlerNotDefined = FetchHandlerNotDefined; exports.WebSocketHandlerNotDefined = WebSocketHandlerNotDefined; exports.InvalidFetchResponse = InvalidFetchResponse;
315
+ //# sourceMappingURL=chunk-GIR3AFFI.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/nathan/rivetkit/packages/rivetkit/dist/tsup/chunk-GIR3AFFI.cjs","../../src/actor/errors.ts"],"names":[],"mappings":"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A;AACD,MAAA;AACP,IAAA;AACF,EAAA;AACD;AAEO;AACuB,EAAA;AACH,IAAA;AAChB,MAAA;AACD,MAAA;AACP,IAAA;AACF,EAAA;AACD;AAEO;AAC2B,EAAA;AAChC,IAAA;AACC,MAAA;AAEG,MAAA;AAEY,MAAA;AAChB,IAAA;AACD,EAAA;AACD;AAEO;AACmC,EAAA;AACxC,IAAA;AACC,MAAA;AACA,MAAA;AACe,MAAA;AAChB,IAAA;AACD,EAAA;AACD;AAEgC;AACiB,EAAA;AAC/C,IAAA;AACC,MAAA;AAC2B,MAAA;AAC3B,MAAA;AACS,QAAA;AACD,QAAA;AACR,MAAA;AACD,IAAA;AACD,EAAA;AACD;AAEO;AACuB,EAAA;AACtB,IAAA;AACP,EAAA;AACD;AAEO;AACuB,EAAA;AACJ,IAAA;AACzB,EAAA;AACD;AAEkC;AACH,EAAA;AAC7B,IAAA;AACC,MAAA;AAEC,uBAAA;AACD,MAAA;AACS,QAAA;AACT,MAAA;AACD,IAAA;AACkB,IAAA;AACnB,EAAA;AACD;AAE+B;AAC+B,EAAA;AAC5D,IAAA;AACC,MAAA;AAEC,uBAAA;AACD,MAAA;AACS,QAAA;AACE,QAAA;AACX,MAAA;AACD,IAAA;AACkB,IAAA;AACnB,EAAA;AACD;AAEO;AACQ,EAAA;AACb,IAAA;AACC,MAAA;AACA,MAAA;AACD,IAAA;AACD,EAAA;AACD;AAEO;AACQ,EAAA;AACb,IAAA;AACC,MAAA;AACA,MAAA;AACe,MAAA;AAChB,IAAA;AACkB,IAAA;AACnB,EAAA;AACD;AAEO;AACQ,EAAA;AACb,IAAA;AACC,MAAA;AACA,MAAA;AACe,MAAA;AAChB,IAAA;AACkB,IAAA;AACnB,EAAA;AACD;AAEO;AACQ,EAAA;AACb,IAAA;AACC,MAAA;AACA,MAAA;AACe,MAAA;AAChB,IAAA;AACkB,IAAA;AACnB,EAAA;AACD;ADhFiC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/Users/nathan/rivetkit/packages/rivetkit/dist/tsup/chunk-GIR3AFFI.cjs","sourcesContent":[null,"import type { DeconstructedError } from \"@/common/utils\";\n\nexport const INTERNAL_ERROR_CODE = \"internal_error\";\nexport const INTERNAL_ERROR_DESCRIPTION =\n\t\"Internal error. Read the server logs for more details.\";\nexport type InternalErrorMetadata = {};\n\nexport const USER_ERROR_CODE = \"user_error\";\n\ninterface ActorErrorOptions extends ErrorOptions {\n\t/** Error data can safely be serialized in a response to the client. */\n\tpublic?: boolean;\n\t/** Metadata associated with this error. This will be sent to clients. */\n\tmetadata?: unknown;\n}\n\nexport class ActorError extends Error {\n\t__type = \"ActorError\";\n\n\tpublic public: boolean;\n\tpublic metadata?: unknown;\n\tpublic statusCode = 500;\n\n\tpublic static isActorError(\n\t\terror: unknown,\n\t): error is ActorError | DeconstructedError {\n\t\treturn (\n\t\t\ttypeof error === \"object\" &&\n\t\t\t(error as ActorError | DeconstructedError).__type === \"ActorError\"\n\t\t);\n\t}\n\n\tconstructor(\n\t\tpublic readonly code: string,\n\t\tmessage: string,\n\t\topts?: ActorErrorOptions,\n\t) {\n\t\tsuper(message, { cause: opts?.cause });\n\t\tthis.public = opts?.public ?? false;\n\t\tthis.metadata = opts?.metadata;\n\n\t\t// Set status code based on error type\n\t\tif (opts?.public) {\n\t\t\tthis.statusCode = 400; // Bad request for public errors\n\t\t}\n\t}\n\n\ttoString() {\n\t\t// Force stringify to return the message\n\t\treturn this.message;\n\t}\n\n\t/**\n\t * Serialize error for HTTP response\n\t */\n\tserializeForHttp() {\n\t\treturn {\n\t\t\ttype: this.code,\n\t\t\tmessage: this.message,\n\t\t\tmetadata: this.metadata,\n\t\t};\n\t}\n}\n\nexport class InternalError extends ActorError {\n\tconstructor(message: string) {\n\t\tsuper(INTERNAL_ERROR_CODE, message);\n\t}\n}\n\nexport class Unreachable extends InternalError {\n\tconstructor(x: never) {\n\t\tsuper(`Unreachable case: ${x}`);\n\t}\n}\n\nexport class StateNotEnabled extends ActorError {\n\tconstructor() {\n\t\tsuper(\n\t\t\t\"state_not_enabled\",\n\t\t\t\"State not enabled. Must implement `createState` or `state` to use state. (https://www.rivet.gg/docs/actors/state/#initializing-state)\",\n\t\t);\n\t}\n}\n\nexport class ConnStateNotEnabled extends ActorError {\n\tconstructor() {\n\t\tsuper(\n\t\t\t\"conn_state_not_enabled\",\n\t\t\t\"Connection state not enabled. Must implement `createConnectionState` or `connectionState` to use connection state. (https://www.rivet.gg/docs/actors/connections/#connection-state)\",\n\t\t);\n\t}\n}\n\nexport class VarsNotEnabled extends ActorError {\n\tconstructor() {\n\t\tsuper(\n\t\t\t\"vars_not_enabled\",\n\t\t\t\"Variables not enabled. Must implement `createVars` or `vars` to use state. (https://www.rivet.gg/docs/actors/ephemeral-variables/#initializing-variables)\",\n\t\t);\n\t}\n}\n\nexport class ActionTimedOut extends ActorError {\n\tconstructor() {\n\t\tsuper(\n\t\t\t\"action_timed_out\",\n\t\t\t\"Action timed out. This can be increased with: `actor({ options: { action: { timeout: ... } } })`\",\n\t\t\t{ public: true },\n\t\t);\n\t}\n}\n\nexport class ActionNotFound extends ActorError {\n\tconstructor(name: string) {\n\t\tsuper(\n\t\t\t\"action_not_found\",\n\t\t\t`Action '${name}' not found. Validate the action exists on your actor.`,\n\t\t\t{ public: true },\n\t\t);\n\t}\n}\n\nexport class InvalidEncoding extends ActorError {\n\tconstructor(format?: string) {\n\t\tsuper(\n\t\t\t\"invalid_encoding\",\n\t\t\t`Invalid encoding \\`${format}\\`. (https://www.rivet.gg/docs/actors/clients/#actor-client)`,\n\t\t\t{\n\t\t\t\tpublic: true,\n\t\t\t},\n\t\t);\n\t}\n}\n\nexport class ConnNotFound extends ActorError {\n\tconstructor(id?: string) {\n\t\tsuper(\"conn_not_found\", `Connection not found for ID: ${id}`, {\n\t\t\tpublic: true,\n\t\t});\n\t}\n}\n\nexport class IncorrectConnToken extends ActorError {\n\tconstructor() {\n\t\tsuper(\"incorrect_conn_token\", \"Incorrect connection token.\", {\n\t\t\tpublic: true,\n\t\t});\n\t}\n}\n\nexport class MessageTooLong extends ActorError {\n\tconstructor() {\n\t\tsuper(\n\t\t\t\"message_too_long\",\n\t\t\t\"Message too long. This can be configured with: `registry.runServer({ maxIncomingMessageSize: ... })`\",\n\t\t\t{ public: true },\n\t\t);\n\t}\n}\n\nexport class MalformedMessage extends ActorError {\n\tconstructor(cause?: unknown) {\n\t\tsuper(\"malformed_message\", `Malformed message: ${cause}`, {\n\t\t\tpublic: true,\n\t\t\tcause,\n\t\t});\n\t}\n}\n\nexport interface InvalidStateTypeOptions {\n\tpath?: unknown;\n}\n\nexport class InvalidStateType extends ActorError {\n\tconstructor(opts?: InvalidStateTypeOptions) {\n\t\tlet msg = \"\";\n\t\tif (opts?.path) {\n\t\t\tmsg += `Attempted to set invalid state at path \\`${opts.path}\\`.`;\n\t\t} else {\n\t\t\tmsg += \"Attempted to set invalid state.\";\n\t\t}\n\t\tmsg +=\n\t\t\t\" Valid types include: null, undefined, boolean, string, number, BigInt, Date, RegExp, Error, typed arrays (Uint8Array, Int8Array, Float32Array, etc.), Map, Set, Array, and plain objects. (https://www.rivet.gg/docs/actors/state/#limitations)\";\n\t\tsuper(\"invalid_state_type\", msg);\n\t}\n}\n\nexport class Unsupported extends ActorError {\n\tconstructor(feature: string) {\n\t\tsuper(\"unsupported\", `Unsupported feature: ${feature}`);\n\t}\n}\n\n/**\n * Options for the UserError class.\n */\nexport interface UserErrorOptions extends ErrorOptions {\n\t/**\n\t * Machine readable code for this error. Useful for catching different types of errors in try-catch.\n\t */\n\tcode?: string;\n\n\t/**\n\t * Additional metadata related to the error. Useful for understanding context about the error.\n\t */\n\tmetadata?: unknown;\n}\n\n/** Error that can be safely returned to the user. */\nexport class UserError extends ActorError {\n\t/**\n\t * Constructs a new UserError instance.\n\t *\n\t * @param message - The error message to be displayed.\n\t * @param opts - Optional parameters for the error, including a machine-readable code and additional metadata.\n\t */\n\tconstructor(message: string, opts?: UserErrorOptions) {\n\t\tsuper(opts?.code ?? USER_ERROR_CODE, message, {\n\t\t\tpublic: true,\n\t\t\tmetadata: opts?.metadata,\n\t\t});\n\t}\n}\n\nexport class InvalidQueryJSON extends ActorError {\n\tconstructor(error?: unknown) {\n\t\tsuper(\"invalid_query_json\", `Invalid query JSON: ${error}`, {\n\t\t\tpublic: true,\n\t\t\tcause: error,\n\t\t});\n\t}\n}\n\nexport class InvalidRequest extends ActorError {\n\tconstructor(error?: unknown) {\n\t\tsuper(\"invalid_request\", `Invalid request: ${error}`, {\n\t\t\tpublic: true,\n\t\t\tcause: error,\n\t\t});\n\t}\n}\n\nexport class ActorNotFound extends ActorError {\n\tconstructor(identifier?: string) {\n\t\tsuper(\n\t\t\t\"actor_not_found\",\n\t\t\tidentifier\n\t\t\t\t? `Actor not found: ${identifier} (https://www.rivet.gg/docs/actors/clients/#actor-client)`\n\t\t\t\t: \"Actor not found (https://www.rivet.gg/docs/actors/clients/#actor-client)\",\n\t\t\t{ public: true },\n\t\t);\n\t}\n}\n\nexport class ActorAlreadyExists extends ActorError {\n\tconstructor(name: string, key: string[]) {\n\t\tsuper(\n\t\t\t\"actor_already_exists\",\n\t\t\t`Actor already exists with name '${name}' and key '${JSON.stringify(key)}' (https://www.rivet.gg/docs/actors/clients/#actor-client)`,\n\t\t\t{ public: true },\n\t\t);\n\t}\n}\n\nexport class ProxyError extends ActorError {\n\tconstructor(operation: string, error?: unknown) {\n\t\tsuper(\n\t\t\t\"proxy_error\",\n\t\t\t`Error proxying ${operation}, this is likely an internal error: ${error}`,\n\t\t\t{\n\t\t\t\tpublic: true,\n\t\t\t\tcause: error,\n\t\t\t},\n\t\t);\n\t}\n}\n\nexport class InvalidActionRequest extends ActorError {\n\tconstructor(message: string) {\n\t\tsuper(\"invalid_action_request\", message, { public: true });\n\t}\n}\n\nexport class InvalidParams extends ActorError {\n\tconstructor(message: string) {\n\t\tsuper(\"invalid_params\", message, { public: true });\n\t}\n}\n\nexport class Unauthorized extends ActorError {\n\tconstructor(message?: string) {\n\t\tsuper(\n\t\t\t\"unauthorized\",\n\t\t\tmessage ??\n\t\t\t\t\"Unauthorized. Access denied. (https://www.rivet.gg/docs/actors/authentication/)\",\n\t\t\t{\n\t\t\t\tpublic: true,\n\t\t\t},\n\t\t);\n\t\tthis.statusCode = 401;\n\t}\n}\n\nexport class Forbidden extends ActorError {\n\tconstructor(message?: string, opts?: { metadata?: unknown }) {\n\t\tsuper(\n\t\t\t\"forbidden\",\n\t\t\tmessage ??\n\t\t\t\t\"Forbidden. Access denied. (https://www.rivet.gg/docs/actors/authentication/)\",\n\t\t\t{\n\t\t\t\tpublic: true,\n\t\t\t\tmetadata: opts?.metadata,\n\t\t\t},\n\t\t);\n\t\tthis.statusCode = 403;\n\t}\n}\n\nexport class DatabaseNotEnabled extends ActorError {\n\tconstructor() {\n\t\tsuper(\n\t\t\t\"database_not_enabled\",\n\t\t\t\"Database not enabled. Must implement `database` to use database.\",\n\t\t);\n\t}\n}\n\nexport class FetchHandlerNotDefined extends ActorError {\n\tconstructor() {\n\t\tsuper(\n\t\t\t\"fetch_handler_not_defined\",\n\t\t\t\"Raw HTTP handler not defined. Actor must implement `onFetch` to handle raw HTTP requests. (https://www.rivet.gg/docs/actors/fetch-and-websocket-handler/)\",\n\t\t\t{ public: true },\n\t\t);\n\t\tthis.statusCode = 404;\n\t}\n}\n\nexport class WebSocketHandlerNotDefined extends ActorError {\n\tconstructor() {\n\t\tsuper(\n\t\t\t\"websocket_handler_not_defined\",\n\t\t\t\"Raw WebSocket handler not defined. Actor must implement `onWebSocket` to handle raw WebSocket connections. (https://www.rivet.gg/docs/actors/fetch-and-websocket-handler/)\",\n\t\t\t{ public: true },\n\t\t);\n\t\tthis.statusCode = 404;\n\t}\n}\n\nexport class InvalidFetchResponse extends ActorError {\n\tconstructor() {\n\t\tsuper(\n\t\t\t\"invalid_fetch_response\",\n\t\t\t\"Actor's onFetch handler must return a Response object. Returning void/undefined is not allowed. (https://www.rivet.gg/docs/actors/fetch-and-websocket-handler/)\",\n\t\t\t{ public: true },\n\t\t);\n\t\tthis.statusCode = 500;\n\t}\n}\n"]}