@sprig-technologies/sprig-bundled 2.45.0 → 2.46.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
- import { u as G, a as n, h as Z, c as A, b as K, e as re, g as Oe, p as ae, F as ye, _ as se, T as be, A as kn, M as xe, d as je, f as wn, P as En, m as jn, n as In, o as Tn, S as _n, D as Re, x as rn, w as Dn, v as Sn } from "./view-Cu4weTLz.js";
2
- import { v as Pn, E as _e, h as Ae, A as $e, j as Ln, i as on } from "./index-Czvv7meW.js";
3
- import { B as oe, M as ie, b as de, O as He, Q as ce, S as Nn, L as Rn, u as Mn, a as Ce, H as Ve, g as Bn, c as qn } from "./getAttributedUrl-Dq1b-gQL.js";
4
- const pe = "https://cdn.sprig.com", I = { document: void 0, videojs: void 0 }, Fe = (e) => e + "-loading-spiner", W = "hidden", Ze = ".m3u8", De = "questionId", Se = "ul-video-recorder-camera-off-button", Pe = "ul-recording-in-session", Un = [{ type: "link", content: `${pe}/dependencies/videojs-record-4.5.0.min.css` }, { type: "script", content: `${pe}/dependencies/RecordRTC-5.6.2.js` }, { type: "script", content: `${pe}/dependencies/adapter.8.0.0.min.js` }, { type: "script", content: `${pe}/dependencies/videojs-record-4.5.0.min.js` }, { type: "script", content: `${pe}/userleap-web-upchunk-v2.2.2.js` }], sn = [{ type: "link", content: `${pe}/dependencies/video-js-7.18.0.min.css` }, { type: "script", content: `${pe}/dependencies/video-js-7.18.0.min.js` }, { type: "style", content: `/* progress control styles */
1
+ import { u as z, a as n, h as Z, c as A, b as K, e as re, g as Oe, p as ae, F as ye, _ as se, T as be, A as kn, M as ke, d as Ce, f as wn, P as En, m as jn, n as In, o as _n, S as Tn, D as Re, x as tn, w as Dn, v as Sn } from "./view-RRtNaAXH.js";
2
+ import { v as Pn, E as Te, h as rn, A as Ae, j as Nn, i as on } from "./index-ssZu7abp.js";
3
+ import { B as oe, M as ie, b as de, O as $e, Q as ce, S as Ln, L as Rn, u as Mn, a as xe, H as He, g as Bn, c as qn } from "./getAttributedUrl-CrSHEuDU.js";
4
+ const pe = "https://cdn.sprig.com", I = { document: void 0, videojs: void 0 }, Ve = (e) => e + "-loading-spiner", W = "hidden", Qe = ".m3u8", De = "questionId", Se = "ul-video-recorder-camera-off-button", Pe = "ul-recording-in-session", Un = [{ type: "link", content: `${pe}/dependencies/videojs-record-4.5.0.min.css` }, { type: "script", content: `${pe}/dependencies/RecordRTC-5.6.2.js` }, { type: "script", content: `${pe}/dependencies/adapter.8.0.0.min.js` }, { type: "script", content: `${pe}/dependencies/videojs-record-4.5.0.min.js` }, { type: "script", content: `${pe}/userleap-web-upchunk-v2.2.2.js` }], sn = [{ type: "link", content: `${pe}/dependencies/video-js-7.18.0.min.css` }, { type: "script", content: `${pe}/dependencies/video-js-7.18.0.min.js` }, { type: "style", content: `/* progress control styles */
5
5
  .video-js .vjs-control {
6
6
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
7
7
  }
@@ -658,8 +658,8 @@ span.ul-button-text {
658
658
  .vjs-poster {
659
659
  background-size: cover;
660
660
  }
661
- ` }], an = "-video-player", Ye = "-secondary-video-player", We = "-video-recorder";
662
- let ne, Ke;
661
+ ` }], an = "-video-player", Ze = "-secondary-video-player", Ye = "-video-recorder";
662
+ let ne, We;
663
663
  const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, metadata: s }) => {
664
664
  const d = I.document.documentElement;
665
665
  if (!r || !i) return;
@@ -683,14 +683,14 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
683
683
  }).catch(function(t) {
684
684
  console.log(t + " failed to load");
685
685
  });
686
- }, Je = (e, o, t) => {
686
+ }, Ke = (e, o, t) => {
687
687
  if (o === "start" && (e.style.visibility = "visible"), o === "none") e.style.visibility = W;
688
688
  else if (o === "success") e.style.visibility = W, e.innerHTML = "Upload succeeded!";
689
689
  else {
690
690
  const r = Math.round(parseFloat(t));
691
691
  e.innerHTML = `Uploading <span class="ul-upload-progress-label__time">${r}%</span>`, e.style.background = `linear-gradient(to right, #E0E0EB 0%, #E0E0EB ${r}%, #FCFCFD ${r}%, #FCFCFD 100%)`;
692
692
  }
693
- }, Le = (e, o) => {
693
+ }, Ne = (e, o) => {
694
694
  const t = I.videojs(e.id());
695
695
  return t == null ? void 0 : t.payload[o];
696
696
  }, dn = (e, o) => {
@@ -701,11 +701,11 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
701
701
  }, On = (e) => {
702
702
  e.children().forEach((o) => {
703
703
  if (X[o.name_]) {
704
- const t = ke(X[o.name_], `ul-${X[o.name_]}`);
704
+ const t = we(X[o.name_], `ul-${X[o.name_]}`);
705
705
  o.el_.appendChild(t);
706
706
  }
707
707
  });
708
- }, ke = (e, o = "") => {
708
+ }, we = (e, o = "") => {
709
709
  const t = I.document.createElement("span");
710
710
  return t.className = "ul-button-text", t.innerHTML = e, t.id = o, t;
711
711
  }, cn = (e, o, t, r, i = !1, s) => {
@@ -723,17 +723,17 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
723
723
  s == null || s.playbackRate(e.playbackRate());
724
724
  }), e.addChild(e.audioPlayerPlaceholder, {}, 1), d.addChild(o), e.addChild(d), r && r(e);
725
725
  }, An = (e, o, t, r, i, s, d, u = !1) => {
726
- Ke = Date.now();
727
- const a = we(o, { controls: !1, bigPlayButton: !1, fluid: !1, width: 1280, height: 720, playsinline: !0, plugins: { record: { audio: !0, video: { mandatory: { minWidth: 1280, minHeight: 720 } }, frameWidth: 1280, frameHeight: 720, maxLength: 600, autoMuteDevice: !0 } } });
726
+ We = Date.now();
727
+ const a = Ee(o, { controls: !1, bigPlayButton: !1, fluid: !1, width: 1280, height: 720, playsinline: !0, plugins: { record: { audio: !0, video: { mandatory: { minWidth: 1280, minHeight: 720 } }, frameWidth: 1280, frameHeight: 720, maxLength: 600, autoMuteDevice: !0 } } });
728
728
  if (!a) return;
729
729
  a.payload = t;
730
730
  const { surveyId: v, questionId: y, responseGroupUid: c, visitorId: g, envId: w } = t;
731
731
  let C;
732
732
  const b = (l) => {
733
733
  const p = Se, x = Se + "-audio-only";
734
- Je(a.uploadProgressLabel, "none"), ne && ne.startTime >= Ke && ne.abort();
734
+ Ke(a.uploadProgressLabel, "none"), ne && ne.startTime >= We && ne.abort();
735
735
  const S = I.document.getElementById("ul-camera-button");
736
- l ? (a.children()[0].classList.add("vjs-hidden"), N.removeClass(p), N.addClass(x), S.innerHTML = X.TurnOnCamera, a.audioPlayerPlaceholder.removeClass("vjs-hidden"), C == null || C.getTracks().forEach((j) => {
736
+ l ? (a.children()[0].classList.add("vjs-hidden"), L.removeClass(p), L.addClass(x), S.innerHTML = X.TurnOnCamera, a.audioPlayerPlaceholder.removeClass("vjs-hidden"), C == null || C.getTracks().forEach((j) => {
737
737
  j.stop();
738
738
  }), window.navigator.mediaDevices.getUserMedia({ video: !0, audio: !0 }).then((j) => {
739
739
  C = j, j.getVideoTracks().forEach((M) => {
@@ -741,36 +741,36 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
741
741
  }), a.record().onDeviceReady(j);
742
742
  }).catch(a.record().onDeviceError.bind(a.record()))) : (C == null || C.getVideoTracks().forEach((j) => {
743
743
  j.enabled = !0;
744
- }), a.children()[0].classList.remove("vjs-hidden"), a.record().getDevice(), N.removeClass(x), N.addClass(p), S.innerHTML = X.TurnOffCamera, a.audioPlayerPlaceholder.addClass("vjs-hidden"));
744
+ }), a.children()[0].classList.remove("vjs-hidden"), a.record().getDevice(), L.removeClass(x), L.addClass(p), S.innerHTML = X.TurnOffCamera, a.audioPlayerPlaceholder.addClass("vjs-hidden"));
745
745
  }, f = new (I.videojs.getComponent("Button"))(a, { clickHandler: () => {
746
- f.hasClass(W) || (ue({ event: "Video Delete Button Clicked", apiBase: r, headers: d, visitorId: g, envId: w, metadata: { questionId: y, responseGroupUid: c, surveyId: v } }), b(a.cameraOff), i(L.DELETE, {}), N.removeClass(W), f.addClass(W));
746
+ f.hasClass(W) || (ue({ event: "Video Delete Button Clicked", apiBase: r, headers: d, visitorId: g, envId: w, metadata: { questionId: y, responseGroupUid: c, surveyId: v } }), b(a.cameraOff), i(N.DELETE, {}), L.removeClass(W), f.addClass(W));
747
747
  } });
748
- f.addClass("ul-video-recorder-delete-button"), f.el_.appendChild(ke(X.DeleteButton, "ul-delete-button"));
748
+ f.addClass("ul-video-recorder-delete-button"), f.el_.appendChild(we(X.DeleteButton, "ul-delete-button"));
749
749
  const _ = I.document.getElementById(o), R = () => {
750
750
  _.classList.contains("vjs-fullscreen") && a.cameraOff ? _.style.display = "table" : _.style.display = "flex";
751
751
  };
752
752
  R();
753
- const N = new (I.videojs.getComponent("Button"))(a, { clickHandler: () => {
754
- a.record().isRecording() || (a.cameraOff = !a.cameraOff, ue({ event: "Video Camera Button Clicked", apiBase: r, headers: d, visitorId: t.visitorId, envId: t.envId, metadata: { questionId: y, responseGroupUid: c, surveyId: v, cameraOff: a.cameraOff } }), b(a.cameraOff), !f.hasClass(W) && f.addClass(W), i(L.DELETE, {}), R());
753
+ const L = new (I.videojs.getComponent("Button"))(a, { clickHandler: () => {
754
+ a.record().isRecording() || (a.cameraOff = !a.cameraOff, ue({ event: "Video Camera Button Clicked", apiBase: r, headers: d, visitorId: t.visitorId, envId: t.envId, metadata: { questionId: y, responseGroupUid: c, surveyId: v, cameraOff: a.cameraOff } }), b(a.cameraOff), !f.hasClass(W) && f.addClass(W), i(N.DELETE, {}), R());
755
755
  } });
756
- N.addClass(Se), N.el_.appendChild(ke(X.TurnOffCamera, "ul-camera-button"));
756
+ L.addClass(Se), L.el_.appendChild(we(X.TurnOffCamera, "ul-camera-button"));
757
757
  const T = new (I.videojs.getComponent("Button"))(a, { clickHandler: () => {
758
758
  const l = I.document.getElementById("ul-recorder-toggle");
759
759
  if (a.record().isRecording()) a.record().stop(), l && (l.innerHTML = X.RecordButton), T.removeClass(Pe), f.removeClass(W);
760
760
  else {
761
761
  const p = I.document.getElementById("ul-recording-countdown-screen");
762
- if (p) p.remove(), l && (l.innerHTML = X.RecordButton), b(a.cameraOff), i(L.DELETE, {}), N.removeClass(W), f.addClass(W), T.removeClass(Pe), m.show();
762
+ if (p) p.remove(), l && (l.innerHTML = X.RecordButton), b(a.cameraOff), i(N.DELETE, {}), L.removeClass(W), f.addClass(W), T.removeClass(Pe), m.show();
763
763
  else {
764
- T.addClass(Pe), m.hide(), N.addClass(W), f.addClass(W), l && (l.innerHTML = X.StopButton);
764
+ T.addClass(Pe), m.hide(), L.addClass(W), f.addClass(W), l && (l.innerHTML = X.StopButton);
765
765
  const x = I.document.createElement("div");
766
766
  x.id = "ul-recording-countdown-screen", _.insertBefore(x, _.children[1]), x.style.height = `${_.offsetHeight}px`, un(a, 3);
767
767
  }
768
768
  }
769
769
  } });
770
- T.addClass("ul-video-recorder-toggle-button"), T.el_.appendChild(ke(X.RecordButton, "ul-recorder-toggle"));
770
+ T.addClass("ul-video-recorder-toggle-button"), T.el_.appendChild(we(X.RecordButton, "ul-recorder-toggle"));
771
771
  const H = I.document.createElement("p");
772
772
  H.style.visibility = "hidden", H.className = "ul-upload-progress-label", e.appendChild(H), a.uploadProgressLabel = H;
773
- const $ = dn(a, [f, N, "PlayToggle", T, "FullscreenToggle"]), m = $.children().find((l) => l.name_ === "FullscreenToggle");
773
+ const $ = dn(a, [f, L, "PlayToggle", T, "FullscreenToggle"]), m = $.children().find((l) => l.name_ === "FullscreenToggle");
774
774
  m.hasClass("vjs-disabled") && m.hide();
775
775
  const h = $.children().find((l) => l.name_ === "PlayToggle");
776
776
  h.hide(), f.addClass(W), cn(a, $, s, !1, u), a.on("stopRecord", () => {
@@ -780,20 +780,20 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
780
780
  }), ((l, p, x, S, j) => {
781
781
  const { surveyId: M, responseGroupUid: O, visitorId: B, envId: q } = l.payload;
782
782
  l.on("deviceError", function() {
783
- console.warn("device error: ", l.deviceErrorCode), l.deviceErrorCode.message === "Permission denied" ? (l.deviceButton.addClass("permission-denied"), x && x(L.ERROR, { type: L.PERMISSION_DENIED }), ue({ event: "Video Permission Denied", apiBase: p, headers: j, visitorId: B, envId: q, metadata: { questionId: Le(l, De), responseGroupUid: O, surveyId: M } })) : (x && x(L.ERROR, { type: L.OTHER }), le(new Error(l.deviceErrorCode.message), "recorderDeviceError", p, j, B, q));
783
+ console.warn("device error: ", l.deviceErrorCode), l.deviceErrorCode.message === "Permission denied" ? (l.deviceButton.addClass("permission-denied"), x && x(N.ERROR, { type: N.PERMISSION_DENIED }), ue({ event: "Video Permission Denied", apiBase: p, headers: j, visitorId: B, envId: q, metadata: { questionId: Ne(l, De), responseGroupUid: O, surveyId: M } })) : (x && x(N.ERROR, { type: N.OTHER }), le(new Error(l.deviceErrorCode.message), "recorderDeviceError", p, j, B, q));
784
784
  }), l.on("error", function(Q, Y) {
785
785
  le(Y || l.error(), "recorderError", p, j, B, q);
786
786
  }), l.on("startRecord", function(Q, Y) {
787
- S(l.uploadProgressLabel, "none"), ue({ event: "Video Record Start", apiBase: p, headers: j, visitorId: B, envId: q, metadata: { questionId: Le(l, De), responseGroupUid: O, surveyId: M } });
787
+ S(l.uploadProgressLabel, "none"), ue({ event: "Video Record Start", apiBase: p, headers: j, visitorId: B, envId: q, metadata: { questionId: Ne(l, De), responseGroupUid: O, surveyId: M } });
788
788
  }), l.on("finishRecord", async function() {
789
789
  S(l.uploadProgressLabel, "start", 0);
790
- const Q = Le(l, De);
790
+ const Q = Ne(l, De);
791
791
  if (!M) {
792
792
  const D = "internal error: missing fields in payload";
793
- return x && x(L.ERROR, { type: L.OTHER }), le(new Error(D), "finishRecord", p, j, B, q), null;
793
+ return x && x(N.ERROR, { type: N.OTHER }), le(new Error(D), "finishRecord", p, j, B, q), null;
794
794
  }
795
795
  l.record().stopDevice();
796
- const Y = l.cameraOff ? L.MEDIA_TYPE_AUDIO : L.MEDIA_TYPE_VIDEO, ee = Pn();
796
+ const Y = l.cameraOff ? N.MEDIA_TYPE_AUDIO : N.MEDIA_TYPE_VIDEO, ee = Pn();
797
797
  ue({ event: "Video Record Finish", apiBase: p, headers: j, visitorId: B, envId: q, metadata: { mediaRecordingUid: ee, questionId: Q, responseGroupUid: O, surveyId: M, mediaType: Y } });
798
798
  const ve = { surveyId: M, updatedAt: (/* @__PURE__ */ new Date()).toISOString(), mediaType: Y, mediaRecordingUid: ee };
799
799
  Q && (ve.questionId = Q), O && (ve.responseGroupUid = O), B && (ve.visitorId = B);
@@ -801,19 +801,19 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
801
801
  const D = await fetch(`${p}/2/environments/integrations/upload`, { method: "POST", cache: "no-cache", headers: { "Content-Type": "application/json" }, body: JSON.stringify(ve) });
802
802
  if (D.ok) {
803
803
  const U = await D.json();
804
- return x && x(L.UPLOAD_STARTED, { [L.UPLOAD_ID]: U.upload.id, [L.MEDIA_TYPE]: Y, [L.MEDIA_RECORDING_UID]: ee }), U.upload.url;
804
+ return x && x(N.UPLOAD_STARTED, { [N.UPLOAD_ID]: U.upload.id, [N.MEDIA_TYPE]: Y, [N.MEDIA_RECORDING_UID]: ee }), U.upload.url;
805
805
  }
806
- return x && x(L.ERROR, { type: L.OTHER, response: D }), le(new Error("failed to get upload response with url"), "finishRecord", p, j, B, q), null;
806
+ return x && x(N.ERROR, { type: N.OTHER, response: D }), le(new Error("failed to get upload response with url"), "finishRecord", p, j, B, q), null;
807
807
  })();
808
808
  E && (ne = I.document.defaultView.UpChunk.createUpload({ endpoint: E, file: new I.document.defaultView.File([l.recordedData], `recording ${Y} ${Date.now()}`), chunkSize: 5120 }), ne.startTime = Date.now(), ue({ event: "Video Upload Start", apiBase: p, headers: j, visitorId: B, envId: q, metadata: { mediaRecordingUid: ee, questionId: Q, responseGroupUid: O, surveyId: M, mediaType: Y, url: E } }), ne.on("error", (D) => {
809
- S(l.uploadProgressLabel, "none"), x && x(L.UPLOAD_FINISHED, { [L.MEDIA_RECORDING_UID]: ee }), le(D, "finishRecord", p, j, B, q);
809
+ S(l.uploadProgressLabel, "none"), x && x(N.UPLOAD_FINISHED, { [N.MEDIA_RECORDING_UID]: ee }), le(D, "finishRecord", p, j, B, q);
810
810
  }), ne.on("progress", (D) => {
811
- x && x(L.UPLOAD_PROGRESS, { [L.MEDIA_RECORDING_UID]: ee, [L.UPLOAD_PROGRESS_PCT]: D.detail }), S(l.uploadProgressLabel, "progress", D.detail);
811
+ x && x(N.UPLOAD_PROGRESS, { [N.MEDIA_RECORDING_UID]: ee, [N.UPLOAD_PROGRESS_PCT]: D.detail }), S(l.uploadProgressLabel, "progress", D.detail);
812
812
  }), ne.on("success", () => {
813
- S(l.uploadProgressLabel, "success"), x && x(L.UPLOAD_FINISHED, { [L.MEDIA_RECORDING_UID]: ee }), ue({ event: "Video Upload Success", apiBase: p, headers: j, visitorId: B, envId: q, metadata: { mediaRecordingUid: ee, questionId: Q, responseGroupUid: O, surveyId: M, mediaType: Y, url: E, elapsedMs: ne.startTime && Date.now() - ne.startTime } });
813
+ S(l.uploadProgressLabel, "success"), x && x(N.UPLOAD_FINISHED, { [N.MEDIA_RECORDING_UID]: ee }), ue({ event: "Video Upload Success", apiBase: p, headers: j, visitorId: B, envId: q, metadata: { mediaRecordingUid: ee, questionId: Q, responseGroupUid: O, surveyId: M, mediaType: Y, url: E, elapsedMs: ne.startTime && Date.now() - ne.startTime } });
814
814
  }));
815
815
  });
816
- })(a, r, i, Je, d);
816
+ })(a, r, i, Ke, d);
817
817
  const k = [{ name: "microphone" }];
818
818
  !a.cameraOff && k.push({ name: "camera" }), Promise.all(k.map((l) => {
819
819
  var p;
@@ -831,7 +831,7 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
831
831
  const o = I.document.createElement("div");
832
832
  return o.className = "ul-video-container", o.appendChild(((t) => {
833
833
  const r = I.document.createElement("div");
834
- return r.className = "ul-video-player-loading", r.id = Fe(t), ["first", "second", "third", "fourth"].map((i) => {
834
+ return r.className = "ul-video-player-loading", r.id = Ve(t), ["first", "second", "third", "fourth"].map((i) => {
835
835
  const s = I.document.createElement("div");
836
836
  s.className = i, r.appendChild(s);
837
837
  }), r;
@@ -845,23 +845,23 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
845
845
  return i.href = "https://videojs.com/html5-video-support/", i.target = "_blank", i.innerHTML = "supports HTML5 video", r.appendChild(i), t.appendChild(r), o.appendChild(t), o;
846
846
  }, $n = (e, o) => {
847
847
  e.children()[0].classList.remove("vjs-hidden"), e.audioPlayerPlaceholder.hide(), I.document.getElementById(`${e.id()}_html5_api`).style.height = "100%";
848
- }, we = (e, o) => I.document.getElementById(e) ? o ? I.videojs(e, o) : I.videojs(e) : (console.error(`Error in finding player element with ID, ${e}`), null), Hn = (e, o, t, r = !1, i = "https://api.sprig.com", s = document, d = null, u = null) => {
848
+ }, Ee = (e, o) => I.document.getElementById(e) ? o ? I.videojs(e, o) : I.videojs(e) : (console.error(`Error in finding player element with ID, ${e}`), null), Hn = (e, o, t, r = !1, i = "https://api.sprig.com", s = document, d = null, u = null) => {
849
849
  I.document = s;
850
850
  const a = e + an, v = pn(a);
851
851
  return I.document.addEventListener("securitypolicyviolation", (y) => {
852
852
  le(new Error(`Voice & Video feature violates ${y.violatedDirective} web page CSP policies for the question player.`), "playerDeviceError", i, {});
853
853
  }), ln(sn, () => {
854
- I.document.getElementById(Fe(a)).remove(), Me(a, v);
854
+ I.document.getElementById(Ve(a)).remove(), Me(a, v);
855
855
  const y = { playsinline: !0, playbackRates: [0.5, 1, 1.5, 2], fill: !0 };
856
856
  try {
857
- const c = e + Ye;
857
+ const c = e + Ze;
858
858
  Me(c, v);
859
- const g = we(a, y), w = we(c, { muted: !0, ...y });
859
+ const g = Ee(a, y), w = Ee(c, { muted: !0, ...y });
860
860
  if (!g || !w) return;
861
861
  ((f, _, R) => {
862
- f.addClass(`ul${Ye}`);
863
- const N = new (I.videojs.getComponent("Component"))(f);
864
- _ && f.src(_), f.addChild(N), R && R(f);
862
+ f.addClass(`ul${Ze}`);
863
+ const L = new (I.videojs.getComponent("Component"))(f);
864
+ _ && f.src(_), f.addChild(L), R && R(f);
865
865
  })(w, d, u), d || w.addClass(W);
866
866
  const C = dn(g, ["PlaybackRateMenuButton", "PlayToggle", "FullscreenToggle"]), b = C.children().find((f) => f.name_ === "FullscreenToggle");
867
867
  b.hasClass("vjs-disabled") && b.hide(), cn(g, C, o, t, r, w);
@@ -873,17 +873,17 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
873
873
  if (!e) return null;
874
874
  const o = e.match(/https:\/\/stream.mux.com\/(.*)/);
875
875
  let t = o ? o[1] : null;
876
- return t.includes(Ze) && (t = t.replace(Ze, "")), t ? `https://image.mux.com/${t}/thumbnail.jpg?time=0` : null;
877
- }, L = { UPLOAD_STARTED: "upload.started", UPLOAD_PROGRESS: "upload.progress", UPLOAD_FINISHED: "upload.finished", DELETE: "delete", ERROR: "error", MEDIA_TYPE: "media.type", PERMISSION_DENIED: "permission_denied", OTHER: "other", UPLOAD_ID: "upload.id", UPLOAD_PROGRESS_PCT: "upload.progress.pct", MEDIA_RECORDING_UID: "media.recording.uid", MEDIA_TYPE_VIDEO: "video", MEDIA_TYPE_AUDIO: "audio" }, X = { PlaybackRateMenuButton: "Speed", PlayToggle: "Play", FullscreenToggle: "Expand", TurnOnCamera: "Turn on", TurnOffCamera: "Turn off", DeleteButton: "Delete", RecordButton: "Record", StopButton: "Stop", PauseButton: "Pause" }, Fn = ({ properties: e, surveyVideoUrl: o, questionId: t }) => {
878
- const r = `ul-card-video__question_player-q${t}`, { apiURL: i, viewDocument: s } = G((d) => ({ apiURL: d.apiURL, viewDocument: d.viewDocument }));
876
+ return t.includes(Qe) && (t = t.replace(Qe, "")), t ? `https://image.mux.com/${t}/thumbnail.jpg?time=0` : null;
877
+ }, N = { UPLOAD_STARTED: "upload.started", UPLOAD_PROGRESS: "upload.progress", UPLOAD_FINISHED: "upload.finished", DELETE: "delete", ERROR: "error", MEDIA_TYPE: "media.type", PERMISSION_DENIED: "permission_denied", OTHER: "other", UPLOAD_ID: "upload.id", UPLOAD_PROGRESS_PCT: "upload.progress.pct", MEDIA_RECORDING_UID: "media.recording.uid", MEDIA_TYPE_VIDEO: "video", MEDIA_TYPE_AUDIO: "audio" }, X = { PlaybackRateMenuButton: "Speed", PlayToggle: "Play", FullscreenToggle: "Expand", TurnOnCamera: "Turn on", TurnOffCamera: "Turn off", DeleteButton: "Delete", RecordButton: "Record", StopButton: "Stop", PauseButton: "Pause" }, Fn = ({ properties: e, surveyVideoUrl: o, questionId: t }) => {
878
+ const r = `ul-card-video__question_player-q${t}`, { apiURL: i, viewDocument: s } = z((d) => ({ apiURL: d.apiURL, viewDocument: d.viewDocument }));
879
879
  return n("div", { id: r, ref: (d) => {
880
880
  if (d && d.children.length === 0 && !e.properties.hideRecordedPrompt) {
881
- const u = Hn(r, { src: o, type: "application/x-mpegURL" }, void 0, e.properties.mediaType === L.MEDIA_TYPE_AUDIO, i, s);
881
+ const u = Hn(r, { src: o, type: "application/x-mpegURL" }, void 0, e.properties.mediaType === N.MEDIA_TYPE_AUDIO, i, s);
882
882
  d.appendChild(u);
883
883
  }
884
884
  } });
885
885
  }, me = ({ isDisabled: e, onClick: o, children: t }) => n(oe, { className: "ul-card__button-checkmark", disabled: e, onClick: o, type: "button", children: [n("svg", { fill: "none", height: "10", viewBox: "0 0 13 10", width: "13", xmlns: "http://www.w3.org/2000/svg", children: n("path", { d: "M11.5 1.5L4.5 8.5L1 5", stroke: "#ffffff", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.5" }) }), t || "Ok"] }), zn = ({ className: e, next: o, properties: t, questionId: r, type: i }) => {
886
- const { useMobileStyling: s, border: d } = G((T) => ({ useMobileStyling: T.useMobileStyling, border: T.border })), [u, a] = Z(!1), [v, y] = Z(""), [c, g] = Z(!1), w = t == null ? void 0 : t.collectName, C = (t == null ? void 0 : t.nameLabelText) || "Full Name", b = (t == null ? void 0 : t.consentText) || "I agree to the stated conditions", f = (t == null ? void 0 : t.submitButtonText) || "Submit", _ = !!v.trim(), R = u && (!w || _), N = (T, H = !1) => {
886
+ const { useMobileStyling: s, border: d } = z((T) => ({ useMobileStyling: T.useMobileStyling, border: T.border })), [u, a] = Z(!1), [v, y] = Z(""), [c, g] = Z(!1), w = t == null ? void 0 : t.collectName, C = (t == null ? void 0 : t.nameLabelText) || "Full Name", b = (t == null ? void 0 : t.consentText) || "I agree to the stated conditions", f = (t == null ? void 0 : t.submitButtonText) || "Submit", _ = !!v.trim(), R = u && (!w || _), L = (T, H = !1) => {
887
887
  T.preventDefault(), T.stopPropagation();
888
888
  let $ = null;
889
889
  if (!H) {
@@ -892,30 +892,30 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
892
892
  }
893
893
  o({ value: $, questionId: r, type: i }, !!H || R);
894
894
  };
895
- return n("div", { className: A(e, "ul-card__consent-legal", "fade-in-transition"), children: n(ie, { embeddedType: "pdf", properties: t, children: n(de, { children: [n("div", { className: "sprig-stretch", children: [n(He, { allowTextEntry: !1, border: d, error: c && !u, id: "consent", isRadio: !1, isSelected: u, label: b, onUserInputChanged: ({ selected: T }) => {
895
+ return n("div", { className: A(e, "ul-card__consent-legal", "fade-in-transition"), children: n(ie, { embeddedType: "pdf", properties: t, children: n(de, { children: [n("div", { className: "sprig-stretch", children: [n($e, { allowTextEntry: !1, border: d, error: c && !u, id: "consent", isRadio: !1, isSelected: u, label: b, onUserInputChanged: ({ selected: T }) => {
896
896
  T !== u && a(!u);
897
897
  }, useMobileStyling: s }), w && n("input", { "aria-label": C, "aria-placeholder": C, className: A(K("ul-consent-legal__name-input", s)), "data-gramm": "false", maxLength: 250, name: "name", onBlur: (T) => {
898
- T.currentTarget.style.borderColor = c && !_ ? _e : Ae;
898
+ T.currentTarget.style.borderColor = c && !_ ? Te : rn;
899
899
  }, onFocus: (T) => {
900
- T.currentTarget.style.borderColor = c && !_ ? _e : d;
900
+ T.currentTarget.style.borderColor = c && !_ ? Te : d;
901
901
  }, onInput: (T) => {
902
902
  T.preventDefault(), T.stopPropagation(), y(T.currentTarget.value);
903
- }, placeholder: C, style: c && !_ ? { borderColor: _e } : {}, tabIndex: 0, value: v })] }), n("div", { className: "ul-card__button-wrapper ul-card-vertical__button-wrapper", children: [n(me, { isDisabled: !R, onClick: (T) => N(new SubmitEvent(T.type)), children: re({ buttonText: f }) }), t.required === !1 && n("button", { className: "ul-card-skip__button", onClick: (T) => N(new SubmitEvent(T.type), !0), children: Oe(t) })] })] }) }) }, r);
903
+ }, placeholder: C, style: c && !_ ? { borderColor: Te } : {}, tabIndex: 0, value: v })] }), n("div", { className: "ul-card__button-wrapper ul-card-vertical__button-wrapper", children: [n(me, { isDisabled: !R, onClick: (T) => L(new SubmitEvent(T.type)), children: re({ buttonText: f }) }), t.required === !1 && n("button", { className: "ul-card-skip__button", onClick: (T) => L(new SubmitEvent(T.type), !0), children: Oe(t) })] })] }) }) }, r);
904
904
  }, Gn = () => {
905
- const { destroy: e, forceBrandedLogo: o } = G((t) => ({ destroy: t.destroy, forceBrandedLogo: t.forceBrandedLogo }));
905
+ const { destroy: e, forceBrandedLogo: o } = z((t) => ({ destroy: t.destroy, forceBrandedLogo: t.forceBrandedLogo }));
906
906
  return ae(() => {
907
907
  setTimeout(() => {
908
- e($e);
908
+ e(Ae);
909
909
  }, o ? 4e3 : 2e3);
910
910
  }, [e, o]), n("div", { className: "end-of-survey-text", children: "End of survey" });
911
911
  }, Qn = ({ activeValue: e, border: o, icon: t, enableCspTrustedTypes: r, isPressed: i, range: s, scaleLabelType: d, selectedValue: u, setSelectedValue: a, setActiveValue: v, setIsPressed: y, useMobileStyling: c, value: g, viewDocument: w }) => {
912
- const C = `option-${g}`, b = d === "number", f = d === "star", _ = d === "smiley", R = b && g === e || g === u, [N, T] = (() => {
912
+ const C = `option-${g}`, b = d === "number", f = d === "star", _ = d === "smiley", R = b && g === e || g === u, [L, T] = (() => {
913
913
  const m = f && u !== null && g <= u;
914
914
  return f && g <= e || _ && g === e || m || g === e || g === u ? [o, i || m || g === u ? 1 : 0.3] : ["", 1];
915
915
  })(), H = ye(() => {
916
- const m = { borderColor: R ? N : "", fillOpacity: R ? "" : T, zIndex: R ? 3 : "auto", color: u === g ? "#fff" : "" };
917
- return b ? { ...m, backgroundColor: u === g ? N : "" } : { ...m, color: f || _ || u === g ? N : "" };
918
- }, [R, N, T, u, g, b, f, _]), $ = ye(() => Ln((({ icon: m, scaleLabelType: h, value: k, selectedValue: l }) => {
916
+ const m = { borderColor: R ? L : "", fillOpacity: R ? "" : T, zIndex: R ? 3 : "auto", color: u === g ? "#fff" : "" };
917
+ return b ? { ...m, backgroundColor: u === g ? L : "" } : { ...m, color: f || _ || u === g ? L : "" };
918
+ }, [R, L, T, u, g, b, f, _]), $ = ye(() => Nn((({ icon: m, scaleLabelType: h, value: k, selectedValue: l }) => {
919
919
  if (h === "smiley" && k === l) {
920
920
  let p = 0;
921
921
  return m.replace(/black/g, () => ++p == 1 ? "black" : "white");
@@ -941,10 +941,10 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
941
941
  v(-1), y(!1);
942
942
  }, style: H, tabIndex: 0 });
943
943
  }, Zn = ({ className: e, labels: o, next: t, properties: r, questionId: i, type: s }) => {
944
- const { border: d, useMobileStyling: u, viewDocument: a, enableCspTrustedTypes: v } = G((h) => ({ border: h.border, useMobileStyling: h.useMobileStyling, viewDocument: h.viewDocument, enableCspTrustedTypes: h.enableCspTrustedTypes })), [y, c] = Z(-1), [g, w] = Z(!1), [C, b] = Z(null), f = o && o.left, _ = o && o.right;
944
+ const { border: d, useMobileStyling: u, viewDocument: a, enableCspTrustedTypes: v } = z((h) => ({ border: h.border, useMobileStyling: h.useMobileStyling, viewDocument: h.viewDocument, enableCspTrustedTypes: h.enableCspTrustedTypes })), [y, c] = Z(-1), [g, w] = Z(!1), [C, b] = Z(null), f = o && o.left, _ = o && o.right;
945
945
  let R;
946
- const { range: N, scaleLabelType: T, ratingIcons: H } = r;
947
- N && (R = Number(N));
946
+ const { range: L, scaleLabelType: T, ratingIcons: H } = r;
947
+ L && (R = Number(L));
948
948
  const $ = R || 5, m = (h) => {
949
949
  var k, l;
950
950
  switch (T) {
@@ -959,9 +959,9 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
959
959
  return n("form", { className: A(e, "ul-card--likert", "fade-in-transition"), children: n(ie, { properties: r, children: [n(ce, { children: [n("div", { "aria-label": `Rating (1 - ${$})`, className: "ul-card--likert__numbers", role: "radiogroup", children: [...Array($)].map((h, k) => {
960
960
  const l = k + 1;
961
961
  return n(Qn, { activeValue: y, border: d, enableCspTrustedTypes: v, icon: m(k), isPressed: g, range: $, scaleLabelType: T, selectedValue: C, setActiveValue: c, setIsPressed: w, setSelectedValue: b, useMobileStyling: u, value: l, viewDocument: a }, k);
962
- }) }), n("div", { className: "ul-card--likert__labels", children: [n("span", { children: f }), n("span", { children: _ })] })] }), n(de, { children: n(me, { isDisabled: C === null && r.required, onClick: () => t({ value: C, questionId: i, type: s }, !0), children: re(r) }) })] }) }, i);
962
+ }) }), (f || _) && n("div", { className: "ul-card--likert__labels", children: [n("span", { children: f }), n("span", { children: _ })] })] }), n(de, { children: n(me, { isDisabled: C === null && r.required, onClick: () => t({ value: C, questionId: i, type: s }, !0), children: re(r) }) })] }) }, i);
963
963
  }, Yn = ({ columns: e, onSelect: o, options: t, selectedOptions: r }) => {
964
- const i = se([]), { border: s, useMobileStyling: d } = G((g) => ({ border: g.border, useMobileStyling: g.useMobileStyling })), u = t.findIndex((g) => r[g.id] === null), [a, v] = Z(u), y = be((g, w) => {
964
+ const i = se([]), { border: s, useMobileStyling: d } = z((g) => ({ border: g.border, useMobileStyling: g.useMobileStyling })), u = t.findIndex((g) => r[g.id] === null), [a, v] = Z(u), y = be((g, w) => {
965
965
  o(g, w);
966
966
  const C = a + 1, b = t[C];
967
967
  b && r[b.id] === null && v(C);
@@ -972,7 +972,7 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
972
972
  return v(C && !((b = window.UserLeap) != null && b.isMobileSDK) ? -1 : g);
973
973
  }, ref: (b) => {
974
974
  b && (i.current[g] = b);
975
- }, showHeaderCheck: r[w.id] !== null, children: n("div", { style: { paddingTop: "12px" }, children: e.map((b) => n(He, { allowTextEntry: !1, ariaLabel: `${w.label}-${b.label}`, border: s, error: !1, id: `${w.id}-${b.value}`, isRadio: !0, isSelected: r[w.id] === b.value, label: b.label, onUserInputChanged: () => y(w.id, b.value), useMobileStyling: d }, b.label)) }) }, w.id);
975
+ }, showHeaderCheck: r[w.id] !== null, children: n("div", { style: { paddingTop: "12px" }, children: e.map((b) => n($e, { allowTextEntry: !1, ariaLabel: `${w.label}-${b.label}`, border: s, error: !1, id: `${w.id}-${b.value}`, isRadio: !0, isSelected: r[w.id] === b.value, label: b.label, onUserInputChanged: () => y(w.id, b.value), useMobileStyling: d }, b.label)) }) }, w.id);
976
976
  }, [s, e, a, y, r, d]);
977
977
  return n("div", { children: t.map((g, w) => c(w, g)) });
978
978
  }, Wn = ({ className: e, next: o, options: t, properties: r, questionId: i, type: s, onSubmitButtonClick: d }) => {
@@ -984,19 +984,19 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
984
984
  }, options: t, selectedOptions: c }) }), n(de, { children: n(me, { isDisabled: (w = c, a && Object.values(w).every((C) => C == null)), onClick: () => v(new SubmitEvent("submit")), children: re(r) }) })] }) }, i);
985
985
  var w;
986
986
  }, mn = ({ className: e, onSubmit: o, options: t = [], properties: r, questionId: i, type: s, showIndividualSubmit: d = !1, onSubmitButtonClick: u }) => {
987
- const { border: a, useMobileStyling: v } = G((l) => ({ border: l.border, useMobileStyling: l.useMobileStyling })), y = t.reduce((l, p) => (l[p.id] = { isSelected: !1 }, l), {}), [c, g] = Z(y), w = s === "multiplechoice", C = r.required, b = t.find((l) => {
987
+ const { border: a, useMobileStyling: v } = z((l) => ({ border: l.border, useMobileStyling: l.useMobileStyling })), y = t.reduce((l, p) => (l[p.id] = { isSelected: !1 }, l), {}), [c, g] = Z(y), w = s === "multiplechoice", C = r.required, b = t.find((l) => {
988
988
  var p;
989
989
  return (p = l.optionProperties) == null ? void 0 : p.noneOfTheAbove;
990
990
  }), f = (l) => Object.entries(l).some(([p, x]) => {
991
991
  var M;
992
992
  const S = t.find((O) => `${O.id}` === p), j = x.userText === void 0 || x.userText.trim() === "";
993
993
  return ((M = S == null ? void 0 : S.optionProperties) == null ? void 0 : M.allowsTextEntry) && j && x.isSelected;
994
- }), _ = (l) => Object.values(l).filter((p) => p.isSelected).length, R = r.minSelect && r.minSelect > 0 && r.maxSelectMode === xe.Range && _(c) < r.minSelect && (C || _(c) > 0), N = (l) => f(l) || C && !_(l) || !((p) => {
994
+ }), _ = (l) => Object.values(l).filter((p) => p.isSelected).length, R = r.minSelect && r.minSelect > 0 && r.maxSelectMode === ke.Range && _(c) < r.minSelect && (C || _(c) > 0), L = (l) => f(l) || C && !_(l) || !((p) => {
995
995
  const { minSelect: x = 0, maxSelect: S = 1 / 0, maxSelectMode: j } = r, M = _(p);
996
996
  switch (j) {
997
- case xe.Maximum:
997
+ case ke.Maximum:
998
998
  return M <= S;
999
- case xe.Range:
999
+ case ke.Range:
1000
1000
  return M === 0 || M >= x;
1001
1001
  default:
1002
1002
  return !0;
@@ -1008,7 +1008,7 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
1008
1008
  k(l.id, l.selected, l.userText, l.noneOfTheAbove);
1009
1009
  }, m = (l) => {
1010
1010
  var p;
1011
- return (r == null ? void 0 : r.maxSelectMode) !== xe.Unlimited && _(c) === (r == null ? void 0 : r.maxSelect) && !((p = c[l]) != null && p.isSelected);
1011
+ return (r == null ? void 0 : r.maxSelectMode) !== ke.Unlimited && _(c) === (r == null ? void 0 : r.maxSelect) && !((p = c[l]) != null && p.isSelected);
1012
1012
  }, h = () => {
1013
1013
  o(c, !0), u && u();
1014
1014
  }, k = (l, p, x, S) => {
@@ -1017,16 +1017,16 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
1017
1017
  else b && !S && c[b.id].isSelected && (j[b.id].isSelected = !1);
1018
1018
  j[l] = { isSelected: p, userText: x }, g(j);
1019
1019
  };
1020
- return n("form", { className: A(e, "ul-card--multiple", "fade-in-transition"), id: "text-form", onSubmit: h, children: n(ie, { properties: r, children: [n(ce, { children: [r.isDropdown ? n(Nn, { disabledOptions: t.filter((l) => m(l.id)), dropdownFooter: R ? n("div", { className: "ul-card__min-select-counter", style: { marginLeft: "16px" }, children: [_(c), "/", r.minSelect] }) : void 0, isMultiSelect: !w, multiselectText: r.dropdownMultiselectedText ?? "choices selected", onChange: (l) => {
1020
+ return n("form", { className: A(e, "ul-card--multiple", "fade-in-transition"), id: "text-form", onSubmit: h, children: n(ie, { properties: r, children: [n(ce, { children: [r.isDropdown ? n(Ln, { disabledOptions: t.filter((l) => m(l.id)), dropdownFooter: R ? n("div", { className: "ul-card__min-select-counter", style: { marginLeft: "16px" }, children: [_(c), "/", r.minSelect] }) : void 0, isMultiSelect: !w, multiselectText: r.dropdownMultiselectedText ?? "choices selected", onChange: (l) => {
1021
1021
  const p = { ...c };
1022
1022
  for (const x of t) l.includes(x) ? p[x.id].isSelected = !0 : p[x.id].isSelected = !1;
1023
1023
  g(p);
1024
1024
  }, options: t, placeholderText: r.dropdownPlaceholderText ?? (w ? "Select choice" : "Select choice(s)"), value: t.filter((l) => c[l.id].isSelected) }) : n("div", { className: A(K("ul-card__choices", v)), role: w ? "radiogroup" : "group", children: [t.map(({ id: l, label: p, value: x, optionProperties: S }) => {
1025
1025
  var q, Q;
1026
1026
  const j = `${l}`, { allowsTextEntry: M, noneOfTheAbove: O } = { allowsTextEntry: !1, noneOfTheAbove: !1, ...S };
1027
- return n(He, { allowTextEntry: M, border: a, disabled: m(j), error: (B = c, f(B)), id: j, isRadio: w, isSelected: !!((q = c[j]) != null && q.isSelected), label: p, noneOfTheAbove: O, onUserInputChanged: $, promptText: (S == null ? void 0 : S.otherOptionPlaceholder) || "Please specify", text: (Q = c[l]) == null ? void 0 : Q.userText, useMobileStyling: v, value: x }, j);
1027
+ return n($e, { allowTextEntry: M, border: a, disabled: m(j), error: (B = c, f(B)), id: j, isRadio: w, isSelected: !!((q = c[j]) != null && q.isSelected), label: p, noneOfTheAbove: O, onUserInputChanged: $, promptText: (S == null ? void 0 : S.otherOptionPlaceholder) || "Please specify", text: (Q = c[l]) == null ? void 0 : Q.userText, useMobileStyling: v, value: x }, j);
1028
1028
  var B;
1029
- }), !!R && n("div", { className: "ul-card__min-select-counter", children: [_(c), "/", r.minSelect] })] }), H && n(Rn, { handleSubmit: h, isSubmitDisabled: N(c) })] }), n(de, { children: n(me, { isDisabled: N(c), onClick: h, children: re(r) }) })] }) }, i);
1029
+ }), !!R && n("div", { className: "ul-card__min-select-counter", children: [_(c), "/", r.minSelect] })] }), H && n(Rn, { handleSubmit: h, isSubmitDisabled: L(c) })] }), n(de, { children: n(me, { isDisabled: L(c), onClick: h, children: re(r) }) })] }) }, i);
1030
1030
  }, Kn = (e) => {
1031
1031
  const { questionId: o, type: t, next: r, options: i } = e;
1032
1032
  return n(mn, { ...e, onSubmit: (s, d) => {
@@ -1044,7 +1044,7 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
1044
1044
  r({ value: d, secondaryValue: u, questionId: o, type: t }, s);
1045
1045
  } });
1046
1046
  }, Xn = ({ className: e, labels: o, properties: t, next: r, questionId: i, type: s }) => {
1047
- const [d, u] = Z(null), { border: a, useMobileStyling: v, viewDocument: y } = G((w) => ({ border: w.border, useMobileStyling: w.useMobileStyling, viewDocument: w.viewDocument })), c = o && o.left, g = o && o.right;
1047
+ const [d, u] = Z(null), { border: a, useMobileStyling: v, viewDocument: y } = z((w) => ({ border: w.border, useMobileStyling: w.useMobileStyling, viewDocument: w.viewDocument })), c = o && o.left, g = o && o.right;
1048
1048
  return n("form", { className: A(e, "ul-card--nps", "fade-in-transition"), children: n(ie, { properties: t, children: [n(ce, { children: [n("div", { className: "ul-card--nps__numbers", children: [...Array(11)].map((w, C) => n("button", { className: A(K("nps-number", v), K(`nps-number-${C}`, v)), id: `option-${C}`, onClick: (b) => {
1049
1049
  b.preventDefault(), b.stopPropagation(), u(C);
1050
1050
  }, onKeyDown: (b) => {
@@ -1052,36 +1052,36 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
1052
1052
  const f = y.querySelectorAll("button.nps-number");
1053
1053
  b.key === "ArrowRight" ? (_ = f[C + 1]) == null || _.focus() : b.key === "ArrowLeft" ? (R = f[C - 1]) == null || R.focus() : b.key !== "Enter" && b.key !== " " || (b.preventDefault(), b.stopPropagation(), u(C));
1054
1054
  }, onPointerDown: (b) => {
1055
- b.currentTarget.style.zIndex = "2", b.currentTarget.style.borderColor = a;
1055
+ b.currentTarget.style.zIndex = "2";
1056
1056
  }, onPointerLeave: (b) => {
1057
- b.currentTarget.style.zIndex = "auto", b.currentTarget.style.borderColor = Ae;
1057
+ b.currentTarget.style.zIndex = "auto";
1058
1058
  }, style: d === C ? { backgroundColor: a, color: "#fff" } : void 0, tabIndex: 0, children: C }, C)) }), n("div", { className: "ul-card--nps__labels", children: [n("span", { children: c }), n("span", { children: g })] })] }), n(de, { children: n(me, { isDisabled: d === null && t.required, onClick: () => r({ value: d, questionId: i, type: s }, !0), children: re(t) }) })] }) }, i);
1059
1059
  }, et = ({ className: e, next: o, properties: t, questionId: r, type: i, onSubmitButtonClick: s }) => {
1060
- const { border: d, useMobileStyling: u, update: a } = G((f) => ({ border: f.border, useMobileStyling: f.useMobileStyling, update: f.update })), [v, y] = Z(""), c = se(null), g = v.trim(), w = t.required === !0 && !g, C = Mn(c, () => a()), b = t && t.openTextPlaceholder ? t.openTextPlaceholder : "";
1060
+ const { border: d, useMobileStyling: u, update: a } = z((f) => ({ border: f.border, useMobileStyling: f.useMobileStyling, update: f.update })), [v, y] = Z(""), c = se(null), g = v.trim(), w = t.required === !0 && !g, C = Mn(c, () => a()), b = t && t.openTextPlaceholder ? t.openTextPlaceholder : "";
1061
1061
  return n("form", { className: A(e, "ul-card-text", "fade-in-transition"), id: "text-form", children: n(ie, { properties: t, children: n("div", { className: "ul-card-text", children: [n(ce, { children: [n("div", { className: "ul-card-text__container", children: n("textarea", { "aria-describedby": "ul-caption", "aria-labelledby": "ul-question", "aria-multiline": "true", "aria-placeholder": b, className: A(K("ul-card-text__input", u)), "data-gramm": "false", maxLength: 5e3, name: "text", onBlur: (f) => {
1062
- f.currentTarget.style.borderColor = Ae;
1062
+ f.currentTarget.style.borderColor = rn;
1063
1063
  }, onChange: (f) => {
1064
1064
  const { value: _ } = f.currentTarget;
1065
1065
  C(), f.preventDefault(), f.stopPropagation(), y(_);
1066
1066
  }, onFocus: (f) => {
1067
1067
  f.currentTarget.style.borderColor = d;
1068
- }, placeholder: b, ref: c, role: "textbox", tabIndex: 0 }) }), t.footerHtml && n(Ce, { className: "footer", html: t.footerHtml })] }), n(de, { children: n(me, { isDisabled: w, onClick: (f) => {
1068
+ }, placeholder: b, ref: c, role: "textbox", tabIndex: 0 }) }), t.footerHtml && n(xe, { className: "footer", html: t.footerHtml })] }), n(de, { children: n(me, { isDisabled: w, onClick: (f) => {
1069
1069
  f.preventDefault(), f.stopPropagation();
1070
1070
  const _ = t.required !== !0 || g.length > 0;
1071
1071
  o({ value: v, questionId: r, type: i }, _), s && s();
1072
1072
  }, children: re(t) }) })] }) }) }, r);
1073
1073
  }, nt = ({ className: e, labels: o, next: t, properties: r, questionId: i, type: s, onSubmitButtonClick: d, options: u }) => {
1074
- const a = se(null), v = se(0), y = se(0), c = se(null), g = se(!1), w = se([]), [C, b] = Z(() => (r == null ? void 0 : r.required) === !0), [f, _] = Z(() => u.map((E) => ({ ...E, rank: null }))), R = ye(() => Array.from({ length: u.length }, (E, D) => D + 1), [u.length]), { useMobileStyling: N, isPreview: T, headers: H } = G((E) => ({ useMobileStyling: E.useMobileStyling, isPreview: E.isPreview, headers: E.headers })), $ = (H == null ? void 0 : H["userleap-platform"]) === "android", m = N && !T && !$, h = !m && !$, k = (E, D) => {
1074
+ const a = se(null), v = se(0), y = se(0), c = se(null), g = se(!1), w = se([]), [C, b] = Z(() => (r == null ? void 0 : r.required) === !0), [f, _] = Z(() => u.map((E) => ({ ...E, rank: null }))), R = ye(() => Array.from({ length: u.length }, (E, D) => D + 1), [u.length]), { useMobileStyling: L, isPreview: T, headers: H } = z((E) => ({ useMobileStyling: E.useMobileStyling, isPreview: E.isPreview, headers: E.headers })), $ = (H == null ? void 0 : H["userleap-platform"]) === "android", m = L && !T && !$, h = !m && !$, k = (E, D) => {
1075
1075
  _((U) => {
1076
1076
  const P = parseInt(D), F = U.map((V) => ({ ...V }));
1077
1077
  F.some((V) => V.rank == null) && F.forEach((V, he) => V.rank = he + 1);
1078
1078
  const J = F.findIndex((V) => V.id === E);
1079
1079
  if (J === -1) return U;
1080
- const z = F[J].rank;
1081
- return P < z ? F.forEach((V) => {
1082
- V.id !== E && V.rank >= P && V.rank < z && (V.rank = V.rank + 1);
1083
- }) : P > z && F.forEach((V) => {
1084
- V.id !== E && V.rank > z && V.rank <= P && (V.rank = V.rank - 1);
1080
+ const G = F[J].rank;
1081
+ return P < G ? F.forEach((V) => {
1082
+ V.id !== E && V.rank >= P && V.rank < G && (V.rank = V.rank + 1);
1083
+ }) : P > G && F.forEach((V) => {
1084
+ V.id !== E && V.rank > G && V.rank <= P && (V.rank = V.rank - 1);
1085
1085
  }), F[J].rank = P, F.sort((V, he) => V.rank - he.rank), O(), F;
1086
1086
  });
1087
1087
  }, l = (E, D) => {
@@ -1120,8 +1120,8 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
1120
1120
  }, j = (E, D) => {
1121
1121
  _((U) => {
1122
1122
  const P = U.map((J) => ({ ...J })), [F] = P.splice(E, 1);
1123
- return P.splice(D, 0, F), P.forEach((J, z) => {
1124
- J.rank = z + 1;
1123
+ return P.splice(D, 0, F), P.forEach((J, G) => {
1124
+ J.rank = G + 1;
1125
1125
  }), O(), P;
1126
1126
  });
1127
1127
  }, M = (E) => {
@@ -1138,27 +1138,27 @@ const ue = async ({ event: e, apiBase: o, headers: t, visitorId: r, envId: i, me
1138
1138
  };
1139
1139
  return n("form", { className: A(e, "ul-card-rank", "fade-in-transition"), onSubmit: (E) => {
1140
1140
  E.preventDefault(), M(f), d && d();
1141
- }, children: n(ie, { properties: r, children: n(je, $ ? { children: [n(ce, { children: n("div", { className: "ul-card--rank__question-inner-container", children: [n("div", { className: "ul-card-rank__labels", children: n("span", { children: ["1 - ", B] }) }), n("ol", { className: "ul-card-rank__list", children: f.map(({ id: E, label: D, rank: U }) => n("li", { className: "ul-card-rank__option", children: [n("select", { "aria-label": `Rank for ${D}`, className: A("ul-card-rank__select", U == null && "ul-card-rank__select--placeholder"), name: `rank[${E}]`, onChange: (P) => k(E, P.currentTarget.value), value: U ?? "", children: [U == null && n("option", { className: "ul-card-rank__select-option", disabled: !0, value: "", children: "-" }), R.map((P) => n("option", { className: "ul-card-rank__select-option", value: P, children: P }, `${P}-${i}`))] }), n("span", { children: D })] }, E)) }), n("div", { className: "ul-card-rank__labels", children: n("span", { children: [Q, " - ", q] }) })] }) }), n(de, { children: n("div", { className: "ul-card__button-wrapper", children: n(oe, { disabled: C, children: re(r) }) }) })] } : { children: [n(ce, { children: n("div", { className: "ul-card--rank__question-inner-container", children: [n("div", { className: "ul-card-rank__labels", children: n("span", { children: ["1 - ", B] }) }), n("ol", { className: "ul-card-rank__list", onDragOver: $ ? void 0 : (E) => {
1141
+ }, children: n(ie, { properties: r, children: n(Ce, $ ? { children: [n(ce, { children: n("div", { className: "ul-card--rank__question-inner-container", children: [n("div", { className: "ul-card-rank__labels", children: n("span", { children: ["1 - ", B] }) }), n("ol", { className: "ul-card-rank__list", children: f.map(({ id: E, label: D, rank: U }) => n("li", { className: "ul-card-rank__option", children: [n("select", { "aria-label": `Rank for ${D}`, className: A("ul-card-rank__select", U == null && "ul-card-rank__select--placeholder"), name: `rank[${E}]`, onChange: (P) => k(E, P.currentTarget.value), value: U ?? "", children: [U == null && n("option", { className: "ul-card-rank__select-option", disabled: !0, value: "", children: "-" }), R.map((P) => n("option", { className: "ul-card-rank__select-option", value: P, children: P }, `${P}-${i}`))] }), n("span", { children: D })] }, E)) }), n("div", { className: "ul-card-rank__labels", children: n("span", { children: [Q, " - ", q] }) })] }) }), n(de, { children: n("div", { className: "ul-card__button-wrapper", children: n(oe, { disabled: C, children: re(r) }) }) })] } : { children: [n(ce, { children: n("div", { className: "ul-card--rank__question-inner-container", children: [n("div", { className: "ul-card-rank__labels", children: n("span", { children: ["1 - ", B] }) }), n("ol", { className: "ul-card-rank__list", onDragOver: $ ? void 0 : (E) => {
1142
1142
  E.preventDefault(), E.dataTransfer && (E.dataTransfer.dropEffect = "move");
1143
1143
  }, children: f.map(({ id: E, label: D, rank: U }, P) => {
1144
- return n("li", { className: "ul-card-rank__option", draggable: !!h || void 0, onDragEnd: h ? ve : void 0, onDragEnter: h ? Y : void 0, onDragLeave: h ? ee : void 0, onDragStart: h ? (J = P, (z) => {
1145
- a.current = J, z.dataTransfer && (z.dataTransfer.effectAllowed = "move", z.dataTransfer.setData("text/plain", String(J)), z.currentTarget.classList.add("is-dragging"));
1146
- }) : void 0, onDrop: h ? (F = P, (z) => {
1147
- var he, Qe;
1148
- z.preventDefault(), z.currentTarget.classList.remove("is-drop-target");
1144
+ return n("li", { className: "ul-card-rank__option", draggable: !!h || void 0, onDragEnd: h ? ve : void 0, onDragEnter: h ? Y : void 0, onDragLeave: h ? ee : void 0, onDragStart: h ? (J = P, (G) => {
1145
+ a.current = J, G.dataTransfer && (G.dataTransfer.effectAllowed = "move", G.dataTransfer.setData("text/plain", String(J)), G.currentTarget.classList.add("is-dragging"));
1146
+ }) : void 0, onDrop: h ? (F = P, (G) => {
1147
+ var he, Ge;
1148
+ G.preventDefault(), G.currentTarget.classList.remove("is-drop-target");
1149
1149
  const V = a.current;
1150
- a.current = null, (Qe = (he = z.currentTarget.closest(".ul-card-rank__list")) == null ? void 0 : he.querySelector(".is-dragging")) == null || Qe.classList.remove("is-dragging"), V != null && V !== F && j(V, F);
1151
- }) : void 0, ref: (z) => w.current[P] = z, children: [n("select", { "aria-label": `Rank for ${D}`, className: A("ul-card-rank__select", U == null && "ul-card-rank__select--placeholder"), name: `rank[${E}]`, onChange: (z) => k(E, z.currentTarget.value), value: U ?? "", children: [U == null && n("option", { className: "ul-card-rank__select-option", disabled: !0, value: "", children: "-" }), R.map((z) => n("option", { className: "ul-card-rank__select-option", value: z, children: z }, z))] }), n("span", { children: D }), !$ && n("button", { "aria-label": `Drag ${D} to reorder`, className: "ul-card-rank__drag-btn", onTouchEnd: m ? S : void 0, onTouchMove: m ? x : void 0, onTouchStart: m ? p(P) : void 0, title: "Drag to reorder", type: "button", children: n("svg", { fill: "none", height: "17", viewBox: "0 0 16 17", width: "16", xmlns: "http://www.w3.org/2000/svg", children: n("path", { d: "M5.75 11.625C6.37132 11.625 6.875 12.1287 6.875 12.75C6.875 13.3713 6.37132 13.875 5.75 13.875C5.12868 13.875 4.625 13.3713 4.625 12.75C4.625 12.1287 5.12868 11.625 5.75 11.625ZM10.25 11.625C10.8713 11.625 11.375 12.1287 11.375 12.75C11.375 13.3713 10.8713 13.875 10.25 13.875C9.62868 13.875 9.125 13.3713 9.125 12.75C9.125 12.1287 9.62868 11.625 10.25 11.625ZM5.75 7.375C6.37132 7.375 6.875 7.87868 6.875 8.5C6.875 9.12132 6.37132 9.625 5.75 9.625C5.12868 9.625 4.625 9.12132 4.625 8.5C4.625 7.87868 5.12868 7.375 5.75 7.375ZM10.25 7.375C10.8713 7.375 11.375 7.87868 11.375 8.5C11.375 9.12132 10.8713 9.625 10.25 9.625C9.62868 9.625 9.125 9.12132 9.125 8.5C9.125 7.87868 9.62868 7.375 10.25 7.375ZM5.75 3.125C6.37132 3.125 6.875 3.62868 6.875 4.25C6.875 4.87132 6.37132 5.375 5.75 5.375C5.12868 5.375 4.625 4.87132 4.625 4.25C4.625 3.62868 5.12868 3.125 5.75 3.125ZM10.25 3.125C10.8713 3.125 11.375 3.62868 11.375 4.25C11.375 4.87132 10.8713 5.375 10.25 5.375C9.62868 5.375 9.125 4.87132 9.125 4.25C9.125 3.62868 9.62868 3.125 10.25 3.125Z", fill: "currentColor" }) }) })] }, E);
1150
+ a.current = null, (Ge = (he = G.currentTarget.closest(".ul-card-rank__list")) == null ? void 0 : he.querySelector(".is-dragging")) == null || Ge.classList.remove("is-dragging"), V != null && V !== F && j(V, F);
1151
+ }) : void 0, ref: (G) => w.current[P] = G, children: [n("select", { "aria-label": `Rank for ${D}`, className: A("ul-card-rank__select", U == null && "ul-card-rank__select--placeholder"), name: `rank[${E}]`, onChange: (G) => k(E, G.currentTarget.value), value: U ?? "", children: [U == null && n("option", { className: "ul-card-rank__select-option", disabled: !0, value: "", children: "-" }), R.map((G) => n("option", { className: "ul-card-rank__select-option", value: G, children: G }, G))] }), n("span", { children: D }), !$ && n("button", { "aria-label": `Drag ${D} to reorder`, className: "ul-card-rank__drag-btn", onTouchEnd: m ? S : void 0, onTouchMove: m ? x : void 0, onTouchStart: m ? p(P) : void 0, title: "Drag to reorder", type: "button", children: n("svg", { fill: "none", height: "17", viewBox: "0 0 16 17", width: "16", xmlns: "http://www.w3.org/2000/svg", children: n("path", { d: "M5.75 11.625C6.37132 11.625 6.875 12.1287 6.875 12.75C6.875 13.3713 6.37132 13.875 5.75 13.875C5.12868 13.875 4.625 13.3713 4.625 12.75C4.625 12.1287 5.12868 11.625 5.75 11.625ZM10.25 11.625C10.8713 11.625 11.375 12.1287 11.375 12.75C11.375 13.3713 10.8713 13.875 10.25 13.875C9.62868 13.875 9.125 13.3713 9.125 12.75C9.125 12.1287 9.62868 11.625 10.25 11.625ZM5.75 7.375C6.37132 7.375 6.875 7.87868 6.875 8.5C6.875 9.12132 6.37132 9.625 5.75 9.625C5.12868 9.625 4.625 9.12132 4.625 8.5C4.625 7.87868 5.12868 7.375 5.75 7.375ZM10.25 7.375C10.8713 7.375 11.375 7.87868 11.375 8.5C11.375 9.12132 10.8713 9.625 10.25 9.625C9.62868 9.625 9.125 9.12132 9.125 8.5C9.125 7.87868 9.62868 7.375 10.25 7.375ZM5.75 3.125C6.37132 3.125 6.875 3.62868 6.875 4.25C6.875 4.87132 6.37132 5.375 5.75 5.375C5.12868 5.375 4.625 4.87132 4.625 4.25C4.625 3.62868 5.12868 3.125 5.75 3.125ZM10.25 3.125C10.8713 3.125 11.375 3.62868 11.375 4.25C11.375 4.87132 10.8713 5.375 10.25 5.375C9.62868 5.375 9.125 4.87132 9.125 4.25C9.125 3.62868 9.62868 3.125 10.25 3.125Z", fill: "currentColor" }) }) })] }, E);
1152
1152
  var F, J;
1153
1153
  }) }), n("div", { className: "ul-card-rank__labels", children: n("span", { children: [Q, " - ", q] }) })] }) }), n(de, { children: n("div", { className: "ul-card__button-wrapper", children: n(oe, { disabled: C, children: re(r) }) }) })] }) }) }, i);
1154
- }, Be = 1, vn = 2, hn = 3, Ee = (e) => e.type === "av_permission", Xe = (e) => e.type === "screen_permission", gn = (e, o) => e === void 0 ? Be : e ? ((t, r) => !(Ee(r) ? r.permissionDescriptors : []).includes("camera") || t.getVideoTracks().length > 0)(e, o) ? hn : Be : vn, en = { avStream: null, currentPage: null, mediaRecordingUids: null, nextQuestion: () => {
1155
- }, passthroughData: void 0, recordingMediaTypes: void 0, screenPermissionRequested: !1, type: void 0 }, te = wn((e) => ({ ...en, reset: () => {
1156
- e(en);
1154
+ }, Be = 1, vn = 2, hn = 3, je = (e) => e.type === "av_permission", Je = (e) => e.type === "screen_permission", gn = (e, o) => e === void 0 ? Be : e ? ((t, r) => !(je(r) ? r.permissionDescriptors : []).includes("camera") || t.getVideoTracks().length > 0)(e, o) ? hn : Be : vn, Xe = { avStream: null, currentPage: null, mediaRecordingUids: null, nextQuestion: () => {
1155
+ }, passthroughData: void 0, recordingMediaTypes: void 0, screenPermissionRequested: !1, type: void 0 }, te = wn((e) => ({ ...Xe, reset: () => {
1156
+ e(Xe);
1157
1157
  }, updatePage: (o) => {
1158
1158
  e(o);
1159
1159
  } }));
1160
1160
  function qe({ currentPage: e, pages: o }) {
1161
- const { avStream: t, recordingMediaTypes: r, updatePage: i } = te.getState(), { recorderEventEmitter: s } = G.getState();
1161
+ const { avStream: t, recordingMediaTypes: r, updatePage: i } = te.getState(), { recorderEventEmitter: s } = z.getState();
1162
1162
  s.emit("av.permission", { "permission.descriptors": e.permissionDescriptors, "stream.ready": (d, u) => {
1163
1163
  if (t === d) return;
1164
1164
  let a = e;
@@ -1170,7 +1170,7 @@ function qe({ currentPage: e, pages: o }) {
1170
1170
  } });
1171
1171
  }
1172
1172
  function Ue({ status: e }) {
1173
- const { nextQuestion: o, passthroughData: t, mediaRecordingUids: r, reset: i } = te.getState(), { recorderEventEmitter: s, handleUploadUpdate: d, index: u } = G.getState(), a = { value: { taskStatus: e }, type: "recordedtask", questionId: (t == null ? void 0 : t.questionId) || 1 };
1173
+ const { nextQuestion: o, passthroughData: t, mediaRecordingUids: r, reset: i } = te.getState(), { recorderEventEmitter: s, handleUploadUpdate: d, index: u } = z.getState(), a = { value: { taskStatus: e }, type: "recordedtask", questionId: (t == null ? void 0 : t.questionId) || 1 };
1174
1174
  t && s.emit("finish.task", { "begin.callback": (v) => {
1175
1175
  d({ mediaRecordingUid: v, isSubmitted: !0, progressPct: 0, isComplete: !1 });
1176
1176
  }, "progress.callback": (v, y) => {
@@ -1181,8 +1181,8 @@ function Ue({ status: e }) {
1181
1181
  a.value.taskDurationMillisecond = v, r && (a.value.mediaRecordingUids = r), i(), o(a);
1182
1182
  } });
1183
1183
  }
1184
- function ze({ pages: e, setIsRequestingPermission: o }) {
1185
- const { recorderEventEmitter: t, eventEmitFn: r } = G.getState(), { updatePage: i, currentPage: s, recordingMediaTypes: d, screenPermissionRequested: u } = te.getState();
1184
+ function Fe({ pages: e, setIsRequestingPermission: o }) {
1185
+ const { recorderEventEmitter: t, eventEmitFn: r } = z.getState(), { updatePage: i, currentPage: s, recordingMediaTypes: d, screenPermissionRequested: u } = te.getState();
1186
1186
  if (!s) return;
1187
1187
  const a = e.indexOf(s);
1188
1188
  switch (s.type) {
@@ -1205,7 +1205,7 @@ function ze({ pages: e, setIsRequestingPermission: o }) {
1205
1205
  return;
1206
1206
  }
1207
1207
  }
1208
- const bn = "ul-permission-graphics-container", fn = "ul-permission-body", yn = A(bn, "ul_recorded-task-inset-spacing"), Ie = A("ul-horizontal-button-container", "ul-horizontal-button-container-left"), Cn = ({ richTextBody: e }) => n(Ce, { className: "ul-rich-text-body", html: e, id: "ul-task-detail-container" }), Te = ({ required: e, skipButtonText: o, bottom: t = !1 }) => e ? null : n(oe, { className: A(t && "ul-skip-button-below", "ul-button-inactive"), onClick: Ue.bind(null, { status: "abandoned" }), children: o || "Skip" }), Ge = (e) => {
1208
+ const bn = "ul-permission-graphics-container", fn = "ul-permission-body", yn = A(bn, "ul_recorded-task-inset-spacing"), Ie = A("ul-horizontal-button-container", "ul-horizontal-button-container-left"), Cn = ({ richTextBody: e }) => n(xe, { className: "ul-rich-text-body", html: e, id: "ul-task-detail-container" }), _e = ({ required: e, skipButtonText: o, bottom: t = !1 }) => e ? null : n(oe, { className: A(t && "ul-skip-button-below", "ul-button-inactive"), onClick: Ue.bind(null, { status: "abandoned" }), children: o || "Skip" }), ze = (e) => {
1209
1209
  const { avStream: o, captureStream: t, recordingMediaTypes: r, updatePage: i } = te.getState(), s = (r == null ? void 0 : r.includes("audio")) || (r == null ? void 0 : r.includes("video"));
1210
1210
  ae(() => {
1211
1211
  const d = setInterval(() => {
@@ -1215,26 +1215,26 @@ const bn = "ul-permission-graphics-container", fn = "ul-permission-body", yn = A
1215
1215
  }, [o, t, s, e, r, i]);
1216
1216
  }, tt = ({ content: e, pages: o, required: t }) => {
1217
1217
  const { buttonText: r, skipButtonText: i, taskDetail: s } = e;
1218
- return Ge(o), n("div", { className: "ul-task-page", children: [s && n(Cn, { richTextBody: s }), n("div", { className: Ie, children: [n(oe, { onClick: ze.bind(null, { pages: o }), children: r }), n(Te, { required: t, skipButtonText: i })] })] }, "start-task");
1218
+ return ze(o), n("div", { className: "ul-task-page", children: [s && n(Cn, { richTextBody: s }), n("div", { className: Ie, children: [n(oe, { onClick: Fe.bind(null, { pages: o }), children: r }), n(_e, { required: t, skipButtonText: i })] })] }, "start-task");
1219
1219
  }, rt = ({ content: e, pages: o, properties: t }) => {
1220
1220
  const { buttonText: r, skipButtonText: i } = e;
1221
- return Ge(o), n("div", { className: "ul-task-page", children: [e.taskDetail && n(Cn, { richTextBody: e.taskDetail }), n(ie, { properties: t, children: n("div", { className: Ie, children: [n(oe, { className: "ul-complete-task-button", onClick: Ue.bind(null, { status: "completed" }), children: r }), n(oe, { className: A("ul-button-inactive"), onClick: Ue.bind(null, { status: "given.up" }), children: i })] }) })] }, "complete-task");
1221
+ return ze(o), n("div", { className: "ul-task-page", children: [e.taskDetail && n(Cn, { richTextBody: e.taskDetail }), n(ie, { properties: t, children: n("div", { className: Ie, children: [n(oe, { className: "ul-complete-task-button", onClick: Ue.bind(null, { status: "completed" }), children: r }), n(oe, { className: A("ul-button-inactive"), onClick: Ue.bind(null, { status: "given.up" }), children: i })] }) })] }, "complete-task");
1222
1222
  }, ot = ({ content: e, pages: o, required: t }) => {
1223
- const { buttonText: r, skipButtonText: i } = e, [s] = G((a) => [a.tabTitle]), [d, u] = Z(!1);
1224
- return n("div", { children: [n("div", { className: yn, children: [n("p", { style: { marginTop: "auto" }, children: e.selectTabText }), n("div", { className: "ul-select-tab-container", children: n("p", { className: fn, children: s }) })] }), n("div", { className: t ? "" : Ie, children: [n(oe, { disabled: d, onClick: ze.bind(null, { pages: o, setIsRequestingPermission: u }), children: r }), n(Te, { required: t, skipButtonText: i })] })] });
1225
- }, it = ({ content: e }) => n(Ce, { className: A(bn, "ul_permission_svg_container", "ul_recorded-task-inset-spacing", "ul-center-horizontally"), html: e.svg }, "ul-permission-request-graphic"), st = ({ content: e, pages: o, required: t }) => {
1226
- const { permissionDeniedHeadline: r, permissionDeniedBody: i, skipButtonText: s, tryAgainButtonText: d } = e, u = Ee(o[0]) ? o[0] : null;
1223
+ const { buttonText: r, skipButtonText: i } = e, [s] = z((a) => [a.tabTitle]), [d, u] = Z(!1);
1224
+ return n("div", { children: [n("div", { className: yn, children: [n("p", { style: { marginTop: "auto" }, children: e.selectTabText }), n("div", { className: "ul-select-tab-container", children: n("p", { className: fn, children: s }) })] }), n("div", { className: t ? "" : Ie, children: [n(oe, { disabled: d, onClick: Fe.bind(null, { pages: o, setIsRequestingPermission: u }), children: r }), n(_e, { required: t, skipButtonText: i })] })] });
1225
+ }, it = ({ content: e }) => n(xe, { className: A(bn, "ul_permission_svg_container", "ul_recorded-task-inset-spacing", "ul-center-horizontally"), html: e.svg }, "ul-permission-request-graphic"), st = ({ content: e, pages: o, required: t }) => {
1226
+ const { permissionDeniedHeadline: r, permissionDeniedBody: i, skipButtonText: s, tryAgainButtonText: d } = e, u = je(o[0]) ? o[0] : null;
1227
1227
  return ae(() => {
1228
1228
  const a = setInterval(() => {
1229
1229
  u !== null && qe({ currentPage: u, pages: o });
1230
1230
  }, 1e3);
1231
1231
  return () => clearInterval(a);
1232
- }, [u, o]), u ? n("div", { children: [n("div", { className: yn, children: n("p", { className: "ul-av-permission-denied-paragraph", children: [n("span", { className: "ul-av-permission-denied-headline", children: r }), n("span", { className: fn, children: i })] }) }), n("div", { className: Ie, children: [n(oe, { onClick: qe.bind(null, { currentPage: u, pages: o }), children: d }), n(Te, { required: t, skipButtonText: s })] })] }) : null;
1232
+ }, [u, o]), u ? n("div", { children: [n("div", { className: yn, children: n("p", { className: "ul-av-permission-denied-paragraph", children: [n("span", { className: "ul-av-permission-denied-headline", children: r }), n("span", { className: fn, children: i })] }) }), n("div", { className: Ie, children: [n(oe, { onClick: qe.bind(null, { currentPage: u, pages: o }), children: d }), n(_e, { required: t, skipButtonText: s })] })] }) : null;
1233
1233
  }, at = ({ stream: e }) => n("video", { autoPlay: !0, className: A("ul_recorded-task-inset-spacing"), id: "ul-record-task-video-preview", muted: !0, ref: (o) => {
1234
1234
  o && (o.srcObject = e || null);
1235
1235
  } }), lt = ({ content: e, pages: o, required: t }) => {
1236
1236
  const { skipButtonText: r } = e, { avStream: i } = te.getState();
1237
- return Ge(o), n("div", { children: [n(at, { stream: i }), n("div", { className: "ul-vertical-button-container-center", children: [n(oe, { onClick: ze.bind(null, { pages: o }), children: e.buttonText }), n(Te, { bottom: !0, required: t, skipButtonText: r })] })] });
1237
+ return ze(o), n("div", { children: [n(at, { stream: i }), n("div", { className: "ul-vertical-button-container-center", children: [n(oe, { onClick: Fe.bind(null, { pages: o }), children: e.buttonText }), n(_e, { bottom: !0, required: t, skipButtonText: r })] })] });
1238
1238
  }, dt = ({ properties: e }) => {
1239
1239
  const { pages: o, required: t } = e, { avStream: r, currentPage: i } = te.getState();
1240
1240
  if (i === void 0) return null;
@@ -1253,18 +1253,18 @@ const bn = "ul-permission-graphics-container", fn = "ul-permission-body", yn = A
1253
1253
  return null;
1254
1254
  }
1255
1255
  }, ct = ({ className: e, properties: o, next: t, questionId: r }) => {
1256
- const i = G(), { surveyId: s, responseGroupUid: d, userId: u } = i, a = te(), { screenPermissionRequested: v } = a, y = te((b) => b.avStream);
1256
+ const i = z(), { surveyId: s, responseGroupUid: d, userId: u } = i, a = te(), { screenPermissionRequested: v } = a, y = te((b) => b.avStream);
1257
1257
  let c = te((b) => b.currentPage);
1258
- c || (c = function({ pages: b, userId: f, responseGroupUid: _, surveyId: R, questionId: N, next: T }) {
1259
- const { updatePage: H } = te.getState(), { eventEmitFn: $, recorderEventEmitter: m } = G.getState(), h = { questionId: N, surveyId: R, visitorId: f, responseGroupUid: _ };
1258
+ c || (c = function({ pages: b, userId: f, responseGroupUid: _, surveyId: R, questionId: L, next: T }) {
1259
+ const { updatePage: H } = te.getState(), { eventEmitFn: $, recorderEventEmitter: m } = z.getState(), h = { questionId: L, surveyId: R, visitorId: f, responseGroupUid: _ };
1260
1260
  let k = 0;
1261
1261
  m.emit("recorded.task.permission.screen"), $("recorded.task.permission.screen"), m.emit("permission.status", { "permission.status.callback": (p, x, S, j) => {
1262
1262
  const M = b[k], { type: O } = M, B = ["screen"];
1263
- if (Ee(M)) {
1263
+ if (je(M)) {
1264
1264
  const { permissionDescriptors: q } = M, Q = q == null ? void 0 : q.includes("microphone"), Y = q == null ? void 0 : q.includes("camera");
1265
1265
  Q && B.push("audio"), Y && B.push("video"), (p != null && p.active && !Y || p != null && p.active && x) && k++;
1266
1266
  }
1267
- Xe(b[k]) && S && (k++, m.emit("begin.recording", { "recording.media.types": B, "start.recording.callback": (q) => H({ mediaRecordingUids: q }) })), H({ currentPage: b[k], avStream: p, screenPermissionRequested: S, nextQuestion: T, type: O, passthroughData: h, recordingMediaTypes: B, captureStream: j });
1267
+ Je(b[k]) && S && (k++, m.emit("begin.recording", { "recording.media.types": B, "start.recording.callback": (q) => H({ mediaRecordingUids: q }) })), H({ currentPage: b[k], avStream: p, screenPermissionRequested: S, nextQuestion: T, type: O, passthroughData: h, recordingMediaTypes: B, captureStream: j });
1268
1268
  } });
1269
1269
  const l = b[k];
1270
1270
  return l.type === "av_permission" && qe({ currentPage: l, pages: b }), l;
@@ -1273,35 +1273,35 @@ const bn = "ul-permission-graphics-container", fn = "ul-permission-body", yn = A
1273
1273
  }, pages: o.pages, responseGroupUid: d, userId: u }));
1274
1274
  let g = c.headline, w = c.captionText;
1275
1275
  const C = gn(y, c);
1276
- return Xe(c) && v && (g = c.permissionDeniedHeadline, w = c.permissionDeniedCaptionText), Ee(c) && C === hn && (g = c.permissionGrantedHeadline, w = c.permissionGrantedCaptionText), n("div", { className: A(e, "ul-center-horizontally", "fade-in-transition"), children: [n(Ve, { isRequired: o == null ? void 0 : o.required, message: g, properties: { captionText: w } }), n(ce, { children: n(dt, { properties: o }) })] });
1276
+ return Je(c) && v && (g = c.permissionDeniedHeadline, w = c.permissionDeniedCaptionText), je(c) && C === hn && (g = c.permissionGrantedHeadline, w = c.permissionGrantedCaptionText), n("div", { className: A(e, "ul-center-horizontally", "fade-in-transition"), children: [n(He, { isRequired: o == null ? void 0 : o.required, message: g, properties: { captionText: w } }), n(ce, { children: n(dt, { properties: o }) })] });
1277
1277
  }, ut = ({ className: e, next: o, properties: t, questionId: r, type: i }) => {
1278
- const { visitorAttributes: s, isLongFormSurvey: d } = G((y) => ({ visitorAttributes: y.visitorAttributes, isLongFormSurvey: on(y.studyType) })), u = (y, c = !1) => {
1278
+ const { visitorAttributes: s, isLongFormSurvey: d } = z((y) => ({ visitorAttributes: y.visitorAttributes, isLongFormSurvey: on(y.studyType) })), u = (y, c = !1) => {
1279
1279
  o({ value: c ? { skipped: !0 } : void 0, questionId: r, type: i }, !0);
1280
1280
  }, a = Bn(t && t.buttonUrl, s), v = d && t.promptActionType === En.NO_BUTTON;
1281
1281
  return n("div", { className: A(e, "ul-card__text-url-prompt", "fade-in-transition"), children: n(ie, { properties: t, children: !v && n("div", { children: n("div", { className: "ul-card-button-group", children: [n("a", { className: "ul-card-text__button ul-card__text-url-prompt-button", href: a, id: "ul-card-text__button", onClick: u, onKeyPress: (y) => {
1282
1282
  y.key !== "Enter" && y.key !== " " || o({ value: void 0, questionId: r, type: i }, !0);
1283
1283
  }, rel: "noreferrer", role: a ? "link" : "button", tabIndex: 0, target: "_blank", children: re(t) }), t.required === !1 && n("button", { className: "ul-card-skip__button", onClick: (y) => u(0, !0), children: Oe(t) })] }) }) }) }, r);
1284
1284
  }, pt = ({ className: e, questionId: o }) => {
1285
- const { border: t, destroy: r, endCard: i, forceBrandedLogo: s } = G((a) => ({ border: a.border, destroy: a.destroy, endCard: a.endCard, forceBrandedLogo: a.forceBrandedLogo }));
1285
+ const { border: t, destroy: r, endCard: i, forceBrandedLogo: s } = z((a) => ({ border: a.border, destroy: a.destroy, endCard: a.endCard, forceBrandedLogo: a.forceBrandedLogo }));
1286
1286
  ae(() => {
1287
1287
  setTimeout(() => {
1288
- r($e);
1288
+ r(Ae);
1289
1289
  }, s ? 4e3 : 2e3);
1290
1290
  }, [r, s]);
1291
1291
  const d = i && i.subheader ? n("p", { className: "ul-caption", children: i.subheader }) : null, u = i && i.headline ? i.headline : "";
1292
- return n("div", { className: A(e, "ul-card--thanks", "fade-in-transition"), children: n("div", { children: n("div", { className: "ul-card--thanks-content", children: [n("div", { className: "ul-thanks-check", children: n("svg", { "aria-labelledby": "title", fill: "none", height: "99", viewBox: "0 0 81 99", width: "81", xmlns: "http://www.w3.org/2000/svg", children: [n("path", { clipRule: "evenodd", d: "M40.5 77C60.9345 77 77.5 60.4345 77.5 40C77.5 19.5655 60.9345 3 40.5 3C20.0655 3 3.5 19.5655 3.5 40C3.5 60.4345 20.0655 77 40.5 77ZM80.5 40C80.5 62.0914 62.5914 80 40.5 80C18.4086 80 0.5 62.0914 0.5 40C0.5 17.9086 18.4086 0 40.5 0C62.5914 0 80.5 17.9086 80.5 40Z", fill: t, fillRule: "evenodd" }), n("path", { clipRule: "evenodd", d: "M55.025 22.9046C55.6299 23.4705 55.6616 24.4198 55.0956 25.0247C54.8724 25.2634 54.6109 25.5285 54.3157 25.8277C52.2547 27.9168 48.5549 31.667 44.8135 39.6658C43.2818 42.9406 42.0864 45.8386 41.0823 48.2729C40.6539 49.3116 40.2603 50.2659 39.8902 51.129C39.287 52.5359 38.7248 53.7508 38.1744 54.625C37.8997 55.0613 37.5806 55.4905 37.2017 55.8245C36.8201 56.1607 36.2613 56.5 35.5457 56.5C34.6742 56.5 34.0892 55.9692 33.7774 55.6083C33.4502 55.2296 33.1752 54.7511 32.9396 54.301C32.7305 53.9013 32.5088 53.4367 32.2797 52.9565C32.2429 52.8794 32.2059 52.8019 32.1688 52.7243C31.8942 52.1499 31.5959 51.534 31.2537 50.8868C29.8886 48.305 27.8539 45.2878 24.2343 43.1382C23.522 42.7152 23.2875 41.7949 23.7105 41.0826C24.1335 40.3703 25.0539 40.1358 25.7662 40.5588C30.0556 43.1062 32.4149 46.6647 33.9058 49.4845C34.2776 50.1876 34.5973 50.8487 34.8753 51.4302C34.9147 51.5124 34.9529 51.5926 34.9902 51.6707C35.2222 52.1567 35.4164 52.5637 35.5978 52.9102C35.6151 52.9434 35.6321 52.9754 35.6485 53.0061C36.0565 52.3531 36.5341 51.3434 37.133 49.9468C37.4781 49.1418 37.8572 48.2229 38.2761 47.2074C39.2886 44.7532 40.5339 41.7347 42.0961 38.3948C46.0591 29.9221 50.0641 25.8648 52.1535 23.7482C52.4423 23.4556 52.6944 23.2002 52.9048 22.9753C53.4708 22.3703 54.42 22.3387 55.025 22.9046ZM35.1994 53.5892C35.1994 53.5892 35.2 53.5888 35.2012 53.5879C35.2 53.5889 35.1994 53.5893 35.1994 53.5892ZM36.0666 53.6682C36.0732 53.674 36.0765 53.6775 36.0765 53.6777C36.0765 53.678 36.0732 53.6751 36.0666 53.6682Z", fill: t, fillRule: "evenodd" }), n("path", { d: "M69.5 97C69.5 98.1046 56.2924 99 40 99C23.7076 99 10.5 98.1046 10.5 97C10.5 95.8954 23.7076 95 40 95C56.2924 95 69.5 95.8954 69.5 97Z", fill: "black", fillOpacity: "0.2" })] }) }), n(Ve, { message: u }), d] }) }) }, o);
1292
+ return n("div", { className: A(e, "ul-card--thanks", "fade-in-transition"), children: n("div", { children: n("div", { className: "ul-card--thanks-content", children: [n("div", { className: "ul-thanks-check", children: n("svg", { "aria-labelledby": "title", fill: "none", height: "99", viewBox: "0 0 81 99", width: "81", xmlns: "http://www.w3.org/2000/svg", children: [n("path", { clipRule: "evenodd", d: "M40.5 77C60.9345 77 77.5 60.4345 77.5 40C77.5 19.5655 60.9345 3 40.5 3C20.0655 3 3.5 19.5655 3.5 40C3.5 60.4345 20.0655 77 40.5 77ZM80.5 40C80.5 62.0914 62.5914 80 40.5 80C18.4086 80 0.5 62.0914 0.5 40C0.5 17.9086 18.4086 0 40.5 0C62.5914 0 80.5 17.9086 80.5 40Z", fill: t, fillRule: "evenodd" }), n("path", { clipRule: "evenodd", d: "M55.025 22.9046C55.6299 23.4705 55.6616 24.4198 55.0956 25.0247C54.8724 25.2634 54.6109 25.5285 54.3157 25.8277C52.2547 27.9168 48.5549 31.667 44.8135 39.6658C43.2818 42.9406 42.0864 45.8386 41.0823 48.2729C40.6539 49.3116 40.2603 50.2659 39.8902 51.129C39.287 52.5359 38.7248 53.7508 38.1744 54.625C37.8997 55.0613 37.5806 55.4905 37.2017 55.8245C36.8201 56.1607 36.2613 56.5 35.5457 56.5C34.6742 56.5 34.0892 55.9692 33.7774 55.6083C33.4502 55.2296 33.1752 54.7511 32.9396 54.301C32.7305 53.9013 32.5088 53.4367 32.2797 52.9565C32.2429 52.8794 32.2059 52.8019 32.1688 52.7243C31.8942 52.1499 31.5959 51.534 31.2537 50.8868C29.8886 48.305 27.8539 45.2878 24.2343 43.1382C23.522 42.7152 23.2875 41.7949 23.7105 41.0826C24.1335 40.3703 25.0539 40.1358 25.7662 40.5588C30.0556 43.1062 32.4149 46.6647 33.9058 49.4845C34.2776 50.1876 34.5973 50.8487 34.8753 51.4302C34.9147 51.5124 34.9529 51.5926 34.9902 51.6707C35.2222 52.1567 35.4164 52.5637 35.5978 52.9102C35.6151 52.9434 35.6321 52.9754 35.6485 53.0061C36.0565 52.3531 36.5341 51.3434 37.133 49.9468C37.4781 49.1418 37.8572 48.2229 38.2761 47.2074C39.2886 44.7532 40.5339 41.7347 42.0961 38.3948C46.0591 29.9221 50.0641 25.8648 52.1535 23.7482C52.4423 23.4556 52.6944 23.2002 52.9048 22.9753C53.4708 22.3703 54.42 22.3387 55.025 22.9046ZM35.1994 53.5892C35.1994 53.5892 35.2 53.5888 35.2012 53.5879C35.2 53.5889 35.1994 53.5893 35.1994 53.5892ZM36.0666 53.6682C36.0732 53.674 36.0765 53.6775 36.0765 53.6777C36.0765 53.678 36.0732 53.6751 36.0666 53.6682Z", fill: t, fillRule: "evenodd" }), n("path", { d: "M69.5 97C69.5 98.1046 56.2924 99 40 99C23.7076 99 10.5 98.1046 10.5 97C10.5 95.8954 23.7076 95 40 95C56.2924 95 69.5 95.8954 69.5 97Z", fill: "black", fillOpacity: "0.2" })] }) }), n(He, { message: u }), d] }) }) }, o);
1293
1293
  }, mt = () => n("div", { className: "thinking-dots-container", children: n("div", { className: "thinking-dot" }) }), vt = ({ className: e }) => {
1294
- const { uploadProgress: o } = G((s) => ({ uploadProgress: s.uploadProgress }));
1294
+ const { uploadProgress: o } = z((s) => ({ uploadProgress: s.uploadProgress }));
1295
1295
  let t, r;
1296
1296
  Object.values(o).filter((s) => s.isSubmitted).length > 1 ? (t = "Your responses are processing", r = "Please keep this tab open until your responses are fully processed.") : (t = "Your response is processing", r = "Please keep this tab open until your response is fully processed.");
1297
1297
  const i = Math.round(Math.min(99, ...Object.values(o).filter((s) => s.isSubmitted).map((s) => s.progressPct || 0)));
1298
- return n("div", { className: A(e, "ul-card--uploading", "fade-in-transition"), children: [n("div", { "aria-busy": "true", "aria-label": "Processing...", "aria-live": "polite", className: "ul-loading-spinner-container", role: "progressbar", children: n("div", { className: "ul-loading-spinner", children: [n("div", { className: "first" }), n("div", { className: "second" }), n("div", { className: "third" }), n("div", { className: "fourth" })] }) }), n(Ve, { message: `${t} (${i}% complete)` }), n("p", { className: "ul-caption", children: r })] });
1299
- }, nn = 0, tn = 1, ht = ({ className: e, next: o, properties: t, questionId: r, type: i }) => {
1300
- const s = `ul-card-video__player_recorder-q${r}`, { apiURL: d, envId: u, handleUploadUpdate: a, headers: v, responseGroupUid: y, surveyId: c, viewDocument: g, visitorId: w } = G((h) => ({ apiURL: h.apiURL, envId: h.envId, handleUploadUpdate: h.handleUploadUpdate, headers: h.headers, responseGroupUid: h.responseGroupUid, surveyId: h.surveyId, viewDocument: h.viewDocument, visitorId: h.userId })), [C, b] = Z(!1), [f, _] = Z(null), [R, N] = Z(null), [T, H] = Z(nn), $ = (h, k) => {
1301
- h === L.UPLOAD_STARTED ? (_(k[L.UPLOAD_ID]), N(k[L.MEDIA_RECORDING_UID]), b(!0)) : h === L.DELETE ? (_(null), N(null), b(!1)) : h === L.UPLOAD_PROGRESS ? isNaN(k[L.UPLOAD_PROGRESS_PCT]) ? a({ mediaRecordingUid: k[L.MEDIA_RECORDING_UID], isComplete: !0 }) : a({ mediaRecordingUid: k[L.MEDIA_RECORDING_UID], progressPct: k[L.UPLOAD_PROGRESS_PCT] }) : h === L.UPLOAD_FINISHED && a({ mediaRecordingUid: k[L.MEDIA_RECORDING_UID], isComplete: !0 });
1298
+ return n("div", { className: A(e, "ul-card--uploading", "fade-in-transition"), children: [n("div", { "aria-busy": "true", "aria-label": "Processing...", "aria-live": "polite", className: "ul-loading-spinner-container", role: "progressbar", children: n("div", { className: "ul-loading-spinner", children: [n("div", { className: "first" }), n("div", { className: "second" }), n("div", { className: "third" }), n("div", { className: "fourth" })] }) }), n(He, { message: `${t} (${i}% complete)` }), n("p", { className: "ul-caption", children: r })] });
1299
+ }, en = 0, nn = 1, ht = ({ className: e, next: o, properties: t, questionId: r, type: i }) => {
1300
+ const s = `ul-card-video__player_recorder-q${r}`, { apiURL: d, envId: u, handleUploadUpdate: a, headers: v, responseGroupUid: y, surveyId: c, viewDocument: g, visitorId: w } = z((h) => ({ apiURL: h.apiURL, envId: h.envId, handleUploadUpdate: h.handleUploadUpdate, headers: h.headers, responseGroupUid: h.responseGroupUid, surveyId: h.surveyId, viewDocument: h.viewDocument, visitorId: h.userId })), [C, b] = Z(!1), [f, _] = Z(null), [R, L] = Z(null), [T, H] = Z(en), $ = (h, k) => {
1301
+ h === N.UPLOAD_STARTED ? (_(k[N.UPLOAD_ID]), L(k[N.MEDIA_RECORDING_UID]), b(!0)) : h === N.DELETE ? (_(null), L(null), b(!1)) : h === N.UPLOAD_PROGRESS ? isNaN(k[N.UPLOAD_PROGRESS_PCT]) ? a({ mediaRecordingUid: k[N.MEDIA_RECORDING_UID], isComplete: !0 }) : a({ mediaRecordingUid: k[N.MEDIA_RECORDING_UID], progressPct: k[N.UPLOAD_PROGRESS_PCT] }) : h === N.UPLOAD_FINISHED && a({ mediaRecordingUid: k[N.MEDIA_RECORDING_UID], isComplete: !0 });
1302
1302
  }, m = (h) => {
1303
1303
  h.preventDefault(), h.stopPropagation(), document.getElementById(s) && ((k) => {
1304
- const l = k + We;
1304
+ const l = k + Ye;
1305
1305
  if (I.document.getElementById(l) && I.videojs) {
1306
1306
  try {
1307
1307
  if (!I.videojs(l).record().stream) return;
@@ -1312,36 +1312,36 @@ const bn = "ul-permission-graphics-container", fn = "ul-permission-body", yn = A
1312
1312
  }
1313
1313
  })(s), f && R ? (a({ mediaRecordingUid: R, isSubmitted: !0 }), o({ value: { mediaRecordingUid: R }, questionId: r, type: i }, !0)) : o({ value: null, questionId: r, type: i }, !0);
1314
1314
  };
1315
- return n("form", { className: A(e, "ul-card--video", "fade-in-transition"), id: "ul-video-interview-form", children: [n(ce, { children: [n("div", { id: "ul-question-player-container", style: { display: T === nn ? "" : "none" }, children: n(ie, { properties: t, children: n("button", { className: "ul-video-btn ul-record-response-btn", onClick: (h) => {
1315
+ return n("form", { className: A(e, "ul-card--video", "fade-in-transition"), id: "ul-video-interview-form", children: [n(ce, { children: [n("div", { id: "ul-question-player-container", style: { display: T === en ? "" : "none" }, children: n(ie, { properties: t, children: n("button", { className: "ul-video-btn ul-record-response-btn", onClick: (h) => {
1316
1316
  h.preventDefault(), h.stopPropagation(), document.getElementById(s) && ((k) => {
1317
- const l = we(k + an);
1317
+ const l = Ee(k + an);
1318
1318
  l == null || l.pause();
1319
- })(s), H(tn);
1320
- } }) }) }), n("div", { style: { display: T === tn ? "block" : "none" }, children: n("div", { id: "ul-recorder-player-container", ref: (h) => {
1319
+ })(s), H(nn);
1320
+ } }) }) }), n("div", { style: { display: T === nn ? "block" : "none" }, children: n("div", { id: "ul-recorder-player-container", ref: (h) => {
1321
1321
  if (h && h.children.length === 0) {
1322
1322
  const k = ((l, p = {}, x = "https://api.userleap.com", S, j, M, O = !1, B = document) => {
1323
1323
  I.document = B;
1324
- const q = l + We, Q = pn(q);
1324
+ const q = l + Ye, Q = pn(q);
1325
1325
  return I.document.addEventListener("securitypolicyviolation", (Y) => {
1326
1326
  le(new Error(`Voice & Video feature violates ${Y.violatedDirective} web page CSP policies for the recorder player.`), "recorderDeviceError", x, M, p.visitorId, p.envId);
1327
1327
  }), ln(sn.concat(Un), () => {
1328
- Me(q, Q), I.document.getElementById(Fe(q)).remove();
1328
+ Me(q, Q), I.document.getElementById(Ve(q)).remove();
1329
1329
  try {
1330
1330
  An(Q, q, p, x, S, j, M, O);
1331
1331
  } catch (Y) {
1332
1332
  return void le(new Error(`Error when creating video recorder player object ${Y}`), "recorderDeviceError", x, M, p.visitorId, p.envId);
1333
1333
  }
1334
1334
  }), Q;
1335
- })(s, { surveyId: c, responseGroupUid: y, questionId: r, visitorId: w, envId: u }, d, $, void 0, { ...v, "x-ul-video-recorder-origin": "sdk" }, t.mediaType === L.MEDIA_TYPE_AUDIO, g);
1335
+ })(s, { surveyId: c, responseGroupUid: y, questionId: r, visitorId: w, envId: u }, d, $, void 0, { ...v, "x-ul-video-recorder-origin": "sdk" }, t.mediaType === N.MEDIA_TYPE_AUDIO, g);
1336
1336
  h.appendChild(k);
1337
1337
  }
1338
1338
  } }) })] }), n(de, { children: [n(me, { isDisabled: !!t.required && !C, onClick: m, children: re(t) }), n("button", { className: "ul-card-text__button ul-button-inactive ul-card-skip__button", id: "ul-card-video__skip_button", onClick: m, style: { ...t.required ? { display: "none" } : {}, ...C ? { display: "none" } : {} }, children: Oe(t) })] })] });
1339
- }, fe = (e) => e.type === "aidynamicfollowup" || e.type === "aidynamicstandalone", Ne = (e) => {
1339
+ }, fe = (e) => e.type === "aidynamicfollowup" || e.type === "aidynamicstandalone", Le = (e) => {
1340
1340
  var o;
1341
1341
  return fe(e) && ((o = e.props) == null ? void 0 : o.loading) === Re.inFlight;
1342
1342
  }, xn = (e) => e.type === "thanks" || e.type === "uploading", gt = ({ card: e, avatars: o, isThinking: t, isCurrentQuestion: r, currentQuestionBubbleRef: i }) => {
1343
1343
  const s = ((d) => "properties" in d.props && d.props.properties && "questionHtml" in d.props.properties && d.props.properties.questionHtml ? { content: d.props.properties.questionHtml, isHtml: !0 } : "message" in d.props ? { content: d.props.message, isHtml: !1 } : { content: "Question", isHtml: !1 })(e);
1344
- return n(ge, { avatars: o, isLeft: !0, message: { id: `question-${e.name}`, type: "question", content: s.content }, ref: r ? i : null, children: t ? n(mt, {}) : n(je, { children: [s.isHtml ? n(Ce, { className: "chat-message-text", html: s.content }) : n("div", { className: "chat-message-text", children: s.content }), e.type === "videovoice" && n(Fn, { properties: e.props, questionId: e.name, surveyVideoUrl: e.props.properties.videoUrl })] }) });
1344
+ return n(ge, { avatars: o, isLeft: !0, message: { id: `question-${e.name}`, type: "question", content: s.content }, ref: r ? i : null, children: t ? n(mt, {}) : n(Ce, { children: [s.isHtml ? n(xe, { className: "chat-message-text", html: s.content }) : n("div", { className: "chat-message-text", children: s.content }), e.type === "videovoice" && n(Fn, { properties: e.props, questionId: e.name, surveyVideoUrl: e.props.properties.videoUrl })] }) });
1345
1345
  }, bt = ({ card: e, avatars: o }) => {
1346
1346
  const t = ((r) => {
1347
1347
  if (!("properties" in r.props) || !r.props.properties || typeof r.props.properties != "object") return null;
@@ -1357,34 +1357,37 @@ const bn = "ul-permission-graphics-container", fn = "ul-permission-body", yn = A
1357
1357
  }
1358
1358
  return null;
1359
1359
  })(e);
1360
- return t ? n(ge, { avatars: o, hideAvatar: !0, isLeft: !0, message: { id: `caption-${e.name}`, type: "question", content: t.content }, children: t.isHtml ? n(Ce, { className: "chat-message-text", html: t.content }) : n("div", { className: "chat-message-text", children: t.content }) }) : null;
1361
- }, ft = ({ card: e, userResponse: o, avatars: t }) => {
1360
+ return t ? n(ge, { avatars: o, hideAvatar: !0, isLeft: !0, message: { id: `caption-${e.name}`, type: "question", content: t.content }, children: t.isHtml ? n(xe, { className: "chat-message-text", html: t.content }) : n("div", { className: "chat-message-text", children: t.content }) }) : null;
1361
+ }, ft = () => {
1362
+ const { providerPersona: e, showProviderPersona: o, experimentFlags: t } = z((i) => ({ providerPersona: i.providerPersona, showProviderPersona: i.showProviderPersona, experimentFlags: i.experimentFlags }));
1363
+ return (t == null ? void 0 : t["sdk-new-convo-ui"]) && o && e ? n("div", { className: "chat-persona-label", children: e }) : null;
1364
+ }, yt = ({ card: e, userResponse: o, avatars: t }) => {
1362
1365
  const r = ((i, s) => {
1363
1366
  if ((i.type === "open" || i.type === "aidynamicfollowup" || i.type === "aidynamicstandalone") && s && typeof s == "object" && "value" in s) return s.value;
1364
1367
  })(e, o);
1365
1368
  return n("div", { className: "chat-bubble-container chat-right", children: [n("div", { className: "chat-bubble chat-bubble-right chat-bubble-text-only", children: n("div", { className: "chat-message-text", children: r || n("div", { className: "chat-message-no-response", children: "No response" }) }) }), n("img", { alt: "User Avatar", className: "chat-avatar chat-avatar-right", srcSet: `${t.respondentAvatar["1x"]} 1x, ${t.respondentAvatar["2x"]} 2x` })] });
1366
- }, yt = ({ card: e, avatars: o, isCurrentQuestion: t, currentQuestionBubbleRef: r }) => {
1367
- const { endCard: i } = G((s) => ({ endCard: s.endCard }));
1368
- return n(je, { children: [n(ge, { avatars: o, isLeft: !0, message: { id: `thanks-${e.name}`, type: "question", content: (i == null ? void 0 : i.headline) ?? "Great! Thank you for your participation." }, ref: t ? r : null }), (i == null ? void 0 : i.subheader) && n(ge, { avatars: o, hideAvatar: !0, isLeft: !0, message: { id: `caption-${e.name}`, type: "question", content: i.subheader } }), n(Gn, {})] });
1369
- }, Ct = ({ card: e, cardIndex: o, index: t, avatars: r, cardResponses: i, questionThinkingStates: s, startingQuestionIdx: d, currentQuestionBubbleRef: u, handleCardResponse: a }) => {
1369
+ }, Ct = ({ card: e, avatars: o, isCurrentQuestion: t, currentQuestionBubbleRef: r }) => {
1370
+ const { endCard: i } = z((s) => ({ endCard: s.endCard }));
1371
+ return n(Ce, { children: [n(ge, { avatars: o, isLeft: !0, message: { id: `thanks-${e.name}`, type: "question", content: (i == null ? void 0 : i.headline) ?? "Great! Thank you for your participation." }, ref: t ? r : null }), (i == null ? void 0 : i.subheader) && n(ge, { avatars: o, hideAvatar: !0, isLeft: !0, message: { id: `caption-${e.name}`, type: "question", content: i.subheader } }), n(Gn, {})] });
1372
+ }, xt = ({ card: e, cardIndex: o, index: t, avatars: r, cardResponses: i, questionThinkingStates: s, startingQuestionIdx: d, currentQuestionBubbleRef: u, handleCardResponse: a }) => {
1370
1373
  const v = o === t, y = o < t, c = xn(e);
1371
- if (c) return n(yt, { avatars: r, card: e, currentQuestionBubbleRef: u, isCurrentQuestion: v });
1374
+ if (c) return n(Ct, { avatars: r, card: e, currentQuestionBubbleRef: u, isCurrentQuestion: v });
1372
1375
  const g = `${e.name}`, w = i.get(g), C = e.type === "open" || e.type === "aidynamicfollowup" || e.type === "aidynamicstandalone", b = s.get(g);
1373
- if (e.type === "aidynamicfollowup" && (e.props.loading === Re.failure || e.props.loading === void 0) || e.type === "aidynamicstandalone" && e.props.loading === Re.failure) return n(je, {});
1376
+ if (e.type === "aidynamicfollowup" && (e.props.loading === Re.failure || e.props.loading === void 0) || e.type === "aidynamicstandalone" && e.props.loading === Re.failure) return n(Ce, {});
1374
1377
  const f = (o > (d ?? 0) || fe(e)) && e.type !== "thanks" && e.type !== "uploading" && (b === !0 || b === void 0);
1375
- return n(rn.Fragment, { children: [n(gt, { avatars: r, card: e, currentQuestionBubbleRef: u, isCurrentQuestion: v, isThinking: f }), !f && n(bt, { avatars: r, card: e }), y && C ? n(ft, { avatars: r, card: e, userResponse: w }) : (!y || !C) && !f && n(ge, { avatars: r, isLeft: !1, message: { id: `card-${e.name}`, type: "card", content: "" }, children: n("div", { className: "chat-card-container", children: n(kt, { card: e, className: c ? "chat-thanks-card" : "chat-card", isAnswered: y, next: v ? a : () => {
1378
+ return n(tn.Fragment, { children: [n(gt, { avatars: r, card: e, currentQuestionBubbleRef: u, isCurrentQuestion: v, isThinking: f }), !f && n(Ce, { children: [n(bt, { avatars: r, card: e }), n(ft, {})] }), y && C ? n(yt, { avatars: r, card: e, userResponse: w }) : (!y || !C) && !f && n(ge, { avatars: r, isLeft: !1, message: { id: `card-${e.name}`, type: "card", content: "" }, children: n("div", { className: "chat-card-container", children: n(wt, { card: e, className: c ? "chat-thanks-card" : "chat-card", isAnswered: y, next: v ? a : () => {
1376
1379
  } }) }) })] }, `question-card-${e.name}`);
1377
- }, ge = rn.forwardRef(({ message: e, isLeft: o = !1, children: t, avatars: r, hideAvatar: i = !1 }, s) => {
1380
+ }, ge = tn.forwardRef(({ message: e, isLeft: o = !1, children: t, avatars: r, hideAvatar: i = !1 }, s) => {
1378
1381
  const d = o ? "chat-bubble-left" : "chat-bubble-right";
1379
1382
  return n("div", { className: `chat-bubble-container ${o ? "chat-left" : "chat-right"}${o && i ? " chat-no-avatar" : ""}`, ref: s, children: [o && !i && n("img", { alt: "AI Avatar", className: "chat-avatar chat-avatar-left", srcSet: `${r.agentAvatar["1x"]} 1x, ${r.agentAvatar["2x"]} 2x` }), n("div", { className: `chat-bubble ${d}`, children: t || n("div", { className: "chat-message-text", children: e.content }) }), !o && !i && n("img", { alt: "User Avatar", className: "chat-avatar chat-avatar-right", srcSet: `${r.respondentAvatar["1x"]} 1x, ${r.respondentAvatar["2x"]} 2x` })] });
1380
1383
  });
1381
1384
  ge.displayName = "ChatBubble";
1382
- const xt = () => {
1383
- const e = G((t) => t.close), o = ye(() => () => e($e), [e]);
1385
+ const kt = () => {
1386
+ const e = z((t) => t.close), o = ye(() => () => e(Ae), [e]);
1384
1387
  return n("div", { "aria-label": "Close button", className: "conversational-close-btn", onClick: o, onKeyPress: (t) => {
1385
1388
  t.key === "Enter" && o();
1386
1389
  }, role: "button", tabIndex: 0, children: n("svg", { fill: "none", height: "16px", viewBox: "0 0 13 13", width: "16px", xmlns: "http://www.w3.org/2000/svg", children: n("path", { d: "M2.54964 1.78369L1.78369 2.54964L5.73405 6.5L1.78369 10.4504L2.54964 11.2163L6.5 7.26595L10.4504 11.2163L11.2163 10.4504L7.26595 6.5L11.2163 2.54964L10.4504 1.78369L6.5 5.73405L2.54964 1.78369Z", fill: "#262136" }) }) });
1387
- }, kt = ({ card: e, next: o, className: t = "", isAnswered: r = !1 }) => {
1390
+ }, wt = ({ card: e, next: o, className: t = "", isAnswered: r = !1 }) => {
1388
1391
  const i = { className: r ? `${t} answered-card` : t, next: r ? () => {
1389
1392
  } : o, questionId: e.name, type: e.type, isAnswered: r };
1390
1393
  switch (e.type) {
@@ -1419,13 +1422,13 @@ const xt = () => {
1419
1422
  default:
1420
1423
  return null;
1421
1424
  }
1422
- }, It = ({ cards: e, next: o, previousResponses: t }) => {
1425
+ }, _t = ({ cards: e, next: o, previousResponses: t }) => {
1423
1426
  const { cardResponses: r, setCardResponse: i } = (() => {
1424
1427
  const [m, h] = Z(/* @__PURE__ */ new Map());
1425
1428
  return { cardResponses: m, setCardResponse: be((k, l) => {
1426
1429
  h((p) => new Map(p).set(k, l));
1427
1430
  }, []) };
1428
- })(), { index: s, isLongFormSurvey: d, avatars: u, showSurveyBrand: a, forceBrandedLogo: v, marketingUrlLink: y, startingQuestionIdx: c, viewDocument: g, createDynamicFollowupQuestion: w, update: C } = G((m) => ({ index: m.index, isLongFormSurvey: on(m.studyType), avatars: m.avatars, forceBrandedLogo: m.forceBrandedLogo, startingQuestionIdx: m.startingQuestionIdx, showSurveyBrand: m.showSurveyBrand, marketingUrlLink: jn({ marketingUrl: m.marketingUrl, slugName: m.slugName, surveyId: m.surveyId, forceBrandedLogo: m.forceBrandedLogo }), viewDocument: m.viewDocument, createDynamicFollowupQuestion: m.createDynamicFollowupQuestion, update: m.update })), { currentQuestionBubbleRef: b, scrollToCurrentQuestion: f } = (({ viewDocument: m }) => {
1431
+ })(), { index: s, isLongFormSurvey: d, avatars: u, showSurveyBrand: a, forceBrandedLogo: v, marketingUrlLink: y, startingQuestionIdx: c, viewDocument: g, createDynamicFollowupQuestion: w, update: C } = z((m) => ({ index: m.index, isLongFormSurvey: on(m.studyType), avatars: m.avatars, forceBrandedLogo: m.forceBrandedLogo, startingQuestionIdx: m.startingQuestionIdx, showSurveyBrand: m.showSurveyBrand, marketingUrlLink: jn({ marketingUrl: m.marketingUrl, slugName: m.slugName, surveyId: m.surveyId, forceBrandedLogo: m.forceBrandedLogo }), viewDocument: m.viewDocument, createDynamicFollowupQuestion: m.createDynamicFollowupQuestion, update: m.update })), { currentQuestionBubbleRef: b, scrollToCurrentQuestion: f } = (({ viewDocument: m }) => {
1429
1432
  const h = se(null), k = be(() => {
1430
1433
  const l = m.querySelector(".ul-card-main-content");
1431
1434
  if (h.current && l && l instanceof HTMLElement) {
@@ -1442,7 +1445,7 @@ const xt = () => {
1442
1445
  if (h > 0) {
1443
1446
  const B = m[h - 1];
1444
1447
  if (fe(B)) {
1445
- const q = `${B.name}`, Q = Ne(B);
1448
+ const q = `${B.name}`, Q = Le(B);
1446
1449
  if (O.get(q) !== Q) return new Map(O).set(q, Q);
1447
1450
  }
1448
1451
  }
@@ -1450,12 +1453,12 @@ const xt = () => {
1450
1453
  };
1451
1454
  if ((h <= (k ?? 0) || xn(x)) && (x == null ? void 0 : x.type) !== "aidynamicstandalone") return p((O) => j(new Map(O).set(S, !1)));
1452
1455
  p((O) => {
1453
- const B = !fe(x) || Ne(x);
1456
+ const B = !fe(x) || Le(x);
1454
1457
  return j(new Map(O).set(S, B));
1455
1458
  });
1456
1459
  const M = setTimeout(() => {
1457
1460
  p((O) => {
1458
- const B = !!fe(x) && Ne(x);
1461
+ const B = !!fe(x) && Le(x);
1459
1462
  return j(new Map(O).set(S, B));
1460
1463
  });
1461
1464
  }, 1e3);
@@ -1464,7 +1467,7 @@ const xt = () => {
1464
1467
  }, [h, m, k]), l;
1465
1468
  })(e, s, c);
1466
1469
  ((m, h) => {
1467
- const { createDynamicStandaloneQuestion: k } = G((x) => ({ createDynamicStandaloneQuestion: x.createDynamicStandaloneQuestion })), l = m[h], p = (l == null ? void 0 : l.type) === "aidynamicstandalone" && l.props.loading === void 0 ? l.name : null;
1470
+ const { createDynamicStandaloneQuestion: k } = z((x) => ({ createDynamicStandaloneQuestion: x.createDynamicStandaloneQuestion })), l = m[h], p = (l == null ? void 0 : l.type) === "aidynamicstandalone" && l.props.loading === void 0 ? l.name : null;
1468
1471
  ae(() => {
1469
1472
  p !== null && k({ questionId: p });
1470
1473
  }, [p, k]);
@@ -1481,12 +1484,12 @@ const xt = () => {
1481
1484
  return S;
1482
1485
  });
1483
1486
  }, [h]), k;
1484
- })(s, c), N = ye(() => ({ ...t, ...In(e.map((m, h) => {
1487
+ })(s, c), L = ye(() => ({ ...t, ...In(e.map((m, h) => {
1485
1488
  var k, l;
1486
1489
  return { ...m, value: h < s ? ((k = r.get(`${m.name}`)) == null ? void 0 : k.value) ?? null : null, secondaryValue: h < s ? ((l = r.get(`${m.name}`)) == null ? void 0 : l.secondaryValue) ?? null : null };
1487
1490
  })) }), [t, r, e, s]);
1488
- qn(N);
1489
- const T = Tn(e, N);
1491
+ qn(L);
1492
+ const T = _n(e, L);
1490
1493
  ae(() => {
1491
1494
  requestAnimationFrame(() => {
1492
1495
  f();
@@ -1501,8 +1504,8 @@ const xt = () => {
1501
1504
  const p = { ...m, questionText: Dn(k) };
1502
1505
  k.childId && (p == null ? void 0 : p.value) != null && Sn({ displayCard: k, response: p, createDynamicFollowupQuestion: w }), o([p]);
1503
1506
  }, [T, s, o, i]), $ = T.map((m, h) => ({ card: m, cardIndex: h })).filter(({ cardIndex: m }) => R.has(m));
1504
- return n("div", { className: "conversational-ui ul-conversational-ui", "data-testid": "ui-container", children: [!d && n(xt, {}), n("div", { className: "chat-container", children: n("div", { className: "chat-messages", children: $.map(({ card: m, cardIndex: h }) => n(Ct, { avatars: u, card: m, cardIndex: h, cardResponses: r, currentQuestionBubbleRef: b, handleCardResponse: H, index: s, questionThinkingStates: _, startingQuestionIdx: c }, `question-card-${m.name}`)) }) }), d && n("div", { className: "long-form-question-footer-container-logo", children: a && n(_n, { forceBrandedLogo: v, marketingUrlLink: y }) })] });
1507
+ return n("div", { className: "conversational-ui ul-conversational-ui", "data-testid": "ui-container", children: [!d && n(kt, {}), n("div", { className: "chat-container", children: n("div", { className: "chat-messages", children: $.map(({ card: m, cardIndex: h }) => n(xt, { avatars: u, card: m, cardIndex: h, cardResponses: r, currentQuestionBubbleRef: b, handleCardResponse: H, index: s, questionThinkingStates: _, startingQuestionIdx: c }, `question-card-${m.name}`)) }) }), d && n("div", { className: "long-form-question-footer-container-logo", children: a && n(Tn, { forceBrandedLogo: v, marketingUrlLink: y }) })] });
1505
1508
  };
1506
1509
  export {
1507
- It as default
1510
+ _t as default
1508
1511
  };