@ikonai/sdk 1.0.8 → 1.0.10
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/client/connection-state.d.ts +1 -1
- package/client/ikon-client.d.ts +6 -6
- package/connection/urls.d.ts +5 -0
- package/index.js +650 -646
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -4,16 +4,16 @@ const zr = {
|
|
|
4
4
|
function bl(t) {
|
|
5
5
|
return t;
|
|
6
6
|
}
|
|
7
|
-
function
|
|
7
|
+
function fe(t) {
|
|
8
8
|
if (t.length < 8)
|
|
9
9
|
throw new Error("Protocol message too short");
|
|
10
10
|
return (t[4] | t[5] << 8 | t[6] << 16 | t[7] << 24) >>> 0;
|
|
11
11
|
}
|
|
12
|
-
function
|
|
13
|
-
return
|
|
12
|
+
function he(t) {
|
|
13
|
+
return fe(t) & 4294901760;
|
|
14
14
|
}
|
|
15
|
-
function
|
|
16
|
-
const e =
|
|
15
|
+
function ie(t) {
|
|
16
|
+
const e = oe(t), r = new DataView(e.buffer, e.byteOffset, e.byteLength);
|
|
17
17
|
if (e.length < 27)
|
|
18
18
|
throw new Error("Protocol payload too short");
|
|
19
19
|
const n = r.getUint32(0, !0), s = r.getUint32(4, !0), i = r.getUint32(8, !0), o = r.getUint32(12, !0), a = r.getUint32(16, !0), c = r.getUint32(20, !0), l = r.getUint8(24), E = r.getUint8(25), d = r.getUint8(26);
|
|
@@ -36,7 +36,7 @@ function se(t) {
|
|
|
36
36
|
};
|
|
37
37
|
}
|
|
38
38
|
async function Be(t, e, r) {
|
|
39
|
-
const n =
|
|
39
|
+
const n = oe(t), s = ie(n);
|
|
40
40
|
if (e !== void 0 && s.opcode !== e)
|
|
41
41
|
throw new Error(`Unexpected opcode ${s.opcode}`);
|
|
42
42
|
if (s.payloadType !== 8)
|
|
@@ -71,8 +71,8 @@ async function Xr(t) {
|
|
|
71
71
|
a.set(i[l], c), c += i[l].length;
|
|
72
72
|
return a;
|
|
73
73
|
}
|
|
74
|
-
var
|
|
75
|
-
const It = 161, mt = 162,
|
|
74
|
+
var R = /* @__PURE__ */ ((t) => (t[t.Null = 1] = "Null", t[t.Bool = 2] = "Bool", t[t.Int32 = 3] = "Int32", t[t.Int64 = 4] = "Int64", t[t.UInt32 = 5] = "UInt32", t[t.UInt64 = 6] = "UInt64", t[t.Float32 = 7] = "Float32", t[t.Float64 = 8] = "Float64", t[t.Array = 9] = "Array", t[t.Dict = 10] = "Dict", t[t.Object = 11] = "Object", t[t.String = 12] = "String", t[t.Binary = 13] = "Binary", t[t.Guid = 14] = "Guid", t))(R || {});
|
|
75
|
+
const It = 161, mt = 162, Ee = new TextEncoder(), Jr = new TextDecoder("utf-8", { fatal: !0 });
|
|
76
76
|
class D {
|
|
77
77
|
constructor(e = 1) {
|
|
78
78
|
this.version = e, this.buffer.writeByte(It), this.buffer.writeVarUInt(e >>> 0);
|
|
@@ -108,7 +108,7 @@ class D {
|
|
|
108
108
|
this.writeFixedField(e, 14, () => this.buffer.writeBytes(n));
|
|
109
109
|
}
|
|
110
110
|
writeStringField(e, r) {
|
|
111
|
-
const n =
|
|
111
|
+
const n = Ee.encode(r ?? "");
|
|
112
112
|
this.writeVariableField(e, 12, n);
|
|
113
113
|
}
|
|
114
114
|
writeBinaryField(e, r) {
|
|
@@ -121,7 +121,7 @@ class D {
|
|
|
121
121
|
this.writeVariableField(e, 11, i);
|
|
122
122
|
}
|
|
123
123
|
writeArrayField(e, r, n) {
|
|
124
|
-
const s = new
|
|
124
|
+
const s = new we(r);
|
|
125
125
|
n(s);
|
|
126
126
|
const i = s.finish();
|
|
127
127
|
this.writeVariableField(e, 9, i);
|
|
@@ -142,10 +142,10 @@ class D {
|
|
|
142
142
|
this.writeFieldHeader(e, r, n.length), this.buffer.writeBytes(n);
|
|
143
143
|
}
|
|
144
144
|
writeFieldHeader(e, r, n) {
|
|
145
|
-
this.buffer.writeUInt32(e >>> 0), this.buffer.writeByte(
|
|
145
|
+
this.buffer.writeUInt32(e >>> 0), this.buffer.writeByte(pe(r)), tn(r) && this.buffer.writeVarUInt(n >>> 0);
|
|
146
146
|
}
|
|
147
147
|
}
|
|
148
|
-
class
|
|
148
|
+
class we {
|
|
149
149
|
constructor(e) {
|
|
150
150
|
this.elementType = e;
|
|
151
151
|
}
|
|
@@ -208,7 +208,7 @@ class Se {
|
|
|
208
208
|
12
|
|
209
209
|
/* String */
|
|
210
210
|
), this.count++;
|
|
211
|
-
const r =
|
|
211
|
+
const r = Ee.encode(e ?? "");
|
|
212
212
|
this.payload.writeVarUInt(r.length), this.payload.writeBytes(r);
|
|
213
213
|
}
|
|
214
214
|
writeBinary(e) {
|
|
@@ -232,7 +232,7 @@ class Se {
|
|
|
232
232
|
9
|
|
233
233
|
/* Array */
|
|
234
234
|
), this.count++;
|
|
235
|
-
const n = new
|
|
235
|
+
const n = new we(e);
|
|
236
236
|
r(n);
|
|
237
237
|
const s = n.finish();
|
|
238
238
|
this.payload.writeBytes(s);
|
|
@@ -249,11 +249,11 @@ class Se {
|
|
|
249
249
|
}
|
|
250
250
|
finish() {
|
|
251
251
|
const e = new $();
|
|
252
|
-
return e.writeByte(
|
|
252
|
+
return e.writeByte(pe(this.elementType)), e.writeVarUInt(this.count), e.writeBytes(this.payload.toUint8Array()), e.toUint8Array();
|
|
253
253
|
}
|
|
254
254
|
ensureElementType(e) {
|
|
255
255
|
if (this.elementType !== e)
|
|
256
|
-
throw new Error(`Array element type is ${
|
|
256
|
+
throw new Error(`Array element type is ${R[this.elementType]}, expected ${R[e]}`);
|
|
257
257
|
}
|
|
258
258
|
}
|
|
259
259
|
class xe {
|
|
@@ -274,7 +274,7 @@ class xe {
|
|
|
274
274
|
if (this.entryOpen)
|
|
275
275
|
throw new Error("Dictionary entry not completed");
|
|
276
276
|
const e = new $();
|
|
277
|
-
return e.writeByte(
|
|
277
|
+
return e.writeByte(pe(this.keyType)), e.writeByte(pe(this.valueType)), e.writeVarUInt(this.count), e.writeBytes(this.payload.toUint8Array()), e.toUint8Array();
|
|
278
278
|
}
|
|
279
279
|
}
|
|
280
280
|
class Qr {
|
|
@@ -341,7 +341,7 @@ class Qr {
|
|
|
341
341
|
12
|
|
342
342
|
/* String */
|
|
343
343
|
);
|
|
344
|
-
const r =
|
|
344
|
+
const r = Ee.encode(e ?? "");
|
|
345
345
|
this.payload.writeVarUInt(r.length), this.payload.writeBytes(r), this.keyWritten = !0;
|
|
346
346
|
}
|
|
347
347
|
writeKeyBinary(e) {
|
|
@@ -419,7 +419,7 @@ class Qr {
|
|
|
419
419
|
12
|
|
420
420
|
/* String */
|
|
421
421
|
);
|
|
422
|
-
const r =
|
|
422
|
+
const r = Ee.encode(e ?? "");
|
|
423
423
|
this.payload.writeVarUInt(r.length), this.payload.writeBytes(r), this.valueWritten = !0;
|
|
424
424
|
}
|
|
425
425
|
writeValueObject(e, r) {
|
|
@@ -437,7 +437,7 @@ class Qr {
|
|
|
437
437
|
9
|
|
438
438
|
/* Array */
|
|
439
439
|
);
|
|
440
|
-
const n = new
|
|
440
|
+
const n = new we(e);
|
|
441
441
|
r(n);
|
|
442
442
|
const s = n.finish();
|
|
443
443
|
this.payload.writeBytes(s), this.valueWritten = !0;
|
|
@@ -461,11 +461,11 @@ class Qr {
|
|
|
461
461
|
}
|
|
462
462
|
ensureKeyType(e) {
|
|
463
463
|
if (this.keyType !== e)
|
|
464
|
-
throw new Error(`Dictionary key type is ${
|
|
464
|
+
throw new Error(`Dictionary key type is ${R[this.keyType]}, expected ${R[e]}`);
|
|
465
465
|
}
|
|
466
466
|
ensureValueType(e) {
|
|
467
467
|
if (this.valueType !== e)
|
|
468
|
-
throw new Error(`Dictionary value type is ${
|
|
468
|
+
throw new Error(`Dictionary value type is ${R[this.valueType]}, expected ${R[e]}`);
|
|
469
469
|
}
|
|
470
470
|
}
|
|
471
471
|
class X {
|
|
@@ -475,7 +475,7 @@ class X {
|
|
|
475
475
|
offset;
|
|
476
476
|
end;
|
|
477
477
|
static create(e) {
|
|
478
|
-
const r =
|
|
478
|
+
const r = oe(e);
|
|
479
479
|
if (r.length < 2)
|
|
480
480
|
throw new Error("Teleport payload too short");
|
|
481
481
|
if (r[0] !== It || r[r.length - 1] !== mt)
|
|
@@ -594,7 +594,7 @@ class F {
|
|
|
594
594
|
}
|
|
595
595
|
ensureType(e) {
|
|
596
596
|
if (this.type !== e)
|
|
597
|
-
throw new Error(`Teleport value has type ${
|
|
597
|
+
throw new Error(`Teleport value has type ${R[this.type]}, expected ${R[e]}`);
|
|
598
598
|
}
|
|
599
599
|
}
|
|
600
600
|
class Zr extends F {
|
|
@@ -621,7 +621,7 @@ class Ge {
|
|
|
621
621
|
this.count = U(e, n, "ArrayMalformed"), this.offset = n.offset;
|
|
622
622
|
}
|
|
623
623
|
static create(e) {
|
|
624
|
-
return new Ge(
|
|
624
|
+
return new Ge(oe(e));
|
|
625
625
|
}
|
|
626
626
|
next() {
|
|
627
627
|
if (this.index >= this.count) {
|
|
@@ -669,7 +669,7 @@ class Ge {
|
|
|
669
669
|
return this.offset += e, new ee(10, r);
|
|
670
670
|
}
|
|
671
671
|
default:
|
|
672
|
-
throw new Error(`Unsupported array element type ${
|
|
672
|
+
throw new Error(`Unsupported array element type ${R[this.elementType]}`);
|
|
673
673
|
}
|
|
674
674
|
}
|
|
675
675
|
}
|
|
@@ -695,7 +695,7 @@ class Ve {
|
|
|
695
695
|
this.count = U(e, r, "DictMalformed"), this.offset = r.offset;
|
|
696
696
|
}
|
|
697
697
|
static create(e) {
|
|
698
|
-
return new Ve(
|
|
698
|
+
return new Ve(oe(e));
|
|
699
699
|
}
|
|
700
700
|
next() {
|
|
701
701
|
if (this.index >= this.count) {
|
|
@@ -759,7 +759,7 @@ class Ve {
|
|
|
759
759
|
return this.offset += e, new F(this.valueType, r);
|
|
760
760
|
}
|
|
761
761
|
default:
|
|
762
|
-
throw new Error(`Unsupported dictionary value type ${
|
|
762
|
+
throw new Error(`Unsupported dictionary value type ${R[this.valueType]}`);
|
|
763
763
|
}
|
|
764
764
|
}
|
|
765
765
|
}
|
|
@@ -909,7 +909,7 @@ function U(t, e, r) {
|
|
|
909
909
|
function en(t) {
|
|
910
910
|
return t < 128 ? 1 : t < 16384 ? 2 : t < 2097152 ? 3 : t < 268435456 ? 4 : 5;
|
|
911
911
|
}
|
|
912
|
-
function
|
|
912
|
+
function pe(t, e = 0) {
|
|
913
913
|
if ((e & 240) !== 0)
|
|
914
914
|
throw new Error("Teleport flags must fit into 4 bits");
|
|
915
915
|
return (t & 15) << 4 | e & 15;
|
|
@@ -961,7 +961,7 @@ function He(t, e) {
|
|
|
961
961
|
}
|
|
962
962
|
let a = s.offset;
|
|
963
963
|
for (let c = 0; c < i; c++)
|
|
964
|
-
a =
|
|
964
|
+
a = be(n, t, a, "ArrayMalformed");
|
|
965
965
|
return a - e;
|
|
966
966
|
}
|
|
967
967
|
function $e(t, e) {
|
|
@@ -974,10 +974,10 @@ function $e(t, e) {
|
|
|
974
974
|
const s = { offset: e + 2 }, i = U(t, s, "DictMalformed");
|
|
975
975
|
let o = s.offset;
|
|
976
976
|
for (let a = 0; a < i; a++)
|
|
977
|
-
o =
|
|
977
|
+
o = be(r, t, o, "DictMalformed"), o = be(n, t, o, "DictMalformed");
|
|
978
978
|
return o - e;
|
|
979
979
|
}
|
|
980
|
-
function
|
|
980
|
+
function be(t, e, r, n) {
|
|
981
981
|
const s = j(t);
|
|
982
982
|
if (s >= 0)
|
|
983
983
|
return C(e, r, s), r + s;
|
|
@@ -996,16 +996,16 @@ function Re(t, e, r, n) {
|
|
|
996
996
|
case 10:
|
|
997
997
|
return r + $e(e, r);
|
|
998
998
|
default:
|
|
999
|
-
throw new Error(`Unsupported Teleport type ${
|
|
999
|
+
throw new Error(`Unsupported Teleport type ${R[t]}`);
|
|
1000
1000
|
}
|
|
1001
1001
|
}
|
|
1002
1002
|
function qe(t) {
|
|
1003
1003
|
return Array.from(t).map((e) => e.toString(16).padStart(2, "0")).join("");
|
|
1004
1004
|
}
|
|
1005
|
-
function
|
|
1005
|
+
function oe(t) {
|
|
1006
1006
|
return t instanceof Uint8Array ? t : new Uint8Array(t);
|
|
1007
1007
|
}
|
|
1008
|
-
var _t = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.Opus = 1] = "Opus", t[t.Mp3 = 2] = "Mp3", t[t.RawPcm16 = 3] = "RawPcm16", t))(_t || {}), J = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.MobileWeb = 1] = "MobileWeb", t[t.MobileApp = 2] = "MobileApp", t[t.DesktopWeb = 3] = "DesktopWeb", t[t.DesktopApp = 4] = "DesktopApp", t))(J || {}), Q = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.Backend = 2] = "Backend", t[t.Server = 4] = "Server", t[t.Plugin = 8] = "Plugin", t[t.Browser = 16] = "Browser", t))(Q || {}), k = /* @__PURE__ */ ((t) => (t[t.None = 0] = "None", t[t.WebSocket = 1] = "WebSocket", t[t.WebSocketProxy = 2] = "WebSocketProxy", t[t.WebTransport = 4] = "WebTransport", t[t.WebTransportProxy = 8] = "WebTransportProxy", t[t.Tcp = 16] = "Tcp", t[t.TcpProxy = 32] = "TcpProxy", t[t.Https = 64] = "Https", t))(k || {}), Z = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.MessagePack = 1] = "MessagePack", t[t.MemoryPack = 2] = "MemoryPack", t[t.Json = 4] = "Json", t[t.Teleport = 8] = "Teleport", t[t.All = 15] = "All", t))(Z || {}), Tt = /* @__PURE__ */ ((t) => (t[t.Face = 0] = "Face", t[t.Hands = 1] = "Hands", t[t.Pose = 2] = "Pose", t[t.All = 3] = "All", t))(Tt || {}), q = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.Machine = 1] = "Machine", t[t.Human = 2] = "Human", t))(q || {}), St = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.H264 = 1] = "H264", t[t.Vp8 = 2] = "Vp8", t[t.Vp9 = 3] = "Vp9", t[t.Av1 = 4] = "Av1", t))(St || {}), Ke = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.DotNet = 1] = "DotNet", t[t.TypeScript = 2] = "TypeScript", t[t.Cpp = 3] = "Cpp", t))(Ke || {}), wt = /* @__PURE__ */ ((t) => (t[t.Local = 0] = "Local", t[t.Cloud = 1] = "Cloud", t))(wt || {}), At = /* @__PURE__ */ ((t) => (t[t.Bundle = 0] = "Bundle", t[t.GitSource = 1] = "GitSource", t))(At || {}), T = /* @__PURE__ */ ((t) => (t[t.NONE = 0] = "NONE", t[t.CONSTANT_GROUP_BITS = 15] = "CONSTANT_GROUP_BITS", t[t.CONSTANT_GROUP_OFFSET = 16] = "CONSTANT_GROUP_OFFSET", t[t.GROUP_CORE = 65536] = "GROUP_CORE", t[t.CORE_AUTH_RESPONSE = 65537] = "CORE_AUTH_RESPONSE", t[t.CORE_AUTH_TICKET = 65538] = "CORE_AUTH_TICKET", t[t.CORE_GLOBAL_STATE = 65539] = "CORE_GLOBAL_STATE", t[t.CORE_ON_SERVER_STATUS_PING = 65540] = "CORE_ON_SERVER_STATUS_PING", t[t.CORE_ON_USER_JOINED = 65541] = "CORE_ON_USER_JOINED", t[t.CORE_ON_USER_LEFT = 65542] = "CORE_ON_USER_LEFT", t[t.CORE_ON_CLIENT_JOINED = 65543] = "CORE_ON_CLIENT_JOINED", t[t.CORE_ON_CLIENT_LEFT = 65544] = "CORE_ON_CLIENT_LEFT", t[t.CORE_ON_SERVER_STARTED = 65545] = "CORE_ON_SERVER_STARTED", t[t.CORE_ON_SERVER_STOPPED = 65546] = "CORE_ON_SERVER_STOPPED", t[t.CORE_ON_SERVER_STOPPING = 65547] = "CORE_ON_SERVER_STOPPING", t[t.CORE_ON_CLIENT_READY = 65548] = "CORE_ON_CLIENT_READY", t[t.CORE_CLIENT_READY = 65549] = "CORE_CLIENT_READY", t[t.CORE_SERVER_INIT = 65550] = "CORE_SERVER_INIT", t[t.CORE_ON_PLUGIN_RELOADED = 65551] = "CORE_ON_PLUGIN_RELOADED", t[t.CORE_SERVER_START = 65552] = "CORE_SERVER_START", t[t.CORE_SERVER_STOP = 65553] = "CORE_SERVER_STOP", t[t.CORE_ON_HOSTED_SERVER_EXIT = 65554] = "CORE_ON_HOSTED_SERVER_EXIT", t[t.CORE_DYNAMIC_CONFIG = 65555] = "CORE_DYNAMIC_CONFIG", t[t.CORE_PROXY_RPC_AUTH_TICKET = 65556] = "CORE_PROXY_RPC_AUTH_TICKET", t[t.CORE_SERVER_INIT2 = 65557] = "CORE_SERVER_INIT2", t[t.GROUP_KEEPALIVE = 131072] = "GROUP_KEEPALIVE", t[t.KEEPALIVE_REQUEST = 131073] = "KEEPALIVE_REQUEST", t[t.KEEPALIVE_RESPONSE = 131074] = "KEEPALIVE_RESPONSE", t[t.GROUP_EVENTS = 262144] = "GROUP_EVENTS", t[t.EVENTS_PROFILE_UPDATE = 262145] = "EVENTS_PROFILE_UPDATE", t[t.EVENTS_CHANNEL_COMPLETE = 262146] = "EVENTS_CHANNEL_COMPLETE", t[t.EVENTS_SPEECH_PLAYBACK_COMPLETE = 262147] = "EVENTS_SPEECH_PLAYBACK_COMPLETE", t[t.GROUP_ANALYTICS = 524288] = "GROUP_ANALYTICS", t[t.ANALYTICS_LOGS = 524289] = "ANALYTICS_LOGS", t[t.ANALYTICS_EVENTS = 524290] = "ANALYTICS_EVENTS", t[t.ANALYTICS_USAGES = 524291] = "ANALYTICS_USAGES", t[t.ANALYTICS_USAGE = 524292] = "ANALYTICS_USAGE", t[t.ANALYTICS_SPECIAL_LOG = 524293] = "ANALYTICS_SPECIAL_LOG", t[t.ANALYTICS_PROCESSING_UPDATE = 524294] = "ANALYTICS_PROCESSING_UPDATE", t[t.ANALYTICS_REACTIVE_PROCESSING_UPDATE = 524295] = "ANALYTICS_REACTIVE_PROCESSING_UPDATE", t[t.ANALYTICS_IKON_PROXY_SERVER_STATS = 524296] = "ANALYTICS_IKON_PROXY_SERVER_STATS", t[t.GROUP_ACTIONS = 1048576] = "GROUP_ACTIONS", t[t.ACTION_CALL = 1048577] = "ACTION_CALL", t[t.ACTION_ACTIVE = 1048578] = "ACTION_ACTIVE", t[t.ACTION_TEXT_OUTPUT = 1048579] = "ACTION_TEXT_OUTPUT", t[t.ACTION_TEXT_OUTPUT_DELTA = 1048580] = "ACTION_TEXT_OUTPUT_DELTA", t[t.ACTION_TEXT_OUTPUT_DELTA_FULL = 1048581] = "ACTION_TEXT_OUTPUT_DELTA_FULL", t[t.ACTION_SET_STATE = 1048582] = "ACTION_SET_STATE", t[t.ACTION_TAP = 1048583] = "ACTION_TAP", t[t.ACTION_PAN = 1048584] = "ACTION_PAN", t[t.ACTION_ZOOM = 1048585] = "ACTION_ZOOM", t[t.ACTION_FILE_UPLOAD_BEGIN = 1048586] = "ACTION_FILE_UPLOAD_BEGIN", t[t.ACTION_FILE_UPLOAD_DATA = 1048587] = "ACTION_FILE_UPLOAD_DATA", t[t.ACTION_FILE_UPLOAD_ACK = 1048588] = "ACTION_FILE_UPLOAD_ACK", t[t.ACTION_FILE_UPLOAD_END = 1048589] = "ACTION_FILE_UPLOAD_END", t[t.ACTION_FILE_UPLOAD_RESULT = 1048590] = "ACTION_FILE_UPLOAD_RESULT", t[t.ACTION_OPEN_CHANNEL = 1048591] = "ACTION_OPEN_CHANNEL", t[t.ACTION_OPEN_EXTERNAL_URL = 1048592] = "ACTION_OPEN_EXTERNAL_URL", t[t.ACTION_UI_OPEN_VIEW = 1048593] = "ACTION_UI_OPEN_VIEW", t[t.ACTION_UI_CLOSE_VIEW = 1048594] = "ACTION_UI_CLOSE_VIEW", t[t.ACTION_UI_BLOCKING_BEGIN = 1048595] = "ACTION_UI_BLOCKING_BEGIN", t[t.ACTION_UI_BLOCKING_END = 1048596] = "ACTION_UI_BLOCKING_END", t[t.ACTION_UI_UPDATE_TEXT_DELTA = 1048597] = "ACTION_UI_UPDATE_TEXT_DELTA", t[t.ACTION_UI_DELETE_CONTAINER = 1048598] = "ACTION_UI_DELETE_CONTAINER", t[t.ACTION_UPDATE_GFX_SHADER = 1048599] = "ACTION_UPDATE_GFX_SHADER", t[t.ACTION_FUNCTION_REGISTER = 1048600] = "ACTION_FUNCTION_REGISTER", t[t.ACTION_FUNCTION_CALL = 1048601] = "ACTION_FUNCTION_CALL", t[t.ACTION_FUNCTION_RESULT = 1048602] = "ACTION_FUNCTION_RESULT", t[t.ACTION_GENERATE_ANSWER = 1048603] = "ACTION_GENERATE_ANSWER", t[t.ACTION_REGENERATE_ANSWER = 1048604] = "ACTION_REGENERATE_ANSWER", t[t.ACTION_CLEAR_CHAT_MESSAGE_HISTORY = 1048605] = "ACTION_CLEAR_CHAT_MESSAGE_HISTORY", t[t.ACTION_CLEAR_STATE = 1048606] = "ACTION_CLEAR_STATE", t[t.ACTION_RELOAD_CHANNELS = 1048607] = "ACTION_RELOAD_CHANNELS", t[t.ACTION_RELOAD_PROFILE = 1048608] = "ACTION_RELOAD_PROFILE", t[t.ACTION_CLASSIFICATION_RESULT = 1048609] = "ACTION_CLASSIFICATION_RESULT", t[t.ACTION_AUDIO_STOP = 1048610] = "ACTION_AUDIO_STOP", t[t.ACTION_CALL_TEXT = 1048611] = "ACTION_CALL_TEXT", t[t.ACTION_RELOAD_APPLICATION = 1048612] = "ACTION_RELOAD_APPLICATION", t[t.ACTION_CANCEL_GENERATION = 1048613] = "ACTION_CANCEL_GENERATION", t[t.ACTION_UI_SET_CONTAINER_STABLE = 1048614] = "ACTION_UI_SET_CONTAINER_STABLE", t[t.ACTION_SPEECH_RECOGNIZED = 1048615] = "ACTION_SPEECH_RECOGNIZED", t[t.ACTION_CALL_RESULT = 1048616] = "ACTION_CALL_RESULT", t[t.ACTION_RELOAD_PROVIDER = 1048617] = "ACTION_RELOAD_PROVIDER", t[t.ACTION_DOWNLOAD = 1048618] = "ACTION_DOWNLOAD", t[t.ACTION_SCROLL_TO_CONTAINER = 1048619] = "ACTION_SCROLL_TO_CONTAINER", t[t.ACTION_UI_CLEAR_STREAM = 1048620] = "ACTION_UI_CLEAR_STREAM", t[t.ACTION_PLAY_SOUND = 1048621] = "ACTION_PLAY_SOUND", t[t.ACTION_ENTER_FULLSCREEN = 1048622] = "ACTION_ENTER_FULLSCREEN", t[t.ACTION_STOP_SOUND = 1048623] = "ACTION_STOP_SOUND", t[t.ACTION_START_RECORDING = 1048624] = "ACTION_START_RECORDING", t[t.ACTION_STOP_RECORDING = 1048625] = "ACTION_STOP_RECORDING", t[t.ACTION_OPTIMISTIC_CLIENT_CALLS = 1048626] = "ACTION_OPTIMISTIC_CLIENT_CALLS", t[t.ACTION_FUNCTION_ENUMERATION_ITEM = 1048627] = "ACTION_FUNCTION_ENUMERATION_ITEM", t[t.ACTION_FUNCTION_ENUMERATION_END = 1048628] = "ACTION_FUNCTION_ENUMERATION_END", t[t.ACTION_FUNCTION_CANCEL = 1048629] = "ACTION_FUNCTION_CANCEL", t[t.ACTION_FUNCTION_DISPOSE = 1048630] = "ACTION_FUNCTION_DISPOSE", t[t.ACTION_FUNCTION_ERROR = 1048631] = "ACTION_FUNCTION_ERROR", t[t.ACTION_FUNCTION_ACK = 1048632] = "ACTION_FUNCTION_ACK", t[t.ACTION_FUNCTION_AWAITING_APPROVAL = 1048633] = "ACTION_FUNCTION_AWAITING_APPROVAL", t[t.ACTION_FUNCTION_APPROVAL_REQUIRED = 1048634] = "ACTION_FUNCTION_APPROVAL_REQUIRED", t[t.ACTION_FUNCTION_APPROVAL_RESPONSE = 1048635] = "ACTION_FUNCTION_APPROVAL_RESPONSE", t[t.UI_UPDATE_ACK = 1048636] = "UI_UPDATE_ACK", t[t.ACTION_CALL2 = 1048637] = "ACTION_CALL2", t[t.ACTION_FUNCTION_REGISTER_BATCH = 1048638] = "ACTION_FUNCTION_REGISTER_BATCH", t[t.ACTION_TRIGGER_GIT_PULL = 1048639] = "ACTION_TRIGGER_GIT_PULL", t[t.ACTION_FILE_UPLOAD_CALLBACK = 1048640] = "ACTION_FILE_UPLOAD_CALLBACK", t[t.ACTION_CUSTOM_USER_MESSAGE = 1048641] = "ACTION_CUSTOM_USER_MESSAGE", t[t.GROUP_UI = 2097152] = "GROUP_UI", t[t.UI_STREAM_BEGIN = 2097153] = "UI_STREAM_BEGIN", t[t.UI_STREAM_END = 2097154] = "UI_STREAM_END", t[t.UI_CONTAINER_BEGIN = 2097155] = "UI_CONTAINER_BEGIN", t[t.UI_CONTAINER_END = 2097156] = "UI_CONTAINER_END", t[t.UI_SECTION_BEGIN = 2097157] = "UI_SECTION_BEGIN", t[t.UI_SECTION_END = 2097158] = "UI_SECTION_END", t[t.UI_LIST_BEGIN = 2097159] = "UI_LIST_BEGIN", t[t.UI_LIST_ITEM = 2097160] = "UI_LIST_ITEM", t[t.UI_LIST_END = 2097161] = "UI_LIST_END", t[t.UI_TEXT = 2097162] = "UI_TEXT", t[t.UI_HEADER = 2097163] = "UI_HEADER", t[t.UI_SEPARATOR = 2097164] = "UI_SEPARATOR", t[t.UI_BUTTON = 2097165] = "UI_BUTTON", t[t.UI_ICON_BUTTON = 2097166] = "UI_ICON_BUTTON", t[t.UI_IMAGE = 2097167] = "UI_IMAGE", t[t.UI_FILE = 2097168] = "UI_FILE", t[t.UI_BADGE = 2097169] = "UI_BADGE", t[t.UI_CONTENT_LINK = 2097170] = "UI_CONTENT_LINK", t[t.UI_MAP = 2097171] = "UI_MAP", t[t.UI_VEGA_CHART = 2097172] = "UI_VEGA_CHART", t[t.UI_ICON = 2097173] = "UI_ICON", t[t.UI_FILE_UPLOAD_SECTION_BEGIN = 2097174] = "UI_FILE_UPLOAD_SECTION_BEGIN", t[t.UI_FILE_UPLOAD_SECTION_END = 2097175] = "UI_FILE_UPLOAD_SECTION_END", t[t.UI_MATERIAL_SYMBOL = 2097176] = "UI_MATERIAL_SYMBOL", t[t.UI_BUTTON_BEGIN = 2097177] = "UI_BUTTON_BEGIN", t[t.UI_BUTTON_END = 2097178] = "UI_BUTTON_END", t[t.UI_CONTAINER_DELETE = 2097179] = "UI_CONTAINER_DELETE", t[t.UI_INPUT_TEXT = 2097180] = "UI_INPUT_TEXT", t[t.UI_PROGRESS_BAR = 2097181] = "UI_PROGRESS_BAR", t[t.UI_UPDATE_BEGIN = 2097182] = "UI_UPDATE_BEGIN", t[t.UI_UPDATE_END = 2097183] = "UI_UPDATE_END", t[t.UI_AUTOCOMPLETE = 2097184] = "UI_AUTOCOMPLETE", t[t.UI_CHECKBOX = 2097185] = "UI_CHECKBOX", t[t.UI_QS = 2097186] = "UI_QS", t[t.UI_ELEMENT = 2097187] = "UI_ELEMENT", t[t.UI_STYLES = 2097188] = "UI_STYLES", t[t.UI_SVG = 2097189] = "UI_SVG", t[t.UI_UPDATE = 2097190] = "UI_UPDATE", t[t.UI_INIT = 2097191] = "UI_INIT", t[t.UI_STYLES_BATCH = 2097192] = "UI_STYLES_BATCH", t[t.UI_STYLES_DELETE = 2097193] = "UI_STYLES_DELETE", t[t.GROUP_COMMON = 4128768] = "GROUP_COMMON", t[t.GROUP_AUDIO = 4194304] = "GROUP_AUDIO", t[t.AUDIO_STREAM_BEGIN = 4194305] = "AUDIO_STREAM_BEGIN", t[t.AUDIO_STREAM_END = 4194306] = "AUDIO_STREAM_END", t[t.AUDIO_FRAME = 4194307] = "AUDIO_FRAME", t[t.AUDIO_FRAME_VOLUME = 4194308] = "AUDIO_FRAME_VOLUME", t[t.AUDIO_FRAME2 = 4194309] = "AUDIO_FRAME2", t[t.GROUP_VIDEO = 8388608] = "GROUP_VIDEO", t[t.VIDEO_STREAM_BEGIN = 8388609] = "VIDEO_STREAM_BEGIN", t[t.VIDEO_STREAM_END = 8388610] = "VIDEO_STREAM_END", t[t.VIDEO_FRAME = 8388611] = "VIDEO_FRAME", t[t.VIDEO_REQUEST_IDR_FRAME = 8388612] = "VIDEO_REQUEST_IDR_FRAME", t[t.VIDEO_INVALIDATE_FRAME = 8388613] = "VIDEO_INVALIDATE_FRAME", t[t.GROUP_TRACKING = 16777216] = "GROUP_TRACKING", t[t.TRACKING_STREAM_BEGIN = 16777217] = "TRACKING_STREAM_BEGIN", t[t.TRACKING_STREAM_END = 16777218] = "TRACKING_STREAM_END", t[t.TRACKING_FRAME = 16777219] = "TRACKING_FRAME", t[t.GROUP_SCENE = 33554432] = "GROUP_SCENE", t[t.SCENE_MESH = 33554433] = "SCENE_MESH", t[t.SCENE_ARRAY = 33554434] = "SCENE_ARRAY", t[t.GROUP_ALL = 67043328] = "GROUP_ALL", t[t.CONSTANT_GROUP_MASK = 2147418112] = "CONSTANT_GROUP_MASK", t))(T || {});
|
|
1008
|
+
var _t = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.Opus = 1] = "Opus", t[t.Mp3 = 2] = "Mp3", t[t.RawPcm16 = 3] = "RawPcm16", t))(_t || {}), J = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.MobileWeb = 1] = "MobileWeb", t[t.MobileApp = 2] = "MobileApp", t[t.DesktopWeb = 3] = "DesktopWeb", t[t.DesktopApp = 4] = "DesktopApp", t))(J || {}), Q = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.Backend = 2] = "Backend", t[t.Server = 4] = "Server", t[t.Plugin = 8] = "Plugin", t[t.Browser = 16] = "Browser", t))(Q || {}), k = /* @__PURE__ */ ((t) => (t[t.None = 0] = "None", t[t.WebSocket = 1] = "WebSocket", t[t.WebSocketProxy = 2] = "WebSocketProxy", t[t.WebTransport = 4] = "WebTransport", t[t.WebTransportProxy = 8] = "WebTransportProxy", t[t.Tcp = 16] = "Tcp", t[t.TcpProxy = 32] = "TcpProxy", t[t.Https = 64] = "Https", t))(k || {}), Z = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.MessagePack = 1] = "MessagePack", t[t.MemoryPack = 2] = "MemoryPack", t[t.Json = 4] = "Json", t[t.Teleport = 8] = "Teleport", t[t.All = 15] = "All", t))(Z || {}), Tt = /* @__PURE__ */ ((t) => (t[t.Face = 0] = "Face", t[t.Hands = 1] = "Hands", t[t.Pose = 2] = "Pose", t[t.All = 3] = "All", t))(Tt || {}), q = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.Machine = 1] = "Machine", t[t.Human = 2] = "Human", t))(q || {}), St = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.H264 = 1] = "H264", t[t.Vp8 = 2] = "Vp8", t[t.Vp9 = 3] = "Vp9", t[t.Av1 = 4] = "Av1", t))(St || {}), Ke = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.DotNet = 1] = "DotNet", t[t.TypeScript = 2] = "TypeScript", t[t.Cpp = 3] = "Cpp", t))(Ke || {}), wt = /* @__PURE__ */ ((t) => (t[t.Local = 0] = "Local", t[t.Cloud = 1] = "Cloud", t))(wt || {}), At = /* @__PURE__ */ ((t) => (t[t.Bundle = 0] = "Bundle", t[t.GitSource = 1] = "GitSource", t))(At || {}), S = /* @__PURE__ */ ((t) => (t[t.NONE = 0] = "NONE", t[t.CONSTANT_GROUP_BITS = 15] = "CONSTANT_GROUP_BITS", t[t.CONSTANT_GROUP_OFFSET = 16] = "CONSTANT_GROUP_OFFSET", t[t.GROUP_CORE = 65536] = "GROUP_CORE", t[t.CORE_AUTH_RESPONSE = 65537] = "CORE_AUTH_RESPONSE", t[t.CORE_AUTH_TICKET = 65538] = "CORE_AUTH_TICKET", t[t.CORE_GLOBAL_STATE = 65539] = "CORE_GLOBAL_STATE", t[t.CORE_ON_SERVER_STATUS_PING = 65540] = "CORE_ON_SERVER_STATUS_PING", t[t.CORE_ON_USER_JOINED = 65541] = "CORE_ON_USER_JOINED", t[t.CORE_ON_USER_LEFT = 65542] = "CORE_ON_USER_LEFT", t[t.CORE_ON_CLIENT_JOINED = 65543] = "CORE_ON_CLIENT_JOINED", t[t.CORE_ON_CLIENT_LEFT = 65544] = "CORE_ON_CLIENT_LEFT", t[t.CORE_ON_SERVER_STARTED = 65545] = "CORE_ON_SERVER_STARTED", t[t.CORE_ON_SERVER_STOPPED = 65546] = "CORE_ON_SERVER_STOPPED", t[t.CORE_ON_SERVER_STOPPING = 65547] = "CORE_ON_SERVER_STOPPING", t[t.CORE_ON_CLIENT_READY = 65548] = "CORE_ON_CLIENT_READY", t[t.CORE_CLIENT_READY = 65549] = "CORE_CLIENT_READY", t[t.CORE_SERVER_INIT = 65550] = "CORE_SERVER_INIT", t[t.CORE_ON_PLUGIN_RELOADED = 65551] = "CORE_ON_PLUGIN_RELOADED", t[t.CORE_SERVER_START = 65552] = "CORE_SERVER_START", t[t.CORE_SERVER_STOP = 65553] = "CORE_SERVER_STOP", t[t.CORE_ON_HOSTED_SERVER_EXIT = 65554] = "CORE_ON_HOSTED_SERVER_EXIT", t[t.CORE_DYNAMIC_CONFIG = 65555] = "CORE_DYNAMIC_CONFIG", t[t.CORE_PROXY_RPC_AUTH_TICKET = 65556] = "CORE_PROXY_RPC_AUTH_TICKET", t[t.CORE_SERVER_INIT2 = 65557] = "CORE_SERVER_INIT2", t[t.GROUP_KEEPALIVE = 131072] = "GROUP_KEEPALIVE", t[t.KEEPALIVE_REQUEST = 131073] = "KEEPALIVE_REQUEST", t[t.KEEPALIVE_RESPONSE = 131074] = "KEEPALIVE_RESPONSE", t[t.GROUP_EVENTS = 262144] = "GROUP_EVENTS", t[t.EVENTS_PROFILE_UPDATE = 262145] = "EVENTS_PROFILE_UPDATE", t[t.EVENTS_CHANNEL_COMPLETE = 262146] = "EVENTS_CHANNEL_COMPLETE", t[t.EVENTS_SPEECH_PLAYBACK_COMPLETE = 262147] = "EVENTS_SPEECH_PLAYBACK_COMPLETE", t[t.GROUP_ANALYTICS = 524288] = "GROUP_ANALYTICS", t[t.ANALYTICS_LOGS = 524289] = "ANALYTICS_LOGS", t[t.ANALYTICS_EVENTS = 524290] = "ANALYTICS_EVENTS", t[t.ANALYTICS_USAGES = 524291] = "ANALYTICS_USAGES", t[t.ANALYTICS_USAGE = 524292] = "ANALYTICS_USAGE", t[t.ANALYTICS_SPECIAL_LOG = 524293] = "ANALYTICS_SPECIAL_LOG", t[t.ANALYTICS_PROCESSING_UPDATE = 524294] = "ANALYTICS_PROCESSING_UPDATE", t[t.ANALYTICS_REACTIVE_PROCESSING_UPDATE = 524295] = "ANALYTICS_REACTIVE_PROCESSING_UPDATE", t[t.ANALYTICS_IKON_PROXY_SERVER_STATS = 524296] = "ANALYTICS_IKON_PROXY_SERVER_STATS", t[t.GROUP_ACTIONS = 1048576] = "GROUP_ACTIONS", t[t.ACTION_CALL = 1048577] = "ACTION_CALL", t[t.ACTION_ACTIVE = 1048578] = "ACTION_ACTIVE", t[t.ACTION_TEXT_OUTPUT = 1048579] = "ACTION_TEXT_OUTPUT", t[t.ACTION_TEXT_OUTPUT_DELTA = 1048580] = "ACTION_TEXT_OUTPUT_DELTA", t[t.ACTION_TEXT_OUTPUT_DELTA_FULL = 1048581] = "ACTION_TEXT_OUTPUT_DELTA_FULL", t[t.ACTION_SET_STATE = 1048582] = "ACTION_SET_STATE", t[t.ACTION_TAP = 1048583] = "ACTION_TAP", t[t.ACTION_PAN = 1048584] = "ACTION_PAN", t[t.ACTION_ZOOM = 1048585] = "ACTION_ZOOM", t[t.ACTION_FILE_UPLOAD_BEGIN = 1048586] = "ACTION_FILE_UPLOAD_BEGIN", t[t.ACTION_FILE_UPLOAD_DATA = 1048587] = "ACTION_FILE_UPLOAD_DATA", t[t.ACTION_FILE_UPLOAD_ACK = 1048588] = "ACTION_FILE_UPLOAD_ACK", t[t.ACTION_FILE_UPLOAD_END = 1048589] = "ACTION_FILE_UPLOAD_END", t[t.ACTION_FILE_UPLOAD_RESULT = 1048590] = "ACTION_FILE_UPLOAD_RESULT", t[t.ACTION_OPEN_CHANNEL = 1048591] = "ACTION_OPEN_CHANNEL", t[t.ACTION_OPEN_EXTERNAL_URL = 1048592] = "ACTION_OPEN_EXTERNAL_URL", t[t.ACTION_UI_OPEN_VIEW = 1048593] = "ACTION_UI_OPEN_VIEW", t[t.ACTION_UI_CLOSE_VIEW = 1048594] = "ACTION_UI_CLOSE_VIEW", t[t.ACTION_UI_BLOCKING_BEGIN = 1048595] = "ACTION_UI_BLOCKING_BEGIN", t[t.ACTION_UI_BLOCKING_END = 1048596] = "ACTION_UI_BLOCKING_END", t[t.ACTION_UI_UPDATE_TEXT_DELTA = 1048597] = "ACTION_UI_UPDATE_TEXT_DELTA", t[t.ACTION_UI_DELETE_CONTAINER = 1048598] = "ACTION_UI_DELETE_CONTAINER", t[t.ACTION_UPDATE_GFX_SHADER = 1048599] = "ACTION_UPDATE_GFX_SHADER", t[t.ACTION_FUNCTION_REGISTER = 1048600] = "ACTION_FUNCTION_REGISTER", t[t.ACTION_FUNCTION_CALL = 1048601] = "ACTION_FUNCTION_CALL", t[t.ACTION_FUNCTION_RESULT = 1048602] = "ACTION_FUNCTION_RESULT", t[t.ACTION_GENERATE_ANSWER = 1048603] = "ACTION_GENERATE_ANSWER", t[t.ACTION_REGENERATE_ANSWER = 1048604] = "ACTION_REGENERATE_ANSWER", t[t.ACTION_CLEAR_CHAT_MESSAGE_HISTORY = 1048605] = "ACTION_CLEAR_CHAT_MESSAGE_HISTORY", t[t.ACTION_CLEAR_STATE = 1048606] = "ACTION_CLEAR_STATE", t[t.ACTION_RELOAD_CHANNELS = 1048607] = "ACTION_RELOAD_CHANNELS", t[t.ACTION_RELOAD_PROFILE = 1048608] = "ACTION_RELOAD_PROFILE", t[t.ACTION_CLASSIFICATION_RESULT = 1048609] = "ACTION_CLASSIFICATION_RESULT", t[t.ACTION_AUDIO_STOP = 1048610] = "ACTION_AUDIO_STOP", t[t.ACTION_CALL_TEXT = 1048611] = "ACTION_CALL_TEXT", t[t.ACTION_RELOAD_APPLICATION = 1048612] = "ACTION_RELOAD_APPLICATION", t[t.ACTION_CANCEL_GENERATION = 1048613] = "ACTION_CANCEL_GENERATION", t[t.ACTION_UI_SET_CONTAINER_STABLE = 1048614] = "ACTION_UI_SET_CONTAINER_STABLE", t[t.ACTION_SPEECH_RECOGNIZED = 1048615] = "ACTION_SPEECH_RECOGNIZED", t[t.ACTION_CALL_RESULT = 1048616] = "ACTION_CALL_RESULT", t[t.ACTION_RELOAD_PROVIDER = 1048617] = "ACTION_RELOAD_PROVIDER", t[t.ACTION_DOWNLOAD = 1048618] = "ACTION_DOWNLOAD", t[t.ACTION_SCROLL_TO_CONTAINER = 1048619] = "ACTION_SCROLL_TO_CONTAINER", t[t.ACTION_UI_CLEAR_STREAM = 1048620] = "ACTION_UI_CLEAR_STREAM", t[t.ACTION_PLAY_SOUND = 1048621] = "ACTION_PLAY_SOUND", t[t.ACTION_ENTER_FULLSCREEN = 1048622] = "ACTION_ENTER_FULLSCREEN", t[t.ACTION_STOP_SOUND = 1048623] = "ACTION_STOP_SOUND", t[t.ACTION_START_RECORDING = 1048624] = "ACTION_START_RECORDING", t[t.ACTION_STOP_RECORDING = 1048625] = "ACTION_STOP_RECORDING", t[t.ACTION_OPTIMISTIC_CLIENT_CALLS = 1048626] = "ACTION_OPTIMISTIC_CLIENT_CALLS", t[t.ACTION_FUNCTION_ENUMERATION_ITEM = 1048627] = "ACTION_FUNCTION_ENUMERATION_ITEM", t[t.ACTION_FUNCTION_ENUMERATION_END = 1048628] = "ACTION_FUNCTION_ENUMERATION_END", t[t.ACTION_FUNCTION_CANCEL = 1048629] = "ACTION_FUNCTION_CANCEL", t[t.ACTION_FUNCTION_DISPOSE = 1048630] = "ACTION_FUNCTION_DISPOSE", t[t.ACTION_FUNCTION_ERROR = 1048631] = "ACTION_FUNCTION_ERROR", t[t.ACTION_FUNCTION_ACK = 1048632] = "ACTION_FUNCTION_ACK", t[t.ACTION_FUNCTION_AWAITING_APPROVAL = 1048633] = "ACTION_FUNCTION_AWAITING_APPROVAL", t[t.ACTION_FUNCTION_APPROVAL_REQUIRED = 1048634] = "ACTION_FUNCTION_APPROVAL_REQUIRED", t[t.ACTION_FUNCTION_APPROVAL_RESPONSE = 1048635] = "ACTION_FUNCTION_APPROVAL_RESPONSE", t[t.UI_UPDATE_ACK = 1048636] = "UI_UPDATE_ACK", t[t.ACTION_CALL2 = 1048637] = "ACTION_CALL2", t[t.ACTION_FUNCTION_REGISTER_BATCH = 1048638] = "ACTION_FUNCTION_REGISTER_BATCH", t[t.ACTION_TRIGGER_GIT_PULL = 1048639] = "ACTION_TRIGGER_GIT_PULL", t[t.ACTION_FILE_UPLOAD_CALLBACK = 1048640] = "ACTION_FILE_UPLOAD_CALLBACK", t[t.ACTION_CUSTOM_USER_MESSAGE = 1048641] = "ACTION_CUSTOM_USER_MESSAGE", t[t.GROUP_UI = 2097152] = "GROUP_UI", t[t.UI_STREAM_BEGIN = 2097153] = "UI_STREAM_BEGIN", t[t.UI_STREAM_END = 2097154] = "UI_STREAM_END", t[t.UI_CONTAINER_BEGIN = 2097155] = "UI_CONTAINER_BEGIN", t[t.UI_CONTAINER_END = 2097156] = "UI_CONTAINER_END", t[t.UI_SECTION_BEGIN = 2097157] = "UI_SECTION_BEGIN", t[t.UI_SECTION_END = 2097158] = "UI_SECTION_END", t[t.UI_LIST_BEGIN = 2097159] = "UI_LIST_BEGIN", t[t.UI_LIST_ITEM = 2097160] = "UI_LIST_ITEM", t[t.UI_LIST_END = 2097161] = "UI_LIST_END", t[t.UI_TEXT = 2097162] = "UI_TEXT", t[t.UI_HEADER = 2097163] = "UI_HEADER", t[t.UI_SEPARATOR = 2097164] = "UI_SEPARATOR", t[t.UI_BUTTON = 2097165] = "UI_BUTTON", t[t.UI_ICON_BUTTON = 2097166] = "UI_ICON_BUTTON", t[t.UI_IMAGE = 2097167] = "UI_IMAGE", t[t.UI_FILE = 2097168] = "UI_FILE", t[t.UI_BADGE = 2097169] = "UI_BADGE", t[t.UI_CONTENT_LINK = 2097170] = "UI_CONTENT_LINK", t[t.UI_MAP = 2097171] = "UI_MAP", t[t.UI_VEGA_CHART = 2097172] = "UI_VEGA_CHART", t[t.UI_ICON = 2097173] = "UI_ICON", t[t.UI_FILE_UPLOAD_SECTION_BEGIN = 2097174] = "UI_FILE_UPLOAD_SECTION_BEGIN", t[t.UI_FILE_UPLOAD_SECTION_END = 2097175] = "UI_FILE_UPLOAD_SECTION_END", t[t.UI_MATERIAL_SYMBOL = 2097176] = "UI_MATERIAL_SYMBOL", t[t.UI_BUTTON_BEGIN = 2097177] = "UI_BUTTON_BEGIN", t[t.UI_BUTTON_END = 2097178] = "UI_BUTTON_END", t[t.UI_CONTAINER_DELETE = 2097179] = "UI_CONTAINER_DELETE", t[t.UI_INPUT_TEXT = 2097180] = "UI_INPUT_TEXT", t[t.UI_PROGRESS_BAR = 2097181] = "UI_PROGRESS_BAR", t[t.UI_UPDATE_BEGIN = 2097182] = "UI_UPDATE_BEGIN", t[t.UI_UPDATE_END = 2097183] = "UI_UPDATE_END", t[t.UI_AUTOCOMPLETE = 2097184] = "UI_AUTOCOMPLETE", t[t.UI_CHECKBOX = 2097185] = "UI_CHECKBOX", t[t.UI_QS = 2097186] = "UI_QS", t[t.UI_ELEMENT = 2097187] = "UI_ELEMENT", t[t.UI_STYLES = 2097188] = "UI_STYLES", t[t.UI_SVG = 2097189] = "UI_SVG", t[t.UI_UPDATE = 2097190] = "UI_UPDATE", t[t.UI_INIT = 2097191] = "UI_INIT", t[t.UI_STYLES_BATCH = 2097192] = "UI_STYLES_BATCH", t[t.UI_STYLES_DELETE = 2097193] = "UI_STYLES_DELETE", t[t.GROUP_COMMON = 4128768] = "GROUP_COMMON", t[t.GROUP_AUDIO = 4194304] = "GROUP_AUDIO", t[t.AUDIO_STREAM_BEGIN = 4194305] = "AUDIO_STREAM_BEGIN", t[t.AUDIO_STREAM_END = 4194306] = "AUDIO_STREAM_END", t[t.AUDIO_FRAME = 4194307] = "AUDIO_FRAME", t[t.AUDIO_FRAME_VOLUME = 4194308] = "AUDIO_FRAME_VOLUME", t[t.AUDIO_FRAME2 = 4194309] = "AUDIO_FRAME2", t[t.GROUP_VIDEO = 8388608] = "GROUP_VIDEO", t[t.VIDEO_STREAM_BEGIN = 8388609] = "VIDEO_STREAM_BEGIN", t[t.VIDEO_STREAM_END = 8388610] = "VIDEO_STREAM_END", t[t.VIDEO_FRAME = 8388611] = "VIDEO_FRAME", t[t.VIDEO_REQUEST_IDR_FRAME = 8388612] = "VIDEO_REQUEST_IDR_FRAME", t[t.VIDEO_INVALIDATE_FRAME = 8388613] = "VIDEO_INVALIDATE_FRAME", t[t.GROUP_TRACKING = 16777216] = "GROUP_TRACKING", t[t.TRACKING_STREAM_BEGIN = 16777217] = "TRACKING_STREAM_BEGIN", t[t.TRACKING_STREAM_END = 16777218] = "TRACKING_STREAM_END", t[t.TRACKING_FRAME = 16777219] = "TRACKING_FRAME", t[t.GROUP_SCENE = 33554432] = "GROUP_SCENE", t[t.SCENE_MESH = 33554433] = "SCENE_MESH", t[t.SCENE_ARRAY = 33554434] = "SCENE_ARRAY", t[t.GROUP_ALL = 67043328] = "GROUP_ALL", t[t.CONSTANT_GROUP_MASK = 2147418112] = "CONSTANT_GROUP_MASK", t))(S || {});
|
|
1009
1009
|
const yt = 1, nn = 1048637, sn = 727023925, on = 3395085689;
|
|
1010
1010
|
function an(t) {
|
|
1011
1011
|
const e = new D(yt);
|
|
@@ -1081,9 +1081,9 @@ function Ct(t) {
|
|
|
1081
1081
|
}
|
|
1082
1082
|
function Cn(t, e) {
|
|
1083
1083
|
const r = e ?? Nt();
|
|
1084
|
-
return Ct(r),
|
|
1084
|
+
return Ct(r), Rn(t, r), r;
|
|
1085
1085
|
}
|
|
1086
|
-
function
|
|
1086
|
+
function Rn(t, e) {
|
|
1087
1087
|
let r;
|
|
1088
1088
|
for (; (r = t.next()) !== null; )
|
|
1089
1089
|
switch (r.fieldId) {
|
|
@@ -1092,7 +1092,7 @@ function bn(t, e) {
|
|
|
1092
1092
|
e.ShapeSets = void 0;
|
|
1093
1093
|
break;
|
|
1094
1094
|
}
|
|
1095
|
-
e.ShapeSets =
|
|
1095
|
+
e.ShapeSets = bn(r.asArray());
|
|
1096
1096
|
break;
|
|
1097
1097
|
}
|
|
1098
1098
|
case wn: {
|
|
@@ -1122,7 +1122,7 @@ function bn(t, e) {
|
|
|
1122
1122
|
}
|
|
1123
1123
|
}
|
|
1124
1124
|
}
|
|
1125
|
-
function
|
|
1125
|
+
function bn(t) {
|
|
1126
1126
|
const e = [];
|
|
1127
1127
|
let r;
|
|
1128
1128
|
for (; (r = t.next()) !== null; )
|
|
@@ -1132,14 +1132,14 @@ function Rn(t) {
|
|
|
1132
1132
|
const kn = 1107713536, Un = 1154362099, Dn = 1185721362;
|
|
1133
1133
|
function Mn(t) {
|
|
1134
1134
|
const e = {};
|
|
1135
|
-
return
|
|
1135
|
+
return Rt(e), e;
|
|
1136
1136
|
}
|
|
1137
|
-
function
|
|
1137
|
+
function Rt(t) {
|
|
1138
1138
|
return t.SetId = 0, t.Name = "", t.ShapeNames = [], t;
|
|
1139
1139
|
}
|
|
1140
1140
|
function On(t, e) {
|
|
1141
1141
|
const r = e ?? Mn();
|
|
1142
|
-
return
|
|
1142
|
+
return Rt(r), Ln(t, r), r;
|
|
1143
1143
|
}
|
|
1144
1144
|
function Ln(t, e) {
|
|
1145
1145
|
let r;
|
|
@@ -1172,14 +1172,14 @@ function vn(t) {
|
|
|
1172
1172
|
const Fn = 76337612, Pn = 185396121, Bn = 388632637, xn = 417197284, Gn = 469070965, Vn = 470595159, Wn = 781727218, Hn = 834078886, $n = 1043273762, Kn = 1236999138, Yn = 1368629611, jn = 1715899485, zn = 1942830531, Xn = 1999510636, Jn = 2079864626, Qn = 2142346422, Zn = 2598291686, qn = 2719718823, es = 2810953526, ts = 2840065720, rs = 2885165957, ns = 3586157513, ss = 3717933110, is = 4062655306;
|
|
1173
1173
|
function ke(t) {
|
|
1174
1174
|
const e = {};
|
|
1175
|
-
return
|
|
1175
|
+
return bt(e), e;
|
|
1176
1176
|
}
|
|
1177
|
-
function
|
|
1177
|
+
function bt(t) {
|
|
1178
1178
|
return t.ContextType = Q.Unknown, t.UserType = q.Unknown, t.PayloadType = Z.Unknown, t.Description = "", t.UserId = "", t.DeviceId = "", t.ProductId = "", t.VersionId = "", t.InstallId = "", t.Locale = "", t.SessionId = -1, t.IsInternal = !1, t.IsReady = !1, t.HasInput = !1, t.ChannelLocale = "", t.EmbeddedSpaceId = "", t.AuthSessionId = "", t.ReceiveAllMessages = !1, t.PreciseJoinedAt = 0n, t.UserAgent = "", t.ClientType = J.Unknown, t.UniqueSessionId = "", t.Parameters = /* @__PURE__ */ Object.create(null), t.SdkType = Ke.Unknown, t;
|
|
1179
1179
|
}
|
|
1180
1180
|
function Ue(t, e) {
|
|
1181
1181
|
const r = e ?? ke();
|
|
1182
|
-
return
|
|
1182
|
+
return bt(r), os(t, r), r;
|
|
1183
1183
|
}
|
|
1184
1184
|
function os(t, e) {
|
|
1185
1185
|
let r;
|
|
@@ -1322,7 +1322,7 @@ function ps(t) {
|
|
|
1322
1322
|
return kt(e), e;
|
|
1323
1323
|
}
|
|
1324
1324
|
function kt(t) {
|
|
1325
|
-
return t.Type = k.None, t.Uri = "", t.OpcodeGroupsFromServer =
|
|
1325
|
+
return t.Type = k.None, t.Uri = "", t.OpcodeGroupsFromServer = S.NONE, t.OpcodeGroupsToServer = S.NONE, t.Priority = 0, t.Description = "", t.AuthTicket = new Uint8Array(0), t;
|
|
1326
1326
|
}
|
|
1327
1327
|
function Is(t, e) {
|
|
1328
1328
|
const r = e ?? ps();
|
|
@@ -1369,8 +1369,8 @@ function ms(t, e) {
|
|
|
1369
1369
|
}
|
|
1370
1370
|
}
|
|
1371
1371
|
}
|
|
1372
|
-
const _s = 65537, Ts = 166277978, Ss = 1482635149, ws = 1559330978, As = 2802434353, ys = 3085883711, gs = 3669484338, Ns = 3707543140, Cs = 3712281496,
|
|
1373
|
-
function
|
|
1372
|
+
const _s = 65537, Ts = 166277978, Ss = 1482635149, ws = 1559330978, As = 2802434353, ys = 3085883711, gs = 3669484338, Ns = 3707543140, Cs = 3712281496, Rs = 3823842552;
|
|
1373
|
+
function bs(t) {
|
|
1374
1374
|
const e = {};
|
|
1375
1375
|
return Ut(e), e;
|
|
1376
1376
|
}
|
|
@@ -1382,7 +1382,7 @@ function ks(t, e) {
|
|
|
1382
1382
|
return Us(r, e);
|
|
1383
1383
|
}
|
|
1384
1384
|
function Us(t, e) {
|
|
1385
|
-
const r = e ??
|
|
1385
|
+
const r = e ?? bs();
|
|
1386
1386
|
return Ut(r), Ds(t, r), r;
|
|
1387
1387
|
}
|
|
1388
1388
|
function Ds(t, e) {
|
|
@@ -1429,7 +1429,7 @@ function Ds(t, e) {
|
|
|
1429
1429
|
e.PrimaryUserId = r.asString();
|
|
1430
1430
|
break;
|
|
1431
1431
|
}
|
|
1432
|
-
case
|
|
1432
|
+
case Rs: {
|
|
1433
1433
|
if (r.isNull) throw new Error();
|
|
1434
1434
|
e.ChannelInstanceId = r.asString();
|
|
1435
1435
|
break;
|
|
@@ -1461,7 +1461,7 @@ function vs(t) {
|
|
|
1461
1461
|
return Fs(e), t && Object.assign(e, t), e;
|
|
1462
1462
|
}
|
|
1463
1463
|
function Fs(t) {
|
|
1464
|
-
return t.ServerSessionId = "", t.ContextType = Q.Unknown, t.UserType = q.Unknown, t.PayloadType = Z.Unknown, t.IsInternal = !1, t.Description = "", t.UserId = "", t.DeviceId = "", t.ProductId = "", t.VersionId = "", t.InstallId = "", t.Locale = "", t.OpcodeGroupsFromServer =
|
|
1464
|
+
return t.ServerSessionId = "", t.ContextType = Q.Unknown, t.UserType = q.Unknown, t.PayloadType = Z.Unknown, t.IsInternal = !1, t.Description = "", t.UserId = "", t.DeviceId = "", t.ProductId = "", t.VersionId = "", t.InstallId = "", t.Locale = "", t.OpcodeGroupsFromServer = S.NONE, t.OpcodeGroupsToServer = S.NONE, t.ProtocolVersion = 0, t.HasInput = !1, t.ChannelLocale = "", t.EmbeddedSpaceId = "", t.AuthSessionId = "", t.ReceiveAllMessages = !1, t.UserAgent = "", t.ClientType = J.Unknown, t.Parameters = /* @__PURE__ */ Object.create(null), t.SdkType = Ke.Unknown, t;
|
|
1465
1465
|
}
|
|
1466
1466
|
const Dt = 1, Ps = 1048632, Bs = 3748161056, xs = 4289118421;
|
|
1467
1467
|
function Gs(t) {
|
|
@@ -1482,29 +1482,29 @@ function $s(t, e, r) {
|
|
|
1482
1482
|
const n = Ws(t);
|
|
1483
1483
|
return P(Ps, n, Dt, e, r);
|
|
1484
1484
|
}
|
|
1485
|
-
const Ks = 1048601, Ys = 112005851, js = 814454131, zs = 976255570, Xs =
|
|
1486
|
-
function
|
|
1485
|
+
const Ks = 1048601, Ys = 112005851, js = 814454131, zs = 976255570, Xs = 2885165957, Js = 3748161056, Qs = 4289118421;
|
|
1486
|
+
function Zs(t) {
|
|
1487
1487
|
const e = {};
|
|
1488
1488
|
return Mt(e), e;
|
|
1489
1489
|
}
|
|
1490
1490
|
function Mt(t) {
|
|
1491
|
-
return t.FunctionId = m.fromBytes(new Uint8Array(16)), t.CallId = m.fromBytes(new Uint8Array(16)), t.InstanceId = m.fromBytes(new Uint8Array(16)), t.FunctionName = "", t.Parameters = [], t.
|
|
1491
|
+
return t.FunctionId = m.fromBytes(new Uint8Array(16)), t.CallId = m.fromBytes(new Uint8Array(16)), t.InstanceId = m.fromBytes(new Uint8Array(16)), t.FunctionName = "", t.Parameters = [], t.Scopes = [], t;
|
|
1492
1492
|
}
|
|
1493
|
-
function
|
|
1493
|
+
function qs(t, e) {
|
|
1494
1494
|
const r = X.create(t);
|
|
1495
|
-
return
|
|
1495
|
+
return ei(r, e);
|
|
1496
1496
|
}
|
|
1497
|
-
function
|
|
1498
|
-
const r = e ??
|
|
1499
|
-
return Mt(r),
|
|
1497
|
+
function ei(t, e) {
|
|
1498
|
+
const r = e ?? Zs();
|
|
1499
|
+
return Mt(r), ti(t, r), r;
|
|
1500
1500
|
}
|
|
1501
|
-
function
|
|
1501
|
+
function ti(t, e) {
|
|
1502
1502
|
let r;
|
|
1503
1503
|
for (; (r = t.next()) !== null; )
|
|
1504
1504
|
switch (r.fieldId) {
|
|
1505
1505
|
case Ys: {
|
|
1506
1506
|
if (r.isNull) throw new Error();
|
|
1507
|
-
e.Scopes =
|
|
1507
|
+
e.Scopes = ni(r.asArray());
|
|
1508
1508
|
break;
|
|
1509
1509
|
}
|
|
1510
1510
|
case js: {
|
|
@@ -1519,116 +1519,111 @@ function ri(t, e) {
|
|
|
1519
1519
|
}
|
|
1520
1520
|
case Xs: {
|
|
1521
1521
|
if (r.isNull) throw new Error();
|
|
1522
|
-
e.
|
|
1522
|
+
e.Parameters = si(r.asArray());
|
|
1523
1523
|
break;
|
|
1524
1524
|
}
|
|
1525
1525
|
case Js: {
|
|
1526
|
-
if (r.isNull) throw new Error();
|
|
1527
|
-
e.Parameters = ii(r.asArray());
|
|
1528
|
-
break;
|
|
1529
|
-
}
|
|
1530
|
-
case Qs: {
|
|
1531
1526
|
if (r.isNull) throw new Error();
|
|
1532
1527
|
e.CallId = r.asGuid();
|
|
1533
1528
|
break;
|
|
1534
1529
|
}
|
|
1535
|
-
case
|
|
1530
|
+
case Qs: {
|
|
1536
1531
|
if (r.isNull) throw new Error();
|
|
1537
1532
|
e.InstanceId = r.asGuid();
|
|
1538
1533
|
break;
|
|
1539
1534
|
}
|
|
1540
1535
|
}
|
|
1541
1536
|
}
|
|
1542
|
-
async function
|
|
1537
|
+
async function ri(t, e) {
|
|
1543
1538
|
const r = await Be(t, Ks);
|
|
1544
|
-
return
|
|
1539
|
+
return qs(r, e);
|
|
1545
1540
|
}
|
|
1546
|
-
function
|
|
1541
|
+
function ni(t) {
|
|
1547
1542
|
const e = [];
|
|
1548
1543
|
let r;
|
|
1549
1544
|
for (; (r = t.next()) !== null; )
|
|
1550
|
-
e.push(
|
|
1545
|
+
e.push(ci(r.asObject()));
|
|
1551
1546
|
return e;
|
|
1552
1547
|
}
|
|
1553
|
-
function
|
|
1548
|
+
function si(t) {
|
|
1554
1549
|
const e = [];
|
|
1555
1550
|
let r;
|
|
1556
1551
|
for (; (r = t.next()) !== null; )
|
|
1557
1552
|
e.push(_n(r.asObject()));
|
|
1558
1553
|
return e;
|
|
1559
1554
|
}
|
|
1560
|
-
const
|
|
1561
|
-
function
|
|
1555
|
+
const ii = 2994044322, oi = 3167053791;
|
|
1556
|
+
function ai(t) {
|
|
1562
1557
|
const e = {};
|
|
1563
1558
|
return Ot(e), e;
|
|
1564
1559
|
}
|
|
1565
1560
|
function Ot(t) {
|
|
1566
1561
|
return t.Type = "", t.Id = "", t;
|
|
1567
1562
|
}
|
|
1568
|
-
function
|
|
1569
|
-
const r = e ??
|
|
1570
|
-
return Ot(r),
|
|
1563
|
+
function ci(t, e) {
|
|
1564
|
+
const r = e ?? ai();
|
|
1565
|
+
return Ot(r), li(t, r), r;
|
|
1571
1566
|
}
|
|
1572
|
-
function
|
|
1567
|
+
function li(t, e) {
|
|
1573
1568
|
let r;
|
|
1574
1569
|
for (; (r = t.next()) !== null; )
|
|
1575
1570
|
switch (r.fieldId) {
|
|
1576
|
-
case
|
|
1571
|
+
case ii: {
|
|
1577
1572
|
if (r.isNull) throw new Error();
|
|
1578
1573
|
e.Id = r.asString();
|
|
1579
1574
|
break;
|
|
1580
1575
|
}
|
|
1581
|
-
case
|
|
1576
|
+
case oi: {
|
|
1582
1577
|
if (r.isNull) throw new Error();
|
|
1583
1578
|
e.Type = r.asString();
|
|
1584
1579
|
break;
|
|
1585
1580
|
}
|
|
1586
1581
|
}
|
|
1587
1582
|
}
|
|
1588
|
-
const Lt = 1,
|
|
1589
|
-
function
|
|
1583
|
+
const Lt = 1, ui = 1048631, hi = 2205234621, di = 2838554230, fi = 3748161056, Ei = 4194102057, pi = 4289118421;
|
|
1584
|
+
function Ii(t) {
|
|
1590
1585
|
const e = {};
|
|
1591
|
-
return
|
|
1586
|
+
return mi(e), t && Object.assign(e, t), e;
|
|
1592
1587
|
}
|
|
1593
|
-
function
|
|
1588
|
+
function mi(t) {
|
|
1594
1589
|
return t.CallId = m.fromBytes(new Uint8Array(16)), t.InstanceId = m.fromBytes(new Uint8Array(16)), t.ErrorMessage = "", t.ErrorTypeName = "", t.StackTrace = "", t;
|
|
1595
1590
|
}
|
|
1596
|
-
function
|
|
1591
|
+
function _i(t) {
|
|
1597
1592
|
const e = new D(Lt);
|
|
1598
|
-
return
|
|
1593
|
+
return Ti(t, e), e.finish();
|
|
1599
1594
|
}
|
|
1600
|
-
function
|
|
1601
|
-
e.writeStringField(
|
|
1595
|
+
function Ti(t, e) {
|
|
1596
|
+
e.writeStringField(hi, t.ErrorTypeName), e.writeStringField(di, t.ErrorMessage), e.writeGuidField(fi, t.CallId), e.writeStringField(Ei, t.StackTrace), e.writeGuidField(pi, t.InstanceId);
|
|
1602
1597
|
}
|
|
1603
|
-
function
|
|
1604
|
-
const n =
|
|
1605
|
-
return P(
|
|
1598
|
+
function Si(t, e, r) {
|
|
1599
|
+
const n = _i(t);
|
|
1600
|
+
return P(ui, n, Lt, e, r);
|
|
1606
1601
|
}
|
|
1607
|
-
const Ye = 1,
|
|
1608
|
-
function
|
|
1602
|
+
const Ye = 1, wi = 1048600, vt = 703025676, Ft = 814454131, Pt = 972460562, Bt = 976255570, xt = 1368629611, Gt = 1479280922, Vt = 1533537016, Wt = 2274386296, Ht = 2603556958, $t = 2885165957, Kt = 3568439632;
|
|
1603
|
+
function Ai(t) {
|
|
1609
1604
|
const e = {};
|
|
1610
1605
|
return Yt(e), e;
|
|
1611
1606
|
}
|
|
1612
1607
|
function Yt(t) {
|
|
1613
1608
|
return t.FunctionId = m.fromBytes(new Uint8Array(16)), t.FunctionName = "", t.Parameters = [], t.ResultTypeName = "", t.IsEnumerable = !1, t.EnumerableItemTypeName = "", t.IsCancellable = !1, t.Description = "", t.LlmInlineResult = !1, t.LlmCallOnlyOnce = !1, t.RequiresInstance = !1, t;
|
|
1614
1609
|
}
|
|
1615
|
-
function
|
|
1610
|
+
function yi(t) {
|
|
1616
1611
|
const e = new D(Ye);
|
|
1617
1612
|
return jt(t, e), e.finish();
|
|
1618
1613
|
}
|
|
1619
1614
|
function jt(t, e) {
|
|
1620
|
-
e.writeStringField(vt, t.ResultTypeName), e.writeStringField(Ft, t.FunctionName), e.writeStringField(Pt, t.EnumerableItemTypeName), e.writeGuidField(Bt, t.FunctionId), e.writeStringField(xt, t.Description), e.writeBoolField(Gt, t.IsCancellable), e.writeBoolField(Vt, t.RequiresInstance), e.writeBoolField(Wt, t.LlmInlineResult), e.writeBoolField(Ht, t.IsEnumerable), e.writeArrayField($t,
|
|
1615
|
+
e.writeStringField(vt, t.ResultTypeName), e.writeStringField(Ft, t.FunctionName), e.writeStringField(Pt, t.EnumerableItemTypeName), e.writeGuidField(Bt, t.FunctionId), e.writeStringField(xt, t.Description), e.writeBoolField(Gt, t.IsCancellable), e.writeBoolField(Vt, t.RequiresInstance), e.writeBoolField(Wt, t.LlmInlineResult), e.writeBoolField(Ht, t.IsEnumerable), e.writeArrayField($t, R.Object, (r) => {
|
|
1621
1616
|
for (const n of t.Parameters)
|
|
1622
|
-
r.writeObject(
|
|
1623
|
-
|
|
1617
|
+
r.writeObject(bi, (s) => {
|
|
1618
|
+
Ui(n, s);
|
|
1624
1619
|
});
|
|
1625
1620
|
}), e.writeBoolField(Kt, t.LlmCallOnlyOnce);
|
|
1626
1621
|
}
|
|
1627
|
-
function
|
|
1628
|
-
const r = e ??
|
|
1629
|
-
return Yt(r),
|
|
1622
|
+
function gi(t, e) {
|
|
1623
|
+
const r = e ?? Ai();
|
|
1624
|
+
return Yt(r), Ni(t, r), r;
|
|
1630
1625
|
}
|
|
1631
|
-
function
|
|
1626
|
+
function Ni(t, e) {
|
|
1632
1627
|
let r;
|
|
1633
1628
|
for (; (r = t.next()) !== null; )
|
|
1634
1629
|
switch (r.fieldId) {
|
|
@@ -1689,33 +1684,33 @@ function Ci(t, e) {
|
|
|
1689
1684
|
}
|
|
1690
1685
|
}
|
|
1691
1686
|
}
|
|
1692
|
-
function
|
|
1693
|
-
const n =
|
|
1694
|
-
return P(
|
|
1687
|
+
function Ci(t, e, r) {
|
|
1688
|
+
const n = yi(t);
|
|
1689
|
+
return P(wi, n, Ye, e, r);
|
|
1695
1690
|
}
|
|
1696
1691
|
function Ri(t) {
|
|
1697
1692
|
const e = [];
|
|
1698
1693
|
let r;
|
|
1699
1694
|
for (; (r = t.next()) !== null; )
|
|
1700
|
-
e.push(
|
|
1695
|
+
e.push(Di(r.asObject()));
|
|
1701
1696
|
return e;
|
|
1702
1697
|
}
|
|
1703
|
-
const
|
|
1704
|
-
function
|
|
1698
|
+
const bi = 1, zt = 607861992, Xt = 894485888, Jt = 972460562, Qt = 1368629611, Zt = 1883521406, qt = 2603556958, er = 3609695522, tr = 4075263697, rr = 4257460908;
|
|
1699
|
+
function ki(t) {
|
|
1705
1700
|
const e = {};
|
|
1706
1701
|
return nr(e), e;
|
|
1707
1702
|
}
|
|
1708
1703
|
function nr(t) {
|
|
1709
1704
|
return t.ParameterIndex = 0, t.ParameterName = "", t.TypeName = "", t.HasDefaultValue = !1, t.DefaultValueJson = "", t.DefaultValueData = new Uint8Array(0), t.IsEnumerable = !1, t.EnumerableItemTypeName = "", t.Description = "", t;
|
|
1710
1705
|
}
|
|
1711
|
-
function
|
|
1706
|
+
function Ui(t, e) {
|
|
1712
1707
|
e.writeBoolField(zt, t.HasDefaultValue), e.writeStringField(Xt, t.DefaultValueJson), e.writeStringField(Jt, t.EnumerableItemTypeName), e.writeStringField(Qt, t.Description), e.writeBinaryField(Zt, t.DefaultValueData), e.writeBoolField(qt, t.IsEnumerable), e.writeStringField(er, t.TypeName), e.writeStringField(tr, t.ParameterName), e.writeInt32Field(rr, t.ParameterIndex | 0);
|
|
1713
1708
|
}
|
|
1714
|
-
function
|
|
1715
|
-
const r = e ??
|
|
1716
|
-
return nr(r),
|
|
1709
|
+
function Di(t, e) {
|
|
1710
|
+
const r = e ?? ki();
|
|
1711
|
+
return nr(r), Mi(t, r), r;
|
|
1717
1712
|
}
|
|
1718
|
-
function
|
|
1713
|
+
function Mi(t, e) {
|
|
1719
1714
|
let r;
|
|
1720
1715
|
for (; (r = t.next()) !== null; )
|
|
1721
1716
|
switch (r.fieldId) {
|
|
@@ -1766,61 +1761,61 @@ function Oi(t, e) {
|
|
|
1766
1761
|
}
|
|
1767
1762
|
}
|
|
1768
1763
|
}
|
|
1769
|
-
const sr = 1,
|
|
1770
|
-
function
|
|
1764
|
+
const sr = 1, Oi = 1048638, Li = 3678477544;
|
|
1765
|
+
function vi(t) {
|
|
1771
1766
|
const e = {};
|
|
1772
|
-
return
|
|
1767
|
+
return Fi(e), t && Object.assign(e, t), e;
|
|
1773
1768
|
}
|
|
1774
|
-
function
|
|
1769
|
+
function Fi(t) {
|
|
1775
1770
|
return t.Functions = [], t;
|
|
1776
1771
|
}
|
|
1777
|
-
function
|
|
1772
|
+
function Pi(t) {
|
|
1778
1773
|
const e = new D(sr);
|
|
1779
|
-
return
|
|
1774
|
+
return Bi(t, e), e.finish();
|
|
1780
1775
|
}
|
|
1781
|
-
function
|
|
1782
|
-
e.writeArrayField(
|
|
1776
|
+
function Bi(t, e) {
|
|
1777
|
+
e.writeArrayField(Li, R.Object, (r) => {
|
|
1783
1778
|
for (const n of t.Functions)
|
|
1784
1779
|
r.writeObject(Ye, (s) => {
|
|
1785
1780
|
jt(n, s);
|
|
1786
1781
|
});
|
|
1787
1782
|
});
|
|
1788
1783
|
}
|
|
1789
|
-
function
|
|
1790
|
-
const n =
|
|
1791
|
-
return P(
|
|
1784
|
+
function xi(t, e, r) {
|
|
1785
|
+
const n = Pi(t);
|
|
1786
|
+
return P(Oi, n, sr, e, r);
|
|
1792
1787
|
}
|
|
1793
|
-
const ir = 1,
|
|
1794
|
-
function
|
|
1788
|
+
const ir = 1, Gi = 1048602, Vi = 349453957, Wi = 703025676, Hi = 3403385840, $i = 3748161056, Ki = 4289118421;
|
|
1789
|
+
function Yi(t) {
|
|
1795
1790
|
const e = {};
|
|
1796
|
-
return
|
|
1791
|
+
return ji(e), t && Object.assign(e, t), e;
|
|
1797
1792
|
}
|
|
1798
|
-
function
|
|
1793
|
+
function ji(t) {
|
|
1799
1794
|
return t.CallId = m.fromBytes(new Uint8Array(16)), t.InstanceId = m.fromBytes(new Uint8Array(16)), t.ResultTypeName = "", t.ResultJson = "", t.ResultData = new Uint8Array(0), t;
|
|
1800
1795
|
}
|
|
1801
|
-
function
|
|
1796
|
+
function zi(t) {
|
|
1802
1797
|
const e = new D(ir);
|
|
1803
|
-
return
|
|
1798
|
+
return Xi(t, e), e.finish();
|
|
1804
1799
|
}
|
|
1805
|
-
function
|
|
1806
|
-
e.writeBinaryField(
|
|
1800
|
+
function Xi(t, e) {
|
|
1801
|
+
e.writeBinaryField(Vi, t.ResultData), e.writeStringField(Wi, t.ResultTypeName), e.writeStringField(Hi, t.ResultJson), e.writeGuidField($i, t.CallId), e.writeGuidField(Ki, t.InstanceId);
|
|
1807
1802
|
}
|
|
1808
|
-
function
|
|
1809
|
-
const n =
|
|
1810
|
-
return P(
|
|
1803
|
+
function Ji(t, e, r) {
|
|
1804
|
+
const n = zi(t);
|
|
1805
|
+
return P(Gi, n, ir, e, r);
|
|
1811
1806
|
}
|
|
1812
|
-
const or = 1,
|
|
1807
|
+
const or = 1, Qi = 65549;
|
|
1813
1808
|
function et(t) {
|
|
1814
1809
|
return {};
|
|
1815
1810
|
}
|
|
1816
|
-
function
|
|
1811
|
+
function Zi(t) {
|
|
1817
1812
|
return new D(or).finish();
|
|
1818
1813
|
}
|
|
1819
1814
|
function tt(t, e, r) {
|
|
1820
|
-
const n =
|
|
1821
|
-
return P(
|
|
1815
|
+
const n = Zi();
|
|
1816
|
+
return P(Qi, n, or, e, r);
|
|
1822
1817
|
}
|
|
1823
|
-
const
|
|
1818
|
+
const qi = 3167053791, eo = 3342364356, to = 3612929027;
|
|
1824
1819
|
function ar(t) {
|
|
1825
1820
|
const e = {};
|
|
1826
1821
|
return cr(e), e;
|
|
@@ -1828,39 +1823,39 @@ function ar(t) {
|
|
|
1828
1823
|
function cr(t) {
|
|
1829
1824
|
return t.Category = "", t.Type = Tt.Face, t.FaceBlendshapes = [], t;
|
|
1830
1825
|
}
|
|
1831
|
-
function
|
|
1826
|
+
function ro(t, e) {
|
|
1832
1827
|
const r = e ?? ar();
|
|
1833
|
-
return cr(r),
|
|
1828
|
+
return cr(r), no(t, r), r;
|
|
1834
1829
|
}
|
|
1835
|
-
function
|
|
1830
|
+
function no(t, e) {
|
|
1836
1831
|
let r;
|
|
1837
1832
|
for (; (r = t.next()) !== null; )
|
|
1838
1833
|
switch (r.fieldId) {
|
|
1839
|
-
case
|
|
1834
|
+
case qi: {
|
|
1840
1835
|
if (r.isNull) throw new Error();
|
|
1841
1836
|
e.Type = r.asInt32();
|
|
1842
1837
|
break;
|
|
1843
1838
|
}
|
|
1844
|
-
case
|
|
1839
|
+
case eo: {
|
|
1845
1840
|
if (r.isNull) throw new Error();
|
|
1846
|
-
e.FaceBlendshapes =
|
|
1841
|
+
e.FaceBlendshapes = so(r.asArray());
|
|
1847
1842
|
break;
|
|
1848
1843
|
}
|
|
1849
|
-
case
|
|
1844
|
+
case to: {
|
|
1850
1845
|
if (r.isNull) throw new Error();
|
|
1851
1846
|
e.Category = r.asString();
|
|
1852
1847
|
break;
|
|
1853
1848
|
}
|
|
1854
1849
|
}
|
|
1855
1850
|
}
|
|
1856
|
-
function
|
|
1851
|
+
function so(t) {
|
|
1857
1852
|
const e = [];
|
|
1858
1853
|
let r;
|
|
1859
1854
|
for (; (r = t.next()) !== null; )
|
|
1860
1855
|
e.push(r.asString());
|
|
1861
1856
|
return e;
|
|
1862
1857
|
}
|
|
1863
|
-
const
|
|
1858
|
+
const io = 3612929027;
|
|
1864
1859
|
function lr(t) {
|
|
1865
1860
|
const e = {};
|
|
1866
1861
|
return ur(e), e;
|
|
@@ -1868,22 +1863,22 @@ function lr(t) {
|
|
|
1868
1863
|
function ur(t) {
|
|
1869
1864
|
return t.Category = "", t;
|
|
1870
1865
|
}
|
|
1871
|
-
function
|
|
1866
|
+
function oo(t, e) {
|
|
1872
1867
|
const r = e ?? lr();
|
|
1873
|
-
return ur(r),
|
|
1868
|
+
return ur(r), ao(t, r), r;
|
|
1874
1869
|
}
|
|
1875
|
-
function
|
|
1870
|
+
function ao(t, e) {
|
|
1876
1871
|
let r;
|
|
1877
1872
|
for (; (r = t.next()) !== null; )
|
|
1878
1873
|
switch (r.fieldId) {
|
|
1879
|
-
case
|
|
1874
|
+
case io: {
|
|
1880
1875
|
if (r.isNull) throw new Error();
|
|
1881
1876
|
e.Category = r.asString();
|
|
1882
1877
|
break;
|
|
1883
1878
|
}
|
|
1884
1879
|
}
|
|
1885
1880
|
}
|
|
1886
|
-
const
|
|
1881
|
+
const co = 164808083, lo = 1368629611, uo = 2739413426, ho = 2768375929, fo = 2950031986, Eo = 3284746250, po = 4065070594;
|
|
1887
1882
|
function hr(t) {
|
|
1888
1883
|
const e = {};
|
|
1889
1884
|
return dr(e), e;
|
|
@@ -1891,107 +1886,107 @@ function hr(t) {
|
|
|
1891
1886
|
function dr(t) {
|
|
1892
1887
|
return t.Description = "", t.Codec = St.H264, t.Width = 0, t.Height = 0, t.Framerate = 30, t.Bitrate = 0, t.IsHardwareAccelerated = !1, t;
|
|
1893
1888
|
}
|
|
1894
|
-
function
|
|
1889
|
+
function Io(t, e) {
|
|
1895
1890
|
const r = e ?? hr();
|
|
1896
|
-
return dr(r),
|
|
1891
|
+
return dr(r), mo(t, r), r;
|
|
1897
1892
|
}
|
|
1898
|
-
function
|
|
1893
|
+
function mo(t, e) {
|
|
1899
1894
|
let r;
|
|
1900
1895
|
for (; (r = t.next()) !== null; )
|
|
1901
1896
|
switch (r.fieldId) {
|
|
1902
|
-
case
|
|
1897
|
+
case co: {
|
|
1903
1898
|
if (r.isNull) throw new Error();
|
|
1904
1899
|
e.Framerate = r.asInt32();
|
|
1905
1900
|
break;
|
|
1906
1901
|
}
|
|
1907
|
-
case
|
|
1902
|
+
case lo: {
|
|
1908
1903
|
if (r.isNull) throw new Error();
|
|
1909
1904
|
e.Description = r.asString();
|
|
1910
1905
|
break;
|
|
1911
1906
|
}
|
|
1912
|
-
case
|
|
1907
|
+
case uo: {
|
|
1913
1908
|
if (r.isNull) throw new Error();
|
|
1914
1909
|
e.IsHardwareAccelerated = r.asBool();
|
|
1915
1910
|
break;
|
|
1916
1911
|
}
|
|
1917
|
-
case
|
|
1912
|
+
case ho: {
|
|
1918
1913
|
if (r.isNull) throw new Error();
|
|
1919
1914
|
e.Bitrate = r.asInt32();
|
|
1920
1915
|
break;
|
|
1921
1916
|
}
|
|
1922
|
-
case
|
|
1917
|
+
case fo: {
|
|
1923
1918
|
if (r.isNull) throw new Error();
|
|
1924
1919
|
e.Height = r.asInt32();
|
|
1925
1920
|
break;
|
|
1926
1921
|
}
|
|
1927
|
-
case
|
|
1922
|
+
case Eo: {
|
|
1928
1923
|
if (r.isNull) throw new Error();
|
|
1929
1924
|
e.Codec = r.asInt32();
|
|
1930
1925
|
break;
|
|
1931
1926
|
}
|
|
1932
|
-
case
|
|
1927
|
+
case po: {
|
|
1933
1928
|
if (r.isNull) throw new Error();
|
|
1934
1929
|
e.Width = r.asInt32();
|
|
1935
1930
|
break;
|
|
1936
1931
|
}
|
|
1937
1932
|
}
|
|
1938
1933
|
}
|
|
1939
|
-
const
|
|
1940
|
-
function
|
|
1934
|
+
const _o = 65539, To = 693643444, So = 1144553441, wo = 1497620243, Ao = 1559330978, yo = 1976546434, go = 1999510636, No = 2277643855, Co = 2469008121, Ro = 3042922213, bo = 3064612128, ko = 3219210453, Uo = 3504054055, Do = 3678477544, Mo = 3696445035, Oo = 3707543140, Lo = 3712281496, vo = 3895362455, Fo = 3897397815, Po = 4225107827;
|
|
1935
|
+
function Bo(t) {
|
|
1941
1936
|
const e = {};
|
|
1942
1937
|
return fr(e), e;
|
|
1943
1938
|
}
|
|
1944
1939
|
function fr(t) {
|
|
1945
1940
|
return t.Clients = /* @__PURE__ */ Object.create(null), t.Functions = /* @__PURE__ */ Object.create(null), t.UIStreams = /* @__PURE__ */ Object.create(null), t.AudioStreams = /* @__PURE__ */ Object.create(null), t.VideoStreams = /* @__PURE__ */ Object.create(null), t.TrackingStreams = /* @__PURE__ */ Object.create(null), t.SpaceId = "", t.ChannelId = "", t.SessionId = "", t.ChannelUrl = "", t.FirstUserId = "", t.PrimaryUserId = "", t.OrganisationName = "", t.SpaceName = "", t.ChannelName = "", t.ServerRunType = wt.Local, t.AppSourceType = At.Bundle, t.PublicAccess = !1, t.DebugMode = !1, t;
|
|
1946
1941
|
}
|
|
1947
|
-
function
|
|
1942
|
+
function xo(t, e) {
|
|
1948
1943
|
const r = X.create(t);
|
|
1949
|
-
return
|
|
1944
|
+
return Go(r, e);
|
|
1950
1945
|
}
|
|
1951
|
-
function
|
|
1952
|
-
const r = e ??
|
|
1953
|
-
return fr(r),
|
|
1946
|
+
function Go(t, e) {
|
|
1947
|
+
const r = e ?? Bo();
|
|
1948
|
+
return fr(r), Vo(t, r), r;
|
|
1954
1949
|
}
|
|
1955
|
-
function
|
|
1950
|
+
function Vo(t, e) {
|
|
1956
1951
|
let r;
|
|
1957
1952
|
for (; (r = t.next()) !== null; )
|
|
1958
1953
|
switch (r.fieldId) {
|
|
1959
|
-
case
|
|
1954
|
+
case To: {
|
|
1960
1955
|
if (r.isNull) throw new Error();
|
|
1961
1956
|
e.FirstUserId = r.asString();
|
|
1962
1957
|
break;
|
|
1963
1958
|
}
|
|
1964
|
-
case
|
|
1959
|
+
case So: {
|
|
1965
1960
|
if (r.isNull) throw new Error();
|
|
1966
|
-
e.Clients =
|
|
1961
|
+
e.Clients = Ho(r.asDictionary());
|
|
1967
1962
|
break;
|
|
1968
1963
|
}
|
|
1969
|
-
case
|
|
1964
|
+
case wo: {
|
|
1970
1965
|
if (r.isNull) throw new Error();
|
|
1971
|
-
e.TrackingStreams =
|
|
1966
|
+
e.TrackingStreams = $o(r.asDictionary());
|
|
1972
1967
|
break;
|
|
1973
1968
|
}
|
|
1974
|
-
case
|
|
1969
|
+
case Ao: {
|
|
1975
1970
|
if (r.isNull) throw new Error();
|
|
1976
1971
|
e.ChannelId = r.asString();
|
|
1977
1972
|
break;
|
|
1978
1973
|
}
|
|
1979
|
-
case
|
|
1974
|
+
case yo: {
|
|
1980
1975
|
if (r.isNull) throw new Error();
|
|
1981
1976
|
e.AppSourceType = r.asInt32();
|
|
1982
1977
|
break;
|
|
1983
1978
|
}
|
|
1984
|
-
case
|
|
1979
|
+
case go: {
|
|
1985
1980
|
if (r.isNull) throw new Error();
|
|
1986
1981
|
e.SessionId = r.asString();
|
|
1987
1982
|
break;
|
|
1988
1983
|
}
|
|
1989
|
-
case
|
|
1984
|
+
case No: {
|
|
1990
1985
|
if (r.isNull) throw new Error();
|
|
1991
1986
|
e.ChannelUrl = r.asString();
|
|
1992
1987
|
break;
|
|
1993
1988
|
}
|
|
1994
|
-
case
|
|
1989
|
+
case Co: {
|
|
1995
1990
|
if (r.isNull) throw new Error();
|
|
1996
1991
|
e.ChannelName = r.asString();
|
|
1997
1992
|
break;
|
|
@@ -2001,63 +1996,63 @@ function Wo(t, e) {
|
|
|
2001
1996
|
e.PublicAccess = r.asBool();
|
|
2002
1997
|
break;
|
|
2003
1998
|
}
|
|
2004
|
-
case
|
|
1999
|
+
case bo: {
|
|
2005
2000
|
if (r.isNull) throw new Error();
|
|
2006
2001
|
e.ServerRunType = r.asInt32();
|
|
2007
2002
|
break;
|
|
2008
2003
|
}
|
|
2009
|
-
case
|
|
2004
|
+
case ko: {
|
|
2010
2005
|
if (r.isNull) throw new Error();
|
|
2011
2006
|
e.OrganisationName = r.asString();
|
|
2012
2007
|
break;
|
|
2013
2008
|
}
|
|
2014
|
-
case
|
|
2009
|
+
case Uo: {
|
|
2015
2010
|
if (r.isNull) throw new Error();
|
|
2016
2011
|
e.DebugMode = r.asBool();
|
|
2017
2012
|
break;
|
|
2018
2013
|
}
|
|
2014
|
+
case Do: {
|
|
2015
|
+
if (r.isNull) throw new Error();
|
|
2016
|
+
e.Functions = Ko(r.asDictionary());
|
|
2017
|
+
break;
|
|
2018
|
+
}
|
|
2019
2019
|
case Mo: {
|
|
2020
2020
|
if (r.isNull) throw new Error();
|
|
2021
|
-
e.
|
|
2021
|
+
e.UIStreams = Yo(r.asDictionary());
|
|
2022
2022
|
break;
|
|
2023
2023
|
}
|
|
2024
2024
|
case Oo: {
|
|
2025
2025
|
if (r.isNull) throw new Error();
|
|
2026
|
-
e.
|
|
2026
|
+
e.SpaceId = r.asString();
|
|
2027
2027
|
break;
|
|
2028
2028
|
}
|
|
2029
2029
|
case Lo: {
|
|
2030
2030
|
if (r.isNull) throw new Error();
|
|
2031
|
-
e.
|
|
2031
|
+
e.PrimaryUserId = r.asString();
|
|
2032
2032
|
break;
|
|
2033
2033
|
}
|
|
2034
2034
|
case vo: {
|
|
2035
2035
|
if (r.isNull) throw new Error();
|
|
2036
|
-
e.
|
|
2036
|
+
e.AudioStreams = jo(r.asDictionary());
|
|
2037
2037
|
break;
|
|
2038
2038
|
}
|
|
2039
2039
|
case Fo: {
|
|
2040
2040
|
if (r.isNull) throw new Error();
|
|
2041
|
-
e.
|
|
2041
|
+
e.VideoStreams = zo(r.asDictionary());
|
|
2042
2042
|
break;
|
|
2043
2043
|
}
|
|
2044
2044
|
case Po: {
|
|
2045
|
-
if (r.isNull) throw new Error();
|
|
2046
|
-
e.VideoStreams = Xo(r.asDictionary());
|
|
2047
|
-
break;
|
|
2048
|
-
}
|
|
2049
|
-
case Bo: {
|
|
2050
2045
|
if (r.isNull) throw new Error();
|
|
2051
2046
|
e.SpaceName = r.asString();
|
|
2052
2047
|
break;
|
|
2053
2048
|
}
|
|
2054
2049
|
}
|
|
2055
2050
|
}
|
|
2056
|
-
async function
|
|
2057
|
-
const r = await Be(t,
|
|
2058
|
-
return
|
|
2051
|
+
async function Wo(t, e) {
|
|
2052
|
+
const r = await Be(t, _o);
|
|
2053
|
+
return xo(r, e);
|
|
2059
2054
|
}
|
|
2060
|
-
function
|
|
2055
|
+
function Ho(t) {
|
|
2061
2056
|
const e = /* @__PURE__ */ Object.create(null);
|
|
2062
2057
|
let r;
|
|
2063
2058
|
for (; (r = t.next()) !== null; ) {
|
|
@@ -2066,231 +2061,231 @@ function $o(t) {
|
|
|
2066
2061
|
}
|
|
2067
2062
|
return e;
|
|
2068
2063
|
}
|
|
2069
|
-
function
|
|
2064
|
+
function $o(t) {
|
|
2070
2065
|
const e = /* @__PURE__ */ Object.create(null);
|
|
2071
2066
|
let r;
|
|
2072
2067
|
for (; (r = t.next()) !== null; ) {
|
|
2073
2068
|
const n = r.key.asString();
|
|
2074
|
-
e[n] =
|
|
2069
|
+
e[n] = Aa(r.value.asObject());
|
|
2075
2070
|
}
|
|
2076
2071
|
return e;
|
|
2077
2072
|
}
|
|
2078
|
-
function
|
|
2073
|
+
function Ko(t) {
|
|
2079
2074
|
const e = /* @__PURE__ */ Object.create(null);
|
|
2080
2075
|
let r;
|
|
2081
2076
|
for (; (r = t.next()) !== null; ) {
|
|
2082
2077
|
const n = r.key.asInt32();
|
|
2083
|
-
e[n] =
|
|
2078
|
+
e[n] = Xo(r.value.asArray());
|
|
2084
2079
|
}
|
|
2085
2080
|
return e;
|
|
2086
2081
|
}
|
|
2087
|
-
function
|
|
2082
|
+
function Yo(t) {
|
|
2088
2083
|
const e = /* @__PURE__ */ Object.create(null);
|
|
2089
2084
|
let r;
|
|
2090
2085
|
for (; (r = t.next()) !== null; ) {
|
|
2091
2086
|
const n = r.key.asString();
|
|
2092
|
-
e[n] =
|
|
2087
|
+
e[n] = ta(r.value.asObject());
|
|
2093
2088
|
}
|
|
2094
2089
|
return e;
|
|
2095
2090
|
}
|
|
2096
|
-
function
|
|
2091
|
+
function jo(t) {
|
|
2097
2092
|
const e = /* @__PURE__ */ Object.create(null);
|
|
2098
2093
|
let r;
|
|
2099
2094
|
for (; (r = t.next()) !== null; ) {
|
|
2100
2095
|
const n = r.key.asString();
|
|
2101
|
-
e[n] =
|
|
2096
|
+
e[n] = ca(r.value.asObject());
|
|
2102
2097
|
}
|
|
2103
2098
|
return e;
|
|
2104
2099
|
}
|
|
2105
|
-
function
|
|
2100
|
+
function zo(t) {
|
|
2106
2101
|
const e = /* @__PURE__ */ Object.create(null);
|
|
2107
2102
|
let r;
|
|
2108
2103
|
for (; (r = t.next()) !== null; ) {
|
|
2109
2104
|
const n = r.key.asString();
|
|
2110
|
-
e[n] =
|
|
2105
|
+
e[n] = pa(r.value.asObject());
|
|
2111
2106
|
}
|
|
2112
2107
|
return e;
|
|
2113
2108
|
}
|
|
2114
|
-
function
|
|
2109
|
+
function Xo(t) {
|
|
2115
2110
|
const e = [];
|
|
2116
2111
|
let r;
|
|
2117
2112
|
for (; (r = t.next()) !== null; )
|
|
2118
|
-
e.push(
|
|
2113
|
+
e.push(gi(r.asObject()));
|
|
2119
2114
|
return e;
|
|
2120
2115
|
}
|
|
2121
|
-
const
|
|
2122
|
-
function
|
|
2116
|
+
const Jo = 161083277, Qo = 325678206, Zo = 3469892363, qo = 3645544153;
|
|
2117
|
+
function ea(t) {
|
|
2123
2118
|
const e = {};
|
|
2124
2119
|
return Er(e), e;
|
|
2125
2120
|
}
|
|
2126
2121
|
function Er(t) {
|
|
2127
2122
|
return t.StreamId = "", t.ClientSessionId = 0, t.TrackId = 0, t.Info = lr(), t;
|
|
2128
2123
|
}
|
|
2129
|
-
function
|
|
2130
|
-
const r = e ??
|
|
2131
|
-
return Er(r),
|
|
2124
|
+
function ta(t, e) {
|
|
2125
|
+
const r = e ?? ea();
|
|
2126
|
+
return Er(r), ra(t, r), r;
|
|
2132
2127
|
}
|
|
2133
|
-
function
|
|
2128
|
+
function ra(t, e) {
|
|
2134
2129
|
let r;
|
|
2135
2130
|
for (; (r = t.next()) !== null; )
|
|
2136
2131
|
switch (r.fieldId) {
|
|
2137
|
-
case
|
|
2132
|
+
case Jo: {
|
|
2138
2133
|
if (r.isNull) throw new Error();
|
|
2139
2134
|
e.StreamId = r.asString();
|
|
2140
2135
|
break;
|
|
2141
2136
|
}
|
|
2142
|
-
case
|
|
2137
|
+
case Qo: {
|
|
2143
2138
|
if (r.isNull) throw new Error();
|
|
2144
2139
|
e.ClientSessionId = r.asInt32();
|
|
2145
2140
|
break;
|
|
2146
2141
|
}
|
|
2147
|
-
case
|
|
2142
|
+
case Zo: {
|
|
2148
2143
|
if (r.isNull) throw new Error();
|
|
2149
2144
|
e.TrackId = r.asInt32();
|
|
2150
2145
|
break;
|
|
2151
2146
|
}
|
|
2152
|
-
case
|
|
2147
|
+
case qo: {
|
|
2153
2148
|
if (r.isNull) throw new Error();
|
|
2154
|
-
e.Info =
|
|
2149
|
+
e.Info = oo(r.asObject());
|
|
2155
2150
|
break;
|
|
2156
2151
|
}
|
|
2157
2152
|
}
|
|
2158
2153
|
}
|
|
2159
|
-
const
|
|
2160
|
-
function
|
|
2154
|
+
const na = 161083277, sa = 325678206, ia = 3469892363, oa = 3645544153;
|
|
2155
|
+
function aa(t) {
|
|
2161
2156
|
const e = {};
|
|
2162
2157
|
return pr(e), e;
|
|
2163
2158
|
}
|
|
2164
2159
|
function pr(t) {
|
|
2165
2160
|
return t.StreamId = "", t.ClientSessionId = 0, t.TrackId = 0, t.Info = Nt(), t;
|
|
2166
2161
|
}
|
|
2167
|
-
function
|
|
2168
|
-
const r = e ??
|
|
2169
|
-
return pr(r),
|
|
2162
|
+
function ca(t, e) {
|
|
2163
|
+
const r = e ?? aa();
|
|
2164
|
+
return pr(r), la(t, r), r;
|
|
2170
2165
|
}
|
|
2171
|
-
function
|
|
2166
|
+
function la(t, e) {
|
|
2172
2167
|
let r;
|
|
2173
2168
|
for (; (r = t.next()) !== null; )
|
|
2174
2169
|
switch (r.fieldId) {
|
|
2175
|
-
case
|
|
2170
|
+
case na: {
|
|
2176
2171
|
if (r.isNull) throw new Error();
|
|
2177
2172
|
e.StreamId = r.asString();
|
|
2178
2173
|
break;
|
|
2179
2174
|
}
|
|
2180
|
-
case
|
|
2175
|
+
case sa: {
|
|
2181
2176
|
if (r.isNull) throw new Error();
|
|
2182
2177
|
e.ClientSessionId = r.asInt32();
|
|
2183
2178
|
break;
|
|
2184
2179
|
}
|
|
2185
|
-
case
|
|
2180
|
+
case ia: {
|
|
2186
2181
|
if (r.isNull) throw new Error();
|
|
2187
2182
|
e.TrackId = r.asInt32();
|
|
2188
2183
|
break;
|
|
2189
2184
|
}
|
|
2190
|
-
case
|
|
2185
|
+
case oa: {
|
|
2191
2186
|
if (r.isNull) throw new Error();
|
|
2192
2187
|
e.Info = Cn(r.asObject());
|
|
2193
2188
|
break;
|
|
2194
2189
|
}
|
|
2195
2190
|
}
|
|
2196
2191
|
}
|
|
2197
|
-
const
|
|
2198
|
-
function
|
|
2192
|
+
const ua = 161083277, ha = 325678206, da = 3469892363, fa = 3645544153;
|
|
2193
|
+
function Ea(t) {
|
|
2199
2194
|
const e = {};
|
|
2200
2195
|
return Ir(e), e;
|
|
2201
2196
|
}
|
|
2202
2197
|
function Ir(t) {
|
|
2203
2198
|
return t.StreamId = "", t.ClientSessionId = 0, t.TrackId = 0, t.Info = hr(), t;
|
|
2204
2199
|
}
|
|
2205
|
-
function
|
|
2206
|
-
const r = e ??
|
|
2207
|
-
return Ir(r),
|
|
2200
|
+
function pa(t, e) {
|
|
2201
|
+
const r = e ?? Ea();
|
|
2202
|
+
return Ir(r), Ia(t, r), r;
|
|
2208
2203
|
}
|
|
2209
|
-
function
|
|
2204
|
+
function Ia(t, e) {
|
|
2210
2205
|
let r;
|
|
2211
2206
|
for (; (r = t.next()) !== null; )
|
|
2212
2207
|
switch (r.fieldId) {
|
|
2213
|
-
case
|
|
2208
|
+
case ua: {
|
|
2214
2209
|
if (r.isNull) throw new Error();
|
|
2215
2210
|
e.StreamId = r.asString();
|
|
2216
2211
|
break;
|
|
2217
2212
|
}
|
|
2218
|
-
case
|
|
2213
|
+
case ha: {
|
|
2219
2214
|
if (r.isNull) throw new Error();
|
|
2220
2215
|
e.ClientSessionId = r.asInt32();
|
|
2221
2216
|
break;
|
|
2222
2217
|
}
|
|
2223
|
-
case
|
|
2218
|
+
case da: {
|
|
2224
2219
|
if (r.isNull) throw new Error();
|
|
2225
2220
|
e.TrackId = r.asInt32();
|
|
2226
2221
|
break;
|
|
2227
2222
|
}
|
|
2228
|
-
case
|
|
2223
|
+
case fa: {
|
|
2229
2224
|
if (r.isNull) throw new Error();
|
|
2230
|
-
e.Info =
|
|
2225
|
+
e.Info = Io(r.asObject());
|
|
2231
2226
|
break;
|
|
2232
2227
|
}
|
|
2233
2228
|
}
|
|
2234
2229
|
}
|
|
2235
|
-
const
|
|
2236
|
-
function
|
|
2230
|
+
const ma = 161083277, _a = 325678206, Ta = 3469892363, Sa = 3645544153;
|
|
2231
|
+
function wa(t) {
|
|
2237
2232
|
const e = {};
|
|
2238
2233
|
return mr(e), e;
|
|
2239
2234
|
}
|
|
2240
2235
|
function mr(t) {
|
|
2241
2236
|
return t.StreamId = "", t.ClientSessionId = 0, t.TrackId = 0, t.Info = ar(), t;
|
|
2242
2237
|
}
|
|
2243
|
-
function
|
|
2244
|
-
const r = e ??
|
|
2245
|
-
return mr(r),
|
|
2238
|
+
function Aa(t, e) {
|
|
2239
|
+
const r = e ?? wa();
|
|
2240
|
+
return mr(r), ya(t, r), r;
|
|
2246
2241
|
}
|
|
2247
|
-
function
|
|
2242
|
+
function ya(t, e) {
|
|
2248
2243
|
let r;
|
|
2249
2244
|
for (; (r = t.next()) !== null; )
|
|
2250
2245
|
switch (r.fieldId) {
|
|
2251
|
-
case
|
|
2246
|
+
case ma: {
|
|
2252
2247
|
if (r.isNull) throw new Error();
|
|
2253
2248
|
e.StreamId = r.asString();
|
|
2254
2249
|
break;
|
|
2255
2250
|
}
|
|
2256
|
-
case
|
|
2251
|
+
case _a: {
|
|
2257
2252
|
if (r.isNull) throw new Error();
|
|
2258
2253
|
e.ClientSessionId = r.asInt32();
|
|
2259
2254
|
break;
|
|
2260
2255
|
}
|
|
2261
|
-
case
|
|
2256
|
+
case Ta: {
|
|
2262
2257
|
if (r.isNull) throw new Error();
|
|
2263
2258
|
e.TrackId = r.asInt32();
|
|
2264
2259
|
break;
|
|
2265
2260
|
}
|
|
2266
|
-
case
|
|
2261
|
+
case Sa: {
|
|
2267
2262
|
if (r.isNull) throw new Error();
|
|
2268
|
-
e.Info =
|
|
2263
|
+
e.Info = ro(r.asObject());
|
|
2269
2264
|
break;
|
|
2270
2265
|
}
|
|
2271
2266
|
}
|
|
2272
2267
|
}
|
|
2273
|
-
const _r = 1,
|
|
2268
|
+
const _r = 1, ga = 131074;
|
|
2274
2269
|
function Tr(t) {
|
|
2275
2270
|
return {};
|
|
2276
2271
|
}
|
|
2277
|
-
function
|
|
2272
|
+
function Na(t) {
|
|
2278
2273
|
return new D(_r).finish();
|
|
2279
2274
|
}
|
|
2280
2275
|
function Sr(t, e, r) {
|
|
2281
|
-
const n =
|
|
2282
|
-
return P(
|
|
2276
|
+
const n = Na();
|
|
2277
|
+
return P(ga, n, _r, e, r);
|
|
2283
2278
|
}
|
|
2284
|
-
const wr = 1,
|
|
2279
|
+
const wr = 1, Ca = 8388612;
|
|
2285
2280
|
function Ra(t) {
|
|
2286
2281
|
return {};
|
|
2287
2282
|
}
|
|
2288
|
-
function
|
|
2283
|
+
function ba(t) {
|
|
2289
2284
|
return new D(wr).finish();
|
|
2290
2285
|
}
|
|
2291
|
-
function
|
|
2292
|
-
const n =
|
|
2293
|
-
return P(
|
|
2286
|
+
function ka(t, e, r) {
|
|
2287
|
+
const n = ba();
|
|
2288
|
+
return P(Ca, n, wr, e, r);
|
|
2294
2289
|
}
|
|
2295
2290
|
class je extends Error {
|
|
2296
2291
|
constructor(e, r) {
|
|
@@ -2312,27 +2307,27 @@ class ze extends H {
|
|
|
2312
2307
|
super(`No keepalive received within ${e}ms`), this.name = "KeepaliveTimeoutError";
|
|
2313
2308
|
}
|
|
2314
2309
|
}
|
|
2315
|
-
class
|
|
2310
|
+
class Ua extends je {
|
|
2316
2311
|
constructor(e) {
|
|
2317
2312
|
super(`Maximum reconnection attempts (${e}) exceeded`), this.name = "MaxRetriesExceededError";
|
|
2318
2313
|
}
|
|
2319
2314
|
}
|
|
2320
|
-
class
|
|
2315
|
+
class Da extends g {
|
|
2321
2316
|
constructor(e) {
|
|
2322
2317
|
super(`Channel provisioning timeout after ${e}ms`), this.name = "ProvisioningTimeoutError";
|
|
2323
2318
|
}
|
|
2324
2319
|
}
|
|
2325
|
-
class
|
|
2320
|
+
class kl extends g {
|
|
2326
2321
|
constructor(e) {
|
|
2327
2322
|
super(`Channel not found: ${e}`), this.name = "ChannelNotFoundError";
|
|
2328
2323
|
}
|
|
2329
2324
|
}
|
|
2330
|
-
class
|
|
2325
|
+
class Ul extends g {
|
|
2331
2326
|
constructor(e) {
|
|
2332
2327
|
super(`Space not found for domain: ${e}`), this.name = "SpaceNotFoundError";
|
|
2333
2328
|
}
|
|
2334
2329
|
}
|
|
2335
|
-
class
|
|
2330
|
+
class Dl extends g {
|
|
2336
2331
|
constructor() {
|
|
2337
2332
|
super("No channels available in this space"), this.name = "NoChannelsError";
|
|
2338
2333
|
}
|
|
@@ -2351,22 +2346,22 @@ function Ar(t, e) {
|
|
|
2351
2346
|
e?.addEventListener("abort", s, { once: !0 });
|
|
2352
2347
|
});
|
|
2353
2348
|
}
|
|
2354
|
-
var
|
|
2355
|
-
let Xe = 1,
|
|
2349
|
+
var Ae = /* @__PURE__ */ ((t) => (t[t.DEBUG = 0] = "DEBUG", t[t.INFO = 1] = "INFO", t[t.WARN = 2] = "WARN", t[t.ERROR = 3] = "ERROR", t[t.NONE = 4] = "NONE", t))(Ae || {});
|
|
2350
|
+
let Xe = 1, Ie = null;
|
|
2356
2351
|
const De = /* @__PURE__ */ new Map();
|
|
2357
2352
|
function yr(t) {
|
|
2358
2353
|
Xe = t;
|
|
2359
2354
|
}
|
|
2360
|
-
function
|
|
2355
|
+
function Ml() {
|
|
2361
2356
|
return Xe;
|
|
2362
2357
|
}
|
|
2363
|
-
function
|
|
2364
|
-
|
|
2358
|
+
function Ma(t) {
|
|
2359
|
+
Ie = t;
|
|
2365
2360
|
}
|
|
2366
|
-
function
|
|
2367
|
-
return
|
|
2361
|
+
function Ol() {
|
|
2362
|
+
return Ie;
|
|
2368
2363
|
}
|
|
2369
|
-
function
|
|
2364
|
+
function Ll(t, e) {
|
|
2370
2365
|
return De.set(t, e ?? {
|
|
2371
2366
|
minLevel: 2
|
|
2372
2367
|
/* WARN */
|
|
@@ -2374,18 +2369,18 @@ function Ol(t, e) {
|
|
|
2374
2369
|
De.delete(t);
|
|
2375
2370
|
};
|
|
2376
2371
|
}
|
|
2377
|
-
const
|
|
2372
|
+
const Oa = {
|
|
2378
2373
|
0: "DEBUG",
|
|
2379
2374
|
1: "INFO",
|
|
2380
2375
|
2: "WARN",
|
|
2381
2376
|
3: "ERROR",
|
|
2382
2377
|
4: "NONE"
|
|
2383
2378
|
};
|
|
2384
|
-
function
|
|
2379
|
+
function La(t, e) {
|
|
2385
2380
|
return `[${t}] ${e}`;
|
|
2386
2381
|
}
|
|
2387
|
-
function
|
|
2388
|
-
const s = (/* @__PURE__ */ new Date()).toISOString(), i =
|
|
2382
|
+
function ae(t, e, r, n) {
|
|
2383
|
+
const s = (/* @__PURE__ */ new Date()).toISOString(), i = Oa[t], o = {
|
|
2389
2384
|
timestamp: s,
|
|
2390
2385
|
level: t,
|
|
2391
2386
|
levelName: i,
|
|
@@ -2393,7 +2388,7 @@ function oe(t, e, r, n) {
|
|
|
2393
2388
|
message: r,
|
|
2394
2389
|
args: n
|
|
2395
2390
|
};
|
|
2396
|
-
|
|
2391
|
+
Ie && Ie(o);
|
|
2397
2392
|
for (const [a, c] of De) {
|
|
2398
2393
|
const l = c?.minLevel ?? 2;
|
|
2399
2394
|
if (t >= l)
|
|
@@ -2403,7 +2398,7 @@ function oe(t, e, r, n) {
|
|
|
2403
2398
|
}
|
|
2404
2399
|
}
|
|
2405
2400
|
if (Xe <= t) {
|
|
2406
|
-
const a =
|
|
2401
|
+
const a = La(e, r);
|
|
2407
2402
|
switch (t) {
|
|
2408
2403
|
case 0:
|
|
2409
2404
|
console.debug(a, ...n);
|
|
@@ -2423,21 +2418,21 @@ function oe(t, e, r, n) {
|
|
|
2423
2418
|
function M(t) {
|
|
2424
2419
|
return {
|
|
2425
2420
|
debug(e, ...r) {
|
|
2426
|
-
|
|
2421
|
+
ae(0, t, e, r);
|
|
2427
2422
|
},
|
|
2428
2423
|
info(e, ...r) {
|
|
2429
|
-
|
|
2424
|
+
ae(1, t, e, r);
|
|
2430
2425
|
},
|
|
2431
2426
|
warn(e, ...r) {
|
|
2432
|
-
|
|
2427
|
+
ae(2, t, e, r);
|
|
2433
2428
|
},
|
|
2434
2429
|
error(e, ...r) {
|
|
2435
|
-
|
|
2430
|
+
ae(3, t, e, r);
|
|
2436
2431
|
}
|
|
2437
2432
|
};
|
|
2438
2433
|
}
|
|
2439
|
-
const
|
|
2440
|
-
class
|
|
2434
|
+
const ce = M("WebSocketTransport"), va = 1e4;
|
|
2435
|
+
class Fa {
|
|
2441
2436
|
ws = null;
|
|
2442
2437
|
keepaliveTimeout = null;
|
|
2443
2438
|
// Pre-allocated keepalive response message to avoid allocation per keepalive
|
|
@@ -2464,11 +2459,11 @@ class Pa {
|
|
|
2464
2459
|
clearTimeout(c), this.ws && (this.ws.onopen = null, this.ws.onerror = null, this.ws.onclose = null, this.ws.onmessage = null);
|
|
2465
2460
|
}, c = setTimeout(() => {
|
|
2466
2461
|
o || (o = !0, a(), this.ws?.close(), s(new H("WebSocket connection timeout")));
|
|
2467
|
-
},
|
|
2462
|
+
}, va);
|
|
2468
2463
|
this.ws.onopen = () => {
|
|
2469
2464
|
i = !0, clearTimeout(c), this.ws.send(r), this.resetKeepaliveTimeout(), o || (o = !0, n());
|
|
2470
2465
|
}, this.ws.onerror = () => {
|
|
2471
|
-
clearTimeout(c),
|
|
2466
|
+
clearTimeout(c), ce.error("WebSocket error"), o || (o = !0, a(), s(new H("WebSocket connection failed")));
|
|
2472
2467
|
}, this.ws.onclose = (l) => {
|
|
2473
2468
|
if (this.clearKeepaliveTimeout(), !i && !o) {
|
|
2474
2469
|
o = !0, a(), s(new H("WebSocket connection closed before opening"));
|
|
@@ -2482,7 +2477,7 @@ class Pa {
|
|
|
2482
2477
|
});
|
|
2483
2478
|
}
|
|
2484
2479
|
send(e) {
|
|
2485
|
-
this.ws?.readyState === WebSocket.OPEN ? this.ws.send(e) :
|
|
2480
|
+
this.ws?.readyState === WebSocket.OPEN ? this.ws.send(e) : ce.warn("Cannot send: WebSocket not connected");
|
|
2486
2481
|
}
|
|
2487
2482
|
close() {
|
|
2488
2483
|
this.clearKeepaliveTimeout(), this.ws && (this.ws.close(1e3, "Client closing"), this.ws = null);
|
|
@@ -2495,29 +2490,29 @@ class Pa {
|
|
|
2495
2490
|
}
|
|
2496
2491
|
handleProtocolMessage(e) {
|
|
2497
2492
|
try {
|
|
2498
|
-
if (
|
|
2493
|
+
if (ie(e).opcode === S.KEEPALIVE_REQUEST) {
|
|
2499
2494
|
this.send(this.getKeepaliveResponse()), this.resetKeepaliveTimeout();
|
|
2500
2495
|
return;
|
|
2501
2496
|
}
|
|
2502
2497
|
this.resetKeepaliveTimeout(), this.callbacks.onProtocolMessage(e);
|
|
2503
2498
|
} catch (r) {
|
|
2504
|
-
|
|
2499
|
+
ce.error("Failed to process protocol message:", r), this.callbacks.onError(r instanceof Error ? r : new Error(String(r)));
|
|
2505
2500
|
}
|
|
2506
2501
|
}
|
|
2507
2502
|
resetKeepaliveTimeout() {
|
|
2508
2503
|
this.clearKeepaliveTimeout(), this.keepaliveTimeout = setTimeout(() => {
|
|
2509
|
-
|
|
2504
|
+
ce.error(`No keepalive received in ${this.keepaliveTimeoutMs}ms, closing connection`), this.callbacks.onError(new ze(this.keepaliveTimeoutMs)), this.close();
|
|
2510
2505
|
}, this.keepaliveTimeoutMs);
|
|
2511
2506
|
}
|
|
2512
2507
|
clearKeepaliveTimeout() {
|
|
2513
2508
|
this.keepaliveTimeout && (clearTimeout(this.keepaliveTimeout), this.keepaliveTimeout = null);
|
|
2514
2509
|
}
|
|
2515
2510
|
}
|
|
2516
|
-
const B = M("WebTransportTransport"), rt = 4,
|
|
2511
|
+
const B = M("WebTransportTransport"), rt = 4, Pa = 65536;
|
|
2517
2512
|
function gr() {
|
|
2518
2513
|
return typeof WebTransport < "u";
|
|
2519
2514
|
}
|
|
2520
|
-
class
|
|
2515
|
+
class Ba {
|
|
2521
2516
|
transport = null;
|
|
2522
2517
|
stream = null;
|
|
2523
2518
|
reader = null;
|
|
@@ -2525,7 +2520,7 @@ class xa {
|
|
|
2525
2520
|
keepaliveTimeout = null;
|
|
2526
2521
|
readLoopActive = !1;
|
|
2527
2522
|
// Grow-only receive buffer with offset/length tracking to minimize allocations
|
|
2528
|
-
receiveBuffer = new Uint8Array(
|
|
2523
|
+
receiveBuffer = new Uint8Array(Pa);
|
|
2529
2524
|
receiveBufferOffset = 0;
|
|
2530
2525
|
receiveBufferLength = 0;
|
|
2531
2526
|
// Cached DataView to avoid allocation per message
|
|
@@ -2637,7 +2632,7 @@ class xa {
|
|
|
2637
2632
|
*/
|
|
2638
2633
|
handleProtocolMessage(e) {
|
|
2639
2634
|
try {
|
|
2640
|
-
if (
|
|
2635
|
+
if (ie(e).opcode === S.KEEPALIVE_REQUEST) {
|
|
2641
2636
|
this.send(this.getKeepaliveResponse()), this.resetKeepaliveTimeout();
|
|
2642
2637
|
return;
|
|
2643
2638
|
}
|
|
@@ -2680,7 +2675,7 @@ class xa {
|
|
|
2680
2675
|
}
|
|
2681
2676
|
}
|
|
2682
2677
|
const te = M("Channel");
|
|
2683
|
-
class
|
|
2678
|
+
class xa {
|
|
2684
2679
|
state = "disconnected";
|
|
2685
2680
|
transport = null;
|
|
2686
2681
|
config;
|
|
@@ -2757,13 +2752,13 @@ class Ga {
|
|
|
2757
2752
|
switch (e.Type) {
|
|
2758
2753
|
case k.WebSocket:
|
|
2759
2754
|
case k.WebSocketProxy:
|
|
2760
|
-
this.transport = new
|
|
2755
|
+
this.transport = new Fa(r);
|
|
2761
2756
|
break;
|
|
2762
2757
|
case k.WebTransport:
|
|
2763
2758
|
case k.WebTransportProxy:
|
|
2764
2759
|
if (!gr())
|
|
2765
2760
|
throw new Error("WebTransport is not supported in this browser");
|
|
2766
|
-
this.transport = new
|
|
2761
|
+
this.transport = new Ba(r);
|
|
2767
2762
|
break;
|
|
2768
2763
|
default:
|
|
2769
2764
|
throw new Error(`Unsupported entrypoint type: ${k[e.Type]}`);
|
|
@@ -2776,7 +2771,7 @@ class Ga {
|
|
|
2776
2771
|
handleProtocolMessage(e) {
|
|
2777
2772
|
try {
|
|
2778
2773
|
const r = e;
|
|
2779
|
-
if (
|
|
2774
|
+
if (fe(r) === S.CORE_ON_SERVER_STOPPING) {
|
|
2780
2775
|
te.debug("Received server stopping message"), this.setState("stopped"), this.transport?.close();
|
|
2781
2776
|
return;
|
|
2782
2777
|
}
|
|
@@ -2805,7 +2800,7 @@ class Ga {
|
|
|
2805
2800
|
}
|
|
2806
2801
|
}
|
|
2807
2802
|
const x = M("ChannelManager");
|
|
2808
|
-
class
|
|
2803
|
+
class Ga {
|
|
2809
2804
|
channels = /* @__PURE__ */ new Map();
|
|
2810
2805
|
// keyed by opcode group
|
|
2811
2806
|
activeType = null;
|
|
@@ -2849,7 +2844,7 @@ class Va {
|
|
|
2849
2844
|
* The opcode group is extracted from the message automatically.
|
|
2850
2845
|
*/
|
|
2851
2846
|
sendProtocolMessage(e) {
|
|
2852
|
-
const r =
|
|
2847
|
+
const r = he(e);
|
|
2853
2848
|
for (const [n, s] of this.channels)
|
|
2854
2849
|
if (n & r) {
|
|
2855
2850
|
s.send(e);
|
|
@@ -2907,7 +2902,7 @@ class Va {
|
|
|
2907
2902
|
* Connect a single channel.
|
|
2908
2903
|
*/
|
|
2909
2904
|
async connectChannel(e) {
|
|
2910
|
-
const r = new
|
|
2905
|
+
const r = new xa({
|
|
2911
2906
|
entrypoint: e,
|
|
2912
2907
|
sessionId: this.config.sessionId,
|
|
2913
2908
|
keepaliveTimeoutMs: this.config.keepaliveTimeoutMs,
|
|
@@ -2962,7 +2957,7 @@ class Va {
|
|
|
2962
2957
|
if (!this.shouldReconnect)
|
|
2963
2958
|
return;
|
|
2964
2959
|
if (this.reconnectAttempts >= this.config.maxReconnectAttempts) {
|
|
2965
|
-
x.error(`Max reconnect attempts (${this.config.maxReconnectAttempts}) reached`), this.setState("offline"), this.config.onError?.(new
|
|
2960
|
+
x.error(`Max reconnect attempts (${this.config.maxReconnectAttempts}) reached`), this.setState("offline"), this.config.onError?.(new Ua(this.config.maxReconnectAttempts));
|
|
2966
2961
|
return;
|
|
2967
2962
|
}
|
|
2968
2963
|
this.setState("reconnecting"), this.reconnectAttempts++;
|
|
@@ -2989,7 +2984,7 @@ class Va {
|
|
|
2989
2984
|
this.state !== e && (this.state = e, this.config.onStateChange?.(e));
|
|
2990
2985
|
}
|
|
2991
2986
|
}
|
|
2992
|
-
const
|
|
2987
|
+
const Va = 5e3, Wa = 3e4, nt = 35e3, st = 500, it = 6, Nr = 6e4, Me = "ikon_device_id";
|
|
2993
2988
|
function Je() {
|
|
2994
2989
|
if (typeof window > "u" || typeof localStorage > "u")
|
|
2995
2990
|
return crypto.randomUUID();
|
|
@@ -3000,14 +2995,14 @@ function Je() {
|
|
|
3000
2995
|
return crypto.randomUUID();
|
|
3001
2996
|
}
|
|
3002
2997
|
}
|
|
3003
|
-
function
|
|
2998
|
+
function vl() {
|
|
3004
2999
|
if (!(typeof localStorage > "u"))
|
|
3005
3000
|
try {
|
|
3006
3001
|
localStorage.removeItem(Me);
|
|
3007
3002
|
} catch {
|
|
3008
3003
|
}
|
|
3009
3004
|
}
|
|
3010
|
-
function
|
|
3005
|
+
function Fl(t) {
|
|
3011
3006
|
try {
|
|
3012
3007
|
const e = t.split(".");
|
|
3013
3008
|
return e.length !== 3 ? null : JSON.parse(atob(e[1])).id ?? null;
|
|
@@ -3015,26 +3010,26 @@ function vl(t) {
|
|
|
3015
3010
|
return null;
|
|
3016
3011
|
}
|
|
3017
3012
|
}
|
|
3018
|
-
const
|
|
3013
|
+
const me = {}, Oe = "https://api.prod.ikon.live", _e = "https://api.dev.ikon.live", ot = "https://auth.ikonai.com", at = "https://auth.dev.ikonai.com", Pl = "https://auth.ikonai.com";
|
|
3019
3014
|
function Cr(t) {
|
|
3020
|
-
return t === "development" ?
|
|
3021
|
-
}
|
|
3022
|
-
function Pl() {
|
|
3023
|
-
const t = typeof import.meta < "u" ? Ie?.VITE_IKON_BACKEND_URL : void 0;
|
|
3024
|
-
return t || (typeof window > "u" ? Oe : !Qe() || window.location.hostname.includes(".dev.") ? me : Oe);
|
|
3015
|
+
return t === "development" ? _e : Oe;
|
|
3025
3016
|
}
|
|
3026
3017
|
function Bl() {
|
|
3027
|
-
const t = typeof import.meta < "u" ?
|
|
3018
|
+
const t = typeof import.meta < "u" ? me?.VITE_IKON_BACKEND_URL : void 0;
|
|
3019
|
+
return t || (typeof window > "u" ? Oe : !Qe() || window.location.hostname.includes(".dev.") ? _e : Oe);
|
|
3020
|
+
}
|
|
3021
|
+
function xl() {
|
|
3022
|
+
const t = typeof import.meta < "u" ? me?.VITE_IKON_BACKEND_TYPE : void 0;
|
|
3028
3023
|
if (t === "development" || t === "production")
|
|
3029
3024
|
return t;
|
|
3030
|
-
const e = typeof import.meta < "u" ?
|
|
3025
|
+
const e = typeof import.meta < "u" ? me?.VITE_IKON_BACKEND_URL : void 0;
|
|
3031
3026
|
return e ? e.includes(".dev.") ? "development" : "production" : typeof window > "u" ? "production" : Qe() ? window.location.hostname.includes(".dev.") ? "development" : "production" : "development";
|
|
3032
3027
|
}
|
|
3033
|
-
function
|
|
3034
|
-
const t = typeof import.meta < "u" ?
|
|
3028
|
+
function Gl() {
|
|
3029
|
+
const t = typeof import.meta < "u" ? me?.VITE_IKON_AUTH_URL : void 0;
|
|
3035
3030
|
return t || (typeof window > "u" ? ot : !Qe() || window.location.hostname.includes(".dev.") ? at : ot);
|
|
3036
3031
|
}
|
|
3037
|
-
function
|
|
3032
|
+
function Rr() {
|
|
3038
3033
|
if (typeof window > "u")
|
|
3039
3034
|
return {};
|
|
3040
3035
|
const t = new URLSearchParams(window.location.search), e = {};
|
|
@@ -3042,8 +3037,11 @@ function br() {
|
|
|
3042
3037
|
e[r] = n;
|
|
3043
3038
|
return e;
|
|
3044
3039
|
}
|
|
3045
|
-
const
|
|
3046
|
-
function
|
|
3040
|
+
const Ha = ["ikon_token", "ikon_provider", "error"], $a = "ikon_server_url";
|
|
3041
|
+
function Ka() {
|
|
3042
|
+
return typeof window > "u" ? void 0 : new URLSearchParams(window.location.search).get($a) ?? void 0;
|
|
3043
|
+
}
|
|
3044
|
+
function Vl() {
|
|
3047
3045
|
if (typeof window > "u")
|
|
3048
3046
|
return { parameters: {} };
|
|
3049
3047
|
const t = window.location.pathname;
|
|
@@ -3053,9 +3051,9 @@ function Gl() {
|
|
|
3053
3051
|
const s = t.match(/^\/c\/([^/]+)/);
|
|
3054
3052
|
if (s && (r = decodeURIComponent(s[1])), e && r)
|
|
3055
3053
|
throw new Error("URL cannot contain both /s/[sessionId] and /c/[channelKey]");
|
|
3056
|
-
const i =
|
|
3054
|
+
const i = Rr(), o = {};
|
|
3057
3055
|
for (const [a, c] of Object.entries(i))
|
|
3058
|
-
|
|
3056
|
+
Ha.includes(a) || (o[a] = c);
|
|
3059
3057
|
return { sessionId: e, channelKey: r, parameters: o };
|
|
3060
3058
|
}
|
|
3061
3059
|
function Qe() {
|
|
@@ -3070,10 +3068,10 @@ function Qe() {
|
|
|
3070
3068
|
}
|
|
3071
3069
|
return !0;
|
|
3072
3070
|
}
|
|
3073
|
-
const
|
|
3074
|
-
async function
|
|
3071
|
+
const Te = M("Authenticator"), z = S.GROUP_CORE | S.GROUP_KEEPALIVE | S.GROUP_EVENTS | S.GROUP_ACTIONS | S.GROUP_UI | S.GROUP_AUDIO | S.GROUP_VIDEO | S.GROUP_ANALYTICS, Ya = 1e3, ja = 5e3;
|
|
3072
|
+
async function za(t) {
|
|
3075
3073
|
try {
|
|
3076
|
-
const e = await fetch(`${
|
|
3074
|
+
const e = await fetch(`${_e}/users/me`, {
|
|
3077
3075
|
credentials: "include",
|
|
3078
3076
|
signal: t
|
|
3079
3077
|
});
|
|
@@ -3082,7 +3080,7 @@ async function ja(t) {
|
|
|
3082
3080
|
return;
|
|
3083
3081
|
}
|
|
3084
3082
|
}
|
|
3085
|
-
function
|
|
3083
|
+
function br(t, e, r) {
|
|
3086
3084
|
const n = {
|
|
3087
3085
|
method: "POST",
|
|
3088
3086
|
headers: {
|
|
@@ -3100,15 +3098,15 @@ async function kr(t, e, r, n, s, i, o) {
|
|
|
3100
3098
|
...r ? { key: r } : {},
|
|
3101
3099
|
...n && Object.keys(n).length > 0 ? { params: n } : {},
|
|
3102
3100
|
...s ? { hash: s } : {}
|
|
3103
|
-
}, l = await fetch(a,
|
|
3101
|
+
}, l = await fetch(a, br(c, i, o));
|
|
3104
3102
|
if (!l.ok) {
|
|
3105
3103
|
const d = await l.text().catch(() => "Unknown error");
|
|
3106
3104
|
throw new g(`Failed to request channel: ${l.status} ${d}`);
|
|
3107
3105
|
}
|
|
3108
3106
|
return await l.json();
|
|
3109
3107
|
}
|
|
3110
|
-
async function
|
|
3111
|
-
const s = `${t}/rooms/connect`, i = await fetch(s,
|
|
3108
|
+
async function Xa(t, e, r, n) {
|
|
3109
|
+
const s = `${t}/rooms/connect`, i = await fetch(s, br(e, r, n));
|
|
3112
3110
|
if (!i.ok) {
|
|
3113
3111
|
const o = await i.text().catch(() => "Unknown error");
|
|
3114
3112
|
throw new g(`Backend connect failed: ${i.status} ${o}`);
|
|
@@ -3117,23 +3115,23 @@ async function za(t, e, r, n) {
|
|
|
3117
3115
|
}
|
|
3118
3116
|
async function Ur(t, e, r, n, s) {
|
|
3119
3117
|
const i = Date.now();
|
|
3120
|
-
let o =
|
|
3118
|
+
let o = Ya;
|
|
3121
3119
|
for (; ; ) {
|
|
3122
3120
|
if (s?.aborted)
|
|
3123
3121
|
throw new g("Connection aborted");
|
|
3124
3122
|
if (Date.now() - i >= r)
|
|
3125
|
-
throw new
|
|
3126
|
-
const c = await
|
|
3123
|
+
throw new Da(r);
|
|
3124
|
+
const c = await Xa(t, e, n, s), l = c.state?.toLowerCase();
|
|
3127
3125
|
if (l === "running")
|
|
3128
3126
|
return c;
|
|
3129
3127
|
if (l === "provisioning") {
|
|
3130
|
-
await Ar(o, s), o = Math.min(o * 1.5,
|
|
3128
|
+
await Ar(o, s), o = Math.min(o * 1.5, ja);
|
|
3131
3129
|
continue;
|
|
3132
3130
|
}
|
|
3133
3131
|
throw new g(`Unexpected channel state: ${c.state}`);
|
|
3134
3132
|
}
|
|
3135
3133
|
}
|
|
3136
|
-
async function
|
|
3134
|
+
async function ne(t, e) {
|
|
3137
3135
|
const r = await fetch(t, { signal: e });
|
|
3138
3136
|
if (!r.ok) {
|
|
3139
3137
|
const o = await r.text().catch(() => "Unknown error");
|
|
@@ -3142,7 +3140,7 @@ async function Ae(t, e) {
|
|
|
3142
3140
|
const n = await r.arrayBuffer(), s = new Uint8Array(n);
|
|
3143
3141
|
return { authResponse: await Ms(s) };
|
|
3144
3142
|
}
|
|
3145
|
-
function
|
|
3143
|
+
function Ja(t, e) {
|
|
3146
3144
|
return vs({
|
|
3147
3145
|
ServerSessionId: "",
|
|
3148
3146
|
// Server will fill this in
|
|
@@ -3170,7 +3168,7 @@ function Xa(t, e) {
|
|
|
3170
3168
|
Parameters: t.parameters ?? {}
|
|
3171
3169
|
});
|
|
3172
3170
|
}
|
|
3173
|
-
function
|
|
3171
|
+
function Qa(t) {
|
|
3174
3172
|
return {
|
|
3175
3173
|
ServerSessionId: t.ServerSessionId,
|
|
3176
3174
|
ContextType: t.ContextType,
|
|
@@ -3197,13 +3195,13 @@ function Ja(t) {
|
|
|
3197
3195
|
Parameters: t.Parameters
|
|
3198
3196
|
};
|
|
3199
3197
|
}
|
|
3200
|
-
async function
|
|
3198
|
+
async function Za(t, e) {
|
|
3201
3199
|
const r = `https://${t.host}:${t.httpsPort}`;
|
|
3202
|
-
|
|
3203
|
-
const s = { ...
|
|
3200
|
+
Te.debug(`Authenticating with local server: ${r}`);
|
|
3201
|
+
const s = { ...Rr(), ...t.parameters };
|
|
3204
3202
|
let i = t.userId;
|
|
3205
|
-
i || (i = await
|
|
3206
|
-
const o =
|
|
3203
|
+
i || (i = await za(e), i || (i = "local", Te.warn('Could not determine user ID. Using fallback "local". To fix: either provide userId in config, or log in to the Ikon portal at https://portal.dev.ikon.live')));
|
|
3204
|
+
const o = Ja({ ...t, parameters: s }, i), a = Qa(o), c = await fetch(`${r}/connect-token`, {
|
|
3207
3205
|
method: "POST",
|
|
3208
3206
|
headers: {
|
|
3209
3207
|
"Content-Type": "application/json"
|
|
@@ -3219,13 +3217,13 @@ async function Qa(t, e) {
|
|
|
3219
3217
|
if (!E)
|
|
3220
3218
|
throw new g("Server did not return a token");
|
|
3221
3219
|
const d = `${r}/connect?token=${encodeURIComponent(E)}`;
|
|
3222
|
-
return
|
|
3220
|
+
return ne(d, e);
|
|
3223
3221
|
}
|
|
3224
|
-
async function
|
|
3222
|
+
async function qa(t, e) {
|
|
3225
3223
|
if (t.sessionId && t.channelKey)
|
|
3226
3224
|
throw new g("Cannot specify both sessionId and channelKey. Use sessionId for precomputed sessions or channelKey to select a channel.");
|
|
3227
3225
|
const r = Cr(t.backendType);
|
|
3228
|
-
|
|
3226
|
+
Te.debug(`Authenticating with cloud server: ${r}, space ID: ${t.spaceId}`);
|
|
3229
3227
|
const n = await fetch(`${r}/auth/api-key`, {
|
|
3230
3228
|
method: "POST",
|
|
3231
3229
|
headers: {
|
|
@@ -3279,13 +3277,13 @@ async function Za(t, e) {
|
|
|
3279
3277
|
if (!E.configuration?.url)
|
|
3280
3278
|
throw new g("Backend did not return a connect URL");
|
|
3281
3279
|
const d = E.configuration.url;
|
|
3282
|
-
return
|
|
3280
|
+
return ne(d, e);
|
|
3283
3281
|
}
|
|
3284
|
-
async function
|
|
3282
|
+
async function ec(t, e) {
|
|
3285
3283
|
if (t.sessionId && t.channelKey)
|
|
3286
3284
|
throw new g("Cannot specify both sessionId and channelKey. Use sessionId for precomputed sessions or channelKey to select a channel.");
|
|
3287
3285
|
const r = Cr(t.backendType), n = t.token;
|
|
3288
|
-
|
|
3286
|
+
Te.debug(`Authenticating with session token to: ${r}, space ID: ${t.spaceId}`);
|
|
3289
3287
|
const s = await fetch(`${r}/profiles/me?space=${encodeURIComponent(t.spaceId)}`, {
|
|
3290
3288
|
method: "GET",
|
|
3291
3289
|
headers: {
|
|
@@ -3320,24 +3318,24 @@ async function qa(t, e) {
|
|
|
3320
3318
|
if (!c.configuration?.url)
|
|
3321
3319
|
throw new g("Backend did not return a connect URL");
|
|
3322
3320
|
const l = c.configuration.url;
|
|
3323
|
-
return
|
|
3321
|
+
return ne(l, e);
|
|
3324
3322
|
}
|
|
3325
|
-
const Dr = "ikon.theme", Le = "ikon.theme-user",
|
|
3323
|
+
const Dr = "ikon.theme", Le = "ikon.theme-user", tc = "ikon.theme-change";
|
|
3326
3324
|
function Mr(t) {
|
|
3327
3325
|
typeof document < "u" && document.documentElement && document.documentElement.setAttribute("data-theme", t);
|
|
3328
3326
|
}
|
|
3329
|
-
const
|
|
3327
|
+
const rc = {
|
|
3330
3328
|
name: "ikon.client.getTheme",
|
|
3331
3329
|
description: "Get the currently selected client theme",
|
|
3332
3330
|
returnType: { kind: "string", nullable: !0 }
|
|
3333
3331
|
};
|
|
3334
|
-
function
|
|
3332
|
+
function nc() {
|
|
3335
3333
|
if (typeof window > "u" || !window.localStorage)
|
|
3336
3334
|
return null;
|
|
3337
3335
|
const t = window.localStorage.getItem(Le) ?? window.localStorage.getItem(Dr) ?? "light";
|
|
3338
3336
|
return Mr(t), t;
|
|
3339
3337
|
}
|
|
3340
|
-
const
|
|
3338
|
+
const sc = {
|
|
3341
3339
|
name: "ikon.client.setTheme",
|
|
3342
3340
|
description: "Update the client UI theme",
|
|
3343
3341
|
returnType: { kind: "boolean" },
|
|
@@ -3346,7 +3344,7 @@ const nc = {
|
|
|
3346
3344
|
{ name: "persist", type: { kind: "boolean", nullable: !0 }, description: "Whether to persist as user preference" }
|
|
3347
3345
|
]
|
|
3348
3346
|
};
|
|
3349
|
-
function
|
|
3347
|
+
function ic(t, e) {
|
|
3350
3348
|
if (typeof window > "u" || !window.localStorage || typeof t != "string")
|
|
3351
3349
|
return !1;
|
|
3352
3350
|
const r = t.trim().toLowerCase();
|
|
@@ -3355,40 +3353,40 @@ function sc(t, e) {
|
|
|
3355
3353
|
const n = e === void 0 ? !0 : !!e, s = window.localStorage;
|
|
3356
3354
|
n ? s.setItem(Le, r) : s.removeItem(Le), s.setItem(Dr, r);
|
|
3357
3355
|
try {
|
|
3358
|
-
window.dispatchEvent(new CustomEvent(
|
|
3356
|
+
window.dispatchEvent(new CustomEvent(tc, { detail: { mode: r } }));
|
|
3359
3357
|
} catch {
|
|
3360
3358
|
}
|
|
3361
3359
|
return Mr(r), !0;
|
|
3362
3360
|
}
|
|
3363
|
-
const
|
|
3361
|
+
const oc = {
|
|
3364
3362
|
name: "ikon.client.getLanguage",
|
|
3365
3363
|
description: "Get the browser language preference",
|
|
3366
3364
|
returnType: { kind: "string" }
|
|
3367
3365
|
};
|
|
3368
|
-
function
|
|
3366
|
+
function ac() {
|
|
3369
3367
|
return typeof navigator > "u" ? "en-US" : navigator.language || "en-US";
|
|
3370
3368
|
}
|
|
3371
|
-
const
|
|
3369
|
+
const cc = {
|
|
3372
3370
|
name: "ikon.client.getTimezone",
|
|
3373
3371
|
description: "Get the browser timezone (IANA format)",
|
|
3374
3372
|
returnType: { kind: "string" }
|
|
3375
3373
|
};
|
|
3376
|
-
function
|
|
3374
|
+
function lc() {
|
|
3377
3375
|
try {
|
|
3378
3376
|
return Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
3379
3377
|
} catch {
|
|
3380
3378
|
return "UTC";
|
|
3381
3379
|
}
|
|
3382
3380
|
}
|
|
3383
|
-
const
|
|
3381
|
+
const uc = {
|
|
3384
3382
|
name: "ikon.client.getUrl",
|
|
3385
3383
|
description: "Get the current browser URL path and query string",
|
|
3386
3384
|
returnType: { kind: "string", nullable: !0 }
|
|
3387
3385
|
};
|
|
3388
|
-
function
|
|
3386
|
+
function hc() {
|
|
3389
3387
|
return typeof window > "u" ? null : window.location.pathname + window.location.search;
|
|
3390
3388
|
}
|
|
3391
|
-
const
|
|
3389
|
+
const dc = {
|
|
3392
3390
|
name: "ikon.client.setUrl",
|
|
3393
3391
|
description: "Update the browser URL without triggering a page reload",
|
|
3394
3392
|
returnType: { kind: "boolean" },
|
|
@@ -3397,7 +3395,7 @@ const hc = {
|
|
|
3397
3395
|
{ name: "replace", type: { kind: "boolean", nullable: !0 }, description: "If true, replaces current history entry instead of adding new one" }
|
|
3398
3396
|
]
|
|
3399
3397
|
};
|
|
3400
|
-
function
|
|
3398
|
+
function fc(t, e) {
|
|
3401
3399
|
if (typeof window > "u" || !window.history || typeof t != "string")
|
|
3402
3400
|
return !1;
|
|
3403
3401
|
const r = t.trim();
|
|
@@ -3409,13 +3407,13 @@ function dc(t, e) {
|
|
|
3409
3407
|
return !1;
|
|
3410
3408
|
}
|
|
3411
3409
|
}
|
|
3412
|
-
const
|
|
3410
|
+
const Ec = {
|
|
3413
3411
|
name: "ikon.client.vibrate",
|
|
3414
3412
|
description: "Trigger haptic feedback on supported devices",
|
|
3415
3413
|
returnType: { kind: "boolean" },
|
|
3416
3414
|
parameters: [{ name: "pattern", type: { kind: "string" }, description: 'Duration in ms, or comma-separated pattern (e.g., "200" or "100,50,100")' }]
|
|
3417
3415
|
};
|
|
3418
|
-
function
|
|
3416
|
+
function pc(t) {
|
|
3419
3417
|
if (typeof navigator > "u" || !navigator.vibrate || typeof t != "string")
|
|
3420
3418
|
return !1;
|
|
3421
3419
|
try {
|
|
@@ -3426,13 +3424,13 @@ function Ec(t) {
|
|
|
3426
3424
|
}
|
|
3427
3425
|
}
|
|
3428
3426
|
let re = null;
|
|
3429
|
-
const
|
|
3427
|
+
const Ic = {
|
|
3430
3428
|
name: "ikon.client.keepScreenAwake",
|
|
3431
3429
|
description: "Prevent or allow the screen to sleep",
|
|
3432
3430
|
returnType: { kind: "boolean" },
|
|
3433
3431
|
parameters: [{ name: "enabled", type: { kind: "boolean" }, description: "Whether to keep the screen awake" }]
|
|
3434
3432
|
};
|
|
3435
|
-
async function
|
|
3433
|
+
async function mc(t) {
|
|
3436
3434
|
if (typeof navigator > "u" || !("wakeLock" in navigator))
|
|
3437
3435
|
return !1;
|
|
3438
3436
|
try {
|
|
@@ -3441,15 +3439,15 @@ async function Ic(t) {
|
|
|
3441
3439
|
return !1;
|
|
3442
3440
|
}
|
|
3443
3441
|
}
|
|
3444
|
-
const
|
|
3442
|
+
const _c = {
|
|
3445
3443
|
name: "ikon.client.getVisibility",
|
|
3446
3444
|
description: "Get the current page visibility state",
|
|
3447
3445
|
returnType: { kind: "string", nullable: !0 }
|
|
3448
3446
|
};
|
|
3449
|
-
function
|
|
3447
|
+
function Tc() {
|
|
3450
3448
|
return typeof document > "u" ? null : document.visibilityState || null;
|
|
3451
3449
|
}
|
|
3452
|
-
const
|
|
3450
|
+
const Sc = {
|
|
3453
3451
|
name: "ikon.client.scrollTo",
|
|
3454
3452
|
description: "Scroll the page to a specific position",
|
|
3455
3453
|
returnType: { kind: "boolean" },
|
|
@@ -3459,7 +3457,7 @@ const Tc = {
|
|
|
3459
3457
|
{ name: "smooth", type: { kind: "boolean", nullable: !0 }, description: "Whether to animate the scroll" }
|
|
3460
3458
|
]
|
|
3461
3459
|
};
|
|
3462
|
-
function
|
|
3460
|
+
function wc(t, e, r) {
|
|
3463
3461
|
if (typeof window > "u" || typeof t != "number" || typeof e != "number")
|
|
3464
3462
|
return !1;
|
|
3465
3463
|
try {
|
|
@@ -3472,12 +3470,12 @@ function Sc(t, e, r) {
|
|
|
3472
3470
|
return !1;
|
|
3473
3471
|
}
|
|
3474
3472
|
}
|
|
3475
|
-
const
|
|
3473
|
+
const Ac = {
|
|
3476
3474
|
name: "ikon.client.getBatteryLevel",
|
|
3477
3475
|
description: "Get the current battery level (0-100)",
|
|
3478
3476
|
returnType: { kind: "number", nullable: !0 }
|
|
3479
3477
|
};
|
|
3480
|
-
async function
|
|
3478
|
+
async function yc() {
|
|
3481
3479
|
if (typeof navigator > "u" || !("getBattery" in navigator))
|
|
3482
3480
|
return null;
|
|
3483
3481
|
try {
|
|
@@ -3487,52 +3485,52 @@ async function Ac() {
|
|
|
3487
3485
|
return null;
|
|
3488
3486
|
}
|
|
3489
3487
|
}
|
|
3490
|
-
const
|
|
3488
|
+
const gc = {
|
|
3491
3489
|
name: "ikon.client.getNetworkType",
|
|
3492
3490
|
description: "Get the current network connection type",
|
|
3493
3491
|
returnType: { kind: "string", nullable: !0 }
|
|
3494
3492
|
};
|
|
3495
|
-
function
|
|
3493
|
+
function Nc() {
|
|
3496
3494
|
if (typeof navigator > "u")
|
|
3497
3495
|
return null;
|
|
3498
3496
|
const t = navigator.connection;
|
|
3499
3497
|
return t && (t.effectiveType || t.type) || null;
|
|
3500
3498
|
}
|
|
3501
|
-
const
|
|
3502
|
-
{ definition:
|
|
3503
|
-
{ definition:
|
|
3504
|
-
{ definition:
|
|
3505
|
-
{ definition:
|
|
3506
|
-
{ definition:
|
|
3507
|
-
{ definition:
|
|
3508
|
-
{ definition:
|
|
3509
|
-
{ definition:
|
|
3510
|
-
{ definition:
|
|
3511
|
-
{ definition:
|
|
3512
|
-
{ definition:
|
|
3513
|
-
{ definition:
|
|
3499
|
+
const Cc = [
|
|
3500
|
+
{ definition: rc, handler: nc },
|
|
3501
|
+
{ definition: sc, handler: ic },
|
|
3502
|
+
{ definition: oc, handler: ac },
|
|
3503
|
+
{ definition: cc, handler: lc },
|
|
3504
|
+
{ definition: uc, handler: hc },
|
|
3505
|
+
{ definition: dc, handler: fc },
|
|
3506
|
+
{ definition: Ec, handler: pc },
|
|
3507
|
+
{ definition: Ic, handler: mc },
|
|
3508
|
+
{ definition: _c, handler: Tc },
|
|
3509
|
+
{ definition: Sc, handler: wc },
|
|
3510
|
+
{ definition: Ac, handler: yc },
|
|
3511
|
+
{ definition: gc, handler: Nc }
|
|
3514
3512
|
];
|
|
3515
|
-
function
|
|
3516
|
-
const e =
|
|
3513
|
+
function Rc(t) {
|
|
3514
|
+
const e = Cc.map(({ definition: r, handler: n }) => t.register(r, n));
|
|
3517
3515
|
return () => e.forEach((r) => r());
|
|
3518
3516
|
}
|
|
3519
3517
|
function ct() {
|
|
3520
3518
|
return typeof window < "u" && typeof navigator < "u";
|
|
3521
3519
|
}
|
|
3522
3520
|
const bc = new Uint8Array(0);
|
|
3523
|
-
function
|
|
3521
|
+
function Se(t) {
|
|
3524
3522
|
switch (t.kind) {
|
|
3525
3523
|
case "array":
|
|
3526
3524
|
return {
|
|
3527
3525
|
kind: "array",
|
|
3528
|
-
element:
|
|
3526
|
+
element: Se(t.element),
|
|
3529
3527
|
nullable: t.nullable ?? !1
|
|
3530
3528
|
};
|
|
3531
3529
|
case "dictionary":
|
|
3532
3530
|
return {
|
|
3533
3531
|
kind: "dictionary",
|
|
3534
3532
|
keyType: t.keyType ?? "string",
|
|
3535
|
-
value:
|
|
3533
|
+
value: Se(t.value),
|
|
3536
3534
|
nullable: t.nullable ?? !1
|
|
3537
3535
|
};
|
|
3538
3536
|
default:
|
|
@@ -3542,7 +3540,7 @@ function Te(t) {
|
|
|
3542
3540
|
};
|
|
3543
3541
|
}
|
|
3544
3542
|
}
|
|
3545
|
-
function
|
|
3543
|
+
function se(t) {
|
|
3546
3544
|
switch (t.kind) {
|
|
3547
3545
|
case "boolean":
|
|
3548
3546
|
return "System.Boolean";
|
|
@@ -3551,9 +3549,9 @@ function ne(t) {
|
|
|
3551
3549
|
case "string":
|
|
3552
3550
|
return "System.String";
|
|
3553
3551
|
case "array":
|
|
3554
|
-
return `System.Collections.Generic.List\`1[${
|
|
3552
|
+
return `System.Collections.Generic.List\`1[${se(t.element)}]`;
|
|
3555
3553
|
case "dictionary":
|
|
3556
|
-
return `System.Collections.Generic.Dictionary\`2[${t.keyType === "int" ? "System.Int32" : "System.String"},${
|
|
3554
|
+
return `System.Collections.Generic.Dictionary\`2[${t.keyType === "int" ? "System.Int32" : "System.String"},${se(t.value)}]`;
|
|
3557
3555
|
default:
|
|
3558
3556
|
return t;
|
|
3559
3557
|
}
|
|
@@ -3579,9 +3577,9 @@ function Or(t, e) {
|
|
|
3579
3577
|
}
|
|
3580
3578
|
return JSON.stringify(t);
|
|
3581
3579
|
}
|
|
3582
|
-
function
|
|
3580
|
+
function kc(t, e) {
|
|
3583
3581
|
const r = (t.parameters ?? []).map((i) => {
|
|
3584
|
-
const o =
|
|
3582
|
+
const o = Se(i.type), a = Object.prototype.hasOwnProperty.call(i, "defaultValue"), c = a ? Or(i.defaultValue, o) : "";
|
|
3585
3583
|
return {
|
|
3586
3584
|
name: i.name,
|
|
3587
3585
|
descriptor: o,
|
|
@@ -3589,13 +3587,13 @@ function Rc(t, e) {
|
|
|
3589
3587
|
defaultValueJson: c,
|
|
3590
3588
|
description: i.description
|
|
3591
3589
|
};
|
|
3592
|
-
}), n =
|
|
3590
|
+
}), n = Se(t.returnType), s = {
|
|
3593
3591
|
FunctionId: m.createRandom(),
|
|
3594
3592
|
FunctionName: t.name,
|
|
3595
3593
|
Description: t.description ?? "",
|
|
3596
3594
|
LlmInlineResult: t.llmInlineResult ?? !1,
|
|
3597
3595
|
LlmCallOnlyOnce: t.llmCallOnlyOnce ?? !1,
|
|
3598
|
-
ResultTypeName:
|
|
3596
|
+
ResultTypeName: se(n),
|
|
3599
3597
|
IsEnumerable: !1,
|
|
3600
3598
|
EnumerableItemTypeName: "",
|
|
3601
3599
|
IsCancellable: !1,
|
|
@@ -3603,7 +3601,7 @@ function Rc(t, e) {
|
|
|
3603
3601
|
Parameters: r.map((i, o) => ({
|
|
3604
3602
|
ParameterIndex: o,
|
|
3605
3603
|
ParameterName: i.name,
|
|
3606
|
-
TypeName:
|
|
3604
|
+
TypeName: se(i.descriptor),
|
|
3607
3605
|
HasDefaultValue: i.hasDefaultValue,
|
|
3608
3606
|
DefaultValueJson: i.defaultValueJson,
|
|
3609
3607
|
DefaultValueData: bc,
|
|
@@ -3620,11 +3618,11 @@ function Rc(t, e) {
|
|
|
3620
3618
|
returnType: n
|
|
3621
3619
|
};
|
|
3622
3620
|
}
|
|
3623
|
-
const ge = M("FunctionRegistry"),
|
|
3624
|
-
function
|
|
3621
|
+
const ge = M("FunctionRegistry"), Uc = new Uint8Array(0);
|
|
3622
|
+
function Dc(t) {
|
|
3625
3623
|
return !t || typeof t != "object" ? !1 : t.data instanceof Uint8Array;
|
|
3626
3624
|
}
|
|
3627
|
-
class
|
|
3625
|
+
class Mc {
|
|
3628
3626
|
functions = /* @__PURE__ */ new Map();
|
|
3629
3627
|
remoteFunctions = /* @__PURE__ */ new Map();
|
|
3630
3628
|
config = null;
|
|
@@ -3647,7 +3645,7 @@ class Dc {
|
|
|
3647
3645
|
* If already connected, sends registration to server immediately.
|
|
3648
3646
|
*/
|
|
3649
3647
|
register(e, r) {
|
|
3650
|
-
const n =
|
|
3648
|
+
const n = kc(e, r);
|
|
3651
3649
|
return this.functions.set(e.name, n), this.isConnected && this.config && this.sendRegistration(n), () => this.unregister(e.name);
|
|
3652
3650
|
}
|
|
3653
3651
|
/**
|
|
@@ -3736,8 +3734,8 @@ class Dc {
|
|
|
3736
3734
|
* Returns true if the message was handled.
|
|
3737
3735
|
*/
|
|
3738
3736
|
handleProtocolMessage(e, r) {
|
|
3739
|
-
if (r ===
|
|
3740
|
-
const n =
|
|
3737
|
+
if (r === S.ACTION_FUNCTION_CALL) {
|
|
3738
|
+
const n = ie(e);
|
|
3741
3739
|
return this.handleFunctionCall(e, n.senderId).catch((s) => {
|
|
3742
3740
|
ge.error("Failed to handle function call:", s);
|
|
3743
3741
|
}), !0;
|
|
@@ -3751,7 +3749,7 @@ class Dc {
|
|
|
3751
3749
|
sendAllRegistrations() {
|
|
3752
3750
|
if (!this.config || this.functions.size === 0)
|
|
3753
3751
|
return;
|
|
3754
|
-
const e = Array.from(this.functions.values()).map((s) => s.registerPayload), r =
|
|
3752
|
+
const e = Array.from(this.functions.values()).map((s) => s.registerPayload), r = vi({ Functions: e }), n = xi(r, this.config.sessionId);
|
|
3755
3753
|
this.config.sendProtocolMessage(n);
|
|
3756
3754
|
}
|
|
3757
3755
|
/**
|
|
@@ -3760,14 +3758,14 @@ class Dc {
|
|
|
3760
3758
|
sendRegistration(e) {
|
|
3761
3759
|
if (!this.config)
|
|
3762
3760
|
return;
|
|
3763
|
-
const r =
|
|
3761
|
+
const r = Ci(e.registerPayload, this.config.sessionId);
|
|
3764
3762
|
this.config.sendProtocolMessage(r);
|
|
3765
3763
|
}
|
|
3766
3764
|
/**
|
|
3767
3765
|
* Handle an incoming function call.
|
|
3768
3766
|
*/
|
|
3769
3767
|
async handleFunctionCall(e, r) {
|
|
3770
|
-
const n = await
|
|
3768
|
+
const n = await ri(e), s = this.functions.get(n.FunctionName);
|
|
3771
3769
|
if (!s) {
|
|
3772
3770
|
ge.warn(`Received call for unknown function: ${n.FunctionName}`), this.sendError(n.CallId, n.InstanceId, r, new Error(`Unknown function: ${n.FunctionName}`));
|
|
3773
3771
|
return;
|
|
@@ -3785,8 +3783,8 @@ class Dc {
|
|
|
3785
3783
|
h === void 0 || h === "" ? E.hasDefaultValue ? s.push(lt(E.defaultValueJson, E.descriptor)) : s.push(void 0) : s.push(lt(h, E.descriptor));
|
|
3786
3784
|
}
|
|
3787
3785
|
const i = await e.handler(...s);
|
|
3788
|
-
let o = i, a =
|
|
3789
|
-
|
|
3786
|
+
let o = i, a = Uc;
|
|
3787
|
+
Dc(i) && (o = i.value, a = new Uint8Array(i.data));
|
|
3790
3788
|
const c = Or(o, e.returnType);
|
|
3791
3789
|
this.sendResult(r.CallId, r.InstanceId, n, e, c, a);
|
|
3792
3790
|
} catch (s) {
|
|
@@ -3808,11 +3806,11 @@ class Dc {
|
|
|
3808
3806
|
sendResult(e, r, n, s, i, o) {
|
|
3809
3807
|
if (!this.config)
|
|
3810
3808
|
return;
|
|
3811
|
-
const a =
|
|
3812
|
-
|
|
3809
|
+
const a = Ji(
|
|
3810
|
+
Yi({
|
|
3813
3811
|
CallId: e,
|
|
3814
3812
|
InstanceId: r,
|
|
3815
|
-
ResultTypeName:
|
|
3813
|
+
ResultTypeName: se(s.returnType),
|
|
3816
3814
|
ResultJson: i,
|
|
3817
3815
|
ResultData: o
|
|
3818
3816
|
}),
|
|
@@ -3827,8 +3825,8 @@ class Dc {
|
|
|
3827
3825
|
sendError(e, r, n, s) {
|
|
3828
3826
|
if (!this.config)
|
|
3829
3827
|
return;
|
|
3830
|
-
const i =
|
|
3831
|
-
|
|
3828
|
+
const i = Si(
|
|
3829
|
+
Ii({
|
|
3832
3830
|
CallId: e,
|
|
3833
3831
|
InstanceId: r,
|
|
3834
3832
|
ErrorMessage: s.message,
|
|
@@ -3841,7 +3839,7 @@ class Dc {
|
|
|
3841
3839
|
this.config.sendProtocolMessage(i);
|
|
3842
3840
|
}
|
|
3843
3841
|
}
|
|
3844
|
-
function
|
|
3842
|
+
function Oc(t, e) {
|
|
3845
3843
|
return { value: t, data: e };
|
|
3846
3844
|
}
|
|
3847
3845
|
function Ne(t) {
|
|
@@ -3857,7 +3855,7 @@ const ye = {
|
|
|
3857
3855
|
StartAudioCapture: "ikon.client.startAudioCapture",
|
|
3858
3856
|
StopCapture: "ikon.client.stopCapture",
|
|
3859
3857
|
CaptureImage: "ikon.client.captureImage"
|
|
3860
|
-
},
|
|
3858
|
+
}, Lc = {
|
|
3861
3859
|
name: ye.StartVideoCapture,
|
|
3862
3860
|
description: "Start camera or screen capture and stream video frames to the server",
|
|
3863
3861
|
returnType: { kind: "string" },
|
|
@@ -3865,26 +3863,26 @@ const ye = {
|
|
|
3865
3863
|
{ name: "source", type: { kind: "string", nullable: !0 }, description: "camera or screen" },
|
|
3866
3864
|
{ name: "optionsJson", type: { kind: "string", nullable: !0 }, description: "JSON encoded capture options" }
|
|
3867
3865
|
]
|
|
3868
|
-
},
|
|
3866
|
+
}, vc = {
|
|
3869
3867
|
name: ye.StartAudioCapture,
|
|
3870
3868
|
description: "Start microphone capture and stream audio frames to the server",
|
|
3871
3869
|
returnType: { kind: "string" },
|
|
3872
3870
|
parameters: [{ name: "optionsJson", type: { kind: "string", nullable: !0 }, description: "JSON encoded capture options" }]
|
|
3873
|
-
},
|
|
3871
|
+
}, Fc = {
|
|
3874
3872
|
name: ye.StopCapture,
|
|
3875
3873
|
description: "Stop a previously started capture by captureId",
|
|
3876
3874
|
returnType: { kind: "boolean" },
|
|
3877
3875
|
parameters: [{ name: "captureId", type: { kind: "string" }, description: "Capture ID to stop" }]
|
|
3878
|
-
},
|
|
3876
|
+
}, Pc = {
|
|
3879
3877
|
name: ye.CaptureImage,
|
|
3880
3878
|
description: "Capture a single image from the camera and return metadata (JSON) plus binary image data",
|
|
3881
3879
|
returnType: { kind: "string" },
|
|
3882
3880
|
parameters: [{ name: "optionsJson", type: { kind: "string", nullable: !0 }, description: "JSON encoded capture options" }]
|
|
3883
3881
|
};
|
|
3884
|
-
function
|
|
3882
|
+
function Bc(t, e) {
|
|
3885
3883
|
const r = [];
|
|
3886
3884
|
return r.push(
|
|
3887
|
-
t.register(
|
|
3885
|
+
t.register(Lc, async (n, s) => {
|
|
3888
3886
|
const i = e.mediaCapture;
|
|
3889
3887
|
if (!i)
|
|
3890
3888
|
throw new Error("Media capture is not available in this environment");
|
|
@@ -3892,7 +3890,7 @@ function Pc(t, e) {
|
|
|
3892
3890
|
return ((typeof n == "string" && n.trim().toLowerCase() === "screen" ? "screen" : "camera") === "screen" ? await i.video.startScreen({ userGesture: !1, options: o, constraints: o?.constraints }) : await i.video.startCamera({ userGesture: !1, options: o, constraints: o?.constraints })).captureId;
|
|
3893
3891
|
})
|
|
3894
3892
|
), r.push(
|
|
3895
|
-
t.register(
|
|
3893
|
+
t.register(vc, async (n) => {
|
|
3896
3894
|
const s = e.mediaCapture;
|
|
3897
3895
|
if (!s)
|
|
3898
3896
|
throw new Error("Media capture is not available in this environment");
|
|
@@ -3900,7 +3898,7 @@ function Pc(t, e) {
|
|
|
3900
3898
|
return (await s.audio.startMic({ userGesture: !1, options: i, constraints: i?.constraints })).captureId;
|
|
3901
3899
|
})
|
|
3902
3900
|
), r.push(
|
|
3903
|
-
t.register(
|
|
3901
|
+
t.register(Fc, async (n) => {
|
|
3904
3902
|
const s = e.mediaCapture;
|
|
3905
3903
|
if (!s || typeof n != "string" || !n.trim())
|
|
3906
3904
|
return !1;
|
|
@@ -3908,7 +3906,7 @@ function Pc(t, e) {
|
|
|
3908
3906
|
return i || o;
|
|
3909
3907
|
})
|
|
3910
3908
|
), r.push(
|
|
3911
|
-
t.register(
|
|
3909
|
+
t.register(Pc, async (n) => {
|
|
3912
3910
|
const s = e.mediaCapture;
|
|
3913
3911
|
if (!s)
|
|
3914
3912
|
throw new Error("Media capture is not available in this environment");
|
|
@@ -3920,7 +3918,7 @@ function Pc(t, e) {
|
|
|
3920
3918
|
width: i.width,
|
|
3921
3919
|
height: i.height
|
|
3922
3920
|
}), a = JSON.stringify({ mime: o.mime, width: o.width, height: o.height });
|
|
3923
|
-
return
|
|
3921
|
+
return Oc(a, o.data);
|
|
3924
3922
|
})
|
|
3925
3923
|
), () => {
|
|
3926
3924
|
for (const n of r)
|
|
@@ -3932,25 +3930,25 @@ const Lr = () => {
|
|
|
3932
3930
|
return !1;
|
|
3933
3931
|
const t = navigator.userAgent, e = /iPad|iPhone|iPod/.test(t), r = t.includes("Macintosh") && typeof navigator.maxTouchPoints == "number" && navigator.maxTouchPoints > 1;
|
|
3934
3932
|
return e || r;
|
|
3935
|
-
},
|
|
3936
|
-
function
|
|
3933
|
+
}, le = M("Capabilities"), xc = globalThis;
|
|
3934
|
+
function de() {
|
|
3937
3935
|
if (typeof SharedArrayBuffer > "u")
|
|
3938
|
-
return
|
|
3936
|
+
return le.debug("SharedArrayBuffer not supported: SharedArrayBuffer is undefined"), !1;
|
|
3939
3937
|
if (typeof Atomics > "u")
|
|
3940
|
-
return
|
|
3941
|
-
if (
|
|
3942
|
-
return
|
|
3938
|
+
return le.debug("SharedArrayBuffer not supported: Atomics is undefined"), !1;
|
|
3939
|
+
if (xc.crossOriginIsolated === !1)
|
|
3940
|
+
return le.debug("SharedArrayBuffer not supported: crossOriginIsolated is false (missing COOP/COEP headers)"), !1;
|
|
3943
3941
|
try {
|
|
3944
3942
|
new SharedArrayBuffer(1);
|
|
3945
3943
|
} catch (t) {
|
|
3946
|
-
return
|
|
3944
|
+
return le.debug(`SharedArrayBuffer not supported: construction failed - ${t instanceof Error ? t.message : String(t)}`), !1;
|
|
3947
3945
|
}
|
|
3948
3946
|
return !0;
|
|
3949
3947
|
}
|
|
3950
3948
|
function vr(t) {
|
|
3951
3949
|
return typeof AudioWorkletNode != "function" ? !1 : typeof t.audioWorklet?.addModule == "function";
|
|
3952
3950
|
}
|
|
3953
|
-
function
|
|
3951
|
+
function Gc(t) {
|
|
3954
3952
|
return new Worker(
|
|
3955
3953
|
"" + new URL("assets/audio-playback-worker-CM2aCt54.js", import.meta.url).href,
|
|
3956
3954
|
{
|
|
@@ -3959,7 +3957,7 @@ function xc(t) {
|
|
|
3959
3957
|
}
|
|
3960
3958
|
);
|
|
3961
3959
|
}
|
|
3962
|
-
const
|
|
3960
|
+
const ue = 48e3, b = 2, Fr = 1500, ut = 512, ht = "playback", Vc = 120, Wc = 300, Hc = 4, $c = 200, Kc = 100, Yc = 8e3, jc = 10, Pr = 100, ve = 50, Br = 128, zc = 20, Xc = !0, G = 1500, Jc = -20, Qc = -100, Zc = 200, A = M("IkonAudioPlayback"), qc = () => {
|
|
3963
3961
|
if (typeof navigator > "u" || typeof window > "u")
|
|
3964
3962
|
return !1;
|
|
3965
3963
|
const t = navigator.userAgent, e = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(t), r = t.includes("Macintosh") && typeof navigator.maxTouchPoints == "number" && navigator.maxTouchPoints > 1;
|
|
@@ -3971,19 +3969,19 @@ const le = 48e3, R = 2, Fr = 1500, ut = 512, ht = "playback", Gc = 120, Vc = 300
|
|
|
3971
3969
|
function V(t) {
|
|
3972
3970
|
return t instanceof Error ? `${t.name}: ${t.message}` : String(t);
|
|
3973
3971
|
}
|
|
3974
|
-
function
|
|
3972
|
+
function el(t) {
|
|
3975
3973
|
return `
|
|
3976
3974
|
// Audio buffer constants
|
|
3977
3975
|
const OUTPUT_SAMPLE_RATE_HZ = ${t.outputSampleRateHz};
|
|
3978
3976
|
const DEFAULT_FRAME_SAMPLES_PER_CHANNEL = Math.max(1, Math.round(OUTPUT_SAMPLE_RATE_HZ * 0.02));
|
|
3979
|
-
const BUFFER_TARGET_MIN_MS = ${
|
|
3980
|
-
const BUFFER_TARGET_MAX_MS = ${
|
|
3981
|
-
const JITTER_MULTIPLIER = ${
|
|
3977
|
+
const BUFFER_TARGET_MIN_MS = ${Vc};
|
|
3978
|
+
const BUFFER_TARGET_MAX_MS = ${Wc};
|
|
3979
|
+
const JITTER_MULTIPLIER = ${Hc};
|
|
3982
3980
|
const LOCAL_BUFFER_MAX_MS = ${Fr};
|
|
3983
|
-
const CONTROL_PERIOD_MS = ${
|
|
3984
|
-
const UNDERRUN_JUMP_MS = ${
|
|
3985
|
-
const STABLE_TIME_TO_DECREASE_MS = ${
|
|
3986
|
-
const DECREASE_STEP_MS = ${
|
|
3981
|
+
const CONTROL_PERIOD_MS = ${$c};
|
|
3982
|
+
const UNDERRUN_JUMP_MS = ${Kc};
|
|
3983
|
+
const STABLE_TIME_TO_DECREASE_MS = ${Yc};
|
|
3984
|
+
const DECREASE_STEP_MS = ${jc};
|
|
3987
3985
|
const DEFAULT_STATS_INTERVAL_SAMPLES = OUTPUT_SAMPLE_RATE_HZ;
|
|
3988
3986
|
|
|
3989
3987
|
// Pre-computed reciprocals for division-free calculations
|
|
@@ -4002,7 +4000,7 @@ const FADE_OUT_INCREMENT = 1.0 / FADE_OUT_DURATION_SAMPLES;
|
|
|
4002
4000
|
const RENDER_QUANTUM_SIZE = ${Br};
|
|
4003
4001
|
|
|
4004
4002
|
// Buffer reduction crossfade constants (align to quantum boundary to avoid partial quanta)
|
|
4005
|
-
const BUFFER_REDUCTION_CROSSFADE_MS = ${
|
|
4003
|
+
const BUFFER_REDUCTION_CROSSFADE_MS = ${zc};
|
|
4006
4004
|
const BUFFER_REDUCTION_CROSSFADE_SAMPLES_RAW = Math.round(OUTPUT_SAMPLE_RATE_HZ * BUFFER_REDUCTION_CROSSFADE_MS / 1000);
|
|
4007
4005
|
const BUFFER_REDUCTION_CROSSFADE_SAMPLES = Math.ceil(BUFFER_REDUCTION_CROSSFADE_SAMPLES_RAW / RENDER_QUANTUM_SIZE) * RENDER_QUANTUM_SIZE;
|
|
4008
4006
|
|
|
@@ -4213,7 +4211,7 @@ class IkonAudioPlayerProcessor extends AudioWorkletProcessor {
|
|
|
4213
4211
|
this.statsIntervalSamples = Math.max(1, Math.round((OUTPUT_SAMPLE_RATE_HZ * statusIntervalMs) / 1000));
|
|
4214
4212
|
|
|
4215
4213
|
// Normalization config (hardcoded)
|
|
4216
|
-
this.normalizationEnabled = ${
|
|
4214
|
+
this.normalizationEnabled = ${Xc};
|
|
4217
4215
|
|
|
4218
4216
|
// Stream states for audio buffer
|
|
4219
4217
|
this.streams = new Map();
|
|
@@ -4896,7 +4894,7 @@ class Ze {
|
|
|
4896
4894
|
config;
|
|
4897
4895
|
enabled = !1;
|
|
4898
4896
|
stateUnsubscribe = null;
|
|
4899
|
-
isMobile =
|
|
4897
|
+
isMobile = qc();
|
|
4900
4898
|
boundVisibilityChange = null;
|
|
4901
4899
|
boundPageHide = null;
|
|
4902
4900
|
unlockHandler = null;
|
|
@@ -4905,7 +4903,7 @@ class Ze {
|
|
|
4905
4903
|
/** Timeout for AudioContext.resume() - normally resolves instantly, but some browsers hang indefinitely */
|
|
4906
4904
|
static RESUME_TIMEOUT_MS = 100;
|
|
4907
4905
|
audioContext = null;
|
|
4908
|
-
outputSampleRateHz =
|
|
4906
|
+
outputSampleRateHz = ue;
|
|
4909
4907
|
audioWorkletNode = null;
|
|
4910
4908
|
scriptProcessorNode = null;
|
|
4911
4909
|
scriptDiagnosticsTimer = null;
|
|
@@ -5011,7 +5009,7 @@ class Ze {
|
|
|
5011
5009
|
this.stopAudioGraph();
|
|
5012
5010
|
try {
|
|
5013
5011
|
const e = new AudioContext({
|
|
5014
|
-
sampleRate:
|
|
5012
|
+
sampleRate: ue,
|
|
5015
5013
|
latencyHint: ht
|
|
5016
5014
|
});
|
|
5017
5015
|
this.audioContext = e, this.outputSampleRateHz = e.sampleRate, e.resume(), this.setupAudioGraphAfterRecreate();
|
|
@@ -5101,7 +5099,7 @@ class Ze {
|
|
|
5101
5099
|
const e = this.audioContext;
|
|
5102
5100
|
if (!e)
|
|
5103
5101
|
return null;
|
|
5104
|
-
const r = e.currentTime, n = e.sampleRate, s =
|
|
5102
|
+
const r = e.currentTime, n = e.sampleRate, s = b;
|
|
5105
5103
|
for (const i of this.visemeBuffers.values()) {
|
|
5106
5104
|
if (!i.timingEstablished || i.count === 0)
|
|
5107
5105
|
continue;
|
|
@@ -5150,7 +5148,7 @@ class Ze {
|
|
|
5150
5148
|
if (typeof window > "u")
|
|
5151
5149
|
return;
|
|
5152
5150
|
if (!this.audioContext) {
|
|
5153
|
-
const a =
|
|
5151
|
+
const a = ue, c = ht;
|
|
5154
5152
|
try {
|
|
5155
5153
|
this.audioContext = new AudioContext({ sampleRate: a, latencyHint: c });
|
|
5156
5154
|
} catch (l) {
|
|
@@ -5167,7 +5165,7 @@ class Ze {
|
|
|
5167
5165
|
}
|
|
5168
5166
|
A.debug(`AudioContext sample rate request unsupported: ${V(l)}`);
|
|
5169
5167
|
}
|
|
5170
|
-
this.outputSampleRateHz = this.audioContext.sampleRate ||
|
|
5168
|
+
this.outputSampleRateHz = this.audioContext.sampleRate || ue, this.outputSampleRateHz !== a && A.debug(`AudioContext running at ${this.outputSampleRateHz}Hz (requested ${a}Hz)`), this.attachAudioContextHealthHandlers(this.audioContext);
|
|
5171
5169
|
}
|
|
5172
5170
|
const n = this.audioContext, s = this.resolveDiagnosticsConfig();
|
|
5173
5171
|
if ((this.config.performance?.preferAudioWorklet ?? !0) && vr(n)) {
|
|
@@ -5323,14 +5321,14 @@ class Ze {
|
|
|
5323
5321
|
await this.resumeWithTimeout(e), this.getContextState(e) === "running" && this.removeUnlockHandler();
|
|
5324
5322
|
} catch {
|
|
5325
5323
|
}
|
|
5326
|
-
const i = `${this.outputSampleRateHz}_${
|
|
5324
|
+
const i = `${this.outputSampleRateHz}_${b}`;
|
|
5327
5325
|
if (!this.workletModuleUrl || this.workletModuleKey !== i) {
|
|
5328
5326
|
if (this.workletModuleUrl)
|
|
5329
5327
|
try {
|
|
5330
5328
|
URL.revokeObjectURL(this.workletModuleUrl);
|
|
5331
5329
|
} catch {
|
|
5332
5330
|
}
|
|
5333
|
-
this.workletModuleKey = i, this.workletReady = null, this.workletModuleUrl = URL.createObjectURL(new Blob([
|
|
5331
|
+
this.workletModuleKey = i, this.workletReady = null, this.workletModuleUrl = URL.createObjectURL(new Blob([el({ outputSampleRateHz: this.outputSampleRateHz, outputChannels: b })], { type: "text/javascript" }));
|
|
5334
5332
|
}
|
|
5335
5333
|
this.workletReady || (this.workletReady = e.audioWorklet.addModule(this.workletModuleUrl).catch((E) => {
|
|
5336
5334
|
throw A.warn(`Failed to load AudioWorklet module, falling back: ${V(E)}`), E;
|
|
@@ -5342,15 +5340,15 @@ class Ze {
|
|
|
5342
5340
|
return;
|
|
5343
5341
|
}
|
|
5344
5342
|
this.stopScriptProcessor();
|
|
5345
|
-
const a = (this.config.performance?.preferSharedArrayBuffer ?? !0) &&
|
|
5343
|
+
const a = (this.config.performance?.preferSharedArrayBuffer ?? !0) && de();
|
|
5346
5344
|
this.audioWorkletNode = new AudioWorkletNode(e, "ikon-audio-player", {
|
|
5347
5345
|
numberOfInputs: 0,
|
|
5348
5346
|
numberOfOutputs: 1,
|
|
5349
|
-
outputChannelCount: [
|
|
5347
|
+
outputChannelCount: [b],
|
|
5350
5348
|
processorOptions: {
|
|
5351
5349
|
outputAudioConfig: { diagnostics: r },
|
|
5352
5350
|
useSharedArrayBuffer: a,
|
|
5353
|
-
outputChannels:
|
|
5351
|
+
outputChannels: b
|
|
5354
5352
|
}
|
|
5355
5353
|
}), this.audioWorkletNode.port.onmessage = (E) => {
|
|
5356
5354
|
const d = E.data;
|
|
@@ -5384,7 +5382,7 @@ class Ze {
|
|
|
5384
5382
|
if (this.scriptProcessorNode)
|
|
5385
5383
|
return;
|
|
5386
5384
|
this.stopAudioWorklet(), this.pendingWorkletMessages = [];
|
|
5387
|
-
const n = 1024, s = new Float32Array(n *
|
|
5385
|
+
const n = 1024, s = new Float32Array(n * b), i = Math.round(this.outputSampleRateHz * Pr / 1e3), o = Math.round(this.outputSampleRateHz * ve / 1e3), a = 1 / i, c = 1 / o, l = new Array(b), E = [], d = e.createScriptProcessor(n, 0, b);
|
|
5388
5386
|
d.onaudioprocess = (h) => {
|
|
5389
5387
|
const f = h.outputBuffer, p = f.numberOfChannels, I = f.length;
|
|
5390
5388
|
for (let _ = 0; _ < p; _++) {
|
|
@@ -5460,7 +5458,7 @@ class Ze {
|
|
|
5460
5458
|
e.totalSamples < 0 && (e.totalSamples = 0), this.compactFallbackQueue(e);
|
|
5461
5459
|
}
|
|
5462
5460
|
trimFallbackQueue(e) {
|
|
5463
|
-
const r = Math.floor(this.outputSampleRateHz *
|
|
5461
|
+
const r = Math.floor(this.outputSampleRateHz * b * Fr / 1e3), n = e.totalSamples - r;
|
|
5464
5462
|
n <= 0 || this.skipFromFallbackQueue(e, n);
|
|
5465
5463
|
}
|
|
5466
5464
|
stopScriptProcessorDiagnostics() {
|
|
@@ -5479,7 +5477,7 @@ class Ze {
|
|
|
5479
5477
|
for (const [n, s] of this.fallbackQueues.entries()) {
|
|
5480
5478
|
if (s.totalSamples <= 0)
|
|
5481
5479
|
continue;
|
|
5482
|
-
const o = s.totalSamples /
|
|
5480
|
+
const o = s.totalSamples / b * 1e3 / this.outputSampleRateHz;
|
|
5483
5481
|
A.debug(`[Audio] stream=${n.substring(0, 8)} buffer=${o.toFixed(0)}ms renderer=ScriptProcessor`);
|
|
5484
5482
|
}
|
|
5485
5483
|
}, r);
|
|
@@ -5556,13 +5554,13 @@ class Ze {
|
|
|
5556
5554
|
rebindWorkerTransportIfNeeded() {
|
|
5557
5555
|
if (!this.audioWorker || !this.audioContext)
|
|
5558
5556
|
return;
|
|
5559
|
-
const s = (this.config.performance?.preferSharedArrayBuffer ?? !0) && !!this.audioWorkletNode &&
|
|
5557
|
+
const s = (this.config.performance?.preferSharedArrayBuffer ?? !0) && !!this.audioWorkletNode && de() ? "sab" : "pcm";
|
|
5560
5558
|
try {
|
|
5561
5559
|
this.audioWorker.postMessage({
|
|
5562
5560
|
type: "rebind",
|
|
5563
5561
|
transport: s,
|
|
5564
5562
|
outputSampleRate: this.outputSampleRateHz,
|
|
5565
|
-
outputChannels:
|
|
5563
|
+
outputChannels: b
|
|
5566
5564
|
});
|
|
5567
5565
|
} catch {
|
|
5568
5566
|
}
|
|
@@ -5574,14 +5572,14 @@ class Ze {
|
|
|
5574
5572
|
A.warn("Audio decode worker unavailable (Workers not supported)");
|
|
5575
5573
|
return;
|
|
5576
5574
|
}
|
|
5577
|
-
const e = this.client.createProtocolMessagePort({ opcodeGroupsMask:
|
|
5575
|
+
const e = this.client.createProtocolMessagePort({ opcodeGroupsMask: S.GROUP_AUDIO });
|
|
5578
5576
|
if (!e) {
|
|
5579
5577
|
this.enabled && A.debug("Audio pipeline waiting for client connection");
|
|
5580
5578
|
return;
|
|
5581
5579
|
}
|
|
5582
5580
|
this.protocolPort = e;
|
|
5583
5581
|
try {
|
|
5584
|
-
this.audioWorker = new
|
|
5582
|
+
this.audioWorker = new Gc();
|
|
5585
5583
|
} catch (d) {
|
|
5586
5584
|
A.warn(`Failed to create audio worker: ${V(d)}`), this.protocolPort.close(), this.protocolPort = null;
|
|
5587
5585
|
return;
|
|
@@ -5591,16 +5589,16 @@ class Ze {
|
|
|
5591
5589
|
const h = [d.message, d.filename, d.lineno, d.colno].filter((f) => f != null && String(f).length > 0);
|
|
5592
5590
|
A.error(`Audio worker failed: ${h.join(" ")}`.trim());
|
|
5593
5591
|
});
|
|
5594
|
-
const s = (this.config.performance?.preferSharedArrayBuffer ?? !0) && !!this.audioWorkletNode &&
|
|
5592
|
+
const s = (this.config.performance?.preferSharedArrayBuffer ?? !0) && !!this.audioWorkletNode && de(), i = this.config.performance?.preferWebCodecs ?? !0, o = {
|
|
5595
5593
|
type: "configure",
|
|
5596
5594
|
transport: s ? "sab" : "pcm",
|
|
5597
5595
|
outputSampleRate: this.outputSampleRateHz,
|
|
5598
|
-
outputChannels:
|
|
5596
|
+
outputChannels: b,
|
|
5599
5597
|
preferWebCodecs: i
|
|
5600
5598
|
};
|
|
5601
5599
|
r.postMessage(o), r.postMessage({ type: "attachProtocolPort", port: e.port }, [e.port]);
|
|
5602
5600
|
const a = this.audioWorkletNode ? "AudioWorklet" : "ScriptProcessor", c = s ? "SharedArrayBuffer" : "MessagePort", E = i && typeof AudioDecoder < "u" ? "WebCodecs" : "WASM Opus";
|
|
5603
|
-
A.debug(`Audio initialized: renderer=${a}, transport=${c}, decoder=${E}, output=${this.outputSampleRateHz}Hz/${
|
|
5601
|
+
A.debug(`Audio initialized: renderer=${a}, transport=${c}, decoder=${E}, output=${this.outputSampleRateHz}Hz/${b}ch`);
|
|
5604
5602
|
}
|
|
5605
5603
|
onAudioWorkerMessage(e) {
|
|
5606
5604
|
if (e.type === "streamBegin") {
|
|
@@ -5665,7 +5663,7 @@ class Ze {
|
|
|
5665
5663
|
s.epochTimestampSamples = e.timestampInterleavedSamples;
|
|
5666
5664
|
const c = this.audioContext;
|
|
5667
5665
|
if (c) {
|
|
5668
|
-
const l = (c.outputLatency ?? 0) + (c.baseLatency ?? 0), E =
|
|
5666
|
+
const l = (c.outputLatency ?? 0) + (c.baseLatency ?? 0), E = Jc + l * 1e3, d = Math.min(Zc, Math.max(Qc, E));
|
|
5669
5667
|
s.playbackStartContextTime = c.currentTime + d / 1e3;
|
|
5670
5668
|
}
|
|
5671
5669
|
s.timingEstablished = !0;
|
|
@@ -5788,7 +5786,7 @@ class Ze {
|
|
|
5788
5786
|
}));
|
|
5789
5787
|
}
|
|
5790
5788
|
}
|
|
5791
|
-
function
|
|
5789
|
+
function tl(t) {
|
|
5792
5790
|
return new Worker(
|
|
5793
5791
|
"" + new URL("assets/video-playback-worker-C7sQMgD-.js", import.meta.url).href,
|
|
5794
5792
|
{
|
|
@@ -5801,7 +5799,7 @@ const W = M("IkonVideoPlayback");
|
|
|
5801
5799
|
function Ce(t) {
|
|
5802
5800
|
return t instanceof Error ? `${t.name}: ${t.message}` : String(t);
|
|
5803
5801
|
}
|
|
5804
|
-
class
|
|
5802
|
+
class rl {
|
|
5805
5803
|
client;
|
|
5806
5804
|
config;
|
|
5807
5805
|
enabled = !0;
|
|
@@ -5876,7 +5874,7 @@ class tl {
|
|
|
5876
5874
|
}
|
|
5877
5875
|
let e;
|
|
5878
5876
|
try {
|
|
5879
|
-
e = new
|
|
5877
|
+
e = new tl();
|
|
5880
5878
|
} catch (r) {
|
|
5881
5879
|
W.warn(`Failed to create video worker: ${Ce(r)}`);
|
|
5882
5880
|
return;
|
|
@@ -5965,7 +5963,7 @@ class tl {
|
|
|
5965
5963
|
const r = this.parseStreamId(e);
|
|
5966
5964
|
if (!r)
|
|
5967
5965
|
return;
|
|
5968
|
-
const n =
|
|
5966
|
+
const n = ka(Ra(), this.client.sessionId ?? 0, {
|
|
5969
5967
|
trackId: r.trackId,
|
|
5970
5968
|
targetIds: [r.senderId]
|
|
5971
5969
|
});
|
|
@@ -5990,7 +5988,7 @@ class tl {
|
|
|
5990
5988
|
ensureProtocolPort() {
|
|
5991
5989
|
if (!this.worker || this.protocolPort)
|
|
5992
5990
|
return;
|
|
5993
|
-
const e = this.client.createProtocolMessagePort({ opcodeGroupsMask:
|
|
5991
|
+
const e = this.client.createProtocolMessagePort({ opcodeGroupsMask: S.GROUP_VIDEO });
|
|
5994
5992
|
if (e) {
|
|
5995
5993
|
this.protocolPort = e;
|
|
5996
5994
|
try {
|
|
@@ -6025,11 +6023,11 @@ class tl {
|
|
|
6025
6023
|
}));
|
|
6026
6024
|
}
|
|
6027
6025
|
}
|
|
6028
|
-
class
|
|
6026
|
+
class nl {
|
|
6029
6027
|
audio;
|
|
6030
6028
|
video;
|
|
6031
6029
|
constructor(e, r) {
|
|
6032
|
-
this.audio = new Ze(e, r?.audio), this.video = new
|
|
6030
|
+
this.audio = new Ze(e, r?.audio), this.video = new rl(e, r?.video), r?.mediaSession && this.audio.setMediaSession(r.mediaSession);
|
|
6033
6031
|
}
|
|
6034
6032
|
/**
|
|
6035
6033
|
* Releases media resources (workers, audio graph, decoders).
|
|
@@ -6040,7 +6038,7 @@ class rl {
|
|
|
6040
6038
|
this.audio.dispose(), this.video.dispose();
|
|
6041
6039
|
}
|
|
6042
6040
|
}
|
|
6043
|
-
class
|
|
6041
|
+
class sl {
|
|
6044
6042
|
static getStorageForCapacity(e, r) {
|
|
6045
6043
|
const n = Int32Array.BYTES_PER_ELEMENT * 2, s = r.BYTES_PER_ELEMENT * e;
|
|
6046
6044
|
return new SharedArrayBuffer(n + s);
|
|
@@ -6094,7 +6092,7 @@ class nl {
|
|
|
6094
6092
|
return n = (n + r) % this.capacity, Atomics.store(this.readWrite, 0, n), r;
|
|
6095
6093
|
}
|
|
6096
6094
|
}
|
|
6097
|
-
function
|
|
6095
|
+
function il(t) {
|
|
6098
6096
|
return new Worker(
|
|
6099
6097
|
"" + new URL("assets/audio-capture-worker-D0tD-mzj.js", import.meta.url).href,
|
|
6100
6098
|
{
|
|
@@ -6104,11 +6102,11 @@ function sl(t) {
|
|
|
6104
6102
|
);
|
|
6105
6103
|
}
|
|
6106
6104
|
const ft = M("IkonAudioCapture");
|
|
6107
|
-
function
|
|
6105
|
+
function ol() {
|
|
6108
6106
|
const t = globalThis.crypto;
|
|
6109
6107
|
return t?.randomUUID ? t.randomUUID() : `cap_${Date.now()}_${Math.floor(Math.random() * 1e9)}`;
|
|
6110
6108
|
}
|
|
6111
|
-
function
|
|
6109
|
+
function al() {
|
|
6112
6110
|
return `
|
|
6113
6111
|
class RingBuffer {
|
|
6114
6112
|
static getStorageForCapacity(capacity, type) {
|
|
@@ -6237,7 +6235,7 @@ class IkonAudioCaptureProcessor extends AudioWorkletProcessor {
|
|
|
6237
6235
|
registerProcessor('ikon-audio-capture', IkonAudioCaptureProcessor);
|
|
6238
6236
|
`;
|
|
6239
6237
|
}
|
|
6240
|
-
class
|
|
6238
|
+
class cl {
|
|
6241
6239
|
constructor(e, r) {
|
|
6242
6240
|
this.client = e, this.config = r ?? {};
|
|
6243
6241
|
}
|
|
@@ -6257,7 +6255,7 @@ class al {
|
|
|
6257
6255
|
ensureWorker() {
|
|
6258
6256
|
if (this.worker)
|
|
6259
6257
|
return this.worker;
|
|
6260
|
-
const e = new
|
|
6258
|
+
const e = new il();
|
|
6261
6259
|
return this.worker = e, e.addEventListener("message", (r) => {
|
|
6262
6260
|
const n = r.data;
|
|
6263
6261
|
if (n?.type === "error") {
|
|
@@ -6271,7 +6269,7 @@ class al {
|
|
|
6271
6269
|
throw new Error("Cannot start audio capture before client is connected");
|
|
6272
6270
|
const r = this.ensureWorker();
|
|
6273
6271
|
if (!this.sendPort) {
|
|
6274
|
-
const n = this.client.createProtocolSendPort({ opcodeGroupsMask:
|
|
6272
|
+
const n = this.client.createProtocolSendPort({ opcodeGroupsMask: S.GROUP_AUDIO });
|
|
6275
6273
|
if (!n)
|
|
6276
6274
|
throw new Error("Failed to create protocol send port for audio capture");
|
|
6277
6275
|
this.sendPort = n, r.postMessage({ type: "attachSendPort", port: n.port }, [n.port]);
|
|
@@ -6300,7 +6298,7 @@ class al {
|
|
|
6300
6298
|
async ensureWorklet(e) {
|
|
6301
6299
|
if (!vr(e))
|
|
6302
6300
|
throw new Error("AudioWorklet is not supported in this browser");
|
|
6303
|
-
this.workletModuleUrl || (this.workletModuleUrl = URL.createObjectURL(new Blob([
|
|
6301
|
+
this.workletModuleUrl || (this.workletModuleUrl = URL.createObjectURL(new Blob([al()], { type: "text/javascript" }))), (!this.workletReady || this.workletContext !== e) && (this.workletContext = e, this.workletReady = e.audioWorklet.addModule(this.workletModuleUrl));
|
|
6304
6302
|
try {
|
|
6305
6303
|
await this.workletReady;
|
|
6306
6304
|
} catch (r) {
|
|
@@ -6316,13 +6314,13 @@ class al {
|
|
|
6316
6314
|
if (!i)
|
|
6317
6315
|
throw s.getTracks().forEach((_) => _.stop()), new Error("No audio track available");
|
|
6318
6316
|
await this.ensureWorklet(n);
|
|
6319
|
-
const o =
|
|
6317
|
+
const o = ol(), a = this.allocateTrackId(), c = n.createMediaStreamSource(s), l = n.createGain();
|
|
6320
6318
|
l.gain.value = 0, l.connect(n.destination);
|
|
6321
|
-
const h =
|
|
6319
|
+
const h = de() ? "sab" : "pcm";
|
|
6322
6320
|
let f;
|
|
6323
6321
|
if (h === "sab") {
|
|
6324
6322
|
const _ = Math.floor(n.sampleRate * 2);
|
|
6325
|
-
f =
|
|
6323
|
+
f = sl.getStorageForCapacity(_, Float32Array);
|
|
6326
6324
|
}
|
|
6327
6325
|
const p = this.ensureWorker();
|
|
6328
6326
|
p.postMessage({
|
|
@@ -6463,9 +6461,9 @@ class al {
|
|
|
6463
6461
|
}
|
|
6464
6462
|
}
|
|
6465
6463
|
}
|
|
6466
|
-
const xr = 1280, Gr = 720,
|
|
6467
|
-
async function
|
|
6468
|
-
const r = e.mime ?? Vr, n = e.quality ??
|
|
6464
|
+
const xr = 1280, Gr = 720, ll = 30, Vr = "image/jpeg", ul = 0.92;
|
|
6465
|
+
async function hl(t, e) {
|
|
6466
|
+
const r = e.mime ?? Vr, n = e.quality ?? ul;
|
|
6469
6467
|
if (typeof OffscreenCanvas < "u" && t instanceof OffscreenCanvas)
|
|
6470
6468
|
try {
|
|
6471
6469
|
return await t.convertToBlob({ type: r, quality: n });
|
|
@@ -6482,7 +6480,7 @@ async function ul(t, e) {
|
|
|
6482
6480
|
);
|
|
6483
6481
|
});
|
|
6484
6482
|
}
|
|
6485
|
-
class
|
|
6483
|
+
class dl {
|
|
6486
6484
|
async acquireCameraStream(e) {
|
|
6487
6485
|
if (!navigator.mediaDevices)
|
|
6488
6486
|
throw new Error("Media devices are not available in this environment");
|
|
@@ -6519,7 +6517,7 @@ class hl {
|
|
|
6519
6517
|
if (!E)
|
|
6520
6518
|
throw new Error("2D canvas context unavailable");
|
|
6521
6519
|
E.drawImage(s, 0, 0, a, c);
|
|
6522
|
-
const d = await
|
|
6520
|
+
const d = await hl(l, e), h = await d.arrayBuffer();
|
|
6523
6521
|
return {
|
|
6524
6522
|
mime: d.type || e.mime || Vr,
|
|
6525
6523
|
width: a,
|
|
@@ -6546,7 +6544,7 @@ class hl {
|
|
|
6546
6544
|
}
|
|
6547
6545
|
}
|
|
6548
6546
|
}
|
|
6549
|
-
function
|
|
6547
|
+
function fl(t) {
|
|
6550
6548
|
return new Worker(
|
|
6551
6549
|
"" + new URL("assets/video-capture-worker-DZZ0ggvo.js", import.meta.url).href,
|
|
6552
6550
|
{
|
|
@@ -6556,17 +6554,17 @@ function dl(t) {
|
|
|
6556
6554
|
);
|
|
6557
6555
|
}
|
|
6558
6556
|
const Et = M("IkonVideoCapture");
|
|
6559
|
-
function
|
|
6557
|
+
function El() {
|
|
6560
6558
|
const t = globalThis.crypto;
|
|
6561
6559
|
return t?.randomUUID ? t.randomUUID() : `cap_${Date.now()}_${Math.floor(Math.random() * 1e9)}`;
|
|
6562
6560
|
}
|
|
6563
|
-
function
|
|
6561
|
+
function pl() {
|
|
6564
6562
|
const t = globalThis.MediaStreamTrackProcessor;
|
|
6565
6563
|
if (!t)
|
|
6566
6564
|
throw new Error("MediaStreamTrackProcessor is not available in this browser");
|
|
6567
6565
|
return t;
|
|
6568
6566
|
}
|
|
6569
|
-
class
|
|
6567
|
+
class Il {
|
|
6570
6568
|
constructor(e) {
|
|
6571
6569
|
this.client = e;
|
|
6572
6570
|
}
|
|
@@ -6582,7 +6580,7 @@ class pl {
|
|
|
6582
6580
|
ensureWorker() {
|
|
6583
6581
|
if (this.worker)
|
|
6584
6582
|
return this.worker;
|
|
6585
|
-
const e = new
|
|
6583
|
+
const e = new fl();
|
|
6586
6584
|
return this.worker = e, e.addEventListener("message", (r) => {
|
|
6587
6585
|
const n = r.data;
|
|
6588
6586
|
if (n?.type === "error") {
|
|
@@ -6596,20 +6594,20 @@ class pl {
|
|
|
6596
6594
|
throw new Error("Cannot start video capture before client is connected");
|
|
6597
6595
|
const r = this.ensureWorker();
|
|
6598
6596
|
if (!this.sendPort) {
|
|
6599
|
-
const n = this.client.createProtocolSendPort({ opcodeGroupsMask:
|
|
6597
|
+
const n = this.client.createProtocolSendPort({ opcodeGroupsMask: S.GROUP_VIDEO });
|
|
6600
6598
|
if (!n)
|
|
6601
6599
|
throw new Error("Failed to create protocol send port for video capture");
|
|
6602
6600
|
this.sendPort = n, r.postMessage({ type: "attachSendPort", port: n.port }, [n.port]);
|
|
6603
6601
|
}
|
|
6604
6602
|
if (!this.protocolPort) {
|
|
6605
|
-
const n = this.client.createProtocolMessagePort({ opcodeGroupsMask:
|
|
6603
|
+
const n = this.client.createProtocolMessagePort({ opcodeGroupsMask: S.GROUP_VIDEO });
|
|
6606
6604
|
n && (this.protocolPort = n, r.postMessage({ type: "attachProtocolPort", port: n.port }, [n.port]));
|
|
6607
6605
|
}
|
|
6608
6606
|
}
|
|
6609
6607
|
async getMediaStream(e) {
|
|
6610
6608
|
if (!navigator.mediaDevices)
|
|
6611
6609
|
throw new Error("Media devices are not available in this environment");
|
|
6612
|
-
const r = e.constraints ?? {}, n = e.options?.framerate ??
|
|
6610
|
+
const r = e.constraints ?? {}, n = e.options?.framerate ?? ll, s = {
|
|
6613
6611
|
...r,
|
|
6614
6612
|
frameRate: r.frameRate ?? { ideal: n }
|
|
6615
6613
|
};
|
|
@@ -6620,10 +6618,10 @@ class pl {
|
|
|
6620
6618
|
if (!r)
|
|
6621
6619
|
throw new Error("Cannot start video capture before client is connected");
|
|
6622
6620
|
this.ensurePorts();
|
|
6623
|
-
const n =
|
|
6621
|
+
const n = El(), s = await this.getMediaStream(e), i = s.getVideoTracks()[0];
|
|
6624
6622
|
if (!i)
|
|
6625
6623
|
throw s.getTracks().forEach((I) => I.stop()), new Error("No video track available");
|
|
6626
|
-
const o = i.getSettings(), a = e.options?.width ?? o.width ?? xr, c = e.options?.height ?? o.height ?? Gr, l =
|
|
6624
|
+
const o = i.getSettings(), a = e.options?.width ?? o.width ?? xr, c = e.options?.height ?? o.height ?? Gr, l = pl(), d = new l({ track: i }).readable, h = this.allocateTrackId(), f = this.ensureWorker();
|
|
6627
6625
|
f.postMessage(
|
|
6628
6626
|
{
|
|
6629
6627
|
type: "start",
|
|
@@ -6691,12 +6689,12 @@ class pl {
|
|
|
6691
6689
|
this.protocolPort?.close(), this.protocolPort = null, this.sendPort?.close(), this.sendPort = null;
|
|
6692
6690
|
}
|
|
6693
6691
|
}
|
|
6694
|
-
class
|
|
6692
|
+
class ml {
|
|
6695
6693
|
audio;
|
|
6696
6694
|
video;
|
|
6697
6695
|
image;
|
|
6698
6696
|
constructor(e, r) {
|
|
6699
|
-
this.audio = new
|
|
6697
|
+
this.audio = new cl(e, r?.audio), this.video = new Il(e), this.image = new dl();
|
|
6700
6698
|
}
|
|
6701
6699
|
dispose() {
|
|
6702
6700
|
this.audio.dispose(), this.video.dispose();
|
|
@@ -6704,19 +6702,19 @@ class Il {
|
|
|
6704
6702
|
}
|
|
6705
6703
|
const Wr = M("DebugMode");
|
|
6706
6704
|
let Y = !1;
|
|
6707
|
-
function ml() {
|
|
6708
|
-
return typeof window > "u" ? !1 : new URLSearchParams(window.location.search).get("debug") === "true";
|
|
6709
|
-
}
|
|
6710
6705
|
function _l() {
|
|
6711
|
-
return
|
|
6706
|
+
return typeof window > "u" ? !1 : new URLSearchParams(window.location.search).get("debug") === "true";
|
|
6712
6707
|
}
|
|
6713
6708
|
function Tl() {
|
|
6714
|
-
return Y;
|
|
6709
|
+
return Y = _l(), Y && (yr(Ae.DEBUG), Wr.warn("Debug mode enabled")), Y;
|
|
6715
6710
|
}
|
|
6716
6711
|
function Sl() {
|
|
6717
|
-
|
|
6712
|
+
return Y;
|
|
6713
|
+
}
|
|
6714
|
+
function wl() {
|
|
6715
|
+
Y || (Y = !0, yr(Ae.DEBUG), Wr.warn("Debug mode enabled"));
|
|
6718
6716
|
}
|
|
6719
|
-
function
|
|
6717
|
+
function Al(t) {
|
|
6720
6718
|
return new Worker(
|
|
6721
6719
|
"" + new URL("assets/protocol-worker-CH5R2dxZ.js", import.meta.url).href,
|
|
6722
6720
|
{
|
|
@@ -6730,8 +6728,8 @@ const pt = {
|
|
|
6730
6728
|
[k.WebSocket]: 1,
|
|
6731
6729
|
[k.WebTransportProxy]: 2,
|
|
6732
6730
|
[k.WebSocketProxy]: 3
|
|
6733
|
-
},
|
|
6734
|
-
class
|
|
6731
|
+
}, Re = "ikon_endpoint_type";
|
|
6732
|
+
class yl {
|
|
6735
6733
|
isLocal;
|
|
6736
6734
|
workingEndpointType = null;
|
|
6737
6735
|
constructor(e) {
|
|
@@ -6763,7 +6761,7 @@ class Al {
|
|
|
6763
6761
|
if (!this.isLocal) {
|
|
6764
6762
|
this.workingEndpointType = e;
|
|
6765
6763
|
try {
|
|
6766
|
-
localStorage.setItem(
|
|
6764
|
+
localStorage.setItem(Re, String(e));
|
|
6767
6765
|
} catch {
|
|
6768
6766
|
}
|
|
6769
6767
|
}
|
|
@@ -6774,7 +6772,7 @@ class Al {
|
|
|
6774
6772
|
clearRememberedType() {
|
|
6775
6773
|
this.workingEndpointType = null;
|
|
6776
6774
|
try {
|
|
6777
|
-
localStorage.removeItem(
|
|
6775
|
+
localStorage.removeItem(Re);
|
|
6778
6776
|
} catch {
|
|
6779
6777
|
}
|
|
6780
6778
|
}
|
|
@@ -6783,7 +6781,7 @@ class Al {
|
|
|
6783
6781
|
*/
|
|
6784
6782
|
loadRememberedType() {
|
|
6785
6783
|
try {
|
|
6786
|
-
const e = localStorage.getItem(
|
|
6784
|
+
const e = localStorage.getItem(Re);
|
|
6787
6785
|
if (e !== null) {
|
|
6788
6786
|
const r = Number(e);
|
|
6789
6787
|
k[r] !== void 0 && (this.workingEndpointType = r);
|
|
@@ -6792,11 +6790,11 @@ class Al {
|
|
|
6792
6790
|
}
|
|
6793
6791
|
}
|
|
6794
6792
|
}
|
|
6795
|
-
const
|
|
6796
|
-
function
|
|
6797
|
-
return typeof
|
|
6793
|
+
const T = M("IkonClient");
|
|
6794
|
+
function gl() {
|
|
6795
|
+
return typeof __IKON_WAIT_FOR_EXTERNAL_CONNECT_URL__ < "u" && __IKON_WAIT_FOR_EXTERNAL_CONNECT_URL__;
|
|
6798
6796
|
}
|
|
6799
|
-
class
|
|
6797
|
+
class Wl {
|
|
6800
6798
|
channelManager = null;
|
|
6801
6799
|
protocolWorker = null;
|
|
6802
6800
|
workerManagerState = null;
|
|
@@ -6833,9 +6831,9 @@ class Vl {
|
|
|
6833
6831
|
nextProtocolSendPortId = 1;
|
|
6834
6832
|
_media;
|
|
6835
6833
|
_mediaCapture = null;
|
|
6836
|
-
// External
|
|
6837
|
-
|
|
6838
|
-
|
|
6834
|
+
// External connect URL mode
|
|
6835
|
+
_waitForExternalConnectUrl = gl();
|
|
6836
|
+
_externalConnectUrlCleanup = null;
|
|
6839
6837
|
/**
|
|
6840
6838
|
* SDK-provided media pipelines (audio/video).
|
|
6841
6839
|
*
|
|
@@ -6854,27 +6852,27 @@ class Vl {
|
|
|
6854
6852
|
return this._mediaCapture;
|
|
6855
6853
|
}
|
|
6856
6854
|
constructor(e) {
|
|
6857
|
-
this.config = e, this.slowConnectionThresholdMs = e.timeouts?.slowConnectionThresholdMs ??
|
|
6855
|
+
this.config = e, this.slowConnectionThresholdMs = e.timeouts?.slowConnectionThresholdMs ?? Va, this.connectionTimeoutMs = e.timeouts?.connectionTimeoutMs ?? Wa;
|
|
6858
6856
|
const r = [e.local, e.apiKey, e.sessionToken].filter(Boolean).length;
|
|
6859
6857
|
if (r === 0)
|
|
6860
6858
|
throw new Error('IkonClient requires one of: "local", "apiKey", or "sessionToken" configuration');
|
|
6861
6859
|
if (r > 1)
|
|
6862
6860
|
throw new Error('IkonClient accepts only one of: "local", "apiKey", or "sessionToken" configuration');
|
|
6863
|
-
this.endpointSelector = new
|
|
6861
|
+
this.endpointSelector = new yl({
|
|
6864
6862
|
local: e.local
|
|
6865
|
-
}), this._functionRegistry = new
|
|
6863
|
+
}), this._functionRegistry = new Mc(), ct() && !e.disableBrowserFunctions && (this.unregisterBrowserFunctions = Rc(this._functionRegistry));
|
|
6866
6864
|
const n = e.audio ? {
|
|
6867
6865
|
performance: e.audio.performance,
|
|
6868
6866
|
background: e.audio.background,
|
|
6869
6867
|
diagnostics: e.audio.diagnostics
|
|
6870
6868
|
} : void 0, s = e.video ? { performance: e.video.performance } : void 0;
|
|
6871
|
-
this._media = new
|
|
6869
|
+
this._media = new nl(this, { audio: n, video: s, mediaSession: e.mediaSession }), this._media.audio.setEnabled(!0), this._media.video.setEnabled(!0), ct() && (this._mediaCapture = new ml(this, {
|
|
6872
6870
|
audio: {
|
|
6873
6871
|
performance: {
|
|
6874
6872
|
preferWebCodecs: e.audio?.performance?.preferWebCodecs
|
|
6875
6873
|
}
|
|
6876
6874
|
}
|
|
6877
|
-
}), this.unregisterMediaCaptureFunctions =
|
|
6875
|
+
}), this.unregisterMediaCaptureFunctions = Bc(this._functionRegistry, this));
|
|
6878
6876
|
}
|
|
6879
6877
|
_lastError = void 0;
|
|
6880
6878
|
/**
|
|
@@ -6918,11 +6916,17 @@ class Vl {
|
|
|
6918
6916
|
async connect() {
|
|
6919
6917
|
if (this.currentState !== "idle")
|
|
6920
6918
|
throw new Error(`Cannot connect: already in state ${this.currentState}`);
|
|
6921
|
-
|
|
6922
|
-
|
|
6919
|
+
this.setupLifecycleHandlers();
|
|
6920
|
+
const e = Ka();
|
|
6921
|
+
if (e) {
|
|
6922
|
+
T.info("Found external connect URL in query parameter"), await this.executeConnection(() => ne(e, this.abortController.signal));
|
|
6923
6923
|
return;
|
|
6924
6924
|
}
|
|
6925
|
-
|
|
6925
|
+
if (this._waitForExternalConnectUrl) {
|
|
6926
|
+
T.info("Waiting for external connect URL from parent window"), this.setState("waitingForExternalConnectUrl"), this._externalConnectUrlCleanup = this.setupExternalConnectUrlListener();
|
|
6927
|
+
return;
|
|
6928
|
+
}
|
|
6929
|
+
T.info("Connecting to Ikon server"), await this.executeConnection(() => this.authenticate());
|
|
6926
6930
|
}
|
|
6927
6931
|
/**
|
|
6928
6932
|
* Execute the connection flow with the provided authentication function.
|
|
@@ -6931,22 +6935,22 @@ class Vl {
|
|
|
6931
6935
|
this._lastError = void 0, this.abortController = new AbortController(), this.setState("connecting"), this.slowConnectionTimer = setTimeout(() => {
|
|
6932
6936
|
this.currentState === "connecting" && this.setState("connectingSlow");
|
|
6933
6937
|
}, this.slowConnectionThresholdMs), this.connectionTimer = setTimeout(() => {
|
|
6934
|
-
(this.currentState === "connecting" || this.currentState === "connectingSlow") && (
|
|
6938
|
+
(this.currentState === "connecting" || this.currentState === "connectingSlow") && (T.error("Connection timeout"), this.abortController?.abort(), this.setState("offline"), this.config.onError?.(new Error("Connection timeout")));
|
|
6935
6939
|
}, this.connectionTimeoutMs);
|
|
6936
6940
|
try {
|
|
6937
6941
|
const r = await e();
|
|
6938
|
-
this.authResponse = r.authResponse, this._sessionId = r.authResponse.ClientContext.SessionId,
|
|
6942
|
+
this.authResponse = r.authResponse, this._sessionId = r.authResponse.ClientContext.SessionId, T.info("Authenticated to Ikon server"), await this.connectProtocol(this.authResponse.Entrypoints);
|
|
6939
6943
|
} catch (r) {
|
|
6940
6944
|
if (r instanceof DOMException && r.name === "AbortError")
|
|
6941
6945
|
return;
|
|
6942
|
-
throw
|
|
6946
|
+
throw T.error("Connection failed:", r), this.clearTimers(), this.setState("offline"), this.config.onError?.(r instanceof Error ? r : new Error(String(r))), r;
|
|
6943
6947
|
}
|
|
6944
6948
|
}
|
|
6945
6949
|
/**
|
|
6946
6950
|
* Disconnect from the server.
|
|
6947
6951
|
*/
|
|
6948
6952
|
disconnect() {
|
|
6949
|
-
|
|
6953
|
+
T.info("Disconnecting from Ikon server"), this.clearTimers(), this.cleanupLifecycleHandlers(), this._externalConnectUrlCleanup && (this._externalConnectUrlCleanup(), this._externalConnectUrlCleanup = null), this._mediaCapture?.dispose(), this.unregisterMediaCaptureFunctions && (this.unregisterMediaCaptureFunctions(), this.unregisterMediaCaptureFunctions = null), this.unregisterBrowserFunctions && (this.unregisterBrowserFunctions(), this.unregisterBrowserFunctions = null), this.abortController?.abort(), this.abortController = null, this.disconnectProtocol(), this.authResponse = null, this._sessionId = void 0, this._globalState = null, this._globalStateReceived = !1, this._channelsConnected = !1, this._joinedHandled = !1, this._functionRegistry.detach(), this.setState("idle");
|
|
6950
6954
|
}
|
|
6951
6955
|
sendActionCall(e, r) {
|
|
6952
6956
|
const n = ln(
|
|
@@ -6972,7 +6976,7 @@ class Vl {
|
|
|
6972
6976
|
this.channelManager.sendProtocolMessage(e);
|
|
6973
6977
|
return;
|
|
6974
6978
|
}
|
|
6975
|
-
|
|
6979
|
+
T.warn("Cannot send: not connected");
|
|
6976
6980
|
}
|
|
6977
6981
|
/**
|
|
6978
6982
|
* Create a MessagePort that receives raw protocol message buffers.
|
|
@@ -7010,7 +7014,7 @@ class Vl {
|
|
|
7010
7014
|
s.start?.();
|
|
7011
7015
|
const i = this.subscribeToProtocolMessages(
|
|
7012
7016
|
(o) => {
|
|
7013
|
-
const a =
|
|
7017
|
+
const a = ie(o), c = o.slice().buffer;
|
|
7014
7018
|
s.postMessage({ type: "protocol", message: c, headers: a }, [c]);
|
|
7015
7019
|
},
|
|
7016
7020
|
{ opcodeGroupsMask: e.opcodeGroupsMask }
|
|
@@ -7065,11 +7069,11 @@ class Vl {
|
|
|
7065
7069
|
if (!(!a || typeof a != "object") && !(a.type !== "send" || !(a.message instanceof ArrayBuffer)))
|
|
7066
7070
|
try {
|
|
7067
7071
|
const c = new Uint8Array(a.message);
|
|
7068
|
-
if ((
|
|
7072
|
+
if ((he(c) & e.opcodeGroupsMask) === 0)
|
|
7069
7073
|
return;
|
|
7070
7074
|
this.channelManager?.sendProtocolMessage(c);
|
|
7071
7075
|
} catch (c) {
|
|
7072
|
-
|
|
7076
|
+
T.warn(`Failed to forward protocol send port message: ${c}`);
|
|
7073
7077
|
}
|
|
7074
7078
|
};
|
|
7075
7079
|
try {
|
|
@@ -7125,26 +7129,26 @@ class Vl {
|
|
|
7125
7129
|
async authenticate() {
|
|
7126
7130
|
const e = this.abortController?.signal;
|
|
7127
7131
|
if (this.config.local)
|
|
7128
|
-
return
|
|
7132
|
+
return Za(this.config.local, e);
|
|
7129
7133
|
if (this.config.apiKey)
|
|
7130
|
-
return
|
|
7134
|
+
return qa(this.config.apiKey, e);
|
|
7131
7135
|
if (this.config.sessionToken)
|
|
7132
|
-
return
|
|
7136
|
+
return ec(this.config.sessionToken, e);
|
|
7133
7137
|
throw new Error("No connection configuration provided (need local, apiKey, or sessionToken)");
|
|
7134
7138
|
}
|
|
7135
7139
|
/**
|
|
7136
7140
|
* Handle incoming protocol message from channel manager.
|
|
7137
7141
|
*/
|
|
7138
7142
|
handleProtocolMessage(e) {
|
|
7139
|
-
const r =
|
|
7143
|
+
const r = fe(e), n = he(e);
|
|
7140
7144
|
if (this._functionRegistry.handleProtocolMessage(e, r)) {
|
|
7141
7145
|
this.notifyMessageSubscribers(e, r, n);
|
|
7142
7146
|
return;
|
|
7143
7147
|
}
|
|
7144
|
-
r ===
|
|
7145
|
-
this._globalState = s, this._sessionId !== void 0 && this._functionRegistry.syncFromGlobalState(s, this._sessionId), this._globalState.DebugMode &&
|
|
7148
|
+
r === S.CORE_GLOBAL_STATE && Wo(e).then((s) => {
|
|
7149
|
+
this._globalState = s, this._sessionId !== void 0 && this._functionRegistry.syncFromGlobalState(s, this._sessionId), this._globalState.DebugMode && wl(), Sl() && this.protocolWorker && this.protocolWorker.postMessage({ type: "enableDevtools", enabled: !0 }), this._globalStateReceived || (this._globalStateReceived = !0, this.tryHandleJoined());
|
|
7146
7150
|
}).catch((s) => {
|
|
7147
|
-
|
|
7151
|
+
T.error("Failed to parse GlobalState:", s);
|
|
7148
7152
|
}), this.notifyMessageSubscribers(e, r, n);
|
|
7149
7153
|
}
|
|
7150
7154
|
/**
|
|
@@ -7158,17 +7162,17 @@ class Vl {
|
|
|
7158
7162
|
const c = i[a];
|
|
7159
7163
|
try {
|
|
7160
7164
|
if (c) {
|
|
7161
|
-
if (c.opcodeGroupsMask !== void 0 && ((n ??
|
|
7165
|
+
if (c.opcodeGroupsMask !== void 0 && ((n ?? he(e)) & c.opcodeGroupsMask) === 0)
|
|
7162
7166
|
continue;
|
|
7163
7167
|
if (c.opcodes && c.opcodes.length > 0) {
|
|
7164
|
-
const l = r ??
|
|
7168
|
+
const l = r ?? fe(e);
|
|
7165
7169
|
if (!c.opcodes.includes(l))
|
|
7166
7170
|
continue;
|
|
7167
7171
|
}
|
|
7168
7172
|
}
|
|
7169
7173
|
s[a](e);
|
|
7170
7174
|
} catch (l) {
|
|
7171
|
-
|
|
7175
|
+
T.error("Message subscriber error:", l);
|
|
7172
7176
|
}
|
|
7173
7177
|
}
|
|
7174
7178
|
}
|
|
@@ -7185,7 +7189,7 @@ class Vl {
|
|
|
7185
7189
|
this.currentState === "connected" && this.setState("reconnecting");
|
|
7186
7190
|
break;
|
|
7187
7191
|
case "stopped":
|
|
7188
|
-
|
|
7192
|
+
T.info("Ikon server has stopped"), this.clearTimers(), this.setState("offline");
|
|
7189
7193
|
break;
|
|
7190
7194
|
case "offline":
|
|
7191
7195
|
this.currentState !== "idle" && (this.clearTimers(), this.setState("offline"));
|
|
@@ -7210,7 +7214,7 @@ class Vl {
|
|
|
7210
7214
|
try {
|
|
7211
7215
|
r(e);
|
|
7212
7216
|
} catch (n) {
|
|
7213
|
-
|
|
7217
|
+
T.error("State subscriber error:", n);
|
|
7214
7218
|
}
|
|
7215
7219
|
this.config.onConnectionStateChange?.(e);
|
|
7216
7220
|
}
|
|
@@ -7220,7 +7224,7 @@ class Vl {
|
|
|
7220
7224
|
* Use this for unrecoverable SDK internal errors.
|
|
7221
7225
|
*/
|
|
7222
7226
|
setErrorState(e) {
|
|
7223
|
-
|
|
7227
|
+
T.error("SDK error, going offline:", e), this._lastError = e, this.clearTimers(), this.cleanupLifecycleHandlers(), this.disconnectProtocol(), this.currentState = "offlineError", this.config.onConnectionStateChange?.("offlineError"), this.config.onError?.(e);
|
|
7224
7228
|
}
|
|
7225
7229
|
async connectProtocol(e) {
|
|
7226
7230
|
if (typeof Worker > "u") {
|
|
@@ -7229,9 +7233,9 @@ class Vl {
|
|
|
7229
7233
|
}
|
|
7230
7234
|
let r;
|
|
7231
7235
|
try {
|
|
7232
|
-
r = new
|
|
7236
|
+
r = new Al();
|
|
7233
7237
|
} catch (l) {
|
|
7234
|
-
|
|
7238
|
+
T.warn(`Failed to create protocol worker, falling back to main thread: ${l}`), await this.connectProtocolOnMainThread(e);
|
|
7235
7239
|
return;
|
|
7236
7240
|
}
|
|
7237
7241
|
this.channelManager = null, this.protocolWorker = r, this.workerManagerState = "idle";
|
|
@@ -7260,7 +7264,7 @@ class Vl {
|
|
|
7260
7264
|
E(new Error(`Protocol worker failed: ${f.join(" ")}`.trim()));
|
|
7261
7265
|
});
|
|
7262
7266
|
}), s = this.computeOrderedEndpointTypes(e), i = this.config.timeouts?.keepaliveTimeoutMs ?? nt, o = this.config.timeouts?.reconnectBackoffMs ?? st, a = this.config.timeouts?.maxReconnectAttempts ?? it;
|
|
7263
|
-
this.updateWorkerInterestMask(),
|
|
7267
|
+
this.updateWorkerInterestMask(), Tl() && r.postMessage({ type: "enableDevtools", enabled: !0 }), r.postMessage({
|
|
7264
7268
|
type: "connect",
|
|
7265
7269
|
sessionId: this._sessionId,
|
|
7266
7270
|
entrypoints: e,
|
|
@@ -7272,11 +7276,11 @@ class Vl {
|
|
|
7272
7276
|
try {
|
|
7273
7277
|
await n;
|
|
7274
7278
|
} catch (l) {
|
|
7275
|
-
|
|
7279
|
+
T.warn(`Protocol worker connect failed, falling back to main thread: ${l}`), this.disconnectProtocol(), await this.connectProtocolOnMainThread(e);
|
|
7276
7280
|
}
|
|
7277
7281
|
}
|
|
7278
7282
|
async connectProtocolOnMainThread(e) {
|
|
7279
|
-
this.workerManagerState = null, this.protocolWorker = null, this.channelManager = new
|
|
7283
|
+
this.workerManagerState = null, this.protocolWorker = null, this.channelManager = new Ga({
|
|
7280
7284
|
sessionId: this._sessionId,
|
|
7281
7285
|
keepaliveTimeoutMs: this.config.timeouts?.keepaliveTimeoutMs ?? nt,
|
|
7282
7286
|
reconnectBackoffMs: this.config.timeouts?.reconnectBackoffMs ?? st,
|
|
@@ -7318,7 +7322,7 @@ class Vl {
|
|
|
7318
7322
|
this.protocolWorker.postMessage({ type: "setInterest", opcodeGroupsMask: void 0 });
|
|
7319
7323
|
return;
|
|
7320
7324
|
}
|
|
7321
|
-
let e =
|
|
7325
|
+
let e = S.GROUP_CORE | S.GROUP_ACTIONS;
|
|
7322
7326
|
for (const [, r] of this.messageSubscribers.entries()) {
|
|
7323
7327
|
if (!r || r.opcodeGroupsMask === void 0) {
|
|
7324
7328
|
this.protocolWorker.postMessage({ type: "setInterest", opcodeGroupsMask: void 0 });
|
|
@@ -7354,14 +7358,14 @@ class Vl {
|
|
|
7354
7358
|
* Close connection cleanly to avoid orphaned connections on the server.
|
|
7355
7359
|
*/
|
|
7356
7360
|
handleBeforeUnload() {
|
|
7357
|
-
|
|
7361
|
+
T.debug("Page unloading, closing connection..."), this.disconnect();
|
|
7358
7362
|
}
|
|
7359
7363
|
/**
|
|
7360
7364
|
* Handle page hide event (mobile-friendly, bfcache compatible).
|
|
7361
7365
|
* Only disconnect if page is actually being unloaded (not persisted).
|
|
7362
7366
|
*/
|
|
7363
7367
|
handlePageHide(e) {
|
|
7364
|
-
e.persisted || (
|
|
7368
|
+
e.persisted || (T.debug("Page hidden (not persisted), closing connection..."), this.disconnect());
|
|
7365
7369
|
}
|
|
7366
7370
|
/**
|
|
7367
7371
|
* Handle visibility change event.
|
|
@@ -7377,10 +7381,10 @@ class Vl {
|
|
|
7377
7381
|
*/
|
|
7378
7382
|
checkConnectionHealth() {
|
|
7379
7383
|
if (this.protocolWorker) {
|
|
7380
|
-
this.currentState === "connected" && this.workerManagerState !== "connected" && (
|
|
7384
|
+
this.currentState === "connected" && this.workerManagerState !== "connected" && (T.warn("Connection lost while page was backgrounded, reconnecting..."), this.setState("reconnecting"));
|
|
7381
7385
|
return;
|
|
7382
7386
|
}
|
|
7383
|
-
this.channelManager && this.currentState === "connected" && this.channelManager.managerState !== "connected" && (
|
|
7387
|
+
this.channelManager && this.currentState === "connected" && this.channelManager.managerState !== "connected" && (T.warn("Connection lost while page was backgrounded, reconnecting..."), this.setState("reconnecting"));
|
|
7384
7388
|
}
|
|
7385
7389
|
/**
|
|
7386
7390
|
* Try to handle joined state - only proceeds if both channels are connected and GlobalState is received.
|
|
@@ -7401,157 +7405,157 @@ class Vl {
|
|
|
7401
7405
|
const e = tt(et(), this._sessionId ?? 0);
|
|
7402
7406
|
this.sendProtocolMessage(e);
|
|
7403
7407
|
} catch (e) {
|
|
7404
|
-
|
|
7408
|
+
T.error("onJoined callback error:", e);
|
|
7405
7409
|
const r = tt(et(), this._sessionId ?? 0);
|
|
7406
7410
|
this.sendProtocolMessage(r);
|
|
7407
7411
|
}
|
|
7408
7412
|
}
|
|
7409
7413
|
/**
|
|
7410
|
-
* Set up listener for external
|
|
7414
|
+
* Set up listener for external connect URL from parent window.
|
|
7411
7415
|
* Returns cleanup function to remove the listener.
|
|
7412
7416
|
*/
|
|
7413
|
-
|
|
7417
|
+
setupExternalConnectUrlListener() {
|
|
7414
7418
|
const e = (r) => {
|
|
7415
|
-
r.data?.type === "
|
|
7416
|
-
|
|
7419
|
+
r.data?.type === "IKON_EXTERNAL_CONNECT_URL" && typeof r.data.serverUrl == "string" && (T.info("Received external connect URL from parent window"), this.handleExternalConnectUrl(r.data.serverUrl).catch((n) => {
|
|
7420
|
+
T.error("Failed to connect with external connect URL:", n), this.config.onError?.(n instanceof Error ? n : new Error(String(n))), this.setState("offlineError");
|
|
7417
7421
|
}));
|
|
7418
7422
|
};
|
|
7419
|
-
return window.addEventListener("message", e),
|
|
7420
|
-
window.removeEventListener("message", e),
|
|
7423
|
+
return window.addEventListener("message", e), T.debug("External connect URL listener registered"), () => {
|
|
7424
|
+
window.removeEventListener("message", e), T.debug("External connect URL listener removed");
|
|
7421
7425
|
};
|
|
7422
7426
|
}
|
|
7423
7427
|
/**
|
|
7424
|
-
* Handle external
|
|
7428
|
+
* Handle external connect URL injection from parent window.
|
|
7425
7429
|
*/
|
|
7426
|
-
async
|
|
7427
|
-
if (this.currentState !== "
|
|
7428
|
-
throw new Error(`Cannot connect with external
|
|
7429
|
-
|
|
7430
|
+
async handleExternalConnectUrl(e) {
|
|
7431
|
+
if (this.currentState !== "waitingForExternalConnectUrl")
|
|
7432
|
+
throw new Error(`Cannot connect with external connect URL: already in state ${this.currentState}`);
|
|
7433
|
+
T.info("Connecting with external connect URL");
|
|
7430
7434
|
try {
|
|
7431
|
-
await this.executeConnection(() =>
|
|
7435
|
+
await this.executeConnection(() => ne(e, this.abortController.signal));
|
|
7432
7436
|
} finally {
|
|
7433
|
-
this.
|
|
7437
|
+
this._externalConnectUrlCleanup && (this._externalConnectUrlCleanup(), this._externalConnectUrlCleanup = null);
|
|
7434
7438
|
}
|
|
7435
7439
|
}
|
|
7436
7440
|
}
|
|
7437
|
-
function Wl(t) {
|
|
7438
|
-
return t === "waitingForToken" || t === "connecting" || t === "connectingSlow" || t === "reconnecting";
|
|
7439
|
-
}
|
|
7440
7441
|
function Hl(t) {
|
|
7441
|
-
return t === "
|
|
7442
|
+
return t === "waitingForExternalConnectUrl" || t === "connecting" || t === "connectingSlow" || t === "reconnecting";
|
|
7442
7443
|
}
|
|
7443
7444
|
function $l(t) {
|
|
7444
|
-
return t === "
|
|
7445
|
+
return t === "connected";
|
|
7445
7446
|
}
|
|
7446
7447
|
function Kl(t) {
|
|
7448
|
+
return t === "offline" || t === "offlineError" || t === "idle";
|
|
7449
|
+
}
|
|
7450
|
+
function Yl(t) {
|
|
7447
7451
|
return t === "offlineError";
|
|
7448
7452
|
}
|
|
7449
7453
|
const Hr = /* @__PURE__ */ new Map();
|
|
7450
|
-
for (const [t, e] of Object.entries(
|
|
7454
|
+
for (const [t, e] of Object.entries(S))
|
|
7451
7455
|
typeof e == "number" && Hr.set(e, t);
|
|
7452
|
-
function
|
|
7456
|
+
function jl(t) {
|
|
7453
7457
|
return Hr.get(t) ?? `UNKNOWN_${t}`;
|
|
7454
7458
|
}
|
|
7455
|
-
const $r = 1e3, Kr =
|
|
7459
|
+
const $r = 1e3, Kr = Ae.INFO;
|
|
7456
7460
|
let L = [], Fe = $r, Yr = Kr, Pe = null;
|
|
7457
|
-
function
|
|
7461
|
+
function Nl(t) {
|
|
7458
7462
|
t.level < Yr || (L.push(t), L.length > Fe && (L = L.slice(-Fe)));
|
|
7459
7463
|
}
|
|
7460
|
-
function
|
|
7461
|
-
Fe = t?.maxBufferSize ?? $r, Yr = t?.minLevel ?? Kr, L = [],
|
|
7464
|
+
function Cl(t) {
|
|
7465
|
+
Fe = t?.maxBufferSize ?? $r, Yr = t?.minLevel ?? Kr, L = [], Ma(Nl);
|
|
7462
7466
|
}
|
|
7463
|
-
function
|
|
7467
|
+
function zl(t) {
|
|
7464
7468
|
Pe = t;
|
|
7465
7469
|
}
|
|
7466
|
-
function
|
|
7470
|
+
function Xl() {
|
|
7467
7471
|
return L;
|
|
7468
7472
|
}
|
|
7469
|
-
function
|
|
7473
|
+
function Rl() {
|
|
7470
7474
|
const t = L;
|
|
7471
7475
|
return L = [], t;
|
|
7472
7476
|
}
|
|
7473
|
-
function
|
|
7477
|
+
function Jl() {
|
|
7474
7478
|
if (!Pe || L.length === 0)
|
|
7475
7479
|
return 0;
|
|
7476
|
-
const t =
|
|
7480
|
+
const t = Rl();
|
|
7477
7481
|
return Pe(t), t.length;
|
|
7478
7482
|
}
|
|
7479
|
-
function
|
|
7483
|
+
function Ql() {
|
|
7480
7484
|
L = [];
|
|
7481
7485
|
}
|
|
7482
|
-
function
|
|
7486
|
+
function Zl() {
|
|
7483
7487
|
return L.length;
|
|
7484
7488
|
}
|
|
7485
|
-
|
|
7489
|
+
Cl();
|
|
7486
7490
|
export {
|
|
7487
7491
|
g as AuthenticationError,
|
|
7488
|
-
|
|
7489
|
-
|
|
7490
|
-
|
|
7492
|
+
xa as Channel,
|
|
7493
|
+
Ga as ChannelManager,
|
|
7494
|
+
kl as ChannelNotFoundError,
|
|
7491
7495
|
J as ClientType,
|
|
7492
7496
|
je as ConnectionError,
|
|
7493
7497
|
Q as ContextType,
|
|
7494
|
-
|
|
7498
|
+
yl as EndpointSelector,
|
|
7495
7499
|
k as EntrypointType,
|
|
7496
|
-
|
|
7497
|
-
|
|
7500
|
+
Mc as FunctionRegistry,
|
|
7501
|
+
Pl as IKON_AUTH_BASE_URL,
|
|
7498
7502
|
at as IKON_AUTH_URL_DEV,
|
|
7499
7503
|
ot as IKON_AUTH_URL_PROD,
|
|
7500
|
-
|
|
7504
|
+
_e as IKON_BACKEND_URL_DEV,
|
|
7501
7505
|
Oe as IKON_BACKEND_URL_PROD,
|
|
7502
|
-
|
|
7506
|
+
cl as IkonAudioCapture,
|
|
7503
7507
|
Ze as IkonAudioPlayback,
|
|
7504
|
-
|
|
7505
|
-
|
|
7506
|
-
|
|
7507
|
-
|
|
7508
|
-
|
|
7509
|
-
|
|
7508
|
+
Wl as IkonClient,
|
|
7509
|
+
dl as IkonImageCapture,
|
|
7510
|
+
nl as IkonMedia,
|
|
7511
|
+
ml as IkonMediaCapture,
|
|
7512
|
+
Il as IkonVideoCapture,
|
|
7513
|
+
rl as IkonVideoPlayback,
|
|
7510
7514
|
ze as KeepaliveTimeoutError,
|
|
7511
|
-
|
|
7512
|
-
|
|
7513
|
-
|
|
7514
|
-
|
|
7515
|
-
|
|
7516
|
-
|
|
7515
|
+
Ae as LogLevel,
|
|
7516
|
+
Ua as MaxRetriesExceededError,
|
|
7517
|
+
Dl as NoChannelsError,
|
|
7518
|
+
S as Opcode,
|
|
7519
|
+
Da as ProvisioningTimeoutError,
|
|
7520
|
+
Ul as SpaceNotFoundError,
|
|
7517
7521
|
H as TransportError,
|
|
7518
7522
|
q as UserType,
|
|
7519
7523
|
bl as asProtocolMessage,
|
|
7520
|
-
|
|
7521
|
-
|
|
7524
|
+
vl as clearDeviceId,
|
|
7525
|
+
Ql as clearLogBuffer,
|
|
7522
7526
|
M as createLogger,
|
|
7523
|
-
|
|
7524
|
-
|
|
7525
|
-
|
|
7526
|
-
|
|
7527
|
-
|
|
7528
|
-
|
|
7529
|
-
|
|
7530
|
-
|
|
7531
|
-
|
|
7532
|
-
|
|
7527
|
+
Gl as deriveAuthUrl,
|
|
7528
|
+
xl as deriveBackendType,
|
|
7529
|
+
Bl as deriveBackendUrl,
|
|
7530
|
+
Fl as extractUserIdFromToken,
|
|
7531
|
+
Jl as flushLogs,
|
|
7532
|
+
Xl as getBufferedLogs,
|
|
7533
|
+
Zl as getLogBufferSize,
|
|
7534
|
+
Ml as getLogLevel,
|
|
7535
|
+
Ol as getLogSink,
|
|
7536
|
+
jl as getOpcodeName,
|
|
7533
7537
|
Je as getOrCreateDeviceId,
|
|
7534
|
-
|
|
7535
|
-
|
|
7538
|
+
Tl as initializeDebugMode,
|
|
7539
|
+
Cl as initializeLogSink,
|
|
7536
7540
|
vr as isAudioWorkletSupported,
|
|
7537
7541
|
ct as isBrowserEnvironment,
|
|
7538
7542
|
Qe as isCloudEnvironment,
|
|
7539
|
-
|
|
7540
|
-
|
|
7541
|
-
|
|
7542
|
-
|
|
7543
|
-
|
|
7544
|
-
|
|
7543
|
+
$l as isConnected,
|
|
7544
|
+
Hl as isConnecting,
|
|
7545
|
+
Sl as isDebugModeEnabled,
|
|
7546
|
+
Yl as isError,
|
|
7547
|
+
Kl as isOffline,
|
|
7548
|
+
de as isSharedArrayBufferSupported,
|
|
7545
7549
|
gr as isWebTransportSupported,
|
|
7546
|
-
|
|
7547
|
-
|
|
7548
|
-
|
|
7549
|
-
|
|
7550
|
-
|
|
7550
|
+
Vl as parseUrlParams,
|
|
7551
|
+
fe as readOpcode,
|
|
7552
|
+
he as readOpcodeGroup,
|
|
7553
|
+
ie as readProtocolMessageHeaders,
|
|
7554
|
+
Rc as registerBrowserFunctions,
|
|
7551
7555
|
yr as setLogLevel,
|
|
7552
|
-
|
|
7553
|
-
|
|
7554
|
-
|
|
7555
|
-
|
|
7556
|
-
|
|
7556
|
+
Ma as setLogSink,
|
|
7557
|
+
zl as setSendLogsCallback,
|
|
7558
|
+
Ll as subscribeToLogEvents,
|
|
7559
|
+
Rl as takeBufferedLogs,
|
|
7560
|
+
Oc as withResultData
|
|
7557
7561
|
};
|