@sprig-technologies/sprig-bundled 2.43.0 → 2.44.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/conversational-ui-COl6FnA8.js +1512 -0
- package/dist/{conversational-ui-B9SOjjQE.cjs → conversational-ui-CRewdjoU.cjs} +2 -2
- package/dist/conversational-v2-styles-BuQiqTAN.js +4 -0
- package/dist/conversational-v2-styles-C-AtgFtc.cjs +1 -0
- package/dist/getAttributedUrl-BAasxYeK.js +193 -0
- package/dist/getAttributedUrl-hV9sdUhw.cjs +12 -0
- package/dist/{index-B2lKZafM.cjs → index-BmZLh0D5.cjs} +4 -4
- package/dist/index-CFqCviWk.js +719 -0
- package/dist/index-D9N16jUh.cjs +1 -0
- package/dist/{index-Bbp8h_Ls.js → index-Rlf7G5CR.js} +229 -224
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +15 -7
- package/dist/index.js +1 -1
- package/dist/view-AjjMeNkz.cjs +1 -0
- package/dist/view-Bu60Bbor.js +1780 -0
- package/package.json +1 -1
- package/dist/conversational-ui-WaAjNR3Q.js +0 -1502
- package/dist/conversational-v2-styles-D3WQxdro.cjs +0 -1
- package/dist/conversational-v2-styles-XFcJt3-u.js +0 -4
- package/dist/getAttributedUrl-CMu77L08.js +0 -197
- package/dist/getAttributedUrl-CkFVhnm0.cjs +0 -12
- package/dist/index-BnE-K_Xo.cjs +0 -1
- package/dist/index-CY9QSu7D.js +0 -706
- package/dist/view-CHBo6RQ4.js +0 -1728
- package/dist/view-s39eJCD9.cjs +0 -1
|
@@ -609,7 +609,7 @@ var ko, zd = ((e, t, r) => (r = e != null ? Id(Ed(e)) : {}, ((s, n, i, a) => {
|
|
|
609
609
|
if (e && (r = await this.sendChunkWithRetries(e)), this.success = !!t, this.success && r && this.dispatch("success"), !r) return;
|
|
610
610
|
}
|
|
611
611
|
}
|
|
612
|
-
},
|
|
612
|
+
}, Hd = El.createUpload, Gd = Object.defineProperty, x = (e, t, r) => ((s, n, i) => n in s ? Gd(s, n, { enumerable: !0, configurable: !0, writable: !0, value: i }) : s[n] = i)(e, typeof t != "symbol" ? t + "" : t, r), $d = Object.defineProperty, Eo = (e, t, r) => ((s, n, i) => n in s ? $d(s, n, { enumerable: !0, configurable: !0, writable: !0, value: i }) : s[n] = i)(e, typeof t != "symbol" ? t + "" : t, r), fe = ((e) => (e[e.Document = 0] = "Document", e[e.DocumentType = 1] = "DocumentType", e[e.Element = 2] = "Element", e[e.Text = 3] = "Text", e[e.CDATA = 4] = "CDATA", e[e.Comment = 5] = "Comment", e))(fe || {});
|
|
613
613
|
const xo = { Node: ["childNodes", "parentNode", "parentElement", "textContent"], ShadowRoot: ["host", "styleSheets"], Element: ["shadowRoot", "querySelector", "querySelectorAll"], MutationObserver: [] }, To = { Node: ["contains", "getRootNode"], ShadowRoot: ["getSelection"], Element: [], MutationObserver: ["constructor"] }, Sr = {};
|
|
614
614
|
function Mi(e) {
|
|
615
615
|
if (Sr[e]) return Sr[e];
|
|
@@ -907,7 +907,7 @@ function rp(e, t) {
|
|
|
907
907
|
return { type: fe.DocumentType, name: e.name, publicId: e.publicId, systemId: e.systemId, rootId: C };
|
|
908
908
|
case e.ELEMENT_NODE:
|
|
909
909
|
return function(m, g) {
|
|
910
|
-
const { doc: v, blockClass: I, blockSelector: O, inlineStylesheet: E, maskInputOptions: A = {}, maskInputFn: M, dataURLOptions: k = {}, inlineImages: T, recordCanvas: R, keepIframeSrcFn: S, newlyAddedElement: P = !1, rootId: D } = g, b = function(L, _,
|
|
910
|
+
const { doc: v, blockClass: I, blockSelector: O, inlineStylesheet: E, maskInputOptions: A = {}, maskInputFn: M, dataURLOptions: k = {}, inlineImages: T, recordCanvas: R, keepIframeSrcFn: S, newlyAddedElement: P = !1, rootId: D } = g, b = function(L, _, ee) {
|
|
911
911
|
try {
|
|
912
912
|
if (typeof _ == "string") {
|
|
913
913
|
if (L.classList.contains(_)) return !0;
|
|
@@ -915,7 +915,7 @@ function rp(e, t) {
|
|
|
915
915
|
const me = L.classList[q];
|
|
916
916
|
if (_.test(me)) return !0;
|
|
917
917
|
}
|
|
918
|
-
if (
|
|
918
|
+
if (ee) return L.matches(ee);
|
|
919
919
|
} catch {
|
|
920
920
|
}
|
|
921
921
|
return !1;
|
|
@@ -931,7 +931,7 @@ function rp(e, t) {
|
|
|
931
931
|
Al(y, _.name, _.value) || (U[_.name] = Ol(v, y, ft(_.name), _.value));
|
|
932
932
|
}
|
|
933
933
|
if (y === "link" && E) {
|
|
934
|
-
const L = Array.from(v.styleSheets).find((
|
|
934
|
+
const L = Array.from(v.styleSheets).find((ee) => ee.href === m.href);
|
|
935
935
|
let _ = null;
|
|
936
936
|
L && (_ = qr(L)), _ && (delete U.rel, delete U.href, U._cssText = _);
|
|
937
937
|
}
|
|
@@ -947,9 +947,9 @@ function rp(e, t) {
|
|
|
947
947
|
if (m.__context === "2d") (function(L) {
|
|
948
948
|
const _ = L.getContext("2d");
|
|
949
949
|
if (!_) return !0;
|
|
950
|
-
for (let
|
|
950
|
+
for (let ee = 0; ee < L.width; ee += 50) for (let q = 0; q < L.height; q += 50) {
|
|
951
951
|
const me = _.getImageData, _e = Lo in me ? me[Lo] : me;
|
|
952
|
-
if (new Uint32Array(_e.call(_,
|
|
952
|
+
if (new Uint32Array(_e.call(_, ee, q, Math.min(50, L.width - ee), Math.min(50, L.height - q)).data.buffer).some((we) => we !== 0)) return !1;
|
|
953
953
|
}
|
|
954
954
|
return !0;
|
|
955
955
|
})(m) || (U.rr_dataURL = m.toDataURL(k.type, k.quality));
|
|
@@ -960,7 +960,7 @@ function rp(e, t) {
|
|
|
960
960
|
}
|
|
961
961
|
if (y === "img" && T) {
|
|
962
962
|
vt || (vt = v.createElement("canvas"), Ao = vt.getContext("2d"));
|
|
963
|
-
const L = m, _ = L.currentSrc || L.getAttribute("src") || "<unknown-src>",
|
|
963
|
+
const L = m, _ = L.currentSrc || L.getAttribute("src") || "<unknown-src>", ee = L.crossOrigin, q = () => {
|
|
964
964
|
L.removeEventListener("load", q);
|
|
965
965
|
try {
|
|
966
966
|
vt.width = L.naturalWidth, vt.height = L.naturalHeight, Ao.drawImage(L, 0, 0), U.rr_dataURL = vt.toDataURL(k.type, k.quality);
|
|
@@ -968,7 +968,7 @@ function rp(e, t) {
|
|
|
968
968
|
if (L.crossOrigin !== "anonymous") return L.crossOrigin = "anonymous", void (L.complete && L.naturalWidth !== 0 ? q() : L.addEventListener("load", q));
|
|
969
969
|
console.warn(`Cannot inline img src=${_}! Error: ${me}`);
|
|
970
970
|
}
|
|
971
|
-
L.crossOrigin === "anonymous" && (
|
|
971
|
+
L.crossOrigin === "anonymous" && (ee ? U.crossOrigin = ee : L.removeAttribute("crossorigin"));
|
|
972
972
|
};
|
|
973
973
|
L.complete && L.naturalWidth !== 0 ? q() : L.addEventListener("load", q);
|
|
974
974
|
}
|
|
@@ -1012,7 +1012,7 @@ function rp(e, t) {
|
|
|
1012
1012
|
return !1;
|
|
1013
1013
|
}
|
|
1014
1014
|
}
|
|
1015
|
-
function
|
|
1015
|
+
function te(e) {
|
|
1016
1016
|
return e == null ? "" : e.toLowerCase();
|
|
1017
1017
|
}
|
|
1018
1018
|
function Et(e, t) {
|
|
@@ -1023,7 +1023,7 @@ function Et(e, t) {
|
|
|
1023
1023
|
if (!T) return console.warn(e, "not serialized"), null;
|
|
1024
1024
|
let R;
|
|
1025
1025
|
R = s.hasNode(e) ? s.getId(e) : !function(b, y) {
|
|
1026
|
-
return !!(y.comment && b.type === fe.Comment || b.type === fe.Element && (y.script && (b.tagName === "script" || b.tagName === "link" && (b.attributes.rel === "preload" || b.attributes.rel === "modulepreload") && b.attributes.as === "script" || b.tagName === "link" && b.attributes.rel === "prefetch" && typeof b.attributes.href == "string" && Oo(b.attributes.href) === "js") || y.headFavicon && (b.tagName === "link" && b.attributes.rel === "shortcut icon" || b.tagName === "meta" && (
|
|
1026
|
+
return !!(y.comment && b.type === fe.Comment || b.type === fe.Element && (y.script && (b.tagName === "script" || b.tagName === "link" && (b.attributes.rel === "preload" || b.attributes.rel === "modulepreload") && b.attributes.as === "script" || b.tagName === "link" && b.attributes.rel === "prefetch" && typeof b.attributes.href == "string" && Oo(b.attributes.href) === "js") || y.headFavicon && (b.tagName === "link" && b.attributes.rel === "shortcut icon" || b.tagName === "meta" && (te(b.attributes.name).match(/^msapplication-tile(image|color)$/) || te(b.attributes.name) === "application-name" || te(b.attributes.rel) === "icon" || te(b.attributes.rel) === "apple-touch-icon" || te(b.attributes.rel) === "shortcut icon")) || b.tagName === "meta" && (y.headMetaDescKeywords && te(b.attributes.name).match(/^description|keywords$/) || y.headMetaSocial && (te(b.attributes.property).match(/^(og|twitter|fb):/) || te(b.attributes.name).match(/^(og|twitter):/) || te(b.attributes.name) === "pinterest") || y.headMetaRobots && (te(b.attributes.name) === "robots" || te(b.attributes.name) === "googlebot" || te(b.attributes.name) === "bingbot") || y.headMetaHttpEquiv && b.attributes["http-equiv"] !== void 0 || y.headMetaAuthorship && (te(b.attributes.name) === "author" || te(b.attributes.name) === "generator" || te(b.attributes.name) === "framework" || te(b.attributes.name) === "publisher" || te(b.attributes.name) === "progid" || te(b.attributes.property).match(/^article:/) || te(b.attributes.property).match(/^product:/)) || y.headMetaVerification && (te(b.attributes.name) === "google-site-verification" || te(b.attributes.name) === "yandex-verification" || te(b.attributes.name) === "csrf-token" || te(b.attributes.name) === "p:domain_verify" || te(b.attributes.name) === "verify-v1" || te(b.attributes.name) === "verification" || te(b.attributes.name) === "shopify-checkout-api-token"))));
|
|
1027
1027
|
}(T, f) && (k || T.type !== fe.Text || T.isStyle || T.textContent.replace(/^\s+|\s+$/gm, "").length) ? Ll() : -2;
|
|
1028
1028
|
const S = Object.assign(T, { id: R });
|
|
1029
1029
|
if (s.add(e, S), R === -2) return null;
|
|
@@ -1058,11 +1058,11 @@ function Et(e, t) {
|
|
|
1058
1058
|
return;
|
|
1059
1059
|
}
|
|
1060
1060
|
if (j !== "complete") {
|
|
1061
|
-
const
|
|
1061
|
+
const ee = setTimeout(() => {
|
|
1062
1062
|
L || (y(), L = !0);
|
|
1063
1063
|
}, U);
|
|
1064
1064
|
return void b.addEventListener("load", () => {
|
|
1065
|
-
clearTimeout(
|
|
1065
|
+
clearTimeout(ee), L = !0, y();
|
|
1066
1066
|
});
|
|
1067
1067
|
}
|
|
1068
1068
|
const _ = "about:blank";
|
|
@@ -1784,7 +1784,7 @@ let kp = Ns, _n = class extends kp {
|
|
|
1784
1784
|
};
|
|
1785
1785
|
var zs = _n;
|
|
1786
1786
|
_n.default = _n;
|
|
1787
|
-
let jl, Ni, Fi, Wl, { isClean: Vl, my:
|
|
1787
|
+
let jl, Ni, Fi, Wl, { isClean: Vl, my: Hl } = ir, Gl = Fs, $l = zs, Ep = Ns;
|
|
1788
1788
|
function Yl(e) {
|
|
1789
1789
|
return e.map((t) => (t.nodes && (t.nodes = Yl(t.nodes)), delete t.source, t));
|
|
1790
1790
|
}
|
|
@@ -1848,14 +1848,14 @@ let Je = class Jl extends Ep {
|
|
|
1848
1848
|
} else if (t.type) t = [t];
|
|
1849
1849
|
else if (t.prop) {
|
|
1850
1850
|
if (t.value === void 0) throw new Error("Value field is missed in node creation");
|
|
1851
|
-
typeof t.value != "string" && (t.value = String(t.value)), t = [new
|
|
1851
|
+
typeof t.value != "string" && (t.value = String(t.value)), t = [new Gl(t)];
|
|
1852
1852
|
} else if (t.selector) t = [new Ni(t)];
|
|
1853
1853
|
else if (t.name) t = [new Fi(t)];
|
|
1854
1854
|
else {
|
|
1855
1855
|
if (!t.text) throw new Error("Unknown node type in node creation");
|
|
1856
1856
|
t = [new $l(t)];
|
|
1857
1857
|
}
|
|
1858
|
-
return t.map((s) => (s[
|
|
1858
|
+
return t.map((s) => (s[Hl] || Jl.rebuild(s), (s = s.proxyOf).parent && s.parent.removeChild(s), s[Vl] && ql(s), s.raws.before === void 0 && r && r.raws.before !== void 0 && (s.raws.before = r.raws.before.replace(/\S/g, "")), s.parent = this.proxyOf, s));
|
|
1859
1859
|
}
|
|
1860
1860
|
prepend(...t) {
|
|
1861
1861
|
t = t.reverse();
|
|
@@ -1948,7 +1948,7 @@ Je.registerParse = (e) => {
|
|
|
1948
1948
|
};
|
|
1949
1949
|
var yt = Je;
|
|
1950
1950
|
Je.default = Je, Je.rebuild = (e) => {
|
|
1951
|
-
e.type === "atrule" ? Object.setPrototypeOf(e, Fi.prototype) : e.type === "rule" ? Object.setPrototypeOf(e, Ni.prototype) : e.type === "decl" ? Object.setPrototypeOf(e,
|
|
1951
|
+
e.type === "atrule" ? Object.setPrototypeOf(e, Fi.prototype) : e.type === "rule" ? Object.setPrototypeOf(e, Ni.prototype) : e.type === "decl" ? Object.setPrototypeOf(e, Gl.prototype) : e.type === "comment" ? Object.setPrototypeOf(e, $l.prototype) : e.type === "root" && Object.setPrototypeOf(e, Wl.prototype), e[Hl] = !0, e.nodes && e.nodes.forEach((t) => {
|
|
1952
1952
|
Je.rebuild(t);
|
|
1953
1953
|
});
|
|
1954
1954
|
};
|
|
@@ -2002,7 +2002,7 @@ let Tp = Xl, Fn = class {
|
|
|
2002
2002
|
};
|
|
2003
2003
|
var zi = Fn;
|
|
2004
2004
|
Fn.default = Fn;
|
|
2005
|
-
const nn = 39, Vo = 34, kr = 92,
|
|
2005
|
+
const nn = 39, Vo = 34, kr = 92, Ho = 47, Er = 10, Bt = 32, xr = 12, Tr = 9, Rr = 13, Rp = 91, Lp = 93, Op = 40, Ap = 41, Mp = 123, Up = 125, Dp = 59, Pp = 42, _p = 58, Np = 64, Lr = /[\t\n\f\r "#'()/;[\\\]{}]/g, Or = /[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g, Fp = /.[\r\n"'(/\\]/, Go = /[\da-f]/i;
|
|
2006
2006
|
let Ql = yt, Xr = class extends Ql {
|
|
2007
2007
|
constructor(e) {
|
|
2008
2008
|
super(e), this.type = "atrule";
|
|
@@ -2137,24 +2137,24 @@ let zp = Fs, jp = function(e, t = {}) {
|
|
|
2137
2137
|
break;
|
|
2138
2138
|
case kr:
|
|
2139
2139
|
for (s = p, a = !0; h.charCodeAt(s + 1) === kr; ) s += 1, a = !a;
|
|
2140
|
-
if (r = h.charCodeAt(s + 1), a && r !==
|
|
2141
|
-
for (;
|
|
2140
|
+
if (r = h.charCodeAt(s + 1), a && r !== Ho && r !== Bt && r !== Er && r !== Tr && r !== Rr && r !== xr && (s += 1, Go.test(h.charAt(s)))) {
|
|
2141
|
+
for (; Go.test(h.charAt(s + 1)); ) s += 1;
|
|
2142
2142
|
h.charCodeAt(s + 1) === Bt && (s += 1);
|
|
2143
2143
|
}
|
|
2144
2144
|
d = ["word", h.slice(p, s + 1), p, s], p = s;
|
|
2145
2145
|
break;
|
|
2146
2146
|
default:
|
|
2147
|
-
r ===
|
|
2147
|
+
r === Ho && h.charCodeAt(p + 1) === Pp ? (s = h.indexOf("*/", p + 2) + 1, s === 0 && (f || I ? s = h.length : g("comment")), d = ["comment", h.slice(p, s + 1), p, s], p = s) : (Or.lastIndex = p + 1, Or.test(h), s = Or.lastIndex === 0 ? h.length - 1 : Or.lastIndex - 2, d = ["word", h.slice(p, s + 1), p, s], C.push(d), p = s);
|
|
2148
2148
|
}
|
|
2149
2149
|
return p++, d;
|
|
2150
2150
|
}, position: function() {
|
|
2151
2151
|
return p;
|
|
2152
2152
|
} };
|
|
2153
|
-
}, Wp = zs, Vp = ji,
|
|
2153
|
+
}, Wp = zs, Vp = ji, Hp = gr, $o = Wi;
|
|
2154
2154
|
const Yo = { empty: !0, space: !0 };
|
|
2155
|
-
var
|
|
2155
|
+
var Gp = class {
|
|
2156
2156
|
constructor(e) {
|
|
2157
|
-
this.input = e, this.root = new
|
|
2157
|
+
this.input = e, this.root = new Hp(), this.current = this.root, this.spaces = "", this.semicolon = !1, this.createTokenizer(), this.root.source = { input: e, start: { column: 1, line: 1, offset: 0 } };
|
|
2158
2158
|
}
|
|
2159
2159
|
atrule(e) {
|
|
2160
2160
|
let t, r, s, n = new Vp();
|
|
@@ -2396,7 +2396,7 @@ var Hp = class {
|
|
|
2396
2396
|
throw this.input.error("At-rule without name", { offset: t[2] }, { offset: t[2] + t[1].length });
|
|
2397
2397
|
}
|
|
2398
2398
|
};
|
|
2399
|
-
let $p = yt, Yp =
|
|
2399
|
+
let $p = yt, Yp = Gp, qp = Bs;
|
|
2400
2400
|
function es(e, t) {
|
|
2401
2401
|
let r = new qp(e, t), s = new Yp(r);
|
|
2402
2402
|
try {
|
|
@@ -2712,7 +2712,7 @@ let jn = class {
|
|
|
2712
2712
|
};
|
|
2713
2713
|
var ch = jn;
|
|
2714
2714
|
jn.default = jn;
|
|
2715
|
-
let uh = ch, dh = ac, ph = Bi, hh = gr,
|
|
2715
|
+
let uh = ch, dh = ac, ph = Bi, hh = gr, Ht = class {
|
|
2716
2716
|
constructor(e = []) {
|
|
2717
2717
|
this.version = "8.4.38", this.plugins = this.normalize(e);
|
|
2718
2718
|
}
|
|
@@ -2731,8 +2731,8 @@ let uh = ch, dh = ac, ph = Bi, hh = gr, Gt = class {
|
|
|
2731
2731
|
return this.plugins = this.plugins.concat(this.normalize([e])), this;
|
|
2732
2732
|
}
|
|
2733
2733
|
};
|
|
2734
|
-
var mh =
|
|
2735
|
-
|
|
2734
|
+
var mh = Ht;
|
|
2735
|
+
Ht.default = Ht, hh.registerProcessor(Ht), ph.registerProcessor(Ht);
|
|
2736
2736
|
let fh = Fs, gh = Pl, yh = zs, wh = ji, bh = Bs, vh = gr, Sh = Wi;
|
|
2737
2737
|
function lr(e, t) {
|
|
2738
2738
|
if (Array.isArray(e)) return e.map((n) => lr(n));
|
|
@@ -2804,7 +2804,7 @@ var Vn = { exports: {} }, oe = String, ra = function() {
|
|
|
2804
2804
|
Vn.exports = ra(), Vn.exports.createColors = ra;
|
|
2805
2805
|
var Fh = Vn.exports;
|
|
2806
2806
|
const Pe = Nh(Object.freeze(Object.defineProperty({ __proto__: null, default: {} }, Symbol.toStringTag, { value: "Module" })));
|
|
2807
|
-
let sa = Fh, na = Pe,
|
|
2807
|
+
let sa = Fh, na = Pe, Hn = class lc extends Error {
|
|
2808
2808
|
constructor(t, r, s, n, i, a) {
|
|
2809
2809
|
super(t), this.name = "CssSyntaxError", this.reason = t, i && (this.file = i), n && (this.source = n), a && (this.plugin = a), r !== void 0 && s !== void 0 && (typeof r == "number" ? (this.line = r, this.column = s) : (this.line = r.line, this.column = r.column, this.endLine = s.line, this.endColumn = s.column)), this.setMessage(), Error.captureStackTrace && Error.captureStackTrace(this, lc);
|
|
2810
2810
|
}
|
|
@@ -2839,8 +2839,8 @@ let sa = Fh, na = Pe, Gn = class lc extends Error {
|
|
|
2839
2839
|
`), this.name + ": " + this.message + t;
|
|
2840
2840
|
}
|
|
2841
2841
|
};
|
|
2842
|
-
var
|
|
2843
|
-
|
|
2842
|
+
var Hi = Hn;
|
|
2843
|
+
Hn.default = Hn;
|
|
2844
2844
|
var cr = {};
|
|
2845
2845
|
cr.isClean = Symbol("isClean"), cr.my = Symbol("my");
|
|
2846
2846
|
const ia = { after: `
|
|
@@ -2849,7 +2849,7 @@ const ia = { after: `
|
|
|
2849
2849
|
`, beforeDecl: `
|
|
2850
2850
|
`, beforeOpen: " ", beforeRule: `
|
|
2851
2851
|
`, colon: ": ", commentLeft: " ", commentRight: " ", emptyBody: "", indent: " ", semicolon: !1 };
|
|
2852
|
-
let
|
|
2852
|
+
let Gn = class {
|
|
2853
2853
|
constructor(e) {
|
|
2854
2854
|
this.builder = e;
|
|
2855
2855
|
}
|
|
@@ -2995,15 +2995,15 @@ let Hn = class {
|
|
|
2995
2995
|
this[e.type](e, t);
|
|
2996
2996
|
}
|
|
2997
2997
|
};
|
|
2998
|
-
var cc =
|
|
2999
|
-
|
|
2998
|
+
var cc = Gn;
|
|
2999
|
+
Gn.default = Gn;
|
|
3000
3000
|
let Bh = cc;
|
|
3001
3001
|
function $n(e, t) {
|
|
3002
3002
|
new Bh(t).stringify(e);
|
|
3003
3003
|
}
|
|
3004
3004
|
var js = $n;
|
|
3005
3005
|
$n.default = $n;
|
|
3006
|
-
let { isClean: Ar, my: zh } = cr, jh =
|
|
3006
|
+
let { isClean: Ar, my: zh } = cr, jh = Hi, Wh = cc, Vh = js;
|
|
3007
3007
|
function Yn(e, t) {
|
|
3008
3008
|
let r = new e.constructor();
|
|
3009
3009
|
for (let s in e) {
|
|
@@ -3160,7 +3160,7 @@ let qn = class {
|
|
|
3160
3160
|
};
|
|
3161
3161
|
var Ws = qn;
|
|
3162
3162
|
qn.default = qn;
|
|
3163
|
-
let
|
|
3163
|
+
let Hh = Ws, Jn = class extends Hh {
|
|
3164
3164
|
constructor(e) {
|
|
3165
3165
|
e && e.value !== void 0 && typeof e.value != "string" && (e = { ...e, value: String(e.value) }), super(e), this.type = "decl";
|
|
3166
3166
|
}
|
|
@@ -3170,7 +3170,7 @@ let Gh = Ws, Jn = class extends Gh {
|
|
|
3170
3170
|
};
|
|
3171
3171
|
var Vs = Jn;
|
|
3172
3172
|
Jn.default = Jn;
|
|
3173
|
-
var
|
|
3173
|
+
var Gh = { nanoid: (e = 21) => {
|
|
3174
3174
|
let t = "", r = e;
|
|
3175
3175
|
for (; r--; ) t += "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[64 * Math.random() | 0];
|
|
3176
3176
|
return t;
|
|
@@ -3242,7 +3242,7 @@ let { SourceMapConsumer: oa, SourceMapGenerator: aa } = Pe, { existsSync: $h, re
|
|
|
3242
3242
|
};
|
|
3243
3243
|
var uc = Kn;
|
|
3244
3244
|
Kn.default = Kn;
|
|
3245
|
-
let { SourceMapConsumer: Jh, SourceMapGenerator: Kh } = Pe, { fileURLToPath: la, pathToFileURL: Mr } = Pe, { isAbsolute: Zn, resolve: Xn } = Pe, { nanoid: Zh } =
|
|
3245
|
+
let { SourceMapConsumer: Jh, SourceMapGenerator: Kh } = Pe, { fileURLToPath: la, pathToFileURL: Mr } = Pe, { isAbsolute: Zn, resolve: Xn } = Pe, { nanoid: Zh } = Gh, an = Pe, ca = Hi, Xh = uc, ln = Symbol("fromOffsetCache"), Qh = !!(Jh && Kh), ua = !!(Xn && Zn), ts = class {
|
|
3246
3246
|
constructor(e, t = {}) {
|
|
3247
3247
|
if (e == null || typeof e == "object" && !e.toString) throw new Error(`PostCSS received ${e} instead of CSS string`);
|
|
3248
3248
|
if (this.css = e.toString(), this.css[0] === "\uFEFF" || this.css[0] === "" ? (this.hasBOM = !0, this.css = this.css.slice(1)) : this.hasBOM = !1, t.from && (!ua || /^\w+:\/\//.test(t.from) || Zn(t.from) ? this.file = t.from : this.file = Xn(t.from)), ua && Qh) {
|
|
@@ -3326,9 +3326,9 @@ let { SourceMapConsumer: Jh, SourceMapGenerator: Kh } = Pe, { fileURLToPath: la,
|
|
|
3326
3326
|
return this.file || this.id;
|
|
3327
3327
|
}
|
|
3328
3328
|
};
|
|
3329
|
-
var
|
|
3329
|
+
var Hs = ts;
|
|
3330
3330
|
ts.default = ts, an && an.registerInput && an.registerInput(ts);
|
|
3331
|
-
let { SourceMapConsumer: dc, SourceMapGenerator: rs } = Pe, { dirname: ss, relative: pc, resolve: hc, sep: mc } = Pe, { pathToFileURL: da } = Pe, em =
|
|
3331
|
+
let { SourceMapConsumer: dc, SourceMapGenerator: rs } = Pe, { dirname: ss, relative: pc, resolve: hc, sep: mc } = Pe, { pathToFileURL: da } = Pe, em = Hs, tm = !!(dc && rs), rm = !!(ss && hc && pc && mc);
|
|
3332
3332
|
var fc = class {
|
|
3333
3333
|
constructor(e, t, r, s) {
|
|
3334
3334
|
this.stringify = e, this.mapOpts = r.map || {}, this.root = t, this.opts = r, this.css = s, this.originalCSS = s, this.usesFileUrls = !this.mapOpts.from && this.mapOpts.absolute, this.memoizedFileURLs = /* @__PURE__ */ new Map(), this.memoizedPaths = /* @__PURE__ */ new Map(), this.memoizedURLs = /* @__PURE__ */ new Map();
|
|
@@ -3466,9 +3466,9 @@ let sm = Ws, Qn = class extends sm {
|
|
|
3466
3466
|
super(e), this.type = "comment";
|
|
3467
3467
|
}
|
|
3468
3468
|
};
|
|
3469
|
-
var
|
|
3469
|
+
var Gs = Qn;
|
|
3470
3470
|
Qn.default = Qn;
|
|
3471
|
-
let gc,
|
|
3471
|
+
let gc, Gi, $i, yc, { isClean: wc, my: bc } = cr, vc = Vs, Sc = Gs, nm = Ws;
|
|
3472
3472
|
function Ic(e) {
|
|
3473
3473
|
return e.map((t) => (t.nodes && (t.nodes = Ic(t.nodes)), delete t.source, t));
|
|
3474
3474
|
}
|
|
@@ -3533,7 +3533,7 @@ let Ke = class kc extends nm {
|
|
|
3533
3533
|
else if (t.prop) {
|
|
3534
3534
|
if (t.value === void 0) throw new Error("Value field is missed in node creation");
|
|
3535
3535
|
typeof t.value != "string" && (t.value = String(t.value)), t = [new vc(t)];
|
|
3536
|
-
} else if (t.selector) t = [new
|
|
3536
|
+
} else if (t.selector) t = [new Gi(t)];
|
|
3537
3537
|
else if (t.name) t = [new $i(t)];
|
|
3538
3538
|
else {
|
|
3539
3539
|
if (!t.text) throw new Error("Unknown node type in node creation");
|
|
@@ -3624,7 +3624,7 @@ let Ke = class kc extends nm {
|
|
|
3624
3624
|
Ke.registerParse = (e) => {
|
|
3625
3625
|
gc = e;
|
|
3626
3626
|
}, Ke.registerRule = (e) => {
|
|
3627
|
-
|
|
3627
|
+
Gi = e;
|
|
3628
3628
|
}, Ke.registerAtRule = (e) => {
|
|
3629
3629
|
$i = e;
|
|
3630
3630
|
}, Ke.registerRoot = (e) => {
|
|
@@ -3632,7 +3632,7 @@ Ke.registerParse = (e) => {
|
|
|
3632
3632
|
};
|
|
3633
3633
|
var wt = Ke;
|
|
3634
3634
|
Ke.default = Ke, Ke.rebuild = (e) => {
|
|
3635
|
-
e.type === "atrule" ? Object.setPrototypeOf(e, $i.prototype) : e.type === "rule" ? Object.setPrototypeOf(e,
|
|
3635
|
+
e.type === "atrule" ? Object.setPrototypeOf(e, $i.prototype) : e.type === "rule" ? Object.setPrototypeOf(e, Gi.prototype) : e.type === "decl" ? Object.setPrototypeOf(e, vc.prototype) : e.type === "comment" ? Object.setPrototypeOf(e, Sc.prototype) : e.type === "root" && Object.setPrototypeOf(e, yc.prototype), e[bc] = !0, e.nodes && e.nodes.forEach((t) => {
|
|
3636
3636
|
Ke.rebuild(t);
|
|
3637
3637
|
});
|
|
3638
3638
|
};
|
|
@@ -3834,7 +3834,7 @@ let bm = Vs, vm = function(e, t = {}) {
|
|
|
3834
3834
|
}, position: function() {
|
|
3835
3835
|
return p;
|
|
3836
3836
|
} };
|
|
3837
|
-
}, Sm =
|
|
3837
|
+
}, Sm = Gs, Im = Ji, Cm = yr, fa = Ki;
|
|
3838
3838
|
const ga = { empty: !0, space: !0 };
|
|
3839
3839
|
var km = class {
|
|
3840
3840
|
constructor(e) {
|
|
@@ -4080,7 +4080,7 @@ var km = class {
|
|
|
4080
4080
|
throw this.input.error("At-rule without name", { offset: t[2] }, { offset: t[2] + t[1].length });
|
|
4081
4081
|
}
|
|
4082
4082
|
};
|
|
4083
|
-
let Em = wt, xm = km, Tm =
|
|
4083
|
+
let Em = wt, xm = km, Tm = Hs;
|
|
4084
4084
|
function os(e, t) {
|
|
4085
4085
|
let r = new Tm(e, t), s = new xm(r);
|
|
4086
4086
|
try {
|
|
@@ -4396,7 +4396,7 @@ let ni = class {
|
|
|
4396
4396
|
};
|
|
4397
4397
|
var Wm = ni;
|
|
4398
4398
|
ni.default = ni;
|
|
4399
|
-
let Vm = Wm,
|
|
4399
|
+
let Vm = Wm, Hm = _c, Gm = Yi, $m = yr, Gt = class {
|
|
4400
4400
|
constructor(e = []) {
|
|
4401
4401
|
this.version = "8.4.38", this.plugins = this.normalize(e);
|
|
4402
4402
|
}
|
|
@@ -4409,15 +4409,15 @@ let Vm = Wm, Gm = _c, Hm = Yi, $m = yr, Ht = class {
|
|
|
4409
4409
|
return t;
|
|
4410
4410
|
}
|
|
4411
4411
|
process(e, t = {}) {
|
|
4412
|
-
return this.plugins.length || t.parser || t.stringifier || t.syntax ? new
|
|
4412
|
+
return this.plugins.length || t.parser || t.stringifier || t.syntax ? new Hm(this, e, t) : new Vm(this, e, t);
|
|
4413
4413
|
}
|
|
4414
4414
|
use(e) {
|
|
4415
4415
|
return this.plugins = this.plugins.concat(this.normalize([e])), this;
|
|
4416
4416
|
}
|
|
4417
4417
|
};
|
|
4418
|
-
var Ym =
|
|
4419
|
-
|
|
4420
|
-
let qm = Vs, Jm = uc, Km =
|
|
4418
|
+
var Ym = Gt;
|
|
4419
|
+
Gt.default = Gt, $m.registerProcessor(Gt), Gm.registerProcessor(Gt);
|
|
4420
|
+
let qm = Vs, Jm = uc, Km = Gs, Zm = Ji, Xm = Hs, Qm = yr, ef = Ki;
|
|
4421
4421
|
function pr(e, t) {
|
|
4422
4422
|
if (Array.isArray(e)) return e.map((n) => pr(n));
|
|
4423
4423
|
let { inputs: r, ...s } = e;
|
|
@@ -4441,7 +4441,7 @@ function pr(e, t) {
|
|
|
4441
4441
|
}
|
|
4442
4442
|
var tf = pr;
|
|
4443
4443
|
pr.default = pr;
|
|
4444
|
-
let rf =
|
|
4444
|
+
let rf = Hi, ba = Vs, sf = _c, nf = wt, ii = Ym, of = js, af = tf, va = Yi, lf = Tc, Sa = Gs, Ia = Ji, cf = qi, uf = Hs, df = Zi, pf = Mc, Ca = Ki, ka = yr, hf = Ws;
|
|
4445
4445
|
function Z(...e) {
|
|
4446
4446
|
return e.length === 1 && Array.isArray(e[0]) && (e = e[0]), new ii(e);
|
|
4447
4447
|
}
|
|
@@ -4557,7 +4557,7 @@ const V = { childNodes: function(e) {
|
|
|
4557
4557
|
}, querySelectorAll: function(e, t) {
|
|
4558
4558
|
return tt("Element", e, "querySelectorAll")(t);
|
|
4559
4559
|
}, mutationObserver: Nc };
|
|
4560
|
-
function
|
|
4560
|
+
function ve(e, t, r = document) {
|
|
4561
4561
|
const s = { capture: !0, passive: !0 };
|
|
4562
4562
|
return r.addEventListener(e, t, s), () => r.removeEventListener(e, t, s);
|
|
4563
4563
|
}
|
|
@@ -4645,7 +4645,7 @@ function oi(e) {
|
|
|
4645
4645
|
function Vc(e, t) {
|
|
4646
4646
|
return !!(e.nodeName === "IFRAME" && t.getMeta(e));
|
|
4647
4647
|
}
|
|
4648
|
-
function
|
|
4648
|
+
function Hc(e, t) {
|
|
4649
4649
|
return !!(e.nodeName === "LINK" && e.nodeType === e.ELEMENT_NODE && e.getAttribute && e.getAttribute("rel") === "stylesheet" && t.getMeta(e));
|
|
4650
4650
|
}
|
|
4651
4651
|
function ai(e) {
|
|
@@ -4677,7 +4677,7 @@ class ff {
|
|
|
4677
4677
|
return this.id++;
|
|
4678
4678
|
}
|
|
4679
4679
|
}
|
|
4680
|
-
function
|
|
4680
|
+
function Gc(e) {
|
|
4681
4681
|
var t;
|
|
4682
4682
|
let r = null;
|
|
4683
4683
|
return "getRootNode" in e && ((t = V.getRootNode(e)) == null ? void 0 : t.nodeType) === Node.DOCUMENT_FRAGMENT_NODE && V.host(V.getRootNode(e)) && (r = V.host(V.getRootNode(e))), r;
|
|
@@ -4687,7 +4687,7 @@ function gf(e) {
|
|
|
4687
4687
|
if (!t) return !1;
|
|
4688
4688
|
const r = function(s) {
|
|
4689
4689
|
let n, i = s;
|
|
4690
|
-
for (; n =
|
|
4690
|
+
for (; n = Gc(i); ) i = n;
|
|
4691
4691
|
return i;
|
|
4692
4692
|
}(e);
|
|
4693
4693
|
return V.contains(t, r);
|
|
@@ -4696,7 +4696,7 @@ function $c(e) {
|
|
|
4696
4696
|
const t = e.ownerDocument;
|
|
4697
4697
|
return !!t && (V.contains(t, e) || gf(e));
|
|
4698
4698
|
}
|
|
4699
|
-
var Y = ((e) => (e[e.DomContentLoaded = 0] = "DomContentLoaded", e[e.Load = 1] = "Load", e[e.FullSnapshot = 2] = "FullSnapshot", e[e.IncrementalSnapshot = 3] = "IncrementalSnapshot", e[e.Meta = 4] = "Meta", e[e.Custom = 5] = "Custom", e[e.Plugin = 6] = "Plugin", e))(Y || {}),
|
|
4699
|
+
var Y = ((e) => (e[e.DomContentLoaded = 0] = "DomContentLoaded", e[e.Load = 1] = "Load", e[e.FullSnapshot = 2] = "FullSnapshot", e[e.IncrementalSnapshot = 3] = "IncrementalSnapshot", e[e.Meta = 4] = "Meta", e[e.Custom = 5] = "Custom", e[e.Plugin = 6] = "Plugin", e))(Y || {}), G = ((e) => (e[e.Mutation = 0] = "Mutation", e[e.MouseMove = 1] = "MouseMove", e[e.MouseInteraction = 2] = "MouseInteraction", e[e.Scroll = 3] = "Scroll", e[e.ViewportResize = 4] = "ViewportResize", e[e.Input = 5] = "Input", e[e.TouchMove = 6] = "TouchMove", e[e.MediaInteraction = 7] = "MediaInteraction", e[e.StyleSheetRule = 8] = "StyleSheetRule", e[e.CanvasMutation = 9] = "CanvasMutation", e[e.Font = 10] = "Font", e[e.Log = 11] = "Log", e[e.Drag = 12] = "Drag", e[e.StyleDeclaration = 13] = "StyleDeclaration", e[e.Selection = 14] = "Selection", e[e.AdoptedStyleSheet = 15] = "AdoptedStyleSheet", e[e.CustomElement = 16] = "CustomElement", e))(G || {}), Ce = ((e) => (e[e.MouseUp = 0] = "MouseUp", e[e.MouseDown = 1] = "MouseDown", e[e.Click = 2] = "Click", e[e.ContextMenu = 3] = "ContextMenu", e[e.DblClick = 4] = "DblClick", e[e.Focus = 5] = "Focus", e[e.Blur = 6] = "Blur", e[e.TouchStart = 7] = "TouchStart", e[e.TouchMove_Departed = 8] = "TouchMove_Departed", e[e.TouchEnd = 9] = "TouchEnd", e[e.TouchCancel = 10] = "TouchCancel", e))(Ce || {}), Ge = ((e) => (e[e.Mouse = 0] = "Mouse", e[e.Pen = 1] = "Pen", e[e.Touch = 2] = "Touch", e))(Ge || {}), Ct = ((e) => (e[e["2D"] = 0] = "2D", e[e.WebGL = 1] = "WebGL", e[e.WebGL2 = 2] = "WebGL2", e))(Ct || {}), kt = ((e) => (e[e.Play = 0] = "Play", e[e.Pause = 1] = "Pause", e[e.Seeked = 2] = "Seeked", e[e.VolumeChange = 3] = "VolumeChange", e[e.RateChange = 4] = "RateChange", e))(kt || {});
|
|
4700
4700
|
function La(e) {
|
|
4701
4701
|
return "__ln" in e;
|
|
4702
4702
|
}
|
|
@@ -4740,10 +4740,10 @@ class wf {
|
|
|
4740
4740
|
}, i = (l) => {
|
|
4741
4741
|
const c = V.parentNode(l);
|
|
4742
4742
|
if (!c || !$c(l) || c.tagName === "TEXTAREA") return;
|
|
4743
|
-
const u = Zt(c) ? this.mirror.getId(
|
|
4743
|
+
const u = Zt(c) ? this.mirror.getId(Gc(l)) : this.mirror.getId(c), d = n(l);
|
|
4744
4744
|
if (u === -1 || d === -1) return s.addNode(l);
|
|
4745
4745
|
const h = Et(l, { doc: this.doc, mirror: this.mirror, blockClass: this.blockClass, blockSelector: this.blockSelector, maskTextClass: this.maskTextClass, maskTextSelector: this.maskTextSelector, skipChild: !0, newlyAddedElement: !0, inlineStylesheet: this.inlineStylesheet, maskInputOptions: this.maskInputOptions, maskTextFn: this.maskTextFn, maskInputFn: this.maskInputFn, slimDOMOptions: this.slimDOMOptions, dataURLOptions: this.dataURLOptions, recordCanvas: this.recordCanvas, inlineImages: this.inlineImages, onSerialize: (f) => {
|
|
4746
|
-
Vc(f, this.mirror) && this.iframeManager.addIframe(f),
|
|
4746
|
+
Vc(f, this.mirror) && this.iframeManager.addIframe(f), Hc(f, this.mirror) && this.stylesheetManager.trackLinkElement(f), ai(l) && this.shadowDomManager.addShadowRoot(V.shadowRoot(l), this.doc);
|
|
4747
4747
|
}, onIframeLoad: (f, w) => {
|
|
4748
4748
|
this.iframeManager.attachIframe(f, w), this.shadowDomManager.observeAttachShadow(f);
|
|
4749
4749
|
}, onStylesheetLoad: (f, w) => {
|
|
@@ -4950,17 +4950,17 @@ function bf({ mouseInteractionCb: e, doc: t, mirror: r, blockClass: s, blockSele
|
|
|
4950
4950
|
if ("pointerType" in f) {
|
|
4951
4951
|
switch (f.pointerType) {
|
|
4952
4952
|
case "mouse":
|
|
4953
|
-
p =
|
|
4953
|
+
p = Ge.Mouse;
|
|
4954
4954
|
break;
|
|
4955
4955
|
case "touch":
|
|
4956
|
-
p =
|
|
4956
|
+
p = Ge.Touch;
|
|
4957
4957
|
break;
|
|
4958
4958
|
case "pen":
|
|
4959
|
-
p =
|
|
4959
|
+
p = Ge.Pen;
|
|
4960
4960
|
}
|
|
4961
|
-
p ===
|
|
4962
|
-
} else oi(f) && (p =
|
|
4963
|
-
p !== null ? (l = p, (C.startsWith("Touch") && p ===
|
|
4961
|
+
p === Ge.Touch ? Ce[h] === Ce.MouseDown ? C = "TouchStart" : Ce[h] === Ce.MouseUp && (C = "TouchEnd") : Ge.Pen;
|
|
4962
|
+
} else oi(f) && (p = Ge.Touch);
|
|
4963
|
+
p !== null ? (l = p, (C.startsWith("Touch") && p === Ge.Touch || C.startsWith("Mouse") && p === Ge.Mouse) && (p = null)) : Ce[h] === Ce.Click && (p = l, l = null);
|
|
4964
4964
|
const m = oi(f) ? f.changedTouches[0] : f;
|
|
4965
4965
|
if (!m) return;
|
|
4966
4966
|
const g = r.getId(w), { clientX: v, clientY: I } = m;
|
|
@@ -4975,13 +4975,13 @@ function bf({ mouseInteractionCb: e, doc: t, mirror: r, blockClass: s, blockSele
|
|
|
4975
4975
|
case Ce.TouchEnd:
|
|
4976
4976
|
return;
|
|
4977
4977
|
}
|
|
4978
|
-
o.push(
|
|
4978
|
+
o.push(ve(u, d, t));
|
|
4979
4979
|
}), $(() => {
|
|
4980
4980
|
o.forEach((c) => c());
|
|
4981
4981
|
});
|
|
4982
4982
|
}
|
|
4983
4983
|
function Jc({ scrollCb: e, doc: t, mirror: r, blockClass: s, blockSelector: n, sampling: i }) {
|
|
4984
|
-
return
|
|
4984
|
+
return ve("scroll", $($t($((a) => {
|
|
4985
4985
|
const o = er(a);
|
|
4986
4986
|
if (!o || Se(o, s, n, !0)) return;
|
|
4987
4987
|
const l = r.getId(o);
|
|
@@ -5074,14 +5074,14 @@ function Sf(e, t = {}) {
|
|
|
5074
5074
|
m(M.map((D) => (D.timeOffset -= P, D)), S), M = [], A = null;
|
|
5075
5075
|
}), E), T = $($t($((S) => {
|
|
5076
5076
|
const P = er(S), { clientX: D, clientY: b } = oi(S) ? S.changedTouches[0] : S;
|
|
5077
|
-
A || (A = ws()), M.push({ x: D, y: b, id: I.getId(P), timeOffset: ws() - A }), k(typeof DragEvent < "u" && S instanceof DragEvent ?
|
|
5078
|
-
}), O, { trailing: !1 })), R = [
|
|
5077
|
+
A || (A = ws()), M.push({ x: D, y: b, id: I.getId(P), timeOffset: ws() - A }), k(typeof DragEvent < "u" && S instanceof DragEvent ? G.Drag : S instanceof MouseEvent ? G.MouseMove : G.TouchMove);
|
|
5078
|
+
}), O, { trailing: !1 })), R = [ve("mousemove", T, v), ve("touchmove", T, v), ve("drag", T, v)];
|
|
5079
5079
|
return $(() => {
|
|
5080
5080
|
R.forEach((S) => S());
|
|
5081
5081
|
});
|
|
5082
5082
|
}(e), i = bf(e), a = Jc(e), o = function({ viewportResizeCb: m }, { win: g }) {
|
|
5083
5083
|
let v = -1, I = -1;
|
|
5084
|
-
return
|
|
5084
|
+
return ve("resize", $($t($(() => {
|
|
5085
5085
|
const O = Bc(), E = zc();
|
|
5086
5086
|
v === O && I === E || (m({ width: Number(E), height: Number(O) }), v = O, I = E);
|
|
5087
5087
|
}), 200)), g);
|
|
@@ -5090,14 +5090,14 @@ function Sf(e, t = {}) {
|
|
|
5090
5090
|
let j = er(F);
|
|
5091
5091
|
const L = F.isTrusted, _ = j && j.tagName;
|
|
5092
5092
|
if (j && _ === "OPTION" && (j = V.parentElement(j)), !j || !_ || vf.indexOf(_) < 0 || Se(j, I, O, !0) || j.classList.contains(E) || A && j.matches(A)) return;
|
|
5093
|
-
let
|
|
5093
|
+
let ee = j.value, q = !1;
|
|
5094
5094
|
const me = Di(j) || "";
|
|
5095
|
-
me === "radio" || me === "checkbox" ? q = j.checked : (M[_.toLowerCase()] || M[me]) && (
|
|
5095
|
+
me === "radio" || me === "checkbox" ? q = j.checked : (M[_.toLowerCase()] || M[me]) && (ee = Ui({ element: j, maskInputOptions: M, tagName: _, type: me, value: ee, maskInputFn: k })), P(j, R ? { text: ee, isChecked: q, userTriggered: L } : { text: ee, isChecked: q });
|
|
5096
5096
|
const _e = j.name;
|
|
5097
5097
|
me === "radio" && _e && q && g.querySelectorAll(`input[type="radio"][name="${_e}"]`).forEach((we) => {
|
|
5098
5098
|
if (we !== j) {
|
|
5099
|
-
const
|
|
5100
|
-
P(we, R ? { text:
|
|
5099
|
+
const H = we.value;
|
|
5100
|
+
P(we, R ? { text: H, isChecked: !q, userTriggered: !1 } : { text: H, isChecked: !q });
|
|
5101
5101
|
}
|
|
5102
5102
|
});
|
|
5103
5103
|
}
|
|
@@ -5109,7 +5109,7 @@ function Sf(e, t = {}) {
|
|
|
5109
5109
|
$(m)({ ...j, id: _ });
|
|
5110
5110
|
}
|
|
5111
5111
|
}
|
|
5112
|
-
const D = (T.input === "last" ? ["change"] : ["input", "change"]).map((F) =>
|
|
5112
|
+
const D = (T.input === "last" ? ["change"] : ["input", "change"]).map((F) => ve(F, $(S), g)), b = g.defaultView;
|
|
5113
5113
|
if (!b) return () => {
|
|
5114
5114
|
D.forEach((F) => F());
|
|
5115
5115
|
};
|
|
@@ -5125,7 +5125,7 @@ function Sf(e, t = {}) {
|
|
|
5125
5125
|
if (!R || Se(R, g, v, !0)) return;
|
|
5126
5126
|
const { currentTime: S, volume: P, muted: D, playbackRate: b, loop: y } = R;
|
|
5127
5127
|
m({ type: k, id: I.getId(R), currentTime: S, volume: P, muted: D, playbackRate: b, loop: y });
|
|
5128
|
-
}), O.media || 500)), M = [
|
|
5128
|
+
}), O.media || 500)), M = [ve("play", A(kt.Play), E), ve("pause", A(kt.Pause), E), ve("seeked", A(kt.Seeked), E), ve("volumechange", A(kt.VolumeChange), E), ve("ratechange", A(kt.RateChange), E)];
|
|
5129
5129
|
return $(() => {
|
|
5130
5130
|
M.forEach((k) => k());
|
|
5131
5131
|
});
|
|
@@ -5232,7 +5232,7 @@ function Sf(e, t = {}) {
|
|
|
5232
5232
|
}
|
|
5233
5233
|
E({ ranges: T });
|
|
5234
5234
|
});
|
|
5235
|
-
return M(),
|
|
5235
|
+
return M(), ve("selectionchange", M);
|
|
5236
5236
|
}(e), p = function({ doc: m, customElementCb: g }) {
|
|
5237
5237
|
const v = m.defaultView;
|
|
5238
5238
|
return v && v.customElements ? At(v.customElements, "define", function(I) {
|
|
@@ -5320,7 +5320,7 @@ class If {
|
|
|
5320
5320
|
case Y.FullSnapshot: {
|
|
5321
5321
|
this.crossOriginIframeMirror.reset(t), this.crossOriginIframeStyleMirror.reset(t), this.replaceIdOnNode(r.data.node, t);
|
|
5322
5322
|
const n = r.data.node.id;
|
|
5323
|
-
return this.crossOriginIframeRootIdMap.set(t, n), this.patchRootIdOnNode(r.data.node, n), { timestamp: r.timestamp, type: Y.IncrementalSnapshot, data: { source:
|
|
5323
|
+
return this.crossOriginIframeRootIdMap.set(t, n), this.patchRootIdOnNode(r.data.node, n), { timestamp: r.timestamp, type: Y.IncrementalSnapshot, data: { source: G.Mutation, adds: [{ parentId: this.mirror.getId(t), nextId: null, node: r.data.node }], removes: [], texts: [], attributes: [], isAttachIframe: !0 } };
|
|
5324
5324
|
}
|
|
5325
5325
|
case Y.Meta:
|
|
5326
5326
|
case Y.Load:
|
|
@@ -5332,7 +5332,7 @@ class If {
|
|
|
5332
5332
|
return this.replaceIds(r.data.payload, t, ["id", "parentId", "previousId", "nextId"]), r;
|
|
5333
5333
|
case Y.IncrementalSnapshot:
|
|
5334
5334
|
switch (r.data.source) {
|
|
5335
|
-
case
|
|
5335
|
+
case G.Mutation:
|
|
5336
5336
|
return r.data.adds.forEach((n) => {
|
|
5337
5337
|
this.replaceIds(n, t, ["parentId", "nextId", "previousId"]), this.replaceIdOnNode(n.node, t);
|
|
5338
5338
|
const i = this.crossOriginIframeRootIdMap.get(t);
|
|
@@ -5344,30 +5344,30 @@ class If {
|
|
|
5344
5344
|
}), r.data.texts.forEach((n) => {
|
|
5345
5345
|
this.replaceIds(n, t, ["id"]);
|
|
5346
5346
|
}), r;
|
|
5347
|
-
case
|
|
5348
|
-
case
|
|
5349
|
-
case
|
|
5347
|
+
case G.Drag:
|
|
5348
|
+
case G.TouchMove:
|
|
5349
|
+
case G.MouseMove:
|
|
5350
5350
|
return r.data.positions.forEach((n) => {
|
|
5351
5351
|
this.replaceIds(n, t, ["id"]);
|
|
5352
5352
|
}), r;
|
|
5353
|
-
case
|
|
5353
|
+
case G.ViewportResize:
|
|
5354
5354
|
return !1;
|
|
5355
|
-
case
|
|
5356
|
-
case
|
|
5357
|
-
case
|
|
5358
|
-
case
|
|
5359
|
-
case
|
|
5355
|
+
case G.MediaInteraction:
|
|
5356
|
+
case G.MouseInteraction:
|
|
5357
|
+
case G.Scroll:
|
|
5358
|
+
case G.CanvasMutation:
|
|
5359
|
+
case G.Input:
|
|
5360
5360
|
return this.replaceIds(r.data, t, ["id"]), r;
|
|
5361
|
-
case
|
|
5362
|
-
case
|
|
5361
|
+
case G.StyleSheetRule:
|
|
5362
|
+
case G.StyleDeclaration:
|
|
5363
5363
|
return this.replaceIds(r.data, t, ["id"]), this.replaceStyleIds(r.data, t, ["styleId"]), r;
|
|
5364
|
-
case
|
|
5364
|
+
case G.Font:
|
|
5365
5365
|
return r;
|
|
5366
|
-
case
|
|
5366
|
+
case G.Selection:
|
|
5367
5367
|
return r.data.ranges.forEach((n) => {
|
|
5368
5368
|
this.replaceIds(n, t, ["start", "end"]);
|
|
5369
5369
|
}), r;
|
|
5370
|
-
case
|
|
5370
|
+
case G.AdoptedStyleSheet:
|
|
5371
5371
|
return this.replaceIds(r.data, t, ["id"]), this.replaceStyleIds(r.data, t, ["styleIds"]), (s = r.data.styles) == null || s.forEach((n) => {
|
|
5372
5372
|
this.replaceStyleIds(n, t, ["styleId"]);
|
|
5373
5373
|
}), r;
|
|
@@ -5432,7 +5432,7 @@ class Cf {
|
|
|
5432
5432
|
}), this.restoreHandlers = [], this.shadowDoms = /* @__PURE__ */ new WeakSet();
|
|
5433
5433
|
}
|
|
5434
5434
|
}
|
|
5435
|
-
for (var Yt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", kf = typeof Uint8Array > "u" ? [] : new Uint8Array(256),
|
|
5435
|
+
for (var Yt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", kf = typeof Uint8Array > "u" ? [] : new Uint8Array(256), Hr = 0; Hr < 64; Hr++) kf[Yt.charCodeAt(Hr)] = Hr;
|
|
5436
5436
|
const Pa = /* @__PURE__ */ new Map(), Zc = (e, t, r) => {
|
|
5437
5437
|
if (!e || !Qc(e, t) && typeof e != "object") return;
|
|
5438
5438
|
const s = function(i, a) {
|
|
@@ -5712,33 +5712,33 @@ function qt(e = {}) {
|
|
|
5712
5712
|
"NodeList" in W && !W.NodeList.prototype.forEach && (W.NodeList.prototype.forEach = Array.prototype.forEach), "DOMTokenList" in W && !W.DOMTokenList.prototype.forEach && (W.DOMTokenList.prototype.forEach = Array.prototype.forEach);
|
|
5713
5713
|
})();
|
|
5714
5714
|
let _ = 0;
|
|
5715
|
-
const
|
|
5715
|
+
const ee = (W) => {
|
|
5716
5716
|
for (const Ie of S || []) Ie.eventProcessor && (W = Ie.eventProcessor(W));
|
|
5717
5717
|
return m && !U && (W = m(W)), W;
|
|
5718
5718
|
};
|
|
5719
5719
|
ue = (W, Ie) => {
|
|
5720
5720
|
var ne;
|
|
5721
5721
|
const ae = W;
|
|
5722
|
-
if (ae.timestamp = ws(), !((ne = mt[0]) != null && ne.isFrozen()) || ae.type === Y.FullSnapshot || ae.type === Y.IncrementalSnapshot && ae.data.source ===
|
|
5722
|
+
if (ae.timestamp = ws(), !((ne = mt[0]) != null && ne.isFrozen()) || ae.type === Y.FullSnapshot || ae.type === Y.IncrementalSnapshot && ae.data.source === G.Mutation || mt.forEach((Te) => Te.unfreeze()), y) t == null || t(ee(ae), Ie);
|
|
5723
5723
|
else if (U) {
|
|
5724
|
-
const Te = { type: "rrweb", event:
|
|
5724
|
+
const Te = { type: "rrweb", event: ee(ae), origin: window.location.origin, isCheckout: Ie };
|
|
5725
5725
|
window.parent.postMessage(Te, "*");
|
|
5726
5726
|
}
|
|
5727
5727
|
if (ae.type === Y.FullSnapshot) L = ae, _ = 0;
|
|
5728
5728
|
else if (ae.type === Y.IncrementalSnapshot) {
|
|
5729
|
-
if (ae.data.source ===
|
|
5729
|
+
if (ae.data.source === G.Mutation && ae.data.isAttachIframe) return;
|
|
5730
5730
|
_++;
|
|
5731
5731
|
const Te = s && _ >= s, J = r && ae.timestamp - L.timestamp > r;
|
|
5732
5732
|
(Te || J) && ls(!0);
|
|
5733
5733
|
}
|
|
5734
5734
|
};
|
|
5735
5735
|
const q = (W) => {
|
|
5736
|
-
ue({ type: Y.IncrementalSnapshot, data: { source:
|
|
5737
|
-
}, me = (W) => ue({ type: Y.IncrementalSnapshot, data: { source:
|
|
5738
|
-
for (const W of S || []) W.getMirror && W.getMirror({ nodeMirror: Oe, crossOriginIframeMirror:
|
|
5736
|
+
ue({ type: Y.IncrementalSnapshot, data: { source: G.Mutation, ...W } });
|
|
5737
|
+
}, me = (W) => ue({ type: Y.IncrementalSnapshot, data: { source: G.Scroll, ...W } }), _e = (W) => ue({ type: Y.IncrementalSnapshot, data: { source: G.CanvasMutation, ...W } }), we = new Tf({ mutationCb: q, adoptedStyleSheetCb: (W) => ue({ type: Y.IncrementalSnapshot, data: { source: G.AdoptedStyleSheet, ...W } }) }), H = new If({ mirror: Oe, mutationCb: q, stylesheetManager: we, recordCrossOriginIframes: A, wrappedEmit: ue });
|
|
5738
|
+
for (const W of S || []) W.getMirror && W.getMirror({ nodeMirror: Oe, crossOriginIframeMirror: H.crossOriginIframeMirror, crossOriginIframeStyleMirror: H.crossOriginIframeStyleMirror });
|
|
5739
5739
|
const Le = new Rf();
|
|
5740
5740
|
hn = new xf({ recordCanvas: E, mutationCb: _e, win: window, blockClass: n, blockSelector: i, mirror: Oe, sampling: g.canvas, dataURLOptions: v });
|
|
5741
|
-
const Qe = new Cf({ mutationCb: q, scrollCb: me, bypassOptions: { blockClass: n, blockSelector: i, maskTextClass: l, maskTextSelector: c, inlineStylesheet: u, maskInputOptions: F, dataURLOptions: v, maskTextFn: p, maskInputFn: w, recordCanvas: E, inlineImages: R, sampling: g, slimDOMOptions: j, iframeManager:
|
|
5741
|
+
const Qe = new Cf({ mutationCb: q, scrollCb: me, bypassOptions: { blockClass: n, blockSelector: i, maskTextClass: l, maskTextSelector: c, inlineStylesheet: u, maskInputOptions: F, dataURLOptions: v, maskTextFn: p, maskInputFn: w, recordCanvas: E, inlineImages: R, sampling: g, slimDOMOptions: j, iframeManager: H, stylesheetManager: we, canvasManager: hn, keepIframeSrcFn: P, processedNodeManager: Le }, mirror: Oe });
|
|
5742
5742
|
ls = (W = !1) => {
|
|
5743
5743
|
if (!O) return;
|
|
5744
5744
|
ue({ type: Y.Meta, data: { href: window.location.href, width: zc(), height: Bc() } }, W), we.reset(), Qe.init(), mt.forEach((ne) => ne.lock());
|
|
@@ -5746,9 +5746,9 @@ function qt(e = {}) {
|
|
|
5746
5746
|
const { mirror: Te = new Rl(), blockClass: J = "rr-block", blockSelector: _t = null, maskTextClass: id = "rr-mask", maskTextSelector: od = null, inlineStylesheet: ad = !0, inlineImages: ld = !1, recordCanvas: cd = !1, maskAllInputs: qs = !1, maskTextFn: ud, maskInputFn: dd, slimDOM: Nt = !1, dataURLOptions: pd, preserveWhiteSpace: hd, onSerialize: md, onIframeLoad: fd, iframeLoadTimeout: gd, onStylesheetLoad: yd, stylesheetLoadTimeout: wd, keepIframeSrcFn: bd = () => !1 } = ae || {};
|
|
5747
5747
|
return Et(ne, { doc: ne, mirror: Te, blockClass: J, blockSelector: _t, maskTextClass: id, maskTextSelector: od, skipChild: !1, inlineStylesheet: ad, maskInputOptions: qs === !0 ? { color: !0, date: !0, "datetime-local": !0, email: !0, month: !0, number: !0, range: !0, search: !0, tel: !0, text: !0, time: !0, url: !0, week: !0, textarea: !0, select: !0, password: !0 } : qs === !1 ? { password: !0 } : qs, maskTextFn: ud, maskInputFn: dd, slimDOMOptions: Nt === !0 || Nt === "all" ? { script: !0, comment: !0, headFavicon: !0, headWhitespace: !0, headMetaDescKeywords: Nt === "all", headMetaSocial: !0, headMetaRobots: !0, headMetaHttpEquiv: !0, headMetaAuthorship: !0, headMetaVerification: !0 } : Nt === !1 ? {} : Nt, dataURLOptions: pd, inlineImages: ld, recordCanvas: cd, preserveWhiteSpace: hd, onSerialize: md, onIframeLoad: fd, iframeLoadTimeout: gd, onStylesheetLoad: yd, stylesheetLoadTimeout: wd, keepIframeSrcFn: bd, newlyAddedElement: !1 });
|
|
5748
5748
|
}(document, { mirror: Oe, blockClass: n, blockSelector: i, maskTextClass: l, maskTextSelector: c, inlineStylesheet: u, maskAllInputs: F, maskTextFn: p, maskInputFn: w, slimDOM: j, dataURLOptions: v, recordCanvas: E, inlineImages: R, onSerialize: (ne) => {
|
|
5749
|
-
Vc(ne, Oe) &&
|
|
5749
|
+
Vc(ne, Oe) && H.addIframe(ne), Hc(ne, Oe) && we.trackLinkElement(ne), ai(ne) && Qe.addShadowRoot(V.shadowRoot(ne), document);
|
|
5750
5750
|
}, onIframeLoad: (ne, ae) => {
|
|
5751
|
-
|
|
5751
|
+
H.attachIframe(ne, ae), Qe.observeAttachShadow(ne);
|
|
5752
5752
|
}, onStylesheetLoad: (ne, ae) => {
|
|
5753
5753
|
we.attachLinkElement(ne, ae);
|
|
5754
5754
|
}, keepIframeSrcFn: P });
|
|
@@ -5758,13 +5758,13 @@ function qt(e = {}) {
|
|
|
5758
5758
|
try {
|
|
5759
5759
|
const W = [], Ie = (ae) => {
|
|
5760
5760
|
var Te;
|
|
5761
|
-
return $(Sf)({ mutationCb: q, mousemoveCb: (J, _t) => ue({ type: Y.IncrementalSnapshot, data: { source: _t, positions: J } }), mouseInteractionCb: (J) => ue({ type: Y.IncrementalSnapshot, data: { source:
|
|
5762
|
-
ue({ type: Y.IncrementalSnapshot, data: { source:
|
|
5761
|
+
return $(Sf)({ mutationCb: q, mousemoveCb: (J, _t) => ue({ type: Y.IncrementalSnapshot, data: { source: _t, positions: J } }), mouseInteractionCb: (J) => ue({ type: Y.IncrementalSnapshot, data: { source: G.MouseInteraction, ...J } }), scrollCb: me, viewportResizeCb: (J) => ue({ type: Y.IncrementalSnapshot, data: { source: G.ViewportResize, ...J } }), inputCb: (J) => ue({ type: Y.IncrementalSnapshot, data: { source: G.Input, ...J } }), mediaInteractionCb: (J) => ue({ type: Y.IncrementalSnapshot, data: { source: G.MediaInteraction, ...J } }), styleSheetRuleCb: (J) => ue({ type: Y.IncrementalSnapshot, data: { source: G.StyleSheetRule, ...J } }), styleDeclarationCb: (J) => ue({ type: Y.IncrementalSnapshot, data: { source: G.StyleDeclaration, ...J } }), canvasMutationCb: _e, fontCb: (J) => ue({ type: Y.IncrementalSnapshot, data: { source: G.Font, ...J } }), selectionCb: (J) => {
|
|
5762
|
+
ue({ type: Y.IncrementalSnapshot, data: { source: G.Selection, ...J } });
|
|
5763
5763
|
}, customElementCb: (J) => {
|
|
5764
|
-
ue({ type: Y.IncrementalSnapshot, data: { source:
|
|
5765
|
-
}, blockClass: n, ignoreClass: a, ignoreSelector: o, maskTextClass: l, maskTextSelector: c, maskInputOptions: F, inlineStylesheet: u, sampling: g, recordDOM: O, recordCanvas: E, inlineImages: R, userTriggeredOnInput: k, collectFonts: T, doc: ae, maskInputFn: w, maskTextFn: p, keepIframeSrcFn: P, blockSelector: i, slimDOMOptions: j, dataURLOptions: v, mirror: Oe, iframeManager:
|
|
5764
|
+
ue({ type: Y.IncrementalSnapshot, data: { source: G.CustomElement, ...J } });
|
|
5765
|
+
}, blockClass: n, ignoreClass: a, ignoreSelector: o, maskTextClass: l, maskTextSelector: c, maskInputOptions: F, inlineStylesheet: u, sampling: g, recordDOM: O, recordCanvas: E, inlineImages: R, userTriggeredOnInput: k, collectFonts: T, doc: ae, maskInputFn: w, maskTextFn: p, keepIframeSrcFn: P, blockSelector: i, slimDOMOptions: j, dataURLOptions: v, mirror: Oe, iframeManager: H, stylesheetManager: we, shadowDomManager: Qe, processedNodeManager: Le, canvasManager: hn, ignoreCSSAttributes: D, plugins: ((Te = S == null ? void 0 : S.filter((J) => J.observer)) == null ? void 0 : Te.map((J) => ({ observer: J.observer, options: J.options, callback: (_t) => ue({ type: Y.Plugin, data: { plugin: J.name, payload: _t } }) }))) || [] }, C);
|
|
5766
5766
|
};
|
|
5767
|
-
|
|
5767
|
+
H.addLoadListener((ae) => {
|
|
5768
5768
|
try {
|
|
5769
5769
|
W.push(Ie(ae.contentDocument));
|
|
5770
5770
|
} catch (Te) {
|
|
@@ -5774,9 +5774,9 @@ function qt(e = {}) {
|
|
|
5774
5774
|
const ne = () => {
|
|
5775
5775
|
ls(), W.push(Ie(document)), bs = !0;
|
|
5776
5776
|
};
|
|
5777
|
-
return document.readyState === "interactive" || document.readyState === "complete" ? ne() : (W.push(
|
|
5777
|
+
return document.readyState === "interactive" || document.readyState === "complete" ? ne() : (W.push(ve("DOMContentLoaded", () => {
|
|
5778
5778
|
ue({ type: Y.DomContentLoaded, data: {} }), M === "DOMContentLoaded" && ne();
|
|
5779
|
-
})), W.push(
|
|
5779
|
+
})), W.push(ve("load", () => {
|
|
5780
5780
|
ue({ type: Y.Load, data: {} }), M === "load" && ne();
|
|
5781
5781
|
}, window))), () => {
|
|
5782
5782
|
W.forEach((ae) => ae()), Le.destroy(), bs = !1, Qt = void 0;
|
|
@@ -5797,11 +5797,11 @@ qt.addCustomEvent = (e, t) => {
|
|
|
5797
5797
|
}, qt.mirror = Oe, (St = za || (za = {}))[St.NotStarted = 0] = "NotStarted", St[St.Running = 1] = "Running", St[St.Stopped = 2] = "Stopped";
|
|
5798
5798
|
var Be = ((e) => (e.Closed = "close.click", e.Complete = "survey.completed", e.FeedbackClosed = "feedback.closed", e.PageChange = "page.change", e.API = "api", e.Override = "override", e))(Be || {}), B = ((e) => (e.ReplayCapture = "replay.capture", e.ReplayPaused = "replay.paused", e.ReplayResumed = "replay.resumed", e.FeedbackButtonLoaded = "feedback.button.loaded", e.SDKReady = "sdk.ready", e.SurveyAppeared = "survey.appeared", e.SurveyCloseRequested = "survey.closeRequested", e.SurveyClosed = "survey.closed", e.SurveyDimensions = "survey.dimensions", e.SurveyFadingOut = "survey.fadingOut", e.SurveyHeight = "survey.height", e.SurveyPresented = "survey.presented", e.SurveyLifeCycle = "survey.lifeCycle", e.SurveyWidth = "survey.width", e.SurveyWillClose = "survey.willClose", e.SurveyWillPresent = "survey.will.present", e.CloseSurveyOnOverlayClick = "close.survey.overlayClick", e.VisitorIDUpdated = "visitor.id.updated", e.QuestionAnswered = "question.answered", e))(B || {});
|
|
5799
5799
|
const hr = { FEEDBACK_BUTTON_LOADED: "feedback.button.loaded", SDK_READY: "sdk.ready", SURVEY_APPEARED: "survey.appeared", SURVEY_CLOSED: "survey.closed", SURVEY_DIMENSIONS: "survey.dimensions", SURVEY_FADING_OUT: "survey.fadingOut", SURVEY_HEIGHT: "survey.height", SURVEY_WIDTH: "survey.width", SURVEY_PRESENTED: "survey.presented", SURVEY_LIFE_CYCLE: "survey.lifeCycle", SURVEY_WILL_CLOSE: "survey.willClose", SURVEY_WILL_PRESENT: "survey.will.present", QUESTION_ANSWERED: "question.answered", REPLAY_CAPTURE: "replay.capture", CLOSE_SURVEY_ON_OVERLAY_CLICK: "close.survey.overlayClick", VISITOR_ID_UPDATED: "visitor.id.updated", DATA: { DISMISS_REASONS: { API: "api", CLOSED: "close.click", COMPLETE: "survey.completed", PAGE_CHANGE: "page.change", OVERRIDE: "override" }, SURVEY_ID: "survey.id" } };
|
|
5800
|
-
let
|
|
5800
|
+
let Gr;
|
|
5801
5801
|
const Lf = new Uint8Array(16);
|
|
5802
5802
|
function Of() {
|
|
5803
|
-
if (!
|
|
5804
|
-
return
|
|
5803
|
+
if (!Gr && (Gr = typeof crypto < "u" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto), !Gr)) throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
|
|
5804
|
+
return Gr(Lf);
|
|
5805
5805
|
}
|
|
5806
5806
|
const ge = [];
|
|
5807
5807
|
for (let e = 0; e < 256; ++e) ge.push((e + 256).toString(16).slice(1));
|
|
@@ -6017,26 +6017,26 @@ class Uf {
|
|
|
6017
6017
|
this.resolve(t);
|
|
6018
6018
|
}
|
|
6019
6019
|
}
|
|
6020
|
-
const
|
|
6020
|
+
const re = { replay: null }, Df = () => {
|
|
6021
6021
|
const e = [];
|
|
6022
|
-
return
|
|
6022
|
+
return re.replay && e.push("replay"), e.join(",");
|
|
6023
6023
|
}, Pf = 10;
|
|
6024
6024
|
let iu = !1, ou = "", $r = !1, au = !1, cs = [];
|
|
6025
|
-
const _f = (e) => e._config && e._config.installationMethod ? e._config.installationMethod : e._gtm ? "web-gtm" : e._segment ? "web-segment" : "web-snippet",
|
|
6025
|
+
const _f = (e) => e._config && e._config.installationMethod ? e._config.installationMethod : e._gtm ? "web-gtm" : e._segment ? "web-segment" : "web-snippet", Ha = (e) => {
|
|
6026
6026
|
var t;
|
|
6027
6027
|
(t = e == null ? void 0 : e.blockedURI) != null && t.includes(window.UserLeap._API_URL) && (au = !0, console.warn(`[Sprig] ${e.blockedURI} is blocked by Content-Security-Policy`));
|
|
6028
6028
|
}, ci = (e = "") => {
|
|
6029
6029
|
iu = !0, ou = e;
|
|
6030
6030
|
};
|
|
6031
6031
|
function Ue(e = {}) {
|
|
6032
|
-
const t = { "Content-Type": "application/json", "userleap-platform": "web", "x-ul-sdk-version": "2.
|
|
6032
|
+
const t = { "Content-Type": "application/json", "userleap-platform": "web", "x-ul-sdk-version": "2.44.1", "x-ul-installation-method": _f(e), "sprig-modules": Df(), "x-ul-package-version": "2.44.1" };
|
|
6033
6033
|
if (e.envId && (t["x-ul-environment-id"] = e.envId), e.token && (t.Authorization = "Bearer " + e.token), e.userId && (t["x-ul-user-id"] = e.userId), e.visitorId && (t["x-ul-visitor-id"] = e.visitorId), e.partnerAnonymousId && (t["x-ul-anonymous-id"] = e.partnerAnonymousId), e.mobileHeadersJSON) {
|
|
6034
6034
|
const r = JSON.parse(e.mobileHeadersJSON);
|
|
6035
6035
|
Object.assign(t, r);
|
|
6036
6036
|
}
|
|
6037
6037
|
return e.locale && (t["accept-language"] = e.locale), window.previewMode && (t["x-ul-preview-mode"] = "1"), t;
|
|
6038
6038
|
}
|
|
6039
|
-
const
|
|
6039
|
+
const Ga = async ({ shouldDropOnRateLimit: e, ...t }) => {
|
|
6040
6040
|
if (e) return { status: 429 };
|
|
6041
6041
|
{
|
|
6042
6042
|
const r = new Uf(t);
|
|
@@ -6044,7 +6044,7 @@ const Ha = async ({ shouldDropOnRateLimit: e, ...t }) => {
|
|
|
6044
6044
|
}
|
|
6045
6045
|
}, Xe = async (e, t) => {
|
|
6046
6046
|
const { retries: r = 0, shouldDropOnRateLimit: s = !1, shouldRetryRequest: n = !1, ...i } = t, a = { url: e, options: i, retries: r, shouldDropOnRateLimit: s };
|
|
6047
|
-
if ($r && !n) return
|
|
6047
|
+
if ($r && !n) return Ga(a);
|
|
6048
6048
|
const o = { ok: !1, reportError: !1 };
|
|
6049
6049
|
if (iu) return console.info(`UserLeap - ${ou}`), o;
|
|
6050
6050
|
try {
|
|
@@ -6055,7 +6055,7 @@ const Ha = async ({ shouldDropOnRateLimit: e, ...t }) => {
|
|
|
6055
6055
|
const c = l.headers.has("ratelimit-reset") ? Number(l.headers.get("ratelimit-reset")) : Pf;
|
|
6056
6056
|
return await vs(1e3 * c), Xe(e, { ...i, shouldDropOnRateLimit: s, shouldRetryRequest: !0 });
|
|
6057
6057
|
}
|
|
6058
|
-
return
|
|
6058
|
+
return Ga(a);
|
|
6059
6059
|
}
|
|
6060
6060
|
if ($r = !1, cs.length && (cs.map((c) => {
|
|
6061
6061
|
const u = c.payload;
|
|
@@ -6111,40 +6111,40 @@ const tr = async (e, t, r) => {
|
|
|
6111
6111
|
const { context: s, delay: n, avatars: i, experimentFlags: a, forceBrandedLogo: o, endCard: l, isFeedback: c = !1, heatmap: u, locale: d, layout: h, previewMode: f, productConfig: w, questions: p, responseGroupUid: C, surveyId: m, uuid: g, vid: v, sessionReplay: I, studyType: O, surveyVisitorAttributes: E } = e, A = Ue(window.UserLeap), M = mr(A), k = Ys(A);
|
|
6112
6112
|
if (I) if (M) z.emit(B.ReplayCapture, { responseGroupUid: C, hasQuestions: !!(p != null && p.length), surveyId: m, uploadId: I.uploadId, replayType: I.replayDurationType ?? "before", seconds: I.replayDurationSeconds, generateVideoUploadUrlPayload: { mediaRecordingUid: Ut(), mediaType: "screen", questionId: 1, responseGroupUid: C, surveyId: m, updatedAt: (/* @__PURE__ */ new Date()).toISOString(), visitorId: window.UserLeap.visitorId, isReplay: !0 } });
|
|
6113
6113
|
else {
|
|
6114
|
-
if (!
|
|
6115
|
-
|
|
6114
|
+
if (!re.replay) return window.UserLeap.reportError("displayQuestions", new Error("Replay module not registered")), { success: !1, message: "Replay module not registered", surveyState: "no survey" };
|
|
6115
|
+
re.replay.scheduleOrCaptureReplay({ responseGroupId: C, surveyId: m, visitorId: v, replayParams: I, completeUploadHeaders: A, apiUrl: window.UserLeap._API_URL, triggerTimestamp: Date.now(), isStandalone: p.length === 0 });
|
|
6116
6116
|
}
|
|
6117
6117
|
if (u) {
|
|
6118
|
-
if (!
|
|
6119
|
-
const { eventId:
|
|
6120
|
-
await
|
|
6118
|
+
if (!re.replay) return window.UserLeap.reportError("displayQuestions", new Error("Replay module not registered")), { success: !1, message: "Replay module not registered", surveyState: "no survey" };
|
|
6119
|
+
const { eventId: H, replayParams: Le, responseGroupUid: Qe, surveyId: W } = u;
|
|
6120
|
+
await re.replay.initializeReplay({ maxReplayDurationSeconds: 300, maxInflightRequests: window.UserLeap.maxInflightReplayRequests, teardownAfter: !0, apiUrl: window.UserLeap._API_URL, replaySettings: r }), re.replay.tryReplayAction(() => {
|
|
6121
6121
|
var Ie;
|
|
6122
|
-
return (Ie =
|
|
6122
|
+
return (Ie = re.replay) == null ? void 0 : Ie.scheduleCapture({ apiUrl: window.UserLeap._API_URL, completeUploadHeaders: A, eventId: H, isHeatmap: !0, replayParams: Le, responseGroupId: Qe, surveyId: W, triggerTimestamp: Date.now(), visitorId: v });
|
|
6123
6123
|
}, "Error in scheduling/capturing replay");
|
|
6124
6124
|
}
|
|
6125
6125
|
if (v == null || !(p != null && p.length)) return N.info("CannotDisplaySurvey", { vid: v }), { success: !1, message: "[Sprig] no survey found", surveyState: window.UserLeap.container ? "previous survey ready" : "no survey" };
|
|
6126
6126
|
if (Ff(p)) return { success: !1, message: "[Sprig] bundled version does not support video voice", surveyState: "no survey" };
|
|
6127
6127
|
if (window.UserLeap.container) {
|
|
6128
6128
|
N.info("AlreadyDisplayingSurvey");
|
|
6129
|
-
const
|
|
6130
|
-
return console.warn(
|
|
6129
|
+
const H = "[Sprig] (ERR-409) Found an existing Survey container, aborting rendering of this survey";
|
|
6130
|
+
return console.warn(H), { success: !1, message: H, surveyState: "previous survey ready" };
|
|
6131
6131
|
}
|
|
6132
6132
|
if (v !== window.UserLeap.visitorId && g !== window.UserLeap.visitorId && !window.previewMode) {
|
|
6133
|
-
const
|
|
6134
|
-
return window.UserLeap.reportError("DisplaySurvey", new Error(
|
|
6133
|
+
const H = "Attempted to display survey to a different visitor";
|
|
6134
|
+
return window.UserLeap.reportError("DisplaySurvey", new Error(H)), { success: !1, message: H, surveyState: "no survey" };
|
|
6135
6135
|
}
|
|
6136
|
-
N.info("ShowingSurvey", { surveyId: m }), (q =
|
|
6136
|
+
N.info("ShowingSurvey", { surveyId: m }), (q = re.replay) == null || q.RecordSurveyShown({ id: m, userAgent: window.navigator.userAgent }), Af.disable(), z.emit(B.SurveyWillPresent, { name: B.SurveyWillPresent, "survey.id": m, layout: h });
|
|
6137
6137
|
let T, R, S, P, D = document.createElement("div");
|
|
6138
|
-
const b = (
|
|
6139
|
-
const { "view.version": Le } =
|
|
6138
|
+
const b = (H) => {
|
|
6139
|
+
const { "view.version": Le } = H;
|
|
6140
6140
|
Le !== A["x-ul-sdk-version"] && cu(), z.removeListener("verify.view.version", b);
|
|
6141
6141
|
};
|
|
6142
6142
|
z.on("verify.view.version", b), window.UserLeap.useMobileStyling = k, su(A) ? (T = "ul-direct-embeded-frame", R = document.head, S = window, P = !1, (() => {
|
|
6143
|
-
const
|
|
6143
|
+
const H = Ue(window.UserLeap), Le = mr(H), Qe = window.UserLeap.forceDirectEmbed, W = H["userleap-platform"] === "web";
|
|
6144
6144
|
return Le || Qe && W;
|
|
6145
6145
|
})() && (lu(m, c), D.id = T, window.UserLeap.container.appendChild(D), uu(), z.emit(B.SurveyLifeCycle, { state: "presented" }), z.emit(B.SurveyPresented, { name: B.SurveyPresented, "survey.id": m }))) : { frameId: T, contentWinDocHead: R, contentWindow: S, hasOverlay: P, iframe: D } = jf({ productConfig: w, useMobileStyling: k, surveyId: m, isFeedback: c, enableCspTrustedTypes: (me = window.UserLeap._config) == null ? void 0 : me.enableCspTrustedTypes }), window.UserLeap.frameId = T;
|
|
6146
|
-
const y = { apiURL: window.UserLeap._API_URL, avatars: i, cards: p, configureExitOnOverlayClick: (
|
|
6147
|
-
z.once(B.CloseSurveyOnOverlayClick,
|
|
6146
|
+
const y = { apiURL: window.UserLeap._API_URL, avatars: i, cards: p, configureExitOnOverlayClick: (H) => {
|
|
6147
|
+
z.once(B.CloseSurveyOnOverlayClick, H);
|
|
6148
6148
|
}, context: s, endCard: l, envId: window.UserLeap.envId, eventEmitFn: z.emit.bind(z), experimentFlags: a, fontFamily: window.UserLeap.fontFamily, fontFamilyURL: window.UserLeap.fontFamilyURL, forceBrandedLogo: o, frame: D, headers: A, layout: h, locale: d, mobileSDKVersion: window.UserLeap.mobileSDKVersion, previewKey: Q.getItem("sprig.previewKey"), previewMode: f || !!window.previewMode, productConfig: { framePosition: w == null ? void 0 : w.framePosition, desktopDisplay: w == null ? void 0 : w.desktopDisplay, placement: w == null ? void 0 : w.placement }, responseGroupUid: C, startingQuestionIdx: (_e = window.UserLeap.config) == null ? void 0 : _e.startingQuestionIdx, studyType: O, styleNonce: window.UserLeap.styleNonce, surveyId: m, tabTitle: document.title, trackPageViewUrl: t, ulEvents: hr, upchunkLibraryURL: window.UserLeap.upchunkLibraryURL, useMobileStyling: k, userId: g, viewDocument: S == null ? void 0 : S.document, viewWindow: S, visitorAttributes: { externalUserId: window.UserLeap.userId, email: window.UserLeap.email }, surveyVisitorAttributes: E || {}, ...window.UserLeap._config };
|
|
6149
6149
|
(we = window.UserLeap._config) != null && we.startingQuestionIdx && (window.UserLeap._config = { ...window.UserLeap._config, startingQuestionIdx: null });
|
|
6150
6150
|
const U = (c ? window.UserLeap.feedbackCustomStyles : window.UserLeap.customStyles) ?? w.customStyles;
|
|
@@ -6152,22 +6152,22 @@ const tr = async (e, t, r) => {
|
|
|
6152
6152
|
const F = window.UserLeap.viewSDKURL ? window.UserLeap.viewSDKURL : y.path, j = document.getElementById($a);
|
|
6153
6153
|
j && j.remove();
|
|
6154
6154
|
const L = function() {
|
|
6155
|
-
const
|
|
6156
|
-
return window.UserLeap.isMobileSDK ||
|
|
6155
|
+
const H = document.createElement("script");
|
|
6156
|
+
return window.UserLeap.isMobileSDK || H.setAttribute("type", "module"), window.UserLeap.nonce && H.setAttribute("nonce", window.UserLeap.nonce), H.id = $a, H;
|
|
6157
6157
|
}(), _ = () => {
|
|
6158
6158
|
window.UserLeap.container && Object.assign(window.UserLeap.container.style, { display: "flex" });
|
|
6159
6159
|
};
|
|
6160
6160
|
if (y.installationMethod === "web-npm" || y.installationMethod === "web-npm-bundled") {
|
|
6161
|
-
const { default:
|
|
6162
|
-
|
|
6161
|
+
const { default: H } = await import("./view-Bu60Bbor.js").then((Le) => Le.B);
|
|
6162
|
+
H.configure(y), P && window.UserLeap.container && _();
|
|
6163
6163
|
} else F && (L.src = `${F}${window.UserLeap.isMobileSDK ? "" : `?t=${Date.now()}`}`, P && L.addEventListener("load", () => {
|
|
6164
6164
|
window.UserLeap.container && _();
|
|
6165
|
-
}), S == null || S.addEventListener("error", (
|
|
6166
|
-
|
|
6165
|
+
}), S == null || S.addEventListener("error", (H) => {
|
|
6166
|
+
H.target instanceof HTMLScriptElement && H.target.src === F && window.UserLeap.reportError("loadFrameScript", new Error("Frame script failed to load"));
|
|
6167
6167
|
}, { capture: !0, once: !0 }));
|
|
6168
6168
|
R == null || R.appendChild(L);
|
|
6169
|
-
const
|
|
6170
|
-
return window.UserLeap.isMobileSDK && n && (
|
|
6169
|
+
const ee = { success: !0, surveyState: "ready", surveyId: m, responseGroupUid: C };
|
|
6170
|
+
return window.UserLeap.isMobileSDK && n && (ee.delay = n), ee;
|
|
6171
6171
|
};
|
|
6172
6172
|
function Ys(e) {
|
|
6173
6173
|
var r;
|
|
@@ -6304,7 +6304,7 @@ const pu = (e) => {
|
|
|
6304
6304
|
if (!st(r)) return 0;
|
|
6305
6305
|
const s = getComputedStyle(r);
|
|
6306
6306
|
return parseFloat(s.paddingLeft) + parseFloat(s.paddingRight) + (parseFloat(s.marginLeft) + parseFloat(s.marginRight)) + (parseFloat(s.borderLeftWidth) + parseFloat(s.borderRightWidth));
|
|
6307
|
-
},
|
|
6307
|
+
}, Hf = (e, t, r) => {
|
|
6308
6308
|
const s = e.querySelector(".ul-card__container"), n = e.querySelector(".ul-app");
|
|
6309
6309
|
let i = 600, a = 360;
|
|
6310
6310
|
if (st(s) && st(n)) {
|
|
@@ -6327,7 +6327,7 @@ const pu = (e) => {
|
|
|
6327
6327
|
t && (t.scrollTop = 0);
|
|
6328
6328
|
}, hu = () => X, Rt = () => document.getElementById("sprig-feedback-container"), ui = () => document.getElementById("sprig-feedback-loading-animation"), mu = () => !!document.getElementById(ro);
|
|
6329
6329
|
let Za = !1, X = null, je = null, no = !1, rr = null, pt = null;
|
|
6330
|
-
const
|
|
6330
|
+
const Gf = ["bottom-left", "bottom-right", "center-left", "center-right"], Is = () => {
|
|
6331
6331
|
var t;
|
|
6332
6332
|
const e = window.UserLeap.container;
|
|
6333
6333
|
return ((t = e == null ? void 0 : e.parentElement) == null ? void 0 : t.id) === "sprig-feedback-loading-container";
|
|
@@ -6379,7 +6379,7 @@ const Hf = ["bottom-left", "bottom-right", "center-left", "center-right"], Is =
|
|
|
6379
6379
|
rr = i, Ss({ document, elementId: "sprig-feedback-style", styleString: '.ul-loading-spinner-container{font-size:1.8rem;flex-grow:1;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.ul-loading-spinner{display:inline-block;position:relative;width:6rem;height:6rem}.ul-loading-spinner div{box-sizing:border-box;display:block;position:absolute;width:80%;height:80%;margin:5px;border:5px solid #152e3e;border-radius:50%;animation:lds-ring 1.2s cubic-bezier(.5,0,.5,1) infinite;border-color:#152e3e transparent transparent transparent}.ul-loading-spinner .first{animation-delay:-.45s}.ul-loading-spinner .second{animation-delay:-.3s}.ul-loading-spinner .third{animation-delay:-.15s}@keyframes lds-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-in-transition{animation:fadeIn .4s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}#sprig-feedback-button{border-left:0;border-radius:0 8px 8px 0;display:grid;padding:8px;text-align:center;transition:all ease-in-out 1s;z-index:inherit}#sprig-feedback-button:hover{cursor:pointer}.sprig-feedback-button-label{writing-mode:vertical-lr;text-orientation:sideways}.sprig-feedback-button-right{transform:rotate(180deg)}.sprig-feedback-button-bottom{align-self:flex-end;margin-bottom:20px}.sprig-feedback-button-light{background:#efefee;color:#000;border:1px solid #e2e3e1}.sprig-feedback-button-dark{background:#000;color:#fff;border:1px solid #000000}#sprig-feedback-container{display:flex;align-items:center;position:fixed;transition:right .2s linear,left .2s linear;z-index:2147483646}.sprig-feedback-container-left{flex-flow:row-reverse}.sprig-feedback-container-center{top:50%;transform:translateY(-50%)}.sprig-feedback-container-bottom{bottom:0%;margin-bottom:15px}.sprig-feedback-loading-container{align-items:center;background-color:#fff;border:2px solid var(--feedback-border);display:flex;max-height:90vh;max-width:90vw;min-width:0px}.sprig-feedback-loading-container-left{border-left:none;border-radius:0 8px 8px 0}.sprig-feedback-loading-container-right{border-right:none;border-radius:8px 0 0 8px}#sprig-feedback-error-container{margin:auto;text-align:center;width:360px}.sprig-feedback-error-text{font-weight:400;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}#sprig-feedback-loading-container .ul-container{position:relative;max-height:inherit}#sprig-feedback-loading-animation{position:absolute}.sprig-feedback-loading-container-previews iframe{max-height:inherit!important}', nonce: window.UserLeap.styleNonce }), Ss({ document, elementId: "ul-custom-style", styleString: n ?? "", nonce: window.UserLeap.styleNonce }), Za = o === "center-modal", pt = a;
|
|
6380
6380
|
const [h, f] = a.split("-");
|
|
6381
6381
|
((m) => {
|
|
6382
|
-
if (Rt() || !
|
|
6382
|
+
if (Rt() || !Gf.includes(m)) return;
|
|
6383
6383
|
const [g, v] = m.split("-"), I = document.createElement("div");
|
|
6384
6384
|
I.id = "sprig-feedback-container", I.classList.add(`sprig-feedback-container-${v}`, `sprig-feedback-container-${g}`), document.body.appendChild(I);
|
|
6385
6385
|
})(a), d = Rt(), je = document.createElement("button");
|
|
@@ -6630,9 +6630,9 @@ const Yr = (e, t = 1) => {
|
|
|
6630
6630
|
}), mi = i;
|
|
6631
6631
|
})(r, (n, i) => {
|
|
6632
6632
|
var a, o;
|
|
6633
|
-
if ((a =
|
|
6633
|
+
if ((a = re.replay) != null && a.isReplayRecording()) {
|
|
6634
6634
|
const l = `Value: ${n} on ${i.metric} violated threshold of ${i.type} ${i.value}`;
|
|
6635
|
-
(o =
|
|
6635
|
+
(o = re.replay) == null || o.disableRecording("Threshold violated", new Error(l), { reportError: !1 }), window.UserLeap.reportError("Sdk Performance Metric threshold violated", new Error("Sdk Performance Metric threshold violated"), { metricName: i.metric, type: i.type, value: i.value }, { metricName: i.metric }), hi = !0;
|
|
6636
6636
|
}
|
|
6637
6637
|
}), Kf({ reportingIntervalSeconds: t, postMetrics: s }), e && (((n = 1e3) => {
|
|
6638
6638
|
const i = Ve("sdk_event_queue_latency_seconds");
|
|
@@ -6655,9 +6655,9 @@ function nr(e) {
|
|
|
6655
6655
|
if (Is()) return;
|
|
6656
6656
|
const c = Rt();
|
|
6657
6657
|
c && (pu(rr) || (c.remove(), rr = null, X = null));
|
|
6658
|
-
})(), Q.getItem("sprig.isCapturingHeatmap") && ((l = (o =
|
|
6658
|
+
})(), Q.getItem("sprig.isCapturingHeatmap") && ((l = (o = re.replay) == null ? void 0 : o.checkPendingHeatmapsUrl()) == null || l.then((c) => {
|
|
6659
6659
|
var u;
|
|
6660
|
-
c && ((u =
|
|
6660
|
+
c && ((u = re.replay) == null || u.uploadReadyPendingCaptures(!0));
|
|
6661
6661
|
})), !Is() && s && a && a !== globalThis.location.href && e && sg.includes(e.type) && globalThis.UserLeap("dismissActiveSurvey", Be.PageChange);
|
|
6662
6662
|
}
|
|
6663
6663
|
const ku = { capture: !0 }, ng = () => {
|
|
@@ -6690,7 +6690,7 @@ function Ru(e, t, r, s) {
|
|
|
6690
6690
|
if (e.endsWith("mock_snippet.html")) return;
|
|
6691
6691
|
N.info("PageView", { url: e });
|
|
6692
6692
|
const a = (n = document == null ? void 0 : document.querySelector('meta[name="description"]')) == null ? void 0 : n.getAttribute("content");
|
|
6693
|
-
(i =
|
|
6693
|
+
(i = re.replay) == null || i.RecordPageView({ ...a && { description: a }, url: e, referrer: document.referrer, pageTitle: document.title });
|
|
6694
6694
|
const o = globalThis.UserLeap._config.pageUrlEvents;
|
|
6695
6695
|
let l = !1;
|
|
6696
6696
|
if (o && o.length) for (let u = 0; u < o.length && (l = so(o[u], e), !l); u++) ;
|
|
@@ -6761,7 +6761,7 @@ const ag = function(e) {
|
|
|
6761
6761
|
return console.warn(E), { success: !1, message: E, surveyState: "no survey" };
|
|
6762
6762
|
}
|
|
6763
6763
|
const h = sr ?? globalThis.location.href;
|
|
6764
|
-
o.url || (o.url = h), ke("trackStartUrl", h), (g = (m = globalThis.UserLeap) == null ? void 0 : m._config) != null && g.optimizelyEnabled && (mr(Ue(globalThis.UserLeap)) || us.getAndSetWebOptimizelyExperiments(), o.optimizelyExperiments = Object.assign({}, us.getAllOptimizelyExperiments())), (I = (v = globalThis.UserLeap) == null ? void 0 : v._config) != null && I.launchDarklyEnabled && (o.launchDarklyFlags = pi.getAllLaunchDarklyVariations()), i && (globalThis.UserLeap.userId = i), a && (globalThis.UserLeap.partnerAnonymousId = a), l && (o.eventProperties = l), (O =
|
|
6764
|
+
o.url || (o.url = h), ke("trackStartUrl", h), (g = (m = globalThis.UserLeap) == null ? void 0 : m._config) != null && g.optimizelyEnabled && (mr(Ue(globalThis.UserLeap)) || us.getAndSetWebOptimizelyExperiments(), o.optimizelyExperiments = Object.assign({}, us.getAllOptimizelyExperiments())), (I = (v = globalThis.UserLeap) == null ? void 0 : v._config) != null && I.launchDarklyEnabled && (o.launchDarklyFlags = pi.getAllLaunchDarklyVariations()), i && (globalThis.UserLeap.userId = i), a && (globalThis.UserLeap.partnerAnonymousId = a), l && (o.eventProperties = l), (O = re.replay) == null || O.RecordEvent({ name: u, url: o.url }), N.info("TrackEvent", { eventName: u });
|
|
6765
6765
|
const f = globalThis.UserLeap.delayingSurvey || mu() ? await ze(Ae("1", [it], "events/batch"), { body: JSON.stringify({ events: [{ event: u, metadata: o }], previewKey: d }), method: "POST", shouldDropOnRateLimit: !0 }) : await ze(Ae("1", [it], "events"), { body: JSON.stringify({ event: u, metadata: o, previewKey: d }), method: "POST", shouldDropOnRateLimit: !0 });
|
|
6766
6766
|
if (!f.ok) {
|
|
6767
6767
|
const E = "[Sprig] (ERR-421) Failed to track event";
|
|
@@ -6865,7 +6865,7 @@ const ag = function(e) {
|
|
|
6865
6865
|
if (e.mode === "test" || n === globalThis.UserLeap.userId) return;
|
|
6866
6866
|
globalThis.UserLeap.userId = n;
|
|
6867
6867
|
const i = globalThis.UserLeap.visitorId, a = await ze(Ae("1", [ot, it]), { body: JSON.stringify({ userId: n }), method: "PUT" });
|
|
6868
|
-
a.ok ? (i !== globalThis.UserLeap.visitorId && ((o =
|
|
6868
|
+
a.ok ? (i !== globalThis.UserLeap.visitorId && ((o = re.replay) == null || o.clearUserReplayData()), ke("uid", n)) : a.reportError && (console.warn("[Sprig] (ERR-420) Failed to set user id", a.error), a.error && globalThis.UserLeap.reportError("setUserId", a.error));
|
|
6869
6869
|
}, async setPartnerAnonymousId(n) {
|
|
6870
6870
|
if (globalThis.UserLeap.debugMode && console.info("[DEBUG] Sprig setPartnerAnonymousId", n), n == null) {
|
|
6871
6871
|
const i = `[Sprig] - Invalid partnerAnonymousId ${n}`;
|
|
@@ -6885,10 +6885,10 @@ const ag = function(e) {
|
|
|
6885
6885
|
const l = Ue(globalThis.UserLeap), c = Ys(l), u = l["userleap-platform"] === "web";
|
|
6886
6886
|
if (!globalThis.UserLeap.frameId) return;
|
|
6887
6887
|
const d = document.getElementById(globalThis.UserLeap.frameId);
|
|
6888
|
-
d && (globalThis.UserLeap.useMobileStyling && ((h = globalThis.UserLeap.windowDimensions) != null && h.width && (d.style.width = `${globalThis.UserLeap.windowDimensions.width}px`), (f = globalThis.UserLeap.windowDimensions) != null && f.height && (d.style.maxHeight = globalThis.UserLeap.windowDimensions.height - 20 + "px"), d.contentDocument && (d.style.height = String(
|
|
6888
|
+
d && (globalThis.UserLeap.useMobileStyling && ((h = globalThis.UserLeap.windowDimensions) != null && h.width && (d.style.width = `${globalThis.UserLeap.windowDimensions.width}px`), (f = globalThis.UserLeap.windowDimensions) != null && f.height && (d.style.maxHeight = globalThis.UserLeap.windowDimensions.height - 20 + "px"), d.contentDocument && (d.style.height = String(Hf(d.contentDocument, u && !c, su(l))[0]) + "px")), z.emit(B.SurveyDimensions, { name: B.SurveyDimensions, contentFrameWidth: d.clientWidth, contentFrameHeight: d.clientHeight, "survey.id": parseInt(globalThis.UserLeap.container.dataset.studyId) }));
|
|
6889
6889
|
}, logoutUser() {
|
|
6890
6890
|
var n;
|
|
6891
|
-
globalThis.UserLeap.debugMode && console.info("[DEBUG] Sprig logout"), N.info("LogOut", { vid: globalThis.UserLeap.visitorId, userId: globalThis.UserLeap.userId }), globalThis.UserLeap.visitorId = null, globalThis.UserLeap.userId = null, globalThis.UserLeap.partnerAnonymousId = null, globalThis.UserLeap.token = null, globalThis.UserLeap.email = null, ut.removeItem("userleap.ids"), globalThis.UserLeap._queue.isPaused() && globalThis.UserLeap._queue.empty(), Tu(), (n =
|
|
6891
|
+
globalThis.UserLeap.debugMode && console.info("[DEBUG] Sprig logout"), N.info("LogOut", { vid: globalThis.UserLeap.visitorId, userId: globalThis.UserLeap.userId }), globalThis.UserLeap.visitorId = null, globalThis.UserLeap.userId = null, globalThis.UserLeap.partnerAnonymousId = null, globalThis.UserLeap.token = null, globalThis.UserLeap.email = null, ut.removeItem("userleap.ids"), globalThis.UserLeap._queue.isPaused() && globalThis.UserLeap._queue.empty(), Tu(), (n = re.replay) == null || n.clearUserReplayData(), globalThis.UserLeap._queue.unpause();
|
|
6892
6892
|
}, teardown() {
|
|
6893
6893
|
["hashchange", "popstate"].forEach((n) => globalThis.removeEventListener(n, nr, !0)), globalThis.UserLeap._config.interactiveEvents && Eu(), globalThis.UserLeap("dismissActiveSurvey", Be.API), delete globalThis.UserLeap, delete globalThis.Sprig, delete globalThis._Sprig;
|
|
6894
6894
|
}, integrateOptimizely(n, i = !0) {
|
|
@@ -6928,13 +6928,13 @@ const ag = function(e) {
|
|
|
6928
6928
|
bu(n, i);
|
|
6929
6929
|
}, _completeSessionReplay: async ({ surveyId: n, responseGroupUuid: i, eventDigest: a }) => {
|
|
6930
6930
|
var o;
|
|
6931
|
-
return
|
|
6931
|
+
return re.replay ? (o = re.replay) == null ? void 0 : o._completeSessionReplay({ surveyId: n, responseGroupUuid: i, eventDigest: a, headers: Ue(globalThis.UserLeap) }) : (globalThis.UserLeap.reportError("_completeSessionReplay", new Error("Replay module not registered")), !1);
|
|
6932
6932
|
}, pauseReplayRecording() {
|
|
6933
6933
|
var n, i, a, o;
|
|
6934
|
-
(i = (n =
|
|
6934
|
+
(i = (n = re.replay) == null ? void 0 : n.isReplayPaused) != null && i.call(n) || ((o = (a = re.replay) == null ? void 0 : a.recordReplayPaused) == null || o.call(a));
|
|
6935
6935
|
}, resumeReplayRecording() {
|
|
6936
6936
|
var n, i, a, o, l, c;
|
|
6937
|
-
(i = (n =
|
|
6937
|
+
(i = (n = re.replay) == null ? void 0 : n.isReplayPaused) != null && i.call(n) && ((o = (a = re.replay) == null ? void 0 : a.recordReplayResumed) == null || o.call(a), (c = (l = re.replay) == null ? void 0 : l.recordFullSnapshot) == null || c.call(l));
|
|
6938
6938
|
} };
|
|
6939
6939
|
Object.assign(globalThis.UserLeap, s);
|
|
6940
6940
|
};
|
|
@@ -6972,18 +6972,18 @@ function cg(e = {}) {
|
|
|
6972
6972
|
const u = await async function(C) {
|
|
6973
6973
|
var I, O;
|
|
6974
6974
|
const m = Ue(globalThis.UserLeap);
|
|
6975
|
-
document.addEventListener("securitypolicyviolation",
|
|
6975
|
+
document.addEventListener("securitypolicyviolation", Ha);
|
|
6976
6976
|
const g = await Xe(Ae("1", [ot], "config"), { headers: m });
|
|
6977
|
-
if (document.removeEventListener("securitypolicyviolation",
|
|
6977
|
+
if (document.removeEventListener("securitypolicyviolation", Ha), !g.ok) return (I = globalThis.SprigLoggerCallback) == null || I.call(globalThis, "Sprig config fetch failed"), g.reportError && (console.warn("[Sprig] (ERR-422) Failed to load configuration", g.error), g.error && globalThis.UserLeap.reportError("applyRemoteConfig", g.error)), ci("Disabled: failed to fetch configuration"), C;
|
|
6978
6978
|
const v = g.json;
|
|
6979
6979
|
return v != null && v.disabled ? ((O = globalThis.SprigLoggerCallback) == null || O.call(globalThis, "Sprig config fetch disabled"), ci(`Disabled: ${v.disabled}`), { disabled: v.disabled }) : Object.assign({}, v, C);
|
|
6980
6980
|
}(e);
|
|
6981
6981
|
if ((f = globalThis.SprigLoggerCallback) == null || f.call(globalThis, "Sprig fetched config"), tg({ isWeb: !c, reportingIntervalSeconds: u.metricsReportingEnabled || u.mobileMetricsReportingEnabled ? u.metricsReportingIntervalSeconds : 0, thresholds: u.metricThresholds, postMetrics: async (C) => {
|
|
6982
6982
|
var m;
|
|
6983
|
-
await ze(Ae("1", [ot], "metrics"), { body: C, method: "POST", headers: { "x-ul-replay-enabled": `${!!((m =
|
|
6983
|
+
await ze(Ae("1", [ot], "metrics"), { body: C, method: "POST", headers: { "x-ul-replay-enabled": `${!!((m = re.replay) != null && m.isReplayRecording())}` }, shouldDropOnRateLimit: !0 });
|
|
6984
6984
|
} }), !c) {
|
|
6985
|
-
const C = u.alwaysOnReplay ? { userAgent: globalThis.navigator.userAgent, surveyId: u.alwaysOnReplay.surveyId, responseGroupUuid: u.alwaysOnReplay.responseGroupUuid, sdkVersion: "2.
|
|
6986
|
-
await ((w =
|
|
6985
|
+
const C = u.alwaysOnReplay ? { userAgent: globalThis.navigator.userAgent, surveyId: u.alwaysOnReplay.surveyId, responseGroupUuid: u.alwaysOnReplay.responseGroupUuid, sdkVersion: "2.44.1", maxDurationSeconds: u.alwaysOnReplay.maxDurationSeconds } : void 0;
|
|
6986
|
+
await ((w = re.replay) == null ? void 0 : w.initializeReplay({ maxReplayDurationSeconds: u.maxReplayDurationSeconds, maxInflightRequests: globalThis.UserLeap.maxInflightReplayRequests ?? 2, replaySettings: u.replaySettings, apiUrl: globalThis.UserLeap._API_URL, alwaysOnConfig: C })), io = u.replaySettings;
|
|
6987
6987
|
}
|
|
6988
6988
|
ag(u), await og(u), globalThis.UserLeap._queue.unpause(), (p = globalThis.SprigLoggerCallback) == null || p.call(globalThis, "SdkReady"), z.emit(B.SDKReady, { mobileMetricsReportingEnabled: !!u.mobileMetricsReportingEnabled, metricsReportingInterval: u.metricsReportingIntervalSeconds || 0, metricsThresholds: u.metricThresholds || [], maxMobileReplayDurationSeconds: u.maxMobileReplayDurationSeconds, mobileReplaySettings: u.mobileReplaySettings }), z.emit(B.VisitorIDUpdated, { visitorId: globalThis.UserLeap.visitorId }), z.on(B.VisitorIDUpdated, () => {
|
|
6989
6989
|
for (const C in Rs) delete Rs[C];
|
|
@@ -7301,21 +7301,21 @@ const Fu = (e) => {
|
|
|
7301
7301
|
}, Bu = (e) => {
|
|
7302
7302
|
window.Sprig && (window.Sprig.pointerDownTarget = e.target);
|
|
7303
7303
|
}, pe = { isRecording: !1, scrollEventUuids: {}, stopRecording: () => {
|
|
7304
|
-
} }, zu = () => globalThis.indexedDB && globalThis.IDBKeyRange && globalThis.CompressionStream,
|
|
7304
|
+
} }, zu = () => globalThis.indexedDB && globalThis.IDBKeyRange && globalThis.CompressionStream, be = (() => {
|
|
7305
7305
|
const e = Q.getItem("sprig.sessionId");
|
|
7306
7306
|
if (e) return N.info("SessionIDFound", { savedSessionId: e }), Q.removeItem("sprig.sessionId"), e;
|
|
7307
7307
|
const t = Ut();
|
|
7308
7308
|
return N.info("GeneratedSessionID", { uuid: t }), t;
|
|
7309
7309
|
})(), ki = () => {
|
|
7310
7310
|
Q.setItem("sprig.disableReplayRecording", "disabled");
|
|
7311
|
-
},
|
|
7311
|
+
}, He = () => !!Q.getItem("sprig.disableReplayRecording"), As = () => !!Q.getItem("sprig.isReplayPaused");
|
|
7312
7312
|
var dl;
|
|
7313
7313
|
(dl = globalThis.addEventListener) == null || dl.call(globalThis, "beforeunload", () => {
|
|
7314
|
-
N.info("BeforeUnload", { sessionId:
|
|
7314
|
+
N.info("BeforeUnload", { sessionId: be }), Q.setItem("sprig.sessionId", be);
|
|
7315
7315
|
});
|
|
7316
7316
|
const Ye = (e, t) => {
|
|
7317
7317
|
var r, s;
|
|
7318
|
-
if (!
|
|
7318
|
+
if (!He() && pe.isRecording && !As()) try {
|
|
7319
7319
|
(s = (r = globalThis.rrwebRecord) == null ? void 0 : r.addCustomEvent) == null || s.call(r, e, t);
|
|
7320
7320
|
} catch (n) {
|
|
7321
7321
|
br("Error recording custom event", n);
|
|
@@ -7324,7 +7324,7 @@ const Ye = (e, t) => {
|
|
|
7324
7324
|
const { x: t, xPath: r, y: s } = e, n = pe.scrollEventUuids[r];
|
|
7325
7325
|
if (n) return Ee(async () => {
|
|
7326
7326
|
var o, l, c, u;
|
|
7327
|
-
const i = await
|
|
7327
|
+
const i = await se.openDB(), a = await i.get("events", n);
|
|
7328
7328
|
if (a != null && a.event) {
|
|
7329
7329
|
const d = JSON.parse(a.event), h = t > ((l = (o = d.data) == null ? void 0 : o.payload) == null ? void 0 : l.x), f = s > ((u = (c = d.data) == null ? void 0 : c.payload) == null ? void 0 : u.y);
|
|
7330
7330
|
if (!h && !f) return null;
|
|
@@ -7340,13 +7340,13 @@ const Ye = (e, t) => {
|
|
|
7340
7340
|
(t = e.source) == null || t.postMessage({ type: vg }, { targetOrigin: e.origin });
|
|
7341
7341
|
});
|
|
7342
7342
|
}, Lg = ["did not allow mutations", "called in an invalid security context"], Og = (e, t, { reportError: r = !0, extraInfo: s = {} }) => {
|
|
7343
|
-
if (!
|
|
7344
|
-
if (ki(), t.name === "VersionError") return N.error("VersionErr", { message: e }), void
|
|
7343
|
+
if (!He() && t instanceof Error) {
|
|
7344
|
+
if (ki(), t.name === "VersionError") return N.error("VersionErr", { message: e }), void se.deleteDB();
|
|
7345
7345
|
((n) => {
|
|
7346
7346
|
if (!n) return !0;
|
|
7347
7347
|
for (const i of Lg) if (n.toLowerCase().includes(i)) return !1;
|
|
7348
7348
|
return !0;
|
|
7349
|
-
})(t == null ? void 0 : t.message) && (r && globalThis.UserLeap.reportError(e, t, s),
|
|
7349
|
+
})(t == null ? void 0 : t.message) && (r && globalThis.UserLeap.reportError(e, t, s), se.clearAll());
|
|
7350
7350
|
}
|
|
7351
7351
|
}, br = (e, t, { reportError: r } = { reportError: !0 }) => {
|
|
7352
7352
|
ju(), N.error("ReplayErr", { code: t.code, name: t.name }), Og(e, t, { reportError: r });
|
|
@@ -7367,7 +7367,7 @@ const Ye = (e, t) => {
|
|
|
7367
7367
|
};
|
|
7368
7368
|
let vn = 0;
|
|
7369
7369
|
(async () => zu() && Promise.allSettled([Ii("replayStorage"), Ii("sprig.replay")]))();
|
|
7370
|
-
const
|
|
7370
|
+
const se = new class {
|
|
7371
7371
|
constructor() {
|
|
7372
7372
|
de(this, "wrapTransactionWithCounter", (e) => {
|
|
7373
7373
|
var s, n;
|
|
@@ -7439,11 +7439,11 @@ const ee = new class {
|
|
|
7439
7439
|
}
|
|
7440
7440
|
async getEventsBetween(e, t = Date.now()) {
|
|
7441
7441
|
if (e >= t) return Promise.resolve([]);
|
|
7442
|
-
const r = IDBKeyRange.bound([
|
|
7442
|
+
const r = IDBKeyRange.bound([be, e], [be, t], !1, !0);
|
|
7443
7443
|
return (await this.openDB()).getAllFromIndex("events", "[sessionId+timestamp]", r);
|
|
7444
7444
|
}
|
|
7445
7445
|
async updateEventsExpiredAt(e, t, r = 30) {
|
|
7446
|
-
const s = /* @__PURE__ */ new Date(), n = s.setMinutes(s.getMinutes() + (r ?? 30)), i = await this.getTransaction("events"), a = i.store.index("[sessionId+timestamp]"), o = IDBKeyRange.bound([
|
|
7446
|
+
const s = /* @__PURE__ */ new Date(), n = s.setMinutes(s.getMinutes() + (r ?? 30)), i = await this.getTransaction("events"), a = i.store.index("[sessionId+timestamp]"), o = IDBKeyRange.bound([be, e], [be, t], !1, !0);
|
|
7447
7447
|
for await (const l of a.iterate(o)) await l.update({ ...l.value, expiredAt: n });
|
|
7448
7448
|
await i.done;
|
|
7449
7449
|
}
|
|
@@ -7460,11 +7460,17 @@ const ee = new class {
|
|
|
7460
7460
|
return n.getAll(i);
|
|
7461
7461
|
}
|
|
7462
7462
|
async getPendingCaptures(e = {}) {
|
|
7463
|
-
return (await (await this.openDB()).getAllFromIndex("pendingCaptures", "sessionId",
|
|
7463
|
+
return (await (await this.openDB()).getAllFromIndex("pendingCaptures", "sessionId", be)).filter((r) => !e.beforePresent || r.targetTimestamp < Date.now()).filter((r) => !e.isBeforeType || r.captureParams.replayParams.replayDurationType === "before").filter((r) => !e.isHeatmap || (r.captureParams.isHeatmap ?? !1));
|
|
7464
|
+
}
|
|
7465
|
+
async tryAddPendingCaptureForSurvey(e) {
|
|
7466
|
+
const { surveyId: t, record: r } = e, s = (await this.openDB()).transaction("pendingCaptures", "readwrite");
|
|
7467
|
+
this.wrapTransactionWithCounter(s);
|
|
7468
|
+
const n = s.store.index("sessionId"), i = await n.getAll(be), a = !!r.captureParams.isHeatmap;
|
|
7469
|
+
return i.some((o) => o.captureParams.surveyId === t && !!o.captureParams.isHeatmap === a) ? (await s.done, { added: !1 }) : (await s.store.add(r), await s.done, { added: !0 });
|
|
7464
7470
|
}
|
|
7465
7471
|
async markPendingCaptureToCanUpload(e) {
|
|
7466
7472
|
const t = await this.getTransaction("pendingCaptures"), r = t.store.index("sessionId");
|
|
7467
|
-
for await (const s of r.iterate(
|
|
7473
|
+
for await (const s of r.iterate(be)) {
|
|
7468
7474
|
const n = s.value;
|
|
7469
7475
|
n.captureParams.responseGroupId === e && await s.update({ ...n, canUpload: !0 });
|
|
7470
7476
|
}
|
|
@@ -7473,7 +7479,7 @@ const ee = new class {
|
|
|
7473
7479
|
async markPendingHeatmapsReady(e) {
|
|
7474
7480
|
if (parseInt(Q.getItem("sprig.pendingCount") ?? "0") === 0) return null;
|
|
7475
7481
|
const t = Date.now(), r = await this.getTransaction("pendingCaptures"), s = r.store.index("sessionId");
|
|
7476
|
-
for await (const n of s.iterate(
|
|
7482
|
+
for await (const n of s.iterate(be)) {
|
|
7477
7483
|
const i = n.value;
|
|
7478
7484
|
!i.captureParams.isHeatmap || e && !e.includes(i.uuid) || await n.update({ ...i, targetTimestamp: t, captureParams: { ...i.captureParams, triggerTimestamp: t, replayParams: { ...i.captureParams.replayParams, replayDurationSeconds: Math.floor((t - i.timestamp) / 1e3) } } });
|
|
7479
7485
|
}
|
|
@@ -7482,11 +7488,11 @@ const ee = new class {
|
|
|
7482
7488
|
}(), Ze = [];
|
|
7483
7489
|
let vr, Wu, gt = [], Dt = !1, Mt = 0, ps = !1, Vu = !1;
|
|
7484
7490
|
const lo = [];
|
|
7485
|
-
let Ms,
|
|
7491
|
+
let Ms, Hu, hs, Gu, Sn = !1;
|
|
7486
7492
|
const Pt = () => ps && !Dt && Date.now() <= Ms, Ag = ({ apiUrl: e, config: t, triggerSnapshot: r, forceInit: s = !1 }) => {
|
|
7487
|
-
ps && !s || (Q.isStorageAvailable ? (gt = [], lo.splice(0), Ze.splice(0), Mt = 0, hs = r, Wu = e, vr = { responseGroupUuid: t.responseGroupUuid, surveyId: t.surveyId, userAgent: t.userAgent, sdkVersion: t.sdkVersion },
|
|
7493
|
+
ps && !s || (Q.isStorageAvailable ? (gt = [], lo.splice(0), Ze.splice(0), Mt = 0, hs = r, Wu = e, vr = { responseGroupUuid: t.responseGroupUuid, surveyId: t.surveyId, userAgent: t.userAgent, sdkVersion: t.sdkVersion }, Hu = t.maxDurationSeconds, Pg(), ps || (Gu = globalThis.setInterval(Dg, 500)), ps = !0) : Dt = !0);
|
|
7488
7494
|
}, Mg = [$e.Drag, $e.Input, $e.MediaInteraction, $e.MouseInteraction, $e.MouseMove, $e.Scroll, $e.Selection, $e.TouchMove], Ug = (e) => e.type === at.Custom || e.type === at.IncrementalSnapshot && Mg.includes(e.data.source), co = (e) => e.some(Ug), Dg = async () => {
|
|
7489
|
-
if (!Pt()) return void globalThis.clearInterval(
|
|
7495
|
+
if (!Pt()) return void globalThis.clearInterval(Gu);
|
|
7490
7496
|
if ($u(), !co(Ze)) return;
|
|
7491
7497
|
const e = Ze[0].timestamp;
|
|
7492
7498
|
Date.now() - e > 35e3 && (hs == null || hs());
|
|
@@ -7502,9 +7508,9 @@ const Pt = () => ps && !Dt && Date.now() <= Ms, Ag = ({ apiUrl: e, config: t, tr
|
|
|
7502
7508
|
N.info("Read stored session state", e);
|
|
7503
7509
|
const t = JSON.parse(e);
|
|
7504
7510
|
Dt = t.disabled, vr = t.metadata, gt = t.uploadUrls, Mt = t.currentIndex, Ms = t.expirationTimestamp, t.pendingEventTimestamp && (N.info(`Uploading with pending timestamp: ${t.pendingEventTimestamp}`), _g(t.pendingEventTimestamp));
|
|
7505
|
-
} else Ms = 1e3 *
|
|
7511
|
+
} else Ms = 1e3 * Hu + Date.now();
|
|
7506
7512
|
}, _g = async (e) => {
|
|
7507
|
-
const t = Date.now(), r = (await
|
|
7513
|
+
const t = Date.now(), r = (await se.getEventsBetween(e, t)).map((n) => JSON.parse(n.event));
|
|
7508
7514
|
if (!co(r)) return;
|
|
7509
7515
|
Ku(r);
|
|
7510
7516
|
const s = await Ju();
|
|
@@ -7592,12 +7598,12 @@ const Bg = (e) => {
|
|
|
7592
7598
|
Li.push(e), Ri || zg();
|
|
7593
7599
|
}, zg = () => {
|
|
7594
7600
|
Ri = !0, setTimeout(async () => {
|
|
7595
|
-
if (
|
|
7601
|
+
if (He() || As()) return;
|
|
7596
7602
|
const e = Li;
|
|
7597
7603
|
Li = [], Ri = !1, Xu(async () => {
|
|
7598
7604
|
await (async (t) => {
|
|
7599
|
-
const r = t.map((s) => ({ ...s, sessionId: s.sessionId ??
|
|
7600
|
-
if (r.length !== 0) return Ee(() =>
|
|
7605
|
+
const r = t.map((s) => ({ ...s, sessionId: s.sessionId ?? be }));
|
|
7606
|
+
if (r.length !== 0) return Ee(() => se.bulkAdd("events", r), "Error storing replay events");
|
|
7601
7607
|
})(e);
|
|
7602
7608
|
}, "sdk_replay_add_event_batch_seconds");
|
|
7603
7609
|
}, 500);
|
|
@@ -7605,7 +7611,7 @@ const Bg = (e) => {
|
|
|
7605
7611
|
pe.cleanupInterval = window.setInterval(() => {
|
|
7606
7612
|
const s = Date.now();
|
|
7607
7613
|
Zu(() => Ee(async () => {
|
|
7608
|
-
|
|
7614
|
+
He() || await Promise.all([se.deleteRowsBefore("events", s - 1e3 * e, (n) => n.expiredAt === void 0 || n.expiredAt < s - 1e3 * e), se.deleteRowsBefore("chunkUploads", s - 1e3 * t), se.deleteRowsBefore("pendingCaptures", s - 1e3 * r, (n) => !n.canUpload)]);
|
|
7609
7615
|
}, "Error deleting table rows"), "sdk_replay_cleanup_seconds"), N.debug("CleanupComplete");
|
|
7610
7616
|
}, 3e4);
|
|
7611
7617
|
}, Wg = () => {
|
|
@@ -7621,13 +7627,13 @@ const Oi = async (e = !1) => {
|
|
|
7621
7627
|
In = !0;
|
|
7622
7628
|
const t = parseInt(ct ?? "0");
|
|
7623
7629
|
if (t === 0) return;
|
|
7624
|
-
const r = await
|
|
7630
|
+
const r = await se.getPendingCaptures({ beforePresent: !0, isBeforeType: e }), s = await se.openDB();
|
|
7625
7631
|
await Promise.all(r.map(async (n) => (await s.delete("pendingCaptures", n.uuid), rd(n.captureParams, n.canUpload)))), ct = (t - r.length).toString(), Q.setItem("sprig.pendingCount", ct);
|
|
7626
7632
|
} finally {
|
|
7627
7633
|
In = !1;
|
|
7628
7634
|
}
|
|
7629
7635
|
}, Vg = async (e, t, r, s, n) => {
|
|
7630
|
-
const i = Math.min(e + n, r), a = await Zu(() =>
|
|
7636
|
+
const i = Math.min(e + n, r), a = await Zu(() => se.getEventsBetween(e, i), "sdk_replay_get_events_between_seconds");
|
|
7631
7637
|
if (!(a != null && a.length)) return N.debug("NoEventsFound"), { validStartFound: s, events: [] };
|
|
7632
7638
|
if (!s) {
|
|
7633
7639
|
N.debug("ValidStartSearch");
|
|
@@ -7649,24 +7655,24 @@ const Oi = async (e = !1) => {
|
|
|
7649
7655
|
if (!i) throw new Error(`Upload response did not include etag for upload ${s.uploadId}, part ${s.chunkIndex}`);
|
|
7650
7656
|
return i;
|
|
7651
7657
|
}))(t);
|
|
7652
|
-
return await
|
|
7658
|
+
return await se.updatePartial("chunkUploads", t.uuid, { data: null, etag: r, status: "UploadComplete" }), t.uploadId;
|
|
7653
7659
|
})), td = async (e) => {
|
|
7654
|
-
const t = await
|
|
7660
|
+
const t = await se.getChunkUploadsByStatus({ status: "UploadComplete", uploadId: e });
|
|
7655
7661
|
if (!(t != null && t.length)) return void N.info("NoChunksForUpload", { uploadId: e });
|
|
7656
7662
|
const r = t.reduce((i, a) => (i.find((o) => o.chunkIndex === a.chunkIndex) || i.push(a), i), []);
|
|
7657
7663
|
r.sort((i, a) => i.chunkIndex - a.chunkIndex);
|
|
7658
7664
|
const s = r.map((i) => ({ ETag: i.etag, PartNumber: i.chunkIndex })).filter((i) => i.ETag !== null), n = r[0];
|
|
7659
|
-
await Mu({ apiUrl: n.apiUrl, surveyId: n.surveyId, uploadId: e, responseGroupUuid: n.responseGroupId, etags: s, headers: n.completeUploadHeaders, replayDuration: n.replayDuration }), await
|
|
7660
|
-
},
|
|
7665
|
+
await Mu({ apiUrl: n.apiUrl, surveyId: n.surveyId, uploadId: e, responseGroupUuid: n.responseGroupId, etags: s, headers: n.completeUploadHeaders, replayDuration: n.replayDuration }), await se.deleteChunkUploads("UploadComplete", e);
|
|
7666
|
+
}, Hg = () => {
|
|
7661
7667
|
Ee(async () => {
|
|
7662
|
-
const e = await
|
|
7668
|
+
const e = await se.getChunkUploadsByStatus({ sessionId: be, status: "ReadyForUpload" });
|
|
7663
7669
|
if (!(e != null && e.length)) return;
|
|
7664
7670
|
const t = await ed(e);
|
|
7665
7671
|
t != null && t.length && await Promise.all(t.map((r) => {
|
|
7666
7672
|
if (r) return td(r);
|
|
7667
7673
|
}));
|
|
7668
7674
|
}, "Error uploading unfinished chunks");
|
|
7669
|
-
},
|
|
7675
|
+
}, Gg = async (e, t) => {
|
|
7670
7676
|
const r = t ?? Date.now();
|
|
7671
7677
|
return (async (s, n) => {
|
|
7672
7678
|
const i = new TextEncoder();
|
|
@@ -7691,7 +7697,7 @@ const Oi = async (e = !1) => {
|
|
|
7691
7697
|
return l.write(w), l.close(), a = new Uint8Array(await new Response(o.readable).arrayBuffer()), a;
|
|
7692
7698
|
})(r - e, r);
|
|
7693
7699
|
}, cl = async (e) => {
|
|
7694
|
-
const { surveyId: t, responseGroupId: r, visitorId: s, apiUrl: n, completeUploadHeaders: i, replayParams: a, triggerTimestamp: o } = e, l = await
|
|
7700
|
+
const { surveyId: t, responseGroupId: r, visitorId: s, apiUrl: n, completeUploadHeaders: i, replayParams: a, triggerTimestamp: o } = e, l = await Gg(1e3 * a.replayDurationSeconds, o);
|
|
7695
7701
|
if (!(l != null && l.length)) return void N.info("FileDataEmpty", { surveyId: t });
|
|
7696
7702
|
const c = ((d, h, f) => {
|
|
7697
7703
|
const w = d.length, p = 1024 * h * 1024, C = Math.ceil(w / f), m = Math.max(p, C), g = [];
|
|
@@ -7700,16 +7706,16 @@ const Oi = async (e = !1) => {
|
|
|
7700
7706
|
return g;
|
|
7701
7707
|
})(l, a.minimumChunkSizeMb, a.signedUrls.length), u = await Promise.all(c.map(async (d, h) => {
|
|
7702
7708
|
const f = Ut(), w = { apiUrl: n, chunkIndex: h + 1, completeUploadHeaders: i, etag: null, responseGroupId: r, status: "ReadyForUpload", surveyId: t, timestamp: o, totalChunks: c.length, data: d, uploadId: a.uploadId, uploadUrl: a.signedUrls[h].url, uuid: f, visitorId: s };
|
|
7703
|
-
return await (await
|
|
7709
|
+
return await (await se.openDB()).add("chunkUploads", { ...w, sessionId: w.sessionId ?? be }), w;
|
|
7704
7710
|
}));
|
|
7705
7711
|
await (async (d, h) => {
|
|
7706
7712
|
await ed(h), await Promise.all(d.map((f) => td(f)));
|
|
7707
7713
|
})([a.uploadId], u);
|
|
7708
7714
|
}, rd = async (e, t) => {
|
|
7709
|
-
if (
|
|
7715
|
+
if (He()) return N.debug("ReplayDisabled-ScheduleOrCapture");
|
|
7710
7716
|
const { isHeatmap: r, isStandalone: s, replayParams: n, triggerTimestamp: i, responseGroupId: a } = e, o = async () => {
|
|
7711
7717
|
setTimeout(() => z.removeListener(B.QuestionAnswered, o), 0), Ee(async () => {
|
|
7712
|
-
n.replayDurationType === "before" ? await cl(e) : await
|
|
7718
|
+
n.replayDurationType === "before" ? await cl(e) : await se.markPendingCaptureToCanUpload(a);
|
|
7713
7719
|
}, "Error in schedule/capture callback");
|
|
7714
7720
|
};
|
|
7715
7721
|
Ee(async () => {
|
|
@@ -7718,25 +7724,24 @@ const Oi = async (e = !1) => {
|
|
|
7718
7724
|
if (s || r || t) await cl(e), r && $g();
|
|
7719
7725
|
else {
|
|
7720
7726
|
const l = 35 + n.replayDurationSeconds, c = i - 1e3 * l, u = i;
|
|
7721
|
-
await
|
|
7727
|
+
await se.updateEventsExpiredAt(c, u, n.expirationTimeLimitMinutes), z.on(B.QuestionAnswered, o);
|
|
7722
7728
|
}
|
|
7723
7729
|
}, "Error in scheduling/capturing replay");
|
|
7724
7730
|
}, $g = async () => {
|
|
7725
7731
|
parseInt(ct ?? "0") || Q.removeItem("sprig.isCapturingHeatmap"), Q.getItem("sprig.teardownAfterCapture") && (ju(), sd(), Q.removeItem("sprig.teardownAfterCapture"));
|
|
7726
|
-
}, sd = async () =>
|
|
7732
|
+
}, sd = async () => He() ? N.debug("ReplayDisabled-ClearData") : Promise.all([se.deleteBySessionId("events", be), se.deleteBySessionId("pendingCaptures", be)]).catch((e) => {
|
|
7727
7733
|
br("Error clearing user replay data", e);
|
|
7728
7734
|
}), nd = async (e) => {
|
|
7729
|
-
if (
|
|
7730
|
-
const { isHeatmap: t, surveyId: r } = e, s =
|
|
7731
|
-
|
|
7732
|
-
|
|
7733
|
-
|
|
7734
|
-
|
|
7735
|
-
|
|
7736
|
-
|
|
7737
|
-
|
|
7738
|
-
|
|
7739
|
-
i.triggerTimestamp = a, ct = (parseInt(ct ?? "0") + 1).toString(), Q.setItem("sprig.pendingCount", ct), await (await ee.openDB()).add("pendingCaptures", { canUpload: !1, captureParams: i, sessionId: ve, targetTimestamp: a, timestamp: Date.now(), uuid: Ut() });
|
|
7735
|
+
if (He()) return;
|
|
7736
|
+
const { isHeatmap: t, surveyId: r } = e, s = { ...e, replayParams: { ...e.replayParams } };
|
|
7737
|
+
e.replayParams.replayDurationType === "beforeAndAfter" && (s.replayParams.replayDurationSeconds *= 2), s.replayParams.replayDurationType = "before";
|
|
7738
|
+
const n = e.triggerTimestamp + 1e3 * e.replayParams.replayDurationSeconds;
|
|
7739
|
+
s.triggerTimestamp = n;
|
|
7740
|
+
const i = { canUpload: !1, captureParams: s, sessionId: be, targetTimestamp: n, timestamp: Date.now(), uuid: Ut() }, { added: a } = await se.tryAddPendingCaptureForSurvey({ surveyId: r, record: i });
|
|
7741
|
+
a ? (ct = (parseInt(ct ?? "0") + 1).toString(), Q.setItem("sprig.pendingCount", ct), t && (Ei(), Q.setItem("sprig.isCapturingHeatmap", "true"), Ti = Date.now(), pe.inactivityInterval || (pe.inactivityInterval = window.setInterval(() => {
|
|
7742
|
+
var o;
|
|
7743
|
+
o = Ti, Date.now() - o >= 3e4 && Ee(() => se.markPendingHeatmapsReady(), "Error in heatmap inactivity");
|
|
7744
|
+
}, 1e3)))) : N.info("PendingCaptureExists", { surveyId: r });
|
|
7740
7745
|
}, Yg = Object.freeze(Object.defineProperty({ __proto__: null, RecordEvent: (e) => {
|
|
7741
7746
|
Ye("Sprig_TrackEvent", e);
|
|
7742
7747
|
}, RecordPageView: (e) => {
|
|
@@ -7747,14 +7752,14 @@ const Oi = async (e = !1) => {
|
|
|
7747
7752
|
if (!e || !t) return !1;
|
|
7748
7753
|
const n = globalThis.UserLeap._API_URL, i = await Mu({ surveyId: e, responseGroupUuid: t, eventDigest: r, apiUrl: n, headers: s }, !0);
|
|
7749
7754
|
return !(i != null && i.error);
|
|
7750
|
-
}, checkPendingHeatmapsUrl: () =>
|
|
7751
|
-
const e = (await
|
|
7752
|
-
return N.info("PendingHeatmapsToComplete", { count: e.length }), e.length && (await
|
|
7755
|
+
}, checkPendingHeatmapsUrl: () => He() ? N.debug("ReplayDisabled-PendingHeatmaps") : Ee(async () => {
|
|
7756
|
+
const e = (await se.getPendingCaptures({ isHeatmap: !0 })).map((t) => ({ eventId: t.captureParams.eventId, uuid: t.uuid })).filter(({ eventId: t }) => !pu(t)).map(({ uuid: t }) => t);
|
|
7757
|
+
return N.info("PendingHeatmapsToComplete", { count: e.length }), e.length && (await se.markPendingHeatmapsReady(e), N.info("MarkedPendingHeatmapsReady")), e.length;
|
|
7753
7758
|
}, "Error marking pending heatmaps ready"), clearUserReplayData: sd, disableRecording: br, initializeReplay: async ({ maxReplayDurationSeconds: e, maxInflightRequests: t = 2, replaySettings: r, teardownAfter: s = !1, apiUrl: n, alwaysOnConfig: i }) => {
|
|
7754
7759
|
if (i && Ag({ apiUrl: n, config: i, triggerSnapshot: () => {
|
|
7755
7760
|
Ei();
|
|
7756
7761
|
} }), ct = Q.getItem("sprig.pendingCount"), pe.isRecording) return;
|
|
7757
|
-
if (s && Q.setItem("sprig.teardownAfterCapture", "true"),
|
|
7762
|
+
if (s && Q.setItem("sprig.teardownAfterCapture", "true"), He()) return N.debug("ReplayDisabled");
|
|
7758
7763
|
if (await (async () => {
|
|
7759
7764
|
var l;
|
|
7760
7765
|
if (!zu()) return !0;
|
|
@@ -7767,10 +7772,10 @@ const Oi = async (e = !1) => {
|
|
|
7767
7772
|
return !1;
|
|
7768
7773
|
})()) return N.debug("IDBNotSupported"), ki();
|
|
7769
7774
|
try {
|
|
7770
|
-
const l = await
|
|
7775
|
+
const l = await se.openDB();
|
|
7771
7776
|
N.info("DBVersion", { version: l.version });
|
|
7772
7777
|
} catch (l) {
|
|
7773
|
-
return N.error("ReplayOpenErr", { name: l.name }), l.name === "VersionError" &&
|
|
7778
|
+
return N.error("ReplayOpenErr", { name: l.name }), l.name === "VersionError" && se.deleteDB(), ki();
|
|
7774
7779
|
}
|
|
7775
7780
|
Ee(async () => {
|
|
7776
7781
|
await Oi(!0);
|
|
@@ -7779,14 +7784,14 @@ const Oi = async (e = !1) => {
|
|
|
7779
7784
|
if (!o) return N.debug("MissingDuration");
|
|
7780
7785
|
N.debug("ReplayInit"), await Ee(async () => {
|
|
7781
7786
|
var l;
|
|
7782
|
-
r != null && r.minDuration && (Qu = r.minDuration), r != null && r.batchDuration && (xi = r.batchDuration), l = t, Au.setLimit(l),
|
|
7787
|
+
r != null && r.minDuration && (Qu = r.minDuration), r != null && r.batchDuration && (xi = r.batchDuration), l = t, Au.setLimit(l), Hg(), jg(o + 35, 1800, o + 35), Wg();
|
|
7783
7788
|
const c = window.UserLeap.replayLibraryURL ?? "https://cdn.sprig.com/dependencies/record.min.js", u = window.rrwebRecord;
|
|
7784
7789
|
if (!u) return N.error("RecordScriptFailed");
|
|
7785
7790
|
let d = !0, h = 0;
|
|
7786
7791
|
const f = { checkoutEveryNms: 3e4, sampling: { input: "last", scroll: 250, media: 800 }, ...r, mutationQueueEnabled: r == null ? void 0 : r.enableMutationQueue };
|
|
7787
7792
|
var w, p;
|
|
7788
7793
|
pe.stopRecording = u({ emit: (C, m) => {
|
|
7789
|
-
if (C.type === at.Custom && (Ti = Date.now()),
|
|
7794
|
+
if (C.type === at.Custom && (Ti = Date.now()), He() || As()) return;
|
|
7790
7795
|
if (m && C.type === at.Meta) h = performance.now();
|
|
7791
7796
|
else if (m && h && C.type === at.FullSnapshot) {
|
|
7792
7797
|
const v = performance.now() - h;
|
|
@@ -7810,8 +7815,8 @@ const Oi = async (e = !1) => {
|
|
|
7810
7815
|
Q.removeItem("sprig.isReplayPaused"), Ye("Sprig_ReplayResumed", { timestamp: Date.now() });
|
|
7811
7816
|
}, scheduleCapture: nd, scheduleOrCaptureReplay: rd, tryReplayAction: Ee, uploadReadyPendingCaptures: Oi }, Symbol.toStringTag, { value: "Module" }));
|
|
7812
7817
|
((e) => {
|
|
7813
|
-
|
|
7814
|
-
})(Yg), window.UpChunk = { createUpload:
|
|
7818
|
+
re.replay = e;
|
|
7819
|
+
})(Yg), window.UpChunk = { createUpload: Hd }, window.rrwebRecord = qt;
|
|
7815
7820
|
export {
|
|
7816
7821
|
Kg as A,
|
|
7817
7822
|
Af as C,
|
|
@@ -7820,7 +7825,7 @@ export {
|
|
|
7820
7825
|
B as S,
|
|
7821
7826
|
Xe as a,
|
|
7822
7827
|
N as b,
|
|
7823
|
-
|
|
7828
|
+
Hf as c,
|
|
7824
7829
|
Be as d,
|
|
7825
7830
|
z as e,
|
|
7826
7831
|
Ss as f,
|