@sailfish-ai/recorder 1.11.0 → 1.11.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/chunks/{chunkSerializer-ZzIoYlP2.js → chunkSerializer-BiemuRlf.js} +1 -1
- package/dist/chunks/chunkSerializer-BiemuRlf.js.br +0 -0
- package/dist/chunks/chunkSerializer-BiemuRlf.js.gz +0 -0
- package/dist/chunks/{chunkSerializer-CRDpgzTs.js → chunkSerializer-CJQCxiLD.js} +1 -1
- package/dist/chunks/chunkSerializer-CJQCxiLD.js.br +0 -0
- package/dist/chunks/chunkSerializer-CJQCxiLD.js.gz +0 -0
- package/dist/chunks/{index-BQn1Q-2-.js → index-Cfj4Epfd.js} +120 -94
- package/dist/chunks/index-Cfj4Epfd.js.br +0 -0
- package/dist/chunks/index-Cfj4Epfd.js.gz +0 -0
- package/dist/chunks/{index-Dq_tjmkZ.js → index-CuXHImrI.js} +114 -86
- package/dist/chunks/index-CuXHImrI.js.br +0 -0
- package/dist/chunks/index-CuXHImrI.js.gz +0 -0
- package/dist/inAppReportIssueModal/index.js +15 -14
- package/dist/inAppReportIssueModal/index.js.br +0 -0
- package/dist/inAppReportIssueModal/index.js.gz +0 -0
- package/dist/inAppReportIssueModal/integrations.js +56 -4
- package/dist/inAppReportIssueModal/integrations.js.br +0 -0
- package/dist/inAppReportIssueModal/integrations.js.gz +0 -0
- package/dist/index.js +55 -40
- package/dist/index.js.br +0 -0
- package/dist/index.js.gz +0 -0
- package/dist/recorder.cjs +2 -2
- package/dist/recorder.cjs.br +0 -0
- package/dist/recorder.cjs.gz +0 -0
- package/dist/recorder.js +26 -25
- package/dist/recorder.js.br +0 -0
- package/dist/recorder.js.gz +0 -0
- package/dist/recorder.umd.cjs +287 -261
- package/dist/recorder.umd.cjs.br +0 -0
- package/dist/recorder.umd.cjs.gz +0 -0
- package/dist/recording.js +2 -2
- package/dist/recording.js.br +0 -0
- package/dist/recording.js.gz +0 -0
- package/dist/sendSailfishMessages.js +4 -0
- package/dist/sendSailfishMessages.js.br +0 -0
- package/dist/sendSailfishMessages.js.gz +0 -0
- package/dist/snippet-auto-init.js +147 -18
- package/dist/snippet-auto-init.js.br +0 -0
- package/dist/snippet-auto-init.js.gz +0 -0
- package/dist/types/inAppReportIssueModal/integrations.d.ts +7 -0
- package/dist/types/index.d.ts +3 -1
- package/dist/types/sendSailfishMessages.d.ts +4 -0
- package/dist/types/snippet-auto-init.d.ts +30 -0
- package/dist/types/types.d.ts +1 -0
- package/package.json +1 -1
- package/dist/chunks/chunkSerializer-CRDpgzTs.js.br +0 -0
- package/dist/chunks/chunkSerializer-CRDpgzTs.js.gz +0 -0
- package/dist/chunks/chunkSerializer-ZzIoYlP2.js.br +0 -0
- package/dist/chunks/chunkSerializer-ZzIoYlP2.js.gz +0 -0
- package/dist/chunks/index-BQn1Q-2-.js.br +0 -0
- package/dist/chunks/index-BQn1Q-2-.js.gz +0 -0
- package/dist/chunks/index-Dq_tjmkZ.js.br +0 -0
- package/dist/chunks/index-Dq_tjmkZ.js.gz +0 -0
package/dist/recorder.umd.cjs
CHANGED
|
@@ -97,7 +97,7 @@
|
|
|
97
97
|
return __extends(CloseEvent, e2), CloseEvent;
|
|
98
98
|
})(I), getGlobalWebSocket = function() {
|
|
99
99
|
if ("undefined" != typeof WebSocket) return WebSocket;
|
|
100
|
-
}, A = { maxReconnectionDelay: 1e4, minReconnectionDelay: 1e3 + 4e3 * Math.random(), minUptime: 5e3, reconnectionDelayGrowFactor: 1.3, connectionTimeout: 4e3, maxRetries: 1 / 0, maxEnqueuedMessages: 1 / 0 },
|
|
100
|
+
}, A = { maxReconnectionDelay: 1e4, minReconnectionDelay: 1e3 + 4e3 * Math.random(), minUptime: 5e3, reconnectionDelayGrowFactor: 1.3, connectionTimeout: 4e3, maxRetries: 1 / 0, maxEnqueuedMessages: 1 / 0 }, U = (function() {
|
|
101
101
|
function ReconnectingWebSocket(e2, a2, u2) {
|
|
102
102
|
var w2 = this;
|
|
103
103
|
void 0 === u2 && (u2 = {}), this._listeners = { error: [], message: [], open: [], close: [] }, this._retryCount = -1, this._shouldReconnect = true, this._connectLock = false, this._binaryType = "blob", this._closeCalled = false, this._messageQueue = [], this.onclose = null, this.onerror = null, this.onmessage = null, this.onopen = null, this._handleOpen = function(e3) {
|
|
@@ -259,7 +259,7 @@
|
|
|
259
259
|
clearTimeout(this._connectTimeout), clearTimeout(this._uptimeTimeout);
|
|
260
260
|
}, ReconnectingWebSocket;
|
|
261
261
|
})();
|
|
262
|
-
const
|
|
262
|
+
const j = "recordingEvents";
|
|
263
263
|
let B = null;
|
|
264
264
|
function openDb$1() {
|
|
265
265
|
return (function hasIndexedDB$1() {
|
|
@@ -269,7 +269,7 @@
|
|
|
269
269
|
const a2 = globalThis.indexedDB.open("leapsEventDB", 1);
|
|
270
270
|
a2.onupgradeneeded = () => {
|
|
271
271
|
const e3 = a2.result;
|
|
272
|
-
e3.objectStoreNames.contains(
|
|
272
|
+
e3.objectStoreNames.contains(j) || e3.createObjectStore(j, { keyPath: "id", autoIncrement: true });
|
|
273
273
|
}, a2.onsuccess = () => e2(a2.result), a2.onerror = () => e2(null), a2.onblocked = () => {
|
|
274
274
|
e2(null);
|
|
275
275
|
};
|
|
@@ -281,7 +281,7 @@
|
|
|
281
281
|
function withStore$1(e2, a2) {
|
|
282
282
|
return openDb$1().then((u2) => u2 ? new Promise((w2) => {
|
|
283
283
|
try {
|
|
284
|
-
const k2 = u2.transaction(
|
|
284
|
+
const k2 = u2.transaction(j, e2), x2 = k2.objectStore(j);
|
|
285
285
|
Promise.resolve(a2(x2)).then((e3) => {
|
|
286
286
|
k2.oncomplete = () => w2(e3), k2.onerror = () => w2(null);
|
|
287
287
|
}).catch(() => w2(null));
|
|
@@ -593,7 +593,7 @@
|
|
|
593
593
|
const a3 = new URL(e3);
|
|
594
594
|
return `${a3.hostname}${a3.port ? `:${a3.port}` : ""}`;
|
|
595
595
|
})(e2);
|
|
596
|
-
let I2 = `${"https:" === new URL(e2).protocol ? "wss" : "ws"}://${x2}/ws/notify/?apiKey=${a2}&sessionId=${u2}&sender=JS%2FTS&version=1.11.
|
|
596
|
+
let I2 = `${"https:" === new URL(e2).protocol ? "wss" : "ws"}://${x2}/ws/notify/?apiKey=${a2}&sessionId=${u2}&sender=JS%2FTS&version=1.11.1`;
|
|
597
597
|
if (w2 && (I2 += `&envValue=${encodeURIComponent(w2)}`), ne = k2 ? (function tryCreateWsWorker() {
|
|
598
598
|
if ("undefined" == typeof Worker) return null;
|
|
599
599
|
try {
|
|
@@ -614,7 +614,7 @@
|
|
|
614
614
|
}, ne.postMessage({ type: "init", wsUrl: I2 }), ee && console.log("[Sailfish] WebSocket running in Web Worker (off main thread)"), a3;
|
|
615
615
|
}
|
|
616
616
|
ee && console.log("[Sailfish] WebSocket running on main thread (Worker unavailable)");
|
|
617
|
-
const M2 = new
|
|
617
|
+
const M2 = new U(I2, [], { connectionTimeout: 3e4 }), _2 = { get readyState() {
|
|
618
618
|
return M2.readyState;
|
|
619
619
|
}, close: () => {
|
|
620
620
|
M2.close(), null != ce && (clearInterval(ce), ce = null);
|
|
@@ -650,6 +650,9 @@
|
|
|
650
650
|
}
|
|
651
651
|
const Me = Object.freeze(Object.defineProperty({ __proto__: null, clearStaleFuncSpanState, disableFunctionSpanTracking, enableFunctionSpanTracking, ensureHrefCache, flushBufferedEvents, getCachedHref, getCachedHrefNoQuery, getFuncSpanHeader, initializeFunctionSpanTrackingFromApi, initializeWebSocket, isFunctionSpanTrackingEnabled, onNavigationChange, restoreFuncSpanState, sendEvent, sendMessage }, Symbol.toStringTag, { value: "Module" }));
|
|
652
652
|
let Ee = null, _e = null;
|
|
653
|
+
function getIdentifiedUser() {
|
|
654
|
+
return Ee;
|
|
655
|
+
}
|
|
653
656
|
let Te = null;
|
|
654
657
|
const Oe = ["https://api.ipify.org?format=json", "https://api.ip.sb/jsonip", "https://api4.my-ip.io/ip.json"];
|
|
655
658
|
function fetchAndSendIp(a2) {
|
|
@@ -707,12 +710,12 @@
|
|
|
707
710
|
u3.push(`${e4} [No source map found for ${k3}]`);
|
|
708
711
|
continue;
|
|
709
712
|
}
|
|
710
|
-
const { SourceMapConsumer:
|
|
711
|
-
let
|
|
712
|
-
if (!
|
|
713
|
-
if (
|
|
714
|
-
const e5 =
|
|
715
|
-
u3.push(`${
|
|
713
|
+
const { SourceMapConsumer: U2 } = await getSourceMapModule();
|
|
714
|
+
let j2 = A2.originalPositionFor({ line: M3, column: _2, bias: U2.GREATEST_LOWER_BOUND });
|
|
715
|
+
if (!j2.source || null == j2.line) for (let e5 = 1; e5 <= 20 && (j2 = A2.originalPositionFor({ line: M3, column: Math.max(0, _2 - e5), bias: U2.GREATEST_LOWER_BOUND }), !j2.source || null == j2.line); e5++) ;
|
|
716
|
+
if (j2.source && null != j2.line) {
|
|
717
|
+
const e5 = j2.name || "anonymous";
|
|
718
|
+
u3.push(`${j2.source}:${j2.line}:${j2.column ?? 0} (${e5})`);
|
|
716
719
|
} else u3.push(`${e4} [No mapping found in ${k3}]`);
|
|
717
720
|
}
|
|
718
721
|
return u3;
|
|
@@ -758,13 +761,13 @@
|
|
|
758
761
|
function fetchEngineeringTicketPlatformIntegrations(e2, a2) {
|
|
759
762
|
return sendGraphQLRequest("GetEngineeringTicketPlatformIntegrationsFromApiKey", "query GetEngineeringTicketPlatformIntegrationsFromApiKey($apiKey: String!) {\n getEngineeringTicketPlatformIntegrationsFromApiKey(apiKey: $apiKey) {\n pushAutoIdentifiedIssues\n provider\n clientId\n defaultPriority\n defaultProject\n defaultTeam\n primaryCloudId\n installed\n projects\n teams\n workflowStates\n webhookState\n clouds\n labels\n sprints\n users\n fieldConfigurations\n invalidFields\n jiraReporterAccountId\n }\n }", { apiKey: e2, backendApi: a2 });
|
|
760
763
|
}
|
|
761
|
-
function createTriageAndIssueFromRecorder(e2, a2, u2, w2, k2, x2, I2, M2, _2, A2,
|
|
762
|
-
return sendGraphQLRequest("CreateTriageAndIssueFromRecorder", "mutation CreateTriageAndIssueFromRecorder(\n $apiKey: String!,\n $recordingSessionId: String!,\n $timestampStart: String!,\n $timestampEnd: String!,\n $description: String,\n $issueName: String,\n $issueDescription: String,\n $createEngineeringTicket: Boolean,\n $teamId: String,\n $projectId: String,\n $priority: Int,\n $labels: [String!],\n $issueType: String,\n $customFields: JSON,\n $triageSource: TriageSourceEnum\n ) {\n createTriageAndIssueFromRecorder(\n apiKey: $apiKey,\n recordingSessionId: $recordingSessionId,\n timestampStart: $timestampStart,\n timestampEnd: $timestampEnd,\n description: $description,\n issueName: $issueName,\n issueDescription: $issueDescription,\n createEngineeringTicket: $createEngineeringTicket,\n teamId: $teamId,\n projectId: $projectId,\n priority: $priority,\n labels: $labels,\n issueType: $issueType,\n customFields: $customFields,\n triageSource: $triageSource\n ) {\n id\n title\n }\n }\n ", { apiKey: e2, recordingSessionId: u2, timestampStart: w2, timestampEnd: k2, description: x2, issueName: I2, issueDescription: M2, createEngineeringTicket: _2, teamId: A2, projectId:
|
|
764
|
+
function createTriageAndIssueFromRecorder(e2, a2, u2, w2, k2, x2, I2, M2, _2, A2, U2, j2, B2, z2, W2, G2) {
|
|
765
|
+
return sendGraphQLRequest("CreateTriageAndIssueFromRecorder", "mutation CreateTriageAndIssueFromRecorder(\n $apiKey: String!,\n $recordingSessionId: String!,\n $timestampStart: String!,\n $timestampEnd: String!,\n $description: String,\n $issueName: String,\n $issueDescription: String,\n $createEngineeringTicket: Boolean,\n $teamId: String,\n $projectId: String,\n $priority: Int,\n $labels: [String!],\n $issueType: String,\n $customFields: JSON,\n $triageSource: TriageSourceEnum\n ) {\n createTriageAndIssueFromRecorder(\n apiKey: $apiKey,\n recordingSessionId: $recordingSessionId,\n timestampStart: $timestampStart,\n timestampEnd: $timestampEnd,\n description: $description,\n issueName: $issueName,\n issueDescription: $issueDescription,\n createEngineeringTicket: $createEngineeringTicket,\n teamId: $teamId,\n projectId: $projectId,\n priority: $priority,\n labels: $labels,\n issueType: $issueType,\n customFields: $customFields,\n triageSource: $triageSource\n ) {\n id\n title\n }\n }\n ", { apiKey: e2, recordingSessionId: u2, timestampStart: w2, timestampEnd: k2, description: x2, issueName: I2, issueDescription: M2, createEngineeringTicket: _2, teamId: A2, projectId: U2, priority: j2, labels: B2, issueType: z2, customFields: W2, triageSource: G2, backendApi: a2 });
|
|
763
766
|
}
|
|
764
767
|
var $e = ((e2) => (e2[e2.DomContentLoaded = 0] = "DomContentLoaded", e2[e2.Load = 1] = "Load", e2[e2.FullSnapshot = 2] = "FullSnapshot", e2[e2.IncrementalSnapshot = 3] = "IncrementalSnapshot", e2[e2.Meta = 4] = "Meta", e2[e2.Custom = 5] = "Custom", e2[e2.Plugin = 6] = "Plugin", e2[e2.Device = 24] = "Device", e2[e2.SailfishCustom = 25] = "SailfishCustom", e2))($e || {});
|
|
765
|
-
const
|
|
768
|
+
const Ue = ["/node_modules/", "/@sailfish-ai/", "/@sailfish-rrweb/", "/dist/", "/webpack/", "/vite/", "/__vite", "/react-dom/", "/react/", "/scheduler/", "/<", "/chrome-extension://", "/extensions/"];
|
|
766
769
|
function shouldSkipFrame(e2) {
|
|
767
|
-
return
|
|
770
|
+
return Ue.some((a2) => e2.includes(a2));
|
|
768
771
|
}
|
|
769
772
|
function normalizeFilePath(e2) {
|
|
770
773
|
let a2 = e2;
|
|
@@ -830,7 +833,7 @@
|
|
|
830
833
|
var _a2;
|
|
831
834
|
return "undefined" != typeof globalThis && ((_a2 = globalThis.scheduler) == null ? void 0 : _a2.yield) ? globalThis.scheduler.yield() : new Promise((e2) => setTimeout(e2, 0));
|
|
832
835
|
}
|
|
833
|
-
let
|
|
836
|
+
let je = null;
|
|
834
837
|
const Ge = "sailfishSanitize", Ve = "zendesk_chat", qe = "Zendesk";
|
|
835
838
|
function zE_safe(...e2) {
|
|
836
839
|
try {
|
|
@@ -872,12 +875,12 @@
|
|
|
872
875
|
});
|
|
873
876
|
}
|
|
874
877
|
async function initializeConsolePlugin(e2, a2) {
|
|
875
|
-
const { getRecordConsolePlugin: u2 } = await Promise.resolve().then(() =>
|
|
878
|
+
const { getRecordConsolePlugin: u2 } = await Promise.resolve().then(() => Un);
|
|
876
879
|
await yieldToMain();
|
|
877
880
|
const { name: w2, observer: k2 } = u2(e2);
|
|
878
881
|
k2((e3) => {
|
|
879
|
-
const u3 = e3, [k3, x2] = getCallerLocationFromTrace(u3 == null ? void 0 : u3.trace, 0), [I2, M2] = getCallerLocation(2), _2 = k3 ?? I2, A2 = x2 ?? M2,
|
|
880
|
-
sendEvent({ type: $e.Plugin, timestamp: Date.now(), data: { plugin: w2, payload:
|
|
882
|
+
const u3 = e3, [k3, x2] = getCallerLocationFromTrace(u3 == null ? void 0 : u3.trace, 0), [I2, M2] = getCallerLocation(2), _2 = k3 ?? I2, A2 = x2 ?? M2, U2 = { ...u3, sourceFile: _2, sourceLine: A2 };
|
|
883
|
+
sendEvent({ type: $e.Plugin, timestamp: Date.now(), data: { plugin: w2, payload: U2 }, sessionId: a2, ...getUrlAndStoredUuids() });
|
|
881
884
|
}, window, e2);
|
|
882
885
|
}
|
|
883
886
|
async function initializeRecording(e2, a2, u2, w2, k2, x2 = true, I2 = false, M2 = false) {
|
|
@@ -913,13 +916,13 @@
|
|
|
913
916
|
console.warn("[Sailfish] Failed to enable Fiber tracking:", e3);
|
|
914
917
|
}
|
|
915
918
|
const { record: a4 } = await Promise.resolve().then(() => gp);
|
|
916
|
-
if (
|
|
919
|
+
if (je = a4, await yieldToMain(), M2) {
|
|
917
920
|
const { chunkedSnapshot: u3 } = await Promise.resolve().then(() => yp), w3 = a4.mirror;
|
|
918
921
|
let k3 = true;
|
|
919
922
|
const x3 = [];
|
|
920
923
|
a4({ emit(e3) {
|
|
921
924
|
k3 ? x3.push(e3) : emitWithContext(e3);
|
|
922
|
-
}, maskInputOptions: { text: true }, maskInputFn, maskTextClass: Ge,
|
|
925
|
+
}, maskInputOptions: { text: true }, maskInputFn, ...e2, maskTextClass: e2.maskTextClass ?? Ge, recordDOM: false });
|
|
923
926
|
const I3 = Date.now(), M3 = await u3(document, w3, { chunkSize: 500, maxChunkMs: 16, blockClass: e2.blockClass, blockSelector: e2.blockSelector, maskTextClass: e2.maskTextClass ?? Ge, maskTextSelector: e2.maskTextSelector });
|
|
924
927
|
if (M3) {
|
|
925
928
|
emitWithContext({ type: $e.Meta, data: { href: window.location.href, width: document.documentElement.clientWidth || document.body.clientWidth, height: document.documentElement.clientHeight || document.body.clientHeight }, timestamp: I3 }), emitWithContext({ type: $e.FullSnapshot, data: { node: M3, initialOffset: { left: void 0 !== window.pageXOffset ? window.pageXOffset : document.documentElement.scrollLeft, top: void 0 !== window.pageYOffset ? window.pageYOffset : document.documentElement.scrollTop } }, timestamp: I3 });
|
|
@@ -928,7 +931,7 @@
|
|
|
928
931
|
} else console.warn("[Sailfish] chunkSnapshot serialization failed; session continues without initial DOM snapshot"), k3 = false;
|
|
929
932
|
} else a4({ emit(e3) {
|
|
930
933
|
emitWithContext(e3);
|
|
931
|
-
}, maskInputOptions: { text: true }, maskInputFn, maskTextClass: Ge
|
|
934
|
+
}, maskInputOptions: { text: true }, maskInputFn, ...e2, maskTextClass: e2.maskTextClass ?? Ge });
|
|
932
935
|
};
|
|
933
936
|
if (x2) {
|
|
934
937
|
let e3 = false;
|
|
@@ -960,11 +963,11 @@
|
|
|
960
963
|
zE_safe("messenger:set", "conversationTags", [`sailfish-session-${w2}`]);
|
|
961
964
|
});
|
|
962
965
|
const handleWidgetOpen = () => {
|
|
963
|
-
|
|
966
|
+
je == null ? void 0 : je.addSailfishEvent($e.SailfishCustom, { action: "customer support chat opened", element_id: Ve, provider: qe });
|
|
964
967
|
}, handleWidgetClose = () => {
|
|
965
|
-
|
|
968
|
+
je == null ? void 0 : je.addSailfishEvent($e.SailfishCustom, { action: "customer support chat closed", element_id: Ve, provider: qe });
|
|
966
969
|
}, handleUnreadMessages = (e3) => {
|
|
967
|
-
|
|
970
|
+
je == null ? void 0 : je.addSailfishEvent($e.SailfishCustom, { action: "zendesk unreadmessages", element_id: Ve, provider: qe });
|
|
968
971
|
};
|
|
969
972
|
suppressConsoleLogsDuringCall(() => {
|
|
970
973
|
zE_safe("messenger:on", "open", handleWidgetOpen), zE_safe("messenger:on", "close", handleWidgetClose), zE_safe("messenger:on", "unreadMessages", handleUnreadMessages);
|
|
@@ -1143,12 +1146,26 @@
|
|
|
1143
1146
|
}
|
|
1144
1147
|
function getFieldsForProject(e2, a2) {
|
|
1145
1148
|
if (!(rt == null ? void 0 : rt.fieldConfigurations) || !e2) return [];
|
|
1146
|
-
const u2 = Array.isArray(rt.fieldConfigurations) ? rt.fieldConfigurations.find((u3) => u3.project_key
|
|
1149
|
+
const u2 = Array.isArray(rt.fieldConfigurations) ? rt.fieldConfigurations.find((u3) => !(u3.project_key !== e2 && String(u3.project_id) !== String(e2) || a2 && String(u3.issue_type_id) !== String(a2))) : rt.fieldConfigurations[e2];
|
|
1147
1150
|
return u2 && u2.fields ? u2.fields : [];
|
|
1148
1151
|
}
|
|
1149
1152
|
function getUsers() {
|
|
1150
1153
|
return (rt == null ? void 0 : rt.users) ? rt.users : [];
|
|
1151
1154
|
}
|
|
1155
|
+
function getDefaultReporterAccountId() {
|
|
1156
|
+
const e2 = getUsers(), a2 = getIdentifiedUser();
|
|
1157
|
+
if (!e2.length || !a2) return null;
|
|
1158
|
+
const u2 = a2.traits || {}, w2 = (u2.email || a2.userId || "").toLowerCase().trim(), k2 = (u2.name || u2.displayName || u2.fullName || u2.full_name || (u2.firstName || u2.first_name ? `${u2.firstName || u2.first_name} ${u2.lastName || u2.last_name || ""}`.trim() : "") || "").toLowerCase().trim(), findUnique = (a3) => {
|
|
1159
|
+
const u3 = e2.filter(a3);
|
|
1160
|
+
return 1 === u3.length ? u3[0] : null;
|
|
1161
|
+
};
|
|
1162
|
+
let x2 = w2 ? findUnique((e3) => (e3.email || e3.emailAddress || "").toLowerCase().trim() === w2) : null;
|
|
1163
|
+
if (!x2 && k2 && (x2 = findUnique((e3) => (e3.name || e3.displayName || "").toLowerCase().trim() === k2)), !x2 && w2) {
|
|
1164
|
+
const e3 = w2.split("@")[0];
|
|
1165
|
+
e3.length >= 3 && (x2 = findUnique((a3) => (a3.name || a3.displayName || "").toLowerCase().trim().includes(e3)));
|
|
1166
|
+
}
|
|
1167
|
+
return x2 && (x2.id || x2.accountId) || null;
|
|
1168
|
+
}
|
|
1152
1169
|
function getProjectsForTeam(e2) {
|
|
1153
1170
|
if (!rt) return [];
|
|
1154
1171
|
const a2 = rt.teams && Array.isArray(rt.teams) && rt.teams.length > 0;
|
|
@@ -1181,7 +1198,7 @@
|
|
|
1181
1198
|
} catch (e3) {
|
|
1182
1199
|
console.error("Error fetching integration data:", e3), rt = null;
|
|
1183
1200
|
}
|
|
1184
|
-
}, getFieldsForProject, getIntegrationData, getProjectsForTeam, getSprintFieldId, getUsers, hasValidIntegration, populatePriorityOptions, populateSelectOptions, populateSprintOptions, refreshIntegrationData, updateFormWithIntegrationData, updateIssueTypeOptions }, Symbol.toStringTag, { value: "Module" })), lt = "sf-create-issue-preference", ct = "sf-create-eng-ticket-preference";
|
|
1201
|
+
}, getDefaultReporterAccountId, getFieldsForProject, getIntegrationData, getProjectsForTeam, getSprintFieldId, getUsers, hasValidIntegration, populatePriorityOptions, populateSelectOptions, populateSprintOptions, refreshIntegrationData, updateFormWithIntegrationData, updateIssueTypeOptions }, Symbol.toStringTag, { value: "Module" })), lt = "sf-create-issue-preference", ct = "sf-create-eng-ticket-preference";
|
|
1185
1202
|
function getInitialState() {
|
|
1186
1203
|
const e2 = (function loadUserPreferences() {
|
|
1187
1204
|
return { createIssue: K && "true" === localStorage.getItem(lt), createEngTicket: K && "true" === localStorage.getItem(ct) };
|
|
@@ -1281,15 +1298,15 @@
|
|
|
1281
1298
|
if (!w2 || 0 === w2.length) return void (u2.innerHTML = "");
|
|
1282
1299
|
const x2 = w2.map((e3) => (function renderDynamicField(e4, a3, u3 = []) {
|
|
1283
1300
|
var _a2, _b, _c2, _d2;
|
|
1284
|
-
const w3 = e4.fieldId || e4.key, k3 = e4.name, x3 = (_a2 = e4.schema) == null ? void 0 : _a2.type, I2 = (_b = e4.schema) == null ? void 0 : _b.system, M2 = (_c2 = e4.schema) == null ? void 0 : _c2.custom, _2 = e4.required || false, A2 = e4.allowedValues,
|
|
1285
|
-
if (
|
|
1286
|
-
const
|
|
1301
|
+
const w3 = e4.fieldId || e4.key, k3 = e4.name, x3 = (_a2 = e4.schema) == null ? void 0 : _a2.type, I2 = (_b = e4.schema) == null ? void 0 : _b.system, M2 = (_c2 = e4.schema) == null ? void 0 : _c2.custom, _2 = e4.required || false, A2 = e4.allowedValues, U2 = ["summary", "description", "project", "issuetype", "priority"];
|
|
1302
|
+
if (U2.includes(w3) || U2.includes(I2)) return null;
|
|
1303
|
+
const j2 = _2 ? '<span style="color:#ef4444;">*</span>' : "", B2 = "width:100%; padding:8px 12px; font-size:14px; border:1px solid #cbd5e1; border-radius:6px; outline:none;";
|
|
1287
1304
|
switch (x3) {
|
|
1288
1305
|
case "string":
|
|
1289
1306
|
return M2 && M2.includes("textarea") ? `
|
|
1290
1307
|
<div>
|
|
1291
1308
|
<label for="${w3}" style="display:block; font-size:14px; font-weight:500; margin-bottom:6px;">
|
|
1292
|
-
${k3} ${
|
|
1309
|
+
${k3} ${j2}
|
|
1293
1310
|
</label>
|
|
1294
1311
|
<textarea
|
|
1295
1312
|
id="${w3}"
|
|
@@ -1303,7 +1320,7 @@
|
|
|
1303
1320
|
` : `
|
|
1304
1321
|
<div>
|
|
1305
1322
|
<label for="${w3}" style="display:block; font-size:14px; font-weight:500; margin-bottom:6px;">
|
|
1306
|
-
${k3} ${
|
|
1323
|
+
${k3} ${j2}
|
|
1307
1324
|
</label>
|
|
1308
1325
|
<input
|
|
1309
1326
|
type="text"
|
|
@@ -1321,7 +1338,7 @@
|
|
|
1321
1338
|
return `
|
|
1322
1339
|
<div>
|
|
1323
1340
|
<label for="${w3}" style="display:block; font-size:14px; font-weight:500; margin-bottom:6px;">
|
|
1324
|
-
${k3} ${
|
|
1341
|
+
${k3} ${j2}
|
|
1325
1342
|
</label>
|
|
1326
1343
|
<input
|
|
1327
1344
|
type="number"
|
|
@@ -1340,7 +1357,7 @@
|
|
|
1340
1357
|
return `
|
|
1341
1358
|
<div>
|
|
1342
1359
|
<label for="${w3}" style="display:block; font-size:14px; font-weight:500; margin-bottom:6px;">
|
|
1343
|
-
${k3} ${
|
|
1360
|
+
${k3} ${j2}
|
|
1344
1361
|
</label>
|
|
1345
1362
|
<input
|
|
1346
1363
|
type="date"
|
|
@@ -1362,7 +1379,7 @@
|
|
|
1362
1379
|
return `
|
|
1363
1380
|
<div>
|
|
1364
1381
|
<label for="${w3}" style="display:block; font-size:14px; font-weight:500; margin-bottom:6px;">
|
|
1365
|
-
${k3} ${
|
|
1382
|
+
${k3} ${j2}
|
|
1366
1383
|
</label>
|
|
1367
1384
|
<select
|
|
1368
1385
|
id="${w3}"
|
|
@@ -1387,7 +1404,7 @@
|
|
|
1387
1404
|
return `
|
|
1388
1405
|
<div>
|
|
1389
1406
|
<label for="${w3}" style="display:block; font-size:14px; font-weight:500; margin-bottom:6px;">
|
|
1390
|
-
${k3} ${
|
|
1407
|
+
${k3} ${j2}
|
|
1391
1408
|
</label>
|
|
1392
1409
|
<select
|
|
1393
1410
|
id="${w3}"
|
|
@@ -1410,7 +1427,7 @@
|
|
|
1410
1427
|
return `
|
|
1411
1428
|
<div>
|
|
1412
1429
|
<label for="${w3}" style="display:block; font-size:14px; font-weight:500; margin-bottom:6px;">
|
|
1413
|
-
${k3} ${
|
|
1430
|
+
${k3} ${j2}
|
|
1414
1431
|
</label>
|
|
1415
1432
|
<input
|
|
1416
1433
|
type="text"
|
|
@@ -1428,7 +1445,7 @@
|
|
|
1428
1445
|
return ((_d2 = e4.operations) == null ? void 0 : _d2.includes("set")) ? `
|
|
1429
1446
|
<div>
|
|
1430
1447
|
<label for="${w3}" style="display:block; font-size:14px; font-weight:500; margin-bottom:6px;">
|
|
1431
|
-
${k3} ${
|
|
1448
|
+
${k3} ${j2}
|
|
1432
1449
|
</label>
|
|
1433
1450
|
<input
|
|
1434
1451
|
type="text"
|
|
@@ -1771,17 +1788,20 @@
|
|
|
1771
1788
|
if (!hasValidIntegration()) return _2.checked = false, ut.createEngTicket = false, localStorage.setItem(ct, "false"), A2 && (A2.style.display = "none"), void alert("No engineering ticket integration found. Please install and configure an integration (Jira, Linear, or Zendesk) first.");
|
|
1772
1789
|
const e5 = getIntegrationData();
|
|
1773
1790
|
if (e5) {
|
|
1774
|
-
if (!ut.engTicketTeam && e5.defaultTeam && (ut.engTicketTeam = e5.defaultTeam), !ut.engTicketProject && e5.defaultProject && (ut.engTicketProject = e5.defaultProject), !ut.engTicketPriority && e5.defaultPriority && (ut.engTicketPriority = e5.defaultPriority), updateFormWithIntegrationData(ut), "jira" === ((_a2 = e5.provider) == null ? void 0 : _a2.toLowerCase()) &&
|
|
1775
|
-
getFieldsForProject(ut.engTicketProject, ut.engTicketIssueType).find((e6) => "reporter" === e6.fieldId)
|
|
1791
|
+
if (!ut.engTicketTeam && e5.defaultTeam && (ut.engTicketTeam = e5.defaultTeam), !ut.engTicketProject && e5.defaultProject && (ut.engTicketProject = e5.defaultProject), !ut.engTicketPriority && e5.defaultPriority && (ut.engTicketPriority = e5.defaultPriority), updateFormWithIntegrationData(ut), "jira" === ((_a2 = e5.provider) == null ? void 0 : _a2.toLowerCase()) && ut.engTicketProject && !ut.engTicketCustomFields.reporter) {
|
|
1792
|
+
if (getFieldsForProject(ut.engTicketProject, ut.engTicketIssueType).find((e6) => "reporter" === e6.fieldId)) {
|
|
1793
|
+
const a5 = getDefaultReporterAccountId();
|
|
1794
|
+
ut.engTicketCustomFields.reporter = a5 || e5.jiraReporterAccountId || "";
|
|
1795
|
+
}
|
|
1776
1796
|
}
|
|
1777
1797
|
const a4 = document.getElementById("sf-eng-ticket-project"), u3 = document.getElementById("sf-eng-ticket-type");
|
|
1778
1798
|
a4 && a4.value && renderDynamicFields(a4.value, u3 == null ? void 0 : u3.value);
|
|
1779
1799
|
}
|
|
1780
1800
|
}
|
|
1781
1801
|
});
|
|
1782
|
-
const
|
|
1783
|
-
|
|
1784
|
-
ut.issueName =
|
|
1802
|
+
const U2 = document.getElementById("sf-issue-name");
|
|
1803
|
+
U2 && U2.addEventListener("input", () => {
|
|
1804
|
+
ut.issueName = U2.value;
|
|
1785
1805
|
});
|
|
1786
1806
|
bindEngTicketListeners(), a3 && (a3.onclick = () => {
|
|
1787
1807
|
const e4 = document.getElementById("sf-issue-description");
|
|
@@ -1846,7 +1866,7 @@
|
|
|
1846
1866
|
w3 = Date.now(), u3 = w3 - e6;
|
|
1847
1867
|
}
|
|
1848
1868
|
if (ut.createIssue) {
|
|
1849
|
-
const k3 = document.getElementById("sf-issue-name"), x3 = document.getElementById("sf-eng-ticket-team"), I3 = document.getElementById("sf-eng-ticket-project"), M3 = document.getElementById("sf-eng-ticket-priority"), _3 = document.getElementById("sf-eng-ticket-type"), A3 = (k3 == null ? void 0 : k3.value) || "",
|
|
1869
|
+
const k3 = document.getElementById("sf-issue-name"), x3 = document.getElementById("sf-eng-ticket-team"), I3 = document.getElementById("sf-eng-ticket-project"), M3 = document.getElementById("sf-eng-ticket-priority"), _3 = document.getElementById("sf-eng-ticket-type"), A3 = (k3 == null ? void 0 : k3.value) || "", U3 = e5, j2 = (x3 == null ? void 0 : x3.value) || "", B2 = (I3 == null ? void 0 : I3.value) || "", z2 = M3 ? Number(M3.value) : 0, W2 = ut.engTicketLabels, G2 = (_3 == null ? void 0 : _3.value) || "", H2 = { ...ut.engTicketCustomFields };
|
|
1850
1870
|
document.querySelectorAll(".sf-dynamic-field").forEach((e6) => {
|
|
1851
1871
|
const a5 = e6, u4 = a5.dataset.fieldId;
|
|
1852
1872
|
u4 && ("checkbox" === a5.type ? H2[u4] = a5.checked : "number" === a5.type ? H2[u4] = parseFloat(a5.value) || null : a5.classList.contains("sf-custom-multiselect") || (H2[u4] = a5.value));
|
|
@@ -1856,11 +1876,11 @@
|
|
|
1856
1876
|
const e6 = getSprintFieldId();
|
|
1857
1877
|
H2[e6] = parseInt(Y2, 10);
|
|
1858
1878
|
}
|
|
1859
|
-
closeModal(), (async function createTriageAndIssue(e6, a5, u4, w4, k4, x4, I4, M4, _4, A4,
|
|
1879
|
+
closeModal(), (async function createTriageAndIssue(e6, a5, u4, w4, k4, x4, I4, M4, _4, A4, U4, j3, B3) {
|
|
1860
1880
|
var _a3, _b, _c2;
|
|
1861
1881
|
try {
|
|
1862
1882
|
showStatusModal(true);
|
|
1863
|
-
const z3 = await createTriageAndIssueFromRecorder(St.apiKey, St.backendApi, getSessionIdSafely(), e6, a5, u4, w4, k4, x4, I4, M4, _4, A4,
|
|
1883
|
+
const z3 = await createTriageAndIssueFromRecorder(St.apiKey, St.backendApi, getSessionIdSafely(), e6, a5, u4, w4, k4, x4, I4, M4, _4, A4, U4, j3, B3);
|
|
1864
1884
|
if ((_a3 = z3 == null ? void 0 : z3.errors) == null ? void 0 : _a3.length) {
|
|
1865
1885
|
const e7 = z3.errors.map((e8) => e8.message).join("; ");
|
|
1866
1886
|
return console.error("GraphQL error creating triage and issue:", e7), void showStatusModal(false, null, e7);
|
|
@@ -1870,7 +1890,7 @@
|
|
|
1870
1890
|
} catch (e7) {
|
|
1871
1891
|
console.error("Error creating triage and issue:", e7), showStatusModal(false, null, "Something went wrong. Please try again.");
|
|
1872
1892
|
}
|
|
1873
|
-
})(`${u3}`, `${w3}`, e5, A3,
|
|
1893
|
+
})(`${u3}`, `${w3}`, e5, A3, U3, ut.createEngTicket, j2, B2, z2, W2, G2, H2, "startnow" === a4 ? "RECORDED" : "LOOKBACK");
|
|
1874
1894
|
} else closeModal(), (async function createTriage(e6, a5, u4, w4) {
|
|
1875
1895
|
var _a3, _b, _c2;
|
|
1876
1896
|
try {
|
|
@@ -1906,8 +1926,11 @@
|
|
|
1906
1926
|
var _a2;
|
|
1907
1927
|
const e2 = St.integrationData;
|
|
1908
1928
|
if (e2) {
|
|
1909
|
-
if (!ut.engTicketTeam && e2.defaultTeam && (ut.engTicketTeam = e2.defaultTeam), !ut.engTicketProject && e2.defaultProject && (ut.engTicketProject = e2.defaultProject), !ut.engTicketPriority && e2.defaultPriority && (ut.engTicketPriority = e2.defaultPriority), updateFormWithIntegrationData(ut), "jira" === ((_a2 = e2.provider) == null ? void 0 : _a2.toLowerCase()) &&
|
|
1910
|
-
getFieldsForProject(ut.engTicketProject, ut.engTicketIssueType).find((e3) => "reporter" === e3.fieldId)
|
|
1929
|
+
if (!ut.engTicketTeam && e2.defaultTeam && (ut.engTicketTeam = e2.defaultTeam), !ut.engTicketProject && e2.defaultProject && (ut.engTicketProject = e2.defaultProject), !ut.engTicketPriority && e2.defaultPriority && (ut.engTicketPriority = e2.defaultPriority), updateFormWithIntegrationData(ut), "jira" === ((_a2 = e2.provider) == null ? void 0 : _a2.toLowerCase()) && ut.engTicketProject && !ut.engTicketCustomFields.reporter) {
|
|
1930
|
+
if (getFieldsForProject(ut.engTicketProject, ut.engTicketIssueType).find((e3) => "reporter" === e3.fieldId)) {
|
|
1931
|
+
const a2 = getDefaultReporterAccountId();
|
|
1932
|
+
ut.engTicketCustomFields.reporter = a2 || e2.jiraReporterAccountId || "";
|
|
1933
|
+
}
|
|
1911
1934
|
}
|
|
1912
1935
|
ut.engTicketProject && renderDynamicFields(ut.engTicketProject, ut.engTicketIssueType);
|
|
1913
1936
|
}
|
|
@@ -1945,8 +1968,11 @@
|
|
|
1945
1968
|
var _a2;
|
|
1946
1969
|
ut.engTicketProject = a2.value, a2.style.color = a2.value ? "" : "#9ca3af", ut.engTicketCustomFields = {};
|
|
1947
1970
|
const e3 = getIntegrationData();
|
|
1948
|
-
if (e3 && k2 && (updateIssueTypeOptions(k2, a2.value), ut.engTicketIssueType = k2.value), e3 && "jira" === ((_a2 = e3.provider) == null ? void 0 : _a2.toLowerCase()) &&
|
|
1949
|
-
getFieldsForProject(a2.value, ut.engTicketIssueType).find((e4) => "reporter" === e4.fieldId)
|
|
1971
|
+
if (e3 && k2 && (updateIssueTypeOptions(k2, a2.value), ut.engTicketIssueType = k2.value), e3 && "jira" === ((_a2 = e3.provider) == null ? void 0 : _a2.toLowerCase()) && a2.value) {
|
|
1972
|
+
if (getFieldsForProject(a2.value, ut.engTicketIssueType).find((e4) => "reporter" === e4.fieldId)) {
|
|
1973
|
+
const a3 = getDefaultReporterAccountId();
|
|
1974
|
+
ut.engTicketCustomFields.reporter = a3 || e3.jiraReporterAccountId || "";
|
|
1975
|
+
}
|
|
1950
1976
|
}
|
|
1951
1977
|
renderDynamicFields(a2.value, ut.engTicketIssueType);
|
|
1952
1978
|
}), x2 && x2.addEventListener("change", () => {
|
|
@@ -2026,14 +2052,14 @@
|
|
|
2026
2052
|
})();
|
|
2027
2053
|
const k2 = !e3 && w2, x2 = u3 ? `${St.triageBaseUrl}/issues/${u3}?from=inAppReportIssue` : a3 ? `${St.triageBaseUrl}/triage/${a3}?from=inAppReportIssue` : "", I2 = document.createElement("div");
|
|
2028
2054
|
I2.id = "sf-triage-status-modal", Object.assign(I2.style, { position: "fixed", inset: "0", zIndex: "9998", display: "flex", alignItems: "center", justifyContent: "center" });
|
|
2029
|
-
const M2 = e3 ? "Reporting Issue..." : k2 ? "Failed to report issue" : "Issue reported!", _2 = e3 ? '<p style="font-size:14px; color:#64748b; line-height:20px;">This may take ~10 seconds</p>' : k2 ? `<p style="font-size:14px; color:#ef4444; line-height:20px;">${w2}</p>` : "", A2 = e3 ? '<div style="display:flex; justify-content:center; align-items:center; padding: 40px 0;">\n <div style="width:24px; height:24px; border:2px solid #295dbf; border-top:2px solid white; border-radius:50%; animation:spin 1s linear infinite;"></div>\n </div>' : "",
|
|
2055
|
+
const M2 = e3 ? "Reporting Issue..." : k2 ? "Failed to report issue" : "Issue reported!", _2 = e3 ? '<p style="font-size:14px; color:#64748b; line-height:20px;">This may take ~10 seconds</p>' : k2 ? `<p style="font-size:14px; color:#ef4444; line-height:20px;">${w2}</p>` : "", A2 = e3 ? '<div style="display:flex; justify-content:center; align-items:center; padding: 40px 0;">\n <div style="width:24px; height:24px; border:2px solid #295dbf; border-top:2px solid white; border-radius:50%; animation:spin 1s linear infinite;"></div>\n </div>' : "", U2 = e3 ? "" : '<div id="sf-copied-status" style="display:none; font-size:12px; font-weight:500; color:white;\n background-color:#22c55e; padding:4px 8px; border-radius:6px; white-space:nowrap; align-items:center; gap:6px;">\n <svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path fill-rule="evenodd" clip-rule="evenodd" d="M21 7.5L9 19.5L3 13.5L5.25 11.25L9 15L18.75 5.25L21 7.5Z" fill="white"/>\n </svg>\n Copied\n </div>';
|
|
2030
2056
|
I2.innerHTML = `
|
|
2031
2057
|
<div style="position:fixed; inset:0; background:rgba(0,0,0,0.4); z-index:9998;"></div>
|
|
2032
2058
|
<div id="sf-triage-card"
|
|
2033
2059
|
style="position:relative; background:#fff; padding:24px; border-radius:12px; width:300px; max-width:90%;
|
|
2034
2060
|
font-family:sans-serif; box-shadow:0 4px 20px rgba(0,0,0,0.15);
|
|
2035
2061
|
z-index:9999; opacity:1; transition:opacity 300ms ease;">
|
|
2036
|
-
<div style="position:absolute; top:24px; right:48px;">${
|
|
2062
|
+
<div style="position:absolute; top:24px; right:48px;">${U2}</div>
|
|
2037
2063
|
|
|
2038
2064
|
<button id="sf-triage-modal-close"
|
|
2039
2065
|
style="position:absolute; top:24px; right:16px; background:none; border:none; cursor:pointer;">
|
|
@@ -2069,9 +2095,9 @@
|
|
|
2069
2095
|
@keyframes spin { to { transform: rotate(360deg); } }
|
|
2070
2096
|
</style>
|
|
2071
2097
|
`, document.body.appendChild(I2);
|
|
2072
|
-
const
|
|
2098
|
+
const j2 = I2.querySelector("#sf-triage-card");
|
|
2073
2099
|
(_a2 = document.getElementById("sf-triage-modal-close")) == null ? void 0 : _a2.addEventListener("click", () => {
|
|
2074
|
-
fadeCardAndRemove(I2,
|
|
2100
|
+
fadeCardAndRemove(I2, j2, 300);
|
|
2075
2101
|
});
|
|
2076
2102
|
const B2 = document.getElementById("sf-copy-triage-link"), z2 = document.getElementById("sf-view-triage-btn");
|
|
2077
2103
|
e3 ? (B2.disabled = true, B2.style.opacity = "0.4", B2.style.cursor = "not-allowed", z2.disabled = true, z2.style.opacity = "0.4", z2.style.cursor = "not-allowed") : (B2.disabled = false, B2.addEventListener("click", () => {
|
|
@@ -2081,7 +2107,7 @@
|
|
|
2081
2107
|
});
|
|
2082
2108
|
}), z2.disabled = false, z2.addEventListener("click", () => {
|
|
2083
2109
|
(a3 || u3) && window.open(x2, "_blank");
|
|
2084
|
-
}), k2 || setTimeout(() => fadeCardAndRemove(I2,
|
|
2110
|
+
}), k2 || setTimeout(() => fadeCardAndRemove(I2, j2, 300), 1e4));
|
|
2085
2111
|
})(e2, "triage" === (a2 == null ? void 0 : a2.type) ? a2.id : void 0, "issue" === (a2 == null ? void 0 : a2.type) ? a2.id : void 0, u2);
|
|
2086
2112
|
}
|
|
2087
2113
|
function fadeCardAndRemove(e2, a2, u2 = 300) {
|
|
@@ -2198,35 +2224,25 @@
|
|
|
2198
2224
|
clearPageVisitDataFromSessionStorage();
|
|
2199
2225
|
}));
|
|
2200
2226
|
}
|
|
2201
|
-
function
|
|
2202
|
-
|
|
2203
|
-
if ("string" == typeof e2 ? u2 = e2 : "undefined" != typeof URL && e2 instanceof URL ? u2 = e2.href : "undefined" != typeof Request && e2 instanceof Request ? u2 = e2.url : null != e2 && "function" == typeof e2.toString && (u2 = e2.toString()), !u2) return false;
|
|
2204
|
-
try {
|
|
2205
|
-
const e3 = "undefined" != typeof window ? window.location.href : "http://localhost/";
|
|
2206
|
-
w2 = new URL(u2, e3);
|
|
2207
|
-
} catch {
|
|
2208
|
-
return false;
|
|
2209
|
-
}
|
|
2210
|
-
const { hostname: k2, pathname: x2, port: I2, protocol: M2 } = w2;
|
|
2211
|
-
if (!/^https?:$/.test(M2)) return false;
|
|
2212
|
-
const _2 = k2.startsWith("www.") ? k2.slice(4).toLowerCase() : k2.toLowerCase();
|
|
2227
|
+
function matchParsedUrlAgainstPatterns(e2, a2) {
|
|
2228
|
+
const { hostname: u2, pathname: w2, port: k2 } = e2, x2 = u2.startsWith("www.") ? u2.slice(4).toLowerCase() : u2.toLowerCase();
|
|
2213
2229
|
return a2.some((e3) => {
|
|
2214
2230
|
const a3 = String(e3 || "").replace(/^[a-zA-Z]+:\/\//, "");
|
|
2215
|
-
let [u3,
|
|
2216
|
-
u3.includes(":") && ([u3,
|
|
2217
|
-
const
|
|
2218
|
-
if (
|
|
2231
|
+
let [u3, I2] = a3.split("/", 2), M2 = "";
|
|
2232
|
+
u3.includes(":") && ([u3, M2] = u3.split(":"));
|
|
2233
|
+
const _2 = getCachedRegex(`^${u3.replace(/\./g, "\\.").replace(/\*/g, ".*")}$`, "i"), A2 = x2.startsWith("www.") ? x2.slice(4) : x2;
|
|
2234
|
+
if (M2 && "*" !== M2 && k2 !== M2) return false;
|
|
2219
2235
|
if (u3.startsWith("*.")) {
|
|
2220
2236
|
const e4 = u3.slice(2).toLowerCase();
|
|
2221
|
-
if (!(
|
|
2222
|
-
if (
|
|
2223
|
-
return getCachedRegex(`^/${
|
|
2237
|
+
if (!(x2 === e4 || A2 === e4 || x2.endsWith("." + e4))) return false;
|
|
2238
|
+
if (I2) {
|
|
2239
|
+
return getCachedRegex(`^/${I2.replace(/\*/g, ".*").replace(/\/$/, "")}`, "i").test(w2);
|
|
2224
2240
|
}
|
|
2225
2241
|
return true;
|
|
2226
2242
|
}
|
|
2227
|
-
if (!
|
|
2228
|
-
if (
|
|
2229
|
-
return getCachedRegex(`^/${
|
|
2243
|
+
if (!_2.test(A2) && !_2.test(x2)) return false;
|
|
2244
|
+
if (I2) {
|
|
2245
|
+
return getCachedRegex(`^/${I2.replace(/\*/g, ".*").replace(/\/$/, "")}`, "i").test(w2);
|
|
2230
2246
|
}
|
|
2231
2247
|
return true;
|
|
2232
2248
|
});
|
|
@@ -2241,23 +2257,23 @@
|
|
|
2241
2257
|
return true;
|
|
2242
2258
|
}
|
|
2243
2259
|
const x2 = k2.pathname.toLowerCase(), I2 = x2.lastIndexOf(".");
|
|
2244
|
-
return !(-1 === I2 || !It.has(x2.slice(I2))) || (!(!w2 ||
|
|
2260
|
+
return !(-1 === I2 || !It.has(x2.slice(I2))) || (!(!w2 || matchParsedUrlAgainstPatterns(k2, a2)) || !!matchParsedUrlAgainstPatterns(k2, u2));
|
|
2245
2261
|
};
|
|
2246
2262
|
}
|
|
2247
2263
|
function setupFetchInterceptor(e2 = [], u2 = { captureStreamingResponseBody: true, captureResponseBodyMaxMb: 10, captureStreamPrefixKb: 64, captureStreamTimeoutMs: 1e4 }, w2 = []) {
|
|
2248
2264
|
const k2 = window.fetch, x2 = getOrSetSessionId(), I2 = createSkipHeadersPropagationChecker(e2, w2), M2 = ["text/event-stream", "application/x-ndjson", "application/stream+json", "application/grpc", "application/grpc-web"], _2 = ["application/octet-stream"];
|
|
2249
2265
|
window.fetch = new Proxy(k2, { apply: async (e3, w3, k3) => {
|
|
2250
|
-
let A2,
|
|
2251
|
-
if ("string" == typeof
|
|
2252
|
-
else if (
|
|
2266
|
+
let A2, U2 = k3[0], j2 = k3[1] || {};
|
|
2267
|
+
if ("string" == typeof U2) A2 = U2;
|
|
2268
|
+
else if (U2 instanceof Request) A2 = U2.url;
|
|
2253
2269
|
else {
|
|
2254
|
-
if (!(
|
|
2255
|
-
A2 =
|
|
2270
|
+
if (!(U2 instanceof URL)) return e3.apply(w3, k3);
|
|
2271
|
+
A2 = U2.href;
|
|
2256
2272
|
}
|
|
2257
|
-
return I2(A2) ? e3.apply(w3, k3) : (async function injectHeaderWrapper(e4, w4, k4, x3, I3, A3,
|
|
2273
|
+
return I2(A2) ? e3.apply(w3, k3) : (async function injectHeaderWrapper(e4, w4, k4, x3, I3, A3, U3) {
|
|
2258
2274
|
var _a2, _b;
|
|
2259
2275
|
if (!A3) return e4.apply(w4, k4);
|
|
2260
|
-
let
|
|
2276
|
+
let j3 = uuidv4();
|
|
2261
2277
|
const B2 = getUrlAndStoredUuids(), z2 = I3.method || "GET", W2 = Date.now();
|
|
2262
2278
|
let G2, H2 = {}, K2 = null;
|
|
2263
2279
|
try {
|
|
@@ -2281,23 +2297,23 @@
|
|
|
2281
2297
|
delete H2[a];
|
|
2282
2298
|
const Y2 = getFuncSpanHeader();
|
|
2283
2299
|
Y2 && delete H2[Y2.name];
|
|
2284
|
-
const X2 = `${A3}/${B2.page_visit_uuid}/${
|
|
2300
|
+
const X2 = `${A3}/${B2.page_visit_uuid}/${j3}`;
|
|
2285
2301
|
H2[a] = X2, Y2 && (H2[Y2.name] = Y2.value);
|
|
2286
2302
|
maskAuthorizationHeader(H2);
|
|
2287
2303
|
try {
|
|
2288
2304
|
let Y3 = await (async function injectHeader(e5, u3, w5, k5, x4, I4, M3) {
|
|
2289
2305
|
const _3 = getFuncSpanHeader();
|
|
2290
2306
|
if (w5 instanceof Request) {
|
|
2291
|
-
const A4 = w5.clone(),
|
|
2292
|
-
|
|
2293
|
-
const
|
|
2294
|
-
return await e5.call(u3,
|
|
2307
|
+
const A4 = w5.clone(), U4 = new Headers(A4.headers);
|
|
2308
|
+
U4.set(a, `${x4}/${I4}/${M3}`), _3 && (U4.set(_3.name, _3.value), Ct && console.log("[Sailfish] Added funcspan header to HTTP Request:", { url: w5.url, header: _3.name }));
|
|
2309
|
+
const j4 = new Request(A4, { headers: U4 });
|
|
2310
|
+
return await e5.call(u3, j4, k5);
|
|
2295
2311
|
}
|
|
2296
2312
|
{
|
|
2297
|
-
const A4 = { ...k5 },
|
|
2298
|
-
return
|
|
2313
|
+
const A4 = { ...k5 }, U4 = new Headers(k5.headers || {});
|
|
2314
|
+
return U4.set(a, `${x4}/${I4}/${M3}`), _3 && (U4.set(_3.name, _3.value), Ct && console.log("[Sailfish] Added funcspan header to HTTP fetch:", { url: "string" == typeof w5 ? w5 : w5.href, header: _3.name })), A4.headers = U4, await e5.call(u3, w5, A4);
|
|
2299
2315
|
}
|
|
2300
|
-
})(e4, w4, x3, I3, A3, B2.page_visit_uuid,
|
|
2316
|
+
})(e4, w4, x3, I3, A3, B2.page_visit_uuid, j3), X3 = false;
|
|
2301
2317
|
_t.includes(Y3.status) && (Ct && console.log("Perform retry as status was fail:", Y3), delete H2[a], Y3 = await (async function retryWithoutPropagateHeaders(e5, u3, w5, k5) {
|
|
2302
2318
|
try {
|
|
2303
2319
|
let k6 = w5[0], x4 = w5[1] || {};
|
|
@@ -2316,7 +2332,7 @@
|
|
|
2316
2332
|
} catch (e6) {
|
|
2317
2333
|
throw Ct && console.log(`Retry without ${a} for ${k5} also failed:`, e6), e6;
|
|
2318
2334
|
}
|
|
2319
|
-
})(e4, w4, k4,
|
|
2335
|
+
})(e4, w4, k4, U3), X3 = true);
|
|
2320
2336
|
const Q2 = Date.now(), Z2 = Y3.status, J2 = Y3.ok, ee2 = J2 ? "" : `Request Error: ${Y3.statusText}`;
|
|
2321
2337
|
let te2 = null;
|
|
2322
2338
|
try {
|
|
@@ -2326,7 +2342,7 @@
|
|
|
2326
2342
|
} catch (e5) {
|
|
2327
2343
|
Ct && console.warn("[Sailfish] Failed to capture response headers:", e5), te2 = null;
|
|
2328
2344
|
}
|
|
2329
|
-
const ne2 = { type: 27, timestamp: Q2, sessionId: A3, data: { request_id:
|
|
2345
|
+
const ne2 = { type: 27, timestamp: Q2, sessionId: A3, data: { request_id: j3, session_id: A3, timestamp_start: W2, timestamp_end: Q2, response_code: Z2, success: J2, error: ee2, method: z2, url: U3, retry_without_trace_id: X3, request_headers: H2, request_body: G2, response_headers: te2, response_body: null }, ...B2 }, sendEventWithBody = (e5) => {
|
|
2330
2346
|
ne2.data.response_body = e5, K2 ? K2.text().then((e6) => {
|
|
2331
2347
|
ne2.data.request_body = e6, sendEvent(ne2);
|
|
2332
2348
|
}, () => {
|
|
@@ -2409,12 +2425,12 @@
|
|
|
2409
2425
|
} catch {
|
|
2410
2426
|
_3 = null;
|
|
2411
2427
|
}
|
|
2412
|
-
throw sendEvent({ type: 27, timestamp: u3, sessionId: A3, data: { request_id:
|
|
2428
|
+
throw sendEvent({ type: 27, timestamp: u3, sessionId: A3, data: { request_id: j3, session_id: A3, timestamp_start: W2, timestamp_end: u3, response_code: I4, success: x4, error: M3, method: z2, url: U3, request_headers: H2, request_body: _3, response_body: null }, ...B2 }), a2;
|
|
2413
2429
|
}
|
|
2414
|
-
})(e3, w3, k3,
|
|
2430
|
+
})(e3, w3, k3, U2, j2, x2, A2);
|
|
2415
2431
|
} });
|
|
2416
2432
|
}
|
|
2417
|
-
async function startRecording({ apiKey: e2, backendApi: u2 = "https://api-service.sailfishqa.com", domainsToPropagateHeaderTo: w2 = [], domainsToNotPropagateHeaderTo: k2 = [], serviceVersion: x2, serviceIdentifier: I2, gitSha: M2, serviceAdditionalMetadata: _2, enableIpTracking: A2, captureStreamingResponseBody:
|
|
2433
|
+
async function startRecording({ apiKey: e2, backendApi: u2 = "https://api-service.sailfishqa.com", domainsToPropagateHeaderTo: w2 = ["*"], domainsToNotPropagateHeaderTo: k2 = [], serviceVersion: x2, serviceIdentifier: I2, gitSha: M2, serviceAdditionalMetadata: _2, enableIpTracking: A2, captureStreamingResponseBody: U2 = true, captureResponseBodyMaxMb: j2 = 10, captureStreamPrefixKb: B2 = 64, captureStreamTimeoutMs: z2 = 1e4, enableFiberTracking: W2 = false, deferRecording: G2, deferRecordingStart: H2, chunkSnapshot: K2, useWsWorker: X2 = true, maskTextClass: Q2, library: Z2 }) {
|
|
2418
2434
|
var _a2, _b;
|
|
2419
2435
|
if ((function isHeadlessOrLighthouse() {
|
|
2420
2436
|
try {
|
|
@@ -2427,10 +2443,10 @@
|
|
|
2427
2443
|
return false;
|
|
2428
2444
|
}
|
|
2429
2445
|
})()) return;
|
|
2430
|
-
const
|
|
2431
|
-
if (
|
|
2432
|
-
const
|
|
2433
|
-
sessionStorage.getItem("pageVisitUUID") || (sessionStorage.setItem("pageVisitUUID", uuidv4()), invalidateUrlCache()),
|
|
2446
|
+
const J2 = G2 ?? H2 ?? true, ee2 = getOrSetSessionId(), te2 = window.__sailfish_recorder || (window.__sailfish_recorder = {});
|
|
2447
|
+
if (te2.sessionId = ee2, te2.apiKey = e2, te2.backendApi = u2, te2.serviceAdditionalMetadata = _2, te2.initialized && te2.sessionId === ee2 && te2.ws && 1 === te2.ws.readyState) return void trackDomainChangesOnce();
|
|
2448
|
+
const ne2 = { captureStreamingResponseBody: U2, captureResponseBodyMaxMb: j2, captureStreamPrefixKb: B2, captureStreamTimeoutMs: z2 };
|
|
2449
|
+
sessionStorage.getItem("pageVisitUUID") || (sessionStorage.setItem("pageVisitUUID", uuidv4()), invalidateUrlCache()), te2.xhrPatched || (!(function setupXMLHttpRequestInterceptor(e3 = [], u3 = { captureStreamingResponseBody: true, captureResponseBodyMaxMb: 10, captureStreamPrefixKb: 64, captureStreamTimeoutMs: 1e4 }, w3 = []) {
|
|
2434
2450
|
const k3 = XMLHttpRequest.prototype.open, x3 = XMLHttpRequest.prototype.send, I3 = XMLHttpRequest.prototype.setRequestHeader, M3 = getOrSetSessionId(), _3 = createSkipHeadersPropagationChecker(e3, w3);
|
|
2435
2451
|
XMLHttpRequest.prototype.setRequestHeader = function(e4, a2) {
|
|
2436
2452
|
return this._capturedRequestHeaders || (this._capturedRequestHeaders = {}), this._capturedRequestHeaders[e4] = a2, I3.call(this, e4, a2);
|
|
@@ -2446,13 +2462,13 @@
|
|
|
2446
2462
|
} catch (e5) {
|
|
2447
2463
|
console.warn(`Could not set X-Sf3-Rid for ${w4}`, e5);
|
|
2448
2464
|
}
|
|
2449
|
-
const
|
|
2450
|
-
if (
|
|
2451
|
-
this.setRequestHeader(
|
|
2465
|
+
const U3 = getFuncSpanHeader();
|
|
2466
|
+
if (U3) try {
|
|
2467
|
+
this.setRequestHeader(U3.name, U3.value), Ct && console.log("[Sailfish] Added funcspan header to XMLHttpRequest:", { url: w4, header: U3.name });
|
|
2452
2468
|
} catch (e5) {
|
|
2453
2469
|
Ct && console.warn(`[Sailfish] Could not set funcspan header for ${w4}`, e5);
|
|
2454
2470
|
}
|
|
2455
|
-
const
|
|
2471
|
+
const j3 = Date.now();
|
|
2456
2472
|
let B3 = false;
|
|
2457
2473
|
const z3 = e4[0], W3 = { ...this._capturedRequestHeaders };
|
|
2458
2474
|
maskAuthorizationHeader(W3);
|
|
@@ -2460,7 +2476,7 @@
|
|
|
2460
2476
|
if (B3) return;
|
|
2461
2477
|
B3 = true;
|
|
2462
2478
|
const _4 = Date.now();
|
|
2463
|
-
sendEvent({ type: 27, timestamp: _4, sessionId: M3, data: { request_id: I4, session_id: M3, timestamp_start:
|
|
2479
|
+
sendEvent({ type: 27, timestamp: _4, sessionId: M3, data: { request_id: I4, session_id: M3, timestamp_start: j3, timestamp_end: _4, response_code: a2, success: e5, error: u4, method: this._requestMethod, url: w4, request_headers: W3, request_body: z3, response_headers: x4, response_body: k5 }, ...getUrlAndStoredUuids() });
|
|
2464
2480
|
};
|
|
2465
2481
|
return this.addEventListener("load", () => {
|
|
2466
2482
|
const e5 = this.status || 0;
|
|
@@ -2495,22 +2511,22 @@
|
|
|
2495
2511
|
emitFinished(false, e5, a2);
|
|
2496
2512
|
}, { once: true }), x3.apply(this, e4);
|
|
2497
2513
|
};
|
|
2498
|
-
})(k2,
|
|
2514
|
+
})(k2, ne2, w2), te2.xhrPatched = true), te2.fetchPatched || (setupFetchInterceptor(k2, ne2, w2), te2.fetchPatched = true), await yieldToMain(), te2.domEventsInit || (initializeDomContentEvents(ee2), te2.domEventsInit = true), await yieldToMain(), te2.consoleInit || (initializeConsolePlugin(At, ee2), te2.consoleInit = true), await yieldToMain(), te2.errorInit || (!(function initializeErrorInterceptor() {
|
|
2499
2515
|
window.addEventListener("error", (e3) => {
|
|
2500
2516
|
captureError(e3.error || e3.message);
|
|
2501
2517
|
}), window.addEventListener("unhandledrejection", (e3) => {
|
|
2502
2518
|
captureError(e3.reason, true);
|
|
2503
2519
|
});
|
|
2504
|
-
})(),
|
|
2520
|
+
})(), te2.errorInit = true), await yieldToMain(), _ensureModuleSideEffects(), (function storeCredentialsAndConnection({ apiKey: e3, backendApi: a2 }) {
|
|
2505
2521
|
Y && (sessionStorage.setItem("sailfishApiKey", e3), sessionStorage.setItem("sailfishBackendApi", a2));
|
|
2506
|
-
})({ apiKey: e2, backendApi: u2 }), !isFunctionSpanTrackingEnabled() ||
|
|
2522
|
+
})({ apiKey: e2, backendApi: u2 }), !isFunctionSpanTrackingEnabled() || te2.ws && 1 === te2.ws.readyState || fetchFunctionSpanTrackingEnabled(e2, u2).then((e3) => {
|
|
2507
2523
|
var _a3;
|
|
2508
2524
|
((_a3 = e3.data) == null ? void 0 : _a3.isFunctionSpanTrackingEnabledFromApiKey) ?? false ? Ct && console.log("[Sailfish] Function span tracking state validated with backend: ACTIVE") : (clearStaleFuncSpanState(), Ct && console.log("[Sailfish] Cleared stale function span tracking state - backend validation shows tracking is not active"));
|
|
2509
2525
|
}).catch((e3) => {
|
|
2510
2526
|
Ct && console.warn("[Sailfish] Failed to validate function span tracking status with backend:", e3);
|
|
2511
|
-
}),
|
|
2527
|
+
}), te2.sentDoNotPropagateOnce || (sendDomainsToNotPropagateHeaderTo(e2, [...k2, ...Mt], u2).catch((e3) => console.error("Failed to send domains to not propagate header to:", e3)), te2.sentDoNotPropagateOnce = true), (async function gatherAndCacheDeviceInfo() {
|
|
2512
2528
|
sendMessage({ type: "deviceInfo", data: { deviceInfo: { language: navigator.language, userAgent: navigator.userAgent } } });
|
|
2513
|
-
})(), A2 && fetchAndSendIp(
|
|
2529
|
+
})(), A2 && fetchAndSendIp(ee2);
|
|
2514
2530
|
try {
|
|
2515
2531
|
const a2 = M2 ?? (function readGitSha() {
|
|
2516
2532
|
var _a3;
|
|
@@ -2529,13 +2545,13 @@
|
|
|
2529
2545
|
if ("string" == typeof e3 && e3) return e3;
|
|
2530
2546
|
} catch {
|
|
2531
2547
|
}
|
|
2532
|
-
})(), w3 = I2 ?? "", k3 = x2 ?? "", A3 =
|
|
2548
|
+
})(), w3 = I2 ?? "", k3 = x2 ?? "", A3 = Z2 ?? "JS/TS", U3 = (function getMapUuidFromWindow() {
|
|
2533
2549
|
try {
|
|
2534
2550
|
const e3 = window;
|
|
2535
2551
|
if (e3 && "string" == typeof e3.sfMapUuid && e3.sfMapUuid) return e3.sfMapUuid;
|
|
2536
2552
|
} catch {
|
|
2537
2553
|
}
|
|
2538
|
-
})(),
|
|
2554
|
+
})(), j3 = withAppUrlMetadata(_2), B3 = (function detectFramework(e3) {
|
|
2539
2555
|
let a3 = false;
|
|
2540
2556
|
try {
|
|
2541
2557
|
a3 = "undefined" != typeof document && "loading" !== document.readyState;
|
|
@@ -2547,17 +2563,17 @@
|
|
|
2547
2563
|
a4 && !w4.includes(a4) && w4.push(a4);
|
|
2548
2564
|
}
|
|
2549
2565
|
return { framework: w4[0] ?? null, additionalFrameworks: w4.slice(1), serviceRole: "frontend" };
|
|
2550
|
-
})(), z3 = { ...
|
|
2566
|
+
})(), z3 = { ...j3, serviceRole: B3.serviceRole, ...null !== B3.framework && { framework: B3.framework }, ...B3.additionalFrameworks.length > 0 && { additionalFrameworks: B3.additionalFrameworks } };
|
|
2551
2567
|
await yieldToMain();
|
|
2552
|
-
const [G3, H3] = await Promise.all([fetchCaptureSettings(e2, u2), startRecordingSession(e2,
|
|
2553
|
-
if (
|
|
2568
|
+
const [G3, H3] = await Promise.all([fetchCaptureSettings(e2, u2), startRecordingSession(e2, ee2, u2, w3, k3, U3, a2, A3, z3)]), Y2 = { ...Rt, ...(_a2 = G3.data) == null ? void 0 : _a2.captureSettingsFromApiKey, enableFiberTracking: W2, ...void 0 !== Q2 ? { maskTextClass: Q2 } : {} };
|
|
2569
|
+
if (te2.ws && 1 === te2.ws.readyState) return;
|
|
2554
2570
|
if ((_b = H3.data) == null ? void 0 : _b.startRecordingSession) {
|
|
2555
2571
|
const a3 = (_2 == null ? void 0 : _2.env) || (_2 == null ? void 0 : _2.environment);
|
|
2556
2572
|
await yieldToMain();
|
|
2557
|
-
const w4 = await initializeRecording(Y2, u2, e2,
|
|
2558
|
-
|
|
2573
|
+
const w4 = await initializeRecording(Y2, u2, e2, ee2, a3, J2, X2, K2 ?? false);
|
|
2574
|
+
te2.ws = w4, te2.initialized = true, trackDomainChangesOnce(), te2.sentMapUuidOnce || (!(function sendMapUuidIfAvailable(e3 = "", a4 = "") {
|
|
2559
2575
|
window.sfMapUuid && sendMessage({ type: "mapUuid", data: { mapUuid: window.sfMapUuid, serviceIdentifier: e3, serviceVersion: a4 } });
|
|
2560
|
-
})(I2, x2),
|
|
2576
|
+
})(I2, x2), te2.sentMapUuidOnce = true);
|
|
2561
2577
|
} else console.error("Failed to start recording session:", H3.errors || H3);
|
|
2562
2578
|
} catch (e3) {
|
|
2563
2579
|
console.error("Error starting recording:", e3);
|
|
@@ -2814,8 +2830,8 @@
|
|
|
2814
2830
|
}
|
|
2815
2831
|
var A2 = u3.source;
|
|
2816
2832
|
null == A2 || M2.has(A2) || M2.add(A2);
|
|
2817
|
-
var
|
|
2818
|
-
null ==
|
|
2833
|
+
var U2 = u3.name;
|
|
2834
|
+
null == U2 || _2.has(U2) || _2.add(U2);
|
|
2819
2835
|
}, this), this._sources = M2, this._names = _2, e3.sources.forEach(function(u3) {
|
|
2820
2836
|
var w4 = e3.sourceContentFor(u3);
|
|
2821
2837
|
null != w4 && (null != k2 && (u3 = a2.join(k2, u3)), null != I2 && (u3 = a2.relative(I2, u3)), this.setSourceContent(u3, w4));
|
|
@@ -2832,13 +2848,13 @@
|
|
|
2832
2848
|
throw new Error(k2);
|
|
2833
2849
|
}
|
|
2834
2850
|
}, SourceMapGenerator.prototype._serializeMappings = function SourceMapGenerator_serializeMappings() {
|
|
2835
|
-
for (var u3, w3, k2, x2, I2 = 0, M2 = 1, _2 = 0, A2 = 0,
|
|
2851
|
+
for (var u3, w3, k2, x2, I2 = 0, M2 = 1, _2 = 0, A2 = 0, U2 = 0, j2 = 0, B2 = "", z2 = this._mappings.toArray(), W2 = 0, G2 = z2.length; W2 < G2; W2++) {
|
|
2836
2852
|
if (u3 = "", (w3 = z2[W2]).generatedLine !== M2) for (I2 = 0; w3.generatedLine !== M2; ) u3 += ";", M2++;
|
|
2837
2853
|
else if (W2 > 0) {
|
|
2838
2854
|
if (!a2.compareByGeneratedPositionsInflated(w3, z2[W2 - 1])) continue;
|
|
2839
2855
|
u3 += ",";
|
|
2840
2856
|
}
|
|
2841
|
-
u3 += e2.encode(w3.generatedColumn - I2), I2 = w3.generatedColumn, null != w3.source && (x2 = this._sources.indexOf(w3.source), u3 += e2.encode(x2 -
|
|
2857
|
+
u3 += e2.encode(w3.generatedColumn - I2), I2 = w3.generatedColumn, null != w3.source && (x2 = this._sources.indexOf(w3.source), u3 += e2.encode(x2 - j2), j2 = x2, u3 += e2.encode(w3.originalLine - 1 - A2), A2 = w3.originalLine - 1, u3 += e2.encode(w3.originalColumn - _2), _2 = w3.originalColumn, null != w3.name && (k2 = this._names.indexOf(w3.name), u3 += e2.encode(k2 - U2), U2 = k2)), B2 += u3;
|
|
2842
2858
|
}
|
|
2843
2859
|
return B2;
|
|
2844
2860
|
}, SourceMapGenerator.prototype._generateSourcesContent = function SourceMapGenerator_generateSourcesContent(e3, u3) {
|
|
@@ -2915,13 +2931,13 @@
|
|
|
2915
2931
|
function BasicSourceMapConsumer(a3, w3) {
|
|
2916
2932
|
var k3 = a3;
|
|
2917
2933
|
"string" == typeof a3 && (k3 = e2.parseSourceMapInput(a3));
|
|
2918
|
-
var x3 = e2.getArg(k3, "version"), I2 = e2.getArg(k3, "sources"), M2 = e2.getArg(k3, "names", []), _2 = e2.getArg(k3, "sourceRoot", null), A2 = e2.getArg(k3, "sourcesContent", null),
|
|
2934
|
+
var x3 = e2.getArg(k3, "version"), I2 = e2.getArg(k3, "sources"), M2 = e2.getArg(k3, "names", []), _2 = e2.getArg(k3, "sourceRoot", null), A2 = e2.getArg(k3, "sourcesContent", null), U2 = e2.getArg(k3, "mappings"), j2 = e2.getArg(k3, "file", null);
|
|
2919
2935
|
if (x3 != this._version) throw new Error("Unsupported version: " + x3);
|
|
2920
2936
|
_2 && (_2 = e2.normalize(_2)), I2 = I2.map(String).map(e2.normalize).map(function(a4) {
|
|
2921
2937
|
return _2 && e2.isAbsolute(_2) && e2.isAbsolute(a4) ? e2.relative(_2, a4) : a4;
|
|
2922
2938
|
}), this._names = u2.fromArray(M2.map(String), true), this._sources = u2.fromArray(I2, true), this._absoluteSources = this._sources.toArray().map(function(a4) {
|
|
2923
2939
|
return e2.computeSourceURL(_2, a4, w3);
|
|
2924
|
-
}), this.sourceRoot = _2, this.sourcesContent = A2, this._mappings =
|
|
2940
|
+
}), this.sourceRoot = _2, this.sourcesContent = A2, this._mappings = U2, this._sourceMapURL = w3, this.file = j2;
|
|
2925
2941
|
}
|
|
2926
2942
|
function Mapping() {
|
|
2927
2943
|
this.generatedLine = 0, this.generatedColumn = 0, this.source = null, this.originalLine = null, this.originalColumn = null, this.name = null;
|
|
@@ -2949,9 +2965,9 @@
|
|
|
2949
2965
|
default:
|
|
2950
2966
|
throw new Error("Unknown order of iteration.");
|
|
2951
2967
|
}
|
|
2952
|
-
for (var I2 = this.sourceRoot, M2 = a3.bind(x3), _2 = this._names, A2 = this._sources,
|
|
2953
|
-
var z2 = k3[
|
|
2954
|
-
null !== W2 && (W2 = e2.computeSourceURL(I2, W2,
|
|
2968
|
+
for (var I2 = this.sourceRoot, M2 = a3.bind(x3), _2 = this._names, A2 = this._sources, U2 = this._sourceMapURL, j2 = 0, B2 = k3.length; j2 < B2; j2++) {
|
|
2969
|
+
var z2 = k3[j2], W2 = null === z2.source ? null : A2.at(z2.source);
|
|
2970
|
+
null !== W2 && (W2 = e2.computeSourceURL(I2, W2, U2)), M2({ source: W2, generatedLine: z2.generatedLine, generatedColumn: z2.generatedColumn, originalLine: z2.originalLine, originalColumn: z2.originalColumn, name: null === z2.name ? null : _2.at(z2.name) });
|
|
2955
2971
|
}
|
|
2956
2972
|
}, SourceMapConsumer.prototype.allGeneratedPositionsFor = function SourceMapConsumer_allGeneratedPositionsFor(u3) {
|
|
2957
2973
|
var w3 = e2.getArg(u3, "line"), k3 = { source: e2.getArg(u3, "source"), originalLine: w3, originalColumn: e2.getArg(u3, "column", 0) };
|
|
@@ -2973,9 +2989,9 @@
|
|
|
2973
2989
|
x3.sourceRoot = a3._sourceRoot, x3.sourcesContent = a3._generateSourcesContent(x3._sources.toArray(), x3.sourceRoot), x3.file = a3._file, x3._sourceMapURL = w3, x3._absoluteSources = x3._sources.toArray().map(function(a4) {
|
|
2974
2990
|
return e2.computeSourceURL(x3.sourceRoot, a4, w3);
|
|
2975
2991
|
});
|
|
2976
|
-
for (var _2 = a3._mappings.toArray().slice(), A2 = x3.__generatedMappings = [],
|
|
2977
|
-
var z2 = _2[
|
|
2978
|
-
W2.generatedLine = z2.generatedLine, W2.generatedColumn = z2.generatedColumn, z2.source && (W2.source = M2.indexOf(z2.source), W2.originalLine = z2.originalLine, W2.originalColumn = z2.originalColumn, z2.name && (W2.name = I2.indexOf(z2.name)),
|
|
2992
|
+
for (var _2 = a3._mappings.toArray().slice(), A2 = x3.__generatedMappings = [], U2 = x3.__originalMappings = [], j2 = 0, B2 = _2.length; j2 < B2; j2++) {
|
|
2993
|
+
var z2 = _2[j2], W2 = new Mapping();
|
|
2994
|
+
W2.generatedLine = z2.generatedLine, W2.generatedColumn = z2.generatedColumn, z2.source && (W2.source = M2.indexOf(z2.source), W2.originalLine = z2.originalLine, W2.originalColumn = z2.originalColumn, z2.name && (W2.name = I2.indexOf(z2.name)), U2.push(W2)), A2.push(W2);
|
|
2979
2995
|
}
|
|
2980
2996
|
return k2(x3.__originalMappings, e2.compareByOriginalPositions), x3;
|
|
2981
2997
|
}, BasicSourceMapConsumer.prototype._version = 3, Object.defineProperty(BasicSourceMapConsumer.prototype, "sources", { get: function() {
|
|
@@ -3009,16 +3025,16 @@
|
|
|
3009
3025
|
});
|
|
3010
3026
|
}
|
|
3011
3027
|
return BasicSourceMapConsumer.prototype._parseMappings = function SourceMapConsumer_parseMappings(a3, u3) {
|
|
3012
|
-
var x3, I2, M2, _2, A2 = 1,
|
|
3028
|
+
var x3, I2, M2, _2, A2 = 1, U2 = 0, j2 = 0, B2 = 0, z2 = 0, W2 = 0, G2 = a3.length, H2 = 0, K2 = {}, Y2 = [], X2 = [];
|
|
3013
3029
|
let Q2 = 0;
|
|
3014
|
-
for (; H2 < G2; ) if (";" === a3.charAt(H2)) A2++, H2++,
|
|
3030
|
+
for (; H2 < G2; ) if (";" === a3.charAt(H2)) A2++, H2++, U2 = 0, sortGenerated(X2, Q2), Q2 = X2.length;
|
|
3015
3031
|
else if ("," === a3.charAt(H2)) H2++;
|
|
3016
3032
|
else {
|
|
3017
3033
|
for ((x3 = new Mapping()).generatedLine = A2, M2 = H2; M2 < G2 && !this._charIsMappingSeparator(a3, M2); M2++) ;
|
|
3018
3034
|
for (a3.slice(H2, M2), I2 = []; H2 < M2; ) w2.decode(a3, H2, K2), _2 = K2.value, H2 = K2.rest, I2.push(_2);
|
|
3019
3035
|
if (2 === I2.length) throw new Error("Found a source, but no line and column");
|
|
3020
3036
|
if (3 === I2.length) throw new Error("Found a source and line, but no column");
|
|
3021
|
-
if (x3.generatedColumn =
|
|
3037
|
+
if (x3.generatedColumn = U2 + I2[0], U2 = x3.generatedColumn, I2.length > 1 && (x3.source = z2 + I2[1], z2 += I2[1], x3.originalLine = j2 + I2[2], j2 = x3.originalLine, x3.originalLine += 1, x3.originalColumn = B2 + I2[3], B2 = x3.originalColumn, I2.length > 4 && (x3.name = W2 + I2[4], W2 += I2[4])), X2.push(x3), "number" == typeof x3.originalLine) {
|
|
3022
3038
|
let e3 = x3.source;
|
|
3023
3039
|
for (; Y2.length <= e3; ) Y2.push(null);
|
|
3024
3040
|
null === Y2[e3] && (Y2[e3] = []), Y2[e3].push(x3);
|
|
@@ -3113,10 +3129,10 @@
|
|
|
3113
3129
|
for (var w3 = 0; w3 < this._sections.length; w3++) for (var x3 = this._sections[w3], I2 = x3.consumer._generatedMappings, M2 = 0; M2 < I2.length; M2++) {
|
|
3114
3130
|
var _2 = I2[M2], A2 = x3.consumer._sources.at(_2.source);
|
|
3115
3131
|
null !== A2 && (A2 = e2.computeSourceURL(x3.consumer.sourceRoot, A2, this._sourceMapURL)), this._sources.add(A2), A2 = this._sources.indexOf(A2);
|
|
3116
|
-
var
|
|
3117
|
-
_2.name && (
|
|
3118
|
-
var
|
|
3119
|
-
this.__generatedMappings.push(
|
|
3132
|
+
var U2 = null;
|
|
3133
|
+
_2.name && (U2 = x3.consumer._names.at(_2.name), this._names.add(U2), U2 = this._names.indexOf(U2));
|
|
3134
|
+
var j2 = { source: A2, generatedLine: _2.generatedLine + (x3.generatedOffset.generatedLine - 1), generatedColumn: _2.generatedColumn + (x3.generatedOffset.generatedLine === _2.generatedLine ? x3.generatedOffset.generatedColumn - 1 : 0), originalLine: _2.originalLine, originalColumn: _2.originalColumn, name: U2 };
|
|
3135
|
+
this.__generatedMappings.push(j2), "number" == typeof j2.originalLine && this.__originalMappings.push(j2);
|
|
3120
3136
|
}
|
|
3121
3137
|
k2(this.__generatedMappings, e2.compareByGeneratedPositionsDeflated), k2(this.__originalMappings, e2.compareByOriginalPositions);
|
|
3122
3138
|
}, ln.IndexedSourceMapConsumer = IndexedSourceMapConsumer, ln;
|
|
@@ -3133,22 +3149,22 @@
|
|
|
3133
3149
|
function getNextLine() {
|
|
3134
3150
|
return M2 < I2.length ? I2[M2++] : void 0;
|
|
3135
3151
|
}
|
|
3136
|
-
}, _2 = 1, A2 = 0,
|
|
3152
|
+
}, _2 = 1, A2 = 0, U2 = null;
|
|
3137
3153
|
return w3.eachMapping(function(e4) {
|
|
3138
|
-
if (null !==
|
|
3154
|
+
if (null !== U2) {
|
|
3139
3155
|
if (!(_2 < e4.generatedLine)) {
|
|
3140
3156
|
var a3 = (u3 = I2[M2] || "").substr(0, e4.generatedColumn - A2);
|
|
3141
|
-
return I2[M2] = u3.substr(e4.generatedColumn - A2), A2 = e4.generatedColumn, addMappingWithCode(
|
|
3157
|
+
return I2[M2] = u3.substr(e4.generatedColumn - A2), A2 = e4.generatedColumn, addMappingWithCode(U2, a3), void (U2 = e4);
|
|
3142
3158
|
}
|
|
3143
|
-
addMappingWithCode(
|
|
3159
|
+
addMappingWithCode(U2, shiftNextLine()), _2++, A2 = 0;
|
|
3144
3160
|
}
|
|
3145
3161
|
for (; _2 < e4.generatedLine; ) x2.add(shiftNextLine()), _2++;
|
|
3146
3162
|
if (A2 < e4.generatedColumn) {
|
|
3147
3163
|
var u3 = I2[M2] || "";
|
|
3148
3164
|
x2.add(u3.substr(0, e4.generatedColumn)), I2[M2] = u3.substr(e4.generatedColumn), A2 = e4.generatedColumn;
|
|
3149
3165
|
}
|
|
3150
|
-
|
|
3151
|
-
}, this), M2 < I2.length && (
|
|
3166
|
+
U2 = e4;
|
|
3167
|
+
}, this), M2 < I2.length && (U2 && addMappingWithCode(U2, shiftNextLine()), x2.add(I2.splice(M2).join(""))), w3.sources.forEach(function(e4) {
|
|
3152
3168
|
var u3 = w3.sourceContentFor(e4);
|
|
3153
3169
|
null != u3 && (null != k2 && (e4 = a2.join(k2, e4)), x2.setSourceContent(e4, u3));
|
|
3154
3170
|
}), x2;
|
|
@@ -3202,7 +3218,7 @@
|
|
|
3202
3218
|
var u3 = { code: "", line: 1, column: 0 }, w3 = new e2(a3), k2 = false, x2 = null, I2 = null, M2 = null, _2 = null;
|
|
3203
3219
|
return this.walk(function(e3, a4) {
|
|
3204
3220
|
u3.code += e3, null !== a4.source && null !== a4.line && null !== a4.column ? (x2 === a4.source && I2 === a4.line && M2 === a4.column && _2 === a4.name || w3.addMapping({ source: a4.source, original: { line: a4.line, column: a4.column }, generated: { line: u3.line, column: u3.column }, name: a4.name }), x2 = a4.source, I2 = a4.line, M2 = a4.column, _2 = a4.name, k2 = true) : k2 && (w3.addMapping({ generated: { line: u3.line, column: u3.column } }), x2 = null, k2 = false);
|
|
3205
|
-
for (var A2 = 0,
|
|
3221
|
+
for (var A2 = 0, U2 = e3.length; A2 < U2; A2++) 10 === e3.charCodeAt(A2) ? (u3.line++, u3.column = 0, A2 + 1 === U2 ? (x2 = null, k2 = false) : k2 && w3.addMapping({ source: a4.source, original: { line: a4.line, column: a4.column }, generated: { line: u3.line, column: u3.column }, name: a4.name })) : u3.column++;
|
|
3206
3222
|
}), this.walkSourceContents(function(e3, a4) {
|
|
3207
3223
|
w3.setSourceContent(e3, a4);
|
|
3208
3224
|
}), { code: u3.code, map: w3 };
|
|
@@ -3386,7 +3402,7 @@
|
|
|
3386
3402
|
};
|
|
3387
3403
|
}
|
|
3388
3404
|
}
|
|
3389
|
-
const _n = "@sailfish-rrweb/rrweb/console@1",
|
|
3405
|
+
const _n = "@sailfish-rrweb/rrweb/console@1", Un = Object.freeze(Object.defineProperty({ __proto__: null, PLUGIN_NAME: _n, getRecordConsolePlugin: (e2) => ({ name: _n, observer: R, options: e2 }) }, Symbol.toStringTag, { value: "Module" })), jn = 5, Bn = /* @__PURE__ */ new WeakSet();
|
|
3390
3406
|
let zn = false, Wn = null, Hn = null;
|
|
3391
3407
|
const Vn = "production" !== process.env.NODE_ENV;
|
|
3392
3408
|
function getDisplayName(e2) {
|
|
@@ -3443,7 +3459,7 @@
|
|
|
3443
3459
|
}
|
|
3444
3460
|
function processFiberDOM(e2) {
|
|
3445
3461
|
let a2 = 0;
|
|
3446
|
-
e2.tag ===
|
|
3462
|
+
e2.tag === jn && e2.stateNode instanceof HTMLElement && annotateElement(e2.stateNode, e2) && a2++;
|
|
3447
3463
|
let u2 = e2.child;
|
|
3448
3464
|
for (; u2; ) a2 += processFiberDOM(u2), u2 = u2.sibling;
|
|
3449
3465
|
return a2;
|
|
@@ -3674,9 +3690,9 @@
|
|
|
3674
3690
|
let a3 = "";
|
|
3675
3691
|
return a3 = e4.indexOf("//") > -1 ? e4.split("/").slice(0, 3).join("/") : e4.split("/")[0], a3 = a3.split("?")[0], a3;
|
|
3676
3692
|
})(a2) + M2}${_2})`;
|
|
3677
|
-
const A2 = a2.split("/"),
|
|
3693
|
+
const A2 = a2.split("/"), U2 = M2.split("/");
|
|
3678
3694
|
A2.pop();
|
|
3679
|
-
for (const e4 of
|
|
3695
|
+
for (const e4 of U2) "." !== e4 && (".." === e4 ? A2.pop() : A2.push(e4));
|
|
3680
3696
|
return `url(${_2}${A2.join("/")}${_2})`;
|
|
3681
3697
|
});
|
|
3682
3698
|
}
|
|
@@ -3769,7 +3785,7 @@
|
|
|
3769
3785
|
return false;
|
|
3770
3786
|
}
|
|
3771
3787
|
function Zi(e2, a2) {
|
|
3772
|
-
const { doc: u2, mirror: w2, blockClass: k2, blockSelector: x2, needsMask: I2, inlineStylesheet: M2, maskInputOptions: _2 = {}, maskTextFn: A2, maskInputFn:
|
|
3788
|
+
const { doc: u2, mirror: w2, blockClass: k2, blockSelector: x2, needsMask: I2, inlineStylesheet: M2, maskInputOptions: _2 = {}, maskTextFn: A2, maskInputFn: U2, dataURLOptions: j2 = {}, inlineImages: B2, recordCanvas: z2, keepIframeSrcFn: W2, newlyAddedElement: G2 = false, corruptedRules: H2 } = a2, K2 = (function Hi(e3, a3) {
|
|
3773
3789
|
if (!a3.hasNode(e3)) return;
|
|
3774
3790
|
const u3 = a3.getId(e3);
|
|
3775
3791
|
return 1 === u3 ? void 0 : u3;
|
|
@@ -3781,7 +3797,7 @@
|
|
|
3781
3797
|
return { type: Qn.DocumentType, name: e2.name, publicId: e2.publicId, systemId: e2.systemId, rootId: K2 };
|
|
3782
3798
|
case e2.ELEMENT_NODE:
|
|
3783
3799
|
return (function Ji(e3, a3) {
|
|
3784
|
-
const { doc: u3, blockClass: w3, blockSelector: k3, inlineStylesheet: x3, maskInputOptions: I3 = {}, maskInputFn: M3, dataURLOptions: _3 = {}, inlineImages: A3, recordCanvas:
|
|
3800
|
+
const { doc: u3, blockClass: w3, blockSelector: k3, inlineStylesheet: x3, maskInputOptions: I3 = {}, maskInputFn: M3, dataURLOptions: _3 = {}, inlineImages: A3, recordCanvas: U3, keepIframeSrcFn: j3, newlyAddedElement: B3 = false, rootId: z3, corruptedRules: W3 } = a3, G3 = (function $i(e4, a4, u4) {
|
|
3785
3801
|
try {
|
|
3786
3802
|
if ("string" == typeof a4) {
|
|
3787
3803
|
if (e4.classList.contains(a4)) return true;
|
|
@@ -3835,7 +3851,7 @@
|
|
|
3835
3851
|
K3.value = u5.value, u5.masked && (K3.masked = true);
|
|
3836
3852
|
} else u4 && (K3.checked = u4);
|
|
3837
3853
|
}
|
|
3838
|
-
if ("option" === H3 && (e3.selected && !I3.select ? K3.selected = true : delete K3.selected), "canvas" === H3 &&
|
|
3854
|
+
if ("option" === H3 && (e3.selected && !I3.select ? K3.selected = true : delete K3.selected), "canvas" === H3 && U3) {
|
|
3839
3855
|
if ("2d" === e3.__context) (function Ti(e4) {
|
|
3840
3856
|
const a4 = e4.getContext("2d");
|
|
3841
3857
|
if (!a4) return true;
|
|
@@ -3874,13 +3890,13 @@
|
|
|
3874
3890
|
K3 = { class: K3.class, rr_width: `${a4}px`, rr_height: `${u4}px` };
|
|
3875
3891
|
}
|
|
3876
3892
|
let X2;
|
|
3877
|
-
"iframe" === H3 && !
|
|
3893
|
+
"iframe" === H3 && !j3(K3.src) && (e3.contentDocument || (K3.rr_src = K3.src), delete K3.src);
|
|
3878
3894
|
try {
|
|
3879
3895
|
customElements.get(H3) && (X2 = true);
|
|
3880
3896
|
} catch {
|
|
3881
3897
|
}
|
|
3882
3898
|
return { type: Qn.Element, tagName: H3, attributes: K3, childNodes: [], isSVG: Vi(e3) || void 0, needBlock: G3, rootId: z3, isCustom: X2 };
|
|
3883
|
-
})(e2, { doc: u2, blockClass: k2, blockSelector: x2, inlineStylesheet: M2, maskInputOptions: _2, maskInputFn:
|
|
3899
|
+
})(e2, { doc: u2, blockClass: k2, blockSelector: x2, inlineStylesheet: M2, maskInputOptions: _2, maskInputFn: U2, dataURLOptions: j2, inlineImages: B2, recordCanvas: z2, keepIframeSrcFn: W2, newlyAddedElement: G2, rootId: K2, corruptedRules: H2 });
|
|
3884
3900
|
case e2.TEXT_NODE:
|
|
3885
3901
|
return (function Xi(e3, a3) {
|
|
3886
3902
|
var u3;
|
|
@@ -3909,10 +3925,10 @@
|
|
|
3909
3925
|
return null == e2 ? "" : e2.toLowerCase();
|
|
3910
3926
|
}
|
|
3911
3927
|
function ke(e2, a2) {
|
|
3912
|
-
const { doc: u2, mirror: w2, blockClass: k2, blockSelector: x2, maskTextClass: I2, maskTextSelector: M2, skipChild: _2 = false, inlineStylesheet: A2 = true, maskInputOptions:
|
|
3928
|
+
const { doc: u2, mirror: w2, blockClass: k2, blockSelector: x2, maskTextClass: I2, maskTextSelector: M2, skipChild: _2 = false, inlineStylesheet: A2 = true, maskInputOptions: U2 = {}, maskTextFn: j2, maskInputFn: B2, slimDOMOptions: z2, dataURLOptions: W2 = {}, inlineImages: G2 = false, recordCanvas: H2 = false, onSerialize: K2, onIframeLoad: Y2, iframeLoadTimeout: X2 = 5e3, onStylesheetLoad: Q2, stylesheetLoadTimeout: Z2 = 5e3, keepIframeSrcFn: J2 = () => false, newlyAddedElement: ee2 = false, corruptedRules: te2 } = a2;
|
|
3913
3929
|
let { needsMask: ne2 } = a2, { preserveWhiteSpace: re2 = true } = a2;
|
|
3914
3930
|
ne2 || (ne2 = Nn(e2, I2, M2, void 0 === ne2));
|
|
3915
|
-
const se2 = Zi(e2, { doc: u2, mirror: w2, blockClass: k2, blockSelector: x2, needsMask: ne2, inlineStylesheet: A2, maskInputOptions:
|
|
3931
|
+
const se2 = Zi(e2, { doc: u2, mirror: w2, blockClass: k2, blockSelector: x2, needsMask: ne2, inlineStylesheet: A2, maskInputOptions: U2, maskTextFn: j2, maskInputFn: B2, dataURLOptions: W2, inlineImages: G2, recordCanvas: H2, keepIframeSrcFn: J2, newlyAddedElement: ee2, corruptedRules: te2 });
|
|
3916
3932
|
if (!se2) return console.warn(e2, "not serialized"), null;
|
|
3917
3933
|
let le2;
|
|
3918
3934
|
le2 = w2.hasNode(e2) ? w2.getId(e2) : (function Ki(e3, a3) {
|
|
@@ -3929,7 +3945,7 @@
|
|
|
3929
3945
|
}
|
|
3930
3946
|
if ((ce2.type === Qn.Document || ce2.type === Qn.Element) && ue2) {
|
|
3931
3947
|
z2.headWhitespace && ce2.type === Qn.Element && "head" === ce2.tagName && (re2 = false);
|
|
3932
|
-
const a3 = { doc: u2, mirror: w2, blockClass: k2, blockSelector: x2, needsMask: ne2, maskTextClass: I2, maskTextSelector: M2, skipChild: _2, inlineStylesheet: A2, maskInputOptions:
|
|
3948
|
+
const a3 = { doc: u2, mirror: w2, blockClass: k2, blockSelector: x2, needsMask: ne2, maskTextClass: I2, maskTextSelector: M2, skipChild: _2, inlineStylesheet: A2, maskInputOptions: U2, maskTextFn: j2, maskInputFn: B2, slimDOMOptions: z2, dataURLOptions: W2, inlineImages: G2, recordCanvas: H2, preserveWhiteSpace: re2, onSerialize: K2, onIframeLoad: Y2, iframeLoadTimeout: X2, onStylesheetLoad: Q2, stylesheetLoadTimeout: Z2, keepIframeSrcFn: J2, corruptedRules: te2 };
|
|
3933
3949
|
if (ce2.type !== Qn.Element || "textarea" !== ce2.tagName || void 0 === ce2.attributes.value) for (const u3 of Array.from(e2.childNodes)) {
|
|
3934
3950
|
const e3 = ke(u3, a3);
|
|
3935
3951
|
e3 && ce2.childNodes.push(e3);
|
|
@@ -3962,7 +3978,7 @@
|
|
|
3962
3978
|
})(e2, () => {
|
|
3963
3979
|
const a3 = e2.contentDocument;
|
|
3964
3980
|
if (a3 && Y2) {
|
|
3965
|
-
const u3 = ke(a3, { doc: a3, mirror: w2, blockClass: k2, blockSelector: x2, needsMask: ne2, maskTextClass: I2, maskTextSelector: M2, skipChild: false, inlineStylesheet: A2, maskInputOptions:
|
|
3981
|
+
const u3 = ke(a3, { doc: a3, mirror: w2, blockClass: k2, blockSelector: x2, needsMask: ne2, maskTextClass: I2, maskTextSelector: M2, skipChild: false, inlineStylesheet: A2, maskInputOptions: U2, maskTextFn: j2, maskInputFn: B2, slimDOMOptions: z2, dataURLOptions: W2, inlineImages: G2, recordCanvas: H2, preserveWhiteSpace: re2, onSerialize: K2, onIframeLoad: Y2, iframeLoadTimeout: X2, onStylesheetLoad: Q2, stylesheetLoadTimeout: Z2, keepIframeSrcFn: J2 });
|
|
3966
3982
|
u3 && Y2(e2, u3);
|
|
3967
3983
|
}
|
|
3968
3984
|
}, X2), ce2.type === Qn.Element && "link" === ce2.tagName && "string" == typeof ce2.attributes.rel && ("stylesheet" === ce2.attributes.rel || "preload" === ce2.attributes.rel && "string" == typeof ce2.attributes.href && "css" === Ln(ce2.attributes.href)) && (function Yi(e3, a3, u3) {
|
|
@@ -3981,7 +3997,7 @@
|
|
|
3981
3997
|
});
|
|
3982
3998
|
})(e2, () => {
|
|
3983
3999
|
if (Q2) {
|
|
3984
|
-
const a3 = ke(e2, { doc: u2, mirror: w2, blockClass: k2, blockSelector: x2, needsMask: ne2, maskTextClass: I2, maskTextSelector: M2, skipChild: false, inlineStylesheet: A2, maskInputOptions:
|
|
4000
|
+
const a3 = ke(e2, { doc: u2, mirror: w2, blockClass: k2, blockSelector: x2, needsMask: ne2, maskTextClass: I2, maskTextSelector: M2, skipChild: false, inlineStylesheet: A2, maskInputOptions: U2, maskTextFn: j2, maskInputFn: B2, slimDOMOptions: z2, dataURLOptions: W2, inlineImages: G2, recordCanvas: H2, preserveWhiteSpace: re2, onSerialize: K2, onIframeLoad: Y2, iframeLoadTimeout: X2, onStylesheetLoad: Q2, stylesheetLoadTimeout: Z2, keepIframeSrcFn: J2 });
|
|
3985
4001
|
a3 && Q2(e2, a3);
|
|
3986
4002
|
}
|
|
3987
4003
|
}, Z2), ce2;
|
|
@@ -4955,7 +4971,7 @@
|
|
|
4955
4971
|
};
|
|
4956
4972
|
const Ys = /[\t\n\f\r "#'()/;[\\\]{}]/g, Xs = /[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g, Zs = /.[\r\n"'(/\\]/, Js = /[\da-f]/i;
|
|
4957
4973
|
let ei = po, ti = $r, ni = zr, ri = fs, oi = vs, tl = function(e2, a2 = {}) {
|
|
4958
|
-
let u2, w2, k2, x2, I2, M2, _2, A2,
|
|
4974
|
+
let u2, w2, k2, x2, I2, M2, _2, A2, U2, j2, B2 = e2.css.valueOf(), z2 = a2.ignoreErrors, W2 = B2.length, G2 = 0, H2 = [], K2 = [];
|
|
4959
4975
|
function v(a3) {
|
|
4960
4976
|
throw e2.error("Unclosed " + a3, G2);
|
|
4961
4977
|
}
|
|
@@ -4991,7 +5007,7 @@
|
|
|
4991
5007
|
break;
|
|
4992
5008
|
}
|
|
4993
5009
|
case 40:
|
|
4994
|
-
if (
|
|
5010
|
+
if (j2 = H2.length ? H2.pop()[1] : "", U2 = B2.charCodeAt(G2 + 1), "url" === j2 && 39 !== U2 && 34 !== U2 && 32 !== U2 && 10 !== U2 && 9 !== U2 && 12 !== U2 && 13 !== U2) {
|
|
4995
5011
|
x2 = G2;
|
|
4996
5012
|
do {
|
|
4997
5013
|
if (_2 = false, x2 = B2.indexOf(")", x2 + 1), -1 === x2) {
|
|
@@ -5235,9 +5251,9 @@
|
|
|
5235
5251
|
precheckMissedSemicolon() {
|
|
5236
5252
|
}
|
|
5237
5253
|
raw(e2, a2, u2, w2) {
|
|
5238
|
-
let k2, x2, I2, M2, _2 = u2.length, A2 = "",
|
|
5239
|
-
for (let e3 = 0; e3 < _2; e3 += 1) k2 = u2[e3], x2 = k2[0], "space" !== x2 || e3 !== _2 - 1 || w2 ? "comment" === x2 ? (M2 = u2[e3 - 1] ? u2[e3 - 1][0] : "empty", I2 = u2[e3 + 1] ? u2[e3 + 1][0] : "empty", si[M2] || si[I2] || "," === A2.slice(-1) ?
|
|
5240
|
-
if (!
|
|
5254
|
+
let k2, x2, I2, M2, _2 = u2.length, A2 = "", U2 = true;
|
|
5255
|
+
for (let e3 = 0; e3 < _2; e3 += 1) k2 = u2[e3], x2 = k2[0], "space" !== x2 || e3 !== _2 - 1 || w2 ? "comment" === x2 ? (M2 = u2[e3 - 1] ? u2[e3 - 1][0] : "empty", I2 = u2[e3 + 1] ? u2[e3 + 1][0] : "empty", si[M2] || si[I2] || "," === A2.slice(-1) ? U2 = false : A2 += k2[1]) : A2 += k2[1] : U2 = false;
|
|
5256
|
+
if (!U2) {
|
|
5241
5257
|
let w3 = u2.reduce((e3, a3) => e3 + a3[1], "");
|
|
5242
5258
|
e2.raws[a2] = { raw: w3, value: A2 };
|
|
5243
5259
|
}
|
|
@@ -5686,9 +5702,9 @@
|
|
|
5686
5702
|
}, N.stringify = Pa, N.parse = La, N.fromJSON = Ma, N.list = Ta, N.comment = (e2) => new va(e2), N.atRule = (e2) => new ba(e2), N.decl = (e2) => new xa(e2), N.rule = (e2) => new Fa(e2), N.root = (e2) => new Na(e2), N.document = (e2) => new Ia(e2), N.CssSyntaxError = Ca, N.Declaration = xa, N.Container = ka, N.Processor = Ra, N.Document = Ia, N.Comment = va, N.Warning = Da, N.AtRule = ba, N.Result = Aa, N.Input = Ea, N.Rule = Fa, N.Root = Na, N.Node = Oa, _a.registerPostcss(N);
|
|
5687
5703
|
var $a = N;
|
|
5688
5704
|
N.default = N;
|
|
5689
|
-
const
|
|
5690
|
-
|
|
5691
|
-
var
|
|
5705
|
+
const Ua = qi($a);
|
|
5706
|
+
Ua.stringify, Ua.fromJSON, Ua.plugin, Ua.parse, Ua.list, Ua.document, Ua.comment, Ua.atRule, Ua.rule, Ua.decl, Ua.root, Ua.CssSyntaxError, Ua.Declaration, Ua.Container, Ua.Processor, Ua.Document, Ua.Comment, Ua.Warning, Ua.AtRule, Ua.Result, Ua.Input, Ua.Rule, Ua.Root, Ua.Node;
|
|
5707
|
+
var ja = ((e2) => (e2[e2.DomContentLoaded = 0] = "DomContentLoaded", e2[e2.Load = 1] = "Load", e2[e2.FullSnapshot = 2] = "FullSnapshot", e2[e2.IncrementalSnapshot = 3] = "IncrementalSnapshot", e2[e2.Meta = 4] = "Meta", e2[e2.Custom = 5] = "Custom", e2[e2.Plugin = 6] = "Plugin", e2[e2.Device = 24] = "Device", e2[e2.SailfishCustom = 25] = "SailfishCustom", e2))(ja || {}), Ba = ((e2) => (e2[e2.Mutation = 0] = "Mutation", e2[e2.MouseMove = 1] = "MouseMove", e2[e2.MouseInteraction = 2] = "MouseInteraction", e2[e2.Scroll = 3] = "Scroll", e2[e2.ViewportResize = 4] = "ViewportResize", e2[e2.Input = 5] = "Input", e2[e2.TouchMove = 6] = "TouchMove", e2[e2.MediaInteraction = 7] = "MediaInteraction", e2[e2.StyleSheetRule = 8] = "StyleSheetRule", e2[e2.CanvasMutation = 9] = "CanvasMutation", e2[e2.Font = 10] = "Font", e2[e2.Log = 11] = "Log", e2[e2.Drag = 12] = "Drag", e2[e2.StyleDeclaration = 13] = "StyleDeclaration", e2[e2.Selection = 14] = "Selection", e2[e2.AdoptedStyleSheet = 15] = "AdoptedStyleSheet", e2[e2.CustomElement = 16] = "CustomElement", e2[e2.Typing = 17] = "Typing", e2))(Ba || {}), za = ((e2) => (e2.Append = "append", e2.Insert = "insert", e2.Delete = "delete", e2.Replace = "replace", e2))(za || {}), Wa = ((e2) => (e2[e2.MouseUp = 0] = "MouseUp", e2[e2.MouseDown = 1] = "MouseDown", e2[e2.Click = 2] = "Click", e2[e2.ContextMenu = 3] = "ContextMenu", e2[e2.DblClick = 4] = "DblClick", e2[e2.Focus = 5] = "Focus", e2[e2.Blur = 6] = "Blur", e2[e2.TouchStart = 7] = "TouchStart", e2[e2.TouchMove_Departed = 8] = "TouchMove_Departed", e2[e2.TouchEnd = 9] = "TouchEnd", e2[e2.TouchCancel = 10] = "TouchCancel", e2))(Wa || {}), Ga = ((e2) => (e2[e2.Mouse = 0] = "Mouse", e2[e2.Pen = 1] = "Pen", e2[e2.Touch = 2] = "Touch", e2))(Ga || {}), Ha = ((e2) => (e2[e2["2D"] = 0] = "2D", e2[e2.WebGL = 1] = "WebGL", e2[e2.WebGL2 = 2] = "WebGL2", e2))(Ha || {}), Va = ((e2) => (e2[e2.Play = 0] = "Play", e2[e2.Pause = 1] = "Pause", e2[e2.Seeked = 2] = "Seeked", e2[e2.VolumeChange = 3] = "VolumeChange", e2[e2.RateChange = 4] = "RateChange", e2))(Va || {});
|
|
5692
5708
|
function V(e2, a2, u2 = document) {
|
|
5693
5709
|
const w2 = { capture: true, passive: true };
|
|
5694
5710
|
return u2.addEventListener(e2, a2, w2), () => u2.removeEventListener(e2, a2, w2);
|
|
@@ -5887,20 +5903,20 @@
|
|
|
5887
5903
|
transformCrossOriginEvent(e2, a2) {
|
|
5888
5904
|
var u2;
|
|
5889
5905
|
switch (a2.type) {
|
|
5890
|
-
case
|
|
5906
|
+
case ja.FullSnapshot: {
|
|
5891
5907
|
this.crossOriginIframeMirror.reset(e2), this.crossOriginIframeStyleMirror.reset(e2), this.replaceIdOnNode(a2.data.node, e2);
|
|
5892
5908
|
const u3 = a2.data.node.id;
|
|
5893
|
-
return this.crossOriginIframeRootIdMap.set(e2, u3), this.patchRootIdOnNode(a2.data.node, u3), { timestamp: a2.timestamp, type:
|
|
5909
|
+
return this.crossOriginIframeRootIdMap.set(e2, u3), this.patchRootIdOnNode(a2.data.node, u3), { timestamp: a2.timestamp, type: ja.IncrementalSnapshot, data: { source: Ba.Mutation, adds: [{ parentId: this.mirror.getId(e2), nextId: null, node: a2.data.node }], removes: [], texts: [], attributes: [], isAttachIframe: true } };
|
|
5894
5910
|
}
|
|
5895
|
-
case
|
|
5896
|
-
case
|
|
5897
|
-
case
|
|
5911
|
+
case ja.Meta:
|
|
5912
|
+
case ja.Load:
|
|
5913
|
+
case ja.DomContentLoaded:
|
|
5898
5914
|
return false;
|
|
5899
|
-
case
|
|
5915
|
+
case ja.Plugin:
|
|
5900
5916
|
return a2;
|
|
5901
|
-
case
|
|
5917
|
+
case ja.Custom:
|
|
5902
5918
|
return this.replaceIds(a2.data.payload, e2, ["id", "parentId", "previousId", "nextId"]), a2;
|
|
5903
|
-
case
|
|
5919
|
+
case ja.IncrementalSnapshot:
|
|
5904
5920
|
switch (a2.data.source) {
|
|
5905
5921
|
case Ba.Mutation:
|
|
5906
5922
|
return a2.data.adds.forEach((a3) => {
|
|
@@ -6084,11 +6100,11 @@
|
|
|
6084
6100
|
const I2 = Math.min(u4.length, w3.length);
|
|
6085
6101
|
for (; x2 < I2 && u4[x2] === w3[x2]; ) x2++;
|
|
6086
6102
|
let M2 = 0;
|
|
6087
|
-
const _2 = u4.length - x2, A2 = w3.length - x2,
|
|
6088
|
-
for (; M2 <
|
|
6089
|
-
const
|
|
6103
|
+
const _2 = u4.length - x2, A2 = w3.length - x2, U2 = Math.min(_2, A2);
|
|
6104
|
+
for (; M2 < U2 && u4[u4.length - 1 - M2] === w3[w3.length - 1 - M2]; ) M2++;
|
|
6105
|
+
const j2 = u4.length - x2 - M2, B2 = w3.length - x2 - M2, z2 = w3.slice(x2, w3.length - M2);
|
|
6090
6106
|
let W2;
|
|
6091
|
-
return W2 = 0 ===
|
|
6107
|
+
return W2 = 0 === j2 && B2 > 0 ? { op: za.Insert, pos: x2, text: z2 } : j2 > 0 && 0 === B2 ? { op: za.Delete, pos: x2, length: j2 } : { op: za.Replace, pos: x2, deleteCount: j2, text: z2 }, { delta: W2, deltaSize: mt({ delta: W2 }), fullTextSize: k3 };
|
|
6092
6108
|
})(e3.oldValue, e3.value);
|
|
6093
6109
|
if ((function Ql(e4) {
|
|
6094
6110
|
return !!e4.delta && e4.deltaSize < 0.8 * e4.fullTextSize;
|
|
@@ -6261,10 +6277,10 @@
|
|
|
6261
6277
|
M3 === Ga.Touch ? Wa[a3] === Wa.MouseDown ? A3 = "TouchStart" : Wa[a3] === Wa.MouseUp && (A3 = "TouchEnd") : Ga.Pen;
|
|
6262
6278
|
} else Us(x4) && (M3 = Ga.Touch);
|
|
6263
6279
|
null !== M3 ? (_2 = M3, (A3.startsWith("Touch") && M3 === Ga.Touch || A3.startsWith("Mouse") && M3 === Ga.Mouse) && (M3 = null)) : Wa[a3] === Wa.Click && (M3 = _2, _2 = null);
|
|
6264
|
-
const
|
|
6265
|
-
if (!
|
|
6266
|
-
const
|
|
6267
|
-
E(e2)({ type: Wa[A3], id:
|
|
6280
|
+
const U2 = Us(x4) ? x4.changedTouches[0] : x4;
|
|
6281
|
+
if (!U2) return;
|
|
6282
|
+
const j2 = u2.getId(I4), { clientX: B2, clientY: z2 } = U2;
|
|
6283
|
+
E(e2)({ type: Wa[A3], id: j2, x: B2, y: z2, ...null !== M3 && { pointerType: M3 } });
|
|
6268
6284
|
})(x3);
|
|
6269
6285
|
if (window.PointerEvent) switch (Wa[x3]) {
|
|
6270
6286
|
case Wa.MouseDown:
|
|
@@ -6368,7 +6384,7 @@
|
|
|
6368
6384
|
};
|
|
6369
6385
|
let w2;
|
|
6370
6386
|
!(function mu(e3, a3) {
|
|
6371
|
-
const { mutationCb: u3, mousemoveCb: w3, mouseInteractionCb: k3, scrollCb: x3, viewportResizeCb: I3, inputCb: M3, typingCb: _3, deviceChangeCb: A3, mediaInteractionCb:
|
|
6387
|
+
const { mutationCb: u3, mousemoveCb: w3, mouseInteractionCb: k3, scrollCb: x3, viewportResizeCb: I3, inputCb: M3, typingCb: _3, deviceChangeCb: A3, mediaInteractionCb: U3, styleSheetRuleCb: j3, styleDeclarationCb: B3, canvasMutationCb: z3, fontCb: W3, selectionCb: G2, customElementCb: H2 } = e3;
|
|
6372
6388
|
e3.mutationCb = (...e4) => {
|
|
6373
6389
|
a3.mutation && a3.mutation(...e4), u3(...e4);
|
|
6374
6390
|
}, e3.mousemoveCb = (...e4) => {
|
|
@@ -6386,9 +6402,9 @@
|
|
|
6386
6402
|
}, e3.deviceChangeCb = (...e4) => {
|
|
6387
6403
|
a3.device && a3.device(...e4), A3(...e4);
|
|
6388
6404
|
}, e3.mediaInteractionCb = (...e4) => {
|
|
6389
|
-
a3.mediaInteaction && a3.mediaInteaction(...e4),
|
|
6405
|
+
a3.mediaInteaction && a3.mediaInteaction(...e4), U3(...e4);
|
|
6390
6406
|
}, e3.styleSheetRuleCb = (...e4) => {
|
|
6391
|
-
a3.styleSheetRule && a3.styleSheetRule(...e4),
|
|
6407
|
+
a3.styleSheetRule && a3.styleSheetRule(...e4), j3(...e4);
|
|
6392
6408
|
}, e3.styleDeclarationCb = (...e4) => {
|
|
6393
6409
|
a3.styleDeclaration && a3.styleDeclaration(...e4), B3(...e4);
|
|
6394
6410
|
}, e3.canvasMutationCb = (...e4) => {
|
|
@@ -6412,9 +6428,9 @@
|
|
|
6412
6428
|
}), x3), A3 = E(He(E((e4) => {
|
|
6413
6429
|
const a4 = st(e4), { clientX: u4, clientY: k4 } = Us(e4) ? e4.changedTouches[0] : e4;
|
|
6414
6430
|
I3 || (I3 = Xa()), M3.push({ x: u4, y: k4, id: w3.getId(a4), timeOffset: Xa() - I3 }), _3(typeof DragEvent < "u" && e4 instanceof DragEvent ? Ba.Drag : e4 instanceof MouseEvent ? Ba.MouseMove : Ba.TouchMove);
|
|
6415
|
-
}), k3, { trailing: false })),
|
|
6431
|
+
}), k3, { trailing: false })), U3 = [V("mousemove", A3, u3), V("touchmove", A3, u3), V("drag", A3, u3)];
|
|
6416
6432
|
return E(() => {
|
|
6417
|
-
|
|
6433
|
+
U3.forEach((e4) => e4());
|
|
6418
6434
|
});
|
|
6419
6435
|
})(e2), x2 = ru(e2), I2 = Lo(e2), M2 = (function nu({ viewportResizeCb: e3 }, { win: a3 }) {
|
|
6420
6436
|
let u3 = -1, w3 = -1;
|
|
@@ -6422,19 +6438,19 @@
|
|
|
6422
6438
|
const a4 = So(), k3 = vo();
|
|
6423
6439
|
(u3 !== a4 || w3 !== k3) && (e3({ width: Number(k3), height: Number(a4) }), u3 = a4, w3 = k3);
|
|
6424
6440
|
}), 200)), a3);
|
|
6425
|
-
})(e2, { win: u2 }), _2 = (function iu({ inputCb: e3, doc: a3, mirror: u3, blockClass: w3, blockSelector: k3, ignoreClass: x3, ignoreSelector: I3, maskInputOptions: M3, maskInputFn: _3, sampling: A3, userTriggeredOnInput:
|
|
6441
|
+
})(e2, { win: u2 }), _2 = (function iu({ inputCb: e3, doc: a3, mirror: u3, blockClass: w3, blockSelector: k3, ignoreClass: x3, ignoreSelector: I3, maskInputOptions: M3, maskInputFn: _3, sampling: A3, userTriggeredOnInput: U3 }) {
|
|
6426
6442
|
function p(e4) {
|
|
6427
6443
|
let u4 = st(e4);
|
|
6428
|
-
const A4 = e4.isTrusted,
|
|
6429
|
-
if (u4 && "OPTION" ===
|
|
6444
|
+
const A4 = e4.isTrusted, j4 = u4 && u4.tagName;
|
|
6445
|
+
if (u4 && "OPTION" === j4 && (u4 = u4.parentElement), !u4 || !j4 || Za.indexOf(j4) < 0 || $(u4, w3, k3, true) || u4.classList.contains(x3) || I3 && u4.matches(I3)) return;
|
|
6430
6446
|
let B4 = u4.value, z4 = false;
|
|
6431
|
-
const W4 = Ht(u4) || "", { value: G2, masked: H2 } = Zt({ element: u4, maskInputOptions: M3, tagName:
|
|
6432
|
-
B4 = G2, ("radio" === W4 || "checkbox" === W4) && (z4 = u4.checked), m2(u4,
|
|
6447
|
+
const W4 = Ht(u4) || "", { value: G2, masked: H2 } = Zt({ element: u4, maskInputOptions: M3, tagName: j4, type: W4, value: B4, maskInputFn: _3 });
|
|
6448
|
+
B4 = G2, ("radio" === W4 || "checkbox" === W4) && (z4 = u4.checked), m2(u4, U3 ? { text: B4, isChecked: z4, masked: H2, userTriggered: A4 } : { text: B4, isChecked: z4, masked: H2 });
|
|
6433
6449
|
const K2 = u4.name;
|
|
6434
6450
|
"radio" === W4 && K2 && z4 && a3.querySelectorAll(`input[type='radio'][name='${K2}']`).forEach((e5) => {
|
|
6435
6451
|
if (e5 !== u4) {
|
|
6436
6452
|
const a4 = e5.value;
|
|
6437
|
-
m2(e5,
|
|
6453
|
+
m2(e5, U3 ? { text: a4, isChecked: !z4, masked: H2, userTriggered: false } : { text: a4, isChecked: !z4, masked: H2 });
|
|
6438
6454
|
}
|
|
6439
6455
|
});
|
|
6440
6456
|
}
|
|
@@ -6446,15 +6462,15 @@
|
|
|
6446
6462
|
E(e3)({ ...w4, id: k5 });
|
|
6447
6463
|
}
|
|
6448
6464
|
}
|
|
6449
|
-
const
|
|
6465
|
+
const j3 = ("last" === A3.input ? ["change"] : ["input", "change"]).map((e4) => V(e4, E(p), a3)), B3 = a3.defaultView;
|
|
6450
6466
|
if (!B3) return () => {
|
|
6451
|
-
|
|
6467
|
+
j3.forEach((e4) => e4());
|
|
6452
6468
|
};
|
|
6453
6469
|
const z3 = B3.Object.getOwnPropertyDescriptor(B3.HTMLInputElement.prototype, "value"), W3 = [[B3.HTMLInputElement.prototype, "value"], [B3.HTMLInputElement.prototype, "checked"], [B3.HTMLSelectElement.prototype, "value"], [B3.HTMLTextAreaElement.prototype, "value"], [B3.HTMLSelectElement.prototype, "selectedIndex"], [B3.HTMLOptionElement.prototype, "selected"]];
|
|
6454
|
-
return z3 && z3.set &&
|
|
6470
|
+
return z3 && z3.set && j3.push(...W3.map((e4) => ts(e4[0], e4[1], { set() {
|
|
6455
6471
|
E(p)({ target: this, isTrusted: false });
|
|
6456
6472
|
} }, false, B3))), E(() => {
|
|
6457
|
-
|
|
6473
|
+
j3.forEach((e4) => e4());
|
|
6458
6474
|
});
|
|
6459
6475
|
})(e2), A2 = (function au({ typingCb: e3, doc: a3, maskInputOptions: u3, maskInputFn: w3 }) {
|
|
6460
6476
|
const k3 = V("keydown", (a4) => {
|
|
@@ -6488,12 +6504,12 @@
|
|
|
6488
6504
|
return () => {
|
|
6489
6505
|
k3();
|
|
6490
6506
|
};
|
|
6491
|
-
})(e2),
|
|
6507
|
+
})(e2), U2 = lu(e2), j2 = (function hu({ mediaInteractionCb: e3, blockClass: a3, blockSelector: u3, mirror: w3, sampling: k3, doc: x3 }) {
|
|
6492
6508
|
const I3 = E((x4) => He(E((k4) => {
|
|
6493
6509
|
const I4 = st(k4);
|
|
6494
6510
|
if (!I4 || $(I4, a3, u3, true)) return;
|
|
6495
|
-
const { currentTime: M4, volume: _3, muted: A3, playbackRate:
|
|
6496
|
-
e3({ type: x4, id: w3.getId(I4), currentTime: M4, volume: _3, muted: A3, playbackRate:
|
|
6511
|
+
const { currentTime: M4, volume: _3, muted: A3, playbackRate: U3, loop: j3 } = I4;
|
|
6512
|
+
e3({ type: x4, id: w3.getId(I4), currentTime: M4, volume: _3, muted: A3, playbackRate: U3, loop: j3 });
|
|
6497
6513
|
}), k3.media || 500)), M3 = [V("play", I3(Va.Play), x3), V("pause", I3(Va.Pause), x3), V("seeked", I3(Va.Seeked), x3), V("volumechange", I3(Va.VolumeChange), x3), V("ratechange", I3(Va.RateChange), x3)];
|
|
6498
6514
|
return E(() => {
|
|
6499
6515
|
M3.forEach((e4) => e4());
|
|
@@ -6544,18 +6560,18 @@
|
|
|
6544
6560
|
const x3 = k3.CSSStyleDeclaration.prototype.setProperty;
|
|
6545
6561
|
k3.CSSStyleDeclaration.prototype.setProperty = new Proxy(x3, { apply: E((k4, I4, M3) => {
|
|
6546
6562
|
var _3;
|
|
6547
|
-
const [A3,
|
|
6548
|
-
if (u3.has(A3)) return x3.apply(I4, [A3,
|
|
6563
|
+
const [A3, U3, j3] = M3;
|
|
6564
|
+
if (u3.has(A3)) return x3.apply(I4, [A3, U3, j3]);
|
|
6549
6565
|
const { id: B3, styleId: z3 } = de(null == (_3 = I4.parentRule) ? void 0 : _3.parentStyleSheet, a3, w3.styleMirror);
|
|
6550
|
-
return (B3 && -1 !== B3 || z3 && -1 !== z3) && e3({ id: B3, styleId: z3, set: { property: A3, value:
|
|
6566
|
+
return (B3 && -1 !== B3 || z3 && -1 !== z3) && e3({ id: B3, styleId: z3, set: { property: A3, value: U3, priority: j3 }, index: jt(I4.parentRule) }), k4.apply(I4, M3);
|
|
6551
6567
|
}) });
|
|
6552
6568
|
const I3 = k3.CSSStyleDeclaration.prototype.removeProperty;
|
|
6553
6569
|
return k3.CSSStyleDeclaration.prototype.removeProperty = new Proxy(I3, { apply: E((k4, x4, M3) => {
|
|
6554
6570
|
var _3;
|
|
6555
6571
|
const [A3] = M3;
|
|
6556
6572
|
if (u3.has(A3)) return I3.apply(x4, [A3]);
|
|
6557
|
-
const { id:
|
|
6558
|
-
return (
|
|
6573
|
+
const { id: U3, styleId: j3 } = de(null == (_3 = x4.parentRule) ? void 0 : _3.parentStyleSheet, a3, w3.styleMirror);
|
|
6574
|
+
return (U3 && -1 !== U3 || j3 && -1 !== j3) && e3({ id: U3, styleId: j3, remove: { property: A3 }, index: jt(x4.parentRule) }), k4.apply(x4, M3);
|
|
6559
6575
|
}) }), E(() => {
|
|
6560
6576
|
k3.CSSStyleDeclaration.prototype.setProperty = x3, k3.CSSStyleDeclaration.prototype.removeProperty = I3;
|
|
6561
6577
|
});
|
|
@@ -6593,8 +6609,8 @@
|
|
|
6593
6609
|
I3 = e4.isCollapsed || false;
|
|
6594
6610
|
const M4 = [], _3 = e4.rangeCount || 0;
|
|
6595
6611
|
for (let a4 = 0; a4 < _3; a4++) {
|
|
6596
|
-
const x4 = e4.getRangeAt(a4), { startContainer: I4, startOffset: _4, endContainer: A3, endOffset:
|
|
6597
|
-
$(I4, w3, k3, true) || $(A3, w3, k3, true) || M4.push({ start: u3.getId(I4), startOffset: _4, end: u3.getId(A3), endOffset:
|
|
6612
|
+
const x4 = e4.getRangeAt(a4), { startContainer: I4, startOffset: _4, endContainer: A3, endOffset: U3 } = x4;
|
|
6613
|
+
$(I4, w3, k3, true) || $(A3, w3, k3, true) || M4.push({ start: u3.getId(I4), startOffset: _4, end: u3.getId(A3), endOffset: U3 });
|
|
6598
6614
|
}
|
|
6599
6615
|
x3({ ranges: M4 });
|
|
6600
6616
|
});
|
|
@@ -6615,7 +6631,7 @@
|
|
|
6615
6631
|
})(e2), W2 = [];
|
|
6616
6632
|
for (const a3 of e2.plugins) W2.push(a3.observer(a3.callback, u2, a3.options));
|
|
6617
6633
|
return E(() => {
|
|
6618
|
-
Qa.forEach((e3) => e3.reset()), null == w2 || w2.disconnect(), k2(), x2(), I2(), M2(), _2(), A2(),
|
|
6634
|
+
Qa.forEach((e3) => e3.reset()), null == w2 || w2.disconnect(), k2(), x2(), I2(), M2(), _2(), A2(), j2(), m(), f(), g2(), h(), B2(), z2(), U2(), W2.forEach((e3) => e3());
|
|
6619
6635
|
});
|
|
6620
6636
|
}
|
|
6621
6637
|
function gt(e2) {
|
|
@@ -6758,9 +6774,9 @@
|
|
|
6758
6774
|
this.mutationCb({ id: a3, type: Ha["2D"], commands: [{ property: "clearRect", args: [0, 0, k3, x3] }, { property: "drawImage", args: [{ rr_type: "ImageBitmap", args: [{ rr_type: "Blob", data: [{ rr_type: "ArrayBuffer", base64: u3 }], type: w3 }] }, 0, 0] }] });
|
|
6759
6775
|
};
|
|
6760
6776
|
const _2 = 1e3 / e2;
|
|
6761
|
-
let A2,
|
|
6777
|
+
let A2, U2 = 0;
|
|
6762
6778
|
const f = (e3) => {
|
|
6763
|
-
|
|
6779
|
+
U2 && e3 - U2 < _2 || (U2 = e3, (() => {
|
|
6764
6780
|
const e4 = [];
|
|
6765
6781
|
return a2.document.querySelectorAll("canvas").forEach((a3) => {
|
|
6766
6782
|
$(a3, u2, w2, true) || e4.push(a3);
|
|
@@ -6935,7 +6951,7 @@
|
|
|
6935
6951
|
return new Zn();
|
|
6936
6952
|
})();
|
|
6937
6953
|
function he(e2 = {}) {
|
|
6938
|
-
const { emit: a2, checkoutEveryNms: u2, checkoutEveryNth: w2, blockClass: k2 = "rr-block", blockSelector: x2 = null, ignoreClass: I2 = "rr-ignore", ignoreSelector: M2 = null, maskTextClass: _2 = "rr-mask", maskTextSelector: A2 = null, inlineStylesheet:
|
|
6954
|
+
const { emit: a2, checkoutEveryNms: u2, checkoutEveryNth: w2, blockClass: k2 = "rr-block", blockSelector: x2 = null, ignoreClass: I2 = "rr-ignore", ignoreSelector: M2 = null, maskTextClass: _2 = "rr-mask", maskTextSelector: A2 = null, inlineStylesheet: U2 = true, maskAllInputs: j2, maskInputOptions: B2, slimDOMOptions: z2, maskInputFn: W2, maskTextFn: G2, hooks: H2, packFn: K2, sampling: Y2 = {}, dataURLOptions: X2 = {}, mousemoveWait: Q2, recordDOM: Z2 = true, recordCanvas: J2 = false, recordCrossOriginIframes: ee2 = false, recordAfter: te2 = "DOMContentLoaded" === e2.recordAfter ? e2.recordAfter : "load", userTriggeredOnInput: ne2 = false, collectFonts: re2 = false, inlineImages: se2 = false, plugins: le2, keepIframeSrcFn: ce2 = () => false, ignoreCSSAttributes: ue2 = /* @__PURE__ */ new Set([]), errorHandler: pe2 } = e2;
|
|
6939
6955
|
!(function Hl(e3) {
|
|
6940
6956
|
Ya = e3;
|
|
6941
6957
|
})(pe2);
|
|
@@ -6950,7 +6966,7 @@
|
|
|
6950
6966
|
if (!fe2 && !me2) return () => {
|
|
6951
6967
|
};
|
|
6952
6968
|
void 0 !== Q2 && void 0 === Y2.mousemove && (Y2.mousemove = Q2), fl.reset();
|
|
6953
|
-
const ye2 = true ===
|
|
6969
|
+
const ye2 = true === j2 ? { color: true, date: true, "datetime-local": true, email: true, month: true, number: true, range: true, search: true, tel: true, text: true, time: true, url: true, week: true, textarea: true, select: true, password: true } : void 0 !== B2 ? B2 : { password: true }, we2 = true === z2 || "all" === z2 ? { script: true, comment: true, headFavicon: true, headWhitespace: true, headMetaSocial: true, headMetaRobots: true, headMetaHttpEquiv: true, headMetaVerification: true, headMetaAuthorship: "all" === z2, headMetaDescKeywords: "all" === z2, headTitleMutations: "all" === z2 } : z2 || {};
|
|
6954
6970
|
!(function $l(e3 = window) {
|
|
6955
6971
|
"NodeList" in e3 && !e3.NodeList.prototype.forEach && (e3.NodeList.prototype.forEach = Array.prototype.forEach), "DOMTokenList" in e3 && !e3.DOMTokenList.prototype.forEach && (e3.DOMTokenList.prototype.forEach = Array.prototype.forEach), Node.prototype.contains || (Node.prototype.contains = (...e4) => {
|
|
6956
6972
|
let a3 = e4[0];
|
|
@@ -6969,13 +6985,13 @@
|
|
|
6969
6985
|
cl = (e3, k3) => {
|
|
6970
6986
|
var x3;
|
|
6971
6987
|
const I3 = e3;
|
|
6972
|
-
if (I3.timestamp = Xa(), null != (x3 = Qa[0]) && x3.isFrozen() && I3.type !==
|
|
6988
|
+
if (I3.timestamp = Xa(), null != (x3 = Qa[0]) && x3.isFrozen() && I3.type !== ja.FullSnapshot && !(I3.type === ja.IncrementalSnapshot && I3.data.source === Ba.Mutation) && Qa.forEach((e4) => e4.unfreeze()), fe2) null == a2 || a2(Cr(I3), k3);
|
|
6973
6989
|
else if (me2) {
|
|
6974
6990
|
const e4 = { type: "@sailfish-rrweb/rrweb", event: Cr(I3), origin: window.location.origin, isCheckout: k3 };
|
|
6975
6991
|
window.parent.postMessage(e4, "*");
|
|
6976
6992
|
}
|
|
6977
|
-
if (I3.type ===
|
|
6978
|
-
else if (I3.type ===
|
|
6993
|
+
if (I3.type === ja.FullSnapshot) Se2 = I3, be2 = 0;
|
|
6994
|
+
else if (I3.type === ja.IncrementalSnapshot) {
|
|
6979
6995
|
if (I3.data.source === Ba.Mutation && I3.data.isAttachIframe) return;
|
|
6980
6996
|
be2++;
|
|
6981
6997
|
const e4 = w2 && be2 >= w2, a3 = u2 && I3.timestamp - Se2.timestamp > u2;
|
|
@@ -6983,19 +6999,19 @@
|
|
|
6983
6999
|
}
|
|
6984
7000
|
};
|
|
6985
7001
|
const ot = (e3) => {
|
|
6986
|
-
cl({ type:
|
|
6987
|
-
}, kr = (e3) => cl({ type:
|
|
7002
|
+
cl({ type: ja.IncrementalSnapshot, data: { source: Ba.Mutation, ...e3 } });
|
|
7003
|
+
}, kr = (e3) => cl({ type: ja.IncrementalSnapshot, data: { source: Ba.Scroll, ...e3 } }), xr = (e3) => cl({ type: ja.IncrementalSnapshot, data: { source: Ba.CanvasMutation, ...e3 } }), ve2 = new Ru({ mutationCb: ot, adoptedStyleSheetCb: (e3) => cl({ type: ja.IncrementalSnapshot, data: { source: Ba.AdoptedStyleSheet, ...e3 } }) }), Ce2 = new Jl({ mirror: fl, mutationCb: ot, stylesheetManager: ve2, recordCrossOriginIframes: ee2, wrappedEmit: cl });
|
|
6988
7004
|
for (const e3 of le2 || []) e3.getMirror && e3.getMirror({ nodeMirror: fl, crossOriginIframeMirror: Ce2.crossOriginIframeMirror, crossOriginIframeStyleMirror: Ce2.crossOriginIframeStyleMirror });
|
|
6989
7005
|
const xe2 = new Mu();
|
|
6990
7006
|
dl = new Iu({ recordCanvas: J2, mutationCb: xr, win: window, blockClass: k2, blockSelector: x2, mirror: fl, sampling: Y2.canvas, dataURLOptions: X2 });
|
|
6991
|
-
const Ie2 = new Ou({ mutationCb: ot, scrollCb: kr, bypassOptions: { blockClass: k2, blockSelector: x2, maskTextClass: _2, maskTextSelector: A2, inlineStylesheet:
|
|
7007
|
+
const Ie2 = new Ou({ mutationCb: ot, scrollCb: kr, bypassOptions: { blockClass: k2, blockSelector: x2, maskTextClass: _2, maskTextSelector: A2, inlineStylesheet: U2, maskInputOptions: ye2, dataURLOptions: X2, maskTextFn: G2, maskInputFn: W2, recordCanvas: J2, inlineImages: se2, sampling: Y2, slimDOMOptions: we2, iframeManager: Ce2, stylesheetManager: ve2, canvasManager: dl, keepIframeSrcFn: ce2, processedNodeManager: xe2 }, mirror: fl });
|
|
6992
7008
|
ul = (e3 = false) => {
|
|
6993
7009
|
if (!Z2) return;
|
|
6994
|
-
cl({ type:
|
|
7010
|
+
cl({ type: ja.Meta, data: { href: window.location.href, width: vo(), height: So() } }, e3), ve2.reset(), Ie2.init(), Qa.forEach((e4) => e4.lock());
|
|
6995
7011
|
const a3 = [], u3 = (function Qi(e4, a4) {
|
|
6996
|
-
const { mirror: u4 = new Zn(), blockClass: w3 = "rr-block", blockSelector: k3 = null, maskTextClass: x3 = "rr-mask", maskTextSelector: I3 = null, inlineStylesheet: M3 = true, inlineImages: _3 = false, recordCanvas: A3 = false, maskAllInputs:
|
|
6997
|
-
return ke(e4, { doc: e4, mirror: u4, blockClass: w3, blockSelector: k3, maskTextClass: x3, maskTextSelector: I3, skipChild: false, inlineStylesheet: M3, maskInputOptions: true ===
|
|
6998
|
-
})(document, { mirror: fl, blockClass: k2, blockSelector: x2, maskTextClass: _2, maskTextSelector: A2, inlineStylesheet:
|
|
7012
|
+
const { mirror: u4 = new Zn(), blockClass: w3 = "rr-block", blockSelector: k3 = null, maskTextClass: x3 = "rr-mask", maskTextSelector: I3 = null, inlineStylesheet: M3 = true, inlineImages: _3 = false, recordCanvas: A3 = false, maskAllInputs: U3 = false, maskTextFn: j3, maskInputFn: B3, slimDOM: z3 = false, dataURLOptions: W3, preserveWhiteSpace: G3, onSerialize: H3, onIframeLoad: K3, iframeLoadTimeout: Y3, onStylesheetLoad: X3, stylesheetLoadTimeout: Q3, keepIframeSrcFn: Z3 = () => false, corruptedRules: J3 } = a4 || {};
|
|
7013
|
+
return ke(e4, { doc: e4, mirror: u4, blockClass: w3, blockSelector: k3, maskTextClass: x3, maskTextSelector: I3, skipChild: false, inlineStylesheet: M3, maskInputOptions: true === U3 ? { color: true, date: true, "datetime-local": true, email: true, month: true, number: true, range: true, search: true, tel: true, text: true, time: true, url: true, week: true, textarea: true, select: true, password: true } : false === U3 ? { password: true } : U3, maskTextFn: j3, maskInputFn: B3, slimDOMOptions: true === z3 || "all" === z3 ? { script: true, comment: true, headFavicon: true, headWhitespace: true, headMetaDescKeywords: "all" === z3, headMetaSocial: true, headMetaRobots: true, headMetaHttpEquiv: true, headMetaAuthorship: true, headMetaVerification: true } : false === z3 ? {} : z3, dataURLOptions: W3, inlineImages: _3, recordCanvas: A3, preserveWhiteSpace: G3, onSerialize: H3, onIframeLoad: K3, iframeLoadTimeout: Y3, onStylesheetLoad: X3, stylesheetLoadTimeout: Q3, keepIframeSrcFn: Z3, newlyAddedElement: false, corruptedRules: J3 });
|
|
7014
|
+
})(document, { mirror: fl, blockClass: k2, blockSelector: x2, maskTextClass: _2, maskTextSelector: A2, inlineStylesheet: U2, maskAllInputs: ye2, maskTextFn: G2, maskInputFn: W2, slimDOM: we2, dataURLOptions: X2, recordCanvas: J2, inlineImages: se2, corruptedRules: a3, onSerialize: (e4) => {
|
|
6999
7015
|
xo(e4, fl) && Ce2.addIframe(e4), Io(e4, fl) && ve2.trackLinkElement(e4), _s(e4) && Ie2.addShadowRoot(e4.shadowRoot, document);
|
|
7000
7016
|
}, onIframeLoad: (e4, a4) => {
|
|
7001
7017
|
Ce2.attachIframe(e4, a4), Ie2.observeAttachShadow(e4);
|
|
@@ -7003,20 +7019,20 @@
|
|
|
7003
7019
|
ve2.attachLinkElement(e4, a4);
|
|
7004
7020
|
}, keepIframeSrcFn: ce2 });
|
|
7005
7021
|
if (!u3) return console.warn("Failed to snapshot the document");
|
|
7006
|
-
ve2.setCorruptedRules(a3), cl({ type:
|
|
7022
|
+
ve2.setCorruptedRules(a3), cl({ type: ja.FullSnapshot, data: { node: u3, initialOffset: bo(window) } }, e3), Qa.forEach((e4) => e4.unlock()), document.adoptedStyleSheets && document.adoptedStyleSheets.length > 0 && ve2.adoptStyleSheets(document.adoptedStyleSheets, fl.getId(document));
|
|
7007
7023
|
};
|
|
7008
7024
|
try {
|
|
7009
7025
|
const e3 = [], q = (e4) => {
|
|
7010
7026
|
var a3;
|
|
7011
|
-
return E(gu)({ mutationCb: ot, mousemoveCb: (e5, a4) => cl({ type:
|
|
7012
|
-
cl({ type:
|
|
7027
|
+
return E(gu)({ mutationCb: ot, mousemoveCb: (e5, a4) => cl({ type: ja.IncrementalSnapshot, data: { source: a4, positions: e5 } }), mouseInteractionCb: (e5) => cl({ type: ja.IncrementalSnapshot, data: { source: Ba.MouseInteraction, ...e5 } }), scrollCb: kr, viewportResizeCb: (e5) => cl({ type: ja.IncrementalSnapshot, data: { source: Ba.ViewportResize, ...e5 } }), inputCb: (e5) => cl({ type: ja.IncrementalSnapshot, data: { source: Ba.Input, ...e5 } }), mediaInteractionCb: (e5) => cl({ type: ja.IncrementalSnapshot, data: { source: Ba.MediaInteraction, ...e5 } }), styleSheetRuleCb: (e5) => cl({ type: ja.IncrementalSnapshot, data: { source: Ba.StyleSheetRule, ...e5 } }), styleDeclarationCb: (e5) => cl({ type: ja.IncrementalSnapshot, data: { source: Ba.StyleDeclaration, ...e5 } }), canvasMutationCb: xr, fontCb: (e5) => cl({ type: ja.IncrementalSnapshot, data: { source: Ba.Font, ...e5 } }), selectionCb: (e5) => {
|
|
7028
|
+
cl({ type: ja.IncrementalSnapshot, data: { source: Ba.Selection, ...e5 } });
|
|
7013
7029
|
}, customElementCb: (e5) => {
|
|
7014
|
-
cl({ type:
|
|
7030
|
+
cl({ type: ja.IncrementalSnapshot, data: { source: Ba.CustomElement, ...e5 } });
|
|
7015
7031
|
}, typingCb: (e5) => {
|
|
7016
|
-
cl({ type:
|
|
7032
|
+
cl({ type: ja.IncrementalSnapshot, data: { ...e5 } });
|
|
7017
7033
|
}, deviceChangeCb: (e5) => {
|
|
7018
|
-
cl({ type:
|
|
7019
|
-
}, blockClass: k2, ignoreClass: I2, ignoreSelector: M2, maskTextClass: _2, maskTextSelector: A2, maskInputOptions: ye2, inlineStylesheet:
|
|
7034
|
+
cl({ type: ja.Device, data: { ...e5 } });
|
|
7035
|
+
}, blockClass: k2, ignoreClass: I2, ignoreSelector: M2, maskTextClass: _2, maskTextSelector: A2, maskInputOptions: ye2, inlineStylesheet: U2, sampling: Y2, recordDOM: Z2, recordCanvas: J2, inlineImages: se2, userTriggeredOnInput: ne2, collectFonts: re2, doc: e4, maskInputFn: W2, maskTextFn: G2, keepIframeSrcFn: ce2, blockSelector: x2, slimDOMOptions: we2, dataURLOptions: X2, mirror: fl, iframeManager: Ce2, stylesheetManager: ve2, shadowDomManager: Ie2, processedNodeManager: xe2, canvasManager: dl, ignoreCSSAttributes: ue2, plugins: (null == (a3 = null == le2 ? void 0 : le2.filter((e5) => e5.observer)) ? void 0 : a3.map((e5) => ({ observer: e5.observer, options: e5.options, callback: (a4) => cl({ type: ja.Plugin, data: { plugin: e5.name, payload: a4 } }) }))) || [] }, H2);
|
|
7020
7036
|
};
|
|
7021
7037
|
Ce2.addLoadListener((a3) => {
|
|
7022
7038
|
try {
|
|
@@ -7029,9 +7045,9 @@
|
|
|
7029
7045
|
ul(), e3.push(q(document)), pl = true;
|
|
7030
7046
|
};
|
|
7031
7047
|
return "interactive" === document.readyState || "complete" === document.readyState ? oe() : (e3.push(V("DOMContentLoaded", () => {
|
|
7032
|
-
cl({ type:
|
|
7048
|
+
cl({ type: ja.DomContentLoaded, data: {} }), "DOMContentLoaded" === te2 && oe();
|
|
7033
7049
|
})), e3.push(V("load", () => {
|
|
7034
|
-
cl({ type:
|
|
7050
|
+
cl({ type: ja.Load, data: {} }), "load" === te2 && oe();
|
|
7035
7051
|
}, window))), () => {
|
|
7036
7052
|
e3.forEach((e4) => e4()), xe2.destroy(), pl = false, (function Xl() {
|
|
7037
7053
|
Ya = void 0;
|
|
@@ -7062,7 +7078,7 @@
|
|
|
7062
7078
|
}
|
|
7063
7079
|
he.addCustomEvent = (e2, a2) => {
|
|
7064
7080
|
if (!pl) throw new Error("please add custom event after start recording");
|
|
7065
|
-
cl({ type:
|
|
7081
|
+
cl({ type: ja.Custom, data: { tag: e2, payload: a2 } });
|
|
7066
7082
|
}, he.addSailfishEvent = (e2, a2) => {
|
|
7067
7083
|
if (!pl) throw new Error("please add Sailfish event after start recording");
|
|
7068
7084
|
cl({ type: e2, data: { tag: "sailfish-zendesk-test-tag", payload: a2 } });
|
|
@@ -7443,9 +7459,9 @@
|
|
|
7443
7459
|
super(e2), this.type = "comment";
|
|
7444
7460
|
}
|
|
7445
7461
|
};
|
|
7446
|
-
var
|
|
7462
|
+
var Ul = Dl;
|
|
7447
7463
|
Dl.default = Dl;
|
|
7448
|
-
let
|
|
7464
|
+
let jl = Fl, Bl = class extends jl {
|
|
7449
7465
|
get variable() {
|
|
7450
7466
|
return this.prop.startsWith("--") || "$" === this.prop[0];
|
|
7451
7467
|
}
|
|
@@ -7455,7 +7471,7 @@
|
|
|
7455
7471
|
};
|
|
7456
7472
|
var zl = Bl;
|
|
7457
7473
|
Bl.default = Bl;
|
|
7458
|
-
let Wl, ec, tc, nc, rc =
|
|
7474
|
+
let Wl, ec, tc, nc, rc = Ul, oc = zl, sc = Fl, { isClean: ic, my: ac } = _l;
|
|
7459
7475
|
function Go(e2) {
|
|
7460
7476
|
return e2.map((e3) => (e3.nodes && (e3.nodes = Go(e3.nodes)), delete e3.source, e3));
|
|
7461
7477
|
}
|
|
@@ -7727,12 +7743,12 @@
|
|
|
7727
7743
|
};
|
|
7728
7744
|
var Mc = Ic;
|
|
7729
7745
|
Ic.default = Ic;
|
|
7730
|
-
let { nanoid: Ec } = wc, { isAbsolute: _c, resolve: Oc } = wl, { SourceMapConsumer: Lc, SourceMapGenerator: Rc } = wl, { fileURLToPath: Nc, pathToFileURL: Fc } = wl, Pc = kl, Dc = Mc, $c = wl,
|
|
7746
|
+
let { nanoid: Ec } = wc, { isAbsolute: _c, resolve: Oc } = wl, { SourceMapConsumer: Lc, SourceMapGenerator: Rc } = wl, { fileURLToPath: Nc, pathToFileURL: Fc } = wl, Pc = kl, Dc = Mc, $c = wl, Uc = Symbol("lineToIndexCache"), jc = !(!Lc || !Rc), Bc = !(!Oc || !_c);
|
|
7731
7747
|
function fn(e2) {
|
|
7732
|
-
if (e2[
|
|
7748
|
+
if (e2[Uc]) return e2[Uc];
|
|
7733
7749
|
let a2 = e2.css.split("\n"), u2 = new Array(a2.length), w2 = 0;
|
|
7734
7750
|
for (let e3 = 0, k2 = a2.length; e3 < k2; e3++) u2[e3] = w2, w2 += a2[e3].length + 1;
|
|
7735
|
-
return e2[
|
|
7751
|
+
return e2[Uc] = u2, u2;
|
|
7736
7752
|
}
|
|
7737
7753
|
let zc = class {
|
|
7738
7754
|
get from() {
|
|
@@ -7740,7 +7756,7 @@
|
|
|
7740
7756
|
}
|
|
7741
7757
|
constructor(e2, a2 = {}) {
|
|
7742
7758
|
if (null === e2 || typeof e2 > "u" || "object" == typeof e2 && !e2.toString) throw new Error(`PostCSS received ${e2} instead of CSS string`);
|
|
7743
|
-
if (this.css = e2.toString(), "\uFEFF" === this.css[0] || "" === this.css[0] ? (this.hasBOM = true, this.css = this.css.slice(1)) : this.hasBOM = false, this.document = this.css, a2.document && (this.document = a2.document.toString()), a2.from && (!Bc || /^\w+:\/\//.test(a2.from) || _c(a2.from) ? this.file = a2.from : this.file = Oc(a2.from)), Bc &&
|
|
7759
|
+
if (this.css = e2.toString(), "\uFEFF" === this.css[0] || "" === this.css[0] ? (this.hasBOM = true, this.css = this.css.slice(1)) : this.hasBOM = false, this.document = this.css, a2.document && (this.document = a2.document.toString()), a2.from && (!Bc || /^\w+:\/\//.test(a2.from) || _c(a2.from) ? this.file = a2.from : this.file = Oc(a2.from)), Bc && jc) {
|
|
7744
7760
|
let e3 = new Dc(this.css, a2);
|
|
7745
7761
|
if (e3.text) {
|
|
7746
7762
|
this.map = e3;
|
|
@@ -7867,7 +7883,7 @@
|
|
|
7867
7883
|
};
|
|
7868
7884
|
var ou = Jc;
|
|
7869
7885
|
Jc.default = Jc, Qc.registerRule(Jc);
|
|
7870
|
-
let yu = pc, Su =
|
|
7886
|
+
let yu = pc, Su = Ul, bu = zl, _u = Wc, Tu = Mc, Au = Kc, Fu = ou;
|
|
7871
7887
|
function Qe(e2, a2) {
|
|
7872
7888
|
if (Array.isArray(e2)) return e2.map((e3) => Qe(e3));
|
|
7873
7889
|
let { inputs: u2, ...w2 } = e2;
|
|
@@ -7891,7 +7907,7 @@
|
|
|
7891
7907
|
}
|
|
7892
7908
|
var Pu = Qe;
|
|
7893
7909
|
Qe.default = Qe;
|
|
7894
|
-
let { dirname: Du, relative: $u, resolve:
|
|
7910
|
+
let { dirname: Du, relative: $u, resolve: Uu, sep: ju } = wl, { SourceMapConsumer: Bu, SourceMapGenerator: zu } = wl, { pathToFileURL: Wu } = wl, Gu = Wc, Hu = !(!Bu || !zu), Vu = !!(Du && Uu && $u && ju);
|
|
7895
7911
|
var qu = class {
|
|
7896
7912
|
constructor(e2, a2, u2, w2) {
|
|
7897
7913
|
this.stringify = e2, this.mapOpts = u2.map || {}, this.root = a2, this.opts = u2, this.css = w2, this.originalCSS = w2, this.usesFileUrls = !this.mapOpts.from && this.mapOpts.absolute, this.memoizedFileURLs = /* @__PURE__ */ new Map(), this.memoizedPaths = /* @__PURE__ */ new Map(), this.memoizedURLs = /* @__PURE__ */ new Map();
|
|
@@ -7963,7 +7979,7 @@
|
|
|
7963
7979
|
let a2 = this.memoizedPaths.get(e2);
|
|
7964
7980
|
if (a2) return a2;
|
|
7965
7981
|
let u2 = this.opts.to ? Du(this.opts.to) : ".";
|
|
7966
|
-
"string" == typeof this.mapOpts.annotation && (u2 = Du(
|
|
7982
|
+
"string" == typeof this.mapOpts.annotation && (u2 = Du(Uu(u2, this.mapOpts.annotation)));
|
|
7967
7983
|
let w2 = $u(u2, e2);
|
|
7968
7984
|
return this.memoizedPaths.set(e2, w2), w2;
|
|
7969
7985
|
}
|
|
@@ -8015,14 +8031,14 @@
|
|
|
8015
8031
|
toUrl(e2) {
|
|
8016
8032
|
let a2 = this.memoizedURLs.get(e2);
|
|
8017
8033
|
if (a2) return a2;
|
|
8018
|
-
"\\" ===
|
|
8034
|
+
"\\" === ju && (e2 = e2.replace(/\\/g, "/"));
|
|
8019
8035
|
let u2 = encodeURI(e2).replace(/[#?]/g, encodeURIComponent);
|
|
8020
8036
|
return this.memoizedURLs.set(e2, u2), u2;
|
|
8021
8037
|
}
|
|
8022
8038
|
};
|
|
8023
8039
|
const Ku = /[\t\n\f\r "#'()/;[\\\]{}]/g, Yu = /[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g, Xu = /.[\r\n"'(/\\]/, Qu = /[\da-f]/i;
|
|
8024
|
-
let Zu = pc, ed =
|
|
8025
|
-
let u2, w2, k2, x2, I2, M2, _2, A2,
|
|
8040
|
+
let Zu = pc, ed = Ul, td = zl, nd = Kc, rd = ou, Tc = function(e2, a2 = {}) {
|
|
8041
|
+
let u2, w2, k2, x2, I2, M2, _2, A2, U2, j2, B2 = e2.css.valueOf(), z2 = a2.ignoreErrors, W2 = B2.length, G2 = 0, H2 = [], K2 = [];
|
|
8026
8042
|
function v(a3) {
|
|
8027
8043
|
throw e2.error("Unclosed " + a3, G2);
|
|
8028
8044
|
}
|
|
@@ -8058,7 +8074,7 @@
|
|
|
8058
8074
|
break;
|
|
8059
8075
|
}
|
|
8060
8076
|
case 40:
|
|
8061
|
-
if (
|
|
8077
|
+
if (j2 = H2.length ? H2.pop()[1] : "", U2 = B2.charCodeAt(G2 + 1), "url" === j2 && 39 !== U2 && 34 !== U2 && 32 !== U2 && 10 !== U2 && 9 !== U2 && 12 !== U2 && 13 !== U2) {
|
|
8062
8078
|
x2 = G2;
|
|
8063
8079
|
do {
|
|
8064
8080
|
if (_2 = false, x2 = B2.indexOf(")", x2 + 1), -1 === x2) {
|
|
@@ -8302,9 +8318,9 @@
|
|
|
8302
8318
|
precheckMissedSemicolon() {
|
|
8303
8319
|
}
|
|
8304
8320
|
raw(e2, a2, u2, w2) {
|
|
8305
|
-
let k2, x2, I2, M2, _2 = u2.length, A2 = "",
|
|
8306
|
-
for (let e3 = 0; e3 < _2; e3 += 1) k2 = u2[e3], x2 = k2[0], "space" !== x2 || e3 !== _2 - 1 || w2 ? "comment" === x2 ? (M2 = u2[e3 - 1] ? u2[e3 - 1][0] : "empty", I2 = u2[e3 + 1] ? u2[e3 + 1][0] : "empty", od[M2] || od[I2] || "," === A2.slice(-1) ?
|
|
8307
|
-
if (!
|
|
8321
|
+
let k2, x2, I2, M2, _2 = u2.length, A2 = "", U2 = true;
|
|
8322
|
+
for (let e3 = 0; e3 < _2; e3 += 1) k2 = u2[e3], x2 = k2[0], "space" !== x2 || e3 !== _2 - 1 || w2 ? "comment" === x2 ? (M2 = u2[e3 - 1] ? u2[e3 - 1][0] : "empty", I2 = u2[e3 + 1] ? u2[e3 + 1][0] : "empty", od[M2] || od[I2] || "," === A2.slice(-1) ? U2 = false : A2 += k2[1]) : A2 += k2[1] : U2 = false;
|
|
8323
|
+
if (!U2) {
|
|
8308
8324
|
let w3 = u2.reduce((e3, a3) => e3 + a3[1], "");
|
|
8309
8325
|
e2.raws[a2] = { raw: w3, value: A2 };
|
|
8310
8326
|
}
|
|
@@ -8712,7 +8728,7 @@
|
|
|
8712
8728
|
};
|
|
8713
8729
|
var $d = Dd;
|
|
8714
8730
|
Dd.default = Dd;
|
|
8715
|
-
let
|
|
8731
|
+
let Ud = yc, jd = Ld, Bd = $d, zd = Kc, Wd = class {
|
|
8716
8732
|
constructor(e2 = []) {
|
|
8717
8733
|
this.version = "8.5.6", this.plugins = this.normalize(e2);
|
|
8718
8734
|
}
|
|
@@ -8728,15 +8744,15 @@
|
|
|
8728
8744
|
return a2;
|
|
8729
8745
|
}
|
|
8730
8746
|
process(e2, a2 = {}) {
|
|
8731
|
-
return this.plugins.length || a2.parser || a2.stringifier || a2.syntax ? new
|
|
8747
|
+
return this.plugins.length || a2.parser || a2.stringifier || a2.syntax ? new jd(this, e2, a2) : new Bd(this, e2, a2);
|
|
8732
8748
|
}
|
|
8733
8749
|
use(e2) {
|
|
8734
8750
|
return this.plugins = this.plugins.concat(this.normalize([e2])), this;
|
|
8735
8751
|
}
|
|
8736
8752
|
};
|
|
8737
8753
|
var Gd = Wd;
|
|
8738
|
-
Wd.default = Wd, zd.registerProcessor(Wd),
|
|
8739
|
-
let Hd = pc, Vd =
|
|
8754
|
+
Wd.default = Wd, zd.registerProcessor(Wd), Ud.registerProcessor(Wd);
|
|
8755
|
+
let Hd = pc, Vd = Ul, qd = cc, Kd = kl, Yd = zl, Xd = yc, Qd = Pu, Zd = Wc, Jd = Ld, ep = Xc, tp = Fl, np = cd, rp = Gd, op = fd, sp = Kc, ip = ou, ap = El, lp = dd;
|
|
8740
8756
|
function D(...e2) {
|
|
8741
8757
|
return 1 === e2.length && Array.isArray(e2[0]) && (e2 = e2[0]), new rp(e2);
|
|
8742
8758
|
}
|
|
@@ -8761,7 +8777,7 @@
|
|
|
8761
8777
|
const { addCustomEvent: pp } = he, { addSailfishEvent: hp } = he, { freezePage: fp } = he, { takeFullSnapshot: mp } = he, gp = Object.freeze(Object.defineProperty({ __proto__: null, record: he }, Symbol.toStringTag, { value: "Module" }));
|
|
8762
8778
|
const yp = Object.freeze(Object.defineProperty({ __proto__: null, chunkedSnapshot: async function chunkedSnapshot(e2, a2, u2 = {}) {
|
|
8763
8779
|
const w2 = u2.chunkSize ?? 500, k2 = u2.maxChunkMs ?? 16, { blockClass: x2, blockSelector: I2, maskTextClass: M2, maskTextSelector: _2 } = u2;
|
|
8764
|
-
let A2 = 100001,
|
|
8780
|
+
let A2 = 100001, U2 = 0, j2 = performance.now();
|
|
8765
8781
|
function genId(e3) {
|
|
8766
8782
|
if (a2.hasNode(e3)) return a2.getId(e3);
|
|
8767
8783
|
const u3 = A2++;
|
|
@@ -8788,7 +8804,7 @@
|
|
|
8788
8804
|
return await (async function serialize(a3) {
|
|
8789
8805
|
if (a3 !== e2 && !a3.parentNode) return null;
|
|
8790
8806
|
switch (await (async function maybeYield() {
|
|
8791
|
-
|
|
8807
|
+
U2++, (U2 % w2 === 0 || performance.now() - j2 > k2) && (await yieldToMain(), j2 = performance.now());
|
|
8792
8808
|
})(), a3.nodeType) {
|
|
8793
8809
|
case Node.DOCUMENT_NODE: {
|
|
8794
8810
|
const e3 = genId(a3), u3 = [];
|
|
@@ -8853,7 +8869,7 @@
|
|
|
8853
8869
|
e.DEFAULT_CAPTURE_SETTINGS = Rt, e.DEFAULT_CONSOLE_RECORDING_SETTINGS = At, e.STORAGE_VERSION = 1, e.addOrUpdateMetadata = function addOrUpdateMetadata(e2) {
|
|
8854
8870
|
const a2 = { type: "addOrUpdateMetadata", metadata: e2 };
|
|
8855
8871
|
_e && JSON.stringify(_e) === JSON.stringify(e2) || (_e = e2, sendMessage(a2));
|
|
8856
|
-
}, e.buildBatches = buildBatches, e.clearStaleFuncSpanState = clearStaleFuncSpanState, e.createSkipHeadersPropagationChecker = createSkipHeadersPropagationChecker, e.createTriageAndIssueFromRecorder = createTriageAndIssueFromRecorder, e.createTriageFromRecorder = createTriageFromRecorder, e.disableFunctionSpanTracking = disableFunctionSpanTracking, e.enableFunctionSpanTracking = enableFunctionSpanTracking, e.ensureHrefCache = ensureHrefCache, e.eventSize = eventSize, e.fetchAndSendIp = fetchAndSendIp, e.fetchCaptureSettings = fetchCaptureSettings, e.fetchEngineeringTicketPlatformIntegrations = fetchEngineeringTicketPlatformIntegrations, e.fetchFunctionSpanTrackingEnabled = fetchFunctionSpanTrackingEnabled, e.flushBufferedEvents = flushBufferedEvents, e.getCachedHref = getCachedHref, e.getCachedHrefNoQuery = getCachedHrefNoQuery, e.getFuncSpanHeader = getFuncSpanHeader, e.getOrSetSessionId = getOrSetSessionId, e.getUrlAndStoredUuids = getUrlAndStoredUuids, e.identify = function identify(e2, a2 = {}, u2 = false) {
|
|
8872
|
+
}, e.buildBatches = buildBatches, e.clearStaleFuncSpanState = clearStaleFuncSpanState, e.createSkipHeadersPropagationChecker = createSkipHeadersPropagationChecker, e.createTriageAndIssueFromRecorder = createTriageAndIssueFromRecorder, e.createTriageFromRecorder = createTriageFromRecorder, e.disableFunctionSpanTracking = disableFunctionSpanTracking, e.enableFunctionSpanTracking = enableFunctionSpanTracking, e.ensureHrefCache = ensureHrefCache, e.eventSize = eventSize, e.fetchAndSendIp = fetchAndSendIp, e.fetchCaptureSettings = fetchCaptureSettings, e.fetchEngineeringTicketPlatformIntegrations = fetchEngineeringTicketPlatformIntegrations, e.fetchFunctionSpanTrackingEnabled = fetchFunctionSpanTrackingEnabled, e.flushBufferedEvents = flushBufferedEvents, e.getCachedHref = getCachedHref, e.getCachedHrefNoQuery = getCachedHrefNoQuery, e.getFuncSpanHeader = getFuncSpanHeader, e.getIdentifiedUser = getIdentifiedUser, e.getOrSetSessionId = getOrSetSessionId, e.getUrlAndStoredUuids = getUrlAndStoredUuids, e.identify = function identify(e2, a2 = {}, u2 = false) {
|
|
8857
8873
|
const w2 = { type: "identify", userId: e2, traits: a2 };
|
|
8858
8874
|
Ee && Ee.userId === e2 && JSON.stringify(Ee.traits) === JSON.stringify(a2) || (Ee = { userId: e2, traits: a2, overwrite: u2 }, sendMessage(w2));
|
|
8859
8875
|
}, e.initRecorder = async (e2) => {
|
|
@@ -8877,7 +8893,17 @@
|
|
|
8877
8893
|
})().finally(() => {
|
|
8878
8894
|
delete a2.initPromise;
|
|
8879
8895
|
})), a2.initPromise);
|
|
8880
|
-
}, e.initializeConsolePlugin = initializeConsolePlugin, e.initializeDomContentEvents = initializeDomContentEvents, e.initializeFunctionSpanTrackingFromApi = initializeFunctionSpanTrackingFromApi, e.initializeRecording = initializeRecording, e.initializeWebSocket = initializeWebSocket, e.invalidateUrlCache = invalidateUrlCache, e.isFunctionSpanTrackingEnabled = isFunctionSpanTrackingEnabled, e.matchUrlWithWildcard = matchUrlWithWildcard,
|
|
8896
|
+
}, e.initializeConsolePlugin = initializeConsolePlugin, e.initializeDomContentEvents = initializeDomContentEvents, e.initializeFunctionSpanTrackingFromApi = initializeFunctionSpanTrackingFromApi, e.initializeRecording = initializeRecording, e.initializeWebSocket = initializeWebSocket, e.invalidateUrlCache = invalidateUrlCache, e.isFunctionSpanTrackingEnabled = isFunctionSpanTrackingEnabled, e.matchUrlWithWildcard = function matchUrlWithWildcard(e2, a2) {
|
|
8897
|
+
let u2, w2;
|
|
8898
|
+
if ("string" == typeof e2 ? u2 = e2 : "undefined" != typeof URL && e2 instanceof URL ? u2 = e2.href : "undefined" != typeof Request && e2 instanceof Request ? u2 = e2.url : null != e2 && "function" == typeof e2.toString && (u2 = e2.toString()), !u2) return false;
|
|
8899
|
+
try {
|
|
8900
|
+
const e3 = "undefined" != typeof window ? window.location.href : "http://localhost/";
|
|
8901
|
+
w2 = new URL(u2, e3);
|
|
8902
|
+
} catch {
|
|
8903
|
+
return false;
|
|
8904
|
+
}
|
|
8905
|
+
return matchParsedUrlAgainstPatterns(w2, a2);
|
|
8906
|
+
}, e.onNavigationChange = onNavigationChange, e.openReportIssueModal = openReportIssueModal, e.restoreFuncSpanState = restoreFuncSpanState, e.sendDomainsToNotPropagateHeaderTo = sendDomainsToNotPropagateHeaderTo, e.sendEvent = sendEvent, e.sendGraphQLRequest = sendGraphQLRequest, e.sendMessage = sendMessage, e.startRecording = startRecording, e.startRecordingSession = startRecordingSession, e.trackingEvent = function trackingEvent(a2) {
|
|
8881
8907
|
sendMessage({ type: "trackingEvent", trackingData: a2, timestamp: e.nowTimestamp() });
|
|
8882
8908
|
}, e.withAppUrlMetadata = withAppUrlMetadata, Object.defineProperty(e, Symbol.toStringTag, { value: "Module" });
|
|
8883
8909
|
});
|