osra 0.5.6 → 0.5.7

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