reactor-effect-client 0.2.0 → 0.3.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/README.md +66 -6
- package/dist/FetchHttp.js +1 -1
- package/dist/FetchHttp.js.map +1 -1
- package/dist/PeerFactory.d.ts +13 -2
- package/dist/PeerFactory.d.ts.map +1 -1
- package/dist/PeerFactory.js.map +1 -1
- package/dist/PeerTypes.d.ts +2 -2
- package/dist/PeerTypes.d.ts.map +1 -1
- package/dist/Sequence.d.ts +18 -14
- package/dist/Sequence.d.ts.map +1 -1
- package/dist/Sequence.js +117 -122
- package/dist/Sequence.js.map +1 -1
- package/dist/SessionTypes.d.ts +172 -15
- package/dist/SessionTypes.d.ts.map +1 -1
- package/dist/SessionTypes.js +18 -1
- package/dist/SessionTypes.js.map +1 -1
- package/dist/bytes.js +3 -3
- package/dist/bytes.js.map +1 -1
- package/dist/contract.d.ts +120 -29
- package/dist/contract.d.ts.map +1 -1
- package/dist/contract.js +105 -73
- package/dist/contract.js.map +1 -1
- package/dist/coordinator/_internal/client.d.ts +111 -17
- package/dist/coordinator/_internal/client.d.ts.map +1 -1
- package/dist/coordinator/_internal/client.js +187 -74
- package/dist/coordinator/_internal/client.js.map +1 -1
- package/dist/coordinator/_internal/recording.d.ts +33 -0
- package/dist/coordinator/_internal/recording.d.ts.map +1 -0
- package/dist/coordinator/_internal/recording.js +123 -0
- package/dist/coordinator/_internal/recording.js.map +1 -0
- package/dist/coordinator/_internal/response.d.ts.map +1 -1
- package/dist/coordinator/_internal/response.js +5 -7
- package/dist/coordinator/_internal/response.js.map +1 -1
- package/dist/coordinator/_internal/schemas.d.ts +40 -6
- package/dist/coordinator/_internal/schemas.d.ts.map +1 -1
- package/dist/coordinator/_internal/schemas.js +94 -64
- package/dist/coordinator/_internal/schemas.js.map +1 -1
- package/dist/coordinator/index.d.ts +14 -2
- package/dist/coordinator/index.d.ts.map +1 -1
- package/dist/coordinator/index.js +14 -18
- package/dist/coordinator/index.js.map +1 -1
- package/dist/correlation.d.ts +15 -0
- package/dist/correlation.d.ts.map +1 -1
- package/dist/correlation.js +26 -8
- package/dist/correlation.js.map +1 -1
- package/dist/duration.d.ts +25 -0
- package/dist/duration.d.ts.map +1 -0
- package/dist/duration.js +47 -0
- package/dist/duration.js.map +1 -0
- package/dist/errors.d.ts +1264 -49
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +698 -46
- package/dist/errors.js.map +1 -1
- package/dist/h3/_internal/client.d.ts +2 -2
- package/dist/h3/_internal/client.d.ts.map +1 -1
- package/dist/h3/_internal/client.js +280 -146
- package/dist/h3/_internal/client.js.map +1 -1
- package/dist/h3/_internal/contracts.d.ts.map +1 -1
- package/dist/h3/_internal/contracts.js +2 -2
- package/dist/h3/_internal/contracts.js.map +1 -1
- package/dist/h3/_internal/deployment.d.ts.map +1 -1
- package/dist/h3/_internal/deployment.js +5 -4
- package/dist/h3/_internal/deployment.js.map +1 -1
- package/dist/h3/_internal/evidence.js +1 -1
- package/dist/h3/_internal/evidence.js.map +1 -1
- package/dist/h3/_internal/operations.d.ts +58 -0
- package/dist/h3/_internal/operations.d.ts.map +1 -0
- package/dist/h3/_internal/operations.js +268 -0
- package/dist/h3/_internal/operations.js.map +1 -0
- package/dist/h3/_internal/references.d.ts.map +1 -1
- package/dist/h3/_internal/references.js +3 -8
- package/dist/h3/_internal/references.js.map +1 -1
- package/dist/h3/_internal/request.js +1 -1
- package/dist/h3/_internal/request.js.map +1 -1
- package/dist/h3/_internal/retained.d.ts +22 -0
- package/dist/h3/_internal/retained.d.ts.map +1 -0
- package/dist/h3/_internal/retained.js +89 -0
- package/dist/h3/_internal/retained.js.map +1 -0
- package/dist/h3/_internal/state.d.ts +15 -1
- package/dist/h3/_internal/state.d.ts.map +1 -1
- package/dist/h3/_internal/state.js +69 -29
- package/dist/h3/_internal/state.js.map +1 -1
- package/dist/h3/index.d.ts +1 -1
- package/dist/h3/index.d.ts.map +1 -1
- package/dist/h3/messages.d.ts +118 -109
- package/dist/h3/messages.d.ts.map +1 -1
- package/dist/h3/messages.js +73 -51
- package/dist/h3/messages.js.map +1 -1
- package/dist/h3/types.d.ts +109 -13
- package/dist/h3/types.d.ts.map +1 -1
- package/dist/host.d.ts +6 -6
- package/dist/host.d.ts.map +1 -1
- package/dist/host.js +4 -5
- package/dist/host.js.map +1 -1
- package/dist/index.d.ts +11 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/json.d.ts +13 -6
- package/dist/json.d.ts.map +1 -1
- package/dist/json.js +34 -14
- package/dist/json.js.map +1 -1
- package/dist/media-stream.d.ts.map +1 -1
- package/dist/media-stream.js +9 -11
- package/dist/media-stream.js.map +1 -1
- package/dist/observation.d.ts +9 -0
- package/dist/observation.d.ts.map +1 -1
- package/dist/observation.js +20 -18
- package/dist/observation.js.map +1 -1
- package/dist/orchestration/h3-source.d.ts +32 -4
- package/dist/orchestration/h3-source.d.ts.map +1 -1
- package/dist/orchestration/h3-source.js +47 -14
- package/dist/orchestration/h3-source.js.map +1 -1
- package/dist/orchestration/index.d.ts +9 -6
- package/dist/orchestration/index.d.ts.map +1 -1
- package/dist/orchestration/index.js +5 -3
- package/dist/orchestration/index.js.map +1 -1
- package/dist/orchestration/media-buffer.d.ts +12 -4
- package/dist/orchestration/media-buffer.d.ts.map +1 -1
- package/dist/orchestration/media-buffer.js +31 -11
- package/dist/orchestration/media-buffer.js.map +1 -1
- package/dist/orchestration/open-h3.d.ts +65 -0
- package/dist/orchestration/open-h3.d.ts.map +1 -0
- package/dist/orchestration/open-h3.js +65 -0
- package/dist/orchestration/open-h3.js.map +1 -0
- package/dist/orchestration/references.d.ts +5 -1
- package/dist/orchestration/references.d.ts.map +1 -1
- package/dist/orchestration/references.js +37 -34
- package/dist/orchestration/references.js.map +1 -1
- package/dist/orchestration/renewal-state.js +1 -1
- package/dist/orchestration/renewal-state.js.map +1 -1
- package/dist/orchestration/renewal.d.ts +64 -64
- package/dist/orchestration/renewal.d.ts.map +1 -1
- package/dist/orchestration/renewal.js +149 -88
- package/dist/orchestration/renewal.js.map +1 -1
- package/dist/orchestration/request.d.ts +11 -12
- package/dist/orchestration/request.d.ts.map +1 -1
- package/dist/orchestration/request.js +63 -66
- package/dist/orchestration/request.js.map +1 -1
- package/dist/orchestration/routing.d.ts.map +1 -1
- package/dist/orchestration/routing.js +17 -14
- package/dist/orchestration/routing.js.map +1 -1
- package/dist/orchestration/source-slot.d.ts +15 -5
- package/dist/orchestration/source-slot.d.ts.map +1 -1
- package/dist/orchestration/source-slot.js +40 -21
- package/dist/orchestration/source-slot.js.map +1 -1
- package/dist/orchestration/types.d.ts +594 -39
- package/dist/orchestration/types.d.ts.map +1 -1
- package/dist/orchestration/types.js +20 -0
- package/dist/orchestration/types.js.map +1 -1
- package/dist/protobuf.js +2 -2
- package/dist/protobuf.js.map +1 -1
- package/dist/session/_internal/acquire.d.ts +4 -6
- package/dist/session/_internal/acquire.d.ts.map +1 -1
- package/dist/session/_internal/acquire.js +40 -50
- package/dist/session/_internal/acquire.js.map +1 -1
- package/dist/session/_internal/cleanup.d.ts +2 -1
- package/dist/session/_internal/cleanup.d.ts.map +1 -1
- package/dist/session/_internal/cleanup.js +23 -15
- package/dist/session/_internal/cleanup.js.map +1 -1
- package/dist/session/_internal/lifecycle.d.ts +5 -0
- package/dist/session/_internal/lifecycle.d.ts.map +1 -1
- package/dist/session/_internal/lifecycle.js +16 -6
- package/dist/session/_internal/lifecycle.js.map +1 -1
- package/dist/session/_internal/remote.d.ts.map +1 -1
- package/dist/session/_internal/remote.js +16 -7
- package/dist/session/_internal/remote.js.map +1 -1
- package/dist/session/_internal/uploads.d.ts +4 -1
- package/dist/session/_internal/uploads.d.ts.map +1 -1
- package/dist/session/_internal/uploads.js +25 -27
- package/dist/session/_internal/uploads.js.map +1 -1
- package/dist/session/commands.d.ts +1 -21
- package/dist/session/commands.d.ts.map +1 -1
- package/dist/session/commands.js +1 -12
- package/dist/session/commands.js.map +1 -1
- package/dist/session/files.d.ts +10 -2
- package/dist/session/files.d.ts.map +1 -1
- package/dist/session/files.js +11 -16
- package/dist/session/files.js.map +1 -1
- package/dist/session/index.d.ts +6 -6
- package/dist/session/index.d.ts.map +1 -1
- package/dist/session/index.js.map +1 -1
- package/dist/session/media.d.ts +53 -6
- package/dist/session/media.d.ts.map +1 -1
- package/dist/session/recorder.d.ts +24 -0
- package/dist/session/recorder.d.ts.map +1 -0
- package/dist/session/recorder.js +19 -0
- package/dist/session/recorder.js.map +1 -0
- package/dist/session.d.ts +5 -4
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +213 -110
- package/dist/session.js.map +1 -1
- package/dist/simulation/_internal/source.d.ts.map +1 -1
- package/dist/simulation/_internal/source.js +57 -48
- package/dist/simulation/_internal/source.js.map +1 -1
- package/dist/simulation/index.d.ts +4 -5
- package/dist/simulation/index.d.ts.map +1 -1
- package/dist/simulation/index.js +3 -4
- package/dist/simulation/index.js.map +1 -1
- package/dist/simulation/types.d.ts +16 -2
- package/dist/simulation/types.d.ts.map +1 -1
- package/dist/stats.d.ts +19 -0
- package/dist/stats.d.ts.map +1 -1
- package/dist/stats.js +79 -8
- package/dist/stats.js.map +1 -1
- package/package.json +5 -4
- package/notices/owned-webrtc/Effect-MIT.txt +0 -21
- package/notices/owned-webrtc/IETF.txt +0 -43
- package/notices/owned-webrtc/LICENSE +0 -21
- package/notices/owned-webrtc/UPSTREAM.md +0 -20
- package/notices/owned-webrtc/VP8-ADAPTATION.md +0 -32
- package/notices/owned-webrtc/VP8-AUTHORS.txt +0 -42
- package/notices/owned-webrtc/VP8-LICENSE.txt +0 -25
- package/notices/owned-webrtc/VP8-PATENTS.txt +0 -21
- package/notices/owned-webrtc/Werift-MIT.txt +0 -21
- package/notices/owned-webrtc/libvpx-v1.12.0-LICENSE.txt +0 -28
- package/notices/owned-webrtc/libvpx-v1.12.0-PATENTS.txt +0 -22
- package/notices/owned-webrtc/rfc3711.txt +0 -3139
- package/notices/owned-webrtc/str0m-MIT.txt +0 -7
package/dist/h3/types.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import type * as Duration from "effect/Duration";
|
|
1
2
|
import type * as Effect from "effect/Effect";
|
|
2
3
|
import type * as Result from "effect/Result";
|
|
3
4
|
import type * as Scope from "effect/Scope";
|
|
4
5
|
import type * as Stream from "effect/Stream";
|
|
5
|
-
import type { ReactorError } from "../errors.js";
|
|
6
|
-
import type {
|
|
6
|
+
import type { CommandFailure, PolicyFailure, ReactorError } from "../errors.js";
|
|
7
|
+
import type { CommandReply, ReplyTimeoutOptions, SessionEvent, UploadTimeoutOptions } from "../session/index.js";
|
|
7
8
|
import type { Submission } from "../Submission.js";
|
|
8
9
|
import type { UploadReference } from "../wire.generated.js";
|
|
9
10
|
import type { Clip, DecodedMessage, Message, MessageType, Payload, Queue, State } from "./messages.js";
|
|
@@ -82,6 +83,45 @@ export interface Acceptance {
|
|
|
82
83
|
readonly source: CommandReply;
|
|
83
84
|
};
|
|
84
85
|
}
|
|
86
|
+
/** A phase a clip can be awaited to reach. */
|
|
87
|
+
export type ClipPhase = "generated" | "started";
|
|
88
|
+
/** One piece of evidence about a clip, and the transport generation that carried it. */
|
|
89
|
+
export interface ClipFact {
|
|
90
|
+
readonly clipId: string;
|
|
91
|
+
/**
|
|
92
|
+
* The lifecycle message that established it, or the `queue_update` or
|
|
93
|
+
* `state_update` snapshot that listed the clip.
|
|
94
|
+
*/
|
|
95
|
+
readonly message: MessageType;
|
|
96
|
+
readonly transportGeneration: bigint;
|
|
97
|
+
readonly source: CommandReply;
|
|
98
|
+
}
|
|
99
|
+
/** What one clip operation has established so far; monotone. */
|
|
100
|
+
export interface OperationFacts {
|
|
101
|
+
readonly submissionId: string;
|
|
102
|
+
readonly acceptance?: Acceptance;
|
|
103
|
+
readonly generated?: ClipFact;
|
|
104
|
+
readonly started?: ClipFact;
|
|
105
|
+
readonly ended?: ClipFact;
|
|
106
|
+
/** The provider retired before evidence decided the rest. */
|
|
107
|
+
readonly indeterminate: boolean;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* A committed clip's facts as they arrive, each resolved at most once from the
|
|
111
|
+
* provider's own evidence, and a phase only once the acceptance is decided. A
|
|
112
|
+
* phase completes when it or a later one is observed, fails with `ClipEnded`
|
|
113
|
+
* when the clip failed or was popped first, and fails `Indeterminate` if the
|
|
114
|
+
* provider retires before evidence decides it. Every fact fails with the
|
|
115
|
+
* enqueue's own failure when that failure was definite. Evidence from a later
|
|
116
|
+
* transport generation of the same session still resolves the operation.
|
|
117
|
+
*/
|
|
118
|
+
export interface ClipOperation {
|
|
119
|
+
readonly submissionId: string;
|
|
120
|
+
readonly accepted: Effect.Effect<Acceptance, ReactorError | CommandFailure>;
|
|
121
|
+
readonly reached: (phase: ClipPhase) => Effect.Effect<ClipFact, ReactorError | CommandFailure>;
|
|
122
|
+
readonly ended: Effect.Effect<ClipFact, ReactorError | CommandFailure>;
|
|
123
|
+
readonly facts: Effect.Effect<OperationFacts>;
|
|
124
|
+
}
|
|
85
125
|
export interface Reply<K extends MessageType> {
|
|
86
126
|
readonly value: Payload<K>;
|
|
87
127
|
readonly source: CommandReply;
|
|
@@ -123,19 +163,63 @@ export interface ProviderObservation {
|
|
|
123
163
|
readonly revision: bigint;
|
|
124
164
|
readonly events: Stream.Stream<ProviderEvent, ReactorError>;
|
|
125
165
|
}
|
|
126
|
-
|
|
127
|
-
|
|
166
|
+
/**
|
|
167
|
+
* A commit hook may refuse locally with a `PolicyFailure` (`E`); the submission
|
|
168
|
+
* fails with it unchanged, since nothing was dispatched.
|
|
169
|
+
*/
|
|
170
|
+
export interface PrepareHooks<E extends PolicyFailure = never> {
|
|
171
|
+
readonly commit?: (submissionId: string) => Effect.Effect<void, CommandFailure | E>;
|
|
128
172
|
/** A post-commit observer. Failure is diagnostic and cannot rewrite remote evidence. */
|
|
129
|
-
readonly result?: (submissionId: string, result: Result.Result<Acceptance, CommandFailure>) => Effect.Effect<void>;
|
|
173
|
+
readonly result?: (submissionId: string, result: Result.Result<Acceptance, CommandFailure | E>) => Effect.Effect<void>;
|
|
130
174
|
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
175
|
+
/**
|
|
176
|
+
* The provider's options. `replyTimeout` bounds each H3 command through the
|
|
177
|
+
* observation of its returned envelope, 15 seconds by default; `uploadTimeout`
|
|
178
|
+
* bounds each reference upload, 60 seconds by default. Both are at most 10
|
|
179
|
+
* minutes, and a bare number is milliseconds.
|
|
180
|
+
*
|
|
181
|
+
* H3 documents that a command replies before it broadcasts the state and queue
|
|
182
|
+
* it changed, though hosted H3 broadcasts an enqueue's queue first. A command
|
|
183
|
+
* that needs the provider's current facts therefore waits,
|
|
184
|
+
* up to `replyTimeout` each time, for a synchronizing provider to become ready
|
|
185
|
+
* before it sends (it is refused with `InvalidState`, not submitted, if the
|
|
186
|
+
* provider does not), and after its reply for the broadcasts the reply implies,
|
|
187
|
+
* so its caller reads its own effects. `getState` and `getQueue` never wait.
|
|
188
|
+
*/
|
|
189
|
+
export interface Options extends ReplyTimeoutOptions, UploadTimeoutOptions {
|
|
190
|
+
/**
|
|
191
|
+
* How long reading the deployment schema, and then the initial state and
|
|
192
|
+
* queue, may each take; 60 seconds by default and at most 10 minutes. A bare
|
|
193
|
+
* number is milliseconds.
|
|
194
|
+
*/
|
|
195
|
+
readonly setupTimeout?: Duration.Input | undefined;
|
|
196
|
+
/**
|
|
197
|
+
* How long an uncertain enqueue waits for evidence that settles it; 5
|
|
198
|
+
* seconds by default and at most 1 minute. A bare number is milliseconds.
|
|
199
|
+
*/
|
|
200
|
+
readonly reconcileWindow?: Duration.Input | undefined;
|
|
201
|
+
/**
|
|
202
|
+
* How long a `PrepareHooks.result` observer may run; 1 second by default and
|
|
203
|
+
* at most 1 minute. A bare number is milliseconds.
|
|
204
|
+
*/
|
|
205
|
+
readonly resultHookTimeout?: Duration.Input | undefined;
|
|
206
|
+
/** @deprecated Removed in 0.3.0: use `replyTimeout` (a bare number is milliseconds). */
|
|
207
|
+
readonly commandTimeoutMs?: never;
|
|
208
|
+
/** @deprecated Removed in 0.3.0: use `setupTimeout` (a bare number is milliseconds). */
|
|
209
|
+
readonly setupTimeoutMs?: never;
|
|
210
|
+
/** @deprecated Removed in 0.3.0: use `reconcileWindow` (a bare number is milliseconds). */
|
|
211
|
+
readonly reconcileWindowMs?: never;
|
|
212
|
+
/** @deprecated Removed in 0.3.0: use `resultHookTimeout` (a bare number is milliseconds). */
|
|
213
|
+
readonly resultHookTimeoutMs?: never;
|
|
136
214
|
readonly maxPending?: number;
|
|
137
215
|
readonly maxTrackedClips?: number;
|
|
138
216
|
readonly maxAcceptances?: number;
|
|
217
|
+
/**
|
|
218
|
+
* Clip operations retained for `operation`, 1024 by default. A commit takes a
|
|
219
|
+
* slot before it sends anything; when every slot holds an operation that has
|
|
220
|
+
* not ended, the commit is refused with `Overflow`, not submitted.
|
|
221
|
+
*/
|
|
222
|
+
readonly maxOperations?: number;
|
|
139
223
|
readonly maxCachedUploads?: number;
|
|
140
224
|
readonly maxRetainedBytes?: number;
|
|
141
225
|
readonly maxPromptBytes?: number;
|
|
@@ -151,9 +235,21 @@ export interface Provider {
|
|
|
151
235
|
/** Local annotations are separate from the provider's authoritative state. */
|
|
152
236
|
readonly acceptances: Effect.Effect<readonly Acceptance[]>;
|
|
153
237
|
readonly acceptance: (submissionId: string) => Effect.Effect<Acceptance | undefined>;
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
238
|
+
/**
|
|
239
|
+
* The retained facts of a committed submission's clip, from acceptance to its
|
|
240
|
+
* end, for as long as the scope holds them: releasing the scope acknowledges
|
|
241
|
+
* the operation and frees its slot. Call it once `submit` has started; a
|
|
242
|
+
* submission that never committed, or whose ended operation was evicted,
|
|
243
|
+
* fails with `InvalidState`.
|
|
244
|
+
*/
|
|
245
|
+
readonly operation: (submission: Pick<Submission<Acceptance, unknown>, "id">) => Effect.Effect<ClipOperation, ReactorError, Scope.Scope>;
|
|
246
|
+
readonly prepare: <E extends PolicyFailure = never>(request: Request, hooks?: PrepareHooks<E>) => Effect.Effect<Submission<Acceptance, CommandFailure | E>, ReactorError | CommandFailure>;
|
|
247
|
+
/**
|
|
248
|
+
* Host IO belongs to the same provisional scope and commit owner as static
|
|
249
|
+
* preparation. A `PolicyFailure` from the preparation fails the submission
|
|
250
|
+
* unchanged; any other failure becomes a not-submitted `CommandFailure`.
|
|
251
|
+
*/
|
|
252
|
+
readonly prepareFrom: <E extends PolicyFailure = never>(preparation: Effect.Effect<Request, ReactorError | CommandFailure | E, Scope.Scope>, hooks?: PrepareHooks<E>) => Effect.Effect<Submission<Acceptance, CommandFailure | E>, ReactorError | CommandFailure>;
|
|
157
253
|
readonly enqueue: (request: Request) => Effect.Effect<Acceptance, CommandFailure>;
|
|
158
254
|
readonly getState: Effect.Effect<Reply<"state_update">, CommandFailure>;
|
|
159
255
|
readonly getQueue: Effect.Effect<Reply<"queue_update">, CommandFailure>;
|
package/dist/h3/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/h3/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/h3/types.ts"],"names":[],"mappings":"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"}
|
package/dist/host.d.ts
CHANGED
|
@@ -8,18 +8,18 @@
|
|
|
8
8
|
* compose hosts through their packages and read media through their `media`
|
|
9
9
|
* functions. Nothing here allocates or owns a session.
|
|
10
10
|
*/
|
|
11
|
-
export {
|
|
12
|
-
export {
|
|
11
|
+
export { duration } from "./duration.js";
|
|
12
|
+
export type { DurationPolicy } from "./duration.js";
|
|
13
|
+
export { errorOf, parse, parsed, positiveLimit } from "./errors.js";
|
|
14
|
+
export { finite, record } from "./json.js";
|
|
13
15
|
export { fromOwnedReadableStream } from "./media-stream.js";
|
|
14
16
|
export { terminal } from "./contract.js";
|
|
15
17
|
export type { IceCandidate, IceServer } from "./contract.js";
|
|
16
18
|
export { Observations } from "./observation.js";
|
|
17
19
|
export type { ObservationOptions } from "./observation.js";
|
|
18
|
-
export { CoordinatorClient } from "./coordinator/_internal/client.js";
|
|
19
|
-
export { retryAfterMs } from "./coordinator/_internal/response.js";
|
|
20
20
|
export { mediaGeneration, trackGeneration } from "./session/_internal/acquire.js";
|
|
21
21
|
export type { Channel, MediaTrack, Peer, PeerEvent, PeerState, Prepared } from "./PeerTypes.js";
|
|
22
|
-
export type { AudioFrame, MediaGeneration, MediaPressure, RawMedia, TrackGeneration, VideoFrame, } from "./session/media.js";
|
|
23
|
-
export {
|
|
22
|
+
export type { AudioFrame, MediaGeneration, MediaPressure, RawMedia, TrackGeneration, VideoFormat, VideoFrame, } from "./session/media.js";
|
|
23
|
+
export { uploadFile } from "./session/files.js";
|
|
24
24
|
export type { FileUploadOptions } from "./session/files.js";
|
|
25
25
|
//# sourceMappingURL=host.d.ts.map
|
package/dist/host.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../src/host.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../src/host.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAClF,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAChG,YAAY,EACV,UAAU,EACV,eAAe,EACf,aAAa,EACb,QAAQ,EACR,eAAe,EACf,WAAW,EACX,UAAU,GACX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC"}
|
package/dist/host.js
CHANGED
|
@@ -8,13 +8,12 @@
|
|
|
8
8
|
* compose hosts through their packages and read media through their `media`
|
|
9
9
|
* functions. Nothing here allocates or owns a session.
|
|
10
10
|
*/
|
|
11
|
-
export {
|
|
12
|
-
export {
|
|
11
|
+
export { duration } from "./duration.js";
|
|
12
|
+
export { errorOf, parse, parsed, positiveLimit } from "./errors.js";
|
|
13
|
+
export { finite, record } from "./json.js";
|
|
13
14
|
export { fromOwnedReadableStream } from "./media-stream.js";
|
|
14
15
|
export { terminal } from "./contract.js";
|
|
15
16
|
export { Observations } from "./observation.js";
|
|
16
|
-
export { CoordinatorClient } from "./coordinator/_internal/client.js";
|
|
17
|
-
export { retryAfterMs } from "./coordinator/_internal/response.js";
|
|
18
17
|
export { mediaGeneration, trackGeneration } from "./session/_internal/acquire.js";
|
|
19
|
-
export {
|
|
18
|
+
export { uploadFile } from "./session/files.js";
|
|
20
19
|
//# sourceMappingURL=host.js.map
|
package/dist/host.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.js","sourceRoot":"","sources":["../src/host.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"host.js","sourceRoot":"","sources":["../src/host.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAWlF,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,14 +4,20 @@ export type { Factory, Configuration, CreateOptions, AttachOptions, Session, } f
|
|
|
4
4
|
export * as Coordinator from "./coordinator/index.js";
|
|
5
5
|
export * as Peers from "./PeerFactory.js";
|
|
6
6
|
export * as FetchHttp from "./FetchHttp.js";
|
|
7
|
-
export { ReactorError, ErrorCode,
|
|
8
|
-
export type { RemoteOutcome } from "./errors.js";
|
|
7
|
+
export { ReactorError, ErrorCode, FailureCode, Failure, Http, Remote, Native, IceFailed, TransportFailed, ClipEnded, ReactorErrorReason, isReactorFailure, } from "./errors.js";
|
|
8
|
+
export type { ErrorContext, MessageCode, ReactorFailure, RemoteOutcome } from "./errors.js";
|
|
9
9
|
export { PeerFactory } from "./PeerFactory.js";
|
|
10
|
+
export { recorder } from "./session/recorder.js";
|
|
11
|
+
export type { Recorded } from "./session/recorder.js";
|
|
10
12
|
export type { PeerFactoryShape } from "./PeerFactory.js";
|
|
11
|
-
export type { SessionEvent, Snapshot, ReadyState, Status, CommandReply,
|
|
12
|
-
export
|
|
13
|
+
export type { SessionEvent, EventPayload, Snapshot, ReadyState, ReadyDescriptor, Status, Ownership, Observe, Observation, Attribution, CommandReply, CommandOptions, ReplyTimeoutOptions, SessionTimeouts, Uploaded, UploadProgress, UploadTimeoutOptions, } from "./SessionTypes.js";
|
|
14
|
+
export { CloseReport } from "./SessionTypes.js";
|
|
15
|
+
export { Termination } from "./coordinator/_internal/client.js";
|
|
16
|
+
export type { HttpOptions } from "./coordinator/_internal/client.js";
|
|
13
17
|
export type { CommandContext } from "./session/commands.js";
|
|
18
|
+
export type { Correlation } from "./correlation.js";
|
|
14
19
|
export type { Statistics } from "./stats.js";
|
|
15
20
|
export type { Json, JsonObject } from "./json.js";
|
|
16
|
-
export
|
|
21
|
+
export { Capabilities, Mapping, SessionDescriptor, Track } from "./contract.js";
|
|
22
|
+
export type { Descriptor } from "./contract.js";
|
|
17
23
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC7F,YAAY,EACV,OAAO,EACP,aAAa,EACb,aAAa,EACb,aAAa,EACb,OAAO,GACR,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,WAAW,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC7F,YAAY,EACV,OAAO,EACP,aAAa,EACb,aAAa,EACb,aAAa,EACb,OAAO,GACR,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,WAAW,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EACL,YAAY,EACZ,SAAS,EACT,WAAW,EACX,OAAO,EACP,IAAI,EACJ,MAAM,EACN,MAAM,EACN,SAAS,EACT,eAAe,EACf,SAAS,EACT,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,YAAY,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,YAAY,EACV,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,eAAe,EACf,MAAM,EACN,SAAS,EACT,OAAO,EACP,WAAW,EACX,WAAW,EACX,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,QAAQ,EACR,cAAc,EACd,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,YAAY,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AACrE,YAAY,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAChF,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -3,6 +3,10 @@ export { Client, make, layer, AcquisitionFailure, CommandFailure } from "./sessi
|
|
|
3
3
|
export * as Coordinator from "./coordinator/index.js";
|
|
4
4
|
export * as Peers from "./PeerFactory.js";
|
|
5
5
|
export * as FetchHttp from "./FetchHttp.js";
|
|
6
|
-
export { ReactorError, ErrorCode,
|
|
6
|
+
export { ReactorError, ErrorCode, FailureCode, Failure, Http, Remote, Native, IceFailed, TransportFailed, ClipEnded, ReactorErrorReason, isReactorFailure, } from "./errors.js";
|
|
7
7
|
export { PeerFactory } from "./PeerFactory.js";
|
|
8
|
+
export { recorder } from "./session/recorder.js";
|
|
9
|
+
export { CloseReport } from "./SessionTypes.js";
|
|
10
|
+
export { Termination } from "./coordinator/_internal/client.js";
|
|
11
|
+
export { Capabilities, Mapping, SessionDescriptor, Track } from "./contract.js";
|
|
8
12
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAQ7F,OAAO,KAAK,WAAW,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAQ7F,OAAO,KAAK,WAAW,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EACL,YAAY,EACZ,SAAS,EACT,WAAW,EACX,OAAO,EACP,IAAI,EACJ,MAAM,EACN,MAAM,EACN,SAAS,EACT,eAAe,EACf,SAAS,EACT,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAsBjD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAMhE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC"}
|
package/dist/json.d.ts
CHANGED
|
@@ -1,16 +1,23 @@
|
|
|
1
|
+
import type * as Schema from "effect/Schema";
|
|
1
2
|
import type { Google_Struct } from "./wire.generated.js";
|
|
2
|
-
|
|
3
|
-
export
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
export declare const isRecord: (u: unknown) => u is Record<string, unknown>;
|
|
3
|
+
/** Immutable JSON, as Effect's `Schema.Json` defines it. */
|
|
4
|
+
export type Json = Schema.Json;
|
|
5
|
+
export type JsonObject = Schema.JsonObject;
|
|
7
6
|
export declare const record: (u: unknown, context?: string) => Record<string, unknown>;
|
|
8
7
|
export declare const string: (u: unknown, context: string, max?: number) => string;
|
|
9
8
|
export declare const nonempty: (u: unknown, context: string) => string;
|
|
10
9
|
export declare const finite: (u: unknown, context: string) => number;
|
|
11
10
|
export declare const uint32: (u: unknown, context: string) => number;
|
|
12
11
|
export declare const array: (u: unknown, context: string) => readonly unknown[];
|
|
13
|
-
/**
|
|
12
|
+
/**
|
|
13
|
+
* Validates, copies, and freezes finite JSON; never coerces undefined, cycles, Dates, accessors
|
|
14
|
+
* or array holes. Keys and string values share one text budget; array length is charged against
|
|
15
|
+
* the node budget before any slot is read.
|
|
16
|
+
*
|
|
17
|
+
* An array's JSON value is its index slots, as for JSON.stringify and Schema.Json. Its other own
|
|
18
|
+
* keys, string or symbol, are never read and are absent from the copy, so a RegExp match result
|
|
19
|
+
* copies as its matches. An object's own keys are its value, so a symbol key there is rejected.
|
|
20
|
+
*/
|
|
14
21
|
export declare const json: (input: unknown, maximumNodes?: number) => Json;
|
|
15
22
|
export declare const jsonObject: (input: unknown) => JsonObject;
|
|
16
23
|
export declare const structFromObject: (input: unknown) => Google_Struct;
|
package/dist/json.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAG7C,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,qBAAqB,CAAC;AACvE,4DAA4D;AAC5D,MAAM,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;AAC/B,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAI3C,eAAO,MAAM,MAAM,MAAO,OAAO,uBAAuB,MAAM,CAAC,MAAM,EAAE,OAAO,CACtB,CAAC;AACzD,eAAO,MAAM,MAAM,MAAO,OAAO,WAAW,MAAM,mBAAoB,MACc,CAAC;AACrF,eAAO,MAAM,QAAQ,MAAO,OAAO,WAAW,MAAM,KAAG,MAGtD,CAAC;AACF,eAAO,MAAM,MAAM,MAAO,OAAO,WAAW,MAAM,KAAG,MACwC,CAAC;AAC9F,eAAO,MAAM,MAAM,MAAO,OAAO,WAAW,MAAM,KAAG,MAGpD,CAAC;AACF,eAAO,MAAM,KAAK,MAAO,OAAO,WAAW,MAAM,KAAG,SAAS,OAAO,EACV,CAAC;AAE3D;;;;;;;;GAQG;AACH,eAAO,MAAM,IAAI,UAAW,OAAO,4BAA0B,IA+C5D,CAAC;AAGF,eAAO,MAAM,UAAU,UAAW,OAAO,KAAG,UAG3C,CAAC;AAUF,eAAO,MAAM,gBAAgB,UAAW,OAAO,KAAG,aAKjD,CAAC;AAsBF,eAAO,MAAM,gBAAgB,MAAO,aAAa,qBAAc,UAM9D,CAAC"}
|
package/dist/json.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
import * as Predicate from "effect/Predicate";
|
|
1
2
|
import { ReactorError } from "./errors.js";
|
|
2
3
|
import { checkedString } from "./protobuf.js";
|
|
3
|
-
export const isRecord = (u) => typeof u === "object" && u !== null && !Array.isArray(u);
|
|
4
4
|
const bad = (message) => {
|
|
5
|
-
throw
|
|
5
|
+
throw ReactorError.fromCode("Protocol", message);
|
|
6
6
|
};
|
|
7
|
-
export const record = (u, context = "object") =>
|
|
7
|
+
export const record = (u, context = "object") => Predicate.isObject(u) ? u : bad(`expected ${context}`);
|
|
8
8
|
export const string = (u, context, max = 1_048_576) => typeof u === "string" ? checkedString(u, max) : bad(`expected string: ${context}`);
|
|
9
9
|
export const nonempty = (u, context) => {
|
|
10
10
|
const s = string(u, context);
|
|
@@ -16,10 +16,22 @@ export const uint32 = (u, context) => {
|
|
|
16
16
|
return Number.isInteger(n) && n >= 0 && n <= 0xffffffff ? n : bad(`expected uint32: ${context}`);
|
|
17
17
|
};
|
|
18
18
|
export const array = (u, context) => Array.isArray(u) ? u : bad(`expected array: ${context}`);
|
|
19
|
-
/**
|
|
19
|
+
/**
|
|
20
|
+
* Validates, copies, and freezes finite JSON; never coerces undefined, cycles, Dates, accessors
|
|
21
|
+
* or array holes. Keys and string values share one text budget; array length is charged against
|
|
22
|
+
* the node budget before any slot is read.
|
|
23
|
+
*
|
|
24
|
+
* An array's JSON value is its index slots, as for JSON.stringify and Schema.Json. Its other own
|
|
25
|
+
* keys, string or symbol, are never read and are absent from the copy, so a RegExp match result
|
|
26
|
+
* copies as its matches. An object's own keys are its value, so a symbol key there is rejected.
|
|
27
|
+
*/
|
|
20
28
|
export const json = (input, maximumNodes = 65_536) => {
|
|
21
29
|
const ancestors = new Set();
|
|
22
30
|
let nodes = 0, chars = 0;
|
|
31
|
+
const text = (s) => {
|
|
32
|
+
chars += s.length;
|
|
33
|
+
return chars > 4_194_304 ? bad("JSON text limit") : checkedString(s, 4_194_304);
|
|
34
|
+
};
|
|
23
35
|
const visit = (u, depth) => {
|
|
24
36
|
if (++nodes > maximumNodes || depth > 64)
|
|
25
37
|
return bad("JSON node/depth limit");
|
|
@@ -27,20 +39,29 @@ export const json = (input, maximumNodes = 65_536) => {
|
|
|
27
39
|
return u;
|
|
28
40
|
if (typeof u === "number")
|
|
29
41
|
return finite(u, "JSON number");
|
|
30
|
-
if (typeof u === "string")
|
|
31
|
-
|
|
32
|
-
if (chars > 4_194_304)
|
|
33
|
-
return bad("JSON text limit");
|
|
34
|
-
return checkedString(u, 4_194_304);
|
|
35
|
-
}
|
|
42
|
+
if (typeof u === "string")
|
|
43
|
+
return text(u);
|
|
36
44
|
if (typeof u !== "object")
|
|
37
45
|
return bad("not a JSON value");
|
|
38
46
|
if (ancestors.has(u))
|
|
39
47
|
return bad("cyclic JSON");
|
|
40
48
|
ancestors.add(u);
|
|
41
49
|
try {
|
|
42
|
-
if (Array.isArray(u))
|
|
43
|
-
|
|
50
|
+
if (Array.isArray(u)) {
|
|
51
|
+
const length = u.length;
|
|
52
|
+
if (length > maximumNodes - nodes)
|
|
53
|
+
return bad("JSON node/depth limit");
|
|
54
|
+
const items = [];
|
|
55
|
+
for (let index = 0; index < length; index++) {
|
|
56
|
+
const descriptor = Object.getOwnPropertyDescriptor(u, index);
|
|
57
|
+
if (descriptor === undefined)
|
|
58
|
+
return bad("sparse arrays are not JSON");
|
|
59
|
+
if (!("value" in descriptor))
|
|
60
|
+
return bad("JSON accessors are not supported");
|
|
61
|
+
items.push(visit(descriptor.value, depth + 1));
|
|
62
|
+
}
|
|
63
|
+
return Object.freeze(items);
|
|
64
|
+
}
|
|
44
65
|
const proto = Object.getPrototypeOf(u);
|
|
45
66
|
if (proto !== Object.prototype && proto !== null)
|
|
46
67
|
return bad("JSON object must have a plain prototype");
|
|
@@ -52,8 +73,7 @@ export const json = (input, maximumNodes = 65_536) => {
|
|
|
52
73
|
continue;
|
|
53
74
|
if (!("value" in descriptor))
|
|
54
75
|
return bad("JSON accessors are not supported");
|
|
55
|
-
|
|
56
|
-
checkedString(key, 4_194_304);
|
|
76
|
+
text(key);
|
|
57
77
|
const value = descriptor.value;
|
|
58
78
|
Object.defineProperty(result, key, { value: visit(value, depth + 1), enumerable: true });
|
|
59
79
|
}
|
package/dist/json.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.js","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media-stream.d.ts","sourceRoot":"","sources":["../src/media-stream.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"media-stream.d.ts","sourceRoot":"","sources":["../src/media-stream.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD;;0FAE0F;AAC1F,eAAO,MAAM,uBAAuB,GAAI,CAAC,WAAW;IAClD,QAAQ,CAAC,QAAQ,EAAE,MAAM,cAAc,CAAC,CAAC,CAAC,CAAC;IAC3C,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,YAAY,CAAC;CACpD,KAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,YAAY,CA0B9B,CAAC"}
|
package/dist/media-stream.js
CHANGED
|
@@ -1,20 +1,18 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import * as Stream from "effect/Stream";
|
|
3
|
+
const cancelBound = "1 second";
|
|
3
4
|
/** Catch acquisition failures in the typed channel and own both cancel AND releaseLock.
|
|
4
5
|
* In pinned Effect, fromReadableStream's default finalizer cancels without releasing;
|
|
5
6
|
* releaseLockOnEnd instead releases without cancellation. Media needs both operations. */
|
|
6
7
|
export const fromOwnedReadableStream = (options) => Stream.unwrap(Effect.gen(function* () {
|
|
7
|
-
const reader = yield* Effect.acquireRelease(Effect.try({ try: () => options.evaluate().getReader(), catch: options.onError }),
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
reader.releaseLock();
|
|
16
|
-
}
|
|
17
|
-
}));
|
|
8
|
+
const reader = yield* Effect.acquireRelease(Effect.try({ try: () => options.evaluate().getReader(), catch: options.onError }),
|
|
9
|
+
// A host whose cancel never settles must not hold the finalizer, which
|
|
10
|
+
// can sit ahead of paid-session termination: wait at most a second,
|
|
11
|
+
// then release the lock whatever the cancel did. A rejected cancel is
|
|
12
|
+
// fine; the underlying media finalizer still runs on stream error.
|
|
13
|
+
(reader) => Effect.tryPromise(() => reader.cancel()).pipe(Effect.timeout(cancelBound), Effect.ignore, Effect.ensuring(Effect.sync(() => {
|
|
14
|
+
reader.releaseLock();
|
|
15
|
+
}))));
|
|
18
16
|
return Stream.unfold(undefined, () => Effect.tryPromise({ try: () => reader.read(), catch: options.onError }).pipe(Effect.map((next) => (next.done ? undefined : [next.value, undefined]))));
|
|
19
17
|
}));
|
|
20
18
|
//# sourceMappingURL=media-stream.js.map
|
package/dist/media-stream.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"media-stream.js","sourceRoot":"","sources":["../src/media-stream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"media-stream.js","sourceRoot":"","sources":["../src/media-stream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,MAAM,WAAW,GAAG,UAAU,CAAC;AAC/B;;0FAE0F;AAC1F,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAI,OAG1C,EAAkC,EAAE,CACnC,MAAM,CAAC,MAAM,CACX,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,cAAc,CACzC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;IACjF,uEAAuE;IACvE,oEAAoE;IACpE,sEAAsE;IACtE,mEAAmE;IACnE,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAC3C,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAC3B,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,QAAQ,CACb,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;QACf,MAAM,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC,CAAC,CACH,CACF,CACJ,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE,CACnC,MAAM,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAC1E,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAW,CAAC,CAAC,CACnF,CACF,CAAC;AACJ,CAAC,CAAC,CACH,CAAC"}
|
package/dist/observation.d.ts
CHANGED
|
@@ -17,6 +17,15 @@ export declare class Observations<A> {
|
|
|
17
17
|
get size(): number;
|
|
18
18
|
/** Acquire before reading a snapshot, then ignore queued revisions covered by that snapshot. */
|
|
19
19
|
subscribe(options?: ObservationOptions): Effect.Effect<Stream.Stream<A, ReactorError>, ReactorError, Scope.Scope>;
|
|
20
|
+
/**
|
|
21
|
+
* A state and every value emitted after it, with no gap: the subscription is
|
|
22
|
+
* acquired before `state` is read, so a value emitted in between is queued
|
|
23
|
+
* rather than lost (and may repeat what the state already reflects).
|
|
24
|
+
*/
|
|
25
|
+
observeWith<S, E>(state: Effect.Effect<S, E>, options?: ObservationOptions): Effect.Effect<{
|
|
26
|
+
readonly initial: S;
|
|
27
|
+
readonly events: Stream.Stream<A, ReactorError>;
|
|
28
|
+
}, ReactorError | E, Scope.Scope>;
|
|
20
29
|
stream(options?: ObservationOptions): Stream.Stream<A, ReactorError>;
|
|
21
30
|
emit(value: A, bytes?: number): void;
|
|
22
31
|
end(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observation.d.ts","sourceRoot":"","sources":["../src/observation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,
|
|
1
|
+
{"version":3,"file":"observation.d.ts","sourceRoot":"","sources":["../src/observation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAyB,YAAY,EAAE,MAAM,aAAa,CAAC;AAYlE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,6FAA6F;AAC7F,qBAAa,YAAY,CAAC,CAAC;IAMb,OAAO,CAAC,QAAQ,CAAC,cAAc;IAL3C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA4B;IACxD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAA2B;IAC1C,aAAa,SAAM;IAEnB,YAA6B,cAAc,SAAK,EAE/C;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,gGAAgG;IAChG,SAAS,CACP,OAAO,GAAE,kBAAuB,GAC/B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,CAgE1E;IAED;;;;OAIG;IACH,WAAW,CAAC,CAAC,EAAE,CAAC,EACd,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1B,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,CAAC,MAAM,CACd;QAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,CAAA;KAAE,EACxE,YAAY,GAAG,CAAC,EAChB,KAAK,CAAC,KAAK,CACZ,CAIA;IAED,MAAM,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,CAEnE;IAED,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,SAAM,GAAG,IAAI,CAoBhC;IAED,GAAG,IAAI,IAAI,CAKV;IAED,6EAA6E;IAC7E,IAAI,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAO9B;CACF"}
|