@enegelai/bot-widget 1.14.2 → 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/enegelaibot.umd.js +31 -31
- package/dist/index.es.js +977 -913
- package/package.json +1 -1
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
|
|
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(
|
|
33
|
-
return typeof
|
|
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 = (
|
|
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(
|
|
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
|
-
...
|
|
144
|
-
initialValue:
|
|
145
|
-
resetValue:
|
|
146
|
-
}), a.createProperty(t,
|
|
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(
|
|
150
|
-
if (
|
|
149
|
+
function pi(i, e) {
|
|
150
|
+
if (i !== null && (e === Boolean || e === Number || e === Array || e === Object))
|
|
151
151
|
try {
|
|
152
|
-
|
|
152
|
+
i = JSON.parse(i);
|
|
153
153
|
} catch {
|
|
154
|
-
console.warn("cannot parse value",
|
|
154
|
+
console.warn("cannot parse value", i);
|
|
155
155
|
}
|
|
156
|
-
return
|
|
156
|
+
return i;
|
|
157
157
|
}
|
|
158
158
|
new URL(location.href);
|
|
159
159
|
const gi = {
|
|
160
160
|
prefix: "_ls"
|
|
161
161
|
};
|
|
162
|
-
function le(
|
|
163
|
-
return
|
|
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 = `${
|
|
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, ...
|
|
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(
|
|
182
|
-
return
|
|
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(
|
|
186
|
+
return na || (na = 1, function(i) {
|
|
187
187
|
(function(e, t) {
|
|
188
|
-
|
|
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
|
|
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 =
|
|
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 = (
|
|
657
|
-
for (var n = a > 1 ? void 0 : a ? ki(e, t) : e, o =
|
|
658
|
-
(c =
|
|
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 = (
|
|
680
|
-
let a = (2 << Math.log2(
|
|
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 +=
|
|
686
|
+
if (c += i[p[v] & a] || "", c.length >= o) return c;
|
|
687
687
|
}
|
|
688
688
|
};
|
|
689
|
-
}, Si = (
|
|
689
|
+
}, Si = (i, e = 21) => Ci(i, e | 0, _i);
|
|
690
690
|
const Ai = Si("1234567890abcdefghijklmnopqrstuvwxyz", 10);
|
|
691
|
-
function ce(
|
|
692
|
-
return Ai(
|
|
691
|
+
function ce(i = 10) {
|
|
692
|
+
return Ai(i);
|
|
693
693
|
}
|
|
694
|
-
function Mi(
|
|
694
|
+
function Mi(i) {
|
|
695
695
|
return new Promise((e, t) => {
|
|
696
696
|
try {
|
|
697
|
-
navigator.clipboard.writeText(
|
|
698
|
-
e(
|
|
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(
|
|
705
|
+
function Sa(i = !0) {
|
|
706
706
|
return new Promise((e) => {
|
|
707
707
|
const t = document.createElement("input");
|
|
708
|
-
t.type = "file",
|
|
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
|
|
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
|
-
],
|
|
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
|
|
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 -
|
|
1015
|
+
Pe.push(t / Math.pow(2, 8 - i)), Vt.push(Ti[e] + i);
|
|
1016
1016
|
}
|
|
1017
|
-
const mt = [32, 2e3], ca = Pe.filter((
|
|
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
|
|
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 =
|
|
1039
|
-
if (I >
|
|
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" ?
|
|
1044
|
+
y = A, S = n === "voice" ? ca : Pe, w = n === "voice" ? $i : Vt;
|
|
1045
1045
|
} else
|
|
1046
|
-
y = Array.from(a), S = y.map((
|
|
1047
|
-
const _ = y.map((
|
|
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((
|
|
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
|
|
1921
|
-
const A = o[
|
|
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
|
|
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 = _[
|
|
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
|
|
1941
|
-
for (let A = 0; A < a; A++) t[A] *=
|
|
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
|
|
2084
|
-
const A = t[
|
|
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
|
|
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(
|
|
2265
|
-
return
|
|
2264
|
+
function X(i) {
|
|
2265
|
+
return i != null && typeof i == "object" && i["@@functional/placeholder"] === !0;
|
|
2266
2266
|
}
|
|
2267
|
-
function je(
|
|
2267
|
+
function je(i) {
|
|
2268
2268
|
return function e(t) {
|
|
2269
|
-
return arguments.length === 0 || X(t) ? e :
|
|
2269
|
+
return arguments.length === 0 || X(t) ? e : i.apply(this, arguments);
|
|
2270
2270
|
};
|
|
2271
2271
|
}
|
|
2272
|
-
function Fe(
|
|
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
|
|
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
|
|
2283
|
+
return i(n, a);
|
|
2284
2284
|
}) : X(a) ? je(function(n) {
|
|
2285
|
-
return
|
|
2286
|
-
}) :
|
|
2285
|
+
return i(t, n);
|
|
2286
|
+
}) : i(t, a);
|
|
2287
2287
|
}
|
|
2288
2288
|
};
|
|
2289
2289
|
}
|
|
2290
|
-
function Di(
|
|
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
|
|
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
|
|
2301
|
+
return i(o, a, c);
|
|
2302
2302
|
}) : X(a) ? Fe(function(o, c) {
|
|
2303
|
-
return
|
|
2303
|
+
return i(t, o, c);
|
|
2304
2304
|
}) : je(function(o) {
|
|
2305
|
-
return
|
|
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
|
|
2309
|
+
return i(o, c, n);
|
|
2310
2310
|
}) : X(t) && X(n) ? Fe(function(o, c) {
|
|
2311
|
-
return
|
|
2311
|
+
return i(o, a, c);
|
|
2312
2312
|
}) : X(a) && X(n) ? Fe(function(o, c) {
|
|
2313
|
-
return
|
|
2313
|
+
return i(t, o, c);
|
|
2314
2314
|
}) : X(t) ? je(function(o) {
|
|
2315
|
-
return
|
|
2315
|
+
return i(o, a, n);
|
|
2316
2316
|
}) : X(a) ? je(function(o) {
|
|
2317
|
-
return
|
|
2317
|
+
return i(t, o, n);
|
|
2318
2318
|
}) : X(n) ? je(function(o) {
|
|
2319
|
-
return
|
|
2320
|
-
}) :
|
|
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(
|
|
2328
|
-
var t =
|
|
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(
|
|
2335
|
-
for (var t = e, a = 0; a <
|
|
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 =
|
|
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
|
|
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 = (
|
|
2348
|
-
for (var n = void 0, o =
|
|
2349
|
-
(c =
|
|
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
|
|
2353
|
-
|
|
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
|
-
|
|
2362
|
-
|
|
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
|
-
|
|
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 ?
|
|
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
|
-
|
|
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 (
|
|
2393
|
-
|
|
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
|
-
|
|
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",
|
|
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" && (
|
|
2411
|
-
|
|
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 && (
|
|
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()),
|
|
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,
|
|
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
|
-
|
|
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
|
-
|
|
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),
|
|
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 =
|
|
2556
|
+
const e = $t(null, ["startupForm"], this.botSettings);
|
|
2557
2557
|
if (!e || !e?.name) {
|
|
2558
|
-
|
|
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 =
|
|
2564
|
+
const t = e, a = $t(null, ["name"], e);
|
|
2565
2565
|
if (!t || !a)
|
|
2566
2566
|
return;
|
|
2567
|
-
const n =
|
|
2567
|
+
const n = $t(null, ["fields"], e);
|
|
2568
2568
|
if (!Array.isArray(n) || n.length <= 0) {
|
|
2569
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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 || (
|
|
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",
|
|
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
|
-
|
|
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,
|
|
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 (
|
|
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 !== "") && (
|
|
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
|
-
|
|
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 || (
|
|
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",
|
|
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
|
-
|
|
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),
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
2973
|
+
$.info(`submitFeedback: ${this.feedbackScore}`), this.feedbackName = e, this.feedbackEmail = t;
|
|
2974
2974
|
const n = await this.getWsClient();
|
|
2975
2975
|
if (!n) {
|
|
2976
|
-
|
|
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
|
-
|
|
3018
|
+
$.info("Uploading files:", t);
|
|
3019
3019
|
const a = await this.getWsClient();
|
|
3020
3020
|
if (!a) {
|
|
3021
|
-
|
|
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 = (
|
|
3298
|
-
for (var n = void 0, o =
|
|
3299
|
-
(c =
|
|
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: (
|
|
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,
|
|
3331
|
-
for (var n = a > 1 ? void 0 : a ? Qi(e, t) : e, o =
|
|
3332
|
-
(c =
|
|
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
|
-
|
|
3418
|
+
Ea([
|
|
3400
3419
|
x({ type: String, attribute: "title" })
|
|
3401
3420
|
], vt.prototype, "title", 2);
|
|
3402
|
-
vt =
|
|
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 = (
|
|
3421
|
-
for (var n = a > 1 ? void 0 : a ? as(e, t) : e, o =
|
|
3422
|
-
(c =
|
|
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(
|
|
3687
|
+
return la || (la = 1, function(i, e) {
|
|
3669
3688
|
(function(t, a) {
|
|
3670
|
-
|
|
3689
|
+
i.exports = a();
|
|
3671
3690
|
})(ns, function() {
|
|
3672
|
-
function t(
|
|
3673
|
-
if (!(
|
|
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(
|
|
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(
|
|
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(
|
|
3682
|
-
return r && a(
|
|
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(
|
|
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
|
-
}(
|
|
3713
|
+
}(s, "string");
|
|
3695
3714
|
return typeof r == "symbol" ? r : r + "";
|
|
3696
3715
|
}
|
|
3697
|
-
function c(
|
|
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
|
-
})(
|
|
3721
|
+
})(s);
|
|
3703
3722
|
}
|
|
3704
3723
|
var p = Date.now();
|
|
3705
3724
|
function v() {
|
|
3706
|
-
var
|
|
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]" ?
|
|
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
|
|
3733
|
+
return s;
|
|
3715
3734
|
}
|
|
3716
|
-
function y(
|
|
3717
|
-
if ((W(
|
|
3718
|
-
if (Je(
|
|
3719
|
-
else if (Le(
|
|
3720
|
-
for (var f in
|
|
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(
|
|
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 =
|
|
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(
|
|
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,
|
|
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(
|
|
3736
|
-
y(
|
|
3737
|
-
var F = S(B,
|
|
3738
|
-
F.found && F.all.splice(F.evt, 1), B.removeEventListener && B.removeEventListener(
|
|
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(
|
|
3741
|
-
var F = S(B,
|
|
3742
|
-
(B.addEventListener && g && !F.found || !g) && (B.addEventListener(
|
|
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 _(
|
|
3764
|
+
function _(s, r) {
|
|
3746
3765
|
y(r.split(" "), function(l) {
|
|
3747
|
-
return
|
|
3766
|
+
return s.classList.add(l);
|
|
3748
3767
|
});
|
|
3749
3768
|
}
|
|
3750
|
-
function L(
|
|
3769
|
+
function L(s, r) {
|
|
3751
3770
|
y(r.split(" "), function(l) {
|
|
3752
|
-
return
|
|
3771
|
+
return s.classList.remove(l);
|
|
3753
3772
|
});
|
|
3754
3773
|
}
|
|
3755
|
-
function
|
|
3756
|
-
return
|
|
3774
|
+
function T(s, r) {
|
|
3775
|
+
return s.classList.contains(r);
|
|
3757
3776
|
}
|
|
3758
|
-
function A(
|
|
3759
|
-
for (;
|
|
3760
|
-
if (!(
|
|
3761
|
-
if (typeof
|
|
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(
|
|
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 (!
|
|
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
|
-
_(
|
|
3771
|
-
}), w(d, { onElement:
|
|
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(
|
|
3796
|
+
function I(s) {
|
|
3778
3797
|
var r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
|
|
3779
|
-
if (r === "") return
|
|
3780
|
-
|
|
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(
|
|
3783
|
-
|
|
3801
|
+
function be(s) {
|
|
3802
|
+
s.style.display = "block";
|
|
3784
3803
|
}
|
|
3785
|
-
function Q(
|
|
3786
|
-
|
|
3804
|
+
function Q(s) {
|
|
3805
|
+
s.style.display = "none";
|
|
3787
3806
|
}
|
|
3788
|
-
function ie(
|
|
3807
|
+
function ie(s) {
|
|
3789
3808
|
var r = document.createDocumentFragment(), l = document.createElement("div");
|
|
3790
|
-
for (l.innerHTML =
|
|
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
|
|
3798
|
-
for (
|
|
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(
|
|
3801
|
-
if (
|
|
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
|
-
|
|
3825
|
+
s() && (clearInterval(g), f && clearTimeout(f), r());
|
|
3807
3826
|
}, l);
|
|
3808
3827
|
}
|
|
3809
3828
|
}
|
|
3810
|
-
function nt(
|
|
3811
|
-
if (de(
|
|
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 (
|
|
3816
|
-
if ((d = document.querySelectorAll('link[href="' +
|
|
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 =
|
|
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="' +
|
|
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 =
|
|
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(
|
|
3848
|
-
return typeof
|
|
3866
|
+
function j(s) {
|
|
3867
|
+
return typeof s == "function";
|
|
3849
3868
|
}
|
|
3850
|
-
function D(
|
|
3851
|
-
return typeof
|
|
3869
|
+
function D(s) {
|
|
3870
|
+
return typeof s == "string";
|
|
3852
3871
|
}
|
|
3853
|
-
function W(
|
|
3854
|
-
return !(!
|
|
3872
|
+
function W(s) {
|
|
3873
|
+
return !(!s || !s.nodeType || s.nodeType != 1);
|
|
3855
3874
|
}
|
|
3856
|
-
function Oe(
|
|
3857
|
-
return Array.isArray(
|
|
3875
|
+
function Oe(s) {
|
|
3876
|
+
return Array.isArray(s);
|
|
3858
3877
|
}
|
|
3859
|
-
function Je(
|
|
3860
|
-
return
|
|
3878
|
+
function Je(s) {
|
|
3879
|
+
return s && s.length && isFinite(s.length);
|
|
3861
3880
|
}
|
|
3862
|
-
function Le(
|
|
3863
|
-
return c(
|
|
3881
|
+
function Le(s) {
|
|
3882
|
+
return c(s) === "object" && s != null && !j(s) && !Oe(s);
|
|
3864
3883
|
}
|
|
3865
|
-
function de(
|
|
3866
|
-
return
|
|
3884
|
+
function de(s) {
|
|
3885
|
+
return s == null;
|
|
3867
3886
|
}
|
|
3868
|
-
function K(
|
|
3869
|
-
return
|
|
3887
|
+
function K(s, r) {
|
|
3888
|
+
return s !== null && hasOwnProperty.call(s, r);
|
|
3870
3889
|
}
|
|
3871
|
-
function Zt(
|
|
3872
|
-
if (Le(
|
|
3873
|
-
if (
|
|
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
|
|
3894
|
+
for (var l in s) K(s, l) && r++;
|
|
3876
3895
|
return r;
|
|
3877
3896
|
}
|
|
3878
|
-
return
|
|
3897
|
+
return s.length;
|
|
3879
3898
|
}
|
|
3880
|
-
function rt(
|
|
3881
|
-
return !isNaN(parseFloat(
|
|
3899
|
+
function rt(s) {
|
|
3900
|
+
return !isNaN(parseFloat(s)) && isFinite(s);
|
|
3882
3901
|
}
|
|
3883
3902
|
function Jt() {
|
|
3884
|
-
var
|
|
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
|
|
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 =
|
|
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(
|
|
3902
|
-
if (
|
|
3903
|
-
|
|
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 &&
|
|
3940
|
+
d == 39 && s.nextSlide(), d == 37 && s.prevSlide(), d == 27 && s.close();
|
|
3922
3941
|
} });
|
|
3923
3942
|
}
|
|
3924
|
-
var Ya = n(function
|
|
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,
|
|
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
|
|
3938
|
-
if (!(this.zoomedIn ||
|
|
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 >
|
|
3941
|
-
var l =
|
|
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(
|
|
3949
|
-
|
|
3950
|
-
} }, { key: "dragEnd", value: function(
|
|
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
|
-
|
|
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(
|
|
3956
|
-
this.active && (
|
|
3957
|
-
} }, { key: "onMove", value: function(
|
|
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 =
|
|
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(
|
|
3963
|
-
|
|
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
|
|
3985
|
+
} }]), Kt = n(function s() {
|
|
3967
3986
|
var r = this, l = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
3968
|
-
t(this,
|
|
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,
|
|
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 =
|
|
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(
|
|
3996
|
+
}, [{ key: "dragStart", value: function(s) {
|
|
3978
3997
|
if (this.slide.classList.contains("zoomed")) this.active = !1;
|
|
3979
3998
|
else {
|
|
3980
|
-
|
|
3981
|
-
var r =
|
|
3982
|
-
|
|
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(
|
|
4003
|
+
} }, { key: "dragEnd", value: function(s) {
|
|
3985
4004
|
var r = this;
|
|
3986
|
-
|
|
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(
|
|
4008
|
+
} }, { key: "drag", value: function(s) {
|
|
3990
4009
|
if (this.active) {
|
|
3991
|
-
|
|
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
|
|
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) && (
|
|
4027
|
+
(r == "left" && this.slide !== this.slide.parentNode.lastChild || r == "right" && this.slide !== this.slide.parentNode.firstChild) && (s = r);
|
|
4009
4028
|
}
|
|
4010
|
-
return
|
|
4029
|
+
return s;
|
|
4011
4030
|
} }, { key: "shouldClose", value: function() {
|
|
4012
|
-
var
|
|
4013
|
-
return Math.abs(this.currentY) >= this.toleranceY && (
|
|
4014
|
-
} }, { key: "setTranslate", value: function(
|
|
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
|
-
|
|
4035
|
+
s.style.transition = d ? "all .2s ease" : "", s.style.transform = "translate3d(".concat(r, "px, ").concat(l, "px, 0)");
|
|
4017
4036
|
} }]);
|
|
4018
|
-
function Xa(
|
|
4019
|
-
var f =
|
|
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(
|
|
4025
|
-
var f = this, g =
|
|
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 =
|
|
4046
|
+
var k = s.querySelector(".gvideo-wrapper");
|
|
4028
4047
|
nt(this.settings.plyr.css, "Plyr");
|
|
4029
|
-
var M = r.href,
|
|
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 (
|
|
4032
|
-
|
|
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(
|
|
4037
|
-
_(k, "".concat(
|
|
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
|
|
4061
|
+
return s.querySelector("iframe") && s.querySelector("iframe").dataset.ready == "true";
|
|
4043
4062
|
}, function() {
|
|
4044
|
-
f.resize(
|
|
4063
|
+
f.resize(s);
|
|
4045
4064
|
}), he.on("enterfullscreen", Qt), he.on("exitfullscreen", Qt);
|
|
4046
4065
|
});
|
|
4047
4066
|
}
|
|
4048
|
-
function Qt(
|
|
4049
|
-
var r = A(
|
|
4050
|
-
|
|
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(
|
|
4053
|
-
var f, g = this, h =
|
|
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
|
|
4063
|
-
|
|
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(
|
|
4071
|
-
var f =
|
|
4072
|
-
var m = h.url, C = h.allow, k = h.callback, M = h.appendTo,
|
|
4073
|
-
return
|
|
4074
|
-
|
|
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
|
|
4098
|
+
var Ka = n(function s() {
|
|
4080
4099
|
var r = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
4081
|
-
t(this,
|
|
4082
|
-
}, [{ key: "sourceType", value: function(
|
|
4083
|
-
var r =
|
|
4084
|
-
return (
|
|
4085
|
-
} }, { key: "parseConfig", value: function(
|
|
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(
|
|
4088
|
-
K(
|
|
4089
|
-
var f = v(d,
|
|
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 =
|
|
4093
|
-
if (m === "a" && (g =
|
|
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 =
|
|
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 =
|
|
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 =
|
|
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
|
-
|
|
4140
|
+
E = document.querySelector(d.description).innerHTML;
|
|
4122
4141
|
} catch (B) {
|
|
4123
4142
|
if (!(B instanceof DOMException)) throw B;
|
|
4124
4143
|
}
|
|
4125
|
-
|
|
4144
|
+
E && (d.description = E);
|
|
4126
4145
|
}
|
|
4127
4146
|
if (!d.description) {
|
|
4128
|
-
var z =
|
|
4147
|
+
var z = s.querySelector(".glightbox-desc");
|
|
4129
4148
|
z && (d.description = z.innerHTML);
|
|
4130
4149
|
}
|
|
4131
|
-
return this.setSize(d, r,
|
|
4132
|
-
} }, { key: "setSize", value: function(
|
|
4133
|
-
var l = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : null, d =
|
|
4134
|
-
return
|
|
4135
|
-
} }, { key: "checkSize", value: function(
|
|
4136
|
-
return rt(
|
|
4137
|
-
} }, { key: "sanitizeValue", value: function(
|
|
4138
|
-
return
|
|
4139
|
-
} }]), ot = n(function
|
|
4140
|
-
t(this,
|
|
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
|
|
4143
|
-
if (
|
|
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"),
|
|
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:
|
|
4149
|
-
}), f.title == "" && f.description == "" ?
|
|
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:
|
|
4153
|
-
|
|
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(
|
|
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 =
|
|
4179
|
+
d.innerHTML = s;
|
|
4161
4180
|
var f = d.innerText, g = l;
|
|
4162
|
-
if ((
|
|
4163
|
-
var h =
|
|
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(
|
|
4166
|
-
var l = this, d =
|
|
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
|
|
4184
|
-
return 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(
|
|
4187
|
-
return Math.sqrt(
|
|
4205
|
+
function ct(s) {
|
|
4206
|
+
return Math.sqrt(s.x * s.x + s.y * s.y);
|
|
4188
4207
|
}
|
|
4189
|
-
function Qa(
|
|
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
|
-
}(
|
|
4216
|
+
}(s, r);
|
|
4198
4217
|
return function(d, f) {
|
|
4199
4218
|
return d.x * f.y - f.x * d.y;
|
|
4200
|
-
}(
|
|
4201
|
-
}
|
|
4202
|
-
var ei = n(function
|
|
4203
|
-
t(this,
|
|
4204
|
-
}, [{ key: "add", value: function(
|
|
4205
|
-
this.handlers.push(
|
|
4206
|
-
} }, { key: "del", value: function(
|
|
4207
|
-
|
|
4208
|
-
for (var r = this.handlers.length; r >= 0; r--) this.handlers[r] ===
|
|
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
|
|
4211
|
-
var l = this.handlers[
|
|
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(
|
|
4216
|
-
var l = new ei(
|
|
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
|
|
4220
|
-
t(this,
|
|
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(
|
|
4225
|
-
if (
|
|
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 =
|
|
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 (
|
|
4248
|
+
if (s.touches.length > 1) {
|
|
4230
4249
|
this._cancelLongTap(), this._cancelSingleTap();
|
|
4231
|
-
var l = { x:
|
|
4232
|
-
r.x = l.x, r.y = l.y, this.pinchStartLen = ct(r), this.multipointStart.dispatch(
|
|
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(
|
|
4254
|
+
this.longTap.dispatch(s, this.element), this._preventTap = !0;
|
|
4236
4255
|
}).bind(this), 750);
|
|
4237
4256
|
}
|
|
4238
|
-
} }, { key: "move", value: function(
|
|
4239
|
-
if (
|
|
4240
|
-
var r = this.preV, l =
|
|
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 =
|
|
4243
|
-
r.x !== null && (this.pinchStartLen > 0 && (
|
|
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
|
-
|
|
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
|
|
4250
|
-
this.pressMove.dispatch(
|
|
4268
|
+
} else s.deltaX = 0, s.deltaY = 0;
|
|
4269
|
+
this.pressMove.dispatch(s, this.element);
|
|
4251
4270
|
}
|
|
4252
|
-
this.touchMove.dispatch(
|
|
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(
|
|
4255
|
-
if (
|
|
4273
|
+
} }, { key: "end", value: function(s) {
|
|
4274
|
+
if (s.changedTouches) {
|
|
4256
4275
|
this._cancelLongTap();
|
|
4257
4276
|
var r = this;
|
|
4258
|
-
|
|
4259
|
-
r.swipe.dispatch(
|
|
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(
|
|
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(
|
|
4264
|
-
}, 250))), this.touchEnd.dispatch(
|
|
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(
|
|
4269
|
-
this.cancelAll(), this.touchCancel.dispatch(
|
|
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(
|
|
4275
|
-
return Math.abs(
|
|
4276
|
-
} }, { key: "on", value: function(
|
|
4277
|
-
this[
|
|
4278
|
-
} }, { key: "off", value: function(
|
|
4279
|
-
this[
|
|
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
|
|
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 =
|
|
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(
|
|
4293
|
-
if (
|
|
4294
|
-
var r, l, d, f = ee(), g = f.width, h = f.height, m = !1, C = null, k = null, M = null,
|
|
4295
|
-
if (m = !0, (
|
|
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 =
|
|
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
|
-
|
|
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,
|
|
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 (
|
|
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,
|
|
4315
|
-
|
|
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 ||
|
|
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 (
|
|
4341
|
-
|
|
4359
|
+
if (s.index == s.elements.length - 1) return Et(k);
|
|
4360
|
+
s.nextSlide();
|
|
4342
4361
|
}
|
|
4343
4362
|
if (U.direction == "Right") {
|
|
4344
|
-
if (
|
|
4345
|
-
|
|
4363
|
+
if (s.index == 0) return Et(k);
|
|
4364
|
+
s.prevSlide();
|
|
4346
4365
|
}
|
|
4347
4366
|
}
|
|
4348
4367
|
} });
|
|
4349
|
-
|
|
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
|
|
4392
|
+
</div>` }, si = n(function s() {
|
|
4374
4393
|
var r = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
4375
|
-
t(this,
|
|
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
|
|
4396
|
+
var s = this, r = this.getSelector();
|
|
4378
4397
|
r && (this.baseEvents = w("click", { onElement: r, withCallback: function(l, d) {
|
|
4379
|
-
l.preventDefault(),
|
|
4398
|
+
l.preventDefault(), s.open(d);
|
|
4380
4399
|
} })), this.elements = this.getElements();
|
|
4381
4400
|
} }, { key: "open", value: function() {
|
|
4382
|
-
var
|
|
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(
|
|
4387
|
-
var d =
|
|
4388
|
-
d && (this.fullElementsList = this.elements, this.elements = this.getGalleryElements(this.elements, d)), de(l) && (l = this.getElementIndex(
|
|
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
|
|
4399
|
-
this.open(null,
|
|
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
|
|
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 (
|
|
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(
|
|
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 &&
|
|
4415
|
-
} }, { key: "preloadSlide", value: function(
|
|
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 (
|
|
4418
|
-
var l = this.slidesContainer.querySelectorAll(".gslide")[
|
|
4419
|
-
if (
|
|
4420
|
-
var d = this.elements[
|
|
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
|
|
4434
|
-
if (this.prevActiveSlide = this.activeSlide, this.prevActiveSlideIndex = this.index, !this.loop() && (
|
|
4435
|
-
|
|
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
|
|
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(
|
|
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
|
|
4453
|
-
if (
|
|
4454
|
-
var r = this.slidesContainer && this.slidesContainer.querySelectorAll(".gslide")[
|
|
4455
|
-
r && (this.getActiveSlideIndex() ==
|
|
4456
|
-
} }, { key: "slideAnimateIn", value: function(
|
|
4457
|
-
var l = this, d =
|
|
4458
|
-
if (d.offsetWidth > 0 && f && (Q(f), f.style.display = ""), L(
|
|
4459
|
-
l.settings.autoplayVideos && l.slidePlayerPlay(
|
|
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(
|
|
4464
|
-
l.settings.autoplayVideos && l.slidePlayerPlay(
|
|
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(
|
|
4469
|
-
}, 100), _(
|
|
4487
|
+
l.resize(s);
|
|
4488
|
+
}, 100), _(s, "current");
|
|
4470
4489
|
} }, { key: "slideAnimateOut", value: function() {
|
|
4471
4490
|
if (!this.prevActiveSlide) return !1;
|
|
4472
|
-
var
|
|
4473
|
-
L(
|
|
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(
|
|
4476
|
-
var d =
|
|
4477
|
-
d.style.transform = "", f.style.transform = "", L(f, "greset"), f.style.opacity = "", g && (g.style.opacity = ""), L(
|
|
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(
|
|
4482
|
-
var r = "gvideo" +
|
|
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(
|
|
4485
|
-
if (W(
|
|
4486
|
-
var r =
|
|
4487
|
-
r && (
|
|
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(
|
|
4509
|
+
var l = this.getSlidePlayerInstance(s);
|
|
4491
4510
|
l && l.playing && l.pause();
|
|
4492
|
-
} }, { key: "slidePlayerPause", value: function(
|
|
4493
|
-
if (W(
|
|
4494
|
-
var r =
|
|
4495
|
-
r && (
|
|
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(
|
|
4516
|
+
var l = this.getSlidePlayerInstance(s);
|
|
4498
4517
|
l && l.playing && l.pause();
|
|
4499
|
-
} }, { key: "playSlideVideo", value: function(
|
|
4500
|
-
if (W(
|
|
4501
|
-
var r =
|
|
4502
|
-
r && (
|
|
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(
|
|
4524
|
+
var l = this.getSlidePlayerInstance(s);
|
|
4506
4525
|
l && !l.playing && l.play();
|
|
4507
|
-
} }, { key: "slidePlayerPlay", value: function(
|
|
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(
|
|
4511
|
-
var l =
|
|
4512
|
-
l && (
|
|
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(
|
|
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(
|
|
4536
|
+
} }, { key: "setElements", value: function(s) {
|
|
4518
4537
|
var r = this;
|
|
4519
4538
|
this.settings.elements = !1;
|
|
4520
4539
|
var l = [];
|
|
4521
|
-
|
|
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(
|
|
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 ==
|
|
4550
|
+
if (K(l, "node") && l.node == s) return r = d, !0;
|
|
4532
4551
|
}), r;
|
|
4533
4552
|
} }, { key: "getElements", value: function() {
|
|
4534
|
-
var
|
|
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,
|
|
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,
|
|
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(
|
|
4545
|
-
return
|
|
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
|
|
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
|
-
|
|
4577
|
+
s.push("g".concat(l.in)), s.push("g".concat(l.out));
|
|
4559
4578
|
}
|
|
4560
|
-
return
|
|
4579
|
+
return s.join(" ");
|
|
4561
4580
|
} }, { key: "build", value: function() {
|
|
4562
|
-
var
|
|
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(),
|
|
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(),
|
|
4595
|
+
k.preventDefault(), s.nextSlide();
|
|
4577
4596
|
} })), this.prevButton && (this.events.prev = w("click", { onElement: this.prevButton, withCallback: function(k, M) {
|
|
4578
|
-
k.preventDefault(),
|
|
4597
|
+
k.preventDefault(), s.prevSlide();
|
|
4579
4598
|
} })), this.settings.closeOnOutsideClick && (this.events.outClose = w("click", { onElement: m, withCallback: function(k, M) {
|
|
4580
|
-
|
|
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
|
-
|
|
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
|
-
|
|
4603
|
+
s.resize();
|
|
4585
4604
|
} }), this.built = !0;
|
|
4586
4605
|
} }, { key: "resize", value: function() {
|
|
4587
|
-
var
|
|
4588
|
-
if ((
|
|
4589
|
-
var r = ee(), l =
|
|
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 && (
|
|
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,
|
|
4596
|
-
z && (B = (k = z.getAttribute("data-height")) !== null && k !== void 0 ? k : B),
|
|
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
|
|
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 ||
|
|
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
|
|
4620
|
-
return
|
|
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
|
|
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 (
|
|
4635
|
-
for (var l in
|
|
4636
|
-
|
|
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"),
|
|
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),
|
|
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(
|
|
4664
|
+
} }, { key: "on", value: function(s, r) {
|
|
4646
4665
|
var l = arguments.length > 2 && arguments[2] !== void 0 && arguments[2];
|
|
4647
|
-
if (!
|
|
4648
|
-
this.apiEvents.push({ evt:
|
|
4649
|
-
} }, { key: "once", value: function(
|
|
4650
|
-
this.on(
|
|
4651
|
-
} }, { key: "trigger", value: function(
|
|
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 ==
|
|
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
|
|
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 = (
|
|
4674
|
-
for (var n = a > 1 ? void 0 : a ? ls(e, t) : e, o =
|
|
4675
|
-
(c =
|
|
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,
|
|
4725
|
-
for (var n = a > 1 ? void 0 : a ? bs(e, t) : e, o =
|
|
4726
|
-
(c =
|
|
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((
|
|
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
|
-
|
|
4782
|
+
Ta([
|
|
4764
4783
|
x({ type: Array })
|
|
4765
4784
|
], wt.prototype, "files", 2);
|
|
4766
|
-
wt =
|
|
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 = (
|
|
4791
|
-
for (var n = a > 1 ? void 0 : a ? ps(e, t) : e, o =
|
|
4792
|
-
(c =
|
|
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 = (
|
|
4851
|
-
for (var n = a > 1 ? void 0 : a ? Cs(e, t) : e, o =
|
|
4852
|
-
(c =
|
|
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
|
|
4888
|
+
const i = "txt";
|
|
4870
4889
|
if (!this.filename)
|
|
4871
|
-
return
|
|
4890
|
+
return i;
|
|
4872
4891
|
const e = this.filename.split(".").pop();
|
|
4873
|
-
return e ? e.toLowerCase() :
|
|
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>',
|
|
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(
|
|
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}">${
|
|
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
|
|
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 &&
|
|
6380
|
+
if (!!(t && Tt.getLanguage(t))) {
|
|
6362
6381
|
const n = t ?? "";
|
|
6363
|
-
return ba(
|
|
6382
|
+
return ba(Tt.highlight(e, { language: n }).value, n);
|
|
6364
6383
|
}
|
|
6365
|
-
return ba(
|
|
6384
|
+
return ba(Tt.highlightAuto(e).value, "");
|
|
6366
6385
|
}
|
|
6367
6386
|
});
|
|
6368
|
-
return
|
|
6387
|
+
return i.use(bi, { attrs: { target: "_blank", rel: "noopener" } }), i;
|
|
6369
6388
|
}
|
|
6370
|
-
async function Ot(
|
|
6371
|
-
const t = Is().render(
|
|
6389
|
+
async function Ot(i) {
|
|
6390
|
+
const t = Is().render(i);
|
|
6372
6391
|
return u`${Y(t)}`;
|
|
6373
6392
|
}
|
|
6374
|
-
var
|
|
6375
|
-
for (var n = a > 1 ? void 0 : a ?
|
|
6376
|
-
(c =
|
|
6377
|
-
return a && 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
|
|
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(
|
|
6415
|
-
super.updated(
|
|
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
|
|
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 &&
|
|
6447
|
+
}), "src" in e && i.push({
|
|
6429
6448
|
href: e.src,
|
|
6430
6449
|
type: "image"
|
|
6431
6450
|
});
|
|
6432
|
-
}), this.lightbox.setElements(
|
|
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((
|
|
6444
|
-
|
|
6445
|
-
const e =
|
|
6462
|
+
this.copyBtns.forEach((i) => {
|
|
6463
|
+
i.addEventListener("click", () => {
|
|
6464
|
+
const e = i.parentElement?.nextElementSibling?.textContent;
|
|
6446
6465
|
e && Mi(e).then(() => {
|
|
6447
|
-
|
|
6448
|
-
|
|
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((
|
|
6456
|
-
|
|
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(
|
|
6477
|
-
return u`<div class="cb-message__buttons ${
|
|
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(
|
|
6503
|
+
renderMessage(i, e = "bot-message-content") {
|
|
6485
6504
|
return u`
|
|
6486
6505
|
<div
|
|
6487
6506
|
class="cb-message__content
|
|
6488
|
-
${
|
|
6489
|
-
message-type-${
|
|
6490
|
-
${
|
|
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(
|
|
6513
|
+
${this.renderMessageContent(i)}
|
|
6495
6514
|
</div>
|
|
6496
6515
|
`;
|
|
6497
6516
|
}
|
|
6498
|
-
async _getMessageText(
|
|
6499
|
-
return Ot(
|
|
6517
|
+
async _getMessageText(i) {
|
|
6518
|
+
return Ot(i.data.text);
|
|
6500
6519
|
}
|
|
6501
|
-
renderMessageContent(
|
|
6502
|
-
return
|
|
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
|
-
|
|
6505
|
-
() => u`<div class="assistant-message-user-name">${
|
|
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(
|
|
6528
|
+
this._getMessageText(i).then((e) => u`${e}`)
|
|
6510
6529
|
)}
|
|
6511
|
-
</div>` :
|
|
6512
|
-
|
|
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
|
-
)}` :
|
|
6516
|
-
|
|
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(
|
|
6540
|
+
Ot(i.data.text?.toString() || "").then((e) => u`${e}`)
|
|
6522
6541
|
)}
|
|
6523
6542
|
</div>`;
|
|
6524
6543
|
}
|
|
6525
|
-
renderMessageUploads(
|
|
6526
|
-
if (
|
|
6544
|
+
renderMessageUploads(i) {
|
|
6545
|
+
if (i.type === "upload")
|
|
6527
6546
|
return u`<div class="user-message-uploads">
|
|
6528
6547
|
${He(
|
|
6529
|
-
|
|
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(
|
|
6536
|
-
if (
|
|
6537
|
-
const e =
|
|
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
|
|
6559
|
+
return i.author === "system" ? ue`${Y(b.setting.systemIconSvg)}` : ue`${Y(b.setting.botIconSvg)}`;
|
|
6541
6560
|
}
|
|
6542
|
-
renderBotMessage(
|
|
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(
|
|
6546
|
-
${this.renderMessage(
|
|
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(
|
|
6567
|
+
${this.renderBotMessageFeedback(i)}
|
|
6549
6568
|
`;
|
|
6550
6569
|
}
|
|
6551
|
-
renderBotMessageFeedback(
|
|
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,
|
|
6555
|
-
<div class="cb-message-feedback-icon cb-feedback-down" @click="${() => this.startFeedback(!1,
|
|
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(
|
|
6560
|
-
console.log("startFeedback", e), b.collectFeedback(
|
|
6578
|
+
startFeedback(i, e) {
|
|
6579
|
+
console.log("startFeedback", e), b.collectFeedback(i, e);
|
|
6561
6580
|
}
|
|
6562
|
-
renderUserMessage(
|
|
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(
|
|
6592
|
+
${this.renderMessage(i, "user-message-content")}
|
|
6574
6593
|
`,
|
|
6575
6594
|
() => u`
|
|
6576
|
-
${this.renderMessage(
|
|
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(
|
|
6600
|
+
${this.renderMessageUploads(i)}
|
|
6582
6601
|
`;
|
|
6583
6602
|
}
|
|
6584
6603
|
// todo ???
|
|
6585
|
-
renderUserMessageUpload(
|
|
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(
|
|
6615
|
+
${this.renderMessage(i, "user-message-content")}
|
|
6597
6616
|
`,
|
|
6598
6617
|
() => u`
|
|
6599
|
-
${this.renderMessage(
|
|
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
|
-
|
|
6626
|
+
$e.styles = Ms;
|
|
6608
6627
|
Ue([
|
|
6609
6628
|
x({ type: Object })
|
|
6610
|
-
],
|
|
6629
|
+
], $e.prototype, "message", 2);
|
|
6611
6630
|
Ue([
|
|
6612
6631
|
x({ type: Number })
|
|
6613
|
-
],
|
|
6632
|
+
], $e.prototype, "index", 2);
|
|
6614
6633
|
Ue([
|
|
6615
6634
|
x({ type: String })
|
|
6616
|
-
],
|
|
6635
|
+
], $e.prototype, "type", 2);
|
|
6617
6636
|
Ue([
|
|
6618
6637
|
x({ type: Boolean })
|
|
6619
|
-
],
|
|
6638
|
+
], $e.prototype, "suppressFeedback", 2);
|
|
6620
6639
|
Ue([
|
|
6621
6640
|
xa(".code-block-header__copy")
|
|
6622
|
-
],
|
|
6641
|
+
], $e.prototype, "copyBtns", 2);
|
|
6623
6642
|
Ue([
|
|
6624
6643
|
xa("img")
|
|
6625
|
-
],
|
|
6626
|
-
|
|
6644
|
+
], $e.prototype, "glightboxImages", 2);
|
|
6645
|
+
$e = Ue([
|
|
6627
6646
|
J("cb-message")
|
|
6628
|
-
],
|
|
6629
|
-
var
|
|
6630
|
-
for (var n = a > 1 ? void 0 : a ? Ls(e, t) : e, o =
|
|
6631
|
-
(c =
|
|
6632
|
-
return a && 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
|
|
6635
|
-
|
|
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
|
-
(
|
|
6654
|
-
(
|
|
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((
|
|
6701
|
+
Ot(b.setting.disclaimerMessage).then((i) => u`${i}`)
|
|
6667
6702
|
)}
|
|
6668
6703
|
</summary>
|
|
6669
6704
|
</details>
|
|
@@ -6674,19 +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
|
-
(
|
|
6678
|
-
(
|
|
6679
|
-
const e =
|
|
6680
|
-
switch (
|
|
6712
|
+
(i, e) => e,
|
|
6713
|
+
(i) => {
|
|
6714
|
+
const e = i?.required || !1, t = b.getPrefilledFormFieldValue(i.name);
|
|
6715
|
+
switch (i.type) {
|
|
6681
6716
|
case "name":
|
|
6682
6717
|
case "string":
|
|
6683
6718
|
return u`<sl-input
|
|
6684
6719
|
value="${t}"
|
|
6685
6720
|
part="form-input"
|
|
6686
6721
|
class="cb-input-form-input"
|
|
6687
|
-
id="${"cb-form-field" +
|
|
6688
|
-
name="${
|
|
6689
|
-
label="${
|
|
6722
|
+
id="${"cb-form-field" + i.name}"
|
|
6723
|
+
name="${i.name}"
|
|
6724
|
+
label="${i.title}"
|
|
6690
6725
|
?required="${e}"
|
|
6691
6726
|
></sl-input>`;
|
|
6692
6727
|
case "email":
|
|
@@ -6694,10 +6729,10 @@ let pe = class extends ae {
|
|
|
6694
6729
|
part="form-input"
|
|
6695
6730
|
value="${t}"
|
|
6696
6731
|
class="cb-input-form-input"
|
|
6697
|
-
id="${"cb-form-field" +
|
|
6698
|
-
name="${
|
|
6732
|
+
id="${"cb-form-field" + i.name}"
|
|
6733
|
+
name="${i.name}"
|
|
6699
6734
|
type="email"
|
|
6700
|
-
label="${
|
|
6735
|
+
label="${i.title}"
|
|
6701
6736
|
?required="${e}"
|
|
6702
6737
|
></sl-input>`;
|
|
6703
6738
|
case "phone":
|
|
@@ -6705,24 +6740,24 @@ let pe = class extends ae {
|
|
|
6705
6740
|
part="form-input"
|
|
6706
6741
|
value="${t}"
|
|
6707
6742
|
class="cb-input-form-input"
|
|
6708
|
-
id="${"cb-form-field" +
|
|
6709
|
-
name="${
|
|
6743
|
+
id="${"cb-form-field" + i.name}"
|
|
6744
|
+
name="${i.name}"
|
|
6710
6745
|
type="tel"
|
|
6711
|
-
label="${
|
|
6746
|
+
label="${i.title}"
|
|
6712
6747
|
?required="${e}"
|
|
6713
6748
|
></sl-input>`;
|
|
6714
6749
|
case "select": {
|
|
6715
|
-
const a = Array.isArray(
|
|
6750
|
+
const a = Array.isArray(i.options) ? i.options : i.options.split(",").map((n) => n.trim());
|
|
6716
6751
|
return t || a[0], u`<div class="cb-form-field">
|
|
6717
6752
|
<label class="cb-form-field-label"
|
|
6718
|
-
>${
|
|
6753
|
+
>${i.title}
|
|
6719
6754
|
${N(
|
|
6720
6755
|
e,
|
|
6721
6756
|
() => u`*`,
|
|
6722
6757
|
() => u``
|
|
6723
6758
|
)}
|
|
6724
6759
|
</label>
|
|
6725
|
-
<select id="${"cb-form-field" +
|
|
6760
|
+
<select id="${"cb-form-field" + i.name}" class="cb-form-field-select" part="form-input" name="${i.name}">
|
|
6726
6761
|
${He(
|
|
6727
6762
|
a,
|
|
6728
6763
|
(n, o) => o,
|
|
@@ -6737,8 +6772,8 @@ let pe = class extends ae {
|
|
|
6737
6772
|
<sl-button class="cb-input-form-submit" part="form-submit" variant="primary" pill type="submit">Send</sl-button>
|
|
6738
6773
|
</form>` : null;
|
|
6739
6774
|
}
|
|
6740
|
-
handleFormSubmit(
|
|
6741
|
-
|
|
6775
|
+
handleFormSubmit(i) {
|
|
6776
|
+
i.preventDefault();
|
|
6742
6777
|
const e = {};
|
|
6743
6778
|
if (Array.isArray(this.form.fields))
|
|
6744
6779
|
for (let t = 0; t < this.form.fields.length; t++) {
|
|
@@ -6752,13 +6787,13 @@ let pe = class extends ae {
|
|
|
6752
6787
|
}
|
|
6753
6788
|
}
|
|
6754
6789
|
b.submitForm(e).then(() => {
|
|
6755
|
-
|
|
6790
|
+
Ee.info("Form submitted", e), this.emit("form:submit", {
|
|
6756
6791
|
detail: {
|
|
6757
6792
|
formData: e
|
|
6758
6793
|
}
|
|
6759
6794
|
});
|
|
6760
6795
|
}).catch((t) => {
|
|
6761
|
-
|
|
6796
|
+
Ee.error(`Error when submitting form: ${t.message}`);
|
|
6762
6797
|
});
|
|
6763
6798
|
}
|
|
6764
6799
|
/* Form sample
|
|
@@ -6777,41 +6812,46 @@ let pe = class extends ae {
|
|
|
6777
6812
|
<div class="cb-actions-list">
|
|
6778
6813
|
${He(
|
|
6779
6814
|
this.actions,
|
|
6780
|
-
(
|
|
6781
|
-
(
|
|
6815
|
+
(i) => i,
|
|
6816
|
+
(i) => this.renderAction(i)
|
|
6782
6817
|
)}
|
|
6783
6818
|
</div>
|
|
6784
6819
|
`;
|
|
6785
6820
|
}
|
|
6786
6821
|
scrollToBottom() {
|
|
6822
|
+
if (this._userInterruptedAutoScroll) {
|
|
6823
|
+
if (this._userInterruptedMessagesLength === this.messages.length)
|
|
6824
|
+
return;
|
|
6825
|
+
this._userInterruptedAutoScroll = !1, this._userInterruptedMessagesLength = 0;
|
|
6826
|
+
}
|
|
6787
6827
|
this._messageListBottomAnchor.scrollIntoView({ behavior: "smooth", block: "end", inline: "nearest" });
|
|
6788
6828
|
}
|
|
6789
|
-
renderAction(
|
|
6790
|
-
switch (
|
|
6829
|
+
renderAction(i) {
|
|
6830
|
+
switch (i.type) {
|
|
6791
6831
|
case "calendlyMeeting":
|
|
6792
|
-
return this.renderCalendlyAction(
|
|
6832
|
+
return this.renderCalendlyAction(i);
|
|
6793
6833
|
case "link":
|
|
6794
|
-
return this.renderLinkAction(
|
|
6834
|
+
return this.renderLinkAction(i);
|
|
6795
6835
|
case "hubspotMeeting":
|
|
6796
|
-
return this.renderHubspotMeetingAction(
|
|
6836
|
+
return this.renderHubspotMeetingAction(i);
|
|
6797
6837
|
}
|
|
6798
6838
|
return null;
|
|
6799
6839
|
}
|
|
6800
|
-
handleCalendlyEvent(
|
|
6801
|
-
switch (
|
|
6840
|
+
handleCalendlyEvent(i) {
|
|
6841
|
+
switch (Ee.info("Got Calendly Event:", i.data), i.data.event) {
|
|
6802
6842
|
case "calendly.event_scheduled": {
|
|
6803
6843
|
const e = this.activeCalendlyAction;
|
|
6804
|
-
e >= 0 && (b.removeAction(e, !0,
|
|
6844
|
+
e >= 0 && (b.removeAction(e, !0, i.data), b.addSystemMessage("Your meeting has been scheduled!"), this.activeCalendlyAction = -1);
|
|
6805
6845
|
}
|
|
6806
6846
|
}
|
|
6807
6847
|
}
|
|
6808
|
-
invokeLinkAction(
|
|
6809
|
-
|
|
6848
|
+
invokeLinkAction(i = {}) {
|
|
6849
|
+
Ee.info("invokeLinkAction:", i), window.open(i.url, "_blank");
|
|
6810
6850
|
}
|
|
6811
|
-
invokeCalendlyAction(
|
|
6812
|
-
return
|
|
6851
|
+
invokeCalendlyAction(i = {}) {
|
|
6852
|
+
return Ee.info("invokeCalendlyAction:", i), "Calendly" in window && (this.activeCalendlyAction = i.internalId, window.Calendly.initPopupWidget({ url: i.url })), !1;
|
|
6813
6853
|
}
|
|
6814
|
-
renderCalendlyAction(
|
|
6854
|
+
renderCalendlyAction(i) {
|
|
6815
6855
|
if (!("Calendly" in window) && !this.calendlyInjected) {
|
|
6816
6856
|
let e = document.createElement("link");
|
|
6817
6857
|
e.href = "https://assets.calendly.com/assets/external/widget.css", e.rel = "stylesheet", document.body.appendChild(e);
|
|
@@ -6824,7 +6864,7 @@ let pe = class extends ae {
|
|
|
6824
6864
|
}
|
|
6825
6865
|
return u`
|
|
6826
6866
|
<div class="cb-actions-list">
|
|
6827
|
-
<div class="cb-action ripple" @click="${this.invokeCalendlyAction.bind(this,
|
|
6867
|
+
<div class="cb-action ripple" @click="${this.invokeCalendlyAction.bind(this, i)}">
|
|
6828
6868
|
<div class="cb-action-icon">
|
|
6829
6869
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
|
|
6830
6870
|
<path
|
|
@@ -6833,58 +6873,58 @@ let pe = class extends ae {
|
|
|
6833
6873
|
/>
|
|
6834
6874
|
</svg>
|
|
6835
6875
|
</div>
|
|
6836
|
-
${
|
|
6876
|
+
${i.title}
|
|
6837
6877
|
</div>
|
|
6838
6878
|
</div>
|
|
6839
6879
|
`;
|
|
6840
6880
|
}
|
|
6841
|
-
renderLinkAction(
|
|
6881
|
+
renderLinkAction(i) {
|
|
6842
6882
|
return u`
|
|
6843
6883
|
<div class="cb-actions-list">
|
|
6844
|
-
<div class="cb-action ripple" @click="${this.invokeLinkAction.bind(this,
|
|
6884
|
+
<div class="cb-action ripple" @click="${this.invokeLinkAction.bind(this, i)}">
|
|
6845
6885
|
<div class="cb-action-icon">
|
|
6846
6886
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
|
|
6847
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" />
|
|
6848
6888
|
</svg>
|
|
6849
6889
|
</div>
|
|
6850
|
-
${
|
|
6890
|
+
${i.title}
|
|
6851
6891
|
</div>
|
|
6852
6892
|
</div>
|
|
6853
6893
|
`;
|
|
6854
6894
|
}
|
|
6855
|
-
invokeHubspotMeetingAction(
|
|
6895
|
+
invokeHubspotMeetingAction(i = {}) {
|
|
6856
6896
|
const e = Date.now();
|
|
6857
6897
|
if (this.activeHubspotMeetingAction !== -1) {
|
|
6858
|
-
|
|
6898
|
+
Ee.info(`invokeHubspotMeetingAction: action ${this.activeHubspotMeetingAction} is already active - ignored`);
|
|
6859
6899
|
return;
|
|
6860
6900
|
}
|
|
6861
|
-
if (
|
|
6901
|
+
if (Ee.info("invokeHubspotMeetingAction:", i), "hbspt" in window && typeof window.hbspt?.meetings?.create == "function") {
|
|
6862
6902
|
const t = document.getElementById("enegelai-bot-hubspot-meeting-container"), a = document.querySelector(".enegelai-bot-hubspot-meeting-widget");
|
|
6863
6903
|
if (t && a) {
|
|
6864
|
-
const n =
|
|
6865
|
-
a.setAttribute("data-src", n), this.activeHubspotMeetingAction =
|
|
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, {
|
|
6866
6906
|
triggered: e
|
|
6867
6907
|
});
|
|
6868
6908
|
}
|
|
6869
6909
|
}
|
|
6870
6910
|
return !1;
|
|
6871
6911
|
}
|
|
6872
|
-
handleHubspotEvent(
|
|
6873
|
-
if (
|
|
6912
|
+
handleHubspotEvent(i) {
|
|
6913
|
+
if (Ee.info("Got Hubspot Event:", i.data), !(i?.data?.meetingBookSucceeded || !1))
|
|
6874
6914
|
return;
|
|
6875
6915
|
const t = this.activeHubspotMeetingAction;
|
|
6876
6916
|
if (t >= 0) {
|
|
6877
|
-
b.removeAction(t, !0,
|
|
6917
|
+
b.removeAction(t, !0, i.data), b.addSystemMessage("Your meeting has been scheduled!"), this.activeHubspotMeetingAction = -1;
|
|
6878
6918
|
const a = document.getElementById("enegelai-bot-hubspot-meeting-container");
|
|
6879
6919
|
a && (a.style.display = "none");
|
|
6880
6920
|
}
|
|
6881
6921
|
}
|
|
6882
6922
|
handleHubspotMeetingCancel() {
|
|
6883
6923
|
this.activeHubspotMeetingAction = -1;
|
|
6884
|
-
const
|
|
6885
|
-
|
|
6924
|
+
const i = document.getElementById("enegelai-bot-hubspot-meeting-container");
|
|
6925
|
+
i && (i.style.display = "none");
|
|
6886
6926
|
}
|
|
6887
|
-
renderHubspotMeetingAction(
|
|
6927
|
+
renderHubspotMeetingAction(i) {
|
|
6888
6928
|
if (!this.hubspotMeetingInjected) {
|
|
6889
6929
|
const e = document.createElement("script");
|
|
6890
6930
|
e.src = "https://static.hsappstatic.net/MeetingsEmbed/ex/MeetingsEmbedCode.js", document.getElementsByTagName("head")[0].appendChild(e);
|
|
@@ -6903,11 +6943,11 @@ let pe = class extends ae {
|
|
|
6903
6943
|
this.handleHubspotMeetingCancel();
|
|
6904
6944
|
}), this.hubspotMeetingInjected = !0;
|
|
6905
6945
|
}
|
|
6906
|
-
return
|
|
6907
|
-
this.invokeHubspotMeetingAction(
|
|
6946
|
+
return i?.hubspotMeetingAuto && !("triggered" in i) && setTimeout(() => {
|
|
6947
|
+
this.invokeHubspotMeetingAction(i);
|
|
6908
6948
|
}, 500), u`
|
|
6909
6949
|
<div class="cb-actions-list">
|
|
6910
|
-
<div class="cb-action ripple" @click="${this.invokeHubspotMeetingAction.bind(this,
|
|
6950
|
+
<div class="cb-action ripple" @click="${this.invokeHubspotMeetingAction.bind(this, i)}">
|
|
6911
6951
|
<div class="cb-action-icon">
|
|
6912
6952
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
|
|
6913
6953
|
<path
|
|
@@ -6916,7 +6956,7 @@ let pe = class extends ae {
|
|
|
6916
6956
|
/>
|
|
6917
6957
|
</svg>
|
|
6918
6958
|
</div>
|
|
6919
|
-
${
|
|
6959
|
+
${i.title}
|
|
6920
6960
|
</div>
|
|
6921
6961
|
</div>
|
|
6922
6962
|
`;
|
|
@@ -6996,9 +7036,9 @@ const zs = Z`
|
|
|
6996
7036
|
margin: 6px 2px;
|
|
6997
7037
|
}
|
|
6998
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>';
|
|
6999
|
-
var Ps = Object.defineProperty, qs = Object.getOwnPropertyDescriptor, _e = (
|
|
7000
|
-
for (var n = a > 1 ? void 0 : a ? qs(e, t) : e, o =
|
|
7001
|
-
(c =
|
|
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);
|
|
7002
7042
|
return a && n && Ps(e, t, n), n;
|
|
7003
7043
|
};
|
|
7004
7044
|
let ge = class extends ae {
|
|
@@ -7008,17 +7048,17 @@ let ge = class extends ae {
|
|
|
7008
7048
|
connectedCallback() {
|
|
7009
7049
|
super.connectedCallback(), addEventListener("form:submit", this._formSubmitHandler.bind(this)), addEventListener("c7o:bot:input:setvalue", this._inputSetValueHandler.bind(this));
|
|
7010
7050
|
}
|
|
7011
|
-
async _inputSetValueHandler(
|
|
7012
|
-
const e =
|
|
7051
|
+
async _inputSetValueHandler(i) {
|
|
7052
|
+
const e = i, t = typeof e?.detail?.inputValue == "string" && e?.detail?.inputValue || "";
|
|
7013
7053
|
this.value = t;
|
|
7014
7054
|
}
|
|
7015
|
-
async _formSubmitHandler(
|
|
7055
|
+
async _formSubmitHandler(i) {
|
|
7016
7056
|
requestIdleCallback(() => {
|
|
7017
7057
|
this.inputElement.focus();
|
|
7018
7058
|
});
|
|
7019
7059
|
}
|
|
7020
|
-
_inputChangeHandler(
|
|
7021
|
-
const e =
|
|
7060
|
+
_inputChangeHandler(i) {
|
|
7061
|
+
const e = i.target;
|
|
7022
7062
|
this.value = e.value;
|
|
7023
7063
|
}
|
|
7024
7064
|
_sendHandler() {
|
|
@@ -7036,10 +7076,10 @@ let ge = class extends ae {
|
|
|
7036
7076
|
});
|
|
7037
7077
|
}
|
|
7038
7078
|
async _sendFileHandler() {
|
|
7039
|
-
const
|
|
7079
|
+
const i = await Sa(!1);
|
|
7040
7080
|
this.emit("message:send:file", {
|
|
7041
7081
|
detail: {
|
|
7042
|
-
files:
|
|
7082
|
+
files: i
|
|
7043
7083
|
}
|
|
7044
7084
|
});
|
|
7045
7085
|
}
|
|
@@ -7110,8 +7150,8 @@ let ge = class extends ae {
|
|
|
7110
7150
|
</div>
|
|
7111
7151
|
`;
|
|
7112
7152
|
}
|
|
7113
|
-
_keyDownHandler(
|
|
7114
|
-
|
|
7153
|
+
_keyDownHandler(i) {
|
|
7154
|
+
i.key === "Enter" && !i.shiftKey && this._sendHandler();
|
|
7115
7155
|
}
|
|
7116
7156
|
};
|
|
7117
7157
|
ge.styles = zs;
|
|
@@ -7204,9 +7244,9 @@ const Bs = Z`
|
|
|
7204
7244
|
outline: none !important;
|
|
7205
7245
|
}
|
|
7206
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>';
|
|
7207
|
-
var Fs = Object.defineProperty, Hs = Object.getOwnPropertyDescriptor, Ce = (
|
|
7208
|
-
for (var n = a > 1 ? void 0 : a ? Hs(e, t) : e, o =
|
|
7209
|
-
(c =
|
|
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);
|
|
7210
7250
|
return a && n && Fs(e, t, n), n;
|
|
7211
7251
|
};
|
|
7212
7252
|
let me = class extends ae {
|
|
@@ -7216,17 +7256,17 @@ let me = class extends ae {
|
|
|
7216
7256
|
connectedCallback() {
|
|
7217
7257
|
super.connectedCallback(), addEventListener("form:submit", this._formSubmitHandler.bind(this)), addEventListener("c7o:bot:input:setvalue", this._inputSetValueHandler.bind(this));
|
|
7218
7258
|
}
|
|
7219
|
-
async _inputSetValueHandler(
|
|
7220
|
-
const e =
|
|
7259
|
+
async _inputSetValueHandler(i) {
|
|
7260
|
+
const e = i, t = typeof e?.detail?.inputValue == "string" && e?.detail?.inputValue || "";
|
|
7221
7261
|
this.value = t;
|
|
7222
7262
|
}
|
|
7223
|
-
async _formSubmitHandler(
|
|
7263
|
+
async _formSubmitHandler(i) {
|
|
7224
7264
|
requestIdleCallback(() => {
|
|
7225
7265
|
this.inputElement.focus();
|
|
7226
7266
|
});
|
|
7227
7267
|
}
|
|
7228
|
-
_inputChangeHandler(
|
|
7229
|
-
const e =
|
|
7268
|
+
_inputChangeHandler(i) {
|
|
7269
|
+
const e = i.target;
|
|
7230
7270
|
this.value = e.value;
|
|
7231
7271
|
}
|
|
7232
7272
|
_ctrlHandler() {
|
|
@@ -7250,10 +7290,10 @@ let me = class extends ae {
|
|
|
7250
7290
|
});
|
|
7251
7291
|
}
|
|
7252
7292
|
async _sendFileHandler() {
|
|
7253
|
-
const
|
|
7293
|
+
const i = await Sa(!1);
|
|
7254
7294
|
this.emit("message:send:file", {
|
|
7255
7295
|
detail: {
|
|
7256
|
-
files:
|
|
7296
|
+
files: i
|
|
7257
7297
|
}
|
|
7258
7298
|
});
|
|
7259
7299
|
}
|
|
@@ -7390,8 +7430,8 @@ let me = class extends ae {
|
|
|
7390
7430
|
</div>
|
|
7391
7431
|
`;
|
|
7392
7432
|
}
|
|
7393
|
-
_keyDownHandler(
|
|
7394
|
-
|
|
7433
|
+
_keyDownHandler(i) {
|
|
7434
|
+
i.key === "Enter" && !i.shiftKey && this._sendHandler();
|
|
7395
7435
|
}
|
|
7396
7436
|
};
|
|
7397
7437
|
me.styles = Bs;
|
|
@@ -7460,9 +7500,9 @@ const Ba = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="c
|
|
|
7460
7500
|
gap: 8px;
|
|
7461
7501
|
}
|
|
7462
7502
|
`;
|
|
7463
|
-
var Ds = Object.defineProperty, Vs = Object.getOwnPropertyDescriptor, Mt = (
|
|
7464
|
-
for (var n = a > 1 ? void 0 : a ? Vs(e, t) : e, o =
|
|
7465
|
-
(c =
|
|
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);
|
|
7466
7506
|
return a && n && Ds(e, t, n), n;
|
|
7467
7507
|
};
|
|
7468
7508
|
let Xe = class extends ae {
|
|
@@ -7522,9 +7562,9 @@ Mt([
|
|
|
7522
7562
|
Xe = Mt([
|
|
7523
7563
|
J("cb-dialog")
|
|
7524
7564
|
], Xe);
|
|
7525
|
-
var Ns = Object.defineProperty, Us = Object.getOwnPropertyDescriptor, Oa = (
|
|
7526
|
-
for (var n = a > 1 ? void 0 : a ? Us(e, t) : e, o =
|
|
7527
|
-
(c =
|
|
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);
|
|
7528
7568
|
return a && n && Ns(e, t, n), n;
|
|
7529
7569
|
};
|
|
7530
7570
|
let xt = class extends ae {
|
|
@@ -7635,9 +7675,9 @@ const Ws = Z`
|
|
|
7635
7675
|
grid-column-start: 2;
|
|
7636
7676
|
}
|
|
7637
7677
|
`;
|
|
7638
|
-
var Ys = Object.defineProperty, Xs = Object.getOwnPropertyDescriptor, Ge = (
|
|
7639
|
-
for (var n = a > 1 ? void 0 : a ? Xs(e, t) : e, o =
|
|
7640
|
-
(c =
|
|
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);
|
|
7641
7681
|
return a && n && Ys(e, t, n), n;
|
|
7642
7682
|
};
|
|
7643
7683
|
let qe = class extends ae {
|
|
@@ -7732,13 +7772,13 @@ let qe = class extends ae {
|
|
|
7732
7772
|
this.emit("message:clear"), this.clearMessageDialogOpen = !1;
|
|
7733
7773
|
}
|
|
7734
7774
|
// input change handler
|
|
7735
|
-
_inputChangeHandler(
|
|
7736
|
-
const { name: e, value: t } =
|
|
7775
|
+
_inputChangeHandler(i) {
|
|
7776
|
+
const { name: e, value: t } = i.target, [a, n] = e.split(".");
|
|
7737
7777
|
n ? this.setting[a][n] = t : this.setting[a] = t;
|
|
7738
7778
|
}
|
|
7739
7779
|
// checked change handler
|
|
7740
|
-
_checkChangeHandler(
|
|
7741
|
-
const { name: e, checked: t } =
|
|
7780
|
+
_checkChangeHandler(i) {
|
|
7781
|
+
const { name: e, checked: t } = i.target, [a, n] = e.split(".");
|
|
7742
7782
|
n ? this.setting[a][n] = t : this.setting[a] = t, a === "customRequest" && (this.customRequest = t);
|
|
7743
7783
|
}
|
|
7744
7784
|
// emit setting confirm event
|
|
@@ -7753,8 +7793,8 @@ let qe = class extends ae {
|
|
|
7753
7793
|
_settingCancelHandler() {
|
|
7754
7794
|
this.emit("setting:hide");
|
|
7755
7795
|
}
|
|
7756
|
-
updated(
|
|
7757
|
-
super.updated(
|
|
7796
|
+
updated(i) {
|
|
7797
|
+
super.updated(i), this.dialog?.addEventListener("sl-request-close", (e) => {
|
|
7758
7798
|
e.detail.source === "overlay" && e.preventDefault();
|
|
7759
7799
|
});
|
|
7760
7800
|
}
|
|
@@ -7892,9 +7932,9 @@ const Gs = Z`
|
|
|
7892
7932
|
margin: 4px 4px 0px 0px;
|
|
7893
7933
|
}
|
|
7894
7934
|
`;
|
|
7895
|
-
var Zs = Object.defineProperty, Js = Object.getOwnPropertyDescriptor, Ra = (
|
|
7896
|
-
for (var n = a > 1 ? void 0 : a ? Js(e, t) : e, o =
|
|
7897
|
-
(c =
|
|
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);
|
|
7898
7938
|
return a && n && Zs(e, t, n), n;
|
|
7899
7939
|
};
|
|
7900
7940
|
let kt = class extends ae {
|
|
@@ -7903,15 +7943,15 @@ let kt = class extends ae {
|
|
|
7903
7943
|
}
|
|
7904
7944
|
// handler click
|
|
7905
7945
|
_clickHandler() {
|
|
7906
|
-
const
|
|
7946
|
+
const i = !this.open;
|
|
7907
7947
|
this.emit("chatbot:toggle", {
|
|
7908
7948
|
detail: {
|
|
7909
|
-
open:
|
|
7949
|
+
open: i
|
|
7910
7950
|
}
|
|
7911
|
-
}), this.open =
|
|
7951
|
+
}), this.open = i;
|
|
7912
7952
|
}
|
|
7913
|
-
_engageClickHandler(
|
|
7914
|
-
console.log("engage close clicked!"), b.suppressEngagePopup(),
|
|
7953
|
+
_engageClickHandler(i) {
|
|
7954
|
+
console.log("engage close clicked!"), b.suppressEngagePopup(), i.stopPropagation();
|
|
7915
7955
|
}
|
|
7916
7956
|
/*
|
|
7917
7957
|
${when(
|
|
@@ -7921,12 +7961,12 @@ let kt = class extends ae {
|
|
|
7921
7961
|
)}
|
|
7922
7962
|
*/
|
|
7923
7963
|
getPopupPlacement() {
|
|
7924
|
-
let
|
|
7925
|
-
return
|
|
7964
|
+
let i = "top-end";
|
|
7965
|
+
return i = b.appearanceAnchorPopupPosition, i;
|
|
7926
7966
|
}
|
|
7927
7967
|
getBadgeVariant() {
|
|
7928
|
-
let
|
|
7929
|
-
return
|
|
7968
|
+
let i = "danger";
|
|
7969
|
+
return i = b.appearanceAnchorBadgeVariant, i;
|
|
7930
7970
|
}
|
|
7931
7971
|
renderPopupLogo() {
|
|
7932
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;
|
|
@@ -7969,9 +8009,9 @@ kt = Ra([
|
|
|
7969
8009
|
const Ks = Z`
|
|
7970
8010
|
${ye}
|
|
7971
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>';
|
|
7972
|
-
var an = Object.defineProperty, sn = Object.getOwnPropertyDescriptor, Fa = (
|
|
7973
|
-
for (var n = a > 1 ? void 0 : a ? sn(e, t) : e, o =
|
|
7974
|
-
(c =
|
|
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);
|
|
7975
8015
|
return a && n && an(e, t, n), n;
|
|
7976
8016
|
};
|
|
7977
8017
|
const pa = {
|
|
@@ -8001,8 +8041,8 @@ let _t = class extends ae {
|
|
|
8001
8041
|
super(...arguments), this.status = "info";
|
|
8002
8042
|
}
|
|
8003
8043
|
render() {
|
|
8004
|
-
const { variant:
|
|
8005
|
-
return u`<cb-icon svg=${e} color="${
|
|
8044
|
+
const { variant: i, icon: e } = pa[this.status] || pa.info;
|
|
8045
|
+
return u`<cb-icon svg=${e} color="${i}"></cb-icon>`;
|
|
8006
8046
|
}
|
|
8007
8047
|
};
|
|
8008
8048
|
_t.styles = Ca;
|
|
@@ -8012,9 +8052,9 @@ Fa([
|
|
|
8012
8052
|
_t = Fa([
|
|
8013
8053
|
J("cb-status-icon")
|
|
8014
8054
|
], _t);
|
|
8015
|
-
var nn = Object.getOwnPropertyDescriptor, rn = (
|
|
8016
|
-
for (var n = a > 1 ? void 0 : a ? nn(e, t) : e, o =
|
|
8017
|
-
(c =
|
|
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);
|
|
8018
8058
|
return n;
|
|
8019
8059
|
};
|
|
8020
8060
|
let Rt = class extends ae {
|
|
@@ -8121,9 +8161,9 @@ const on = Z`
|
|
|
8121
8161
|
filter: alpha(opacity=80);
|
|
8122
8162
|
}
|
|
8123
8163
|
`;
|
|
8124
|
-
var cn = Object.defineProperty, ln = Object.getOwnPropertyDescriptor, Ze = (
|
|
8125
|
-
for (var n = a > 1 ? void 0 : a ? ln(e, t) : e, o =
|
|
8126
|
-
(c =
|
|
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);
|
|
8127
8167
|
return a && n && cn(e, t, n), n;
|
|
8128
8168
|
};
|
|
8129
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>';
|
|
@@ -8137,8 +8177,8 @@ let Be = class extends ae {
|
|
|
8137
8177
|
firstUpdated() {
|
|
8138
8178
|
this._rating.getSymbol = () => dn;
|
|
8139
8179
|
}
|
|
8140
|
-
_stateEventHandler(
|
|
8141
|
-
const e =
|
|
8180
|
+
_stateEventHandler(i) {
|
|
8181
|
+
const e = i.detail, t = e?.type || null;
|
|
8142
8182
|
ga.info(`FEEDBACK: stateEvent: ${t}`, e);
|
|
8143
8183
|
}
|
|
8144
8184
|
_cancelHandler() {
|
|
@@ -8169,7 +8209,7 @@ let Be = class extends ae {
|
|
|
8169
8209
|
b.feedbackScore = 5;
|
|
8170
8210
|
}}"
|
|
8171
8211
|
>
|
|
8172
|
-
${ue`${Y(
|
|
8212
|
+
${ue`${Y($a)}`}
|
|
8173
8213
|
</div>
|
|
8174
8214
|
</div>
|
|
8175
8215
|
<div style="display: flex">
|
|
@@ -8186,8 +8226,8 @@ let Be = class extends ae {
|
|
|
8186
8226
|
b.feedbackScore = this._rating.value;
|
|
8187
8227
|
}
|
|
8188
8228
|
async _submitHandler() {
|
|
8189
|
-
const
|
|
8190
|
-
this._comments.value = "", await b.submitFeedback(
|
|
8229
|
+
const i = this._name?.value || "", e = this._email?.value || "", t = this._comments?.value || "";
|
|
8230
|
+
this._comments.value = "", await b.submitFeedback(i, e, t);
|
|
8191
8231
|
}
|
|
8192
8232
|
};
|
|
8193
8233
|
Be.styles = on;
|
|
@@ -8670,8 +8710,8 @@ class bt {
|
|
|
8670
8710
|
if (y === 0)
|
|
8671
8711
|
e.moveTo(S, w);
|
|
8672
8712
|
else {
|
|
8673
|
-
const _ = (y - 1) * c, L = this.renderPoints[y - 1] * a * 0.8,
|
|
8674
|
-
e.bezierCurveTo(
|
|
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);
|
|
8675
8715
|
}
|
|
8676
8716
|
}
|
|
8677
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);
|
|
@@ -8744,17 +8784,17 @@ class un extends Ha {
|
|
|
8744
8784
|
for (let w = 0; w < this._numBars; w++) {
|
|
8745
8785
|
const _ = this._renderHeights[w] * t.height * 0.9, L = v - (w + 1) * (p * 1.2);
|
|
8746
8786
|
e.fillRect(L, y - _ / 2, p, _);
|
|
8747
|
-
const
|
|
8748
|
-
e.fillRect(
|
|
8787
|
+
const T = v + w * (p * 1.2);
|
|
8788
|
+
e.fillRect(T, y - _ / 2, p, _);
|
|
8749
8789
|
}
|
|
8750
8790
|
e.restore();
|
|
8751
8791
|
}
|
|
8752
8792
|
}
|
|
8753
8793
|
customElements.get("volume-visualizer-bars") || customElements.define("volume-visualizer-bars", un);
|
|
8754
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>';
|
|
8755
|
-
var gn = Object.getOwnPropertyDescriptor, mn = (
|
|
8756
|
-
for (var n = a > 1 ? void 0 : a ? gn(e, t) : e, o =
|
|
8757
|
-
(c =
|
|
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);
|
|
8758
8798
|
return n;
|
|
8759
8799
|
};
|
|
8760
8800
|
const Qe = Ne.noConflict();
|
|
@@ -8828,8 +8868,8 @@ let Ft = class extends ae {
|
|
|
8828
8868
|
`;
|
|
8829
8869
|
}
|
|
8830
8870
|
}
|
|
8831
|
-
updated(
|
|
8832
|
-
if (super.updated(
|
|
8871
|
+
updated(i) {
|
|
8872
|
+
if (super.updated(i), this.volumeVisualizerRef.value) {
|
|
8833
8873
|
if (!this.volumeVisualizerInitialized) {
|
|
8834
8874
|
const e = this.volumeVisualizerRef.value, t = b.getAudioAnalyzers();
|
|
8835
8875
|
t && (e.connectAnalyzers(t), Qe.info("volumeVisualizerInitialized set to true"), this.volumeVisualizerInitialized = !0);
|
|
@@ -8849,13 +8889,13 @@ let Ft = class extends ae {
|
|
|
8849
8889
|
</span>`,
|
|
8850
8890
|
)}
|
|
8851
8891
|
* */
|
|
8852
|
-
async _toggleMute(
|
|
8853
|
-
|
|
8892
|
+
async _toggleMute(i) {
|
|
8893
|
+
i.stopPropagation(), Qe.info("_toggleMute called"), await b.toggleMute(), this.volumeVisualizerRef.value && this.volumeVisualizerRef.value.setMuted(b.webAudioMuted);
|
|
8854
8894
|
}
|
|
8855
|
-
async _toggleHangup(
|
|
8856
|
-
|
|
8895
|
+
async _toggleHangup(i) {
|
|
8896
|
+
i.stopPropagation(), Qe.info("_toggleHangup called"), await b.stopAudio();
|
|
8857
8897
|
}
|
|
8858
|
-
_handleTypingActiveChanged(
|
|
8898
|
+
_handleTypingActiveChanged(i, e, t) {
|
|
8859
8899
|
b.webAudioStarted && (Qe.info(`Typing state changed: ${e}`), this.volumeVisualizerRef.value && this.volumeVisualizerRef.value.setThinking(e));
|
|
8860
8900
|
}
|
|
8861
8901
|
};
|
|
@@ -8879,7 +8919,7 @@ class ja extends Error {
|
|
|
8879
8919
|
}
|
|
8880
8920
|
}
|
|
8881
8921
|
const va = (() => {
|
|
8882
|
-
let
|
|
8922
|
+
let i = !1, e = !1;
|
|
8883
8923
|
const t = typeof globalThis.ReadableStream == "function", a = typeof globalThis.Request == "function";
|
|
8884
8924
|
if (t && a)
|
|
8885
8925
|
try {
|
|
@@ -8888,7 +8928,7 @@ const va = (() => {
|
|
|
8888
8928
|
method: "POST",
|
|
8889
8929
|
// @ts-expect-error - Types are outdated.
|
|
8890
8930
|
get duplex() {
|
|
8891
|
-
return
|
|
8931
|
+
return i = !0, "half";
|
|
8892
8932
|
}
|
|
8893
8933
|
}).headers.has("Content-Type");
|
|
8894
8934
|
} catch (n) {
|
|
@@ -8896,7 +8936,7 @@ const va = (() => {
|
|
|
8896
8936
|
return !1;
|
|
8897
8937
|
throw n;
|
|
8898
8938
|
}
|
|
8899
|
-
return
|
|
8939
|
+
return i && !e;
|
|
8900
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 = {
|
|
8901
8941
|
json: "application/json",
|
|
8902
8942
|
text: "text/*",
|
|
@@ -8936,43 +8976,43 @@ const va = (() => {
|
|
|
8936
8976
|
dispatcher: !0,
|
|
8937
8977
|
duplex: !0,
|
|
8938
8978
|
priority: !0
|
|
8939
|
-
}, An = (
|
|
8940
|
-
if (!
|
|
8979
|
+
}, An = (i) => {
|
|
8980
|
+
if (!i)
|
|
8941
8981
|
return 0;
|
|
8942
|
-
if (
|
|
8982
|
+
if (i instanceof FormData) {
|
|
8943
8983
|
let e = 0;
|
|
8944
|
-
for (const [t, a] of
|
|
8984
|
+
for (const [t, a] of i)
|
|
8945
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;
|
|
8946
8986
|
return e;
|
|
8947
8987
|
}
|
|
8948
|
-
if (
|
|
8949
|
-
return
|
|
8950
|
-
if (
|
|
8951
|
-
return
|
|
8952
|
-
if (typeof
|
|
8953
|
-
return new TextEncoder().encode(
|
|
8954
|
-
if (
|
|
8955
|
-
return new TextEncoder().encode(
|
|
8956
|
-
if ("byteLength" in
|
|
8957
|
-
return
|
|
8958
|
-
if (typeof
|
|
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)
|
|
8959
8999
|
try {
|
|
8960
|
-
const e = JSON.stringify(
|
|
9000
|
+
const e = JSON.stringify(i);
|
|
8961
9001
|
return new TextEncoder().encode(e).length;
|
|
8962
9002
|
} catch {
|
|
8963
9003
|
return 0;
|
|
8964
9004
|
}
|
|
8965
9005
|
return 0;
|
|
8966
|
-
}, Mn = (
|
|
8967
|
-
const t = Number(
|
|
9006
|
+
}, Mn = (i, e) => {
|
|
9007
|
+
const t = Number(i.headers.get("content-length")) || 0;
|
|
8968
9008
|
let a = 0;
|
|
8969
|
-
return
|
|
8970
|
-
status:
|
|
8971
|
-
statusText:
|
|
8972
|
-
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
|
|
8973
9013
|
})) : new Response(new ReadableStream({
|
|
8974
9014
|
async start(n) {
|
|
8975
|
-
const o =
|
|
9015
|
+
const o = i.body.getReader();
|
|
8976
9016
|
e && e({ percent: 0, transferredBytes: 0, totalBytes: t }, new Uint8Array());
|
|
8977
9017
|
async function c() {
|
|
8978
9018
|
const { done: p, value: v } = await o.read();
|
|
@@ -8990,19 +9030,19 @@ const va = (() => {
|
|
|
8990
9030
|
await c();
|
|
8991
9031
|
}
|
|
8992
9032
|
}), {
|
|
8993
|
-
status:
|
|
8994
|
-
statusText:
|
|
8995
|
-
headers:
|
|
9033
|
+
status: i.status,
|
|
9034
|
+
statusText: i.statusText,
|
|
9035
|
+
headers: i.headers
|
|
8996
9036
|
});
|
|
8997
|
-
}, In = (
|
|
8998
|
-
const t = An(
|
|
9037
|
+
}, In = (i, e) => {
|
|
9038
|
+
const t = An(i.body);
|
|
8999
9039
|
let a = 0;
|
|
9000
|
-
return new Request(
|
|
9040
|
+
return new Request(i, {
|
|
9001
9041
|
// @ts-expect-error - Types are outdated.
|
|
9002
9042
|
duplex: "half",
|
|
9003
9043
|
body: new ReadableStream({
|
|
9004
9044
|
async start(n) {
|
|
9005
|
-
const o =
|
|
9045
|
+
const o = i.body instanceof ReadableStream ? i.body.getReader() : new Response("").body.getReader();
|
|
9006
9046
|
async function c() {
|
|
9007
9047
|
const { done: p, value: v } = await o.read();
|
|
9008
9048
|
if (p) {
|
|
@@ -9017,28 +9057,28 @@ const va = (() => {
|
|
|
9017
9057
|
}
|
|
9018
9058
|
})
|
|
9019
9059
|
});
|
|
9020
|
-
}, et = (
|
|
9021
|
-
for (const e of
|
|
9060
|
+
}, et = (i) => i !== null && typeof i == "object", ht = (...i) => {
|
|
9061
|
+
for (const e of i)
|
|
9022
9062
|
if ((!et(e) || Array.isArray(e)) && e !== void 0)
|
|
9023
9063
|
throw new TypeError("The `options` argument must be an object");
|
|
9024
|
-
return Xt({}, ...
|
|
9025
|
-
}, Na = (
|
|
9026
|
-
const t = new globalThis.Headers(
|
|
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);
|
|
9027
9067
|
for (const [o, c] of n.entries())
|
|
9028
9068
|
a && c === "undefined" || c === void 0 ? t.delete(o) : t.set(o, c);
|
|
9029
9069
|
return t;
|
|
9030
9070
|
};
|
|
9031
|
-
function ut(
|
|
9032
|
-
return Object.hasOwn(e, t) && e[t] === void 0 ? [] : Xt(
|
|
9071
|
+
function ut(i, e, t) {
|
|
9072
|
+
return Object.hasOwn(e, t) && e[t] === void 0 ? [] : Xt(i[t] ?? [], e[t] ?? []);
|
|
9033
9073
|
}
|
|
9034
|
-
const Ua = (
|
|
9035
|
-
beforeRequest: ut(
|
|
9036
|
-
beforeRetry: ut(
|
|
9037
|
-
afterResponse: ut(
|
|
9038
|
-
beforeError: ut(
|
|
9039
|
-
}), Xt = (...
|
|
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) => {
|
|
9040
9080
|
let e = {}, t = {}, a = {};
|
|
9041
|
-
for (const n of
|
|
9081
|
+
for (const n of i)
|
|
9042
9082
|
if (Array.isArray(n))
|
|
9043
9083
|
Array.isArray(e) || (e = []), e = [...e, ...n];
|
|
9044
9084
|
else if (et(n)) {
|
|
@@ -9047,40 +9087,40 @@ const Ua = (s = {}, e = {}) => ({
|
|
|
9047
9087
|
et(n.hooks) && (a = Ua(a, n.hooks), e.hooks = a), et(n.headers) && (t = Na(t, n.headers), e.headers = t);
|
|
9048
9088
|
}
|
|
9049
9089
|
return e;
|
|
9050
|
-
},
|
|
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 = {
|
|
9051
9091
|
limit: 2,
|
|
9052
|
-
methods:
|
|
9053
|
-
statusCodes:
|
|
9092
|
+
methods: Tn,
|
|
9093
|
+
statusCodes: $n,
|
|
9054
9094
|
afterStatusCodes: Ln,
|
|
9055
9095
|
maxRetryAfter: Number.POSITIVE_INFINITY,
|
|
9056
9096
|
backoffLimit: Number.POSITIVE_INFINITY,
|
|
9057
|
-
delay: (
|
|
9058
|
-
}, zn = (
|
|
9059
|
-
if (typeof
|
|
9097
|
+
delay: (i) => 0.3 * 2 ** (i - 1) * 1e3
|
|
9098
|
+
}, zn = (i = {}) => {
|
|
9099
|
+
if (typeof i == "number")
|
|
9060
9100
|
return {
|
|
9061
9101
|
...wa,
|
|
9062
|
-
limit:
|
|
9102
|
+
limit: i
|
|
9063
9103
|
};
|
|
9064
|
-
if (
|
|
9104
|
+
if (i.methods && !Array.isArray(i.methods))
|
|
9065
9105
|
throw new Error("retry.methods must be an array");
|
|
9066
|
-
if (
|
|
9106
|
+
if (i.statusCodes && !Array.isArray(i.statusCodes))
|
|
9067
9107
|
throw new Error("retry.statusCodes must be an array");
|
|
9068
9108
|
return {
|
|
9069
9109
|
...wa,
|
|
9070
|
-
...
|
|
9110
|
+
...i
|
|
9071
9111
|
};
|
|
9072
9112
|
};
|
|
9073
|
-
async function Pn(
|
|
9113
|
+
async function Pn(i, e, t, a) {
|
|
9074
9114
|
return new Promise((n, o) => {
|
|
9075
9115
|
const c = setTimeout(() => {
|
|
9076
|
-
t && t.abort(), o(new ja(
|
|
9116
|
+
t && t.abort(), o(new ja(i));
|
|
9077
9117
|
}, a.timeout);
|
|
9078
|
-
a.fetch(
|
|
9118
|
+
a.fetch(i, e).then(n).catch(o).then(() => {
|
|
9079
9119
|
clearTimeout(c);
|
|
9080
9120
|
});
|
|
9081
9121
|
});
|
|
9082
9122
|
}
|
|
9083
|
-
async function qn(
|
|
9123
|
+
async function qn(i, { signal: e }) {
|
|
9084
9124
|
return new Promise((t, a) => {
|
|
9085
9125
|
e && (e.throwIfAborted(), e.addEventListener("abort", n, { once: !0 }));
|
|
9086
9126
|
function n() {
|
|
@@ -9088,15 +9128,15 @@ async function qn(s, { signal: e }) {
|
|
|
9088
9128
|
}
|
|
9089
9129
|
const o = setTimeout(() => {
|
|
9090
9130
|
e?.removeEventListener("abort", n), t();
|
|
9091
|
-
},
|
|
9131
|
+
}, i);
|
|
9092
9132
|
});
|
|
9093
9133
|
}
|
|
9094
|
-
const Bn = (
|
|
9134
|
+
const Bn = (i, e) => {
|
|
9095
9135
|
const t = {};
|
|
9096
9136
|
for (const a in e)
|
|
9097
|
-
!(a in Sn) && !(a in Cn) && !(a in
|
|
9137
|
+
!(a in Sn) && !(a in Cn) && !(a in i) && (t[a] = e[a]);
|
|
9098
9138
|
return t;
|
|
9099
|
-
}, On = (
|
|
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;
|
|
9100
9140
|
class Ct {
|
|
9101
9141
|
static create(e, t) {
|
|
9102
9142
|
const a = new Ct(e, t), n = async () => {
|
|
@@ -9155,7 +9195,7 @@ class Ct {
|
|
|
9155
9195
|
beforeError: [],
|
|
9156
9196
|
afterResponse: []
|
|
9157
9197
|
}, t.hooks),
|
|
9158
|
-
method:
|
|
9198
|
+
method: En(t.method ?? this._input.method ?? "GET"),
|
|
9159
9199
|
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
|
|
9160
9200
|
prefixUrl: String(t.prefixUrl || ""),
|
|
9161
9201
|
retry: zn(t.retry),
|
|
@@ -9241,11 +9281,11 @@ class Ct {
|
|
|
9241
9281
|
}
|
|
9242
9282
|
}
|
|
9243
9283
|
/*! MIT License © Sindre Sorhus */
|
|
9244
|
-
const Ht = (
|
|
9245
|
-
const e = (t, a) => Ct.create(t, ht(
|
|
9284
|
+
const Ht = (i) => {
|
|
9285
|
+
const e = (t, a) => Ct.create(t, ht(i, a));
|
|
9246
9286
|
for (const t of Da)
|
|
9247
|
-
e[t] = (a, n) => Ct.create(a, ht(
|
|
9248
|
-
return e.create = (t) => Ht(ht(t)), e.extend = (t) => (typeof t == "function" && (t = t(
|
|
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;
|
|
9249
9289
|
}, Rn = Ht();
|
|
9250
9290
|
Rn.extend({
|
|
9251
9291
|
hooks: {
|
|
@@ -9255,12 +9295,12 @@ Rn.extend({
|
|
|
9255
9295
|
]
|
|
9256
9296
|
}
|
|
9257
9297
|
});
|
|
9258
|
-
async function Fn(
|
|
9298
|
+
async function Fn(i, e) {
|
|
9259
9299
|
const { onmessage: t, onclose: a, ...n } = e, o = async (c, p) => {
|
|
9260
9300
|
const { value: v, done: y } = await p.read();
|
|
9261
9301
|
y ? (c.close(), a?.()) : (t?.(v), c.enqueue(v), o(c, p));
|
|
9262
9302
|
};
|
|
9263
|
-
return n.body && typeof n.body == "object" && (n.body = JSON.stringify(n.body)), console.log("Fetching:", n), fetch(
|
|
9303
|
+
return n.body && typeof n.body == "object" && (n.body = JSON.stringify(n.body)), console.log("Fetching:", n), fetch(i, n).then((c) => {
|
|
9264
9304
|
const p = c.body.getReader();
|
|
9265
9305
|
return new ReadableStream({
|
|
9266
9306
|
start(y) {
|
|
@@ -9276,13 +9316,13 @@ async function Fn(s, e) {
|
|
|
9276
9316
|
}).text()
|
|
9277
9317
|
);
|
|
9278
9318
|
}
|
|
9279
|
-
var Hn = Object.defineProperty, jn = Object.getOwnPropertyDescriptor, V = (
|
|
9280
|
-
for (var n = a > 1 ? void 0 : a ? jn(e, t) : e, o =
|
|
9281
|
-
(c =
|
|
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);
|
|
9282
9322
|
return a && n && Hn(e, t, n), n;
|
|
9283
9323
|
};
|
|
9284
|
-
const
|
|
9285
|
-
|
|
9324
|
+
const Te = Ne.noConflict();
|
|
9325
|
+
Te.setLevel("info");
|
|
9286
9326
|
let H = class extends ae {
|
|
9287
9327
|
constructor() {
|
|
9288
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">
|
|
@@ -9303,47 +9343,47 @@ let H = class extends ae {
|
|
|
9303
9343
|
<rect width="400" height="400" fill="white"/>
|
|
9304
9344
|
</clipPath>
|
|
9305
9345
|
</defs>
|
|
9306
|
-
</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 = (
|
|
9307
|
-
this._addMessageHandler(
|
|
9308
|
-
}, this.handleStateEvent = (
|
|
9309
|
-
this._stateEventHandler(
|
|
9310
|
-
}, this.handleToggleEvent = (
|
|
9311
|
-
this._chatbotToggleHandler(
|
|
9312
|
-
}, this.handleFormSubmitEvent = (
|
|
9313
|
-
this._formSubmitHandler(
|
|
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);
|
|
9314
9354
|
}, this.fetchStream = Fn;
|
|
9315
9355
|
}
|
|
9316
9356
|
/**
|
|
9317
9357
|
* decodeStreamData
|
|
9318
9358
|
*/
|
|
9319
|
-
decodeStreamData(
|
|
9320
|
-
return new TextDecoder().decode(
|
|
9359
|
+
decodeStreamData(i) {
|
|
9360
|
+
return new TextDecoder().decode(i);
|
|
9321
9361
|
}
|
|
9322
9362
|
addMessage() {
|
|
9323
|
-
const
|
|
9363
|
+
const i = {
|
|
9324
9364
|
author: "assistant",
|
|
9325
9365
|
type: "text",
|
|
9326
9366
|
isThinking: !0,
|
|
9327
9367
|
data: {}
|
|
9328
9368
|
};
|
|
9329
|
-
return b.addMessage(
|
|
9369
|
+
return b.addMessage(i), i;
|
|
9330
9370
|
}
|
|
9331
|
-
addTestMessage(
|
|
9371
|
+
addTestMessage(i = "") {
|
|
9332
9372
|
const t = {
|
|
9333
9373
|
author: "assistant",
|
|
9334
9374
|
type: "text",
|
|
9335
9375
|
isThinking: !1,
|
|
9336
9376
|
data: {
|
|
9337
|
-
text:
|
|
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."
|
|
9338
9378
|
}
|
|
9339
9379
|
};
|
|
9340
9380
|
return b.addMessage(t), t;
|
|
9341
9381
|
}
|
|
9342
|
-
addActions(
|
|
9343
|
-
b.addActions(
|
|
9382
|
+
addActions(i = []) {
|
|
9383
|
+
b.addActions(i);
|
|
9344
9384
|
}
|
|
9345
9385
|
render() {
|
|
9346
|
-
return b.disabled && !this.alwaysOpen ? (
|
|
9386
|
+
return b.disabled && !this.alwaysOpen ? (Te.info("Bot is disabled until settings are loaded"), null) : u`
|
|
9347
9387
|
<div class="cb-wrapper${b.open ? " cb-open" : ""}" part="wrapper${b.open ? " open" : ""}" exportparts="wrapper${b.open ? " open" : ""}">
|
|
9348
9388
|
<cb-header title="${this.name}" exportparts="header, header-logo, header-title, header-close"></cb-header>
|
|
9349
9389
|
<cb-message-list
|
|
@@ -9384,16 +9424,16 @@ let H = class extends ae {
|
|
|
9384
9424
|
></cb-user-input>`;
|
|
9385
9425
|
}
|
|
9386
9426
|
connectedCallback() {
|
|
9387
|
-
super.connectedCallback(),
|
|
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);
|
|
9388
9428
|
}
|
|
9389
|
-
extractCssVariable(
|
|
9390
|
-
let a =
|
|
9429
|
+
extractCssVariable(i, e, t) {
|
|
9430
|
+
let a = i.getPropertyValue(e).trim();
|
|
9391
9431
|
return a && a != "" ? a : t;
|
|
9392
9432
|
}
|
|
9393
9433
|
// Extract css variables that control the appearance of the chatbot
|
|
9394
9434
|
initCssVariables() {
|
|
9395
|
-
let
|
|
9396
|
-
b.appearanceAnchorPopupPosition = this.extractCssVariable(
|
|
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");
|
|
9397
9437
|
}
|
|
9398
9438
|
/*
|
|
9399
9439
|
private getPopupPlacement() {
|
|
@@ -9413,40 +9453,40 @@ let H = class extends ae {
|
|
|
9413
9453
|
|
|
9414
9454
|
*/
|
|
9415
9455
|
disconnectedCallback() {
|
|
9416
|
-
|
|
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);
|
|
9417
9457
|
}
|
|
9418
9458
|
// This is called when component is loaded, with all the settings (props) values
|
|
9419
9459
|
// Use to initialize
|
|
9420
9460
|
// This is also called when state changes - ??? - i.e. when message added to the array
|
|
9421
|
-
updated(
|
|
9422
|
-
super.updated(
|
|
9423
|
-
this._scrollToBottom();
|
|
9424
|
-
},
|
|
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));
|
|
9425
9465
|
}
|
|
9426
9466
|
// initialize setting
|
|
9427
9467
|
_initSetting() {
|
|
9428
|
-
|
|
9429
|
-
const
|
|
9430
|
-
|
|
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);
|
|
9431
9471
|
let e = {};
|
|
9432
9472
|
try {
|
|
9433
9473
|
e = JSON.parse(this.prefilledFormFields);
|
|
9434
9474
|
} catch (t) {
|
|
9435
|
-
|
|
9475
|
+
Te.error(`Failed to parse prefilled-form-fields attribute value, error: ${t?.message || ""}`), e = {};
|
|
9436
9476
|
}
|
|
9437
9477
|
b.setPrefilledFormFields(e), this.open && (b.open = !0), this.alwaysOpen && (b.open = !0, b.alwaysOpen = !0);
|
|
9438
9478
|
}
|
|
9439
|
-
setLoading(
|
|
9440
|
-
this.loading =
|
|
9479
|
+
setLoading(i) {
|
|
9480
|
+
this.loading = i;
|
|
9441
9481
|
}
|
|
9442
9482
|
clearConversation() {
|
|
9443
9483
|
b.clearConversation();
|
|
9444
9484
|
}
|
|
9445
|
-
setPrefilledFormFields(
|
|
9446
|
-
b.setPrefilledFormFields(
|
|
9485
|
+
setPrefilledFormFields(i) {
|
|
9486
|
+
b.setPrefilledFormFields(i);
|
|
9447
9487
|
}
|
|
9448
|
-
setOpen(
|
|
9449
|
-
b.open =
|
|
9488
|
+
setOpen(i = !1) {
|
|
9489
|
+
b.open = i;
|
|
9450
9490
|
}
|
|
9451
9491
|
getOpen() {
|
|
9452
9492
|
return b.open;
|
|
@@ -9454,19 +9494,19 @@ let H = class extends ae {
|
|
|
9454
9494
|
toggleOpen() {
|
|
9455
9495
|
b.open = !b.open;
|
|
9456
9496
|
}
|
|
9457
|
-
setInputValue(
|
|
9458
|
-
this.
|
|
9497
|
+
setInputValue(i = "") {
|
|
9498
|
+
this.emitExt("c7o:bot:input:setvalue", {
|
|
9459
9499
|
detail: {
|
|
9460
|
-
inputValue:
|
|
9500
|
+
inputValue: i
|
|
9461
9501
|
}
|
|
9462
9502
|
});
|
|
9463
9503
|
}
|
|
9464
9504
|
// Set conversation context.
|
|
9465
9505
|
// It can be any data related with current user / current conversation,
|
|
9466
9506
|
// for example, user profile, current product user is viewing on the web page, etc.
|
|
9467
|
-
setContext(
|
|
9468
|
-
b.setContext(
|
|
9469
|
-
|
|
9507
|
+
setContext(i = {}) {
|
|
9508
|
+
b.setContext(i).catch((e) => {
|
|
9509
|
+
Te.error(`Failed to set context, error: ${e?.message || ""}`);
|
|
9470
9510
|
});
|
|
9471
9511
|
}
|
|
9472
9512
|
getContext() {
|
|
@@ -9478,12 +9518,12 @@ let H = class extends ae {
|
|
|
9478
9518
|
// check auth
|
|
9479
9519
|
_checkAuth() {
|
|
9480
9520
|
}
|
|
9481
|
-
_stateEventHandler(
|
|
9482
|
-
const e =
|
|
9521
|
+
_stateEventHandler(i) {
|
|
9522
|
+
const e = i.detail, t = e?.type || null;
|
|
9483
9523
|
if (t)
|
|
9484
9524
|
switch (t) {
|
|
9485
9525
|
case "botInitialized": {
|
|
9486
|
-
this.
|
|
9526
|
+
this.emitExt("c7o:bot:botInitialized", {
|
|
9487
9527
|
detail: {
|
|
9488
9528
|
botSettings: e.botSettings
|
|
9489
9529
|
}
|
|
@@ -9491,11 +9531,11 @@ let H = class extends ae {
|
|
|
9491
9531
|
break;
|
|
9492
9532
|
}
|
|
9493
9533
|
case "botConnected": {
|
|
9494
|
-
this.
|
|
9534
|
+
this.emitExt("c7o:bot:botConnected");
|
|
9495
9535
|
break;
|
|
9496
9536
|
}
|
|
9497
9537
|
case "actionPresented": {
|
|
9498
|
-
this.
|
|
9538
|
+
this.emitExt("c7o:bot:actionPresented", {
|
|
9499
9539
|
detail: {
|
|
9500
9540
|
action: e.action
|
|
9501
9541
|
}
|
|
@@ -9503,7 +9543,7 @@ let H = class extends ae {
|
|
|
9503
9543
|
break;
|
|
9504
9544
|
}
|
|
9505
9545
|
case "actionCompleted": {
|
|
9506
|
-
this.
|
|
9546
|
+
this.emitExt("c7o:bot:actionCompleted", {
|
|
9507
9547
|
detail: {
|
|
9508
9548
|
action: e.action,
|
|
9509
9549
|
data: e.data
|
|
@@ -9513,48 +9553,72 @@ let H = class extends ae {
|
|
|
9513
9553
|
}
|
|
9514
9554
|
}
|
|
9515
9555
|
}
|
|
9516
|
-
sanitizeInputText(
|
|
9517
|
-
return !
|
|
9556
|
+
sanitizeInputText(i) {
|
|
9557
|
+
return !i || typeof i != "string" ? "" : i.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">");
|
|
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);
|
|
9518
9584
|
}
|
|
9519
|
-
_addMessageHandler(
|
|
9520
|
-
console.log("_addMessageHandler called",
|
|
9521
|
-
const e =
|
|
9585
|
+
_addMessageHandler(i) {
|
|
9586
|
+
console.log("_addMessageHandler called", i);
|
|
9587
|
+
const e = i.detail, t = e?.data?.text || null;
|
|
9522
9588
|
if (!t || typeof t != "string" || t.trim() === "") {
|
|
9523
|
-
console.log("_addMessageHandler: input text is empty, ignored",
|
|
9589
|
+
console.log("_addMessageHandler: input text is empty, ignored", i);
|
|
9524
9590
|
return;
|
|
9525
9591
|
}
|
|
9526
|
-
|
|
9527
|
-
detail: e
|
|
9528
|
-
})), b.sendMessage(e);
|
|
9592
|
+
this._processSendMessage(e);
|
|
9529
9593
|
}
|
|
9530
|
-
_chatbotToggleHandler(
|
|
9531
|
-
const e =
|
|
9532
|
-
b.open = e.open, this.
|
|
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();
|
|
9533
9597
|
}
|
|
9534
|
-
_deleteMessageHandler(
|
|
9535
|
-
const e =
|
|
9598
|
+
_deleteMessageHandler(i) {
|
|
9599
|
+
const e = i.detail;
|
|
9536
9600
|
b.removeMessage(e.id);
|
|
9537
9601
|
}
|
|
9538
|
-
async _uploadFileHandler(
|
|
9539
|
-
const e =
|
|
9602
|
+
async _uploadFileHandler(i) {
|
|
9603
|
+
const e = i.detail;
|
|
9540
9604
|
await b.uploadFiles(e.files);
|
|
9541
9605
|
}
|
|
9542
|
-
async _audioToggleHandler(
|
|
9543
|
-
|
|
9606
|
+
async _audioToggleHandler(i) {
|
|
9607
|
+
Te.info("_audioToggleHandler called"), await b.toggleAudio();
|
|
9544
9608
|
}
|
|
9545
9609
|
// setting confirm handler
|
|
9546
|
-
_settingConfirmHandler(
|
|
9547
|
-
const e =
|
|
9610
|
+
_settingConfirmHandler(i) {
|
|
9611
|
+
const e = i.detail;
|
|
9548
9612
|
b.setSetting(e.setting), this.showSetting = !1, this._checkAuth();
|
|
9549
9613
|
}
|
|
9550
|
-
_formSubmitHandler(
|
|
9551
|
-
const e =
|
|
9552
|
-
e.conversationId = b.conversationId, this.
|
|
9614
|
+
_formSubmitHandler(i) {
|
|
9615
|
+
const e = i.detail;
|
|
9616
|
+
e.conversationId = b.conversationId, this.emitExt("c7o:bot:formSubmit", {
|
|
9553
9617
|
detail: e
|
|
9554
9618
|
});
|
|
9555
9619
|
}
|
|
9556
9620
|
// scroll to bottom
|
|
9557
|
-
_scrollToBottom(
|
|
9621
|
+
_scrollToBottom(i = !1) {
|
|
9558
9622
|
this._messageList?.scrollToBottom();
|
|
9559
9623
|
}
|
|
9560
9624
|
};
|