@olotalk/widget 0.1.0

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,3190 @@
1
+ var _a = Object.defineProperty;
2
+ var Ur = (e) => {
3
+ throw TypeError(e);
4
+ };
5
+ var $a = (e, t, n) => t in e ? _a(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
6
+ var Me = (e, t, n) => $a(e, typeof t != "symbol" ? t + "" : t, n), ar = (e, t, n) => t.has(e) || Ur("Cannot " + n);
7
+ var u = (e, t, n) => (ar(e, t, "read from private field"), n ? n.call(e) : t.get(e)), z = (e, t, n) => t.has(e) ? Ur("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, n), y = (e, t, n, r) => (ar(e, t, "write to private field"), r ? r.call(e, n) : t.set(e, n), n), W = (e, t, n) => (ar(e, t, "access private method"), n);
8
+ var ws = Array.isArray, ei = Array.prototype.indexOf, mr = Array.from, ti = Object.defineProperty, sn = Object.getOwnPropertyDescriptor, ni = Object.getOwnPropertyDescriptors, ri = Object.prototype, si = Array.prototype, hs = Object.getPrototypeOf, _r = Object.isExtensible;
9
+ function ai(e) {
10
+ for (var t = 0; t < e.length; t++)
11
+ e[t]();
12
+ }
13
+ function Ps() {
14
+ var e, t, n = new Promise((r, a) => {
15
+ e = r, t = a;
16
+ });
17
+ return { promise: n, resolve: e, reject: t };
18
+ }
19
+ const oe = 2, Xn = 4, Hr = 8, et = 16, tt = 32, kt = 64, Nn = 128, je = 512, fe = 1024, me = 2048, nt = 4096, ye = 8192, Ot = 16384, Or = 32768, Kt = 65536, $r = 1 << 17, ps = 1 << 18, _t = 1 << 19, ii = 1 << 20, ln = 32768, vr = 1 << 21, xr = 1 << 22, ct = 1 << 23, Hn = Symbol("$state"), fi = Symbol(""), Yt = new class extends Error {
20
+ constructor() {
21
+ super(...arguments);
22
+ Me(this, "name", "StaleReactionError");
23
+ Me(this, "message", "The reaction that called `getAbortSignal()` was re-run or destroyed");
24
+ }
25
+ }();
26
+ function li(e) {
27
+ throw new Error("https://svelte.dev/e/lifecycle_outside_component");
28
+ }
29
+ function oi() {
30
+ throw new Error("https://svelte.dev/e/async_derived_orphan");
31
+ }
32
+ function ui(e) {
33
+ throw new Error("https://svelte.dev/e/effect_in_teardown");
34
+ }
35
+ function ci() {
36
+ throw new Error("https://svelte.dev/e/effect_in_unowned_derived");
37
+ }
38
+ function di(e) {
39
+ throw new Error("https://svelte.dev/e/effect_orphan");
40
+ }
41
+ function vi() {
42
+ throw new Error("https://svelte.dev/e/effect_update_depth_exceeded");
43
+ }
44
+ function gi() {
45
+ throw new Error("https://svelte.dev/e/state_descriptors_fixed");
46
+ }
47
+ function Ai() {
48
+ throw new Error("https://svelte.dev/e/state_prototype_fixed");
49
+ }
50
+ function wi() {
51
+ throw new Error("https://svelte.dev/e/state_unsafe_mutation");
52
+ }
53
+ function hi() {
54
+ throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror");
55
+ }
56
+ const Mn = 1, Ln = 2, Bs = 4, Pi = 8, pi = 16, Bi = 1, bi = 2, ae = Symbol(), Di = "http://www.w3.org/1999/xhtml";
57
+ function yi() {
58
+ console.warn("https://svelte.dev/e/svelte_boundary_reset_noop");
59
+ }
60
+ let mi = !1;
61
+ function bs(e) {
62
+ return e === this.v;
63
+ }
64
+ function Hi(e, t) {
65
+ return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
66
+ }
67
+ function Ds(e) {
68
+ return !Hi(e, this.v);
69
+ }
70
+ let He = null;
71
+ function Vt(e) {
72
+ He = e;
73
+ }
74
+ function ys(e, t = !1, n) {
75
+ He = {
76
+ p: He,
77
+ i: !1,
78
+ c: null,
79
+ e: null,
80
+ s: e,
81
+ x: null,
82
+ l: null
83
+ };
84
+ }
85
+ function ms(e) {
86
+ var t = (
87
+ /** @type {ComponentContext} */
88
+ He
89
+ ), n = t.e;
90
+ if (n !== null) {
91
+ t.e = null;
92
+ for (var r of n)
93
+ Zs(r);
94
+ }
95
+ return e !== void 0 && (t.x = e), t.i = !0, He = t.p, e ?? /** @type {T} */
96
+ {};
97
+ }
98
+ function Hs() {
99
+ return !0;
100
+ }
101
+ let Bt = [];
102
+ function Os() {
103
+ var e = Bt;
104
+ Bt = [], ai(e);
105
+ }
106
+ function $t(e) {
107
+ if (Bt.length === 0 && !an) {
108
+ var t = Bt;
109
+ queueMicrotask(() => {
110
+ t === Bt && Os();
111
+ });
112
+ }
113
+ Bt.push(e);
114
+ }
115
+ function Oi() {
116
+ for (; Bt.length > 0; )
117
+ Os();
118
+ }
119
+ function xs(e) {
120
+ var t = k;
121
+ if (t === null)
122
+ return x.f |= ct, e;
123
+ if ((t.f & Or) === 0) {
124
+ if ((t.f & Nn) === 0)
125
+ throw e;
126
+ t.b.error(e);
127
+ } else
128
+ Jt(e, t);
129
+ }
130
+ function Jt(e, t) {
131
+ for (; t !== null; ) {
132
+ if ((t.f & Nn) !== 0)
133
+ try {
134
+ t.b.error(e);
135
+ return;
136
+ } catch (n) {
137
+ e = n;
138
+ }
139
+ t = t.parent;
140
+ }
141
+ throw e;
142
+ }
143
+ const bn = /* @__PURE__ */ new Set();
144
+ let N = null, On = null, q = null, Ze = [], Fn = null, gr = !1, an = !1;
145
+ var St, Gt, bt, Dt, cn, Wt, qt, ie, Ar, pt, Es, Cs;
146
+ const kn = class kn {
147
+ constructor() {
148
+ z(this, ie);
149
+ Me(this, "committed", !1);
150
+ /**
151
+ * The current values of any sources that are updated in this batch
152
+ * They keys of this map are identical to `this.#previous`
153
+ * @type {Map<Source, any>}
154
+ */
155
+ Me(this, "current", /* @__PURE__ */ new Map());
156
+ /**
157
+ * The values of any sources that are updated in this batch _before_ those updates took place.
158
+ * They keys of this map are identical to `this.#current`
159
+ * @type {Map<Source, any>}
160
+ */
161
+ Me(this, "previous", /* @__PURE__ */ new Map());
162
+ /**
163
+ * When the batch is committed (and the DOM is updated), we need to remove old branches
164
+ * and append new ones by calling the functions added inside (if/each/key/etc) blocks
165
+ * @type {Set<() => void>}
166
+ */
167
+ z(this, St, /* @__PURE__ */ new Set());
168
+ /**
169
+ * If a fork is discarded, we need to destroy any effects that are no longer needed
170
+ * @type {Set<(batch: Batch) => void>}
171
+ */
172
+ z(this, Gt, /* @__PURE__ */ new Set());
173
+ /**
174
+ * The number of async effects that are currently in flight
175
+ */
176
+ z(this, bt, 0);
177
+ /**
178
+ * The number of async effects that are currently in flight, _not_ inside a pending boundary
179
+ */
180
+ z(this, Dt, 0);
181
+ /**
182
+ * A deferred that resolves when the batch is committed, used with `settled()`
183
+ * TODO replace with Promise.withResolvers once supported widely enough
184
+ * @type {{ promise: Promise<void>, resolve: (value?: any) => void, reject: (reason: unknown) => void } | null}
185
+ */
186
+ z(this, cn, null);
187
+ /**
188
+ * Deferred effects (which run after async work has completed) that are DIRTY
189
+ * @type {Effect[]}
190
+ */
191
+ z(this, Wt, []);
192
+ /**
193
+ * Deferred effects that are MAYBE_DIRTY
194
+ * @type {Effect[]}
195
+ */
196
+ z(this, qt, []);
197
+ /**
198
+ * A set of branches that still exist, but will be destroyed when this batch
199
+ * is committed — we skip over these during `process`
200
+ * @type {Set<Effect>}
201
+ */
202
+ Me(this, "skipped_effects", /* @__PURE__ */ new Set());
203
+ Me(this, "is_fork", !1);
204
+ }
205
+ /**
206
+ *
207
+ * @param {Effect[]} root_effects
208
+ */
209
+ process(t) {
210
+ var r;
211
+ Ze = [], On = null, this.apply();
212
+ var n = {
213
+ parent: null,
214
+ effect: null,
215
+ effects: [],
216
+ render_effects: [],
217
+ block_effects: []
218
+ };
219
+ for (const a of t)
220
+ W(this, ie, Ar).call(this, a, n);
221
+ this.is_fork || W(this, ie, Es).call(this), u(this, Dt) > 0 || this.is_fork ? (W(this, ie, pt).call(this, n.effects), W(this, ie, pt).call(this, n.render_effects), W(this, ie, pt).call(this, n.block_effects)) : (On = this, N = null, es(n.render_effects), es(n.effects), On = null, (r = u(this, cn)) == null || r.resolve()), q = null;
222
+ }
223
+ /**
224
+ * Associate a change to a given source with the current
225
+ * batch, noting its previous and current values
226
+ * @param {Source} source
227
+ * @param {any} value
228
+ */
229
+ capture(t, n) {
230
+ this.previous.has(t) || this.previous.set(t, n), (t.f & ct) === 0 && (this.current.set(t, t.v), q == null || q.set(t, t.v));
231
+ }
232
+ activate() {
233
+ N = this, this.apply();
234
+ }
235
+ deactivate() {
236
+ N === this && (N = null, q = null);
237
+ }
238
+ flush() {
239
+ if (this.activate(), Ze.length > 0) {
240
+ if (zs(), N !== null && N !== this)
241
+ return;
242
+ } else u(this, bt) === 0 && this.process([]);
243
+ this.deactivate();
244
+ }
245
+ discard() {
246
+ for (const t of u(this, Gt)) t(this);
247
+ u(this, Gt).clear();
248
+ }
249
+ /**
250
+ *
251
+ * @param {boolean} blocking
252
+ */
253
+ increment(t) {
254
+ y(this, bt, u(this, bt) + 1), t && y(this, Dt, u(this, Dt) + 1);
255
+ }
256
+ /**
257
+ *
258
+ * @param {boolean} blocking
259
+ */
260
+ decrement(t) {
261
+ y(this, bt, u(this, bt) - 1), t && y(this, Dt, u(this, Dt) - 1), this.revive();
262
+ }
263
+ revive() {
264
+ for (const t of u(this, Wt))
265
+ le(t, me), Ct(t);
266
+ for (const t of u(this, qt))
267
+ le(t, nt), Ct(t);
268
+ y(this, Wt, []), y(this, qt, []), this.flush();
269
+ }
270
+ /** @param {() => void} fn */
271
+ oncommit(t) {
272
+ u(this, St).add(t);
273
+ }
274
+ /** @param {(batch: Batch) => void} fn */
275
+ ondiscard(t) {
276
+ u(this, Gt).add(t);
277
+ }
278
+ settled() {
279
+ return (u(this, cn) ?? y(this, cn, Ps())).promise;
280
+ }
281
+ static ensure() {
282
+ if (N === null) {
283
+ const t = N = new kn();
284
+ bn.add(N), an || kn.enqueue(() => {
285
+ N === t && t.flush();
286
+ });
287
+ }
288
+ return N;
289
+ }
290
+ /** @param {() => void} task */
291
+ static enqueue(t) {
292
+ $t(t);
293
+ }
294
+ apply() {
295
+ }
296
+ };
297
+ St = new WeakMap(), Gt = new WeakMap(), bt = new WeakMap(), Dt = new WeakMap(), cn = new WeakMap(), Wt = new WeakMap(), qt = new WeakMap(), ie = new WeakSet(), /**
298
+ * Traverse the effect tree, executing effects or stashing
299
+ * them for later execution as appropriate
300
+ * @param {Effect} root
301
+ * @param {EffectTarget} target
302
+ */
303
+ Ar = function(t, n) {
304
+ var w;
305
+ t.f ^= fe;
306
+ for (var r = t.first; r !== null; ) {
307
+ var a = r.f, s = (a & (tt | kt)) !== 0, i = s && (a & fe) !== 0, o = i || (a & ye) !== 0 || this.skipped_effects.has(r);
308
+ if ((r.f & Nn) !== 0 && ((w = r.b) != null && w.is_pending()) && (n = {
309
+ parent: n,
310
+ effect: r,
311
+ effects: [],
312
+ render_effects: [],
313
+ block_effects: []
314
+ }), !o && r.fn !== null) {
315
+ s ? r.f ^= fe : (a & Xn) !== 0 ? n.effects.push(r) : An(r) && ((r.f & et) !== 0 && n.block_effects.push(r), un(r));
316
+ var f = r.first;
317
+ if (f !== null) {
318
+ r = f;
319
+ continue;
320
+ }
321
+ }
322
+ var c = r.parent;
323
+ for (r = r.next; r === null && c !== null; )
324
+ c === n.effect && (W(this, ie, pt).call(this, n.effects), W(this, ie, pt).call(this, n.render_effects), W(this, ie, pt).call(this, n.block_effects), n = /** @type {EffectTarget} */
325
+ n.parent), r = c.next, c = c.parent;
326
+ }
327
+ }, /**
328
+ * @param {Effect[]} effects
329
+ */
330
+ pt = function(t) {
331
+ for (const n of t)
332
+ ((n.f & me) !== 0 ? u(this, Wt) : u(this, qt)).push(n), le(n, fe);
333
+ }, Es = function() {
334
+ if (u(this, Dt) === 0) {
335
+ for (const t of u(this, St)) t();
336
+ u(this, St).clear();
337
+ }
338
+ u(this, bt) === 0 && W(this, ie, Cs).call(this);
339
+ }, Cs = function() {
340
+ var a;
341
+ if (bn.size > 1) {
342
+ this.previous.clear();
343
+ var t = q, n = !0, r = {
344
+ parent: null,
345
+ effect: null,
346
+ effects: [],
347
+ render_effects: [],
348
+ block_effects: []
349
+ };
350
+ for (const s of bn) {
351
+ if (s === this) {
352
+ n = !1;
353
+ continue;
354
+ }
355
+ const i = [];
356
+ for (const [f, c] of this.current) {
357
+ if (s.current.has(f))
358
+ if (n && c !== s.current.get(f))
359
+ s.current.set(f, c);
360
+ else
361
+ continue;
362
+ i.push(f);
363
+ }
364
+ if (i.length === 0)
365
+ continue;
366
+ const o = [...s.current.keys()].filter((f) => !this.current.has(f));
367
+ if (o.length > 0) {
368
+ const f = /* @__PURE__ */ new Set(), c = /* @__PURE__ */ new Map();
369
+ for (const w of i)
370
+ Qs(w, o, f, c);
371
+ if (Ze.length > 0) {
372
+ N = s, s.apply();
373
+ for (const w of Ze)
374
+ W(a = s, ie, Ar).call(a, w, r);
375
+ Ze = [], s.deactivate();
376
+ }
377
+ }
378
+ }
379
+ N = null, q = t;
380
+ }
381
+ this.committed = !0, bn.delete(this);
382
+ };
383
+ let _e = kn;
384
+ function xi(e) {
385
+ var t = an;
386
+ an = !0;
387
+ try {
388
+ for (var n; ; ) {
389
+ if (Oi(), Ze.length === 0 && (N == null || N.flush(), Ze.length === 0))
390
+ return Fn = null, /** @type {T} */
391
+ n;
392
+ zs();
393
+ }
394
+ } finally {
395
+ an = t;
396
+ }
397
+ }
398
+ function zs() {
399
+ var e = xt;
400
+ gr = !0;
401
+ try {
402
+ var t = 0;
403
+ for (rs(!0); Ze.length > 0; ) {
404
+ var n = _e.ensure();
405
+ if (t++ > 1e3) {
406
+ var r, a;
407
+ Ei();
408
+ }
409
+ n.process(Ze), dt.clear();
410
+ }
411
+ } finally {
412
+ gr = !1, rs(e), Fn = null;
413
+ }
414
+ }
415
+ function Ei() {
416
+ try {
417
+ vi();
418
+ } catch (e) {
419
+ Jt(e, Fn);
420
+ }
421
+ }
422
+ let Qe = null;
423
+ function es(e) {
424
+ var t = e.length;
425
+ if (t !== 0) {
426
+ for (var n = 0; n < t; ) {
427
+ var r = e[n++];
428
+ if ((r.f & (Ot | ye)) === 0 && An(r) && (Qe = /* @__PURE__ */ new Set(), un(r), r.deps === null && r.first === null && r.nodes_start === null && (r.teardown === null && r.ac === null ? Ws(r) : r.fn = null), (Qe == null ? void 0 : Qe.size) > 0)) {
429
+ dt.clear();
430
+ for (const a of Qe) {
431
+ if ((a.f & (Ot | ye)) !== 0) continue;
432
+ const s = [a];
433
+ let i = a.parent;
434
+ for (; i !== null; )
435
+ Qe.has(i) && (Qe.delete(i), s.push(i)), i = i.parent;
436
+ for (let o = s.length - 1; o >= 0; o--) {
437
+ const f = s[o];
438
+ (f.f & (Ot | ye)) === 0 && un(f);
439
+ }
440
+ }
441
+ Qe.clear();
442
+ }
443
+ }
444
+ Qe = null;
445
+ }
446
+ }
447
+ function Qs(e, t, n, r) {
448
+ if (!n.has(e) && (n.add(e), e.reactions !== null))
449
+ for (const a of e.reactions) {
450
+ const s = a.f;
451
+ (s & oe) !== 0 ? Qs(
452
+ /** @type {Derived} */
453
+ a,
454
+ t,
455
+ n,
456
+ r
457
+ ) : (s & (xr | et)) !== 0 && (s & me) === 0 && // we may have scheduled this one already
458
+ ks(a, t, r) && (le(a, me), Ct(
459
+ /** @type {Effect} */
460
+ a
461
+ ));
462
+ }
463
+ }
464
+ function ks(e, t, n) {
465
+ const r = n.get(e);
466
+ if (r !== void 0) return r;
467
+ if (e.deps !== null)
468
+ for (const a of e.deps) {
469
+ if (t.includes(a))
470
+ return !0;
471
+ if ((a.f & oe) !== 0 && ks(
472
+ /** @type {Derived} */
473
+ a,
474
+ t,
475
+ n
476
+ ))
477
+ return n.set(
478
+ /** @type {Derived} */
479
+ a,
480
+ !0
481
+ ), !0;
482
+ }
483
+ return n.set(e, !1), !1;
484
+ }
485
+ function Ct(e) {
486
+ for (var t = Fn = e; t.parent !== null; ) {
487
+ t = t.parent;
488
+ var n = t.f;
489
+ if (gr && t === k && (n & et) !== 0 && (n & ps) === 0)
490
+ return;
491
+ if ((n & (kt | tt)) !== 0) {
492
+ if ((n & fe) === 0) return;
493
+ t.f ^= fe;
494
+ }
495
+ }
496
+ Ze.push(t);
497
+ }
498
+ function Ci(e) {
499
+ let t = 0, n = zt(0), r;
500
+ return () => {
501
+ In() && (l(n), zr(() => (t === 0 && (r = Yn(() => e(() => fn(n)))), t += 1, () => {
502
+ $t(() => {
503
+ t -= 1, t === 0 && (r == null || r(), r = void 0, fn(n));
504
+ });
505
+ })));
506
+ };
507
+ }
508
+ var zi = Kt | _t | Nn;
509
+ function Qi(e, t, n) {
510
+ new ki(e, t, n);
511
+ }
512
+ var Ee, Ce, yr, Fe, yt, Re, ze, he, Ie, Ue, lt, mt, ot, Ht, ut, Tn, ee, Ti, ji, wr, xn, En, hr;
513
+ class ki {
514
+ /**
515
+ * @param {TemplateNode} node
516
+ * @param {BoundaryProps} props
517
+ * @param {((anchor: Node) => void)} children
518
+ */
519
+ constructor(t, n, r) {
520
+ z(this, ee);
521
+ /** @type {Boundary | null} */
522
+ Me(this, "parent");
523
+ z(this, Ee, !1);
524
+ /** @type {TemplateNode} */
525
+ z(this, Ce);
526
+ /** @type {TemplateNode | null} */
527
+ z(this, yr, null);
528
+ /** @type {BoundaryProps} */
529
+ z(this, Fe);
530
+ /** @type {((anchor: Node) => void)} */
531
+ z(this, yt);
532
+ /** @type {Effect} */
533
+ z(this, Re);
534
+ /** @type {Effect | null} */
535
+ z(this, ze, null);
536
+ /** @type {Effect | null} */
537
+ z(this, he, null);
538
+ /** @type {Effect | null} */
539
+ z(this, Ie, null);
540
+ /** @type {DocumentFragment | null} */
541
+ z(this, Ue, null);
542
+ /** @type {TemplateNode | null} */
543
+ z(this, lt, null);
544
+ z(this, mt, 0);
545
+ z(this, ot, 0);
546
+ z(this, Ht, !1);
547
+ /**
548
+ * A source containing the number of pending async deriveds/expressions.
549
+ * Only created if `$effect.pending()` is used inside the boundary,
550
+ * otherwise updating the source results in needless `Batch.ensure()`
551
+ * calls followed by no-op flushes
552
+ * @type {Source<number> | null}
553
+ */
554
+ z(this, ut, null);
555
+ z(this, Tn, Ci(() => (y(this, ut, zt(u(this, mt))), () => {
556
+ y(this, ut, null);
557
+ })));
558
+ y(this, Ce, t), y(this, Fe, n), y(this, yt, r), this.parent = /** @type {Effect} */
559
+ k.b, y(this, Ee, !!u(this, Fe).pending), y(this, Re, Qr(() => {
560
+ k.b = this;
561
+ {
562
+ var a = W(this, ee, wr).call(this);
563
+ try {
564
+ y(this, ze, Te(() => r(a)));
565
+ } catch (s) {
566
+ this.error(s);
567
+ }
568
+ u(this, ot) > 0 ? W(this, ee, En).call(this) : y(this, Ee, !1);
569
+ }
570
+ return () => {
571
+ var s;
572
+ (s = u(this, lt)) == null || s.remove();
573
+ };
574
+ }, zi));
575
+ }
576
+ /**
577
+ * Returns `true` if the effect exists inside a boundary whose pending snippet is shown
578
+ * @returns {boolean}
579
+ */
580
+ is_pending() {
581
+ return u(this, Ee) || !!this.parent && this.parent.is_pending();
582
+ }
583
+ has_pending_snippet() {
584
+ return !!u(this, Fe).pending;
585
+ }
586
+ /**
587
+ * Update the source that powers `$effect.pending()` inside this boundary,
588
+ * and controls when the current `pending` snippet (if any) is removed.
589
+ * Do not call from inside the class
590
+ * @param {1 | -1} d
591
+ */
592
+ update_pending_count(t) {
593
+ W(this, ee, hr).call(this, t), y(this, mt, u(this, mt) + t), u(this, ut) && Ut(u(this, ut), u(this, mt));
594
+ }
595
+ get_effect_pending() {
596
+ return u(this, Tn).call(this), l(
597
+ /** @type {Source<number>} */
598
+ u(this, ut)
599
+ );
600
+ }
601
+ /** @param {unknown} error */
602
+ error(t) {
603
+ var n = u(this, Fe).onerror;
604
+ let r = u(this, Fe).failed;
605
+ if (u(this, Ht) || !n && !r)
606
+ throw t;
607
+ u(this, ze) && (ge(u(this, ze)), y(this, ze, null)), u(this, he) && (ge(u(this, he)), y(this, he, null)), u(this, Ie) && (ge(u(this, Ie)), y(this, Ie, null));
608
+ var a = !1, s = !1;
609
+ const i = () => {
610
+ if (a) {
611
+ yi();
612
+ return;
613
+ }
614
+ a = !0, s && hi(), _e.ensure(), y(this, mt, 0), u(this, Ie) !== null && Zt(u(this, Ie), () => {
615
+ y(this, Ie, null);
616
+ }), y(this, Ee, this.has_pending_snippet()), y(this, ze, W(this, ee, xn).call(this, () => (y(this, Ht, !1), Te(() => u(this, yt).call(this, u(this, Ce)))))), u(this, ot) > 0 ? W(this, ee, En).call(this) : y(this, Ee, !1);
617
+ };
618
+ var o = x;
619
+ try {
620
+ Pe(null), s = !0, n == null || n(t, i), s = !1;
621
+ } catch (f) {
622
+ Jt(f, u(this, Re) && u(this, Re).parent);
623
+ } finally {
624
+ Pe(o);
625
+ }
626
+ r && $t(() => {
627
+ y(this, Ie, W(this, ee, xn).call(this, () => {
628
+ _e.ensure(), y(this, Ht, !0);
629
+ try {
630
+ return Te(() => {
631
+ r(
632
+ u(this, Ce),
633
+ () => t,
634
+ () => i
635
+ );
636
+ });
637
+ } catch (f) {
638
+ return Jt(
639
+ f,
640
+ /** @type {Effect} */
641
+ u(this, Re).parent
642
+ ), null;
643
+ } finally {
644
+ y(this, Ht, !1);
645
+ }
646
+ }));
647
+ });
648
+ }
649
+ }
650
+ Ee = new WeakMap(), Ce = new WeakMap(), yr = new WeakMap(), Fe = new WeakMap(), yt = new WeakMap(), Re = new WeakMap(), ze = new WeakMap(), he = new WeakMap(), Ie = new WeakMap(), Ue = new WeakMap(), lt = new WeakMap(), mt = new WeakMap(), ot = new WeakMap(), Ht = new WeakMap(), ut = new WeakMap(), Tn = new WeakMap(), ee = new WeakSet(), Ti = function() {
651
+ try {
652
+ y(this, ze, Te(() => u(this, yt).call(this, u(this, Ce))));
653
+ } catch (t) {
654
+ this.error(t);
655
+ }
656
+ y(this, Ee, !1);
657
+ }, ji = function() {
658
+ const t = u(this, Fe).pending;
659
+ t && (y(this, he, Te(() => t(u(this, Ce)))), _e.enqueue(() => {
660
+ var n = W(this, ee, wr).call(this);
661
+ y(this, ze, W(this, ee, xn).call(this, () => (_e.ensure(), Te(() => u(this, yt).call(this, n))))), u(this, ot) > 0 ? W(this, ee, En).call(this) : (Zt(
662
+ /** @type {Effect} */
663
+ u(this, he),
664
+ () => {
665
+ y(this, he, null);
666
+ }
667
+ ), y(this, Ee, !1));
668
+ }));
669
+ }, wr = function() {
670
+ var t = u(this, Ce);
671
+ return u(this, Ee) && (y(this, lt, Qt()), u(this, Ce).before(u(this, lt)), t = u(this, lt)), t;
672
+ }, /**
673
+ * @param {() => Effect | null} fn
674
+ */
675
+ xn = function(t) {
676
+ var n = k, r = x, a = He;
677
+ Ge(u(this, Re)), Pe(u(this, Re)), Vt(u(this, Re).ctx);
678
+ try {
679
+ return t();
680
+ } catch (s) {
681
+ return xs(s), null;
682
+ } finally {
683
+ Ge(n), Pe(r), Vt(a);
684
+ }
685
+ }, En = function() {
686
+ const t = (
687
+ /** @type {(anchor: Node) => void} */
688
+ u(this, Fe).pending
689
+ );
690
+ u(this, ze) !== null && (y(this, Ue, document.createDocumentFragment()), u(this, Ue).append(
691
+ /** @type {TemplateNode} */
692
+ u(this, lt)
693
+ ), Vs(u(this, ze), u(this, Ue))), u(this, he) === null && y(this, he, Te(() => t(u(this, Ce))));
694
+ }, /**
695
+ * Updates the pending count associated with the currently visible pending snippet,
696
+ * if any, such that we can replace the snippet with content once work is done
697
+ * @param {1 | -1} d
698
+ */
699
+ hr = function(t) {
700
+ var n;
701
+ if (!this.has_pending_snippet()) {
702
+ this.parent && W(n = this.parent, ee, hr).call(n, t);
703
+ return;
704
+ }
705
+ y(this, ot, u(this, ot) + t), u(this, ot) === 0 && (y(this, Ee, !1), u(this, he) && Zt(u(this, he), () => {
706
+ y(this, he, null);
707
+ }), u(this, Ue) && (u(this, Ce).before(u(this, Ue)), y(this, Ue, null)));
708
+ };
709
+ function Xi(e, t, n, r) {
710
+ const a = Er;
711
+ if (n.length === 0 && e.length === 0) {
712
+ r(t.map(a));
713
+ return;
714
+ }
715
+ var s = N, i = (
716
+ /** @type {Effect} */
717
+ k
718
+ ), o = Ni();
719
+ function f() {
720
+ Promise.all(n.map((c) => /* @__PURE__ */ Mi(c))).then((c) => {
721
+ o();
722
+ try {
723
+ r([...t.map(a), ...c]);
724
+ } catch (w) {
725
+ (i.f & Ot) === 0 && Jt(w, i);
726
+ }
727
+ s == null || s.deactivate(), Cn();
728
+ }).catch((c) => {
729
+ Jt(c, i);
730
+ });
731
+ }
732
+ e.length > 0 ? Promise.all(e).then(() => {
733
+ o();
734
+ try {
735
+ return f();
736
+ } finally {
737
+ s == null || s.deactivate(), Cn();
738
+ }
739
+ }) : f();
740
+ }
741
+ function Ni() {
742
+ var e = k, t = x, n = He, r = N;
743
+ return function(s = !0) {
744
+ Ge(e), Pe(t), Vt(n), s && (r == null || r.activate());
745
+ };
746
+ }
747
+ function Cn() {
748
+ Ge(null), Pe(null), Vt(null);
749
+ }
750
+ // @__NO_SIDE_EFFECTS__
751
+ function Er(e) {
752
+ var t = oe | me, n = x !== null && (x.f & oe) !== 0 ? (
753
+ /** @type {Derived} */
754
+ x
755
+ ) : null;
756
+ return k !== null && (k.f |= _t), {
757
+ ctx: He,
758
+ deps: null,
759
+ effects: null,
760
+ equals: bs,
761
+ f: t,
762
+ fn: e,
763
+ reactions: null,
764
+ rv: 0,
765
+ v: (
766
+ /** @type {V} */
767
+ ae
768
+ ),
769
+ wv: 0,
770
+ parent: n ?? k,
771
+ ac: null
772
+ };
773
+ }
774
+ // @__NO_SIDE_EFFECTS__
775
+ function Mi(e, t) {
776
+ let n = (
777
+ /** @type {Effect | null} */
778
+ k
779
+ );
780
+ n === null && oi();
781
+ var r = (
782
+ /** @type {Boundary} */
783
+ n.b
784
+ ), a = (
785
+ /** @type {Promise<V>} */
786
+ /** @type {unknown} */
787
+ void 0
788
+ ), s = zt(
789
+ /** @type {V} */
790
+ ae
791
+ ), i = !x, o = /* @__PURE__ */ new Map();
792
+ return Ji(() => {
793
+ var v;
794
+ var f = Ps();
795
+ a = f.promise;
796
+ try {
797
+ Promise.resolve(e()).then(f.resolve, f.reject).then(() => {
798
+ c === N && c.committed && c.deactivate(), Cn();
799
+ });
800
+ } catch (A) {
801
+ f.reject(A), Cn();
802
+ }
803
+ var c = (
804
+ /** @type {Batch} */
805
+ N
806
+ );
807
+ if (i) {
808
+ var w = !r.is_pending();
809
+ r.update_pending_count(1), c.increment(w), (v = o.get(c)) == null || v.reject(Yt), o.delete(c), o.set(c, f);
810
+ }
811
+ const g = (A, h = void 0) => {
812
+ if (c.activate(), h)
813
+ h !== Yt && (s.f |= ct, Ut(s, h));
814
+ else {
815
+ (s.f & ct) !== 0 && (s.f ^= ct), Ut(s, A);
816
+ for (const [b, B] of o) {
817
+ if (o.delete(b), b === c) break;
818
+ B.reject(Yt);
819
+ }
820
+ }
821
+ i && (r.update_pending_count(-1), c.decrement(w));
822
+ };
823
+ f.promise.then(g, (A) => g(null, A || "unknown"));
824
+ }), Is(() => {
825
+ for (const f of o.values())
826
+ f.reject(Yt);
827
+ }), new Promise((f) => {
828
+ function c(w) {
829
+ function g() {
830
+ w === a ? f(s) : c(a);
831
+ }
832
+ w.then(g, g);
833
+ }
834
+ c(a);
835
+ });
836
+ }
837
+ // @__NO_SIDE_EFFECTS__
838
+ function Pt(e) {
839
+ const t = /* @__PURE__ */ Er(e);
840
+ return Js(t), t;
841
+ }
842
+ // @__NO_SIDE_EFFECTS__
843
+ function Li(e) {
844
+ const t = /* @__PURE__ */ Er(e);
845
+ return t.equals = Ds, t;
846
+ }
847
+ function Ts(e) {
848
+ var t = e.effects;
849
+ if (t !== null) {
850
+ e.effects = null;
851
+ for (var n = 0; n < t.length; n += 1)
852
+ ge(
853
+ /** @type {Effect} */
854
+ t[n]
855
+ );
856
+ }
857
+ }
858
+ function Fi(e) {
859
+ for (var t = e.parent; t !== null; ) {
860
+ if ((t.f & oe) === 0)
861
+ return (
862
+ /** @type {Effect} */
863
+ t
864
+ );
865
+ t = t.parent;
866
+ }
867
+ return null;
868
+ }
869
+ function Cr(e) {
870
+ var t, n = k;
871
+ Ge(Fi(e));
872
+ try {
873
+ e.f &= ~ln, Ts(e), t = ea(e);
874
+ } finally {
875
+ Ge(n);
876
+ }
877
+ return t;
878
+ }
879
+ function js(e) {
880
+ var t = Cr(e);
881
+ if (e.equals(t) || (e.v = t, e.wv = _s()), !en)
882
+ if (q !== null)
883
+ In() && q.set(e, e.v);
884
+ else {
885
+ var n = (e.f & je) === 0 ? nt : fe;
886
+ le(e, n);
887
+ }
888
+ }
889
+ let Pr = /* @__PURE__ */ new Set();
890
+ const dt = /* @__PURE__ */ new Map();
891
+ let Xs = !1;
892
+ function zt(e, t) {
893
+ var n = {
894
+ f: 0,
895
+ // TODO ideally we could skip this altogether, but it causes type errors
896
+ v: e,
897
+ reactions: null,
898
+ equals: bs,
899
+ rv: 0,
900
+ wv: 0
901
+ };
902
+ return n;
903
+ }
904
+ // @__NO_SIDE_EFFECTS__
905
+ function L(e, t) {
906
+ const n = zt(e);
907
+ return Js(n), n;
908
+ }
909
+ // @__NO_SIDE_EFFECTS__
910
+ function Ri(e, t = !1, n = !0) {
911
+ const r = zt(e);
912
+ return t || (r.equals = Ds), r;
913
+ }
914
+ function p(e, t, n = !1) {
915
+ x !== null && // since we are untracking the function inside `$inspect.with` we need to add this check
916
+ // to ensure we error if state is set inside an inspect effect
917
+ (!Se || (x.f & $r) !== 0) && Hs() && (x.f & (oe | et | xr | $r)) !== 0 && !(Ae != null && Ae.includes(e)) && wi();
918
+ let r = n ? $e(t) : t;
919
+ return Ut(e, r);
920
+ }
921
+ function Ut(e, t) {
922
+ if (!e.equals(t)) {
923
+ var n = e.v;
924
+ en ? dt.set(e, t) : dt.set(e, n), e.v = t;
925
+ var r = _e.ensure();
926
+ r.capture(e, n), (e.f & oe) !== 0 && ((e.f & me) !== 0 && Cr(
927
+ /** @type {Derived} */
928
+ e
929
+ ), le(e, (e.f & je) !== 0 ? fe : nt)), e.wv = _s(), Ns(e, me), k !== null && (k.f & fe) !== 0 && (k.f & (tt | kt)) === 0 && (xe === null ? $i([e]) : xe.push(e)), !r.is_fork && Pr.size > 0 && !Xs && Ii();
930
+ }
931
+ return t;
932
+ }
933
+ function Ii() {
934
+ Xs = !1;
935
+ const e = Array.from(Pr);
936
+ for (const t of e)
937
+ (t.f & fe) !== 0 && le(t, nt), An(t) && un(t);
938
+ Pr.clear();
939
+ }
940
+ function fn(e) {
941
+ p(e, e.v + 1);
942
+ }
943
+ function Ns(e, t) {
944
+ var n = e.reactions;
945
+ if (n !== null)
946
+ for (var r = n.length, a = 0; a < r; a++) {
947
+ var s = n[a], i = s.f, o = (i & me) === 0;
948
+ if (o && le(s, t), (i & oe) !== 0) {
949
+ var f = (
950
+ /** @type {Derived} */
951
+ s
952
+ );
953
+ q == null || q.delete(f), (i & ln) === 0 && (i & je && (s.f |= ln), Ns(f, nt));
954
+ } else o && ((i & et) !== 0 && Qe !== null && Qe.add(
955
+ /** @type {Effect} */
956
+ s
957
+ ), Ct(
958
+ /** @type {Effect} */
959
+ s
960
+ ));
961
+ }
962
+ }
963
+ function $e(e) {
964
+ if (typeof e != "object" || e === null || Hn in e)
965
+ return e;
966
+ const t = hs(e);
967
+ if (t !== ri && t !== si)
968
+ return e;
969
+ var n = /* @__PURE__ */ new Map(), r = ws(e), a = /* @__PURE__ */ L(0), s = Et, i = (o) => {
970
+ if (Et === s)
971
+ return o();
972
+ var f = x, c = Et;
973
+ Pe(null), as(s);
974
+ var w = o();
975
+ return Pe(f), as(c), w;
976
+ };
977
+ return r && n.set("length", /* @__PURE__ */ L(
978
+ /** @type {any[]} */
979
+ e.length
980
+ )), new Proxy(
981
+ /** @type {any} */
982
+ e,
983
+ {
984
+ defineProperty(o, f, c) {
985
+ (!("value" in c) || c.configurable === !1 || c.enumerable === !1 || c.writable === !1) && gi();
986
+ var w = n.get(f);
987
+ return w === void 0 ? w = i(() => {
988
+ var g = /* @__PURE__ */ L(c.value);
989
+ return n.set(f, g), g;
990
+ }) : p(w, c.value, !0), !0;
991
+ },
992
+ deleteProperty(o, f) {
993
+ var c = n.get(f);
994
+ if (c === void 0) {
995
+ if (f in o) {
996
+ const w = i(() => /* @__PURE__ */ L(ae));
997
+ n.set(f, w), fn(a);
998
+ }
999
+ } else
1000
+ p(c, ae), fn(a);
1001
+ return !0;
1002
+ },
1003
+ get(o, f, c) {
1004
+ var A;
1005
+ if (f === Hn)
1006
+ return e;
1007
+ var w = n.get(f), g = f in o;
1008
+ if (w === void 0 && (!g || (A = sn(o, f)) != null && A.writable) && (w = i(() => {
1009
+ var h = $e(g ? o[f] : ae), b = /* @__PURE__ */ L(h);
1010
+ return b;
1011
+ }), n.set(f, w)), w !== void 0) {
1012
+ var v = l(w);
1013
+ return v === ae ? void 0 : v;
1014
+ }
1015
+ return Reflect.get(o, f, c);
1016
+ },
1017
+ getOwnPropertyDescriptor(o, f) {
1018
+ var c = Reflect.getOwnPropertyDescriptor(o, f);
1019
+ if (c && "value" in c) {
1020
+ var w = n.get(f);
1021
+ w && (c.value = l(w));
1022
+ } else if (c === void 0) {
1023
+ var g = n.get(f), v = g == null ? void 0 : g.v;
1024
+ if (g !== void 0 && v !== ae)
1025
+ return {
1026
+ enumerable: !0,
1027
+ configurable: !0,
1028
+ value: v,
1029
+ writable: !0
1030
+ };
1031
+ }
1032
+ return c;
1033
+ },
1034
+ has(o, f) {
1035
+ var v;
1036
+ if (f === Hn)
1037
+ return !0;
1038
+ var c = n.get(f), w = c !== void 0 && c.v !== ae || Reflect.has(o, f);
1039
+ if (c !== void 0 || k !== null && (!w || (v = sn(o, f)) != null && v.writable)) {
1040
+ c === void 0 && (c = i(() => {
1041
+ var A = w ? $e(o[f]) : ae, h = /* @__PURE__ */ L(A);
1042
+ return h;
1043
+ }), n.set(f, c));
1044
+ var g = l(c);
1045
+ if (g === ae)
1046
+ return !1;
1047
+ }
1048
+ return w;
1049
+ },
1050
+ set(o, f, c, w) {
1051
+ var I;
1052
+ var g = n.get(f), v = f in o;
1053
+ if (r && f === "length")
1054
+ for (var A = c; A < /** @type {Source<number>} */
1055
+ g.v; A += 1) {
1056
+ var h = n.get(A + "");
1057
+ h !== void 0 ? p(h, ae) : A in o && (h = i(() => /* @__PURE__ */ L(ae)), n.set(A + "", h));
1058
+ }
1059
+ if (g === void 0)
1060
+ (!v || (I = sn(o, f)) != null && I.writable) && (g = i(() => /* @__PURE__ */ L(void 0)), p(g, $e(c)), n.set(f, g));
1061
+ else {
1062
+ v = g.v !== ae;
1063
+ var b = i(() => $e(c));
1064
+ p(g, b);
1065
+ }
1066
+ var B = Reflect.getOwnPropertyDescriptor(o, f);
1067
+ if (B != null && B.set && B.set.call(w, c), !v) {
1068
+ if (r && typeof f == "string") {
1069
+ var T = (
1070
+ /** @type {Source<number>} */
1071
+ n.get("length")
1072
+ ), F = Number(f);
1073
+ Number.isInteger(F) && F >= T.v && p(T, F + 1);
1074
+ }
1075
+ fn(a);
1076
+ }
1077
+ return !0;
1078
+ },
1079
+ ownKeys(o) {
1080
+ l(a);
1081
+ var f = Reflect.ownKeys(o).filter((g) => {
1082
+ var v = n.get(g);
1083
+ return v === void 0 || v.v !== ae;
1084
+ });
1085
+ for (var [c, w] of n)
1086
+ w.v !== ae && !(c in o) && f.push(c);
1087
+ return f;
1088
+ },
1089
+ setPrototypeOf() {
1090
+ Ai();
1091
+ }
1092
+ }
1093
+ );
1094
+ }
1095
+ var ts, Ms, Ls, Fs;
1096
+ function Yi() {
1097
+ if (ts === void 0) {
1098
+ ts = window, Ms = /Firefox/.test(navigator.userAgent);
1099
+ var e = Element.prototype, t = Node.prototype, n = Text.prototype;
1100
+ Ls = sn(t, "firstChild").get, Fs = sn(t, "nextSibling").get, _r(e) && (e.__click = void 0, e.__className = void 0, e.__attributes = null, e.__style = void 0, e.__e = void 0), _r(n) && (n.__t = void 0);
1101
+ }
1102
+ }
1103
+ function Qt(e = "") {
1104
+ return document.createTextNode(e);
1105
+ }
1106
+ // @__NO_SIDE_EFFECTS__
1107
+ function zn(e) {
1108
+ return Ls.call(e);
1109
+ }
1110
+ // @__NO_SIDE_EFFECTS__
1111
+ function gn(e) {
1112
+ return Fs.call(e);
1113
+ }
1114
+ function H(e, t) {
1115
+ return /* @__PURE__ */ zn(e);
1116
+ }
1117
+ function Dn(e, t = !1) {
1118
+ {
1119
+ var n = (
1120
+ /** @type {DocumentFragment} */
1121
+ /* @__PURE__ */ zn(
1122
+ /** @type {Node} */
1123
+ e
1124
+ )
1125
+ );
1126
+ return n instanceof Comment && n.data === "" ? /* @__PURE__ */ gn(n) : n;
1127
+ }
1128
+ }
1129
+ function C(e, t = 1, n = !1) {
1130
+ let r = e;
1131
+ for (; t--; )
1132
+ r = /** @type {TemplateNode} */
1133
+ /* @__PURE__ */ gn(r);
1134
+ return r;
1135
+ }
1136
+ function Zi(e) {
1137
+ e.textContent = "";
1138
+ }
1139
+ function Rs() {
1140
+ return !1;
1141
+ }
1142
+ let ns = !1;
1143
+ function Si() {
1144
+ ns || (ns = !0, document.addEventListener(
1145
+ "reset",
1146
+ (e) => {
1147
+ Promise.resolve().then(() => {
1148
+ var t;
1149
+ if (!e.defaultPrevented)
1150
+ for (
1151
+ const n of
1152
+ /**@type {HTMLFormElement} */
1153
+ e.target.elements
1154
+ )
1155
+ (t = n.__on_r) == null || t.call(n);
1156
+ });
1157
+ },
1158
+ // In the capture phase to guarantee we get noticed of it (no possiblity of stopPropagation)
1159
+ { capture: !0 }
1160
+ ));
1161
+ }
1162
+ function Rn(e) {
1163
+ var t = x, n = k;
1164
+ Pe(null), Ge(null);
1165
+ try {
1166
+ return e();
1167
+ } finally {
1168
+ Pe(t), Ge(n);
1169
+ }
1170
+ }
1171
+ function Gi(e, t, n, r = n) {
1172
+ e.addEventListener(t, () => Rn(n));
1173
+ const a = e.__on_r;
1174
+ a ? e.__on_r = () => {
1175
+ a(), r(!0);
1176
+ } : e.__on_r = () => r(!0), Si();
1177
+ }
1178
+ function Wi(e) {
1179
+ k === null && (x === null && di(), ci()), en && ui();
1180
+ }
1181
+ function qi(e, t) {
1182
+ var n = t.last;
1183
+ n === null ? t.last = t.first = e : (n.next = e, e.prev = n, t.last = e);
1184
+ }
1185
+ function rt(e, t, n, r = !0) {
1186
+ var a = k;
1187
+ a !== null && (a.f & ye) !== 0 && (e |= ye);
1188
+ var s = {
1189
+ ctx: He,
1190
+ deps: null,
1191
+ nodes_start: null,
1192
+ nodes_end: null,
1193
+ f: e | me | je,
1194
+ first: null,
1195
+ fn: t,
1196
+ last: null,
1197
+ next: null,
1198
+ parent: a,
1199
+ b: a && a.b,
1200
+ prev: null,
1201
+ teardown: null,
1202
+ transitions: null,
1203
+ wv: 0,
1204
+ ac: null
1205
+ };
1206
+ if (n)
1207
+ try {
1208
+ un(s), s.f |= Or;
1209
+ } catch (f) {
1210
+ throw ge(s), f;
1211
+ }
1212
+ else t !== null && Ct(s);
1213
+ if (r) {
1214
+ var i = s;
1215
+ if (n && i.deps === null && i.teardown === null && i.nodes_start === null && i.first === i.last && // either `null`, or a singular child
1216
+ (i.f & _t) === 0 && (i = i.first, (e & et) !== 0 && (e & Kt) !== 0 && i !== null && (i.f |= Kt)), i !== null && (i.parent = a, a !== null && qi(i, a), x !== null && (x.f & oe) !== 0 && (e & kt) === 0)) {
1217
+ var o = (
1218
+ /** @type {Derived} */
1219
+ x
1220
+ );
1221
+ (o.effects ?? (o.effects = [])).push(i);
1222
+ }
1223
+ }
1224
+ return s;
1225
+ }
1226
+ function In() {
1227
+ return x !== null && !Se;
1228
+ }
1229
+ function Is(e) {
1230
+ const t = rt(Hr, null, !1);
1231
+ return le(t, fe), t.teardown = e, t;
1232
+ }
1233
+ function Ys(e) {
1234
+ Wi();
1235
+ var t = (
1236
+ /** @type {Effect} */
1237
+ k.f
1238
+ ), n = !x && (t & tt) !== 0 && (t & Or) === 0;
1239
+ if (n) {
1240
+ var r = (
1241
+ /** @type {ComponentContext} */
1242
+ He
1243
+ );
1244
+ (r.e ?? (r.e = [])).push(e);
1245
+ } else
1246
+ return Zs(e);
1247
+ }
1248
+ function Zs(e) {
1249
+ return rt(Xn | ii, e, !1);
1250
+ }
1251
+ function Ki(e) {
1252
+ _e.ensure();
1253
+ const t = rt(kt | _t, e, !0);
1254
+ return (n = {}) => new Promise((r) => {
1255
+ n.outro ? Zt(t, () => {
1256
+ ge(t), r(void 0);
1257
+ }) : (ge(t), r(void 0));
1258
+ });
1259
+ }
1260
+ function Vi(e) {
1261
+ return rt(Xn, e, !1);
1262
+ }
1263
+ function Ji(e) {
1264
+ return rt(xr | _t, e, !0);
1265
+ }
1266
+ function zr(e, t = 0) {
1267
+ return rt(Hr | t, e, !0);
1268
+ }
1269
+ function U(e, t = [], n = [], r = [], a = !1) {
1270
+ Xi(r, t, n, (s) => {
1271
+ rt(a ? Xn : Hr, () => e(...s.map(l)), !0);
1272
+ });
1273
+ }
1274
+ function Qr(e, t = 0) {
1275
+ var n = rt(et | t, e, !0);
1276
+ return n;
1277
+ }
1278
+ function Te(e, t = !0) {
1279
+ return rt(tt | _t, e, !0, t);
1280
+ }
1281
+ function Ss(e) {
1282
+ var t = e.teardown;
1283
+ if (t !== null) {
1284
+ const n = en, r = x;
1285
+ ss(!0), Pe(null);
1286
+ try {
1287
+ t.call(null);
1288
+ } finally {
1289
+ ss(n), Pe(r);
1290
+ }
1291
+ }
1292
+ }
1293
+ function Gs(e, t = !1) {
1294
+ var n = e.first;
1295
+ for (e.first = e.last = null; n !== null; ) {
1296
+ const a = n.ac;
1297
+ a !== null && Rn(() => {
1298
+ a.abort(Yt);
1299
+ });
1300
+ var r = n.next;
1301
+ (n.f & kt) !== 0 ? n.parent = null : ge(n, t), n = r;
1302
+ }
1303
+ }
1304
+ function Ui(e) {
1305
+ for (var t = e.first; t !== null; ) {
1306
+ var n = t.next;
1307
+ (t.f & tt) === 0 && ge(t), t = n;
1308
+ }
1309
+ }
1310
+ function ge(e, t = !0) {
1311
+ var n = !1;
1312
+ (t || (e.f & ps) !== 0) && e.nodes_start !== null && e.nodes_end !== null && (_i(
1313
+ e.nodes_start,
1314
+ /** @type {TemplateNode} */
1315
+ e.nodes_end
1316
+ ), n = !0), Gs(e, t && !n), Qn(e, 0), le(e, Ot);
1317
+ var r = e.transitions;
1318
+ if (r !== null)
1319
+ for (const s of r)
1320
+ s.stop();
1321
+ Ss(e);
1322
+ var a = e.parent;
1323
+ a !== null && a.first !== null && Ws(e), e.next = e.prev = e.teardown = e.ctx = e.deps = e.fn = e.nodes_start = e.nodes_end = e.ac = null;
1324
+ }
1325
+ function _i(e, t) {
1326
+ for (; e !== null; ) {
1327
+ var n = e === t ? null : (
1328
+ /** @type {TemplateNode} */
1329
+ /* @__PURE__ */ gn(e)
1330
+ );
1331
+ e.remove(), e = n;
1332
+ }
1333
+ }
1334
+ function Ws(e) {
1335
+ var t = e.parent, n = e.prev, r = e.next;
1336
+ n !== null && (n.next = r), r !== null && (r.prev = n), t !== null && (t.first === e && (t.first = r), t.last === e && (t.last = n));
1337
+ }
1338
+ function Zt(e, t, n = !0) {
1339
+ var r = [];
1340
+ kr(e, r, !0), qs(r, () => {
1341
+ n && ge(e), t && t();
1342
+ });
1343
+ }
1344
+ function qs(e, t) {
1345
+ var n = e.length;
1346
+ if (n > 0) {
1347
+ var r = () => --n || t();
1348
+ for (var a of e)
1349
+ a.out(r);
1350
+ } else
1351
+ t();
1352
+ }
1353
+ function kr(e, t, n) {
1354
+ if ((e.f & ye) === 0) {
1355
+ if (e.f ^= ye, e.transitions !== null)
1356
+ for (const i of e.transitions)
1357
+ (i.is_global || n) && t.push(i);
1358
+ for (var r = e.first; r !== null; ) {
1359
+ var a = r.next, s = (r.f & Kt) !== 0 || // If this is a branch effect without a block effect parent,
1360
+ // it means the parent block effect was pruned. In that case,
1361
+ // transparency information was transferred to the branch effect.
1362
+ (r.f & tt) !== 0 && (e.f & et) !== 0;
1363
+ kr(r, t, s ? n : !1), r = a;
1364
+ }
1365
+ }
1366
+ }
1367
+ function Tr(e) {
1368
+ Ks(e, !0);
1369
+ }
1370
+ function Ks(e, t) {
1371
+ if ((e.f & ye) !== 0) {
1372
+ e.f ^= ye, (e.f & fe) === 0 && (le(e, me), Ct(e));
1373
+ for (var n = e.first; n !== null; ) {
1374
+ var r = n.next, a = (n.f & Kt) !== 0 || (n.f & tt) !== 0;
1375
+ Ks(n, a ? t : !1), n = r;
1376
+ }
1377
+ if (e.transitions !== null)
1378
+ for (const s of e.transitions)
1379
+ (s.is_global || t) && s.in();
1380
+ }
1381
+ }
1382
+ function Vs(e, t) {
1383
+ for (var n = e.nodes_start, r = e.nodes_end; n !== null; ) {
1384
+ var a = n === r ? null : (
1385
+ /** @type {TemplateNode} */
1386
+ /* @__PURE__ */ gn(n)
1387
+ );
1388
+ t.append(n), n = a;
1389
+ }
1390
+ }
1391
+ let xt = !1;
1392
+ function rs(e) {
1393
+ xt = e;
1394
+ }
1395
+ let en = !1;
1396
+ function ss(e) {
1397
+ en = e;
1398
+ }
1399
+ let x = null, Se = !1;
1400
+ function Pe(e) {
1401
+ x = e;
1402
+ }
1403
+ let k = null;
1404
+ function Ge(e) {
1405
+ k = e;
1406
+ }
1407
+ let Ae = null;
1408
+ function Js(e) {
1409
+ x !== null && (Ae === null ? Ae = [e] : Ae.push(e));
1410
+ }
1411
+ let ve = null, be = 0, xe = null;
1412
+ function $i(e) {
1413
+ xe = e;
1414
+ }
1415
+ let Us = 1, on = 0, Et = on;
1416
+ function as(e) {
1417
+ Et = e;
1418
+ }
1419
+ function _s() {
1420
+ return ++Us;
1421
+ }
1422
+ function An(e) {
1423
+ var t = e.f;
1424
+ if ((t & me) !== 0)
1425
+ return !0;
1426
+ if (t & oe && (e.f &= ~ln), (t & nt) !== 0) {
1427
+ var n = e.deps;
1428
+ if (n !== null)
1429
+ for (var r = n.length, a = 0; a < r; a++) {
1430
+ var s = n[a];
1431
+ if (An(
1432
+ /** @type {Derived} */
1433
+ s
1434
+ ) && js(
1435
+ /** @type {Derived} */
1436
+ s
1437
+ ), s.wv > e.wv)
1438
+ return !0;
1439
+ }
1440
+ (t & je) !== 0 && // During time traveling we don't want to reset the status so that
1441
+ // traversal of the graph in the other batches still happens
1442
+ q === null && le(e, fe);
1443
+ }
1444
+ return !1;
1445
+ }
1446
+ function $s(e, t, n = !0) {
1447
+ var r = e.reactions;
1448
+ if (r !== null && !(Ae != null && Ae.includes(e)))
1449
+ for (var a = 0; a < r.length; a++) {
1450
+ var s = r[a];
1451
+ (s.f & oe) !== 0 ? $s(
1452
+ /** @type {Derived} */
1453
+ s,
1454
+ t,
1455
+ !1
1456
+ ) : t === s && (n ? le(s, me) : (s.f & fe) !== 0 && le(s, nt), Ct(
1457
+ /** @type {Effect} */
1458
+ s
1459
+ ));
1460
+ }
1461
+ }
1462
+ function ea(e) {
1463
+ var h;
1464
+ var t = ve, n = be, r = xe, a = x, s = Ae, i = He, o = Se, f = Et, c = e.f;
1465
+ ve = /** @type {null | Value[]} */
1466
+ null, be = 0, xe = null, x = (c & (tt | kt)) === 0 ? e : null, Ae = null, Vt(e.ctx), Se = !1, Et = ++on, e.ac !== null && (Rn(() => {
1467
+ e.ac.abort(Yt);
1468
+ }), e.ac = null);
1469
+ try {
1470
+ e.f |= vr;
1471
+ var w = (
1472
+ /** @type {Function} */
1473
+ e.fn
1474
+ ), g = w(), v = e.deps;
1475
+ if (ve !== null) {
1476
+ var A;
1477
+ if (Qn(e, be), v !== null && be > 0)
1478
+ for (v.length = be + ve.length, A = 0; A < ve.length; A++)
1479
+ v[be + A] = ve[A];
1480
+ else
1481
+ e.deps = v = ve;
1482
+ if (xt && In() && (e.f & je) !== 0)
1483
+ for (A = be; A < v.length; A++)
1484
+ ((h = v[A]).reactions ?? (h.reactions = [])).push(e);
1485
+ } else v !== null && be < v.length && (Qn(e, be), v.length = be);
1486
+ if (Hs() && xe !== null && !Se && v !== null && (e.f & (oe | nt | me)) === 0)
1487
+ for (A = 0; A < /** @type {Source[]} */
1488
+ xe.length; A++)
1489
+ $s(
1490
+ xe[A],
1491
+ /** @type {Effect} */
1492
+ e
1493
+ );
1494
+ return a !== null && a !== e && (on++, xe !== null && (r === null ? r = xe : r.push(.../** @type {Source[]} */
1495
+ xe))), (e.f & ct) !== 0 && (e.f ^= ct), g;
1496
+ } catch (b) {
1497
+ return xs(b);
1498
+ } finally {
1499
+ e.f ^= vr, ve = t, be = n, xe = r, x = a, Ae = s, Vt(i), Se = o, Et = f;
1500
+ }
1501
+ }
1502
+ function ef(e, t) {
1503
+ let n = t.reactions;
1504
+ if (n !== null) {
1505
+ var r = ei.call(n, e);
1506
+ if (r !== -1) {
1507
+ var a = n.length - 1;
1508
+ a === 0 ? n = t.reactions = null : (n[r] = n[a], n.pop());
1509
+ }
1510
+ }
1511
+ n === null && (t.f & oe) !== 0 && // Destroying a child effect while updating a parent effect can cause a dependency to appear
1512
+ // to be unused, when in fact it is used by the currently-updating parent. Checking `new_deps`
1513
+ // allows us to skip the expensive work of disconnecting and immediately reconnecting it
1514
+ (ve === null || !ve.includes(t)) && (le(t, nt), (t.f & je) !== 0 && (t.f ^= je, t.f &= ~ln), Ts(
1515
+ /** @type {Derived} **/
1516
+ t
1517
+ ), Qn(
1518
+ /** @type {Derived} **/
1519
+ t,
1520
+ 0
1521
+ ));
1522
+ }
1523
+ function Qn(e, t) {
1524
+ var n = e.deps;
1525
+ if (n !== null)
1526
+ for (var r = t; r < n.length; r++)
1527
+ ef(e, n[r]);
1528
+ }
1529
+ function un(e) {
1530
+ var t = e.f;
1531
+ if ((t & Ot) === 0) {
1532
+ le(e, fe);
1533
+ var n = k, r = xt;
1534
+ k = e, xt = !0;
1535
+ try {
1536
+ (t & et) !== 0 ? Ui(e) : Gs(e), Ss(e);
1537
+ var a = ea(e);
1538
+ e.teardown = typeof a == "function" ? a : null, e.wv = Us;
1539
+ var s;
1540
+ } finally {
1541
+ xt = r, k = n;
1542
+ }
1543
+ }
1544
+ }
1545
+ async function tf() {
1546
+ await Promise.resolve(), xi();
1547
+ }
1548
+ function l(e) {
1549
+ var t = e.f, n = (t & oe) !== 0;
1550
+ if (x !== null && !Se) {
1551
+ var r = k !== null && (k.f & Ot) !== 0;
1552
+ if (!r && !(Ae != null && Ae.includes(e))) {
1553
+ var a = x.deps;
1554
+ if ((x.f & vr) !== 0)
1555
+ e.rv < on && (e.rv = on, ve === null && a !== null && a[be] === e ? be++ : ve === null ? ve = [e] : ve.includes(e) || ve.push(e));
1556
+ else {
1557
+ (x.deps ?? (x.deps = [])).push(e);
1558
+ var s = e.reactions;
1559
+ s === null ? e.reactions = [x] : s.includes(x) || s.push(x);
1560
+ }
1561
+ }
1562
+ }
1563
+ if (en) {
1564
+ if (dt.has(e))
1565
+ return dt.get(e);
1566
+ if (n) {
1567
+ var i = (
1568
+ /** @type {Derived} */
1569
+ e
1570
+ ), o = i.v;
1571
+ return ((i.f & fe) === 0 && i.reactions !== null || na(i)) && (o = Cr(i)), dt.set(i, o), o;
1572
+ }
1573
+ } else if (n) {
1574
+ if (i = /** @type {Derived} */
1575
+ e, q != null && q.has(i))
1576
+ return q.get(i);
1577
+ An(i) && js(i), xt && In() && (i.f & je) === 0 && ta(i);
1578
+ } else if (q != null && q.has(e))
1579
+ return q.get(e);
1580
+ if ((e.f & ct) !== 0)
1581
+ throw e.v;
1582
+ return e.v;
1583
+ }
1584
+ function ta(e) {
1585
+ if (e.deps !== null) {
1586
+ e.f ^= je;
1587
+ for (const t of e.deps)
1588
+ (t.reactions ?? (t.reactions = [])).push(e), (t.f & oe) !== 0 && (t.f & je) === 0 && ta(
1589
+ /** @type {Derived} */
1590
+ t
1591
+ );
1592
+ }
1593
+ }
1594
+ function na(e) {
1595
+ if (e.v === ae) return !0;
1596
+ if (e.deps === null) return !1;
1597
+ for (const t of e.deps)
1598
+ if (dt.has(t) || (t.f & oe) !== 0 && na(
1599
+ /** @type {Derived} */
1600
+ t
1601
+ ))
1602
+ return !0;
1603
+ return !1;
1604
+ }
1605
+ function Yn(e) {
1606
+ var t = Se;
1607
+ try {
1608
+ return Se = !0, e();
1609
+ } finally {
1610
+ Se = t;
1611
+ }
1612
+ }
1613
+ const nf = -7169;
1614
+ function le(e, t) {
1615
+ e.f = e.f & nf | t;
1616
+ }
1617
+ const rf = ["touchstart", "touchmove"];
1618
+ function sf(e) {
1619
+ return rf.includes(e);
1620
+ }
1621
+ const ra = /* @__PURE__ */ new Set(), pr = /* @__PURE__ */ new Set();
1622
+ function af(e, t, n, r = {}) {
1623
+ function a(s) {
1624
+ if (r.capture || rn.call(t, s), !s.cancelBubble)
1625
+ return Rn(() => n == null ? void 0 : n.call(this, s));
1626
+ }
1627
+ return e.startsWith("pointer") || e.startsWith("touch") || e === "wheel" ? $t(() => {
1628
+ t.addEventListener(e, a, r);
1629
+ }) : t.addEventListener(e, a, r), a;
1630
+ }
1631
+ function ir(e, t, n, r, a) {
1632
+ var s = { capture: r, passive: a }, i = af(e, t, n, s);
1633
+ (t === document.body || // @ts-ignore
1634
+ t === window || // @ts-ignore
1635
+ t === document || // Firefox has quirky behavior, it can happen that we still get "canplay" events when the element is already removed
1636
+ t instanceof HTMLMediaElement) && Is(() => {
1637
+ t.removeEventListener(e, i, s);
1638
+ });
1639
+ }
1640
+ function ff(e) {
1641
+ for (var t = 0; t < e.length; t++)
1642
+ ra.add(e[t]);
1643
+ for (var n of pr)
1644
+ n(e);
1645
+ }
1646
+ let is = null;
1647
+ function rn(e) {
1648
+ var B;
1649
+ var t = this, n = (
1650
+ /** @type {Node} */
1651
+ t.ownerDocument
1652
+ ), r = e.type, a = ((B = e.composedPath) == null ? void 0 : B.call(e)) || [], s = (
1653
+ /** @type {null | Element} */
1654
+ a[0] || e.target
1655
+ );
1656
+ is = e;
1657
+ var i = 0, o = is === e && e.__root;
1658
+ if (o) {
1659
+ var f = a.indexOf(o);
1660
+ if (f !== -1 && (t === document || t === /** @type {any} */
1661
+ window)) {
1662
+ e.__root = t;
1663
+ return;
1664
+ }
1665
+ var c = a.indexOf(t);
1666
+ if (c === -1)
1667
+ return;
1668
+ f <= c && (i = f);
1669
+ }
1670
+ if (s = /** @type {Element} */
1671
+ a[i] || e.target, s !== t) {
1672
+ ti(e, "currentTarget", {
1673
+ configurable: !0,
1674
+ get() {
1675
+ return s || n;
1676
+ }
1677
+ });
1678
+ var w = x, g = k;
1679
+ Pe(null), Ge(null);
1680
+ try {
1681
+ for (var v, A = []; s !== null; ) {
1682
+ var h = s.assignedSlot || s.parentNode || /** @type {any} */
1683
+ s.host || null;
1684
+ try {
1685
+ var b = s["__" + r];
1686
+ b != null && (!/** @type {any} */
1687
+ s.disabled || // DOM could've been updated already by the time this is reached, so we check this as well
1688
+ // -> the target could not have been disabled because it emits the event in the first place
1689
+ e.target === s) && b.call(s, e);
1690
+ } catch (T) {
1691
+ v ? A.push(T) : v = T;
1692
+ }
1693
+ if (e.cancelBubble || h === t || h === null)
1694
+ break;
1695
+ s = h;
1696
+ }
1697
+ if (v) {
1698
+ for (let T of A)
1699
+ queueMicrotask(() => {
1700
+ throw T;
1701
+ });
1702
+ throw v;
1703
+ }
1704
+ } finally {
1705
+ e.__root = t, delete e.currentTarget, Pe(w), Ge(g);
1706
+ }
1707
+ }
1708
+ }
1709
+ function lf(e) {
1710
+ var t = document.createElement("template");
1711
+ return t.innerHTML = e.replaceAll("<!>", "<!---->"), t.content;
1712
+ }
1713
+ function Br(e, t) {
1714
+ var n = (
1715
+ /** @type {Effect} */
1716
+ k
1717
+ );
1718
+ n.nodes_start === null && (n.nodes_start = e, n.nodes_end = t);
1719
+ }
1720
+ // @__NO_SIDE_EFFECTS__
1721
+ function M(e, t) {
1722
+ var n = (t & Bi) !== 0, r = (t & bi) !== 0, a, s = !e.startsWith("<!>");
1723
+ return () => {
1724
+ a === void 0 && (a = lf(s ? e : "<!>" + e), n || (a = /** @type {Node} */
1725
+ /* @__PURE__ */ zn(a)));
1726
+ var i = (
1727
+ /** @type {TemplateNode} */
1728
+ r || Ms ? document.importNode(a, !0) : a.cloneNode(!0)
1729
+ );
1730
+ if (n) {
1731
+ var o = (
1732
+ /** @type {TemplateNode} */
1733
+ /* @__PURE__ */ zn(i)
1734
+ ), f = (
1735
+ /** @type {TemplateNode} */
1736
+ i.lastChild
1737
+ );
1738
+ Br(o, f);
1739
+ } else
1740
+ Br(i, i);
1741
+ return i;
1742
+ };
1743
+ }
1744
+ function of() {
1745
+ var e = document.createDocumentFragment(), t = document.createComment(""), n = Qt();
1746
+ return e.append(t, n), Br(t, n), e;
1747
+ }
1748
+ function X(e, t) {
1749
+ e !== null && e.before(
1750
+ /** @type {Node} */
1751
+ t
1752
+ );
1753
+ }
1754
+ function Z(e, t) {
1755
+ var n = t == null ? "" : typeof t == "object" ? t + "" : t;
1756
+ n !== (e.__t ?? (e.__t = e.nodeValue)) && (e.__t = n, e.nodeValue = n + "");
1757
+ }
1758
+ function uf(e, t) {
1759
+ return cf(e, t);
1760
+ }
1761
+ const It = /* @__PURE__ */ new Map();
1762
+ function cf(e, { target: t, anchor: n, props: r = {}, events: a, context: s, intro: i = !0 }) {
1763
+ Yi();
1764
+ var o = /* @__PURE__ */ new Set(), f = (g) => {
1765
+ for (var v = 0; v < g.length; v++) {
1766
+ var A = g[v];
1767
+ if (!o.has(A)) {
1768
+ o.add(A);
1769
+ var h = sf(A);
1770
+ t.addEventListener(A, rn, { passive: h });
1771
+ var b = It.get(A);
1772
+ b === void 0 ? (document.addEventListener(A, rn, { passive: h }), It.set(A, 1)) : It.set(A, b + 1);
1773
+ }
1774
+ }
1775
+ };
1776
+ f(mr(ra)), pr.add(f);
1777
+ var c = void 0, w = Ki(() => {
1778
+ var g = n ?? t.appendChild(Qt());
1779
+ return Qi(
1780
+ /** @type {TemplateNode} */
1781
+ g,
1782
+ {
1783
+ pending: () => {
1784
+ }
1785
+ },
1786
+ (v) => {
1787
+ if (s) {
1788
+ ys({});
1789
+ var A = (
1790
+ /** @type {ComponentContext} */
1791
+ He
1792
+ );
1793
+ A.c = s;
1794
+ }
1795
+ a && (r.$$events = a), c = e(v, r) || {}, s && ms();
1796
+ }
1797
+ ), () => {
1798
+ var h;
1799
+ for (var v of o) {
1800
+ t.removeEventListener(v, rn);
1801
+ var A = (
1802
+ /** @type {number} */
1803
+ It.get(v)
1804
+ );
1805
+ --A === 0 ? (document.removeEventListener(v, rn), It.delete(v)) : It.set(v, A);
1806
+ }
1807
+ pr.delete(f), g !== n && ((h = g.parentNode) == null || h.removeChild(g));
1808
+ };
1809
+ });
1810
+ return br.set(c, w), c;
1811
+ }
1812
+ let br = /* @__PURE__ */ new WeakMap();
1813
+ function df(e, t) {
1814
+ const n = br.get(e);
1815
+ return n ? (br.delete(e), n(t)) : Promise.resolve();
1816
+ }
1817
+ var ke, Ye, De, dn, vn, jn;
1818
+ class vf {
1819
+ /**
1820
+ * @param {TemplateNode} anchor
1821
+ * @param {boolean} transition
1822
+ */
1823
+ constructor(t, n = !0) {
1824
+ /** @type {TemplateNode} */
1825
+ Me(this, "anchor");
1826
+ /** @type {Map<Batch, Key>} */
1827
+ z(this, ke, /* @__PURE__ */ new Map());
1828
+ /** @type {Map<Key, Effect>} */
1829
+ z(this, Ye, /* @__PURE__ */ new Map());
1830
+ /** @type {Map<Key, Branch>} */
1831
+ z(this, De, /* @__PURE__ */ new Map());
1832
+ /**
1833
+ * Whether to pause (i.e. outro) on change, or destroy immediately.
1834
+ * This is necessary for `<svelte:element>`
1835
+ */
1836
+ z(this, dn, !0);
1837
+ z(this, vn, () => {
1838
+ var t = (
1839
+ /** @type {Batch} */
1840
+ N
1841
+ );
1842
+ if (u(this, ke).has(t)) {
1843
+ var n = (
1844
+ /** @type {Key} */
1845
+ u(this, ke).get(t)
1846
+ ), r = u(this, Ye).get(n);
1847
+ if (r)
1848
+ Tr(r);
1849
+ else {
1850
+ var a = u(this, De).get(n);
1851
+ a && (u(this, Ye).set(n, a.effect), u(this, De).delete(n), a.fragment.lastChild.remove(), this.anchor.before(a.fragment), r = a.effect);
1852
+ }
1853
+ for (const [s, i] of u(this, ke)) {
1854
+ if (u(this, ke).delete(s), s === t)
1855
+ break;
1856
+ const o = u(this, De).get(i);
1857
+ o && (ge(o.effect), u(this, De).delete(i));
1858
+ }
1859
+ for (const [s, i] of u(this, Ye)) {
1860
+ if (s === n) continue;
1861
+ const o = () => {
1862
+ if (Array.from(u(this, ke).values()).includes(s)) {
1863
+ var c = document.createDocumentFragment();
1864
+ Vs(i, c), c.append(Qt()), u(this, De).set(s, { effect: i, fragment: c });
1865
+ } else
1866
+ ge(i);
1867
+ u(this, Ye).delete(s);
1868
+ };
1869
+ u(this, dn) || !r ? Zt(i, o, !1) : o();
1870
+ }
1871
+ }
1872
+ });
1873
+ /**
1874
+ * @param {Batch} batch
1875
+ */
1876
+ z(this, jn, (t) => {
1877
+ u(this, ke).delete(t);
1878
+ const n = Array.from(u(this, ke).values());
1879
+ for (const [r, a] of u(this, De))
1880
+ n.includes(r) || (ge(a.effect), u(this, De).delete(r));
1881
+ });
1882
+ this.anchor = t, y(this, dn, n);
1883
+ }
1884
+ /**
1885
+ *
1886
+ * @param {any} key
1887
+ * @param {null | ((target: TemplateNode) => void)} fn
1888
+ */
1889
+ ensure(t, n) {
1890
+ var r = (
1891
+ /** @type {Batch} */
1892
+ N
1893
+ ), a = Rs();
1894
+ if (n && !u(this, Ye).has(t) && !u(this, De).has(t))
1895
+ if (a) {
1896
+ var s = document.createDocumentFragment(), i = Qt();
1897
+ s.append(i), u(this, De).set(t, {
1898
+ effect: Te(() => n(i)),
1899
+ fragment: s
1900
+ });
1901
+ } else
1902
+ u(this, Ye).set(
1903
+ t,
1904
+ Te(() => n(this.anchor))
1905
+ );
1906
+ if (u(this, ke).set(r, t), a) {
1907
+ for (const [o, f] of u(this, Ye))
1908
+ o === t ? r.skipped_effects.delete(f) : r.skipped_effects.add(f);
1909
+ for (const [o, f] of u(this, De))
1910
+ o === t ? r.skipped_effects.delete(f.effect) : r.skipped_effects.add(f.effect);
1911
+ r.oncommit(u(this, vn)), r.ondiscard(u(this, jn));
1912
+ } else
1913
+ u(this, vn).call(this);
1914
+ }
1915
+ }
1916
+ ke = new WeakMap(), Ye = new WeakMap(), De = new WeakMap(), dn = new WeakMap(), vn = new WeakMap(), jn = new WeakMap();
1917
+ function _(e, t, n = !1) {
1918
+ var r = new vf(e), a = n ? Kt : 0;
1919
+ function s(i, o) {
1920
+ r.ensure(i, o);
1921
+ }
1922
+ Qr(() => {
1923
+ var i = !1;
1924
+ t((o, f = !0) => {
1925
+ i = !0, s(f, o);
1926
+ }), i || s(!1, null);
1927
+ }, a);
1928
+ }
1929
+ function gf(e, t) {
1930
+ return t;
1931
+ }
1932
+ function Af(e, t, n) {
1933
+ for (var r = e.items, a = [], s = t.length, i = 0; i < s; i++)
1934
+ kr(t[i].e, a, !0);
1935
+ var o = s > 0 && a.length === 0 && n !== null;
1936
+ if (o) {
1937
+ var f = (
1938
+ /** @type {Element} */
1939
+ /** @type {Element} */
1940
+ n.parentNode
1941
+ );
1942
+ Zi(f), f.append(
1943
+ /** @type {Element} */
1944
+ n
1945
+ ), r.clear(), Le(e, t[0].prev, t[s - 1].next);
1946
+ }
1947
+ qs(a, () => {
1948
+ for (var c = 0; c < s; c++) {
1949
+ var w = t[c];
1950
+ o || (r.delete(w.k), Le(e, w.prev, w.next)), ge(w.e, !o);
1951
+ }
1952
+ });
1953
+ }
1954
+ function fr(e, t, n, r, a, s = null) {
1955
+ var i = e, o = { flags: t, items: /* @__PURE__ */ new Map(), first: null }, f = (t & Bs) !== 0;
1956
+ if (f) {
1957
+ var c = (
1958
+ /** @type {Element} */
1959
+ e
1960
+ );
1961
+ i = c.appendChild(Qt());
1962
+ }
1963
+ var w = null, g = !1, v = /* @__PURE__ */ new Map(), A = /* @__PURE__ */ Li(() => {
1964
+ var T = n();
1965
+ return ws(T) ? T : T == null ? [] : mr(T);
1966
+ }), h, b;
1967
+ function B() {
1968
+ wf(
1969
+ b,
1970
+ h,
1971
+ o,
1972
+ v,
1973
+ i,
1974
+ a,
1975
+ t,
1976
+ r,
1977
+ n
1978
+ ), s !== null && (h.length === 0 ? w ? Tr(w) : w = Te(() => s(i)) : w !== null && Zt(w, () => {
1979
+ w = null;
1980
+ }));
1981
+ }
1982
+ Qr(() => {
1983
+ b ?? (b = /** @type {Effect} */
1984
+ k), h = /** @type {V[]} */
1985
+ l(A);
1986
+ var T = h.length;
1987
+ if (!(g && T === 0)) {
1988
+ g = T === 0;
1989
+ var F, I, S, K;
1990
+ if (Rs()) {
1991
+ var E = /* @__PURE__ */ new Set(), j = (
1992
+ /** @type {Batch} */
1993
+ N
1994
+ );
1995
+ for (I = 0; I < T; I += 1) {
1996
+ S = h[I], K = r(S, I);
1997
+ var ue = o.items.get(K) ?? v.get(K);
1998
+ ue ? (t & (Mn | Ln)) !== 0 && sa(ue, S, I, t) : (F = aa(
1999
+ null,
2000
+ o,
2001
+ null,
2002
+ null,
2003
+ S,
2004
+ K,
2005
+ I,
2006
+ a,
2007
+ t,
2008
+ n,
2009
+ !0
2010
+ ), v.set(K, F)), E.add(K);
2011
+ }
2012
+ for (const [We, st] of o.items)
2013
+ E.has(We) || j.skipped_effects.add(st.e);
2014
+ j.oncommit(B);
2015
+ } else
2016
+ B();
2017
+ l(A);
2018
+ }
2019
+ });
2020
+ }
2021
+ function wf(e, t, n, r, a, s, i, o, f) {
2022
+ var it, jt, Xt, we;
2023
+ var c = (i & Pi) !== 0, w = (i & (Mn | Ln)) !== 0, g = t.length, v = n.items, A = n.first, h = A, b, B = null, T, F = [], I = [], S, K, E, j;
2024
+ if (c)
2025
+ for (j = 0; j < g; j += 1)
2026
+ S = t[j], K = o(S, j), E = v.get(K), E !== void 0 && ((it = E.a) == null || it.measure(), (T ?? (T = /* @__PURE__ */ new Set())).add(E));
2027
+ for (j = 0; j < g; j += 1) {
2028
+ if (S = t[j], K = o(S, j), E = v.get(K), E === void 0) {
2029
+ var ue = r.get(K);
2030
+ if (ue !== void 0) {
2031
+ r.delete(K), v.set(K, ue);
2032
+ var We = B ? B.next : h;
2033
+ Le(n, B, ue), Le(n, ue, We), lr(ue, We, a), B = ue;
2034
+ } else {
2035
+ var st = h ? (
2036
+ /** @type {TemplateNode} */
2037
+ h.e.nodes_start
2038
+ ) : a;
2039
+ B = aa(
2040
+ st,
2041
+ n,
2042
+ B,
2043
+ B === null ? n.first : B.next,
2044
+ S,
2045
+ K,
2046
+ j,
2047
+ s,
2048
+ i,
2049
+ f
2050
+ );
2051
+ }
2052
+ v.set(K, B), F = [], I = [], h = B.next;
2053
+ continue;
2054
+ }
2055
+ if (w && sa(E, S, j, i), (E.e.f & ye) !== 0 && (Tr(E.e), c && ((jt = E.a) == null || jt.unfix(), (T ?? (T = /* @__PURE__ */ new Set())).delete(E))), E !== h) {
2056
+ if (b !== void 0 && b.has(E)) {
2057
+ if (F.length < I.length) {
2058
+ var qe = I[0], pe;
2059
+ B = qe.prev;
2060
+ var Tt = F[0], te = F[F.length - 1];
2061
+ for (pe = 0; pe < F.length; pe += 1)
2062
+ lr(F[pe], qe, a);
2063
+ for (pe = 0; pe < I.length; pe += 1)
2064
+ b.delete(I[pe]);
2065
+ Le(n, Tt.prev, te.next), Le(n, B, Tt), Le(n, te, qe), h = qe, B = te, j -= 1, F = [], I = [];
2066
+ } else
2067
+ b.delete(E), lr(E, h, a), Le(n, E.prev, E.next), Le(n, E, B === null ? n.first : B.next), Le(n, B, E), B = E;
2068
+ continue;
2069
+ }
2070
+ for (F = [], I = []; h !== null && h.k !== K; )
2071
+ (h.e.f & ye) === 0 && (b ?? (b = /* @__PURE__ */ new Set())).add(h), I.push(h), h = h.next;
2072
+ if (h === null)
2073
+ continue;
2074
+ E = h;
2075
+ }
2076
+ F.push(E), B = E, h = E.next;
2077
+ }
2078
+ if (h !== null || b !== void 0) {
2079
+ for (var ne = b === void 0 ? [] : mr(b); h !== null; )
2080
+ (h.e.f & ye) === 0 && ne.push(h), h = h.next;
2081
+ var at = ne.length;
2082
+ if (at > 0) {
2083
+ var Zn = (i & Bs) !== 0 && g === 0 ? a : null;
2084
+ if (c) {
2085
+ for (j = 0; j < at; j += 1)
2086
+ (Xt = ne[j].a) == null || Xt.measure();
2087
+ for (j = 0; j < at; j += 1)
2088
+ (we = ne[j].a) == null || we.fix();
2089
+ }
2090
+ Af(n, ne, Zn);
2091
+ }
2092
+ }
2093
+ c && $t(() => {
2094
+ var wn;
2095
+ if (T !== void 0)
2096
+ for (E of T)
2097
+ (wn = E.a) == null || wn.apply();
2098
+ }), e.first = n.first && n.first.e, e.last = B && B.e;
2099
+ for (var Sn of r.values())
2100
+ ge(Sn.e);
2101
+ r.clear();
2102
+ }
2103
+ function sa(e, t, n, r) {
2104
+ (r & Mn) !== 0 && Ut(e.v, t), (r & Ln) !== 0 ? Ut(
2105
+ /** @type {Value<number>} */
2106
+ e.i,
2107
+ n
2108
+ ) : e.i = n;
2109
+ }
2110
+ function aa(e, t, n, r, a, s, i, o, f, c, w) {
2111
+ var g = (f & Mn) !== 0, v = (f & pi) === 0, A = g ? v ? /* @__PURE__ */ Ri(a, !1, !1) : zt(a) : a, h = (f & Ln) === 0 ? i : zt(i), b = {
2112
+ i: h,
2113
+ v: A,
2114
+ k: s,
2115
+ a: null,
2116
+ // @ts-expect-error
2117
+ e: null,
2118
+ prev: n,
2119
+ next: r
2120
+ };
2121
+ try {
2122
+ if (e === null) {
2123
+ var B = document.createDocumentFragment();
2124
+ B.append(e = Qt());
2125
+ }
2126
+ return b.e = Te(() => o(
2127
+ /** @type {Node} */
2128
+ e,
2129
+ A,
2130
+ h,
2131
+ c
2132
+ ), mi), b.e.prev = n && n.e, b.e.next = r && r.e, n === null ? w || (t.first = b) : (n.next = b, n.e.next = b.e), r !== null && (r.prev = b, r.e.prev = b.e), b;
2133
+ } finally {
2134
+ }
2135
+ }
2136
+ function lr(e, t, n) {
2137
+ for (var r = e.next ? (
2138
+ /** @type {TemplateNode} */
2139
+ e.next.e.nodes_start
2140
+ ) : n, a = t ? (
2141
+ /** @type {TemplateNode} */
2142
+ t.e.nodes_start
2143
+ ) : n, s = (
2144
+ /** @type {TemplateNode} */
2145
+ e.e.nodes_start
2146
+ ); s !== null && s !== r; ) {
2147
+ var i = (
2148
+ /** @type {TemplateNode} */
2149
+ /* @__PURE__ */ gn(s)
2150
+ );
2151
+ a.before(s), s = i;
2152
+ }
2153
+ }
2154
+ function Le(e, t, n) {
2155
+ t === null ? e.first = n : (t.next = n, t.e.next = n && n.e), n !== null && (n.prev = t, n.e.prev = t && t.e);
2156
+ }
2157
+ function hf(e, t, n) {
2158
+ var r = e == null ? "" : "" + e;
2159
+ return r = r ? r + " " + t : t, r === "" ? null : r;
2160
+ }
2161
+ function Pf(e, t) {
2162
+ return e == null ? null : String(e);
2163
+ }
2164
+ function yn(e, t, n, r, a, s) {
2165
+ var i = e.__className;
2166
+ if (i !== n || i === void 0) {
2167
+ var o = hf(n, r);
2168
+ o == null ? e.removeAttribute("class") : e.className = o, e.__className = n;
2169
+ }
2170
+ return s;
2171
+ }
2172
+ function pf(e, t, n, r) {
2173
+ var a = e.__style;
2174
+ if (a !== t) {
2175
+ var s = Pf(t);
2176
+ s == null ? e.removeAttribute("style") : e.style.cssText = s, e.__style = t;
2177
+ }
2178
+ return r;
2179
+ }
2180
+ const Bf = Symbol("is custom element"), bf = Symbol("is html");
2181
+ function de(e, t, n, r) {
2182
+ var a = Df(e);
2183
+ a[t] !== (a[t] = n) && (t === "loading" && (e[fi] = n), n == null ? e.removeAttribute(t) : typeof n != "string" && yf(e).includes(t) ? e[t] = n : e.setAttribute(t, n));
2184
+ }
2185
+ function Df(e) {
2186
+ return (
2187
+ /** @type {Record<string | symbol, unknown>} **/
2188
+ // @ts-expect-error
2189
+ e.__attributes ?? (e.__attributes = {
2190
+ [Bf]: e.nodeName.includes("-"),
2191
+ [bf]: e.namespaceURI === Di
2192
+ })
2193
+ );
2194
+ }
2195
+ var fs = /* @__PURE__ */ new Map();
2196
+ function yf(e) {
2197
+ var t = e.getAttribute("is") || e.nodeName, n = fs.get(t);
2198
+ if (n) return n;
2199
+ fs.set(t, n = []);
2200
+ for (var r, a = e, s = Element.prototype; s !== a; ) {
2201
+ r = ni(a);
2202
+ for (var i in r)
2203
+ r[i].set && n.push(i);
2204
+ a = hs(a);
2205
+ }
2206
+ return n;
2207
+ }
2208
+ function mf(e, t, n = t) {
2209
+ var r = /* @__PURE__ */ new WeakSet();
2210
+ Gi(e, "input", async (a) => {
2211
+ var s = a ? e.defaultValue : e.value;
2212
+ if (s = or(e) ? ur(s) : s, n(s), N !== null && r.add(N), await tf(), s !== (s = t())) {
2213
+ var i = e.selectionStart, o = e.selectionEnd, f = e.value.length;
2214
+ if (e.value = s ?? "", o !== null) {
2215
+ var c = e.value.length;
2216
+ i === o && o === f && c > f ? (e.selectionStart = c, e.selectionEnd = c) : (e.selectionStart = i, e.selectionEnd = Math.min(o, c));
2217
+ }
2218
+ }
2219
+ }), // If we are hydrating and the value has since changed,
2220
+ // then use the updated value from the input instead.
2221
+ // If defaultValue is set, then value == defaultValue
2222
+ // TODO Svelte 6: remove input.value check and set to empty string?
2223
+ Yn(t) == null && e.value && (n(or(e) ? ur(e.value) : e.value), N !== null && r.add(N)), zr(() => {
2224
+ var a = t();
2225
+ if (e === document.activeElement) {
2226
+ var s = (
2227
+ /** @type {Batch} */
2228
+ On ?? N
2229
+ );
2230
+ if (r.has(s))
2231
+ return;
2232
+ }
2233
+ or(e) && a === ur(e.value) || e.type === "date" && !a && !e.value || a !== e.value && (e.value = a ?? "");
2234
+ });
2235
+ }
2236
+ function or(e) {
2237
+ var t = e.type;
2238
+ return t === "number" || t === "range";
2239
+ }
2240
+ function ur(e) {
2241
+ return e === "" ? null : +e;
2242
+ }
2243
+ function ls(e, t) {
2244
+ return e === t || (e == null ? void 0 : e[Hn]) === t;
2245
+ }
2246
+ function Hf(e = {}, t, n, r) {
2247
+ return Vi(() => {
2248
+ var a, s;
2249
+ return zr(() => {
2250
+ a = s, s = [], Yn(() => {
2251
+ e !== n(...s) && (t(e, ...s), a && ls(n(...a), e) && t(null, ...a));
2252
+ });
2253
+ }), () => {
2254
+ $t(() => {
2255
+ s && ls(n(...s), e) && t(null, ...s);
2256
+ });
2257
+ };
2258
+ }), e;
2259
+ }
2260
+ function os(e, t, n, r) {
2261
+ var a = (
2262
+ /** @type {V} */
2263
+ r
2264
+ ), s = !0, i = () => (s && (s = !1, a = /** @type {V} */
2265
+ r), a), o;
2266
+ o = /** @type {V} */
2267
+ e[t], o === void 0 && r !== void 0 && (o = i());
2268
+ var f;
2269
+ return f = () => {
2270
+ var c = (
2271
+ /** @type {V} */
2272
+ e[t]
2273
+ );
2274
+ return c === void 0 ? i() : (s = !0, c);
2275
+ }, f;
2276
+ }
2277
+ function Of(e) {
2278
+ He === null && li(), Ys(() => {
2279
+ const t = Yn(e);
2280
+ if (typeof t == "function") return (
2281
+ /** @type {() => void} */
2282
+ t
2283
+ );
2284
+ });
2285
+ }
2286
+ const xf = "5";
2287
+ var As;
2288
+ typeof window < "u" && ((As = window.__svelte ?? (window.__svelte = {})).v ?? (As.v = /* @__PURE__ */ new Set())).add(xf);
2289
+ const cr = "data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20id='Layer_2'%20data-name='Layer%202'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20viewBox='0%200%20173.87%20152.3'%3e%3cdefs%3e%3cstyle%3e%20.cls-1%20{%20fill:%20%23111;%20}%20.cls-2%20{%20fill:%20%23fff;%20}%20.cls-3%20{%20fill:%20none;%20}%20.cls-4%20{%20clip-path:%20url(%23clippath-1);%20}%20.cls-5%20{%20clip-path:%20url(%23clippath);%20}%20%3c/style%3e%3cclipPath%20id='clippath'%3e%3crect%20class='cls-3'%20x='0'%20y='54.59'%20width='173.87'%20height='97.72'%20rx='47.19'%20ry='47.19'/%3e%3c/clipPath%3e%3cclipPath%20id='clippath-1'%3e%3crect%20class='cls-3'%20x='-5'%20y='49.59'%20width='183.87'%20height='107.72'/%3e%3c/clipPath%3e%3c/defs%3e%3cg%20id='Layer_1-2'%20data-name='Layer%201'%3e%3cg%3e%3cpath%20class='cls-1'%20d='M86.32,75.45l-3.05-3.05c2.34-2.33,4.25-4.94,5.7-7.75,9.07-17.63-2.58-38.84-5.01-42.91l3.71-2.21c2.63,4.42,15.25,27.44,5.14,47.09-1.65,3.21-3.83,6.18-6.48,8.83Z'/%3e%3cg%20class='cls-5'%3e%3cg%20class='cls-4'%3e%3cimage%20width='384'%20height='226'%20transform='translate(-5.17%2049.29)%20scale(.48)'%20xlink:href='data:image/png;base64,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'/%3e%3c/g%3e%3c/g%3e%3crect%20class='cls-1'%20x='0'%20y='61.14'%20width='161.38'%20height='84.6'%20rx='41.78'%20ry='41.78'%20transform='translate(161.38%20206.89)%20rotate(180)'/%3e%3ccircle%20class='cls-2'%20cx='36.34'%20cy='103.43'%20r='19.45'/%3e%3ccircle%20class='cls-2'%20cx='115.49'%20cy='103.43'%20r='19.45'/%3e%3crect%20class='cls-1'%20x='69'%20y='0'%20width='28.42'%20height='28.42'%20rx='14.21'%20ry='14.21'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e", Oe = {
2290
+ 70: "#141414",
2291
+ 60: "#4B4B4B",
2292
+ 50: "#8E8E8E",
2293
+ 40: "#CACACA",
2294
+ 10: "#F5F5F5",
2295
+ 5: "#FAFAFA"
2296
+ }, Je = {
2297
+ surface: "#E9EAF5",
2298
+ surfaceAlt: "#DCE6F6",
2299
+ header: "#C1E1F0",
2300
+ headerAlt: "#BFE2F4",
2301
+ bubble: "#CFD6FC",
2302
+ border: "#C6C3CB",
2303
+ link: "#4D20F5",
2304
+ glow: "#CBD8F5",
2305
+ glowAlt: "#D9D0F6"
2306
+ }, Ef = {
2307
+ sans: [
2308
+ "var(--ot-font-sans)",
2309
+ "Inter",
2310
+ "ui-sans-serif",
2311
+ "system-ui",
2312
+ "-apple-system",
2313
+ "BlinkMacSystemFont",
2314
+ "Segoe UI",
2315
+ "Roboto",
2316
+ "Helvetica Neue",
2317
+ "Arial",
2318
+ "sans-serif"
2319
+ ].join(",")
2320
+ }, dr = {
2321
+ xs: "0.75rem",
2322
+ // 12px
2323
+ sm: "0.875rem",
2324
+ // 14px
2325
+ base: "1rem"
2326
+ }, us = {
2327
+ medium: 500,
2328
+ semibold: 600
2329
+ }, Cf = {
2330
+ // 24px
2331
+ body: "1.375rem"
2332
+ }, zf = {
2333
+ 1: "0.25rem",
2334
+ // 4px
2335
+ 2: "0.5rem",
2336
+ // 8px
2337
+ 3: "0.75rem",
2338
+ // 12px
2339
+ 4: "1rem",
2340
+ // 16px
2341
+ 5: "1.25rem",
2342
+ // 20px
2343
+ 6: "1.5rem",
2344
+ // 24px
2345
+ 8: "2rem",
2346
+ // 32px
2347
+ 10: "2.5rem",
2348
+ // 40px
2349
+ 12: "3rem",
2350
+ 0.5: "0.125rem",
2351
+ // 2px
2352
+ 1.5: "0.375rem",
2353
+ // 6px
2354
+ 2.5: "0.625rem",
2355
+ // 10px
2356
+ 3.5: "0.875rem"
2357
+ }, cs = {
2358
+ lg: "0 2px 20px 0 rgba(0, 0, 0, 0.04), 0 8px 20px 0 rgba(0, 0, 0, 0.06)",
2359
+ xl: "0 8px 32px 0 rgba(0, 0, 0, 0.08), 0 24px 60px 0 rgba(0, 0, 0, 0.12)"
2360
+ }, mn = {
2361
+ // 6px
2362
+ // Large border radius - for larger containers and modals
2363
+ lg: "0.5rem",
2364
+ // 8px
2365
+ // Extra large border radius - for special UI elements
2366
+ xl: "0.75rem",
2367
+ // 12px
2368
+ // 2XL border radius - for very rounded elements
2369
+ "2xl": "1rem",
2370
+ // 24px
2371
+ // Full border radius - for circular elements
2372
+ full: "9999px"
2373
+ }, Dr = {
2374
+ widget: {
2375
+ welcomeSubtitle: "How can we help?",
2376
+ placeholder: "Ask your question",
2377
+ poweredBy: "Powered by Olotalk",
2378
+ errorGeneric: "Sorry, something went wrong.",
2379
+ errorSession: "Unable to start a session. Please try again.",
2380
+ showSources: "Show sources",
2381
+ hideSources: "Hide sources",
2382
+ source: "Source",
2383
+ attachment: "Attachment",
2384
+ attachLocalFile: "Add local file",
2385
+ attachGoogleDrive: "Add Google Drive file",
2386
+ attachOneDrive: "Add OneDrive file",
2387
+ attachMore: "More",
2388
+ teaserMessages: ["Need help?", "Thank you!"],
2389
+ ariaReset: "Reset",
2390
+ ariaExpand: "Expand",
2391
+ ariaClose: "Close",
2392
+ ariaExitAudio: "Exit audio",
2393
+ ariaAttach: "Attach",
2394
+ ariaMessage: "Message",
2395
+ ariaSend: "Send",
2396
+ ariaAudio: "Audio",
2397
+ ariaOpenChat: "Open chat",
2398
+ ariaTeaser: "Teaser"
2399
+ }
2400
+ }, ds = {
2401
+ widget: {
2402
+ welcomeSubtitle: "Comment pouvons-nous vous aider ?",
2403
+ placeholder: "Posez votre question",
2404
+ poweredBy: "Propulsé par Olotalk",
2405
+ errorGeneric: "Désolé, une erreur s'est produite.",
2406
+ errorSession: "Impossible de démarrer une session. Veuillez réessayer.",
2407
+ showSources: "Afficher les sources",
2408
+ hideSources: "Masquer les sources",
2409
+ source: "Source",
2410
+ attachment: "Pièce jointe",
2411
+ attachLocalFile: "Ajouter un fichier local",
2412
+ attachGoogleDrive: "Ajouter un fichier Google Drive",
2413
+ attachOneDrive: "Ajouter un fichier OneDrive",
2414
+ attachMore: "Plus",
2415
+ teaserMessages: ["Besoin d'aide ?", "Merci !"],
2416
+ ariaReset: "Réinitialiser",
2417
+ ariaExpand: "Agrandir",
2418
+ ariaClose: "Fermer",
2419
+ ariaExitAudio: "Quitter l'audio",
2420
+ ariaAttach: "Joindre",
2421
+ ariaMessage: "Message",
2422
+ ariaSend: "Envoyer",
2423
+ ariaAudio: "Audio",
2424
+ ariaOpenChat: "Ouvrir le chat",
2425
+ ariaTeaser: "Accroche"
2426
+ }
2427
+ }, vs = {
2428
+ en: Dr,
2429
+ fr: ds,
2430
+ "en-CA": Dr,
2431
+ "fr-CA": ds
2432
+ };
2433
+ function Qf(e) {
2434
+ return vs[e] ?? vs.en ?? Dr;
2435
+ }
2436
+ const kf = ["en", "fr", "en-CA", "fr-CA"], Tf = ["en", "fr"];
2437
+ function jf(e) {
2438
+ if (!e) return null;
2439
+ const n = e.trim().replace("_", "-").toLowerCase(), r = kf.find((a) => a.toLowerCase() === n);
2440
+ return r || null;
2441
+ }
2442
+ function Xf(e) {
2443
+ if (!e) return null;
2444
+ const t = e.split(/[-_]/)[0].toLowerCase();
2445
+ return Tf.includes(t) ? t : null;
2446
+ }
2447
+ function Nf() {
2448
+ return typeof navigator > "u" ? null : navigator.language || null;
2449
+ }
2450
+ const gs = "en";
2451
+ function Mf(e) {
2452
+ const t = [
2453
+ e.explicit,
2454
+ e.browser ?? Nf(),
2455
+ e.assistant,
2456
+ e.fallback ?? gs
2457
+ ];
2458
+ for (const n of t) {
2459
+ if (!n) continue;
2460
+ const r = jf(n);
2461
+ if (r) return r;
2462
+ const a = Xf(n);
2463
+ if (a === "fr") return "fr";
2464
+ if (a === "en") return "en";
2465
+ }
2466
+ return gs;
2467
+ }
2468
+ var Lf = /* @__PURE__ */ M('<button class="icon-button svelte-gxf5w3"><svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="1.6" class="svelte-gxf5w3"><path d="M6 6l12 12" class="svelte-gxf5w3"></path><path d="M18 6l-12 12" class="svelte-gxf5w3"></path></svg></button>'), Ff = /* @__PURE__ */ M('<div class="audio-body svelte-gxf5w3"><div class="audio-dots svelte-gxf5w3" aria-hidden="true"><span class="svelte-gxf5w3"></span><span class="svelte-gxf5w3"></span><span class="svelte-gxf5w3"></span><span class="svelte-gxf5w3"></span><span class="svelte-gxf5w3"></span><span class="svelte-gxf5w3"></span></div> <button class="audio-close svelte-gxf5w3"><svg viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.8" class="svelte-gxf5w3"><path d="M6 6l12 12" class="svelte-gxf5w3"></path><path d="M18 6l-12 12" class="svelte-gxf5w3"></path></svg></button> <div class="powered svelte-gxf5w3"> </div></div>'), Rf = /* @__PURE__ */ M('<div class="welcome svelte-gxf5w3"><img alt="Olotalk" class="svelte-gxf5w3"/> <div class="svelte-gxf5w3"><h2 class="svelte-gxf5w3"> </h2> <p class="svelte-gxf5w3"> </p></div></div>'), If = /* @__PURE__ */ M('<div class="msg user svelte-gxf5w3"> </div>'), Yf = /* @__PURE__ */ M('<span class="typing svelte-gxf5w3" aria-hidden="true"><span class="svelte-gxf5w3"></span><span class="svelte-gxf5w3"></span><span class="svelte-gxf5w3"></span></span>'), Zf = /* @__PURE__ */ M('<a target="_blank" rel="noreferrer" class="svelte-gxf5w3"> </a>'), Sf = /* @__PURE__ */ M('<div class="svelte-gxf5w3"> </div>'), Gf = /* @__PURE__ */ M('<div class="svelte-gxf5w3"><div class="svelte-gxf5w3"> </div> <!> <!></div>'), Wf = /* @__PURE__ */ M('<div class="citations svelte-gxf5w3"></div>'), qf = /* @__PURE__ */ M('<button class="citations-toggle svelte-gxf5w3"> </button> <!>', 1), Kf = /* @__PURE__ */ M('<div class="msg assistant svelte-gxf5w3"> <!> <!></div>'), Vf = /* @__PURE__ */ M('<div class="typing svelte-gxf5w3" aria-hidden="true"><span class="svelte-gxf5w3"></span><span class="svelte-gxf5w3"></span><span class="svelte-gxf5w3"></span></div>'), Jf = /* @__PURE__ */ M('<div class="messages svelte-gxf5w3"><!> <!></div>'), Uf = /* @__PURE__ */ M('<div class="error svelte-gxf5w3"> </div>'), _f = /* @__PURE__ */ M('<button class="file-pill svelte-gxf5w3"><span class="badge svelte-gxf5w3"> </span> <span class="svelte-gxf5w3"> </span></button>'), $f = /* @__PURE__ */ M('<div class="attachment-strip svelte-gxf5w3"></div>'), el = /* @__PURE__ */ M('<div class="image-preview svelte-gxf5w3" aria-hidden="true"></div>'), tl = /* @__PURE__ */ M('<button class="action-button svelte-gxf5w3"><svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="1.8" class="svelte-gxf5w3"><path d="M4 12l16-8-6 16-2-6-6-2z" class="svelte-gxf5w3"></path></svg></button>'), nl = /* @__PURE__ */ M('<button class="action-button idle svelte-gxf5w3"><svg viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.6" class="svelte-gxf5w3"><path d="M5 12h2" class="svelte-gxf5w3"></path><path d="M9 8v8" class="svelte-gxf5w3"></path><path d="M13 6v12" class="svelte-gxf5w3"></path><path d="M17 9v6" class="svelte-gxf5w3"></path><path d="M21 12h-2" class="svelte-gxf5w3"></path></svg></button>'), rl = /* @__PURE__ */ M('<div class="attach-menu svelte-gxf5w3" role="menu"><button class="svelte-gxf5w3"> </button> <button class="svelte-gxf5w3"> </button> <button class="svelte-gxf5w3"> </button> <button class="svelte-gxf5w3"> <span aria-hidden="true" class="svelte-gxf5w3">&rsaquo;</span></button></div>'), sl = /* @__PURE__ */ M('<div class="attach-submenu svelte-gxf5w3" role="menu"><button class="svelte-gxf5w3"> </button> <button class="svelte-gxf5w3"> </button> <button class="svelte-gxf5w3"> </button></div>'), al = /* @__PURE__ */ M('<div class="content svelte-gxf5w3"><!> <!></div> <div class="composer svelte-gxf5w3"><!> <!> <div class="composer-row svelte-gxf5w3"><button class="mini-button svelte-gxf5w3">+</button> <textarea rows="1" class="svelte-gxf5w3"></textarea> <!></div></div> <!> <!> <div class="powered svelte-gxf5w3"> </div>', 1), il = /* @__PURE__ */ M('<div role="dialog" aria-modal="true" aria-labelledby="olotalk-title"><div class="header svelte-gxf5w3"><div class="brand svelte-gxf5w3"><img alt="Olotalk" class="svelte-gxf5w3"/> <span id="olotalk-title" class="svelte-gxf5w3"> </span></div> <div class="actions svelte-gxf5w3"><button class="icon-button svelte-gxf5w3"><svg viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="1.6" class="svelte-gxf5w3"><path d="M20 12a8 8 0 1 1-2.3-5.7" class="svelte-gxf5w3"></path><path d="M20 5v5h-5" class="svelte-gxf5w3"></path></svg></button> <button class="icon-button svelte-gxf5w3"><svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="1.6" class="svelte-gxf5w3"><path d="M8 4h-4v4" class="svelte-gxf5w3"></path><path d="M16 20h4v-4" class="svelte-gxf5w3"></path><path d="M4 8l5-5" class="svelte-gxf5w3"></path><path d="M20 16l-5 5" class="svelte-gxf5w3"></path></svg></button> <!></div></div> <!></div>'), fl = /* @__PURE__ */ M('<span class="unread-dot svelte-gxf5w3"></span>'), ll = /* @__PURE__ */ M("<div> </div>"), ol = /* @__PURE__ */ M('<button aria-haspopup="dialog"><img alt="Olotalk" class="svelte-gxf5w3"/> <!></button> <!>', 1), ul = /* @__PURE__ */ M("<div><!> <!></div>");
2469
+ function cl(e, t) {
2470
+ var Fr, Rr;
2471
+ ys(t, !0);
2472
+ const n = os(t, "theme", 3, "light"), r = os(t, "embedded", 3, !1), a = Mf({
2473
+ explicit: t.locale,
2474
+ browser: typeof navigator < "u" ? navigator.language : void 0,
2475
+ assistant: (Rr = (Fr = t.config) == null ? void 0 : Fr.i18n) == null ? void 0 : Rr.defaultLocale,
2476
+ fallback: "en"
2477
+ }), s = Qf(a);
2478
+ let i = 0;
2479
+ const o = () => `msg-${++i}`;
2480
+ let f = /* @__PURE__ */ L($e(r())), c = /* @__PURE__ */ L(!1), w = /* @__PURE__ */ L("chat"), g = n(), v = /* @__PURE__ */ L(""), A = /* @__PURE__ */ L(!1), h = /* @__PURE__ */ L(!1), b = /* @__PURE__ */ L($e([])), B = /* @__PURE__ */ L($e([])), T = /* @__PURE__ */ L(!1), F = /* @__PURE__ */ L(null), I = /* @__PURE__ */ L(!1), S = /* @__PURE__ */ L(null), K = /* @__PURE__ */ L(null), E = /* @__PURE__ */ L(!1), j = /* @__PURE__ */ L(0), ue = /* @__PURE__ */ L(0), We = null, st = null, qe = null, pe = null, Tt = /* @__PURE__ */ L(null);
2481
+ const te = zf;
2482
+ let ne = /* @__PURE__ */ Pt(() => typeof g == "string" ? g === "dark" : g.mode === "dark");
2483
+ const at = /* @__PURE__ */ Pt(() => {
2484
+ var d;
2485
+ return ((d = t.config) == null ? void 0 : d.theme) || {};
2486
+ }), Zn = /* @__PURE__ */ Pt(() => {
2487
+ const d = l(ne) ? Oe[70] : Je.surface, P = l(ne) ? Oe[60] : Je.surfaceAlt, D = l(ne) ? Oe[60] : Je.header, m = l(ne) ? Oe[50] : Je.headerAlt, Y = l(ne) ? Oe[60] : Je.bubble, G = l(ne) ? Oe[60] : Je.border, V = l(at).textColor || (l(ne) ? Oe[10] : Oe[70]), ft = l(ne) ? Oe[40] : Oe[50], $ = l(ne) ? Oe[70] : Oe[5], ce = l(at).primaryColor || Je.link, tn = l(at).fontFamily || Ef.sans, Jn = l(at).borderRadius || mn["2xl"], Un = {
2488
+ "--otw-surface": d,
2489
+ "--otw-surface-alt": P,
2490
+ "--otw-header": D,
2491
+ "--otw-header-alt": m,
2492
+ "--otw-bubble": Y,
2493
+ "--otw-border": G,
2494
+ "--otw-link": ce,
2495
+ "--otw-glow": Je.glow,
2496
+ "--otw-glow-alt": Je.glowAlt,
2497
+ "--otw-text": V,
2498
+ "--otw-muted": ft,
2499
+ "--otw-white": $,
2500
+ "--otw-font-sans": tn,
2501
+ "--otw-font-size-xs": dr.xs,
2502
+ "--otw-font-size-sm": dr.sm,
2503
+ "--otw-font-size-base": dr.base,
2504
+ "--otw-font-weight-medium": String(us.medium),
2505
+ "--otw-font-weight-semibold": String(us.semibold),
2506
+ "--otw-line-height-body": Cf.body,
2507
+ "--otw-radius-lg": Jn,
2508
+ "--otw-radius-md": mn.xl,
2509
+ "--otw-radius-sm": mn.lg,
2510
+ "--otw-radius-pill": mn.full,
2511
+ "--otw-shadow-panel": cs.xl,
2512
+ "--otw-shadow-soft": cs.lg,
2513
+ "--otw-space-0-5": te["0.5"],
2514
+ "--otw-space-1": te[1],
2515
+ "--otw-space-1-5": te["1.5"],
2516
+ "--otw-space-2": te[2],
2517
+ "--otw-space-2-5": te["2.5"],
2518
+ "--otw-space-3": te[3],
2519
+ "--otw-space-3-5": te["3.5"],
2520
+ "--otw-space-4": te[4],
2521
+ "--otw-space-5": te[5],
2522
+ "--otw-space-6": te[6],
2523
+ "--otw-space-8": te[8],
2524
+ "--otw-space-10": te[10],
2525
+ "--otw-space-12": te[12]
2526
+ };
2527
+ return Object.entries(Un).map(([_n, $n]) => `${_n}: ${$n};`).join(" ");
2528
+ }), Sn = /* @__PURE__ */ Pt(() => {
2529
+ var d, P;
2530
+ return ((P = (d = t.config) == null ? void 0 : d.launcher) == null ? void 0 : P.logoUrl) || cr;
2531
+ });
2532
+ let it = /* @__PURE__ */ L($e(cr));
2533
+ const jt = /* @__PURE__ */ Pt(() => {
2534
+ var d, P;
2535
+ return ((P = (d = t.config) == null ? void 0 : d.launcher) == null ? void 0 : P.position) || "bottom-right";
2536
+ });
2537
+ Ys(() => {
2538
+ p(it, l(Sn), !0);
2539
+ });
2540
+ function Xt() {
2541
+ p(it, cr, !0);
2542
+ }
2543
+ const we = /* @__PURE__ */ Pt(() => {
2544
+ var m, Y;
2545
+ const d = {
2546
+ enabled: !0,
2547
+ messages: s.widget.teaserMessages,
2548
+ delayMs: 1500,
2549
+ durationMs: 8e3,
2550
+ cooldownMs: 6e4,
2551
+ maxShowsPerSession: 1
2552
+ }, P = ((Y = (m = t.config) == null ? void 0 : m.launcher) == null ? void 0 : Y.teaser) || {}, D = Array.isArray(P.messages) && P.messages.length > 0 ? P.messages : d.messages;
2553
+ return { ...d, ...P, messages: D };
2554
+ }), wn = /* @__PURE__ */ Pt(() => l(v).trim().length > 0 || l(b).length > 0);
2555
+ function jr() {
2556
+ var d;
2557
+ l(f) || (p(f, !0), p(I, !1), (d = t.onOpen) == null || d.call(t), Xr(), queueMicrotask(() => {
2558
+ var P;
2559
+ return (P = l(Tt)) == null ? void 0 : P.focus();
2560
+ }), qn().then(() => Kn()));
2561
+ }
2562
+ function hn() {
2563
+ var d;
2564
+ l(f) && !r() && (p(f, !1), (d = t.onClose) == null || d.call(t), Gn());
2565
+ }
2566
+ function ia(d) {
2567
+ g = d;
2568
+ }
2569
+ function fa() {
2570
+ r() || (l(f) ? hn() : jr());
2571
+ }
2572
+ function la() {
2573
+ r() || p(c, !l(c));
2574
+ }
2575
+ function oa() {
2576
+ p(A, !l(A)), l(A) || p(h, !1);
2577
+ }
2578
+ function Nt(d) {
2579
+ const P = d === "img" ? "IMG" : d === "pdf" ? "PDF" : "DOC";
2580
+ p(
2581
+ b,
2582
+ [
2583
+ ...l(b),
2584
+ {
2585
+ id: `att-${Date.now()}-${l(b).length}`,
2586
+ label: P,
2587
+ type: d
2588
+ }
2589
+ ],
2590
+ !0
2591
+ ), p(A, !1), p(h, !1), p(c, !1);
2592
+ }
2593
+ function ua(d) {
2594
+ p(b, l(b).filter((P) => P.id !== d), !0);
2595
+ }
2596
+ function ca() {
2597
+ p(w, "audio"), p(A, !1), p(h, !1);
2598
+ }
2599
+ function da() {
2600
+ p(w, "chat");
2601
+ }
2602
+ function va() {
2603
+ p(B, [], !0), p(b, [], !0), p(v, ""), p(w, "chat"), p(A, !1), p(h, !1), p(F, null);
2604
+ }
2605
+ function Gn() {
2606
+ r() || l(f) || l(we).enabled && (l(ue) >= l(we).maxShowsPerSession || (Wn(), We = window.setTimeout(
2607
+ () => {
2608
+ ga();
2609
+ },
2610
+ l(we).delayMs
2611
+ )));
2612
+ }
2613
+ function ga() {
2614
+ l(f) || r() || (p(E, !0), p(ue, l(ue) + 1), sessionStorage.setItem(`olotalk-teaser-${t.widgetId}`, String(l(ue))), l(we).messages.length > 1 && (pe = window.setInterval(
2615
+ () => {
2616
+ p(j, (l(j) + 1) % l(we).messages.length);
2617
+ },
2618
+ Math.max(2500, l(we).durationMs / l(we).messages.length)
2619
+ )), st = window.setTimeout(
2620
+ () => {
2621
+ Xr(), qe = window.setTimeout(
2622
+ () => {
2623
+ Gn();
2624
+ },
2625
+ l(we).cooldownMs
2626
+ );
2627
+ },
2628
+ l(we).durationMs
2629
+ ));
2630
+ }
2631
+ function Xr() {
2632
+ p(E, !1), Wn();
2633
+ }
2634
+ function Wn() {
2635
+ We && window.clearTimeout(We), st && window.clearTimeout(st), qe && window.clearTimeout(qe), pe && window.clearInterval(pe), We = null, st = null, qe = null, pe = null;
2636
+ }
2637
+ async function qn() {
2638
+ if (!l(S))
2639
+ try {
2640
+ const d = await fetch(`${t.origin}/public/v1/widgets/${t.widgetId}/sessions`, {
2641
+ method: "POST",
2642
+ headers: { "Content-Type": "application/json" },
2643
+ body: JSON.stringify({ pageUrl: window.location.href })
2644
+ });
2645
+ if (!d.ok) throw new Error("Session failed");
2646
+ const P = await d.json();
2647
+ p(S, P.sessionId, !0);
2648
+ } catch (d) {
2649
+ console.error("[Olotalk] session error", d);
2650
+ }
2651
+ }
2652
+ async function Kn() {
2653
+ var D, m;
2654
+ if (!((m = (D = t.config) == null ? void 0 : D.features) != null && m.domRagEnabled) || !l(S)) return;
2655
+ const { text: d, hash: P } = await Aa();
2656
+ if (!(!d || P === l(K))) {
2657
+ p(K, P, !0);
2658
+ try {
2659
+ await fetch(`${t.origin}/public/v1/widgets/${t.widgetId}/sessions/${l(S)}/page-context`, {
2660
+ method: "POST",
2661
+ headers: { "Content-Type": "application/json" },
2662
+ body: JSON.stringify({
2663
+ pageUrl: window.location.href,
2664
+ title: document.title,
2665
+ contentHash: P,
2666
+ content: d
2667
+ })
2668
+ });
2669
+ } catch (Y) {
2670
+ console.error("[Olotalk] context error", Y);
2671
+ }
2672
+ }
2673
+ }
2674
+ async function Aa() {
2675
+ var G;
2676
+ const d = [
2677
+ "h1",
2678
+ "h2",
2679
+ "h3",
2680
+ "h4",
2681
+ "h5",
2682
+ "h6",
2683
+ "p",
2684
+ "li",
2685
+ "table",
2686
+ "article",
2687
+ "main",
2688
+ "section"
2689
+ ].join(","), P = Array.from(document.querySelectorAll(d)), D = [];
2690
+ for (const V of P) {
2691
+ if (V.closest("[data-no-olotalk]") || V.tagName === "SCRIPT" || V.tagName === "STYLE" || V.type === "password") continue;
2692
+ const $ = window.getComputedStyle(V);
2693
+ if ($.display === "none" || $.visibility === "hidden") continue;
2694
+ const ce = (G = V.innerText) == null ? void 0 : G.trim();
2695
+ if (ce && (D.push(ce), D.join(`
2696
+
2697
+ `).length > 8e4))
2698
+ break;
2699
+ }
2700
+ const m = D.join(`
2701
+
2702
+ `).slice(0, 8e4), Y = await wa(m);
2703
+ return { text: m, hash: Y };
2704
+ }
2705
+ async function wa(d) {
2706
+ const D = new TextEncoder().encode(d);
2707
+ try {
2708
+ const m = await crypto.subtle.digest("SHA-256", D);
2709
+ return Array.from(new Uint8Array(m)).map((G) => G.toString(16).padStart(2, "0")).join("");
2710
+ } catch {
2711
+ return `${d.length}`;
2712
+ }
2713
+ }
2714
+ async function Nr() {
2715
+ var D;
2716
+ const d = l(v).trim();
2717
+ if (!d && l(b).length === 0) return;
2718
+ if (l(S) || await qn(), !l(S)) {
2719
+ p(F, s.widget.errorSession, !0);
2720
+ return;
2721
+ }
2722
+ await Kn();
2723
+ const P = o();
2724
+ p(B, [...l(B), { id: P, role: "user", text: d }], !0), (D = t.onSend) == null || D.call(t, { text: d }), p(v, ""), p(b, [], !0), p(F, null), await ha(d);
2725
+ }
2726
+ async function ha(d) {
2727
+ var D, m;
2728
+ if (!l(S)) return;
2729
+ p(T, !0);
2730
+ const P = Pa();
2731
+ (m = (D = t.config) == null ? void 0 : D.features) != null && m.streamingEnabled ? await Ba(d, P) : await pa(d, P), p(T, !1);
2732
+ }
2733
+ function Pa() {
2734
+ var D, m, Y, G;
2735
+ const d = (m = (D = t.config) == null ? void 0 : D.features) == null ? void 0 : m.domRagEnabled, P = (G = (Y = t.config) == null ? void 0 : Y.features) == null ? void 0 : G.siteRagEnabled;
2736
+ return d && P ? "hybrid" : P ? "site_only" : "page_only";
2737
+ }
2738
+ async function pa(d, P) {
2739
+ try {
2740
+ const D = await fetch(`${t.origin}/public/v1/widgets/${t.widgetId}/sessions/${l(S)}/ask`, {
2741
+ method: "POST",
2742
+ headers: { "Content-Type": "application/json" },
2743
+ body: JSON.stringify({ message: d, contextMode: P, pageUrl: window.location.href })
2744
+ });
2745
+ if (!D.ok) throw new Error("Ask failed");
2746
+ const m = await D.json();
2747
+ p(
2748
+ B,
2749
+ [
2750
+ ...l(B),
2751
+ {
2752
+ id: o(),
2753
+ role: "assistant",
2754
+ text: m.answer || "",
2755
+ citations: m.citations || []
2756
+ }
2757
+ ],
2758
+ !0
2759
+ ), l(f) || p(I, !0);
2760
+ } catch (D) {
2761
+ console.error("[Olotalk] ask error", D), p(F, s.widget.errorGeneric, !0);
2762
+ }
2763
+ }
2764
+ async function Ba(d, P) {
2765
+ const D = o();
2766
+ p(
2767
+ B,
2768
+ [
2769
+ ...l(B),
2770
+ { id: D, role: "assistant", text: "", pending: !0 }
2771
+ ],
2772
+ !0
2773
+ );
2774
+ try {
2775
+ const m = await fetch(`${t.origin}/public/v1/widgets/${t.widgetId}/sessions/${l(S)}/ask`, {
2776
+ method: "POST",
2777
+ headers: {
2778
+ "Content-Type": "application/json",
2779
+ Accept: "text/event-stream"
2780
+ },
2781
+ body: JSON.stringify({
2782
+ message: d,
2783
+ contextMode: P,
2784
+ pageUrl: window.location.href,
2785
+ stream: !0
2786
+ })
2787
+ });
2788
+ if (!m.ok || !m.body) throw new Error("Stream failed");
2789
+ const Y = m.body.getReader(), G = new TextDecoder();
2790
+ let V = "";
2791
+ for (; ; ) {
2792
+ const { value: ft, done: $ } = await Y.read();
2793
+ if ($) break;
2794
+ V += G.decode(ft, { stream: !0 }), V = ba(V, D);
2795
+ }
2796
+ } catch (m) {
2797
+ console.error("[Olotalk] stream error", m), p(F, s.widget.errorGeneric, !0);
2798
+ } finally {
2799
+ p(B, l(B).map((m) => m.id === D ? { ...m, pending: !1 } : m), !0), l(f) || p(I, !0);
2800
+ }
2801
+ }
2802
+ function ba(d, P) {
2803
+ d = d.replace(/\r\n/g, `
2804
+ `);
2805
+ let D = d.indexOf(`
2806
+
2807
+ `);
2808
+ for (; D !== -1; ) {
2809
+ const m = d.slice(0, D).trim();
2810
+ if (d = d.slice(D + 2), m.startsWith("data:")) {
2811
+ const Y = m.replace(/^data:\s*/, "");
2812
+ if (Y === "[DONE]") break;
2813
+ try {
2814
+ const G = JSON.parse(Y);
2815
+ G.type === "token" && Mr(P, G.delta || ""), G.type === "done" && G.citations && p(B, l(B).map((V) => V.id === P ? { ...V, citations: G.citations } : V), !0);
2816
+ } catch {
2817
+ Mr(P, Y);
2818
+ }
2819
+ }
2820
+ D = d.indexOf(`
2821
+
2822
+ `);
2823
+ }
2824
+ return d;
2825
+ }
2826
+ function Mr(d, P) {
2827
+ p(B, l(B).map((D) => D.id === d ? { ...D, text: D.text + P } : D), !0);
2828
+ }
2829
+ function Da(d) {
2830
+ p(B, l(B).map((P) => P.id === d ? { ...P, showCitations: !P.showCitations } : P), !0);
2831
+ }
2832
+ function Vn(d) {
2833
+ d.key === "Enter" && !d.shiftKey && (d.preventDefault(), Nr()), d.key === "Escape" && l(f) && !r() && (d.preventDefault(), hn());
2834
+ }
2835
+ Of(() => {
2836
+ var P;
2837
+ (P = t.onReady) == null || P.call(t, { widgetId: t.widgetId }), window.addEventListener("keydown", Vn);
2838
+ const d = sessionStorage.getItem(`olotalk-teaser-${t.widgetId}`);
2839
+ return p(ue, d ? Number(d) : 0, !0), r() && qn().then(() => Kn()), Gn(), () => {
2840
+ window.removeEventListener("keydown", Vn), Wn();
2841
+ };
2842
+ });
2843
+ var ya = { openWidget: jr, closeWidget: hn, setTheme: ia }, Pn = ul(), Lr = H(Pn);
2844
+ {
2845
+ var ma = (d) => {
2846
+ var P = il(), D = H(P), m = H(D), Y = H(m), G = C(Y, 2), V = H(G), ft = C(m, 2), $ = H(ft);
2847
+ $.__click = va;
2848
+ var ce = C($, 2);
2849
+ ce.__click = la;
2850
+ var tn = C(ce, 2);
2851
+ {
2852
+ var Jn = (Be) => {
2853
+ var Ke = Lf();
2854
+ Ke.__click = hn, U(() => de(Ke, "aria-label", s.widget.ariaClose)), X(Be, Ke);
2855
+ };
2856
+ _(tn, (Be) => {
2857
+ r() || Be(Jn);
2858
+ });
2859
+ }
2860
+ var Un = C(D, 2);
2861
+ {
2862
+ var _n = (Be) => {
2863
+ var Ke = Ff(), Mt = C(H(Ke), 2);
2864
+ Mt.__click = da;
2865
+ var pn = C(Mt, 2), er = H(pn);
2866
+ U(() => {
2867
+ de(Mt, "aria-label", s.widget.ariaExitAudio), Z(er, s.widget.poweredBy);
2868
+ }), X(Be, Ke);
2869
+ }, $n = (Be) => {
2870
+ var Ke = al(), Mt = Dn(Ke), pn = H(Mt);
2871
+ {
2872
+ var er = (O) => {
2873
+ var Q = Rf(), J = H(Q), Xe = C(J, 2), re = H(Xe), se = H(re), R = C(re, 2), Ne = H(R);
2874
+ U(() => {
2875
+ var Ve;
2876
+ de(J, "src", l(it)), Z(se, ((Ve = t.config) == null ? void 0 : Ve.welcomeMessage) || "Hello"), Z(Ne, s.widget.welcomeSubtitle);
2877
+ }), ir("error", J, Xt), X(O, Q);
2878
+ }, xa = (O) => {
2879
+ var Q = Jf(), J = H(Q);
2880
+ fr(J, 17, () => l(B), (se) => se.id, (se, R) => {
2881
+ var Ne = of(), Ve = Dn(Ne);
2882
+ {
2883
+ var nr = (Lt) => {
2884
+ var nn = If(), Bn = H(nn);
2885
+ U(() => Z(Bn, l(R).text)), X(Lt, nn);
2886
+ }, Ra = (Lt) => {
2887
+ var nn = Kf(), Bn = H(nn), Wr = C(Bn);
2888
+ {
2889
+ var Ia = (gt) => {
2890
+ var At = Yf();
2891
+ X(gt, At);
2892
+ };
2893
+ _(Wr, (gt) => {
2894
+ l(R).pending && gt(Ia);
2895
+ });
2896
+ }
2897
+ var Ya = C(Wr, 2);
2898
+ {
2899
+ var Za = (gt) => {
2900
+ var At = qf(), Ft = Dn(At);
2901
+ Ft.__click = () => Da(l(R).id);
2902
+ var Sa = H(Ft), Ga = C(Ft, 2);
2903
+ {
2904
+ var Wa = (rr) => {
2905
+ var qr = Wf();
2906
+ fr(qr, 21, () => l(R).citations, gf, (qa, wt) => {
2907
+ var Kr = Gf(), Vr = H(Kr), Ka = H(Vr), Jr = C(Vr, 2);
2908
+ {
2909
+ var Va = (ht) => {
2910
+ var Rt = Zf(), sr = H(Rt);
2911
+ U(() => {
2912
+ de(Rt, "href", l(wt).url), Z(sr, l(wt).url);
2913
+ }), X(ht, Rt);
2914
+ };
2915
+ _(Jr, (ht) => {
2916
+ l(wt).url && ht(Va);
2917
+ });
2918
+ }
2919
+ var Ja = C(Jr, 2);
2920
+ {
2921
+ var Ua = (ht) => {
2922
+ var Rt = Sf(), sr = H(Rt);
2923
+ U(() => Z(sr, l(wt).snippet)), X(ht, Rt);
2924
+ };
2925
+ _(Ja, (ht) => {
2926
+ l(wt).snippet && ht(Ua);
2927
+ });
2928
+ }
2929
+ U(() => Z(Ka, l(wt).title || l(wt).url || s.widget.source)), X(qa, Kr);
2930
+ }), X(rr, qr);
2931
+ };
2932
+ _(Ga, (rr) => {
2933
+ l(R).showCitations && rr(Wa);
2934
+ });
2935
+ }
2936
+ U(() => Z(Sa, l(R).showCitations ? s.widget.hideSources : s.widget.showSources)), X(gt, At);
2937
+ };
2938
+ _(Ya, (gt) => {
2939
+ var At, Ft;
2940
+ l(R).citations && l(R).citations.length > 0 && ((Ft = (At = t.config) == null ? void 0 : At.features) != null && Ft.citationsEnabled) && gt(Za);
2941
+ });
2942
+ }
2943
+ U(() => Z(Bn, `${l(R).text ?? ""} `)), X(Lt, nn);
2944
+ };
2945
+ _(Ve, (Lt) => {
2946
+ l(R).role === "user" ? Lt(nr) : Lt(Ra, !1);
2947
+ });
2948
+ }
2949
+ X(se, Ne);
2950
+ });
2951
+ var Xe = C(J, 2);
2952
+ {
2953
+ var re = (se) => {
2954
+ var R = Vf();
2955
+ X(se, R);
2956
+ };
2957
+ _(Xe, (se) => {
2958
+ l(T) && !l(B).some((R) => R.pending) && se(re);
2959
+ });
2960
+ }
2961
+ X(O, Q);
2962
+ };
2963
+ _(pn, (O) => {
2964
+ l(B).length === 0 ? O(er) : O(xa, !1);
2965
+ });
2966
+ }
2967
+ var Ea = C(pn, 2);
2968
+ {
2969
+ var Ca = (O) => {
2970
+ var Q = Uf(), J = H(Q);
2971
+ U(() => Z(J, l(F))), X(O, Q);
2972
+ };
2973
+ _(Ea, (O) => {
2974
+ l(F) && O(Ca);
2975
+ });
2976
+ }
2977
+ var Ir = C(Mt, 2), Yr = H(Ir);
2978
+ {
2979
+ var za = (O) => {
2980
+ var Q = $f();
2981
+ fr(Q, 21, () => l(b), (J) => J.id, (J, Xe) => {
2982
+ var re = _f();
2983
+ re.__click = () => ua(l(Xe).id);
2984
+ var se = H(re), R = H(se), Ne = C(se, 2), Ve = H(Ne);
2985
+ U(() => {
2986
+ Z(R, l(Xe).label), Z(Ve, s.widget.attachment);
2987
+ }), X(J, re);
2988
+ }), X(O, Q);
2989
+ };
2990
+ _(Yr, (O) => {
2991
+ l(b).length > 0 && O(za);
2992
+ });
2993
+ }
2994
+ var Zr = C(Yr, 2);
2995
+ {
2996
+ var Qa = (O) => {
2997
+ var Q = el();
2998
+ X(O, Q);
2999
+ };
3000
+ _(Zr, (O) => {
3001
+ l(b).some((Q) => Q.type === "img") && O(Qa);
3002
+ });
3003
+ }
3004
+ var ka = C(Zr, 2), tr = H(ka);
3005
+ tr.__click = oa;
3006
+ var vt = C(tr, 2);
3007
+ vt.__keydown = Vn, Hf(vt, (O) => p(Tt, O), () => l(Tt));
3008
+ var Ta = C(vt, 2);
3009
+ {
3010
+ var ja = (O) => {
3011
+ var Q = tl();
3012
+ Q.__click = Nr, U(() => {
3013
+ de(Q, "aria-label", s.widget.ariaSend), Q.disabled = l(T);
3014
+ }), X(O, Q);
3015
+ }, Xa = (O) => {
3016
+ var Q = nl();
3017
+ Q.__click = ca, U(() => {
3018
+ de(Q, "aria-label", s.widget.ariaAudio), Q.disabled = l(T);
3019
+ }), X(O, Q);
3020
+ };
3021
+ _(Ta, (O) => {
3022
+ l(wn) ? O(ja) : O(Xa, !1);
3023
+ });
3024
+ }
3025
+ var Sr = C(Ir, 2);
3026
+ {
3027
+ var Na = (O) => {
3028
+ var Q = rl(), J = H(Q);
3029
+ J.__click = () => Nt("img");
3030
+ var Xe = H(J), re = C(J, 2);
3031
+ re.__click = () => Nt("pdf");
3032
+ var se = H(re), R = C(re, 2);
3033
+ R.__click = () => Nt("doc");
3034
+ var Ne = H(R), Ve = C(R, 2);
3035
+ Ve.__click = () => p(h, !l(h));
3036
+ var nr = H(Ve);
3037
+ U(() => {
3038
+ Z(Xe, s.widget.attachLocalFile), Z(se, s.widget.attachGoogleDrive), Z(Ne, s.widget.attachOneDrive), Z(nr, `${s.widget.attachMore ?? ""} `);
3039
+ }), X(O, Q);
3040
+ };
3041
+ _(Sr, (O) => {
3042
+ l(A) && O(Na);
3043
+ });
3044
+ }
3045
+ var Gr = C(Sr, 2);
3046
+ {
3047
+ var Ma = (O) => {
3048
+ var Q = sl(), J = H(Q);
3049
+ J.__click = () => Nt("img");
3050
+ var Xe = H(J), re = C(J, 2);
3051
+ re.__click = () => Nt("pdf");
3052
+ var se = H(re), R = C(re, 2);
3053
+ R.__click = () => Nt("doc");
3054
+ var Ne = H(R);
3055
+ U(() => {
3056
+ Z(Xe, s.widget.attachLocalFile), Z(se, s.widget.attachGoogleDrive), Z(Ne, s.widget.attachOneDrive);
3057
+ }), X(O, Q);
3058
+ };
3059
+ _(Gr, (O) => {
3060
+ l(h) && O(Ma);
3061
+ });
3062
+ }
3063
+ var La = C(Gr, 2), Fa = H(La);
3064
+ U(() => {
3065
+ de(tr, "aria-label", s.widget.ariaAttach), de(vt, "placeholder", s.widget.placeholder), de(vt, "aria-label", s.widget.ariaMessage), vt.disabled = l(T), Z(Fa, s.widget.poweredBy);
3066
+ }), mf(vt, () => l(v), (O) => p(v, O)), X(Be, Ke);
3067
+ };
3068
+ _(Un, (Be) => {
3069
+ l(w) === "audio" ? Be(_n) : Be($n, !1);
3070
+ });
3071
+ }
3072
+ U(() => {
3073
+ var Be;
3074
+ yn(P, 1, `panel ${l(c) ? "expanded" : ""} ${l(jt) === "bottom-left" ? "left" : ""}`, "svelte-gxf5w3"), de(Y, "src", l(it)), Z(V, ((Be = t.config) == null ? void 0 : Be.displayName) || "Olotalk"), de($, "aria-label", s.widget.ariaReset), de(ce, "aria-label", s.widget.ariaExpand);
3075
+ }), ir("error", Y, Xt), X(d, P);
3076
+ };
3077
+ _(Lr, (d) => {
3078
+ l(f) && d(ma);
3079
+ });
3080
+ }
3081
+ var Ha = C(Lr, 2);
3082
+ {
3083
+ var Oa = (d) => {
3084
+ var P = ol(), D = Dn(P);
3085
+ D.__click = fa;
3086
+ var m = H(D), Y = C(m, 2);
3087
+ {
3088
+ var G = ($) => {
3089
+ var ce = fl();
3090
+ X($, ce);
3091
+ };
3092
+ _(Y, ($) => {
3093
+ l(I) && $(G);
3094
+ });
3095
+ }
3096
+ var V = C(D, 2);
3097
+ {
3098
+ var ft = ($) => {
3099
+ var ce = ll(), tn = H(ce);
3100
+ U(() => {
3101
+ yn(ce, 1, `teaser ${l(jt) === "bottom-left" ? "left" : ""} ${l(E) ? "" : "hidden"}`, "svelte-gxf5w3"), de(ce, "aria-label", s.widget.ariaTeaser), Z(tn, l(we).messages[l(j)]);
3102
+ }), X($, ce);
3103
+ };
3104
+ _(V, ($) => {
3105
+ l(we).enabled && $(ft);
3106
+ });
3107
+ }
3108
+ U(() => {
3109
+ yn(D, 1, `launcher ${l(jt) === "bottom-left" ? "left" : ""}`, "svelte-gxf5w3"), de(D, "aria-label", s.widget.ariaOpenChat), de(m, "src", l(it));
3110
+ }), ir("error", m, Xt), X(d, P);
3111
+ };
3112
+ _(Ha, (d) => {
3113
+ r() || d(Oa);
3114
+ });
3115
+ }
3116
+ return U(() => {
3117
+ yn(Pn, 1, `root ${r() ? "embedded" : ""} ${l(ne) ? "dark" : ""}`, "svelte-gxf5w3"), pf(Pn, l(Zn));
3118
+ }), X(e, Pn), ms(ya);
3119
+ }
3120
+ ff(["click", "keydown"]);
3121
+ function dl(e, t) {
3122
+ const n = (t == null ? void 0 : t.widgetId) || (t == null ? void 0 : t.siteId);
3123
+ if (!n) throw new Error("[OlotalkWidget] 'widgetId' is required");
3124
+ if (!(t != null && t.origin))
3125
+ throw new Error("[OlotalkWidget] 'origin' is required");
3126
+ const r = /* @__PURE__ */ new Map(), a = (g, v) => {
3127
+ const A = r.get(g);
3128
+ if (A)
3129
+ for (const h of A)
3130
+ try {
3131
+ h(v);
3132
+ } catch (b) {
3133
+ console.error(b);
3134
+ }
3135
+ }, s = (g, v) => {
3136
+ let A = r.get(g);
3137
+ return A || (A = /* @__PURE__ */ new Set(), r.set(g, A)), A.add(v), () => A.delete(v);
3138
+ }, i = t.mount ?? e;
3139
+ if (!i) throw new Error("[OlotalkWidget] mount target is required");
3140
+ const o = document.createElement("div");
3141
+ o.setAttribute("data-olotalk-root", "widget"), i.appendChild(o);
3142
+ const f = t.placement || (i === document.body || i === document.documentElement ? "floating" : "embedded");
3143
+ f === "embedded" && (o.style.display = "block", o.style.width = "100%", o.style.height = "100%");
3144
+ const c = o.attachShadow ? o.attachShadow({ mode: "open" }) : o;
3145
+ if (t.cssUrl) {
3146
+ const g = c instanceof ShadowRoot ? c : document.head;
3147
+ if (!g.querySelector("link[data-olotalk-style]")) {
3148
+ const v = document.createElement("link");
3149
+ v.rel = "stylesheet", v.href = t.cssUrl, v.setAttribute("data-olotalk-style", "widget"), g.appendChild(v);
3150
+ }
3151
+ }
3152
+ const w = uf(cl, {
3153
+ target: c,
3154
+ props: {
3155
+ widgetId: n,
3156
+ origin: t.origin,
3157
+ config: t.config,
3158
+ theme: t.theme ?? "light",
3159
+ embedded: f === "embedded",
3160
+ locale: t.locale,
3161
+ // event callbacks (Svelte 5 replacement for createEventDispatcher)
3162
+ onReady: (g) => a("ready", g),
3163
+ onOpen: () => a("open"),
3164
+ onClose: () => a("close"),
3165
+ onSend: (g) => a("send", g)
3166
+ }
3167
+ });
3168
+ return {
3169
+ open() {
3170
+ w.openWidget();
3171
+ },
3172
+ close() {
3173
+ w.closeWidget();
3174
+ },
3175
+ setTheme(g) {
3176
+ w.setTheme(g);
3177
+ },
3178
+ destroy(g) {
3179
+ return df(w, { outro: !!(g != null && g.outro) }).finally(() => {
3180
+ o.remove();
3181
+ });
3182
+ },
3183
+ on: s
3184
+ };
3185
+ }
3186
+ const Al = { createWidget: dl };
3187
+ export {
3188
+ dl as createWidget,
3189
+ Al as default
3190
+ };