@enegelai/bot-widget 1.14.1 → 1.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/enegelaibot.umd.js +32 -32
- package/dist/index.es.js +978 -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,18 +6709,19 @@ let pe = class extends ae {
|
|
|
6674
6709
|
<div class="cb-input-form-title" part="form-title">${this.form.title}</div>
|
|
6675
6710
|
${He(
|
|
6676
6711
|
this.form.fields,
|
|
6677
|
-
(
|
|
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) {
|
|
6716
|
+
case "name":
|
|
6681
6717
|
case "string":
|
|
6682
6718
|
return u`<sl-input
|
|
6683
6719
|
value="${t}"
|
|
6684
6720
|
part="form-input"
|
|
6685
6721
|
class="cb-input-form-input"
|
|
6686
|
-
id="${"cb-form-field" +
|
|
6687
|
-
name="${
|
|
6688
|
-
label="${
|
|
6722
|
+
id="${"cb-form-field" + i.name}"
|
|
6723
|
+
name="${i.name}"
|
|
6724
|
+
label="${i.title}"
|
|
6689
6725
|
?required="${e}"
|
|
6690
6726
|
></sl-input>`;
|
|
6691
6727
|
case "email":
|
|
@@ -6693,10 +6729,10 @@ let pe = class extends ae {
|
|
|
6693
6729
|
part="form-input"
|
|
6694
6730
|
value="${t}"
|
|
6695
6731
|
class="cb-input-form-input"
|
|
6696
|
-
id="${"cb-form-field" +
|
|
6697
|
-
name="${
|
|
6732
|
+
id="${"cb-form-field" + i.name}"
|
|
6733
|
+
name="${i.name}"
|
|
6698
6734
|
type="email"
|
|
6699
|
-
label="${
|
|
6735
|
+
label="${i.title}"
|
|
6700
6736
|
?required="${e}"
|
|
6701
6737
|
></sl-input>`;
|
|
6702
6738
|
case "phone":
|
|
@@ -6704,24 +6740,24 @@ let pe = class extends ae {
|
|
|
6704
6740
|
part="form-input"
|
|
6705
6741
|
value="${t}"
|
|
6706
6742
|
class="cb-input-form-input"
|
|
6707
|
-
id="${"cb-form-field" +
|
|
6708
|
-
name="${
|
|
6743
|
+
id="${"cb-form-field" + i.name}"
|
|
6744
|
+
name="${i.name}"
|
|
6709
6745
|
type="tel"
|
|
6710
|
-
label="${
|
|
6746
|
+
label="${i.title}"
|
|
6711
6747
|
?required="${e}"
|
|
6712
6748
|
></sl-input>`;
|
|
6713
6749
|
case "select": {
|
|
6714
|
-
const a = Array.isArray(
|
|
6750
|
+
const a = Array.isArray(i.options) ? i.options : i.options.split(",").map((n) => n.trim());
|
|
6715
6751
|
return t || a[0], u`<div class="cb-form-field">
|
|
6716
6752
|
<label class="cb-form-field-label"
|
|
6717
|
-
>${
|
|
6753
|
+
>${i.title}
|
|
6718
6754
|
${N(
|
|
6719
6755
|
e,
|
|
6720
6756
|
() => u`*`,
|
|
6721
6757
|
() => u``
|
|
6722
6758
|
)}
|
|
6723
6759
|
</label>
|
|
6724
|
-
<select id="${"cb-form-field" +
|
|
6760
|
+
<select id="${"cb-form-field" + i.name}" class="cb-form-field-select" part="form-input" name="${i.name}">
|
|
6725
6761
|
${He(
|
|
6726
6762
|
a,
|
|
6727
6763
|
(n, o) => o,
|
|
@@ -6736,8 +6772,8 @@ let pe = class extends ae {
|
|
|
6736
6772
|
<sl-button class="cb-input-form-submit" part="form-submit" variant="primary" pill type="submit">Send</sl-button>
|
|
6737
6773
|
</form>` : null;
|
|
6738
6774
|
}
|
|
6739
|
-
handleFormSubmit(
|
|
6740
|
-
|
|
6775
|
+
handleFormSubmit(i) {
|
|
6776
|
+
i.preventDefault();
|
|
6741
6777
|
const e = {};
|
|
6742
6778
|
if (Array.isArray(this.form.fields))
|
|
6743
6779
|
for (let t = 0; t < this.form.fields.length; t++) {
|
|
@@ -6751,13 +6787,13 @@ let pe = class extends ae {
|
|
|
6751
6787
|
}
|
|
6752
6788
|
}
|
|
6753
6789
|
b.submitForm(e).then(() => {
|
|
6754
|
-
|
|
6790
|
+
Ee.info("Form submitted", e), this.emit("form:submit", {
|
|
6755
6791
|
detail: {
|
|
6756
6792
|
formData: e
|
|
6757
6793
|
}
|
|
6758
6794
|
});
|
|
6759
6795
|
}).catch((t) => {
|
|
6760
|
-
|
|
6796
|
+
Ee.error(`Error when submitting form: ${t.message}`);
|
|
6761
6797
|
});
|
|
6762
6798
|
}
|
|
6763
6799
|
/* Form sample
|
|
@@ -6776,41 +6812,46 @@ let pe = class extends ae {
|
|
|
6776
6812
|
<div class="cb-actions-list">
|
|
6777
6813
|
${He(
|
|
6778
6814
|
this.actions,
|
|
6779
|
-
(
|
|
6780
|
-
(
|
|
6815
|
+
(i) => i,
|
|
6816
|
+
(i) => this.renderAction(i)
|
|
6781
6817
|
)}
|
|
6782
6818
|
</div>
|
|
6783
6819
|
`;
|
|
6784
6820
|
}
|
|
6785
6821
|
scrollToBottom() {
|
|
6822
|
+
if (this._userInterruptedAutoScroll) {
|
|
6823
|
+
if (this._userInterruptedMessagesLength === this.messages.length)
|
|
6824
|
+
return;
|
|
6825
|
+
this._userInterruptedAutoScroll = !1, this._userInterruptedMessagesLength = 0;
|
|
6826
|
+
}
|
|
6786
6827
|
this._messageListBottomAnchor.scrollIntoView({ behavior: "smooth", block: "end", inline: "nearest" });
|
|
6787
6828
|
}
|
|
6788
|
-
renderAction(
|
|
6789
|
-
switch (
|
|
6829
|
+
renderAction(i) {
|
|
6830
|
+
switch (i.type) {
|
|
6790
6831
|
case "calendlyMeeting":
|
|
6791
|
-
return this.renderCalendlyAction(
|
|
6832
|
+
return this.renderCalendlyAction(i);
|
|
6792
6833
|
case "link":
|
|
6793
|
-
return this.renderLinkAction(
|
|
6834
|
+
return this.renderLinkAction(i);
|
|
6794
6835
|
case "hubspotMeeting":
|
|
6795
|
-
return this.renderHubspotMeetingAction(
|
|
6836
|
+
return this.renderHubspotMeetingAction(i);
|
|
6796
6837
|
}
|
|
6797
6838
|
return null;
|
|
6798
6839
|
}
|
|
6799
|
-
handleCalendlyEvent(
|
|
6800
|
-
switch (
|
|
6840
|
+
handleCalendlyEvent(i) {
|
|
6841
|
+
switch (Ee.info("Got Calendly Event:", i.data), i.data.event) {
|
|
6801
6842
|
case "calendly.event_scheduled": {
|
|
6802
6843
|
const e = this.activeCalendlyAction;
|
|
6803
|
-
e >= 0 && (b.removeAction(e, !0,
|
|
6844
|
+
e >= 0 && (b.removeAction(e, !0, i.data), b.addSystemMessage("Your meeting has been scheduled!"), this.activeCalendlyAction = -1);
|
|
6804
6845
|
}
|
|
6805
6846
|
}
|
|
6806
6847
|
}
|
|
6807
|
-
invokeLinkAction(
|
|
6808
|
-
|
|
6848
|
+
invokeLinkAction(i = {}) {
|
|
6849
|
+
Ee.info("invokeLinkAction:", i), window.open(i.url, "_blank");
|
|
6809
6850
|
}
|
|
6810
|
-
invokeCalendlyAction(
|
|
6811
|
-
return
|
|
6851
|
+
invokeCalendlyAction(i = {}) {
|
|
6852
|
+
return Ee.info("invokeCalendlyAction:", i), "Calendly" in window && (this.activeCalendlyAction = i.internalId, window.Calendly.initPopupWidget({ url: i.url })), !1;
|
|
6812
6853
|
}
|
|
6813
|
-
renderCalendlyAction(
|
|
6854
|
+
renderCalendlyAction(i) {
|
|
6814
6855
|
if (!("Calendly" in window) && !this.calendlyInjected) {
|
|
6815
6856
|
let e = document.createElement("link");
|
|
6816
6857
|
e.href = "https://assets.calendly.com/assets/external/widget.css", e.rel = "stylesheet", document.body.appendChild(e);
|
|
@@ -6823,7 +6864,7 @@ let pe = class extends ae {
|
|
|
6823
6864
|
}
|
|
6824
6865
|
return u`
|
|
6825
6866
|
<div class="cb-actions-list">
|
|
6826
|
-
<div class="cb-action ripple" @click="${this.invokeCalendlyAction.bind(this,
|
|
6867
|
+
<div class="cb-action ripple" @click="${this.invokeCalendlyAction.bind(this, i)}">
|
|
6827
6868
|
<div class="cb-action-icon">
|
|
6828
6869
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
|
|
6829
6870
|
<path
|
|
@@ -6832,58 +6873,58 @@ let pe = class extends ae {
|
|
|
6832
6873
|
/>
|
|
6833
6874
|
</svg>
|
|
6834
6875
|
</div>
|
|
6835
|
-
${
|
|
6876
|
+
${i.title}
|
|
6836
6877
|
</div>
|
|
6837
6878
|
</div>
|
|
6838
6879
|
`;
|
|
6839
6880
|
}
|
|
6840
|
-
renderLinkAction(
|
|
6881
|
+
renderLinkAction(i) {
|
|
6841
6882
|
return u`
|
|
6842
6883
|
<div class="cb-actions-list">
|
|
6843
|
-
<div class="cb-action ripple" @click="${this.invokeLinkAction.bind(this,
|
|
6884
|
+
<div class="cb-action ripple" @click="${this.invokeLinkAction.bind(this, i)}">
|
|
6844
6885
|
<div class="cb-action-icon">
|
|
6845
6886
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
|
|
6846
6887
|
<path d="M14,3V5H17.59L7.76,14.83L9.17,16.24L19,6.41V10H21V3M19,19H5V5H12V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V12H19V19Z" fill="currentColor" />
|
|
6847
6888
|
</svg>
|
|
6848
6889
|
</div>
|
|
6849
|
-
${
|
|
6890
|
+
${i.title}
|
|
6850
6891
|
</div>
|
|
6851
6892
|
</div>
|
|
6852
6893
|
`;
|
|
6853
6894
|
}
|
|
6854
|
-
invokeHubspotMeetingAction(
|
|
6895
|
+
invokeHubspotMeetingAction(i = {}) {
|
|
6855
6896
|
const e = Date.now();
|
|
6856
6897
|
if (this.activeHubspotMeetingAction !== -1) {
|
|
6857
|
-
|
|
6898
|
+
Ee.info(`invokeHubspotMeetingAction: action ${this.activeHubspotMeetingAction} is already active - ignored`);
|
|
6858
6899
|
return;
|
|
6859
6900
|
}
|
|
6860
|
-
if (
|
|
6901
|
+
if (Ee.info("invokeHubspotMeetingAction:", i), "hbspt" in window && typeof window.hbspt?.meetings?.create == "function") {
|
|
6861
6902
|
const t = document.getElementById("enegelai-bot-hubspot-meeting-container"), a = document.querySelector(".enegelai-bot-hubspot-meeting-widget");
|
|
6862
6903
|
if (t && a) {
|
|
6863
|
-
const n =
|
|
6864
|
-
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, {
|
|
6865
6906
|
triggered: e
|
|
6866
6907
|
});
|
|
6867
6908
|
}
|
|
6868
6909
|
}
|
|
6869
6910
|
return !1;
|
|
6870
6911
|
}
|
|
6871
|
-
handleHubspotEvent(
|
|
6872
|
-
if (
|
|
6912
|
+
handleHubspotEvent(i) {
|
|
6913
|
+
if (Ee.info("Got Hubspot Event:", i.data), !(i?.data?.meetingBookSucceeded || !1))
|
|
6873
6914
|
return;
|
|
6874
6915
|
const t = this.activeHubspotMeetingAction;
|
|
6875
6916
|
if (t >= 0) {
|
|
6876
|
-
b.removeAction(t, !0,
|
|
6917
|
+
b.removeAction(t, !0, i.data), b.addSystemMessage("Your meeting has been scheduled!"), this.activeHubspotMeetingAction = -1;
|
|
6877
6918
|
const a = document.getElementById("enegelai-bot-hubspot-meeting-container");
|
|
6878
6919
|
a && (a.style.display = "none");
|
|
6879
6920
|
}
|
|
6880
6921
|
}
|
|
6881
6922
|
handleHubspotMeetingCancel() {
|
|
6882
6923
|
this.activeHubspotMeetingAction = -1;
|
|
6883
|
-
const
|
|
6884
|
-
|
|
6924
|
+
const i = document.getElementById("enegelai-bot-hubspot-meeting-container");
|
|
6925
|
+
i && (i.style.display = "none");
|
|
6885
6926
|
}
|
|
6886
|
-
renderHubspotMeetingAction(
|
|
6927
|
+
renderHubspotMeetingAction(i) {
|
|
6887
6928
|
if (!this.hubspotMeetingInjected) {
|
|
6888
6929
|
const e = document.createElement("script");
|
|
6889
6930
|
e.src = "https://static.hsappstatic.net/MeetingsEmbed/ex/MeetingsEmbedCode.js", document.getElementsByTagName("head")[0].appendChild(e);
|
|
@@ -6902,11 +6943,11 @@ let pe = class extends ae {
|
|
|
6902
6943
|
this.handleHubspotMeetingCancel();
|
|
6903
6944
|
}), this.hubspotMeetingInjected = !0;
|
|
6904
6945
|
}
|
|
6905
|
-
return
|
|
6906
|
-
this.invokeHubspotMeetingAction(
|
|
6946
|
+
return i?.hubspotMeetingAuto && !("triggered" in i) && setTimeout(() => {
|
|
6947
|
+
this.invokeHubspotMeetingAction(i);
|
|
6907
6948
|
}, 500), u`
|
|
6908
6949
|
<div class="cb-actions-list">
|
|
6909
|
-
<div class="cb-action ripple" @click="${this.invokeHubspotMeetingAction.bind(this,
|
|
6950
|
+
<div class="cb-action ripple" @click="${this.invokeHubspotMeetingAction.bind(this, i)}">
|
|
6910
6951
|
<div class="cb-action-icon">
|
|
6911
6952
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
|
|
6912
6953
|
<path
|
|
@@ -6915,7 +6956,7 @@ let pe = class extends ae {
|
|
|
6915
6956
|
/>
|
|
6916
6957
|
</svg>
|
|
6917
6958
|
</div>
|
|
6918
|
-
${
|
|
6959
|
+
${i.title}
|
|
6919
6960
|
</div>
|
|
6920
6961
|
</div>
|
|
6921
6962
|
`;
|
|
@@ -6995,9 +7036,9 @@ const zs = Z`
|
|
|
6995
7036
|
margin: 6px 2px;
|
|
6996
7037
|
}
|
|
6997
7038
|
`, za = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M15.854.146a.5.5 0 0 1 .11.54l-5.819 14.547a.75.75 0 0 1-1.329.124l-3.178-4.995L.643 7.184a.75.75 0 0 1 .124-1.33L15.314.037a.5.5 0 0 1 .54.11ZM6.636 10.07l2.761 4.338L14.13 2.576zm6.787-8.201L1.591 6.602l4.339 2.76z"/></svg>', Pa = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M4.5 3a2.5 2.5 0 0 1 5 0v9a1.5 1.5 0 0 1-3 0V5a.5.5 0 0 1 1 0v7a.5.5 0 0 0 1 0V3a1.5 1.5 0 1 0-3 0v9a2.5 2.5 0 0 0 5 0V5a.5.5 0 0 1 1 0v7a3.5 3.5 0 1 1-7 0z"/></svg>', qa = '<svg viewBox="0 0 24 24" width="26px" height="26px" ><path fill="currentColor" d="M12 14c1.66 0 2.99-1.34 2.99-3L15 5c0-1.66-1.34-3-3-3S9 3.34 9 5v6c0 1.66 1.34 3 3 3m5.3-3c0 3-2.54 5.1-5.3 5.1S6.7 14 6.7 11H5c0 3.41 2.72 6.23 6 6.72V21h2v-3.28c3.28-.48 6-3.3 6-6.72z"/></svg>', Wt = '<svg viewBox="0 0 24 24" width="26px" height="26px" ><path fill="currentColor" d="M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12z"/></svg>';
|
|
6998
|
-
var Ps = Object.defineProperty, qs = Object.getOwnPropertyDescriptor, _e = (
|
|
6999
|
-
for (var n = a > 1 ? void 0 : a ? qs(e, t) : e, o =
|
|
7000
|
-
(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);
|
|
7001
7042
|
return a && n && Ps(e, t, n), n;
|
|
7002
7043
|
};
|
|
7003
7044
|
let ge = class extends ae {
|
|
@@ -7007,17 +7048,17 @@ let ge = class extends ae {
|
|
|
7007
7048
|
connectedCallback() {
|
|
7008
7049
|
super.connectedCallback(), addEventListener("form:submit", this._formSubmitHandler.bind(this)), addEventListener("c7o:bot:input:setvalue", this._inputSetValueHandler.bind(this));
|
|
7009
7050
|
}
|
|
7010
|
-
async _inputSetValueHandler(
|
|
7011
|
-
const e =
|
|
7051
|
+
async _inputSetValueHandler(i) {
|
|
7052
|
+
const e = i, t = typeof e?.detail?.inputValue == "string" && e?.detail?.inputValue || "";
|
|
7012
7053
|
this.value = t;
|
|
7013
7054
|
}
|
|
7014
|
-
async _formSubmitHandler(
|
|
7055
|
+
async _formSubmitHandler(i) {
|
|
7015
7056
|
requestIdleCallback(() => {
|
|
7016
7057
|
this.inputElement.focus();
|
|
7017
7058
|
});
|
|
7018
7059
|
}
|
|
7019
|
-
_inputChangeHandler(
|
|
7020
|
-
const e =
|
|
7060
|
+
_inputChangeHandler(i) {
|
|
7061
|
+
const e = i.target;
|
|
7021
7062
|
this.value = e.value;
|
|
7022
7063
|
}
|
|
7023
7064
|
_sendHandler() {
|
|
@@ -7035,10 +7076,10 @@ let ge = class extends ae {
|
|
|
7035
7076
|
});
|
|
7036
7077
|
}
|
|
7037
7078
|
async _sendFileHandler() {
|
|
7038
|
-
const
|
|
7079
|
+
const i = await Sa(!1);
|
|
7039
7080
|
this.emit("message:send:file", {
|
|
7040
7081
|
detail: {
|
|
7041
|
-
files:
|
|
7082
|
+
files: i
|
|
7042
7083
|
}
|
|
7043
7084
|
});
|
|
7044
7085
|
}
|
|
@@ -7109,8 +7150,8 @@ let ge = class extends ae {
|
|
|
7109
7150
|
</div>
|
|
7110
7151
|
`;
|
|
7111
7152
|
}
|
|
7112
|
-
_keyDownHandler(
|
|
7113
|
-
|
|
7153
|
+
_keyDownHandler(i) {
|
|
7154
|
+
i.key === "Enter" && !i.shiftKey && this._sendHandler();
|
|
7114
7155
|
}
|
|
7115
7156
|
};
|
|
7116
7157
|
ge.styles = zs;
|
|
@@ -7203,9 +7244,9 @@ const Bs = Z`
|
|
|
7203
7244
|
outline: none !important;
|
|
7204
7245
|
}
|
|
7205
7246
|
`, Os = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4"/></svg>', Rs = '<svg viewBox="0 0 24 24" width="26px" height="26px" ><path fill="currentColor" d="M8 18c.55 0 1-.45 1-1V7c0-.55-.45-1-1-1s-1 .45-1 1v10c0 .55.45 1 1 1m4 4c.55 0 1-.45 1-1V3c0-.55-.45-1-1-1s-1 .45-1 1v18c0 .55.45 1 1 1m-8-8c.55 0 1-.45 1-1v-2c0-.55-.45-1-1-1s-1 .45-1 1v2c0 .55.45 1 1 1m12 4c.55 0 1-.45 1-1V7c0-.55-.45-1-1-1s-1 .45-1 1v10c0 .55.45 1 1 1m3-7v2c0 .55.45 1 1 1s1-.45 1-1v-2c0-.55-.45-1-1-1s-1 .45-1 1"/></svg>', ha = '<svg viewBox="0 0 24 24" width="26px" height="26px" ><path fill="currentColor" d="m4 12l1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8z"/></svg>';
|
|
7206
|
-
var Fs = Object.defineProperty, Hs = Object.getOwnPropertyDescriptor, Ce = (
|
|
7207
|
-
for (var n = a > 1 ? void 0 : a ? Hs(e, t) : e, o =
|
|
7208
|
-
(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);
|
|
7209
7250
|
return a && n && Fs(e, t, n), n;
|
|
7210
7251
|
};
|
|
7211
7252
|
let me = class extends ae {
|
|
@@ -7215,17 +7256,17 @@ let me = class extends ae {
|
|
|
7215
7256
|
connectedCallback() {
|
|
7216
7257
|
super.connectedCallback(), addEventListener("form:submit", this._formSubmitHandler.bind(this)), addEventListener("c7o:bot:input:setvalue", this._inputSetValueHandler.bind(this));
|
|
7217
7258
|
}
|
|
7218
|
-
async _inputSetValueHandler(
|
|
7219
|
-
const e =
|
|
7259
|
+
async _inputSetValueHandler(i) {
|
|
7260
|
+
const e = i, t = typeof e?.detail?.inputValue == "string" && e?.detail?.inputValue || "";
|
|
7220
7261
|
this.value = t;
|
|
7221
7262
|
}
|
|
7222
|
-
async _formSubmitHandler(
|
|
7263
|
+
async _formSubmitHandler(i) {
|
|
7223
7264
|
requestIdleCallback(() => {
|
|
7224
7265
|
this.inputElement.focus();
|
|
7225
7266
|
});
|
|
7226
7267
|
}
|
|
7227
|
-
_inputChangeHandler(
|
|
7228
|
-
const e =
|
|
7268
|
+
_inputChangeHandler(i) {
|
|
7269
|
+
const e = i.target;
|
|
7229
7270
|
this.value = e.value;
|
|
7230
7271
|
}
|
|
7231
7272
|
_ctrlHandler() {
|
|
@@ -7249,10 +7290,10 @@ let me = class extends ae {
|
|
|
7249
7290
|
});
|
|
7250
7291
|
}
|
|
7251
7292
|
async _sendFileHandler() {
|
|
7252
|
-
const
|
|
7293
|
+
const i = await Sa(!1);
|
|
7253
7294
|
this.emit("message:send:file", {
|
|
7254
7295
|
detail: {
|
|
7255
|
-
files:
|
|
7296
|
+
files: i
|
|
7256
7297
|
}
|
|
7257
7298
|
});
|
|
7258
7299
|
}
|
|
@@ -7389,8 +7430,8 @@ let me = class extends ae {
|
|
|
7389
7430
|
</div>
|
|
7390
7431
|
`;
|
|
7391
7432
|
}
|
|
7392
|
-
_keyDownHandler(
|
|
7393
|
-
|
|
7433
|
+
_keyDownHandler(i) {
|
|
7434
|
+
i.key === "Enter" && !i.shiftKey && this._sendHandler();
|
|
7394
7435
|
}
|
|
7395
7436
|
};
|
|
7396
7437
|
me.styles = Bs;
|
|
@@ -7459,9 +7500,9 @@ const Ba = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="c
|
|
|
7459
7500
|
gap: 8px;
|
|
7460
7501
|
}
|
|
7461
7502
|
`;
|
|
7462
|
-
var Ds = Object.defineProperty, Vs = Object.getOwnPropertyDescriptor, Mt = (
|
|
7463
|
-
for (var n = a > 1 ? void 0 : a ? Vs(e, t) : e, o =
|
|
7464
|
-
(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);
|
|
7465
7506
|
return a && n && Ds(e, t, n), n;
|
|
7466
7507
|
};
|
|
7467
7508
|
let Xe = class extends ae {
|
|
@@ -7521,9 +7562,9 @@ Mt([
|
|
|
7521
7562
|
Xe = Mt([
|
|
7522
7563
|
J("cb-dialog")
|
|
7523
7564
|
], Xe);
|
|
7524
|
-
var Ns = Object.defineProperty, Us = Object.getOwnPropertyDescriptor, Oa = (
|
|
7525
|
-
for (var n = a > 1 ? void 0 : a ? Us(e, t) : e, o =
|
|
7526
|
-
(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);
|
|
7527
7568
|
return a && n && Ns(e, t, n), n;
|
|
7528
7569
|
};
|
|
7529
7570
|
let xt = class extends ae {
|
|
@@ -7634,9 +7675,9 @@ const Ws = Z`
|
|
|
7634
7675
|
grid-column-start: 2;
|
|
7635
7676
|
}
|
|
7636
7677
|
`;
|
|
7637
|
-
var Ys = Object.defineProperty, Xs = Object.getOwnPropertyDescriptor, Ge = (
|
|
7638
|
-
for (var n = a > 1 ? void 0 : a ? Xs(e, t) : e, o =
|
|
7639
|
-
(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);
|
|
7640
7681
|
return a && n && Ys(e, t, n), n;
|
|
7641
7682
|
};
|
|
7642
7683
|
let qe = class extends ae {
|
|
@@ -7731,13 +7772,13 @@ let qe = class extends ae {
|
|
|
7731
7772
|
this.emit("message:clear"), this.clearMessageDialogOpen = !1;
|
|
7732
7773
|
}
|
|
7733
7774
|
// input change handler
|
|
7734
|
-
_inputChangeHandler(
|
|
7735
|
-
const { name: e, value: t } =
|
|
7775
|
+
_inputChangeHandler(i) {
|
|
7776
|
+
const { name: e, value: t } = i.target, [a, n] = e.split(".");
|
|
7736
7777
|
n ? this.setting[a][n] = t : this.setting[a] = t;
|
|
7737
7778
|
}
|
|
7738
7779
|
// checked change handler
|
|
7739
|
-
_checkChangeHandler(
|
|
7740
|
-
const { name: e, checked: t } =
|
|
7780
|
+
_checkChangeHandler(i) {
|
|
7781
|
+
const { name: e, checked: t } = i.target, [a, n] = e.split(".");
|
|
7741
7782
|
n ? this.setting[a][n] = t : this.setting[a] = t, a === "customRequest" && (this.customRequest = t);
|
|
7742
7783
|
}
|
|
7743
7784
|
// emit setting confirm event
|
|
@@ -7752,8 +7793,8 @@ let qe = class extends ae {
|
|
|
7752
7793
|
_settingCancelHandler() {
|
|
7753
7794
|
this.emit("setting:hide");
|
|
7754
7795
|
}
|
|
7755
|
-
updated(
|
|
7756
|
-
super.updated(
|
|
7796
|
+
updated(i) {
|
|
7797
|
+
super.updated(i), this.dialog?.addEventListener("sl-request-close", (e) => {
|
|
7757
7798
|
e.detail.source === "overlay" && e.preventDefault();
|
|
7758
7799
|
});
|
|
7759
7800
|
}
|
|
@@ -7891,9 +7932,9 @@ const Gs = Z`
|
|
|
7891
7932
|
margin: 4px 4px 0px 0px;
|
|
7892
7933
|
}
|
|
7893
7934
|
`;
|
|
7894
|
-
var Zs = Object.defineProperty, Js = Object.getOwnPropertyDescriptor, Ra = (
|
|
7895
|
-
for (var n = a > 1 ? void 0 : a ? Js(e, t) : e, o =
|
|
7896
|
-
(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);
|
|
7897
7938
|
return a && n && Zs(e, t, n), n;
|
|
7898
7939
|
};
|
|
7899
7940
|
let kt = class extends ae {
|
|
@@ -7902,15 +7943,15 @@ let kt = class extends ae {
|
|
|
7902
7943
|
}
|
|
7903
7944
|
// handler click
|
|
7904
7945
|
_clickHandler() {
|
|
7905
|
-
const
|
|
7946
|
+
const i = !this.open;
|
|
7906
7947
|
this.emit("chatbot:toggle", {
|
|
7907
7948
|
detail: {
|
|
7908
|
-
open:
|
|
7949
|
+
open: i
|
|
7909
7950
|
}
|
|
7910
|
-
}), this.open =
|
|
7951
|
+
}), this.open = i;
|
|
7911
7952
|
}
|
|
7912
|
-
_engageClickHandler(
|
|
7913
|
-
console.log("engage close clicked!"), b.suppressEngagePopup(),
|
|
7953
|
+
_engageClickHandler(i) {
|
|
7954
|
+
console.log("engage close clicked!"), b.suppressEngagePopup(), i.stopPropagation();
|
|
7914
7955
|
}
|
|
7915
7956
|
/*
|
|
7916
7957
|
${when(
|
|
@@ -7920,12 +7961,12 @@ let kt = class extends ae {
|
|
|
7920
7961
|
)}
|
|
7921
7962
|
*/
|
|
7922
7963
|
getPopupPlacement() {
|
|
7923
|
-
let
|
|
7924
|
-
return
|
|
7964
|
+
let i = "top-end";
|
|
7965
|
+
return i = b.appearanceAnchorPopupPosition, i;
|
|
7925
7966
|
}
|
|
7926
7967
|
getBadgeVariant() {
|
|
7927
|
-
let
|
|
7928
|
-
return
|
|
7968
|
+
let i = "danger";
|
|
7969
|
+
return i = b.appearanceAnchorBadgeVariant, i;
|
|
7929
7970
|
}
|
|
7930
7971
|
renderPopupLogo() {
|
|
7931
7972
|
return b.setting.popupLogoUrl !== "" ? u`<img class="cb-engage-popup-img" src="${b.setting.popupLogoUrl}" />` : b.setting.popupLogoSvg !== "" ? u`<div class="cb-engage-popup-logo">${ue`${Y(b.setting.popupLogoSvg)}`}</div>` : b.setting.logoUrl !== "" ? u`<img class="cb-engage-popup-img" src="${b.setting.logoUrl}" />` : b.setting.logoSvg !== "" ? u`<div class="cb-engage-popup-logo">${ue`${Y(b.setting.logoSvg)}`}</div>` : null;
|
|
@@ -7968,9 +8009,9 @@ kt = Ra([
|
|
|
7968
8009
|
const Ks = Z`
|
|
7969
8010
|
${ye}
|
|
7970
8011
|
`, ua = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1z"/><path d="M7.002 11a1 1 0 1 1 2 0a1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z"/></g></svg>', Qs = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016a.15.15 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.2.2 0 0 1-.054.06a.1.1 0 0 1-.066.017H1.146a.1.1 0 0 1-.066-.017a.2.2 0 0 1-.054-.06a.18.18 0 0 1 .002-.183L7.884 2.073a.15.15 0 0 1 .054-.057m1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767z"/><path d="M7.002 12a1 1 0 1 1 2 0a1 1 0 0 1-2 0M7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z"/></g></svg>', en = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M2.5 8a5.5 5.5 0 0 1 8.25-4.764a.5.5 0 0 0 .5-.866A6.5 6.5 0 1 0 14.5 8a.5.5 0 0 0-1 0a5.5 5.5 0 1 1-11 0"/><path d="M15.354 3.354a.5.5 0 0 0-.708-.708L8 9.293L5.354 6.646a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0z"/></g></svg>', tn = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16"/><path d="m8.93 6.588l-2.29.287l-.082.38l.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319c.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246c-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0a1 1 0 0 1 2 0"/></g></svg>';
|
|
7971
|
-
var an = Object.defineProperty, sn = Object.getOwnPropertyDescriptor, Fa = (
|
|
7972
|
-
for (var n = a > 1 ? void 0 : a ? sn(e, t) : e, o =
|
|
7973
|
-
(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);
|
|
7974
8015
|
return a && n && an(e, t, n), n;
|
|
7975
8016
|
};
|
|
7976
8017
|
const pa = {
|
|
@@ -8000,8 +8041,8 @@ let _t = class extends ae {
|
|
|
8000
8041
|
super(...arguments), this.status = "info";
|
|
8001
8042
|
}
|
|
8002
8043
|
render() {
|
|
8003
|
-
const { variant:
|
|
8004
|
-
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>`;
|
|
8005
8046
|
}
|
|
8006
8047
|
};
|
|
8007
8048
|
_t.styles = Ca;
|
|
@@ -8011,9 +8052,9 @@ Fa([
|
|
|
8011
8052
|
_t = Fa([
|
|
8012
8053
|
J("cb-status-icon")
|
|
8013
8054
|
], _t);
|
|
8014
|
-
var nn = Object.getOwnPropertyDescriptor, rn = (
|
|
8015
|
-
for (var n = a > 1 ? void 0 : a ? nn(e, t) : e, o =
|
|
8016
|
-
(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);
|
|
8017
8058
|
return n;
|
|
8018
8059
|
};
|
|
8019
8060
|
let Rt = class extends ae {
|
|
@@ -8120,9 +8161,9 @@ const on = Z`
|
|
|
8120
8161
|
filter: alpha(opacity=80);
|
|
8121
8162
|
}
|
|
8122
8163
|
`;
|
|
8123
|
-
var cn = Object.defineProperty, ln = Object.getOwnPropertyDescriptor, Ze = (
|
|
8124
|
-
for (var n = a > 1 ? void 0 : a ? ln(e, t) : e, o =
|
|
8125
|
-
(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);
|
|
8126
8167
|
return a && n && cn(e, t, n), n;
|
|
8127
8168
|
};
|
|
8128
8169
|
const ga = Ne.noConflict(), dn = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="bi bi-star-fill" viewBox="0 0 16 16"><path d="M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.282.95l-3.522 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z"/></svg>';
|
|
@@ -8136,8 +8177,8 @@ let Be = class extends ae {
|
|
|
8136
8177
|
firstUpdated() {
|
|
8137
8178
|
this._rating.getSymbol = () => dn;
|
|
8138
8179
|
}
|
|
8139
|
-
_stateEventHandler(
|
|
8140
|
-
const e =
|
|
8180
|
+
_stateEventHandler(i) {
|
|
8181
|
+
const e = i.detail, t = e?.type || null;
|
|
8141
8182
|
ga.info(`FEEDBACK: stateEvent: ${t}`, e);
|
|
8142
8183
|
}
|
|
8143
8184
|
_cancelHandler() {
|
|
@@ -8168,7 +8209,7 @@ let Be = class extends ae {
|
|
|
8168
8209
|
b.feedbackScore = 5;
|
|
8169
8210
|
}}"
|
|
8170
8211
|
>
|
|
8171
|
-
${ue`${Y(
|
|
8212
|
+
${ue`${Y($a)}`}
|
|
8172
8213
|
</div>
|
|
8173
8214
|
</div>
|
|
8174
8215
|
<div style="display: flex">
|
|
@@ -8185,8 +8226,8 @@ let Be = class extends ae {
|
|
|
8185
8226
|
b.feedbackScore = this._rating.value;
|
|
8186
8227
|
}
|
|
8187
8228
|
async _submitHandler() {
|
|
8188
|
-
const
|
|
8189
|
-
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);
|
|
8190
8231
|
}
|
|
8191
8232
|
};
|
|
8192
8233
|
Be.styles = on;
|
|
@@ -8669,8 +8710,8 @@ class bt {
|
|
|
8669
8710
|
if (y === 0)
|
|
8670
8711
|
e.moveTo(S, w);
|
|
8671
8712
|
else {
|
|
8672
|
-
const _ = (y - 1) * c, L = this.renderPoints[y - 1] * a * 0.8,
|
|
8673
|
-
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);
|
|
8674
8715
|
}
|
|
8675
8716
|
}
|
|
8676
8717
|
e.lineTo(t, 0), e.lineTo(0, 0), n === Yt && !o ? this.currentColorRGB = this._lerpColor(this.currentColorRGB, this.inputColorRGB, 0.02) : this.currentColorRGB = this._lerpColor(this.currentColorRGB, this.outputColorRGB, 0.02);
|
|
@@ -8743,17 +8784,17 @@ class un extends Ha {
|
|
|
8743
8784
|
for (let w = 0; w < this._numBars; w++) {
|
|
8744
8785
|
const _ = this._renderHeights[w] * t.height * 0.9, L = v - (w + 1) * (p * 1.2);
|
|
8745
8786
|
e.fillRect(L, y - _ / 2, p, _);
|
|
8746
|
-
const
|
|
8747
|
-
e.fillRect(
|
|
8787
|
+
const T = v + w * (p * 1.2);
|
|
8788
|
+
e.fillRect(T, y - _ / 2, p, _);
|
|
8748
8789
|
}
|
|
8749
8790
|
e.restore();
|
|
8750
8791
|
}
|
|
8751
8792
|
}
|
|
8752
8793
|
customElements.get("volume-visualizer-bars") || customElements.define("volume-visualizer-bars", un);
|
|
8753
8794
|
const pn = '<svg viewBox="0 0 24 24" width="26px" height="26px" ><path fill="currentColor" d="M19 11h-1.7c0 .74-.16 1.43-.43 2.05l1.23 1.23c.56-.98.9-2.09.9-3.28m-4.02.17c0-.06.02-.11.02-.17V5c0-1.66-1.34-3-3-3S9 3.34 9 5v.18zM4.27 3L3 4.27l6.01 6.01V11c0 1.66 1.33 3 2.99 3c.22 0 .44-.03.65-.08l1.66 1.66c-.71.33-1.5.52-2.31.52c-2.76 0-5.3-2.1-5.3-5.1H5c0 3.41 2.72 6.23 6 6.72V21h2v-3.28c.91-.13 1.77-.45 2.54-.9L19.73 21L21 19.73z"/></svg>';
|
|
8754
|
-
var gn = Object.getOwnPropertyDescriptor, mn = (
|
|
8755
|
-
for (var n = a > 1 ? void 0 : a ? gn(e, t) : e, o =
|
|
8756
|
-
(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);
|
|
8757
8798
|
return n;
|
|
8758
8799
|
};
|
|
8759
8800
|
const Qe = Ne.noConflict();
|
|
@@ -8827,8 +8868,8 @@ let Ft = class extends ae {
|
|
|
8827
8868
|
`;
|
|
8828
8869
|
}
|
|
8829
8870
|
}
|
|
8830
|
-
updated(
|
|
8831
|
-
if (super.updated(
|
|
8871
|
+
updated(i) {
|
|
8872
|
+
if (super.updated(i), this.volumeVisualizerRef.value) {
|
|
8832
8873
|
if (!this.volumeVisualizerInitialized) {
|
|
8833
8874
|
const e = this.volumeVisualizerRef.value, t = b.getAudioAnalyzers();
|
|
8834
8875
|
t && (e.connectAnalyzers(t), Qe.info("volumeVisualizerInitialized set to true"), this.volumeVisualizerInitialized = !0);
|
|
@@ -8848,13 +8889,13 @@ let Ft = class extends ae {
|
|
|
8848
8889
|
</span>`,
|
|
8849
8890
|
)}
|
|
8850
8891
|
* */
|
|
8851
|
-
async _toggleMute(
|
|
8852
|
-
|
|
8892
|
+
async _toggleMute(i) {
|
|
8893
|
+
i.stopPropagation(), Qe.info("_toggleMute called"), await b.toggleMute(), this.volumeVisualizerRef.value && this.volumeVisualizerRef.value.setMuted(b.webAudioMuted);
|
|
8853
8894
|
}
|
|
8854
|
-
async _toggleHangup(
|
|
8855
|
-
|
|
8895
|
+
async _toggleHangup(i) {
|
|
8896
|
+
i.stopPropagation(), Qe.info("_toggleHangup called"), await b.stopAudio();
|
|
8856
8897
|
}
|
|
8857
|
-
_handleTypingActiveChanged(
|
|
8898
|
+
_handleTypingActiveChanged(i, e, t) {
|
|
8858
8899
|
b.webAudioStarted && (Qe.info(`Typing state changed: ${e}`), this.volumeVisualizerRef.value && this.volumeVisualizerRef.value.setThinking(e));
|
|
8859
8900
|
}
|
|
8860
8901
|
};
|
|
@@ -8878,7 +8919,7 @@ class ja extends Error {
|
|
|
8878
8919
|
}
|
|
8879
8920
|
}
|
|
8880
8921
|
const va = (() => {
|
|
8881
|
-
let
|
|
8922
|
+
let i = !1, e = !1;
|
|
8882
8923
|
const t = typeof globalThis.ReadableStream == "function", a = typeof globalThis.Request == "function";
|
|
8883
8924
|
if (t && a)
|
|
8884
8925
|
try {
|
|
@@ -8887,7 +8928,7 @@ const va = (() => {
|
|
|
8887
8928
|
method: "POST",
|
|
8888
8929
|
// @ts-expect-error - Types are outdated.
|
|
8889
8930
|
get duplex() {
|
|
8890
|
-
return
|
|
8931
|
+
return i = !0, "half";
|
|
8891
8932
|
}
|
|
8892
8933
|
}).headers.has("Content-Type");
|
|
8893
8934
|
} catch (n) {
|
|
@@ -8895,7 +8936,7 @@ const va = (() => {
|
|
|
8895
8936
|
return !1;
|
|
8896
8937
|
throw n;
|
|
8897
8938
|
}
|
|
8898
|
-
return
|
|
8939
|
+
return i && !e;
|
|
8899
8940
|
})(), yn = typeof globalThis.AbortController == "function", vn = typeof globalThis.AbortSignal == "function" && typeof globalThis.AbortSignal.any == "function", wn = typeof globalThis.ReadableStream == "function", xn = typeof globalThis.FormData == "function", Da = ["get", "post", "put", "patch", "head", "delete"], kn = {
|
|
8900
8941
|
json: "application/json",
|
|
8901
8942
|
text: "text/*",
|
|
@@ -8935,43 +8976,43 @@ const va = (() => {
|
|
|
8935
8976
|
dispatcher: !0,
|
|
8936
8977
|
duplex: !0,
|
|
8937
8978
|
priority: !0
|
|
8938
|
-
}, An = (
|
|
8939
|
-
if (!
|
|
8979
|
+
}, An = (i) => {
|
|
8980
|
+
if (!i)
|
|
8940
8981
|
return 0;
|
|
8941
|
-
if (
|
|
8982
|
+
if (i instanceof FormData) {
|
|
8942
8983
|
let e = 0;
|
|
8943
|
-
for (const [t, a] of
|
|
8984
|
+
for (const [t, a] of i)
|
|
8944
8985
|
e += _n, e += new TextEncoder().encode(`Content-Disposition: form-data; name="${t}"`).length, e += typeof a == "string" ? new TextEncoder().encode(a).length : a.size;
|
|
8945
8986
|
return e;
|
|
8946
8987
|
}
|
|
8947
|
-
if (
|
|
8948
|
-
return
|
|
8949
|
-
if (
|
|
8950
|
-
return
|
|
8951
|
-
if (typeof
|
|
8952
|
-
return new TextEncoder().encode(
|
|
8953
|
-
if (
|
|
8954
|
-
return new TextEncoder().encode(
|
|
8955
|
-
if ("byteLength" in
|
|
8956
|
-
return
|
|
8957
|
-
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)
|
|
8958
8999
|
try {
|
|
8959
|
-
const e = JSON.stringify(
|
|
9000
|
+
const e = JSON.stringify(i);
|
|
8960
9001
|
return new TextEncoder().encode(e).length;
|
|
8961
9002
|
} catch {
|
|
8962
9003
|
return 0;
|
|
8963
9004
|
}
|
|
8964
9005
|
return 0;
|
|
8965
|
-
}, Mn = (
|
|
8966
|
-
const t = Number(
|
|
9006
|
+
}, Mn = (i, e) => {
|
|
9007
|
+
const t = Number(i.headers.get("content-length")) || 0;
|
|
8967
9008
|
let a = 0;
|
|
8968
|
-
return
|
|
8969
|
-
status:
|
|
8970
|
-
statusText:
|
|
8971
|
-
headers:
|
|
9009
|
+
return i.status === 204 ? (e && e({ percent: 1, totalBytes: t, transferredBytes: a }, new Uint8Array()), new Response(null, {
|
|
9010
|
+
status: i.status,
|
|
9011
|
+
statusText: i.statusText,
|
|
9012
|
+
headers: i.headers
|
|
8972
9013
|
})) : new Response(new ReadableStream({
|
|
8973
9014
|
async start(n) {
|
|
8974
|
-
const o =
|
|
9015
|
+
const o = i.body.getReader();
|
|
8975
9016
|
e && e({ percent: 0, transferredBytes: 0, totalBytes: t }, new Uint8Array());
|
|
8976
9017
|
async function c() {
|
|
8977
9018
|
const { done: p, value: v } = await o.read();
|
|
@@ -8989,19 +9030,19 @@ const va = (() => {
|
|
|
8989
9030
|
await c();
|
|
8990
9031
|
}
|
|
8991
9032
|
}), {
|
|
8992
|
-
status:
|
|
8993
|
-
statusText:
|
|
8994
|
-
headers:
|
|
9033
|
+
status: i.status,
|
|
9034
|
+
statusText: i.statusText,
|
|
9035
|
+
headers: i.headers
|
|
8995
9036
|
});
|
|
8996
|
-
}, In = (
|
|
8997
|
-
const t = An(
|
|
9037
|
+
}, In = (i, e) => {
|
|
9038
|
+
const t = An(i.body);
|
|
8998
9039
|
let a = 0;
|
|
8999
|
-
return new Request(
|
|
9040
|
+
return new Request(i, {
|
|
9000
9041
|
// @ts-expect-error - Types are outdated.
|
|
9001
9042
|
duplex: "half",
|
|
9002
9043
|
body: new ReadableStream({
|
|
9003
9044
|
async start(n) {
|
|
9004
|
-
const o =
|
|
9045
|
+
const o = i.body instanceof ReadableStream ? i.body.getReader() : new Response("").body.getReader();
|
|
9005
9046
|
async function c() {
|
|
9006
9047
|
const { done: p, value: v } = await o.read();
|
|
9007
9048
|
if (p) {
|
|
@@ -9016,28 +9057,28 @@ const va = (() => {
|
|
|
9016
9057
|
}
|
|
9017
9058
|
})
|
|
9018
9059
|
});
|
|
9019
|
-
}, et = (
|
|
9020
|
-
for (const e of
|
|
9060
|
+
}, et = (i) => i !== null && typeof i == "object", ht = (...i) => {
|
|
9061
|
+
for (const e of i)
|
|
9021
9062
|
if ((!et(e) || Array.isArray(e)) && e !== void 0)
|
|
9022
9063
|
throw new TypeError("The `options` argument must be an object");
|
|
9023
|
-
return Xt({}, ...
|
|
9024
|
-
}, Na = (
|
|
9025
|
-
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);
|
|
9026
9067
|
for (const [o, c] of n.entries())
|
|
9027
9068
|
a && c === "undefined" || c === void 0 ? t.delete(o) : t.set(o, c);
|
|
9028
9069
|
return t;
|
|
9029
9070
|
};
|
|
9030
|
-
function ut(
|
|
9031
|
-
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] ?? []);
|
|
9032
9073
|
}
|
|
9033
|
-
const Ua = (
|
|
9034
|
-
beforeRequest: ut(
|
|
9035
|
-
beforeRetry: ut(
|
|
9036
|
-
afterResponse: ut(
|
|
9037
|
-
beforeError: ut(
|
|
9038
|
-
}), 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) => {
|
|
9039
9080
|
let e = {}, t = {}, a = {};
|
|
9040
|
-
for (const n of
|
|
9081
|
+
for (const n of i)
|
|
9041
9082
|
if (Array.isArray(n))
|
|
9042
9083
|
Array.isArray(e) || (e = []), e = [...e, ...n];
|
|
9043
9084
|
else if (et(n)) {
|
|
@@ -9046,40 +9087,40 @@ const Ua = (s = {}, e = {}) => ({
|
|
|
9046
9087
|
et(n.hooks) && (a = Ua(a, n.hooks), e.hooks = a), et(n.headers) && (t = Na(t, n.headers), e.headers = t);
|
|
9047
9088
|
}
|
|
9048
9089
|
return e;
|
|
9049
|
-
},
|
|
9090
|
+
}, En = (i) => Da.includes(i) ? i.toUpperCase() : i, Tn = ["get", "put", "head", "delete", "options", "trace"], $n = [408, 413, 429, 500, 502, 503, 504], Ln = [413, 429, 503], wa = {
|
|
9050
9091
|
limit: 2,
|
|
9051
|
-
methods:
|
|
9052
|
-
statusCodes:
|
|
9092
|
+
methods: Tn,
|
|
9093
|
+
statusCodes: $n,
|
|
9053
9094
|
afterStatusCodes: Ln,
|
|
9054
9095
|
maxRetryAfter: Number.POSITIVE_INFINITY,
|
|
9055
9096
|
backoffLimit: Number.POSITIVE_INFINITY,
|
|
9056
|
-
delay: (
|
|
9057
|
-
}, zn = (
|
|
9058
|
-
if (typeof
|
|
9097
|
+
delay: (i) => 0.3 * 2 ** (i - 1) * 1e3
|
|
9098
|
+
}, zn = (i = {}) => {
|
|
9099
|
+
if (typeof i == "number")
|
|
9059
9100
|
return {
|
|
9060
9101
|
...wa,
|
|
9061
|
-
limit:
|
|
9102
|
+
limit: i
|
|
9062
9103
|
};
|
|
9063
|
-
if (
|
|
9104
|
+
if (i.methods && !Array.isArray(i.methods))
|
|
9064
9105
|
throw new Error("retry.methods must be an array");
|
|
9065
|
-
if (
|
|
9106
|
+
if (i.statusCodes && !Array.isArray(i.statusCodes))
|
|
9066
9107
|
throw new Error("retry.statusCodes must be an array");
|
|
9067
9108
|
return {
|
|
9068
9109
|
...wa,
|
|
9069
|
-
...
|
|
9110
|
+
...i
|
|
9070
9111
|
};
|
|
9071
9112
|
};
|
|
9072
|
-
async function Pn(
|
|
9113
|
+
async function Pn(i, e, t, a) {
|
|
9073
9114
|
return new Promise((n, o) => {
|
|
9074
9115
|
const c = setTimeout(() => {
|
|
9075
|
-
t && t.abort(), o(new ja(
|
|
9116
|
+
t && t.abort(), o(new ja(i));
|
|
9076
9117
|
}, a.timeout);
|
|
9077
|
-
a.fetch(
|
|
9118
|
+
a.fetch(i, e).then(n).catch(o).then(() => {
|
|
9078
9119
|
clearTimeout(c);
|
|
9079
9120
|
});
|
|
9080
9121
|
});
|
|
9081
9122
|
}
|
|
9082
|
-
async function qn(
|
|
9123
|
+
async function qn(i, { signal: e }) {
|
|
9083
9124
|
return new Promise((t, a) => {
|
|
9084
9125
|
e && (e.throwIfAborted(), e.addEventListener("abort", n, { once: !0 }));
|
|
9085
9126
|
function n() {
|
|
@@ -9087,15 +9128,15 @@ async function qn(s, { signal: e }) {
|
|
|
9087
9128
|
}
|
|
9088
9129
|
const o = setTimeout(() => {
|
|
9089
9130
|
e?.removeEventListener("abort", n), t();
|
|
9090
|
-
},
|
|
9131
|
+
}, i);
|
|
9091
9132
|
});
|
|
9092
9133
|
}
|
|
9093
|
-
const Bn = (
|
|
9134
|
+
const Bn = (i, e) => {
|
|
9094
9135
|
const t = {};
|
|
9095
9136
|
for (const a in e)
|
|
9096
|
-
!(a in Sn) && !(a in Cn) && !(a in
|
|
9137
|
+
!(a in Sn) && !(a in Cn) && !(a in i) && (t[a] = e[a]);
|
|
9097
9138
|
return t;
|
|
9098
|
-
}, 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;
|
|
9099
9140
|
class Ct {
|
|
9100
9141
|
static create(e, t) {
|
|
9101
9142
|
const a = new Ct(e, t), n = async () => {
|
|
@@ -9154,7 +9195,7 @@ class Ct {
|
|
|
9154
9195
|
beforeError: [],
|
|
9155
9196
|
afterResponse: []
|
|
9156
9197
|
}, t.hooks),
|
|
9157
|
-
method:
|
|
9198
|
+
method: En(t.method ?? this._input.method ?? "GET"),
|
|
9158
9199
|
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
|
|
9159
9200
|
prefixUrl: String(t.prefixUrl || ""),
|
|
9160
9201
|
retry: zn(t.retry),
|
|
@@ -9240,11 +9281,11 @@ class Ct {
|
|
|
9240
9281
|
}
|
|
9241
9282
|
}
|
|
9242
9283
|
/*! MIT License © Sindre Sorhus */
|
|
9243
|
-
const Ht = (
|
|
9244
|
-
const e = (t, a) => Ct.create(t, ht(
|
|
9284
|
+
const Ht = (i) => {
|
|
9285
|
+
const e = (t, a) => Ct.create(t, ht(i, a));
|
|
9245
9286
|
for (const t of Da)
|
|
9246
|
-
e[t] = (a, n) => Ct.create(a, ht(
|
|
9247
|
-
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;
|
|
9248
9289
|
}, Rn = Ht();
|
|
9249
9290
|
Rn.extend({
|
|
9250
9291
|
hooks: {
|
|
@@ -9254,12 +9295,12 @@ Rn.extend({
|
|
|
9254
9295
|
]
|
|
9255
9296
|
}
|
|
9256
9297
|
});
|
|
9257
|
-
async function Fn(
|
|
9298
|
+
async function Fn(i, e) {
|
|
9258
9299
|
const { onmessage: t, onclose: a, ...n } = e, o = async (c, p) => {
|
|
9259
9300
|
const { value: v, done: y } = await p.read();
|
|
9260
9301
|
y ? (c.close(), a?.()) : (t?.(v), c.enqueue(v), o(c, p));
|
|
9261
9302
|
};
|
|
9262
|
-
return n.body && typeof n.body == "object" && (n.body = JSON.stringify(n.body)), console.log("Fetching:", n), fetch(
|
|
9303
|
+
return n.body && typeof n.body == "object" && (n.body = JSON.stringify(n.body)), console.log("Fetching:", n), fetch(i, n).then((c) => {
|
|
9263
9304
|
const p = c.body.getReader();
|
|
9264
9305
|
return new ReadableStream({
|
|
9265
9306
|
start(y) {
|
|
@@ -9275,13 +9316,13 @@ async function Fn(s, e) {
|
|
|
9275
9316
|
}).text()
|
|
9276
9317
|
);
|
|
9277
9318
|
}
|
|
9278
|
-
var Hn = Object.defineProperty, jn = Object.getOwnPropertyDescriptor, V = (
|
|
9279
|
-
for (var n = a > 1 ? void 0 : a ? jn(e, t) : e, o =
|
|
9280
|
-
(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);
|
|
9281
9322
|
return a && n && Hn(e, t, n), n;
|
|
9282
9323
|
};
|
|
9283
|
-
const
|
|
9284
|
-
|
|
9324
|
+
const Te = Ne.noConflict();
|
|
9325
|
+
Te.setLevel("info");
|
|
9285
9326
|
let H = class extends ae {
|
|
9286
9327
|
constructor() {
|
|
9287
9328
|
super(...arguments), this.store = new Ve(this, b), this.displayLicense = !1, this.name = "ChatBot", this.orgId = "", this.botId = "", this.url = "ws://localhost:3070", this.logoUrl = "", this.logoSvg = `<svg width="34" height="34" viewBox="0 0 203 200" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
@@ -9302,47 +9343,47 @@ let H = class extends ae {
|
|
|
9302
9343
|
<rect width="400" height="400" fill="white"/>
|
|
9303
9344
|
</clipPath>
|
|
9304
9345
|
</defs>
|
|
9305
|
-
</svg>`, this.popupLogoSvg = "", this.popupLogoUrl = "", this.botIconSvg = '<svg fill="currentColor" width="24" height="24" viewBox="0 0 24 24"> <path d="M16 17V19H2V17S2 13 9 13 16 17 16 17M12.5 7.5A3.5 3.5 0 1 0 9 11A3.5 3.5 0 0 0 12.5 7.5M15.94 13A5.32 5.32 0 0 1 18 17V19H22V17S22 13.37 15.94 13M15 4A3.39 3.39 0 0 0 13.07 4.59A5 5 0 0 1 13.07 10.41A3.39 3.39 0 0 0 15 11A3.5 3.5 0 0 0 15 4Z" /></svg>', this.userIconSvg = '<svg fill="currentColor" viewBox="0 0 24 24" width="24" height="24"> <path d="M12 4a4 4 0 0 1 4 4a4 4 0 0 1-4 4a4 4 0 0 1-4-4a4 4 0 0 1 4-4m0 10c4.42 0 8 1.79 8 4v2H4v-2c0-2.21 3.58-4 8-4Z" /></svg>', this.systemIconSvg = '<svg fill="currentColor" width="24" height="24" viewBox="0 0 24 24"> <path d="M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z"/></svg>', this.agentIconSvg = '<svg fill="currentColor" width="24" height="24" viewBox="0 0 24 24"> <path d="M18.72,14.76C19.07,13.91 19.26,13 19.26,12C19.26,11.28 19.15,10.59 18.96,9.95C18.31,10.1 17.63,10.18 16.92,10.18C13.86,10.18 11.15,8.67 9.5,6.34C8.61,8.5 6.91,10.26 4.77,11.22C4.73,11.47 4.73,11.74 4.73,12A7.27,7.27 0 0,0 12,19.27C13.05,19.27 14.06,19.04 14.97,18.63C15.54,19.72 15.8,20.26 15.78,20.26C14.14,20.81 12.87,21.08 12,21.08C9.58,21.08 7.27,20.13 5.57,18.42C4.53,17.38 3.76,16.11 3.33,14.73H2V10.18H3.09C3.93,6.04 7.6,2.92 12,2.92C14.4,2.92 16.71,3.87 18.42,5.58C19.69,6.84 20.54,8.45 20.89,10.18H22V14.67H22V14.69L22,14.73H21.94L18.38,18L13.08,17.4V15.73H17.91L18.72,14.76M9.27,11.77C9.57,11.77 9.86,11.89 10.07,12.11C10.28,12.32 10.4,12.61 10.4,12.91C10.4,13.21 10.28,13.5 10.07,13.71C9.86,13.92 9.57,14.04 9.27,14.04C8.64,14.04 8.13,13.54 8.13,12.91C8.13,12.28 8.64,11.77 9.27,11.77M14.72,11.77C15.35,11.77 15.85,12.28 15.85,12.91C15.85,13.54 15.35,14.04 14.72,14.04C14.09,14.04 13.58,13.54 13.58,12.91A1.14,1.14 0 0,1 14.72,11.77Z" /></svg>', this.anchorOpenSvg = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M16 8c0 3.866-3.582 7-8 7a9 9 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234c-.2.032-.352-.176-.273-.362c.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7M5 8a1 1 0 1 0-2 0a1 1 0 0 0 2 0m4 0a1 1 0 1 0-2 0a1 1 0 0 0 2 0m3 1a1 1 0 1 0 0-2a1 1 0 0 0 0 2"/></svg>', this.anchorCloseSvg = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8z"/></svg>', this.sendIconSvg = "", this.attachIconSvg = "", this.stream = !1, this.customRequest = !1, this.enableFileUpload = !1, this.uploadFileUrl = "", this.open = !1, this.alwaysOpen = !1, this.prefilledFormFields = "{}", this.loading = !1, this.showSetting = !1, this.showAuthAlert = !1, this.handleAddMessage = (
|
|
9306
|
-
this._addMessageHandler(
|
|
9307
|
-
}, this.handleStateEvent = (
|
|
9308
|
-
this._stateEventHandler(
|
|
9309
|
-
}, this.handleToggleEvent = (
|
|
9310
|
-
this._chatbotToggleHandler(
|
|
9311
|
-
}, this.handleFormSubmitEvent = (
|
|
9312
|
-
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);
|
|
9313
9354
|
}, this.fetchStream = Fn;
|
|
9314
9355
|
}
|
|
9315
9356
|
/**
|
|
9316
9357
|
* decodeStreamData
|
|
9317
9358
|
*/
|
|
9318
|
-
decodeStreamData(
|
|
9319
|
-
return new TextDecoder().decode(
|
|
9359
|
+
decodeStreamData(i) {
|
|
9360
|
+
return new TextDecoder().decode(i);
|
|
9320
9361
|
}
|
|
9321
9362
|
addMessage() {
|
|
9322
|
-
const
|
|
9363
|
+
const i = {
|
|
9323
9364
|
author: "assistant",
|
|
9324
9365
|
type: "text",
|
|
9325
9366
|
isThinking: !0,
|
|
9326
9367
|
data: {}
|
|
9327
9368
|
};
|
|
9328
|
-
return b.addMessage(
|
|
9369
|
+
return b.addMessage(i), i;
|
|
9329
9370
|
}
|
|
9330
|
-
addTestMessage(
|
|
9371
|
+
addTestMessage(i = "") {
|
|
9331
9372
|
const t = {
|
|
9332
9373
|
author: "assistant",
|
|
9333
9374
|
type: "text",
|
|
9334
9375
|
isThinking: !1,
|
|
9335
9376
|
data: {
|
|
9336
|
-
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."
|
|
9337
9378
|
}
|
|
9338
9379
|
};
|
|
9339
9380
|
return b.addMessage(t), t;
|
|
9340
9381
|
}
|
|
9341
|
-
addActions(
|
|
9342
|
-
b.addActions(
|
|
9382
|
+
addActions(i = []) {
|
|
9383
|
+
b.addActions(i);
|
|
9343
9384
|
}
|
|
9344
9385
|
render() {
|
|
9345
|
-
return b.disabled && !this.alwaysOpen ? (
|
|
9386
|
+
return b.disabled && !this.alwaysOpen ? (Te.info("Bot is disabled until settings are loaded"), null) : u`
|
|
9346
9387
|
<div class="cb-wrapper${b.open ? " cb-open" : ""}" part="wrapper${b.open ? " open" : ""}" exportparts="wrapper${b.open ? " open" : ""}">
|
|
9347
9388
|
<cb-header title="${this.name}" exportparts="header, header-logo, header-title, header-close"></cb-header>
|
|
9348
9389
|
<cb-message-list
|
|
@@ -9383,16 +9424,16 @@ let H = class extends ae {
|
|
|
9383
9424
|
></cb-user-input>`;
|
|
9384
9425
|
}
|
|
9385
9426
|
connectedCallback() {
|
|
9386
|
-
super.connectedCallback(),
|
|
9427
|
+
super.connectedCallback(), Te.info("connectedCallback"), this.initCssVariables(), addEventListener("c7o:bot:stateEvent", this.handleStateEvent), addEventListener("message:send", this.handleAddMessage), addEventListener("chatbot:toggle", this.handleToggleEvent), addEventListener("form:submit", this.handleFormSubmitEvent), addEventListener("message:send:file", this._uploadFileHandler), addEventListener("audio:toggle", this._audioToggleHandler);
|
|
9387
9428
|
}
|
|
9388
|
-
extractCssVariable(
|
|
9389
|
-
let a =
|
|
9429
|
+
extractCssVariable(i, e, t) {
|
|
9430
|
+
let a = i.getPropertyValue(e).trim();
|
|
9390
9431
|
return a && a != "" ? a : t;
|
|
9391
9432
|
}
|
|
9392
9433
|
// Extract css variables that control the appearance of the chatbot
|
|
9393
9434
|
initCssVariables() {
|
|
9394
|
-
let
|
|
9395
|
-
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");
|
|
9396
9437
|
}
|
|
9397
9438
|
/*
|
|
9398
9439
|
private getPopupPlacement() {
|
|
@@ -9412,40 +9453,40 @@ let H = class extends ae {
|
|
|
9412
9453
|
|
|
9413
9454
|
*/
|
|
9414
9455
|
disconnectedCallback() {
|
|
9415
|
-
|
|
9456
|
+
Te.info("disconnectedCallback"), super.disconnectedCallback(), window.removeEventListener("c7o:bot:stateEvent", this.handleStateEvent), window.removeEventListener("message:send", this.handleAddMessage), window.removeEventListener("chatbot:toggle", this.handleToggleEvent), window.removeEventListener("form:submit", this.handleFormSubmitEvent), window.removeEventListener("message:send:file", this._uploadFileHandler), window.removeEventListener("audio:toggle", this._audioToggleHandler);
|
|
9416
9457
|
}
|
|
9417
9458
|
// This is called when component is loaded, with all the settings (props) values
|
|
9418
9459
|
// Use to initialize
|
|
9419
9460
|
// This is also called when state changes - ??? - i.e. when message added to the array
|
|
9420
|
-
updated(
|
|
9421
|
-
super.updated(
|
|
9422
|
-
this._scrollToBottom();
|
|
9423
|
-
},
|
|
9461
|
+
updated(i) {
|
|
9462
|
+
super.updated(i), i.size > 0 && (Te.info("updated,_changedProperties:", i), this._initSetting()), !this._scrollToBottomTimeout && (this._scrollToBottomTimeout = setTimeout(() => {
|
|
9463
|
+
this._scrollToBottom(), this._scrollToBottomTimeout = void 0;
|
|
9464
|
+
}, 200));
|
|
9424
9465
|
}
|
|
9425
9466
|
// initialize setting
|
|
9426
9467
|
_initSetting() {
|
|
9427
|
-
|
|
9428
|
-
const
|
|
9429
|
-
|
|
9468
|
+
Te.info("_initSetting");
|
|
9469
|
+
const i = b.setting;
|
|
9470
|
+
i.orgId = this.orgId, i.botId = this.botId, i.url = this.url, i.logoUrl = this.logoUrl, i.logoSvg = this.logoSvg, i.closeSvg = this.closeSvg, i.popupLogoSvg = this.popupLogoSvg, i.popupLogoUrl = this.popupLogoUrl, i.botIconSvg = this.botIconSvg, i.userIconSvg = this.userIconSvg, i.systemIconSvg = this.systemIconSvg, i.agentIconSvg = this.agentIconSvg, i.anchorOpenSvg = this.anchorOpenSvg, i.anchorCloseSvg = this.anchorCloseSvg, i.sendIconSvg = this.sendIconSvg, i.attachIconSvg = this.attachIconSvg, b.setSetting(i);
|
|
9430
9471
|
let e = {};
|
|
9431
9472
|
try {
|
|
9432
9473
|
e = JSON.parse(this.prefilledFormFields);
|
|
9433
9474
|
} catch (t) {
|
|
9434
|
-
|
|
9475
|
+
Te.error(`Failed to parse prefilled-form-fields attribute value, error: ${t?.message || ""}`), e = {};
|
|
9435
9476
|
}
|
|
9436
9477
|
b.setPrefilledFormFields(e), this.open && (b.open = !0), this.alwaysOpen && (b.open = !0, b.alwaysOpen = !0);
|
|
9437
9478
|
}
|
|
9438
|
-
setLoading(
|
|
9439
|
-
this.loading =
|
|
9479
|
+
setLoading(i) {
|
|
9480
|
+
this.loading = i;
|
|
9440
9481
|
}
|
|
9441
9482
|
clearConversation() {
|
|
9442
9483
|
b.clearConversation();
|
|
9443
9484
|
}
|
|
9444
|
-
setPrefilledFormFields(
|
|
9445
|
-
b.setPrefilledFormFields(
|
|
9485
|
+
setPrefilledFormFields(i) {
|
|
9486
|
+
b.setPrefilledFormFields(i);
|
|
9446
9487
|
}
|
|
9447
|
-
setOpen(
|
|
9448
|
-
b.open =
|
|
9488
|
+
setOpen(i = !1) {
|
|
9489
|
+
b.open = i;
|
|
9449
9490
|
}
|
|
9450
9491
|
getOpen() {
|
|
9451
9492
|
return b.open;
|
|
@@ -9453,19 +9494,19 @@ let H = class extends ae {
|
|
|
9453
9494
|
toggleOpen() {
|
|
9454
9495
|
b.open = !b.open;
|
|
9455
9496
|
}
|
|
9456
|
-
setInputValue(
|
|
9457
|
-
this.
|
|
9497
|
+
setInputValue(i = "") {
|
|
9498
|
+
this.emitExt("c7o:bot:input:setvalue", {
|
|
9458
9499
|
detail: {
|
|
9459
|
-
inputValue:
|
|
9500
|
+
inputValue: i
|
|
9460
9501
|
}
|
|
9461
9502
|
});
|
|
9462
9503
|
}
|
|
9463
9504
|
// Set conversation context.
|
|
9464
9505
|
// It can be any data related with current user / current conversation,
|
|
9465
9506
|
// for example, user profile, current product user is viewing on the web page, etc.
|
|
9466
|
-
setContext(
|
|
9467
|
-
b.setContext(
|
|
9468
|
-
|
|
9507
|
+
setContext(i = {}) {
|
|
9508
|
+
b.setContext(i).catch((e) => {
|
|
9509
|
+
Te.error(`Failed to set context, error: ${e?.message || ""}`);
|
|
9469
9510
|
});
|
|
9470
9511
|
}
|
|
9471
9512
|
getContext() {
|
|
@@ -9477,12 +9518,12 @@ let H = class extends ae {
|
|
|
9477
9518
|
// check auth
|
|
9478
9519
|
_checkAuth() {
|
|
9479
9520
|
}
|
|
9480
|
-
_stateEventHandler(
|
|
9481
|
-
const e =
|
|
9521
|
+
_stateEventHandler(i) {
|
|
9522
|
+
const e = i.detail, t = e?.type || null;
|
|
9482
9523
|
if (t)
|
|
9483
9524
|
switch (t) {
|
|
9484
9525
|
case "botInitialized": {
|
|
9485
|
-
this.
|
|
9526
|
+
this.emitExt("c7o:bot:botInitialized", {
|
|
9486
9527
|
detail: {
|
|
9487
9528
|
botSettings: e.botSettings
|
|
9488
9529
|
}
|
|
@@ -9490,11 +9531,11 @@ let H = class extends ae {
|
|
|
9490
9531
|
break;
|
|
9491
9532
|
}
|
|
9492
9533
|
case "botConnected": {
|
|
9493
|
-
this.
|
|
9534
|
+
this.emitExt("c7o:bot:botConnected");
|
|
9494
9535
|
break;
|
|
9495
9536
|
}
|
|
9496
9537
|
case "actionPresented": {
|
|
9497
|
-
this.
|
|
9538
|
+
this.emitExt("c7o:bot:actionPresented", {
|
|
9498
9539
|
detail: {
|
|
9499
9540
|
action: e.action
|
|
9500
9541
|
}
|
|
@@ -9502,7 +9543,7 @@ let H = class extends ae {
|
|
|
9502
9543
|
break;
|
|
9503
9544
|
}
|
|
9504
9545
|
case "actionCompleted": {
|
|
9505
|
-
this.
|
|
9546
|
+
this.emitExt("c7o:bot:actionCompleted", {
|
|
9506
9547
|
detail: {
|
|
9507
9548
|
action: e.action,
|
|
9508
9549
|
data: e.data
|
|
@@ -9512,48 +9553,72 @@ let H = class extends ae {
|
|
|
9512
9553
|
}
|
|
9513
9554
|
}
|
|
9514
9555
|
}
|
|
9515
|
-
sanitizeInputText(
|
|
9516
|
-
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);
|
|
9517
9584
|
}
|
|
9518
|
-
_addMessageHandler(
|
|
9519
|
-
console.log("_addMessageHandler called",
|
|
9520
|
-
const e =
|
|
9585
|
+
_addMessageHandler(i) {
|
|
9586
|
+
console.log("_addMessageHandler called", i);
|
|
9587
|
+
const e = i.detail, t = e?.data?.text || null;
|
|
9521
9588
|
if (!t || typeof t != "string" || t.trim() === "") {
|
|
9522
|
-
console.log("_addMessageHandler: input text is empty, ignored",
|
|
9589
|
+
console.log("_addMessageHandler: input text is empty, ignored", i);
|
|
9523
9590
|
return;
|
|
9524
9591
|
}
|
|
9525
|
-
|
|
9526
|
-
detail: e
|
|
9527
|
-
})), b.sendMessage(e);
|
|
9592
|
+
this._processSendMessage(e);
|
|
9528
9593
|
}
|
|
9529
|
-
_chatbotToggleHandler(
|
|
9530
|
-
const e =
|
|
9531
|
-
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();
|
|
9532
9597
|
}
|
|
9533
|
-
_deleteMessageHandler(
|
|
9534
|
-
const e =
|
|
9598
|
+
_deleteMessageHandler(i) {
|
|
9599
|
+
const e = i.detail;
|
|
9535
9600
|
b.removeMessage(e.id);
|
|
9536
9601
|
}
|
|
9537
|
-
async _uploadFileHandler(
|
|
9538
|
-
const e =
|
|
9602
|
+
async _uploadFileHandler(i) {
|
|
9603
|
+
const e = i.detail;
|
|
9539
9604
|
await b.uploadFiles(e.files);
|
|
9540
9605
|
}
|
|
9541
|
-
async _audioToggleHandler(
|
|
9542
|
-
|
|
9606
|
+
async _audioToggleHandler(i) {
|
|
9607
|
+
Te.info("_audioToggleHandler called"), await b.toggleAudio();
|
|
9543
9608
|
}
|
|
9544
9609
|
// setting confirm handler
|
|
9545
|
-
_settingConfirmHandler(
|
|
9546
|
-
const e =
|
|
9610
|
+
_settingConfirmHandler(i) {
|
|
9611
|
+
const e = i.detail;
|
|
9547
9612
|
b.setSetting(e.setting), this.showSetting = !1, this._checkAuth();
|
|
9548
9613
|
}
|
|
9549
|
-
_formSubmitHandler(
|
|
9550
|
-
const e =
|
|
9551
|
-
e.conversationId = b.conversationId, this.
|
|
9614
|
+
_formSubmitHandler(i) {
|
|
9615
|
+
const e = i.detail;
|
|
9616
|
+
e.conversationId = b.conversationId, this.emitExt("c7o:bot:formSubmit", {
|
|
9552
9617
|
detail: e
|
|
9553
9618
|
});
|
|
9554
9619
|
}
|
|
9555
9620
|
// scroll to bottom
|
|
9556
|
-
_scrollToBottom(
|
|
9621
|
+
_scrollToBottom(i = !1) {
|
|
9557
9622
|
this._messageList?.scrollToBottom();
|
|
9558
9623
|
}
|
|
9559
9624
|
};
|