durable-actors 0.2.4

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 (377) hide show
  1. package/LICENSE.md +9 -0
  2. package/README.md +206 -0
  3. package/dist/actor/actor.d.ts +66 -0
  4. package/dist/actor/actor.d.ts.map +1 -0
  5. package/dist/actor/actor.js +144 -0
  6. package/dist/actor/actor.js.map +1 -0
  7. package/dist/actor/decorators.d.ts +6 -0
  8. package/dist/actor/decorators.d.ts.map +1 -0
  9. package/dist/actor/decorators.js +24 -0
  10. package/dist/actor/decorators.js.map +1 -0
  11. package/dist/actor/identity.d.ts +16 -0
  12. package/dist/actor/identity.d.ts.map +1 -0
  13. package/dist/actor/identity.js +29 -0
  14. package/dist/actor/identity.js.map +1 -0
  15. package/dist/actor/invocationContext.d.ts +4 -0
  16. package/dist/actor/invocationContext.d.ts.map +1 -0
  17. package/dist/actor/invocationContext.js +10 -0
  18. package/dist/actor/invocationContext.js.map +1 -0
  19. package/dist/actor/schema.d.ts +22 -0
  20. package/dist/actor/schema.d.ts.map +1 -0
  21. package/dist/actor/schema.js +8 -0
  22. package/dist/actor/schema.js.map +1 -0
  23. package/dist/actor/socket.d.ts +88 -0
  24. package/dist/actor/socket.d.ts.map +1 -0
  25. package/dist/actor/socket.js +216 -0
  26. package/dist/actor/socket.js.map +1 -0
  27. package/dist/actor/socketProtocol.d.ts +85 -0
  28. package/dist/actor/socketProtocol.d.ts.map +1 -0
  29. package/dist/actor/socketProtocol.js +95 -0
  30. package/dist/actor/socketProtocol.js.map +1 -0
  31. package/dist/actor/socketValidation.d.ts +29 -0
  32. package/dist/actor/socketValidation.d.ts.map +1 -0
  33. package/dist/actor/socketValidation.js +73 -0
  34. package/dist/actor/socketValidation.js.map +1 -0
  35. package/dist/backend.d.ts +13 -0
  36. package/dist/backend.d.ts.map +1 -0
  37. package/dist/backend.js +45 -0
  38. package/dist/backend.js.map +1 -0
  39. package/dist/cli/actor-source-watcher.d.ts +11 -0
  40. package/dist/cli/actor-source-watcher.d.ts.map +1 -0
  41. package/dist/cli/actor-source-watcher.js +55 -0
  42. package/dist/cli/actor-source-watcher.js.map +1 -0
  43. package/dist/cli/connection.d.ts +14 -0
  44. package/dist/cli/connection.d.ts.map +1 -0
  45. package/dist/cli/connection.js +16 -0
  46. package/dist/cli/connection.js.map +1 -0
  47. package/dist/cli/control-plane.d.ts +34 -0
  48. package/dist/cli/control-plane.d.ts.map +1 -0
  49. package/dist/cli/control-plane.js +99 -0
  50. package/dist/cli/control-plane.js.map +1 -0
  51. package/dist/cli/deploy.d.ts +4 -0
  52. package/dist/cli/deploy.d.ts.map +1 -0
  53. package/dist/cli/deploy.js +39 -0
  54. package/dist/cli/deploy.js.map +1 -0
  55. package/dist/cli/dev.d.ts +4 -0
  56. package/dist/cli/dev.d.ts.map +1 -0
  57. package/dist/cli/dev.js +121 -0
  58. package/dist/cli/dev.js.map +1 -0
  59. package/dist/cli/generate.d.ts +4 -0
  60. package/dist/cli/generate.d.ts.map +1 -0
  61. package/dist/cli/generate.js +59 -0
  62. package/dist/cli/generate.js.map +1 -0
  63. package/dist/cli/objects.d.ts +4 -0
  64. package/dist/cli/objects.d.ts.map +1 -0
  65. package/dist/cli/objects.js +68 -0
  66. package/dist/cli/objects.js.map +1 -0
  67. package/dist/cli/observe.d.ts +23 -0
  68. package/dist/cli/observe.d.ts.map +1 -0
  69. package/dist/cli/observe.js +245 -0
  70. package/dist/cli/observe.js.map +1 -0
  71. package/dist/cli/rust-runtime.d.ts +10 -0
  72. package/dist/cli/rust-runtime.d.ts.map +1 -0
  73. package/dist/cli/rust-runtime.js +62 -0
  74. package/dist/cli/rust-runtime.js.map +1 -0
  75. package/dist/cli.d.ts +3 -0
  76. package/dist/cli.d.ts.map +1 -0
  77. package/dist/cli.js +131 -0
  78. package/dist/cli.js.map +1 -0
  79. package/dist/client/actorHostGrpc.d.ts +50 -0
  80. package/dist/client/actorHostGrpc.d.ts.map +1 -0
  81. package/dist/client/actorHostGrpc.js +111 -0
  82. package/dist/client/actorHostGrpc.js.map +1 -0
  83. package/dist/client/client.d.ts +12 -0
  84. package/dist/client/client.d.ts.map +1 -0
  85. package/dist/client/client.js +20 -0
  86. package/dist/client/client.js.map +1 -0
  87. package/dist/client/clientSettings.d.ts +8 -0
  88. package/dist/client/clientSettings.d.ts.map +1 -0
  89. package/dist/client/clientSettings.js +45 -0
  90. package/dist/client/clientSettings.js.map +1 -0
  91. package/dist/client/remoteClient.d.ts +49 -0
  92. package/dist/client/remoteClient.d.ts.map +1 -0
  93. package/dist/client/remoteClient.js +286 -0
  94. package/dist/client/remoteClient.js.map +1 -0
  95. package/dist/client/socketConnection.d.ts +18 -0
  96. package/dist/client/socketConnection.d.ts.map +1 -0
  97. package/dist/client/socketConnection.js +48 -0
  98. package/dist/client/socketConnection.js.map +1 -0
  99. package/dist/client/telemetry.d.ts +14 -0
  100. package/dist/client/telemetry.d.ts.map +1 -0
  101. package/dist/client/telemetry.js +23 -0
  102. package/dist/client/telemetry.js.map +1 -0
  103. package/dist/compiler/actor-build.d.ts +4 -0
  104. package/dist/compiler/actor-build.d.ts.map +1 -0
  105. package/dist/compiler/actor-build.js +36 -0
  106. package/dist/compiler/actor-build.js.map +1 -0
  107. package/dist/compiler/actor-compiler.d.ts +30 -0
  108. package/dist/compiler/actor-compiler.d.ts.map +1 -0
  109. package/dist/compiler/actor-compiler.js +300 -0
  110. package/dist/compiler/actor-compiler.js.map +1 -0
  111. package/dist/compiler/deployment-build.d.ts +2 -0
  112. package/dist/compiler/deployment-build.d.ts.map +1 -0
  113. package/dist/compiler/deployment-build.js +23 -0
  114. package/dist/compiler/deployment-build.js.map +1 -0
  115. package/dist/compiler/features/persistence.d.ts +11 -0
  116. package/dist/compiler/features/persistence.d.ts.map +1 -0
  117. package/dist/compiler/features/persistence.js +102 -0
  118. package/dist/compiler/features/persistence.js.map +1 -0
  119. package/dist/compiler/features/reentrancy.d.ts +9 -0
  120. package/dist/compiler/features/reentrancy.d.ts.map +1 -0
  121. package/dist/compiler/features/reentrancy.js +44 -0
  122. package/dist/compiler/features/reentrancy.js.map +1 -0
  123. package/dist/compiler/generators/backend-generator.d.ts +5 -0
  124. package/dist/compiler/generators/backend-generator.d.ts.map +1 -0
  125. package/dist/compiler/generators/backend-generator.js +181 -0
  126. package/dist/compiler/generators/backend-generator.js.map +1 -0
  127. package/dist/compiler/generators/client-generator.d.ts +5 -0
  128. package/dist/compiler/generators/client-generator.d.ts.map +1 -0
  129. package/dist/compiler/generators/client-generator.js +28 -0
  130. package/dist/compiler/generators/client-generator.js.map +1 -0
  131. package/dist/compiler/generators/typescript-generator.d.ts +8 -0
  132. package/dist/compiler/generators/typescript-generator.d.ts.map +1 -0
  133. package/dist/compiler/generators/typescript-generator.js +154 -0
  134. package/dist/compiler/generators/typescript-generator.js.map +1 -0
  135. package/dist/compiler/generators/usage-comment.d.ts +3 -0
  136. package/dist/compiler/generators/usage-comment.d.ts.map +1 -0
  137. package/dist/compiler/generators/usage-comment.js +6 -0
  138. package/dist/compiler/generators/usage-comment.js.map +1 -0
  139. package/dist/compiler/json-schema.d.ts +7 -0
  140. package/dist/compiler/json-schema.d.ts.map +1 -0
  141. package/dist/compiler/json-schema.js +122 -0
  142. package/dist/compiler/json-schema.js.map +1 -0
  143. package/dist/compiler/public-schema.d.ts +4 -0
  144. package/dist/compiler/public-schema.d.ts.map +1 -0
  145. package/dist/compiler/public-schema.js +46 -0
  146. package/dist/compiler/public-schema.js.map +1 -0
  147. package/dist/compiler/rpc-contract.d.ts +5 -0
  148. package/dist/compiler/rpc-contract.d.ts.map +1 -0
  149. package/dist/compiler/rpc-contract.js +95 -0
  150. package/dist/compiler/rpc-contract.js.map +1 -0
  151. package/dist/compiler/socket-contract.d.ts +6 -0
  152. package/dist/compiler/socket-contract.d.ts.map +1 -0
  153. package/dist/compiler/socket-contract.js +36 -0
  154. package/dist/compiler/socket-contract.js.map +1 -0
  155. package/dist/compiler/types.d.ts +51 -0
  156. package/dist/compiler/types.d.ts.map +1 -0
  157. package/dist/compiler/types.js +9 -0
  158. package/dist/compiler/types.js.map +1 -0
  159. package/dist/compiler/validate-public-contract.d.ts +4 -0
  160. package/dist/compiler/validate-public-contract.d.ts.map +1 -0
  161. package/dist/compiler/validate-public-contract.js +155 -0
  162. package/dist/compiler/validate-public-contract.js.map +1 -0
  163. package/dist/environment.d.ts +2 -0
  164. package/dist/environment.d.ts.map +1 -0
  165. package/dist/environment.js +18 -0
  166. package/dist/environment.js.map +1 -0
  167. package/dist/errors.d.ts +27 -0
  168. package/dist/errors.d.ts.map +1 -0
  169. package/dist/errors.js +52 -0
  170. package/dist/errors.js.map +1 -0
  171. package/dist/generated/durable_object/v1/ActivateActorReply.d.ts +8 -0
  172. package/dist/generated/durable_object/v1/ActivateActorReply.d.ts.map +1 -0
  173. package/dist/generated/durable_object/v1/ActivateActorReply.js +3 -0
  174. package/dist/generated/durable_object/v1/ActivateActorReply.js.map +1 -0
  175. package/dist/generated/durable_object/v1/ActivateActorRequest.d.ts +8 -0
  176. package/dist/generated/durable_object/v1/ActivateActorRequest.d.ts.map +1 -0
  177. package/dist/generated/durable_object/v1/ActivateActorRequest.js +3 -0
  178. package/dist/generated/durable_object/v1/ActivateActorRequest.js.map +1 -0
  179. package/dist/generated/durable_object/v1/ActorCompleted.d.ts +9 -0
  180. package/dist/generated/durable_object/v1/ActorCompleted.d.ts.map +1 -0
  181. package/dist/generated/durable_object/v1/ActorCompleted.js +3 -0
  182. package/dist/generated/durable_object/v1/ActorCompleted.js.map +1 -0
  183. package/dist/generated/durable_object/v1/ActorControlPlaneService.d.ts +21 -0
  184. package/dist/generated/durable_object/v1/ActorControlPlaneService.d.ts.map +1 -0
  185. package/dist/generated/durable_object/v1/ActorControlPlaneService.js +3 -0
  186. package/dist/generated/durable_object/v1/ActorControlPlaneService.js.map +1 -0
  187. package/dist/generated/durable_object/v1/ActorFailed.d.ts +9 -0
  188. package/dist/generated/durable_object/v1/ActorFailed.d.ts.map +1 -0
  189. package/dist/generated/durable_object/v1/ActorFailed.js +3 -0
  190. package/dist/generated/durable_object/v1/ActorFailed.js.map +1 -0
  191. package/dist/generated/durable_object/v1/ActorHostService.d.ts +56 -0
  192. package/dist/generated/durable_object/v1/ActorHostService.d.ts.map +1 -0
  193. package/dist/generated/durable_object/v1/ActorHostService.js +3 -0
  194. package/dist/generated/durable_object/v1/ActorHostService.js.map +1 -0
  195. package/dist/generated/durable_object/v1/ActorKey.d.ts +11 -0
  196. package/dist/generated/durable_object/v1/ActorKey.d.ts.map +1 -0
  197. package/dist/generated/durable_object/v1/ActorKey.js +3 -0
  198. package/dist/generated/durable_object/v1/ActorKey.js.map +1 -0
  199. package/dist/generated/durable_object/v1/ControlPlaneReply.d.ts +7 -0
  200. package/dist/generated/durable_object/v1/ControlPlaneReply.d.ts.map +1 -0
  201. package/dist/generated/durable_object/v1/ControlPlaneReply.js +3 -0
  202. package/dist/generated/durable_object/v1/ControlPlaneReply.js.map +1 -0
  203. package/dist/generated/durable_object/v1/ControlPlaneRequest.d.ts +7 -0
  204. package/dist/generated/durable_object/v1/ControlPlaneRequest.d.ts.map +1 -0
  205. package/dist/generated/durable_object/v1/ControlPlaneRequest.js +3 -0
  206. package/dist/generated/durable_object/v1/ControlPlaneRequest.js.map +1 -0
  207. package/dist/generated/durable_object/v1/Empty.d.ts +5 -0
  208. package/dist/generated/durable_object/v1/Empty.d.ts.map +1 -0
  209. package/dist/generated/durable_object/v1/Empty.js +3 -0
  210. package/dist/generated/durable_object/v1/Empty.js.map +1 -0
  211. package/dist/generated/durable_object/v1/HostInvokeActorRequest.d.ts +11 -0
  212. package/dist/generated/durable_object/v1/HostInvokeActorRequest.d.ts.map +1 -0
  213. package/dist/generated/durable_object/v1/HostInvokeActorRequest.js +3 -0
  214. package/dist/generated/durable_object/v1/HostInvokeActorRequest.js.map +1 -0
  215. package/dist/generated/durable_object/v1/HostSocketEventRequest.d.ts +17 -0
  216. package/dist/generated/durable_object/v1/HostSocketEventRequest.d.ts.map +1 -0
  217. package/dist/generated/durable_object/v1/HostSocketEventRequest.js +3 -0
  218. package/dist/generated/durable_object/v1/HostSocketEventRequest.js.map +1 -0
  219. package/dist/generated/durable_object/v1/InvokeActorReply.d.ts +16 -0
  220. package/dist/generated/durable_object/v1/InvokeActorReply.d.ts.map +1 -0
  221. package/dist/generated/durable_object/v1/InvokeActorReply.js +3 -0
  222. package/dist/generated/durable_object/v1/InvokeActorReply.js.map +1 -0
  223. package/dist/generated/durable_object/v1/InvokeActorRequest.d.ts +14 -0
  224. package/dist/generated/durable_object/v1/InvokeActorRequest.d.ts.map +1 -0
  225. package/dist/generated/durable_object/v1/InvokeActorRequest.js +3 -0
  226. package/dist/generated/durable_object/v1/InvokeActorRequest.js.map +1 -0
  227. package/dist/generated/durable_object/v1/PublishSocketEffectsRequest.d.ts +13 -0
  228. package/dist/generated/durable_object/v1/PublishSocketEffectsRequest.d.ts.map +1 -0
  229. package/dist/generated/durable_object/v1/PublishSocketEffectsRequest.js +3 -0
  230. package/dist/generated/durable_object/v1/PublishSocketEffectsRequest.js.map +1 -0
  231. package/dist/generated/durable_object/v1/ReplicaService.d.ts +42 -0
  232. package/dist/generated/durable_object/v1/ReplicaService.d.ts.map +1 -0
  233. package/dist/generated/durable_object/v1/ReplicaService.js +3 -0
  234. package/dist/generated/durable_object/v1/ReplicaService.js.map +1 -0
  235. package/dist/generated/durable_object/v1/ReplicaSessionHead.d.ts +14 -0
  236. package/dist/generated/durable_object/v1/ReplicaSessionHead.d.ts.map +1 -0
  237. package/dist/generated/durable_object/v1/ReplicaSessionHead.js +3 -0
  238. package/dist/generated/durable_object/v1/ReplicaSessionHead.js.map +1 -0
  239. package/dist/generated/durable_object/v1/ReplicaSnapshotRef.d.ts +14 -0
  240. package/dist/generated/durable_object/v1/ReplicaSnapshotRef.d.ts.map +1 -0
  241. package/dist/generated/durable_object/v1/ReplicaSnapshotRef.js +3 -0
  242. package/dist/generated/durable_object/v1/ReplicaSnapshotRef.js.map +1 -0
  243. package/dist/generated/durable_object/v1/ReplicaStreamHead.d.ts +11 -0
  244. package/dist/generated/durable_object/v1/ReplicaStreamHead.d.ts.map +1 -0
  245. package/dist/generated/durable_object/v1/ReplicaStreamHead.js +3 -0
  246. package/dist/generated/durable_object/v1/ReplicaStreamHead.js.map +1 -0
  247. package/dist/generated/durable_object/v1/ReplicaStreamIdentity.d.ts +14 -0
  248. package/dist/generated/durable_object/v1/ReplicaStreamIdentity.d.ts.map +1 -0
  249. package/dist/generated/durable_object/v1/ReplicaStreamIdentity.js +3 -0
  250. package/dist/generated/durable_object/v1/ReplicaStreamIdentity.js.map +1 -0
  251. package/dist/generated/durable_object/v1/Reroute.d.ts +5 -0
  252. package/dist/generated/durable_object/v1/Reroute.d.ts.map +1 -0
  253. package/dist/generated/durable_object/v1/Reroute.js +3 -0
  254. package/dist/generated/durable_object/v1/Reroute.js.map +1 -0
  255. package/dist/generated/durable_object/v1/SnapshotData.d.ts +7 -0
  256. package/dist/generated/durable_object/v1/SnapshotData.d.ts.map +1 -0
  257. package/dist/generated/durable_object/v1/SnapshotData.js +3 -0
  258. package/dist/generated/durable_object/v1/SnapshotData.js.map +1 -0
  259. package/dist/generated/durable_object/v1/SnapshotService.d.ts +32 -0
  260. package/dist/generated/durable_object/v1/SnapshotService.d.ts.map +1 -0
  261. package/dist/generated/durable_object/v1/SnapshotService.js +3 -0
  262. package/dist/generated/durable_object/v1/SnapshotService.js.map +1 -0
  263. package/dist/generated/durable_object/v1/SnapshotWriteReply.d.ts +7 -0
  264. package/dist/generated/durable_object/v1/SnapshotWriteReply.d.ts.map +1 -0
  265. package/dist/generated/durable_object/v1/SnapshotWriteReply.js +3 -0
  266. package/dist/generated/durable_object/v1/SnapshotWriteReply.js.map +1 -0
  267. package/dist/generated/durable_object.d.ts +69 -0
  268. package/dist/generated/durable_object.d.ts.map +1 -0
  269. package/dist/generated/durable_object.js +2 -0
  270. package/dist/generated/durable_object.js.map +1 -0
  271. package/dist/generated/durable_object.proto +117 -0
  272. package/dist/generated.browser.d.ts +6 -0
  273. package/dist/generated.browser.d.ts.map +1 -0
  274. package/dist/generated.browser.js +10 -0
  275. package/dist/generated.browser.js.map +1 -0
  276. package/dist/generated.d.ts +3 -0
  277. package/dist/generated.d.ts.map +1 -0
  278. package/dist/generated.js +3 -0
  279. package/dist/generated.js.map +1 -0
  280. package/dist/host/actor-host.d.ts +22 -0
  281. package/dist/host/actor-host.d.ts.map +1 -0
  282. package/dist/host/actor-host.js +392 -0
  283. package/dist/host/actor-host.js.map +1 -0
  284. package/dist/host/actor-runtime.d.ts +34 -0
  285. package/dist/host/actor-runtime.d.ts.map +1 -0
  286. package/dist/host/actor-runtime.js +279 -0
  287. package/dist/host/actor-runtime.js.map +1 -0
  288. package/dist/host/actor-worker.d.ts +2 -0
  289. package/dist/host/actor-worker.d.ts.map +1 -0
  290. package/dist/host/actor-worker.js +154 -0
  291. package/dist/host/actor-worker.js.map +1 -0
  292. package/dist/host/generic-host.d.ts +3 -0
  293. package/dist/host/generic-host.d.ts.map +1 -0
  294. package/dist/host/generic-host.js +87 -0
  295. package/dist/host/generic-host.js.map +1 -0
  296. package/dist/host/protocol.d.ts +347 -0
  297. package/dist/host/protocol.d.ts.map +1 -0
  298. package/dist/host/protocol.js +76 -0
  299. package/dist/host/protocol.js.map +1 -0
  300. package/dist/host/types.d.ts +42 -0
  301. package/dist/host/types.d.ts.map +1 -0
  302. package/dist/host/types.js +2 -0
  303. package/dist/host/types.js.map +1 -0
  304. package/dist/host/worker-supervisor.d.ts +85 -0
  305. package/dist/host/worker-supervisor.d.ts.map +1 -0
  306. package/dist/host/worker-supervisor.js +423 -0
  307. package/dist/host/worker-supervisor.js.map +1 -0
  308. package/dist/host.d.ts +3 -0
  309. package/dist/host.d.ts.map +1 -0
  310. package/dist/host.js +3 -0
  311. package/dist/host.js.map +1 -0
  312. package/dist/index.d.ts +7 -0
  313. package/dist/index.d.ts.map +1 -0
  314. package/dist/index.js +4 -0
  315. package/dist/index.js.map +1 -0
  316. package/dist/json.d.ts +13 -0
  317. package/dist/json.d.ts.map +1 -0
  318. package/dist/json.js +34 -0
  319. package/dist/json.js.map +1 -0
  320. package/dist/localRuntime.d.ts +27 -0
  321. package/dist/localRuntime.d.ts.map +1 -0
  322. package/dist/localRuntime.js +112 -0
  323. package/dist/localRuntime.js.map +1 -0
  324. package/dist/proxy.d.ts +43 -0
  325. package/dist/proxy.d.ts.map +1 -0
  326. package/dist/proxy.js +76 -0
  327. package/dist/proxy.js.map +1 -0
  328. package/dist/runtimeInstaller.d.ts +16 -0
  329. package/dist/runtimeInstaller.d.ts.map +1 -0
  330. package/dist/runtimeInstaller.js +95 -0
  331. package/dist/runtimeInstaller.js.map +1 -0
  332. package/dist/templates/actor/LICENSE.md +9 -0
  333. package/dist/templates/actor/README.md +33 -0
  334. package/dist/templates/actor/gitignore +7 -0
  335. package/dist/templates/actor/package.json +20 -0
  336. package/dist/templates/actor/src/durable-objects.ts +13 -0
  337. package/dist/templates/actor/tsconfig.json +11 -0
  338. package/dist/templates/ai-chat/.env.example +1 -0
  339. package/dist/templates/ai-chat/LICENSE.md +9 -0
  340. package/dist/templates/ai-chat/README.md +41 -0
  341. package/dist/templates/ai-chat/gitignore +8 -0
  342. package/dist/templates/ai-chat/index.html +12 -0
  343. package/dist/templates/ai-chat/package.json +30 -0
  344. package/dist/templates/ai-chat/src/Chat.tsx +37 -0
  345. package/dist/templates/ai-chat/src/backend.ts +41 -0
  346. package/dist/templates/ai-chat/src/durable-objects.ts +15 -0
  347. package/dist/templates/ai-chat/tsconfig.json +13 -0
  348. package/dist/templates/chat/LICENSE.md +9 -0
  349. package/dist/templates/chat/README.md +29 -0
  350. package/dist/templates/chat/gitignore +8 -0
  351. package/dist/templates/chat/index.html +12 -0
  352. package/dist/templates/chat/package.json +27 -0
  353. package/dist/templates/chat/src/Chat.tsx +63 -0
  354. package/dist/templates/chat/src/backend.ts +20 -0
  355. package/dist/templates/chat/src/durable-objects.ts +18 -0
  356. package/dist/templates/chat/tsconfig.json +13 -0
  357. package/dist/templates/documents/LICENSE.md +9 -0
  358. package/dist/templates/documents/README.md +38 -0
  359. package/dist/templates/documents/gitignore +8 -0
  360. package/dist/templates/documents/index.html +12 -0
  361. package/dist/templates/documents/package.json +35 -0
  362. package/dist/templates/documents/src/App.tsx +81 -0
  363. package/dist/templates/documents/src/Editor.tsx +69 -0
  364. package/dist/templates/documents/src/backend.ts +18 -0
  365. package/dist/templates/documents/src/collaboration.ts +46 -0
  366. package/dist/templates/documents/src/durable-objects.ts +48 -0
  367. package/dist/templates/documents/src/style.css +145 -0
  368. package/dist/templates/documents/tsconfig.json +13 -0
  369. package/dist/wire/contract.d.ts +9 -0
  370. package/dist/wire/contract.d.ts.map +1 -0
  371. package/dist/wire/contract.js +2 -0
  372. package/dist/wire/contract.js.map +1 -0
  373. package/dist/wire/public-contract.d.ts +36 -0
  374. package/dist/wire/public-contract.d.ts.map +1 -0
  375. package/dist/wire/public-contract.js +2 -0
  376. package/dist/wire/public-contract.js.map +1 -0
  377. package/package.json +111 -0
@@ -0,0 +1,347 @@
1
+ import { z } from "zod";
2
+ import type { ActorIdentity } from "../actor/identity.js";
3
+ import type { ActorSchema } from "../actor/schema.js";
4
+ import type { SocketConnection, SocketEffect } from "../actor/socketProtocol.js";
5
+ import type { JsonObject, JsonValue } from "../json.js";
6
+ declare function parseActorSessionServerMessage(document: string): ActorSessionServerMessage;
7
+ declare function failedReply(code: string, message: string): FailedReply;
8
+ declare const invokeCommandSchema: z.ZodObject<{
9
+ type: z.ZodLiteral<"invoke">;
10
+ request_id: z.ZodString;
11
+ actor: z.ZodObject<{
12
+ project_id: z.ZodString;
13
+ actor_name: z.ZodString;
14
+ actor_id: z.ZodString;
15
+ }, z.core.$strict>;
16
+ method: z.ZodString;
17
+ args: z.ZodArray<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>;
18
+ state: z.ZodOptional<z.ZodNullable<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>;
19
+ resident_only: z.ZodOptional<z.ZodBoolean>;
20
+ }, z.core.$strip>;
21
+ declare const websocketEventCommandSchema: z.ZodObject<{
22
+ type: z.ZodLiteral<"websocket_event">;
23
+ request_id: z.ZodString;
24
+ actor: z.ZodObject<{
25
+ project_id: z.ZodString;
26
+ actor_name: z.ZodString;
27
+ actor_id: z.ZodString;
28
+ }, z.core.$strict>;
29
+ event: z.ZodDiscriminatedUnion<[z.ZodObject<{
30
+ type: z.ZodLiteral<"connect">;
31
+ connection: z.ZodObject<{
32
+ id: z.ZodString;
33
+ metadata: z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>;
34
+ tags: z.ZodArray<z.ZodString>;
35
+ }, z.core.$strip>;
36
+ }, z.core.$strip>, z.ZodObject<{
37
+ type: z.ZodLiteral<"message">;
38
+ connection_id: z.ZodString;
39
+ message: z.ZodDiscriminatedUnion<[z.ZodObject<{
40
+ type: z.ZodLiteral<"text">;
41
+ data: z.ZodString;
42
+ }, z.core.$strip>, z.ZodObject<{
43
+ type: z.ZodLiteral<"binary">;
44
+ data: z.ZodString;
45
+ }, z.core.$strip>], "type">;
46
+ }, z.core.$strip>, z.ZodObject<{
47
+ type: z.ZodLiteral<"disconnect">;
48
+ connection: z.ZodObject<{
49
+ id: z.ZodString;
50
+ metadata: z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>;
51
+ tags: z.ZodArray<z.ZodString>;
52
+ }, z.core.$strip>;
53
+ code: z.ZodNumber;
54
+ reason: z.ZodString;
55
+ was_clean: z.ZodBoolean;
56
+ }, z.core.$strip>], "type">;
57
+ connections: z.ZodArray<z.ZodObject<{
58
+ id: z.ZodString;
59
+ metadata: z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>;
60
+ tags: z.ZodArray<z.ZodString>;
61
+ }, z.core.$strip>>;
62
+ state: z.ZodOptional<z.ZodNullable<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>;
63
+ resident_only: z.ZodOptional<z.ZodBoolean>;
64
+ }, z.core.$strip>;
65
+ declare const evictCommandSchema: z.ZodObject<{
66
+ type: z.ZodLiteral<"evict">;
67
+ actor: z.ZodObject<{
68
+ project_id: z.ZodString;
69
+ actor_name: z.ZodString;
70
+ actor_id: z.ZodString;
71
+ }, z.core.$strict>;
72
+ }, z.core.$strip>;
73
+ declare const hydrateCommandSchema: z.ZodObject<{
74
+ type: z.ZodLiteral<"hydrate">;
75
+ actor: z.ZodObject<{
76
+ project_id: z.ZodString;
77
+ actor_name: z.ZodString;
78
+ actor_id: z.ZodString;
79
+ }, z.core.$strict>;
80
+ state: z.ZodOptional<z.ZodNullable<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>;
81
+ resident_only: z.ZodOptional<z.ZodBoolean>;
82
+ }, z.core.$strip>;
83
+ declare const executorCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
84
+ type: z.ZodLiteral<"invoke">;
85
+ request_id: z.ZodString;
86
+ actor: z.ZodObject<{
87
+ project_id: z.ZodString;
88
+ actor_name: z.ZodString;
89
+ actor_id: z.ZodString;
90
+ }, z.core.$strict>;
91
+ method: z.ZodString;
92
+ args: z.ZodArray<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>;
93
+ state: z.ZodOptional<z.ZodNullable<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>;
94
+ resident_only: z.ZodOptional<z.ZodBoolean>;
95
+ }, z.core.$strip>, z.ZodObject<{
96
+ type: z.ZodLiteral<"websocket_event">;
97
+ request_id: z.ZodString;
98
+ actor: z.ZodObject<{
99
+ project_id: z.ZodString;
100
+ actor_name: z.ZodString;
101
+ actor_id: z.ZodString;
102
+ }, z.core.$strict>;
103
+ event: z.ZodDiscriminatedUnion<[z.ZodObject<{
104
+ type: z.ZodLiteral<"connect">;
105
+ connection: z.ZodObject<{
106
+ id: z.ZodString;
107
+ metadata: z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>;
108
+ tags: z.ZodArray<z.ZodString>;
109
+ }, z.core.$strip>;
110
+ }, z.core.$strip>, z.ZodObject<{
111
+ type: z.ZodLiteral<"message">;
112
+ connection_id: z.ZodString;
113
+ message: z.ZodDiscriminatedUnion<[z.ZodObject<{
114
+ type: z.ZodLiteral<"text">;
115
+ data: z.ZodString;
116
+ }, z.core.$strip>, z.ZodObject<{
117
+ type: z.ZodLiteral<"binary">;
118
+ data: z.ZodString;
119
+ }, z.core.$strip>], "type">;
120
+ }, z.core.$strip>, z.ZodObject<{
121
+ type: z.ZodLiteral<"disconnect">;
122
+ connection: z.ZodObject<{
123
+ id: z.ZodString;
124
+ metadata: z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>;
125
+ tags: z.ZodArray<z.ZodString>;
126
+ }, z.core.$strip>;
127
+ code: z.ZodNumber;
128
+ reason: z.ZodString;
129
+ was_clean: z.ZodBoolean;
130
+ }, z.core.$strip>], "type">;
131
+ connections: z.ZodArray<z.ZodObject<{
132
+ id: z.ZodString;
133
+ metadata: z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>;
134
+ tags: z.ZodArray<z.ZodString>;
135
+ }, z.core.$strip>>;
136
+ state: z.ZodOptional<z.ZodNullable<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>;
137
+ resident_only: z.ZodOptional<z.ZodBoolean>;
138
+ }, z.core.$strip>, z.ZodObject<{
139
+ type: z.ZodLiteral<"evict">;
140
+ actor: z.ZodObject<{
141
+ project_id: z.ZodString;
142
+ actor_name: z.ZodString;
143
+ actor_id: z.ZodString;
144
+ }, z.core.$strict>;
145
+ }, z.core.$strip>, z.ZodObject<{
146
+ type: z.ZodLiteral<"hydrate">;
147
+ actor: z.ZodObject<{
148
+ project_id: z.ZodString;
149
+ actor_name: z.ZodString;
150
+ actor_id: z.ZodString;
151
+ }, z.core.$strict>;
152
+ state: z.ZodOptional<z.ZodNullable<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>;
153
+ resident_only: z.ZodOptional<z.ZodBoolean>;
154
+ }, z.core.$strip>], "type">;
155
+ declare const actorSessionServerMessageSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
156
+ type: z.ZodLiteral<"attached">;
157
+ protocol: z.ZodLiteral<17>;
158
+ supports_residency: z.ZodOptional<z.ZodBoolean>;
159
+ }, z.core.$strip>, z.ZodObject<{
160
+ type: z.ZodLiteral<"socket_connections">;
161
+ message_id: z.ZodNumber;
162
+ connections: z.ZodArray<z.ZodObject<{
163
+ id: z.ZodString;
164
+ metadata: z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>;
165
+ tags: z.ZodArray<z.ZodString>;
166
+ }, z.core.$strip>>;
167
+ error: z.ZodOptional<z.ZodString>;
168
+ }, z.core.$strip>, z.ZodObject<{
169
+ type: z.ZodLiteral<"socket_effects_published">;
170
+ message_id: z.ZodNumber;
171
+ error: z.ZodOptional<z.ZodString>;
172
+ }, z.core.$strip>, z.ZodObject<{
173
+ type: z.ZodLiteral<"command">;
174
+ message_id: z.ZodNumber;
175
+ command: z.ZodDiscriminatedUnion<[z.ZodObject<{
176
+ type: z.ZodLiteral<"invoke">;
177
+ request_id: z.ZodString;
178
+ actor: z.ZodObject<{
179
+ project_id: z.ZodString;
180
+ actor_name: z.ZodString;
181
+ actor_id: z.ZodString;
182
+ }, z.core.$strict>;
183
+ method: z.ZodString;
184
+ args: z.ZodArray<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>;
185
+ state: z.ZodOptional<z.ZodNullable<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>;
186
+ resident_only: z.ZodOptional<z.ZodBoolean>;
187
+ }, z.core.$strip>, z.ZodObject<{
188
+ type: z.ZodLiteral<"websocket_event">;
189
+ request_id: z.ZodString;
190
+ actor: z.ZodObject<{
191
+ project_id: z.ZodString;
192
+ actor_name: z.ZodString;
193
+ actor_id: z.ZodString;
194
+ }, z.core.$strict>;
195
+ event: z.ZodDiscriminatedUnion<[z.ZodObject<{
196
+ type: z.ZodLiteral<"connect">;
197
+ connection: z.ZodObject<{
198
+ id: z.ZodString;
199
+ metadata: z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>;
200
+ tags: z.ZodArray<z.ZodString>;
201
+ }, z.core.$strip>;
202
+ }, z.core.$strip>, z.ZodObject<{
203
+ type: z.ZodLiteral<"message">;
204
+ connection_id: z.ZodString;
205
+ message: z.ZodDiscriminatedUnion<[z.ZodObject<{
206
+ type: z.ZodLiteral<"text">;
207
+ data: z.ZodString;
208
+ }, z.core.$strip>, z.ZodObject<{
209
+ type: z.ZodLiteral<"binary">;
210
+ data: z.ZodString;
211
+ }, z.core.$strip>], "type">;
212
+ }, z.core.$strip>, z.ZodObject<{
213
+ type: z.ZodLiteral<"disconnect">;
214
+ connection: z.ZodObject<{
215
+ id: z.ZodString;
216
+ metadata: z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>;
217
+ tags: z.ZodArray<z.ZodString>;
218
+ }, z.core.$strip>;
219
+ code: z.ZodNumber;
220
+ reason: z.ZodString;
221
+ was_clean: z.ZodBoolean;
222
+ }, z.core.$strip>], "type">;
223
+ connections: z.ZodArray<z.ZodObject<{
224
+ id: z.ZodString;
225
+ metadata: z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>;
226
+ tags: z.ZodArray<z.ZodString>;
227
+ }, z.core.$strip>>;
228
+ state: z.ZodOptional<z.ZodNullable<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>;
229
+ resident_only: z.ZodOptional<z.ZodBoolean>;
230
+ }, z.core.$strip>, z.ZodObject<{
231
+ type: z.ZodLiteral<"evict">;
232
+ actor: z.ZodObject<{
233
+ project_id: z.ZodString;
234
+ actor_name: z.ZodString;
235
+ actor_id: z.ZodString;
236
+ }, z.core.$strict>;
237
+ }, z.core.$strip>, z.ZodObject<{
238
+ type: z.ZodLiteral<"hydrate">;
239
+ actor: z.ZodObject<{
240
+ project_id: z.ZodString;
241
+ actor_name: z.ZodString;
242
+ actor_id: z.ZodString;
243
+ }, z.core.$strict>;
244
+ state: z.ZodOptional<z.ZodNullable<z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>;
245
+ resident_only: z.ZodOptional<z.ZodBoolean>;
246
+ }, z.core.$strip>], "type">;
247
+ }, z.core.$strip>], "type">;
248
+ type HydrateCommand = z.infer<typeof hydrateCommandSchema>;
249
+ type InvokeCommand = z.infer<typeof invokeCommandSchema>;
250
+ type EvictCommand = z.infer<typeof evictCommandSchema>;
251
+ type ActorExecutorCommand = z.infer<typeof executorCommandSchema>;
252
+ type ActorSessionServerMessage = z.infer<typeof actorSessionServerMessageSchema>;
253
+ type ActorExecutorReply = InvokedReply | WebSocketHandledReply | FailedReply | EvictedReply | {
254
+ readonly type: "hydrated";
255
+ } | {
256
+ readonly type: "state_required";
257
+ };
258
+ type ActorSessionClientMessage = {
259
+ readonly type: "residency";
260
+ readonly actors: readonly ActorIdentity[];
261
+ } | AttachMessage | {
262
+ readonly type: "ready_for_invocation";
263
+ readonly message_id: number;
264
+ } | ReplyMessage | {
265
+ readonly type: "get_connections";
266
+ readonly message_id: number;
267
+ } | {
268
+ readonly type: "socket_effects";
269
+ readonly message_id: number;
270
+ readonly effects: readonly SocketEffect[];
271
+ };
272
+ interface AttachMessage {
273
+ readonly type: "attach";
274
+ readonly protocol: 17;
275
+ readonly actor_names: readonly string[];
276
+ }
277
+ interface ReplyMessage {
278
+ readonly type: "reply";
279
+ readonly message_id: number;
280
+ readonly reply: ActorExecutorReply;
281
+ }
282
+ interface InvokedReply {
283
+ readonly type: "invoked";
284
+ readonly sequence?: number;
285
+ readonly result: JsonValue;
286
+ readonly state: JsonObject;
287
+ readonly effects?: readonly SocketEffect[];
288
+ }
289
+ interface WebSocketHandledReply {
290
+ readonly type: "websocket_handled";
291
+ readonly sequence?: number;
292
+ readonly state: JsonObject;
293
+ readonly effects: readonly SocketEffect[];
294
+ }
295
+ interface FailedReply {
296
+ readonly type: "failed";
297
+ readonly code: string;
298
+ readonly message: string;
299
+ }
300
+ interface EvictedReply {
301
+ readonly type: "evicted";
302
+ }
303
+ interface ActorWorkerData {
304
+ readonly moduleUrl: string;
305
+ readonly schemas: readonly ActorSchema[] | undefined;
306
+ }
307
+ type ActorWorkerRequest = {
308
+ readonly type: "load";
309
+ readonly data: ActorWorkerData;
310
+ } | {
311
+ readonly type: "execute";
312
+ readonly messageId: number;
313
+ readonly command: InvokeCommand | WebSocketEventCommand | HydrateCommand;
314
+ } | {
315
+ readonly type: "socket_effects_published";
316
+ readonly messageId: number;
317
+ readonly error?: string;
318
+ } | {
319
+ readonly type: "socket_connections";
320
+ readonly messageId: number;
321
+ readonly connections: readonly SocketConnection[];
322
+ readonly error?: string;
323
+ };
324
+ type ActorWorkerMessage = {
325
+ readonly type: "warm";
326
+ } | {
327
+ readonly type: "ready";
328
+ readonly actorNames: readonly string[];
329
+ } | {
330
+ readonly type: "reply";
331
+ readonly messageId: number;
332
+ readonly reply: ActorExecutorReply;
333
+ } | FailedReply | {
334
+ readonly type: "ready_for_invocation";
335
+ readonly messageId: number;
336
+ } | {
337
+ readonly type: "socket_effects";
338
+ readonly messageId: number;
339
+ readonly effects: readonly SocketEffect[];
340
+ } | {
341
+ readonly type: "get_connections";
342
+ readonly messageId: number;
343
+ };
344
+ type WebSocketEventCommand = z.infer<typeof websocketEventCommandSchema>;
345
+ export { failedReply, parseActorSessionServerMessage };
346
+ export type { ActorExecutorCommand, ActorExecutorReply, ActorSessionClientMessage, ActorSessionServerMessage, ActorWorkerData, ActorWorkerMessage, ActorWorkerRequest, EvictCommand, InvokeCommand, HydrateCommand, WebSocketEventCommand };
347
+ //# sourceMappingURL=protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/host/protocol.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ import { z } from "zod";
2
+ import { actorComponentSchema, actorIdentitySchema } from "../actor/identity.js";
3
+ import { socketConnectionSchema, socketEventSchema } from "../actor/socketProtocol.js";
4
+ import { ActorProtocolError } from "../errors.js";
5
+ import { jsonValueSchema } from "../json.js";
6
+ function parseActorSessionServerMessage(document) {
7
+ let value;
8
+ try {
9
+ value = JSON.parse(document);
10
+ }
11
+ catch (error) {
12
+ throw new ActorProtocolError("actor session message is not valid JSON", { cause: error });
13
+ }
14
+ const result = actorSessionServerMessageSchema.safeParse(value);
15
+ if (!result.success)
16
+ throw new ActorProtocolError(`actor session message is invalid: ${result.error.message}`);
17
+ return result.data;
18
+ }
19
+ function failedReply(code, message) {
20
+ return { type: "failed", code, message };
21
+ }
22
+ const invokeCommandSchema = z.object({
23
+ type: z.literal("invoke"),
24
+ request_id: actorComponentSchema,
25
+ actor: actorIdentitySchema,
26
+ method: actorComponentSchema,
27
+ args: z.array(jsonValueSchema),
28
+ state: jsonValueSchema.nullable().optional(),
29
+ resident_only: z.boolean().optional()
30
+ });
31
+ const websocketEventCommandSchema = z.object({
32
+ type: z.literal("websocket_event"),
33
+ request_id: actorComponentSchema,
34
+ actor: actorIdentitySchema,
35
+ event: socketEventSchema,
36
+ connections: z.array(socketConnectionSchema),
37
+ state: jsonValueSchema.nullable().optional(),
38
+ resident_only: z.boolean().optional()
39
+ });
40
+ const evictCommandSchema = z.object({
41
+ type: z.literal("evict"),
42
+ actor: actorIdentitySchema
43
+ });
44
+ const hydrateCommandSchema = z.object({
45
+ type: z.literal("hydrate"),
46
+ actor: actorIdentitySchema,
47
+ state: jsonValueSchema.nullable().optional(),
48
+ resident_only: z.boolean().optional()
49
+ });
50
+ const executorCommandSchema = z.discriminatedUnion("type", [
51
+ invokeCommandSchema,
52
+ websocketEventCommandSchema,
53
+ evictCommandSchema,
54
+ hydrateCommandSchema
55
+ ]);
56
+ const actorSessionServerMessageSchema = z.discriminatedUnion("type", [
57
+ z.object({ type: z.literal("attached"), protocol: z.literal(17), supports_residency: z.boolean().optional() }),
58
+ z.object({
59
+ type: z.literal("socket_connections"),
60
+ message_id: z.number().int().nonnegative(),
61
+ connections: z.array(socketConnectionSchema),
62
+ error: z.string().optional()
63
+ }),
64
+ z.object({
65
+ type: z.literal("socket_effects_published"),
66
+ message_id: z.number().int().nonnegative(),
67
+ error: z.string().optional()
68
+ }),
69
+ z.object({
70
+ type: z.literal("command"),
71
+ message_id: z.number().int().nonnegative(),
72
+ command: executorCommandSchema
73
+ })
74
+ ]);
75
+ export { failedReply, parseActorSessionServerMessage };
76
+ //# sourceMappingURL=protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/host/protocol.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import type { ActorIdentity } from "../actor/identity.js";
2
+ import type { ActorSchema } from "../actor/schema.js";
3
+ import type { SocketConnection, SocketEffect } from "../actor/socketProtocol.js";
4
+ import type { ActorExecutorCommand, ActorExecutorReply, ActorWorkerData, HydrateCommand, InvokeCommand, WebSocketEventCommand } from "./protocol.js";
5
+ import type { ActorWorkerSupervisor, ResidentActorWorker } from "./worker-supervisor.js";
6
+ interface ActorHostSettings {
7
+ readonly socketPath: string;
8
+ readonly actorEntrypoint: string | undefined;
9
+ readonly startupTimeoutMs: number;
10
+ readonly actorIdleTimeoutMs: number;
11
+ }
12
+ type SocketPublisher = (effects: readonly SocketEffect[]) => Promise<void>;
13
+ type SocketSource = () => Promise<readonly SocketConnection[]>;
14
+ type ActorCommandHandler = (command: ActorExecutorCommand, allowNextInvocation: () => void, publish?: SocketPublisher, connections?: SocketSource) => Promise<ActorExecutorReply>;
15
+ type ActorWorkerSupervisorFactory = (options: ActorWorkerSupervisorOptions) => Pick<ActorWorkerSupervisor, "ready" | "handle" | "close" | "activeActors" | "onActiveActorsChange">;
16
+ interface ActorWorkerSupervisorOptions {
17
+ readonly actorEntrypointUrl: string;
18
+ readonly actorSchemas: readonly ActorSchema[] | undefined;
19
+ readonly actorIdleTimeoutMs?: number;
20
+ readonly createWorker?: ActorWorkerFactory;
21
+ }
22
+ interface ResidentActorWorkerOptions {
23
+ readonly identity: ActorIdentity;
24
+ readonly sequenceBase: number;
25
+ readonly onActiveActorsChange: () => void;
26
+ readonly moduleUrl: string;
27
+ readonly schemas: readonly ActorSchema[] | undefined;
28
+ readonly idleTimeoutMs: number;
29
+ readonly worker?: ActorWorkerHandle;
30
+ readonly createWorker: ActorWorkerFactory;
31
+ readonly onIdle: (actor: ResidentActorWorker) => void;
32
+ }
33
+ type ActorWorkerState = "starting" | "ready" | "stopping" | "stopped";
34
+ interface ActorWorkerHandle {
35
+ readonly state: ActorWorkerState;
36
+ ready(): Promise<readonly string[]>;
37
+ execute(command: InvokeCommand | WebSocketEventCommand | HydrateCommand, allowNextInvocation: () => void, publish?: SocketPublisher, connections?: SocketSource): Promise<ActorExecutorReply>;
38
+ terminate(reason: string): void;
39
+ }
40
+ type ActorWorkerFactory = (data: ActorWorkerData, onStateChange: () => void) => ActorWorkerHandle;
41
+ export type { ActorCommandHandler, ActorHostSettings, ActorWorkerFactory, ActorWorkerHandle, ActorWorkerState, ActorWorkerSupervisorFactory, ActorWorkerSupervisorOptions, ResidentActorWorkerOptions, SocketPublisher, SocketSource };
42
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/host/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/host/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,85 @@
1
+ import type { ActorIdentity } from "../actor/identity.js";
2
+ import type { ActorSchema } from "../actor/schema.js";
3
+ import type { ActorExecutorCommand, ActorExecutorReply, ActorWorkerData, HydrateCommand, InvokeCommand, WebSocketEventCommand } from "./protocol.js";
4
+ import type { ActorWorkerFactory, ActorWorkerHandle, ActorWorkerState, ActorWorkerSupervisorOptions, ResidentActorWorkerOptions, SocketPublisher, SocketSource } from "./types.js";
5
+ declare const DEFAULT_ACTOR_IDLE_TIMEOUT_MS = 60000;
6
+ declare class ActorWorkerSupervisor {
7
+ private readonly actorEntrypointUrl;
8
+ private readonly actorSchemas;
9
+ private readonly actorIdleTimeoutMs;
10
+ private readonly createWorker;
11
+ private resident;
12
+ private lastActiveActors;
13
+ private readonly activeActorListeners;
14
+ private speculativeWorker;
15
+ private speculativeTimer;
16
+ private identity;
17
+ private closed;
18
+ private actorNames;
19
+ private lastSequence;
20
+ constructor(options: ActorWorkerSupervisorOptions);
21
+ ready(): Promise<readonly string[]>;
22
+ handle(command: ActorExecutorCommand, allowNextInvocation: () => void, publish?: SocketPublisher, connections?: SocketSource): Promise<ActorExecutorReply>;
23
+ onActiveActorsChange(listener: () => void): () => void;
24
+ private notifyActiveActorsChange;
25
+ activeActors(): readonly ActorIdentity[];
26
+ close(): void;
27
+ private preload;
28
+ private discardPreload;
29
+ private execute;
30
+ private evict;
31
+ private removeIfCurrent;
32
+ private takeSpeculativeWorker;
33
+ }
34
+ declare class ResidentActorWorker {
35
+ readonly identity: ActorIdentity;
36
+ readonly sequenceBase: number;
37
+ readonly moduleUrl: string;
38
+ readonly schemas: readonly ActorSchema[] | undefined;
39
+ readonly idleTimeoutMs: number;
40
+ readonly createWorker: ActorWorkerFactory;
41
+ readonly onIdle: (actor: ResidentActorWorker) => void;
42
+ lastCompletedAt: number;
43
+ private readonly onActiveActorsChange;
44
+ private worker;
45
+ private idleTimer;
46
+ private activeInvocations;
47
+ constructor(options: ResidentActorWorkerOptions);
48
+ execute(command: InvokeCommand | WebSocketEventCommand | HydrateCommand, allowNextInvocation: () => void, publish?: SocketPublisher, connections?: SocketSource): Promise<ActorExecutorReply>;
49
+ isActive(): boolean;
50
+ isIdle(): boolean;
51
+ terminate(reason: string): void;
52
+ }
53
+ declare class ActorWorker implements ActorWorkerHandle {
54
+ private onStateChange;
55
+ private readonly worker;
56
+ private readonly readyPromise;
57
+ private readyResolve;
58
+ private readyReject;
59
+ private readonly pending;
60
+ private nextMessageId;
61
+ private lifecycleState;
62
+ private terminalError;
63
+ private readonly warmPromise;
64
+ private warmResolve;
65
+ private warmReject;
66
+ private assigned;
67
+ constructor(data?: ActorWorkerData, onStateChange?: () => void);
68
+ warm(): Promise<void>;
69
+ load(data: ActorWorkerData, onStateChange: () => void): void;
70
+ get state(): ActorWorkerState;
71
+ ready(): Promise<readonly string[]>;
72
+ execute(command: InvokeCommand | WebSocketEventCommand | HydrateCommand, allowNextInvocation: () => void, publish?: SocketPublisher, connections?: SocketSource): Promise<ActorExecutorReply>;
73
+ terminate(reason: string): void;
74
+ private receive;
75
+ private publishEffects;
76
+ private loadConnections;
77
+ private reply;
78
+ private post;
79
+ private stop;
80
+ private exited;
81
+ private fail;
82
+ }
83
+ export { ActorWorker, ActorWorkerSupervisor, DEFAULT_ACTOR_IDLE_TIMEOUT_MS };
84
+ export type { ResidentActorWorker };
85
+ //# sourceMappingURL=worker-supervisor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-supervisor.d.ts","sourceRoot":"","sources":["../../src/host/worker-supervisor.ts"],"names":[],"mappings":"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"}