@enegelai/bot-widget 1.3.0 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.es.js CHANGED
@@ -1,7 +1,7 @@
1
- var sc = Object.defineProperty;
2
- var ic = (c, e, a) => e in c ? sc(c, e, { enumerable: !0, configurable: !0, writable: !0, value: a }) : c[e] = a;
3
- var I = (c, e, a) => (ic(c, typeof e != "symbol" ? e + "" : e, a), a);
4
- import { css as x, LitElement as ge, html as r, svg as re } from "lit";
1
+ var nc = Object.defineProperty;
2
+ var ic = (c, e, a) => e in c ? nc(c, e, { enumerable: !0, configurable: !0, writable: !0, value: a }) : c[e] = a;
3
+ var A = (c, e, a) => (ic(c, typeof e != "symbol" ? e + "" : e, a), a);
4
+ import { css as x, LitElement as ge, html as d, svg as de } from "lit";
5
5
  import { property as b, customElement as _, queryAll as lc, query as ee, eventOptions as Ue } from "lit/decorators.js";
6
6
  import { unsafeHTML as U } from "lit-html/directives/unsafe-html.js";
7
7
  import "@shoelace-style/shoelace/dist/themes/light.css";
@@ -42,20 +42,20 @@ const ue = class ue extends Event {
42
42
  super(ue.eventName, {
43
43
  cancelable: !1
44
44
  });
45
- I(this, "key");
46
- I(this, "state");
47
- I(this, "value");
45
+ A(this, "key");
46
+ A(this, "state");
47
+ A(this, "value");
48
48
  this.key = a, this.value = t, this.state = f;
49
49
  }
50
50
  };
51
- I(ue, "eventName", "lit-state-changed");
51
+ A(ue, "eventName", "lit-state-changed");
52
52
  let Z = ue;
53
53
  const uc = (c, e) => e !== c && (e === e || c === c);
54
54
  class fe extends EventTarget {
55
55
  constructor() {
56
56
  super();
57
57
  // hold a reference to hooks
58
- I(this, "hookMap", /* @__PURE__ */ new Map());
58
+ A(this, "hookMap", /* @__PURE__ */ new Map());
59
59
  this.constructor.finalize(), this.propertyMap && [...this.propertyMap].forEach(([a, t]) => {
60
60
  if (t.initialValue !== void 0) {
61
61
  const f = Ze(t.initialValue);
@@ -89,9 +89,9 @@ class fe extends EventTarget {
89
89
  get() {
90
90
  return this[t];
91
91
  },
92
- set(d) {
93
- const n = this[a];
94
- this[t] = d, o(d, n) === !0 && this.dispatchStateEvent(a, d, this);
92
+ set(r) {
93
+ const s = this[a];
94
+ this[t] = r, o(r, s) === !0 && this.dispatchStateEvent(a, r, this);
95
95
  },
96
96
  configurable: !0,
97
97
  enumerable: !0
@@ -116,8 +116,8 @@ class fe extends EventTarget {
116
116
  */
117
117
  subscribe(a, t, f) {
118
118
  t && !Array.isArray(t) && (t = [t]);
119
- const o = (d) => {
120
- (!t || t.includes(d.key)) && a(d.key, d.value, this);
119
+ const o = (r) => {
120
+ (!t || t.includes(r.key)) && a(r.key, r.value, this);
121
121
  };
122
122
  return this.addEventListener(Z.eventName, o, f), () => this.removeEventListener(Z.eventName, o);
123
123
  }
@@ -126,12 +126,12 @@ class fe extends EventTarget {
126
126
  }
127
127
  }
128
128
  // a map holding decorators definition.
129
- I(fe, "propertyMap"), I(fe, "properties"), I(fe, "finalized", !1);
129
+ A(fe, "propertyMap"), A(fe, "properties"), A(fe, "finalized", !1);
130
130
  class Ne {
131
131
  constructor(e, a, t) {
132
- I(this, "host");
133
- I(this, "state");
134
- I(this, "callback");
132
+ A(this, "host");
133
+ A(this, "state");
134
+ A(this, "callback");
135
135
  this.host = e, this.state = a, this.host.addController(this), this.callback = t || (() => this.host.requestUpdate());
136
136
  }
137
137
  hostConnected() {
@@ -149,10 +149,10 @@ class Ne {
149
149
  const We = ({ finisher: c, descriptor: e }) => (a, t) => {
150
150
  var f;
151
151
  if (t === void 0) {
152
- const o = (f = a.originalKey) !== null && f !== void 0 ? f : a.key, d = e != null ? { kind: "method", placement: "prototype", key: o, descriptor: e(a.key) } : { ...a, key: o };
153
- return c != null && (d.finisher = function(n) {
154
- c(n, o);
155
- }), d;
152
+ const o = (f = a.originalKey) !== null && f !== void 0 ? f : a.key, r = e != null ? { kind: "method", placement: "prototype", key: o, descriptor: e(a.key) } : { ...a, key: o };
153
+ return c != null && (r.finisher = function(s) {
154
+ c(s, o);
155
+ }), r;
156
156
  }
157
157
  {
158
158
  const o = a.constructor;
@@ -189,15 +189,15 @@ function V(c) {
189
189
  const t = Object.getOwnPropertyDescriptor(e.prototype, a);
190
190
  if (!t)
191
191
  throw new Error("@local-storage decorator need to be called after @property");
192
- const f = `${(c == null ? void 0 : c.prefix) || ""}_${(c == null ? void 0 : c.key) || String(a)}`, o = e.propertyMap.get(a), d = o == null ? void 0 : o.type;
192
+ const f = `${(c == null ? void 0 : c.prefix) || ""}_${(c == null ? void 0 : c.key) || String(a)}`, o = e.propertyMap.get(a), r = o == null ? void 0 : o.type;
193
193
  if (o) {
194
194
  const C = o.initialValue;
195
- o.initialValue = () => gc(localStorage.getItem(f), d) ?? Ze(C), e.propertyMap.set(a, { ...o, ...c });
195
+ o.initialValue = () => gc(localStorage.getItem(f), r) ?? Ze(C), e.propertyMap.set(a, { ...o, ...c });
196
196
  }
197
- const n = t == null ? void 0 : t.set, k = {
197
+ const s = t == null ? void 0 : t.set, k = {
198
198
  ...t,
199
199
  set: function(C) {
200
- C !== void 0 && localStorage.setItem(f, d === Object || d === Array ? JSON.stringify(C) : C), n && n.call(this, C);
200
+ C !== void 0 && localStorage.setItem(f, r === Object || r === Array ? JSON.stringify(C) : C), s && s.call(this, C);
201
201
  }
202
202
  };
203
203
  Object.defineProperty(e.prototype, a, k);
@@ -208,7 +208,7 @@ var yc = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : t
208
208
  function vc(c) {
209
209
  return c && c.__esModule && Object.prototype.hasOwnProperty.call(c, "default") ? c.default : c;
210
210
  }
211
- var Je = { exports: {} };
211
+ var Ke = { exports: {} };
212
212
  (function(c) {
213
213
  (function(e, a) {
214
214
  c.exports ? c.exports = a() : e.log = a();
@@ -221,8 +221,8 @@ var Je = { exports: {} };
221
221
  "warn",
222
222
  "error"
223
223
  ];
224
- function o(p, m) {
225
- var w = p[m];
224
+ function o(p, y) {
225
+ var w = p[y];
226
226
  if (typeof w.bind == "function")
227
227
  return w.bind(p);
228
228
  try {
@@ -233,57 +233,57 @@ var Je = { exports: {} };
233
233
  };
234
234
  }
235
235
  }
236
- function d() {
236
+ function r() {
237
237
  console.log && (console.log.apply ? console.log.apply(console, arguments) : Function.prototype.apply.apply(console.log, [console, arguments])), console.trace && console.trace();
238
238
  }
239
- function n(p) {
240
- return p === "debug" && (p = "log"), typeof console === a ? !1 : p === "trace" && t ? d : console[p] !== void 0 ? o(console, p) : console.log !== void 0 ? o(console, "log") : e;
239
+ function s(p) {
240
+ return p === "debug" && (p = "log"), typeof console === a ? !1 : p === "trace" && t ? r : console[p] !== void 0 ? o(console, p) : console.log !== void 0 ? o(console, "log") : e;
241
241
  }
242
- function g(p, m) {
242
+ function h(p, y) {
243
243
  for (var w = 0; w < f.length; w++) {
244
244
  var l = f[w];
245
- this[l] = w < p ? e : this.methodFactory(l, p, m);
245
+ this[l] = w < p ? e : this.methodFactory(l, p, y);
246
246
  }
247
247
  this.log = this.debug;
248
248
  }
249
- function k(p, m, w) {
249
+ function k(p, y, w) {
250
250
  return function() {
251
- typeof console !== a && (g.call(this, m, w), this[p].apply(this, arguments));
251
+ typeof console !== a && (h.call(this, y, w), this[p].apply(this, arguments));
252
252
  };
253
253
  }
254
- function C(p, m, w) {
255
- return n(p) || k.apply(this, arguments);
254
+ function C(p, y, w) {
255
+ return s(p) || k.apply(this, arguments);
256
256
  }
257
- function we(p, m, w) {
258
- var l = this, Pe;
259
- m = m ?? "WARN";
260
- var L = "loglevel";
261
- typeof p == "string" ? L += ":" + p : typeof p == "symbol" && (L = void 0);
262
- function rc(i) {
257
+ function we(p, y, w) {
258
+ var l = this, He;
259
+ y = y ?? "WARN";
260
+ var P = "loglevel";
261
+ typeof p == "string" ? P += ":" + p : typeof p == "symbol" && (P = void 0);
262
+ function dc(i) {
263
263
  var F = (f[i] || "silent").toUpperCase();
264
- if (!(typeof window === a || !L)) {
264
+ if (!(typeof window === a || !P)) {
265
265
  try {
266
- window.localStorage[L] = F;
266
+ window.localStorage[P] = F;
267
267
  return;
268
268
  } catch {
269
269
  }
270
270
  try {
271
- window.document.cookie = encodeURIComponent(L) + "=" + F + ";";
271
+ window.document.cookie = encodeURIComponent(P) + "=" + F + ";";
272
272
  } catch {
273
273
  }
274
274
  }
275
275
  }
276
276
  function Ee() {
277
277
  var i;
278
- if (!(typeof window === a || !L)) {
278
+ if (!(typeof window === a || !P)) {
279
279
  try {
280
- i = window.localStorage[L];
280
+ i = window.localStorage[P];
281
281
  } catch {
282
282
  }
283
283
  if (typeof i === a)
284
284
  try {
285
285
  var F = window.document.cookie, ce = F.indexOf(
286
- encodeURIComponent(L) + "="
286
+ encodeURIComponent(P) + "="
287
287
  );
288
288
  ce !== -1 && (i = /^([^;]+)/.exec(F.slice(ce))[1]);
289
289
  } catch {
@@ -292,14 +292,14 @@ var Je = { exports: {} };
292
292
  }
293
293
  }
294
294
  function bc() {
295
- if (!(typeof window === a || !L)) {
295
+ if (!(typeof window === a || !P)) {
296
296
  try {
297
- window.localStorage.removeItem(L);
297
+ window.localStorage.removeItem(P);
298
298
  return;
299
299
  } catch {
300
300
  }
301
301
  try {
302
- window.document.cookie = encodeURIComponent(L) + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC";
302
+ window.document.cookie = encodeURIComponent(P) + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC";
303
303
  } catch {
304
304
  }
305
305
  }
@@ -312,45 +312,45 @@ var Je = { exports: {} };
312
312
  ERROR: 4,
313
313
  SILENT: 5
314
314
  }, l.methodFactory = w || C, l.getLevel = function() {
315
- return Pe;
315
+ return He;
316
316
  }, l.setLevel = function(i, F) {
317
317
  if (typeof i == "string" && l.levels[i.toUpperCase()] !== void 0 && (i = l.levels[i.toUpperCase()]), typeof i == "number" && i >= 0 && i <= l.levels.SILENT) {
318
- if (Pe = i, F !== !1 && rc(i), g.call(l, i, p), typeof console === a && i < l.levels.SILENT)
318
+ if (He = i, F !== !1 && dc(i), h.call(l, i, p), typeof console === a && i < l.levels.SILENT)
319
319
  return "No console available for logging";
320
320
  } else
321
321
  throw "log.setLevel() called with invalid level: " + i;
322
322
  }, l.setDefaultLevel = function(i) {
323
- m = i, Ee() || l.setLevel(i, !1);
323
+ y = i, Ee() || l.setLevel(i, !1);
324
324
  }, l.resetLevel = function() {
325
- l.setLevel(m, !1), bc();
325
+ l.setLevel(y, !1), bc();
326
326
  }, l.enableAll = function(i) {
327
327
  l.setLevel(l.levels.TRACE, i);
328
328
  }, l.disableAll = function(i) {
329
329
  l.setLevel(l.levels.SILENT, i);
330
330
  };
331
331
  var ke = Ee();
332
- ke == null && (ke = m), l.setLevel(ke, !1);
332
+ ke == null && (ke = y), l.setLevel(ke, !1);
333
333
  }
334
334
  var O = new we(), xe = {};
335
- O.getLogger = function(m) {
336
- if (typeof m != "symbol" && typeof m != "string" || m === "")
335
+ O.getLogger = function(y) {
336
+ if (typeof y != "symbol" && typeof y != "string" || y === "")
337
337
  throw new TypeError("You must supply a name when creating a logger.");
338
- var w = xe[m];
339
- return w || (w = xe[m] = new we(
340
- m,
338
+ var w = xe[y];
339
+ return w || (w = xe[y] = new we(
340
+ y,
341
341
  O.getLevel(),
342
342
  O.methodFactory
343
343
  )), w;
344
344
  };
345
- var dc = typeof window !== a ? window.log : void 0;
345
+ var rc = typeof window !== a ? window.log : void 0;
346
346
  return O.noConflict = function() {
347
- return typeof window !== a && window.log === O && (window.log = dc), O;
347
+ return typeof window !== a && window.log === O && (window.log = rc), O;
348
348
  }, O.getLoggers = function() {
349
349
  return xe;
350
350
  }, O.default = O, O;
351
351
  });
352
- })(Je);
353
- var wc = Je.exports;
352
+ })(Ke);
353
+ var wc = Ke.exports;
354
354
  const me = /* @__PURE__ */ vc(wc), xc = x`
355
355
  :host {
356
356
  }
@@ -485,7 +485,7 @@ const me = /* @__PURE__ */ vc(wc), xc = x`
485
485
  .text-button:hover {
486
486
  text-decoration: underline;
487
487
  }
488
- `, Ke = x`
488
+ `, Je = x`
489
489
  ${T}
490
490
 
491
491
  :host {
@@ -508,38 +508,38 @@ const me = /* @__PURE__ */ vc(wc), xc = x`
508
508
  color: white;
509
509
  }
510
510
  `;
511
- var kc = Object.defineProperty, _c = Object.getOwnPropertyDescriptor, Ie = (c, e, a, t) => {
512
- for (var f = t > 1 ? void 0 : t ? _c(e, a) : e, o = c.length - 1, d; o >= 0; o--)
513
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
511
+ var kc = Object.defineProperty, _c = Object.getOwnPropertyDescriptor, Ae = (c, e, a, t) => {
512
+ for (var f = t > 1 ? void 0 : t ? _c(e, a) : e, o = c.length - 1, r; o >= 0; o--)
513
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
514
514
  return t && f && kc(e, a, f), f;
515
515
  };
516
- let G = class extends ge {
516
+ let Y = class extends ge {
517
517
  constructor() {
518
518
  super(...arguments), this.color = "primary", this.svg = "";
519
519
  }
520
520
  render() {
521
- return r`<span class="cb-icon" part="base">${U(this.svg)}</span>`;
521
+ return d`<span class="cb-icon" part="base">${U(this.svg)}</span>`;
522
522
  }
523
523
  };
524
- G.styles = Ke;
525
- Ie([
524
+ Y.styles = Je;
525
+ Ae([
526
526
  b({ type: String })
527
- ], G.prototype, "color", 2);
528
- Ie([
527
+ ], Y.prototype, "color", 2);
528
+ Ae([
529
529
  b({ type: String })
530
- ], G.prototype, "svg", 2);
531
- G = Ie([
530
+ ], Y.prototype, "svg", 2);
531
+ Y = Ae([
532
532
  _("cb-icon")
533
- ], G);
533
+ ], Y);
534
534
  let $c = (c) => crypto.getRandomValues(new Uint8Array(c)), Cc = (c, e, a) => {
535
535
  let t = (2 << Math.log(c.length - 1) / Math.LN2) - 1, f = -~(1.6 * t * e / c.length);
536
536
  return (o = e) => {
537
- let d = "";
537
+ let r = "";
538
538
  for (; ; ) {
539
- let n = a(f), g = f;
540
- for (; g--; )
541
- if (d += c[n[g] & t] || "", d.length === o)
542
- return d;
539
+ let s = a(f), h = f;
540
+ for (; h--; )
541
+ if (r += c[s[h] & t] || "", r.length === o)
542
+ return r;
543
543
  }
544
544
  };
545
545
  }, jc = (c, e = 21) => Cc(c, e, $c);
@@ -558,7 +558,7 @@ function Mc(c) {
558
558
  }
559
559
  });
560
560
  }
561
- function Ac(c = !0) {
561
+ function Ic(c = !0) {
562
562
  return new Promise((e) => {
563
563
  const a = document.createElement("input");
564
564
  a.type = "file", c && (a.multiple = !0), a.style.display = "none", a.addEventListener("change", () => {
@@ -569,7 +569,7 @@ function Ac(c = !0) {
569
569
  }
570
570
  const $ = me.noConflict();
571
571
  $.setLevel("info");
572
- class Ic {
572
+ class Ac {
573
573
  constructor(e = {}) {
574
574
  this.id = 0, this.url = (e == null ? void 0 : e.url) || null, this.orgId = (e == null ? void 0 : e.orgId) || null, this.botId = (e == null ? void 0 : e.botId) || null, this.convId = (e == null ? void 0 : e.convId) || null, this._options = e || {}, this._ws = null, this.started = !1, this.connected = !1, this.onMessage = (e == null ? void 0 : e.onMessage) || null, this.queue = [], this.pause = (a) => new Promise((t) => setTimeout(t, a)), $.info(`WSC: Created, url: ${this.url}`);
575
575
  }
@@ -587,14 +587,14 @@ class Ic {
587
587
  let o = (f == null ? void 0 : f.data) || null;
588
588
  if (!o)
589
589
  return;
590
- let d = null;
590
+ let r = null;
591
591
  try {
592
- d = JSON.parse(o);
592
+ r = JSON.parse(o);
593
593
  } catch {
594
594
  $.error(`Failed to parse message: ${o}`);
595
595
  return;
596
596
  }
597
- (d == null ? void 0 : d.type) === "connected" && ($.info(`WS[${this.id}] Connected`), clearTimeout(t), this.connected = !0, this.sendQueuedMessages()), this.handleWscMessage(d);
597
+ (r == null ? void 0 : r.type) === "connected" && ($.info(`WS[${this.id}] Connected`), clearTimeout(t), this.connected = !0, this.sendQueuedMessages()), this.handleWscMessage(r);
598
598
  }, this._ws.onerror = (f) => {
599
599
  $.error("WSC: Socket error"), clearTimeout(t), this.connected = !1, this._ws = null;
600
600
  }, this._ws.onclose = (f) => {
@@ -677,27 +677,27 @@ class Ic {
677
677
  });
678
678
  }*/
679
679
  }
680
- function h(c) {
680
+ function u(c) {
681
681
  return c != null && typeof c == "object" && c["@@functional/placeholder"] === !0;
682
682
  }
683
683
  function q(c) {
684
684
  return function e(a) {
685
- return arguments.length === 0 || h(a) ? e : c.apply(this, arguments);
685
+ return arguments.length === 0 || u(a) ? e : c.apply(this, arguments);
686
686
  };
687
687
  }
688
- function P(c) {
688
+ function H(c) {
689
689
  return function e(a, t) {
690
690
  switch (arguments.length) {
691
691
  case 0:
692
692
  return e;
693
693
  case 1:
694
- return h(a) ? e : q(function(f) {
694
+ return u(a) ? e : q(function(f) {
695
695
  return c(a, f);
696
696
  });
697
697
  default:
698
- return h(a) && h(t) ? e : h(a) ? q(function(f) {
698
+ return u(a) && u(t) ? e : u(a) ? q(function(f) {
699
699
  return c(f, t);
700
- }) : h(t) ? q(function(f) {
700
+ }) : u(t) ? q(function(f) {
701
701
  return c(a, f);
702
702
  }) : c(a, t);
703
703
  }
@@ -709,84 +709,84 @@ function Oc(c) {
709
709
  case 0:
710
710
  return e;
711
711
  case 1:
712
- return h(a) ? e : P(function(o, d) {
713
- return c(a, o, d);
712
+ return u(a) ? e : H(function(o, r) {
713
+ return c(a, o, r);
714
714
  });
715
715
  case 2:
716
- return h(a) && h(t) ? e : h(a) ? P(function(o, d) {
717
- return c(o, t, d);
718
- }) : h(t) ? P(function(o, d) {
719
- return c(a, o, d);
716
+ return u(a) && u(t) ? e : u(a) ? H(function(o, r) {
717
+ return c(o, t, r);
718
+ }) : u(t) ? H(function(o, r) {
719
+ return c(a, o, r);
720
720
  }) : q(function(o) {
721
721
  return c(a, t, o);
722
722
  });
723
723
  default:
724
- return h(a) && h(t) && h(f) ? e : h(a) && h(t) ? P(function(o, d) {
725
- return c(o, d, f);
726
- }) : h(a) && h(f) ? P(function(o, d) {
727
- return c(o, t, d);
728
- }) : h(t) && h(f) ? P(function(o, d) {
729
- return c(a, o, d);
730
- }) : h(a) ? q(function(o) {
724
+ return u(a) && u(t) && u(f) ? e : u(a) && u(t) ? H(function(o, r) {
725
+ return c(o, r, f);
726
+ }) : u(a) && u(f) ? H(function(o, r) {
727
+ return c(o, t, r);
728
+ }) : u(t) && u(f) ? H(function(o, r) {
729
+ return c(a, o, r);
730
+ }) : u(a) ? q(function(o) {
731
731
  return c(o, t, f);
732
- }) : h(t) ? q(function(o) {
732
+ }) : u(t) ? q(function(o) {
733
733
  return c(a, o, f);
734
- }) : h(f) ? q(function(o) {
734
+ }) : u(f) ? q(function(o) {
735
735
  return c(a, t, o);
736
736
  }) : c(a, t, f);
737
737
  }
738
738
  };
739
739
  }
740
- const Lc = Number.isInteger || function(e) {
740
+ const Pc = Number.isInteger || function(e) {
741
741
  return e << 0 === e;
742
742
  };
743
- function Hc(c) {
743
+ function Lc(c) {
744
744
  return Object.prototype.toString.call(c) === "[object String]";
745
745
  }
746
- var Pc = /* @__PURE__ */ P(function(e, a) {
746
+ var Hc = /* @__PURE__ */ H(function(e, a) {
747
747
  var t = e < 0 ? a.length + e : e;
748
- return Hc(a) ? a.charAt(t) : a[t];
748
+ return Lc(a) ? a.charAt(t) : a[t];
749
749
  });
750
- const Ec = Pc;
751
- var zc = /* @__PURE__ */ P(function(e, a) {
750
+ const Ec = Hc;
751
+ var zc = /* @__PURE__ */ H(function(e, a) {
752
752
  return a == null || a !== a ? e : a;
753
753
  });
754
754
  const Tc = zc;
755
- var Bc = /* @__PURE__ */ P(function(e, a) {
755
+ var Rc = /* @__PURE__ */ H(function(e, a) {
756
756
  return e.map(function(t) {
757
- for (var f = a, o = 0, d; o < t.length; ) {
757
+ for (var f = a, o = 0, r; o < t.length; ) {
758
758
  if (f == null)
759
759
  return;
760
- d = t[o], f = Lc(d) ? Ec(d, f) : f[d], o += 1;
760
+ r = t[o], f = Pc(r) ? Ec(r, f) : f[r], o += 1;
761
761
  }
762
762
  return f;
763
763
  });
764
764
  });
765
- const Rc = Bc;
766
- var Vc = /* @__PURE__ */ P(function(e, a) {
767
- return Rc([e], a)[0];
765
+ const Bc = Rc;
766
+ var Vc = /* @__PURE__ */ H(function(e, a) {
767
+ return Bc([e], a)[0];
768
768
  });
769
769
  const Dc = Vc;
770
770
  var Fc = /* @__PURE__ */ Oc(function(e, a, t) {
771
771
  return Tc(e, Dc(a, t));
772
772
  });
773
773
  const _e = Fc, qc = "fffbd0c40003a861a6f64deb05ce8fbd1dc1ee6979000bf3230f3195138b950cbe3649439256307747d31c26065d09cfae70d799f0a043c6a90008c0101188082314680d008619c9079b61dc806a921a220095277a60d4131e44143d53814e10f4d06ba6491eb478900a8d59016632a23e0fa358875c770146cc650c1c499dcb9b0965d7500106c321427219428febbdafb2b5d76979a75ae40018d025f96f71bad4b0257666051808e5b74c34bf2db9660bb0e24b2a35886616f617013a24104242304600910b1130dc7b4e81750bb1216e880432ac0d75b0a2a1834f45e8e9a279a9c6c22cc9a7e3ac01cc5335e8c0d97180c960bad7998ce9ac025a2f1a0c888e02c46508045a96a20a60c91980100828a917425f96ddc64bc2ea19146c50b00bde68319005d85d10e462314ae197f0b48c74bfe986ced9dac3a9bbfad7e8f7ac2a525253c6e36cad4dd7c20e2ec4842dba61cbf30f0f7d628635005a66e63ec63560f22a48c694034a695617e603c12c05077310c0923018053379a48d1e921e409b28546c46619d8fa6c9b019ea20762d318e34c6291699d98662a61861204fda2a7933d57c1d023391f8605262a1598449c1ca332e084cb25a3198ac94666361b99f05c67c1aba0151b18d456ec8e0b4c667924153ba632409114cc587c7867ca8c047dcd7a834bc8d2a033a141df48ab82a803bd1a8651a215e356c6161b062114cb841dd89589b05f0d10ad255c4d70d8ad245e4abcd6b33fca8d6af5cc3db8d9244511ab2206a56c885690ad12cc1ba16308528d539daa40b22baf35eb61a7044a988132e926b754d82ea8ca85199ad5c42c0d62d35eb8d7301d56ef5b26c451748198c2a22c319b24ab67a246b186c8af0d54354c0957c342d9a2a4d7b3245e585c4d7254e107501450bb46abbfa38b2331996d9bae08953352c48af43d5c7b08b6572a44e0b11775fd8cbb2b0b0343230c6c5add2ca5ac8d549765977ff78e59659ca49adde749c6789409753bcff43d1a8d46a532da5a5a5a5a5a5a5a6a6a6a6a6a6a6a6a6ab671c71c71c6ae4141414140a0a0a0a0c2b06e0b039c1829859998b165991a5d2aa598e0a714183727471921e5721a1037a9c2fb7a1b9c0dc99c6ab19b821219de39219b82a521908908987d2ab1aab194159219cb31211fffbd2c42383f4bda0d20ffba7c624b3dd01eee938b82f149f14b82951c14d290908c90d294c90a598b0948572ce584a434a54a52b4a42c3829592199219219a52921160908d295294b1c79b70dc9b72dc9b70dc15b71e6dc37058e3cdb8e34db9e3cadb82c37056dc95f1e7c6f1e58e3cadb8f2c4845721f96242f2c485e7214865721f962422c484721c845890cb121f9c872116242f2b908e4390bfcae432b908ae43f390e432c486721c85e5890cae432b90ce42908b121f9c8721962432c484721c865890ce4290bcae432b90bcae43390a432c485e58908e4290bcb121f95c86721c865890cae432b90cae42ff390e422b90cae422b90fcb121795c865721795c86721487e721c87e58908ae422b90bcb12195c845721796242f2c48658908ae43ff390e43fff390e422c4865890cb121ff9c872196243f2b90bcae42fff2c48458908b12116243f2b90ffcae43fff2c485e5890bfffcae422c485fe5721796243f2b90bfcae42ffff2b90ffcae432c48460a40a6618626a61ce3d466883d6645657458106350e2d6321a39532150c231a421532413d3399952b690e8430cc534d4ad0638ad993418742c24072f7385897cae5e348120397e5e348521397e5e2b734cd8364b06c160d93364d82c0ea6838ea63a0e863a8e9e581d4ca0283cd5d284b050795942650143e6e1c1b87058706e5c95b9370e4dcb92c382b706e1c15d22c522ba7e574cae9f9d2a458a474a995d32c52ff2ba4574cb148b14bfcb14cb148ae99629795d22c532c533a74cae995d2f3a74ce9533a74cb148e9d2f3a74ce9d22ba474e99d2a458a674a99d3a65748ae9f9d2a474a91629962995d23a748e9522c53f3a74bce9d3f2ba65748afa9f5ea57d4b1d3cafa963a163a7963a163a1f5ebfe57d3fcfa742bea7d7a15f42bea7d7a1f5e9e7d3af963a9f4ea57d4fa752c74f2c75f2c743ebd3fcafaf963a7ff963a79f4e9fe57d7ce9d22c532ba474a91d3a674a97962996297f9d2a658a458a658a458a4574cae916299d2a474a995d22c522c533a54bcae915d32c522c52f3a548ae99629795d3f30c6831b320f483c329501f8331a98f233a001f9342646273295483d326307f03331098c307e52ae3189883d3186475630e704da30e744db320f0627329501f831040411307e4fffbd2c42383f3fdacd40ff6b68668b3dc81eeed7841031044a54318984112a8c4e641e83f26208082260fc0822560fc183f041e183f00fc183f20fc983f20fc983f20fc95896e60bf863460bf86365805f8c17e0c68ac31b2b5f8f1bc68d7fc68d7f5fcaf1b35f97e35f97e2c2fc585fcb0bf9e36bf9617e2b5f8d7f5f8ad7f2c2fc6bfafe56bf9e34bf79617f3c6f1bf2b5fcb0bf9afcbf95afc585f8d7e5fcb0bf611fc419f8f08fe7833f1e0cfcf847f308fe7833f1f067e3c19f9067e308fe7c23f8c23f9067e40ff3f8067e20cfc047f00cfc611fc81fe3f207f9fc033f211fcc0ff1f903fc7e423f803fcfe423f903fcfe00ff3f8833f011fc847f211fc047f303fc7e211fc01fe3f211fc033f011fc7067e40ff3f908fe023f808fe00ff1f903fcfe019f803fc7e419f808fe019f9067e40ff1f9067e211fc01fe3f3c19f8e0cfcc23f9067e40ff3f8067e023f808fe60cfcc19f8c19f9847f211fc047f011fc033f1067e60cfcf833f25808830881d435e33e33263062346d46d31d427b31d41d4346d3c633201d5308827a308846d351212e32267a39ea7a34b92f3221d537552f32252e2b4b8dd5c80c88c84e7a4bcb0ea9ba9e315a5e697baa644cf473da5e58220c894bcb0449a5e449612ff2c110584bcb0447991044191244160892b4bfcc88224ac882b2a4d0a114ca8114c44114ac442c089e562279588856c458633e362f3e362362623e3e3f2be23e3e32b633e263f2b88fffff2c44f95c47f96227ce2224e2620b11071310713105889389882c44f95c41c44496220ae23cae20e2627cb1127111257105889f2c449c4c416220ae24e2224e2620ae24b1105713e588838988389892c44f9c44416224e2220ae20e2223cae27cae23ce2220e2620b1105711e5712571271111e57127131257127111271313fe713125712588938988388892c4479c4c41c44416224ae24e2220ae20e2620b11058882c44ffff95c4795c4ff95c415c416220ae20ae20b11271310571271313e58882c44f95c49c4c4ff95c416224e2627fce2224e2220e2220ae20b111e57107111071111fe5888ff389882c03a18838cc99ca16b996b8501ad09db99db86c161e34cb0c730c6641d4c664f7cc570e54c570570cb08734d2b4b08ac360cb5c284c86c574c57428fffbd2c41e03f239a2e40f7370c65fb39cc1eeed980c364364c360730c364edcc360364db2d936c734f9bcd3e6b60db0d82c734db3cd36cb60adb27068399d732588319d20e7068399d20de5850f9d75405850796140575c3535335252353c32c611e1291a9e11614cd4d4cf0d4cf0948e8684e8684b14074140574058a12c509d0d09d0d09d0509d0501d050796363fcaf64af67ffcb1b257b1fe58d8f2b74375742b742c3a9baba15ba161d0dd1d4add0b0e9e6eaea56ea56ea5874374752c5096280e8680b14057405743e57407414058a12ba12ba02c50f96280b141e58a12ba12c5096280add0dd1d0dd1d0dd5d3cb0ea6eaea6e8ea58752b7537574374742b74374752b752c3a95ba15ba9baba1ba3a161d0dd1d4b0ea58742c3a7ffff96367ffffffffffffffffffffffcb0e856ebe5874f2c3a961d4dd1d7fcadd4b0e9e6e8ea58752b752c3af961d4add3cb0e86e8ebfe6e8ea587537474f2c3a161d7cdd5d4dd1d0dd5d4add3cc388588c9e8220c4b91b4c989388c58898cc5b4740c2a48c8c58c38ccb8898cc9ec220cc84c80c4b84bcc224754d4491b4c62988c63588ce2b88d2e224d2e224b0449f8f3d1a5c9719104499124415a5e6971106973aa58750d2e220d2e220d898cf8d8cd8d8cd898cd8d88ad8cd898cd8988b1c7e586336363f2c711b1311b1319618cd8d8cb0c6586236262363632c319618ccb8b8cbcbcb05c565c582e32e2e32f2f32f2e32f2f32f2f32f2f2c1796220ae24ae20b113e71313fe71111e5888388892b882c449b1b115b11b1311b13116188d898fcb0c66c6c45862363632b632b63ff2c319b1b1796224ae24b111e711125711e5713e5713e58882b882c441c4c4f9c4c4ff9c4c4f9c44495c49c4c416224ae24e2224e2627fcae20b1105711e5711fe7111071111fe57125713e57106c6c46c6c45863f2c3195b115b19b131796188ad8bcd8988b0c45862363632c319b1b19b131f9618bcad8fcd898cad8bcb112571257125888f2c44ff95c495c4ff95c47f96220e2624b11258882c441c444ffff96224b112571257105711e588838989f2c44d3045045310b0a932632e232630623562062316226236620e32c1b198850229885919194a88598220e81fc431160623589e23588622b18cde2988de3788c63588fefffbd2c42083f3559ee80f774bc682b4dcc1eee9782388c6278cb0b1161623388e32b588ac62398d633188632c0c46318c66319c46710c66310c66b1ac66318c46310c46310c46710c6563118c431f98c63199c63118c631960e3f318862f2c0c7e6310c45818cb031960622bc678f1163196319e3c658c478b1163179e2c658c65788f1623c58cb188f1622bc678b115e33c788f1623c58caf195e32bc5e71221c5885710e24438914ae29c58a71621c48a588a5714b110e2c438910e245f38b13ce2442b8a71621c58a5889e5714ae295c42c442b8a5713cae29c48858885714b110e24538910af115e22bc658c478b17f95e33c588af1ff9e2c678b19e2c678f1163179e2c478b1ff95e3f2c62f3c78fcb18bcaf196317f95e22bc7e5788f163f2c632bc5fe58c678f195e22c62f3c78bfcaf1163196317f95e32c622c633c58caf11e3c4578caf1f95e32c633c78bfcf1622c632c633c588b188af19e3c5e58c658c678f11e3c678f17ff96319829829986109a99a6b1319ef03a19ef0cc99150cc195d8cc99a683a18730f598ca89e99a615d995d2819fbecc9d755d95c54698a626980d26559dc71520c68357471520c6cc33075d8ea63a0ea68345468320e63a0e875d20c683a0c63aa0fe5841cd98664b0831a0e8318ea3a95a0e563a160752c20e63a8e86838e858418b03a160753148523309353148c22b14cb02918a42918a629160522b14cc5314cfaf52bea7d7a163a963a1f4ebe7d7a95f53ebd4faf43ebd0afa795f53ebd4afa963a1f5e87d3a963a15f43e9d0afa79f4e858e858e858ea57d0afa963a9f4ea7d7a9f4ea7d3a9f4e857d0afaff9f4e9fe7d3af95f52be858e857d4faf53ebd0faf53ebd4afa1f5e857d4b1d0afa9f5ea7d3a7963a15f43e9d0faf52be87d3a163a163af95f52be858ea57d4faf5f2bea58ebe58e87d7a15f42c742bea58ebe57d7ffcfaf52be9e7d7af95f5ffff2c75ff2be857d7ffcb1d0faf52c742c742c753e9d4afa95f52bea57d3cb1d4afa95f52c742bea57d0afaff963a95f43e9d0afa7f95f53ebd7fcfa753ebd3cafa15f42c743ebd4afaf95f5f2c752be857d7fcb1d5508000160382b0e0d954f0d94654deb7acc397acce7d10dea4f0d4b2c4cb02c4d311a0ad3134c0aa34c4ef33b8ab3059193460b03fffbd2c41a01f0c5a2f0aeeb34c619359dc1dde6682c04b32403834f43832403932443930e03932403932413c3240392c070648072561c9870489a7a48161c1b972587258726e5c9b87265e51ca2c65cb9cb2e65fe1cb94565ce59634a94ad21a44a584869529a4485694ad216129a54865cb1972e72e51962c65cb1972c565cb05ccbcb32e5ccb162b2c56b79acb1acb1aeb9acb1aeb9acb1aeb15ac6bae56b15ac56b15ca72485894e590e490b1295ca5894ae52b90ae539252c49e724a5897ce494b121cb2f9cb21cb29cb21c9215ca5890e497ce597cae42c4a57215c85894ae42b97cf9e4f9e3cb1c15f1e57c796393e38ff2be0f9e7caf92be0f8e4af92be0b1cff96392be0f9e0b1c15f058e0b1c796382c71e7cf3e7c7257c95f258e4b1c95f1e58e0af92be4b1c1639f2be7ce493cb127f9c9215c9e5721c9215cbfe72ca5893fcb1279c921cb29cb2f9cb29cb21cb29cb295c85890ae42b90ae42b93cb12795c857298701c1609034f2413901eb3094683091733344d033e0d132acaa34c4ee30957434c1313244382b398d3c4f0ace730e13d34f53d37ac3937ac3830e4382c07261c870648a786ca27a580e4ce244e44e4ace4ce0e4ce240ce240b072723226727058382b90339392b382b382c1c99c1c9c89c960e0ce4e0ce4e0b07067273e6727258392b38ff2c1c19c1c960e4b070670705838f2c1c19c1c99c9c19c1c159c159c960e4ace3ce44e0ce4e3fcce0e0b07058382b38339382b3933839396439252c4872ca72ca72ca57295c872485890ae53964f3965f39242c4be58e4af92be0b1cf96383e783e383e382c727c707cf07c727c73e58e0b1cf9f1c15f058e4f9e0b1c16382c727c7257c95f07cf27c707c727cf257c9f3c95f258e3caf83e792c73e58e0b1cf96392be0af92c7057c9f1cff95f058e0b1c16382be4f8e3ffcaf82be4b1c795f057c16383e392be0af82be4af82c71e57c796393e392be4f9e7fcaf9f2be4b1c795f3fe7c7258e7caf93e392be0b1c79f3cf95f257cf95f1fe57c79639ffff2c70a0800079603ecd71612cb09de71381f66aac420687e4226650cdc6176680617668061769dc58268332932930fb211343e211355621032115563328328343f0fa30fb0fb33280fb321021032112102b43e32112112b329fffbd2c42b01f3f1acdeaf777286a1355cc1eeecf82c1f467d1f5e7084207081f456c895977e65db2265d32265db207081f4583e8cfb3efccfa3e8b07d960fa33ecfb3fbfa2bfb2bfa3fbfa3fafa3fafb3fafb3fafb2bfa3fbfb3fafb3fafa2c7d963efcafe8fefe8b1f5e58fb3fafbf2c5d1dddd9dd5d1dddd162ecaeecb1747777477574577458ba3bbbb3bbbb2c5dff963ebfcb1f657f5e57f457f5e57f5e58fbfff3fafbf2bfa2bfa3fafaf3fafbff2bfbffff2c7d963ecfefe8fefeffffcb177e577658bb2c5d7962e8eeeebfcb17458bb2c5d1dd5d962ecaeecaeecb176577458ba2bbb2c5dff95dd15dd95dd1dddd7f95dd162e8aee8b17658ba3babb3baba3babb3baba3baba2bbb2bba2bba2c5d9dd5d15dd1dddd162e8eeee8b177e7f5f7fe58fa2bfa2bfbff3fafaf2bfbfff2bfa2c7d9fd7d7963ecb1f47f5f658fb2c7d163ecafebfcfefe8afebfffcfefecb1f5e57f457f7e58faff3fbfaf30e326333624e333632e231d546d312e1d530a8233323210b36ac7a31ec7a2c4f46eaba86318c46f18c67719c47315c6631ac46f19c658754c89224dd4c84f204bcc894bcd2f4bcd2f224e7a4b8ad2f34b8893220882c11056441a5e44191297160882c112644113e711125712588938989389893898838889f38889f388882b8838989f2b882c447f9618cb0c46c4c658633626336262363622b632b633636236263362622c319b1b19b1b19b1b195b179b131f9b1311b1311b17196188ad8cd8f88b1c656c65862363622c3195b115b196188d8d88ad8fcd898cad8cb0c45862363622c3195c415c495c416227ffcb11258892b8838989389892c441c4c416224ae20ae23ffce2620d8d8cad88b0c656c456c658632c31f95b19618cad88b0c5e6c4c66c4c7e5863362632c319b1b1f95b11b1319618cd8d88b11058882b892c4416224e2220b113e5889ffff2c4479c44415c415c4ff96224e2620b11257125710713125712571057105713e58892b88f38988388892c441c4c4796224b111e58882b882c44f95c416227ce2624b1105711fe58882b882c44795c4ff96223cae20ae23ffcae26f331e433b76dc30b95e3a3df73449133dd72835791335782f30bd1236a87a37d8c730b8c630bc7a331c2e357df730b82f31ec7a30bc2f30b87b344daa3fffbd2c41e83f005a0ee0eeb3706ce341c42bdd0003187a31e8c730b82e2b44ccc60b8cc61e8c7a31cdaa1e8b03d960c731ecc731ec7a30bc2f2b1e8c2e1e8b03d1ae5c6bbd16171ae5e6bbd15ae35cb8d72e2b5e7e97161795ae35ebcd7af2b5c6b979af5c6b97161795ae2c2f35cbffcd7ae2b5c56b8b0bcad715af2c2f35eb8d7af35ebcd72f35cbcd7ae35ebcb0b8b0bcb0b8ad79ae5e585e56bcb0b8ad79ae5e56bfcad796179ae5c585e6bbdff9af5c6b971af5c6bd7962e2bb8eebceeb8aeff2bbcaef2bbcb1795de58b8eebceeb8efbcaeffff2bbceeb8efbcaeef2bbbcaee3bef3beeffff2bb8b171df7962f2c5c58bfcaeff3bee3baeff3baf2bbceebcb171df795dc775c58bbcb17962ef2c5c77de58b8aef3bae3bae2bbcaee3bae3baf3baf3baf3bee2c5e77dde58bcaefffff2bbffcaef2bbfcaeef2c5e577ff9df7962f2bbfcaeef2c5de577162ef2bbcb17fff95de577960360c731e34da20e50cb58e4cd688b08d2b0734e5d9e30c730360b03306576576658639a61ae76c639a76c6b40958561b2695a76c561b0639a5847db58458360adcd2c58666c9b07615846e6d8658364dcc730dcc730cd8730acd83364d8f3361cc2c1b256e6959b258360acd92c1b1fe66c9b06e69b066c1b258364c741d4c751d0ad0631d47431d074f2c0ea63a8ea63a8e8563a160d83360d92b360acd82c1b2566cf99b06c99b26cf99b06c99b06c98e83a1607431d10631d4742b1d7cc751d0c751d0c741d3cac752b1d0ac752b1d0ac752c20e63a0ebe63a0e8563a18ea3a98e83a158e8563a958e863a8ea581d4b03a958e863a8ea63a8ea65094058284aca0f2b284ca1287fcca1287caca1ff3280a13284a1f2b280ca0280ca0280b0501594058280aca02c1405650960a02b284ca0280ca0280b050160a1f3280a03280a03280a1ff3284a1f2c14265014258284aca1ff3284a1fffff2c1b3e58363fffffffffffffffcacd8ff2c1425650194050799425095942565079940509594258284aca12b283caca13284a0ff2b284b050160a1f2c1405650194250960a0f2b284aca12b283cca1287fcaca12b284b050da03028040204010140a02010080300640ae302500803053c24f30d7c2a930ca42cf31c4921a300f0001300c4005305cc04f303cc03e34620fffbd2c41c003485d91db9ff00062e346243bfd000a9035bccab50300ac600d80006071010c603180c6611a82666027812018002a546032072608a05e690660a6330a28160074dc46f0c033306302b302a06234f02603428582329635f2eb1698880854e0c110038c168038c094064c008008d454d7cc660a5cca5c1d4c4f03899c459a1b8ef3180e80e98018048b009ba542604818c60701ba620e09e60de09e0d024120006cca729e4ca5b2baf182ea7acba030220082203b14028160104972b0109332164c5a76aafeb228dc6dd359e5dba0a2ff2c00c182d01c182d03d180c00c980c801c4eebff1779ae3fb76efa7ba8ca8927c39707a7a27c79803803958039803803980380398030031583a983a04c1583a45e2f14a771593bcf4b7e24f32e789492ebff72f45ee5ebc61540c4603207e180afe17007f53b0c00e4c44c60c00c8c50fd0fffd050d050d1c65d6a2ffffa251aa27c567d0fffffa219580133ba3f75e3292edc1863a4ea46dd474fffffffffffffffffffffffffffffffd4f980d0090981280b6984e00481848a1621869a25d18f32518198f263d19bd283d1a7d2d1b1b0fcf639bcf8c85987b8ff61db16c151d0749fb9cd72df399c764769881e1d19834809d9862389858ce9c5ca99b38cc9a0c149986cd1bcf161d83ce1ea3a91bc8f1997c611a16ce1bcaf21c32d31ade9b19160f191c9a9a68b599fa7d1986450b14e60e03a6271126471166450aa62a03a60e03a60e8a464698867d9f867f99062a83660d0403a0e98300e98a029983e0d2439810069810029810069818068602a8ab8ab3a01500a912a95c5987095b948b016d5fdb3ff4b0ee54255006ed19788c17050c2d0b8c49128c320c41c18a6f1728b945ca4e29eeef1fe56c8a800980801980402d79dc7a4a01980002980804980c03980c02df30180530902530880542c301402309446311448311c4830982528014c03000c23098c05008c05022b592500e2b477b0ffcea5d66d967ffffffff94b20c5dcb0cc4989356a6d779ddeb2ad6b755f57765b2996dda596d3bf38d6869da96d9d53434ef4ba1a7fa3384aa5d6bf2ab19a6ea300c013730b805f33126021130cb4230301a424a304f4122302905f9309b01e5308bc0253115c16431c9c4aa319809b1348b010e360fddfffbd2c41b83e62974fe0ff1f1056daadc81ff69e01033cce9a13e9998033720c8e03095404e3043c257309e00bd30074315306a01b93964c434b07666b9b5a486915398b4c4670561abd5a6ab341a9c58670859b40ea6965b8aa08c26b43291e438b21c5630e828906a18255402a4302824c4020012f82a2415279830b466f22268084188a8850f8238c0276895daa096a1e4406a530a427eb58491f081545ea7a311caba0d9712c06c2245b452039921093ca2624399cb1b2c29eb96a1f6c6b339233293c2e2af1b85c542519395617227c748270778c241b5976196923c2e27c2ba5fc4c49b6b75f582ca7ea3735ffffe0ab665746b4266378e2dfd7fffffffffce36c31231de4bfd191ff117fb8c19504f0c09013dcc8583304ca622984cb0e2c3cd17e039c8a86738190f763626173e280ca4e36eeb34d7401280e67a692ccc6a3708d58face8f60fa0b0e9df6268c2ee3714d7e9284d281eb4c64d280d7ecbbcac398c654a60c39c654c650e70d285280c650650cbbc650b032a63283286532530632a1ce61cc32a561cc61ce32863281ce612012061221206072070607207058038f2b03930390903d094d26834fa4ad216349a44a7a741e9d06952f95a42b485694b090ad2ff9a548695214492c25f34893cd3a62aa434a93cad29a548584869529e8485694d2a434890d22534a94b090b094d2242c2534a90d3252b4a5690b090d2a52b4a691215a534890d224f372e7fcb0e0b0e7ffcadc161c7fff95b92b73fffe56e3cadc7e5dffff372e3ffcb0e7cb0e3ffcb0e7fffcadc161cf95b82c382c382b70587058726e5c95b9ff370e3cdcb8f2b7058725873dff2c38ef9b871fd3a21dfffff65f302a03bf3183c6d2327a41d139209453312084833623919f370206d535458e2633ec4e26388c9fe23a48b6a13da898f333712b75337150153ed089223371145331208dc430be454831cd84203042842030be442035b23231156d2c15065408a685216685088685216568515a14685a1665408856541888549950229a1622959715bd15bd95bd9973d961eccbcb8cbcbcea510b08858452ba8345453444434444345a9345452c2296114d1114ad14d1110d1514d1110ad10d1514b08a575258442c549a2541a2221a2a29a22296110d1114b08868888584434fffbd2c46c83f3bd56de0ff77085de2a1ac1fe6e4054534445344452c2215a21a22215a29a22279a2221a2229d4a296110ad10b08a68a8a5844f345442ba82c2296113cd1110b08a568a68a8be58442b45f345452c22f9a2229a2a2f9a2a296110d1114d1514d1514b0886888a58442b44f345442b442c229a2a296117fcb089e68a8a5844f2b442b453454434545345443a844345453454434444344a834445345452b443a94534444344452c221a2221a25416114d1510ad10d1514b08868889fe568be68888568868b5256886888a568a68889fbf9dbbf45c58018cc0620d8cc4e31388c3620d88c5630d8ccde23388e1e2878ce6e33d88d1e32788d3e24f88c660a18cdae32788c9e2358cd7625d8ce1e2358cef62e58cd0e2438cc6e2358cd762438cc6e33588c9e31b8cc3620d8cc162178cb00b1182c60b1182c40b11f8dc456e33f1388b1e3371b88ad8cf8b88f8f8caf88d8f88f8d88b0c65862363e32c719b13195f196388f8d8fcf8988b1c65863363632c3195f115b196188ad88d898bcd8d88d898cb0c458e32be32c3195f19b1b19b1b19618cd898cb0c47c4c456c66c6c65862f36362363632c3115b115b115f11b1b19b1b115b11b1319618cd8d8cd8d88ad8cd898cad8cd8d88d8d88a310b0c46c7c66c4c456c66c6c47c6c66c6c7e6c6c458632b63362622b633636336363363e2f363623626336363ffd15b1f9558cb0c47c4c66c6c458632c31ff9b1b17f95b11b1b17f9618fcb0c458622b632c319b131f9b1b115b115b17ffff9b13196188d8988d8d88ad8ffcad8bffcb0c7fffa363622b622b62fecf95ff2aaf2c084258217cce061080c9c9655cd3ae3270dd952720e33eed24e068381cc4203dc0d957381cce0781a4e33eb494f70aed24cf704eb8cf701080cf702cc8c6f45a0cc2b7217cc9c81bd0c58b0ad8c58a0adcb02109829a2101829815b188400a61d6ca69a9b5b9554c35314c35314d2b3eccfa3e8cfa840e103ecb07d99f47d19f67d962102b3eccfa3e8cfb3ecacfa33e8fa2c1f6582efccba2e8b05d960ba32e8ba2b2e8acba32ecbb2b2ecb05d9597665d17665d177e582ecb05d19745d15974582e8cbb2e8acbbf32208832252f32208932252f32208932248834b88832252e2c11064411064491264425e64411206bfffbd2c47903eab9a2d20ff6b3471eaa5801ff5a38ac804576115d84577062ee0c5d81ae97606ba5d8457581ae976115d01ae9740c5d40df4fb037d3ec22fa063ef08bec22fb063e818fb063e818fae06fb7d01bedf606fa7d845f406fb7df06533c194cfae11a6ffffc234d81d369947ffffffffffff06110c1f907e0c1f81044d4c44abce14c8534d8f25314c1f820f0f62f7cd8ce8395f0d2af6c24df37e970f2038d90c413a6a0e14fc808e9a763d4f204c80ce3642950ce821038ce801044c4114abcc40e1898c4101040c1f91040d89f1acf1a9898c7e5898d89c7e4ae0f0f1aa0f0e0f5044ae0f0e0f5044d0420f0c7e5040c7e07e4b0823e63f282056c4e5541134101f834111f831f91f82b1f934114102b1f834114112aa08941f898fc2089607e4ac7e0d0407e7cc7e1044b03f05682056823e68203f0581f831f81f92c20818fc8fc98fc208f98fc0fc1a080fc98fc8fc95a0879607e4d0407e4c7e1040c7e47e4b03f263f03f0563f263f23f0563f0563f063f082063f03f063f03f063f23f263f23f0581f831f81f92c0fc1607e4b03f068223f263f23f268203f3e63f03f0584102c20898fc0fc019f93f00c3f2e113f2113f3033f27e0227e4187e4227e4227e4187e00e089f908c11061f9061f806410033f27e2067e0fc819f83f1819f93f0067e4fc830fc830fc419040187e3033f27e40cfc1f8061f9c227e00cfc9f9061f8061f8091f9033f27e4187e40cfc1f9033f27e2113f0067e2084187e2113f2113f00c823830fc830fc7f7061f8844fcaffffdc9d9fffffd75f317f31b37f117f34b7b29398c65434b665534da7572c30c9a6dbab1a6d12f1b2acc61b2ad949bf832a198d32a1b2a6629d947fe9b2a0bf98bf25b192f30c99ce12f989092f192f12f1612d8cc68c6cacc68cc6c5fccc685f8b06366636634663496e66362fc6bf2fc6bfe346bfafc6bf2fc6bf2fc585f8d20978ae5f3485202c4be690a406904bc5690f961213979212c24272f240690242569096121348521348521397d203481203485202c24258480ad203485212b484ad203485202c4bc56909a429095cbe5897cd21480d21484d21487cd20978e5f484d21480d20484ad203485202b480ad212c242569015a40690a40690a42690a4058484ad20ff348520348fffbd2c48183f27178ce0f76b545f6b61a01ee57205212c24258480ad213485212b480237e065f8237f81dfafc077fbf4237ec197e832fc0cbf832fc11bf611bf032fc11bf832fe0cbf832fc077fbfc237e065fc237fc197e03bfdf8237e832fe11bf01dfeff065f8237f832fd03bfdf8237e846fe11bf832fe11bf846ff065fa077ebf81dfefe0cbf832fdc0eff7f065f8197fc197f065fc237e08dfe0cbf60cbffffc197e2c0bf18bf0bf9bf859418bfa5b9d9418d15d941a6da6d9a6d44a18bf8bf1598d1961ad0986cad01890a6d9b0c9ce992f3ab9596198e69619a5606c18bf18d961954cc6d2dcb096c62fe2fc696c63462fe2fe62fe96e62fc96e696c2fc66342fe5663466342fe61b039865861b0561b261b239a63981b2581cc31201202b1202b1202c09018908909589015890992f0901f35b0586c1b65b26d86c9b61b06d86c95b63cadb26d96c1d72ba6a1ae95a87cd40a13aea80eb8a12b501a854275d5095a84d42a12b6c9b61b056d82b6c161b06d96c15f33cdb2d836c364db0d92b6c9b65b056d8390484e4120390c80ae427209095c83fcb120390c80b120390484e4121f2b901c86425890162405721390480e41202b90f95c80ae407209015c80ae405890f962425720390484ae40720901c86405720390c860cbf846ff846fe11bf846ff832fc11bfc237fc197e846ff81dfefe11bf832ff832fdc237e03bfdfbc197ef846fe11bf832fffc237fff832ff81dfefdfffff065fff08dfa0cbf2af2c1611a561619ad086c1bc6256986c0e698e61db186c2d0991503a991528199ca96bf995d8cc183a95d98cc883959ca996b0ae18500ae18ae8ae18ae10d99ca05098ae0ae158e6186c06c996186c186c06c186c86c1586c98e686c186c86c986c1611d71406a1501a86b858501a82ba56a02b501a854258509d71405850161426a0509a8543e6d86c161b256d836c363cb0d8ff2c363cace9e5883f99d0ea583a959d0cea7433a1d4cea7533a1d0ad43e585095a84d40a12c280b0a02b5095a83cad41e56a12c280d42a1350280d42a0350283cb0a0350a80b0a0350280d40a02c284b0a0350a87cd42a02c284b0a12b3a19d0ea7073a99d0e8583a99d0ea6743af99d4e86753a99d0ea567533a1d3cce8752b3a160e86743a160e9e6743ac1fffbd0c49001aae194d80f72b58554b59a95eed5a08d808b600db0d9c22d906367831b1c22d8c22d8fc18d808b620c6cf063660c6cf036cb66116c01b65b2116c7fff08b67831b3ffffc18d8720624024262422406caa96c696efe06634fe0696e2fe584b6f32c269733b61cd32c30d831cc2c2375639c339c120339d4da2bb08ec2364dcd360e5e480e5f978f9c97cd2197cb0901f3a909f39ce15cbc6904be7cef386904be572f1cbc909cbc909cbe90961202c24258480d21480232106484192108c80192008c800e4320064840db1cc036c36418d981b65b2116c7845b006d86c831b20c6c045b0116c81b65b2116c01f31b00c6c0339a0c6ce0c90046401190e0720900464184642119001c86400c6c831b2116c831b00ce6045b006d96c01b65b2116c81b61b006d86c831b006d86c031b206d86c81b65b006d96c045b00c6cc0db0d881b65b006d96c01b61b20c6c845b006d86cc0db2d90636606d86c031b308b6022d8036c363f06487fc1921846400c90c192084643e0c907c1921ff064842321fc2320c1921c2320e0c9083241c1920e1190ff0648383241ffe1190552b188b0719f7f4a1eb57c15bc66b19c46e821474a4645719988ab69bc4b11ac4311dc4b11cc47198c4b198882219502296045338ce33589622b388d62188c6338cc6318cc63588b071195222995222195022160a832a04532a0452b110ac4432a0442c08862208a78b1f95e23c58fcf1633c78bcae2162215c42c442b8a588a588be71221c58a716295c538b14b110b114e2442b8be5714e2c538b10e24538b10ae21c48871227f9c58a7162162216221c5885888712216229af5de585e6b9715ae2c2e35cbcd72e2c2e2c2f3f4b8b0b8ad715ae2c2e2b5e6bd715c42b885710b114ae29c48a588a588a58887122ff95c42c442c45f2b89e5710e2442b8bc238e11c611c5e11c5f08e3f83310331ffff8471047160cc708e3c198c238c19881988238c198e0cc7833103318471e0cc508e3f8331c0f1e3e0cc611c7847103314198e0cc5066308e3e0cc41f2c1e6a5119a1af08bc29b0f2a7b986cca7b194d8c3c98dd06f719b1a90d9a4346c69a4366c619b1a47f1ef71b39b74ef71ef76f71a08e3598fce351a08a081bc6bc61f9a79a953cd4de33cd7cde31e34a79a8de37cdfffbd2c4d083a94daee40eea974694295845ff597a0d1c3634ad1c0e3ff630e3f91c0d1c11c0dba0d98cd9a9b0cd98d98dba0d98cd9cd9ccd9cd98b0dd3e566cfe66cc6ce586e9f36e9367362741136271f831f81f9f34101f82c20898fc8fc1a080fc1a088fc18fc8fc04638846380323884638c191c0231c4191c40e38c71064700647108c7003530a640d4c29903530a600d4c54d08a9803532a6418a600d4c54d03532a600d4c29981a98532075314cc22d980db3367831b3831b381b666cc0c6cc06d9db381b666cc06d9db3045b3845b381b666cc116ce0c6ce06d9db3c0e384708463804638e118e0118e0118e2071c63881c718e0118e3f08c70038e11c00e38c7108c7008b66036ccd9c0db3b67c18d9822d980db336608b6608b6708b67036ccd9818d9818d9c0db3b670636706366036ced9c0db3b6606366845b381b676cfc191c2071c238f08c71f846380323801c718e384638c191c3c82bb45762bd6a189200a0f3144ca433d6cc69c36b368403455f43b3455ab8137c0e4323674ca4235040d5636b2cd573290d4a32a9ee6553dc8df03144ca294533f88be230f8d3e330f8c7e333dc8a4333dcd9d332908a4332908a423144ca423144ca433290851231448513314494a231448f7233dcc5133290c5122c0a24587e3d95bf1960f8ccf8cf88b07c4583e32b3e22b3e333e23e333e37e333e23e333e33e32c1f199f19f1160f8ccf88f88cf8cf8ccf8cf8cb07c4567c6583e333e23e237e23e284e898328981d13a2611a240ca2611a2508d1281d12a260744a8981be27c6117c4117c606f8df101be27c60c7c407f89f181be37c606f8df101be37c6117c6117c5063e208be281be37c5063e3037c6f8a117c581be27c7831f181be27c5063e2ff81be37c5f831f1781be27c4117c6117c40c7c4117c406f8df1c18f880df13e2063e2063e208be308be2845f1c0df13e2063e2037c4f8b08be3037c4f8fc1944c2344ffe11a27ff06513e11a270aa27fff08d1303a2544bff06512f065128468980001f961a0f32f89be330f8cbe22b674cd4a3528ccf727c08d4a25288c923183cc9221838b0ce9194867b9997c67f118fc69f198fc63f19b07b071c914919b07c91963f88a1f1cdf88f8cef88f8f46d3baae7aacd386d39aae6a254867487486fffbd2c4f0002ff59cc10ffad486bcb35849ff59b3574846a24a26574866fc67c667c67c667c6fc6583e233e23e22b3e332f82f832f92f9360f60f32f92f92c17c7960be3ccbe183cb05f265f2c1e65f25f065f0c1c56c1c582f832f860e32f82f932f82f8035f0be40d7ce0f035f0be7062f8062f9062f808af981af95f2115f006f8df1c22f8822f880df1be3037c4f8818f8c0df13e208be2037c6f880df13e2037c4f8822f8c18f8c22f8c0df1be3037c4f8a117c6117c40c7c60c7c708be208be208be2063e3063e308be208be3063e38317c8457c40d7c2f808af808af808af9062f9035f0be422be018be00d7caf9062f98457c81af85f1035f0be422be206f8df1031f1845f1045f1831f1045f101be27c7831f1031f101be27c7037c4f8c29f1818f8e06f89f1831f101be27c7037c4f8822f8c0df1be3ffc1944e0ca25f065120651284689fc1944cde666d451e74c692cb86aed3354ea7b2cc5691998436ef2c2dbe749e0b946bc1af0868cdd2784d19c1de4b1aa9bad88cd958dd05853d0c4716ce4cd8c23fcdd6d2ec8cbb275b4cbb31728c3671ba0c3671ba0c3661ba0c36545ccc36445ccd1731ba0c6e90d98b03c619e6a79a98f183c616078b2c2335af2a0b96565d91c7fa38144701611c0d1c51c3cd1c51c4d1c11c4ae3fb9e568e1fe58471336636636e9366e959b3f99b31b3959b399b31b3959b399b31b30323840e384700647108c700647006470c231c4231c606d99b3c0db3b6608b67036ccd9c0db336606367036ccd9c18d9c0db3366036ccd9c22d9c19ba40db3367064710647008c708323840e38c7081c718e0071c23803238832388463881c718e20c8e00c8e308c7108c7106470038e31c00e38471038e11c00e38c71038e31c60c8e20c8e0071c23881c708e0118e0118e20c8e0118e108c700647108c70038e31c70647108c7108c7008c710647106471064710647108c710647181c708e30647008c70c231c00e3847006470038e31c3065cafc1972ff832e5ff846e5419e3613f1bffffe11f19ffc19e33c23e340cf2c13a66bc22f044e35599b1a90d1bf8cb549bad85d91af091aa938d5665d997666b549b1866c6ad5268ce233468cd233651785150bb22b172cd19b5e10cf343cd4ad6de33cd4f3533cd078c2aa78064efffbd2c4f003b1c9a8c00ffad4867d2b97c9ff5eba9a783a34f013c12a93a6513c0993a64e9993a49e09549d32bbb235cbbb32b5ca2c2e515ae595ae59a38c7f1a382381a38a381c7fa381a38a389611c4a238fcb08e2584702c47f1a38a381a382389a38a3895a389c7f47f79a38238960a64ca61530ca65534ca64a60d531534b053058298354d29932982992b29932982992b2992b4712c2389611c4d1c11c0ad1c0d1c51c0d1c11c4ad1c4d1c11c0d1c51c4b08e068e28e268e28e0568e0568e068e28e2584702c2389a3823895a389611c4d1c51c7cd1c11c4b08e3e568e0584712b4702b47034714712b5ca35cb5ca2b5cb2b5cb35ca5ca2b5ca2b5cb35ca5cb2b5cbff2b5ca2c2e59ae52e57f95ae5161728b0b9456b9656b94585cbf2b5ca2b5ca2b5ca2b5ca2b5cb2b5cb35ca5ca35cb5cb2b5cb2b5cbff35cb5cbff2aae56cb0b95fe56b95fecaba05d4123552674e3bad48a9d373031554e1127497febaf30f887e332f18e2831290966285e38c9662f1cc5622b8ccae51ce0cc394994ac60e30e385623158838d3158c90e3243c90e31588563312904a53090c2422b1290c3e21f88c7e20f8cc3e33f8cc3e32f88b0307958c1c617c8c1c56307187c41f19607e230f8c3e230f883e32b0f88b01219848625215848658090cb0121160243f3e3db92c71e586e0db96e0adb936e38e2c371e56dc1b72dc1b72dc79b70dc15f1a586e4b0dc95b7056a69a9aa69a9b5b9a9aa69a98a61a9aa61614c3ad94d3532b63adab735314d3532b636e5b836e1b8f2c3706dcb706dc37056dcf9b72dc15b70586e4adb92b6e0b0dc1b72dc9b72dc95b726dc370586e0adb92b6e0b0dc95b73e6dcb706dcb726dc373e6dcb70586e7cb0dc1b70dc9b72dc15b73e56dc1b72dc7961b82c37256dc79b70dc161b82b6e4adb8f2c370586e4adb92b6e4db96e4adb82b6e4adb82c370586e0b0dc95b726dcb70586e0db86e3cadb92c3726dcb726dcb726dc37056dc1b72dc961b936e5b9f2c3706dc37256dc7fffffff063e30bcc78d1e34c5cca4f0c5cb8d54de87b760cf3598c4e3555e08dd6c172cd6dd3cd4de8698c0db374868c4716cdcc5ca75b0c5cb1728d19a4668cd8c23fca1b1b323fd6a932ecd19a2c0b946bc1233462e5233a71fc8e271fe8e268e11fc68e2fffbd2c4f081f03160cc0ff6d7863fb5d7d5ff5a2a8e27e69e6be56f1a7e69e69e6f1af1a57e6bc2b78dff3471471347147034704703471470347147134704703470471347147134714712c2389a38c7f1611c0d1c51c4b11fc68e28e0584712c2389a382381ae52e51ae5ae51ae5ae59ae5ae5945cb9ae52e596172cd729728d729728b0b9456b95e157280772ae5846e5046e5c1972c19728237281972bc0ee5dcb832388463881c708e2118e0071c23801c708e0071c63801c708e2071c23801c718e0118e00c8e2071c23801c718e2071c23804638e11f1bc19e330af1bee0cf1bc23e3423e31a0cb940cb95c23728197281972b03b9772ab065cb08dcb065cb708dcb08dca581dcab940cb940772ae57d5fe0cf1908f8de0cf1a15e3411f1a15e35fd55423e3611f1b5419e317f5e11f19f08f8d0678c833c6423e33f0678d81f8df1b5f33a38e8f3e1d21d43b49168319d0eceb83d0ece2c92270d155ae00e1856b28c69d355ccf736748c513290cda0f8b20eb808b24a844e99ee65219a9462891b3a65211c59044e9b41e44e96115532275155d151d3a33a38e8e33a3ce8f35a08b3232cccb3228599ccb322ccca8b419bf1df119f11f199f13f11bf13f1143e2161f88b113a5589d389c89d2c44e162270a44e3cae270da75a70da71a74b0d3a6d38d3a6d3ad386d3ad3856d3be56d3856d386d3baae56d39e56d386d38d386d3ad3a5355c56d386d38d39e6d38d3a5869d369c69cfef95b4e161a77a56d39e5869d28d3af2b69c2bd56f369c69d2b69c2b69d2ab4e1b4e34e1469c1b4e34e95b4e79b4eb4e961a77cda71a70da71a730369c69d2b69c2c34e7961a70b0d3851a706d3ad3a56d3a56d386d38d3a5869df2b69c3d5669c28d3b2c34e961a77ffcada73cada70a34ef45869c2b69cf2b69c2c34e95b4efe8ada70da71a74b0d3bb2c34ef961a77ca8d385869c2c34eecb0d3857665ffe58b322c599fecb16645766658b32ffe73fcb166657665e7665666766766458b32f2bb32e313316f31e1f6ee56bfff9beaf3144a96237c0851329f118e4335288e4333dccd9d35288d9d22908cc38248ccf4e183cd4a32908d4a3a588d4a33dc8c5132908c513528cca42528cca433dc8cf72290cca425288ca43290cdf03290cd4a2290cc5133dc8c512fffbd2c4ff03f49152ba0fffc5c651b59801ff5a901448cf72290ccf733dccb07b999484a511948428998a242891948628916144ce90e908ad448d44d44cd44d448ad448a2894b0a27e585123513a432ba42d95a8916144fcd44d448a8a246a24a266a24a2452909e58513f849f1c22f8a117c406f8df1831f1031f101be37c607f89f1845f1831f181be37c6117c606f89f101be37c606f8df1031f101be37c508be2037c4f8e117c6117c508d1308d1203a274482344b0651306513065138468941944c2344c2344a0ca260744a8901d12a270651383289c0e89d12f83289e0ca258468941944c1944a0ca2508d138468904689b8468941944e11a278328901d13a260ca2583289e11a2781d12a24f83289832890468984689032898328942344c1944e11a2706513f83289c2344f06512a8234481944a0ca260ca258468941944b8328976e11a2584689feae11a244c414d45332e313030aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaf2aa8207219b3a45243318a27c791a946a519a4c849198c1c7a7997c65f119fc47f19486126d651aae67f1a7c6517e21587c4617c1244661c9246661c124666ab9aac66ab0d3a66ab35966a082822634e2820566ab19aaca0896069d2b355cc69c5040acd563355cd562c0d3a574845144a56a24748748656a2658a4337e23e233e33e22c1f1159f119f11f1959f199f13f11bf13f11d21289161448b14847486a246a26a27e51449e585132c28981d13a2611a2411a260744e89832890328901d13a2708d1303a2544d82344e0ca240744e8981d13a2411a25846890328981d12a260744a890468903289e0ca2611a240ca2611a270651283289784689c2344c2344c234482344c1944c0e89513f8328981d13a2783289c0e89d1206512ef0669d8334e78474ec0f4e69de0cd3a11d3807a774ee11d3abc19a77ea7c19a760cd3bb419a7019a73ffff8474e8474effffc19a77ff08e9db3ffffd6bf9913a8aa1f9eb1631445566a510a2472198a24777c28226d65359675c09138644e11387163570651a0f9c59044e1a2a88aa14455e67b9948667b93e066ce98a26644ec592644e913a6d0722aa51a0f142274644e22aa644e913868aa1138644e341c644e113a552274aa44e1a2a844fffbd2c4e581eb5da6c00ffad4867d3597d5fb5f98e18d3834e19aac34e18d3834e18d3a34e958d3a581a74ac89c2b2274aa8aa9913a44e15913bfe644e113a634e0d3a634e0d38634e1aade5634e798d3834e158d3a581a70ac69d2c0a2662890a2456289958a245628998a2628998a24289958a27fe65210a27e0744e89046890468942344c2344c1944825448234481944c2344e11a2503a2544c234480e8951206512832898328901d12a240ca240ca270651306513065136e11d38c11d3811d390669c08e9c03d39a7019a7207a774ec23a740f4ee9cc19a7423a7607a734e0474e8334ee11d3a0cd3811d3a07a774e419a740f4ee9d03d39a7611d3bc19a7019a7023a7207a734e01e9cd3908e9cfe0c22742244ef83089c7089139f06113bf088d39fc1834e42234ebc1834e60c1a77f060d39e111a77c1834e84469df6c2244e550000001fcb08e06636ca8663496e6fe26366634fe069b4c32673aeae673a9b6586192b1cc33b73b63411a5531f94112b410383d62731f86263626626331b31a34b731a317e17e34b64b732982992c2a69594c194c94c795a089a0831318fca081a088fc9625e3979212b484ad2134825ef2be70ad203979203485203481213481203485212c24256d93e6b64db2d92c364db2d836c364af9856d82c360f9ad92b6c79b65b06d9e61b61b26d96c15f30db2d93e6b64db0d82b6c161b0589079c8243e7219015c80ae40720901c82407219079c8240720909c864056d92b6c1b65b056d8f36c360db0d836cb64b0d82c360adb056d82b6c9b6798586c961b056d92b9095c84e43202b9016243ffe589095c84e4121f2c480e4121390c84ae4057212c484b120ff2b907f95c87cb121390c84ae42589095c84ae425720390c80ae43e58909c86407219016240589095c87ce4320390484b120f2bbfff962fe577ef2c5ffcb17ef2c5f8aefc58bf9dfafde58bf962fde58bf1dfefe77ebf15dfcaefc577ef2c5fcb97d859c2ab88e7fa3cb0599194842891be04a51998724911aaf47a799fc43f19a7c4ff11978c122992ce71415948456a5119fc61f19553e232f8cbe232488c393248cc393183c60e31a70d5631a70d563355c69c3355cd573144c5123144851333dc8512314485122844e4d1554550a11383227089d2b2270afffbd2c4ff83f1c956d46f779446f42a9881ff7690d448d44e908d449448d44d44cd44d44cd44d448cf8df88cf8cf8ccf8cf8ccf8cf8cacf8ccf89f8cb07c6583e232f82f9360f2f92b2f832f92f932f92f82c17c960be4cbe4be0acbe3cef9be0ef8be4ef8be0ef9be0ef8be0ef8be4b17c15df258be0b17c1df37c1df17c9fc7f11fc5f115fc457f19fc7f1163e23f8fe2f2c7c47f1fc457f1963e32bf8fcaef82c5f277c5f277cdf277cdf058be4b17c79df17c15df077cdf077cdf058be4ef9be3cef8be4aef9f3f8be22c7c5e57f115fc457f1963e3f2bf8cfe2f8cb1f1163e33f8fe3f3f8fe33f8fe32bf88b1f115fc457f1963e32bf88afe22c7c458f8cfe3f8cb1f1795fc5e58f8cb1f115fc67f17c7e7f1fc458f8cb1f1163e22c7c657f179fc7f115fc457f17963e32bf8cb1f19fc5f19fc7f179fc5f1963e22c7c658f88b1f195fc47f17c457f115fc67f17c658f8bfcafe32c7c7e57f195fc658f8d5f2a2944630705f26c472af66abd8c1a661c9872693205f069320c1c510881978e4b3192463071a4ca49199e9e7a71987017c18c1e17c19c62b198dc2b118dcab11d21a891d2152179d21d2195df1160f88cf8cf88df89f88b14867ee4a25fe56a246a26a25e6a25485e6a26a27e67c47c5e67c47c667c67c6567c5e583e32b3e3324324232422432b243324324232422432c12199211219921252992112116090cac908c90c908c908908c90c908c90c90cac90cc90c90cc90c908c90c90cc90c908b048664844840c5f2115f00c5f108af8035f2be2115f18457c6115f20690d210452101a4294a1148406909218312140d21a4308a4208a420624281a424861148406909210452101a4348508af9c22be206be57c0317c8457c8457c422be60c5f2115f20c5f1035f0be418be2115f20690d2181a424840c4840c4840c4840690921e11486114841148606909210452181a43484114860c4870348490c229080d21a4208a430624208a4308a428317c0457c422be40d7caf9062f9062f9035f2be40d7caf8f062f98317c8457c0457c6115f3035f0be018be422be3fffff08d12f2c3d10653614da6a7ba2e442a7a1a9eea7b9a3362e518b971aa9445cc6374b0f2564019957055c1437be63748dd2653694d863c68f1863c6adbc6b6f8f1a53cdfffbd2c4f103f43180ca0ffacdc623b25881ff59f847e6be687e68f1a57e6857e687e6af187e6be687e69e6a6f1af145478a3f3578c378d78c378c78d378cf352c3c61478d1bc63c6961e34ade30adba4dba0d9bcaadd2566cc583672b36633676e834704712b8fe38fe4702c2389611c4ad1c4d1c11c0ad1c0d1c51c0ad1c0d1c11c0d1c51c0d1c11c4d1c11c4d1c11c7cb08e3e584702c2389a382389611c4b06cc583672c1b319b39b399b31b3f959b399b31b3959b3960d9ccd9cd98b06ce66cc6ce66ce6ce118e2071c238c191c4191c7038e11c40e38c70038e11c4191c4191c40e38c70064710647006470038e11c0191c40e3847084638e0c8e0118e00c8e00c8e20c8e308c718323804638046388463881c708e20c8e2118e20c8e2071c238c191c0191c0191c0231c40e38470c0e38c7008c708323804638c0e3847108c7108c7006470606470c231c60cf1bf57ffffdffffff846e5e0cb94a00002f30be4c3831084420332746f434224bc73259824431839265263070b039c183701c6961c14d2938a4eb9158cdce0e30eb95588eb8ce3cd58ce3cd589588cbe648cd83cbe0d83f0e0e48a48cc90c90cc909c14c909c14d295290cbe248ccbe1838d83cbe0cbe183cd83cbe0cbe1838cbe4be0cbe4be3cacbe0b05f2569485648664844845694a64864846486487fe6dc3706dc3706dcb706dc37256dc9638f2c370586e4db86e3cf8f6e0f8e6e4f8f6e4db96e7cb0dc1b72dc161b82b6e3cdb86e0db86e3cadb836e1b82b6e0b0dc9b72dc961b936e1b836e1b82b6e4db86e4db86e4b0dc1b71c71a9aa61d6ea615a9856a69d6ca61a9aa695a9856a69a9aa6f95d6e56a61a98a69a98a69614d2c29a56a67962432b90fffcb121f962422c485e572196242f2b908e43908b12115c87e572115c865890bcb121f95c845721ff9c8521162432b90bce4290ce4390bcb12116242f2b90cb12196243f2b90fce42908ae432b90ce4290cb1211c85211c87211c8721f95c85fe5890ce4390cae432c485e572115c87fe572195c87e58908e42908e43908ae43ffdbf587ccf8af88c7054224d7aa4ba8d7e30f8ccfe21f88d57a248cc2f80be4ce281294b04b319c5097518e0a4b3197cfa79fa7e1c197c97c9fa7307997c17c197c61c9df1df119f11f19df15fffbd2c4f303b38556ce4ffba9d6c3a41945eff822f199f15f199f1bf199f19f19df15f1160f8cdf8cf88ef8cf88cf88f8cb07c467c4fc66c1e5f065f05f265f0c1c6c1c5f265f25f265f05f265f05f065f25f065f25f26c1e5f256c1fe582f832f860f31b838d31b91b931b91b931b81b82b1b931b81b92b1b831b938e2c0dc18dc1c695a5279921921992112116090fcd295290c908908b048464864865824332434a531b81b831b81b931b81b92b38f2c1c7160e34b0372563705838f2b1b831b81b831b91b82c0dc9606e4c90c90bcb04845824232432432b24332422432b2422b2422b24332432432b2422c1219921121f960908c908908b04846484485e64864845648658242f2c121959211592116090bcac90cc90c90cb048664844866484486564866486484564846484484671c3706ac6371e637071c6372370637237063723726372372637237063723706370372581b931b81b82b1b82b1b831b91b82b1b92b1b82c0dc959c7158dc98dc8dc98dc8dc79606e7ffffeef34bdd4378ce2398c633b8a623188e23d8a62338ae23578c737dd5f2c1c65771985e3d98f6d59abc17163c634bd2f32248939ed2e32232137512e3751d5375488f34bdd534bd2f32208939e92f32212f32248934bc892b4bcc88224d2f220ac882c11269711058882c4495c41c44495c41c4c415c415c4162a0ea514ad14ad14b0887508a68a8bfe75088584434545344a8345a82c221a2a21a2a29a2229a2a29a2221d4a29d4229a2a21a2a29a2a215a21d4221a2a29a22295a279a2229a2229a2a29a22216114ad14ad10ad14d1114d1513cd1110ad14b15268a8a56885689e5844345442b442b4534544345452c229a2a29a2a296114d1517cd1110ad13cd1114ad14ad14b08a68a88568a568be68a885688588938988f2b88f2b88f2b892b89f2c447fff95c496220ae24ae23cae20e2624ae27cb11056c5e5863363622c3115b115b19b1319b13115b19b1b11b13195b116188b0c5e5863f36263f2c3195b11b1317f96188b0c60c44ffff84513fe0c4404513e0c44fc188908a2708a27cc484e74d866254aec44c97d36cd860484dd5ce74b073a64bf12a69b424265841b261ac9585825e312039c325e894339d757312025f2b619312139c3120120325f4db31201213121fffbd2c4e403eff9ace40eeeb7c67f361b01ee56f01203120120312125e3121120325e25f325e4da2c12f192f1ce18909ce996106c160730b01b063981b063981b0580d9f2b909c8240721909624058901c8640721901b679a586c1b61b056d92c363cb0d92b6c795b63cb120390484b121f2c484b121f2b9095c84ae4058901c86405721ff2c484e4121f390484b1212c484b120f2b909624056d82c364db2d936c360db2d92c360db0d936c364db2d82b6c95b64b0d8f2c360db0d92b6c95f34b0d82c360b0d82c364db0d936cb64db0d8f36cb64db0d82b6c7961b2586c15b60b0d92c360db0d936cb64adb2586c15b60db2d82b6c79b65b056d92b6c7fff961b3e56d936cb64db2d92c364b0d82b6c161b3fe6d96c95b60adb211907846400c90c192006482072190c232106484232006483e0c90c1921c0e4120064802321c19218464308c841920f846401190c1920064861190846400c9060c908324384641c192106483f08c842321af3210329369d2693340190343f32830fa66d366d89d35569b2332843e355643f35569b2389d66c327a1d4346c27a33c746c2882d31910ba2b26937840fa321055630fb210343f32832103292b3292b3292b32830fb210321043e3210211321121030fa0fb3843282b3e8f28840cfa3eccfb3eccfa840b10819f47d99f67d99f70899f47d19f67d15c2267d9f7e7081f467d1f5e567d99f47d159f667d9f6583ecacfaff2c1f4583ecae1133ecfa2c1f6567d159f467d9f667d9f6583efcafefcafecafe8b1f458fb2c7d9fd7d15fdf95fd163e8b1f457f657f657f7e57f658fb2c7d963e8b1f458fa2bfb2bfa2bfa2bfa2bfaff2c7d95fd95fd7ff95fd163e8febe8afe8afebcafecfebebfffcfebebfcfefebcb1f458fa2c7d15fd15fd1fd7dff9fd7d163e8fefecb1f458fb2c7d15fd163ebcfebeffffcafecfefe8afecfebecafecb1f658fb2bfbff2bfb2c7d95fd9fdfdff9fd7d1fd7d1fd7d95fdffffff95fdff9fdfd963ecafecafe8febebcafebfffcb1f657f47f5f5e7f5f7fe57f67f5f47f5f5e57f7e58fbff2c7d15fd163ebfcb1f657f7fe58fb2bfa2c7dffff9fdfd95fd985e171611230b82f3a39f7357a8e30b91337c8cc31649334495e331d13324c583248cd30bc7a37d8c630b8c73248cd33301d31fffbd2c4eb83f475b2d80f7774c5b935dd81dd66d8609331e8c630bd1230bc7b30b87a31ec2e2b578c7a44cd130bcb063985c3d9602f30bc2e2c05c63d8f666305e61705e563d985c17985e179aef456bcd7ae2bf46b97961795ae35eb8b070ec1d33a70b070b070b073cb070ced9ff2b5c56bcd7ae2b5c585c6bd7ff9af5c56bcb0b8ad796179617f95af35eb8d72e2c2e2c2f35eb8d72f2b5de6bbd962e3bae2c5e577f9df79dd7162f3bee3bee2bbbffffcefb8b17f9df779dd7962f2c5e577ffff9dd795de57715de57715de58b8eeb8eebcefb8aee2bbcefbbcb177f95de58b8efbceebbfcb1795dfe77dde77dc5777f962f2bb8b17162f2c5de77de775fe58bcaee2c5e77dc775c77de57715de5771dd7962e2c5e58bcaefff2c5e58bffcb17795ddfe58bffcefbfcb17f9dd715dde57715dfffffe58bcb177ffffffff95de5777ff95de577962f2c5c57715dff31a71aca3861eef93355daca37c0a43335288f7337c094a12b3dc8c2f91838c92255e8eef81a70d4118610c2f83d38cf4e248cd26530e4a0a27285214d9d22908a86ab1a822a08160d5636b28d5631a75acb3355d41033558d572b1a70c69c1a74d4111a74b034ef98d3a34e9d21289f9d21a891d212899a892899a89a89f99f11f1962f88cf88f88acf88cf88f8cadf8bfcdf8cf88cf8cf88acf88df88f88acf8ccf8df8bccf8cf8cacf8ccf8cf8ccf8cf88acf8ccf8df88cf8cf8bccf88f8fccf8cf8ccf8cf8cacf88cf8cf8e117c414f8a06f8bf101be37c6117c4137c4117c6117c7063e3063e2063e2037c4f8c23f8823f8e117c406f8df1845f1845f101be27c4117c40c7c508be2063e3037c4f8c19f8822f8c0df1be20651203a2744a0744a89c194480e89d13065130651203a2544c1944eb81d13a260ca240744e89f853e3418f8818f8818f8c22f8823f8c0df13e381be27c606f89f160c7c6117c7037c4f8c0df1be2037c6f8c0df1be281be27c606f89f1831f181be27c40ca2611a240744e8983289046898468903289419448194480e89513832890328983289c0e895120651281d13a240744a890468983289c23448234480e89d13d0eaf5c19a76dea8474e8334e2bffef0669dfffffd5e6498b0751af860e372684a86587c8ccdd48c59074cb41b8c6e358ccc160d08070fffbd0c4fa03fa5daac20ffad4c5bcb45e01dd62d0d43164ad433164933165092b24cd09248c58164c93420c59164c1c160d09160ac923420923164583074cc2c03860e0b2562c79601d3070593070932b074c1d070ac5839614d4282b506a029840a61429cb0a585264489608990225644c8bd32040c8912b206408991225644b0f4c81032240c81032240ac816081608191205640b044afa7de796387de7963be7de95f4af858e7f96225703840e302c44b11f38c3cb1038c4e312b8f962070895c4b1d3e70b1c3e74fbd3ef4fbc3e74b1c3e74b1d3e70f9dff2c73caf9e58e79f79e7def95f7cafa58e95f0b1d2be16387ce95f7cafbe58e95f4b1d2be163a7de7f9f3857d2be963a57c2be95f0afa7ce15f4afa7ce1f7857cff2bef9f3be57dff3ef0b1d2c74afa58e963858e963858e963857c2be1f7a57cfff2be95f0b1c2be1639e57c2c70b1cf3ef4afa58e95f0afa58e9639e7ce163858e963a7de15f4b1cf312012035a04ac34ad1cd31cd3b635a05a0322b47131991992c09a982989a960398c650398c3612b0cb08edcc730730cd34418c1d4660c1d4664c48097cce70e70ce74484c480480c360360c734364c730364b039a65841b265841b2561b0580d92b0d93831d4acea7063a19d0ea707cc99d4ea63948958e0c703831c39bcc723931c244c703832994cb05232994cb052ff2c14cca6c3f2b29160ea56742b3a19d0ea6753a159d0acea56752c1d4cea7533a9d0cea74fff2b5015a80ad41e5850f9a8541ffe5850959d4b074f2c1d4ce8752b3a99d0e8570633a9d0ace8583a959d7cce874f2b3a99d4ebe56ea6e8ea56ebe56e86e8e86e8e86eaea6eae9e587537474375752b7537575374742b742b74f375752c3a1babaf9baba95ba961d0dd1d0add4add7cb0e856e858752b742c3afff9ba3a1ba3a79baba9ba3a161d4add0e8280b1427434258a02ba02ba1f2c501d050796280b14058a03a1a12c50796284ae80e8687fcae83cb14058a0f2ba1fff2c5095d016287cae87fcb1405741e74343fe74143e5741e74141fe58a1ffff2c5095d0f96283cb143fe574258a1f2c28206c48311e6abd8c1e65f197c667f137c67e36a8226d65a82263f197c661f11fc667b99ee662899ee64d41099aaea089b5966ab98fc63f11a7c63f118fc4fffbd2c4f003f3f1a2e20f7375467ab55881ff5a685f198d3834e18d3ad6618d3ad6518d3a6ab99aae34e959aae66aba820634e1aac57aac58d57369cd56cca34e4b0d3856d386d3ad39fc2c34e1b07b07997cb07197c3071c91307997c17c160be0b05f2565f26a26a26585122c28915a89f95a896bfcd44d44cc90890cac90cc90c90cd294908b04865648456484648448656486582423242242324224333e33e233e33e32b3e32c1f119f11f1160f8cacf88cf8cf88cf88f8cacf8cb07c667c67c467c67c6583e3037c4f8c18f8a06f89f1031f101be27c6117c7063e2845f1418f8a06f89f101be37c4117c60744a890328960ca2411a240744a89046898328981d12a240744e8904689c0e89d1284689708d1308d1283289e0ca27c0e89d12c2344f8328984689032897f81be27c40c7c406f89f1845f1845f17063e308be3063e3037c6f8c18f8822f8818f8822f8818f8f063e3831f101be37c60c7c406f8df1611d3bff8474eefffff7fc23a77fff42af314d42032684ee3268340355666c332966d3328556332832830fb43e2c21f1a1f9081908a1f1a771a019341a01a7705d99348c898c80c819341341a1015b98a68a698a615b9ac515b190887d187d07d987d108190819479595b995b8a698a68a61595b15aecad746bb5d95aecd76ba2b5d9ae976585d1ae974579035d2e8d74bb35daecd74bb344220d112f344220b088344a20b088344220e5e89344a20d12893e2e22c311f1b11f1311b13195b196388f8b88d8d8cad8cd8d8cd8988e2624e2620e2624e2220b113e5710711127131271113e58893898838988388883888938989f2b88ff388882b89389882b89388882b8938889389882c449c4c415dd7962ebceeeecb17477776775747757658bb2bba2c5d1dddd15dd962efcb1745777e577458ba2c5d9ddddf9dd5d95dd95dd162e8eeae8b176577458bafff2bba2bbb3bbbb2c5d9dd5d795dd1dd5d1dd5df95dd162e8eeaebfcb17458ba2bba2bba3babb3baba2bbb2bbb3babb2c5d15dd962e8b17658baf2c5d15dd7962efffceeeebcc3e21f88ccb92b88d23a48e8c85e162ca10bc31838f4ed9a4ca17c9924617c987c67f119fc43f1187c63f11613e231f8cbe2309087042b259cc7050908cfe21f8cac7e230f883e332f88be230f8cbfffbd2c4e803f01956de0f73748691b259c1fedab8e231f887e32c07c6503e3987c63f1187c41f1987c41f1187c61f19587c7e7f17c657f19fc5f179fc7f115fc458f8bcafe22bf8bfcb1f11c852195c865890cb1211c872116242390a43390a42f390e432b90fcae42390e42f390a43390e42390a42f2c4865890ce43908b0dc961b836e1b836e5b92c370586e4db96e0adb936e5b92c37256dc1b72dc9b70dc161b836e5b836e5b82b6e0b0dc1b72dc161b92c372586e0db86e7cb0dc95b7056dc961b92c3726dcb70586e7cb121962422b90cae422b90cae43390e43390a432b90cb121f9c8521f9c87219c8521f95c86721487e572116243390a42f2c4865721ff95c8458908e4390bfcae43390a43390a432b90cb1211c872116242390a432c485e72148658908e4390c1890e0c48508a4284521c1890a0c484114840c484069092181a4348508a4383121422908189082290a0c4850624308af808af8ffe0c5f1fff8457c0457c5500002f317f4b633b769735a12c23ffd655317f7f1331bb28365417f312125f325e619317f98c331a17e317e31b3b294b62c18d19611611a5616199db0e698bf8bf9a5b8bf1a5b25b998d98d18bf0bf998da5b18bf18d98bf25b198d98d98bf18d1a5b18d958bf95a5b9afcbf9afcbf79617f2b5fcf1a5f8d7f5f8d7e5fcb0bf95afe6bfafe56bf1afebf1631b2b480b0901625f2c24269024072fa40690242690a42690a40690a406902406904bc58483cd2097cad202b483cd20484ad203481212b480d20484ad21f397920f2b487cb0909a429015a4256901a42901cbc901a429095b9be66c1b066c9b2566c19b0e6960d82b364cd9360dcd360cd8360b06c159b058364cd9363cb06cc237ec197ee11bf60cbf046fde11bf60cbf846401190846400c9081c86420c90046420721900464007219081c86400c9003243039048607219060720900464306484192106480237e832ff065fe11bf40efd7e08dfc0eff7f08dfc197f81dfefc0cbf81dfafc11bf40efd7f065fb065fc197fffffabfffff065f90403cc4102950c62707e0d6dd07e4c83d1044ce8107e0cc6a2954c6271898cc6a1044c41120f4c6541950c7f00c68c411189cc62620f4cc6b20f0d2ddfc4d9505f8cc68c68ad044c7e2950e0f47e4e0f20f0b0c4fffbd2c4ec813099a4d64f76b556e6315a95ff71bac56c4e56c4e63f23f25682068223f263f28226c4c3f2581f8341141131f91f92c0fc16189cc7e1040ac7e0ac7e4c7e07e0c7e07e7cb0821e563f0563f062422426240240624224256240581202b12131201212c090960480c480480ac484c484978c480484ac480c484978c484487cc480484b02425825ff2b1212bbff9dfefe77fbf95dfcb17e3bfdffcefd7f2c5ffcaefc77ebf1dfafe58909c824258907f9c86425720390c80ae4058901c86425720390480ae4057212b90f95c84e4321f2b90962427209095c80e41202b901c86427209016240720909c864257202b909c82405721390480b1212c480b17e2c5fcefd7f2bbf95dfceff7e2bbf162fe577eff2c5fbcefd7f2c5fcaeffe58bf95dfffcefd7e2c5f8b17e2bbf9c8243e589096241e5890962427209016240720901c864057202b9016243fe589096242721909c8642589095c83ce41212b9015c80e41212c7e3fcaff3fffffffffffe57f9ffffffff2c7e55f314d6f4319169c334141731d5320308946c341734134170ba33211d5332112f2c0b198f18711897990984413d984493d9a0b85d98c80c818c81349a995b1a98a69a98a6962b633ea1133ecfa2c1f467d9f458537cd4d534aeb62b534c894b8c894b8d2e4b8b0441a5c44f9b1b11b1311b13115b11b1f11b1b11b1f19b1711a2d41a2a279d42295a21a2a296110ea510ea510d1510d8d8cb0c4586336263363632c311b1319b13115b11618cd898bcae20ae27ffcae23fce2223ce2224b111e71311e577658baff2c5d95dd962ecb17458ba2c5d95ddf962e8aee8b17458bb363622b63362632b63362632b63362622b632b622c311b1b11b1b11f1b115b11b1b195b179b13196188b0c66c6c67131058892c44795c495c41c4c495c49c44496224ae23fce2623cb11258882b892b89ff2b88fff2c441c4441c4c416224e2624b112571057107131271311ffe5712571258883888938989f2b892b89ff38889389892c449c4c4f96119a39a1cdee361e4a6d3914c8ff336348ff31534d6c2b563cc6191d5cc4db0978ca5507e4d09920f0c8022ae4cd6c1534c2980a60cdef1ba0c3660d98c3671ba4de31e28aaf187e68f1a6f1af1a54a6d33663672b6e936e836734714712b8ff38fffbd2c4e483ecd556e20f776ec706aad981ff75f8ff47038ff4712c47f1594c194caa6194c94c994c14c194caa6194c94c15a08958fc18fc0fc1a080fc9b132089a08a081a088fc158fc98fc8fc98fc8fc98fc0fcf98fc8fc9607e4c7e07e4b03f0563f2581f934101f831f91f92b41031f841031f91f82c0fc1607e4c7e5044c7e47e4ac7e0ac7e0d0407e4c7e47e4d0447e7cd0447e0c7e07e0ac7e0c7e07e0c7e47e4b03f2563f263f23f063f03f0581f9ff2c3f2587e0adf82b7e7cdf97e0b0fc1bf0fc1bf0fc9bf2fc795bf056fc961f837e1f937e1f9f2c53258a64e99a67ce99a64ae992c53274c53258a64e99a64e99a60b14c1d314c95d3274c53074c53074cd32574c95d3274cd3258d9bcb1b3963672bd9fcaf662c6cc7b36ce7b3ece57b3ff9ecdb316367f2c6cc57b3795ecc58d98b1b315ece57b315ecc57b395ecc58d9cb1b3963672c6cc58d98b1b31ecfb3ff95ece58d98af66ff3d9f663d9b662c6ce58d9bcb1b395ecc58d9caf66f2bd995f31a74d5738745265324902f836f8cfe233f8d3e33674ca43367494a23248c2f930be02f831f893e334f8c7e232488c392a0c1c661c124657ee67484a267485ee46a25ee47ee4a2457484748548656fc667c6fc456fc4587e23512a422c5211a89d211a892899a89a8919f1bf1943e2f99f19f1160f88acf88df8df8fcb07c66fc47c7e583e22c1f1f9a52121192125219219219a5225299219211921a52f9a521219a521211a52121997c97c960be4cbe5838cbe0be4acbe4acbe0cbe4be4acbe0cbe4be0b05f265f05f3e577c1df17c1df37c15df1e77cdf058be7cef9be4ef9be4ef9be4b17c962f92c5f2577c95df058be4ef8be4b17c1df17c79df37c962f83be6f83be2f82bbe4b17c795df0577c962f8f2c7c47f17c7e58f8bcb1f115fc7e58f8bcafe22c7c47f1fc7fe7f1fc657f1f963e33f8be33f8fe22bf8cafe32bf8ffcfe2f88afe22bf8bcfe3f88fe3f8cfe2f88afe32bf8bcb1f1163e32bf88b1f17963e2fff3f8fe32bf8cb1f11fc7f1963e3ff2c7c5e7f17c5fffffe7f1fc7fe7f17c657f1f963e3ff2bf8cb1f179a08f40992f5881a6d30c9b137401a08a089545f8b131a56ca8731afe2696ecaa73182fe68234aa63f10787078c4e74a83f0563f063f0c4e70798d674a8820fffbd2c4e783f1f556c80ffbadc667b3da41ee572078d43f06822820682082056c4fe682082063f23f0584112c0fc158fcf98bf0bf18bf8bf198d8bf960c68acc6cac5fffcd0447e4c7e07e3fcc7e5044b03f27f8fc163f057f93fc7e7cb1f92bfcff9fe3f27f9fc9fe7f257f82c7e4b1f83fc7e0aff3ffe58fc1fe3f2577f2c5f8eff7f2c5f8efd7e3bf5f8eff7f3bfdffcb17f2c5fceff7f3bf5fbcff1f82bfc1fe7f258fc1fe3f058fc9fe7f07f8fc79fe3f3e7f8fc15fe0b1f92c7e3ffcb17f3bf5fcefd7e3bfdfceff7eff3bfdfceff7ef2c5f8efd7f3bf5f8aefc58bf162fc77ebf95dfcaefc58bf60cfc047f207f8fc833f1067e211fcc0ff3f9c23f9067e611fc033f011fcc19f808fe60cfc033f108fe419f9c0ff1f9847f007f8fc847f011fcc19f803fcfe419f8c0ff3f9c19f8067e60cfc047f303fcfe703fc7e607f8fc423f808fe3847f00cfc033f211fc047f007f9fc847f381fe3f3833f00cfc833f3c23f9833f103fcfe40ff1f85f34b617e36544b7317e7f1378c69630d95a03b2898d331b7f02b39c325e619325e121375712131cd3b732c20d931cc697315c0a02c16b990d8ae198da5b98bf25b998db2a18bf18d9a43ce9a432f9a40901a412f9f39ce9f3b2f9f392f1a42901612034839d2c24269024072fcbc690242690a406d96c9b65b26d86c95b60db0d836c360db2d92c360f98d82be695b60b1cd36cb63cb0d936cb64b0d82b6c1a814056a1350283cebaa12b5015d73cad426a0509a814275cae1624057212c483fcb1212c483cb121fff2c483cd42a0350a80d415d350a80d42a0350570b0a0f3ae574ad4258509a85426a15015a84d42a0350574b0a02c364db2d836c364db0d936c360db0d82b6c1b61b06d96c961b3e6d96c1b65b06d86cf95b64db0d836c360b0d836cb64adb258e6961b1e586c95b64db2d92b6c15b64adb26d86c961b26d96c95b64b0d92b6c961b06d86c795b60b0d92b6c961b2586c9b65b1e589016241e5720390480b1202c484e4120390c83cb120390c84b120390c80e43212c480b1202c484e43212b909c864057212c484b1212c483ce4321000fe62a690046401957256d7c1a044401990048111a046401158532620814aa56208987383ab184bc3ab986343f81931a32a9863432a98c4e41e9907fffbd2c4ea03b2f156da0f7790863b335a4dff5618a2081882220898a9a14c9900655c985328111853214cf9c014019aa694c994c94c194c14c994c14c1aa62a6194c94c960a64c7e47e4ac7e3fcd0447e4b08225825e325e121312025f2b121325f25f2c090960978c4844860cfc847f211fc01fe3f011fc81fe7f20cfc01fe7f00cfc047f20cfc01fe7f00cfc833f20cfc847f103fc7e60cfc047f207219001c86420721900324108c800e432108c84192006480232103904840e4121833f011fc01fe7f103fc7e3e0cfc033f007f9fc047f011fc01fe7f007f8fc419f908fe308fe211fc047f00cfc847f207f9fc847f20cfcc0ff3f8067e7067e023f808fe40ff1f9067e211fc033f011fc833f3833f303fcfe3067e00ff3f908fe019f9833f20cfcc23f903fc7e019f808fe023f8e07f8fc40ff3f8833f1067e423f9847f207f8fcc19f9847f207f8fc033f211fc847f00cfc033f1a99d67fa933ccc957f313fea3d51f6a55f31a7069c3183d26534990c3934f8d3e236f88fe235f8a7e232f88fe331ce038c31588cb934a59673bc724235635633739738338f90f34a470437054a5324324237e3be32b7e333e2be337e27e32b3e333e23e333e33e233e37e22c2899a895211a89d21f0b0a2456484648648456484648694a648648456484582422c1211921a52159211592199219211592119211211fc5f17f95fc457f195fc5fe7f1fc658f88ef9be0b17c1df37c1df37c1df17c9df17c15df2577c15df277cdf277c5f277cdf3e577c962f93be2f9fff2bbe4ef9be4aef93be2f8ff2bbe0db96e0adb836e5b836e38e36e78d36e1b82b6e4db96e3cdb86e4f8f6e4db96e4db96e4db96e0adb836e1b92b6e0e4390cb12115c84721c84572179c87211c852195c84721486721c86721486572195c865890cb12179c87219c87219c872115c8477c5f0577c15df2577c95df077cdf0577c95df258be7cef8be4ef8be7ffcaef83be2f9f3be6f82bbe4b17c962f82c5f1e577c15c867214845890bfce4290fce43908e4390ce4390cb1219c85219c85219c872116242390a43390a42f2b90bfcb121ff95c87e721487e62898a2462891ee462890a26541f88c3e27f88c5121444f3c2144ccf4f0be4c2f93d3ccf72674cc5133dccd57a4990b061c985f217c9ff1fffbd2c4ee03f47d56cc0ffba9c6beb5d901ff59b0bf19df11f11bf1df19c9117c94922997c97c1c91b07645144c74874847ee6a25c3a4251335125133a4251335135132c5f19bf1bf19bf11f199f11f11bf19f199f19f195b07997c17c997c97c9b07307960be0cbe0be0cbe4be0b05f3e67c47c467c47c6567c667c47c4583e22b3e32b3e22b3e333e33e28457cc22be40d7caf98457c01af85f211c1e115f0b062f903c1ebe018be418be00d7c2f8062f9035f2be018be40d7c2f908af908af8062f9062f881af85f0115f006be57c8317c01af85f2115f2115f20783d7c0317c0457c0317c8457cc198380d7caf9035f0be606be17c40df13e3063e2037c6f8f08be2c0df13e3037c6f8a0c7c406f89f1031f16117c5037c4f8818f8c0e89d12c2344819448194482344a11a260ca2411a260744a894234482344e11a240744a89f06512c1944e117c606f8df1845f1845f140df13e3063e2f063e308be3063e3037c4f8f063e2063e3063e2063e308be2831f1031f142344aaf83289ff06512846897fffff08d130651354c414d45332e313030555555f2c113a6ce9be046f81a9467a1d687668aaa2a87e79a2a86d07341e6491924469329244513e39afc65f199484f8199ee6a5118a262899a94428999ee628918a262891be062891a94452118a2452199486a51191388aa1913844e9a2aa44e9913844e9a2aa44e1a2a844e9913a44e9511542b2270a1f14aef8cacf88a1f17cb0fc4585122b5123a43a43f2b513f35125132c28981d13a240744a8904e8981d12a25c0e89d1308d1203a2744c2344c1944819448194480e89d1275c2344b03a2744c0e89d1208d120651284689e0ca2703a2544c1944a0744e89c1944c1944e11a240ca2411a260ca260744e894194482344a0ca2708d120651208d1206513df03a2544e0ca260ca2613a2508d1203a2544982344fc23449ffc19a770669ce11d3b08e9c08e9c08e9c8474ef68334e230669cf8334ee11d3bedfe0cd39ff84b4e0474e3c19a737fc19a774fb7ffd1a8ac5ca3172d7853ebdc5cb2b5e0cd19b4668a2f083bc90bb3285d90ca6d29b0d1730d98e3545e10d7855e08c47023f8db3711c4a11fc32ec8bb23466cbb234668bb23172978328bc20ad7853466d19d32eccbb334674bb22c233450bb2fffbd2c4d583e9c98ec40ffad44632b35881ff5a9879a3345d915a336562e5128b9671fc8e068e28e068e08e068e31fc568e271fe8e25836733666e82c1b3959b3159b3159b39b749b3160d9cacd9ccd9cd9fcb06cc566cc566cc66cc6cffe566ce566cc566cc66ce6ce5836633666e93366367336736636e83662b36636e86e82c1b3960d98231c4231c4231c0191c4191c4231c0191c4191c0231c58191c20c8e2118e20c8e00c8e1038e11c0231c4231c4231c40e38471c191c6071c638846388463840e38c70038e31c00e38c70038e11c0231c40e3847108c71c0e3847181c718e00c8e2e0c8e2118e00c8e18323881c708e0118e211b940cb97f03b9572c2372af065ca81dcab97f832e5f03b9572c0ee5dca08dca03b9772c2372f81dcbb9411b940cb97fc1972e11b940cb94e11b940cb95ededde0cb956846e5fff09dcae12b960000001fcc2994b64d58f35b0cd6f1530d2d835b0d0220a60c31b2ca4c17e05f8c4b605fcb00bf18c303ab18eac30c98822208960c6b31040a55319544b630c6831b3195031b3200c29831534ab830a648022a0532581534c2990a60ac54c2c0532562a69602982c0a98614c05305640116031b305fc4b72b0c68b018d16031b305fc17ff2b7e3cadf92c3f0587e0df87e4df87e4f1b5fcb0bf1afcbf79617eff2c2fe6bfafc56bf95a42690a4072fa4272fa40690242690a42690242690240572f9a40901a409015a42690a40690a40690cbe690a4269024256901a40901a40909a42909a412f1a41ce9a42909a4090961202c5f8aefc77ebff9dfafde577ff3bf5f8efd7e2c5fbcefd7f2c5f8b17ef2bbf15df8efd7f3bf5fbcb17e2c5f8eff7f3bfdfcaefe77fbf162fc77fbf1dfefc58bf795dfcaefe77ebf1dfafe77fbf9dfefc58fc1fe7f057f93fcfe4b1f82c7e4aff1fe58fc95fe0aff258fcf9fe3f258fcff95fe0aff1e58fc95fe0b1f92bfc1fe3f257f83fc7e0ff1f8f2bfc9fe7f3e58fc9fe7f257f82c7e3cff3f92c7e4b1f83fcfe7cb1f8f2c7e0ff3f82bfc9fe7f257f9ffffcbf79dde6bf76bb87ef58ffffef3cf9bfdd65909587c663f127c65455e4d2641838c9224994c9221830c66c0ca4c0fa0ca4cae20e34c5632438cbc71290cbc638a4ad2642c05f0617c8c1c787124465f2c1fe7485485d3f72fffbd2c4ff83b74592d26ff796ce783199c1ff75a8a433f73512314c4212c15b9a1095b195b15b960be4cbe0be4cbe5838d838be4d838be0c6e4e30ce386e4d58ce38b071e563706370372582422c252960908c90d297cac90cc908908ac90cadb936e1b936e38c36e1b82c37056dc1b71c61b72dc9b70dc9b70dc162f9f2bbe4ef9be7caef92c5f3e577c15df058be0aef8390a422b908ae422b90cb12196242f2c4845890fce43908e4390ce4290ce43908db86e0db96e4db86e4b0dc9b72dc161b936e5b836e5b936e5b936e1b92c370586e0b0dc1b72dc95b7256dc1b70dc1b72dc9b72dc1b70dc95b7056dc9b70dcff9b72dcf9b70dc9b72dc15b70586e0b0dc1b70dc95b726dcb71e586e4b0dc7fffffffff95fc658f8fffffffcafe2ffffff390a43390e42f2b90ce43908b12195c86721c86721c85e5721796243f2c4845890cae422b908e4390ce4290cae422b908e4390cb1217fffff962f92c5f3fffffffffe58be7ffffffffcb17cd5f2c0a266f813e066289b3a462529c5265e39c50512651a4ca61c96096631294bc632f1cbc731294bc630e30ae532b8c90f3158c38f32438ae33158c1b82b0e34a8491985f04929924630798c1e3079978c71498948121184847141589486289948665210a2462898a26581448aca432c0a2462890a2456289958a27e58144cb1f17ff963e23f8fe3f2c7c5e6dc3726dcb726dc370586e4db86e4db96e4b1c79b70dc9b72dc1b72dc1b72dc9b70dc1b72dc9b72dcf9b72dcf9b72dc95b70586e0db96e0b121162432b908b12115c865890cae43fff2c486572195c85e6dcb706dcb706dcb726dc37256dc15b7256dc9b70dc161b92c372586e4adb8ff36e1b936e5b8ff390a422b908ae422b908ae432b908e4390ce42908e4290ffcb1211c8521962422c484721486721c86572196242ff2bbe3cb17c15df058be4aef82bbe4b17c95df258be0b17c9df17c79df37c95df277cdf258be3fcef8be3caef82bbe7ce4390ce42908ae42390e43ff2c48457211c8721962432c485e721c845890bce43908e42908ae43f2b90cae422b908ae43f390e432b90cb121e11a244c8532310ce157e3496d8d93103fcc48c61f831931cad5270ae8192a1276cb51950b27064a9958b034403a095cd245b3b7114c8a46353c2ce1fffbd2c4ea83f37d5cce0ff6d7c60934de41cd6691444353298d52a832342b64c8a324908d5644353aa8444a1cf46b3f9a6506a968b563fea8af41bb1a648798f1e63c898c266f07155e133b3428486c913c33670cf9a295866cf19e39485681a081a081a1e129c677e57e1a07cacd338ad120ecd23499f1de8cc44d0f8ce46e19e819c990a0fe52909c5101a089f871a3e54287b64d19551340e34117fed19e91222672049f133f1b24748b928d4a8f709b9371d2478a3a26e891e375d22fc75f375b28f33ce909bd76cecbc9301f81dc82ceab0a9713b93676594f58edb49da3bef3c2f3bb03b6b1cbdf772e8cf0b4730257481e26ecdc70de789b62ab46d344ae916a6e3981b8f916a586c6b29d8d916c6f3a6eb84df9bed5b98379ee61f52c72bd3d3dc87e821ca177e00791c393b87227f2cd69c7ddc7a067703cc3b0ee47dafcbe61fbad63ee01800661f807c0111c7079e00600181e7819600647aa47e30c10cc641634bbb8df69a30a24cd04093289c8cae19347bb8e0aea368b28d8ea232684cca8573291ccd40a33350ecc624a30995cd890738837cd083103010c969c366b18d326230e03d1b0c1a1c317908ca25031f8502c0b2c898684248150e4120d48b4e061269366e3a6e4269a868803069b4e9c149d4e930374461238afa008c638402091a80889ac8840afd213404097154d5215a622b3ded69d6804b9a641a640282a5500d598d64c98100a470c870a802590fcd274de84d350cb014ba7df57e00281aa52ce5e2c55733dceccb1da81986f825237da3552354c4d752de4b60161a862611a68063251aa618a71c381bcaa78ad160060880a19d761ac460168cb38280a22ba4826407294a76971400b370db81204d8111b8f344f102a8e2e36a8dae0369545055d5692f2ca619932e67782e235a17eb5aa3a58661da90d3b4ca588b5d4e50214d093204b8ac74401342cd035225f635d0f3639a0ba51c4e648a6f9554c0b385ced7393cb8cf34a6970a6b5ba5a6ed5a5a5d534bad56954bad5594cb6f5694cb795a354dda58cd3674b19b3a954bad56954bad5594cb7095592028b51774bdc5f541a2a0287884f4281658d330cc64c37028f90c0237c00d19e686807c2e76e46b7a60fc415882830e5341837c7077c6a1e61ac1664858156418b18fffbd2c4f28234520cec0e67178619bf8c199c3fa82898c416f157c0b2aa1a08eb2a42498c798ab00190bb440d8a34055cca2823337443517315c0a3e43008df023463a6680c44a04145d541a56555050f50c51751550e50d5165655505575344d90148c4b04b844f2580cbc28c30941d0128808c0c28a9890e38611942802e5abb7325d56e5d9a765618b8414088443052520e8c4002e3913005532a0c5b0af083a29c02e4d0e01ac3546c3805c20892c065e166015260121a3178ad6bb7265da54a5c10a804031921214708210972048e1862c885c42852520e8c4422dda0115e3427f6028360882dea6429528dc91a8ec94a92891e98050305180050a985124a81d488085970e60634c20061c54c4871c3084a5a82dfa5123ea732c0a8f2db5805575e0d11b0ae972bcbb522ad2a5c49513d288a9280bb96c32d04749fc894c24d10a7523635c282d52c08ee9955ca55d2fae14ec0c70e94c414d45332e3130305555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555";
774
- var Uc = Object.defineProperty, Zc = Object.getOwnPropertyDescriptor, A = (c, e, a, t) => {
775
- for (var f = t > 1 ? void 0 : t ? Zc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
776
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
774
+ var Uc = Object.defineProperty, Zc = Object.getOwnPropertyDescriptor, I = (c, e, a, t) => {
775
+ for (var f = t > 1 ? void 0 : t ? Zc(e, a) : e, o = c.length - 1, r; o >= 0; o--)
776
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
777
777
  return t && f && Uc(e, a, f), f;
778
778
  };
779
- const y = me.noConflict();
780
- y.setLevel("info");
779
+ const g = me.noConflict();
780
+ g.setLevel("info");
781
781
  const E = "cb_";
782
782
  class j extends fe {
783
783
  constructor() {
784
- super(...arguments), this.actionIdCounter = 0, this.wsClient = null, this.replyMessage = null;
784
+ super(...arguments), this.actionIdCounter = 0, this.wsClient = null, this.replyMessage = null, this.streamingResponseInProgress = !1, this.streamingResponseBuffer = null, this.streamingResponseTagStartPos = 0;
785
785
  }
786
786
  // this is called at startup
787
787
  setSetting(e) {
788
- y.info("appState: Startup: setSetting", e), this.setting = e, this.initBot().catch((a) => {
789
- y.info(`Exception during bot initialization: ${a.message}`);
788
+ g.info("appState: Startup: setSetting", e), this.setting = e, this.initBot().catch((a) => {
789
+ g.info(`Exception during bot initialization: ${a.message}`);
790
790
  });
791
791
  }
792
792
  // set language
@@ -800,7 +800,7 @@ class j extends fe {
800
800
  async initBot() {
801
801
  if (!this.botSettingsInitialized) {
802
802
  const a = `${this.setting.url.startsWith("localhost") ? "http" : "https"}://${this.setting.url}/api/bot/settings/${this.setting.orgId}/${this.setting.botId}`;
803
- y.info(`Getting bot settings at ${a} ...`);
803
+ g.info(`Getting bot settings at ${a} ...`);
804
804
  let t = null, f = null;
805
805
  try {
806
806
  t = await fetch(a, {
@@ -808,20 +808,20 @@ class j extends fe {
808
808
  "Access-Control-Allow-Origin": "null",
809
809
  "X-Enegel-Signature": this.setting.botId
810
810
  }
811
- }), !t.ok || t.status !== 200 ? y.error(`Failed to get bot ${this.setting.botId} settings: ${t.status} ${t.statusText}`) : f = await t.json();
811
+ }), !t.ok || t.status !== 200 ? g.error(`Failed to get bot ${this.setting.botId} settings: ${t.status} ${t.statusText}`) : f = await t.json();
812
812
  } catch (o) {
813
- y.error(`Failed to get bot ${this.setting.botId} settings: ${o.message}`), f = null;
813
+ g.error(`Failed to get bot ${this.setting.botId} settings: ${o.message}`), f = null;
814
814
  }
815
815
  if (this.botSettingsInitialized = !0, this.botSettings = f, !f) {
816
- y.error("No bot settings available - bot disabled"), this.disabled = !0;
816
+ g.error("No bot settings available - bot disabled"), this.disabled = !0;
817
817
  return;
818
818
  }
819
- y.info("Got bot settings - bot is enabled", f), this.disabled = !1, this.setting.welcomeMessage = (f == null ? void 0 : f.welcomeMessage) || "How can I help ?", this.setting.engageMessage = (f == null ? void 0 : f.engageMessage) || "How can I help ?", this.setting.engageTimeout = (f == null ? void 0 : f.engageTimeout) || 5, this.initConversation(), setTimeout(() => {
819
+ g.info("Got bot settings - bot is enabled", f), this.disabled = !1, this.setting.welcomeMessage = (f == null ? void 0 : f.welcomeMessage) || "How can I help ?", this.setting.engageMessage = (f == null ? void 0 : f.engageMessage) || "How can I help ?", this.setting.engageTimeout = (f == null ? void 0 : f.engageTimeout) || 5, this.setting.splitMessagesAtBreak = "splitMessagesAtBreak" in f ? f.splitMessagesAtBreak : !1, this.initConversation(), setTimeout(() => {
820
820
  this.showEngagePopup();
821
821
  }, this.setting.engageTimeout * 1e3);
822
822
  }
823
- this.connectWs === "true" && (y.info("appState: connectWs is true"), this.getWsClient().catch((e) => {
824
- y.error(`Exception during ws client startup: ${e.message}`);
823
+ this.connectWs === "true" && (g.info("appState: connectWs is true"), this.getWsClient().catch((e) => {
824
+ g.error(`Exception during ws client startup: ${e.message}`);
825
825
  }));
826
826
  }
827
827
  initConversation() {
@@ -842,42 +842,48 @@ class j extends fe {
842
842
  }), this.initStartupForm();
843
843
  }
844
844
  initStartupForm() {
845
- const e = _e(null, ["startupForm"], this.botSettings), a = _e(null, ["startupForm", "name"], this.botSettings);
846
- if (!e || !a) {
847
- y.info("Startup form not present");
845
+ const e = _e(null, ["startupForm"], this.botSettings);
846
+ if (!e || !(e != null && e.name)) {
847
+ g.info("Startup form not present");
848
848
  return;
849
849
  }
850
- const t = _e(null, ["startupForm", "fields"], this.botSettings);
851
- if (!Array.isArray(t) || t.length <= 0) {
852
- y.info("Startup form has no fields");
850
+ this.initForm(e);
851
+ }
852
+ initForm(e = null) {
853
+ const a = e, t = _e(null, ["name"], e);
854
+ if (!a || !t)
855
+ return;
856
+ const f = _e(null, ["fields"], e);
857
+ if (!Array.isArray(f) || f.length <= 0) {
858
+ g.info("form has no fields", e);
853
859
  return;
854
860
  }
855
- const f = `${E}${this.setting.botId}.${this.conversationId}.form.${a}`, o = localStorage.getItem(f);
856
- if (o) {
857
- let d = null;
861
+ const o = `${E}${this.setting.botId}.${this.conversationId}.form.${t}`, r = localStorage.getItem(o);
862
+ if (r) {
863
+ let s = null;
858
864
  try {
859
- d = JSON.parse(o);
860
- } catch (n) {
861
- y.error(`Failed to parse stored form data: ${n.message}`), d = null;
865
+ s = JSON.parse(r);
866
+ } catch (h) {
867
+ g.error(`Failed to parse stored form data: ${h.message}`), s = null;
862
868
  }
863
- if (d) {
864
- this.sendFormData(a, d).catch((n) => {
865
- y.error(`Error when submitting form: ${n.message}`);
869
+ if (s) {
870
+ this.sendFormData(t, s).catch((h) => {
871
+ g.error(`Error when submitting form: ${h.message}`);
866
872
  });
867
873
  return;
868
874
  }
869
875
  }
870
- this.form = e;
876
+ this.form = a;
871
877
  }
872
878
  showEngagePopup() {
873
879
  if (this.open)
874
880
  return;
875
- y.info("Engaging User !"), this.engage = !0;
881
+ g.info("Engaging User !"), this.engage = !0;
876
882
  const e = (o) => {
877
- const d = new Uint8Array(o.length / 2);
878
- for (let n = 0; n < d.length; n++)
879
- d[n] = parseInt(o.substr(n * 2, 2), 16);
880
- return d;
883
+ const r = new Uint8Array(o.length / 2);
884
+ for (let s = 0; s < r.length; s++)
885
+ r[s] = parseInt(o.substr(s * 2, 2), 16);
886
+ return r;
881
887
  };
882
888
  let a = new Blob([e(qc)], { type: "application/octet-stream" });
883
889
  const t = URL.createObjectURL(a);
@@ -890,7 +896,7 @@ class j extends fe {
890
896
  if (this.wsClient)
891
897
  return this.wsClient;
892
898
  const a = `${this.setting.url.startsWith("localhost") ? "ws" : "wss"}://${this.setting.url}/api/bot/connect/${this.setting.orgId}/${this.setting.botId}/${this.conversationId}`;
893
- return y.info(`Initiating ws connection to ${a} ...`), this.wsClient = new Ic({
899
+ return g.info(`Initiating ws connection to ${a} ...`), this.wsClient = new Ac({
894
900
  url: a,
895
901
  orgId: this.setting.orgId,
896
902
  botId: this.setting.botId,
@@ -900,26 +906,27 @@ class j extends fe {
900
906
  }, this.wsClient;
901
907
  }
902
908
  handleWscMessage(e) {
909
+ var a;
903
910
  switch (this.lastConversationUpdate = Date.now(), e == null ? void 0 : e.type) {
904
911
  case "message": {
905
912
  if (this.replyMessage)
906
- this.replyMessage.data.text = e.text, this.updateMessage(this.replyMessage, ""), this.replyMessage = null;
913
+ this.streamingResponseInProgress ? (this.finishStreamingResponse(e.text), this.streamingResponseInProgress = !1) : (this.replyMessage.data.text = e.text, this.updateMessage(this.replyMessage, "")), this.replyMessage = null;
907
914
  else {
908
- const a = {
915
+ const t = {
909
916
  type: "text",
910
917
  author: "assistant",
911
918
  data: {
912
919
  text: e.text
913
920
  }
914
921
  };
915
- "userName" in e && (a.data.userName = e.userName, this.connectWs = "true"), "userAvatar" in e && (a.data.userAvatar = e.userAvatar, this.connectWs = "true");
916
- const t = this.formatMessage(a);
917
- this.messages = this.messages.concat([t]);
922
+ "userName" in e && (t.data.userName = e.userName, this.connectWs = "true"), "userAvatar" in e && (t.data.userAvatar = e.userAvatar, this.connectWs = "true");
923
+ const f = this.formatMessage(t);
924
+ this.messages = this.messages.concat([f]);
918
925
  }
919
926
  break;
920
927
  }
921
928
  case "message-chunk": {
922
- this.replyMessage && (this.replyMessage = this.updateMessage(this.replyMessage, e.text));
929
+ e.text && this.processStreamingResponse(e.text);
923
930
  break;
924
931
  }
925
932
  case "typing": {
@@ -933,12 +940,56 @@ class j extends fe {
933
940
  }, this.addMessage(this.replyMessage);
934
941
  break;
935
942
  }
943
+ case "form": {
944
+ if (g.info("Got form:", e), this.replyMessage && this.replyMessage.id) {
945
+ const t = ((a = this.replyMessage.data) == null ? void 0 : a.text) || "";
946
+ (this.replyMessage.isThinking || t.trim() === "") && (this.removeMessage(this.replyMessage.id), this.replyMessage = null);
947
+ }
948
+ this.initForm(e.form);
949
+ break;
950
+ }
936
951
  case "actions": {
937
952
  this.addActions((e == null ? void 0 : e.actions) || []);
938
953
  break;
939
954
  }
940
955
  }
941
956
  }
957
+ processStreamingResponse(e) {
958
+ this.streamingResponseInProgress = !0;
959
+ let a = e;
960
+ if (this.replyMessage) {
961
+ if (e.indexOf("<") !== -1) {
962
+ this.streamingResponseBuffer = e, this.streamingResponseTagStartPos = e.indexOf("<");
963
+ return;
964
+ }
965
+ if (this.streamingResponseBuffer) {
966
+ if (this.streamingResponseBuffer += e, this.streamingResponseBuffer.length < this.streamingResponseTagStartPos + 4)
967
+ return;
968
+ const t = this.streamingResponseBuffer.indexOf("<br>");
969
+ if (t !== -1) {
970
+ if (this.setting.splitMessagesAtBreak) {
971
+ const f = this.streamingResponseBuffer.substring(0, t).trim(), o = this.streamingResponseBuffer.substring(t + 4).trim();
972
+ g.info(`BREAK: Splitting the message: ${this.streamingResponseBuffer} >>> prev: ${f} next: ${o}`), this.replyMessage = this.updateMessage(this.replyMessage, f), this.replyMessage = { author: "assistant", type: "text", isThinking: !1, data: { text: "" } }, this.addMessage(this.replyMessage), a = o;
973
+ } else
974
+ a = this.streamingResponseBuffer;
975
+ this.streamingResponseBuffer = null, this.streamingResponseTagStartPos = 0;
976
+ }
977
+ }
978
+ this.replyMessage = this.updateMessage(this.replyMessage, a);
979
+ }
980
+ }
981
+ finishStreamingResponse(e) {
982
+ if (!this.replyMessage || !this.streamingResponseInProgress)
983
+ return;
984
+ this.streamingResponseInProgress = !1;
985
+ const a = e.lastIndexOf("<br>");
986
+ if (!this.setting.splitMessagesAtBreak || a === -1) {
987
+ this.replyMessage.data.text = e, this.updateMessage(this.replyMessage, "");
988
+ return;
989
+ }
990
+ const t = e.substring(a + 4);
991
+ this.replyMessage.data.text = t, this.updateMessage(this.replyMessage, "");
992
+ }
942
993
  addActions(e) {
943
994
  if (Array.isArray(e) && e.length > 0) {
944
995
  const a = e.map((t) => Object.assign(t, { internalId: this.actionIdCounter++ }));
@@ -954,10 +1005,10 @@ class j extends fe {
954
1005
  }
955
1006
  }
956
1007
  async sendMessage(e) {
957
- e = this.formatMessage(e), y.info("Send Message:", e), this.messages = this.messages.concat([e]), this.lastConversationUpdate = Date.now();
1008
+ e = this.formatMessage(e), g.info("Send Message:", e), this.messages = this.messages.concat([e]), this.lastConversationUpdate = Date.now();
958
1009
  const a = await this.getWsClient();
959
1010
  if (!a) {
960
- y.error("Error - failed to obtain ws client"), this.replyMessage = null;
1011
+ g.error("Error - failed to obtain ws client"), this.replyMessage = null;
961
1012
  return;
962
1013
  }
963
1014
  a.sendMessage({
@@ -1000,7 +1051,7 @@ class j extends fe {
1000
1051
  // Submit current form data
1001
1052
  async submitForm(e) {
1002
1053
  if (!this.form) {
1003
- y.info("submitForm: No form is active - ignored");
1054
+ g.info("submitForm: No form is active - ignored");
1004
1055
  return;
1005
1056
  }
1006
1057
  const a = `${E}${this.setting.botId}.${this.conversationId}.form.${this.form.name}`;
@@ -1009,7 +1060,7 @@ class j extends fe {
1009
1060
  async sendFormData(e, a) {
1010
1061
  const t = await this.getWsClient();
1011
1062
  if (!t) {
1012
- y.error("Error - failed to obtain ws client");
1063
+ g.error("Error - failed to obtain ws client");
1013
1064
  return;
1014
1065
  }
1015
1066
  t.sendMessage({
@@ -1019,35 +1070,35 @@ class j extends fe {
1019
1070
  });
1020
1071
  }
1021
1072
  }
1022
- A([
1073
+ I([
1023
1074
  V({ prefix: E }),
1024
1075
  M({ value: "en" })
1025
1076
  ], j.prototype, "language", 2);
1026
- A([
1077
+ I([
1027
1078
  V({ prefix: E }),
1028
1079
  M({ value: "light" })
1029
1080
  ], j.prototype, "theme", 2);
1030
- A([
1081
+ I([
1031
1082
  V({ prefix: E }),
1032
1083
  M({ type: Boolean, value: !1 })
1033
1084
  ], j.prototype, "open", 2);
1034
- A([
1085
+ I([
1035
1086
  V({ prefix: E }),
1036
1087
  M({ value: "false" })
1037
1088
  ], j.prototype, "connectWs", 2);
1038
- A([
1089
+ I([
1039
1090
  V({ prefix: E }),
1040
1091
  M({ value: Ce() })
1041
1092
  ], j.prototype, "conversationId", 2);
1042
- A([
1093
+ I([
1043
1094
  V({ prefix: E }),
1044
1095
  M({ value: 0 })
1045
1096
  ], j.prototype, "lastConversationUpdate", 2);
1046
- A([
1097
+ I([
1047
1098
  V({ prefix: E }),
1048
1099
  M({ type: Array, value: [] })
1049
1100
  ], j.prototype, "messages", 2);
1050
- A([
1101
+ I([
1051
1102
  M({
1052
1103
  type: Array,
1053
1104
  value: []
@@ -1091,22 +1142,22 @@ A([
1091
1142
  ],*/
1092
1143
  })
1093
1144
  ], j.prototype, "actions", 2);
1094
- A([
1145
+ I([
1095
1146
  M({ type: Object, value: null })
1096
1147
  ], j.prototype, "form", 2);
1097
- A([
1148
+ I([
1098
1149
  M({ type: Boolean, value: !1 })
1099
1150
  ], j.prototype, "botSettingsInitialized", 2);
1100
- A([
1151
+ I([
1101
1152
  M({ type: Object, value: null })
1102
1153
  ], j.prototype, "botSettings", 2);
1103
- A([
1154
+ I([
1104
1155
  M({ type: Boolean, value: !0 })
1105
1156
  ], j.prototype, "disabled", 2);
1106
- A([
1157
+ I([
1107
1158
  M({ type: Boolean, value: !1 })
1108
1159
  ], j.prototype, "engage", 2);
1109
- A([
1160
+ I([
1110
1161
  V({ prefix: E }),
1111
1162
  M({
1112
1163
  type: Object,
@@ -1114,11 +1165,12 @@ A([
1114
1165
  orgId: null,
1115
1166
  botId: null,
1116
1167
  url: null,
1117
- welcomeMessage: null
1168
+ welcomeMessage: null,
1169
+ splitMessagesAtBreak: !1
1118
1170
  }
1119
1171
  })
1120
1172
  ], j.prototype, "setting", 2);
1121
- const s = new j(), Nc = x`
1173
+ const n = new j(), Nc = x`
1122
1174
  ${T}
1123
1175
  :host {
1124
1176
  position: relative;
@@ -1172,9 +1224,9 @@ const s = new j(), Nc = x`
1172
1224
  display: inline;
1173
1225
  }
1174
1226
  `;
1175
- var Wc = Object.defineProperty, Jc = Object.getOwnPropertyDescriptor, Kc = (c, e, a, t) => {
1176
- for (var f = t > 1 ? void 0 : t ? Jc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1177
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1227
+ var Wc = Object.defineProperty, Kc = Object.getOwnPropertyDescriptor, Jc = (c, e, a, t) => {
1228
+ for (var f = t > 1 ? void 0 : t ? Kc(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1229
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1178
1230
  return t && f && Wc(e, a, f), f;
1179
1231
  };
1180
1232
  class S extends ge {
@@ -1192,16 +1244,16 @@ class S extends ge {
1192
1244
  return this.dispatchEvent(t), t;
1193
1245
  }
1194
1246
  }
1195
- Kc([
1247
+ Jc([
1196
1248
  b({ type: String })
1197
1249
  ], S.prototype, "lang", 2);
1198
1250
  const be = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8L2.146 2.854Z"/></svg>';
1199
- var Yc = Object.defineProperty, Gc = Object.getOwnPropertyDescriptor, Ye = (c, e, a, t) => {
1200
- for (var f = t > 1 ? void 0 : t ? Gc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1201
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1202
- return t && f && Yc(e, a, f), f;
1251
+ var Gc = Object.defineProperty, Yc = Object.getOwnPropertyDescriptor, Ge = (c, e, a, t) => {
1252
+ for (var f = t > 1 ? void 0 : t ? Yc(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1253
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1254
+ return t && f && Gc(e, a, f), f;
1203
1255
  };
1204
- let ne = class extends S {
1256
+ let se = class extends S {
1205
1257
  constructor() {
1206
1258
  super(...arguments), this.title = "ChatBot";
1207
1259
  }
@@ -1211,10 +1263,10 @@ let ne = class extends S {
1211
1263
  }
1212
1264
  */
1213
1265
  render() {
1214
- return r` <header class="cb-header" part="header">
1266
+ return d` <header class="cb-header" part="header">
1215
1267
  <span class="left">
1216
1268
  <sl-button class="cb-setting-button" variant="text" circle>
1217
- <cb-icon class="cb-header-logo" svg="${s.setting.logoSvg}"></cb-icon>
1269
+ <cb-icon class="cb-header-logo" svg="${n.setting.logoSvg}"></cb-icon>
1218
1270
  </sl-button>
1219
1271
  </span>
1220
1272
  <span class="center title">${this.title}</span>
@@ -1236,13 +1288,13 @@ let ne = class extends S {
1236
1288
  });
1237
1289
  }
1238
1290
  };
1239
- ne.styles = Nc;
1240
- Ye([
1291
+ se.styles = Nc;
1292
+ Ge([
1241
1293
  b({ type: String, attribute: "title" })
1242
- ], ne.prototype, "title", 2);
1243
- ne = Ye([
1294
+ ], se.prototype, "title", 2);
1295
+ se = Ge([
1244
1296
  _("cb-header")
1245
- ], ne);
1297
+ ], se);
1246
1298
  const Xc = x`
1247
1299
  ${T}
1248
1300
  .cb-footer {
@@ -1259,8 +1311,8 @@ const Xc = x`
1259
1311
  }
1260
1312
  `;
1261
1313
  var Qc = Object.defineProperty, ea = Object.getOwnPropertyDescriptor, ca = (c, e, a, t) => {
1262
- for (var f = t > 1 ? void 0 : t ? ea(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1263
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1314
+ for (var f = t > 1 ? void 0 : t ? ea(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1315
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1264
1316
  return t && f && Qc(e, a, f), f;
1265
1317
  };
1266
1318
  let je = class extends S {
@@ -1268,7 +1320,7 @@ let je = class extends S {
1268
1320
  super(...arguments), this.year = (/* @__PURE__ */ new Date()).getFullYear();
1269
1321
  }
1270
1322
  render() {
1271
- return r`
1323
+ return d`
1272
1324
  <div class="cb-footer" part="footer">
1273
1325
  yugasun@${this.year}
1274
1326
  <a
@@ -1430,13 +1482,13 @@ const aa = x`
1430
1482
  }
1431
1483
  `;
1432
1484
  var ta = Object.defineProperty, fa = Object.getOwnPropertyDescriptor, oa = (c, e, a, t) => {
1433
- for (var f = t > 1 ? void 0 : t ? fa(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1434
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1485
+ for (var f = t > 1 ? void 0 : t ? fa(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1486
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1435
1487
  return t && f && ta(e, a, f), f;
1436
1488
  };
1437
1489
  let Se = class extends ge {
1438
1490
  render() {
1439
- return r` <div class="cb-thinking" style="color: rgb(34, 34, 34);"><span></span><span></span><span></span></div>`;
1491
+ return d` <div class="cb-thinking" style="color: rgb(34, 34, 34);"><span></span><span></span><span></span></div>`;
1440
1492
  }
1441
1493
  };
1442
1494
  Se.styles = x`
@@ -1480,28 +1532,28 @@ Se.styles = x`
1480
1532
  Se = oa([
1481
1533
  _("cb-thinking")
1482
1534
  ], Se);
1483
- var da = Object.defineProperty, ra = Object.getOwnPropertyDescriptor, Ge = (c, e, a, t) => {
1484
- for (var f = t > 1 ? void 0 : t ? ra(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1485
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1486
- return t && f && da(e, a, f), f;
1535
+ var ra = Object.defineProperty, da = Object.getOwnPropertyDescriptor, Ye = (c, e, a, t) => {
1536
+ for (var f = t > 1 ? void 0 : t ? da(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1537
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1538
+ return t && f && ra(e, a, f), f;
1487
1539
  };
1488
- let se = class extends S {
1540
+ let ne = class extends S {
1489
1541
  constructor() {
1490
1542
  super(...arguments), this.files = [];
1491
1543
  }
1492
1544
  render() {
1493
- return r` <div class="cb-uploading">
1545
+ return d` <div class="cb-uploading">
1494
1546
  <div class="cb-uploading__title">
1495
1547
  <sl-spinner class="cb-spinner"></sl-spinner>
1496
1548
  <span>Uploading...</span>
1497
1549
  </div>
1498
1550
  <div class="cb-uploading__filelist">
1499
- ${this.files.map((c) => r`${c.name}<br />`)}
1551
+ ${this.files.map((c) => d`${c.name}<br />`)}
1500
1552
  </div>
1501
1553
  </div>`;
1502
1554
  }
1503
1555
  };
1504
- se.styles = x`
1556
+ ne.styles = x`
1505
1557
  .cb-uploading {
1506
1558
  text-align: left;
1507
1559
  }
@@ -1519,12 +1571,12 @@ se.styles = x`
1519
1571
  margin-right: 5px;
1520
1572
  }
1521
1573
  `;
1522
- Ge([
1574
+ Ye([
1523
1575
  b({ type: Array })
1524
- ], se.prototype, "files", 2);
1525
- se = Ge([
1576
+ ], ne.prototype, "files", 2);
1577
+ ne = Ye([
1526
1578
  _("cb-uploading")
1527
- ], se);
1579
+ ], ne);
1528
1580
  const ba = x`
1529
1581
  ${T}
1530
1582
  :host {
@@ -1546,17 +1598,17 @@ const ba = x`
1546
1598
  margin-right: 0.2em;
1547
1599
  }
1548
1600
  `;
1549
- var na = Object.defineProperty, sa = Object.getOwnPropertyDescriptor, Oe = (c, e, a, t) => {
1550
- for (var f = t > 1 ? void 0 : t ? sa(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1551
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1552
- return t && f && na(e, a, f), f;
1601
+ var sa = Object.defineProperty, na = Object.getOwnPropertyDescriptor, Oe = (c, e, a, t) => {
1602
+ for (var f = t > 1 ? void 0 : t ? na(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1603
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1604
+ return t && f && sa(e, a, f), f;
1553
1605
  };
1554
1606
  let X = class extends ge {
1555
1607
  constructor() {
1556
1608
  super(...arguments), this.url = "", this.inverse = !1;
1557
1609
  }
1558
1610
  render() {
1559
- return r`
1611
+ return d`
1560
1612
  <a
1561
1613
  class="
1562
1614
  cb-external-link link__item
@@ -1606,9 +1658,9 @@ X = Oe([
1606
1658
  _("cb-external-link")
1607
1659
  ], X);
1608
1660
  const ia = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-2v-1h2a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5L14 4.5ZM1.928 15.849v-3.337h1.136v-.662H0v.662h1.134v3.337h.794Zm4.689-3.999h-.894L4.9 13.289h-.035l-.832-1.439h-.932l1.228 1.983l-1.24 2.016h.862l.853-1.415h.035l.85 1.415h.907l-1.253-1.992l1.274-2.007Zm1.93.662v3.337h-.794v-3.337H6.619v-.662h3.064v.662H8.546Z"/></svg>', la = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5L14 4.5ZM1.6 11.85H0v3.999h.791v-1.342h.803c.287 0 .531-.057.732-.173c.203-.117.358-.275.463-.474a1.42 1.42 0 0 0 .161-.677c0-.25-.053-.476-.158-.677a1.176 1.176 0 0 0-.46-.477c-.2-.12-.443-.179-.732-.179Zm.545 1.333a.795.795 0 0 1-.085.38a.574.574 0 0 1-.238.241a.794.794 0 0 1-.375.082H.788V12.48h.66c.218 0 .389.06.512.181c.123.122.185.296.185.522Zm1.217-1.333v3.999h1.46c.401 0 .734-.08.998-.237a1.45 1.45 0 0 0 .595-.689c.13-.3.196-.662.196-1.084c0-.42-.065-.778-.196-1.075a1.426 1.426 0 0 0-.589-.68c-.264-.156-.599-.234-1.005-.234H3.362Zm.791.645h.563c.248 0 .45.05.609.152a.89.89 0 0 1 .354.454c.079.201.118.452.118.753a2.3 2.3 0 0 1-.068.592a1.14 1.14 0 0 1-.196.422a.8.8 0 0 1-.334.252a1.298 1.298 0 0 1-.483.082h-.563v-2.707Zm3.743 1.763v1.591h-.79V11.85h2.548v.653H7.896v1.117h1.606v.638H7.896Z"/></svg>', pa = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2H9v-1h3a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5L14 4.5ZM.706 13.189v2.66H0V11.85h.806l1.14 2.596h.026l1.14-2.596h.8v3.999h-.716v-2.66h-.038l-.946 2.159h-.516l-.952-2.16H.706Zm3.919 2.66V11.85h1.459c.406 0 .741.078 1.005.234c.263.157.46.383.589.68c.13.297.196.655.196 1.075c0 .422-.066.784-.196 1.084c-.131.301-.33.53-.595.689c-.264.158-.597.237-1 .237H4.626Zm1.353-3.354h-.562v2.707h.562c.186 0 .347-.028.484-.082a.8.8 0 0 0 .334-.252a1.14 1.14 0 0 0 .196-.422c.045-.168.067-.365.067-.592a2.1 2.1 0 0 0-.117-.753a.89.89 0 0 0-.354-.454c-.159-.102-.362-.152-.61-.152Z"/></svg>', ha = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5L14 4.5ZM3.517 14.841a1.13 1.13 0 0 0 .401.823c.13.108.289.192.478.252c.19.061.411.091.665.091c.338 0 .624-.053.859-.158c.236-.105.416-.252.539-.44c.125-.189.187-.408.187-.656c0-.224-.045-.41-.134-.56a1.001 1.001 0 0 0-.375-.357a2.027 2.027 0 0 0-.566-.21l-.621-.144a.97.97 0 0 1-.404-.176a.37.37 0 0 1-.144-.299c0-.156.062-.284.185-.384c.125-.101.296-.152.512-.152c.143 0 .266.023.37.068a.624.624 0 0 1 .246.181a.56.56 0 0 1 .12.258h.75a1.092 1.092 0 0 0-.2-.566a1.21 1.21 0 0 0-.5-.41a1.813 1.813 0 0 0-.78-.152c-.293 0-.551.05-.776.15c-.225.099-.4.24-.527.421c-.127.182-.19.395-.19.639c0 .201.04.376.122.524c.082.149.2.27.352.367c.152.095.332.167.539.213l.618.144c.207.049.361.113.463.193a.387.387 0 0 1 .152.326a.505.505 0 0 1-.085.29a.559.559 0 0 1-.255.193c-.111.047-.249.07-.413.07c-.117 0-.223-.013-.32-.04a.838.838 0 0 1-.248-.115a.578.578 0 0 1-.255-.384h-.765ZM.806 13.693c0-.248.034-.46.102-.633a.868.868 0 0 1 .302-.399a.814.814 0 0 1 .475-.137c.15 0 .283.032.398.097a.7.7 0 0 1 .272.26a.85.85 0 0 1 .12.381h.765v-.072a1.33 1.33 0 0 0-.466-.964a1.441 1.441 0 0 0-.489-.272a1.838 1.838 0 0 0-.606-.097c-.356 0-.66.074-.911.223c-.25.148-.44.359-.572.632c-.13.274-.196.6-.196.979v.498c0 .379.064.704.193.976c.131.271.322.48.572.626c.25.145.554.217.914.217c.293 0 .554-.055.785-.164c.23-.11.414-.26.55-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.764a.799.799 0 0 1-.118.363a.7.7 0 0 1-.272.25a.874.874 0 0 1-.401.087a.845.845 0 0 1-.478-.132a.833.833 0 0 1-.299-.392a1.699 1.699 0 0 1-.102-.627v-.495Zm8.239 2.238h-.953l-1.338-3.999h.917l.896 3.138h.038l.888-3.138h.879l-1.327 4Z"/></svg>', ua = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5L14 4.5ZM1.6 11.85H0v3.999h.791v-1.342h.803c.287 0 .531-.057.732-.173c.203-.117.358-.275.463-.474a1.42 1.42 0 0 0 .161-.677c0-.25-.053-.476-.158-.677a1.176 1.176 0 0 0-.46-.477c-.2-.12-.443-.179-.732-.179Zm.545 1.333a.795.795 0 0 1-.085.38a.574.574 0 0 1-.238.241a.794.794 0 0 1-.375.082H.788V12.48h.66c.218 0 .389.06.512.181c.123.122.185.296.185.522Zm2.817-1.333h-1.6v3.999h.791v-1.342h.803c.287 0 .531-.057.732-.173c.203-.117.358-.275.463-.474c.108-.201.161-.427.161-.677c0-.25-.052-.476-.158-.677a1.176 1.176 0 0 0-.46-.477c-.2-.12-.443-.179-.732-.179Zm.545 1.333a.795.795 0 0 1-.085.38a.574.574 0 0 1-.238.241a.793.793 0 0 1-.375.082H4.15V12.48h.66c.218 0 .389.06.512.181c.123.122.185.296.185.522Zm2.767-.67v3.336H7.48v-3.337H6.346v-.662h3.065v.662H8.274Z"/></svg>', ga = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5L14 4.5Zm-7.839 9.166v.522c0 .256-.039.47-.117.641a.861.861 0 0 1-.322.387a.877.877 0 0 1-.469.126a.883.883 0 0 1-.471-.126a.868.868 0 0 1-.32-.386a1.55 1.55 0 0 1-.117-.642v-.522c0-.257.04-.471.117-.641a.868.868 0 0 1 .32-.387a.868.868 0 0 1 .471-.129c.176 0 .332.043.469.13a.861.861 0 0 1 .322.386c.078.17.117.384.117.641Zm.803.519v-.513c0-.377-.068-.7-.205-.972a1.46 1.46 0 0 0-.589-.63c-.254-.147-.56-.22-.917-.22c-.355 0-.662.073-.92.22a1.441 1.441 0 0 0-.589.627c-.136.271-.205.596-.205.975v.513c0 .375.069.7.205.973c.137.271.333.48.59.627c.257.144.564.216.92.216c.357 0 .662-.072.916-.216c.256-.147.452-.356.59-.627c.136-.274.204-.598.204-.973ZM0 11.926v4h1.459c.402 0 .735-.08.999-.238a1.45 1.45 0 0 0 .595-.689c.13-.3.196-.662.196-1.084c0-.42-.065-.778-.196-1.075a1.426 1.426 0 0 0-.59-.68c-.263-.156-.598-.234-1.004-.234H0Zm.791.645h.563c.248 0 .45.05.609.152a.89.89 0 0 1 .354.454c.079.201.118.452.118.753a2.3 2.3 0 0 1-.068.592a1.141 1.141 0 0 1-.196.422a.8.8 0 0 1-.334.252a1.298 1.298 0 0 1-.483.082H.79V12.57Zm7.422.483a1.732 1.732 0 0 0-.103.633v.495c0 .246.034.455.103.627a.834.834 0 0 0 .298.393a.845.845 0 0 0 .478.131a.868.868 0 0 0 .401-.088a.699.699 0 0 0 .273-.248a.8.8 0 0 0 .117-.364h.765v.076a1.268 1.268 0 0 1-.226.674c-.137.194-.32.345-.55.454a1.81 1.81 0 0 1-.786.164c-.36 0-.664-.072-.914-.216a1.424 1.424 0 0 1-.571-.627c-.13-.272-.194-.597-.194-.976v-.498c0-.379.066-.705.197-.978c.13-.274.321-.485.571-.633c.252-.149.556-.223.911-.223c.219 0 .421.032.607.097c.187.062.35.153.489.272a1.326 1.326 0 0 1 .466.964v.073H9.78a.85.85 0 0 0-.12-.38a.7.7 0 0 0-.273-.261a.802.802 0 0 0-.398-.097a.814.814 0 0 0-.475.138a.868.868 0 0 0-.301.398Z"/></svg>', ma = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5L14 4.5Zm-6.839 9.688v-.522a1.54 1.54 0 0 0-.117-.641a.861.861 0 0 0-.322-.387a.862.862 0 0 0-.469-.129a.868.868 0 0 0-.471.13a.868.868 0 0 0-.32.386a1.54 1.54 0 0 0-.117.641v.522c0 .256.04.47.117.641a.868.868 0 0 0 .32.387a.883.883 0 0 0 .471.126a.877.877 0 0 0 .469-.126a.861.861 0 0 0 .322-.386a1.55 1.55 0 0 0 .117-.642Zm.803-.516v.513c0 .375-.068.7-.205.973a1.47 1.47 0 0 1-.589.627c-.254.144-.56.216-.917.216a1.86 1.86 0 0 1-.92-.216a1.463 1.463 0 0 1-.589-.627a2.151 2.151 0 0 1-.205-.973v-.513c0-.379.069-.704.205-.975c.137-.274.333-.483.59-.627c.257-.147.564-.22.92-.22c.357 0 .662.073.916.22c.256.146.452.356.59.63c.136.271.204.595.204.972ZM1 15.925v-3.999h1.459c.406 0 .741.078 1.005.235c.264.156.46.382.589.68c.13.296.196.655.196 1.074c0 .422-.065.784-.196 1.084c-.131.301-.33.53-.595.689c-.264.158-.597.237-.999.237H1Zm1.354-3.354H1.79v2.707h.563c.185 0 .346-.028.483-.082a.8.8 0 0 0 .334-.252c.088-.114.153-.254.196-.422a2.3 2.3 0 0 0 .068-.592c0-.3-.04-.552-.118-.753a.89.89 0 0 0-.354-.454c-.158-.102-.361-.152-.61-.152Zm6.756 1.116c0-.248.034-.46.103-.633a.868.868 0 0 1 .301-.398a.814.814 0 0 1 .475-.138c.15 0 .283.032.398.097a.7.7 0 0 1 .273.26a.85.85 0 0 1 .12.381h.765v-.073a1.33 1.33 0 0 0-.466-.964a1.44 1.44 0 0 0-.49-.272a1.836 1.836 0 0 0-.606-.097c-.355 0-.66.074-.911.223c-.25.148-.44.359-.571.633c-.131.273-.197.6-.197.978v.498c0 .379.065.704.194.976c.13.271.321.48.571.627c.25.144.555.216.914.216c.293 0 .555-.054.785-.164c.23-.11.414-.26.551-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.765a.8.8 0 0 1-.117.364a.699.699 0 0 1-.273.248a.874.874 0 0 1-.401.088a.845.845 0 0 1-.478-.131a.834.834 0 0 1-.298-.393a1.7 1.7 0 0 1-.103-.627v-.495Zm5.092-1.76h.894l-1.275 2.006l1.254 1.992h-.908l-.85-1.415h-.035l-.852 1.415h-.862l1.24-2.015l-1.228-1.984h.932l.832 1.439h.035l.823-1.439Z"/></svg>';
1609
- var ya = Object.defineProperty, va = Object.getOwnPropertyDescriptor, Le = (c, e, a, t) => {
1610
- for (var f = t > 1 ? void 0 : t ? va(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1611
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1661
+ var ya = Object.defineProperty, va = Object.getOwnPropertyDescriptor, Pe = (c, e, a, t) => {
1662
+ for (var f = t > 1 ? void 0 : t ? va(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1663
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1612
1664
  return t && f && ya(e, a, f), f;
1613
1665
  };
1614
1666
  const Te = {
@@ -1632,7 +1684,7 @@ let Q = class extends S {
1632
1684
  return e ? e.toLowerCase() : c;
1633
1685
  }
1634
1686
  render() {
1635
- return r`
1687
+ return d`
1636
1688
  <cb-external-link url="${this.url}" inverse>
1637
1689
  <div class="cb-file">
1638
1690
  ${this.renderFileIcon()}
@@ -1642,7 +1694,7 @@ let Q = class extends S {
1642
1694
  `;
1643
1695
  }
1644
1696
  renderFileIcon() {
1645
- return r`
1697
+ return d`
1646
1698
  <cb-icon
1647
1699
  class="cb-file-icon"
1648
1700
  svg="${Te[this.type] || Te.txt}"
@@ -1651,13 +1703,13 @@ let Q = class extends S {
1651
1703
  }
1652
1704
  };
1653
1705
  Q.styles = ba;
1654
- Le([
1706
+ Pe([
1655
1707
  b({ type: String })
1656
1708
  ], Q.prototype, "filename", 2);
1657
- Le([
1709
+ Pe([
1658
1710
  b({ type: String })
1659
1711
  ], Q.prototype, "url", 2);
1660
- Q = Le([
1712
+ Q = Pe([
1661
1713
  _("cb-file")
1662
1714
  ], Q);
1663
1715
  const wa = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M5.5 5.5A.5.5 0 0 1 6 6v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5Zm2.5 0a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5Zm3 .5a.5.5 0 0 0-1 0v6a.5.5 0 0 0 1 0V6Z"/><path d="M14.5 3a1 1 0 0 1-1 1H13v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V4h-.5a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1H6a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1h3.5a1 1 0 0 1 1 1v1ZM4.118 4L4 4.059V13a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V4.059L11.882 4H4.118ZM2.5 3h11V2h-11v1Z"/></g></svg>', xa = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M8 8a3 3 0 1 0 0-6a3 3 0 0 0 0 6Zm2-3a2 2 0 1 1-4 0a2 2 0 0 1 4 0Zm4 8c0 1-1 1-1 1H3s-1 0-1-1s1-4 6-4s6 3 6 4Zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332c-.678.678-.83 1.418-.832 1.664h10Z"/></svg>', ka = x`
@@ -2986,20 +3038,22 @@ const wa = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
2986
3038
  `;
2987
3039
  function $a() {
2988
3040
  const c = new pc({
3041
+ html: !0,
3042
+ breaks: !0,
2989
3043
  linkify: !0
2990
3044
  });
2991
3045
  return c.use(hc, { attrs: { target: "_blank", rel: "noopener" } }), c;
2992
3046
  }
2993
- async function Be(c) {
2994
- const e = $a();
2995
- return r`${U(e.render(c))}`;
3047
+ async function Re(c) {
3048
+ const a = $a().render(c);
3049
+ return d`${U(a)}`;
2996
3050
  }
2997
3051
  var Ca = Object.defineProperty, ja = Object.getOwnPropertyDescriptor, ye = (c, e, a, t) => {
2998
- for (var f = t > 1 ? void 0 : t ? ja(e, a) : e, o = c.length - 1, d; o >= 0; o--)
2999
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
3052
+ for (var f = t > 1 ? void 0 : t ? ja(e, a) : e, o = c.length - 1, r; o >= 0; o--)
3053
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3000
3054
  return t && f && Ca(e, a, f), f;
3001
3055
  };
3002
- let J = class extends S {
3056
+ let K = class extends S {
3003
3057
  constructor() {
3004
3058
  super(...arguments), this.type = "assistant";
3005
3059
  }
@@ -3045,7 +3099,7 @@ let J = class extends S {
3045
3099
  render() {
3046
3100
  return W(
3047
3101
  this.message.data || this.message.isThinking,
3048
- () => r`
3102
+ () => d`
3049
3103
  <div class="cb-message-row" part="cb-message-row">
3050
3104
  <!-- message -->
3051
3105
  ${W(
@@ -3059,7 +3113,7 @@ let J = class extends S {
3059
3113
  );
3060
3114
  }
3061
3115
  renderButtons(c = "left") {
3062
- return r`<div class="cb-message__buttons ${c}">
3116
+ return d`<div class="cb-message__buttons ${c}">
3063
3117
  <!-- delete button -->
3064
3118
  <sl-button class="cb-message__delete-button" name="trash" @click=${this._removeMessageHandler} circle variant="text" size="small">
3065
3119
  <cb-icon svg="${wa}" style="font-size: 1em !important;"></cb-icon>
@@ -3067,7 +3121,7 @@ let J = class extends S {
3067
3121
  </div>`;
3068
3122
  }
3069
3123
  renderMessage(c) {
3070
- return r`
3124
+ return d`
3071
3125
  <div
3072
3126
  class="cb-message__content
3073
3127
  ${c.author}-message
@@ -3080,38 +3134,38 @@ let J = class extends S {
3080
3134
  `;
3081
3135
  }
3082
3136
  async _getMessageText(c) {
3083
- return Be(c.data.text);
3137
+ return Re(c.data.text);
3084
3138
  }
3085
3139
  renderMessageContent(c) {
3086
3140
  var e;
3087
- return c.isThinking ? r`<cb-thinking></cb-thinking>` : c.isUploading ? r`<cb-uploading .files="${c.data.files || []}"></cb-uploading>` : c.type === "text" ? r`<div class="cb-message-text">
3141
+ return c.isThinking ? d`<cb-thinking></cb-thinking>` : c.isUploading ? d`<cb-uploading .files="${c.data.files || []}"></cb-uploading>` : c.type === "text" ? d`<div class="cb-message-text">
3088
3142
  ${W(
3089
3143
  c.data.userName,
3090
- () => r`<div style="font-size: 12px; color:#9ca3af">${c.data.userName}</div>`,
3144
+ () => d`<div style="font-size: 12px; color:#9ca3af">${c.data.userName}</div>`,
3091
3145
  () => null
3092
3146
  )}
3093
3147
  ${ze(
3094
- this._getMessageText(c).then((a) => r`${a}`)
3148
+ this._getMessageText(c).then((a) => d`${a}`)
3095
3149
  )}
3096
- </div>` : c.type === "file" ? r`${te(
3150
+ </div>` : c.type === "file" ? d`${te(
3097
3151
  c.data.files || [],
3098
3152
  (a) => a.id,
3099
- (a) => r`<cb-file filename="${a.name}" url="${a.url}"></cb-file>`
3100
- )}` : r`<div class="cb-message-text">
3153
+ (a) => d`<cb-file filename="${a.name}" url="${a.url}"></cb-file>`
3154
+ )}` : d`<div class="cb-message-text">
3101
3155
  ${ze(
3102
- Be(((e = c.data.text) == null ? void 0 : e.toString()) || "").then((a) => r`${a}`)
3156
+ Re(((e = c.data.text) == null ? void 0 : e.toString()) || "").then((a) => d`${a}`)
3103
3157
  )}
3104
3158
  </div>`;
3105
3159
  }
3106
3160
  renderBotMessageAvatar(c) {
3107
3161
  if (c.data.userName && c.data.userName !== "") {
3108
3162
  const e = c.data.userAvatar || "";
3109
- return r` <img src="${e}" style="width: 24px;height: 24px;" /> `;
3163
+ return d` <img src="${e}" style="width: 24px;height: 24px;" /> `;
3110
3164
  }
3111
- return c.author === "system" ? re`${U(s.setting.systemIconSvg)}` : re`${U(s.setting.botIconSvg)}`;
3165
+ return c.author === "system" ? de`${U(n.setting.systemIconSvg)}` : de`${U(n.setting.botIconSvg)}`;
3112
3166
  }
3113
3167
  renderBotMessage(c) {
3114
- return r`
3168
+ return d`
3115
3169
  <div class="cb-message cb-bot-message-wrapper" part="cb-message">
3116
3170
  <div class="avatar assistant-avatar xsmall" style="margin-top:4px;">${this.renderBotMessageAvatar(c)}</div>
3117
3171
  <div style="margin-left: 4px;width: 100%">${this.renderMessage(c)}</div>
@@ -3119,33 +3173,33 @@ let J = class extends S {
3119
3173
  `;
3120
3174
  }
3121
3175
  renderUserMessage(c) {
3122
- return r`
3176
+ return d`
3123
3177
  <div class="cb-message" part="cb-message" style="display: flex; justify-content: end;align-items: start;">
3124
3178
  <!--<sl-avatar class="avatar user-avatar small" label="User">
3125
3179
  <cb-icon slot="icon" svg="${xa}" color="white"></cb-icon>
3126
3180
  </sl-avatar>-->
3127
- <div class="avatar user-avatar">${U(s.setting.userIconSvg)}</div>
3181
+ <div class="avatar user-avatar">${U(n.setting.userIconSvg)}</div>
3128
3182
  ${this.renderMessage(c)}
3129
3183
  </div>
3130
3184
  `;
3131
3185
  }
3132
3186
  };
3133
- J.styles = _a;
3187
+ K.styles = _a;
3134
3188
  ye([
3135
3189
  b({ type: Object })
3136
- ], J.prototype, "message", 2);
3190
+ ], K.prototype, "message", 2);
3137
3191
  ye([
3138
3192
  b({ type: String })
3139
- ], J.prototype, "type", 2);
3193
+ ], K.prototype, "type", 2);
3140
3194
  ye([
3141
3195
  lc(".code-block-header__copy")
3142
- ], J.prototype, "copyBtns", 2);
3143
- J = ye([
3196
+ ], K.prototype, "copyBtns", 2);
3197
+ K = ye([
3144
3198
  _("cb-message")
3145
- ], J);
3199
+ ], K);
3146
3200
  var Sa = Object.defineProperty, Ma = Object.getOwnPropertyDescriptor, D = (c, e, a, t) => {
3147
- for (var f = t > 1 ? void 0 : t ? Ma(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3148
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
3201
+ for (var f = t > 1 ? void 0 : t ? Ma(e, a) : e, o = c.length - 1, r; o >= 0; o--)
3202
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3149
3203
  return t && f && Sa(e, a, f), f;
3150
3204
  };
3151
3205
  const N = me.noConflict();
@@ -3155,12 +3209,12 @@ let z = class extends S {
3155
3209
  super(...arguments), this.messages = [], this.actions = [], this.form = null, this.calendlyInjected = !1, this.activeCalendlyAction = -1;
3156
3210
  }
3157
3211
  render() {
3158
- return r`
3212
+ return d`
3159
3213
  <div class="cb-message-list" part="cb-message-list">
3160
3214
  ${te(
3161
3215
  this.messages,
3162
3216
  (c) => c.id + JSON.stringify(c.data),
3163
- (c) => r`<cb-message .message="${c}"></cb-message>`
3217
+ (c) => d`<cb-message .message="${c}"></cb-message>`
3164
3218
  )}
3165
3219
  ${this.renderActions()} ${this.renderForm()}
3166
3220
  <div id="cb-message-list-bottom-anchor"></div>
@@ -3168,7 +3222,7 @@ let z = class extends S {
3168
3222
  `;
3169
3223
  }
3170
3224
  renderForm() {
3171
- return this.form ? r` <form class="cb-input-form" part="form" @submit="${this.handleFormSubmit.bind(this)}">
3225
+ return this.form ? d` <form class="cb-input-form" part="form" @submit="${this.handleFormSubmit.bind(this)}">
3172
3226
  <div class="cb-input-form-title">${this.form.title}</div>
3173
3227
  ${te(
3174
3228
  this.form.fields,
@@ -3176,9 +3230,9 @@ let z = class extends S {
3176
3230
  (c) => {
3177
3231
  switch (c.type) {
3178
3232
  case "string":
3179
- return r`<sl-input class="cb-input-form-input" id="${"cb-form-field" + c.name}" name="${c.name}" label="${c.title}" required></sl-input>`;
3233
+ return d`<sl-input class="cb-input-form-input" id="${"cb-form-field" + c.name}" name="${c.name}" label="${c.title}" required></sl-input>`;
3180
3234
  case "email":
3181
- return r`<sl-input class="cb-input-form-input" id="${"cb-form-field" + c.name}" name="${c.name}" type="email" label="${c.title}" required></sl-input>`;
3235
+ return d`<sl-input class="cb-input-form-input" id="${"cb-form-field" + c.name}" name="${c.name}" type="email" label="${c.title}" required></sl-input>`;
3182
3236
  }
3183
3237
  }
3184
3238
  )}
@@ -3199,7 +3253,7 @@ let z = class extends S {
3199
3253
  return;
3200
3254
  }
3201
3255
  }
3202
- s.submitForm(e).then(() => {
3256
+ n.submitForm(e).then(() => {
3203
3257
  N.info("Form submitted", e), this.emit("form:submit", {
3204
3258
  detail: {
3205
3259
  formData: e
@@ -3221,7 +3275,7 @@ let z = class extends S {
3221
3275
  <br /><br />
3222
3276
  */
3223
3277
  renderActions() {
3224
- return !Array.isArray(this.actions) || this.actions.length <= 0 ? null : r`
3278
+ return !Array.isArray(this.actions) || this.actions.length <= 0 ? null : d`
3225
3279
  <div class="cb-actions-list">
3226
3280
  ${te(
3227
3281
  this.actions,
@@ -3247,7 +3301,7 @@ let z = class extends S {
3247
3301
  switch (N.info("Got Calendly Event:", c.data), c.data.event) {
3248
3302
  case "calendly.event_scheduled": {
3249
3303
  const e = this.activeCalendlyAction;
3250
- e >= 0 && (s.removeAction(e), s.addSystemMessage("Your meeting has been scheduled!"), this.activeCalendlyAction = -1);
3304
+ e >= 0 && (n.removeAction(e), n.addSystemMessage("Your meeting has been scheduled!"), this.activeCalendlyAction = -1);
3251
3305
  }
3252
3306
  }
3253
3307
  }
@@ -3266,7 +3320,7 @@ let z = class extends S {
3266
3320
  t.origin === "https://calendly.com" && t.data.event && t.data.event.indexOf("calendly.") !== -1 && this.handleCalendlyEvent(t);
3267
3321
  }), this.calendlyInjected = !0;
3268
3322
  }
3269
- return r`
3323
+ return d`
3270
3324
  <div class="cb-actions-list">
3271
3325
  <div class="cb-action ripple" @click="${this.invokeCalendlyAction.bind(this, c)}">
3272
3326
  <div class="cb-action-icon">
@@ -3283,7 +3337,7 @@ let z = class extends S {
3283
3337
  `;
3284
3338
  }
3285
3339
  renderLinkAction(c) {
3286
- return r`
3340
+ return d`
3287
3341
  <div class="cb-actions-list">
3288
3342
  <div class="cb-action ripple" @click="${this.invokeLinkAction.bind(this, c)}">
3289
3343
  <div class="cb-action-icon">
@@ -3322,7 +3376,7 @@ D([
3322
3376
  z = D([
3323
3377
  _("cb-message-list")
3324
3378
  ], z);
3325
- const Aa = x`
3379
+ const Ia = x`
3326
3380
  ${T}
3327
3381
 
3328
3382
  :host {
@@ -3365,13 +3419,13 @@ const Aa = x`
3365
3419
  .cb-input-buttons {
3366
3420
  padding: 0 5px;
3367
3421
  }
3368
- `, Ia = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M15.854.146a.5.5 0 0 1 .11.54l-5.819 14.547a.75.75 0 0 1-1.329.124l-3.178-4.995L.643 7.184a.75.75 0 0 1 .124-1.33L15.314.037a.5.5 0 0 1 .54.11ZM6.636 10.07l2.761 4.338L14.13 2.576L6.636 10.07Zm6.787-8.201L1.591 6.602l4.339 2.76l7.494-7.493Z"/></svg>', Oa = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M4.5 3a2.5 2.5 0 0 1 5 0v9a1.5 1.5 0 0 1-3 0V5a.5.5 0 0 1 1 0v7a.5.5 0 0 0 1 0V3a1.5 1.5 0 1 0-3 0v9a2.5 2.5 0 0 0 5 0V5a.5.5 0 0 1 1 0v7a3.5 3.5 0 1 1-7 0V3z"/></svg>';
3369
- var La = Object.defineProperty, Ha = Object.getOwnPropertyDescriptor, B = (c, e, a, t) => {
3370
- for (var f = t > 1 ? void 0 : t ? Ha(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3371
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
3372
- return t && f && La(e, a, f), f;
3422
+ `, Aa = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M15.854.146a.5.5 0 0 1 .11.54l-5.819 14.547a.75.75 0 0 1-1.329.124l-3.178-4.995L.643 7.184a.75.75 0 0 1 .124-1.33L15.314.037a.5.5 0 0 1 .54.11ZM6.636 10.07l2.761 4.338L14.13 2.576L6.636 10.07Zm6.787-8.201L1.591 6.602l4.339 2.76l7.494-7.493Z"/></svg>', Oa = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M4.5 3a2.5 2.5 0 0 1 5 0v9a1.5 1.5 0 0 1-3 0V5a.5.5 0 0 1 1 0v7a.5.5 0 0 0 1 0V3a1.5 1.5 0 1 0-3 0v9a2.5 2.5 0 0 0 5 0V5a.5.5 0 0 1 1 0v7a3.5 3.5 0 1 1-7 0V3z"/></svg>';
3423
+ var Pa = Object.defineProperty, La = Object.getOwnPropertyDescriptor, R = (c, e, a, t) => {
3424
+ for (var f = t > 1 ? void 0 : t ? La(e, a) : e, o = c.length - 1, r; o >= 0; o--)
3425
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3426
+ return t && f && Pa(e, a, f), f;
3373
3427
  };
3374
- let H = class extends S {
3428
+ let L = class extends S {
3375
3429
  constructor() {
3376
3430
  super(...arguments), this.placeholder = "Type a message...", this.sendButtonLabel = "Send", this.enableFileUpload = !1, this.value = "", this.loading = !1, this.disabled = !1, this.currentKey = "";
3377
3431
  }
@@ -3402,7 +3456,7 @@ let H = class extends S {
3402
3456
  });
3403
3457
  }
3404
3458
  async _sendFileHandler() {
3405
- const c = await Ac();
3459
+ const c = await Ic();
3406
3460
  this.emit("message:send:file", {
3407
3461
  detail: {
3408
3462
  files: c
@@ -3410,7 +3464,7 @@ let H = class extends S {
3410
3464
  });
3411
3465
  }
3412
3466
  render() {
3413
- return r`
3467
+ return d`
3414
3468
  <div class="cb-user-input-wrapper" part="user-input-wrapper">
3415
3469
  <sl-textarea
3416
3470
  @sl-input=${this._inputChangeHandler}
@@ -3429,17 +3483,17 @@ let H = class extends S {
3429
3483
  <span class="cb-input-buttons">
3430
3484
  ${W(
3431
3485
  this.enableFileUpload,
3432
- () => r`
3486
+ () => d`
3433
3487
  <sl-button @click=${this._sendFileHandler} name="paperclip" label="Attachment" size="large" class="paperclip-button" variant="text" circle>
3434
3488
  <cb-icon svg="${Oa}"></cb-icon>
3435
3489
  <!-- select file input -->
3436
3490
  <input type="file" id="file" name="file" class="file-input" />
3437
3491
  </sl-button>
3438
3492
  `,
3439
- () => r``
3493
+ () => d``
3440
3494
  )}
3441
3495
  <sl-button @click=${this._sendHandler} name="send" label="Send" size="small" class="send-button" variant="text" ?disabled=${this.value.length === 0} ?loading=${this.loading} circle>
3442
- <cb-icon svg="${Ia}"></cb-icon>
3496
+ <cb-icon svg="${Aa}"></cb-icon>
3443
3497
  </sl-button>
3444
3498
  </span>
3445
3499
  </div>
@@ -3449,35 +3503,35 @@ let H = class extends S {
3449
3503
  c.key === "Enter" && !c.shiftKey && this._sendHandler();
3450
3504
  }
3451
3505
  };
3452
- H.styles = Aa;
3453
- B([
3506
+ L.styles = Ia;
3507
+ R([
3454
3508
  b({ type: String, attribute: "placeholder" })
3455
- ], H.prototype, "placeholder", 2);
3456
- B([
3509
+ ], L.prototype, "placeholder", 2);
3510
+ R([
3457
3511
  b({ type: String, attribute: "send-button-label" })
3458
- ], H.prototype, "sendButtonLabel", 2);
3459
- B([
3512
+ ], L.prototype, "sendButtonLabel", 2);
3513
+ R([
3460
3514
  b({ type: Boolean, attribute: "enable-file-upload" })
3461
- ], H.prototype, "enableFileUpload", 2);
3462
- B([
3515
+ ], L.prototype, "enableFileUpload", 2);
3516
+ R([
3463
3517
  b({ type: String })
3464
- ], H.prototype, "value", 2);
3465
- B([
3518
+ ], L.prototype, "value", 2);
3519
+ R([
3466
3520
  b({ type: Boolean })
3467
- ], H.prototype, "loading", 2);
3468
- B([
3521
+ ], L.prototype, "loading", 2);
3522
+ R([
3469
3523
  b({ type: Boolean })
3470
- ], H.prototype, "disabled", 2);
3471
- B([
3524
+ ], L.prototype, "disabled", 2);
3525
+ R([
3472
3526
  b({ type: String })
3473
- ], H.prototype, "currentKey", 2);
3474
- B([
3527
+ ], L.prototype, "currentKey", 2);
3528
+ R([
3475
3529
  ee("sl-textarea")
3476
- ], H.prototype, "inputElement", 2);
3477
- H = B([
3530
+ ], L.prototype, "inputElement", 2);
3531
+ L = R([
3478
3532
  _("cb-user-input")
3479
- ], H);
3480
- const Pa = x`
3533
+ ], L);
3534
+ const Ha = x`
3481
3535
  ${T}
3482
3536
 
3483
3537
  sl-dialog::part(base) {
@@ -3513,11 +3567,11 @@ const Pa = x`
3513
3567
  }
3514
3568
  `;
3515
3569
  var Ea = Object.defineProperty, za = Object.getOwnPropertyDescriptor, ve = (c, e, a, t) => {
3516
- for (var f = t > 1 ? void 0 : t ? za(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3517
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
3570
+ for (var f = t > 1 ? void 0 : t ? za(e, a) : e, o = c.length - 1, r; o >= 0; o--)
3571
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3518
3572
  return t && f && Ea(e, a, f), f;
3519
3573
  };
3520
- let K = class extends S {
3574
+ let J = class extends S {
3521
3575
  constructor() {
3522
3576
  super(...arguments), this.open = !1, this.label = "Dialog", this.zindex = 100;
3523
3577
  }
@@ -3525,7 +3579,7 @@ let K = class extends S {
3525
3579
  this.emit("cancel");
3526
3580
  }
3527
3581
  render() {
3528
- return r` <sl-dialog
3582
+ return d` <sl-dialog
3529
3583
  label="Setting"
3530
3584
  class="cb-dialog"
3531
3585
  style="sl-dialog::part(base) { z-index: ${this.zindex}; }"
@@ -3535,7 +3589,7 @@ let K = class extends S {
3535
3589
  >
3536
3590
  <header class="cb-header">
3537
3591
  <div class="cb-header__left">
3538
- ${this.label ? r`<span class="title">${this.label}</span>` : ""}
3592
+ ${this.label ? d`<span class="title">${this.label}</span>` : ""}
3539
3593
  </div>
3540
3594
  <sl-button
3541
3595
  @click=${this._settingCancelHandler}
@@ -3561,22 +3615,22 @@ let K = class extends S {
3561
3615
  </sl-dialog>`;
3562
3616
  }
3563
3617
  };
3564
- K.styles = Pa;
3618
+ J.styles = Ha;
3565
3619
  ve([
3566
3620
  b({ type: Boolean })
3567
- ], K.prototype, "open", 2);
3621
+ ], J.prototype, "open", 2);
3568
3622
  ve([
3569
3623
  b({ type: String, attribute: "label" })
3570
- ], K.prototype, "label", 2);
3624
+ ], J.prototype, "label", 2);
3571
3625
  ve([
3572
3626
  b({ type: Number })
3573
- ], K.prototype, "zindex", 2);
3574
- K = ve([
3627
+ ], J.prototype, "zindex", 2);
3628
+ J = ve([
3575
3629
  _("cb-dialog")
3576
- ], K);
3577
- var Ta = Object.defineProperty, Ba = Object.getOwnPropertyDescriptor, Xe = (c, e, a, t) => {
3578
- for (var f = t > 1 ? void 0 : t ? Ba(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3579
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
3630
+ ], J);
3631
+ var Ta = Object.defineProperty, Ra = Object.getOwnPropertyDescriptor, Xe = (c, e, a, t) => {
3632
+ for (var f = t > 1 ? void 0 : t ? Ra(e, a) : e, o = c.length - 1, r; o >= 0; o--)
3633
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3580
3634
  return t && f && Ta(e, a, f), f;
3581
3635
  };
3582
3636
  let ie = class extends S {
@@ -3584,7 +3638,7 @@ let ie = class extends S {
3584
3638
  super(...arguments), this.open = !1;
3585
3639
  }
3586
3640
  render() {
3587
- return r` <cb-dialog
3641
+ return d` <cb-dialog
3588
3642
  label="Confirm"
3589
3643
  class="cb-clear-message-dialog"
3590
3644
  ?open=${this.open}
@@ -3627,7 +3681,7 @@ Xe([
3627
3681
  ie = Xe([
3628
3682
  _("cb-clear-message-dialog")
3629
3683
  ], ie);
3630
- const Ra = x`
3684
+ const Ba = x`
3631
3685
  :host {
3632
3686
  // width: 380px;
3633
3687
 
@@ -3687,17 +3741,17 @@ const Ra = x`
3687
3741
  grid-column-start: 2;
3688
3742
  }
3689
3743
  `;
3690
- var Va = Object.defineProperty, Da = Object.getOwnPropertyDescriptor, Y = (c, e, a, t) => {
3691
- for (var f = t > 1 ? void 0 : t ? Da(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3692
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
3744
+ var Va = Object.defineProperty, Da = Object.getOwnPropertyDescriptor, G = (c, e, a, t) => {
3745
+ for (var f = t > 1 ? void 0 : t ? Da(e, a) : e, o = c.length - 1, r; o >= 0; o--)
3746
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3693
3747
  return t && f && Va(e, a, f), f;
3694
3748
  };
3695
- let R = class extends S {
3749
+ let B = class extends S {
3696
3750
  constructor() {
3697
3751
  super(...arguments), this.open = !1, this.clearMessageDialogOpen = !1, this.customRequest = !1;
3698
3752
  }
3699
3753
  render() {
3700
- return this.customRequest = this.setting.customRequest, r`
3754
+ return this.customRequest = this.setting.customRequest, d`
3701
3755
  <cb-dialog
3702
3756
  label="Setting"
3703
3757
  class="cb-dialog"
@@ -3790,7 +3844,7 @@ let R = class extends S {
3790
3844
  `;
3791
3845
  }
3792
3846
  renderInternalServices() {
3793
- return r`
3847
+ return d`
3794
3848
  <div class="form-item">
3795
3849
  <label class="label">Service</label>
3796
3850
  <sl-radio-group name="openai" value="openai" size="small">
@@ -3855,25 +3909,25 @@ let R = class extends S {
3855
3909
  });
3856
3910
  }
3857
3911
  };
3858
- R.styles = Ra;
3859
- Y([
3912
+ B.styles = Ba;
3913
+ G([
3860
3914
  b({ type: Boolean })
3861
- ], R.prototype, "open", 2);
3862
- Y([
3915
+ ], B.prototype, "open", 2);
3916
+ G([
3863
3917
  b({ type: Object })
3864
- ], R.prototype, "setting", 2);
3865
- Y([
3918
+ ], B.prototype, "setting", 2);
3919
+ G([
3866
3920
  b({ type: Boolean })
3867
- ], R.prototype, "clearMessageDialogOpen", 2);
3868
- Y([
3921
+ ], B.prototype, "clearMessageDialogOpen", 2);
3922
+ G([
3869
3923
  ee("sl-dialog")
3870
- ], R.prototype, "dialog", 2);
3871
- Y([
3924
+ ], B.prototype, "dialog", 2);
3925
+ G([
3872
3926
  b({ type: Boolean })
3873
- ], R.prototype, "customRequest", 2);
3874
- R = Y([
3927
+ ], B.prototype, "customRequest", 2);
3928
+ B = G([
3875
3929
  _("cb-setting")
3876
- ], R);
3930
+ ], B);
3877
3931
  const Fa = x`
3878
3932
  ${T}
3879
3933
  :host {
@@ -3967,13 +4021,13 @@ const Fa = x`
3967
4021
  }
3968
4022
  `, qa = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M16 8c0 3.866-3.582 7-8 7a9.06 9.06 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234c-.2.032-.352-.176-.273-.362c.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7zM5 8a1 1 0 1 0-2 0a1 1 0 0 0 2 0zm4 0a1 1 0 1 0-2 0a1 1 0 0 0 2 0zm3 1a1 1 0 1 0 0-2a1 1 0 0 0 0 2z"/></svg>';
3969
4023
  var Ua = Object.defineProperty, Za = Object.getOwnPropertyDescriptor, Qe = (c, e, a, t) => {
3970
- for (var f = t > 1 ? void 0 : t ? Za(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3971
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
4024
+ for (var f = t > 1 ? void 0 : t ? Za(e, a) : e, o = c.length - 1, r; o >= 0; o--)
4025
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3972
4026
  return t && f && Ua(e, a, f), f;
3973
4027
  };
3974
4028
  let le = class extends S {
3975
4029
  constructor() {
3976
- super(...arguments), this.store = new Ne(this, s), this.open = !1;
4030
+ super(...arguments), this.store = new Ne(this, n), this.open = !1;
3977
4031
  }
3978
4032
  // handler click
3979
4033
  _clickHandler() {
@@ -3985,25 +4039,25 @@ let le = class extends S {
3985
4039
  }), this.open = c;
3986
4040
  }
3987
4041
  _engageClickHandler(c) {
3988
- console.log("engage close clicked!"), s.engage = !1, c.stopPropagation();
4042
+ console.log("engage close clicked!"), n.engage = !1, c.stopPropagation();
3989
4043
  }
3990
4044
  render() {
3991
- return r`
4045
+ return d`
3992
4046
  <div class="cb-anchor ${this.open ? "open" : ""}" part="cb-anchor" @click=${this._clickHandler.bind(this)}>
3993
- <sl-popup placement="top-end" distance="16" ?active="${s.engage && !s.open}">
4047
+ <sl-popup placement="top-end" distance="16" ?active="${n.engage && !n.open}">
3994
4048
  <sl-button slot="anchor" label="Start" size="large" variant="primary" class="icon anchor-button" circle>
3995
4049
  ${W(
3996
4050
  this.open,
3997
- () => r`<cb-icon color="white" svg="${be}"></cb-icon>`,
3998
- () => r`<cb-icon color="white" svg="${qa}"></cb-icon>`
4051
+ () => d`<cb-icon color="white" svg="${be}"></cb-icon>`,
4052
+ () => d`<cb-icon color="white" svg="${qa}"></cb-icon>`
3999
4053
  )}
4000
4054
  </sl-button>
4001
4055
  <div class="cb-engage-popup">
4002
- <div class="cb-engage-popup-close" @click=${this._engageClickHandler.bind(this)}>${re`${U(be)}`}</div>
4056
+ <div class="cb-engage-popup-close" @click=${this._engageClickHandler.bind(this)}>${de`${U(be)}`}</div>
4003
4057
  <div class="cb-engage-popup-content">
4004
- <div class="cb-engage-popup-logo">${re`${U(s.setting.logoSvg)}`}</div>
4005
- <!--<cb-icon class="cb-engage-popup-logo" svg="${s.setting.logoSvg}"></cb-icon>-->
4006
- <div>${s.setting.engageMessage}</div>
4058
+ <div class="cb-engage-popup-logo">${de`${U(n.setting.logoSvg)}`}</div>
4059
+ <!--<cb-icon class="cb-engage-popup-logo" svg="${n.setting.logoSvg}"></cb-icon>-->
4060
+ <div>${n.setting.engageMessage}</div>
4007
4061
  </div>
4008
4062
  </div>
4009
4063
  </sl-popup>
@@ -4020,20 +4074,20 @@ le = Qe([
4020
4074
  ], le);
4021
4075
  const Na = x`
4022
4076
  ${T}
4023
- `, Re = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z"/><path d="M7.002 11a1 1 0 1 1 2 0a1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z"/></g></svg>', Wa = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016a.146.146 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 0 1-.054.06a.116.116 0 0 1-.066.017H1.146a.115.115 0 0 1-.066-.017a.163.163 0 0 1-.054-.06a.176.176 0 0 1 .002-.183L7.884 2.073a.147.147 0 0 1 .054-.057zm1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566z"/><path d="M7.002 12a1 1 0 1 1 2 0a1 1 0 0 1-2 0zM7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995z"/></g></svg>', Ja = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M2.5 8a5.5 5.5 0 0 1 8.25-4.764a.5.5 0 0 0 .5-.866A6.5 6.5 0 1 0 14.5 8a.5.5 0 0 0-1 0a5.5 5.5 0 1 1-11 0z"/><path d="M15.354 3.354a.5.5 0 0 0-.708-.708L8 9.293L5.354 6.646a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0l7-7z"/></g></svg>', Ka = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"/><path d="m8.93 6.588l-2.29.287l-.082.38l.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319c.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246c-.275 0-.375-.193-.304-.533L8.93 6.588zM9 4.5a1 1 0 1 1-2 0a1 1 0 0 1 2 0z"/></g></svg>';
4024
- var Ya = Object.defineProperty, Ga = Object.getOwnPropertyDescriptor, ec = (c, e, a, t) => {
4025
- for (var f = t > 1 ? void 0 : t ? Ga(e, a) : e, o = c.length - 1, d; o >= 0; o--)
4026
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
4027
- return t && f && Ya(e, a, f), f;
4077
+ `, Be = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z"/><path d="M7.002 11a1 1 0 1 1 2 0a1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z"/></g></svg>', Wa = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016a.146.146 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 0 1-.054.06a.116.116 0 0 1-.066.017H1.146a.115.115 0 0 1-.066-.017a.163.163 0 0 1-.054-.06a.176.176 0 0 1 .002-.183L7.884 2.073a.147.147 0 0 1 .054-.057zm1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566z"/><path d="M7.002 12a1 1 0 1 1 2 0a1 1 0 0 1-2 0zM7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995z"/></g></svg>', Ka = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M2.5 8a5.5 5.5 0 0 1 8.25-4.764a.5.5 0 0 0 .5-.866A6.5 6.5 0 1 0 14.5 8a.5.5 0 0 0-1 0a5.5 5.5 0 1 1-11 0z"/><path d="M15.354 3.354a.5.5 0 0 0-.708-.708L8 9.293L5.354 6.646a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0l7-7z"/></g></svg>', Ja = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"/><path d="m8.93 6.588l-2.29.287l-.082.38l.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319c.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246c-.275 0-.375-.193-.304-.533L8.93 6.588zM9 4.5a1 1 0 1 1-2 0a1 1 0 0 1 2 0z"/></g></svg>';
4078
+ var Ga = Object.defineProperty, Ya = Object.getOwnPropertyDescriptor, ec = (c, e, a, t) => {
4079
+ for (var f = t > 1 ? void 0 : t ? Ya(e, a) : e, o = c.length - 1, r; o >= 0; o--)
4080
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
4081
+ return t && f && Ga(e, a, f), f;
4028
4082
  };
4029
4083
  const Ve = {
4030
4084
  error: {
4031
4085
  variant: "danger",
4032
- icon: Re
4086
+ icon: Be
4033
4087
  },
4034
4088
  danger: {
4035
4089
  variant: "danger",
4036
- icon: Re
4090
+ icon: Be
4037
4091
  },
4038
4092
  warning: {
4039
4093
  variant: "warning",
@@ -4041,11 +4095,11 @@ const Ve = {
4041
4095
  },
4042
4096
  success: {
4043
4097
  variant: "success",
4044
- icon: Ja
4098
+ icon: Ka
4045
4099
  },
4046
4100
  info: {
4047
4101
  variant: "primary",
4048
- icon: Ka
4102
+ icon: Ja
4049
4103
  }
4050
4104
  };
4051
4105
  let pe = class extends S {
@@ -4054,10 +4108,10 @@ let pe = class extends S {
4054
4108
  }
4055
4109
  render() {
4056
4110
  const { variant: c, icon: e } = Ve[this.status] || Ve.info;
4057
- return r`<cb-icon svg=${e} color="${c}"></cb-icon>`;
4111
+ return d`<cb-icon svg=${e} color="${c}"></cb-icon>`;
4058
4112
  }
4059
4113
  };
4060
- pe.styles = Ke;
4114
+ pe.styles = Je;
4061
4115
  ec([
4062
4116
  b({ type: String })
4063
4117
  ], pe.prototype, "status", 2);
@@ -4065,13 +4119,13 @@ pe = ec([
4065
4119
  _("cb-status-icon")
4066
4120
  ], pe);
4067
4121
  var Xa = Object.defineProperty, Qa = Object.getOwnPropertyDescriptor, e1 = (c, e, a, t) => {
4068
- for (var f = t > 1 ? void 0 : t ? Qa(e, a) : e, o = c.length - 1, d; o >= 0; o--)
4069
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
4122
+ for (var f = t > 1 ? void 0 : t ? Qa(e, a) : e, o = c.length - 1, r; o >= 0; o--)
4123
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
4070
4124
  return t && f && Xa(e, a, f), f;
4071
4125
  };
4072
4126
  let Me = class extends S {
4073
4127
  render() {
4074
- return r` <sl-alert variant="danger" open>
4128
+ return d` <sl-alert variant="danger" open>
4075
4129
  <cb-status-icon status="error" slot="icon"></cb-status-icon>
4076
4130
  Please config openai api key in the settings.
4077
4131
  <span
@@ -4091,8 +4145,8 @@ Me = e1([
4091
4145
  ], Me);
4092
4146
  class De extends Error {
4093
4147
  constructor(e, a, t) {
4094
- const f = e.status || e.status === 0 ? e.status : "", o = e.statusText || "", d = `${f} ${o}`.trim(), n = d ? `status code ${d}` : "an unknown error";
4095
- super(`Request failed with ${n}`), Object.defineProperty(this, "response", {
4148
+ const f = e.status || e.status === 0 ? e.status : "", o = e.statusText || "", r = `${f} ${o}`.trim(), s = r ? `status code ${r}` : "an unknown error";
4149
+ super(`Request failed with ${s}`), Object.defineProperty(this, "response", {
4096
4150
  enumerable: !0,
4097
4151
  configurable: !0,
4098
4152
  writable: !0,
@@ -4124,20 +4178,20 @@ const oe = (c) => c !== null && typeof c == "object", ae = (...c) => {
4124
4178
  for (const e of c)
4125
4179
  if ((!oe(e) || Array.isArray(e)) && typeof e < "u")
4126
4180
  throw new TypeError("The `options` argument must be an object");
4127
- return He({}, ...c);
4181
+ return Le({}, ...c);
4128
4182
  }, ac = (c = {}, e = {}) => {
4129
4183
  const a = new globalThis.Headers(c), t = e instanceof globalThis.Headers, f = new globalThis.Headers(e);
4130
- for (const [o, d] of f.entries())
4131
- t && d === "undefined" || d === void 0 ? a.delete(o) : a.set(o, d);
4184
+ for (const [o, r] of f.entries())
4185
+ t && r === "undefined" || r === void 0 ? a.delete(o) : a.set(o, r);
4132
4186
  return a;
4133
- }, He = (...c) => {
4187
+ }, Le = (...c) => {
4134
4188
  let e = {}, a = {};
4135
4189
  for (const t of c)
4136
4190
  if (Array.isArray(t))
4137
4191
  Array.isArray(e) || (e = []), e = [...e, ...t];
4138
4192
  else if (oe(t)) {
4139
4193
  for (let [f, o] of Object.entries(t))
4140
- oe(o) && f in e && (o = He(e[f], o)), e = { ...e, [f]: o };
4194
+ oe(o) && f in e && (o = Le(e[f], o)), e = { ...e, [f]: o };
4141
4195
  oe(t.headers) && (a = ac(a, t.headers), e.headers = a);
4142
4196
  }
4143
4197
  return e;
@@ -4158,14 +4212,14 @@ const oe = (c) => c !== null && typeof c == "object", ae = (...c) => {
4158
4212
  formData: "multipart/form-data",
4159
4213
  arrayBuffer: "*/*",
4160
4214
  blob: "*/*"
4161
- }, $e = 2147483647, fc = Symbol("stop"), d1 = (c) => tc.includes(c) ? c.toUpperCase() : c, r1 = ["get", "put", "head", "delete", "options", "trace"], b1 = [408, 413, 429, 500, 502, 503, 504], oc = [413, 429, 503], Fe = {
4215
+ }, $e = 2147483647, fc = Symbol("stop"), r1 = (c) => tc.includes(c) ? c.toUpperCase() : c, d1 = ["get", "put", "head", "delete", "options", "trace"], b1 = [408, 413, 429, 500, 502, 503, 504], oc = [413, 429, 503], Fe = {
4162
4216
  limit: 2,
4163
- methods: r1,
4217
+ methods: d1,
4164
4218
  statusCodes: b1,
4165
4219
  afterStatusCodes: oc,
4166
4220
  maxRetryAfter: Number.POSITIVE_INFINITY,
4167
4221
  backoffLimit: Number.POSITIVE_INFINITY
4168
- }, n1 = (c = {}) => {
4222
+ }, s1 = (c = {}) => {
4169
4223
  if (typeof c == "number")
4170
4224
  return {
4171
4225
  ...Fe,
@@ -4181,7 +4235,7 @@ const oe = (c) => c !== null && typeof c == "object", ae = (...c) => {
4181
4235
  afterStatusCodes: oc
4182
4236
  };
4183
4237
  };
4184
- async function s1(c, e, a) {
4238
+ async function n1(c, e, a) {
4185
4239
  return new Promise((t, f) => {
4186
4240
  const o = setTimeout(() => {
4187
4241
  e && e.abort(), f(new cc(c));
@@ -4222,39 +4276,39 @@ class he {
4222
4276
  if (t._options.timeout > $e)
4223
4277
  throw new RangeError(`The \`timeout\` option cannot be greater than ${$e}`);
4224
4278
  await Promise.resolve();
4225
- let n = await t._fetch();
4226
- for (const g of t._options.hooks.afterResponse) {
4227
- const k = await g(t.request, t._options, t._decorateResponse(n.clone()));
4228
- k instanceof globalThis.Response && (n = k);
4279
+ let s = await t._fetch();
4280
+ for (const h of t._options.hooks.afterResponse) {
4281
+ const k = await h(t.request, t._options, t._decorateResponse(s.clone()));
4282
+ k instanceof globalThis.Response && (s = k);
4229
4283
  }
4230
- if (t._decorateResponse(n), !n.ok && t._options.throwHttpErrors) {
4231
- let g = new De(n, t.request, t._options);
4284
+ if (t._decorateResponse(s), !s.ok && t._options.throwHttpErrors) {
4285
+ let h = new De(s, t.request, t._options);
4232
4286
  for (const k of t._options.hooks.beforeError)
4233
- g = await k(g);
4234
- throw g;
4287
+ h = await k(h);
4288
+ throw h;
4235
4289
  }
4236
4290
  if (t._options.onDownloadProgress) {
4237
4291
  if (typeof t._options.onDownloadProgress != "function")
4238
4292
  throw new TypeError("The `onDownloadProgress` option must be a function");
4239
4293
  if (!t1)
4240
4294
  throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");
4241
- return t._stream(n.clone(), t._options.onDownloadProgress);
4295
+ return t._stream(s.clone(), t._options.onDownloadProgress);
4242
4296
  }
4243
- return n;
4244
- }, d = t._options.retry.methods.includes(t.request.method.toLowerCase()) ? t._retry(f) : f();
4245
- for (const [n, g] of Object.entries(o1))
4246
- d[n] = async () => {
4247
- t.request.headers.set("accept", t.request.headers.get("accept") || g);
4248
- const C = (await d).clone();
4249
- if (n === "json") {
4297
+ return s;
4298
+ }, r = t._options.retry.methods.includes(t.request.method.toLowerCase()) ? t._retry(f) : f();
4299
+ for (const [s, h] of Object.entries(o1))
4300
+ r[s] = async () => {
4301
+ t.request.headers.set("accept", t.request.headers.get("accept") || h);
4302
+ const C = (await r).clone();
4303
+ if (s === "json") {
4250
4304
  if (C.status === 204 || (await C.clone().arrayBuffer()).byteLength === 0)
4251
4305
  return "";
4252
4306
  if (a.parseJson)
4253
4307
  return a.parseJson(await C.text());
4254
4308
  }
4255
- return C[n]();
4309
+ return C[s]();
4256
4310
  };
4257
- return d;
4311
+ return r;
4258
4312
  }
4259
4313
  // eslint-disable-next-line complexity
4260
4314
  constructor(e, a = {}) {
@@ -4288,16 +4342,16 @@ class he {
4288
4342
  credentials: this._input.credentials || "same-origin",
4289
4343
  ...a,
4290
4344
  headers: ac(this._input.headers, a.headers),
4291
- hooks: He({
4345
+ hooks: Le({
4292
4346
  beforeRequest: [],
4293
4347
  beforeRetry: [],
4294
4348
  beforeError: [],
4295
4349
  afterResponse: []
4296
4350
  }, a.hooks),
4297
- method: d1(a.method ?? this._input.method),
4351
+ method: r1(a.method ?? this._input.method),
4298
4352
  // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
4299
4353
  prefixUrl: String(a.prefixUrl || ""),
4300
- retry: n1(a.retry),
4354
+ retry: s1(a.retry),
4301
4355
  throwHttpErrors: a.throwHttpErrors !== !1,
4302
4356
  timeout: typeof a.timeout > "u" ? 1e4 : a.timeout,
4303
4357
  fetch: a.fetch ?? globalThis.fetch.bind(globalThis)
@@ -4374,7 +4428,7 @@ class he {
4374
4428
  if (a instanceof Response)
4375
4429
  return a;
4376
4430
  }
4377
- return this._options.timeout === !1 ? this._options.fetch(this.request.clone()) : s1(this.request.clone(), this.abortController, this._options);
4431
+ return this._options.timeout === !1 ? this._options.fetch(this.request.clone()) : n1(this.request.clone(), this.abortController, this._options);
4378
4432
  }
4379
4433
  /* istanbul ignore next */
4380
4434
  _stream(e, a) {
@@ -4386,11 +4440,11 @@ class he {
4386
4440
  headers: e.headers
4387
4441
  })) : new globalThis.Response(new globalThis.ReadableStream({
4388
4442
  async start(o) {
4389
- const d = e.body.getReader();
4443
+ const r = e.body.getReader();
4390
4444
  a && a({ percent: 0, transferredBytes: 0, totalBytes: t }, new Uint8Array());
4391
- async function n() {
4392
- const { done: g, value: k } = await d.read();
4393
- if (g) {
4445
+ async function s() {
4446
+ const { done: h, value: k } = await r.read();
4447
+ if (h) {
4394
4448
  o.close();
4395
4449
  return;
4396
4450
  }
@@ -4399,9 +4453,9 @@ class he {
4399
4453
  const C = t === 0 ? 0 : f / t;
4400
4454
  a({ percent: C, transferredBytes: f, totalBytes: t }, k);
4401
4455
  }
4402
- o.enqueue(k), await n();
4456
+ o.enqueue(k), await s();
4403
4457
  }
4404
- await n();
4458
+ await s();
4405
4459
  }
4406
4460
  }), {
4407
4461
  status: e.status,
@@ -4411,12 +4465,12 @@ class he {
4411
4465
  }
4412
4466
  }
4413
4467
  /*! MIT License © Sindre Sorhus */
4414
- const Ae = (c) => {
4468
+ const Ie = (c) => {
4415
4469
  const e = (a, t) => he.create(a, ae(c, t));
4416
4470
  for (const a of tc)
4417
4471
  e[a] = (t, f) => he.create(t, ae(c, f, { method: a }));
4418
- return e.create = (a) => Ae(ae(a)), e.extend = (a) => Ae(ae(c, a)), e.stop = fc, e;
4419
- }, p1 = Ae(), h1 = p1, u1 = h1.extend({
4472
+ return e.create = (a) => Ie(ae(a)), e.extend = (a) => Ie(ae(c, a)), e.stop = fc, e;
4473
+ }, p1 = Ie(), h1 = p1, u1 = h1.extend({
4420
4474
  hooks: {
4421
4475
  beforeRequest: [
4422
4476
  () => {
@@ -4425,22 +4479,22 @@ const Ae = (c) => {
4425
4479
  }
4426
4480
  });
4427
4481
  async function g1(c, e) {
4428
- const { onmessage: a, onclose: t, ...f } = e, o = async (d, n) => {
4429
- const { value: g, done: k } = await n.read();
4430
- k ? (d.close(), t == null || t()) : (a == null || a(g), d.enqueue(g), o(d, n));
4482
+ const { onmessage: a, onclose: t, ...f } = e, o = async (r, s) => {
4483
+ const { value: h, done: k } = await s.read();
4484
+ k ? (r.close(), t == null || t()) : (a == null || a(h), r.enqueue(h), o(r, s));
4431
4485
  };
4432
- return f.body && typeof f.body == "object" && (f.body = JSON.stringify(f.body)), console.log("Fetching:", f), fetch(c, f).then((d) => {
4433
- const n = d.body.getReader();
4486
+ return f.body && typeof f.body == "object" && (f.body = JSON.stringify(f.body)), console.log("Fetching:", f), fetch(c, f).then((r) => {
4487
+ const s = r.body.getReader();
4434
4488
  return new ReadableStream({
4435
4489
  start(k) {
4436
4490
  o(
4437
4491
  k,
4438
- n
4492
+ s
4439
4493
  );
4440
4494
  }
4441
4495
  });
4442
4496
  }).then(
4443
- (d) => new Response(d, {
4497
+ (r) => new Response(r, {
4444
4498
  headers: { "Content-Type": "text/html" }
4445
4499
  }).text()
4446
4500
  );
@@ -4463,15 +4517,15 @@ async function m1(c, e) {
4463
4517
  }
4464
4518
  }
4465
4519
  var y1 = Object.defineProperty, v1 = Object.getOwnPropertyDescriptor, v = (c, e, a, t) => {
4466
- for (var f = t > 1 ? void 0 : t ? v1(e, a) : e, o = c.length - 1, d; o >= 0; o--)
4467
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
4520
+ for (var f = t > 1 ? void 0 : t ? v1(e, a) : e, o = c.length - 1, r; o >= 0; o--)
4521
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
4468
4522
  return t && f && y1(e, a, f), f;
4469
4523
  };
4470
- const de = me.noConflict();
4471
- de.setLevel("info");
4472
- let u = class extends S {
4524
+ const re = me.noConflict();
4525
+ re.setLevel("info");
4526
+ let m = class extends S {
4473
4527
  constructor() {
4474
- super(...arguments), this.store = new Ne(this, s), this.displayLicense = !1, this.name = "ChatBot", this.orgId = "", this.botId = "", this.url = "ws://localhost:3070", this.logoSvg = ` <svg width="24" height="24" viewBox="0 0 40 40">
4528
+ super(...arguments), this.store = new Ne(this, n), this.displayLicense = !1, this.name = "ChatBot", this.orgId = "", this.botId = "", this.url = "ws://localhost:3070", this.logoSvg = ` <svg width="24" height="24" viewBox="0 0 40 40">
4475
4529
  <path
4476
4530
  d="M34.728 0.275L2.245 15.267c-3.748 1.749 -2.498 7.246 1.499 7.246h13.743v13.743c0 3.998 5.497 5.248 7.246 1.499l14.992 -32.483c1.249 -2.999 -1.999 -6.248 -4.998 -4.998z"
4477
4531
  fill="#E24D42"
@@ -4493,7 +4547,7 @@ let u = class extends S {
4493
4547
  isThinking: !0,
4494
4548
  data: {}
4495
4549
  };
4496
- return s.addMessage(c), c;
4550
+ return n.addMessage(c), c;
4497
4551
  }
4498
4552
  addTestMessage() {
4499
4553
  const c = {
@@ -4504,31 +4558,31 @@ let u = class extends S {
4504
4558
  text: "Long text.The element may not be scrolled completely to the top or bottom depending on the layout of other elements.The element may not be scrolled completely to the top or bottom depending on the layout of other elements."
4505
4559
  }
4506
4560
  };
4507
- return s.addMessage(c), c;
4561
+ return n.addMessage(c), c;
4508
4562
  }
4509
4563
  render() {
4510
- return s.disabled ? (de.error("Bot is disabled"), null) : r`
4511
- <div class="cb-wrapper" style="${s.open ? "display:flex" : "display:none"}">
4564
+ return n.disabled ? (re.error("Bot is disabled"), null) : d`
4565
+ <div class="cb-wrapper" style="${n.open ? "display:flex" : "display:none"}">
4512
4566
  <cb-header title="${this.name}" exportparts="header"></cb-header>
4513
- <cb-message-list .messages=${s.messages} .actions=${s.actions} .form=${s.form} exportparts="form"></cb-message-list>
4567
+ <cb-message-list .messages=${n.messages} .actions=${n.actions} .form=${n.form} exportparts="form"></cb-message-list>
4514
4568
  ${this.renderUserInput()}
4515
4569
  </div>
4516
- <cb-anchor ?open=${s.open}></cb-anchor>
4570
+ <cb-anchor ?open=${n.open}></cb-anchor>
4517
4571
  `;
4518
4572
  }
4519
4573
  renderUserInput() {
4520
- return s.form ? null : r`<cb-user-input ?loading=${this.loading} ?disabled=${this.loading || s.form} ?enable-file-upload=${this.enableFileUpload}></cb-user-input>`;
4574
+ return n.form ? null : d`<cb-user-input ?loading=${this.loading} ?disabled=${this.loading || n.form} ?enable-file-upload=${this.enableFileUpload}></cb-user-input>`;
4521
4575
  }
4522
4576
  connectedCallback() {
4523
- super.connectedCallback(), de.info("connectedCallback"), addEventListener("setting:show", () => {
4577
+ super.connectedCallback(), re.info("connectedCallback"), addEventListener("setting:show", () => {
4524
4578
  this.showSetting = !0;
4525
4579
  }), addEventListener("message:send", this._addMessageHandler.bind(this)), addEventListener("message:remove", this._deleteMessageHandler.bind(this)), addEventListener("setting:confirm", this._settingConfirmHandler.bind(this)), addEventListener("setting:hide", () => {
4526
4580
  this.showSetting = !1;
4527
4581
  }), addEventListener("chatbot:toggle", (c) => {
4528
4582
  const e = c.detail;
4529
- s.open = e.open, s.engage = !1;
4583
+ n.open = e.open, n.engage = !1;
4530
4584
  }), addEventListener("message:clear", () => {
4531
- s.clearMessages();
4585
+ n.clearMessages();
4532
4586
  }), addEventListener("message:send:file", this._sendFileHandler.bind(this)), addEventListener("setting:show", () => {
4533
4587
  this.showSetting = !0;
4534
4588
  }), addEventListener("form:submit", this._formSubmitHandler.bind(this));
@@ -4537,20 +4591,20 @@ let u = class extends S {
4537
4591
  // Use to initialize
4538
4592
  // This is also called when state changes - ??? - i.e. when message added to the array
4539
4593
  updated(c) {
4540
- super.updated(c), c.size > 0 && (de.info("updated,_changedProperties:", c), this._initSetting()), setTimeout(() => {
4594
+ super.updated(c), c.size > 0 && (re.info("updated,_changedProperties:", c), this._initSetting()), setTimeout(() => {
4541
4595
  this._scrollToBottom();
4542
4596
  }, 0);
4543
4597
  }
4544
4598
  // initialize setting
4545
4599
  _initSetting() {
4546
- const c = s.setting;
4547
- c.orgId = this.orgId, c.botId = this.botId, c.url = this.url, c.logoSvg = this.logoSvg, c.botIconSvg = this.botIconSvg, c.userIconSvg = this.userIconSvg, c.systemIconSvg = this.systemIconSvg, s.setSetting(c);
4600
+ const c = n.setting;
4601
+ c.orgId = this.orgId, c.botId = this.botId, c.url = this.url, c.logoSvg = this.logoSvg, c.botIconSvg = this.botIconSvg, c.userIconSvg = this.userIconSvg, c.systemIconSvg = this.systemIconSvg, n.setSetting(c);
4548
4602
  }
4549
4603
  setLoading(c) {
4550
4604
  this.loading = c;
4551
4605
  }
4552
4606
  clearConversation() {
4553
- s.clearConversation();
4607
+ n.clearConversation();
4554
4608
  }
4555
4609
  // check auth
4556
4610
  _checkAuth() {
@@ -4626,11 +4680,11 @@ let u = class extends S {
4626
4680
  */
4627
4681
  _addMessageHandler(c) {
4628
4682
  const e = c.detail;
4629
- s.sendMessage(e);
4683
+ n.sendMessage(e);
4630
4684
  }
4631
4685
  _deleteMessageHandler(c) {
4632
4686
  const e = c.detail;
4633
- s.removeMessage(e.id);
4687
+ n.removeMessage(e.id);
4634
4688
  }
4635
4689
  async _sendFileHandler(c) {
4636
4690
  const e = c.detail, t = {
@@ -4647,11 +4701,11 @@ let u = class extends S {
4647
4701
  }))
4648
4702
  }
4649
4703
  };
4650
- if (s.addMessage(t), this.uploadFileUrl) {
4704
+ if (n.addMessage(t), this.uploadFileUrl) {
4651
4705
  const f = await m1(this.uploadFileUrl, e.files);
4652
4706
  f.code === 0 && f.data && (t.isUploading = !1, t.data = {
4653
4707
  files: f.data
4654
- }, s.updateMessage(t));
4708
+ }, n.updateMessage(t));
4655
4709
  }
4656
4710
  this.emit("chatbot:file:send", {
4657
4711
  detail: {
@@ -4663,7 +4717,7 @@ let u = class extends S {
4663
4717
  // setting confirm handler
4664
4718
  _settingConfirmHandler(c) {
4665
4719
  const e = c.detail;
4666
- s.setSetting(e.setting), this.showSetting = !1, this._checkAuth();
4720
+ n.setSetting(e.setting), this.showSetting = !1, this._checkAuth();
4667
4721
  }
4668
4722
  async _formSubmitHandler(c) {
4669
4723
  }
@@ -4673,64 +4727,64 @@ let u = class extends S {
4673
4727
  (e = this._messageList) == null || e.scrollToBottom();
4674
4728
  }
4675
4729
  };
4676
- u.styles = xc;
4730
+ m.styles = xc;
4677
4731
  v([
4678
4732
  b({ type: Boolean, attribute: "display-license" })
4679
- ], u.prototype, "displayLicense", 2);
4733
+ ], m.prototype, "displayLicense", 2);
4680
4734
  v([
4681
4735
  b({ type: String, attribute: "name" })
4682
- ], u.prototype, "name", 2);
4736
+ ], m.prototype, "name", 2);
4683
4737
  v([
4684
4738
  b({ type: String, attribute: "org-id" })
4685
- ], u.prototype, "orgId", 2);
4739
+ ], m.prototype, "orgId", 2);
4686
4740
  v([
4687
4741
  b({ type: String, attribute: "bot-id" })
4688
- ], u.prototype, "botId", 2);
4742
+ ], m.prototype, "botId", 2);
4689
4743
  v([
4690
4744
  b({ type: String, attribute: "url" })
4691
- ], u.prototype, "url", 2);
4745
+ ], m.prototype, "url", 2);
4692
4746
  v([
4693
4747
  b({ type: String, attribute: "logo-svg" })
4694
- ], u.prototype, "logoSvg", 2);
4748
+ ], m.prototype, "logoSvg", 2);
4695
4749
  v([
4696
4750
  b({ type: String, attribute: "bot-icon-svg" })
4697
- ], u.prototype, "botIconSvg", 2);
4751
+ ], m.prototype, "botIconSvg", 2);
4698
4752
  v([
4699
4753
  b({ type: String, attribute: "user-icon-svg" })
4700
- ], u.prototype, "userIconSvg", 2);
4754
+ ], m.prototype, "userIconSvg", 2);
4701
4755
  v([
4702
4756
  b({ type: String, attribute: "system-icon-svg" })
4703
- ], u.prototype, "systemIconSvg", 2);
4757
+ ], m.prototype, "systemIconSvg", 2);
4704
4758
  v([
4705
4759
  b({ type: Boolean, attribute: "stream" })
4706
- ], u.prototype, "stream", 2);
4760
+ ], m.prototype, "stream", 2);
4707
4761
  v([
4708
4762
  b({ type: Boolean, attribute: "custom-request" })
4709
- ], u.prototype, "customRequest", 2);
4763
+ ], m.prototype, "customRequest", 2);
4710
4764
  v([
4711
4765
  b({ type: Boolean, attribute: "enable-file-upload" })
4712
- ], u.prototype, "enableFileUpload", 2);
4766
+ ], m.prototype, "enableFileUpload", 2);
4713
4767
  v([
4714
4768
  b({ type: String, attribute: "upload-file-url" })
4715
- ], u.prototype, "uploadFileUrl", 2);
4769
+ ], m.prototype, "uploadFileUrl", 2);
4716
4770
  v([
4717
4771
  b({ type: Boolean, attribute: "open" })
4718
- ], u.prototype, "open", 2);
4772
+ ], m.prototype, "open", 2);
4719
4773
  v([
4720
4774
  b({ type: Boolean })
4721
- ], u.prototype, "loading", 2);
4775
+ ], m.prototype, "loading", 2);
4722
4776
  v([
4723
4777
  b({ type: Boolean })
4724
- ], u.prototype, "showSetting", 2);
4778
+ ], m.prototype, "showSetting", 2);
4725
4779
  v([
4726
4780
  b({ type: Boolean })
4727
- ], u.prototype, "showAuthAlert", 2);
4781
+ ], m.prototype, "showAuthAlert", 2);
4728
4782
  v([
4729
4783
  ee("cb-message-list")
4730
- ], u.prototype, "_messageList", 2);
4731
- u = v([
4784
+ ], m.prototype, "_messageList", 2);
4785
+ m = v([
4732
4786
  _("enegelai-bot")
4733
- ], u);
4787
+ ], m);
4734
4788
  export {
4735
- u as default
4789
+ m as default
4736
4790
  };