osra 0.5.4 → 0.5.6

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/build/index.js CHANGED
@@ -6,7 +6,7 @@ var e = Object.defineProperty, t = (t, n) => {
6
6
  enumerable: !0
7
7
  });
8
8
  return n || e(r, Symbol.toStringTag, { value: "Module" }), r;
9
- }, n = "__OSRA_KEY__", r = "__OSRA_DEFAULT_KEY__", i = "__OSRA_BOX__", a = () => globalThis.browser ?? globalThis.chrome, o = () => a()?.runtime, s = (e, t) => te(e) && e.__OSRA_KEY__ === t, c = (e, t) => {
9
+ }, n = "__OSRA_KEY__", r = "__OSRA_DEFAULT_KEY__", i = "__OSRA_BOX__", a = () => globalThis.browser ?? globalThis.chrome, o = () => a()?.runtime, s = (e, t) => ne(e) && e.__OSRA_KEY__ === t, c = (e, t) => {
10
10
  if (e) {
11
11
  if (e.aborted) {
12
12
  t();
@@ -16,7 +16,7 @@ var e = Object.defineProperty, t = (t, n) => {
16
16
  }
17
17
  }, l = ({ listener: e, transport: t, remoteName: n, key: i = r, origin: a = "*", unregisterSignal: o }) => {
18
18
  if (o?.aborted) return;
19
- let l = M(t) ? t.receive : t;
19
+ let l = j(t) ? t.receive : t;
20
20
  if (typeof l == "function") {
21
21
  let t = l((t, r) => {
22
22
  o?.aborted || s(t, i) && (n && t.name !== n || e(t, r));
@@ -24,7 +24,7 @@ var e = Object.defineProperty, t = (t, n) => {
24
24
  typeof t == "function" && c(o, t);
25
25
  return;
26
26
  }
27
- if (w(l) || T(l) || E(l) || D(l)) {
27
+ if (C(l) || w(l) || T(l) || E(l)) {
28
28
  let t = (t, r) => {
29
29
  let a = (t, a) => {
30
30
  s(t, i) && (n && t.name !== n || e(t, {
@@ -34,14 +34,14 @@ var e = Object.defineProperty, t = (t, n) => {
34
34
  };
35
35
  t.addListener(a), c(o, () => t.removeListener(a));
36
36
  };
37
- if (w(l)) t(l.onMessage);
38
- else if (E(l)) {
37
+ if (C(l)) t(l.onMessage);
38
+ else if (T(l)) {
39
39
  let e = (e) => t(e.onMessage, e);
40
40
  l.addListener(e), c(o, () => l.removeListener(e));
41
- } else D(l) ? t(l) : t(l.onMessage);
41
+ } else E(l) ? t(l) : t(l.onMessage);
42
42
  return;
43
43
  }
44
- let u = x(l) ? l.port : l, d = a !== "*" && O(l), f = (t) => {
44
+ let u = b(l) ? l.port : l, d = a !== "*" && D(l), f = (t) => {
45
45
  let r = t.data;
46
46
  if (typeof r == "string") try {
47
47
  r = JSON.parse(r);
@@ -56,15 +56,15 @@ var e = Object.defineProperty, t = (t, n) => {
56
56
  };
57
57
  u.addEventListener("message", f), u instanceof MessagePort && u.start(), c(o, () => u.removeEventListener("message", f));
58
58
  }, u = (e, t, n = "*", r = []) => {
59
- let i = M(e) ? e.emit : e;
59
+ let i = j(e) ? e.emit : e;
60
60
  if (typeof i == "function") i(t, r);
61
- else if (O(i)) i.postMessage(t, n, r);
62
- else if (T(i)) i.postMessage(t);
63
- else if (w(i)) i.sendMessage(t);
64
- else if (_(i)) {
61
+ else if (D(i)) i.postMessage(t, n, r);
62
+ else if (w(i)) i.postMessage(t);
63
+ else if (C(i)) i.sendMessage(t);
64
+ else if (g(i)) {
65
65
  let e = JSON.stringify(t);
66
66
  i.readyState === WebSocket.CONNECTING ? i.addEventListener("open", () => i.send(e), { once: !0 }) : i.send(e);
67
- } else x(i) ? i.port.postMessage(t, r) : i.postMessage(t, r);
67
+ } else b(i) ? i.port.postMessage(t, r) : i.postMessage(t, r);
68
68
  }, d = globalThis.Float16Array, f = {
69
69
  Int8Array,
70
70
  Uint8Array,
@@ -83,17 +83,17 @@ var e = Object.defineProperty, t = (t, n) => {
83
83
  if (t in f) return t;
84
84
  for (let [t, n] of Object.entries(f)) if (n && e instanceof n) return t;
85
85
  throw Error("Unknown typed array type");
86
- }, h = (e) => {
86
+ }, ee = (e) => {
87
87
  let t = f[e];
88
88
  if (!t) throw Error("Unknown typed array type");
89
89
  return t;
90
- }, g = (e) => p.some((t) => !!t && e instanceof t), _ = (e) => e instanceof WebSocket, ee = (e) => !!globalThis.ServiceWorkerContainer && e instanceof ServiceWorkerContainer, v = (e) => !!globalThis.ServiceWorker && e instanceof ServiceWorker, y = (e) => !!globalThis.Worker && e instanceof Worker, b = (e) => {
90
+ }, h = (e) => p.some((t) => !!t && e instanceof t), g = (e) => e instanceof WebSocket, te = (e) => !!globalThis.ServiceWorkerContainer && e instanceof ServiceWorkerContainer, _ = (e) => !!globalThis.ServiceWorker && e instanceof ServiceWorker, v = (e) => !!globalThis.Worker && e instanceof Worker, y = (e) => {
91
91
  let t = globalThis.DedicatedWorkerGlobalScope;
92
92
  return !!t && e instanceof t;
93
- }, x = (e) => !!globalThis.SharedWorker && e instanceof SharedWorker, S = (e) => e instanceof MessagePort, te = (e) => !!e && typeof e == "object" && "__OSRA_KEY__" in e && !!e.__OSRA_KEY__, C = (e, t) => {
93
+ }, b = (e) => !!globalThis.SharedWorker && e instanceof SharedWorker, x = (e) => e instanceof MessagePort, ne = (e) => !!e && typeof e == "object" && "__OSRA_KEY__" in e && !!e.__OSRA_KEY__, S = (e, t) => {
94
94
  for (let n of t) if (n && e instanceof n) return !0;
95
95
  return !1;
96
- }, ne = (e) => C(e, [globalThis.SharedArrayBuffer]), re = ne, ie = (e) => C(e, [
96
+ }, re = (e) => S(e, [globalThis.SharedArrayBuffer]), ie = re, ae = (e) => S(e, [
97
97
  globalThis.ArrayBuffer,
98
98
  globalThis.MessagePort,
99
99
  globalThis.ReadableStream,
@@ -109,13 +109,13 @@ var e = Object.defineProperty, t = (t, n) => {
109
109
  globalThis.RTCDataChannel,
110
110
  globalThis.WebTransportReceiveStream,
111
111
  globalThis.WebTransportSendStream
112
- ]), w = (e) => {
112
+ ]), C = (e) => {
113
113
  let t = o();
114
114
  return t ? e === t : !1;
115
- }, T = (e, t = !1) => !e || typeof e != "object" || O(e) || !("name" in e) || !("disconnect" in e) || !("postMessage" in e) ? !1 : t ? "sender" in e && "onMessage" in e && "onDisconnect" in e : !0, ae = (e) => !!e && typeof e == "object" && !O(e) && "addListener" in e && "hasListener" in e && "removeListener" in e, E = (e) => {
115
+ }, w = (e, t = !1) => !e || typeof e != "object" || D(e) || !("name" in e) || !("disconnect" in e) || !("postMessage" in e) ? !1 : t ? "sender" in e && "onMessage" in e && "onDisconnect" in e : !0, oe = (e) => !!e && typeof e == "object" && !D(e) && "addListener" in e && "hasListener" in e && "removeListener" in e, T = (e) => {
116
116
  let t = o();
117
117
  return t ? e === t.onConnect || e === t.onConnectExternal : !1;
118
- }, D = (e) => ae(e), O = (e) => {
118
+ }, E = (e) => oe(e), D = (e) => {
119
119
  if (!e || typeof e != "object") return !1;
120
120
  try {
121
121
  return "window" in e && e.window === e;
@@ -126,51 +126,51 @@ var e = Object.defineProperty, t = (t, n) => {
126
126
  return !1;
127
127
  }
128
128
  }
129
- }, oe = (e) => _(e) || T(e) || w(e), se = (e) => _(e) || T(e) || E(e) || D(e) || w(e), k = (e) => !!e && typeof e == "object" && !O(e) && "isJson" in e && e.isJson === !0 || oe(e) || se(e), A = (e) => O(e) || oe(e) || v(e) || y(e) || b(e) || x(e) || S(e) || de(e);
130
- function ce(e) {
131
- if (!A(e)) throw Error("Transport is not emitable");
132
- }
133
- var j = (e) => O(e) || se(e) || ee(e) || y(e) || b(e) || x(e) || S(e) || fe(e);
129
+ }, se = (e) => g(e) || w(e) || C(e), ce = (e) => g(e) || w(e) || T(e) || E(e) || C(e), O = (e) => !!e && typeof e == "object" && !D(e) && "isJson" in e && e.isJson === !0 || se(e) || ce(e), k = (e) => D(e) || se(e) || _(e) || v(e) || y(e) || b(e) || x(e) || fe(e);
134
130
  function le(e) {
135
- if (!j(e)) throw Error("Transport is not receiveable");
131
+ if (!k(e)) throw Error("Transport is not emitable");
132
+ }
133
+ var A = (e) => D(e) || ce(e) || te(e) || v(e) || y(e) || b(e) || x(e) || pe(e);
134
+ function ue(e) {
135
+ if (!A(e)) throw Error("Transport is not receiveable");
136
136
  }
137
- var ue = (e) => {
138
- if (!e || typeof e != "object" || O(e)) return !1;
137
+ var de = (e) => {
138
+ if (!e || typeof e != "object" || D(e)) return !1;
139
139
  let t = Object.getPrototypeOf(e);
140
140
  return t === Object.prototype || t === null;
141
- }, de = (e) => !ue(e) || !("emit" in e) ? !1 : A(e.emit) || typeof e.emit == "function", fe = (e) => !ue(e) || !("receive" in e) ? !1 : j(e.receive) || typeof e.receive == "function", M = (e) => de(e) || fe(e), pe = (e) => A(e) || j(e) || M(e) || k(e), N = { [i]: "revivable" }, P = (e) => !!e && typeof e == "object" && "__OSRA_BOX__" in e && e.__OSRA_BOX__ === "revivable", me = (e, t) => k(t.transport) ? { base64Buffer: new Uint8Array(e).toBase64() } : { arrayBuffer: e }, he = (e) => "arrayBuffer" in e ? e.arrayBuffer : Uint8Array.fromBase64(e.base64Buffer).buffer, ge = /* @__PURE__ */ t({
142
- box: () => ye,
143
- isType: () => ve,
144
- revive: () => be,
145
- type: () => _e
146
- }), _e = "arrayBuffer", ve = (e) => e instanceof ArrayBuffer, ye = (e, t) => ({
147
- ...N,
148
- type: _e,
149
- ...me(e, t)
150
- }), be = (e, t) => he(e), xe = /* @__PURE__ */ t({
151
- box: () => we,
152
- isType: () => Ce,
153
- revive: () => Te,
154
- type: () => Se
155
- }), Se = "date", Ce = (e) => e instanceof Date, we = (e, t) => ({
156
- ...N,
157
- type: Se,
141
+ }, fe = (e) => !de(e) || !("emit" in e) ? !1 : k(e.emit) || typeof e.emit == "function", pe = (e) => !de(e) || !("receive" in e) ? !1 : A(e.receive) || typeof e.receive == "function", j = (e) => fe(e) || pe(e), me = (e) => k(e) || A(e) || j(e) || O(e), M = { [i]: "revivable" }, N = (e) => !!e && typeof e == "object" && "__OSRA_BOX__" in e && e.__OSRA_BOX__ === "revivable", he = (e, t) => O(t.transport) ? { base64Buffer: new Uint8Array(e).toBase64() } : { arrayBuffer: e }, ge = (e) => "arrayBuffer" in e ? e.arrayBuffer : Uint8Array.fromBase64(e.base64Buffer).buffer, _e = /* @__PURE__ */ t({
142
+ box: () => be,
143
+ isType: () => ye,
144
+ revive: () => xe,
145
+ type: () => ve
146
+ }), ve = "arrayBuffer", ye = (e) => e instanceof ArrayBuffer, be = (e, t) => ({
147
+ ...M,
148
+ type: ve,
149
+ ...he(e, t)
150
+ }), xe = (e, t) => ge(e), Se = /* @__PURE__ */ t({
151
+ box: () => Te,
152
+ isType: () => we,
153
+ revive: () => Ee,
154
+ type: () => Ce
155
+ }), Ce = "date", we = (e) => e instanceof Date, Te = (e, t) => ({
156
+ ...M,
157
+ type: Ce,
158
158
  ISOString: e.toISOString()
159
- }), Te = (e, t) => new Date(e.ISOString), Ee = /* @__PURE__ */ t({
160
- box: () => ke,
161
- isType: () => Oe,
162
- revive: () => Ae,
163
- type: () => De
164
- }), De = "headers", Oe = (e) => e instanceof Headers, ke = (e, t) => ({
165
- ...N,
166
- type: De,
159
+ }), Ee = (e, t) => new Date(e.ISOString), De = /* @__PURE__ */ t({
160
+ box: () => Ae,
161
+ isType: () => ke,
162
+ revive: () => je,
163
+ type: () => Oe
164
+ }), Oe = "headers", ke = (e) => e instanceof Headers, Ae = (e, t) => ({
165
+ ...M,
166
+ type: Oe,
167
167
  entries: [...e.entries()]
168
- }), Ae = (e, t) => new Headers(e.entries), je = /* @__PURE__ */ t({
169
- box: () => Fe,
170
- isType: () => Pe,
171
- revive: () => Ie,
172
- type: () => Me
173
- }), Me = "error", Ne = {
168
+ }), je = (e, t) => new Headers(e.entries), Me = /* @__PURE__ */ t({
169
+ box: () => Ie,
170
+ isType: () => Fe,
171
+ revive: () => Le,
172
+ type: () => Ne
173
+ }), Ne = "error", Pe = {
174
174
  Error,
175
175
  TypeError,
176
176
  RangeError,
@@ -178,20 +178,20 @@ var ue = (e) => {
178
178
  ReferenceError,
179
179
  EvalError,
180
180
  URIError
181
- }, Pe = (e) => e instanceof Error, Fe = (e, t) => {
181
+ }, Fe = (e) => e instanceof Error, Ie = (e, t) => {
182
182
  let n = "cause" in e && e.cause !== void 0, r = typeof AggregateError < "u" && e instanceof AggregateError, i = typeof DOMException < "u" && e instanceof DOMException;
183
183
  return {
184
- ...N,
185
- type: Me,
184
+ ...M,
185
+ type: Ne,
186
186
  name: e.name,
187
187
  message: e.message,
188
188
  stack: e.stack || e.toString(),
189
- ...n ? { cause: X(e.cause, t) } : {},
190
- ...r ? { errors: X(e.errors, t) } : {},
189
+ ...n ? { cause: Y(e.cause, t) } : {},
190
+ ...r ? { errors: Y(e.errors, t) } : {},
191
191
  ...i ? { isDOMException: !0 } : {}
192
192
  };
193
- }, Ie = (e, t) => {
194
- let n = e.cause === void 0 ? void 0 : Z(e.cause, t), r = n === void 0 ? void 0 : { cause: n };
193
+ }, Le = (e, t) => {
194
+ let n = e.cause === void 0 ? void 0 : X(e.cause, t), r = n === void 0 ? void 0 : { cause: n };
195
195
  if (e.isDOMException && typeof DOMException < "u") {
196
196
  let t = new DOMException(e.message, e.name);
197
197
  if (e.stack) try {
@@ -203,46 +203,46 @@ var ue = (e) => {
203
203
  return t;
204
204
  }
205
205
  let i;
206
- if (e.errors !== void 0 && typeof AggregateError < "u") i = AggregateError(Z(e.errors, t), e.message, r);
206
+ if (e.errors !== void 0 && typeof AggregateError < "u") i = AggregateError(X(e.errors, t), e.message, r);
207
207
  else {
208
- let t = Ne[e.name] ?? Error;
208
+ let t = Pe[e.name] ?? Error;
209
209
  i = r === void 0 ? new t(e.message) : new t(e.message, r);
210
210
  }
211
211
  return e.name && i.name !== e.name && (i.name = e.name), e.stack && (i.stack = e.stack), i;
212
- }, Le = /* @__PURE__ */ t({
213
- box: () => Be,
214
- isType: () => ze,
215
- revive: () => Ve,
216
- type: () => Re
217
- }), Re = "typedArray", ze = g, Be = (e, t) => {
212
+ }, Re = /* @__PURE__ */ t({
213
+ box: () => Ve,
214
+ isType: () => Be,
215
+ revive: () => He,
216
+ type: () => ze
217
+ }), ze = "typedArray", Be = h, Ve = (e, t) => {
218
218
  let n = e.byteOffset === 0 && e.byteLength === e.buffer.byteLength ? e.buffer : e.buffer.slice(e.byteOffset, e.byteOffset + e.byteLength);
219
219
  return {
220
- ...N,
221
- type: Re,
220
+ ...M,
221
+ type: ze,
222
222
  typedArrayType: m(e),
223
- ...me(n, t)
223
+ ...he(n, t)
224
224
  };
225
- }, Ve = (e, t) => new (h(e.typedArrayType))(he(e)), F = /* @__PURE__ */ new WeakMap(), He = /* @__PURE__ */ new WeakSet(), I = (e, t) => {
226
- if (He.has(e)) return t(), () => {};
227
- let n = F.get(e);
228
- return n || F.set(e, n = /* @__PURE__ */ new Set()), n.add(t), () => n.delete(t);
229
- }, Ue = (e) => {
230
- if (He.has(e)) return;
231
- He.add(e);
232
- let t = F.get(e);
225
+ }, He = (e, t) => new (ee(e.typedArrayType))(ge(e)), P = /* @__PURE__ */ new WeakMap(), Ue = /* @__PURE__ */ new WeakSet(), F = (e, t) => {
226
+ if (Ue.has(e)) return t(), () => {};
227
+ let n = P.get(e);
228
+ return n || P.set(e, n = /* @__PURE__ */ new Set()), n.add(t), () => n.delete(t);
229
+ }, We = (e) => {
230
+ if (Ue.has(e)) return;
231
+ Ue.add(e);
232
+ let t = P.get(e);
233
233
  if (t) {
234
- F.delete(e);
234
+ P.delete(e);
235
235
  for (let e of t) try {
236
236
  e();
237
237
  } catch {}
238
238
  }
239
- }, We = /* @__PURE__ */ t({
240
- box: () => Qe,
241
- isType: () => Ze,
242
- revive: () => $e,
243
- transfer: () => Xe,
244
- type: () => Ge
245
- }), Ge = "transfer", Ke = Symbol.for("osra.transfer"), qe = (e) => typeof e == "object" && !!e, Je = (e) => qe(e) && Ke in e && e[Ke] === !0, Ye = (e) => qe(e) ? ArrayBuffer.isView(e) ? !0 : C(e, [
239
+ }, Ge = /* @__PURE__ */ t({
240
+ box: () => $e,
241
+ isType: () => Qe,
242
+ revive: () => et,
243
+ transfer: () => Ze,
244
+ type: () => Ke
245
+ }), Ke = "transfer", qe = Symbol.for("osra.transfer"), Je = (e) => typeof e == "object" && !!e, Ye = (e) => Je(e) && qe in e && e[qe] === !0, Xe = (e) => Je(e) ? ArrayBuffer.isView(e) ? !0 : S(e, [
246
246
  globalThis.ArrayBuffer,
247
247
  globalThis.MessagePort,
248
248
  globalThis.ReadableStream,
@@ -250,15 +250,15 @@ var ue = (e) => {
250
250
  globalThis.TransformStream,
251
251
  globalThis.ImageBitmap,
252
252
  globalThis.OffscreenCanvas
253
- ]) : !1, Xe = (e) => Ye(e) ? {
254
- [Ke]: !0,
253
+ ]) : !1, Ze = (e) => Xe(e) ? {
254
+ [qe]: !0,
255
255
  value: e
256
- } : e, Ze = (e) => Je(e), Qe = (e, t) => ({
257
- ...N,
258
- type: Ge,
259
- inner: X(e.value, t),
260
- degraded: k(t.transport)
261
- }), $e = (e, t) => Z(e.inner, t), et = (e) => C(e, [
256
+ } : e, Qe = (e) => Ye(e), $e = (e, t) => ({
257
+ ...M,
258
+ type: Ke,
259
+ inner: Y(e.value, t),
260
+ degraded: O(t.transport)
261
+ }), et = (e, t) => X(e.inner, t), tt = (e) => S(e, [
262
262
  globalThis.MessagePort,
263
263
  globalThis.ReadableStream,
264
264
  globalThis.WritableStream,
@@ -270,18 +270,18 @@ var ue = (e) => {
270
270
  globalThis.RTCDataChannel,
271
271
  globalThis.WebTransportReceiveStream,
272
272
  globalThis.WebTransportSendStream
273
- ]), tt = (e) => P(e) && e.type === "transfer", L = (e) => {
273
+ ]), nt = (e) => N(e) && e.type === "transfer", I = (e) => {
274
274
  let t = [], n = /* @__PURE__ */ new WeakSet(), r = (e, i) => {
275
- if (!(!e || typeof e != "object") && !n.has(e) && (n.add(e), !ne(e))) {
276
- if (tt(e)) {
275
+ if (!(!e || typeof e != "object") && !n.has(e) && (n.add(e), !re(e))) {
276
+ if (nt(e)) {
277
277
  r(e.inner, i || !e.degraded);
278
278
  return;
279
279
  }
280
- if (et(e)) {
280
+ if (tt(e)) {
281
281
  t.push(e);
282
282
  return;
283
283
  }
284
- if (ie(e)) {
284
+ if (ae(e)) {
285
285
  i && t.push(e);
286
286
  return;
287
287
  }
@@ -295,12 +295,16 @@ var ue = (e) => {
295
295
  }
296
296
  };
297
297
  return r(e, !1), t;
298
- }, R = class extends EventTarget {
298
+ }, L = class {
299
+ _listeners = /* @__PURE__ */ new Map();
300
+ _onceListeners = /* @__PURE__ */ new WeakSet();
299
301
  addEventListener(e, t, n) {
300
- super.addEventListener(e, t, n);
302
+ if (!t) return;
303
+ let r = this._listeners.get(e);
304
+ r || (r = /* @__PURE__ */ new Set(), this._listeners.set(e, r)), r.add(t), typeof n == "object" && n?.once && this._onceListeners.add(t);
301
305
  }
302
306
  removeEventListener(e, t, n) {
303
- super.removeEventListener(e, t, n);
307
+ t && (this._listeners.get(e)?.delete(t), this._onceListeners.delete(t));
304
308
  }
305
309
  _peer;
306
310
  _queue = [];
@@ -316,7 +320,10 @@ var ue = (e) => {
316
320
  }
317
321
  onmessageerror = null;
318
322
  dispatchEvent(e) {
319
- return e.type === "message" ? this._onmessage?.call(this, e) : e.type === "messageerror" && this.onmessageerror?.call(this, e), super.dispatchEvent(e);
323
+ e.type === "message" ? this._onmessage?.call(this, e) : e.type === "messageerror" && this.onmessageerror?.call(this, e);
324
+ let t = this._listeners.get(e.type);
325
+ if (t) for (let n of [...t]) this._onceListeners.has(n) && (t.delete(n), this._onceListeners.delete(n)), typeof n == "function" ? n.call(this, e) : n.handleEvent(e);
326
+ return !0;
320
327
  }
321
328
  postMessage(e, t) {
322
329
  let n = this._peer;
@@ -340,36 +347,36 @@ var ue = (e) => {
340
347
  e._closed || e.dispatchEvent(new Event("close"));
341
348
  });
342
349
  }
343
- }, z = class {
350
+ }, R = class {
344
351
  port1;
345
352
  port2;
346
353
  constructor() {
347
- let e = new R(), t = new R();
354
+ let e = new L(), t = new L();
348
355
  e._peer = t, t._peer = e, this.port1 = e, this.port2 = t;
349
356
  }
350
- }, nt = new FinalizationRegistry((e) => {
357
+ }, rt = new FinalizationRegistry((e) => {
351
358
  try {
352
359
  e();
353
360
  } catch {}
354
- }), B = (e, t) => {
361
+ }), z = (e, t) => {
355
362
  let n = {};
356
- return nt.register(e, t, n), () => nt.unregister(n);
357
- }, rt = /* @__PURE__ */ t({
358
- box: () => H,
359
- createRevivableChannel: () => W,
360
- init: () => st,
361
- isType: () => ct,
362
- revive: () => U,
363
- type: () => it
364
- }), it = "messagePort", at = /* @__PURE__ */ new WeakMap(), ot = (e) => {
365
- let t = at.get(e);
363
+ return rt.register(e, t, n), () => rt.unregister(n);
364
+ }, it = /* @__PURE__ */ t({
365
+ box: () => V,
366
+ createRevivableChannel: () => U,
367
+ init: () => ct,
368
+ isType: () => lt,
369
+ revive: () => H,
370
+ type: () => at
371
+ }), at = "messagePort", ot = /* @__PURE__ */ new WeakMap(), st = (e) => {
372
+ let t = ot.get(e);
366
373
  if (!t) throw Error("osra message-port: connection state missing; did init() run?");
367
374
  return t;
368
- }, st = (e) => {
375
+ }, ct = (e) => {
369
376
  let t = { portHandlers: /* @__PURE__ */ new Map() };
370
- at.set(e, t), e.eventTarget.addEventListener("message", ({ detail: e }) => {
377
+ ot.set(e, t), e.eventTarget.addEventListener("message", ({ detail: e }) => {
371
378
  e.type !== "message" && e.type !== "message-port-close" || t.portHandlers.get(e.portId)?.(e);
372
- }), I(e, () => {
379
+ }), F(e, () => {
373
380
  for (let [n, r] of [...t.portHandlers]) r({
374
381
  type: "message-port-close",
375
382
  remoteUuid: e.remoteUuid,
@@ -377,7 +384,7 @@ var ue = (e) => {
377
384
  });
378
385
  t.portHandlers.clear();
379
386
  });
380
- }, ct = (e) => e instanceof MessagePort || e instanceof R, V = (e, t) => {
387
+ }, lt = (e) => e instanceof MessagePort || e instanceof L, B = (e, t) => {
381
388
  try {
382
389
  e.sendMessage({
383
390
  type: "message-port-close",
@@ -385,75 +392,75 @@ var ue = (e) => {
385
392
  portId: t
386
393
  });
387
394
  } catch {}
388
- }, lt = (e, t, n) => {
389
- n ? e.postMessage(t) : e.postMessage(t, L(t));
390
- }, H = (e, t, n) => {
391
- let r = e instanceof R;
392
- if (!r && !k(t.transport)) return {
393
- ...N,
394
- type: it,
395
+ }, ut = (e, t, n) => {
396
+ n ? e.postMessage(t) : e.postMessage(t, I(t));
397
+ }, V = (e, t, n) => {
398
+ let r = e instanceof L;
399
+ if (!r && !O(t.transport)) return {
400
+ ...M,
401
+ type: at,
395
402
  port: e,
396
403
  ...n?.autoBox ? { autoBox: !0 } : {}
397
404
  };
398
- let { portHandlers: i } = ot(t), a = e, o = globalThis.crypto.randomUUID(), s = new WeakRef(a), c = new WeakRef(t), l = new WeakRef(i), u = !1, d = () => {
405
+ let { portHandlers: i } = st(t), a = e, o = globalThis.crypto.randomUUID(), s = new WeakRef(a), c = new WeakRef(t), l = new WeakRef(i), u = !1, d = () => {
399
406
  if (u) return;
400
407
  u = !0, l.deref()?.delete(o), m?.();
401
408
  let e = s.deref();
402
- e?.removeEventListener("message", p), e instanceof R && (e._onClose = void 0);
409
+ e?.removeEventListener("message", p), e instanceof L && (e._onClose = void 0);
403
410
  }, f = (e) => {
404
411
  if (e.type === "message-port-close") {
405
412
  d(), a.dispatchEvent(new Event("close")), a.close();
406
413
  return;
407
414
  }
408
- lt(a, Z(e.data, t), !1);
415
+ ut(a, X(e.data, t), !1);
409
416
  };
410
417
  function p({ data: e }) {
411
418
  t.sendMessage({
412
419
  type: "message",
413
420
  remoteUuid: t.remoteUuid,
414
- data: X(e, t),
421
+ data: Y(e, t),
415
422
  portId: o
416
423
  });
417
424
  }
418
- let m = B(a, () => {
425
+ let m = z(a, () => {
419
426
  let e = c.deref();
420
- e && V(e, o), d();
427
+ e && B(e, o), d();
421
428
  });
422
- return a.addEventListener("message", p), a.start(), a instanceof R && (a._onClose = () => {
423
- u || (V(t, o), d());
429
+ return a.addEventListener("message", p), a.start(), a instanceof L && (a._onClose = () => {
430
+ u || (B(t, o), d());
424
431
  }), i.set(o, f), {
425
- ...N,
426
- type: it,
432
+ ...M,
433
+ type: at,
427
434
  portId: o,
428
435
  synthetic: r
429
436
  };
430
- }, U = (e, t) => "port" in e ? e.autoBox ? ut(e.port, t) : e.port : dt(e.portId, t, e.synthetic), ut = (e, t) => {
437
+ }, H = (e, t) => "port" in e ? e.autoBox ? dt(e.port, t) : e.port : ft(e.portId, t, e.synthetic), dt = (e, t) => {
431
438
  let n = new EventTarget(), r = ({ data: e }) => {
432
- n.dispatchEvent(new MessageEvent("message", { data: Z(e, t) }));
439
+ n.dispatchEvent(new MessageEvent("message", { data: X(e, t) }));
433
440
  }, i = () => {
434
441
  n.dispatchEvent(new Event("close"));
435
442
  };
436
443
  return e.addEventListener("message", r), e.addEventListener("close", i), n.postMessage = (n, r) => {
437
- let i = X(n, t), a = L(i), o = Array.isArray(r) ? r : [];
444
+ let i = Y(n, t), a = I(i), o = Array.isArray(r) ? r : [];
438
445
  e.postMessage(i, o.length ? [...a, ...o] : a);
439
446
  }, n.start = () => e.start(), n.close = () => {
440
447
  e.removeEventListener("message", r), e.removeEventListener("close", i), e.close();
441
448
  }, n;
442
- }, W = (e) => {
443
- if (k(e.transport)) {
444
- let { port1: t, port2: n } = new z();
449
+ }, U = (e) => {
450
+ if (O(e.transport)) {
451
+ let { port1: t, port2: n } = new R();
445
452
  return {
446
453
  localPort: t,
447
- boxedRemote: H(n, e)
454
+ boxedRemote: V(n, e)
448
455
  };
449
456
  }
450
457
  let { port1: t, port2: n } = new MessageChannel();
451
458
  return {
452
- localPort: ut(t, e),
453
- boxedRemote: H(n, e, { autoBox: !0 })
459
+ localPort: dt(t, e),
460
+ boxedRemote: V(n, e, { autoBox: !0 })
454
461
  };
455
- }, dt = (e, t, n) => {
456
- let { portHandlers: r } = ot(t), { port1: i, port2: a } = n ? new z() : new MessageChannel(), o = new WeakRef(i), s = new WeakRef(a), c = !1, l = () => {
462
+ }, ft = (e, t, n) => {
463
+ let { portHandlers: r } = st(t), { port1: i, port2: a } = n ? new R() : new MessageChannel(), o = new WeakRef(i), s = new WeakRef(a), c = !1, l = () => {
457
464
  if (c) return;
458
465
  c = !0, r.delete(e);
459
466
  let t = s.deref();
@@ -470,28 +477,28 @@ var ue = (e) => {
470
477
  return;
471
478
  }
472
479
  let r = s.deref();
473
- r && lt(r, Z(e.data, t), n);
480
+ r && ut(r, X(e.data, t), n);
474
481
  }, d = ({ data: n }) => {
475
482
  t.sendMessage({
476
483
  type: "message",
477
484
  remoteUuid: t.remoteUuid,
478
- data: X(n, t),
485
+ data: Y(n, t),
479
486
  portId: e
480
487
  });
481
- }, f = B(i, () => {
482
- V(t, e), l();
488
+ }, f = z(i, () => {
489
+ B(t, e), l();
483
490
  });
484
- return i instanceof R && (i._onClose = () => {
485
- c || (V(t, e), l());
491
+ return i instanceof L && (i._onClose = () => {
492
+ c || (B(t, e), l());
486
493
  }), a.addEventListener("message", d), a.start(), r.set(e, u), i;
487
- }, ft = /* @__PURE__ */ t({
488
- box: () => _t,
489
- isType: () => gt,
490
- revive: () => vt,
491
- type: () => pt
492
- }), pt = "promise", mt = (e) => e instanceof Promise, ht = /* @__PURE__ */ new Set(), gt = (e) => e instanceof Promise, _t = (e, t) => {
493
- if (!mt(e)) throw TypeError("Expected Promise");
494
- let { localPort: n, boxedRemote: r } = W(t), i = (e) => {
494
+ }, pt = /* @__PURE__ */ t({
495
+ box: () => vt,
496
+ isType: () => _t,
497
+ revive: () => yt,
498
+ type: () => mt
499
+ }), mt = "promise", ht = (e) => e instanceof Promise, gt = /* @__PURE__ */ new Set(), _t = (e) => e instanceof Promise, vt = (e, t) => {
500
+ if (!ht(e)) throw TypeError("Expected Promise");
501
+ let { localPort: n, boxedRemote: r } = U(t), i = (e) => {
495
502
  n.postMessage(e), n.close();
496
503
  };
497
504
  return e.then((e) => i({
@@ -501,31 +508,31 @@ var ue = (e) => {
501
508
  type: "reject",
502
509
  error: e
503
510
  })), {
504
- ...N,
505
- type: pt,
511
+ ...M,
512
+ type: mt,
506
513
  port: r
507
514
  };
508
- }, vt = (e, t) => {
509
- let n = U(e.port, t);
510
- ht.add(n);
515
+ }, yt = (e, t) => {
516
+ let n = H(e.port, t);
517
+ gt.add(n);
511
518
  let r = "portId" in e.port;
512
519
  return new Promise((e, i) => {
513
520
  let a = () => {
514
- n.close(), ht.delete(n), o();
515
- }, o = r ? I(t, () => {
521
+ n.close(), gt.delete(n), o();
522
+ }, o = r ? F(t, () => {
516
523
  i(/* @__PURE__ */ Error("osra: connection closed")), a();
517
524
  }) : () => {};
518
525
  n.addEventListener("message", ({ data: t }) => {
519
526
  t.type === "resolve" ? e(t.data) : i(t.error), a();
520
527
  }, { once: !0 }), n.start();
521
528
  });
522
- }, yt = /* @__PURE__ */ t({
523
- box: () => G,
524
- isType: () => St,
525
- revive: () => K,
526
- type: () => bt
527
- }), bt = "function", xt = /* @__PURE__ */ new Set(), St = (e) => typeof e == "function", G = (e, t) => {
528
- let { port1: n, port2: r } = new z();
529
+ }, bt = /* @__PURE__ */ t({
530
+ box: () => W,
531
+ isType: () => Ct,
532
+ revive: () => G,
533
+ type: () => xt
534
+ }), xt = "function", St = /* @__PURE__ */ new Set(), Ct = (e) => typeof e == "function", W = (e, t) => {
535
+ let { port1: n, port2: r } = new R();
529
536
  return n.addEventListener("message", ({ data: n }) => {
530
537
  let [r, i] = n;
531
538
  (async () => {
@@ -541,89 +548,205 @@ var ue = (e) => {
541
548
  error: e
542
549
  };
543
550
  }
544
- let a = X(n, t);
545
- r.postMessage(a, L(a)), queueMicrotask(() => {
551
+ let a = Y(n, t);
552
+ r.postMessage(a, I(a)), queueMicrotask(() => {
546
553
  try {
547
554
  r.close();
548
555
  } catch {}
549
556
  });
550
557
  })();
551
558
  }), n.start(), {
552
- ...N,
553
- type: bt,
554
- port: H(r, t)
559
+ ...M,
560
+ type: xt,
561
+ port: V(r, t)
555
562
  };
556
- }, K = (e, t) => {
557
- let n = U(e.port, t);
563
+ }, G = (e, t) => {
564
+ let n = H(e.port, t);
558
565
  return ((...e) => new Promise((r, i) => {
559
- let { port1: a, port2: o } = new z();
560
- xt.add(a);
566
+ let { port1: a, port2: o } = new R();
567
+ St.add(a);
561
568
  let s = () => {
562
- a.close(), xt.delete(a), c();
563
- }, c = I(t, () => {
569
+ a.close(), St.delete(a), c();
570
+ }, c = F(t, () => {
564
571
  i(/* @__PURE__ */ Error("osra: connection closed")), s();
565
572
  });
566
573
  a.addEventListener("message", ({ data: e }) => {
567
574
  let t = e;
568
575
  t.type === "return" ? r(t.value) : i(t.error), s();
569
576
  }, { once: !0 }), a.start();
570
- let l = X([o, e], t);
571
- n.postMessage(l, L(l));
577
+ let l = Y([o, e], t);
578
+ n.postMessage(l, I(l));
572
579
  }));
573
- }, Ct = /* @__PURE__ */ t({
574
- box: () => Et,
575
- isType: () => Tt,
576
- revive: () => Dt,
577
- type: () => wt
578
- }), wt = "readableStream", Tt = (e) => e instanceof ReadableStream, Et = (e, t) => {
579
- let { localPort: n, boxedRemote: r } = W(t), i = e.getReader();
580
+ }, wt = /* @__PURE__ */ t({
581
+ MAX_CREDIT_WINDOW: () => 64,
582
+ box: () => At,
583
+ isType: () => Et,
584
+ revive: () => Pt,
585
+ type: () => Tt
586
+ }), Tt = "readableStream", Et = (e) => e instanceof ReadableStream, Dt = 2, Ot = 8, kt = 4 * 1024 * 1024, At = (e, t) => {
587
+ let { localPort: n, boxedRemote: r } = U(t), i = e.getReader(), a = 0, o = !1, s = !1, c = (e) => {
588
+ s = !0;
589
+ try {
590
+ n.postMessage(e);
591
+ } catch {}
592
+ n.close();
593
+ }, l = async () => {
594
+ if (!(o || s)) {
595
+ for (o = !0; a > 0;) {
596
+ let e;
597
+ try {
598
+ e = await i.read();
599
+ } catch (e) {
600
+ s || c({
601
+ type: "error",
602
+ error: e
603
+ });
604
+ return;
605
+ }
606
+ if (s) return;
607
+ if (e.done) {
608
+ c({ type: "end" });
609
+ return;
610
+ }
611
+ a--;
612
+ try {
613
+ n.postMessage({
614
+ type: "chunk",
615
+ value: e.value
616
+ });
617
+ } catch (e) {
618
+ c({
619
+ type: "error",
620
+ error: e
621
+ }), i.cancel(e).catch(() => {});
622
+ return;
623
+ }
624
+ }
625
+ o = !1;
626
+ }
627
+ };
580
628
  return n.addEventListener("message", ({ data: e }) => {
581
- "type" in e && e.type === "pull" ? n.postMessage(i.read()) : (i.cancel("type" in e ? e.reason : void 0).catch(() => {}), n.close());
629
+ e instanceof Promise || !("type" in e) || (e.type === "pull" ? n.postMessage(i.read()) : e.type === "credit" ? (a += e.n, l()) : e.type === "cancel" && (s = !0, i.cancel(e.reason).catch(() => {}), n.close()));
582
630
  }), n.addEventListener("close", () => {
583
- i.cancel(/* @__PURE__ */ Error("osra: connection closed")).catch(() => {});
631
+ s || (s = !0, i.cancel(/* @__PURE__ */ Error("osra: connection closed")).catch(() => {}));
584
632
  }, { once: !0 }), n.start(), {
585
- ...N,
586
- type: wt,
633
+ ...M,
634
+ type: Tt,
635
+ credit: !0,
587
636
  port: r
588
637
  };
589
- }, Dt = (e, t) => {
590
- let n = U(e.port, t);
591
- n.start();
592
- let r = !1;
638
+ }, jt = (e) => ArrayBuffer.isView(e) || e instanceof ArrayBuffer ? e.byteLength : typeof e == "string" ? e.length * 2 : typeof Blob < "u" && e instanceof Blob ? e.size : void 0, Mt = (e) => {
639
+ let t = !1, n = 0, r, i = [], a = !1, o = !1, s, c, l = () => r === void 0 ? Ot : Math.max(Dt, Math.min(64, Math.floor(kt / r))), u = () => {
640
+ let t = l(), r = n + i.length;
641
+ if (r > t / 2) return;
642
+ let a = t - r;
643
+ n += a, e.postMessage({
644
+ type: "credit",
645
+ n: a
646
+ });
647
+ }, d = () => {
648
+ t = !0, queueMicrotask(() => e.close());
649
+ }, f = (e) => {
650
+ if (o = !0, s = e, !c || i.length) return;
651
+ let t = c;
652
+ c = void 0, d(), t.reject(e);
653
+ };
593
654
  return new ReadableStream({
594
- start: (e) => {
595
- n.addEventListener("close", () => {
596
- if (!r) {
597
- r = !0;
655
+ start: () => {
656
+ e.addEventListener("message", ({ data: o }) => {
657
+ if (!(o instanceof Promise || !("type" in o))) {
658
+ if (o.type === "chunk") {
659
+ if (t) return;
660
+ if (n <= 0) {
661
+ i.length = 0, f(/* @__PURE__ */ Error("osra: stream exceeded its credit window")), queueMicrotask(() => e.close());
662
+ return;
663
+ }
664
+ n--;
665
+ let a = jt(o.value);
666
+ if (a !== void 0 && (r = r === void 0 ? a : r * .875 + a * .125), c) {
667
+ let e = c;
668
+ c = void 0, e.controller.enqueue(o.value), e.resolve();
669
+ } else i.push(o.value);
670
+ } else if (o.type === "end") {
671
+ if (t || (a = !0, !c || i.length)) return;
672
+ let e = c;
673
+ c = void 0, d(), e.controller.close(), e.resolve();
674
+ } else if (o.type === "error") {
675
+ if (t) return;
676
+ f(o.error);
677
+ }
678
+ }
679
+ }), e.addEventListener("close", () => {
680
+ t || a || o || f(/* @__PURE__ */ Error("osra: connection closed"));
681
+ }, { once: !0 });
682
+ },
683
+ pull: (e) => {
684
+ if (!t) {
685
+ if (i.length) {
686
+ e.enqueue(i.shift()), !a && !o && u();
687
+ return;
688
+ }
689
+ if (a) {
690
+ d(), e.close();
691
+ return;
692
+ }
693
+ return o ? (d(), Promise.reject(s)) : (u(), new Promise((t, n) => {
694
+ c = {
695
+ controller: e,
696
+ resolve: t,
697
+ reject: n
698
+ };
699
+ }));
700
+ }
701
+ },
702
+ cancel: (n) => {
703
+ t = !0, i.length = 0;
704
+ let r = c;
705
+ c = void 0, r?.resolve(), e.postMessage({
706
+ type: "cancel",
707
+ reason: n
708
+ }), queueMicrotask(() => e.close());
709
+ }
710
+ });
711
+ }, Nt = (e) => {
712
+ let t = !1;
713
+ return new ReadableStream({
714
+ start: (n) => {
715
+ e.addEventListener("close", () => {
716
+ if (!t) {
717
+ t = !0;
598
718
  try {
599
- e.error(/* @__PURE__ */ Error("osra: connection closed"));
719
+ n.error(/* @__PURE__ */ Error("osra: connection closed"));
600
720
  } catch {}
601
721
  }
602
722
  }, { once: !0 });
603
723
  },
604
- pull: (e) => new Promise((t, i) => {
605
- n.addEventListener("message", ({ data: a }) => {
724
+ pull: (n) => new Promise((r, i) => {
725
+ e.addEventListener("message", ({ data: a }) => {
606
726
  a instanceof Promise && a.then((i) => {
607
- i.done ? (r = !0, e.close(), n.postMessage({ type: "cancel" }), queueMicrotask(() => n.close())) : e.enqueue(i.value), t();
727
+ i.done ? (t = !0, n.close(), e.postMessage({ type: "cancel" }), queueMicrotask(() => e.close())) : n.enqueue(i.value), r();
608
728
  }).catch((e) => {
609
- r = !0, i(e);
729
+ t = !0, i(e);
610
730
  });
611
- }, { once: !0 }), n.postMessage({ type: "pull" });
731
+ }, { once: !0 }), e.postMessage({ type: "pull" });
612
732
  }),
613
- cancel: (e) => {
614
- r = !0, n.postMessage({
733
+ cancel: (n) => {
734
+ t = !0, e.postMessage({
615
735
  type: "cancel",
616
- reason: e
617
- }), queueMicrotask(() => n.close());
736
+ reason: n
737
+ }), queueMicrotask(() => e.close());
618
738
  }
619
739
  });
620
- }, Ot = /* @__PURE__ */ t({
621
- box: () => jt,
622
- isType: () => At,
623
- revive: () => Mt,
624
- type: () => kt
625
- }), kt = "writableStream", At = (e) => e instanceof WritableStream, jt = (e, t) => {
626
- let { localPort: n, boxedRemote: r } = W(t), i = e.getWriter(), a = !1, o = (e, t) => e.then(() => n.postMessage({ type: "ack" })).catch((e) => n.postMessage({
740
+ }, Pt = (e, t) => {
741
+ let n = H(e.port, t);
742
+ return n.start(), e.credit ? Mt(n) : Nt(n);
743
+ }, Ft = /* @__PURE__ */ t({
744
+ box: () => Rt,
745
+ isType: () => Lt,
746
+ revive: () => zt,
747
+ type: () => It
748
+ }), It = "writableStream", Lt = (e) => e instanceof WritableStream, Rt = (e, t) => {
749
+ let { localPort: n, boxedRemote: r } = U(t), i = e.getWriter(), a = !1, o = (e, t) => e.then(() => n.postMessage({ type: "ack" })).catch((e) => n.postMessage({
627
750
  type: "err",
628
751
  error: e?.message ?? String(e)
629
752
  })).then(() => {
@@ -634,12 +757,12 @@ var ue = (e) => {
634
757
  }), n.addEventListener("close", () => {
635
758
  a || (a = !0, i.abort(/* @__PURE__ */ Error("osra: connection closed")).catch(() => {}));
636
759
  }, { once: !0 }), n.start(), {
637
- ...N,
638
- type: kt,
760
+ ...M,
761
+ type: It,
639
762
  port: r
640
763
  };
641
- }, Mt = (e, t) => {
642
- let n = U(e.port, t);
764
+ }, zt = (e, t) => {
765
+ let n = H(e.port, t);
643
766
  n.start();
644
767
  let r = /* @__PURE__ */ new Set(), i = !1;
645
768
  n.addEventListener("close", () => {
@@ -674,57 +797,57 @@ var ue = (e) => {
674
797
  reason: e
675
798
  })
676
799
  });
677
- }, Nt = /* @__PURE__ */ t({
678
- box: () => Lt,
679
- isType: () => Ft,
680
- revive: () => Rt,
681
- type: () => Pt
682
- }), Pt = "abortSignal", Ft = (e) => e instanceof AbortSignal, It = /* @__PURE__ */ new WeakMap(), Lt = (e, t) => {
800
+ }, Bt = /* @__PURE__ */ t({
801
+ box: () => Wt,
802
+ isType: () => Ht,
803
+ revive: () => Gt,
804
+ type: () => Vt
805
+ }), Vt = "abortSignal", Ht = (e) => e instanceof AbortSignal, Ut = /* @__PURE__ */ new WeakMap(), Wt = (e, t) => {
683
806
  if (e.aborted) return {
684
- ...N,
685
- type: Pt,
807
+ ...M,
808
+ type: Vt,
686
809
  aborted: !0,
687
- reason: X(e.reason, t)
810
+ reason: Y(e.reason, t)
688
811
  };
689
- let { localPort: n, boxedRemote: r } = W(t), i = () => {
812
+ let { localPort: n, boxedRemote: r } = U(t), i = () => {
690
813
  n.postMessage({
691
814
  type: "abort",
692
815
  reason: e.reason
693
816
  }), n.close(), a();
694
- }, a = I(t, () => {
817
+ }, a = F(t, () => {
695
818
  e.removeEventListener("abort", i), n.close();
696
819
  });
697
820
  return e.addEventListener("abort", i, { once: !0 }), {
698
- ...N,
699
- type: Pt,
821
+ ...M,
822
+ type: Vt,
700
823
  aborted: !1,
701
824
  reason: void 0,
702
825
  port: r
703
826
  };
704
- }, Rt = (e, t) => {
827
+ }, Gt = (e, t) => {
705
828
  let n = new AbortController();
706
- if (e.aborted || e.port === void 0) return n.abort(Z(e.reason, t)), n.signal;
707
- let r = U(e.port, t);
708
- return It.set(n.signal, r), r.start(), r.addEventListener("message", ({ data: e }) => {
709
- e.type === "abort" && (n.abort(Z(e.reason, t)), It.delete(n.signal), r.close());
829
+ if (e.aborted || e.port === void 0) return n.abort(X(e.reason, t)), n.signal;
830
+ let r = H(e.port, t);
831
+ return Ut.set(n.signal, r), r.start(), r.addEventListener("message", ({ data: e }) => {
832
+ e.type === "abort" && (n.abort(X(e.reason, t)), Ut.delete(n.signal), r.close());
710
833
  }), n.signal;
711
- }, zt = /* @__PURE__ */ t({
712
- box: () => Ht,
713
- isType: () => Vt,
714
- revive: () => Ut,
715
- type: () => Bt
716
- }), Bt = "response", Vt = (e) => e instanceof Response, Ht = (e, t) => ({
717
- ...N,
718
- type: Bt,
834
+ }, Kt = /* @__PURE__ */ t({
835
+ box: () => Yt,
836
+ isType: () => Jt,
837
+ revive: () => Xt,
838
+ type: () => qt
839
+ }), qt = "response", Jt = (e) => e instanceof Response, Yt = (e, t) => ({
840
+ ...M,
841
+ type: qt,
719
842
  status: e.status,
720
843
  statusText: e.statusText,
721
- headers: ke(e.headers, t),
722
- body: e.body ? Et(e.body, t) : null,
844
+ headers: Ae(e.headers, t),
845
+ body: e.body ? At(e.body, t) : null,
723
846
  url: e.url,
724
847
  redirected: e.redirected
725
- }), Ut = (e, t) => {
848
+ }), Xt = (e, t) => {
726
849
  if (e.status === 0) return Response.error();
727
- let n = Ae(e.headers, t), r = e.body ? Dt(e.body, t) : null, i = new Response(r, {
850
+ let n = je(e.headers, t), r = e.body ? Pt(e.body, t) : null, i = new Response(r, {
728
851
  status: e.status,
729
852
  statusText: e.statusText,
730
853
  headers: n
@@ -736,18 +859,18 @@ var ue = (e) => {
736
859
  value: !0,
737
860
  configurable: !0
738
861
  }), i;
739
- }, Wt = /* @__PURE__ */ t({
740
- box: () => qt,
741
- isType: () => Kt,
742
- revive: () => Jt,
743
- type: () => Gt
744
- }), Gt = "request", Kt = (e) => e instanceof Request, qt = (e, t) => ({
745
- ...N,
746
- type: Gt,
862
+ }, Zt = /* @__PURE__ */ t({
863
+ box: () => en,
864
+ isType: () => $t,
865
+ revive: () => tn,
866
+ type: () => Qt
867
+ }), Qt = "request", $t = (e) => e instanceof Request, en = (e, t) => ({
868
+ ...M,
869
+ type: Qt,
747
870
  method: e.method,
748
871
  url: e.url,
749
- headers: ke(e.headers, t),
750
- body: e.body ? Et(e.body, t) : null,
872
+ headers: Ae(e.headers, t),
873
+ body: e.body ? At(e.body, t) : null,
751
874
  credentials: e.credentials,
752
875
  cache: e.cache,
753
876
  mode: e.mode,
@@ -756,9 +879,9 @@ var ue = (e) => {
756
879
  referrerPolicy: e.referrerPolicy,
757
880
  integrity: e.integrity,
758
881
  keepalive: e.keepalive,
759
- signal: Lt(e.signal, t)
760
- }), Jt = (e, t) => {
761
- let n = Ae(e.headers, t), r = {
882
+ signal: Wt(e.signal, t)
883
+ }), tn = (e, t) => {
884
+ let n = je(e.headers, t), r = {
762
885
  method: e.method,
763
886
  headers: n,
764
887
  credentials: e.credentials,
@@ -768,31 +891,31 @@ var ue = (e) => {
768
891
  referrerPolicy: e.referrerPolicy,
769
892
  integrity: e.integrity,
770
893
  keepalive: e.keepalive,
771
- signal: Rt(e.signal, t)
894
+ signal: Gt(e.signal, t)
772
895
  };
773
- return e.mode !== "navigate" && (r.mode = e.mode), e.body && (r.body = Dt(e.body, t), r.duplex = "half"), new Request(e.url, r);
774
- }, Yt = /* @__PURE__ */ t({
775
- box: () => sn,
776
- boxByReference: () => cn,
777
- identity: () => Y,
778
- isType: () => an,
779
- revive: () => ln,
780
- type: () => q
781
- }), q = "identity", Xt = Symbol.for("osra.identity"), Zt = (e) => e !== null && (typeof e == "object" || typeof e == "function"), J = (e) => {
896
+ return e.mode !== "navigate" && (r.mode = e.mode), e.body && (r.body = Pt(e.body, t), r.duplex = "half"), new Request(e.url, r);
897
+ }, nn = /* @__PURE__ */ t({
898
+ box: () => hn,
899
+ boxByReference: () => gn,
900
+ identity: () => q,
901
+ isType: () => pn,
902
+ revive: () => _n,
903
+ type: () => K
904
+ }), K = "identity", rn = Symbol.for("osra.identity"), an = (e) => e !== null && (typeof e == "object" || typeof e == "function"), on = (e) => {
782
905
  if (e === null) return !1;
783
906
  let t = typeof e;
784
907
  return t === "object" || t === "function" ? !0 : t === "symbol" ? Symbol.keyFor(e) === void 0 : !1;
785
- }, Qt = (e) => Zt(e) && Xt in e && e[Xt] === !0, $t = /* @__PURE__ */ new WeakMap(), en = (e) => {
786
- if (Qt(e)) return e;
787
- let t = $t.get(e);
908
+ }, sn = (e) => an(e) && rn in e && e[rn] === !0, cn = /* @__PURE__ */ new WeakMap(), ln = (e) => {
909
+ if (sn(e)) return e;
910
+ let t = cn.get(e);
788
911
  if (t) return t;
789
912
  let n = {
790
- [Xt]: !0,
913
+ [rn]: !0,
791
914
  value: e
792
915
  };
793
- return $t.set(e, n), n;
794
- }, Y = (e) => Zt(e) ? en(e) : e, tn = /* @__PURE__ */ new WeakMap(), nn = (e) => {
795
- let t = tn.get(e);
916
+ return cn.set(e, n), n;
917
+ }, q = (e) => an(e) ? ln(e) : e, un = /* @__PURE__ */ new WeakMap(), dn = (e) => {
918
+ let t = un.get(e);
796
919
  if (t) return t;
797
920
  let n = /* @__PURE__ */ new WeakMap(), r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new WeakMap(), o = {
798
921
  sendIds: n,
@@ -811,16 +934,16 @@ var ue = (e) => {
811
934
  revivedToId: a,
812
935
  listenerInstalled: !1
813
936
  };
814
- return tn.set(e, o), rn(e, o), I(e, () => {
937
+ return un.set(e, o), fn(e, o), F(e, () => {
815
938
  o.receiveCache.clear(), o.idToSent.clear();
816
939
  }), o;
817
- }, rn = (e, t) => {
940
+ }, fn = (e, t) => {
818
941
  t.listenerInstalled || (t.listenerInstalled = !0, e.eventTarget.addEventListener("message", ({ detail: e }) => {
819
942
  if (e?.type !== "identity-dispose") return;
820
943
  let n = t.receiveCache.get(e.id);
821
- t.receiveCache.delete(e.id), n !== void 0 && J(n) && t.revivedToId.delete(n);
944
+ t.receiveCache.delete(e.id), n !== void 0 && on(n) && t.revivedToId.delete(n);
822
945
  }));
823
- }, an = (e) => Qt(e), on = (e, t) => {
946
+ }, pn = (e) => sn(e), mn = (e, t) => {
824
947
  let n = t.sendIds.get(e);
825
948
  if (n !== void 0) return {
826
949
  id: n,
@@ -836,86 +959,86 @@ var ue = (e) => {
836
959
  id: i,
837
960
  isExisting: !1
838
961
  };
839
- }, sn = (e, t) => {
840
- let n = nn(t), r = e.value, i = X(r, t);
841
- if (!J(r)) return {
842
- ...N,
843
- type: q,
962
+ }, hn = (e, t) => {
963
+ let n = dn(t), r = e.value, i = Y(r, t);
964
+ if (!on(r)) return {
965
+ ...M,
966
+ type: K,
844
967
  id: globalThis.crypto.randomUUID(),
845
968
  inner: i
846
969
  };
847
- let { id: a, isExisting: o } = on(r, n);
970
+ let { id: a, isExisting: o } = mn(r, n);
848
971
  return o ? {
849
- ...N,
850
- type: q,
972
+ ...M,
973
+ type: K,
851
974
  id: a
852
975
  } : {
853
- ...N,
854
- type: q,
976
+ ...M,
977
+ type: K,
855
978
  id: a,
856
979
  inner: i
857
980
  };
858
- }, cn = (e, t, n) => {
859
- let { id: r, isExisting: i } = on(e, nn(n));
981
+ }, gn = (e, t, n) => {
982
+ let { id: r, isExisting: i } = mn(e, dn(n));
860
983
  return i ? {
861
- ...N,
862
- type: q,
984
+ ...M,
985
+ type: K,
863
986
  id: r
864
987
  } : {
865
- ...N,
866
- type: q,
988
+ ...M,
989
+ type: K,
867
990
  id: r,
868
991
  inner: t
869
992
  };
870
- }, ln = (e, t) => {
871
- let n = nn(t), r = n.receiveCache.get(e.id);
993
+ }, _n = (e, t) => {
994
+ let n = dn(t), r = n.receiveCache.get(e.id);
872
995
  if (r !== void 0) return r;
873
996
  let i = n.idToSent.get(e.id)?.deref();
874
997
  if (i !== void 0) return i;
875
998
  if (!("inner" in e) || e.inner === void 0) throw Error(`osra identity: received id=${e.id} with no inner payload and no cached value`);
876
- let a = Z(e.inner, t);
877
- return n.receiveCache.set(e.id, a), J(a) && n.revivedToId.set(a, e.id), a;
878
- }, un = /* @__PURE__ */ t({
879
- box: () => fn,
880
- isType: () => dn,
881
- revive: () => pn,
999
+ let a = X(e.inner, t);
1000
+ return n.receiveCache.set(e.id, a), on(a) && n.revivedToId.set(a, e.id), a;
1001
+ }, vn = /* @__PURE__ */ t({
1002
+ box: () => bn,
1003
+ isType: () => yn,
1004
+ revive: () => xn,
882
1005
  type: () => "map"
883
- }), dn = (e) => e instanceof Map, fn = (e, t) => ({
884
- ...N,
1006
+ }), yn = (e) => e instanceof Map, bn = (e, t) => ({
1007
+ ...M,
885
1008
  type: "map",
886
- entries: Array.from(e, ([e, n]) => [X(e, t), X(n, t)])
887
- }), pn = (e, t) => new Map(e.entries.map(([e, n]) => [Z(e, t), Z(n, t)])), mn = /* @__PURE__ */ t({
888
- box: () => gn,
889
- isType: () => hn,
890
- revive: () => _n,
1009
+ entries: Array.from(e, ([e, n]) => [Y(e, t), Y(n, t)])
1010
+ }), xn = (e, t) => new Map(e.entries.map(([e, n]) => [X(e, t), X(n, t)])), Sn = /* @__PURE__ */ t({
1011
+ box: () => wn,
1012
+ isType: () => Cn,
1013
+ revive: () => Tn,
891
1014
  type: () => "set"
892
- }), hn = (e) => e instanceof Set, gn = (e, t) => ({
893
- ...N,
1015
+ }), Cn = (e) => e instanceof Set, wn = (e, t) => ({
1016
+ ...M,
894
1017
  type: "set",
895
- values: Array.from(e, (e) => X(e, t))
896
- }), _n = (e, t) => new Set(e.values.map((e) => Z(e, t))), vn = /* @__PURE__ */ t({
897
- box: () => xn,
898
- isType: () => bn,
899
- revive: () => Sn,
900
- type: () => yn
901
- }), yn = "bigint", bn = (e) => typeof e == "bigint", xn = (e, t) => ({
902
- ...N,
903
- type: yn,
1018
+ values: Array.from(e, (e) => Y(e, t))
1019
+ }), Tn = (e, t) => new Set(e.values.map((e) => X(e, t))), En = /* @__PURE__ */ t({
1020
+ box: () => kn,
1021
+ isType: () => On,
1022
+ revive: () => An,
1023
+ type: () => Dn
1024
+ }), Dn = "bigint", On = (e) => typeof e == "bigint", kn = (e, t) => ({
1025
+ ...M,
1026
+ type: Dn,
904
1027
  value: e.toString()
905
- }), Sn = (e, t) => BigInt(e.value), Cn = /* @__PURE__ */ t({
906
- box: () => En,
907
- isType: () => Tn,
908
- revive: () => Dn,
909
- type: () => wn
910
- }), wn = "event", Tn = (e) => e instanceof Event, En = (e, t) => ({
911
- ...N,
912
- type: wn,
1028
+ }), An = (e, t) => BigInt(e.value), jn = /* @__PURE__ */ t({
1029
+ box: () => Pn,
1030
+ isType: () => Nn,
1031
+ revive: () => Fn,
1032
+ type: () => Mn
1033
+ }), Mn = "event", Nn = (e) => e instanceof Event, Pn = (e, t) => ({
1034
+ ...M,
1035
+ type: Mn,
913
1036
  eventType: e.type,
914
1037
  bubbles: e.bubbles,
915
1038
  cancelable: e.cancelable,
916
1039
  composed: e.composed,
917
- ...e instanceof CustomEvent ? { detail: X(e.detail, t) } : {}
918
- }), Dn = (e, t) => {
1040
+ ...e instanceof CustomEvent ? { detail: Y(e.detail, t) } : {}
1041
+ }), Fn = (e, t) => {
919
1042
  let n = {
920
1043
  bubbles: e.bubbles,
921
1044
  cancelable: e.cancelable,
@@ -923,119 +1046,119 @@ var ue = (e) => {
923
1046
  };
924
1047
  return "detail" in e ? new CustomEvent(e.eventType, {
925
1048
  ...n,
926
- detail: Z(e.detail, t)
1049
+ detail: X(e.detail, t)
927
1050
  }) : new Event(e.eventType, n);
928
- }, On = /* @__PURE__ */ t({
929
- box: () => jn,
930
- isType: () => An,
931
- revive: () => Fn,
932
- type: () => kn
933
- }), kn = "eventTarget", An = (e) => e instanceof EventTarget, jn = (e, t) => {
1051
+ }, In = /* @__PURE__ */ t({
1052
+ box: () => zn,
1053
+ isType: () => Rn,
1054
+ revive: () => Un,
1055
+ type: () => Ln
1056
+ }), Ln = "eventTarget", Rn = (e) => e instanceof EventTarget, zn = (e, t) => {
934
1057
  let n = [], r = (e) => typeof e == "boolean" ? e : !!e?.capture;
935
1058
  return {
936
- ...N,
937
- type: kn,
938
- addListener: G((t, i, a) => {
1059
+ ...M,
1060
+ type: Ln,
1061
+ addListener: W((t, i, a) => {
939
1062
  n.push({
940
1063
  eventType: t,
941
1064
  listener: i,
942
1065
  capture: r(a)
943
1066
  }), e.addEventListener(t, i, a);
944
1067
  }, t),
945
- removeListener: G((t, i, a) => {
1068
+ removeListener: W((t, i, a) => {
946
1069
  let o = r(a), s = n.findIndex((e) => e.eventType === t && e.listener === i && e.capture === o);
947
1070
  s !== -1 && n.splice(s, 1), e.removeEventListener(t, i, a);
948
1071
  }, t),
949
- removeAllListeners: G(() => {
1072
+ removeAllListeners: W(() => {
950
1073
  for (let { eventType: t, listener: r, capture: i } of n.splice(0)) e.removeEventListener(t, r, { capture: i });
951
1074
  }, t)
952
1075
  };
953
- }, Mn = /* @__PURE__ */ new WeakMap(), Nn = (e) => {
1076
+ }, Bn = /* @__PURE__ */ new WeakMap(), Vn = (e) => {
954
1077
  if (typeof e == "function") return e;
955
- let t = Mn.get(e);
956
- return t || Mn.set(e, t = (t) => e.handleEvent(t)), t;
957
- }, Pn = (e, t, n, r) => e.find((e) => e.eventType === t && e.listener === n && e.capture === r), Fn = (e, t) => {
958
- let n = K(e.addListener, t), r = K(e.removeListener, t), i = K(e.removeAllListeners, t), a = new EventTarget(), o = [], s = (e) => {
1078
+ let t = Bn.get(e);
1079
+ return t || Bn.set(e, t = (t) => e.handleEvent(t)), t;
1080
+ }, Hn = (e, t, n, r) => e.find((e) => e.eventType === t && e.listener === n && e.capture === r), Un = (e, t) => {
1081
+ let n = G(e.addListener, t), r = G(e.removeListener, t), i = G(e.removeAllListeners, t), a = new EventTarget(), o = [], s = (e) => {
959
1082
  let t = o.indexOf(e);
960
1083
  t !== -1 && o.splice(t, 1);
961
1084
  };
962
1085
  return Object.defineProperty(a, "addEventListener", { value: (e, t, r) => {
963
1086
  if (t === null) return;
964
- let i = Nn(t), a = typeof r == "boolean" ? r : !!r?.capture;
965
- if (Pn(o, e, i, a)) return;
1087
+ let i = Vn(t), a = typeof r == "boolean" ? r : !!r?.capture;
1088
+ if (Hn(o, e, i, a)) return;
966
1089
  let c = typeof r == "object" && r?.once ? (e) => (s(l), i(e)) : i, l = {
967
1090
  eventType: e,
968
1091
  listener: i,
969
1092
  capture: a,
970
1093
  wire: c
971
1094
  };
972
- o.push(l), (typeof r == "object" ? r?.signal : void 0)?.addEventListener("abort", () => s(l), { once: !0 }), n(e, Y(c), r).catch(() => {});
1095
+ o.push(l), (typeof r == "object" ? r?.signal : void 0)?.addEventListener("abort", () => s(l), { once: !0 }), n(e, q(c), r).catch(() => {});
973
1096
  } }), Object.defineProperty(a, "removeEventListener", { value: (e, t, n) => {
974
1097
  if (t === null) return;
975
- let i = Nn(t), a = typeof n == "boolean" ? n : !!n?.capture, c = Pn(o, e, i, a);
976
- c && (s(c), r(e, Y(c.wire), { capture: a }).catch(() => {}));
977
- } }), B(a, () => {
1098
+ let i = Vn(t), a = typeof n == "boolean" ? n : !!n?.capture, c = Hn(o, e, i, a);
1099
+ c && (s(c), r(e, q(c.wire), { capture: a }).catch(() => {}));
1100
+ } }), z(a, () => {
978
1101
  i().catch(() => {});
979
1102
  }), a;
980
- }, In = /* @__PURE__ */ t({
981
- box: () => Bn,
982
- isType: () => Rn,
983
- revive: () => Vn,
984
- type: () => Ln
985
- }), Ln = "blob", Rn = (e) => e instanceof Blob, zn = (e) => typeof File < "u" && e instanceof File, Bn = (e, t) => ({
986
- ...N,
987
- type: Ln,
1103
+ }, Wn = /* @__PURE__ */ t({
1104
+ box: () => Jn,
1105
+ isType: () => Kn,
1106
+ revive: () => Yn,
1107
+ type: () => Gn
1108
+ }), Gn = "blob", Kn = (e) => e instanceof Blob, qn = (e) => typeof File < "u" && e instanceof File, Jn = (e, t) => ({
1109
+ ...M,
1110
+ type: Gn,
988
1111
  mimeType: e.type,
989
- buffer: _t(e.arrayBuffer(), t),
990
- ...zn(e) ? {
1112
+ buffer: vt(e.arrayBuffer(), t),
1113
+ ...qn(e) ? {
991
1114
  fileName: e.name,
992
1115
  lastModified: e.lastModified
993
1116
  } : {}
994
- }), Vn = (e, t) => vt(e.buffer, t).then((t) => e.fileName !== void 0 && typeof File < "u" ? new File([t], e.fileName, {
1117
+ }), Yn = (e, t) => yt(e.buffer, t).then((t) => e.fileName !== void 0 && typeof File < "u" ? new File([t], e.fileName, {
995
1118
  type: e.mimeType,
996
1119
  lastModified: e.lastModified
997
- }) : new Blob([t], { type: e.mimeType })), Hn = /* @__PURE__ */ t({
998
- box: () => Gn,
999
- isType: () => Wn,
1000
- revive: () => Kn,
1001
- type: () => Un
1002
- }), Un = "symbol", Wn = (e) => typeof e == "symbol", Gn = (e, t) => {
1120
+ }) : new Blob([t], { type: e.mimeType })), Xn = /* @__PURE__ */ t({
1121
+ box: () => $n,
1122
+ isType: () => Qn,
1123
+ revive: () => er,
1124
+ type: () => Zn
1125
+ }), Zn = "symbol", Qn = (e) => typeof e == "symbol", $n = (e, t) => {
1003
1126
  let n = Symbol.keyFor(e);
1004
- return n === void 0 ? cn(e, {
1005
- ...N,
1006
- type: Un,
1127
+ return n === void 0 ? gn(e, {
1128
+ ...M,
1129
+ type: Zn,
1007
1130
  description: e.description
1008
1131
  }, t) : {
1009
- ...N,
1010
- type: Un,
1132
+ ...M,
1133
+ type: Zn,
1011
1134
  registryKey: n
1012
1135
  };
1013
- }, Kn = (e, t) => "registryKey" in e ? Symbol.for(e.registryKey) : Symbol(e.description), qn = /* @__PURE__ */ t({
1014
- box: () => Xn,
1015
- isType: () => Yn,
1016
- revive: () => Zn,
1017
- type: () => Jn
1018
- }), Jn = "asyncIterator", Yn = (e) => !e || typeof e != "object" || typeof ReadableStream < "u" && e instanceof ReadableStream ? !1 : typeof e[Symbol.asyncIterator] == "function", Xn = (e, t) => {
1136
+ }, er = (e, t) => "registryKey" in e ? Symbol.for(e.registryKey) : Symbol(e.description), tr = /* @__PURE__ */ t({
1137
+ box: () => ir,
1138
+ isType: () => rr,
1139
+ revive: () => ar,
1140
+ type: () => nr
1141
+ }), nr = "asyncIterator", rr = (e) => !e || typeof e != "object" || typeof ReadableStream < "u" && e instanceof ReadableStream ? !1 : typeof e[Symbol.asyncIterator] == "function", ir = (e, t) => {
1019
1142
  let n = e[Symbol.asyncIterator]();
1020
1143
  return {
1021
- ...N,
1022
- type: Jn,
1023
- next: G(((e) => n.next(e)), t),
1024
- return: G(((e) => n.return?.(e) ?? Promise.resolve({
1144
+ ...M,
1145
+ type: nr,
1146
+ next: W(((e) => n.next(e)), t),
1147
+ return: W(((e) => n.return?.(e) ?? Promise.resolve({
1025
1148
  done: !0,
1026
1149
  value: e
1027
1150
  })), t),
1028
- throw: G(((e) => n.throw?.(e) ?? Promise.reject(e)), t)
1151
+ throw: W(((e) => n.throw?.(e) ?? Promise.reject(e)), t)
1029
1152
  };
1030
- }, Zn = (e, t) => {
1031
- let n = K(e.next, t), r = K(e.return, t), i = K(e.throw, t), a = {
1153
+ }, ar = (e, t) => {
1154
+ let n = G(e.next, t), r = G(e.return, t), i = G(e.throw, t), a = {
1032
1155
  next: (...e) => n(...e),
1033
1156
  return: (e) => r(e),
1034
1157
  throw: (e) => i(e),
1035
1158
  [Symbol.asyncIterator]: () => a
1036
1159
  };
1037
1160
  return a;
1038
- }, Qn = [
1161
+ }, or = [
1039
1162
  globalThis.File,
1040
1163
  globalThis.FileList,
1041
1164
  globalThis.RegExp,
@@ -1055,7 +1178,7 @@ var ue = (e) => {
1055
1178
  globalThis.FileSystemFileHandle,
1056
1179
  globalThis.FileSystemDirectoryHandle,
1057
1180
  globalThis.RTCCertificate
1058
- ], $n = [
1181
+ ], sr = [
1059
1182
  globalThis.CropTarget,
1060
1183
  globalThis.EncodedAudioChunk,
1061
1184
  globalThis.EncodedVideoChunk,
@@ -1066,64 +1189,64 @@ var ue = (e) => {
1066
1189
  globalThis.RTCEncodedAudioFrame,
1067
1190
  globalThis.RTCEncodedVideoFrame,
1068
1191
  globalThis.WebTransportError
1069
- ], er = {
1192
+ ], cr = {
1070
1193
  type: "clonable",
1071
1194
  capableOnly: !0,
1072
- isType: (e) => C(e, Qn) || C(e, $n),
1195
+ isType: (e) => S(e, or) || S(e, sr),
1073
1196
  box: (e, t) => e,
1074
1197
  revive: (e, t) => e
1075
- }, tr = [
1198
+ }, lr = [
1076
1199
  globalThis.ImageBitmap,
1077
1200
  globalThis.OffscreenCanvas,
1078
1201
  globalThis.WritableStream,
1079
1202
  globalThis.TransformStream,
1080
1203
  globalThis.MediaStreamTrack,
1081
1204
  globalThis.RTCDataChannel
1082
- ], nr = [
1205
+ ], ur = [
1083
1206
  globalThis.AudioData,
1084
1207
  globalThis.VideoFrame,
1085
1208
  globalThis.MediaSourceHandle,
1086
1209
  globalThis.MIDIAccess,
1087
1210
  globalThis.WebTransportReceiveStream,
1088
1211
  globalThis.WebTransportSendStream
1089
- ], rr = {
1212
+ ], dr = {
1090
1213
  type: "transferable",
1091
1214
  capableOnly: !0,
1092
- isType: (e) => C(e, tr) || C(e, nr),
1215
+ isType: (e) => S(e, lr) || S(e, ur),
1093
1216
  box: (e, t) => e,
1094
1217
  revive: (e, t) => e
1095
- }, ir = (e) => {
1218
+ }, fr = (e) => {
1096
1219
  if (typeof e != "object" || !e) return !1;
1097
1220
  let t = Object.getPrototypeOf(e);
1098
1221
  return t === Object.prototype || t === null;
1099
- }, ar = [
1100
- We,
1101
- Yt,
1102
- ge,
1103
- xe,
1104
- Ee,
1105
- je,
1106
- Le,
1107
- In,
1108
- ft,
1109
- yt,
1110
- rt,
1111
- Ct,
1112
- Ot,
1113
- Nt,
1114
- zt,
1115
- Wt,
1116
- un,
1117
- mn,
1222
+ }, J = [
1223
+ Ge,
1224
+ nn,
1225
+ _e,
1226
+ Se,
1227
+ De,
1228
+ Me,
1229
+ Re,
1230
+ Wn,
1231
+ pt,
1232
+ bt,
1233
+ it,
1234
+ wt,
1235
+ Ft,
1236
+ Bt,
1237
+ Kt,
1238
+ Zt,
1118
1239
  vn,
1119
- Hn,
1120
- Cn,
1121
- qn,
1240
+ Sn,
1241
+ En,
1242
+ Xn,
1243
+ jn,
1244
+ tr,
1122
1245
  {
1123
1246
  type: "nonFiniteNumber",
1124
1247
  isType: (e) => typeof e == "number" && !Number.isFinite(e),
1125
- box: (e, t) => k(t.transport) ? {
1126
- ...N,
1248
+ box: (e, t) => O(t.transport) ? {
1249
+ ...M,
1127
1250
  type: "nonFiniteNumber",
1128
1251
  value: String(e)
1129
1252
  } : e,
@@ -1132,19 +1255,19 @@ var ue = (e) => {
1132
1255
  {
1133
1256
  type: "undefined",
1134
1257
  isType: (e) => e === void 0,
1135
- box: (e, t) => k(t.transport) ? {
1136
- ...N,
1258
+ box: (e, t) => O(t.transport) ? {
1259
+ ...M,
1137
1260
  type: "undefined"
1138
1261
  } : e,
1139
1262
  revive: (e, t) => void 0
1140
1263
  },
1141
- er,
1142
- rr,
1143
- On,
1264
+ cr,
1265
+ dr,
1266
+ In,
1144
1267
  {
1145
1268
  type: "unclonable",
1146
1269
  isType: (e) => {
1147
- if (typeof e != "object" || !e || Array.isArray(e) || ir(e)) return !1;
1270
+ if (typeof e != "object" || !e || Array.isArray(e) || fr(e)) return !1;
1148
1271
  try {
1149
1272
  return structuredClone(e), !1;
1150
1273
  } catch {
@@ -1152,44 +1275,44 @@ var ue = (e) => {
1152
1275
  }
1153
1276
  },
1154
1277
  box: (e, t) => ({
1155
- ...N,
1278
+ ...M,
1156
1279
  type: "unclonable"
1157
1280
  }),
1158
1281
  revive: (e, t) => ({})
1159
1282
  }
1160
- ], or = (e, t) => t.find((t) => t.isType(e)), sr = (e, t) => t.find((t) => t.type === e.type), cr = (e) => !!e && typeof e == "object" && Object.getPrototypeOf(e) === Object.prototype, lr = (e, t) => Array.isArray(e) ? e.map((e) => t(e)) : cr(e) ? Object.fromEntries(Object.entries(e).map(([e, n]) => [e, t(n)])) : e, ur = /* @__PURE__ */ new WeakSet(), dr = /* @__PURE__ */ new WeakSet(), fr = (e) => e !== null && (typeof e == "object" || typeof e == "function"), X = (e, t) => {
1161
- if (P(e)) return e;
1162
- let n = fr(e);
1283
+ ], pr = (e, t) => t.find((t) => t.isType(e)), mr = (e, t) => t.find((t) => t.type === e.type), hr = (e) => !!e && typeof e == "object" && Object.getPrototypeOf(e) === Object.prototype, gr = (e, t) => Array.isArray(e) ? e.map((e) => t(e)) : hr(e) ? Object.fromEntries(Object.entries(e).map(([e, n]) => [e, t(n)])) : e, _r = /* @__PURE__ */ new WeakSet(), vr = /* @__PURE__ */ new WeakSet(), yr = (e) => e !== null && (typeof e == "object" || typeof e == "function"), Y = (e, t) => {
1284
+ if (N(e)) return e;
1285
+ let n = yr(e);
1163
1286
  if (n) {
1164
- if (ur.has(e)) throw TypeError("osra: cannot serialize a circular structure break the cycle or send the container by reference");
1165
- ur.add(e);
1287
+ if (_r.has(e)) throw TypeError("osra: cannot serialize a circular structure - break the cycle or send the container by reference");
1288
+ _r.add(e);
1166
1289
  }
1167
1290
  try {
1168
- let n = or(e, t.revivableModules);
1169
- return n ? n.box(e, t) : lr(e, (e) => X(e, t));
1291
+ let n = pr(e, t.revivableModules);
1292
+ return n ? n.box(e, t) : gr(e, (e) => Y(e, t));
1170
1293
  } finally {
1171
- n && ur.delete(e);
1294
+ n && _r.delete(e);
1172
1295
  }
1173
- }, Z = (e, t) => {
1174
- let n = fr(e);
1296
+ }, X = (e, t) => {
1297
+ let n = yr(e);
1175
1298
  if (n) {
1176
- if (dr.has(e)) throw TypeError("osra: cannot revive a circular structure");
1177
- dr.add(e);
1299
+ if (vr.has(e)) throw TypeError("osra: cannot revive a circular structure");
1300
+ vr.add(e);
1178
1301
  }
1179
1302
  try {
1180
- if (P(e)) {
1181
- let n = sr(e, t.revivableModules);
1303
+ if (N(e)) {
1304
+ let n = mr(e, t.revivableModules);
1182
1305
  if (n) return n.revive(e, t);
1183
1306
  }
1184
- return lr(e, (e) => Z(e, t));
1307
+ return gr(e, (e) => X(e, t));
1185
1308
  } finally {
1186
- n && dr.delete(e);
1309
+ n && vr.delete(e);
1187
1310
  }
1188
- }, pr = /* @__PURE__ */ t({
1189
- init: () => hr,
1190
- startBidirectionalConnection: () => Q,
1191
- type: () => mr
1192
- }), mr = "bidirectional", Q = ({ transport: e, value: t, remoteUuid: n, eventTarget: r, send: i, revivableModules: a }) => {
1311
+ }, br = /* @__PURE__ */ t({
1312
+ init: () => Sr,
1313
+ startBidirectionalConnection: () => Z,
1314
+ type: () => xr
1315
+ }), xr = "bidirectional", Z = ({ transport: e, value: t, remoteUuid: n, eventTarget: r, send: i, revivableModules: a }) => {
1193
1316
  let o = {
1194
1317
  transport: e,
1195
1318
  remoteUuid: n,
@@ -1204,13 +1327,13 @@ var ue = (e) => {
1204
1327
  }), i({
1205
1328
  type: "init",
1206
1329
  remoteUuid: n,
1207
- data: X(t, o)
1330
+ data: Y(t, o)
1208
1331
  }), {
1209
1332
  revivableContext: o,
1210
- remoteValue: s.then((e) => Z(e, o))
1333
+ remoteValue: s.then((e) => X(e, o))
1211
1334
  };
1212
- }, hr = (e) => {
1213
- if (!(A(e.transport) && j(e.transport))) return;
1335
+ }, Sr = (e) => {
1336
+ if (!(k(e.transport) && A(e.transport))) return;
1214
1337
  if (e.protocolEventTarget.addEventListener("message", ({ detail: t }) => {
1215
1338
  if (t.type === "announce") {
1216
1339
  if (!t.remoteUuid) {
@@ -1227,7 +1350,7 @@ var ue = (e) => {
1227
1350
  });
1228
1351
  let n = e.createConnectionEventTarget(), r;
1229
1352
  try {
1230
- r = Q({
1353
+ r = Z({
1231
1354
  transport: e.transport,
1232
1355
  value: e.value,
1233
1356
  remoteUuid: t.uuid,
@@ -1251,7 +1374,7 @@ var ue = (e) => {
1251
1374
  if (t.remoteUuid !== e.getUuid()) return;
1252
1375
  let n = e.connectionContexts.get(t.uuid);
1253
1376
  if (!n) return;
1254
- e.connectionContexts.delete(t.uuid), Ue(n.connection.revivableContext), e.rejectRemoteValue(/* @__PURE__ */ Error("osra: peer closed the connection"));
1377
+ e.connectionContexts.delete(t.uuid), We(n.connection.revivableContext), e.rejectRemoteValue(/* @__PURE__ */ Error("osra: peer closed the connection"));
1255
1378
  return;
1256
1379
  }
1257
1380
  if (t.remoteUuid !== e.getUuid()) return;
@@ -1260,7 +1383,7 @@ var ue = (e) => {
1260
1383
  }), e.presetRemoteUuid !== void 0) {
1261
1384
  let t = e.createConnectionEventTarget(), n;
1262
1385
  try {
1263
- n = Q({
1386
+ n = Z({
1264
1387
  transport: e.transport,
1265
1388
  value: e.value,
1266
1389
  remoteUuid: e.presetRemoteUuid,
@@ -1284,59 +1407,59 @@ var ue = (e) => {
1284
1407
  e.unregisterSignal?.aborted || e.connectionContexts.size > 0 || (e.sendMessage({ type: "announce" }), n = setTimeout(r, t), t = Math.min(t * 2, 1e3));
1285
1408
  };
1286
1409
  e.unregisterSignal?.addEventListener("abort", () => clearTimeout(n), { once: !0 }), r();
1287
- }, gr = () => new EventTarget(), $ = (e) => {
1288
- let t = M(e), n = t ? e.emit : e, r = t ? e.receive : e;
1410
+ }, Q = () => new EventTarget(), $ = (e) => {
1411
+ let t = j(e), n = t ? e.emit : e, r = t ? e.receive : e;
1289
1412
  return {
1290
- isJson: t && "isJson" in e && e.isJson !== void 0 ? e.isJson : n !== void 0 && k(n) || r !== void 0 && k(r),
1413
+ isJson: t && "isJson" in e && e.isJson !== void 0 ? e.isJson : n !== void 0 && O(n) || r !== void 0 && O(r),
1291
1414
  ...n === void 0 ? {} : { emit: n },
1292
1415
  ...r === void 0 ? {} : { receive: r }
1293
1416
  };
1294
- }, _r = (e) => e ? e(ar) : ar, vr = (e, t, { key: n = r, origin: i = "*", originA: a = i, originB: o = i, nameA: s, nameB: c, unregisterSignal: d } = {}) => {
1417
+ }, Cr = (e) => e ? e(J) : J, wr = (e, t, { key: n = r, origin: i = "*", originA: a = i, originB: o = i, nameA: s, nameB: c, unregisterSignal: d } = {}) => {
1295
1418
  let f = $(e), p = $(t), m = (e, t, r, i, a) => {
1296
- !j(e) || !A(t) || l({
1419
+ !A(e) || !k(t) || l({
1297
1420
  transport: e,
1298
1421
  key: n,
1299
1422
  remoteName: a,
1300
1423
  origin: r,
1301
1424
  unregisterSignal: d,
1302
1425
  listener: (e) => {
1303
- u(t, e, i, L(e));
1426
+ u(t, e, i, I(e));
1304
1427
  }
1305
1428
  });
1306
1429
  };
1307
1430
  m(f, p, a, o, s), m(p, f, o, a, c);
1308
- }, yr = [pr], br = (e, { transport: t, name: i, remoteName: a, key: o = r, origin: s = "*", unregisterSignal: c, revivableModules: d, uuid: f, remoteUuid: p }) => {
1431
+ }, Tr = [br], Er = (e, { transport: t, name: i, remoteName: a, key: o = r, origin: s = "*", unregisterSignal: c, revivableModules: d, uuid: f, remoteUuid: p }) => {
1309
1432
  let m = $(t);
1310
- if (!(A(m) && j(m))) throw Error("osra: transport must be able to both emit and receive to establish a connection pass a bidirectional platform transport or a custom { emit, receive } pair");
1311
- let h = _r(d), g = /* @__PURE__ */ new Map(), { promise: _, resolve: ee, reject: v } = Promise.withResolvers();
1312
- _.catch(() => {});
1313
- let y = f ?? globalThis.crypto.randomUUID(), b = (e) => {
1433
+ if (!(k(m) && A(m))) throw Error("osra: transport must be able to both emit and receive to establish a connection; pass a bidirectional platform transport or a custom { emit, receive } pair");
1434
+ let ee = Cr(d), h = /* @__PURE__ */ new Map(), { promise: g, resolve: te, reject: _ } = Promise.withResolvers();
1435
+ g.catch(() => {});
1436
+ let v = f ?? globalThis.crypto.randomUUID(), y = (e) => {
1314
1437
  let t = {
1315
1438
  [n]: o,
1316
1439
  name: i,
1317
- uuid: y,
1440
+ uuid: v,
1318
1441
  ...e
1319
1442
  };
1320
- u(m, t, s, L(t));
1321
- }, x = (e) => {
1322
- c?.aborted || b(e);
1323
- }, S = gr(), te = {
1443
+ u(m, t, s, I(t));
1444
+ }, b = (e) => {
1445
+ c?.aborted || y(e);
1446
+ }, x = Q(), ne = {
1324
1447
  transport: m,
1325
1448
  value: e,
1326
- revivableModules: h,
1327
- connectionContexts: g,
1328
- getUuid: () => y,
1449
+ revivableModules: ee,
1450
+ connectionContexts: h,
1451
+ getUuid: () => v,
1329
1452
  presetRemoteUuid: p,
1330
- sendMessage: x,
1331
- protocolEventTarget: S,
1332
- resolveRemoteValue: ee,
1333
- rejectRemoteValue: v,
1334
- createConnectionEventTarget: gr,
1453
+ sendMessage: b,
1454
+ protocolEventTarget: x,
1455
+ resolveRemoteValue: te,
1456
+ rejectRemoteValue: _,
1457
+ createConnectionEventTarget: Q,
1335
1458
  unregisterSignal: c
1336
1459
  };
1337
1460
  l({
1338
1461
  listener: (e, t) => {
1339
- e.uuid !== y && S.dispatchEvent(new CustomEvent("message", { detail: e }));
1462
+ e.uuid !== v && x.dispatchEvent(new CustomEvent("message", { detail: e }));
1340
1463
  },
1341
1464
  transport: m,
1342
1465
  remoteName: a,
@@ -1344,16 +1467,16 @@ var ue = (e) => {
1344
1467
  origin: s,
1345
1468
  unregisterSignal: c
1346
1469
  }), c?.addEventListener("abort", () => {
1347
- for (let [e, t] of g) b({
1470
+ for (let [e, t] of h) y({
1348
1471
  type: "close",
1349
1472
  remoteUuid: e
1350
- }), Ue(t.connection.revivableContext);
1351
- g.clear(), v(c.reason);
1473
+ }), We(t.connection.revivableContext);
1474
+ h.clear(), _(c.reason);
1352
1475
  }, { once: !0 });
1353
- for (let e of yr) e.init(te);
1354
- return _;
1355
- }, xr = async (e, t) => br(e, t);
1476
+ for (let e of Tr) e.init(ne);
1477
+ return g;
1478
+ }, Dr = async (e, t) => Er(e, t);
1356
1479
  //#endregion
1357
- export { N as BoxBase, z as EventChannel, R as EventPort, i as OSRA_BOX, r as OSRA_DEFAULT_KEY, n as OSRA_KEY, ce as assertEmitTransport, le as assertReceiveTransport, me as boxBuffer, s as checkOsraMessageKey, yr as connections, gr as createTypedEventTarget, ar as defaultRevivableModules, xr as expose, L as getTransferableObjects, a as getWebExtensionGlobal, o as getWebExtensionRuntime, Y as identity, hr as init, C as instanceOfAny, re as isClonable, de as isCustomEmitTransport, fe as isCustomReceiveTransport, M as isCustomTransport, b as isDedicatedWorker, oe as isEmitJsonOnlyTransport, A as isEmitTransport, k as isJsonOnlyTransport, te as isOsraMessage, se as isReceiveJsonOnlyTransport, j as isReceiveTransport, P as isRevivableBox, v as isServiceWorker, ee as isServiceWorkerContainer, ne as isSharedArrayBuffer, x as isSharedWorker, ie as isTransferable, pe as isTransport, g as isTypedArray, E as isWebExtensionOnConnect, D as isWebExtensionOnMessage, T as isWebExtensionPort, w as isWebExtensionRuntime, _ as isWebSocket, O as isWindow, y as isWorker, _r as mergeRevivableModules, $ as normalizeTransport, I as onTeardown, X as recursiveBox, Z as recursiveRevive, l as registerOsraMessageListener, vr as relay, he as reviveBuffer, Ue as runTeardown, u as sendOsraMessage, Q as startBidirectionalConnection, br as startConnections, B as trackGc, Xe as transfer, mr as type, m as typedArrayToType, h as typedArrayTypeToTypedArrayConstructor };
1480
+ export { M as BoxBase, R as EventChannel, L as EventPort, i as OSRA_BOX, r as OSRA_DEFAULT_KEY, n as OSRA_KEY, le as assertEmitTransport, ue as assertReceiveTransport, he as boxBuffer, s as checkOsraMessageKey, Tr as connections, Q as createTypedEventTarget, J as defaultRevivableModules, Dr as expose, I as getTransferableObjects, a as getWebExtensionGlobal, o as getWebExtensionRuntime, q as identity, Sr as init, S as instanceOfAny, ie as isClonable, fe as isCustomEmitTransport, pe as isCustomReceiveTransport, j as isCustomTransport, y as isDedicatedWorker, se as isEmitJsonOnlyTransport, k as isEmitTransport, O as isJsonOnlyTransport, ne as isOsraMessage, ce as isReceiveJsonOnlyTransport, A as isReceiveTransport, N as isRevivableBox, _ as isServiceWorker, te as isServiceWorkerContainer, re as isSharedArrayBuffer, b as isSharedWorker, ae as isTransferable, me as isTransport, h as isTypedArray, T as isWebExtensionOnConnect, E as isWebExtensionOnMessage, w as isWebExtensionPort, C as isWebExtensionRuntime, g as isWebSocket, D as isWindow, v as isWorker, Cr as mergeRevivableModules, $ as normalizeTransport, F as onTeardown, Y as recursiveBox, X as recursiveRevive, l as registerOsraMessageListener, wr as relay, ge as reviveBuffer, We as runTeardown, u as sendOsraMessage, Z as startBidirectionalConnection, Er as startConnections, z as trackGc, Ze as transfer, xr as type, m as typedArrayToType, ee as typedArrayTypeToTypedArrayConstructor };
1358
1481
 
1359
1482
  //# sourceMappingURL=index.js.map