reactor-effect-client 0.7.1 → 0.8.0

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 (514) hide show
  1. package/NOTICE +7 -2
  2. package/README.md +103 -141
  3. package/dist/Coordinator.d.ts +382 -0
  4. package/dist/Coordinator.d.ts.map +1 -0
  5. package/dist/Coordinator.js +732 -0
  6. package/dist/Coordinator.js.map +1 -0
  7. package/dist/H3.d.ts +159 -0
  8. package/dist/H3.d.ts.map +1 -0
  9. package/dist/H3.js +21 -0
  10. package/dist/H3.js.map +1 -0
  11. package/dist/H3Source.d.ts +93 -0
  12. package/dist/H3Source.d.ts.map +1 -0
  13. package/dist/H3Source.js +401 -0
  14. package/dist/H3Source.js.map +1 -0
  15. package/dist/LocalSource.d.ts +68 -0
  16. package/dist/LocalSource.d.ts.map +1 -0
  17. package/dist/LocalSource.js +354 -0
  18. package/dist/LocalSource.js.map +1 -0
  19. package/dist/Media.d.ts +106 -0
  20. package/dist/Media.d.ts.map +1 -0
  21. package/dist/Media.js +16 -0
  22. package/dist/Media.js.map +1 -0
  23. package/dist/Peer.d.ts +134 -0
  24. package/dist/Peer.d.ts.map +1 -0
  25. package/dist/Peer.js +57 -0
  26. package/dist/Peer.js.map +1 -0
  27. package/dist/Playout.d.ts +724 -0
  28. package/dist/Playout.d.ts.map +1 -0
  29. package/dist/Playout.js +28 -0
  30. package/dist/Playout.js.map +1 -0
  31. package/dist/Reactor.d.ts +135 -0
  32. package/dist/Reactor.d.ts.map +1 -0
  33. package/dist/Reactor.js +158 -0
  34. package/dist/Reactor.js.map +1 -0
  35. package/dist/ReactorError.d.ts +331 -0
  36. package/dist/ReactorError.d.ts.map +1 -0
  37. package/dist/ReactorError.js +316 -0
  38. package/dist/ReactorError.js.map +1 -0
  39. package/dist/ReactorTest.d.ts +383 -0
  40. package/dist/ReactorTest.d.ts.map +1 -0
  41. package/dist/ReactorTest.js +317 -0
  42. package/dist/ReactorTest.js.map +1 -0
  43. package/dist/Session.d.ts +314 -0
  44. package/dist/Session.d.ts.map +1 -0
  45. package/dist/Session.js +51 -0
  46. package/dist/Session.js.map +1 -0
  47. package/dist/index.d.ts +12 -22
  48. package/dist/index.d.ts.map +1 -1
  49. package/dist/index.js +12 -11
  50. package/dist/index.js.map +1 -1
  51. package/dist/internal/correlator.d.ts +46 -0
  52. package/dist/internal/correlator.d.ts.map +1 -0
  53. package/dist/internal/correlator.js +150 -0
  54. package/dist/internal/correlator.js.map +1 -0
  55. package/dist/internal/deadline.d.ts +24 -0
  56. package/dist/internal/deadline.d.ts.map +1 -0
  57. package/dist/internal/deadline.js +44 -0
  58. package/dist/internal/deadline.js.map +1 -0
  59. package/dist/{h3/_internal/contracts.d.ts → internal/h3/commands.d.ts} +39 -33
  60. package/dist/internal/h3/commands.d.ts.map +1 -0
  61. package/dist/internal/h3/commands.js +128 -0
  62. package/dist/internal/h3/commands.js.map +1 -0
  63. package/dist/{h3 → internal/h3}/messages.d.ts +16 -11
  64. package/dist/internal/h3/messages.d.ts.map +1 -0
  65. package/dist/{h3 → internal/h3}/messages.js +19 -31
  66. package/dist/internal/h3/messages.js.map +1 -0
  67. package/dist/internal/h3/operations.d.ts +145 -0
  68. package/dist/internal/h3/operations.d.ts.map +1 -0
  69. package/dist/internal/h3/operations.js +284 -0
  70. package/dist/internal/h3/operations.js.map +1 -0
  71. package/dist/{h3 → internal/h3}/profile.d.ts +63 -65
  72. package/dist/internal/h3/profile.d.ts.map +1 -0
  73. package/dist/{h3 → internal/h3}/profile.js +39 -39
  74. package/dist/internal/h3/profile.js.map +1 -0
  75. package/dist/internal/h3/provider.d.ts +14 -0
  76. package/dist/internal/h3/provider.d.ts.map +1 -0
  77. package/dist/internal/h3/provider.js +672 -0
  78. package/dist/internal/h3/provider.js.map +1 -0
  79. package/dist/internal/h3/references.d.ts +68 -0
  80. package/dist/internal/h3/references.d.ts.map +1 -0
  81. package/dist/internal/h3/references.js +339 -0
  82. package/dist/internal/h3/references.js.map +1 -0
  83. package/dist/internal/h3/request.d.ts +56 -0
  84. package/dist/internal/h3/request.d.ts.map +1 -0
  85. package/dist/internal/h3/request.js +70 -0
  86. package/dist/internal/h3/request.js.map +1 -0
  87. package/dist/internal/h3/state.d.ts +120 -0
  88. package/dist/internal/h3/state.d.ts.map +1 -0
  89. package/dist/internal/h3/state.js +270 -0
  90. package/dist/internal/h3/state.js.map +1 -0
  91. package/dist/{Submission.d.ts → internal/h3/submission.d.ts} +1 -3
  92. package/dist/internal/h3/submission.d.ts.map +1 -0
  93. package/dist/{Submission.js → internal/h3/submission.js} +1 -9
  94. package/dist/internal/h3/submission.js.map +1 -0
  95. package/dist/internal/hub.d.ts +32 -0
  96. package/dist/internal/hub.d.ts.map +1 -0
  97. package/dist/internal/hub.js +92 -0
  98. package/dist/internal/hub.js.map +1 -0
  99. package/dist/internal/playout/errors.d.ts +51 -0
  100. package/dist/internal/playout/errors.d.ts.map +1 -0
  101. package/dist/internal/playout/errors.js +40 -0
  102. package/dist/internal/playout/errors.js.map +1 -0
  103. package/dist/internal/playout/policy.d.ts +559 -0
  104. package/dist/internal/playout/policy.d.ts.map +1 -0
  105. package/dist/internal/playout/policy.js +2338 -0
  106. package/dist/internal/playout/policy.js.map +1 -0
  107. package/dist/internal/playout/runtime.d.ts +28 -0
  108. package/dist/internal/playout/runtime.d.ts.map +1 -0
  109. package/dist/internal/playout/runtime.js +766 -0
  110. package/dist/internal/playout/runtime.js.map +1 -0
  111. package/dist/internal/playout/tag.d.ts +14 -0
  112. package/dist/internal/playout/tag.d.ts.map +1 -0
  113. package/dist/internal/playout/tag.js +43 -0
  114. package/dist/internal/playout/tag.js.map +1 -0
  115. package/dist/internal/proto/reactor_wire/v1/common_pb.d.ts +55 -0
  116. package/dist/internal/proto/reactor_wire/v1/common_pb.d.ts.map +1 -0
  117. package/dist/internal/proto/reactor_wire/v1/common_pb.js +42 -0
  118. package/dist/internal/proto/reactor_wire/v1/common_pb.js.map +1 -0
  119. package/dist/internal/proto/reactor_wire/v1/control_pb.d.ts +160 -0
  120. package/dist/internal/proto/reactor_wire/v1/control_pb.d.ts.map +1 -0
  121. package/dist/internal/proto/reactor_wire/v1/control_pb.js +21 -0
  122. package/dist/internal/proto/reactor_wire/v1/control_pb.js.map +1 -0
  123. package/dist/internal/proto/reactor_wire/v1/data_pb.d.ts +89 -0
  124. package/dist/internal/proto/reactor_wire/v1/data_pb.d.ts.map +1 -0
  125. package/dist/internal/proto/reactor_wire/v1/data_pb.js +20 -0
  126. package/dist/internal/proto/reactor_wire/v1/data_pb.js.map +1 -0
  127. package/dist/internal/proto/reactor_wire/v1/model_pb.d.ts +85 -0
  128. package/dist/internal/proto/reactor_wire/v1/model_pb.d.ts.map +1 -0
  129. package/dist/internal/proto/reactor_wire/v1/model_pb.js +24 -0
  130. package/dist/internal/proto/reactor_wire/v1/model_pb.js.map +1 -0
  131. package/dist/internal/proto/reactor_wire/v1/platform_pb.d.ts +190 -0
  132. package/dist/internal/proto/reactor_wire/v1/platform_pb.d.ts.map +1 -0
  133. package/dist/internal/proto/reactor_wire/v1/platform_pb.js +54 -0
  134. package/dist/internal/proto/reactor_wire/v1/platform_pb.js.map +1 -0
  135. package/dist/internal/proto/reactor_wire/v1/track_pb.d.ts +88 -0
  136. package/dist/internal/proto/reactor_wire/v1/track_pb.d.ts.map +1 -0
  137. package/dist/internal/proto/reactor_wire/v1/track_pb.js +33 -0
  138. package/dist/internal/proto/reactor_wire/v1/track_pb.js.map +1 -0
  139. package/dist/internal/queue.d.ts +4 -0
  140. package/dist/internal/queue.d.ts.map +1 -0
  141. package/dist/{_internal → internal}/queue.js +0 -9
  142. package/dist/internal/queue.js.map +1 -0
  143. package/dist/internal/reactorTest/coordinator.d.ts +5 -0
  144. package/dist/internal/reactorTest/coordinator.d.ts.map +1 -0
  145. package/dist/internal/reactorTest/coordinator.js +178 -0
  146. package/dist/internal/reactorTest/coordinator.js.map +1 -0
  147. package/dist/internal/reactorTest/faults.d.ts +172 -0
  148. package/dist/internal/reactorTest/faults.d.ts.map +1 -0
  149. package/dist/internal/reactorTest/faults.js +23 -0
  150. package/dist/internal/reactorTest/faults.js.map +1 -0
  151. package/dist/internal/reactorTest/h3.d.ts +431 -0
  152. package/dist/internal/reactorTest/h3.d.ts.map +1 -0
  153. package/dist/internal/reactorTest/h3.js +625 -0
  154. package/dist/internal/reactorTest/h3.js.map +1 -0
  155. package/dist/internal/reactorTest/media.d.ts +22 -0
  156. package/dist/internal/reactorTest/media.d.ts.map +1 -0
  157. package/dist/internal/reactorTest/media.js +34 -0
  158. package/dist/internal/reactorTest/media.js.map +1 -0
  159. package/dist/internal/reactorTest/peer.d.ts +318 -0
  160. package/dist/internal/reactorTest/peer.d.ts.map +1 -0
  161. package/dist/internal/reactorTest/peer.js +206 -0
  162. package/dist/internal/reactorTest/peer.js.map +1 -0
  163. package/dist/internal/reactorTest/playout.d.ts +34 -0
  164. package/dist/internal/reactorTest/playout.d.ts.map +1 -0
  165. package/dist/internal/reactorTest/playout.js +340 -0
  166. package/dist/internal/reactorTest/playout.js.map +1 -0
  167. package/dist/internal/reactorTest/references.d.ts +25 -0
  168. package/dist/internal/reactorTest/references.d.ts.map +1 -0
  169. package/dist/{testing/Png.js → internal/reactorTest/references.js} +50 -12
  170. package/dist/internal/reactorTest/references.js.map +1 -0
  171. package/dist/internal/reactorTest/sessions.d.ts +364 -0
  172. package/dist/internal/reactorTest/sessions.d.ts.map +1 -0
  173. package/dist/internal/reactorTest/sessions.js +592 -0
  174. package/dist/internal/reactorTest/sessions.js.map +1 -0
  175. package/dist/internal/reactorTest/timing.d.ts +13 -0
  176. package/dist/internal/reactorTest/timing.d.ts.map +1 -0
  177. package/dist/internal/reactorTest/timing.js +20 -0
  178. package/dist/internal/reactorTest/timing.js.map +1 -0
  179. package/dist/internal/recording.d.ts +52 -0
  180. package/dist/internal/recording.d.ts.map +1 -0
  181. package/dist/internal/recording.js +141 -0
  182. package/dist/internal/recording.js.map +1 -0
  183. package/dist/internal/session/connect.d.ts +34 -0
  184. package/dist/internal/session/connect.d.ts.map +1 -0
  185. package/dist/internal/session/connect.js +502 -0
  186. package/dist/internal/session/connect.js.map +1 -0
  187. package/dist/internal/session/generation.d.ts +35 -0
  188. package/dist/internal/session/generation.d.ts.map +1 -0
  189. package/dist/internal/session/generation.js +185 -0
  190. package/dist/internal/session/generation.js.map +1 -0
  191. package/dist/internal/session/ice.d.ts +23 -0
  192. package/dist/internal/session/ice.d.ts.map +1 -0
  193. package/dist/internal/session/ice.js +57 -0
  194. package/dist/internal/session/ice.js.map +1 -0
  195. package/dist/internal/session/inbound.d.ts +50 -0
  196. package/dist/internal/session/inbound.d.ts.map +1 -0
  197. package/dist/internal/session/inbound.js +202 -0
  198. package/dist/internal/session/inbound.js.map +1 -0
  199. package/dist/internal/session/model.d.ts +163 -0
  200. package/dist/internal/session/model.d.ts.map +1 -0
  201. package/dist/internal/session/model.js +78 -0
  202. package/dist/internal/session/model.js.map +1 -0
  203. package/dist/internal/session/requests.d.ts +71 -0
  204. package/dist/internal/session/requests.d.ts.map +1 -0
  205. package/dist/internal/session/requests.js +240 -0
  206. package/dist/internal/session/requests.js.map +1 -0
  207. package/dist/internal/session/tracks.d.ts +21 -0
  208. package/dist/internal/session/tracks.d.ts.map +1 -0
  209. package/dist/internal/session/tracks.js +166 -0
  210. package/dist/internal/session/tracks.js.map +1 -0
  211. package/dist/internal/session/upload.d.ts +21 -0
  212. package/dist/internal/session/upload.d.ts.map +1 -0
  213. package/dist/internal/session/upload.js +68 -0
  214. package/dist/internal/session/upload.js.map +1 -0
  215. package/dist/internal/session.d.ts +66 -0
  216. package/dist/internal/session.d.ts.map +1 -0
  217. package/dist/internal/session.js +280 -0
  218. package/dist/internal/session.js.map +1 -0
  219. package/dist/{stats.d.ts → internal/stats.d.ts} +30 -16
  220. package/dist/internal/stats.d.ts.map +1 -0
  221. package/dist/internal/stats.js +201 -0
  222. package/dist/internal/stats.js.map +1 -0
  223. package/dist/internal/token.d.ts +22 -0
  224. package/dist/internal/token.d.ts.map +1 -0
  225. package/dist/internal/token.js +65 -0
  226. package/dist/internal/token.js.map +1 -0
  227. package/dist/internal/wire.d.ts +37 -0
  228. package/dist/internal/wire.d.ts.map +1 -0
  229. package/dist/internal/wire.js +49 -0
  230. package/dist/internal/wire.js.map +1 -0
  231. package/notices/bufbuild-protobuf-LICENSE +201 -0
  232. package/package.json +17 -38
  233. package/dist/FetchHttp.d.ts +0 -9
  234. package/dist/FetchHttp.d.ts.map +0 -1
  235. package/dist/FetchHttp.js +0 -63
  236. package/dist/FetchHttp.js.map +0 -1
  237. package/dist/PeerFactory.d.ts +0 -26
  238. package/dist/PeerFactory.d.ts.map +0 -1
  239. package/dist/PeerFactory.js +0 -4
  240. package/dist/PeerFactory.js.map +0 -1
  241. package/dist/PeerTypes.d.ts +0 -64
  242. package/dist/PeerTypes.d.ts.map +0 -1
  243. package/dist/PeerTypes.js +0 -2
  244. package/dist/PeerTypes.js.map +0 -1
  245. package/dist/Sequence.d.ts +0 -85
  246. package/dist/Sequence.d.ts.map +0 -1
  247. package/dist/Sequence.js +0 -210
  248. package/dist/Sequence.js.map +0 -1
  249. package/dist/SessionTypes.d.ts +0 -312
  250. package/dist/SessionTypes.d.ts.map +0 -1
  251. package/dist/SessionTypes.js +0 -19
  252. package/dist/SessionTypes.js.map +0 -1
  253. package/dist/Submission.d.ts.map +0 -1
  254. package/dist/Submission.js.map +0 -1
  255. package/dist/_internal/queue.d.ts +0 -6
  256. package/dist/_internal/queue.d.ts.map +0 -1
  257. package/dist/_internal/queue.js.map +0 -1
  258. package/dist/bytes.d.ts +0 -6
  259. package/dist/bytes.d.ts.map +0 -1
  260. package/dist/bytes.js +0 -32
  261. package/dist/bytes.js.map +0 -1
  262. package/dist/contract.d.ts +0 -149
  263. package/dist/contract.d.ts.map +0 -1
  264. package/dist/contract.js +0 -119
  265. package/dist/contract.js.map +0 -1
  266. package/dist/coordinator/_internal/client.d.ts +0 -215
  267. package/dist/coordinator/_internal/client.d.ts.map +0 -1
  268. package/dist/coordinator/_internal/client.js +0 -563
  269. package/dist/coordinator/_internal/client.js.map +0 -1
  270. package/dist/coordinator/_internal/recording.d.ts +0 -31
  271. package/dist/coordinator/_internal/recording.d.ts.map +0 -1
  272. package/dist/coordinator/_internal/recording.js +0 -123
  273. package/dist/coordinator/_internal/recording.js.map +0 -1
  274. package/dist/coordinator/_internal/response.d.ts +0 -15
  275. package/dist/coordinator/_internal/response.d.ts.map +0 -1
  276. package/dist/coordinator/_internal/response.js +0 -55
  277. package/dist/coordinator/_internal/response.js.map +0 -1
  278. package/dist/coordinator/_internal/schemas.d.ts +0 -73
  279. package/dist/coordinator/_internal/schemas.d.ts.map +0 -1
  280. package/dist/coordinator/_internal/schemas.js +0 -200
  281. package/dist/coordinator/_internal/schemas.js.map +0 -1
  282. package/dist/coordinator/index.d.ts +0 -40
  283. package/dist/coordinator/index.d.ts.map +0 -1
  284. package/dist/coordinator/index.js +0 -21
  285. package/dist/coordinator/index.js.map +0 -1
  286. package/dist/correlation.d.ts +0 -47
  287. package/dist/correlation.d.ts.map +0 -1
  288. package/dist/correlation.js +0 -131
  289. package/dist/correlation.js.map +0 -1
  290. package/dist/duration.d.ts +0 -27
  291. package/dist/duration.d.ts.map +0 -1
  292. package/dist/duration.js +0 -47
  293. package/dist/duration.js.map +0 -1
  294. package/dist/errors.d.ts +0 -1303
  295. package/dist/errors.d.ts.map +0 -1
  296. package/dist/errors.js +0 -745
  297. package/dist/errors.js.map +0 -1
  298. package/dist/h3/_internal/client.d.ts +0 -9
  299. package/dist/h3/_internal/client.d.ts.map +0 -1
  300. package/dist/h3/_internal/client.js +0 -652
  301. package/dist/h3/_internal/client.js.map +0 -1
  302. package/dist/h3/_internal/contracts.d.ts.map +0 -1
  303. package/dist/h3/_internal/contracts.js +0 -123
  304. package/dist/h3/_internal/contracts.js.map +0 -1
  305. package/dist/h3/_internal/deployment.d.ts +0 -8
  306. package/dist/h3/_internal/deployment.d.ts.map +0 -1
  307. package/dist/h3/_internal/deployment.js +0 -149
  308. package/dist/h3/_internal/deployment.js.map +0 -1
  309. package/dist/h3/_internal/evidence.d.ts +0 -17
  310. package/dist/h3/_internal/evidence.d.ts.map +0 -1
  311. package/dist/h3/_internal/evidence.js +0 -48
  312. package/dist/h3/_internal/evidence.js.map +0 -1
  313. package/dist/h3/_internal/operations.d.ts +0 -58
  314. package/dist/h3/_internal/operations.d.ts.map +0 -1
  315. package/dist/h3/_internal/operations.js +0 -268
  316. package/dist/h3/_internal/operations.js.map +0 -1
  317. package/dist/h3/_internal/references.d.ts +0 -24
  318. package/dist/h3/_internal/references.d.ts.map +0 -1
  319. package/dist/h3/_internal/references.js +0 -309
  320. package/dist/h3/_internal/references.js.map +0 -1
  321. package/dist/h3/_internal/request.d.ts +0 -21
  322. package/dist/h3/_internal/request.d.ts.map +0 -1
  323. package/dist/h3/_internal/request.js +0 -97
  324. package/dist/h3/_internal/request.js.map +0 -1
  325. package/dist/h3/_internal/retained.d.ts +0 -22
  326. package/dist/h3/_internal/retained.d.ts.map +0 -1
  327. package/dist/h3/_internal/retained.js +0 -89
  328. package/dist/h3/_internal/retained.js.map +0 -1
  329. package/dist/h3/_internal/state.d.ts +0 -44
  330. package/dist/h3/_internal/state.d.ts.map +0 -1
  331. package/dist/h3/_internal/state.js +0 -283
  332. package/dist/h3/_internal/state.js.map +0 -1
  333. package/dist/h3/index.d.ts +0 -10
  334. package/dist/h3/index.d.ts.map +0 -1
  335. package/dist/h3/index.js +0 -7
  336. package/dist/h3/index.js.map +0 -1
  337. package/dist/h3/messages.d.ts.map +0 -1
  338. package/dist/h3/messages.js.map +0 -1
  339. package/dist/h3/profile.d.ts.map +0 -1
  340. package/dist/h3/profile.js.map +0 -1
  341. package/dist/h3/types.d.ts +0 -291
  342. package/dist/h3/types.d.ts.map +0 -1
  343. package/dist/h3/types.js +0 -2
  344. package/dist/h3/types.js.map +0 -1
  345. package/dist/host.d.ts +0 -26
  346. package/dist/host.d.ts.map +0 -1
  347. package/dist/host.js +0 -20
  348. package/dist/host.js.map +0 -1
  349. package/dist/json.d.ts +0 -25
  350. package/dist/json.d.ts.map +0 -1
  351. package/dist/json.js +0 -143
  352. package/dist/json.js.map +0 -1
  353. package/dist/media-stream.d.ts +0 -10
  354. package/dist/media-stream.d.ts.map +0 -1
  355. package/dist/media-stream.js +0 -18
  356. package/dist/media-stream.js.map +0 -1
  357. package/dist/observation.d.ts +0 -38
  358. package/dist/observation.d.ts.map +0 -1
  359. package/dist/observation.js +0 -113
  360. package/dist/observation.js.map +0 -1
  361. package/dist/orchestration/elapsed.d.ts +0 -9
  362. package/dist/orchestration/elapsed.d.ts.map +0 -1
  363. package/dist/orchestration/elapsed.js +0 -8
  364. package/dist/orchestration/elapsed.js.map +0 -1
  365. package/dist/orchestration/h3-source.d.ts +0 -58
  366. package/dist/orchestration/h3-source.d.ts.map +0 -1
  367. package/dist/orchestration/h3-source.js +0 -362
  368. package/dist/orchestration/h3-source.js.map +0 -1
  369. package/dist/orchestration/index.d.ts +0 -17
  370. package/dist/orchestration/index.d.ts.map +0 -1
  371. package/dist/orchestration/index.js +0 -12
  372. package/dist/orchestration/index.js.map +0 -1
  373. package/dist/orchestration/media-buffer.d.ts +0 -32
  374. package/dist/orchestration/media-buffer.d.ts.map +0 -1
  375. package/dist/orchestration/media-buffer.js +0 -94
  376. package/dist/orchestration/media-buffer.js.map +0 -1
  377. package/dist/orchestration/open-h3.d.ts +0 -101
  378. package/dist/orchestration/open-h3.d.ts.map +0 -1
  379. package/dist/orchestration/open-h3.js +0 -127
  380. package/dist/orchestration/open-h3.js.map +0 -1
  381. package/dist/orchestration/queries.d.ts +0 -10
  382. package/dist/orchestration/queries.d.ts.map +0 -1
  383. package/dist/orchestration/queries.js +0 -43
  384. package/dist/orchestration/queries.js.map +0 -1
  385. package/dist/orchestration/references.d.ts +0 -18
  386. package/dist/orchestration/references.d.ts.map +0 -1
  387. package/dist/orchestration/references.js +0 -79
  388. package/dist/orchestration/references.js.map +0 -1
  389. package/dist/orchestration/renewal-state.d.ts +0 -84
  390. package/dist/orchestration/renewal-state.d.ts.map +0 -1
  391. package/dist/orchestration/renewal-state.js +0 -95
  392. package/dist/orchestration/renewal-state.js.map +0 -1
  393. package/dist/orchestration/renewal.d.ts +0 -103
  394. package/dist/orchestration/renewal.d.ts.map +0 -1
  395. package/dist/orchestration/renewal.js +0 -1099
  396. package/dist/orchestration/renewal.js.map +0 -1
  397. package/dist/orchestration/request.d.ts +0 -65
  398. package/dist/orchestration/request.d.ts.map +0 -1
  399. package/dist/orchestration/request.js +0 -134
  400. package/dist/orchestration/request.js.map +0 -1
  401. package/dist/orchestration/retention.d.ts +0 -100
  402. package/dist/orchestration/retention.d.ts.map +0 -1
  403. package/dist/orchestration/retention.js +0 -134
  404. package/dist/orchestration/retention.js.map +0 -1
  405. package/dist/orchestration/routing.d.ts +0 -21
  406. package/dist/orchestration/routing.d.ts.map +0 -1
  407. package/dist/orchestration/routing.js +0 -93
  408. package/dist/orchestration/routing.js.map +0 -1
  409. package/dist/orchestration/scheduler-key.d.ts +0 -14
  410. package/dist/orchestration/scheduler-key.d.ts.map +0 -1
  411. package/dist/orchestration/scheduler-key.js +0 -62
  412. package/dist/orchestration/scheduler-key.js.map +0 -1
  413. package/dist/orchestration/scheduler-policy.d.ts +0 -246
  414. package/dist/orchestration/scheduler-policy.d.ts.map +0 -1
  415. package/dist/orchestration/scheduler-policy.js +0 -668
  416. package/dist/orchestration/scheduler-policy.js.map +0 -1
  417. package/dist/orchestration/scheduler.d.ts +0 -393
  418. package/dist/orchestration/scheduler.d.ts.map +0 -1
  419. package/dist/orchestration/scheduler.js +0 -2621
  420. package/dist/orchestration/scheduler.js.map +0 -1
  421. package/dist/orchestration/source-slot.d.ts +0 -124
  422. package/dist/orchestration/source-slot.d.ts.map +0 -1
  423. package/dist/orchestration/source-slot.js +0 -348
  424. package/dist/orchestration/source-slot.js.map +0 -1
  425. package/dist/orchestration/types.d.ts +0 -1462
  426. package/dist/orchestration/types.d.ts.map +0 -1
  427. package/dist/orchestration/types.js +0 -135
  428. package/dist/orchestration/types.js.map +0 -1
  429. package/dist/protobuf.d.ts +0 -63
  430. package/dist/protobuf.d.ts.map +0 -1
  431. package/dist/protobuf.js +0 -252
  432. package/dist/protobuf.js.map +0 -1
  433. package/dist/session/_internal/acquire.d.ts +0 -21
  434. package/dist/session/_internal/acquire.d.ts.map +0 -1
  435. package/dist/session/_internal/acquire.js +0 -168
  436. package/dist/session/_internal/acquire.js.map +0 -1
  437. package/dist/session/_internal/cleanup.d.ts +0 -19
  438. package/dist/session/_internal/cleanup.d.ts.map +0 -1
  439. package/dist/session/_internal/cleanup.js +0 -102
  440. package/dist/session/_internal/cleanup.js.map +0 -1
  441. package/dist/session/_internal/lifecycle.d.ts +0 -67
  442. package/dist/session/_internal/lifecycle.d.ts.map +0 -1
  443. package/dist/session/_internal/lifecycle.js +0 -142
  444. package/dist/session/_internal/lifecycle.js.map +0 -1
  445. package/dist/session/_internal/remote.d.ts +0 -28
  446. package/dist/session/_internal/remote.d.ts.map +0 -1
  447. package/dist/session/_internal/remote.js +0 -71
  448. package/dist/session/_internal/remote.js.map +0 -1
  449. package/dist/session/_internal/uploads.d.ts +0 -7
  450. package/dist/session/_internal/uploads.d.ts.map +0 -1
  451. package/dist/session/_internal/uploads.js +0 -31
  452. package/dist/session/_internal/uploads.js.map +0 -1
  453. package/dist/session/commands.d.ts +0 -2
  454. package/dist/session/commands.d.ts.map +0 -1
  455. package/dist/session/commands.js +0 -2
  456. package/dist/session/commands.js.map +0 -1
  457. package/dist/session/files.d.ts +0 -21
  458. package/dist/session/files.d.ts.map +0 -1
  459. package/dist/session/files.js +0 -49
  460. package/dist/session/files.js.map +0 -1
  461. package/dist/session/index.d.ts +0 -84
  462. package/dist/session/index.d.ts.map +0 -1
  463. package/dist/session/index.js +0 -16
  464. package/dist/session/index.js.map +0 -1
  465. package/dist/session/media.d.ts +0 -114
  466. package/dist/session/media.d.ts.map +0 -1
  467. package/dist/session/media.js +0 -2
  468. package/dist/session/media.js.map +0 -1
  469. package/dist/session/recorder.d.ts +0 -24
  470. package/dist/session/recorder.d.ts.map +0 -1
  471. package/dist/session/recorder.js +0 -19
  472. package/dist/session/recorder.js.map +0 -1
  473. package/dist/session.d.ts +0 -105
  474. package/dist/session.d.ts.map +0 -1
  475. package/dist/session.js +0 -976
  476. package/dist/session.js.map +0 -1
  477. package/dist/simulation/_internal/source.d.ts +0 -12
  478. package/dist/simulation/_internal/source.d.ts.map +0 -1
  479. package/dist/simulation/_internal/source.js +0 -513
  480. package/dist/simulation/_internal/source.js.map +0 -1
  481. package/dist/simulation/index.d.ts +0 -13
  482. package/dist/simulation/index.d.ts.map +0 -1
  483. package/dist/simulation/index.js +0 -12
  484. package/dist/simulation/index.js.map +0 -1
  485. package/dist/simulation/types.d.ts +0 -39
  486. package/dist/simulation/types.d.ts.map +0 -1
  487. package/dist/simulation/types.js +0 -2
  488. package/dist/simulation/types.js.map +0 -1
  489. package/dist/stats.d.ts.map +0 -1
  490. package/dist/stats.js +0 -205
  491. package/dist/stats.js.map +0 -1
  492. package/dist/testing/Faults.d.ts +0 -4
  493. package/dist/testing/Faults.d.ts.map +0 -1
  494. package/dist/testing/Faults.js +0 -7
  495. package/dist/testing/Faults.js.map +0 -1
  496. package/dist/testing/Png.d.ts +0 -3
  497. package/dist/testing/Png.d.ts.map +0 -1
  498. package/dist/testing/Png.js.map +0 -1
  499. package/dist/testing/Wav.d.ts +0 -14
  500. package/dist/testing/Wav.d.ts.map +0 -1
  501. package/dist/testing/Wav.js +0 -37
  502. package/dist/testing/Wav.js.map +0 -1
  503. package/dist/testing/index.d.ts +0 -5
  504. package/dist/testing/index.d.ts.map +0 -1
  505. package/dist/testing/index.js +0 -4
  506. package/dist/testing/index.js.map +0 -1
  507. package/dist/wire.d.ts +0 -7
  508. package/dist/wire.d.ts.map +0 -1
  509. package/dist/wire.generated.d.ts +0 -305
  510. package/dist/wire.generated.d.ts.map +0 -1
  511. package/dist/wire.generated.js +0 -1257
  512. package/dist/wire.generated.js.map +0 -1
  513. package/dist/wire.js +0 -5
  514. package/dist/wire.js.map +0 -1
@@ -1,168 +0,0 @@
1
- import * as Crypto from "effect/Crypto";
2
- import * as Effect from "effect/Effect";
3
- import * as Exit from "effect/Exit";
4
- import * as Redacted from "effect/Redacted";
5
- import * as Scope from "effect/Scope";
6
- import { CoordinatorClient } from "../../coordinator/_internal/client.js";
7
- import { AcquisitionFailure, parsed, ReactorError } from "../../errors.js";
8
- import { json, nonempty, uint32 } from "../../json.js";
9
- import { Session as SessionImplementation } from "../../session.js";
10
- export { AcquisitionFailure };
11
- /** The report of an acquisition that allocated and attached nothing. */
12
- export const noAcquisition = Object.freeze({
13
- localClosed: true,
14
- allocation: "none",
15
- remote: Object.freeze({
16
- attempted: false,
17
- responseReceived: false,
18
- confirmed: false,
19
- evidence: null,
20
- deleteStatus: null,
21
- state: null,
22
- }),
23
- unpublishSubmitted: Object.freeze([]),
24
- unresolvedPublications: Object.freeze([]),
25
- localErrors: Object.freeze([]),
26
- });
27
- const implementations = new WeakMap();
28
- /** Host projections get capabilities without exposing private lifecycle methods. */
29
- export const implementationOf = (session) => parsed(() => {
30
- const implementation = implementations.get(session);
31
- if (implementation === undefined)
32
- throw ReactorError.fromCode("InvalidInput", "session was not acquired by this client");
33
- return implementation;
34
- });
35
- /** A host's decoded-media projection of the current negotiated generation. */
36
- export const mediaGeneration = (session) => implementationOf(session).pipe(Effect.flatMap((value) => value.mediaGeneration()));
37
- /** A host's track-lease projection of the current negotiated generation. */
38
- export const trackGeneration = (session) => implementationOf(session).pipe(Effect.flatMap((value) => value.trackGeneration()));
39
- const validate = (input) => {
40
- const options = input.options;
41
- if (options === null || typeof options !== "object") {
42
- throw ReactorError.fromCode("InvalidInput", "session options must be an object", {
43
- outcome: "not-submitted",
44
- });
45
- }
46
- if (options.jwt !== undefined && !Redacted.isRedacted(options.jwt)) {
47
- throw ReactorError.fromCode("InvalidInput", "jwt must be Redacted", {
48
- outcome: "not-submitted",
49
- });
50
- }
51
- const credential = options.jwt === undefined ? {} : { jwt: options.jwt };
52
- if (input._tag === "Attach") {
53
- const adopt = input.options.adopt;
54
- if (adopt !== undefined && adopt !== true)
55
- throw ReactorError.fromCode("InvalidInput", "attach adopt must be true when given", {
56
- outcome: "not-submitted",
57
- });
58
- return {
59
- ...credential,
60
- intent: {
61
- _tag: "Attach",
62
- sessionId: nonempty(input.options.sessionId, "attach sessionId"),
63
- ...(input.options.connectionId === undefined
64
- ? {}
65
- : { connectionId: uint32(input.options.connectionId, "attach connectionId") }),
66
- ...(adopt === true ? { adopt } : {}),
67
- },
68
- };
69
- }
70
- return {
71
- ...credential,
72
- intent: {
73
- _tag: "Create",
74
- model: {
75
- name: nonempty(input.options.model, "model name"),
76
- ...(input.options.version === undefined
77
- ? {}
78
- : { version: nonempty(input.options.version, "model version") }),
79
- },
80
- ...(input.options.extraArgs === undefined
81
- ? {}
82
- : { extraArgs: json(input.options.extraArgs) }),
83
- },
84
- };
85
- };
86
- /** One acquisition owner for portable, browser, and native factories. */
87
- export const makeFactory = (configuration, http, peers, crypto) => {
88
- const acquire = (input, connected) => Effect.uninterruptibleMask((restore) => {
89
- let acquired;
90
- return Effect.gen(function* () {
91
- // A rejected option is invalid input; a bug in the checks stays a defect.
92
- const validated = yield* parsed(() => validate(input)).pipe(Effect.mapError((cause) => ReactorError.fromCode("InvalidInput", "invalid session acquisition input", {
93
- detail: cause,
94
- outcome: "not-submitted",
95
- })));
96
- // Only validated input reaches the span.
97
- yield* Effect.annotateCurrentSpan(validated.intent._tag === "Create"
98
- ? { "reactor.model.name": validated.intent.model.name }
99
- : {
100
- "reactor.session.id": validated.intent.sessionId,
101
- "reactor.session.adopt": validated.intent.adopt === true,
102
- });
103
- if (peers.check !== undefined)
104
- yield* restore(peers.check);
105
- const bytes = yield* restore(crypto.randomBytes(16)).pipe(Effect.mapError((cause) => ReactorError.fromCode("InvalidState", "could not allocate a request identity", {
106
- outcome: "not-submitted",
107
- detail: cause,
108
- })));
109
- const credential = validated.jwt === undefined ? configuration.credential : Effect.succeed(validated.jwt);
110
- const options = {
111
- ...configuration,
112
- ...configuration.session,
113
- apiUrl: configuration.apiUrl ?? "https://api.reactor.inc",
114
- credential: credential === undefined ? Effect.undefined : Effect.map(credential, Redacted.value),
115
- requestNamespace: Array.from(bytes, (byte) => byte.toString(16).padStart(2, "0")).join(""),
116
- intent: validated.intent,
117
- };
118
- // A failed allocation or connection closes this child scope immediately,
119
- // even when its caller catches the failure in a much longer-lived scope.
120
- const scope = yield* Scope.fork(yield* Effect.scope);
121
- const acquisition = Effect.gen(function* () {
122
- const implementation = yield* Effect.acquireRelease(parsed(() => {
123
- acquired = new SessionImplementation(options, peers.make, new CoordinatorClient(options, http));
124
- return acquired;
125
- }), (value) => value.close());
126
- const id = yield* implementation.allocate();
127
- const session = {
128
- id,
129
- ownership: validated.intent._tag === "Create" || validated.intent.adopt === true
130
- ? "owned"
131
- : "attached",
132
- connect: implementation.start(),
133
- reconnect: implementation.reconnect(),
134
- current: Effect.sync(() => implementation.snapshot),
135
- ready: implementation.readyState(),
136
- events: (bounds) => implementation.events(bounds),
137
- observe: (bounds) => implementation.observe(bounds),
138
- command: (name, data, options) => implementation.command(name, data, options),
139
- schema: implementation.schema(),
140
- upload: (name, mimeType, data, options) => implementation.upload(name, mimeType, data, options),
141
- requestRecordingClip: (seconds) => implementation.requestClip(seconds),
142
- recording: implementation.recording(),
143
- stats: implementation.stats(),
144
- close: implementation.close(),
145
- };
146
- implementations.set(session, implementation);
147
- if (connected)
148
- yield* session.connect;
149
- return session;
150
- }).pipe(Scope.provide(scope));
151
- return yield* restore(acquisition).pipe(Effect.onExit((exit) => (Exit.isFailure(exit) ? Scope.close(scope, exit) : Effect.void)));
152
- }).pipe(Effect.catch((error) => {
153
- const cleanup = acquired === undefined ? Effect.succeed(noAcquisition) : acquired.close();
154
- return cleanup.pipe(Effect.flatMap((report) => Effect.fail(AcquisitionFailure.from(error, report))));
155
- }));
156
- });
157
- // A caller-boundary span: the caller can cancel an acquisition, and a
158
- // connected one parents the connect span. It names the model or the attached
159
- // session, never a credential.
160
- const traced = (input, connected) => acquire(input, connected).pipe(Effect.tap((session) => Effect.annotateCurrentSpan("reactor.session.id", session.id)), Effect.withSpan(input._tag === "Create" ? "reactor.session.create" : "reactor.session.attach", { kind: "client", attributes: { "reactor.connect": connected } }, { captureStackTrace: false }));
161
- return {
162
- create: (options) => traced({ _tag: "Create", options }, false),
163
- attach: (options) => traced({ _tag: "Attach", options }, false),
164
- createConnected: (options) => traced({ _tag: "Create", options }, true),
165
- attachConnected: (options) => traced({ _tag: "Attach", options }, true),
166
- };
167
- };
168
- //# sourceMappingURL=acquire.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acquire.js","sourceRoot":"","sources":["../../../src/session/_internal/acquire.ts"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- import * as Duration from "effect/Duration";
2
- import * as Effect from "effect/Effect";
3
- import * as Scope from "effect/Scope";
4
- import type { CoordinatorClient } from "../../coordinator/_internal/client.js";
5
- import { ReactorError } from "../../errors.js";
6
- import type { CloseReport } from "../../SessionTypes.js";
7
- import type { Connection } from "./lifecycle.js";
8
- import type { RemoteSession } from "./remote.js";
9
- /** Run once inside Session.close's mask and gate: unpublish, local shutdown,
10
- * then owned termination. Failure in one phase cannot omit the later evidence. */
11
- export declare const cleanupSession: (options: {
12
- readonly connection: Connection | undefined;
13
- readonly scope: Scope.Closeable;
14
- readonly remote: RemoteSession;
15
- readonly http: CoordinatorClient;
16
- readonly replyTimeout: Duration.Duration;
17
- readonly retire: (connection: Connection, error: ReactorError) => void;
18
- }) => Effect.Effect<CloseReport>;
19
- //# sourceMappingURL=cleanup.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../../src/session/_internal/cleanup.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,EAAE,iBAAiB,EAAe,MAAM,uCAAuC,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,KAAK,EAAU,aAAa,EAAE,MAAM,aAAa,CAAC;AA8EzD;kFACkF;AAClF,eAAO,MAAM,cAAc,YAAa;IACtC,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;CACxE,KAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAwCzB,CAAC"}
@@ -1,102 +0,0 @@
1
- import * as Cause from "effect/Cause";
2
- import * as Duration from "effect/Duration";
3
- import * as Effect from "effect/Effect";
4
- import * as Exit from "effect/Exit";
5
- import * as Result from "effect/Result";
6
- import * as Scope from "effect/Scope";
7
- import { ReactorError } from "../../errors.js";
8
- import * as W from "../../wire.generated.js";
9
- import { isKnownRemote } from "./remote.js";
10
- const releasePublications = (connection, replyTimeout) => Effect.gen(function* () {
11
- const submitted = [], errors = [];
12
- if (connection !== undefined && connection.failure === undefined)
13
- for (const name of connection.claimed) {
14
- // Closing has already fenced ordinary requests. These are the final
15
- // notifications on the still-open transport, not correlated commands.
16
- const result = yield* Effect.exit(Effect.suspend(() => connection.peer.send("control", W.ControlClientMessage.encode({
17
- request_id: "",
18
- kind: 3,
19
- payload: { case: "unpublish_track", value: { name } },
20
- }))).pipe(Effect.timeoutOrElse({
21
- duration: Duration.min(Duration.seconds(1), replyTimeout),
22
- orElse: () => Effect.fail(ReactorError.fromCode("Timeout", "close unpublish: deadline")),
23
- })));
24
- if (Exit.isSuccess(result))
25
- submitted.push(name);
26
- else {
27
- const failure = Cause.findError(result.cause);
28
- errors.push(failure._tag === "Success" && ReactorError.is(failure.success)
29
- ? failure.success
30
- : ReactorError.fromCode("Shutdown", "publication cleanup failed", {
31
- detail: result.cause,
32
- }));
33
- }
34
- }
35
- return { submitted, errors };
36
- });
37
- const terminateOwnedRemote = (remote, http) => Effect.gen(function* () {
38
- if (!isKnownRemote(remote) || remote.ownership !== "owned")
39
- return {
40
- attempted: false,
41
- responseReceived: false,
42
- confirmed: false,
43
- evidence: null,
44
- deleteStatus: null,
45
- state: null,
46
- };
47
- const result = yield* Effect.exit(Effect.suspend(() => http.terminate(remote.id)));
48
- return Exit.isSuccess(result)
49
- ? result.value
50
- : {
51
- attempted: true,
52
- responseReceived: false,
53
- confirmed: false,
54
- evidence: null,
55
- deleteStatus: null,
56
- state: null,
57
- error: ReactorError.fromCode("Shutdown", "remote cleanup did not complete", {
58
- detail: result.cause,
59
- sessionId: remote.id,
60
- outcome: "unknown",
61
- }),
62
- };
63
- });
64
- /** Run once inside Session.close's mask and gate: unpublish, local shutdown,
65
- * then owned termination. Failure in one phase cannot omit the later evidence. */
66
- export const cleanupSession = (options) => Effect.gen(function* () {
67
- const { connection } = options;
68
- const { submitted, errors } = yield* releasePublications(connection, options.replyTimeout);
69
- if (connection !== undefined) {
70
- // Cleanup reports every failure, a host peer's included, rather than dying:
71
- // retiring the generation runs the host's close.
72
- const retired = yield* Effect.result(Effect.try({
73
- try: () => options.retire(connection, ReactorError.fromCode("Aborted", "session closed")),
74
- catch: (cause) => ReactorError.is(cause)
75
- ? cause
76
- : ReactorError.fromCode("Shutdown", "generation retirement failed", {
77
- detail: cause,
78
- }),
79
- }));
80
- if (Result.isFailure(retired))
81
- errors.push(retired.failure);
82
- }
83
- const shutdown = yield* Effect.exit(Scope.close(options.scope, Exit.void));
84
- if (Exit.isFailure(shutdown))
85
- errors.push(ReactorError.fromCode("Shutdown", "local cleanup did not complete cleanly", {
86
- detail: shutdown.cause,
87
- }));
88
- // Inspect ownership after joining local work: interrupted allocation may
89
- // have changed its evidence while the generation scope was closing.
90
- const remote = options.remote.current;
91
- const termination = yield* terminateOwnedRemote(remote, options.http);
92
- return Object.freeze({
93
- localClosed: errors.length === 0,
94
- allocation: remote === undefined ? "none" : isKnownRemote(remote) ? "known" : "unknown",
95
- ...(isKnownRemote(remote) ? { ownership: remote.ownership, sessionId: remote.id } : {}),
96
- remote: termination,
97
- unpublishSubmitted: Object.freeze(submitted),
98
- unresolvedPublications: Object.freeze([...(connection?.pendingClaims.values() ?? [])]),
99
- localErrors: Object.freeze(errors),
100
- });
101
- });
102
- //# sourceMappingURL=cleanup.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../../src/session/_internal/cleanup.ts"],"names":[],"mappings":"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"}
@@ -1,67 +0,0 @@
1
- import * as Deferred from "effect/Deferred";
2
- import * as Queue from "effect/Queue";
3
- import * as Scope from "effect/Scope";
4
- import type { IceCandidate, Mapping } from "../../contract.js";
5
- import { ReactorError } from "../../errors.js";
6
- import type { MediaTrack, Peer } from "../../PeerTypes.js";
7
- import type { ReadyState, Status } from "../../SessionTypes.js";
8
- /** Resources and protocol facts belonging to exactly one peer generation. */
9
- export declare class Connection {
10
- readonly generation: bigint;
11
- readonly scope: Scope.Closeable;
12
- readonly peer: Peer;
13
- readonly iceWake: Queue.Queue<void, ReactorError>;
14
- readonly ready: Deferred.Deferred<void, ReactorError>;
15
- readonly failed: Deferred.Deferred<never, ReactorError>;
16
- readonly iceBuffer: IceCandidate[];
17
- iceBytes: number;
18
- iceDone: boolean;
19
- finalSent: boolean;
20
- peerConnected: boolean;
21
- controlOpen: boolean;
22
- dataOpen: boolean;
23
- connectionId?: number;
24
- failure?: ReactorError;
25
- mapping: readonly Mapping[];
26
- negotiated?: ReadyState["remote"];
27
- readonly paused: Set<string>;
28
- readonly claimed: Set<string>;
29
- readonly sending: Map<string, MediaTrack>;
30
- readonly pendingClaims: Map<string, string>;
31
- readonly trackBusy: Set<string>;
32
- constructor(generation: bigint, scope: Scope.Closeable, peer: Peer);
33
- readyGate(): void;
34
- }
35
- export interface ReadyConnection extends Connection {
36
- readonly negotiated: ReadyState["remote"];
37
- }
38
- /** The phase and generation authority. Wire correlation remains in Session. */
39
- export declare class SessionLifecycle {
40
- private readonly onStatus;
41
- private phase;
42
- private revision;
43
- private active;
44
- private error;
45
- readonly scope: Scope.Closeable;
46
- readonly closing: Deferred.Deferred<never, ReactorError>;
47
- constructor(onStatus: (status: Status) => void);
48
- get status(): Status;
49
- get generation(): bigint;
50
- get connection(): Connection | undefined;
51
- get lastError(): ReactorError | undefined;
52
- get isClosing(): boolean;
53
- transition(status: Status): void;
54
- /**
55
- * The one transition to ready: a connection becomes ready together with
56
- * what it negotiated, so a ready connection always has it.
57
- */
58
- ready(connection: Connection, negotiated: ReadyState["remote"]): void;
59
- /** Called synchronously with Session's sampling reset and connecting event. */
60
- begin(reconnect: boolean, hasKnownRemote: boolean, makePeer: () => Peer): Connection;
61
- accepts(connection: Connection): boolean;
62
- assertCurrent(connection: Connection): void;
63
- currentReady(): ReadyConnection;
64
- /** Retiring an old peer must not disconnect its replacement or overwrite its error. */
65
- disconnect(connection: Connection, error: ReactorError): boolean;
66
- }
67
- //# sourceMappingURL=lifecycle.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../../src/session/_internal/lifecycle.ts"],"names":[],"mappings":"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"}
@@ -1,142 +0,0 @@
1
- import * as Deferred from "effect/Deferred";
2
- import * as Effect from "effect/Effect";
3
- import * as Queue from "effect/Queue";
4
- import * as Scope from "effect/Scope";
5
- import { ReactorError } from "../../errors.js";
6
- const transitions = {
7
- idle: ["connecting", "closing"],
8
- connecting: ["waiting", "disconnected", "closing"],
9
- waiting: ["ready", "disconnected", "closing"],
10
- ready: ["connecting", "disconnected", "closing"],
11
- disconnected: ["connecting", "closing"],
12
- closing: ["closed"],
13
- closed: [],
14
- };
15
- /** Resources and protocol facts belonging to exactly one peer generation. */
16
- export class Connection {
17
- generation;
18
- scope;
19
- peer;
20
- // Queue creation is synchronous and allocates no asynchronous work.
21
- iceWake = Effect.runSync(Queue.dropping(1));
22
- ready = Deferred.makeUnsafe();
23
- failed = Deferred.makeUnsafe();
24
- iceBuffer = [];
25
- iceBytes = 0;
26
- iceDone = false;
27
- finalSent = false;
28
- peerConnected = false;
29
- controlOpen = false;
30
- dataOpen = false;
31
- connectionId;
32
- failure;
33
- mapping = [];
34
- negotiated;
35
- paused = new Set();
36
- claimed = new Set();
37
- sending = new Map();
38
- pendingClaims = new Map();
39
- trackBusy = new Set();
40
- constructor(generation, scope, peer) {
41
- this.generation = generation;
42
- this.scope = scope;
43
- this.peer = peer;
44
- }
45
- readyGate() {
46
- if (this.peerConnected && this.controlOpen && this.dataOpen && this.failure === undefined)
47
- Deferred.doneUnsafe(this.ready, Effect.void);
48
- }
49
- }
50
- const isNegotiated = (connection) => connection.negotiated !== undefined;
51
- /** The phase and generation authority. Wire correlation remains in Session. */
52
- export class SessionLifecycle {
53
- onStatus;
54
- phase = "idle";
55
- revision = 0n;
56
- active;
57
- error;
58
- scope = Scope.makeUnsafe();
59
- closing = Deferred.makeUnsafe();
60
- constructor(onStatus) {
61
- this.onStatus = onStatus;
62
- }
63
- get status() {
64
- return this.phase;
65
- }
66
- get generation() {
67
- return this.revision;
68
- }
69
- get connection() {
70
- return this.active;
71
- }
72
- get lastError() {
73
- return this.error;
74
- }
75
- get isClosing() {
76
- return this.phase === "closing" || this.phase === "closed";
77
- }
78
- transition(status) {
79
- if (this.phase === status)
80
- return;
81
- if (!transitions[this.phase].includes(status))
82
- throw ReactorError.fromCode("InvalidState", `illegal transition ${this.phase} -> ${status}`);
83
- this.phase = status;
84
- this.onStatus(status);
85
- }
86
- /**
87
- * The one transition to ready: a connection becomes ready together with
88
- * what it negotiated, so a ready connection always has it.
89
- */
90
- ready(connection, negotiated) {
91
- this.assertCurrent(connection);
92
- connection.negotiated = negotiated;
93
- this.transition("ready");
94
- }
95
- /** Called synchronously with Session's sampling reset and connecting event. */
96
- begin(reconnect, hasKnownRemote, makePeer) {
97
- if (reconnect ? this.phase !== "ready" && this.phase !== "disconnected" : this.phase !== "idle")
98
- throw ReactorError.fromCode("InvalidState", `${reconnect ? "reconnect" : "connect"} while ${this.phase}`);
99
- if (reconnect && !hasKnownRemote)
100
- throw ReactorError.fromCode("InvalidState", "cannot reconnect without a known session");
101
- const generation = ++this.revision, scope = Scope.forkUnsafe(this.scope), peer = makePeer();
102
- const connection = new Connection(generation, scope, peer);
103
- this.active = connection;
104
- this.error = undefined;
105
- return connection;
106
- }
107
- accepts(connection) {
108
- return this.active === connection && connection.failure === undefined && !this.isClosing;
109
- }
110
- assertCurrent(connection) {
111
- // Preserve the actual failure even when close or reconnect also retired it.
112
- if (connection.failure !== undefined)
113
- throw connection.failure;
114
- if (this.active !== connection || this.isClosing)
115
- throw ReactorError.fromCode("Aborted", "retired connection generation", {
116
- generation: connection.generation,
117
- });
118
- }
119
- currentReady() {
120
- const connection = this.active;
121
- if (this.isClosing)
122
- throw ReactorError.fromCode("Closed", "session is closed", { outcome: "not-submitted" });
123
- if (this.phase !== "ready" || connection === undefined)
124
- throw ReactorError.fromCode("InvalidState", `operation requires ready, not ${this.phase}`, {
125
- outcome: "not-submitted",
126
- });
127
- this.assertCurrent(connection);
128
- // `ready` sets both together; this is a backstop against a bug, so it is a defect.
129
- if (!isNegotiated(connection))
130
- throw new Error("ready connection has no negotiated descriptor");
131
- return connection;
132
- }
133
- /** Retiring an old peer must not disconnect its replacement or overwrite its error. */
134
- disconnect(connection, error) {
135
- if (this.active !== connection || this.isClosing)
136
- return false;
137
- this.error = error;
138
- this.transition("disconnected");
139
- return true;
140
- }
141
- }
142
- //# sourceMappingURL=lifecycle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../../src/session/_internal/lifecycle.ts"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- import * as Effect from "effect/Effect";
2
- import type { Descriptor } from "../../contract.js";
3
- import type { CoordinatorClient } from "../../coordinator/_internal/client.js";
4
- import { ReactorError } from "../../errors.js";
5
- import type { SessionOptions } from "../../SessionTypes.js";
6
- import type { SessionLifecycle } from "./lifecycle.js";
7
- export interface KnownRemote {
8
- readonly ownership: "owned" | "attached";
9
- readonly id: string;
10
- descriptor?: Descriptor;
11
- connectionId?: number;
12
- }
13
- export type Remote = {
14
- readonly ownership: "allocating" | "unknown";
15
- } | KnownRemote;
16
- export declare const isKnownRemote: (remote: Remote | undefined) => remote is KnownRemote;
17
- /** One allocation's evidence survives peer generations and interrupted acquisition. */
18
- export declare class RemoteSession {
19
- private value;
20
- get current(): Remote | undefined;
21
- get id(): string | undefined;
22
- get isKnown(): boolean;
23
- requireKnown(): KnownRemote;
24
- allocationLost(): void;
25
- allocate(options: SessionOptions, http: CoordinatorClient, lifecycle: SessionLifecycle): Effect.Effect<string, ReactorError>;
26
- isKnownTerminal(): boolean;
27
- }
28
- //# sourceMappingURL=remote.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../../../src/session/_internal/remote.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,GAAG,UAAU,CAAC;IACzC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,MAAM,GAAG;IAAE,QAAQ,CAAC,SAAS,EAAE,YAAY,GAAG,SAAS,CAAA;CAAE,GAAG,WAAW,CAAC;AAEpF,eAAO,MAAM,aAAa,WAAY,MAAM,GAAG,SAAS,KAAG,MAAM,IAAI,WACF,CAAC;AAEpE,uFAAuF;AACvF,qBAAa,aAAa;IACxB,OAAO,CAAC,KAAK,CAAqB;IAElC,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAEhC;IAED,IAAI,EAAE,IAAI,MAAM,GAAG,SAAS,CAE3B;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,YAAY,IAAI,WAAW,CAI1B;IAED,cAAc,IAAI,IAAI,CAErB;IAED,QAAQ,CACN,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,iBAAiB,EACvB,SAAS,EAAE,gBAAgB,GAC1B,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAiDrC;IAED,eAAe,IAAI,OAAO,CAMzB;CACF"}