@ikonai/sdk-ui 1.0.67 → 1.0.68

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.
@@ -0,0 +1,2831 @@
1
+ const re = {
2
+ Compressed: 8
3
+ };
4
+ function se(t) {
5
+ if (t.length < 8)
6
+ throw new Error("Protocol message too short");
7
+ return (t[4] | t[5] << 8 | t[6] << 16 | t[7] << 24) >>> 0;
8
+ }
9
+ function Z(t) {
10
+ const r = K(t), e = new DataView(r.buffer, r.byteOffset, r.byteLength);
11
+ if (r.length < 27)
12
+ throw new Error("Protocol payload too short");
13
+ const s = e.getUint32(0, !0), n = e.getUint32(4, !0), i = e.getUint32(8, !0), o = e.getUint32(12, !0), a = e.getUint32(16, !0), I = e.getUint32(20, !0), _ = e.getUint8(24), E = e.getUint8(25), l = e.getUint8(26);
14
+ if (27 + I * 4 > r.length)
15
+ throw new Error("Protocol header exceeds payload length");
16
+ const L = [];
17
+ let w = 27;
18
+ for (let W = 0; W < I; W++)
19
+ L.push(e.getUint32(w, !0)), w += 4;
20
+ return {
21
+ length: s,
22
+ opcode: n,
23
+ senderId: i,
24
+ trackId: o,
25
+ sequenceId: a,
26
+ targetIds: L,
27
+ payloadVersion: _,
28
+ payloadType: E,
29
+ flags: l
30
+ };
31
+ }
32
+ async function Y(t, r, e) {
33
+ const s = K(t), n = Z(s);
34
+ if (r !== void 0 && n.opcode !== r)
35
+ throw new Error(`Unexpected opcode ${n.opcode}`);
36
+ if (n.payloadType !== 8)
37
+ throw new Error(`Unexpected payload type ${n.payloadType}`);
38
+ const i = 27 + n.targetIds.length * 4;
39
+ let o = s.subarray(i, n.length);
40
+ return (n.flags & re.Compressed) !== 0 && (o = await ne(o)), o;
41
+ }
42
+ async function ne(t) {
43
+ if (typeof DecompressionStream > "u")
44
+ throw new Error("DecompressionStream not supported");
45
+ const r = new DecompressionStream("gzip"), e = r.writable.getWriter(), s = new Uint8Array(t);
46
+ e.write(s), e.close();
47
+ const n = r.readable.getReader(), i = [];
48
+ let o = 0;
49
+ for (; ; ) {
50
+ const { done: _, value: E } = await n.read();
51
+ if (_) break;
52
+ i.push(E), o += E.length;
53
+ }
54
+ const a = new Uint8Array(o);
55
+ let I = 0;
56
+ for (let _ = 0; _ < i.length; _++)
57
+ a.set(i[_], I), I += i[_].length;
58
+ return a;
59
+ }
60
+ var M = /* @__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))(M || {});
61
+ const ie = 161, oe = 162;
62
+ new TextEncoder();
63
+ const ae = new TextDecoder("utf-8", { fatal: !0 });
64
+ class P {
65
+ constructor(r, e, s) {
66
+ this.buffer = r, this.version = e, this.offset = s, this.end = r.length - 1;
67
+ }
68
+ offset;
69
+ end;
70
+ static create(r) {
71
+ const e = K(r);
72
+ if (e.length < 2)
73
+ throw new Error("Teleport payload too short");
74
+ if (e[0] !== ie || e[e.length - 1] !== oe)
75
+ throw new Error("Teleport object missing markers");
76
+ const s = { offset: 1 }, n = C(e, s, "InvalidLength");
77
+ return new P(e, n, s.offset);
78
+ }
79
+ next() {
80
+ if (this.offset >= this.end)
81
+ return null;
82
+ if (this.offset + 5 > this.buffer.length)
83
+ throw new Error("Teleport object truncated");
84
+ const r = le(this.buffer, this.offset);
85
+ this.offset += 4;
86
+ const e = this.buffer[this.offset++], s = e >> 4 & 15;
87
+ if ((e & 15) !== 0)
88
+ throw new Error("Teleport field flags must be zero");
89
+ const n = v(s);
90
+ let i;
91
+ if (n >= 0)
92
+ S(this.buffer, this.offset, n), i = this.buffer.subarray(this.offset, this.offset + n), this.offset += n;
93
+ else {
94
+ const o = { offset: this.offset }, a = C(this.buffer, o, "InvalidLength");
95
+ S(this.buffer, o.offset, a), i = this.buffer.subarray(o.offset, o.offset + a), this.offset = o.offset + a;
96
+ }
97
+ return new Ee(r, s, i);
98
+ }
99
+ }
100
+ class U {
101
+ constructor(r, e) {
102
+ this.type = r, this.payload = e;
103
+ }
104
+ asInt32() {
105
+ return this.ensureType(
106
+ 3
107
+ /* Int32 */
108
+ ), new DataView(this.payload.buffer, this.payload.byteOffset, 4).getInt32(0, !0);
109
+ }
110
+ asUInt32() {
111
+ return this.ensureType(
112
+ 5
113
+ /* UInt32 */
114
+ ), new DataView(this.payload.buffer, this.payload.byteOffset, 4).getUint32(0, !0);
115
+ }
116
+ asInt64() {
117
+ return this.ensureType(
118
+ 4
119
+ /* Int64 */
120
+ ), new DataView(this.payload.buffer, this.payload.byteOffset, 8).getBigInt64(0, !0);
121
+ }
122
+ asUInt64() {
123
+ return this.ensureType(
124
+ 6
125
+ /* UInt64 */
126
+ ), new DataView(this.payload.buffer, this.payload.byteOffset, 8).getBigUint64(0, !0);
127
+ }
128
+ asFloat32() {
129
+ return this.ensureType(
130
+ 7
131
+ /* Float32 */
132
+ ), new DataView(this.payload.buffer, this.payload.byteOffset, 4).getFloat32(0, !0);
133
+ }
134
+ asFloat64() {
135
+ return this.ensureType(
136
+ 8
137
+ /* Float64 */
138
+ ), new DataView(this.payload.buffer, this.payload.byteOffset, 8).getFloat64(0, !0);
139
+ }
140
+ asBool() {
141
+ return this.ensureType(
142
+ 2
143
+ /* Bool */
144
+ ), this.payload.length > 0 && this.payload[0] !== 0;
145
+ }
146
+ asBinary() {
147
+ return this.ensureType(
148
+ 13
149
+ /* Binary */
150
+ ), this.payload;
151
+ }
152
+ asUtf8() {
153
+ return this.ensureType(
154
+ 12
155
+ /* String */
156
+ ), this.payload;
157
+ }
158
+ asString() {
159
+ return this.ensureType(
160
+ 12
161
+ /* String */
162
+ ), ae.decode(this.payload);
163
+ }
164
+ asGuid() {
165
+ return this.ensureType(
166
+ 14
167
+ /* Guid */
168
+ ), T.fromBytes(this.payload);
169
+ }
170
+ asObject() {
171
+ return this.ensureType(
172
+ 11
173
+ /* Object */
174
+ ), P.create(this.payload);
175
+ }
176
+ asArray() {
177
+ return this.ensureType(
178
+ 9
179
+ /* Array */
180
+ ), tt.create(this.payload);
181
+ }
182
+ asDictionary() {
183
+ return this.ensureType(
184
+ 10
185
+ /* Dict */
186
+ ), et.create(this.payload);
187
+ }
188
+ ensureType(r) {
189
+ if (this.type !== r)
190
+ throw new Error(`Teleport value has type ${M[this.type]}, expected ${M[r]}`);
191
+ }
192
+ }
193
+ class Ee extends U {
194
+ constructor(r, e, s) {
195
+ super(e, s), this.fieldId = r;
196
+ }
197
+ get isNull() {
198
+ return this.type === 1;
199
+ }
200
+ }
201
+ class tt {
202
+ payload;
203
+ elementType;
204
+ count;
205
+ offset;
206
+ index = 0;
207
+ constructor(r) {
208
+ if (this.payload = r, r.length === 0)
209
+ throw new Error("Array payload too short");
210
+ const e = r[0];
211
+ if (this.elementType = e >> 4 & 15, (e & 15) !== 0)
212
+ throw new Error("Array flags must be zero");
213
+ const s = { offset: 1 };
214
+ this.count = C(r, s, "ArrayMalformed"), this.offset = s.offset;
215
+ }
216
+ static create(r) {
217
+ return new tt(K(r));
218
+ }
219
+ next() {
220
+ if (this.index >= this.count) {
221
+ if (this.offset !== this.payload.length)
222
+ throw new Error("Array payload contains trailing data");
223
+ return null;
224
+ }
225
+ const r = this.readValue();
226
+ return this.index++, r;
227
+ }
228
+ readValue() {
229
+ switch (this.elementType) {
230
+ case 3:
231
+ case 5:
232
+ case 7:
233
+ case 8:
234
+ case 2:
235
+ case 4:
236
+ case 6:
237
+ case 14: {
238
+ const r = v(this.elementType);
239
+ S(this.payload, this.offset, r);
240
+ const e = this.payload.subarray(this.offset, this.offset + r);
241
+ return this.offset += r, new G(this.elementType, e);
242
+ }
243
+ case 12:
244
+ case 13: {
245
+ const r = { offset: this.offset }, e = C(this.payload, r, "ArrayMalformed");
246
+ S(this.payload, r.offset, e);
247
+ const s = this.payload.subarray(r.offset, r.offset + e);
248
+ return this.offset = r.offset + e, new G(this.elementType, s);
249
+ }
250
+ case 11: {
251
+ const r = { offset: this.offset }, e = C(this.payload, r, "ArrayMalformed");
252
+ S(this.payload, r.offset, e);
253
+ const s = this.payload.subarray(r.offset, r.offset + e);
254
+ return this.offset = r.offset + e, new G(11, s);
255
+ }
256
+ case 9: {
257
+ const r = rt(this.payload, this.offset), e = this.payload.subarray(this.offset, this.offset + r);
258
+ return this.offset += r, new G(9, e);
259
+ }
260
+ case 10: {
261
+ const r = st(this.payload, this.offset), e = this.payload.subarray(this.offset, this.offset + r);
262
+ return this.offset += r, new G(10, e);
263
+ }
264
+ default:
265
+ throw new Error(`Unsupported array element type ${M[this.elementType]}`);
266
+ }
267
+ }
268
+ }
269
+ class G extends U {
270
+ constructor(r, e) {
271
+ super(r, e);
272
+ }
273
+ }
274
+ class et {
275
+ payload;
276
+ keyType;
277
+ valueType;
278
+ count;
279
+ offset;
280
+ index = 0;
281
+ constructor(r) {
282
+ if (this.payload = r, r.length < 2)
283
+ throw new Error("Dictionary payload too short");
284
+ if (this.keyType = r[0] >> 4 & 15, this.valueType = r[1] >> 4 & 15, (r[0] & 15) !== 0 || (r[1] & 15) !== 0)
285
+ throw new Error("Dictionary key/value flags must be zero");
286
+ Et(this.keyType);
287
+ const e = { offset: 2 };
288
+ this.count = C(r, e, "DictMalformed"), this.offset = e.offset;
289
+ }
290
+ static create(r) {
291
+ return new et(K(r));
292
+ }
293
+ next() {
294
+ if (this.index >= this.count) {
295
+ if (this.offset !== this.payload.length)
296
+ throw new Error("Dictionary payload contains trailing data");
297
+ return null;
298
+ }
299
+ const r = this.readKey(), e = this.readValue();
300
+ return this.index++, new Ie(r, e);
301
+ }
302
+ readKey() {
303
+ const r = v(this.keyType);
304
+ if (r >= 0) {
305
+ S(this.payload, this.offset, r);
306
+ const e = this.payload.subarray(this.offset, this.offset + r);
307
+ return this.offset += r, new U(this.keyType, e);
308
+ }
309
+ if (this.keyType === 12 || this.keyType === 13) {
310
+ const e = { offset: this.offset }, s = C(this.payload, e, "DictMalformed");
311
+ S(this.payload, e.offset, s);
312
+ const n = this.payload.subarray(e.offset, e.offset + s);
313
+ return this.offset = e.offset + s, new U(this.keyType, n);
314
+ }
315
+ throw new Error("Unsupported dictionary key type");
316
+ }
317
+ readValue() {
318
+ switch (this.valueType) {
319
+ case 12:
320
+ case 13: {
321
+ const r = { offset: this.offset }, e = C(this.payload, r, "DictMalformed");
322
+ S(this.payload, r.offset, e);
323
+ const s = this.payload.subarray(r.offset, r.offset + e);
324
+ return this.offset = r.offset + e, new U(this.valueType, s);
325
+ }
326
+ case 11: {
327
+ const r = { offset: this.offset }, e = C(this.payload, r, "DictMalformed");
328
+ S(this.payload, r.offset, e);
329
+ const s = this.payload.subarray(r.offset, r.offset + e);
330
+ return this.offset = r.offset + e, new U(11, s);
331
+ }
332
+ case 9: {
333
+ const r = rt(this.payload, this.offset), e = this.payload.subarray(this.offset, this.offset + r);
334
+ return this.offset += r, new U(9, e);
335
+ }
336
+ case 10: {
337
+ const r = st(this.payload, this.offset), e = this.payload.subarray(this.offset, this.offset + r);
338
+ return this.offset += r, new U(10, e);
339
+ }
340
+ case 3:
341
+ case 5:
342
+ case 7:
343
+ case 8:
344
+ case 2:
345
+ case 4:
346
+ case 6:
347
+ case 14:
348
+ case 1: {
349
+ const r = v(this.valueType);
350
+ S(this.payload, this.offset, r);
351
+ const e = this.payload.subarray(this.offset, this.offset + r);
352
+ return this.offset += r, new U(this.valueType, e);
353
+ }
354
+ default:
355
+ throw new Error(`Unsupported dictionary value type ${M[this.valueType]}`);
356
+ }
357
+ }
358
+ }
359
+ class Ie {
360
+ constructor(r, e) {
361
+ this.key = r, this.value = e;
362
+ }
363
+ }
364
+ class T {
365
+ constructor(r) {
366
+ this.bytes = r;
367
+ }
368
+ static fromString(r) {
369
+ if (!r)
370
+ throw new Error("Guid string is empty");
371
+ const e = r.replace(/-/g, "");
372
+ if (e.length !== 32)
373
+ throw new Error("Guid string must be 32 hex characters");
374
+ const s = new Uint8Array(16), n = T.parseHexSlice(e, 0, 8), i = T.parseHexSlice(e, 8, 4), o = T.parseHexSlice(e, 12, 4);
375
+ T.writeUInt32LE(s, 0, n), T.writeUInt16LE(s, 4, i), T.writeUInt16LE(s, 6, o);
376
+ for (let a = 0; a < 8; a++)
377
+ s[8 + a] = T.parseHexSlice(e, 16 + a * 2, 2);
378
+ return new T(s);
379
+ }
380
+ static fromBytes(r) {
381
+ if (r.length !== 16)
382
+ throw new Error("Guid byte array must be 16 bytes");
383
+ return new T(Uint8Array.from(r));
384
+ }
385
+ static createZero() {
386
+ return new T(new Uint8Array(16));
387
+ }
388
+ static createRandom() {
389
+ const r = new Uint8Array(16), e = globalThis.crypto;
390
+ if (e?.getRandomValues)
391
+ e.getRandomValues(r);
392
+ else
393
+ for (let s = 0; s < r.length; s++)
394
+ r[s] = Math.floor(Math.random() * 256);
395
+ return r[6] = r[6] & 15 | 64, r[8] = r[8] & 63 | 128, new T(r);
396
+ }
397
+ toString() {
398
+ const r = this.bytes;
399
+ return [
400
+ T.toHex(T.readUInt32LE(r, 0), 8),
401
+ T.toHex(T.readUInt16LE(r, 4), 4),
402
+ T.toHex(T.readUInt16LE(r, 6), 4),
403
+ it(r.subarray(8, 10)),
404
+ it(r.subarray(10, 16))
405
+ ].join("-");
406
+ }
407
+ asBytes() {
408
+ return this.bytes.slice();
409
+ }
410
+ static parseHexSlice(r, e, s) {
411
+ const n = r.substr(e, s), i = Number.parseInt(n, 16);
412
+ if (Number.isNaN(i))
413
+ throw new Error("Guid string contains invalid characters");
414
+ return i >>> 0;
415
+ }
416
+ static writeUInt32LE(r, e, s) {
417
+ const n = s >>> 0;
418
+ r[e] = n & 255, r[e + 1] = n >>> 8 & 255, r[e + 2] = n >>> 16 & 255, r[e + 3] = n >>> 24 & 255;
419
+ }
420
+ static writeUInt16LE(r, e, s) {
421
+ const n = s & 65535;
422
+ r[e] = n & 255, r[e + 1] = n >>> 8 & 255;
423
+ }
424
+ static readUInt32LE(r, e) {
425
+ return (r[e] | r[e + 1] << 8 | r[e + 2] << 16 | r[e + 3] << 24) >>> 0;
426
+ }
427
+ static readUInt16LE(r, e) {
428
+ return (r[e] | r[e + 1] << 8) & 65535;
429
+ }
430
+ static toHex(r, e) {
431
+ return (r >>> 0).toString(16).padStart(e, "0");
432
+ }
433
+ }
434
+ function C(t, r, e) {
435
+ if (r.offset >= t.length)
436
+ throw new Error(e);
437
+ let s = 0, n = 0, i = 0;
438
+ for (; r.offset < t.length; ) {
439
+ const o = t[r.offset++];
440
+ if (i++, s |= (o & 127) << n, (o & 128) === 0) {
441
+ if (i !== _e(s))
442
+ throw new Error("Teleport VarUInt is not canonical");
443
+ return s >>> 0;
444
+ }
445
+ if (n += 7, n >= 35)
446
+ throw new Error("Teleport VarUInt exceeds 32-bit range");
447
+ }
448
+ throw new Error(e);
449
+ }
450
+ function _e(t) {
451
+ return t < 128 ? 1 : t < 16384 ? 2 : t < 2097152 ? 3 : t < 268435456 ? 4 : 5;
452
+ }
453
+ function v(t) {
454
+ switch (t) {
455
+ case 3:
456
+ case 5:
457
+ case 7:
458
+ return 4;
459
+ case 4:
460
+ case 6:
461
+ case 8:
462
+ return 8;
463
+ case 14:
464
+ return 16;
465
+ case 2:
466
+ return 1;
467
+ case 1:
468
+ return 0;
469
+ default:
470
+ return -1;
471
+ }
472
+ }
473
+ function Et(t) {
474
+ if (t === 9 || t === 11 || t === 10 || t === 1)
475
+ throw new Error("Dictionary keys must be primitive Teleport types");
476
+ }
477
+ function S(t, r, e) {
478
+ if (r < 0 || e < 0 || r + e > t.length)
479
+ throw new Error("Teleport payload exceeds bounds");
480
+ }
481
+ function le(t, r) {
482
+ return (t[r] | t[r + 1] << 8 | t[r + 2] << 16 | t[r + 3] << 24) >>> 0;
483
+ }
484
+ function rt(t, r) {
485
+ if (r >= t.length)
486
+ throw new Error("Array payload exceeds bounds");
487
+ const e = t[r], s = e >> 4 & 15;
488
+ if ((e & 15) !== 0)
489
+ throw new Error("Array flags must be zero");
490
+ const n = { offset: r + 1 }, i = C(t, n, "ArrayMalformed"), o = v(s);
491
+ if (o >= 0) {
492
+ const I = o * i;
493
+ return S(t, n.offset, I), n.offset + I - r;
494
+ }
495
+ let a = n.offset;
496
+ for (let I = 0; I < i; I++)
497
+ a = Q(s, t, a, "ArrayMalformed");
498
+ return a - r;
499
+ }
500
+ function st(t, r) {
501
+ if (r + 2 > t.length)
502
+ throw new Error("Dictionary payload too short");
503
+ const e = t[r] >> 4 & 15, s = t[r + 1] >> 4 & 15;
504
+ if ((t[r] & 15) !== 0 || (t[r + 1] & 15) !== 0)
505
+ throw new Error("Dictionary key/value flags must be zero");
506
+ Et(e);
507
+ const n = { offset: r + 2 }, i = C(t, n, "DictMalformed");
508
+ let o = n.offset;
509
+ for (let a = 0; a < i; a++)
510
+ o = Q(e, t, o, "DictMalformed"), o = Q(s, t, o, "DictMalformed");
511
+ return o - r;
512
+ }
513
+ function Q(t, r, e, s) {
514
+ const n = v(t);
515
+ if (n >= 0)
516
+ return S(r, e, n), e + n;
517
+ switch (t) {
518
+ case 12:
519
+ case 13: {
520
+ const i = { offset: e }, o = C(r, i, s);
521
+ return S(r, i.offset, o), i.offset + o;
522
+ }
523
+ case 11: {
524
+ const i = { offset: e }, o = C(r, i, s);
525
+ return S(r, i.offset, o), i.offset + o;
526
+ }
527
+ case 9:
528
+ return e + rt(r, e);
529
+ case 10:
530
+ return e + st(r, e);
531
+ default:
532
+ throw new Error(`Unsupported Teleport type ${M[t]}`);
533
+ }
534
+ }
535
+ function it(t) {
536
+ return Array.from(t).map((r) => r.toString(16).padStart(2, "0")).join("");
537
+ }
538
+ function K(t) {
539
+ return t instanceof Uint8Array ? t : new Uint8Array(t);
540
+ }
541
+ var It = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.Opus = 1] = "Opus", t[t.Mp3 = 2] = "Mp3", t[t.RawPcm16 = 3] = "RawPcm16", t))(It || {}), _t = /* @__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))(_t || {}), lt = /* @__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[t.Native = 32] = "Native", t))(lt || {}), ct = /* @__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))(ct || {}), ft = /* @__PURE__ */ ((t) => (t[t.Face = 0] = "Face", t[t.Hands = 1] = "Hands", t[t.Pose = 2] = "Pose", t[t.All = 3] = "All", t))(ft || {}), ut = /* @__PURE__ */ ((t) => (t[t.Css = 0] = "Css", t[t.Flutter = 1] = "Flutter", t))(ut || {}), Tt = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.Machine = 1] = "Machine", t[t.Human = 2] = "Human", t))(Tt || {}), ht = /* @__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))(ht || {}), At = /* @__PURE__ */ ((t) => (t[t.Unknown = 0] = "Unknown", t[t.DotNet = 1] = "DotNet", t[t.TypeScript = 2] = "TypeScript", t[t.Cpp = 3] = "Cpp", t[t.Dart = 4] = "Dart", t[t.Rust = 5] = "Rust", t))(At || {}), Nt = /* @__PURE__ */ ((t) => (t[t.Local = 0] = "Local", t[t.Cloud = 1] = "Cloud", t))(Nt || {}), St = /* @__PURE__ */ ((t) => (t[t.Bundle = 0] = "Bundle", t[t.GitSource = 1] = "GitSource", t))(St || {}), g = /* @__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.CORE_UPDATE_CLIENT_CONTEXT = 65558] = "CORE_UPDATE_CLIENT_CONTEXT", t[t.CORE_BACKGROUND_WORK_ACTIVE = 65559] = "CORE_BACKGROUND_WORK_ACTIVE", t[t.CORE_RESET_IDLE = 65560] = "CORE_RESET_IDLE", t[t.CORE_CLIENT_DISCONNECTING = 65561] = "CORE_CLIENT_DISCONNECTING", t[t.CORE_ON_APP_READY = 65562] = "CORE_ON_APP_READY", t[t.CORE_ON_FRONTEND_RELOADED = 65563] = "CORE_ON_FRONTEND_RELOADED", t[t.CORE_WEBRTC_OFFER = 65566] = "CORE_WEBRTC_OFFER", t[t.CORE_WEBRTC_ANSWER = 65567] = "CORE_WEBRTC_ANSWER", t[t.CORE_WEBRTC_ICE_CANDIDATE = 65568] = "CORE_WEBRTC_ICE_CANDIDATE", t[t.CORE_WEBRTC_READY = 65569] = "CORE_WEBRTC_READY", t[t.CORE_WEBRTC_AUDIO_SEGMENT = 65570] = "CORE_WEBRTC_AUDIO_SEGMENT", t[t.CORE_WEBRTC_TRACK_MAP = 65571] = "CORE_WEBRTC_TRACK_MAP", t[t.CORE_WEBRTC_VIDEO_CAPTURE = 65572] = "CORE_WEBRTC_VIDEO_CAPTURE", t[t.CORE_RELAY_AGENT_AUTH = 65576] = "CORE_RELAY_AGENT_AUTH", t[t.CORE_RELAY_AGENT_AUTH_RESULT = 65577] = "CORE_RELAY_AGENT_AUTH_RESULT", t[t.CORE_RELAY_HEARTBEAT = 65578] = "CORE_RELAY_HEARTBEAT", t[t.CORE_RELAY_TCP_CONNECTION_OPENED = 65579] = "CORE_RELAY_TCP_CONNECTION_OPENED", t[t.CORE_RELAY_TCP_CONNECTION_CLOSED = 65580] = "CORE_RELAY_TCP_CONNECTION_CLOSED", t[t.CORE_RELAY_TCP_DATA = 65581] = "CORE_RELAY_TCP_DATA", t[t.CORE_RELAY_UDP_DATA = 65582] = "CORE_RELAY_UDP_DATA", t[t.CORE_RELAY_ADD_TUNNEL = 65583] = "CORE_RELAY_ADD_TUNNEL", t[t.CORE_RELAY_TUNNEL_ADDED = 65584] = "CORE_RELAY_TUNNEL_ADDED", t[t.CORE_RELAY_REMOVE_TUNNEL = 65585] = "CORE_RELAY_REMOVE_TUNNEL", t[t.CORE_IKON_SERVER_ENDPOINT_HOST_INFO = 65586] = "CORE_IKON_SERVER_ENDPOINT_HOST_INFO", t[t.CORE_CLIENT_INITIALIZATION = 65587] = "CORE_CLIENT_INITIALIZATION", t[t.CORE_CLIENT_LIFECYCLE_BATCH = 65588] = "CORE_CLIENT_LIFECYCLE_BATCH", t[t.CORE_APP_CONFIG = 65589] = "CORE_APP_CONFIG", 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.ANALYTICS_IKON_RELAY_SERVER_STATS = 524297] = "ANALYTICS_IKON_RELAY_SERVER_STATS", t[t.ANALYTICS_IKON_TURN_SERVER_STATS = 524298] = "ANALYTICS_IKON_TURN_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_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.ACTION_URL_CHANGED = 1048642] = "ACTION_URL_CHANGED", t[t.ACTION_FILE_UPLOAD_PRE_START2 = 1048643] = "ACTION_FILE_UPLOAD_PRE_START2", t[t.ACTION_FILE_UPLOAD_PRE_START_RESPONSE2 = 1048644] = "ACTION_FILE_UPLOAD_PRE_START_RESPONSE2", t[t.ACTION_FILE_UPLOAD_START2 = 1048645] = "ACTION_FILE_UPLOAD_START2", t[t.ACTION_FILE_UPLOAD_START_RESPONSE2 = 1048646] = "ACTION_FILE_UPLOAD_START_RESPONSE2", t[t.ACTION_FILE_UPLOAD_DATA2 = 1048647] = "ACTION_FILE_UPLOAD_DATA2", t[t.ACTION_FILE_UPLOAD_ACK2 = 1048648] = "ACTION_FILE_UPLOAD_ACK2", t[t.ACTION_FILE_UPLOAD_END2 = 1048649] = "ACTION_FILE_UPLOAD_END2", t[t.ACTION_FILE_UPLOAD_COMPLETE2 = 1048650] = "ACTION_FILE_UPLOAD_COMPLETE2", t[t.ACTION_FUNCTION_ENUMERATION_ITEM_BATCH = 1048651] = "ACTION_FUNCTION_ENUMERATION_ITEM_BATCH", t[t.ACTION_CALL_ACK = 1048652] = "ACTION_CALL_ACK", t[t.ACTION_TRIGGER_CRON = 1048653] = "ACTION_TRIGGER_CRON", 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.AUDIO_SHAPE_FRAME = 4194310] = "AUDIO_SHAPE_FRAME", 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.GROUP_APP_LOCAL = 1073741824] = "GROUP_APP_LOCAL", t[t.CONSTANT_GROUP_MASK = 2147418112] = "CONSTANT_GROUP_MASK", t))(g || {});
542
+ const ce = 161083277, fe = 265814330, ue = 1368629611, Te = 2431514951, he = 2514959030, Ae = 2745379226, Ne = 3282782683, Se = 3284746250, Ce = 4101844078;
543
+ function Ct(t) {
544
+ const r = {};
545
+ return Rt(r), r;
546
+ }
547
+ function Rt(t) {
548
+ return t.StreamId = "", t.Description = "", t.SourceType = "", t.Codec = It.Unknown, t.CodecDetails = "", t.SampleRate = 0, t.Channels = 0, t.ShapeSets = void 0, t.CorrelationId = void 0, t;
549
+ }
550
+ function Re(t, r) {
551
+ const e = r ?? Ct();
552
+ return Rt(e), De(t, e), e;
553
+ }
554
+ function De(t, r) {
555
+ let e;
556
+ for (; (e = t.next()) !== null; )
557
+ switch (e.fieldId) {
558
+ case ce: {
559
+ if (e.isNull) throw new Error();
560
+ r.StreamId = e.asString();
561
+ break;
562
+ }
563
+ case fe: {
564
+ if (e.isNull) {
565
+ r.ShapeSets = void 0;
566
+ break;
567
+ }
568
+ r.ShapeSets = de(e.asArray());
569
+ break;
570
+ }
571
+ case ue: {
572
+ if (e.isNull) throw new Error();
573
+ r.Description = e.asString();
574
+ break;
575
+ }
576
+ case Te: {
577
+ if (e.isNull) throw new Error();
578
+ r.Channels = e.asInt32();
579
+ break;
580
+ }
581
+ case he: {
582
+ if (e.isNull) {
583
+ r.CorrelationId = void 0;
584
+ break;
585
+ }
586
+ r.CorrelationId = e.asString();
587
+ break;
588
+ }
589
+ case Ae: {
590
+ if (e.isNull) throw new Error();
591
+ r.CodecDetails = e.asString();
592
+ break;
593
+ }
594
+ case Ne: {
595
+ if (e.isNull) throw new Error();
596
+ r.SourceType = e.asString();
597
+ break;
598
+ }
599
+ case Se: {
600
+ if (e.isNull) throw new Error();
601
+ r.Codec = e.asInt32();
602
+ break;
603
+ }
604
+ case Ce: {
605
+ if (e.isNull) throw new Error();
606
+ r.SampleRate = e.asInt32();
607
+ break;
608
+ }
609
+ }
610
+ }
611
+ function de(t) {
612
+ const r = [];
613
+ let e;
614
+ for (; (e = t.next()) !== null; )
615
+ r.push(Oe(e.asObject()));
616
+ return r;
617
+ }
618
+ const we = 1107713536, ye = 1154362099, Le = 1185721362;
619
+ function Ue(t) {
620
+ const r = {};
621
+ return Dt(r), r;
622
+ }
623
+ function Dt(t) {
624
+ return t.SetId = 0, t.Name = "", t.ShapeNames = [], t;
625
+ }
626
+ function Oe(t, r) {
627
+ const e = r ?? Ue();
628
+ return Dt(e), me(t, e), e;
629
+ }
630
+ function me(t, r) {
631
+ let e;
632
+ for (; (e = t.next()) !== null; )
633
+ switch (e.fieldId) {
634
+ case we: {
635
+ if (e.isNull) throw new Error();
636
+ r.Name = e.asString();
637
+ break;
638
+ }
639
+ case ye: {
640
+ if (e.isNull) throw new Error();
641
+ r.SetId = e.asUInt32();
642
+ break;
643
+ }
644
+ case Le: {
645
+ if (e.isNull) throw new Error();
646
+ r.ShapeNames = Pe(e.asArray());
647
+ break;
648
+ }
649
+ }
650
+ }
651
+ function Pe(t) {
652
+ const r = [];
653
+ let e;
654
+ for (; (e = t.next()) !== null; )
655
+ r.push(e.asString());
656
+ return r;
657
+ }
658
+ const ge = 76337612, Fe = 185396121, be = 250031587, Me = 388632637, ve = 417197284, ke = 425972532, Ge = 469070965, Be = 470595159, Ve = 594855258, xe = 617065367, pe = 661691032, He = 781727218, Ye = 834078886, Ke = 1043273762, $e = 1236999138, Xe = 1286979607, je = 1368629611, We = 1437068682, ze = 1668375353, Je = 1715899485, Qe = 1942830531, qe = 1999510636, Ze = 2033288346, tr = 2079864626, er = 2142346422, rr = 2228539873, sr = 2232517119, nr = 2598291686, ir = 2719718823, or = 2810953526, ar = 2840065720, Er = 2885165957, Ir = 3542818975, _r = 3586157513, lr = 3717933110, cr = 4062655306;
659
+ function fr(t) {
660
+ const r = {};
661
+ return dt(r), r;
662
+ }
663
+ function dt(t) {
664
+ return t.ContextType = lt.Unknown, t.UserType = Tt.Unknown, t.PayloadType = ct.Unknown, t.Description = "", t.UserId = "", t.DeviceId = "", t.ProductId = "", t.VersionId = "", t.InstallId = "", t.Locale = "", t.SessionId = -1, t.IsInternal = !1, t.IsSnapshot = !1, t.IsReady = !1, t.HasInput = !1, t.ChannelLocale = "", t.EmbeddedSpaceId = "", t.AuthSessionId = "", t.ReceiveAllMessages = !1, t.PreciseJoinedAt = 0n, t.UserAgent = "", t.ClientType = _t.Unknown, t.UniqueSessionId = "", t.Parameters = /* @__PURE__ */ Object.create(null), t.SdkType = At.Unknown, t.SdkCapability = 0, t.ViewportWidth = 0, t.ViewportHeight = 0, t.Theme = "", t.Timezone = "", t.IsTouchDevice = !1, t.InitialPath = "", t.StyleFormat = ut.Css, t.SupportsCompression = !0, t.IsSoftDisconnected = !1, t.SoftDisconnectAt = 0n, t;
665
+ }
666
+ function ur(t, r) {
667
+ const e = r ?? fr();
668
+ return dt(e), Tr(t, e), e;
669
+ }
670
+ function Tr(t, r) {
671
+ let e;
672
+ for (; (e = t.next()) !== null; )
673
+ switch (e.fieldId) {
674
+ case ge: {
675
+ if (e.isNull) throw new Error();
676
+ r.DeviceId = e.asString();
677
+ break;
678
+ }
679
+ case Fe: {
680
+ if (e.isNull) throw new Error();
681
+ r.InstallId = e.asString();
682
+ break;
683
+ }
684
+ case be: {
685
+ if (e.isNull) throw new Error();
686
+ r.Theme = e.asString();
687
+ break;
688
+ }
689
+ case Me: {
690
+ if (e.isNull) throw new Error();
691
+ r.UserAgent = e.asString();
692
+ break;
693
+ }
694
+ case ve: {
695
+ if (e.isNull) throw new Error();
696
+ r.ContextType = e.asInt32();
697
+ break;
698
+ }
699
+ case ke: {
700
+ if (e.isNull) throw new Error();
701
+ r.SoftDisconnectAt = e.asUInt64();
702
+ break;
703
+ }
704
+ case Ge: {
705
+ if (e.isNull) throw new Error();
706
+ r.HasInput = e.asBool();
707
+ break;
708
+ }
709
+ case Be: {
710
+ if (e.isNull) throw new Error();
711
+ r.UserType = e.asInt32();
712
+ break;
713
+ }
714
+ case Ve: {
715
+ if (e.isNull) throw new Error();
716
+ r.InitialPath = e.asString();
717
+ break;
718
+ }
719
+ case xe: {
720
+ if (e.isNull) throw new Error();
721
+ r.IsSoftDisconnected = e.asBool();
722
+ break;
723
+ }
724
+ case pe: {
725
+ if (e.isNull) throw new Error();
726
+ r.SupportsCompression = e.asBool();
727
+ break;
728
+ }
729
+ case He: {
730
+ if (e.isNull) throw new Error();
731
+ r.UserId = e.asString();
732
+ break;
733
+ }
734
+ case Ye: {
735
+ if (e.isNull) throw new Error();
736
+ r.ProductId = e.asString();
737
+ break;
738
+ }
739
+ case Ke: {
740
+ if (e.isNull) throw new Error();
741
+ r.AuthSessionId = e.asString();
742
+ break;
743
+ }
744
+ case $e: {
745
+ if (e.isNull) throw new Error();
746
+ r.ReceiveAllMessages = e.asBool();
747
+ break;
748
+ }
749
+ case Xe: {
750
+ if (e.isNull) throw new Error();
751
+ r.ViewportHeight = e.asInt32();
752
+ break;
753
+ }
754
+ case je: {
755
+ if (e.isNull) throw new Error();
756
+ r.Description = e.asString();
757
+ break;
758
+ }
759
+ case We: {
760
+ if (e.isNull) throw new Error();
761
+ r.SdkCapability = e.asInt32();
762
+ break;
763
+ }
764
+ case ze: {
765
+ if (e.isNull) throw new Error();
766
+ r.IsSnapshot = e.asBool();
767
+ break;
768
+ }
769
+ case Je: {
770
+ if (e.isNull) throw new Error();
771
+ r.Locale = e.asString();
772
+ break;
773
+ }
774
+ case Qe: {
775
+ if (e.isNull) throw new Error();
776
+ r.SdkType = e.asInt32();
777
+ break;
778
+ }
779
+ case qe: {
780
+ if (e.isNull) throw new Error();
781
+ r.SessionId = e.asInt32();
782
+ break;
783
+ }
784
+ case Ze: {
785
+ if (e.isNull) throw new Error();
786
+ r.ViewportWidth = e.asInt32();
787
+ break;
788
+ }
789
+ case tr: {
790
+ if (e.isNull) throw new Error();
791
+ r.PreciseJoinedAt = e.asUInt64();
792
+ break;
793
+ }
794
+ case er: {
795
+ if (e.isNull) throw new Error();
796
+ r.PayloadType = e.asInt32();
797
+ break;
798
+ }
799
+ case rr: {
800
+ if (e.isNull) throw new Error();
801
+ r.StyleFormat = e.asInt32();
802
+ break;
803
+ }
804
+ case sr: {
805
+ if (e.isNull) throw new Error();
806
+ r.IsTouchDevice = e.asBool();
807
+ break;
808
+ }
809
+ case nr: {
810
+ if (e.isNull) throw new Error();
811
+ r.VersionId = e.asString();
812
+ break;
813
+ }
814
+ case ir: {
815
+ if (e.isNull) throw new Error();
816
+ r.UniqueSessionId = e.asString();
817
+ break;
818
+ }
819
+ case or: {
820
+ if (e.isNull) throw new Error();
821
+ r.ClientType = e.asInt32();
822
+ break;
823
+ }
824
+ case ar: {
825
+ if (e.isNull) throw new Error();
826
+ r.IsReady = e.asBool();
827
+ break;
828
+ }
829
+ case Er: {
830
+ if (e.isNull) throw new Error();
831
+ r.Parameters = hr(e.asDictionary());
832
+ break;
833
+ }
834
+ case Ir: {
835
+ if (e.isNull) throw new Error();
836
+ r.Timezone = e.asString();
837
+ break;
838
+ }
839
+ case _r: {
840
+ if (e.isNull) throw new Error();
841
+ r.IsInternal = e.asBool();
842
+ break;
843
+ }
844
+ case lr: {
845
+ if (e.isNull) throw new Error();
846
+ r.ChannelLocale = e.asString();
847
+ break;
848
+ }
849
+ case cr: {
850
+ if (e.isNull) throw new Error();
851
+ r.EmbeddedSpaceId = e.asString();
852
+ break;
853
+ }
854
+ }
855
+ }
856
+ function hr(t) {
857
+ const r = /* @__PURE__ */ Object.create(null);
858
+ let e;
859
+ for (; (e = t.next()) !== null; ) {
860
+ const s = e.key.asString();
861
+ r[s] = e.value.asString();
862
+ }
863
+ return r;
864
+ }
865
+ const Ar = 703025676, Nr = 814454131, Sr = 972460562, Cr = 976255570, Rr = 1368629611, Dr = 1479280922, dr = 1533537016, wr = 1909301063, yr = 2274386296, Lr = 2603556958, Ur = 2885165957, Or = 3568439632;
866
+ function mr(t) {
867
+ const r = {};
868
+ return wt(r), r;
869
+ }
870
+ function wt(t) {
871
+ return t.FunctionId = T.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.Versions = [], t;
872
+ }
873
+ function Pr(t, r) {
874
+ const e = r ?? mr();
875
+ return wt(e), gr(t, e), e;
876
+ }
877
+ function gr(t, r) {
878
+ let e;
879
+ for (; (e = t.next()) !== null; )
880
+ switch (e.fieldId) {
881
+ case Ar: {
882
+ if (e.isNull) throw new Error();
883
+ r.ResultTypeName = e.asString();
884
+ break;
885
+ }
886
+ case Nr: {
887
+ if (e.isNull) throw new Error();
888
+ r.FunctionName = e.asString();
889
+ break;
890
+ }
891
+ case Sr: {
892
+ if (e.isNull) throw new Error();
893
+ r.EnumerableItemTypeName = e.asString();
894
+ break;
895
+ }
896
+ case Cr: {
897
+ if (e.isNull) throw new Error();
898
+ r.FunctionId = e.asGuid();
899
+ break;
900
+ }
901
+ case Rr: {
902
+ if (e.isNull) throw new Error();
903
+ r.Description = e.asString();
904
+ break;
905
+ }
906
+ case Dr: {
907
+ if (e.isNull) throw new Error();
908
+ r.IsCancellable = e.asBool();
909
+ break;
910
+ }
911
+ case dr: {
912
+ if (e.isNull) throw new Error();
913
+ r.RequiresInstance = e.asBool();
914
+ break;
915
+ }
916
+ case wr: {
917
+ if (e.isNull) throw new Error();
918
+ r.Versions = Fr(e.asArray());
919
+ break;
920
+ }
921
+ case yr: {
922
+ if (e.isNull) throw new Error();
923
+ r.LlmInlineResult = e.asBool();
924
+ break;
925
+ }
926
+ case Lr: {
927
+ if (e.isNull) throw new Error();
928
+ r.IsEnumerable = e.asBool();
929
+ break;
930
+ }
931
+ case Ur: {
932
+ if (e.isNull) throw new Error();
933
+ r.Parameters = br(e.asArray());
934
+ break;
935
+ }
936
+ case Or: {
937
+ if (e.isNull) throw new Error();
938
+ r.LlmCallOnlyOnce = e.asBool();
939
+ break;
940
+ }
941
+ }
942
+ }
943
+ function Fr(t) {
944
+ const r = [];
945
+ let e;
946
+ for (; (e = t.next()) !== null; )
947
+ r.push(e.asString());
948
+ return r;
949
+ }
950
+ function br(t) {
951
+ const r = [];
952
+ let e;
953
+ for (; (e = t.next()) !== null; )
954
+ r.push(Kr(e.asObject()));
955
+ return r;
956
+ }
957
+ const Mr = 607861992, vr = 894485888, kr = 972460562, Gr = 1368629611, Br = 1883521406, Vr = 2603556958, xr = 3609695522, pr = 4075263697, Hr = 4257460908;
958
+ function Yr(t) {
959
+ const r = {};
960
+ return yt(r), r;
961
+ }
962
+ function yt(t) {
963
+ 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;
964
+ }
965
+ function Kr(t, r) {
966
+ const e = r ?? Yr();
967
+ return yt(e), $r(t, e), e;
968
+ }
969
+ function $r(t, r) {
970
+ let e;
971
+ for (; (e = t.next()) !== null; )
972
+ switch (e.fieldId) {
973
+ case Mr: {
974
+ if (e.isNull) throw new Error();
975
+ r.HasDefaultValue = e.asBool();
976
+ break;
977
+ }
978
+ case vr: {
979
+ if (e.isNull) throw new Error();
980
+ r.DefaultValueJson = e.asString();
981
+ break;
982
+ }
983
+ case kr: {
984
+ if (e.isNull) throw new Error();
985
+ r.EnumerableItemTypeName = e.asString();
986
+ break;
987
+ }
988
+ case Gr: {
989
+ if (e.isNull) throw new Error();
990
+ r.Description = e.asString();
991
+ break;
992
+ }
993
+ case Br: {
994
+ if (e.isNull) throw new Error();
995
+ r.DefaultValueData = e.asBinary();
996
+ break;
997
+ }
998
+ case Vr: {
999
+ if (e.isNull) throw new Error();
1000
+ r.IsEnumerable = e.asBool();
1001
+ break;
1002
+ }
1003
+ case xr: {
1004
+ if (e.isNull) throw new Error();
1005
+ r.TypeName = e.asString();
1006
+ break;
1007
+ }
1008
+ case pr: {
1009
+ if (e.isNull) throw new Error();
1010
+ r.ParameterName = e.asString();
1011
+ break;
1012
+ }
1013
+ case Hr: {
1014
+ if (e.isNull) throw new Error();
1015
+ r.ParameterIndex = e.asInt32();
1016
+ break;
1017
+ }
1018
+ }
1019
+ }
1020
+ const Xr = 3167053791, jr = 3342364356, Wr = 3612929027;
1021
+ function Lt(t) {
1022
+ const r = {};
1023
+ return Ut(r), r;
1024
+ }
1025
+ function Ut(t) {
1026
+ return t.Category = "", t.Type = ft.Face, t.FaceBlendshapes = [], t;
1027
+ }
1028
+ function zr(t, r) {
1029
+ const e = r ?? Lt();
1030
+ return Ut(e), Jr(t, e), e;
1031
+ }
1032
+ function Jr(t, r) {
1033
+ let e;
1034
+ for (; (e = t.next()) !== null; )
1035
+ switch (e.fieldId) {
1036
+ case Xr: {
1037
+ if (e.isNull) throw new Error();
1038
+ r.Type = e.asInt32();
1039
+ break;
1040
+ }
1041
+ case jr: {
1042
+ if (e.isNull) throw new Error();
1043
+ r.FaceBlendshapes = Qr(e.asArray());
1044
+ break;
1045
+ }
1046
+ case Wr: {
1047
+ if (e.isNull) throw new Error();
1048
+ r.Category = e.asString();
1049
+ break;
1050
+ }
1051
+ }
1052
+ }
1053
+ function Qr(t) {
1054
+ const r = [];
1055
+ let e;
1056
+ for (; (e = t.next()) !== null; )
1057
+ r.push(e.asString());
1058
+ return r;
1059
+ }
1060
+ const qr = 1405462580, Zr = 2968276160;
1061
+ function ts(t) {
1062
+ const r = {};
1063
+ return Ot(r), r;
1064
+ }
1065
+ function Ot(t) {
1066
+ return t.MimeType = "", t.Value = new Uint8Array(0), t;
1067
+ }
1068
+ function es(t, r) {
1069
+ const e = r ?? ts();
1070
+ return Ot(e), rs(t, e), e;
1071
+ }
1072
+ function rs(t, r) {
1073
+ let e;
1074
+ for (; (e = t.next()) !== null; )
1075
+ switch (e.fieldId) {
1076
+ case qr: {
1077
+ if (e.isNull) throw new Error();
1078
+ r.Value = e.asBinary();
1079
+ break;
1080
+ }
1081
+ case Zr: {
1082
+ if (e.isNull) throw new Error();
1083
+ r.MimeType = e.asString();
1084
+ break;
1085
+ }
1086
+ }
1087
+ }
1088
+ const ss = 3612929027;
1089
+ function mt(t) {
1090
+ const r = {};
1091
+ return Pt(r), r;
1092
+ }
1093
+ function Pt(t) {
1094
+ return t.Category = "", t;
1095
+ }
1096
+ function ns(t, r) {
1097
+ const e = r ?? mt();
1098
+ return Pt(e), is(t, e), e;
1099
+ }
1100
+ function is(t, r) {
1101
+ let e;
1102
+ for (; (e = t.next()) !== null; )
1103
+ switch (e.fieldId) {
1104
+ case ss: {
1105
+ if (e.isNull) throw new Error();
1106
+ r.Category = e.asString();
1107
+ break;
1108
+ }
1109
+ }
1110
+ }
1111
+ const os = 2097188, as = 979822885, Es = 2374537704;
1112
+ function Is(t) {
1113
+ const r = {};
1114
+ return gt(r), r;
1115
+ }
1116
+ function gt(t) {
1117
+ return t.StyleId = "", t.Style = /* @__PURE__ */ Object.create(null), t;
1118
+ }
1119
+ function _s(t, r) {
1120
+ const e = P.create(t);
1121
+ return ls(e, r);
1122
+ }
1123
+ function ls(t, r) {
1124
+ const e = r ?? Is();
1125
+ return gt(e), cs(t, e), e;
1126
+ }
1127
+ function cs(t, r) {
1128
+ let e;
1129
+ for (; (e = t.next()) !== null; )
1130
+ switch (e.fieldId) {
1131
+ case as: {
1132
+ if (e.isNull) throw new Error();
1133
+ r.StyleId = e.asString();
1134
+ break;
1135
+ }
1136
+ case Es: {
1137
+ if (e.isNull) throw new Error();
1138
+ r.Style = us(e.asDictionary());
1139
+ break;
1140
+ }
1141
+ }
1142
+ }
1143
+ async function fs(t, r) {
1144
+ const e = await Y(t, os);
1145
+ return _s(e, r);
1146
+ }
1147
+ function us(t) {
1148
+ const r = /* @__PURE__ */ Object.create(null);
1149
+ let e;
1150
+ for (; (e = t.next()) !== null; ) {
1151
+ const s = e.key.asString();
1152
+ r[s] = e.value.asString();
1153
+ }
1154
+ return r;
1155
+ }
1156
+ const Ts = 2097192, hs = 2136687806;
1157
+ function As(t) {
1158
+ const r = {};
1159
+ return Ft(r), r;
1160
+ }
1161
+ function Ft(t) {
1162
+ return t.Styles = [], t;
1163
+ }
1164
+ function Ns(t, r) {
1165
+ const e = P.create(t);
1166
+ return Ss(e, r);
1167
+ }
1168
+ function Ss(t, r) {
1169
+ const e = r ?? As();
1170
+ return Ft(e), Cs(t, e), e;
1171
+ }
1172
+ function Cs(t, r) {
1173
+ let e;
1174
+ for (; (e = t.next()) !== null; )
1175
+ switch (e.fieldId) {
1176
+ case hs: {
1177
+ if (e.isNull) throw new Error();
1178
+ r.Styles = Ds(e.asArray());
1179
+ break;
1180
+ }
1181
+ }
1182
+ }
1183
+ async function Rs(t, r) {
1184
+ const e = await Y(t, Ts);
1185
+ return Ns(e, r);
1186
+ }
1187
+ function Ds(t) {
1188
+ const r = [];
1189
+ let e;
1190
+ for (; (e = t.next()) !== null; )
1191
+ r.push(Ls(e.asObject()));
1192
+ return r;
1193
+ }
1194
+ const ds = 979822885, ws = 2374537704;
1195
+ function ys(t) {
1196
+ const r = {};
1197
+ return bt(r), r;
1198
+ }
1199
+ function bt(t) {
1200
+ return t.StyleId = "", t.Style = /* @__PURE__ */ Object.create(null), t;
1201
+ }
1202
+ function Ls(t, r) {
1203
+ const e = r ?? ys();
1204
+ return bt(e), Us(t, e), e;
1205
+ }
1206
+ function Us(t, r) {
1207
+ let e;
1208
+ for (; (e = t.next()) !== null; )
1209
+ switch (e.fieldId) {
1210
+ case ds: {
1211
+ if (e.isNull) throw new Error();
1212
+ r.StyleId = e.asString();
1213
+ break;
1214
+ }
1215
+ case ws: {
1216
+ if (e.isNull) throw new Error();
1217
+ r.Style = Os(e.asDictionary());
1218
+ break;
1219
+ }
1220
+ }
1221
+ }
1222
+ function Os(t) {
1223
+ const r = /* @__PURE__ */ Object.create(null);
1224
+ let e;
1225
+ for (; (e = t.next()) !== null; ) {
1226
+ const s = e.key.asString();
1227
+ r[s] = e.value.asString();
1228
+ }
1229
+ return r;
1230
+ }
1231
+ const ms = 2097193, Ps = 1415642792;
1232
+ function gs(t) {
1233
+ const r = {};
1234
+ return Mt(r), r;
1235
+ }
1236
+ function Mt(t) {
1237
+ return t.StyleIds = [], t;
1238
+ }
1239
+ function Fs(t, r) {
1240
+ const e = P.create(t);
1241
+ return bs(e, r);
1242
+ }
1243
+ function bs(t, r) {
1244
+ const e = r ?? gs();
1245
+ return Mt(e), Ms(t, e), e;
1246
+ }
1247
+ function Ms(t, r) {
1248
+ let e;
1249
+ for (; (e = t.next()) !== null; )
1250
+ switch (e.fieldId) {
1251
+ case Ps: {
1252
+ if (e.isNull) throw new Error();
1253
+ r.StyleIds = ks(e.asArray());
1254
+ break;
1255
+ }
1256
+ }
1257
+ }
1258
+ async function vs(t, r) {
1259
+ const e = await Y(t, ms);
1260
+ return Fs(e, r);
1261
+ }
1262
+ function ks(t) {
1263
+ const r = [];
1264
+ let e;
1265
+ for (; (e = t.next()) !== null; )
1266
+ r.push(e.asString());
1267
+ return r;
1268
+ }
1269
+ const Gs = 2097190, Bs = 425183262, Vs = 653781469;
1270
+ function xs(t) {
1271
+ const r = {};
1272
+ return vt(r), r;
1273
+ }
1274
+ function vt(t) {
1275
+ return t.Json = "", t.Payloads = /* @__PURE__ */ Object.create(null), t;
1276
+ }
1277
+ function ps(t, r) {
1278
+ const e = P.create(t);
1279
+ return Hs(e, r);
1280
+ }
1281
+ function Hs(t, r) {
1282
+ const e = r ?? xs();
1283
+ return vt(e), Ys(t, e), e;
1284
+ }
1285
+ function Ys(t, r) {
1286
+ let e;
1287
+ for (; (e = t.next()) !== null; )
1288
+ switch (e.fieldId) {
1289
+ case Bs: {
1290
+ if (e.isNull) throw new Error();
1291
+ r.Json = e.asString();
1292
+ break;
1293
+ }
1294
+ case Vs: {
1295
+ if (e.isNull) throw new Error();
1296
+ r.Payloads = $s(e.asDictionary());
1297
+ break;
1298
+ }
1299
+ }
1300
+ }
1301
+ async function Ks(t, r) {
1302
+ const e = await Y(t, Gs);
1303
+ return ps(e, r);
1304
+ }
1305
+ function $s(t) {
1306
+ const r = /* @__PURE__ */ Object.create(null);
1307
+ let e;
1308
+ for (; (e = t.next()) !== null; ) {
1309
+ const s = e.key.asString();
1310
+ r[s] = es(e.value.asObject());
1311
+ }
1312
+ return r;
1313
+ }
1314
+ const Xs = 161083277, js = 164808083, Ws = 1368629611, zs = 2514959030, Js = 2745379226, Qs = 2950031986, qs = 3282782683, Zs = 3284746250, tn = 4065070594;
1315
+ function kt(t) {
1316
+ const r = {};
1317
+ return Gt(r), r;
1318
+ }
1319
+ function Gt(t) {
1320
+ return t.StreamId = "", t.Description = "", t.SourceType = "", t.Codec = ht.H264, t.CodecDetails = "", t.Width = 0, t.Height = 0, t.Framerate = 30, t.CorrelationId = void 0, t;
1321
+ }
1322
+ function en(t, r) {
1323
+ const e = r ?? kt();
1324
+ return Gt(e), rn(t, e), e;
1325
+ }
1326
+ function rn(t, r) {
1327
+ let e;
1328
+ for (; (e = t.next()) !== null; )
1329
+ switch (e.fieldId) {
1330
+ case Xs: {
1331
+ if (e.isNull) throw new Error();
1332
+ r.StreamId = e.asString();
1333
+ break;
1334
+ }
1335
+ case js: {
1336
+ if (e.isNull) throw new Error();
1337
+ r.Framerate = e.asFloat64();
1338
+ break;
1339
+ }
1340
+ case Ws: {
1341
+ if (e.isNull) throw new Error();
1342
+ r.Description = e.asString();
1343
+ break;
1344
+ }
1345
+ case zs: {
1346
+ if (e.isNull) {
1347
+ r.CorrelationId = void 0;
1348
+ break;
1349
+ }
1350
+ r.CorrelationId = e.asString();
1351
+ break;
1352
+ }
1353
+ case Js: {
1354
+ if (e.isNull) throw new Error();
1355
+ r.CodecDetails = e.asString();
1356
+ break;
1357
+ }
1358
+ case Qs: {
1359
+ if (e.isNull) throw new Error();
1360
+ r.Height = e.asInt32();
1361
+ break;
1362
+ }
1363
+ case qs: {
1364
+ if (e.isNull) throw new Error();
1365
+ r.SourceType = e.asString();
1366
+ break;
1367
+ }
1368
+ case Zs: {
1369
+ if (e.isNull) throw new Error();
1370
+ r.Codec = e.asInt32();
1371
+ break;
1372
+ }
1373
+ case tn: {
1374
+ if (e.isNull) throw new Error();
1375
+ r.Width = e.asInt32();
1376
+ break;
1377
+ }
1378
+ }
1379
+ }
1380
+ const sn = 65539, nn = 693643444, on = 976837618, an = 1144553441, En = 1497620243, In = 1559330978, _n = 1976546434, ln = 2271236852, cn = 2277643855, fn = 2469008121, un = 3042922213, Tn = 3064612128, hn = 3219210453, An = 3504054055, Nn = 3678477544, Sn = 3696445035, Cn = 3707543140, Rn = 3712281496, Dn = 3895362455, dn = 3897397815, wn = 3914217035, yn = 4225107827;
1381
+ function Ln(t) {
1382
+ const r = {};
1383
+ return Bt(r), r;
1384
+ }
1385
+ function Bt(t) {
1386
+ 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.ServerSessionId = "", t.SessionHash = "", t.ChannelUrl = "", t.SessionChannelUrl = "", t.FirstUserId = "", t.PrimaryUserId = "", t.OrganisationName = "", t.SpaceName = "", t.ChannelName = "", t.ServerRunType = Nt.Local, t.AppSourceType = St.Bundle, t.PublicAccess = !1, t.DebugMode = !1, t;
1387
+ }
1388
+ function Un(t, r) {
1389
+ const e = P.create(t);
1390
+ return On(e, r);
1391
+ }
1392
+ function On(t, r) {
1393
+ const e = r ?? Ln();
1394
+ return Bt(e), mn(t, e), e;
1395
+ }
1396
+ function mn(t, r) {
1397
+ let e;
1398
+ for (; (e = t.next()) !== null; )
1399
+ switch (e.fieldId) {
1400
+ case nn: {
1401
+ if (e.isNull) throw new Error();
1402
+ r.FirstUserId = e.asString();
1403
+ break;
1404
+ }
1405
+ case on: {
1406
+ if (e.isNull) throw new Error();
1407
+ r.SessionHash = e.asString();
1408
+ break;
1409
+ }
1410
+ case an: {
1411
+ if (e.isNull) throw new Error();
1412
+ r.Clients = gn(e.asDictionary());
1413
+ break;
1414
+ }
1415
+ case En: {
1416
+ if (e.isNull) throw new Error();
1417
+ r.TrackingStreams = Fn(e.asDictionary());
1418
+ break;
1419
+ }
1420
+ case In: {
1421
+ if (e.isNull) throw new Error();
1422
+ r.ChannelId = e.asString();
1423
+ break;
1424
+ }
1425
+ case _n: {
1426
+ if (e.isNull) throw new Error();
1427
+ r.AppSourceType = e.asInt32();
1428
+ break;
1429
+ }
1430
+ case ln: {
1431
+ if (e.isNull) throw new Error();
1432
+ r.SessionChannelUrl = e.asString();
1433
+ break;
1434
+ }
1435
+ case cn: {
1436
+ if (e.isNull) throw new Error();
1437
+ r.ChannelUrl = e.asString();
1438
+ break;
1439
+ }
1440
+ case fn: {
1441
+ if (e.isNull) throw new Error();
1442
+ r.ChannelName = e.asString();
1443
+ break;
1444
+ }
1445
+ case un: {
1446
+ if (e.isNull) throw new Error();
1447
+ r.PublicAccess = e.asBool();
1448
+ break;
1449
+ }
1450
+ case Tn: {
1451
+ if (e.isNull) throw new Error();
1452
+ r.ServerRunType = e.asInt32();
1453
+ break;
1454
+ }
1455
+ case hn: {
1456
+ if (e.isNull) throw new Error();
1457
+ r.OrganisationName = e.asString();
1458
+ break;
1459
+ }
1460
+ case An: {
1461
+ if (e.isNull) throw new Error();
1462
+ r.DebugMode = e.asBool();
1463
+ break;
1464
+ }
1465
+ case Nn: {
1466
+ if (e.isNull) throw new Error();
1467
+ r.Functions = bn(e.asDictionary());
1468
+ break;
1469
+ }
1470
+ case Sn: {
1471
+ if (e.isNull) throw new Error();
1472
+ r.UIStreams = Mn(e.asDictionary());
1473
+ break;
1474
+ }
1475
+ case Cn: {
1476
+ if (e.isNull) throw new Error();
1477
+ r.SpaceId = e.asString();
1478
+ break;
1479
+ }
1480
+ case Rn: {
1481
+ if (e.isNull) throw new Error();
1482
+ r.PrimaryUserId = e.asString();
1483
+ break;
1484
+ }
1485
+ case Dn: {
1486
+ if (e.isNull) throw new Error();
1487
+ r.AudioStreams = vn(e.asDictionary());
1488
+ break;
1489
+ }
1490
+ case dn: {
1491
+ if (e.isNull) throw new Error();
1492
+ r.VideoStreams = kn(e.asDictionary());
1493
+ break;
1494
+ }
1495
+ case wn: {
1496
+ if (e.isNull) throw new Error();
1497
+ r.ServerSessionId = e.asString();
1498
+ break;
1499
+ }
1500
+ case yn: {
1501
+ if (e.isNull) throw new Error();
1502
+ r.SpaceName = e.asString();
1503
+ break;
1504
+ }
1505
+ }
1506
+ }
1507
+ async function Pn(t, r) {
1508
+ const e = await Y(t, sn);
1509
+ return Un(e, r);
1510
+ }
1511
+ function gn(t) {
1512
+ const r = /* @__PURE__ */ Object.create(null);
1513
+ let e;
1514
+ for (; (e = t.next()) !== null; ) {
1515
+ const s = e.key.asInt32();
1516
+ r[s] = ur(e.value.asObject());
1517
+ }
1518
+ return r;
1519
+ }
1520
+ function Fn(t) {
1521
+ const r = /* @__PURE__ */ Object.create(null);
1522
+ let e;
1523
+ for (; (e = t.next()) !== null; ) {
1524
+ const s = e.key.asString();
1525
+ r[s] = _i(e.value.asObject());
1526
+ }
1527
+ return r;
1528
+ }
1529
+ function bn(t) {
1530
+ const r = /* @__PURE__ */ Object.create(null);
1531
+ let e;
1532
+ for (; (e = t.next()) !== null; ) {
1533
+ const s = e.key.asInt32();
1534
+ r[s] = Gn(e.value.asArray());
1535
+ }
1536
+ return r;
1537
+ }
1538
+ function Mn(t) {
1539
+ const r = /* @__PURE__ */ Object.create(null);
1540
+ let e;
1541
+ for (; (e = t.next()) !== null; ) {
1542
+ const s = e.key.asString();
1543
+ r[s] = Yn(e.value.asObject());
1544
+ }
1545
+ return r;
1546
+ }
1547
+ function vn(t) {
1548
+ const r = /* @__PURE__ */ Object.create(null);
1549
+ let e;
1550
+ for (; (e = t.next()) !== null; ) {
1551
+ const s = e.key.asString();
1552
+ r[s] = Jn(e.value.asObject());
1553
+ }
1554
+ return r;
1555
+ }
1556
+ function kn(t) {
1557
+ const r = /* @__PURE__ */ Object.create(null);
1558
+ let e;
1559
+ for (; (e = t.next()) !== null; ) {
1560
+ const s = e.key.asString();
1561
+ r[s] = si(e.value.asObject());
1562
+ }
1563
+ return r;
1564
+ }
1565
+ function Gn(t) {
1566
+ const r = [];
1567
+ let e;
1568
+ for (; (e = t.next()) !== null; )
1569
+ r.push(Pr(e.asObject()));
1570
+ return r;
1571
+ }
1572
+ const Bn = 161083277, Vn = 325678206, xn = 3469892363, pn = 3645544153;
1573
+ function Hn(t) {
1574
+ const r = {};
1575
+ return Vt(r), r;
1576
+ }
1577
+ function Vt(t) {
1578
+ return t.StreamId = "", t.ClientSessionId = 0, t.TrackId = 0, t.Info = mt(), t;
1579
+ }
1580
+ function Yn(t, r) {
1581
+ const e = r ?? Hn();
1582
+ return Vt(e), Kn(t, e), e;
1583
+ }
1584
+ function Kn(t, r) {
1585
+ let e;
1586
+ for (; (e = t.next()) !== null; )
1587
+ switch (e.fieldId) {
1588
+ case Bn: {
1589
+ if (e.isNull) throw new Error();
1590
+ r.StreamId = e.asString();
1591
+ break;
1592
+ }
1593
+ case Vn: {
1594
+ if (e.isNull) throw new Error();
1595
+ r.ClientSessionId = e.asInt32();
1596
+ break;
1597
+ }
1598
+ case xn: {
1599
+ if (e.isNull) throw new Error();
1600
+ r.TrackId = e.asInt32();
1601
+ break;
1602
+ }
1603
+ case pn: {
1604
+ if (e.isNull) throw new Error();
1605
+ r.Info = ns(e.asObject());
1606
+ break;
1607
+ }
1608
+ }
1609
+ }
1610
+ const $n = 161083277, Xn = 325678206, jn = 3469892363, Wn = 3645544153;
1611
+ function zn(t) {
1612
+ const r = {};
1613
+ return xt(r), r;
1614
+ }
1615
+ function xt(t) {
1616
+ return t.StreamId = "", t.ClientSessionId = 0, t.TrackId = 0, t.Info = Ct(), t;
1617
+ }
1618
+ function Jn(t, r) {
1619
+ const e = r ?? zn();
1620
+ return xt(e), Qn(t, e), e;
1621
+ }
1622
+ function Qn(t, r) {
1623
+ let e;
1624
+ for (; (e = t.next()) !== null; )
1625
+ switch (e.fieldId) {
1626
+ case $n: {
1627
+ if (e.isNull) throw new Error();
1628
+ r.StreamId = e.asString();
1629
+ break;
1630
+ }
1631
+ case Xn: {
1632
+ if (e.isNull) throw new Error();
1633
+ r.ClientSessionId = e.asInt32();
1634
+ break;
1635
+ }
1636
+ case jn: {
1637
+ if (e.isNull) throw new Error();
1638
+ r.TrackId = e.asInt32();
1639
+ break;
1640
+ }
1641
+ case Wn: {
1642
+ if (e.isNull) throw new Error();
1643
+ r.Info = Re(e.asObject());
1644
+ break;
1645
+ }
1646
+ }
1647
+ }
1648
+ const qn = 161083277, Zn = 325678206, ti = 3469892363, ei = 3645544153;
1649
+ function ri(t) {
1650
+ const r = {};
1651
+ return pt(r), r;
1652
+ }
1653
+ function pt(t) {
1654
+ return t.StreamId = "", t.ClientSessionId = 0, t.TrackId = 0, t.Info = kt(), t;
1655
+ }
1656
+ function si(t, r) {
1657
+ const e = r ?? ri();
1658
+ return pt(e), ni(t, e), e;
1659
+ }
1660
+ function ni(t, r) {
1661
+ let e;
1662
+ for (; (e = t.next()) !== null; )
1663
+ switch (e.fieldId) {
1664
+ case qn: {
1665
+ if (e.isNull) throw new Error();
1666
+ r.StreamId = e.asString();
1667
+ break;
1668
+ }
1669
+ case Zn: {
1670
+ if (e.isNull) throw new Error();
1671
+ r.ClientSessionId = e.asInt32();
1672
+ break;
1673
+ }
1674
+ case ti: {
1675
+ if (e.isNull) throw new Error();
1676
+ r.TrackId = e.asInt32();
1677
+ break;
1678
+ }
1679
+ case ei: {
1680
+ if (e.isNull) throw new Error();
1681
+ r.Info = en(e.asObject());
1682
+ break;
1683
+ }
1684
+ }
1685
+ }
1686
+ const ii = 161083277, oi = 325678206, ai = 3469892363, Ei = 3645544153;
1687
+ function Ii(t) {
1688
+ const r = {};
1689
+ return Ht(r), r;
1690
+ }
1691
+ function Ht(t) {
1692
+ return t.StreamId = "", t.ClientSessionId = 0, t.TrackId = 0, t.Info = Lt(), t;
1693
+ }
1694
+ function _i(t, r) {
1695
+ const e = r ?? Ii();
1696
+ return Ht(e), li(t, e), e;
1697
+ }
1698
+ function li(t, r) {
1699
+ let e;
1700
+ for (; (e = t.next()) !== null; )
1701
+ switch (e.fieldId) {
1702
+ case ii: {
1703
+ if (e.isNull) throw new Error();
1704
+ r.StreamId = e.asString();
1705
+ break;
1706
+ }
1707
+ case oi: {
1708
+ if (e.isNull) throw new Error();
1709
+ r.ClientSessionId = e.asInt32();
1710
+ break;
1711
+ }
1712
+ case ai: {
1713
+ if (e.isNull) throw new Error();
1714
+ r.TrackId = e.asInt32();
1715
+ break;
1716
+ }
1717
+ case Ei: {
1718
+ if (e.isNull) throw new Error();
1719
+ r.Info = zr(e.asObject());
1720
+ break;
1721
+ }
1722
+ }
1723
+ }
1724
+ function D(t) {
1725
+ return typeof t == "object" && t !== null && !Array.isArray(t);
1726
+ }
1727
+ function Yt(t) {
1728
+ const r = {}, e = Object.keys(t);
1729
+ for (let s = 0; s < e.length; s++) {
1730
+ const n = e[s];
1731
+ r[n] = t[n];
1732
+ }
1733
+ return r;
1734
+ }
1735
+ function Kt(t, r, e, s) {
1736
+ if (!(t === void 0 && s)) {
1737
+ if (Array.isArray(t)) {
1738
+ const n = [];
1739
+ for (let i = 0; i < t.length; i++) {
1740
+ const o = t[i];
1741
+ if (typeof o != "string")
1742
+ throw new Error(`Invalid styleIds entry at ${r}.styleIds[${i}] for element ${e}`);
1743
+ const a = o.trim();
1744
+ a.length !== 0 && n.push(a);
1745
+ }
1746
+ return n;
1747
+ }
1748
+ if (t != null)
1749
+ throw new Error(`Invalid styleIds for element ${e}`);
1750
+ return [];
1751
+ }
1752
+ }
1753
+ function nt(t, r) {
1754
+ if (!t || typeof t != "object")
1755
+ throw new Error(`Invalid UI node at ${r}`);
1756
+ const e = t.Id, s = t.Type, n = t.Props, i = t.Children, o = t.StyleIds;
1757
+ if (typeof e != "string")
1758
+ throw new Error(`Invalid or missing node id at ${r}`);
1759
+ if (typeof s != "string")
1760
+ throw new Error(`Invalid or missing node type for ${e}`);
1761
+ let a = {};
1762
+ if (n != null) {
1763
+ if (!D(n))
1764
+ throw new Error(`Invalid props for node ${e}`);
1765
+ a = Yt(n);
1766
+ }
1767
+ let I = [];
1768
+ Array.isArray(i) && (I = i.map(
1769
+ (l, c) => nt(l ?? {}, `${r}.children[${c}]`)
1770
+ ));
1771
+ const _ = Kt(o, r, e, !1), E = typeof t.SourceMarker == "string" ? t.SourceMarker : void 0;
1772
+ return {
1773
+ id: e,
1774
+ type: s,
1775
+ props: a,
1776
+ children: I,
1777
+ styleIds: _ ?? [],
1778
+ ...E ? { sourceMarker: E } : {}
1779
+ };
1780
+ }
1781
+ function ci(t, r) {
1782
+ if (!D(t))
1783
+ throw new Error(`Invalid text delta at ${r}`);
1784
+ const e = t.NodeId, s = t.PropertyName, n = t.Start, i = t.End, o = t.InsertedText;
1785
+ if (typeof e != "string" || e.length === 0)
1786
+ throw new Error(`Invalid text delta node id at ${r}`);
1787
+ if (typeof s != "string" || s.length === 0)
1788
+ throw new Error(`Invalid text delta property name at ${r}`);
1789
+ if (typeof n != "number" || !Number.isFinite(n))
1790
+ throw new Error(`Invalid text delta start at ${r}`);
1791
+ if (typeof o != "string")
1792
+ throw new Error(`Invalid text delta inserted text at ${r}`);
1793
+ let a;
1794
+ if (typeof i == "number") {
1795
+ if (!Number.isFinite(i))
1796
+ throw new Error(`Invalid text delta end at ${r}`);
1797
+ a = i;
1798
+ } else if (i != null)
1799
+ throw new Error(`Invalid text delta end at ${r}`);
1800
+ return {
1801
+ nodeId: e,
1802
+ propertyName: s,
1803
+ start: n,
1804
+ end: a,
1805
+ insertedText: o
1806
+ };
1807
+ }
1808
+ function fi(t, r) {
1809
+ if (!D(t))
1810
+ throw new Error(`Invalid child insert at ${r}`);
1811
+ const e = t.Index, s = t.Node;
1812
+ if (typeof e != "number" || !Number.isFinite(e))
1813
+ throw new Error(`Invalid child insert index at ${r}`);
1814
+ if (!D(s))
1815
+ throw new Error(`Invalid child insert node at ${r}`);
1816
+ return {
1817
+ index: e,
1818
+ node: nt(s, `${r}.node`)
1819
+ };
1820
+ }
1821
+ function ui(t, r) {
1822
+ if (!D(t))
1823
+ throw new Error(`Invalid child move at ${r}`);
1824
+ const e = t.NodeId, s = t.FromIndex, n = t.ToIndex;
1825
+ if (typeof e != "string" || e.length === 0)
1826
+ throw new Error(`Invalid child move nodeId at ${r}`);
1827
+ if (typeof s != "number" || !Number.isFinite(s))
1828
+ throw new Error(`Invalid child move fromIndex at ${r}`);
1829
+ if (typeof n != "number" || !Number.isFinite(n))
1830
+ throw new Error(`Invalid child move toIndex at ${r}`);
1831
+ return {
1832
+ nodeId: e,
1833
+ fromIndex: s,
1834
+ toIndex: n
1835
+ };
1836
+ }
1837
+ function Ti(t, r) {
1838
+ if (!D(t))
1839
+ throw new Error(`Invalid child remove at ${r}`);
1840
+ const e = t.NodeId, s = t.Index;
1841
+ if (typeof e != "string" || e.length === 0)
1842
+ throw new Error(`Invalid child remove nodeId at ${r}`);
1843
+ if (typeof s != "number" || !Number.isFinite(s))
1844
+ throw new Error(`Invalid child remove index at ${r}`);
1845
+ return {
1846
+ nodeId: e,
1847
+ index: s
1848
+ };
1849
+ }
1850
+ function hi(t, r) {
1851
+ if (!D(t))
1852
+ throw new Error(`Invalid node change at ${r}`);
1853
+ const e = t.nodeId;
1854
+ if (typeof e != "string" || e.length === 0)
1855
+ throw new Error(`Invalid node change nodeId at ${r}`);
1856
+ const s = Array.isArray(t.inserts) ? t.inserts.map(
1857
+ (E, l) => fi(E ?? {}, `${r}.inserts[${l}]`)
1858
+ ) : void 0, n = Array.isArray(t.moves) ? t.moves.map(
1859
+ (E, l) => ui(E ?? {}, `${r}.moves[${l}]`)
1860
+ ) : void 0, i = Array.isArray(t.removals) ? t.removals.map(
1861
+ (E, l) => Ti(E ?? {}, `${r}.removals[${l}]`)
1862
+ ) : void 0;
1863
+ let o;
1864
+ if (D(t.changedProps)) {
1865
+ o = /* @__PURE__ */ new Map();
1866
+ for (const [E, l] of Object.entries(t.changedProps)) {
1867
+ if (!D(l))
1868
+ continue;
1869
+ const c = l.New;
1870
+ c === void 0 ? o.set(E, void 0) : D(c) ? o.set(E, Yt(c)) : o.set(E, c);
1871
+ }
1872
+ }
1873
+ const a = Array.isArray(t.textUpdates) ? t.textUpdates.map(
1874
+ (E, l) => ci(E ?? {}, `${r}.textUpdates[${l}]`)
1875
+ ) : void 0, I = t.styleIds, _ = I !== void 0 ? Kt(I, r, e, !0) : void 0;
1876
+ return {
1877
+ nodeId: e,
1878
+ ...s && s.length > 0 ? { inserts: s } : {},
1879
+ ...n && n.length > 0 ? { moves: n } : {},
1880
+ ...i && i.length > 0 ? { removals: i } : {},
1881
+ ...o && o.size > 0 ? { changedProps: o } : {},
1882
+ ...a && a.length > 0 ? { textUpdates: a } : {},
1883
+ ..._ !== void 0 ? { styleIds: _ } : {}
1884
+ };
1885
+ }
1886
+ function Ai(t) {
1887
+ const r = /* @__PURE__ */ new Map();
1888
+ for (const [e, s] of Object.entries(t))
1889
+ r.set(e, s);
1890
+ return r;
1891
+ }
1892
+ function Ni(t, r, e) {
1893
+ if (!t || typeof t != "object")
1894
+ throw new d("UI update graph is missing");
1895
+ const s = nt(t, "graph");
1896
+ if (s.type !== "root")
1897
+ throw new d('UI update root element must have type "root"');
1898
+ const n = Ci(s.props, r);
1899
+ return {
1900
+ type: "full",
1901
+ version: e,
1902
+ root: s,
1903
+ metadata: n
1904
+ };
1905
+ }
1906
+ function Si(t, r, e) {
1907
+ if (!Array.isArray(t))
1908
+ throw new d("UI diff changes must be an array");
1909
+ if (!D(r))
1910
+ throw new d("UI diff metadata must be an object");
1911
+ const s = r.viewId;
1912
+ if (typeof s != "string" || s.length === 0)
1913
+ throw new d("UI diff metadata is missing viewId");
1914
+ const n = t.map(
1915
+ (a, I) => hi(a ?? {}, `changes[${I}]`)
1916
+ ), i = typeof r.isUpdate == "boolean" ? r.isUpdate : void 0, o = {
1917
+ viewId: s,
1918
+ ...i !== void 0 ? { isUpdate: i } : {}
1919
+ };
1920
+ return {
1921
+ type: "diff",
1922
+ version: e,
1923
+ changes: n,
1924
+ metadata: o
1925
+ };
1926
+ }
1927
+ function Ci(t, r) {
1928
+ const e = t.viewId;
1929
+ if (typeof e != "string" || e.length === 0)
1930
+ throw new d("UI update root is missing viewId");
1931
+ let s = e, n = typeof t.isUpdate == "boolean" ? t.isUpdate : void 0;
1932
+ return D(r) && (typeof r.viewId == "string" && r.viewId.length > 0 && (s = r.viewId), typeof r.isUpdate == "boolean" && (n = r.isUpdate)), {
1933
+ viewId: s,
1934
+ ...n !== void 0 ? { isUpdate: n } : {}
1935
+ };
1936
+ }
1937
+ class d extends Error {
1938
+ constructor(r, e) {
1939
+ super(r), this.causeError = e, this.name = "UiUpdateParseError", e instanceof Error && (this.stack = e.stack);
1940
+ }
1941
+ }
1942
+ function $t(t) {
1943
+ let r;
1944
+ try {
1945
+ r = JSON.parse(t.Json);
1946
+ } catch (o) {
1947
+ throw new d("Failed to parse UIUpdate.Json payload", o);
1948
+ }
1949
+ if (!r || typeof r != "object")
1950
+ throw new d("UI update snapshot must be an object");
1951
+ const { type: e, version: s } = r;
1952
+ if (e !== "full" && e !== "diff")
1953
+ throw new d(`Unknown UI update type: ${String(e)}`);
1954
+ if (typeof s != "number")
1955
+ throw new d("UI update version must be a number");
1956
+ const n = e === "full" ? Ni(r.graph, r.metadata, s) : Si(r.changes, r.metadata, s), i = t.Payloads ? Ai(t.Payloads) : /* @__PURE__ */ new Map();
1957
+ return {
1958
+ snapshot: n,
1959
+ payloads: i
1960
+ };
1961
+ }
1962
+ let Ri = 1;
1963
+ const Di = /* @__PURE__ */ new Map(), di = {
1964
+ 0: "DEBUG",
1965
+ 1: "INFO",
1966
+ 2: "WARN",
1967
+ 3: "ERROR",
1968
+ 4: "NONE"
1969
+ };
1970
+ function wi(t, r) {
1971
+ return `[${t}] ${r}`;
1972
+ }
1973
+ function $(t, r, e, s) {
1974
+ const n = (/* @__PURE__ */ new Date()).toISOString(), i = di[t], o = {
1975
+ timestamp: n,
1976
+ level: t,
1977
+ levelName: i,
1978
+ component: r,
1979
+ message: e,
1980
+ args: s
1981
+ };
1982
+ for (const [a, I] of Di) {
1983
+ const _ = I?.minLevel ?? 2;
1984
+ if (t >= _)
1985
+ try {
1986
+ a(o);
1987
+ } catch {
1988
+ }
1989
+ }
1990
+ if (Ri <= t) {
1991
+ const a = wi(r, e);
1992
+ switch (t) {
1993
+ case 0:
1994
+ console.debug(a, ...s);
1995
+ break;
1996
+ case 1:
1997
+ console.info(a, ...s);
1998
+ break;
1999
+ case 2:
2000
+ console.warn(a, ...s);
2001
+ break;
2002
+ case 3:
2003
+ console.error(a, ...s);
2004
+ break;
2005
+ }
2006
+ }
2007
+ }
2008
+ function yi(t) {
2009
+ return {
2010
+ debug(r, ...e) {
2011
+ $(0, t, r, e);
2012
+ },
2013
+ info(r, ...e) {
2014
+ $(1, t, r, e);
2015
+ },
2016
+ warn(r, ...e) {
2017
+ $(2, t, r, e);
2018
+ },
2019
+ error(r, ...e) {
2020
+ $(3, t, r, e);
2021
+ }
2022
+ };
2023
+ }
2024
+ class Li {
2025
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2026
+ cache = /* @__PURE__ */ new Map();
2027
+ /**
2028
+ * Get a cached void handler (no payload) for a node/action combination.
2029
+ * Creates and caches the handler if it doesn't exist.
2030
+ */
2031
+ getHandler(r, e, s) {
2032
+ const n = `${r}:${e}`;
2033
+ let i = this.cache.get(n);
2034
+ return i || (i = () => s(e), this.cache.set(n, i)), i;
2035
+ }
2036
+ /**
2037
+ * Get a cached handler that accepts a payload.
2038
+ * Creates and caches the handler if it doesn't exist.
2039
+ */
2040
+ getHandlerWithPayload(r, e, s) {
2041
+ const n = `${r}:${e}:payload`;
2042
+ let i = this.cache.get(n);
2043
+ return i || (i = (o) => s(e, o), this.cache.set(n, i)), i;
2044
+ }
2045
+ /**
2046
+ * Get a cached handler for boolean payloads.
2047
+ */
2048
+ getBooleanHandler(r, e, s) {
2049
+ return this.getHandlerWithPayload(r, e, s);
2050
+ }
2051
+ /**
2052
+ * Get a cached handler for string payloads.
2053
+ */
2054
+ getStringHandler(r, e, s) {
2055
+ return this.getHandlerWithPayload(r, e, s);
2056
+ }
2057
+ /**
2058
+ * Get a cached handler for number payloads.
2059
+ */
2060
+ getNumberHandler(r, e, s) {
2061
+ return this.getHandlerWithPayload(r, e, s);
2062
+ }
2063
+ /**
2064
+ * Get a cached handler for number array payloads.
2065
+ */
2066
+ getNumberArrayHandler(r, e, s) {
2067
+ return this.getHandlerWithPayload(r, e, s);
2068
+ }
2069
+ /**
2070
+ * Get a cached handler for nullable boolean payloads.
2071
+ */
2072
+ getNullableBooleanHandler(r, e, s) {
2073
+ const n = `${r}:${e}:nullable-bool`;
2074
+ let i = this.cache.get(n);
2075
+ return i || (i = (o) => s(e, o ?? null), this.cache.set(n, i)), i;
2076
+ }
2077
+ /**
2078
+ * Invalidate all cached handlers for a specific node.
2079
+ * Call this when a node is removed from the tree.
2080
+ */
2081
+ invalidateNode(r) {
2082
+ const e = `${r}:`;
2083
+ for (const s of this.cache.keys())
2084
+ s.startsWith(e) && this.cache.delete(s);
2085
+ }
2086
+ /**
2087
+ * Invalidate a specific handler.
2088
+ */
2089
+ invalidateHandler(r, e) {
2090
+ this.cache.delete(`${r}:${e}`), this.cache.delete(`${r}:${e}:payload`), this.cache.delete(`${r}:${e}:nullable-bool`);
2091
+ }
2092
+ /**
2093
+ * Clear all cached handlers.
2094
+ */
2095
+ clear() {
2096
+ this.cache.clear();
2097
+ }
2098
+ /**
2099
+ * Get the number of cached handlers (for debugging/testing).
2100
+ */
2101
+ get size() {
2102
+ return this.cache.size;
2103
+ }
2104
+ }
2105
+ const Ui = yi("UiStreamStore");
2106
+ class Oi {
2107
+ views = /* @__PURE__ */ new Map();
2108
+ listeners = /* @__PURE__ */ new Set();
2109
+ payloads = /* @__PURE__ */ new Map();
2110
+ snapshotMode = !1;
2111
+ snapshot = {
2112
+ views: /* @__PURE__ */ new Map(),
2113
+ payloads: /* @__PURE__ */ new Map(),
2114
+ version: -1
2115
+ };
2116
+ rootViewId;
2117
+ // Per-node subscriptions for granular updates
2118
+ nodeListeners = /* @__PURE__ */ new Map();
2119
+ changedNodeIds = /* @__PURE__ */ new Set();
2120
+ nodeVersions = /* @__PURE__ */ new Map();
2121
+ structureChanged = !1;
2122
+ // Dirty flags for lazy snapshot rebuilding - start true to ensure first snapshot builds correctly
2123
+ viewsDirty = !0;
2124
+ payloadsDirty = !0;
2125
+ // Handler cache for stable event handlers
2126
+ handlerCache = new Li();
2127
+ apply(r) {
2128
+ if (this.snapshotMode) {
2129
+ if (r.snapshot.type !== "full")
2130
+ return !1;
2131
+ this.snapshotMode = !1, this.views.clear(), this.payloads.clear(), this.rootViewId = void 0, this.viewsDirty = !0, this.payloadsDirty = !0, this.snapshot = {
2132
+ views: /* @__PURE__ */ new Map(),
2133
+ payloads: /* @__PURE__ */ new Map(),
2134
+ version: -1
2135
+ };
2136
+ }
2137
+ const { snapshot: e, payloads: s } = r, { metadata: n } = e, { viewId: i } = n;
2138
+ let o = this.views.get(i);
2139
+ o || (o = {
2140
+ version: 0
2141
+ }, this.views.set(i, o));
2142
+ const a = e.type === "diff" && n.isUpdate === !0;
2143
+ if (e.version < o.version || e.version === o.version && !a)
2144
+ return !1;
2145
+ let I = !1;
2146
+ this.rootViewId || (this.rootViewId = i, I = !0, this.structureChanged = !0);
2147
+ const _ = o.root;
2148
+ if (e.type === "full")
2149
+ o.root = e.root, o.version = e.version, I = !0, this.viewsDirty = !0, this.structureChanged = !0, e.root && V(e.root, this.changedNodeIds);
2150
+ else {
2151
+ if (!_)
2152
+ return !1;
2153
+ const E = Pi(_, e.changes);
2154
+ E !== _ ? (o.root = E, I = !0, this.viewsDirty = !0, J(_, E, this.changedNodeIds)) : o.root = E, o.version = e.version;
2155
+ }
2156
+ for (const [E, l] of s)
2157
+ this.payloads.get(E) !== l && (this.payloads.set(E, l), I = !0, this.payloadsDirty = !0);
2158
+ return I ? (this.commitSnapshot(), this.notify(), !0) : (o.version = e.version, !1);
2159
+ }
2160
+ // Ignore further diffs (keeping the current tree visible) until the next full snapshot arrives,
2161
+ // which then replaces the tree wholesale. Used on soft reconnect: the cached tree may be missing
2162
+ // diffs lost while the transport was down, so incoming diffs can no longer be trusted — but the
2163
+ // tree stays on screen (no blank) until the server's resync full snapshot lands.
2164
+ enterSnapshotMode() {
2165
+ this.snapshotMode = !0;
2166
+ }
2167
+ replaceFromWire(r) {
2168
+ const e = {
2169
+ rootViewId: r.rootViewId,
2170
+ views: new Map(r.views),
2171
+ payloads: new Map(r.payloads),
2172
+ version: r.version
2173
+ };
2174
+ return this.replaceSnapshot(e);
2175
+ }
2176
+ patchFromOp(r) {
2177
+ this.snapshotMode = !0;
2178
+ const e = r.expectedBaseVersion;
2179
+ if (e !== void 0 && this.snapshot.version !== e)
2180
+ return !1;
2181
+ let s = !1, n = null, i = null;
2182
+ const o = () => (n || (n = new Map(this.snapshot.views)), n), a = () => (i || (i = new Map(this.snapshot.payloads)), i);
2183
+ if (r.deleteViews && r.deleteViews.length > 0)
2184
+ for (const E of r.deleteViews)
2185
+ o().delete(E) && (s = !0, this.structureChanged = !0);
2186
+ if (r.upsertViews && r.upsertViews.length > 0)
2187
+ for (const [E, l] of r.upsertViews) {
2188
+ const c = o(), L = c.get(E);
2189
+ L !== l && (c.set(E, l), s = !0, L ? J(L, l, this.changedNodeIds) : (V(l, this.changedNodeIds), this.structureChanged = !0));
2190
+ }
2191
+ if (r.deletePayloads && r.deletePayloads.length > 0)
2192
+ for (const E of r.deletePayloads)
2193
+ a().delete(E) && (s = !0);
2194
+ if (r.upsertPayloads && r.upsertPayloads.length > 0)
2195
+ for (const [E, l] of r.upsertPayloads) {
2196
+ const c = a();
2197
+ c.get(E) !== l && (c.set(E, l), s = !0);
2198
+ }
2199
+ const I = r.rootViewId ?? this.snapshot.rootViewId;
2200
+ I !== this.snapshot.rootViewId && (s = !0, this.structureChanged = !0);
2201
+ const _ = r.nextVersion;
2202
+ if (_ !== this.snapshot.version && (s = !0), !s)
2203
+ return this.snapshot = { ...this.snapshot, version: _ }, !1;
2204
+ for (const E of this.changedNodeIds)
2205
+ this.nodeVersions.set(E, (this.nodeVersions.get(E) ?? 0) + 1);
2206
+ return this.snapshot = {
2207
+ rootViewId: I,
2208
+ views: n ?? new Map(this.snapshot.views),
2209
+ payloads: i ?? new Map(this.snapshot.payloads),
2210
+ version: _
2211
+ }, this.notify(), !0;
2212
+ }
2213
+ replaceSnapshot(r) {
2214
+ this.snapshotMode = !0;
2215
+ const e = this.snapshot, s = e.version !== r.version || e.rootViewId !== r.rootViewId || e.views.size !== r.views.size || e.payloads.size !== r.payloads.size;
2216
+ (e.rootViewId !== r.rootViewId || e.views.size !== r.views.size) && (this.structureChanged = !0);
2217
+ for (const [n, i] of r.views) {
2218
+ const o = e.views.get(n);
2219
+ o ? J(o, i, this.changedNodeIds) : (V(i, this.changedNodeIds), this.structureChanged = !0);
2220
+ }
2221
+ for (const n of this.changedNodeIds)
2222
+ this.nodeVersions.set(n, (this.nodeVersions.get(n) ?? 0) + 1);
2223
+ return this.snapshot = r, s && this.notify(), s;
2224
+ }
2225
+ clear() {
2226
+ (this.snapshot.rootViewId === void 0 || this.snapshot.rootViewId.length === 0) && this.snapshot.views.size === 0 && this.snapshot.payloads.size === 0 || (this.snapshotMode = !0, this.views.clear(), this.payloads.clear(), this.rootViewId = void 0, this.viewsDirty = !0, this.payloadsDirty = !0, this.snapshot = {
2227
+ views: /* @__PURE__ */ new Map(),
2228
+ payloads: /* @__PURE__ */ new Map(),
2229
+ version: -1
2230
+ }, this.structureChanged = !0, this.notify());
2231
+ }
2232
+ getSnapshot() {
2233
+ return this.snapshot;
2234
+ }
2235
+ subscribe(r) {
2236
+ return this.listeners.add(r), () => {
2237
+ this.listeners.delete(r);
2238
+ };
2239
+ }
2240
+ subscribeNode(r, e) {
2241
+ let s = this.nodeListeners.get(r);
2242
+ return s || (s = /* @__PURE__ */ new Set(), this.nodeListeners.set(r, s)), s.add(e), () => {
2243
+ s && (s.delete(e), s.size === 0 && this.nodeListeners.delete(r));
2244
+ };
2245
+ }
2246
+ getNode(r) {
2247
+ const e = this.snapshot.views.get(r);
2248
+ if (e)
2249
+ return e;
2250
+ for (const s of this.snapshot.views.values()) {
2251
+ const n = Wt(s, r);
2252
+ if (n)
2253
+ return n;
2254
+ }
2255
+ }
2256
+ getNodeVersion(r) {
2257
+ return this.nodeVersions.get(r) ?? 0;
2258
+ }
2259
+ notifyNodes() {
2260
+ if (this.changedNodeIds.size === 0 || this.nodeListeners.size === 0) {
2261
+ this.changedNodeIds.clear();
2262
+ return;
2263
+ }
2264
+ for (const r of this.changedNodeIds) {
2265
+ const e = this.nodeListeners.get(r);
2266
+ if (e)
2267
+ for (const s of e)
2268
+ s();
2269
+ }
2270
+ this.changedNodeIds.clear();
2271
+ }
2272
+ commitSnapshot() {
2273
+ let r, e;
2274
+ if (this.viewsDirty) {
2275
+ const n = /* @__PURE__ */ new Map();
2276
+ for (const [i, o] of this.views)
2277
+ o.root && n.set(i, o.root);
2278
+ r = n, this.viewsDirty = !1;
2279
+ } else
2280
+ r = this.snapshot.views;
2281
+ this.payloadsDirty ? (e = new Map(this.payloads), this.payloadsDirty = !1) : e = this.snapshot.payloads;
2282
+ let s = this.rootViewId && this.views.has(this.rootViewId) ? this.views.get(this.rootViewId)?.version : void 0;
2283
+ if (s === void 0)
2284
+ for (const n of this.views.values())
2285
+ s = s === void 0 ? n.version : Math.max(s, n.version);
2286
+ this.snapshot = {
2287
+ rootViewId: this.rootViewId,
2288
+ views: r,
2289
+ payloads: e,
2290
+ version: s
2291
+ };
2292
+ for (const n of this.changedNodeIds)
2293
+ this.nodeVersions.set(n, (this.nodeVersions.get(n) ?? 0) + 1);
2294
+ }
2295
+ notify() {
2296
+ if (this.notifyNodes(), this.structureChanged) {
2297
+ this.structureChanged = !1;
2298
+ for (const r of this.listeners)
2299
+ r();
2300
+ }
2301
+ }
2302
+ }
2303
+ class mi {
2304
+ streams = /* @__PURE__ */ new Map();
2305
+ listeners = /* @__PURE__ */ new Set();
2306
+ apply(r, e) {
2307
+ const n = this.getOrCreateStreamEntry(r).store.apply(e);
2308
+ return n && this.notify(r), n;
2309
+ }
2310
+ applyStoreOp(r) {
2311
+ if (r.type === "ReplaceStreamSnapshot") {
2312
+ const e = this.getOrCreateStreamEntry(r.snapshot.streamId), s = e.category !== r.snapshot.category;
2313
+ return e.category = r.snapshot.category, e.store.replaceFromWire(r.snapshot) || s ? (this.notify(r.snapshot.streamId), !0) : !1;
2314
+ }
2315
+ if (r.type === "PatchStreamSnapshot") {
2316
+ const e = this.getOrCreateStreamEntry(r.streamId), s = r.category !== void 0 && e.category !== r.category;
2317
+ return r.category !== void 0 && (e.category = r.category), e.store.patchFromOp(r) || s ? (this.notify(r.streamId), !0) : !1;
2318
+ }
2319
+ if (r.type === "ClearStream") {
2320
+ const e = this.streams.get(r.streamId);
2321
+ return e ? (e.store.clear(), this.notify(r.streamId), !0) : !1;
2322
+ }
2323
+ return r.type === "RemoveStream" ? this.streams.delete(r.streamId) ? (this.notify(r.streamId), !0) : !1 : r.type === "SetStreamCategory" ? (this.setCategory(r.streamId, r.category), !0) : !1;
2324
+ }
2325
+ applyStoreOps(r) {
2326
+ for (const e of r)
2327
+ this.applyStoreOp(e);
2328
+ }
2329
+ clear(r) {
2330
+ const e = this.streams.get(r);
2331
+ e && (e.store.clear(), this.notify(r));
2332
+ }
2333
+ remove(r) {
2334
+ this.streams.delete(r) && this.notify(r);
2335
+ }
2336
+ // Puts every existing stream into snapshot mode (see UiStreamStore.enterSnapshotMode) so each one
2337
+ // keeps its current tree visible and ignores diffs until the server's next full snapshot resyncs it.
2338
+ enterSnapshotModeAll() {
2339
+ for (const r of this.streams.values())
2340
+ r.store.enterSnapshotMode();
2341
+ }
2342
+ setCategory(r, e) {
2343
+ const s = this.getOrCreateStreamEntry(r);
2344
+ s.category !== e && (s.category = e, this.notify(r));
2345
+ }
2346
+ getSnapshot(r) {
2347
+ const e = this.streams.get(r);
2348
+ return e ? {
2349
+ ...e.store.getSnapshot(),
2350
+ streamId: r,
2351
+ category: e.category
2352
+ } : void 0;
2353
+ }
2354
+ getSnapshots() {
2355
+ const r = [];
2356
+ for (const [e, s] of this.streams) {
2357
+ const n = s.store.getSnapshot();
2358
+ r.push({
2359
+ ...n,
2360
+ streamId: e,
2361
+ category: s.category
2362
+ });
2363
+ }
2364
+ return r;
2365
+ }
2366
+ subscribe(r) {
2367
+ return this.listeners.add(r), () => {
2368
+ this.listeners.delete(r);
2369
+ };
2370
+ }
2371
+ getOrCreateStreamEntry(r) {
2372
+ let e = this.streams.get(r);
2373
+ return e || (e = { store: new Oi() }, this.streams.set(r, e)), e;
2374
+ }
2375
+ notify(r) {
2376
+ for (const e of this.listeners)
2377
+ e(r);
2378
+ }
2379
+ }
2380
+ function Pi(t, r, e) {
2381
+ if (r.length === 0)
2382
+ return t;
2383
+ const s = /* @__PURE__ */ new Map();
2384
+ for (const n of r)
2385
+ s.set(n.nodeId, n);
2386
+ return Xt(t, s);
2387
+ }
2388
+ function Xt(t, r, e) {
2389
+ const s = r.get(t.id);
2390
+ let n = t, i = !1;
2391
+ if (s?.textUpdates && s.textUpdates.length > 0) {
2392
+ const f = Mi(t, s.textUpdates);
2393
+ n = f.node, i = f.changed;
2394
+ }
2395
+ let o = !1, a = n.props;
2396
+ if (s?.changedProps && s.changedProps.size > 0)
2397
+ for (const [f, N] of s.changedProps.entries()) {
2398
+ const u = a[f];
2399
+ if (N === void 0)
2400
+ (u !== void 0 || f in a) && (o || (a = B(a), o = !0), delete a[f]);
2401
+ else if (q(N)) {
2402
+ const h = B(N);
2403
+ k(h, u) || (o || (a = B(a), o = !0), a[f] = h);
2404
+ } else
2405
+ k(N, u) || (o || (a = B(a), o = !0), a[f] = N);
2406
+ }
2407
+ let I = !1, _ = n.styleIds;
2408
+ s?.styleIds !== void 0 && (zt(n.styleIds, s.styleIds) || (_ = s.styleIds, I = !0));
2409
+ const E = n.children ?? [];
2410
+ let l = E, c = !1;
2411
+ if (s?.removals && s.removals.length > 0 || s?.moves && s.moves.length > 0 || s?.inserts && s.inserts.length > 0) {
2412
+ const f = l.slice();
2413
+ if (s?.removals && s.removals.length > 0) {
2414
+ const N = [...s.removals].sort((u, h) => h.index - u.index);
2415
+ for (const u of N)
2416
+ if (u.index >= 0 && u.index < f.length && f[u.index].id === u.nodeId)
2417
+ f.splice(u.index, 1);
2418
+ else {
2419
+ const h = f.findIndex((R) => R.id === u.nodeId);
2420
+ h >= 0 && f.splice(h, 1);
2421
+ }
2422
+ c = !0;
2423
+ }
2424
+ if (s?.moves && s.moves.length > 0) {
2425
+ const N = [...s.moves].sort((h, R) => h.toIndex - R.toIndex), u = /* @__PURE__ */ new Map();
2426
+ for (const h of N) {
2427
+ const R = f.findIndex((z) => z.id === h.nodeId);
2428
+ R >= 0 && (u.set(h.nodeId, f[R]), f.splice(R, 1));
2429
+ }
2430
+ for (const h of N) {
2431
+ const R = u.get(h.nodeId);
2432
+ if (R) {
2433
+ const z = Math.min(h.toIndex, f.length);
2434
+ f.splice(z, 0, R);
2435
+ }
2436
+ }
2437
+ c = !0;
2438
+ }
2439
+ if (s?.inserts && s.inserts.length > 0) {
2440
+ const N = [...s.inserts].sort((u, h) => u.index - h.index);
2441
+ for (const u of N) {
2442
+ f.some((R) => R.id === u.node.id) && Ui.warn(`Duplicate node id '${u.node.id}' (type '${u.node.type}') inserted next to an existing sibling — UI tree diverged from the server`);
2443
+ const h = Math.min(u.index, f.length);
2444
+ f.splice(h, 0, u.node);
2445
+ }
2446
+ c = !0;
2447
+ }
2448
+ l = f;
2449
+ }
2450
+ let w;
2451
+ for (let f = 0; f < l.length; f++) {
2452
+ const N = l[f], u = Xt(N, r);
2453
+ u !== N && (w || (w = l.slice()), w[f] = u);
2454
+ }
2455
+ return w && (l = w, c = !0), i || o || I || c ? !o && !c && !I ? n : {
2456
+ id: t.id,
2457
+ type: t.type,
2458
+ props: o ? a : n.props,
2459
+ children: c ? l : E,
2460
+ styleIds: I ? _ : n.styleIds,
2461
+ ...t.sourceMarker ? { sourceMarker: t.sourceMarker } : {}
2462
+ } : t;
2463
+ }
2464
+ function V(t, r) {
2465
+ if (r.add(t.id), t.children)
2466
+ for (const e of t.children)
2467
+ V(e, r);
2468
+ }
2469
+ const X = [];
2470
+ function gi(t) {
2471
+ for (; X.length <= t; )
2472
+ X.push(/* @__PURE__ */ new Map());
2473
+ return X[t].clear(), X[t];
2474
+ }
2475
+ function J(t, r, e) {
2476
+ jt(t, r, e, 0);
2477
+ }
2478
+ function jt(t, r, e, s) {
2479
+ if (t === r)
2480
+ return;
2481
+ (t.type !== r.type || !Fi(t.props, r.props) || !zt(t.styleIds, r.styleIds)) && e.add(r.id);
2482
+ const i = t.children ?? [], o = r.children ?? [];
2483
+ if (i !== o) {
2484
+ const a = gi(s);
2485
+ for (const _ of i)
2486
+ a.set(_.id, _);
2487
+ let I = !1;
2488
+ for (let _ = 0; _ < o.length; _++) {
2489
+ const E = o[_], l = a.get(E.id);
2490
+ l ? (jt(l, E, e, s + 1), !I && _ < i.length && i[_].id !== E.id && (I = !0)) : (V(E, e), I = !0);
2491
+ }
2492
+ (i.length !== o.length || I) && e.add(r.id);
2493
+ }
2494
+ }
2495
+ function Fi(t, r) {
2496
+ return k(t, r);
2497
+ }
2498
+ function Wt(t, r) {
2499
+ if (t.id === r)
2500
+ return t;
2501
+ if (t.children)
2502
+ for (const e of t.children) {
2503
+ const s = Wt(e, r);
2504
+ if (s)
2505
+ return s;
2506
+ }
2507
+ }
2508
+ function zt(t, r) {
2509
+ return k(t, r);
2510
+ }
2511
+ function bi(t, r) {
2512
+ if (r.length === 0)
2513
+ return t;
2514
+ const e = [...r].sort((i, o) => i.start - o.start);
2515
+ let s = t, n = 0;
2516
+ for (const i of e) {
2517
+ const o = ot(i.start + n, 0, s.length);
2518
+ if (i.end == null) {
2519
+ const E = s.slice(o), l = vi(E, i.insertedText);
2520
+ s = s.slice(0, o) + i.insertedText + E.slice(l), n += i.insertedText.length - l;
2521
+ continue;
2522
+ }
2523
+ const a = i.end + n, I = ot(a, o, s.length), _ = I - o;
2524
+ s = s.slice(0, o) + i.insertedText + s.slice(I), n += i.insertedText.length - _;
2525
+ }
2526
+ return s;
2527
+ }
2528
+ function Mi(t, r, e) {
2529
+ if (r.length === 0)
2530
+ return { node: t, changed: !1 };
2531
+ const s = /* @__PURE__ */ new Map();
2532
+ for (const n of r) {
2533
+ const i = s.get(n.nodeId);
2534
+ i ? i.push(n) : s.set(n.nodeId, [n]);
2535
+ }
2536
+ return Jt(t, s);
2537
+ }
2538
+ function Jt(t, r, e) {
2539
+ const s = r.get(t.id) ?? [];
2540
+ let n = !1, i = t.props;
2541
+ if (s.length > 0) {
2542
+ const _ = /* @__PURE__ */ new Map();
2543
+ for (const E of s) {
2544
+ const l = _.get(E.propertyName);
2545
+ l ? l.push(E) : _.set(E.propertyName, [E]);
2546
+ }
2547
+ for (const [E, l] of _.entries()) {
2548
+ const c = i[E], w = bi(typeof c == "string" ? c : "", l);
2549
+ n || (i = B(i), n = !0), i[E] = w;
2550
+ }
2551
+ }
2552
+ let o = !1;
2553
+ const a = t.children ?? [];
2554
+ let I = a;
2555
+ if (a.length > 0) {
2556
+ let _;
2557
+ for (let E = 0; E < a.length; E++) {
2558
+ const l = a[E], c = Jt(l, r);
2559
+ c.changed && (_ || (_ = [...a]), _[E] = c.node);
2560
+ }
2561
+ _ && (I = _, o = !0);
2562
+ }
2563
+ return !n && !o ? { node: t, changed: !1 } : {
2564
+ node: {
2565
+ id: t.id,
2566
+ type: t.type,
2567
+ props: n ? i : t.props,
2568
+ children: o ? I : a,
2569
+ styleIds: t.styleIds,
2570
+ ...t.sourceMarker ? { sourceMarker: t.sourceMarker } : {}
2571
+ },
2572
+ changed: !0
2573
+ };
2574
+ }
2575
+ function ot(t, r, e) {
2576
+ return Math.max(r, Math.min(e, t));
2577
+ }
2578
+ function vi(t, r) {
2579
+ const e = Math.min(t.length, r.length);
2580
+ let s = 0;
2581
+ for (; s < e && t.charCodeAt(s) === r.charCodeAt(s); )
2582
+ s++;
2583
+ return s;
2584
+ }
2585
+ function B(t) {
2586
+ const r = {}, e = Object.keys(t);
2587
+ for (let s = 0; s < e.length; s++) {
2588
+ const n = e[s];
2589
+ r[n] = t[n];
2590
+ }
2591
+ return r;
2592
+ }
2593
+ function q(t) {
2594
+ return typeof t == "object" && t !== null && !Array.isArray(t);
2595
+ }
2596
+ function k(t, r) {
2597
+ if (Object.is(t, r))
2598
+ return !0;
2599
+ if (Array.isArray(t) && Array.isArray(r)) {
2600
+ if (t.length !== r.length)
2601
+ return !1;
2602
+ for (let e = 0; e < t.length; e++)
2603
+ if (!k(t[e], r[e]))
2604
+ return !1;
2605
+ return !0;
2606
+ }
2607
+ if (q(t) && q(r)) {
2608
+ const e = Object.keys(t), s = Object.keys(r);
2609
+ if (e.length !== s.length)
2610
+ return !1;
2611
+ for (const n of e)
2612
+ if (!k(t[n], r[n]))
2613
+ return !1;
2614
+ return !0;
2615
+ }
2616
+ return !1;
2617
+ }
2618
+ const ki = 16, Gi = 50, A = new mi(), m = /* @__PURE__ */ new Map(), F = /* @__PURE__ */ new Map();
2619
+ let Qt = ki, qt = Gi, x = [], p = null, H = null, O = 0, j = 0;
2620
+ const b = /* @__PURE__ */ new Map();
2621
+ function Bi() {
2622
+ return typeof performance < "u" ? performance.now() : Date.now();
2623
+ }
2624
+ function Vi() {
2625
+ try {
2626
+ return crypto.randomUUID();
2627
+ } catch {
2628
+ return `${Date.now()}_${Math.random().toString(16).slice(2)}`;
2629
+ }
2630
+ }
2631
+ function Zt(t) {
2632
+ const r = [];
2633
+ for (const s of t.views)
2634
+ r.push(s);
2635
+ const e = [];
2636
+ for (const s of t.payloads)
2637
+ e.push(s);
2638
+ return {
2639
+ streamId: t.streamId,
2640
+ category: t.category,
2641
+ version: t.version ?? -1,
2642
+ rootViewId: t.rootViewId,
2643
+ views: r,
2644
+ payloads: e
2645
+ };
2646
+ }
2647
+ function xi(t, r, e) {
2648
+ if (!e || e.version === -1)
2649
+ return { type: "ReplaceStreamSnapshot", snapshot: Zt(r) };
2650
+ let s, n;
2651
+ for (const [a, I] of r.views)
2652
+ e.views.get(a) !== I && (s ??= []).push([a, I]);
2653
+ for (const a of e.views.keys())
2654
+ r.views.has(a) || (n ??= []).push(a);
2655
+ let i, o;
2656
+ for (const [a, I] of r.payloads)
2657
+ e.payloads.get(a) !== I && (i ??= []).push([a, I]);
2658
+ for (const a of e.payloads.keys())
2659
+ r.payloads.has(a) || (o ??= []).push(a);
2660
+ return {
2661
+ type: "PatchStreamSnapshot",
2662
+ streamId: t,
2663
+ category: r.category,
2664
+ nextVersion: r.version ?? -1,
2665
+ expectedBaseVersion: e.version ?? -1,
2666
+ rootViewId: r.rootViewId,
2667
+ upsertViews: s,
2668
+ deleteViews: n,
2669
+ upsertPayloads: i,
2670
+ deletePayloads: o
2671
+ };
2672
+ }
2673
+ function te() {
2674
+ p || (p = setTimeout(at, Qt)), H || (H = setTimeout(at, qt));
2675
+ }
2676
+ function y(t) {
2677
+ x.push(t), te();
2678
+ }
2679
+ function at() {
2680
+ if (p && (clearTimeout(p), p = null), H && (clearTimeout(H), H = null), x.length === 0 && b.size === 0) {
2681
+ O = 0, j = 0;
2682
+ return;
2683
+ }
2684
+ const t = [];
2685
+ for (const [e, s] of b)
2686
+ t.push({ trackId: e, version: s.version, senderId: s.senderId });
2687
+ const r = {
2688
+ batchId: Vi(),
2689
+ createdAtMs: Bi(),
2690
+ ops: x,
2691
+ ...t.length > 0 ? { acks: t } : {},
2692
+ stats: { uiMessagesConsumed: O, bytesConsumed: j }
2693
+ };
2694
+ x = [], O = 0, j = 0, b.clear(), self.postMessage(r);
2695
+ }
2696
+ function ee(t) {
2697
+ return `${t.senderId}_${t.trackId}`;
2698
+ }
2699
+ async function pi(t) {
2700
+ const r = await Pn(t), e = /* @__PURE__ */ new Set();
2701
+ for (const s of Object.values(r.UIStreams ?? {})) {
2702
+ const n = s.StreamId;
2703
+ e.add(n);
2704
+ const i = s.Info?.Category;
2705
+ A.getSnapshot(n)?.category !== i && (A.setCategory(n, i), y({ type: "SetStreamCategory", streamId: n, category: i }));
2706
+ }
2707
+ for (const s of A.getSnapshots())
2708
+ e.has(s.streamId) || (A.remove(s.streamId), F.delete(s.streamId), y({ type: "RemoveStream", streamId: s.streamId }));
2709
+ }
2710
+ async function Hi(t) {
2711
+ const r = Z(t), e = ee(r), s = await Ks(t), n = $t(s), i = b.get(r.trackId);
2712
+ if ((i === void 0 || n.snapshot.version > i.version) && (b.set(r.trackId, { version: n.snapshot.version, senderId: r.senderId }), te()), !A.apply(e, n))
2713
+ return;
2714
+ const a = A.getSnapshot(e);
2715
+ if (!a)
2716
+ return;
2717
+ const I = F.get(e);
2718
+ F.set(e, a), y(xi(e, a, I));
2719
+ }
2720
+ async function Yi(t) {
2721
+ const r = await fs(t);
2722
+ if (!r.StyleId)
2723
+ return;
2724
+ const e = {
2725
+ styleId: r.StyleId,
2726
+ css: r.Style?.css,
2727
+ common: r.Style?.common
2728
+ }, s = m.get(e.styleId);
2729
+ s && s.css === e.css && s.common === e.common || (m.set(e.styleId, e), y({ type: "UpsertUiStyle", style: e }));
2730
+ }
2731
+ async function Ki(t) {
2732
+ const r = await Rs(t);
2733
+ if (r.Styles)
2734
+ for (const e of r.Styles) {
2735
+ if (!e.StyleId)
2736
+ continue;
2737
+ const s = {
2738
+ styleId: e.StyleId,
2739
+ css: e.Style?.css,
2740
+ common: e.Style?.common
2741
+ }, n = m.get(s.styleId);
2742
+ n && n.css === s.css && n.common === s.common || (m.set(s.styleId, s), y({ type: "UpsertUiStyle", style: s }));
2743
+ }
2744
+ }
2745
+ function $i(t) {
2746
+ const r = Z(t), e = ee(r);
2747
+ A.clear(e), F.delete(e), y({ type: "ClearStream", streamId: e });
2748
+ }
2749
+ async function Xi(t) {
2750
+ const r = await vs(t);
2751
+ if (!(!r.StyleIds || r.StyleIds.length === 0))
2752
+ for (const e of r.StyleIds)
2753
+ m.delete(e) && y({ type: "RemoveUiStyle", styleId: e });
2754
+ }
2755
+ function ji(t) {
2756
+ if (!A.getSnapshots().some((r) => r.rootViewId)) {
2757
+ for (const r of t.styles) {
2758
+ const e = m.get(r.styleId);
2759
+ e && e.css === r.css && e.common === r.common || (m.set(r.styleId, r), y({ type: "UpsertUiStyle", style: r }));
2760
+ }
2761
+ if (t.bootJson && t.bootStreamId) {
2762
+ const r = $t({ Json: t.bootJson });
2763
+ if (A.apply(t.bootStreamId, r)) {
2764
+ const e = A.getSnapshot(t.bootStreamId);
2765
+ e && (F.set(t.bootStreamId, e), y({ type: "ReplaceStreamSnapshot", snapshot: Zt(e) }));
2766
+ }
2767
+ }
2768
+ for (const r of t.liveStreams ?? [])
2769
+ if (A.applyStoreOp({ type: "ReplaceStreamSnapshot", snapshot: r })) {
2770
+ const e = A.getSnapshot(r.streamId);
2771
+ e && F.set(r.streamId, e), y({ type: "ReplaceStreamSnapshot", snapshot: r });
2772
+ }
2773
+ A.enterSnapshotModeAll();
2774
+ }
2775
+ }
2776
+ async function Wi(t) {
2777
+ const r = new Uint8Array(t);
2778
+ j += r.byteLength;
2779
+ const e = r;
2780
+ switch (se(e)) {
2781
+ case g.CORE_GLOBAL_STATE:
2782
+ await pi(e), O++;
2783
+ return;
2784
+ case g.UI_UPDATE:
2785
+ try {
2786
+ await Hi(e);
2787
+ } catch (n) {
2788
+ return n instanceof d, void 0;
2789
+ } finally {
2790
+ O++;
2791
+ }
2792
+ return;
2793
+ case g.UI_STYLES:
2794
+ await Yi(e), O++;
2795
+ return;
2796
+ case g.UI_STYLES_BATCH:
2797
+ await Ki(e), O++;
2798
+ return;
2799
+ case g.UI_STYLES_DELETE:
2800
+ await Xi(e), O++;
2801
+ return;
2802
+ case g.ACTION_UI_CLEAR_STREAM:
2803
+ $i(e), O++;
2804
+ return;
2805
+ default:
2806
+ return;
2807
+ }
2808
+ }
2809
+ self.addEventListener("message", (t) => {
2810
+ const r = t.data;
2811
+ if (r.type === "configure") {
2812
+ typeof r.flushIntervalMs == "number" && Number.isFinite(r.flushIntervalMs) && r.flushIntervalMs >= 0 && (Qt = r.flushIntervalMs), typeof r.maxLatencyMs == "number" && Number.isFinite(r.maxLatencyMs) && r.maxLatencyMs >= 0 && (qt = r.maxLatencyMs);
2813
+ return;
2814
+ }
2815
+ if (r.type === "clear") {
2816
+ x = [], F.clear(), b.clear(), m.clear();
2817
+ for (const e of A.getSnapshots())
2818
+ A.remove(e.streamId);
2819
+ return;
2820
+ }
2821
+ if (r.type === "snapshotMode") {
2822
+ A.enterSnapshotModeAll();
2823
+ return;
2824
+ }
2825
+ if (r.type === "seed") {
2826
+ ji(r);
2827
+ return;
2828
+ }
2829
+ r.type === "protocol" && Wi(r.message).catch(() => {
2830
+ });
2831
+ });