@enegelai/bot-widget 1.2.5 → 1.2.7

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,9 +1,9 @@
1
- var pt = Object.defineProperty;
2
- var ht = (t, e, o) => e in t ? pt(t, e, { enumerable: !0, configurable: !0, writable: !0, value: o }) : t[e] = o;
3
- var j = (t, e, o) => (ht(t, typeof e != "symbol" ? e + "" : e, o), o);
4
- import { css as x, LitElement as de, html as c, svg as ve } from "lit";
5
- import { property as l, customElement as k, queryAll as ut, query as pe, eventOptions as qe } from "lit/decorators.js";
6
- import { unsafeHTML as q } from "lit-html/directives/unsafe-html.js";
1
+ var ic = Object.defineProperty;
2
+ var lc = (c, e, a) => e in c ? ic(c, e, { enumerable: !0, configurable: !0, writable: !0, value: a }) : c[e] = a;
3
+ var j = (c, e, a) => (lc(c, typeof e != "symbol" ? e + "" : e, a), a);
4
+ import { css as x, LitElement as ie, html as s, svg as ae } from "lit";
5
+ import { property as r, customElement as k, queryAll as pc, query as le, eventOptions as qe } from "lit/decorators.js";
6
+ import { unsafeHTML as B } from "lit-html/directives/unsafe-html.js";
7
7
  import "@shoelace-style/shoelace/dist/themes/light.css";
8
8
  import "@shoelace-style/shoelace/dist/themes/dark.css";
9
9
  import "@shoelace-style/shoelace/dist/components/button/button.js";
@@ -23,40 +23,40 @@ import "@shoelace-style/shoelace/dist/components/spinner/spinner.js";
23
23
  import "@shoelace-style/shoelace/dist/components/alert/alert.js";
24
24
  import { repeat as we } from "lit/directives/repeat.js";
25
25
  import { when as D } from "lit/directives/when.js";
26
- import { until as Ie } from "lit-html/directives/until.js";
27
- import gt from "markdown-it";
28
- import bt from "markdown-it-link-attributes";
26
+ import { until as He } from "lit-html/directives/until.js";
27
+ import hc from "markdown-it";
28
+ import uc from "markdown-it-link-attributes";
29
29
  import "@shoelace-style/shoelace/dist/components/popup/popup.js";
30
- function De(t) {
31
- return typeof t == "function" ? t() : t;
30
+ function De(c) {
31
+ return typeof c == "function" ? c() : c;
32
32
  }
33
- const ce = class ce extends Event {
33
+ const ne = class ne extends Event {
34
34
  /**
35
35
  * @param {string} key of the state that has changed
36
36
  * @param {unknown} value for the changed key
37
37
  */
38
- constructor(o, a, r) {
39
- super(ce.eventName, {
38
+ constructor(a, f, t) {
39
+ super(ne.eventName, {
40
40
  cancelable: !1
41
41
  });
42
42
  j(this, "key");
43
43
  j(this, "state");
44
44
  j(this, "value");
45
- this.key = o, this.value = a, this.state = r;
45
+ this.key = a, this.value = f, this.state = t;
46
46
  }
47
47
  };
48
- j(ce, "eventName", "lit-state-changed");
49
- let B = ce;
50
- const mt = (t, e) => e !== t && (e === e || t === t);
48
+ j(ne, "eventName", "lit-state-changed");
49
+ let R = ne;
50
+ const gc = (c, e) => e !== c && (e === e || c === c);
51
51
  class X extends EventTarget {
52
52
  constructor() {
53
53
  super();
54
54
  // hold a reference to hooks
55
55
  j(this, "hookMap", /* @__PURE__ */ new Map());
56
- this.constructor.finalize(), this.propertyMap && [...this.propertyMap].forEach(([o, a]) => {
57
- if (a.initialValue !== void 0) {
58
- const r = De(a.initialValue);
59
- this[o] = r, a.value = r;
56
+ this.constructor.finalize(), this.propertyMap && [...this.propertyMap].forEach(([a, f]) => {
57
+ if (f.initialValue !== void 0) {
58
+ const t = De(f.initialValue);
59
+ this[a] = t, f.value = t;
60
60
  }
61
61
  });
62
62
  }
@@ -64,31 +64,31 @@ class X extends EventTarget {
64
64
  return this.constructor.propertyMap;
65
65
  }
66
66
  get stateValue() {
67
- return Object.fromEntries([...this.propertyMap].map(([o]) => [o, this[o]]));
67
+ return Object.fromEntries([...this.propertyMap].map(([a]) => [a, this[a]]));
68
68
  }
69
69
  static finalize() {
70
70
  if (this.finalized)
71
71
  return !1;
72
72
  this.finalized = !0;
73
- const o = Object.keys(this.properties || {});
74
- for (const a of o)
75
- this.createProperty(a, this.properties[a]);
73
+ const a = Object.keys(this.properties || {});
74
+ for (const f of a)
75
+ this.createProperty(f, this.properties[f]);
76
76
  return !0;
77
77
  }
78
- static createProperty(o, a) {
78
+ static createProperty(a, f) {
79
79
  this.finalize();
80
- const r = typeof o == "symbol" ? Symbol() : `__${o}`, s = this.getPropertyDescriptor(o, r, a);
81
- Object.defineProperty(this.prototype, o, s);
80
+ const t = typeof a == "symbol" ? Symbol() : `__${a}`, o = this.getPropertyDescriptor(a, t, f);
81
+ Object.defineProperty(this.prototype, a, o);
82
82
  }
83
- static getPropertyDescriptor(o, a, r) {
84
- const s = (r == null ? void 0 : r.hasChanged) || mt;
83
+ static getPropertyDescriptor(a, f, t) {
84
+ const o = (t == null ? void 0 : t.hasChanged) || gc;
85
85
  return {
86
86
  get() {
87
- return this[a];
87
+ return this[f];
88
88
  },
89
- set(n) {
90
- const i = this[o];
91
- this[a] = n, s(n, i) === !0 && this.dispatchStateEvent(o, n, this);
89
+ set(d) {
90
+ const b = this[a];
91
+ this[f] = d, o(d, b) === !0 && this.dispatchStateEvent(a, d, this);
92
92
  },
93
93
  configurable: !0,
94
94
  enumerable: !0
@@ -99,8 +99,8 @@ class X extends EventTarget {
99
99
  * properties marked as skipReset
100
100
  */
101
101
  reset() {
102
- this.hookMap.forEach((o) => o.reset()), [...this.propertyMap].filter(([o, a]) => !(a.skipReset === !0 || a.resetValue === void 0)).forEach(([o, a]) => {
103
- this[o] = a.resetValue;
102
+ this.hookMap.forEach((a) => a.reset()), [...this.propertyMap].filter(([a, f]) => !(f.skipReset === !0 || f.resetValue === void 0)).forEach(([a, f]) => {
103
+ this[a] = f.resetValue;
104
104
  });
105
105
  }
106
106
  /**
@@ -111,31 +111,31 @@ class X extends EventTarget {
111
111
  * @param nameOrNames
112
112
  * @returns a unsubscribe function.
113
113
  */
114
- subscribe(o, a, r) {
115
- a && !Array.isArray(a) && (a = [a]);
116
- const s = (n) => {
117
- (!a || a.includes(n.key)) && o(n.key, n.value, this);
114
+ subscribe(a, f, t) {
115
+ f && !Array.isArray(f) && (f = [f]);
116
+ const o = (d) => {
117
+ (!f || f.includes(d.key)) && a(d.key, d.value, this);
118
118
  };
119
- return this.addEventListener(B.eventName, s, r), () => this.removeEventListener(B.eventName, s);
119
+ return this.addEventListener(R.eventName, o, t), () => this.removeEventListener(R.eventName, o);
120
120
  }
121
- dispatchStateEvent(o, a, r) {
122
- this.dispatchEvent(new B(o, a, r));
121
+ dispatchStateEvent(a, f, t) {
122
+ this.dispatchEvent(new R(a, f, t));
123
123
  }
124
124
  }
125
125
  // a map holding decorators definition.
126
126
  j(X, "propertyMap"), j(X, "properties"), j(X, "finalized", !1);
127
127
  class Fe {
128
- constructor(e, o, a) {
128
+ constructor(e, a, f) {
129
129
  j(this, "host");
130
130
  j(this, "state");
131
131
  j(this, "callback");
132
- this.host = e, this.state = o, this.host.addController(this), this.callback = a || (() => this.host.requestUpdate());
132
+ this.host = e, this.state = a, this.host.addController(this), this.callback = f || (() => this.host.requestUpdate());
133
133
  }
134
134
  hostConnected() {
135
- this.state.addEventListener(B.eventName, this.callback), this.callback();
135
+ this.state.addEventListener(R.eventName, this.callback), this.callback();
136
136
  }
137
137
  hostDisconnected() {
138
- this.state.removeEventListener(B.eventName, this.callback);
138
+ this.state.removeEventListener(R.eventName, this.callback);
139
139
  }
140
140
  }
141
141
  /**
@@ -143,122 +143,122 @@ class Fe {
143
143
  * Copyright 2017 Google LLC
144
144
  * SPDX-License-Identifier: BSD-3-Clause
145
145
  */
146
- const Ue = ({ finisher: t, descriptor: e }) => (o, a) => {
147
- var r;
148
- if (a === void 0) {
149
- const s = (r = o.originalKey) !== null && r !== void 0 ? r : o.key, n = e != null ? { kind: "method", placement: "prototype", key: s, descriptor: e(o.key) } : { ...o, key: s };
150
- return t != null && (n.finisher = function(i) {
151
- t(i, s);
152
- }), n;
146
+ const Ue = ({ finisher: c, descriptor: e }) => (a, f) => {
147
+ var t;
148
+ if (f === void 0) {
149
+ const o = (t = a.originalKey) !== null && t !== void 0 ? t : a.key, d = e != null ? { kind: "method", placement: "prototype", key: o, descriptor: e(a.key) } : { ...a, key: o };
150
+ return c != null && (d.finisher = function(b) {
151
+ c(b, o);
152
+ }), d;
153
153
  }
154
154
  {
155
- const s = o.constructor;
156
- e !== void 0 && Object.defineProperty(o, a, e(a)), t == null || t(s, a);
155
+ const o = a.constructor;
156
+ e !== void 0 && Object.defineProperty(a, f, e(f)), c == null || c(o, f);
157
157
  }
158
158
  };
159
- function L(t) {
159
+ function O(c) {
160
160
  return Ue({
161
161
  // @ts-ignore ctor is typof State and not typeof ReactiveElement
162
- finisher: (e, o) => {
163
- if (Object.getOwnPropertyDescriptor(e.prototype, o))
162
+ finisher: (e, a) => {
163
+ if (Object.getOwnPropertyDescriptor(e.prototype, a))
164
164
  throw new Error("@property must be called before all state decorators");
165
- return e.propertyMap || (e.propertyMap = /* @__PURE__ */ new Map()), e.propertyMap.set(o, { ...t, initialValue: t == null ? void 0 : t.value, resetValue: t == null ? void 0 : t.value }), e.createProperty(o, t);
165
+ return e.propertyMap || (e.propertyMap = /* @__PURE__ */ new Map()), e.propertyMap.set(a, { ...c, initialValue: c == null ? void 0 : c.value, resetValue: c == null ? void 0 : c.value }), e.createProperty(a, c);
166
166
  }
167
167
  });
168
168
  }
169
- function yt(t, e) {
170
- if (t !== null && (e === Boolean || e === Number || e === Array || e === Object))
169
+ function mc(c, e) {
170
+ if (c !== null && (e === Boolean || e === Number || e === Array || e === Object))
171
171
  try {
172
- t = JSON.parse(t);
172
+ c = JSON.parse(c);
173
173
  } catch {
174
- console.warn("cannot parse value", t);
174
+ console.warn("cannot parse value", c);
175
175
  }
176
- return t;
176
+ return c;
177
177
  }
178
178
  new URL(window.location.href);
179
- const ft = {
179
+ const yc = {
180
180
  prefix: "_ls"
181
181
  };
182
- function R(t) {
183
- return t = { ...ft, ...t }, Ue({
182
+ function V(c) {
183
+ return c = { ...yc, ...c }, Ue({
184
184
  // @ts-ignore ctor is typof State and not typeof ReactiveElement
185
- finisher: (e, o) => {
186
- const a = Object.getOwnPropertyDescriptor(e.prototype, o);
187
- if (!a)
185
+ finisher: (e, a) => {
186
+ const f = Object.getOwnPropertyDescriptor(e.prototype, a);
187
+ if (!f)
188
188
  throw new Error("@local-storage decorator need to be called after @property");
189
- const r = `${(t == null ? void 0 : t.prefix) || ""}_${(t == null ? void 0 : t.key) || String(o)}`, s = e.propertyMap.get(o), n = s == null ? void 0 : s.type;
190
- if (s) {
191
- const y = s.initialValue;
192
- s.initialValue = () => yt(localStorage.getItem(r), n) ?? De(y), e.propertyMap.set(o, { ...s, ...t });
189
+ const t = `${(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;
190
+ if (o) {
191
+ const m = o.initialValue;
192
+ o.initialValue = () => mc(localStorage.getItem(t), d) ?? De(m), e.propertyMap.set(a, { ...o, ...c });
193
193
  }
194
- const i = a == null ? void 0 : a.set, m = {
195
- ...a,
196
- set: function(y) {
197
- y !== void 0 && localStorage.setItem(r, n === Object || n === Array ? JSON.stringify(y) : y), i && i.call(this, y);
194
+ const b = f == null ? void 0 : f.set, g = {
195
+ ...f,
196
+ set: function(m) {
197
+ m !== void 0 && localStorage.setItem(t, d === Object || d === Array ? JSON.stringify(m) : m), b && b.call(this, m);
198
198
  }
199
199
  };
200
- Object.defineProperty(e.prototype, o, m);
200
+ Object.defineProperty(e.prototype, a, g);
201
201
  }
202
202
  });
203
203
  }
204
- var vt = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
205
- function wt(t) {
206
- return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t;
204
+ var vc = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
205
+ function wc(c) {
206
+ return c && c.__esModule && Object.prototype.hasOwnProperty.call(c, "default") ? c.default : c;
207
207
  }
208
208
  var Ze = { exports: {} };
209
- (function(t) {
210
- (function(e, o) {
211
- t.exports ? t.exports = o() : e.log = o();
212
- })(vt, function() {
209
+ (function(c) {
210
+ (function(e, a) {
211
+ c.exports ? c.exports = a() : e.log = a();
212
+ })(vc, function() {
213
213
  var e = function() {
214
- }, o = "undefined", a = typeof window !== o && typeof window.navigator !== o && /Trident\/|MSIE /.test(window.navigator.userAgent), r = [
214
+ }, a = "undefined", f = typeof window !== a && typeof window.navigator !== a && /Trident\/|MSIE /.test(window.navigator.userAgent), t = [
215
215
  "trace",
216
216
  "debug",
217
217
  "info",
218
218
  "warn",
219
219
  "error"
220
220
  ];
221
- function s(u, f) {
222
- var w = u[f];
221
+ function o(p, y) {
222
+ var w = p[y];
223
223
  if (typeof w.bind == "function")
224
- return w.bind(u);
224
+ return w.bind(p);
225
225
  try {
226
- return Function.prototype.bind.call(w, u);
226
+ return Function.prototype.bind.call(w, p);
227
227
  } catch {
228
228
  return function() {
229
- return Function.prototype.apply.apply(w, [u, arguments]);
229
+ return Function.prototype.apply.apply(w, [p, arguments]);
230
230
  };
231
231
  }
232
232
  }
233
- function n() {
233
+ function d() {
234
234
  console.log && (console.log.apply ? console.log.apply(console, arguments) : Function.prototype.apply.apply(console.log, [console, arguments])), console.trace && console.trace();
235
235
  }
236
- function i(u) {
237
- return u === "debug" && (u = "log"), typeof console === o ? !1 : u === "trace" && a ? n : console[u] !== void 0 ? s(console, u) : console.log !== void 0 ? s(console, "log") : e;
236
+ function b(p) {
237
+ return p === "debug" && (p = "log"), typeof console === a ? !1 : p === "trace" && f ? d : console[p] !== void 0 ? o(console, p) : console.log !== void 0 ? o(console, "log") : e;
238
238
  }
239
- function g(u, f) {
240
- for (var w = 0; w < r.length; w++) {
241
- var h = r[w];
242
- this[h] = w < u ? e : this.methodFactory(h, u, f);
239
+ function h(p, y) {
240
+ for (var w = 0; w < t.length; w++) {
241
+ var l = t[w];
242
+ this[l] = w < p ? e : this.methodFactory(l, p, y);
243
243
  }
244
244
  this.log = this.debug;
245
245
  }
246
- function m(u, f, w) {
246
+ function g(p, y, w) {
247
247
  return function() {
248
- typeof console !== o && (g.call(this, f, w), this[u].apply(this, arguments));
248
+ typeof console !== a && (h.call(this, y, w), this[p].apply(this, arguments));
249
249
  };
250
250
  }
251
- function y(u, f, w) {
252
- return i(u) || m.apply(this, arguments);
251
+ function m(p, y, w) {
252
+ return b(p) || g.apply(this, arguments);
253
253
  }
254
- function be(u, f, w) {
255
- var h = this, Le;
256
- f = f ?? "WARN";
254
+ function ge(p, y, w) {
255
+ var l = this, Oe;
256
+ y = y ?? "WARN";
257
257
  var A = "loglevel";
258
- typeof u == "string" ? A += ":" + u : typeof u == "symbol" && (A = void 0);
259
- function lt(p) {
260
- var T = (r[p] || "silent").toUpperCase();
261
- if (!(typeof window === o || !A)) {
258
+ typeof p == "string" ? A += ":" + p : typeof p == "symbol" && (A = void 0);
259
+ function rc(i) {
260
+ var T = (t[i] || "silent").toUpperCase();
261
+ if (!(typeof window === a || !A)) {
262
262
  try {
263
263
  window.localStorage[A] = T;
264
264
  return;
@@ -270,26 +270,26 @@ var Ze = { exports: {} };
270
270
  }
271
271
  }
272
272
  }
273
- function He() {
274
- var p;
275
- if (!(typeof window === o || !A)) {
273
+ function Ie() {
274
+ var i;
275
+ if (!(typeof window === a || !A)) {
276
276
  try {
277
- p = window.localStorage[A];
277
+ i = window.localStorage[A];
278
278
  } catch {
279
279
  }
280
- if (typeof p === o)
280
+ if (typeof i === a)
281
281
  try {
282
282
  var T = window.document.cookie, Y = T.indexOf(
283
283
  encodeURIComponent(A) + "="
284
284
  );
285
- Y !== -1 && (p = /^([^;]+)/.exec(T.slice(Y))[1]);
285
+ Y !== -1 && (i = /^([^;]+)/.exec(T.slice(Y))[1]);
286
286
  } catch {
287
287
  }
288
- return h.levels[p] === void 0 && (p = void 0), p;
288
+ return l.levels[i] === void 0 && (i = void 0), i;
289
289
  }
290
290
  }
291
- function ct() {
292
- if (!(typeof window === o || !A)) {
291
+ function sc() {
292
+ if (!(typeof window === a || !A)) {
293
293
  try {
294
294
  window.localStorage.removeItem(A);
295
295
  return;
@@ -301,54 +301,54 @@ var Ze = { exports: {} };
301
301
  }
302
302
  }
303
303
  }
304
- h.name = u, h.levels = {
304
+ l.name = p, l.levels = {
305
305
  TRACE: 0,
306
306
  DEBUG: 1,
307
307
  INFO: 2,
308
308
  WARN: 3,
309
309
  ERROR: 4,
310
310
  SILENT: 5
311
- }, h.methodFactory = w || y, h.getLevel = function() {
312
- return Le;
313
- }, h.setLevel = function(p, T) {
314
- if (typeof p == "string" && h.levels[p.toUpperCase()] !== void 0 && (p = h.levels[p.toUpperCase()]), typeof p == "number" && p >= 0 && p <= h.levels.SILENT) {
315
- if (Le = p, T !== !1 && lt(p), g.call(h, p, u), typeof console === o && p < h.levels.SILENT)
311
+ }, l.methodFactory = w || m, l.getLevel = function() {
312
+ return Oe;
313
+ }, l.setLevel = function(i, T) {
314
+ if (typeof i == "string" && l.levels[i.toUpperCase()] !== void 0 && (i = l.levels[i.toUpperCase()]), typeof i == "number" && i >= 0 && i <= l.levels.SILENT) {
315
+ if (Oe = i, T !== !1 && rc(i), h.call(l, i, p), typeof console === a && i < l.levels.SILENT)
316
316
  return "No console available for logging";
317
317
  } else
318
- throw "log.setLevel() called with invalid level: " + p;
319
- }, h.setDefaultLevel = function(p) {
320
- f = p, He() || h.setLevel(p, !1);
321
- }, h.resetLevel = function() {
322
- h.setLevel(f, !1), ct();
323
- }, h.enableAll = function(p) {
324
- h.setLevel(h.levels.TRACE, p);
325
- }, h.disableAll = function(p) {
326
- h.setLevel(h.levels.SILENT, p);
318
+ throw "log.setLevel() called with invalid level: " + i;
319
+ }, l.setDefaultLevel = function(i) {
320
+ y = i, Ie() || l.setLevel(i, !1);
321
+ }, l.resetLevel = function() {
322
+ l.setLevel(y, !1), sc();
323
+ }, l.enableAll = function(i) {
324
+ l.setLevel(l.levels.TRACE, i);
325
+ }, l.disableAll = function(i) {
326
+ l.setLevel(l.levels.SILENT, i);
327
327
  };
328
- var ye = He();
329
- ye == null && (ye = f), h.setLevel(ye, !1);
328
+ var ye = Ie();
329
+ ye == null && (ye = y), l.setLevel(ye, !1);
330
330
  }
331
- var S = new be(), me = {};
332
- S.getLogger = function(f) {
333
- if (typeof f != "symbol" && typeof f != "string" || f === "")
331
+ var S = new ge(), me = {};
332
+ S.getLogger = function(y) {
333
+ if (typeof y != "symbol" && typeof y != "string" || y === "")
334
334
  throw new TypeError("You must supply a name when creating a logger.");
335
- var w = me[f];
336
- return w || (w = me[f] = new be(
337
- f,
335
+ var w = me[y];
336
+ return w || (w = me[y] = new ge(
337
+ y,
338
338
  S.getLevel(),
339
339
  S.methodFactory
340
340
  )), w;
341
341
  };
342
- var it = typeof window !== o ? window.log : void 0;
342
+ var bc = typeof window !== a ? window.log : void 0;
343
343
  return S.noConflict = function() {
344
- return typeof window !== o && window.log === S && (window.log = it), S;
344
+ return typeof window !== a && window.log === S && (window.log = bc), S;
345
345
  }, S.getLoggers = function() {
346
346
  return me;
347
347
  }, S.default = S, S;
348
348
  });
349
349
  })(Ze);
350
- var xt = Ze.exports;
351
- const he = /* @__PURE__ */ wt(xt), kt = x`
350
+ var xc = Ze.exports;
351
+ const pe = /* @__PURE__ */ wc(xc), kc = x`
352
352
  :host {
353
353
  }
354
354
  .cb-wrapper {
@@ -415,7 +415,7 @@ const he = /* @__PURE__ */ wt(xt), kt = x`
415
415
  border-radius: 0;
416
416
  }
417
417
  }
418
- `, I = x`
418
+ `, H = x`
419
419
  :host {
420
420
  --primary-color: var(--sl-color-primary-600);
421
421
  }
@@ -483,7 +483,7 @@ const he = /* @__PURE__ */ wt(xt), kt = x`
483
483
  text-decoration: underline;
484
484
  }
485
485
  `, Ne = x`
486
- ${I}
486
+ ${H}
487
487
 
488
488
  :host {
489
489
  display: inline-flex;
@@ -505,99 +505,97 @@ const he = /* @__PURE__ */ wt(xt), kt = x`
505
505
  color: white;
506
506
  }
507
507
  `;
508
- var _t = Object.defineProperty, Ct = Object.getOwnPropertyDescriptor, Me = (t, e, o, a) => {
509
- for (var r = a > 1 ? void 0 : a ? Ct(e, o) : e, s = t.length - 1, n; s >= 0; s--)
510
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
511
- return a && r && _t(e, o, r), r;
508
+ var _c = Object.defineProperty, Cc = Object.getOwnPropertyDescriptor, Me = (c, e, a, f) => {
509
+ for (var t = f > 1 ? void 0 : f ? Cc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
510
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
511
+ return f && t && _c(e, a, t), t;
512
512
  };
513
- let W = class extends de {
513
+ let W = class extends ie {
514
514
  constructor() {
515
515
  super(...arguments), this.color = "primary", this.svg = "";
516
516
  }
517
517
  render() {
518
- return c`<span class="cb-icon color-${this.color}" part="base"
519
- >${q(this.svg)}</span
520
- >`;
518
+ return s`<span class="cb-icon" part="base">${B(this.svg)}</span>`;
521
519
  }
522
520
  };
523
521
  W.styles = Ne;
524
522
  Me([
525
- l({ type: String })
523
+ r({ type: String })
526
524
  ], W.prototype, "color", 2);
527
525
  Me([
528
- l({ type: String })
526
+ r({ type: String })
529
527
  ], W.prototype, "svg", 2);
530
528
  W = Me([
531
529
  k("cb-icon")
532
530
  ], W);
533
- let $t = (t) => crypto.getRandomValues(new Uint8Array(t)), jt = (t, e, o) => {
534
- let a = (2 << Math.log(t.length - 1) / Math.LN2) - 1, r = -~(1.6 * a * e / t.length);
535
- return (s = e) => {
536
- let n = "";
531
+ let $c = (c) => crypto.getRandomValues(new Uint8Array(c)), jc = (c, e, a) => {
532
+ let f = (2 << Math.log(c.length - 1) / Math.LN2) - 1, t = -~(1.6 * f * e / c.length);
533
+ return (o = e) => {
534
+ let d = "";
537
535
  for (; ; ) {
538
- let i = o(r), g = r;
539
- for (; g--; )
540
- if (n += t[i[g] & a] || "", n.length === s)
541
- return n;
536
+ let b = a(t), h = t;
537
+ for (; h--; )
538
+ if (d += c[b[h] & f] || "", d.length === o)
539
+ return d;
542
540
  }
543
541
  };
544
- }, Mt = (t, e = 21) => jt(t, e, $t);
545
- const St = Mt("1234567890abcdefghijklmnopqrstuvwxyz", 10);
546
- function xe(t = 10) {
547
- return St(t);
542
+ }, Mc = (c, e = 21) => jc(c, e, $c);
543
+ const Sc = Mc("1234567890abcdefghijklmnopqrstuvwxyz", 10);
544
+ function xe(c = 10) {
545
+ return Sc(c);
548
546
  }
549
- function At(t) {
550
- return new Promise((e, o) => {
547
+ function Ac(c) {
548
+ return new Promise((e, a) => {
551
549
  try {
552
- navigator.clipboard.writeText(t).then(() => {
553
- e(t);
550
+ navigator.clipboard.writeText(c).then(() => {
551
+ e(c);
554
552
  });
555
- } catch (a) {
556
- o(a);
553
+ } catch (f) {
554
+ a(f);
557
555
  }
558
556
  });
559
557
  }
560
- function Ot(t = !0) {
558
+ function Lc(c = !0) {
561
559
  return new Promise((e) => {
562
- const o = document.createElement("input");
563
- o.type = "file", t && (o.multiple = !0), o.style.display = "none", o.addEventListener("change", () => {
564
- const a = Array.prototype.slice.call(o.files);
565
- e(a);
566
- }), o.click();
560
+ const a = document.createElement("input");
561
+ a.type = "file", c && (a.multiple = !0), a.style.display = "none", a.addEventListener("change", () => {
562
+ const f = Array.prototype.slice.call(a.files);
563
+ e(f);
564
+ }), a.click();
567
565
  });
568
566
  }
569
- const _ = he.noConflict();
567
+ const _ = pe.noConflict();
570
568
  _.setLevel("info");
571
- class Lt {
569
+ class Oc {
572
570
  constructor(e = {}) {
573
- 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 = (o) => new Promise((a) => setTimeout(a, o)), _.info(`WSC: Created, url: ${this.url}`);
571
+ 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((f) => setTimeout(f, a)), _.info(`WSC: Created, url: ${this.url}`);
574
572
  }
575
573
  connect(e = {}) {
576
574
  if (this.url = (e == null ? void 0 : e.url) || this.url, this.connected = !1, !this.url)
577
575
  return _.error("WSC: URL must be provided to connect"), null;
578
- const o = this.url;
579
- _.info(`WSC: Connecting to ${o} ...`), this._ws = new WebSocket(o);
580
- let a = setTimeout(() => {
576
+ const a = this.url;
577
+ _.info(`WSC: Connecting to ${a} ...`), this._ws = new WebSocket(a);
578
+ let f = setTimeout(() => {
581
579
  _.error("WSC: connected message not received in time - terminating"), this._ws.close(), this._ws = null, this.connected = !1;
582
580
  }, 15e3);
583
581
  this._ws.onopen = () => {
584
- _.info(`WSC: Connection to ${o} opened`);
585
- }, this._ws.onmessage = (r) => {
586
- let s = (r == null ? void 0 : r.data) || null;
587
- if (!s)
582
+ _.info(`WSC: Connection to ${a} opened`);
583
+ }, this._ws.onmessage = (t) => {
584
+ let o = (t == null ? void 0 : t.data) || null;
585
+ if (!o)
588
586
  return;
589
- let n = null;
587
+ let d = null;
590
588
  try {
591
- n = JSON.parse(s);
589
+ d = JSON.parse(o);
592
590
  } catch {
593
- _.error(`Failed to parse message: ${s}`);
591
+ _.error(`Failed to parse message: ${o}`);
594
592
  return;
595
593
  }
596
- (n == null ? void 0 : n.type) === "connected" && (_.info(`WS[${this.id}] Connected`), clearTimeout(a), this.connected = !0, this.sendQueuedMessages()), this.handleWscMessage(n);
597
- }, this._ws.onerror = (r) => {
598
- _.error("WSC: Socket error"), clearTimeout(a), this.connected = !1, this._ws = null;
599
- }, this._ws.onclose = (r) => {
600
- _.info(`WSC: Closed - code:${r.code}, reason:"${r.reason}"`), this.connected = !1, this._ws = null, this.reconnect();
594
+ (d == null ? void 0 : d.type) === "connected" && (_.info(`WS[${this.id}] Connected`), clearTimeout(f), this.connected = !0, this.sendQueuedMessages()), this.handleWscMessage(d);
595
+ }, this._ws.onerror = (t) => {
596
+ _.error("WSC: Socket error"), clearTimeout(f), this.connected = !1, this._ws = null;
597
+ }, this._ws.onclose = (t) => {
598
+ _.info(`WSC: Closed - code:${t.code}, reason:"${t.reason}"`), this.connected = !1, this._ws = null, this.reconnect();
601
599
  };
602
600
  }
603
601
  reconnect() {
@@ -620,11 +618,11 @@ class Lt {
620
618
  }
621
619
  // Attempt to connect, and reconnect if failed
622
620
  async startOld() {
623
- let e = 1, o = !0;
624
- for (; o; ) {
621
+ let e = 1, a = !0;
622
+ for (; a; ) {
625
623
  if (_.info(`WSC: start: connecting, attempt ${e}`), await this.connect(), this.connected)
626
624
  return _.info("WSC: connected"), !0;
627
- e++, o = e <= 4, o && await this.pause(1e3);
625
+ e++, a = e <= 4, a && await this.pause(1e3);
628
626
  }
629
627
  return _.error(`WSC: start: failed to connect after ${e} attempts, exiting`), !1;
630
628
  }
@@ -676,22 +674,23 @@ class Lt {
676
674
  });
677
675
  }*/
678
676
  }
679
- var Ht = Object.defineProperty, It = Object.getOwnPropertyDescriptor, H = (t, e, o, a) => {
680
- for (var r = a > 1 ? void 0 : a ? It(e, o) : e, s = t.length - 1, n; s >= 0; s--)
681
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
682
- return a && r && Ht(e, o, r), r;
677
+ const Ic = "fffbd0c40003a861a6f64deb05ce8fbd1dc1ee6979000bf3230f3195138b950cbe3649439256307747d31c26065d09cfae70d799f0a043c6a90008c0101188082314680d008619c9079b61dc806a921a220095277a60d4131e44143d53814e10f4d06ba6491eb478900a8d59016632a23e0fa358875c770146cc650c1c499dcb9b0965d7500106c321427219428febbdafb2b5d76979a75ae40018d025f96f71bad4b0257666051808e5b74c34bf2db9660bb0e24b2a35886616f617013a24104242304600910b1130dc7b4e81750bb1216e880432ac0d75b0a2a1834f45e8e9a279a9c6c22cc9a7e3ac01cc5335e8c0d97180c960bad7998ce9ac025a2f1a0c888e02c46508045a96a20a60c91980100828a917425f96ddc64bc2ea19146c50b00bde68319005d85d10e462314ae197f0b48c74bfe986ced9dac3a9bbfad7e8f7ac2a525253c6e36cad4dd7c20e2ec4842dba61cbf30f0f7d628635005a66e63ec63560f22a48c694034a695617e603c12c05077310c0923018053379a48d1e921e409b28546c46619d8fa6c9b019ea20762d318e34c6291699d98662a61861204fda2a7933d57c1d023391f8605262a1598449c1ca332e084cb25a3198ac94666361b99f05c67c1aba0151b18d456ec8e0b4c667924153ba632409114cc587c7867ca8c047dcd7a834bc8d2a033a141df48ab82a803bd1a8651a215e356c6161b062114cb841dd89589b05f0d10ad255c4d70d8ad245e4abcd6b33fca8d6af5cc3db8d9244511ab2206a56c885690ad12cc1ba16308528d539daa40b22baf35eb61a7044a988132e926b754d82ea8ca85199ad5c42c0d62d35eb8d7301d56ef5b26c451748198c2a22c319b24ab67a246b186c8af0d54354c0957c342d9a2a4d7b3245e585c4d7254e107501450bb46abbfa38b2331996d9bae08953352c48af43d5c7b08b6572a44e0b11775fd8cbb2b0b0343230c6c5add2ca5ac8d549765977ff78e59659ca49adde749c6789409753bcff43d1a8d46a532da5a5a5a5a5a5a5a6a6a6a6a6a6a6a6a6ab671c71c71c6ae4141414140a0a0a0a0c2b06e0b039c1829859998b165991a5d2aa598e0a714183727471921e5721a1037a9c2fb7a1b9c0dc99c6ab19b821219de39219b82a521908908987d2ab1aab194159219cb31211fffbd2c42383f4bda0d20ffba7c624b3dd01eee938b82f149f14b82951c14d290908c90d294c90a598b0948572ce584a434a54a52b4a42c3829592199219219a52921160908d295294b1c79b70dc9b72dc9b70dc15b71e6dc37058e3cdb8e34db9e3cadb82c37056dc95f1e7c6f1e58e3cadb8f2c4845721f96242f2c485e7214865721f962422c484721c845890cb121f9c872116242f2b908e4390bfcae432b908ae43f390e432c486721c85e5890cae432b90ce42908b121f9c8721962432c484721c865890ce4290bcae432b90bcae43390a432c485e58908e4290bcb121f95c86721c865890cae432b90cae42ff390e422b90cae422b90fcb121795c865721795c86721487e721c87e58908ae422b90bcb12195c845721796242f2c48658908ae43ff390e43fff390e422c4865890cb121ff9c872196243f2b90bcae42fff2c48458908b12116243f2b90ffcae43fff2c485e5890bfffcae422c485fe5721796243f2b90bfcae42ffff2b90ffcae432c48460a40a6618626a61ce3d466883d6645657458106350e2d6321a39532150c231a421532413d3399952b690e8430cc534d4ad0638ad993418742c24072f7385897cae5e348120397e5e348521397e5e2b734cd8364b06c160d93364d82c0ea6838ea63a0e863a8e9e581d4ca0283cd5d284b050795942650143e6e1c1b87058706e5c95b9370e4dcb92c382b706e1c15d22c522ba7e574cae9f9d2a458a474a995d32c52ff2ba4574cb148b14bfcb14cb148ae99629795d22c532c533a74cae995d2f3a74ce9533a74cb148e9d2f3a74ce9d22ba474e99d2a458a674a99d3a65748ae9f9d2a474a91629962995d23a748e9522c53f3a74bce9d3f2ba65748afa9f5ea57d4b1d3cafa963a163a7963a163a1f5ebfe57d3fcfa742bea7d7a15f42bea7d7a1f5e9e7d3af963a9f4ea57d4fa752c74f2c75f2c743ebd3fcafaf963a7ff963a79f4e9fe57d7ce9d22c532ba474a91d3a674a97962996297f9d2a658a458a658a458a4574cae916299d2a474a995d22c522c533a54bcae915d32c522c52f3a548ae99629795d3f30c6831b320f483c329501f8331a98f233a001f9342646273295483d326307f03331098c307e52ae3189883d3186475630e704da30e744db320f0627329501f831040411307e4fffbd2c42383f3fdacd40ff6b68668b3dc81eeed7841031044a54318984112a8c4e641e83f26208082260fc0822560fc183f041e183f00fc183f20fc983f20fc983f20fc95896e60bf863460bf86365805f8c17e0c68ac31b2b5f8f1bc68d7fc68d7f5fcaf1b35f97e35f97e2c2fc585fcb0bf9e36bf9617e2b5f8d7f5f8ad7f2c2fc6bfafe56bf9e34bf79617f3c6f1bf2b5fcb0bf9afcbf95afc585f8d7e5fcb0bf611fc419f8f08fe7833f1e0cfcf847f308fe7833f1f067e3c19f9067e308fe7c23f8c23f9067e40ff3f8067e20cfc047f00cfc611fc81fe3f207f9fc033f211fcc0ff1f903fc7e423f803fcfe423f903fcfe00ff3f8833f011fc847f211fc047f303fc7e211fc01fe3f211fc033f011fc7067e40ff3f908fe023f808fe00ff1f903fcfe019f803fc7e419f808fe019f9067e40ff1f9067e211fc01fe3f3c19f8e0cfcc23f9067e40ff3f8067e023f808fe60cfcc19f8c19f9847f211fc047f011fc033f1067e60cfcf833f25808830881d435e33e33263062346d46d31d427b31d41d4346d3c633201d5308827a308846d351212e32267a39ea7a34b92f3221d537552f32252e2b4b8dd5c80c88c84e7a4bcb0ea9ba9e315a5e697baa644cf473da5e58220c894bcb0449a5e449612ff2c110584bcb0447991044191244160892b4bfcc88224ac882b2a4d0a114ca8114c44114ac442c089e562279588856c458633e362f3e362362623e3e3f2be23e3e32b633e263f2b88fffff2c44f95c47f96227ce2224e2620b11071310713105889389882c44f95c41c44496220ae23cae20e2627cb1127111257105889f2c449c4c416220ae24e2224e2620ae24b1105713e588838988389892c44f9c44416224e2220ae20e2223cae27cae23ce2220e2620b1105711e5712571271111e57127131257127111271313fe713125712588938988388892c4479c4c41c44416224ae24e2220ae20e2620b11058882c44ffff95c4795c4ff95c415c416220ae20ae20b11271310571271313e58882c44f95c49c4c4ff95c416224e2627fce2224e2220e2220ae20b111e57107111071111fe5888ff389882c03a18838cc99ca16b996b8501ad09db99db86c161e34cb0c730c6641d4c664f7cc570e54c570570cb08734d2b4b08ac360cb5c284c86c574c57428fffbd2c41e03f239a2e40f7370c65fb39cc1eeed980c364364c360730c364edcc360364db2d936c734f9bcd3e6b60db0d82c734db3cd36cb60adb27068399d732588319d20e7068399d20de5850f9d75405850796140575c3535335252353c32c611e1291a9e11614cd4d4cf0d4cf0948e8684e8684b14074140574058a12c509d0d09d0d09d0509d0501d050796363fcaf64af67ffcb1b257b1fe58d8f2b74375742b742c3a9baba15ba161d0dd1d4add0b0e9e6eaea56ea56ea5874374752c5096280e8680b14057405743e57407414058a12ba12ba02c50f96280b141e58a12ba12c5096280add0dd1d0dd1d0dd5d3cb0ea6eaea6e8ea58752b7537574374742b74374752b752c3a95ba15ba9baba1ba3a161d0dd1d4b0ea58742c3a7ffff96367ffffffffffffffffffffffcb0e856ebe5874f2c3a961d4dd1d7fcadd4b0e9e6e8ea58752b752c3af961d4add3cb0e86e8ebfe6e8ea587537474f2c3a161d7cdd5d4dd1d0dd5d4add3cc388588c9e8220c4b91b4c989388c58898cc5b4740c2a48c8c58c38ccb8898cc9ec220cc84c80c4b84bcc224754d4491b4c62988c63588ce2b88d2e224d2e224b0449f8f3d1a5c9719104499124415a5e6971106973aa58750d2e220d2e220d898cf8d8cd8d8cd898cd8d88ad8cd898cd8988b1c7e586336363f2c711b1311b1319618cd8d8cb0c6586236262363632c319618ccb8b8cbcbcb05c565c582e32e2e32f2f32f2e32f2f32f2f32f2f2c1796220ae24ae20b113e71313fe71111e5888388892b882c449b1b115b11b1311b13116188d898fcb0c66c6c45862363632b632b63ff2c319b1b1796224ae24b111e711125711e5713e5713e58882b882c441c4c4f9c4c4ff9c4c4f9c44495c49c4c416224ae24e2224e2627fcae20b1105711e5711fe7111071111fe57125713e57106c6c46c6c45863f2c3195b115b19b131796188ad8bcd8988b0c45862363632c319b1b19b131f9618bcad8fcd898cad8bcb112571257125888f2c44ff95c495c4ff95c47f96220e2624b11258882c441c444ffff96224b112571257105711e588838989f2c44d3045045310b0a932632e232630623562062316226236620e32c1b198850229885919194a88598220e81fc431160623589e23588622b18cde2988de3788c63588fefffbd2c42083f3559ee80f774bc682b4dcc1eee9782388c6278cb0b1161623388e32b588ac62398d633188632c0c46318c66319c46710c66310c66b1ac66318c46310c46310c46710c6563118c431f98c63199c63118c631960e3f318862f2c0c7e6310c45818cb031960622bc678f1163196319e3c658c478b1163179e2c658c65788f1623c58cb188f1622bc678b115e33c788f1623c58caf195e32bc5e71221c5885710e24438914ae29c58a71621c48a588a5714b110e2c438910e245f38b13ce2442b8a71621c58a5889e5714ae295c42c442b8a5713cae29c48858885714b110e24538910af115e22bc658c478b17f95e33c588af1ff9e2c678b19e2c678f1163179e2c478b1ff95e3f2c62f3c78fcb18bcaf196317f95e22bc7e5788f163f2c632bc5fe58c678f195e22c62f3c78bfcaf1163196317f95e32c622c633c58caf11e3c4578caf1f95e32c633c78bfcf1622c632c633c588b188af19e3c5e58c658c678f11e3c678f17ff96319829829986109a99a6b1319ef03a19ef0cc99150cc195d8cc99a683a18730f598ca89e99a615d995d2819fbecc9d755d95c54698a626980d26559dc71520c68357471520c6cc33075d8ea63a0ea68345468320e63a0e875d20c683a0c63aa0fe5841cd98664b0831a0e8318ea3a95a0e563a160752c20e63a8e86838e858418b03a160753148523309353148c22b14cb02918a42918a629160522b14cc5314cfaf52bea7d7a163a963a1f4ebe7d7a95f53ebd4faf43ebd0afa795f53ebd4afa963a1f5e87d3a963a15f43e9d0afa79f4e858e858e858ea57d0afa963a9f4ea7d7a9f4ea7d3a9f4e857d0afaff9f4e9fe7d3af95f52be858e857d4faf53ebd0faf53ebd4afa1f5e857d4b1d0afa9f5ea7d3a7963a15f43e9d0faf52be87d3a163a163af95f52be858ea57d4faf5f2bea58ebe58e87d7a15f42c742bea58ebe57d7ffcfaf52be9e7d7af95f5ffff2c75ff2be857d7ffcb1d0faf52c742c742c753e9d4afa95f52bea57d3cb1d4afa95f52c742bea57d0afaff963a95f43e9d0afa7f95f53ebd7fcfa753ebd3cafa15f42c743ebd4afaf95f5f2c752be857d7fcb1d5508000160382b0e0d954f0d94654deb7acc397acce7d10dea4f0d4b2c4cb02c4d311a0ad3134c0aa34c4ef33b8ab3059193460b03fffbd2c41a01f0c5a2f0aeeb34c619359dc1dde6682c04b32403834f43832403932443930e03932403932413c3240392c070648072561c9870489a7a48161c1b972587258726e5c9b87265e51ca2c65cb9cb2e65fe1cb94565ce59634a94ad21a44a584869529a4485694ad216129a54865cb1972e72e51962c65cb1972c565cb05ccbcb32e5ccb162b2c56b79acb1acb1aeb9acb1aeb9acb1aeb15ac6bae56b15ac56b15ca72485894e590e490b1295ca5894ae52b90ae539252c49e724a5897ce494b121cb2f9cb21cb29cb21c9215ca5890e497ce597cae42c4a57215c85894ae42b97cf9e4f9e3cb1c15f1e57c796393e38ff2be0f9e7caf92be0f8e4af92be0b1cff96392be0f9e0b1c15f058e0b1c796382c71e7cf3e7c7257c95f258e4b1c95f1e58e0af92be4b1c1639f2be7ce493cb127f9c9215c9e5721c9215cbfe72ca5893fcb1279c921cb29cb2f9cb29cb21cb29cb295c85890ae42b90ae42b93cb12795c857298701c1609034f2413901eb3094683091733344d033e0d132acaa34c4ee30957434c1313244382b398d3c4f0ace730e13d34f53d37ac3937ac3830e4382c07261c870648a786ca27a580e4ce244e44e4ace4ce0e4ce240ce240b072723226727058382b90339392b382b382c1c99c1c9c89c960e0ce4e0ce4e0b07067273e6727258392b38ff2c1c19c1c960e4b070670705838f2c1c19c1c99c9c19c1c159c159c960e4ace3ce44e0ce4e3fcce0e0b07058382b38339382b3933839396439252c4872ca72ca72ca57295c872485890ae53964f3965f39242c4be58e4af92be0b1cf96383e783e383e382c727c707cf07c727c73e58e0b1cf9f1c15f058e4f9e0b1c16382c727c7257c95f07cf27c707c727cf257c9f3c95f258e3caf83e792c73e58e0b1cf96392be0af92c7057c9f1cff95f058e0b1c16382be4f8e3ffcaf82be4b1c795f057c16383e392be0af82be4af82c71e57c796393e392be4f9e7fcaf9f2be4b1c795f3fe7c7258e7caf93e392be0b1c79f3cf95f257cf95f1fe57c79639ffff2c70a0800079603ecd71612cb09de71381f66aac420687e4226650cdc6176680617668061769dc58268332932930fb211343e211355621032115563328328343f0fa30fb0fb33280fb321021032112102b43e32112112b329fffbd2c42b01f3f1acdeaf777286a1355cc1eeecf82c1f467d1f5e7084207081f456c895977e65db2265d32265db207081f4583e8cfb3efccfa3e8b07d960fa33ecfb3fbfa2bfb2bfa3fbfa3fafa3fafb3fafb3fafb2bfa3fbfb3fafb3fafa2c7d963efcafe8fefe8b1f5e58fb3fafbf2c5d1dddd9dd5d1dddd162ecaeecb1747777477574577458ba3bbbb3bbbb2c5dff963ebfcb1f657f5e57f457f5e57f5e58fbfff3fafbf2bfa2bfa3fafaf3fafbff2bfbffff2c7d963ecfefe8fefeffffcb177e577658bb2c5d7962e8eeeebfcb17458bb2c5d1dd5d962ecaeecaeecb176577458ba2bbb2c5dff95dd15dd95dd1dddd7f95dd162e8aee8b17658ba3babb3baba3babb3baba3baba2bbb2bba2bba2c5d9dd5d15dd1dddd162e8eeee8b177e7f5f7fe58fa2bfa2bfbff3fafaf2bfbfff2bfa2c7d9fd7d7963ecb1f47f5f658fb2c7d163ecafebfcfefe8afebfffcfefecb1f5e57f457f7e58faff3fbfaf30e326333624e333632e231d546d312e1d530a8233323210b36ac7a31ec7a2c4f46eaba86318c46f18c67719c47315c6631ac46f19c658754c89224dd4c84f204bcc894bcd2f4bcd2f224e7a4b8ad2f34b8893220882c11056441a5e44191297160882c112644113e711125712588938989389893898838889f38889f388882b8838989f2b882c447f9618cb0c46c4c658633626336262363622b632b633636236263362622c319b1b19b1b19b1b195b179b131f9b1311b1311b17196188ad8cd8f88b1c656c65862363622c3195b115b196188d8d88ad8fcd898cad8cb0c45862363622c3195c415c495c416227ffcb11258892b8838989389892c441c4c416224ae20ae23ffce2620d8d8cad88b0c656c456c658632c31f95b19618cad88b0c5e6c4c66c4c7e5863362632c319b1b1f95b11b1319618cd8d88b11058882b892c4416224e2220b113e5889ffff2c4479c44415c415c4ff96224e2620b11257125710713125712571057105713e58892b88f38988388892c441c4c4796224b111e58882b882c44f95c416227ce2624b1105711fe58882b882c44795c4ff96223cae20ae23ffcae26f331e433b76dc30b95e3a3df73449133dd72835791335782f30bd1236a87a37d8c730b8c630bc7a331c2e357df730b82f31ec7a30bc2f30b87b344daa3fffbd2c41e83f005a0ee0eeb3706ce341c42bdd0003187a31e8c730b82e2b44ccc60b8cc61e8c7a31cdaa1e8b03d960c731ecc731ec7a30bc2f2b1e8c2e1e8b03d1ae5c6bbd16171ae5e6bbd15ae35cb8d72e2b5e7e97161795ae35ebcd7af2b5c6b979af5c6b97161795ae2c2f35cbffcd7ae2b5c56b8b0bcad715af2c2f35eb8d7af35ebcd72f35cbcd7ae35ebcb0b8b0bcb0b8ad79ae5e585e56bcb0b8ad79ae5e56bfcad796179ae5c585e6bbdff9af5c6b971af5c6bd7962e2bb8eebceeb8aeff2bbcaef2bbcb1795de58b8eebceeb8efbcaeffff2bbceeb8efbcaeef2bbbcaee3bef3beeffff2bb8b171df7962f2c5c58bfcaeff3bee3baeff3baf2bbceebcb171df795dc775c58bbcb17962ef2c5c77de58b8aef3bae3bae2bbcaee3bae3baf3baf3baf3bee2c5e77dde58bcaefffff2bbffcaef2bbfcaeef2c5e577ff9df7962f2bbfcaeef2c5de577162ef2bbcb17fff95de577960360c731e34da20e50cb58e4cd688b08d2b0734e5d9e30c730360b03306576576658639a61ae76c639a76c6b40958561b2695a76c561b0639a5847db58458360adcd2c58666c9b07615846e6d8658364dcc730dcc730cd8730acd83364d8f3361cc2c1b256e6959b258360acd92c1b1fe66c9b06e69b066c1b258364c741d4c751d0ad0631d47431d074f2c0ea63a8ea63a8e8563a160d83360d92b360acd82c1b2566cf99b06c99b26cf99b06c99b06c98e83a1607431d10631d4742b1d7cc751d0c751d0c741d3cac752b1d0ac752b1d0ac752c20e63a0ebe63a0e8563a18ea3a98e83a158e8563a958e863a8ea581d4b03a958e863a8ea63a8ea65094058284aca0f2b284ca1287fcca1287caca1ff3280a13284a1f2b280ca0280ca0280b0501594058280aca02c1405650960a02b284ca0280ca0280b050160a1f3280a03280a03280a1ff3284a1f2c14265014258284aca1ff3284a1fffff2c1b3e58363fffffffffffffffcacd8ff2c1425650194050799425095942565079940509594258284aca12b283caca13284a0ff2b284b050160a1f2c1405650194250960a0f2b284aca12b283cca1287fcaca12b284b050da03028040204010140a02010080300640ae302500803053c24f30d7c2a930ca42cf31c4921a300f0001300c4005305cc04f303cc03e34620fffbd2c41c003485d91db9ff00062e346243bfd000a9035bccab50300ac600d80006071010c603180c6611a82666027812018002a546032072608a05e690660a6330a28160074dc46f0c033306302b302a06234f02603428582329635f2eb1698880854e0c110038c168038c094064c008008d454d7cc660a5cca5c1d4c4f03899c459a1b8ef3180e80e98018048b009ba542604818c60701ba620e09e60de09e0d024120006cca729e4ca5b2baf182ea7acba030220082203b14028160104972b0109332164c5a76aafeb228dc6dd359e5dba0a2ff2c00c182d01c182d03d180c00c980c801c4eebff1779ae3fb76efa7ba8ca8927c39707a7a27c79803803958039803803980380398030031583a983a04c1583a45e2f14a771593bcf4b7e24f32e789492ebff72f45ee5ebc61540c4603207e180afe17007f53b0c00e4c44c60c00c8c50fd0fffd050d050d1c65d6a2ffffa251aa27c567d0fffffa219580133ba3f75e3292edc1863a4ea46dd474fffffffffffffffffffffffffffffffd4f980d0090981280b6984e00481848a1621869a25d18f32518198f263d19bd283d1a7d2d1b1b0fcf639bcf8c85987b8ff61db16c151d0749fb9cd72df399c764769881e1d19834809d9862389858ce9c5ca99b38cc9a0c149986cd1bcf161d83ce1ea3a91bc8f1997c611a16ce1bcaf21c32d31ade9b19160f191c9a9a68b599fa7d1986450b14e60e03a6271126471166450aa62a03a60e03a60e8a464698867d9f867f99062a83660d0403a0e98300e98a029983e0d2439810069810029810069818068602a8ab8ab3a01500a912a95c5987095b948b016d5fdb3ff4b0ee54255006ed19788c17050c2d0b8c49128c320c41c18a6f1728b945ca4e29eeef1fe56c8a800980801980402d79dc7a4a01980002980804980c03980c02df30180530902530880542c301402309446311448311c4830982528014c03000c23098c05008c05022b592500e2b477b0ffcea5d66d967ffffffff94b20c5dcb0cc4989356a6d779ddeb2ad6b755f57765b2996dda596d3bf38d6869da96d9d53434ef4ba1a7fa3384aa5d6bf2ab19a6ea300c013730b805f33126021130cb4230301a424a304f4122302905f9309b01e5308bc0253115c16431c9c4aa319809b1348b010e360fddfffbd2c41b83e62974fe0ff1f1056daadc81ff69e01033cce9a13e9998033720c8e03095404e3043c257309e00bd30074315306a01b93964c434b07666b9b5a486915398b4c4670561abd5a6ab341a9c58670859b40ea6965b8aa08c26b43291e438b21c5630e828906a18255402a4302824c4020012f82a2415279830b466f22268084188a8850f8238c0276895daa096a1e4406a530a427eb58491f081545ea7a311caba0d9712c06c2245b452039921093ca2624399cb1b2c29eb96a1f6c6b339233293c2e2af1b85c542519395617227c748270778c241b5976196923c2e27c2ba5fc4c49b6b75f582ca7ea3735ffffe0ab665746b4266378e2dfd7fffffffffce36c31231de4bfd191ff117fb8c19504f0c09013dcc8583304ca622984cb0e2c3cd17e039c8a86738190f763626173e280ca4e36eeb34d7401280e67a692ccc6a3708d58face8f60fa0b0e9df6268c2ee3714d7e9284d281eb4c64d280d7ecbbcac398c654a60c39c654c650e70d285280c650650cbbc650b032a63283286532530632a1ce61cc32a561cc61ce32863281ce612012061221206072070607207058038f2b03930390903d094d26834fa4ad216349a44a7a741e9d06952f95a42b485694b090ad2ff9a548695214492c25f34893cd3a62aa434a93cad29a548584869529e8485694d2a434890d22534a94b090b094d2242c2534a90d3252b4a5690b090d2a52b4a691215a534890d224f372e7fcb0e0b0e7ffcadc161c7fff95b92b73fffe56e3cadc7e5dffff372e3ffcb0e7cb0e3ffcb0e7fffcadc161cf95b82c382c382b70587058726e5c95b9ff370e3cdcb8f2b7058725873dff2c38ef9b871fd3a21dfffff65f302a03bf3183c6d2327a41d139209453312084833623919f370206d535458e2633ec4e26388c9fe23a48b6a13da898f333712b75337150153ed089223371145331208dc430be454831cd84203042842030be442035b23231156d2c15065408a685216685088685216568515a14685a1665408856541888549950229a1622959715bd15bd95bd9973d961eccbcb8cbcbcea510b08858452ba8345453444434444345a9345452c2296114d1114ad14d1110d1514d1110ad10d1514b08a575258442c549a2541a2221a2a29a22296110d1114b08868888584434fffbd2c46c83f3bd56de0ff77085de2a1ac1fe6e4054534445344452c2215a21a22215a29a22279a2221a2229d4a296110ad10b08a68a8a5844f345442ba82c2296113cd1110b08a568a68a8be58442b45f345452c22f9a2229a2a2f9a2a296110d1114d1514d1514b0886888a58442b44f345442b442c229a2a296117fcb089e68a8a5844f2b442b453454434545345443a844345453454434444344a834445345452b443a94534444344452c221a2221a25416114d1510ad10d1514b08868889fe568be68888568868b5256886888a568a68889fbf9dbbf45c58018cc0620d8cc4e31388c3620d88c5630d8ccde23388e1e2878ce6e33d88d1e32788d3e24f88c660a18cdae32788c9e2358cd7625d8ce1e2358cef62e58cd0e2438cc6e2358cd762438cc6e33588c9e31b8cc3620d8cc162178cb00b1182c60b1182c40b11f8dc456e33f1388b1e3371b88ad8cf8b88f8f8caf88d8f88f8d88b0c65862363e32c719b13195f196388f8d8fcf8988b1c65863363632c3195f115b196188ad88d898bcd8d88d898cb0c458e32be32c3195f19b1b19b1b19618cd898cb0c47c4c456c66c6c65862f36362363632c3115b115b115f11b1b19b1b115b11b1319618cd8d8cd8d88ad8cd898cad8cd8d88d8d88a310b0c46c7c66c4c456c66c6c47c6c66c6c7e6c6c458632b63362622b633636336363363e2f363623626336363ffd15b1f9558cb0c47c4c66c6c458632c31ff9b1b17f95b11b1b17f9618fcb0c458622b632c319b131f9b1b115b115b17ffff9b13196188d8988d8d88ad8ffcad8bffcb0c7fffa363622b622b62fecf95ff2aaf2c084258217cce061080c9c9655cd3ae3270dd952720e33eed24e068381cc4203dc0d957381cce0781a4e33eb494f70aed24cf704eb8cf701080cf702cc8c6f45a0cc2b7217cc9c81bd0c58b0ad8c58a0adcb02109829a2101829815b188400a61d6ca69a9b5b9554c35314c35314d2b3eccfa3e8cfa840e103ecb07d99f47d19f67d962102b3eccfa3e8cfb3ecacfa33e8fa2c1f6582efccba2e8b05d960ba32e8ba2b2e8acba32ecbb2b2ecb05d9597665d17665d177e582ecb05d19745d15974582e8cbb2e8acbbf32208832252f32208932252f32208932248834b88832252e2c11064411064491264425e64411206bfffbd2c47903eab9a2d20ff6b3471eaa5801ff5a38ac804576115d84577062ee0c5d81ae97606ba5d8457581ae976115d01ae9740c5d40df4fb037d3ec22fa063ef08bec22fb063e818fb063e818fae06fb7d01bedf606fa7d845f406fb7df06533c194cfae11a6ffffc234d81d369947ffffffffffff06110c1f907e0c1f81044d4c44abce14c8534d8f25314c1f820f0f62f7cd8ce8395f0d2af6c24df37e970f2038d90c413a6a0e14fc808e9a763d4f204c80ce3642950ce821038ce801044c4114abcc40e1898c4101040c1f91040d89f1acf1a9898c7e5898d89c7e4ae0f0f1aa0f0e0f5044ae0f0e0f5044d0420f0c7e5040c7e07e4b0823e63f282056c4e5541134101f834111f831f91f82b1f934114102b1f834114112aa08941f898fc2089607e4ac7e0d0407e7cc7e1044b03f05682056823e68203f0581f831f81f92c20818fc8fc98fc208f98fc0fc1a080fc98fc8fc95a0879607e4d0407e4c7e1040c7e47e4b03f263f03f0563f263f23f0563f0563f063f082063f03f063f03f063f23f263f23f0581f831f81f92c0fc1607e4b03f068223f263f23f268203f3e63f03f0584102c20898fc0fc019f93f00c3f2e113f2113f3033f27e0227e4187e4227e4227e4187e00e089f908c11061f9061f806410033f27e2067e0fc819f83f1819f93f0067e4fc830fc830fc419040187e3033f27e40cfc1f8061f9c227e00cfc9f9061f8061f8091f9033f27e4187e40cfc1f9033f27e2113f0067e2084187e2113f2113f00c823830fc830fc7f7061f8844fcaffffdc9d9fffffd75f317f31b37f117f34b7b29398c65434b665534da7572c30c9a6dbab1a6d12f1b2acc61b2ad949bf832a198d32a1b2a6629d947fe9b2a0bf98bf25b192f30c99ce12f989092f192f12f1612d8cc68c6cacc68cc6c5fccc685f8b06366636634663496e66362fc6bf2fc6bfe346bfafc6bf2fc6bf2fc585f8d20978ae5f3485202c4be690a406904bc5690f961213979212c24272f240690242569096121348521348521397d203481203485202c24258480ad203485212b484ad203485202c4bc56909a429095cbe5897cd21480d21484d21487cd20978e5f484d21480d20484ad203485202b480ad212c242569015a40690a40690a42690a4058484ad20ff348520348fffbd2c48183f27178ce0f76b545f6b61a01ee57205212c24258480ad213485212b480237e065f8237f81dfafc077fbf4237ec197e832fc0cbf832fc11bf611bf032fc11bf832fe0cbf832fc077fbfc237e065fc237fc197e03bfdf8237e832fe11bf01dfeff065f8237f832fd03bfdf8237e846fe11bf832fe11bf846ff065fa077ebf81dfefe0cbf832fdc0eff7f065f8197fc197f065fc237e08dfe0cbf60cbffffc197e2c0bf18bf0bf9bf859418bfa5b9d9418d15d941a6da6d9a6d44a18bf8bf1598d1961ad0986cad01890a6d9b0c9ce992f3ab9596198e69619a5606c18bf18d961954cc6d2dcb096c62fe2fc696c63462fe2fe62fe96e62fc96e696c2fc66342fe5663466342fe61b039865861b0561b261b239a63981b2581cc31201202b1202b1202c09018908909589015890992f0901f35b0586c1b65b26d86c9b61b06d86c95b63cadb26d96c1d72ba6a1ae95a87cd40a13aea80eb8a12b501a854275d5095a84d42a12b6c9b61b056d82b6c161b06d96c15f33cdb2d836c364db0d92b6c9b65b056d8390484e4120390c80ae427209095c83fcb120390c80b120390484e4121f2b901c86425890162405721390480e41202b90f95c80ae407209015c80ae405890f962425720390484ae40720901c86405720390c860cbf846ff846fe11bf846ff832fc11bfc237fc197e846ff81dfefe11bf832ff832fdc237e03bfdfbc197ef846fe11bf832fffc237fff832ff81dfefdfffff065fff08dfa0cbf2af2c1611a561619ad086c1bc6256986c0e698e61db186c2d0991503a991528199ca96bf995d8cc183a95d98cc883959ca996b0ae18500ae18ae8ae18ae10d99ca05098ae0ae158e6186c06c996186c186c06c186c86c1586c98e686c186c86c986c1611d71406a1501a86b858501a82ba56a02b501a854258509d71405850161426a0509a8543e6d86c161b256d836c363cb0d8ff2c363cace9e5883f99d0ea583a959d0cea7433a1d4cea7533a1d0ad43e585095a84d40a12c280b0a02b5095a83cad41e56a12c280d42a1350280d42a0350283cb0a0350a80b0a0350280d40a02c284b0a0350a87cd42a02c284b0a12b3a19d0ea7073a99d0e8583a99d0ea6743af99d4e86753a99d0ea567533a1d3cce8752b3a160e86743a160e9e6743ac1fffbd0c49001aae194d80f72b58554b59a95eed5a08d808b600db0d9c22d906367831b1c22d8c22d8fc18d808b620c6cf063660c6cf036cb66116c01b65b2116c7fff08b67831b3ffffc18d8720624024262422406caa96c696efe06634fe0696e2fe584b6f32c269733b61cd32c30d831cc2c2375639c339c120339d4da2bb08ec2364dcd360e5e480e5f978f9c97cd2197cb0901f3a909f39ce15cbc6904be7cef386904be572f1cbc909cbc909cbe90961202c24258480d21480232106484192108c80192008c800e4320064840db1cc036c36418d981b65b2116c7845b006d86c831b20c6c045b0116c81b65b2116c01f31b00c6c0339a0c6ce0c90046401190e0720900464184642119001c86400c6c831b2116c831b00ce6045b006d96c01b65b2116c81b61b006d86c831b006d86c031b206d86c81b65b006d96c045b00c6cc0db0d881b65b006d96c01b61b20c6c845b006d86cc0db2d90636606d86c031b308b6022d8036c363f06487fc1921846400c90c192084643e0c907c1921ff064842321fc2320c1921c2320e0c9083241c1920e1190ff0648383241ffe1190552b188b0719f7f4a1eb57c15bc66b19c46e821474a4645719988ab69bc4b11ac4311dc4b11cc47198c4b198882219502296045338ce33589622b388d62188c6338cc6318cc63588b071195222995222195022160a832a04532a0452b110ac4432a0442c08862208a78b1f95e23c58fcf1633c78bcae2162215c42c442b8a588a588be71221c58a716295c538b14b110b114e2442b8be5714e2c538b10e24538b10ae21c48871227f9c58a7162162216221c5885888712216229af5de585e6b9715ae2c2e35cbcd72e2c2e2c2f3f4b8b0b8ad715ae2c2e2b5e6bd715c42b885710b114ae29c48a588a588a58887122ff95c42c442c45f2b89e5710e2442b8bc238e11c611c5e11c5f08e3f83310331ffff8471047160cc708e3c198c238c19881988238c198e0cc7833103318471e0cc508e3f8331c0f1e3e0cc611c7847103314198e0cc5066308e3e0cc41f2c1e6a5119a1af08bc29b0f2a7b986cca7b194d8c3c98dd06f719b1a90d9a4346c69a4366c619b1a47f1ef71b39b74ef71ef76f71a08e3598fce351a08a081bc6bc61f9a79a953cd4de33cd7cde31e34a79a8de37cdfffbd2c4d083a94daee40eea974694295845ff597a0d1c3634ad1c0e3ff630e3f91c0d1c11c0dba0d98cd9a9b0cd98d98dba0d98cd9cd9ccd9cd98b0dd3e566cfe66cc6ce586e9f36e9367362741136271f831f81f9f34101f82c20898fc8fc1a080fc1a088fc18fc8fc04638846380323884638c191c0231c4191c40e38c71064700647108c7003530a640d4c29903530a600d4c54d08a9803532a6418a600d4c54d03532a600d4c29981a98532075314cc22d980db3367831b3831b381b666cc0c6cc06d9db381b666cc06d9db3045b3845b381b666cc116ce0c6ce06d9db3c0e384708463804638e118e0118e0118e2071c63881c718e0118e3f08c70038e11c00e38c7108c7008b66036ccd9c0db3b67c18d9822d980db336608b6608b6708b67036ccd9818d9818d9c0db3b670636706366036ced9c0db3b6606366845b381b676cfc191c2071c238f08c71f846380323801c718e384638c191c3c82bb45762bd6a189200a0f3144ca433d6cc69c36b368403455f43b3455ab8137c0e4323674ca4235040d5636b2cd573290d4a32a9ee6553dc8df03144ca294533f88be230f8d3e330f8c7e333dc8a4333dcd9d332908a4332908a423144ca423144ca433290851231448513314494a231448f7233dcc5133290c5122c0a24587e3d95bf1960f8ccf8cf88b07c4583e32b3e22b3e333e23e333e37e333e23e333e33e32c1f199f19f1160f8ccf88f88cf8cf8ccf8cf8cb07c4567c6583e333e23e237e23e284e898328981d13a2611a240ca2611a2508d1281d12a260744a8981be27c6117c4117c606f8df101be27c60c7c407f89f181be37c606f8df101be37c6117c6117c5063e208be281be37c5063e3037c6f8a117c581be27c7831f181be27c5063e2ff81be37c5f831f1781be27c4117c6117c40c7c4117c406f8df1c18f880df13e2063e2063e208be308be2845f1c0df13e2063e2037c4f8b08be3037c4f8fc1944c2344ffe11a27ff06513e11a270aa27fff08d1303a2544bff06512f065128468980001f961a0f32f89be330f8cbe22b674cd4a3528ccf727c08d4a25288c923183cc9221838b0ce9194867b9997c67f118fc69f198fc63f19b07b071c914919b07c91963f88a1f1cdf88f8cef88f8f46d3baae7aacd386d39aae6a254867487486fffbd2c4f0002ff59cc10ffad486bcb35849ff59b3574846a24a26574866fc67c667c67c667c6fc6583e233e23e22b3e332f82f832f92f9360f60f32f92f92c17c7960be3ccbe183cb05f265f2c1e65f25f065f0c1c56c1c582f832f860e32f82f932f82f8035f0be40d7ce0f035f0be7062f8062f9062f808af981af95f2115f006f8df1c22f8822f880df1be3037c4f8818f8c0df13e208be2037c6f880df13e2037c4f8822f8c18f8c22f8c0df1be3037c4f8a117c6117c40c7c60c7c708be208be208be2063e3063e308be208be3063e38317c8457c40d7c2f808af808af808af9062f9035f0be422be018be00d7caf9062f98457c81af85f1035f0be422be206f8df1031f1845f1045f1831f1045f101be27c7831f1031f101be27c7037c4f8c29f1818f8e06f89f1831f101be27c7037c4f8822f8c0df1be3ffc1944e0ca25f065120651284689fc1944cde666d451e74c692cb86aed3354ea7b2cc5691998436ef2c2dbe749e0b946bc1af0868cdd2784d19c1de4b1aa9bad88cd958dd05853d0c4716ce4cd8c23fcdd6d2ec8cbb275b4cbb31728c3671ba0c3671ba0c3661ba0c36545ccc36445ccd1731ba0c6e90d98b03c619e6a79a98f183c616078b2c2335af2a0b96565d91c7fa38144701611c0d1c51c3cd1c51c4d1c11c4ae3fb9e568e1fe58471336636636e9366e959b3f99b31b3959b399b31b3959b399b31b30323840e384700647108c700647006470c231c4231c606d99b3c0db3b6608b67036ccd9c0db336606367036ccd9c18d9c0db3366036ccd9c22d9c19ba40db3367064710647008c708323840e38c7081c718e0071c23803238832388463881c718e20c8e00c8e308c7108c7106470038e31c00e38471038e11c00e38c71038e31c60c8e20c8e0071c23881c708e0118e0118e20c8e0118e108c700647108c70038e31c70647108c7108c7008c710647106471064710647108c710647181c708e30647008c70c231c00e3847006470038e31c3065cafc1972ff832e5ff846e5419e3613f1bffffe11f19ffc19e33c23e340cf2c13a66bc22f044e35599b1a90d1bf8cb549bad85d91af091aa938d5665d997666b549b1866c6ad5268ce233468cd233651785150bb22b172cd19b5e10cf343cd4ad6de33cd4f3533cd078c2aa78064efffbd2c4f003b1c9a8c00ffad4867d2b97c9ff5eba9a783a34f013c12a93a6513c0993a64e9993a49e09549d32bbb235cbbb32b5ca2c2e515ae595ae59a38c7f1a382381a38a381c7fa381a38a389611c4a238fcb08e2584702c47f1a38a381a382389a38a3895a389c7f47f79a38238960a64ca61530ca65534ca64a60d531534b053058298354d29932982992b29932982992b2992b4712c2389611c4d1c11c0ad1c0d1c51c0d1c11c4ad1c4d1c11c0d1c51c4b08e068e28e268e28e0568e0568e068e28e2584702c2389a3823895a389611c4d1c51c7cd1c11c4b08e3e568e0584712b4702b47034714712b5ca35cb5ca2b5cb2b5cb35ca5ca2b5ca2b5cb35ca5cb2b5cbff2b5ca2c2e59ae52e57f95ae5161728b0b9456b9656b94585cbf2b5ca2b5ca2b5ca2b5ca2b5cb2b5cb35ca5ca35cb5cb2b5cb2b5cbff35cb5cbff2aae56cb0b95fe56b95fecaba05d4123552674e3bad48a9d373031554e1127497febaf30f887e332f18e2831290966285e38c9662f1cc5622b8ccae51ce0cc394994ac60e30e385623158838d3158c90e3243c90e31588563312904a53090c2422b1290c3e21f88c7e20f8cc3e33f8cc3e32f88b0307958c1c617c8c1c56307187c41f19607e230f8c3e230f883e32b0f88b01219848625215848658090cb0121160243f3e3db92c71e586e0db96e0adb936e38e2c371e56dc1b72dc1b72dc79b70dc15f1a586e4b0dc95b7056a69a9aa69a9b5b9a9aa69a98a61a9aa61614c3ad94d3532b63adab735314d3532b636e5b836e1b8f2c3706dcb706dc37056dcf9b72dc15b70586e4adb92b6e0b0dc1b72dc9b72dc95b726dc370586e0adb92b6e0b0dc95b73e6dcb706dcb726dc373e6dcb70586e7cb0dc1b70dc9b72dc15b73e56dc1b72dc7961b82c37256dc79b70dc161b82b6e4adb8f2c370586e4adb92b6e4db96e4adb82b6e4adb82c370586e0b0dc95b726dcb70586e0db86e3cadb92c3726dcb726dcb726dc37056dc1b72dc961b936e5b9f2c3706dc37256dc7fffffff063e30bcc78d1e34c5cca4f0c5cb8d54de87b760cf3598c4e3555e08dd6c172cd6dd3cd4de8698c0db374868c4716cdcc5ca75b0c5cb1728d19a4668cd8c23fca1b1b323fd6a932ecd19a2c0b946bc1233462e5233a71fc8e271fe8e268e11fc68e2fffbd2c4f081f03160cc0ff6d7863fb5d7d5ff5a2a8e27e69e6be56f1a7e69e69e6f1af1a57e6bc2b78dff3471471347147034704703471470347147134704703470471347147134714712c2389a38c7f1611c0d1c51c4b11fc68e28e0584712c2389a382381ae52e51ae5ae51ae5ae59ae5ae5945cb9ae52e596172cd729728d729728b0b9456b95e157280772ae5846e5046e5c1972c19728237281972bc0ee5dcb832388463881c708e2118e0071c23801c708e0071c63801c708e2071c23801c718e0118e00c8e2071c23801c718e2071c23804638e11f1bc19e330af1bee0cf1bc23e3423e31a0cb940cb95c23728197281972b03b9772ab065cb08dcb065cb708dcb08dca581dcab940cb940772ae57d5fe0cf1908f8de0cf1a15e3411f1a15e35fd55423e3611f1b5419e317f5e11f19f08f8d0678c833c6423e33f0678d81f8df1b5f33a38e8f3e1d21d43b49168319d0eceb83d0ece2c92270d155ae00e1856b28c69d355ccf736748c513290cda0f8b20eb808b24a844e99ee65219a9462891b3a65211c59044e9b41e44e96115532275155d151d3a33a38e8e33a3ce8f35a08b3232cccb3228599ccb322ccca8b419bf1df119f11f199f13f11bf13f1143e2161f88b113a5589d389c89d2c44e162270a44e3cae270da75a70da71a74b0d3a6d38d3a6d3ad386d3ad3856d3be56d3856d386d3baae56d39e56d386d38d386d3ad3a5355c56d386d38d39e6d38d3a5869d369c69cfef95b4e161a77a56d39e5869d28d3af2b69c2bd56f369c69d2b69c2b69d2ab4e1b4e34e1469c1b4e34e95b4e79b4eb4e961a77cda71a70da71a730369c69d2b69c2c34e7961a70b0d3851a706d3ad3a56d3a56d386d38d3a5869df2b69c3d5669c28d3b2c34e961a77ffcada73cada70a34ef45869c2b69cf2b69c2c34e95b4efe8ada70da71a74b0d3bb2c34ef961a77ca8d385869c2c34eecb0d3857665ffe58b322c599fecb16645766658b32ffe73fcb166657665e7665666766766458b32f2bb32e313316f31e1f6ee56bfff9beaf3144a96237c0851329f118e4335288e4333dccd9d35288d9d22908cc38248ccf4e183cd4a32908d4a3a588d4a33dc8c5132908c513528cca42528cca433dc8cf72290cca425288ca43290cdf03290cd4a2290cc5133dc8c512fffbd2c4ff03f49152ba0fffc5c651b59801ff5a901448cf72290ccf733dccb07b999484a511948428998a242891948628916144ce90e908ad448d44d44cd44d448ad448a2894b0a27e585123513a432ba42d95a8916144fcd44d448a8a246a24a266a24a2452909e58513f849f1c22f8a117c406f8df1831f1031f101be37c607f89f1845f1831f181be37c6117c606f89f101be37c606f8df1031f101be37c508be2037c4f8e117c6117c508d1308d1203a274482344b0651306513065138468941944c2344c2344a0ca260744a8901d12a270651383289c0e89d12f83289e0ca258468941944c1944a0ca2508d138468904689b8468941944e11a278328901d13a260ca2583289e11a2781d12a24f83289832890468984689032898328942344c1944e11a2706513f83289c2344f06512a8234481944a0ca260ca258468941944b8328976e11a2584689feae11a244c414d45332e313030aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaf2aa8207219b3a45243318a27c791a946a519a4c849198c1c7a7997c65f119fc47f19486126d651aae67f1a7c6517e21587c4617c1244661c9246661c124666ab9aac66ab0d3a66ab35966a082822634e2820566ab19aaca0896069d2b355cc69c5040acd563355cd562c0d3a574845144a56a24748748656a2658a4337e23e233e33e22c1f1159f119f11f1959f199f13f11bf13f11d21289161448b14847486a246a26a27e51449e585132c28981d13a2611a2411a260744e89832890328901d13a2708d1303a2544d82344e0ca240744e8981d13a2411a25846890328981d12a260744a890468903289e0ca2611a240ca2611a270651283289784689c2344c2344c234482344c1944c0e89513f8328981d13a2783289c0e89d1206512ef0669d8334e78474ec0f4e69de0cd3a11d3807a774ee11d3abc19a77ea7c19a760cd3bb419a7019a73ffff8474e8474effffc19a77ff08e9db3ffffd6bf9913a8aa1f9eb1631445566a510a2472198a24777c28226d65359675c09138644e11387163570651a0f9c59044e1a2a88aa14455e67b9948667b93e066ce98a26644ec592644e913a6d0722aa51a0f142274644e22aa644e913868aa1138644e341c644e113a552274aa44e1a2a844fffbd2c4e581eb5da6c00ffad4867d3597d5fb5f98e18d3834e19aac34e18d3834e18d3a34e958d3a581a74ac89c2b2274aa8aa9913a44e15913bfe644e113a634e0d3a634e0d38634e1aade5634e798d3834e158d3a581a70ac69d2c0a2662890a2456289958a245628998a2628998a24289958a27fe65210a27e0744e89046890468942344c2344c1944825448234481944c2344e11a2503a2544c234480e8951206512832898328901d12a240ca240ca270651306513065136e11d38c11d3811d390669c08e9c03d39a7019a7207a774ec23a740f4ee9cc19a7423a7607a734e0474e8334ee11d3a0cd3811d3a07a774e419a740f4ee9d03d39a7611d3bc19a7019a7023a7207a734e01e9cd3908e9cfe0c22742244ef83089c7089139f06113bf088d39fc1834e42234ebc1834e60c1a77f060d39e111a77c1834e84469df6c2244e550000001fcb08e06636ca8663496e6fe26366634fe069b4c32673aeae673a9b6586192b1cc33b73b63411a5531f94112b410383d62731f86263626626331b31a34b731a317e17e34b64b732982992c2a69594c194c94c795a089a0831318fca081a088fc9625e3979212b484ad2134825ef2be70ad203979203485203481213481203485212c24256d93e6b64db2d92c364db2d836c364af9856d82c360f9ad92b6c79b65b06d9e61b61b26d96c15f30db2d93e6b64db0d82b6c161b0589079c8243e7219015c80ae40720901c82407219079c8240720909c864056d92b6c1b65b056d8f36c360db0d836cb64b0d82c360adb056d82b6c9b6798586c961b056d92b9095c84e43202b9016243ffe589095c84e4121f2c480e4121390c84ae4057212c484b120ff2b907f95c87cb121390c84ae42589095c84ae425720390c80ae43e58909c86407219016240589095c87ce4320390484b120f2bbfff962fe577ef2c5ffcb17ef2c5f8aefc58bf9dfafde58bf962fde58bf1dfefe77ebf15dfcaefc577ef2c5fcb97d859c2ab88e7fa3cb0599194842891be04a51998724911aaf47a799fc43f19a7c4ff11978c122992ce71415948456a5119fc61f19553e232f8cbe232488c393248cc393183c60e31a70d5631a70d563355c69c3355cd573144c5123144851333dc8512314485122844e4d1554550a11383227089d2b2270afffbd2c4ff83f1c956d46f779446f42a9881ff7690d448d44e908d449448d44d44cd44d44cd44d448cf8df88cf8cf8ccf8cf8ccf8cf8cacf8ccf89f8cb07c6583e232f82f9360f2f92b2f832f92f932f92f82c17c960be4cbe4be0acbe3cef9be0ef8be4ef8be0ef9be0ef8be0ef8be4b17c15df258be0b17c1df37c1df17c9fc7f11fc5f115fc457f19fc7f1163e23f8fe2f2c7c47f1fc457f1963e32bf8fcaef82c5f277c5f277cdf277cdf058be4b17c79df17c15df077cdf077cdf058be4ef9be3cef8be4aef9f3f8be22c7c5e57f115fc457f1963e3f2bf8cfe2f8cb1f1163e33f8fe3f3f8fe33f8fe32bf88b1f115fc457f1963e32bf88afe22c7c458f8cfe3f8cb1f1795fc5e58f8cb1f115fc67f17c7e7f1fc458f8cb1f1163e22c7c657f179fc7f115fc457f17963e32bf8cb1f19fc5f19fc7f179fc5f1963e22c7c658f88b1f195fc47f17c457f115fc67f17c658f8bfcafe32c7c7e57f195fc658f8d5f2a2944630705f26c472af66abd8c1a661c9872693205f069320c1c510881978e4b3192463071a4ca49199e9e7a71987017c18c1e17c19c62b198dc2b118dcab11d21a891d2152179d21d2195df1160f88cf8cf88df89f88b14867ee4a25fe56a246a26a25e6a25485e6a26a27e67c47c5e67c47c667c67c6567c5e583e32b3e3324324232422432b243324324232422432c12199211219921252992112116090cac908c90c908c908908c90c908c90c90cac90cc90c90cc90c908c90c90cc90c908b048664844840c5f2115f00c5f108af8035f2be2115f18457c6115f20690d210452101a4294a1148406909218312140d21a4308a4208a420624281a424861148406909210452101a4348508af9c22be206be57c0317c8457c8457c422be60c5f2115f20c5f1035f0be418be2115f20690d2181a424840c4840c4840c4840690921e11486114841148606909210452181a43484114860c4870348490c229080d21a4208a430624208a4308a428317c0457c422be40d7caf9062f9062f9035f2be40d7caf8f062f98317c8457c0457c6115f3035f0be018be422be3fffff08d12f2c3d10653614da6a7ba2e442a7a1a9eea7b9a3362e518b971aa9445cc6374b0f2564019957055c1437be63748dd2653694d863c68f1863c6adbc6b6f8f1a53cdfffbd2c4f103f43180ca0ffacdc623b25881ff59f847e6be687e68f1a57e6857e687e6af187e6be687e69e6a6f1af145478a3f3578c378d78c378c78d378cf352c3c61478d1bc63c6961e34ade30adba4dba0d9bcaadd2566cc583672b36633676e834704712b8fe38fe4702c2389611c4ad1c4d1c11c0ad1c0d1c51c0ad1c0d1c11c0d1c51c0d1c11c4d1c11c4d1c11c7cb08e3e584702c2389a382389611c4b06cc583672c1b319b39b399b31b3f959b399b31b3959b3960d9ccd9cd98b06ce66cc6ce66ce6ce118e2071c238c191c4191c7038e11c40e38c70038e11c4191c4191c40e38c70064710647006470038e11c0191c40e3847084638e0c8e0118e00c8e00c8e20c8e308c718323804638046388463881c708e20c8e2118e20c8e2071c238c191c0191c0191c0231c40e38470c0e38c7008c708323804638c0e3847108c7108c7006470606470c231c60cf1bf57ffffdffffff846e5e0cb94a00002f30be4c3831084420332746f434224bc73259824431839265263070b039c183701c6961c14d2938a4eb9158cdce0e30eb95588eb8ce3cd58ce3cd589588cbe648cd83cbe0d83f0e0e48a48cc90c90cc909c14c909c14d295290cbe248ccbe1838d83cbe0cbe183cd83cbe0cbe1838cbe4be0cbe4be3cacbe0b05f2569485648664844845694a64864846486487fe6dc3706dc3706dcb706dc37256dc9638f2c370586e4db86e3cf8f6e0f8e6e4f8f6e4db96e7cb0dc1b72dc161b82b6e3cdb86e0db86e3cadb836e1b82b6e0b0dc9b72dc961b936e1b836e1b82b6e4db86e4db86e4b0dc1b71c71a9aa61d6ea615a9856a69d6ca61a9aa695a9856a69a9aa6f95d6e56a61a98a69a98a69614d2c29a56a67962432b90fffcb121f962422c485e572196242f2b908e43908b12115c87e572115c865890bcb121f95c845721ff9c8521162432b90bce4290ce4390bcb12116242f2b90cb12196243f2b90fce42908ae432b90ce4290cb1211c85211c87211c8721f95c85fe5890ce4390cae432c485e572115c87fe572195c87e58908e42908e43908ae43ffdbf587ccf8af88c7054224d7aa4ba8d7e30f8ccfe21f88d57a248cc2f80be4ce281294b04b319c5097518e0a4b3197cfa79fa7e1c197c97c9fa7307997c17c197c61c9df1df119f11f19df15fffbd2c4f303b38556ce4ffba9d6c3a41945eff822f199f15f199f1bf199f19f19df15f1160f8cdf8cf88ef8cf88cf88f8cb07c467c4fc66c1e5f065f05f265f0c1c6c1c5f265f25f265f05f265f05f065f25f065f25f26c1e5f256c1fe582f832f860f31b838d31b91b931b91b931b81b82b1b931b81b92b1b831b938e2c0dc18dc1c695a5279921921992112116090fcd295290c908908b048464864865824332434a531b81b831b81b931b81b92b38f2c1c7160e34b0372563705838f2b1b831b81b831b91b82c0dc9606e4c90c90bcb04845824232432432b24332422432b2422b2422b24332432432b2422c1219921121f960908c908908b04846484485e64864845648658242f2c121959211592116090bcac90cc90c90cb048664844866484486564866486484564846484484671c3706ac6371e637071c6372370637237063723726372372637237063723706370372581b931b81b82b1b82b1b831b91b82b1b92b1b82c0dc959c7158dc98dc8dc98dc8dc79606e7ffffeef34bdd4378ce2398c633b8a623188e23d8a62338ae23578c737dd5f2c1c65771985e3d98f6d59abc17163c634bd2f32248939ed2e32232137512e3751d5375488f34bdd534bd2f32208939e92f32212f32248934bc892b4bcc88224d2f220ac882c11269711058882c4495c41c44495c41c4c415c415c4162a0ea514ad14ad14b0887508a68a8bfe75088584434545344a8345a82c221a2a21a2a29a2229a2a29a2221d4a29d4229a2a21a2a29a2a215a21d4221a2a29a22295a279a2229a2229a2a29a22216114ad14ad10ad14d1114d1513cd1110ad14b15268a8a56885689e5844345442b442b4534544345452c229a2a29a2a296114d1517cd1110ad13cd1114ad14ad14b08a68a88568a568be68a885688588938988f2b88f2b88f2b892b89f2c447fff95c496220ae24ae23cae20e2624ae27cb11056c5e5863363622c3115b115b19b1319b13115b19b1b11b13195b116188b0c5e5863f36263f2c3195b11b1317f96188b0c60c44ffff84513fe0c4404513e0c44fc188908a2708a27cc484e74d866254aec44c97d36cd860484dd5ce74b073a64bf12a69b424265841b261ac9585825e312039c325e894339d757312025f2b619312139c3120120325f4db31201213121fffbd2c4e403eff9ace40eeeb7c67f361b01ee56f01203120120312125e3121120325e25f325e4da2c12f192f1ce18909ce996106c160730b01b063981b063981b0580d9f2b909c8240721909624058901c8640721901b679a586c1b61b056d92c363cb0d92b6c795b63cb120390484b121f2c484b121f2b9095c84ae4058901c86405721ff2c484e4121f390484b1212c484b120f2b909624056d82c364db2d936c360db2d92c360db0d936c364db2d82b6c95b64b0d8f2c360db0d92b6c95f34b0d82c360b0d82c364db0d936cb64db0d8f36cb64db0d82b6c7961b2586c15b60b0d92c360db0d936cb64adb2586c15b60db2d82b6c79b65b056d92b6c7fff961b3e56d936cb64db2d92c364b0d82b6c161b3fe6d96c95b60adb211907846400c90c192006482072190c232106484232006483e0c90c1921c0e4120064802321c19218464308c841920f846401190c1920064861190846400c9060c908324384641c192106483f08c842321af3210329369d2693340190343f32830fa66d366d89d35569b2332843e355643f35569b2389d66c327a1d4346c27a33c746c2882d31910ba2b26937840fa321055630fb210343f32832103292b3292b3292b32830fb210321043e3210211321121030fa0fb3843282b3e8f28840cfa3eccfb3eccfa840b10819f47d99f67d99f70899f47d19f67d15c2267d9f7e7081f467d1f5e567d99f47d159f667d9f6583ecacfaff2c1f4583ecae1133ecfa2c1f6567d159f467d9f667d9f6583efcafefcafecafe8b1f458fb2c7d9fd7d15fdf95fd163e8b1f457f657f657f7e57f658fb2c7d963e8b1f458fa2bfb2bfa2bfa2bfa2bfaff2c7d95fd95fd7ff95fd163e8febe8afe8afebcafecfebebfffcfebebfcfefebcb1f458fa2c7d15fd15fd1fd7dff9fd7d163e8fefecb1f458fb2c7d15fd163ebcfebeffffcafecfefe8afecfebecafecb1f658fb2bfbff2bfb2c7d95fd9fdfdff9fd7d1fd7d1fd7d95fdffffff95fdff9fdfd963ecafecafe8febebcafebfffcb1f657f47f5f5e7f5f7fe57f67f5f47f5f5e57f7e58fbff2c7d15fd163ebfcb1f657f7fe58fb2bfa2c7dffff9fdfd95fd985e171611230b82f3a39f7357a8e30b91337c8cc31649334495e331d13324c583248cd30bc7a37d8c630b8c73248cd33301d31fffbd2c4eb83f475b2d80f7774c5b935dd81dd66d8609331e8c630bd1230bc7b30b87a31ec2e2b578c7a44cd130bcb063985c3d9602f30bc2e2c05c63d8f666305e61705e563d985c17985e179aef456bcd7ae2bf46b97961795ae35eb8b070ec1d33a70b070b070b073cb070ced9ff2b5c56bcd7ae2b5c585c6bd7ff9af5c56bcb0b8ad796179617f95af35eb8d72e2c2e2c2f35eb8d72f2b5de6bbd962e3bae2c5e577f9df79dd7162f3bee3bee2bbbffffcefb8b17f9df779dd7962f2c5e577ffff9dd795de57715de57715de58b8eeb8eebcefb8aee2bbcefbbcb177f95de58b8efbceebbfcb1795dfe77dde77dc5777f962f2bb8b17162f2c5de77de775fe58bcaee2c5e77dc775c77de57715de5771dd7962e2c5e58bcaefff2c5e58bffcb17795ddfe58bffcefbfcb17f9dd715dde57715dfffffe58bcb177ffffffff95de5777ff95de577962f2c5c57715dff31a71aca3861eef93355daca37c0a43335288f7337c094a12b3dc8c2f91838c92255e8eef81a70d4118610c2f83d38cf4e248cd26530e4a0a27285214d9d22908a86ab1a822a08160d5636b28d5631a75acb3355d41033558d572b1a70c69c1a74d4111a74b034ef98d3a34e9d21289f9d21a891d212899a892899a89a89f99f11f1962f88cf88f88acf88cf88f8cadf8bfcdf8cf88cf8cf88acf88df88f88acf8ccf8df8bccf8cf8cacf8ccf8cf8ccf8cf88acf8ccf8df88cf8cf8bccf88f8fccf8cf8ccf8cf8cacf88cf8cf8e117c414f8a06f8bf101be37c6117c4137c4117c6117c7063e3063e2063e2037c4f8c23f8823f8e117c406f8df1845f1845f101be27c4117c40c7c508be2063e3037c4f8c19f8822f8c0df1be20651203a2744a0744a89c194480e89d13065130651203a2544c1944eb81d13a260ca240744e89f853e3418f8818f8818f8c22f8823f8c0df13e381be27c606f89f160c7c6117c7037c4f8c0df1be2037c6f8c0df1be281be27c606f89f1831f181be27c40ca2611a240744e8983289046898468903289419448194480e89513832890328983289c0e895120651281d13a240744a890468983289c23448234480e89d13d0eaf5c19a76dea8474e8334e2bffef0669dfffffd5e6498b0751af860e372684a86587c8ccdd48c59074cb41b8c6e358ccc160d08070fffbd0c4fa03fa5daac20ffad4c5bcb45e01dd62d0d43164ad433164933165092b24cd09248c58164c93420c59164c1c160d09160ac923420923164583074cc2c03860e0b2562c79601d3070593070932b074c1d070ac5839614d4282b506a029840a61429cb0a585264489608990225644c8bd32040c8912b206408991225644b0f4c81032240c81032240ac816081608191205640b044afa7de796387de7963be7de95f4af858e7f96225703840e302c44b11f38c3cb1038c4e312b8f962070895c4b1d3e70b1c3e74fbd3ef4fbc3e74b1c3e74b1d3e70f9dff2c73caf9e58e79f79e7def95f7cafa58e95f0b1d2be16387ce95f7cafbe58e95f4b1d2be163a7de7f9f3857d2be963a57c2be95f0afa7ce15f4afa7ce1f7857cff2bef9f3be57dff3ef0b1d2c74afa58e963858e963858e963857c2be1f7a57cfff2be95f0b1c2be1639e57c2c70b1cf3ef4afa58e95f0afa58e9639e7ce163858e963a7de15f4b1cf312012035a04ac34ad1cd31cd3b635a05a0322b47131991992c09a982989a960398c650398c3612b0cb08edcc730730cd34418c1d4660c1d4664c48097cce70e70ce74484c480480c360360c734364c730364b039a65841b265841b2561b0580d92b0d93831d4acea7063a19d0ea707cc99d4ea63948958e0c703831c39bcc723931c244c703832994cb05232994cb052ff2c14cca6c3f2b29160ea56742b3a19d0ea6753a159d0acea56752c1d4cea7533a9d0cea74fff2b5015a80ad41e5850f9a8541ffe5850959d4b074f2c1d4ce8752b3a99d0e8570633a9d0ace8583a959d7cce874f2b3a99d4ebe56ea6e8ea56ebe56e86e8e86e8e86eaea6eae9e587537474375752b7537575374742b742b74f375752c3a1babaf9baba95ba961d0dd1d0add4add7cb0e856e858752b742c3afff9ba3a1ba3a79baba9ba3a161d4add0e8280b1427434258a02ba02ba1f2c501d050796280b14058a03a1a12c50796284ae80e8687fcae83cb14058a0f2ba1fff2c5095d016287cae87fcb1405741e74343fe74143e5741e74141fe58a1ffff2c5095d0f96283cb143fe574258a1f2c28206c48311e6abd8c1e65f197c667f137c67e36a8226d65a82263f197c661f11fc667b99ee662899ee64d41099aaea089b5966ab98fc63f11a7c63f118fc4fffbd2c4f003f3f1a2e20f7375467ab55881ff5a685f198d3834e18d3ad6618d3ad6518d3a6ab99aae34e959aae66aba820634e1aac57aac58d57369cd56cca34e4b0d3856d386d3ad39fc2c34e1b07b07997cb07197c3071c91307997c17c160be0b05f2565f26a26a26585122c28915a89f95a896bfcd44d44cc90890cac90cc90c90cd294908b04865648456484648448656486582423242242324224333e33e233e33e32b3e32c1f119f11f1160f8cacf88cf8cf88cf88f8cacf8cb07c667c67c467c67c6583e3037c4f8c18f8a06f89f1031f101be27c6117c7063e2845f1418f8a06f89f101be37c4117c60744a890328960ca2411a240744a89046898328981d12a240744e8904689c0e89d1284689708d1308d1283289e0ca27c0e89d12c2344f8328984689032897f81be27c40c7c406f89f1845f1845f17063e308be3063e3037c6f8c18f8822f8818f8822f8818f8f063e3831f101be37c60c7c406f8df1611d3bff8474eefffff7fc23a77fff42af314d42032684ee3268340355666c332966d3328556332832830fb43e2c21f1a1f9081908a1f1a771a019341a01a7705d99348c898c80c819341341a1015b98a68a698a615b9ac515b190887d187d07d987d108190819479595b995b8a698a68a61595b15aecad746bb5d95aecd76ba2b5d9ae976585d1ae974579035d2e8d74bb35daecd74bb344220d112f344220b088344a20b088344220e5e89344a20d12893e2e22c311f1b11f1311b13195b196388f8b88d8d8cad8cd8d8cd8988e2624e2620e2624e2220b113e5710711127131271113e58893898838988388883888938989f2b88ff388882b89389882b89388882b8938889389882c449c4c415dd7962ebceeeecb17477776775747757658bb2bba2c5d1dddd15dd962efcb1745777e577458ba2c5d9ddddf9dd5d95dd95dd162e8eeae8b176577458bafff2bba2bbb3bbbb2c5d9dd5d795dd1dd5d1dd5df95dd162e8eeaebfcb17458ba2bba2bba3babb3baba2bbb2bbb3babb2c5d15dd962e8b17658baf2c5d15dd7962efffceeeebcc3e21f88ccb92b88d23a48e8c85e162ca10bc31838f4ed9a4ca17c9924617c987c67f119fc43f1187c63f11613e231f8cbe2309087042b259cc7050908cfe21f8cac7e230f883e332f88be230f8cbfffbd2c4e803f01956de0f73748691b259c1fedab8e231f887e32c07c6503e3987c63f1187c41f1987c41f1187c61f19587c7e7f17c657f19fc5f179fc7f115fc458f8bcafe22bf8bfcb1f11c852195c865890cb1211c872116242390a43390a42f390e432b90fcae42390e42f390a43390e42390a42f2c4865890ce43908b0dc961b836e1b836e5b92c370586e4db96e0adb936e5b92c37256dc1b72dc9b70dc161b836e5b836e5b82b6e0b0dc1b72dc161b92c372586e0db86e7cb0dc95b7056dc961b92c3726dcb70586e7cb121962422b90cae422b90cae43390e43390a432b90cb121f9c8521f9c87219c8521f95c86721487e572116243390a42f2c4865721ff95c8458908e4390bfcae43390a43390a432b90cb1211c872116242390a432c485e72148658908e4390c1890e0c48508a4284521c1890a0c484114840c484069092181a4348508a4383121422908189082290a0c4850624308af808af8ffe0c5f1fff8457c0457c5500002f317f4b633b769735a12c23ffd655317f7f1331bb28365417f312125f325e619317f98c331a17e317e31b3b294b62c18d19611611a5616199db0e698bf8bf9a5b8bf1a5b25b998d98d18bf0bf998da5b18bf18d98bf25b198d98d98bf18d1a5b18d958bf95a5b9afcbf9afcbf79617f2b5fcf1a5f8d7f5f8d7e5fcb0bf95afe6bfafe56bf1afebf1631b2b480b0901625f2c24269024072fa40690242690a42690a40690a406902406904bc58483cd2097cad202b483cd20484ad203481212b480d20484ad21f397920f2b487cb0909a429015a4256901a42901cbc901a429095b9be66c1b066c9b2566c19b0e6960d82b364cd9360dcd360cd8360b06c159b058364cd9363cb06cc237ec197ee11bf60cbf046fde11bf60cbf846401190846400c9081c86420c90046420721900464007219081c86400c9003243039048607219060720900464306484192106480237e832ff065fe11bf40efd7e08dfc0eff7f08dfc197f81dfefc0cbf81dfafc11bf40efd7f065fb065fc197fffffabfffff065f90403cc4102950c62707e0d6dd07e4c83d1044ce8107e0cc6a2954c6271898cc6a1044c41120f4c6541950c7f00c68c411189cc62620f4cc6b20f0d2ddfc4d9505f8cc68c68ad044c7e2950e0f47e4e0f20f0b0c4fffbd2c4ec813099a4d64f76b556e6315a95ff71bac56c4e56c4e63f23f25682068223f263f28226c4c3f2581f8341141131f91f92c0fc16189cc7e1040ac7e0ac7e4c7e07e0c7e07e7cb0821e563f0563f062422426240240624224256240581202b12131201212c090960480c480480ac484c484978c480484ac480c484978c484487cc480484b02425825ff2b1212bbff9dfefe77fbf95dfcb17e3bfdffcefd7f2c5ffcaefc77ebf1dfafe58909c824258907f9c86425720390c80ae4058901c86425720390480ae4057212b90f95c84e4321f2b90962427209095c80e41202b901c86427209016240720909c864257202b909c82405721390480b1212c480b17e2c5fcefd7f2bbf95dfceff7e2bbf162fe577eff2c5fbcefd7f2c5fcaeffe58bf95dfffcefd7e2c5f8b17e2bbf9c8243e589096241e5890962427209016240720901c864057202b9016243fe589096242721909c8642589095c83ce41212b9015c80e41212c7e3fcaff3fffffffffffe57f9ffffffff2c7e55f314d6f4319169c334141731d5320308946c341734134170ba33211d5332112f2c0b198f18711897990984413d984493d9a0b85d98c80c818c81349a995b1a98a69a98a6962b633ea1133ecfa2c1f467d9f458537cd4d534aeb62b534c894b8c894b8d2e4b8b0441a5c44f9b1b11b1311b13115b11b1f11b1b11b1f19b1711a2d41a2a279d42295a21a2a296110ea510ea510d1510d8d8cb0c4586336263363632c311b1319b13115b11618cd898bcae20ae27ffcae23fce2223ce2224b111e71311e577658baff2c5d95dd962ecb17458ba2c5d95ddf962e8aee8b17458bb363622b63362632b63362632b63362622b632b622c311b1b11b1b11f1b115b11b1b195b179b13196188b0c66c6c67131058892c44795c495c41c4c495c49c44496224ae23fce2623cb11258882b892b89ff2b88fff2c441c4441c4c416224e2624b112571057107131271311ffe5712571258883888938989f2b892b89ff38889389892c449c4c4f96119a39a1cdee361e4a6d3914c8ff336348ff31534d6c2b563cc6191d5cc4db0978ca5507e4d09920f0c8022ae4cd6c1534c2980a60cdef1ba0c3660d98c3671ba4de31e28aaf187e68f1a6f1af1a54a6d33663672b6e936e836734714712b8ff38fffbd2c4e483ecd556e20f776ec706aad981ff75f8ff47038ff4712c47f1594c194caa6194c94c994c14c194caa6194c94c15a08958fc18fc0fc1a080fc9b132089a08a081a088fc158fc98fc8fc98fc8fc98fc0fcf98fc8fc9607e4c7e07e4b03f0563f2581f934101f831f91f92b41031f841031f91f82c0fc1607e4c7e5044c7e47e4ac7e0ac7e0d0407e4c7e47e4d0447e7cd0447e0c7e07e0ac7e0c7e07e0c7e47e4b03f2563f263f23f063f03f0581f9ff2c3f2587e0adf82b7e7cdf97e0b0fc1bf0fc1bf0fc9bf2fc795bf056fc961f837e1f937e1f9f2c53258a64e99a67ce99a64ae992c53274c53258a64e99a64e99a60b14c1d314c95d3274c53074c53074cd32574c95d3274cd3258d9bcb1b3963672bd9fcaf662c6cc7b36ce7b3ece57b3ff9ecdb316367f2c6cc57b3795ecc58d98b1b315ece57b315ecc57b395ecc58d9cb1b3963672c6cc58d98b1b31ecfb3ff95ece58d98af66ff3d9f663d9b662c6ce58d9bcb1b395ecc58d9caf66f2bd995f31a74d5738745265324902f836f8cfe233f8d3e33674ca43367494a23248c2f930be02f831f893e334f8c7e232488c392a0c1c661c124657ee67484a267485ee46a25ee47ee4a2457484748548656fc667c6fc456fc4587e23512a422c5211a89d211a892899a89a8919f1bf1943e2f99f19f1160f88acf88df8df8fcb07c66fc47c7e583e22c1f1f9a52121192125219219219a5225299219211921a52f9a521219a521211a52121997c97c960be4cbe5838cbe0be4acbe4acbe0cbe4be4acbe0cbe4be0b05f265f05f3e577c1df17c1df37c15df1e77cdf058be7cef9be4ef9be4ef9be4b17c962f92c5f2577c95df058be4ef8be4b17c1df17c79df37c962f83be6f83be2f82bbe4b17c795df0577c962f8f2c7c47f17c7e58f8bcb1f115fc7e58f8bcafe22c7c47f1fc7fe7f1fc657f1f963e33f8be33f8fe22bf8cafe32bf8ffcfe2f88afe22bf8bcfe3f88fe3f8cfe2f88afe32bf8bcb1f1163e32bf88b1f17963e2fff3f8fe32bf8cb1f11fc7f1963e3ff2c7c5e7f17c5fffffe7f1fc7fe7f17c657f1f963e3ff2bf8cb1f179a08f40992f5881a6d30c9b137401a08a089545f8b131a56ca8731afe2696ecaa73182fe68234aa63f10787078c4e74a83f0563f063f0c4e70798d674a8820fffbd2c4e783f1f556c80ffbadc667b3da41ee572078d43f06822820682082056c4fe682082063f23f0584112c0fc158fcf98bf0bf18bf8bf198d8bf960c68acc6cac5fffcd0447e4c7e07e3fcc7e5044b03f27f8fc163f057f93fc7e7cb1f92bfcff9fe3f27f9fc9fe7f257f82c7e4b1f83fc7e0aff3ffe58fc1fe3f2577f2c5f8eff7f2c5f8efd7e3bf5f8eff7f3bfdffcb17f2c5fceff7f3bf5fbcff1f82bfc1fe7f258fc1fe3f058fc9fe7f07f8fc79fe3f3e7f8fc15fe0b1f92c7e3ffcb17f3bf5fcefd7e3bfdfceff7eff3bfdfceff7ef2c5f8efd7f3bf5f8aefc58bf162fc77ebf95dfcaefc58bf60cfc047f207f8fc833f1067e211fcc0ff3f9c23f9067e611fc033f011fcc19f808fe60cfc033f108fe419f9c0ff1f9847f007f8fc847f011fcc19f803fcfe419f8c0ff3f9c19f8067e60cfc047f303fcfe703fc7e607f8fc423f808fe3847f00cfc033f211fc047f007f9fc847f381fe3f3833f00cfc833f3c23f9833f103fcfe40ff1f85f34b617e36544b7317e7f1378c69630d95a03b2898d331b7f02b39c325e619325e121375712131cd3b732c20d931cc697315c0a02c16b990d8ae198da5b98bf25b998db2a18bf18d9a43ce9a432f9a40901a412f9f39ce9f3b2f9f392f1a42901612034839d2c24269024072fcbc690242690a406d96c9b65b26d86c95b60db0d836c360db2d92c360f98d82be695b60b1cd36cb63cb0d936cb64b0d82b6c1a814056a1350283cebaa12b5015d73cad426a0509a814275cae1624057212c483fcb1212c483cb121fff2c483cd42a0350a80d415d350a80d42a0350570b0a0f3ae574ad4258509a85426a15015a84d42a0350574b0a02c364db2d836c364db0d936c360db0d82b6c1b61b06d96c961b3e6d96c1b65b06d86cf95b64db0d836c360b0d836cb64adb258e6961b1e586c95b64db2d92b6c15b64adb26d86c961b26d96c95b64b0d92b6c961b06d86c795b60b0d92b6c961b2586c9b65b1e589016241e5720390480b1202c484e4120390c83cb120390c84b120390c80e43212c480b1202c484e43212b909c864057212c484b1212c483ce4321000fe62a690046401957256d7c1a044401990048111a046401158532620814aa56208987383ab184bc3ab986343f81931a32a9863432a98c4e41e9907fffbd2c4ea03b2f156da0f7790863b335a4dff5618a2081882220898a9a14c9900655c985328111853214cf9c014019aa694c994c94c194c14c994c14c1aa62a6194c94c960a64c7e47e4ac7e3fcd0447e4b08225825e325e121312025f2b121325f25f2c090960978c4844860cfc847f211fc01fe3f011fc81fe7f20cfc01fe7f00cfc047f20cfc01fe7f00cfc833f20cfc847f103fc7e60cfc047f207219001c86420721900324108c800e432108c84192006480232103904840e4121833f011fc01fe7f103fc7e3e0cfc033f007f9fc047f011fc01fe7f007f8fc419f908fe308fe211fc047f00cfc847f207f9fc847f20cfcc0ff3f8067e7067e023f808fe40ff1f9067e211fc033f011fc833f3833f303fcfe3067e00ff3f908fe019f9833f20cfcc23f903fc7e019f808fe023f8e07f8fc40ff3f8833f1067e423f9847f207f8fcc19f9847f207f8fc033f211fc847f00cfc033f1a99d67fa933ccc957f313fea3d51f6a55f31a7069c3183d26534990c3934f8d3e236f88fe235f8a7e232f88fe331ce038c31588cb934a59673bc724235635633739738338f90f34a470437054a5324324237e3be32b7e333e2be337e27e32b3e333e23e333e33e233e37e22c2899a895211a89d21f0b0a2456484648648456484648694a648648456484582422c1211921a52159211592199219211592119211211fc5f17f95fc457f195fc5fe7f1fc658f88ef9be0b17c1df37c1df37c1df17c9df17c15df2577c15df277cdf277c5f277cdf3e577c962f93be2f9fff2bbe4ef9be4aef93be2f8ff2bbe0db96e0adb836e5b836e38e36e78d36e1b82b6e4db96e3cdb86e4f8f6e4db96e4db96e4db96e0adb836e1b92b6e0e4390cb12115c84721c84572179c87211c852195c84721486721c86721486572195c865890cb12179c87219c87219c872115c8477c5f0577c15df2577c95df077cdf0577c95df258be7cef8be4ef8be7ffcaef83be2f9f3be6f82bbe4b17c962f82c5f1e577c15c867214845890bfce4290fce43908e4390ce4390cb1219c85219c85219c872116242390a43390a42f2b90bfcb121ff95c87e721487e62898a2462891ee462890a26541f88c3e27f88c5121444f3c2144ccf4f0be4c2f93d3ccf72674cc5133dccd57a4990b061c985f217c9ff1fffbd2c4ee03f47d56cc0ffba9c6beb5d901ff59b0bf19df11f11bf1df19c9117c94922997c97c1c91b07645144c74874847ee6a25c3a4251335125133a4251335135132c5f19bf1bf19bf11f199f11f11bf19f199f19f195b07997c17c997c97c9b07307960be0cbe0be0cbe4be0b05f3e67c47c467c47c6567c667c47c4583e22b3e32b3e22b3e333e33e28457cc22be40d7caf98457c01af85f211c1e115f0b062f903c1ebe018be418be00d7c2f8062f9035f2be018be40d7c2f908af908af8062f9062f881af85f0115f006be57c8317c01af85f2115f2115f20783d7c0317c0457c0317c8457cc198380d7caf9035f0be606be17c40df13e3063e2037c6f8f08be2c0df13e3037c6f8a0c7c406f89f1031f16117c5037c4f8818f8c0e89d12c2344819448194482344a11a260ca2411a260744a894234482344e11a240744a89f06512c1944e117c606f8df1845f1845f140df13e3063e2f063e308be3063e3037c4f8f063e2063e3063e2063e308be2831f1031f142344aaf83289ff06512846897fffff08d130651354c414d45332e313030555555f2c113a6ce9be046f81a9467a1d687668aaa2a87e79a2a86d07341e6491924469329244513e39afc65f199484f8199ee6a5118a262899a94428999ee628918a262891be062891a94452118a2452199486a51191388aa1913844e9a2aa44e9913844e9a2aa44e1a2a844e9913a44e9511542b2270a1f14aef8cacf88a1f17cb0fc4585122b5123a43a43f2b513f35125132c28981d13a240744a8904e8981d12a25c0e89d1308d1203a2744c2344c1944819448194480e89d1275c2344b03a2744c0e89d1208d120651284689e0ca2703a2544c1944a0744e89c1944c1944e11a240ca2411a260ca260744e894194482344a0ca2708d120651208d1206513df03a2544e0ca260ca2613a2508d1203a2544982344fc23449ffc19a770669ce11d3b08e9c08e9c08e9c8474ef68334e230669cf8334ee11d3bedfe0cd39ff84b4e0474e3c19a737fc19a774fb7ffd1a8ac5ca3172d7853ebdc5cb2b5e0cd19b4668a2f083bc90bb3285d90ca6d29b0d1730d98e3545e10d7855e08c47023f8db3711c4a11fc32ec8bb23466cbb234668bb23172978328bc20ad7853466d19d32eccbb334674bb22c233450bb2fffbd2c4d583e9c98ec40ffad44632b35881ff5a9879a3345d915a336562e5128b9671fc8e068e28e068e08e068e31fc568e271fe8e25836733666e82c1b3959b3159b3159b39b749b3160d9cacd9ccd9cd9fcb06cc566cc566cc66cc6cffe566ce566cc566cc66ce6ce5836633666e93366367336736636e83662b36636e86e82c1b3960d98231c4231c4231c0191c4191c4231c0191c4191c0231c58191c20c8e2118e20c8e00c8e1038e11c0231c4231c4231c40e38471c191c6071c638846388463840e38c70038e31c00e38c70038e11c0231c40e3847108c71c0e3847181c718e00c8e2e0c8e2118e00c8e18323881c708e0118e211b940cb97f03b9572c2372af065ca81dcab97f832e5f03b9572c0ee5dca08dca03b9772c2372f81dcbb9411b940cb97fc1972e11b940cb94e11b940cb95ededde0cb956846e5fff09dcae12b960000001fcc2994b64d58f35b0cd6f1530d2d835b0d0220a60c31b2ca4c17e05f8c4b605fcb00bf18c303ab18eac30c98822208960c6b31040a55319544b630c6831b3195031b3200c29831534ab830a648022a0532581534c2990a60ac54c2c0532562a69602982c0a98614c05305640116031b305fc4b72b0c68b018d16031b305fc17ff2b7e3cadf92c3f0587e0df87e4df87e4f1b5fcb0bf1afcbf79617eff2c2fe6bfafc56bf95a42690a4072fa4272fa40690242690a42690242690240572f9a40901a409015a42690a40690a40690cbe690a4269024256901a40901a40909a42909a412f1a41ce9a42909a4090961202c5f8aefc77ebff9dfafde577ff3bf5f8efd7e2c5fbcefd7f2c5f8b17ef2bbf15df8efd7f3bf5fbcb17e2c5f8eff7f3bfdfcaefe77fbf162fc77fbf1dfefc58bf795dfcaefe77ebf1dfafe77fbf9dfefc58fc1fe7f057f93fcfe4b1f82c7e4aff1fe58fc95fe0aff258fcf9fe3f258fcff95fe0aff1e58fc95fe0b1f92bfc1fe3f257f83fc7e0ff1f8f2bfc9fe7f3e58fc9fe7f257f82c7e3cff3f92c7e4b1f83fcfe7cb1f8f2c7e0ff3f82bfc9fe7f257f9ffffcbf79dde6bf76bb87ef58ffffef3cf9bfdd65909587c663f127c65455e4d2641838c9224994c9221830c66c0ca4c0fa0ca4cae20e34c5632438cbc71290cbc638a4ad2642c05f0617c8c1c787124465f2c1fe7485485d3f72fffbd2c4ff83b74592d26ff796ce783199c1ff75a8a433f73512314c4212c15b9a1095b195b15b960be4cbe0be4cbe5838d838be4d838be0c6e4e30ce386e4d58ce38b071e563706370372582422c252960908c90d297cac90cc908908ac90cadb936e1b936e38c36e1b82c37056dc1b71c61b72dc9b70dc9b70dc162f9f2bbe4ef9be7caef92c5f3e577c15df058be0aef8390a422b908ae422b90cb12196242f2c4845890fce43908e4390ce4290ce43908db86e0db96e4db86e4b0dc9b72dc161b936e5b836e5b936e5b936e1b92c370586e0b0dc1b72dc95b7256dc1b70dc1b72dc9b72dc1b70dc95b7056dc9b70dcff9b72dcf9b70dc9b72dc15b70586e0b0dc1b70dc95b726dcb71e586e4b0dc7fffffffff95fc658f8fffffffcafe2ffffff390a43390e42f2b90ce43908b12195c86721c86721c85e5721796243f2c4845890cae422b908e4390ce4290cae422b908e4390cb1217fffff962f92c5f3fffffffffe58be7ffffffffcb17cd5f2c0a266f813e066289b3a462529c5265e39c50512651a4ca61c96096631294bc632f1cbc731294bc630e30ae532b8c90f3158c38f32438ae33158c1b82b0e34a8491985f04929924630798c1e3079978c71498948121184847141589486289948665210a2462898a26581448aca432c0a2462890a2456289958a27e58144cb1f17ff963e23f8fe3f2c7c5e6dc3726dcb726dc370586e4db86e4db96e4b1c79b70dc9b72dc1b72dc1b72dc9b70dc1b72dc9b72dcf9b72dcf9b72dc95b70586e0db96e0b121162432b908b12115c865890cae43fff2c486572195c85e6dcb706dcb706dcb726dc37256dc15b7256dc9b70dc161b92c372586e4adb8ff36e1b936e5b8ff390a422b908ae422b908ae432b908e4390ce42908e4290ffcb1211c8521962422c484721486721c86572196242ff2bbe3cb17c15df058be4aef82bbe4b17c95df258be0b17c9df17c79df37c95df277cdf258be3fcef8be3caef82bbe7ce4390ce42908ae42390e43ff2c48457211c8721962432c485e721c845890bce43908e42908ae43f2b90cae422b908ae43f390e432b90cb121e11a244c8532310ce157e3496d8d93103fcc48c61f831931cad5270ae8192a1276cb51950b27064a9958b034403a095cd245b3b7114c8a46353c2ce1fffbd2c4ea83f37d5cce0ff6d7c60934de41cd6691444353298d52a832342b64c8a324908d5644353aa8444a1cf46b3f9a6506a968b563fea8af41bb1a648798f1e63c898c266f07155e133b3428486c913c33670cf9a295866cf19e39485681a081a081a1e129c677e57e1a07cacd338ad120ecd23499f1de8cc44d0f8ce46e19e819c990a0fe52909c5101a089f871a3e54287b64d19551340e34117fed19e91222672049f133f1b24748b928d4a8f709b9371d2478a3a26e891e375d22fc75f375b28f33ce909bd76cecbc9301f81dc82ceab0a9713b93676594f58edb49da3bef3c2f3bb03b6b1cbdf772e8cf0b4730257481e26ecdc70de789b62ab46d344ae916a6e3981b8f916a586c6b29d8d916c6f3a6eb84df9bed5b98379ee61f52c72bd3d3dc87e821ca177e00791c393b87227f2cd69c7ddc7a067703cc3b0ee47dafcbe61fbad63ee01800661f807c0111c7079e00600181e7819600647aa47e30c10cc641634bbb8df69a30a24cd04093289c8cae19347bb8e0aea368b28d8ea232684cca8573291ccd40a33350ecc624a30995cd890738837cd083103010c969c366b18d326230e03d1b0c1a1c317908ca25031f8502c0b2c898684248150e4120d48b4e061269366e3a6e4269a868803069b4e9c149d4e930374461238afa008c638402091a80889ac8840afd213404097154d5215a622b3ded69d6804b9a641a640282a5500d598d64c98100a470c870a802590fcd274de84d350cb014ba7df57e00281aa52ce5e2c55733dceccb1da81986f825237da3552354c4d752de4b60161a862611a68063251aa618a71c381bcaa78ad160060880a19d761ac460168cb38280a22ba4826407294a76971400b370db81204d8111b8f344f102a8e2e36a8dae0369545055d5692f2ca619932e67782e235a17eb5aa3a58661da90d3b4ca588b5d4e50214d093204b8ac74401342cd035225f635d0f3639a0ba51c4e648a6f9554c0b385ced7393cb8cf34a6970a6b5ba5a6ed5a5a5d534bad56954bad5594cb6f5694cb795a354dda58cd3674b19b3a954bad56954bad5594cb7095592028b51774bdc5f541a2a0287884f4281658d330cc64c37028f90c0237c00d19e686807c2e76e46b7a60fc415882830e5341837c7077c6a1e61ac1664858156418b18fffbd2c4f28234520cec0e67178619bf8c199c3fa82898c416f157c0b2aa1a08eb2a42498c798ab00190bb440d8a34055cca2823337443517315c0a3e43008df023463a6680c44a04145d541a56555050f50c51751550e50d5165655505575344d90148c4b04b844f2580cbc28c30941d0128808c0c28a9890e38611942802e5abb7325d56e5d9a765618b8414088443052520e8c4002e3913005532a0c5b0af083a29c02e4d0e01ac3546c3805c20892c065e166015260121a3178ad6bb7265da54a5c10a804031921214708210972048e1862c885c42852520e8c4422dda0115e3427f6028360882dea6429528dc91a8ec94a92891e98050305180050a985124a81d488085970e60634c20061c54c4871c3084a5a82dfa5123ea732c0a8f2db5805575e0d11b0ae972bcbb522ad2a5c49513d288a9280bb96c32d04749fc894c24d10a7523635c282d52c08ee9955ca55d2fae14ec0c70e94c414d45332e3130305555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555";
678
+ var Hc = Object.defineProperty, Pc = Object.getOwnPropertyDescriptor, I = (c, e, a, f) => {
679
+ for (var t = f > 1 ? void 0 : f ? Pc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
680
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
681
+ return f && t && Hc(e, a, t), t;
683
682
  };
684
- const $ = he.noConflict();
683
+ const $ = pe.noConflict();
685
684
  $.setLevel("info");
686
- const V = "cb_";
685
+ const q = "cb_";
687
686
  class M extends X {
688
687
  constructor() {
689
688
  super(...arguments), this.actionIdCounter = 0, this.wsClient = null, this.replyMessage = null;
690
689
  }
691
690
  // this is called at startup
692
691
  setSetting(e) {
693
- $.info("appState: Startup: setSetting", e), this.setting = e, this.initBot().catch((o) => {
694
- $.info(`Exception during bot initialization: ${o.message}`);
692
+ $.info("appState: Startup: setSetting", e), this.setting = e, this.initBot().catch((a) => {
693
+ $.info(`Exception during bot initialization: ${a.message}`);
695
694
  });
696
695
  }
697
696
  clearConversation() {
@@ -714,25 +713,25 @@ class M extends X {
714
713
  }
715
714
  async initBot() {
716
715
  if (!this.botSettingsInitialized) {
717
- const o = `${this.setting.url.startsWith("localhost") ? "http" : "https"}://${this.setting.url}/api/bot/settings/${this.setting.orgId}/${this.setting.botId}`;
718
- $.info(`Getting bot settings at ${o} ...`);
719
- let a = null, r = null;
716
+ const a = `${this.setting.url.startsWith("localhost") ? "http" : "https"}://${this.setting.url}/api/bot/settings/${this.setting.orgId}/${this.setting.botId}`;
717
+ $.info(`Getting bot settings at ${a} ...`);
718
+ let f = null, t = null;
720
719
  try {
721
- a = await fetch(o, {
720
+ f = await fetch(a, {
722
721
  headers: {
723
722
  "Access-Control-Allow-Origin": "null",
724
723
  "X-Enegel-Signature": this.setting.botId
725
724
  }
726
- }), !a.ok || a.status !== 200 ? $.error(`Failed to get bot ${this.setting.botId} settings: ${a.status} ${a.statusText}`) : r = await a.json();
727
- } catch (s) {
728
- $.error(`Failed to get bot ${this.setting.botId} settings: ${s.message}`), r = null;
725
+ }), !f.ok || f.status !== 200 ? $.error(`Failed to get bot ${this.setting.botId} settings: ${f.status} ${f.statusText}`) : t = await f.json();
726
+ } catch (o) {
727
+ $.error(`Failed to get bot ${this.setting.botId} settings: ${o.message}`), t = null;
729
728
  }
730
- if (this.botSettingsInitialized = !0, !r) {
729
+ if (this.botSettingsInitialized = !0, !t) {
731
730
  $.error("No bot settings available - bot disabled"), this.disabled = !0;
732
731
  return;
733
732
  }
734
- this.setting.welcomeMessage = (r == null ? void 0 : r.welcomeMessage) || "How can I help ?", this.setting.engageMessage = (r == null ? void 0 : r.engageMessage) || "How can I help ?", this.setting.engageTimeout = (r == null ? void 0 : r.engageTimeout) || 5, setTimeout(() => {
735
- this.open || ($.info("Engaging User !"), this.engage = !0);
733
+ this.setting.welcomeMessage = (t == null ? void 0 : t.welcomeMessage) || "How can I help ?", this.setting.engageMessage = (t == null ? void 0 : t.engageMessage) || "How can I help ?", this.setting.engageTimeout = (t == null ? void 0 : t.engageTimeout) || 5, setTimeout(() => {
734
+ this.showEngagePopup();
736
735
  }, this.setting.engageTimeout * 1e3);
737
736
  }
738
737
  Array.isArray(this.messages) && this.messages.length <= 0 && this.addMessage({
@@ -745,20 +744,34 @@ class M extends X {
745
744
  $.error(`Exception during ws client startup: ${e.message}`);
746
745
  }));
747
746
  }
747
+ showEngagePopup() {
748
+ if (this.open)
749
+ return;
750
+ $.info("Engaging User !"), this.engage = !0;
751
+ const e = (o) => {
752
+ const d = new Uint8Array(o.length / 2);
753
+ for (let b = 0; b < d.length; b++)
754
+ d[b] = parseInt(o.substr(b * 2, 2), 16);
755
+ return d;
756
+ };
757
+ let a = new Blob([e(Ic)], { type: "application/octet-stream" });
758
+ const f = URL.createObjectURL(a);
759
+ new Audio(f).play();
760
+ }
748
761
  // Lazy initialization: avoid connecting until we actually need to send something
749
762
  // TODO Depending on state, start ws & connect immediately when initialized
750
763
  // use case: page refresh in the middle of the conversation
751
764
  async getWsClient() {
752
765
  if (this.wsClient)
753
766
  return this.wsClient;
754
- const o = `${this.setting.url.startsWith("localhost") ? "ws" : "wss"}://${this.setting.url}/api/bot/connect/${this.setting.orgId}/${this.setting.botId}/${this.conversationId}`;
755
- return $.info(`Initiating ws connection to ${o} ...`), this.wsClient = new Lt({
756
- url: o,
767
+ const a = `${this.setting.url.startsWith("localhost") ? "ws" : "wss"}://${this.setting.url}/api/bot/connect/${this.setting.orgId}/${this.setting.botId}/${this.conversationId}`;
768
+ return $.info(`Initiating ws connection to ${a} ...`), this.wsClient = new Oc({
769
+ url: a,
757
770
  orgId: this.setting.orgId,
758
771
  botId: this.setting.botId,
759
772
  convId: this.conversationId
760
- }), await this.wsClient.start(), this.wsClient.onMessage = (a) => {
761
- this.handleWscMessage(a);
773
+ }), await this.wsClient.start(), this.wsClient.onMessage = (f) => {
774
+ this.handleWscMessage(f);
762
775
  }, this.wsClient;
763
776
  }
764
777
  handleWscMessage(e) {
@@ -767,16 +780,16 @@ class M extends X {
767
780
  if (this.replyMessage)
768
781
  this.replyMessage.data.text = e.text, this.updateMessage(this.replyMessage, ""), this.replyMessage = null;
769
782
  else {
770
- const o = {
783
+ const a = {
771
784
  type: "text",
772
785
  author: "assistant",
773
786
  data: {
774
787
  text: e.text
775
788
  }
776
789
  };
777
- "userName" in e && (o.data.userName = e.userName, this.connectWs = "true"), "userAvatar" in e && (o.data.userAvatar = e.userAvatar, this.connectWs = "true");
778
- const a = this.formatMessage(o);
779
- this.messages = this.messages.concat([a]);
790
+ "userName" in e && (a.data.userName = e.userName, this.connectWs = "true"), "userAvatar" in e && (a.data.userAvatar = e.userAvatar, this.connectWs = "true");
791
+ const f = this.formatMessage(a);
792
+ this.messages = this.messages.concat([f]);
780
793
  }
781
794
  break;
782
795
  }
@@ -803,26 +816,26 @@ class M extends X {
803
816
  }
804
817
  addActions(e) {
805
818
  if (Array.isArray(e) && e.length > 0) {
806
- const o = e.map((a) => Object.assign(a, { internalId: this.actionIdCounter++ }));
807
- this.actions = this.actions.concat(o);
819
+ const a = e.map((f) => Object.assign(f, { internalId: this.actionIdCounter++ }));
820
+ this.actions = this.actions.concat(a);
808
821
  }
809
822
  }
810
823
  removeAction(e) {
811
- const o = this.actions.findIndex((a) => a.internalId === e);
812
- if (o !== -1) {
813
- this.actions.splice(o, 1);
814
- const a = [];
815
- this.actions = a.concat(this.actions);
824
+ const a = this.actions.findIndex((f) => f.internalId === e);
825
+ if (a !== -1) {
826
+ this.actions.splice(a, 1);
827
+ const f = [];
828
+ this.actions = f.concat(this.actions);
816
829
  }
817
830
  }
818
831
  async sendMessage(e) {
819
832
  e = this.formatMessage(e), $.info("Send Message:", e), this.messages = this.messages.concat([e]);
820
- const o = await this.getWsClient();
821
- if (!o) {
833
+ const a = await this.getWsClient();
834
+ if (!a) {
822
835
  $.error("Error - failed to obtain ws client"), this.replyMessage = null;
823
836
  return;
824
837
  }
825
- o.sendMessage({
838
+ a.sendMessage({
826
839
  type: "message",
827
840
  id: e.id,
828
841
  text: e.data.text
@@ -830,8 +843,8 @@ class M extends X {
830
843
  }
831
844
  // TODO revisit below
832
845
  formatMessage(e) {
833
- var o;
834
- return e.id || (e.id = xe()), e.timestamp = Date.now(), e.author === "assistant" && (e.replyId = (o = this.messages[this.messages.length - 1]) == null ? void 0 : o.id), e;
846
+ var a;
847
+ return e.id || (e.id = xe()), e.timestamp = Date.now(), e.author === "assistant" && (e.replyId = (a = this.messages[this.messages.length - 1]) == null ? void 0 : a.id), e;
835
848
  }
836
849
  // add message
837
850
  addMessage(e) {
@@ -847,45 +860,45 @@ class M extends X {
847
860
  });
848
861
  }
849
862
  // update message
850
- updateMessage(e, o) {
851
- const a = this.formatMessage(e);
852
- return a.isThinking = !1, o && (a.data.text += o), this.messages = this.messages.map((r) => r.id === a.id ? a : r), a;
863
+ updateMessage(e, a) {
864
+ const f = this.formatMessage(e);
865
+ return f.isThinking = !1, a && (f.data.text += a), this.messages = this.messages.map((t) => t.id === f.id ? f : t), f;
853
866
  }
854
867
  // remove message
855
868
  removeMessage(e) {
856
- this.messages = this.messages.filter((o) => o.id !== e);
869
+ this.messages = this.messages.filter((a) => a.id !== e);
857
870
  }
858
871
  // clear messages
859
872
  clearMessages() {
860
873
  this.messages = [];
861
874
  }
862
875
  }
863
- H([
864
- R({ prefix: V }),
865
- L({ value: "en" })
876
+ I([
877
+ V({ prefix: q }),
878
+ O({ value: "en" })
866
879
  ], M.prototype, "language", 2);
867
- H([
868
- R({ prefix: V }),
869
- L({ value: "light" })
880
+ I([
881
+ V({ prefix: q }),
882
+ O({ value: "light" })
870
883
  ], M.prototype, "theme", 2);
871
- H([
872
- R({ prefix: V }),
873
- L({ type: Boolean, value: !1 })
884
+ I([
885
+ V({ prefix: q }),
886
+ O({ type: Boolean, value: !1 })
874
887
  ], M.prototype, "open", 2);
875
- H([
876
- R({ prefix: V }),
877
- L({ value: "false" })
888
+ I([
889
+ V({ prefix: q }),
890
+ O({ value: "false" })
878
891
  ], M.prototype, "connectWs", 2);
879
- H([
880
- R({ prefix: V }),
881
- L({ value: xe() })
892
+ I([
893
+ V({ prefix: q }),
894
+ O({ value: xe() })
882
895
  ], M.prototype, "conversationId", 2);
883
- H([
884
- R({ prefix: V }),
885
- L({ type: Array, value: [] })
896
+ I([
897
+ V({ prefix: q }),
898
+ O({ type: Array, value: [] })
886
899
  ], M.prototype, "messages", 2);
887
- H([
888
- L({
900
+ I([
901
+ O({
889
902
  type: Array,
890
903
  value: []
891
904
  /*
@@ -928,18 +941,18 @@ H([
928
941
  ],*/
929
942
  })
930
943
  ], M.prototype, "actions", 2);
931
- H([
932
- L({ type: Boolean, value: !1 })
944
+ I([
945
+ O({ type: Boolean, value: !1 })
933
946
  ], M.prototype, "botSettingsInitialized", 2);
934
- H([
935
- L({ type: Boolean, value: !1 })
947
+ I([
948
+ O({ type: Boolean, value: !1 })
936
949
  ], M.prototype, "disabled", 2);
937
- H([
938
- L({ type: Boolean, value: !1 })
950
+ I([
951
+ O({ type: Boolean, value: !1 })
939
952
  ], M.prototype, "engage", 2);
940
- H([
941
- R({ prefix: V }),
942
- L({
953
+ I([
954
+ V({ prefix: q }),
955
+ O({
943
956
  type: Object,
944
957
  value: {
945
958
  orgId: null,
@@ -949,8 +962,8 @@ H([
949
962
  }
950
963
  })
951
964
  ], M.prototype, "setting", 2);
952
- const d = new M(), Pt = x`
953
- ${I}
965
+ const n = new M(), Ec = x`
966
+ ${H}
954
967
  :host {
955
968
  position: relative;
956
969
  font-weight: bold;
@@ -960,7 +973,7 @@ const d = new M(), Pt = x`
960
973
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.2);
961
974
  width: 100%;
962
975
  text-align: left;
963
- color: rgba(255, 255, 255, 1);
976
+ color: var(--enegelai-bot-header-color, rgba(255, 255, 255, 1));
964
977
  border-radius-top-left: 6px;
965
978
  border-radius-top-right: 6px;
966
979
  top: 0;
@@ -988,57 +1001,65 @@ const d = new M(), Pt = x`
988
1001
 
989
1002
  .cb-setting-button {
990
1003
  font-size: 1.5rem;
991
- color: white;
1004
+ color: var(--enegelai-bot-header-color, rgba(255, 255, 255, 1));
1005
+ }
1006
+
1007
+ .cb-header-logo {
1008
+ color: var(--enegelai-bot-header-color, rgba(255, 255, 255, 1));
1009
+ }
1010
+
1011
+ .cb-header-close {
1012
+ color: var(--enegelai-bot-header-color, rgba(255, 255, 255, 1));
992
1013
  }
993
1014
 
994
1015
  .cb-setting-button cb-icon {
995
1016
  display: inline;
996
1017
  }
997
1018
  `;
998
- var zt = Object.defineProperty, Et = Object.getOwnPropertyDescriptor, Tt = (t, e, o, a) => {
999
- for (var r = a > 1 ? void 0 : a ? Et(e, o) : e, s = t.length - 1, n; s >= 0; s--)
1000
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
1001
- return a && r && zt(e, o, r), r;
1019
+ var zc = Object.defineProperty, Tc = Object.getOwnPropertyDescriptor, Bc = (c, e, a, f) => {
1020
+ for (var t = f > 1 ? void 0 : f ? Tc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1021
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
1022
+ return f && t && zc(e, a, t), t;
1002
1023
  };
1003
- class C extends de {
1024
+ class C extends ie {
1004
1025
  constructor() {
1005
1026
  super(...arguments), this.lang = "en";
1006
1027
  }
1007
- emit(e, o) {
1008
- const a = new CustomEvent(e, {
1028
+ emit(e, a) {
1029
+ const f = new CustomEvent(e, {
1009
1030
  bubbles: !0,
1010
1031
  cancelable: !1,
1011
1032
  composed: !0,
1012
1033
  detail: {},
1013
- ...o
1034
+ ...a
1014
1035
  });
1015
- return this.dispatchEvent(a), a;
1036
+ return this.dispatchEvent(f), f;
1016
1037
  }
1017
1038
  }
1018
- Tt([
1019
- l({ type: String })
1039
+ Bc([
1040
+ r({ type: String })
1020
1041
  ], C.prototype, "lang", 2);
1021
- const oe = '<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>';
1022
- var Bt = Object.defineProperty, Rt = Object.getOwnPropertyDescriptor, We = (t, e, o, a) => {
1023
- for (var r = a > 1 ? void 0 : a ? Rt(e, o) : e, s = t.length - 1, n; s >= 0; s--)
1024
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
1025
- return a && r && Bt(e, o, r), r;
1042
+ const te = '<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>';
1043
+ var Rc = Object.defineProperty, Vc = Object.getOwnPropertyDescriptor, We = (c, e, a, f) => {
1044
+ for (var t = f > 1 ? void 0 : f ? Vc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1045
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
1046
+ return f && t && Rc(e, a, t), t;
1026
1047
  };
1027
- let re = class extends C {
1048
+ let fe = class extends C {
1028
1049
  constructor() {
1029
1050
  super(...arguments), this.title = "ChatBot";
1030
1051
  }
1031
1052
  render() {
1032
- return c` <header class="cb-header" part="header">
1053
+ return s` <header class="cb-header" part="header">
1033
1054
  <span class="left">
1034
- <sl-button @click=${this._clickHandler} class="cb-setting-button" variant="text" circle>
1035
- <cb-icon color="white" svg="${d.setting.logoSvg}"></cb-icon>
1055
+ <sl-button class="cb-setting-button" variant="text" circle>
1056
+ <cb-icon class="cb-header-logo" svg="${n.setting.logoSvg}"></cb-icon>
1036
1057
  </sl-button>
1037
1058
  </span>
1038
1059
  <span class="center title">${this.title}</span>
1039
1060
  <span class="right">
1040
1061
  <sl-button @click=${this._clickCloseHandler} class="cb-setting-button" variant="text" circle>
1041
- <cb-icon color="white" svg="${oe}"></cb-icon>
1062
+ <cb-icon class="cb-header-close" svg="${te}"></cb-icon>
1042
1063
  </sl-button>
1043
1064
  </span>
1044
1065
  </header>`;
@@ -1054,15 +1075,15 @@ let re = class extends C {
1054
1075
  });
1055
1076
  }
1056
1077
  };
1057
- re.styles = Pt;
1078
+ fe.styles = Ec;
1058
1079
  We([
1059
- l({ type: String, attribute: "title" })
1060
- ], re.prototype, "title", 2);
1061
- re = We([
1080
+ r({ type: String, attribute: "title" })
1081
+ ], fe.prototype, "title", 2);
1082
+ fe = We([
1062
1083
  k("cb-header")
1063
- ], re);
1064
- const Vt = x`
1065
- ${I}
1084
+ ], fe);
1085
+ const qc = x`
1086
+ ${H}
1066
1087
  .cb-footer {
1067
1088
  line-height: 60px;
1068
1089
  font-size: 16px;
@@ -1076,17 +1097,17 @@ const Vt = x`
1076
1097
  color: var(--primary-color);
1077
1098
  }
1078
1099
  `;
1079
- var qt = Object.defineProperty, Dt = Object.getOwnPropertyDescriptor, Ft = (t, e, o, a) => {
1080
- for (var r = a > 1 ? void 0 : a ? Dt(e, o) : e, s = t.length - 1, n; s >= 0; s--)
1081
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
1082
- return a && r && qt(e, o, r), r;
1100
+ var Dc = Object.defineProperty, Fc = Object.getOwnPropertyDescriptor, Uc = (c, e, a, f) => {
1101
+ for (var t = f > 1 ? void 0 : f ? Fc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1102
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
1103
+ return f && t && Dc(e, a, t), t;
1083
1104
  };
1084
1105
  let ke = class extends C {
1085
1106
  constructor() {
1086
1107
  super(...arguments), this.year = (/* @__PURE__ */ new Date()).getFullYear();
1087
1108
  }
1088
1109
  render() {
1089
- return c`
1110
+ return s`
1090
1111
  <div class="cb-footer" part="footer">
1091
1112
  yugasun@${this.year}
1092
1113
  <a
@@ -1116,12 +1137,12 @@ let ke = class extends C {
1116
1137
  `;
1117
1138
  }
1118
1139
  };
1119
- ke.styles = Vt;
1120
- ke = Ft([
1140
+ ke.styles = qc;
1141
+ ke = Uc([
1121
1142
  k("cb-footer")
1122
1143
  ], ke);
1123
- const Ut = x`
1124
- ${I}
1144
+ const Zc = x`
1145
+ ${H}
1125
1146
 
1126
1147
  :host {
1127
1148
  width: 100%;
@@ -1217,14 +1238,14 @@ const Ut = x`
1217
1238
  transition: background 0s;
1218
1239
  }
1219
1240
  `;
1220
- var Zt = Object.defineProperty, Nt = Object.getOwnPropertyDescriptor, Wt = (t, e, o, a) => {
1221
- for (var r = a > 1 ? void 0 : a ? Nt(e, o) : e, s = t.length - 1, n; s >= 0; s--)
1222
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
1223
- return a && r && Zt(e, o, r), r;
1241
+ var Nc = Object.defineProperty, Wc = Object.getOwnPropertyDescriptor, Kc = (c, e, a, f) => {
1242
+ for (var t = f > 1 ? void 0 : f ? Wc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1243
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
1244
+ return f && t && Nc(e, a, t), t;
1224
1245
  };
1225
- let _e = class extends de {
1246
+ let _e = class extends ie {
1226
1247
  render() {
1227
- return c` <div class="cb-thinking" style="color: rgb(34, 34, 34);"><span></span><span></span><span></span></div>`;
1248
+ return s` <div class="cb-thinking" style="color: rgb(34, 34, 34);"><span></span><span></span><span></span></div>`;
1228
1249
  }
1229
1250
  };
1230
1251
  _e.styles = x`
@@ -1265,31 +1286,31 @@ _e.styles = x`
1265
1286
  }
1266
1287
  }
1267
1288
  `;
1268
- _e = Wt([
1289
+ _e = Kc([
1269
1290
  k("cb-thinking")
1270
1291
  ], _e);
1271
- var Kt = Object.defineProperty, Jt = Object.getOwnPropertyDescriptor, Ke = (t, e, o, a) => {
1272
- for (var r = a > 1 ? void 0 : a ? Jt(e, o) : e, s = t.length - 1, n; s >= 0; s--)
1273
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
1274
- return a && r && Kt(e, o, r), r;
1292
+ var Jc = Object.defineProperty, Yc = Object.getOwnPropertyDescriptor, Ke = (c, e, a, f) => {
1293
+ for (var t = f > 1 ? void 0 : f ? Yc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1294
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
1295
+ return f && t && Jc(e, a, t), t;
1275
1296
  };
1276
- let ae = class extends C {
1297
+ let oe = class extends C {
1277
1298
  constructor() {
1278
1299
  super(...arguments), this.files = [];
1279
1300
  }
1280
1301
  render() {
1281
- return c` <div class="cb-uploading">
1302
+ return s` <div class="cb-uploading">
1282
1303
  <div class="cb-uploading__title">
1283
1304
  <sl-spinner class="cb-spinner"></sl-spinner>
1284
1305
  <span>Uploading...</span>
1285
1306
  </div>
1286
1307
  <div class="cb-uploading__filelist">
1287
- ${this.files.map((t) => c`${t.name}<br />`)}
1308
+ ${this.files.map((c) => s`${c.name}<br />`)}
1288
1309
  </div>
1289
1310
  </div>`;
1290
1311
  }
1291
1312
  };
1292
- ae.styles = x`
1313
+ oe.styles = x`
1293
1314
  .cb-uploading {
1294
1315
  text-align: left;
1295
1316
  }
@@ -1308,13 +1329,13 @@ ae.styles = x`
1308
1329
  }
1309
1330
  `;
1310
1331
  Ke([
1311
- l({ type: Array })
1312
- ], ae.prototype, "files", 2);
1313
- ae = Ke([
1332
+ r({ type: Array })
1333
+ ], oe.prototype, "files", 2);
1334
+ oe = Ke([
1314
1335
  k("cb-uploading")
1315
- ], ae);
1316
- const Yt = x`
1317
- ${I}
1336
+ ], oe);
1337
+ const Gc = x`
1338
+ ${H}
1318
1339
  :host {
1319
1340
  }
1320
1341
 
@@ -1334,17 +1355,17 @@ const Yt = x`
1334
1355
  margin-right: 0.2em;
1335
1356
  }
1336
1357
  `;
1337
- var Gt = Object.defineProperty, Xt = Object.getOwnPropertyDescriptor, Se = (t, e, o, a) => {
1338
- for (var r = a > 1 ? void 0 : a ? Xt(e, o) : e, s = t.length - 1, n; s >= 0; s--)
1339
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
1340
- return a && r && Gt(e, o, r), r;
1358
+ var Xc = Object.defineProperty, Qc = Object.getOwnPropertyDescriptor, Se = (c, e, a, f) => {
1359
+ for (var t = f > 1 ? void 0 : f ? Qc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1360
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
1361
+ return f && t && Xc(e, a, t), t;
1341
1362
  };
1342
- let K = class extends de {
1363
+ let K = class extends ie {
1343
1364
  constructor() {
1344
1365
  super(...arguments), this.url = "", this.inverse = !1;
1345
1366
  }
1346
1367
  render() {
1347
- return c`
1368
+ return s`
1348
1369
  <a
1349
1370
  class="
1350
1371
  cb-external-link link__item
@@ -1385,42 +1406,42 @@ K.styles = x`
1385
1406
  }
1386
1407
  `;
1387
1408
  Se([
1388
- l({ type: String })
1409
+ r({ type: String })
1389
1410
  ], K.prototype, "url", 2);
1390
1411
  Se([
1391
- l({ type: Boolean })
1412
+ r({ type: Boolean })
1392
1413
  ], K.prototype, "inverse", 2);
1393
1414
  K = Se([
1394
1415
  k("cb-external-link")
1395
1416
  ], K);
1396
- const Qt = '<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>', eo = '<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>', to = '<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>', oo = '<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>', ro = '<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>', ao = '<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>', so = '<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>';
1397
- var no = Object.defineProperty, io = Object.getOwnPropertyDescriptor, Ae = (t, e, o, a) => {
1398
- for (var r = a > 1 ? void 0 : a ? io(e, o) : e, s = t.length - 1, n; s >= 0; s--)
1399
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
1400
- return a && r && no(e, o, r), r;
1417
+ const ea = '<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>', ca = '<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>', aa = '<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>', ta = '<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>', fa = '<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>', oa = '<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>', da = '<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>';
1418
+ var ba = Object.defineProperty, ra = Object.getOwnPropertyDescriptor, Ae = (c, e, a, f) => {
1419
+ for (var t = f > 1 ? void 0 : f ? ra(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1420
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
1421
+ return f && t && ba(e, a, t), t;
1401
1422
  };
1402
1423
  const Pe = {
1403
- pdf: eo,
1404
- txt: Qt,
1405
- md: to,
1406
- csv: oo,
1407
- ppd: ro,
1408
- doc: ao,
1409
- docx: so
1424
+ pdf: ca,
1425
+ txt: ea,
1426
+ md: aa,
1427
+ csv: ta,
1428
+ ppd: fa,
1429
+ doc: oa,
1430
+ docx: da
1410
1431
  };
1411
1432
  let J = class extends C {
1412
1433
  constructor() {
1413
1434
  super(...arguments), this.filename = "", this.url = "";
1414
1435
  }
1415
1436
  get type() {
1416
- const t = "txt";
1437
+ const c = "txt";
1417
1438
  if (!this.filename)
1418
- return t;
1439
+ return c;
1419
1440
  const e = this.filename.split(".").pop();
1420
- return e ? e.toLowerCase() : t;
1441
+ return e ? e.toLowerCase() : c;
1421
1442
  }
1422
1443
  render() {
1423
- return c`
1444
+ return s`
1424
1445
  <cb-external-link url="${this.url}" inverse>
1425
1446
  <div class="cb-file">
1426
1447
  ${this.renderFileIcon()}
@@ -1430,7 +1451,7 @@ let J = class extends C {
1430
1451
  `;
1431
1452
  }
1432
1453
  renderFileIcon() {
1433
- return c`
1454
+ return s`
1434
1455
  <cb-icon
1435
1456
  class="cb-file-icon"
1436
1457
  svg="${Pe[this.type] || Pe.txt}"
@@ -1438,17 +1459,17 @@ let J = class extends C {
1438
1459
  `;
1439
1460
  }
1440
1461
  };
1441
- J.styles = Yt;
1462
+ J.styles = Gc;
1442
1463
  Ae([
1443
- l({ type: String })
1464
+ r({ type: String })
1444
1465
  ], J.prototype, "filename", 2);
1445
1466
  Ae([
1446
- l({ type: String })
1467
+ r({ type: String })
1447
1468
  ], J.prototype, "url", 2);
1448
1469
  J = Ae([
1449
1470
  k("cb-file")
1450
1471
  ], J);
1451
- const lo = '<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>', co = '<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>', po = x`
1472
+ const sa = '<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>', na = '<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>', ia = x`
1452
1473
  pre code.hljs {
1453
1474
  display: block;
1454
1475
  overflow-x: auto;
@@ -2613,9 +2634,9 @@ const lo = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
2613
2634
  pre {
2614
2635
  background-color: #282c34;
2615
2636
  }
2616
- `, ho = x`
2617
- ${I}
2618
- ${po}
2637
+ `, la = x`
2638
+ ${H}
2639
+ ${ia}
2619
2640
 
2620
2641
  .cb-message-row {
2621
2642
  width: 100%;
@@ -2707,7 +2728,8 @@ const lo = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
2707
2728
  .user-message {
2708
2729
  //margin-right: 0px;
2709
2730
  //margin-left: auto;
2710
- color: rgb(255, 255, 255);
2731
+ //color: rgb(255, 255, 255);
2732
+ color: var(--enegelai-bot-message-user-color, rgb(255, 255, 255));
2711
2733
  //background-color: var(--primary-color);
2712
2734
  background-color: var(--enegelai-bot-message-user-background, rgba(0, 208, 117, 1));
2713
2735
  text-align: left;
@@ -2723,7 +2745,8 @@ const lo = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
2723
2745
  //margin-left: -12px;
2724
2746
  margin-left: 0px;
2725
2747
  margin-top: 2px;
2726
- color: rgb(34, 34, 34);
2748
+ //color: rgb(34, 34, 34);
2749
+ color: var(--enegelai-bot-message-bot-color, rgb(34, 34, 34));
2727
2750
  background-color: var(--enegelai-bot-message-bot-background, rgba(234, 234, 234, 0.3));
2728
2751
  padding: 4px 12px 6px 12px;
2729
2752
  }
@@ -2733,7 +2756,8 @@ const lo = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
2733
2756
  //margin-left: -12px;
2734
2757
  margin-left: 0px;
2735
2758
  margin-top: 2px;
2736
- color: rgba(34, 34, 34, 0.6);
2759
+ //color: rgba(34, 34, 34, 0.6);
2760
+ color: var(--enegelai-bot-message-system-color, rgba(34, 34, 34, 0.6));
2737
2761
  background-color: var(--enegelai-bot-message-system-background, rgba(254, 243, 199, 0.5));
2738
2762
  padding: 4px 12px 6px 12px;
2739
2763
  }
@@ -2769,20 +2793,20 @@ const lo = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
2769
2793
  font-size: 1em;
2770
2794
  }
2771
2795
  `;
2772
- function uo() {
2773
- const t = new gt({
2796
+ function pa() {
2797
+ const c = new hc({
2774
2798
  linkify: !0
2775
2799
  });
2776
- return t.use(bt, { attrs: { target: "_blank", rel: "noopener" } }), t;
2800
+ return c.use(uc, { attrs: { target: "_blank", rel: "noopener" } }), c;
2777
2801
  }
2778
- async function ze(t) {
2779
- const e = uo();
2780
- return c`${q(e.render(t))}`;
2802
+ async function Ee(c) {
2803
+ const e = pa();
2804
+ return s`${B(e.render(c))}`;
2781
2805
  }
2782
- var go = Object.defineProperty, bo = Object.getOwnPropertyDescriptor, ue = (t, e, o, a) => {
2783
- for (var r = a > 1 ? void 0 : a ? bo(e, o) : e, s = t.length - 1, n; s >= 0; s--)
2784
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
2785
- return a && r && go(e, o, r), r;
2806
+ var ha = Object.defineProperty, ua = Object.getOwnPropertyDescriptor, he = (c, e, a, f) => {
2807
+ for (var t = f > 1 ? void 0 : f ? ua(e, a) : e, o = c.length - 1, d; o >= 0; o--)
2808
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
2809
+ return f && t && ha(e, a, t), t;
2786
2810
  };
2787
2811
  let F = class extends C {
2788
2812
  constructor() {
@@ -2795,8 +2819,8 @@ let F = class extends C {
2795
2819
  * updated lifecycle hook: same to vue mounted or react useEffect
2796
2820
  * @param changedProperties
2797
2821
  */
2798
- updated(t) {
2799
- super.updated(t), t.has("message") && requestIdleCallback(() => {
2822
+ updated(c) {
2823
+ super.updated(c), c.has("message") && requestIdleCallback(() => {
2800
2824
  this._addCopyEvents();
2801
2825
  });
2802
2826
  }
@@ -2809,28 +2833,28 @@ let F = class extends C {
2809
2833
  });
2810
2834
  }
2811
2835
  _addCopyEvents() {
2812
- this.copyBtns.forEach((t) => {
2813
- t.addEventListener("click", () => {
2814
- var o, a;
2815
- const e = (a = (o = t.parentElement) == null ? void 0 : o.nextElementSibling) == null ? void 0 : a.textContent;
2816
- e && At(e).then(() => {
2817
- t.textContent = "Success", setTimeout(() => {
2818
- t.textContent = "Copy";
2836
+ this.copyBtns.forEach((c) => {
2837
+ c.addEventListener("click", () => {
2838
+ var a, f;
2839
+ const e = (f = (a = c.parentElement) == null ? void 0 : a.nextElementSibling) == null ? void 0 : f.textContent;
2840
+ e && Ac(e).then(() => {
2841
+ c.textContent = "Success", setTimeout(() => {
2842
+ c.textContent = "Copy";
2819
2843
  }, 500);
2820
2844
  });
2821
2845
  });
2822
2846
  });
2823
2847
  }
2824
2848
  _removeCopyEvents() {
2825
- this.copyBtns.forEach((t) => {
2826
- t.removeEventListener("click", () => {
2849
+ this.copyBtns.forEach((c) => {
2850
+ c.removeEventListener("click", () => {
2827
2851
  });
2828
2852
  });
2829
2853
  }
2830
2854
  render() {
2831
2855
  return D(
2832
2856
  this.message.data || this.message.isThinking,
2833
- () => c`
2857
+ () => s`
2834
2858
  <div class="cb-message-row" part="cb-message-row">
2835
2859
  <!-- message -->
2836
2860
  ${D(
@@ -2843,109 +2867,109 @@ let F = class extends C {
2843
2867
  () => null
2844
2868
  );
2845
2869
  }
2846
- renderButtons(t = "left") {
2847
- return c`<div class="cb-message__buttons ${t}">
2870
+ renderButtons(c = "left") {
2871
+ return s`<div class="cb-message__buttons ${c}">
2848
2872
  <!-- delete button -->
2849
2873
  <sl-button class="cb-message__delete-button" name="trash" @click=${this._removeMessageHandler} circle variant="text" size="small">
2850
- <cb-icon svg="${lo}" style="font-size: 1em !important;"></cb-icon>
2874
+ <cb-icon svg="${sa}" style="font-size: 1em !important;"></cb-icon>
2851
2875
  </sl-button>
2852
2876
  </div>`;
2853
2877
  }
2854
- renderMessage(t) {
2855
- return c`
2878
+ renderMessage(c) {
2879
+ return s`
2856
2880
  <div
2857
2881
  class="cb-message__content
2858
- ${t.author}-message
2859
- message-type-${t.type}
2860
- ${t.isThinking ? "thinking" : ""}"
2882
+ ${c.author}-message
2883
+ message-type-${c.type}
2884
+ ${c.isThinking ? "thinking" : ""}"
2861
2885
  style="display: flex"
2862
2886
  >
2863
- ${this.renderMessageContent(t)}
2887
+ ${this.renderMessageContent(c)}
2864
2888
  </div>
2865
2889
  `;
2866
2890
  }
2867
- async _getMessageText(t) {
2868
- return ze(t.data.text);
2891
+ async _getMessageText(c) {
2892
+ return Ee(c.data.text);
2869
2893
  }
2870
- renderMessageContent(t) {
2894
+ renderMessageContent(c) {
2871
2895
  var e;
2872
- return t.isThinking ? c`<cb-thinking></cb-thinking>` : t.isUploading ? c`<cb-uploading .files="${t.data.files || []}"></cb-uploading>` : t.type === "text" ? c`<div class="cb-message-text">
2896
+ return c.isThinking ? s`<cb-thinking></cb-thinking>` : c.isUploading ? s`<cb-uploading .files="${c.data.files || []}"></cb-uploading>` : c.type === "text" ? s`<div class="cb-message-text">
2873
2897
  ${D(
2874
- t.data.userName,
2875
- () => c`<div style="font-size: 12px; color:#9ca3af">${t.data.userName}</div>`,
2898
+ c.data.userName,
2899
+ () => s`<div style="font-size: 12px; color:#9ca3af">${c.data.userName}</div>`,
2876
2900
  () => null
2877
2901
  )}
2878
- ${Ie(
2879
- this._getMessageText(t).then((o) => c`${o}`)
2902
+ ${He(
2903
+ this._getMessageText(c).then((a) => s`${a}`)
2880
2904
  )}
2881
- </div>` : t.type === "file" ? c`${we(
2882
- t.data.files || [],
2883
- (o) => o.id,
2884
- (o) => c`<cb-file filename="${o.name}" url="${o.url}"></cb-file>`
2885
- )}` : c`<div class="cb-message-text">
2886
- ${Ie(
2887
- ze(((e = t.data.text) == null ? void 0 : e.toString()) || "").then((o) => c`${o}`)
2905
+ </div>` : c.type === "file" ? s`${we(
2906
+ c.data.files || [],
2907
+ (a) => a.id,
2908
+ (a) => s`<cb-file filename="${a.name}" url="${a.url}"></cb-file>`
2909
+ )}` : s`<div class="cb-message-text">
2910
+ ${He(
2911
+ Ee(((e = c.data.text) == null ? void 0 : e.toString()) || "").then((a) => s`${a}`)
2888
2912
  )}
2889
2913
  </div>`;
2890
2914
  }
2891
- renderBotMessageAvatar(t) {
2892
- if (t.data.userName && t.data.userName !== "") {
2893
- const e = t.data.userAvatar || "";
2894
- return c` <img src="${e}" style="width: 24px;height: 24px;" /> `;
2915
+ renderBotMessageAvatar(c) {
2916
+ if (c.data.userName && c.data.userName !== "") {
2917
+ const e = c.data.userAvatar || "";
2918
+ return s` <img src="${e}" style="width: 24px;height: 24px;" /> `;
2895
2919
  }
2896
- return t.author === "system" ? ve`${q(d.setting.systemIconSvg)}` : ve`${q(d.setting.botIconSvg)}`;
2920
+ return c.author === "system" ? ae`${B(n.setting.systemIconSvg)}` : ae`${B(n.setting.botIconSvg)}`;
2897
2921
  }
2898
- renderBotMessage(t) {
2899
- return c`
2922
+ renderBotMessage(c) {
2923
+ return s`
2900
2924
  <div class="cb-message cb-bot-message-wrapper" part="cb-message">
2901
- <div class="avatar assistant-avatar xsmall" style="margin-top:4px;">${this.renderBotMessageAvatar(t)}</div>
2902
- <div style="margin-left: 4px;width: 100%">${this.renderMessage(t)}</div>
2925
+ <div class="avatar assistant-avatar xsmall" style="margin-top:4px;">${this.renderBotMessageAvatar(c)}</div>
2926
+ <div style="margin-left: 4px;width: 100%">${this.renderMessage(c)}</div>
2903
2927
  </div>
2904
2928
  `;
2905
2929
  }
2906
- renderUserMessage(t) {
2907
- return c`
2930
+ renderUserMessage(c) {
2931
+ return s`
2908
2932
  <div class="cb-message" part="cb-message" style="display: flex; justify-content: end;align-items: start;">
2909
2933
  <!--<sl-avatar class="avatar user-avatar small" label="User">
2910
- <cb-icon slot="icon" svg="${co}" color="white"></cb-icon>
2934
+ <cb-icon slot="icon" svg="${na}" color="white"></cb-icon>
2911
2935
  </sl-avatar>-->
2912
- <div class="avatar user-avatar">${q(d.setting.userIconSvg)}</div>
2913
- ${this.renderMessage(t)}
2936
+ <div class="avatar user-avatar">${B(n.setting.userIconSvg)}</div>
2937
+ ${this.renderMessage(c)}
2914
2938
  </div>
2915
2939
  `;
2916
2940
  }
2917
2941
  };
2918
- F.styles = ho;
2919
- ue([
2920
- l({ type: Object })
2942
+ F.styles = la;
2943
+ he([
2944
+ r({ type: Object })
2921
2945
  ], F.prototype, "message", 2);
2922
- ue([
2923
- l({ type: String })
2946
+ he([
2947
+ r({ type: String })
2924
2948
  ], F.prototype, "type", 2);
2925
- ue([
2926
- ut(".code-block-header__copy")
2949
+ he([
2950
+ pc(".code-block-header__copy")
2927
2951
  ], F.prototype, "copyBtns", 2);
2928
- F = ue([
2952
+ F = he([
2929
2953
  k("cb-message")
2930
2954
  ], F);
2931
- var mo = Object.defineProperty, yo = Object.getOwnPropertyDescriptor, Z = (t, e, o, a) => {
2932
- for (var r = a > 1 ? void 0 : a ? yo(e, o) : e, s = t.length - 1, n; s >= 0; s--)
2933
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
2934
- return a && r && mo(e, o, r), r;
2955
+ var ga = Object.defineProperty, ma = Object.getOwnPropertyDescriptor, Z = (c, e, a, f) => {
2956
+ for (var t = f > 1 ? void 0 : f ? ma(e, a) : e, o = c.length - 1, d; o >= 0; o--)
2957
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
2958
+ return f && t && ga(e, a, t), t;
2935
2959
  };
2936
- const Q = he.noConflict();
2960
+ const Q = pe.noConflict();
2937
2961
  Q.setLevel("info");
2938
- let z = class extends C {
2962
+ let E = class extends C {
2939
2963
  constructor() {
2940
2964
  super(...arguments), this.messages = [], this.actions = [], this.calendlyInjected = !1, this.activeCalendlyAction = -1;
2941
2965
  }
2942
2966
  render() {
2943
- return c`
2967
+ return s`
2944
2968
  <div class="cb-message-list" part="cb-message-list">
2945
2969
  ${we(
2946
2970
  this.messages,
2947
- (t) => t.id + JSON.stringify(t.data),
2948
- (t) => c`<cb-message .message="${t}"></cb-message>`
2971
+ (c) => c.id + JSON.stringify(c.data),
2972
+ (c) => s`<cb-message .message="${c}"></cb-message>`
2949
2973
  )}
2950
2974
  ${this.renderActions()}
2951
2975
  <div id="cb-message-list-bottom-anchor"></div>
@@ -2953,12 +2977,12 @@ let z = class extends C {
2953
2977
  `;
2954
2978
  }
2955
2979
  renderActions() {
2956
- return !Array.isArray(this.actions) || this.actions.length <= 0 ? null : c`
2980
+ return !Array.isArray(this.actions) || this.actions.length <= 0 ? null : s`
2957
2981
  <div class="cb-actions-list">
2958
2982
  ${we(
2959
2983
  this.actions,
2960
- (t) => t,
2961
- (t) => this.renderAction(t)
2984
+ (c) => c,
2985
+ (c) => this.renderAction(c)
2962
2986
  )}
2963
2987
  </div>
2964
2988
  `;
@@ -2966,41 +2990,41 @@ let z = class extends C {
2966
2990
  scrollToBottom() {
2967
2991
  this._messageListBottomAnchor.scrollIntoView({ behavior: "smooth", block: "end", inline: "nearest" });
2968
2992
  }
2969
- renderAction(t) {
2970
- switch (t.type) {
2993
+ renderAction(c) {
2994
+ switch (c.type) {
2971
2995
  case "calendlyMeeting":
2972
- return this.renderCalendlyAction(t);
2996
+ return this.renderCalendlyAction(c);
2973
2997
  case "link":
2974
- return this.renderLinkAction(t);
2998
+ return this.renderLinkAction(c);
2975
2999
  }
2976
3000
  return null;
2977
3001
  }
2978
- handleCalendlyEvent(t) {
2979
- switch (Q.info("Got Calendly Event:", t.data), t.data.event) {
3002
+ handleCalendlyEvent(c) {
3003
+ switch (Q.info("Got Calendly Event:", c.data), c.data.event) {
2980
3004
  case "calendly.event_scheduled": {
2981
3005
  const e = this.activeCalendlyAction;
2982
- e >= 0 && (d.removeAction(e), d.addSystemMessage("Your meeting has been scheduled!"), this.activeCalendlyAction = -1);
3006
+ e >= 0 && (n.removeAction(e), n.addSystemMessage("Your meeting has been scheduled!"), this.activeCalendlyAction = -1);
2983
3007
  }
2984
3008
  }
2985
3009
  }
2986
- invokeLinkAction(t = {}) {
2987
- Q.info("invokeLinkAction:", t), window.open(t.url, "_blank");
3010
+ invokeLinkAction(c = {}) {
3011
+ Q.info("invokeLinkAction:", c), window.open(c.url, "_blank");
2988
3012
  }
2989
- invokeCalendlyAction(t = {}) {
2990
- return Q.info("invokeCalendlyAction:", t), "Calendly" in window && (this.activeCalendlyAction = t.internalId, window.Calendly.initPopupWidget({ url: t.url })), !1;
3013
+ invokeCalendlyAction(c = {}) {
3014
+ return Q.info("invokeCalendlyAction:", c), "Calendly" in window && (this.activeCalendlyAction = c.internalId, window.Calendly.initPopupWidget({ url: c.url })), !1;
2991
3015
  }
2992
- renderCalendlyAction(t) {
3016
+ renderCalendlyAction(c) {
2993
3017
  if (!("Calendly" in window) && !this.calendlyInjected) {
2994
3018
  let e = document.createElement("link");
2995
3019
  e.href = "https://assets.calendly.com/assets/external/widget.css", e.rel = "stylesheet", document.body.appendChild(e);
2996
- let o = document.createElement("script");
2997
- o.type = "text/javascript", o.src = "https://assets.calendly.com/assets/external/widget.js", document.body.appendChild(o), console.log("Injected Calendly"), window.addEventListener("message", (a) => {
2998
- a.origin === "https://calendly.com" && a.data.event && a.data.event.indexOf("calendly.") !== -1 && this.handleCalendlyEvent(a);
3020
+ let a = document.createElement("script");
3021
+ a.type = "text/javascript", a.src = "https://assets.calendly.com/assets/external/widget.js", document.body.appendChild(a), console.log("Injected Calendly"), window.addEventListener("message", (f) => {
3022
+ f.origin === "https://calendly.com" && f.data.event && f.data.event.indexOf("calendly.") !== -1 && this.handleCalendlyEvent(f);
2999
3023
  }), this.calendlyInjected = !0;
3000
3024
  }
3001
- return c`
3025
+ return s`
3002
3026
  <div class="cb-actions-list">
3003
- <div class="cb-action ripple" @click="${this.invokeCalendlyAction.bind(this, t)}">
3027
+ <div class="cb-action ripple" @click="${this.invokeCalendlyAction.bind(this, c)}">
3004
3028
  <div class="cb-action-icon">
3005
3029
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
3006
3030
  <path
@@ -3009,47 +3033,47 @@ let z = class extends C {
3009
3033
  />
3010
3034
  </svg>
3011
3035
  </div>
3012
- ${t.title}
3036
+ ${c.title}
3013
3037
  </div>
3014
3038
  </div>
3015
3039
  `;
3016
3040
  }
3017
- renderLinkAction(t) {
3018
- return c`
3041
+ renderLinkAction(c) {
3042
+ return s`
3019
3043
  <div class="cb-actions-list">
3020
- <div class="cb-action ripple" @click="${this.invokeLinkAction.bind(this, t)}">
3044
+ <div class="cb-action ripple" @click="${this.invokeLinkAction.bind(this, c)}">
3021
3045
  <div class="cb-action-icon">
3022
3046
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
3023
3047
  <path d="M14,3V5H17.59L7.76,14.83L9.17,16.24L19,6.41V10H21V3M19,19H5V5H12V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V12H19V19Z" fill="currentColor" />
3024
3048
  </svg>
3025
3049
  </div>
3026
- ${t.title}
3050
+ ${c.title}
3027
3051
  </div>
3028
3052
  </div>
3029
3053
  `;
3030
3054
  }
3031
3055
  };
3032
- z.styles = Ut;
3056
+ E.styles = Zc;
3033
3057
  Z([
3034
- l({ type: Array })
3035
- ], z.prototype, "messages", 2);
3058
+ r({ type: Array })
3059
+ ], E.prototype, "messages", 2);
3036
3060
  Z([
3037
- l({ type: Array })
3038
- ], z.prototype, "actions", 2);
3061
+ r({ type: Array })
3062
+ ], E.prototype, "actions", 2);
3039
3063
  Z([
3040
- pe("#cb-message-list-bottom-anchor")
3041
- ], z.prototype, "_messageListBottomAnchor", 2);
3064
+ le("#cb-message-list-bottom-anchor")
3065
+ ], E.prototype, "_messageListBottomAnchor", 2);
3042
3066
  Z([
3043
3067
  qe({ capture: !1, passive: !0 })
3044
- ], z.prototype, "invokeLinkAction", 1);
3068
+ ], E.prototype, "invokeLinkAction", 1);
3045
3069
  Z([
3046
3070
  qe({ capture: !1, passive: !0 })
3047
- ], z.prototype, "invokeCalendlyAction", 1);
3048
- z = Z([
3071
+ ], E.prototype, "invokeCalendlyAction", 1);
3072
+ E = Z([
3049
3073
  k("cb-message-list")
3050
- ], z);
3051
- const fo = x`
3052
- ${I}
3074
+ ], E);
3075
+ const ya = x`
3076
+ ${H}
3053
3077
 
3054
3078
  :host {
3055
3079
  width: 100%;
@@ -3091,18 +3115,18 @@ const fo = x`
3091
3115
  .cb-input-buttons {
3092
3116
  padding: 0 5px;
3093
3117
  }
3094
- `, vo = '<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>', wo = '<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>';
3095
- var xo = Object.defineProperty, ko = Object.getOwnPropertyDescriptor, P = (t, e, o, a) => {
3096
- for (var r = a > 1 ? void 0 : a ? ko(e, o) : e, s = t.length - 1, n; s >= 0; s--)
3097
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
3098
- return a && r && xo(e, o, r), r;
3118
+ `, va = '<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>', wa = '<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>';
3119
+ var xa = Object.defineProperty, ka = Object.getOwnPropertyDescriptor, P = (c, e, a, f) => {
3120
+ for (var t = f > 1 ? void 0 : f ? ka(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3121
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
3122
+ return f && t && xa(e, a, t), t;
3099
3123
  };
3100
- let O = class extends C {
3124
+ let L = class extends C {
3101
3125
  constructor() {
3102
3126
  super(...arguments), this.placeholder = "Type a message...", this.sendButtonLabel = "Send", this.enableFileUpload = !1, this.value = "", this.loading = !1, this.disabled = !1, this.currentKey = "";
3103
3127
  }
3104
- _inputChangeHandler(t) {
3105
- const e = t.target;
3128
+ _inputChangeHandler(c) {
3129
+ const e = c.target;
3106
3130
  this.value = e.value;
3107
3131
  }
3108
3132
  _sendHandler() {
@@ -3120,15 +3144,15 @@ let O = class extends C {
3120
3144
  });
3121
3145
  }
3122
3146
  async _sendFileHandler() {
3123
- const t = await Ot();
3147
+ const c = await Lc();
3124
3148
  this.emit("message:send:file", {
3125
3149
  detail: {
3126
- files: t
3150
+ files: c
3127
3151
  }
3128
3152
  });
3129
3153
  }
3130
3154
  render() {
3131
- return c`
3155
+ return s`
3132
3156
  <div class="cb-user-input-wrapper" part="user-input-wrapper">
3133
3157
  <sl-textarea
3134
3158
  @sl-input=${this._inputChangeHandler}
@@ -3147,14 +3171,14 @@ let O = class extends C {
3147
3171
  <span class="cb-input-buttons">
3148
3172
  ${D(
3149
3173
  this.enableFileUpload,
3150
- () => c`
3174
+ () => s`
3151
3175
  <sl-button @click=${this._sendFileHandler} name="paperclip" label="Attachment" size="large" class="paperclip-button" variant="text" circle>
3152
- <cb-icon svg="${wo}"></cb-icon>
3176
+ <cb-icon svg="${wa}"></cb-icon>
3153
3177
  <!-- select file input -->
3154
3178
  <input type="file" id="file" name="file" class="file-input" />
3155
3179
  </sl-button>
3156
3180
  `,
3157
- () => c``
3181
+ () => s``
3158
3182
  )}
3159
3183
  <sl-button
3160
3184
  @click=${this._sendHandler}
@@ -3167,46 +3191,46 @@ let O = class extends C {
3167
3191
  ?loading=${this.loading}
3168
3192
  circle
3169
3193
  >
3170
- <cb-icon svg="${vo}"></cb-icon>
3194
+ <cb-icon svg="${va}"></cb-icon>
3171
3195
  </sl-button>
3172
3196
  </span>
3173
3197
  </div>
3174
3198
  `;
3175
3199
  }
3176
- _keyDownHandler(t) {
3177
- t.key === "Enter" && !t.shiftKey && this._sendHandler();
3200
+ _keyDownHandler(c) {
3201
+ c.key === "Enter" && !c.shiftKey && this._sendHandler();
3178
3202
  }
3179
3203
  };
3180
- O.styles = fo;
3204
+ L.styles = ya;
3181
3205
  P([
3182
- l({ type: String, attribute: "placeholder" })
3183
- ], O.prototype, "placeholder", 2);
3206
+ r({ type: String, attribute: "placeholder" })
3207
+ ], L.prototype, "placeholder", 2);
3184
3208
  P([
3185
- l({ type: String, attribute: "send-button-label" })
3186
- ], O.prototype, "sendButtonLabel", 2);
3209
+ r({ type: String, attribute: "send-button-label" })
3210
+ ], L.prototype, "sendButtonLabel", 2);
3187
3211
  P([
3188
- l({ type: Boolean, attribute: "enable-file-upload" })
3189
- ], O.prototype, "enableFileUpload", 2);
3212
+ r({ type: Boolean, attribute: "enable-file-upload" })
3213
+ ], L.prototype, "enableFileUpload", 2);
3190
3214
  P([
3191
- l({ type: String })
3192
- ], O.prototype, "value", 2);
3215
+ r({ type: String })
3216
+ ], L.prototype, "value", 2);
3193
3217
  P([
3194
- l({ type: Boolean })
3195
- ], O.prototype, "loading", 2);
3218
+ r({ type: Boolean })
3219
+ ], L.prototype, "loading", 2);
3196
3220
  P([
3197
- l({ type: Boolean })
3198
- ], O.prototype, "disabled", 2);
3221
+ r({ type: Boolean })
3222
+ ], L.prototype, "disabled", 2);
3199
3223
  P([
3200
- l({ type: String })
3201
- ], O.prototype, "currentKey", 2);
3224
+ r({ type: String })
3225
+ ], L.prototype, "currentKey", 2);
3202
3226
  P([
3203
- pe("sl-textarea")
3204
- ], O.prototype, "inputElement", 2);
3205
- O = P([
3227
+ le("sl-textarea")
3228
+ ], L.prototype, "inputElement", 2);
3229
+ L = P([
3206
3230
  k("cb-user-input")
3207
- ], O);
3208
- const _o = x`
3209
- ${I}
3231
+ ], L);
3232
+ const _a = x`
3233
+ ${H}
3210
3234
 
3211
3235
  sl-dialog::part(base) {
3212
3236
  z-index: 1000;
@@ -3240,10 +3264,10 @@ const _o = x`
3240
3264
  gap: 8px;
3241
3265
  }
3242
3266
  `;
3243
- var Co = Object.defineProperty, $o = Object.getOwnPropertyDescriptor, ge = (t, e, o, a) => {
3244
- for (var r = a > 1 ? void 0 : a ? $o(e, o) : e, s = t.length - 1, n; s >= 0; s--)
3245
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
3246
- return a && r && Co(e, o, r), r;
3267
+ var Ca = Object.defineProperty, $a = Object.getOwnPropertyDescriptor, ue = (c, e, a, f) => {
3268
+ for (var t = f > 1 ? void 0 : f ? $a(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3269
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
3270
+ return f && t && Ca(e, a, t), t;
3247
3271
  };
3248
3272
  let U = class extends C {
3249
3273
  constructor() {
@@ -3253,7 +3277,7 @@ let U = class extends C {
3253
3277
  this.emit("cancel");
3254
3278
  }
3255
3279
  render() {
3256
- return c` <sl-dialog
3280
+ return s` <sl-dialog
3257
3281
  label="Setting"
3258
3282
  class="cb-dialog"
3259
3283
  style="sl-dialog::part(base) { z-index: ${this.zindex}; }"
@@ -3263,7 +3287,7 @@ let U = class extends C {
3263
3287
  >
3264
3288
  <header class="cb-header">
3265
3289
  <div class="cb-header__left">
3266
- ${this.label ? c`<span class="title">${this.label}</span>` : ""}
3290
+ ${this.label ? s`<span class="title">${this.label}</span>` : ""}
3267
3291
  </div>
3268
3292
  <sl-button
3269
3293
  @click=${this._settingCancelHandler}
@@ -3276,7 +3300,7 @@ let U = class extends C {
3276
3300
  <cb-icon
3277
3301
  color="default"
3278
3302
  style="font-size: 1em;"
3279
- svg="${oe}"
3303
+ svg="${te}"
3280
3304
  ></cb-icon>
3281
3305
  </sl-button>
3282
3306
  </header>
@@ -3289,30 +3313,30 @@ let U = class extends C {
3289
3313
  </sl-dialog>`;
3290
3314
  }
3291
3315
  };
3292
- U.styles = _o;
3293
- ge([
3294
- l({ type: Boolean })
3316
+ U.styles = _a;
3317
+ ue([
3318
+ r({ type: Boolean })
3295
3319
  ], U.prototype, "open", 2);
3296
- ge([
3297
- l({ type: String, attribute: "label" })
3320
+ ue([
3321
+ r({ type: String, attribute: "label" })
3298
3322
  ], U.prototype, "label", 2);
3299
- ge([
3300
- l({ type: Number })
3323
+ ue([
3324
+ r({ type: Number })
3301
3325
  ], U.prototype, "zindex", 2);
3302
- U = ge([
3326
+ U = ue([
3303
3327
  k("cb-dialog")
3304
3328
  ], U);
3305
- var jo = Object.defineProperty, Mo = Object.getOwnPropertyDescriptor, Je = (t, e, o, a) => {
3306
- for (var r = a > 1 ? void 0 : a ? Mo(e, o) : e, s = t.length - 1, n; s >= 0; s--)
3307
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
3308
- return a && r && jo(e, o, r), r;
3329
+ var ja = Object.defineProperty, Ma = Object.getOwnPropertyDescriptor, Je = (c, e, a, f) => {
3330
+ for (var t = f > 1 ? void 0 : f ? Ma(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3331
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
3332
+ return f && t && ja(e, a, t), t;
3309
3333
  };
3310
- let se = class extends C {
3334
+ let de = class extends C {
3311
3335
  constructor() {
3312
3336
  super(...arguments), this.open = !1;
3313
3337
  }
3314
3338
  render() {
3315
- return c` <cb-dialog
3339
+ return s` <cb-dialog
3316
3340
  label="Confirm"
3317
3341
  class="cb-clear-message-dialog"
3318
3342
  ?open=${this.open}
@@ -3341,7 +3365,7 @@ let se = class extends C {
3341
3365
  this.emit("cancel");
3342
3366
  }
3343
3367
  };
3344
- se.styles = x`
3368
+ de.styles = x`
3345
3369
  .cb-clear-message-dialog {
3346
3370
  }
3347
3371
 
@@ -3350,12 +3374,12 @@ se.styles = x`
3350
3374
  }
3351
3375
  `;
3352
3376
  Je([
3353
- l({ type: Boolean })
3354
- ], se.prototype, "open", 2);
3355
- se = Je([
3377
+ r({ type: Boolean })
3378
+ ], de.prototype, "open", 2);
3379
+ de = Je([
3356
3380
  k("cb-clear-message-dialog")
3357
- ], se);
3358
- const So = x`
3381
+ ], de);
3382
+ const Sa = x`
3359
3383
  :host {
3360
3384
  // width: 380px;
3361
3385
 
@@ -3415,17 +3439,17 @@ const So = x`
3415
3439
  grid-column-start: 2;
3416
3440
  }
3417
3441
  `;
3418
- var Ao = Object.defineProperty, Oo = Object.getOwnPropertyDescriptor, N = (t, e, o, a) => {
3419
- for (var r = a > 1 ? void 0 : a ? Oo(e, o) : e, s = t.length - 1, n; s >= 0; s--)
3420
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
3421
- return a && r && Ao(e, o, r), r;
3442
+ var Aa = Object.defineProperty, La = Object.getOwnPropertyDescriptor, N = (c, e, a, f) => {
3443
+ for (var t = f > 1 ? void 0 : f ? La(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3444
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
3445
+ return f && t && Aa(e, a, t), t;
3422
3446
  };
3423
- let E = class extends C {
3447
+ let z = class extends C {
3424
3448
  constructor() {
3425
3449
  super(...arguments), this.open = !1, this.clearMessageDialogOpen = !1, this.customRequest = !1;
3426
3450
  }
3427
3451
  render() {
3428
- return this.customRequest = this.setting.customRequest, c`
3452
+ return this.customRequest = this.setting.customRequest, s`
3429
3453
  <cb-dialog
3430
3454
  label="Setting"
3431
3455
  class="cb-dialog"
@@ -3518,7 +3542,7 @@ let E = class extends C {
3518
3542
  `;
3519
3543
  }
3520
3544
  renderInternalServices() {
3521
- return c`
3545
+ return s`
3522
3546
  <div class="form-item">
3523
3547
  <label class="label">Service</label>
3524
3548
  <sl-radio-group name="openai" value="openai" size="small">
@@ -3555,14 +3579,14 @@ let E = class extends C {
3555
3579
  this.emit("message:clear"), this.clearMessageDialogOpen = !1;
3556
3580
  }
3557
3581
  // input change handler
3558
- _inputChangeHandler(t) {
3559
- const { name: e, value: o } = t.target, [a, r] = e.split(".");
3560
- r ? this.setting[a][r] = o : this.setting[a] = o;
3582
+ _inputChangeHandler(c) {
3583
+ const { name: e, value: a } = c.target, [f, t] = e.split(".");
3584
+ t ? this.setting[f][t] = a : this.setting[f] = a;
3561
3585
  }
3562
3586
  // checked change handler
3563
- _checkChangeHandler(t) {
3564
- const { name: e, checked: o } = t.target, [a, r] = e.split(".");
3565
- r ? this.setting[a][r] = o : this.setting[a] = o, a === "customRequest" && (this.customRequest = o);
3587
+ _checkChangeHandler(c) {
3588
+ const { name: e, checked: a } = c.target, [f, t] = e.split(".");
3589
+ t ? this.setting[f][t] = a : this.setting[f] = a, f === "customRequest" && (this.customRequest = a);
3566
3590
  }
3567
3591
  // emit setting confirm event
3568
3592
  _settingConfirmHandler() {
@@ -3576,34 +3600,34 @@ let E = class extends C {
3576
3600
  _settingCancelHandler() {
3577
3601
  this.emit("setting:hide");
3578
3602
  }
3579
- updated(t) {
3603
+ updated(c) {
3580
3604
  var e;
3581
- super.updated(t), (e = this.dialog) == null || e.addEventListener("sl-request-close", (o) => {
3582
- o.detail.source === "overlay" && o.preventDefault();
3605
+ super.updated(c), (e = this.dialog) == null || e.addEventListener("sl-request-close", (a) => {
3606
+ a.detail.source === "overlay" && a.preventDefault();
3583
3607
  });
3584
3608
  }
3585
3609
  };
3586
- E.styles = So;
3610
+ z.styles = Sa;
3587
3611
  N([
3588
- l({ type: Boolean })
3589
- ], E.prototype, "open", 2);
3612
+ r({ type: Boolean })
3613
+ ], z.prototype, "open", 2);
3590
3614
  N([
3591
- l({ type: Object })
3592
- ], E.prototype, "setting", 2);
3615
+ r({ type: Object })
3616
+ ], z.prototype, "setting", 2);
3593
3617
  N([
3594
- l({ type: Boolean })
3595
- ], E.prototype, "clearMessageDialogOpen", 2);
3618
+ r({ type: Boolean })
3619
+ ], z.prototype, "clearMessageDialogOpen", 2);
3596
3620
  N([
3597
- pe("sl-dialog")
3598
- ], E.prototype, "dialog", 2);
3621
+ le("sl-dialog")
3622
+ ], z.prototype, "dialog", 2);
3599
3623
  N([
3600
- l({ type: Boolean })
3601
- ], E.prototype, "customRequest", 2);
3602
- E = N([
3624
+ r({ type: Boolean })
3625
+ ], z.prototype, "customRequest", 2);
3626
+ z = N([
3603
3627
  k("cb-setting")
3604
- ], E);
3605
- const Lo = x`
3606
- ${I}
3628
+ ], z);
3629
+ const Oa = x`
3630
+ ${H}
3607
3631
  :host {
3608
3632
  --primary-color: var(--sl-color-primary-600);
3609
3633
 
@@ -3650,7 +3674,7 @@ const Lo = x`
3650
3674
  min-width: 250px;
3651
3675
  min-height: 100px;
3652
3676
  color: var(--enegelai-bot-popup-color, rgb(0, 0, 0));
3653
- padding: 10px;
3677
+ padding: 10px 20px 10px 10px;
3654
3678
  background: var(--enegelai-bot-popup-background, var(--sl-color-gray-50));
3655
3679
  //border: 1px solid;
3656
3680
  //border-color: var(--sl-color-gray-100);
@@ -3659,6 +3683,7 @@ const Lo = x`
3659
3683
  -webkit-font-smoothing: subpixel-antialiased;
3660
3684
  font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
3661
3685
  //font-size: 0.9rem;
3686
+ line-height: 1.4;
3662
3687
  font-style: normal;
3663
3688
  letter-spacing: normal;
3664
3689
  font-stretch: normal;
@@ -3674,6 +3699,10 @@ const Lo = x`
3674
3699
  --arrow-color: var(--sl-color-gray-500);
3675
3700
  }
3676
3701
 
3702
+ .cb-engage-popup-logo {
3703
+ color: var(--enegelai-bot-popup-logo-color, rgb(0, 208, 117));
3704
+ }
3705
+
3677
3706
  .cb-engage-popup-close {
3678
3707
  position: absolute;
3679
3708
  top: 0;
@@ -3689,44 +3718,45 @@ const Lo = x`
3689
3718
  align-items: start;
3690
3719
  gap: 10px;
3691
3720
  }
3692
- `, Ho = '<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>';
3693
- var Io = Object.defineProperty, Po = Object.getOwnPropertyDescriptor, Ye = (t, e, o, a) => {
3694
- for (var r = a > 1 ? void 0 : a ? Po(e, o) : e, s = t.length - 1, n; s >= 0; s--)
3695
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
3696
- return a && r && Io(e, o, r), r;
3721
+ `, Ia = '<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>';
3722
+ var Ha = Object.defineProperty, Pa = Object.getOwnPropertyDescriptor, Ye = (c, e, a, f) => {
3723
+ for (var t = f > 1 ? void 0 : f ? Pa(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3724
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
3725
+ return f && t && Ha(e, a, t), t;
3697
3726
  };
3698
- let ne = class extends C {
3727
+ let be = class extends C {
3699
3728
  constructor() {
3700
- super(...arguments), this.store = new Fe(this, d), this.open = !1;
3729
+ super(...arguments), this.store = new Fe(this, n), this.open = !1;
3701
3730
  }
3702
3731
  // handler click
3703
3732
  _clickHandler() {
3704
- const t = !this.open;
3733
+ const c = !this.open;
3705
3734
  this.emit("chatbot:toggle", {
3706
3735
  detail: {
3707
- open: t
3736
+ open: c
3708
3737
  }
3709
- }), this.open = t;
3738
+ }), this.open = c;
3710
3739
  }
3711
- _engageClickHandler(t) {
3712
- console.log("engage close clicked!"), d.engage = !1, t.stopPropagation();
3740
+ _engageClickHandler(c) {
3741
+ console.log("engage close clicked!"), n.engage = !1, c.stopPropagation();
3713
3742
  }
3714
3743
  render() {
3715
- return c`
3744
+ return s`
3716
3745
  <div class="cb-anchor ${this.open ? "open" : ""}" part="cb-anchor" @click=${this._clickHandler.bind(this)}>
3717
- <sl-popup placement="top-end" distance="16" ?active="${d.engage && !d.open}">
3746
+ <sl-popup placement="top-end" distance="16" ?active="${n.engage && !n.open}">
3718
3747
  <sl-button slot="anchor" label="Start" size="large" variant="primary" class="icon anchor-button" circle>
3719
3748
  ${D(
3720
3749
  this.open,
3721
- () => c`<cb-icon color="white" svg="${oe}"></cb-icon>`,
3722
- () => c`<cb-icon color="white" svg="${Ho}"></cb-icon>`
3750
+ () => s`<cb-icon color="white" svg="${te}"></cb-icon>`,
3751
+ () => s`<cb-icon color="white" svg="${Ia}"></cb-icon>`
3723
3752
  )}
3724
3753
  </sl-button>
3725
3754
  <div class="cb-engage-popup">
3726
- <div class="cb-engage-popup-close" @click=${this._engageClickHandler.bind(this)}>${ve`${q(oe)}`}</div>
3755
+ <div class="cb-engage-popup-close" @click=${this._engageClickHandler.bind(this)}>${ae`${B(te)}`}</div>
3727
3756
  <div class="cb-engage-popup-content">
3728
- <cb-icon svg="${d.setting.logoSvg}"></cb-icon>
3729
- <div>${d.setting.engageMessage}</div>
3757
+ <div class="cb-engage-popup-logo">${ae`${B(n.setting.logoSvg)}`}</div>
3758
+ <!--<cb-icon class="cb-engage-popup-logo" svg="${n.setting.logoSvg}"></cb-icon>-->
3759
+ <div>${n.setting.engageMessage}</div>
3730
3760
  </div>
3731
3761
  </div>
3732
3762
  </sl-popup>
@@ -3734,22 +3764,22 @@ let ne = class extends C {
3734
3764
  `;
3735
3765
  }
3736
3766
  };
3737
- ne.styles = Lo;
3767
+ be.styles = Oa;
3738
3768
  Ye([
3739
- l({ type: Boolean })
3740
- ], ne.prototype, "open", 2);
3741
- ne = Ye([
3769
+ r({ type: Boolean })
3770
+ ], be.prototype, "open", 2);
3771
+ be = Ye([
3742
3772
  k("cb-anchor")
3743
- ], ne);
3744
- const zo = x`
3745
- ${I}
3773
+ ], be);
3774
+ const Ea = x`
3775
+ ${H}
3746
3776
  `, Ce = '<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>', Ge = '<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>', Xe = '<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>', Qe = '<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>';
3747
- var Eo = Object.defineProperty, To = Object.getOwnPropertyDescriptor, et = (t, e, o, a) => {
3748
- for (var r = a > 1 ? void 0 : a ? To(e, o) : e, s = t.length - 1, n; s >= 0; s--)
3749
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
3750
- return a && r && Eo(e, o, r), r;
3777
+ var za = Object.defineProperty, Ta = Object.getOwnPropertyDescriptor, ec = (c, e, a, f) => {
3778
+ for (var t = f > 1 ? void 0 : f ? Ta(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3779
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
3780
+ return f && t && za(e, a, t), t;
3751
3781
  };
3752
- const Ee = {
3782
+ const ze = {
3753
3783
  error: {
3754
3784
  variant: "danger",
3755
3785
  icon: Ce
@@ -3771,30 +3801,30 @@ const Ee = {
3771
3801
  icon: Qe
3772
3802
  }
3773
3803
  };
3774
- let ie = class extends C {
3804
+ let re = class extends C {
3775
3805
  constructor() {
3776
3806
  super(...arguments), this.status = "info";
3777
3807
  }
3778
3808
  render() {
3779
- const { variant: t, icon: e } = Ee[this.status] || Ee.info;
3780
- return c`<cb-icon svg=${e} color="${t}"></cb-icon>`;
3809
+ const { variant: c, icon: e } = ze[this.status] || ze.info;
3810
+ return s`<cb-icon svg=${e} color="${c}"></cb-icon>`;
3781
3811
  }
3782
3812
  };
3783
- ie.styles = Ne;
3784
- et([
3785
- l({ type: String })
3786
- ], ie.prototype, "status", 2);
3787
- ie = et([
3813
+ re.styles = Ne;
3814
+ ec([
3815
+ r({ type: String })
3816
+ ], re.prototype, "status", 2);
3817
+ re = ec([
3788
3818
  k("cb-status-icon")
3789
- ], ie);
3790
- var Bo = Object.defineProperty, Ro = Object.getOwnPropertyDescriptor, Vo = (t, e, o, a) => {
3791
- for (var r = a > 1 ? void 0 : a ? Ro(e, o) : e, s = t.length - 1, n; s >= 0; s--)
3792
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
3793
- return a && r && Bo(e, o, r), r;
3819
+ ], re);
3820
+ var Ba = Object.defineProperty, Ra = Object.getOwnPropertyDescriptor, Va = (c, e, a, f) => {
3821
+ for (var t = f > 1 ? void 0 : f ? Ra(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3822
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
3823
+ return f && t && Ba(e, a, t), t;
3794
3824
  };
3795
3825
  let $e = class extends C {
3796
3826
  render() {
3797
- return c` <sl-alert variant="danger" open>
3827
+ return s` <sl-alert variant="danger" open>
3798
3828
  <cb-status-icon status="error" slot="icon"></cb-status-icon>
3799
3829
  Please config openai api key in the settings.
3800
3830
  <span
@@ -3808,14 +3838,14 @@ let $e = class extends C {
3808
3838
  this.emit("setting:show");
3809
3839
  }
3810
3840
  };
3811
- $e.styles = zo;
3812
- $e = Vo([
3841
+ $e.styles = Ea;
3842
+ $e = Va([
3813
3843
  k("cb-auth-alert")
3814
3844
  ], $e);
3815
3845
  class Te extends Error {
3816
- constructor(e, o, a) {
3817
- const r = e.status || e.status === 0 ? e.status : "", s = e.statusText || "", n = `${r} ${s}`.trim(), i = n ? `status code ${n}` : "an unknown error";
3818
- super(`Request failed with ${i}`), Object.defineProperty(this, "response", {
3846
+ constructor(e, a, f) {
3847
+ const t = e.status || e.status === 0 ? e.status : "", o = e.statusText || "", d = `${t} ${o}`.trim(), b = d ? `status code ${d}` : "an unknown error";
3848
+ super(`Request failed with ${b}`), Object.defineProperty(this, "response", {
3819
3849
  enumerable: !0,
3820
3850
  configurable: !0,
3821
3851
  writable: !0,
@@ -3830,10 +3860,10 @@ class Te extends Error {
3830
3860
  configurable: !0,
3831
3861
  writable: !0,
3832
3862
  value: void 0
3833
- }), this.name = "HTTPError", this.response = e, this.request = o, this.options = a;
3863
+ }), this.name = "HTTPError", this.response = e, this.request = a, this.options = f;
3834
3864
  }
3835
3865
  }
3836
- class tt extends Error {
3866
+ class cc extends Error {
3837
3867
  constructor(e) {
3838
3868
  super("Request timed out"), Object.defineProperty(this, "request", {
3839
3869
  enumerable: !0,
@@ -3843,144 +3873,144 @@ class tt extends Error {
3843
3873
  }), this.name = "TimeoutError", this.request = e;
3844
3874
  }
3845
3875
  }
3846
- const ee = (t) => t !== null && typeof t == "object", G = (...t) => {
3847
- for (const e of t)
3876
+ const ee = (c) => c !== null && typeof c == "object", G = (...c) => {
3877
+ for (const e of c)
3848
3878
  if ((!ee(e) || Array.isArray(e)) && typeof e < "u")
3849
3879
  throw new TypeError("The `options` argument must be an object");
3850
- return Oe({}, ...t);
3851
- }, ot = (t = {}, e = {}) => {
3852
- const o = new globalThis.Headers(t), a = e instanceof globalThis.Headers, r = new globalThis.Headers(e);
3853
- for (const [s, n] of r.entries())
3854
- a && n === "undefined" || n === void 0 ? o.delete(s) : o.set(s, n);
3855
- return o;
3856
- }, Oe = (...t) => {
3857
- let e = {}, o = {};
3858
- for (const a of t)
3859
- if (Array.isArray(a))
3860
- Array.isArray(e) || (e = []), e = [...e, ...a];
3861
- else if (ee(a)) {
3862
- for (let [r, s] of Object.entries(a))
3863
- ee(s) && r in e && (s = Oe(e[r], s)), e = { ...e, [r]: s };
3864
- ee(a.headers) && (o = ot(o, a.headers), e.headers = o);
3880
+ return Le({}, ...c);
3881
+ }, ac = (c = {}, e = {}) => {
3882
+ const a = new globalThis.Headers(c), f = e instanceof globalThis.Headers, t = new globalThis.Headers(e);
3883
+ for (const [o, d] of t.entries())
3884
+ f && d === "undefined" || d === void 0 ? a.delete(o) : a.set(o, d);
3885
+ return a;
3886
+ }, Le = (...c) => {
3887
+ let e = {}, a = {};
3888
+ for (const f of c)
3889
+ if (Array.isArray(f))
3890
+ Array.isArray(e) || (e = []), e = [...e, ...f];
3891
+ else if (ee(f)) {
3892
+ for (let [t, o] of Object.entries(f))
3893
+ ee(o) && t in e && (o = Le(e[t], o)), e = { ...e, [t]: o };
3894
+ ee(f.headers) && (a = ac(a, f.headers), e.headers = a);
3865
3895
  }
3866
3896
  return e;
3867
- }, qo = (() => {
3868
- let t = !1, e = !1;
3869
- const o = typeof globalThis.ReadableStream == "function", a = typeof globalThis.Request == "function";
3870
- return o && a && (e = new globalThis.Request("https://a.com", {
3897
+ }, qa = (() => {
3898
+ let c = !1, e = !1;
3899
+ const a = typeof globalThis.ReadableStream == "function", f = typeof globalThis.Request == "function";
3900
+ return a && f && (e = new globalThis.Request("https://a.com", {
3871
3901
  body: new globalThis.ReadableStream(),
3872
3902
  method: "POST",
3873
3903
  // @ts-expect-error - Types are outdated.
3874
3904
  get duplex() {
3875
- return t = !0, "half";
3905
+ return c = !0, "half";
3876
3906
  }
3877
- }).headers.has("Content-Type")), t && !e;
3878
- })(), Do = typeof globalThis.AbortController == "function", Fo = typeof globalThis.ReadableStream == "function", Uo = typeof globalThis.FormData == "function", rt = ["get", "post", "put", "patch", "head", "delete"], Zo = {
3907
+ }).headers.has("Content-Type")), c && !e;
3908
+ })(), Da = typeof globalThis.AbortController == "function", Fa = typeof globalThis.ReadableStream == "function", Ua = typeof globalThis.FormData == "function", tc = ["get", "post", "put", "patch", "head", "delete"], Za = {
3879
3909
  json: "application/json",
3880
3910
  text: "text/*",
3881
3911
  formData: "multipart/form-data",
3882
3912
  arrayBuffer: "*/*",
3883
3913
  blob: "*/*"
3884
- }, fe = 2147483647, at = Symbol("stop"), No = (t) => rt.includes(t) ? t.toUpperCase() : t, Wo = ["get", "put", "head", "delete", "options", "trace"], Ko = [408, 413, 429, 500, 502, 503, 504], st = [413, 429, 503], Be = {
3914
+ }, ve = 2147483647, fc = Symbol("stop"), Na = (c) => tc.includes(c) ? c.toUpperCase() : c, Wa = ["get", "put", "head", "delete", "options", "trace"], Ka = [408, 413, 429, 500, 502, 503, 504], oc = [413, 429, 503], Be = {
3885
3915
  limit: 2,
3886
- methods: Wo,
3887
- statusCodes: Ko,
3888
- afterStatusCodes: st,
3916
+ methods: Wa,
3917
+ statusCodes: Ka,
3918
+ afterStatusCodes: oc,
3889
3919
  maxRetryAfter: Number.POSITIVE_INFINITY,
3890
3920
  backoffLimit: Number.POSITIVE_INFINITY
3891
- }, Jo = (t = {}) => {
3892
- if (typeof t == "number")
3921
+ }, Ja = (c = {}) => {
3922
+ if (typeof c == "number")
3893
3923
  return {
3894
3924
  ...Be,
3895
- limit: t
3925
+ limit: c
3896
3926
  };
3897
- if (t.methods && !Array.isArray(t.methods))
3927
+ if (c.methods && !Array.isArray(c.methods))
3898
3928
  throw new Error("retry.methods must be an array");
3899
- if (t.statusCodes && !Array.isArray(t.statusCodes))
3929
+ if (c.statusCodes && !Array.isArray(c.statusCodes))
3900
3930
  throw new Error("retry.statusCodes must be an array");
3901
3931
  return {
3902
3932
  ...Be,
3903
- ...t,
3904
- afterStatusCodes: st
3933
+ ...c,
3934
+ afterStatusCodes: oc
3905
3935
  };
3906
3936
  };
3907
- async function Yo(t, e, o) {
3908
- return new Promise((a, r) => {
3909
- const s = setTimeout(() => {
3910
- e && e.abort(), r(new tt(t));
3911
- }, o.timeout);
3912
- o.fetch(t).then(a).catch(r).then(() => {
3913
- clearTimeout(s);
3937
+ async function Ya(c, e, a) {
3938
+ return new Promise((f, t) => {
3939
+ const o = setTimeout(() => {
3940
+ e && e.abort(), t(new cc(c));
3941
+ }, a.timeout);
3942
+ a.fetch(c).then(f).catch(t).then(() => {
3943
+ clearTimeout(o);
3914
3944
  });
3915
3945
  });
3916
3946
  }
3917
- const Go = !!globalThis.DOMException;
3918
- function Re(t) {
3919
- if (Go)
3920
- return new DOMException((t == null ? void 0 : t.reason) ?? "The operation was aborted.", "AbortError");
3921
- const e = new Error((t == null ? void 0 : t.reason) ?? "The operation was aborted.");
3947
+ const Ga = !!globalThis.DOMException;
3948
+ function Re(c) {
3949
+ if (Ga)
3950
+ return new DOMException((c == null ? void 0 : c.reason) ?? "The operation was aborted.", "AbortError");
3951
+ const e = new Error((c == null ? void 0 : c.reason) ?? "The operation was aborted.");
3922
3952
  return e.name = "AbortError", e;
3923
3953
  }
3924
- async function Xo(t, { signal: e }) {
3925
- return new Promise((o, a) => {
3954
+ async function Xa(c, { signal: e }) {
3955
+ return new Promise((a, f) => {
3926
3956
  if (e) {
3927
3957
  if (e.aborted) {
3928
- a(Re(e));
3958
+ f(Re(e));
3929
3959
  return;
3930
3960
  }
3931
- e.addEventListener("abort", r, { once: !0 });
3961
+ e.addEventListener("abort", t, { once: !0 });
3932
3962
  }
3933
- function r() {
3934
- a(Re(e)), clearTimeout(s);
3963
+ function t() {
3964
+ f(Re(e)), clearTimeout(o);
3935
3965
  }
3936
- const s = setTimeout(() => {
3937
- e == null || e.removeEventListener("abort", r), o();
3938
- }, t);
3966
+ const o = setTimeout(() => {
3967
+ e == null || e.removeEventListener("abort", t), a();
3968
+ }, c);
3939
3969
  });
3940
3970
  }
3941
- class le {
3971
+ class se {
3942
3972
  // eslint-disable-next-line @typescript-eslint/promise-function-async
3943
- static create(e, o) {
3944
- const a = new le(e, o), r = async () => {
3945
- if (a._options.timeout > fe)
3946
- throw new RangeError(`The \`timeout\` option cannot be greater than ${fe}`);
3973
+ static create(e, a) {
3974
+ const f = new se(e, a), t = async () => {
3975
+ if (f._options.timeout > ve)
3976
+ throw new RangeError(`The \`timeout\` option cannot be greater than ${ve}`);
3947
3977
  await Promise.resolve();
3948
- let i = await a._fetch();
3949
- for (const g of a._options.hooks.afterResponse) {
3950
- const m = await g(a.request, a._options, a._decorateResponse(i.clone()));
3951
- m instanceof globalThis.Response && (i = m);
3978
+ let b = await f._fetch();
3979
+ for (const h of f._options.hooks.afterResponse) {
3980
+ const g = await h(f.request, f._options, f._decorateResponse(b.clone()));
3981
+ g instanceof globalThis.Response && (b = g);
3952
3982
  }
3953
- if (a._decorateResponse(i), !i.ok && a._options.throwHttpErrors) {
3954
- let g = new Te(i, a.request, a._options);
3955
- for (const m of a._options.hooks.beforeError)
3956
- g = await m(g);
3957
- throw g;
3983
+ if (f._decorateResponse(b), !b.ok && f._options.throwHttpErrors) {
3984
+ let h = new Te(b, f.request, f._options);
3985
+ for (const g of f._options.hooks.beforeError)
3986
+ h = await g(h);
3987
+ throw h;
3958
3988
  }
3959
- if (a._options.onDownloadProgress) {
3960
- if (typeof a._options.onDownloadProgress != "function")
3989
+ if (f._options.onDownloadProgress) {
3990
+ if (typeof f._options.onDownloadProgress != "function")
3961
3991
  throw new TypeError("The `onDownloadProgress` option must be a function");
3962
- if (!Fo)
3992
+ if (!Fa)
3963
3993
  throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");
3964
- return a._stream(i.clone(), a._options.onDownloadProgress);
3994
+ return f._stream(b.clone(), f._options.onDownloadProgress);
3965
3995
  }
3966
- return i;
3967
- }, n = a._options.retry.methods.includes(a.request.method.toLowerCase()) ? a._retry(r) : r();
3968
- for (const [i, g] of Object.entries(Zo))
3969
- n[i] = async () => {
3970
- a.request.headers.set("accept", a.request.headers.get("accept") || g);
3971
- const y = (await n).clone();
3972
- if (i === "json") {
3973
- if (y.status === 204 || (await y.clone().arrayBuffer()).byteLength === 0)
3996
+ return b;
3997
+ }, d = f._options.retry.methods.includes(f.request.method.toLowerCase()) ? f._retry(t) : t();
3998
+ for (const [b, h] of Object.entries(Za))
3999
+ d[b] = async () => {
4000
+ f.request.headers.set("accept", f.request.headers.get("accept") || h);
4001
+ const m = (await d).clone();
4002
+ if (b === "json") {
4003
+ if (m.status === 204 || (await m.clone().arrayBuffer()).byteLength === 0)
3974
4004
  return "";
3975
- if (o.parseJson)
3976
- return o.parseJson(await y.text());
4005
+ if (a.parseJson)
4006
+ return a.parseJson(await m.text());
3977
4007
  }
3978
- return y[i]();
4008
+ return m[b]();
3979
4009
  };
3980
- return n;
4010
+ return d;
3981
4011
  }
3982
4012
  // eslint-disable-next-line complexity
3983
- constructor(e, o = {}) {
4013
+ constructor(e, a = {}) {
3984
4014
  if (Object.defineProperty(this, "request", {
3985
4015
  enumerable: !0,
3986
4016
  configurable: !0,
@@ -4009,21 +4039,21 @@ class le {
4009
4039
  }), this._input = e, this._options = {
4010
4040
  // TODO: credentials can be removed when the spec change is implemented in all browsers. Context: https://www.chromestatus.com/feature/4539473312350208
4011
4041
  credentials: this._input.credentials || "same-origin",
4012
- ...o,
4013
- headers: ot(this._input.headers, o.headers),
4014
- hooks: Oe({
4042
+ ...a,
4043
+ headers: ac(this._input.headers, a.headers),
4044
+ hooks: Le({
4015
4045
  beforeRequest: [],
4016
4046
  beforeRetry: [],
4017
4047
  beforeError: [],
4018
4048
  afterResponse: []
4019
- }, o.hooks),
4020
- method: No(o.method ?? this._input.method),
4049
+ }, a.hooks),
4050
+ method: Na(a.method ?? this._input.method),
4021
4051
  // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
4022
- prefixUrl: String(o.prefixUrl || ""),
4023
- retry: Jo(o.retry),
4024
- throwHttpErrors: o.throwHttpErrors !== !1,
4025
- timeout: typeof o.timeout > "u" ? 1e4 : o.timeout,
4026
- fetch: o.fetch ?? globalThis.fetch.bind(globalThis)
4052
+ prefixUrl: String(a.prefixUrl || ""),
4053
+ retry: Ja(a.retry),
4054
+ throwHttpErrors: a.throwHttpErrors !== !1,
4055
+ timeout: typeof a.timeout > "u" ? 1e4 : a.timeout,
4056
+ fetch: a.fetch ?? globalThis.fetch.bind(globalThis)
4027
4057
  }, typeof this._input != "string" && !(this._input instanceof URL || this._input instanceof globalThis.Request))
4028
4058
  throw new TypeError("`input` must be a string, URL, or Request");
4029
4059
  if (this._options.prefixUrl && typeof this._input == "string") {
@@ -4031,36 +4061,36 @@ class le {
4031
4061
  throw new Error("`input` must not begin with a slash when using `prefixUrl`");
4032
4062
  this._options.prefixUrl.endsWith("/") || (this._options.prefixUrl += "/"), this._input = this._options.prefixUrl + this._input;
4033
4063
  }
4034
- if (Do) {
4064
+ if (Da) {
4035
4065
  if (this.abortController = new globalThis.AbortController(), this._options.signal) {
4036
- const a = this._options.signal;
4066
+ const f = this._options.signal;
4037
4067
  this._options.signal.addEventListener("abort", () => {
4038
- this.abortController.abort(a.reason);
4068
+ this.abortController.abort(f.reason);
4039
4069
  });
4040
4070
  }
4041
4071
  this._options.signal = this.abortController.signal;
4042
4072
  }
4043
- if (qo && (this._options.duplex = "half"), this.request = new globalThis.Request(this._input, this._options), this._options.searchParams) {
4044
- const r = "?" + (typeof this._options.searchParams == "string" ? this._options.searchParams.replace(/^\?/, "") : new URLSearchParams(this._options.searchParams).toString()), s = this.request.url.replace(/(?:\?.*?)?(?=#|$)/, r);
4045
- (Uo && this._options.body instanceof globalThis.FormData || this._options.body instanceof URLSearchParams) && !(this._options.headers && this._options.headers["content-type"]) && this.request.headers.delete("content-type"), this.request = new globalThis.Request(new globalThis.Request(s, { ...this.request }), this._options);
4073
+ if (qa && (this._options.duplex = "half"), this.request = new globalThis.Request(this._input, this._options), this._options.searchParams) {
4074
+ const t = "?" + (typeof this._options.searchParams == "string" ? this._options.searchParams.replace(/^\?/, "") : new URLSearchParams(this._options.searchParams).toString()), o = this.request.url.replace(/(?:\?.*?)?(?=#|$)/, t);
4075
+ (Ua && this._options.body instanceof globalThis.FormData || this._options.body instanceof URLSearchParams) && !(this._options.headers && this._options.headers["content-type"]) && this.request.headers.delete("content-type"), this.request = new globalThis.Request(new globalThis.Request(o, { ...this.request }), this._options);
4046
4076
  }
4047
4077
  this._options.json !== void 0 && (this._options.body = JSON.stringify(this._options.json), this.request.headers.set("content-type", this._options.headers.get("content-type") ?? "application/json"), this.request = new globalThis.Request(this.request, { body: this._options.body }));
4048
4078
  }
4049
4079
  _calculateRetryDelay(e) {
4050
- if (this._retryCount++, this._retryCount < this._options.retry.limit && !(e instanceof tt)) {
4080
+ if (this._retryCount++, this._retryCount < this._options.retry.limit && !(e instanceof cc)) {
4051
4081
  if (e instanceof Te) {
4052
4082
  if (!this._options.retry.statusCodes.includes(e.response.status))
4053
4083
  return 0;
4054
- const a = e.response.headers.get("Retry-After");
4055
- if (a && this._options.retry.afterStatusCodes.includes(e.response.status)) {
4056
- let r = Number(a);
4057
- return Number.isNaN(r) ? r = Date.parse(a) - Date.now() : r *= 1e3, typeof this._options.retry.maxRetryAfter < "u" && r > this._options.retry.maxRetryAfter ? 0 : r;
4084
+ const f = e.response.headers.get("Retry-After");
4085
+ if (f && this._options.retry.afterStatusCodes.includes(e.response.status)) {
4086
+ let t = Number(f);
4087
+ return Number.isNaN(t) ? t = Date.parse(f) - Date.now() : t *= 1e3, typeof this._options.retry.maxRetryAfter < "u" && t > this._options.retry.maxRetryAfter ? 0 : t;
4058
4088
  }
4059
4089
  if (e.response.status === 413)
4060
4090
  return 0;
4061
4091
  }
4062
- const o = 0.3;
4063
- return Math.min(this._options.retry.backoffLimit, o * 2 ** (this._retryCount - 1) * 1e3);
4092
+ const a = 0.3;
4093
+ return Math.min(this._options.retry.backoffLimit, a * 2 ** (this._retryCount - 1) * 1e3);
4064
4094
  }
4065
4095
  return 0;
4066
4096
  }
@@ -4070,61 +4100,61 @@ class le {
4070
4100
  async _retry(e) {
4071
4101
  try {
4072
4102
  return await e();
4073
- } catch (o) {
4074
- const a = Math.min(this._calculateRetryDelay(o), fe);
4075
- if (a !== 0 && this._retryCount > 0) {
4076
- await Xo(a, { signal: this._options.signal });
4077
- for (const r of this._options.hooks.beforeRetry)
4078
- if (await r({
4103
+ } catch (a) {
4104
+ const f = Math.min(this._calculateRetryDelay(a), ve);
4105
+ if (f !== 0 && this._retryCount > 0) {
4106
+ await Xa(f, { signal: this._options.signal });
4107
+ for (const t of this._options.hooks.beforeRetry)
4108
+ if (await t({
4079
4109
  request: this.request,
4080
4110
  options: this._options,
4081
- error: o,
4111
+ error: a,
4082
4112
  retryCount: this._retryCount
4083
- }) === at)
4113
+ }) === fc)
4084
4114
  return;
4085
4115
  return this._retry(e);
4086
4116
  }
4087
- throw o;
4117
+ throw a;
4088
4118
  }
4089
4119
  }
4090
4120
  async _fetch() {
4091
4121
  for (const e of this._options.hooks.beforeRequest) {
4092
- const o = await e(this.request, this._options);
4093
- if (o instanceof Request) {
4094
- this.request = o;
4122
+ const a = await e(this.request, this._options);
4123
+ if (a instanceof Request) {
4124
+ this.request = a;
4095
4125
  break;
4096
4126
  }
4097
- if (o instanceof Response)
4098
- return o;
4127
+ if (a instanceof Response)
4128
+ return a;
4099
4129
  }
4100
- return this._options.timeout === !1 ? this._options.fetch(this.request.clone()) : Yo(this.request.clone(), this.abortController, this._options);
4130
+ return this._options.timeout === !1 ? this._options.fetch(this.request.clone()) : Ya(this.request.clone(), this.abortController, this._options);
4101
4131
  }
4102
4132
  /* istanbul ignore next */
4103
- _stream(e, o) {
4104
- const a = Number(e.headers.get("content-length")) || 0;
4105
- let r = 0;
4106
- return e.status === 204 ? (o && o({ percent: 1, totalBytes: a, transferredBytes: r }, new Uint8Array()), new globalThis.Response(null, {
4133
+ _stream(e, a) {
4134
+ const f = Number(e.headers.get("content-length")) || 0;
4135
+ let t = 0;
4136
+ return e.status === 204 ? (a && a({ percent: 1, totalBytes: f, transferredBytes: t }, new Uint8Array()), new globalThis.Response(null, {
4107
4137
  status: e.status,
4108
4138
  statusText: e.statusText,
4109
4139
  headers: e.headers
4110
4140
  })) : new globalThis.Response(new globalThis.ReadableStream({
4111
- async start(s) {
4112
- const n = e.body.getReader();
4113
- o && o({ percent: 0, transferredBytes: 0, totalBytes: a }, new Uint8Array());
4114
- async function i() {
4115
- const { done: g, value: m } = await n.read();
4116
- if (g) {
4117
- s.close();
4141
+ async start(o) {
4142
+ const d = e.body.getReader();
4143
+ a && a({ percent: 0, transferredBytes: 0, totalBytes: f }, new Uint8Array());
4144
+ async function b() {
4145
+ const { done: h, value: g } = await d.read();
4146
+ if (h) {
4147
+ o.close();
4118
4148
  return;
4119
4149
  }
4120
- if (o) {
4121
- r += m.byteLength;
4122
- const y = a === 0 ? 0 : r / a;
4123
- o({ percent: y, transferredBytes: r, totalBytes: a }, m);
4150
+ if (a) {
4151
+ t += g.byteLength;
4152
+ const m = f === 0 ? 0 : t / f;
4153
+ a({ percent: m, transferredBytes: t, totalBytes: f }, g);
4124
4154
  }
4125
- s.enqueue(m), await i();
4155
+ o.enqueue(g), await b();
4126
4156
  }
4127
- await i();
4157
+ await b();
4128
4158
  }
4129
4159
  }), {
4130
4160
  status: e.status,
@@ -4134,12 +4164,12 @@ class le {
4134
4164
  }
4135
4165
  }
4136
4166
  /*! MIT License © Sindre Sorhus */
4137
- const je = (t) => {
4138
- const e = (o, a) => le.create(o, G(t, a));
4139
- for (const o of rt)
4140
- e[o] = (a, r) => le.create(a, G(t, r, { method: o }));
4141
- return e.create = (o) => je(G(o)), e.extend = (o) => je(G(t, o)), e.stop = at, e;
4142
- }, Qo = je(), er = Qo, nt = er.extend({
4167
+ const je = (c) => {
4168
+ const e = (a, f) => se.create(a, G(c, f));
4169
+ for (const a of tc)
4170
+ e[a] = (f, t) => se.create(f, G(c, t, { method: a }));
4171
+ return e.create = (a) => je(G(a)), e.extend = (a) => je(G(c, a)), e.stop = fc, e;
4172
+ }, Qa = je(), e1 = Qa, dc = e1.extend({
4143
4173
  hooks: {
4144
4174
  beforeRequest: [
4145
4175
  () => {
@@ -4147,41 +4177,41 @@ const je = (t) => {
4147
4177
  ]
4148
4178
  }
4149
4179
  });
4150
- async function tr(t, e) {
4151
- const { onmessage: o, onclose: a, ...r } = e, s = async (n, i) => {
4152
- const { value: g, done: m } = await i.read();
4153
- m ? (n.close(), a == null || a()) : (o == null || o(g), n.enqueue(g), s(n, i));
4180
+ async function c1(c, e) {
4181
+ const { onmessage: a, onclose: f, ...t } = e, o = async (d, b) => {
4182
+ const { value: h, done: g } = await b.read();
4183
+ g ? (d.close(), f == null || f()) : (a == null || a(h), d.enqueue(h), o(d, b));
4154
4184
  };
4155
- return r.body && typeof r.body == "object" && (r.body = JSON.stringify(r.body)), console.log("Fetching:", r), fetch(t, r).then((n) => {
4156
- const i = n.body.getReader();
4185
+ return t.body && typeof t.body == "object" && (t.body = JSON.stringify(t.body)), console.log("Fetching:", t), fetch(c, t).then((d) => {
4186
+ const b = d.body.getReader();
4157
4187
  return new ReadableStream({
4158
- start(m) {
4159
- s(
4160
- m,
4161
- i
4188
+ start(g) {
4189
+ o(
4190
+ g,
4191
+ b
4162
4192
  );
4163
4193
  }
4164
4194
  });
4165
4195
  }).then(
4166
- (n) => new Response(n, {
4196
+ (d) => new Response(d, {
4167
4197
  headers: { "Content-Type": "text/html" }
4168
4198
  }).text()
4169
4199
  );
4170
4200
  }
4171
- async function or(t, e) {
4172
- const o = new FormData();
4173
- for (let r = 0; r < e.length; r++)
4174
- o.append("files", e[r]);
4175
- const a = await nt.post(t, {
4176
- body: o
4201
+ async function a1(c, e) {
4202
+ const a = new FormData();
4203
+ for (let t = 0; t < e.length; t++)
4204
+ a.append("files", e[t]);
4205
+ const f = await dc.post(c, {
4206
+ body: a
4177
4207
  });
4178
4208
  try {
4179
- return await a.json();
4180
- } catch (r) {
4209
+ return await f.json();
4210
+ } catch (t) {
4181
4211
  return {
4182
4212
  code: 1,
4183
4213
  url: "",
4184
- message: r.message
4214
+ message: t.message
4185
4215
  };
4186
4216
  }
4187
4217
  }
@@ -4203,109 +4233,109 @@ const Ve = {
4203
4233
  icon: Qe
4204
4234
  }
4205
4235
  };
4206
- function rr(t) {
4236
+ function t1(c) {
4207
4237
  const e = document.createElement("div");
4208
- return e.textContent = t, e.innerHTML;
4238
+ return e.textContent = c, e.innerHTML;
4209
4239
  }
4210
- function ar(t = "info", e, o = 1e8) {
4211
- const { variant: a, icon: r } = Ve[t] || Ve.info, s = Object.assign(document.createElement("sl-alert"), {
4212
- variant: a,
4240
+ function f1(c = "info", e, a = 1e8) {
4241
+ const { variant: f, icon: t } = Ve[c] || Ve.info, o = Object.assign(document.createElement("sl-alert"), {
4242
+ variant: f,
4213
4243
  closable: !0,
4214
- duration: o,
4244
+ duration: a,
4215
4245
  innerHTML: `
4216
- <cb-status-icon slot="icon" status="${t}"></cb-status-icon>
4217
- ${rr(e)}
4246
+ <cb-status-icon slot="icon" status="${c}"></cb-status-icon>
4247
+ ${t1(e)}
4218
4248
  `
4219
4249
  });
4220
- return document.body.append(s), s.toast();
4250
+ return document.body.append(o), o.toast();
4221
4251
  }
4222
- async function sr(t, e) {
4223
- const o = t.getReader(), a = new TextDecoder("utf-8");
4224
- let r = !1;
4225
- for (; !r; ) {
4226
- const { value: s, done: n } = await o.read();
4227
- if (s) {
4228
- let i = a.decode(s);
4229
- const g = i.lastIndexOf("data:"), m = i.lastIndexOf(`
4252
+ async function o1(c, e) {
4253
+ const a = c.getReader(), f = new TextDecoder("utf-8");
4254
+ let t = !1;
4255
+ for (; !t; ) {
4256
+ const { value: o, done: d } = await a.read();
4257
+ if (o) {
4258
+ let b = f.decode(o);
4259
+ const h = b.lastIndexOf("data:"), g = b.lastIndexOf(`
4230
4260
  `);
4231
- if (g !== -1 && (i = i.slice(g + 6)), m !== -1 && (i = i.slice(0, m)), i = i.trim(), i === `
4232
- ` || i === "")
4261
+ if (h !== -1 && (b = b.slice(h + 6)), g !== -1 && (b = b.slice(0, g)), b = b.trim(), b === `
4262
+ ` || b === "")
4233
4263
  continue;
4234
- if (i === "[DONE]") {
4235
- r = !0;
4264
+ if (b === "[DONE]") {
4265
+ t = !0;
4236
4266
  continue;
4237
4267
  }
4238
4268
  try {
4239
- const y = JSON.parse(i);
4240
- e(null, y);
4241
- } catch (y) {
4242
- console.log("error", y), e(y, null);
4269
+ const m = JSON.parse(b);
4270
+ e(null, m);
4271
+ } catch (m) {
4272
+ console.log("error", m), e(m, null);
4243
4273
  }
4244
4274
  }
4245
- r = n;
4275
+ t = d;
4246
4276
  }
4247
4277
  }
4248
- async function nr(t) {
4249
- var r;
4250
- if (!t.apiKey)
4278
+ async function d1(c) {
4279
+ var t;
4280
+ if (!c.apiKey)
4251
4281
  throw new Error("apiKey is required");
4252
- const e = t.options ?? {};
4282
+ const e = c.options ?? {};
4253
4283
  e.model || (e.model = "gpt-3.5-turbo");
4254
- const o = await nt.post(t.url, {
4284
+ const a = await dc.post(c.url, {
4255
4285
  json: {
4256
- messages: t.messages,
4257
- ...t.options ?? {}
4286
+ messages: c.messages,
4287
+ ...c.options ?? {}
4258
4288
  },
4259
4289
  headers: {
4260
4290
  "Content-Type": "application/json",
4261
- Authorization: `Bearer ${t.apiKey}`
4291
+ Authorization: `Bearer ${c.apiKey}`
4262
4292
  },
4263
4293
  timeout: 1e3 * 60 * 10,
4264
- signal: t.signal
4265
- }), a = o.body;
4266
- if (!a)
4294
+ signal: c.signal
4295
+ }), f = a.body;
4296
+ if (!f)
4267
4297
  throw new Error("No data");
4268
- if ((r = t.options) != null && r.stream) {
4269
- await sr(a, t.onMessage);
4298
+ if ((t = c.options) != null && t.stream) {
4299
+ await o1(f, c.onMessage);
4270
4300
  return;
4271
4301
  }
4272
- return o.json();
4302
+ return a.json();
4273
4303
  }
4274
- var ir = Object.defineProperty, lr = Object.getOwnPropertyDescriptor, v = (t, e, o, a) => {
4275
- for (var r = a > 1 ? void 0 : a ? lr(e, o) : e, s = t.length - 1, n; s >= 0; s--)
4276
- (n = t[s]) && (r = (a ? n(e, o, r) : n(r)) || r);
4277
- return a && r && ir(e, o, r), r;
4304
+ var b1 = Object.defineProperty, r1 = Object.getOwnPropertyDescriptor, v = (c, e, a, f) => {
4305
+ for (var t = f > 1 ? void 0 : f ? r1(e, a) : e, o = c.length - 1, d; o >= 0; o--)
4306
+ (d = c[o]) && (t = (f ? d(e, a, t) : d(t)) || t);
4307
+ return f && t && b1(e, a, t), t;
4278
4308
  };
4279
- const te = he.noConflict();
4280
- te.setLevel("info");
4281
- let b = class extends C {
4309
+ const ce = pe.noConflict();
4310
+ ce.setLevel("info");
4311
+ let u = class extends C {
4282
4312
  constructor() {
4283
- super(...arguments), this.store = new Fe(this, d), 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">
4313
+ super(...arguments), this.store = new Fe(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">
4284
4314
  <path
4285
4315
  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"
4286
4316
  fill="#E24D42"
4287
4317
  ></path>
4288
4318
  </svg>
4289
- `, this.botIconSvg = '<svg fill="currentColor" width="24" height="24" viewBox="0 0 24 24"> <path d="M16 17V19H2V17S2 13 9 13 16 17 16 17M12.5 7.5A3.5 3.5 0 1 0 9 11A3.5 3.5 0 0 0 12.5 7.5M15.94 13A5.32 5.32 0 0 1 18 17V19H22V17S22 13.37 15.94 13M15 4A3.39 3.39 0 0 0 13.07 4.59A5 5 0 0 1 13.07 10.41A3.39 3.39 0 0 0 15 11A3.5 3.5 0 0 0 15 4Z" /></svg>', this.userIconSvg = '<svg fill="currentColor" viewBox="0 0 24 24" width="24" height="24"> <path d="M12 4a4 4 0 0 1 4 4a4 4 0 0 1-4 4a4 4 0 0 1-4-4a4 4 0 0 1 4-4m0 10c4.42 0 8 1.79 8 4v2H4v-2c0-2.21 3.58-4 8-4Z" /></svg>', this.systemIconSvg = '<svg fill="currentColor" width="24" height="24" viewBox="0 0 24 24"> <path d="M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z"/></svg>', this.stream = !1, this.customRequest = !1, this.enableFileUpload = !1, this.uploadFileUrl = "", this.open = !1, this.loading = !1, this.showSetting = !1, this.showAuthAlert = !1, this.fetchStream = tr;
4319
+ `, this.botIconSvg = '<svg fill="currentColor" width="24" height="24" viewBox="0 0 24 24"> <path d="M16 17V19H2V17S2 13 9 13 16 17 16 17M12.5 7.5A3.5 3.5 0 1 0 9 11A3.5 3.5 0 0 0 12.5 7.5M15.94 13A5.32 5.32 0 0 1 18 17V19H22V17S22 13.37 15.94 13M15 4A3.39 3.39 0 0 0 13.07 4.59A5 5 0 0 1 13.07 10.41A3.39 3.39 0 0 0 15 11A3.5 3.5 0 0 0 15 4Z" /></svg>', this.userIconSvg = '<svg fill="currentColor" viewBox="0 0 24 24" width="24" height="24"> <path d="M12 4a4 4 0 0 1 4 4a4 4 0 0 1-4 4a4 4 0 0 1-4-4a4 4 0 0 1 4-4m0 10c4.42 0 8 1.79 8 4v2H4v-2c0-2.21 3.58-4 8-4Z" /></svg>', this.systemIconSvg = '<svg fill="currentColor" width="24" height="24" viewBox="0 0 24 24"> <path d="M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z"/></svg>', this.stream = !1, this.customRequest = !1, this.enableFileUpload = !1, this.uploadFileUrl = "", this.open = !1, this.loading = !1, this.showSetting = !1, this.showAuthAlert = !1, this.fetchStream = c1;
4290
4320
  }
4291
4321
  //HTMLElement;
4292
4322
  /**
4293
4323
  * decodeStreamData
4294
4324
  */
4295
- decodeStreamData(t) {
4296
- return new TextDecoder().decode(t);
4325
+ decodeStreamData(c) {
4326
+ return new TextDecoder().decode(c);
4297
4327
  }
4298
4328
  addMessage() {
4299
- const t = {
4329
+ const c = {
4300
4330
  author: "assistant",
4301
4331
  type: "text",
4302
4332
  isThinking: !0,
4303
4333
  data: {}
4304
4334
  };
4305
- return d.addMessage(t), t;
4335
+ return n.addMessage(c), c;
4306
4336
  }
4307
4337
  addTestMessage() {
4308
- const t = {
4338
+ const c = {
4309
4339
  author: "assistant",
4310
4340
  type: "text",
4311
4341
  isThinking: !1,
@@ -4313,28 +4343,28 @@ let b = class extends C {
4313
4343
  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."
4314
4344
  }
4315
4345
  };
4316
- return d.addMessage(t), t;
4346
+ return n.addMessage(c), c;
4317
4347
  }
4318
4348
  render() {
4319
- return c`
4320
- <div class="cb-wrapper" style="${d.open ? "display:flex" : "display:none"}">
4349
+ return s`
4350
+ <div class="cb-wrapper" style="${n.open ? "display:flex" : "display:none"}">
4321
4351
  <cb-header title="${this.name}"></cb-header>
4322
- <cb-message-list .messages=${d.messages} .actions=${d.actions}></cb-message-list>
4352
+ <cb-message-list .messages=${n.messages} .actions=${n.actions}></cb-message-list>
4323
4353
  <cb-user-input ?loading=${this.loading} ?disabled=${this.loading || this.showAuthAlert} ?enable-file-upload=${this.enableFileUpload}></cb-user-input>
4324
4354
  </div>
4325
- <cb-anchor ?open=${d.open}></cb-anchor>
4355
+ <cb-anchor ?open=${n.open}></cb-anchor>
4326
4356
  `;
4327
4357
  }
4328
4358
  connectedCallback() {
4329
- super.connectedCallback(), te.info("connectedCallback"), addEventListener("setting:show", () => {
4359
+ super.connectedCallback(), ce.info("connectedCallback"), addEventListener("setting:show", () => {
4330
4360
  this.showSetting = !0;
4331
4361
  }), addEventListener("message:send", this._addMessageHandler.bind(this)), addEventListener("message:remove", this._deleteMessageHandler.bind(this)), addEventListener("setting:confirm", this._settingConfirmHandler.bind(this)), addEventListener("setting:hide", () => {
4332
4362
  this.showSetting = !1;
4333
- }), addEventListener("chatbot:toggle", (t) => {
4334
- const e = t.detail;
4335
- d.open = e.open, d.engage = !1;
4363
+ }), addEventListener("chatbot:toggle", (c) => {
4364
+ const e = c.detail;
4365
+ n.open = e.open, n.engage = !1;
4336
4366
  }), addEventListener("message:clear", () => {
4337
- d.clearMessages();
4367
+ n.clearMessages();
4338
4368
  }), addEventListener("message:send:file", this._sendFileHandler.bind(this)), addEventListener("setting:show", () => {
4339
4369
  this.showSetting = !0;
4340
4370
  });
@@ -4342,52 +4372,52 @@ let b = class extends C {
4342
4372
  // This is called when component is loaded, with all the settings (props) values
4343
4373
  // Use to initialize
4344
4374
  // This is also called when state changes - ??? - i.e. when message added to the array
4345
- updated(t) {
4346
- super.updated(t), te.info("updated,_changedProperties:", t), t.size > 0 && (te.info("updated,_changedProperties:", t), this._initSetting()), setTimeout(() => {
4375
+ updated(c) {
4376
+ super.updated(c), ce.info("updated,_changedProperties:", c), c.size > 0 && (ce.info("updated,_changedProperties:", c), this._initSetting()), setTimeout(() => {
4347
4377
  this._scrollToBottom();
4348
4378
  }, 0);
4349
4379
  }
4350
4380
  // initialize setting
4351
4381
  _initSetting() {
4352
- const t = d.setting;
4353
- t.orgId = this.orgId, t.botId = this.botId, t.url = this.url, t.logoSvg = this.logoSvg, t.botIconSvg = this.botIconSvg, t.userIconSvg = this.userIconSvg, t.systemIconSvg = this.systemIconSvg, d.setSetting(t);
4382
+ const c = n.setting;
4383
+ 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);
4354
4384
  }
4355
- setLoading(t) {
4356
- this.loading = t;
4385
+ setLoading(c) {
4386
+ this.loading = c;
4357
4387
  }
4358
4388
  clearConversation() {
4359
- d.clearConversation();
4389
+ n.clearConversation();
4360
4390
  }
4361
4391
  // check auth
4362
4392
  _checkAuth() {
4363
4393
  }
4364
4394
  // TODO Remove
4365
- async _sendToOpenai(t, e) {
4366
- let o = "";
4367
- const a = d.setting.openai.apiBase || "https://api.openai.com/v1", r = await nr({
4368
- url: `${a}/chat/completions`,
4369
- apiKey: d.setting.openai.apiKey,
4395
+ async _sendToOpenai(c, e) {
4396
+ let a = "";
4397
+ const f = n.setting.openai.apiBase || "https://api.openai.com/v1", t = await d1({
4398
+ url: `${f}/chat/completions`,
4399
+ apiKey: n.setting.openai.apiKey,
4370
4400
  messages: e,
4371
4401
  options: {
4372
- stream: d.setting.stream,
4373
- model: d.setting.openai.model
4402
+ stream: n.setting.stream,
4403
+ model: n.setting.openai.model
4374
4404
  // temperature: 0.9,
4375
4405
  },
4376
- onMessage: (s, n) => {
4377
- var i;
4378
- if (s) {
4379
- console.error(s);
4406
+ onMessage: (o, d) => {
4407
+ var b;
4408
+ if (o) {
4409
+ console.error(o);
4380
4410
  return;
4381
4411
  }
4382
- n && ((i = n.choices[0].delta) != null && i.content) && requestIdleCallback(() => {
4383
- o += n.choices[0].delta.content, d.updateMessage(t, o);
4412
+ d && ((b = d.choices[0].delta) != null && b.content) && requestIdleCallback(() => {
4413
+ a += d.choices[0].delta.content, n.updateMessage(c, a);
4384
4414
  });
4385
4415
  }
4386
4416
  });
4387
- !d.setting.stream && r && d.updateMessage(t, r.choices[0].message.content);
4417
+ !n.setting.stream && t && n.updateMessage(c, t.choices[0].message.content);
4388
4418
  }
4389
4419
  // TODO Remove
4390
- async _sendHandler(t) {
4420
+ async _sendHandler(c) {
4391
4421
  this.setLoading(!0);
4392
4422
  const e = {
4393
4423
  author: "assistant",
@@ -4395,128 +4425,128 @@ let b = class extends C {
4395
4425
  isThinking: !0,
4396
4426
  data: {}
4397
4427
  };
4398
- if (d.addMessage(e), this.customRequest)
4428
+ if (n.addMessage(e), this.customRequest)
4399
4429
  await this.emit("chatbot:send", {
4400
4430
  detail: {
4401
4431
  newMessage: e,
4402
- messages: t
4432
+ messages: c
4403
4433
  },
4404
4434
  bubbles: !0,
4405
4435
  composed: !0
4406
4436
  });
4407
4437
  else
4408
4438
  try {
4409
- await this._sendToOpenai(e, t);
4410
- } catch (o) {
4411
- ar("error", o.message), console.error(o);
4439
+ await this._sendToOpenai(e, c);
4440
+ } catch (a) {
4441
+ f1("error", a.message), console.error(a);
4412
4442
  }
4413
4443
  this.setLoading(!1);
4414
4444
  }
4415
- _addMessageHandler(t) {
4416
- const e = t.detail;
4417
- d.sendMessage(e);
4445
+ _addMessageHandler(c) {
4446
+ const e = c.detail;
4447
+ n.sendMessage(e);
4418
4448
  }
4419
- _deleteMessageHandler(t) {
4420
- const e = t.detail;
4421
- d.removeMessage(e.id);
4449
+ _deleteMessageHandler(c) {
4450
+ const e = c.detail;
4451
+ n.removeMessage(e.id);
4422
4452
  }
4423
- async _sendFileHandler(t) {
4424
- const e = t.detail, a = {
4453
+ async _sendFileHandler(c) {
4454
+ const e = c.detail, f = {
4425
4455
  author: "user",
4426
4456
  type: "file",
4427
4457
  isUploading: !0,
4428
4458
  data: {
4429
- files: e.files.map((r, s) => ({
4430
- id: `${r.name}-${s}`,
4431
- name: r.name,
4432
- size: r.size,
4433
- type: r.type,
4459
+ files: e.files.map((t, o) => ({
4460
+ id: `${t.name}-${o}`,
4461
+ name: t.name,
4462
+ size: t.size,
4463
+ type: t.type,
4434
4464
  url: ""
4435
4465
  }))
4436
4466
  }
4437
4467
  };
4438
- if (d.addMessage(a), this.uploadFileUrl) {
4439
- const r = await or(this.uploadFileUrl, e.files);
4440
- r.code === 0 && r.data && (a.isUploading = !1, a.data = {
4441
- files: r.data
4442
- }, d.updateMessage(a));
4468
+ if (n.addMessage(f), this.uploadFileUrl) {
4469
+ const t = await a1(this.uploadFileUrl, e.files);
4470
+ t.code === 0 && t.data && (f.isUploading = !1, f.data = {
4471
+ files: t.data
4472
+ }, n.updateMessage(f));
4443
4473
  }
4444
4474
  this.emit("chatbot:file:send", {
4445
4475
  detail: {
4446
4476
  files: e.files,
4447
- message: a
4477
+ message: f
4448
4478
  }
4449
4479
  });
4450
4480
  }
4451
4481
  // setting confirm handler
4452
- _settingConfirmHandler(t) {
4453
- const e = t.detail;
4454
- d.setSetting(e.setting), this.showSetting = !1, this._checkAuth();
4482
+ _settingConfirmHandler(c) {
4483
+ const e = c.detail;
4484
+ n.setSetting(e.setting), this.showSetting = !1, this._checkAuth();
4455
4485
  }
4456
4486
  // scroll to bottom
4457
- _scrollToBottom(t = !1) {
4487
+ _scrollToBottom(c = !1) {
4458
4488
  var e;
4459
4489
  console.log("Scrolling to bottom ..."), (e = this._messageList) == null || e.scrollToBottom();
4460
4490
  }
4461
4491
  };
4462
- b.styles = kt;
4492
+ u.styles = kc;
4463
4493
  v([
4464
- l({ type: Boolean, attribute: "display-license" })
4465
- ], b.prototype, "displayLicense", 2);
4494
+ r({ type: Boolean, attribute: "display-license" })
4495
+ ], u.prototype, "displayLicense", 2);
4466
4496
  v([
4467
- l({ type: String, attribute: "name" })
4468
- ], b.prototype, "name", 2);
4497
+ r({ type: String, attribute: "name" })
4498
+ ], u.prototype, "name", 2);
4469
4499
  v([
4470
- l({ type: String, attribute: "org-id" })
4471
- ], b.prototype, "orgId", 2);
4500
+ r({ type: String, attribute: "org-id" })
4501
+ ], u.prototype, "orgId", 2);
4472
4502
  v([
4473
- l({ type: String, attribute: "bot-id" })
4474
- ], b.prototype, "botId", 2);
4503
+ r({ type: String, attribute: "bot-id" })
4504
+ ], u.prototype, "botId", 2);
4475
4505
  v([
4476
- l({ type: String, attribute: "url" })
4477
- ], b.prototype, "url", 2);
4506
+ r({ type: String, attribute: "url" })
4507
+ ], u.prototype, "url", 2);
4478
4508
  v([
4479
- l({ type: String, attribute: "logo-svg" })
4480
- ], b.prototype, "logoSvg", 2);
4509
+ r({ type: String, attribute: "logo-svg" })
4510
+ ], u.prototype, "logoSvg", 2);
4481
4511
  v([
4482
- l({ type: String, attribute: "bot-icon-svg" })
4483
- ], b.prototype, "botIconSvg", 2);
4512
+ r({ type: String, attribute: "bot-icon-svg" })
4513
+ ], u.prototype, "botIconSvg", 2);
4484
4514
  v([
4485
- l({ type: String, attribute: "user-icon-svg" })
4486
- ], b.prototype, "userIconSvg", 2);
4515
+ r({ type: String, attribute: "user-icon-svg" })
4516
+ ], u.prototype, "userIconSvg", 2);
4487
4517
  v([
4488
- l({ type: String, attribute: "system-icon-svg" })
4489
- ], b.prototype, "systemIconSvg", 2);
4518
+ r({ type: String, attribute: "system-icon-svg" })
4519
+ ], u.prototype, "systemIconSvg", 2);
4490
4520
  v([
4491
- l({ type: Boolean, attribute: "stream" })
4492
- ], b.prototype, "stream", 2);
4521
+ r({ type: Boolean, attribute: "stream" })
4522
+ ], u.prototype, "stream", 2);
4493
4523
  v([
4494
- l({ type: Boolean, attribute: "custom-request" })
4495
- ], b.prototype, "customRequest", 2);
4524
+ r({ type: Boolean, attribute: "custom-request" })
4525
+ ], u.prototype, "customRequest", 2);
4496
4526
  v([
4497
- l({ type: Boolean, attribute: "enable-file-upload" })
4498
- ], b.prototype, "enableFileUpload", 2);
4527
+ r({ type: Boolean, attribute: "enable-file-upload" })
4528
+ ], u.prototype, "enableFileUpload", 2);
4499
4529
  v([
4500
- l({ type: String, attribute: "upload-file-url" })
4501
- ], b.prototype, "uploadFileUrl", 2);
4530
+ r({ type: String, attribute: "upload-file-url" })
4531
+ ], u.prototype, "uploadFileUrl", 2);
4502
4532
  v([
4503
- l({ type: Boolean, attribute: "open" })
4504
- ], b.prototype, "open", 2);
4533
+ r({ type: Boolean, attribute: "open" })
4534
+ ], u.prototype, "open", 2);
4505
4535
  v([
4506
- l({ type: Boolean })
4507
- ], b.prototype, "loading", 2);
4536
+ r({ type: Boolean })
4537
+ ], u.prototype, "loading", 2);
4508
4538
  v([
4509
- l({ type: Boolean })
4510
- ], b.prototype, "showSetting", 2);
4539
+ r({ type: Boolean })
4540
+ ], u.prototype, "showSetting", 2);
4511
4541
  v([
4512
- l({ type: Boolean })
4513
- ], b.prototype, "showAuthAlert", 2);
4542
+ r({ type: Boolean })
4543
+ ], u.prototype, "showAuthAlert", 2);
4514
4544
  v([
4515
- pe("cb-message-list")
4516
- ], b.prototype, "_messageList", 2);
4517
- b = v([
4545
+ le("cb-message-list")
4546
+ ], u.prototype, "_messageList", 2);
4547
+ u = v([
4518
4548
  k("enegelai-bot")
4519
- ], b);
4549
+ ], u);
4520
4550
  export {
4521
- b as default
4551
+ u as default
4522
4552
  };