@enegelai/bot-widget 1.14.1 → 1.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.es.js CHANGED
@@ -25,12 +25,12 @@ import { repeat as He } from "lit/directives/repeat.js";
25
25
  import { until as zt } from "lit-html/directives/until.js";
26
26
  import fi from "markdown-it";
27
27
  import bi from "markdown-it-link-attributes";
28
- import Et from "highlight.js";
28
+ import Tt from "highlight.js";
29
29
  import "@shoelace-style/shoelace/dist/components/popup/popup.js";
30
30
  import "@shoelace-style/shoelace/dist/components/rating/rating.js";
31
31
  import { createRef as hi, ref as ft } from "lit/directives/ref.js";
32
- function ka(s) {
33
- return typeof s == "function" ? s() : s;
32
+ function ka(i) {
33
+ return typeof i == "function" ? i() : i;
34
34
  }
35
35
  const St = class St extends Event {
36
36
  /**
@@ -45,7 +45,7 @@ const St = class St extends Event {
45
45
  };
46
46
  St.eventName = "lit-state-changed";
47
47
  let De = St;
48
- const ui = (s, e) => e !== s && (e === e || s === s), Gt = class Gt extends EventTarget {
48
+ const ui = (i, e) => e !== i && (e === e || i === i), Gt = class Gt extends EventTarget {
49
49
  static initPropertyMap() {
50
50
  this.propertyMap || (this.propertyMap = /* @__PURE__ */ new Map());
51
51
  }
@@ -132,7 +132,7 @@ class Ve {
132
132
  this.state.removeEventListener(De.eventName, this.callback);
133
133
  }
134
134
  }
135
- function O(s) {
135
+ function O(i) {
136
136
  return (e, t) => {
137
137
  if (Object.getOwnPropertyDescriptor(e, t))
138
138
  throw new Error("@property must be called before all state decorators");
@@ -140,34 +140,34 @@ function O(s) {
140
140
  a.initPropertyMap();
141
141
  const n = e.hasOwnProperty(t);
142
142
  return a.propertyMap.set(t, {
143
- ...s,
144
- initialValue: s?.value,
145
- resetValue: s?.value
146
- }), a.createProperty(t, s), n ? Object.getOwnPropertyDescriptor(e, t) : void 0;
143
+ ...i,
144
+ initialValue: i?.value,
145
+ resetValue: i?.value
146
+ }), a.createProperty(t, i), n ? Object.getOwnPropertyDescriptor(e, t) : void 0;
147
147
  };
148
148
  }
149
- function pi(s, e) {
150
- if (s !== null && (e === Boolean || e === Number || e === Array || e === Object))
149
+ function pi(i, e) {
150
+ if (i !== null && (e === Boolean || e === Number || e === Array || e === Object))
151
151
  try {
152
- s = JSON.parse(s);
152
+ i = JSON.parse(i);
153
153
  } catch {
154
- console.warn("cannot parse value", s);
154
+ console.warn("cannot parse value", i);
155
155
  }
156
- return s;
156
+ return i;
157
157
  }
158
158
  new URL(location.href);
159
159
  const gi = {
160
160
  prefix: "_ls"
161
161
  };
162
- function le(s) {
163
- return s = { ...gi, ...s }, (e, t) => {
162
+ function le(i) {
163
+ return i = { ...gi, ...i }, (e, t) => {
164
164
  const a = Object.getOwnPropertyDescriptor(e, t);
165
165
  if (!a)
166
166
  throw new Error("@local-storage decorator need to be called after @property");
167
- const n = `${s?.prefix || ""}_${s?.key || String(t)}`, o = e.constructor, c = o.propertyMap.get(t), p = c?.type;
167
+ const n = `${i?.prefix || ""}_${i?.key || String(t)}`, o = e.constructor, c = o.propertyMap.get(t), p = c?.type;
168
168
  if (c) {
169
169
  const w = c.initialValue;
170
- c.initialValue = () => pi(localStorage.getItem(n), p) ?? ka(w), o.propertyMap.set(t, { ...c, ...s });
170
+ c.initialValue = () => pi(localStorage.getItem(n), p) ?? ka(w), o.propertyMap.set(t, { ...c, ...i });
171
171
  }
172
172
  const v = a?.set, S = {
173
173
  ...a,
@@ -178,14 +178,14 @@ function le(s) {
178
178
  Object.defineProperty(o.prototype, t, S);
179
179
  };
180
180
  }
181
- function _a(s) {
182
- return s && s.__esModule && Object.prototype.hasOwnProperty.call(s, "default") ? s.default : s;
181
+ function _a(i) {
182
+ return i && i.__esModule && Object.prototype.hasOwnProperty.call(i, "default") ? i.default : i;
183
183
  }
184
184
  var pt = { exports: {} }, mi = pt.exports, na;
185
185
  function yi() {
186
- return na || (na = 1, function(s) {
186
+ return na || (na = 1, function(i) {
187
187
  (function(e, t) {
188
- s.exports ? s.exports = t() : e.log = t();
188
+ i.exports ? i.exports = t() : e.log = t();
189
189
  })(mi, function() {
190
190
  var e = function() {
191
191
  }, t = "undefined", a = typeof window !== t && typeof window.navigator !== t && /Trident\/|MSIE /.test(window.navigator.userAgent), n = [
@@ -320,9 +320,9 @@ function yi() {
320
320
  c.methodFactory
321
321
  )), I;
322
322
  };
323
- var E = typeof window !== t ? window.log : void 0;
323
+ var T = typeof window !== t ? window.log : void 0;
324
324
  return c.noConflict = function() {
325
- return typeof window !== t && window.log === c && (window.log = E), c;
325
+ return typeof window !== t && window.log === c && (window.log = T), c;
326
326
  }, c.getLoggers = function() {
327
327
  return o;
328
328
  }, c.default = c, c;
@@ -653,9 +653,9 @@ const Ne = /* @__PURE__ */ _a(vi), wi = Z`
653
653
  color: white;
654
654
  }
655
655
  `;
656
- var xi = Object.defineProperty, ki = Object.getOwnPropertyDescriptor, Dt = (s, e, t, a) => {
657
- for (var n = a > 1 ? void 0 : a ? ki(e, t) : e, o = s.length - 1, c; o >= 0; o--)
658
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
656
+ var xi = Object.defineProperty, ki = Object.getOwnPropertyDescriptor, Dt = (i, e, t, a) => {
657
+ for (var n = a > 1 ? void 0 : a ? ki(e, t) : e, o = i.length - 1, c; o >= 0; o--)
658
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
659
659
  return a && n && xi(e, t, n), n;
660
660
  };
661
661
  let tt = class extends At {
@@ -676,36 +676,36 @@ Dt([
676
676
  tt = Dt([
677
677
  J("cb-icon")
678
678
  ], tt);
679
- let _i = (s) => crypto.getRandomValues(new Uint8Array(s)), Ci = (s, e, t) => {
680
- let a = (2 << Math.log2(s.length - 1)) - 1, n = -~(1.6 * a * e / s.length);
679
+ let _i = (i) => crypto.getRandomValues(new Uint8Array(i)), Ci = (i, e, t) => {
680
+ let a = (2 << Math.log2(i.length - 1)) - 1, n = -~(1.6 * a * e / i.length);
681
681
  return (o = e) => {
682
682
  let c = "";
683
683
  for (; ; ) {
684
684
  let p = t(n), v = n | 0;
685
685
  for (; v--; )
686
- if (c += s[p[v] & a] || "", c.length >= o) return c;
686
+ if (c += i[p[v] & a] || "", c.length >= o) return c;
687
687
  }
688
688
  };
689
- }, Si = (s, e = 21) => Ci(s, e | 0, _i);
689
+ }, Si = (i, e = 21) => Ci(i, e | 0, _i);
690
690
  const Ai = Si("1234567890abcdefghijklmnopqrstuvwxyz", 10);
691
- function ce(s = 10) {
692
- return Ai(s);
691
+ function ce(i = 10) {
692
+ return Ai(i);
693
693
  }
694
- function Mi(s) {
694
+ function Mi(i) {
695
695
  return new Promise((e, t) => {
696
696
  try {
697
- navigator.clipboard.writeText(s).then(() => {
698
- e(s);
697
+ navigator.clipboard.writeText(i).then(() => {
698
+ e(i);
699
699
  });
700
700
  } catch (a) {
701
701
  t(a);
702
702
  }
703
703
  });
704
704
  }
705
- function Sa(s = !0) {
705
+ function Sa(i = !0) {
706
706
  return new Promise((e) => {
707
707
  const t = document.createElement("input");
708
- t.type = "file", s && (t.multiple = !0), t.style.display = "none", t.addEventListener("change", () => {
708
+ t.type = "file", i && (t.multiple = !0), t.style.display = "none", t.addEventListener("change", () => {
709
709
  const a = Array.prototype.slice.call(t.files);
710
710
  e(a);
711
711
  }), t.click();
@@ -866,7 +866,7 @@ class Ii {
866
866
  });
867
867
  }*/
868
868
  }
869
- class $i {
869
+ class Ei {
870
870
  constructor(e = {}) {
871
871
  this.name = e.name || "EventEmitter", this.events = {};
872
872
  }
@@ -995,7 +995,7 @@ const oa = [
995
995
  7040,
996
996
  7458.62,
997
997
  7902.13
998
- ], Ei = [
998
+ ], Ti = [
999
999
  "C",
1000
1000
  "C#",
1001
1001
  "D",
@@ -1009,12 +1009,12 @@ const oa = [
1009
1009
  "A#",
1010
1010
  "B"
1011
1011
  ], Pe = [], Vt = [];
1012
- for (let s = 1; s <= 8; s++)
1012
+ for (let i = 1; i <= 8; i++)
1013
1013
  for (let e = 0; e < oa.length; e++) {
1014
1014
  const t = oa[e];
1015
- Pe.push(t / Math.pow(2, 8 - s)), Vt.push(Ei[e] + s);
1015
+ Pe.push(t / Math.pow(2, 8 - i)), Vt.push(Ti[e] + i);
1016
1016
  }
1017
- const mt = [32, 2e3], ca = Pe.filter((s, e) => Pe[e] > mt[0] && Pe[e] < mt[1]), Ti = Vt.filter((s, e) => Pe[e] > mt[0] && Pe[e] < mt[1]);
1017
+ const mt = [32, 2e3], ca = Pe.filter((i, e) => Pe[e] > mt[0] && Pe[e] < mt[1]), $i = Vt.filter((i, e) => Pe[e] > mt[0] && Pe[e] < mt[1]);
1018
1018
  class st {
1019
1019
  /**
1020
1020
  * Retrieves frequency domain data from an AnalyserNode adjusted to a decibel range
@@ -1032,21 +1032,21 @@ class st {
1032
1032
  const p = t / 2, v = 1 / a.length * p;
1033
1033
  let y, S, w;
1034
1034
  if (n === "music" || n === "voice") {
1035
- const E = n === "voice" ? ca : Pe, A = Array(E.length).fill(o);
1035
+ const T = n === "voice" ? ca : Pe, A = Array(T.length).fill(o);
1036
1036
  for (let P = 0; P < a.length; P++) {
1037
1037
  const I = P * v, be = a[P];
1038
- for (let Q = E.length - 1; Q >= 0; Q--)
1039
- if (I > E[Q]) {
1038
+ for (let Q = T.length - 1; Q >= 0; Q--)
1039
+ if (I > T[Q]) {
1040
1040
  A[Q] = Math.max(A[Q], be);
1041
1041
  break;
1042
1042
  }
1043
1043
  }
1044
- y = A, S = n === "voice" ? ca : Pe, w = n === "voice" ? Ti : Vt;
1044
+ y = A, S = n === "voice" ? ca : Pe, w = n === "voice" ? $i : Vt;
1045
1045
  } else
1046
- y = Array.from(a), S = y.map((E, A) => v * A), w = S.map((E) => `${E.toFixed(2)} Hz`);
1047
- const _ = y.map((E) => Math.max(
1046
+ y = Array.from(a), S = y.map((T, A) => v * A), w = S.map((T) => `${T.toFixed(2)} Hz`);
1047
+ const _ = y.map((T) => Math.max(
1048
1048
  0,
1049
- Math.min((E - o) / (c - o), 1)
1049
+ Math.min((T - o) / (c - o), 1)
1050
1050
  ));
1051
1051
  return {
1052
1052
  values: new Float32Array(_),
@@ -1917,8 +1917,8 @@ class Hi {
1917
1917
  return this._float32ToInt16(t);
1918
1918
  const p = Math.max(1, this.hop), v = Math.max(1, Math.floor(p / this.ds)), y = o.length;
1919
1919
  let S = 0;
1920
- for (let E = 0; E < y; E++) {
1921
- const A = o[E];
1920
+ for (let T = 0; T < y; T++) {
1921
+ const A = o[T];
1922
1922
  S += A * A;
1923
1923
  }
1924
1924
  S = Math.sqrt(S) + 1e-12;
@@ -1926,10 +1926,10 @@ class Hi {
1926
1926
  const _ = this._iterDownsampleView(this.pb, this.pbWrite, this.pbFilled, this.ds), L = _.length - y;
1927
1927
  if (L <= 0)
1928
1928
  return this._float32ToInt16(t);
1929
- for (let E = 0; E <= L; E += v) {
1929
+ for (let T = 0; T <= L; T += v) {
1930
1930
  let A = 0, P = 0;
1931
1931
  for (let Q = 0; Q < y; Q++) {
1932
- const ie = o[Q], ee = _[E + Q];
1932
+ const ie = o[Q], ee = _[T + Q];
1933
1933
  A += ie * ee, P += ee * ee;
1934
1934
  }
1935
1935
  const I = S * (Math.sqrt(P) + 1e-12), be = I > 0 ? A / I : 0;
@@ -1937,8 +1937,8 @@ class Hi {
1937
1937
  }
1938
1938
  if (w >= this.threshold) {
1939
1939
  if (this.mode === "drop") return null;
1940
- const E = this.attenGain;
1941
- for (let A = 0; A < a; A++) t[A] *= E;
1940
+ const T = this.attenGain;
1941
+ for (let A = 0; A < a; A++) t[A] *= T;
1942
1942
  return this._float32ToInt16(t);
1943
1943
  }
1944
1944
  return this._float32ToInt16(t);
@@ -2080,8 +2080,8 @@ class ji {
2080
2080
  let v = -1;
2081
2081
  for (let y = 0; y <= o; y += p) {
2082
2082
  let S = 0, w = 0;
2083
- for (let E = 0; E < a; E++) {
2084
- const A = t[E], P = n[y + E];
2083
+ for (let T = 0; T < a; T++) {
2084
+ const A = t[T], P = n[y + T];
2085
2085
  S += A * P, w += P * P;
2086
2086
  }
2087
2087
  const _ = c * (Math.sqrt(w) + 1e-12), L = _ > 0 ? S / _ : 0;
@@ -2130,7 +2130,7 @@ class ji {
2130
2130
  }
2131
2131
  const Ia = Ne.noConflict();
2132
2132
  Ia.setLevel("info");
2133
- class yt extends $i {
2133
+ class yt extends Ei {
2134
2134
  constructor(e = {}) {
2135
2135
  super({ name: "WebAudioProcessor" }), this.options = e, this.audioRecorder = new Ma({ sampleRate: 24e3 }), this.audioPlayer = new Aa({ sampleRate: 24e3, onPlaybackEnded: this.handleOnPlaybackEnded.bind(this) }), this.audioRecorderAnalyzer = null, this.audioPlayerAnalyzer = null, this.mixMinus = new Hi({
2136
2136
  sampleRate: 24e3,
@@ -2261,96 +2261,96 @@ class yt extends $i {
2261
2261
  return a;
2262
2262
  }
2263
2263
  }
2264
- function X(s) {
2265
- return s != null && typeof s == "object" && s["@@functional/placeholder"] === !0;
2264
+ function X(i) {
2265
+ return i != null && typeof i == "object" && i["@@functional/placeholder"] === !0;
2266
2266
  }
2267
- function je(s) {
2267
+ function je(i) {
2268
2268
  return function e(t) {
2269
- return arguments.length === 0 || X(t) ? e : s.apply(this, arguments);
2269
+ return arguments.length === 0 || X(t) ? e : i.apply(this, arguments);
2270
2270
  };
2271
2271
  }
2272
- function Fe(s) {
2272
+ function Fe(i) {
2273
2273
  return function e(t, a) {
2274
2274
  switch (arguments.length) {
2275
2275
  case 0:
2276
2276
  return e;
2277
2277
  case 1:
2278
2278
  return X(t) ? e : je(function(n) {
2279
- return s(t, n);
2279
+ return i(t, n);
2280
2280
  });
2281
2281
  default:
2282
2282
  return X(t) && X(a) ? e : X(t) ? je(function(n) {
2283
- return s(n, a);
2283
+ return i(n, a);
2284
2284
  }) : X(a) ? je(function(n) {
2285
- return s(t, n);
2286
- }) : s(t, a);
2285
+ return i(t, n);
2286
+ }) : i(t, a);
2287
2287
  }
2288
2288
  };
2289
2289
  }
2290
- function Di(s) {
2290
+ function Di(i) {
2291
2291
  return function e(t, a, n) {
2292
2292
  switch (arguments.length) {
2293
2293
  case 0:
2294
2294
  return e;
2295
2295
  case 1:
2296
2296
  return X(t) ? e : Fe(function(o, c) {
2297
- return s(t, o, c);
2297
+ return i(t, o, c);
2298
2298
  });
2299
2299
  case 2:
2300
2300
  return X(t) && X(a) ? e : X(t) ? Fe(function(o, c) {
2301
- return s(o, a, c);
2301
+ return i(o, a, c);
2302
2302
  }) : X(a) ? Fe(function(o, c) {
2303
- return s(t, o, c);
2303
+ return i(t, o, c);
2304
2304
  }) : je(function(o) {
2305
- return s(t, a, o);
2305
+ return i(t, a, o);
2306
2306
  });
2307
2307
  default:
2308
2308
  return X(t) && X(a) && X(n) ? e : X(t) && X(a) ? Fe(function(o, c) {
2309
- return s(o, c, n);
2309
+ return i(o, c, n);
2310
2310
  }) : X(t) && X(n) ? Fe(function(o, c) {
2311
- return s(o, a, c);
2311
+ return i(o, a, c);
2312
2312
  }) : X(a) && X(n) ? Fe(function(o, c) {
2313
- return s(t, o, c);
2313
+ return i(t, o, c);
2314
2314
  }) : X(t) ? je(function(o) {
2315
- return s(o, a, n);
2315
+ return i(o, a, n);
2316
2316
  }) : X(a) ? je(function(o) {
2317
- return s(t, o, n);
2317
+ return i(t, o, n);
2318
2318
  }) : X(n) ? je(function(o) {
2319
- return s(t, a, o);
2320
- }) : s(t, a, n);
2319
+ return i(t, a, o);
2320
+ }) : i(t, a, n);
2321
2321
  }
2322
2322
  };
2323
2323
  }
2324
2324
  const Vi = Number.isInteger || function(e) {
2325
2325
  return e << 0 === e;
2326
2326
  };
2327
- function Ni(s, e) {
2328
- var t = s < 0 ? e.length + s : s;
2327
+ function Ni(i, e) {
2328
+ var t = i < 0 ? e.length + i : i;
2329
2329
  return e[t];
2330
2330
  }
2331
2331
  var Ui = /* @__PURE__ */ Fe(function(e, t) {
2332
2332
  return t == null || t !== t ? e : t;
2333
2333
  });
2334
- function Wi(s, e) {
2335
- for (var t = e, a = 0; a < s.length; a += 1) {
2334
+ function Wi(i, e) {
2335
+ for (var t = e, a = 0; a < i.length; a += 1) {
2336
2336
  if (t == null)
2337
2337
  return;
2338
- var n = s[a];
2338
+ var n = i[a];
2339
2339
  Vi(n) ? t = Ni(n, t) : t = t[n];
2340
2340
  }
2341
2341
  return t;
2342
2342
  }
2343
- var Tt = /* @__PURE__ */ Di(function(e, t, a) {
2343
+ var $t = /* @__PURE__ */ Di(function(e, t, a) {
2344
2344
  return Ui(e, Wi(t, a));
2345
2345
  });
2346
2346
  const Yi = "fffbd0c40003a861a6f64deb05ce8fbd1dc1ee6979000bf3230f3195138b950cbe3649439256307747d31c26065d09cfae70d799f0a043c6a90008c0101188082314680d008619c9079b61dc806a921a220095277a60d4131e44143d53814e10f4d06ba6491eb478900a8d59016632a23e0fa358875c770146cc650c1c499dcb9b0965d7500106c321427219428febbdafb2b5d76979a75ae40018d025f96f71bad4b0257666051808e5b74c34bf2db9660bb0e24b2a35886616f617013a24104242304600910b1130dc7b4e81750bb1216e880432ac0d75b0a2a1834f45e8e9a279a9c6c22cc9a7e3ac01cc5335e8c0d97180c960bad7998ce9ac025a2f1a0c888e02c46508045a96a20a60c91980100828a917425f96ddc64bc2ea19146c50b00bde68319005d85d10e462314ae197f0b48c74bfe986ced9dac3a9bbfad7e8f7ac2a525253c6e36cad4dd7c20e2ec4842dba61cbf30f0f7d628635005a66e63ec63560f22a48c694034a695617e603c12c05077310c0923018053379a48d1e921e409b28546c46619d8fa6c9b019ea20762d318e34c6291699d98662a61861204fda2a7933d57c1d023391f8605262a1598449c1ca332e084cb25a3198ac94666361b99f05c67c1aba0151b18d456ec8e0b4c667924153ba632409114cc587c7867ca8c047dcd7a834bc8d2a033a141df48ab82a803bd1a8651a215e356c6161b062114cb841dd89589b05f0d10ad255c4d70d8ad245e4abcd6b33fca8d6af5cc3db8d9244511ab2206a56c885690ad12cc1ba16308528d539daa40b22baf35eb61a7044a988132e926b754d82ea8ca85199ad5c42c0d62d35eb8d7301d56ef5b26c451748198c2a22c319b24ab67a246b186c8af0d54354c0957c342d9a2a4d7b3245e585c4d7254e107501450bb46abbfa38b2331996d9bae08953352c48af43d5c7b08b6572a44e0b11775fd8cbb2b0b0343230c6c5add2ca5ac8d549765977ff78e59659ca49adde749c6789409753bcff43d1a8d46a532da5a5a5a5a5a5a5a6a6a6a6a6a6a6a6a6ab671c71c71c6ae4141414140a0a0a0a0c2b06e0b039c1829859998b165991a5d2aa598e0a714183727471921e5721a1037a9c2fb7a1b9c0dc99c6ab19b821219de39219b82a521908908987d2ab1aab194159219cb31211fffbd2c42383f4bda0d20ffba7c624b3dd01eee938b82f149f14b82951c14d290908c90d294c90a598b0948572ce584a434a54a52b4a42c3829592199219219a52921160908d295294b1c79b70dc9b72dc9b70dc15b71e6dc37058e3cdb8e34db9e3cadb82c37056dc95f1e7c6f1e58e3cadb8f2c4845721f96242f2c485e7214865721f962422c484721c845890cb121f9c872116242f2b908e4390bfcae432b908ae43f390e432c486721c85e5890cae432b90ce42908b121f9c8721962432c484721c865890ce4290bcae432b90bcae43390a432c485e58908e4290bcb121f95c86721c865890cae432b90cae42ff390e422b90cae422b90fcb121795c865721795c86721487e721c87e58908ae422b90bcb12195c845721796242f2c48658908ae43ff390e43fff390e422c4865890cb121ff9c872196243f2b90bcae42fff2c48458908b12116243f2b90ffcae43fff2c485e5890bfffcae422c485fe5721796243f2b90bfcae42ffff2b90ffcae432c48460a40a6618626a61ce3d466883d6645657458106350e2d6321a39532150c231a421532413d3399952b690e8430cc534d4ad0638ad993418742c24072f7385897cae5e348120397e5e348521397e5e2b734cd8364b06c160d93364d82c0ea6838ea63a0e863a8e9e581d4ca0283cd5d284b050795942650143e6e1c1b87058706e5c95b9370e4dcb92c382b706e1c15d22c522ba7e574cae9f9d2a458a474a995d32c52ff2ba4574cb148b14bfcb14cb148ae99629795d22c532c533a74cae995d2f3a74ce9533a74cb148e9d2f3a74ce9d22ba474e99d2a458a674a99d3a65748ae9f9d2a474a91629962995d23a748e9522c53f3a74bce9d3f2ba65748afa9f5ea57d4b1d3cafa963a163a7963a163a1f5ebfe57d3fcfa742bea7d7a15f42bea7d7a1f5e9e7d3af963a9f4ea57d4fa752c74f2c75f2c743ebd3fcafaf963a7ff963a79f4e9fe57d7ce9d22c532ba474a91d3a674a97962996297f9d2a658a458a658a458a4574cae916299d2a474a995d22c522c533a54bcae915d32c522c52f3a548ae99629795d3f30c6831b320f483c329501f8331a98f233a001f9342646273295483d326307f03331098c307e52ae3189883d3186475630e704da30e744db320f0627329501f831040411307e4fffbd2c42383f3fdacd40ff6b68668b3dc81eeed7841031044a54318984112a8c4e641e83f26208082260fc0822560fc183f041e183f00fc183f20fc983f20fc983f20fc95896e60bf863460bf86365805f8c17e0c68ac31b2b5f8f1bc68d7fc68d7f5fcaf1b35f97e35f97e2c2fc585fcb0bf9e36bf9617e2b5f8d7f5f8ad7f2c2fc6bfafe56bf9e34bf79617f3c6f1bf2b5fcb0bf9afcbf95afc585f8d7e5fcb0bf611fc419f8f08fe7833f1e0cfcf847f308fe7833f1f067e3c19f9067e308fe7c23f8c23f9067e40ff3f8067e20cfc047f00cfc611fc81fe3f207f9fc033f211fcc0ff1f903fc7e423f803fcfe423f903fcfe00ff3f8833f011fc847f211fc047f303fc7e211fc01fe3f211fc033f011fc7067e40ff3f908fe023f808fe00ff1f903fcfe019f803fc7e419f808fe019f9067e40ff1f9067e211fc01fe3f3c19f8e0cfcc23f9067e40ff3f8067e023f808fe60cfcc19f8c19f9847f211fc047f011fc033f1067e60cfcf833f25808830881d435e33e33263062346d46d31d427b31d41d4346d3c633201d5308827a308846d351212e32267a39ea7a34b92f3221d537552f32252e2b4b8dd5c80c88c84e7a4bcb0ea9ba9e315a5e697baa644cf473da5e58220c894bcb0449a5e449612ff2c110584bcb0447991044191244160892b4bfcc88224ac882b2a4d0a114ca8114c44114ac442c089e562279588856c458633e362f3e362362623e3e3f2be23e3e32b633e263f2b88fffff2c44f95c47f96227ce2224e2620b11071310713105889389882c44f95c41c44496220ae23cae20e2627cb1127111257105889f2c449c4c416220ae24e2224e2620ae24b1105713e588838988389892c44f9c44416224e2220ae20e2223cae27cae23ce2220e2620b1105711e5712571271111e57127131257127111271313fe713125712588938988388892c4479c4c41c44416224ae24e2220ae20e2620b11058882c44ffff95c4795c4ff95c415c416220ae20ae20b11271310571271313e58882c44f95c49c4c4ff95c416224e2627fce2224e2220e2220ae20b111e57107111071111fe5888ff389882c03a18838cc99ca16b996b8501ad09db99db86c161e34cb0c730c6641d4c664f7cc570e54c570570cb08734d2b4b08ac360cb5c284c86c574c57428fffbd2c41e03f239a2e40f7370c65fb39cc1eeed980c364364c360730c364edcc360364db2d936c734f9bcd3e6b60db0d82c734db3cd36cb60adb27068399d732588319d20e7068399d20de5850f9d75405850796140575c3535335252353c32c611e1291a9e11614cd4d4cf0d4cf0948e8684e8684b14074140574058a12c509d0d09d0d09d0509d0501d050796363fcaf64af67ffcb1b257b1fe58d8f2b74375742b742c3a9baba15ba161d0dd1d4add0b0e9e6eaea56ea56ea5874374752c5096280e8680b14057405743e57407414058a12ba12ba02c50f96280b141e58a12ba12c5096280add0dd1d0dd1d0dd5d3cb0ea6eaea6e8ea58752b7537574374742b74374752b752c3a95ba15ba9baba1ba3a161d0dd1d4b0ea58742c3a7ffff96367ffffffffffffffffffffffcb0e856ebe5874f2c3a961d4dd1d7fcadd4b0e9e6e8ea58752b752c3af961d4add3cb0e86e8ebfe6e8ea587537474f2c3a161d7cdd5d4dd1d0dd5d4add3cc388588c9e8220c4b91b4c989388c58898cc5b4740c2a48c8c58c38ccb8898cc9ec220cc84c80c4b84bcc224754d4491b4c62988c63588ce2b88d2e224d2e224b0449f8f3d1a5c9719104499124415a5e6971106973aa58750d2e220d2e220d898cf8d8cd8d8cd898cd8d88ad8cd898cd8988b1c7e586336363f2c711b1311b1319618cd8d8cb0c6586236262363632c319618ccb8b8cbcbcb05c565c582e32e2e32f2f32f2e32f2f32f2f32f2f2c1796220ae24ae20b113e71313fe71111e5888388892b882c449b1b115b11b1311b13116188d898fcb0c66c6c45862363632b632b63ff2c319b1b1796224ae24b111e711125711e5713e5713e58882b882c441c4c4f9c4c4ff9c4c4f9c44495c49c4c416224ae24e2224e2627fcae20b1105711e5711fe7111071111fe57125713e57106c6c46c6c45863f2c3195b115b19b131796188ad8bcd8988b0c45862363632c319b1b19b131f9618bcad8fcd898cad8bcb112571257125888f2c44ff95c495c4ff95c47f96220e2624b11258882c441c444ffff96224b112571257105711e588838989f2c44d3045045310b0a932632e232630623562062316226236620e32c1b198850229885919194a88598220e81fc431160623589e23588622b18cde2988de3788c63588fefffbd2c42083f3559ee80f774bc682b4dcc1eee9782388c6278cb0b1161623388e32b588ac62398d633188632c0c46318c66319c46710c66310c66b1ac66318c46310c46310c46710c6563118c431f98c63199c63118c631960e3f318862f2c0c7e6310c45818cb031960622bc678f1163196319e3c658c478b1163179e2c658c65788f1623c58cb188f1622bc678b115e33c788f1623c58caf195e32bc5e71221c5885710e24438914ae29c58a71621c48a588a5714b110e2c438910e245f38b13ce2442b8a71621c58a5889e5714ae295c42c442b8a5713cae29c48858885714b110e24538910af115e22bc658c478b17f95e33c588af1ff9e2c678b19e2c678f1163179e2c478b1ff95e3f2c62f3c78fcb18bcaf196317f95e22bc7e5788f163f2c632bc5fe58c678f195e22c62f3c78bfcaf1163196317f95e32c622c633c58caf11e3c4578caf1f95e32c633c78bfcf1622c632c633c588b188af19e3c5e58c658c678f11e3c678f17ff96319829829986109a99a6b1319ef03a19ef0cc99150cc195d8cc99a683a18730f598ca89e99a615d995d2819fbecc9d755d95c54698a626980d26559dc71520c68357471520c6cc33075d8ea63a0ea68345468320e63a0e875d20c683a0c63aa0fe5841cd98664b0831a0e8318ea3a95a0e563a160752c20e63a8e86838e858418b03a160753148523309353148c22b14cb02918a42918a629160522b14cc5314cfaf52bea7d7a163a963a1f4ebe7d7a95f53ebd4faf43ebd0afa795f53ebd4afa963a1f5e87d3a963a15f43e9d0afa79f4e858e858e858ea57d0afa963a9f4ea7d7a9f4ea7d3a9f4e857d0afaff9f4e9fe7d3af95f52be858e857d4faf53ebd0faf53ebd4afa1f5e857d4b1d0afa9f5ea7d3a7963a15f43e9d0faf52be87d3a163a163af95f52be858ea57d4faf5f2bea58ebe58e87d7a15f42c742bea58ebe57d7ffcfaf52be9e7d7af95f5ffff2c75ff2be857d7ffcb1d0faf52c742c742c753e9d4afa95f52bea57d3cb1d4afa95f52c742bea57d0afaff963a95f43e9d0afa7f95f53ebd7fcfa753ebd3cafa15f42c743ebd4afaf95f5f2c752be857d7fcb1d5508000160382b0e0d954f0d94654deb7acc397acce7d10dea4f0d4b2c4cb02c4d311a0ad3134c0aa34c4ef33b8ab3059193460b03fffbd2c41a01f0c5a2f0aeeb34c619359dc1dde6682c04b32403834f43832403932443930e03932403932413c3240392c070648072561c9870489a7a48161c1b972587258726e5c9b87265e51ca2c65cb9cb2e65fe1cb94565ce59634a94ad21a44a584869529a4485694ad216129a54865cb1972e72e51962c65cb1972c565cb05ccbcb32e5ccb162b2c56b79acb1acb1aeb9acb1aeb9acb1aeb15ac6bae56b15ac56b15ca72485894e590e490b1295ca5894ae52b90ae539252c49e724a5897ce494b121cb2f9cb21cb29cb21c9215ca5890e497ce597cae42c4a57215c85894ae42b97cf9e4f9e3cb1c15f1e57c796393e38ff2be0f9e7caf92be0f8e4af92be0b1cff96392be0f9e0b1c15f058e0b1c796382c71e7cf3e7c7257c95f258e4b1c95f1e58e0af92be4b1c1639f2be7ce493cb127f9c9215c9e5721c9215cbfe72ca5893fcb1279c921cb29cb2f9cb29cb21cb29cb295c85890ae42b90ae42b93cb12795c857298701c1609034f2413901eb3094683091733344d033e0d132acaa34c4ee30957434c1313244382b398d3c4f0ace730e13d34f53d37ac3937ac3830e4382c07261c870648a786ca27a580e4ce244e44e4ace4ce0e4ce240ce240b072723226727058382b90339392b382b382c1c99c1c9c89c960e0ce4e0ce4e0b07067273e6727258392b38ff2c1c19c1c960e4b070670705838f2c1c19c1c99c9c19c1c159c159c960e4ace3ce44e0ce4e3fcce0e0b07058382b38339382b3933839396439252c4872ca72ca72ca57295c872485890ae53964f3965f39242c4be58e4af92be0b1cf96383e783e383e382c727c707cf07c727c73e58e0b1cf9f1c15f058e4f9e0b1c16382c727c7257c95f07cf27c707c727cf257c9f3c95f258e3caf83e792c73e58e0b1cf96392be0af92c7057c9f1cff95f058e0b1c16382be4f8e3ffcaf82be4b1c795f057c16383e392be0af82be4af82c71e57c796393e392be4f9e7fcaf9f2be4b1c795f3fe7c7258e7caf93e392be0b1c79f3cf95f257cf95f1fe57c79639ffff2c70a0800079603ecd71612cb09de71381f66aac420687e4226650cdc6176680617668061769dc58268332932930fb211343e211355621032115563328328343f0fa30fb0fb33280fb321021032112102b43e32112112b329fffbd2c42b01f3f1acdeaf777286a1355cc1eeecf82c1f467d1f5e7084207081f456c895977e65db2265d32265db207081f4583e8cfb3efccfa3e8b07d960fa33ecfb3fbfa2bfb2bfa3fbfa3fafa3fafb3fafb3fafb2bfa3fbfb3fafb3fafa2c7d963efcafe8fefe8b1f5e58fb3fafbf2c5d1dddd9dd5d1dddd162ecaeecb1747777477574577458ba3bbbb3bbbb2c5dff963ebfcb1f657f5e57f457f5e57f5e58fbfff3fafbf2bfa2bfa3fafaf3fafbff2bfbffff2c7d963ecfefe8fefeffffcb177e577658bb2c5d7962e8eeeebfcb17458bb2c5d1dd5d962ecaeecaeecb176577458ba2bbb2c5dff95dd15dd95dd1dddd7f95dd162e8aee8b17658ba3babb3baba3babb3baba3baba2bbb2bba2bba2c5d9dd5d15dd1dddd162e8eeee8b177e7f5f7fe58fa2bfa2bfbff3fafaf2bfbfff2bfa2c7d9fd7d7963ecb1f47f5f658fb2c7d163ecafebfcfefe8afebfffcfefecb1f5e57f457f7e58faff3fbfaf30e326333624e333632e231d546d312e1d530a8233323210b36ac7a31ec7a2c4f46eaba86318c46f18c67719c47315c6631ac46f19c658754c89224dd4c84f204bcc894bcd2f4bcd2f224e7a4b8ad2f34b8893220882c11056441a5e44191297160882c112644113e711125712588938989389893898838889f38889f388882b8838989f2b882c447f9618cb0c46c4c658633626336262363622b632b633636236263362622c319b1b19b1b19b1b195b179b131f9b1311b1311b17196188ad8cd8f88b1c656c65862363622c3195b115b196188d8d88ad8fcd898cad8cb0c45862363622c3195c415c495c416227ffcb11258892b8838989389892c441c4c416224ae20ae23ffce2620d8d8cad88b0c656c456c658632c31f95b19618cad88b0c5e6c4c66c4c7e5863362632c319b1b1f95b11b1319618cd8d88b11058882b892c4416224e2220b113e5889ffff2c4479c44415c415c4ff96224e2620b11257125710713125712571057105713e58892b88f38988388892c441c4c4796224b111e58882b882c44f95c416227ce2624b1105711fe58882b882c44795c4ff96223cae20ae23ffcae26f331e433b76dc30b95e3a3df73449133dd72835791335782f30bd1236a87a37d8c730b8c630bc7a331c2e357df730b82f31ec7a30bc2f30b87b344daa3fffbd2c41e83f005a0ee0eeb3706ce341c42bdd0003187a31e8c730b82e2b44ccc60b8cc61e8c7a31cdaa1e8b03d960c731ecc731ec7a30bc2f2b1e8c2e1e8b03d1ae5c6bbd16171ae5e6bbd15ae35cb8d72e2b5e7e97161795ae35ebcd7af2b5c6b979af5c6b97161795ae2c2f35cbffcd7ae2b5c56b8b0bcad715af2c2f35eb8d7af35ebcd72f35cbcd7ae35ebcb0b8b0bcb0b8ad79ae5e585e56bcb0b8ad79ae5e56bfcad796179ae5c585e6bbdff9af5c6b971af5c6bd7962e2bb8eebceeb8aeff2bbcaef2bbcb1795de58b8eebceeb8efbcaeffff2bbceeb8efbcaeef2bbbcaee3bef3beeffff2bb8b171df7962f2c5c58bfcaeff3bee3baeff3baf2bbceebcb171df795dc775c58bbcb17962ef2c5c77de58b8aef3bae3bae2bbcaee3bae3baf3baf3baf3bee2c5e77dde58bcaefffff2bbffcaef2bbfcaeef2c5e577ff9df7962f2bbfcaeef2c5de577162ef2bbcb17fff95de577960360c731e34da20e50cb58e4cd688b08d2b0734e5d9e30c730360b03306576576658639a61ae76c639a76c6b40958561b2695a76c561b0639a5847db58458360adcd2c58666c9b07615846e6d8658364dcc730dcc730cd8730acd83364d8f3361cc2c1b256e6959b258360acd92c1b1fe66c9b06e69b066c1b258364c741d4c751d0ad0631d47431d074f2c0ea63a8ea63a8e8563a160d83360d92b360acd82c1b2566cf99b06c99b26cf99b06c99b06c98e83a1607431d10631d4742b1d7cc751d0c751d0c741d3cac752b1d0ac752b1d0ac752c20e63a0ebe63a0e8563a18ea3a98e83a158e8563a958e863a8ea581d4b03a958e863a8ea63a8ea65094058284aca0f2b284ca1287fcca1287caca1ff3280a13284a1f2b280ca0280ca0280b0501594058280aca02c1405650960a02b284ca0280ca0280b050160a1f3280a03280a03280a1ff3284a1f2c14265014258284aca1ff3284a1fffff2c1b3e58363fffffffffffffffcacd8ff2c1425650194050799425095942565079940509594258284aca12b283caca13284a0ff2b284b050160a1f2c1405650194250960a0f2b284aca12b283cca1287fcaca12b284b050da03028040204010140a02010080300640ae302500803053c24f30d7c2a930ca42cf31c4921a300f0001300c4005305cc04f303cc03e34620fffbd2c41c003485d91db9ff00062e346243bfd000a9035bccab50300ac600d80006071010c603180c6611a82666027812018002a546032072608a05e690660a6330a28160074dc46f0c033306302b302a06234f02603428582329635f2eb1698880854e0c110038c168038c094064c008008d454d7cc660a5cca5c1d4c4f03899c459a1b8ef3180e80e98018048b009ba542604818c60701ba620e09e60de09e0d024120006cca729e4ca5b2baf182ea7acba030220082203b14028160104972b0109332164c5a76aafeb228dc6dd359e5dba0a2ff2c00c182d01c182d03d180c00c980c801c4eebff1779ae3fb76efa7ba8ca8927c39707a7a27c79803803958039803803980380398030031583a983a04c1583a45e2f14a771593bcf4b7e24f32e789492ebff72f45ee5ebc61540c4603207e180afe17007f53b0c00e4c44c60c00c8c50fd0fffd050d050d1c65d6a2ffffa251aa27c567d0fffffa219580133ba3f75e3292edc1863a4ea46dd474fffffffffffffffffffffffffffffffd4f980d0090981280b6984e00481848a1621869a25d18f32518198f263d19bd283d1a7d2d1b1b0fcf639bcf8c85987b8ff61db16c151d0749fb9cd72df399c764769881e1d19834809d9862389858ce9c5ca99b38cc9a0c149986cd1bcf161d83ce1ea3a91bc8f1997c611a16ce1bcaf21c32d31ade9b19160f191c9a9a68b599fa7d1986450b14e60e03a6271126471166450aa62a03a60e03a60e8a464698867d9f867f99062a83660d0403a0e98300e98a029983e0d2439810069810029810069818068602a8ab8ab3a01500a912a95c5987095b948b016d5fdb3ff4b0ee54255006ed19788c17050c2d0b8c49128c320c41c18a6f1728b945ca4e29eeef1fe56c8a800980801980402d79dc7a4a01980002980804980c03980c02df30180530902530880542c301402309446311448311c4830982528014c03000c23098c05008c05022b592500e2b477b0ffcea5d66d967ffffffff94b20c5dcb0cc4989356a6d779ddeb2ad6b755f57765b2996dda596d3bf38d6869da96d9d53434ef4ba1a7fa3384aa5d6bf2ab19a6ea300c013730b805f33126021130cb4230301a424a304f4122302905f9309b01e5308bc0253115c16431c9c4aa319809b1348b010e360fddfffbd2c41b83e62974fe0ff1f1056daadc81ff69e01033cce9a13e9998033720c8e03095404e3043c257309e00bd30074315306a01b93964c434b07666b9b5a486915398b4c4670561abd5a6ab341a9c58670859b40ea6965b8aa08c26b43291e438b21c5630e828906a18255402a4302824c4020012f82a2415279830b466f22268084188a8850f8238c0276895daa096a1e4406a530a427eb58491f081545ea7a311caba0d9712c06c2245b452039921093ca2624399cb1b2c29eb96a1f6c6b339233293c2e2af1b85c542519395617227c748270778c241b5976196923c2e27c2ba5fc4c49b6b75f582ca7ea3735ffffe0ab665746b4266378e2dfd7fffffffffce36c31231de4bfd191ff117fb8c19504f0c09013dcc8583304ca622984cb0e2c3cd17e039c8a86738190f763626173e280ca4e36eeb34d7401280e67a692ccc6a3708d58face8f60fa0b0e9df6268c2ee3714d7e9284d281eb4c64d280d7ecbbcac398c654a60c39c654c650e70d285280c650650cbbc650b032a63283286532530632a1ce61cc32a561cc61ce32863281ce612012061221206072070607207058038f2b03930390903d094d26834fa4ad216349a44a7a741e9d06952f95a42b485694b090ad2ff9a548695214492c25f34893cd3a62aa434a93cad29a548584869529e8485694d2a434890d22534a94b090b094d2242c2534a90d3252b4a5690b090d2a52b4a691215a534890d224f372e7fcb0e0b0e7ffcadc161c7fff95b92b73fffe56e3cadc7e5dffff372e3ffcb0e7cb0e3ffcb0e7fffcadc161cf95b82c382c382b70587058726e5c95b9ff370e3cdcb8f2b7058725873dff2c38ef9b871fd3a21dfffff65f302a03bf3183c6d2327a41d139209453312084833623919f370206d535458e2633ec4e26388c9fe23a48b6a13da898f333712b75337150153ed089223371145331208dc430be454831cd84203042842030be442035b23231156d2c15065408a685216685088685216568515a14685a1665408856541888549950229a1622959715bd15bd95bd9973d961eccbcb8cbcbcea510b08858452ba8345453444434444345a9345452c2296114d1114ad14d1110d1514d1110ad10d1514b08a575258442c549a2541a2221a2a29a22296110d1114b08868888584434fffbd2c46c83f3bd56de0ff77085de2a1ac1fe6e4054534445344452c2215a21a22215a29a22279a2221a2229d4a296110ad10b08a68a8a5844f345442ba82c2296113cd1110b08a568a68a8be58442b45f345452c22f9a2229a2a2f9a2a296110d1114d1514d1514b0886888a58442b44f345442b442c229a2a296117fcb089e68a8a5844f2b442b453454434545345443a844345453454434444344a834445345452b443a94534444344452c221a2221a25416114d1510ad10d1514b08868889fe568be68888568868b5256886888a568a68889fbf9dbbf45c58018cc0620d8cc4e31388c3620d88c5630d8ccde23388e1e2878ce6e33d88d1e32788d3e24f88c660a18cdae32788c9e2358cd7625d8ce1e2358cef62e58cd0e2438cc6e2358cd762438cc6e33588c9e31b8cc3620d8cc162178cb00b1182c60b1182c40b11f8dc456e33f1388b1e3371b88ad8cf8b88f8f8caf88d8f88f8d88b0c65862363e32c719b13195f196388f8d8fcf8988b1c65863363632c3195f115b196188ad88d898bcd8d88d898cb0c458e32be32c3195f19b1b19b1b19618cd898cb0c47c4c456c66c6c65862f36362363632c3115b115b115f11b1b19b1b115b11b1319618cd8d8cd8d88ad8cd898cad8cd8d88d8d88a310b0c46c7c66c4c456c66c6c47c6c66c6c7e6c6c458632b63362622b633636336363363e2f363623626336363ffd15b1f9558cb0c47c4c66c6c458632c31ff9b1b17f95b11b1b17f9618fcb0c458622b632c319b131f9b1b115b115b17ffff9b13196188d8988d8d88ad8ffcad8bffcb0c7fffa363622b622b62fecf95ff2aaf2c084258217cce061080c9c9655cd3ae3270dd952720e33eed24e068381cc4203dc0d957381cce0781a4e33eb494f70aed24cf704eb8cf701080cf702cc8c6f45a0cc2b7217cc9c81bd0c58b0ad8c58a0adcb02109829a2101829815b188400a61d6ca69a9b5b9554c35314c35314d2b3eccfa3e8cfa840e103ecb07d99f47d19f67d962102b3eccfa3e8cfb3ecacfa33e8fa2c1f6582efccba2e8b05d960ba32e8ba2b2e8acba32ecbb2b2ecb05d9597665d17665d177e582ecb05d19745d15974582e8cbb2e8acbbf32208832252f32208932252f32208932248834b88832252e2c11064411064491264425e64411206bfffbd2c47903eab9a2d20ff6b3471eaa5801ff5a38ac804576115d84577062ee0c5d81ae97606ba5d8457581ae976115d01ae9740c5d40df4fb037d3ec22fa063ef08bec22fb063e818fb063e818fae06fb7d01bedf606fa7d845f406fb7df06533c194cfae11a6ffffc234d81d369947ffffffffffff06110c1f907e0c1f81044d4c44abce14c8534d8f25314c1f820f0f62f7cd8ce8395f0d2af6c24df37e970f2038d90c413a6a0e14fc808e9a763d4f204c80ce3642950ce821038ce801044c4114abcc40e1898c4101040c1f91040d89f1acf1a9898c7e5898d89c7e4ae0f0f1aa0f0e0f5044ae0f0e0f5044d0420f0c7e5040c7e07e4b0823e63f282056c4e5541134101f834111f831f91f82b1f934114102b1f834114112aa08941f898fc2089607e4ac7e0d0407e7cc7e1044b03f05682056823e68203f0581f831f81f92c20818fc8fc98fc208f98fc0fc1a080fc98fc8fc95a0879607e4d0407e4c7e1040c7e47e4b03f263f03f0563f263f23f0563f0563f063f082063f03f063f03f063f23f263f23f0581f831f81f92c0fc1607e4b03f068223f263f23f268203f3e63f03f0584102c20898fc0fc019f93f00c3f2e113f2113f3033f27e0227e4187e4227e4227e4187e00e089f908c11061f9061f806410033f27e2067e0fc819f83f1819f93f0067e4fc830fc830fc419040187e3033f27e40cfc1f8061f9c227e00cfc9f9061f8061f8091f9033f27e4187e40cfc1f9033f27e2113f0067e2084187e2113f2113f00c823830fc830fc7f7061f8844fcaffffdc9d9fffffd75f317f31b37f117f34b7b29398c65434b665534da7572c30c9a6dbab1a6d12f1b2acc61b2ad949bf832a198d32a1b2a6629d947fe9b2a0bf98bf25b192f30c99ce12f989092f192f12f1612d8cc68c6cacc68cc6c5fccc685f8b06366636634663496e66362fc6bf2fc6bfe346bfafc6bf2fc6bf2fc585f8d20978ae5f3485202c4be690a406904bc5690f961213979212c24272f240690242569096121348521348521397d203481203485202c24258480ad203485212b484ad203485202c4bc56909a429095cbe5897cd21480d21484d21487cd20978e5f484d21480d20484ad203485202b480ad212c242569015a40690a40690a42690a4058484ad20ff348520348fffbd2c48183f27178ce0f76b545f6b61a01ee57205212c24258480ad213485212b480237e065f8237f81dfafc077fbf4237ec197e832fc0cbf832fc11bf611bf032fc11bf832fe0cbf832fc077fbfc237e065fc237fc197e03bfdf8237e832fe11bf01dfeff065f8237f832fd03bfdf8237e846fe11bf832fe11bf846ff065fa077ebf81dfefe0cbf832fdc0eff7f065f8197fc197f065fc237e08dfe0cbf60cbffffc197e2c0bf18bf0bf9bf859418bfa5b9d9418d15d941a6da6d9a6d44a18bf8bf1598d1961ad0986cad01890a6d9b0c9ce992f3ab9596198e69619a5606c18bf18d961954cc6d2dcb096c62fe2fc696c63462fe2fe62fe96e62fc96e696c2fc66342fe5663466342fe61b039865861b0561b261b239a63981b2581cc31201202b1202b1202c09018908909589015890992f0901f35b0586c1b65b26d86c9b61b06d86c95b63cadb26d96c1d72ba6a1ae95a87cd40a13aea80eb8a12b501a854275d5095a84d42a12b6c9b61b056d82b6c161b06d96c15f33cdb2d836c364db0d92b6c9b65b056d8390484e4120390c80ae427209095c83fcb120390c80b120390484e4121f2b901c86425890162405721390480e41202b90f95c80ae407209015c80ae405890f962425720390484ae40720901c86405720390c860cbf846ff846fe11bf846ff832fc11bfc237fc197e846ff81dfefe11bf832ff832fdc237e03bfdfbc197ef846fe11bf832fffc237fff832ff81dfefdfffff065fff08dfa0cbf2af2c1611a561619ad086c1bc6256986c0e698e61db186c2d0991503a991528199ca96bf995d8cc183a95d98cc883959ca996b0ae18500ae18ae8ae18ae10d99ca05098ae0ae158e6186c06c996186c186c06c186c86c1586c98e686c186c86c986c1611d71406a1501a86b858501a82ba56a02b501a854258509d71405850161426a0509a8543e6d86c161b256d836c363cb0d8ff2c363cace9e5883f99d0ea583a959d0cea7433a1d4cea7533a1d0ad43e585095a84d40a12c280b0a02b5095a83cad41e56a12c280d42a1350280d42a0350283cb0a0350a80b0a0350280d40a02c284b0a0350a87cd42a02c284b0a12b3a19d0ea7073a99d0e8583a99d0ea6743af99d4e86753a99d0ea567533a1d3cce8752b3a160e86743a160e9e6743ac1fffbd0c49001aae194d80f72b58554b59a95eed5a08d808b600db0d9c22d906367831b1c22d8c22d8fc18d808b620c6cf063660c6cf036cb66116c01b65b2116c7fff08b67831b3ffffc18d8720624024262422406caa96c696efe06634fe0696e2fe584b6f32c269733b61cd32c30d831cc2c2375639c339c120339d4da2bb08ec2364dcd360e5e480e5f978f9c97cd2197cb0901f3a909f39ce15cbc6904be7cef386904be572f1cbc909cbc909cbe90961202c24258480d21480232106484192108c80192008c800e4320064840db1cc036c36418d981b65b2116c7845b006d86c831b20c6c045b0116c81b65b2116c01f31b00c6c0339a0c6ce0c90046401190e0720900464184642119001c86400c6c831b2116c831b00ce6045b006d96c01b65b2116c81b61b006d86c831b006d86c031b206d86c81b65b006d96c045b00c6cc0db0d881b65b006d96c01b61b20c6c845b006d86cc0db2d90636606d86c031b308b6022d8036c363f06487fc1921846400c90c192084643e0c907c1921ff064842321fc2320c1921c2320e0c9083241c1920e1190ff0648383241ffe1190552b188b0719f7f4a1eb57c15bc66b19c46e821474a4645719988ab69bc4b11ac4311dc4b11cc47198c4b198882219502296045338ce33589622b388d62188c6338cc6318cc63588b071195222995222195022160a832a04532a0452b110ac4432a0442c08862208a78b1f95e23c58fcf1633c78bcae2162215c42c442b8a588a588be71221c58a716295c538b14b110b114e2442b8be5714e2c538b10e24538b10ae21c48871227f9c58a7162162216221c5885888712216229af5de585e6b9715ae2c2e35cbcd72e2c2e2c2f3f4b8b0b8ad715ae2c2e2b5e6bd715c42b885710b114ae29c48a588a588a58887122ff95c42c442c45f2b89e5710e2442b8bc238e11c611c5e11c5f08e3f83310331ffff8471047160cc708e3c198c238c19881988238c198e0cc7833103318471e0cc508e3f8331c0f1e3e0cc611c7847103314198e0cc5066308e3e0cc41f2c1e6a5119a1af08bc29b0f2a7b986cca7b194d8c3c98dd06f719b1a90d9a4346c69a4366c619b1a47f1ef71b39b74ef71ef76f71a08e3598fce351a08a081bc6bc61f9a79a953cd4de33cd7cde31e34a79a8de37cdfffbd2c4d083a94daee40eea974694295845ff597a0d1c3634ad1c0e3ff630e3f91c0d1c11c0dba0d98cd9a9b0cd98d98dba0d98cd9cd9ccd9cd98b0dd3e566cfe66cc6ce586e9f36e9367362741136271f831f81f9f34101f82c20898fc8fc1a080fc1a088fc18fc8fc04638846380323884638c191c0231c4191c40e38c71064700647108c7003530a640d4c29903530a600d4c54d08a9803532a6418a600d4c54d03532a600d4c29981a98532075314cc22d980db3367831b3831b381b666cc0c6cc06d9db381b666cc06d9db3045b3845b381b666cc116ce0c6ce06d9db3c0e384708463804638e118e0118e0118e2071c63881c718e0118e3f08c70038e11c00e38c7108c7008b66036ccd9c0db3b67c18d9822d980db336608b6608b6708b67036ccd9818d9818d9c0db3b670636706366036ced9c0db3b6606366845b381b676cfc191c2071c238f08c71f846380323801c718e384638c191c3c82bb45762bd6a189200a0f3144ca433d6cc69c36b368403455f43b3455ab8137c0e4323674ca4235040d5636b2cd573290d4a32a9ee6553dc8df03144ca294533f88be230f8d3e330f8c7e333dc8a4333dcd9d332908a4332908a423144ca423144ca433290851231448513314494a231448f7233dcc5133290c5122c0a24587e3d95bf1960f8ccf8cf88b07c4583e32b3e22b3e333e23e333e37e333e23e333e33e32c1f199f19f1160f8ccf88f88cf8cf8ccf8cf8cb07c4567c6583e333e23e237e23e284e898328981d13a2611a240ca2611a2508d1281d12a260744a8981be27c6117c4117c606f8df101be27c60c7c407f89f181be37c606f8df101be37c6117c6117c5063e208be281be37c5063e3037c6f8a117c581be27c7831f181be27c5063e2ff81be37c5f831f1781be27c4117c6117c40c7c4117c406f8df1c18f880df13e2063e2063e208be308be2845f1c0df13e2063e2037c4f8b08be3037c4f8fc1944c2344ffe11a27ff06513e11a270aa27fff08d1303a2544bff06512f065128468980001f961a0f32f89be330f8cbe22b674cd4a3528ccf727c08d4a25288c923183cc9221838b0ce9194867b9997c67f118fc69f198fc63f19b07b071c914919b07c91963f88a1f1cdf88f8cef88f8f46d3baae7aacd386d39aae6a254867487486fffbd2c4f0002ff59cc10ffad486bcb35849ff59b3574846a24a26574866fc67c667c67c667c6fc6583e233e23e22b3e332f82f832f92f9360f60f32f92f92c17c7960be3ccbe183cb05f265f2c1e65f25f065f0c1c56c1c582f832f860e32f82f932f82f8035f0be40d7ce0f035f0be7062f8062f9062f808af981af95f2115f006f8df1c22f8822f880df1be3037c4f8818f8c0df13e208be2037c6f880df13e2037c4f8822f8c18f8c22f8c0df1be3037c4f8a117c6117c40c7c60c7c708be208be208be2063e3063e308be208be3063e38317c8457c40d7c2f808af808af808af9062f9035f0be422be018be00d7caf9062f98457c81af85f1035f0be422be206f8df1031f1845f1045f1831f1045f101be27c7831f1031f101be27c7037c4f8c29f1818f8e06f89f1831f101be27c7037c4f8822f8c0df1be3ffc1944e0ca25f065120651284689fc1944cde666d451e74c692cb86aed3354ea7b2cc5691998436ef2c2dbe749e0b946bc1af0868cdd2784d19c1de4b1aa9bad88cd958dd05853d0c4716ce4cd8c23fcdd6d2ec8cbb275b4cbb31728c3671ba0c3671ba0c3661ba0c36545ccc36445ccd1731ba0c6e90d98b03c619e6a79a98f183c616078b2c2335af2a0b96565d91c7fa38144701611c0d1c51c3cd1c51c4d1c11c4ae3fb9e568e1fe58471336636636e9366e959b3f99b31b3959b399b31b3959b399b31b30323840e384700647108c700647006470c231c4231c606d99b3c0db3b6608b67036ccd9c0db336606367036ccd9c18d9c0db3366036ccd9c22d9c19ba40db3367064710647008c708323840e38c7081c718e0071c23803238832388463881c718e20c8e00c8e308c7108c7106470038e31c00e38471038e11c00e38c71038e31c60c8e20c8e0071c23881c708e0118e0118e20c8e0118e108c700647108c70038e31c70647108c7108c7008c710647106471064710647108c710647181c708e30647008c70c231c00e3847006470038e31c3065cafc1972ff832e5ff846e5419e3613f1bffffe11f19ffc19e33c23e340cf2c13a66bc22f044e35599b1a90d1bf8cb549bad85d91af091aa938d5665d997666b549b1866c6ad5268ce233468cd233651785150bb22b172cd19b5e10cf343cd4ad6de33cd4f3533cd078c2aa78064efffbd2c4f003b1c9a8c00ffad4867d2b97c9ff5eba9a783a34f013c12a93a6513c0993a64e9993a49e09549d32bbb235cbbb32b5ca2c2e515ae595ae59a38c7f1a382381a38a381c7fa381a38a389611c4a238fcb08e2584702c47f1a38a381a382389a38a3895a389c7f47f79a38238960a64ca61530ca65534ca64a60d531534b053058298354d29932982992b29932982992b2992b4712c2389611c4d1c11c0ad1c0d1c51c0d1c11c4ad1c4d1c11c0d1c51c4b08e068e28e268e28e0568e0568e068e28e2584702c2389a3823895a389611c4d1c51c7cd1c11c4b08e3e568e0584712b4702b47034714712b5ca35cb5ca2b5cb2b5cb35ca5ca2b5ca2b5cb35ca5cb2b5cbff2b5ca2c2e59ae52e57f95ae5161728b0b9456b9656b94585cbf2b5ca2b5ca2b5ca2b5ca2b5cb2b5cb35ca5ca35cb5cb2b5cb2b5cbff35cb5cbff2aae56cb0b95fe56b95fecaba05d4123552674e3bad48a9d373031554e1127497febaf30f887e332f18e2831290966285e38c9662f1cc5622b8ccae51ce0cc394994ac60e30e385623158838d3158c90e3243c90e31588563312904a53090c2422b1290c3e21f88c7e20f8cc3e33f8cc3e32f88b0307958c1c617c8c1c56307187c41f19607e230f8c3e230f883e32b0f88b01219848625215848658090cb0121160243f3e3db92c71e586e0db96e0adb936e38e2c371e56dc1b72dc1b72dc79b70dc15f1a586e4b0dc95b7056a69a9aa69a9b5b9a9aa69a98a61a9aa61614c3ad94d3532b63adab735314d3532b636e5b836e1b8f2c3706dcb706dc37056dcf9b72dc15b70586e4adb92b6e0b0dc1b72dc9b72dc95b726dc370586e0adb92b6e0b0dc95b73e6dcb706dcb726dc373e6dcb70586e7cb0dc1b70dc9b72dc15b73e56dc1b72dc7961b82c37256dc79b70dc161b82b6e4adb8f2c370586e4adb92b6e4db96e4adb82b6e4adb82c370586e0b0dc95b726dcb70586e0db86e3cadb92c3726dcb726dcb726dc37056dc1b72dc961b936e5b9f2c3706dc37256dc7fffffff063e30bcc78d1e34c5cca4f0c5cb8d54de87b760cf3598c4e3555e08dd6c172cd6dd3cd4de8698c0db374868c4716cdcc5ca75b0c5cb1728d19a4668cd8c23fca1b1b323fd6a932ecd19a2c0b946bc1233462e5233a71fc8e271fe8e268e11fc68e2fffbd2c4f081f03160cc0ff6d7863fb5d7d5ff5a2a8e27e69e6be56f1a7e69e69e6f1af1a57e6bc2b78dff3471471347147034704703471470347147134704703470471347147134714712c2389a38c7f1611c0d1c51c4b11fc68e28e0584712c2389a382381ae52e51ae5ae51ae5ae59ae5ae5945cb9ae52e596172cd729728d729728b0b9456b95e157280772ae5846e5046e5c1972c19728237281972bc0ee5dcb832388463881c708e2118e0071c23801c708e0071c63801c708e2071c23801c718e0118e00c8e2071c23801c718e2071c23804638e11f1bc19e330af1bee0cf1bc23e3423e31a0cb940cb95c23728197281972b03b9772ab065cb08dcb065cb708dcb08dca581dcab940cb940772ae57d5fe0cf1908f8de0cf1a15e3411f1a15e35fd55423e3611f1b5419e317f5e11f19f08f8d0678c833c6423e33f0678d81f8df1b5f33a38e8f3e1d21d43b49168319d0eceb83d0ece2c92270d155ae00e1856b28c69d355ccf736748c513290cda0f8b20eb808b24a844e99ee65219a9462891b3a65211c59044e9b41e44e96115532275155d151d3a33a38e8e33a3ce8f35a08b3232cccb3228599ccb322ccca8b419bf1df119f11f199f13f11bf13f1143e2161f88b113a5589d389c89d2c44e162270a44e3cae270da75a70da71a74b0d3a6d38d3a6d3ad386d3ad3856d3be56d3856d386d3baae56d39e56d386d38d386d3ad3a5355c56d386d38d39e6d38d3a5869d369c69cfef95b4e161a77a56d39e5869d28d3af2b69c2bd56f369c69d2b69c2b69d2ab4e1b4e34e1469c1b4e34e95b4e79b4eb4e961a77cda71a70da71a730369c69d2b69c2c34e7961a70b0d3851a706d3ad3a56d3a56d386d38d3a5869df2b69c3d5669c28d3b2c34e961a77ffcada73cada70a34ef45869c2b69cf2b69c2c34e95b4efe8ada70da71a74b0d3bb2c34ef961a77ca8d385869c2c34eecb0d3857665ffe58b322c599fecb16645766658b32ffe73fcb166657665e7665666766766458b32f2bb32e313316f31e1f6ee56bfff9beaf3144a96237c0851329f118e4335288e4333dccd9d35288d9d22908cc38248ccf4e183cd4a32908d4a3a588d4a33dc8c5132908c513528cca42528cca433dc8cf72290cca425288ca43290cdf03290cd4a2290cc5133dc8c512fffbd2c4ff03f49152ba0fffc5c651b59801ff5a901448cf72290ccf733dccb07b999484a511948428998a242891948628916144ce90e908ad448d44d44cd44d448ad448a2894b0a27e585123513a432ba42d95a8916144fcd44d448a8a246a24a266a24a2452909e58513f849f1c22f8a117c406f8df1831f1031f101be37c607f89f1845f1831f181be37c6117c606f89f101be37c606f8df1031f101be37c508be2037c4f8e117c6117c508d1308d1203a274482344b0651306513065138468941944c2344c2344a0ca260744a8901d12a270651383289c0e89d12f83289e0ca258468941944c1944a0ca2508d138468904689b8468941944e11a278328901d13a260ca2583289e11a2781d12a24f83289832890468984689032898328942344c1944e11a2706513f83289c2344f06512a8234481944a0ca260ca258468941944b8328976e11a2584689feae11a244c414d45332e313030aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaf2aa8207219b3a45243318a27c791a946a519a4c849198c1c7a7997c65f119fc47f19486126d651aae67f1a7c6517e21587c4617c1244661c9246661c124666ab9aac66ab0d3a66ab35966a082822634e2820566ab19aaca0896069d2b355cc69c5040acd563355cd562c0d3a574845144a56a24748748656a2658a4337e23e233e33e22c1f1159f119f11f1959f199f13f11bf13f11d21289161448b14847486a246a26a27e51449e585132c28981d13a2611a2411a260744e89832890328901d13a2708d1303a2544d82344e0ca240744e8981d13a2411a25846890328981d12a260744a890468903289e0ca2611a240ca2611a270651283289784689c2344c2344c234482344c1944c0e89513f8328981d13a2783289c0e89d1206512ef0669d8334e78474ec0f4e69de0cd3a11d3807a774ee11d3abc19a77ea7c19a760cd3bb419a7019a73ffff8474e8474effffc19a77ff08e9db3ffffd6bf9913a8aa1f9eb1631445566a510a2472198a24777c28226d65359675c09138644e11387163570651a0f9c59044e1a2a88aa14455e67b9948667b93e066ce98a26644ec592644e913a6d0722aa51a0f142274644e22aa644e913868aa1138644e341c644e113a552274aa44e1a2a844fffbd2c4e581eb5da6c00ffad4867d3597d5fb5f98e18d3834e19aac34e18d3834e18d3a34e958d3a581a74ac89c2b2274aa8aa9913a44e15913bfe644e113a634e0d3a634e0d38634e1aade5634e798d3834e158d3a581a70ac69d2c0a2662890a2456289958a245628998a2628998a24289958a27fe65210a27e0744e89046890468942344c2344c1944825448234481944c2344e11a2503a2544c234480e8951206512832898328901d12a240ca240ca270651306513065136e11d38c11d3811d390669c08e9c03d39a7019a7207a774ec23a740f4ee9cc19a7423a7607a734e0474e8334ee11d3a0cd3811d3a07a774e419a740f4ee9d03d39a7611d3bc19a7019a7023a7207a734e01e9cd3908e9cfe0c22742244ef83089c7089139f06113bf088d39fc1834e42234ebc1834e60c1a77f060d39e111a77c1834e84469df6c2244e550000001fcb08e06636ca8663496e6fe26366634fe069b4c32673aeae673a9b6586192b1cc33b73b63411a5531f94112b410383d62731f86263626626331b31a34b731a317e17e34b64b732982992c2a69594c194c94c795a089a0831318fca081a088fc9625e3979212b484ad2134825ef2be70ad203979203485203481213481203485212c24256d93e6b64db2d92c364db2d836c364af9856d82c360f9ad92b6c79b65b06d9e61b61b26d96c15f30db2d93e6b64db0d82b6c161b0589079c8243e7219015c80ae40720901c82407219079c8240720909c864056d92b6c1b65b056d8f36c360db0d836cb64b0d82c360adb056d82b6c9b6798586c961b056d92b9095c84e43202b9016243ffe589095c84e4121f2c480e4121390c84ae4057212c484b120ff2b907f95c87cb121390c84ae42589095c84ae425720390c80ae43e58909c86407219016240589095c87ce4320390484b120f2bbfff962fe577ef2c5ffcb17ef2c5f8aefc58bf9dfafde58bf962fde58bf1dfefe77ebf15dfcaefc577ef2c5fcb97d859c2ab88e7fa3cb0599194842891be04a51998724911aaf47a799fc43f19a7c4ff11978c122992ce71415948456a5119fc61f19553e232f8cbe232488c393248cc393183c60e31a70d5631a70d563355c69c3355cd573144c5123144851333dc8512314485122844e4d1554550a11383227089d2b2270afffbd2c4ff83f1c956d46f779446f42a9881ff7690d448d44e908d449448d44d44cd44d44cd44d448cf8df88cf8cf8ccf8cf8ccf8cf8cacf8ccf89f8cb07c6583e232f82f9360f2f92b2f832f92f932f92f82c17c960be4cbe4be0acbe3cef9be0ef8be4ef8be0ef9be0ef8be0ef8be4b17c15df258be0b17c1df37c1df17c9fc7f11fc5f115fc457f19fc7f1163e23f8fe2f2c7c47f1fc457f1963e32bf8fcaef82c5f277c5f277cdf277cdf058be4b17c79df17c15df077cdf077cdf058be4ef9be3cef8be4aef9f3f8be22c7c5e57f115fc457f1963e3f2bf8cfe2f8cb1f1163e33f8fe3f3f8fe33f8fe32bf88b1f115fc457f1963e32bf88afe22c7c458f8cfe3f8cb1f1795fc5e58f8cb1f115fc67f17c7e7f1fc458f8cb1f1163e22c7c657f179fc7f115fc457f17963e32bf8cb1f19fc5f19fc7f179fc5f1963e22c7c658f88b1f195fc47f17c457f115fc67f17c658f8bfcafe32c7c7e57f195fc658f8d5f2a2944630705f26c472af66abd8c1a661c9872693205f069320c1c510881978e4b3192463071a4ca49199e9e7a71987017c18c1e17c19c62b198dc2b118dcab11d21a891d2152179d21d2195df1160f88cf8cf88df89f88b14867ee4a25fe56a246a26a25e6a25485e6a26a27e67c47c5e67c47c667c67c6567c5e583e32b3e3324324232422432b243324324232422432c12199211219921252992112116090cac908c90c908c908908c90c908c90c90cac90cc90c90cc90c908c90c90cc90c908b048664844840c5f2115f00c5f108af8035f2be2115f18457c6115f20690d210452101a4294a1148406909218312140d21a4308a4208a420624281a424861148406909210452101a4348508af9c22be206be57c0317c8457c8457c422be60c5f2115f20c5f1035f0be418be2115f20690d2181a424840c4840c4840c4840690921e11486114841148606909210452181a43484114860c4870348490c229080d21a4208a430624208a4308a428317c0457c422be40d7caf9062f9062f9035f2be40d7caf8f062f98317c8457c0457c6115f3035f0be018be422be3fffff08d12f2c3d10653614da6a7ba2e442a7a1a9eea7b9a3362e518b971aa9445cc6374b0f2564019957055c1437be63748dd2653694d863c68f1863c6adbc6b6f8f1a53cdfffbd2c4f103f43180ca0ffacdc623b25881ff59f847e6be687e68f1a57e6857e687e6af187e6be687e69e6a6f1af145478a3f3578c378d78c378c78d378cf352c3c61478d1bc63c6961e34ade30adba4dba0d9bcaadd2566cc583672b36633676e834704712b8fe38fe4702c2389611c4ad1c4d1c11c0ad1c0d1c51c0ad1c0d1c11c0d1c51c0d1c11c4d1c11c4d1c11c7cb08e3e584702c2389a382389611c4b06cc583672c1b319b39b399b31b3f959b399b31b3959b3960d9ccd9cd98b06ce66cc6ce66ce6ce118e2071c238c191c4191c7038e11c40e38c70038e11c4191c4191c40e38c70064710647006470038e11c0191c40e3847084638e0c8e0118e00c8e00c8e20c8e308c718323804638046388463881c708e20c8e2118e20c8e2071c238c191c0191c0191c0231c40e38470c0e38c7008c708323804638c0e3847108c7108c7006470606470c231c60cf1bf57ffffdffffff846e5e0cb94a00002f30be4c3831084420332746f434224bc73259824431839265263070b039c183701c6961c14d2938a4eb9158cdce0e30eb95588eb8ce3cd58ce3cd589588cbe648cd83cbe0d83f0e0e48a48cc90c90cc909c14c909c14d295290cbe248ccbe1838d83cbe0cbe183cd83cbe0cbe1838cbe4be0cbe4be3cacbe0b05f2569485648664844845694a64864846486487fe6dc3706dc3706dcb706dc37256dc9638f2c370586e4db86e3cf8f6e0f8e6e4f8f6e4db96e7cb0dc1b72dc161b82b6e3cdb86e0db86e3cadb836e1b82b6e0b0dc9b72dc961b936e1b836e1b82b6e4db86e4db86e4b0dc1b71c71a9aa61d6ea615a9856a69d6ca61a9aa695a9856a69a9aa6f95d6e56a61a98a69a98a69614d2c29a56a67962432b90fffcb121f962422c485e572196242f2b908e43908b12115c87e572115c865890bcb121f95c845721ff9c8521162432b90bce4290ce4390bcb12116242f2b90cb12196243f2b90fce42908ae432b90ce4290cb1211c85211c87211c8721f95c85fe5890ce4390cae432c485e572115c87fe572195c87e58908e42908e43908ae43ffdbf587ccf8af88c7054224d7aa4ba8d7e30f8ccfe21f88d57a248cc2f80be4ce281294b04b319c5097518e0a4b3197cfa79fa7e1c197c97c9fa7307997c17c197c61c9df1df119f11f19df15fffbd2c4f303b38556ce4ffba9d6c3a41945eff822f199f15f199f1bf199f19f19df15f1160f8cdf8cf88ef8cf88cf88f8cb07c467c4fc66c1e5f065f05f265f0c1c6c1c5f265f25f265f05f265f05f065f25f065f25f26c1e5f256c1fe582f832f860f31b838d31b91b931b91b931b81b82b1b931b81b92b1b831b938e2c0dc18dc1c695a5279921921992112116090fcd295290c908908b048464864865824332434a531b81b831b81b931b81b92b38f2c1c7160e34b0372563705838f2b1b831b81b831b91b82c0dc9606e4c90c90bcb04845824232432432b24332422432b2422b2422b24332432432b2422c1219921121f960908c908908b04846484485e64864845648658242f2c121959211592116090bcac90cc90c90cb048664844866484486564866486484564846484484671c3706ac6371e637071c6372370637237063723726372372637237063723706370372581b931b81b82b1b82b1b831b91b82b1b92b1b82c0dc959c7158dc98dc8dc98dc8dc79606e7ffffeef34bdd4378ce2398c633b8a623188e23d8a62338ae23578c737dd5f2c1c65771985e3d98f6d59abc17163c634bd2f32248939ed2e32232137512e3751d5375488f34bdd534bd2f32208939e92f32212f32248934bc892b4bcc88224d2f220ac882c11269711058882c4495c41c44495c41c4c415c415c4162a0ea514ad14ad14b0887508a68a8bfe75088584434545344a8345a82c221a2a21a2a29a2229a2a29a2221d4a29d4229a2a21a2a29a2a215a21d4221a2a29a22295a279a2229a2229a2a29a22216114ad14ad10ad14d1114d1513cd1110ad14b15268a8a56885689e5844345442b442b4534544345452c229a2a29a2a296114d1517cd1110ad13cd1114ad14ad14b08a68a88568a568be68a885688588938988f2b88f2b88f2b892b89f2c447fff95c496220ae24ae23cae20e2624ae27cb11056c5e5863363622c3115b115b19b1319b13115b19b1b11b13195b116188b0c5e5863f36263f2c3195b11b1317f96188b0c60c44ffff84513fe0c4404513e0c44fc188908a2708a27cc484e74d866254aec44c97d36cd860484dd5ce74b073a64bf12a69b424265841b261ac9585825e312039c325e894339d757312025f2b619312139c3120120325f4db31201213121fffbd2c4e403eff9ace40eeeb7c67f361b01ee56f01203120120312125e3121120325e25f325e4da2c12f192f1ce18909ce996106c160730b01b063981b063981b0580d9f2b909c8240721909624058901c8640721901b679a586c1b61b056d92c363cb0d92b6c795b63cb120390484b121f2c484b121f2b9095c84ae4058901c86405721ff2c484e4121f390484b1212c484b120f2b909624056d82c364db2d936c360db2d92c360db0d936c364db2d82b6c95b64b0d8f2c360db0d92b6c95f34b0d82c360b0d82c364db0d936cb64db0d8f36cb64db0d82b6c7961b2586c15b60b0d92c360db0d936cb64adb2586c15b60db2d82b6c79b65b056d92b6c7fff961b3e56d936cb64db2d92c364b0d82b6c161b3fe6d96c95b60adb211907846400c90c192006482072190c232106484232006483e0c90c1921c0e4120064802321c19218464308c841920f846401190c1920064861190846400c9060c908324384641c192106483f08c842321af3210329369d2693340190343f32830fa66d366d89d35569b2332843e355643f35569b2389d66c327a1d4346c27a33c746c2882d31910ba2b26937840fa321055630fb210343f32832103292b3292b3292b32830fb210321043e3210211321121030fa0fb3843282b3e8f28840cfa3eccfb3eccfa840b10819f47d99f67d99f70899f47d19f67d15c2267d9f7e7081f467d1f5e567d99f47d159f667d9f6583ecacfaff2c1f4583ecae1133ecfa2c1f6567d159f467d9f667d9f6583efcafefcafecafe8b1f458fb2c7d9fd7d15fdf95fd163e8b1f457f657f657f7e57f658fb2c7d963e8b1f458fa2bfb2bfa2bfa2bfa2bfaff2c7d95fd95fd7ff95fd163e8febe8afe8afebcafecfebebfffcfebebfcfefebcb1f458fa2c7d15fd15fd1fd7dff9fd7d163e8fefecb1f458fb2c7d15fd163ebcfebeffffcafecfefe8afecfebecafecb1f658fb2bfbff2bfb2c7d95fd9fdfdff9fd7d1fd7d1fd7d95fdffffff95fdff9fdfd963ecafecafe8febebcafebfffcb1f657f47f5f5e7f5f7fe57f67f5f47f5f5e57f7e58fbff2c7d15fd163ebfcb1f657f7fe58fb2bfa2c7dffff9fdfd95fd985e171611230b82f3a39f7357a8e30b91337c8cc31649334495e331d13324c583248cd30bc7a37d8c630b8c73248cd33301d31fffbd2c4eb83f475b2d80f7774c5b935dd81dd66d8609331e8c630bd1230bc7b30b87a31ec2e2b578c7a44cd130bcb063985c3d9602f30bc2e2c05c63d8f666305e61705e563d985c17985e179aef456bcd7ae2bf46b97961795ae35eb8b070ec1d33a70b070b070b073cb070ced9ff2b5c56bcd7ae2b5c585c6bd7ff9af5c56bcb0b8ad796179617f95af35eb8d72e2c2e2c2f35eb8d72f2b5de6bbd962e3bae2c5e577f9df79dd7162f3bee3bee2bbbffffcefb8b17f9df779dd7962f2c5e577ffff9dd795de57715de57715de58b8eeb8eebcefb8aee2bbcefbbcb177f95de58b8efbceebbfcb1795dfe77dde77dc5777f962f2bb8b17162f2c5de77de775fe58bcaee2c5e77dc775c77de57715de5771dd7962e2c5e58bcaefff2c5e58bffcb17795ddfe58bffcefbfcb17f9dd715dde57715dfffffe58bcb177ffffffff95de5777ff95de577962f2c5c57715dff31a71aca3861eef93355daca37c0a43335288f7337c094a12b3dc8c2f91838c92255e8eef81a70d4118610c2f83d38cf4e248cd26530e4a0a27285214d9d22908a86ab1a822a08160d5636b28d5631a75acb3355d41033558d572b1a70c69c1a74d4111a74b034ef98d3a34e9d21289f9d21a891d212899a892899a89a89f99f11f1962f88cf88f88acf88cf88f8cadf8bfcdf8cf88cf8cf88acf88df88f88acf8ccf8df8bccf8cf8cacf8ccf8cf8ccf8cf88acf8ccf8df88cf8cf8bccf88f8fccf8cf8ccf8cf8cacf88cf8cf8e117c414f8a06f8bf101be37c6117c4137c4117c6117c7063e3063e2063e2037c4f8c23f8823f8e117c406f8df1845f1845f101be27c4117c40c7c508be2063e3037c4f8c19f8822f8c0df1be20651203a2744a0744a89c194480e89d13065130651203a2544c1944eb81d13a260ca240744e89f853e3418f8818f8818f8c22f8823f8c0df13e381be27c606f89f160c7c6117c7037c4f8c0df1be2037c6f8c0df1be281be27c606f89f1831f181be27c40ca2611a240744e8983289046898468903289419448194480e89513832890328983289c0e895120651281d13a240744a890468983289c23448234480e89d13d0eaf5c19a76dea8474e8334e2bffef0669dfffffd5e6498b0751af860e372684a86587c8ccdd48c59074cb41b8c6e358ccc160d08070fffbd0c4fa03fa5daac20ffad4c5bcb45e01dd62d0d43164ad433164933165092b24cd09248c58164c93420c59164c1c160d09160ac923420923164583074cc2c03860e0b2562c79601d3070593070932b074c1d070ac5839614d4282b506a029840a61429cb0a585264489608990225644c8bd32040c8912b206408991225644b0f4c81032240c81032240ac816081608191205640b044afa7de796387de7963be7de95f4af858e7f96225703840e302c44b11f38c3cb1038c4e312b8f962070895c4b1d3e70b1c3e74fbd3ef4fbc3e74b1c3e74b1d3e70f9dff2c73caf9e58e79f79e7def95f7cafa58e95f0b1d2be16387ce95f7cafbe58e95f4b1d2be163a7de7f9f3857d2be963a57c2be95f0afa7ce15f4afa7ce1f7857cff2bef9f3be57dff3ef0b1d2c74afa58e963858e963858e963857c2be1f7a57cfff2be95f0b1c2be1639e57c2c70b1cf3ef4afa58e95f0afa58e9639e7ce163858e963a7de15f4b1cf312012035a04ac34ad1cd31cd3b635a05a0322b47131991992c09a982989a960398c650398c3612b0cb08edcc730730cd34418c1d4660c1d4664c48097cce70e70ce74484c480480c360360c734364c730364b039a65841b265841b2561b0580d92b0d93831d4acea7063a19d0ea707cc99d4ea63948958e0c703831c39bcc723931c244c703832994cb05232994cb052ff2c14cca6c3f2b29160ea56742b3a19d0ea6753a159d0acea56752c1d4cea7533a9d0cea74fff2b5015a80ad41e5850f9a8541ffe5850959d4b074f2c1d4ce8752b3a99d0e8570633a9d0ace8583a959d7cce874f2b3a99d4ebe56ea6e8ea56ebe56e86e8e86e8e86eaea6eae9e587537474375752b7537575374742b742b74f375752c3a1babaf9baba95ba961d0dd1d0add4add7cb0e856e858752b742c3afff9ba3a1ba3a79baba9ba3a161d4add0e8280b1427434258a02ba02ba1f2c501d050796280b14058a03a1a12c50796284ae80e8687fcae83cb14058a0f2ba1fff2c5095d016287cae87fcb1405741e74343fe74143e5741e74141fe58a1ffff2c5095d0f96283cb143fe574258a1f2c28206c48311e6abd8c1e65f197c667f137c67e36a8226d65a82263f197c661f11fc667b99ee662899ee64d41099aaea089b5966ab98fc63f11a7c63f118fc4fffbd2c4f003f3f1a2e20f7375467ab55881ff5a685f198d3834e18d3ad6618d3ad6518d3a6ab99aae34e959aae66aba820634e1aac57aac58d57369cd56cca34e4b0d3856d386d3ad39fc2c34e1b07b07997cb07197c3071c91307997c17c160be0b05f2565f26a26a26585122c28915a89f95a896bfcd44d44cc90890cac90cc90c90cd294908b04865648456484648448656486582423242242324224333e33e233e33e32b3e32c1f119f11f1160f8cacf88cf8cf88cf88f8cacf8cb07c667c67c467c67c6583e3037c4f8c18f8a06f89f1031f101be27c6117c7063e2845f1418f8a06f89f101be37c4117c60744a890328960ca2411a240744a89046898328981d12a240744e8904689c0e89d1284689708d1308d1283289e0ca27c0e89d12c2344f8328984689032897f81be27c40c7c406f89f1845f1845f17063e308be3063e3037c6f8c18f8822f8818f8822f8818f8f063e3831f101be37c60c7c406f8df1611d3bff8474eefffff7fc23a77fff42af314d42032684ee3268340355666c332966d3328556332832830fb43e2c21f1a1f9081908a1f1a771a019341a01a7705d99348c898c80c819341341a1015b98a68a698a615b9ac515b190887d187d07d987d108190819479595b995b8a698a68a61595b15aecad746bb5d95aecd76ba2b5d9ae976585d1ae974579035d2e8d74bb35daecd74bb344220d112f344220b088344a20b088344220e5e89344a20d12893e2e22c311f1b11f1311b13195b196388f8b88d8d8cad8cd8d8cd8988e2624e2620e2624e2220b113e5710711127131271113e58893898838988388883888938989f2b88ff388882b89389882b89388882b8938889389882c449c4c415dd7962ebceeeecb17477776775747757658bb2bba2c5d1dddd15dd962efcb1745777e577458ba2c5d9ddddf9dd5d95dd95dd162e8eeae8b176577458bafff2bba2bbb3bbbb2c5d9dd5d795dd1dd5d1dd5df95dd162e8eeaebfcb17458ba2bba2bba3babb3baba2bbb2bbb3babb2c5d15dd962e8b17658baf2c5d15dd7962efffceeeebcc3e21f88ccb92b88d23a48e8c85e162ca10bc31838f4ed9a4ca17c9924617c987c67f119fc43f1187c63f11613e231f8cbe2309087042b259cc7050908cfe21f8cac7e230f883e332f88be230f8cbfffbd2c4e803f01956de0f73748691b259c1fedab8e231f887e32c07c6503e3987c63f1187c41f1987c41f1187c61f19587c7e7f17c657f19fc5f179fc7f115fc458f8bcafe22bf8bfcb1f11c852195c865890cb1211c872116242390a43390a42f390e432b90fcae42390e42f390a43390e42390a42f2c4865890ce43908b0dc961b836e1b836e5b92c370586e4db96e0adb936e5b92c37256dc1b72dc9b70dc161b836e5b836e5b82b6e0b0dc1b72dc161b92c372586e0db86e7cb0dc95b7056dc961b92c3726dcb70586e7cb121962422b90cae422b90cae43390e43390a432b90cb121f9c8521f9c87219c8521f95c86721487e572116243390a42f2c4865721ff95c8458908e4390bfcae43390a43390a432b90cb1211c872116242390a432c485e72148658908e4390c1890e0c48508a4284521c1890a0c484114840c484069092181a4348508a4383121422908189082290a0c4850624308af808af8ffe0c5f1fff8457c0457c5500002f317f4b633b769735a12c23ffd655317f7f1331bb28365417f312125f325e619317f98c331a17e317e31b3b294b62c18d19611611a5616199db0e698bf8bf9a5b8bf1a5b25b998d98d18bf0bf998da5b18bf18d98bf25b198d98d98bf18d1a5b18d958bf95a5b9afcbf9afcbf79617f2b5fcf1a5f8d7f5f8d7e5fcb0bf95afe6bfafe56bf1afebf1631b2b480b0901625f2c24269024072fa40690242690a42690a40690a406902406904bc58483cd2097cad202b483cd20484ad203481212b480d20484ad21f397920f2b487cb0909a429015a4256901a42901cbc901a429095b9be66c1b066c9b2566c19b0e6960d82b364cd9360dcd360cd8360b06c159b058364cd9363cb06cc237ec197ee11bf60cbf046fde11bf60cbf846401190846400c9081c86420c90046420721900464007219081c86400c9003243039048607219060720900464306484192106480237e832ff065fe11bf40efd7e08dfc0eff7f08dfc197f81dfefc0cbf81dfafc11bf40efd7f065fb065fc197fffffabfffff065f90403cc4102950c62707e0d6dd07e4c83d1044ce8107e0cc6a2954c6271898cc6a1044c41120f4c6541950c7f00c68c411189cc62620f4cc6b20f0d2ddfc4d9505f8cc68c68ad044c7e2950e0f47e4e0f20f0b0c4fffbd2c4ec813099a4d64f76b556e6315a95ff71bac56c4e56c4e63f23f25682068223f263f28226c4c3f2581f8341141131f91f92c0fc16189cc7e1040ac7e0ac7e4c7e07e0c7e07e7cb0821e563f0563f062422426240240624224256240581202b12131201212c090960480c480480ac484c484978c480484ac480c484978c484487cc480484b02425825ff2b1212bbff9dfefe77fbf95dfcb17e3bfdffcefd7f2c5ffcaefc77ebf1dfafe58909c824258907f9c86425720390c80ae4058901c86425720390480ae4057212b90f95c84e4321f2b90962427209095c80e41202b901c86427209016240720909c864257202b909c82405721390480b1212c480b17e2c5fcefd7f2bbf95dfceff7e2bbf162fe577eff2c5fbcefd7f2c5fcaeffe58bf95dfffcefd7e2c5f8b17e2bbf9c8243e589096241e5890962427209016240720901c864057202b9016243fe589096242721909c8642589095c83ce41212b9015c80e41212c7e3fcaff3fffffffffffe57f9ffffffff2c7e55f314d6f4319169c334141731d5320308946c341734134170ba33211d5332112f2c0b198f18711897990984413d984493d9a0b85d98c80c818c81349a995b1a98a69a98a6962b633ea1133ecfa2c1f467d9f458537cd4d534aeb62b534c894b8c894b8d2e4b8b0441a5c44f9b1b11b1311b13115b11b1f11b1b11b1f19b1711a2d41a2a279d42295a21a2a296110ea510ea510d1510d8d8cb0c4586336263363632c311b1319b13115b11618cd898bcae20ae27ffcae23fce2223ce2224b111e71311e577658baff2c5d95dd962ecb17458ba2c5d95ddf962e8aee8b17458bb363622b63362632b63362632b63362622b632b622c311b1b11b1b11f1b115b11b1b195b179b13196188b0c66c6c67131058892c44795c495c41c4c495c49c44496224ae23fce2623cb11258882b892b89ff2b88fff2c441c4441c4c416224e2624b112571057107131271311ffe5712571258883888938989f2b892b89ff38889389892c449c4c4f96119a39a1cdee361e4a6d3914c8ff336348ff31534d6c2b563cc6191d5cc4db0978ca5507e4d09920f0c8022ae4cd6c1534c2980a60cdef1ba0c3660d98c3671ba4de31e28aaf187e68f1a6f1af1a54a6d33663672b6e936e836734714712b8ff38fffbd2c4e483ecd556e20f776ec706aad981ff75f8ff47038ff4712c47f1594c194caa6194c94c994c14c194caa6194c94c15a08958fc18fc0fc1a080fc9b132089a08a081a088fc158fc98fc8fc98fc8fc98fc0fcf98fc8fc9607e4c7e07e4b03f0563f2581f934101f831f91f92b41031f841031f91f82c0fc1607e4c7e5044c7e47e4ac7e0ac7e0d0407e4c7e47e4d0447e7cd0447e0c7e07e0ac7e0c7e07e0c7e47e4b03f2563f263f23f063f03f0581f9ff2c3f2587e0adf82b7e7cdf97e0b0fc1bf0fc1bf0fc9bf2fc795bf056fc961f837e1f937e1f9f2c53258a64e99a67ce99a64ae992c53274c53258a64e99a64e99a60b14c1d314c95d3274c53074c53074cd32574c95d3274cd3258d9bcb1b3963672bd9fcaf662c6cc7b36ce7b3ece57b3ff9ecdb316367f2c6cc57b3795ecc58d98b1b315ece57b315ecc57b395ecc58d9cb1b3963672c6cc58d98b1b31ecfb3ff95ece58d98af66ff3d9f663d9b662c6ce58d9bcb1b395ecc58d9caf66f2bd995f31a74d5738745265324902f836f8cfe233f8d3e33674ca43367494a23248c2f930be02f831f893e334f8c7e232488c392a0c1c661c124657ee67484a267485ee46a25ee47ee4a2457484748548656fc667c6fc456fc4587e23512a422c5211a89d211a892899a89a8919f1bf1943e2f99f19f1160f88acf88df8df8fcb07c66fc47c7e583e22c1f1f9a52121192125219219219a5225299219211921a52f9a521219a521211a52121997c97c960be4cbe5838cbe0be4acbe4acbe0cbe4be4acbe0cbe4be0b05f265f05f3e577c1df17c1df37c15df1e77cdf058be7cef9be4ef9be4ef9be4b17c962f92c5f2577c95df058be4ef8be4b17c1df17c79df37c962f83be6f83be2f82bbe4b17c795df0577c962f8f2c7c47f17c7e58f8bcb1f115fc7e58f8bcafe22c7c47f1fc7fe7f1fc657f1f963e33f8be33f8fe22bf8cafe32bf8ffcfe2f88afe22bf8bcfe3f88fe3f8cfe2f88afe32bf8bcb1f1163e32bf88b1f17963e2fff3f8fe32bf8cb1f11fc7f1963e3ff2c7c5e7f17c5fffffe7f1fc7fe7f17c657f1f963e3ff2bf8cb1f179a08f40992f5881a6d30c9b137401a08a089545f8b131a56ca8731afe2696ecaa73182fe68234aa63f10787078c4e74a83f0563f063f0c4e70798d674a8820fffbd2c4e783f1f556c80ffbadc667b3da41ee572078d43f06822820682082056c4fe682082063f23f0584112c0fc158fcf98bf0bf18bf8bf198d8bf960c68acc6cac5fffcd0447e4c7e07e3fcc7e5044b03f27f8fc163f057f93fc7e7cb1f92bfcff9fe3f27f9fc9fe7f257f82c7e4b1f83fc7e0aff3ffe58fc1fe3f2577f2c5f8eff7f2c5f8efd7e3bf5f8eff7f3bfdffcb17f2c5fceff7f3bf5fbcff1f82bfc1fe7f258fc1fe3f058fc9fe7f07f8fc79fe3f3e7f8fc15fe0b1f92c7e3ffcb17f3bf5fcefd7e3bfdfceff7eff3bfdfceff7ef2c5f8efd7f3bf5f8aefc58bf162fc77ebf95dfcaefc58bf60cfc047f207f8fc833f1067e211fcc0ff3f9c23f9067e611fc033f011fcc19f808fe60cfc033f108fe419f9c0ff1f9847f007f8fc847f011fcc19f803fcfe419f8c0ff3f9c19f8067e60cfc047f303fcfe703fc7e607f8fc423f808fe3847f00cfc033f211fc047f007f9fc847f381fe3f3833f00cfc833f3c23f9833f103fcfe40ff1f85f34b617e36544b7317e7f1378c69630d95a03b2898d331b7f02b39c325e619325e121375712131cd3b732c20d931cc697315c0a02c16b990d8ae198da5b98bf25b998db2a18bf18d9a43ce9a432f9a40901a412f9f39ce9f3b2f9f392f1a42901612034839d2c24269024072fcbc690242690a406d96c9b65b26d86c95b60db0d836c360db2d92c360f98d82be695b60b1cd36cb63cb0d936cb64b0d82b6c1a814056a1350283cebaa12b5015d73cad426a0509a814275cae1624057212c483fcb1212c483cb121fff2c483cd42a0350a80d415d350a80d42a0350570b0a0f3ae574ad4258509a85426a15015a84d42a0350574b0a02c364db2d836c364db0d936c360db0d82b6c1b61b06d96c961b3e6d96c1b65b06d86cf95b64db0d836c360b0d836cb64adb258e6961b1e586c95b64db2d92b6c15b64adb26d86c961b26d96c95b64b0d92b6c961b06d86c795b60b0d92b6c961b2586c9b65b1e589016241e5720390480b1202c484e4120390c83cb120390c84b120390c80e43212c480b1202c484e43212b909c864057212c484b1212c483ce4321000fe62a690046401957256d7c1a044401990048111a046401158532620814aa56208987383ab184bc3ab986343f81931a32a9863432a98c4e41e9907fffbd2c4ea03b2f156da0f7790863b335a4dff5618a2081882220898a9a14c9900655c985328111853214cf9c014019aa694c994c94c194c14c994c14c1aa62a6194c94c960a64c7e47e4ac7e3fcd0447e4b08225825e325e121312025f2b121325f25f2c090960978c4844860cfc847f211fc01fe3f011fc81fe7f20cfc01fe7f00cfc047f20cfc01fe7f00cfc833f20cfc847f103fc7e60cfc047f207219001c86420721900324108c800e432108c84192006480232103904840e4121833f011fc01fe7f103fc7e3e0cfc033f007f9fc047f011fc01fe7f007f8fc419f908fe308fe211fc047f00cfc847f207f9fc847f20cfcc0ff3f8067e7067e023f808fe40ff1f9067e211fc033f011fc833f3833f303fcfe3067e00ff3f908fe019f9833f20cfcc23f903fc7e019f808fe023f8e07f8fc40ff3f8833f1067e423f9847f207f8fcc19f9847f207f8fc033f211fc847f00cfc033f1a99d67fa933ccc957f313fea3d51f6a55f31a7069c3183d26534990c3934f8d3e236f88fe235f8a7e232f88fe331ce038c31588cb934a59673bc724235635633739738338f90f34a470437054a5324324237e3be32b7e333e2be337e27e32b3e333e23e333e33e233e37e22c2899a895211a89d21f0b0a2456484648648456484648694a648648456484582422c1211921a52159211592199219211592119211211fc5f17f95fc457f195fc5fe7f1fc658f88ef9be0b17c1df37c1df37c1df17c9df17c15df2577c15df277cdf277c5f277cdf3e577c962f93be2f9fff2bbe4ef9be4aef93be2f8ff2bbe0db96e0adb836e5b836e38e36e78d36e1b82b6e4db96e3cdb86e4f8f6e4db96e4db96e4db96e0adb836e1b92b6e0e4390cb12115c84721c84572179c87211c852195c84721486721c86721486572195c865890cb12179c87219c87219c872115c8477c5f0577c15df2577c95df077cdf0577c95df258be7cef8be4ef8be7ffcaef83be2f9f3be6f82bbe4b17c962f82c5f1e577c15c867214845890bfce4290fce43908e4390ce4390cb1219c85219c85219c872116242390a43390a42f2b90bfcb121ff95c87e721487e62898a2462891ee462890a26541f88c3e27f88c5121444f3c2144ccf4f0be4c2f93d3ccf72674cc5133dccd57a4990b061c985f217c9ff1fffbd2c4ee03f47d56cc0ffba9c6beb5d901ff59b0bf19df11f11bf1df19c9117c94922997c97c1c91b07645144c74874847ee6a25c3a4251335125133a4251335135132c5f19bf1bf19bf11f199f11f11bf19f199f19f195b07997c17c997c97c9b07307960be0cbe0be0cbe4be0b05f3e67c47c467c47c6567c667c47c4583e22b3e32b3e22b3e333e33e28457cc22be40d7caf98457c01af85f211c1e115f0b062f903c1ebe018be418be00d7c2f8062f9035f2be018be40d7c2f908af908af8062f9062f881af85f0115f006be57c8317c01af85f2115f2115f20783d7c0317c0457c0317c8457cc198380d7caf9035f0be606be17c40df13e3063e2037c6f8f08be2c0df13e3037c6f8a0c7c406f89f1031f16117c5037c4f8818f8c0e89d12c2344819448194482344a11a260ca2411a260744a894234482344e11a240744a89f06512c1944e117c606f8df1845f1845f140df13e3063e2f063e308be3063e3037c4f8f063e2063e3063e2063e308be2831f1031f142344aaf83289ff06512846897fffff08d130651354c414d45332e313030555555f2c113a6ce9be046f81a9467a1d687668aaa2a87e79a2a86d07341e6491924469329244513e39afc65f199484f8199ee6a5118a262899a94428999ee628918a262891be062891a94452118a2452199486a51191388aa1913844e9a2aa44e9913844e9a2aa44e1a2a844e9913a44e9511542b2270a1f14aef8cacf88a1f17cb0fc4585122b5123a43a43f2b513f35125132c28981d13a240744a8904e8981d12a25c0e89d1308d1203a2744c2344c1944819448194480e89d1275c2344b03a2744c0e89d1208d120651284689e0ca2703a2544c1944a0744e89c1944c1944e11a240ca2411a260ca260744e894194482344a0ca2708d120651208d1206513df03a2544e0ca260ca2613a2508d1203a2544982344fc23449ffc19a770669ce11d3b08e9c08e9c08e9c8474ef68334e230669cf8334ee11d3bedfe0cd39ff84b4e0474e3c19a737fc19a774fb7ffd1a8ac5ca3172d7853ebdc5cb2b5e0cd19b4668a2f083bc90bb3285d90ca6d29b0d1730d98e3545e10d7855e08c47023f8db3711c4a11fc32ec8bb23466cbb234668bb23172978328bc20ad7853466d19d32eccbb334674bb22c233450bb2fffbd2c4d583e9c98ec40ffad44632b35881ff5a9879a3345d915a336562e5128b9671fc8e068e28e068e08e068e31fc568e271fe8e25836733666e82c1b3959b3159b3159b39b749b3160d9cacd9ccd9cd9fcb06cc566cc566cc66cc6cffe566ce566cc566cc66ce6ce5836633666e93366367336736636e83662b36636e86e82c1b3960d98231c4231c4231c0191c4191c4231c0191c4191c0231c58191c20c8e2118e20c8e00c8e1038e11c0231c4231c4231c40e38471c191c6071c638846388463840e38c70038e31c00e38c70038e11c0231c40e3847108c71c0e3847181c718e00c8e2e0c8e2118e00c8e18323881c708e0118e211b940cb97f03b9572c2372af065ca81dcab97f832e5f03b9572c0ee5dca08dca03b9772c2372f81dcbb9411b940cb97fc1972e11b940cb94e11b940cb95ededde0cb956846e5fff09dcae12b960000001fcc2994b64d58f35b0cd6f1530d2d835b0d0220a60c31b2ca4c17e05f8c4b605fcb00bf18c303ab18eac30c98822208960c6b31040a55319544b630c6831b3195031b3200c29831534ab830a648022a0532581534c2990a60ac54c2c0532562a69602982c0a98614c05305640116031b305fc4b72b0c68b018d16031b305fc17ff2b7e3cadf92c3f0587e0df87e4df87e4f1b5fcb0bf1afcbf79617eff2c2fe6bfafc56bf95a42690a4072fa4272fa40690242690a42690242690240572f9a40901a409015a42690a40690a40690cbe690a4269024256901a40901a40909a42909a412f1a41ce9a42909a4090961202c5f8aefc77ebff9dfafde577ff3bf5f8efd7e2c5fbcefd7f2c5f8b17ef2bbf15df8efd7f3bf5fbcb17e2c5f8eff7f3bfdfcaefe77fbf162fc77fbf1dfefc58bf795dfcaefe77ebf1dfafe77fbf9dfefc58fc1fe7f057f93fcfe4b1f82c7e4aff1fe58fc95fe0aff258fcf9fe3f258fcff95fe0aff1e58fc95fe0b1f92bfc1fe3f257f83fc7e0ff1f8f2bfc9fe7f3e58fc9fe7f257f82c7e3cff3f92c7e4b1f83fcfe7cb1f8f2c7e0ff3f82bfc9fe7f257f9ffffcbf79dde6bf76bb87ef58ffffef3cf9bfdd65909587c663f127c65455e4d2641838c9224994c9221830c66c0ca4c0fa0ca4cae20e34c5632438cbc71290cbc638a4ad2642c05f0617c8c1c787124465f2c1fe7485485d3f72fffbd2c4ff83b74592d26ff796ce783199c1ff75a8a433f73512314c4212c15b9a1095b195b15b960be4cbe0be4cbe5838d838be4d838be0c6e4e30ce386e4d58ce38b071e563706370372582422c252960908c90d297cac90cc908908ac90cadb936e1b936e38c36e1b82c37056dc1b71c61b72dc9b70dc9b70dc162f9f2bbe4ef9be7caef92c5f3e577c15df058be0aef8390a422b908ae422b90cb12196242f2c4845890fce43908e4390ce4290ce43908db86e0db96e4db86e4b0dc9b72dc161b936e5b836e5b936e5b936e1b92c370586e0b0dc1b72dc95b7256dc1b70dc1b72dc9b72dc1b70dc95b7056dc9b70dcff9b72dcf9b70dc9b72dc15b70586e0b0dc1b70dc95b726dcb71e586e4b0dc7fffffffff95fc658f8fffffffcafe2ffffff390a43390e42f2b90ce43908b12195c86721c86721c85e5721796243f2c4845890cae422b908e4390ce4290cae422b908e4390cb1217fffff962f92c5f3fffffffffe58be7ffffffffcb17cd5f2c0a266f813e066289b3a462529c5265e39c50512651a4ca61c96096631294bc632f1cbc731294bc630e30ae532b8c90f3158c38f32438ae33158c1b82b0e34a8491985f04929924630798c1e3079978c71498948121184847141589486289948665210a2462898a26581448aca432c0a2462890a2456289958a27e58144cb1f17ff963e23f8fe3f2c7c5e6dc3726dcb726dc370586e4db86e4db96e4b1c79b70dc9b72dc1b72dc1b72dc9b70dc1b72dc9b72dcf9b72dcf9b72dc95b70586e0db96e0b121162432b908b12115c865890cae43fff2c486572195c85e6dcb706dcb706dcb726dc37256dc15b7256dc9b70dc161b92c372586e4adb8ff36e1b936e5b8ff390a422b908ae422b908ae432b908e4390ce42908e4290ffcb1211c8521962422c484721486721c86572196242ff2bbe3cb17c15df058be4aef82bbe4b17c95df258be0b17c9df17c79df37c95df277cdf258be3fcef8be3caef82bbe7ce4390ce42908ae42390e43ff2c48457211c8721962432c485e721c845890bce43908e42908ae43f2b90cae422b908ae43f390e432b90cb121e11a244c8532310ce157e3496d8d93103fcc48c61f831931cad5270ae8192a1276cb51950b27064a9958b034403a095cd245b3b7114c8a46353c2ce1fffbd2c4ea83f37d5cce0ff6d7c60934de41cd6691444353298d52a832342b64c8a324908d5644353aa8444a1cf46b3f9a6506a968b563fea8af41bb1a648798f1e63c898c266f07155e133b3428486c913c33670cf9a295866cf19e39485681a081a081a1e129c677e57e1a07cacd338ad120ecd23499f1de8cc44d0f8ce46e19e819c990a0fe52909c5101a089f871a3e54287b64d19551340e34117fed19e91222672049f133f1b24748b928d4a8f709b9371d2478a3a26e891e375d22fc75f375b28f33ce909bd76cecbc9301f81dc82ceab0a9713b93676594f58edb49da3bef3c2f3bb03b6b1cbdf772e8cf0b4730257481e26ecdc70de789b62ab46d344ae916a6e3981b8f916a586c6b29d8d916c6f3a6eb84df9bed5b98379ee61f52c72bd3d3dc87e821ca177e00791c393b87227f2cd69c7ddc7a067703cc3b0ee47dafcbe61fbad63ee01800661f807c0111c7079e00600181e7819600647aa47e30c10cc641634bbb8df69a30a24cd04093289c8cae19347bb8e0aea368b28d8ea232684cca8573291ccd40a33350ecc624a30995cd890738837cd083103010c969c366b18d326230e03d1b0c1a1c317908ca25031f8502c0b2c898684248150e4120d48b4e061269366e3a6e4269a868803069b4e9c149d4e930374461238afa008c638402091a80889ac8840afd213404097154d5215a622b3ded69d6804b9a641a640282a5500d598d64c98100a470c870a802590fcd274de84d350cb014ba7df57e00281aa52ce5e2c55733dceccb1da81986f825237da3552354c4d752de4b60161a862611a68063251aa618a71c381bcaa78ad160060880a19d761ac460168cb38280a22ba4826407294a76971400b370db81204d8111b8f344f102a8e2e36a8dae0369545055d5692f2ca619932e67782e235a17eb5aa3a58661da90d3b4ca588b5d4e50214d093204b8ac74401342cd035225f635d0f3639a0ba51c4e648a6f9554c0b385ced7393cb8cf34a6970a6b5ba5a6ed5a5a5d534bad56954bad5594cb6f5694cb795a354dda58cd3674b19b3a954bad56954bad5594cb7095592028b51774bdc5f541a2a0287884f4281658d330cc64c37028f90c0237c00d19e686807c2e76e46b7a60fc415882830e5341837c7077c6a1e61ac1664858156418b18fffbd2c4f28234520cec0e67178619bf8c199c3fa82898c416f157c0b2aa1a08eb2a42498c798ab00190bb440d8a34055cca2823337443517315c0a3e43008df023463a6680c44a04145d541a56555050f50c51751550e50d5165655505575344d90148c4b04b844f2580cbc28c30941d0128808c0c28a9890e38611942802e5abb7325d56e5d9a765618b8414088443052520e8c4002e3913005532a0c5b0af083a29c02e4d0e01ac3546c3805c20892c065e166015260121a3178ad6bb7265da54a5c10a804031921214708210972048e1862c885c42852520e8c4422dda0115e3427f6028360882dea6429528dc91a8ec94a92891e98050305180050a985124a81d488085970e60634c20061c54c4871c3084a5a82dfa5123ea732c0a8f2db5805575e0d11b0ae972bcbb522ad2a5c49513d288a9280bb96c32d04749fc894c24d10a7523635c282d52c08ee9955ca55d2fae14ec0c70e94c414d45332e3130305555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555";
2347
- var Xi = Object.defineProperty, R = (s, e, t, a) => {
2348
- for (var n = void 0, o = s.length - 1, c; o >= 0; o--)
2349
- (c = s[o]) && (n = c(e, t, n) || n);
2347
+ var Xi = Object.defineProperty, R = (i, e, t, a) => {
2348
+ for (var n = void 0, o = i.length - 1, c; o >= 0; o--)
2349
+ (c = i[o]) && (n = c(e, t, n) || n);
2350
2350
  return n && Xi(e, t, n), n;
2351
2351
  };
2352
- const T = Ne.noConflict();
2353
- T.setLevel("info");
2352
+ const $ = Ne.noConflict();
2353
+ $.setLevel("info");
2354
2354
  const ne = "cb_";
2355
2355
  class q extends Pt {
2356
2356
  constructor() {
@@ -2358,8 +2358,8 @@ class q extends Pt {
2358
2358
  }
2359
2359
  // this is called at startup
2360
2360
  setSetting(e) {
2361
- T.info("appState: Startup: setSetting", e), this.setting = e, this.initBot().catch((t) => {
2362
- T.info(`Exception during bot initialization: ${t.message}`);
2361
+ $.info("appState: Startup: setSetting", e), this.setting = e, this.initBot().catch((t) => {
2362
+ $.info(`Exception during bot initialization: ${t.message}`);
2363
2363
  });
2364
2364
  }
2365
2365
  // set language
@@ -2374,7 +2374,7 @@ class q extends Pt {
2374
2374
  async initBot() {
2375
2375
  if (!this.botSettingsInitialized) {
2376
2376
  const a = `${this.setting.url.startsWith("localhost") ? "http" : "https"}://${this.setting.url}/api/bot/settings/${this.setting.orgId}/${this.setting.botId}`;
2377
- T.info(`Getting bot settings at ${a} ...`);
2377
+ $.info(`Getting bot settings at ${a} ...`);
2378
2378
  let n = null, o = null;
2379
2379
  try {
2380
2380
  n = await fetch(a, {
@@ -2384,13 +2384,13 @@ class q extends Pt {
2384
2384
  "X-Enegel-Signature": this.setting.botId
2385
2385
  //"ngrok-skip-browser-warning": "1",
2386
2386
  }
2387
- }), !n.ok || n.status !== 200 ? T.error(`Failed to get bot ${this.setting.botId} settings: ${n.status} ${n.statusText}`) : o = await n.json();
2387
+ }), !n.ok || n.status !== 200 ? $.error(`Failed to get bot ${this.setting.botId} settings: ${n.status} ${n.statusText}`) : o = await n.json();
2388
2388
  } catch (c) {
2389
- T.error(`Failed to get bot ${this.setting.botId} settings: ${c.message}`), o = null;
2389
+ $.error(`Failed to get bot ${this.setting.botId} settings: ${c.message}`), o = null;
2390
2390
  }
2391
2391
  if (this.botSettingsInitialized = !0, this.botSettings = o, !o) {
2392
- if (T.error(`Unable to retrieve bot settings - bot disabled. Retry in ${this.botSettingsRetryTimeout} seconds.`), this.disabled = !0, this.botSettingsRetryTimeout > 80) {
2393
- T.error("Failed to retrieve bot settings - bot disabled. Retries exhausted. Refresh page to attempt again.");
2392
+ if ($.error(`Unable to retrieve bot settings - bot disabled. Retry in ${this.botSettingsRetryTimeout} seconds.`), this.disabled = !0, this.botSettingsRetryTimeout > 80) {
2393
+ $.error("Failed to retrieve bot settings - bot disabled. Retries exhausted. Refresh page to attempt again.");
2394
2394
  return;
2395
2395
  }
2396
2396
  this.botSettingsInitialized = !1, setTimeout(async () => {
@@ -2398,17 +2398,17 @@ class q extends Pt {
2398
2398
  }, this.botSettingsRetryTimeout * 1e3), this.botSettingsRetryTimeout = this.botSettingsRetryTimeout * 2;
2399
2399
  return;
2400
2400
  }
2401
- T.info("Got bot settings - bot is enabled", o), this.disabled = !1, this.setting.welcomeMessage = o?.welcomeMessage || "How can I help ?", this.setting.disclaimerMessage = o?.disclaimerMessage && o.disclaimerMessage !== "" ? o.disclaimerMessage : null, this.setting.engageMessage = o?.engageMessage || "How can I help ?", this.setting.engageTimeout = o?.engageTimeout || 5, this.setting.splitMessagesAtBreak = "splitMessagesAtBreak" in o ? o.splitMessagesAtBreak : !1, this.setting.feedbackEnabled = "feedbackEnabled" in o ? o.feedbackEnabled : !1, this.setting.uploadImages = "uploadImages" in o ? o.uploadImages : !1, this.setting.newConversationTimeoutInSec = o?.newConversationTimeoutInSec || 86400, this.setting.enableNotificationSound = "enableNotificationSound" in o ? o.enableNotificationSound : !0, this.setting.botAdvancedSettings = o?.botAdvancedSettings ?? {}, this.setting.startFeedbackFromMessage = "startFeedbackFromMessage" in this.setting.botAdvancedSettings ? this.setting.botAdvancedSettings.startFeedbackFromMessage : 1, this.setting.enableMultiModalConnection = this.setting.botAdvancedSettings?.enableMultiModalConnection ?? !1, this.setting.enableMultiModalConnection ? this.setting.enableAudio = !0 : this.setting.enableAudio = !1, this.initConversation(), this.shouldEngage === "true" && setTimeout(() => {
2401
+ $.info("Got bot settings - bot is enabled", o), this.disabled = !1, this.setting.welcomeMessage = o?.welcomeMessage || "How can I help ?", this.setting.disclaimerMessage = o?.disclaimerMessage && o.disclaimerMessage !== "" ? o.disclaimerMessage : null, this.setting.engageMessage = o?.engageMessage || "How can I help ?", this.setting.engageTimeout = o?.engageTimeout || 5, this.setting.splitMessagesAtBreak = "splitMessagesAtBreak" in o ? o.splitMessagesAtBreak : !1, this.setting.feedbackEnabled = "feedbackEnabled" in o ? o.feedbackEnabled : !1, this.setting.uploadImages = "uploadImages" in o ? o.uploadImages : !1, this.setting.newConversationTimeoutInSec = o?.newConversationTimeoutInSec || 86400, this.setting.enableNotificationSound = "enableNotificationSound" in o ? o.enableNotificationSound : !0, this.setting.botAdvancedSettings = o?.botAdvancedSettings ?? {}, this.setting.startFeedbackFromMessage = "startFeedbackFromMessage" in this.setting.botAdvancedSettings ? this.setting.botAdvancedSettings.startFeedbackFromMessage : 1, this.setting.enableMultiModalConnection = this.setting.botAdvancedSettings?.enableMultiModalConnection ?? !1, this.setting.enableMultiModalConnection ? this.setting.enableAudio = !0 : this.setting.enableAudio = !1, this.initConversation(), this.shouldEngage === "true" && setTimeout(() => {
2402
2402
  this.showEngagePopup();
2403
2403
  }, this.setting.engageTimeout * 1e3);
2404
2404
  }
2405
2405
  const e = new URLSearchParams(window.location.search);
2406
2406
  if (e.has("c7o_bot_open")) {
2407
2407
  const t = e.get("c7o_bot_open");
2408
- this.open = t !== "false" && t !== "no" && t !== "0", T.info(`C7O-BOT:INIT: Force open=${this.open} from query parameter c7o_bot_open=${e.get("c7o_bot_open")}`);
2408
+ this.open = t !== "false" && t !== "no" && t !== "0", $.info(`C7O-BOT:INIT: Force open=${this.open} from query parameter c7o_bot_open=${e.get("c7o_bot_open")}`);
2409
2409
  }
2410
- this.connectWs === "true" && (T.info("appState: connectWs is true"), this.getWsClient().catch((t) => {
2411
- T.error(`Exception during ws client startup: ${t.message}`);
2410
+ this.connectWs === "true" && ($.info("appState: connectWs is true"), this.getWsClient().catch((t) => {
2411
+ $.error(`Exception during ws client startup: ${t.message}`);
2412
2412
  })), setTimeout(() => {
2413
2413
  window.dispatchEvent(
2414
2414
  new CustomEvent("c7o:bot:stateEvent", {
@@ -2486,7 +2486,7 @@ class q extends Pt {
2486
2486
  }
2487
2487
  // When finished playing audio, clear trackId and send mark message
2488
2488
  async onPlaybackEnded() {
2489
- this.webAudioCurrentMark && (T.info(`c7o: mark ${this.webAudioCurrentMark} completed`), await this.sendEvent({
2489
+ this.webAudioCurrentMark && ($.info(`c7o: mark ${this.webAudioCurrentMark} completed`), await this.sendEvent({
2490
2490
  id: ce(),
2491
2491
  type: "mediaMark",
2492
2492
  mark: {
@@ -2498,7 +2498,7 @@ class q extends Pt {
2498
2498
  if (!e || e?.type !== "media" || !e?.media || e?.mediaType !== "audio" || !e?.media?.payload || !this.webAudioProcessor || !this.webAudioStarted)
2499
2499
  return;
2500
2500
  const t = e.media.payload;
2501
- this.webAudioTrackId || (this.webAudioTrackId = ce()), T.info(`Playing audio: ${t.length} bytes, trackId: ${this.webAudioTrackId}`), await this.webAudioProcessor.playAudio(t, this.webAudioTrackId);
2501
+ this.webAudioTrackId || (this.webAudioTrackId = ce()), $.info(`Playing audio: ${t.length} bytes, trackId: ${this.webAudioTrackId}`), await this.webAudioProcessor.playAudio(t, this.webAudioTrackId);
2502
2502
  }
2503
2503
  /*
2504
2504
  {
@@ -2510,10 +2510,10 @@ class q extends Pt {
2510
2510
  */
2511
2511
  // +++
2512
2512
  async handleMediaMark(e) {
2513
- !this.webAudioProcessor || !this.webAudioStarted || (this.webAudioCurrentMark = e?.mark?.name || null, T.info(`c7o: Current media mark set to ${this.webAudioCurrentMark}`, e));
2513
+ !this.webAudioProcessor || !this.webAudioStarted || (this.webAudioCurrentMark = e?.mark?.name || null, $.info(`c7o: Current media mark set to ${this.webAudioCurrentMark}`, e));
2514
2514
  }
2515
2515
  async handleMediaClear(e) {
2516
- T.info("c7o: Got mediaClear, clearing buffered media", e), !(!this.webAudioProcessor || !this.webAudioStarted) && (this.webAudioTrackId = null, await this.webAudioProcessor.interruptAudio());
2516
+ $.info("c7o: Got mediaClear, clearing buffered media", e), !(!this.webAudioProcessor || !this.webAudioStarted) && (this.webAudioTrackId = null, await this.webAudioProcessor.interruptAudio());
2517
2517
  }
2518
2518
  // ////////////////////////////////////////////////////////////
2519
2519
  setPrefilledFormFields(e) {
@@ -2536,7 +2536,7 @@ class q extends Pt {
2536
2536
  return;
2537
2537
  const e = await this.getWsClient();
2538
2538
  if (!e) {
2539
- T.error("Error - failed to obtain ws client");
2539
+ $.error("Error - failed to obtain ws client");
2540
2540
  return;
2541
2541
  }
2542
2542
  const t = {
@@ -2544,7 +2544,7 @@ class q extends Pt {
2544
2544
  type: "setContext",
2545
2545
  contextData: this.context
2546
2546
  };
2547
- e.sendMessage(t), T.info("Sent context:", this.context);
2547
+ e.sendMessage(t), $.info("Sent context:", this.context);
2548
2548
  }
2549
2549
  getContext() {
2550
2550
  return this.context;
@@ -2553,20 +2553,20 @@ class q extends Pt {
2553
2553
  this.context = {}, this.currentLoadContext = {};
2554
2554
  }
2555
2555
  initStartupForm() {
2556
- const e = Tt(null, ["startupForm"], this.botSettings);
2556
+ const e = $t(null, ["startupForm"], this.botSettings);
2557
2557
  if (!e || !e?.name) {
2558
- T.info("Startup form not present");
2558
+ $.info("Startup form not present");
2559
2559
  return;
2560
2560
  }
2561
2561
  this.initForm(e);
2562
2562
  }
2563
2563
  initForm(e = null) {
2564
- const t = e, a = Tt(null, ["name"], e);
2564
+ const t = e, a = $t(null, ["name"], e);
2565
2565
  if (!t || !a)
2566
2566
  return;
2567
- const n = Tt(null, ["fields"], e);
2567
+ const n = $t(null, ["fields"], e);
2568
2568
  if (!Array.isArray(n) || n.length <= 0) {
2569
- T.info("form has no fields", e);
2569
+ $.info("form has no fields", e);
2570
2570
  return;
2571
2571
  }
2572
2572
  const o = `${ne}${this.setting.botId}.${this.conversationId}.form.${a}`, c = localStorage.getItem(o);
@@ -2575,11 +2575,11 @@ class q extends Pt {
2575
2575
  try {
2576
2576
  p = JSON.parse(c);
2577
2577
  } catch (v) {
2578
- T.error(`Failed to parse stored form data: ${v.message}`), p = null;
2578
+ $.error(`Failed to parse stored form data: ${v.message}`), p = null;
2579
2579
  }
2580
2580
  if (p) {
2581
2581
  this.sendFormData(a, p).catch((v) => {
2582
- T.error(`Error when submitting form: ${v.message}`);
2582
+ $.error(`Error when submitting form: ${v.message}`);
2583
2583
  });
2584
2584
  return;
2585
2585
  }
@@ -2590,7 +2590,7 @@ class q extends Pt {
2590
2590
  this.engage = !1, this.shouldEngage = "false";
2591
2591
  }
2592
2592
  showEngagePopup() {
2593
- this.open || (T.info("Engaging User !"), this.engage = !0, this.playAudioNotification());
2593
+ this.open || ($.info("Engaging User !"), this.engage = !0, this.playAudioNotification());
2594
2594
  }
2595
2595
  playAudioNotification() {
2596
2596
  if (!this.setting.enableNotificationSound)
@@ -2614,7 +2614,7 @@ class q extends Pt {
2614
2614
  if (this.wsClient)
2615
2615
  return this.wsClient;
2616
2616
  let t = `${this.setting.url.startsWith("localhost") ? "ws" : "wss"}://${this.setting.url}/api/bot/connect/${this.setting.orgId}/${this.setting.botId}/${this.conversationId}`;
2617
- return this.setting.enableMultiModalConnection && (t += "?multiModal=true", T.info("MultiModal connection enabled - adding multiModal=true parameter")), T.info(`Initiating ws connection to ${t} ...`), this.wsClient = new Ii({
2617
+ return this.setting.enableMultiModalConnection && (t += "?multiModal=true", $.info("MultiModal connection enabled - adding multiModal=true parameter")), $.info(`Initiating ws connection to ${t} ...`), this.wsClient = new Ii({
2618
2618
  url: t,
2619
2619
  orgId: this.setting.orgId,
2620
2620
  botId: this.setting.botId,
@@ -2628,7 +2628,7 @@ class q extends Pt {
2628
2628
  }), await this.wsClient.start(), this.connectWs = "true", this.wsClient;
2629
2629
  }
2630
2630
  handleWscConnecting(e) {
2631
- T.info(`WSC: on connecting(${e}), connected: ${this.wsClient?.connected}`), this.connecting = e, !this.connecting && this.wsClient?.connected ? (this.connected = !0, this.context && typeof this.context == "object" && Object.keys(this.context).length > 0 && this.wsClient.queueMessage(
2631
+ $.info(`WSC: on connecting(${e}), connected: ${this.wsClient?.connected}`), this.connecting = e, !this.connecting && this.wsClient?.connected ? (this.connected = !0, this.context && typeof this.context == "object" && Object.keys(this.context).length > 0 && this.wsClient.queueMessage(
2632
2632
  {
2633
2633
  id: ce(),
2634
2634
  type: "setContext",
@@ -2645,7 +2645,7 @@ class q extends Pt {
2645
2645
  }
2646
2646
  // Update typing state based on received message
2647
2647
  updateTypingState(e) {
2648
- this.typingActive ? e && ["message", "message-chunk", "media", "typing-stopped"].includes(e?.type) && (this.typingActive = !1, T.info("c7o: typing stopped")) : e && e?.type === "typing" && (this.typingActive = !0, T.info("c7o: typing started"));
2648
+ this.typingActive ? e && ["message", "message-chunk", "media", "typing-stopped"].includes(e?.type) && (this.typingActive = !1, $.info("c7o: typing stopped")) : e && e?.type === "typing" && (this.typingActive = !0, $.info("c7o: typing started"));
2649
2649
  }
2650
2650
  handleWscMessage(e) {
2651
2651
  if (e?.type === "ack")
@@ -2733,7 +2733,7 @@ class q extends Pt {
2733
2733
  //{"type":"agent-connected","author":"assistant","userName":"SF DEV ADMIN"}
2734
2734
  //{"type":"agent-disconnected","author":"assistant","userName":"SF DEV ADMIN"}
2735
2735
  case "form": {
2736
- if (T.info("Got form:", e), this.replyMessage && this.replyMessage.id) {
2736
+ if ($.info("Got form:", e), this.replyMessage && this.replyMessage.id) {
2737
2737
  const a = this.replyMessage.data?.text || "";
2738
2738
  (this.replyMessage.isThinking || a.trim() === "") && (this.removeMessage(this.replyMessage.id), this.replyMessage = null);
2739
2739
  }
@@ -2769,7 +2769,7 @@ class q extends Pt {
2769
2769
  if (e !== -1)
2770
2770
  if (this.setting.splitMessagesAtBreak) {
2771
2771
  const t = this.streamingResponseBuffer.substring(0, e).trim(), a = this.streamingResponseBuffer.substring(e + 4).trim();
2772
- (t !== "" || this.replyMessage?.data?.text !== "") && (T.info(`BREAK: Splitting the message: ${this.streamingResponseBuffer} >>> prev: ${t} next: ${a}`), this.replyMessage = this.updateMessage(this.replyMessage, t), this.replyMessage = { author: "assistant", type: "text", isThinking: !1, data: { text: a } }, this.addMessage(this.replyMessage));
2772
+ (t !== "" || this.replyMessage?.data?.text !== "") && ($.info(`BREAK: Splitting the message: ${this.streamingResponseBuffer} >>> prev: ${t} next: ${a}`), this.replyMessage = this.updateMessage(this.replyMessage, t), this.replyMessage = { author: "assistant", type: "text", isThinking: !1, data: { text: a } }, this.addMessage(this.replyMessage));
2773
2773
  } else
2774
2774
  this.replyMessage = this.updateMessage(this.replyMessage, this.streamingResponseBuffer);
2775
2775
  this.streamingResponseBuffer = null, this.streamingResponseTagStartPos = 0, this.streamingResponseCurrentTag = null;
@@ -2778,11 +2778,11 @@ class q extends Pt {
2778
2778
  if (!this.streamingResponseBuffer || !this.replyMessage)
2779
2779
  return;
2780
2780
  if (this.streamingResponseBuffer.indexOf("![") === -1) {
2781
- T.info(`NOT IMG TAG: ${this.streamingResponseBuffer}`), this.replyMessage = this.updateMessage(this.replyMessage, this.streamingResponseBuffer), this.streamingResponseBuffer = null, this.streamingResponseCurrentTag = null;
2781
+ $.info(`NOT IMG TAG: ${this.streamingResponseBuffer}`), this.replyMessage = this.updateMessage(this.replyMessage, this.streamingResponseBuffer), this.streamingResponseBuffer = null, this.streamingResponseCurrentTag = null;
2782
2782
  return;
2783
2783
  }
2784
2784
  const e = this.streamingResponseBuffer.lastIndexOf("]"), t = this.streamingResponseBuffer.lastIndexOf(")");
2785
- e === -1 || t === -1 || e > t || (T.info(`IMG TAG END: ${this.streamingResponseBuffer}`), this.isValidImageLink(this.streamingResponseBuffer) && (this.replyMessage = this.updateMessage(this.replyMessage, this.streamingResponseBuffer)), this.streamingResponseBuffer = null, this.streamingResponseCurrentTag = null);
2785
+ e === -1 || t === -1 || e > t || ($.info(`IMG TAG END: ${this.streamingResponseBuffer}`), this.isValidImageLink(this.streamingResponseBuffer) && (this.replyMessage = this.updateMessage(this.replyMessage, this.streamingResponseBuffer)), this.streamingResponseBuffer = null, this.streamingResponseCurrentTag = null);
2786
2786
  }
2787
2787
  isValidImageLink(e = "") {
2788
2788
  return !(e.indexOf("example.com") !== -1 || e.indexOf("imgur.com") !== -1 || e.indexOf("attachment:") !== -1);
@@ -2802,7 +2802,7 @@ class q extends Pt {
2802
2802
  this.streamingResponseBuffer = e, this.streamingResponseTagStartPos = e.indexOf("<"), this.streamingResponseCurrentTag = "br";
2803
2803
  return;
2804
2804
  } else if (e.indexOf("![") !== -1 || e.endsWith("!")) {
2805
- this.streamingResponseBuffer = e, this.streamingResponseCurrentTag = "img", T.info(`IMG TAG START: ${this.streamingResponseBuffer}`);
2805
+ this.streamingResponseBuffer = e, this.streamingResponseCurrentTag = "img", $.info(`IMG TAG START: ${this.streamingResponseBuffer}`);
2806
2806
  return;
2807
2807
  }
2808
2808
  this.streamingResponseLastText = t, this.replyMessage = this.updateMessage(this.replyMessage, t);
@@ -2858,7 +2858,7 @@ class q extends Pt {
2858
2858
  detail: p
2859
2859
  })
2860
2860
  ), this.sendActionCompleted(p).catch((v) => {
2861
- T.error(`Error: failed to send action completed: ${v.message}`);
2861
+ $.error(`Error: failed to send action completed: ${v.message}`);
2862
2862
  });
2863
2863
  }
2864
2864
  this.actions.splice(n, 1);
@@ -2876,10 +2876,10 @@ class q extends Pt {
2876
2876
  }
2877
2877
  }
2878
2878
  async sendMessage(e) {
2879
- e = this.formatMessage(e), T.info("Send Message:", e), this.messages = this.messages.concat([e]), this.lastConversationUpdate = Date.now();
2879
+ e = this.formatMessage(e), $.info("Send Message:", e), this.messages = this.messages.concat([e]), this.lastConversationUpdate = Date.now();
2880
2880
  const t = await this.getWsClient();
2881
2881
  if (!t) {
2882
- T.error("Error - failed to obtain ws client"), this.replyMessage = null;
2882
+ $.error("Error - failed to obtain ws client"), this.replyMessage = null;
2883
2883
  return;
2884
2884
  }
2885
2885
  t.sendMessage({
@@ -2925,7 +2925,7 @@ class q extends Pt {
2925
2925
  // Submit current form data
2926
2926
  async submitForm(e) {
2927
2927
  if (!this.form) {
2928
- T.info("submitForm: No form is active - ignored");
2928
+ $.info("submitForm: No form is active - ignored");
2929
2929
  return;
2930
2930
  }
2931
2931
  const t = `${ne}${this.setting.botId}.${this.conversationId}.form.${this.form.name}`;
@@ -2934,7 +2934,7 @@ class q extends Pt {
2934
2934
  async sendFormData(e, t) {
2935
2935
  const a = await this.getWsClient();
2936
2936
  if (!a) {
2937
- T.error("Error - failed to obtain ws client");
2937
+ $.error("Error - failed to obtain ws client");
2938
2938
  return;
2939
2939
  }
2940
2940
  a.sendMessage({
@@ -2946,7 +2946,7 @@ class q extends Pt {
2946
2946
  async sendActionCompleted(e) {
2947
2947
  const t = await this.getWsClient();
2948
2948
  if (!t) {
2949
- T.error("Error - failed to obtain ws client");
2949
+ $.error("Error - failed to obtain ws client");
2950
2950
  return;
2951
2951
  }
2952
2952
  t.sendMessage({
@@ -2957,7 +2957,7 @@ class q extends Pt {
2957
2957
  async sendEvent(e) {
2958
2958
  const t = await this.getWsClient();
2959
2959
  if (!t) {
2960
- T.error("Error - failed to obtain ws client");
2960
+ $.error("Error - failed to obtain ws client");
2961
2961
  return;
2962
2962
  }
2963
2963
  t.sendMessage(e);
@@ -2970,10 +2970,10 @@ class q extends Pt {
2970
2970
  this.feedbackMessages.push(t), this.feedbackUserMessage = this.messages.findLast((a) => a.id === t.replyId)?.data?.text || "", this.feedbackAnswer = t?.data.text || "", this.feedbackAnswerMessageId = t?.id || "", this.feedbackAnswerUserName = t?.data.userName || "", this.feedback = !0;
2971
2971
  }
2972
2972
  async submitFeedback(e, t, a) {
2973
- T.info(`submitFeedback: ${this.feedbackScore}`), this.feedbackName = e, this.feedbackEmail = t;
2973
+ $.info(`submitFeedback: ${this.feedbackScore}`), this.feedbackName = e, this.feedbackEmail = t;
2974
2974
  const n = await this.getWsClient();
2975
2975
  if (!n) {
2976
- T.error("Error - failed to obtain ws client"), this.replyMessage = null;
2976
+ $.error("Error - failed to obtain ws client"), this.replyMessage = null;
2977
2977
  return;
2978
2978
  }
2979
2979
  n.sendMessage({
@@ -3015,10 +3015,10 @@ class q extends Pt {
3015
3015
  async uploadFiles(e) {
3016
3016
  if (!e?.length) return;
3017
3017
  const t = await this.filesToBase64(e);
3018
- T.info("Uploading files:", t);
3018
+ $.info("Uploading files:", t);
3019
3019
  const a = await this.getWsClient();
3020
3020
  if (!a) {
3021
- T.error("Error - failed to obtain ws client");
3021
+ $.error("Error - failed to obtain ws client");
3022
3022
  return;
3023
3023
  }
3024
3024
  const n = ce();
@@ -3038,6 +3038,13 @@ class q extends Pt {
3038
3038
  };
3039
3039
  this.addMessage(o);
3040
3040
  }
3041
+ notifyWidgetOpenState() {
3042
+ this.wsClient && this.wsClient.sendMessage({
3043
+ id: ce(),
3044
+ type: "widgetState",
3045
+ open: this.open
3046
+ });
3047
+ }
3041
3048
  }
3042
3049
  R([
3043
3050
  le({ prefix: ne }),
@@ -3294,13 +3301,13 @@ const b = new q(), Gi = Z`
3294
3301
  display: inline;
3295
3302
  }
3296
3303
  `;
3297
- var Zi = Object.defineProperty, Ji = (s, e, t, a) => {
3298
- for (var n = void 0, o = s.length - 1, c; o >= 0; o--)
3299
- (c = s[o]) && (n = c(e, t, n) || n);
3304
+ var Zi = Object.defineProperty, Ji = (i, e, t, a) => {
3305
+ for (var n = void 0, o = i.length - 1, c; o >= 0; o--)
3306
+ (c = i[o]) && (n = c(e, t, n) || n);
3300
3307
  return n && Zi(e, t, n), n;
3301
3308
  };
3302
3309
  di("system", {
3303
- resolver: (s) => ""
3310
+ resolver: (i) => ""
3304
3311
  });
3305
3312
  (() => {
3306
3313
  try {
@@ -3323,13 +3330,25 @@ class ae extends At {
3323
3330
  });
3324
3331
  return window.dispatchEvent(a), a;
3325
3332
  }
3333
+ // [sv2] 10/19/25 Emit external event on both window and element itself. See above.
3334
+ // Make sure listeners set up on the element itself can also receive the event, as well as it can be listened on window.
3335
+ emitExt(e, t = {}) {
3336
+ const a = new CustomEvent(e, {
3337
+ bubbles: !0,
3338
+ cancelable: !1,
3339
+ composed: !0,
3340
+ detail: {},
3341
+ ...t
3342
+ });
3343
+ return this.dispatchEvent(a), a;
3344
+ }
3326
3345
  }
3327
3346
  Ji([
3328
3347
  x({ type: String })
3329
3348
  ], ae.prototype, "lang");
3330
- var Ki = Object.defineProperty, Qi = Object.getOwnPropertyDescriptor, $a = (s, e, t, a) => {
3331
- for (var n = a > 1 ? void 0 : a ? Qi(e, t) : e, o = s.length - 1, c; o >= 0; o--)
3332
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
3349
+ var Ki = Object.defineProperty, Qi = Object.getOwnPropertyDescriptor, Ea = (i, e, t, a) => {
3350
+ for (var n = a > 1 ? void 0 : a ? Qi(e, t) : e, o = i.length - 1, c; o >= 0; o--)
3351
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
3333
3352
  return a && n && Ki(e, t, n), n;
3334
3353
  };
3335
3354
  const es = '<svg viewBox="0 0 16 16" width="16px" height="16px"><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 8z"></path></svg>';
@@ -3396,10 +3415,10 @@ let vt = class extends ae {
3396
3415
  }
3397
3416
  };
3398
3417
  vt.styles = Gi;
3399
- $a([
3418
+ Ea([
3400
3419
  x({ type: String, attribute: "title" })
3401
3420
  ], vt.prototype, "title", 2);
3402
- vt = $a([
3421
+ vt = Ea([
3403
3422
  J("cb-header")
3404
3423
  ], vt);
3405
3424
  const ts = Z`
@@ -3417,9 +3436,9 @@ const ts = Z`
3417
3436
  color: var(--primary-color);
3418
3437
  }
3419
3438
  `;
3420
- var as = Object.getOwnPropertyDescriptor, is = (s, e, t, a) => {
3421
- for (var n = a > 1 ? void 0 : a ? as(e, t) : e, o = s.length - 1, c; o >= 0; o--)
3422
- (c = s[o]) && (n = c(n) || n);
3439
+ var as = Object.getOwnPropertyDescriptor, is = (i, e, t, a) => {
3440
+ for (var n = a > 1 ? void 0 : a ? as(e, t) : e, o = i.length - 1, c; o >= 0; o--)
3441
+ (c = i[o]) && (n = c(n) || n);
3423
3442
  return n;
3424
3443
  };
3425
3444
  let qt = class extends ae {
@@ -3665,23 +3684,23 @@ const ss = Z`
3665
3684
  `;
3666
3685
  var gt = { exports: {} }, ns = gt.exports, la;
3667
3686
  function rs() {
3668
- return la || (la = 1, function(s, e) {
3687
+ return la || (la = 1, function(i, e) {
3669
3688
  (function(t, a) {
3670
- s.exports = a();
3689
+ i.exports = a();
3671
3690
  })(ns, function() {
3672
- function t(i, r) {
3673
- if (!(i instanceof r)) throw new TypeError("Cannot call a class as a function");
3691
+ function t(s, r) {
3692
+ if (!(s instanceof r)) throw new TypeError("Cannot call a class as a function");
3674
3693
  }
3675
- function a(i, r) {
3694
+ function a(s, r) {
3676
3695
  for (var l = 0; l < r.length; l++) {
3677
3696
  var d = r[l];
3678
- d.enumerable = d.enumerable || !1, d.configurable = !0, "value" in d && (d.writable = !0), Object.defineProperty(i, o(d.key), d);
3697
+ d.enumerable = d.enumerable || !1, d.configurable = !0, "value" in d && (d.writable = !0), Object.defineProperty(s, o(d.key), d);
3679
3698
  }
3680
3699
  }
3681
- function n(i, r, l) {
3682
- return r && a(i.prototype, r), Object.defineProperty(i, "prototype", { writable: !1 }), i;
3700
+ function n(s, r, l) {
3701
+ return r && a(s.prototype, r), Object.defineProperty(s, "prototype", { writable: !1 }), s;
3683
3702
  }
3684
- function o(i) {
3703
+ function o(s) {
3685
3704
  var r = function(l, d) {
3686
3705
  if (typeof l != "object" || !l) return l;
3687
3706
  var f = l[Symbol.toPrimitive];
@@ -3691,133 +3710,133 @@ function rs() {
3691
3710
  throw new TypeError("@@toPrimitive must return a primitive value.");
3692
3711
  }
3693
3712
  return String(l);
3694
- }(i, "string");
3713
+ }(s, "string");
3695
3714
  return typeof r == "symbol" ? r : r + "";
3696
3715
  }
3697
- function c(i) {
3716
+ function c(s) {
3698
3717
  return (c = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(r) {
3699
3718
  return typeof r;
3700
3719
  } : function(r) {
3701
3720
  return r && typeof Symbol == "function" && r.constructor === Symbol && r !== Symbol.prototype ? "symbol" : typeof r;
3702
- })(i);
3721
+ })(s);
3703
3722
  }
3704
3723
  var p = Date.now();
3705
3724
  function v() {
3706
- var i = {}, r = !0, l = 0, d = arguments.length;
3725
+ var s = {}, r = !0, l = 0, d = arguments.length;
3707
3726
  Object.prototype.toString.call(arguments[0]) === "[object Boolean]" && (r = arguments[0], l++);
3708
3727
  for (var f = function(h) {
3709
- for (var m in h) Object.prototype.hasOwnProperty.call(h, m) && (r && Object.prototype.toString.call(h[m]) === "[object Object]" ? i[m] = v(!0, i[m], h[m]) : i[m] = h[m]);
3728
+ for (var m in h) Object.prototype.hasOwnProperty.call(h, m) && (r && Object.prototype.toString.call(h[m]) === "[object Object]" ? s[m] = v(!0, s[m], h[m]) : s[m] = h[m]);
3710
3729
  }; l < d; l++) {
3711
3730
  var g = arguments[l];
3712
3731
  f(g);
3713
3732
  }
3714
- return i;
3733
+ return s;
3715
3734
  }
3716
- function y(i, r) {
3717
- if ((W(i) || i === window || i === document) && (i = [i]), Je(i) || Le(i) || (i = [i]), Zt(i) != 0) {
3718
- if (Je(i) && !Le(i)) for (var l = i.length, d = 0; d < l && r.call(i[d], i[d], d, i) !== !1; d++) ;
3719
- else if (Le(i)) {
3720
- for (var f in i) if (K(i, f) && r.call(i[f], i[f], f, i) === !1) break;
3735
+ function y(s, r) {
3736
+ if ((W(s) || s === window || s === document) && (s = [s]), Je(s) || Le(s) || (s = [s]), Zt(s) != 0) {
3737
+ if (Je(s) && !Le(s)) for (var l = s.length, d = 0; d < l && r.call(s[d], s[d], d, s) !== !1; d++) ;
3738
+ else if (Le(s)) {
3739
+ for (var f in s) if (K(s, f) && r.call(s[f], s[f], f, s) === !1) break;
3721
3740
  }
3722
3741
  }
3723
3742
  }
3724
- function S(i) {
3725
- var r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null, l = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : null, d = i[p] = i[p] || [], f = { all: d, evt: null, found: null };
3743
+ function S(s) {
3744
+ var r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null, l = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : null, d = s[p] = s[p] || [], f = { all: d, evt: null, found: null };
3726
3745
  return r && l && Zt(d) > 0 && y(d, function(g, h) {
3727
3746
  if (g.eventName == r && g.fn.toString() == l.toString()) return f.found = !0, f.evt = h, !1;
3728
3747
  }), f;
3729
3748
  }
3730
- function w(i) {
3731
- var r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, l = r.onElement, d = r.withCallback, f = r.avoidDuplicate, g = f === void 0 || f, h = r.once, m = h !== void 0 && h, C = r.useCapture, k = C !== void 0 && C, M = arguments.length > 2 ? arguments[2] : void 0, $ = l || [];
3749
+ function w(s) {
3750
+ var r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, l = r.onElement, d = r.withCallback, f = r.avoidDuplicate, g = f === void 0 || f, h = r.once, m = h !== void 0 && h, C = r.useCapture, k = C !== void 0 && C, M = arguments.length > 2 ? arguments[2] : void 0, E = l || [];
3732
3751
  function z(B) {
3733
3752
  j(d) && d.call(M, B, this), m && z.destroy();
3734
3753
  }
3735
- return D($) && ($ = document.querySelectorAll($)), z.destroy = function() {
3736
- y($, function(B) {
3737
- var F = S(B, i, z);
3738
- F.found && F.all.splice(F.evt, 1), B.removeEventListener && B.removeEventListener(i, z, k);
3754
+ return D(E) && (E = document.querySelectorAll(E)), z.destroy = function() {
3755
+ y(E, function(B) {
3756
+ var F = S(B, s, z);
3757
+ F.found && F.all.splice(F.evt, 1), B.removeEventListener && B.removeEventListener(s, z, k);
3739
3758
  });
3740
- }, y($, function(B) {
3741
- var F = S(B, i, z);
3742
- (B.addEventListener && g && !F.found || !g) && (B.addEventListener(i, z, k), F.all.push({ eventName: i, fn: z }));
3759
+ }, y(E, function(B) {
3760
+ var F = S(B, s, z);
3761
+ (B.addEventListener && g && !F.found || !g) && (B.addEventListener(s, z, k), F.all.push({ eventName: s, fn: z }));
3743
3762
  }), z;
3744
3763
  }
3745
- function _(i, r) {
3764
+ function _(s, r) {
3746
3765
  y(r.split(" "), function(l) {
3747
- return i.classList.add(l);
3766
+ return s.classList.add(l);
3748
3767
  });
3749
3768
  }
3750
- function L(i, r) {
3769
+ function L(s, r) {
3751
3770
  y(r.split(" "), function(l) {
3752
- return i.classList.remove(l);
3771
+ return s.classList.remove(l);
3753
3772
  });
3754
3773
  }
3755
- function E(i, r) {
3756
- return i.classList.contains(r);
3774
+ function T(s, r) {
3775
+ return s.classList.contains(r);
3757
3776
  }
3758
- function A(i, r) {
3759
- for (; i !== document.body; ) {
3760
- if (!(i = i.parentElement)) return !1;
3761
- if (typeof i.matches == "function" ? i.matches(r) : i.msMatchesSelector(r)) return i;
3777
+ function A(s, r) {
3778
+ for (; s !== document.body; ) {
3779
+ if (!(s = s.parentElement)) return !1;
3780
+ if (typeof s.matches == "function" ? s.matches(r) : s.msMatchesSelector(r)) return s;
3762
3781
  }
3763
3782
  }
3764
- function P(i) {
3783
+ function P(s) {
3765
3784
  var r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "", l = arguments.length > 2 && arguments[2] !== void 0 && arguments[2];
3766
- if (!i || r === "") return !1;
3785
+ if (!s || r === "") return !1;
3767
3786
  if (r === "none") return j(l) && l(), !1;
3768
3787
  var d = It(), f = r.split(" ");
3769
3788
  y(f, function(g) {
3770
- _(i, "g" + g);
3771
- }), w(d, { onElement: i, avoidDuplicate: !1, once: !0, withCallback: function(g, h) {
3789
+ _(s, "g" + g);
3790
+ }), w(d, { onElement: s, avoidDuplicate: !1, once: !0, withCallback: function(g, h) {
3772
3791
  y(f, function(m) {
3773
3792
  L(h, "g" + m);
3774
3793
  }), j(l) && l();
3775
3794
  } });
3776
3795
  }
3777
- function I(i) {
3796
+ function I(s) {
3778
3797
  var r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
3779
- if (r === "") return i.style.webkitTransform = "", i.style.MozTransform = "", i.style.msTransform = "", i.style.OTransform = "", i.style.transform = "", !1;
3780
- i.style.webkitTransform = r, i.style.MozTransform = r, i.style.msTransform = r, i.style.OTransform = r, i.style.transform = r;
3798
+ if (r === "") return s.style.webkitTransform = "", s.style.MozTransform = "", s.style.msTransform = "", s.style.OTransform = "", s.style.transform = "", !1;
3799
+ s.style.webkitTransform = r, s.style.MozTransform = r, s.style.msTransform = r, s.style.OTransform = r, s.style.transform = r;
3781
3800
  }
3782
- function be(i) {
3783
- i.style.display = "block";
3801
+ function be(s) {
3802
+ s.style.display = "block";
3784
3803
  }
3785
- function Q(i) {
3786
- i.style.display = "none";
3804
+ function Q(s) {
3805
+ s.style.display = "none";
3787
3806
  }
3788
- function ie(i) {
3807
+ function ie(s) {
3789
3808
  var r = document.createDocumentFragment(), l = document.createElement("div");
3790
- for (l.innerHTML = i; l.firstChild; ) r.appendChild(l.firstChild);
3809
+ for (l.innerHTML = s; l.firstChild; ) r.appendChild(l.firstChild);
3791
3810
  return r;
3792
3811
  }
3793
3812
  function ee() {
3794
3813
  return { width: window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth, height: window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight };
3795
3814
  }
3796
3815
  function It() {
3797
- var i, r = document.createElement("fakeelement"), l = { animation: "animationend", OAnimation: "oAnimationEnd", MozAnimation: "animationend", WebkitAnimation: "webkitAnimationEnd" };
3798
- for (i in l) if (r.style[i] !== void 0) return l[i];
3816
+ var s, r = document.createElement("fakeelement"), l = { animation: "animationend", OAnimation: "oAnimationEnd", MozAnimation: "animationend", WebkitAnimation: "webkitAnimationEnd" };
3817
+ for (s in l) if (r.style[s] !== void 0) return l[s];
3799
3818
  }
3800
- function We(i, r, l, d) {
3801
- if (i()) r();
3819
+ function We(s, r, l, d) {
3820
+ if (s()) r();
3802
3821
  else {
3803
3822
  var f;
3804
3823
  l || (l = 100);
3805
3824
  var g = setInterval(function() {
3806
- i() && (clearInterval(g), f && clearTimeout(f), r());
3825
+ s() && (clearInterval(g), f && clearTimeout(f), r());
3807
3826
  }, l);
3808
3827
  }
3809
3828
  }
3810
- function nt(i, r, l) {
3811
- if (de(i)) console.error("Inject assets error");
3829
+ function nt(s, r, l) {
3830
+ if (de(s)) console.error("Inject assets error");
3812
3831
  else if (j(r) && (l = r, r = !1), D(r) && r in window) j(l) && l();
3813
3832
  else {
3814
3833
  var d;
3815
- if (i.indexOf(".css") !== -1) {
3816
- if ((d = document.querySelectorAll('link[href="' + i + '"]')) && d.length > 0) return void (j(l) && l());
3834
+ if (s.indexOf(".css") !== -1) {
3835
+ if ((d = document.querySelectorAll('link[href="' + s + '"]')) && d.length > 0) return void (j(l) && l());
3817
3836
  var f = document.getElementsByTagName("head")[0], g = f.querySelectorAll('link[rel="stylesheet"]'), h = document.createElement("link");
3818
- return h.rel = "stylesheet", h.type = "text/css", h.href = i, h.media = "all", g ? f.insertBefore(h, g[0]) : f.appendChild(h), void (j(l) && l());
3837
+ return h.rel = "stylesheet", h.type = "text/css", h.href = s, h.media = "all", g ? f.insertBefore(h, g[0]) : f.appendChild(h), void (j(l) && l());
3819
3838
  }
3820
- if ((d = document.querySelectorAll('script[src="' + i + '"]')) && d.length > 0) {
3839
+ if ((d = document.querySelectorAll('script[src="' + s + '"]')) && d.length > 0) {
3821
3840
  if (j(l)) {
3822
3841
  if (D(r)) return We(function() {
3823
3842
  return window[r] !== void 0;
@@ -3828,7 +3847,7 @@ function rs() {
3828
3847
  }
3829
3848
  } else {
3830
3849
  var m = document.createElement("script");
3831
- m.type = "text/javascript", m.src = i, m.onload = function() {
3850
+ m.type = "text/javascript", m.src = s, m.onload = function() {
3832
3851
  if (j(l)) {
3833
3852
  if (D(r)) return We(function() {
3834
3853
  return window[r] !== void 0;
@@ -3844,63 +3863,63 @@ function rs() {
3844
3863
  function Se() {
3845
3864
  return "navigator" in window && window.navigator.userAgent.match(/(iPad)|(iPhone)|(iPod)|(Android)|(PlayBook)|(BB10)|(BlackBerry)|(Opera Mini)|(IEMobile)|(webOS)|(MeeGo)/i);
3846
3865
  }
3847
- function j(i) {
3848
- return typeof i == "function";
3866
+ function j(s) {
3867
+ return typeof s == "function";
3849
3868
  }
3850
- function D(i) {
3851
- return typeof i == "string";
3869
+ function D(s) {
3870
+ return typeof s == "string";
3852
3871
  }
3853
- function W(i) {
3854
- return !(!i || !i.nodeType || i.nodeType != 1);
3872
+ function W(s) {
3873
+ return !(!s || !s.nodeType || s.nodeType != 1);
3855
3874
  }
3856
- function Oe(i) {
3857
- return Array.isArray(i);
3875
+ function Oe(s) {
3876
+ return Array.isArray(s);
3858
3877
  }
3859
- function Je(i) {
3860
- return i && i.length && isFinite(i.length);
3878
+ function Je(s) {
3879
+ return s && s.length && isFinite(s.length);
3861
3880
  }
3862
- function Le(i) {
3863
- return c(i) === "object" && i != null && !j(i) && !Oe(i);
3881
+ function Le(s) {
3882
+ return c(s) === "object" && s != null && !j(s) && !Oe(s);
3864
3883
  }
3865
- function de(i) {
3866
- return i == null;
3884
+ function de(s) {
3885
+ return s == null;
3867
3886
  }
3868
- function K(i, r) {
3869
- return i !== null && hasOwnProperty.call(i, r);
3887
+ function K(s, r) {
3888
+ return s !== null && hasOwnProperty.call(s, r);
3870
3889
  }
3871
- function Zt(i) {
3872
- if (Le(i)) {
3873
- if (i.keys) return i.keys().length;
3890
+ function Zt(s) {
3891
+ if (Le(s)) {
3892
+ if (s.keys) return s.keys().length;
3874
3893
  var r = 0;
3875
- for (var l in i) K(i, l) && r++;
3894
+ for (var l in s) K(s, l) && r++;
3876
3895
  return r;
3877
3896
  }
3878
- return i.length;
3897
+ return s.length;
3879
3898
  }
3880
- function rt(i) {
3881
- return !isNaN(parseFloat(i)) && isFinite(i);
3899
+ function rt(s) {
3900
+ return !isNaN(parseFloat(s)) && isFinite(s);
3882
3901
  }
3883
3902
  function Jt() {
3884
- var i = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : -1, r = document.querySelectorAll(".gbtn[data-taborder]:not(.disabled)");
3903
+ var s = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : -1, r = document.querySelectorAll(".gbtn[data-taborder]:not(.disabled)");
3885
3904
  if (!r.length) return !1;
3886
3905
  if (r.length == 1) return r[0];
3887
- typeof i == "string" && (i = parseInt(i));
3906
+ typeof s == "string" && (s = parseInt(s));
3888
3907
  var l = [];
3889
3908
  y(r, function(m) {
3890
3909
  l.push(m.getAttribute("data-taborder"));
3891
3910
  });
3892
3911
  var d = Math.max.apply(Math, l.map(function(m) {
3893
3912
  return parseInt(m);
3894
- })), f = i < 0 ? 1 : i + 1;
3913
+ })), f = s < 0 ? 1 : s + 1;
3895
3914
  f > d && (f = "1");
3896
3915
  var g = l.filter(function(m) {
3897
3916
  return m >= parseInt(f);
3898
3917
  }), h = g.sort()[0];
3899
3918
  return document.querySelector('.gbtn[data-taborder="'.concat(h, '"]'));
3900
3919
  }
3901
- function Wa(i) {
3902
- if (i.events.hasOwnProperty("keyboard")) return !1;
3903
- i.events.keyboard = w("keydown", { onElement: window, withCallback: function(r, l) {
3920
+ function Wa(s) {
3921
+ if (s.events.hasOwnProperty("keyboard")) return !1;
3922
+ s.events.keyboard = w("keydown", { onElement: window, withCallback: function(r, l) {
3904
3923
  var d = (r = r || window.event).keyCode;
3905
3924
  if (d == 9) {
3906
3925
  var f = document.querySelector(".gbtn.focused");
@@ -3918,12 +3937,12 @@ function rs() {
3918
3937
  var C = Jt(f.getAttribute("data-taborder"));
3919
3938
  L(f, "focused"), C && (C.focus(), _(C, "focused"));
3920
3939
  }
3921
- d == 39 && i.nextSlide(), d == 37 && i.prevSlide(), d == 27 && i.close();
3940
+ d == 39 && s.nextSlide(), d == 37 && s.prevSlide(), d == 27 && s.close();
3922
3941
  } });
3923
3942
  }
3924
- var Ya = n(function i(r, l) {
3943
+ var Ya = n(function s(r, l) {
3925
3944
  var d = this, f = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : null;
3926
- if (t(this, i), this.img = r, this.slide = l, this.onclose = f, this.img.setZoomEvents) return !1;
3945
+ if (t(this, s), this.img = r, this.slide = l, this.onclose = f, this.img.setZoomEvents) return !1;
3927
3946
  this.active = !1, this.zoomedIn = !1, this.dragging = !1, this.currentX = null, this.currentY = null, this.initialX = null, this.initialY = null, this.xOffset = 0, this.yOffset = 0, this.img.addEventListener("mousedown", function(g) {
3928
3947
  return d.dragStart(g);
3929
3948
  }, !1), this.img.addEventListener("mouseup", function(g) {
@@ -3934,61 +3953,61 @@ function rs() {
3934
3953
  return d.slide.classList.contains("dragging-nav") ? (d.zoomOut(), !1) : d.zoomedIn ? void (d.zoomedIn && !d.dragging && d.zoomOut()) : d.zoomIn();
3935
3954
  }, !1), this.img.setZoomEvents = !0;
3936
3955
  }, [{ key: "zoomIn", value: function() {
3937
- var i = this.widowWidth();
3938
- if (!(this.zoomedIn || i <= 768)) {
3956
+ var s = this.widowWidth();
3957
+ if (!(this.zoomedIn || s <= 768)) {
3939
3958
  var r = this.img;
3940
- if (r.setAttribute("data-style", r.getAttribute("style")), r.style.maxWidth = r.naturalWidth + "px", r.style.maxHeight = r.naturalHeight + "px", r.naturalWidth > i) {
3941
- var l = i / 2 - r.naturalWidth / 2;
3959
+ if (r.setAttribute("data-style", r.getAttribute("style")), r.style.maxWidth = r.naturalWidth + "px", r.style.maxHeight = r.naturalHeight + "px", r.naturalWidth > s) {
3960
+ var l = s / 2 - r.naturalWidth / 2;
3942
3961
  this.setTranslate(this.img.parentNode, l, 0);
3943
3962
  }
3944
3963
  this.slide.classList.add("zoomed"), this.zoomedIn = !0;
3945
3964
  }
3946
3965
  } }, { key: "zoomOut", value: function() {
3947
3966
  this.img.parentNode.setAttribute("style", ""), this.img.setAttribute("style", this.img.getAttribute("data-style")), this.slide.classList.remove("zoomed"), this.zoomedIn = !1, this.currentX = null, this.currentY = null, this.initialX = null, this.initialY = null, this.xOffset = 0, this.yOffset = 0, this.onclose && typeof this.onclose == "function" && this.onclose();
3948
- } }, { key: "dragStart", value: function(i) {
3949
- i.preventDefault(), this.zoomedIn ? (i.type === "touchstart" ? (this.initialX = i.touches[0].clientX - this.xOffset, this.initialY = i.touches[0].clientY - this.yOffset) : (this.initialX = i.clientX - this.xOffset, this.initialY = i.clientY - this.yOffset), i.target === this.img && (this.active = !0, this.img.classList.add("dragging"))) : this.active = !1;
3950
- } }, { key: "dragEnd", value: function(i) {
3967
+ } }, { key: "dragStart", value: function(s) {
3968
+ s.preventDefault(), this.zoomedIn ? (s.type === "touchstart" ? (this.initialX = s.touches[0].clientX - this.xOffset, this.initialY = s.touches[0].clientY - this.yOffset) : (this.initialX = s.clientX - this.xOffset, this.initialY = s.clientY - this.yOffset), s.target === this.img && (this.active = !0, this.img.classList.add("dragging"))) : this.active = !1;
3969
+ } }, { key: "dragEnd", value: function(s) {
3951
3970
  var r = this;
3952
- i.preventDefault(), this.initialX = this.currentX, this.initialY = this.currentY, this.active = !1, setTimeout(function() {
3971
+ s.preventDefault(), this.initialX = this.currentX, this.initialY = this.currentY, this.active = !1, setTimeout(function() {
3953
3972
  r.dragging = !1, r.img.isDragging = !1, r.img.classList.remove("dragging");
3954
3973
  }, 100);
3955
- } }, { key: "drag", value: function(i) {
3956
- this.active && (i.preventDefault(), i.type === "touchmove" ? (this.currentX = i.touches[0].clientX - this.initialX, this.currentY = i.touches[0].clientY - this.initialY) : (this.currentX = i.clientX - this.initialX, this.currentY = i.clientY - this.initialY), this.xOffset = this.currentX, this.yOffset = this.currentY, this.img.isDragging = !0, this.dragging = !0, this.setTranslate(this.img, this.currentX, this.currentY));
3957
- } }, { key: "onMove", value: function(i) {
3974
+ } }, { key: "drag", value: function(s) {
3975
+ this.active && (s.preventDefault(), s.type === "touchmove" ? (this.currentX = s.touches[0].clientX - this.initialX, this.currentY = s.touches[0].clientY - this.initialY) : (this.currentX = s.clientX - this.initialX, this.currentY = s.clientY - this.initialY), this.xOffset = this.currentX, this.yOffset = this.currentY, this.img.isDragging = !0, this.dragging = !0, this.setTranslate(this.img, this.currentX, this.currentY));
3976
+ } }, { key: "onMove", value: function(s) {
3958
3977
  if (this.zoomedIn) {
3959
- var r = i.clientX - this.img.naturalWidth / 2, l = i.clientY - this.img.naturalHeight / 2;
3978
+ var r = s.clientX - this.img.naturalWidth / 2, l = s.clientY - this.img.naturalHeight / 2;
3960
3979
  this.setTranslate(this.img, r, l);
3961
3980
  }
3962
- } }, { key: "setTranslate", value: function(i, r, l) {
3963
- i.style.transform = "translate3d(" + r + "px, " + l + "px, 0)";
3981
+ } }, { key: "setTranslate", value: function(s, r, l) {
3982
+ s.style.transform = "translate3d(" + r + "px, " + l + "px, 0)";
3964
3983
  } }, { key: "widowWidth", value: function() {
3965
3984
  return window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
3966
- } }]), Kt = n(function i() {
3985
+ } }]), Kt = n(function s() {
3967
3986
  var r = this, l = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
3968
- t(this, i);
3969
- var d = l.dragEl, f = l.toleranceX, g = f === void 0 ? 40 : f, h = l.toleranceY, m = h === void 0 ? 65 : h, C = l.slide, k = C === void 0 ? null : C, M = l.instance, $ = M === void 0 ? null : M;
3970
- this.el = d, this.active = !1, this.dragging = !1, this.currentX = null, this.currentY = null, this.initialX = null, this.initialY = null, this.xOffset = 0, this.yOffset = 0, this.direction = null, this.lastDirection = null, this.toleranceX = g, this.toleranceY = m, this.toleranceReached = !1, this.dragContainer = this.el, this.slide = k, this.instance = $, this.el.addEventListener("mousedown", function(z) {
3987
+ t(this, s);
3988
+ var d = l.dragEl, f = l.toleranceX, g = f === void 0 ? 40 : f, h = l.toleranceY, m = h === void 0 ? 65 : h, C = l.slide, k = C === void 0 ? null : C, M = l.instance, E = M === void 0 ? null : M;
3989
+ this.el = d, this.active = !1, this.dragging = !1, this.currentX = null, this.currentY = null, this.initialX = null, this.initialY = null, this.xOffset = 0, this.yOffset = 0, this.direction = null, this.lastDirection = null, this.toleranceX = g, this.toleranceY = m, this.toleranceReached = !1, this.dragContainer = this.el, this.slide = k, this.instance = E, this.el.addEventListener("mousedown", function(z) {
3971
3990
  return r.dragStart(z);
3972
3991
  }, !1), this.el.addEventListener("mouseup", function(z) {
3973
3992
  return r.dragEnd(z);
3974
3993
  }, !1), this.el.addEventListener("mousemove", function(z) {
3975
3994
  return r.drag(z);
3976
3995
  }, !1);
3977
- }, [{ key: "dragStart", value: function(i) {
3996
+ }, [{ key: "dragStart", value: function(s) {
3978
3997
  if (this.slide.classList.contains("zoomed")) this.active = !1;
3979
3998
  else {
3980
- i.type === "touchstart" ? (this.initialX = i.touches[0].clientX - this.xOffset, this.initialY = i.touches[0].clientY - this.yOffset) : (this.initialX = i.clientX - this.xOffset, this.initialY = i.clientY - this.yOffset);
3981
- var r = i.target.nodeName.toLowerCase();
3982
- i.target.classList.contains("nodrag") || A(i.target, ".nodrag") || ["input", "select", "textarea", "button", "a"].indexOf(r) !== -1 ? this.active = !1 : (i.preventDefault(), (i.target === this.el || r !== "img" && A(i.target, ".gslide-inline")) && (this.active = !0, this.el.classList.add("dragging"), this.dragContainer = A(i.target, ".ginner-container")));
3999
+ s.type === "touchstart" ? (this.initialX = s.touches[0].clientX - this.xOffset, this.initialY = s.touches[0].clientY - this.yOffset) : (this.initialX = s.clientX - this.xOffset, this.initialY = s.clientY - this.yOffset);
4000
+ var r = s.target.nodeName.toLowerCase();
4001
+ s.target.classList.contains("nodrag") || A(s.target, ".nodrag") || ["input", "select", "textarea", "button", "a"].indexOf(r) !== -1 ? this.active = !1 : (s.preventDefault(), (s.target === this.el || r !== "img" && A(s.target, ".gslide-inline")) && (this.active = !0, this.el.classList.add("dragging"), this.dragContainer = A(s.target, ".ginner-container")));
3983
4002
  }
3984
- } }, { key: "dragEnd", value: function(i) {
4003
+ } }, { key: "dragEnd", value: function(s) {
3985
4004
  var r = this;
3986
- i && i.preventDefault(), this.initialX = 0, this.initialY = 0, this.currentX = null, this.currentY = null, this.initialX = null, this.initialY = null, this.xOffset = 0, this.yOffset = 0, this.active = !1, this.doSlideChange && (this.instance.preventOutsideClick = !0, this.doSlideChange == "right" && this.instance.prevSlide(), this.doSlideChange == "left" && this.instance.nextSlide()), this.doSlideClose && this.instance.close(), this.toleranceReached || this.setTranslate(this.dragContainer, 0, 0, !0), setTimeout(function() {
4005
+ s && s.preventDefault(), this.initialX = 0, this.initialY = 0, this.currentX = null, this.currentY = null, this.initialX = null, this.initialY = null, this.xOffset = 0, this.yOffset = 0, this.active = !1, this.doSlideChange && (this.instance.preventOutsideClick = !0, this.doSlideChange == "right" && this.instance.prevSlide(), this.doSlideChange == "left" && this.instance.nextSlide()), this.doSlideClose && this.instance.close(), this.toleranceReached || this.setTranslate(this.dragContainer, 0, 0, !0), setTimeout(function() {
3987
4006
  r.instance.preventOutsideClick = !1, r.toleranceReached = !1, r.lastDirection = null, r.dragging = !1, r.el.isDragging = !1, r.el.classList.remove("dragging"), r.slide.classList.remove("dragging-nav"), r.dragContainer.style.transform = "", r.dragContainer.style.transition = "";
3988
4007
  }, 100);
3989
- } }, { key: "drag", value: function(i) {
4008
+ } }, { key: "drag", value: function(s) {
3990
4009
  if (this.active) {
3991
- i.preventDefault(), this.slide.classList.add("dragging-nav"), i.type === "touchmove" ? (this.currentX = i.touches[0].clientX - this.initialX, this.currentY = i.touches[0].clientY - this.initialY) : (this.currentX = i.clientX - this.initialX, this.currentY = i.clientY - this.initialY), this.xOffset = this.currentX, this.yOffset = this.currentY, this.el.isDragging = !0, this.dragging = !0, this.doSlideChange = !1, this.doSlideClose = !1;
4010
+ s.preventDefault(), this.slide.classList.add("dragging-nav"), s.type === "touchmove" ? (this.currentX = s.touches[0].clientX - this.initialX, this.currentY = s.touches[0].clientY - this.initialY) : (this.currentX = s.clientX - this.initialX, this.currentY = s.clientY - this.initialY), this.xOffset = this.currentX, this.yOffset = this.currentY, this.el.isDragging = !0, this.dragging = !0, this.doSlideChange = !1, this.doSlideClose = !1;
3992
4011
  var r = Math.abs(this.currentX), l = Math.abs(this.currentY);
3993
4012
  if (r > 0 && r >= Math.abs(this.currentY) && (!this.lastDirection || this.lastDirection == "x")) {
3994
4013
  this.yOffset = 0, this.lastDirection = "x", this.setTranslate(this.dragContainer, this.currentX, 0);
@@ -4002,55 +4021,55 @@ function rs() {
4002
4021
  }
4003
4022
  }
4004
4023
  } }, { key: "shouldChange", value: function() {
4005
- var i = !1;
4024
+ var s = !1;
4006
4025
  if (Math.abs(this.currentX) >= this.toleranceX) {
4007
4026
  var r = this.currentX > 0 ? "right" : "left";
4008
- (r == "left" && this.slide !== this.slide.parentNode.lastChild || r == "right" && this.slide !== this.slide.parentNode.firstChild) && (i = r);
4027
+ (r == "left" && this.slide !== this.slide.parentNode.lastChild || r == "right" && this.slide !== this.slide.parentNode.firstChild) && (s = r);
4009
4028
  }
4010
- return i;
4029
+ return s;
4011
4030
  } }, { key: "shouldClose", value: function() {
4012
- var i = !1;
4013
- return Math.abs(this.currentY) >= this.toleranceY && (i = !0), i;
4014
- } }, { key: "setTranslate", value: function(i, r, l) {
4031
+ var s = !1;
4032
+ return Math.abs(this.currentY) >= this.toleranceY && (s = !0), s;
4033
+ } }, { key: "setTranslate", value: function(s, r, l) {
4015
4034
  var d = arguments.length > 3 && arguments[3] !== void 0 && arguments[3];
4016
- i.style.transition = d ? "all .2s ease" : "", i.style.transform = "translate3d(".concat(r, "px, ").concat(l, "px, 0)");
4035
+ s.style.transition = d ? "all .2s ease" : "", s.style.transform = "translate3d(".concat(r, "px, ").concat(l, "px, 0)");
4017
4036
  } }]);
4018
- function Xa(i, r, l, d) {
4019
- var f = i.querySelector(".gslide-media"), g = new Image(), h = "gSlideTitle_" + l, m = "gSlideDesc_" + l;
4037
+ function Xa(s, r, l, d) {
4038
+ var f = s.querySelector(".gslide-media"), g = new Image(), h = "gSlideTitle_" + l, m = "gSlideDesc_" + l;
4020
4039
  g.addEventListener("load", function() {
4021
4040
  j(d) && d();
4022
4041
  }, !1), g.src = r.href, r.sizes != "" && r.srcset != "" && (g.sizes = r.sizes, g.srcset = r.srcset), g.alt = "", de(r.alt) || r.alt === "" || (g.alt = r.alt), r.title !== "" && g.setAttribute("aria-labelledby", h), r.description !== "" && g.setAttribute("aria-describedby", m), r.hasOwnProperty("_hasCustomWidth") && r._hasCustomWidth && (g.style.width = r.width), r.hasOwnProperty("_hasCustomHeight") && r._hasCustomHeight && (g.style.height = r.height), f.insertBefore(g, f.firstChild);
4023
4042
  }
4024
- function Ga(i, r, l, d) {
4025
- var f = this, g = i.querySelector(".ginner-container"), h = "gvideo" + l, m = i.querySelector(".gslide-media"), C = this.getAllPlayers();
4043
+ function Ga(s, r, l, d) {
4044
+ var f = this, g = s.querySelector(".ginner-container"), h = "gvideo" + l, m = s.querySelector(".gslide-media"), C = this.getAllPlayers();
4026
4045
  _(g, "gvideo-container"), m.insertBefore(ie('<div class="gvideo-wrapper"></div>'), m.firstChild);
4027
- var k = i.querySelector(".gvideo-wrapper");
4046
+ var k = s.querySelector(".gvideo-wrapper");
4028
4047
  nt(this.settings.plyr.css, "Plyr");
4029
- var M = r.href, $ = r?.videoProvider, z = !1;
4048
+ var M = r.href, E = r?.videoProvider, z = !1;
4030
4049
  m.style.maxWidth = r.width, nt(this.settings.plyr.js, "Plyr", function() {
4031
- if (!$ && M.match(/vimeo\.com\/([0-9]*)/) && ($ = "vimeo"), !$ && (M.match(/(youtube\.com|youtube-nocookie\.com)\/watch\?v=([a-zA-Z0-9\-_]+)/) || M.match(/youtu\.be\/([a-zA-Z0-9\-_]+)/) || M.match(/(youtube\.com|youtube-nocookie\.com)\/embed\/([a-zA-Z0-9\-_]+)/) || M.match(/(youtube\.com|youtube-nocookie\.com)\/shorts\/([a-zA-Z0-9\-_]+)/)) && ($ = "youtube"), $ === "local" || !$) {
4032
- $ = "local";
4050
+ if (!E && M.match(/vimeo\.com\/([0-9]*)/) && (E = "vimeo"), !E && (M.match(/(youtube\.com|youtube-nocookie\.com)\/watch\?v=([a-zA-Z0-9\-_]+)/) || M.match(/youtu\.be\/([a-zA-Z0-9\-_]+)/) || M.match(/(youtube\.com|youtube-nocookie\.com)\/embed\/([a-zA-Z0-9\-_]+)/) || M.match(/(youtube\.com|youtube-nocookie\.com)\/shorts\/([a-zA-Z0-9\-_]+)/)) && (E = "youtube"), E === "local" || !E) {
4051
+ E = "local";
4033
4052
  var B = '<video id="' + h + '" ';
4034
4053
  B += 'style="background:#000; max-width: '.concat(r.width, ';" '), B += 'preload="metadata" ', B += 'x-webkit-airplay="allow" ', B += "playsinline ", B += "controls ", B += 'class="gvideo-local">', B += '<source src="'.concat(M, '">'), z = ie(B += "</video>");
4035
4054
  }
4036
- var F = z || ie('<div id="'.concat(h, '" data-plyr-provider="').concat($, '" data-plyr-embed-id="').concat(M, '"></div>'));
4037
- _(k, "".concat($, "-video gvideo")), k.appendChild(F), k.setAttribute("data-id", h), k.setAttribute("data-index", l);
4055
+ var F = z || ie('<div id="'.concat(h, '" data-plyr-provider="').concat(E, '" data-plyr-embed-id="').concat(M, '"></div>'));
4056
+ _(k, "".concat(E, "-video gvideo")), k.appendChild(F), k.setAttribute("data-id", h), k.setAttribute("data-index", l);
4038
4057
  var G = K(f.settings.plyr, "config") ? f.settings.plyr.config : {}, he = new Plyr("#" + h, G);
4039
4058
  he.on("ready", function(fe) {
4040
4059
  C[h] = fe.detail.plyr, j(d) && d();
4041
4060
  }), We(function() {
4042
- return i.querySelector("iframe") && i.querySelector("iframe").dataset.ready == "true";
4061
+ return s.querySelector("iframe") && s.querySelector("iframe").dataset.ready == "true";
4043
4062
  }, function() {
4044
- f.resize(i);
4063
+ f.resize(s);
4045
4064
  }), he.on("enterfullscreen", Qt), he.on("exitfullscreen", Qt);
4046
4065
  });
4047
4066
  }
4048
- function Qt(i) {
4049
- var r = A(i.target, ".gslide-media");
4050
- i.type === "enterfullscreen" && _(r, "fullscreen"), i.type === "exitfullscreen" && L(r, "fullscreen");
4067
+ function Qt(s) {
4068
+ var r = A(s.target, ".gslide-media");
4069
+ s.type === "enterfullscreen" && _(r, "fullscreen"), s.type === "exitfullscreen" && L(r, "fullscreen");
4051
4070
  }
4052
- function Za(i, r, l, d) {
4053
- var f, g = this, h = i.querySelector(".gslide-media"), m = !(!K(r, "href") || !r.href) && r.href.split("#").pop().trim(), C = !(!K(r, "content") || !r.content) && r.content;
4071
+ function Za(s, r, l, d) {
4072
+ var f, g = this, h = s.querySelector(".gslide-media"), m = !(!K(r, "href") || !r.href) && r.href.split("#").pop().trim(), C = !(!K(r, "content") || !r.content) && r.content;
4054
4073
  if (C && (D(C) && (f = ie('<div class="ginlined-content">'.concat(C, "</div>"))), W(C))) {
4055
4074
  C.style.display == "none" && (C.style.display = "block");
4056
4075
  var k = document.createElement("div");
@@ -4059,48 +4078,48 @@ function rs() {
4059
4078
  if (m) {
4060
4079
  var M = document.getElementById(m);
4061
4080
  if (!M) return !1;
4062
- var $ = M.cloneNode(!0);
4063
- $.style.height = r.height, $.style.maxWidth = r.width, _($, "ginlined-content"), f = $;
4081
+ var E = M.cloneNode(!0);
4082
+ E.style.height = r.height, E.style.maxWidth = r.width, _(E, "ginlined-content"), f = E;
4064
4083
  }
4065
4084
  if (!f) return console.error("Unable to append inline slide content", r), !1;
4066
4085
  h.style.height = r.height, h.style.width = r.width, h.appendChild(f), this.events["inlineclose" + m] = w("click", { onElement: h.querySelectorAll(".gtrigger-close"), withCallback: function(z) {
4067
4086
  z.preventDefault(), g.close();
4068
4087
  } }), j(d) && d();
4069
4088
  }
4070
- function Ja(i, r, l, d) {
4071
- var f = i.querySelector(".gslide-media"), g = function(h) {
4072
- var m = h.url, C = h.allow, k = h.callback, M = h.appendTo, $ = document.createElement("iframe");
4073
- return $.className = "vimeo-video gvideo", $.src = m, $.style.width = "100%", $.style.height = "100%", C && $.setAttribute("allow", C), $.onload = function() {
4074
- $.onload = null, _($, "node-ready"), j(k) && k();
4075
- }, M && M.appendChild($), $;
4089
+ function Ja(s, r, l, d) {
4090
+ var f = s.querySelector(".gslide-media"), g = function(h) {
4091
+ var m = h.url, C = h.allow, k = h.callback, M = h.appendTo, E = document.createElement("iframe");
4092
+ return E.className = "vimeo-video gvideo", E.src = m, E.style.width = "100%", E.style.height = "100%", C && E.setAttribute("allow", C), E.onload = function() {
4093
+ E.onload = null, _(E, "node-ready"), j(k) && k();
4094
+ }, M && M.appendChild(E), E;
4076
4095
  }({ url: r.href, callback: d });
4077
4096
  f.parentNode.style.maxWidth = r.width, f.parentNode.style.height = r.height, f.appendChild(g);
4078
4097
  }
4079
- var Ka = n(function i() {
4098
+ var Ka = n(function s() {
4080
4099
  var r = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
4081
- t(this, i), this.defaults = { href: "", sizes: "", srcset: "", title: "", type: "", videoProvider: "", description: "", alt: "", descPosition: "bottom", effect: "", width: "", height: "", content: !1, zoomable: !0, draggable: !0 }, Le(r) && (this.defaults = v(this.defaults, r));
4082
- }, [{ key: "sourceType", value: function(i) {
4083
- var r = i;
4084
- return (i = i.toLowerCase()).match(/\.(jpeg|jpg|jpe|gif|png|apn|webp|avif|svg)/) !== null ? "image" : i.match(/(youtube\.com|youtube-nocookie\.com)\/watch\?v=([a-zA-Z0-9\-_]+)/) || i.match(/youtu\.be\/([a-zA-Z0-9\-_]+)/) || i.match(/(youtube\.com|youtube-nocookie\.com)\/embed\/([a-zA-Z0-9\-_]+)/) || i.match(/(youtube\.com|youtube-nocookie\.com)\/shorts\/([a-zA-Z0-9\-_]+)/) || i.match(/vimeo\.com\/([0-9]*)/) || i.match(/\.(mp4|ogg|webm|mov)/) !== null ? "video" : i.match(/\.(mp3|wav|wma|aac|ogg)/) !== null ? "audio" : i.indexOf("#") > -1 && r.split("#").pop().trim() !== "" ? "inline" : i.indexOf("goajax=true") > -1 ? "ajax" : "external";
4085
- } }, { key: "parseConfig", value: function(i, r) {
4100
+ t(this, s), this.defaults = { href: "", sizes: "", srcset: "", title: "", type: "", videoProvider: "", description: "", alt: "", descPosition: "bottom", effect: "", width: "", height: "", content: !1, zoomable: !0, draggable: !0 }, Le(r) && (this.defaults = v(this.defaults, r));
4101
+ }, [{ key: "sourceType", value: function(s) {
4102
+ var r = s;
4103
+ return (s = s.toLowerCase()).match(/\.(jpeg|jpg|jpe|gif|png|apn|webp|avif|svg)/) !== null ? "image" : s.match(/(youtube\.com|youtube-nocookie\.com)\/watch\?v=([a-zA-Z0-9\-_]+)/) || s.match(/youtu\.be\/([a-zA-Z0-9\-_]+)/) || s.match(/(youtube\.com|youtube-nocookie\.com)\/embed\/([a-zA-Z0-9\-_]+)/) || s.match(/(youtube\.com|youtube-nocookie\.com)\/shorts\/([a-zA-Z0-9\-_]+)/) || s.match(/vimeo\.com\/([0-9]*)/) || s.match(/\.(mp4|ogg|webm|mov)/) !== null ? "video" : s.match(/\.(mp3|wav|wma|aac|ogg)/) !== null ? "audio" : s.indexOf("#") > -1 && r.split("#").pop().trim() !== "" ? "inline" : s.indexOf("goajax=true") > -1 ? "ajax" : "external";
4104
+ } }, { key: "parseConfig", value: function(s, r) {
4086
4105
  var l = this, d = v({ descPosition: r.descPosition }, this.defaults);
4087
- if (Le(i) && !W(i)) {
4088
- K(i, "type") || (K(i, "content") && i.content ? i.type = "inline" : K(i, "href") && (i.type = this.sourceType(i.href)));
4089
- var f = v(d, i);
4106
+ if (Le(s) && !W(s)) {
4107
+ K(s, "type") || (K(s, "content") && s.content ? s.type = "inline" : K(s, "href") && (s.type = this.sourceType(s.href)));
4108
+ var f = v(d, s);
4090
4109
  return this.setSize(f, r), f;
4091
4110
  }
4092
- var g = "", h = i.getAttribute("data-glightbox"), m = i.nodeName.toLowerCase();
4093
- if (m === "a" && (g = i.href), m === "img" && (g = i.src, d.alt = i.alt), d.href = g, y(d, function(B, F) {
4111
+ var g = "", h = s.getAttribute("data-glightbox"), m = s.nodeName.toLowerCase();
4112
+ if (m === "a" && (g = s.href), m === "img" && (g = s.src, d.alt = s.alt), d.href = g, y(d, function(B, F) {
4094
4113
  K(r, F) && F !== "width" && (d[F] = r[F]);
4095
- var G = i.dataset[F];
4114
+ var G = s.dataset[F];
4096
4115
  de(G) || (d[F] = l.sanitizeValue(G));
4097
4116
  }), d.content && (d.type = "inline"), !d.type && g && (d.type = this.sourceType(g)), de(h)) {
4098
4117
  if (!d.title && m == "a") {
4099
- var C = i.title;
4118
+ var C = s.title;
4100
4119
  de(C) || C === "" || (d.title = C);
4101
4120
  }
4102
4121
  if (!d.title && m == "img") {
4103
- var k = i.alt;
4122
+ var k = s.alt;
4104
4123
  de(k) || k === "" || (d.title = k);
4105
4124
  }
4106
4125
  } else {
@@ -4116,54 +4135,54 @@ function rs() {
4116
4135
  });
4117
4136
  }
4118
4137
  if (d.description && d.description.substring(0, 1) === ".") {
4119
- var $;
4138
+ var E;
4120
4139
  try {
4121
- $ = document.querySelector(d.description).innerHTML;
4140
+ E = document.querySelector(d.description).innerHTML;
4122
4141
  } catch (B) {
4123
4142
  if (!(B instanceof DOMException)) throw B;
4124
4143
  }
4125
- $ && (d.description = $);
4144
+ E && (d.description = E);
4126
4145
  }
4127
4146
  if (!d.description) {
4128
- var z = i.querySelector(".glightbox-desc");
4147
+ var z = s.querySelector(".glightbox-desc");
4129
4148
  z && (d.description = z.innerHTML);
4130
4149
  }
4131
- return this.setSize(d, r, i), this.slideConfig = d, d;
4132
- } }, { key: "setSize", value: function(i, r) {
4133
- var l = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : null, d = i.type == "video" ? this.checkSize(r.videosWidth) : this.checkSize(r.width), f = this.checkSize(r.height);
4134
- return i.width = K(i, "width") && i.width !== "" ? this.checkSize(i.width) : d, i.height = K(i, "height") && i.height !== "" ? this.checkSize(i.height) : f, l && i.type == "image" && (i._hasCustomWidth = !!l.dataset.width, i._hasCustomHeight = !!l.dataset.height), i;
4135
- } }, { key: "checkSize", value: function(i) {
4136
- return rt(i) ? "".concat(i, "px") : i;
4137
- } }, { key: "sanitizeValue", value: function(i) {
4138
- return i !== "true" && i !== "false" ? i : i === "true";
4139
- } }]), ot = n(function i(r, l, d) {
4140
- t(this, i), this.element = r, this.instance = l, this.index = d;
4150
+ return this.setSize(d, r, s), this.slideConfig = d, d;
4151
+ } }, { key: "setSize", value: function(s, r) {
4152
+ var l = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : null, d = s.type == "video" ? this.checkSize(r.videosWidth) : this.checkSize(r.width), f = this.checkSize(r.height);
4153
+ return s.width = K(s, "width") && s.width !== "" ? this.checkSize(s.width) : d, s.height = K(s, "height") && s.height !== "" ? this.checkSize(s.height) : f, l && s.type == "image" && (s._hasCustomWidth = !!l.dataset.width, s._hasCustomHeight = !!l.dataset.height), s;
4154
+ } }, { key: "checkSize", value: function(s) {
4155
+ return rt(s) ? "".concat(s, "px") : s;
4156
+ } }, { key: "sanitizeValue", value: function(s) {
4157
+ return s !== "true" && s !== "false" ? s : s === "true";
4158
+ } }]), ot = n(function s(r, l, d) {
4159
+ t(this, s), this.element = r, this.instance = l, this.index = d;
4141
4160
  }, [{ key: "setContent", value: function() {
4142
- var i = this, r = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null, l = arguments.length > 1 && arguments[1] !== void 0 && arguments[1];
4143
- if (E(r, "loaded")) return !1;
4161
+ var s = this, r = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null, l = arguments.length > 1 && arguments[1] !== void 0 && arguments[1];
4162
+ if (T(r, "loaded")) return !1;
4144
4163
  var d = this.instance.settings, f = this.slideConfig, g = Se();
4145
4164
  j(d.beforeSlideLoad) && d.beforeSlideLoad({ index: this.index, slide: r, player: !1 });
4146
- var h = f.type, m = f.descPosition, C = r.querySelector(".gslide-media"), k = r.querySelector(".gslide-title"), M = r.querySelector(".gslide-desc"), $ = r.querySelector(".gdesc-inner"), z = l, B = "gSlideTitle_" + this.index, F = "gSlideDesc_" + this.index;
4165
+ var h = f.type, m = f.descPosition, C = r.querySelector(".gslide-media"), k = r.querySelector(".gslide-title"), M = r.querySelector(".gslide-desc"), E = r.querySelector(".gdesc-inner"), z = l, B = "gSlideTitle_" + this.index, F = "gSlideDesc_" + this.index;
4147
4166
  if (j(d.afterSlideLoad) && (z = function() {
4148
- j(l) && l(), d.afterSlideLoad({ index: i.index, slide: r, player: i.instance.getSlidePlayerInstance(i.index) });
4149
- }), f.title == "" && f.description == "" ? $ && $.parentNode.parentNode.removeChild($.parentNode) : (k && f.title !== "" ? (k.id = B, k.innerHTML = f.title) : k.parentNode.removeChild(k), M && f.description !== "" ? (M.id = F, g && d.moreLength > 0 ? (f.smallDescription = this.slideShortDesc(f.description, d.moreLength, d.moreText), M.innerHTML = f.smallDescription, this.descriptionEvents(M, f)) : M.innerHTML = f.description) : M.parentNode.removeChild(M), _(C.parentNode, "desc-".concat(m)), _($.parentNode, "description-".concat(m))), _(C, "gslide-".concat(h)), _(r, "loaded"), h !== "video") {
4167
+ j(l) && l(), d.afterSlideLoad({ index: s.index, slide: r, player: s.instance.getSlidePlayerInstance(s.index) });
4168
+ }), f.title == "" && f.description == "" ? E && E.parentNode.parentNode.removeChild(E.parentNode) : (k && f.title !== "" ? (k.id = B, k.innerHTML = f.title) : k.parentNode.removeChild(k), M && f.description !== "" ? (M.id = F, g && d.moreLength > 0 ? (f.smallDescription = this.slideShortDesc(f.description, d.moreLength, d.moreText), M.innerHTML = f.smallDescription, this.descriptionEvents(M, f)) : M.innerHTML = f.description) : M.parentNode.removeChild(M), _(C.parentNode, "desc-".concat(m)), _(E.parentNode, "description-".concat(m))), _(C, "gslide-".concat(h)), _(r, "loaded"), h !== "video") {
4150
4169
  if (h !== "external") return h === "inline" ? (Za.apply(this.instance, [r, f, this.index, z]), void (f.draggable && new Kt({ dragEl: r.querySelector(".gslide-inline"), toleranceX: d.dragToleranceX, toleranceY: d.dragToleranceY, slide: r, instance: this.instance }))) : void (h !== "image" ? j(z) && z() : Xa(r, f, this.index, function() {
4151
4170
  var G = r.querySelector("img");
4152
- f.draggable && new Kt({ dragEl: G, toleranceX: d.dragToleranceX, toleranceY: d.dragToleranceY, slide: r, instance: i.instance }), f.zoomable && G.naturalWidth > G.offsetWidth && (_(G, "zoomable"), new Ya(G, r, function() {
4153
- i.instance.resize();
4171
+ f.draggable && new Kt({ dragEl: G, toleranceX: d.dragToleranceX, toleranceY: d.dragToleranceY, slide: r, instance: s.instance }), f.zoomable && G.naturalWidth > G.offsetWidth && (_(G, "zoomable"), new Ya(G, r, function() {
4172
+ s.instance.resize();
4154
4173
  })), j(z) && z();
4155
4174
  }));
4156
4175
  Ja.apply(this, [r, f, this.index, z]);
4157
4176
  } else Ga.apply(this.instance, [r, f, this.index, z]);
4158
- } }, { key: "slideShortDesc", value: function(i) {
4177
+ } }, { key: "slideShortDesc", value: function(s) {
4159
4178
  var r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 50, l = arguments.length > 2 && arguments[2] !== void 0 && arguments[2], d = document.createElement("div");
4160
- d.innerHTML = i;
4179
+ d.innerHTML = s;
4161
4180
  var f = d.innerText, g = l;
4162
- if ((i = f.trim()).length <= r) return i;
4163
- var h = i.substr(0, r - 1);
4181
+ if ((s = f.trim()).length <= r) return s;
4182
+ var h = s.substr(0, r - 1);
4164
4183
  return g ? (d = null, h + '... <a href="#" class="desc-more">' + l + "</a>") : h;
4165
- } }, { key: "descriptionEvents", value: function(i, r) {
4166
- var l = this, d = i.querySelector(".desc-more");
4184
+ } }, { key: "descriptionEvents", value: function(s, r) {
4185
+ var l = this, d = s.querySelector(".desc-more");
4167
4186
  if (!d) return !1;
4168
4187
  w("click", { onElement: d, withCallback: function(f, g) {
4169
4188
  f.preventDefault();
@@ -4180,13 +4199,13 @@ function rs() {
4180
4199
  return ie(this.instance.settings.slideHTML);
4181
4200
  } }, { key: "getConfig", value: function() {
4182
4201
  W(this.element) || this.element.hasOwnProperty("draggable") || (this.element.draggable = this.instance.settings.draggable);
4183
- var i = new Ka(this.instance.settings.slideExtraAttributes);
4184
- return this.slideConfig = i.parseConfig(this.element, this.instance.settings), this.slideConfig;
4202
+ var s = new Ka(this.instance.settings.slideExtraAttributes);
4203
+ return this.slideConfig = s.parseConfig(this.element, this.instance.settings), this.slideConfig;
4185
4204
  } }]);
4186
- function ct(i) {
4187
- return Math.sqrt(i.x * i.x + i.y * i.y);
4205
+ function ct(s) {
4206
+ return Math.sqrt(s.x * s.x + s.y * s.y);
4188
4207
  }
4189
- function Qa(i, r) {
4208
+ function Qa(s, r) {
4190
4209
  var l = function(d, f) {
4191
4210
  var g = ct(d) * ct(f);
4192
4211
  if (g === 0) return 0;
@@ -4194,106 +4213,106 @@ function rs() {
4194
4213
  return m.x * C.x + m.y * C.y;
4195
4214
  }(d, f) / g;
4196
4215
  return h > 1 && (h = 1), Math.acos(h);
4197
- }(i, r);
4216
+ }(s, r);
4198
4217
  return function(d, f) {
4199
4218
  return d.x * f.y - f.x * d.y;
4200
- }(i, r) > 0 && (l *= -1), 180 * l / Math.PI;
4201
- }
4202
- var ei = n(function i(r) {
4203
- t(this, i), this.handlers = [], this.el = r;
4204
- }, [{ key: "add", value: function(i) {
4205
- this.handlers.push(i);
4206
- } }, { key: "del", value: function(i) {
4207
- i || (this.handlers = []);
4208
- for (var r = this.handlers.length; r >= 0; r--) this.handlers[r] === i && this.handlers.splice(r, 1);
4219
+ }(s, r) > 0 && (l *= -1), 180 * l / Math.PI;
4220
+ }
4221
+ var ei = n(function s(r) {
4222
+ t(this, s), this.handlers = [], this.el = r;
4223
+ }, [{ key: "add", value: function(s) {
4224
+ this.handlers.push(s);
4225
+ } }, { key: "del", value: function(s) {
4226
+ s || (this.handlers = []);
4227
+ for (var r = this.handlers.length; r >= 0; r--) this.handlers[r] === s && this.handlers.splice(r, 1);
4209
4228
  } }, { key: "dispatch", value: function() {
4210
- for (var i = 0, r = this.handlers.length; i < r; i++) {
4211
- var l = this.handlers[i];
4229
+ for (var s = 0, r = this.handlers.length; s < r; s++) {
4230
+ var l = this.handlers[s];
4212
4231
  typeof l == "function" && l.apply(this.el, arguments);
4213
4232
  }
4214
4233
  } }]);
4215
- function re(i, r) {
4216
- var l = new ei(i);
4234
+ function re(s, r) {
4235
+ var l = new ei(s);
4217
4236
  return l.add(r), l;
4218
4237
  }
4219
- var ti = n(function i(r, l) {
4220
- t(this, i), this.element = typeof r == "string" ? document.querySelector(r) : r, this.start = this.start.bind(this), this.move = this.move.bind(this), this.end = this.end.bind(this), this.cancel = this.cancel.bind(this), this.element.addEventListener("touchstart", this.start, !1), this.element.addEventListener("touchmove", this.move, !1), this.element.addEventListener("touchend", this.end, !1), this.element.addEventListener("touchcancel", this.cancel, !1), this.preV = { x: null, y: null }, this.pinchStartLen = null, this.zoom = 1, this.isDoubleTap = !1;
4238
+ var ti = n(function s(r, l) {
4239
+ t(this, s), this.element = typeof r == "string" ? document.querySelector(r) : r, this.start = this.start.bind(this), this.move = this.move.bind(this), this.end = this.end.bind(this), this.cancel = this.cancel.bind(this), this.element.addEventListener("touchstart", this.start, !1), this.element.addEventListener("touchmove", this.move, !1), this.element.addEventListener("touchend", this.end, !1), this.element.addEventListener("touchcancel", this.cancel, !1), this.preV = { x: null, y: null }, this.pinchStartLen = null, this.zoom = 1, this.isDoubleTap = !1;
4221
4240
  var d = function() {
4222
4241
  };
4223
4242
  this.rotate = re(this.element, l.rotate || d), this.touchStart = re(this.element, l.touchStart || d), this.multipointStart = re(this.element, l.multipointStart || d), this.multipointEnd = re(this.element, l.multipointEnd || d), this.pinch = re(this.element, l.pinch || d), this.swipe = re(this.element, l.swipe || d), this.tap = re(this.element, l.tap || d), this.doubleTap = re(this.element, l.doubleTap || d), this.longTap = re(this.element, l.longTap || d), this.singleTap = re(this.element, l.singleTap || d), this.pressMove = re(this.element, l.pressMove || d), this.twoFingerPressMove = re(this.element, l.twoFingerPressMove || d), this.touchMove = re(this.element, l.touchMove || d), this.touchEnd = re(this.element, l.touchEnd || d), this.touchCancel = re(this.element, l.touchCancel || d), this.translateContainer = this.element, this._cancelAllHandler = this.cancelAll.bind(this), window.addEventListener("scroll", this._cancelAllHandler), this.delta = null, this.last = null, this.now = null, this.tapTimeout = null, this.singleTapTimeout = null, this.longTapTimeout = null, this.swipeTimeout = null, this.x1 = this.x2 = this.y1 = this.y2 = null, this.preTapPosition = { x: null, y: null };
4224
- }, [{ key: "start", value: function(i) {
4225
- if (i.touches) if (i.target && i.target.nodeName && ["a", "button", "input"].indexOf(i.target.nodeName.toLowerCase()) >= 0) console.log("ignore drag for this touched element", i.target.nodeName.toLowerCase());
4243
+ }, [{ key: "start", value: function(s) {
4244
+ if (s.touches) if (s.target && s.target.nodeName && ["a", "button", "input"].indexOf(s.target.nodeName.toLowerCase()) >= 0) console.log("ignore drag for this touched element", s.target.nodeName.toLowerCase());
4226
4245
  else {
4227
- this.now = Date.now(), this.x1 = i.touches[0].pageX, this.y1 = i.touches[0].pageY, this.delta = this.now - (this.last || this.now), this.touchStart.dispatch(i, this.element), this.preTapPosition.x !== null && (this.isDoubleTap = this.delta > 0 && this.delta <= 250 && Math.abs(this.preTapPosition.x - this.x1) < 30 && Math.abs(this.preTapPosition.y - this.y1) < 30, this.isDoubleTap && clearTimeout(this.singleTapTimeout)), this.preTapPosition.x = this.x1, this.preTapPosition.y = this.y1, this.last = this.now;
4246
+ this.now = Date.now(), this.x1 = s.touches[0].pageX, this.y1 = s.touches[0].pageY, this.delta = this.now - (this.last || this.now), this.touchStart.dispatch(s, this.element), this.preTapPosition.x !== null && (this.isDoubleTap = this.delta > 0 && this.delta <= 250 && Math.abs(this.preTapPosition.x - this.x1) < 30 && Math.abs(this.preTapPosition.y - this.y1) < 30, this.isDoubleTap && clearTimeout(this.singleTapTimeout)), this.preTapPosition.x = this.x1, this.preTapPosition.y = this.y1, this.last = this.now;
4228
4247
  var r = this.preV;
4229
- if (i.touches.length > 1) {
4248
+ if (s.touches.length > 1) {
4230
4249
  this._cancelLongTap(), this._cancelSingleTap();
4231
- var l = { x: i.touches[1].pageX - this.x1, y: i.touches[1].pageY - this.y1 };
4232
- r.x = l.x, r.y = l.y, this.pinchStartLen = ct(r), this.multipointStart.dispatch(i, this.element);
4250
+ var l = { x: s.touches[1].pageX - this.x1, y: s.touches[1].pageY - this.y1 };
4251
+ r.x = l.x, r.y = l.y, this.pinchStartLen = ct(r), this.multipointStart.dispatch(s, this.element);
4233
4252
  }
4234
4253
  this._preventTap = !1, this.longTapTimeout = setTimeout((function() {
4235
- this.longTap.dispatch(i, this.element), this._preventTap = !0;
4254
+ this.longTap.dispatch(s, this.element), this._preventTap = !0;
4236
4255
  }).bind(this), 750);
4237
4256
  }
4238
- } }, { key: "move", value: function(i) {
4239
- if (i.touches) {
4240
- var r = this.preV, l = i.touches.length, d = i.touches[0].pageX, f = i.touches[0].pageY;
4257
+ } }, { key: "move", value: function(s) {
4258
+ if (s.touches) {
4259
+ var r = this.preV, l = s.touches.length, d = s.touches[0].pageX, f = s.touches[0].pageY;
4241
4260
  if (this.isDoubleTap = !1, l > 1) {
4242
- var g = i.touches[1].pageX, h = i.touches[1].pageY, m = { x: i.touches[1].pageX - d, y: i.touches[1].pageY - f };
4243
- r.x !== null && (this.pinchStartLen > 0 && (i.zoom = ct(m) / this.pinchStartLen, this.pinch.dispatch(i, this.element)), i.angle = Qa(m, r), this.rotate.dispatch(i, this.element)), r.x = m.x, r.y = m.y, this.x2 !== null && this.sx2 !== null ? (i.deltaX = (d - this.x2 + g - this.sx2) / 2, i.deltaY = (f - this.y2 + h - this.sy2) / 2) : (i.deltaX = 0, i.deltaY = 0), this.twoFingerPressMove.dispatch(i, this.element), this.sx2 = g, this.sy2 = h;
4261
+ var g = s.touches[1].pageX, h = s.touches[1].pageY, m = { x: s.touches[1].pageX - d, y: s.touches[1].pageY - f };
4262
+ r.x !== null && (this.pinchStartLen > 0 && (s.zoom = ct(m) / this.pinchStartLen, this.pinch.dispatch(s, this.element)), s.angle = Qa(m, r), this.rotate.dispatch(s, this.element)), r.x = m.x, r.y = m.y, this.x2 !== null && this.sx2 !== null ? (s.deltaX = (d - this.x2 + g - this.sx2) / 2, s.deltaY = (f - this.y2 + h - this.sy2) / 2) : (s.deltaX = 0, s.deltaY = 0), this.twoFingerPressMove.dispatch(s, this.element), this.sx2 = g, this.sy2 = h;
4244
4263
  } else {
4245
4264
  if (this.x2 !== null) {
4246
- i.deltaX = d - this.x2, i.deltaY = f - this.y2;
4265
+ s.deltaX = d - this.x2, s.deltaY = f - this.y2;
4247
4266
  var C = Math.abs(this.x1 - this.x2), k = Math.abs(this.y1 - this.y2);
4248
4267
  (C > 10 || k > 10) && (this._preventTap = !0);
4249
- } else i.deltaX = 0, i.deltaY = 0;
4250
- this.pressMove.dispatch(i, this.element);
4268
+ } else s.deltaX = 0, s.deltaY = 0;
4269
+ this.pressMove.dispatch(s, this.element);
4251
4270
  }
4252
- this.touchMove.dispatch(i, this.element), this._cancelLongTap(), this.x2 = d, this.y2 = f, l > 1 && i.preventDefault();
4271
+ this.touchMove.dispatch(s, this.element), this._cancelLongTap(), this.x2 = d, this.y2 = f, l > 1 && s.preventDefault();
4253
4272
  }
4254
- } }, { key: "end", value: function(i) {
4255
- if (i.changedTouches) {
4273
+ } }, { key: "end", value: function(s) {
4274
+ if (s.changedTouches) {
4256
4275
  this._cancelLongTap();
4257
4276
  var r = this;
4258
- i.touches.length < 2 && (this.multipointEnd.dispatch(i, this.element), this.sx2 = this.sy2 = null), this.x2 && Math.abs(this.x1 - this.x2) > 30 || this.y2 && Math.abs(this.y1 - this.y2) > 30 ? (i.direction = this._swipeDirection(this.x1, this.x2, this.y1, this.y2), this.swipeTimeout = setTimeout(function() {
4259
- r.swipe.dispatch(i, r.element);
4277
+ s.touches.length < 2 && (this.multipointEnd.dispatch(s, this.element), this.sx2 = this.sy2 = null), this.x2 && Math.abs(this.x1 - this.x2) > 30 || this.y2 && Math.abs(this.y1 - this.y2) > 30 ? (s.direction = this._swipeDirection(this.x1, this.x2, this.y1, this.y2), this.swipeTimeout = setTimeout(function() {
4278
+ r.swipe.dispatch(s, r.element);
4260
4279
  }, 0)) : (this.tapTimeout = setTimeout(function() {
4261
- r._preventTap || r.tap.dispatch(i, r.element), r.isDoubleTap && (r.doubleTap.dispatch(i, r.element), r.isDoubleTap = !1);
4280
+ r._preventTap || r.tap.dispatch(s, r.element), r.isDoubleTap && (r.doubleTap.dispatch(s, r.element), r.isDoubleTap = !1);
4262
4281
  }, 0), r.isDoubleTap || (r.singleTapTimeout = setTimeout(function() {
4263
- r.singleTap.dispatch(i, r.element);
4264
- }, 250))), this.touchEnd.dispatch(i, this.element), this.preV.x = 0, this.preV.y = 0, this.zoom = 1, this.pinchStartLen = null, this.x1 = this.x2 = this.y1 = this.y2 = null;
4282
+ r.singleTap.dispatch(s, r.element);
4283
+ }, 250))), this.touchEnd.dispatch(s, this.element), this.preV.x = 0, this.preV.y = 0, this.zoom = 1, this.pinchStartLen = null, this.x1 = this.x2 = this.y1 = this.y2 = null;
4265
4284
  }
4266
4285
  } }, { key: "cancelAll", value: function() {
4267
4286
  this._preventTap = !0, clearTimeout(this.singleTapTimeout), clearTimeout(this.tapTimeout), clearTimeout(this.longTapTimeout), clearTimeout(this.swipeTimeout);
4268
- } }, { key: "cancel", value: function(i) {
4269
- this.cancelAll(), this.touchCancel.dispatch(i, this.element);
4287
+ } }, { key: "cancel", value: function(s) {
4288
+ this.cancelAll(), this.touchCancel.dispatch(s, this.element);
4270
4289
  } }, { key: "_cancelLongTap", value: function() {
4271
4290
  clearTimeout(this.longTapTimeout);
4272
4291
  } }, { key: "_cancelSingleTap", value: function() {
4273
4292
  clearTimeout(this.singleTapTimeout);
4274
- } }, { key: "_swipeDirection", value: function(i, r, l, d) {
4275
- return Math.abs(i - r) >= Math.abs(l - d) ? i - r > 0 ? "Left" : "Right" : l - d > 0 ? "Up" : "Down";
4276
- } }, { key: "on", value: function(i, r) {
4277
- this[i] && this[i].add(r);
4278
- } }, { key: "off", value: function(i, r) {
4279
- this[i] && this[i].del(r);
4293
+ } }, { key: "_swipeDirection", value: function(s, r, l, d) {
4294
+ return Math.abs(s - r) >= Math.abs(l - d) ? s - r > 0 ? "Left" : "Right" : l - d > 0 ? "Up" : "Down";
4295
+ } }, { key: "on", value: function(s, r) {
4296
+ this[s] && this[s].add(r);
4297
+ } }, { key: "off", value: function(s, r) {
4298
+ this[s] && this[s].del(r);
4280
4299
  } }, { key: "destroy", value: function() {
4281
4300
  return this.singleTapTimeout && clearTimeout(this.singleTapTimeout), this.tapTimeout && clearTimeout(this.tapTimeout), this.longTapTimeout && clearTimeout(this.longTapTimeout), this.swipeTimeout && clearTimeout(this.swipeTimeout), this.element.removeEventListener("touchstart", this.start), this.element.removeEventListener("touchmove", this.move), this.element.removeEventListener("touchend", this.end), this.element.removeEventListener("touchcancel", this.cancel), this.rotate.del(), this.touchStart.del(), this.multipointStart.del(), this.multipointEnd.del(), this.pinch.del(), this.swipe.del(), this.tap.del(), this.doubleTap.del(), this.longTap.del(), this.singleTap.del(), this.pressMove.del(), this.twoFingerPressMove.del(), this.touchMove.del(), this.touchEnd.del(), this.touchCancel.del(), this.preV = this.pinchStartLen = this.zoom = this.isDoubleTap = this.delta = this.last = this.now = this.tapTimeout = this.singleTapTimeout = this.longTapTimeout = this.swipeTimeout = this.x1 = this.x2 = this.y1 = this.y2 = this.preTapPosition = this.rotate = this.touchStart = this.multipointStart = this.multipointEnd = this.pinch = this.swipe = this.tap = this.doubleTap = this.longTap = this.singleTap = this.pressMove = this.touchMove = this.touchEnd = this.touchCancel = this.twoFingerPressMove = null, window.removeEventListener("scroll", this._cancelAllHandler), null;
4282
4301
  } }]);
4283
- function $t(i) {
4302
+ function Et(s) {
4284
4303
  var r = function() {
4285
4304
  var h, m = document.createElement("fakeelement"), C = { transition: "transitionend", OTransition: "oTransitionEnd", MozTransition: "transitionend", WebkitTransition: "webkitTransitionEnd" };
4286
4305
  for (h in C) if (m.style[h] !== void 0) return C[h];
4287
- }(), l = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth, d = E(i, "gslide-media") ? i : i.querySelector(".gslide-media"), f = A(d, ".ginner-container"), g = i.querySelector(".gslide-description");
4306
+ }(), l = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth, d = T(s, "gslide-media") ? s : s.querySelector(".gslide-media"), f = A(d, ".ginner-container"), g = s.querySelector(".gslide-description");
4288
4307
  l > 769 && (d = f), _(d, "greset"), I(d, "translate3d(0, 0, 0)"), w(r, { onElement: d, once: !0, withCallback: function(h, m) {
4289
4308
  L(d, "greset");
4290
4309
  } }), d.style.opacity = "", g && (g.style.opacity = "");
4291
4310
  }
4292
- function ai(i) {
4293
- if (i.events.hasOwnProperty("touch")) return !1;
4294
- var r, l, d, f = ee(), g = f.width, h = f.height, m = !1, C = null, k = null, M = null, $ = !1, z = 1, B = 1, F = !1, G = !1, he = null, fe = null, Ae = null, se = null, Me = 0, Ie = 0, Ke = !1, Ye = !1, ve = {}, we = {}, ia = 0, sa = 0, ni = document.getElementById("glightbox-slider"), lt = document.querySelector(".goverlay"), ri = new ti(ni, { touchStart: function(U) {
4295
- if (m = !0, (E(U.targetTouches[0].target, "ginner-container") || A(U.targetTouches[0].target, ".gslide-desc") || U.targetTouches[0].target.nodeName.toLowerCase() == "a") && (m = !1), A(U.targetTouches[0].target, ".gslide-inline") && !E(U.targetTouches[0].target.parentNode, "gslide-inline") && (m = !1), m) {
4296
- if (we = U.targetTouches[0], ve.pageX = U.targetTouches[0].pageX, ve.pageY = U.targetTouches[0].pageY, ia = U.targetTouches[0].clientX, sa = U.targetTouches[0].clientY, C = i.activeSlide, k = C.querySelector(".gslide-media"), d = C.querySelector(".gslide-inline"), M = null, E(k, "gslide-image") && (M = k.querySelector("img")), (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth) > 769 && (k = C.querySelector(".ginner-container")), L(lt, "greset"), U.pageX > 20 && U.pageX < window.innerWidth - 20) return;
4311
+ function ai(s) {
4312
+ if (s.events.hasOwnProperty("touch")) return !1;
4313
+ var r, l, d, f = ee(), g = f.width, h = f.height, m = !1, C = null, k = null, M = null, E = !1, z = 1, B = 1, F = !1, G = !1, he = null, fe = null, Ae = null, se = null, Me = 0, Ie = 0, Ke = !1, Ye = !1, ve = {}, we = {}, ia = 0, sa = 0, ni = document.getElementById("glightbox-slider"), lt = document.querySelector(".goverlay"), ri = new ti(ni, { touchStart: function(U) {
4314
+ if (m = !0, (T(U.targetTouches[0].target, "ginner-container") || A(U.targetTouches[0].target, ".gslide-desc") || U.targetTouches[0].target.nodeName.toLowerCase() == "a") && (m = !1), A(U.targetTouches[0].target, ".gslide-inline") && !T(U.targetTouches[0].target.parentNode, "gslide-inline") && (m = !1), m) {
4315
+ if (we = U.targetTouches[0], ve.pageX = U.targetTouches[0].pageX, ve.pageY = U.targetTouches[0].pageY, ia = U.targetTouches[0].clientX, sa = U.targetTouches[0].clientY, C = s.activeSlide, k = C.querySelector(".gslide-media"), d = C.querySelector(".gslide-inline"), M = null, T(k, "gslide-image") && (M = k.querySelector("img")), (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth) > 769 && (k = C.querySelector(".ginner-container")), L(lt, "greset"), U.pageX > 20 && U.pageX < window.innerWidth - 20) return;
4297
4316
  U.preventDefault();
4298
4317
  }
4299
4318
  }, touchMove: function(U) {
@@ -4302,17 +4321,17 @@ function rs() {
4302
4321
  var oe = ve.pageX - we.pageX;
4303
4322
  if (Math.abs(oe) <= 13) return !1;
4304
4323
  }
4305
- $ = !0;
4324
+ E = !0;
4306
4325
  var ze, dt = U.targetTouches[0].clientX, oi = U.targetTouches[0].clientY, ci = ia - dt, li = sa - oi;
4307
- if (Math.abs(ci) > Math.abs(li) ? (Ke = !1, Ye = !0) : (Ye = !1, Ke = !0), r = we.pageX - ve.pageX, Me = 100 * r / g, l = we.pageY - ve.pageY, Ie = 100 * l / h, Ke && M && (ze = 1 - Math.abs(l) / h, lt.style.opacity = ze, i.settings.touchFollowAxis && (Me = 0)), Ye && (ze = 1 - Math.abs(r) / g, k.style.opacity = ze, i.settings.touchFollowAxis && (Ie = 0)), !M) return I(k, "translate3d(".concat(Me, "%, 0, 0)"));
4326
+ if (Math.abs(ci) > Math.abs(li) ? (Ke = !1, Ye = !0) : (Ye = !1, Ke = !0), r = we.pageX - ve.pageX, Me = 100 * r / g, l = we.pageY - ve.pageY, Ie = 100 * l / h, Ke && M && (ze = 1 - Math.abs(l) / h, lt.style.opacity = ze, s.settings.touchFollowAxis && (Me = 0)), Ye && (ze = 1 - Math.abs(r) / g, k.style.opacity = ze, s.settings.touchFollowAxis && (Ie = 0)), !M) return I(k, "translate3d(".concat(Me, "%, 0, 0)"));
4308
4327
  I(k, "translate3d(".concat(Me, "%, ").concat(Ie, "%, 0)"));
4309
4328
  }
4310
4329
  }, touchEnd: function() {
4311
4330
  if (m) {
4312
- if ($ = !1, G || F) return Ae = he, void (se = fe);
4331
+ if (E = !1, G || F) return Ae = he, void (se = fe);
4313
4332
  var U = Math.abs(parseInt(Ie)), oe = Math.abs(parseInt(Me));
4314
- if (!(U > 29 && M)) return U < 29 && oe < 25 ? (_(lt, "greset"), lt.style.opacity = 1, $t(k)) : void 0;
4315
- i.close();
4333
+ if (!(U > 29 && M)) return U < 29 && oe < 25 ? (_(lt, "greset"), lt.style.opacity = 1, Et(k)) : void 0;
4334
+ s.close();
4316
4335
  }
4317
4336
  }, multipointEnd: function() {
4318
4337
  setTimeout(function() {
@@ -4321,7 +4340,7 @@ function rs() {
4321
4340
  }, multipointStart: function() {
4322
4341
  F = !0, z = B || 1;
4323
4342
  }, pinch: function(U) {
4324
- if (!M || $) return !1;
4343
+ if (!M || E) return !1;
4325
4344
  F = !0, M.scaleX = M.scaleY = z * U.zoom;
4326
4345
  var oe = z * U.zoom;
4327
4346
  if (G = !0, oe <= 1) return G = !1, oe = 1, se = null, Ae = null, he = null, fe = null, void M.setAttribute("style", "");
@@ -4337,16 +4356,16 @@ function rs() {
4337
4356
  if (!G) if (F) F = !1;
4338
4357
  else {
4339
4358
  if (U.direction == "Left") {
4340
- if (i.index == i.elements.length - 1) return $t(k);
4341
- i.nextSlide();
4359
+ if (s.index == s.elements.length - 1) return Et(k);
4360
+ s.nextSlide();
4342
4361
  }
4343
4362
  if (U.direction == "Right") {
4344
- if (i.index == 0) return $t(k);
4345
- i.prevSlide();
4363
+ if (s.index == 0) return Et(k);
4364
+ s.prevSlide();
4346
4365
  }
4347
4366
  }
4348
4367
  } });
4349
- i.events.touch = ri;
4368
+ s.events.touch = ri;
4350
4369
  }
4351
4370
  var ea = Se(), ta = Se() !== null || document.createTouch !== void 0 || "ontouchstart" in window || "onmsgesturechange" in window || navigator.msMaxTouchPoints, aa = document.getElementsByTagName("html")[0], ii = { selector: ".glightbox", elements: null, skin: "clean", theme: "clean", closeButton: !0, startAt: null, autoplayVideos: !0, autofocusVideos: !0, descPosition: "bottom", width: "900px", height: "506px", videosWidth: "960px", beforeSlideChange: null, afterSlideChange: null, beforeSlideLoad: null, afterSlideLoad: null, slideInserted: null, slideRemoved: null, slideExtraAttributes: null, onOpen: null, onClose: null, loop: !1, zoomable: !0, draggable: !0, dragAutoSnap: !1, dragToleranceX: 40, dragToleranceY: 65, preload: !0, oneSlidePerOpen: !1, touchNavigation: !0, touchFollowAxis: !0, keyboardNavigation: !0, closeOnOutsideClick: !0, plugins: !1, plyr: { css: "https://cdn.plyr.io/3.6.12/plyr.css", js: "https://cdn.plyr.io/3.6.12/plyr.js", config: { ratio: "16:9", fullscreen: { enabled: !0, iosNative: !0 }, youtube: { noCookie: !0, rel: 0, showinfo: 0, iv_load_policy: 3 }, vimeo: { byline: !1, portrait: !1, title: !1, transparent: !1 } } }, openEffect: "zoom", closeEffect: "zoom", slideEffect: "slide", moreText: "See more", moreLength: 60, cssEfects: { fade: { in: "fadeIn", out: "fadeOut" }, zoom: { in: "zoomIn", out: "zoomOut" }, slide: { in: "slideInRight", out: "slideOutLeft" }, slideBack: { in: "slideInLeft", out: "slideOutRight" }, none: { in: "none", out: "none" } }, svg: { close: '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 512 512" xml:space="preserve"><g><g><path d="M505.943,6.058c-8.077-8.077-21.172-8.077-29.249,0L6.058,476.693c-8.077,8.077-8.077,21.172,0,29.249C10.096,509.982,15.39,512,20.683,512c5.293,0,10.586-2.019,14.625-6.059L505.943,35.306C514.019,27.23,514.019,14.135,505.943,6.058z"/></g></g><g><g><path d="M505.942,476.694L35.306,6.059c-8.076-8.077-21.172-8.077-29.248,0c-8.077,8.076-8.077,21.171,0,29.248l470.636,470.636c4.038,4.039,9.332,6.058,14.625,6.058c5.293,0,10.587-2.019,14.624-6.057C514.018,497.866,514.018,484.771,505.942,476.694z"/></g></g></svg>', next: '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 477.175 477.175" xml:space="preserve"> <g><path d="M360.731,229.075l-225.1-225.1c-5.3-5.3-13.8-5.3-19.1,0s-5.3,13.8,0,19.1l215.5,215.5l-215.5,215.5c-5.3,5.3-5.3,13.8,0,19.1c2.6,2.6,6.1,4,9.5,4c3.4,0,6.9-1.3,9.5-4l225.1-225.1C365.931,242.875,365.931,234.275,360.731,229.075z"/></g></svg>', prev: '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 477.175 477.175" xml:space="preserve"><g><path d="M145.188,238.575l215.5-215.5c5.3-5.3,5.3-13.8,0-19.1s-13.8-5.3-19.1,0l-225.1,225.1c-5.3,5.3-5.3,13.8,0,19.1l225.1,225c2.6,2.6,6.1,4,9.5,4s6.9-1.3,9.5-4c5.3-5.3,5.3-13.8,0-19.1L145.188,238.575z"/></g></svg>' }, slideHTML: `<div class="gslide">
4352
4371
  <div class="gslide-inner-content">
@@ -4370,22 +4389,22 @@ function rs() {
4370
4389
  <button class="gprev gbtn" aria-label="Previous" data-taborder="2">{prevSVG}</button>
4371
4390
  <button class="gnext gbtn" aria-label="Next" data-taborder="1">{nextSVG}</button>
4372
4391
  </div>
4373
- </div>` }, si = n(function i() {
4392
+ </div>` }, si = n(function s() {
4374
4393
  var r = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
4375
- t(this, i), this.customOptions = r, this.settings = v(ii, r), this.effectsClasses = this.getAnimationClasses(), this.videoPlayers = {}, this.apiEvents = [], this.fullElementsList = !1;
4394
+ t(this, s), this.customOptions = r, this.settings = v(ii, r), this.effectsClasses = this.getAnimationClasses(), this.videoPlayers = {}, this.apiEvents = [], this.fullElementsList = !1;
4376
4395
  }, [{ key: "init", value: function() {
4377
- var i = this, r = this.getSelector();
4396
+ var s = this, r = this.getSelector();
4378
4397
  r && (this.baseEvents = w("click", { onElement: r, withCallback: function(l, d) {
4379
- l.preventDefault(), i.open(d);
4398
+ l.preventDefault(), s.open(d);
4380
4399
  } })), this.elements = this.getElements();
4381
4400
  } }, { key: "open", value: function() {
4382
- var i = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null, r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
4401
+ var s = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null, r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
4383
4402
  if (this.elements.length === 0) return !1;
4384
4403
  this.activeSlide = null, this.prevActiveSlideIndex = null, this.prevActiveSlide = null;
4385
4404
  var l = rt(r) ? r : this.settings.startAt;
4386
- if (W(i)) {
4387
- var d = i.getAttribute("data-gallery");
4388
- d && (this.fullElementsList = this.elements, this.elements = this.getGalleryElements(this.elements, d)), de(l) && (l = this.getElementIndex(i)) < 0 && (l = 0);
4405
+ if (W(s)) {
4406
+ var d = s.getAttribute("data-gallery");
4407
+ d && (this.fullElementsList = this.elements, this.elements = this.getGalleryElements(this.elements, d)), de(l) && (l = this.getElementIndex(s)) < 0 && (l = 0);
4389
4408
  }
4390
4409
  rt(l) || (l = 0), this.build(), P(this.overlay, this.settings.openEffect === "none" ? "none" : this.settings.cssEfects.fade.in);
4391
4410
  var f = document.body, g = window.innerWidth - document.documentElement.clientWidth;
@@ -4395,29 +4414,29 @@ function rs() {
4395
4414
  }
4396
4415
  _(f, "glightbox-open"), _(aa, "glightbox-open"), ea && (_(document.body, "glightbox-mobile"), this.settings.slideEffect = "slide"), this.showSlide(l, !0), this.elements.length === 1 ? (_(this.prevButton, "glightbox-button-hidden"), _(this.nextButton, "glightbox-button-hidden")) : (L(this.prevButton, "glightbox-button-hidden"), L(this.nextButton, "glightbox-button-hidden")), this.lightboxOpen = !0, this.trigger("open"), j(this.settings.onOpen) && this.settings.onOpen(), ta && this.settings.touchNavigation && ai(this), this.settings.keyboardNavigation && Wa(this);
4397
4416
  } }, { key: "openAt", value: function() {
4398
- var i = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0;
4399
- this.open(null, i);
4417
+ var s = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0;
4418
+ this.open(null, s);
4400
4419
  } }, { key: "showSlide", value: function() {
4401
- var i = this, r = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, l = arguments.length > 1 && arguments[1] !== void 0 && arguments[1];
4420
+ var s = this, r = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, l = arguments.length > 1 && arguments[1] !== void 0 && arguments[1];
4402
4421
  be(this.loader), this.index = parseInt(r);
4403
4422
  var d = this.slidesContainer.querySelector(".current");
4404
4423
  d && L(d, "current"), this.slideAnimateOut();
4405
4424
  var f = this.slidesContainer.querySelectorAll(".gslide")[r];
4406
- if (E(f, "loaded")) this.slideAnimateIn(f, l), Q(this.loader);
4425
+ if (T(f, "loaded")) this.slideAnimateIn(f, l), Q(this.loader);
4407
4426
  else {
4408
4427
  be(this.loader);
4409
4428
  var g = this.elements[r], h = { index: this.index, slide: f, slideNode: f, slideConfig: g.slideConfig, slideIndex: this.index, trigger: g.node, player: null };
4410
4429
  this.trigger("slide_before_load", h), g.instance.setContent(f, function() {
4411
- Q(i.loader), i.resize(), i.slideAnimateIn(f, l), i.trigger("slide_after_load", h);
4430
+ Q(s.loader), s.resize(), s.slideAnimateIn(f, l), s.trigger("slide_after_load", h);
4412
4431
  });
4413
4432
  }
4414
- this.slideDescription = f.querySelector(".gslide-description"), this.slideDescriptionContained = this.slideDescription && E(this.slideDescription.parentNode, "gslide-media"), this.settings.preload && (this.preloadSlide(r + 1), this.preloadSlide(r - 1)), this.updateNavigationClasses(), this.activeSlide = f;
4415
- } }, { key: "preloadSlide", value: function(i) {
4433
+ this.slideDescription = f.querySelector(".gslide-description"), this.slideDescriptionContained = this.slideDescription && T(this.slideDescription.parentNode, "gslide-media"), this.settings.preload && (this.preloadSlide(r + 1), this.preloadSlide(r - 1)), this.updateNavigationClasses(), this.activeSlide = f;
4434
+ } }, { key: "preloadSlide", value: function(s) {
4416
4435
  var r = this;
4417
- if (i < 0 || i > this.elements.length - 1 || de(this.elements[i])) return !1;
4418
- var l = this.slidesContainer.querySelectorAll(".gslide")[i];
4419
- if (E(l, "loaded")) return !1;
4420
- var d = this.elements[i], f = d.type, g = { index: i, slide: l, slideNode: l, slideConfig: d.slideConfig, slideIndex: i, trigger: d.node, player: null };
4436
+ if (s < 0 || s > this.elements.length - 1 || de(this.elements[s])) return !1;
4437
+ var l = this.slidesContainer.querySelectorAll(".gslide")[s];
4438
+ if (T(l, "loaded")) return !1;
4439
+ var d = this.elements[s], f = d.type, g = { index: s, slide: l, slideNode: l, slideConfig: d.slideConfig, slideIndex: s, trigger: d.node, player: null };
4421
4440
  this.trigger("slide_before_load", g), f === "video" || f === "external" ? setTimeout(function() {
4422
4441
  d.instance.setContent(l, function() {
4423
4442
  r.trigger("slide_after_load", g);
@@ -4430,13 +4449,13 @@ function rs() {
4430
4449
  } }, { key: "nextSlide", value: function() {
4431
4450
  this.goToSlide(this.index + 1);
4432
4451
  } }, { key: "goToSlide", value: function() {
4433
- var i = arguments.length > 0 && arguments[0] !== void 0 && arguments[0];
4434
- if (this.prevActiveSlide = this.activeSlide, this.prevActiveSlideIndex = this.index, !this.loop() && (i < 0 || i > this.elements.length - 1)) return !1;
4435
- i < 0 ? i = this.elements.length - 1 : i >= this.elements.length && (i = 0), this.showSlide(i);
4452
+ var s = arguments.length > 0 && arguments[0] !== void 0 && arguments[0];
4453
+ if (this.prevActiveSlide = this.activeSlide, this.prevActiveSlideIndex = this.index, !this.loop() && (s < 0 || s > this.elements.length - 1)) return !1;
4454
+ s < 0 ? s = this.elements.length - 1 : s >= this.elements.length && (s = 0), this.showSlide(s);
4436
4455
  } }, { key: "insertSlide", value: function() {
4437
- var i = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : -1;
4456
+ var s = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : -1;
4438
4457
  r < 0 && (r = this.elements.length);
4439
- var l = new ot(i, this, r), d = l.getConfig(), f = v({}, d), g = l.create(), h = this.elements.length - 1;
4458
+ var l = new ot(s, this, r), d = l.getConfig(), f = v({}, d), g = l.create(), h = this.elements.length - 1;
4440
4459
  f.index = r, f.node = !1, f.instance = l, f.slideConfig = d, this.elements.splice(r, 0, f);
4441
4460
  var m = null, C = null;
4442
4461
  if (this.slidesContainer) {
@@ -4449,100 +4468,100 @@ function rs() {
4449
4468
  }
4450
4469
  this.trigger("slide_inserted", { index: r, slide: m, slideNode: m, slideConfig: d, slideIndex: r, trigger: null, player: C }), j(this.settings.slideInserted) && this.settings.slideInserted({ index: r, slide: m, player: C });
4451
4470
  } }, { key: "removeSlide", value: function() {
4452
- var i = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : -1;
4453
- if (i < 0 || i > this.elements.length - 1) return !1;
4454
- var r = this.slidesContainer && this.slidesContainer.querySelectorAll(".gslide")[i];
4455
- r && (this.getActiveSlideIndex() == i && (i == this.elements.length - 1 ? this.prevSlide() : this.nextSlide()), r.parentNode.removeChild(r)), this.elements.splice(i, 1), this.trigger("slide_removed", i), j(this.settings.slideRemoved) && this.settings.slideRemoved(i);
4456
- } }, { key: "slideAnimateIn", value: function(i, r) {
4457
- var l = this, d = i.querySelector(".gslide-media"), f = i.querySelector(".gslide-description"), g = { index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, slideNode: this.prevActiveSlide, slideIndex: this.prevActiveSlide, slideConfig: de(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].slideConfig, trigger: de(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].node, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, h = { index: this.index, slide: this.activeSlide, slideNode: this.activeSlide, slideConfig: this.elements[this.index].slideConfig, slideIndex: this.index, trigger: this.elements[this.index].node, player: this.getSlidePlayerInstance(this.index) };
4458
- if (d.offsetWidth > 0 && f && (Q(f), f.style.display = ""), L(i, this.effectsClasses), r) P(i, this.settings.cssEfects[this.settings.openEffect].in, function() {
4459
- l.settings.autoplayVideos && l.slidePlayerPlay(i), l.trigger("slide_changed", { prev: g, current: h }), j(l.settings.afterSlideChange) && l.settings.afterSlideChange.apply(l, [g, h]);
4471
+ var s = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : -1;
4472
+ if (s < 0 || s > this.elements.length - 1) return !1;
4473
+ var r = this.slidesContainer && this.slidesContainer.querySelectorAll(".gslide")[s];
4474
+ r && (this.getActiveSlideIndex() == s && (s == this.elements.length - 1 ? this.prevSlide() : this.nextSlide()), r.parentNode.removeChild(r)), this.elements.splice(s, 1), this.trigger("slide_removed", s), j(this.settings.slideRemoved) && this.settings.slideRemoved(s);
4475
+ } }, { key: "slideAnimateIn", value: function(s, r) {
4476
+ var l = this, d = s.querySelector(".gslide-media"), f = s.querySelector(".gslide-description"), g = { index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, slideNode: this.prevActiveSlide, slideIndex: this.prevActiveSlide, slideConfig: de(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].slideConfig, trigger: de(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].node, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, h = { index: this.index, slide: this.activeSlide, slideNode: this.activeSlide, slideConfig: this.elements[this.index].slideConfig, slideIndex: this.index, trigger: this.elements[this.index].node, player: this.getSlidePlayerInstance(this.index) };
4477
+ if (d.offsetWidth > 0 && f && (Q(f), f.style.display = ""), L(s, this.effectsClasses), r) P(s, this.settings.cssEfects[this.settings.openEffect].in, function() {
4478
+ l.settings.autoplayVideos && l.slidePlayerPlay(s), l.trigger("slide_changed", { prev: g, current: h }), j(l.settings.afterSlideChange) && l.settings.afterSlideChange.apply(l, [g, h]);
4460
4479
  });
4461
4480
  else {
4462
4481
  var m = this.settings.slideEffect, C = m !== "none" ? this.settings.cssEfects[m].in : m;
4463
- this.prevActiveSlideIndex > this.index && this.settings.slideEffect == "slide" && (C = this.settings.cssEfects.slideBack.in), P(i, C, function() {
4464
- l.settings.autoplayVideos && l.slidePlayerPlay(i), l.trigger("slide_changed", { prev: g, current: h }), j(l.settings.afterSlideChange) && l.settings.afterSlideChange.apply(l, [g, h]);
4482
+ this.prevActiveSlideIndex > this.index && this.settings.slideEffect == "slide" && (C = this.settings.cssEfects.slideBack.in), P(s, C, function() {
4483
+ l.settings.autoplayVideos && l.slidePlayerPlay(s), l.trigger("slide_changed", { prev: g, current: h }), j(l.settings.afterSlideChange) && l.settings.afterSlideChange.apply(l, [g, h]);
4465
4484
  });
4466
4485
  }
4467
4486
  setTimeout(function() {
4468
- l.resize(i);
4469
- }, 100), _(i, "current");
4487
+ l.resize(s);
4488
+ }, 100), _(s, "current");
4470
4489
  } }, { key: "slideAnimateOut", value: function() {
4471
4490
  if (!this.prevActiveSlide) return !1;
4472
- var i = this.prevActiveSlide;
4473
- L(i, this.effectsClasses), _(i, "prev");
4491
+ var s = this.prevActiveSlide;
4492
+ L(s, this.effectsClasses), _(s, "prev");
4474
4493
  var r = this.settings.slideEffect, l = r !== "none" ? this.settings.cssEfects[r].out : r;
4475
- this.slidePlayerPause(i), this.trigger("slide_before_change", { prev: { index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, slideNode: this.prevActiveSlide, slideIndex: this.prevActiveSlideIndex, slideConfig: de(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].slideConfig, trigger: de(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].node, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, current: { index: this.index, slide: this.activeSlide, slideNode: this.activeSlide, slideIndex: this.index, slideConfig: this.elements[this.index].slideConfig, trigger: this.elements[this.index].node, player: this.getSlidePlayerInstance(this.index) } }), j(this.settings.beforeSlideChange) && this.settings.beforeSlideChange.apply(this, [{ index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, { index: this.index, slide: this.activeSlide, player: this.getSlidePlayerInstance(this.index) }]), this.prevActiveSlideIndex > this.index && this.settings.slideEffect == "slide" && (l = this.settings.cssEfects.slideBack.out), P(i, l, function() {
4476
- var d = i.querySelector(".ginner-container"), f = i.querySelector(".gslide-media"), g = i.querySelector(".gslide-description");
4477
- d.style.transform = "", f.style.transform = "", L(f, "greset"), f.style.opacity = "", g && (g.style.opacity = ""), L(i, "prev");
4494
+ this.slidePlayerPause(s), this.trigger("slide_before_change", { prev: { index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, slideNode: this.prevActiveSlide, slideIndex: this.prevActiveSlideIndex, slideConfig: de(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].slideConfig, trigger: de(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].node, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, current: { index: this.index, slide: this.activeSlide, slideNode: this.activeSlide, slideIndex: this.index, slideConfig: this.elements[this.index].slideConfig, trigger: this.elements[this.index].node, player: this.getSlidePlayerInstance(this.index) } }), j(this.settings.beforeSlideChange) && this.settings.beforeSlideChange.apply(this, [{ index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, { index: this.index, slide: this.activeSlide, player: this.getSlidePlayerInstance(this.index) }]), this.prevActiveSlideIndex > this.index && this.settings.slideEffect == "slide" && (l = this.settings.cssEfects.slideBack.out), P(s, l, function() {
4495
+ var d = s.querySelector(".ginner-container"), f = s.querySelector(".gslide-media"), g = s.querySelector(".gslide-description");
4496
+ d.style.transform = "", f.style.transform = "", L(f, "greset"), f.style.opacity = "", g && (g.style.opacity = ""), L(s, "prev");
4478
4497
  });
4479
4498
  } }, { key: "getAllPlayers", value: function() {
4480
4499
  return this.videoPlayers;
4481
- } }, { key: "getSlidePlayerInstance", value: function(i) {
4482
- var r = "gvideo" + i, l = this.getAllPlayers();
4500
+ } }, { key: "getSlidePlayerInstance", value: function(s) {
4501
+ var r = "gvideo" + s, l = this.getAllPlayers();
4483
4502
  return !(!K(l, r) || !l[r]) && l[r];
4484
- } }, { key: "stopSlideVideo", value: function(i) {
4485
- if (W(i)) {
4486
- var r = i.querySelector(".gvideo-wrapper");
4487
- r && (i = r.getAttribute("data-index"));
4503
+ } }, { key: "stopSlideVideo", value: function(s) {
4504
+ if (W(s)) {
4505
+ var r = s.querySelector(".gvideo-wrapper");
4506
+ r && (s = r.getAttribute("data-index"));
4488
4507
  }
4489
4508
  console.log("stopSlideVideo is deprecated, use slidePlayerPause");
4490
- var l = this.getSlidePlayerInstance(i);
4509
+ var l = this.getSlidePlayerInstance(s);
4491
4510
  l && l.playing && l.pause();
4492
- } }, { key: "slidePlayerPause", value: function(i) {
4493
- if (W(i)) {
4494
- var r = i.querySelector(".gvideo-wrapper");
4495
- r && (i = r.getAttribute("data-index"));
4511
+ } }, { key: "slidePlayerPause", value: function(s) {
4512
+ if (W(s)) {
4513
+ var r = s.querySelector(".gvideo-wrapper");
4514
+ r && (s = r.getAttribute("data-index"));
4496
4515
  }
4497
- var l = this.getSlidePlayerInstance(i);
4516
+ var l = this.getSlidePlayerInstance(s);
4498
4517
  l && l.playing && l.pause();
4499
- } }, { key: "playSlideVideo", value: function(i) {
4500
- if (W(i)) {
4501
- var r = i.querySelector(".gvideo-wrapper");
4502
- r && (i = r.getAttribute("data-index"));
4518
+ } }, { key: "playSlideVideo", value: function(s) {
4519
+ if (W(s)) {
4520
+ var r = s.querySelector(".gvideo-wrapper");
4521
+ r && (s = r.getAttribute("data-index"));
4503
4522
  }
4504
4523
  console.log("playSlideVideo is deprecated, use slidePlayerPlay");
4505
- var l = this.getSlidePlayerInstance(i);
4524
+ var l = this.getSlidePlayerInstance(s);
4506
4525
  l && !l.playing && l.play();
4507
- } }, { key: "slidePlayerPlay", value: function(i) {
4526
+ } }, { key: "slidePlayerPlay", value: function(s) {
4508
4527
  var r;
4509
4528
  if (!ea || (r = this.settings.plyr.config) !== null && r !== void 0 && r.muted) {
4510
- if (W(i)) {
4511
- var l = i.querySelector(".gvideo-wrapper");
4512
- l && (i = l.getAttribute("data-index"));
4529
+ if (W(s)) {
4530
+ var l = s.querySelector(".gvideo-wrapper");
4531
+ l && (s = l.getAttribute("data-index"));
4513
4532
  }
4514
- var d = this.getSlidePlayerInstance(i);
4533
+ var d = this.getSlidePlayerInstance(s);
4515
4534
  d && !d.playing && (d.play(), this.settings.autofocusVideos && d.elements.container.focus());
4516
4535
  }
4517
- } }, { key: "setElements", value: function(i) {
4536
+ } }, { key: "setElements", value: function(s) {
4518
4537
  var r = this;
4519
4538
  this.settings.elements = !1;
4520
4539
  var l = [];
4521
- i && i.length && y(i, function(d, f) {
4540
+ s && s.length && y(s, function(d, f) {
4522
4541
  var g = new ot(d, r, f), h = g.getConfig(), m = v({}, h);
4523
4542
  m.slideConfig = h, m.instance = g, m.index = f, l.push(m);
4524
4543
  }), this.elements = l, this.lightboxOpen && (this.slidesContainer.innerHTML = "", this.elements.length && (y(this.elements, function() {
4525
4544
  var d = ie(r.settings.slideHTML);
4526
4545
  r.slidesContainer.appendChild(d);
4527
4546
  }), this.showSlide(0, !0)));
4528
- } }, { key: "getElementIndex", value: function(i) {
4547
+ } }, { key: "getElementIndex", value: function(s) {
4529
4548
  var r = !1;
4530
4549
  return y(this.elements, function(l, d) {
4531
- if (K(l, "node") && l.node == i) return r = d, !0;
4550
+ if (K(l, "node") && l.node == s) return r = d, !0;
4532
4551
  }), r;
4533
4552
  } }, { key: "getElements", value: function() {
4534
- var i = this, r = [];
4553
+ var s = this, r = [];
4535
4554
  this.elements = this.elements ? this.elements : [], !de(this.settings.elements) && Oe(this.settings.elements) && this.settings.elements.length && y(this.settings.elements, function(d, f) {
4536
- var g = new ot(d, i, f), h = g.getConfig(), m = v({}, h);
4555
+ var g = new ot(d, s, f), h = g.getConfig(), m = v({}, h);
4537
4556
  m.node = !1, m.index = f, m.instance = g, m.slideConfig = h, r.push(m);
4538
4557
  });
4539
4558
  var l = !1;
4540
4559
  return this.getSelector() && (l = document.querySelectorAll(this.getSelector())), l && y(l, function(d, f) {
4541
- var g = new ot(d, i, f), h = g.getConfig(), m = v({}, h);
4560
+ var g = new ot(d, s, f), h = g.getConfig(), m = v({}, h);
4542
4561
  m.node = d, m.index = f, m.instance = g, m.slideConfig = h, m.gallery = d.getAttribute("data-gallery"), r.push(m);
4543
4562
  }), r;
4544
- } }, { key: "getGalleryElements", value: function(i, r) {
4545
- return i.filter(function(l) {
4563
+ } }, { key: "getGalleryElements", value: function(s, r) {
4564
+ return s.filter(function(l) {
4546
4565
  return l.gallery == r;
4547
4566
  });
4548
4567
  } }, { key: "getSelector", value: function() {
@@ -4552,14 +4571,14 @@ function rs() {
4552
4571
  } }, { key: "getActiveSlideIndex", value: function() {
4553
4572
  return this.index;
4554
4573
  } }, { key: "getAnimationClasses", value: function() {
4555
- var i = [];
4574
+ var s = [];
4556
4575
  for (var r in this.settings.cssEfects) if (this.settings.cssEfects.hasOwnProperty(r)) {
4557
4576
  var l = this.settings.cssEfects[r];
4558
- i.push("g".concat(l.in)), i.push("g".concat(l.out));
4577
+ s.push("g".concat(l.in)), s.push("g".concat(l.out));
4559
4578
  }
4560
- return i.join(" ");
4579
+ return s.join(" ");
4561
4580
  } }, { key: "build", value: function() {
4562
- var i = this;
4581
+ var s = this;
4563
4582
  if (this.built) return !1;
4564
4583
  var r = document.body.childNodes, l = [];
4565
4584
  y(r, function(k) {
@@ -4571,29 +4590,29 @@ function rs() {
4571
4590
  this.modal = m;
4572
4591
  var C = m.querySelector(".gclose");
4573
4592
  this.prevButton = m.querySelector(".gprev"), this.nextButton = m.querySelector(".gnext"), this.overlay = m.querySelector(".goverlay"), this.loader = m.querySelector(".gloader"), this.slidesContainer = document.getElementById("glightbox-slider"), this.bodyHiddenChildElms = l, this.events = {}, _(this.modal, "glightbox-" + this.settings.skin), this.settings.closeButton && C && (this.events.close = w("click", { onElement: C, withCallback: function(k, M) {
4574
- k.preventDefault(), i.close();
4593
+ k.preventDefault(), s.close();
4575
4594
  } })), C && !this.settings.closeButton && C.parentNode.removeChild(C), this.nextButton && (this.events.next = w("click", { onElement: this.nextButton, withCallback: function(k, M) {
4576
- k.preventDefault(), i.nextSlide();
4595
+ k.preventDefault(), s.nextSlide();
4577
4596
  } })), this.prevButton && (this.events.prev = w("click", { onElement: this.prevButton, withCallback: function(k, M) {
4578
- k.preventDefault(), i.prevSlide();
4597
+ k.preventDefault(), s.prevSlide();
4579
4598
  } })), this.settings.closeOnOutsideClick && (this.events.outClose = w("click", { onElement: m, withCallback: function(k, M) {
4580
- i.preventOutsideClick || E(document.body, "glightbox-mobile") || A(k.target, ".ginner-container") || A(k.target, ".gbtn") || E(k.target, "gnext") || E(k.target, "gprev") || i.close();
4599
+ s.preventOutsideClick || T(document.body, "glightbox-mobile") || A(k.target, ".ginner-container") || A(k.target, ".gbtn") || T(k.target, "gnext") || T(k.target, "gprev") || s.close();
4581
4600
  } })), y(this.elements, function(k, M) {
4582
- i.slidesContainer.appendChild(k.instance.create()), k.slideNode = i.slidesContainer.querySelectorAll(".gslide")[M];
4601
+ s.slidesContainer.appendChild(k.instance.create()), k.slideNode = s.slidesContainer.querySelectorAll(".gslide")[M];
4583
4602
  }), ta && _(document.body, "glightbox-touch"), this.events.resize = w("resize", { onElement: window, withCallback: function() {
4584
- i.resize();
4603
+ s.resize();
4585
4604
  } }), this.built = !0;
4586
4605
  } }, { key: "resize", value: function() {
4587
- var i = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;
4588
- if ((i = i || this.activeSlide) && !E(i, "zoomed")) {
4589
- var r = ee(), l = i.querySelector(".gvideo-wrapper"), d = i.querySelector(".gslide-image"), f = this.slideDescription, g = r.width, h = r.height;
4606
+ var s = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null;
4607
+ if ((s = s || this.activeSlide) && !T(s, "zoomed")) {
4608
+ var r = ee(), l = s.querySelector(".gvideo-wrapper"), d = s.querySelector(".gslide-image"), f = this.slideDescription, g = r.width, h = r.height;
4590
4609
  if (g <= 768 ? _(document.body, "glightbox-mobile") : L(document.body, "glightbox-mobile"), l || d) {
4591
4610
  var m = !1;
4592
- if (f && (E(f, "description-bottom") || E(f, "description-top")) && !E(f, "gabsolute") && (m = !0), d) {
4611
+ if (f && (T(f, "description-bottom") || T(f, "description-top")) && !T(f, "gabsolute") && (m = !0), d) {
4593
4612
  if (g <= 768) d.querySelector("img");
4594
4613
  else if (m) {
4595
- var C, k, M = f.offsetHeight, $ = d.querySelector("img"), z = (C = this.elements[this.index]) === null || C === void 0 ? void 0 : C.node, B = "100vh";
4596
- z && (B = (k = z.getAttribute("data-height")) !== null && k !== void 0 ? k : B), $.setAttribute("style", "max-height: calc(".concat(B, " - ").concat(M, "px)")), f.setAttribute("style", "max-width: ".concat($.offsetWidth, "px;"));
4614
+ var C, k, M = f.offsetHeight, E = d.querySelector("img"), z = (C = this.elements[this.index]) === null || C === void 0 ? void 0 : C.node, B = "100vh";
4615
+ z && (B = (k = z.getAttribute("data-height")) !== null && k !== void 0 ? k : B), E.setAttribute("style", "max-height: calc(".concat(B, " - ").concat(M, "px)")), f.setAttribute("style", "max-width: ".concat(E.offsetWidth, "px;"));
4597
4616
  }
4598
4617
  }
4599
4618
  if (l) {
@@ -4613,13 +4632,13 @@ function rs() {
4613
4632
  } }, { key: "reload", value: function() {
4614
4633
  this.init();
4615
4634
  } }, { key: "updateNavigationClasses", value: function() {
4616
- var i = this.loop();
4617
- L(this.nextButton, "disabled"), L(this.prevButton, "disabled"), this.index == 0 && this.elements.length - 1 == 0 ? (_(this.prevButton, "disabled"), _(this.nextButton, "disabled")) : this.index !== 0 || i ? this.index !== this.elements.length - 1 || i || _(this.nextButton, "disabled") : _(this.prevButton, "disabled");
4635
+ var s = this.loop();
4636
+ L(this.nextButton, "disabled"), L(this.prevButton, "disabled"), this.index == 0 && this.elements.length - 1 == 0 ? (_(this.prevButton, "disabled"), _(this.nextButton, "disabled")) : this.index !== 0 || s ? this.index !== this.elements.length - 1 || s || _(this.nextButton, "disabled") : _(this.prevButton, "disabled");
4618
4637
  } }, { key: "loop", value: function() {
4619
- var i = K(this.settings, "loopAtEnd") ? this.settings.loopAtEnd : null;
4620
- return i = K(this.settings, "loop") ? this.settings.loop : i, i;
4638
+ var s = K(this.settings, "loopAtEnd") ? this.settings.loopAtEnd : null;
4639
+ return s = K(this.settings, "loop") ? this.settings.loop : s, s;
4621
4640
  } }, { key: "close", value: function() {
4622
- var i = this;
4641
+ var s = this;
4623
4642
  if (!this.lightboxOpen) {
4624
4643
  if (this.events) {
4625
4644
  for (var r in this.events) this.events.hasOwnProperty(r) && this.events[r].destroy();
@@ -4631,28 +4650,28 @@ function rs() {
4631
4650
  this.closing = !0, this.slidePlayerPause(this.activeSlide), this.fullElementsList && (this.elements = this.fullElementsList), this.bodyHiddenChildElms.length && y(this.bodyHiddenChildElms, function(l) {
4632
4651
  l.removeAttribute("aria-hidden");
4633
4652
  }), _(this.modal, "glightbox-closing"), P(this.overlay, this.settings.openEffect == "none" ? "none" : this.settings.cssEfects.fade.out), P(this.activeSlide, this.settings.cssEfects[this.settings.closeEffect].out, function() {
4634
- if (i.activeSlide = null, i.prevActiveSlideIndex = null, i.prevActiveSlide = null, i.built = !1, i.events) {
4635
- for (var l in i.events) i.events.hasOwnProperty(l) && i.events[l].destroy();
4636
- i.events = null;
4653
+ if (s.activeSlide = null, s.prevActiveSlideIndex = null, s.prevActiveSlide = null, s.built = !1, s.events) {
4654
+ for (var l in s.events) s.events.hasOwnProperty(l) && s.events[l].destroy();
4655
+ s.events = null;
4637
4656
  }
4638
4657
  var d = document.body;
4639
- L(aa, "glightbox-open"), L(d, "glightbox-open touching gdesc-open glightbox-touch glightbox-mobile gscrollbar-fixer"), i.modal.parentNode.removeChild(i.modal), i.trigger("close"), j(i.settings.onClose) && i.settings.onClose();
4658
+ L(aa, "glightbox-open"), L(d, "glightbox-open touching gdesc-open glightbox-touch glightbox-mobile gscrollbar-fixer"), s.modal.parentNode.removeChild(s.modal), s.trigger("close"), j(s.settings.onClose) && s.settings.onClose();
4640
4659
  var f = document.querySelector(".gcss-styles");
4641
- f && f.parentNode.removeChild(f), i.lightboxOpen = !1, i.closing = null;
4660
+ f && f.parentNode.removeChild(f), s.lightboxOpen = !1, s.closing = null;
4642
4661
  });
4643
4662
  } }, { key: "destroy", value: function() {
4644
4663
  this.close(), this.clearAllEvents(), this.baseEvents && this.baseEvents.destroy();
4645
- } }, { key: "on", value: function(i, r) {
4664
+ } }, { key: "on", value: function(s, r) {
4646
4665
  var l = arguments.length > 2 && arguments[2] !== void 0 && arguments[2];
4647
- if (!i || !j(r)) throw new TypeError("Event name and callback must be defined");
4648
- this.apiEvents.push({ evt: i, once: l, callback: r });
4649
- } }, { key: "once", value: function(i, r) {
4650
- this.on(i, r, !0);
4651
- } }, { key: "trigger", value: function(i) {
4666
+ if (!s || !j(r)) throw new TypeError("Event name and callback must be defined");
4667
+ this.apiEvents.push({ evt: s, once: l, callback: r });
4668
+ } }, { key: "once", value: function(s, r) {
4669
+ this.on(s, r, !0);
4670
+ } }, { key: "trigger", value: function(s) {
4652
4671
  var r = this, l = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null, d = [];
4653
4672
  y(this.apiEvents, function(f, g) {
4654
4673
  var h = f.evt, m = f.once, C = f.callback;
4655
- h == i && (C(l), m && d.push(g));
4674
+ h == s && (C(l), m && d.push(g));
4656
4675
  }), d.length && y(d, function(f) {
4657
4676
  return r.apiEvents.splice(f, 1);
4658
4677
  });
@@ -4662,7 +4681,7 @@ function rs() {
4662
4681
  return "3.3.1";
4663
4682
  } }]);
4664
4683
  return function() {
4665
- var i = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, r = new si(i);
4684
+ var s = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, r = new si(s);
4666
4685
  return r.init(), r;
4667
4686
  };
4668
4687
  });
@@ -4670,9 +4689,9 @@ function rs() {
4670
4689
  }
4671
4690
  var os = rs();
4672
4691
  const cs = /* @__PURE__ */ _a(os);
4673
- var ls = Object.getOwnPropertyDescriptor, ds = (s, e, t, a) => {
4674
- for (var n = a > 1 ? void 0 : a ? ls(e, t) : e, o = s.length - 1, c; o >= 0; o--)
4675
- (c = s[o]) && (n = c(n) || n);
4692
+ var ls = Object.getOwnPropertyDescriptor, ds = (i, e, t, a) => {
4693
+ for (var n = a > 1 ? void 0 : a ? ls(e, t) : e, o = i.length - 1, c; o >= 0; o--)
4694
+ (c = i[o]) && (n = c(n) || n);
4676
4695
  return n;
4677
4696
  };
4678
4697
  let Bt = class extends At {
@@ -4721,9 +4740,9 @@ Bt.styles = Z`
4721
4740
  Bt = ds([
4722
4741
  J("cb-thinking")
4723
4742
  ], Bt);
4724
- var fs = Object.defineProperty, bs = Object.getOwnPropertyDescriptor, Ea = (s, e, t, a) => {
4725
- for (var n = a > 1 ? void 0 : a ? bs(e, t) : e, o = s.length - 1, c; o >= 0; o--)
4726
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
4743
+ var fs = Object.defineProperty, bs = Object.getOwnPropertyDescriptor, Ta = (i, e, t, a) => {
4744
+ for (var n = a > 1 ? void 0 : a ? bs(e, t) : e, o = i.length - 1, c; o >= 0; o--)
4745
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
4727
4746
  return a && n && fs(e, t, n), n;
4728
4747
  };
4729
4748
  let wt = class extends ae {
@@ -4737,7 +4756,7 @@ let wt = class extends ae {
4737
4756
  <span>Uploading...</span>
4738
4757
  </div>
4739
4758
  <div class="cb-uploading__filelist">
4740
- ${this.files.map((s) => u`${s.name}<br />`)}
4759
+ ${this.files.map((i) => u`${i.name}<br />`)}
4741
4760
  </div>
4742
4761
  </div>`;
4743
4762
  }
@@ -4760,10 +4779,10 @@ wt.styles = Z`
4760
4779
  margin-right: 5px;
4761
4780
  }
4762
4781
  `;
4763
- Ea([
4782
+ Ta([
4764
4783
  x({ type: Array })
4765
4784
  ], wt.prototype, "files", 2);
4766
- wt = Ea([
4785
+ wt = Ta([
4767
4786
  J("cb-uploading")
4768
4787
  ], wt);
4769
4788
  const hs = Z`
@@ -4787,9 +4806,9 @@ const hs = Z`
4787
4806
  margin-right: 0.2em;
4788
4807
  }
4789
4808
  `;
4790
- var us = Object.defineProperty, ps = Object.getOwnPropertyDescriptor, Nt = (s, e, t, a) => {
4791
- for (var n = a > 1 ? void 0 : a ? ps(e, t) : e, o = s.length - 1, c; o >= 0; o--)
4792
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
4809
+ var us = Object.defineProperty, ps = Object.getOwnPropertyDescriptor, Nt = (i, e, t, a) => {
4810
+ for (var n = a > 1 ? void 0 : a ? ps(e, t) : e, o = i.length - 1, c; o >= 0; o--)
4811
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
4793
4812
  return a && n && us(e, t, n), n;
4794
4813
  };
4795
4814
  let at = class extends At {
@@ -4847,9 +4866,9 @@ at = Nt([
4847
4866
  J("cb-external-link")
4848
4867
  ], at);
4849
4868
  const gs = '<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.5zM1.928 15.849v-3.337h1.136v-.662H0v.662h1.134v3.337zm4.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.992zm1.93.662v3.337h-.794v-3.337H6.619v-.662h3.064v.662H8.546Z"/></svg>', ms = '<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.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173q.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38a.57.57 0 0 1-.238.241a.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181q.185.183.185.522m1.217-1.333v3.999h1.46q.602 0 .998-.237a1.45 1.45 0 0 0 .595-.689q.196-.45.196-1.084q0-.63-.196-1.075a1.43 1.43 0 0 0-.589-.68q-.396-.234-1.005-.234zm.791.645h.563q.371 0 .609.152a.9.9 0 0 1 .354.454q.118.302.118.753a2.3 2.3 0 0 1-.068.592a1.1 1.1 0 0 1-.196.422a.8.8 0 0 1-.334.252a1.3 1.3 0 0 1-.483.082h-.563zm3.743 1.763v1.591h-.79V11.85h2.548v.653H7.896v1.117h1.606v.638z"/></svg>', ys = '<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.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.459q.609 0 1.005.234t.589.68q.195.445.196 1.075q0 .634-.196 1.084q-.197.451-.595.689q-.396.237-1 .237H4.626Zm1.353-3.354h-.562v2.707h.562q.279 0 .484-.082a.8.8 0 0 0 .334-.252a1.1 1.1 0 0 0 .196-.422q.067-.252.067-.592a2.1 2.1 0 0 0-.117-.753a.9.9 0 0 0-.354-.454q-.238-.152-.61-.152"/></svg>', vs = '<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.5zM3.517 14.841a1.13 1.13 0 0 0 .401.823q.195.162.478.252q.284.091.665.091q.507 0 .859-.158q.354-.158.539-.44q.187-.284.187-.656q0-.336-.134-.56a1 1 0 0 0-.375-.357a2 2 0 0 0-.566-.21l-.621-.144a1 1 0 0 1-.404-.176a.37.37 0 0 1-.144-.299q0-.234.185-.384q.188-.152.512-.152q.214 0 .37.068a.6.6 0 0 1 .246.181a.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.2-.566a1.2 1.2 0 0 0-.5-.41a1.8 1.8 0 0 0-.78-.152q-.439 0-.776.15q-.337.149-.527.421q-.19.273-.19.639q0 .302.122.524q.124.223.352.367q.228.143.539.213l.618.144q.31.073.463.193a.39.39 0 0 1 .152.326a.5.5 0 0 1-.085.29a.56.56 0 0 1-.255.193q-.167.07-.413.07q-.175 0-.32-.04a.8.8 0 0 1-.248-.115a.58.58 0 0 1-.255-.384zM.806 13.693q0-.373.102-.633a.87.87 0 0 1 .302-.399a.8.8 0 0 1 .475-.137q.225 0 .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.4 1.4 0 0 0-.489-.272a1.8 1.8 0 0 0-.606-.097q-.534 0-.911.223q-.375.222-.572.632q-.195.41-.196.979v.498q0 .568.193.976q.197.407.572.626q.375.217.914.217q.439 0 .785-.164t.55-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.764a.8.8 0 0 1-.118.363a.7.7 0 0 1-.272.25a.9.9 0 0 1-.401.087a.85.85 0 0 1-.478-.132a.83.83 0 0 1-.299-.392a1.7 1.7 0 0 1-.102-.627zm8.239 2.238h-.953l-1.338-3.999h.917l.896 3.138h.038l.888-3.138h.879z"/></svg>', ws = '<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.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173q.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38a.57.57 0 0 1-.238.241a.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181q.185.183.185.522m2.817-1.333h-1.6v3.999h.791v-1.342h.803q.43 0 .732-.173q.305-.175.463-.474q.162-.302.161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38a.57.57 0 0 1-.238.241a.8.8 0 0 1-.375.082H4.15V12.48h.66q.327 0 .512.181q.185.183.185.522m2.767-.67v3.336H7.48v-3.337H6.346v-.662h3.065v.662z"/></svg>', xs = '<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.5zm-7.839 9.166v.522q0 .384-.117.641a.86.86 0 0 1-.322.387a.9.9 0 0 1-.469.126a.9.9 0 0 1-.471-.126a.87.87 0 0 1-.32-.386a1.55 1.55 0 0 1-.117-.642v-.522q0-.386.117-.641a.87.87 0 0 1 .32-.387a.87.87 0 0 1 .471-.129q.264 0 .469.13a.86.86 0 0 1 .322.386q.117.255.117.641m.803.519v-.513q0-.565-.205-.972a1.46 1.46 0 0 0-.589-.63q-.381-.22-.917-.22q-.533 0-.92.22a1.44 1.44 0 0 0-.589.627q-.204.406-.205.975v.513q0 .563.205.973q.205.406.59.627q.386.216.92.216q.535 0 .916-.216q.383-.22.59-.627q.204-.41.204-.973M0 11.926v4h1.459q.603 0 .999-.238a1.45 1.45 0 0 0 .595-.689q.196-.45.196-1.084q0-.63-.196-1.075a1.43 1.43 0 0 0-.59-.68q-.395-.234-1.004-.234zm.791.645h.563q.371 0 .609.152a.9.9 0 0 1 .354.454q.118.302.118.753a2.3 2.3 0 0 1-.068.592a1.1 1.1 0 0 1-.196.422a.8.8 0 0 1-.334.252a1.3 1.3 0 0 1-.483.082H.79V12.57Zm7.422.483a1.7 1.7 0 0 0-.103.633v.495q0 .369.103.627a.83.83 0 0 0 .298.393a.85.85 0 0 0 .478.131a.9.9 0 0 0 .401-.088a.7.7 0 0 0 .273-.248a.8.8 0 0 0 .117-.364h.765v.076a1.27 1.27 0 0 1-.226.674q-.205.29-.55.454a1.8 1.8 0 0 1-.786.164q-.54 0-.914-.216a1.4 1.4 0 0 1-.571-.627q-.194-.408-.194-.976v-.498q0-.568.197-.978q.195-.411.571-.633q.378-.223.911-.223q.328 0 .607.097q.28.093.489.272a1.33 1.33 0 0 1 .466.964v.073H9.78a.85.85 0 0 0-.12-.38a.7.7 0 0 0-.273-.261a.8.8 0 0 0-.398-.097a.8.8 0 0 0-.475.138a.87.87 0 0 0-.301.398"/></svg>', ks = '<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.5zm-6.839 9.688v-.522a1.5 1.5 0 0 0-.117-.641a.86.86 0 0 0-.322-.387a.86.86 0 0 0-.469-.129a.87.87 0 0 0-.471.13a.87.87 0 0 0-.32.386a1.5 1.5 0 0 0-.117.641v.522q0 .384.117.641a.87.87 0 0 0 .32.387a.9.9 0 0 0 .471.126a.9.9 0 0 0 .469-.126a.86.86 0 0 0 .322-.386a1.55 1.55 0 0 0 .117-.642m.803-.516v.513q0 .563-.205.973a1.47 1.47 0 0 1-.589.627q-.381.216-.917.216a1.86 1.86 0 0 1-.92-.216a1.46 1.46 0 0 1-.589-.627a2.15 2.15 0 0 1-.205-.973v-.513q0-.569.205-.975q.205-.411.59-.627q.386-.22.92-.22q.535 0 .916.22q.383.219.59.63q.204.406.204.972M1 15.925v-3.999h1.459q.609 0 1.005.235q.396.233.589.68q.196.445.196 1.074q0 .634-.196 1.084q-.197.451-.595.689q-.396.237-.999.237zm1.354-3.354H1.79v2.707h.563q.277 0 .483-.082a.8.8 0 0 0 .334-.252q.132-.17.196-.422a2.3 2.3 0 0 0 .068-.592q0-.45-.118-.753a.9.9 0 0 0-.354-.454q-.237-.152-.61-.152Zm6.756 1.116q0-.373.103-.633a.87.87 0 0 1 .301-.398a.8.8 0 0 1 .475-.138q.225 0 .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.4 1.4 0 0 0-.49-.272a1.8 1.8 0 0 0-.606-.097q-.534 0-.911.223q-.375.222-.571.633q-.197.41-.197.978v.498q0 .568.194.976q.195.406.571.627q.375.216.914.216q.44 0 .785-.164t.551-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.765a.8.8 0 0 1-.117.364a.7.7 0 0 1-.273.248a.9.9 0 0 1-.401.088a.85.85 0 0 1-.478-.131a.83.83 0 0 1-.298-.393a1.7 1.7 0 0 1-.103-.627zm5.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.035z"/></svg>';
4850
- var _s = Object.defineProperty, Cs = Object.getOwnPropertyDescriptor, Ut = (s, e, t, a) => {
4851
- for (var n = a > 1 ? void 0 : a ? Cs(e, t) : e, o = s.length - 1, c; o >= 0; o--)
4852
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
4869
+ var _s = Object.defineProperty, Cs = Object.getOwnPropertyDescriptor, Ut = (i, e, t, a) => {
4870
+ for (var n = a > 1 ? void 0 : a ? Cs(e, t) : e, o = i.length - 1, c; o >= 0; o--)
4871
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
4853
4872
  return a && n && _s(e, t, n), n;
4854
4873
  };
4855
4874
  const da = {
@@ -4866,11 +4885,11 @@ let it = class extends ae {
4866
4885
  super(...arguments), this.filename = "", this.url = "";
4867
4886
  }
4868
4887
  get type() {
4869
- const s = "txt";
4888
+ const i = "txt";
4870
4889
  if (!this.filename)
4871
- return s;
4890
+ return i;
4872
4891
  const e = this.filename.split(".").pop();
4873
- return e ? e.toLowerCase() : s;
4892
+ return e ? e.toLowerCase() : i;
4874
4893
  }
4875
4894
  render() {
4876
4895
  return u`
@@ -4901,7 +4920,7 @@ Ut([
4901
4920
  it = Ut([
4902
4921
  J("cb-file")
4903
4922
  ], it);
4904
- const Ss = '<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-.5m2.5 0a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5m3 .5a.5.5 0 0 0-1 0v6a.5.5 0 0 0 1 0z"/><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 1zM4.118 4L4 4.059V13a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V4.059L11.882 4zM2.5 3h11V2h-11z"/></g></svg>', fa = '<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 6m2-3a2 2 0 1 1-4 0a2 2 0 0 1 4 0m4 8c0 1-1 1-1 1H3s-1 0-1-1s1-4 6-4s6 3 6 4m-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10s-3.516.68-4.168 1.332c-.678.678-.83 1.418-.832 1.664z"/></svg>', Ta = '<svg viewBox="0 0 24 24" width="1.2em" height="1.2em" ><path fill="currentColor" d="M5 9v12H1V9zm4 12a2 2 0 0 1-2-2V9c0-.55.22-1.05.59-1.41L14.17 1l1.06 1.06c.27.27.44.64.44 1.05l-.03.32L14.69 8H21a2 2 0 0 1 2 2v2c0 .26-.05.5-.14.73l-3.02 7.05C19.54 20.5 18.83 21 18 21zm0-2h9.03L21 12v-2h-8.79l1.13-5.32L9 9.03z"/></svg>', La = '<svg viewBox="0 0 24 24" width="1.2em" height="1.2em" ><path fill="currentColor" d="M19 15V3h4v12zM15 3a2 2 0 0 1 2 2v10c0 .55-.22 1.05-.59 1.41L9.83 23l-1.06-1.06c-.27-.27-.44-.64-.44-1.06l.03-.31l.95-4.57H3a2 2 0 0 1-2-2v-2c0-.26.05-.5.14-.73l3.02-7.05C4.46 3.5 5.17 3 6 3zm0 2H5.97L3 12v2h8.78l-1.13 5.32L15 14.97z"/></svg>', As = Z`
4923
+ const Ss = '<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-.5m2.5 0a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5m3 .5a.5.5 0 0 0-1 0v6a.5.5 0 0 0 1 0z"/><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 1zM4.118 4L4 4.059V13a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V4.059L11.882 4zM2.5 3h11V2h-11z"/></g></svg>', fa = '<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 6m2-3a2 2 0 1 1-4 0a2 2 0 0 1 4 0m4 8c0 1-1 1-1 1H3s-1 0-1-1s1-4 6-4s6 3 6 4m-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10s-3.516.68-4.168 1.332c-.678.678-.83 1.418-.832 1.664z"/></svg>', $a = '<svg viewBox="0 0 24 24" width="1.2em" height="1.2em" ><path fill="currentColor" d="M5 9v12H1V9zm4 12a2 2 0 0 1-2-2V9c0-.55.22-1.05.59-1.41L14.17 1l1.06 1.06c.27.27.44.64.44 1.05l-.03.32L14.69 8H21a2 2 0 0 1 2 2v2c0 .26-.05.5-.14.73l-3.02 7.05C19.54 20.5 18.83 21 18 21zm0-2h9.03L21 12v-2h-8.79l1.13-5.32L9 9.03z"/></svg>', La = '<svg viewBox="0 0 24 24" width="1.2em" height="1.2em" ><path fill="currentColor" d="M19 15V3h4v12zM15 3a2 2 0 0 1 2 2v10c0 .55-.22 1.05-.59 1.41L9.83 23l-1.06-1.06c-.27-.27-.44-.64-.44-1.06l.03-.31l.95-4.57H3a2 2 0 0 1-2-2v-2c0-.26.05-.5.14-.73l3.02-7.05C4.46 3.5 5.17 3 6 3zm0 2H5.97L3 12v2h8.78l-1.13 5.32L15 14.97z"/></svg>', As = Z`
4905
4924
  pre code.hljs {
4906
4925
  display: block;
4907
4926
  overflow-x: auto;
@@ -6349,34 +6368,34 @@ const Ss = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
6349
6368
  filter: alpha(opacity=80);
6350
6369
  }
6351
6370
  `;
6352
- function ba(s, e) {
6353
- return `<pre class="code-block-wrapper"><div class="code-block-header"><span class="code-block-header__lang">${e}</span><span class="code-block-header__copy">Copy</span></div><code class="hljs code-block-body ${e}">${s}</code></pre>`;
6371
+ function ba(i, e) {
6372
+ return `<pre class="code-block-wrapper"><div class="code-block-header"><span class="code-block-header__lang">${e}</span><span class="code-block-header__copy">Copy</span></div><code class="hljs code-block-body ${e}">${i}</code></pre>`;
6354
6373
  }
6355
6374
  function Is() {
6356
- const s = new fi({
6375
+ const i = new fi({
6357
6376
  html: !0,
6358
6377
  breaks: !0,
6359
6378
  linkify: !0,
6360
6379
  highlight(e, t) {
6361
- if (!!(t && Et.getLanguage(t))) {
6380
+ if (!!(t && Tt.getLanguage(t))) {
6362
6381
  const n = t ?? "";
6363
- return ba(Et.highlight(e, { language: n }).value, n);
6382
+ return ba(Tt.highlight(e, { language: n }).value, n);
6364
6383
  }
6365
- return ba(Et.highlightAuto(e).value, "");
6384
+ return ba(Tt.highlightAuto(e).value, "");
6366
6385
  }
6367
6386
  });
6368
- return s.use(bi, { attrs: { target: "_blank", rel: "noopener" } }), s;
6387
+ return i.use(bi, { attrs: { target: "_blank", rel: "noopener" } }), i;
6369
6388
  }
6370
- async function Ot(s) {
6371
- const t = Is().render(s);
6389
+ async function Ot(i) {
6390
+ const t = Is().render(i);
6372
6391
  return u`${Y(t)}`;
6373
6392
  }
6374
- var $s = Object.defineProperty, Es = Object.getOwnPropertyDescriptor, Ue = (s, e, t, a) => {
6375
- for (var n = a > 1 ? void 0 : a ? Es(e, t) : e, o = s.length - 1, c; o >= 0; o--)
6376
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
6377
- return a && n && $s(e, t, n), n;
6393
+ var Es = Object.defineProperty, Ts = Object.getOwnPropertyDescriptor, Ue = (i, e, t, a) => {
6394
+ for (var n = a > 1 ? void 0 : a ? Ts(e, t) : e, o = i.length - 1, c; o >= 0; o--)
6395
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
6396
+ return a && n && Es(e, t, n), n;
6378
6397
  };
6379
- let Te = class extends ae {
6398
+ let $e = class extends ae {
6380
6399
  constructor() {
6381
6400
  super(...arguments), this.store = new Ve(this, b), this.type = "assistant", this.suppressFeedback = !1, this.lightbox = cs({
6382
6401
  touchNavigation: !0,
@@ -6411,8 +6430,8 @@ let Te = class extends ae {
6411
6430
  * updated lifecycle hook: same to vue mounted or react useEffect
6412
6431
  * @param changedProperties
6413
6432
  */
6414
- updated(s) {
6415
- super.updated(s), s.has("message") && requestIdleCallback(() => {
6433
+ updated(i) {
6434
+ super.updated(i), i.has("message") && requestIdleCallback(() => {
6416
6435
  this._addCopyEvents(), this._configureLightbox();
6417
6436
  });
6418
6437
  }
@@ -6421,15 +6440,15 @@ let Te = class extends ae {
6421
6440
  this.lightbox.setElements([]);
6422
6441
  return;
6423
6442
  }
6424
- const s = [];
6443
+ const i = [];
6425
6444
  this.glightboxImages.forEach((e, t) => {
6426
6445
  e.addEventListener("click", (a) => {
6427
6446
  console.log(`Image clicked >>> ${t}`), a.preventDefault(), this.lightbox.openAt(t);
6428
- }), "src" in e && s.push({
6447
+ }), "src" in e && i.push({
6429
6448
  href: e.src,
6430
6449
  type: "image"
6431
6450
  });
6432
- }), this.lightbox.setElements(s);
6451
+ }), this.lightbox.setElements(i);
6433
6452
  }
6434
6453
  get _isBot() {
6435
6454
  return this.message.author === "assistant" || this.message.author === "system";
@@ -6440,20 +6459,20 @@ let Te = class extends ae {
6440
6459
  });
6441
6460
  }
6442
6461
  _addCopyEvents() {
6443
- this.copyBtns.forEach((s) => {
6444
- s.addEventListener("click", () => {
6445
- const e = s.parentElement?.nextElementSibling?.textContent;
6462
+ this.copyBtns.forEach((i) => {
6463
+ i.addEventListener("click", () => {
6464
+ const e = i.parentElement?.nextElementSibling?.textContent;
6446
6465
  e && Mi(e).then(() => {
6447
- s.textContent = "Success", setTimeout(() => {
6448
- s.textContent = "Copy";
6466
+ i.textContent = "Success", setTimeout(() => {
6467
+ i.textContent = "Copy";
6449
6468
  }, 500);
6450
6469
  });
6451
6470
  });
6452
6471
  });
6453
6472
  }
6454
6473
  _removeCopyEvents() {
6455
- this.copyBtns.forEach((s) => {
6456
- s.removeEventListener("click", () => {
6474
+ this.copyBtns.forEach((i) => {
6475
+ i.removeEventListener("click", () => {
6457
6476
  });
6458
6477
  });
6459
6478
  }
@@ -6473,93 +6492,93 @@ let Te = class extends ae {
6473
6492
  () => null
6474
6493
  );
6475
6494
  }
6476
- renderButtons(s = "left") {
6477
- return u`<div class="cb-message__buttons ${s}">
6495
+ renderButtons(i = "left") {
6496
+ return u`<div class="cb-message__buttons ${i}">
6478
6497
  <!-- delete button -->
6479
6498
  <sl-button class="cb-message__delete-button" name="trash" @click=${this._removeMessageHandler} circle variant="text" size="small">
6480
6499
  <cb-icon svg="${Ss}" style="font-size: 1em !important;"></cb-icon>
6481
6500
  </sl-button>
6482
6501
  </div>`;
6483
6502
  }
6484
- renderMessage(s, e = "bot-message-content") {
6503
+ renderMessage(i, e = "bot-message-content") {
6485
6504
  return u`
6486
6505
  <div
6487
6506
  class="cb-message__content
6488
- ${s.author}-message
6489
- message-type-${s.type}
6490
- ${s.isThinking ? "thinking" : ""}"
6507
+ ${i.author}-message
6508
+ message-type-${i.type}
6509
+ ${i.isThinking ? "thinking" : ""}"
6491
6510
  style="display: flex"
6492
6511
  part="${e}"
6493
6512
  >
6494
- ${this.renderMessageContent(s)}
6513
+ ${this.renderMessageContent(i)}
6495
6514
  </div>
6496
6515
  `;
6497
6516
  }
6498
- async _getMessageText(s) {
6499
- return Ot(s.data.text);
6517
+ async _getMessageText(i) {
6518
+ return Ot(i.data.text);
6500
6519
  }
6501
- renderMessageContent(s) {
6502
- return s.isThinking ? u`<cb-thinking></cb-thinking>` : s.isUploading ? u`<cb-uploading .files="${s.data.files || []}"></cb-uploading>` : s.type === "text" ? u`<div class="cb-message-text">
6520
+ renderMessageContent(i) {
6521
+ return i.isThinking ? u`<cb-thinking></cb-thinking>` : i.isUploading ? u`<cb-uploading .files="${i.data.files || []}"></cb-uploading>` : i.type === "text" ? u`<div class="cb-message-text">
6503
6522
  ${N(
6504
- s.data.userName,
6505
- () => u`<div class="assistant-message-user-name">${s.data.userName}</div>`,
6523
+ i.data.userName,
6524
+ () => u`<div class="assistant-message-user-name">${i.data.userName}</div>`,
6506
6525
  () => null
6507
6526
  )}
6508
6527
  ${zt(
6509
- this._getMessageText(s).then((e) => u`${e}`)
6528
+ this._getMessageText(i).then((e) => u`${e}`)
6510
6529
  )}
6511
- </div>` : s.type === "file" ? u`${He(
6512
- s.data.files || [],
6530
+ </div>` : i.type === "file" ? u`${He(
6531
+ i.data.files || [],
6513
6532
  (e) => e.id,
6514
6533
  (e) => u`<cb-file filename="${e.name}" url="${e.url}"></cb-file>`
6515
- )}` : s.type === "upload" ? u`${He(
6516
- s.data.uploadedFiles || [],
6534
+ )}` : i.type === "upload" ? u`${He(
6535
+ i.data.uploadedFiles || [],
6517
6536
  (e) => e.name,
6518
6537
  (e) => u`<div>${e.name}</div>`
6519
6538
  )}` : u`<div class="cb-message-text">
6520
6539
  ${zt(
6521
- Ot(s.data.text?.toString() || "").then((e) => u`${e}`)
6540
+ Ot(i.data.text?.toString() || "").then((e) => u`${e}`)
6522
6541
  )}
6523
6542
  </div>`;
6524
6543
  }
6525
- renderMessageUploads(s) {
6526
- if (s.type === "upload")
6544
+ renderMessageUploads(i) {
6545
+ if (i.type === "upload")
6527
6546
  return u`<div class="user-message-uploads">
6528
6547
  ${He(
6529
- s.data.uploadedFiles || [],
6548
+ i.data.uploadedFiles || [],
6530
6549
  (e) => e.name,
6531
6550
  (e) => (e?.type || "").startsWith("image/") ? u`<img src="data:${e.type};base64,${e.base64}" alt="${e.name}" />` : null
6532
6551
  )}
6533
6552
  </div>`;
6534
6553
  }
6535
- renderBotMessageAvatar(s) {
6536
- if (s.data.userName && s.data.userName !== "") {
6537
- const e = s.data?.userAvatar || "";
6554
+ renderBotMessageAvatar(i) {
6555
+ if (i.data.userName && i.data.userName !== "") {
6556
+ const e = i.data?.userAvatar || "";
6538
6557
  return e !== "" ? u` <img src="${e}" style="width: 24px;height: 24px;" /> ` : ue`${Y(b.setting.agentIconSvg)}`;
6539
6558
  }
6540
- return s.author === "system" ? ue`${Y(b.setting.systemIconSvg)}` : ue`${Y(b.setting.botIconSvg)}`;
6559
+ return i.author === "system" ? ue`${Y(b.setting.systemIconSvg)}` : ue`${Y(b.setting.botIconSvg)}`;
6541
6560
  }
6542
- renderBotMessage(s) {
6561
+ renderBotMessage(i) {
6543
6562
  return u`
6544
6563
  <div class="cb-message cb-bot-message-wrapper" part="cb-message">
6545
- <div class="avatar assistant-avatar xsmall" style="margin-top:4px;">${this.renderBotMessageAvatar(s)}</div>
6546
- ${this.renderMessage(s, "bot-message-content")}
6564
+ <div class="avatar assistant-avatar xsmall" style="margin-top:4px;">${this.renderBotMessageAvatar(i)}</div>
6565
+ ${this.renderMessage(i, "bot-message-content")}
6547
6566
  </div>
6548
- ${this.renderBotMessageFeedback(s)}
6567
+ ${this.renderBotMessageFeedback(i)}
6549
6568
  `;
6550
6569
  }
6551
- renderBotMessageFeedback(s) {
6570
+ renderBotMessageFeedback(i) {
6552
6571
  return this.suppressFeedback || !b.setting.feedbackEnabled || this.index < b.setting.startFeedbackFromMessage * 2 ? null : u`
6553
6572
  <div class="cb-message-feedback-tools">
6554
- <div class="cb-message-feedback-icon cb-feedback-up" @click="${() => this.startFeedback(!0, s)}">${ue`${Y(Ta)}`}</div>
6555
- <div class="cb-message-feedback-icon cb-feedback-down" @click="${() => this.startFeedback(!1, s)}">${ue`${Y(La)}`}</div>
6573
+ <div class="cb-message-feedback-icon cb-feedback-up" @click="${() => this.startFeedback(!0, i)}">${ue`${Y($a)}`}</div>
6574
+ <div class="cb-message-feedback-icon cb-feedback-down" @click="${() => this.startFeedback(!1, i)}">${ue`${Y(La)}`}</div>
6556
6575
  </div>
6557
6576
  `;
6558
6577
  }
6559
- startFeedback(s, e) {
6560
- console.log("startFeedback", e), b.collectFeedback(s, e);
6578
+ startFeedback(i, e) {
6579
+ console.log("startFeedback", e), b.collectFeedback(i, e);
6561
6580
  }
6562
- renderUserMessage(s) {
6581
+ renderUserMessage(i) {
6563
6582
  return u`
6564
6583
  <div class="cb-message" part="cb-message" style="display: flex; justify-content: end;align-items: start;">
6565
6584
  <!--<sl-avatar class="avatar user-avatar small" label="User">
@@ -6570,19 +6589,19 @@ let Te = class extends ae {
6570
6589
  b.appearanceUserMessageAvatarPosition === "left",
6571
6590
  () => u`
6572
6591
  <div class="avatar user-avatar">${Y(b.setting.userIconSvg)}</div>
6573
- ${this.renderMessage(s, "user-message-content")}
6592
+ ${this.renderMessage(i, "user-message-content")}
6574
6593
  `,
6575
6594
  () => u`
6576
- ${this.renderMessage(s, "user-message-content")}
6595
+ ${this.renderMessage(i, "user-message-content")}
6577
6596
  <div class="avatar user-avatar">${Y(b.setting.userIconSvg)}</div>
6578
6597
  `
6579
6598
  )}
6580
6599
  </div>
6581
- ${this.renderMessageUploads(s)}
6600
+ ${this.renderMessageUploads(i)}
6582
6601
  `;
6583
6602
  }
6584
6603
  // todo ???
6585
- renderUserMessageUpload(s) {
6604
+ renderUserMessageUpload(i) {
6586
6605
  return u`
6587
6606
  <div class="cb-message" part="cb-message" style="display: flex; justify-content: end;align-items: start;">
6588
6607
  <!--<sl-avatar class="avatar user-avatar small" label="User">
@@ -6593,10 +6612,10 @@ let Te = class extends ae {
6593
6612
  b.appearanceUserMessageAvatarPosition === "left",
6594
6613
  () => u`
6595
6614
  <div class="avatar user-avatar">${Y(b.setting.userIconSvg)}</div>
6596
- ${this.renderMessage(s, "user-message-content")}
6615
+ ${this.renderMessage(i, "user-message-content")}
6597
6616
  `,
6598
6617
  () => u`
6599
- ${this.renderMessage(s, "user-message-content")}
6618
+ ${this.renderMessage(i, "user-message-content")}
6600
6619
  <div class="avatar user-avatar">${Y(b.setting.userIconSvg)}</div>
6601
6620
  `
6602
6621
  )}
@@ -6604,38 +6623,54 @@ let Te = class extends ae {
6604
6623
  `;
6605
6624
  }
6606
6625
  };
6607
- Te.styles = Ms;
6626
+ $e.styles = Ms;
6608
6627
  Ue([
6609
6628
  x({ type: Object })
6610
- ], Te.prototype, "message", 2);
6629
+ ], $e.prototype, "message", 2);
6611
6630
  Ue([
6612
6631
  x({ type: Number })
6613
- ], Te.prototype, "index", 2);
6632
+ ], $e.prototype, "index", 2);
6614
6633
  Ue([
6615
6634
  x({ type: String })
6616
- ], Te.prototype, "type", 2);
6635
+ ], $e.prototype, "type", 2);
6617
6636
  Ue([
6618
6637
  x({ type: Boolean })
6619
- ], Te.prototype, "suppressFeedback", 2);
6638
+ ], $e.prototype, "suppressFeedback", 2);
6620
6639
  Ue([
6621
6640
  xa(".code-block-header__copy")
6622
- ], Te.prototype, "copyBtns", 2);
6641
+ ], $e.prototype, "copyBtns", 2);
6623
6642
  Ue([
6624
6643
  xa("img")
6625
- ], Te.prototype, "glightboxImages", 2);
6626
- Te = Ue([
6644
+ ], $e.prototype, "glightboxImages", 2);
6645
+ $e = Ue([
6627
6646
  J("cb-message")
6628
- ], Te);
6629
- var Ts = Object.defineProperty, Ls = Object.getOwnPropertyDescriptor, ke = (s, e, t, a) => {
6630
- for (var n = a > 1 ? void 0 : a ? Ls(e, t) : e, o = s.length - 1, c; o >= 0; o--)
6631
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
6632
- return a && n && Ts(e, t, n), n;
6647
+ ], $e);
6648
+ var $s = Object.defineProperty, Ls = Object.getOwnPropertyDescriptor, ke = (i, e, t, a) => {
6649
+ for (var n = a > 1 ? void 0 : a ? Ls(e, t) : e, o = i.length - 1, c; o >= 0; o--)
6650
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
6651
+ return a && n && $s(e, t, n), n;
6633
6652
  };
6634
- const $e = Ne.noConflict();
6635
- $e.setLevel("info");
6653
+ const Ee = Ne.noConflict();
6654
+ Ee.setLevel("info");
6636
6655
  let pe = class extends ae {
6637
6656
  constructor() {
6638
- super(...arguments), this.messages = [], this.actions = [], this.form = null, this.suppressFeedback = !1, this.calendlyInjected = !1, this.activeCalendlyAction = -1, this.hubspotMeetingInjected = !1, this.activeHubspotMeetingAction = -1;
6657
+ super(...arguments), this.messages = [], this.actions = [], this.form = null, this.suppressFeedback = !1, this.calendlyInjected = !1, this.activeCalendlyAction = -1, this.hubspotMeetingInjected = !1, this.activeHubspotMeetingAction = -1, this._lastScrollTop = 0, this._scrollThrottle = !1, this._userInterruptedAutoScroll = !1, this._userInterruptedMessagesLength = 0;
6658
+ }
6659
+ connectedCallback() {
6660
+ super.connectedCallback(), this._onScroll = this._onScroll.bind(this), this.addEventListener("scroll", this._onScroll, { passive: !0 });
6661
+ }
6662
+ firstUpdated() {
6663
+ }
6664
+ disconnectedCallback() {
6665
+ this.removeEventListener("scroll", this._onScroll), super.disconnectedCallback();
6666
+ }
6667
+ _onScroll(i) {
6668
+ const t = (i?.target || this).scrollTop;
6669
+ this._scrollThrottle || (this._scrollThrottle = !0, requestAnimationFrame(() => {
6670
+ this._scrollThrottle = !1;
6671
+ let a = null;
6672
+ t < this._lastScrollTop ? a = "up" : t > this._lastScrollTop && (a = "down"), a === "up" && (this._userInterruptedAutoScroll = !0, this._userInterruptedMessagesLength = this.messages.length), this._lastScrollTop = t;
6673
+ }));
6639
6674
  }
6640
6675
  // Lightbox
6641
6676
  /*
@@ -6646,12 +6681,12 @@ let pe = class extends ae {
6646
6681
  });*/
6647
6682
  render() {
6648
6683
  return u`
6649
- <div class="cb-message-list" part="bot-message-list">
6684
+ <div id="cb-message-list-container" class="cb-message-list" part="bot-message-list">
6650
6685
  ${this.renderDisclaimerMessage()}
6651
6686
  ${He(
6652
6687
  this.messages,
6653
- (s) => s.id + JSON.stringify(s.data),
6654
- (s, e) => u`<cb-message .message="${s}" .index="${e}" exportparts="bot-message, cb-message, bot-message-content, user-message-content" ?suppressFeedback=${this.suppressFeedback}></cb-message>`
6688
+ (i) => i.id + JSON.stringify(i.data),
6689
+ (i, e) => u`<cb-message .message="${i}" .index="${e}" exportparts="bot-message, cb-message, bot-message-content, user-message-content" ?suppressFeedback=${this.suppressFeedback}></cb-message>`
6655
6690
  )}
6656
6691
  ${this.renderActions()} ${this.renderForm()}
6657
6692
  <div id="cb-message-list-bottom-anchor"></div>
@@ -6663,7 +6698,7 @@ let pe = class extends ae {
6663
6698
  <details class="cb-disclaimer-wrapper" part="disclaimer-wrapper">
6664
6699
  <summary class="cb-disclaimer-message" part="disclaimer-message">
6665
6700
  ${zt(
6666
- Ot(b.setting.disclaimerMessage).then((s) => u`${s}`)
6701
+ Ot(b.setting.disclaimerMessage).then((i) => u`${i}`)
6667
6702
  )}
6668
6703
  </summary>
6669
6704
  </details>
@@ -6674,18 +6709,19 @@ let pe = class extends ae {
6674
6709
  <div class="cb-input-form-title" part="form-title">${this.form.title}</div>
6675
6710
  ${He(
6676
6711
  this.form.fields,
6677
- (s, e) => e,
6678
- (s) => {
6679
- const e = s?.required || !1, t = b.getPrefilledFormFieldValue(s.name);
6680
- switch (s.type) {
6712
+ (i, e) => e,
6713
+ (i) => {
6714
+ const e = i?.required || !1, t = b.getPrefilledFormFieldValue(i.name);
6715
+ switch (i.type) {
6716
+ case "name":
6681
6717
  case "string":
6682
6718
  return u`<sl-input
6683
6719
  value="${t}"
6684
6720
  part="form-input"
6685
6721
  class="cb-input-form-input"
6686
- id="${"cb-form-field" + s.name}"
6687
- name="${s.name}"
6688
- label="${s.title}"
6722
+ id="${"cb-form-field" + i.name}"
6723
+ name="${i.name}"
6724
+ label="${i.title}"
6689
6725
  ?required="${e}"
6690
6726
  ></sl-input>`;
6691
6727
  case "email":
@@ -6693,10 +6729,10 @@ let pe = class extends ae {
6693
6729
  part="form-input"
6694
6730
  value="${t}"
6695
6731
  class="cb-input-form-input"
6696
- id="${"cb-form-field" + s.name}"
6697
- name="${s.name}"
6732
+ id="${"cb-form-field" + i.name}"
6733
+ name="${i.name}"
6698
6734
  type="email"
6699
- label="${s.title}"
6735
+ label="${i.title}"
6700
6736
  ?required="${e}"
6701
6737
  ></sl-input>`;
6702
6738
  case "phone":
@@ -6704,24 +6740,24 @@ let pe = class extends ae {
6704
6740
  part="form-input"
6705
6741
  value="${t}"
6706
6742
  class="cb-input-form-input"
6707
- id="${"cb-form-field" + s.name}"
6708
- name="${s.name}"
6743
+ id="${"cb-form-field" + i.name}"
6744
+ name="${i.name}"
6709
6745
  type="tel"
6710
- label="${s.title}"
6746
+ label="${i.title}"
6711
6747
  ?required="${e}"
6712
6748
  ></sl-input>`;
6713
6749
  case "select": {
6714
- const a = Array.isArray(s.options) ? s.options : s.options.split(",").map((n) => n.trim());
6750
+ const a = Array.isArray(i.options) ? i.options : i.options.split(",").map((n) => n.trim());
6715
6751
  return t || a[0], u`<div class="cb-form-field">
6716
6752
  <label class="cb-form-field-label"
6717
- >${s.title}
6753
+ >${i.title}
6718
6754
  ${N(
6719
6755
  e,
6720
6756
  () => u`*`,
6721
6757
  () => u``
6722
6758
  )}
6723
6759
  </label>
6724
- <select id="${"cb-form-field" + s.name}" class="cb-form-field-select" part="form-input" name="${s.name}">
6760
+ <select id="${"cb-form-field" + i.name}" class="cb-form-field-select" part="form-input" name="${i.name}">
6725
6761
  ${He(
6726
6762
  a,
6727
6763
  (n, o) => o,
@@ -6736,8 +6772,8 @@ let pe = class extends ae {
6736
6772
  <sl-button class="cb-input-form-submit" part="form-submit" variant="primary" pill type="submit">Send</sl-button>
6737
6773
  </form>` : null;
6738
6774
  }
6739
- handleFormSubmit(s) {
6740
- s.preventDefault();
6775
+ handleFormSubmit(i) {
6776
+ i.preventDefault();
6741
6777
  const e = {};
6742
6778
  if (Array.isArray(this.form.fields))
6743
6779
  for (let t = 0; t < this.form.fields.length; t++) {
@@ -6751,13 +6787,13 @@ let pe = class extends ae {
6751
6787
  }
6752
6788
  }
6753
6789
  b.submitForm(e).then(() => {
6754
- $e.info("Form submitted", e), this.emit("form:submit", {
6790
+ Ee.info("Form submitted", e), this.emit("form:submit", {
6755
6791
  detail: {
6756
6792
  formData: e
6757
6793
  }
6758
6794
  });
6759
6795
  }).catch((t) => {
6760
- $e.error(`Error when submitting form: ${t.message}`);
6796
+ Ee.error(`Error when submitting form: ${t.message}`);
6761
6797
  });
6762
6798
  }
6763
6799
  /* Form sample
@@ -6776,41 +6812,46 @@ let pe = class extends ae {
6776
6812
  <div class="cb-actions-list">
6777
6813
  ${He(
6778
6814
  this.actions,
6779
- (s) => s,
6780
- (s) => this.renderAction(s)
6815
+ (i) => i,
6816
+ (i) => this.renderAction(i)
6781
6817
  )}
6782
6818
  </div>
6783
6819
  `;
6784
6820
  }
6785
6821
  scrollToBottom() {
6822
+ if (this._userInterruptedAutoScroll) {
6823
+ if (this._userInterruptedMessagesLength === this.messages.length)
6824
+ return;
6825
+ this._userInterruptedAutoScroll = !1, this._userInterruptedMessagesLength = 0;
6826
+ }
6786
6827
  this._messageListBottomAnchor.scrollIntoView({ behavior: "smooth", block: "end", inline: "nearest" });
6787
6828
  }
6788
- renderAction(s) {
6789
- switch (s.type) {
6829
+ renderAction(i) {
6830
+ switch (i.type) {
6790
6831
  case "calendlyMeeting":
6791
- return this.renderCalendlyAction(s);
6832
+ return this.renderCalendlyAction(i);
6792
6833
  case "link":
6793
- return this.renderLinkAction(s);
6834
+ return this.renderLinkAction(i);
6794
6835
  case "hubspotMeeting":
6795
- return this.renderHubspotMeetingAction(s);
6836
+ return this.renderHubspotMeetingAction(i);
6796
6837
  }
6797
6838
  return null;
6798
6839
  }
6799
- handleCalendlyEvent(s) {
6800
- switch ($e.info("Got Calendly Event:", s.data), s.data.event) {
6840
+ handleCalendlyEvent(i) {
6841
+ switch (Ee.info("Got Calendly Event:", i.data), i.data.event) {
6801
6842
  case "calendly.event_scheduled": {
6802
6843
  const e = this.activeCalendlyAction;
6803
- e >= 0 && (b.removeAction(e, !0, s.data), b.addSystemMessage("Your meeting has been scheduled!"), this.activeCalendlyAction = -1);
6844
+ e >= 0 && (b.removeAction(e, !0, i.data), b.addSystemMessage("Your meeting has been scheduled!"), this.activeCalendlyAction = -1);
6804
6845
  }
6805
6846
  }
6806
6847
  }
6807
- invokeLinkAction(s = {}) {
6808
- $e.info("invokeLinkAction:", s), window.open(s.url, "_blank");
6848
+ invokeLinkAction(i = {}) {
6849
+ Ee.info("invokeLinkAction:", i), window.open(i.url, "_blank");
6809
6850
  }
6810
- invokeCalendlyAction(s = {}) {
6811
- return $e.info("invokeCalendlyAction:", s), "Calendly" in window && (this.activeCalendlyAction = s.internalId, window.Calendly.initPopupWidget({ url: s.url })), !1;
6851
+ invokeCalendlyAction(i = {}) {
6852
+ return Ee.info("invokeCalendlyAction:", i), "Calendly" in window && (this.activeCalendlyAction = i.internalId, window.Calendly.initPopupWidget({ url: i.url })), !1;
6812
6853
  }
6813
- renderCalendlyAction(s) {
6854
+ renderCalendlyAction(i) {
6814
6855
  if (!("Calendly" in window) && !this.calendlyInjected) {
6815
6856
  let e = document.createElement("link");
6816
6857
  e.href = "https://assets.calendly.com/assets/external/widget.css", e.rel = "stylesheet", document.body.appendChild(e);
@@ -6823,7 +6864,7 @@ let pe = class extends ae {
6823
6864
  }
6824
6865
  return u`
6825
6866
  <div class="cb-actions-list">
6826
- <div class="cb-action ripple" @click="${this.invokeCalendlyAction.bind(this, s)}">
6867
+ <div class="cb-action ripple" @click="${this.invokeCalendlyAction.bind(this, i)}">
6827
6868
  <div class="cb-action-icon">
6828
6869
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
6829
6870
  <path
@@ -6832,58 +6873,58 @@ let pe = class extends ae {
6832
6873
  />
6833
6874
  </svg>
6834
6875
  </div>
6835
- ${s.title}
6876
+ ${i.title}
6836
6877
  </div>
6837
6878
  </div>
6838
6879
  `;
6839
6880
  }
6840
- renderLinkAction(s) {
6881
+ renderLinkAction(i) {
6841
6882
  return u`
6842
6883
  <div class="cb-actions-list">
6843
- <div class="cb-action ripple" @click="${this.invokeLinkAction.bind(this, s)}">
6884
+ <div class="cb-action ripple" @click="${this.invokeLinkAction.bind(this, i)}">
6844
6885
  <div class="cb-action-icon">
6845
6886
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
6846
6887
  <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" />
6847
6888
  </svg>
6848
6889
  </div>
6849
- ${s.title}
6890
+ ${i.title}
6850
6891
  </div>
6851
6892
  </div>
6852
6893
  `;
6853
6894
  }
6854
- invokeHubspotMeetingAction(s = {}) {
6895
+ invokeHubspotMeetingAction(i = {}) {
6855
6896
  const e = Date.now();
6856
6897
  if (this.activeHubspotMeetingAction !== -1) {
6857
- $e.info(`invokeHubspotMeetingAction: action ${this.activeHubspotMeetingAction} is already active - ignored`);
6898
+ Ee.info(`invokeHubspotMeetingAction: action ${this.activeHubspotMeetingAction} is already active - ignored`);
6858
6899
  return;
6859
6900
  }
6860
- if ($e.info("invokeHubspotMeetingAction:", s), "hbspt" in window && typeof window.hbspt?.meetings?.create == "function") {
6901
+ if (Ee.info("invokeHubspotMeetingAction:", i), "hbspt" in window && typeof window.hbspt?.meetings?.create == "function") {
6861
6902
  const t = document.getElementById("enegelai-bot-hubspot-meeting-container"), a = document.querySelector(".enegelai-bot-hubspot-meeting-widget");
6862
6903
  if (t && a) {
6863
- const n = s.url + "?embed=true";
6864
- a.setAttribute("data-src", n), this.activeHubspotMeetingAction = s.internalId, t.style.display = "block", window.hbspt.meetings.create(".enegelai-bot-hubspot-meeting-widget"), b.updateAction(s, {
6904
+ const n = i.url + "?embed=true";
6905
+ a.setAttribute("data-src", n), this.activeHubspotMeetingAction = i.internalId, t.style.display = "block", window.hbspt.meetings.create(".enegelai-bot-hubspot-meeting-widget"), b.updateAction(i, {
6865
6906
  triggered: e
6866
6907
  });
6867
6908
  }
6868
6909
  }
6869
6910
  return !1;
6870
6911
  }
6871
- handleHubspotEvent(s) {
6872
- if ($e.info("Got Hubspot Event:", s.data), !(s?.data?.meetingBookSucceeded || !1))
6912
+ handleHubspotEvent(i) {
6913
+ if (Ee.info("Got Hubspot Event:", i.data), !(i?.data?.meetingBookSucceeded || !1))
6873
6914
  return;
6874
6915
  const t = this.activeHubspotMeetingAction;
6875
6916
  if (t >= 0) {
6876
- b.removeAction(t, !0, s.data), b.addSystemMessage("Your meeting has been scheduled!"), this.activeHubspotMeetingAction = -1;
6917
+ b.removeAction(t, !0, i.data), b.addSystemMessage("Your meeting has been scheduled!"), this.activeHubspotMeetingAction = -1;
6877
6918
  const a = document.getElementById("enegelai-bot-hubspot-meeting-container");
6878
6919
  a && (a.style.display = "none");
6879
6920
  }
6880
6921
  }
6881
6922
  handleHubspotMeetingCancel() {
6882
6923
  this.activeHubspotMeetingAction = -1;
6883
- const s = document.getElementById("enegelai-bot-hubspot-meeting-container");
6884
- s && (s.style.display = "none");
6924
+ const i = document.getElementById("enegelai-bot-hubspot-meeting-container");
6925
+ i && (i.style.display = "none");
6885
6926
  }
6886
- renderHubspotMeetingAction(s) {
6927
+ renderHubspotMeetingAction(i) {
6887
6928
  if (!this.hubspotMeetingInjected) {
6888
6929
  const e = document.createElement("script");
6889
6930
  e.src = "https://static.hsappstatic.net/MeetingsEmbed/ex/MeetingsEmbedCode.js", document.getElementsByTagName("head")[0].appendChild(e);
@@ -6902,11 +6943,11 @@ let pe = class extends ae {
6902
6943
  this.handleHubspotMeetingCancel();
6903
6944
  }), this.hubspotMeetingInjected = !0;
6904
6945
  }
6905
- return s?.hubspotMeetingAuto && !("triggered" in s) && setTimeout(() => {
6906
- this.invokeHubspotMeetingAction(s);
6946
+ return i?.hubspotMeetingAuto && !("triggered" in i) && setTimeout(() => {
6947
+ this.invokeHubspotMeetingAction(i);
6907
6948
  }, 500), u`
6908
6949
  <div class="cb-actions-list">
6909
- <div class="cb-action ripple" @click="${this.invokeHubspotMeetingAction.bind(this, s)}">
6950
+ <div class="cb-action ripple" @click="${this.invokeHubspotMeetingAction.bind(this, i)}">
6910
6951
  <div class="cb-action-icon">
6911
6952
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
6912
6953
  <path
@@ -6915,7 +6956,7 @@ let pe = class extends ae {
6915
6956
  />
6916
6957
  </svg>
6917
6958
  </div>
6918
- ${s.title}
6959
+ ${i.title}
6919
6960
  </div>
6920
6961
  </div>
6921
6962
  `;
@@ -6995,9 +7036,9 @@ const zs = Z`
6995
7036
  margin: 6px 2px;
6996
7037
  }
6997
7038
  `, za = '<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.576zm6.787-8.201L1.591 6.602l4.339 2.76z"/></svg>', Pa = '<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 0z"/></svg>', qa = '<svg viewBox="0 0 24 24" width="26px" height="26px" ><path fill="currentColor" d="M12 14c1.66 0 2.99-1.34 2.99-3L15 5c0-1.66-1.34-3-3-3S9 3.34 9 5v6c0 1.66 1.34 3 3 3m5.3-3c0 3-2.54 5.1-5.3 5.1S6.7 14 6.7 11H5c0 3.41 2.72 6.23 6 6.72V21h2v-3.28c3.28-.48 6-3.3 6-6.72z"/></svg>', Wt = '<svg viewBox="0 0 24 24" width="26px" height="26px" ><path fill="currentColor" d="M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12z"/></svg>';
6998
- var Ps = Object.defineProperty, qs = Object.getOwnPropertyDescriptor, _e = (s, e, t, a) => {
6999
- for (var n = a > 1 ? void 0 : a ? qs(e, t) : e, o = s.length - 1, c; o >= 0; o--)
7000
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
7039
+ var Ps = Object.defineProperty, qs = Object.getOwnPropertyDescriptor, _e = (i, e, t, a) => {
7040
+ for (var n = a > 1 ? void 0 : a ? qs(e, t) : e, o = i.length - 1, c; o >= 0; o--)
7041
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
7001
7042
  return a && n && Ps(e, t, n), n;
7002
7043
  };
7003
7044
  let ge = class extends ae {
@@ -7007,17 +7048,17 @@ let ge = class extends ae {
7007
7048
  connectedCallback() {
7008
7049
  super.connectedCallback(), addEventListener("form:submit", this._formSubmitHandler.bind(this)), addEventListener("c7o:bot:input:setvalue", this._inputSetValueHandler.bind(this));
7009
7050
  }
7010
- async _inputSetValueHandler(s) {
7011
- const e = s, t = typeof e?.detail?.inputValue == "string" && e?.detail?.inputValue || "";
7051
+ async _inputSetValueHandler(i) {
7052
+ const e = i, t = typeof e?.detail?.inputValue == "string" && e?.detail?.inputValue || "";
7012
7053
  this.value = t;
7013
7054
  }
7014
- async _formSubmitHandler(s) {
7055
+ async _formSubmitHandler(i) {
7015
7056
  requestIdleCallback(() => {
7016
7057
  this.inputElement.focus();
7017
7058
  });
7018
7059
  }
7019
- _inputChangeHandler(s) {
7020
- const e = s.target;
7060
+ _inputChangeHandler(i) {
7061
+ const e = i.target;
7021
7062
  this.value = e.value;
7022
7063
  }
7023
7064
  _sendHandler() {
@@ -7035,10 +7076,10 @@ let ge = class extends ae {
7035
7076
  });
7036
7077
  }
7037
7078
  async _sendFileHandler() {
7038
- const s = await Sa(!1);
7079
+ const i = await Sa(!1);
7039
7080
  this.emit("message:send:file", {
7040
7081
  detail: {
7041
- files: s
7082
+ files: i
7042
7083
  }
7043
7084
  });
7044
7085
  }
@@ -7109,8 +7150,8 @@ let ge = class extends ae {
7109
7150
  </div>
7110
7151
  `;
7111
7152
  }
7112
- _keyDownHandler(s) {
7113
- s.key === "Enter" && !s.shiftKey && this._sendHandler();
7153
+ _keyDownHandler(i) {
7154
+ i.key === "Enter" && !i.shiftKey && this._sendHandler();
7114
7155
  }
7115
7156
  };
7116
7157
  ge.styles = zs;
@@ -7203,9 +7244,9 @@ const Bs = Z`
7203
7244
  outline: none !important;
7204
7245
  }
7205
7246
  `, Os = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4"/></svg>', Rs = '<svg viewBox="0 0 24 24" width="26px" height="26px" ><path fill="currentColor" d="M8 18c.55 0 1-.45 1-1V7c0-.55-.45-1-1-1s-1 .45-1 1v10c0 .55.45 1 1 1m4 4c.55 0 1-.45 1-1V3c0-.55-.45-1-1-1s-1 .45-1 1v18c0 .55.45 1 1 1m-8-8c.55 0 1-.45 1-1v-2c0-.55-.45-1-1-1s-1 .45-1 1v2c0 .55.45 1 1 1m12 4c.55 0 1-.45 1-1V7c0-.55-.45-1-1-1s-1 .45-1 1v10c0 .55.45 1 1 1m3-7v2c0 .55.45 1 1 1s1-.45 1-1v-2c0-.55-.45-1-1-1s-1 .45-1 1"/></svg>', ha = '<svg viewBox="0 0 24 24" width="26px" height="26px" ><path fill="currentColor" d="m4 12l1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8z"/></svg>';
7206
- var Fs = Object.defineProperty, Hs = Object.getOwnPropertyDescriptor, Ce = (s, e, t, a) => {
7207
- for (var n = a > 1 ? void 0 : a ? Hs(e, t) : e, o = s.length - 1, c; o >= 0; o--)
7208
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
7247
+ var Fs = Object.defineProperty, Hs = Object.getOwnPropertyDescriptor, Ce = (i, e, t, a) => {
7248
+ for (var n = a > 1 ? void 0 : a ? Hs(e, t) : e, o = i.length - 1, c; o >= 0; o--)
7249
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
7209
7250
  return a && n && Fs(e, t, n), n;
7210
7251
  };
7211
7252
  let me = class extends ae {
@@ -7215,17 +7256,17 @@ let me = class extends ae {
7215
7256
  connectedCallback() {
7216
7257
  super.connectedCallback(), addEventListener("form:submit", this._formSubmitHandler.bind(this)), addEventListener("c7o:bot:input:setvalue", this._inputSetValueHandler.bind(this));
7217
7258
  }
7218
- async _inputSetValueHandler(s) {
7219
- const e = s, t = typeof e?.detail?.inputValue == "string" && e?.detail?.inputValue || "";
7259
+ async _inputSetValueHandler(i) {
7260
+ const e = i, t = typeof e?.detail?.inputValue == "string" && e?.detail?.inputValue || "";
7220
7261
  this.value = t;
7221
7262
  }
7222
- async _formSubmitHandler(s) {
7263
+ async _formSubmitHandler(i) {
7223
7264
  requestIdleCallback(() => {
7224
7265
  this.inputElement.focus();
7225
7266
  });
7226
7267
  }
7227
- _inputChangeHandler(s) {
7228
- const e = s.target;
7268
+ _inputChangeHandler(i) {
7269
+ const e = i.target;
7229
7270
  this.value = e.value;
7230
7271
  }
7231
7272
  _ctrlHandler() {
@@ -7249,10 +7290,10 @@ let me = class extends ae {
7249
7290
  });
7250
7291
  }
7251
7292
  async _sendFileHandler() {
7252
- const s = await Sa(!1);
7293
+ const i = await Sa(!1);
7253
7294
  this.emit("message:send:file", {
7254
7295
  detail: {
7255
- files: s
7296
+ files: i
7256
7297
  }
7257
7298
  });
7258
7299
  }
@@ -7389,8 +7430,8 @@ let me = class extends ae {
7389
7430
  </div>
7390
7431
  `;
7391
7432
  }
7392
- _keyDownHandler(s) {
7393
- s.key === "Enter" && !s.shiftKey && this._sendHandler();
7433
+ _keyDownHandler(i) {
7434
+ i.key === "Enter" && !i.shiftKey && this._sendHandler();
7394
7435
  }
7395
7436
  };
7396
7437
  me.styles = Bs;
@@ -7459,9 +7500,9 @@ const Ba = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="c
7459
7500
  gap: 8px;
7460
7501
  }
7461
7502
  `;
7462
- var Ds = Object.defineProperty, Vs = Object.getOwnPropertyDescriptor, Mt = (s, e, t, a) => {
7463
- for (var n = a > 1 ? void 0 : a ? Vs(e, t) : e, o = s.length - 1, c; o >= 0; o--)
7464
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
7503
+ var Ds = Object.defineProperty, Vs = Object.getOwnPropertyDescriptor, Mt = (i, e, t, a) => {
7504
+ for (var n = a > 1 ? void 0 : a ? Vs(e, t) : e, o = i.length - 1, c; o >= 0; o--)
7505
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
7465
7506
  return a && n && Ds(e, t, n), n;
7466
7507
  };
7467
7508
  let Xe = class extends ae {
@@ -7521,9 +7562,9 @@ Mt([
7521
7562
  Xe = Mt([
7522
7563
  J("cb-dialog")
7523
7564
  ], Xe);
7524
- var Ns = Object.defineProperty, Us = Object.getOwnPropertyDescriptor, Oa = (s, e, t, a) => {
7525
- for (var n = a > 1 ? void 0 : a ? Us(e, t) : e, o = s.length - 1, c; o >= 0; o--)
7526
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
7565
+ var Ns = Object.defineProperty, Us = Object.getOwnPropertyDescriptor, Oa = (i, e, t, a) => {
7566
+ for (var n = a > 1 ? void 0 : a ? Us(e, t) : e, o = i.length - 1, c; o >= 0; o--)
7567
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
7527
7568
  return a && n && Ns(e, t, n), n;
7528
7569
  };
7529
7570
  let xt = class extends ae {
@@ -7634,9 +7675,9 @@ const Ws = Z`
7634
7675
  grid-column-start: 2;
7635
7676
  }
7636
7677
  `;
7637
- var Ys = Object.defineProperty, Xs = Object.getOwnPropertyDescriptor, Ge = (s, e, t, a) => {
7638
- for (var n = a > 1 ? void 0 : a ? Xs(e, t) : e, o = s.length - 1, c; o >= 0; o--)
7639
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
7678
+ var Ys = Object.defineProperty, Xs = Object.getOwnPropertyDescriptor, Ge = (i, e, t, a) => {
7679
+ for (var n = a > 1 ? void 0 : a ? Xs(e, t) : e, o = i.length - 1, c; o >= 0; o--)
7680
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
7640
7681
  return a && n && Ys(e, t, n), n;
7641
7682
  };
7642
7683
  let qe = class extends ae {
@@ -7731,13 +7772,13 @@ let qe = class extends ae {
7731
7772
  this.emit("message:clear"), this.clearMessageDialogOpen = !1;
7732
7773
  }
7733
7774
  // input change handler
7734
- _inputChangeHandler(s) {
7735
- const { name: e, value: t } = s.target, [a, n] = e.split(".");
7775
+ _inputChangeHandler(i) {
7776
+ const { name: e, value: t } = i.target, [a, n] = e.split(".");
7736
7777
  n ? this.setting[a][n] = t : this.setting[a] = t;
7737
7778
  }
7738
7779
  // checked change handler
7739
- _checkChangeHandler(s) {
7740
- const { name: e, checked: t } = s.target, [a, n] = e.split(".");
7780
+ _checkChangeHandler(i) {
7781
+ const { name: e, checked: t } = i.target, [a, n] = e.split(".");
7741
7782
  n ? this.setting[a][n] = t : this.setting[a] = t, a === "customRequest" && (this.customRequest = t);
7742
7783
  }
7743
7784
  // emit setting confirm event
@@ -7752,8 +7793,8 @@ let qe = class extends ae {
7752
7793
  _settingCancelHandler() {
7753
7794
  this.emit("setting:hide");
7754
7795
  }
7755
- updated(s) {
7756
- super.updated(s), this.dialog?.addEventListener("sl-request-close", (e) => {
7796
+ updated(i) {
7797
+ super.updated(i), this.dialog?.addEventListener("sl-request-close", (e) => {
7757
7798
  e.detail.source === "overlay" && e.preventDefault();
7758
7799
  });
7759
7800
  }
@@ -7891,9 +7932,9 @@ const Gs = Z`
7891
7932
  margin: 4px 4px 0px 0px;
7892
7933
  }
7893
7934
  `;
7894
- var Zs = Object.defineProperty, Js = Object.getOwnPropertyDescriptor, Ra = (s, e, t, a) => {
7895
- for (var n = a > 1 ? void 0 : a ? Js(e, t) : e, o = s.length - 1, c; o >= 0; o--)
7896
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
7935
+ var Zs = Object.defineProperty, Js = Object.getOwnPropertyDescriptor, Ra = (i, e, t, a) => {
7936
+ for (var n = a > 1 ? void 0 : a ? Js(e, t) : e, o = i.length - 1, c; o >= 0; o--)
7937
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
7897
7938
  return a && n && Zs(e, t, n), n;
7898
7939
  };
7899
7940
  let kt = class extends ae {
@@ -7902,15 +7943,15 @@ let kt = class extends ae {
7902
7943
  }
7903
7944
  // handler click
7904
7945
  _clickHandler() {
7905
- const s = !this.open;
7946
+ const i = !this.open;
7906
7947
  this.emit("chatbot:toggle", {
7907
7948
  detail: {
7908
- open: s
7949
+ open: i
7909
7950
  }
7910
- }), this.open = s;
7951
+ }), this.open = i;
7911
7952
  }
7912
- _engageClickHandler(s) {
7913
- console.log("engage close clicked!"), b.suppressEngagePopup(), s.stopPropagation();
7953
+ _engageClickHandler(i) {
7954
+ console.log("engage close clicked!"), b.suppressEngagePopup(), i.stopPropagation();
7914
7955
  }
7915
7956
  /*
7916
7957
  ${when(
@@ -7920,12 +7961,12 @@ let kt = class extends ae {
7920
7961
  )}
7921
7962
  */
7922
7963
  getPopupPlacement() {
7923
- let s = "top-end";
7924
- return s = b.appearanceAnchorPopupPosition, s;
7964
+ let i = "top-end";
7965
+ return i = b.appearanceAnchorPopupPosition, i;
7925
7966
  }
7926
7967
  getBadgeVariant() {
7927
- let s = "danger";
7928
- return s = b.appearanceAnchorBadgeVariant, s;
7968
+ let i = "danger";
7969
+ return i = b.appearanceAnchorBadgeVariant, i;
7929
7970
  }
7930
7971
  renderPopupLogo() {
7931
7972
  return b.setting.popupLogoUrl !== "" ? u`<img class="cb-engage-popup-img" src="${b.setting.popupLogoUrl}" />` : b.setting.popupLogoSvg !== "" ? u`<div class="cb-engage-popup-logo">${ue`${Y(b.setting.popupLogoSvg)}`}</div>` : b.setting.logoUrl !== "" ? u`<img class="cb-engage-popup-img" src="${b.setting.logoUrl}" />` : b.setting.logoSvg !== "" ? u`<div class="cb-engage-popup-logo">${ue`${Y(b.setting.logoSvg)}`}</div>` : null;
@@ -7968,9 +8009,9 @@ kt = Ra([
7968
8009
  const Ks = Z`
7969
8010
  ${ye}
7970
8011
  `, ua = '<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-.353zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1z"/><path d="M7.002 11a1 1 0 1 1 2 0a1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z"/></g></svg>', Qs = '<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.15.15 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.2.2 0 0 1-.054.06a.1.1 0 0 1-.066.017H1.146a.1.1 0 0 1-.066-.017a.2.2 0 0 1-.054-.06a.18.18 0 0 1 .002-.183L7.884 2.073a.15.15 0 0 1 .054-.057m1.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.767z"/><path d="M7.002 12a1 1 0 1 1 2 0a1 1 0 0 1-2 0M7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z"/></g></svg>', en = '<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 0"/><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 0z"/></g></svg>', tn = '<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 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16"/><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-.533zM9 4.5a1 1 0 1 1-2 0a1 1 0 0 1 2 0"/></g></svg>';
7971
- var an = Object.defineProperty, sn = Object.getOwnPropertyDescriptor, Fa = (s, e, t, a) => {
7972
- for (var n = a > 1 ? void 0 : a ? sn(e, t) : e, o = s.length - 1, c; o >= 0; o--)
7973
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
8012
+ var an = Object.defineProperty, sn = Object.getOwnPropertyDescriptor, Fa = (i, e, t, a) => {
8013
+ for (var n = a > 1 ? void 0 : a ? sn(e, t) : e, o = i.length - 1, c; o >= 0; o--)
8014
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
7974
8015
  return a && n && an(e, t, n), n;
7975
8016
  };
7976
8017
  const pa = {
@@ -8000,8 +8041,8 @@ let _t = class extends ae {
8000
8041
  super(...arguments), this.status = "info";
8001
8042
  }
8002
8043
  render() {
8003
- const { variant: s, icon: e } = pa[this.status] || pa.info;
8004
- return u`<cb-icon svg=${e} color="${s}"></cb-icon>`;
8044
+ const { variant: i, icon: e } = pa[this.status] || pa.info;
8045
+ return u`<cb-icon svg=${e} color="${i}"></cb-icon>`;
8005
8046
  }
8006
8047
  };
8007
8048
  _t.styles = Ca;
@@ -8011,9 +8052,9 @@ Fa([
8011
8052
  _t = Fa([
8012
8053
  J("cb-status-icon")
8013
8054
  ], _t);
8014
- var nn = Object.getOwnPropertyDescriptor, rn = (s, e, t, a) => {
8015
- for (var n = a > 1 ? void 0 : a ? nn(e, t) : e, o = s.length - 1, c; o >= 0; o--)
8016
- (c = s[o]) && (n = c(n) || n);
8055
+ var nn = Object.getOwnPropertyDescriptor, rn = (i, e, t, a) => {
8056
+ for (var n = a > 1 ? void 0 : a ? nn(e, t) : e, o = i.length - 1, c; o >= 0; o--)
8057
+ (c = i[o]) && (n = c(n) || n);
8017
8058
  return n;
8018
8059
  };
8019
8060
  let Rt = class extends ae {
@@ -8120,9 +8161,9 @@ const on = Z`
8120
8161
  filter: alpha(opacity=80);
8121
8162
  }
8122
8163
  `;
8123
- var cn = Object.defineProperty, ln = Object.getOwnPropertyDescriptor, Ze = (s, e, t, a) => {
8124
- for (var n = a > 1 ? void 0 : a ? ln(e, t) : e, o = s.length - 1, c; o >= 0; o--)
8125
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
8164
+ var cn = Object.defineProperty, ln = Object.getOwnPropertyDescriptor, Ze = (i, e, t, a) => {
8165
+ for (var n = a > 1 ? void 0 : a ? ln(e, t) : e, o = i.length - 1, c; o >= 0; o--)
8166
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
8126
8167
  return a && n && cn(e, t, n), n;
8127
8168
  };
8128
8169
  const ga = Ne.noConflict(), dn = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="bi bi-star-fill" viewBox="0 0 16 16"><path d="M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.282.95l-3.522 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z"/></svg>';
@@ -8136,8 +8177,8 @@ let Be = class extends ae {
8136
8177
  firstUpdated() {
8137
8178
  this._rating.getSymbol = () => dn;
8138
8179
  }
8139
- _stateEventHandler(s) {
8140
- const e = s.detail, t = e?.type || null;
8180
+ _stateEventHandler(i) {
8181
+ const e = i.detail, t = e?.type || null;
8141
8182
  ga.info(`FEEDBACK: stateEvent: ${t}`, e);
8142
8183
  }
8143
8184
  _cancelHandler() {
@@ -8168,7 +8209,7 @@ let Be = class extends ae {
8168
8209
  b.feedbackScore = 5;
8169
8210
  }}"
8170
8211
  >
8171
- ${ue`${Y(Ta)}`}
8212
+ ${ue`${Y($a)}`}
8172
8213
  </div>
8173
8214
  </div>
8174
8215
  <div style="display: flex">
@@ -8185,8 +8226,8 @@ let Be = class extends ae {
8185
8226
  b.feedbackScore = this._rating.value;
8186
8227
  }
8187
8228
  async _submitHandler() {
8188
- const s = this._name?.value || "", e = this._email?.value || "", t = this._comments?.value || "";
8189
- this._comments.value = "", await b.submitFeedback(s, e, t);
8229
+ const i = this._name?.value || "", e = this._email?.value || "", t = this._comments?.value || "";
8230
+ this._comments.value = "", await b.submitFeedback(i, e, t);
8190
8231
  }
8191
8232
  };
8192
8233
  Be.styles = on;
@@ -8669,8 +8710,8 @@ class bt {
8669
8710
  if (y === 0)
8670
8711
  e.moveTo(S, w);
8671
8712
  else {
8672
- const _ = (y - 1) * c, L = this.renderPoints[y - 1] * a * 0.8, E = _ + c * 0.5, A = L, P = S - c * 0.5, I = w;
8673
- e.bezierCurveTo(E, A, P, I, S, w);
8713
+ const _ = (y - 1) * c, L = this.renderPoints[y - 1] * a * 0.8, T = _ + c * 0.5, A = L, P = S - c * 0.5, I = w;
8714
+ e.bezierCurveTo(T, A, P, I, S, w);
8674
8715
  }
8675
8716
  }
8676
8717
  e.lineTo(t, 0), e.lineTo(0, 0), n === Yt && !o ? this.currentColorRGB = this._lerpColor(this.currentColorRGB, this.inputColorRGB, 0.02) : this.currentColorRGB = this._lerpColor(this.currentColorRGB, this.outputColorRGB, 0.02);
@@ -8743,17 +8784,17 @@ class un extends Ha {
8743
8784
  for (let w = 0; w < this._numBars; w++) {
8744
8785
  const _ = this._renderHeights[w] * t.height * 0.9, L = v - (w + 1) * (p * 1.2);
8745
8786
  e.fillRect(L, y - _ / 2, p, _);
8746
- const E = v + w * (p * 1.2);
8747
- e.fillRect(E, y - _ / 2, p, _);
8787
+ const T = v + w * (p * 1.2);
8788
+ e.fillRect(T, y - _ / 2, p, _);
8748
8789
  }
8749
8790
  e.restore();
8750
8791
  }
8751
8792
  }
8752
8793
  customElements.get("volume-visualizer-bars") || customElements.define("volume-visualizer-bars", un);
8753
8794
  const pn = '<svg viewBox="0 0 24 24" width="26px" height="26px" ><path fill="currentColor" d="M19 11h-1.7c0 .74-.16 1.43-.43 2.05l1.23 1.23c.56-.98.9-2.09.9-3.28m-4.02.17c0-.06.02-.11.02-.17V5c0-1.66-1.34-3-3-3S9 3.34 9 5v.18zM4.27 3L3 4.27l6.01 6.01V11c0 1.66 1.33 3 2.99 3c.22 0 .44-.03.65-.08l1.66 1.66c-.71.33-1.5.52-2.31.52c-2.76 0-5.3-2.1-5.3-5.1H5c0 3.41 2.72 6.23 6 6.72V21h2v-3.28c.91-.13 1.77-.45 2.54-.9L19.73 21L21 19.73z"/></svg>';
8754
- var gn = Object.getOwnPropertyDescriptor, mn = (s, e, t, a) => {
8755
- for (var n = a > 1 ? void 0 : a ? gn(e, t) : e, o = s.length - 1, c; o >= 0; o--)
8756
- (c = s[o]) && (n = c(n) || n);
8795
+ var gn = Object.getOwnPropertyDescriptor, mn = (i, e, t, a) => {
8796
+ for (var n = a > 1 ? void 0 : a ? gn(e, t) : e, o = i.length - 1, c; o >= 0; o--)
8797
+ (c = i[o]) && (n = c(n) || n);
8757
8798
  return n;
8758
8799
  };
8759
8800
  const Qe = Ne.noConflict();
@@ -8827,8 +8868,8 @@ let Ft = class extends ae {
8827
8868
  `;
8828
8869
  }
8829
8870
  }
8830
- updated(s) {
8831
- if (super.updated(s), this.volumeVisualizerRef.value) {
8871
+ updated(i) {
8872
+ if (super.updated(i), this.volumeVisualizerRef.value) {
8832
8873
  if (!this.volumeVisualizerInitialized) {
8833
8874
  const e = this.volumeVisualizerRef.value, t = b.getAudioAnalyzers();
8834
8875
  t && (e.connectAnalyzers(t), Qe.info("volumeVisualizerInitialized set to true"), this.volumeVisualizerInitialized = !0);
@@ -8848,13 +8889,13 @@ let Ft = class extends ae {
8848
8889
  </span>`,
8849
8890
  )}
8850
8891
  * */
8851
- async _toggleMute(s) {
8852
- s.stopPropagation(), Qe.info("_toggleMute called"), await b.toggleMute(), this.volumeVisualizerRef.value && this.volumeVisualizerRef.value.setMuted(b.webAudioMuted);
8892
+ async _toggleMute(i) {
8893
+ i.stopPropagation(), Qe.info("_toggleMute called"), await b.toggleMute(), this.volumeVisualizerRef.value && this.volumeVisualizerRef.value.setMuted(b.webAudioMuted);
8853
8894
  }
8854
- async _toggleHangup(s) {
8855
- s.stopPropagation(), Qe.info("_toggleHangup called"), await b.stopAudio();
8895
+ async _toggleHangup(i) {
8896
+ i.stopPropagation(), Qe.info("_toggleHangup called"), await b.stopAudio();
8856
8897
  }
8857
- _handleTypingActiveChanged(s, e, t) {
8898
+ _handleTypingActiveChanged(i, e, t) {
8858
8899
  b.webAudioStarted && (Qe.info(`Typing state changed: ${e}`), this.volumeVisualizerRef.value && this.volumeVisualizerRef.value.setThinking(e));
8859
8900
  }
8860
8901
  };
@@ -8878,7 +8919,7 @@ class ja extends Error {
8878
8919
  }
8879
8920
  }
8880
8921
  const va = (() => {
8881
- let s = !1, e = !1;
8922
+ let i = !1, e = !1;
8882
8923
  const t = typeof globalThis.ReadableStream == "function", a = typeof globalThis.Request == "function";
8883
8924
  if (t && a)
8884
8925
  try {
@@ -8887,7 +8928,7 @@ const va = (() => {
8887
8928
  method: "POST",
8888
8929
  // @ts-expect-error - Types are outdated.
8889
8930
  get duplex() {
8890
- return s = !0, "half";
8931
+ return i = !0, "half";
8891
8932
  }
8892
8933
  }).headers.has("Content-Type");
8893
8934
  } catch (n) {
@@ -8895,7 +8936,7 @@ const va = (() => {
8895
8936
  return !1;
8896
8937
  throw n;
8897
8938
  }
8898
- return s && !e;
8939
+ return i && !e;
8899
8940
  })(), yn = typeof globalThis.AbortController == "function", vn = typeof globalThis.AbortSignal == "function" && typeof globalThis.AbortSignal.any == "function", wn = typeof globalThis.ReadableStream == "function", xn = typeof globalThis.FormData == "function", Da = ["get", "post", "put", "patch", "head", "delete"], kn = {
8900
8941
  json: "application/json",
8901
8942
  text: "text/*",
@@ -8935,43 +8976,43 @@ const va = (() => {
8935
8976
  dispatcher: !0,
8936
8977
  duplex: !0,
8937
8978
  priority: !0
8938
- }, An = (s) => {
8939
- if (!s)
8979
+ }, An = (i) => {
8980
+ if (!i)
8940
8981
  return 0;
8941
- if (s instanceof FormData) {
8982
+ if (i instanceof FormData) {
8942
8983
  let e = 0;
8943
- for (const [t, a] of s)
8984
+ for (const [t, a] of i)
8944
8985
  e += _n, e += new TextEncoder().encode(`Content-Disposition: form-data; name="${t}"`).length, e += typeof a == "string" ? new TextEncoder().encode(a).length : a.size;
8945
8986
  return e;
8946
8987
  }
8947
- if (s instanceof Blob)
8948
- return s.size;
8949
- if (s instanceof ArrayBuffer)
8950
- return s.byteLength;
8951
- if (typeof s == "string")
8952
- return new TextEncoder().encode(s).length;
8953
- if (s instanceof URLSearchParams)
8954
- return new TextEncoder().encode(s.toString()).length;
8955
- if ("byteLength" in s)
8956
- return s.byteLength;
8957
- if (typeof s == "object" && s !== null)
8988
+ if (i instanceof Blob)
8989
+ return i.size;
8990
+ if (i instanceof ArrayBuffer)
8991
+ return i.byteLength;
8992
+ if (typeof i == "string")
8993
+ return new TextEncoder().encode(i).length;
8994
+ if (i instanceof URLSearchParams)
8995
+ return new TextEncoder().encode(i.toString()).length;
8996
+ if ("byteLength" in i)
8997
+ return i.byteLength;
8998
+ if (typeof i == "object" && i !== null)
8958
8999
  try {
8959
- const e = JSON.stringify(s);
9000
+ const e = JSON.stringify(i);
8960
9001
  return new TextEncoder().encode(e).length;
8961
9002
  } catch {
8962
9003
  return 0;
8963
9004
  }
8964
9005
  return 0;
8965
- }, Mn = (s, e) => {
8966
- const t = Number(s.headers.get("content-length")) || 0;
9006
+ }, Mn = (i, e) => {
9007
+ const t = Number(i.headers.get("content-length")) || 0;
8967
9008
  let a = 0;
8968
- return s.status === 204 ? (e && e({ percent: 1, totalBytes: t, transferredBytes: a }, new Uint8Array()), new Response(null, {
8969
- status: s.status,
8970
- statusText: s.statusText,
8971
- headers: s.headers
9009
+ return i.status === 204 ? (e && e({ percent: 1, totalBytes: t, transferredBytes: a }, new Uint8Array()), new Response(null, {
9010
+ status: i.status,
9011
+ statusText: i.statusText,
9012
+ headers: i.headers
8972
9013
  })) : new Response(new ReadableStream({
8973
9014
  async start(n) {
8974
- const o = s.body.getReader();
9015
+ const o = i.body.getReader();
8975
9016
  e && e({ percent: 0, transferredBytes: 0, totalBytes: t }, new Uint8Array());
8976
9017
  async function c() {
8977
9018
  const { done: p, value: v } = await o.read();
@@ -8989,19 +9030,19 @@ const va = (() => {
8989
9030
  await c();
8990
9031
  }
8991
9032
  }), {
8992
- status: s.status,
8993
- statusText: s.statusText,
8994
- headers: s.headers
9033
+ status: i.status,
9034
+ statusText: i.statusText,
9035
+ headers: i.headers
8995
9036
  });
8996
- }, In = (s, e) => {
8997
- const t = An(s.body);
9037
+ }, In = (i, e) => {
9038
+ const t = An(i.body);
8998
9039
  let a = 0;
8999
- return new Request(s, {
9040
+ return new Request(i, {
9000
9041
  // @ts-expect-error - Types are outdated.
9001
9042
  duplex: "half",
9002
9043
  body: new ReadableStream({
9003
9044
  async start(n) {
9004
- const o = s.body instanceof ReadableStream ? s.body.getReader() : new Response("").body.getReader();
9045
+ const o = i.body instanceof ReadableStream ? i.body.getReader() : new Response("").body.getReader();
9005
9046
  async function c() {
9006
9047
  const { done: p, value: v } = await o.read();
9007
9048
  if (p) {
@@ -9016,28 +9057,28 @@ const va = (() => {
9016
9057
  }
9017
9058
  })
9018
9059
  });
9019
- }, et = (s) => s !== null && typeof s == "object", ht = (...s) => {
9020
- for (const e of s)
9060
+ }, et = (i) => i !== null && typeof i == "object", ht = (...i) => {
9061
+ for (const e of i)
9021
9062
  if ((!et(e) || Array.isArray(e)) && e !== void 0)
9022
9063
  throw new TypeError("The `options` argument must be an object");
9023
- return Xt({}, ...s);
9024
- }, Na = (s = {}, e = {}) => {
9025
- const t = new globalThis.Headers(s), a = e instanceof globalThis.Headers, n = new globalThis.Headers(e);
9064
+ return Xt({}, ...i);
9065
+ }, Na = (i = {}, e = {}) => {
9066
+ const t = new globalThis.Headers(i), a = e instanceof globalThis.Headers, n = new globalThis.Headers(e);
9026
9067
  for (const [o, c] of n.entries())
9027
9068
  a && c === "undefined" || c === void 0 ? t.delete(o) : t.set(o, c);
9028
9069
  return t;
9029
9070
  };
9030
- function ut(s, e, t) {
9031
- return Object.hasOwn(e, t) && e[t] === void 0 ? [] : Xt(s[t] ?? [], e[t] ?? []);
9071
+ function ut(i, e, t) {
9072
+ return Object.hasOwn(e, t) && e[t] === void 0 ? [] : Xt(i[t] ?? [], e[t] ?? []);
9032
9073
  }
9033
- const Ua = (s = {}, e = {}) => ({
9034
- beforeRequest: ut(s, e, "beforeRequest"),
9035
- beforeRetry: ut(s, e, "beforeRetry"),
9036
- afterResponse: ut(s, e, "afterResponse"),
9037
- beforeError: ut(s, e, "beforeError")
9038
- }), Xt = (...s) => {
9074
+ const Ua = (i = {}, e = {}) => ({
9075
+ beforeRequest: ut(i, e, "beforeRequest"),
9076
+ beforeRetry: ut(i, e, "beforeRetry"),
9077
+ afterResponse: ut(i, e, "afterResponse"),
9078
+ beforeError: ut(i, e, "beforeError")
9079
+ }), Xt = (...i) => {
9039
9080
  let e = {}, t = {}, a = {};
9040
- for (const n of s)
9081
+ for (const n of i)
9041
9082
  if (Array.isArray(n))
9042
9083
  Array.isArray(e) || (e = []), e = [...e, ...n];
9043
9084
  else if (et(n)) {
@@ -9046,40 +9087,40 @@ const Ua = (s = {}, e = {}) => ({
9046
9087
  et(n.hooks) && (a = Ua(a, n.hooks), e.hooks = a), et(n.headers) && (t = Na(t, n.headers), e.headers = t);
9047
9088
  }
9048
9089
  return e;
9049
- }, $n = (s) => Da.includes(s) ? s.toUpperCase() : s, En = ["get", "put", "head", "delete", "options", "trace"], Tn = [408, 413, 429, 500, 502, 503, 504], Ln = [413, 429, 503], wa = {
9090
+ }, En = (i) => Da.includes(i) ? i.toUpperCase() : i, Tn = ["get", "put", "head", "delete", "options", "trace"], $n = [408, 413, 429, 500, 502, 503, 504], Ln = [413, 429, 503], wa = {
9050
9091
  limit: 2,
9051
- methods: En,
9052
- statusCodes: Tn,
9092
+ methods: Tn,
9093
+ statusCodes: $n,
9053
9094
  afterStatusCodes: Ln,
9054
9095
  maxRetryAfter: Number.POSITIVE_INFINITY,
9055
9096
  backoffLimit: Number.POSITIVE_INFINITY,
9056
- delay: (s) => 0.3 * 2 ** (s - 1) * 1e3
9057
- }, zn = (s = {}) => {
9058
- if (typeof s == "number")
9097
+ delay: (i) => 0.3 * 2 ** (i - 1) * 1e3
9098
+ }, zn = (i = {}) => {
9099
+ if (typeof i == "number")
9059
9100
  return {
9060
9101
  ...wa,
9061
- limit: s
9102
+ limit: i
9062
9103
  };
9063
- if (s.methods && !Array.isArray(s.methods))
9104
+ if (i.methods && !Array.isArray(i.methods))
9064
9105
  throw new Error("retry.methods must be an array");
9065
- if (s.statusCodes && !Array.isArray(s.statusCodes))
9106
+ if (i.statusCodes && !Array.isArray(i.statusCodes))
9066
9107
  throw new Error("retry.statusCodes must be an array");
9067
9108
  return {
9068
9109
  ...wa,
9069
- ...s
9110
+ ...i
9070
9111
  };
9071
9112
  };
9072
- async function Pn(s, e, t, a) {
9113
+ async function Pn(i, e, t, a) {
9073
9114
  return new Promise((n, o) => {
9074
9115
  const c = setTimeout(() => {
9075
- t && t.abort(), o(new ja(s));
9116
+ t && t.abort(), o(new ja(i));
9076
9117
  }, a.timeout);
9077
- a.fetch(s, e).then(n).catch(o).then(() => {
9118
+ a.fetch(i, e).then(n).catch(o).then(() => {
9078
9119
  clearTimeout(c);
9079
9120
  });
9080
9121
  });
9081
9122
  }
9082
- async function qn(s, { signal: e }) {
9123
+ async function qn(i, { signal: e }) {
9083
9124
  return new Promise((t, a) => {
9084
9125
  e && (e.throwIfAborted(), e.addEventListener("abort", n, { once: !0 }));
9085
9126
  function n() {
@@ -9087,15 +9128,15 @@ async function qn(s, { signal: e }) {
9087
9128
  }
9088
9129
  const o = setTimeout(() => {
9089
9130
  e?.removeEventListener("abort", n), t();
9090
- }, s);
9131
+ }, i);
9091
9132
  });
9092
9133
  }
9093
- const Bn = (s, e) => {
9134
+ const Bn = (i, e) => {
9094
9135
  const t = {};
9095
9136
  for (const a in e)
9096
- !(a in Sn) && !(a in Cn) && !(a in s) && (t[a] = e[a]);
9137
+ !(a in Sn) && !(a in Cn) && !(a in i) && (t[a] = e[a]);
9097
9138
  return t;
9098
- }, On = (s) => s === void 0 ? !1 : Array.isArray(s) ? s.length > 0 : s instanceof URLSearchParams ? s.size > 0 : typeof s == "object" ? Object.keys(s).length > 0 : typeof s == "string" ? s.trim().length > 0 : !!s;
9139
+ }, On = (i) => i === void 0 ? !1 : Array.isArray(i) ? i.length > 0 : i instanceof URLSearchParams ? i.size > 0 : typeof i == "object" ? Object.keys(i).length > 0 : typeof i == "string" ? i.trim().length > 0 : !!i;
9099
9140
  class Ct {
9100
9141
  static create(e, t) {
9101
9142
  const a = new Ct(e, t), n = async () => {
@@ -9154,7 +9195,7 @@ class Ct {
9154
9195
  beforeError: [],
9155
9196
  afterResponse: []
9156
9197
  }, t.hooks),
9157
- method: $n(t.method ?? this._input.method ?? "GET"),
9198
+ method: En(t.method ?? this._input.method ?? "GET"),
9158
9199
  // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
9159
9200
  prefixUrl: String(t.prefixUrl || ""),
9160
9201
  retry: zn(t.retry),
@@ -9240,11 +9281,11 @@ class Ct {
9240
9281
  }
9241
9282
  }
9242
9283
  /*! MIT License © Sindre Sorhus */
9243
- const Ht = (s) => {
9244
- const e = (t, a) => Ct.create(t, ht(s, a));
9284
+ const Ht = (i) => {
9285
+ const e = (t, a) => Ct.create(t, ht(i, a));
9245
9286
  for (const t of Da)
9246
- e[t] = (a, n) => Ct.create(a, ht(s, n, { method: t }));
9247
- return e.create = (t) => Ht(ht(t)), e.extend = (t) => (typeof t == "function" && (t = t(s ?? {})), Ht(ht(s, t))), e.stop = Va, e;
9287
+ e[t] = (a, n) => Ct.create(a, ht(i, n, { method: t }));
9288
+ return e.create = (t) => Ht(ht(t)), e.extend = (t) => (typeof t == "function" && (t = t(i ?? {})), Ht(ht(i, t))), e.stop = Va, e;
9248
9289
  }, Rn = Ht();
9249
9290
  Rn.extend({
9250
9291
  hooks: {
@@ -9254,12 +9295,12 @@ Rn.extend({
9254
9295
  ]
9255
9296
  }
9256
9297
  });
9257
- async function Fn(s, e) {
9298
+ async function Fn(i, e) {
9258
9299
  const { onmessage: t, onclose: a, ...n } = e, o = async (c, p) => {
9259
9300
  const { value: v, done: y } = await p.read();
9260
9301
  y ? (c.close(), a?.()) : (t?.(v), c.enqueue(v), o(c, p));
9261
9302
  };
9262
- return n.body && typeof n.body == "object" && (n.body = JSON.stringify(n.body)), console.log("Fetching:", n), fetch(s, n).then((c) => {
9303
+ return n.body && typeof n.body == "object" && (n.body = JSON.stringify(n.body)), console.log("Fetching:", n), fetch(i, n).then((c) => {
9263
9304
  const p = c.body.getReader();
9264
9305
  return new ReadableStream({
9265
9306
  start(y) {
@@ -9275,13 +9316,13 @@ async function Fn(s, e) {
9275
9316
  }).text()
9276
9317
  );
9277
9318
  }
9278
- var Hn = Object.defineProperty, jn = Object.getOwnPropertyDescriptor, V = (s, e, t, a) => {
9279
- for (var n = a > 1 ? void 0 : a ? jn(e, t) : e, o = s.length - 1, c; o >= 0; o--)
9280
- (c = s[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
9319
+ var Hn = Object.defineProperty, jn = Object.getOwnPropertyDescriptor, V = (i, e, t, a) => {
9320
+ for (var n = a > 1 ? void 0 : a ? jn(e, t) : e, o = i.length - 1, c; o >= 0; o--)
9321
+ (c = i[o]) && (n = (a ? c(e, t, n) : c(n)) || n);
9281
9322
  return a && n && Hn(e, t, n), n;
9282
9323
  };
9283
- const Ee = Ne.noConflict();
9284
- Ee.setLevel("info");
9324
+ const Te = Ne.noConflict();
9325
+ Te.setLevel("info");
9285
9326
  let H = class extends ae {
9286
9327
  constructor() {
9287
9328
  super(...arguments), this.store = new Ve(this, b), this.displayLicense = !1, this.name = "ChatBot", this.orgId = "", this.botId = "", this.url = "ws://localhost:3070", this.logoUrl = "", this.logoSvg = `<svg width="34" height="34" viewBox="0 0 203 200" fill="none" xmlns="http://www.w3.org/2000/svg">
@@ -9302,47 +9343,47 @@ let H = class extends ae {
9302
9343
  <rect width="400" height="400" fill="white"/>
9303
9344
  </clipPath>
9304
9345
  </defs>
9305
- </svg>`, this.popupLogoSvg = "", this.popupLogoUrl = "", 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.agentIconSvg = '<svg fill="currentColor" width="24" height="24" viewBox="0 0 24 24"> <path d="M18.72,14.76C19.07,13.91 19.26,13 19.26,12C19.26,11.28 19.15,10.59 18.96,9.95C18.31,10.1 17.63,10.18 16.92,10.18C13.86,10.18 11.15,8.67 9.5,6.34C8.61,8.5 6.91,10.26 4.77,11.22C4.73,11.47 4.73,11.74 4.73,12A7.27,7.27 0 0,0 12,19.27C13.05,19.27 14.06,19.04 14.97,18.63C15.54,19.72 15.8,20.26 15.78,20.26C14.14,20.81 12.87,21.08 12,21.08C9.58,21.08 7.27,20.13 5.57,18.42C4.53,17.38 3.76,16.11 3.33,14.73H2V10.18H3.09C3.93,6.04 7.6,2.92 12,2.92C14.4,2.92 16.71,3.87 18.42,5.58C19.69,6.84 20.54,8.45 20.89,10.18H22V14.67H22V14.69L22,14.73H21.94L18.38,18L13.08,17.4V15.73H17.91L18.72,14.76M9.27,11.77C9.57,11.77 9.86,11.89 10.07,12.11C10.28,12.32 10.4,12.61 10.4,12.91C10.4,13.21 10.28,13.5 10.07,13.71C9.86,13.92 9.57,14.04 9.27,14.04C8.64,14.04 8.13,13.54 8.13,12.91C8.13,12.28 8.64,11.77 9.27,11.77M14.72,11.77C15.35,11.77 15.85,12.28 15.85,12.91C15.85,13.54 15.35,14.04 14.72,14.04C14.09,14.04 13.58,13.54 13.58,12.91A1.14,1.14 0 0,1 14.72,11.77Z" /></svg>', this.anchorOpenSvg = '<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 9 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 7M5 8a1 1 0 1 0-2 0a1 1 0 0 0 2 0m4 0a1 1 0 1 0-2 0a1 1 0 0 0 2 0m3 1a1 1 0 1 0 0-2a1 1 0 0 0 0 2"/></svg>', this.anchorCloseSvg = '<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 8z"/></svg>', this.sendIconSvg = "", this.attachIconSvg = "", this.stream = !1, this.customRequest = !1, this.enableFileUpload = !1, this.uploadFileUrl = "", this.open = !1, this.alwaysOpen = !1, this.prefilledFormFields = "{}", this.loading = !1, this.showSetting = !1, this.showAuthAlert = !1, this.handleAddMessage = (s) => {
9306
- this._addMessageHandler(s);
9307
- }, this.handleStateEvent = (s) => {
9308
- this._stateEventHandler(s);
9309
- }, this.handleToggleEvent = (s) => {
9310
- this._chatbotToggleHandler(s);
9311
- }, this.handleFormSubmitEvent = (s) => {
9312
- this._formSubmitHandler(s);
9346
+ </svg>`, this.popupLogoSvg = "", this.popupLogoUrl = "", 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.agentIconSvg = '<svg fill="currentColor" width="24" height="24" viewBox="0 0 24 24"> <path d="M18.72,14.76C19.07,13.91 19.26,13 19.26,12C19.26,11.28 19.15,10.59 18.96,9.95C18.31,10.1 17.63,10.18 16.92,10.18C13.86,10.18 11.15,8.67 9.5,6.34C8.61,8.5 6.91,10.26 4.77,11.22C4.73,11.47 4.73,11.74 4.73,12A7.27,7.27 0 0,0 12,19.27C13.05,19.27 14.06,19.04 14.97,18.63C15.54,19.72 15.8,20.26 15.78,20.26C14.14,20.81 12.87,21.08 12,21.08C9.58,21.08 7.27,20.13 5.57,18.42C4.53,17.38 3.76,16.11 3.33,14.73H2V10.18H3.09C3.93,6.04 7.6,2.92 12,2.92C14.4,2.92 16.71,3.87 18.42,5.58C19.69,6.84 20.54,8.45 20.89,10.18H22V14.67H22V14.69L22,14.73H21.94L18.38,18L13.08,17.4V15.73H17.91L18.72,14.76M9.27,11.77C9.57,11.77 9.86,11.89 10.07,12.11C10.28,12.32 10.4,12.61 10.4,12.91C10.4,13.21 10.28,13.5 10.07,13.71C9.86,13.92 9.57,14.04 9.27,14.04C8.64,14.04 8.13,13.54 8.13,12.91C8.13,12.28 8.64,11.77 9.27,11.77M14.72,11.77C15.35,11.77 15.85,12.28 15.85,12.91C15.85,13.54 15.35,14.04 14.72,14.04C14.09,14.04 13.58,13.54 13.58,12.91A1.14,1.14 0 0,1 14.72,11.77Z" /></svg>', this.anchorOpenSvg = '<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 9 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 7M5 8a1 1 0 1 0-2 0a1 1 0 0 0 2 0m4 0a1 1 0 1 0-2 0a1 1 0 0 0 2 0m3 1a1 1 0 1 0 0-2a1 1 0 0 0 0 2"/></svg>', this.anchorCloseSvg = '<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 8z"/></svg>', this.sendIconSvg = "", this.attachIconSvg = "", this.stream = !1, this.customRequest = !1, this.enableFileUpload = !1, this.uploadFileUrl = "", this.open = !1, this.alwaysOpen = !1, this.prefilledFormFields = "{}", this.loading = !1, this.showSetting = !1, this.showAuthAlert = !1, this.handleAddMessage = (i) => {
9347
+ this._addMessageHandler(i);
9348
+ }, this.handleStateEvent = (i) => {
9349
+ this._stateEventHandler(i);
9350
+ }, this.handleToggleEvent = (i) => {
9351
+ this._chatbotToggleHandler(i);
9352
+ }, this.handleFormSubmitEvent = (i) => {
9353
+ this._formSubmitHandler(i);
9313
9354
  }, this.fetchStream = Fn;
9314
9355
  }
9315
9356
  /**
9316
9357
  * decodeStreamData
9317
9358
  */
9318
- decodeStreamData(s) {
9319
- return new TextDecoder().decode(s);
9359
+ decodeStreamData(i) {
9360
+ return new TextDecoder().decode(i);
9320
9361
  }
9321
9362
  addMessage() {
9322
- const s = {
9363
+ const i = {
9323
9364
  author: "assistant",
9324
9365
  type: "text",
9325
9366
  isThinking: !0,
9326
9367
  data: {}
9327
9368
  };
9328
- return b.addMessage(s), s;
9369
+ return b.addMessage(i), i;
9329
9370
  }
9330
- addTestMessage(s = "") {
9371
+ addTestMessage(i = "") {
9331
9372
  const t = {
9332
9373
  author: "assistant",
9333
9374
  type: "text",
9334
9375
  isThinking: !1,
9335
9376
  data: {
9336
- text: s !== "" ? s : "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."
9377
+ text: i !== "" ? i : "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."
9337
9378
  }
9338
9379
  };
9339
9380
  return b.addMessage(t), t;
9340
9381
  }
9341
- addActions(s = []) {
9342
- b.addActions(s);
9382
+ addActions(i = []) {
9383
+ b.addActions(i);
9343
9384
  }
9344
9385
  render() {
9345
- return b.disabled && !this.alwaysOpen ? (Ee.info("Bot is disabled until settings are loaded"), null) : u`
9386
+ return b.disabled && !this.alwaysOpen ? (Te.info("Bot is disabled until settings are loaded"), null) : u`
9346
9387
  <div class="cb-wrapper${b.open ? " cb-open" : ""}" part="wrapper${b.open ? " open" : ""}" exportparts="wrapper${b.open ? " open" : ""}">
9347
9388
  <cb-header title="${this.name}" exportparts="header, header-logo, header-title, header-close"></cb-header>
9348
9389
  <cb-message-list
@@ -9383,16 +9424,16 @@ let H = class extends ae {
9383
9424
  ></cb-user-input>`;
9384
9425
  }
9385
9426
  connectedCallback() {
9386
- super.connectedCallback(), Ee.info("connectedCallback"), this.initCssVariables(), addEventListener("c7o:bot:stateEvent", this.handleStateEvent), addEventListener("message:send", this.handleAddMessage), addEventListener("chatbot:toggle", this.handleToggleEvent), addEventListener("form:submit", this.handleFormSubmitEvent), addEventListener("message:send:file", this._uploadFileHandler), addEventListener("audio:toggle", this._audioToggleHandler);
9427
+ super.connectedCallback(), Te.info("connectedCallback"), this.initCssVariables(), addEventListener("c7o:bot:stateEvent", this.handleStateEvent), addEventListener("message:send", this.handleAddMessage), addEventListener("chatbot:toggle", this.handleToggleEvent), addEventListener("form:submit", this.handleFormSubmitEvent), addEventListener("message:send:file", this._uploadFileHandler), addEventListener("audio:toggle", this._audioToggleHandler);
9387
9428
  }
9388
- extractCssVariable(s, e, t) {
9389
- let a = s.getPropertyValue(e).trim();
9429
+ extractCssVariable(i, e, t) {
9430
+ let a = i.getPropertyValue(e).trim();
9390
9431
  return a && a != "" ? a : t;
9391
9432
  }
9392
9433
  // Extract css variables that control the appearance of the chatbot
9393
9434
  initCssVariables() {
9394
- let s = getComputedStyle(this);
9395
- b.appearanceAnchorPopupPosition = this.extractCssVariable(s, "--enegelai-bot-anchor-popup-position", "top-end"), b.appearanceAnchorBadgeVariant = this.extractCssVariable(s, "--enegelai-bot-anchor-badge-variant", b.appearanceAnchorBadgeVariant), b.appearanceUserMessageAvatarPosition = this.extractCssVariable(s, "--enegelai-bot-user-message-avatar-position", "left");
9435
+ let i = getComputedStyle(this);
9436
+ b.appearanceAnchorPopupPosition = this.extractCssVariable(i, "--enegelai-bot-anchor-popup-position", "top-end"), b.appearanceAnchorBadgeVariant = this.extractCssVariable(i, "--enegelai-bot-anchor-badge-variant", b.appearanceAnchorBadgeVariant), b.appearanceUserMessageAvatarPosition = this.extractCssVariable(i, "--enegelai-bot-user-message-avatar-position", "left");
9396
9437
  }
9397
9438
  /*
9398
9439
  private getPopupPlacement() {
@@ -9412,40 +9453,40 @@ let H = class extends ae {
9412
9453
 
9413
9454
  */
9414
9455
  disconnectedCallback() {
9415
- Ee.info("disconnectedCallback"), super.disconnectedCallback(), window.removeEventListener("c7o:bot:stateEvent", this.handleStateEvent), window.removeEventListener("message:send", this.handleAddMessage), window.removeEventListener("chatbot:toggle", this.handleToggleEvent), window.removeEventListener("form:submit", this.handleFormSubmitEvent), window.removeEventListener("message:send:file", this._uploadFileHandler), window.removeEventListener("audio:toggle", this._audioToggleHandler);
9456
+ Te.info("disconnectedCallback"), super.disconnectedCallback(), window.removeEventListener("c7o:bot:stateEvent", this.handleStateEvent), window.removeEventListener("message:send", this.handleAddMessage), window.removeEventListener("chatbot:toggle", this.handleToggleEvent), window.removeEventListener("form:submit", this.handleFormSubmitEvent), window.removeEventListener("message:send:file", this._uploadFileHandler), window.removeEventListener("audio:toggle", this._audioToggleHandler);
9416
9457
  }
9417
9458
  // This is called when component is loaded, with all the settings (props) values
9418
9459
  // Use to initialize
9419
9460
  // This is also called when state changes - ??? - i.e. when message added to the array
9420
- updated(s) {
9421
- super.updated(s), s.size > 0 && (Ee.info("updated,_changedProperties:", s), this._initSetting()), setTimeout(() => {
9422
- this._scrollToBottom();
9423
- }, 0);
9461
+ updated(i) {
9462
+ super.updated(i), i.size > 0 && (Te.info("updated,_changedProperties:", i), this._initSetting()), !this._scrollToBottomTimeout && (this._scrollToBottomTimeout = setTimeout(() => {
9463
+ this._scrollToBottom(), this._scrollToBottomTimeout = void 0;
9464
+ }, 200));
9424
9465
  }
9425
9466
  // initialize setting
9426
9467
  _initSetting() {
9427
- Ee.info("_initSetting");
9428
- const s = b.setting;
9429
- s.orgId = this.orgId, s.botId = this.botId, s.url = this.url, s.logoUrl = this.logoUrl, s.logoSvg = this.logoSvg, s.closeSvg = this.closeSvg, s.popupLogoSvg = this.popupLogoSvg, s.popupLogoUrl = this.popupLogoUrl, s.botIconSvg = this.botIconSvg, s.userIconSvg = this.userIconSvg, s.systemIconSvg = this.systemIconSvg, s.agentIconSvg = this.agentIconSvg, s.anchorOpenSvg = this.anchorOpenSvg, s.anchorCloseSvg = this.anchorCloseSvg, s.sendIconSvg = this.sendIconSvg, s.attachIconSvg = this.attachIconSvg, b.setSetting(s);
9468
+ Te.info("_initSetting");
9469
+ const i = b.setting;
9470
+ i.orgId = this.orgId, i.botId = this.botId, i.url = this.url, i.logoUrl = this.logoUrl, i.logoSvg = this.logoSvg, i.closeSvg = this.closeSvg, i.popupLogoSvg = this.popupLogoSvg, i.popupLogoUrl = this.popupLogoUrl, i.botIconSvg = this.botIconSvg, i.userIconSvg = this.userIconSvg, i.systemIconSvg = this.systemIconSvg, i.agentIconSvg = this.agentIconSvg, i.anchorOpenSvg = this.anchorOpenSvg, i.anchorCloseSvg = this.anchorCloseSvg, i.sendIconSvg = this.sendIconSvg, i.attachIconSvg = this.attachIconSvg, b.setSetting(i);
9430
9471
  let e = {};
9431
9472
  try {
9432
9473
  e = JSON.parse(this.prefilledFormFields);
9433
9474
  } catch (t) {
9434
- Ee.error(`Failed to parse prefilled-form-fields attribute value, error: ${t?.message || ""}`), e = {};
9475
+ Te.error(`Failed to parse prefilled-form-fields attribute value, error: ${t?.message || ""}`), e = {};
9435
9476
  }
9436
9477
  b.setPrefilledFormFields(e), this.open && (b.open = !0), this.alwaysOpen && (b.open = !0, b.alwaysOpen = !0);
9437
9478
  }
9438
- setLoading(s) {
9439
- this.loading = s;
9479
+ setLoading(i) {
9480
+ this.loading = i;
9440
9481
  }
9441
9482
  clearConversation() {
9442
9483
  b.clearConversation();
9443
9484
  }
9444
- setPrefilledFormFields(s) {
9445
- b.setPrefilledFormFields(s);
9485
+ setPrefilledFormFields(i) {
9486
+ b.setPrefilledFormFields(i);
9446
9487
  }
9447
- setOpen(s = !1) {
9448
- b.open = s;
9488
+ setOpen(i = !1) {
9489
+ b.open = i;
9449
9490
  }
9450
9491
  getOpen() {
9451
9492
  return b.open;
@@ -9453,19 +9494,19 @@ let H = class extends ae {
9453
9494
  toggleOpen() {
9454
9495
  b.open = !b.open;
9455
9496
  }
9456
- setInputValue(s = "") {
9457
- this.emit("c7o:bot:input:setvalue", {
9497
+ setInputValue(i = "") {
9498
+ this.emitExt("c7o:bot:input:setvalue", {
9458
9499
  detail: {
9459
- inputValue: s
9500
+ inputValue: i
9460
9501
  }
9461
9502
  });
9462
9503
  }
9463
9504
  // Set conversation context.
9464
9505
  // It can be any data related with current user / current conversation,
9465
9506
  // for example, user profile, current product user is viewing on the web page, etc.
9466
- setContext(s = {}) {
9467
- b.setContext(s).catch((e) => {
9468
- Ee.error(`Failed to set context, error: ${e?.message || ""}`);
9507
+ setContext(i = {}) {
9508
+ b.setContext(i).catch((e) => {
9509
+ Te.error(`Failed to set context, error: ${e?.message || ""}`);
9469
9510
  });
9470
9511
  }
9471
9512
  getContext() {
@@ -9477,12 +9518,12 @@ let H = class extends ae {
9477
9518
  // check auth
9478
9519
  _checkAuth() {
9479
9520
  }
9480
- _stateEventHandler(s) {
9481
- const e = s.detail, t = e?.type || null;
9521
+ _stateEventHandler(i) {
9522
+ const e = i.detail, t = e?.type || null;
9482
9523
  if (t)
9483
9524
  switch (t) {
9484
9525
  case "botInitialized": {
9485
- this.emit("c7o:bot:botInitialized", {
9526
+ this.emitExt("c7o:bot:botInitialized", {
9486
9527
  detail: {
9487
9528
  botSettings: e.botSettings
9488
9529
  }
@@ -9490,11 +9531,11 @@ let H = class extends ae {
9490
9531
  break;
9491
9532
  }
9492
9533
  case "botConnected": {
9493
- this.emit("c7o:bot:botConnected");
9534
+ this.emitExt("c7o:bot:botConnected");
9494
9535
  break;
9495
9536
  }
9496
9537
  case "actionPresented": {
9497
- this.emit("c7o:bot:actionPresented", {
9538
+ this.emitExt("c7o:bot:actionPresented", {
9498
9539
  detail: {
9499
9540
  action: e.action
9500
9541
  }
@@ -9502,7 +9543,7 @@ let H = class extends ae {
9502
9543
  break;
9503
9544
  }
9504
9545
  case "actionCompleted": {
9505
- this.emit("c7o:bot:actionCompleted", {
9546
+ this.emitExt("c7o:bot:actionCompleted", {
9506
9547
  detail: {
9507
9548
  action: e.action,
9508
9549
  data: e.data
@@ -9512,48 +9553,72 @@ let H = class extends ae {
9512
9553
  }
9513
9554
  }
9514
9555
  }
9515
- sanitizeInputText(s) {
9516
- return !s || typeof s != "string" ? "" : s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
9556
+ sanitizeInputText(i) {
9557
+ return !i || typeof i != "string" ? "" : i.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
9558
+ }
9559
+ sendMessage(i) {
9560
+ if (!i || typeof i != "string" || i.trim() === "") {
9561
+ console.log("sendMessage: input text is empty or not string, ignored", i);
9562
+ return;
9563
+ }
9564
+ const e = {
9565
+ timestamp: Date.now(),
9566
+ author: "user",
9567
+ type: "text",
9568
+ data: {
9569
+ text: i
9570
+ }
9571
+ };
9572
+ return this._processSendMessage(e);
9573
+ }
9574
+ _processSendMessage(i) {
9575
+ if (!i.data.text || typeof i.data.text != "string" || i.data.text.trim() === "") {
9576
+ console.log("_processSendMessage: input text is empty, ignored", i);
9577
+ return;
9578
+ }
9579
+ i.data.text = this.sanitizeInputText(i.data.text.trim()), b.isConversationStart() && (console.log("Start of conversation detected, emitting c7o:bot:conversationStart", i), i.conversationId = b.conversationId, this.emitExt("c7o:bot:conversationStart", {
9580
+ detail: i
9581
+ })), b.sendMessage(i), setTimeout(() => {
9582
+ this._scrollToBottom();
9583
+ }, 50);
9517
9584
  }
9518
- _addMessageHandler(s) {
9519
- console.log("_addMessageHandler called", s);
9520
- const e = s.detail, t = e?.data?.text || null;
9585
+ _addMessageHandler(i) {
9586
+ console.log("_addMessageHandler called", i);
9587
+ const e = i.detail, t = e?.data?.text || null;
9521
9588
  if (!t || typeof t != "string" || t.trim() === "") {
9522
- console.log("_addMessageHandler: input text is empty, ignored", s);
9589
+ console.log("_addMessageHandler: input text is empty, ignored", i);
9523
9590
  return;
9524
9591
  }
9525
- e.data.text = this.sanitizeInputText(t.trim()), b.isConversationStart() && (console.log("Start of conversation detected, emitting c7o:bot:conversationStart", e), e.conversationId = b.conversationId, this.emit("c7o:bot:conversationStart", {
9526
- detail: e
9527
- })), b.sendMessage(e);
9592
+ this._processSendMessage(e);
9528
9593
  }
9529
- _chatbotToggleHandler(s) {
9530
- const e = s.detail;
9531
- b.open = e.open, this.emit(e.open ? "c7o:bot:open" : "c7o:bot:close"), b.unreadMessages = 0, b.suppressEngagePopup();
9594
+ _chatbotToggleHandler(i) {
9595
+ const e = i.detail;
9596
+ b.open = e.open, b.notifyWidgetOpenState(), this.emitExt(e.open ? "c7o:bot:open" : "c7o:bot:close"), b.unreadMessages = 0, b.suppressEngagePopup();
9532
9597
  }
9533
- _deleteMessageHandler(s) {
9534
- const e = s.detail;
9598
+ _deleteMessageHandler(i) {
9599
+ const e = i.detail;
9535
9600
  b.removeMessage(e.id);
9536
9601
  }
9537
- async _uploadFileHandler(s) {
9538
- const e = s.detail;
9602
+ async _uploadFileHandler(i) {
9603
+ const e = i.detail;
9539
9604
  await b.uploadFiles(e.files);
9540
9605
  }
9541
- async _audioToggleHandler(s) {
9542
- Ee.info("_audioToggleHandler called"), await b.toggleAudio();
9606
+ async _audioToggleHandler(i) {
9607
+ Te.info("_audioToggleHandler called"), await b.toggleAudio();
9543
9608
  }
9544
9609
  // setting confirm handler
9545
- _settingConfirmHandler(s) {
9546
- const e = s.detail;
9610
+ _settingConfirmHandler(i) {
9611
+ const e = i.detail;
9547
9612
  b.setSetting(e.setting), this.showSetting = !1, this._checkAuth();
9548
9613
  }
9549
- _formSubmitHandler(s) {
9550
- const e = s.detail;
9551
- e.conversationId = b.conversationId, this.emit("c7o:bot:formSubmit", {
9614
+ _formSubmitHandler(i) {
9615
+ const e = i.detail;
9616
+ e.conversationId = b.conversationId, this.emitExt("c7o:bot:formSubmit", {
9552
9617
  detail: e
9553
9618
  });
9554
9619
  }
9555
9620
  // scroll to bottom
9556
- _scrollToBottom(s = !1) {
9621
+ _scrollToBottom(i = !1) {
9557
9622
  this._messageList?.scrollToBottom();
9558
9623
  }
9559
9624
  };