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.
- package/NOTICE +7 -2
- package/README.md +103 -141
- package/dist/Coordinator.d.ts +382 -0
- package/dist/Coordinator.d.ts.map +1 -0
- package/dist/Coordinator.js +732 -0
- package/dist/Coordinator.js.map +1 -0
- package/dist/H3.d.ts +159 -0
- package/dist/H3.d.ts.map +1 -0
- package/dist/H3.js +21 -0
- package/dist/H3.js.map +1 -0
- package/dist/H3Source.d.ts +93 -0
- package/dist/H3Source.d.ts.map +1 -0
- package/dist/H3Source.js +401 -0
- package/dist/H3Source.js.map +1 -0
- package/dist/LocalSource.d.ts +68 -0
- package/dist/LocalSource.d.ts.map +1 -0
- package/dist/LocalSource.js +354 -0
- package/dist/LocalSource.js.map +1 -0
- package/dist/Media.d.ts +106 -0
- package/dist/Media.d.ts.map +1 -0
- package/dist/Media.js +16 -0
- package/dist/Media.js.map +1 -0
- package/dist/Peer.d.ts +134 -0
- package/dist/Peer.d.ts.map +1 -0
- package/dist/Peer.js +57 -0
- package/dist/Peer.js.map +1 -0
- package/dist/Playout.d.ts +724 -0
- package/dist/Playout.d.ts.map +1 -0
- package/dist/Playout.js +28 -0
- package/dist/Playout.js.map +1 -0
- package/dist/Reactor.d.ts +135 -0
- package/dist/Reactor.d.ts.map +1 -0
- package/dist/Reactor.js +158 -0
- package/dist/Reactor.js.map +1 -0
- package/dist/ReactorError.d.ts +331 -0
- package/dist/ReactorError.d.ts.map +1 -0
- package/dist/ReactorError.js +316 -0
- package/dist/ReactorError.js.map +1 -0
- package/dist/ReactorTest.d.ts +383 -0
- package/dist/ReactorTest.d.ts.map +1 -0
- package/dist/ReactorTest.js +317 -0
- package/dist/ReactorTest.js.map +1 -0
- package/dist/Session.d.ts +314 -0
- package/dist/Session.d.ts.map +1 -0
- package/dist/Session.js +51 -0
- package/dist/Session.js.map +1 -0
- package/dist/index.d.ts +12 -22
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -11
- package/dist/index.js.map +1 -1
- package/dist/internal/correlator.d.ts +46 -0
- package/dist/internal/correlator.d.ts.map +1 -0
- package/dist/internal/correlator.js +150 -0
- package/dist/internal/correlator.js.map +1 -0
- package/dist/internal/deadline.d.ts +24 -0
- package/dist/internal/deadline.d.ts.map +1 -0
- package/dist/internal/deadline.js +44 -0
- package/dist/internal/deadline.js.map +1 -0
- package/dist/{h3/_internal/contracts.d.ts → internal/h3/commands.d.ts} +39 -33
- package/dist/internal/h3/commands.d.ts.map +1 -0
- package/dist/internal/h3/commands.js +128 -0
- package/dist/internal/h3/commands.js.map +1 -0
- package/dist/{h3 → internal/h3}/messages.d.ts +16 -11
- package/dist/internal/h3/messages.d.ts.map +1 -0
- package/dist/{h3 → internal/h3}/messages.js +19 -31
- package/dist/internal/h3/messages.js.map +1 -0
- package/dist/internal/h3/operations.d.ts +145 -0
- package/dist/internal/h3/operations.d.ts.map +1 -0
- package/dist/internal/h3/operations.js +284 -0
- package/dist/internal/h3/operations.js.map +1 -0
- package/dist/{h3 → internal/h3}/profile.d.ts +63 -65
- package/dist/internal/h3/profile.d.ts.map +1 -0
- package/dist/{h3 → internal/h3}/profile.js +39 -39
- package/dist/internal/h3/profile.js.map +1 -0
- package/dist/internal/h3/provider.d.ts +14 -0
- package/dist/internal/h3/provider.d.ts.map +1 -0
- package/dist/internal/h3/provider.js +672 -0
- package/dist/internal/h3/provider.js.map +1 -0
- package/dist/internal/h3/references.d.ts +68 -0
- package/dist/internal/h3/references.d.ts.map +1 -0
- package/dist/internal/h3/references.js +339 -0
- package/dist/internal/h3/references.js.map +1 -0
- package/dist/internal/h3/request.d.ts +56 -0
- package/dist/internal/h3/request.d.ts.map +1 -0
- package/dist/internal/h3/request.js +70 -0
- package/dist/internal/h3/request.js.map +1 -0
- package/dist/internal/h3/state.d.ts +120 -0
- package/dist/internal/h3/state.d.ts.map +1 -0
- package/dist/internal/h3/state.js +270 -0
- package/dist/internal/h3/state.js.map +1 -0
- package/dist/{Submission.d.ts → internal/h3/submission.d.ts} +1 -3
- package/dist/internal/h3/submission.d.ts.map +1 -0
- package/dist/{Submission.js → internal/h3/submission.js} +1 -9
- package/dist/internal/h3/submission.js.map +1 -0
- package/dist/internal/hub.d.ts +32 -0
- package/dist/internal/hub.d.ts.map +1 -0
- package/dist/internal/hub.js +92 -0
- package/dist/internal/hub.js.map +1 -0
- package/dist/internal/playout/errors.d.ts +51 -0
- package/dist/internal/playout/errors.d.ts.map +1 -0
- package/dist/internal/playout/errors.js +40 -0
- package/dist/internal/playout/errors.js.map +1 -0
- package/dist/internal/playout/policy.d.ts +559 -0
- package/dist/internal/playout/policy.d.ts.map +1 -0
- package/dist/internal/playout/policy.js +2338 -0
- package/dist/internal/playout/policy.js.map +1 -0
- package/dist/internal/playout/runtime.d.ts +28 -0
- package/dist/internal/playout/runtime.d.ts.map +1 -0
- package/dist/internal/playout/runtime.js +766 -0
- package/dist/internal/playout/runtime.js.map +1 -0
- package/dist/internal/playout/tag.d.ts +14 -0
- package/dist/internal/playout/tag.d.ts.map +1 -0
- package/dist/internal/playout/tag.js +43 -0
- package/dist/internal/playout/tag.js.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/common_pb.d.ts +55 -0
- package/dist/internal/proto/reactor_wire/v1/common_pb.d.ts.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/common_pb.js +42 -0
- package/dist/internal/proto/reactor_wire/v1/common_pb.js.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/control_pb.d.ts +160 -0
- package/dist/internal/proto/reactor_wire/v1/control_pb.d.ts.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/control_pb.js +21 -0
- package/dist/internal/proto/reactor_wire/v1/control_pb.js.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/data_pb.d.ts +89 -0
- package/dist/internal/proto/reactor_wire/v1/data_pb.d.ts.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/data_pb.js +20 -0
- package/dist/internal/proto/reactor_wire/v1/data_pb.js.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/model_pb.d.ts +85 -0
- package/dist/internal/proto/reactor_wire/v1/model_pb.d.ts.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/model_pb.js +24 -0
- package/dist/internal/proto/reactor_wire/v1/model_pb.js.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/platform_pb.d.ts +190 -0
- package/dist/internal/proto/reactor_wire/v1/platform_pb.d.ts.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/platform_pb.js +54 -0
- package/dist/internal/proto/reactor_wire/v1/platform_pb.js.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/track_pb.d.ts +88 -0
- package/dist/internal/proto/reactor_wire/v1/track_pb.d.ts.map +1 -0
- package/dist/internal/proto/reactor_wire/v1/track_pb.js +33 -0
- package/dist/internal/proto/reactor_wire/v1/track_pb.js.map +1 -0
- package/dist/internal/queue.d.ts +4 -0
- package/dist/internal/queue.d.ts.map +1 -0
- package/dist/{_internal → internal}/queue.js +0 -9
- package/dist/internal/queue.js.map +1 -0
- package/dist/internal/reactorTest/coordinator.d.ts +5 -0
- package/dist/internal/reactorTest/coordinator.d.ts.map +1 -0
- package/dist/internal/reactorTest/coordinator.js +178 -0
- package/dist/internal/reactorTest/coordinator.js.map +1 -0
- package/dist/internal/reactorTest/faults.d.ts +172 -0
- package/dist/internal/reactorTest/faults.d.ts.map +1 -0
- package/dist/internal/reactorTest/faults.js +23 -0
- package/dist/internal/reactorTest/faults.js.map +1 -0
- package/dist/internal/reactorTest/h3.d.ts +431 -0
- package/dist/internal/reactorTest/h3.d.ts.map +1 -0
- package/dist/internal/reactorTest/h3.js +625 -0
- package/dist/internal/reactorTest/h3.js.map +1 -0
- package/dist/internal/reactorTest/media.d.ts +22 -0
- package/dist/internal/reactorTest/media.d.ts.map +1 -0
- package/dist/internal/reactorTest/media.js +34 -0
- package/dist/internal/reactorTest/media.js.map +1 -0
- package/dist/internal/reactorTest/peer.d.ts +318 -0
- package/dist/internal/reactorTest/peer.d.ts.map +1 -0
- package/dist/internal/reactorTest/peer.js +206 -0
- package/dist/internal/reactorTest/peer.js.map +1 -0
- package/dist/internal/reactorTest/playout.d.ts +34 -0
- package/dist/internal/reactorTest/playout.d.ts.map +1 -0
- package/dist/internal/reactorTest/playout.js +340 -0
- package/dist/internal/reactorTest/playout.js.map +1 -0
- package/dist/internal/reactorTest/references.d.ts +25 -0
- package/dist/internal/reactorTest/references.d.ts.map +1 -0
- package/dist/{testing/Png.js → internal/reactorTest/references.js} +50 -12
- package/dist/internal/reactorTest/references.js.map +1 -0
- package/dist/internal/reactorTest/sessions.d.ts +364 -0
- package/dist/internal/reactorTest/sessions.d.ts.map +1 -0
- package/dist/internal/reactorTest/sessions.js +592 -0
- package/dist/internal/reactorTest/sessions.js.map +1 -0
- package/dist/internal/reactorTest/timing.d.ts +13 -0
- package/dist/internal/reactorTest/timing.d.ts.map +1 -0
- package/dist/internal/reactorTest/timing.js +20 -0
- package/dist/internal/reactorTest/timing.js.map +1 -0
- package/dist/internal/recording.d.ts +52 -0
- package/dist/internal/recording.d.ts.map +1 -0
- package/dist/internal/recording.js +141 -0
- package/dist/internal/recording.js.map +1 -0
- package/dist/internal/session/connect.d.ts +34 -0
- package/dist/internal/session/connect.d.ts.map +1 -0
- package/dist/internal/session/connect.js +502 -0
- package/dist/internal/session/connect.js.map +1 -0
- package/dist/internal/session/generation.d.ts +35 -0
- package/dist/internal/session/generation.d.ts.map +1 -0
- package/dist/internal/session/generation.js +185 -0
- package/dist/internal/session/generation.js.map +1 -0
- package/dist/internal/session/ice.d.ts +23 -0
- package/dist/internal/session/ice.d.ts.map +1 -0
- package/dist/internal/session/ice.js +57 -0
- package/dist/internal/session/ice.js.map +1 -0
- package/dist/internal/session/inbound.d.ts +50 -0
- package/dist/internal/session/inbound.d.ts.map +1 -0
- package/dist/internal/session/inbound.js +202 -0
- package/dist/internal/session/inbound.js.map +1 -0
- package/dist/internal/session/model.d.ts +163 -0
- package/dist/internal/session/model.d.ts.map +1 -0
- package/dist/internal/session/model.js +78 -0
- package/dist/internal/session/model.js.map +1 -0
- package/dist/internal/session/requests.d.ts +71 -0
- package/dist/internal/session/requests.d.ts.map +1 -0
- package/dist/internal/session/requests.js +240 -0
- package/dist/internal/session/requests.js.map +1 -0
- package/dist/internal/session/tracks.d.ts +21 -0
- package/dist/internal/session/tracks.d.ts.map +1 -0
- package/dist/internal/session/tracks.js +166 -0
- package/dist/internal/session/tracks.js.map +1 -0
- package/dist/internal/session/upload.d.ts +21 -0
- package/dist/internal/session/upload.d.ts.map +1 -0
- package/dist/internal/session/upload.js +68 -0
- package/dist/internal/session/upload.js.map +1 -0
- package/dist/internal/session.d.ts +66 -0
- package/dist/internal/session.d.ts.map +1 -0
- package/dist/internal/session.js +280 -0
- package/dist/internal/session.js.map +1 -0
- package/dist/{stats.d.ts → internal/stats.d.ts} +30 -16
- package/dist/internal/stats.d.ts.map +1 -0
- package/dist/internal/stats.js +201 -0
- package/dist/internal/stats.js.map +1 -0
- package/dist/internal/token.d.ts +22 -0
- package/dist/internal/token.d.ts.map +1 -0
- package/dist/internal/token.js +65 -0
- package/dist/internal/token.js.map +1 -0
- package/dist/internal/wire.d.ts +37 -0
- package/dist/internal/wire.d.ts.map +1 -0
- package/dist/internal/wire.js +49 -0
- package/dist/internal/wire.js.map +1 -0
- package/notices/bufbuild-protobuf-LICENSE +201 -0
- package/package.json +17 -38
- package/dist/FetchHttp.d.ts +0 -9
- package/dist/FetchHttp.d.ts.map +0 -1
- package/dist/FetchHttp.js +0 -63
- package/dist/FetchHttp.js.map +0 -1
- package/dist/PeerFactory.d.ts +0 -26
- package/dist/PeerFactory.d.ts.map +0 -1
- package/dist/PeerFactory.js +0 -4
- package/dist/PeerFactory.js.map +0 -1
- package/dist/PeerTypes.d.ts +0 -64
- package/dist/PeerTypes.d.ts.map +0 -1
- package/dist/PeerTypes.js +0 -2
- package/dist/PeerTypes.js.map +0 -1
- package/dist/Sequence.d.ts +0 -85
- package/dist/Sequence.d.ts.map +0 -1
- package/dist/Sequence.js +0 -210
- package/dist/Sequence.js.map +0 -1
- package/dist/SessionTypes.d.ts +0 -312
- package/dist/SessionTypes.d.ts.map +0 -1
- package/dist/SessionTypes.js +0 -19
- package/dist/SessionTypes.js.map +0 -1
- package/dist/Submission.d.ts.map +0 -1
- package/dist/Submission.js.map +0 -1
- package/dist/_internal/queue.d.ts +0 -6
- package/dist/_internal/queue.d.ts.map +0 -1
- package/dist/_internal/queue.js.map +0 -1
- package/dist/bytes.d.ts +0 -6
- package/dist/bytes.d.ts.map +0 -1
- package/dist/bytes.js +0 -32
- package/dist/bytes.js.map +0 -1
- package/dist/contract.d.ts +0 -149
- package/dist/contract.d.ts.map +0 -1
- package/dist/contract.js +0 -119
- package/dist/contract.js.map +0 -1
- package/dist/coordinator/_internal/client.d.ts +0 -215
- package/dist/coordinator/_internal/client.d.ts.map +0 -1
- package/dist/coordinator/_internal/client.js +0 -563
- package/dist/coordinator/_internal/client.js.map +0 -1
- package/dist/coordinator/_internal/recording.d.ts +0 -31
- package/dist/coordinator/_internal/recording.d.ts.map +0 -1
- package/dist/coordinator/_internal/recording.js +0 -123
- package/dist/coordinator/_internal/recording.js.map +0 -1
- package/dist/coordinator/_internal/response.d.ts +0 -15
- package/dist/coordinator/_internal/response.d.ts.map +0 -1
- package/dist/coordinator/_internal/response.js +0 -55
- package/dist/coordinator/_internal/response.js.map +0 -1
- package/dist/coordinator/_internal/schemas.d.ts +0 -73
- package/dist/coordinator/_internal/schemas.d.ts.map +0 -1
- package/dist/coordinator/_internal/schemas.js +0 -200
- package/dist/coordinator/_internal/schemas.js.map +0 -1
- package/dist/coordinator/index.d.ts +0 -40
- package/dist/coordinator/index.d.ts.map +0 -1
- package/dist/coordinator/index.js +0 -21
- package/dist/coordinator/index.js.map +0 -1
- package/dist/correlation.d.ts +0 -47
- package/dist/correlation.d.ts.map +0 -1
- package/dist/correlation.js +0 -131
- package/dist/correlation.js.map +0 -1
- package/dist/duration.d.ts +0 -27
- package/dist/duration.d.ts.map +0 -1
- package/dist/duration.js +0 -47
- package/dist/duration.js.map +0 -1
- package/dist/errors.d.ts +0 -1303
- package/dist/errors.d.ts.map +0 -1
- package/dist/errors.js +0 -745
- package/dist/errors.js.map +0 -1
- package/dist/h3/_internal/client.d.ts +0 -9
- package/dist/h3/_internal/client.d.ts.map +0 -1
- package/dist/h3/_internal/client.js +0 -652
- package/dist/h3/_internal/client.js.map +0 -1
- package/dist/h3/_internal/contracts.d.ts.map +0 -1
- package/dist/h3/_internal/contracts.js +0 -123
- package/dist/h3/_internal/contracts.js.map +0 -1
- package/dist/h3/_internal/deployment.d.ts +0 -8
- package/dist/h3/_internal/deployment.d.ts.map +0 -1
- package/dist/h3/_internal/deployment.js +0 -149
- package/dist/h3/_internal/deployment.js.map +0 -1
- package/dist/h3/_internal/evidence.d.ts +0 -17
- package/dist/h3/_internal/evidence.d.ts.map +0 -1
- package/dist/h3/_internal/evidence.js +0 -48
- package/dist/h3/_internal/evidence.js.map +0 -1
- package/dist/h3/_internal/operations.d.ts +0 -58
- package/dist/h3/_internal/operations.d.ts.map +0 -1
- package/dist/h3/_internal/operations.js +0 -268
- package/dist/h3/_internal/operations.js.map +0 -1
- package/dist/h3/_internal/references.d.ts +0 -24
- package/dist/h3/_internal/references.d.ts.map +0 -1
- package/dist/h3/_internal/references.js +0 -309
- package/dist/h3/_internal/references.js.map +0 -1
- package/dist/h3/_internal/request.d.ts +0 -21
- package/dist/h3/_internal/request.d.ts.map +0 -1
- package/dist/h3/_internal/request.js +0 -97
- package/dist/h3/_internal/request.js.map +0 -1
- package/dist/h3/_internal/retained.d.ts +0 -22
- package/dist/h3/_internal/retained.d.ts.map +0 -1
- package/dist/h3/_internal/retained.js +0 -89
- package/dist/h3/_internal/retained.js.map +0 -1
- package/dist/h3/_internal/state.d.ts +0 -44
- package/dist/h3/_internal/state.d.ts.map +0 -1
- package/dist/h3/_internal/state.js +0 -283
- package/dist/h3/_internal/state.js.map +0 -1
- package/dist/h3/index.d.ts +0 -10
- package/dist/h3/index.d.ts.map +0 -1
- package/dist/h3/index.js +0 -7
- package/dist/h3/index.js.map +0 -1
- package/dist/h3/messages.d.ts.map +0 -1
- package/dist/h3/messages.js.map +0 -1
- package/dist/h3/profile.d.ts.map +0 -1
- package/dist/h3/profile.js.map +0 -1
- package/dist/h3/types.d.ts +0 -291
- package/dist/h3/types.d.ts.map +0 -1
- package/dist/h3/types.js +0 -2
- package/dist/h3/types.js.map +0 -1
- package/dist/host.d.ts +0 -26
- package/dist/host.d.ts.map +0 -1
- package/dist/host.js +0 -20
- package/dist/host.js.map +0 -1
- package/dist/json.d.ts +0 -25
- package/dist/json.d.ts.map +0 -1
- package/dist/json.js +0 -143
- package/dist/json.js.map +0 -1
- package/dist/media-stream.d.ts +0 -10
- package/dist/media-stream.d.ts.map +0 -1
- package/dist/media-stream.js +0 -18
- package/dist/media-stream.js.map +0 -1
- package/dist/observation.d.ts +0 -38
- package/dist/observation.d.ts.map +0 -1
- package/dist/observation.js +0 -113
- package/dist/observation.js.map +0 -1
- package/dist/orchestration/elapsed.d.ts +0 -9
- package/dist/orchestration/elapsed.d.ts.map +0 -1
- package/dist/orchestration/elapsed.js +0 -8
- package/dist/orchestration/elapsed.js.map +0 -1
- package/dist/orchestration/h3-source.d.ts +0 -58
- package/dist/orchestration/h3-source.d.ts.map +0 -1
- package/dist/orchestration/h3-source.js +0 -362
- package/dist/orchestration/h3-source.js.map +0 -1
- package/dist/orchestration/index.d.ts +0 -17
- package/dist/orchestration/index.d.ts.map +0 -1
- package/dist/orchestration/index.js +0 -12
- package/dist/orchestration/index.js.map +0 -1
- package/dist/orchestration/media-buffer.d.ts +0 -32
- package/dist/orchestration/media-buffer.d.ts.map +0 -1
- package/dist/orchestration/media-buffer.js +0 -94
- package/dist/orchestration/media-buffer.js.map +0 -1
- package/dist/orchestration/open-h3.d.ts +0 -101
- package/dist/orchestration/open-h3.d.ts.map +0 -1
- package/dist/orchestration/open-h3.js +0 -127
- package/dist/orchestration/open-h3.js.map +0 -1
- package/dist/orchestration/queries.d.ts +0 -10
- package/dist/orchestration/queries.d.ts.map +0 -1
- package/dist/orchestration/queries.js +0 -43
- package/dist/orchestration/queries.js.map +0 -1
- package/dist/orchestration/references.d.ts +0 -18
- package/dist/orchestration/references.d.ts.map +0 -1
- package/dist/orchestration/references.js +0 -79
- package/dist/orchestration/references.js.map +0 -1
- package/dist/orchestration/renewal-state.d.ts +0 -84
- package/dist/orchestration/renewal-state.d.ts.map +0 -1
- package/dist/orchestration/renewal-state.js +0 -95
- package/dist/orchestration/renewal-state.js.map +0 -1
- package/dist/orchestration/renewal.d.ts +0 -103
- package/dist/orchestration/renewal.d.ts.map +0 -1
- package/dist/orchestration/renewal.js +0 -1099
- package/dist/orchestration/renewal.js.map +0 -1
- package/dist/orchestration/request.d.ts +0 -65
- package/dist/orchestration/request.d.ts.map +0 -1
- package/dist/orchestration/request.js +0 -134
- package/dist/orchestration/request.js.map +0 -1
- package/dist/orchestration/retention.d.ts +0 -100
- package/dist/orchestration/retention.d.ts.map +0 -1
- package/dist/orchestration/retention.js +0 -134
- package/dist/orchestration/retention.js.map +0 -1
- package/dist/orchestration/routing.d.ts +0 -21
- package/dist/orchestration/routing.d.ts.map +0 -1
- package/dist/orchestration/routing.js +0 -93
- package/dist/orchestration/routing.js.map +0 -1
- package/dist/orchestration/scheduler-key.d.ts +0 -14
- package/dist/orchestration/scheduler-key.d.ts.map +0 -1
- package/dist/orchestration/scheduler-key.js +0 -62
- package/dist/orchestration/scheduler-key.js.map +0 -1
- package/dist/orchestration/scheduler-policy.d.ts +0 -246
- package/dist/orchestration/scheduler-policy.d.ts.map +0 -1
- package/dist/orchestration/scheduler-policy.js +0 -668
- package/dist/orchestration/scheduler-policy.js.map +0 -1
- package/dist/orchestration/scheduler.d.ts +0 -393
- package/dist/orchestration/scheduler.d.ts.map +0 -1
- package/dist/orchestration/scheduler.js +0 -2621
- package/dist/orchestration/scheduler.js.map +0 -1
- package/dist/orchestration/source-slot.d.ts +0 -124
- package/dist/orchestration/source-slot.d.ts.map +0 -1
- package/dist/orchestration/source-slot.js +0 -348
- package/dist/orchestration/source-slot.js.map +0 -1
- package/dist/orchestration/types.d.ts +0 -1462
- package/dist/orchestration/types.d.ts.map +0 -1
- package/dist/orchestration/types.js +0 -135
- package/dist/orchestration/types.js.map +0 -1
- package/dist/protobuf.d.ts +0 -63
- package/dist/protobuf.d.ts.map +0 -1
- package/dist/protobuf.js +0 -252
- package/dist/protobuf.js.map +0 -1
- package/dist/session/_internal/acquire.d.ts +0 -21
- package/dist/session/_internal/acquire.d.ts.map +0 -1
- package/dist/session/_internal/acquire.js +0 -168
- package/dist/session/_internal/acquire.js.map +0 -1
- package/dist/session/_internal/cleanup.d.ts +0 -19
- package/dist/session/_internal/cleanup.d.ts.map +0 -1
- package/dist/session/_internal/cleanup.js +0 -102
- package/dist/session/_internal/cleanup.js.map +0 -1
- package/dist/session/_internal/lifecycle.d.ts +0 -67
- package/dist/session/_internal/lifecycle.d.ts.map +0 -1
- package/dist/session/_internal/lifecycle.js +0 -142
- package/dist/session/_internal/lifecycle.js.map +0 -1
- package/dist/session/_internal/remote.d.ts +0 -28
- package/dist/session/_internal/remote.d.ts.map +0 -1
- package/dist/session/_internal/remote.js +0 -71
- package/dist/session/_internal/remote.js.map +0 -1
- package/dist/session/_internal/uploads.d.ts +0 -7
- package/dist/session/_internal/uploads.d.ts.map +0 -1
- package/dist/session/_internal/uploads.js +0 -31
- package/dist/session/_internal/uploads.js.map +0 -1
- package/dist/session/commands.d.ts +0 -2
- package/dist/session/commands.d.ts.map +0 -1
- package/dist/session/commands.js +0 -2
- package/dist/session/commands.js.map +0 -1
- package/dist/session/files.d.ts +0 -21
- package/dist/session/files.d.ts.map +0 -1
- package/dist/session/files.js +0 -49
- package/dist/session/files.js.map +0 -1
- package/dist/session/index.d.ts +0 -84
- package/dist/session/index.d.ts.map +0 -1
- package/dist/session/index.js +0 -16
- package/dist/session/index.js.map +0 -1
- package/dist/session/media.d.ts +0 -114
- package/dist/session/media.d.ts.map +0 -1
- package/dist/session/media.js +0 -2
- package/dist/session/media.js.map +0 -1
- package/dist/session/recorder.d.ts +0 -24
- package/dist/session/recorder.d.ts.map +0 -1
- package/dist/session/recorder.js +0 -19
- package/dist/session/recorder.js.map +0 -1
- package/dist/session.d.ts +0 -105
- package/dist/session.d.ts.map +0 -1
- package/dist/session.js +0 -976
- package/dist/session.js.map +0 -1
- package/dist/simulation/_internal/source.d.ts +0 -12
- package/dist/simulation/_internal/source.d.ts.map +0 -1
- package/dist/simulation/_internal/source.js +0 -513
- package/dist/simulation/_internal/source.js.map +0 -1
- package/dist/simulation/index.d.ts +0 -13
- package/dist/simulation/index.d.ts.map +0 -1
- package/dist/simulation/index.js +0 -12
- package/dist/simulation/index.js.map +0 -1
- package/dist/simulation/types.d.ts +0 -39
- package/dist/simulation/types.d.ts.map +0 -1
- package/dist/simulation/types.js +0 -2
- package/dist/simulation/types.js.map +0 -1
- package/dist/stats.d.ts.map +0 -1
- package/dist/stats.js +0 -205
- package/dist/stats.js.map +0 -1
- package/dist/testing/Faults.d.ts +0 -4
- package/dist/testing/Faults.d.ts.map +0 -1
- package/dist/testing/Faults.js +0 -7
- package/dist/testing/Faults.js.map +0 -1
- package/dist/testing/Png.d.ts +0 -3
- package/dist/testing/Png.d.ts.map +0 -1
- package/dist/testing/Png.js.map +0 -1
- package/dist/testing/Wav.d.ts +0 -14
- package/dist/testing/Wav.d.ts.map +0 -1
- package/dist/testing/Wav.js +0 -37
- package/dist/testing/Wav.js.map +0 -1
- package/dist/testing/index.d.ts +0 -5
- package/dist/testing/index.d.ts.map +0 -1
- package/dist/testing/index.js +0 -4
- package/dist/testing/index.js.map +0 -1
- package/dist/wire.d.ts +0 -7
- package/dist/wire.d.ts.map +0 -1
- package/dist/wire.generated.d.ts +0 -305
- package/dist/wire.generated.d.ts.map +0 -1
- package/dist/wire.generated.js +0 -1257
- package/dist/wire.generated.js.map +0 -1
- package/dist/wire.js +0 -5
- 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":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvD,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AASpE,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B,wEAAwE;AACxE,MAAM,CAAC,MAAM,aAAa,GAAgB,MAAM,CAAC,MAAM,CAAC;IACtD,WAAW,EAAE,IAAI;IACjB,UAAU,EAAE,MAAM;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;QACpB,SAAS,EAAE,KAAK;QAChB,gBAAgB,EAAE,KAAK;QACvB,SAAS,EAAE,KAAK;QAChB,QAAQ,EAAE,IAAI;QACd,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,IAAI;KACZ,CAAC;IACF,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;IACrC,sBAAsB,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;IACzC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;CAC/B,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,IAAI,OAAO,EAAkC,CAAC;AAEtE,oFAAoF;AACpF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,OAAgB,EACoC,EAAE,CACtD,MAAM,CAAC,GAAG,EAAE;IACV,MAAM,cAAc,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACpD,IAAI,cAAc,KAAK,SAAS;QAC9B,MAAM,YAAY,CAAC,QAAQ,CAAC,cAAc,EAAE,yCAAyC,CAAC,CAAC;IACzF,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC,CAAC;AAEL,8EAA8E;AAC9E,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAgB,EAAgD,EAAE,CAChG,gBAAgB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;AAErF,4EAA4E;AAC5E,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAgB,EAAgD,EAAE,CAChG,gBAAgB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;AAErF,MAAM,QAAQ,GAAG,CACf,KAAY,EACsE,EAAE;IACpF,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC9B,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QACpD,MAAM,YAAY,CAAC,QAAQ,CAAC,cAAc,EAAE,mCAAmC,EAAE;YAC/E,OAAO,EAAE,eAAe;SACzB,CAAC,CAAC;IACL,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACnE,MAAM,YAAY,CAAC,QAAQ,CAAC,cAAc,EAAE,sBAAsB,EAAE;YAClE,OAAO,EAAE,eAAe;SACzB,CAAC,CAAC;IACL,CAAC;IACD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;IACzE,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAY,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAC3C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;YACvC,MAAM,YAAY,CAAC,QAAQ,CAAC,cAAc,EAAE,sCAAsC,EAAE;gBAClF,OAAO,EAAE,eAAe;aACzB,CAAC,CAAC;QACL,OAAO;YACL,GAAG,UAAU;YACb,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,kBAAkB,CAAC;gBAChE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,KAAK,SAAS;oBAC1C,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,qBAAqB,CAAC,EAAE,CAAC;gBAChF,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACrC;SACF,CAAC;IACJ,CAAC;IACD,OAAO;QACL,GAAG,UAAU;QACb,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,YAAY,CAAC;gBACjD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS;oBACrC,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC,EAAE,CAAC;aACnE;YACD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS;gBACvC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;SAClD;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,yEAAyE;AACzE,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,aAA4B,EAC5B,IAAqB,EACrB,KAAuB,EACvB,MAAqB,EACZ,EAAE;IACX,MAAM,OAAO,GAAG,CACd,KAAY,EACZ,SAAkB,EACuC,EAAE,CAC3D,MAAM,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,EAAE;QACrC,IAAI,QAA2C,CAAC;QAChD,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACzB,0EAA0E;YAC1E,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CACzD,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CACxB,YAAY,CAAC,QAAQ,CAAC,cAAc,EAAE,mCAAmC,EAAE;gBACzE,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,eAAe;aACzB,CAAC,CACH,CACF,CAAC;YACF,yCAAyC;YACzC,KAAK,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAC/B,SAAS,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ;gBAChC,CAAC,CAAC,EAAE,oBAAoB,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;gBACvD,CAAC,CAAC;oBACE,oBAAoB,EAAE,SAAS,CAAC,MAAM,CAAC,SAAS;oBAChD,uBAAuB,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI;iBACzD,CACN,CAAC;YACF,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;gBAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CACvD,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CACxB,YAAY,CAAC,QAAQ,CAAC,cAAc,EAAE,uCAAuC,EAAE;gBAC7E,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,KAAK;aACd,CAAC,CACH,CACF,CAAC;YACF,MAAM,UAAU,GACd,SAAS,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACzF,MAAM,OAAO,GAAmB;gBAC9B,GAAG,aAAa;gBAChB,GAAG,aAAa,CAAC,OAAO;gBACxB,MAAM,EAAE,aAAa,CAAC,MAAM,IAAI,yBAAyB;gBACzD,UAAU,EACR,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,KAAK,CAAC;gBACtF,gBAAgB,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CACpF,EAAE,CACH;gBACD,MAAM,EAAE,SAAS,CAAC,MAAM;aACzB,CAAC;YAEF,yEAAyE;YACzE,yEAAyE;YACzE,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACrD,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;gBACtC,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,cAAc,CACjD,MAAM,CAAC,GAAG,EAAE;oBACV,QAAQ,GAAG,IAAI,qBAAqB,CAClC,OAAO,EACP,KAAK,CAAC,IAAI,EACV,IAAI,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CACrC,CAAC;oBACF,OAAO,QAAQ,CAAC;gBAClB,CAAC,CAAC,EACF,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,CACzB,CAAC;gBACF,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;gBAC5C,MAAM,OAAO,GAAY;oBACvB,EAAE;oBACF,SAAS,EACP,SAAS,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI;wBACnE,CAAC,CAAC,OAAO;wBACT,CAAC,CAAC,UAAU;oBAChB,OAAO,EAAE,cAAc,CAAC,KAAK,EAAE;oBAC/B,SAAS,EAAE,cAAc,CAAC,SAAS,EAAE;oBACrC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC;oBACnD,KAAK,EAAE,cAAc,CAAC,UAAU,EAAE;oBAClC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC;oBACjD,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC;oBACnD,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC;oBAC7E,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE;oBAC/B,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CACxC,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC;oBACtD,oBAAoB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,OAAO,CAAC;oBACtE,SAAS,EAAE,cAAc,CAAC,SAAS,EAAE;oBACrC,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE;oBAC7B,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE;iBAC9B,CAAC;gBACF,eAAe,CAAC,GAAG,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;gBAC7C,IAAI,SAAS;oBAAE,KAAK,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;gBACtC,OAAO,OAAO,CAAC;YACjB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;YAE9B,OAAO,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CACrC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CACzF,CAAC;QACJ,CAAC,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACrB,MAAM,OAAO,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC1F,OAAO,OAAO,CAAC,IAAI,CACjB,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAChF,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;IAEL,sEAAsE;IACtE,6EAA6E;IAC7E,+BAA+B;IAC/B,MAAM,MAAM,GAAG,CACb,KAAY,EACZ,SAAkB,EACuC,EAAE,CAC3D,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,IAAI,CAC5B,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,EACrF,MAAM,CAAC,QAAQ,CACb,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,wBAAwB,EAC7E,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,EAAE,EAChE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAC7B,CACF,CAAC;IAEJ,OAAO;QACL,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,KAAK,CAAC;QAC/D,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,KAAK,CAAC;QAC/D,eAAe,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC;QACvE,eAAe,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC;KACxE,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -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"}
|