@incodetech/welcome 1.71.0-20240419161640.0 → 1.71.0-20240423210706.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,8 +1,7 @@
1
1
  export default Microphone;
2
- declare function Microphone({ sound, isQuestions, recording, recordingText }: {
2
+ declare function Microphone({ sound, isQuestions, recording }: {
3
3
  sound: any;
4
4
  isQuestions: any;
5
5
  recording: any;
6
- recordingText: any;
7
6
  }): import("react/jsx-runtime").JSX.Element;
8
7
  //# sourceMappingURL=Microphone.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Microphone.d.ts","sourceRoot":"","sources":["../../../../src/recorder/Microphone.jsx"],"names":[],"mappings":";AAsEA;;;;;4CAiBC"}
1
+ {"version":3,"file":"Microphone.d.ts","sourceRoot":"","sources":["../../../../src/recorder/Microphone.jsx"],"names":[],"mappings":";AAuEA;;;;4CAkBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"QuestionsMask.d.ts","sourceRoot":"","sources":["../../../../src/recorder/QuestionsMask.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAuB,MAAM,OAAO,CAAC;AAgBhD,eAAO,MAAM,qBAAqB;eAA2B,OAAO;SAqDnE,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AACF,QAAA,MAAM,kBAAkB,EAAE,EAAE,CAAC,aAAa,CAuCzC,CAAC;AAyBF,eAAO,MAAM,QAAQ,kEAYpB,CAAC;AAEF,eAAO,MAAM,YAAY,kEASxB,CAAC;AACF,eAAO,MAAM,cAAc,uEAsB1B,CAAC;AAEF,eAAO,MAAM,eAAe,oEAI3B,CAAC;AAWF,eAAO,MAAM,YAAY,oEAcxB,CAAC;AAsGF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"QuestionsMask.d.ts","sourceRoot":"","sources":["../../../../src/recorder/QuestionsMask.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAA+B,MAAM,OAAO,CAAC;AAgBxD,eAAO,MAAM,qBAAqB;eAA2B,OAAO;SAqDnE,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AACF,QAAA,MAAM,kBAAkB,EAAE,EAAE,CAAC,aAAa,CAuCzC,CAAC;AAwBF,eAAO,MAAM,QAAQ,kEAYpB,CAAC;AAEF,eAAO,MAAM,YAAY,kEASxB,CAAC;AACF,eAAO,MAAM,cAAc,uEAsB1B,CAAC;AAEF,eAAO,MAAM,eAAe,oEAI3B,CAAC;AAWF,eAAO,MAAM,YAAY,oEAcxB,CAAC;AA+HF,eAAe,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SpeechMask.d.ts","sourceRoot":"","sources":["../../../../src/recorder/SpeechMask.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAA2C,MAAM,OAAO,CAAC;AAgCpE,eAAO,MAAM,QAAQ,kEAMpB,CAAC;AAiCF,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,EAAE,EAAE,GAAG,CAAC;KACT;CACF;AAwFD,KAAK,cAAc,GAAG;IACpB,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IACxC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,WAAW,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,QAAA,MAAM,UAAU,EAAE,EAAE,CAAC,cAAc,CA+MlC,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"SpeechMask.d.ts","sourceRoot":"","sources":["../../../../src/recorder/SpeechMask.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAA2C,MAAM,OAAO,CAAC;AAgCpE,eAAO,MAAM,QAAQ,kEAMpB,CAAC;AAiCF,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,EAAE,EAAE,GAAG,CAAC;KACT;CACF;AAwFD,KAAK,cAAc,GAAG;IACpB,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IACxC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,WAAW,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,QAAA,MAAM,UAAU,EAAE,EAAE,CAAC,cAAc,CAmNlC,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SpeechRecommendations.d.ts","sourceRoot":"","sources":["../../../../src/recorder/SpeechRecommendations.jsx"],"names":[],"mappings":"AAkGA;;4CAiBC;AA3ED,qFAiDE;AAEF,iGAME"}
1
+ {"version":3,"file":"SpeechRecommendations.d.ts","sourceRoot":"","sources":["../../../../src/recorder/SpeechRecommendations.jsx"],"names":[],"mappings":"AAkGA;;4CAoBC;AA9ED,qFAiDE;AAEF,iGAME"}
@@ -17914,7 +17914,7 @@ const SelfieFaceDetectionPipelineParams = {
17914
17914
  null,
17915
17915
  "Selfie face detection profile"
17916
17916
  )
17917
- }, probabilityThreshold = 0.9, wasmVersion = "v1.7.5", brazilianPipelineBundle = [
17917
+ }, probabilityThreshold = 0.9, wasmVersion = "v1.7.6", brazilianPipelineBundle = [
17918
17918
  PipelineProfileType.IdCaptureBrazilian,
17919
17919
  PipelineProfileType.IdVideoSelfieBrazilian,
17920
17920
  PipelineProfileType.SelfieFaceDetection
@@ -38218,7 +38218,7 @@ function renderUserConsent(ue, {
38218
38218
  })
38219
38219
  }), ue, He);
38220
38220
  }
38221
- const version = "1.71.0-20240419161640.0";
38221
+ const version = "1.71.0-20240423210706.0";
38222
38222
  function r(ue) {
38223
38223
  for (var me = "", Ue = 0; Ue < ue.length; ++Ue)
38224
38224
  if (Ue > 0) {
@@ -70440,6 +70440,7 @@ function SpeechRecommendations({
70440
70440
  } = useTranslation();
70441
70441
  return /* @__PURE__ */ jsxs(Container$5, {
70442
70442
  className: "IncodeRecorderRecommendContainer",
70443
+ "aria-live": "assertive",
70443
70444
  children: [/* @__PURE__ */ jsx(Title$7, {
70444
70445
  className: "IncodeRecorderFailureTitle",
70445
70446
  children: me("common.somethingWrong")
@@ -70969,14 +70970,15 @@ const MicrophoneContainer = styled.div`
70969
70970
  function Microphone({
70970
70971
  sound: ue,
70971
70972
  isQuestions: me,
70972
- recording: Ue,
70973
- recordingText: Qe
70973
+ recording: Ue
70974
70974
  }) {
70975
- const [Ze, Je] = useState(ue);
70975
+ const [Qe, Ze] = useState(ue), {
70976
+ t: Je
70977
+ } = useTranslation();
70976
70978
  useEffect(() => {
70977
- Je(ue);
70979
+ Ze(ue);
70978
70980
  }, [ue]);
70979
- const Ge = Ze > 0.6;
70981
+ const Ge = Qe > 0.6;
70980
70982
  return /* @__PURE__ */ jsxs(MicrophoneContainer, {
70981
70983
  className: "IncodeRecorderMicrophoneContainer",
70982
70984
  isQuestions: me,
@@ -70985,7 +70987,7 @@ function Microphone({
70985
70987
  children: [/* @__PURE__ */ jsx(SoundWave, {
70986
70988
  size: "big",
70987
70989
  active: Ge
70988
- }), Qe]
70990
+ }), Je("videoSelfie.recording")]
70989
70991
  });
70990
70992
  }
70991
70993
  const speechBuuble = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzMiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMyAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzUzNTNfNDUxNSkiPgo8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDFfNTM1M180NTE1KSI+CjxwYXRoIGQ9Ik0xNi41IDE3LjVDMTcuMzI4NCAxNy41IDE4IDE2LjgyODQgMTggMTZDMTggMTUuMTcxNiAxNy4zMjg0IDE0LjUgMTYuNSAxNC41QzE1LjY3MTYgMTQuNSAxNSAxNS4xNzE2IDE1IDE2QzE1IDE2LjgyODQgMTUuNjcxNiAxNy41IDE2LjUgMTcuNVoiIGZpbGw9IiMyMDI2M0QiLz4KPHBhdGggZD0iTTExIDE3LjVDMTEuODI4NCAxNy41IDEyLjUgMTYuODI4NCAxMi41IDE2QzEyLjUgMTUuMTcxNiAxMS44Mjg0IDE0LjUgMTEgMTQuNUMxMC4xNzE2IDE0LjUgOS41IDE1LjE3MTYgOS41IDE2QzkuNSAxNi44Mjg0IDEwLjE3MTYgMTcuNSAxMSAxNy41WiIgZmlsbD0iIzIwMjYzRCIvPgo8cGF0aCBkPSJNMjIgMTcuNUMyMi44Mjg0IDE3LjUgMjMuNSAxNi44Mjg0IDIzLjUgMTZDMjMuNSAxNS4xNzE2IDIyLjgyODQgMTQuNSAyMiAxNC41QzIxLjE3MTYgMTQuNSAyMC41IDE1LjE3MTYgMjAuNSAxNkMyMC41IDE2LjgyODQgMjEuMTcxNiAxNy41IDIyIDE3LjVaIiBmaWxsPSIjMjAyNjNEIi8+CjxwYXRoIGQ9Ik0xMC40OTExIDI2LjM4ODlDMTMuMDExOCAyNy44NDc4IDE1Ljk3NjkgMjguMzQwMSAxOC44MzM4IDI3Ljc3NDJDMjEuNjkwNyAyNy4yMDgzIDI0LjI0NDMgMjUuNjIyNyAyNi4wMTg0IDIzLjMxMzFDMjcuNzkyNiAyMS4wMDM1IDI4LjY2NjMgMTguMTI3NSAyOC40NzY2IDE1LjIyMTNDMjguMjg2OSAxMi4zMTUxIDI3LjA0NjcgOS41NzcwMyAyNC45ODczIDcuNTE3NjZDMjIuOTI4IDUuNDU4MjkgMjAuMTg5OSA0LjIxODE0IDE3LjI4MzcgNC4wMjg0M0MxNC4zNzc1IDMuODM4NzIgMTEuNTAxNSA0LjcxMjM5IDkuMTkxODkgNi40ODY1NkM2Ljg4MjI4IDguMjYwNzMgNS4yOTY3IDEwLjgxNDMgNC43MzA3OCAxMy42NzEyQzQuMTY0ODYgMTYuNTI4MSA0LjY1NzIzIDE5LjQ5MzIgNi4xMTYwOSAyMi4wMTM5TDQuNTUyMzQgMjYuNjgyN0M0LjQ5MzU4IDI2Ljg1ODkgNC40ODUwNSAyNy4wNDc5IDQuNTI3NzEgMjcuMjI4N0M0LjU3MDM3IDI3LjQwOTUgNC42NjI1NCAyNy41NzQ4IDQuNzkzODcgMjcuNzA2MUM0LjkyNTIxIDI3LjgzNzUgNS4wOTA1MiAyNy45Mjk2IDUuMjcxMjkgMjcuOTcyM0M1LjQ1MjA2IDI4LjAxNDkgNS42NDExNCAyOC4wMDY0IDUuODE3MzQgMjcuOTQ3N0wxMC40OTExIDI2LjM4ODlaIiBzdHJva2U9IiMyMDI2M0QiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjwvZz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF81MzUzXzQ1MTUiPgo8cmVjdCB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9IndoaXRlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjUpIi8+CjwvY2xpcFBhdGg+CjxjbGlwUGF0aCBpZD0iY2xpcDFfNTM1M180NTE1Ij4KPHJlY3Qgd2lkdGg9IjMyIiBoZWlnaHQ9IjMyIiBmaWxsPSJ3aGl0ZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC41KSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=", QuestionMaskContainer = styled.div`
@@ -71083,12 +71085,12 @@ function QuestionsMask({
71083
71085
  return /* @__PURE__ */ jsxs(QuestionMaskContainer, {
71084
71086
  className: "IncodeRecorderQuestionMaskContainer",
71085
71087
  recording: !1,
71086
- "aria-live": "assertive",
71087
71088
  children: [/* @__PURE__ */ jsxs("div", {
71088
71089
  children: [/* @__PURE__ */ jsx("h1", {
71089
71090
  children: Ue("videoSelfie.answerOutLoud")
71090
71091
  }), /* @__PURE__ */ jsx("p", {
71091
71092
  className: "IncodeRecorderQuestionMaskTitle",
71093
+ "aria-live": "assertive",
71092
71094
  children: Ue(me ? "videoSelfie.weNeedVerbalAnswersPlural" : "videoSelfie.weNeedVerbalAnswer")
71093
71095
  })]
71094
71096
  }), /* @__PURE__ */ jsx(Button$9, {
@@ -71178,7 +71180,7 @@ function Questions({
71178
71180
  }) {
71179
71181
  const {
71180
71182
  t: Je
71181
- } = useTranslation(), [Ge, He] = useState(0), [Xe, Ke] = useState(!0);
71183
+ } = useTranslation(), [Ge, He] = useState(0), [Xe, Ke] = useState(!0), $e = useRef(null), nt = useRef(null);
71182
71184
  useEffect(() => {
71183
71185
  addScreenEvent({
71184
71186
  module: eventModuleNames.videoSelfie,
@@ -71186,12 +71188,14 @@ function Questions({
71186
71188
  token: Ze,
71187
71189
  shouldOpen: !0
71188
71190
  });
71189
- }, []);
71190
- function $e() {
71191
- const tt = Ge + 1;
71191
+ }, []), useEffect(() => {
71192
+ !Xe && nt.current && nt.current.focus(), Xe && $e.current && $e.current.focus();
71193
+ }, [Xe]);
71194
+ function tt() {
71195
+ const rt = Ge + 1;
71192
71196
  if (addScreenEvent({
71193
71197
  module: eventModuleNames.videoSelfie,
71194
- screen: `${eventScreenNames.videoSelfieVoiceQuestion}_${tt}`,
71198
+ screen: `${eventScreenNames.videoSelfieVoiceQuestion}_${rt}`,
71195
71199
  token: Ze,
71196
71200
  shouldOpen: !1
71197
71201
  }), Qe({
@@ -71199,13 +71203,13 @@ function Questions({
71199
71203
  payload: {
71200
71204
  question: ue[Ge]
71201
71205
  }
71202
- }), tt >= ue.length) {
71206
+ }), rt >= ue.length) {
71203
71207
  me();
71204
71208
  return;
71205
71209
  }
71206
71210
  addScreenEvent({
71207
71211
  module: eventModuleNames.videoSelfie,
71208
- screen: `${eventScreenNames.videoSelfieVoiceQuestion}_${tt + 1}`,
71212
+ screen: `${eventScreenNames.videoSelfieVoiceQuestion}_${rt + 1}`,
71209
71213
  token: Ze,
71210
71214
  shouldOpen: !0
71211
71215
  }), screenEvent({
@@ -71215,9 +71219,9 @@ function Questions({
71215
71219
  question: ue[Ge]
71216
71220
  },
71217
71221
  token: Ze.token
71218
- }), He(tt), Ke(!0);
71222
+ }), He(rt), Ke(!0);
71219
71223
  }
71220
- function nt() {
71224
+ function et() {
71221
71225
  screenEvent({
71222
71226
  module: eventModuleNames.videoSelfie,
71223
71227
  code: videoSelfieEvents.audioStreamOpened,
@@ -71229,44 +71233,49 @@ function Questions({
71229
71233
  }
71230
71234
  return /* @__PURE__ */ jsxs(QuestionMaskContainer, {
71231
71235
  recording: !Xe,
71232
- "aria-live": "assertive",
71233
71236
  children: [/* @__PURE__ */ jsxs("div", {
71234
71237
  children: [/* @__PURE__ */ jsx("h1", {
71235
71238
  children: Je("videoSelfie.answerOutLoud")
71236
71239
  }), /* @__PURE__ */ jsx(QuestionStepper, {
71237
71240
  children: ue.map(({
71238
- id: tt
71239
- }, et) => /* @__PURE__ */ jsx(QuestionStep, {
71241
+ id: rt
71242
+ }, at) => /* @__PURE__ */ jsx(QuestionStep, {
71240
71243
  className: classNames({
71241
- active: Ge >= et
71244
+ active: Ge >= at
71242
71245
  })
71243
- }, tt))
71246
+ }, rt))
71244
71247
  }), /* @__PURE__ */ jsx(Steps, {
71245
71248
  currentStep: Ge,
71246
71249
  children: ue.map(({
71247
- id: tt,
71248
- question: et
71250
+ id: rt,
71251
+ question: at
71249
71252
  }) => /* @__PURE__ */ jsx(Question$1, {
71250
- children: et
71251
- }, tt))
71253
+ "aria-live": "assertive",
71254
+ children: at
71255
+ }, rt))
71252
71256
  })]
71253
- }), /* @__PURE__ */ jsxs(BottomContainer, {
71254
- children: [/* @__PURE__ */ jsx(Microphone, {
71255
- sound: Ue,
71256
- isQuestions: !0,
71257
- recording: !Xe,
71258
- recordingText: Je("videoSelfie.recording")
71259
- }), Xe && /* @__PURE__ */ jsxs(QuestionButton, {
71257
+ }), /* @__PURE__ */ jsx(BottomContainer, {
71258
+ children: Xe ? /* @__PURE__ */ jsxs(QuestionButton, {
71259
+ ref: $e,
71260
71260
  className: "inverted",
71261
- onClick: nt,
71261
+ onClick: et,
71262
+ "aria-live": "polite",
71262
71263
  children: [/* @__PURE__ */ jsx("img", {
71263
71264
  src: speechBuuble,
71264
71265
  alt: "speech bubble"
71265
71266
  }), Je("common.tapToAnswer")]
71266
- }), !Xe && /* @__PURE__ */ jsx(QuestionButton, {
71267
- onClick: $e,
71268
- children: Je("common.tapWhenDone")
71269
- })]
71267
+ }) : /* @__PURE__ */ jsxs(Fragment, {
71268
+ children: [/* @__PURE__ */ jsx(Microphone, {
71269
+ sound: Ue,
71270
+ isQuestions: !0,
71271
+ recording: !Xe
71272
+ }), /* @__PURE__ */ jsx(QuestionButton, {
71273
+ ref: nt,
71274
+ onClick: tt,
71275
+ "aria-live": "polite",
71276
+ children: Je("common.tapWhenDone")
71277
+ })]
71278
+ })
71270
71279
  })]
71271
71280
  });
71272
71281
  }
@@ -71721,6 +71730,7 @@ const SpeechMask = ({
71721
71730
  className: "speech question-container IncodeRecorderQuestionContainer",
71722
71731
  recording: !nt && !St,
71723
71732
  children: [St && /* @__PURE__ */ jsx(Processing$1, {
71733
+ "aria-live": "assertive",
71724
71734
  status: at,
71725
71735
  message: He(`videoSelfie.${at}`)
71726
71736
  }), gt && !St && !ot && /* @__PURE__ */ jsxs(Fragment, {
@@ -71728,26 +71738,28 @@ const SpeechMask = ({
71728
71738
  children: He("videoSelfie.sayOutLoud")
71729
71739
  }), /* @__PURE__ */ jsx(Question, {
71730
71740
  className: "IncodeRecorderQuestion",
71741
+ "aria-live": "assertive",
71731
71742
  children: Ke || ""
71732
- }), /* @__PURE__ */ jsxs(BottomContainer, {
71743
+ }), /* @__PURE__ */ jsx(BottomContainer, {
71733
71744
  className: "IncodeRecorderQuestionBottomContainer",
71734
- children: [/* @__PURE__ */ jsx(Microphone, {
71735
- sound: Ge,
71736
- isQuestions: !0,
71737
- recording: !nt,
71738
- recordingText: He("videoSelfie.recording")
71739
- }), nt && /* @__PURE__ */ jsxs(QuestionButton, {
71745
+ children: nt ? /* @__PURE__ */ jsxs(QuestionButton, {
71740
71746
  className: "inverted",
71741
71747
  onClick: pt,
71742
71748
  children: [/* @__PURE__ */ jsx("img", {
71743
71749
  src: speechBuuble,
71744
71750
  alt: "speech bubble"
71745
71751
  }), He("common.tapToSpeak")]
71746
- }), !nt && /* @__PURE__ */ jsx(QuestionButton, {
71747
- role: "button",
71748
- onClick: dt,
71749
- children: He("common.tapWhenDone")
71750
- })]
71752
+ }) : /* @__PURE__ */ jsxs(Fragment, {
71753
+ children: [/* @__PURE__ */ jsx(Microphone, {
71754
+ sound: Ge,
71755
+ isQuestions: !0,
71756
+ recording: !nt
71757
+ }), /* @__PURE__ */ jsx(QuestionButton, {
71758
+ role: "button",
71759
+ onClick: dt,
71760
+ children: He("common.tapWhenDone")
71761
+ })]
71762
+ })
71751
71763
  })]
71752
71764
  }), Mt && /* @__PURE__ */ jsx(SpeechRecommendations, {
71753
71765
  tryAgain: ht
@@ -937,7 +937,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
937
937
  overflow: hidden;
938
938
  opacity: 0.7;
939
939
  white-space: nowrap;
940
- `;function copyLink(){const ue=window.location.href;navigator.clipboard.writeText(ue)}const isAppleDevice=mobile.isAppleDevice();function BrowserNotSupported({onContinue:ue,token:me}){const{t:Ue}=useTranslation();React$1.useEffect(()=>{me&&addEvent({token:me,code:"pageWasRenderedToUser",screen:"Unsupported Browser"})},[me]);const Qe=()=>{copyLink(),me&&addEvent({token:me,code:"userClickedCopyLink",screen:"Unsupported Browser"})},Ze=()=>{me&&addEvent({token:me,code:"userClickedContinueAnyway",screen:"Unsupported Browser"}),ue()};return jsxs(BrowserNotSupportedContainer,{className:"IncodeBrowserNotSupporterContainer",children:[jsxs("div",{className:"BrowserNotSupportedTopContainer",children:[jsx(Image$a,{src:BrowserNotSupportedIcon,alt:"browser not supported",className:"IncodeBrowserNotSupporterImage"}),jsx("h2",{className:"IncodeBrowserNotSupporterTitle",children:Ue("unsupportedBrowser.title")}),jsxs(Text$7,{className:"IncodeBrowserNotSupporterTextFirst",children:[Ue("unsupportedBrowser.betterExperience")," ",isAppleDevice&&jsxs(Fragment,{children:[jsx(Blue$1,{children:"Safari"})," or"," "]}),jsx(Blue$1,{children:"Chrome"})]})]}),jsxs(BrowserNotSupportedBottomContainer,{className:"BrowserNotSupportedBottomContainer",children:[jsx(LinkText,{className:"IncodeBrowserNotSupporterLinkText",children:window.location.href}),jsx("div",{children:jsx(Button$9,{onClick:Qe,type:"button",className:"IncodeBrowserNotSupporterCopyLinkButton",children:Ue("unsupportedBrowser.copyLink")})}),jsx(ContinueButton,{type:"button",onClick:Ze,className:"IncodeBrowserNotSupporterContinueButton",children:Ue("unsupportedBrowser.continueAnyways")})]})]})}const state={detecting:!0,intervalCounter:0,matchCounter:0,intervalId:null,cascadeLoaded:!1,selfieAttempt:0,selfieGetFrames:0,grabSelfieFrames:!1,frames:[],token:null,facefinderClassifyRegion:()=>-1,skipFrames:!0};class OnboardingCheck{constructor(me,Ue,Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt){this.isRunning_=!1,this.acl_=null,this.gyro_=null,this.permission_=!0,this.minNumberOfFrames_=3,this.maxFrequency_=60,this.emptyParams={meanX:0,meanY:0,meanZ:0,m2X:0,m2Y:0,m2Z:0,cumulativeAbsErrorX:0,cumulativeAbsErrorY:0,cumulativeAbsErrorZ:0,ptsNum:0},this.paramsAcc_={...this.emptyParams},this.paramsGyro_={...this.emptyParams},this.paramsAccGrOld_={...this.emptyParams},this.paramsAccOld_={...this.emptyParams},this.paramsGyroscopeOld_={...this.emptyParams},this.paramsOrientationOld_={...this.emptyParams},this.waitForClick=()=>new Promise(et=>{document.addEventListener("click",async()=>{const rt=await this.requestMotionPermission();et(rt)},{once:!0})}),this.deviceMotionListener=et=>{if(et.accelerationIncludingGravity){const rt={x:et.accelerationIncludingGravity.x,y:et.accelerationIncludingGravity.y,z:et.accelerationIncludingGravity.z};this.checkFields(rt)&&(this.paramsAccGrOld_.ptsNum+=1,this.updateParams(this.paramsAccGrOld_,rt))}if(et.acceleration){const rt={x:et.acceleration.x,y:et.acceleration.y,z:et.acceleration.z};this.checkFields(rt)&&(this.paramsAccOld_.ptsNum+=1,this.updateParams(this.paramsAccOld_,rt))}if(et.rotationRate){const rt={x:et.rotationRate.alpha,y:et.rotationRate.beta,z:et.rotationRate.gamma};this.checkFields(rt)&&(this.paramsGyroscopeOld_.ptsNum+=1,this.updateParams(this.paramsGyroscopeOld_,rt))}},this.deviceOrientationListener=et=>{const rt={x:et.alpha,y:et.beta,z:et.gamma};this.checkFields(rt)&&(this.paramsOrientationOld_.ptsNum+=1,this.updateParams(this.paramsOrientationOld_,rt))},this.accThreshold_=me,this.gyroThreshold_=Ue,this.accGrOldThreshold_=Qe,this.accOldThreshold_=Ze,this.gyroscopeOldThreshold_=Je,this.orientationOldThreshold_=Ge,this.maeAccThreshold_=He,this.maeGyroThreshold_=Xe,this.maeAccGrOldThreshold_=Ke,this.maeAccOldThreshold_=$e,this.maeGyroscopeOldThreshold_=nt,this.maeOrientationOldThreshold_=tt}async requestMotionPermission(){DeviceMotionEvent&&typeof DeviceMotionEvent.requestPermission=="function"&&DeviceMotionEvent.requestPermission().then(me=>{me!=="granted"&&(this.permission_=!1)}).catch(console.error)}initializeAccelerometer(){if("Accelerometer"in window)try{this.acl_=new window.Accelerometer({frequency:this.maxFrequency_}),this.acl_.addEventListener("reading",()=>this.updateAcc())}catch{}}initializeGyroscope(){if("Gyroscope"in window)try{this.gyro_=new window.Gyroscope({frequency:this.maxFrequency_}),this.gyro_.addEventListener("reading",()=>this.updateGyro())}catch{}}async start(){this.run()}run(){if(!(this.isRunning_||!this.permission_)){try{this.initializeAccelerometer(),this.acl_.start()}catch{}try{this.initializeGyroscope(),this.gyro_.start()}catch{}window.addEventListener("devicemotion",this.deviceMotionListener),window.addEventListener("deviceorientation",this.deviceOrientationListener),this.isRunning_=!0}}stop(){this.isRunning_=!1,this.acl_&&this.acl_.stop(),this.gyro_&&this.gyro_.stop(),window.removeEventListener("devicemotion",this.deviceMotionListener),window.removeEventListener("deviceorientation",this.deviceOrientationListener),this.paramsAcc_={...this.emptyParams},this.paramsGyro_={...this.emptyParams},this.paramsAccGrOld_={...this.emptyParams},this.paramsAccOld_={...this.emptyParams},this.paramsGyroscopeOld_={...this.emptyParams},this.paramsOrientationOld_={...this.emptyParams}}updateAcc(){if(!(!this.isRunning_||!this.acl_)&&(this.paramsAcc_.ptsNum+=1,this.acl_)){const me={x:this.acl_.x,y:this.acl_.y,z:this.acl_.z};this.checkFields(me)&&this.updateParams(this.paramsAcc_,me)}}updateGyro(){if(!(!this.isRunning_||!this.gyro_)&&(this.paramsGyro_.ptsNum+=1,this.gyro_)){const me={x:this.gyro_.x,y:this.gyro_.y,z:this.gyro_.z};this.checkFields(me)&&this.updateParams(this.paramsGyro_,me)}}check(){if(!this.permission_)return"UNCLEAR";const me=this.checkStability();return me===null?"UNCLEAR":me?"FAIL":"PASS"}checkStability(){if(!this.isRunning_)return null;const Ue=[this.gyro_?this.isBelowStdThreshold(this.paramsGyro_,this.gyroThreshold_):null,this.acl_?this.isBelowStdThreshold(this.paramsAcc_,this.accThreshold_):null,this.isBelowStdThreshold(this.paramsAccGrOld_,this.accGrOldThreshold_),this.isBelowStdThreshold(this.paramsAccOld_,this.accOldThreshold_),this.isBelowStdThreshold(this.paramsGyroscopeOld_,this.gyroscopeOldThreshold_),this.isBelowStdThreshold(this.paramsOrientationOld_,this.orientationOldThreshold_)].filter(He=>He!==null),Qe=Ue.length>0?Ue.every(He=>He):null,Je=[this.gyro_?this.isBelowMaeThreshold(this.paramsGyro_,this.maeGyroThreshold_):null,this.acl_?this.isBelowMaeThreshold(this.paramsAcc_,this.maeAccThreshold_):null,this.isBelowMaeThreshold(this.paramsAccGrOld_,this.maeAccGrOldThreshold_),this.isBelowMaeThreshold(this.paramsAccOld_,this.maeAccOldThreshold_),this.isBelowMaeThreshold(this.paramsGyroscopeOld_,this.maeGyroscopeOldThreshold_),this.isBelowMaeThreshold(this.paramsOrientationOld_,this.maeOrientationOldThreshold_)].filter(He=>He!==null),Ge=Je.length>0?Je.every(He=>He):null;return Qe===null?Ge===null?null:Ge:Ge!==null?Qe&&Ge:Qe}updateParams(me,Ue){const Qe=Ue.x-me.meanX,Ze=Ue.y-me.meanY,Je=Ue.z-me.meanZ;me.meanX+=Qe/me.ptsNum,me.meanY+=Ze/me.ptsNum,me.meanZ+=Je/me.ptsNum,me.m2X+=Qe*(Ue.x-me.meanX),me.m2Y+=Ze*(Ue.y-me.meanY),me.m2Z+=Je*(Ue.z-me.meanZ),me.cumulativeAbsErrorX+=Math.abs(Ue.x-me.meanX),me.cumulativeAbsErrorY+=Math.abs(Ue.y-me.meanY),me.cumulativeAbsErrorZ+=Math.abs(Ue.z-me.meanZ)}calculateStd(me){const Ue={x:me.m2X/me.ptsNum,y:me.m2Y/me.ptsNum,z:me.m2Z/me.ptsNum};return{x:Math.sqrt(Ue.x),y:Math.sqrt(Ue.y),z:Math.sqrt(Ue.z)}}calculateMae(me){return{x:me.cumulativeAbsErrorX/me.ptsNum,y:me.cumulativeAbsErrorY/me.ptsNum,z:me.cumulativeAbsErrorZ/me.ptsNum}}checkFields(me){return me.x!==null&&me.y!==null&&me.z!==null}isBelowStdThreshold(me,Ue){if(me.ptsNum<this.minNumberOfFrames_)return null;const Qe=this.calculateStd(me);return Qe.x<Ue&&Qe.y<Ue&&Qe.z<Ue}isBelowMaeThreshold(me,Ue){if(me.ptsNum<this.minNumberOfFrames_)return null;const Qe=this.calculateMae(me);return Qe.x<Ue&&Qe.y<Ue&&Qe.z<Ue}}let options={darkMode:!1,hostingApp:"Web SDK",unsafeMode:!1,redirectFromUnsupportedBrowsers:!1};const setOptions=ue=>(options={...options,...ue},options);var PipelineProfileType=(ue=>(ue[ue.IdCaptureBrazilian=0]="IdCaptureBrazilian",ue[ue.IdCaptureVisas=1]="IdCaptureVisas",ue[ue.IdVideoSelfieBrazilian=2]="IdVideoSelfieBrazilian",ue[ue.IdVideoSelfieVisas=3]="IdVideoSelfieVisas",ue[ue.SelfieFaceDetection=4]="SelfieFaceDetection",ue))(PipelineProfileType||{});class PipelineProfile{constructor(me,Ue,Qe,Ze=null,Je=""){this.pipelineType=me,this.modelNames=Ue,this.parameters=Qe,this.paramsConfigurator=Ze,this.description=Je}reconfigureParams(me=null,Ue=null){if(this.paramsConfigurator==null)throw new Error("PipelineProfile does not have a paramsConfigurator");this.paramsConfigurator(this.parameters,this.pipelineType,me,Ue)}}var PipelineType=(ue=>(ue[ue.IdCapturePipeline=0]="IdCapturePipeline",ue[ue.IdVideoSelfiePipeline=1]="IdVideoSelfiePipeline",ue[ue.SelfieFaceDetectionPipeline=2]="SelfieFaceDetectionPipeline",ue[ue.IdFaceDetectionPipeline=3]="IdFaceDetectionPipeline",ue))(PipelineType||{});function IdCaptureParamsConfigurator(ue,me,Ue,Qe){Object.assign(ue,{areaDown:Qe||Ue?55e3:25e3,areaUp:Qe||Ue?75e3:55e3,areaIOSPassportUp:3e4,areaIOSPassportDown:2e4,widthIOSUp:me==PipelineType.IdCapturePipeline?125:180,widthIOSDown:me==PipelineType.IdCapturePipeline?85:150,widthDown:Qe||Ue?185:135,widthUp:Qe||Ue?255:205})}const SelfieFaceDetectionPipelineParams={frameMinX:0,frameMinY:0,frameMaxX:1,frameMaxY:1,brightnessThreshold:50,blurrinessThreshold:50,tiltRotationAngleThreshold:7,minMagicCropSize:200,headwearThreshold:.95,lensesThreshold:.95,closedEyesThreshold:.9,maskThreshold:.5},pipelineProfiles={[PipelineProfileType.IdCaptureBrazilian]:new PipelineProfile(PipelineType.IdCapturePipeline,["brazilian_mobile_025_ep199_fp16.ortmodelv2"],{glareThreshold:.2,classificationThreshold:.98,sharpnessThreshold:.3,sharpnessChangeThreshold:.3},IdCaptureParamsConfigurator,"Id Capture Profile with brazilian_mobile model"),[PipelineProfileType.IdCaptureVisas]:new PipelineProfile(PipelineType.IdCapturePipeline,["visas_mobile_025_best_v1_03_fp16.ortmodelv2"],{glareThreshold:.3,classificationThreshold:.98,sharpnessThreshold:.2,sharpnessChangeThreshold:.2},IdCaptureParamsConfigurator,"Id Capture Profile with visas_mobile model"),[PipelineProfileType.IdVideoSelfieBrazilian]:new PipelineProfile(PipelineType.IdVideoSelfiePipeline,["brazilian_mobile_025_ep199_fp16.ortmodelv2"],{glareThreshold:.2,classificationThreshold:.9,sharpnessThreshold:.3,sharpnessChangeThreshold:.3},IdCaptureParamsConfigurator,"Id Videoselfie profile with brazilian_mobile model"),[PipelineProfileType.IdVideoSelfieVisas]:new PipelineProfile(PipelineType.IdVideoSelfiePipeline,["visas_mobile_025_best_v1_03_fp16.ortmodelv2"],{glareThreshold:.3,classificationThreshold:.9,sharpnessThreshold:.2,sharpnessChangeThreshold:.2},IdCaptureParamsConfigurator,"Id Videoselfie Profile with visas_mobile model"),[PipelineProfileType.SelfieFaceDetection]:new PipelineProfile(PipelineType.SelfieFaceDetectionPipeline,["selfie_bf_angles_192x192_opset9_fp16.ortmodelv2","bf_attrib_31b8f9d92fb345c2b4bbdd222792562c_0_fp16.ortmodelv2"],SelfieFaceDetectionPipelineParams,null,"Selfie face detection profile")},probabilityThreshold=.9,wasmVersion="v1.7.5",brazilianPipelineBundle=[PipelineProfileType.IdCaptureBrazilian,PipelineProfileType.IdVideoSelfieBrazilian,PipelineProfileType.SelfieFaceDetection],visasPipelineBundle=[PipelineProfileType.IdCaptureVisas,PipelineProfileType.IdVideoSelfieVisas,PipelineProfileType.SelfieFaceDetection],PipelinesBundle=new Map([["brazilianPipelineBundle",brazilianPipelineBundle],["visasPipelineBundle",visasPipelineBundle]]);function switchBundle(){return Math.random()<probabilityThreshold?"brazilianPipelineBundle":"visasPipelineBundle"}function getInitializationParams(ue){const Ue=ue?switchBundle():"brazilianPipelineBundle",Qe="https://d3vv997wtl2myz.cloudfront.net/webcamera/onnx-backend-wasm",Ze=`${Qe}/${wasmVersion}/webLib.wasm`,Je=`${Qe}/${wasmVersion}/webLibSimd.wasm`,Ge=`${Qe}/${wasmVersion}/webLib.js`,He=`${Qe}/${wasmVersion}/versions.json`;let Xe=new Map,Ke=new Map;for(const $e of PipelinesBundle.get(Ue)){if(!pipelineProfiles[$e])throw new Error(`Pipeline profile ${$e} not found`);const nt=pipelineProfiles[$e],tt=nt.modelNames;let et=[];for(const rt of tt)et.push(`${Qe}/${wasmVersion}/models/${rt}`);Xe.set(nt.pipelineType,et),Ke.set(nt.pipelineType,$e)}return{wasmModulePath:Ze,wasmSimdModulePath:Je,glueCodePath:Ge,versionsFilePath:He,pipelineModels:Xe,pipelineProfileTypes:Ke,enableSIMD:!0,bundle:Ue}}window.wasmArrayBuffer=null;class MlWasmJSApi{constructor(){this.versionsFile=null,this.modelsBuffers=null,this.inputImageBuffer=null,this.wasmModule=null,this.wasmApiHelpers=null,this.idCaptureWasmApi=null,this.faceDetectionWasmApi=null,this.imageWidth_=null,this.imageHeight_=null,this.pipelines_=null,this.isInitialized_=!1,this.Module=null,this.loadModule=async me=>{this.Module=(await import(me)).Module}}async initialize(me,Ue,Qe,Ze,Je,Ge){await this.freeResources(),this.pipelines_=Ge,this.versionsFile=Je,await this.loadModule(Qe),await this.loadWasm(Ze,me,Ue),this.wasmApiHelpers=new this.wasmModule.MlWasmApiHelpers,this.idCaptureWasmApi=new this.wasmModule.IdCaptureWasmApi,this.faceDetectionWasmApi=new this.wasmModule.FaceDetectionWasmApi,this.isInitialized_=!0}isInitialized(){return this.wasmApiHelpers!=null&&this.idCaptureWasmApi!=null&&this.faceDetectionWasmApi!=null&&this.isInitialized_}async allocateImageBuffers(me,Ue){this.checkWasmInitialization("Unable to allocate image buffers, cpp API hasn't been initialized"),!(me&&Ue&&me==this.imageWidth_&&Ue==this.imageHeight_&&this.inputImageBuffer&&me*Ue*4===this.inputImageBuffer.length)&&(this.imageWidth_=me,this.imageHeight_=Ue,this.inputImageBuffer=this.wasmApiHelpers.allocateInputImageBuffer(me,Ue,4))}async handleDetectionCallAndUpdateState(me){this.checkWasmInitialization("Unable to update pipeline state, cpp API hasn't been initialized"),this.wasmApiHelpers.handleDetectionCallAndUpdateState(this.toWasmEnum(me))}async encryptImage(me){return this.checkWasmInitialization("Unable to encrypt the image, cpp API hasn't been initialized"),this.wasmApiHelpers.encryptImage(me)}isVirtualCamera(me){return this.checkWasmInitialization("Unable to check if the camera is virtual, cpp API hasn't been initialized"),this.wasmApiHelpers.isVirtualCamera(me)}estimatePerformance(){return this.checkWasmInitialization("Unable to estimate performance, cpp API hasn't been initialized"),this.wasmApiHelpers.estimatePerformance()}async analyzeFrame(me){return this.checkWasmInitialization("Unable to analyze the frame, cpp API hasn't been initialized"),await this.allocateImageBuffers(me.width,me.height),this.inputImageBuffer.set(me.data),this.wasmApiHelpers.analyzeFrame()}async freeResources(){this.versionsFile=null,this.modelsBuffers=null,this.inputImageBuffer=null,this.imageWidth_=null,this.imageHeight_=null,this.pipelines_=null,window.wasmArrayBuffer=null,this.wasmApiHelpers&&typeof this.wasmApiHelpers.delete=="function"&&(this.wasmApiHelpers.delete(),this.wasmApiHelpers=null),this.idCaptureWasmApi&&typeof this.idCaptureWasmApi.delete=="function"&&(this.idCaptureWasmApi.delete(),this.idCaptureWasmApi=null),this.faceDetectionWasmApi&&typeof this.faceDetectionWasmApi.delete=="function"&&(this.faceDetectionWasmApi.delete(),this.faceDetectionWasmApi=null),this.wasmModule=null,this.isInitialized_=!1}resetPipeline(me){this.checkWasmInitialization("Unable to reset pipeline, cpp API hasn't been initialized"),this.wasmApiHelpers.resetPipeline(this.toWasmEnum(me))}resetAllPipelines(){this.checkWasmInitialization("Unable to reset pipelines, cpp API hasn't been initialized");for(const[me,Ue]of this.pipelines_)this.resetPipeline(me)}async process(me,Ue){if(this.checkWasmInitialization("Unable to process the image, cpp API hasn't been initialized"),this.inputImageBuffer===null)throw new Error("Unable to process the image, buffers haven't been allocated!");switch(this.inputImageBuffer.set(me.data),Ue){case PipelineType.IdCapturePipeline:return this.idCaptureWasmApi.runIdCapturePipeline();case PipelineType.IdFaceDetectionPipeline:return this.faceDetectionWasmApi.runIdFaceDetectionPipeline();case PipelineType.IdVideoSelfiePipeline:return this.idCaptureWasmApi.runIdVideoSelfiePipeline();case PipelineType.SelfieFaceDetectionPipeline:return this.faceDetectionWasmApi.runSelfieFaceDetectionPipeline();default:throw new Error("Unknown pipeline type")}}async runIdCapture(me){if(this.checkWasmInitialization("Unable to run Id Capture, cpp API hasn't been initialized"),this.inputImageBuffer===null)throw new Error("Unable to process the image, buffers haven't been allocated!");return this.inputImageBuffer.set(me.data),this.idCaptureWasmApi.runIdCapture()}async runSelfieCapture(me){if(this.checkWasmInitialization("Unable to run Selfie Capture, cpp API hasn't been initialized"),this.inputImageBuffer===null)throw new Error("Unable to process the image, buffers haven't been allocated!");return this.inputImageBuffer.set(me.data),this.faceDetectionWasmApi.runSelfieCapture()}async setFacePositionConstraints(me,Ue,Qe,Ze,Je){this.checkWasmInitialization("Unable to set face position constraints, cpp API hasn't been initialized"),this.faceDetectionWasmApi.setFacePositionConstraints(this.toWasmEnum(me),Ue,Qe,Ze,Je)}async setFaceDetectionThresholds(me,Ue,Qe,Ze,Je,Ge){this.checkWasmInitialization("Unable to set face detection thresholds, cpp API hasn't been initialized"),this.faceDetectionWasmApi.setFaceDetectionThresholds(this.toWasmEnum(me),Ue,Qe,Ze,Je,Ge)}async setFaceAttributesThresholds(me,Ue,Qe,Ze,Je){this.checkWasmInitialization("Unable to set face attributes thresholds, cpp API hasn't been initialized"),this.faceDetectionWasmApi.setFaceAttributesThresholds(this.toWasmEnum(me),Ue,Qe,Ze,Je)}async setFaceAttributesEnabled(me,Ue,Qe,Ze,Je){this.checkWasmInitialization("Unable to set face attributes enabled flags, cpp API hasn't been initialized"),this.faceDetectionWasmApi.setFaceAttributesEnabled(this.toWasmEnum(me),Ue,Qe,Ze,Je)}async setFaceDetectionMode(me,Ue){this.checkWasmInitialization("Unable to set face detection mode, cpp API hasn't been initialized"),this.faceDetectionWasmApi.setFaceDetectionMode(this.toWasmEnum(me),Ue)}async setFaceDetectionCallbacks(me,Ue,Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt,et,rt,at,it,ot){this.checkWasmInitialization("Unable to set face detection callbacks, cpp API hasn't been initialized"),this.faceDetectionWasmApi.setFaceDetectionCallbacks(this.toWasmEnum(me),Ue,Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt,et,rt,at,it,ot)}async setIdCaptureThresholds(me,Ue,Qe,Ze,Je,Ge){this.checkWasmInitialization("Unable to set thresholds, cpp API hasn't been initialized"),this.idCaptureWasmApi.setIdCaptureThresholds(this.toWasmEnum(me),Ue,Qe,Ze,Je,Ge)}async setIdCaptureCallbacks(me,Ue,Qe,Ze,Je,Ge,He,Xe,Ke){this.checkWasmInitialization("Unable to set callbacks, cpp API hasn't been initialized"),this.idCaptureWasmApi.setIdCaptureCallbacks(this.toWasmEnum(me),Ue,Qe,Ze,Je,Ge,He,Xe,Ke)}async setIdCaptureGeometryParams(me,Ue,Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt,et){this.checkWasmInitialization("Unable to set geometry params, cpp API hasn't been initialized"),this.idCaptureWasmApi.setIdCaptureGeometryParams(this.toWasmEnum(me),Ue,Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt,et)}async setIdCaptureConfigParams(me,Ue,Qe,Ze,Je,Ge){this.checkWasmInitialization("Unable to set config params, cpp API hasn't been initialized"),this.idCaptureWasmApi.setIdCaptureConfigParams(this.toWasmEnum(me),Ue,Qe,Ze,Je,Ge)}async getVersions(){const Ue=await(await fetch(this.versionsFile)).text();return JSON.parse(Ue)}async loadWasm(me,Ue,Qe){const Ze=me?Qe:Ue;try{window.wasmArrayBuffer=await fetch(Ze).then(Je=>Je.arrayBuffer()).then(Je=>new Uint8Array(Je)),this.wasmModule=await this.Module()}catch(Je){if(console.log(Je,me,"useSmd"),me)await this.loadWasm(!1,Ue,Qe);else throw Je}}async loadModels(){var Ze;this.checkWasmInitialization("Unable load the models, cpp API hasn't been initialized");let me=new this.wasmModule.PipelineTypeToIntMap,Ue=new Map,Qe=new Map;for(let[Je,Ge]of this.pipelines_){let He=this.toWasmEnum(Je),Xe=[],Ke=new this.wasmModule.VectorInt;for(let $e of Ge){if(!Qe.has($e)){let tt=await fetch($e).then(et=>et.arrayBuffer()).then(et=>new Uint8Array(et));Qe.set($e,tt)}let nt=Qe.get($e);Ke.push_back(nt.byteLength),Xe.push(nt)}me.set(He,Ke),Ue.set(He,Xe)}this.modelsBuffers=this.wasmApiHelpers.allocateModelsBuffers(me);for(let[Je,Ge]of Ue){let He=(Ze=this.modelsBuffers)==null?void 0:Ze.get(Je);for(let Xe=0;Xe<He.size();Xe++){let Ke=He==null?void 0:He.get(Xe);if(Ke)Ke.set(Ge[Xe]);else throw new Error("Unable to get model buffer from shared memory!")}}}async initializePipelines(){this.checkWasmInitialization("Unable to initialize pipelines, cpp API hasn't been initialized"),this.modelsBuffers||await this.loadModels(),this.wasmApiHelpers.initializePipelines()}async setProductionMode(me){this.checkWasmInitialization("Unable to set production mode, cpp API hasn't been initialized"),this.wasmApiHelpers.setProductionMode(me)}getPipelineState(){return this.checkWasmInitialization("Unable to get pipeline state, cpp API hasn't been initialized"),this.wasmApiHelpers.getPipelineState()}getCurrentPipeline(){return this.checkWasmInitialization("Unable to get current pipeline, cpp API hasn't been initialized"),this.fromWasmEnum(this.wasmApiHelpers.getCurrentPipeline())}toWasmEnum(me){switch(me){case PipelineType.IdCapturePipeline:return this.wasmModule.PipelineType.IdCapturePipeline;case PipelineType.IdFaceDetectionPipeline:return this.wasmModule.PipelineType.IdFaceDetectionPipeline;case PipelineType.IdVideoSelfiePipeline:return this.wasmModule.PipelineType.IdVideoSelfiePipeline;case PipelineType.SelfieFaceDetectionPipeline:return this.wasmModule.PipelineType.SelfieFaceDetectionPipeline;default:throw new Error("Unknown pipeline type")}}fromWasmEnum(me){switch(me){case this.wasmModule.PipelineType.IdCapturePipeline:return PipelineType.IdCapturePipeline;case this.wasmModule.PipelineType.IdFaceDetectionPipeline:return PipelineType.IdFaceDetectionPipeline;case this.wasmModule.PipelineType.IdVideoSelfiePipeline:return PipelineType.IdVideoSelfiePipeline;case this.wasmModule.PipelineType.SelfieFaceDetectionPipeline:return PipelineType.SelfieFaceDetectionPipeline;default:throw new Error("Unknown pipeline type")}}checkWasmInitialization(me){if(!this.isInitialized())throw new Error(me)}}function formatLandmarks(ue,me,Ue){const[Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt]=ue;return{rightEyeX:Qe,rightEyeY:Ze,leftEyeX:Je,leftEyeY:Ge,noseTipX:He,noseTipY:Xe,rightMouthX:Ke,rightMouthY:$e,mouthX:nt,mouthY:tt,x:me[0],y:me[1],width:Ue[0],height:Ue[1]}}let frame,fullImage,landmarks,topLeft,size;async function detectFace(ue){const{onNoFace:me,onCapturing:Ue,onCapture:Qe,onTooManyFaces:Ze,onTooClose:Je,onCenterFace:Ge,onFarAway:He,onFaceAngle:Xe,onDark:Ke,onBlur:$e,onHeadWear:nt,onLenses:tt,onEyesClosed:et,onFaceMask:rt,onSwitchToManualCapture:at,isLensesCheckEnabled:it,isMaskCheckEnabled:ot,isClosedEyesCheckEnabled:st,isHeadWearCheckEnabled:ut,isVideoSelfie:ct,autocaptureTimeout:dt,webcam:pt,pipelineProfileTypes:ht}=ue;try{const gt=getWasmApi();await gt.handleDetectionCallAndUpdateState(PipelineType.SelfieFaceDetectionPipeline);const Mt=ht.get(PipelineType.SelfieFaceDetectionPipeline),St=pipelineProfiles[Mt],Dt=cloneCanvas(pt.getCanvas(pt.video.videoWidth,pt.video.videoHeight));if(!Dt)return;if(state.skipFrames){state.skipFrames=!1;return}const yt=Dt.width,Tt=Dt.height,mt=pt.getBase64ScreenShot(yt,Tt,1,!1),Rt=pt.getFullImage(yt,Tt,1,Dt),It=Dt.getContext("2d").getImageData(0,0,yt,Tt);await gt.allocateImageBuffers(yt,Tt),await gt.setFacePositionConstraints(PipelineType.SelfieFaceDetectionPipeline,St.parameters.frameMinX,St.parameters.frameMinY,St.parameters.frameMaxX,St.parameters.frameMaxY),await gt.setFaceDetectionThresholds(PipelineType.SelfieFaceDetectionPipeline,St.parameters.brightnessThreshold,St.parameters.blurrinessThreshold,St.parameters.tiltRotationAngleThreshold,St.parameters.minMagicCropSize,dt),await gt.setFaceAttributesEnabled(PipelineType.SelfieFaceDetectionPipeline,it,ot,st,ut),await gt.setFaceAttributesThresholds(PipelineType.SelfieFaceDetectionPipeline,St.parameters.headwearThreshold,St.parameters.lensesThreshold,St.parameters.closedEyesThreshold,St.parameters.maskThreshold),await gt.setFaceDetectionMode(PipelineType.SelfieFaceDetectionPipeline,ct);const Et=()=>{Qe(frame,fullImage,formatLandmarks(landmarks,topLeft,size))},bt=vt=>{frame=mt,fullImage=Rt;const xt=vt.rect;topLeft=[xt.x,xt.y];const Bt=[xt.x+xt.width,xt.y+xt.height],Ct=topLeft,Zt=Bt;size=[Zt[0]-Ct[0],Zt[1]-Ct[1]],landmarks=[vt.rightEye.x,vt.rightEye.y,vt.leftEye.x,vt.leftEye.y,vt.noseTip.x,vt.noseTip.y,vt.rightMouthCorner.x,vt.rightMouthCorner.y,vt.leftMouthCorner.x,vt.leftMouthCorner.y]};await gt.setFaceDetectionCallbacks(PipelineType.SelfieFaceDetectionPipeline,He,Je,Ze,me,Et,Ue,Ge,Ke,$e,Xe,bt,tt,rt,et,nt,at),await gt.process(It,PipelineType.SelfieFaceDetectionPipeline)}catch(gt){console.error(`Exception: ${gt}`)}}const getImages$2=(ue,me,Ue)=>Ue.getImageData(ue,me);async function preprocessImage(ue){const me=ue.video.videoWidth,Ue=ue.video.videoHeight;return me===0||Ue===0?{image:null,status:0}:{image:getImages$2(me,Ue,ue),status:1}}async function configureIdPipeline(ue,me,Ue,Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt,et,rt=-1){const at=getWasmApi();await at.setIdCaptureCallbacks(ue,Ue,He,Ge,Ze,Qe,me,Je,Xe),await at.setIdCaptureThresholds(ue,et.parameters.sharpnessThreshold,et.parameters.sharpnessChangeThreshold,et.parameters.glareThreshold,et.parameters.classificationThreshold,rt),await at.setIdCaptureConfigParams(ue,$e,localStorage.getItem("isHighPerformance")==="true",Ke,nt,tt),await at.setIdCaptureGeometryParams(ue,et.parameters.areaDown,et.parameters.areaUp,et.parameters.areaIOSPassportUp,et.parameters.areaIOSPassportDown,et.parameters.widthIOSUp,et.parameters.widthIOSDown,et.parameters.widthDown,et.parameters.widthUp,window.outerWidth,window.outerHeight,window.innerWidth,window.innerHeight)}async function idDetection({webcam:ue,onCapturing:me,onFarAway:Ue,onGlare:Qe,onBlur:Ze,onIDNotDetected:Je,onMaskChange:Ge,idType:He,onDetectionStarted:Xe,onSwitchToManualCapture:Ke,isFixedMask:$e=!1,isKiosk:nt=!1,autocaptureTimeout:tt,pipelineProfileTypes:et}){try{const rt=getWasmApi();await rt.handleDetectionCallAndUpdateState(PipelineType.IdCapturePipeline);const at=et.get(PipelineType.IdCapturePipeline),it=pipelineProfiles[at];it.reconfigureParams(nt,mobile.isDesktop());const{image:ot,status:st}=await preprocessImage(ue);if(!st)return;const ut=(ct,dt)=>{me(ot,{sharpness:ct,glare:dt})};await configureIdPipeline(PipelineType.IdCapturePipeline,ut,Ue,Qe,Ze,Je,Ge,Xe,Ke,He,$e,!0,!0,it,tt),await rt.allocateImageBuffers(ot.imageElement.width,ot.imageElement.height),await rt.process(ot.imageElement,PipelineType.IdCapturePipeline)}catch(rt){console.error(`Exception: ${rt}`)}}const noop$1=()=>{};async function idVideoSelfieDetection({webcam:ue,onCapturing:me=noop$1,onFarAway:Ue=noop$1,onGlare:Qe=noop$1,onBlur:Ze=noop$1,onIdNotDetected:Je=noop$1,onMaskChange:Ge=noop$1,idType:He="null",onDetectionStarted:Xe=noop$1,isFixedMask:Ke=!1,isBlurCheckEnabled:$e,isGlareCheckEnabled:nt,onSwitchToManualCapture:tt,pipelineProfileTypes:et}){try{const rt=getWasmApi();await rt.handleDetectionCallAndUpdateState(PipelineType.IdVideoSelfiePipeline);const at=et.get(PipelineType.IdVideoSelfiePipeline),it=pipelineProfiles[at];it.reconfigureParams(!1,mobile.isDesktop());const{image:ot,status:st}=await preprocessImage(ue);if(!st)return;const ut=()=>{me()};await configureIdPipeline(PipelineType.IdVideoSelfiePipeline,ut,Ue,Qe,Ze,Je,Ge,Xe,tt,He,Ke,$e,nt,it),await rt.allocateImageBuffers(ot.imageElement.width,ot.imageElement.height),await rt.process(ot.imageElement,PipelineType.IdVideoSelfiePipeline)}catch(rt){console.error(`Exception: ${rt}`)}}const frontType="front",backType="back",selfieType="selfie",frontIdUrl="/omni/add/front-id",secondFrontIdUrl="/omni/add/front-second-id",backIdUrl="/omni/add/back-id",secondBackIdUrl="/omni/add/back-second-id",frontIdBase64Url="/omni/add/front-id/v2",backIdBase64Url="/omni/add/back-id/v2",getSelfieUrl=ue=>`/omni/add/face?imageType=${ue}`,getRealQualityValue=ue=>(1-ue)*100;function uploadFrontId({token:ue,image:me,onProgress:Ue=emptyFunc,sendBase64:Qe,onlyFront:Ze,isRetry:Je=!1,isSecondId:Ge=!1,glare:He,sharpness:Xe}){const Ke=Qe?frontIdBase64Url:Ge?secondFrontIdUrl:frontIdUrl,$e=Ze?`${Ke}?onlyFront=${Ze}`:Ke,nt=Qe?{base64Image:me}:me,tt=Qe?"application/json":"image/jpeg";return exports.api.post($e,nt,{headers:{"X-Incode-Hardware-Id":ue,"Content-Type":tt},onUploadProgress:({loaded:et,total:rt})=>Ue(et/rt*100),params:{...Je?{retry:!0}:void 0,...Xe?{sharpness:getRealQualityValue(Xe)}:void 0}}).then(et=>et.data)}function uploadBackId({token:ue,image:me,onProgress:Ue=emptyFunc,sendBase64:Qe,isRetry:Ze=!1,isSecondId:Je=!1,glare:Ge,sharpness:He,shouldSkipGlare:Xe}){const Ke=Qe?backIdBase64Url:Je?secondBackIdUrl:backIdUrl,$e=Qe?{base64Image:me}:me,nt=Qe?"application/json":"image/jpeg";return exports.api.post(Ke,$e,{headers:{"X-Incode-Hardware-Id":ue,"Content-Type":nt},onUploadProgress:({loaded:tt,total:et})=>Ue(tt/et*100),params:{...Ze?{retry:!0}:void 0,...Xe?{glare:100}:void 0,...He?{sharpness:getRealQualityValue(He)}:void 0}}).then(tt=>tt.data)}function uploadSelfie({token:ue,image:me,onProgress:Ue=emptyFunc,encrypted:Qe,imageType:Ze="selfie",faceCoordinates:Je=null}){return exports.api.post(getSelfieUrl(Ze),{base64Image:me,encrypted:Qe,faceCoordinates:Je,clientInfo:{deviceClass:getDeviceClass()}},{headers:{"X-Incode-Hardware-Id":ue},onUploadProgress:({loaded:Ge,total:He})=>Ue(Ge/He*100)}).then(Ge=>Ge.data)}function capture({type:ue,...me}){if(ue===frontType)return uploadFrontId({...me});if(ue===backType)return uploadBackId({...me});if(ue===selfieType)return uploadSelfie({...me});throw new Error(`type not supported, please use one of this: [${frontType}, ${backType}, ${selfieType}]`)}function setPerformanceLoadTime(){if(!mobile.iOS())return;if(new URLSearchParams(window.location.search).get("smallFrame")==="true"){localStorage.setItem("isHighPerformance","true");return}localStorage.setItem("isHighPerformance",String(window.outerHeight===852&&window.outerWidth===393||window.outerHeight===932&&window.outerWidth===430||window.innerHeight===631&&window.innerWidth===375))}let mlWasmJSApi=null,isSetupDetect=!1,pipelineLogs="",motionStatus="",analysisStatus="",estimatedPerformance="",pipelinesBundle=null,profileTypes=null,onboardingCheck=null;function getProfileTypes(){return profileTypes}function getPipelineLogs(){return pipelineLogs}function getMotionStatus(){return motionStatus}function getAnalysisStatus(){return analysisStatus}function getWasmApi(){if(mlWasmJSApi)return mlWasmJSApi;throw new Error("getWasmApi returned null")}let setupDetectPromise=null;const setupDetect=async()=>setupDetectPromise||(setupDetectPromise=_runSetupDetect(),setupDetectPromise);async function _runSetupDetect(){var Ue,Qe;if(isSetupDetect)return;addEvent({token:(Ue=state.token)==null?void 0:Ue.token,code:"modelLoadStart"}),setPerformanceLoadTime(),onboardingCheck=new OnboardingCheck(.3,.3,.3,.3,10,10,.3,.3,.3,.3,10,10),onboardingCheck.start(),mlWasmJSApi=new MlWasmJSApi;const ue=getInitializationParams(options.hostingApp==="Incode ID");for(pipelinesBundle=ue.bundle,profileTypes=ue.pipelineProfileTypes,await mlWasmJSApi.initialize(ue.wasmModulePath,ue.wasmSimdModulePath,ue.glueCodePath,ue.enableSIMD,ue.versionsFilePath,ue.pipelineModels);!mlWasmJSApi.isInitialized();)await new Promise(Ze=>setTimeout(Ze,100));estimatedPerformance=mlWasmJSApi.estimatePerformance(),await mlWasmJSApi.initializePipelines();const me={}.VITE_WASM_PRODUCTION_MODE==="true";try{await mlWasmJSApi.setProductionMode(me)}catch(Ze){console.error(`Exception: ${Ze}`)}isSetupDetect=!0,addEvent({token:(Qe=state.token)==null?void 0:Qe.token,code:"modelLoadEnd",payload:{loadSuccessful:!0}})}async function warmup(){for(;!getWasmApi().isInitialized();)await new Promise(ue=>setTimeout(ue,100))}async function analyzeFrame(ue){const me=await base64ToImageData(ue);await getWasmApi().analyzeFrame(me),updatePipelineStats()}function updatePipelineStats(){if(!(!mlWasmJSApi||!mlWasmJSApi.isInitialized()))try{const ue=mlWasmJSApi.getPipelineState();if(ue!==""){const me=JSON.parse(ue);analysisStatus=me.statsAnalysisStatus,me.pipelinesBundle=pipelinesBundle||"unknown",me.estimatedPerformance=estimatedPerformance,pipelineLogs=JSON.stringify(me),motionStatus===""&&(motionStatus=onboardingCheck.check())}}catch(ue){console.error(`Exception: ${ue}`)}}function detect({type:ue,canvas:me,webcam:Ue,onFarAway:Qe=emptyFunc,onBlur:Ze=emptyFunc,onGlare:Je=emptyFunc,onCapturing:Ge=emptyFunc,onCapture:He=emptyFunc,onTooManyFaces:Xe=emptyFunc,onCenterFace:Ke=emptyFunc,onIDNotDetected:$e=emptyFunc,onTooClose:nt=emptyFunc,onNothingHappen:tt=emptyFunc,onPercentage:et=emptyFunc,onNoFace:rt=emptyFunc,onMaskChange:at=emptyFunc,onDetectionStarted:it=emptyFunc,onFaceAngle:ot=emptyFunc,onDark:st=emptyFunc,onHeadWear:ut=emptyFunc,onLenses:ct=emptyFunc,onEyesClosed:dt=emptyFunc,onFaceMask:pt=emptyFunc,onSwitchToManualCapture:ht=emptyFunc,idType:gt="FrontId",isFixedMask:Mt=!1,isLensesCheckEnabled:St=!1,isMaskCheckEnabled:Dt=!1,isClosedEyesCheckEnabled:yt=!1,isHeadWearCheckEnabled:Tt=!1,isKiosk:mt=!1,isVideoSelfie:Rt,pipelineProfileTypes:Ut,autocaptureTimeout:It=-1}){if(!me)return;window.clearInterval(state.intervalId);const Et=(vt=>{if(vt===frontType||vt===backType)return idDetection;if(vt===selfieType)return detectFace;throw new Error(`type not supported, please use one of this: [${frontType}, ${backType}, ${selfieType}]`)})(ue),bt={webcam:Ue,onFarAway:Qe,onCenterFace:Ke,onTooManyFaces:Xe,onBlur:Ze,onGlare:Je,onCapturing:Ge,onCapture:He,onIDNotDetected:$e,onTooClose:nt,onNothingHappen:tt,onPercentage:et,onNoFace:rt,onMaskChange:at,onDetectionStarted:it,onDark:st,onFaceAngle:ot,isFixedMask:Mt,idType:gt,onHeadWear:ut,onLenses:ct,onEyesClosed:dt,onFaceMask:pt,onSwitchToManualCapture:ht,isLensesCheckEnabled:St,isMaskCheckEnabled:Dt,isClosedEyesCheckEnabled:yt,isHeadWearCheckEnabled:Tt,isKiosk:mt,isVideoSelfie:Rt,autocaptureTimeout:It,pipelineProfileTypes:Ut};if(Et===idDetection||Et===detectFace){const vt=async()=>{if(!state.detecting){await sleep(1e3);return}try{await Et(bt)}catch{}finally{await sleep(200),requestAnimationFrame(vt)}};requestAnimationFrame(vt)}else state.intervalId=window.setInterval(()=>{state.detecting&&Et(bt)},100)}function stopDetect(){window.clearInterval(state.intervalId),state.detecting=!1,state.skipFrames=!0}function resumeDetect(){state.detecting=!0,state.skipFrames=!0}function detectFrame(){return null}var lib$1={exports:{}},Modal$2={},propTypes$2={exports:{}};/*
940
+ `;function copyLink(){const ue=window.location.href;navigator.clipboard.writeText(ue)}const isAppleDevice=mobile.isAppleDevice();function BrowserNotSupported({onContinue:ue,token:me}){const{t:Ue}=useTranslation();React$1.useEffect(()=>{me&&addEvent({token:me,code:"pageWasRenderedToUser",screen:"Unsupported Browser"})},[me]);const Qe=()=>{copyLink(),me&&addEvent({token:me,code:"userClickedCopyLink",screen:"Unsupported Browser"})},Ze=()=>{me&&addEvent({token:me,code:"userClickedContinueAnyway",screen:"Unsupported Browser"}),ue()};return jsxs(BrowserNotSupportedContainer,{className:"IncodeBrowserNotSupporterContainer",children:[jsxs("div",{className:"BrowserNotSupportedTopContainer",children:[jsx(Image$a,{src:BrowserNotSupportedIcon,alt:"browser not supported",className:"IncodeBrowserNotSupporterImage"}),jsx("h2",{className:"IncodeBrowserNotSupporterTitle",children:Ue("unsupportedBrowser.title")}),jsxs(Text$7,{className:"IncodeBrowserNotSupporterTextFirst",children:[Ue("unsupportedBrowser.betterExperience")," ",isAppleDevice&&jsxs(Fragment,{children:[jsx(Blue$1,{children:"Safari"})," or"," "]}),jsx(Blue$1,{children:"Chrome"})]})]}),jsxs(BrowserNotSupportedBottomContainer,{className:"BrowserNotSupportedBottomContainer",children:[jsx(LinkText,{className:"IncodeBrowserNotSupporterLinkText",children:window.location.href}),jsx("div",{children:jsx(Button$9,{onClick:Qe,type:"button",className:"IncodeBrowserNotSupporterCopyLinkButton",children:Ue("unsupportedBrowser.copyLink")})}),jsx(ContinueButton,{type:"button",onClick:Ze,className:"IncodeBrowserNotSupporterContinueButton",children:Ue("unsupportedBrowser.continueAnyways")})]})]})}const state={detecting:!0,intervalCounter:0,matchCounter:0,intervalId:null,cascadeLoaded:!1,selfieAttempt:0,selfieGetFrames:0,grabSelfieFrames:!1,frames:[],token:null,facefinderClassifyRegion:()=>-1,skipFrames:!0};class OnboardingCheck{constructor(me,Ue,Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt){this.isRunning_=!1,this.acl_=null,this.gyro_=null,this.permission_=!0,this.minNumberOfFrames_=3,this.maxFrequency_=60,this.emptyParams={meanX:0,meanY:0,meanZ:0,m2X:0,m2Y:0,m2Z:0,cumulativeAbsErrorX:0,cumulativeAbsErrorY:0,cumulativeAbsErrorZ:0,ptsNum:0},this.paramsAcc_={...this.emptyParams},this.paramsGyro_={...this.emptyParams},this.paramsAccGrOld_={...this.emptyParams},this.paramsAccOld_={...this.emptyParams},this.paramsGyroscopeOld_={...this.emptyParams},this.paramsOrientationOld_={...this.emptyParams},this.waitForClick=()=>new Promise(et=>{document.addEventListener("click",async()=>{const rt=await this.requestMotionPermission();et(rt)},{once:!0})}),this.deviceMotionListener=et=>{if(et.accelerationIncludingGravity){const rt={x:et.accelerationIncludingGravity.x,y:et.accelerationIncludingGravity.y,z:et.accelerationIncludingGravity.z};this.checkFields(rt)&&(this.paramsAccGrOld_.ptsNum+=1,this.updateParams(this.paramsAccGrOld_,rt))}if(et.acceleration){const rt={x:et.acceleration.x,y:et.acceleration.y,z:et.acceleration.z};this.checkFields(rt)&&(this.paramsAccOld_.ptsNum+=1,this.updateParams(this.paramsAccOld_,rt))}if(et.rotationRate){const rt={x:et.rotationRate.alpha,y:et.rotationRate.beta,z:et.rotationRate.gamma};this.checkFields(rt)&&(this.paramsGyroscopeOld_.ptsNum+=1,this.updateParams(this.paramsGyroscopeOld_,rt))}},this.deviceOrientationListener=et=>{const rt={x:et.alpha,y:et.beta,z:et.gamma};this.checkFields(rt)&&(this.paramsOrientationOld_.ptsNum+=1,this.updateParams(this.paramsOrientationOld_,rt))},this.accThreshold_=me,this.gyroThreshold_=Ue,this.accGrOldThreshold_=Qe,this.accOldThreshold_=Ze,this.gyroscopeOldThreshold_=Je,this.orientationOldThreshold_=Ge,this.maeAccThreshold_=He,this.maeGyroThreshold_=Xe,this.maeAccGrOldThreshold_=Ke,this.maeAccOldThreshold_=$e,this.maeGyroscopeOldThreshold_=nt,this.maeOrientationOldThreshold_=tt}async requestMotionPermission(){DeviceMotionEvent&&typeof DeviceMotionEvent.requestPermission=="function"&&DeviceMotionEvent.requestPermission().then(me=>{me!=="granted"&&(this.permission_=!1)}).catch(console.error)}initializeAccelerometer(){if("Accelerometer"in window)try{this.acl_=new window.Accelerometer({frequency:this.maxFrequency_}),this.acl_.addEventListener("reading",()=>this.updateAcc())}catch{}}initializeGyroscope(){if("Gyroscope"in window)try{this.gyro_=new window.Gyroscope({frequency:this.maxFrequency_}),this.gyro_.addEventListener("reading",()=>this.updateGyro())}catch{}}async start(){this.run()}run(){if(!(this.isRunning_||!this.permission_)){try{this.initializeAccelerometer(),this.acl_.start()}catch{}try{this.initializeGyroscope(),this.gyro_.start()}catch{}window.addEventListener("devicemotion",this.deviceMotionListener),window.addEventListener("deviceorientation",this.deviceOrientationListener),this.isRunning_=!0}}stop(){this.isRunning_=!1,this.acl_&&this.acl_.stop(),this.gyro_&&this.gyro_.stop(),window.removeEventListener("devicemotion",this.deviceMotionListener),window.removeEventListener("deviceorientation",this.deviceOrientationListener),this.paramsAcc_={...this.emptyParams},this.paramsGyro_={...this.emptyParams},this.paramsAccGrOld_={...this.emptyParams},this.paramsAccOld_={...this.emptyParams},this.paramsGyroscopeOld_={...this.emptyParams},this.paramsOrientationOld_={...this.emptyParams}}updateAcc(){if(!(!this.isRunning_||!this.acl_)&&(this.paramsAcc_.ptsNum+=1,this.acl_)){const me={x:this.acl_.x,y:this.acl_.y,z:this.acl_.z};this.checkFields(me)&&this.updateParams(this.paramsAcc_,me)}}updateGyro(){if(!(!this.isRunning_||!this.gyro_)&&(this.paramsGyro_.ptsNum+=1,this.gyro_)){const me={x:this.gyro_.x,y:this.gyro_.y,z:this.gyro_.z};this.checkFields(me)&&this.updateParams(this.paramsGyro_,me)}}check(){if(!this.permission_)return"UNCLEAR";const me=this.checkStability();return me===null?"UNCLEAR":me?"FAIL":"PASS"}checkStability(){if(!this.isRunning_)return null;const Ue=[this.gyro_?this.isBelowStdThreshold(this.paramsGyro_,this.gyroThreshold_):null,this.acl_?this.isBelowStdThreshold(this.paramsAcc_,this.accThreshold_):null,this.isBelowStdThreshold(this.paramsAccGrOld_,this.accGrOldThreshold_),this.isBelowStdThreshold(this.paramsAccOld_,this.accOldThreshold_),this.isBelowStdThreshold(this.paramsGyroscopeOld_,this.gyroscopeOldThreshold_),this.isBelowStdThreshold(this.paramsOrientationOld_,this.orientationOldThreshold_)].filter(He=>He!==null),Qe=Ue.length>0?Ue.every(He=>He):null,Je=[this.gyro_?this.isBelowMaeThreshold(this.paramsGyro_,this.maeGyroThreshold_):null,this.acl_?this.isBelowMaeThreshold(this.paramsAcc_,this.maeAccThreshold_):null,this.isBelowMaeThreshold(this.paramsAccGrOld_,this.maeAccGrOldThreshold_),this.isBelowMaeThreshold(this.paramsAccOld_,this.maeAccOldThreshold_),this.isBelowMaeThreshold(this.paramsGyroscopeOld_,this.maeGyroscopeOldThreshold_),this.isBelowMaeThreshold(this.paramsOrientationOld_,this.maeOrientationOldThreshold_)].filter(He=>He!==null),Ge=Je.length>0?Je.every(He=>He):null;return Qe===null?Ge===null?null:Ge:Ge!==null?Qe&&Ge:Qe}updateParams(me,Ue){const Qe=Ue.x-me.meanX,Ze=Ue.y-me.meanY,Je=Ue.z-me.meanZ;me.meanX+=Qe/me.ptsNum,me.meanY+=Ze/me.ptsNum,me.meanZ+=Je/me.ptsNum,me.m2X+=Qe*(Ue.x-me.meanX),me.m2Y+=Ze*(Ue.y-me.meanY),me.m2Z+=Je*(Ue.z-me.meanZ),me.cumulativeAbsErrorX+=Math.abs(Ue.x-me.meanX),me.cumulativeAbsErrorY+=Math.abs(Ue.y-me.meanY),me.cumulativeAbsErrorZ+=Math.abs(Ue.z-me.meanZ)}calculateStd(me){const Ue={x:me.m2X/me.ptsNum,y:me.m2Y/me.ptsNum,z:me.m2Z/me.ptsNum};return{x:Math.sqrt(Ue.x),y:Math.sqrt(Ue.y),z:Math.sqrt(Ue.z)}}calculateMae(me){return{x:me.cumulativeAbsErrorX/me.ptsNum,y:me.cumulativeAbsErrorY/me.ptsNum,z:me.cumulativeAbsErrorZ/me.ptsNum}}checkFields(me){return me.x!==null&&me.y!==null&&me.z!==null}isBelowStdThreshold(me,Ue){if(me.ptsNum<this.minNumberOfFrames_)return null;const Qe=this.calculateStd(me);return Qe.x<Ue&&Qe.y<Ue&&Qe.z<Ue}isBelowMaeThreshold(me,Ue){if(me.ptsNum<this.minNumberOfFrames_)return null;const Qe=this.calculateMae(me);return Qe.x<Ue&&Qe.y<Ue&&Qe.z<Ue}}let options={darkMode:!1,hostingApp:"Web SDK",unsafeMode:!1,redirectFromUnsupportedBrowsers:!1};const setOptions=ue=>(options={...options,...ue},options);var PipelineProfileType=(ue=>(ue[ue.IdCaptureBrazilian=0]="IdCaptureBrazilian",ue[ue.IdCaptureVisas=1]="IdCaptureVisas",ue[ue.IdVideoSelfieBrazilian=2]="IdVideoSelfieBrazilian",ue[ue.IdVideoSelfieVisas=3]="IdVideoSelfieVisas",ue[ue.SelfieFaceDetection=4]="SelfieFaceDetection",ue))(PipelineProfileType||{});class PipelineProfile{constructor(me,Ue,Qe,Ze=null,Je=""){this.pipelineType=me,this.modelNames=Ue,this.parameters=Qe,this.paramsConfigurator=Ze,this.description=Je}reconfigureParams(me=null,Ue=null){if(this.paramsConfigurator==null)throw new Error("PipelineProfile does not have a paramsConfigurator");this.paramsConfigurator(this.parameters,this.pipelineType,me,Ue)}}var PipelineType=(ue=>(ue[ue.IdCapturePipeline=0]="IdCapturePipeline",ue[ue.IdVideoSelfiePipeline=1]="IdVideoSelfiePipeline",ue[ue.SelfieFaceDetectionPipeline=2]="SelfieFaceDetectionPipeline",ue[ue.IdFaceDetectionPipeline=3]="IdFaceDetectionPipeline",ue))(PipelineType||{});function IdCaptureParamsConfigurator(ue,me,Ue,Qe){Object.assign(ue,{areaDown:Qe||Ue?55e3:25e3,areaUp:Qe||Ue?75e3:55e3,areaIOSPassportUp:3e4,areaIOSPassportDown:2e4,widthIOSUp:me==PipelineType.IdCapturePipeline?125:180,widthIOSDown:me==PipelineType.IdCapturePipeline?85:150,widthDown:Qe||Ue?185:135,widthUp:Qe||Ue?255:205})}const SelfieFaceDetectionPipelineParams={frameMinX:0,frameMinY:0,frameMaxX:1,frameMaxY:1,brightnessThreshold:50,blurrinessThreshold:50,tiltRotationAngleThreshold:7,minMagicCropSize:200,headwearThreshold:.95,lensesThreshold:.95,closedEyesThreshold:.9,maskThreshold:.5},pipelineProfiles={[PipelineProfileType.IdCaptureBrazilian]:new PipelineProfile(PipelineType.IdCapturePipeline,["brazilian_mobile_025_ep199_fp16.ortmodelv2"],{glareThreshold:.2,classificationThreshold:.98,sharpnessThreshold:.3,sharpnessChangeThreshold:.3},IdCaptureParamsConfigurator,"Id Capture Profile with brazilian_mobile model"),[PipelineProfileType.IdCaptureVisas]:new PipelineProfile(PipelineType.IdCapturePipeline,["visas_mobile_025_best_v1_03_fp16.ortmodelv2"],{glareThreshold:.3,classificationThreshold:.98,sharpnessThreshold:.2,sharpnessChangeThreshold:.2},IdCaptureParamsConfigurator,"Id Capture Profile with visas_mobile model"),[PipelineProfileType.IdVideoSelfieBrazilian]:new PipelineProfile(PipelineType.IdVideoSelfiePipeline,["brazilian_mobile_025_ep199_fp16.ortmodelv2"],{glareThreshold:.2,classificationThreshold:.9,sharpnessThreshold:.3,sharpnessChangeThreshold:.3},IdCaptureParamsConfigurator,"Id Videoselfie profile with brazilian_mobile model"),[PipelineProfileType.IdVideoSelfieVisas]:new PipelineProfile(PipelineType.IdVideoSelfiePipeline,["visas_mobile_025_best_v1_03_fp16.ortmodelv2"],{glareThreshold:.3,classificationThreshold:.9,sharpnessThreshold:.2,sharpnessChangeThreshold:.2},IdCaptureParamsConfigurator,"Id Videoselfie Profile with visas_mobile model"),[PipelineProfileType.SelfieFaceDetection]:new PipelineProfile(PipelineType.SelfieFaceDetectionPipeline,["selfie_bf_angles_192x192_opset9_fp16.ortmodelv2","bf_attrib_31b8f9d92fb345c2b4bbdd222792562c_0_fp16.ortmodelv2"],SelfieFaceDetectionPipelineParams,null,"Selfie face detection profile")},probabilityThreshold=.9,wasmVersion="v1.7.6",brazilianPipelineBundle=[PipelineProfileType.IdCaptureBrazilian,PipelineProfileType.IdVideoSelfieBrazilian,PipelineProfileType.SelfieFaceDetection],visasPipelineBundle=[PipelineProfileType.IdCaptureVisas,PipelineProfileType.IdVideoSelfieVisas,PipelineProfileType.SelfieFaceDetection],PipelinesBundle=new Map([["brazilianPipelineBundle",brazilianPipelineBundle],["visasPipelineBundle",visasPipelineBundle]]);function switchBundle(){return Math.random()<probabilityThreshold?"brazilianPipelineBundle":"visasPipelineBundle"}function getInitializationParams(ue){const Ue=ue?switchBundle():"brazilianPipelineBundle",Qe="https://d3vv997wtl2myz.cloudfront.net/webcamera/onnx-backend-wasm",Ze=`${Qe}/${wasmVersion}/webLib.wasm`,Je=`${Qe}/${wasmVersion}/webLibSimd.wasm`,Ge=`${Qe}/${wasmVersion}/webLib.js`,He=`${Qe}/${wasmVersion}/versions.json`;let Xe=new Map,Ke=new Map;for(const $e of PipelinesBundle.get(Ue)){if(!pipelineProfiles[$e])throw new Error(`Pipeline profile ${$e} not found`);const nt=pipelineProfiles[$e],tt=nt.modelNames;let et=[];for(const rt of tt)et.push(`${Qe}/${wasmVersion}/models/${rt}`);Xe.set(nt.pipelineType,et),Ke.set(nt.pipelineType,$e)}return{wasmModulePath:Ze,wasmSimdModulePath:Je,glueCodePath:Ge,versionsFilePath:He,pipelineModels:Xe,pipelineProfileTypes:Ke,enableSIMD:!0,bundle:Ue}}window.wasmArrayBuffer=null;class MlWasmJSApi{constructor(){this.versionsFile=null,this.modelsBuffers=null,this.inputImageBuffer=null,this.wasmModule=null,this.wasmApiHelpers=null,this.idCaptureWasmApi=null,this.faceDetectionWasmApi=null,this.imageWidth_=null,this.imageHeight_=null,this.pipelines_=null,this.isInitialized_=!1,this.Module=null,this.loadModule=async me=>{this.Module=(await import(me)).Module}}async initialize(me,Ue,Qe,Ze,Je,Ge){await this.freeResources(),this.pipelines_=Ge,this.versionsFile=Je,await this.loadModule(Qe),await this.loadWasm(Ze,me,Ue),this.wasmApiHelpers=new this.wasmModule.MlWasmApiHelpers,this.idCaptureWasmApi=new this.wasmModule.IdCaptureWasmApi,this.faceDetectionWasmApi=new this.wasmModule.FaceDetectionWasmApi,this.isInitialized_=!0}isInitialized(){return this.wasmApiHelpers!=null&&this.idCaptureWasmApi!=null&&this.faceDetectionWasmApi!=null&&this.isInitialized_}async allocateImageBuffers(me,Ue){this.checkWasmInitialization("Unable to allocate image buffers, cpp API hasn't been initialized"),!(me&&Ue&&me==this.imageWidth_&&Ue==this.imageHeight_&&this.inputImageBuffer&&me*Ue*4===this.inputImageBuffer.length)&&(this.imageWidth_=me,this.imageHeight_=Ue,this.inputImageBuffer=this.wasmApiHelpers.allocateInputImageBuffer(me,Ue,4))}async handleDetectionCallAndUpdateState(me){this.checkWasmInitialization("Unable to update pipeline state, cpp API hasn't been initialized"),this.wasmApiHelpers.handleDetectionCallAndUpdateState(this.toWasmEnum(me))}async encryptImage(me){return this.checkWasmInitialization("Unable to encrypt the image, cpp API hasn't been initialized"),this.wasmApiHelpers.encryptImage(me)}isVirtualCamera(me){return this.checkWasmInitialization("Unable to check if the camera is virtual, cpp API hasn't been initialized"),this.wasmApiHelpers.isVirtualCamera(me)}estimatePerformance(){return this.checkWasmInitialization("Unable to estimate performance, cpp API hasn't been initialized"),this.wasmApiHelpers.estimatePerformance()}async analyzeFrame(me){return this.checkWasmInitialization("Unable to analyze the frame, cpp API hasn't been initialized"),await this.allocateImageBuffers(me.width,me.height),this.inputImageBuffer.set(me.data),this.wasmApiHelpers.analyzeFrame()}async freeResources(){this.versionsFile=null,this.modelsBuffers=null,this.inputImageBuffer=null,this.imageWidth_=null,this.imageHeight_=null,this.pipelines_=null,window.wasmArrayBuffer=null,this.wasmApiHelpers&&typeof this.wasmApiHelpers.delete=="function"&&(this.wasmApiHelpers.delete(),this.wasmApiHelpers=null),this.idCaptureWasmApi&&typeof this.idCaptureWasmApi.delete=="function"&&(this.idCaptureWasmApi.delete(),this.idCaptureWasmApi=null),this.faceDetectionWasmApi&&typeof this.faceDetectionWasmApi.delete=="function"&&(this.faceDetectionWasmApi.delete(),this.faceDetectionWasmApi=null),this.wasmModule=null,this.isInitialized_=!1}resetPipeline(me){this.checkWasmInitialization("Unable to reset pipeline, cpp API hasn't been initialized"),this.wasmApiHelpers.resetPipeline(this.toWasmEnum(me))}resetAllPipelines(){this.checkWasmInitialization("Unable to reset pipelines, cpp API hasn't been initialized");for(const[me,Ue]of this.pipelines_)this.resetPipeline(me)}async process(me,Ue){if(this.checkWasmInitialization("Unable to process the image, cpp API hasn't been initialized"),this.inputImageBuffer===null)throw new Error("Unable to process the image, buffers haven't been allocated!");switch(this.inputImageBuffer.set(me.data),Ue){case PipelineType.IdCapturePipeline:return this.idCaptureWasmApi.runIdCapturePipeline();case PipelineType.IdFaceDetectionPipeline:return this.faceDetectionWasmApi.runIdFaceDetectionPipeline();case PipelineType.IdVideoSelfiePipeline:return this.idCaptureWasmApi.runIdVideoSelfiePipeline();case PipelineType.SelfieFaceDetectionPipeline:return this.faceDetectionWasmApi.runSelfieFaceDetectionPipeline();default:throw new Error("Unknown pipeline type")}}async runIdCapture(me){if(this.checkWasmInitialization("Unable to run Id Capture, cpp API hasn't been initialized"),this.inputImageBuffer===null)throw new Error("Unable to process the image, buffers haven't been allocated!");return this.inputImageBuffer.set(me.data),this.idCaptureWasmApi.runIdCapture()}async runSelfieCapture(me){if(this.checkWasmInitialization("Unable to run Selfie Capture, cpp API hasn't been initialized"),this.inputImageBuffer===null)throw new Error("Unable to process the image, buffers haven't been allocated!");return this.inputImageBuffer.set(me.data),this.faceDetectionWasmApi.runSelfieCapture()}async setFacePositionConstraints(me,Ue,Qe,Ze,Je){this.checkWasmInitialization("Unable to set face position constraints, cpp API hasn't been initialized"),this.faceDetectionWasmApi.setFacePositionConstraints(this.toWasmEnum(me),Ue,Qe,Ze,Je)}async setFaceDetectionThresholds(me,Ue,Qe,Ze,Je,Ge){this.checkWasmInitialization("Unable to set face detection thresholds, cpp API hasn't been initialized"),this.faceDetectionWasmApi.setFaceDetectionThresholds(this.toWasmEnum(me),Ue,Qe,Ze,Je,Ge)}async setFaceAttributesThresholds(me,Ue,Qe,Ze,Je){this.checkWasmInitialization("Unable to set face attributes thresholds, cpp API hasn't been initialized"),this.faceDetectionWasmApi.setFaceAttributesThresholds(this.toWasmEnum(me),Ue,Qe,Ze,Je)}async setFaceAttributesEnabled(me,Ue,Qe,Ze,Je){this.checkWasmInitialization("Unable to set face attributes enabled flags, cpp API hasn't been initialized"),this.faceDetectionWasmApi.setFaceAttributesEnabled(this.toWasmEnum(me),Ue,Qe,Ze,Je)}async setFaceDetectionMode(me,Ue){this.checkWasmInitialization("Unable to set face detection mode, cpp API hasn't been initialized"),this.faceDetectionWasmApi.setFaceDetectionMode(this.toWasmEnum(me),Ue)}async setFaceDetectionCallbacks(me,Ue,Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt,et,rt,at,it,ot){this.checkWasmInitialization("Unable to set face detection callbacks, cpp API hasn't been initialized"),this.faceDetectionWasmApi.setFaceDetectionCallbacks(this.toWasmEnum(me),Ue,Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt,et,rt,at,it,ot)}async setIdCaptureThresholds(me,Ue,Qe,Ze,Je,Ge){this.checkWasmInitialization("Unable to set thresholds, cpp API hasn't been initialized"),this.idCaptureWasmApi.setIdCaptureThresholds(this.toWasmEnum(me),Ue,Qe,Ze,Je,Ge)}async setIdCaptureCallbacks(me,Ue,Qe,Ze,Je,Ge,He,Xe,Ke){this.checkWasmInitialization("Unable to set callbacks, cpp API hasn't been initialized"),this.idCaptureWasmApi.setIdCaptureCallbacks(this.toWasmEnum(me),Ue,Qe,Ze,Je,Ge,He,Xe,Ke)}async setIdCaptureGeometryParams(me,Ue,Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt,et){this.checkWasmInitialization("Unable to set geometry params, cpp API hasn't been initialized"),this.idCaptureWasmApi.setIdCaptureGeometryParams(this.toWasmEnum(me),Ue,Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt,et)}async setIdCaptureConfigParams(me,Ue,Qe,Ze,Je,Ge){this.checkWasmInitialization("Unable to set config params, cpp API hasn't been initialized"),this.idCaptureWasmApi.setIdCaptureConfigParams(this.toWasmEnum(me),Ue,Qe,Ze,Je,Ge)}async getVersions(){const Ue=await(await fetch(this.versionsFile)).text();return JSON.parse(Ue)}async loadWasm(me,Ue,Qe){const Ze=me?Qe:Ue;try{window.wasmArrayBuffer=await fetch(Ze).then(Je=>Je.arrayBuffer()).then(Je=>new Uint8Array(Je)),this.wasmModule=await this.Module()}catch(Je){if(console.log(Je,me,"useSmd"),me)await this.loadWasm(!1,Ue,Qe);else throw Je}}async loadModels(){var Ze;this.checkWasmInitialization("Unable load the models, cpp API hasn't been initialized");let me=new this.wasmModule.PipelineTypeToIntMap,Ue=new Map,Qe=new Map;for(let[Je,Ge]of this.pipelines_){let He=this.toWasmEnum(Je),Xe=[],Ke=new this.wasmModule.VectorInt;for(let $e of Ge){if(!Qe.has($e)){let tt=await fetch($e).then(et=>et.arrayBuffer()).then(et=>new Uint8Array(et));Qe.set($e,tt)}let nt=Qe.get($e);Ke.push_back(nt.byteLength),Xe.push(nt)}me.set(He,Ke),Ue.set(He,Xe)}this.modelsBuffers=this.wasmApiHelpers.allocateModelsBuffers(me);for(let[Je,Ge]of Ue){let He=(Ze=this.modelsBuffers)==null?void 0:Ze.get(Je);for(let Xe=0;Xe<He.size();Xe++){let Ke=He==null?void 0:He.get(Xe);if(Ke)Ke.set(Ge[Xe]);else throw new Error("Unable to get model buffer from shared memory!")}}}async initializePipelines(){this.checkWasmInitialization("Unable to initialize pipelines, cpp API hasn't been initialized"),this.modelsBuffers||await this.loadModels(),this.wasmApiHelpers.initializePipelines()}async setProductionMode(me){this.checkWasmInitialization("Unable to set production mode, cpp API hasn't been initialized"),this.wasmApiHelpers.setProductionMode(me)}getPipelineState(){return this.checkWasmInitialization("Unable to get pipeline state, cpp API hasn't been initialized"),this.wasmApiHelpers.getPipelineState()}getCurrentPipeline(){return this.checkWasmInitialization("Unable to get current pipeline, cpp API hasn't been initialized"),this.fromWasmEnum(this.wasmApiHelpers.getCurrentPipeline())}toWasmEnum(me){switch(me){case PipelineType.IdCapturePipeline:return this.wasmModule.PipelineType.IdCapturePipeline;case PipelineType.IdFaceDetectionPipeline:return this.wasmModule.PipelineType.IdFaceDetectionPipeline;case PipelineType.IdVideoSelfiePipeline:return this.wasmModule.PipelineType.IdVideoSelfiePipeline;case PipelineType.SelfieFaceDetectionPipeline:return this.wasmModule.PipelineType.SelfieFaceDetectionPipeline;default:throw new Error("Unknown pipeline type")}}fromWasmEnum(me){switch(me){case this.wasmModule.PipelineType.IdCapturePipeline:return PipelineType.IdCapturePipeline;case this.wasmModule.PipelineType.IdFaceDetectionPipeline:return PipelineType.IdFaceDetectionPipeline;case this.wasmModule.PipelineType.IdVideoSelfiePipeline:return PipelineType.IdVideoSelfiePipeline;case this.wasmModule.PipelineType.SelfieFaceDetectionPipeline:return PipelineType.SelfieFaceDetectionPipeline;default:throw new Error("Unknown pipeline type")}}checkWasmInitialization(me){if(!this.isInitialized())throw new Error(me)}}function formatLandmarks(ue,me,Ue){const[Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt]=ue;return{rightEyeX:Qe,rightEyeY:Ze,leftEyeX:Je,leftEyeY:Ge,noseTipX:He,noseTipY:Xe,rightMouthX:Ke,rightMouthY:$e,mouthX:nt,mouthY:tt,x:me[0],y:me[1],width:Ue[0],height:Ue[1]}}let frame,fullImage,landmarks,topLeft,size;async function detectFace(ue){const{onNoFace:me,onCapturing:Ue,onCapture:Qe,onTooManyFaces:Ze,onTooClose:Je,onCenterFace:Ge,onFarAway:He,onFaceAngle:Xe,onDark:Ke,onBlur:$e,onHeadWear:nt,onLenses:tt,onEyesClosed:et,onFaceMask:rt,onSwitchToManualCapture:at,isLensesCheckEnabled:it,isMaskCheckEnabled:ot,isClosedEyesCheckEnabled:st,isHeadWearCheckEnabled:ut,isVideoSelfie:ct,autocaptureTimeout:dt,webcam:pt,pipelineProfileTypes:ht}=ue;try{const gt=getWasmApi();await gt.handleDetectionCallAndUpdateState(PipelineType.SelfieFaceDetectionPipeline);const Mt=ht.get(PipelineType.SelfieFaceDetectionPipeline),St=pipelineProfiles[Mt],Dt=cloneCanvas(pt.getCanvas(pt.video.videoWidth,pt.video.videoHeight));if(!Dt)return;if(state.skipFrames){state.skipFrames=!1;return}const yt=Dt.width,Tt=Dt.height,mt=pt.getBase64ScreenShot(yt,Tt,1,!1),Rt=pt.getFullImage(yt,Tt,1,Dt),It=Dt.getContext("2d").getImageData(0,0,yt,Tt);await gt.allocateImageBuffers(yt,Tt),await gt.setFacePositionConstraints(PipelineType.SelfieFaceDetectionPipeline,St.parameters.frameMinX,St.parameters.frameMinY,St.parameters.frameMaxX,St.parameters.frameMaxY),await gt.setFaceDetectionThresholds(PipelineType.SelfieFaceDetectionPipeline,St.parameters.brightnessThreshold,St.parameters.blurrinessThreshold,St.parameters.tiltRotationAngleThreshold,St.parameters.minMagicCropSize,dt),await gt.setFaceAttributesEnabled(PipelineType.SelfieFaceDetectionPipeline,it,ot,st,ut),await gt.setFaceAttributesThresholds(PipelineType.SelfieFaceDetectionPipeline,St.parameters.headwearThreshold,St.parameters.lensesThreshold,St.parameters.closedEyesThreshold,St.parameters.maskThreshold),await gt.setFaceDetectionMode(PipelineType.SelfieFaceDetectionPipeline,ct);const Et=()=>{Qe(frame,fullImage,formatLandmarks(landmarks,topLeft,size))},bt=vt=>{frame=mt,fullImage=Rt;const xt=vt.rect;topLeft=[xt.x,xt.y];const Bt=[xt.x+xt.width,xt.y+xt.height],Ct=topLeft,Zt=Bt;size=[Zt[0]-Ct[0],Zt[1]-Ct[1]],landmarks=[vt.rightEye.x,vt.rightEye.y,vt.leftEye.x,vt.leftEye.y,vt.noseTip.x,vt.noseTip.y,vt.rightMouthCorner.x,vt.rightMouthCorner.y,vt.leftMouthCorner.x,vt.leftMouthCorner.y]};await gt.setFaceDetectionCallbacks(PipelineType.SelfieFaceDetectionPipeline,He,Je,Ze,me,Et,Ue,Ge,Ke,$e,Xe,bt,tt,rt,et,nt,at),await gt.process(It,PipelineType.SelfieFaceDetectionPipeline)}catch(gt){console.error(`Exception: ${gt}`)}}const getImages$2=(ue,me,Ue)=>Ue.getImageData(ue,me);async function preprocessImage(ue){const me=ue.video.videoWidth,Ue=ue.video.videoHeight;return me===0||Ue===0?{image:null,status:0}:{image:getImages$2(me,Ue,ue),status:1}}async function configureIdPipeline(ue,me,Ue,Qe,Ze,Je,Ge,He,Xe,Ke,$e,nt,tt,et,rt=-1){const at=getWasmApi();await at.setIdCaptureCallbacks(ue,Ue,He,Ge,Ze,Qe,me,Je,Xe),await at.setIdCaptureThresholds(ue,et.parameters.sharpnessThreshold,et.parameters.sharpnessChangeThreshold,et.parameters.glareThreshold,et.parameters.classificationThreshold,rt),await at.setIdCaptureConfigParams(ue,$e,localStorage.getItem("isHighPerformance")==="true",Ke,nt,tt),await at.setIdCaptureGeometryParams(ue,et.parameters.areaDown,et.parameters.areaUp,et.parameters.areaIOSPassportUp,et.parameters.areaIOSPassportDown,et.parameters.widthIOSUp,et.parameters.widthIOSDown,et.parameters.widthDown,et.parameters.widthUp,window.outerWidth,window.outerHeight,window.innerWidth,window.innerHeight)}async function idDetection({webcam:ue,onCapturing:me,onFarAway:Ue,onGlare:Qe,onBlur:Ze,onIDNotDetected:Je,onMaskChange:Ge,idType:He,onDetectionStarted:Xe,onSwitchToManualCapture:Ke,isFixedMask:$e=!1,isKiosk:nt=!1,autocaptureTimeout:tt,pipelineProfileTypes:et}){try{const rt=getWasmApi();await rt.handleDetectionCallAndUpdateState(PipelineType.IdCapturePipeline);const at=et.get(PipelineType.IdCapturePipeline),it=pipelineProfiles[at];it.reconfigureParams(nt,mobile.isDesktop());const{image:ot,status:st}=await preprocessImage(ue);if(!st)return;const ut=(ct,dt)=>{me(ot,{sharpness:ct,glare:dt})};await configureIdPipeline(PipelineType.IdCapturePipeline,ut,Ue,Qe,Ze,Je,Ge,Xe,Ke,He,$e,!0,!0,it,tt),await rt.allocateImageBuffers(ot.imageElement.width,ot.imageElement.height),await rt.process(ot.imageElement,PipelineType.IdCapturePipeline)}catch(rt){console.error(`Exception: ${rt}`)}}const noop$1=()=>{};async function idVideoSelfieDetection({webcam:ue,onCapturing:me=noop$1,onFarAway:Ue=noop$1,onGlare:Qe=noop$1,onBlur:Ze=noop$1,onIdNotDetected:Je=noop$1,onMaskChange:Ge=noop$1,idType:He="null",onDetectionStarted:Xe=noop$1,isFixedMask:Ke=!1,isBlurCheckEnabled:$e,isGlareCheckEnabled:nt,onSwitchToManualCapture:tt,pipelineProfileTypes:et}){try{const rt=getWasmApi();await rt.handleDetectionCallAndUpdateState(PipelineType.IdVideoSelfiePipeline);const at=et.get(PipelineType.IdVideoSelfiePipeline),it=pipelineProfiles[at];it.reconfigureParams(!1,mobile.isDesktop());const{image:ot,status:st}=await preprocessImage(ue);if(!st)return;const ut=()=>{me()};await configureIdPipeline(PipelineType.IdVideoSelfiePipeline,ut,Ue,Qe,Ze,Je,Ge,Xe,tt,He,Ke,$e,nt,it),await rt.allocateImageBuffers(ot.imageElement.width,ot.imageElement.height),await rt.process(ot.imageElement,PipelineType.IdVideoSelfiePipeline)}catch(rt){console.error(`Exception: ${rt}`)}}const frontType="front",backType="back",selfieType="selfie",frontIdUrl="/omni/add/front-id",secondFrontIdUrl="/omni/add/front-second-id",backIdUrl="/omni/add/back-id",secondBackIdUrl="/omni/add/back-second-id",frontIdBase64Url="/omni/add/front-id/v2",backIdBase64Url="/omni/add/back-id/v2",getSelfieUrl=ue=>`/omni/add/face?imageType=${ue}`,getRealQualityValue=ue=>(1-ue)*100;function uploadFrontId({token:ue,image:me,onProgress:Ue=emptyFunc,sendBase64:Qe,onlyFront:Ze,isRetry:Je=!1,isSecondId:Ge=!1,glare:He,sharpness:Xe}){const Ke=Qe?frontIdBase64Url:Ge?secondFrontIdUrl:frontIdUrl,$e=Ze?`${Ke}?onlyFront=${Ze}`:Ke,nt=Qe?{base64Image:me}:me,tt=Qe?"application/json":"image/jpeg";return exports.api.post($e,nt,{headers:{"X-Incode-Hardware-Id":ue,"Content-Type":tt},onUploadProgress:({loaded:et,total:rt})=>Ue(et/rt*100),params:{...Je?{retry:!0}:void 0,...Xe?{sharpness:getRealQualityValue(Xe)}:void 0}}).then(et=>et.data)}function uploadBackId({token:ue,image:me,onProgress:Ue=emptyFunc,sendBase64:Qe,isRetry:Ze=!1,isSecondId:Je=!1,glare:Ge,sharpness:He,shouldSkipGlare:Xe}){const Ke=Qe?backIdBase64Url:Je?secondBackIdUrl:backIdUrl,$e=Qe?{base64Image:me}:me,nt=Qe?"application/json":"image/jpeg";return exports.api.post(Ke,$e,{headers:{"X-Incode-Hardware-Id":ue,"Content-Type":nt},onUploadProgress:({loaded:tt,total:et})=>Ue(tt/et*100),params:{...Ze?{retry:!0}:void 0,...Xe?{glare:100}:void 0,...He?{sharpness:getRealQualityValue(He)}:void 0}}).then(tt=>tt.data)}function uploadSelfie({token:ue,image:me,onProgress:Ue=emptyFunc,encrypted:Qe,imageType:Ze="selfie",faceCoordinates:Je=null}){return exports.api.post(getSelfieUrl(Ze),{base64Image:me,encrypted:Qe,faceCoordinates:Je,clientInfo:{deviceClass:getDeviceClass()}},{headers:{"X-Incode-Hardware-Id":ue},onUploadProgress:({loaded:Ge,total:He})=>Ue(Ge/He*100)}).then(Ge=>Ge.data)}function capture({type:ue,...me}){if(ue===frontType)return uploadFrontId({...me});if(ue===backType)return uploadBackId({...me});if(ue===selfieType)return uploadSelfie({...me});throw new Error(`type not supported, please use one of this: [${frontType}, ${backType}, ${selfieType}]`)}function setPerformanceLoadTime(){if(!mobile.iOS())return;if(new URLSearchParams(window.location.search).get("smallFrame")==="true"){localStorage.setItem("isHighPerformance","true");return}localStorage.setItem("isHighPerformance",String(window.outerHeight===852&&window.outerWidth===393||window.outerHeight===932&&window.outerWidth===430||window.innerHeight===631&&window.innerWidth===375))}let mlWasmJSApi=null,isSetupDetect=!1,pipelineLogs="",motionStatus="",analysisStatus="",estimatedPerformance="",pipelinesBundle=null,profileTypes=null,onboardingCheck=null;function getProfileTypes(){return profileTypes}function getPipelineLogs(){return pipelineLogs}function getMotionStatus(){return motionStatus}function getAnalysisStatus(){return analysisStatus}function getWasmApi(){if(mlWasmJSApi)return mlWasmJSApi;throw new Error("getWasmApi returned null")}let setupDetectPromise=null;const setupDetect=async()=>setupDetectPromise||(setupDetectPromise=_runSetupDetect(),setupDetectPromise);async function _runSetupDetect(){var Ue,Qe;if(isSetupDetect)return;addEvent({token:(Ue=state.token)==null?void 0:Ue.token,code:"modelLoadStart"}),setPerformanceLoadTime(),onboardingCheck=new OnboardingCheck(.3,.3,.3,.3,10,10,.3,.3,.3,.3,10,10),onboardingCheck.start(),mlWasmJSApi=new MlWasmJSApi;const ue=getInitializationParams(options.hostingApp==="Incode ID");for(pipelinesBundle=ue.bundle,profileTypes=ue.pipelineProfileTypes,await mlWasmJSApi.initialize(ue.wasmModulePath,ue.wasmSimdModulePath,ue.glueCodePath,ue.enableSIMD,ue.versionsFilePath,ue.pipelineModels);!mlWasmJSApi.isInitialized();)await new Promise(Ze=>setTimeout(Ze,100));estimatedPerformance=mlWasmJSApi.estimatePerformance(),await mlWasmJSApi.initializePipelines();const me={}.VITE_WASM_PRODUCTION_MODE==="true";try{await mlWasmJSApi.setProductionMode(me)}catch(Ze){console.error(`Exception: ${Ze}`)}isSetupDetect=!0,addEvent({token:(Qe=state.token)==null?void 0:Qe.token,code:"modelLoadEnd",payload:{loadSuccessful:!0}})}async function warmup(){for(;!getWasmApi().isInitialized();)await new Promise(ue=>setTimeout(ue,100))}async function analyzeFrame(ue){const me=await base64ToImageData(ue);await getWasmApi().analyzeFrame(me),updatePipelineStats()}function updatePipelineStats(){if(!(!mlWasmJSApi||!mlWasmJSApi.isInitialized()))try{const ue=mlWasmJSApi.getPipelineState();if(ue!==""){const me=JSON.parse(ue);analysisStatus=me.statsAnalysisStatus,me.pipelinesBundle=pipelinesBundle||"unknown",me.estimatedPerformance=estimatedPerformance,pipelineLogs=JSON.stringify(me),motionStatus===""&&(motionStatus=onboardingCheck.check())}}catch(ue){console.error(`Exception: ${ue}`)}}function detect({type:ue,canvas:me,webcam:Ue,onFarAway:Qe=emptyFunc,onBlur:Ze=emptyFunc,onGlare:Je=emptyFunc,onCapturing:Ge=emptyFunc,onCapture:He=emptyFunc,onTooManyFaces:Xe=emptyFunc,onCenterFace:Ke=emptyFunc,onIDNotDetected:$e=emptyFunc,onTooClose:nt=emptyFunc,onNothingHappen:tt=emptyFunc,onPercentage:et=emptyFunc,onNoFace:rt=emptyFunc,onMaskChange:at=emptyFunc,onDetectionStarted:it=emptyFunc,onFaceAngle:ot=emptyFunc,onDark:st=emptyFunc,onHeadWear:ut=emptyFunc,onLenses:ct=emptyFunc,onEyesClosed:dt=emptyFunc,onFaceMask:pt=emptyFunc,onSwitchToManualCapture:ht=emptyFunc,idType:gt="FrontId",isFixedMask:Mt=!1,isLensesCheckEnabled:St=!1,isMaskCheckEnabled:Dt=!1,isClosedEyesCheckEnabled:yt=!1,isHeadWearCheckEnabled:Tt=!1,isKiosk:mt=!1,isVideoSelfie:Rt,pipelineProfileTypes:Ut,autocaptureTimeout:It=-1}){if(!me)return;window.clearInterval(state.intervalId);const Et=(vt=>{if(vt===frontType||vt===backType)return idDetection;if(vt===selfieType)return detectFace;throw new Error(`type not supported, please use one of this: [${frontType}, ${backType}, ${selfieType}]`)})(ue),bt={webcam:Ue,onFarAway:Qe,onCenterFace:Ke,onTooManyFaces:Xe,onBlur:Ze,onGlare:Je,onCapturing:Ge,onCapture:He,onIDNotDetected:$e,onTooClose:nt,onNothingHappen:tt,onPercentage:et,onNoFace:rt,onMaskChange:at,onDetectionStarted:it,onDark:st,onFaceAngle:ot,isFixedMask:Mt,idType:gt,onHeadWear:ut,onLenses:ct,onEyesClosed:dt,onFaceMask:pt,onSwitchToManualCapture:ht,isLensesCheckEnabled:St,isMaskCheckEnabled:Dt,isClosedEyesCheckEnabled:yt,isHeadWearCheckEnabled:Tt,isKiosk:mt,isVideoSelfie:Rt,autocaptureTimeout:It,pipelineProfileTypes:Ut};if(Et===idDetection||Et===detectFace){const vt=async()=>{if(!state.detecting){await sleep(1e3);return}try{await Et(bt)}catch{}finally{await sleep(200),requestAnimationFrame(vt)}};requestAnimationFrame(vt)}else state.intervalId=window.setInterval(()=>{state.detecting&&Et(bt)},100)}function stopDetect(){window.clearInterval(state.intervalId),state.detecting=!1,state.skipFrames=!0}function resumeDetect(){state.detecting=!0,state.skipFrames=!0}function detectFrame(){return null}var lib$1={exports:{}},Modal$2={},propTypes$2={exports:{}};/*
941
941
  object-assign
942
942
  (c) Sindre Sorhus
943
943
  @license MIT
@@ -2412,7 +2412,7 @@ newPrivacyConsent.text4
2412
2412
  `).filter(it=>!!it.trim());return jsxs(ConsentWrapper$1,{role:"region","aria-live":"assertive",className:`
2413
2413
  ${me.default?"IncodeDefaultConsent":"IncodeCustomConsent"}
2414
2414
  `,children:[jsx(ConsentTitle,{tabIndex:0,children:rt}),at.map((it,ot)=>jsx(ConsentParagraph,{tabIndex:0,children:me.default?jsx(Markdown,{disallowedElements:disallowedMarkdownElements,children:Ge(it)}):jsx(Markdown,{disallowedElements:disallowedMarkdownElements,children:it})},ot)),jsx(AcceptCheck$2,{consentChecked:He,setConsentChecked:Xe,text:tt,id:"one"}),Ze?jsx(AcceptCheck$2,{consentChecked:Ke,setConsentChecked:$e,text:Ge("privacyCheck.aeromexico"),id:"two"}):null,jsx("div",{children:jsx(Button$9,{tabIndex:0,"aria-disabled":et,disabled:et,onClick:nt,children:Ge("privacyConsent.button.continue")})})]})}function PrivacyConsent({session:ue,title:me,text:Ue,goNext:Qe,isAeroMexicoClient:Ze,customCheck:Je}){const{t:Ge}=useTranslation(),[He,Xe]=React$1.useState(null);React$1.useEffect(()=>{Object.hasOwn||(Object.hasOwn=(nt,tt)=>Object.prototype.hasOwnProperty.call(nt,tt))},[]);const Ke=nt=>{const tt=nt.split(`
2415
- `);return tt.length===1?tt.join(" "):tt.filter(et=>!!et.trim()).map(et=>Ge(et)).join(" ")},$e=({title:nt,content:tt,isDefault:et})=>{addConsent({title:`${et?Ge(nt):nt}`,content:et?Ke(tt):tt,status:!0,session:ue})};return React$1.useEffect(()=>{if(me||Ue){Xe({title:me||defaultPrivacyConsent.title,text:Ue||defaultPrivacyConsent.text,consentType:defaultPrivacyConsent.consentType,default:!Ue});return}getPrivacyConsentData({session:ue,type:"PRIVACY"}).then(({consents:nt})=>{const tt=nt.find(({consentType:et})=>et==="PRIVACY");tt!=null&&tt.text?Xe({...tt,title:(tt==null?void 0:tt.title.trim())||defaultPrivacyConsent.title,text:tt.text.trim()||defaultPrivacyConsent.text,default:!(tt!=null&&tt.text)}):Xe(defaultPrivacyConsent)}).catch(()=>{Xe(defaultPrivacyConsent)})},[ue,me,Ue]),He?jsx(NormalPrivacyConsent,{consent:He,goNext:Qe,addPrivacyConsent:$e,session:ue,isAeroMexicoClient:Ze,customCheck:Je}):null}function renderUserConsent(ue,{session:me,onSuccess:Ue,title:Qe,text:Ze,isAeroMexicoClient:Je=!1,customCheck:Ge=null}){const He=createRoot$1(ue),Xe=handleUnmountRoot(Ue,He,ue);customRender(jsx(App$1,{token:me.token,children:jsx(PrivacyConsent,{goNext:Xe,session:me,title:Qe,text:Ze,isAeroMexicoClient:Je,customCheck:Ge})}),ue,He)}const version="1.71.0-20240419161640.0";function r(ue){for(var me="",Ue=0;Ue<ue.length;++Ue)if(Ue>0){var Qe=ue[Ue].toLowerCase();Qe!==ue[Ue]?me+=" ".concat(Qe):me+=ue[Ue]}else me+=ue[Ue].toUpperCase();return me}function o(ue,me){return function(Ue,Qe){return Object.prototype.hasOwnProperty.call(Ue,Qe)}(ue,me)?ue[me]:void 0}var i$1={default:"endpoint"},u={default:"tlsEndpoint"},a="Client timeout",R="Network connection error",c="Network request aborted",s="Response cannot be parsed",E="Blocked by CSP",f="The endpoint parameter is not a valid URL",d=r("WrongRegion"),l=r("SubscriptionNotActive"),_=r("UnsupportedVersion"),p=r("InstallationMethodRestricted"),v=r("HostnameRestricted"),O=r("IntegrationFailed"),I="API key required",h="API key not found",N="API key expired",T="Request cannot be parsed",m="Request failed",w="Request failed to process",A="Too many requests, rate limit exceeded",P="Not available for this origin",y="Not available with restricted header",D=I,S=h,L=N,U="3.8.6",b="9319";function g(ue,me){var Ue=[];return function(Qe,Ze){var Je=5,Ge=(tt=Qe,et=__spreadArray$1([],tt,!0),{current:function(){return et[0]},postpone:function(){var at=et.shift();at!==void 0&&et.push(at)},exclude:function(){et.shift()}}),He=(Ke=100,$e=3e3,nt=0,function(){return Math.random()*Math.min($e,Ke*Math.pow(2,nt++))}),Xe=Ge.current(),Ke,$e,nt,tt,et;if(Xe===void 0)return Promise.reject(new TypeError("The list of script URL patterns is empty"));var rt=function(at,it){return Ze(at).catch(function(ot){if(it+1>=Je)throw ot;(function(ct){if(!(ct instanceof Error))return!1;var dt=ct.message;return dt===E||dt===b})(ot)?Ge.exclude():Ge.postpone();var st,ut=Ge.current();if(ut===void 0)throw ot;return(st=He(),new Promise(function(ct){return setTimeout(ct,st)})).then(function(){return rt(ut,it+1)})})};return rt(Xe,0)}(ue,function(Qe){var Ze=new Date,Je=function(He){return Ue.push({url:Qe,startedAt:Ze,finishedAt:new Date,error:He})},Ge=me(Qe);return Ge.then(function(){return Je()},Je),Ge}).then(function(Qe){return[Qe,Ue]})}var C="https://fpnpmcdn.net/v<version>/<apiKey>/loader_v<loaderVersion>.js",K=C,M="Failed to load the JS script of the agent";function B(ue){var me;ue.scriptUrlPattern;var Ue=ue.token,Qe=ue.apiKey,Ze=Qe===void 0?Ue:Qe,Je=__rest$1(ue,["scriptUrlPattern","token","apiKey"]),Ge=(me=o(ue,"scriptUrlPattern"))!==null&&me!==void 0?me:C,He=function(){var $e=[],nt=function(){$e.push({time:new Date,state:document.visibilityState})},tt=function(et,rt,at,it){return et.addEventListener(rt,at,it),function(){return et.removeEventListener(rt,at,it)}}(document,"visibilitychange",nt);return nt(),[$e,tt]}(),Xe=He[0],Ke=He[1];return Promise.resolve().then(function(){if(!Ze||typeof Ze!="string")throw new Error(I);var $e=function(nt,tt){return(Array.isArray(nt)?nt:[nt]).map(function(et){return function(rt,at){var it=encodeURIComponent;return rt.replace(/<[^<>]+>/g,function(ot){return ot==="<version>"?"3":ot==="<apiKey>"?it(at):ot==="<loaderVersion>"?it(U):ot})}(String(et),tt)})}(Ge,Ze);return g($e,F)}).catch(function($e){throw Ke(),function(nt){return nt instanceof Error&&nt.message===b?new Error(M):nt}($e)}).then(function($e){var nt=$e[0],tt=$e[1];return Ke(),nt.load(__assign$1(__assign$1({},Je),{ldi:{attempts:tt,visibilityStates:Xe}}))})}function F(ue){return function(me,Ue,Qe,Ze){var Je,Ge=document,He="securitypolicyviolation",Xe=function($e){var nt=new URL(me,location.href),tt=$e.blockedURI;tt!==nt.href&&tt!==nt.protocol.slice(0,-1)&&tt!==nt.origin||(Je=$e,Ke())};Ge.addEventListener(He,Xe);var Ke=function(){return Ge.removeEventListener(He,Xe)};return Ze==null||Ze.then(Ke,Ke),Promise.resolve().then(Ue).then(function($e){return Ke(),$e},function($e){return new Promise(function(nt){return setTimeout(nt)}).then(function(){if(Ke(),Je)return Qe(Je);throw $e})})}(ue,function(){return function(me){return new Promise(function(Ue,Qe){var Ze=document.createElement("script"),Je=function(){var He;return(He=Ze.parentNode)===null||He===void 0?void 0:He.removeChild(Ze)},Ge=document.head||document.getElementsByTagName("head")[0];Ze.onload=function(){Je(),Ue()},Ze.onerror=function(){Je(),Qe(new Error(M))},Ze.async=!0,Ze.src=me,Ge.appendChild(Ze)})}(ue)},function(){throw new Error(E)}).then(V)}function V(){var ue=window,me="__fpjs_p_l_b",Ue=ue[me];if(function(Qe,Ze){var Je,Ge=(Je=Object.getOwnPropertyDescriptor)===null||Je===void 0?void 0:Je.call(Object,Qe,Ze);Ge!=null&&Ge.configurable?delete Qe[Ze]:Ge&&!Ge.writable||(Qe[Ze]=void 0)}(ue,me),typeof(Ue==null?void 0:Ue.load)!="function")throw new Error(b);return Ue}var k={load:B,defaultScriptUrlPattern:K,ERROR_SCRIPT_LOAD_FAIL:M,ERROR_API_KEY_EXPIRED:N,ERROR_API_KEY_INVALID:h,ERROR_API_KEY_MISSING:I,ERROR_BAD_REQUEST_FORMAT:T,ERROR_BAD_RESPONSE_FORMAT:s,ERROR_CLIENT_TIMEOUT:a,ERROR_CSP_BLOCK:E,ERROR_FORBIDDEN_ENDPOINT:v,ERROR_FORBIDDEN_HEADER:y,ERROR_FORBIDDEN_ORIGIN:P,ERROR_GENERAL_SERVER_FAILURE:m,ERROR_INSTALLATION_METHOD_RESTRICTED:p,ERROR_INTEGRATION_FAILURE:O,ERROR_INVALID_ENDPOINT:f,ERROR_NETWORK_ABORT:c,ERROR_NETWORK_CONNECTION:R,ERROR_RATE_LIMIT:A,ERROR_SERVER_TIMEOUT:w,ERROR_SUBSCRIPTION_NOT_ACTIVE:l,ERROR_TOKEN_EXPIRED:L,ERROR_TOKEN_INVALID:S,ERROR_TOKEN_MISSING:D,ERROR_UNSUPPORTED_VERSION:_,ERROR_WRONG_REGION:d,defaultEndpoint:i$1,defaultTlsEndpoint:u};let fingerprintApiKey;function setFingerprintApiKey(ue){fingerprintApiKey=ue}async function getFingerPrint(){return k.load({token:fingerprintApiKey,endpoint:"https://fingerprint.incodesmile.com",scriptUrlPattern:"https://fingerprint.incodesmile.com/web/v<version>/<apiKey>/loader_v<loaderVersion>.js"}).then(ue=>ue.get({extendedResult:!0}))}const fingerPrintUrl="/omni/add/device-fingerprint";function postFingerprint({hash:ue,ip:me,deviceType:Ue,token:Qe,data:Ze,osVersion:Je,deviceModel:Ge,browser:He,sdkVersion:Xe,hasLiedBrowser:Ke,hostingApp:$e,ipLocation:nt}){return exports.api.post(fingerPrintUrl,{hash:ue,ip:me,deviceType:Ue,data:Ze,osVersion:Je,deviceModel:Ge,browser:He,hasLiedBrowser:Ke,sdkVersion:Xe,hostingApp:$e,ipLocation:nt},{headers:{"X-Incode-Hardware-Id":Qe}}).then(tt=>tt.data).catch(tt=>Promise.reject(tt.response.data))}function formatDeviceModel({vendor:ue,model:me}){return`${ue||""} ${me||""}`.trim()}const emptyFingerprint={visitorId:void 0,ip:void 0,ipLocation:{country:{name:void 0},subdivisions:[],city:{name:void 0},latitude:void 0,longitude:void 0}};async function sendFingerprint({token:ue},me=!0,Ue=!0){var Xe,Ke,$e;const Qe="WEBAPP",{os:Ze,device:Je,browser:Ge}=getUAParserResults(),He=Ue?await getFingerPrint().catch(nt=>(addEvent({code:"fingerprintFetchFailed",payload:{message:nt.message},token:ue}),emptyFingerprint)):emptyFingerprint;return postFingerprint({hash:He.visitorId||"",ip:me&&He.ip||"",deviceType:Qe,token:ue,data:JSON.stringify(He),osVersion:`${Ze.name} ${Ze.version}`,deviceModel:formatDeviceModel(Je),browser:`${Ge.name} ${Ge.version}`,hasLiedBrowser:isBrowserSimulation(),hostingApp:options.hostingApp,sdkVersion:version,ipLocation:{ipCountry:(Xe=He.ipLocation.country)==null?void 0:Xe.name,ipRegion:(Ke=He.ipLocation.subdivisions)==null?void 0:Ke[0].name,ipCity:($e=He.ipLocation.city)==null?void 0:$e.name,ipLatitude:He.ipLocation.latitude,ipLongitude:He.ipLocation.longitude}}).then(nt=>(emptyDeviceStatsQueue(ue),nt))}function mapI18nLang(ue){const me={en:"en-US",es:"es-ES",pt:"pt-BR"},Ue=ue==null?void 0:ue.substring(0,2);return me[Ue]||"en-US"}const createSessionUrl="/omni/start";async function createNewSession({externalId:ue,externalCustomerId:me,configurationId:Ue,uuid:Qe,interviewId:Ze,customFields:Je,language:Ge}={}){const He=Ge||mapI18nLang(i18nInstance.language);try{const Xe=await exports.api.post(createSessionUrl,{externalId:ue,externalCustomerId:me,configurationId:Ue,uuid:Qe,interviewId:Ze,customFields:Je,language:He});state.token=Xe.data;const Ke=Xe.data;emptyQueue(Ke.token);const $e=await sendFingerprint({token:Ke.token,interviewId:Ke.interviewId}).catch(()=>({regulationType:"",showMandatoryConsent:!1}));Ke.regulationType=$e.regulationType??"",Ke.showMandatoryConsent=$e.showMandatoryConsent??!1;const tt=new UAParser().getResult();return addEvent({code:"browser",payload:{userAgent:window.navigator.userAgent,isWebRtcSupported:isWebRtcSupported(),...tt},token:Ke.token}),Ke}catch(Xe){throw Xe!=null&&Xe.response?Xe.response.data:Xe}}const createRedirectUrl=async({session:ue})=>{const{url:me}=await exports.api.get("/omni/onboarding-url",{params:{clientId:ue.clientId},headers:{"X-Incode-Hardware-Id":ue.token}}).then(Ue=>Ue.data);return me};async function createSession$4(ue,me,{externalCustomerId:Ue,configurationId:Qe,uuid:Ze,interviewId:Je,customFields:Ge,language:He}={}){return createNewSession({externalId:me,externalCustomerId:Ue,configurationId:Qe,uuid:Ze,interviewId:Je,customFields:Ge,language:He})}var isHTMLElement=ue=>ue instanceof HTMLElement;const EVENTS={BLUR:"blur",CHANGE:"change",INPUT:"input"},VALIDATION_MODE={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},SELECT="select",UNDEFINED="undefined",INPUT_VALIDATION_RULES={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"};function attachEventListeners({ref:ue},me,Ue){isHTMLElement(ue)&&Ue&&(ue.addEventListener(me?EVENTS.CHANGE:EVENTS.INPUT,Ue),ue.addEventListener(EVENTS.BLUR,Ue))}var isNullOrUndefined=ue=>ue==null;const isObjectType=ue=>typeof ue=="object";var isObject$4=ue=>!isNullOrUndefined(ue)&&!Array.isArray(ue)&&isObjectType(ue)&&!(ue instanceof Date),isKey=ue=>/^\w*$/.test(ue),compact=ue=>ue.filter(Boolean),stringToPath=ue=>compact(ue.replace(/["|']/g,"").replace(/\[/g,".").replace(/\]/g,"").split("."));function set(ue,me,Ue){let Qe=-1;const Ze=isKey(me)?[me]:stringToPath(me),Je=Ze.length,Ge=Je-1;for(;++Qe<Je;){const He=Ze[Qe];let Xe=Ue;if(Qe!==Ge){const Ke=ue[He];Xe=isObject$4(Ke)||Array.isArray(Ke)?Ke:isNaN(+Ze[Qe+1])?{}:[]}ue[He]=Xe,ue=ue[He]}return ue}var transformToNestObject=(ue,me={})=>{for(const Ue in ue)isKey(Ue)?me[Ue]=ue[Ue]:set(me,Ue,ue[Ue]);return me},isUndefined$1=ue=>ue===void 0,get=(ue={},me,Ue)=>{const Qe=compact(me.split(/[,[\].]+?/)).reduce((Ze,Je)=>isNullOrUndefined(Ze)?Ze:Ze[Je],ue);return isUndefined$1(Qe)||Qe===ue?isUndefined$1(ue[me])?Ue:ue[me]:Qe},focusOnErrorField=(ue,me)=>{for(const Ue in ue)if(get(me,Ue)){const Qe=ue[Ue];if(Qe){if(Qe.ref.focus&&isUndefined$1(Qe.ref.focus()))break;if(Qe.options){Qe.options[0].ref.focus();break}}}},removeAllEventListeners=(ue,me)=>{isHTMLElement(ue)&&ue.removeEventListener&&(ue.removeEventListener(EVENTS.INPUT,me),ue.removeEventListener(EVENTS.CHANGE,me),ue.removeEventListener(EVENTS.BLUR,me))};const defaultReturn={isValid:!1,value:null};var getRadioValue=ue=>Array.isArray(ue)?ue.reduce((me,Ue)=>Ue&&Ue.ref.checked?{isValid:!0,value:Ue.ref.value}:me,defaultReturn):defaultReturn,getMultipleSelectValue=ue=>[...ue].filter(({selected:me})=>me).map(({value:me})=>me),isRadioInput=ue=>ue.type==="radio",isFileInput=ue=>ue.type==="file",isCheckBoxInput=ue=>ue.type==="checkbox",isMultipleSelect=ue=>ue.type===`${SELECT}-multiple`;const defaultResult={value:!1,isValid:!1},validResult={value:!0,isValid:!0};var getCheckboxValue=ue=>{if(Array.isArray(ue)){if(ue.length>1){const Ze=ue.filter(Je=>Je&&Je.ref.checked).map(({ref:{value:Je}})=>Je);return{value:Ze,isValid:!!Ze.length}}const{checked:me,value:Ue,attributes:Qe}=ue[0].ref;return me?Qe&&!isUndefined$1(Qe.value)?isUndefined$1(Ue)||Ue===""?validResult:{value:Ue,isValid:!0}:validResult:defaultResult}return defaultResult};function getFieldValue(ue,me,Ue,Qe,Ze){const Je=ue.current[me];if(Je){const{ref:{value:Ge,disabled:He},ref:Xe,valueAsNumber:Ke,valueAsDate:$e,setValueAs:nt}=Je;return He&&Qe?void 0:isFileInput(Xe)?Xe.files:isRadioInput(Xe)?getRadioValue(Je.options).value:isMultipleSelect(Xe)?getMultipleSelectValue(Xe.options):isCheckBoxInput(Xe)?getCheckboxValue(Je.options).value:Ze?Ge:Ke?Ge===""?NaN:+Ge:$e?Xe.valueAsDate:nt?nt(Ge):Ge}if(Ue)return get(Ue.current,me)}function isDetached(ue){return ue?!(ue instanceof HTMLElement)||ue.nodeType===Node.DOCUMENT_NODE?!1:isDetached(ue.parentNode):!0}var isEmptyObject=ue=>isObject$4(ue)&&!Object.keys(ue).length,isBoolean=ue=>typeof ue=="boolean";function baseGet(ue,me){const Ue=me.slice(0,-1).length;let Qe=0;for(;Qe<Ue;)ue=isUndefined$1(ue)?Qe++:ue[me[Qe++]];return ue}function unset(ue,me){const Ue=isKey(me)?[me]:stringToPath(me),Qe=Ue.length==1?ue:baseGet(ue,Ue),Ze=Ue[Ue.length-1];let Je;Qe&&delete Qe[Ze];for(let Ge=0;Ge<Ue.slice(0,-1).length;Ge++){let He=-1,Xe;const Ke=Ue.slice(0,-(Ge+1)),$e=Ke.length-1;for(Ge>0&&(Je=ue);++He<Ke.length;){const nt=Ke[He];Xe=Xe?Xe[nt]:ue[nt],$e===He&&(isObject$4(Xe)&&isEmptyObject(Xe)||Array.isArray(Xe)&&!Xe.filter(tt=>isObject$4(tt)&&!isEmptyObject(tt)||isBoolean(tt)).length)&&(Je?delete Je[nt]:delete ue[nt]),Je=Xe}}return ue}const isSameRef=(ue,me)=>ue&&ue.ref===me;function findRemovedFieldAndRemoveListener(ue,me,Ue,Qe,Ze,Je){const{ref:Ge,ref:{name:He}}=Ue,Xe=ue.current[He];if(!Ze){const Ke=getFieldValue(ue,He,Qe);!isUndefined$1(Ke)&&set(Qe.current,He,Ke)}if(!Ge.type||!Xe){delete ue.current[He];return}isRadioInput(Ge)||isCheckBoxInput(Ge)?Array.isArray(Xe.options)&&Xe.options.length?(compact(Xe.options).forEach((Ke={},$e)=>{(isDetached(Ke.ref)&&isSameRef(Ke,Ke.ref)||Je)&&(removeAllEventListeners(Ke.ref,me),unset(Xe.options,`[${$e}]`))}),Xe.options&&!compact(Xe.options).length&&delete ue.current[He]):delete ue.current[He]:(isDetached(Ge)&&isSameRef(Xe,Ge)||Je)&&(removeAllEventListeners(Ge,me),delete ue.current[He])}var isPrimitive=ue=>isNullOrUndefined(ue)||!isObjectType(ue);function deepMerge(ue,me){if(isPrimitive(ue)||isPrimitive(me))return me;for(const Ue in me){const Qe=ue[Ue],Ze=me[Ue];try{ue[Ue]=isObject$4(Qe)&&isObject$4(Ze)||Array.isArray(Qe)&&Array.isArray(Ze)?deepMerge(Qe,Ze):Ze}catch{}}return ue}function deepEqual(ue,me,Ue){if(isPrimitive(ue)||isPrimitive(me)||ue instanceof Date||me instanceof Date)return ue===me;if(!React$1.isValidElement(ue)){const Qe=Object.keys(ue),Ze=Object.keys(me);if(Qe.length!==Ze.length)return!1;for(const Je of Qe){const Ge=ue[Je];if(!(Ue&&Je==="ref")){const He=me[Je];if((isObject$4(Ge)||Array.isArray(Ge))&&(isObject$4(He)||Array.isArray(He))?!deepEqual(Ge,He,Ue):Ge!==He)return!1}}}return!0}function setDirtyFields(ue,me,Ue,Qe,Ze){let Je=-1;for(;++Je<ue.length;){for(const Ge in ue[Je])Array.isArray(ue[Je][Ge])?(!Ue[Je]&&(Ue[Je]={}),Ue[Je][Ge]=[],setDirtyFields(ue[Je][Ge],get(me[Je]||{},Ge,[]),Ue[Je][Ge],Ue[Je],Ge)):deepEqual(get(me[Je]||{},Ge),ue[Je][Ge])?set(Ue[Je]||{},Ge):Ue[Je]=Object.assign(Object.assign({},Ue[Je]),{[Ge]:!0});Qe&&!Ue.length&&delete Qe[Ze]}return Ue}var setFieldArrayDirtyFields=(ue,me,Ue)=>deepMerge(setDirtyFields(ue,me,Ue.slice(0,ue.length)),setDirtyFields(me,ue,Ue.slice(0,ue.length))),isString$2=ue=>typeof ue=="string",getFieldsValues=(ue,me,Ue,Qe,Ze)=>{const Je={};for(const Ge in ue.current)(isUndefined$1(Ze)||(isString$2(Ze)?Ge.startsWith(Ze):Array.isArray(Ze)&&Ze.find(He=>Ge.startsWith(He))))&&(Je[Ge]=getFieldValue(ue,Ge,void 0,Qe));return Ue?transformToNestObject(Je):deepMerge(me,transformToNestObject(Je))},isErrorStateChanged=({errors:ue,name:me,error:Ue,validFields:Qe,fieldsWithValidation:Ze})=>{const Je=isUndefined$1(Ue),Ge=get(ue,me);return Je&&!!Ge||!Je&&!deepEqual(Ge,Ue,!0)||Je&&get(Ze,me)&&!get(Qe,me)},isRegex=ue=>ue instanceof RegExp,getValueAndMessage=ue=>isObject$4(ue)&&!isRegex(ue)?ue:{value:ue,message:""},isFunction$1=ue=>typeof ue=="function",isMessage=ue=>isString$2(ue)||React$1.isValidElement(ue);function getValidateError(ue,me,Ue="validate"){if(isMessage(ue)||isBoolean(ue)&&!ue)return{type:Ue,message:isMessage(ue)?ue:"",ref:me}}var appendErrors=(ue,me,Ue,Qe,Ze)=>me?Object.assign(Object.assign({},Ue[ue]),{types:Object.assign(Object.assign({},Ue[ue]&&Ue[ue].types?Ue[ue].types:{}),{[Qe]:Ze||!0})}):{},validateField=async(ue,me,{ref:Ue,ref:{value:Qe},options:Ze,required:Je,maxLength:Ge,minLength:He,min:Xe,max:Ke,pattern:$e,validate:nt},tt)=>{const et=Ue.name,rt={},at=isRadioInput(Ue),it=isCheckBoxInput(Ue),ot=at||it,st=Qe==="",ut=appendErrors.bind(null,et,me,rt),ct=(dt,pt,ht,gt=INPUT_VALIDATION_RULES.maxLength,Mt=INPUT_VALIDATION_RULES.minLength)=>{const St=dt?pt:ht;rt[et]=Object.assign({type:dt?gt:Mt,message:St,ref:Ue},ut(dt?gt:Mt,St))};if(Je&&(!at&&!it&&(st||isNullOrUndefined(Qe))||isBoolean(Qe)&&!Qe||it&&!getCheckboxValue(Ze).isValid||at&&!getRadioValue(Ze).isValid)){const{value:dt,message:pt}=isMessage(Je)?{value:!!Je,message:Je}:getValueAndMessage(Je);if(dt&&(rt[et]=Object.assign({type:INPUT_VALIDATION_RULES.required,message:pt,ref:ot?((ue.current[et].options||[])[0]||{}).ref:Ue},ut(INPUT_VALIDATION_RULES.required,pt)),!me))return rt}if((!isNullOrUndefined(Xe)||!isNullOrUndefined(Ke))&&Qe!==""){let dt,pt;const ht=getValueAndMessage(Ke),gt=getValueAndMessage(Xe);if(isNaN(Qe)){const Mt=Ue.valueAsDate||new Date(Qe);isString$2(ht.value)&&(dt=Mt>new Date(ht.value)),isString$2(gt.value)&&(pt=Mt<new Date(gt.value))}else{const Mt=Ue.valueAsNumber||parseFloat(Qe);isNullOrUndefined(ht.value)||(dt=Mt>ht.value),isNullOrUndefined(gt.value)||(pt=Mt<gt.value)}if((dt||pt)&&(ct(!!dt,ht.message,gt.message,INPUT_VALIDATION_RULES.max,INPUT_VALIDATION_RULES.min),!me))return rt}if(isString$2(Qe)&&!st&&(Ge||He)){const dt=getValueAndMessage(Ge),pt=getValueAndMessage(He),ht=!isNullOrUndefined(dt.value)&&Qe.length>dt.value,gt=!isNullOrUndefined(pt.value)&&Qe.length<pt.value;if((ht||gt)&&(ct(ht,dt.message,pt.message),!me))return rt}if(isString$2(Qe)&&$e&&!st){const{value:dt,message:pt}=getValueAndMessage($e);if(isRegex(dt)&&!dt.test(Qe)&&(rt[et]=Object.assign({type:INPUT_VALIDATION_RULES.pattern,message:pt,ref:Ue},ut(INPUT_VALIDATION_RULES.pattern,pt)),!me))return rt}if(nt){const dt=getFieldValue(ue,et,tt,!1,!0),pt=ot&&Ze?Ze[0].ref:Ue;if(isFunction$1(nt)){const ht=await nt(dt),gt=getValidateError(ht,pt);if(gt&&(rt[et]=Object.assign(Object.assign({},gt),ut(INPUT_VALIDATION_RULES.validate,gt.message)),!me))return rt}else if(isObject$4(nt)){let ht={};for(const[gt,Mt]of Object.entries(nt)){if(!isEmptyObject(ht)&&!me)break;const St=await Mt(dt),Dt=getValidateError(St,pt,gt);Dt&&(ht=Object.assign(Object.assign({},Dt),ut(gt,Dt.message)),me&&(rt[et]=ht))}if(!isEmptyObject(ht)&&(rt[et]=Object.assign({ref:pt},ht),!me))return rt}}return rt};const getPath=(ue,me,Ue=[])=>{for(const Qe in me){const Ze=ue+(isObject$4(me)?`.${Qe}`:`[${Qe}]`);isPrimitive(me[Qe])?Ue.push(Ze):getPath(Ze,me[Qe],Ue)}return Ue};var assignWatchFields=(ue,me,Ue,Qe,Ze)=>{let Je;return Ue.add(me),isEmptyObject(ue)||(Je=get(ue,me),(isObject$4(Je)||Array.isArray(Je))&&getPath(me,Je).forEach(Ge=>Ue.add(Ge))),isUndefined$1(Je)?Ze?Qe:get(Qe,me):Je},skipValidation=({isOnBlur:ue,isOnChange:me,isOnTouch:Ue,isTouched:Qe,isReValidateOnBlur:Ze,isReValidateOnChange:Je,isBlurEvent:Ge,isSubmitted:He,isOnAll:Xe})=>Xe?!1:!He&&Ue?!(Qe||Ge):(He?Ze:ue)?!Ge:(He?Je:me)?Ge:!0,getFieldArrayParentName=ue=>ue.substring(0,ue.indexOf("["));const isMatchFieldArrayName=(ue,me)=>RegExp(`^${me}([|.)\\d+`.replace(/\[/g,"\\[").replace(/\]/g,"\\]")).test(ue);var isNameInFieldArray=(ue,me)=>[...ue].some(Ue=>isMatchFieldArrayName(me,Ue)),isSelectInput=ue=>ue.type===`${SELECT}-one`;function onDomRemove(ue,me){const Ue=new MutationObserver(()=>{for(const Qe of Object.values(ue.current))if(Qe&&Qe.options)for(const Ze of Qe.options)Ze&&Ze.ref&&isDetached(Ze.ref)&&me(Qe);else Qe&&isDetached(Qe.ref)&&me(Qe)});return Ue.observe(window.document,{childList:!0,subtree:!0}),Ue}var isWeb=typeof window!==UNDEFINED&&typeof document!==UNDEFINED;function cloneObject(ue){var me;let Ue;if(isPrimitive(ue)||isWeb&&(ue instanceof File||isHTMLElement(ue))||!["Set","Map","Object","Date","Array"].includes((me=ue.constructor)===null||me===void 0?void 0:me.name))return ue;if(ue instanceof Date)return Ue=new Date(ue.getTime()),Ue;if(ue instanceof Set){Ue=new Set;for(const Qe of ue)Ue.add(Qe);return Ue}if(ue instanceof Map){Ue=new Map;for(const Qe of ue.keys())Ue.set(Qe,cloneObject(ue.get(Qe)));return Ue}Ue=Array.isArray(ue)?[]:{};for(const Qe in ue)Ue[Qe]=cloneObject(ue[Qe]);return Ue}var modeChecker=ue=>({isOnSubmit:!ue||ue===VALIDATION_MODE.onSubmit,isOnBlur:ue===VALIDATION_MODE.onBlur,isOnChange:ue===VALIDATION_MODE.onChange,isOnAll:ue===VALIDATION_MODE.all,isOnTouch:ue===VALIDATION_MODE.onTouched}),isRadioOrCheckboxFunction=ue=>isRadioInput(ue)||isCheckBoxInput(ue);const isWindowUndefined=typeof window===UNDEFINED,isProxyEnabled=isWeb?"Proxy"in window:typeof Proxy!==UNDEFINED;function useForm({mode:ue=VALIDATION_MODE.onSubmit,reValidateMode:me=VALIDATION_MODE.onChange,resolver:Ue,context:Qe,defaultValues:Ze={},shouldFocusError:Je=!0,shouldUnregister:Ge=!0,criteriaMode:He}={}){const Xe=React$1.useRef({}),Ke=React$1.useRef({}),$e=React$1.useRef({}),nt=React$1.useRef(new Set),tt=React$1.useRef({}),et=React$1.useRef({}),rt=React$1.useRef({}),at=React$1.useRef({}),it=React$1.useRef(Ze),ot=React$1.useRef(!1),st=React$1.useRef(!1),ut=React$1.useRef(),ct=React$1.useRef({}),dt=React$1.useRef({}),pt=React$1.useRef(Qe),ht=React$1.useRef(Ue),gt=React$1.useRef(new Set),Mt=React$1.useRef(modeChecker(ue)),{isOnSubmit:St,isOnTouch:Dt}=Mt.current,yt=He===VALIDATION_MODE.all,[Tt,mt]=React$1.useState({isDirty:!1,isValidating:!1,dirtyFields:{},isSubmitted:!1,submitCount:0,touched:{},isSubmitting:!1,isSubmitSuccessful:!1,isValid:!St,errors:{}}),Rt=React$1.useRef({isDirty:!isProxyEnabled,dirtyFields:!isProxyEnabled,touched:!isProxyEnabled||Dt,isValidating:!isProxyEnabled,isSubmitting:!isProxyEnabled,isValid:!isProxyEnabled}),Ut=React$1.useRef(Tt),It=React$1.useRef(),{isOnBlur:Et,isOnChange:bt}=React$1.useRef(modeChecker(me)).current;pt.current=Qe,ht.current=Ue,Ut.current=Tt,ct.current=Ge?{}:isEmptyObject(ct.current)?cloneObject(Ze):ct.current;const vt=React$1.useCallback((Ht={})=>{ot.current||(Ut.current=Object.assign(Object.assign({},Ut.current),Ht),mt(Ut.current))},[]),xt=()=>Rt.current.isValidating&&vt({isValidating:!0}),Bt=React$1.useCallback((Ht,$t,nn=!1,sn={},rn)=>{let hn=nn||isErrorStateChanged({errors:Ut.current.errors,error:$t,name:Ht,validFields:at.current,fieldsWithValidation:rt.current});const Nn=get(Ut.current.errors,Ht);$t?(unset(at.current,Ht),hn=hn||!Nn||!deepEqual(Nn,$t,!0),set(Ut.current.errors,Ht,$t)):((get(rt.current,Ht)||ht.current)&&(set(at.current,Ht,!0),hn=hn||Nn),unset(Ut.current.errors,Ht)),(hn&&!isNullOrUndefined(nn)||!isEmptyObject(sn)||Rt.current.isValidating)&&vt(Object.assign(Object.assign(Object.assign({},sn),ht.current?{isValid:!!rn}:{}),{isValidating:!1}))},[]),Ct=React$1.useCallback((Ht,$t)=>{const{ref:nn,options:sn}=Xe.current[Ht],rn=isWeb&&isHTMLElement(nn)&&isNullOrUndefined($t)?"":$t;isRadioInput(nn)?(sn||[]).forEach(({ref:hn})=>hn.checked=hn.value===rn):isFileInput(nn)&&!isString$2(rn)?nn.files=rn:isMultipleSelect(nn)?[...nn.options].forEach(hn=>hn.selected=rn.includes(hn.value)):isCheckBoxInput(nn)&&sn?sn.length>1?sn.forEach(({ref:hn})=>hn.checked=Array.isArray(rn)?!!rn.find(Nn=>Nn===hn.value):rn===hn.value):sn[0].ref.checked=!!rn:nn.value=rn},[]),Zt=React$1.useCallback((Ht,$t)=>{if(Rt.current.isDirty){const nn=kt();return Ht&&$t&&set(nn,Ht,$t),!deepEqual(nn,it.current)}return!1},[]),Wt=React$1.useCallback((Ht,$t=!0)=>{if(Rt.current.isDirty||Rt.current.dirtyFields){const nn=!deepEqual(get(it.current,Ht),getFieldValue(Xe,Ht,ct)),sn=get(Ut.current.dirtyFields,Ht),rn=Ut.current.isDirty;nn?set(Ut.current.dirtyFields,Ht,!0):unset(Ut.current.dirtyFields,Ht);const hn={isDirty:Zt(),dirtyFields:Ut.current.dirtyFields},Nn=Rt.current.isDirty&&rn!==hn.isDirty||Rt.current.dirtyFields&&sn!==get(Ut.current.dirtyFields,Ht);return Nn&&$t&&vt(hn),Nn?hn:{}}return{}},[]),Ot=React$1.useCallback(async(Ht,$t)=>{if(process.env.NODE_ENV!=="production"&&!Xe.current[Ht])return console.warn("📋 Field is missing with `name` attribute: ",Ht),!1;const nn=(await validateField(Xe,yt,Xe.current[Ht],ct))[Ht];return Bt(Ht,nn,$t),isUndefined$1(nn)},[Bt,yt]),Xt=React$1.useCallback(async Ht=>{const{errors:$t}=await ht.current(kt(),pt.current,yt),nn=Ut.current.isValid;if(Array.isArray(Ht)){const sn=Ht.map(rn=>{const hn=get($t,rn);return hn?set(Ut.current.errors,rn,hn):unset(Ut.current.errors,rn),!hn}).every(Boolean);return vt({isValid:isEmptyObject($t),isValidating:!1}),sn}else{const sn=get($t,Ht);return Bt(Ht,sn,nn!==isEmptyObject($t),{},isEmptyObject($t)),!sn}},[Bt,yt]),Kt=React$1.useCallback(async Ht=>{const $t=Ht||Object.keys(Xe.current);if(xt(),ht.current)return Xt($t);if(Array.isArray($t)){!Ht&&(Ut.current.errors={});const nn=await Promise.all($t.map(async sn=>await Ot(sn,null)));return vt({isValidating:!1}),nn.every(Boolean)}return await Ot($t)},[Xt,Ot]),Jt=React$1.useCallback((Ht,$t,{shouldDirty:nn,shouldValidate:sn})=>{const rn={};set(rn,Ht,$t);for(const hn of getPath(Ht,$t))Xe.current[hn]&&(Ct(hn,get(rn,hn)),nn&&Wt(hn),sn&&Kt(hn))},[Kt,Ct,Wt]),jt=React$1.useCallback((Ht,$t,nn)=>{if(!Ge&&!isPrimitive($t)&&set(ct.current,Ht,Array.isArray($t)?[...$t]:Object.assign({},$t)),Xe.current[Ht])Ct(Ht,$t),nn.shouldDirty&&Wt(Ht),nn.shouldValidate&&Kt(Ht);else if(!isPrimitive($t)&&(Jt(Ht,$t,nn),gt.current.has(Ht))){const sn=getFieldArrayParentName(Ht)||Ht;set(Ke.current,Ht,$t),dt.current[sn]({[sn]:get(Ke.current,sn)}),(Rt.current.isDirty||Rt.current.dirtyFields)&&nn.shouldDirty&&(set(Ut.current.dirtyFields,Ht,setFieldArrayDirtyFields($t,get(it.current,Ht,[]),get(Ut.current.dirtyFields,Ht,[]))),vt({isDirty:!deepEqual(Object.assign(Object.assign({},kt()),{[Ht]:$t}),it.current)}))}!Ge&&set(ct.current,Ht,$t)},[Wt,Ct,Jt]),Ft=Ht=>st.current||nt.current.has(Ht)||nt.current.has((Ht.match(/\w+/)||[])[0]),lt=Ht=>{let $t=!0;if(!isEmptyObject(tt.current))for(const nn in tt.current)(!Ht||!tt.current[nn].size||tt.current[nn].has(Ht)||tt.current[nn].has(getFieldArrayParentName(Ht)))&&(et.current[nn](),$t=!1);return $t};function At(Ht,$t,nn){jt(Ht,$t,nn||{}),Ft(Ht)&&vt(),lt(Ht)}ut.current=ut.current?ut.current:async({type:Ht,target:$t})=>{let nn=$t.name;const sn=Xe.current[nn];let rn,hn;if(sn){const Nn=Ht===EVENTS.BLUR,En=skipValidation(Object.assign({isBlurEvent:Nn,isReValidateOnChange:bt,isReValidateOnBlur:Et,isTouched:!!get(Ut.current.touched,nn),isSubmitted:Ut.current.isSubmitted},Mt.current));let Cn=Wt(nn,!1),zn=!isEmptyObject(Cn)||!Nn&&Ft(nn);if(Nn&&!get(Ut.current.touched,nn)&&Rt.current.touched&&(set(Ut.current.touched,nn,!0),Cn=Object.assign(Object.assign({},Cn),{touched:Ut.current.touched})),!Ge&&isCheckBoxInput($t)&&set(ct.current,nn,getFieldValue(Xe,nn)),En)return!Nn&&lt(nn),(!isEmptyObject(Cn)||zn&&isEmptyObject(Cn))&&vt(Cn);if(xt(),ht.current){const{errors:jn}=await ht.current(kt(),pt.current,yt),Qn=Ut.current.isValid;if(rn=get(jn,nn),isCheckBoxInput($t)&&!rn&&ht.current){const Hn=getFieldArrayParentName(nn),wn=get(jn,Hn,{});wn.type&&wn.message&&(rn=wn),Hn&&(wn||get(Ut.current.errors,Hn))&&(nn=Hn)}hn=isEmptyObject(jn),Qn!==hn&&(zn=!0)}else rn=(await validateField(Xe,yt,sn,ct))[nn];!Nn&&lt(nn),Bt(nn,rn,zn,Cn,hn)}};function Qt(Ht){if(!Ge){let $t=cloneObject(Ht);for(const nn of gt.current)isKey(nn)&&!$t[nn]&&($t=Object.assign(Object.assign({},$t),{[nn]:[]}));return $t}return Ht}function kt(Ht){if(isString$2(Ht))return getFieldValue(Xe,Ht,ct);if(Array.isArray(Ht)){const $t={};for(const nn of Ht)set($t,nn,getFieldValue(Xe,nn,ct));return $t}return Qt(getFieldsValues(Xe,cloneObject(ct.current),Ge))}const zt=React$1.useCallback(async(Ht={})=>{const $t=isEmptyObject(Xe.current)?it.current:{},{errors:nn}=await ht.current(Object.assign(Object.assign(Object.assign({},$t),kt()),Ht),pt.current,yt)||{},sn=isEmptyObject(nn);Ut.current.isValid!==sn&&vt({isValid:sn})},[yt]),Yt=React$1.useCallback((Ht,$t)=>{findRemovedFieldAndRemoveListener(Xe,ut.current,Ht,ct,Ge,$t),Ge&&(unset(at.current,Ht.ref.name),unset(rt.current,Ht.ref.name))},[Ge]),_t=React$1.useCallback(Ht=>{if(st.current)vt();else{for(const $t of nt.current)if($t.startsWith(Ht)){vt();break}lt(Ht)}},[]),Pt=React$1.useCallback((Ht,$t)=>{Ht&&(Yt(Ht,$t),Ge&&!compact(Ht.options||[]).length&&(unset(Ut.current.errors,Ht.ref.name),set(Ut.current.dirtyFields,Ht.ref.name,!0),vt({isDirty:Zt()}),Rt.current.isValid&&ht.current&&zt(),_t(Ht.ref.name)))},[zt,Yt]);function ln(Ht){Ht&&(Array.isArray(Ht)?Ht:[Ht]).forEach($t=>Xe.current[$t]&&isKey($t)?delete Ut.current.errors[$t]:unset(Ut.current.errors,$t)),vt({errors:Ht?Ut.current.errors:{}})}function cn(Ht,$t){const nn=(Xe.current[Ht]||{}).ref;set(Ut.current.errors,Ht,Object.assign(Object.assign({},$t),{ref:nn})),vt({isValid:!1}),$t.shouldFocus&&nn&&nn.focus&&nn.focus()}const pn=React$1.useCallback((Ht,$t,nn)=>{const sn=nn?tt.current[nn]:nt.current;let rn=getFieldsValues(Xe,cloneObject(ct.current),Ge,!1,Ht);if(isString$2(Ht)){const Nn=getFieldArrayParentName(Ht)||Ht;return gt.current.has(Nn)&&(rn=Object.assign(Object.assign({},$e.current),rn)),assignWatchFields(rn,Ht,sn,isUndefined$1(get(it.current,Ht))?$t:get(it.current,Ht),!0)}const hn=isUndefined$1($t)?it.current:$t;return Array.isArray(Ht)?Ht.reduce((Nn,En)=>Object.assign(Object.assign({},Nn),{[En]:assignWatchFields(rn,En,sn,hn)}),{}):(st.current=isUndefined$1(nn),transformToNestObject(!isEmptyObject(rn)&&rn||hn))},[]);function yn(Ht,$t){return pn(Ht,$t)}function Tn(Ht){for(const $t of Array.isArray(Ht)?Ht:[Ht])Pt(Xe.current[$t],!0)}function on(Ht,$t={}){if(process.env.NODE_ENV!=="production"){if(!Ht.name)return console.warn("📋 Field is missing `name` attribute",Ht,"https://react-hook-form.com/api#useForm");if(gt.current.has(Ht.name.split(/\[\d+\]$/)[0])&&!RegExp(`^${Ht.name.split(/\[\d+\]$/)[0]}[\\d+].\\w+`.replace(/\[/g,"\\[").replace(/\]/g,"\\]")).test(Ht.name))return console.warn('📋 `name` prop should be in object shape: name="test[index].name"',Ht,"https://react-hook-form.com/api#useFieldArray")}const{name:nn,type:sn,value:rn}=Ht,hn=Object.assign({ref:Ht},$t),Nn=Xe.current,En=isRadioOrCheckboxFunction(Ht),Cn=isNameInFieldArray(gt.current,nn),zn=xn=>isWeb&&(!isHTMLElement(Ht)||xn===Ht);let jn=Nn[nn],Qn=!0,Hn;if(jn&&(En?Array.isArray(jn.options)&&compact(jn.options).find(xn=>rn===xn.ref.value&&zn(xn.ref)):zn(jn.ref))){Nn[nn]=Object.assign(Object.assign({},jn),$t);return}sn?jn=En?Object.assign({options:[...compact(jn&&jn.options||[]),{ref:Ht}],ref:{type:sn,name:nn}},$t):Object.assign({},hn):jn=hn,Nn[nn]=jn;const wn=isUndefined$1(get(ct.current,nn));(!isEmptyObject(it.current)||!wn)&&(Hn=get(wn?it.current:ct.current,nn),Qn=isUndefined$1(Hn),!Qn&&!Cn&&Ct(nn,Hn)),isEmptyObject($t)||(set(rt.current,nn,!0),!St&&Rt.current.isValid&&validateField(Xe,yt,jn,ct).then(xn=>{const Yn=Ut.current.isValid;isEmptyObject(xn)?set(at.current,nn,!0):unset(at.current,nn),Yn!==isEmptyObject(xn)&&vt()})),Ge&&!(Cn&&Qn)&&!Cn&&unset(Ut.current.dirtyFields,nn),sn&&attachEventListeners(En&&jn.options?jn.options[jn.options.length-1]:jn,En||isSelectInput(Ht),ut.current)}function fn(Ht,$t){if(!isWindowUndefined)if(isString$2(Ht))on({name:Ht},$t);else if(isObject$4(Ht)&&"name"in Ht)on(Ht,$t);else return nn=>nn&&on(nn,Ht)}const mn=React$1.useCallback((Ht,$t)=>async nn=>{nn&&nn.preventDefault&&(nn.preventDefault(),nn.persist());let sn={},rn=Qt(getFieldsValues(Xe,cloneObject(ct.current),Ge,!0));Rt.current.isSubmitting&&vt({isSubmitting:!0});try{if(ht.current){const{errors:hn,values:Nn}=await ht.current(rn,pt.current,yt);Ut.current.errors=sn=hn,rn=Nn}else for(const hn of Object.values(Xe.current))if(hn){const{name:Nn}=hn.ref,En=await validateField(Xe,yt,hn,ct);En[Nn]?(set(sn,Nn,En[Nn]),unset(at.current,Nn)):get(rt.current,Nn)&&(unset(Ut.current.errors,Nn),set(at.current,Nn,!0))}isEmptyObject(sn)&&Object.keys(Ut.current.errors).every(hn=>hn in Xe.current)?(vt({errors:{},isSubmitting:!0}),await Ht(rn,nn)):(Ut.current.errors=Object.assign(Object.assign({},Ut.current.errors),sn),$t&&await $t(Ut.current.errors,nn),Je&&focusOnErrorField(Xe.current,Ut.current.errors))}finally{Ut.current.isSubmitting=!1,vt({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:isEmptyObject(Ut.current.errors),submitCount:Ut.current.submitCount+1})}},[Je,yt]),vn=({errors:Ht,isDirty:$t,isSubmitted:nn,touched:sn,isValid:rn,submitCount:hn,dirtyFields:Nn})=>{rn||(at.current={},rt.current={}),Ke.current={},nt.current=new Set,st.current=!1,vt({submitCount:hn?Ut.current.submitCount:0,isDirty:$t?Ut.current.isDirty:!1,isSubmitted:nn?Ut.current.isSubmitted:!1,isValid:rn?Ut.current.isValid:!1,dirtyFields:Nn?Ut.current.dirtyFields:{},touched:sn?Ut.current.touched:{},errors:Ht?Ut.current.errors:{},isSubmitting:!1,isSubmitSuccessful:!1})},un=(Ht,$t={})=>{if(isWeb){for(const nn of Object.values(Xe.current))if(nn){const{ref:sn,options:rn}=nn,hn=isRadioOrCheckboxFunction(sn)&&Array.isArray(rn)?rn[0].ref:sn;if(isHTMLElement(hn))try{hn.closest("form").reset();break}catch{}}}Xe.current={},it.current=Object.assign({},Ht||it.current),Ht&&lt(""),Object.values(dt.current).forEach(nn=>isFunction$1(nn)&&nn()),ct.current=Ge?{}:cloneObject(Ht||it.current),vn($t)};React$1.useEffect(()=>{Ue&&Rt.current.isValid&&zt(),It.current=It.current||!isWeb?It.current:onDomRemove(Xe,Pt)},[Pt,it.current]),React$1.useEffect(()=>()=>{It.current&&It.current.disconnect(),ot.current=!0,process.env.NODE_ENV==="production"&&Object.values(Xe.current).forEach(Ht=>Pt(Ht,!0))},[]),!Ue&&Rt.current.isValid&&(Tt.isValid=deepEqual(at.current,rt.current)&&isEmptyObject(Ut.current.errors));const dn={trigger:Kt,setValue:React$1.useCallback(At,[jt,Kt]),getValues:React$1.useCallback(kt,[]),register:React$1.useCallback(fn,[it.current]),unregister:React$1.useCallback(Tn,[]),formState:isProxyEnabled?new Proxy(Tt,{get:(Ht,$t)=>{if(process.env.NODE_ENV!=="production"&&$t==="isValid"&&St&&console.warn("📋 `formState.isValid` is applicable with `onTouched`, `onChange` or `onBlur` mode. https://react-hook-form.com/api#formState"),$t in Ht)return Rt.current[$t]=!0,Ht[$t]}}):Tt},qt=React$1.useMemo(()=>Object.assign({isFormDirty:Zt,updateWatchedValue:_t,shouldUnregister:Ge,updateFormState:vt,removeFieldEventListener:Yt,watchInternal:pn,mode:Mt.current,reValidateMode:{isReValidateOnBlur:Et,isReValidateOnChange:bt},validateResolver:Ue?zt:void 0,fieldsRef:Xe,resetFieldArrayFunctionRef:dt,useWatchFieldsRef:tt,useWatchRenderFunctionsRef:et,fieldArrayDefaultValuesRef:Ke,validFieldsRef:at,fieldsWithValidationRef:rt,fieldArrayNamesRef:gt,readFormStateRef:Rt,formStateRef:Ut,defaultValuesRef:it,shallowFieldsStateRef:ct,fieldArrayValuesRef:$e},dn),[it.current,_t,Ge,Yt,pn]);return Object.assign({watch:yn,control:qt,handleSubmit:mn,reset:React$1.useCallback(un,[]),clearErrors:React$1.useCallback(ln,[]),setError:React$1.useCallback(cn,[]),errors:Tt.errors},dn)}/*! *****************************************************************************
2415
+ `);return tt.length===1?tt.join(" "):tt.filter(et=>!!et.trim()).map(et=>Ge(et)).join(" ")},$e=({title:nt,content:tt,isDefault:et})=>{addConsent({title:`${et?Ge(nt):nt}`,content:et?Ke(tt):tt,status:!0,session:ue})};return React$1.useEffect(()=>{if(me||Ue){Xe({title:me||defaultPrivacyConsent.title,text:Ue||defaultPrivacyConsent.text,consentType:defaultPrivacyConsent.consentType,default:!Ue});return}getPrivacyConsentData({session:ue,type:"PRIVACY"}).then(({consents:nt})=>{const tt=nt.find(({consentType:et})=>et==="PRIVACY");tt!=null&&tt.text?Xe({...tt,title:(tt==null?void 0:tt.title.trim())||defaultPrivacyConsent.title,text:tt.text.trim()||defaultPrivacyConsent.text,default:!(tt!=null&&tt.text)}):Xe(defaultPrivacyConsent)}).catch(()=>{Xe(defaultPrivacyConsent)})},[ue,me,Ue]),He?jsx(NormalPrivacyConsent,{consent:He,goNext:Qe,addPrivacyConsent:$e,session:ue,isAeroMexicoClient:Ze,customCheck:Je}):null}function renderUserConsent(ue,{session:me,onSuccess:Ue,title:Qe,text:Ze,isAeroMexicoClient:Je=!1,customCheck:Ge=null}){const He=createRoot$1(ue),Xe=handleUnmountRoot(Ue,He,ue);customRender(jsx(App$1,{token:me.token,children:jsx(PrivacyConsent,{goNext:Xe,session:me,title:Qe,text:Ze,isAeroMexicoClient:Je,customCheck:Ge})}),ue,He)}const version="1.71.0-20240423210706.0";function r(ue){for(var me="",Ue=0;Ue<ue.length;++Ue)if(Ue>0){var Qe=ue[Ue].toLowerCase();Qe!==ue[Ue]?me+=" ".concat(Qe):me+=ue[Ue]}else me+=ue[Ue].toUpperCase();return me}function o(ue,me){return function(Ue,Qe){return Object.prototype.hasOwnProperty.call(Ue,Qe)}(ue,me)?ue[me]:void 0}var i$1={default:"endpoint"},u={default:"tlsEndpoint"},a="Client timeout",R="Network connection error",c="Network request aborted",s="Response cannot be parsed",E="Blocked by CSP",f="The endpoint parameter is not a valid URL",d=r("WrongRegion"),l=r("SubscriptionNotActive"),_=r("UnsupportedVersion"),p=r("InstallationMethodRestricted"),v=r("HostnameRestricted"),O=r("IntegrationFailed"),I="API key required",h="API key not found",N="API key expired",T="Request cannot be parsed",m="Request failed",w="Request failed to process",A="Too many requests, rate limit exceeded",P="Not available for this origin",y="Not available with restricted header",D=I,S=h,L=N,U="3.8.6",b="9319";function g(ue,me){var Ue=[];return function(Qe,Ze){var Je=5,Ge=(tt=Qe,et=__spreadArray$1([],tt,!0),{current:function(){return et[0]},postpone:function(){var at=et.shift();at!==void 0&&et.push(at)},exclude:function(){et.shift()}}),He=(Ke=100,$e=3e3,nt=0,function(){return Math.random()*Math.min($e,Ke*Math.pow(2,nt++))}),Xe=Ge.current(),Ke,$e,nt,tt,et;if(Xe===void 0)return Promise.reject(new TypeError("The list of script URL patterns is empty"));var rt=function(at,it){return Ze(at).catch(function(ot){if(it+1>=Je)throw ot;(function(ct){if(!(ct instanceof Error))return!1;var dt=ct.message;return dt===E||dt===b})(ot)?Ge.exclude():Ge.postpone();var st,ut=Ge.current();if(ut===void 0)throw ot;return(st=He(),new Promise(function(ct){return setTimeout(ct,st)})).then(function(){return rt(ut,it+1)})})};return rt(Xe,0)}(ue,function(Qe){var Ze=new Date,Je=function(He){return Ue.push({url:Qe,startedAt:Ze,finishedAt:new Date,error:He})},Ge=me(Qe);return Ge.then(function(){return Je()},Je),Ge}).then(function(Qe){return[Qe,Ue]})}var C="https://fpnpmcdn.net/v<version>/<apiKey>/loader_v<loaderVersion>.js",K=C,M="Failed to load the JS script of the agent";function B(ue){var me;ue.scriptUrlPattern;var Ue=ue.token,Qe=ue.apiKey,Ze=Qe===void 0?Ue:Qe,Je=__rest$1(ue,["scriptUrlPattern","token","apiKey"]),Ge=(me=o(ue,"scriptUrlPattern"))!==null&&me!==void 0?me:C,He=function(){var $e=[],nt=function(){$e.push({time:new Date,state:document.visibilityState})},tt=function(et,rt,at,it){return et.addEventListener(rt,at,it),function(){return et.removeEventListener(rt,at,it)}}(document,"visibilitychange",nt);return nt(),[$e,tt]}(),Xe=He[0],Ke=He[1];return Promise.resolve().then(function(){if(!Ze||typeof Ze!="string")throw new Error(I);var $e=function(nt,tt){return(Array.isArray(nt)?nt:[nt]).map(function(et){return function(rt,at){var it=encodeURIComponent;return rt.replace(/<[^<>]+>/g,function(ot){return ot==="<version>"?"3":ot==="<apiKey>"?it(at):ot==="<loaderVersion>"?it(U):ot})}(String(et),tt)})}(Ge,Ze);return g($e,F)}).catch(function($e){throw Ke(),function(nt){return nt instanceof Error&&nt.message===b?new Error(M):nt}($e)}).then(function($e){var nt=$e[0],tt=$e[1];return Ke(),nt.load(__assign$1(__assign$1({},Je),{ldi:{attempts:tt,visibilityStates:Xe}}))})}function F(ue){return function(me,Ue,Qe,Ze){var Je,Ge=document,He="securitypolicyviolation",Xe=function($e){var nt=new URL(me,location.href),tt=$e.blockedURI;tt!==nt.href&&tt!==nt.protocol.slice(0,-1)&&tt!==nt.origin||(Je=$e,Ke())};Ge.addEventListener(He,Xe);var Ke=function(){return Ge.removeEventListener(He,Xe)};return Ze==null||Ze.then(Ke,Ke),Promise.resolve().then(Ue).then(function($e){return Ke(),$e},function($e){return new Promise(function(nt){return setTimeout(nt)}).then(function(){if(Ke(),Je)return Qe(Je);throw $e})})}(ue,function(){return function(me){return new Promise(function(Ue,Qe){var Ze=document.createElement("script"),Je=function(){var He;return(He=Ze.parentNode)===null||He===void 0?void 0:He.removeChild(Ze)},Ge=document.head||document.getElementsByTagName("head")[0];Ze.onload=function(){Je(),Ue()},Ze.onerror=function(){Je(),Qe(new Error(M))},Ze.async=!0,Ze.src=me,Ge.appendChild(Ze)})}(ue)},function(){throw new Error(E)}).then(V)}function V(){var ue=window,me="__fpjs_p_l_b",Ue=ue[me];if(function(Qe,Ze){var Je,Ge=(Je=Object.getOwnPropertyDescriptor)===null||Je===void 0?void 0:Je.call(Object,Qe,Ze);Ge!=null&&Ge.configurable?delete Qe[Ze]:Ge&&!Ge.writable||(Qe[Ze]=void 0)}(ue,me),typeof(Ue==null?void 0:Ue.load)!="function")throw new Error(b);return Ue}var k={load:B,defaultScriptUrlPattern:K,ERROR_SCRIPT_LOAD_FAIL:M,ERROR_API_KEY_EXPIRED:N,ERROR_API_KEY_INVALID:h,ERROR_API_KEY_MISSING:I,ERROR_BAD_REQUEST_FORMAT:T,ERROR_BAD_RESPONSE_FORMAT:s,ERROR_CLIENT_TIMEOUT:a,ERROR_CSP_BLOCK:E,ERROR_FORBIDDEN_ENDPOINT:v,ERROR_FORBIDDEN_HEADER:y,ERROR_FORBIDDEN_ORIGIN:P,ERROR_GENERAL_SERVER_FAILURE:m,ERROR_INSTALLATION_METHOD_RESTRICTED:p,ERROR_INTEGRATION_FAILURE:O,ERROR_INVALID_ENDPOINT:f,ERROR_NETWORK_ABORT:c,ERROR_NETWORK_CONNECTION:R,ERROR_RATE_LIMIT:A,ERROR_SERVER_TIMEOUT:w,ERROR_SUBSCRIPTION_NOT_ACTIVE:l,ERROR_TOKEN_EXPIRED:L,ERROR_TOKEN_INVALID:S,ERROR_TOKEN_MISSING:D,ERROR_UNSUPPORTED_VERSION:_,ERROR_WRONG_REGION:d,defaultEndpoint:i$1,defaultTlsEndpoint:u};let fingerprintApiKey;function setFingerprintApiKey(ue){fingerprintApiKey=ue}async function getFingerPrint(){return k.load({token:fingerprintApiKey,endpoint:"https://fingerprint.incodesmile.com",scriptUrlPattern:"https://fingerprint.incodesmile.com/web/v<version>/<apiKey>/loader_v<loaderVersion>.js"}).then(ue=>ue.get({extendedResult:!0}))}const fingerPrintUrl="/omni/add/device-fingerprint";function postFingerprint({hash:ue,ip:me,deviceType:Ue,token:Qe,data:Ze,osVersion:Je,deviceModel:Ge,browser:He,sdkVersion:Xe,hasLiedBrowser:Ke,hostingApp:$e,ipLocation:nt}){return exports.api.post(fingerPrintUrl,{hash:ue,ip:me,deviceType:Ue,data:Ze,osVersion:Je,deviceModel:Ge,browser:He,hasLiedBrowser:Ke,sdkVersion:Xe,hostingApp:$e,ipLocation:nt},{headers:{"X-Incode-Hardware-Id":Qe}}).then(tt=>tt.data).catch(tt=>Promise.reject(tt.response.data))}function formatDeviceModel({vendor:ue,model:me}){return`${ue||""} ${me||""}`.trim()}const emptyFingerprint={visitorId:void 0,ip:void 0,ipLocation:{country:{name:void 0},subdivisions:[],city:{name:void 0},latitude:void 0,longitude:void 0}};async function sendFingerprint({token:ue},me=!0,Ue=!0){var Xe,Ke,$e;const Qe="WEBAPP",{os:Ze,device:Je,browser:Ge}=getUAParserResults(),He=Ue?await getFingerPrint().catch(nt=>(addEvent({code:"fingerprintFetchFailed",payload:{message:nt.message},token:ue}),emptyFingerprint)):emptyFingerprint;return postFingerprint({hash:He.visitorId||"",ip:me&&He.ip||"",deviceType:Qe,token:ue,data:JSON.stringify(He),osVersion:`${Ze.name} ${Ze.version}`,deviceModel:formatDeviceModel(Je),browser:`${Ge.name} ${Ge.version}`,hasLiedBrowser:isBrowserSimulation(),hostingApp:options.hostingApp,sdkVersion:version,ipLocation:{ipCountry:(Xe=He.ipLocation.country)==null?void 0:Xe.name,ipRegion:(Ke=He.ipLocation.subdivisions)==null?void 0:Ke[0].name,ipCity:($e=He.ipLocation.city)==null?void 0:$e.name,ipLatitude:He.ipLocation.latitude,ipLongitude:He.ipLocation.longitude}}).then(nt=>(emptyDeviceStatsQueue(ue),nt))}function mapI18nLang(ue){const me={en:"en-US",es:"es-ES",pt:"pt-BR"},Ue=ue==null?void 0:ue.substring(0,2);return me[Ue]||"en-US"}const createSessionUrl="/omni/start";async function createNewSession({externalId:ue,externalCustomerId:me,configurationId:Ue,uuid:Qe,interviewId:Ze,customFields:Je,language:Ge}={}){const He=Ge||mapI18nLang(i18nInstance.language);try{const Xe=await exports.api.post(createSessionUrl,{externalId:ue,externalCustomerId:me,configurationId:Ue,uuid:Qe,interviewId:Ze,customFields:Je,language:He});state.token=Xe.data;const Ke=Xe.data;emptyQueue(Ke.token);const $e=await sendFingerprint({token:Ke.token,interviewId:Ke.interviewId}).catch(()=>({regulationType:"",showMandatoryConsent:!1}));Ke.regulationType=$e.regulationType??"",Ke.showMandatoryConsent=$e.showMandatoryConsent??!1;const tt=new UAParser().getResult();return addEvent({code:"browser",payload:{userAgent:window.navigator.userAgent,isWebRtcSupported:isWebRtcSupported(),...tt},token:Ke.token}),Ke}catch(Xe){throw Xe!=null&&Xe.response?Xe.response.data:Xe}}const createRedirectUrl=async({session:ue})=>{const{url:me}=await exports.api.get("/omni/onboarding-url",{params:{clientId:ue.clientId},headers:{"X-Incode-Hardware-Id":ue.token}}).then(Ue=>Ue.data);return me};async function createSession$4(ue,me,{externalCustomerId:Ue,configurationId:Qe,uuid:Ze,interviewId:Je,customFields:Ge,language:He}={}){return createNewSession({externalId:me,externalCustomerId:Ue,configurationId:Qe,uuid:Ze,interviewId:Je,customFields:Ge,language:He})}var isHTMLElement=ue=>ue instanceof HTMLElement;const EVENTS={BLUR:"blur",CHANGE:"change",INPUT:"input"},VALIDATION_MODE={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},SELECT="select",UNDEFINED="undefined",INPUT_VALIDATION_RULES={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"};function attachEventListeners({ref:ue},me,Ue){isHTMLElement(ue)&&Ue&&(ue.addEventListener(me?EVENTS.CHANGE:EVENTS.INPUT,Ue),ue.addEventListener(EVENTS.BLUR,Ue))}var isNullOrUndefined=ue=>ue==null;const isObjectType=ue=>typeof ue=="object";var isObject$4=ue=>!isNullOrUndefined(ue)&&!Array.isArray(ue)&&isObjectType(ue)&&!(ue instanceof Date),isKey=ue=>/^\w*$/.test(ue),compact=ue=>ue.filter(Boolean),stringToPath=ue=>compact(ue.replace(/["|']/g,"").replace(/\[/g,".").replace(/\]/g,"").split("."));function set(ue,me,Ue){let Qe=-1;const Ze=isKey(me)?[me]:stringToPath(me),Je=Ze.length,Ge=Je-1;for(;++Qe<Je;){const He=Ze[Qe];let Xe=Ue;if(Qe!==Ge){const Ke=ue[He];Xe=isObject$4(Ke)||Array.isArray(Ke)?Ke:isNaN(+Ze[Qe+1])?{}:[]}ue[He]=Xe,ue=ue[He]}return ue}var transformToNestObject=(ue,me={})=>{for(const Ue in ue)isKey(Ue)?me[Ue]=ue[Ue]:set(me,Ue,ue[Ue]);return me},isUndefined$1=ue=>ue===void 0,get=(ue={},me,Ue)=>{const Qe=compact(me.split(/[,[\].]+?/)).reduce((Ze,Je)=>isNullOrUndefined(Ze)?Ze:Ze[Je],ue);return isUndefined$1(Qe)||Qe===ue?isUndefined$1(ue[me])?Ue:ue[me]:Qe},focusOnErrorField=(ue,me)=>{for(const Ue in ue)if(get(me,Ue)){const Qe=ue[Ue];if(Qe){if(Qe.ref.focus&&isUndefined$1(Qe.ref.focus()))break;if(Qe.options){Qe.options[0].ref.focus();break}}}},removeAllEventListeners=(ue,me)=>{isHTMLElement(ue)&&ue.removeEventListener&&(ue.removeEventListener(EVENTS.INPUT,me),ue.removeEventListener(EVENTS.CHANGE,me),ue.removeEventListener(EVENTS.BLUR,me))};const defaultReturn={isValid:!1,value:null};var getRadioValue=ue=>Array.isArray(ue)?ue.reduce((me,Ue)=>Ue&&Ue.ref.checked?{isValid:!0,value:Ue.ref.value}:me,defaultReturn):defaultReturn,getMultipleSelectValue=ue=>[...ue].filter(({selected:me})=>me).map(({value:me})=>me),isRadioInput=ue=>ue.type==="radio",isFileInput=ue=>ue.type==="file",isCheckBoxInput=ue=>ue.type==="checkbox",isMultipleSelect=ue=>ue.type===`${SELECT}-multiple`;const defaultResult={value:!1,isValid:!1},validResult={value:!0,isValid:!0};var getCheckboxValue=ue=>{if(Array.isArray(ue)){if(ue.length>1){const Ze=ue.filter(Je=>Je&&Je.ref.checked).map(({ref:{value:Je}})=>Je);return{value:Ze,isValid:!!Ze.length}}const{checked:me,value:Ue,attributes:Qe}=ue[0].ref;return me?Qe&&!isUndefined$1(Qe.value)?isUndefined$1(Ue)||Ue===""?validResult:{value:Ue,isValid:!0}:validResult:defaultResult}return defaultResult};function getFieldValue(ue,me,Ue,Qe,Ze){const Je=ue.current[me];if(Je){const{ref:{value:Ge,disabled:He},ref:Xe,valueAsNumber:Ke,valueAsDate:$e,setValueAs:nt}=Je;return He&&Qe?void 0:isFileInput(Xe)?Xe.files:isRadioInput(Xe)?getRadioValue(Je.options).value:isMultipleSelect(Xe)?getMultipleSelectValue(Xe.options):isCheckBoxInput(Xe)?getCheckboxValue(Je.options).value:Ze?Ge:Ke?Ge===""?NaN:+Ge:$e?Xe.valueAsDate:nt?nt(Ge):Ge}if(Ue)return get(Ue.current,me)}function isDetached(ue){return ue?!(ue instanceof HTMLElement)||ue.nodeType===Node.DOCUMENT_NODE?!1:isDetached(ue.parentNode):!0}var isEmptyObject=ue=>isObject$4(ue)&&!Object.keys(ue).length,isBoolean=ue=>typeof ue=="boolean";function baseGet(ue,me){const Ue=me.slice(0,-1).length;let Qe=0;for(;Qe<Ue;)ue=isUndefined$1(ue)?Qe++:ue[me[Qe++]];return ue}function unset(ue,me){const Ue=isKey(me)?[me]:stringToPath(me),Qe=Ue.length==1?ue:baseGet(ue,Ue),Ze=Ue[Ue.length-1];let Je;Qe&&delete Qe[Ze];for(let Ge=0;Ge<Ue.slice(0,-1).length;Ge++){let He=-1,Xe;const Ke=Ue.slice(0,-(Ge+1)),$e=Ke.length-1;for(Ge>0&&(Je=ue);++He<Ke.length;){const nt=Ke[He];Xe=Xe?Xe[nt]:ue[nt],$e===He&&(isObject$4(Xe)&&isEmptyObject(Xe)||Array.isArray(Xe)&&!Xe.filter(tt=>isObject$4(tt)&&!isEmptyObject(tt)||isBoolean(tt)).length)&&(Je?delete Je[nt]:delete ue[nt]),Je=Xe}}return ue}const isSameRef=(ue,me)=>ue&&ue.ref===me;function findRemovedFieldAndRemoveListener(ue,me,Ue,Qe,Ze,Je){const{ref:Ge,ref:{name:He}}=Ue,Xe=ue.current[He];if(!Ze){const Ke=getFieldValue(ue,He,Qe);!isUndefined$1(Ke)&&set(Qe.current,He,Ke)}if(!Ge.type||!Xe){delete ue.current[He];return}isRadioInput(Ge)||isCheckBoxInput(Ge)?Array.isArray(Xe.options)&&Xe.options.length?(compact(Xe.options).forEach((Ke={},$e)=>{(isDetached(Ke.ref)&&isSameRef(Ke,Ke.ref)||Je)&&(removeAllEventListeners(Ke.ref,me),unset(Xe.options,`[${$e}]`))}),Xe.options&&!compact(Xe.options).length&&delete ue.current[He]):delete ue.current[He]:(isDetached(Ge)&&isSameRef(Xe,Ge)||Je)&&(removeAllEventListeners(Ge,me),delete ue.current[He])}var isPrimitive=ue=>isNullOrUndefined(ue)||!isObjectType(ue);function deepMerge(ue,me){if(isPrimitive(ue)||isPrimitive(me))return me;for(const Ue in me){const Qe=ue[Ue],Ze=me[Ue];try{ue[Ue]=isObject$4(Qe)&&isObject$4(Ze)||Array.isArray(Qe)&&Array.isArray(Ze)?deepMerge(Qe,Ze):Ze}catch{}}return ue}function deepEqual(ue,me,Ue){if(isPrimitive(ue)||isPrimitive(me)||ue instanceof Date||me instanceof Date)return ue===me;if(!React$1.isValidElement(ue)){const Qe=Object.keys(ue),Ze=Object.keys(me);if(Qe.length!==Ze.length)return!1;for(const Je of Qe){const Ge=ue[Je];if(!(Ue&&Je==="ref")){const He=me[Je];if((isObject$4(Ge)||Array.isArray(Ge))&&(isObject$4(He)||Array.isArray(He))?!deepEqual(Ge,He,Ue):Ge!==He)return!1}}}return!0}function setDirtyFields(ue,me,Ue,Qe,Ze){let Je=-1;for(;++Je<ue.length;){for(const Ge in ue[Je])Array.isArray(ue[Je][Ge])?(!Ue[Je]&&(Ue[Je]={}),Ue[Je][Ge]=[],setDirtyFields(ue[Je][Ge],get(me[Je]||{},Ge,[]),Ue[Je][Ge],Ue[Je],Ge)):deepEqual(get(me[Je]||{},Ge),ue[Je][Ge])?set(Ue[Je]||{},Ge):Ue[Je]=Object.assign(Object.assign({},Ue[Je]),{[Ge]:!0});Qe&&!Ue.length&&delete Qe[Ze]}return Ue}var setFieldArrayDirtyFields=(ue,me,Ue)=>deepMerge(setDirtyFields(ue,me,Ue.slice(0,ue.length)),setDirtyFields(me,ue,Ue.slice(0,ue.length))),isString$2=ue=>typeof ue=="string",getFieldsValues=(ue,me,Ue,Qe,Ze)=>{const Je={};for(const Ge in ue.current)(isUndefined$1(Ze)||(isString$2(Ze)?Ge.startsWith(Ze):Array.isArray(Ze)&&Ze.find(He=>Ge.startsWith(He))))&&(Je[Ge]=getFieldValue(ue,Ge,void 0,Qe));return Ue?transformToNestObject(Je):deepMerge(me,transformToNestObject(Je))},isErrorStateChanged=({errors:ue,name:me,error:Ue,validFields:Qe,fieldsWithValidation:Ze})=>{const Je=isUndefined$1(Ue),Ge=get(ue,me);return Je&&!!Ge||!Je&&!deepEqual(Ge,Ue,!0)||Je&&get(Ze,me)&&!get(Qe,me)},isRegex=ue=>ue instanceof RegExp,getValueAndMessage=ue=>isObject$4(ue)&&!isRegex(ue)?ue:{value:ue,message:""},isFunction$1=ue=>typeof ue=="function",isMessage=ue=>isString$2(ue)||React$1.isValidElement(ue);function getValidateError(ue,me,Ue="validate"){if(isMessage(ue)||isBoolean(ue)&&!ue)return{type:Ue,message:isMessage(ue)?ue:"",ref:me}}var appendErrors=(ue,me,Ue,Qe,Ze)=>me?Object.assign(Object.assign({},Ue[ue]),{types:Object.assign(Object.assign({},Ue[ue]&&Ue[ue].types?Ue[ue].types:{}),{[Qe]:Ze||!0})}):{},validateField=async(ue,me,{ref:Ue,ref:{value:Qe},options:Ze,required:Je,maxLength:Ge,minLength:He,min:Xe,max:Ke,pattern:$e,validate:nt},tt)=>{const et=Ue.name,rt={},at=isRadioInput(Ue),it=isCheckBoxInput(Ue),ot=at||it,st=Qe==="",ut=appendErrors.bind(null,et,me,rt),ct=(dt,pt,ht,gt=INPUT_VALIDATION_RULES.maxLength,Mt=INPUT_VALIDATION_RULES.minLength)=>{const St=dt?pt:ht;rt[et]=Object.assign({type:dt?gt:Mt,message:St,ref:Ue},ut(dt?gt:Mt,St))};if(Je&&(!at&&!it&&(st||isNullOrUndefined(Qe))||isBoolean(Qe)&&!Qe||it&&!getCheckboxValue(Ze).isValid||at&&!getRadioValue(Ze).isValid)){const{value:dt,message:pt}=isMessage(Je)?{value:!!Je,message:Je}:getValueAndMessage(Je);if(dt&&(rt[et]=Object.assign({type:INPUT_VALIDATION_RULES.required,message:pt,ref:ot?((ue.current[et].options||[])[0]||{}).ref:Ue},ut(INPUT_VALIDATION_RULES.required,pt)),!me))return rt}if((!isNullOrUndefined(Xe)||!isNullOrUndefined(Ke))&&Qe!==""){let dt,pt;const ht=getValueAndMessage(Ke),gt=getValueAndMessage(Xe);if(isNaN(Qe)){const Mt=Ue.valueAsDate||new Date(Qe);isString$2(ht.value)&&(dt=Mt>new Date(ht.value)),isString$2(gt.value)&&(pt=Mt<new Date(gt.value))}else{const Mt=Ue.valueAsNumber||parseFloat(Qe);isNullOrUndefined(ht.value)||(dt=Mt>ht.value),isNullOrUndefined(gt.value)||(pt=Mt<gt.value)}if((dt||pt)&&(ct(!!dt,ht.message,gt.message,INPUT_VALIDATION_RULES.max,INPUT_VALIDATION_RULES.min),!me))return rt}if(isString$2(Qe)&&!st&&(Ge||He)){const dt=getValueAndMessage(Ge),pt=getValueAndMessage(He),ht=!isNullOrUndefined(dt.value)&&Qe.length>dt.value,gt=!isNullOrUndefined(pt.value)&&Qe.length<pt.value;if((ht||gt)&&(ct(ht,dt.message,pt.message),!me))return rt}if(isString$2(Qe)&&$e&&!st){const{value:dt,message:pt}=getValueAndMessage($e);if(isRegex(dt)&&!dt.test(Qe)&&(rt[et]=Object.assign({type:INPUT_VALIDATION_RULES.pattern,message:pt,ref:Ue},ut(INPUT_VALIDATION_RULES.pattern,pt)),!me))return rt}if(nt){const dt=getFieldValue(ue,et,tt,!1,!0),pt=ot&&Ze?Ze[0].ref:Ue;if(isFunction$1(nt)){const ht=await nt(dt),gt=getValidateError(ht,pt);if(gt&&(rt[et]=Object.assign(Object.assign({},gt),ut(INPUT_VALIDATION_RULES.validate,gt.message)),!me))return rt}else if(isObject$4(nt)){let ht={};for(const[gt,Mt]of Object.entries(nt)){if(!isEmptyObject(ht)&&!me)break;const St=await Mt(dt),Dt=getValidateError(St,pt,gt);Dt&&(ht=Object.assign(Object.assign({},Dt),ut(gt,Dt.message)),me&&(rt[et]=ht))}if(!isEmptyObject(ht)&&(rt[et]=Object.assign({ref:pt},ht),!me))return rt}}return rt};const getPath=(ue,me,Ue=[])=>{for(const Qe in me){const Ze=ue+(isObject$4(me)?`.${Qe}`:`[${Qe}]`);isPrimitive(me[Qe])?Ue.push(Ze):getPath(Ze,me[Qe],Ue)}return Ue};var assignWatchFields=(ue,me,Ue,Qe,Ze)=>{let Je;return Ue.add(me),isEmptyObject(ue)||(Je=get(ue,me),(isObject$4(Je)||Array.isArray(Je))&&getPath(me,Je).forEach(Ge=>Ue.add(Ge))),isUndefined$1(Je)?Ze?Qe:get(Qe,me):Je},skipValidation=({isOnBlur:ue,isOnChange:me,isOnTouch:Ue,isTouched:Qe,isReValidateOnBlur:Ze,isReValidateOnChange:Je,isBlurEvent:Ge,isSubmitted:He,isOnAll:Xe})=>Xe?!1:!He&&Ue?!(Qe||Ge):(He?Ze:ue)?!Ge:(He?Je:me)?Ge:!0,getFieldArrayParentName=ue=>ue.substring(0,ue.indexOf("["));const isMatchFieldArrayName=(ue,me)=>RegExp(`^${me}([|.)\\d+`.replace(/\[/g,"\\[").replace(/\]/g,"\\]")).test(ue);var isNameInFieldArray=(ue,me)=>[...ue].some(Ue=>isMatchFieldArrayName(me,Ue)),isSelectInput=ue=>ue.type===`${SELECT}-one`;function onDomRemove(ue,me){const Ue=new MutationObserver(()=>{for(const Qe of Object.values(ue.current))if(Qe&&Qe.options)for(const Ze of Qe.options)Ze&&Ze.ref&&isDetached(Ze.ref)&&me(Qe);else Qe&&isDetached(Qe.ref)&&me(Qe)});return Ue.observe(window.document,{childList:!0,subtree:!0}),Ue}var isWeb=typeof window!==UNDEFINED&&typeof document!==UNDEFINED;function cloneObject(ue){var me;let Ue;if(isPrimitive(ue)||isWeb&&(ue instanceof File||isHTMLElement(ue))||!["Set","Map","Object","Date","Array"].includes((me=ue.constructor)===null||me===void 0?void 0:me.name))return ue;if(ue instanceof Date)return Ue=new Date(ue.getTime()),Ue;if(ue instanceof Set){Ue=new Set;for(const Qe of ue)Ue.add(Qe);return Ue}if(ue instanceof Map){Ue=new Map;for(const Qe of ue.keys())Ue.set(Qe,cloneObject(ue.get(Qe)));return Ue}Ue=Array.isArray(ue)?[]:{};for(const Qe in ue)Ue[Qe]=cloneObject(ue[Qe]);return Ue}var modeChecker=ue=>({isOnSubmit:!ue||ue===VALIDATION_MODE.onSubmit,isOnBlur:ue===VALIDATION_MODE.onBlur,isOnChange:ue===VALIDATION_MODE.onChange,isOnAll:ue===VALIDATION_MODE.all,isOnTouch:ue===VALIDATION_MODE.onTouched}),isRadioOrCheckboxFunction=ue=>isRadioInput(ue)||isCheckBoxInput(ue);const isWindowUndefined=typeof window===UNDEFINED,isProxyEnabled=isWeb?"Proxy"in window:typeof Proxy!==UNDEFINED;function useForm({mode:ue=VALIDATION_MODE.onSubmit,reValidateMode:me=VALIDATION_MODE.onChange,resolver:Ue,context:Qe,defaultValues:Ze={},shouldFocusError:Je=!0,shouldUnregister:Ge=!0,criteriaMode:He}={}){const Xe=React$1.useRef({}),Ke=React$1.useRef({}),$e=React$1.useRef({}),nt=React$1.useRef(new Set),tt=React$1.useRef({}),et=React$1.useRef({}),rt=React$1.useRef({}),at=React$1.useRef({}),it=React$1.useRef(Ze),ot=React$1.useRef(!1),st=React$1.useRef(!1),ut=React$1.useRef(),ct=React$1.useRef({}),dt=React$1.useRef({}),pt=React$1.useRef(Qe),ht=React$1.useRef(Ue),gt=React$1.useRef(new Set),Mt=React$1.useRef(modeChecker(ue)),{isOnSubmit:St,isOnTouch:Dt}=Mt.current,yt=He===VALIDATION_MODE.all,[Tt,mt]=React$1.useState({isDirty:!1,isValidating:!1,dirtyFields:{},isSubmitted:!1,submitCount:0,touched:{},isSubmitting:!1,isSubmitSuccessful:!1,isValid:!St,errors:{}}),Rt=React$1.useRef({isDirty:!isProxyEnabled,dirtyFields:!isProxyEnabled,touched:!isProxyEnabled||Dt,isValidating:!isProxyEnabled,isSubmitting:!isProxyEnabled,isValid:!isProxyEnabled}),Ut=React$1.useRef(Tt),It=React$1.useRef(),{isOnBlur:Et,isOnChange:bt}=React$1.useRef(modeChecker(me)).current;pt.current=Qe,ht.current=Ue,Ut.current=Tt,ct.current=Ge?{}:isEmptyObject(ct.current)?cloneObject(Ze):ct.current;const vt=React$1.useCallback((Ht={})=>{ot.current||(Ut.current=Object.assign(Object.assign({},Ut.current),Ht),mt(Ut.current))},[]),xt=()=>Rt.current.isValidating&&vt({isValidating:!0}),Bt=React$1.useCallback((Ht,$t,nn=!1,sn={},rn)=>{let hn=nn||isErrorStateChanged({errors:Ut.current.errors,error:$t,name:Ht,validFields:at.current,fieldsWithValidation:rt.current});const Nn=get(Ut.current.errors,Ht);$t?(unset(at.current,Ht),hn=hn||!Nn||!deepEqual(Nn,$t,!0),set(Ut.current.errors,Ht,$t)):((get(rt.current,Ht)||ht.current)&&(set(at.current,Ht,!0),hn=hn||Nn),unset(Ut.current.errors,Ht)),(hn&&!isNullOrUndefined(nn)||!isEmptyObject(sn)||Rt.current.isValidating)&&vt(Object.assign(Object.assign(Object.assign({},sn),ht.current?{isValid:!!rn}:{}),{isValidating:!1}))},[]),Ct=React$1.useCallback((Ht,$t)=>{const{ref:nn,options:sn}=Xe.current[Ht],rn=isWeb&&isHTMLElement(nn)&&isNullOrUndefined($t)?"":$t;isRadioInput(nn)?(sn||[]).forEach(({ref:hn})=>hn.checked=hn.value===rn):isFileInput(nn)&&!isString$2(rn)?nn.files=rn:isMultipleSelect(nn)?[...nn.options].forEach(hn=>hn.selected=rn.includes(hn.value)):isCheckBoxInput(nn)&&sn?sn.length>1?sn.forEach(({ref:hn})=>hn.checked=Array.isArray(rn)?!!rn.find(Nn=>Nn===hn.value):rn===hn.value):sn[0].ref.checked=!!rn:nn.value=rn},[]),Zt=React$1.useCallback((Ht,$t)=>{if(Rt.current.isDirty){const nn=kt();return Ht&&$t&&set(nn,Ht,$t),!deepEqual(nn,it.current)}return!1},[]),Wt=React$1.useCallback((Ht,$t=!0)=>{if(Rt.current.isDirty||Rt.current.dirtyFields){const nn=!deepEqual(get(it.current,Ht),getFieldValue(Xe,Ht,ct)),sn=get(Ut.current.dirtyFields,Ht),rn=Ut.current.isDirty;nn?set(Ut.current.dirtyFields,Ht,!0):unset(Ut.current.dirtyFields,Ht);const hn={isDirty:Zt(),dirtyFields:Ut.current.dirtyFields},Nn=Rt.current.isDirty&&rn!==hn.isDirty||Rt.current.dirtyFields&&sn!==get(Ut.current.dirtyFields,Ht);return Nn&&$t&&vt(hn),Nn?hn:{}}return{}},[]),Ot=React$1.useCallback(async(Ht,$t)=>{if(process.env.NODE_ENV!=="production"&&!Xe.current[Ht])return console.warn("📋 Field is missing with `name` attribute: ",Ht),!1;const nn=(await validateField(Xe,yt,Xe.current[Ht],ct))[Ht];return Bt(Ht,nn,$t),isUndefined$1(nn)},[Bt,yt]),Xt=React$1.useCallback(async Ht=>{const{errors:$t}=await ht.current(kt(),pt.current,yt),nn=Ut.current.isValid;if(Array.isArray(Ht)){const sn=Ht.map(rn=>{const hn=get($t,rn);return hn?set(Ut.current.errors,rn,hn):unset(Ut.current.errors,rn),!hn}).every(Boolean);return vt({isValid:isEmptyObject($t),isValidating:!1}),sn}else{const sn=get($t,Ht);return Bt(Ht,sn,nn!==isEmptyObject($t),{},isEmptyObject($t)),!sn}},[Bt,yt]),Kt=React$1.useCallback(async Ht=>{const $t=Ht||Object.keys(Xe.current);if(xt(),ht.current)return Xt($t);if(Array.isArray($t)){!Ht&&(Ut.current.errors={});const nn=await Promise.all($t.map(async sn=>await Ot(sn,null)));return vt({isValidating:!1}),nn.every(Boolean)}return await Ot($t)},[Xt,Ot]),Jt=React$1.useCallback((Ht,$t,{shouldDirty:nn,shouldValidate:sn})=>{const rn={};set(rn,Ht,$t);for(const hn of getPath(Ht,$t))Xe.current[hn]&&(Ct(hn,get(rn,hn)),nn&&Wt(hn),sn&&Kt(hn))},[Kt,Ct,Wt]),jt=React$1.useCallback((Ht,$t,nn)=>{if(!Ge&&!isPrimitive($t)&&set(ct.current,Ht,Array.isArray($t)?[...$t]:Object.assign({},$t)),Xe.current[Ht])Ct(Ht,$t),nn.shouldDirty&&Wt(Ht),nn.shouldValidate&&Kt(Ht);else if(!isPrimitive($t)&&(Jt(Ht,$t,nn),gt.current.has(Ht))){const sn=getFieldArrayParentName(Ht)||Ht;set(Ke.current,Ht,$t),dt.current[sn]({[sn]:get(Ke.current,sn)}),(Rt.current.isDirty||Rt.current.dirtyFields)&&nn.shouldDirty&&(set(Ut.current.dirtyFields,Ht,setFieldArrayDirtyFields($t,get(it.current,Ht,[]),get(Ut.current.dirtyFields,Ht,[]))),vt({isDirty:!deepEqual(Object.assign(Object.assign({},kt()),{[Ht]:$t}),it.current)}))}!Ge&&set(ct.current,Ht,$t)},[Wt,Ct,Jt]),Ft=Ht=>st.current||nt.current.has(Ht)||nt.current.has((Ht.match(/\w+/)||[])[0]),lt=Ht=>{let $t=!0;if(!isEmptyObject(tt.current))for(const nn in tt.current)(!Ht||!tt.current[nn].size||tt.current[nn].has(Ht)||tt.current[nn].has(getFieldArrayParentName(Ht)))&&(et.current[nn](),$t=!1);return $t};function At(Ht,$t,nn){jt(Ht,$t,nn||{}),Ft(Ht)&&vt(),lt(Ht)}ut.current=ut.current?ut.current:async({type:Ht,target:$t})=>{let nn=$t.name;const sn=Xe.current[nn];let rn,hn;if(sn){const Nn=Ht===EVENTS.BLUR,En=skipValidation(Object.assign({isBlurEvent:Nn,isReValidateOnChange:bt,isReValidateOnBlur:Et,isTouched:!!get(Ut.current.touched,nn),isSubmitted:Ut.current.isSubmitted},Mt.current));let Cn=Wt(nn,!1),zn=!isEmptyObject(Cn)||!Nn&&Ft(nn);if(Nn&&!get(Ut.current.touched,nn)&&Rt.current.touched&&(set(Ut.current.touched,nn,!0),Cn=Object.assign(Object.assign({},Cn),{touched:Ut.current.touched})),!Ge&&isCheckBoxInput($t)&&set(ct.current,nn,getFieldValue(Xe,nn)),En)return!Nn&&lt(nn),(!isEmptyObject(Cn)||zn&&isEmptyObject(Cn))&&vt(Cn);if(xt(),ht.current){const{errors:jn}=await ht.current(kt(),pt.current,yt),Qn=Ut.current.isValid;if(rn=get(jn,nn),isCheckBoxInput($t)&&!rn&&ht.current){const Hn=getFieldArrayParentName(nn),wn=get(jn,Hn,{});wn.type&&wn.message&&(rn=wn),Hn&&(wn||get(Ut.current.errors,Hn))&&(nn=Hn)}hn=isEmptyObject(jn),Qn!==hn&&(zn=!0)}else rn=(await validateField(Xe,yt,sn,ct))[nn];!Nn&&lt(nn),Bt(nn,rn,zn,Cn,hn)}};function Qt(Ht){if(!Ge){let $t=cloneObject(Ht);for(const nn of gt.current)isKey(nn)&&!$t[nn]&&($t=Object.assign(Object.assign({},$t),{[nn]:[]}));return $t}return Ht}function kt(Ht){if(isString$2(Ht))return getFieldValue(Xe,Ht,ct);if(Array.isArray(Ht)){const $t={};for(const nn of Ht)set($t,nn,getFieldValue(Xe,nn,ct));return $t}return Qt(getFieldsValues(Xe,cloneObject(ct.current),Ge))}const zt=React$1.useCallback(async(Ht={})=>{const $t=isEmptyObject(Xe.current)?it.current:{},{errors:nn}=await ht.current(Object.assign(Object.assign(Object.assign({},$t),kt()),Ht),pt.current,yt)||{},sn=isEmptyObject(nn);Ut.current.isValid!==sn&&vt({isValid:sn})},[yt]),Yt=React$1.useCallback((Ht,$t)=>{findRemovedFieldAndRemoveListener(Xe,ut.current,Ht,ct,Ge,$t),Ge&&(unset(at.current,Ht.ref.name),unset(rt.current,Ht.ref.name))},[Ge]),_t=React$1.useCallback(Ht=>{if(st.current)vt();else{for(const $t of nt.current)if($t.startsWith(Ht)){vt();break}lt(Ht)}},[]),Pt=React$1.useCallback((Ht,$t)=>{Ht&&(Yt(Ht,$t),Ge&&!compact(Ht.options||[]).length&&(unset(Ut.current.errors,Ht.ref.name),set(Ut.current.dirtyFields,Ht.ref.name,!0),vt({isDirty:Zt()}),Rt.current.isValid&&ht.current&&zt(),_t(Ht.ref.name)))},[zt,Yt]);function ln(Ht){Ht&&(Array.isArray(Ht)?Ht:[Ht]).forEach($t=>Xe.current[$t]&&isKey($t)?delete Ut.current.errors[$t]:unset(Ut.current.errors,$t)),vt({errors:Ht?Ut.current.errors:{}})}function cn(Ht,$t){const nn=(Xe.current[Ht]||{}).ref;set(Ut.current.errors,Ht,Object.assign(Object.assign({},$t),{ref:nn})),vt({isValid:!1}),$t.shouldFocus&&nn&&nn.focus&&nn.focus()}const pn=React$1.useCallback((Ht,$t,nn)=>{const sn=nn?tt.current[nn]:nt.current;let rn=getFieldsValues(Xe,cloneObject(ct.current),Ge,!1,Ht);if(isString$2(Ht)){const Nn=getFieldArrayParentName(Ht)||Ht;return gt.current.has(Nn)&&(rn=Object.assign(Object.assign({},$e.current),rn)),assignWatchFields(rn,Ht,sn,isUndefined$1(get(it.current,Ht))?$t:get(it.current,Ht),!0)}const hn=isUndefined$1($t)?it.current:$t;return Array.isArray(Ht)?Ht.reduce((Nn,En)=>Object.assign(Object.assign({},Nn),{[En]:assignWatchFields(rn,En,sn,hn)}),{}):(st.current=isUndefined$1(nn),transformToNestObject(!isEmptyObject(rn)&&rn||hn))},[]);function yn(Ht,$t){return pn(Ht,$t)}function Tn(Ht){for(const $t of Array.isArray(Ht)?Ht:[Ht])Pt(Xe.current[$t],!0)}function on(Ht,$t={}){if(process.env.NODE_ENV!=="production"){if(!Ht.name)return console.warn("📋 Field is missing `name` attribute",Ht,"https://react-hook-form.com/api#useForm");if(gt.current.has(Ht.name.split(/\[\d+\]$/)[0])&&!RegExp(`^${Ht.name.split(/\[\d+\]$/)[0]}[\\d+].\\w+`.replace(/\[/g,"\\[").replace(/\]/g,"\\]")).test(Ht.name))return console.warn('📋 `name` prop should be in object shape: name="test[index].name"',Ht,"https://react-hook-form.com/api#useFieldArray")}const{name:nn,type:sn,value:rn}=Ht,hn=Object.assign({ref:Ht},$t),Nn=Xe.current,En=isRadioOrCheckboxFunction(Ht),Cn=isNameInFieldArray(gt.current,nn),zn=xn=>isWeb&&(!isHTMLElement(Ht)||xn===Ht);let jn=Nn[nn],Qn=!0,Hn;if(jn&&(En?Array.isArray(jn.options)&&compact(jn.options).find(xn=>rn===xn.ref.value&&zn(xn.ref)):zn(jn.ref))){Nn[nn]=Object.assign(Object.assign({},jn),$t);return}sn?jn=En?Object.assign({options:[...compact(jn&&jn.options||[]),{ref:Ht}],ref:{type:sn,name:nn}},$t):Object.assign({},hn):jn=hn,Nn[nn]=jn;const wn=isUndefined$1(get(ct.current,nn));(!isEmptyObject(it.current)||!wn)&&(Hn=get(wn?it.current:ct.current,nn),Qn=isUndefined$1(Hn),!Qn&&!Cn&&Ct(nn,Hn)),isEmptyObject($t)||(set(rt.current,nn,!0),!St&&Rt.current.isValid&&validateField(Xe,yt,jn,ct).then(xn=>{const Yn=Ut.current.isValid;isEmptyObject(xn)?set(at.current,nn,!0):unset(at.current,nn),Yn!==isEmptyObject(xn)&&vt()})),Ge&&!(Cn&&Qn)&&!Cn&&unset(Ut.current.dirtyFields,nn),sn&&attachEventListeners(En&&jn.options?jn.options[jn.options.length-1]:jn,En||isSelectInput(Ht),ut.current)}function fn(Ht,$t){if(!isWindowUndefined)if(isString$2(Ht))on({name:Ht},$t);else if(isObject$4(Ht)&&"name"in Ht)on(Ht,$t);else return nn=>nn&&on(nn,Ht)}const mn=React$1.useCallback((Ht,$t)=>async nn=>{nn&&nn.preventDefault&&(nn.preventDefault(),nn.persist());let sn={},rn=Qt(getFieldsValues(Xe,cloneObject(ct.current),Ge,!0));Rt.current.isSubmitting&&vt({isSubmitting:!0});try{if(ht.current){const{errors:hn,values:Nn}=await ht.current(rn,pt.current,yt);Ut.current.errors=sn=hn,rn=Nn}else for(const hn of Object.values(Xe.current))if(hn){const{name:Nn}=hn.ref,En=await validateField(Xe,yt,hn,ct);En[Nn]?(set(sn,Nn,En[Nn]),unset(at.current,Nn)):get(rt.current,Nn)&&(unset(Ut.current.errors,Nn),set(at.current,Nn,!0))}isEmptyObject(sn)&&Object.keys(Ut.current.errors).every(hn=>hn in Xe.current)?(vt({errors:{},isSubmitting:!0}),await Ht(rn,nn)):(Ut.current.errors=Object.assign(Object.assign({},Ut.current.errors),sn),$t&&await $t(Ut.current.errors,nn),Je&&focusOnErrorField(Xe.current,Ut.current.errors))}finally{Ut.current.isSubmitting=!1,vt({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:isEmptyObject(Ut.current.errors),submitCount:Ut.current.submitCount+1})}},[Je,yt]),vn=({errors:Ht,isDirty:$t,isSubmitted:nn,touched:sn,isValid:rn,submitCount:hn,dirtyFields:Nn})=>{rn||(at.current={},rt.current={}),Ke.current={},nt.current=new Set,st.current=!1,vt({submitCount:hn?Ut.current.submitCount:0,isDirty:$t?Ut.current.isDirty:!1,isSubmitted:nn?Ut.current.isSubmitted:!1,isValid:rn?Ut.current.isValid:!1,dirtyFields:Nn?Ut.current.dirtyFields:{},touched:sn?Ut.current.touched:{},errors:Ht?Ut.current.errors:{},isSubmitting:!1,isSubmitSuccessful:!1})},un=(Ht,$t={})=>{if(isWeb){for(const nn of Object.values(Xe.current))if(nn){const{ref:sn,options:rn}=nn,hn=isRadioOrCheckboxFunction(sn)&&Array.isArray(rn)?rn[0].ref:sn;if(isHTMLElement(hn))try{hn.closest("form").reset();break}catch{}}}Xe.current={},it.current=Object.assign({},Ht||it.current),Ht&&lt(""),Object.values(dt.current).forEach(nn=>isFunction$1(nn)&&nn()),ct.current=Ge?{}:cloneObject(Ht||it.current),vn($t)};React$1.useEffect(()=>{Ue&&Rt.current.isValid&&zt(),It.current=It.current||!isWeb?It.current:onDomRemove(Xe,Pt)},[Pt,it.current]),React$1.useEffect(()=>()=>{It.current&&It.current.disconnect(),ot.current=!0,process.env.NODE_ENV==="production"&&Object.values(Xe.current).forEach(Ht=>Pt(Ht,!0))},[]),!Ue&&Rt.current.isValid&&(Tt.isValid=deepEqual(at.current,rt.current)&&isEmptyObject(Ut.current.errors));const dn={trigger:Kt,setValue:React$1.useCallback(At,[jt,Kt]),getValues:React$1.useCallback(kt,[]),register:React$1.useCallback(fn,[it.current]),unregister:React$1.useCallback(Tn,[]),formState:isProxyEnabled?new Proxy(Tt,{get:(Ht,$t)=>{if(process.env.NODE_ENV!=="production"&&$t==="isValid"&&St&&console.warn("📋 `formState.isValid` is applicable with `onTouched`, `onChange` or `onBlur` mode. https://react-hook-form.com/api#formState"),$t in Ht)return Rt.current[$t]=!0,Ht[$t]}}):Tt},qt=React$1.useMemo(()=>Object.assign({isFormDirty:Zt,updateWatchedValue:_t,shouldUnregister:Ge,updateFormState:vt,removeFieldEventListener:Yt,watchInternal:pn,mode:Mt.current,reValidateMode:{isReValidateOnBlur:Et,isReValidateOnChange:bt},validateResolver:Ue?zt:void 0,fieldsRef:Xe,resetFieldArrayFunctionRef:dt,useWatchFieldsRef:tt,useWatchRenderFunctionsRef:et,fieldArrayDefaultValuesRef:Ke,validFieldsRef:at,fieldsWithValidationRef:rt,fieldArrayNamesRef:gt,readFormStateRef:Rt,formStateRef:Ut,defaultValuesRef:it,shallowFieldsStateRef:ct,fieldArrayValuesRef:$e},dn),[it.current,_t,Ge,Yt,pn]);return Object.assign({watch:yn,control:qt,handleSubmit:mn,reset:React$1.useCallback(un,[]),clearErrors:React$1.useCallback(ln,[]),setError:React$1.useCallback(cn,[]),errors:Tt.errors},dn)}/*! *****************************************************************************
2416
2416
  Copyright (c) Microsoft Corporation.
2417
2417
 
2418
2418
  Permission to use, copy, modify, and/or distribute this software for any
@@ -2937,7 +2937,7 @@ ${Qe.publicKey}
2937
2937
  border-radius: 31px;
2938
2938
  font-size: 1.25rem;
2939
2939
  margin: 0 auto;
2940
- `;function SpeechRecommendations({tryAgain:ue=emptyFunc}){const{t:me}=useTranslation();return jsxs(Container$5,{className:"IncodeRecorderRecommendContainer",children:[jsx(Title$7,{className:"IncodeRecorderFailureTitle",children:me("common.somethingWrong")}),jsxs(Content$1,{children:[jsxs(List$1,{children:[jsx("li",{children:me("selfieInstructions.quietPlace")}),jsx("li",{children:me("selfieInstructions.headphonesMicrophone")}),jsx("li",{children:me("selfieInstructions.clearPronunciation")})]}),jsx(StyledButton$2,{onClick:ue,children:me("common.tryAgain")})]})]})}const consentTutorialSettingsAndroidImg="data:image/png;base64,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",consentTutorialSettingsImg="data:image/png;base64,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",consentTutorialToggleAndroidImg="data:image/png;base64,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",consentTutorialToggleImg="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAUDSURBVHgB7ZtPTFxVFMa/N8OwkGkyLmpluoFaWdSkYmgTtIkM0VYWLBwNBBY13dh0R5uwBzbGRROpq6Zs0C7AtgEXXRho0mEhIUJ12sQuEOsYI8U0xjEdmmpneJ7zmDHzB5h7Z967M9Hz2wBv8t5hvjn3nHvPOQMIgiAIgiAIgiAIgiAIgiAIgiD897HgMceuvx2hH+2w0WXDardgh+jvELwlSW8tAdgJsnsXPsRW+m7F4AGeCBiZfTeUSqeG6J8/D+/FUsJiQUlIv98/thT9KgGXcFXArHAjWeHqFstnTbolpGsCHr9xcsjeskdRJx5XDscjgbHl/vlJVIErAlKc+8S01+0LBNF18A107D+KttBhNDe9SNeanNceP9vEw80NrCZ/xJ1Hd7Hw6yJdS+34HMvyjS/3zV1AhVQlYHbJzpJ4ERiChRo8HEVv6zv/CqbCzcQcJu5fxToJW4oVTweauuPRL5PQpCoBj187+Z0Nux0GYI/78JXTGHz5PVTD1A8zmPj+aqlHWk6m7oYmFQtoctmy112OXET4uQNwg4ebv+HcwnCJN1aynP2oAPK8M/TjYxiA49unb37kmnjMvsYgIuETTnz8/ekfea/YneH3D/25fuPBkuqztD2wc7anJfMsc5uWbgs8xm3PK2YXT0ymA8FW1XjogyaZTGbEhHgc87wUj2luOoDLXRcdW3mEAuknI6rP0BKQvY/2emdgAE4YXoqXg0VkW/nY9tb5dtphqNyvJSB7HwzgbFWqzLY6sK0w2cyn4e+UUoLUW8JbZvZ7Z4+chmkGaG9ZgIUhlfuUBeSqiqnY19tyCqbpbT1VEguzlaQ9UfdAQ97Hx7Na4BwNw0W2Myh7SFAX0I9XYYCO/UbM7Gz7haOFF3zlnUZdQBstMEBb6CXUCt6050MVm7KfZt0JyNuKWlFs296unu+JThY2UucrCuRG2cG2qwIKO6AjoHatrBJ2K3zWyHbZ96wsIHXUjAjIB/xaUWw7W/bfE2UBLZ8dhwG4DF8rim1TEvm53D06WXgBBuAaXa0osW2jrNPoxEAjHrhXA8iE7QKoj1zuHmUBs519z+Mgi3fzpzmYhptO+R8cxz+VaQa9bYyNSzDA1NoMTDNx//PiSzEooCVgujE9DgNwNpxenYUppldnqKxfmIH9Gf+Yyr1aAsajsSRlJiNeeIU8Yv3JBryGG/BXiryPlu/k0qDa2Id+TySQGYWhWHguNuypiCweN5V4kiEHxz5V72O025obXySehvsP/UW/9sBjUvTGvn10D683H3P9jMziDS+OIvH4l4LrJOCFbwbmYqrPqagvvH79wVJzX+vzZKwTHsN924X1RafQ6paIOc8rFo9OW5dW+ue1+t1VjXZQyfu2qbkYFu/skQ8w0BZFNXDC4JiXv2wZcob4cv/8a9CkKgHbZyOhhnQDi2hkPobhmh0LqdM3ye0tp9dKs62DhViwIRiNmR4uytFx7a1x+gSVulhuwZNZXQdPOC0ArmKzsLklzoLxVmg1uUbHs3t0wvi6xONy8LK90z9f8YyPewOW2/MyRqYWXCJJjbKxlYFbVe1tXSuo8qQnpf9uy7Y+Q53DXhcMBFurFY/xZMi8c6qnJeOj/aLFk/l145FJPooGG4PjlcS63TDzNQfuKVvUFrWoMbXdnPL8aw5cALZANUzLKcPFvfqagyAIgiAIgiAIgiAIgiAIgiAIwv+BfwArv9pzjdDTzAAAAABJRU5ErkJggg==",InstructionsContainer=styled.div`
2940
+ `;function SpeechRecommendations({tryAgain:ue=emptyFunc}){const{t:me}=useTranslation();return jsxs(Container$5,{className:"IncodeRecorderRecommendContainer","aria-live":"assertive",children:[jsx(Title$7,{className:"IncodeRecorderFailureTitle",children:me("common.somethingWrong")}),jsxs(Content$1,{children:[jsxs(List$1,{children:[jsx("li",{children:me("selfieInstructions.quietPlace")}),jsx("li",{children:me("selfieInstructions.headphonesMicrophone")}),jsx("li",{children:me("selfieInstructions.clearPronunciation")})]}),jsx(StyledButton$2,{onClick:ue,children:me("common.tryAgain")})]})]})}const consentTutorialSettingsAndroidImg="data:image/png;base64,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",consentTutorialSettingsImg="data:image/png;base64,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",consentTutorialToggleAndroidImg="data:image/png;base64,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",consentTutorialToggleImg="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAUDSURBVHgB7ZtPTFxVFMa/N8OwkGkyLmpluoFaWdSkYmgTtIkM0VYWLBwNBBY13dh0R5uwBzbGRROpq6Zs0C7AtgEXXRho0mEhIUJ12sQuEOsYI8U0xjEdmmpneJ7zmDHzB5h7Z967M9Hz2wBv8t5hvjn3nHvPOQMIgiAIgiAIgiAIgiAIgiAIgiD897HgMceuvx2hH+2w0WXDardgh+jvELwlSW8tAdgJsnsXPsRW+m7F4AGeCBiZfTeUSqeG6J8/D+/FUsJiQUlIv98/thT9KgGXcFXArHAjWeHqFstnTbolpGsCHr9xcsjeskdRJx5XDscjgbHl/vlJVIErAlKc+8S01+0LBNF18A107D+KttBhNDe9SNeanNceP9vEw80NrCZ/xJ1Hd7Hw6yJdS+34HMvyjS/3zV1AhVQlYHbJzpJ4ERiChRo8HEVv6zv/CqbCzcQcJu5fxToJW4oVTweauuPRL5PQpCoBj187+Z0Nux0GYI/78JXTGHz5PVTD1A8zmPj+aqlHWk6m7oYmFQtoctmy112OXET4uQNwg4ebv+HcwnCJN1aynP2oAPK8M/TjYxiA49unb37kmnjMvsYgIuETTnz8/ekfea/YneH3D/25fuPBkuqztD2wc7anJfMsc5uWbgs8xm3PK2YXT0ymA8FW1XjogyaZTGbEhHgc87wUj2luOoDLXRcdW3mEAuknI6rP0BKQvY/2emdgAE4YXoqXg0VkW/nY9tb5dtphqNyvJSB7HwzgbFWqzLY6sK0w2cyn4e+UUoLUW8JbZvZ7Z4+chmkGaG9ZgIUhlfuUBeSqiqnY19tyCqbpbT1VEguzlaQ9UfdAQ97Hx7Na4BwNw0W2Myh7SFAX0I9XYYCO/UbM7Gz7haOFF3zlnUZdQBstMEBb6CXUCt6050MVm7KfZt0JyNuKWlFs296unu+JThY2UucrCuRG2cG2qwIKO6AjoHatrBJ2K3zWyHbZ96wsIHXUjAjIB/xaUWw7W/bfE2UBLZ8dhwG4DF8rim1TEvm53D06WXgBBuAaXa0osW2jrNPoxEAjHrhXA8iE7QKoj1zuHmUBs519z+Mgi3fzpzmYhptO+R8cxz+VaQa9bYyNSzDA1NoMTDNx//PiSzEooCVgujE9DgNwNpxenYUppldnqKxfmIH9Gf+Yyr1aAsajsSRlJiNeeIU8Yv3JBryGG/BXiryPlu/k0qDa2Id+TySQGYWhWHguNuypiCweN5V4kiEHxz5V72O025obXySehvsP/UW/9sBjUvTGvn10D683H3P9jMziDS+OIvH4l4LrJOCFbwbmYqrPqagvvH79wVJzX+vzZKwTHsN924X1RafQ6paIOc8rFo9OW5dW+ue1+t1VjXZQyfu2qbkYFu/skQ8w0BZFNXDC4JiXv2wZcob4cv/8a9CkKgHbZyOhhnQDi2hkPobhmh0LqdM3ye0tp9dKs62DhViwIRiNmR4uytFx7a1x+gSVulhuwZNZXQdPOC0ArmKzsLklzoLxVmg1uUbHs3t0wvi6xONy8LK90z9f8YyPewOW2/MyRqYWXCJJjbKxlYFbVe1tXSuo8qQnpf9uy7Y+Q53DXhcMBFurFY/xZMi8c6qnJeOj/aLFk/l145FJPooGG4PjlcS63TDzNQfuKVvUFrWoMbXdnPL8aw5cALZANUzLKcPFvfqagyAIgiAIgiAIgiAIgiAIgiAIwv+BfwArv9pzjdDTzAAAAABJRU5ErkJggg==",InstructionsContainer=styled.div`
2941
2941
  z-index: 110;
2942
2942
  position: fixed;
2943
2943
  width: 100vw;
@@ -3171,7 +3171,7 @@ ${Qe.publicKey}
3171
3171
  }
3172
3172
  }
3173
3173
  }
3174
- `;function Microphone({sound:ue,isQuestions:me,recording:Ue,recordingText:Qe}){const[Ze,Je]=React$1.useState(ue);React$1.useEffect(()=>{Je(ue)},[ue]);const Ge=Ze>.6;return jsxs(MicrophoneContainer,{className:"IncodeRecorderMicrophoneContainer",isQuestions:me,recording:Ue,"aria-live":"assertive",children:[jsx(SoundWave,{size:"big",active:Ge}),Qe]})}const speechBuuble="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzMiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMyAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzUzNTNfNDUxNSkiPgo8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDFfNTM1M180NTE1KSI+CjxwYXRoIGQ9Ik0xNi41IDE3LjVDMTcuMzI4NCAxNy41IDE4IDE2LjgyODQgMTggMTZDMTggMTUuMTcxNiAxNy4zMjg0IDE0LjUgMTYuNSAxNC41QzE1LjY3MTYgMTQuNSAxNSAxNS4xNzE2IDE1IDE2QzE1IDE2LjgyODQgMTUuNjcxNiAxNy41IDE2LjUgMTcuNVoiIGZpbGw9IiMyMDI2M0QiLz4KPHBhdGggZD0iTTExIDE3LjVDMTEuODI4NCAxNy41IDEyLjUgMTYuODI4NCAxMi41IDE2QzEyLjUgMTUuMTcxNiAxMS44Mjg0IDE0LjUgMTEgMTQuNUMxMC4xNzE2IDE0LjUgOS41IDE1LjE3MTYgOS41IDE2QzkuNSAxNi44Mjg0IDEwLjE3MTYgMTcuNSAxMSAxNy41WiIgZmlsbD0iIzIwMjYzRCIvPgo8cGF0aCBkPSJNMjIgMTcuNUMyMi44Mjg0IDE3LjUgMjMuNSAxNi44Mjg0IDIzLjUgMTZDMjMuNSAxNS4xNzE2IDIyLjgyODQgMTQuNSAyMiAxNC41QzIxLjE3MTYgMTQuNSAyMC41IDE1LjE3MTYgMjAuNSAxNkMyMC41IDE2LjgyODQgMjEuMTcxNiAxNy41IDIyIDE3LjVaIiBmaWxsPSIjMjAyNjNEIi8+CjxwYXRoIGQ9Ik0xMC40OTExIDI2LjM4ODlDMTMuMDExOCAyNy44NDc4IDE1Ljk3NjkgMjguMzQwMSAxOC44MzM4IDI3Ljc3NDJDMjEuNjkwNyAyNy4yMDgzIDI0LjI0NDMgMjUuNjIyNyAyNi4wMTg0IDIzLjMxMzFDMjcuNzkyNiAyMS4wMDM1IDI4LjY2NjMgMTguMTI3NSAyOC40NzY2IDE1LjIyMTNDMjguMjg2OSAxMi4zMTUxIDI3LjA0NjcgOS41NzcwMyAyNC45ODczIDcuNTE3NjZDMjIuOTI4IDUuNDU4MjkgMjAuMTg5OSA0LjIxODE0IDE3LjI4MzcgNC4wMjg0M0MxNC4zNzc1IDMuODM4NzIgMTEuNTAxNSA0LjcxMjM5IDkuMTkxODkgNi40ODY1NkM2Ljg4MjI4IDguMjYwNzMgNS4yOTY3IDEwLjgxNDMgNC43MzA3OCAxMy42NzEyQzQuMTY0ODYgMTYuNTI4MSA0LjY1NzIzIDE5LjQ5MzIgNi4xMTYwOSAyMi4wMTM5TDQuNTUyMzQgMjYuNjgyN0M0LjQ5MzU4IDI2Ljg1ODkgNC40ODUwNSAyNy4wNDc5IDQuNTI3NzEgMjcuMjI4N0M0LjU3MDM3IDI3LjQwOTUgNC42NjI1NCAyNy41NzQ4IDQuNzkzODcgMjcuNzA2MUM0LjkyNTIxIDI3LjgzNzUgNS4wOTA1MiAyNy45Mjk2IDUuMjcxMjkgMjcuOTcyM0M1LjQ1MjA2IDI4LjAxNDkgNS42NDExNCAyOC4wMDY0IDUuODE3MzQgMjcuOTQ3N0wxMC40OTExIDI2LjM4ODlaIiBzdHJva2U9IiMyMDI2M0QiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjwvZz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF81MzUzXzQ1MTUiPgo8cmVjdCB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9IndoaXRlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjUpIi8+CjwvY2xpcFBhdGg+CjxjbGlwUGF0aCBpZD0iY2xpcDFfNTM1M180NTE1Ij4KPHJlY3Qgd2lkdGg9IjMyIiBoZWlnaHQ9IjMyIiBmaWxsPSJ3aGl0ZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC41KSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=",QuestionMaskContainer=styled.div`
3174
+ `;function Microphone({sound:ue,isQuestions:me,recording:Ue}){const[Qe,Ze]=React$1.useState(ue),{t:Je}=useTranslation();React$1.useEffect(()=>{Ze(ue)},[ue]);const Ge=Qe>.6;return jsxs(MicrophoneContainer,{className:"IncodeRecorderMicrophoneContainer",isQuestions:me,recording:Ue,"aria-live":"assertive",children:[jsx(SoundWave,{size:"big",active:Ge}),Je("videoSelfie.recording")]})}const speechBuuble="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzMiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMyAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzUzNTNfNDUxNSkiPgo8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDFfNTM1M180NTE1KSI+CjxwYXRoIGQ9Ik0xNi41IDE3LjVDMTcuMzI4NCAxNy41IDE4IDE2LjgyODQgMTggMTZDMTggMTUuMTcxNiAxNy4zMjg0IDE0LjUgMTYuNSAxNC41QzE1LjY3MTYgMTQuNSAxNSAxNS4xNzE2IDE1IDE2QzE1IDE2LjgyODQgMTUuNjcxNiAxNy41IDE2LjUgMTcuNVoiIGZpbGw9IiMyMDI2M0QiLz4KPHBhdGggZD0iTTExIDE3LjVDMTEuODI4NCAxNy41IDEyLjUgMTYuODI4NCAxMi41IDE2QzEyLjUgMTUuMTcxNiAxMS44Mjg0IDE0LjUgMTEgMTQuNUMxMC4xNzE2IDE0LjUgOS41IDE1LjE3MTYgOS41IDE2QzkuNSAxNi44Mjg0IDEwLjE3MTYgMTcuNSAxMSAxNy41WiIgZmlsbD0iIzIwMjYzRCIvPgo8cGF0aCBkPSJNMjIgMTcuNUMyMi44Mjg0IDE3LjUgMjMuNSAxNi44Mjg0IDIzLjUgMTZDMjMuNSAxNS4xNzE2IDIyLjgyODQgMTQuNSAyMiAxNC41QzIxLjE3MTYgMTQuNSAyMC41IDE1LjE3MTYgMjAuNSAxNkMyMC41IDE2LjgyODQgMjEuMTcxNiAxNy41IDIyIDE3LjVaIiBmaWxsPSIjMjAyNjNEIi8+CjxwYXRoIGQ9Ik0xMC40OTExIDI2LjM4ODlDMTMuMDExOCAyNy44NDc4IDE1Ljk3NjkgMjguMzQwMSAxOC44MzM4IDI3Ljc3NDJDMjEuNjkwNyAyNy4yMDgzIDI0LjI0NDMgMjUuNjIyNyAyNi4wMTg0IDIzLjMxMzFDMjcuNzkyNiAyMS4wMDM1IDI4LjY2NjMgMTguMTI3NSAyOC40NzY2IDE1LjIyMTNDMjguMjg2OSAxMi4zMTUxIDI3LjA0NjcgOS41NzcwMyAyNC45ODczIDcuNTE3NjZDMjIuOTI4IDUuNDU4MjkgMjAuMTg5OSA0LjIxODE0IDE3LjI4MzcgNC4wMjg0M0MxNC4zNzc1IDMuODM4NzIgMTEuNTAxNSA0LjcxMjM5IDkuMTkxODkgNi40ODY1NkM2Ljg4MjI4IDguMjYwNzMgNS4yOTY3IDEwLjgxNDMgNC43MzA3OCAxMy42NzEyQzQuMTY0ODYgMTYuNTI4MSA0LjY1NzIzIDE5LjQ5MzIgNi4xMTYwOSAyMi4wMTM5TDQuNTUyMzQgMjYuNjgyN0M0LjQ5MzU4IDI2Ljg1ODkgNC40ODUwNSAyNy4wNDc5IDQuNTI3NzEgMjcuMjI4N0M0LjU3MDM3IDI3LjQwOTUgNC42NjI1NCAyNy41NzQ4IDQuNzkzODcgMjcuNzA2MUM0LjkyNTIxIDI3LjgzNzUgNS4wOTA1MiAyNy45Mjk2IDUuMjcxMjkgMjcuOTcyM0M1LjQ1MjA2IDI4LjAxNDkgNS42NDExNCAyOC4wMDY0IDUuODE3MzQgMjcuOTQ3N0wxMC40OTExIDI2LjM4ODlaIiBzdHJva2U9IiMyMDI2M0QiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjwvZz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF81MzUzXzQ1MTUiPgo8cmVjdCB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIGZpbGw9IndoaXRlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjUpIi8+CjwvY2xpcFBhdGg+CjxjbGlwUGF0aCBpZD0iY2xpcDFfNTM1M180NTE1Ij4KPHJlY3Qgd2lkdGg9IjMyIiBoZWlnaHQ9IjMyIiBmaWxsPSJ3aGl0ZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC41KSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=",QuestionMaskContainer=styled.div`
3175
3175
  position: fixed;
3176
3176
  background: #fff;
3177
3177
  left: 10px;
@@ -3224,7 +3224,7 @@ ${Qe.publicKey}
3224
3224
  margin-top: 0;
3225
3225
  }
3226
3226
  }
3227
- `,QuestionsContainer=({token:ue,onNext:me,sound:Ue,questionsCount:Qe})=>{const[Ze,Je]=React$1.useState([]),[Ge,He]=React$1.useState("home");return React$1.useEffect(()=>{async function Xe(){const{questionAndAnswers:Ke}=await getRandomQuestions({token:ue,numberOfQuestions:Number(Qe)});Je(Ke||[])}Xe()},[ue]),Ge==="home"?jsx(QuestionsMask,{onNext:()=>He("questions"),plural:Ze.length>1}):jsx(Questions,{questions:Ze,onNext:me,sound:Ue,addEvent:Xe=>addEvent({token:ue,...Xe}),token:ue})};function QuestionsMask({onNext:ue,plural:me}){const{t:Ue}=useTranslation();return jsxs(QuestionMaskContainer,{className:"IncodeRecorderQuestionMaskContainer",recording:!1,"aria-live":"assertive",children:[jsxs("div",{children:[jsx("h1",{children:Ue("videoSelfie.answerOutLoud")}),jsx("p",{className:"IncodeRecorderQuestionMaskTitle",children:Ue(me?"videoSelfie.weNeedVerbalAnswersPlural":"videoSelfie.weNeedVerbalAnswer")})]}),jsx(Button$9,{className:"IncodeRecorderQuestionMaskButton",onClick:ue,children:Ue("videoSelfie.readyAnswer")})]})}const Question$1=styled.p`
3227
+ `,QuestionsContainer=({token:ue,onNext:me,sound:Ue,questionsCount:Qe})=>{const[Ze,Je]=React$1.useState([]),[Ge,He]=React$1.useState("home");return React$1.useEffect(()=>{async function Xe(){const{questionAndAnswers:Ke}=await getRandomQuestions({token:ue,numberOfQuestions:Number(Qe)});Je(Ke||[])}Xe()},[ue]),Ge==="home"?jsx(QuestionsMask,{onNext:()=>He("questions"),plural:Ze.length>1}):jsx(Questions,{questions:Ze,onNext:me,sound:Ue,addEvent:Xe=>addEvent({token:ue,...Xe}),token:ue})};function QuestionsMask({onNext:ue,plural:me}){const{t:Ue}=useTranslation();return jsxs(QuestionMaskContainer,{className:"IncodeRecorderQuestionMaskContainer",recording:!1,children:[jsxs("div",{children:[jsx("h1",{children:Ue("videoSelfie.answerOutLoud")}),jsx("p",{className:"IncodeRecorderQuestionMaskTitle","aria-live":"assertive",children:Ue(me?"videoSelfie.weNeedVerbalAnswersPlural":"videoSelfie.weNeedVerbalAnswer")})]}),jsx(Button$9,{className:"IncodeRecorderQuestionMaskButton",onClick:ue,children:Ue("videoSelfie.readyAnswer")})]})}const Question$1=styled.p`
3228
3228
  color: #000 !important;
3229
3229
  font-size: 1.4rem !important;
3230
3230
  font-weight: bold;
@@ -3292,7 +3292,7 @@ ${Qe.publicKey}
3292
3292
  &.active {
3293
3293
  background-color: #00b2fd;
3294
3294
  }
3295
- `;function Questions({questions:ue,onNext:me,sound:Ue,addEvent:Qe,token:Ze}){const{t:Je}=useTranslation(),[Ge,He]=React$1.useState(0),[Xe,Ke]=React$1.useState(!0);React$1.useEffect(()=>{addScreenEvent({module:eventModuleNames.videoSelfie,screen:`${eventScreenNames.videoSelfieVoiceQuestion}_1`,token:Ze,shouldOpen:!0})},[]);function $e(){const tt=Ge+1;if(addScreenEvent({module:eventModuleNames.videoSelfie,screen:`${eventScreenNames.videoSelfieVoiceQuestion}_${tt}`,token:Ze,shouldOpen:!1}),Qe({code:`videoSelfieQuestion${Ge+1}Answered`,payload:{question:ue[Ge]}}),tt>=ue.length){me();return}addScreenEvent({module:eventModuleNames.videoSelfie,screen:`${eventScreenNames.videoSelfieVoiceQuestion}_${tt+1}`,token:Ze,shouldOpen:!0}),screenEvent({module:eventModuleNames.videoSelfie,code:videoSelfieEvents.audioStreamClosed,payload:{question:ue[Ge]},token:Ze.token}),He(tt),Ke(!0)}function nt(){screenEvent({module:eventModuleNames.videoSelfie,code:videoSelfieEvents.audioStreamOpened,payload:{question:ue[Ge]},token:Ze.token}),Ke(!1)}return jsxs(QuestionMaskContainer,{recording:!Xe,"aria-live":"assertive",children:[jsxs("div",{children:[jsx("h1",{children:Je("videoSelfie.answerOutLoud")}),jsx(QuestionStepper,{children:ue.map(({id:tt},et)=>jsx(QuestionStep,{className:classNames({active:Ge>=et})},tt))}),jsx(Steps,{currentStep:Ge,children:ue.map(({id:tt,question:et})=>jsx(Question$1,{children:et},tt))})]}),jsxs(BottomContainer,{children:[jsx(Microphone,{sound:Ue,isQuestions:!0,recording:!Xe,recordingText:Je("videoSelfie.recording")}),Xe&&jsxs(QuestionButton,{className:"inverted",onClick:nt,children:[jsx("img",{src:speechBuuble,alt:"speech bubble"}),Je("common.tapToAnswer")]}),!Xe&&jsx(QuestionButton,{onClick:$e,children:Je("common.tapWhenDone")})]})]})}const waveEncoder=()=>{let ue=2,me=[];function Ue(Ze){let Je=Ze.length,Ge=new Uint8Array(Je*ue);for(let He=0;He<Je;He++){let Xe=He*ue,Ke=Ze[He];Ke>1?Ke=1:Ke<-1&&(Ke=-1),Ke=Ke*32768,Ge[Xe]=Ke,Ge[Xe+1]=Ke>>8}me.push(Ge)}function Qe(Ze){let Je=me.length?me[0].length:0,Ge=me.length*Je,He=new Uint8Array(44+Ge),Xe=new DataView(He.buffer);Xe.setUint32(0,1380533830,!1),Xe.setUint32(4,36+Ge,!0),Xe.setUint32(8,1463899717,!1),Xe.setUint32(12,1718449184,!1),Xe.setUint32(16,16,!0),Xe.setUint16(20,1,!0),Xe.setUint16(22,1,!0),Xe.setUint32(24,Ze,!0),Xe.setUint32(28,Ze*ue,!0),Xe.setUint16(32,ue,!0),Xe.setUint16(34,8*ue,!0),Xe.setUint32(36,1684108385,!1),Xe.setUint32(40,Ge,!0);for(let Ke=0;Ke<me.length;Ke++)He.set(me[Ke],Ke*Je+44);me=[],postMessage(He.buffer,[He.buffer])}onmessage=Ze=>{Ze.data[0]==="encode"?Ue(Ze.data[1]):Ze.data[0]==="dump"&&Qe(Ze.data[1])}};let AudioContext=window.AudioContext||window.webkitAudioContext,createWorker=ue=>{let me=ue.toString().replace(/^(\(\)\s*=>|function\s*\(\))\s*{/,"").replace(/}$/,""),Ue=new Blob([me]);return new Worker(URL.createObjectURL(Ue))},error=ue=>{let me=new Event("error");return me.data=new Error("Wrong state for "+ue),me},context,MediaRecorder$1=class Id{constructor(me,Ue=null){this.stream=me,this.config=Ue,this.state="inactive",this.em=document.createDocumentFragment(),this.encoder=createWorker(Id.encoder);let Qe=this;this.encoder.addEventListener("message",Ze=>{let Je=new Event("dataavailable");Je.data=new Blob([Ze.data],{type:Qe.mimeType}),Qe.em.dispatchEvent(Je),Qe.state==="inactive"&&Qe.em.dispatchEvent(new Event("stop"))})}start(me){if(this.state!=="inactive")return this.em.dispatchEvent(error("start"));this.state="recording",context||(context=new AudioContext(this.config)),this.clone=this.stream.clone(),this.input=context.createMediaStreamSource(this.clone),this.processor=context.createScriptProcessor(2048,1,1),this.encoder.postMessage(["init",context.sampleRate]),this.processor.onaudioprocess=Ue=>{this.state==="recording"&&this.encoder.postMessage(["encode",Ue.inputBuffer.getChannelData(0)])},this.input.connect(this.processor),this.processor.connect(context.destination),this.em.dispatchEvent(new Event("start")),me&&(this.slicing=setInterval(()=>{this.state==="recording"&&this.requestData()},me))}stop(){return this.state==="inactive"?this.em.dispatchEvent(error("stop")):(this.requestData(),this.state="inactive",this.clone.getTracks().forEach(me=>{me.stop()}),this.processor.disconnect(),this.input.disconnect(),clearInterval(this.slicing))}pause(){return this.state!=="recording"?this.em.dispatchEvent(error("pause")):(this.state="paused",this.em.dispatchEvent(new Event("pause")))}resume(){return this.state!=="paused"?this.em.dispatchEvent(error("resume")):(this.state="recording",this.em.dispatchEvent(new Event("resume")))}requestData(){return this.state==="inactive"?this.em.dispatchEvent(error("requestData")):this.encoder.postMessage(["dump",context.sampleRate])}addEventListener(...me){this.em.addEventListener(...me)}removeEventListener(...me){this.em.removeEventListener(...me)}dispatchEvent(...me){this.em.dispatchEvent(...me)}};MediaRecorder$1.prototype.mimeType="audio/wav",MediaRecorder$1.isTypeSupported=ue=>MediaRecorder$1.prototype.mimeType===ue,MediaRecorder$1.notSupported=!navigator.mediaDevices||!AudioContext,MediaRecorder$1.encoder=waveEncoder;const mpegEncoder=()=>{importScripts("https://cdnjs.cloudflare.com/ajax/libs/lamejs/1.2.0/lame.min.js");let ue=1,me=128,Ue=44100,Qe,Ze=new Int8Array;function Je(Ke,$e){if($e.length===0)return Ke;let nt=new Int8Array(Ke.length+$e.length);return nt.set(Ke),nt.set($e,Ke.length),nt}function Ge(Ke){Qe=new lamejs.Mp3Encoder(ue,Ke||Ue,me)}function He(Ke){for(let nt=0;nt<Ke.length;nt++)Ke[nt]=Ke[nt]*32767.5;let $e=Qe.encodeBuffer(Ke);Ze=Je(Ze,$e)}function Xe(){let Ke=Qe.flush();Ze=Je(Ze,Ke);let $e=Ze.buffer;Ze=new Int8Array,postMessage($e,[$e])}onmessage=Ke=>{Ke.data[0]==="init"?Ge(Ke.data[1]):Ke.data[0]==="encode"?He(Ke.data[1]):Xe(Ke.data[1])}},getVideoSelfieConfig=({session:{token:ue}})=>exports.api.get("/omni/get/videoselfie/config",{headers:{"X-Incode-Hardware-Id":ue}}).then(me=>me.data),allGoodImg="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgd2lkdGg9IjY0IgogICBoZWlnaHQ9IjY0IgogICB2aWV3Qm94PSIwIDAgNjQgNjQiCiAgIGZpbGw9Im5vbmUiCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzIiCiAgIHNvZGlwb2RpOmRvY25hbWU9ImFsbC1nb29kLS1zb2xpZC5zdmciCiAgIGlua3NjYXBlOnZlcnNpb249IjEuMyAoMGUxNTBlZCwgMjAyMy0wNy0yMSkiCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPGRlZnMKICAgICBpZD0iZGVmczIiIC8+CiAgPHNvZGlwb2RpOm5hbWVkdmlldwogICAgIGlkPSJuYW1lZHZpZXcyIgogICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIKICAgICBib3JkZXJjb2xvcj0iIzAwMDAwMCIKICAgICBib3JkZXJvcGFjaXR5PSIwLjI1IgogICAgIGlua3NjYXBlOnNob3dwYWdlc2hhZG93PSIyIgogICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwLjAiCiAgICAgaW5rc2NhcGU6cGFnZWNoZWNrZXJib2FyZD0iMCIKICAgICBpbmtzY2FwZTpkZXNrY29sb3I9IiNkMWQxZDEiCiAgICAgaW5rc2NhcGU6em9vbT0iMy42ODc1IgogICAgIGlua3NjYXBlOmN4PSIzMS44NjQ0MDciCiAgICAgaW5rc2NhcGU6Y3k9IjMyIgogICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMzg0MCIKICAgICBpbmtzY2FwZTp3aW5kb3ctaGVpZ2h0PSIyMTA3IgogICAgIGlua3NjYXBlOndpbmRvdy14PSIwIgogICAgIGlua3NjYXBlOndpbmRvdy15PSIyNSIKICAgICBpbmtzY2FwZTp3aW5kb3ctbWF4aW1pemVkPSIxIgogICAgIGlua3NjYXBlOmN1cnJlbnQtbGF5ZXI9InN2ZzIiIC8+CiAgPHBhdGgKICAgICBkPSJNNDIuNjAyNiAyNi4zNDY3TDQwLjY3MjMgMjQuNDAwNkM0MC40MDc2IDI0LjEzMzYgNDAuMDg1NyAyNCAzOS43MDc0IDI0QzM5LjMyODYgMjQgMzkuMDA2NyAyNC4xMzM2IDM4Ljc0MjEgMjQuNDAwNkwyOS40MzEgMzMuODAyMkwyNS4yNTggMjkuNTgwN0MyNC45OTMxIDI5LjMxMzYgMjQuNjcxNCAyOS4xODAyIDI0LjI5MyAyOS4xODAyQzIzLjkxNDQgMjkuMTgwMiAyMy41OTI3IDI5LjMxMzYgMjMuMzI3NyAyOS41ODA3TDIxLjM5NzQgMzEuNTI2OUMyMS4xMzI0IDMxLjc5NCAyMSAzMi4xMTg0IDIxIDMyLjUwMDFDMjEgMzIuODgxNSAyMS4xMzI0IDMzLjIwNjIgMjEuMzk3NCAzMy40NzMzTDI2LjUzNTQgMzguNjUzMkwyOC40NjU4IDQwLjU5OTNDMjguNzMwNiA0MC44NjY2IDI5LjA1MjQgNDEgMjkuNDMxIDQxQzI5LjgwOTMgNDEgMzAuMTMxMSA0MC44NjYyIDMwLjM5NjEgNDAuNTk5M0wzMi4zMjY1IDM4LjY1MzJMNDIuNjAyNiAyOC4yOTNDNDIuODY3MyAyOC4wMjU4IDQzIDI3LjcwMTQgNDMgMjcuMzE5OEM0My4wMDAyIDI2LjkzODMgNDIuODY3MyAyNi42MTM5IDQyLjYwMjYgMjYuMzQ2N1oiCiAgICAgZmlsbD0id2hpdGUiCiAgICAgaWQ9InBhdGgxIgogICAgIHN0eWxlPSJmaWxsOiMwY2Q1YTI7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgPHBhdGgKICAgICBmaWxsLXJ1bGU9ImV2ZW5vZGQiCiAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgIGQ9Ik00NC41IDlDNDMuNjcxNiA5IDQzIDkuNjcxNTcgNDMgMTAuNUM0MyAxMS4zMjg0IDQzLjY3MTYgMTIgNDQuNSAxMkg1MS41QzUxLjYzMjYgMTIgNTEuNzU5OCAxMi4wNTI3IDUxLjg1MzYgMTIuMTQ2NEM1MS45NDczIDEyLjI0MDIgNTIgMTIuMzY3NCA1MiAxMi41VjE5LjVDNTIgMjAuMzI4NCA1Mi42NzE2IDIxIDUzLjUgMjFDNTQuMzI4NCAyMSA1NSAyMC4zMjg0IDU1IDE5LjVWMTIuNUM1NSAxMS41NzE3IDU0LjYzMTMgMTAuNjgxNSA1My45NzQ5IDEwLjAyNTFDNTMuMzE4NSA5LjM2ODc1IDUyLjQyODMgOSA1MS41IDlINDQuNVpNNTUgNDUuNUM1NSA0NC42NzE2IDU0LjMyODQgNDQgNTMuNSA0NEM1Mi42NzE2IDQ0IDUyIDQ0LjY3MTYgNTIgNDUuNVY1Mi41QzUyIDUyLjYzMjYgNTEuOTQ3MyA1Mi43NTk4IDUxLjg1MzYgNTIuODUzNkM1MS43NTk4IDUyLjk0NzMgNTEuNjMyNiA1MyA1MS41IDUzSDQ0LjVDNDMuNjcxNiA1MyA0MyA1My42NzE2IDQzIDU0LjVDNDMgNTUuMzI4NCA0My42NzE2IDU2IDQ0LjUgNTZINTEuNUM1Mi40MjgzIDU2IDUzLjMxODUgNTUuNjMxMyA1My45NzQ5IDU0Ljk3NDlDNTQuNjMxMyA1NC4zMTg1IDU1IDUzLjQyODMgNTUgNTIuNVY0NS41Wk05LjUgNDRDMTAuMzI4NCA0NCAxMSA0NC42NzE2IDExIDQ1LjVWNTIuNUMxMSA1Mi42MzI2IDExLjA1MjcgNTIuNzU5OCAxMS4xNDY0IDUyLjg1MzZDMTEuMjQwMiA1Mi45NDczIDExLjM2NzQgNTMgMTEuNSA1M0gxOC41QzE5LjMyODQgNTMgMjAgNTMuNjcxNiAyMCA1NC41QzIwIDU1LjMyODQgMTkuMzI4NCA1NiAxOC41IDU2SDExLjVDMTAuNTcxNyA1NiA5LjY4MTUxIDU1LjYzMTMgOS4wMjUxMyA1NC45NzQ5QzguMzY4NzUgNTQuMzE4NSA4IDUzLjQyODMgOCA1Mi41VjQ1LjVDOCA0NC42NzE2IDguNjcxNTcgNDQgOS41IDQ0Wk0xMS41IDlDMTAuNTcxNyA5IDkuNjgxNSA5LjM2ODc1IDkuMDI1MTMgMTAuMDI1MUM4LjM2ODc1IDEwLjY4MTUgOCAxMS41NzE3IDggMTIuNVYxOS41QzggMjAuMzI4NCA4LjY3MTU3IDIxIDkuNSAyMUMxMC4zMjg0IDIxIDExIDIwLjMyODQgMTEgMTkuNVYxMi41QzExIDEyLjM2NzQgMTEuMDUyNyAxMi4yNDAyIDExLjE0NjQgMTIuMTQ2NEMxMS4yNDAyIDEyLjA1MjcgMTEuMzY3NCAxMiAxMS41IDEySDE4LjVDMTkuMzI4NCAxMiAyMCAxMS4zMjg0IDIwIDEwLjVDMjAgOS42NzE1NyAxOS4zMjg0IDkgMTguNSA5SDExLjVaIgogICAgIGZpbGw9IiMwQ0Q1QTIiCiAgICAgaWQ9InBhdGgyIgogICAgIHN0eWxlPSJmaWxsOiMwY2Q1YTI7ZmlsbC1vcGFjaXR5OjEiIC8+Cjwvc3ZnPgo=",spinner="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjUiIGhlaWdodD0iNjQiIHZpZXdCb3g9IjAgMCA2NSA2NCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggb3BhY2l0eT0iMC4zIiBkPSJNNTYuNSAzMi40NTQxQzU2LjUgNDUuNzA4OSA0NS43NTQ4IDU2LjQ1NDEgMzIuNSA1Ni40NTQxQzE5LjI0NTIgNTYuNDU0MSA4LjUgNDUuNzA4OSA4LjUgMzIuNDU0MUM4LjUgMTkuMTk5MyAxOS4yNDUyIDguNDU0MSAzMi41IDguNDU0MUM0NS43NTQ4IDguNDU0MSA1Ni41IDE5LjE5OTMgNTYuNSAzMi40NTQxWk0xNS45ODM2IDMyLjQ1NDFDMTUuOTgzNiA0MS41NzU5IDIzLjM3ODIgNDguOTcwNSAzMi41IDQ4Ljk3MDVDNDEuNjIxOCA0OC45NzA1IDQ5LjAxNjQgNDEuNTc1OSA0OS4wMTY0IDMyLjQ1NDFDNDkuMDE2NCAyMy4zMzIzIDQxLjYyMTggMTUuOTM3NyAzMi41IDE1LjkzNzdDMjMuMzc4MiAxNS45Mzc3IDE1Ljk4MzYgMjMuMzMyMyAxNS45ODM2IDMyLjQ1NDFaIiBmaWxsPSIjMjAyNjNEIi8+CjxwYXRoIGQ9Ik01Mi43NTgyIDMyLjQ1NDFDNTQuODI0NyAzMi40NTQxIDU2LjUyOTggMzAuNzY4OSA1Ni4yMDg5IDI4LjcyNzRDNTUuOTE1MSAyNi44NTgyIDU1LjQwMDYgMjUuMDI1OSA1NC42NzMxIDIzLjI2OTdDNTMuNDY3IDIwLjM1NzkgNTEuNjk5MiAxNy43MTIxIDQ5LjQ3MDYgMTUuNDgzNUM0Ny4yNDIgMTMuMjU0OSA0NC41OTYyIDExLjQ4NzEgNDEuNjg0NCAxMC4yODFDMzkuOTI4MiA5LjU1MzU0IDM4LjA5NTkgOS4wMzkwMiAzNi4yMjY3IDguNzQ1MkMzNC4xODUyIDguNDI0MzEgMzIuNSAxMC4xMjk0IDMyLjUgMTIuMTk1OUMzMi41IDE0LjI2MjQgMzQuMTk2MiAxNS44OTU2IDM2LjIwOTkgMTYuMzU5OEMzNy4wOTk3IDE2LjU2NDkgMzcuOTczIDE2Ljg0MzkgMzguODIwNSAxNy4xOTQ5QzQwLjgyNDQgMTguMDI1IDQyLjY0NTIgMTkuMjQxNiA0NC4xNzg5IDIwLjc3NTJDNDUuNzEyNSAyMi4zMDg5IDQ2LjkyOTEgMjQuMTI5NyA0Ny43NTkyIDI2LjEzMzZDNDguMTEwMiAyNi45ODExIDQ4LjM4OTIgMjcuODU0NCA0OC41OTQzIDI4Ljc0NDJDNDkuMDU4NSAzMC43NTc5IDUwLjY5MTcgMzIuNDU0MSA1Mi43NTgyIDMyLjQ1NDFaIiBmaWxsPSIjMjAyNjNEIi8+Cjwvc3ZnPgo=";MediaRecorder$1.encoder=mpegEncoder,MediaRecorder$1.prototype.mimeType="audio/mpeg";const MediaRecorder=MediaRecorder$1,Question=styled(Question$1)`
3295
+ `;function Questions({questions:ue,onNext:me,sound:Ue,addEvent:Qe,token:Ze}){const{t:Je}=useTranslation(),[Ge,He]=React$1.useState(0),[Xe,Ke]=React$1.useState(!0),$e=React$1.useRef(null),nt=React$1.useRef(null);React$1.useEffect(()=>{addScreenEvent({module:eventModuleNames.videoSelfie,screen:`${eventScreenNames.videoSelfieVoiceQuestion}_1`,token:Ze,shouldOpen:!0})},[]),React$1.useEffect(()=>{!Xe&&nt.current&&nt.current.focus(),Xe&&$e.current&&$e.current.focus()},[Xe]);function tt(){const rt=Ge+1;if(addScreenEvent({module:eventModuleNames.videoSelfie,screen:`${eventScreenNames.videoSelfieVoiceQuestion}_${rt}`,token:Ze,shouldOpen:!1}),Qe({code:`videoSelfieQuestion${Ge+1}Answered`,payload:{question:ue[Ge]}}),rt>=ue.length){me();return}addScreenEvent({module:eventModuleNames.videoSelfie,screen:`${eventScreenNames.videoSelfieVoiceQuestion}_${rt+1}`,token:Ze,shouldOpen:!0}),screenEvent({module:eventModuleNames.videoSelfie,code:videoSelfieEvents.audioStreamClosed,payload:{question:ue[Ge]},token:Ze.token}),He(rt),Ke(!0)}function et(){screenEvent({module:eventModuleNames.videoSelfie,code:videoSelfieEvents.audioStreamOpened,payload:{question:ue[Ge]},token:Ze.token}),Ke(!1)}return jsxs(QuestionMaskContainer,{recording:!Xe,children:[jsxs("div",{children:[jsx("h1",{children:Je("videoSelfie.answerOutLoud")}),jsx(QuestionStepper,{children:ue.map(({id:rt},at)=>jsx(QuestionStep,{className:classNames({active:Ge>=at})},rt))}),jsx(Steps,{currentStep:Ge,children:ue.map(({id:rt,question:at})=>jsx(Question$1,{"aria-live":"assertive",children:at},rt))})]}),jsx(BottomContainer,{children:Xe?jsxs(QuestionButton,{ref:$e,className:"inverted",onClick:et,"aria-live":"polite",children:[jsx("img",{src:speechBuuble,alt:"speech bubble"}),Je("common.tapToAnswer")]}):jsxs(Fragment,{children:[jsx(Microphone,{sound:Ue,isQuestions:!0,recording:!Xe}),jsx(QuestionButton,{ref:nt,onClick:tt,"aria-live":"polite",children:Je("common.tapWhenDone")})]})})]})}const waveEncoder=()=>{let ue=2,me=[];function Ue(Ze){let Je=Ze.length,Ge=new Uint8Array(Je*ue);for(let He=0;He<Je;He++){let Xe=He*ue,Ke=Ze[He];Ke>1?Ke=1:Ke<-1&&(Ke=-1),Ke=Ke*32768,Ge[Xe]=Ke,Ge[Xe+1]=Ke>>8}me.push(Ge)}function Qe(Ze){let Je=me.length?me[0].length:0,Ge=me.length*Je,He=new Uint8Array(44+Ge),Xe=new DataView(He.buffer);Xe.setUint32(0,1380533830,!1),Xe.setUint32(4,36+Ge,!0),Xe.setUint32(8,1463899717,!1),Xe.setUint32(12,1718449184,!1),Xe.setUint32(16,16,!0),Xe.setUint16(20,1,!0),Xe.setUint16(22,1,!0),Xe.setUint32(24,Ze,!0),Xe.setUint32(28,Ze*ue,!0),Xe.setUint16(32,ue,!0),Xe.setUint16(34,8*ue,!0),Xe.setUint32(36,1684108385,!1),Xe.setUint32(40,Ge,!0);for(let Ke=0;Ke<me.length;Ke++)He.set(me[Ke],Ke*Je+44);me=[],postMessage(He.buffer,[He.buffer])}onmessage=Ze=>{Ze.data[0]==="encode"?Ue(Ze.data[1]):Ze.data[0]==="dump"&&Qe(Ze.data[1])}};let AudioContext=window.AudioContext||window.webkitAudioContext,createWorker=ue=>{let me=ue.toString().replace(/^(\(\)\s*=>|function\s*\(\))\s*{/,"").replace(/}$/,""),Ue=new Blob([me]);return new Worker(URL.createObjectURL(Ue))},error=ue=>{let me=new Event("error");return me.data=new Error("Wrong state for "+ue),me},context,MediaRecorder$1=class Id{constructor(me,Ue=null){this.stream=me,this.config=Ue,this.state="inactive",this.em=document.createDocumentFragment(),this.encoder=createWorker(Id.encoder);let Qe=this;this.encoder.addEventListener("message",Ze=>{let Je=new Event("dataavailable");Je.data=new Blob([Ze.data],{type:Qe.mimeType}),Qe.em.dispatchEvent(Je),Qe.state==="inactive"&&Qe.em.dispatchEvent(new Event("stop"))})}start(me){if(this.state!=="inactive")return this.em.dispatchEvent(error("start"));this.state="recording",context||(context=new AudioContext(this.config)),this.clone=this.stream.clone(),this.input=context.createMediaStreamSource(this.clone),this.processor=context.createScriptProcessor(2048,1,1),this.encoder.postMessage(["init",context.sampleRate]),this.processor.onaudioprocess=Ue=>{this.state==="recording"&&this.encoder.postMessage(["encode",Ue.inputBuffer.getChannelData(0)])},this.input.connect(this.processor),this.processor.connect(context.destination),this.em.dispatchEvent(new Event("start")),me&&(this.slicing=setInterval(()=>{this.state==="recording"&&this.requestData()},me))}stop(){return this.state==="inactive"?this.em.dispatchEvent(error("stop")):(this.requestData(),this.state="inactive",this.clone.getTracks().forEach(me=>{me.stop()}),this.processor.disconnect(),this.input.disconnect(),clearInterval(this.slicing))}pause(){return this.state!=="recording"?this.em.dispatchEvent(error("pause")):(this.state="paused",this.em.dispatchEvent(new Event("pause")))}resume(){return this.state!=="paused"?this.em.dispatchEvent(error("resume")):(this.state="recording",this.em.dispatchEvent(new Event("resume")))}requestData(){return this.state==="inactive"?this.em.dispatchEvent(error("requestData")):this.encoder.postMessage(["dump",context.sampleRate])}addEventListener(...me){this.em.addEventListener(...me)}removeEventListener(...me){this.em.removeEventListener(...me)}dispatchEvent(...me){this.em.dispatchEvent(...me)}};MediaRecorder$1.prototype.mimeType="audio/wav",MediaRecorder$1.isTypeSupported=ue=>MediaRecorder$1.prototype.mimeType===ue,MediaRecorder$1.notSupported=!navigator.mediaDevices||!AudioContext,MediaRecorder$1.encoder=waveEncoder;const mpegEncoder=()=>{importScripts("https://cdnjs.cloudflare.com/ajax/libs/lamejs/1.2.0/lame.min.js");let ue=1,me=128,Ue=44100,Qe,Ze=new Int8Array;function Je(Ke,$e){if($e.length===0)return Ke;let nt=new Int8Array(Ke.length+$e.length);return nt.set(Ke),nt.set($e,Ke.length),nt}function Ge(Ke){Qe=new lamejs.Mp3Encoder(ue,Ke||Ue,me)}function He(Ke){for(let nt=0;nt<Ke.length;nt++)Ke[nt]=Ke[nt]*32767.5;let $e=Qe.encodeBuffer(Ke);Ze=Je(Ze,$e)}function Xe(){let Ke=Qe.flush();Ze=Je(Ze,Ke);let $e=Ze.buffer;Ze=new Int8Array,postMessage($e,[$e])}onmessage=Ke=>{Ke.data[0]==="init"?Ge(Ke.data[1]):Ke.data[0]==="encode"?He(Ke.data[1]):Xe(Ke.data[1])}},getVideoSelfieConfig=({session:{token:ue}})=>exports.api.get("/omni/get/videoselfie/config",{headers:{"X-Incode-Hardware-Id":ue}}).then(me=>me.data),allGoodImg="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgd2lkdGg9IjY0IgogICBoZWlnaHQ9IjY0IgogICB2aWV3Qm94PSIwIDAgNjQgNjQiCiAgIGZpbGw9Im5vbmUiCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzIiCiAgIHNvZGlwb2RpOmRvY25hbWU9ImFsbC1nb29kLS1zb2xpZC5zdmciCiAgIGlua3NjYXBlOnZlcnNpb249IjEuMyAoMGUxNTBlZCwgMjAyMy0wNy0yMSkiCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPGRlZnMKICAgICBpZD0iZGVmczIiIC8+CiAgPHNvZGlwb2RpOm5hbWVkdmlldwogICAgIGlkPSJuYW1lZHZpZXcyIgogICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIKICAgICBib3JkZXJjb2xvcj0iIzAwMDAwMCIKICAgICBib3JkZXJvcGFjaXR5PSIwLjI1IgogICAgIGlua3NjYXBlOnNob3dwYWdlc2hhZG93PSIyIgogICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwLjAiCiAgICAgaW5rc2NhcGU6cGFnZWNoZWNrZXJib2FyZD0iMCIKICAgICBpbmtzY2FwZTpkZXNrY29sb3I9IiNkMWQxZDEiCiAgICAgaW5rc2NhcGU6em9vbT0iMy42ODc1IgogICAgIGlua3NjYXBlOmN4PSIzMS44NjQ0MDciCiAgICAgaW5rc2NhcGU6Y3k9IjMyIgogICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMzg0MCIKICAgICBpbmtzY2FwZTp3aW5kb3ctaGVpZ2h0PSIyMTA3IgogICAgIGlua3NjYXBlOndpbmRvdy14PSIwIgogICAgIGlua3NjYXBlOndpbmRvdy15PSIyNSIKICAgICBpbmtzY2FwZTp3aW5kb3ctbWF4aW1pemVkPSIxIgogICAgIGlua3NjYXBlOmN1cnJlbnQtbGF5ZXI9InN2ZzIiIC8+CiAgPHBhdGgKICAgICBkPSJNNDIuNjAyNiAyNi4zNDY3TDQwLjY3MjMgMjQuNDAwNkM0MC40MDc2IDI0LjEzMzYgNDAuMDg1NyAyNCAzOS43MDc0IDI0QzM5LjMyODYgMjQgMzkuMDA2NyAyNC4xMzM2IDM4Ljc0MjEgMjQuNDAwNkwyOS40MzEgMzMuODAyMkwyNS4yNTggMjkuNTgwN0MyNC45OTMxIDI5LjMxMzYgMjQuNjcxNCAyOS4xODAyIDI0LjI5MyAyOS4xODAyQzIzLjkxNDQgMjkuMTgwMiAyMy41OTI3IDI5LjMxMzYgMjMuMzI3NyAyOS41ODA3TDIxLjM5NzQgMzEuNTI2OUMyMS4xMzI0IDMxLjc5NCAyMSAzMi4xMTg0IDIxIDMyLjUwMDFDMjEgMzIuODgxNSAyMS4xMzI0IDMzLjIwNjIgMjEuMzk3NCAzMy40NzMzTDI2LjUzNTQgMzguNjUzMkwyOC40NjU4IDQwLjU5OTNDMjguNzMwNiA0MC44NjY2IDI5LjA1MjQgNDEgMjkuNDMxIDQxQzI5LjgwOTMgNDEgMzAuMTMxMSA0MC44NjYyIDMwLjM5NjEgNDAuNTk5M0wzMi4zMjY1IDM4LjY1MzJMNDIuNjAyNiAyOC4yOTNDNDIuODY3MyAyOC4wMjU4IDQzIDI3LjcwMTQgNDMgMjcuMzE5OEM0My4wMDAyIDI2LjkzODMgNDIuODY3MyAyNi42MTM5IDQyLjYwMjYgMjYuMzQ2N1oiCiAgICAgZmlsbD0id2hpdGUiCiAgICAgaWQ9InBhdGgxIgogICAgIHN0eWxlPSJmaWxsOiMwY2Q1YTI7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgPHBhdGgKICAgICBmaWxsLXJ1bGU9ImV2ZW5vZGQiCiAgICAgY2xpcC1ydWxlPSJldmVub2RkIgogICAgIGQ9Ik00NC41IDlDNDMuNjcxNiA5IDQzIDkuNjcxNTcgNDMgMTAuNUM0MyAxMS4zMjg0IDQzLjY3MTYgMTIgNDQuNSAxMkg1MS41QzUxLjYzMjYgMTIgNTEuNzU5OCAxMi4wNTI3IDUxLjg1MzYgMTIuMTQ2NEM1MS45NDczIDEyLjI0MDIgNTIgMTIuMzY3NCA1MiAxMi41VjE5LjVDNTIgMjAuMzI4NCA1Mi42NzE2IDIxIDUzLjUgMjFDNTQuMzI4NCAyMSA1NSAyMC4zMjg0IDU1IDE5LjVWMTIuNUM1NSAxMS41NzE3IDU0LjYzMTMgMTAuNjgxNSA1My45NzQ5IDEwLjAyNTFDNTMuMzE4NSA5LjM2ODc1IDUyLjQyODMgOSA1MS41IDlINDQuNVpNNTUgNDUuNUM1NSA0NC42NzE2IDU0LjMyODQgNDQgNTMuNSA0NEM1Mi42NzE2IDQ0IDUyIDQ0LjY3MTYgNTIgNDUuNVY1Mi41QzUyIDUyLjYzMjYgNTEuOTQ3MyA1Mi43NTk4IDUxLjg1MzYgNTIuODUzNkM1MS43NTk4IDUyLjk0NzMgNTEuNjMyNiA1MyA1MS41IDUzSDQ0LjVDNDMuNjcxNiA1MyA0MyA1My42NzE2IDQzIDU0LjVDNDMgNTUuMzI4NCA0My42NzE2IDU2IDQ0LjUgNTZINTEuNUM1Mi40MjgzIDU2IDUzLjMxODUgNTUuNjMxMyA1My45NzQ5IDU0Ljk3NDlDNTQuNjMxMyA1NC4zMTg1IDU1IDUzLjQyODMgNTUgNTIuNVY0NS41Wk05LjUgNDRDMTAuMzI4NCA0NCAxMSA0NC42NzE2IDExIDQ1LjVWNTIuNUMxMSA1Mi42MzI2IDExLjA1MjcgNTIuNzU5OCAxMS4xNDY0IDUyLjg1MzZDMTEuMjQwMiA1Mi45NDczIDExLjM2NzQgNTMgMTEuNSA1M0gxOC41QzE5LjMyODQgNTMgMjAgNTMuNjcxNiAyMCA1NC41QzIwIDU1LjMyODQgMTkuMzI4NCA1NiAxOC41IDU2SDExLjVDMTAuNTcxNyA1NiA5LjY4MTUxIDU1LjYzMTMgOS4wMjUxMyA1NC45NzQ5QzguMzY4NzUgNTQuMzE4NSA4IDUzLjQyODMgOCA1Mi41VjQ1LjVDOCA0NC42NzE2IDguNjcxNTcgNDQgOS41IDQ0Wk0xMS41IDlDMTAuNTcxNyA5IDkuNjgxNSA5LjM2ODc1IDkuMDI1MTMgMTAuMDI1MUM4LjM2ODc1IDEwLjY4MTUgOCAxMS41NzE3IDggMTIuNVYxOS41QzggMjAuMzI4NCA4LjY3MTU3IDIxIDkuNSAyMUMxMC4zMjg0IDIxIDExIDIwLjMyODQgMTEgMTkuNVYxMi41QzExIDEyLjM2NzQgMTEuMDUyNyAxMi4yNDAyIDExLjE0NjQgMTIuMTQ2NEMxMS4yNDAyIDEyLjA1MjcgMTEuMzY3NCAxMiAxMS41IDEySDE4LjVDMTkuMzI4NCAxMiAyMCAxMS4zMjg0IDIwIDEwLjVDMjAgOS42NzE1NyAxOS4zMjg0IDkgMTguNSA5SDExLjVaIgogICAgIGZpbGw9IiMwQ0Q1QTIiCiAgICAgaWQ9InBhdGgyIgogICAgIHN0eWxlPSJmaWxsOiMwY2Q1YTI7ZmlsbC1vcGFjaXR5OjEiIC8+Cjwvc3ZnPgo=",spinner="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjUiIGhlaWdodD0iNjQiIHZpZXdCb3g9IjAgMCA2NSA2NCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggb3BhY2l0eT0iMC4zIiBkPSJNNTYuNSAzMi40NTQxQzU2LjUgNDUuNzA4OSA0NS43NTQ4IDU2LjQ1NDEgMzIuNSA1Ni40NTQxQzE5LjI0NTIgNTYuNDU0MSA4LjUgNDUuNzA4OSA4LjUgMzIuNDU0MUM4LjUgMTkuMTk5MyAxOS4yNDUyIDguNDU0MSAzMi41IDguNDU0MUM0NS43NTQ4IDguNDU0MSA1Ni41IDE5LjE5OTMgNTYuNSAzMi40NTQxWk0xNS45ODM2IDMyLjQ1NDFDMTUuOTgzNiA0MS41NzU5IDIzLjM3ODIgNDguOTcwNSAzMi41IDQ4Ljk3MDVDNDEuNjIxOCA0OC45NzA1IDQ5LjAxNjQgNDEuNTc1OSA0OS4wMTY0IDMyLjQ1NDFDNDkuMDE2NCAyMy4zMzIzIDQxLjYyMTggMTUuOTM3NyAzMi41IDE1LjkzNzdDMjMuMzc4MiAxNS45Mzc3IDE1Ljk4MzYgMjMuMzMyMyAxNS45ODM2IDMyLjQ1NDFaIiBmaWxsPSIjMjAyNjNEIi8+CjxwYXRoIGQ9Ik01Mi43NTgyIDMyLjQ1NDFDNTQuODI0NyAzMi40NTQxIDU2LjUyOTggMzAuNzY4OSA1Ni4yMDg5IDI4LjcyNzRDNTUuOTE1MSAyNi44NTgyIDU1LjQwMDYgMjUuMDI1OSA1NC42NzMxIDIzLjI2OTdDNTMuNDY3IDIwLjM1NzkgNTEuNjk5MiAxNy43MTIxIDQ5LjQ3MDYgMTUuNDgzNUM0Ny4yNDIgMTMuMjU0OSA0NC41OTYyIDExLjQ4NzEgNDEuNjg0NCAxMC4yODFDMzkuOTI4MiA5LjU1MzU0IDM4LjA5NTkgOS4wMzkwMiAzNi4yMjY3IDguNzQ1MkMzNC4xODUyIDguNDI0MzEgMzIuNSAxMC4xMjk0IDMyLjUgMTIuMTk1OUMzMi41IDE0LjI2MjQgMzQuMTk2MiAxNS44OTU2IDM2LjIwOTkgMTYuMzU5OEMzNy4wOTk3IDE2LjU2NDkgMzcuOTczIDE2Ljg0MzkgMzguODIwNSAxNy4xOTQ5QzQwLjgyNDQgMTguMDI1IDQyLjY0NTIgMTkuMjQxNiA0NC4xNzg5IDIwLjc3NTJDNDUuNzEyNSAyMi4zMDg5IDQ2LjkyOTEgMjQuMTI5NyA0Ny43NTkyIDI2LjEzMzZDNDguMTEwMiAyNi45ODExIDQ4LjM4OTIgMjcuODU0NCA0OC41OTQzIDI4Ljc0NDJDNDkuMDU4NSAzMC43NTc5IDUwLjY5MTcgMzIuNDU0MSA1Mi43NTgyIDMyLjQ1NDFaIiBmaWxsPSIjMjAyNjNEIi8+Cjwvc3ZnPgo=";MediaRecorder$1.encoder=mpegEncoder,MediaRecorder$1.prototype.mimeType="audio/mpeg";const MediaRecorder=MediaRecorder$1,Question=styled(Question$1)`
3296
3296
  font-size: 1.5rem;
3297
3297
  span {
3298
3298
  font-size: 1.125rem !important;
@@ -3346,7 +3346,7 @@ ${Qe.publicKey}
3346
3346
  color: #000;
3347
3347
  text-align: center;
3348
3348
  }
3349
- `;function Processing$1({status:ue,message:me}){return jsxs(ProcessingContainer,{children:[ue===stateMachineStatus.PENDING?jsx(SpinImage,{src:spinner,alt:"spinner"}):jsx("img",{src:allGoodImg,alt:"all good"}),jsx("h1",{children:me})]})}const SpeechMask=({onNext:ue,speechToTextCheck:me,stopRecording:Ue,token:Qe,stream:Ze,numberOfTries:Je,sound:Ge})=>{const{t:He,i18n:Xe}=useTranslation(),[Ke,$e]=React$1.useState(),[nt,tt]=React$1.useState(!0),et=React$1.useRef(),rt=React$1.useRef(0),{status:at,setStatus:it}=useStateMachine(),[ot,st]=React$1.useState(null),[ut,ct]=React$1.useState(null);useScreenEvents({module:eventModuleNames.videoSelfie,screen:eventScreenNames.videoSelfieVoiceFinalQuestion,token:Qe.token}),React$1.useEffect(()=>{async function yt(){const Tt=new MediaRecorder(Ze.clone());et.current=Tt,Tt==null||Tt.start(),screenEvent({module:eventModuleNames.videoSelfie,code:videoSelfieEvents.audioStreamOpened,token:Qe.token})}return yt(),()=>{}},[Ze]),React$1.useEffect(()=>{getVideoSelfieConfig({session:Qe}).then(yt=>{const Tt=getConsent(yt,Xe.language);$e(Tt)})},[]);function dt(){var mt,Rt,Ut;if(me===!1){ue(!0);return}ut&&clearTimeout(ut),st(!1),it({type:stateMachineStatus.PENDING});let yt=[];async function Tt(It){if(!(It.data.size>0))return ue(!0);yt.push(It.data);const Et=new Blob(yt,{type:"audio/mp3"}),{success:bt}=await addSpeech({token:Qe.token,audio:Et}).catch(()=>({success:!1}));if(et.current.removeEventListener("dataavailable",Tt),bt)return it({type:stateMachineStatus.ALL_GOOD}),addEvent({module:eventModuleNames.videoSelfie,token:Qe.token,code:videoSelfieEvents.videoSelfieTosAccepted}),await sleep(3e3),it({type:stateMachineStatus.SUCCESS}),Ue(()=>ue(!0));addEvent({module:eventModuleNames.videoSelfie,token:Qe.token,code:videoSelfieEvents.videoSelfieTosNotAccepted}),et.current.start(),yt=[];const vt=rt.current+1;if(rt.current=vt,Je!==-1&&vt>=Je)return Ue(()=>ue(!1));it({type:stateMachineStatus.REJECTED}),tt(!0)}et.current.addEventListener("dataavailable",Tt);try{(mt=et.current)==null||mt.stop(),screenEvent({module:eventModuleNames.videoSelfie,code:videoSelfieEvents.audioStreamClosed,token:Qe.token}),(Ut=(Rt=et.current)==null?void 0:Rt.stream)==null||Ut.getTracks().forEach(It=>It.stop())}catch(It){console.error(It)}}function pt(){it({type:stateMachineStatus.IDLE}),tt(!0),st(!1)}function ht(){tt(!1),ct(setTimeout(()=>{st(!0)},1e4))}const gt=at===stateMachineStatus.IDLE||at===stateMachineStatus.SUCCESS,Mt=at===stateMachineStatus.REJECTED,St=[stateMachineStatus.PENDING,stateMachineStatus.ALL_GOOD].includes(at);return ot?jsxs(RanOutAlert,{className:"ranout-alert IncodeRecorderRanoutTimeAlert",children:[jsx("strong",{children:He("videoSelfie.finishedSpeaking")}),jsxs("div",{children:[jsxs("span",{children:[He("videoSelfie.didYouSay"),' "',Ke,'"?']}),jsx("span",{className:"pl-1",children:He("videoSelfie.ifYouHavent")})]}),jsx(QuestionButton,{onClick:dt,children:He("videoSelfie.imDone")}),jsx("a",{onClick:pt,children:He("videoSelfie.tryAgain")})]}):jsxs(QuestionMaskContainer,{className:"speech question-container IncodeRecorderQuestionContainer",recording:!nt&&!St,children:[St&&jsx(Processing$1,{status:at,message:He(`videoSelfie.${at}`)}),gt&&!St&&!ot&&jsxs(Fragment,{children:[jsx("h1",{children:He("videoSelfie.sayOutLoud")}),jsx(Question,{className:"IncodeRecorderQuestion",children:Ke||""}),jsxs(BottomContainer,{className:"IncodeRecorderQuestionBottomContainer",children:[jsx(Microphone,{sound:Ge,isQuestions:!0,recording:!nt,recordingText:He("videoSelfie.recording")}),nt&&jsxs(QuestionButton,{className:"inverted",onClick:ht,children:[jsx("img",{src:speechBuuble,alt:"speech bubble"}),He("common.tapToSpeak")]}),!nt&&jsx(QuestionButton,{role:"button",onClick:dt,children:He("common.tapWhenDone")})]})]}),Mt&&jsx(SpeechRecommendations,{tryAgain:pt})]})},greenCheck="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIxLjMzMzQgMTMuMzMzTDE0LjAwMDEgMTkuOTk5N0wxMC42NjY3IDE2LjY2NjMiIHN0cm9rZT0iIzBDRDVBMiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIi8+Cjwvc3ZnPgo=",check="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIxLjMzMzcgMTMuMzMzTDE0LjAwMDMgMTkuOTk5N0wxMC42NjcgMTYuNjY2MyIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIi8+Cjwvc3ZnPgo=",consent="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgd2lkdGg9IjMyIgogICBoZWlnaHQ9IjMyIgogICB2aWV3Qm94PSIwIDAgMzIgMzIiCiAgIGZpbGw9Im5vbmUiCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzYiCiAgIHNvZGlwb2RpOmRvY25hbWU9ImNvbnNlbnQuc3ZnIgogICB4bWxuczppbmtzY2FwZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9kaS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxzb2RpcG9kaTpuYW1lZHZpZXcKICAgICBpZD0ibmFtZWR2aWV3NiIKICAgICBwYWdlY29sb3I9IiNmZmZmZmYiCiAgICAgYm9yZGVyY29sb3I9IiMwMDAwMDAiCiAgICAgYm9yZGVyb3BhY2l0eT0iMC4yNSIKICAgICBpbmtzY2FwZTpzaG93cGFnZXNoYWRvdz0iMiIKICAgICBpbmtzY2FwZTpwYWdlb3BhY2l0eT0iMC4wIgogICAgIGlua3NjYXBlOnBhZ2VjaGVja2VyYm9hcmQ9IjAiCiAgICAgaW5rc2NhcGU6ZGVza2NvbG9yPSIjZDFkMWQxIiAvPgogIDxnCiAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzU0ODdfNDI5NSkiCiAgICAgaWQ9Imc1Ij4KICAgIDxnCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcDFfNTQ4N180Mjk1KSIKICAgICAgIGlkPSJnNCI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Im0gMTYsMTcuNSBjIDAuODI4NCwwIDEuNSwtMC42NzE2IDEuNSwtMS41IDAsLTAuODI4NCAtMC42NzE2LC0xLjUgLTEuNSwtMS41IC0wLjgyODQsMCAtMS41LDAuNjcxNiAtMS41LDEuNSAwLDAuODI4NCAwLjY3MTYsMS41IDEuNSwxLjUgeiIKICAgICAgICAgZmlsbD0iIzIwMjYzRCIKICAgICAgICAgaWQ9InBhdGgxIgogICAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTojZmZmZmZmO3N0cm9rZS1vcGFjaXR5OjEiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMTAuNSwxNy41IEMgMTEuMzI4NCwxNy41IDEyLDE2LjgyODQgMTIsMTYgMTIsMTUuMTcxNiAxMS4zMjg0LDE0LjUgMTAuNSwxNC41IDkuNjcxNTcsMTQuNSA5LDE1LjE3MTYgOSwxNiBjIDAsMC44Mjg0IDAuNjcxNTcsMS41IDEuNSwxLjUgeiIKICAgICAgICAgZmlsbD0iIzIwMjYzRCIKICAgICAgICAgaWQ9InBhdGgyIgogICAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTojZmZmZmZmO3N0cm9rZS1vcGFjaXR5OjEiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Im0gMjEuNSwxNy41IGMgMC44Mjg0LDAgMS41LC0wLjY3MTYgMS41LC0xLjUgMCwtMC44Mjg0IC0wLjY3MTYsLTEuNSAtMS41LC0xLjUgLTAuODI4NCwwIC0xLjUsMC42NzE2IC0xLjUsMS41IDAsMC44Mjg0IDAuNjcxNiwxLjUgMS41LDEuNSB6IgogICAgICAgICBmaWxsPSIjMjAyNjNEIgogICAgICAgICBpZD0icGF0aDMiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOiNmZmZmZmY7c3Ryb2tlLW9wYWNpdHk6MSIgLz4KICAgICAgPHBhdGgKICAgICAgICAgZD0ibSA5Ljk5MTI1LDI2LjM4ODkgYyAyLjUyMDY1LDEuNDU4OSA1LjQ4NTg1LDEuOTUxMiA4LjM0Mjc1LDEuMzg1MyAyLjg1NjksLTAuNTY1OSA1LjQxMDQsLTIuMTUxNSA3LjE4NDYsLTQuNDYxMSAxLjc3NDIsLTIuMzA5NiAyLjY0NzgsLTUuMTg1NiAyLjQ1ODEsLTguMDkxOCBDIDI3Ljc4NywxMi4zMTUxIDI2LjU0NjksOS41NzcwMyAyNC40ODc1LDcuNTE3NjYgMjIuNDI4MSw1LjQ1ODI5IDE5LjY5MDEsNC4yMTgxNCAxNi43ODM5LDQuMDI4NDMgMTMuODc3NywzLjgzODcyIDExLjAwMTcsNC43MTIzOSA4LjY5MjA1LDYuNDg2NTYgNi4zODI0NCw4LjI2MDczIDQuNzk2ODYsMTAuODE0MyA0LjIzMDk0LDEzLjY3MTIgMy42NjUwMiwxNi41MjgxIDQuMTU3MzksMTkuNDkzMiA1LjYxNjI1LDIyLjAxMzkgTCA0LjA1MjUsMjYuNjgyNyBjIC0wLjA1ODc2LDAuMTc2MiAtMC4wNjcyOSwwLjM2NTIgLTAuMDI0NjMsMC41NDYgMC4wNDI2NiwwLjE4MDggMC4xMzQ4MywwLjM0NjEgMC4yNjYxNiwwLjQ3NzQgMC4xMzEzNCwwLjEzMTQgMC4yOTY2NSwwLjIyMzUgMC40Nzc0MiwwLjI2NjIgMC4xODA3NywwLjA0MjYgMC4zNjk4NSwwLjAzNDEgMC41NDYwNSwtMC4wMjQ2IHoiCiAgICAgICAgIHN0cm9rZT0iIzIwMjYzRCIKICAgICAgICAgc3Ryb2tlLXdpZHRoPSIyIgogICAgICAgICBzdHJva2UtbGluZWNhcD0icm91bmQiCiAgICAgICAgIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgICAgICAgIGlkPSJwYXRoNCIKICAgICAgICAgc3R5bGU9InN0cm9rZTojZmZmZmZmO3N0cm9rZS1vcGFjaXR5OjEiIC8+CiAgICA8L2c+CiAgPC9nPgogIDxkZWZzCiAgICAgaWQ9ImRlZnM2Ij4KICAgIDxjbGlwUGF0aAogICAgICAgaWQ9ImNsaXAwXzU0ODdfNDI5NSI+CiAgICAgIDxyZWN0CiAgICAgICAgIHdpZHRoPSIzMiIKICAgICAgICAgaGVpZ2h0PSIzMiIKICAgICAgICAgZmlsbD0iI2ZmZmZmZiIKICAgICAgICAgaWQ9InJlY3Q1IgogICAgICAgICB4PSIwIgogICAgICAgICB5PSIwIiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgaWQ9ImNsaXAxXzU0ODdfNDI5NSI+CiAgICAgIDxyZWN0CiAgICAgICAgIHdpZHRoPSIzMiIKICAgICAgICAgaGVpZ2h0PSIzMiIKICAgICAgICAgZmlsbD0iI2ZmZmZmZiIKICAgICAgICAgaWQ9InJlY3Q2IgogICAgICAgICB4PSIwIgogICAgICAgICB5PSIwIiAvPgogICAgPC9jbGlwUGF0aD4KICA8L2RlZnM+Cjwvc3ZnPgo=",document$1="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB3aWR0aD0iMzEuOTk5OTk4IgogICBoZWlnaHQ9IjMxLjk5OTk5OCIKICAgdmlld0JveD0iMCAwIDguNDY2NjY1MiA4LjQ2NjY2NTIiCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzEiCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHNvZGlwb2RpOm5hbWVkdmlldwogICAgIGlkPSJuYW1lZHZpZXcxIgogICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIKICAgICBib3JkZXJjb2xvcj0iIzAwMDAwMCIKICAgICBib3JkZXJvcGFjaXR5PSIwLjI1IgogICAgIGlua3NjYXBlOnNob3dwYWdlc2hhZG93PSIyIgogICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwLjAiCiAgICAgaW5rc2NhcGU6cGFnZWNoZWNrZXJib2FyZD0iMCIKICAgICBpbmtzY2FwZTpkZXNrY29sb3I9IiNkMWQxZDEiCiAgICAgaW5rc2NhcGU6ZG9jdW1lbnQtdW5pdHM9Im1tIgogICAgIGlua3NjYXBlOnpvb209IjAuMjEwMjQxMyIKICAgICBpbmtzY2FwZTpjeD0iMzk3LjE2MjY5IgogICAgIGlua3NjYXBlOmN5PSI1NjEuMjU5ODQiCiAgICAgaW5rc2NhcGU6d2luZG93LXdpZHRoPSIzODQwIgogICAgIGlua3NjYXBlOndpbmRvdy1oZWlnaHQ9IjIxMDciCiAgICAgaW5rc2NhcGU6d2luZG93LXg9IjAiCiAgICAgaW5rc2NhcGU6d2luZG93LXk9IjI1IgogICAgIGlua3NjYXBlOndpbmRvdy1tYXhpbWl6ZWQ9IjEiCiAgICAgaW5rc2NhcGU6Y3VycmVudC1sYXllcj0ibGF5ZXIxIiAvPgogIDxkZWZzCiAgICAgaWQ9ImRlZnMxIiAvPgogIDxnCiAgICAgaW5rc2NhcGU6bGFiZWw9IkxheWVyIDEiCiAgICAgaW5rc2NhcGU6Z3JvdXBtb2RlPSJsYXllciIKICAgICBpZD0ibGF5ZXIxIj4KICAgIDxwYXRoCiAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjA1MDMwMDMiCiAgICAgICBkPSJNIDIuMTM3MTY4MSw3LjcwNzQyODMgQyAxLjkxNDYwNTgsNy42NDc0ODk1IDEuNzQyNDE4OCw3LjQ2OTQ5MTIgMS42OTYxMzA5LDcuMjUxNTA3MyAxLjY3NDk5NDIsNy4xNTE5NzE5IDEuNjc0NzkzOSwxLjQ5MTI4NzcgMS42OTU5Mjk4LDEuMzkwMzgyNiAxLjc0Mjc0NDYsMS4xNjY4MDgzIDEuOTMzMDMxOCwwLjk3NjYwNjYyIDIuMTU3NTk5NiwwLjkyODkyMTAyIGMgMC4wNDk3NjgsLTAuMDEwNTY3IDAuNDk0MDg4OCwtMC4wMTQ5NzYyIDEuNTA5NjUwNiwtMC4wMTQ5NzYyIDEuNDA2MTkxLDAgMS40NDAzNjM5LDUuOTA2ZS00IDEuNDkzMjM0NCwwLjAyNjI5OSAwLjA3NjgxNywwLjAzNzMzNSAxLjY2MjQ1NTgsMS42MjU2ODEwOCAxLjY5MDUyMzksMS42OTM0MDk0OCAwLjAxODE5MSwwLjA0Mzg5NyAwLjAyMDUwNSwwLjMwMzIwMjMgMC4wMjA1MDUsMi4yOTg0MDQyIDAsMS42MTU1MjQ0IC0wLjAwNDIyLDIuMjY4Nzg3NyAtMC4wMTQ5NzYsMi4zMTk0NDk1IC0wLjA0NzY4NiwwLjIyNDU2NzkgLTAuMjM3ODg3MiwwLjQxNDg1NSAtMC40NjE0NjE2LDAuNDYxNjY5OCAtMC4wNTAwMTMsMC4wMTA0NzIgLTAuNjY5MzIyOSwwLjAxNDUxNCAtMi4xMjkzNzUsMC4wMTM4OTMgLTEuNzI3ODIyNiwtNy40NDdlLTQgLTIuMDcwMDUyMiwtMC4wMDM4OSAtMi4xMjg1MjYsLTAuMDE5NjQgeiBNIDYuMzY2MTMxMiw3LjMwMTg5MDYgYyAwLjAzMzgwOCwtMC4wMTcyNDkgMC4wNjIwNzQsLTAuMDQ1NTE0IDAuMDc5MzIxLC0wLjA3OTMyMSAwLjAyNjUyNiwtMC4wNTE5OTQgMC4wMjY3OTYsLTAuMDc0MDQzIDAuMDI2Nzk2LC0yLjE4MjQyOTkgViAyLjkxMDIzNDMgSCA1Ljk0MjcwMTEgYyAtMC41NzMwMzAxLDAgLTAuNjExMDc1MSwtMC4wMDM3NyAtMC43NTA1MTQ4LC0wLjA3NDQzMyBDIDUuMDUwOTY0LDIuNzY0MjM5IDQuOTI0NjU4MSwyLjU5NjEwNDQgNC44OTAxOTM2LDIuNDMzNzk3IDQuODgwNTQzMywyLjM4ODM0ODEgNC44NzUyMTczLDIuMTc2NTIwMSA0Ljg3NTIxNzMsMS44MzgwNDkyIFYgMS4zMTI4MjY0IGwgLTEuMzM0MTg2NSwwLjAwMzUyIC0xLjMzNDE4NjYsMC4wMDM1MiAtMC4wNDE2MTIsMC4wMjk2ODIgYyAtMC4wOTIzNTUsMC4wNjU4NjkgLTAuMDg1MzcxLC0wLjE4OTgyODkgLTAuMDgxNTgzLDIuOTg2OTA3MSBsIDAuMDAzNDEsMi44NjU4IDAuMDI5NTIxLDAuMDQxMzg2IGMgMC4wNjQ4NDIsMC4wOTA5MDIgLTAuMTAwNDYyNywwLjA4NDQwOCAyLjE1Njk0NTQsMC4wODQ3NDIgMi4wMTg2NTg2LDMuMDgyZS00IDIuMDQwNjIzNywyLjI0ZS01IDIuMDkyNTk3NSwtMC4wMjY0OTMgeiBNIDIuOTkxMDM2NSw2LjUwMzI5NjUgQyAyLjkyODU1NDEsNi40NzIzNjc4IDIuODc4OTI4NCw2LjM5NTg5NjYgMi44Nzg5Mjg0LDYuMzMwNTQyNSBjIDAsLTAuMDYxMjQ0IDAuMDQ4MDUyLC0wLjEzODU4MDEgMC4xMDY1MjI4LC0wLjE3MTQ0MjggMC4wNDk2MTEsLTAuMDI3ODgzIDAuMDU5MTk2LC0wLjAyODE4NiAwLjg5MTYyMTcsLTAuMDI4MTg2IDAuODQwNDU1MiwwIDAuODQxNTM0NSwzLjUxZS01IDAuODkzMTg5OSwwLjAyOTA2OCAwLjA1NDQ4MywwLjAzMDYyMSAwLjEwNDk1NDgsMC4xMTI2NDI3IDAuMTA0OTU0OCwwLjE3MDU2MTUgMCwwLjA2MzQ1IC0wLjA1MTY1OCwwLjE0MzI1NjkgLTAuMTExNDcwNywwLjE3MjIxMTcgLTAuMDU1MzM0LDAuMDI2Nzg2IC0wLjA3NTc0NCwwLjAyNzQxNyAtMC44ODc1NDg2LDAuMDI3NDA3IC0wLjgwNjU0NDEsLTFlLTUgLTAuODMyNTAzNCwtNy45NjFlLTQgLTAuODg1MTYxOCwtMC4wMjY4NjQgeiBtIDAsLTAuNzk4NTE1NCBDIDIuOTI4NTU0MSw1LjY3Mzg1MjYgMi44Nzg5Mjg0LDUuNTk3MzgwOSAyLjg3ODkyODQsNS41MzIwMjY4IGMgMCwtMC4wNjEyNDQgMC4wNDgwNTIsLTAuMTM4NTgwMSAwLjEwNjUyMjgsLTAuMTcxNDQyNiAwLjA1MDA4NCwtMC4wMjgxNDkgMC4wNTE3ODksLTAuMDI4MTg2IDEuMjkwODc5NSwtMC4wMjgxODYgaCAxLjI0MDcyOTUgbCAwLjA1MTcxOCwwLjAyOTA2NyBjIDAuMDU0NDgzLDAuMDMwNjIxIDAuMTA0OTU0OCwwLjExMjY0MzIgMC4xMDQ5NTQ4LDAuMTcwNTYxNSAwLDAuMDYzNDUgLTAuMDUxNjU4LDAuMTQzMjU3MSAtMC4xMTE0NzA3LDAuMTcyMjExOSAtMC4wNTU5MzUsMC4wMjcwNzggLTAuMDcxODYxLDAuMDI3NDE3IC0xLjI4NjgwNjUsMC4wMjc0MDcgQyAzLjA2ODQ4MTksNS43MzE2MzU0IDMuMDQ0MjYyOSw1LjczMTEzMiAyLjk5MTAzNjUsNS43MDQ3ODExIFogbSAwLC0wLjc5ODUxNTUgQyAyLjkyODU1NDEsNC44NzUzMzY5IDIuODc4OTI4NCw0Ljc5ODg2NTQgMi44Nzg5Mjg0LDQuNzMzNTExNCBjIDAsLTAuMDYxMjQ0IDAuMDQ4MDUyLC0wLjEzODU4MDIgMC4xMDY1MjI4LC0wLjE3MTQ0MjkgMC4wNTAwODQsLTAuMDI4MTQ5IDAuMDUxNzg5LC0wLjAyODE4NiAxLjI5MDg3OTUsLTAuMDI4MTg2IGggMS4yNDA3Mjk1IGwgMC4wNTE3MTgsMC4wMjkwNjcgYyAwLjA1NDQ4MywwLjAzMDYyMSAwLjEwNDk1NDgsMC4xMTI2NDMyIDAuMTA0OTU0OCwwLjE3MDU2MTggMCwwLjA2MzQ1IC0wLjA1MTY1OCwwLjE0MzI1NzEgLTAuMTExNDcwNywwLjE3MjIxMTYgLTAuMDU1OTM1LDAuMDI3MDc4IC0wLjA3MTg2MSwwLjAyNzQxNyAtMS4yODY4MDY1LDAuMDI3NDA3IC0xLjIwNjk3MzksLTEwZS02IC0xLjIzMTE5MjksLTUuMTM2ZS00IC0xLjI4NDQxOTMsLTAuMDI2ODY0IHogbSAwLC0wLjc5ODUxNTcgQyAyLjkyODU1NDEsNC4wNzY4MjE0IDIuODc4OTI4NCw0LjAwMDM0OTcgMi44Nzg5Mjg0LDMuOTM0OTk1NyBjIDAsLTAuMDYxMjQ0IDAuMDQ4MDUyLC0wLjEzODU4MDIgMC4xMDY1MjI4LC0wLjE3MTQ0MjkgMC4wNTAwODQsLTAuMDI4MTQ5IDAuMDUxNzg5LC0wLjAyODE4NiAxLjI5MDg3OTUsLTAuMDI4MTg2IGggMS4yNDA3Mjk1IGwgMC4wNTE3MTgsMC4wMjkwNjcgYyAwLjA1NDQ4MywwLjAzMDYyMSAwLjEwNDk1NDgsMC4xMTI2NDMyIDAuMTA0OTU0OCwwLjE3MDU2MTYgMCwwLjA2MzQ1IC0wLjA1MTY1OCwwLjE0MzI1NzEgLTAuMTExNDcwNywwLjE3MjIxMTkgLTAuMDU1OTM1LDAuMDI3MDc4IC0wLjA3MTg2MSwwLjAyNzQxNyAtMS4yODY4MDY1LDAuMDI3NDA3IEMgMy4wNjg0ODIyLDQuMTM0NjAzOSAzLjA0NDI2MzIsNC4xMzQxMDA2IDIuOTkxMDM2NSw0LjEwNzc0OTkgWiBNIDUuNzMzNTQ4MywyLjA1ODMzNTggNS4yODExMjk4LDEuNjA1Njk1MSBsIC0wLjAwMzk4LDAuMTAzMjkgYyAtMC4wMDIxOCwwLjA1NjgxIC0wLjAwMjE4LDAuMjMyMDUwOCAwLDAuMzg5NDI0OSAwLjAwMzc3LDAuMjcwODQ3OCAwLjAwNTU2LDAuMjg4MzQ1NyAwLjAzMzUwNSwwLjMyNzUyMDQgMC4wNTc4NjQsMC4wODExMjEgMC4wNzcxMSwwLjA4NDQwOCAwLjQ5NjA5NDksMC4wODQ3NDMgbCAwLjM3OTIyMTcsMy4wODJlLTQgeiIKICAgICAgIGlkPSJwYXRoMzkiIC8+CiAgPC9nPgo8L3N2Zz4K",idBack="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik01IDVDMy44OTU0MyA1IDMgNS44OTU0MyAzIDdWMjVDMyAyNi4xMDQ2IDMuODk1NDMgMjcgNSAyN0gyN0MyOC4xMDQ2IDI3IDI5IDI2LjEwNDYgMjkgMjVWN0MyOSA1Ljg5NTQzIDI4LjEwNDYgNSAyNyA1SDVaTTUgN0gyN1YyNUg1VjdaTTcgMTBIOVYxM0g3VjEwWk0xMSAxMEgxNVYxM0gxMVYxMFpNMjUgMTBIMThWMTNIMjVWMTBaTTkuNSAxMEgxMC41VjEzSDkuNVYxMFpNMTcgMTBIMTZWMTNIMTdWMTBaTTcgMjFDNyAyMC40NDc3IDcuNDQ3NzIgMjAgOCAyMEgxM0MxMy41NTIzIDIwIDE0IDIwLjQ0NzcgMTQgMjFDMTQgMjEuNTUyMyAxMy41NTIzIDIyIDEzIDIySDhDNy40NDc3MiAyMiA3IDIxLjU1MjMgNyAyMVoiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPgo=",idFront="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik01IDVDMy44OTU0MyA1IDMgNS44OTU0MyAzIDdWMjVDMyAyNi4xMDQ2IDMuODk1NDMgMjcgNSAyN0gyN0MyOC4xMDQ2IDI3IDI5IDI2LjEwNDYgMjkgMjVWN0MyOSA1Ljg5NTQzIDI4LjEwNDYgNSAyNyA1SDVaTTUgN0gyN1YyNUg1VjdaTTkuNTEyNyAxNUM5LjUxMjcgMTMuODk1NCAxMC40MDgxIDEzIDExLjUxMjcgMTNDMTIuNjE3MyAxMyAxMy41MTI3IDEzLjg5NTQgMTMuNTEyNyAxNUMxMy41MTI3IDE2LjEwNDYgMTIuNjE3MyAxNyAxMS41MTI3IDE3SDExLjUxMjVDMTAuNDA4IDE2Ljk5OTkgOS41MTI3IDE2LjEwNDUgOS41MTI3IDE1Wk0xNC4zMTIzIDE3Ljg1N0MxNS4wNTMxIDE3LjEzMSAxNS41MTI3IDE2LjExOTIgMTUuNTEyNyAxNUMxNS41MTI3IDEyLjc5MDkgMTMuNzIxOCAxMSAxMS41MTI3IDExQzkuMzAzNTYgMTEgNy41MTI3IDEyLjc5MDkgNy41MTI3IDE1QzcuNTEyNyAxNi4xMTkyIDcuOTcyMzEgMTcuMTMxIDguNzEzMDkgMTcuODU3QzguNjIzNzMgMTcuOTE3MyA4LjUzNjEzIDE3Ljk4MDcgOC40NTA0NCAxOC4wNDcxQzcuNTc0MDEgMTguNzI1OCA2Ljk0NzkgMTkuNjc2NSA2LjY3MDQ5IDIwLjc0OTdDNi41MzIyOCAyMS4yODQ0IDYuODUzNyAyMS44Mjk5IDcuMzg4NDEgMjEuOTY4MUM3LjkyMzEyIDIyLjEwNjMgOC40Njg2NCAyMS43ODQ5IDguNjA2ODUgMjEuMjUwMkM4Ljc3MzMyIDIwLjYwNjEgOS4xNDkwNSAyMC4wMzU3IDkuNjc1IDE5LjYyODRDMTAuMjAxIDE5LjIyMSAxMC44NDczIDE5IDExLjUxMjUgMTlIMTEuNTEyN0MxMi4xNzc5IDE5IDEyLjgyNDIgMTkuMjIxIDEzLjM1MDEgMTkuNjI4MkMxMy44NzYxIDIwLjAzNTUgMTQuMjUxOSAyMC42MDYgMTQuNDE4NCAyMS4yNUMxNC41NTY2IDIxLjc4NDcgMTUuMTAyMiAyMi4xMDYxIDE1LjYzNjkgMjEuOTY3OEMxNi4xNzE2IDIxLjgyOTYgMTYuNDkyOSAyMS4yODQxIDE2LjM1NDcgMjAuNzQ5M0MxNi4wNzcyIDE5LjY3NjEgMTUuNDUxIDE4LjcyNTUgMTQuNTc0NiAxOC4wNDY5QzE0LjQ4OSAxNy45ODA2IDE0LjQwMTUgMTcuOTE3MyAxNC4zMTIzIDE3Ljg1N1pNMTkgMTNDMTguNDQ3NyAxMyAxOCAxMy40NDc3IDE4IDE0QzE4IDE0LjU1MjMgMTguNDQ3NyAxNSAxOSAxNUgyNEMyNC41NTIzIDE1IDI1IDE0LjU1MjMgMjUgMTRDMjUgMTMuNDQ3NyAyNC41NTIzIDEzIDI0IDEzSDE5Wk0xOSAxN0MxOC40NDc3IDE3IDE4IDE3LjQ0NzcgMTggMThDMTggMTguNTUyMyAxOC40NDc3IDE5IDE5IDE5SDI0QzI0LjU1MjMgMTkgMjUgMTguNTUyMyAyNSAxOEMyNSAxNy40NDc3IDI0LjU1MjMgMTcgMjQgMTdIMTlaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K",questions="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgd2lkdGg9IjMyIgogICBoZWlnaHQ9IjMyIgogICB2aWV3Qm94PSIwIDAgMzIgMzIiCiAgIGZpbGw9Im5vbmUiCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzMiCiAgIHNvZGlwb2RpOmRvY25hbWU9InF1ZXN0aW9ucy5zdmciCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHNvZGlwb2RpOm5hbWVkdmlldwogICAgIGlkPSJuYW1lZHZpZXczIgogICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIKICAgICBib3JkZXJjb2xvcj0iIzAwMDAwMCIKICAgICBib3JkZXJvcGFjaXR5PSIwLjI1IgogICAgIGlua3NjYXBlOnNob3dwYWdlc2hhZG93PSIyIgogICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwLjAiCiAgICAgaW5rc2NhcGU6cGFnZWNoZWNrZXJib2FyZD0iMCIKICAgICBpbmtzY2FwZTpkZXNrY29sb3I9IiNkMWQxZDEiIC8+CiAgPGcKICAgICBjbGlwLXBhdGg9InVybCgjY2xpcDBfNTQ4N18zNzc5KSIKICAgICBpZD0iZzIiPgogICAgPGcKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwMV81NDg3XzM3NzkpIgogICAgICAgaWQ9ImcxIj4KICAgICAgPHBhdGgKICAgICAgICAgZmlsbC1ydWxlPSJldmVub2RkIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGQ9Ik0gNy41MjU1MSw0LjE0OTM1IEMgNy44MjAzMyw0LjMzMTU2IDcuOTk5NzgsNC42NTM0MiA3Ljk5OTc4LDUgdiA4IGMgMCwwLjU1MjMgLTAuNDQ3NzEsMSAtMSwxIC0wLjU1MjI4LDAgLTEsLTAuNDQ3NyAtMSwtMSBWIDYuNjE4MDQgTCA1LjQ0Nyw2Ljg5NDQzIEMgNC45NTMwMiw3LjE0MTQyIDQuMzUyMzUsNi45NDExOSA0LjEwNTM2LDYuNDQ3MjEgMy44NTgzNyw1Ljk1MzI0IDQuMDU4NTksNS4zNTI1NiA0LjU1MjU3LDUuMTA1NTcgbCAyLC0xIEMgNi44NjI1NiwzLjk1MDU4IDcuMjMwNywzLjk2NzE0IDcuNTI1NTEsNC4xNDkzNSBaIE0gMTEuOTk5OCw4IGMgMCwtMC41NTIyOCAwLjQ0NzcsLTEgMSwtMSBoIDE0IGMgMC41NTIzLDAgMSwwLjQ0NzcyIDEsMSAwLDAuNTUyMjkgLTAuNDQ3NywxIC0xLDEgaCAtMTQgYyAtMC41NTIzLDAgLTEsLTAuNDQ3NzEgLTEsLTEgeiBtIDAsOCBjIDAsLTAuNTUyMyAwLjQ0NzcsLTEgMSwtMSBoIDE0IGMgMC41NTIzLDAgMSwwLjQ0NzcgMSwxIDAsMC41NTIzIC0wLjQ0NzcsMSAtMSwxIGggLTE0IGMgLTAuNTUyMywwIC0xLC0wLjQ0NzcgLTEsLTEgeiBtIDEsNyBjIC0wLjU1MjMsMCAtMSwwLjQ0NzcgLTEsMSAwLDAuNTUyMyAwLjQ0NzcsMSAxLDEgaCAxNCBjIDAuNTUyMywwIDEsLTAuNDQ3NyAxLC0xIDAsLTAuNTUyMyAtMC40NDc3LC0xIC0xLC0xIHogTSA5LjU2ODE3LDE4LjQ1ODEgQyA5LjM2MTQ5LDE4LjExODQgOS4wODg1NCwxNy44MjM5IDguNzY1NjEsMTcuNTkyIDguMTE5MjQsMTcuMTIxNiA3LjMxNTk5LDE2LjkxOTMgNi41MjM4MywxNy4wMjc1IDUuNzMwMTIsMTcuMTM2IDUuMDA5MjgsMTcuNTQ3NyA0LjUxMjY1LDE4LjE3NjIgaCAtMmUtNSBsIC0wLjAwNDYxLDAuMDA1OSBjIC0wLjE5MDM3LDAuMjQ0NyAtMC4zNDE0LDAuNTE3NiAtMC40NDc2NiwwLjgwODggLTAuMTg5MywwLjUxODggMC4wNzc4NCwxLjA5MjkgMC41OTY2NywxLjI4MjIgMC41MTg4MywwLjE4OTMgMS4wOTI4OCwtMC4wNzc4IDEuMjgyMTgsLTAuNTk2NyAwLjAzNDU1LC0wLjA5NDcgMC4wODM0OCwtMC4xODM1IDAuMTQ1MDcsLTAuMjYzMyAwLjE3NTg5LC0wLjIyMSAwLjQzMDI3LC0wLjM2NTcgMC43MTAyNCwtMC40MDQgMC4yODEyMiwtMC4wMzg0IDAuNTY2MzksMC4wMzM2IDAuNzk1NjQsMC4yMDEgaCAtMmUtNSBsIDAuMDA3NjgsMC4wMDU1IGMgMC4xMDUzOCwwLjA3NTQgMC4xOTQ0MiwwLjE3MTQgMC4yNjE3NywwLjI4MjEgMC4wNjczNiwwLjExMDcgMC4xMTE2NCwwLjIzMzkgMC4xMzAxOCwwLjM2MjEgMC4wMTg1NCwwLjEyODIgMC4wMTA5NiwwLjI1ODkgLTAuMDIyMjgsMC4zODQyIC0wLjAzMzI1LDAuMTI1MiAtMC4wOTE0NywwLjI0MjQgLTAuMTcxMTcsMC4zNDQ2IGwgLTAuMDEyNTEsMC4wMTY0IC0zLjU4NSw0Ljc5NjIgYyAtMC4yMjY2LDAuMzAzMiAtMC4yNjI2MywwLjcwODMgLTAuMDkzMDksMS4wNDY3IDAuMTY5NTQsMC4zMzgzIDAuNTE1NTksMC41NTIgMC44OTQwNiwwLjU1MiBoIDQgYyAwLjU1MjI5LDAgMSwtMC40NDc3IDEsLTEgMCwtMC41NTIzIC0wLjQ0NzcxLC0xIC0xLC0xIEggNi45OTU3MiBsIDIuMzg0NSwtMy4xOTAxIEMgOS42MjIxNywyMS40OTcyIDkuNzk5MTEsMjEuMTM5MiA5LjkwMDU1LDIwLjc1NzEgMTAuMDAzLDIwLjM3MTIgMTAuMDI2MywxOS45Njg3IDkuOTY5MTksMTkuNTczNiA5LjkxMjA3LDE5LjE3ODUgOS43NzU2NiwxOC43OTkxIDkuNTY4MTcsMTguNDU4MSBaIgogICAgICAgICBmaWxsPSIjMjAyNjNEIgogICAgICAgICBpZD0icGF0aDEiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgICA8L2c+CiAgPC9nPgogIDxkZWZzCiAgICAgaWQ9ImRlZnMzIj4KICAgIDxjbGlwUGF0aAogICAgICAgaWQ9ImNsaXAwXzU0ODdfMzc3OSI+CiAgICAgIDxyZWN0CiAgICAgICAgIHdpZHRoPSIzMiIKICAgICAgICAgaGVpZ2h0PSIzMiIKICAgICAgICAgZmlsbD0iI2ZmZmZmZiIKICAgICAgICAgaWQ9InJlY3QyIgogICAgICAgICB4PSIwIgogICAgICAgICB5PSIwIiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgaWQ9ImNsaXAxXzU0ODdfMzc3OSI+CiAgICAgIDxyZWN0CiAgICAgICAgIHdpZHRoPSIzMiIKICAgICAgICAgaGVpZ2h0PSIzMiIKICAgICAgICAgZmlsbD0iI2ZmZmZmZiIKICAgICAgICAgaWQ9InJlY3QzIgogICAgICAgICB4PSIwIgogICAgICAgICB5PSIwIiAvPgogICAgPC9jbGlwUGF0aD4KICA8L2RlZnM+Cjwvc3ZnPgo=",selfie="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yMi41IDRDMjEuOTQ3NyA0IDIxLjUgNC40NDc3MiAyMS41IDVDMjEuNSA1LjU1MjI4IDIxLjk0NzcgNiAyMi41IDZMMjYgNlY5LjQ5OTk1QzI2IDEwLjA1MjIgMjYuNDQ3NyAxMC41IDI3IDEwLjVDMjcuNTUyMyAxMC41IDI4IDEwLjA1MjIgMjggOS40OTk5NVY2QzI4IDUuNDY5NTcgMjcuNzg5MyA0Ljk2MDg2IDI3LjQxNDIgNC41ODU3OUMyNy4wMzkxIDQuMjEwNzEgMjYuNTMwNCA0IDI2IDRIMjIuNVpNMjggMjIuNUMyOCAyMS45NDc3IDI3LjU1MjMgMjEuNSAyNyAyMS41QzI2LjQ0NzcgMjEuNSAyNiAyMS45NDc3IDI2IDIyLjVWMjZIMjIuNUMyMS45NDc3IDI2IDIxLjUgMjYuNDQ3OCAyMS41IDI3QzIxLjUgMjcuNTUyMyAyMS45NDc3IDI4IDIyLjUgMjhIMjZDMjYuNTMwNCAyOCAyNy4wMzkxIDI3Ljc4OTMgMjcuNDE0MiAyNy40MTQzQzI3Ljc4OTMgMjcuMDM5MiAyOCAyNi41MzA1IDI4IDI2VjIyLjVaTTUgMjEuNUM1LjU1MjI4IDIxLjUgNiAyMS45NDc3IDYgMjIuNVYyNkg5LjVDMTAuMDUyMyAyNiAxMC41IDI2LjQ0NzggMTAuNSAyN0MxMC41IDI3LjU1MjMgMTAuMDUyMyAyOCA5LjUgMjhINkM1LjQ2OTU3IDI4IDQuOTYwODYgMjcuNzg5MyA0LjU4NTc5IDI3LjQxNDNDNC4yMTA3MSAyNy4wMzkyIDQgMjYuNTMwNSA0IDI2VjIyLjVDNCAyMS45NDc3IDQuNDQ3NzIgMjEuNSA1IDIxLjVaTTYgNEM1LjQ2OTU3IDQgNC45NjA4NiA0LjIxMDcxIDQuNTg1NzkgNC41ODU3OUM0LjIxMDcxIDQuOTYwODYgNCA1LjQ2OTU3IDQgNlY5LjQ5OTk1QzQgMTAuMDUyMiA0LjQ0NzcyIDEwLjUgNSAxMC41QzUuNTUyMjggMTAuNSA2IDEwLjA1MjIgNiA5LjQ5OTk1TDYgNkw5LjUgNkMxMC4wNTIzIDYgMTAuNSA1LjU1MjI4IDEwLjUgNUMxMC41IDQuNDQ3NzIgMTAuMDUyMyA0IDkuNSA0SDZaTTE2IDExQzE0LjM0MzEgMTEgMTMgMTIuMzQzMSAxMyAxNEMxMyAxNS42NTY5IDE0LjM0MzEgMTcgMTYgMTdDMTcuNjU2OSAxNyAxOSAxNS42NTY5IDE5IDE0QzE5IDEyLjM0MzEgMTcuNjU2OSAxMSAxNiAxMVpNMTkuMjY4OCAxNy43ODM2QzIwLjMyOTEgMTYuODY2OCAyMSAxNS41MTE3IDIxIDE0QzIxIDExLjIzODYgMTguNzYxNCA5IDE2IDlDMTMuMjM4NiA5IDExIDExLjIzODYgMTEgMTRDMTEgMTUuNTExNyAxMS42NzA5IDE2Ljg2NjggMTIuNzMxMiAxNy43ODM2QzEyLjQ3MjggMTcuOTEzOCAxMi4yMjA0IDE4LjA1OTcgMTEuOTc1MiAxOC4yMjA5QzEwLjc2MDQgMTkuMDE5NyA5Ljc2ODQ4IDIwLjE2NDggOS4xMDYyNCAyMS41MzNDOC44Njk4NCAyMi4wMjEzIDkuMDQxMTkgMjIuNjI2MyA5LjQ4ODk2IDIyLjg4NDFDOS45MzY3MyAyMy4xNDIgMTAuNDkxNCAyMi45NTUxIDEwLjcyNzggMjIuNDY2N0MxMS4yMzQyIDIxLjQyMDMgMTEuOTkyOCAyMC41NDQ1IDEyLjkyMTkgMTkuOTMzN0MxMy44NDYxIDE5LjMyNiAxNC45MDQgMTkuMDAzMyAxNS45ODI5IDE5QzE1Ljk4ODYgMTkgMTUuOTk0MyAxOSAxNiAxOUMxNi4wMDU3IDE5IDE2LjAxMTQgMTkgMTYuMDE3MSAxOUMxNy4wOTYgMTkuMDAzMyAxOC4xNTM5IDE5LjMyNiAxOS4wNzgxIDE5LjkzMzdDMjAuMDA3MiAyMC41NDQ2IDIwLjc2NTggMjEuNDIwMyAyMS4yNzIyIDIyLjQ2NjdDMjEuNTA4NiAyMi45NTUxIDIyLjA2MzMgMjMuMTQyIDIyLjUxMSAyMi44ODQxQzIyLjk1ODggMjIuNjI2MyAyMy4xMzAyIDIyLjAyMTQgMjIuODkzOCAyMS41MzNDMjIuMjMxNSAyMC4xNjQ4IDIxLjIzOTYgMTkuMDE5NyAyMC4wMjQ4IDE4LjIyMDlDMTkuNzc5NiAxOC4wNTk3IDE5LjUyNzIgMTcuOTEzOCAxOS4yNjg4IDE3Ljc4MzZaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K",StepsContainer=styled.ol`
3349
+ `;function Processing$1({status:ue,message:me}){return jsxs(ProcessingContainer,{children:[ue===stateMachineStatus.PENDING?jsx(SpinImage,{src:spinner,alt:"spinner"}):jsx("img",{src:allGoodImg,alt:"all good"}),jsx("h1",{children:me})]})}const SpeechMask=({onNext:ue,speechToTextCheck:me,stopRecording:Ue,token:Qe,stream:Ze,numberOfTries:Je,sound:Ge})=>{const{t:He,i18n:Xe}=useTranslation(),[Ke,$e]=React$1.useState(),[nt,tt]=React$1.useState(!0),et=React$1.useRef(),rt=React$1.useRef(0),{status:at,setStatus:it}=useStateMachine(),[ot,st]=React$1.useState(null),[ut,ct]=React$1.useState(null);useScreenEvents({module:eventModuleNames.videoSelfie,screen:eventScreenNames.videoSelfieVoiceFinalQuestion,token:Qe.token}),React$1.useEffect(()=>{async function yt(){const Tt=new MediaRecorder(Ze.clone());et.current=Tt,Tt==null||Tt.start(),screenEvent({module:eventModuleNames.videoSelfie,code:videoSelfieEvents.audioStreamOpened,token:Qe.token})}return yt(),()=>{}},[Ze]),React$1.useEffect(()=>{getVideoSelfieConfig({session:Qe}).then(yt=>{const Tt=getConsent(yt,Xe.language);$e(Tt)})},[]);function dt(){var mt,Rt,Ut;if(me===!1){ue(!0);return}ut&&clearTimeout(ut),st(!1),it({type:stateMachineStatus.PENDING});let yt=[];async function Tt(It){if(!(It.data.size>0))return ue(!0);yt.push(It.data);const Et=new Blob(yt,{type:"audio/mp3"}),{success:bt}=await addSpeech({token:Qe.token,audio:Et}).catch(()=>({success:!1}));if(et.current.removeEventListener("dataavailable",Tt),bt)return it({type:stateMachineStatus.ALL_GOOD}),addEvent({module:eventModuleNames.videoSelfie,token:Qe.token,code:videoSelfieEvents.videoSelfieTosAccepted}),await sleep(3e3),it({type:stateMachineStatus.SUCCESS}),Ue(()=>ue(!0));addEvent({module:eventModuleNames.videoSelfie,token:Qe.token,code:videoSelfieEvents.videoSelfieTosNotAccepted}),et.current.start(),yt=[];const vt=rt.current+1;if(rt.current=vt,Je!==-1&&vt>=Je)return Ue(()=>ue(!1));it({type:stateMachineStatus.REJECTED}),tt(!0)}et.current.addEventListener("dataavailable",Tt);try{(mt=et.current)==null||mt.stop(),screenEvent({module:eventModuleNames.videoSelfie,code:videoSelfieEvents.audioStreamClosed,token:Qe.token}),(Ut=(Rt=et.current)==null?void 0:Rt.stream)==null||Ut.getTracks().forEach(It=>It.stop())}catch(It){console.error(It)}}function pt(){it({type:stateMachineStatus.IDLE}),tt(!0),st(!1)}function ht(){tt(!1),ct(setTimeout(()=>{st(!0)},1e4))}const gt=at===stateMachineStatus.IDLE||at===stateMachineStatus.SUCCESS,Mt=at===stateMachineStatus.REJECTED,St=[stateMachineStatus.PENDING,stateMachineStatus.ALL_GOOD].includes(at);return ot?jsxs(RanOutAlert,{className:"ranout-alert IncodeRecorderRanoutTimeAlert",children:[jsx("strong",{children:He("videoSelfie.finishedSpeaking")}),jsxs("div",{children:[jsxs("span",{children:[He("videoSelfie.didYouSay"),' "',Ke,'"?']}),jsx("span",{className:"pl-1",children:He("videoSelfie.ifYouHavent")})]}),jsx(QuestionButton,{onClick:dt,children:He("videoSelfie.imDone")}),jsx("a",{onClick:pt,children:He("videoSelfie.tryAgain")})]}):jsxs(QuestionMaskContainer,{className:"speech question-container IncodeRecorderQuestionContainer",recording:!nt&&!St,children:[St&&jsx(Processing$1,{"aria-live":"assertive",status:at,message:He(`videoSelfie.${at}`)}),gt&&!St&&!ot&&jsxs(Fragment,{children:[jsx("h1",{children:He("videoSelfie.sayOutLoud")}),jsx(Question,{className:"IncodeRecorderQuestion","aria-live":"assertive",children:Ke||""}),jsx(BottomContainer,{className:"IncodeRecorderQuestionBottomContainer",children:nt?jsxs(QuestionButton,{className:"inverted",onClick:ht,children:[jsx("img",{src:speechBuuble,alt:"speech bubble"}),He("common.tapToSpeak")]}):jsxs(Fragment,{children:[jsx(Microphone,{sound:Ge,isQuestions:!0,recording:!nt}),jsx(QuestionButton,{role:"button",onClick:dt,children:He("common.tapWhenDone")})]})})]}),Mt&&jsx(SpeechRecommendations,{tryAgain:pt})]})},greenCheck="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIxLjMzMzQgMTMuMzMzTDE0LjAwMDEgMTkuOTk5N0wxMC42NjY3IDE2LjY2NjMiIHN0cm9rZT0iIzBDRDVBMiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIi8+Cjwvc3ZnPgo=",check="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIxLjMzMzcgMTMuMzMzTDE0LjAwMDMgMTkuOTk5N0wxMC42NjcgMTYuNjY2MyIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIi8+Cjwvc3ZnPgo=",consent="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgd2lkdGg9IjMyIgogICBoZWlnaHQ9IjMyIgogICB2aWV3Qm94PSIwIDAgMzIgMzIiCiAgIGZpbGw9Im5vbmUiCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzYiCiAgIHNvZGlwb2RpOmRvY25hbWU9ImNvbnNlbnQuc3ZnIgogICB4bWxuczppbmtzY2FwZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9kaS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxzb2RpcG9kaTpuYW1lZHZpZXcKICAgICBpZD0ibmFtZWR2aWV3NiIKICAgICBwYWdlY29sb3I9IiNmZmZmZmYiCiAgICAgYm9yZGVyY29sb3I9IiMwMDAwMDAiCiAgICAgYm9yZGVyb3BhY2l0eT0iMC4yNSIKICAgICBpbmtzY2FwZTpzaG93cGFnZXNoYWRvdz0iMiIKICAgICBpbmtzY2FwZTpwYWdlb3BhY2l0eT0iMC4wIgogICAgIGlua3NjYXBlOnBhZ2VjaGVja2VyYm9hcmQ9IjAiCiAgICAgaW5rc2NhcGU6ZGVza2NvbG9yPSIjZDFkMWQxIiAvPgogIDxnCiAgICAgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzU0ODdfNDI5NSkiCiAgICAgaWQ9Imc1Ij4KICAgIDxnCiAgICAgICBjbGlwLXBhdGg9InVybCgjY2xpcDFfNTQ4N180Mjk1KSIKICAgICAgIGlkPSJnNCI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Im0gMTYsMTcuNSBjIDAuODI4NCwwIDEuNSwtMC42NzE2IDEuNSwtMS41IDAsLTAuODI4NCAtMC42NzE2LC0xLjUgLTEuNSwtMS41IC0wLjgyODQsMCAtMS41LDAuNjcxNiAtMS41LDEuNSAwLDAuODI4NCAwLjY3MTYsMS41IDEuNSwxLjUgeiIKICAgICAgICAgZmlsbD0iIzIwMjYzRCIKICAgICAgICAgaWQ9InBhdGgxIgogICAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTojZmZmZmZmO3N0cm9rZS1vcGFjaXR5OjEiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Ik0gMTAuNSwxNy41IEMgMTEuMzI4NCwxNy41IDEyLDE2LjgyODQgMTIsMTYgMTIsMTUuMTcxNiAxMS4zMjg0LDE0LjUgMTAuNSwxNC41IDkuNjcxNTcsMTQuNSA5LDE1LjE3MTYgOSwxNiBjIDAsMC44Mjg0IDAuNjcxNTcsMS41IDEuNSwxLjUgeiIKICAgICAgICAgZmlsbD0iIzIwMjYzRCIKICAgICAgICAgaWQ9InBhdGgyIgogICAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTojZmZmZmZmO3N0cm9rZS1vcGFjaXR5OjEiIC8+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Im0gMjEuNSwxNy41IGMgMC44Mjg0LDAgMS41LC0wLjY3MTYgMS41LC0xLjUgMCwtMC44Mjg0IC0wLjY3MTYsLTEuNSAtMS41LC0xLjUgLTAuODI4NCwwIC0xLjUsMC42NzE2IC0xLjUsMS41IDAsMC44Mjg0IDAuNjcxNiwxLjUgMS41LDEuNSB6IgogICAgICAgICBmaWxsPSIjMjAyNjNEIgogICAgICAgICBpZD0icGF0aDMiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOiNmZmZmZmY7c3Ryb2tlLW9wYWNpdHk6MSIgLz4KICAgICAgPHBhdGgKICAgICAgICAgZD0ibSA5Ljk5MTI1LDI2LjM4ODkgYyAyLjUyMDY1LDEuNDU4OSA1LjQ4NTg1LDEuOTUxMiA4LjM0Mjc1LDEuMzg1MyAyLjg1NjksLTAuNTY1OSA1LjQxMDQsLTIuMTUxNSA3LjE4NDYsLTQuNDYxMSAxLjc3NDIsLTIuMzA5NiAyLjY0NzgsLTUuMTg1NiAyLjQ1ODEsLTguMDkxOCBDIDI3Ljc4NywxMi4zMTUxIDI2LjU0NjksOS41NzcwMyAyNC40ODc1LDcuNTE3NjYgMjIuNDI4MSw1LjQ1ODI5IDE5LjY5MDEsNC4yMTgxNCAxNi43ODM5LDQuMDI4NDMgMTMuODc3NywzLjgzODcyIDExLjAwMTcsNC43MTIzOSA4LjY5MjA1LDYuNDg2NTYgNi4zODI0NCw4LjI2MDczIDQuNzk2ODYsMTAuODE0MyA0LjIzMDk0LDEzLjY3MTIgMy42NjUwMiwxNi41MjgxIDQuMTU3MzksMTkuNDkzMiA1LjYxNjI1LDIyLjAxMzkgTCA0LjA1MjUsMjYuNjgyNyBjIC0wLjA1ODc2LDAuMTc2MiAtMC4wNjcyOSwwLjM2NTIgLTAuMDI0NjMsMC41NDYgMC4wNDI2NiwwLjE4MDggMC4xMzQ4MywwLjM0NjEgMC4yNjYxNiwwLjQ3NzQgMC4xMzEzNCwwLjEzMTQgMC4yOTY2NSwwLjIyMzUgMC40Nzc0MiwwLjI2NjIgMC4xODA3NywwLjA0MjYgMC4zNjk4NSwwLjAzNDEgMC41NDYwNSwtMC4wMjQ2IHoiCiAgICAgICAgIHN0cm9rZT0iIzIwMjYzRCIKICAgICAgICAgc3Ryb2tlLXdpZHRoPSIyIgogICAgICAgICBzdHJva2UtbGluZWNhcD0icm91bmQiCiAgICAgICAgIHN0cm9rZS1saW5lam9pbj0icm91bmQiCiAgICAgICAgIGlkPSJwYXRoNCIKICAgICAgICAgc3R5bGU9InN0cm9rZTojZmZmZmZmO3N0cm9rZS1vcGFjaXR5OjEiIC8+CiAgICA8L2c+CiAgPC9nPgogIDxkZWZzCiAgICAgaWQ9ImRlZnM2Ij4KICAgIDxjbGlwUGF0aAogICAgICAgaWQ9ImNsaXAwXzU0ODdfNDI5NSI+CiAgICAgIDxyZWN0CiAgICAgICAgIHdpZHRoPSIzMiIKICAgICAgICAgaGVpZ2h0PSIzMiIKICAgICAgICAgZmlsbD0iI2ZmZmZmZiIKICAgICAgICAgaWQ9InJlY3Q1IgogICAgICAgICB4PSIwIgogICAgICAgICB5PSIwIiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgaWQ9ImNsaXAxXzU0ODdfNDI5NSI+CiAgICAgIDxyZWN0CiAgICAgICAgIHdpZHRoPSIzMiIKICAgICAgICAgaGVpZ2h0PSIzMiIKICAgICAgICAgZmlsbD0iI2ZmZmZmZiIKICAgICAgICAgaWQ9InJlY3Q2IgogICAgICAgICB4PSIwIgogICAgICAgICB5PSIwIiAvPgogICAgPC9jbGlwUGF0aD4KICA8L2RlZnM+Cjwvc3ZnPgo=",document$1="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB3aWR0aD0iMzEuOTk5OTk4IgogICBoZWlnaHQ9IjMxLjk5OTk5OCIKICAgdmlld0JveD0iMCAwIDguNDY2NjY1MiA4LjQ2NjY2NTIiCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzEiCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHNvZGlwb2RpOm5hbWVkdmlldwogICAgIGlkPSJuYW1lZHZpZXcxIgogICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIKICAgICBib3JkZXJjb2xvcj0iIzAwMDAwMCIKICAgICBib3JkZXJvcGFjaXR5PSIwLjI1IgogICAgIGlua3NjYXBlOnNob3dwYWdlc2hhZG93PSIyIgogICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwLjAiCiAgICAgaW5rc2NhcGU6cGFnZWNoZWNrZXJib2FyZD0iMCIKICAgICBpbmtzY2FwZTpkZXNrY29sb3I9IiNkMWQxZDEiCiAgICAgaW5rc2NhcGU6ZG9jdW1lbnQtdW5pdHM9Im1tIgogICAgIGlua3NjYXBlOnpvb209IjAuMjEwMjQxMyIKICAgICBpbmtzY2FwZTpjeD0iMzk3LjE2MjY5IgogICAgIGlua3NjYXBlOmN5PSI1NjEuMjU5ODQiCiAgICAgaW5rc2NhcGU6d2luZG93LXdpZHRoPSIzODQwIgogICAgIGlua3NjYXBlOndpbmRvdy1oZWlnaHQ9IjIxMDciCiAgICAgaW5rc2NhcGU6d2luZG93LXg9IjAiCiAgICAgaW5rc2NhcGU6d2luZG93LXk9IjI1IgogICAgIGlua3NjYXBlOndpbmRvdy1tYXhpbWl6ZWQ9IjEiCiAgICAgaW5rc2NhcGU6Y3VycmVudC1sYXllcj0ibGF5ZXIxIiAvPgogIDxkZWZzCiAgICAgaWQ9ImRlZnMxIiAvPgogIDxnCiAgICAgaW5rc2NhcGU6bGFiZWw9IkxheWVyIDEiCiAgICAgaW5rc2NhcGU6Z3JvdXBtb2RlPSJsYXllciIKICAgICBpZD0ibGF5ZXIxIj4KICAgIDxwYXRoCiAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjA1MDMwMDMiCiAgICAgICBkPSJNIDIuMTM3MTY4MSw3LjcwNzQyODMgQyAxLjkxNDYwNTgsNy42NDc0ODk1IDEuNzQyNDE4OCw3LjQ2OTQ5MTIgMS42OTYxMzA5LDcuMjUxNTA3MyAxLjY3NDk5NDIsNy4xNTE5NzE5IDEuNjc0NzkzOSwxLjQ5MTI4NzcgMS42OTU5Mjk4LDEuMzkwMzgyNiAxLjc0Mjc0NDYsMS4xNjY4MDgzIDEuOTMzMDMxOCwwLjk3NjYwNjYyIDIuMTU3NTk5NiwwLjkyODkyMTAyIGMgMC4wNDk3NjgsLTAuMDEwNTY3IDAuNDk0MDg4OCwtMC4wMTQ5NzYyIDEuNTA5NjUwNiwtMC4wMTQ5NzYyIDEuNDA2MTkxLDAgMS40NDAzNjM5LDUuOTA2ZS00IDEuNDkzMjM0NCwwLjAyNjI5OSAwLjA3NjgxNywwLjAzNzMzNSAxLjY2MjQ1NTgsMS42MjU2ODEwOCAxLjY5MDUyMzksMS42OTM0MDk0OCAwLjAxODE5MSwwLjA0Mzg5NyAwLjAyMDUwNSwwLjMwMzIwMjMgMC4wMjA1MDUsMi4yOTg0MDQyIDAsMS42MTU1MjQ0IC0wLjAwNDIyLDIuMjY4Nzg3NyAtMC4wMTQ5NzYsMi4zMTk0NDk1IC0wLjA0NzY4NiwwLjIyNDU2NzkgLTAuMjM3ODg3MiwwLjQxNDg1NSAtMC40NjE0NjE2LDAuNDYxNjY5OCAtMC4wNTAwMTMsMC4wMTA0NzIgLTAuNjY5MzIyOSwwLjAxNDUxNCAtMi4xMjkzNzUsMC4wMTM4OTMgLTEuNzI3ODIyNiwtNy40NDdlLTQgLTIuMDcwMDUyMiwtMC4wMDM4OSAtMi4xMjg1MjYsLTAuMDE5NjQgeiBNIDYuMzY2MTMxMiw3LjMwMTg5MDYgYyAwLjAzMzgwOCwtMC4wMTcyNDkgMC4wNjIwNzQsLTAuMDQ1NTE0IDAuMDc5MzIxLC0wLjA3OTMyMSAwLjAyNjUyNiwtMC4wNTE5OTQgMC4wMjY3OTYsLTAuMDc0MDQzIDAuMDI2Nzk2LC0yLjE4MjQyOTkgViAyLjkxMDIzNDMgSCA1Ljk0MjcwMTEgYyAtMC41NzMwMzAxLDAgLTAuNjExMDc1MSwtMC4wMDM3NyAtMC43NTA1MTQ4LC0wLjA3NDQzMyBDIDUuMDUwOTY0LDIuNzY0MjM5IDQuOTI0NjU4MSwyLjU5NjEwNDQgNC44OTAxOTM2LDIuNDMzNzk3IDQuODgwNTQzMywyLjM4ODM0ODEgNC44NzUyMTczLDIuMTc2NTIwMSA0Ljg3NTIxNzMsMS44MzgwNDkyIFYgMS4zMTI4MjY0IGwgLTEuMzM0MTg2NSwwLjAwMzUyIC0xLjMzNDE4NjYsMC4wMDM1MiAtMC4wNDE2MTIsMC4wMjk2ODIgYyAtMC4wOTIzNTUsMC4wNjU4NjkgLTAuMDg1MzcxLC0wLjE4OTgyODkgLTAuMDgxNTgzLDIuOTg2OTA3MSBsIDAuMDAzNDEsMi44NjU4IDAuMDI5NTIxLDAuMDQxMzg2IGMgMC4wNjQ4NDIsMC4wOTA5MDIgLTAuMTAwNDYyNywwLjA4NDQwOCAyLjE1Njk0NTQsMC4wODQ3NDIgMi4wMTg2NTg2LDMuMDgyZS00IDIuMDQwNjIzNywyLjI0ZS01IDIuMDkyNTk3NSwtMC4wMjY0OTMgeiBNIDIuOTkxMDM2NSw2LjUwMzI5NjUgQyAyLjkyODU1NDEsNi40NzIzNjc4IDIuODc4OTI4NCw2LjM5NTg5NjYgMi44Nzg5Mjg0LDYuMzMwNTQyNSBjIDAsLTAuMDYxMjQ0IDAuMDQ4MDUyLC0wLjEzODU4MDEgMC4xMDY1MjI4LC0wLjE3MTQ0MjggMC4wNDk2MTEsLTAuMDI3ODgzIDAuMDU5MTk2LC0wLjAyODE4NiAwLjg5MTYyMTcsLTAuMDI4MTg2IDAuODQwNDU1MiwwIDAuODQxNTM0NSwzLjUxZS01IDAuODkzMTg5OSwwLjAyOTA2OCAwLjA1NDQ4MywwLjAzMDYyMSAwLjEwNDk1NDgsMC4xMTI2NDI3IDAuMTA0OTU0OCwwLjE3MDU2MTUgMCwwLjA2MzQ1IC0wLjA1MTY1OCwwLjE0MzI1NjkgLTAuMTExNDcwNywwLjE3MjIxMTcgLTAuMDU1MzM0LDAuMDI2Nzg2IC0wLjA3NTc0NCwwLjAyNzQxNyAtMC44ODc1NDg2LDAuMDI3NDA3IC0wLjgwNjU0NDEsLTFlLTUgLTAuODMyNTAzNCwtNy45NjFlLTQgLTAuODg1MTYxOCwtMC4wMjY4NjQgeiBtIDAsLTAuNzk4NTE1NCBDIDIuOTI4NTU0MSw1LjY3Mzg1MjYgMi44Nzg5Mjg0LDUuNTk3MzgwOSAyLjg3ODkyODQsNS41MzIwMjY4IGMgMCwtMC4wNjEyNDQgMC4wNDgwNTIsLTAuMTM4NTgwMSAwLjEwNjUyMjgsLTAuMTcxNDQyNiAwLjA1MDA4NCwtMC4wMjgxNDkgMC4wNTE3ODksLTAuMDI4MTg2IDEuMjkwODc5NSwtMC4wMjgxODYgaCAxLjI0MDcyOTUgbCAwLjA1MTcxOCwwLjAyOTA2NyBjIDAuMDU0NDgzLDAuMDMwNjIxIDAuMTA0OTU0OCwwLjExMjY0MzIgMC4xMDQ5NTQ4LDAuMTcwNTYxNSAwLDAuMDYzNDUgLTAuMDUxNjU4LDAuMTQzMjU3MSAtMC4xMTE0NzA3LDAuMTcyMjExOSAtMC4wNTU5MzUsMC4wMjcwNzggLTAuMDcxODYxLDAuMDI3NDE3IC0xLjI4NjgwNjUsMC4wMjc0MDcgQyAzLjA2ODQ4MTksNS43MzE2MzU0IDMuMDQ0MjYyOSw1LjczMTEzMiAyLjk5MTAzNjUsNS43MDQ3ODExIFogbSAwLC0wLjc5ODUxNTUgQyAyLjkyODU1NDEsNC44NzUzMzY5IDIuODc4OTI4NCw0Ljc5ODg2NTQgMi44Nzg5Mjg0LDQuNzMzNTExNCBjIDAsLTAuMDYxMjQ0IDAuMDQ4MDUyLC0wLjEzODU4MDIgMC4xMDY1MjI4LC0wLjE3MTQ0MjkgMC4wNTAwODQsLTAuMDI4MTQ5IDAuMDUxNzg5LC0wLjAyODE4NiAxLjI5MDg3OTUsLTAuMDI4MTg2IGggMS4yNDA3Mjk1IGwgMC4wNTE3MTgsMC4wMjkwNjcgYyAwLjA1NDQ4MywwLjAzMDYyMSAwLjEwNDk1NDgsMC4xMTI2NDMyIDAuMTA0OTU0OCwwLjE3MDU2MTggMCwwLjA2MzQ1IC0wLjA1MTY1OCwwLjE0MzI1NzEgLTAuMTExNDcwNywwLjE3MjIxMTYgLTAuMDU1OTM1LDAuMDI3MDc4IC0wLjA3MTg2MSwwLjAyNzQxNyAtMS4yODY4MDY1LDAuMDI3NDA3IC0xLjIwNjk3MzksLTEwZS02IC0xLjIzMTE5MjksLTUuMTM2ZS00IC0xLjI4NDQxOTMsLTAuMDI2ODY0IHogbSAwLC0wLjc5ODUxNTcgQyAyLjkyODU1NDEsNC4wNzY4MjE0IDIuODc4OTI4NCw0LjAwMDM0OTcgMi44Nzg5Mjg0LDMuOTM0OTk1NyBjIDAsLTAuMDYxMjQ0IDAuMDQ4MDUyLC0wLjEzODU4MDIgMC4xMDY1MjI4LC0wLjE3MTQ0MjkgMC4wNTAwODQsLTAuMDI4MTQ5IDAuMDUxNzg5LC0wLjAyODE4NiAxLjI5MDg3OTUsLTAuMDI4MTg2IGggMS4yNDA3Mjk1IGwgMC4wNTE3MTgsMC4wMjkwNjcgYyAwLjA1NDQ4MywwLjAzMDYyMSAwLjEwNDk1NDgsMC4xMTI2NDMyIDAuMTA0OTU0OCwwLjE3MDU2MTYgMCwwLjA2MzQ1IC0wLjA1MTY1OCwwLjE0MzI1NzEgLTAuMTExNDcwNywwLjE3MjIxMTkgLTAuMDU1OTM1LDAuMDI3MDc4IC0wLjA3MTg2MSwwLjAyNzQxNyAtMS4yODY4MDY1LDAuMDI3NDA3IEMgMy4wNjg0ODIyLDQuMTM0NjAzOSAzLjA0NDI2MzIsNC4xMzQxMDA2IDIuOTkxMDM2NSw0LjEwNzc0OTkgWiBNIDUuNzMzNTQ4MywyLjA1ODMzNTggNS4yODExMjk4LDEuNjA1Njk1MSBsIC0wLjAwMzk4LDAuMTAzMjkgYyAtMC4wMDIxOCwwLjA1NjgxIC0wLjAwMjE4LDAuMjMyMDUwOCAwLDAuMzg5NDI0OSAwLjAwMzc3LDAuMjcwODQ3OCAwLjAwNTU2LDAuMjg4MzQ1NyAwLjAzMzUwNSwwLjMyNzUyMDQgMC4wNTc4NjQsMC4wODExMjEgMC4wNzcxMSwwLjA4NDQwOCAwLjQ5NjA5NDksMC4wODQ3NDMgbCAwLjM3OTIyMTcsMy4wODJlLTQgeiIKICAgICAgIGlkPSJwYXRoMzkiIC8+CiAgPC9nPgo8L3N2Zz4K",idBack="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik01IDVDMy44OTU0MyA1IDMgNS44OTU0MyAzIDdWMjVDMyAyNi4xMDQ2IDMuODk1NDMgMjcgNSAyN0gyN0MyOC4xMDQ2IDI3IDI5IDI2LjEwNDYgMjkgMjVWN0MyOSA1Ljg5NTQzIDI4LjEwNDYgNSAyNyA1SDVaTTUgN0gyN1YyNUg1VjdaTTcgMTBIOVYxM0g3VjEwWk0xMSAxMEgxNVYxM0gxMVYxMFpNMjUgMTBIMThWMTNIMjVWMTBaTTkuNSAxMEgxMC41VjEzSDkuNVYxMFpNMTcgMTBIMTZWMTNIMTdWMTBaTTcgMjFDNyAyMC40NDc3IDcuNDQ3NzIgMjAgOCAyMEgxM0MxMy41NTIzIDIwIDE0IDIwLjQ0NzcgMTQgMjFDMTQgMjEuNTUyMyAxMy41NTIzIDIyIDEzIDIySDhDNy40NDc3MiAyMiA3IDIxLjU1MjMgNyAyMVoiIGZpbGw9IndoaXRlIi8+Cjwvc3ZnPgo=",idFront="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik01IDVDMy44OTU0MyA1IDMgNS44OTU0MyAzIDdWMjVDMyAyNi4xMDQ2IDMuODk1NDMgMjcgNSAyN0gyN0MyOC4xMDQ2IDI3IDI5IDI2LjEwNDYgMjkgMjVWN0MyOSA1Ljg5NTQzIDI4LjEwNDYgNSAyNyA1SDVaTTUgN0gyN1YyNUg1VjdaTTkuNTEyNyAxNUM5LjUxMjcgMTMuODk1NCAxMC40MDgxIDEzIDExLjUxMjcgMTNDMTIuNjE3MyAxMyAxMy41MTI3IDEzLjg5NTQgMTMuNTEyNyAxNUMxMy41MTI3IDE2LjEwNDYgMTIuNjE3MyAxNyAxMS41MTI3IDE3SDExLjUxMjVDMTAuNDA4IDE2Ljk5OTkgOS41MTI3IDE2LjEwNDUgOS41MTI3IDE1Wk0xNC4zMTIzIDE3Ljg1N0MxNS4wNTMxIDE3LjEzMSAxNS41MTI3IDE2LjExOTIgMTUuNTEyNyAxNUMxNS41MTI3IDEyLjc5MDkgMTMuNzIxOCAxMSAxMS41MTI3IDExQzkuMzAzNTYgMTEgNy41MTI3IDEyLjc5MDkgNy41MTI3IDE1QzcuNTEyNyAxNi4xMTkyIDcuOTcyMzEgMTcuMTMxIDguNzEzMDkgMTcuODU3QzguNjIzNzMgMTcuOTE3MyA4LjUzNjEzIDE3Ljk4MDcgOC40NTA0NCAxOC4wNDcxQzcuNTc0MDEgMTguNzI1OCA2Ljk0NzkgMTkuNjc2NSA2LjY3MDQ5IDIwLjc0OTdDNi41MzIyOCAyMS4yODQ0IDYuODUzNyAyMS44Mjk5IDcuMzg4NDEgMjEuOTY4MUM3LjkyMzEyIDIyLjEwNjMgOC40Njg2NCAyMS43ODQ5IDguNjA2ODUgMjEuMjUwMkM4Ljc3MzMyIDIwLjYwNjEgOS4xNDkwNSAyMC4wMzU3IDkuNjc1IDE5LjYyODRDMTAuMjAxIDE5LjIyMSAxMC44NDczIDE5IDExLjUxMjUgMTlIMTEuNTEyN0MxMi4xNzc5IDE5IDEyLjgyNDIgMTkuMjIxIDEzLjM1MDEgMTkuNjI4MkMxMy44NzYxIDIwLjAzNTUgMTQuMjUxOSAyMC42MDYgMTQuNDE4NCAyMS4yNUMxNC41NTY2IDIxLjc4NDcgMTUuMTAyMiAyMi4xMDYxIDE1LjYzNjkgMjEuOTY3OEMxNi4xNzE2IDIxLjgyOTYgMTYuNDkyOSAyMS4yODQxIDE2LjM1NDcgMjAuNzQ5M0MxNi4wNzcyIDE5LjY3NjEgMTUuNDUxIDE4LjcyNTUgMTQuNTc0NiAxOC4wNDY5QzE0LjQ4OSAxNy45ODA2IDE0LjQwMTUgMTcuOTE3MyAxNC4zMTIzIDE3Ljg1N1pNMTkgMTNDMTguNDQ3NyAxMyAxOCAxMy40NDc3IDE4IDE0QzE4IDE0LjU1MjMgMTguNDQ3NyAxNSAxOSAxNUgyNEMyNC41NTIzIDE1IDI1IDE0LjU1MjMgMjUgMTRDMjUgMTMuNDQ3NyAyNC41NTIzIDEzIDI0IDEzSDE5Wk0xOSAxN0MxOC40NDc3IDE3IDE4IDE3LjQ0NzcgMTggMThDMTggMTguNTUyMyAxOC40NDc3IDE5IDE5IDE5SDI0QzI0LjU1MjMgMTkgMjUgMTguNTUyMyAyNSAxOEMyNSAxNy40NDc3IDI0LjU1MjMgMTcgMjQgMTdIMTlaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K",questions="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgd2lkdGg9IjMyIgogICBoZWlnaHQ9IjMyIgogICB2aWV3Qm94PSIwIDAgMzIgMzIiCiAgIGZpbGw9Im5vbmUiCiAgIHZlcnNpb249IjEuMSIKICAgaWQ9InN2ZzMiCiAgIHNvZGlwb2RpOmRvY25hbWU9InF1ZXN0aW9ucy5zdmciCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHNvZGlwb2RpOm5hbWVkdmlldwogICAgIGlkPSJuYW1lZHZpZXczIgogICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIKICAgICBib3JkZXJjb2xvcj0iIzAwMDAwMCIKICAgICBib3JkZXJvcGFjaXR5PSIwLjI1IgogICAgIGlua3NjYXBlOnNob3dwYWdlc2hhZG93PSIyIgogICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwLjAiCiAgICAgaW5rc2NhcGU6cGFnZWNoZWNrZXJib2FyZD0iMCIKICAgICBpbmtzY2FwZTpkZXNrY29sb3I9IiNkMWQxZDEiIC8+CiAgPGcKICAgICBjbGlwLXBhdGg9InVybCgjY2xpcDBfNTQ4N18zNzc5KSIKICAgICBpZD0iZzIiPgogICAgPGcKICAgICAgIGNsaXAtcGF0aD0idXJsKCNjbGlwMV81NDg3XzM3NzkpIgogICAgICAgaWQ9ImcxIj4KICAgICAgPHBhdGgKICAgICAgICAgZmlsbC1ydWxlPSJldmVub2RkIgogICAgICAgICBjbGlwLXJ1bGU9ImV2ZW5vZGQiCiAgICAgICAgIGQ9Ik0gNy41MjU1MSw0LjE0OTM1IEMgNy44MjAzMyw0LjMzMTU2IDcuOTk5NzgsNC42NTM0MiA3Ljk5OTc4LDUgdiA4IGMgMCwwLjU1MjMgLTAuNDQ3NzEsMSAtMSwxIC0wLjU1MjI4LDAgLTEsLTAuNDQ3NyAtMSwtMSBWIDYuNjE4MDQgTCA1LjQ0Nyw2Ljg5NDQzIEMgNC45NTMwMiw3LjE0MTQyIDQuMzUyMzUsNi45NDExOSA0LjEwNTM2LDYuNDQ3MjEgMy44NTgzNyw1Ljk1MzI0IDQuMDU4NTksNS4zNTI1NiA0LjU1MjU3LDUuMTA1NTcgbCAyLC0xIEMgNi44NjI1NiwzLjk1MDU4IDcuMjMwNywzLjk2NzE0IDcuNTI1NTEsNC4xNDkzNSBaIE0gMTEuOTk5OCw4IGMgMCwtMC41NTIyOCAwLjQ0NzcsLTEgMSwtMSBoIDE0IGMgMC41NTIzLDAgMSwwLjQ0NzcyIDEsMSAwLDAuNTUyMjkgLTAuNDQ3NywxIC0xLDEgaCAtMTQgYyAtMC41NTIzLDAgLTEsLTAuNDQ3NzEgLTEsLTEgeiBtIDAsOCBjIDAsLTAuNTUyMyAwLjQ0NzcsLTEgMSwtMSBoIDE0IGMgMC41NTIzLDAgMSwwLjQ0NzcgMSwxIDAsMC41NTIzIC0wLjQ0NzcsMSAtMSwxIGggLTE0IGMgLTAuNTUyMywwIC0xLC0wLjQ0NzcgLTEsLTEgeiBtIDEsNyBjIC0wLjU1MjMsMCAtMSwwLjQ0NzcgLTEsMSAwLDAuNTUyMyAwLjQ0NzcsMSAxLDEgaCAxNCBjIDAuNTUyMywwIDEsLTAuNDQ3NyAxLC0xIDAsLTAuNTUyMyAtMC40NDc3LC0xIC0xLC0xIHogTSA5LjU2ODE3LDE4LjQ1ODEgQyA5LjM2MTQ5LDE4LjExODQgOS4wODg1NCwxNy44MjM5IDguNzY1NjEsMTcuNTkyIDguMTE5MjQsMTcuMTIxNiA3LjMxNTk5LDE2LjkxOTMgNi41MjM4MywxNy4wMjc1IDUuNzMwMTIsMTcuMTM2IDUuMDA5MjgsMTcuNTQ3NyA0LjUxMjY1LDE4LjE3NjIgaCAtMmUtNSBsIC0wLjAwNDYxLDAuMDA1OSBjIC0wLjE5MDM3LDAuMjQ0NyAtMC4zNDE0LDAuNTE3NiAtMC40NDc2NiwwLjgwODggLTAuMTg5MywwLjUxODggMC4wNzc4NCwxLjA5MjkgMC41OTY2NywxLjI4MjIgMC41MTg4MywwLjE4OTMgMS4wOTI4OCwtMC4wNzc4IDEuMjgyMTgsLTAuNTk2NyAwLjAzNDU1LC0wLjA5NDcgMC4wODM0OCwtMC4xODM1IDAuMTQ1MDcsLTAuMjYzMyAwLjE3NTg5LC0wLjIyMSAwLjQzMDI3LC0wLjM2NTcgMC43MTAyNCwtMC40MDQgMC4yODEyMiwtMC4wMzg0IDAuNTY2MzksMC4wMzM2IDAuNzk1NjQsMC4yMDEgaCAtMmUtNSBsIDAuMDA3NjgsMC4wMDU1IGMgMC4xMDUzOCwwLjA3NTQgMC4xOTQ0MiwwLjE3MTQgMC4yNjE3NywwLjI4MjEgMC4wNjczNiwwLjExMDcgMC4xMTE2NCwwLjIzMzkgMC4xMzAxOCwwLjM2MjEgMC4wMTg1NCwwLjEyODIgMC4wMTA5NiwwLjI1ODkgLTAuMDIyMjgsMC4zODQyIC0wLjAzMzI1LDAuMTI1MiAtMC4wOTE0NywwLjI0MjQgLTAuMTcxMTcsMC4zNDQ2IGwgLTAuMDEyNTEsMC4wMTY0IC0zLjU4NSw0Ljc5NjIgYyAtMC4yMjY2LDAuMzAzMiAtMC4yNjI2MywwLjcwODMgLTAuMDkzMDksMS4wNDY3IDAuMTY5NTQsMC4zMzgzIDAuNTE1NTksMC41NTIgMC44OTQwNiwwLjU1MiBoIDQgYyAwLjU1MjI5LDAgMSwtMC40NDc3IDEsLTEgMCwtMC41NTIzIC0wLjQ0NzcxLC0xIC0xLC0xIEggNi45OTU3MiBsIDIuMzg0NSwtMy4xOTAxIEMgOS42MjIxNywyMS40OTcyIDkuNzk5MTEsMjEuMTM5MiA5LjkwMDU1LDIwLjc1NzEgMTAuMDAzLDIwLjM3MTIgMTAuMDI2MywxOS45Njg3IDkuOTY5MTksMTkuNTczNiA5LjkxMjA3LDE5LjE3ODUgOS43NzU2NiwxOC43OTkxIDkuNTY4MTcsMTguNDU4MSBaIgogICAgICAgICBmaWxsPSIjMjAyNjNEIgogICAgICAgICBpZD0icGF0aDEiCiAgICAgICAgIHN0eWxlPSJmaWxsOiNmZmZmZmY7ZmlsbC1vcGFjaXR5OjEiIC8+CiAgICA8L2c+CiAgPC9nPgogIDxkZWZzCiAgICAgaWQ9ImRlZnMzIj4KICAgIDxjbGlwUGF0aAogICAgICAgaWQ9ImNsaXAwXzU0ODdfMzc3OSI+CiAgICAgIDxyZWN0CiAgICAgICAgIHdpZHRoPSIzMiIKICAgICAgICAgaGVpZ2h0PSIzMiIKICAgICAgICAgZmlsbD0iI2ZmZmZmZiIKICAgICAgICAgaWQ9InJlY3QyIgogICAgICAgICB4PSIwIgogICAgICAgICB5PSIwIiAvPgogICAgPC9jbGlwUGF0aD4KICAgIDxjbGlwUGF0aAogICAgICAgaWQ9ImNsaXAxXzU0ODdfMzc3OSI+CiAgICAgIDxyZWN0CiAgICAgICAgIHdpZHRoPSIzMiIKICAgICAgICAgaGVpZ2h0PSIzMiIKICAgICAgICAgZmlsbD0iI2ZmZmZmZiIKICAgICAgICAgaWQ9InJlY3QzIgogICAgICAgICB4PSIwIgogICAgICAgICB5PSIwIiAvPgogICAgPC9jbGlwUGF0aD4KICA8L2RlZnM+Cjwvc3ZnPgo=",selfie="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yMi41IDRDMjEuOTQ3NyA0IDIxLjUgNC40NDc3MiAyMS41IDVDMjEuNSA1LjU1MjI4IDIxLjk0NzcgNiAyMi41IDZMMjYgNlY5LjQ5OTk1QzI2IDEwLjA1MjIgMjYuNDQ3NyAxMC41IDI3IDEwLjVDMjcuNTUyMyAxMC41IDI4IDEwLjA1MjIgMjggOS40OTk5NVY2QzI4IDUuNDY5NTcgMjcuNzg5MyA0Ljk2MDg2IDI3LjQxNDIgNC41ODU3OUMyNy4wMzkxIDQuMjEwNzEgMjYuNTMwNCA0IDI2IDRIMjIuNVpNMjggMjIuNUMyOCAyMS45NDc3IDI3LjU1MjMgMjEuNSAyNyAyMS41QzI2LjQ0NzcgMjEuNSAyNiAyMS45NDc3IDI2IDIyLjVWMjZIMjIuNUMyMS45NDc3IDI2IDIxLjUgMjYuNDQ3OCAyMS41IDI3QzIxLjUgMjcuNTUyMyAyMS45NDc3IDI4IDIyLjUgMjhIMjZDMjYuNTMwNCAyOCAyNy4wMzkxIDI3Ljc4OTMgMjcuNDE0MiAyNy40MTQzQzI3Ljc4OTMgMjcuMDM5MiAyOCAyNi41MzA1IDI4IDI2VjIyLjVaTTUgMjEuNUM1LjU1MjI4IDIxLjUgNiAyMS45NDc3IDYgMjIuNVYyNkg5LjVDMTAuMDUyMyAyNiAxMC41IDI2LjQ0NzggMTAuNSAyN0MxMC41IDI3LjU1MjMgMTAuMDUyMyAyOCA5LjUgMjhINkM1LjQ2OTU3IDI4IDQuOTYwODYgMjcuNzg5MyA0LjU4NTc5IDI3LjQxNDNDNC4yMTA3MSAyNy4wMzkyIDQgMjYuNTMwNSA0IDI2VjIyLjVDNCAyMS45NDc3IDQuNDQ3NzIgMjEuNSA1IDIxLjVaTTYgNEM1LjQ2OTU3IDQgNC45NjA4NiA0LjIxMDcxIDQuNTg1NzkgNC41ODU3OUM0LjIxMDcxIDQuOTYwODYgNCA1LjQ2OTU3IDQgNlY5LjQ5OTk1QzQgMTAuMDUyMiA0LjQ0NzcyIDEwLjUgNSAxMC41QzUuNTUyMjggMTAuNSA2IDEwLjA1MjIgNiA5LjQ5OTk1TDYgNkw5LjUgNkMxMC4wNTIzIDYgMTAuNSA1LjU1MjI4IDEwLjUgNUMxMC41IDQuNDQ3NzIgMTAuMDUyMyA0IDkuNSA0SDZaTTE2IDExQzE0LjM0MzEgMTEgMTMgMTIuMzQzMSAxMyAxNEMxMyAxNS42NTY5IDE0LjM0MzEgMTcgMTYgMTdDMTcuNjU2OSAxNyAxOSAxNS42NTY5IDE5IDE0QzE5IDEyLjM0MzEgMTcuNjU2OSAxMSAxNiAxMVpNMTkuMjY4OCAxNy43ODM2QzIwLjMyOTEgMTYuODY2OCAyMSAxNS41MTE3IDIxIDE0QzIxIDExLjIzODYgMTguNzYxNCA5IDE2IDlDMTMuMjM4NiA5IDExIDExLjIzODYgMTEgMTRDMTEgMTUuNTExNyAxMS42NzA5IDE2Ljg2NjggMTIuNzMxMiAxNy43ODM2QzEyLjQ3MjggMTcuOTEzOCAxMi4yMjA0IDE4LjA1OTcgMTEuOTc1MiAxOC4yMjA5QzEwLjc2MDQgMTkuMDE5NyA5Ljc2ODQ4IDIwLjE2NDggOS4xMDYyNCAyMS41MzNDOC44Njk4NCAyMi4wMjEzIDkuMDQxMTkgMjIuNjI2MyA5LjQ4ODk2IDIyLjg4NDFDOS45MzY3MyAyMy4xNDIgMTAuNDkxNCAyMi45NTUxIDEwLjcyNzggMjIuNDY2N0MxMS4yMzQyIDIxLjQyMDMgMTEuOTkyOCAyMC41NDQ1IDEyLjkyMTkgMTkuOTMzN0MxMy44NDYxIDE5LjMyNiAxNC45MDQgMTkuMDAzMyAxNS45ODI5IDE5QzE1Ljk4ODYgMTkgMTUuOTk0MyAxOSAxNiAxOUMxNi4wMDU3IDE5IDE2LjAxMTQgMTkgMTYuMDE3MSAxOUMxNy4wOTYgMTkuMDAzMyAxOC4xNTM5IDE5LjMyNiAxOS4wNzgxIDE5LjkzMzdDMjAuMDA3MiAyMC41NDQ2IDIwLjc2NTggMjEuNDIwMyAyMS4yNzIyIDIyLjQ2NjdDMjEuNTA4NiAyMi45NTUxIDIyLjA2MzMgMjMuMTQyIDIyLjUxMSAyMi44ODQxQzIyLjk1ODggMjIuNjI2MyAyMy4xMzAyIDIyLjAyMTQgMjIuODkzOCAyMS41MzNDMjIuMjMxNSAyMC4xNjQ4IDIxLjIzOTYgMTkuMDE5NyAyMC4wMjQ4IDE4LjIyMDlDMTkuNzc5NiAxOC4wNTk3IDE5LjUyNzIgMTcuOTEzOCAxOS4yNjg4IDE3Ljc4MzZaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K",StepsContainer=styled.ol`
3350
3350
  display: flex;
3351
3351
  gap: 5px;
3352
3352
  position: fixed;
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "main": "./dist/onBoarding.umd.js",
4
4
  "module": "./dist/onBoarding.mjs",
5
5
  "types": "./dist/incode-welcome/src/index.d.ts",
6
- "version": "1.71.0-20240419161640.0",
6
+ "version": "1.71.0-20240423210706.0",
7
7
  "publishConfig": {},
8
8
  "exports": {
9
9
  ".": {