osra 0.6.6 → 0.6.8

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
@@ -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 = P(t) ? t.receive : t;
19
+ let l = N(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) || k(l)) {
27
+ if (E(l) || D(l) || oe(l) || O(l)) {
28
28
  let t = (t, r) => {
29
29
  let a = (t, a) => {
30
30
  s(t, i) && (n && t.name !== n || e(t, {
@@ -35,13 +35,13 @@ var e = Object.defineProperty, t = (t, n) => {
35
35
  t.addListener(a), c(o, () => t.removeListener(a));
36
36
  };
37
37
  if (E(l)) t(l.onMessage);
38
- else if (O(l)) {
38
+ else if (oe(l)) {
39
39
  let e = (e) => t(e.onMessage, e);
40
40
  l.addListener(e), c(o, () => l.removeListener(e));
41
- } else k(l) ? t(l) : t(l.onMessage);
41
+ } else O(l) ? t(l) : t(l.onMessage);
42
42
  return;
43
43
  }
44
- let u = S(l) ? l.port : l, d = a !== "*" && A(l), f = (t) => {
44
+ let u = S(l) ? l.port : l, d = a !== "*" && k(l), f = (t) => {
45
45
  let r = t.data;
46
46
  if (typeof r == "string") try {
47
47
  r = JSON.parse(r);
@@ -56,9 +56,9 @@ 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 = /* @__PURE__ */ new WeakSet(), d = (e) => String(e?.message ?? e).includes("disconnected port"), f = (e, t, n = "*", r = []) => {
59
- let i = P(e) ? e.emit : e;
59
+ let i = N(e) ? e.emit : e;
60
60
  if (typeof i == "function") i(t, r);
61
- else if (A(i)) i.postMessage(t, n, r);
61
+ else if (k(i)) i.postMessage(t, n, r);
62
62
  else if (D(i)) {
63
63
  if (u.has(i)) return;
64
64
  try {
@@ -121,10 +121,10 @@ var e = Object.defineProperty, t = (t, n) => {
121
121
  ]), E = (e) => {
122
122
  let t = o();
123
123
  return t ? e === t : !1;
124
- }, D = (e, t = !1) => !e || typeof e != "object" || A(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" && !A(e) && "addListener" in e && "hasListener" in e && "removeListener" in e, O = (e) => {
124
+ }, 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, ae = (e) => !!e && typeof e == "object" && !k(e) && "addListener" in e && "hasListener" in e && "removeListener" in e, oe = (e) => {
125
125
  let t = o();
126
126
  return t ? e === t.onConnect || e === t.onConnectExternal : !1;
127
- }, k = (e) => ae(e), A = (e) => {
127
+ }, O = (e) => ae(e), k = (e) => {
128
128
  if (!e || typeof e != "object") return !1;
129
129
  try {
130
130
  return "window" in e && e.window === e;
@@ -135,51 +135,51 @@ var e = Object.defineProperty, t = (t, n) => {
135
135
  return !1;
136
136
  }
137
137
  }
138
- }, oe = (e) => v(e) || D(e) || E(e), se = (e) => v(e) || D(e) || O(e) || k(e) || E(e), j = (e) => !!e && typeof e == "object" && !A(e) && "isJson" in e && e.isJson === !0 || oe(e) || se(e), M = (e) => A(e) || oe(e) || b(e) || te(e) || x(e) || S(e) || C(e) || de(e);
139
- function ce(e) {
140
- if (!M(e)) throw Error("Transport is not emitable");
141
- }
142
- var N = (e) => A(e) || se(e) || y(e) || te(e) || x(e) || S(e) || C(e) || fe(e);
138
+ }, se = (e) => v(e) || D(e) || E(e), ce = (e) => v(e) || D(e) || oe(e) || O(e) || E(e), A = (e) => !!e && typeof e == "object" && !k(e) && "isJson" in e && e.isJson === !0 || se(e) || ce(e), j = (e) => k(e) || se(e) || b(e) || te(e) || x(e) || S(e) || C(e) || fe(e);
143
139
  function le(e) {
144
- if (!N(e)) throw Error("Transport is not receiveable");
140
+ if (!j(e)) throw Error("Transport is not emitable");
141
+ }
142
+ var M = (e) => k(e) || ce(e) || y(e) || te(e) || x(e) || S(e) || C(e) || pe(e);
143
+ function ue(e) {
144
+ if (!M(e)) throw Error("Transport is not receiveable");
145
145
  }
146
- var ue = (e) => {
147
- if (!e || typeof e != "object" || A(e)) return !1;
146
+ var de = (e) => {
147
+ if (!e || typeof e != "object" || k(e)) return !1;
148
148
  let t = Object.getPrototypeOf(e);
149
149
  return t === Object.prototype || t === null;
150
- }, de = (e) => !ue(e) || !("emit" in e) ? !1 : M(e.emit) || typeof e.emit == "function", fe = (e) => !ue(e) || !("receive" in e) ? !1 : N(e.receive) || typeof e.receive == "function", P = (e) => de(e) || fe(e), pe = (e) => M(e) || N(e) || P(e) || j(e), F = { [i]: "revivable" }, me = (e) => !!e && typeof e == "object" && "__OSRA_BOX__" in e && e.__OSRA_BOX__ === "revivable", he = (e, t) => j(t.transport) ? { base64Buffer: new Uint8Array(e).toBase64() } : { arrayBuffer: e }, ge = (e) => "arrayBuffer" in e ? e.arrayBuffer : Uint8Array.fromBase64(e.base64Buffer).buffer, _e = /* @__PURE__ */ t({
151
- box: () => be,
152
- isType: () => ye,
153
- revive: () => xe,
154
- type: () => ve
155
- }), ve = "arrayBuffer", ye = (e) => e instanceof ArrayBuffer, be = (e, t) => ({
156
- ...F,
157
- type: ve,
158
- ...he(e, t)
159
- }), xe = (e, t) => ge(e), Se = /* @__PURE__ */ t({
160
- box: () => Te,
161
- isType: () => we,
162
- revive: () => Ee,
163
- type: () => Ce
164
- }), Ce = "date", we = (e) => e instanceof Date, Te = (e, t) => ({
165
- ...F,
166
- type: Ce,
150
+ }, fe = (e) => !de(e) || !("emit" in e) ? !1 : j(e.emit) || typeof e.emit == "function", pe = (e) => !de(e) || !("receive" in e) ? !1 : M(e.receive) || typeof e.receive == "function", N = (e) => fe(e) || pe(e), me = (e) => j(e) || M(e) || N(e) || A(e), P = { [i]: "revivable" }, he = (e) => !!e && typeof e == "object" && "__OSRA_BOX__" in e && e.__OSRA_BOX__ === "revivable", ge = (e, t) => A(t.transport) ? { base64Buffer: new Uint8Array(e).toBase64() } : { arrayBuffer: e }, _e = (e) => "arrayBuffer" in e ? e.arrayBuffer : Uint8Array.fromBase64(e.base64Buffer).buffer, ve = /* @__PURE__ */ t({
151
+ box: () => xe,
152
+ isType: () => be,
153
+ revive: () => Se,
154
+ type: () => ye
155
+ }), ye = "arrayBuffer", be = (e) => e instanceof ArrayBuffer, xe = (e, t) => ({
156
+ ...P,
157
+ type: ye,
158
+ ...ge(e, t)
159
+ }), Se = (e, t) => _e(e), Ce = /* @__PURE__ */ t({
160
+ box: () => Ee,
161
+ isType: () => Te,
162
+ revive: () => De,
163
+ type: () => we
164
+ }), we = "date", Te = (e) => e instanceof Date, Ee = (e, t) => ({
165
+ ...P,
166
+ type: we,
167
167
  ISOString: e.toISOString()
168
- }), Ee = (e, t) => new Date(e.ISOString), De = /* @__PURE__ */ t({
169
- box: () => Ae,
170
- isType: () => ke,
171
- revive: () => je,
172
- type: () => Oe
173
- }), Oe = "headers", ke = (e) => e instanceof Headers, Ae = (e, t) => ({
174
- ...F,
175
- type: Oe,
168
+ }), De = (e, t) => new Date(e.ISOString), Oe = /* @__PURE__ */ t({
169
+ box: () => je,
170
+ isType: () => Ae,
171
+ revive: () => Me,
172
+ type: () => ke
173
+ }), ke = "headers", Ae = (e) => e instanceof Headers, je = (e, t) => ({
174
+ ...P,
175
+ type: ke,
176
176
  entries: [...e.entries()]
177
- }), je = (e, t) => new Headers(e.entries), Me = /* @__PURE__ */ t({
178
- box: () => Ie,
179
- isType: () => Fe,
180
- revive: () => Le,
181
- type: () => Ne
182
- }), Ne = "error", Pe = {
177
+ }), Me = (e, t) => new Headers(e.entries), Ne = /* @__PURE__ */ t({
178
+ box: () => Le,
179
+ isType: () => Ie,
180
+ revive: () => Re,
181
+ type: () => Pe
182
+ }), Pe = "error", Fe = {
183
183
  Error,
184
184
  TypeError,
185
185
  RangeError,
@@ -187,20 +187,20 @@ var ue = (e) => {
187
187
  ReferenceError,
188
188
  EvalError,
189
189
  URIError
190
- }, Fe = (e) => e instanceof Error, Ie = (e, t) => {
190
+ }, Ie = (e) => e instanceof Error, Le = (e, t) => {
191
191
  let n = "cause" in e && e.cause !== void 0, r = typeof AggregateError < "u" && e instanceof AggregateError, i = typeof DOMException < "u" && e instanceof DOMException;
192
192
  return {
193
- ...F,
194
- type: Ne,
193
+ ...P,
194
+ type: Pe,
195
195
  name: e.name,
196
196
  message: e.message,
197
197
  stack: e.stack || e.toString(),
198
- ...n ? { cause: Q(e.cause, t) } : {},
199
- ...r ? { errors: Q(e.errors, t) } : {},
198
+ ...n ? { cause: Z(e.cause, t) } : {},
199
+ ...r ? { errors: Z(e.errors, t) } : {},
200
200
  ...i ? { isDOMException: !0 } : {}
201
201
  };
202
- }, Le = (e, t) => {
203
- let n = e.cause === void 0 ? void 0 : $(e.cause, t), r = n === void 0 ? void 0 : { cause: n };
202
+ }, Re = (e, t) => {
203
+ let n = e.cause === void 0 ? void 0 : Q(e.cause, t), r = n === void 0 ? void 0 : { cause: n };
204
204
  if (e.isDOMException && typeof DOMException < "u") {
205
205
  let t = new DOMException(e.message, e.name);
206
206
  if (e.stack) try {
@@ -212,49 +212,49 @@ var ue = (e) => {
212
212
  return t;
213
213
  }
214
214
  let i;
215
- if (e.errors !== void 0 && typeof AggregateError < "u") i = AggregateError($(e.errors, t), e.message, r);
215
+ if (e.errors !== void 0 && typeof AggregateError < "u") i = AggregateError(Q(e.errors, t), e.message, r);
216
216
  else {
217
- let t = Pe[e.name] ?? Error;
217
+ let t = Fe[e.name] ?? Error;
218
218
  i = r === void 0 ? new t(e.message) : new t(e.message, r);
219
219
  }
220
220
  return e.name && i.name !== e.name && (i.name = e.name), e.stack && (i.stack = e.stack), i;
221
- }, Re = /* @__PURE__ */ t({
222
- box: () => Ve,
223
- isType: () => Be,
224
- revive: () => He,
225
- type: () => ze
226
- }), ze = "typedArray", Be = _, Ve = (e, t) => {
221
+ }, ze = /* @__PURE__ */ t({
222
+ box: () => He,
223
+ isType: () => Ve,
224
+ revive: () => Ue,
225
+ type: () => Be
226
+ }), Be = "typedArray", Ve = _, He = (e, t) => {
227
227
  let n = e.byteOffset === 0 && e.byteLength === e.buffer.byteLength ? e.buffer : e.buffer.slice(e.byteOffset, e.byteOffset + e.byteLength);
228
228
  return {
229
- ...F,
230
- type: ze,
229
+ ...P,
230
+ type: Be,
231
231
  typedArrayType: g(e),
232
- ...he(n, t)
232
+ ...ge(n, t)
233
233
  };
234
- }, He = (e, t) => new (ee(e.typedArrayType))(ge(e)), Ue = /* @__PURE__ */ new WeakMap(), We = /* @__PURE__ */ new WeakSet(), I = (e, t) => {
235
- if (We.has(e)) return t(), () => {};
236
- let n = Ue.get(e);
237
- return n || Ue.set(e, n = /* @__PURE__ */ new Set()), n.add(t), () => n.delete(t);
238
- }, L = (e) => We.has(e), R = (e) => {
239
- if (We.has(e)) return;
240
- We.add(e);
241
- let t = Ue.get(e);
234
+ }, Ue = (e, t) => new (ee(e.typedArrayType))(_e(e)), We = /* @__PURE__ */ new WeakMap(), F = /* @__PURE__ */ new WeakSet(), I = (e, t) => {
235
+ if (F.has(e)) return t(), () => {};
236
+ let n = We.get(e);
237
+ return n || We.set(e, n = /* @__PURE__ */ new Set()), n.add(t), () => n.delete(t);
238
+ }, L = (e) => F.has(e), Ge = (e) => {
239
+ if (F.has(e)) return;
240
+ F.add(e);
241
+ let t = We.get(e);
242
242
  if (t) {
243
- Ue.delete(e);
243
+ We.delete(e);
244
244
  for (let e of t) try {
245
245
  e();
246
246
  } catch {}
247
247
  }
248
- }, Ge = /* @__PURE__ */ t({
249
- box: () => et,
250
- forceTransfer: () => Qe,
251
- isInTransfer: () => Ze,
252
- isType: () => $e,
253
- outsideTransfer: () => V,
254
- revive: () => tt,
255
- transfer: () => Xe,
256
- type: () => Ke
257
- }), Ke = "transfer", z = Symbol.for("osra.transfer"), qe = (e) => typeof e == "object" && !!e, Je = (e) => qe(e) && z in e && e[z] === !0, Ye = (e) => qe(e) ? ArrayBuffer.isView(e) ? !0 : w(e, [
248
+ }, Ke = /* @__PURE__ */ t({
249
+ box: () => nt,
250
+ forceTransfer: () => et,
251
+ isInTransfer: () => $e,
252
+ isType: () => tt,
253
+ outsideTransfer: () => z,
254
+ revive: () => rt,
255
+ transfer: () => Qe,
256
+ type: () => qe
257
+ }), qe = "transfer", Je = Symbol.for("osra.transfer"), Ye = (e) => typeof e == "object" && !!e, Xe = (e) => Ye(e) && Je in e && e[Je] === !0, Ze = (e) => Ye(e) ? ArrayBuffer.isView(e) ? !0 : w(e, [
258
258
  globalThis.ArrayBuffer,
259
259
  globalThis.MessagePort,
260
260
  globalThis.ReadableStream,
@@ -266,33 +266,33 @@ var ue = (e) => {
266
266
  globalThis.OffscreenCanvas,
267
267
  globalThis.VideoFrame,
268
268
  globalThis.AudioData
269
- ]) : !1, Xe = (e) => Ye(e) ? {
270
- [z]: !0,
269
+ ]) : !1, Qe = (e) => Ze(e) ? {
270
+ [Je]: !0,
271
271
  value: e
272
- } : e, B = 0, Ze = () => B > 0, Qe = (e) => qe(e) && !Je(e) ? {
273
- [z]: !0,
272
+ } : e, R = 0, $e = () => R > 0, et = (e) => Ye(e) && !Xe(e) ? {
273
+ [Je]: !0,
274
274
  value: e
275
- } : e, V = (e) => {
276
- let t = B;
277
- B = 0;
275
+ } : e, z = (e) => {
276
+ let t = R;
277
+ R = 0;
278
278
  try {
279
279
  return e();
280
280
  } finally {
281
- B = t;
281
+ R = t;
282
282
  }
283
- }, $e = (e) => Je(e), et = (e, t) => {
284
- B++;
283
+ }, tt = (e) => Xe(e), nt = (e, t) => {
284
+ R++;
285
285
  try {
286
286
  return {
287
- ...F,
288
- type: Ke,
289
- inner: Q(e.value, t),
290
- degraded: j(t.transport)
287
+ ...P,
288
+ type: qe,
289
+ inner: Z(e.value, t),
290
+ degraded: A(t.transport)
291
291
  };
292
292
  } finally {
293
- B--;
293
+ R--;
294
294
  }
295
- }, tt = (e, t) => $(e.inner, t), nt = (e) => w(e, [
295
+ }, rt = (e, t) => Q(e.inner, t), it = (e) => w(e, [
296
296
  globalThis.MessagePort,
297
297
  globalThis.ReadableStream,
298
298
  globalThis.WritableStream,
@@ -304,14 +304,14 @@ var ue = (e) => {
304
304
  globalThis.RTCDataChannel,
305
305
  globalThis.WebTransportReceiveStream,
306
306
  globalThis.WebTransportSendStream
307
- ]), rt = (e) => me(e) && e.type === "transfer", H = (e) => {
307
+ ]), at = (e) => he(e) && e.type === "transfer", B = (e) => {
308
308
  let t = [], n = /* @__PURE__ */ new WeakSet(), r = (e, i) => {
309
309
  if (!(!e || typeof e != "object") && !n.has(e) && (n.add(e), !T(e))) {
310
- if (rt(e)) {
310
+ if (at(e)) {
311
311
  r(e.inner, i || !e.degraded);
312
312
  return;
313
313
  }
314
- if (nt(e)) {
314
+ if (it(e)) {
315
315
  t.push(e);
316
316
  return;
317
317
  }
@@ -331,7 +331,7 @@ var ue = (e) => {
331
331
  }
332
332
  };
333
333
  return r(e, !1), t;
334
- }, U = class {
334
+ }, V = class {
335
335
  _listeners = /* @__PURE__ */ new Map();
336
336
  addEventListener(e, t, n) {
337
337
  if (!t) return;
@@ -382,49 +382,49 @@ var ue = (e) => {
382
382
  e._closed || e.dispatchEvent(new Event("close"));
383
383
  });
384
384
  }
385
- }, W = class {
385
+ }, H = class {
386
386
  port1;
387
387
  port2;
388
388
  constructor() {
389
- let e = new U(), t = new U();
389
+ let e = new V(), t = new V();
390
390
  e._peer = t, t._peer = e, this.port1 = e, this.port2 = t;
391
391
  }
392
- }, it = new FinalizationRegistry((e) => {
392
+ }, ot = new FinalizationRegistry((e) => {
393
393
  try {
394
394
  e();
395
395
  } catch {}
396
- }), G = (e, t) => {
396
+ }), U = (e, t) => {
397
397
  let n = {};
398
- return it.register(e, t, n), () => it.unregister(n);
399
- }, at = /* @__PURE__ */ t({
400
- box: () => xt,
401
- createRevivableChannel: () => J,
402
- init: () => gt,
403
- isType: () => _t,
404
- revive: () => q,
405
- type: () => ot
406
- }), ot = "messagePort", st = 2048, ct = 128, lt = 1024, ut = /* @__PURE__ */ new WeakMap(), K = (e) => {
407
- let t = ut.get(e);
398
+ return ot.register(e, t, n), () => ot.unregister(n);
399
+ }, st = /* @__PURE__ */ t({
400
+ box: () => Ct,
401
+ createRevivableChannel: () => K,
402
+ init: () => vt,
403
+ isType: () => yt,
404
+ revive: () => G,
405
+ type: () => ct
406
+ }), ct = "messagePort", lt = 2048, ut = 128, dt = 1024, ft = /* @__PURE__ */ new WeakMap(), W = (e) => {
407
+ let t = ft.get(e);
408
408
  if (!t) throw Error("osra message-port: connection state missing; did init() run?");
409
409
  return t;
410
- }, dt = (e, t) => {
410
+ }, pt = (e, t) => {
411
411
  let n = e.ports.get(t);
412
412
  return n || (n = {
413
413
  nextSeq: 0,
414
414
  buffer: /* @__PURE__ */ new Map(),
415
415
  outSeq: 0
416
416
  }, e.ports.set(t, n), e.pendingPorts++), n;
417
- }, ft = (e, t) => {
417
+ }, mt = (e, t) => {
418
418
  let n = e.ports.get(t);
419
- if (n && !n.handler && e.pendingPorts--, e.ports.delete(t), e.tombstones.size >= ct) {
419
+ if (n && !n.handler && e.pendingPorts--, e.ports.delete(t), e.tombstones.size >= ut) {
420
420
  let t = e.tombstones.values().next().value;
421
421
  t !== void 0 && e.tombstones.delete(t);
422
422
  }
423
423
  e.tombstones.add(t);
424
- }, pt = (e) => {
424
+ }, ht = (e) => {
425
425
  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);
426
- }, mt = (e, t) => dt(K(e), t).outSeq++, ht = (e, t, n) => {
427
- let r = K(e);
426
+ }, gt = (e, t) => pt(W(e), t).outSeq++, _t = (e, t, n) => {
427
+ let r = W(e);
428
428
  if (r.tombstones.has(t)) {
429
429
  setTimeout(() => n({
430
430
  type: "message-port-close",
@@ -433,15 +433,15 @@ var ue = (e) => {
433
433
  }));
434
434
  return;
435
435
  }
436
- let i = dt(r, t);
437
- i.handler || r.pendingPorts--, i.handler = n, pt(i);
438
- }, gt = (e) => {
436
+ let i = pt(r, t);
437
+ i.handler || r.pendingPorts--, i.handler = n, ht(i);
438
+ }, vt = (e) => {
439
439
  let t = {
440
440
  ports: /* @__PURE__ */ new Map(),
441
441
  tombstones: /* @__PURE__ */ new Set(),
442
442
  pendingPorts: 0
443
443
  };
444
- ut.set(e, t), e.eventTarget.addEventListener("message", ({ detail: n }) => {
444
+ ft.set(e, t), e.eventTarget.addEventListener("message", ({ detail: n }) => {
445
445
  if (n.type !== "message" && n.type !== "message-port-close" || t.tombstones.has(n.portId)) return;
446
446
  let r = t.ports.get(n.portId);
447
447
  if (n.seq === void 0) {
@@ -449,19 +449,19 @@ var ue = (e) => {
449
449
  return;
450
450
  }
451
451
  if (!r) {
452
- if (t.pendingPorts >= lt) return;
453
- r = dt(t, n.portId);
452
+ if (t.pendingPorts >= dt) return;
453
+ r = pt(t, n.portId);
454
454
  }
455
455
  if (!(n.seq < r.nextSeq)) {
456
- if (r.buffer.size >= st && !(n.seq === r.nextSeq && r.handler)) {
457
- r.buffer.clear(), ft(t, n.portId), r.handler?.({
456
+ if (r.buffer.size >= lt && !(n.seq === r.nextSeq && r.handler)) {
457
+ r.buffer.clear(), mt(t, n.portId), r.handler?.({
458
458
  type: "message-port-close",
459
459
  remoteUuid: e.remoteUuid,
460
460
  portId: n.portId
461
461
  });
462
462
  return;
463
463
  }
464
- r.buffer.set(n.seq, n), pt(r);
464
+ r.buffer.set(n.seq, n), ht(r);
465
465
  }
466
466
  }), I(e, () => {
467
467
  for (let [n, r] of [...t.ports]) r.handler?.({
@@ -471,9 +471,9 @@ var ue = (e) => {
471
471
  });
472
472
  t.ports.clear(), t.tombstones.clear(), t.pendingPorts = 0;
473
473
  });
474
- }, _t = (e) => e instanceof MessagePort || e instanceof U, vt = (e, t) => {
474
+ }, yt = (e) => e instanceof MessagePort || e instanceof V, bt = (e, t) => {
475
475
  try {
476
- let n = K(e).ports.get(t);
476
+ let n = W(e).ports.get(t);
477
477
  e.sendMessage({
478
478
  type: "message-port-close",
479
479
  remoteUuid: e.remoteUuid,
@@ -481,84 +481,84 @@ var ue = (e) => {
481
481
  seq: n ? n.outSeq++ : 0
482
482
  });
483
483
  } catch {}
484
- }, yt = (e, t, n) => {
485
- n ? e.postMessage(t) : e.postMessage(t, H(t));
486
- }, bt = (e, t, n) => () => {
484
+ }, xt = (e, t, n) => {
485
+ n ? e.postMessage(t) : e.postMessage(t, B(t));
486
+ }, St = (e, t, n) => () => {
487
487
  let r = e.deref();
488
- r && vt(r, n);
488
+ r && bt(r, n);
489
489
  let i = t.deref();
490
- i && ft(i, n);
491
- }, xt = (e, t, n) => {
492
- let r = e instanceof U;
493
- if (!r && !j(t.transport)) return {
494
- ...F,
495
- type: ot,
490
+ i && mt(i, n);
491
+ }, Ct = (e, t, n) => {
492
+ let r = e instanceof V;
493
+ if (!r && !A(t.transport)) return {
494
+ ...P,
495
+ type: ct,
496
496
  port: e,
497
497
  ...n?.autoBox ? { autoBox: !0 } : {}
498
498
  };
499
- let i = K(t), a = e, o = globalThis.crypto.randomUUID(), s = new WeakRef(a), c = new WeakRef(t), l = new WeakRef(i), u = !1, d = () => {
499
+ let i = W(t), a = e, o = globalThis.crypto.randomUUID(), s = new WeakRef(a), c = new WeakRef(t), l = new WeakRef(i), u = !1, d = () => {
500
500
  if (u) return;
501
501
  u = !0;
502
502
  let e = l.deref();
503
- e && ft(e, o), m?.();
503
+ e && mt(e, o), m?.();
504
504
  let t = s.deref();
505
- t?.removeEventListener("message", p), t instanceof U && (t._onClose = void 0);
505
+ t?.removeEventListener("message", p), t instanceof V && (t._onClose = void 0);
506
506
  }, f = (e) => {
507
507
  if (e.type === "message-port-close") {
508
508
  d(), a.dispatchEvent(new Event("close")), a.close();
509
509
  return;
510
510
  }
511
- yt(a, $(e.data, t), !1);
511
+ xt(a, Q(e.data, t), !1);
512
512
  };
513
513
  function p({ data: e }) {
514
514
  t.sendMessage({
515
515
  type: "message",
516
516
  remoteUuid: t.remoteUuid,
517
- data: V(() => Q(e, t)),
517
+ data: z(() => Z(e, t)),
518
518
  portId: o,
519
- seq: mt(t, o)
519
+ seq: gt(t, o)
520
520
  });
521
521
  }
522
- let m = G(a, bt(c, l, o));
523
- return a.addEventListener("message", p), a.start(), a instanceof U && (a._onClose = () => {
524
- u || (vt(t, o), d());
525
- }), ht(t, o, f), {
526
- ...F,
527
- type: ot,
522
+ let m = U(a, St(c, l, o));
523
+ return a.addEventListener("message", p), a.start(), a instanceof V && (a._onClose = () => {
524
+ u || (bt(t, o), d());
525
+ }), _t(t, o, f), {
526
+ ...P,
527
+ type: ct,
528
528
  portId: o,
529
529
  synthetic: r
530
530
  };
531
- }, q = (e, t) => "port" in e ? e.autoBox ? St(e.port, t) : e.port : Ct(e.portId, t, e.synthetic), St = (e, t) => {
531
+ }, G = (e, t) => "port" in e ? e.autoBox ? wt(e.port, t) : e.port : Tt(e.portId, t, e.synthetic), wt = (e, t) => {
532
532
  let n = new EventTarget(), r = ({ data: e }) => {
533
- n.dispatchEvent(new MessageEvent("message", { data: $(e, t) }));
533
+ n.dispatchEvent(new MessageEvent("message", { data: Q(e, t) }));
534
534
  }, i = () => {
535
535
  n.dispatchEvent(new Event("messageerror"));
536
536
  }, a = () => {
537
537
  n.dispatchEvent(new Event("close"));
538
538
  };
539
539
  return e.addEventListener("message", r), e.addEventListener("messageerror", i), e.addEventListener("close", a), n.postMessage = (n, r) => {
540
- let i = V(() => Q(n, t)), a = H(i), o = Array.isArray(r) ? r : [];
540
+ let i = z(() => Z(n, t)), a = B(i), o = Array.isArray(r) ? r : [];
541
541
  e.postMessage(i, o.length ? [...a, ...o] : a);
542
542
  }, n.start = () => e.start(), n.close = () => {
543
543
  e.removeEventListener("message", r), e.removeEventListener("messageerror", i), e.removeEventListener("close", a), e.close();
544
544
  }, n;
545
- }, J = (e) => {
546
- if (j(e.transport)) {
547
- let { port1: t, port2: n } = new W();
545
+ }, K = (e) => {
546
+ if (A(e.transport)) {
547
+ let { port1: t, port2: n } = new H();
548
548
  return {
549
549
  localPort: t,
550
- boxedRemote: xt(n, e)
550
+ boxedRemote: Ct(n, e)
551
551
  };
552
552
  }
553
553
  let { port1: t, port2: n } = new MessageChannel();
554
554
  return {
555
- localPort: St(t, e),
556
- boxedRemote: xt(n, e, { autoBox: !0 })
555
+ localPort: wt(t, e),
556
+ boxedRemote: Ct(n, e, { autoBox: !0 })
557
557
  };
558
- }, Ct = (e, t, n) => {
559
- let r = K(t), { port1: i, port2: a } = n ? new W() : new MessageChannel(), o = new WeakRef(i), s = new WeakRef(a), c = !1, l = () => {
558
+ }, Tt = (e, t, n) => {
559
+ let r = W(t), { port1: i, port2: a } = n ? new H() : new MessageChannel(), o = new WeakRef(i), s = new WeakRef(a), c = !1, l = () => {
560
560
  if (c) return;
561
- c = !0, ft(r, e);
561
+ c = !0, mt(r, e);
562
562
  let t = s.deref();
563
563
  t?.removeEventListener("message", d), t?.close(), f?.();
564
564
  }, u = (e) => {
@@ -573,29 +573,29 @@ var ue = (e) => {
573
573
  return;
574
574
  }
575
575
  let r = s.deref();
576
- r && yt(r, $(e.data, t), n);
576
+ r && xt(r, Q(e.data, t), n);
577
577
  }, d = ({ data: n }) => {
578
578
  t.sendMessage({
579
579
  type: "message",
580
580
  remoteUuid: t.remoteUuid,
581
- data: V(() => Q(n, t)),
581
+ data: z(() => Z(n, t)),
582
582
  portId: e,
583
- seq: mt(t, e)
583
+ seq: gt(t, e)
584
584
  });
585
- }, f = G(i, () => {
586
- vt(t, e), l();
585
+ }, f = U(i, () => {
586
+ bt(t, e), l();
587
587
  });
588
- return i instanceof U && (i._onClose = () => {
589
- c || (vt(t, e), l());
590
- }), a.addEventListener("message", d), a.start(), ht(t, e, u), i;
591
- }, wt = /* @__PURE__ */ t({
592
- box: () => kt,
593
- isType: () => Ot,
594
- revive: () => At,
595
- type: () => Tt
596
- }), Tt = "promise", Et = (e) => e instanceof Promise, Dt = /* @__PURE__ */ new Set(), Ot = (e) => e instanceof Promise, kt = (e, t) => {
597
- if (!Et(e)) throw TypeError("Expected Promise");
598
- let { localPort: n, boxedRemote: r } = J(t), i = (e) => {
588
+ return i instanceof V && (i._onClose = () => {
589
+ c || (bt(t, e), l());
590
+ }), a.addEventListener("message", d), a.start(), _t(t, e, u), i;
591
+ }, Et = /* @__PURE__ */ t({
592
+ box: () => jt,
593
+ isType: () => At,
594
+ revive: () => Mt,
595
+ type: () => Dt
596
+ }), Dt = "promise", Ot = (e) => e instanceof Promise, kt = /* @__PURE__ */ new Set(), At = (e) => e instanceof Promise, jt = (e, t) => {
597
+ if (!Ot(e)) throw TypeError("Expected Promise");
598
+ let { localPort: n, boxedRemote: r } = K(t), i = (e) => {
599
599
  n.postMessage(e), n.close();
600
600
  };
601
601
  return e.then((e) => i({
@@ -605,17 +605,17 @@ var ue = (e) => {
605
605
  type: "reject",
606
606
  error: e
607
607
  })), {
608
- ...F,
609
- type: Tt,
608
+ ...P,
609
+ type: Dt,
610
610
  port: r
611
611
  };
612
- }, At = (e, t) => {
613
- let n = q(e.port, t);
614
- Dt.add(n);
612
+ }, Mt = (e, t) => {
613
+ let n = G(e.port, t);
614
+ kt.add(n);
615
615
  let r = "portId" in e.port;
616
616
  return new Promise((e, i) => {
617
617
  let a, o = () => {
618
- n.close(), Dt.delete(n), a?.();
618
+ n.close(), kt.delete(n), a?.();
619
619
  };
620
620
  if (r && L(t)) {
621
621
  i(/* @__PURE__ */ Error("osra: connection closed")), o();
@@ -627,15 +627,15 @@ var ue = (e) => {
627
627
  t.type === "resolve" ? e(t.data) : i(t.error), o();
628
628
  }, { once: !0 }), n.start();
629
629
  });
630
- }, jt = /* @__PURE__ */ t({
631
- box: () => Y,
632
- isType: () => Ft,
633
- revive: () => X,
634
- type: () => Mt
635
- }), Mt = "function", Nt = /* @__PURE__ */ new Set(), Pt = (e) => {
630
+ }, Nt = /* @__PURE__ */ t({
631
+ box: () => q,
632
+ isType: () => Lt,
633
+ revive: () => J,
634
+ type: () => Pt
635
+ }), Pt = "function", Ft = /* @__PURE__ */ new Set(), It = (e) => {
636
636
  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(() => {}));
637
- }, Ft = (e) => typeof e == "function", Y = (e, t) => {
638
- let { port1: n, port2: r } = new W();
637
+ }, Lt = (e) => typeof e == "function", q = (e, t) => {
638
+ let { port1: n, port2: r } = new H();
639
639
  return n.addEventListener("message", ({ data: n }) => {
640
640
  let [r, i] = n;
641
641
  (async () => {
@@ -652,7 +652,7 @@ var ue = (e) => {
652
652
  };
653
653
  }
654
654
  if (L(t)) {
655
- n.type === "return" && Pt(n.value);
655
+ n.type === "return" && It(n.value);
656
656
  try {
657
657
  r.close();
658
658
  } catch {}
@@ -660,36 +660,36 @@ var ue = (e) => {
660
660
  }
661
661
  let a = (() => {
662
662
  try {
663
- return Q(n, t);
663
+ return Z(n, t);
664
664
  } catch (e) {
665
- return Q({
665
+ return Z({
666
666
  type: "throw",
667
667
  error: e
668
668
  }, t);
669
669
  }
670
670
  })();
671
- r.postMessage(a, H(a)), queueMicrotask(() => {
671
+ r.postMessage(a, B(a)), queueMicrotask(() => {
672
672
  try {
673
673
  r.close();
674
674
  } catch {}
675
675
  });
676
676
  })();
677
677
  }), n.start(), {
678
- ...F,
679
- type: Mt,
680
- port: xt(r, t)
678
+ ...P,
679
+ type: Pt,
680
+ port: Ct(r, t)
681
681
  };
682
- }, X = (e, t) => {
683
- let n = q(e.port, t);
682
+ }, J = (e, t) => {
683
+ let n = G(e.port, t);
684
684
  return ((...e) => new Promise((r, i) => {
685
685
  if (L(t)) {
686
686
  i(/* @__PURE__ */ Error("osra: connection closed"));
687
687
  return;
688
688
  }
689
- let { port1: a, port2: o } = new W();
690
- Nt.add(a);
689
+ let { port1: a, port2: o } = new H();
690
+ Ft.add(a);
691
691
  let s, c = () => {
692
- a.close(), Nt.delete(a), s?.();
692
+ a.close(), Ft.delete(a), s?.();
693
693
  };
694
694
  s = I(t, () => {
695
695
  i(/* @__PURE__ */ Error("osra: connection closed")), c();
@@ -697,17 +697,17 @@ var ue = (e) => {
697
697
  let t = e;
698
698
  t.type === "return" ? r(t.value) : i(t.error), c();
699
699
  }, { once: !0 }), a.start();
700
- let l = V(() => Q([o, e], t));
701
- n.postMessage(l, H(l));
700
+ let l = z(() => Z([o, e], t));
701
+ n.postMessage(l, B(l));
702
702
  }));
703
- }, It = /* @__PURE__ */ t({
703
+ }, Rt = /* @__PURE__ */ t({
704
704
  MAX_CREDIT_WINDOW: () => 64,
705
- box: () => Ht,
706
- isType: () => Rt,
707
- revive: () => Kt,
708
- type: () => Lt
709
- }), Lt = "readableStream", Rt = (e) => e instanceof ReadableStream, zt = 2, Bt = 8, Vt = 4 * 1024 * 1024, Ht = (e, t) => {
710
- let { localPort: n, boxedRemote: r } = J(t), i = e.getReader(), a = Ze(), o = 0, s = !1, c = !1, l = (e) => {
705
+ box: () => Wt,
706
+ isType: () => Bt,
707
+ revive: () => Jt,
708
+ type: () => zt
709
+ }), zt = "readableStream", Bt = (e) => e instanceof ReadableStream, Vt = 2, Ht = 8, Ut = 4 * 1024 * 1024, Wt = (e, t) => {
710
+ let { localPort: n, boxedRemote: r } = K(t), i = e.getReader(), a = $e(), o = 0, s = !1, c = !1, l = (e) => {
711
711
  c = !0;
712
712
  try {
713
713
  n.postMessage(e);
@@ -732,7 +732,7 @@ var ue = (e) => {
732
732
  return;
733
733
  }
734
734
  o--;
735
- let t = a ? Qe(e.value) : e.value;
735
+ let t = a ? et(e.value) : e.value;
736
736
  try {
737
737
  n.postMessage({
738
738
  type: "chunk",
@@ -754,13 +754,13 @@ var ue = (e) => {
754
754
  }), n.addEventListener("close", () => {
755
755
  c || (c = !0, i.cancel(/* @__PURE__ */ Error("osra: connection closed")).catch(() => {}));
756
756
  }, { once: !0 }), n.start(), {
757
- ...F,
758
- type: Lt,
757
+ ...P,
758
+ type: zt,
759
759
  credit: !0,
760
760
  port: r
761
761
  };
762
- }, Ut = (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, Wt = (e) => {
763
- let t = !1, n = 0, r, i = [], a = !1, o = !1, s, c, l = () => r === void 0 ? Bt : Math.max(zt, Math.min(64, Math.floor(Vt / r))), u = () => {
762
+ }, Gt = (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, Kt = (e) => {
763
+ let t = !1, n = 0, r, i = [], a = !1, o = !1, s, c, l = () => r === void 0 ? Ht : Math.max(Vt, Math.min(64, Math.floor(Ut / r))), u = () => {
764
764
  let t = l(), r = n + i.length;
765
765
  if (r > t / 2) return;
766
766
  let a = t - r;
@@ -786,7 +786,7 @@ var ue = (e) => {
786
786
  return;
787
787
  }
788
788
  n--;
789
- let a = Ut(o.value);
789
+ let a = Gt(o.value);
790
790
  if (a !== void 0 && (r = r === void 0 ? a : r * .875 + a * .125), c) {
791
791
  let e = c;
792
792
  c = void 0, e.controller.enqueue(o.value), e.resolve();
@@ -835,7 +835,7 @@ var ue = (e) => {
835
835
  }), queueMicrotask(() => e.close());
836
836
  }
837
837
  });
838
- }, Gt = (e) => {
838
+ }, qt = (e) => {
839
839
  let t = !1;
840
840
  return new ReadableStream({
841
841
  start: (n) => {
@@ -872,16 +872,16 @@ var ue = (e) => {
872
872
  }), queueMicrotask(() => e.close());
873
873
  }
874
874
  });
875
- }, Kt = (e, t) => {
876
- let n = q(e.port, t);
877
- return n.start(), e.credit ? Wt(n) : Gt(n);
878
- }, qt = /* @__PURE__ */ t({
879
- box: () => Xt,
880
- isType: () => Yt,
881
- revive: () => Zt,
882
- type: () => Jt
883
- }), Jt = "writableStream", Yt = (e) => e instanceof WritableStream, Xt = (e, t) => {
884
- 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({
875
+ }, Jt = (e, t) => {
876
+ let n = G(e.port, t);
877
+ return n.start(), e.credit ? Kt(n) : qt(n);
878
+ }, Yt = /* @__PURE__ */ t({
879
+ box: () => Qt,
880
+ isType: () => Zt,
881
+ revive: () => $t,
882
+ type: () => Xt
883
+ }), Xt = "writableStream", Zt = (e) => e instanceof WritableStream, Qt = (e, t) => {
884
+ let { localPort: n, boxedRemote: r } = K(t), i = e.getWriter(), a = !1, o = (e, t) => e.then(() => n.postMessage({ type: "ack" })).catch((e) => n.postMessage({
885
885
  type: "err",
886
886
  error: e?.message ?? String(e)
887
887
  })).then(() => {
@@ -897,13 +897,13 @@ var ue = (e) => {
897
897
  }), n.addEventListener("close", () => {
898
898
  a || (a = !0, i.abort(/* @__PURE__ */ Error("osra: connection closed")).catch(() => {}));
899
899
  }, { once: !0 }), n.start(), {
900
- ...F,
901
- type: Jt,
900
+ ...P,
901
+ type: Xt,
902
902
  port: r,
903
- ...Ze() ? { transferChunks: !0 } : {}
903
+ ...$e() ? { transferChunks: !0 } : {}
904
904
  };
905
- }, Zt = (e, t) => {
906
- let n = q(e.port, t);
905
+ }, $t = (e, t) => {
906
+ let n = G(e.port, t);
907
907
  n.start();
908
908
  let r = /* @__PURE__ */ new Set(), i = !1;
909
909
  n.addEventListener("close", () => {
@@ -930,7 +930,7 @@ var ue = (e) => {
930
930
  return new WritableStream({
931
931
  write: (e) => o({
932
932
  type: "write",
933
- chunk: s ? Qe(e) : e
933
+ chunk: s ? et(e) : e
934
934
  }),
935
935
  close: () => o({ type: "close" }),
936
936
  abort: (e) => o({
@@ -938,19 +938,19 @@ var ue = (e) => {
938
938
  reason: e
939
939
  })
940
940
  });
941
- }, Qt = /* @__PURE__ */ t({
942
- box: () => nn,
943
- isType: () => en,
944
- revive: () => rn,
945
- type: () => $t
946
- }), $t = "abortSignal", en = (e) => e instanceof AbortSignal, tn = /* @__PURE__ */ new WeakMap(), nn = (e, t) => {
941
+ }, en = /* @__PURE__ */ t({
942
+ box: () => an,
943
+ isType: () => nn,
944
+ revive: () => on,
945
+ type: () => tn
946
+ }), tn = "abortSignal", nn = (e) => e instanceof AbortSignal, rn = /* @__PURE__ */ new WeakMap(), an = (e, t) => {
947
947
  if (e.aborted) return {
948
- ...F,
949
- type: $t,
948
+ ...P,
949
+ type: tn,
950
950
  aborted: !0,
951
- reason: Q(e.reason, t)
951
+ reason: Z(e.reason, t)
952
952
  };
953
- let { localPort: n, boxedRemote: r } = J(t), i = () => {
953
+ let { localPort: n, boxedRemote: r } = K(t), i = () => {
954
954
  n.postMessage({
955
955
  type: "abort",
956
956
  reason: e.reason
@@ -959,36 +959,36 @@ var ue = (e) => {
959
959
  e.removeEventListener("abort", i), n.close();
960
960
  });
961
961
  return e.addEventListener("abort", i, { once: !0 }), {
962
- ...F,
963
- type: $t,
962
+ ...P,
963
+ type: tn,
964
964
  aborted: !1,
965
965
  reason: void 0,
966
966
  port: r
967
967
  };
968
- }, rn = (e, t) => {
968
+ }, on = (e, t) => {
969
969
  let n = new AbortController();
970
- if (e.aborted || e.port === void 0) return n.abort($(e.reason, t)), n.signal;
971
- let r = q(e.port, t);
972
- return tn.set(n.signal, r), r.start(), r.addEventListener("message", ({ data: e }) => {
973
- e.type === "abort" && (n.abort($(e.reason, t)), tn.delete(n.signal), r.close());
970
+ if (e.aborted || e.port === void 0) return n.abort(Q(e.reason, t)), n.signal;
971
+ let r = G(e.port, t);
972
+ return rn.set(n.signal, r), r.start(), r.addEventListener("message", ({ data: e }) => {
973
+ e.type === "abort" && (n.abort(Q(e.reason, t)), rn.delete(n.signal), r.close());
974
974
  }), n.signal;
975
- }, an = /* @__PURE__ */ t({
976
- box: () => cn,
977
- isType: () => sn,
978
- revive: () => ln,
979
- type: () => on
980
- }), on = "response", sn = (e) => e instanceof Response, cn = (e, t) => ({
981
- ...F,
982
- type: on,
975
+ }, sn = /* @__PURE__ */ t({
976
+ box: () => un,
977
+ isType: () => ln,
978
+ revive: () => dn,
979
+ type: () => cn
980
+ }), cn = "response", ln = (e) => e instanceof Response, un = (e, t) => ({
981
+ ...P,
982
+ type: cn,
983
983
  status: e.status,
984
984
  statusText: e.statusText,
985
- headers: Ae(e.headers, t),
986
- body: e.body ? Ht(e.body, t) : null,
985
+ headers: je(e.headers, t),
986
+ body: e.body ? Wt(e.body, t) : null,
987
987
  url: e.url,
988
988
  redirected: e.redirected
989
- }), ln = (e, t) => {
989
+ }), dn = (e, t) => {
990
990
  if (e.status === 0) return Response.error();
991
- let n = je(e.headers, t), r = e.body ? Kt(e.body, t) : null, i = e.status === 101 || e.status === 204 || e.status === 205 || e.status === 304;
991
+ let n = Me(e.headers, t), r = e.body ? Jt(e.body, t) : null, i = e.status === 101 || e.status === 204 || e.status === 205 || e.status === 304;
992
992
  r && i && r.cancel().catch(() => {});
993
993
  let a = new Response(i ? null : r, {
994
994
  status: e.status,
@@ -1002,18 +1002,18 @@ var ue = (e) => {
1002
1002
  value: !0,
1003
1003
  configurable: !0
1004
1004
  }), a;
1005
- }, un = /* @__PURE__ */ t({
1006
- box: () => pn,
1007
- isType: () => fn,
1008
- revive: () => mn,
1009
- type: () => dn
1010
- }), dn = "request", fn = (e) => e instanceof Request, pn = (e, t) => ({
1011
- ...F,
1012
- type: dn,
1005
+ }, fn = /* @__PURE__ */ t({
1006
+ box: () => hn,
1007
+ isType: () => mn,
1008
+ revive: () => gn,
1009
+ type: () => pn
1010
+ }), pn = "request", mn = (e) => e instanceof Request, hn = (e, t) => ({
1011
+ ...P,
1012
+ type: pn,
1013
1013
  method: e.method,
1014
1014
  url: e.url,
1015
- headers: Ae(e.headers, t),
1016
- body: e.body ? Ht(e.body, t) : null,
1015
+ headers: je(e.headers, t),
1016
+ body: e.body ? Wt(e.body, t) : null,
1017
1017
  credentials: e.credentials,
1018
1018
  cache: e.cache,
1019
1019
  mode: e.mode,
@@ -1022,9 +1022,9 @@ var ue = (e) => {
1022
1022
  referrerPolicy: e.referrerPolicy,
1023
1023
  integrity: e.integrity,
1024
1024
  keepalive: e.keepalive,
1025
- signal: nn(e.signal, t)
1026
- }), mn = (e, t) => {
1027
- let n = je(e.headers, t), r = {
1025
+ signal: an(e.signal, t)
1026
+ }), gn = (e, t) => {
1027
+ let n = Me(e.headers, t), r = {
1028
1028
  method: e.method,
1029
1029
  headers: n,
1030
1030
  credentials: e.credentials,
@@ -1034,154 +1034,136 @@ var ue = (e) => {
1034
1034
  referrerPolicy: e.referrerPolicy,
1035
1035
  integrity: e.integrity,
1036
1036
  keepalive: e.keepalive,
1037
- signal: rn(e.signal, t)
1037
+ signal: on(e.signal, t)
1038
1038
  };
1039
- return e.mode !== "navigate" && (r.mode = e.mode), e.body && (r.body = Kt(e.body, t), r.duplex = "half"), new Request(e.url, r);
1040
- }, hn = /* @__PURE__ */ t({
1041
- box: () => On,
1042
- boxByReference: () => kn,
1043
- identity: () => Sn,
1044
- isType: () => En,
1045
- revive: () => An,
1046
- type: () => Z
1047
- }), Z = "identity", gn = Symbol.for("osra.identity"), _n = (e) => e !== null && (typeof e == "object" || typeof e == "function"), vn = (e) => {
1039
+ return e.mode !== "navigate" && (r.mode = e.mode), e.body && (r.body = Jt(e.body, t), r.duplex = "half"), new Request(e.url, r);
1040
+ }, _n = /* @__PURE__ */ t({
1041
+ box: () => Dn,
1042
+ boxByReference: () => On,
1043
+ identity: () => xn,
1044
+ isType: () => wn,
1045
+ revive: () => kn,
1046
+ type: () => Y
1047
+ }), Y = "identity", vn = (e) => e !== null && (typeof e == "object" || typeof e == "function"), yn = (e) => {
1048
1048
  if (e === null) return !1;
1049
1049
  let t = typeof e;
1050
1050
  return t === "object" || t === "function" ? !0 : t === "symbol" ? Symbol.keyFor(e) === void 0 : !1;
1051
- }, yn = (e) => _n(e) && gn in e && e[gn] === !0, bn = /* @__PURE__ */ new WeakMap(), xn = (e) => {
1052
- if (yn(e)) return e;
1053
- let t = bn.get(e);
1054
- if (t) return t;
1055
- let n = {
1056
- [gn]: !0,
1057
- value: e
1058
- };
1059
- return bn.set(e, n), n;
1060
- }, Sn = (e) => _n(e) ? xn(e) : e, Cn = /* @__PURE__ */ new WeakMap(), wn = (e) => {
1061
- let t = Cn.get(e);
1051
+ }, X = /* @__PURE__ */ new WeakMap(), bn = (e) => {
1052
+ let t = X.get(e);
1053
+ if (t !== void 0) return t;
1054
+ let n = globalThis.crypto.randomUUID();
1055
+ return X.set(e, n), n;
1056
+ }, xn = (e) => (vn(e) && bn(e), e), Sn = /* @__PURE__ */ new WeakMap(), Cn = (e) => {
1057
+ let t = Sn.get(e);
1062
1058
  if (t) return t;
1063
- let n = /* @__PURE__ */ new WeakMap(), r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new WeakMap(), o = {
1064
- sendIds: n,
1065
- idToSent: r,
1066
- sendRegistry: new FinalizationRegistry((t) => {
1067
- r.delete(t);
1068
- try {
1059
+ let n = /* @__PURE__ */ new Map(), r = {
1060
+ idToLocal: n,
1061
+ pins: /* @__PURE__ */ new Map(),
1062
+ aliasIds: /* @__PURE__ */ new WeakMap(),
1063
+ disposeRegistry: new FinalizationRegistry((t) => {
1064
+ if (n.delete(t), !L(e)) try {
1069
1065
  e.sendMessage({
1070
1066
  type: "identity-dispose",
1071
1067
  remoteUuid: e.remoteUuid,
1072
1068
  id: t
1073
1069
  });
1074
1070
  } catch {}
1075
- }),
1076
- receiveCache: i,
1077
- revivedToId: a,
1078
- listenerInstalled: !1
1071
+ })
1079
1072
  };
1080
- return Cn.set(e, o), Tn(e, o), I(e, () => {
1081
- o.receiveCache.clear(), o.idToSent.clear();
1082
- }), o;
1083
- }, Tn = (e, t) => {
1084
- t.listenerInstalled || (t.listenerInstalled = !0, e.eventTarget.addEventListener("message", ({ detail: e }) => {
1085
- if (e?.type !== "identity-dispose") return;
1086
- let n = t.receiveCache.get(e.id);
1087
- t.receiveCache.delete(e.id), n !== void 0 && vn(n) && t.revivedToId.delete(n);
1088
- }));
1089
- }, En = (e) => yn(e), Dn = (e, t) => {
1090
- let n = t.sendIds.get(e);
1091
- if (n !== void 0) return {
1092
- id: n,
1093
- isExisting: !0
1073
+ return Sn.set(e, r), e.eventTarget.addEventListener("message", ({ detail: e }) => {
1074
+ e?.type === "identity-dispose" && (r.pins.delete(e.id), r.idToLocal.delete(e.id));
1075
+ }), I(e, () => {
1076
+ r.pins.clear(), r.idToLocal.clear();
1077
+ }), r;
1078
+ }, wn = (e) => vn(e) && X.has(e), Tn = (e, t) => {
1079
+ let n = t.aliasIds.get(e);
1080
+ if (n !== void 0) return n;
1081
+ let r = bn(e), i = t.idToLocal.get(r);
1082
+ if (i === void 0 || i.deref() === e) return r;
1083
+ let a = globalThis.crypto.randomUUID();
1084
+ return t.aliasIds.set(e, a), a;
1085
+ }, En = (e, t, n) => {
1086
+ let r = Tn(e, n);
1087
+ if (n.idToLocal.has(r)) return {
1088
+ ...P,
1089
+ type: Y,
1090
+ id: r
1094
1091
  };
1095
- let r = t.revivedToId.get(e);
1096
- if (r !== void 0) return {
1092
+ let i = t();
1093
+ return n.idToLocal.set(r, new WeakRef(e)), n.disposeRegistry.register(e, r, e), Or(() => {}, () => {
1094
+ n.idToLocal.delete(r), n.disposeRegistry.unregister(e);
1095
+ }), {
1096
+ ...P,
1097
+ type: Y,
1097
1098
  id: r,
1098
- isExisting: !0
1099
- };
1100
- let i = globalThis.crypto.randomUUID();
1101
- return t.sendIds.set(e, i), t.idToSent.set(i, new WeakRef(e)), t.sendRegistry.register(e, i), {
1102
- id: i,
1103
- isExisting: !1
1104
- };
1105
- }, On = (e, t) => {
1106
- let n = wn(t), r = e.value, i = Q(r, t);
1107
- if (!vn(r)) return {
1108
- ...F,
1109
- type: Z,
1110
- id: globalThis.crypto.randomUUID(),
1111
- inner: i
1112
- };
1113
- let { id: a, isExisting: o } = Dn(r, n);
1114
- return o ? {
1115
- ...F,
1116
- type: Z,
1117
- id: a
1118
- } : {
1119
- ...F,
1120
- type: Z,
1121
- id: a,
1122
1099
  inner: i
1123
1100
  };
1124
- }, kn = (e, t, n) => {
1125
- let { id: r, isExisting: i } = Dn(e, wn(n));
1126
- return i ? {
1127
- ...F,
1128
- type: Z,
1129
- id: r
1130
- } : {
1131
- ...F,
1132
- type: Z,
1133
- id: r,
1134
- inner: t
1101
+ }, Dn = (e, t) => {
1102
+ let n = Cn(t), r = () => Mr(e, t, Y);
1103
+ return yn(e) ? En(e, r, n) : {
1104
+ ...P,
1105
+ type: Y,
1106
+ id: globalThis.crypto.randomUUID(),
1107
+ inner: r()
1135
1108
  };
1136
- }, An = (e, t) => {
1137
- let n = wn(t), r = n.receiveCache.get(e.id);
1109
+ }, On = (e, t, n) => En(e, () => t, Cn(n)), kn = (e, t) => {
1110
+ let n = Cn(t);
1111
+ if (n.pins.has(e.id)) return n.pins.get(e.id);
1112
+ let r = n.idToLocal.get(e.id)?.deref();
1138
1113
  if (r !== void 0) return r;
1139
- let i = n.idToSent.get(e.id)?.deref();
1140
- if (i !== void 0) return i;
1141
- if (!("inner" in e) || e.inner === void 0) throw Error(`osra identity: received id=${e.id} with no inner payload and no cached value`);
1142
- let a = $(e.inner, t);
1143
- return n.receiveCache.set(e.id, a), vn(a) && n.revivedToId.set(a, e.id), a;
1144
- }, jn = /* @__PURE__ */ t({
1145
- box: () => Nn,
1146
- isType: () => Mn,
1147
- revive: () => Pn,
1114
+ if (!("inner" in e) || e.inner === void 0) {
1115
+ try {
1116
+ t.sendMessage({
1117
+ type: "identity-dispose",
1118
+ remoteUuid: t.remoteUuid,
1119
+ id: e.id
1120
+ });
1121
+ } catch {}
1122
+ throw Error(`osra identity: received id=${e.id} with no inner payload and nothing local to resolve it to`);
1123
+ }
1124
+ let i = Q(e.inner, t);
1125
+ return n.pins.set(e.id, i), yn(i) && (X.has(i) || X.set(i, e.id), n.idToLocal.set(e.id, new WeakRef(i))), i;
1126
+ }, An = /* @__PURE__ */ t({
1127
+ box: () => Mn,
1128
+ isType: () => jn,
1129
+ revive: () => Nn,
1148
1130
  type: () => "map"
1149
- }), Mn = (e) => e instanceof Map, Nn = (e, t) => ({
1150
- ...F,
1131
+ }), jn = (e) => e instanceof Map, Mn = (e, t) => ({
1132
+ ...P,
1151
1133
  type: "map",
1152
- entries: Array.from(e, ([e, n]) => [Q(e, t), Q(n, t)])
1153
- }), Pn = (e, t) => new Map(e.entries.map(([e, n]) => [$(e, t), $(n, t)])), Fn = /* @__PURE__ */ t({
1154
- box: () => Ln,
1155
- isType: () => In,
1156
- revive: () => Rn,
1134
+ entries: Array.from(e, ([e, n]) => [Z(e, t), Z(n, t)])
1135
+ }), Nn = (e, t) => new Map(e.entries.map(([e, n]) => [Q(e, t), Q(n, t)])), Pn = /* @__PURE__ */ t({
1136
+ box: () => In,
1137
+ isType: () => Fn,
1138
+ revive: () => Ln,
1157
1139
  type: () => "set"
1158
- }), In = (e) => e instanceof Set, Ln = (e, t) => ({
1159
- ...F,
1140
+ }), Fn = (e) => e instanceof Set, In = (e, t) => ({
1141
+ ...P,
1160
1142
  type: "set",
1161
- values: Array.from(e, (e) => Q(e, t))
1162
- }), Rn = (e, t) => new Set(e.values.map((e) => $(e, t))), zn = /* @__PURE__ */ t({
1163
- box: () => Hn,
1164
- isType: () => Vn,
1165
- revive: () => Un,
1166
- type: () => Bn
1167
- }), Bn = "bigint", Vn = (e) => typeof e == "bigint", Hn = (e, t) => ({
1168
- ...F,
1169
- type: Bn,
1143
+ values: Array.from(e, (e) => Z(e, t))
1144
+ }), Ln = (e, t) => new Set(e.values.map((e) => Q(e, t))), Rn = /* @__PURE__ */ t({
1145
+ box: () => Vn,
1146
+ isType: () => Bn,
1147
+ revive: () => Hn,
1148
+ type: () => zn
1149
+ }), zn = "bigint", Bn = (e) => typeof e == "bigint", Vn = (e, t) => ({
1150
+ ...P,
1151
+ type: zn,
1170
1152
  value: e.toString()
1171
- }), Un = (e, t) => BigInt(e.value), Wn = /* @__PURE__ */ t({
1172
- box: () => qn,
1173
- isType: () => Kn,
1174
- revive: () => Jn,
1175
- type: () => Gn
1176
- }), Gn = "event", Kn = (e) => e instanceof Event, qn = (e, t) => ({
1177
- ...F,
1178
- type: Gn,
1153
+ }), Hn = (e, t) => BigInt(e.value), Un = /* @__PURE__ */ t({
1154
+ box: () => Kn,
1155
+ isType: () => Gn,
1156
+ revive: () => qn,
1157
+ type: () => Wn
1158
+ }), Wn = "event", Gn = (e) => e instanceof Event, Kn = (e, t) => ({
1159
+ ...P,
1160
+ type: Wn,
1179
1161
  eventType: e.type,
1180
1162
  bubbles: e.bubbles,
1181
1163
  cancelable: e.cancelable,
1182
1164
  composed: e.composed,
1183
- ...e instanceof CustomEvent ? { detail: Q(e.detail, t) } : {}
1184
- }), Jn = (e, t) => {
1165
+ ...e instanceof CustomEvent ? { detail: Z(e.detail, t) } : {}
1166
+ }), qn = (e, t) => {
1185
1167
  let n = {
1186
1168
  bubbles: e.bubbles,
1187
1169
  cancelable: e.cancelable,
@@ -1189,102 +1171,102 @@ var ue = (e) => {
1189
1171
  };
1190
1172
  return "detail" in e ? new CustomEvent(e.eventType, {
1191
1173
  ...n,
1192
- detail: $(e.detail, t)
1174
+ detail: Q(e.detail, t)
1193
1175
  }) : new Event(e.eventType, n);
1194
- }, Yn = /* @__PURE__ */ t({
1195
- box: () => Qn,
1196
- isType: () => Zn,
1197
- revive: () => nr,
1198
- type: () => Xn
1199
- }), Xn = "eventTarget", Zn = (e) => e instanceof EventTarget, Qn = (e, t) => {
1176
+ }, Jn = /* @__PURE__ */ t({
1177
+ box: () => Zn,
1178
+ isType: () => Xn,
1179
+ revive: () => tr,
1180
+ type: () => Yn
1181
+ }), Yn = "eventTarget", Xn = (e) => e instanceof EventTarget, Zn = (e, t) => {
1200
1182
  let n = [], r = (e) => typeof e == "boolean" ? e : !!e?.capture;
1201
1183
  return {
1202
- ...F,
1203
- type: Xn,
1204
- addListener: Y((t, i, a) => {
1184
+ ...P,
1185
+ type: Yn,
1186
+ addListener: q((t, i, a) => {
1205
1187
  n.push({
1206
1188
  eventType: t,
1207
1189
  listener: i,
1208
1190
  capture: r(a)
1209
1191
  }), e.addEventListener(t, i, a);
1210
1192
  }, t),
1211
- removeListener: Y((t, i, a) => {
1193
+ removeListener: q((t, i, a) => {
1212
1194
  let o = r(a), s = n.findIndex((e) => e.eventType === t && e.listener === i && e.capture === o);
1213
1195
  s !== -1 && n.splice(s, 1), e.removeEventListener(t, i, a);
1214
1196
  }, t),
1215
- removeAllListeners: Y(() => {
1197
+ removeAllListeners: q(() => {
1216
1198
  for (let { eventType: t, listener: r, capture: i } of n.splice(0)) e.removeEventListener(t, r, { capture: i });
1217
1199
  }, t)
1218
1200
  };
1219
- }, $n = /* @__PURE__ */ new WeakMap(), er = (e) => {
1201
+ }, Qn = /* @__PURE__ */ new WeakMap(), $n = (e) => {
1220
1202
  if (typeof e == "function") return e;
1221
- let t = $n.get(e);
1222
- return t || $n.set(e, t = (t) => e.handleEvent(t)), t;
1223
- }, tr = (e, t, n, r) => e.find((e) => e.eventType === t && e.listener === n && e.capture === r), nr = (e, t) => {
1224
- let n = X(e.addListener, t), r = X(e.removeListener, t), i = X(e.removeAllListeners, t), a = new EventTarget(), o = [], s = (e) => {
1203
+ let t = Qn.get(e);
1204
+ return t || Qn.set(e, t = (t) => e.handleEvent(t)), t;
1205
+ }, er = (e, t, n, r) => e.find((e) => e.eventType === t && e.listener === n && e.capture === r), tr = (e, t) => {
1206
+ let n = J(e.addListener, t), r = J(e.removeListener, t), i = J(e.removeAllListeners, t), a = new EventTarget(), o = [], s = (e) => {
1225
1207
  let t = o.indexOf(e);
1226
1208
  t !== -1 && o.splice(t, 1);
1227
1209
  };
1228
1210
  return Object.defineProperty(a, "addEventListener", { value: (e, t, r) => {
1229
1211
  if (t === null) return;
1230
- let i = er(t), a = typeof r == "boolean" ? r : !!r?.capture;
1231
- if (tr(o, e, i, a)) return;
1212
+ let i = $n(t), a = typeof r == "boolean" ? r : !!r?.capture;
1213
+ if (er(o, e, i, a)) return;
1232
1214
  let c = typeof r == "object" && r?.once ? (e) => (s(l), i(e)) : i, l = {
1233
1215
  eventType: e,
1234
1216
  listener: i,
1235
1217
  capture: a,
1236
1218
  wire: c
1237
1219
  };
1238
- o.push(l), (typeof r == "object" ? r?.signal : void 0)?.addEventListener("abort", () => s(l), { once: !0 }), n(e, Sn(c), r).catch(() => {});
1220
+ o.push(l), (typeof r == "object" ? r?.signal : void 0)?.addEventListener("abort", () => s(l), { once: !0 }), n(e, xn(c), r).catch(() => {});
1239
1221
  } }), Object.defineProperty(a, "removeEventListener", { value: (e, t, n) => {
1240
1222
  if (t === null) return;
1241
- let i = er(t), a = typeof n == "boolean" ? n : !!n?.capture, c = tr(o, e, i, a);
1242
- c && (s(c), r(e, Sn(c.wire), { capture: a }).catch(() => {}));
1243
- } }), G(a, () => {
1223
+ let i = $n(t), a = typeof n == "boolean" ? n : !!n?.capture, c = er(o, e, i, a);
1224
+ c && (s(c), r(e, xn(c.wire), { capture: a }).catch(() => {}));
1225
+ } }), U(a, () => {
1244
1226
  i().catch(() => {});
1245
1227
  }), a;
1246
- }, rr = /* @__PURE__ */ t({
1247
- box: () => or,
1248
- isType: () => ar,
1249
- revive: () => sr,
1250
- type: () => ir
1251
- }), ir = "symbol", ar = (e) => typeof e == "symbol", or = (e, t) => {
1228
+ }, nr = /* @__PURE__ */ t({
1229
+ box: () => ar,
1230
+ isType: () => ir,
1231
+ revive: () => or,
1232
+ type: () => rr
1233
+ }), rr = "symbol", ir = (e) => typeof e == "symbol", ar = (e, t) => {
1252
1234
  let n = Symbol.keyFor(e);
1253
- return n === void 0 ? kn(e, {
1254
- ...F,
1255
- type: ir,
1235
+ return n === void 0 ? On(e, {
1236
+ ...P,
1237
+ type: rr,
1256
1238
  description: e.description
1257
1239
  }, t) : {
1258
- ...F,
1259
- type: ir,
1240
+ ...P,
1241
+ type: rr,
1260
1242
  registryKey: n
1261
1243
  };
1262
- }, sr = (e, t) => "registryKey" in e ? Symbol.for(e.registryKey) : Symbol(e.description), cr = /* @__PURE__ */ t({
1263
- box: () => dr,
1264
- isType: () => ur,
1265
- revive: () => fr,
1266
- type: () => lr
1267
- }), lr = "asyncIterator", ur = (e) => !e || typeof e != "object" || typeof ReadableStream < "u" && e instanceof ReadableStream ? !1 : typeof e[Symbol.asyncIterator] == "function", dr = (e, t) => {
1244
+ }, or = (e, t) => "registryKey" in e ? Symbol.for(e.registryKey) : Symbol(e.description), sr = /* @__PURE__ */ t({
1245
+ box: () => ur,
1246
+ isType: () => lr,
1247
+ revive: () => dr,
1248
+ type: () => cr
1249
+ }), cr = "asyncIterator", lr = (e) => !e || typeof e != "object" || typeof ReadableStream < "u" && e instanceof ReadableStream ? !1 : typeof e[Symbol.asyncIterator] == "function", ur = (e, t) => {
1268
1250
  let n = e[Symbol.asyncIterator]();
1269
1251
  return {
1270
- ...F,
1271
- type: lr,
1272
- next: Y(((e) => n.next(e)), t),
1273
- return: Y(((e) => n.return?.(e) ?? Promise.resolve({
1252
+ ...P,
1253
+ type: cr,
1254
+ next: q(((e) => n.next(e)), t),
1255
+ return: q(((e) => n.return?.(e) ?? Promise.resolve({
1274
1256
  done: !0,
1275
1257
  value: e
1276
1258
  })), t),
1277
- throw: Y(((e) => n.throw?.(e) ?? Promise.reject(e)), t)
1259
+ throw: q(((e) => n.throw?.(e) ?? Promise.reject(e)), t)
1278
1260
  };
1279
- }, fr = (e, t) => {
1280
- let n = X(e.next, t), r = X(e.return, t), i = X(e.throw, t), a = {
1261
+ }, dr = (e, t) => {
1262
+ let n = J(e.next, t), r = J(e.return, t), i = J(e.throw, t), a = {
1281
1263
  next: (...e) => n(...e),
1282
1264
  return: (e) => r(e),
1283
1265
  throw: (e) => i(e),
1284
1266
  [Symbol.asyncIterator]: () => a
1285
1267
  };
1286
1268
  return a;
1287
- }, pr = [
1269
+ }, fr = [
1288
1270
  globalThis.File,
1289
1271
  globalThis.FileList,
1290
1272
  globalThis.RegExp,
@@ -1304,7 +1286,7 @@ var ue = (e) => {
1304
1286
  globalThis.FileSystemFileHandle,
1305
1287
  globalThis.FileSystemDirectoryHandle,
1306
1288
  globalThis.RTCCertificate
1307
- ], mr = [
1289
+ ], pr = [
1308
1290
  globalThis.CropTarget,
1309
1291
  globalThis.EncodedAudioChunk,
1310
1292
  globalThis.EncodedVideoChunk,
@@ -1315,72 +1297,72 @@ var ue = (e) => {
1315
1297
  globalThis.RTCEncodedAudioFrame,
1316
1298
  globalThis.RTCEncodedVideoFrame,
1317
1299
  globalThis.WebTransportError
1318
- ], hr = {
1300
+ ], mr = {
1319
1301
  type: "clonable",
1320
1302
  capableOnly: !0,
1321
- isType: (e) => w(e, pr) || w(e, mr),
1303
+ isType: (e) => w(e, fr) || w(e, pr),
1322
1304
  box: (e, t) => e,
1323
1305
  revive: (e, t) => e
1324
- }, gr = [
1306
+ }, hr = [
1325
1307
  globalThis.ImageBitmap,
1326
1308
  globalThis.OffscreenCanvas,
1327
1309
  globalThis.WritableStream,
1328
1310
  globalThis.TransformStream,
1329
1311
  globalThis.MediaStreamTrack,
1330
1312
  globalThis.RTCDataChannel
1331
- ], _r = [
1313
+ ], gr = [
1332
1314
  globalThis.AudioData,
1333
1315
  globalThis.VideoFrame,
1334
1316
  globalThis.MediaSourceHandle,
1335
1317
  globalThis.MIDIAccess,
1336
1318
  globalThis.WebTransportReceiveStream,
1337
1319
  globalThis.WebTransportSendStream
1338
- ], vr = {
1320
+ ], _r = {
1339
1321
  type: "transferable",
1340
1322
  capableOnly: !0,
1341
- isType: (e) => w(e, gr) || w(e, _r),
1323
+ isType: (e) => w(e, hr) || w(e, gr),
1342
1324
  box: (e, t) => e,
1343
1325
  revive: (e, t) => e
1344
- }, yr = {
1326
+ }, vr = {
1345
1327
  type: "blob",
1346
1328
  capableOnly: !0,
1347
1329
  isType: (e) => typeof Blob < "u" && e instanceof Blob,
1348
1330
  box: (e, t) => {
1349
- if (j(t.transport)) throw TypeError("osra: Blob is only supported on structured-clone transports, send an ArrayBuffer or Uint8Array instead");
1331
+ if (A(t.transport)) throw TypeError("osra: Blob is only supported on structured-clone transports, send an ArrayBuffer or Uint8Array instead");
1350
1332
  return e;
1351
1333
  },
1352
1334
  revive: (e, t) => e
1353
- }, br = (e) => {
1335
+ }, yr = (e) => {
1354
1336
  if (typeof e != "object" || !e) return !1;
1355
1337
  let t = Object.getPrototypeOf(e);
1356
1338
  return t === Object.prototype || t === null;
1357
- }, xr = [
1358
- Ge,
1359
- hn,
1360
- _e,
1361
- Se,
1362
- De,
1363
- Me,
1364
- Re,
1365
- wt,
1366
- jt,
1367
- at,
1368
- It,
1369
- qt,
1370
- Qt,
1371
- an,
1372
- un,
1373
- jn,
1374
- Fn,
1375
- zn,
1376
- rr,
1377
- Wn,
1378
- cr,
1339
+ }, br = [
1340
+ Ke,
1341
+ _n,
1342
+ ve,
1343
+ Ce,
1344
+ Oe,
1345
+ Ne,
1346
+ ze,
1347
+ Et,
1348
+ Nt,
1349
+ st,
1350
+ Rt,
1351
+ Yt,
1352
+ en,
1353
+ sn,
1354
+ fn,
1355
+ An,
1356
+ Pn,
1357
+ Rn,
1358
+ nr,
1359
+ Un,
1360
+ sr,
1379
1361
  {
1380
1362
  type: "nonFiniteNumber",
1381
1363
  isType: (e) => typeof e == "number" && !Number.isFinite(e),
1382
- box: (e, t) => j(t.transport) ? {
1383
- ...F,
1364
+ box: (e, t) => A(t.transport) ? {
1365
+ ...P,
1384
1366
  type: "nonFiniteNumber",
1385
1367
  value: String(e)
1386
1368
  } : e,
@@ -1389,20 +1371,20 @@ var ue = (e) => {
1389
1371
  {
1390
1372
  type: "undefined",
1391
1373
  isType: (e) => e === void 0,
1392
- box: (e, t) => j(t.transport) ? {
1393
- ...F,
1374
+ box: (e, t) => A(t.transport) ? {
1375
+ ...P,
1394
1376
  type: "undefined"
1395
1377
  } : e,
1396
1378
  revive: (e, t) => void 0
1397
1379
  },
1398
- hr,
1380
+ mr,
1381
+ _r,
1399
1382
  vr,
1400
- yr,
1401
- Yn,
1383
+ Jn,
1402
1384
  {
1403
1385
  type: "unclonable",
1404
1386
  isType: (e) => {
1405
- if (typeof e != "object" || !e || Array.isArray(e) || br(e)) return !1;
1387
+ if (typeof e != "object" || !e || Array.isArray(e) || yr(e)) return !1;
1406
1388
  try {
1407
1389
  return structuredClone(e), !1;
1408
1390
  } catch {
@@ -1410,44 +1392,64 @@ var ue = (e) => {
1410
1392
  }
1411
1393
  },
1412
1394
  box: (e, t) => ({
1413
- ...F,
1395
+ ...P,
1414
1396
  type: "unclonable"
1415
1397
  }),
1416
1398
  revive: (e, t) => ({})
1417
1399
  }
1418
- ], Sr = (e, t) => t.find((t) => t.isType(e)), Cr = (e, t) => t.find((t) => t.type === e.type), wr = (e) => !!e && typeof e == "object" && Object.getPrototypeOf(e) === Object.prototype, Tr = (e, t) => Array.isArray(e) ? e.map((e) => t(e)) : wr(e) ? Object.fromEntries(Object.entries(e).map(([e, n]) => [e, t(n)])) : e, Er = /* @__PURE__ */ new WeakSet(), Dr = /* @__PURE__ */ new WeakSet(), Or = (e) => e !== null && (typeof e == "object" || typeof e == "function"), Q = (e, t) => {
1419
- if (me(e)) return e;
1420
- let n = Or(e);
1400
+ ], xr = (e, t) => t.find((t) => t.type === e.type), Sr = (e) => !!e && typeof e == "object" && Object.getPrototypeOf(e) === Object.prototype, Cr = (e, t) => Array.isArray(e) ? e.map((e) => t(e)) : Sr(e) ? Object.fromEntries(Object.entries(e).map(([e, n]) => [e, t(n)])) : e, wr = /* @__PURE__ */ new WeakSet(), Tr = /* @__PURE__ */ new WeakSet(), Er = 0, Dr = [], Or = (e, t) => {
1401
+ if (Er === 0) {
1402
+ e();
1403
+ return;
1404
+ }
1405
+ Dr.push({
1406
+ commit: e,
1407
+ rollback: t
1408
+ });
1409
+ }, kr = (e) => {
1410
+ let t = Dr;
1411
+ Dr = [];
1412
+ for (let n of t) try {
1413
+ e ? n.rollback() : n.commit();
1414
+ } catch {}
1415
+ }, Ar = (e) => e !== null && (typeof e == "object" || typeof e == "function"), jr = (e, t, n) => {
1416
+ let r = t.revivableModules.find((t) => t.type !== n && t.isType(e));
1417
+ return r ? r.box(e, t) : Cr(e, (e) => Z(e, t));
1418
+ }, Z = (e, t) => {
1419
+ if (he(e)) return e;
1420
+ let n = Ar(e);
1421
1421
  if (n) {
1422
- if (Er.has(e)) throw TypeError("osra: cannot serialize a circular structure - break the cycle or send the container by reference");
1423
- Er.add(e);
1422
+ if (wr.has(e)) throw TypeError("osra: cannot serialize a circular structure - break the cycle or send the container by reference");
1423
+ wr.add(e);
1424
1424
  }
1425
+ Er++;
1426
+ let r = !0;
1425
1427
  try {
1426
- let n = Sr(e, t.revivableModules);
1427
- return n ? n.box(e, t) : Tr(e, (e) => Q(e, t));
1428
+ let n = jr(e, t);
1429
+ return r = !1, n;
1428
1430
  } finally {
1429
- n && Er.delete(e);
1431
+ n && wr.delete(e), Er--, Er === 0 && kr(r);
1430
1432
  }
1431
- }, $ = (e, t) => {
1432
- let n = Or(e);
1433
+ }, Mr = (e, t, n) => jr(e, t, n), Q = (e, t) => {
1434
+ let n = Ar(e);
1433
1435
  if (n) {
1434
- if (Dr.has(e)) throw TypeError("osra: cannot revive a circular structure");
1435
- Dr.add(e);
1436
+ if (Tr.has(e)) throw TypeError("osra: cannot revive a circular structure");
1437
+ Tr.add(e);
1436
1438
  }
1437
1439
  try {
1438
- if (me(e)) {
1439
- let n = Cr(e, t.revivableModules);
1440
+ if (he(e)) {
1441
+ let n = xr(e, t.revivableModules);
1440
1442
  if (n) return n.revive(e, t);
1441
1443
  }
1442
- return Tr(e, (e) => $(e, t));
1444
+ return Cr(e, (e) => Q(e, t));
1443
1445
  } finally {
1444
- n && Dr.delete(e);
1446
+ n && Tr.delete(e);
1445
1447
  }
1446
- }, kr = /* @__PURE__ */ t({
1447
- init: () => Mr,
1448
- startBidirectionalConnection: () => jr,
1449
- type: () => Ar
1450
- }), Ar = "bidirectional", jr = ({ transport: e, value: t, remoteUuid: n, eventTarget: r, send: i, revivableModules: a }) => {
1448
+ }, Nr = /* @__PURE__ */ t({
1449
+ init: () => Ir,
1450
+ startBidirectionalConnection: () => Fr,
1451
+ type: () => Pr
1452
+ }), Pr = "bidirectional", Fr = ({ transport: e, value: t, remoteUuid: n, eventTarget: r, send: i, revivableModules: a }) => {
1451
1453
  let o = {
1452
1454
  transport: e,
1453
1455
  remoteUuid: n,
@@ -1462,13 +1464,13 @@ var ue = (e) => {
1462
1464
  }), i({
1463
1465
  type: "init",
1464
1466
  remoteUuid: n,
1465
- data: Q(t, o)
1467
+ data: Z(t, o)
1466
1468
  }), {
1467
1469
  revivableContext: o,
1468
- remoteValue: s.then((e) => $(e, o))
1470
+ remoteValue: s.then((e) => Q(e, o))
1469
1471
  };
1470
- }, Mr = (e) => {
1471
- if (!(M(e.transport) && N(e.transport))) return;
1472
+ }, Ir = (e) => {
1473
+ if (!(j(e.transport) && M(e.transport))) return;
1472
1474
  if (e.protocolEventTarget.addEventListener("message", ({ detail: { message: t, peer: n } }) => {
1473
1475
  if (t.type === "announce") {
1474
1476
  if (!t.remoteUuid) {
@@ -1496,7 +1498,7 @@ var ue = (e) => {
1496
1498
  });
1497
1499
  return;
1498
1500
  }
1499
- a = jr({
1501
+ a = Fr({
1500
1502
  transport: e.transport,
1501
1503
  value: n,
1502
1504
  remoteUuid: t.uuid,
@@ -1523,7 +1525,7 @@ var ue = (e) => {
1523
1525
  if (t.remoteUuid !== e.getUuid()) return;
1524
1526
  let n = e.connectionContexts.get(t.uuid);
1525
1527
  if (!n) return;
1526
- e.connectionContexts.delete(t.uuid), R(n.connection.revivableContext), e.rejectRemoteValue(/* @__PURE__ */ Error("osra: peer closed the connection"));
1528
+ e.connectionContexts.delete(t.uuid), Ge(n.connection.revivableContext), e.rejectRemoteValue(/* @__PURE__ */ Error("osra: peer closed the connection"));
1527
1529
  return;
1528
1530
  }
1529
1531
  if (t.remoteUuid !== e.getUuid()) return;
@@ -1541,7 +1543,7 @@ var ue = (e) => {
1541
1543
  });
1542
1544
  return;
1543
1545
  }
1544
- r = jr({
1546
+ r = Fr({
1545
1547
  transport: e.transport,
1546
1548
  value: a,
1547
1549
  remoteUuid: e.presetRemoteUuid,
@@ -1573,14 +1575,14 @@ var ue = (e) => {
1573
1575
  }
1574
1576
  };
1575
1577
  e.unregisterSignal?.addEventListener("abort", () => clearTimeout(n), { once: !0 }), r();
1576
- }, Nr = () => new EventTarget(), Pr = (e) => {
1577
- let t = P(e), n = t ? e.emit : e, r = t ? e.receive : e;
1578
+ }, Lr = () => new EventTarget(), Rr = (e) => {
1579
+ let t = N(e), n = t ? e.emit : e, r = t ? e.receive : e;
1578
1580
  return {
1579
- isJson: t && "isJson" in e && e.isJson !== void 0 ? e.isJson : n !== void 0 && j(n) || r !== void 0 && j(r),
1581
+ isJson: t && "isJson" in e && e.isJson !== void 0 ? e.isJson : n !== void 0 && A(n) || r !== void 0 && A(r),
1580
1582
  ...n === void 0 ? {} : { emit: n },
1581
1583
  ...r === void 0 ? {} : { receive: r }
1582
1584
  };
1583
- }, Fr = (e) => e ? e(xr) : xr, Ir = 32, Lr = () => {
1585
+ }, zr = (e) => e ? e(br) : br, Br = 32, Vr = () => {
1584
1586
  let e = [], t = /* @__PURE__ */ new Set(), n = !1, r = () => ({
1585
1587
  value: void 0,
1586
1588
  done: !0
@@ -1589,7 +1591,7 @@ var ue = (e) => {
1589
1591
  push: (r) => {
1590
1592
  if (!n) {
1591
1593
  if (t.size === 0) {
1592
- e.push(r), e.length > Ir && e.shift();
1594
+ e.push(r), e.length > Br && e.shift();
1593
1595
  return;
1594
1596
  }
1595
1597
  for (let e of t) {
@@ -1638,7 +1640,7 @@ var ue = (e) => {
1638
1640
  };
1639
1641
  }
1640
1642
  };
1641
- }, Rr = (e, t, n) => {
1643
+ }, Hr = (e, t, n) => {
1642
1644
  let r = e.then(n);
1643
1645
  r.catch(() => {});
1644
1646
  let i = () => {
@@ -1661,29 +1663,29 @@ var ue = (e) => {
1661
1663
  };
1662
1664
  };
1663
1665
  return Object.assign(r, { [Symbol.asyncIterator]: i });
1664
- }, zr = Symbol.for("osra.context"), Br = (e) => ({ [zr]: e }), Vr = (e) => typeof e == "object" && !!e && zr in e, Hr = (e, t, { key: n = r, origin: i = "*", originA: a = i, originB: o = i, nameA: s, nameB: c, unregisterSignal: u } = {}) => {
1665
- let d = Pr(e), p = Pr(t), m = (e, t, r, i, a) => {
1666
- !N(e) || !M(t) || l({
1666
+ }, $ = Symbol.for("osra.context"), Ur = (e) => ({ [$]: e }), Wr = (e) => typeof e == "object" && !!e && $ in e, Gr = (e, t, { key: n = r, origin: i = "*", originA: a = i, originB: o = i, nameA: s, nameB: c, unregisterSignal: u } = {}) => {
1667
+ let d = Rr(e), p = Rr(t), m = (e, t, r, i, a) => {
1668
+ !M(e) || !j(t) || l({
1667
1669
  transport: e,
1668
1670
  key: n,
1669
1671
  remoteName: a,
1670
1672
  origin: r,
1671
1673
  unregisterSignal: u,
1672
1674
  listener: (e) => {
1673
- f(t, e, i, H(e));
1675
+ f(t, e, i, B(e));
1674
1676
  }
1675
1677
  });
1676
1678
  };
1677
1679
  m(d, p, a, o, s), m(p, d, o, a, c);
1678
- }, Ur = [kr], Wr = (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 }) => {
1679
- let h = m, g = Pr(t);
1680
- if (!(M(g) && N(g))) {
1681
- let e = Lr();
1680
+ }, Kr = [Nr], qr = (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 }) => {
1681
+ let h = m, g = Rr(t);
1682
+ if (!(j(g) && M(g))) {
1683
+ let e = Vr();
1682
1684
  e.close();
1683
1685
  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"));
1684
- return t.catch(() => {}), Rr(t, e, h);
1686
+ return t.catch(() => {}), Hr(t, e, h);
1685
1687
  }
1686
- let ee = Fr(u), _ = /* @__PURE__ */ new Map(), v = /* @__PURE__ */ new Set(), y = Lr(), { promise: b, resolve: te, reject: x } = Promise.withResolvers();
1688
+ let ee = zr(u), _ = /* @__PURE__ */ new Map(), v = /* @__PURE__ */ new Set(), y = Vr(), { promise: b, resolve: te, reject: x } = Promise.withResolvers();
1687
1689
  b.catch(() => {});
1688
1690
  let S = d ?? globalThis.crypto.randomUUID(), C = (e, t = s) => {
1689
1691
  let r = {
@@ -1692,12 +1694,12 @@ var ue = (e) => {
1692
1694
  uuid: S,
1693
1695
  ...e
1694
1696
  };
1695
- f(g, r, t, H(r));
1697
+ f(g, r, t, B(r));
1696
1698
  }, ne = (e, t) => {
1697
1699
  c?.aborted || C(e, t);
1698
- }, w = Nr(), T = {
1700
+ }, w = Lr(), T = {
1699
1701
  transport: g,
1700
- valueFor: (t) => Vr(e) ? e[zr](t) : e,
1702
+ valueFor: (t) => Wr(e) ? e[$](t) : e,
1701
1703
  revivableModules: ee,
1702
1704
  connectionContexts: _,
1703
1705
  getUuid: () => S,
@@ -1714,7 +1716,7 @@ var ue = (e) => {
1714
1716
  _.delete(e), C({
1715
1717
  type: "close",
1716
1718
  remoteUuid: e
1717
- }), R(t.connection.revivableContext), x(/* @__PURE__ */ Error("osra: connection aborted"));
1719
+ }), Ge(t.connection.revivableContext), x(/* @__PURE__ */ Error("osra: connection aborted"));
1718
1720
  },
1719
1721
  claimPendingAbort: (e) => v.delete(e),
1720
1722
  addConnection: (e, t) => {
@@ -1724,7 +1726,7 @@ var ue = (e) => {
1724
1726
  };
1725
1727
  te(n), y.push(n);
1726
1728
  },
1727
- createConnectionEventTarget: Nr,
1729
+ createConnectionEventTarget: Lr,
1728
1730
  unregisterSignal: c
1729
1731
  };
1730
1732
  if (l({
@@ -1744,18 +1746,18 @@ var ue = (e) => {
1744
1746
  key: o,
1745
1747
  origin: s,
1746
1748
  unregisterSignal: c
1747
- }), c?.aborted) return x(c.reason), y.close(), Rr(b, y, h);
1749
+ }), c?.aborted) return x(c.reason), y.close(), Hr(b, y, h);
1748
1750
  c?.addEventListener("abort", () => {
1749
1751
  for (let [e, t] of _) C({
1750
1752
  type: "close",
1751
1753
  remoteUuid: e
1752
- }), R(t.connection.revivableContext);
1754
+ }), Ge(t.connection.revivableContext);
1753
1755
  _.clear(), y.close(), x(c.reason);
1754
1756
  }, { once: !0 });
1755
- for (let e of Ur) e.init(T);
1756
- return Rr(b, y, h);
1757
- }, Gr = (e, t) => Wr(e, t);
1757
+ for (let e of Kr) e.init(T);
1758
+ return Hr(b, y, h);
1759
+ }, Jr = (e, t) => qr(e, t);
1758
1760
  //#endregion
1759
- export { F as BoxBase, zr as CONTEXT, W as EventChannel, U as EventPort, i as OSRA_BOX, r as OSRA_DEFAULT_KEY, n as OSRA_KEY, Rr as asExposed, ce as assertEmitTransport, le as assertReceiveTransport, he as boxBuffer, s as checkOsraMessageKey, Ur as connections, Br as context, Lr as createConnectionQueue, Nr as createTypedEventTarget, xr as defaultRevivableModules, Gr as expose, H as getTransferableObjects, a as getWebExtensionGlobal, o as getWebExtensionRuntime, Sn as identity, Mr as init, w as instanceOfAny, re as isClonable, Vr as isContextual, de as isCustomEmitTransport, fe as isCustomReceiveTransport, P as isCustomTransport, x as isDedicatedWorker, oe as isEmitJsonOnlyTransport, M as isEmitTransport, j as isJsonOnlyTransport, ne as isOsraMessage, se as isReceiveJsonOnlyTransport, N as isReceiveTransport, me as isRevivableBox, b as isServiceWorker, y as isServiceWorkerContainer, T as isSharedArrayBuffer, S as isSharedWorker, L as isTornDown, ie as isTransferable, pe as isTransport, _ as isTypedArray, O as isWebExtensionOnConnect, k as isWebExtensionOnMessage, D as isWebExtensionPort, E as isWebExtensionRuntime, v as isWebSocket, A as isWindow, te as isWorker, Fr as mergeRevivableModules, Pr as normalizeTransport, I as onTeardown, Q as recursiveBox, $ as recursiveRevive, l as registerOsraMessageListener, Hr as relay, ge as reviveBuffer, R as runTeardown, f as sendOsraMessage, jr as startBidirectionalConnection, Wr as startConnections, G as trackGc, Xe as transfer, Ar as type, g as typedArrayToType, ee as typedArrayTypeToTypedArrayConstructor };
1761
+ export { P as BoxBase, $ as CONTEXT, H as EventChannel, V as EventPort, i as OSRA_BOX, r as OSRA_DEFAULT_KEY, n as OSRA_KEY, Hr as asExposed, le as assertEmitTransport, ue as assertReceiveTransport, ge as boxBuffer, Mr as boxClaimedValue, s as checkOsraMessageKey, Kr as connections, Ur as context, Vr as createConnectionQueue, Lr as createTypedEventTarget, br as defaultRevivableModules, Jr as expose, B as getTransferableObjects, a as getWebExtensionGlobal, o as getWebExtensionRuntime, xn as identity, Ir as init, w as instanceOfAny, re as isClonable, Wr as isContextual, fe as isCustomEmitTransport, pe as isCustomReceiveTransport, N as isCustomTransport, x as isDedicatedWorker, se as isEmitJsonOnlyTransport, j as isEmitTransport, A as isJsonOnlyTransport, ne as isOsraMessage, ce as isReceiveJsonOnlyTransport, M as isReceiveTransport, he as isRevivableBox, b as isServiceWorker, y as isServiceWorkerContainer, T as isSharedArrayBuffer, S as isSharedWorker, L as isTornDown, ie as isTransferable, me as isTransport, _ as isTypedArray, oe as isWebExtensionOnConnect, O as isWebExtensionOnMessage, D as isWebExtensionPort, E as isWebExtensionRuntime, v as isWebSocket, k as isWindow, te as isWorker, zr as mergeRevivableModules, Rr as normalizeTransport, Or as onBoxWalkSettled, I as onTeardown, Z as recursiveBox, Q as recursiveRevive, l as registerOsraMessageListener, Gr as relay, _e as reviveBuffer, Ge as runTeardown, f as sendOsraMessage, Fr as startBidirectionalConnection, qr as startConnections, U as trackGc, Qe as transfer, Pr as type, g as typedArrayToType, ee as typedArrayTypeToTypedArrayConstructor };
1760
1762
 
1761
1763
  //# sourceMappingURL=index.js.map