@sprig-technologies/sprig-browser 2.32.7 → 2.32.9

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.
@@ -1,41 +1,41 @@
1
- var Lt = Object.defineProperty;
2
- var Ut = (t, e, n) => e in t ? Lt(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
3
- var $ = (t, e, n) => (Ut(t, typeof e != "symbol" ? e + "" : e, n), n);
4
- import { g as F, s as Qe, l as D, e as w, S as g, v as Ye, m as I, b as T, h as St, E as te, D as W, c as It, r as V, i as kt, j as Et, k as _t, n as Me, o as qe, a as xt, p as Xe, d as Dt, q as Ze } from "./metricsReporter-rplm9tEP.js";
5
- const rr = 360, ir = "ul-app", nr = "#e6e6e6", or = "#bd282a", sr = 1030, Fe = () => {
1
+ var Ut = Object.defineProperty;
2
+ var St = (t, e, n) => e in t ? Ut(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
3
+ var $ = (t, e, n) => (St(t, typeof e != "symbol" ? e + "" : e, n), n);
4
+ import { g as T, s as Xe, l as D, e as w, S as g, v as Ze, m as k, b as M, h as et, E as re, D as W, c as It, r as V, i as kt, j as Et, k as _t, n as Fe, o as ze, a as xt, p as tt, d as Dt, q as rt } from "./metricsReporter-Cl6wG1Dn.js";
5
+ const rr = 360, ir = "ul-app", nr = "#e6e6e6", or = "#bd282a", sr = 1030, He = () => {
6
6
  try {
7
7
  return window.parent.Intercom;
8
8
  } catch {
9
9
  return null;
10
10
  }
11
- }, ze = [Object.freeze(Object.defineProperty({ __proto__: null, disable: () => {
12
- const t = Fe();
11
+ }, We = [Object.freeze(Object.defineProperty({ __proto__: null, disable: () => {
12
+ const t = He();
13
13
  t && (t.ul_wasVisible = !!document.querySelector("iframe.intercom-launcher-frame"), t.ul_wasVisible && t("update", { hide_default_launcher: !0 }));
14
14
  }, enable: () => {
15
- const t = Fe();
15
+ const t = He();
16
16
  t && (t.ul_wasVisible && t("update", { hide_default_launcher: !1 }), delete t.ul_wasVisible);
17
17
  } }, Symbol.toStringTag, { value: "Module" }))];
18
18
  class At {
19
19
  static disable() {
20
- ze.forEach((e) => e.disable());
20
+ We.forEach((e) => e.disable());
21
21
  }
22
22
  static enable() {
23
- ze.forEach((e) => e.enable());
23
+ We.forEach((e) => e.enable());
24
24
  }
25
25
  }
26
- const He = "ul-view-sdk-script", Rt = ["ios", "android"], j = "visitors", q = "environments";
26
+ const Ne = "ul-view-sdk-script", Rt = ["ios", "android"], q = "visitors", F = "environments";
27
27
  async function C(t, e) {
28
28
  var i, o, a;
29
29
  const { shouldDropOnRateLimit: n, ...s } = e;
30
- s.headers = Object.assign(F(window.UserLeap), s.headers);
31
- const r = await Qe(t, { ...s, shouldDropOnRateLimit: n });
30
+ s.headers = Object.assign(T(window.UserLeap), s.headers);
31
+ const r = await Xe(t, { ...s, shouldDropOnRateLimit: n });
32
32
  if (r.ok) {
33
- const l = (i = r.headers) == null ? void 0 : i.get("Authorization"), c = l ? l.split(" ") : void 0, d = c && c.length === 2 ? c[1] : void 0, p = (o = r.headers) == null ? void 0 : o.get("x-ul-visitor-id");
34
- if (window.UserLeap.userId && p === window.UserLeap.visitorId) {
33
+ const l = (i = r.headers) == null ? void 0 : i.get("Authorization"), p = l ? l.split(" ") : void 0, d = p && p.length === 2 ? p[1] : void 0, c = (o = r.headers) == null ? void 0 : o.get("x-ul-visitor-id");
34
+ if (window.UserLeap.userId && c === window.UserLeap.visitorId) {
35
35
  const m = D.getItemObject("sprig.anon.env.vid.map");
36
- m && m[window.UserLeap.envId] === p && (delete m[window.UserLeap.envId], D.setItemObject("sprig.anon.env.vid.map", m));
36
+ m && m[window.UserLeap.envId] === c && (delete m[window.UserLeap.envId], D.setItemObject("sprig.anon.env.vid.map", m));
37
37
  }
38
- d && p && (p !== window.UserLeap.visitorId || window.UserLeap.token !== d) && (x("token", d), x("vid", p), w.emit(g.VisitorIDUpdated, { visitorId: p }), window.UserLeap.token = d, window.UserLeap.visitorId = p);
38
+ d && c && (c !== window.UserLeap.visitorId || window.UserLeap.token !== d) && (x("token", d), x("vid", c), w.emit(g.VisitorIDUpdated, { visitorId: c }), window.UserLeap.token = d, window.UserLeap.visitorId = c);
39
39
  }
40
40
  return (a = r.json) != null && a.logMessage && console.warn(`[Sprig] ${r.json.logMessage}`), r;
41
41
  }
@@ -44,97 +44,100 @@ function x(t, e) {
44
44
  let s = n[window.UserLeap.envId];
45
45
  s ? s[t] = e : s = { [t]: e }, n[window.UserLeap.envId] = s, D.setItemObject("userleap.ids", n);
46
46
  }
47
- function Ee() {
47
+ function De() {
48
48
  return window.previewMode ? "0" : window.UserLeap.visitorId ?? "";
49
49
  }
50
50
  function R(t, e, n) {
51
51
  const s = [window.UserLeap._API_URL, "sdk", t];
52
52
  return e && e.forEach((r) => {
53
- s.push(r), r === q ? s.push(window.UserLeap.envId) : r === j && s.push(Ee());
53
+ s.push(r), r === F ? s.push(window.UserLeap.envId) : r === q && s.push(De());
54
54
  }), n && s.push(n), s.join("/");
55
55
  }
56
- const Y = async (t, e) => {
57
- var Ce, Pe, Te;
58
- const { context: n, delay: s, forceBrandedLogo: r, endCard: i, isFeedback: o = !1, heatmap: a, locale: l, previewMode: c, productConfig: d, questions: p, responseGroupUid: m, surveyId: u, uuid: y, vid: _, sessionReplay: b, studyType: U } = t, h = F(window.UserLeap), L = ue(h), E = _e(h);
59
- if (b)
60
- if (L)
61
- w.emit(g.ReplayCapture, { responseGroupUid: m, hasQuestions: !!(p != null && p.length), surveyId: u, uploadId: b.uploadId, replayType: b.replayDurationType ?? "before", seconds: b.replayDurationSeconds, generateVideoUploadUrlPayload: { mediaRecordingUid: Ye(), mediaType: "screen", questionId: 1, responseGroupUid: m, surveyId: u, updatedAt: (/* @__PURE__ */ new Date()).toISOString(), visitorId: window.UserLeap.visitorId, isReplay: !0 } });
56
+ const X = async (t, e) => {
57
+ var Te, je, Me;
58
+ const { context: n, delay: s, forceBrandedLogo: r, endCard: i, isFeedback: o = !1, heatmap: a, locale: l, previewMode: p, productConfig: d, questions: c, responseGroupUid: m, surveyId: u, uuid: y, vid: I, sessionReplay: h, studyType: L } = t, f = T(window.UserLeap), S = ie(f), _ = ge(f);
59
+ if (h)
60
+ if (S)
61
+ w.emit(g.ReplayCapture, { responseGroupUid: m, hasQuestions: !!(c != null && c.length), surveyId: u, uploadId: h.uploadId, replayType: h.replayDurationType ?? "before", seconds: h.replayDurationSeconds, generateVideoUploadUrlPayload: { mediaRecordingUid: Ze(), mediaType: "screen", questionId: 1, responseGroupUid: m, surveyId: u, updatedAt: (/* @__PURE__ */ new Date()).toISOString(), visitorId: window.UserLeap.visitorId, isReplay: !0 } });
62
62
  else {
63
- if (!I.replay)
63
+ if (!k.replay)
64
64
  return window.UserLeap.reportError("displayQuestions", new Error("Replay module not registered")), { success: !1, message: "Replay module not registered", surveyState: "no survey" };
65
- I.replay.scheduleOrCaptureReplay({ responseGroupId: m, surveyId: u, visitorId: _, replayParams: b, completeUploadHeaders: h, apiUrl: window.UserLeap._API_URL, triggerTimestamp: Date.now(), isStandalone: p.length === 0 });
65
+ k.replay.scheduleOrCaptureReplay({ responseGroupId: m, surveyId: u, visitorId: I, replayParams: h, completeUploadHeaders: f, apiUrl: window.UserLeap._API_URL, triggerTimestamp: Date.now(), isStandalone: c.length === 0 });
66
66
  }
67
67
  if (a) {
68
- if (!I.replay)
68
+ if (!k.replay)
69
69
  return window.UserLeap.reportError("displayQuestions", new Error("Replay module not registered")), { success: !1, message: "Replay module not registered", surveyState: "no survey" };
70
- const { eventId: S, replayParams: me, responseGroupUid: ht, surveyId: bt } = a;
71
- await I.replay.initializeReplay({ maxReplayDurationSeconds: 300, maxInflightRequests: window.UserLeap.maxInflightReplayRequests, teardownAfter: !0 }), I.replay.tryReplayAction(() => {
72
- var je;
73
- return (je = I.replay) == null ? void 0 : je.scheduleCapture({ apiUrl: window.UserLeap._API_URL, completeUploadHeaders: h, eventId: S, isHeatmap: !0, replayParams: me, responseGroupId: ht, surveyId: bt, triggerTimestamp: Date.now(), visitorId: _ });
70
+ const { eventId: U, replayParams: J, responseGroupUid: fe, surveyId: ve } = a;
71
+ await k.replay.initializeReplay({ maxReplayDurationSeconds: 300, maxInflightRequests: window.UserLeap.maxInflightReplayRequests, teardownAfter: !0 }), k.replay.tryReplayAction(() => {
72
+ var qe;
73
+ return (qe = k.replay) == null ? void 0 : qe.scheduleCapture({ apiUrl: window.UserLeap._API_URL, completeUploadHeaders: f, eventId: U, isHeatmap: !0, replayParams: J, responseGroupId: fe, surveyId: ve, triggerTimestamp: Date.now(), visitorId: I });
74
74
  }, "Error in scheduling/capturing replay");
75
75
  }
76
- if (_ == null || !(p != null && p.length))
77
- return T.info("CannotDisplaySurvey", { vid: _ }), { success: !1, message: "[Sprig] no survey found", surveyState: "no survey" };
76
+ if (I == null || !(c != null && c.length))
77
+ return M.info("CannotDisplaySurvey", { vid: I }), { success: !1, message: "[Sprig] no survey found", surveyState: "no survey" };
78
78
  if (window.UserLeap.container) {
79
- T.info("AlreadyDisplayingSurvey");
80
- const S = "[Sprig] (ERR-409) Found an existing Survey container, aborting rendering of this survey";
81
- return console.warn(S), { success: !1, message: S, surveyState: "no survey" };
82
- }
83
- if (_ !== window.UserLeap.visitorId && y !== window.UserLeap.visitorId && !window.previewMode) {
84
- const S = "Attempted to display survey to a different visitor";
85
- return window.UserLeap.reportError("DisplaySurvey", new Error(S)), { success: !1, message: S, surveyState: "no survey" };
86
- }
87
- T.info("ShowingSurvey", { surveyId: u }), (Ce = I.replay) == null || Ce.RecordSurveyShown({ id: u, userAgent: window.navigator.userAgent }), At.disable(), w.emit(g.SurveyWillPresent, { name: g.SurveyWillPresent, "survey.id": u });
88
- let O, v, k, A, z = document.createElement("div");
89
- const K = (S) => {
90
- const { "view.version": me } = S;
91
- me !== h["x-ul-sdk-version"] && tt(), w.removeListener("verify.view.version", K);
79
+ M.info("AlreadyDisplayingSurvey");
80
+ const U = "[Sprig] (ERR-409) Found an existing Survey container, aborting rendering of this survey";
81
+ return console.warn(U), { success: !1, message: U, surveyState: "no survey" };
82
+ }
83
+ if (I !== window.UserLeap.visitorId && y !== window.UserLeap.visitorId && !window.previewMode) {
84
+ const U = "Attempted to display survey to a different visitor";
85
+ return window.UserLeap.reportError("DisplaySurvey", new Error(U)), { success: !1, message: U, surveyState: "no survey" };
86
+ }
87
+ M.info("ShowingSurvey", { surveyId: u }), (Te = k.replay) == null || Te.RecordSurveyShown({ id: u, userAgent: window.navigator.userAgent }), At.disable(), w.emit(g.SurveyWillPresent, { name: g.SurveyWillPresent, "survey.id": u });
88
+ let O, b, E, A, z = document.createElement("div");
89
+ const K = (U) => {
90
+ const { "view.version": J } = U;
91
+ J !== f["x-ul-sdk-version"] && nt(), w.removeListener("verify.view.version", K);
92
92
  };
93
- w.on("verify.view.version", K), window.UserLeap.useMobileStyling = E, St(h) ? (O = "ul-direct-embeded-frame", v = document.head, k = window, A = !1, L && (et(u, o), z.id = O, window.UserLeap.container.appendChild(z), rt(), w.emit(g.SurveyLifeCycle, { state: "presented" }), w.emit(g.SurveyPresented, { name: g.SurveyPresented, "survey.id": u }))) : { frameId: O, contentWinDocHead: v, contentWindow: k, hasOverlay: A, iframe: z } = Ct({ productConfig: d, useMobileStyling: E, surveyId: u, isFeedback: o }), window.UserLeap.frameId = O;
94
- const B = { apiURL: window.UserLeap._API_URL, cards: p, configureExitOnOverlayClick: (S) => {
95
- w.once(g.CloseSurveyOnOverlayClick, S);
96
- }, context: n, endCard: i, envId: window.UserLeap.envId, eventEmitFn: w.emit.bind(w), fontFamily: window.UserLeap.fontFamily, fontFamilyURL: window.UserLeap.fontFamilyURL, forceBrandedLogo: r, frame: z, headers: h, locale: l, mobileSDKVersion: window.UserLeap.mobileSDKVersion, previewKey: D.getItem("sprig.previewKey"), previewMode: c, productConfig: { framePosition: d == null ? void 0 : d.framePosition, desktopDisplay: d == null ? void 0 : d.desktopDisplay, placement: d == null ? void 0 : d.placement }, responseGroupUid: m, startingQuestionIdx: (Pe = window.UserLeap.config) == null ? void 0 : Pe.startingQuestionIdx, studyType: U, styleNonce: window.UserLeap.styleNonce, surveyId: u, tabTitle: document.title, trackPageViewUrl: e, ulEvents: te, upchunkLibraryURL: window.UserLeap.upchunkLibraryURL, useMobileStyling: E, userId: y, viewDocument: k == null ? void 0 : k.document, viewWindow: k, visitorAttributes: { externalUserId: window.UserLeap.userId, email: window.UserLeap.email }, ...window.UserLeap._config };
97
- (Te = window.UserLeap._config) != null && Te.startingQuestionIdx && (window.UserLeap._config = { ...window.UserLeap._config, startingQuestionIdx: null });
98
- const vt = (o ? window.UserLeap.feedbackCustomStyles : window.UserLeap.customStyles) ?? d.customStyles;
99
- B.customStyles = vt, k && (k.__cfg = B);
100
- const we = window.UserLeap.viewSDKURL ? window.UserLeap.viewSDKURL : B.path, Ae = document.getElementById(He);
101
- Ae && Ae.remove();
102
- const ge = function() {
103
- const S = document.createElement("script");
104
- return window.UserLeap.nonce && S.setAttribute("nonce", window.UserLeap.nonce), S.id = He, S;
105
- }(), Re = () => {
93
+ w.on("verify.view.version", K), window.UserLeap.useMobileStyling = _, et(f) ? (O = "ul-direct-embeded-frame", b = document.head, E = window, A = !1, (() => {
94
+ const U = T(window.UserLeap), J = ie(U), fe = window.UserLeap.forceDirectEmbed, ve = U["userleap-platform"] === "web";
95
+ return J || fe && ve;
96
+ })() && (it(u, o), z.id = O, window.UserLeap.container.appendChild(z), ot(), w.emit(g.SurveyLifeCycle, { state: "presented" }), w.emit(g.SurveyPresented, { name: g.SurveyPresented, "survey.id": u }))) : { frameId: O, contentWinDocHead: b, contentWindow: E, hasOverlay: A, iframe: z } = Ct({ productConfig: d, useMobileStyling: _, surveyId: u, isFeedback: o }), window.UserLeap.frameId = O;
97
+ const B = { apiURL: window.UserLeap._API_URL, cards: c, configureExitOnOverlayClick: (U) => {
98
+ w.once(g.CloseSurveyOnOverlayClick, U);
99
+ }, context: n, endCard: i, envId: window.UserLeap.envId, eventEmitFn: w.emit.bind(w), fontFamily: window.UserLeap.fontFamily, fontFamilyURL: window.UserLeap.fontFamilyURL, forceBrandedLogo: r, frame: z, headers: f, locale: l, mobileSDKVersion: window.UserLeap.mobileSDKVersion, previewKey: D.getItem("sprig.previewKey"), previewMode: p, productConfig: { framePosition: d == null ? void 0 : d.framePosition, desktopDisplay: d == null ? void 0 : d.desktopDisplay, placement: d == null ? void 0 : d.placement }, responseGroupUid: m, startingQuestionIdx: (je = window.UserLeap.config) == null ? void 0 : je.startingQuestionIdx, studyType: L, styleNonce: window.UserLeap.styleNonce, surveyId: u, tabTitle: document.title, trackPageViewUrl: e, ulEvents: re, upchunkLibraryURL: window.UserLeap.upchunkLibraryURL, useMobileStyling: _, userId: y, viewDocument: E == null ? void 0 : E.document, viewWindow: E, visitorAttributes: { externalUserId: window.UserLeap.userId, email: window.UserLeap.email }, ...window.UserLeap._config };
100
+ (Me = window.UserLeap._config) != null && Me.startingQuestionIdx && (window.UserLeap._config = { ...window.UserLeap._config, startingQuestionIdx: null });
101
+ const Lt = (o ? window.UserLeap.feedbackCustomStyles : window.UserLeap.customStyles) ?? d.customStyles;
102
+ B.customStyles = Lt, E && (E.__cfg = B);
103
+ const me = window.UserLeap.viewSDKURL ? window.UserLeap.viewSDKURL : B.path, Oe = document.getElementById(Ne);
104
+ Oe && Oe.remove();
105
+ const ye = function() {
106
+ const U = document.createElement("script");
107
+ return window.UserLeap.nonce && U.setAttribute("nonce", window.UserLeap.nonce), U.id = Ne, U;
108
+ }(), Ce = () => {
106
109
  window.UserLeap.container && Object.assign(window.UserLeap.container.style, { display: "flex" });
107
110
  };
108
111
  if (B.installationMethod === "web-npm" || B.installationMethod === "web-npm-bundled") {
109
- const { default: S } = await import("./view-Ck6u_lD1.js");
110
- S.configure(B), A && window.UserLeap.container && Re();
112
+ const { default: U } = await import("./view-CxqsZLB6.js");
113
+ U.configure(B), A && window.UserLeap.container && Ce();
111
114
  } else
112
- we && (ge.src = we, A && ge.addEventListener("load", () => {
113
- window.UserLeap.container && Re();
114
- }), k == null || k.addEventListener("error", (S) => {
115
- S.target instanceof HTMLScriptElement && S.target.src === we && window.UserLeap.reportError("loadFrameScript", new Error("Frame script failed to load"));
115
+ me && (ye.src = me, A && ye.addEventListener("load", () => {
116
+ window.UserLeap.container && Ce();
117
+ }), E == null || E.addEventListener("error", (U) => {
118
+ U.target instanceof HTMLScriptElement && U.target.src === me && window.UserLeap.reportError("loadFrameScript", new Error("Frame script failed to load"));
116
119
  }, { capture: !0, once: !0 }));
117
- v == null || v.appendChild(ge);
118
- const Oe = { success: !0, surveyState: "ready", surveyId: u, responseGroupUid: m };
119
- return window.UserLeap.isMobileSDK && s && (Oe.delay = s), Oe;
120
+ b == null || b.appendChild(ye);
121
+ const Pe = { success: !0, surveyState: "ready", surveyId: u, responseGroupUid: m };
122
+ return window.UserLeap.isMobileSDK && s && (Pe.delay = s), Pe;
120
123
  };
121
- function _e(t) {
124
+ function ge(t) {
122
125
  var n;
123
126
  if (window.UserLeap.useMobileStyling !== void 0)
124
127
  return window.UserLeap.useMobileStyling;
125
128
  const e = ((n = window.UserLeap.windowDimensions) == null ? void 0 : n.width) ?? document.body.clientWidth;
126
- return ue(t) || e > 10 && e < 500;
129
+ return ie(t) || e > 10 && e < 500;
127
130
  }
128
- function ue(t) {
131
+ function ie(t) {
129
132
  return Rt.includes(t["userleap-platform"]);
130
133
  }
131
- const xe = "ul-frame";
134
+ const Ae = "ul-frame";
132
135
  window.UserLeap && window.Sprig && (window.Sprig._gtm ? window.Sprig = window.UserLeap : window.UserLeap = window.Sprig), window.UserLeap || (window.UserLeap = window.Sprig), window.Sprig || (window.Sprig = window.UserLeap);
133
- const ye = "0px", et = (t, e, n) => {
136
+ const he = "0px", it = (t, e, n) => {
134
137
  window.UserLeap.container = document.createElement("div"), window.UserLeap.container.className = "ul-container" + (e ? " ul-container-feedback" : ""), t && (window.UserLeap.container.dataset.studyId = t.toString());
135
- const s = nt();
138
+ const s = at();
136
139
  n && s && !window.UserLeap.useMobileStyling ? s.appendChild(window.UserLeap.container) : document.body.appendChild(window.UserLeap.container);
137
- }, tt = (t, e) => {
140
+ }, nt = (t, e) => {
138
141
  var s;
139
142
  Tt();
140
143
  const n = window.UserLeap.container;
@@ -144,32 +147,32 @@ const ye = "0px", et = (t, e, n) => {
144
147
  } catch (r) {
145
148
  console.warn(`[Sprig] (ERR-412) Error removing UserLeap container by ${t} ` + n), r instanceof Error && window.UserLeap.reportError("dismissActiveSurvey", r);
146
149
  }
147
- }, rt = () => {
150
+ }, ot = () => {
148
151
  w.once(g.SurveyWillClose, ({ initiator: t, studyType: e }) => {
149
- w.removeAllListeners(g.CloseSurveyOnOverlayClick), tt(t, e);
152
+ w.removeAllListeners(g.CloseSurveyOnOverlayClick), nt(t, e);
150
153
  });
151
154
  }, Ot = (t, e, n, s) => {
152
- var d, p;
153
- const r = { position: "fixed", bottom: "0px", right: ye, border: 0, backgroundColor: "rgba(0,0,0,0)", zIndex: 2147483646, transition: "height 0.2s ease-in-out", maxWidth: "100%" }, i = Object.assign({}, e, window.UserLeap), { desktopDisplay: o } = e || {}, a = o === "center-modal";
155
+ var d, c;
156
+ const r = { position: "fixed", bottom: "0px", right: he, border: 0, backgroundColor: "rgba(0,0,0,0)", zIndex: 2147483646, transition: "height 0.2s ease-in-out", maxWidth: "100%" }, i = Object.assign({}, e, window.UserLeap), { desktopDisplay: o } = e || {}, a = o === "center-modal";
154
157
  let l;
155
158
  a && (i.framePosition = "center");
156
- let c = !1;
159
+ let p = !1;
157
160
  if (n)
158
- (d = window.UserLeap.windowDimensions) != null && d.width ? r.width = `${window.UserLeap.windowDimensions.width}px` : r.width = "100%", (p = window.UserLeap.windowDimensions) != null && p.height ? r.maxHeight = window.UserLeap.windowDimensions.height - 20 + "px" : window.UserLeap.maxHeight ? r.maxHeight = window.UserLeap.maxHeight : r.maxHeight = document.body.clientHeight - 20 + "px", ["light", "dark"].includes(i.overlayStyleMobile) && (c = !0);
161
+ (d = window.UserLeap.windowDimensions) != null && d.width ? r.width = `${window.UserLeap.windowDimensions.width}px` : r.width = "100%", (c = window.UserLeap.windowDimensions) != null && c.height ? r.maxHeight = window.UserLeap.windowDimensions.height - 20 + "px" : window.UserLeap.maxHeight ? r.maxHeight = window.UserLeap.maxHeight : r.maxHeight = document.body.clientHeight - 20 + "px", ["light", "dark"].includes(i.overlayStyleMobile) && (p = !0);
159
162
  else {
160
163
  r.width = "360px", r.maxHeight = window.UserLeap.maxHeight || "66vh";
161
164
  const m = () => {
162
- c = !0, l = { margin: "auto", position: "static" };
165
+ p = !0, l = { margin: "auto", position: "static" };
163
166
  };
164
167
  if (s)
165
168
  a ? m() : l = { position: "relative", height: "300px" };
166
169
  else
167
170
  switch (i.framePosition) {
168
171
  case "bottomLeft":
169
- l = { left: ye };
172
+ l = { left: he };
170
173
  break;
171
174
  case "topLeft":
172
- l = { left: ye, top: 0 };
175
+ l = { left: he, top: 0 };
173
176
  break;
174
177
  case "topRight":
175
178
  l = { top: 0 };
@@ -178,25 +181,25 @@ const ye = "0px", et = (t, e, n) => {
178
181
  m();
179
182
  }
180
183
  }
181
- return c && ((m, u) => {
182
- const y = { position: "fixed", overflow: "auto", top: "0px", left: "0px", display: "none", height: "100%", width: "100%", transition: "background-color 0.3s ease-out", zIndex: 2147483646 }, _ = u ? m.overlayStyleMobile : m.overlayStyle;
183
- y["background-color"] = _ === "light" ? "rgba(255,255,255, 0.95)" : "rgba(0,0,0,0.9)", u || (y.margin = "auto"), window.UserLeap.container && Object.assign(window.UserLeap.container.style, y);
184
- })(i, n), Object.assign(t.style, r, l), c;
184
+ return p && ((m, u) => {
185
+ const y = { position: "fixed", overflow: "auto", top: "0px", left: "0px", display: "none", height: "100%", width: "100%", transition: "background-color 0.3s ease-out", zIndex: 2147483646 }, I = u ? m.overlayStyleMobile : m.overlayStyle;
186
+ y["background-color"] = I === "light" ? "rgba(255,255,255, 0.95)" : "rgba(0,0,0,0.9)", u || (y.margin = "auto"), window.UserLeap.container && Object.assign(window.UserLeap.container.style, y);
187
+ })(i, n), Object.assign(t.style, r, l), p;
185
188
  }, Ct = ({ productConfig: t, useMobileStyling: e, surveyId: n, isFeedback: s }) => {
186
189
  var m, u;
187
- const r = xe, i = s && t.desktopDisplay === "slider";
188
- et(n, s, i), Pt();
190
+ const r = Ae, i = s && t.desktopDisplay === "slider";
191
+ it(n, s, i), Pt();
189
192
  const o = document.createElement("iframe");
190
193
  o.id = r, o.setAttribute("title", "Sprig User Feedback Dialog");
191
194
  const a = Ot(o, t, e, s);
192
- rt();
195
+ ot();
193
196
  let l = !1;
194
197
  o.setHeight = (y) => {
195
198
  parseInt(o.style.height) == y && l || (l = !0, o.style.height = `${y}px`, w.emit(g.SurveyHeight, { name: g.SurveyHeight, contentFrameHeight: y, "survey.id": n }));
196
199
  };
197
- let c = !1;
200
+ let p = !1;
198
201
  o.setWidth = (y) => {
199
- parseInt(o.style.width) == y && c || (c = !0, o.style.width = `${y}px`, w.emit(g.SurveyWidth, { name: g.SurveyWidth, contentFrameWidth: y, "survey.id": n }));
202
+ parseInt(o.style.width) == y && p || (p = !0, o.style.width = `${y}px`, w.emit(g.SurveyWidth, { name: g.SurveyWidth, contentFrameWidth: y, "survey.id": n }));
200
203
  }, (m = window.UserLeap.container) == null || m.appendChild(o), t && (e ? t.exitOnOverlayClickMobile : t.exitOnOverlayClick) && window.UserLeap.container && (window.UserLeap.container.onclick = () => {
201
204
  w.emit(g.CloseSurveyOnOverlayClick);
202
205
  }), w.emit(g.SurveyLifeCycle, { state: "presented" }), w.emit(g.SurveyPresented, { name: g.SurveyPresented, "survey.id": n });
@@ -205,19 +208,19 @@ const ye = "0px", et = (t, e, n) => {
205
208
  const y = d.body;
206
209
  y.style.display = "flex", y.style.alignItems = "center";
207
210
  }
208
- const p = d == null ? void 0 : d.head;
209
- return { frameId: r, contentWinDocHead: p, contentWindow: o.contentWindow, hasOverlay: a, iframe: o };
210
- }, it = { [g.SurveyFadingOut]: () => {
211
+ const c = d == null ? void 0 : d.head;
212
+ return { frameId: r, contentWinDocHead: c, contentWindow: o.contentWindow, hasOverlay: a, iframe: o };
213
+ }, st = { [g.SurveyFadingOut]: () => {
211
214
  window.UserLeap.container && Object.assign(window.UserLeap.container.style, { "background-color": "rgba(0,0,0,0)" });
212
215
  } }, Pt = () => {
213
- Object.entries(it).forEach(([t, e]) => {
216
+ Object.entries(st).forEach(([t, e]) => {
214
217
  w.on(t, e);
215
218
  });
216
219
  }, Tt = () => {
217
- Object.entries(it).forEach(([t, e]) => {
220
+ Object.entries(st).forEach(([t, e]) => {
218
221
  w.off(t, e);
219
222
  });
220
- }, M = (t) => !!t && t.nodeType === Node.ELEMENT_NODE, We = (t) => t instanceof HTMLElement || t instanceof SVGElement, ne = ({ document: t, elementId: e, styleString: n, nonce: s }) => {
223
+ }, j = (t) => !!t && t.nodeType === Node.ELEMENT_NODE, Ve = (t) => t instanceof HTMLElement || t instanceof SVGElement, se = ({ document: t, elementId: e, styleString: n, nonce: s }) => {
221
224
  const r = t.getElementById(e);
222
225
  if (r)
223
226
  return void (r.textContent = n);
@@ -225,64 +228,69 @@ const ye = "0px", et = (t, e, n) => {
225
228
  s && (i.nonce = s), i.textContent = n, i.id = e, t.head.appendChild(i);
226
229
  }, jt = (t, e) => {
227
230
  const n = e.querySelector(".sprig-question-body");
228
- if (!M(n))
231
+ if (!j(n))
229
232
  return t;
230
233
  const s = n.scrollHeight;
231
234
  return s < 100 ? t : t - (s - 100);
232
- }, Ne = (t, e) => {
235
+ }, Be = (t, e) => {
233
236
  const n = e.querySelector(t);
234
- if (!M(n))
237
+ if (!j(n))
235
238
  return 0;
236
239
  const s = getComputedStyle(n);
237
240
  return parseFloat(s.paddingLeft) + parseFloat(s.paddingRight) + (parseFloat(s.marginLeft) + parseFloat(s.marginRight)) + (parseFloat(s.borderLeftWidth) + parseFloat(s.borderRightWidth));
238
- }, Mt = (t) => {
239
- const e = t.querySelector(".ul-card__container");
240
- let n = 600, s = 360, r = 0;
241
- if (M(e)) {
242
- n = e.clientHeight, n += ((a) => {
243
- const l = a.querySelector(".sprig-question-body"), c = a.querySelector(".ul-card"), d = a.querySelector(".ul-card-main-content"), p = a.querySelector(".ul-footer"), m = a.querySelector(".sprig-container");
244
- let u = 0;
245
- return M(c) && (u += c.scrollHeight - c.clientHeight), M(d) && (u += d.scrollHeight - d.clientHeight), M(l) && (u += l.scrollHeight - l.clientHeight), M(p) && M(m) && m.clientHeight === 0 && (u += p.clientHeight), u;
246
- })(t);
247
- const i = getComputedStyle(e);
248
- r = n, n += parseFloat(i.marginTop) + parseFloat(i.marginBottom) + (parseFloat(i.borderTopWidth) + parseFloat(i.borderBottomWidth));
249
- const o = e.querySelector(".ul-card--matrix_grid");
250
- s = o ? o.scrollWidth : e.scrollWidth, s += Ne(".ul-card__container", t), s += Ne(".sprig-question-body", t);
251
- }
252
- return [n + 1, s, jt(r, t)];
241
+ }, Mt = (t, e, n) => {
242
+ const s = t.querySelector(".ul-card__container"), r = t.querySelector(".ul-app");
243
+ let i = 600, o = 360, a = 0;
244
+ if (j(s) && j(r)) {
245
+ const l = s.querySelector(".ul-card--matrix_grid"), p = !l && e && n;
246
+ try {
247
+ p && (r.style.width = "360px"), i = s.clientHeight, i += ((m) => {
248
+ const u = m.querySelector(".sprig-question-body"), y = m.querySelector(".ul-card"), I = m.querySelector(".ul-card-main-content"), h = m.querySelector(".ul-footer"), L = m.querySelector(".sprig-container");
249
+ let f = 0;
250
+ return j(y) && (f += y.scrollHeight - y.clientHeight), j(I) && (f += I.scrollHeight - I.clientHeight), j(u) && (f += u.scrollHeight - u.clientHeight), j(h) && j(L) && L.clientHeight === 0 && (f += h.clientHeight), f;
251
+ })(t);
252
+ const d = getComputedStyle(s);
253
+ a = i;
254
+ const c = parseFloat(d.marginTop) + parseFloat(d.marginBottom);
255
+ i += c + (parseFloat(d.borderTopWidth) + parseFloat(d.borderBottomWidth)), l && (o = l.scrollWidth, o += Be(".ul-card__container", t), o += Be(".sprig-question-body", t));
256
+ } finally {
257
+ p && r.style.removeProperty("width");
258
+ }
259
+ }
260
+ return [i + 1, o, jt(a, t)];
253
261
  }, ar = (t) => {
254
262
  const e = t.querySelector(".ul-card__container");
255
263
  e && (e.scrollTop = 0);
256
- }, nt = () => f, G = () => document.getElementById("sprig-feedback-container"), be = () => document.getElementById("sprig-feedback-loading-animation"), ot = () => !!document.getElementById(xe);
257
- let Ve = !1, f = null, P = null, De = !1, X = null, H = null;
258
- const qt = ["bottom-left", "bottom-right", "center-left", "center-right"], oe = () => {
264
+ }, at = () => v, G = () => document.getElementById("sprig-feedback-container"), Se = () => document.getElementById("sprig-feedback-loading-animation"), dt = () => !!document.getElementById(Ae);
265
+ let $e = !1, v = null, P = null, Re = !1, Z = null, H = null;
266
+ const qt = ["bottom-left", "bottom-right", "center-left", "center-right"], ae = () => {
259
267
  var e;
260
268
  const t = window.UserLeap.container;
261
269
  return ((e = t == null ? void 0 : t.parentElement) == null ? void 0 : e.id) === "sprig-feedback-loading-container";
262
- }, st = () => document.getElementById("sprig-feedback-error-container"), at = () => {
263
- if (!f)
270
+ }, lt = () => document.getElementById("sprig-feedback-error-container"), ct = () => {
271
+ if (!v)
264
272
  return 0;
265
- const t = f == null ? void 0 : f.clientWidth, e = window.getComputedStyle(f);
273
+ const t = v == null ? void 0 : v.clientWidth, e = window.getComputedStyle(v);
266
274
  return t + parseInt(e.borderRightWidth || "0") + parseInt(e.borderLeftWidth || "0");
267
- }, se = (t) => {
275
+ }, de = (t) => {
268
276
  const e = G();
269
277
  e && (H != null && H.endsWith("right") ? e.style.right = `${t}px` : H != null && H.endsWith("left") && (e.style.left = `${t}px`));
270
- }, fe = () => {
271
- if (f && (oe() || st())) {
272
- w.off(g.SurveyAppeared, Q), Le();
273
- const t = at();
274
- return se(-t), !0;
278
+ }, be = () => {
279
+ if (v && (ae() || lt())) {
280
+ w.off(g.SurveyAppeared, Y), Ie();
281
+ const t = ct();
282
+ return de(-t), !0;
275
283
  }
276
284
  return !1;
277
- }, Q = () => {
278
- if (!f || !P)
285
+ }, Y = () => {
286
+ if (!v || !P)
279
287
  return;
280
- const t = be();
281
- t && t.remove(), f.style.height = "auto", f.style.width = "auto", P.disabled = !1, De = !1;
282
- }, Le = () => {
283
- if (f && !be()) {
288
+ const t = Se();
289
+ t && t.remove(), v.style.height = "auto", v.style.width = "auto", P.disabled = !1, Re = !1;
290
+ }, Ie = () => {
291
+ if (v && !Se()) {
284
292
  const t = (() => {
285
- if (be())
293
+ if (Se())
286
294
  return;
287
295
  const e = document.createElement("div");
288
296
  return e.className = "ul-loading-spinner-container", e.id = "sprig-feedback-loading-animation", e.role = "progressbar", e.setAttribute("aria-live", "polite"), e.setAttribute("aria-busy", "true"), e.setAttribute("aria-label", "Processing..."), e.innerHTML = `
@@ -294,61 +302,61 @@ const qt = ["bottom-left", "bottom-right", "center-left", "center-right"], oe =
294
302
  </div>
295
303
  `, e;
296
304
  })();
297
- t && (f.style.height = "300px", f.style.width = "360px", f.appendChild(t));
305
+ t && (v.style.height = "300px", v.style.width = "360px", v.appendChild(t));
298
306
  }
299
- }, Be = () => {
300
- f && P && (se(0), P.disabled = !0, De = !0);
301
- }, dt = async (t, e, n) => {
302
- const { buttonTheme: s, customStyles: r, eventId: i, placement: o, desktopDisplay: a, feedbackLabel: l, surveyUuid: c, surveyId: d } = t;
307
+ }, Ge = () => {
308
+ v && P && (de(0), P.disabled = !0, Re = !0);
309
+ }, pt = async (t, e, n) => {
310
+ const { buttonTheme: s, customStyles: r, eventId: i, placement: o, desktopDisplay: a, feedbackLabel: l, surveyUuid: p, surveyId: d } = t;
303
311
  window.UserLeap.feedbackCustomStyles = void 0;
304
- let p = G();
305
- if (p) {
306
- if (!e && i === X)
312
+ let c = G();
313
+ if (c) {
314
+ if (!e && i === Z)
307
315
  return;
308
- p.remove(), w.off(te.SURVEY_FADING_OUT, fe);
316
+ c.remove(), w.off(re.SURVEY_FADING_OUT, be);
309
317
  }
310
- X = i, ne({ document, elementId: "sprig-feedback-style", styleString: '.ul-loading-spinner-container{font-size:1.8rem;flex-grow:1;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.ul-loading-spinner{display:inline-block;position:relative;width:6rem;height:6rem}.ul-loading-spinner div{box-sizing:border-box;display:block;position:absolute;width:80%;height:80%;margin:5px;border:5px solid #152e3e;border-radius:50%;animation:lds-ring 1.2s cubic-bezier(.5,0,.5,1) infinite;border-color:#152e3e transparent transparent transparent}.ul-loading-spinner .first{animation-delay:-.45s}.ul-loading-spinner .second{animation-delay:-.3s}.ul-loading-spinner .third{animation-delay:-.15s}@keyframes lds-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-in-transition{animation:fadeIn .4s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}#sprig-feedback-button{border-left:0;border-radius:0 8px 8px 0;display:grid;padding:8px;text-align:center;transition:all ease-in-out 1s;z-index:inherit}#sprig-feedback-button:hover{cursor:pointer}.sprig-feedback-button-label{writing-mode:vertical-lr;text-orientation:sideways}.sprig-feedback-button-right{transform:rotate(180deg)}.sprig-feedback-button-bottom{align-self:flex-end;margin-bottom:20px}.sprig-feedback-button-light{background:#efefee;color:#000;border:1px solid #e2e3e1}.sprig-feedback-button-dark{background:#000;color:#fff;border:1px solid #000000}#sprig-feedback-container{display:flex;align-items:center;position:fixed;transition:right .2s linear,left .2s linear;z-index:2147483646}.sprig-feedback-container-left{flex-flow:row-reverse}.sprig-feedback-container-center{top:50%;transform:translateY(-50%)}.sprig-feedback-container-bottom{bottom:0%;margin-bottom:15px}.sprig-feedback-loading-container{align-items:center;background-color:#fff;border:2px solid var(--feedback-border);display:flex;max-height:90vh;max-width:90vw;min-width:0px}.sprig-feedback-loading-container-left{border-left:none;border-radius:0 8px 8px 0}.sprig-feedback-loading-container-right{border-right:none;border-radius:8px 0 0 8px}#sprig-feedback-error-container{margin:auto;text-align:center;width:360px}.sprig-feedback-error-text{font-weight:400;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}#sprig-feedback-loading-container .ul-container{position:relative;max-height:inherit}#sprig-feedback-loading-animation{position:absolute}.sprig-feedback-loading-container-previews iframe{max-height:inherit!important}', nonce: window.UserLeap.styleNonce }), ne({ document, elementId: "ul-custom-style", styleString: r ?? "", nonce: window.UserLeap.styleNonce }), Ve = a === "center-modal", H = o;
318
+ Z = i, se({ document, elementId: "sprig-feedback-style", styleString: '.ul-loading-spinner-container{font-size:1.8rem;flex-grow:1;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.ul-loading-spinner{display:inline-block;position:relative;width:6rem;height:6rem}.ul-loading-spinner div{box-sizing:border-box;display:block;position:absolute;width:80%;height:80%;margin:5px;border:5px solid #152e3e;border-radius:50%;animation:lds-ring 1.2s cubic-bezier(.5,0,.5,1) infinite;border-color:#152e3e transparent transparent transparent}.ul-loading-spinner .first{animation-delay:-.45s}.ul-loading-spinner .second{animation-delay:-.3s}.ul-loading-spinner .third{animation-delay:-.15s}@keyframes lds-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-in-transition{animation:fadeIn .4s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}#sprig-feedback-button{border-left:0;border-radius:0 8px 8px 0;display:grid;padding:8px;text-align:center;transition:all ease-in-out 1s;z-index:inherit}#sprig-feedback-button:hover{cursor:pointer}.sprig-feedback-button-label{writing-mode:vertical-lr;text-orientation:sideways}.sprig-feedback-button-right{transform:rotate(180deg)}.sprig-feedback-button-bottom{align-self:flex-end;margin-bottom:20px}.sprig-feedback-button-light{background:#efefee;color:#000;border:1px solid #e2e3e1}.sprig-feedback-button-dark{background:#000;color:#fff;border:1px solid #000000}#sprig-feedback-container{display:flex;align-items:center;position:fixed;transition:right .2s linear,left .2s linear;z-index:2147483646}.sprig-feedback-container-left{flex-flow:row-reverse}.sprig-feedback-container-center{top:50%;transform:translateY(-50%)}.sprig-feedback-container-bottom{bottom:0%;margin-bottom:15px}.sprig-feedback-loading-container{align-items:center;background-color:#fff;border:2px solid var(--feedback-border);display:flex;max-height:90vh;max-width:90vw;min-width:0px}.sprig-feedback-loading-container-left{border-left:none;border-radius:0 8px 8px 0}.sprig-feedback-loading-container-right{border-right:none;border-radius:8px 0 0 8px}#sprig-feedback-error-container{margin:auto;text-align:center;width:360px}.sprig-feedback-error-text{font-weight:400;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}#sprig-feedback-loading-container .ul-container{position:relative;max-height:inherit}#sprig-feedback-loading-animation{position:absolute}.sprig-feedback-loading-container-previews iframe{max-height:inherit!important}', nonce: window.UserLeap.styleNonce }), se({ document, elementId: "ul-custom-style", styleString: r ?? "", nonce: window.UserLeap.styleNonce }), $e = a === "center-modal", H = o;
311
319
  const [m, u] = o.split("-");
312
- ((U) => {
313
- if (G() || !qt.includes(U))
320
+ ((L) => {
321
+ if (G() || !qt.includes(L))
314
322
  return;
315
- const [h, L] = U.split("-"), E = document.createElement("div");
316
- E.id = "sprig-feedback-container", E.classList.add(`sprig-feedback-container-${L}`, `sprig-feedback-container-${h}`), document.body.appendChild(E);
317
- })(o), p = G(), P = document.createElement("button");
323
+ const [f, S] = L.split("-"), _ = document.createElement("div");
324
+ _.id = "sprig-feedback-container", _.classList.add(`sprig-feedback-container-${S}`, `sprig-feedback-container-${f}`), document.body.appendChild(_);
325
+ })(o), c = G(), P = document.createElement("button");
318
326
  const y = document.createElement("div");
319
- y.className = "sprig-feedback-button-label", y.innerText = l, P.appendChild(y), P.id = "sprig-feedback-button", P.classList.add(`sprig-feedback-button-${u}`, `sprig-feedback-button-${m}`, `sprig-feedback-button-${s}`, "fade-in-transition"), w.on(te.SURVEY_FADING_OUT, fe), P.addEventListener("click", async () => {
320
- const U = document.getElementById("sprig-feedback-error-container");
321
- if (ot() || st()) {
322
- if (fe()) {
327
+ y.className = "sprig-feedback-button-label", y.innerText = l, P.appendChild(y), P.id = "sprig-feedback-button", P.classList.add(`sprig-feedback-button-${u}`, `sprig-feedback-button-${m}`, `sprig-feedback-button-${s}`, "fade-in-transition"), w.on(re.SURVEY_FADING_OUT, be), P.addEventListener("click", async () => {
328
+ const L = document.getElementById("sprig-feedback-error-container");
329
+ if (dt() || lt()) {
330
+ if (be()) {
323
331
  w.emit(g.SurveyWillClose, { name: g.SurveyWillClose, initiator: W.FeedbackClosed, studyType: "feedbackButton", "survey.id": d });
324
- const L = G();
325
- U && L && (L.remove(), X = null, f = null);
332
+ const S = G();
333
+ L && S && (S.remove(), Z = null, v = null);
326
334
  }
327
335
  return;
328
336
  }
329
- if (_e(F(window.UserLeap)) || De || Be(), e)
330
- return f && f.classList.add("sprig-feedback-loading-container-previews"), await Y(e), void Q();
331
- const h = await (async (L) => {
332
- const E = await C(R("1", [j], "startFeedbackStudy"), { body: JSON.stringify({ surveyUuid: L }), method: "POST" });
333
- return E.ok ? E.json : null;
334
- })(c);
335
- if (h)
336
- w.once(g.SurveyAppeared, Q), Y({ ...h, studyType: "feedbackButton" }, n);
337
- else if (f) {
338
- const L = Ft();
339
- f.appendChild(L), Q(), f.style.height = "300px", f.style.width = "360px";
337
+ if (ge(T(window.UserLeap)) || Re || Ge(), e)
338
+ return v && v.classList.add("sprig-feedback-loading-container-previews"), await X(e), void Y();
339
+ const f = await (async (S) => {
340
+ const _ = await C(R("1", [q], "startFeedbackStudy"), { body: JSON.stringify({ surveyUuid: S }), method: "POST" });
341
+ return _.ok ? _.json : null;
342
+ })(p);
343
+ if (f)
344
+ w.once(g.SurveyAppeared, Y), X({ ...f, studyType: "feedbackButton" }, n);
345
+ else if (v) {
346
+ const S = Ft();
347
+ v.appendChild(S), Y(), v.style.height = "300px", v.style.width = "360px";
340
348
  }
341
- }), p == null || p.appendChild(P), w.emit(g.FeedbackButtonLoaded, { name: g.FeedbackButtonLoaded, "survey.id": d });
342
- const { useMobileStyling: _, _config: { border: b } } = window.UserLeap;
343
- if (Ve || _)
344
- se(0);
349
+ }), c == null || c.appendChild(P), w.emit(g.FeedbackButtonLoaded, { name: g.FeedbackButtonLoaded, "survey.id": d });
350
+ const { useMobileStyling: I, _config: { border: h } } = window.UserLeap;
351
+ if ($e || I)
352
+ de(0);
345
353
  else {
346
- const U = document.createElement("div");
347
- U.id = "sprig-feedback-loading-container", U.className = `sprig-feedback-loading-container sprig-feedback-loading-container-${u}`, U.style.setProperty("--feedback-border", b), f = U, Le(), p == null || p.appendChild(U);
348
- const h = at();
349
- se(-h);
354
+ const L = document.createElement("div");
355
+ L.id = "sprig-feedback-loading-container", L.className = `sprig-feedback-loading-container sprig-feedback-loading-container-${u}`, L.style.setProperty("--feedback-border", h), v = L, Ie(), c == null || c.appendChild(L);
356
+ const f = ct();
357
+ de(-f);
350
358
  }
351
- window.UserLeap._config.isOnQuestionsTab && e && !oe() && f && (Be(), Le(), f && f.classList.add("sprig-feedback-loading-container-previews"), Y(e), Q());
359
+ window.UserLeap._config.isOnQuestionsTab && e && !ae() && v && (Ge(), Ie(), v && v.classList.add("sprig-feedback-loading-container-previews"), X(e), Y());
352
360
  }, Ft = () => {
353
361
  const t = document.createElement("div");
354
362
  t.id = "sprig-feedback-error-container", t.innerHTML = `<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40" fill="none">
@@ -358,7 +366,7 @@ const qt = ["bottom-left", "bottom-right", "center-left", "center-right"], oe =
358
366
  </svg>`;
359
367
  const e = document.createElement("h3");
360
368
  return e.className = "sprig-feedback-error-text", e.innerText = "There was an error while loading the survey", t.appendChild(e), t;
361
- }, Ue = new class {
369
+ }, ke = new class {
362
370
  constructor() {
363
371
  $(this, "_ldData", {});
364
372
  }
@@ -375,8 +383,8 @@ const qt = ["bottom-left", "bottom-right", "center-left", "center-right"], oe =
375
383
  }
376
384
  }
377
385
  }();
378
- Object.freeze(Ue);
379
- const ie = new class {
386
+ Object.freeze(ke);
387
+ const oe = new class {
380
388
  constructor() {
381
389
  $(this, "_optimizelyData", {});
382
390
  }
@@ -424,7 +432,7 @@ const ie = new class {
424
432
  }
425
433
  }
426
434
  }();
427
- Object.freeze(ie);
435
+ Object.freeze(oe);
428
436
  class zt {
429
437
  constructor(e, n) {
430
438
  $(this, "paused");
@@ -476,123 +484,123 @@ class zt {
476
484
  this.queue.length = 0;
477
485
  }
478
486
  }
479
- let lt, ct;
480
- const Se = (t) => {
487
+ let ut, wt;
488
+ const Ee = (t) => {
481
489
  let e = 0, n = t.firstElementChild;
482
490
  for (; n; )
483
- e += Se(n), n.shadowRoot && (e += Se(n.shadowRoot)), n = n.nextElementSibling, e++;
491
+ e += Ee(n), n.shadowRoot && (e += Ee(n.shadowRoot)), n = n.nextElementSibling, e++;
484
492
  return e;
485
- }, $e = () => {
486
- lt.report(Se(document.body)), ct.report(document.documentElement.innerHTML.length);
487
- }, Ie = (t, e) => {
493
+ }, Ke = () => {
494
+ ut.report(Ee(document.body)), wt.report(document.documentElement.innerHTML.length);
495
+ }, _e = (t, e) => {
488
496
  const n = performance.now();
489
- document.hidden ? setTimeout(() => Ie(t, e), t) : setTimeout(() => {
497
+ document.hidden ? setTimeout(() => _e(t, e), t) : setTimeout(() => {
490
498
  const s = performance.now() - n;
491
- e.report(s / 1e3), setTimeout(() => Ie(t, e), t);
499
+ e.report(s / 1e3), setTimeout(() => _e(t, e), t);
492
500
  }, 0);
493
501
  };
494
- let ae, de, le, ce, Ge, N = {};
495
- const re = (t, e = 1) => {
502
+ let le, ce, pe, ue, Je, N = {};
503
+ const ne = (t, e = 1) => {
496
504
  const { name: n } = t;
497
505
  N[n] = (N[n] || 0) + e;
498
- }, pt = (t) => {
506
+ }, gt = (t) => {
499
507
  let e = 1;
500
508
  return t.childNodes.forEach((n) => {
501
- e += pt(n);
509
+ e += gt(n);
502
510
  }), e;
503
- }, Ke = (t) => {
511
+ }, Qe = (t) => {
504
512
  let e = 0;
505
513
  return t.forEach((n) => {
506
- e += pt(n);
514
+ e += gt(n);
507
515
  }), e;
508
516
  }, Ht = (t) => {
509
517
  switch (t.type) {
510
518
  case "childList":
511
- return re(ae, Ke(t.addedNodes)), void re(de, Ke(t.removedNodes));
519
+ return ne(le, Qe(t.addedNodes)), void ne(ce, Qe(t.removedNodes));
512
520
  case "attributes":
513
- return void re(le);
521
+ return void ne(pe);
514
522
  case "characterData":
515
- return void re(ce);
523
+ return void ne(ue);
516
524
  }
517
525
  }, Wt = (t) => t.forEach(Ht), Nt = () => {
518
- ae.report(N[ae.name] || 0), de.report(N[de.name] || 0), le.report(N[le.name] || 0), ce.report(N[ce.name] || 0), N = {};
526
+ le.report(N[le.name] || 0), ce.report(N[ce.name] || 0), pe.report(N[pe.name] || 0), ue.report(N[ue.name] || 0), N = {};
519
527
  }, Vt = (t = 1e3) => {
520
- ae = V("sdk_mutations_nodes_added"), de = V("sdk_mutations_nodes_removed"), le = V("sdk_mutations_attributes_changed"), ce = V("sdk_mutations_character_data"), Ge = new MutationObserver(Wt), Ge.observe(document, { attributes: !0, attributeOldValue: !0, characterData: !0, characterDataOldValue: !0, childList: !0, subtree: !0 }), setInterval(Nt, t);
528
+ le = V("sdk_mutations_nodes_added"), ce = V("sdk_mutations_nodes_removed"), pe = V("sdk_mutations_attributes_changed"), ue = V("sdk_mutations_character_data"), Je = new MutationObserver(Wt), Je.observe(document, { attributes: !0, attributeOldValue: !0, characterData: !0, characterDataOldValue: !0, childList: !0, subtree: !0 }), setInterval(Nt, t);
521
529
  }, Bt = ({ isWeb: t, reportingIntervalSeconds: e, thresholds: n, postMetrics: s }) => {
522
530
  kt(n, (r, i) => {
523
531
  var o, a;
524
- if ((o = I.replay) != null && o.isReplayRecording()) {
532
+ if ((o = k.replay) != null && o.isReplayRecording()) {
525
533
  const l = `Value: ${r} on ${i.metric} violated threshold of ${i.type} ${i.value}`;
526
- (a = I.replay) == null || a.disableRecording("Threshold violated", new Error(l), { reportError: !1 }), window.UserLeap.reportError("Sdk Performance Metric threshold violated", new Error("Sdk Performance Metric threshold violated"), { metricName: i.metric, type: i.type, value: i.value }, { metricName: i.metric }), _t();
534
+ (a = k.replay) == null || a.disableRecording("Threshold violated", new Error(l), { reportError: !1 }), window.UserLeap.reportError("Sdk Performance Metric threshold violated", new Error("Sdk Performance Metric threshold violated"), { metricName: i.metric, type: i.type, value: i.value }, { metricName: i.metric }), _t();
527
535
  }
528
536
  }), Et({ reportingIntervalSeconds: e, postMetrics: s }), t && (((r = 1e3) => {
529
537
  const i = V("sdk_event_queue_latency_seconds");
530
- Ie(r, i);
538
+ _e(r, i);
531
539
  })(), ((r = 1e4) => {
532
- lt = V("sdk_dom_nodes_count"), ct = V("sdk_page_html_characters"), $e(), setInterval($e, r);
540
+ ut = V("sdk_dom_nodes_count"), wt = V("sdk_page_html_characters"), Ke(), setInterval(Ke, r);
533
541
  })(), Vt());
534
542
  }, $t = "test", Gt = ["popState", "pushState", "replaceState"];
535
- let Z;
536
- const pe = {}, J = "!email", ut = "pageUrl";
537
- let ve = window.location.href;
538
- function ee(t) {
543
+ let ee;
544
+ const we = {}, Q = "!email", mt = "pageUrl";
545
+ let Le = window.location.href;
546
+ function te(t) {
539
547
  var a;
540
548
  const { pageUrlEvents: e, interactiveEvents: n, dismissOnPageChange: s, platform: r } = window.UserLeap._config;
541
549
  if (r && r !== "web")
542
550
  return;
543
- ve !== window.location.href && T.navigation("LocationChange", { from: ve, to: window.location.href }), ve = window.location.href;
544
- const i = mt().trackStartUrl, o = i ? String(i) : null;
545
- e && ft(window.location.href), n && (gt(), Kt()), nt() && (() => {
546
- if (oe())
551
+ Le !== window.location.href && M.navigation("LocationChange", { from: Le, to: window.location.href }), Le = window.location.href;
552
+ const i = vt().trackStartUrl, o = i ? String(i) : null;
553
+ e && bt(window.location.href), n && (ft(), Kt()), at() && (() => {
554
+ if (ae())
547
555
  return;
548
556
  const l = G();
549
- l && (It(X) || (l.remove(), X = null, f = null));
550
- })(), xt.getItem("sprig.isCapturingHeatmap") && ((a = I.replay) == null || a.checkPendingHeatmapsUrl()), !oe() && s && o && o !== window.location.href && t && Gt.includes(t.type) && window.UserLeap("dismissActiveSurvey", W.PageChange);
557
+ l && (It(Z) || (l.remove(), Z = null, v = null));
558
+ })(), xt.getItem("sprig.isCapturingHeatmap") && ((a = k.replay) == null || a.checkPendingHeatmapsUrl()), !ae() && s && o && o !== window.location.href && t && Gt.includes(t.type) && window.UserLeap("dismissActiveSurvey", W.PageChange);
551
559
  }
552
- const wt = { capture: !0 }, Kt = () => {
553
- const t = window.UserLeap._config.interactiveEvents.filter((n) => Xe(n, window.location.href)).map((n) => {
560
+ const yt = { capture: !0 }, Kt = () => {
561
+ const t = window.UserLeap._config.interactiveEvents.filter((n) => tt(n, window.location.href)).map((n) => {
554
562
  const { name: s, properties: r } = n, { selector: i, innerText: o } = r;
555
563
  return i ? (a) => {
556
- if (We(a.target))
564
+ if (Ve(a.target))
557
565
  try {
558
566
  a.target.closest(i) && window.UserLeap("track", s);
559
567
  } catch {
560
568
  }
561
569
  return !1;
562
- } : (a) => (We(a.target) && a.target.innerText === o && window.UserLeap("track", s), !1);
570
+ } : (a) => (Ve(a.target) && a.target.innerText === o && window.UserLeap("track", s), !1);
563
571
  }), e = (n) => t.forEach((s) => s(n));
564
- window.UserLeap._config.interactiveEventsHandler = e, window.addEventListener("click", e, wt);
565
- }, gt = () => {
566
- window.UserLeap._config.interactiveEventsHandler && window.removeEventListener("click", window.UserLeap._config.interactiveEventsHandler, wt), delete window.UserLeap._config.interactiveEventsHandler;
572
+ window.UserLeap._config.interactiveEventsHandler = e, window.addEventListener("click", e, yt);
573
+ }, ft = () => {
574
+ window.UserLeap._config.interactiveEventsHandler && window.removeEventListener("click", window.UserLeap._config.interactiveEventsHandler, yt), delete window.UserLeap._config.interactiveEventsHandler;
567
575
  };
568
- function mt() {
576
+ function vt() {
569
577
  const t = D.getItemObject("userleap.ids");
570
578
  return t && t[window.UserLeap.envId] || {};
571
579
  }
572
- function yt() {
580
+ function ht() {
573
581
  if (window.previewMode)
574
582
  return;
575
583
  const t = D.getItemObject("sprig.anon.env.vid.map") || {}, e = t[window.UserLeap.envId];
576
- window.UserLeap.visitorId = e || Ye(), T.info("NewVid", { vid: window.UserLeap.visitorId }), x("vid", window.UserLeap.visitorId), e || (t[window.UserLeap.envId] = window.UserLeap.visitorId, D.setItemObject("sprig.anon.env.vid.map", t)), w.emit(g.VisitorIDUpdated, { visitorId: window.UserLeap.visitorId });
584
+ window.UserLeap.visitorId = e || Ze(), M.info("NewVid", { vid: window.UserLeap.visitorId }), x("vid", window.UserLeap.visitorId), e || (t[window.UserLeap.envId] = window.UserLeap.visitorId, D.setItemObject("sprig.anon.env.vid.map", t)), w.emit(g.VisitorIDUpdated, { visitorId: window.UserLeap.visitorId });
577
585
  }
578
- function ft(t, e, n, s) {
586
+ function bt(t, e, n, s) {
579
587
  var r, i;
580
588
  try {
581
589
  if (t.endsWith("mock_snippet.html"))
582
590
  return;
583
- T.info("PageView", { url: t });
591
+ M.info("PageView", { url: t });
584
592
  const o = window.UserLeap._config.pageUrlEvents;
585
593
  let a = !1;
586
594
  if (o && o.length)
587
- for (let d = 0; d < o.length && (a = Xe(o[d], t), !a); d++)
595
+ for (let d = 0; d < o.length && (a = tt(o[d], t), !a); d++)
588
596
  ;
589
597
  if (!a)
590
598
  return;
591
599
  window.UserLeap.debugMode && console.info("[DEBUG] Sprig trackPageView", t);
592
600
  const l = { url: t };
593
- s && (l.trackPageView = !0), window.UserLeap._queue.push(["track", ut, e, l, n]);
594
- const c = (r = document == null ? void 0 : document.querySelector('meta[name="description"]')) == null ? void 0 : r.getAttribute("content");
595
- (i = I.replay) == null || i.RecordPageView({ ...c && { description: c }, url: t, referrer: document.referrer, pageTitle: document.title });
601
+ s && (l.trackPageView = !0), window.UserLeap._queue.push(["track", mt, e, l, n]);
602
+ const p = (r = document == null ? void 0 : document.querySelector('meta[name="description"]')) == null ? void 0 : r.getAttribute("content");
603
+ (i = k.replay) == null || i.RecordPageView({ ...p && { description: p }, url: t, referrer: document.referrer, pageTitle: document.title });
596
604
  } catch (o) {
597
605
  o instanceof Error && (o.stack = t, window.UserLeap.reportError("trackPageView", o)), console.warn("[Sprig] (ERR-428) Failed to track page view", o);
598
606
  }
@@ -601,28 +609,28 @@ function Jt() {
601
609
  const t = "Backbone" in window && window.Backbone && window.Backbone.history ? window.Backbone.history : window.history;
602
610
  "pushState" in t && (t.pushState = /* @__PURE__ */ ((e) => function(...n) {
603
611
  const s = e.apply(this, n), r = new Event("pushState");
604
- return window.dispatchEvent(r), ee(r), s;
612
+ return window.dispatchEvent(r), te(r), s;
605
613
  })(t.pushState)), "replaceState" in t && (t.replaceState = /* @__PURE__ */ ((e) => function(...n) {
606
614
  const s = e.apply(this, n), r = new Event("replaceState");
607
- return window.dispatchEvent(r), ee(r), s;
608
- })(t.replaceState)), ["hashchange", "popstate"].forEach((e) => window.addEventListener(e, ee, !0));
615
+ return window.dispatchEvent(r), te(r), s;
616
+ })(t.replaceState)), ["hashchange", "popstate"].forEach((e) => window.addEventListener(e, te, !0));
609
617
  }
610
- async function he(t, e) {
611
- const n = Ee();
618
+ async function Ue(t, e) {
619
+ const n = De();
612
620
  t && !e && (window.UserLeap._config.mode = $t);
613
- const s = _e(F(window.UserLeap)), r = await C(function(i) {
614
- const o = new URL(R("1", [q], "questions"));
621
+ const s = ge(T(window.UserLeap)), r = await C(function(i) {
622
+ const o = new URL(R("1", [F], "questions"));
615
623
  return Object.entries(i || {}).forEach(([a, l]) => {
616
624
  l && o.searchParams.append(a, String(l));
617
625
  }), o.toString();
618
626
  }({ desktopDisplay: window.UserLeap._config.desktopDisplay, isMobile: s, previewLanguage: window.UserLeap._config.previewLanguage, surveyid: t == null ? void 0 : t.surveyId, surveytemplateid: t == null ? void 0 : t.surveyTemplateId, vid: n }), { shouldDropOnRateLimit: !0 });
619
627
  if (!r.ok)
620
628
  return r.reportError && r.error && (console.warn("[Sprig] (ERR-414) Failed to request questions from the server", r.error), window.UserLeap.reportError("getQuestions", r.error)), { success: !1, surveyState: "no survey" };
621
- if (r.json.delay && await Ze(r.json.delay), !r.json.isFeedback)
622
- return Y(r.json, Z);
629
+ if (r.json.delay && await rt(r.json.delay), !r.json.isFeedback)
630
+ return X(r.json, ee);
623
631
  {
624
- const { feedbackLabel: i, productConfig: o, surveyUuid: a, feedbackCustomStyles: l } = r.json, { buttonTheme: c, placement: d, desktopDisplay: p } = o;
625
- dt({ customStyles: l, buttonTheme: c, desktopDisplay: p, eventId: 0, feedbackLabel: i, placement: d, surveyUuid: a, surveyId: t == null ? void 0 : t.surveyId }, r.json);
632
+ const { feedbackLabel: i, productConfig: o, surveyUuid: a, feedbackCustomStyles: l } = r.json, { buttonTheme: p, placement: d, desktopDisplay: c } = o;
633
+ pt({ customStyles: l, buttonTheme: p, desktopDisplay: c, eventId: 0, feedbackLabel: i, placement: d, surveyUuid: a, surveyId: t == null ? void 0 : t.surveyId }, r.json);
626
634
  }
627
635
  }
628
636
  function Qt(t) {
@@ -638,56 +646,56 @@ function Qt(t) {
638
646
  const a = r[i];
639
647
  r[i] = r[o], r[o] = a;
640
648
  }
641
- }(e), (e || n || s) && (Jt(), ee());
649
+ }(e), (e || n || s) && (Jt(), te());
642
650
  }
643
651
  const Yt = function(t) {
644
652
  if (!window.UserLeap)
645
653
  return;
646
654
  const e = async (r = {}) => {
647
- var U, h, L, E, O;
648
- const { userId: i, anonymousId: o, metadata: a = {}, properties: l, showSurveyCallback: c } = r;
655
+ var L, f, S, _, O;
656
+ const { userId: i, anonymousId: o, metadata: a = {}, properties: l, showSurveyCallback: p } = r;
649
657
  let { eventName: d } = r;
650
- if (window.UserLeap.debugMode && d !== ut && console.info("[DEBUG] Sprig track", r), t.mode === "test")
658
+ if (window.UserLeap.debugMode && d !== mt && console.info("[DEBUG] Sprig track", r), t.mode === "test")
651
659
  return;
652
- const p = D.getItem("sprig.previewKey") ?? void 0;
660
+ const c = D.getItem("sprig.previewKey") ?? void 0;
653
661
  if (t.requireUserIdForTracking && !window.UserLeap.userId && !i) {
654
- const v = "[Sprig] - Skipping tracking without userId";
655
- return console.warn(v), { success: !1, message: v, surveyState: "no survey" };
662
+ const b = "[Sprig] - Skipping tracking without userId";
663
+ return console.warn(b), { success: !1, message: b, surveyState: "no survey" };
656
664
  }
657
665
  if (!d || d.trim().length === 0) {
658
666
  d = d ? String(d) : "";
659
- const v = "[Sprig] - Invalid event name " + d;
660
- return console.warn(v), { success: !1, message: v, surveyState: "no survey" };
667
+ const b = "[Sprig] - Invalid event name " + d;
668
+ return console.warn(b), { success: !1, message: b, surveyState: "no survey" };
661
669
  }
662
- const m = Z ?? window.location.href;
663
- a.url || (a.url = m), x("trackStartUrl", m), (h = (U = window.UserLeap) == null ? void 0 : U._config) != null && h.optimizelyEnabled && (ue(F(window.UserLeap)) || ie.getAndSetWebOptimizelyExperiments(), a.optimizelyExperiments = Object.assign({}, ie.getAllOptimizelyExperiments())), (E = (L = window.UserLeap) == null ? void 0 : L._config) != null && E.launchDarklyEnabled && (a.launchDarklyFlags = Ue.getAllLaunchDarklyVariations()), i && (window.UserLeap.userId = i), o && (window.UserLeap.partnerAnonymousId = o), l && (a.eventProperties = l), (O = I.replay) == null || O.RecordEvent({ name: d, url: a.url }), T.info("TrackEvent", { eventName: d });
664
- const u = window.UserLeap.delayingSurvey || ot() ? await C(R("1", [j], "events/batch"), { body: JSON.stringify({ events: [{ event: d, metadata: a }], previewKey: p }), method: "POST", shouldDropOnRateLimit: !0 }) : await C(R("1", [j], "events"), { body: JSON.stringify({ event: d, metadata: a, previewKey: p }), method: "POST", shouldDropOnRateLimit: !0 });
670
+ const m = ee ?? window.location.href;
671
+ a.url || (a.url = m), x("trackStartUrl", m), (f = (L = window.UserLeap) == null ? void 0 : L._config) != null && f.optimizelyEnabled && (ie(T(window.UserLeap)) || oe.getAndSetWebOptimizelyExperiments(), a.optimizelyExperiments = Object.assign({}, oe.getAllOptimizelyExperiments())), (_ = (S = window.UserLeap) == null ? void 0 : S._config) != null && _.launchDarklyEnabled && (a.launchDarklyFlags = ke.getAllLaunchDarklyVariations()), i && (window.UserLeap.userId = i), o && (window.UserLeap.partnerAnonymousId = o), l && (a.eventProperties = l), (O = k.replay) == null || O.RecordEvent({ name: d, url: a.url }), M.info("TrackEvent", { eventName: d });
672
+ const u = window.UserLeap.delayingSurvey || dt() ? await C(R("1", [q], "events/batch"), { body: JSON.stringify({ events: [{ event: d, metadata: a }], previewKey: c }), method: "POST", shouldDropOnRateLimit: !0 }) : await C(R("1", [q], "events"), { body: JSON.stringify({ event: d, metadata: a, previewKey: c }), method: "POST", shouldDropOnRateLimit: !0 });
665
673
  if (!u.ok) {
666
- const v = "[Sprig] (ERR-421) Failed to track event";
667
- return u.reportError && (console.warn(v, u.error), u.error && window.UserLeap.reportError("track", u.error)), { success: !1, message: v, error: u.error, surveyState: "no survey" };
674
+ const b = "[Sprig] (ERR-421) Failed to track event";
675
+ return u.reportError && (console.warn(b, u.error), u.error && window.UserLeap.reportError("track", u.error)), { success: !1, message: b, error: u.error, surveyState: "no survey" };
668
676
  }
669
677
  i && x("uid", i), o && x("aid", o);
670
678
  const y = u.json;
671
679
  y.invalidPreviewKey && D.removeItem("sprig.previewKey");
672
- const _ = a.trackPageView ? a.url : void 0;
673
- return y != null && y.feedbackButton && dt(y.feedbackButton, void 0, _), await async function(v, k) {
680
+ const I = a.trackPageView ? a.url : void 0;
681
+ return y != null && y.feedbackButton && pt(y.feedbackButton, void 0, I), await async function(b, E) {
674
682
  var z, K;
675
683
  let A = !0;
676
- return !(k && ((z = v == null ? void 0 : v.json) != null && z.surveyId) && (window.UserLeap.delayingSurvey = !0, A = await k(v.json.surveyId), window.UserLeap.delayingSurvey = !1, !A)) && ((K = v == null ? void 0 : v.json) != null && K.delay && !window.UserLeap.isMobileSDK && (window.UserLeap.delayingSurvey = !0, await Ze(v.json.delay), window.UserLeap.delayingSurvey = !1), A);
677
- }(u, c) ? function(v) {
684
+ return !(E && ((z = b == null ? void 0 : b.json) != null && z.surveyId) && (window.UserLeap.delayingSurvey = !0, A = await E(b.json.surveyId), window.UserLeap.delayingSurvey = !1, !A)) && ((K = b == null ? void 0 : b.json) != null && K.delay && !window.UserLeap.isMobileSDK && (window.UserLeap.delayingSurvey = !0, await rt(b.json.delay), window.UserLeap.delayingSurvey = !1), A);
685
+ }(u, p) ? function(b) {
678
686
  if (!window.UserLeap._config.dismissOnPageChange)
679
687
  return !0;
680
- const k = new URL(v), A = new URL(Z ?? window.location.href);
681
- return k.hostname === A.hostname && k.pathname === A.pathname;
682
- }(m) ? Y(y, _) : { success: !1, message: "Study should not be displayed after page navigation", surveyState: "no survey" } : { success: !1, message: "[Sprig] Callback returned false, aborting rendering of survey", surveyState: "no survey" };
688
+ const E = new URL(b), A = new URL(ee ?? window.location.href);
689
+ return E.hostname === A.hostname && E.pathname === A.pathname;
690
+ }(m) ? X(y, I) : { success: !1, message: "Study should not be displayed after page navigation", surveyState: "no survey" } : { success: !1, message: "[Sprig] Callback returned false, aborting rendering of survey", surveyState: "no survey" };
683
691
  }, n = (r, i) => {
684
692
  var a;
685
- const o = (a = r == null ? void 0 : r.querySelector(`[id="${xe}"]`)) == null ? void 0 : a.contentDocument;
686
- o && ne({ document: o, elementId: "ul-custom-style", styleString: i });
687
- }, s = { displaySurvey: async (r) => (console.warn("[Sprig] displaySurvey should only be used to debug your studies; not intended for production usage."), window.UserLeap("dismissActiveSurvey", W.Override), he({ surveyId: r }, !0)), _previewSurvey(r) {
688
- window.UserLeap("dismissActiveSurvey", W.Override), he({ surveyTemplateId: r }, !1);
693
+ const o = (a = r == null ? void 0 : r.querySelector(`[id="${Ae}"]`)) == null ? void 0 : a.contentDocument;
694
+ o && se({ document: o, elementId: "ul-custom-style", styleString: i });
695
+ }, s = { displaySurvey: async (r) => (console.warn("[Sprig] displaySurvey should only be used to debug your studies; not intended for production usage."), window.UserLeap("dismissActiveSurvey", W.Override), Ue({ surveyId: r }, !0)), _previewSurvey(r) {
696
+ window.UserLeap("dismissActiveSurvey", W.Override), Ue({ surveyTemplateId: r }, !1);
689
697
  }, _reviewSurvey(r) {
690
- window.UserLeap("dismissActiveSurvey", W.Override), he({ surveyId: r }, !1);
698
+ window.UserLeap("dismissActiveSurvey", W.Override), Ue({ surveyId: r }, !1);
691
699
  }, previewSurvey(r) {
692
700
  s._previewSurvey(r);
693
701
  }, reviewSurvey(r) {
@@ -725,16 +733,16 @@ const Yt = function(t) {
725
733
  return console.warn(d), { success: !1, message: d };
726
734
  }
727
735
  if (a) {
728
- a.email && !a[J] && (a[J] = a.email, delete a.email);
736
+ a.email && !a[Q] && (a[Q] = a.email, delete a.email);
729
737
  const d = Object.keys(a);
730
- for (const p of d)
731
- a[p] === pe[p] && delete a[p];
738
+ for (const c of d)
739
+ a[c] === we[c] && delete a[c];
732
740
  }
733
741
  if (!(a && Object.keys(a).length !== 0 || i && window.UserLeap.userId !== i || o && window.UserLeap.partnerAnonymousId !== o))
734
742
  return { success: !0 };
735
743
  const l = {};
736
- let c;
737
- return i && (l.userId = window.UserLeap.userId = i), o && (l.partnerAnonymousId = window.UserLeap.partnerAnonymousId = o), a && Object.keys(a).length > 0 ? (c = await C(R("1", [q, j], "attributes"), { body: JSON.stringify(a), method: "PUT" }), c.ok ? Object.assign(pe, a) : c.reportError && (console.warn("[Sprig] (ERR-432) identifyAndSetAttributes failed", c.error), c.error && window.UserLeap.reportError("identifyAndSetAttributes", c.error))) : c = await C(R("1", [q, j]), { body: JSON.stringify(l), method: "PUT" }), a && a[J] && (window.UserLeap.email = a[J]), c.ok && (i && x("uid", i), o && x("aid", o)), { success: !!c.ok };
744
+ let p;
745
+ return i && (l.userId = window.UserLeap.userId = i), o && (l.partnerAnonymousId = window.UserLeap.partnerAnonymousId = o), a && Object.keys(a).length > 0 ? (p = await C(R("1", [F, q], "attributes"), { body: JSON.stringify(a), method: "PUT" }), p.ok ? Object.assign(we, a) : p.reportError && (console.warn("[Sprig] (ERR-432) identifyAndSetAttributes failed", p.error), p.error && window.UserLeap.reportError("identifyAndSetAttributes", p.error))) : p = await C(R("1", [F, q]), { body: JSON.stringify(l), method: "PUT" }), a && a[Q] && (window.UserLeap.email = a[Q]), p.ok && (i && x("uid", i), o && x("aid", o)), { success: !!p.ok };
738
746
  }, async removeAttributes(r) {
739
747
  if (window.UserLeap.debugMode && console.info("[DEBUG] Sprig removeAttributes", r), t.mode === "test")
740
748
  return;
@@ -746,7 +754,7 @@ const Yt = function(t) {
746
754
  const o = "[Sprig] - Skipping tracking without userId";
747
755
  return console.warn(o), { success: !1, message: o };
748
756
  }
749
- const i = await C(R("1", [q, j], "attributes"), { body: JSON.stringify({ delete: r }), method: "DELETE" });
757
+ const i = await C(R("1", [F, q], "attributes"), { body: JSON.stringify({ delete: r }), method: "DELETE" });
750
758
  return !i.ok && i.reportError && (console.warn("[Sprig] (ERR-433) Remove attributes failed", i.error), i.error && window.UserLeap.reportError("removeAttributes", i.error)), { success: !!i.ok };
751
759
  }, async addSurveyListener(r) {
752
760
  w.on(g.SurveyLifeCycle, r);
@@ -769,8 +777,8 @@ const Yt = function(t) {
769
777
  if (t.mode === "test" || r === window.UserLeap.userId)
770
778
  return;
771
779
  window.UserLeap.userId = r;
772
- const i = window.UserLeap.visitorId, o = await C(R("1", [q, j]), { body: JSON.stringify({ userId: r }), method: "PUT" });
773
- o.ok ? (i !== window.UserLeap.visitorId && ((a = I.replay) == null || a.clearUserReplayData()), x("uid", r)) : o.reportError && (console.warn("[Sprig] (ERR-420) Failed to set user id", o.error), o.error && window.UserLeap.reportError("setUserId", o.error));
780
+ const i = window.UserLeap.visitorId, o = await C(R("1", [F, q]), { body: JSON.stringify({ userId: r }), method: "PUT" });
781
+ o.ok ? (i !== window.UserLeap.visitorId && ((a = k.replay) == null || a.clearUserReplayData()), x("uid", r)) : o.reportError && (console.warn("[Sprig] (ERR-420) Failed to set user id", o.error), o.error && window.UserLeap.reportError("setUserId", o.error));
774
782
  }, async setPartnerAnonymousId(r) {
775
783
  if (window.UserLeap.debugMode && console.info("[DEBUG] Sprig setPartnerAnonymousId", r), r == null) {
776
784
  const i = `[Sprig] - Invalid partnerAnonymousId ${r}`;
@@ -778,29 +786,31 @@ const Yt = function(t) {
778
786
  }
779
787
  return window.UserLeap.partnerAnonymousId = r, x("aid", r), { success: !0 };
780
788
  }, track: async (r, i, o = {}, a = void 0) => e({ eventName: r, properties: i, metadata: o, showSurveyCallback: a }), identifyAndTrack: async (r) => await e(r), trackPageView(r, i = void 0, o = void 0, a = !0) {
781
- Z = r, ft(r, i, o, a);
789
+ ee = r, bt(r, i, o, a);
782
790
  }, applyFeedbackStyles({ button: r = "", view: i = "" }) {
783
- window.UserLeap.feedbackCustomStyles = i, document.getElementById("sprig-feedback-style") && ne({ document, elementId: "ul-custom-style", styleString: r, nonce: window.UserLeap.styleNonce }), n(document.querySelector(".ul-container-feedback"), i);
791
+ window.UserLeap.feedbackCustomStyles = i, document.getElementById("sprig-feedback-style") && se({ document, elementId: "ul-custom-style", styleString: r, nonce: window.UserLeap.styleNonce }), n(document.querySelector(".ul-container-feedback"), i);
784
792
  }, applyStyles(r) {
785
793
  window.UserLeap.customStyles = r, n(window.UserLeap.container, r);
786
794
  }, setWindowDimensions(r, i) {
787
- var c, d;
795
+ var m, u;
788
796
  const o = typeof r == "string" ? parseInt(r, 10) : r, a = typeof i == "string" ? parseInt(i, 10) : i;
789
- if (isNaN(o) || isNaN(a) || (window.UserLeap.windowDimensions = { width: o, height: a }), !window.UserLeap.frameId)
797
+ isNaN(o) || isNaN(a) || (window.UserLeap.windowDimensions = { width: o, height: a });
798
+ const l = T(window.UserLeap), p = ge(l), d = l["userleap-platform"] === "web";
799
+ if (!window.UserLeap.frameId)
790
800
  return;
791
- const l = document.getElementById(window.UserLeap.frameId);
792
- l && (window.UserLeap.useMobileStyling && ((c = window.UserLeap.windowDimensions) != null && c.width && (l.style.width = `${window.UserLeap.windowDimensions.width}px`), (d = window.UserLeap.windowDimensions) != null && d.height && (l.style.maxHeight = window.UserLeap.windowDimensions.height - 20 + "px"), l.contentDocument && (l.style.height = String(Mt(l.contentDocument)[0]) + "px")), w.emit(g.SurveyDimensions, { name: g.SurveyDimensions, contentFrameWidth: l.clientWidth, contentFrameHeight: l.clientHeight, "survey.id": parseInt(window.UserLeap.container.dataset.studyId) }));
801
+ const c = document.getElementById(window.UserLeap.frameId);
802
+ c && (window.UserLeap.useMobileStyling && ((m = window.UserLeap.windowDimensions) != null && m.width && (c.style.width = `${window.UserLeap.windowDimensions.width}px`), (u = window.UserLeap.windowDimensions) != null && u.height && (c.style.maxHeight = window.UserLeap.windowDimensions.height - 20 + "px"), c.contentDocument && (c.style.height = String(Mt(c.contentDocument, d && !p, et(l))[0]) + "px")), w.emit(g.SurveyDimensions, { name: g.SurveyDimensions, contentFrameWidth: c.clientWidth, contentFrameHeight: c.clientHeight, "survey.id": parseInt(window.UserLeap.container.dataset.studyId) }));
793
803
  }, logoutUser() {
794
804
  var r;
795
- window.UserLeap.debugMode && console.info("[DEBUG] Sprig logout"), T.info("LogOut", { vid: window.UserLeap.visitorId, userId: window.UserLeap.userId }), window.UserLeap.visitorId = null, window.UserLeap.userId = null, window.UserLeap.partnerAnonymousId = null, window.UserLeap.token = null, window.UserLeap.email = null, D.removeItem("userleap.ids"), window.UserLeap._queue.isPaused() && window.UserLeap._queue.empty(), yt(), (r = I.replay) == null || r.clearUserReplayData(), window.UserLeap._queue.unpause();
805
+ window.UserLeap.debugMode && console.info("[DEBUG] Sprig logout"), M.info("LogOut", { vid: window.UserLeap.visitorId, userId: window.UserLeap.userId }), window.UserLeap.visitorId = null, window.UserLeap.userId = null, window.UserLeap.partnerAnonymousId = null, window.UserLeap.token = null, window.UserLeap.email = null, D.removeItem("userleap.ids"), window.UserLeap._queue.isPaused() && window.UserLeap._queue.empty(), ht(), (r = k.replay) == null || r.clearUserReplayData(), window.UserLeap._queue.unpause();
796
806
  }, teardown() {
797
- ["hashchange", "popstate"].forEach((r) => window.removeEventListener(r, ee, !0)), window.UserLeap._config.interactiveEvents && gt(), window.UserLeap("dismissActiveSurvey", W.API), delete window.UserLeap, delete window.Sprig, delete window._Sprig;
807
+ ["hashchange", "popstate"].forEach((r) => window.removeEventListener(r, te, !0)), window.UserLeap._config.interactiveEvents && ft(), window.UserLeap("dismissActiveSurvey", W.API), delete window.UserLeap, delete window.Sprig, delete window._Sprig;
798
808
  }, integrateOptimizely(r, i = !0) {
799
809
  var o, a;
800
810
  if ((a = (o = window.UserLeap) == null ? void 0 : o._config) != null && a.optimizelyEnabled)
801
811
  try {
802
812
  const l = typeof r == "string" ? JSON.parse(r) : r;
803
- ie.setOptimizelyExperiment(l, i);
813
+ oe.setOptimizelyExperiment(l, i);
804
814
  } catch (l) {
805
815
  console.warn("[Sprig] Error with integrating Optimizely data"), l instanceof Error && window.UserLeap.reportError("integrateOptimizely", l);
806
816
  }
@@ -811,13 +821,13 @@ const Yt = function(t) {
811
821
  if (!((o = (i = window.UserLeap) == null ? void 0 : i._config) != null && o.optimizelyEnabled))
812
822
  return void console.warn("[SPRIG] Optimizely integration is currently not enabled for your product.");
813
823
  r.notificationCenter.addNotificationListener("ACTIVATE:experiment, user_id,attributes, variation, event", ({ experiment: a, variation: l }) => {
814
- const c = { experiments: [{ id: a.id, variation: l.key }] };
815
- window.UserLeap("integrateOptimizely", c, !1);
824
+ const p = { experiments: [{ id: a.id, variation: l.key }] };
825
+ window.UserLeap("integrateOptimizely", p, !1);
816
826
  });
817
827
  }, importLaunchDarklyData(r) {
818
828
  var i, o;
819
- (o = (i = window.UserLeap) == null ? void 0 : i._config) != null && o.launchDarklyEnabled ? Ue.setLDFlagsVariations(r) : console.warn("[SPRIG] LaunchDarkly integration is currently not enabled for your product.");
820
- }, setVisitorAttribute: (r, i) => (console.warn("[Sprig] setVisitorAttribute is deprecated. Please use setAttribute"), s.setAttribute(r, i)), setEmail: async (r) => s.setAttribute(J, r), setVisitorEmail: async (r) => (console.warn("[Sprig] setVisitorEmail is deprecated. Please use setEmail"), s.setEmail(r)), _generateVideoUploadUrl: async (r) => async function(i) {
829
+ (o = (i = window.UserLeap) == null ? void 0 : i._config) != null && o.launchDarklyEnabled ? ke.setLDFlagsVariations(r) : console.warn("[SPRIG] LaunchDarkly integration is currently not enabled for your product.");
830
+ }, setVisitorAttribute: (r, i) => (console.warn("[Sprig] setVisitorAttribute is deprecated. Please use setAttribute"), s.setAttribute(r, i)), setEmail: async (r) => s.setAttribute(Q, r), setVisitorEmail: async (r) => (console.warn("[Sprig] setVisitorEmail is deprecated. Please use setEmail"), s.setEmail(r)), _generateVideoUploadUrl: async (r) => async function(i) {
821
831
  var a;
822
832
  if (!i)
823
833
  return;
@@ -825,8 +835,8 @@ const Yt = function(t) {
825
835
  try {
826
836
  const l = await fetch(o, { method: "POST", cache: "no-cache", headers: { "Content-Type": "application/json" }, body: JSON.stringify(i) });
827
837
  if (l.ok) {
828
- const c = await l.json();
829
- return (a = c == null ? void 0 : c.upload) == null ? void 0 : a.url;
838
+ const p = await l.json();
839
+ return (a = p == null ? void 0 : p.upload) == null ? void 0 : a.url;
830
840
  }
831
841
  return null;
832
842
  } catch (l) {
@@ -836,32 +846,32 @@ const Yt = function(t) {
836
846
  Dt(r, i);
837
847
  }, _completeSessionReplay: async ({ surveyId: r, responseGroupUuid: i, eventDigest: o }) => {
838
848
  var a;
839
- return I.replay ? (a = I.replay) == null ? void 0 : a._completeSessionReplay({ surveyId: r, responseGroupUuid: i, eventDigest: o, headers: F(window.UserLeap) }) : (window.UserLeap.reportError("_completeSessionReplay", new Error("Replay module not registered")), !1);
849
+ return k.replay ? (a = k.replay) == null ? void 0 : a._completeSessionReplay({ surveyId: r, responseGroupUuid: i, eventDigest: o, headers: T(window.UserLeap) }) : (window.UserLeap.reportError("_completeSessionReplay", new Error("Replay module not registered")), !1);
840
850
  } };
841
851
  Object.assign(window.UserLeap, s);
842
852
  };
843
853
  async function Xt(t, e, n = {}, s = {}) {
844
- const r = window.__cfg && window.__cfg.mode, i = Ee(), o = window.UserLeap.envId, a = window.document.documentElement, l = { mode: r, screenWidth: window.screen.width, screenHeight: window.screen.height, clientWidth: a.clientWidth, clientHeight: a.clientHeight, location: Z ?? window.location.href, language: window.navigator.language, ...n }, c = { action: t, breadcrumbs: T.breadcrumbs, err: { message: `${e == null ? void 0 : e.name} - ${e == null ? void 0 : e.message}`, stack: e == null ? void 0 : e.stack }, meta: l, vid: i, envId: o, ...s };
845
- (await C(R("1", null, "errors"), { method: "POST", headers: { "x-ul-error": window.btoa(`userleap-${Date.now()}-error`) }, body: JSON.stringify(c), shouldDropOnRateLimit: !0 })).ok || console.warn("[Sprig] (ERR-444) Failed to report error to API", e);
854
+ const r = window.__cfg && window.__cfg.mode, i = De(), o = window.UserLeap.envId, a = window.document.documentElement, l = { mode: r, screenWidth: window.screen.width, screenHeight: window.screen.height, clientWidth: a.clientWidth, clientHeight: a.clientHeight, location: ee ?? window.location.href, language: window.navigator.language, ...n }, p = { action: t, breadcrumbs: M.breadcrumbs, err: { message: `${e == null ? void 0 : e.name} - ${e == null ? void 0 : e.message}`, stack: e == null ? void 0 : e.stack }, meta: l, vid: i, envId: o, ...s };
855
+ (await C(R("1", null, "errors"), { method: "POST", headers: { "x-ul-error": window.btoa(`userleap-${Date.now()}-error`) }, body: JSON.stringify(p), shouldDropOnRateLimit: !0 })).ok || console.warn("[Sprig] (ERR-444) Failed to report error to API", e);
846
856
  }
847
857
  function Zt(t = {}) {
848
858
  var s;
849
859
  (s = window.SprigLoggerCallback) == null || s.call(window, "Initializing Sprig");
850
860
  const e = new URLSearchParams(window.location.search).get("sprigPreviewKey") ?? "";
851
861
  async function n() {
852
- var p, m, u, y, _;
862
+ var c, m, u, y, I;
853
863
  if (window.UserLeap.loaded)
854
864
  return;
855
- if ((p = window.SprigLoggerCallback) == null || p.call(window, "Loading Sprig"), window.UserLeap.reportError = Xt, window.UserLeap.loaded = !0, window.UserLeap._config = Object.assign({}, t, window.UserLeap.config), window.UserLeap.delayingSurvey = !1, window.UserLeap._config && typeof window.UserLeap._config == "object")
856
- for (const b in window.UserLeap._config)
857
- window.UserLeap[b] = window.UserLeap._config[b];
865
+ if ((c = window.SprigLoggerCallback) == null || c.call(window, "Loading Sprig"), window.UserLeap.reportError = Xt, window.UserLeap.loaded = !0, window.UserLeap._config = Object.assign({}, t, window.UserLeap.config), window.UserLeap.delayingSurvey = !1, window.UserLeap._config && typeof window.UserLeap._config == "object")
866
+ for (const h in window.UserLeap._config)
867
+ window.UserLeap[h] = window.UserLeap._config[h];
858
868
  if (!window.UserLeap.envId) {
859
869
  if (!window.UserLeap.appId)
860
870
  throw new Error("Missing Environment id");
861
871
  window.UserLeap.envId = window.UserLeap.appId;
862
872
  }
863
873
  window.UserLeap.debugMode && console.info("[DEBUG] Sprig debug mode enabled");
864
- const r = mt(), i = window.UserLeap.sampleRate;
874
+ const r = vt(), i = window.UserLeap.sampleRate;
865
875
  let o = r.sampled;
866
876
  if (i) {
867
877
  if (o === null && (o = Math.random() < i, x("sampled", o)), !o)
@@ -871,37 +881,37 @@ function Zt(t = {}) {
871
881
  window.UserLeap._API_URL || (window.UserLeap._API_URL = "https://api.sprig.com");
872
882
  const a = [...window.UserLeap._queue];
873
883
  window.UserLeap._queue = new zt(window.UserLeap, []), window.UserLeap._queue.pause();
874
- for (let b = 0; b < a.length; b++)
875
- window.UserLeap._queue.push(a[b]);
884
+ for (let h = 0; h < a.length; h++)
885
+ window.UserLeap._queue.push(a[h]);
876
886
  const l = r.token;
877
- l ? (window.UserLeap.token = l, window.UserLeap.visitorId = r.vid ?? null, window.UserLeap.userId = r.uid ?? null, window.UserLeap.partnerAnonymousId = r.aid ?? null) : yt();
878
- const c = ue(F(window.UserLeap));
887
+ l ? (window.UserLeap.token = l, window.UserLeap.visitorId = r.vid ?? null, window.UserLeap.userId = r.uid ?? null, window.UserLeap.partnerAnonymousId = r.aid ?? null) : ht();
888
+ const p = ie(T(window.UserLeap));
879
889
  (m = window.SprigLoggerCallback) == null || m.call(window, "Sprig fetching config");
880
- const d = await async function(b) {
881
- var E, O;
882
- const U = F(window.UserLeap);
883
- document.addEventListener("securitypolicyviolation", Me);
884
- const h = await Qe(R("1", [q], "config"), { headers: U });
885
- if (document.removeEventListener("securitypolicyviolation", Me), !h.ok)
886
- return (E = window.SprigLoggerCallback) == null || E.call(window, "Sprig config fetch failed"), h.reportError && (console.warn("[Sprig] (ERR-422) Failed to load configuration", h.error), h.error && window.UserLeap.reportError("applyRemoteConfig", h.error)), qe("Disabled: failed to fetch configuration"), b;
887
- const L = h.json;
888
- return L != null && L.disabled ? ((O = window.SprigLoggerCallback) == null || O.call(window, "Sprig config fetch disabled"), qe(`Disabled: ${L.disabled}`), { disabled: L.disabled }) : Object.assign({}, L, b);
890
+ const d = await async function(h) {
891
+ var _, O;
892
+ const L = T(window.UserLeap);
893
+ document.addEventListener("securitypolicyviolation", Fe);
894
+ const f = await Xe(R("1", [F], "config"), { headers: L });
895
+ if (document.removeEventListener("securitypolicyviolation", Fe), !f.ok)
896
+ return (_ = window.SprigLoggerCallback) == null || _.call(window, "Sprig config fetch failed"), f.reportError && (console.warn("[Sprig] (ERR-422) Failed to load configuration", f.error), f.error && window.UserLeap.reportError("applyRemoteConfig", f.error)), ze("Disabled: failed to fetch configuration"), h;
897
+ const S = f.json;
898
+ return S != null && S.disabled ? ((O = window.SprigLoggerCallback) == null || O.call(window, "Sprig config fetch disabled"), ze(`Disabled: ${S.disabled}`), { disabled: S.disabled }) : Object.assign({}, S, h);
889
899
  }(t);
890
- (u = window.SprigLoggerCallback) == null || u.call(window, "Sprig fetched config"), Bt({ isWeb: !c, reportingIntervalSeconds: d.metricsReportingEnabled || d.mobileMetricsReportingEnabled ? d.metricsReportingIntervalSeconds : 0, thresholds: d.metricThresholds, postMetrics: async (b) => {
891
- var U;
892
- await C(R("1", [q], "metrics"), { body: b, method: "POST", headers: { "x-ul-replay-enabled": `${!!((U = I.replay) != null && U.isReplayRecording())}` }, shouldDropOnRateLimit: !0 });
893
- } }), await ((y = I.replay) == null ? void 0 : y.initializeReplay({ maxReplayDurationSeconds: d.maxReplayDurationSeconds, maxInflightRequests: window.UserLeap.maxInflightReplayRequests ?? 2, replaySettings: d.replaySettings })), Yt(d), await Qt(d), window.UserLeap._queue.unpause(), (_ = window.SprigLoggerCallback) == null || _.call(window, "SdkReady"), w.emit(g.SDKReady, { mobileMetricsReportingEnabled: !!d.mobileMetricsReportingEnabled, metricsReportingInterval: d.metricsReportingIntervalSeconds || 0, metricsThresholds: d.metricThresholds || [], maxMobileReplayDurationSeconds: d.maxMobileReplayDurationSeconds, mobileReplaySettings: d.mobileReplaySettings }), w.emit(g.VisitorIDUpdated, { visitorId: window.UserLeap.visitorId }), w.on(g.VisitorIDUpdated, () => {
894
- for (const b in pe)
895
- delete pe[b];
900
+ (u = window.SprigLoggerCallback) == null || u.call(window, "Sprig fetched config"), Bt({ isWeb: !p, reportingIntervalSeconds: d.metricsReportingEnabled || d.mobileMetricsReportingEnabled ? d.metricsReportingIntervalSeconds : 0, thresholds: d.metricThresholds, postMetrics: async (h) => {
901
+ var L;
902
+ await C(R("1", [F], "metrics"), { body: h, method: "POST", headers: { "x-ul-replay-enabled": `${!!((L = k.replay) != null && L.isReplayRecording())}` }, shouldDropOnRateLimit: !0 });
903
+ } }), await ((y = k.replay) == null ? void 0 : y.initializeReplay({ maxReplayDurationSeconds: d.maxReplayDurationSeconds, maxInflightRequests: window.UserLeap.maxInflightReplayRequests ?? 2, replaySettings: d.replaySettings })), Yt(d), await Qt(d), window.UserLeap._queue.unpause(), (I = window.SprigLoggerCallback) == null || I.call(window, "SdkReady"), w.emit(g.SDKReady, { mobileMetricsReportingEnabled: !!d.mobileMetricsReportingEnabled, metricsReportingInterval: d.metricsReportingIntervalSeconds || 0, metricsThresholds: d.metricThresholds || [], maxMobileReplayDurationSeconds: d.maxMobileReplayDurationSeconds, mobileReplaySettings: d.mobileReplaySettings }), w.emit(g.VisitorIDUpdated, { visitorId: window.UserLeap.visitorId }), w.on(g.VisitorIDUpdated, () => {
904
+ for (const h in we)
905
+ delete we[h];
896
906
  });
897
907
  }
898
- window.UserLeap.UPDATES = te, window.UserLeap("setPreviewKey", e), document.readyState === "complete" ? n() : window.attachEvent ? window.attachEvent("onload", n) : window.addEventListener("load", () => {
908
+ window.UserLeap.UPDATES = re, window.UserLeap("setPreviewKey", e), document.readyState === "complete" ? n() : window.attachEvent ? window.attachEvent("onload", n) : window.addEventListener("load", () => {
899
909
  n();
900
910
  }, !1);
901
911
  }
902
- class ke {
912
+ class xe {
903
913
  constructor() {
904
- this.UPDATES = te;
914
+ this.UPDATES = re;
905
915
  }
906
916
  displaySurvey(e) {
907
917
  window.Sprig("displaySurvey", e);
@@ -967,31 +977,31 @@ class ke {
967
977
  window.Sprig("teardown");
968
978
  }
969
979
  }
970
- const Je = { configure: (t) => {
980
+ const Ye = { configure: (t) => {
971
981
  if (!t.envId && !t.environmentId)
972
982
  throw new Error("Initialization Error: Sprig configure requires an environmentId");
973
983
  if (t.envId || (t.envId = t.environmentId ?? ""), t.installationMethod = "web-npm", window.Sprig)
974
984
  return window.Sprig;
975
985
  window.Sprig = function() {
976
986
  window.Sprig._queue.push(arguments);
977
- }, Object.getOwnPropertyNames(ke.prototype).map((n) => {
978
- n !== "constructor" && (window.Sprig[n] = ke.prototype[n]);
987
+ }, Object.getOwnPropertyNames(xe.prototype).map((n) => {
988
+ n !== "constructor" && (window.Sprig[n] = xe.prototype[n]);
979
989
  });
980
990
  const e = window.Sprig;
981
991
  return e.appId = t.envId, e._queue = [], window.UserLeap = e, Zt(t), window.Sprig;
982
- } }, dr = { sprig: Je, SprigAPI: ke, configure: Je.configure };
992
+ } }, dr = { sprig: Ye, SprigAPI: xe, configure: Ye.configure };
983
993
  export {
984
994
  ir as A,
985
995
  At as C,
986
996
  rr as D,
987
997
  sr as E,
988
- ke as S,
998
+ xe as S,
989
999
  Mt as a,
990
1000
  or as b,
991
1001
  dr as c,
992
1002
  nr as d,
993
- ne as e,
994
- M as i,
1003
+ se as e,
1004
+ j as i,
995
1005
  ar as r,
996
- Je as s
1006
+ Ye as s
997
1007
  };