osra 0.6.3 → 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 -230
- 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 +678 -539
- 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 +2 -2
- 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,46 +205,46 @@ 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,
|
|
@@ -254,15 +254,15 @@ var de = (e) => {
|
|
|
254
254
|
globalThis.OffscreenCanvas,
|
|
255
255
|
globalThis.VideoFrame,
|
|
256
256
|
globalThis.AudioData
|
|
257
|
-
]) : !1,
|
|
258
|
-
[
|
|
257
|
+
]) : !1, Je = (e) => qe(e) ? {
|
|
258
|
+
[We]: !0,
|
|
259
259
|
value: e
|
|
260
|
-
} : e,
|
|
261
|
-
...
|
|
262
|
-
type:
|
|
263
|
-
inner:
|
|
264
|
-
degraded:
|
|
265
|
-
}),
|
|
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, [
|
|
266
266
|
globalThis.MessagePort,
|
|
267
267
|
globalThis.ReadableStream,
|
|
268
268
|
globalThis.WritableStream,
|
|
@@ -274,18 +274,18 @@ var de = (e) => {
|
|
|
274
274
|
globalThis.RTCDataChannel,
|
|
275
275
|
globalThis.WebTransportReceiveStream,
|
|
276
276
|
globalThis.WebTransportSendStream
|
|
277
|
-
]),
|
|
277
|
+
]), $e = (e) => F(e) && e.type === "transfer", z = (e) => {
|
|
278
278
|
let t = [], n = /* @__PURE__ */ new WeakSet(), r = (e, i) => {
|
|
279
|
-
if (!(!e || typeof e != "object") && !n.has(e) && (n.add(e), !
|
|
280
|
-
if (
|
|
279
|
+
if (!(!e || typeof e != "object") && !n.has(e) && (n.add(e), !T(e))) {
|
|
280
|
+
if ($e(e)) {
|
|
281
281
|
r(e.inner, i || !e.degraded);
|
|
282
282
|
return;
|
|
283
283
|
}
|
|
284
|
-
if (
|
|
284
|
+
if (Qe(e)) {
|
|
285
285
|
t.push(e);
|
|
286
286
|
return;
|
|
287
287
|
}
|
|
288
|
-
if (
|
|
288
|
+
if (ne(e)) {
|
|
289
289
|
i && t.push(e);
|
|
290
290
|
return;
|
|
291
291
|
}
|
|
@@ -299,7 +299,7 @@ var de = (e) => {
|
|
|
299
299
|
}
|
|
300
300
|
};
|
|
301
301
|
return r(e, !1), t;
|
|
302
|
-
},
|
|
302
|
+
}, B = class {
|
|
303
303
|
_listeners = /* @__PURE__ */ new Map();
|
|
304
304
|
addEventListener(e, t, n) {
|
|
305
305
|
if (!t) return;
|
|
@@ -350,49 +350,49 @@ var de = (e) => {
|
|
|
350
350
|
e._closed || e.dispatchEvent(new Event("close"));
|
|
351
351
|
});
|
|
352
352
|
}
|
|
353
|
-
},
|
|
353
|
+
}, V = class {
|
|
354
354
|
port1;
|
|
355
355
|
port2;
|
|
356
356
|
constructor() {
|
|
357
|
-
let e = new
|
|
357
|
+
let e = new B(), t = new B();
|
|
358
358
|
e._peer = t, t._peer = e, this.port1 = e, this.port2 = t;
|
|
359
359
|
}
|
|
360
|
-
},
|
|
360
|
+
}, et = new FinalizationRegistry((e) => {
|
|
361
361
|
try {
|
|
362
362
|
e();
|
|
363
363
|
} catch {}
|
|
364
|
-
}),
|
|
364
|
+
}), H = (e, t) => {
|
|
365
365
|
let n = {};
|
|
366
|
-
return
|
|
367
|
-
},
|
|
368
|
-
box: () =>
|
|
369
|
-
createRevivableChannel: () =>
|
|
370
|
-
init: () =>
|
|
371
|
-
isType: () =>
|
|
372
|
-
revive: () =>
|
|
373
|
-
type: () =>
|
|
374
|
-
}),
|
|
375
|
-
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);
|
|
376
376
|
if (!t) throw Error("osra message-port: connection state missing; did init() run?");
|
|
377
377
|
return t;
|
|
378
|
-
},
|
|
378
|
+
}, st = (e, t) => {
|
|
379
379
|
let n = e.ports.get(t);
|
|
380
380
|
return n || (n = {
|
|
381
381
|
nextSeq: 0,
|
|
382
382
|
buffer: /* @__PURE__ */ new Map(),
|
|
383
383
|
outSeq: 0
|
|
384
384
|
}, e.ports.set(t, n), e.pendingPorts++), n;
|
|
385
|
-
},
|
|
385
|
+
}, W = (e, t) => {
|
|
386
386
|
let n = e.ports.get(t);
|
|
387
|
-
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) {
|
|
388
388
|
let t = e.tombstones.values().next().value;
|
|
389
389
|
t !== void 0 && e.tombstones.delete(t);
|
|
390
390
|
}
|
|
391
391
|
e.tombstones.add(t);
|
|
392
|
-
},
|
|
392
|
+
}, ct = (e) => {
|
|
393
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);
|
|
394
|
-
},
|
|
395
|
-
let r =
|
|
394
|
+
}, lt = (e, t) => st(U(e), t).outSeq++, ut = (e, t, n) => {
|
|
395
|
+
let r = U(e);
|
|
396
396
|
if (r.tombstones.has(t)) {
|
|
397
397
|
setTimeout(() => n({
|
|
398
398
|
type: "message-port-close",
|
|
@@ -401,15 +401,15 @@ var de = (e) => {
|
|
|
401
401
|
}));
|
|
402
402
|
return;
|
|
403
403
|
}
|
|
404
|
-
let i =
|
|
405
|
-
i.handler || r.pendingPorts--, i.handler = n,
|
|
406
|
-
},
|
|
404
|
+
let i = st(r, t);
|
|
405
|
+
i.handler || r.pendingPorts--, i.handler = n, ct(i);
|
|
406
|
+
}, dt = (e) => {
|
|
407
407
|
let t = {
|
|
408
408
|
ports: /* @__PURE__ */ new Map(),
|
|
409
409
|
tombstones: /* @__PURE__ */ new Set(),
|
|
410
410
|
pendingPorts: 0
|
|
411
411
|
};
|
|
412
|
-
|
|
412
|
+
ot.set(e, t), e.eventTarget.addEventListener("message", ({ detail: n }) => {
|
|
413
413
|
if (n.type !== "message" && n.type !== "message-port-close" || t.tombstones.has(n.portId)) return;
|
|
414
414
|
let r = t.ports.get(n.portId);
|
|
415
415
|
if (n.seq === void 0) {
|
|
@@ -417,21 +417,21 @@ var de = (e) => {
|
|
|
417
417
|
return;
|
|
418
418
|
}
|
|
419
419
|
if (!r) {
|
|
420
|
-
if (t.pendingPorts >=
|
|
421
|
-
r =
|
|
420
|
+
if (t.pendingPorts >= at) return;
|
|
421
|
+
r = st(t, n.portId);
|
|
422
422
|
}
|
|
423
423
|
if (!(n.seq < r.nextSeq)) {
|
|
424
|
-
if (r.buffer.size >=
|
|
425
|
-
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?.({
|
|
426
426
|
type: "message-port-close",
|
|
427
427
|
remoteUuid: e.remoteUuid,
|
|
428
428
|
portId: n.portId
|
|
429
429
|
});
|
|
430
430
|
return;
|
|
431
431
|
}
|
|
432
|
-
r.buffer.set(n.seq, n),
|
|
432
|
+
r.buffer.set(n.seq, n), ct(r);
|
|
433
433
|
}
|
|
434
|
-
}),
|
|
434
|
+
}), L(e, () => {
|
|
435
435
|
for (let [n, r] of [...t.ports]) r.handler?.({
|
|
436
436
|
type: "message-port-close",
|
|
437
437
|
remoteUuid: e.remoteUuid,
|
|
@@ -439,9 +439,9 @@ var de = (e) => {
|
|
|
439
439
|
});
|
|
440
440
|
t.ports.clear(), t.tombstones.clear(), t.pendingPorts = 0;
|
|
441
441
|
});
|
|
442
|
-
},
|
|
442
|
+
}, ft = (e) => e instanceof MessagePort || e instanceof B, G = (e, t) => {
|
|
443
443
|
try {
|
|
444
|
-
let n =
|
|
444
|
+
let n = U(e).ports.get(t);
|
|
445
445
|
e.sendMessage({
|
|
446
446
|
type: "message-port-close",
|
|
447
447
|
remoteUuid: e.remoteUuid,
|
|
@@ -449,82 +449,82 @@ var de = (e) => {
|
|
|
449
449
|
seq: n ? n.outSeq++ : 0
|
|
450
450
|
});
|
|
451
451
|
} catch {}
|
|
452
|
-
},
|
|
453
|
-
n ? e.postMessage(t) : e.postMessage(t,
|
|
454
|
-
},
|
|
452
|
+
}, pt = (e, t, n) => {
|
|
453
|
+
n ? e.postMessage(t) : e.postMessage(t, z(t));
|
|
454
|
+
}, mt = (e, t, n) => () => {
|
|
455
455
|
let r = e.deref();
|
|
456
|
-
r &&
|
|
456
|
+
r && G(r, n);
|
|
457
457
|
let i = t.deref();
|
|
458
|
-
i &&
|
|
459
|
-
},
|
|
460
|
-
let r = e instanceof
|
|
461
|
-
if (!r && !
|
|
462
|
-
...
|
|
463
|
-
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,
|
|
464
464
|
port: e,
|
|
465
465
|
...n?.autoBox ? { autoBox: !0 } : {}
|
|
466
466
|
};
|
|
467
|
-
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 = () => {
|
|
468
468
|
if (u) return;
|
|
469
469
|
u = !0;
|
|
470
470
|
let e = l.deref();
|
|
471
|
-
e &&
|
|
471
|
+
e && W(e, o), m?.();
|
|
472
472
|
let t = s.deref();
|
|
473
|
-
t?.removeEventListener("message", p), t instanceof
|
|
473
|
+
t?.removeEventListener("message", p), t instanceof B && (t._onClose = void 0);
|
|
474
474
|
}, f = (e) => {
|
|
475
475
|
if (e.type === "message-port-close") {
|
|
476
476
|
d(), a.dispatchEvent(new Event("close")), a.close();
|
|
477
477
|
return;
|
|
478
478
|
}
|
|
479
|
-
|
|
479
|
+
pt(a, $(e.data, t), !1);
|
|
480
480
|
};
|
|
481
481
|
function p({ data: e }) {
|
|
482
482
|
t.sendMessage({
|
|
483
483
|
type: "message",
|
|
484
484
|
remoteUuid: t.remoteUuid,
|
|
485
|
-
data:
|
|
485
|
+
data: Q(e, t),
|
|
486
486
|
portId: o,
|
|
487
|
-
seq:
|
|
487
|
+
seq: lt(t, o)
|
|
488
488
|
});
|
|
489
489
|
}
|
|
490
|
-
let m =
|
|
491
|
-
return a.addEventListener("message", p), a.start(), a instanceof
|
|
492
|
-
u || (
|
|
493
|
-
}),
|
|
494
|
-
...
|
|
495
|
-
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,
|
|
496
496
|
portId: o,
|
|
497
497
|
synthetic: r
|
|
498
498
|
};
|
|
499
|
-
},
|
|
499
|
+
}, q = (e, t) => "port" in e ? e.autoBox ? ht(e.port, t) : e.port : gt(e.portId, t, e.synthetic), ht = (e, t) => {
|
|
500
500
|
let n = new EventTarget(), r = ({ data: e }) => {
|
|
501
|
-
n.dispatchEvent(new MessageEvent("message", { data:
|
|
501
|
+
n.dispatchEvent(new MessageEvent("message", { data: $(e, t) }));
|
|
502
502
|
}, i = () => {
|
|
503
503
|
n.dispatchEvent(new Event("close"));
|
|
504
504
|
};
|
|
505
505
|
return e.addEventListener("message", r), e.addEventListener("close", i), n.postMessage = (n, r) => {
|
|
506
|
-
let i =
|
|
506
|
+
let i = Q(n, t), a = z(i), o = Array.isArray(r) ? r : [];
|
|
507
507
|
e.postMessage(i, o.length ? [...a, ...o] : a);
|
|
508
508
|
}, n.start = () => e.start(), n.close = () => {
|
|
509
509
|
e.removeEventListener("message", r), e.removeEventListener("close", i), e.close();
|
|
510
510
|
}, n;
|
|
511
|
-
},
|
|
512
|
-
if (
|
|
513
|
-
let { port1: t, port2: n } = new
|
|
511
|
+
}, J = (e) => {
|
|
512
|
+
if (A(e.transport)) {
|
|
513
|
+
let { port1: t, port2: n } = new V();
|
|
514
514
|
return {
|
|
515
515
|
localPort: t,
|
|
516
|
-
boxedRemote:
|
|
516
|
+
boxedRemote: K(n, e)
|
|
517
517
|
};
|
|
518
518
|
}
|
|
519
519
|
let { port1: t, port2: n } = new MessageChannel();
|
|
520
520
|
return {
|
|
521
|
-
localPort:
|
|
522
|
-
boxedRemote:
|
|
521
|
+
localPort: ht(t, e),
|
|
522
|
+
boxedRemote: K(n, e, { autoBox: !0 })
|
|
523
523
|
};
|
|
524
|
-
},
|
|
525
|
-
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 = () => {
|
|
526
526
|
if (c) return;
|
|
527
|
-
c = !0,
|
|
527
|
+
c = !0, W(r, e);
|
|
528
528
|
let t = s.deref();
|
|
529
529
|
t?.removeEventListener("message", d), t?.close(), f?.();
|
|
530
530
|
}, u = (e) => {
|
|
@@ -539,29 +539,29 @@ var de = (e) => {
|
|
|
539
539
|
return;
|
|
540
540
|
}
|
|
541
541
|
let r = s.deref();
|
|
542
|
-
r &&
|
|
542
|
+
r && pt(r, $(e.data, t), n);
|
|
543
543
|
}, d = ({ data: n }) => {
|
|
544
544
|
t.sendMessage({
|
|
545
545
|
type: "message",
|
|
546
546
|
remoteUuid: t.remoteUuid,
|
|
547
|
-
data:
|
|
547
|
+
data: Q(n, t),
|
|
548
548
|
portId: e,
|
|
549
|
-
seq:
|
|
549
|
+
seq: lt(t, e)
|
|
550
550
|
});
|
|
551
|
-
}, f =
|
|
552
|
-
|
|
551
|
+
}, f = H(i, () => {
|
|
552
|
+
G(t, e), l();
|
|
553
553
|
});
|
|
554
|
-
return i instanceof
|
|
555
|
-
c || (
|
|
556
|
-
}), a.addEventListener("message", d), a.start(),
|
|
557
|
-
},
|
|
558
|
-
box: () =>
|
|
559
|
-
isType: () =>
|
|
560
|
-
revive: () =>
|
|
561
|
-
type: () =>
|
|
562
|
-
}),
|
|
563
|
-
if (!
|
|
564
|
-
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) => {
|
|
565
565
|
n.postMessage(e), n.close();
|
|
566
566
|
};
|
|
567
567
|
return e.then((e) => i({
|
|
@@ -571,31 +571,31 @@ var de = (e) => {
|
|
|
571
571
|
type: "reject",
|
|
572
572
|
error: e
|
|
573
573
|
})), {
|
|
574
|
-
...
|
|
575
|
-
type:
|
|
574
|
+
...P,
|
|
575
|
+
type: vt,
|
|
576
576
|
port: r
|
|
577
577
|
};
|
|
578
|
-
},
|
|
579
|
-
let n =
|
|
580
|
-
|
|
578
|
+
}, Ct = (e, t) => {
|
|
579
|
+
let n = q(e.port, t);
|
|
580
|
+
bt.add(n);
|
|
581
581
|
let r = "portId" in e.port;
|
|
582
582
|
return new Promise((e, i) => {
|
|
583
583
|
let a = () => {
|
|
584
|
-
n.close(),
|
|
585
|
-
}, o = r ?
|
|
584
|
+
n.close(), bt.delete(n), o();
|
|
585
|
+
}, o = r ? L(t, () => {
|
|
586
586
|
i(/* @__PURE__ */ Error("osra: connection closed")), a();
|
|
587
587
|
}) : () => {};
|
|
588
588
|
n.addEventListener("message", ({ data: t }) => {
|
|
589
589
|
t.type === "resolve" ? e(t.data) : i(t.error), a();
|
|
590
590
|
}, { once: !0 }), n.start();
|
|
591
591
|
});
|
|
592
|
-
},
|
|
593
|
-
box: () =>
|
|
594
|
-
isType: () =>
|
|
595
|
-
revive: () =>
|
|
596
|
-
type: () =>
|
|
597
|
-
}),
|
|
598
|
-
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();
|
|
599
599
|
return n.addEventListener("message", ({ data: n }) => {
|
|
600
600
|
let [r, i] = n;
|
|
601
601
|
(async () => {
|
|
@@ -613,50 +613,50 @@ var de = (e) => {
|
|
|
613
613
|
}
|
|
614
614
|
let a = (() => {
|
|
615
615
|
try {
|
|
616
|
-
return
|
|
616
|
+
return Q(n, t);
|
|
617
617
|
} catch (e) {
|
|
618
|
-
return
|
|
618
|
+
return Q({
|
|
619
619
|
type: "throw",
|
|
620
620
|
error: e
|
|
621
621
|
}, t);
|
|
622
622
|
}
|
|
623
623
|
})();
|
|
624
|
-
r.postMessage(a,
|
|
624
|
+
r.postMessage(a, z(a)), queueMicrotask(() => {
|
|
625
625
|
try {
|
|
626
626
|
r.close();
|
|
627
627
|
} catch {}
|
|
628
628
|
});
|
|
629
629
|
})();
|
|
630
630
|
}), n.start(), {
|
|
631
|
-
...
|
|
632
|
-
type:
|
|
633
|
-
port:
|
|
631
|
+
...P,
|
|
632
|
+
type: Tt,
|
|
633
|
+
port: K(r, t)
|
|
634
634
|
};
|
|
635
|
-
},
|
|
636
|
-
let n =
|
|
635
|
+
}, X = (e, t) => {
|
|
636
|
+
let n = q(e.port, t);
|
|
637
637
|
return ((...e) => new Promise((r, i) => {
|
|
638
|
-
let { port1: a, port2: o } = new
|
|
639
|
-
|
|
638
|
+
let { port1: a, port2: o } = new V();
|
|
639
|
+
Et.add(a);
|
|
640
640
|
let s = () => {
|
|
641
|
-
a.close(),
|
|
642
|
-
}, c =
|
|
641
|
+
a.close(), Et.delete(a), c();
|
|
642
|
+
}, c = L(t, () => {
|
|
643
643
|
i(/* @__PURE__ */ Error("osra: connection closed")), s();
|
|
644
644
|
});
|
|
645
645
|
a.addEventListener("message", ({ data: e }) => {
|
|
646
646
|
let t = e;
|
|
647
647
|
t.type === "return" ? r(t.value) : i(t.error), s();
|
|
648
648
|
}, { once: !0 }), a.start();
|
|
649
|
-
let l =
|
|
650
|
-
n.postMessage(l,
|
|
649
|
+
let l = Q([o, e], t);
|
|
650
|
+
n.postMessage(l, z(l));
|
|
651
651
|
}));
|
|
652
|
-
},
|
|
652
|
+
}, Ot = /* @__PURE__ */ t({
|
|
653
653
|
MAX_CREDIT_WINDOW: () => 64,
|
|
654
|
-
box: () =>
|
|
655
|
-
isType: () =>
|
|
656
|
-
revive: () =>
|
|
657
|
-
type: () =>
|
|
658
|
-
}),
|
|
659
|
-
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) => {
|
|
660
660
|
s = !0;
|
|
661
661
|
try {
|
|
662
662
|
n.postMessage(e);
|
|
@@ -702,13 +702,13 @@ var de = (e) => {
|
|
|
702
702
|
}), n.addEventListener("close", () => {
|
|
703
703
|
s || (s = !0, i.cancel(/* @__PURE__ */ Error("osra: connection closed")).catch(() => {}));
|
|
704
704
|
}, { once: !0 }), n.start(), {
|
|
705
|
-
...
|
|
706
|
-
type:
|
|
705
|
+
...P,
|
|
706
|
+
type: kt,
|
|
707
707
|
credit: !0,
|
|
708
708
|
port: r
|
|
709
709
|
};
|
|
710
|
-
},
|
|
711
|
-
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 = () => {
|
|
712
712
|
let t = l(), r = n + i.length;
|
|
713
713
|
if (r > t / 2) return;
|
|
714
714
|
let a = t - r;
|
|
@@ -734,7 +734,7 @@ var de = (e) => {
|
|
|
734
734
|
return;
|
|
735
735
|
}
|
|
736
736
|
n--;
|
|
737
|
-
let a =
|
|
737
|
+
let a = Ft(o.value);
|
|
738
738
|
if (a !== void 0 && (r = r === void 0 ? a : r * .875 + a * .125), c) {
|
|
739
739
|
let e = c;
|
|
740
740
|
c = void 0, e.controller.enqueue(o.value), e.resolve();
|
|
@@ -780,7 +780,7 @@ var de = (e) => {
|
|
|
780
780
|
}), queueMicrotask(() => e.close());
|
|
781
781
|
}
|
|
782
782
|
});
|
|
783
|
-
},
|
|
783
|
+
}, Lt = (e) => {
|
|
784
784
|
let t = !1;
|
|
785
785
|
return new ReadableStream({
|
|
786
786
|
start: (n) => {
|
|
@@ -809,16 +809,16 @@ var de = (e) => {
|
|
|
809
809
|
}), queueMicrotask(() => e.close());
|
|
810
810
|
}
|
|
811
811
|
});
|
|
812
|
-
},
|
|
813
|
-
let n =
|
|
814
|
-
return n.start(), e.credit ?
|
|
815
|
-
},
|
|
816
|
-
box: () =>
|
|
817
|
-
isType: () =>
|
|
818
|
-
revive: () =>
|
|
819
|
-
type: () =>
|
|
820
|
-
}),
|
|
821
|
-
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({
|
|
822
822
|
type: "err",
|
|
823
823
|
error: e?.message ?? String(e)
|
|
824
824
|
})).then(() => {
|
|
@@ -829,12 +829,12 @@ var de = (e) => {
|
|
|
829
829
|
}), n.addEventListener("close", () => {
|
|
830
830
|
a || (a = !0, i.abort(/* @__PURE__ */ Error("osra: connection closed")).catch(() => {}));
|
|
831
831
|
}, { once: !0 }), n.start(), {
|
|
832
|
-
...
|
|
833
|
-
type:
|
|
832
|
+
...P,
|
|
833
|
+
type: Bt,
|
|
834
834
|
port: r
|
|
835
835
|
};
|
|
836
|
-
},
|
|
837
|
-
let n =
|
|
836
|
+
}, Ut = (e, t) => {
|
|
837
|
+
let n = q(e.port, t);
|
|
838
838
|
n.start();
|
|
839
839
|
let r = /* @__PURE__ */ new Set(), i = !1;
|
|
840
840
|
n.addEventListener("close", () => {
|
|
@@ -869,57 +869,57 @@ var de = (e) => {
|
|
|
869
869
|
reason: e
|
|
870
870
|
})
|
|
871
871
|
});
|
|
872
|
-
},
|
|
873
|
-
box: () =>
|
|
874
|
-
isType: () =>
|
|
875
|
-
revive: () =>
|
|
876
|
-
type: () =>
|
|
877
|
-
}),
|
|
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) => {
|
|
878
878
|
if (e.aborted) return {
|
|
879
|
-
...
|
|
880
|
-
type:
|
|
879
|
+
...P,
|
|
880
|
+
type: Gt,
|
|
881
881
|
aborted: !0,
|
|
882
|
-
reason:
|
|
882
|
+
reason: Q(e.reason, t)
|
|
883
883
|
};
|
|
884
|
-
let { localPort: n, boxedRemote: r } =
|
|
884
|
+
let { localPort: n, boxedRemote: r } = J(t), i = () => {
|
|
885
885
|
n.postMessage({
|
|
886
886
|
type: "abort",
|
|
887
887
|
reason: e.reason
|
|
888
888
|
}), n.close(), a();
|
|
889
|
-
}, a =
|
|
889
|
+
}, a = L(t, () => {
|
|
890
890
|
e.removeEventListener("abort", i), n.close();
|
|
891
891
|
});
|
|
892
892
|
return e.addEventListener("abort", i, { once: !0 }), {
|
|
893
|
-
...
|
|
894
|
-
type:
|
|
893
|
+
...P,
|
|
894
|
+
type: Gt,
|
|
895
895
|
aborted: !1,
|
|
896
896
|
reason: void 0,
|
|
897
897
|
port: r
|
|
898
898
|
};
|
|
899
|
-
},
|
|
899
|
+
}, Yt = (e, t) => {
|
|
900
900
|
let n = new AbortController();
|
|
901
|
-
if (e.aborted || e.port === void 0) return n.abort(
|
|
902
|
-
let r =
|
|
903
|
-
return
|
|
904
|
-
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());
|
|
905
905
|
}), n.signal;
|
|
906
|
-
},
|
|
907
|
-
box: () =>
|
|
908
|
-
isType: () =>
|
|
909
|
-
revive: () =>
|
|
910
|
-
type: () =>
|
|
911
|
-
}),
|
|
912
|
-
...
|
|
913
|
-
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,
|
|
914
914
|
status: e.status,
|
|
915
915
|
statusText: e.statusText,
|
|
916
|
-
headers:
|
|
917
|
-
body: e.body ?
|
|
916
|
+
headers: Oe(e.headers, t),
|
|
917
|
+
body: e.body ? Pt(e.body, t) : null,
|
|
918
918
|
url: e.url,
|
|
919
919
|
redirected: e.redirected
|
|
920
|
-
}),
|
|
920
|
+
}), en = (e, t) => {
|
|
921
921
|
if (e.status === 0) return Response.error();
|
|
922
|
-
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;
|
|
923
923
|
r && i && r.cancel().catch(() => {});
|
|
924
924
|
let a = new Response(i ? null : r, {
|
|
925
925
|
status: e.status,
|
|
@@ -933,18 +933,18 @@ var de = (e) => {
|
|
|
933
933
|
value: !0,
|
|
934
934
|
configurable: !0
|
|
935
935
|
}), a;
|
|
936
|
-
},
|
|
937
|
-
box: () =>
|
|
938
|
-
isType: () =>
|
|
939
|
-
revive: () =>
|
|
940
|
-
type: () =>
|
|
941
|
-
}),
|
|
942
|
-
...
|
|
943
|
-
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,
|
|
944
944
|
method: e.method,
|
|
945
945
|
url: e.url,
|
|
946
|
-
headers:
|
|
947
|
-
body: e.body ?
|
|
946
|
+
headers: Oe(e.headers, t),
|
|
947
|
+
body: e.body ? Pt(e.body, t) : null,
|
|
948
948
|
credentials: e.credentials,
|
|
949
949
|
cache: e.cache,
|
|
950
950
|
mode: e.mode,
|
|
@@ -953,9 +953,9 @@ var de = (e) => {
|
|
|
953
953
|
referrerPolicy: e.referrerPolicy,
|
|
954
954
|
integrity: e.integrity,
|
|
955
955
|
keepalive: e.keepalive,
|
|
956
|
-
signal:
|
|
957
|
-
}),
|
|
958
|
-
let n =
|
|
956
|
+
signal: Jt(e.signal, t)
|
|
957
|
+
}), on = (e, t) => {
|
|
958
|
+
let n = ke(e.headers, t), r = {
|
|
959
959
|
method: e.method,
|
|
960
960
|
headers: n,
|
|
961
961
|
credentials: e.credentials,
|
|
@@ -965,31 +965,31 @@ var de = (e) => {
|
|
|
965
965
|
referrerPolicy: e.referrerPolicy,
|
|
966
966
|
integrity: e.integrity,
|
|
967
967
|
keepalive: e.keepalive,
|
|
968
|
-
signal:
|
|
968
|
+
signal: Yt(e.signal, t)
|
|
969
969
|
};
|
|
970
|
-
return e.mode !== "navigate" && (r.mode = e.mode), e.body && (r.body =
|
|
971
|
-
},
|
|
972
|
-
box: () =>
|
|
973
|
-
boxByReference: () =>
|
|
974
|
-
identity: () =>
|
|
975
|
-
isType: () =>
|
|
976
|
-
revive: () =>
|
|
977
|
-
type: () =>
|
|
978
|
-
}),
|
|
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) => {
|
|
979
979
|
if (e === null) return !1;
|
|
980
980
|
let t = typeof e;
|
|
981
981
|
return t === "object" || t === "function" ? !0 : t === "symbol" ? Symbol.keyFor(e) === void 0 : !1;
|
|
982
|
-
},
|
|
983
|
-
if (
|
|
984
|
-
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);
|
|
985
985
|
if (t) return t;
|
|
986
986
|
let n = {
|
|
987
|
-
[
|
|
987
|
+
[cn]: !0,
|
|
988
988
|
value: e
|
|
989
989
|
};
|
|
990
|
-
return
|
|
991
|
-
},
|
|
992
|
-
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);
|
|
993
993
|
if (t) return t;
|
|
994
994
|
let n = /* @__PURE__ */ new WeakMap(), r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new WeakMap(), o = {
|
|
995
995
|
sendIds: n,
|
|
@@ -1008,16 +1008,16 @@ var de = (e) => {
|
|
|
1008
1008
|
revivedToId: a,
|
|
1009
1009
|
listenerInstalled: !1
|
|
1010
1010
|
};
|
|
1011
|
-
return
|
|
1011
|
+
return hn.set(e, o), _n(e, o), L(e, () => {
|
|
1012
1012
|
o.receiveCache.clear(), o.idToSent.clear();
|
|
1013
1013
|
}), o;
|
|
1014
|
-
},
|
|
1014
|
+
}, _n = (e, t) => {
|
|
1015
1015
|
t.listenerInstalled || (t.listenerInstalled = !0, e.eventTarget.addEventListener("message", ({ detail: e }) => {
|
|
1016
1016
|
if (e?.type !== "identity-dispose") return;
|
|
1017
1017
|
let n = t.receiveCache.get(e.id);
|
|
1018
|
-
t.receiveCache.delete(e.id), n !== void 0 &&
|
|
1018
|
+
t.receiveCache.delete(e.id), n !== void 0 && un(n) && t.revivedToId.delete(n);
|
|
1019
1019
|
}));
|
|
1020
|
-
},
|
|
1020
|
+
}, vn = (e) => dn(e), yn = (e, t) => {
|
|
1021
1021
|
let n = t.sendIds.get(e);
|
|
1022
1022
|
if (n !== void 0) return {
|
|
1023
1023
|
id: n,
|
|
@@ -1033,86 +1033,86 @@ var de = (e) => {
|
|
|
1033
1033
|
id: i,
|
|
1034
1034
|
isExisting: !1
|
|
1035
1035
|
};
|
|
1036
|
-
},
|
|
1037
|
-
let n =
|
|
1038
|
-
if (!
|
|
1039
|
-
...
|
|
1040
|
-
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,
|
|
1041
1041
|
id: globalThis.crypto.randomUUID(),
|
|
1042
1042
|
inner: i
|
|
1043
1043
|
};
|
|
1044
|
-
let { id: a, isExisting: o } =
|
|
1044
|
+
let { id: a, isExisting: o } = yn(r, n);
|
|
1045
1045
|
return o ? {
|
|
1046
|
-
...
|
|
1047
|
-
type:
|
|
1046
|
+
...P,
|
|
1047
|
+
type: Z,
|
|
1048
1048
|
id: a
|
|
1049
1049
|
} : {
|
|
1050
|
-
...
|
|
1051
|
-
type:
|
|
1050
|
+
...P,
|
|
1051
|
+
type: Z,
|
|
1052
1052
|
id: a,
|
|
1053
1053
|
inner: i
|
|
1054
1054
|
};
|
|
1055
|
-
},
|
|
1056
|
-
let { id: r, isExisting: i } =
|
|
1055
|
+
}, xn = (e, t, n) => {
|
|
1056
|
+
let { id: r, isExisting: i } = yn(e, gn(n));
|
|
1057
1057
|
return i ? {
|
|
1058
|
-
...
|
|
1059
|
-
type:
|
|
1058
|
+
...P,
|
|
1059
|
+
type: Z,
|
|
1060
1060
|
id: r
|
|
1061
1061
|
} : {
|
|
1062
|
-
...
|
|
1063
|
-
type:
|
|
1062
|
+
...P,
|
|
1063
|
+
type: Z,
|
|
1064
1064
|
id: r,
|
|
1065
1065
|
inner: t
|
|
1066
1066
|
};
|
|
1067
|
-
},
|
|
1068
|
-
let n =
|
|
1067
|
+
}, Sn = (e, t) => {
|
|
1068
|
+
let n = gn(t), r = n.receiveCache.get(e.id);
|
|
1069
1069
|
if (r !== void 0) return r;
|
|
1070
1070
|
let i = n.idToSent.get(e.id)?.deref();
|
|
1071
1071
|
if (i !== void 0) return i;
|
|
1072
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`);
|
|
1073
|
-
let a =
|
|
1074
|
-
return n.receiveCache.set(e.id, a),
|
|
1075
|
-
},
|
|
1076
|
-
box: () =>
|
|
1077
|
-
isType: () =>
|
|
1078
|
-
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,
|
|
1079
1079
|
type: () => "map"
|
|
1080
|
-
}),
|
|
1081
|
-
...
|
|
1080
|
+
}), wn = (e) => e instanceof Map, Tn = (e, t) => ({
|
|
1081
|
+
...P,
|
|
1082
1082
|
type: "map",
|
|
1083
|
-
entries: Array.from(e, ([e, n]) => [
|
|
1084
|
-
}),
|
|
1085
|
-
box: () =>
|
|
1086
|
-
isType: () =>
|
|
1087
|
-
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,
|
|
1088
1088
|
type: () => "set"
|
|
1089
|
-
}),
|
|
1090
|
-
...
|
|
1089
|
+
}), On = (e) => e instanceof Set, kn = (e, t) => ({
|
|
1090
|
+
...P,
|
|
1091
1091
|
type: "set",
|
|
1092
|
-
values: Array.from(e, (e) =>
|
|
1093
|
-
}),
|
|
1094
|
-
box: () =>
|
|
1095
|
-
isType: () =>
|
|
1096
|
-
revive: () =>
|
|
1097
|
-
type: () =>
|
|
1098
|
-
}),
|
|
1099
|
-
...
|
|
1100
|
-
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,
|
|
1101
1101
|
value: e.toString()
|
|
1102
|
-
}),
|
|
1103
|
-
box: () =>
|
|
1104
|
-
isType: () =>
|
|
1105
|
-
revive: () =>
|
|
1106
|
-
type: () =>
|
|
1107
|
-
}),
|
|
1108
|
-
...
|
|
1109
|
-
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,
|
|
1110
1110
|
eventType: e.type,
|
|
1111
1111
|
bubbles: e.bubbles,
|
|
1112
1112
|
cancelable: e.cancelable,
|
|
1113
1113
|
composed: e.composed,
|
|
1114
|
-
...e instanceof CustomEvent ? { detail:
|
|
1115
|
-
}),
|
|
1114
|
+
...e instanceof CustomEvent ? { detail: Q(e.detail, t) } : {}
|
|
1115
|
+
}), Bn = (e, t) => {
|
|
1116
1116
|
let n = {
|
|
1117
1117
|
bubbles: e.bubbles,
|
|
1118
1118
|
cancelable: e.cancelable,
|
|
@@ -1120,102 +1120,102 @@ var de = (e) => {
|
|
|
1120
1120
|
};
|
|
1121
1121
|
return "detail" in e ? new CustomEvent(e.eventType, {
|
|
1122
1122
|
...n,
|
|
1123
|
-
detail:
|
|
1123
|
+
detail: $(e.detail, t)
|
|
1124
1124
|
}) : new Event(e.eventType, n);
|
|
1125
|
-
},
|
|
1126
|
-
box: () =>
|
|
1127
|
-
isType: () =>
|
|
1128
|
-
revive: () =>
|
|
1129
|
-
type: () =>
|
|
1130
|
-
}),
|
|
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) => {
|
|
1131
1131
|
let n = [], r = (e) => typeof e == "boolean" ? e : !!e?.capture;
|
|
1132
1132
|
return {
|
|
1133
|
-
...
|
|
1134
|
-
type:
|
|
1135
|
-
addListener:
|
|
1133
|
+
...P,
|
|
1134
|
+
type: Hn,
|
|
1135
|
+
addListener: Y((t, i, a) => {
|
|
1136
1136
|
n.push({
|
|
1137
1137
|
eventType: t,
|
|
1138
1138
|
listener: i,
|
|
1139
1139
|
capture: r(a)
|
|
1140
1140
|
}), e.addEventListener(t, i, a);
|
|
1141
1141
|
}, t),
|
|
1142
|
-
removeListener:
|
|
1142
|
+
removeListener: Y((t, i, a) => {
|
|
1143
1143
|
let o = r(a), s = n.findIndex((e) => e.eventType === t && e.listener === i && e.capture === o);
|
|
1144
1144
|
s !== -1 && n.splice(s, 1), e.removeEventListener(t, i, a);
|
|
1145
1145
|
}, t),
|
|
1146
|
-
removeAllListeners:
|
|
1146
|
+
removeAllListeners: Y(() => {
|
|
1147
1147
|
for (let { eventType: t, listener: r, capture: i } of n.splice(0)) e.removeEventListener(t, r, { capture: i });
|
|
1148
1148
|
}, t)
|
|
1149
1149
|
};
|
|
1150
|
-
},
|
|
1150
|
+
}, Gn = /* @__PURE__ */ new WeakMap(), Kn = (e) => {
|
|
1151
1151
|
if (typeof e == "function") return e;
|
|
1152
|
-
let t =
|
|
1153
|
-
return t ||
|
|
1154
|
-
},
|
|
1155
|
-
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) => {
|
|
1156
1156
|
let t = o.indexOf(e);
|
|
1157
1157
|
t !== -1 && o.splice(t, 1);
|
|
1158
1158
|
};
|
|
1159
1159
|
return Object.defineProperty(a, "addEventListener", { value: (e, t, r) => {
|
|
1160
1160
|
if (t === null) return;
|
|
1161
|
-
let i =
|
|
1162
|
-
if (
|
|
1161
|
+
let i = Kn(t), a = typeof r == "boolean" ? r : !!r?.capture;
|
|
1162
|
+
if (qn(o, e, i, a)) return;
|
|
1163
1163
|
let c = typeof r == "object" && r?.once ? (e) => (s(l), i(e)) : i, l = {
|
|
1164
1164
|
eventType: e,
|
|
1165
1165
|
listener: i,
|
|
1166
1166
|
capture: a,
|
|
1167
1167
|
wire: c
|
|
1168
1168
|
};
|
|
1169
|
-
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(() => {});
|
|
1170
1170
|
} }), Object.defineProperty(a, "removeEventListener", { value: (e, t, n) => {
|
|
1171
1171
|
if (t === null) return;
|
|
1172
|
-
let i =
|
|
1173
|
-
c && (s(c), r(e,
|
|
1174
|
-
} }),
|
|
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, () => {
|
|
1175
1175
|
i().catch(() => {});
|
|
1176
1176
|
}), a;
|
|
1177
|
-
},
|
|
1178
|
-
box: () =>
|
|
1179
|
-
isType: () =>
|
|
1180
|
-
revive: () =>
|
|
1181
|
-
type: () =>
|
|
1182
|
-
}),
|
|
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) => {
|
|
1183
1183
|
let n = Symbol.keyFor(e);
|
|
1184
|
-
return n === void 0 ?
|
|
1185
|
-
...
|
|
1186
|
-
type:
|
|
1184
|
+
return n === void 0 ? xn(e, {
|
|
1185
|
+
...P,
|
|
1186
|
+
type: Xn,
|
|
1187
1187
|
description: e.description
|
|
1188
1188
|
}, t) : {
|
|
1189
|
-
...
|
|
1190
|
-
type:
|
|
1189
|
+
...P,
|
|
1190
|
+
type: Xn,
|
|
1191
1191
|
registryKey: n
|
|
1192
1192
|
};
|
|
1193
|
-
},
|
|
1194
|
-
box: () =>
|
|
1195
|
-
isType: () =>
|
|
1196
|
-
revive: () =>
|
|
1197
|
-
type: () =>
|
|
1198
|
-
}),
|
|
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) => {
|
|
1199
1199
|
let n = e[Symbol.asyncIterator]();
|
|
1200
1200
|
return {
|
|
1201
|
-
...
|
|
1202
|
-
type:
|
|
1203
|
-
next:
|
|
1204
|
-
return:
|
|
1201
|
+
...P,
|
|
1202
|
+
type: tr,
|
|
1203
|
+
next: Y(((e) => n.next(e)), t),
|
|
1204
|
+
return: Y(((e) => n.return?.(e) ?? Promise.resolve({
|
|
1205
1205
|
done: !0,
|
|
1206
1206
|
value: e
|
|
1207
1207
|
})), t),
|
|
1208
|
-
throw:
|
|
1208
|
+
throw: Y(((e) => n.throw?.(e) ?? Promise.reject(e)), t)
|
|
1209
1209
|
};
|
|
1210
|
-
},
|
|
1211
|
-
let n =
|
|
1210
|
+
}, ir = (e, t) => {
|
|
1211
|
+
let n = X(e.next, t), r = X(e.return, t), i = X(e.throw, t), a = {
|
|
1212
1212
|
next: (...e) => n(...e),
|
|
1213
1213
|
return: (e) => r(e),
|
|
1214
1214
|
throw: (e) => i(e),
|
|
1215
1215
|
[Symbol.asyncIterator]: () => a
|
|
1216
1216
|
};
|
|
1217
1217
|
return a;
|
|
1218
|
-
},
|
|
1218
|
+
}, ar = [
|
|
1219
1219
|
globalThis.File,
|
|
1220
1220
|
globalThis.FileList,
|
|
1221
1221
|
globalThis.RegExp,
|
|
@@ -1235,7 +1235,7 @@ var de = (e) => {
|
|
|
1235
1235
|
globalThis.FileSystemFileHandle,
|
|
1236
1236
|
globalThis.FileSystemDirectoryHandle,
|
|
1237
1237
|
globalThis.RTCCertificate
|
|
1238
|
-
],
|
|
1238
|
+
], or = [
|
|
1239
1239
|
globalThis.CropTarget,
|
|
1240
1240
|
globalThis.EncodedAudioChunk,
|
|
1241
1241
|
globalThis.EncodedVideoChunk,
|
|
@@ -1246,71 +1246,72 @@ var de = (e) => {
|
|
|
1246
1246
|
globalThis.RTCEncodedAudioFrame,
|
|
1247
1247
|
globalThis.RTCEncodedVideoFrame,
|
|
1248
1248
|
globalThis.WebTransportError
|
|
1249
|
-
],
|
|
1249
|
+
], sr = {
|
|
1250
1250
|
type: "clonable",
|
|
1251
1251
|
capableOnly: !0,
|
|
1252
|
-
isType: (e) =>
|
|
1252
|
+
isType: (e) => w(e, ar) || w(e, or),
|
|
1253
1253
|
box: (e, t) => e,
|
|
1254
1254
|
revive: (e, t) => e
|
|
1255
|
-
},
|
|
1255
|
+
}, cr = [
|
|
1256
1256
|
globalThis.ImageBitmap,
|
|
1257
1257
|
globalThis.OffscreenCanvas,
|
|
1258
1258
|
globalThis.WritableStream,
|
|
1259
1259
|
globalThis.TransformStream,
|
|
1260
1260
|
globalThis.MediaStreamTrack,
|
|
1261
1261
|
globalThis.RTCDataChannel
|
|
1262
|
-
],
|
|
1262
|
+
], lr = [
|
|
1263
1263
|
globalThis.AudioData,
|
|
1264
1264
|
globalThis.VideoFrame,
|
|
1265
1265
|
globalThis.MediaSourceHandle,
|
|
1266
1266
|
globalThis.MIDIAccess,
|
|
1267
1267
|
globalThis.WebTransportReceiveStream,
|
|
1268
1268
|
globalThis.WebTransportSendStream
|
|
1269
|
-
],
|
|
1269
|
+
], ur = {
|
|
1270
1270
|
type: "transferable",
|
|
1271
1271
|
capableOnly: !0,
|
|
1272
|
-
isType: (e) =>
|
|
1272
|
+
isType: (e) => w(e, cr) || w(e, lr),
|
|
1273
1273
|
box: (e, t) => e,
|
|
1274
1274
|
revive: (e, t) => e
|
|
1275
|
-
},
|
|
1276
|
-
type: "
|
|
1277
|
-
|
|
1275
|
+
}, dr = {
|
|
1276
|
+
type: "blob",
|
|
1277
|
+
capableOnly: !0,
|
|
1278
|
+
isType: (e) => typeof Blob < "u" && e instanceof Blob,
|
|
1278
1279
|
box: (e, t) => {
|
|
1279
|
-
if (
|
|
1280
|
+
if (A(t.transport)) throw TypeError("osra: Blob is only supported on structured-clone transports, send an ArrayBuffer or Uint8Array instead");
|
|
1280
1281
|
return e;
|
|
1281
1282
|
},
|
|
1282
1283
|
revive: (e, t) => e
|
|
1283
|
-
},
|
|
1284
|
+
}, fr = (e) => {
|
|
1284
1285
|
if (typeof e != "object" || !e) return !1;
|
|
1285
1286
|
let t = Object.getPrototypeOf(e);
|
|
1286
1287
|
return t === Object.prototype || t === null;
|
|
1287
|
-
},
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
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,
|
|
1309
1310
|
{
|
|
1310
1311
|
type: "nonFiniteNumber",
|
|
1311
1312
|
isType: (e) => typeof e == "number" && !Number.isFinite(e),
|
|
1312
|
-
box: (e, t) =>
|
|
1313
|
-
...
|
|
1313
|
+
box: (e, t) => A(t.transport) ? {
|
|
1314
|
+
...P,
|
|
1314
1315
|
type: "nonFiniteNumber",
|
|
1315
1316
|
value: String(e)
|
|
1316
1317
|
} : e,
|
|
@@ -1319,20 +1320,20 @@ var de = (e) => {
|
|
|
1319
1320
|
{
|
|
1320
1321
|
type: "undefined",
|
|
1321
1322
|
isType: (e) => e === void 0,
|
|
1322
|
-
box: (e, t) =>
|
|
1323
|
-
...
|
|
1323
|
+
box: (e, t) => A(t.transport) ? {
|
|
1324
|
+
...P,
|
|
1324
1325
|
type: "undefined"
|
|
1325
1326
|
} : e,
|
|
1326
1327
|
revive: (e, t) => void 0
|
|
1327
1328
|
},
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1329
|
+
sr,
|
|
1330
|
+
ur,
|
|
1331
|
+
dr,
|
|
1332
|
+
Vn,
|
|
1332
1333
|
{
|
|
1333
1334
|
type: "unclonable",
|
|
1334
1335
|
isType: (e) => {
|
|
1335
|
-
if (typeof e != "object" || !e || Array.isArray(e) ||
|
|
1336
|
+
if (typeof e != "object" || !e || Array.isArray(e) || fr(e)) return !1;
|
|
1336
1337
|
try {
|
|
1337
1338
|
return structuredClone(e), !1;
|
|
1338
1339
|
} catch {
|
|
@@ -1340,44 +1341,44 @@ var de = (e) => {
|
|
|
1340
1341
|
}
|
|
1341
1342
|
},
|
|
1342
1343
|
box: (e, t) => ({
|
|
1343
|
-
...
|
|
1344
|
+
...P,
|
|
1344
1345
|
type: "unclonable"
|
|
1345
1346
|
}),
|
|
1346
1347
|
revive: (e, t) => ({})
|
|
1347
1348
|
}
|
|
1348
|
-
],
|
|
1349
|
-
if (
|
|
1350
|
-
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);
|
|
1351
1352
|
if (n) {
|
|
1352
|
-
if (
|
|
1353
|
-
|
|
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);
|
|
1354
1355
|
}
|
|
1355
1356
|
try {
|
|
1356
|
-
let n =
|
|
1357
|
-
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));
|
|
1358
1359
|
} finally {
|
|
1359
|
-
n &&
|
|
1360
|
+
n && vr.delete(e);
|
|
1360
1361
|
}
|
|
1361
|
-
},
|
|
1362
|
-
let n =
|
|
1362
|
+
}, $ = (e, t) => {
|
|
1363
|
+
let n = br(e);
|
|
1363
1364
|
if (n) {
|
|
1364
|
-
if (
|
|
1365
|
-
|
|
1365
|
+
if (yr.has(e)) throw TypeError("osra: cannot revive a circular structure");
|
|
1366
|
+
yr.add(e);
|
|
1366
1367
|
}
|
|
1367
1368
|
try {
|
|
1368
|
-
if (
|
|
1369
|
-
let n =
|
|
1369
|
+
if (F(e)) {
|
|
1370
|
+
let n = hr(e, t.revivableModules);
|
|
1370
1371
|
if (n) return n.revive(e, t);
|
|
1371
1372
|
}
|
|
1372
|
-
return
|
|
1373
|
+
return _r(e, (e) => $(e, t));
|
|
1373
1374
|
} finally {
|
|
1374
|
-
n &&
|
|
1375
|
+
n && yr.delete(e);
|
|
1375
1376
|
}
|
|
1376
|
-
},
|
|
1377
|
-
init: () =>
|
|
1378
|
-
startBidirectionalConnection: () =>
|
|
1379
|
-
type: () =>
|
|
1380
|
-
}),
|
|
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 }) => {
|
|
1381
1382
|
let o = {
|
|
1382
1383
|
transport: e,
|
|
1383
1384
|
remoteUuid: n,
|
|
@@ -1392,14 +1393,14 @@ var de = (e) => {
|
|
|
1392
1393
|
}), i({
|
|
1393
1394
|
type: "init",
|
|
1394
1395
|
remoteUuid: n,
|
|
1395
|
-
data:
|
|
1396
|
+
data: Q(t, o)
|
|
1396
1397
|
}), {
|
|
1397
1398
|
revivableContext: o,
|
|
1398
|
-
remoteValue: s.then((e) =>
|
|
1399
|
+
remoteValue: s.then((e) => $(e, o))
|
|
1399
1400
|
};
|
|
1400
|
-
},
|
|
1401
|
-
if (!(
|
|
1402
|
-
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 } }) => {
|
|
1403
1404
|
if (t.type === "announce") {
|
|
1404
1405
|
if (!t.remoteUuid) {
|
|
1405
1406
|
e.sendMessage({
|
|
@@ -1413,59 +1414,85 @@ var de = (e) => {
|
|
|
1413
1414
|
type: "announce",
|
|
1414
1415
|
remoteUuid: t.uuid
|
|
1415
1416
|
});
|
|
1416
|
-
let
|
|
1417
|
+
let r = e.createConnectionEventTarget(), i = {
|
|
1418
|
+
...n(),
|
|
1419
|
+
abort: () => e.abortConnection(t.uuid)
|
|
1420
|
+
}, a;
|
|
1417
1421
|
try {
|
|
1418
|
-
|
|
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({
|
|
1419
1431
|
transport: e.transport,
|
|
1420
|
-
value:
|
|
1432
|
+
value: n,
|
|
1421
1433
|
remoteUuid: t.uuid,
|
|
1422
|
-
eventTarget:
|
|
1434
|
+
eventTarget: r,
|
|
1423
1435
|
send: (t) => e.sendMessage(t),
|
|
1424
1436
|
revivableModules: e.revivableModules
|
|
1425
1437
|
});
|
|
1426
|
-
} catch (
|
|
1427
|
-
e.
|
|
1438
|
+
} catch (n) {
|
|
1439
|
+
e.sendMessage({
|
|
1440
|
+
type: "close",
|
|
1441
|
+
remoteUuid: t.uuid
|
|
1442
|
+
}), e.rejectRemoteValue(n);
|
|
1428
1443
|
return;
|
|
1429
1444
|
}
|
|
1430
|
-
let
|
|
1445
|
+
let o = {
|
|
1431
1446
|
type: "bidirectional",
|
|
1432
|
-
eventTarget:
|
|
1433
|
-
connection:
|
|
1447
|
+
eventTarget: r,
|
|
1448
|
+
connection: a
|
|
1434
1449
|
};
|
|
1435
|
-
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));
|
|
1436
1451
|
return;
|
|
1437
1452
|
}
|
|
1438
1453
|
if (t.type === "close") {
|
|
1439
1454
|
if (t.remoteUuid !== e.getUuid()) return;
|
|
1440
1455
|
let n = e.connectionContexts.get(t.uuid);
|
|
1441
1456
|
if (!n) return;
|
|
1442
|
-
e.connectionContexts.delete(t.uuid),
|
|
1457
|
+
e.connectionContexts.delete(t.uuid), R(n.connection.revivableContext), e.rejectRemoteValue(/* @__PURE__ */ Error("osra: peer closed the connection"));
|
|
1443
1458
|
return;
|
|
1444
1459
|
}
|
|
1445
1460
|
if (t.remoteUuid !== e.getUuid()) return;
|
|
1446
|
-
let
|
|
1447
|
-
|
|
1461
|
+
let r = e.connectionContexts.get(t.uuid);
|
|
1462
|
+
r && r.eventTarget.dispatchEvent(new CustomEvent("message", { detail: t }));
|
|
1448
1463
|
}), e.presetRemoteUuid !== void 0) {
|
|
1449
|
-
let t = e.createConnectionEventTarget(),
|
|
1464
|
+
let t = e.presetRemoteUuid, n = e.createConnectionEventTarget(), r, i;
|
|
1450
1465
|
try {
|
|
1451
|
-
|
|
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({
|
|
1452
1476
|
transport: e.transport,
|
|
1453
|
-
value:
|
|
1477
|
+
value: a,
|
|
1454
1478
|
remoteUuid: e.presetRemoteUuid,
|
|
1455
|
-
eventTarget:
|
|
1479
|
+
eventTarget: n,
|
|
1456
1480
|
send: (t) => e.sendMessage(t),
|
|
1457
1481
|
revivableModules: e.revivableModules
|
|
1458
1482
|
});
|
|
1459
|
-
} catch (
|
|
1460
|
-
e.
|
|
1483
|
+
} catch (n) {
|
|
1484
|
+
e.sendMessage({
|
|
1485
|
+
type: "close",
|
|
1486
|
+
remoteUuid: t
|
|
1487
|
+
}), e.rejectRemoteValue(n);
|
|
1461
1488
|
return;
|
|
1462
1489
|
}
|
|
1463
|
-
let
|
|
1490
|
+
let a = {
|
|
1464
1491
|
type: "bidirectional",
|
|
1465
|
-
eventTarget:
|
|
1466
|
-
connection:
|
|
1492
|
+
eventTarget: n,
|
|
1493
|
+
connection: r
|
|
1467
1494
|
};
|
|
1468
|
-
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));
|
|
1469
1496
|
return;
|
|
1470
1497
|
}
|
|
1471
1498
|
let t = 50, n, r = () => {
|
|
@@ -1477,77 +1504,189 @@ var de = (e) => {
|
|
|
1477
1504
|
}
|
|
1478
1505
|
};
|
|
1479
1506
|
e.unregisterSignal?.addEventListener("abort", () => clearTimeout(n), { once: !0 }), r();
|
|
1480
|
-
},
|
|
1481
|
-
let t =
|
|
1507
|
+
}, Tr = () => new EventTarget(), Er = (e) => {
|
|
1508
|
+
let t = N(e), n = t ? e.emit : e, r = t ? e.receive : e;
|
|
1482
1509
|
return {
|
|
1483
|
-
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),
|
|
1484
1511
|
...n === void 0 ? {} : { emit: n },
|
|
1485
1512
|
...r === void 0 ? {} : { receive: r }
|
|
1486
1513
|
};
|
|
1487
|
-
}, Dr = (e) => e ? e(
|
|
1488
|
-
let
|
|
1489
|
-
|
|
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({
|
|
1490
1598
|
transport: e,
|
|
1491
1599
|
key: n,
|
|
1492
1600
|
remoteName: a,
|
|
1493
1601
|
origin: r,
|
|
1494
1602
|
unregisterSignal: d,
|
|
1495
1603
|
listener: (e) => {
|
|
1496
|
-
u(t, e, i,
|
|
1604
|
+
u(t, e, i, z(e));
|
|
1497
1605
|
}
|
|
1498
1606
|
});
|
|
1499
1607
|
};
|
|
1500
1608
|
m(f, p, a, o, s), m(p, f, o, a, c);
|
|
1501
|
-
},
|
|
1502
|
-
let m =
|
|
1503
|
-
if (!(
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
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) => {
|
|
1507
1620
|
let r = {
|
|
1508
1621
|
[n]: o,
|
|
1509
1622
|
name: i,
|
|
1510
|
-
uuid:
|
|
1623
|
+
uuid: C,
|
|
1511
1624
|
...e
|
|
1512
1625
|
};
|
|
1513
|
-
u(
|
|
1514
|
-
},
|
|
1515
|
-
c?.aborted ||
|
|
1516
|
-
},
|
|
1517
|
-
transport:
|
|
1518
|
-
|
|
1519
|
-
revivableModules:
|
|
1520
|
-
connectionContexts:
|
|
1521
|
-
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,
|
|
1522
1635
|
presetRemoteUuid: p,
|
|
1523
|
-
sendMessage:
|
|
1524
|
-
protocolEventTarget:
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
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,
|
|
1528
1659
|
unregisterSignal: c
|
|
1529
1660
|
};
|
|
1530
1661
|
if (l({
|
|
1531
1662
|
listener: (e, t) => {
|
|
1532
|
-
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
|
+
} }));
|
|
1533
1672
|
},
|
|
1534
|
-
transport:
|
|
1673
|
+
transport: g,
|
|
1535
1674
|
remoteName: a,
|
|
1536
1675
|
key: o,
|
|
1537
1676
|
origin: s,
|
|
1538
1677
|
unregisterSignal: c
|
|
1539
|
-
}), c?.aborted) return
|
|
1678
|
+
}), c?.aborted) return S(c.reason), y.close(), Ar(b, y, h);
|
|
1540
1679
|
c?.addEventListener("abort", () => {
|
|
1541
|
-
for (let [e, t] of
|
|
1680
|
+
for (let [e, t] of v) w({
|
|
1542
1681
|
type: "close",
|
|
1543
1682
|
remoteUuid: e
|
|
1544
|
-
}),
|
|
1545
|
-
|
|
1683
|
+
}), R(t.connection.revivableContext);
|
|
1684
|
+
v.clear(), y.close(), S(c.reason);
|
|
1546
1685
|
}, { once: !0 });
|
|
1547
|
-
for (let e of
|
|
1548
|
-
return
|
|
1549
|
-
},
|
|
1686
|
+
for (let e of Fr) e.init(ne);
|
|
1687
|
+
return Ar(b, y, h);
|
|
1688
|
+
}, Lr = (e, t) => Ir(e, t);
|
|
1550
1689
|
//#endregion
|
|
1551
|
-
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 };
|
|
1552
1691
|
|
|
1553
1692
|
//# sourceMappingURL=index.js.map
|