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