@flashlog/tracker-sdk 0.1.4 → 0.1.5-hotfix.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/tracker.es.js +142 -124
- package/dist/tracker.umd.js +4 -4
- package/package.json +4 -11
package/dist/tracker.es.js
CHANGED
|
@@ -195,7 +195,7 @@ const yr = (t) => {
|
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
197
|
};
|
|
198
|
-
}, Er = () => typeof window < "u" && window.location ? window.location.href : "",
|
|
198
|
+
}, Er = () => typeof window < "u" && window.location ? window.location.href : "", _r = 120, Kt = (t, e = _r) => t.length > e ? t.slice(0, e) : t, ot = (t) => {
|
|
199
199
|
const e = t == null ? void 0 : t.trim();
|
|
200
200
|
if (e)
|
|
201
201
|
return Kt(Gt(e));
|
|
@@ -216,7 +216,7 @@ const yr = (t) => {
|
|
|
216
216
|
e.unshift(`${r.tagName.toLowerCase()}${n ? `.${n}` : ""}`), r = r.parentElement;
|
|
217
217
|
}
|
|
218
218
|
return e.join(" > ");
|
|
219
|
-
},
|
|
219
|
+
}, Tr = (t) => [
|
|
220
220
|
t.getAttribute("name"),
|
|
221
221
|
t.getAttribute("id"),
|
|
222
222
|
t.getAttribute("aria-label"),
|
|
@@ -224,7 +224,7 @@ const yr = (t) => {
|
|
|
224
224
|
t.getAttribute("autocomplete"),
|
|
225
225
|
t.getAttribute("type")
|
|
226
226
|
].filter(Boolean).join(" "), Nr = (t) => {
|
|
227
|
-
const e =
|
|
227
|
+
const e = Tr(t);
|
|
228
228
|
return (t.getAttribute("type") || "").toLowerCase() === "password" || Ne(e, Ue);
|
|
229
229
|
}, me = (t, e) => {
|
|
230
230
|
const r = t == null ? void 0 : t.trim();
|
|
@@ -689,18 +689,18 @@ const Wr = (t) => t.scriptUrl ? t.scriptUrl : "package:@flashlog/tracker-sdk", z
|
|
|
689
689
|
t.debug && console.warn("[FlashlogTracker] Installation ping error", n);
|
|
690
690
|
}
|
|
691
691
|
};
|
|
692
|
-
var
|
|
692
|
+
var x;
|
|
693
693
|
(function(t) {
|
|
694
694
|
t[t.Document = 0] = "Document", t[t.DocumentType = 1] = "DocumentType", t[t.Element = 2] = "Element", t[t.Text = 3] = "Text", t[t.CDATA = 4] = "CDATA", t[t.Comment = 5] = "Comment";
|
|
695
|
-
})(
|
|
695
|
+
})(x || (x = {}));
|
|
696
696
|
function Gr(t) {
|
|
697
697
|
return t.nodeType === t.ELEMENT_NODE;
|
|
698
698
|
}
|
|
699
|
-
function
|
|
699
|
+
function _e(t) {
|
|
700
700
|
var e = t == null ? void 0 : t.host;
|
|
701
701
|
return (e == null ? void 0 : e.shadowRoot) === t;
|
|
702
702
|
}
|
|
703
|
-
function
|
|
703
|
+
function Te(t) {
|
|
704
704
|
return Object.prototype.toString.call(t) === "[object ShadowRoot]";
|
|
705
705
|
}
|
|
706
706
|
function Kr(t) {
|
|
@@ -954,16 +954,16 @@ function cn(t, e) {
|
|
|
954
954
|
switch (t.nodeType) {
|
|
955
955
|
case t.DOCUMENT_NODE:
|
|
956
956
|
return t.compatMode !== "CSS1Compat" ? {
|
|
957
|
-
type:
|
|
957
|
+
type: x.Document,
|
|
958
958
|
childNodes: [],
|
|
959
959
|
compatMode: t.compatMode
|
|
960
960
|
} : {
|
|
961
|
-
type:
|
|
961
|
+
type: x.Document,
|
|
962
962
|
childNodes: []
|
|
963
963
|
};
|
|
964
964
|
case t.DOCUMENT_TYPE_NODE:
|
|
965
965
|
return {
|
|
966
|
-
type:
|
|
966
|
+
type: x.DocumentType,
|
|
967
967
|
name: t.name,
|
|
968
968
|
publicId: t.publicId,
|
|
969
969
|
systemId: t.systemId,
|
|
@@ -993,13 +993,13 @@ function cn(t, e) {
|
|
|
993
993
|
});
|
|
994
994
|
case t.CDATA_SECTION_NODE:
|
|
995
995
|
return {
|
|
996
|
-
type:
|
|
996
|
+
type: x.CDATA,
|
|
997
997
|
textContent: "",
|
|
998
998
|
rootId: A
|
|
999
999
|
};
|
|
1000
1000
|
case t.COMMENT_NODE:
|
|
1001
1001
|
return {
|
|
1002
|
-
type:
|
|
1002
|
+
type: x.Comment,
|
|
1003
1003
|
textContent: t.textContent || "",
|
|
1004
1004
|
rootId: A
|
|
1005
1005
|
};
|
|
@@ -1024,7 +1024,7 @@ function ln(t, e) {
|
|
|
1024
1024
|
a = Ke(a, ct());
|
|
1025
1025
|
}
|
|
1026
1026
|
return l && (a = "SCRIPT_PLACEHOLDER"), !d && !l && a && jt(t, n, s) && (a = i ? i(a) : a.replace(/[\S]/g, "*")), {
|
|
1027
|
-
type:
|
|
1027
|
+
type: x.Text,
|
|
1028
1028
|
textContent: a || "",
|
|
1029
1029
|
isStyle: d,
|
|
1030
1030
|
rootId: o
|
|
@@ -1032,14 +1032,14 @@ function ln(t, e) {
|
|
|
1032
1032
|
}
|
|
1033
1033
|
function un(t, e) {
|
|
1034
1034
|
for (var r = e.doc, n = e.blockClass, s = e.blockSelector, i = e.inlineStylesheet, o = e.maskInputOptions, c = o === void 0 ? {} : o, a = e.maskInputFn, d = e.dataURLOptions, l = d === void 0 ? {} : d, u = e.inlineImages, p = e.recordCanvas, f = e.keepIframeSrcFn, h = e.newlyAddedElement, y = h === void 0 ? !1 : h, S = e.rootId, C = sn(t, n, s), m = Jr(t), g = {}, A = t.attributes.length, U = 0; U < A; U++) {
|
|
1035
|
-
var
|
|
1036
|
-
g[
|
|
1035
|
+
var D = t.attributes[U];
|
|
1036
|
+
g[D.name] = Ht(r, m, D.name, D.value);
|
|
1037
1037
|
}
|
|
1038
1038
|
if (m === "link" && i) {
|
|
1039
|
-
var
|
|
1039
|
+
var B = Array.from(r.styleSheets).find(function(q) {
|
|
1040
1040
|
return q.href === t.href;
|
|
1041
1041
|
}), R = null;
|
|
1042
|
-
|
|
1042
|
+
B && (R = rt(B)), R && (delete g.rel, delete g.href, g._cssText = Ke(R, B.href));
|
|
1043
1043
|
}
|
|
1044
1044
|
if (m === "style" && t.sheet && !(t.innerText || t.textContent || "").trim().length) {
|
|
1045
1045
|
var R = rt(t.sheet);
|
|
@@ -1088,7 +1088,7 @@ function un(t, e) {
|
|
|
1088
1088
|
};
|
|
1089
1089
|
}
|
|
1090
1090
|
return m === "iframe" && !f(g.src) && (t.contentDocument || (g.rr_src = g.src), delete g.src), {
|
|
1091
|
-
type:
|
|
1091
|
+
type: x.Element,
|
|
1092
1092
|
tagName: m,
|
|
1093
1093
|
attributes: g,
|
|
1094
1094
|
childNodes: [],
|
|
@@ -1101,9 +1101,9 @@ function E(t) {
|
|
|
1101
1101
|
return t === void 0 ? "" : t.toLowerCase();
|
|
1102
1102
|
}
|
|
1103
1103
|
function hn(t, e) {
|
|
1104
|
-
if (e.comment && t.type ===
|
|
1104
|
+
if (e.comment && t.type === x.Comment)
|
|
1105
1105
|
return !0;
|
|
1106
|
-
if (t.type ===
|
|
1106
|
+
if (t.type === x.Element) {
|
|
1107
1107
|
if (e.script && (t.tagName === "script" || t.tagName === "link" && t.attributes.rel === "preload" && t.attributes.as === "script" || t.tagName === "link" && t.attributes.rel === "prefetch" && typeof t.attributes.href == "string" && t.attributes.href.endsWith(".js")))
|
|
1108
1108
|
return !0;
|
|
1109
1109
|
if (e.headFavicon && (t.tagName === "link" && t.attributes.rel === "shortcut icon" || t.tagName === "meta" && (E(t.attributes.name).match(/^msapplication-tile(image|color)$/) || E(t.attributes.name) === "application-name" || E(t.attributes.rel) === "icon" || E(t.attributes.rel) === "apple-touch-icon" || E(t.attributes.rel) === "shortcut icon")))
|
|
@@ -1126,7 +1126,7 @@ function hn(t, e) {
|
|
|
1126
1126
|
return !1;
|
|
1127
1127
|
}
|
|
1128
1128
|
function be(t, e) {
|
|
1129
|
-
var r = e.doc, n = e.mirror, s = e.blockClass, i = e.blockSelector, o = e.maskTextClass, c = e.maskTextSelector, a = e.skipChild, d = a === void 0 ? !1 : a, l = e.inlineStylesheet, u = l === void 0 ? !0 : l, p = e.maskInputOptions, f = p === void 0 ? {} : p, h = e.maskTextFn, y = e.maskInputFn, S = e.slimDOMOptions, C = e.dataURLOptions, m = C === void 0 ? {} : C, g = e.inlineImages, A = g === void 0 ? !1 : g, U = e.recordCanvas,
|
|
1129
|
+
var r = e.doc, n = e.mirror, s = e.blockClass, i = e.blockSelector, o = e.maskTextClass, c = e.maskTextSelector, a = e.skipChild, d = a === void 0 ? !1 : a, l = e.inlineStylesheet, u = l === void 0 ? !0 : l, p = e.maskInputOptions, f = p === void 0 ? {} : p, h = e.maskTextFn, y = e.maskInputFn, S = e.slimDOMOptions, C = e.dataURLOptions, m = C === void 0 ? {} : C, g = e.inlineImages, A = g === void 0 ? !1 : g, U = e.recordCanvas, D = U === void 0 ? !1 : U, B = e.onSerialize, R = e.onIframeLoad, H = e.iframeLoadTimeout, j = H === void 0 ? 5e3 : H, X = e.onStylesheetLoad, Q = e.stylesheetLoadTimeout, $ = Q === void 0 ? 5e3 : Q, O = e.keepIframeSrcFn, J = O === void 0 ? function() {
|
|
1130
1130
|
return !1;
|
|
1131
1131
|
} : O, ee = e.newlyAddedElement, ne = ee === void 0 ? !1 : ee, ie = e.preserveWhiteSpace, V = ie === void 0 ? !0 : ie, q = cn(t, {
|
|
1132
1132
|
doc: r,
|
|
@@ -1141,26 +1141,26 @@ function be(t, e) {
|
|
|
1141
1141
|
maskInputFn: y,
|
|
1142
1142
|
dataURLOptions: m,
|
|
1143
1143
|
inlineImages: A,
|
|
1144
|
-
recordCanvas:
|
|
1144
|
+
recordCanvas: D,
|
|
1145
1145
|
keepIframeSrcFn: J,
|
|
1146
1146
|
newlyAddedElement: ne
|
|
1147
1147
|
});
|
|
1148
1148
|
if (!q)
|
|
1149
1149
|
return console.warn(t, "not serialized"), null;
|
|
1150
1150
|
var oe;
|
|
1151
|
-
n.hasNode(t) ? oe = n.getId(t) : hn(q, S) || !V && q.type ===
|
|
1151
|
+
n.hasNode(t) ? oe = n.getId(t) : hn(q, S) || !V && q.type === x.Text && !q.isStyle && !q.textContent.replace(/^\s+|\s+$/gm, "").length ? oe = Me : oe = Zt();
|
|
1152
1152
|
var N = Object.assign(q, { id: oe });
|
|
1153
1153
|
if (n.add(t, N), oe === Me)
|
|
1154
1154
|
return null;
|
|
1155
|
-
|
|
1155
|
+
B && B(t);
|
|
1156
1156
|
var te = !d;
|
|
1157
|
-
if (N.type ===
|
|
1157
|
+
if (N.type === x.Element) {
|
|
1158
1158
|
te = te && !N.needBlock, delete N.needBlock;
|
|
1159
1159
|
var se = t.shadowRoot;
|
|
1160
|
-
se &&
|
|
1160
|
+
se && Te(se) && (N.isShadowHost = !0);
|
|
1161
1161
|
}
|
|
1162
|
-
if ((N.type ===
|
|
1163
|
-
S.headWhitespace && N.type ===
|
|
1162
|
+
if ((N.type === x.Document || N.type === x.Element) && te) {
|
|
1163
|
+
S.headWhitespace && N.type === x.Element && N.tagName === "head" && (V = !1);
|
|
1164
1164
|
for (var fe = {
|
|
1165
1165
|
doc: r,
|
|
1166
1166
|
mirror: n,
|
|
@@ -1176,25 +1176,25 @@ function be(t, e) {
|
|
|
1176
1176
|
slimDOMOptions: S,
|
|
1177
1177
|
dataURLOptions: m,
|
|
1178
1178
|
inlineImages: A,
|
|
1179
|
-
recordCanvas:
|
|
1179
|
+
recordCanvas: D,
|
|
1180
1180
|
preserveWhiteSpace: V,
|
|
1181
|
-
onSerialize:
|
|
1181
|
+
onSerialize: B,
|
|
1182
1182
|
onIframeLoad: R,
|
|
1183
1183
|
iframeLoadTimeout: j,
|
|
1184
1184
|
onStylesheetLoad: X,
|
|
1185
1185
|
stylesheetLoadTimeout: $,
|
|
1186
1186
|
keepIframeSrcFn: J
|
|
1187
1187
|
}, I = 0, W = Array.from(t.childNodes); I < W.length; I++) {
|
|
1188
|
-
var P = W[I],
|
|
1189
|
-
|
|
1188
|
+
var P = W[I], _ = be(P, fe);
|
|
1189
|
+
_ && N.childNodes.push(_);
|
|
1190
1190
|
}
|
|
1191
1191
|
if (Gr(t) && t.shadowRoot)
|
|
1192
1192
|
for (var Y = 0, w = Array.from(t.shadowRoot.childNodes); Y < w.length; Y++) {
|
|
1193
|
-
var P = w[Y],
|
|
1194
|
-
|
|
1193
|
+
var P = w[Y], _ = be(P, fe);
|
|
1194
|
+
_ && (Te(t.shadowRoot) && (_.isShadow = !0), N.childNodes.push(_));
|
|
1195
1195
|
}
|
|
1196
1196
|
}
|
|
1197
|
-
return t.parentNode &&
|
|
1197
|
+
return t.parentNode && _e(t.parentNode) && Te(t.parentNode) && (N.isShadow = !0), N.type === x.Element && N.tagName === "iframe" && on(t, function() {
|
|
1198
1198
|
var Z = t.contentDocument;
|
|
1199
1199
|
if (Z && R) {
|
|
1200
1200
|
var Re = be(Z, {
|
|
@@ -1212,9 +1212,9 @@ function be(t, e) {
|
|
|
1212
1212
|
slimDOMOptions: S,
|
|
1213
1213
|
dataURLOptions: m,
|
|
1214
1214
|
inlineImages: A,
|
|
1215
|
-
recordCanvas:
|
|
1215
|
+
recordCanvas: D,
|
|
1216
1216
|
preserveWhiteSpace: V,
|
|
1217
|
-
onSerialize:
|
|
1217
|
+
onSerialize: B,
|
|
1218
1218
|
onIframeLoad: R,
|
|
1219
1219
|
iframeLoadTimeout: j,
|
|
1220
1220
|
onStylesheetLoad: X,
|
|
@@ -1223,7 +1223,7 @@ function be(t, e) {
|
|
|
1223
1223
|
});
|
|
1224
1224
|
Re && R(t, Re);
|
|
1225
1225
|
}
|
|
1226
|
-
}, j), N.type ===
|
|
1226
|
+
}, j), N.type === x.Element && N.tagName === "link" && N.attributes.rel === "stylesheet" && an(t, function() {
|
|
1227
1227
|
if (X) {
|
|
1228
1228
|
var Z = be(t, {
|
|
1229
1229
|
doc: r,
|
|
@@ -1240,9 +1240,9 @@ function be(t, e) {
|
|
|
1240
1240
|
slimDOMOptions: S,
|
|
1241
1241
|
dataURLOptions: m,
|
|
1242
1242
|
inlineImages: A,
|
|
1243
|
-
recordCanvas:
|
|
1243
|
+
recordCanvas: D,
|
|
1244
1244
|
preserveWhiteSpace: V,
|
|
1245
|
-
onSerialize:
|
|
1245
|
+
onSerialize: B,
|
|
1246
1246
|
onIframeLoad: R,
|
|
1247
1247
|
iframeLoadTimeout: j,
|
|
1248
1248
|
onStylesheetLoad: X,
|
|
@@ -1254,7 +1254,7 @@ function be(t, e) {
|
|
|
1254
1254
|
}, $), N;
|
|
1255
1255
|
}
|
|
1256
1256
|
function pn(t, e) {
|
|
1257
|
-
var r = e || {}, n = r.mirror, s = n === void 0 ? new Pt() : n, i = r.blockClass, o = i === void 0 ? "rr-block" : i, c = r.blockSelector, a = c === void 0 ? null : c, d = r.maskTextClass, l = d === void 0 ? "rr-mask" : d, u = r.maskTextSelector, p = u === void 0 ? null : u, f = r.inlineStylesheet, h = f === void 0 ? !0 : f, y = r.inlineImages, S = y === void 0 ? !1 : y, C = r.recordCanvas, m = C === void 0 ? !1 : C, g = r.maskAllInputs, A = g === void 0 ? !1 : g, U = r.maskTextFn,
|
|
1257
|
+
var r = e || {}, n = r.mirror, s = n === void 0 ? new Pt() : n, i = r.blockClass, o = i === void 0 ? "rr-block" : i, c = r.blockSelector, a = c === void 0 ? null : c, d = r.maskTextClass, l = d === void 0 ? "rr-mask" : d, u = r.maskTextSelector, p = u === void 0 ? null : u, f = r.inlineStylesheet, h = f === void 0 ? !0 : f, y = r.inlineImages, S = y === void 0 ? !1 : y, C = r.recordCanvas, m = C === void 0 ? !1 : C, g = r.maskAllInputs, A = g === void 0 ? !1 : g, U = r.maskTextFn, D = r.maskInputFn, B = r.slimDOM, R = B === void 0 ? !1 : B, H = r.dataURLOptions, j = r.preserveWhiteSpace, X = r.onSerialize, Q = r.onIframeLoad, $ = r.iframeLoadTimeout, O = r.onStylesheetLoad, J = r.stylesheetLoadTimeout, ee = r.keepIframeSrcFn, ne = ee === void 0 ? function() {
|
|
1258
1258
|
return !1;
|
|
1259
1259
|
} : ee, ie = A === !0 ? {
|
|
1260
1260
|
color: !0,
|
|
@@ -1298,7 +1298,7 @@ function pn(t, e) {
|
|
|
1298
1298
|
inlineStylesheet: h,
|
|
1299
1299
|
maskInputOptions: ie,
|
|
1300
1300
|
maskTextFn: U,
|
|
1301
|
-
maskInputFn:
|
|
1301
|
+
maskInputFn: D,
|
|
1302
1302
|
slimDOMOptions: V,
|
|
1303
1303
|
dataURLOptions: H,
|
|
1304
1304
|
inlineImages: S,
|
|
@@ -1409,7 +1409,7 @@ function qe(t, e) {
|
|
|
1409
1409
|
return e.getId(t) === Me;
|
|
1410
1410
|
}
|
|
1411
1411
|
function Yt(t, e) {
|
|
1412
|
-
if (
|
|
1412
|
+
if (_e(t))
|
|
1413
1413
|
return !1;
|
|
1414
1414
|
const r = e.getId(t);
|
|
1415
1415
|
return e.has(r) ? t.parentNode && t.parentNode.nodeType === t.DOCUMENT_NODE ? !1 : t.parentNode ? Yt(t.parentNode, e) : !0 : !0;
|
|
@@ -1525,7 +1525,7 @@ class In {
|
|
|
1525
1525
|
const h = !this.doc.contains(c) && (!f || !this.doc.contains(f));
|
|
1526
1526
|
if (!c.parentNode || h)
|
|
1527
1527
|
return;
|
|
1528
|
-
const y =
|
|
1528
|
+
const y = _e(c.parentNode) ? this.mirror.getId(p) : this.mirror.getId(c.parentNode), S = n(c);
|
|
1529
1529
|
if (y === -1 || S === -1)
|
|
1530
1530
|
return r.addNode(c);
|
|
1531
1531
|
const C = be(c, {
|
|
@@ -1665,11 +1665,11 @@ class In {
|
|
|
1665
1665
|
if (K(e.target, this.blockClass, this.blockSelector, !0))
|
|
1666
1666
|
return;
|
|
1667
1667
|
e.addedNodes.forEach((r) => this.genAdds(r, e.target)), e.removedNodes.forEach((r) => {
|
|
1668
|
-
const n = this.mirror.getId(r), s =
|
|
1668
|
+
const n = this.mirror.getId(r), s = _e(e.target) ? this.mirror.getId(e.target.host) : this.mirror.getId(e.target);
|
|
1669
1669
|
K(e.target, this.blockClass, this.blockSelector, !1) || qe(r, this.mirror) || !fn(r, this.mirror) || (this.addedSet.has(r) ? (st(this.addedSet, r), this.droppedSet.add(r)) : this.addedSet.has(e.target) && n === -1 || Yt(e.target, this.mirror) || (this.movedSet.has(r) && this.movedMap[vt(n, s)] ? st(this.movedSet, r) : this.removes.push({
|
|
1670
1670
|
parentId: s,
|
|
1671
1671
|
id: n,
|
|
1672
|
-
isShadow:
|
|
1672
|
+
isShadow: _e(e.target) && Te(e.target) ? !0 : void 0
|
|
1673
1673
|
})), this.mapRemoves.push(r));
|
|
1674
1674
|
});
|
|
1675
1675
|
break;
|
|
@@ -1884,19 +1884,19 @@ function wn({ inputCb: t, doc: e, mirror: r, blockClass: n, blockSelector: s, ig
|
|
|
1884
1884
|
const A = m.type;
|
|
1885
1885
|
if (m.classList.contains(i))
|
|
1886
1886
|
return;
|
|
1887
|
-
let U = m.value,
|
|
1888
|
-
A === "radio" || A === "checkbox" ?
|
|
1887
|
+
let U = m.value, D = !1;
|
|
1888
|
+
A === "radio" || A === "checkbox" ? D = m.checked : (o[m.tagName.toLowerCase()] || o[A]) && (U = at({
|
|
1889
1889
|
maskInputOptions: o,
|
|
1890
1890
|
tagName: m.tagName,
|
|
1891
1891
|
type: A,
|
|
1892
1892
|
value: U,
|
|
1893
1893
|
maskInputFn: c
|
|
1894
|
-
})), u(m, kt({ text: U, isChecked:
|
|
1895
|
-
const
|
|
1896
|
-
A === "radio" &&
|
|
1894
|
+
})), u(m, kt({ text: U, isChecked: D, userTriggered: g }, d));
|
|
1895
|
+
const B = m.name;
|
|
1896
|
+
A === "radio" && B && D && e.querySelectorAll(`input[type="radio"][name="${B}"]`).forEach((R) => {
|
|
1897
1897
|
R !== m && u(R, kt({
|
|
1898
1898
|
text: R.value,
|
|
1899
|
-
isChecked: !
|
|
1899
|
+
isChecked: !D,
|
|
1900
1900
|
userTriggered: !1
|
|
1901
1901
|
}, d));
|
|
1902
1902
|
});
|
|
@@ -2148,7 +2148,7 @@ function En({ fontCb: t, doc: e }) {
|
|
|
2148
2148
|
n.forEach((c) => c());
|
|
2149
2149
|
};
|
|
2150
2150
|
}
|
|
2151
|
-
function
|
|
2151
|
+
function _n(t) {
|
|
2152
2152
|
const { doc: e, mirror: r, blockClass: n, blockSelector: s, selectionCb: i } = t;
|
|
2153
2153
|
let o = !0;
|
|
2154
2154
|
const c = () => {
|
|
@@ -2170,7 +2170,7 @@ function Tn(t) {
|
|
|
2170
2170
|
};
|
|
2171
2171
|
return c(), G("selectionchange", c);
|
|
2172
2172
|
}
|
|
2173
|
-
function
|
|
2173
|
+
function Tn(t, e) {
|
|
2174
2174
|
const { mutationCb: r, mousemoveCb: n, mouseInteractionCb: s, scrollCb: i, viewportResizeCb: o, inputCb: c, mediaInteractionCb: a, styleSheetRuleCb: d, styleDeclarationCb: l, canvasMutationCb: u, fontCb: p, selectionCb: f } = t;
|
|
2175
2175
|
t.mutationCb = (...h) => {
|
|
2176
2176
|
e.mutation && e.mutation(...h), r(...h);
|
|
@@ -2203,11 +2203,11 @@ function Nn(t, e = {}) {
|
|
|
2203
2203
|
if (!r)
|
|
2204
2204
|
return () => {
|
|
2205
2205
|
};
|
|
2206
|
-
|
|
2206
|
+
Tn(t, e);
|
|
2207
2207
|
const n = ar(t, t.doc), s = Cn(t), i = Sn(t), o = cr(t), c = bn(t), a = wn(t), d = Rn(t), l = An(t, { win: r }), u = dr(t, t.doc), p = kn(t, {
|
|
2208
2208
|
win: r
|
|
2209
2209
|
}), f = t.collectFonts ? En(t) : () => {
|
|
2210
|
-
}, h =
|
|
2210
|
+
}, h = _n(t), y = [];
|
|
2211
2211
|
for (const S of t.plugins)
|
|
2212
2212
|
y.push(S.observer(S.callback, r, S.options));
|
|
2213
2213
|
return () => {
|
|
@@ -2396,7 +2396,7 @@ class On {
|
|
|
2396
2396
|
}));
|
|
2397
2397
|
}
|
|
2398
2398
|
addShadowRoot(e, r) {
|
|
2399
|
-
|
|
2399
|
+
Te(e) && (this.shadowDoms.has(e) || (this.shadowDoms.add(e), ar(Object.assign(Object.assign({}, this.bypassOptions), { doc: r, mutationCb: this.mutationCb, mirror: this.mirror, shadowDomManager: this }), e), cr(Object.assign(Object.assign({}, this.bypassOptions), { scrollCb: this.scrollCb, doc: e, mirror: this.mirror })), setTimeout(() => {
|
|
2400
2400
|
e.adoptedStyleSheets && e.adoptedStyleSheets.length > 0 && this.bypassOptions.stylesheetManager.adoptStyleSheets(e.adoptedStyleSheets, this.mirror.getId(e.host)), dr({
|
|
2401
2401
|
mirror: this.mirror,
|
|
2402
2402
|
stylesheetManager: this.bypassOptions.stylesheetManager
|
|
@@ -2476,10 +2476,10 @@ var Dn = function(t) {
|
|
|
2476
2476
|
s += ve[e[r] >> 2], s += ve[(e[r] & 3) << 4 | e[r + 1] >> 4], s += ve[(e[r + 1] & 15) << 2 | e[r + 2] >> 6], s += ve[e[r + 2] & 63];
|
|
2477
2477
|
return n % 3 === 2 ? s = s.substring(0, s.length - 1) + "=" : n % 3 === 1 && (s = s.substring(0, s.length - 2) + "=="), s;
|
|
2478
2478
|
};
|
|
2479
|
-
const
|
|
2479
|
+
const _t = /* @__PURE__ */ new Map();
|
|
2480
2480
|
function Bn(t, e) {
|
|
2481
|
-
let r =
|
|
2482
|
-
return r || (r = /* @__PURE__ */ new Map(),
|
|
2481
|
+
let r = _t.get(t);
|
|
2482
|
+
return r || (r = /* @__PURE__ */ new Map(), _t.set(t, r)), r.has(e) || r.set(e, []), r.get(e);
|
|
2483
2483
|
}
|
|
2484
2484
|
const lr = (t, e, r) => {
|
|
2485
2485
|
if (!t || !(hr(t, e) || typeof t == "object"))
|
|
@@ -2592,7 +2592,7 @@ function Un(t, e, r, n) {
|
|
|
2592
2592
|
s.forEach((o) => o());
|
|
2593
2593
|
};
|
|
2594
2594
|
}
|
|
2595
|
-
function
|
|
2595
|
+
function Tt(t, e, r) {
|
|
2596
2596
|
const n = [];
|
|
2597
2597
|
try {
|
|
2598
2598
|
const s = he(t.HTMLCanvasElement.prototype, "getContext", function(i) {
|
|
@@ -2721,7 +2721,7 @@ class Yn {
|
|
|
2721
2721
|
this.locked = !1;
|
|
2722
2722
|
}
|
|
2723
2723
|
initCanvasFPSObserver(e, r, n, s, i) {
|
|
2724
|
-
const o =
|
|
2724
|
+
const o = Tt(r, n, s), c = /* @__PURE__ */ new Map(), a = new qn();
|
|
2725
2725
|
a.onmessage = (h) => {
|
|
2726
2726
|
const { id: y } = h.data;
|
|
2727
2727
|
if (c.set(y, !1), !("base64" in h.data))
|
|
@@ -2792,7 +2792,7 @@ class Yn {
|
|
|
2792
2792
|
}
|
|
2793
2793
|
initCanvasMutationObserver(e, r, n) {
|
|
2794
2794
|
this.startRAFTimestamping(), this.startPendingCanvasMutationFlusher();
|
|
2795
|
-
const s =
|
|
2795
|
+
const s = Tt(e, r, n), i = Un(this.processMutation.bind(this), e, r, n), o = Wn(this.processMutation.bind(this), e, r, n, this.mirror);
|
|
2796
2796
|
this.resetObservers = () => {
|
|
2797
2797
|
s(), i(), o();
|
|
2798
2798
|
};
|
|
@@ -2874,13 +2874,13 @@ class Xn {
|
|
|
2874
2874
|
trackStylesheetInLinkElement(e) {
|
|
2875
2875
|
}
|
|
2876
2876
|
}
|
|
2877
|
-
function
|
|
2877
|
+
function F(t) {
|
|
2878
2878
|
return Object.assign(Object.assign({}, t), { timestamp: Date.now() });
|
|
2879
2879
|
}
|
|
2880
|
-
let
|
|
2880
|
+
let T, De, Ye, Ze = !1;
|
|
2881
2881
|
const re = Pr();
|
|
2882
2882
|
function ke(t = {}) {
|
|
2883
|
-
const { emit: e, checkoutEveryNms: r, checkoutEveryNth: n, blockClass: s = "rr-block", blockSelector: i = null, ignoreClass: o = "rr-ignore", maskTextClass: c = "rr-mask", maskTextSelector: a = null, inlineStylesheet: d = !0, maskAllInputs: l, maskInputOptions: u, slimDOMOptions: p, maskInputFn: f, maskTextFn: h, hooks: y, packFn: S, sampling: C = {}, dataURLOptions: m = {}, mousemoveWait: g, recordCanvas: A = !1, recordCrossOriginIframes: U = !1, userTriggeredOnInput:
|
|
2883
|
+
const { emit: e, checkoutEveryNms: r, checkoutEveryNth: n, blockClass: s = "rr-block", blockSelector: i = null, ignoreClass: o = "rr-ignore", maskTextClass: c = "rr-mask", maskTextSelector: a = null, inlineStylesheet: d = !0, maskAllInputs: l, maskInputOptions: u, slimDOMOptions: p, maskInputFn: f, maskTextFn: h, hooks: y, packFn: S, sampling: C = {}, dataURLOptions: m = {}, mousemoveWait: g, recordCanvas: A = !1, recordCrossOriginIframes: U = !1, userTriggeredOnInput: D = !1, collectFonts: B = !1, inlineImages: R = !1, plugins: H, keepIframeSrcFn: j = () => !1, ignoreCSSAttributes: X = /* @__PURE__ */ new Set([]) } = t, Q = U ? window.parent === window : !0;
|
|
2884
2884
|
let $ = !1;
|
|
2885
2885
|
if (!Q)
|
|
2886
2886
|
try {
|
|
@@ -2927,17 +2927,17 @@ function ke(t = {}) {
|
|
|
2927
2927
|
W.eventProcessor && (I = W.eventProcessor(I));
|
|
2928
2928
|
return S && (I = S(I)), I;
|
|
2929
2929
|
};
|
|
2930
|
-
|
|
2930
|
+
T = (I, W) => {
|
|
2931
2931
|
var P;
|
|
2932
|
-
if (!((P = le[0]) === null || P === void 0) && P.isFrozen() && I.type !== v.FullSnapshot && !(I.type === v.IncrementalSnapshot && I.data.source === b.Mutation) && le.forEach((
|
|
2932
|
+
if (!((P = le[0]) === null || P === void 0) && P.isFrozen() && I.type !== v.FullSnapshot && !(I.type === v.IncrementalSnapshot && I.data.source === b.Mutation) && le.forEach((_) => _.unfreeze()), Q)
|
|
2933
2933
|
e == null || e(ie(I), W);
|
|
2934
2934
|
else if ($) {
|
|
2935
|
-
const
|
|
2935
|
+
const _ = {
|
|
2936
2936
|
type: "rrweb",
|
|
2937
2937
|
event: ie(I),
|
|
2938
2938
|
isCheckout: W
|
|
2939
2939
|
};
|
|
2940
|
-
window.parent.postMessage(
|
|
2940
|
+
window.parent.postMessage(_, "*");
|
|
2941
2941
|
}
|
|
2942
2942
|
if (I.type === v.FullSnapshot)
|
|
2943
2943
|
ee = I, ne = 0;
|
|
@@ -2945,22 +2945,22 @@ function ke(t = {}) {
|
|
|
2945
2945
|
if (I.data.source === b.Mutation && I.data.isAttachIframe)
|
|
2946
2946
|
return;
|
|
2947
2947
|
ne++;
|
|
2948
|
-
const
|
|
2949
|
-
(
|
|
2948
|
+
const _ = n && ne >= n, Y = r && I.timestamp - ee.timestamp > r;
|
|
2949
|
+
(_ || Y) && De(!0);
|
|
2950
2950
|
}
|
|
2951
2951
|
};
|
|
2952
2952
|
const V = (I) => {
|
|
2953
|
-
|
|
2953
|
+
T(F({
|
|
2954
2954
|
type: v.IncrementalSnapshot,
|
|
2955
2955
|
data: Object.assign({ source: b.Mutation }, I)
|
|
2956
2956
|
}));
|
|
2957
|
-
}, q = (I) =>
|
|
2957
|
+
}, q = (I) => T(F({
|
|
2958
2958
|
type: v.IncrementalSnapshot,
|
|
2959
2959
|
data: Object.assign({ source: b.Scroll }, I)
|
|
2960
|
-
})), oe = (I) =>
|
|
2960
|
+
})), oe = (I) => T(F({
|
|
2961
2961
|
type: v.IncrementalSnapshot,
|
|
2962
2962
|
data: Object.assign({ source: b.CanvasMutation }, I)
|
|
2963
|
-
})), N = (I) =>
|
|
2963
|
+
})), N = (I) => T(F({
|
|
2964
2964
|
type: v.IncrementalSnapshot,
|
|
2965
2965
|
data: Object.assign({ source: b.AdoptedStyleSheet }, I)
|
|
2966
2966
|
})), te = new Xn({
|
|
@@ -2971,7 +2971,7 @@ function ke(t = {}) {
|
|
|
2971
2971
|
mutationCb: V,
|
|
2972
2972
|
stylesheetManager: te,
|
|
2973
2973
|
recordCrossOriginIframes: U,
|
|
2974
|
-
wrappedEmit:
|
|
2974
|
+
wrappedEmit: T
|
|
2975
2975
|
});
|
|
2976
2976
|
for (const I of H || [])
|
|
2977
2977
|
I.getMirror && I.getMirror({
|
|
@@ -3014,8 +3014,8 @@ function ke(t = {}) {
|
|
|
3014
3014
|
mirror: re
|
|
3015
3015
|
});
|
|
3016
3016
|
De = (I = !1) => {
|
|
3017
|
-
var W, P,
|
|
3018
|
-
|
|
3017
|
+
var W, P, _, Y, w, Z;
|
|
3018
|
+
T(F({
|
|
3019
3019
|
type: v.Meta,
|
|
3020
3020
|
data: {
|
|
3021
3021
|
href: window.location.href,
|
|
@@ -3049,12 +3049,12 @@ function ke(t = {}) {
|
|
|
3049
3049
|
});
|
|
3050
3050
|
if (!Re)
|
|
3051
3051
|
return console.warn("Failed to snapshot the document");
|
|
3052
|
-
|
|
3052
|
+
T(F({
|
|
3053
3053
|
type: v.FullSnapshot,
|
|
3054
3054
|
data: {
|
|
3055
3055
|
node: Re,
|
|
3056
3056
|
initialOffset: {
|
|
3057
|
-
left: window.pageXOffset !== void 0 ? window.pageXOffset : (document == null ? void 0 : document.documentElement.scrollLeft) || ((P = (W = document == null ? void 0 : document.body) === null || W === void 0 ? void 0 : W.parentElement) === null || P === void 0 ? void 0 : P.scrollLeft) || ((
|
|
3057
|
+
left: window.pageXOffset !== void 0 ? window.pageXOffset : (document == null ? void 0 : document.documentElement.scrollLeft) || ((P = (W = document == null ? void 0 : document.body) === null || W === void 0 ? void 0 : W.parentElement) === null || P === void 0 ? void 0 : P.scrollLeft) || ((_ = document == null ? void 0 : document.body) === null || _ === void 0 ? void 0 : _.scrollLeft) || 0,
|
|
3058
3058
|
top: window.pageYOffset !== void 0 ? window.pageYOffset : (document == null ? void 0 : document.documentElement.scrollTop) || ((w = (Y = document == null ? void 0 : document.body) === null || Y === void 0 ? void 0 : Y.parentElement) === null || w === void 0 ? void 0 : w.scrollTop) || ((Z = document == null ? void 0 : document.body) === null || Z === void 0 ? void 0 : Z.scrollTop) || 0
|
|
3059
3059
|
}
|
|
3060
3060
|
}
|
|
@@ -3063,54 +3063,54 @@ function ke(t = {}) {
|
|
|
3063
3063
|
try {
|
|
3064
3064
|
const I = [];
|
|
3065
3065
|
I.push(G("DOMContentLoaded", () => {
|
|
3066
|
-
|
|
3066
|
+
T(F({
|
|
3067
3067
|
type: v.DomContentLoaded,
|
|
3068
3068
|
data: {}
|
|
3069
3069
|
}));
|
|
3070
3070
|
}));
|
|
3071
|
-
const W = (
|
|
3071
|
+
const W = (_) => {
|
|
3072
3072
|
var Y;
|
|
3073
3073
|
return Nn({
|
|
3074
3074
|
mutationCb: V,
|
|
3075
|
-
mousemoveCb: (w, Z) =>
|
|
3075
|
+
mousemoveCb: (w, Z) => T(F({
|
|
3076
3076
|
type: v.IncrementalSnapshot,
|
|
3077
3077
|
data: {
|
|
3078
3078
|
source: Z,
|
|
3079
3079
|
positions: w
|
|
3080
3080
|
}
|
|
3081
3081
|
})),
|
|
3082
|
-
mouseInteractionCb: (w) =>
|
|
3082
|
+
mouseInteractionCb: (w) => T(F({
|
|
3083
3083
|
type: v.IncrementalSnapshot,
|
|
3084
3084
|
data: Object.assign({ source: b.MouseInteraction }, w)
|
|
3085
3085
|
})),
|
|
3086
3086
|
scrollCb: q,
|
|
3087
|
-
viewportResizeCb: (w) =>
|
|
3087
|
+
viewportResizeCb: (w) => T(F({
|
|
3088
3088
|
type: v.IncrementalSnapshot,
|
|
3089
3089
|
data: Object.assign({ source: b.ViewportResize }, w)
|
|
3090
3090
|
})),
|
|
3091
|
-
inputCb: (w) =>
|
|
3091
|
+
inputCb: (w) => T(F({
|
|
3092
3092
|
type: v.IncrementalSnapshot,
|
|
3093
3093
|
data: Object.assign({ source: b.Input }, w)
|
|
3094
3094
|
})),
|
|
3095
|
-
mediaInteractionCb: (w) =>
|
|
3095
|
+
mediaInteractionCb: (w) => T(F({
|
|
3096
3096
|
type: v.IncrementalSnapshot,
|
|
3097
3097
|
data: Object.assign({ source: b.MediaInteraction }, w)
|
|
3098
3098
|
})),
|
|
3099
|
-
styleSheetRuleCb: (w) =>
|
|
3099
|
+
styleSheetRuleCb: (w) => T(F({
|
|
3100
3100
|
type: v.IncrementalSnapshot,
|
|
3101
3101
|
data: Object.assign({ source: b.StyleSheetRule }, w)
|
|
3102
3102
|
})),
|
|
3103
|
-
styleDeclarationCb: (w) =>
|
|
3103
|
+
styleDeclarationCb: (w) => T(F({
|
|
3104
3104
|
type: v.IncrementalSnapshot,
|
|
3105
3105
|
data: Object.assign({ source: b.StyleDeclaration }, w)
|
|
3106
3106
|
})),
|
|
3107
3107
|
canvasMutationCb: oe,
|
|
3108
|
-
fontCb: (w) =>
|
|
3108
|
+
fontCb: (w) => T(F({
|
|
3109
3109
|
type: v.IncrementalSnapshot,
|
|
3110
3110
|
data: Object.assign({ source: b.Font }, w)
|
|
3111
3111
|
})),
|
|
3112
3112
|
selectionCb: (w) => {
|
|
3113
|
-
|
|
3113
|
+
T(F({
|
|
3114
3114
|
type: v.IncrementalSnapshot,
|
|
3115
3115
|
data: Object.assign({ source: b.Selection }, w)
|
|
3116
3116
|
}));
|
|
@@ -3124,9 +3124,9 @@ function ke(t = {}) {
|
|
|
3124
3124
|
sampling: C,
|
|
3125
3125
|
recordCanvas: A,
|
|
3126
3126
|
inlineImages: R,
|
|
3127
|
-
userTriggeredOnInput:
|
|
3128
|
-
collectFonts:
|
|
3129
|
-
doc:
|
|
3127
|
+
userTriggeredOnInput: D,
|
|
3128
|
+
collectFonts: B,
|
|
3129
|
+
doc: _,
|
|
3130
3130
|
maskInputFn: f,
|
|
3131
3131
|
maskTextFn: h,
|
|
3132
3132
|
keepIframeSrcFn: j,
|
|
@@ -3142,7 +3142,7 @@ function ke(t = {}) {
|
|
|
3142
3142
|
plugins: ((Y = H == null ? void 0 : H.filter((w) => w.observer)) === null || Y === void 0 ? void 0 : Y.map((w) => ({
|
|
3143
3143
|
observer: w.observer,
|
|
3144
3144
|
options: w.options,
|
|
3145
|
-
callback: (Z) =>
|
|
3145
|
+
callback: (Z) => T(F({
|
|
3146
3146
|
type: v.Plugin,
|
|
3147
3147
|
data: {
|
|
3148
3148
|
plugin: w.name,
|
|
@@ -3152,19 +3152,19 @@ function ke(t = {}) {
|
|
|
3152
3152
|
}))) || []
|
|
3153
3153
|
}, y);
|
|
3154
3154
|
};
|
|
3155
|
-
se.addLoadListener((
|
|
3156
|
-
I.push(W(
|
|
3155
|
+
se.addLoadListener((_) => {
|
|
3156
|
+
I.push(W(_.contentDocument));
|
|
3157
3157
|
});
|
|
3158
3158
|
const P = () => {
|
|
3159
3159
|
De(), I.push(W(document)), Ze = !0;
|
|
3160
3160
|
};
|
|
3161
3161
|
return document.readyState === "interactive" || document.readyState === "complete" ? P() : I.push(G("load", () => {
|
|
3162
|
-
|
|
3162
|
+
T(F({
|
|
3163
3163
|
type: v.Load,
|
|
3164
3164
|
data: {}
|
|
3165
3165
|
})), P();
|
|
3166
3166
|
}, window)), () => {
|
|
3167
|
-
I.forEach((
|
|
3167
|
+
I.forEach((_) => _()), Ze = !1;
|
|
3168
3168
|
};
|
|
3169
3169
|
} catch (I) {
|
|
3170
3170
|
console.warn(I);
|
|
@@ -3173,7 +3173,7 @@ function ke(t = {}) {
|
|
|
3173
3173
|
ke.addCustomEvent = (t, e) => {
|
|
3174
3174
|
if (!Ze)
|
|
3175
3175
|
throw new Error("please add custom event after start recording");
|
|
3176
|
-
|
|
3176
|
+
T(F({
|
|
3177
3177
|
type: v.Custom,
|
|
3178
3178
|
data: {
|
|
3179
3179
|
tag: t,
|
|
@@ -3818,7 +3818,7 @@ const dt = () => typeof window < "u" && typeof window.localStorage < "u", mr = (
|
|
|
3818
3818
|
replayMaxSegmentEvents: (t == null ? void 0 : t.replayMaxSegmentEvents) ?? k.replayMaxSegmentEvents,
|
|
3819
3819
|
replayMaskAllInputs: (t == null ? void 0 : t.replayMaskAllInputs) ?? k.replayMaskAllInputs
|
|
3820
3820
|
};
|
|
3821
|
-
},
|
|
3821
|
+
}, L = () => typeof window < "u" && window.location ? window.location.href : "", de = () => typeof document < "u" && document.title || "", Cs = /* @__PURE__ */ new Set(["beacon", "fetch", "xmlhttprequest"]), Ie = 1e4, Be = () => typeof performance < "u" && Number.isFinite(performance.timeOrigin) ? performance.timeOrigin : Date.now(), Ss = (t) => {
|
|
3822
3822
|
const e = String(t.initiatorType || "").toLowerCase(), r = String(t.name || "").toLowerCase();
|
|
3823
3823
|
return e === "fetch" || e === "xmlhttprequest" || e === "beacon" ? "xhr" : e === "css" || e === "link" || r.endsWith(".css") || r.includes(".css?") ? "css" : e === "script" || r.endsWith(".js") || r.includes(".js?") ? "js" : e === "img" || e === "image" || /\.(png|jpg|jpeg|gif|svg|webp|avif|ico)(\?|$)/.test(r) ? "images" : e === "font" || /\.(woff|woff2|ttf|otf|eot)(\?|$)/.test(r) ? "fonts" : "other";
|
|
3824
3824
|
}, bs = (t) => {
|
|
@@ -3883,14 +3883,14 @@ class Rs {
|
|
|
3883
3883
|
...o,
|
|
3884
3884
|
page_title: de(),
|
|
3885
3885
|
session_id: this.sessionId,
|
|
3886
|
-
url_bug_happened:
|
|
3886
|
+
url_bug_happened: L()
|
|
3887
3887
|
});
|
|
3888
3888
|
},
|
|
3889
3889
|
onNetworkError: (o) => {
|
|
3890
3890
|
this.trackInternal("NETWORK_ERROR", {
|
|
3891
3891
|
...o,
|
|
3892
3892
|
error_type: "network_error",
|
|
3893
|
-
url_bug_happened:
|
|
3893
|
+
url_bug_happened: L(),
|
|
3894
3894
|
url: String(o.url || "")
|
|
3895
3895
|
});
|
|
3896
3896
|
},
|
|
@@ -3898,24 +3898,34 @@ class Rs {
|
|
|
3898
3898
|
this.trackInternal("SOCKET_ERROR", {
|
|
3899
3899
|
...o,
|
|
3900
3900
|
error_type: "socket_error",
|
|
3901
|
-
url_bug_happened:
|
|
3901
|
+
url_bug_happened: L(),
|
|
3902
3902
|
url: String(o.url || "")
|
|
3903
3903
|
});
|
|
3904
3904
|
},
|
|
3905
3905
|
onJsError: (o) => {
|
|
3906
|
-
this.
|
|
3906
|
+
this.replayRecorder.addCustomEvent("js-error", {
|
|
3907
|
+
...o,
|
|
3908
|
+
session_id: this.sessionId,
|
|
3909
|
+
timestamp: Date.now(),
|
|
3910
|
+
url: L()
|
|
3911
|
+
}), this.trackInternal("JS_ERROR", {
|
|
3907
3912
|
...o,
|
|
3908
3913
|
error_type: "js_error",
|
|
3909
|
-
url_bug_happened:
|
|
3910
|
-
url:
|
|
3914
|
+
url_bug_happened: L(),
|
|
3915
|
+
url: L()
|
|
3911
3916
|
});
|
|
3912
3917
|
},
|
|
3913
3918
|
onUnhandledRejection: (o) => {
|
|
3914
|
-
this.
|
|
3919
|
+
this.replayRecorder.addCustomEvent("unhandled-rejection", {
|
|
3920
|
+
...o,
|
|
3921
|
+
session_id: this.sessionId,
|
|
3922
|
+
timestamp: Date.now(),
|
|
3923
|
+
url: L()
|
|
3924
|
+
}), this.trackInternal("UNHANDLED_REJECTION", {
|
|
3915
3925
|
...o,
|
|
3916
3926
|
error_type: "unhandled_rejection",
|
|
3917
|
-
url_bug_happened:
|
|
3918
|
-
url:
|
|
3927
|
+
url_bug_happened: L(),
|
|
3928
|
+
url: L()
|
|
3919
3929
|
});
|
|
3920
3930
|
}
|
|
3921
3931
|
}), this.errorCapture.start()), this.config.enableSessionReplay && (await this.replayRecorder.start({
|
|
@@ -3945,13 +3955,21 @@ class Rs {
|
|
|
3945
3955
|
}
|
|
3946
3956
|
async reportError(e, r = {}) {
|
|
3947
3957
|
const n = e instanceof Error ? e.message : String(e), s = e instanceof Error ? e.stack : void 0;
|
|
3948
|
-
return this.
|
|
3958
|
+
return this.replayRecorder.addCustomEvent("js-error", {
|
|
3959
|
+
message: n,
|
|
3960
|
+
stack: s,
|
|
3961
|
+
context: r,
|
|
3962
|
+
error_type: "manual_error",
|
|
3963
|
+
session_id: this.sessionId,
|
|
3964
|
+
timestamp: Date.now(),
|
|
3965
|
+
url: L()
|
|
3966
|
+
}), this.trackInternal("MANUAL_ERROR", {
|
|
3949
3967
|
message: n,
|
|
3950
3968
|
stack: s,
|
|
3951
3969
|
context: r,
|
|
3952
3970
|
error_type: "manual_error",
|
|
3953
|
-
url_bug_happened:
|
|
3954
|
-
url:
|
|
3971
|
+
url_bug_happened: L(),
|
|
3972
|
+
url: L(),
|
|
3955
3973
|
timestamp: Date.now()
|
|
3956
3974
|
});
|
|
3957
3975
|
}
|
|
@@ -3961,7 +3979,7 @@ class Rs {
|
|
|
3961
3979
|
details: r || null,
|
|
3962
3980
|
session_id: this.sessionId,
|
|
3963
3981
|
timestamp: Date.now(),
|
|
3964
|
-
url:
|
|
3982
|
+
url: L()
|
|
3965
3983
|
});
|
|
3966
3984
|
}
|
|
3967
3985
|
identify(e, r = {}) {
|
|
@@ -4002,7 +4020,7 @@ class Rs {
|
|
|
4002
4020
|
actions: this.actionBuffer.getAll(),
|
|
4003
4021
|
device_info: ft(this.deviceId),
|
|
4004
4022
|
network_status: mt(),
|
|
4005
|
-
url_bug_happened: r.url_bug_happened ||
|
|
4023
|
+
url_bug_happened: r.url_bug_happened || L(),
|
|
4006
4024
|
trace_id: n.trace_id,
|
|
4007
4025
|
span_id: n.span_id,
|
|
4008
4026
|
traceparent: n.traceparent,
|
|
@@ -4060,7 +4078,7 @@ class Rs {
|
|
|
4060
4078
|
device_info: ft(this.deviceId),
|
|
4061
4079
|
network_status: mt(),
|
|
4062
4080
|
page_title: de(),
|
|
4063
|
-
page_url:
|
|
4081
|
+
page_url: L(),
|
|
4064
4082
|
performance: ks(),
|
|
4065
4083
|
reason: e,
|
|
4066
4084
|
session_id: this.sessionId,
|
|
@@ -4117,7 +4135,7 @@ class Rs {
|
|
|
4117
4135
|
js_heap_limit_mb: (o == null ? void 0 : o.js_heap_limit_mb) ?? null,
|
|
4118
4136
|
memory_mb: (o == null ? void 0 : o.used_js_heap_mb) ?? null,
|
|
4119
4137
|
page_title: de(),
|
|
4120
|
-
page_url:
|
|
4138
|
+
page_url: L(),
|
|
4121
4139
|
reason: e,
|
|
4122
4140
|
session_id: this.sessionId,
|
|
4123
4141
|
timestamp: Math.round(Be() + r),
|
|
@@ -4134,7 +4152,7 @@ class Rs {
|
|
|
4134
4152
|
duration_ms: s,
|
|
4135
4153
|
name: n.name || "longtask",
|
|
4136
4154
|
page_title: de(),
|
|
4137
|
-
page_url:
|
|
4155
|
+
page_url: L(),
|
|
4138
4156
|
session_id: this.sessionId,
|
|
4139
4157
|
start_time_ms: Math.round(Number(n.startTime || 0)),
|
|
4140
4158
|
timestamp: Math.round(Be() + Number(n.startTime || performance.now()))
|
|
@@ -4153,7 +4171,7 @@ class Rs {
|
|
|
4153
4171
|
const s = Number(n.value || 0);
|
|
4154
4172
|
!Number.isFinite(s) || s <= 0 || n.hadRecentInput || this.replayRecorder.addCustomEvent("layout-shift", {
|
|
4155
4173
|
page_title: de(),
|
|
4156
|
-
page_url:
|
|
4174
|
+
page_url: L(),
|
|
4157
4175
|
session_id: this.sessionId,
|
|
4158
4176
|
timestamp: Math.round(Be() + Number(n.startTime || performance.now())),
|
|
4159
4177
|
value: Math.round(s * 1e4) / 1e4
|
|
@@ -4183,7 +4201,7 @@ class Rs {
|
|
|
4183
4201
|
initiator_type: String(n.initiatorType || ""),
|
|
4184
4202
|
method: "GET",
|
|
4185
4203
|
page_title: de(),
|
|
4186
|
-
page_url:
|
|
4204
|
+
page_url: L(),
|
|
4187
4205
|
request_url: n.name,
|
|
4188
4206
|
resource_type: Ss(n),
|
|
4189
4207
|
response_end_ms: Math.round(Number(n.responseEnd || 0)),
|
|
@@ -4196,11 +4214,11 @@ class Rs {
|
|
|
4196
4214
|
});
|
|
4197
4215
|
}
|
|
4198
4216
|
}
|
|
4199
|
-
const Es = () => new Rs(),
|
|
4217
|
+
const Es = () => new Rs(), _s = Es(), Ts = _s;
|
|
4200
4218
|
export {
|
|
4201
4219
|
k as DEFAULT_CONFIG,
|
|
4202
4220
|
Rs as FlashlogTrackerLite,
|
|
4203
4221
|
Es as createTracker,
|
|
4204
|
-
|
|
4205
|
-
|
|
4222
|
+
_s as default,
|
|
4223
|
+
Ts as flashlogTracker
|
|
4206
4224
|
};
|