osra 0.6.4 → 0.6.5

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) => C(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) => re(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 = N(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 (E(l) || D(l) || O(l) || ie(l)) {
27
+ if (T(l) || E(l) || se(l) || ce(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 (E(l)) t(l.onMessage);
38
- else if (O(l)) {
37
+ if (T(l)) t(l.onMessage);
38
+ else if (se(l)) {
39
39
  let e = (e) => t(e.onMessage, e);
40
40
  l.addListener(e), c(o, () => l.removeListener(e));
41
- } else ie(l) ? t(l) : t(l.onMessage);
41
+ } else ce(l) ? t(l) : t(l.onMessage);
42
42
  return;
43
43
  }
44
- let u = x(l) ? l.port : l, d = a !== "*" && k(l), f = (t) => {
44
+ let u = x(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);
@@ -55,19 +55,26 @@ var e = Object.defineProperty, t = (t, n) => {
55
55
  }));
56
56
  };
57
57
  u.addEventListener("message", f), u instanceof MessagePort && u.start(), c(o, () => u.removeEventListener("message", f));
58
- }, u = (e, t, n = "*", r = []) => {
59
- let i = N(e) ? e.emit : e;
58
+ }, u = /* @__PURE__ */ new WeakSet(), d = (e) => String(e?.message ?? e).includes("disconnected port"), f = (e, t, n = "*", r = []) => {
59
+ let i = j(e) ? e.emit : e;
60
60
  if (typeof i == "function") i(t, r);
61
- else if (k(i)) i.postMessage(t, n, r);
62
- else if (D(i)) i.postMessage(t);
63
- else if (E(i)) i.sendMessage(t)?.catch?.((e) => {
61
+ else if (D(i)) i.postMessage(t, n, r);
62
+ else if (E(i)) {
63
+ if (u.has(i)) return;
64
+ try {
65
+ i.postMessage(t);
66
+ } catch (e) {
67
+ if (!d(e)) throw e;
68
+ u.add(i);
69
+ }
70
+ } else if (T(i)) i.sendMessage(t)?.catch?.((e) => {
64
71
  if (!String(e?.message).includes("Receiving end does not exist")) throw e;
65
72
  });
66
73
  else if (_(i)) {
67
74
  let e = JSON.stringify(t);
68
75
  i.readyState === WebSocket.CONNECTING ? i.addEventListener("open", () => i.send(e), { once: !0 }) : i.send(e);
69
76
  } else x(i) ? i.port.postMessage(t, r) : i.postMessage(t, r);
70
- }, d = globalThis.Float16Array, f = {
77
+ }, p = globalThis.Float16Array, m = {
71
78
  Int8Array,
72
79
  Uint8Array,
73
80
  Uint8ClampedArray,
@@ -75,27 +82,27 @@ var e = Object.defineProperty, t = (t, n) => {
75
82
  Uint16Array,
76
83
  Int32Array,
77
84
  Uint32Array,
78
- Float16Array: d,
85
+ Float16Array: p,
79
86
  Float32Array,
80
87
  Float64Array,
81
88
  BigInt64Array,
82
89
  BigUint64Array
83
- }, p = Object.values(f), m = (e) => {
90
+ }, ee = Object.values(m), h = (e) => {
84
91
  let t = e.constructor.name;
85
- if (t in f) return t;
86
- for (let [t, n] of Object.entries(f)) if (n && e instanceof n) return t;
92
+ if (t in m) return t;
93
+ for (let [t, n] of Object.entries(m)) if (n && e instanceof n) return t;
87
94
  throw Error("Unknown typed array type");
88
- }, h = (e) => {
89
- let t = f[e];
95
+ }, te = (e) => {
96
+ let t = m[e];
90
97
  if (!t) throw Error("Unknown typed array type");
91
98
  return t;
92
- }, g = (e) => p.some((t) => !!t && e instanceof t), _ = (e) => e instanceof WebSocket, v = (e) => !!globalThis.ServiceWorkerContainer && e instanceof ServiceWorkerContainer, ee = (e) => !!globalThis.ServiceWorker && e instanceof ServiceWorker, y = (e) => !!globalThis.Worker && e instanceof Worker, b = (e) => {
99
+ }, g = (e) => ee.some((t) => !!t && e instanceof t), _ = (e) => e instanceof WebSocket, v = (e) => !!globalThis.ServiceWorkerContainer && e instanceof ServiceWorkerContainer, y = (e) => !!globalThis.ServiceWorker && e instanceof ServiceWorker, ne = (e) => !!globalThis.Worker && e instanceof Worker, b = (e) => {
93
100
  let t = globalThis.DedicatedWorkerGlobalScope;
94
101
  return !!t && e instanceof t;
95
- }, x = (e) => !!globalThis.SharedWorker && e instanceof SharedWorker, S = (e) => e instanceof MessagePort, C = (e) => !!e && typeof e == "object" && "__OSRA_KEY__" in e && !!e.__OSRA_KEY__, w = (e, t) => {
102
+ }, x = (e) => !!globalThis.SharedWorker && e instanceof SharedWorker, S = (e) => e instanceof MessagePort, re = (e) => !!e && typeof e == "object" && "__OSRA_KEY__" in e && !!e.__OSRA_KEY__, C = (e, t) => {
96
103
  for (let n of t) if (n && e instanceof n) return !0;
97
104
  return !1;
98
- }, T = (e) => w(e, [globalThis.SharedArrayBuffer]), te = T, ne = (e) => w(e, [
105
+ }, w = (e) => C(e, [globalThis.SharedArrayBuffer]), ie = w, ae = (e) => C(e, [
99
106
  globalThis.ArrayBuffer,
100
107
  globalThis.MessagePort,
101
108
  globalThis.ReadableStream,
@@ -111,13 +118,13 @@ var e = Object.defineProperty, t = (t, n) => {
111
118
  globalThis.RTCDataChannel,
112
119
  globalThis.WebTransportReceiveStream,
113
120
  globalThis.WebTransportSendStream
114
- ]), E = (e) => {
121
+ ]), T = (e) => {
115
122
  let t = o();
116
123
  return t ? e === t : !1;
117
- }, D = (e, t = !1) => !e || typeof e != "object" || k(e) || !("name" in e) || !("disconnect" in e) || !("postMessage" in e) ? !1 : t ? "sender" in e && "onMessage" in e && "onDisconnect" in e : !0, re = (e) => !!e && typeof e == "object" && !k(e) && "addListener" in e && "hasListener" in e && "removeListener" in e, O = (e) => {
124
+ }, E = (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, se = (e) => {
118
125
  let t = o();
119
126
  return t ? e === t.onConnect || e === t.onConnectExternal : !1;
120
- }, ie = (e) => re(e), k = (e) => {
127
+ }, ce = (e) => oe(e), D = (e) => {
121
128
  if (!e || typeof e != "object") return !1;
122
129
  try {
123
130
  return "window" in e && e.window === e;
@@ -128,51 +135,51 @@ var e = Object.defineProperty, t = (t, n) => {
128
135
  return !1;
129
136
  }
130
137
  }
131
- }, ae = (e) => _(e) || D(e) || E(e), oe = (e) => _(e) || D(e) || O(e) || ie(e) || E(e), A = (e) => !!e && typeof e == "object" && !k(e) && "isJson" in e && e.isJson === !0 || ae(e) || oe(e), j = (e) => k(e) || ae(e) || ee(e) || y(e) || b(e) || x(e) || S(e) || ue(e);
132
- function se(e) {
133
- if (!j(e)) throw Error("Transport is not emitable");
138
+ }, le = (e) => _(e) || E(e) || T(e), ue = (e) => _(e) || E(e) || se(e) || ce(e) || T(e), O = (e) => !!e && typeof e == "object" && !D(e) && "isJson" in e && e.isJson === !0 || le(e) || ue(e), k = (e) => D(e) || le(e) || y(e) || ne(e) || b(e) || x(e) || S(e) || me(e);
139
+ function de(e) {
140
+ if (!k(e)) throw Error("Transport is not emitable");
134
141
  }
135
- var M = (e) => k(e) || oe(e) || v(e) || y(e) || b(e) || x(e) || S(e) || de(e);
136
- function ce(e) {
137
- if (!M(e)) throw Error("Transport is not receiveable");
142
+ var A = (e) => D(e) || ue(e) || v(e) || ne(e) || b(e) || x(e) || S(e) || he(e);
143
+ function fe(e) {
144
+ if (!A(e)) throw Error("Transport is not receiveable");
138
145
  }
139
- var le = (e) => {
140
- if (!e || typeof e != "object" || k(e)) return !1;
146
+ var pe = (e) => {
147
+ if (!e || typeof e != "object" || D(e)) return !1;
141
148
  let t = Object.getPrototypeOf(e);
142
149
  return t === Object.prototype || t === null;
143
- }, ue = (e) => !le(e) || !("emit" in e) ? !1 : j(e.emit) || typeof e.emit == "function", de = (e) => !le(e) || !("receive" in e) ? !1 : M(e.receive) || typeof e.receive == "function", N = (e) => ue(e) || de(e), fe = (e) => j(e) || M(e) || N(e) || A(e), P = { [i]: "revivable" }, F = (e) => !!e && typeof e == "object" && "__OSRA_BOX__" in e && e.__OSRA_BOX__ === "revivable", pe = (e, t) => A(t.transport) ? { base64Buffer: new Uint8Array(e).toBase64() } : { arrayBuffer: e }, me = (e) => "arrayBuffer" in e ? e.arrayBuffer : Uint8Array.fromBase64(e.base64Buffer).buffer, he = /* @__PURE__ */ t({
144
- box: () => ve,
145
- isType: () => _e,
146
- revive: () => ye,
147
- type: () => ge
148
- }), ge = "arrayBuffer", _e = (e) => e instanceof ArrayBuffer, ve = (e, t) => ({
149
- ...P,
150
- type: ge,
151
- ...pe(e, t)
152
- }), ye = (e, t) => me(e), be = /* @__PURE__ */ t({
153
- box: () => Ce,
154
- isType: () => Se,
155
- revive: () => we,
156
- type: () => xe
157
- }), xe = "date", Se = (e) => e instanceof Date, Ce = (e, t) => ({
158
- ...P,
159
- type: xe,
150
+ }, me = (e) => !pe(e) || !("emit" in e) ? !1 : k(e.emit) || typeof e.emit == "function", he = (e) => !pe(e) || !("receive" in e) ? !1 : A(e.receive) || typeof e.receive == "function", j = (e) => me(e) || he(e), ge = (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", _e = (e, t) => O(t.transport) ? { base64Buffer: new Uint8Array(e).toBase64() } : { arrayBuffer: e }, ve = (e) => "arrayBuffer" in e ? e.arrayBuffer : Uint8Array.fromBase64(e.base64Buffer).buffer, ye = /* @__PURE__ */ t({
151
+ box: () => Se,
152
+ isType: () => xe,
153
+ revive: () => Ce,
154
+ type: () => be
155
+ }), be = "arrayBuffer", xe = (e) => e instanceof ArrayBuffer, Se = (e, t) => ({
156
+ ...M,
157
+ type: be,
158
+ ..._e(e, t)
159
+ }), Ce = (e, t) => ve(e), we = /* @__PURE__ */ t({
160
+ box: () => De,
161
+ isType: () => Ee,
162
+ revive: () => Oe,
163
+ type: () => Te
164
+ }), Te = "date", Ee = (e) => e instanceof Date, De = (e, t) => ({
165
+ ...M,
166
+ type: Te,
160
167
  ISOString: e.toISOString()
161
- }), we = (e, t) => new Date(e.ISOString), Te = /* @__PURE__ */ t({
162
- box: () => Oe,
163
- isType: () => De,
164
- revive: () => ke,
165
- type: () => Ee
166
- }), Ee = "headers", De = (e) => e instanceof Headers, Oe = (e, t) => ({
167
- ...P,
168
- type: Ee,
168
+ }), Oe = (e, t) => new Date(e.ISOString), ke = /* @__PURE__ */ t({
169
+ box: () => Me,
170
+ isType: () => je,
171
+ revive: () => Ne,
172
+ type: () => Ae
173
+ }), Ae = "headers", je = (e) => e instanceof Headers, Me = (e, t) => ({
174
+ ...M,
175
+ type: Ae,
169
176
  entries: [...e.entries()]
170
- }), ke = (e, t) => new Headers(e.entries), Ae = /* @__PURE__ */ t({
171
- box: () => Pe,
172
- isType: () => Ne,
173
- revive: () => Fe,
174
- type: () => je
175
- }), je = "error", Me = {
177
+ }), Ne = (e, t) => new Headers(e.entries), Pe = /* @__PURE__ */ t({
178
+ box: () => Re,
179
+ isType: () => Le,
180
+ revive: () => ze,
181
+ type: () => Fe
182
+ }), Fe = "error", Ie = {
176
183
  Error,
177
184
  TypeError,
178
185
  RangeError,
@@ -180,11 +187,11 @@ var le = (e) => {
180
187
  ReferenceError,
181
188
  EvalError,
182
189
  URIError
183
- }, Ne = (e) => e instanceof Error, Pe = (e, t) => {
190
+ }, Le = (e) => e instanceof Error, Re = (e, t) => {
184
191
  let n = "cause" in e && e.cause !== void 0, r = typeof AggregateError < "u" && e instanceof AggregateError, i = typeof DOMException < "u" && e instanceof DOMException;
185
192
  return {
186
- ...P,
187
- type: je,
193
+ ...M,
194
+ type: Fe,
188
195
  name: e.name,
189
196
  message: e.message,
190
197
  stack: e.stack || e.toString(),
@@ -192,7 +199,7 @@ var le = (e) => {
192
199
  ...r ? { errors: Q(e.errors, t) } : {},
193
200
  ...i ? { isDOMException: !0 } : {}
194
201
  };
195
- }, Fe = (e, t) => {
202
+ }, ze = (e, t) => {
196
203
  let n = e.cause === void 0 ? void 0 : $(e.cause, t), r = n === void 0 ? void 0 : { cause: n };
197
204
  if (e.isDOMException && typeof DOMException < "u") {
198
205
  let t = new DOMException(e.message, e.name);
@@ -207,44 +214,44 @@ var le = (e) => {
207
214
  let i;
208
215
  if (e.errors !== void 0 && typeof AggregateError < "u") i = AggregateError($(e.errors, t), e.message, r);
209
216
  else {
210
- let t = Me[e.name] ?? Error;
217
+ let t = Ie[e.name] ?? Error;
211
218
  i = r === void 0 ? new t(e.message) : new t(e.message, r);
212
219
  }
213
220
  return e.name && i.name !== e.name && (i.name = e.name), e.stack && (i.stack = e.stack), i;
214
- }, Ie = /* @__PURE__ */ t({
215
- box: () => ze,
216
- isType: () => Re,
217
- revive: () => Be,
218
- type: () => Le
219
- }), Le = "typedArray", Re = g, ze = (e, t) => {
221
+ }, Be = /* @__PURE__ */ t({
222
+ box: () => Ue,
223
+ isType: () => He,
224
+ revive: () => We,
225
+ type: () => Ve
226
+ }), Ve = "typedArray", He = g, Ue = (e, t) => {
220
227
  let n = e.byteOffset === 0 && e.byteLength === e.buffer.byteLength ? e.buffer : e.buffer.slice(e.byteOffset, e.byteOffset + e.byteLength);
221
228
  return {
222
- ...P,
223
- type: Le,
224
- typedArrayType: m(e),
225
- ...pe(n, t)
229
+ ...M,
230
+ type: Ve,
231
+ typedArrayType: h(e),
232
+ ..._e(n, t)
226
233
  };
227
- }, Be = (e, t) => new (h(e.typedArrayType))(me(e)), I = /* @__PURE__ */ new WeakMap(), Ve = /* @__PURE__ */ new WeakSet(), L = (e, t) => {
228
- if (Ve.has(e)) return t(), () => {};
229
- let n = I.get(e);
230
- return n || I.set(e, n = /* @__PURE__ */ new Set()), n.add(t), () => n.delete(t);
231
- }, R = (e) => {
232
- if (Ve.has(e)) return;
233
- Ve.add(e);
234
- let t = I.get(e);
234
+ }, We = (e, t) => new (te(e.typedArrayType))(ve(e)), P = /* @__PURE__ */ new WeakMap(), F = /* @__PURE__ */ new WeakSet(), I = (e, t) => {
235
+ if (F.has(e)) return t(), () => {};
236
+ let n = P.get(e);
237
+ return n || P.set(e, n = /* @__PURE__ */ new Set()), n.add(t), () => n.delete(t);
238
+ }, L = (e) => F.has(e), R = (e) => {
239
+ if (F.has(e)) return;
240
+ F.add(e);
241
+ let t = P.get(e);
235
242
  if (t) {
236
- I.delete(e);
243
+ P.delete(e);
237
244
  for (let e of t) try {
238
245
  e();
239
246
  } catch {}
240
247
  }
241
- }, He = /* @__PURE__ */ t({
242
- box: () => Xe,
243
- isType: () => Ye,
244
- revive: () => Ze,
245
- transfer: () => Je,
246
- type: () => Ue
247
- }), Ue = "transfer", We = Symbol.for("osra.transfer"), Ge = (e) => typeof e == "object" && !!e, Ke = (e) => Ge(e) && We in e && e[We] === !0, qe = (e) => Ge(e) ? ArrayBuffer.isView(e) ? !0 : w(e, [
248
+ }, Ge = /* @__PURE__ */ t({
249
+ box: () => $e,
250
+ isType: () => Qe,
251
+ revive: () => et,
252
+ transfer: () => Ze,
253
+ type: () => Ke
254
+ }), 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 : C(e, [
248
255
  globalThis.ArrayBuffer,
249
256
  globalThis.MessagePort,
250
257
  globalThis.ReadableStream,
@@ -254,15 +261,15 @@ var le = (e) => {
254
261
  globalThis.OffscreenCanvas,
255
262
  globalThis.VideoFrame,
256
263
  globalThis.AudioData
257
- ]) : !1, Je = (e) => qe(e) ? {
258
- [We]: !0,
264
+ ]) : !1, Ze = (e) => Xe(e) ? {
265
+ [qe]: !0,
259
266
  value: e
260
- } : e, Ye = (e) => Ke(e), Xe = (e, t) => ({
261
- ...P,
262
- type: Ue,
267
+ } : e, Qe = (e) => Ye(e), $e = (e, t) => ({
268
+ ...M,
269
+ type: Ke,
263
270
  inner: Q(e.value, t),
264
- degraded: A(t.transport)
265
- }), Ze = (e, t) => $(e.inner, t), Qe = (e) => w(e, [
271
+ degraded: O(t.transport)
272
+ }), et = (e, t) => $(e.inner, t), tt = (e) => C(e, [
266
273
  globalThis.MessagePort,
267
274
  globalThis.ReadableStream,
268
275
  globalThis.WritableStream,
@@ -274,18 +281,18 @@ var le = (e) => {
274
281
  globalThis.RTCDataChannel,
275
282
  globalThis.WebTransportReceiveStream,
276
283
  globalThis.WebTransportSendStream
277
- ]), $e = (e) => F(e) && e.type === "transfer", z = (e) => {
284
+ ]), nt = (e) => N(e) && e.type === "transfer", z = (e) => {
278
285
  let t = [], n = /* @__PURE__ */ new WeakSet(), r = (e, i) => {
279
- if (!(!e || typeof e != "object") && !n.has(e) && (n.add(e), !T(e))) {
280
- if ($e(e)) {
286
+ if (!(!e || typeof e != "object") && !n.has(e) && (n.add(e), !w(e))) {
287
+ if (nt(e)) {
281
288
  r(e.inner, i || !e.degraded);
282
289
  return;
283
290
  }
284
- if (Qe(e)) {
291
+ if (tt(e)) {
285
292
  t.push(e);
286
293
  return;
287
294
  }
288
- if (ne(e)) {
295
+ if (ae(e)) {
289
296
  i && t.push(e);
290
297
  return;
291
298
  }
@@ -357,25 +364,25 @@ var le = (e) => {
357
364
  let e = new B(), t = new B();
358
365
  e._peer = t, t._peer = e, this.port1 = e, this.port2 = t;
359
366
  }
360
- }, et = new FinalizationRegistry((e) => {
367
+ }, rt = new FinalizationRegistry((e) => {
361
368
  try {
362
369
  e();
363
370
  } catch {}
364
371
  }), H = (e, t) => {
365
372
  let n = {};
366
- return et.register(e, t, n), () => et.unregister(n);
367
- }, tt = /* @__PURE__ */ t({
373
+ return rt.register(e, t, n), () => rt.unregister(n);
374
+ }, it = /* @__PURE__ */ t({
368
375
  box: () => K,
369
376
  createRevivableChannel: () => J,
370
- init: () => dt,
371
- isType: () => ft,
377
+ init: () => mt,
378
+ isType: () => ht,
372
379
  revive: () => q,
373
- type: () => nt
374
- }), nt = "messagePort", rt = 2048, it = 128, at = 1024, ot = /* @__PURE__ */ new WeakMap(), U = (e) => {
375
- let t = ot.get(e);
380
+ type: () => at
381
+ }), at = "messagePort", ot = 2048, st = 128, ct = 1024, lt = /* @__PURE__ */ new WeakMap(), U = (e) => {
382
+ let t = lt.get(e);
376
383
  if (!t) throw Error("osra message-port: connection state missing; did init() run?");
377
384
  return t;
378
- }, st = (e, t) => {
385
+ }, ut = (e, t) => {
379
386
  let n = e.ports.get(t);
380
387
  return n || (n = {
381
388
  nextSeq: 0,
@@ -384,14 +391,14 @@ var le = (e) => {
384
391
  }, e.ports.set(t, n), e.pendingPorts++), n;
385
392
  }, W = (e, t) => {
386
393
  let n = e.ports.get(t);
387
- if (n && !n.handler && e.pendingPorts--, e.ports.delete(t), e.tombstones.size >= it) {
394
+ if (n && !n.handler && e.pendingPorts--, e.ports.delete(t), e.tombstones.size >= st) {
388
395
  let t = e.tombstones.values().next().value;
389
396
  t !== void 0 && e.tombstones.delete(t);
390
397
  }
391
398
  e.tombstones.add(t);
392
- }, ct = (e) => {
399
+ }, dt = (e) => {
393
400
  if (e.handler) for (let t = e.buffer.get(e.nextSeq); t !== void 0; t = e.buffer.get(e.nextSeq)) e.buffer.delete(e.nextSeq), e.nextSeq++, e.handler(t);
394
- }, lt = (e, t) => st(U(e), t).outSeq++, ut = (e, t, n) => {
401
+ }, ft = (e, t) => ut(U(e), t).outSeq++, pt = (e, t, n) => {
395
402
  let r = U(e);
396
403
  if (r.tombstones.has(t)) {
397
404
  setTimeout(() => n({
@@ -401,15 +408,15 @@ var le = (e) => {
401
408
  }));
402
409
  return;
403
410
  }
404
- let i = st(r, t);
405
- i.handler || r.pendingPorts--, i.handler = n, ct(i);
406
- }, dt = (e) => {
411
+ let i = ut(r, t);
412
+ i.handler || r.pendingPorts--, i.handler = n, dt(i);
413
+ }, mt = (e) => {
407
414
  let t = {
408
415
  ports: /* @__PURE__ */ new Map(),
409
416
  tombstones: /* @__PURE__ */ new Set(),
410
417
  pendingPorts: 0
411
418
  };
412
- ot.set(e, t), e.eventTarget.addEventListener("message", ({ detail: n }) => {
419
+ lt.set(e, t), e.eventTarget.addEventListener("message", ({ detail: n }) => {
413
420
  if (n.type !== "message" && n.type !== "message-port-close" || t.tombstones.has(n.portId)) return;
414
421
  let r = t.ports.get(n.portId);
415
422
  if (n.seq === void 0) {
@@ -417,11 +424,11 @@ var le = (e) => {
417
424
  return;
418
425
  }
419
426
  if (!r) {
420
- if (t.pendingPorts >= at) return;
421
- r = st(t, n.portId);
427
+ if (t.pendingPorts >= ct) return;
428
+ r = ut(t, n.portId);
422
429
  }
423
430
  if (!(n.seq < r.nextSeq)) {
424
- if (r.buffer.size >= rt && !(n.seq === r.nextSeq && r.handler)) {
431
+ if (r.buffer.size >= ot && !(n.seq === r.nextSeq && r.handler)) {
425
432
  r.buffer.clear(), W(t, n.portId), r.handler?.({
426
433
  type: "message-port-close",
427
434
  remoteUuid: e.remoteUuid,
@@ -429,9 +436,9 @@ var le = (e) => {
429
436
  });
430
437
  return;
431
438
  }
432
- r.buffer.set(n.seq, n), ct(r);
439
+ r.buffer.set(n.seq, n), dt(r);
433
440
  }
434
- }), L(e, () => {
441
+ }), I(e, () => {
435
442
  for (let [n, r] of [...t.ports]) r.handler?.({
436
443
  type: "message-port-close",
437
444
  remoteUuid: e.remoteUuid,
@@ -439,7 +446,7 @@ var le = (e) => {
439
446
  });
440
447
  t.ports.clear(), t.tombstones.clear(), t.pendingPorts = 0;
441
448
  });
442
- }, ft = (e) => e instanceof MessagePort || e instanceof B, G = (e, t) => {
449
+ }, ht = (e) => e instanceof MessagePort || e instanceof B, G = (e, t) => {
443
450
  try {
444
451
  let n = U(e).ports.get(t);
445
452
  e.sendMessage({
@@ -449,18 +456,18 @@ var le = (e) => {
449
456
  seq: n ? n.outSeq++ : 0
450
457
  });
451
458
  } catch {}
452
- }, pt = (e, t, n) => {
459
+ }, gt = (e, t, n) => {
453
460
  n ? e.postMessage(t) : e.postMessage(t, z(t));
454
- }, mt = (e, t, n) => () => {
461
+ }, _t = (e, t, n) => () => {
455
462
  let r = e.deref();
456
463
  r && G(r, n);
457
464
  let i = t.deref();
458
465
  i && W(i, n);
459
466
  }, K = (e, t, n) => {
460
467
  let r = e instanceof B;
461
- if (!r && !A(t.transport)) return {
462
- ...P,
463
- type: nt,
468
+ if (!r && !O(t.transport)) return {
469
+ ...M,
470
+ type: at,
464
471
  port: e,
465
472
  ...n?.autoBox ? { autoBox: !0 } : {}
466
473
  };
@@ -476,7 +483,7 @@ var le = (e) => {
476
483
  d(), a.dispatchEvent(new Event("close")), a.close();
477
484
  return;
478
485
  }
479
- pt(a, $(e.data, t), !1);
486
+ gt(a, $(e.data, t), !1);
480
487
  };
481
488
  function p({ data: e }) {
482
489
  t.sendMessage({
@@ -484,19 +491,19 @@ var le = (e) => {
484
491
  remoteUuid: t.remoteUuid,
485
492
  data: Q(e, t),
486
493
  portId: o,
487
- seq: lt(t, o)
494
+ seq: ft(t, o)
488
495
  });
489
496
  }
490
- let m = H(a, mt(c, l, o));
497
+ let m = H(a, _t(c, l, o));
491
498
  return a.addEventListener("message", p), a.start(), a instanceof B && (a._onClose = () => {
492
499
  u || (G(t, o), d());
493
- }), ut(t, o, f), {
494
- ...P,
495
- type: nt,
500
+ }), pt(t, o, f), {
501
+ ...M,
502
+ type: at,
496
503
  portId: o,
497
504
  synthetic: r
498
505
  };
499
- }, q = (e, t) => "port" in e ? e.autoBox ? ht(e.port, t) : e.port : gt(e.portId, t, e.synthetic), ht = (e, t) => {
506
+ }, q = (e, t) => "port" in e ? e.autoBox ? vt(e.port, t) : e.port : yt(e.portId, t, e.synthetic), vt = (e, t) => {
500
507
  let n = new EventTarget(), r = ({ data: e }) => {
501
508
  n.dispatchEvent(new MessageEvent("message", { data: $(e, t) }));
502
509
  }, i = () => {
@@ -509,7 +516,7 @@ var le = (e) => {
509
516
  e.removeEventListener("message", r), e.removeEventListener("close", i), e.close();
510
517
  }, n;
511
518
  }, J = (e) => {
512
- if (A(e.transport)) {
519
+ if (O(e.transport)) {
513
520
  let { port1: t, port2: n } = new V();
514
521
  return {
515
522
  localPort: t,
@@ -518,10 +525,10 @@ var le = (e) => {
518
525
  }
519
526
  let { port1: t, port2: n } = new MessageChannel();
520
527
  return {
521
- localPort: ht(t, e),
528
+ localPort: vt(t, e),
522
529
  boxedRemote: K(n, e, { autoBox: !0 })
523
530
  };
524
- }, gt = (e, t, n) => {
531
+ }, yt = (e, t, n) => {
525
532
  let r = U(t), { port1: i, port2: a } = n ? new V() : new MessageChannel(), o = new WeakRef(i), s = new WeakRef(a), c = !1, l = () => {
526
533
  if (c) return;
527
534
  c = !0, W(r, e);
@@ -539,28 +546,28 @@ var le = (e) => {
539
546
  return;
540
547
  }
541
548
  let r = s.deref();
542
- r && pt(r, $(e.data, t), n);
549
+ r && gt(r, $(e.data, t), n);
543
550
  }, d = ({ data: n }) => {
544
551
  t.sendMessage({
545
552
  type: "message",
546
553
  remoteUuid: t.remoteUuid,
547
554
  data: Q(n, t),
548
555
  portId: e,
549
- seq: lt(t, e)
556
+ seq: ft(t, e)
550
557
  });
551
558
  }, f = H(i, () => {
552
559
  G(t, e), l();
553
560
  });
554
561
  return i instanceof B && (i._onClose = () => {
555
562
  c || (G(t, e), l());
556
- }), a.addEventListener("message", d), a.start(), ut(t, e, u), i;
557
- }, _t = /* @__PURE__ */ t({
558
- box: () => St,
559
- isType: () => xt,
560
- revive: () => Ct,
561
- type: () => vt
562
- }), vt = "promise", yt = (e) => e instanceof Promise, bt = /* @__PURE__ */ new Set(), xt = (e) => e instanceof Promise, St = (e, t) => {
563
- if (!yt(e)) throw TypeError("Expected Promise");
563
+ }), a.addEventListener("message", d), a.start(), pt(t, e, u), i;
564
+ }, bt = /* @__PURE__ */ t({
565
+ box: () => Tt,
566
+ isType: () => wt,
567
+ revive: () => Et,
568
+ type: () => xt
569
+ }), xt = "promise", St = (e) => e instanceof Promise, Ct = /* @__PURE__ */ new Set(), wt = (e) => e instanceof Promise, Tt = (e, t) => {
570
+ if (!St(e)) throw TypeError("Expected Promise");
564
571
  let { localPort: n, boxedRemote: r } = J(t), i = (e) => {
565
572
  n.postMessage(e), n.close();
566
573
  };
@@ -571,30 +578,36 @@ var le = (e) => {
571
578
  type: "reject",
572
579
  error: e
573
580
  })), {
574
- ...P,
575
- type: vt,
581
+ ...M,
582
+ type: xt,
576
583
  port: r
577
584
  };
578
- }, Ct = (e, t) => {
585
+ }, Et = (e, t) => {
579
586
  let n = q(e.port, t);
580
- bt.add(n);
587
+ Ct.add(n);
581
588
  let r = "portId" in e.port;
582
589
  return new Promise((e, i) => {
583
- let a = () => {
584
- n.close(), bt.delete(n), o();
585
- }, o = r ? L(t, () => {
586
- i(/* @__PURE__ */ Error("osra: connection closed")), a();
587
- }) : () => {};
588
- n.addEventListener("message", ({ data: t }) => {
589
- t.type === "resolve" ? e(t.data) : i(t.error), a();
590
+ let a, o = () => {
591
+ n.close(), Ct.delete(n), a?.();
592
+ };
593
+ if (r && L(t)) {
594
+ i(/* @__PURE__ */ Error("osra: connection closed")), o();
595
+ return;
596
+ }
597
+ a = r ? I(t, () => {
598
+ i(/* @__PURE__ */ Error("osra: connection closed")), o();
599
+ }) : void 0, n.addEventListener("message", ({ data: t }) => {
600
+ t.type === "resolve" ? e(t.data) : i(t.error), o();
590
601
  }, { once: !0 }), n.start();
591
602
  });
592
- }, wt = /* @__PURE__ */ t({
603
+ }, Dt = /* @__PURE__ */ t({
593
604
  box: () => Y,
594
- isType: () => Dt,
605
+ isType: () => jt,
595
606
  revive: () => X,
596
- type: () => Tt
597
- }), Tt = "function", Et = /* @__PURE__ */ new Set(), Dt = (e) => typeof e == "function", Y = (e, t) => {
607
+ type: () => Ot
608
+ }), Ot = "function", kt = /* @__PURE__ */ new Set(), At = (e) => {
609
+ e instanceof ReadableStream ? e.locked || e.cancel(/* @__PURE__ */ Error("osra: connection closed")).catch(() => {}) : typeof WritableStream < "u" && e instanceof WritableStream && (e.locked || e.abort(/* @__PURE__ */ Error("osra: connection closed")).catch(() => {}));
610
+ }, jt = (e) => typeof e == "function", Y = (e, t) => {
598
611
  let { port1: n, port2: r } = new V();
599
612
  return n.addEventListener("message", ({ data: n }) => {
600
613
  let [r, i] = n;
@@ -611,6 +624,13 @@ var le = (e) => {
611
624
  error: e
612
625
  };
613
626
  }
627
+ if (L(t)) {
628
+ n.type === "return" && At(n.value);
629
+ try {
630
+ r.close();
631
+ } catch {}
632
+ return;
633
+ }
614
634
  let a = (() => {
615
635
  try {
616
636
  return Q(n, t);
@@ -628,34 +648,38 @@ var le = (e) => {
628
648
  });
629
649
  })();
630
650
  }), n.start(), {
631
- ...P,
632
- type: Tt,
651
+ ...M,
652
+ type: Ot,
633
653
  port: K(r, t)
634
654
  };
635
655
  }, X = (e, t) => {
636
656
  let n = q(e.port, t);
637
657
  return ((...e) => new Promise((r, i) => {
658
+ if (L(t)) {
659
+ i(/* @__PURE__ */ Error("osra: connection closed"));
660
+ return;
661
+ }
638
662
  let { port1: a, port2: o } = new V();
639
- Et.add(a);
640
- let s = () => {
641
- a.close(), Et.delete(a), c();
642
- }, c = L(t, () => {
643
- i(/* @__PURE__ */ Error("osra: connection closed")), s();
644
- });
645
- a.addEventListener("message", ({ data: e }) => {
663
+ kt.add(a);
664
+ let s, c = () => {
665
+ a.close(), kt.delete(a), s?.();
666
+ };
667
+ s = I(t, () => {
668
+ i(/* @__PURE__ */ Error("osra: connection closed")), c();
669
+ }), a.addEventListener("message", ({ data: e }) => {
646
670
  let t = e;
647
- t.type === "return" ? r(t.value) : i(t.error), s();
671
+ t.type === "return" ? r(t.value) : i(t.error), c();
648
672
  }, { once: !0 }), a.start();
649
673
  let l = Q([o, e], t);
650
674
  n.postMessage(l, z(l));
651
675
  }));
652
- }, Ot = /* @__PURE__ */ t({
676
+ }, Mt = /* @__PURE__ */ t({
653
677
  MAX_CREDIT_WINDOW: () => 64,
654
- box: () => Pt,
655
- isType: () => At,
656
- revive: () => Rt,
657
- type: () => kt
658
- }), kt = "readableStream", At = (e) => e instanceof ReadableStream, jt = 2, Mt = 8, Nt = 4 * 1024 * 1024, Pt = (e, t) => {
678
+ box: () => Rt,
679
+ isType: () => Pt,
680
+ revive: () => Ht,
681
+ type: () => Nt
682
+ }), Nt = "readableStream", Pt = (e) => e instanceof ReadableStream, Ft = 2, It = 8, Lt = 4 * 1024 * 1024, Rt = (e, t) => {
659
683
  let { localPort: n, boxedRemote: r } = J(t), i = e.getReader(), a = 0, o = !1, s = !1, c = (e) => {
660
684
  s = !0;
661
685
  try {
@@ -702,13 +726,13 @@ var le = (e) => {
702
726
  }), n.addEventListener("close", () => {
703
727
  s || (s = !0, i.cancel(/* @__PURE__ */ Error("osra: connection closed")).catch(() => {}));
704
728
  }, { once: !0 }), n.start(), {
705
- ...P,
706
- type: kt,
729
+ ...M,
730
+ type: Nt,
707
731
  credit: !0,
708
732
  port: r
709
733
  };
710
- }, Ft = (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, It = (e) => {
711
- let t = !1, n = 0, r, i = [], a = !1, o = !1, s, c, l = () => r === void 0 ? Mt : Math.max(jt, Math.min(64, Math.floor(Nt / r))), u = () => {
734
+ }, zt = (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, Bt = (e) => {
735
+ let t = !1, n = 0, r, i = [], a = !1, o = !1, s, c, l = () => r === void 0 ? It : Math.max(Ft, Math.min(64, Math.floor(Lt / r))), u = () => {
712
736
  let t = l(), r = n + i.length;
713
737
  if (r > t / 2) return;
714
738
  let a = t - r;
@@ -734,7 +758,7 @@ var le = (e) => {
734
758
  return;
735
759
  }
736
760
  n--;
737
- let a = Ft(o.value);
761
+ let a = zt(o.value);
738
762
  if (a !== void 0 && (r = r === void 0 ? a : r * .875 + a * .125), c) {
739
763
  let e = c;
740
764
  c = void 0, e.controller.enqueue(o.value), e.resolve();
@@ -780,7 +804,7 @@ var le = (e) => {
780
804
  }), queueMicrotask(() => e.close());
781
805
  }
782
806
  });
783
- }, Lt = (e) => {
807
+ }, Vt = (e) => {
784
808
  let t = !1;
785
809
  return new ReadableStream({
786
810
  start: (n) => {
@@ -809,15 +833,15 @@ var le = (e) => {
809
833
  }), queueMicrotask(() => e.close());
810
834
  }
811
835
  });
812
- }, Rt = (e, t) => {
836
+ }, Ht = (e, t) => {
813
837
  let n = q(e.port, t);
814
- return n.start(), e.credit ? It(n) : Lt(n);
815
- }, zt = /* @__PURE__ */ t({
816
- box: () => Ht,
817
- isType: () => Vt,
818
- revive: () => Ut,
819
- type: () => Bt
820
- }), Bt = "writableStream", Vt = (e) => e instanceof WritableStream, Ht = (e, t) => {
838
+ return n.start(), e.credit ? Bt(n) : Vt(n);
839
+ }, Ut = /* @__PURE__ */ t({
840
+ box: () => Kt,
841
+ isType: () => Gt,
842
+ revive: () => qt,
843
+ type: () => Wt
844
+ }), Wt = "writableStream", Gt = (e) => e instanceof WritableStream, Kt = (e, t) => {
821
845
  let { localPort: n, boxedRemote: r } = J(t), i = e.getWriter(), a = !1, o = (e, t) => e.then(() => n.postMessage({ type: "ack" })).catch((e) => n.postMessage({
822
846
  type: "err",
823
847
  error: e?.message ?? String(e)
@@ -829,11 +853,11 @@ var le = (e) => {
829
853
  }), n.addEventListener("close", () => {
830
854
  a || (a = !0, i.abort(/* @__PURE__ */ Error("osra: connection closed")).catch(() => {}));
831
855
  }, { once: !0 }), n.start(), {
832
- ...P,
833
- type: Bt,
856
+ ...M,
857
+ type: Wt,
834
858
  port: r
835
859
  };
836
- }, Ut = (e, t) => {
860
+ }, qt = (e, t) => {
837
861
  let n = q(e.port, t);
838
862
  n.start();
839
863
  let r = /* @__PURE__ */ new Set(), i = !1;
@@ -869,15 +893,15 @@ var le = (e) => {
869
893
  reason: e
870
894
  })
871
895
  });
872
- }, Wt = /* @__PURE__ */ t({
873
- box: () => Jt,
874
- isType: () => Kt,
875
- revive: () => Yt,
876
- type: () => Gt
877
- }), Gt = "abortSignal", Kt = (e) => e instanceof AbortSignal, qt = /* @__PURE__ */ new WeakMap(), Jt = (e, t) => {
896
+ }, Jt = /* @__PURE__ */ t({
897
+ box: () => Qt,
898
+ isType: () => Xt,
899
+ revive: () => $t,
900
+ type: () => Yt
901
+ }), Yt = "abortSignal", Xt = (e) => e instanceof AbortSignal, Zt = /* @__PURE__ */ new WeakMap(), Qt = (e, t) => {
878
902
  if (e.aborted) return {
879
- ...P,
880
- type: Gt,
903
+ ...M,
904
+ type: Yt,
881
905
  aborted: !0,
882
906
  reason: Q(e.reason, t)
883
907
  };
@@ -886,40 +910,40 @@ var le = (e) => {
886
910
  type: "abort",
887
911
  reason: e.reason
888
912
  }), n.close(), a();
889
- }, a = L(t, () => {
913
+ }, a = I(t, () => {
890
914
  e.removeEventListener("abort", i), n.close();
891
915
  });
892
916
  return e.addEventListener("abort", i, { once: !0 }), {
893
- ...P,
894
- type: Gt,
917
+ ...M,
918
+ type: Yt,
895
919
  aborted: !1,
896
920
  reason: void 0,
897
921
  port: r
898
922
  };
899
- }, Yt = (e, t) => {
923
+ }, $t = (e, t) => {
900
924
  let n = new AbortController();
901
925
  if (e.aborted || e.port === void 0) return n.abort($(e.reason, t)), n.signal;
902
926
  let r = q(e.port, t);
903
- return qt.set(n.signal, r), r.start(), r.addEventListener("message", ({ data: e }) => {
904
- e.type === "abort" && (n.abort($(e.reason, t)), qt.delete(n.signal), r.close());
927
+ return Zt.set(n.signal, r), r.start(), r.addEventListener("message", ({ data: e }) => {
928
+ e.type === "abort" && (n.abort($(e.reason, t)), Zt.delete(n.signal), r.close());
905
929
  }), n.signal;
906
- }, Xt = /* @__PURE__ */ t({
907
- box: () => $t,
908
- isType: () => Qt,
909
- revive: () => en,
910
- type: () => Zt
911
- }), Zt = "response", Qt = (e) => e instanceof Response, $t = (e, t) => ({
912
- ...P,
913
- type: Zt,
930
+ }, en = /* @__PURE__ */ t({
931
+ box: () => rn,
932
+ isType: () => nn,
933
+ revive: () => an,
934
+ type: () => tn
935
+ }), tn = "response", nn = (e) => e instanceof Response, rn = (e, t) => ({
936
+ ...M,
937
+ type: tn,
914
938
  status: e.status,
915
939
  statusText: e.statusText,
916
- headers: Oe(e.headers, t),
917
- body: e.body ? Pt(e.body, t) : null,
940
+ headers: Me(e.headers, t),
941
+ body: e.body ? Rt(e.body, t) : null,
918
942
  url: e.url,
919
943
  redirected: e.redirected
920
- }), en = (e, t) => {
944
+ }), an = (e, t) => {
921
945
  if (e.status === 0) return Response.error();
922
- let n = ke(e.headers, t), r = e.body ? Rt(e.body, t) : null, i = e.status === 101 || e.status === 204 || e.status === 205 || e.status === 304;
946
+ let n = Ne(e.headers, t), r = e.body ? Ht(e.body, t) : null, i = e.status === 101 || e.status === 204 || e.status === 205 || e.status === 304;
923
947
  r && i && r.cancel().catch(() => {});
924
948
  let a = new Response(i ? null : r, {
925
949
  status: e.status,
@@ -933,18 +957,18 @@ var le = (e) => {
933
957
  value: !0,
934
958
  configurable: !0
935
959
  }), a;
936
- }, tn = /* @__PURE__ */ t({
937
- box: () => an,
938
- isType: () => rn,
939
- revive: () => on,
940
- type: () => nn
941
- }), nn = "request", rn = (e) => e instanceof Request, an = (e, t) => ({
942
- ...P,
943
- type: nn,
960
+ }, on = /* @__PURE__ */ t({
961
+ box: () => ln,
962
+ isType: () => cn,
963
+ revive: () => un,
964
+ type: () => sn
965
+ }), sn = "request", cn = (e) => e instanceof Request, ln = (e, t) => ({
966
+ ...M,
967
+ type: sn,
944
968
  method: e.method,
945
969
  url: e.url,
946
- headers: Oe(e.headers, t),
947
- body: e.body ? Pt(e.body, t) : null,
970
+ headers: Me(e.headers, t),
971
+ body: e.body ? Rt(e.body, t) : null,
948
972
  credentials: e.credentials,
949
973
  cache: e.cache,
950
974
  mode: e.mode,
@@ -953,9 +977,9 @@ var le = (e) => {
953
977
  referrerPolicy: e.referrerPolicy,
954
978
  integrity: e.integrity,
955
979
  keepalive: e.keepalive,
956
- signal: Jt(e.signal, t)
957
- }), on = (e, t) => {
958
- let n = ke(e.headers, t), r = {
980
+ signal: Qt(e.signal, t)
981
+ }), un = (e, t) => {
982
+ let n = Ne(e.headers, t), r = {
959
983
  method: e.method,
960
984
  headers: n,
961
985
  credentials: e.credentials,
@@ -965,31 +989,31 @@ var le = (e) => {
965
989
  referrerPolicy: e.referrerPolicy,
966
990
  integrity: e.integrity,
967
991
  keepalive: e.keepalive,
968
- signal: Yt(e.signal, t)
992
+ signal: $t(e.signal, t)
969
993
  };
970
- return e.mode !== "navigate" && (r.mode = e.mode), e.body && (r.body = Rt(e.body, t), r.duplex = "half"), new Request(e.url, r);
971
- }, sn = /* @__PURE__ */ t({
972
- box: () => bn,
973
- boxByReference: () => xn,
974
- identity: () => mn,
975
- isType: () => vn,
976
- revive: () => Sn,
994
+ return e.mode !== "navigate" && (r.mode = e.mode), e.body && (r.body = Ht(e.body, t), r.duplex = "half"), new Request(e.url, r);
995
+ }, dn = /* @__PURE__ */ t({
996
+ box: () => wn,
997
+ boxByReference: () => Tn,
998
+ identity: () => vn,
999
+ isType: () => Sn,
1000
+ revive: () => En,
977
1001
  type: () => Z
978
- }), Z = "identity", cn = Symbol.for("osra.identity"), ln = (e) => e !== null && (typeof e == "object" || typeof e == "function"), un = (e) => {
1002
+ }), Z = "identity", fn = Symbol.for("osra.identity"), pn = (e) => e !== null && (typeof e == "object" || typeof e == "function"), mn = (e) => {
979
1003
  if (e === null) return !1;
980
1004
  let t = typeof e;
981
1005
  return t === "object" || t === "function" ? !0 : t === "symbol" ? Symbol.keyFor(e) === void 0 : !1;
982
- }, dn = (e) => ln(e) && cn in e && e[cn] === !0, fn = /* @__PURE__ */ new WeakMap(), pn = (e) => {
983
- if (dn(e)) return e;
984
- let t = fn.get(e);
1006
+ }, hn = (e) => pn(e) && fn in e && e[fn] === !0, gn = /* @__PURE__ */ new WeakMap(), _n = (e) => {
1007
+ if (hn(e)) return e;
1008
+ let t = gn.get(e);
985
1009
  if (t) return t;
986
1010
  let n = {
987
- [cn]: !0,
1011
+ [fn]: !0,
988
1012
  value: e
989
1013
  };
990
- return fn.set(e, n), n;
991
- }, mn = (e) => ln(e) ? pn(e) : e, hn = /* @__PURE__ */ new WeakMap(), gn = (e) => {
992
- let t = hn.get(e);
1014
+ return gn.set(e, n), n;
1015
+ }, vn = (e) => pn(e) ? _n(e) : e, yn = /* @__PURE__ */ new WeakMap(), bn = (e) => {
1016
+ let t = yn.get(e);
993
1017
  if (t) return t;
994
1018
  let n = /* @__PURE__ */ new WeakMap(), r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new WeakMap(), o = {
995
1019
  sendIds: n,
@@ -1008,16 +1032,16 @@ var le = (e) => {
1008
1032
  revivedToId: a,
1009
1033
  listenerInstalled: !1
1010
1034
  };
1011
- return hn.set(e, o), _n(e, o), L(e, () => {
1035
+ return yn.set(e, o), xn(e, o), I(e, () => {
1012
1036
  o.receiveCache.clear(), o.idToSent.clear();
1013
1037
  }), o;
1014
- }, _n = (e, t) => {
1038
+ }, xn = (e, t) => {
1015
1039
  t.listenerInstalled || (t.listenerInstalled = !0, e.eventTarget.addEventListener("message", ({ detail: e }) => {
1016
1040
  if (e?.type !== "identity-dispose") return;
1017
1041
  let n = t.receiveCache.get(e.id);
1018
- t.receiveCache.delete(e.id), n !== void 0 && un(n) && t.revivedToId.delete(n);
1042
+ t.receiveCache.delete(e.id), n !== void 0 && mn(n) && t.revivedToId.delete(n);
1019
1043
  }));
1020
- }, vn = (e) => dn(e), yn = (e, t) => {
1044
+ }, Sn = (e) => hn(e), Cn = (e, t) => {
1021
1045
  let n = t.sendIds.get(e);
1022
1046
  if (n !== void 0) return {
1023
1047
  id: n,
@@ -1033,86 +1057,86 @@ var le = (e) => {
1033
1057
  id: i,
1034
1058
  isExisting: !1
1035
1059
  };
1036
- }, bn = (e, t) => {
1037
- let n = gn(t), r = e.value, i = Q(r, t);
1038
- if (!un(r)) return {
1039
- ...P,
1060
+ }, wn = (e, t) => {
1061
+ let n = bn(t), r = e.value, i = Q(r, t);
1062
+ if (!mn(r)) return {
1063
+ ...M,
1040
1064
  type: Z,
1041
1065
  id: globalThis.crypto.randomUUID(),
1042
1066
  inner: i
1043
1067
  };
1044
- let { id: a, isExisting: o } = yn(r, n);
1068
+ let { id: a, isExisting: o } = Cn(r, n);
1045
1069
  return o ? {
1046
- ...P,
1070
+ ...M,
1047
1071
  type: Z,
1048
1072
  id: a
1049
1073
  } : {
1050
- ...P,
1074
+ ...M,
1051
1075
  type: Z,
1052
1076
  id: a,
1053
1077
  inner: i
1054
1078
  };
1055
- }, xn = (e, t, n) => {
1056
- let { id: r, isExisting: i } = yn(e, gn(n));
1079
+ }, Tn = (e, t, n) => {
1080
+ let { id: r, isExisting: i } = Cn(e, bn(n));
1057
1081
  return i ? {
1058
- ...P,
1082
+ ...M,
1059
1083
  type: Z,
1060
1084
  id: r
1061
1085
  } : {
1062
- ...P,
1086
+ ...M,
1063
1087
  type: Z,
1064
1088
  id: r,
1065
1089
  inner: t
1066
1090
  };
1067
- }, Sn = (e, t) => {
1068
- let n = gn(t), r = n.receiveCache.get(e.id);
1091
+ }, En = (e, t) => {
1092
+ let n = bn(t), r = n.receiveCache.get(e.id);
1069
1093
  if (r !== void 0) return r;
1070
1094
  let i = n.idToSent.get(e.id)?.deref();
1071
1095
  if (i !== void 0) return i;
1072
1096
  if (!("inner" in e) || e.inner === void 0) throw Error(`osra identity: received id=${e.id} with no inner payload and no cached value`);
1073
1097
  let a = $(e.inner, t);
1074
- return n.receiveCache.set(e.id, a), un(a) && n.revivedToId.set(a, e.id), a;
1075
- }, Cn = /* @__PURE__ */ t({
1076
- box: () => Tn,
1077
- isType: () => wn,
1078
- revive: () => En,
1079
- type: () => "map"
1080
- }), wn = (e) => e instanceof Map, Tn = (e, t) => ({
1081
- ...P,
1082
- type: "map",
1083
- entries: Array.from(e, ([e, n]) => [Q(e, t), Q(n, t)])
1084
- }), En = (e, t) => new Map(e.entries.map(([e, n]) => [$(e, t), $(n, t)])), Dn = /* @__PURE__ */ t({
1098
+ return n.receiveCache.set(e.id, a), mn(a) && n.revivedToId.set(a, e.id), a;
1099
+ }, Dn = /* @__PURE__ */ t({
1085
1100
  box: () => kn,
1086
1101
  isType: () => On,
1087
1102
  revive: () => An,
1103
+ type: () => "map"
1104
+ }), On = (e) => e instanceof Map, kn = (e, t) => ({
1105
+ ...M,
1106
+ type: "map",
1107
+ entries: Array.from(e, ([e, n]) => [Q(e, t), Q(n, t)])
1108
+ }), An = (e, t) => new Map(e.entries.map(([e, n]) => [$(e, t), $(n, t)])), jn = /* @__PURE__ */ t({
1109
+ box: () => Nn,
1110
+ isType: () => Mn,
1111
+ revive: () => Pn,
1088
1112
  type: () => "set"
1089
- }), On = (e) => e instanceof Set, kn = (e, t) => ({
1090
- ...P,
1113
+ }), Mn = (e) => e instanceof Set, Nn = (e, t) => ({
1114
+ ...M,
1091
1115
  type: "set",
1092
1116
  values: Array.from(e, (e) => Q(e, t))
1093
- }), An = (e, t) => new Set(e.values.map((e) => $(e, t))), jn = /* @__PURE__ */ t({
1094
- box: () => Pn,
1095
- isType: () => Nn,
1096
- revive: () => Fn,
1097
- type: () => Mn
1098
- }), Mn = "bigint", Nn = (e) => typeof e == "bigint", Pn = (e, t) => ({
1099
- ...P,
1100
- type: Mn,
1117
+ }), Pn = (e, t) => new Set(e.values.map((e) => $(e, t))), Fn = /* @__PURE__ */ t({
1118
+ box: () => Rn,
1119
+ isType: () => Ln,
1120
+ revive: () => zn,
1121
+ type: () => In
1122
+ }), In = "bigint", Ln = (e) => typeof e == "bigint", Rn = (e, t) => ({
1123
+ ...M,
1124
+ type: In,
1101
1125
  value: e.toString()
1102
- }), Fn = (e, t) => BigInt(e.value), In = /* @__PURE__ */ t({
1103
- box: () => zn,
1104
- isType: () => Rn,
1105
- revive: () => Bn,
1106
- type: () => Ln
1107
- }), Ln = "event", Rn = (e) => e instanceof Event, zn = (e, t) => ({
1108
- ...P,
1109
- type: Ln,
1126
+ }), zn = (e, t) => BigInt(e.value), Bn = /* @__PURE__ */ t({
1127
+ box: () => Un,
1128
+ isType: () => Hn,
1129
+ revive: () => Wn,
1130
+ type: () => Vn
1131
+ }), Vn = "event", Hn = (e) => e instanceof Event, Un = (e, t) => ({
1132
+ ...M,
1133
+ type: Vn,
1110
1134
  eventType: e.type,
1111
1135
  bubbles: e.bubbles,
1112
1136
  cancelable: e.cancelable,
1113
1137
  composed: e.composed,
1114
1138
  ...e instanceof CustomEvent ? { detail: Q(e.detail, t) } : {}
1115
- }), Bn = (e, t) => {
1139
+ }), Wn = (e, t) => {
1116
1140
  let n = {
1117
1141
  bubbles: e.bubbles,
1118
1142
  cancelable: e.cancelable,
@@ -1122,16 +1146,16 @@ var le = (e) => {
1122
1146
  ...n,
1123
1147
  detail: $(e.detail, t)
1124
1148
  }) : new Event(e.eventType, n);
1125
- }, Vn = /* @__PURE__ */ t({
1126
- box: () => Wn,
1127
- isType: () => Un,
1128
- revive: () => Jn,
1129
- type: () => Hn
1130
- }), Hn = "eventTarget", Un = (e) => e instanceof EventTarget, Wn = (e, t) => {
1149
+ }, Gn = /* @__PURE__ */ t({
1150
+ box: () => Jn,
1151
+ isType: () => qn,
1152
+ revive: () => Qn,
1153
+ type: () => Kn
1154
+ }), Kn = "eventTarget", qn = (e) => e instanceof EventTarget, Jn = (e, t) => {
1131
1155
  let n = [], r = (e) => typeof e == "boolean" ? e : !!e?.capture;
1132
1156
  return {
1133
- ...P,
1134
- type: Hn,
1157
+ ...M,
1158
+ type: Kn,
1135
1159
  addListener: Y((t, i, a) => {
1136
1160
  n.push({
1137
1161
  eventType: t,
@@ -1147,59 +1171,59 @@ var le = (e) => {
1147
1171
  for (let { eventType: t, listener: r, capture: i } of n.splice(0)) e.removeEventListener(t, r, { capture: i });
1148
1172
  }, t)
1149
1173
  };
1150
- }, Gn = /* @__PURE__ */ new WeakMap(), Kn = (e) => {
1174
+ }, Yn = /* @__PURE__ */ new WeakMap(), Xn = (e) => {
1151
1175
  if (typeof e == "function") return e;
1152
- let t = Gn.get(e);
1153
- return t || Gn.set(e, t = (t) => e.handleEvent(t)), t;
1154
- }, qn = (e, t, n, r) => e.find((e) => e.eventType === t && e.listener === n && e.capture === r), Jn = (e, t) => {
1176
+ let t = Yn.get(e);
1177
+ return t || Yn.set(e, t = (t) => e.handleEvent(t)), t;
1178
+ }, Zn = (e, t, n, r) => e.find((e) => e.eventType === t && e.listener === n && e.capture === r), Qn = (e, t) => {
1155
1179
  let n = X(e.addListener, t), r = X(e.removeListener, t), i = X(e.removeAllListeners, t), a = new EventTarget(), o = [], s = (e) => {
1156
1180
  let t = o.indexOf(e);
1157
1181
  t !== -1 && o.splice(t, 1);
1158
1182
  };
1159
1183
  return Object.defineProperty(a, "addEventListener", { value: (e, t, r) => {
1160
1184
  if (t === null) return;
1161
- let i = Kn(t), a = typeof r == "boolean" ? r : !!r?.capture;
1162
- if (qn(o, e, i, a)) return;
1185
+ let i = Xn(t), a = typeof r == "boolean" ? r : !!r?.capture;
1186
+ if (Zn(o, e, i, a)) return;
1163
1187
  let c = typeof r == "object" && r?.once ? (e) => (s(l), i(e)) : i, l = {
1164
1188
  eventType: e,
1165
1189
  listener: i,
1166
1190
  capture: a,
1167
1191
  wire: c
1168
1192
  };
1169
- o.push(l), (typeof r == "object" ? r?.signal : void 0)?.addEventListener("abort", () => s(l), { once: !0 }), n(e, mn(c), r).catch(() => {});
1193
+ o.push(l), (typeof r == "object" ? r?.signal : void 0)?.addEventListener("abort", () => s(l), { once: !0 }), n(e, vn(c), r).catch(() => {});
1170
1194
  } }), Object.defineProperty(a, "removeEventListener", { value: (e, t, n) => {
1171
1195
  if (t === null) return;
1172
- let i = Kn(t), a = typeof n == "boolean" ? n : !!n?.capture, c = qn(o, e, i, a);
1173
- c && (s(c), r(e, mn(c.wire), { capture: a }).catch(() => {}));
1196
+ let i = Xn(t), a = typeof n == "boolean" ? n : !!n?.capture, c = Zn(o, e, i, a);
1197
+ c && (s(c), r(e, vn(c.wire), { capture: a }).catch(() => {}));
1174
1198
  } }), H(a, () => {
1175
1199
  i().catch(() => {});
1176
1200
  }), a;
1177
- }, Yn = /* @__PURE__ */ t({
1178
- box: () => Qn,
1179
- isType: () => Zn,
1180
- revive: () => $n,
1181
- type: () => Xn
1182
- }), Xn = "symbol", Zn = (e) => typeof e == "symbol", Qn = (e, t) => {
1201
+ }, $n = /* @__PURE__ */ t({
1202
+ box: () => nr,
1203
+ isType: () => tr,
1204
+ revive: () => rr,
1205
+ type: () => er
1206
+ }), er = "symbol", tr = (e) => typeof e == "symbol", nr = (e, t) => {
1183
1207
  let n = Symbol.keyFor(e);
1184
- return n === void 0 ? xn(e, {
1185
- ...P,
1186
- type: Xn,
1208
+ return n === void 0 ? Tn(e, {
1209
+ ...M,
1210
+ type: er,
1187
1211
  description: e.description
1188
1212
  }, t) : {
1189
- ...P,
1190
- type: Xn,
1213
+ ...M,
1214
+ type: er,
1191
1215
  registryKey: n
1192
1216
  };
1193
- }, $n = (e, t) => "registryKey" in e ? Symbol.for(e.registryKey) : Symbol(e.description), er = /* @__PURE__ */ t({
1194
- box: () => rr,
1195
- isType: () => nr,
1196
- revive: () => ir,
1197
- type: () => tr
1198
- }), tr = "asyncIterator", nr = (e) => !e || typeof e != "object" || typeof ReadableStream < "u" && e instanceof ReadableStream ? !1 : typeof e[Symbol.asyncIterator] == "function", rr = (e, t) => {
1217
+ }, rr = (e, t) => "registryKey" in e ? Symbol.for(e.registryKey) : Symbol(e.description), ir = /* @__PURE__ */ t({
1218
+ box: () => sr,
1219
+ isType: () => or,
1220
+ revive: () => cr,
1221
+ type: () => ar
1222
+ }), ar = "asyncIterator", or = (e) => !e || typeof e != "object" || typeof ReadableStream < "u" && e instanceof ReadableStream ? !1 : typeof e[Symbol.asyncIterator] == "function", sr = (e, t) => {
1199
1223
  let n = e[Symbol.asyncIterator]();
1200
1224
  return {
1201
- ...P,
1202
- type: tr,
1225
+ ...M,
1226
+ type: ar,
1203
1227
  next: Y(((e) => n.next(e)), t),
1204
1228
  return: Y(((e) => n.return?.(e) ?? Promise.resolve({
1205
1229
  done: !0,
@@ -1207,7 +1231,7 @@ var le = (e) => {
1207
1231
  })), t),
1208
1232
  throw: Y(((e) => n.throw?.(e) ?? Promise.reject(e)), t)
1209
1233
  };
1210
- }, ir = (e, t) => {
1234
+ }, cr = (e, t) => {
1211
1235
  let n = X(e.next, t), r = X(e.return, t), i = X(e.throw, t), a = {
1212
1236
  next: (...e) => n(...e),
1213
1237
  return: (e) => r(e),
@@ -1215,7 +1239,7 @@ var le = (e) => {
1215
1239
  [Symbol.asyncIterator]: () => a
1216
1240
  };
1217
1241
  return a;
1218
- }, ar = [
1242
+ }, lr = [
1219
1243
  globalThis.File,
1220
1244
  globalThis.FileList,
1221
1245
  globalThis.RegExp,
@@ -1235,7 +1259,7 @@ var le = (e) => {
1235
1259
  globalThis.FileSystemFileHandle,
1236
1260
  globalThis.FileSystemDirectoryHandle,
1237
1261
  globalThis.RTCCertificate
1238
- ], or = [
1262
+ ], ur = [
1239
1263
  globalThis.CropTarget,
1240
1264
  globalThis.EncodedAudioChunk,
1241
1265
  globalThis.EncodedVideoChunk,
@@ -1246,72 +1270,72 @@ var le = (e) => {
1246
1270
  globalThis.RTCEncodedAudioFrame,
1247
1271
  globalThis.RTCEncodedVideoFrame,
1248
1272
  globalThis.WebTransportError
1249
- ], sr = {
1273
+ ], dr = {
1250
1274
  type: "clonable",
1251
1275
  capableOnly: !0,
1252
- isType: (e) => w(e, ar) || w(e, or),
1276
+ isType: (e) => C(e, lr) || C(e, ur),
1253
1277
  box: (e, t) => e,
1254
1278
  revive: (e, t) => e
1255
- }, cr = [
1279
+ }, fr = [
1256
1280
  globalThis.ImageBitmap,
1257
1281
  globalThis.OffscreenCanvas,
1258
1282
  globalThis.WritableStream,
1259
1283
  globalThis.TransformStream,
1260
1284
  globalThis.MediaStreamTrack,
1261
1285
  globalThis.RTCDataChannel
1262
- ], lr = [
1286
+ ], pr = [
1263
1287
  globalThis.AudioData,
1264
1288
  globalThis.VideoFrame,
1265
1289
  globalThis.MediaSourceHandle,
1266
1290
  globalThis.MIDIAccess,
1267
1291
  globalThis.WebTransportReceiveStream,
1268
1292
  globalThis.WebTransportSendStream
1269
- ], ur = {
1293
+ ], mr = {
1270
1294
  type: "transferable",
1271
1295
  capableOnly: !0,
1272
- isType: (e) => w(e, cr) || w(e, lr),
1296
+ isType: (e) => C(e, fr) || C(e, pr),
1273
1297
  box: (e, t) => e,
1274
1298
  revive: (e, t) => e
1275
- }, dr = {
1299
+ }, hr = {
1276
1300
  type: "blob",
1277
1301
  capableOnly: !0,
1278
1302
  isType: (e) => typeof Blob < "u" && e instanceof Blob,
1279
1303
  box: (e, t) => {
1280
- if (A(t.transport)) throw TypeError("osra: Blob is only supported on structured-clone transports, send an ArrayBuffer or Uint8Array instead");
1304
+ if (O(t.transport)) throw TypeError("osra: Blob is only supported on structured-clone transports, send an ArrayBuffer or Uint8Array instead");
1281
1305
  return e;
1282
1306
  },
1283
1307
  revive: (e, t) => e
1284
- }, fr = (e) => {
1308
+ }, gr = (e) => {
1285
1309
  if (typeof e != "object" || !e) return !1;
1286
1310
  let t = Object.getPrototypeOf(e);
1287
1311
  return t === Object.prototype || t === null;
1288
- }, pr = [
1289
- He,
1290
- sn,
1291
- he,
1292
- be,
1293
- Te,
1294
- Ae,
1295
- Ie,
1296
- _t,
1297
- wt,
1298
- tt,
1299
- Ot,
1300
- zt,
1301
- Wt,
1302
- Xt,
1303
- tn,
1304
- Cn,
1312
+ }, _r = [
1313
+ Ge,
1314
+ dn,
1315
+ ye,
1316
+ we,
1317
+ ke,
1318
+ Pe,
1319
+ Be,
1320
+ bt,
1321
+ Dt,
1322
+ it,
1323
+ Mt,
1324
+ Ut,
1325
+ Jt,
1326
+ en,
1327
+ on,
1305
1328
  Dn,
1306
1329
  jn,
1307
- Yn,
1308
- In,
1309
- er,
1330
+ Fn,
1331
+ $n,
1332
+ Bn,
1333
+ ir,
1310
1334
  {
1311
1335
  type: "nonFiniteNumber",
1312
1336
  isType: (e) => typeof e == "number" && !Number.isFinite(e),
1313
- box: (e, t) => A(t.transport) ? {
1314
- ...P,
1337
+ box: (e, t) => O(t.transport) ? {
1338
+ ...M,
1315
1339
  type: "nonFiniteNumber",
1316
1340
  value: String(e)
1317
1341
  } : e,
@@ -1320,20 +1344,20 @@ var le = (e) => {
1320
1344
  {
1321
1345
  type: "undefined",
1322
1346
  isType: (e) => e === void 0,
1323
- box: (e, t) => A(t.transport) ? {
1324
- ...P,
1347
+ box: (e, t) => O(t.transport) ? {
1348
+ ...M,
1325
1349
  type: "undefined"
1326
1350
  } : e,
1327
1351
  revive: (e, t) => void 0
1328
1352
  },
1329
- sr,
1330
- ur,
1331
1353
  dr,
1332
- Vn,
1354
+ mr,
1355
+ hr,
1356
+ Gn,
1333
1357
  {
1334
1358
  type: "unclonable",
1335
1359
  isType: (e) => {
1336
- if (typeof e != "object" || !e || Array.isArray(e) || fr(e)) return !1;
1360
+ if (typeof e != "object" || !e || Array.isArray(e) || gr(e)) return !1;
1337
1361
  try {
1338
1362
  return structuredClone(e), !1;
1339
1363
  } catch {
@@ -1341,44 +1365,44 @@ var le = (e) => {
1341
1365
  }
1342
1366
  },
1343
1367
  box: (e, t) => ({
1344
- ...P,
1368
+ ...M,
1345
1369
  type: "unclonable"
1346
1370
  }),
1347
1371
  revive: (e, t) => ({})
1348
1372
  }
1349
- ], mr = (e, t) => t.find((t) => t.isType(e)), hr = (e, t) => t.find((t) => t.type === e.type), gr = (e) => !!e && typeof e == "object" && Object.getPrototypeOf(e) === Object.prototype, _r = (e, t) => Array.isArray(e) ? e.map((e) => t(e)) : gr(e) ? Object.fromEntries(Object.entries(e).map(([e, n]) => [e, t(n)])) : e, vr = /* @__PURE__ */ new WeakSet(), yr = /* @__PURE__ */ new WeakSet(), br = (e) => e !== null && (typeof e == "object" || typeof e == "function"), Q = (e, t) => {
1350
- if (F(e)) return e;
1351
- let n = br(e);
1373
+ ], vr = (e, t) => t.find((t) => t.isType(e)), yr = (e, t) => t.find((t) => t.type === e.type), br = (e) => !!e && typeof e == "object" && Object.getPrototypeOf(e) === Object.prototype, xr = (e, t) => Array.isArray(e) ? e.map((e) => t(e)) : br(e) ? Object.fromEntries(Object.entries(e).map(([e, n]) => [e, t(n)])) : e, Sr = /* @__PURE__ */ new WeakSet(), Cr = /* @__PURE__ */ new WeakSet(), wr = (e) => e !== null && (typeof e == "object" || typeof e == "function"), Q = (e, t) => {
1374
+ if (N(e)) return e;
1375
+ let n = wr(e);
1352
1376
  if (n) {
1353
- if (vr.has(e)) throw TypeError("osra: cannot serialize a circular structure - break the cycle or send the container by reference");
1354
- vr.add(e);
1377
+ if (Sr.has(e)) throw TypeError("osra: cannot serialize a circular structure - break the cycle or send the container by reference");
1378
+ Sr.add(e);
1355
1379
  }
1356
1380
  try {
1357
- let n = mr(e, t.revivableModules);
1358
- return n ? n.box(e, t) : _r(e, (e) => Q(e, t));
1381
+ let n = vr(e, t.revivableModules);
1382
+ return n ? n.box(e, t) : xr(e, (e) => Q(e, t));
1359
1383
  } finally {
1360
- n && vr.delete(e);
1384
+ n && Sr.delete(e);
1361
1385
  }
1362
1386
  }, $ = (e, t) => {
1363
- let n = br(e);
1387
+ let n = wr(e);
1364
1388
  if (n) {
1365
- if (yr.has(e)) throw TypeError("osra: cannot revive a circular structure");
1366
- yr.add(e);
1389
+ if (Cr.has(e)) throw TypeError("osra: cannot revive a circular structure");
1390
+ Cr.add(e);
1367
1391
  }
1368
1392
  try {
1369
- if (F(e)) {
1370
- let n = hr(e, t.revivableModules);
1393
+ if (N(e)) {
1394
+ let n = yr(e, t.revivableModules);
1371
1395
  if (n) return n.revive(e, t);
1372
1396
  }
1373
- return _r(e, (e) => $(e, t));
1397
+ return xr(e, (e) => $(e, t));
1374
1398
  } finally {
1375
- n && yr.delete(e);
1399
+ n && Cr.delete(e);
1376
1400
  }
1377
- }, xr = /* @__PURE__ */ t({
1378
- init: () => wr,
1379
- startBidirectionalConnection: () => Cr,
1380
- type: () => Sr
1381
- }), Sr = "bidirectional", Cr = ({ transport: e, value: t, remoteUuid: n, eventTarget: r, send: i, revivableModules: a }) => {
1401
+ }, Tr = /* @__PURE__ */ t({
1402
+ init: () => Or,
1403
+ startBidirectionalConnection: () => Dr,
1404
+ type: () => Er
1405
+ }), Er = "bidirectional", Dr = ({ transport: e, value: t, remoteUuid: n, eventTarget: r, send: i, revivableModules: a }) => {
1382
1406
  let o = {
1383
1407
  transport: e,
1384
1408
  remoteUuid: n,
@@ -1398,8 +1422,8 @@ var le = (e) => {
1398
1422
  revivableContext: o,
1399
1423
  remoteValue: s.then((e) => $(e, o))
1400
1424
  };
1401
- }, wr = (e) => {
1402
- if (!(j(e.transport) && M(e.transport))) return;
1425
+ }, Or = (e) => {
1426
+ if (!(k(e.transport) && A(e.transport))) return;
1403
1427
  if (e.protocolEventTarget.addEventListener("message", ({ detail: { message: t, peer: n } }) => {
1404
1428
  if (t.type === "announce") {
1405
1429
  if (!t.remoteUuid) {
@@ -1427,7 +1451,7 @@ var le = (e) => {
1427
1451
  });
1428
1452
  return;
1429
1453
  }
1430
- a = Cr({
1454
+ a = Dr({
1431
1455
  transport: e.transport,
1432
1456
  value: n,
1433
1457
  remoteUuid: t.uuid,
@@ -1472,7 +1496,7 @@ var le = (e) => {
1472
1496
  });
1473
1497
  return;
1474
1498
  }
1475
- r = Cr({
1499
+ r = Dr({
1476
1500
  transport: e.transport,
1477
1501
  value: a,
1478
1502
  remoteUuid: e.presetRemoteUuid,
@@ -1504,14 +1528,14 @@ var le = (e) => {
1504
1528
  }
1505
1529
  };
1506
1530
  e.unregisterSignal?.addEventListener("abort", () => clearTimeout(n), { once: !0 }), r();
1507
- }, Tr = () => new EventTarget(), Er = (e) => {
1508
- let t = N(e), n = t ? e.emit : e, r = t ? e.receive : e;
1531
+ }, kr = () => new EventTarget(), Ar = (e) => {
1532
+ let t = j(e), n = t ? e.emit : e, r = t ? e.receive : e;
1509
1533
  return {
1510
- isJson: t && "isJson" in e && e.isJson !== void 0 ? e.isJson : n !== void 0 && A(n) || r !== void 0 && A(r),
1534
+ isJson: t && "isJson" in e && e.isJson !== void 0 ? e.isJson : n !== void 0 && O(n) || r !== void 0 && O(r),
1511
1535
  ...n === void 0 ? {} : { emit: n },
1512
1536
  ...r === void 0 ? {} : { receive: r }
1513
1537
  };
1514
- }, Dr = (e) => e ? e(pr) : pr, Or = 32, kr = () => {
1538
+ }, jr = (e) => e ? e(_r) : _r, Mr = 32, Nr = () => {
1515
1539
  let e = [], t = /* @__PURE__ */ new Set(), n = !1, r = () => ({
1516
1540
  value: void 0,
1517
1541
  done: !0
@@ -1520,7 +1544,7 @@ var le = (e) => {
1520
1544
  push: (r) => {
1521
1545
  if (!n) {
1522
1546
  if (t.size === 0) {
1523
- e.push(r), e.length > Or && e.shift();
1547
+ e.push(r), e.length > Mr && e.shift();
1524
1548
  return;
1525
1549
  }
1526
1550
  for (let e of t) {
@@ -1569,7 +1593,7 @@ var le = (e) => {
1569
1593
  };
1570
1594
  }
1571
1595
  };
1572
- }, Ar = (e, t, n) => {
1596
+ }, Pr = (e, t, n) => {
1573
1597
  let r = e.then(n);
1574
1598
  r.catch(() => {});
1575
1599
  let i = () => {
@@ -1592,75 +1616,75 @@ var le = (e) => {
1592
1616
  };
1593
1617
  };
1594
1618
  return Object.assign(r, { [Symbol.asyncIterator]: i });
1595
- }, jr = Symbol.for("osra.context"), Mr = (e) => ({ [jr]: e }), Nr = (e) => typeof e == "object" && !!e && jr in e, Pr = (e, t, { key: n = r, origin: i = "*", originA: a = i, originB: o = i, nameA: s, nameB: c, unregisterSignal: d } = {}) => {
1596
- let f = Er(e), p = Er(t), m = (e, t, r, i, a) => {
1597
- !M(e) || !j(t) || l({
1619
+ }, Fr = Symbol.for("osra.context"), Ir = (e) => ({ [Fr]: e }), Lr = (e) => typeof e == "object" && !!e && Fr in e, Rr = (e, t, { key: n = r, origin: i = "*", originA: a = i, originB: o = i, nameA: s, nameB: c, unregisterSignal: u } = {}) => {
1620
+ let d = Ar(e), p = Ar(t), m = (e, t, r, i, a) => {
1621
+ !A(e) || !k(t) || l({
1598
1622
  transport: e,
1599
1623
  key: n,
1600
1624
  remoteName: a,
1601
1625
  origin: r,
1602
- unregisterSignal: d,
1626
+ unregisterSignal: u,
1603
1627
  listener: (e) => {
1604
- u(t, e, i, z(e));
1628
+ f(t, e, i, z(e));
1605
1629
  }
1606
1630
  });
1607
1631
  };
1608
- m(f, p, a, o, s), m(p, f, o, a, c);
1609
- }, Fr = [xr], Ir = (e, { transport: t, name: i, remoteName: a, key: o = r, origin: s = "*", unregisterSignal: c, revivableModules: d, uuid: f, remoteUuid: p, connection: m = ({ value: e }) => e }) => {
1610
- let h = m, g = Er(t);
1611
- if (!(j(g) && M(g))) {
1612
- let e = kr();
1632
+ m(d, p, a, o, s), m(p, d, o, a, c);
1633
+ }, zr = [Tr], Br = (e, { transport: t, name: i, remoteName: a, key: o = r, origin: s = "*", unregisterSignal: c, revivableModules: u, uuid: d, remoteUuid: p, connection: m = ({ value: e }) => e }) => {
1634
+ let ee = m, h = Ar(t);
1635
+ if (!(k(h) && A(h))) {
1636
+ let e = Nr();
1613
1637
  e.close();
1614
1638
  let t = Promise.reject(/* @__PURE__ */ 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"));
1615
- return t.catch(() => {}), Ar(t, e, h);
1639
+ return t.catch(() => {}), Pr(t, e, ee);
1616
1640
  }
1617
- let _ = Dr(d), v = /* @__PURE__ */ new Map(), ee = /* @__PURE__ */ new Set(), y = kr(), { promise: b, resolve: x, reject: S } = Promise.withResolvers();
1618
- b.catch(() => {});
1619
- let C = f ?? globalThis.crypto.randomUUID(), w = (e, t = s) => {
1641
+ let te = jr(u), g = /* @__PURE__ */ new Map(), _ = /* @__PURE__ */ new Set(), v = Nr(), { promise: y, resolve: ne, reject: b } = Promise.withResolvers();
1642
+ y.catch(() => {});
1643
+ let x = d ?? globalThis.crypto.randomUUID(), S = (e, t = s) => {
1620
1644
  let r = {
1621
1645
  [n]: o,
1622
1646
  name: i,
1623
- uuid: C,
1647
+ uuid: x,
1624
1648
  ...e
1625
1649
  };
1626
- u(g, r, t, z(r));
1627
- }, T = (e, t) => {
1628
- c?.aborted || w(e, t);
1629
- }, te = Tr(), ne = {
1630
- transport: g,
1631
- valueFor: (t) => Nr(e) ? e[jr](t) : e,
1632
- revivableModules: _,
1633
- connectionContexts: v,
1634
- getUuid: () => C,
1650
+ f(h, r, t, z(r));
1651
+ }, re = (e, t) => {
1652
+ c?.aborted || S(e, t);
1653
+ }, C = kr(), w = {
1654
+ transport: h,
1655
+ valueFor: (t) => Lr(e) ? e[Fr](t) : e,
1656
+ revivableModules: te,
1657
+ connectionContexts: g,
1658
+ getUuid: () => x,
1635
1659
  presetRemoteUuid: p,
1636
- sendMessage: T,
1637
- protocolEventTarget: te,
1638
- rejectRemoteValue: S,
1660
+ sendMessage: re,
1661
+ protocolEventTarget: C,
1662
+ rejectRemoteValue: b,
1639
1663
  abortConnection: (e) => {
1640
- let t = v.get(e);
1664
+ let t = g.get(e);
1641
1665
  if (!t) {
1642
- ee.add(e);
1666
+ _.add(e);
1643
1667
  return;
1644
1668
  }
1645
- v.delete(e), w({
1669
+ g.delete(e), S({
1646
1670
  type: "close",
1647
1671
  remoteUuid: e
1648
- }), R(t.connection.revivableContext), S(/* @__PURE__ */ Error("osra: connection aborted"));
1672
+ }), R(t.connection.revivableContext), b(/* @__PURE__ */ Error("osra: connection aborted"));
1649
1673
  },
1650
- claimPendingAbort: (e) => ee.delete(e),
1674
+ claimPendingAbort: (e) => _.delete(e),
1651
1675
  addConnection: (e, t) => {
1652
1676
  let n = {
1653
1677
  value: t,
1654
1678
  context: e
1655
1679
  };
1656
- x(n), y.push(n);
1680
+ ne(n), v.push(n);
1657
1681
  },
1658
- createConnectionEventTarget: Tr,
1682
+ createConnectionEventTarget: kr,
1659
1683
  unregisterSignal: c
1660
1684
  };
1661
1685
  if (l({
1662
1686
  listener: (e, t) => {
1663
- e.uuid !== C && te.dispatchEvent(new CustomEvent("message", { detail: {
1687
+ e.uuid !== x && C.dispatchEvent(new CustomEvent("message", { detail: {
1664
1688
  message: e,
1665
1689
  peer: () => ({
1666
1690
  ...t.origin ? { origin: t.origin } : {},
@@ -1670,23 +1694,23 @@ var le = (e) => {
1670
1694
  })
1671
1695
  } }));
1672
1696
  },
1673
- transport: g,
1697
+ transport: h,
1674
1698
  remoteName: a,
1675
1699
  key: o,
1676
1700
  origin: s,
1677
1701
  unregisterSignal: c
1678
- }), c?.aborted) return S(c.reason), y.close(), Ar(b, y, h);
1702
+ }), c?.aborted) return b(c.reason), v.close(), Pr(y, v, ee);
1679
1703
  c?.addEventListener("abort", () => {
1680
- for (let [e, t] of v) w({
1704
+ for (let [e, t] of g) S({
1681
1705
  type: "close",
1682
1706
  remoteUuid: e
1683
1707
  }), R(t.connection.revivableContext);
1684
- v.clear(), y.close(), S(c.reason);
1708
+ g.clear(), v.close(), b(c.reason);
1685
1709
  }, { once: !0 });
1686
- for (let e of Fr) e.init(ne);
1687
- return Ar(b, y, h);
1688
- }, Lr = (e, t) => Ir(e, t);
1710
+ for (let e of zr) e.init(w);
1711
+ return Pr(y, v, ee);
1712
+ }, Vr = (e, t) => Br(e, t);
1689
1713
  //#endregion
1690
- export { P as BoxBase, jr as CONTEXT, V as EventChannel, B as EventPort, i as OSRA_BOX, r as OSRA_DEFAULT_KEY, n as OSRA_KEY, Ar as asExposed, se as assertEmitTransport, ce as assertReceiveTransport, pe as boxBuffer, s as checkOsraMessageKey, Fr as connections, Mr as context, kr as createConnectionQueue, Tr as createTypedEventTarget, pr as defaultRevivableModules, Lr as expose, z as getTransferableObjects, a as getWebExtensionGlobal, o as getWebExtensionRuntime, mn as identity, wr as init, w as instanceOfAny, te as isClonable, Nr as isContextual, ue as isCustomEmitTransport, de as isCustomReceiveTransport, N as isCustomTransport, b as isDedicatedWorker, ae as isEmitJsonOnlyTransport, j as isEmitTransport, A as isJsonOnlyTransport, C as isOsraMessage, oe as isReceiveJsonOnlyTransport, M as isReceiveTransport, F as isRevivableBox, ee as isServiceWorker, v as isServiceWorkerContainer, T as isSharedArrayBuffer, x as isSharedWorker, ne as isTransferable, fe as isTransport, g as isTypedArray, O as isWebExtensionOnConnect, ie as isWebExtensionOnMessage, D as isWebExtensionPort, E as isWebExtensionRuntime, _ as isWebSocket, k as isWindow, y as isWorker, Dr as mergeRevivableModules, Er as normalizeTransport, L as onTeardown, Q as recursiveBox, $ as recursiveRevive, l as registerOsraMessageListener, Pr as relay, me as reviveBuffer, R as runTeardown, u as sendOsraMessage, Cr as startBidirectionalConnection, Ir as startConnections, H as trackGc, Je as transfer, Sr as type, m as typedArrayToType, h as typedArrayTypeToTypedArrayConstructor };
1714
+ export { M as BoxBase, Fr as CONTEXT, V as EventChannel, B as EventPort, i as OSRA_BOX, r as OSRA_DEFAULT_KEY, n as OSRA_KEY, Pr as asExposed, de as assertEmitTransport, fe as assertReceiveTransport, _e as boxBuffer, s as checkOsraMessageKey, zr as connections, Ir as context, Nr as createConnectionQueue, kr as createTypedEventTarget, _r as defaultRevivableModules, Vr as expose, z as getTransferableObjects, a as getWebExtensionGlobal, o as getWebExtensionRuntime, vn as identity, Or as init, C as instanceOfAny, ie as isClonable, Lr as isContextual, me as isCustomEmitTransport, he as isCustomReceiveTransport, j as isCustomTransport, b as isDedicatedWorker, le as isEmitJsonOnlyTransport, k as isEmitTransport, O as isJsonOnlyTransport, re as isOsraMessage, ue as isReceiveJsonOnlyTransport, A as isReceiveTransport, N as isRevivableBox, y as isServiceWorker, v as isServiceWorkerContainer, w as isSharedArrayBuffer, x as isSharedWorker, L as isTornDown, ae as isTransferable, ge as isTransport, g as isTypedArray, se as isWebExtensionOnConnect, ce as isWebExtensionOnMessage, E as isWebExtensionPort, T as isWebExtensionRuntime, _ as isWebSocket, D as isWindow, ne as isWorker, jr as mergeRevivableModules, Ar as normalizeTransport, I as onTeardown, Q as recursiveBox, $ as recursiveRevive, l as registerOsraMessageListener, Rr as relay, ve as reviveBuffer, R as runTeardown, f as sendOsraMessage, Dr as startBidirectionalConnection, Br as startConnections, H as trackGc, Ze as transfer, Er as type, h as typedArrayToType, te as typedArrayTypeToTypedArrayConstructor };
1691
1715
 
1692
1716
  //# sourceMappingURL=index.js.map