@incodetech/web 2.3.2 → 2.4.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (354) hide show
  1. package/THIRD_PARTY_NOTICES.txt +0 -3
  2. package/dist/GeolocationPermissionDenied-BFMCy-vh.js +444 -0
  3. package/dist/ae-signature/ae-signature.es.js +3 -3
  4. package/dist/{af-ZA-OntsEubt.js → af-ZA-BrjGHv_T.js} +33 -6
  5. package/dist/ageVerification-DGLniT4Y.js +77 -0
  6. package/dist/{am-yUcnt3vq.js → am-DE3X3yyA.js} +33 -6
  7. package/dist/antifraud/antifraud.es.js +3 -3
  8. package/dist/antifraud/styles.css +0 -1
  9. package/dist/{ar-AE-BfxiKovT.js → ar-AE-CMTI-_Uo.js} +34 -7
  10. package/dist/{ar-57Dd-l4I.js → ar-BNacVOWD.js} +34 -7
  11. package/dist/{ar-EG-BgDjHJBi.js → ar-EG-D9uwNPoU.js} +33 -6
  12. package/dist/authentication/authentication.es.js +4 -4
  13. package/dist/{autoFocusTitle-DebebrwQ.js → autoFocusTitle-shYRUp-4.js} +1 -1
  14. package/dist/{az-dT363k-q.js → az-Wr9zZpTx.js} +33 -6
  15. package/dist/back-horizontal-hint-BztyPanp.js +134 -0
  16. package/dist/back-vertical-hint-BSzA4QbJ.js +127 -0
  17. package/dist/base.css +1 -7230
  18. package/dist/{baseTutorial-CyVBbj9b.js → baseTutorial-D_Jq0Kz2.js} +13 -24
  19. package/dist/{bn-CKZ00roT.js → bn-C_dbLk3y.js} +33 -6
  20. package/dist/{bottomSheet-DpSr7d9-.js → bottomSheet-Cdwz_7C5.js} +2 -2
  21. package/dist/{bs-BnLdLnmZ.js → bs-C30W6le2.js} +33 -6
  22. package/dist/{ca-D3PGkuQc.js → ca-5-jdy0XG.js} +33 -6
  23. package/dist/cameraOverlay-rWy5OHQK.js +2 -0
  24. package/dist/cameraOverlayHeader-DUwk9XJR.js +83 -0
  25. package/dist/{cameraView-CoWyMnTT.js → cameraView-DJhoELeE.js} +2 -2
  26. package/dist/{ceb-R-2VANeF.js → ceb-D91AsHCc.js} +33 -6
  27. package/dist/certificate-issuance/certificate-issuance.es.js +9 -8
  28. package/dist/certificate-issuance/styles.css +1 -72
  29. package/dist/certificate-issuance/styles.css.js +1 -1
  30. package/dist/check-icon-BpjpKqhJ.js +48 -0
  31. package/dist/{checkbox-CNc8kQS0.js → checkbox-BCr_W3eL.js} +2 -2
  32. package/dist/connectionError-D4qOfYzz.js +45 -0
  33. package/dist/consent/consent.es.js +8 -6
  34. package/dist/consent/styles.css +1 -129
  35. package/dist/consent/styles.css.js +1 -1
  36. package/dist/countryDefinitions-BO9OSKQO.js +555 -0
  37. package/dist/countryFlag-2Vj85OIZ.js +67 -0
  38. package/dist/{countrySelector-BlC5_2rW.js → countrySelector-ck-DQ89q.js} +6 -5
  39. package/dist/cross-document-data-match/cross-document-data-match.es.js +3 -3
  40. package/dist/{cs-bm9MEri0.js → cs-C4eEOpdT.js} +33 -6
  41. package/dist/{cs-CZ-CEidLhWp.js → cs-CZ-DiJ5MEfY.js} +33 -6
  42. package/dist/curp-validation/curp-validation.es.js +13 -11
  43. package/dist/curp-validation/styles.css +1 -128
  44. package/dist/curp-validation/styles.css.js +1 -1
  45. package/dist/custom-fields/styles.css +1 -21
  46. package/dist/custom-fields/styles.css.js +1 -1
  47. package/dist/{customFields-C_iIhQYG.js → customFields-CihI8HLg.js} +10 -9
  48. package/dist/{customWatchlist-utPTNwCU.js → customWatchlist-avefsmET.js} +6 -6
  49. package/dist/{da-DK-BuSuFTsg.js → da-DK-C3zlFkKn.js} +33 -6
  50. package/dist/{dashboardTheme-DdWs3tlN.js → dashboardTheme-CL3jdGes.js} +1 -1
  51. package/dist/dateInputComposed-9c_0YlmT.js +1 -0
  52. package/dist/{dateInputComposed-CylyZPCj.js → dateInputComposed-BNmac2I-.js} +4 -4
  53. package/dist/{de-BCPdribE.js → de-BefcT58V.js} +33 -6
  54. package/dist/denied-Cs9yuLM4.js +1871 -0
  55. package/dist/deviceWallet-B0fJl22u.js +66 -0
  56. package/dist/digitalIdRedirect-BMakPQkG.js +162 -0
  57. package/dist/digitalIdUpload-D39gUOUa.js +496 -0
  58. package/dist/document-capture/document-capture.es.js +1 -1
  59. package/dist/document-capture/styles.css +1 -378
  60. package/dist/document-capture/styles.css.js +1 -1
  61. package/dist/{documentCapture-BrhKPBNZ.js → documentCapture-64bza6r6.js} +127 -180
  62. package/dist/documentCapture-D_cQ0luo.js +2 -0
  63. package/dist/{dropdownComposed-B0WxIm-I.js → dropdownComposed-DMsLAeKB.js} +8 -14
  64. package/dist/dropdownComposed-MlXFSguX.js +1 -0
  65. package/dist/dynamic-forms/dynamic-forms.es.js +13 -12
  66. package/dist/dynamic-forms/styles.css +1 -104
  67. package/dist/dynamic-forms/styles.css.js +1 -1
  68. package/dist/ekyb/ekyb.es.js +1 -1
  69. package/dist/ekyb/styles.css +1 -113
  70. package/dist/ekyb/styles.css.js +1 -1
  71. package/dist/ekybModule-B1gUqxgm.js +2 -0
  72. package/dist/{ekybModule-BwD2ohHx.js → ekybModule-ChOhP6uM.js} +13 -12
  73. package/dist/ekyc/ekyc.es.js +1 -1
  74. package/dist/ekyc/styles.css +1 -108
  75. package/dist/ekyc/styles.css.js +1 -1
  76. package/dist/{ekycModule-Y9GYfYAt.js → ekycModule-4q3A2JP3.js} +46 -14
  77. package/dist/ekycModule-DTIkPJjl.js +2 -0
  78. package/dist/{el-60ThHM2U.js → el-BqLmhuTU.js} +34 -7
  79. package/dist/{el-GR-D6WIhwC3.js → el-GR-BN31SzAR.js} +33 -6
  80. package/dist/electronic-signature/electronic-signature.es.js +1 -1
  81. package/dist/electronic-signature/styles.css +1 -407
  82. package/dist/electronic-signature/styles.css.js +1 -1
  83. package/dist/{electronic-signature-Bmn4AOpj.js → electronic-signature-Dhw2cLem.js} +24 -21
  84. package/dist/email/email.es.js +8 -7
  85. package/dist/email/styles.css +1 -11
  86. package/dist/email/styles.css.js +1 -1
  87. package/dist/{emailInput-DgQXpURU.js → emailInput-yOCErcEc.js} +3 -3
  88. package/dist/{en-ISV8KwbL.js → en-CJnRQ8fU.js} +33 -6
  89. package/dist/{en-DG-Crvtj3p2.js → en-DG-Dx4B_KVS.js} +33 -6
  90. package/dist/{errorContent-XVdZTMAl.js → errorContent-mqhVNRSO.js} +5 -5
  91. package/dist/{es-419-pXqNpSti.js → es-419-Dl-olR1G.js} +33 -6
  92. package/dist/{es-1QCV_aoe.js → es-BZmJSsux.js} +33 -6
  93. package/dist/{es-ES-BIYzpL_B.js → es-ES-1YZMu7Kf.js} +33 -6
  94. package/dist/{es-MX-Cih_nZPr.js → es-MX-CyxCkl1y.js} +33 -6
  95. package/dist/esm-15CISqPe.js +430 -0
  96. package/dist/{et-CgCGIoIQ.js → et-C1S6VW9K.js} +33 -6
  97. package/dist/{expiredId-BhQM_AcZ.js → expiredId-DfqiC9HI.js} +6 -6
  98. package/dist/extensibility.es.js +38 -36
  99. package/dist/{fa-IR-YnGtqwsy.js → fa-IR-BPyBkaiF.js} +33 -6
  100. package/dist/face-match/face-match.es.js +1 -1
  101. package/dist/face-match/styles.css +1 -535
  102. package/dist/face-match/styles.css.js +1 -1
  103. package/dist/faceMatch-BgN3CPdN.js +2 -0
  104. package/dist/faceMatch-UbygvNeb.js +336 -0
  105. package/dist/{fi-FI-3XXKPtj1.js → fi-FI-CfKLgU-O.js} +33 -6
  106. package/dist/field-comparison/field-comparison.es.js +1 -1
  107. package/dist/field-comparison/styles.css +1 -27
  108. package/dist/field-comparison/styles.css.js +1 -1
  109. package/dist/fieldComparison-CNaAVsGY.js +2 -0
  110. package/dist/{fieldComparison-D7rZ657j.js → fieldComparison-CmRsH7pg.js} +13 -7
  111. package/dist/finalSuccessScreen-2-RZENUP.js +500 -0
  112. package/dist/fiscal-qr/fiscal-qr.es.js +28 -23
  113. package/dist/fiscal-qr/styles.css +1 -82
  114. package/dist/fiscal-qr/styles.css.js +1 -1
  115. package/dist/{flipAnimation-BGXItWj0.js → flipAnimation-DI5Gw5Ks.js} +643 -355
  116. package/dist/flow/flow.es.js +41 -24
  117. package/dist/flow/shell/styles.css +1 -401
  118. package/dist/flow/shell/styles.css.js +1 -1
  119. package/dist/flow/styles.css +1 -5702
  120. package/dist/{formField-Cf25rdkJ.js → formField-2VLEaztk.js} +2 -2
  121. package/dist/{fr-CA-DULWz0cf.js → fr-CA-BJlED1CS.js} +33 -6
  122. package/dist/{fr-BwDYP0LQ.js → fr-yKqRZbZ6.js} +33 -6
  123. package/dist/front-horizontal-hint-DEHmtcdg.js +379 -0
  124. package/dist/{front-vertical-hint-qXMVdLri.js → front-vertical-hint-Cb1NO-xT.js} +71 -72
  125. package/dist/geolocation/geolocation.es.js +26 -459
  126. package/dist/geolocation/styles.css +1 -165
  127. package/dist/geolocation/styles.css.js +1 -1
  128. package/dist/government-validation/government-validation.es.js +15 -13
  129. package/dist/government-validation/styles.css +1 -4
  130. package/dist/government-validation/styles.css.js +1 -1
  131. package/dist/{he-BZVxeCzZ.js → he-Dr88a3D5.js} +33 -6
  132. package/dist/{hi-Bp8GM653.js → hi-ac5Rf53r.js} +33 -6
  133. package/dist/{hmn-Bj6F8ToZ.js → hmn-bwkkfetx.js} +33 -6
  134. package/dist/{homeScreen-eYD0Zo8Y.js → homeScreen-BezGnGit.js} +10 -11
  135. package/dist/{hr-uz9DXHS8.js → hr-CHcVE152.js} +33 -6
  136. package/dist/{ht-BGd4L5Je.js → ht-IPMniPpi.js} +33 -6
  137. package/dist/{hu-BvTVDhN5.js → hu-CG5ZOzy2.js} +33 -6
  138. package/dist/icons-CSP6Tne6.js +535 -0
  139. package/dist/id/id.es.js +315 -1174
  140. package/dist/id/styles.css +1 -1691
  141. package/dist/id/styles.css.js +1 -1
  142. package/dist/{id-D0EG-hya.js → id-DYinFjLQ.js} +33 -6
  143. package/dist/id-back-of-card-C7Au2tqk.js +71 -0
  144. package/dist/id-back-of-card-vertical-CtQBFw8w.js +74 -0
  145. package/dist/id-front-of-card-BmHL_keG.js +305 -0
  146. package/dist/id-front-of-card-vertical-DkNUn2Vx.js +253 -0
  147. package/dist/id-ocr/styles.css +1 -55
  148. package/dist/id-ocr/styles.css.js +1 -1
  149. package/dist/id-selfie-flow/id-selfie-flow.es.js +12 -9
  150. package/dist/id-selfie-flow/styles.css +1 -780
  151. package/dist/id-verification/id-verification.es.js +6 -5
  152. package/dist/{idOcr-66OmIUeD.js → idOcr-DN1gTAJ7.js} +12 -11
  153. package/dist/identity-reuse/identity-reuse.es.js +167 -139
  154. package/dist/identity-reuse/styles.css +1 -216
  155. package/dist/incode-logo-DIujvtwd.js +341 -0
  156. package/dist/{incodeComponent--XJZ07QN.js → incodeComponent-WXvcRKkM.js} +147 -269
  157. package/dist/incodeModule-DsWO19Nv.js +68 -0
  158. package/dist/index.es.js +4 -3
  159. package/dist/{inputComposed-ByIWAPSr.js → inputComposed-D-WVQEpg.js} +2 -2
  160. package/dist/inputComposed-Dca8NJxF.js +1 -0
  161. package/dist/{it-DWY7_sYa.js → it-pBVnbw9L.js} +34 -7
  162. package/dist/{ja-z6DqLSKX.js → ja-BtG6-Vh2.js} +33 -6
  163. package/dist/{ja-JP-DvHAizEm.js → ja-JP-CuWo_Mj3.js} +33 -6
  164. package/dist/{jv-CkRJjzon.js → jv-BT_G8rCL.js} +33 -6
  165. package/dist/{ka-BvgWMiTW.js → ka-WxIHXEYK.js} +33 -6
  166. package/dist/{kk-BAYGOXZ1.js → kk-qwv1f2i0.js} +33 -6
  167. package/dist/{km-Bn1-UMaR.js → km-CMxgTPm2.js} +40 -13
  168. package/dist/{ko-CtAqOkND.js → ko-ByRDnTNU.js} +33 -6
  169. package/dist/{ko-KP-kVzak00f.js → ko-KP-DT8OH4nm.js} +33 -6
  170. package/dist/{ky-Cegtfua2.js → ky-DrRlDMWB.js} +33 -6
  171. package/dist/{lo-DtW4luOG.js → lo-CazQUHLa.js} +33 -6
  172. package/dist/{lt-CnaDc_UD.js → lt-CBMtCNcX.js} +33 -6
  173. package/dist/{lv-SBquFvpr.js → lv-QLEUT4Fk.js} +33 -6
  174. package/dist/{mandatoryConsent-BMvNiuiY.js → mandatoryConsent-B8JxEysm.js} +8 -6
  175. package/dist/{manualCaptureButton-6HOiu1ud.js → manualCaptureButton-CortdhZS.js} +5 -5
  176. package/dist/{manualCaptureButton-CI-lIiuA.js → manualCaptureButton-XLjthVmp.js} +43 -34
  177. package/dist/{mk-Bym8Rbmu.js → mk-DDDwwQ8b.js} +33 -6
  178. package/dist/{mn-C-EiXg08.js → mn-CKxduUYN.js} +33 -6
  179. package/dist/{ms-k_GCoKmE.js → ms-CFER5NeU.js} +33 -6
  180. package/dist/{my-v5GqdpqS.js → my-mmwQAfjf.js} +33 -6
  181. package/dist/{nb-NO-Ca1WyJtF.js → nb-NO-CGgKs8rj.js} +33 -6
  182. package/dist/{ne-DZ1xJQOA.js → ne-BJqy-qcj.js} +33 -6
  183. package/dist/{nl-DsWJVGHj.js → nl-DJr6e9c-.js} +33 -6
  184. package/dist/{optionAccessibleLabel-CkP9Zu6D.js → optionAccessibleLabel-Da2eL5BH.js} +5 -5
  185. package/dist/{otpInput-CmcE2rnQ.js → otpInput-DhyZLO7E.js} +6 -6
  186. package/dist/page-BksTT2IT.js +299 -0
  187. package/dist/{passport-horizontal-hint-6Ghn2EEN.js → passport-horizontal-hint-DgNc6F0-.js} +48 -49
  188. package/dist/{passport-vertical-hint-UPFFpdf4.js → passport-vertical-hint-B-toVsfT.js} +42 -42
  189. package/dist/{passwordInputComposed-DkHtXfpN.js → passwordInputComposed-DUuchiG5.js} +4 -4
  190. package/dist/{pdf-CFubyG0B.js → pdf-BKHLi5Ac.js} +2 -2
  191. package/dist/pdf.worker.min-BM1b2w9V.js +4 -0
  192. package/dist/pdfViewer-DI6ftHlp.js +2 -0
  193. package/dist/pdfViewer-jx6A8s9-.js +154 -0
  194. package/dist/{permissions-D85sVpRH.js → permissions-CSwqOb8W.js} +41 -14
  195. package/dist/phone/phone.es.js +9 -8
  196. package/dist/phone/styles.css +1 -10
  197. package/dist/phone/styles.css.js +1 -1
  198. package/dist/phoneInputComposed-B-rmar65.js +249 -0
  199. package/dist/{pl-B32zvfat.js → pl-eSIxcu-k.js} +33 -6
  200. package/dist/policyUrls-B3M8nLRh.js +7 -0
  201. package/dist/{processing-DB6ZtByy.js → processing-DXSGB91D.js} +1 -1
  202. package/dist/progressBar-CFcaF74Q.js +27 -0
  203. package/dist/{pt-BR-CZSBmrhf.js → pt-BR-CJA5ZG6e.js} +33 -6
  204. package/dist/{pt-CI9A94gT.js → pt-CmJV-wZ-.js} +33 -6
  205. package/dist/{pt-PT-dD8X7Uk-.js → pt-PT-BFdqErGN.js} +33 -6
  206. package/dist/{spacer-Csi6kZZI.js → purify.es-0fCPkEV1.js} +2 -740
  207. package/dist/qe-signature/qe-signature.es.js +3 -3
  208. package/dist/radioGroupComposed-BDYikM_v.js +1 -0
  209. package/dist/{radioGroupComposed-BKEEwEPO.js → radioGroupComposed-CP8O7fH0.js} +2 -2
  210. package/dist/redirect-to-mobile/redirect-to-mobile.es.js +116 -13
  211. package/dist/redirect-to-mobile/styles.css +1 -323
  212. package/dist/redirect-to-mobile/styles.css.js +1 -1
  213. package/dist/reload-icon-elAFo9-k.js +70 -0
  214. package/dist/{resendTimer-QICiM2K0.js → resendTimer-B57abKjj.js} +1 -1
  215. package/dist/{richText-2CpStx6w.js → richText-aCnLd3j2.js} +2 -2
  216. package/dist/{ro-9pJ4k0ri.js → ro-CWG17Pwq.js} +33 -6
  217. package/dist/{ru-RU-Bbq_NDQg.js → ru-RU-B92HlMCp.js} +33 -6
  218. package/dist/{ru-DU8F6ner.js → ru-ax21b71G.js} +33 -6
  219. package/dist/sanitizeSvg-BC-qLUgS.js +35 -0
  220. package/dist/selfie/selfie.es.js +9 -184
  221. package/dist/selfie/styles.css +1 -501
  222. package/dist/selfie/styles.css.js +1 -1
  223. package/dist/signature/signature.es.js +8 -7
  224. package/dist/signature/styles.css +1 -116
  225. package/dist/signature/styles.css.js +1 -1
  226. package/dist/{sk-COjINm80.js → sk-Ds3au8Jk.js} +35 -8
  227. package/dist/{sl-BHEN5hgb.js → sl-B6IDJen8.js} +33 -6
  228. package/dist/{smsTabContent-6ehe5Tx-.js → smsTabContent-BlG83kTA.js} +6 -7
  229. package/dist/{so-BK_1PgA0.js → so-YhVExrIs.js} +33 -6
  230. package/dist/spacer-CkjGrKvv.js +741 -0
  231. package/dist/{spinner-C9D0Usrj.js → spinner-ceW7fzMV.js} +2 -2
  232. package/dist/{sr-CXHt_PCR.js → sr-DHyxTTRS.js} +33 -6
  233. package/dist/{sr-Latn-BBXL4zhk.js → sr-Latn-DVXk3-Ar.js} +40 -13
  234. package/dist/{sr-YU-D3DxWT8Q.js → sr-YU-A98YyASK.js} +33 -6
  235. package/dist/{statusPage-BbOa8Zsp.js → statusPage-DcunZz7q.js} +3 -3
  236. package/dist/{sv-SE-B6_0mJU7.js → sv-SE-BKSmMaSz.js} +33 -6
  237. package/dist/{sw-BUZuOFDH.js → sw-BlrxyPqO.js} +33 -6
  238. package/dist/{th-DZN2Iv8L.js → th-Bwohp3kt.js} +33 -6
  239. package/dist/{th-TH-B5S1TAOp.js → th-TH-CJpVz2u5.js} +33 -6
  240. package/dist/themes/dark.css +1 -1537
  241. package/dist/themes/light.css +1 -1413
  242. package/dist/{tl-DO_ExzG4.js → tl-D-896paK.js} +33 -6
  243. package/dist/{tl-PH-CbqgynTp.js → tl-PH-CpeFjacJ.js} +33 -6
  244. package/dist/{tr-DuzhV6aC.js → tr-UpF9aXXo.js} +34 -7
  245. package/dist/transitionSpinner-t_urdfwD.js +76 -0
  246. package/dist/{tutorial-CGHCyHq1.js → tutorial-Hoic1tQU.js} +14 -18
  247. package/dist/types/ae-signature.d.ts +27 -5
  248. package/dist/types/antifraud.d.ts +27 -5
  249. package/dist/types/authentication.d.ts +27 -5
  250. package/dist/types/certificate-issuance.d.ts +27 -5
  251. package/dist/types/consent.d.ts +27 -3
  252. package/dist/types/cross-document-data-match.d.ts +32 -2
  253. package/dist/types/curp-validation.d.ts +27 -5
  254. package/dist/types/document-capture.d.ts +32 -2
  255. package/dist/types/dynamic-forms.d.ts +27 -5
  256. package/dist/types/ekyb.d.ts +32 -2
  257. package/dist/types/ekyc.d.ts +32 -2
  258. package/dist/types/electronic-signature.d.ts +27 -5
  259. package/dist/types/email.d.ts +27 -3
  260. package/dist/types/extensibility.d.ts +135 -27
  261. package/dist/types/face-match.d.ts +32 -2
  262. package/dist/types/field-comparison.d.ts +32 -2
  263. package/dist/types/fiscal-qr.d.ts +27 -3
  264. package/dist/types/flow.d.ts +27 -3
  265. package/dist/types/geolocation.d.ts +27 -3
  266. package/dist/types/government-validation.d.ts +32 -2
  267. package/dist/types/id-selfie-flow.d.ts +27 -14
  268. package/dist/types/id-verification.d.ts +27 -5
  269. package/dist/types/id.d.ts +27 -3
  270. package/dist/types/identity-reuse.d.ts +27 -5
  271. package/dist/types/index.d.ts +52 -1
  272. package/dist/types/phone.d.ts +27 -3
  273. package/dist/types/qe-signature.d.ts +27 -5
  274. package/dist/types/selfie.d.ts +27 -3
  275. package/dist/types/signature.d.ts +27 -5
  276. package/dist/types/video-selfie.d.ts +5 -2
  277. package/dist/types/watchlist.d.ts +27 -5
  278. package/dist/types/workflow.d.ts +50 -4
  279. package/dist/{typography-Ck7V6DNZ.js → typography-CjBuzXWX.js} +1 -1
  280. package/dist/{uiConfig-Dd7jp1PI.js → uiConfig-Bh5WEbvy.js} +256 -874
  281. package/dist/{uk-BLrKoj8p.js → uk-DsTY-qEZ.js} +33 -6
  282. package/dist/{uk-UA-D6AgqKAE.js → uk-UA-BsILxTGz.js} +33 -6
  283. package/dist/{ur-uciedoGK.js → ur-n9ZinGDJ.js} +33 -6
  284. package/dist/useCaptureHelpButton-f7JWgp_k.js +86 -0
  285. package/dist/useCoverMedia-VLw3OYN_.js +149 -0
  286. package/dist/{uz-D1RcQJml.js → uz-C-oPc-JB.js} +33 -6
  287. package/dist/{verificationResult-CMeZfcp-.js → verificationResult-M2YRY8Gb.js} +6 -6
  288. package/dist/{vi-ftDWx05b.js → vi-CwwSd-oQ.js} +33 -6
  289. package/dist/video-selfie/styles.css +1 -864
  290. package/dist/video-selfie/styles.css.js +1 -1
  291. package/dist/video-selfie/video-selfie.es.js +15 -12
  292. package/dist/watchlist/watchlist.es.js +6 -6
  293. package/dist/watchlist-for-business/styles.css +1 -17
  294. package/dist/watchlist-for-business/styles.css.js +1 -1
  295. package/dist/{watchlistForBusiness-CAVtOlvf.js → watchlistForBusiness-CAUTDAJh.js} +265 -8
  296. package/dist/{resolveApiKey-uVJm2km3.js → withEndScreenTexts-VQlYb0bU.js} +53 -25
  297. package/dist/workflow/styles.css +1 -5116
  298. package/dist/workflow/workflow.es.js +83 -28
  299. package/dist/{zh-CN-C6BX8R6-.js → zh-CN-Dc3X6PNO.js} +35 -8
  300. package/dist/{zh-CJ974_0X.js → zh-Dgdyqejo.js} +33 -6
  301. package/dist/{zh-HANT-CbCj1ENS.js → zh-HANT-BDp9XkY7.js} +33 -6
  302. package/dist/{zh-TW-DGxz1fli.js → zh-TW-QBmOmVhc.js} +33 -6
  303. package/package.json +8 -6
  304. package/dist/back-horizontal-hint-UQ7Nof6k.js +0 -137
  305. package/dist/back-vertical-hint-Crc8ybfk.js +0 -128
  306. package/dist/cameraOverlay-Dp8micQ1.js +0 -2
  307. package/dist/cameraOverlayHeader-BMfNitmC.js +0 -43
  308. package/dist/captureFooter-xMZdYH2O.js +0 -67
  309. package/dist/connectionError-BhxGYSwy.js +0 -45
  310. package/dist/countries-5e8kwG_m.js +0 -8560
  311. package/dist/dateInputComposed-DM6MXdpn.js +0 -1
  312. package/dist/denied-PJnw8fbL.js +0 -2191
  313. package/dist/documentCapture-Bcw3g1Q1.js +0 -2
  314. package/dist/dropdownComposed-C2bmup-w.js +0 -1
  315. package/dist/ekybModule-DHJWniii.js +0 -2
  316. package/dist/ekycModule-5d4qgrAk.js +0 -2
  317. package/dist/faceMatch-B7ayVA3N.js +0 -2
  318. package/dist/faceMatch-Tj39bhkm.js +0 -334
  319. package/dist/fieldComparison-75FGbygj.js +0 -2
  320. package/dist/finalSuccessScreen-ikiIjPhC.js +0 -499
  321. package/dist/front-horizontal-hint-mgovnJf3.js +0 -380
  322. package/dist/icons-DO-rf5yd.js +0 -533
  323. package/dist/id-back-of-card-B6EcmiCs.js +0 -83
  324. package/dist/id-back-of-card-vertical-B3FXhPpj.js +0 -88
  325. package/dist/id-front-of-card-V_BlLaZr.js +0 -308
  326. package/dist/id-front-of-card-vertical-CuZjL8kc.js +0 -278
  327. package/dist/incode-logo-BzJOZr3f.js +0 -4
  328. package/dist/incodeModule-n_Am6zwM.js +0 -31
  329. package/dist/inputComposed-B33LMERA.js +0 -1
  330. package/dist/modal-DNfrzKC7.js +0 -140
  331. package/dist/modal.hooks-B0Wrc9s2.js +0 -201
  332. package/dist/pdfViewer-CygtdQPU.js +0 -149
  333. package/dist/pdfViewer-Yf7ZKXLz.js +0 -2
  334. package/dist/phoneInputComposed-7i6GGW1B.js +0 -3751
  335. package/dist/radioGroupComposed-Bm3iEn-6.js +0 -1
  336. package/dist/tabs-CW12_glt.js +0 -104
  337. /package/dist/{aligndevicelottie-B12hbVhG.js → aligndevicelottie-BARt-rhe.js} +0 -0
  338. /package/dist/{back-tutorial-XdmQ0Wml.js → back-tutorial-CZrMmj1_.js} +0 -0
  339. /package/dist/{backdevicelottie-m_DOD8xE.js → backdevicelottie-CIM3ekd8.js} +0 -0
  340. /package/dist/{blurdevicelottie-DQo_hTMD.js → blurdevicelottie-BRyXfLB6.js} +0 -0
  341. /package/dist/{browser-ponyfill-ZkeBm4ji.js → browser-ponyfill-DT11p-Ob.js} +0 -0
  342. /package/dist/{defineProperty-BojnCa44.js → defineProperty-CjeJoXkx.js} +0 -0
  343. /package/dist/{flip-animation-VicedlT5.js → flip-animation-BU5LNKYx.js} +0 -0
  344. /package/dist/{frontdevicelottie-CyIerlMv.js → frontdevicelottie-arpyu_Fz.js} +0 -0
  345. /package/dist/{glaredevicelottie-QM2C6Ivp.js → glaredevicelottie-TwTFxe7h.js} +0 -0
  346. /package/dist/{id-laser-h-B0-iXcvl.js → id-laser-h-Dr-hBxrq.js} +0 -0
  347. /package/dist/{id-laser-v-Bqh6vimi.js → id-laser-v-D_r0QNY8.js} +0 -0
  348. /package/dist/{id-tutorial-IhmAzrIF.js → id-tutorial-DM9Pkfs-.js} +0 -0
  349. /package/dist/{lottie_light-CzZ3CHBk.js → lottie_light-aMg9Q9iO.js} +0 -0
  350. /package/dist/{numberedStep-C8e_uPaz.js → numberedStep-CvbL3ht2.js} +0 -0
  351. /package/dist/{passport-tutorial-61vlloJS.js → passport-tutorial-CKZZuDf_.js} +0 -0
  352. /package/dist/{registerIncodeElement-CbZczi4S.js → registerIncodeElement-D_cn4dSI.js} +0 -0
  353. /package/dist/{selfieTutorial-BRQ2QNxQ.js → selfieTutorial-Dz6lDFMn.js} +0 -0
  354. /package/dist/{useModuleLoader-DpcbSKBH.js → useModuleLoader-BdIp6TNQ.js} +0 -0
package/dist/id/id.es.js CHANGED
@@ -1,27 +1,26 @@
1
- import { o as useTranslation } from "../uiConfig-Dd7jp1PI.js";
2
- import { S as k, _ as y, a as P, c as A, f as d, h as q, s as z, u as T, v as u } from "../vendor-preact-C0jX1Cbq.js";
3
- import { S as useManager, _ as useIsMobileDeviceWidth, b as useModuleTerminalCallbacks, c as Page, d as TransitionSpinner, f as useFeatureManagement, i as withStandaloneModuleBootstrap, l as VerifiedByIncodeLogo, m as useTimeoutHandle, o as useHasResolvedConfig, t as IncodeComponent } from "../incodeComponent--XJZ07QN.js";
4
- import { d as cn, i as preloadAnimations, r as AnimatedAsset, s as Asset, t as Spacer } from "../spacer-Csi6kZZI.js";
5
- import { o as TypographyP, t as Title } from "../typography-Ck7V6DNZ.js";
6
- import { t as Spinner } from "../spinner-C9D0Usrj.js";
7
- import { a as LockIcon, b as ErrorIcon, f as ChevronRightIcon, r as SuccessIcon, x as Button } from "../icons-DO-rf5yd.js";
8
- import { t as AutoFocusTitle } from "../autoFocusTitle-DebebrwQ.js";
9
- import { t as Processing } from "../processing-DB6ZtByy.js";
10
- import { t as Modal } from "../modal-DNfrzKC7.js";
11
- import { t as ErrorContent } from "../errorContent-XVdZTMAl.js";
12
- import { t as VerificationResult } from "../verificationResult-CMeZfcp-.js";
13
- import { n as ProgressBar } from "../captureFooter-xMZdYH2O.js";
14
- import { a as IdNoAttempts, c as canFlipCapturedCard, d as CAMERA_PERMISSION_UX, f as CONTINUING_TUTORIAL_PHASES, g as PERMISSION_DIALOG_STATUS, h as ID_CAPTURE_STATUS, i as Capture, l as CaptureFrame, m as ID_CAPTURE_LOADING_PHASE, n as Chooser, o as IdExpired, p as EXPERIMENT_LIFECYCLE_STATUS, r as Tutorial, s as IdError, t as FlipAnimation, u as useIdExperiment } from "../flipAnimation-BGXItWj0.js";
15
- import { t as BottomSheet } from "../bottomSheet-DpSr7d9-.js";
16
- import { i as SvgReloadIcon, n as SvgCheckV2Icon, r as SvgPersonCardIcon } from "../denied-PJnw8fbL.js";
17
- import { n as PermissionsDialog, t as Permissions } from "../permissions-D85sVpRH.js";
18
- import { t as PdfViewer } from "../pdfViewer-CygtdQPU.js";
19
- import { t as registerIncodeModuleElement } from "../incodeModule-n_Am6zwM.js";
20
- import { t as SvgIdBackOfCard } from "../id-back-of-card-B6EcmiCs.js";
21
- import { t as SvgIdBackOfCardVertical } from "../id-back-of-card-vertical-B3FXhPpj.js";
22
- import { t as SvgIdFrontOfCard } from "../id-front-of-card-V_BlLaZr.js";
23
- import { t as SvgIdFrontOfCardVertical } from "../id-front-of-card-vertical-CuZjL8kc.js";
24
- import { t as Tabs } from "../tabs-CW12_glt.js";
1
+ import { o as useTranslation, r as useUiConfig } from "../uiConfig-Bh5WEbvy.js";
2
+ import { S as k, _ as y, a as P, c as A, f as d, h as q, s as z, v as u } from "../vendor-preact-C0jX1Cbq.js";
3
+ import { a as withStandaloneModuleBootstrap, d as useAnimationSignal, f as useTimeoutHandle, h as useIsMobileDeviceWidth, l as useFeatureManagement, s as useHasResolvedConfig, t as IncodeComponent, u as usePresence, x as useManager, y as useModuleTerminalCallbacks } from "../incodeComponent-WXvcRKkM.js";
4
+ import { d as cn, i as preloadAnimations, t as Spacer } from "../spacer-CkjGrKvv.js";
5
+ import { o as TypographyP, t as Title } from "../typography-CjBuzXWX.js";
6
+ import { t as TransitionSpinner } from "../transitionSpinner-t_urdfwD.js";
7
+ import { a as LockIcon, x as Button } from "../icons-CSP6Tne6.js";
8
+ import { n as VerifiedByIncodeLogo, t as Page } from "../page-BksTT2IT.js";
9
+ import { n as Modal } from "../incode-logo-DIujvtwd.js";
10
+ import { t as AutoFocusTitle } from "../autoFocusTitle-shYRUp-4.js";
11
+ import { t as Processing } from "../processing-DXSGB91D.js";
12
+ import { _ as ID_CAPTURE_LOADING_PHASE, a as CaptureAutoFocusProvider, c as IdExpired, d as CaptureFrame, f as useIdExperiment, g as EXPERIMENT_LIFECYCLE_STATUS, h as CONTINUING_TUTORIAL_PHASES, i as Capture, l as IdError, m as CAMERA_WARMUP_LOADING_PHASES, n as Chooser, o as getCaptureFrameTitle, p as CAMERA_PERMISSION_UX, r as Tutorial, s as IdNoAttempts, t as FlipAnimation, u as canFlipCapturedCard, v as ID_CAPTURE_STATUS, y as PERMISSION_DIALOG_STATUS } from "../flipAnimation-DI5Gw5Ks.js";
13
+ import { t as BottomSheet } from "../bottomSheet-Cdwz_7C5.js";
14
+ import { n as CameraFrame, t as CameraView } from "../cameraView-DJhoELeE.js";
15
+ import { n as CameraOverlay, t as CameraOverlayHeader } from "../cameraOverlayHeader-DUwk9XJR.js";
16
+ import { n as CaptureFooter } from "../useCaptureHelpButton-f7JWgp_k.js";
17
+ import { n as PermissionsDialog, r as PermissionsProvider, t as Permissions } from "../permissions-CSwqOb8W.js";
18
+ import { t as registerIncodeModuleElement } from "../incodeModule-DsWO19Nv.js";
19
+ import { t as SvgIdBackOfCard } from "../id-back-of-card-C7Au2tqk.js";
20
+ import { t as SvgIdBackOfCardVertical } from "../id-back-of-card-vertical-CtQBFw8w.js";
21
+ import { t as SvgIdFrontOfCard } from "../id-front-of-card-BmHL_keG.js";
22
+ import { t as SvgIdFrontOfCardVertical } from "../id-front-of-card-vertical-DkNUn2Vx.js";
23
+ import { n as SvgPersonCardIcon, r as SvgCheckV2Icon, t as SvgReloadIcon } from "../reload-icon-elAFo9-k.js";
25
24
  import { ONBOARDING_WEB_SDK_PARAMETER_STORE } from "@incodetech/core/feature-management";
26
25
  import { createIdCaptureManager } from "@incodetech/core/id";
27
26
  //#region src/shared/fonts/preloadDisplayFont.ts
@@ -37,77 +36,6 @@ function usePreloadDisplayFont() {
37
36
  }, []);
38
37
  }
39
38
  //#endregion
40
- //#region src/modules/id/ageVerification/assets/age-verification-dob.svg
41
- var age_verification_dob_default = "data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20width='100%25'%20height='100%25'%20overflow='visible'%20viewBox='0%200%2096%2064'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='id'%3e%3cg%20clip-path='url(%23clip0_0_643)'%3e%3crect%20width='96'%20height='64'%20rx='4'%20fill='var(--fill-0,%20%23E5F0FF)'/%3e%3crect%20id='bg'%20x='8.5'%20y='7.75'%20width='75'%20height='43'%20rx='2'%20fill='var(--fill-0,%20white)'/%3e%3cpath%20id='bg-white'%20d='M-7%20-5C-7%20-6.65685%20-5.65685%20-8%20-4%20-8H82C83.6569%20-8%2085%20-6.65685%2085%20-5V49C85%2050.6569%2083.6569%2052%2082%2052H-4C-5.65685%2052%20-7%2050.6569%20-7%2049V-5Z'%20fill='var(--fill-0,%20%23C9C9C9)'%20fill-opacity='0.8'/%3e%3cpath%20id='bg_2'%20d='M-7%200.52725C-7%20-0.78761%20-5.9341%20-1.85352%20-4.61924%20-1.85352L79.6003%20-1.85352C80.9151%20-1.85352%2081.9811%20-0.787611%2081.9811%200.527249V46.7815C81.9811%2048.0964%2080.9152%2049.1623%2079.6003%2049.1623L-4.61923%2049.1623C-5.93409%2049.1623%20-7%2048.0964%20-7%2046.7815L-7%200.52725Z'%20fill='var(--fill-0,%20white)'/%3e%3cg%20id='img-lef'%3e%3crect%20id='bg_3'%20x='-42'%20y='-25'%20width='56'%20height='64'%20rx='5.33333'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='neck'%20d='M-22.8853%2020.1198C-22.9125%2022.1914%20-26.5084%2022.8544%20-28.9246%2025.1859C-24.7205%2028.2152%20-18.6445%2030.2529%20-14.4405%2030.2529C-9.5482%2030.253%20-3.89305%2028.2152%200.310995%2025.1859C-2.10517%2022.8544%20-5.9213%2022.1949%20-5.97221%2020.1197C-5.97221%2019.3322%20-5.96945%2011.6597%20-5.96578%2010.8721C-5.96578%20-2.38824%20-23.3907%20-10.2777%20-22.9083%2011.0888C-22.8992%2014.0991%20-22.8853%2017.1096%20-22.8853%2020.1198Z'%20fill='url(%23paint0_linear_0_643)'/%3e%3cpath%20id='tshirt'%20d='M-3.36816%2022.5273C-3.28384%2022.5546%209.74919%2026.7804%2012.2715%2031.3359C12.8366%2032.3567%2013.3471%2033.6759%2013.8008%2035.1084C13.1717%2037.3531%2011.1126%2038.9999%208.66699%2039H-36.667C-39.6123%2038.9998%20-41.9998%2036.6123%20-42%2033.667V29.6143C-37.2999%2025.7557%20-25.4482%2022.5273%20-25.4482%2022.5273C-25.4482%2025.2971%20-18.567%2029.632%20-14.4082%2029.7031C-8.60958%2029.7029%20-3.36816%2025.2987%20-3.36816%2022.5273Z'%20fill='var(--fill-0,%20%23CECECE)'/%3e%3cpath%20id='shadow'%20d='M-22.8828%2011.7901C-16.6605%2011.1266%20-10.802%2016.2179%20-10.802%2016.2179C-10.802%2016.2179%20-11.9634%2022.4795%20-22.8828%2020.6596V11.7901Z'%20fill='var(--fill-0,%20%23CDCDCD)'/%3e%3cpath%20id='ear'%20d='M0.557148%201.11737C0.889571%20-0.123253%200.153333%20-1.39845%20-1.08729%20-1.73088L-1.33142%20-1.79629C-2.47233%20-2.102%20-3.66119%20-1.50391%20-4.09577%20-0.405607L-5.95319%204.28855C-6.50633%205.68646%20-5.6077%207.23397%20-4.11942%207.44644L-3.28987%207.56487C-2.12497%207.73118%20-1.01941%207.00115%20-0.714852%205.86454L0.557148%201.11737Z'%20fill='url(%23paint1_linear_0_643)'/%3e%3cpath%20id='ear_2'%20d='M-28.557%201.11743C-28.8894%20-0.123187%20-28.1531%20-1.39839%20-26.9125%20-1.73081C-25.6719%20-2.06323%20-24.3967%20-1.327%20-24.0643%20-0.0863767L-22.8605%204.4063C-22.528%205.64692%20-23.2643%206.92212%20-24.5049%207.25455C-25.7455%207.58697%20-27.0207%206.85073%20-27.3531%205.61011L-28.557%201.11743Z'%20fill='url(%23paint2_linear_0_643)'/%3e%3cpath%20id='head'%20d='M-1.21027%200.560308C-1.21027%2010.7444%20-8.39406%2019.0003%20-14.001%2019.0003C-20.1335%2019.0003%20-26.7917%2010.7444%20-26.7917%200.560308C-26.7917%20-8.51338%20-26.0862%20-18.209%20-14.001%20-18.209C-1.91578%20-18.209%20-1.21027%20-8.72318%20-1.21027%200.560308Z'%20fill='url(%23paint3_linear_0_643)'/%3e%3c/g%3e%3cg%20id='DOB%2008/31/1983'%3e%3cpath%20id='Vector'%20d='M67.7664%2024.7399L68.6693%2024.6303C68.6981%2024.8605%2068.7756%2025.0365%2068.9017%2025.1582C69.0279%2025.2799%2069.1806%2025.3408%2069.3599%2025.3408C69.5524%2025.3408%2069.714%2025.2677%2069.8446%2025.1217C69.9774%2024.9756%2070.0437%2024.7786%2070.0437%2024.5307C70.0437%2024.2961%2069.9807%2024.1102%2069.8545%2023.973C69.7284%2023.8358%2069.5745%2023.7672%2069.3931%2023.7672C69.2736%2023.7672%2069.1308%2023.7904%2068.9648%2023.8369L69.0677%2023.0767C69.32%2023.0833%2069.5126%2023.0291%2069.6454%2022.914C69.7782%2022.7967%2069.8446%2022.6418%2069.8446%2022.4492C69.8446%2022.2854%2069.7959%2022.1549%2069.6985%2022.0575C69.6011%2021.9601%2069.4716%2021.9114%2069.3101%2021.9114C69.1507%2021.9114%2069.0146%2021.9667%2068.9017%2022.0774C68.7889%2022.1881%2068.7202%2022.3496%2068.6959%2022.5621L67.8361%2022.416C67.8958%2022.1217%2067.9855%2021.8871%2068.105%2021.7122C68.2267%2021.5352%2068.3949%2021.3968%2068.6096%2021.2972C68.8265%2021.1954%2069.0688%2021.1445%2069.3366%2021.1445C69.7948%2021.1445%2070.1622%2021.2906%2070.4388%2021.5827C70.6668%2021.8218%2070.7807%2022.0918%2070.7807%2022.3928C70.7807%2022.8199%2070.5472%2023.1608%2070.0803%2023.4153C70.3591%2023.475%2070.5816%2023.6089%2070.7475%2023.817C70.9157%2024.025%2070.9998%2024.2762%2070.9998%2024.5706C70.9998%2024.9977%2070.8438%2025.3618%2070.5318%2025.6628C70.2197%2025.9638%2069.8313%2026.1143%2069.3665%2026.1143C68.9261%2026.1143%2068.5609%2025.9881%2068.271%2025.7358C67.981%2025.4813%2067.8128%2025.1493%2067.7664%2024.7399Z'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='Vector_2'%20d='M64.8153%2023.4053C64.5741%2023.3035%2064.3981%2023.1641%2064.2875%2022.987C64.179%2022.8078%2064.1248%2022.6119%2064.1248%2022.3994C64.1248%2022.0365%2064.2509%2021.7366%2064.5032%2021.4998C64.7578%2021.2629%2065.1185%2021.1445%2065.5855%2021.1445C66.0481%2021.1445%2066.4066%2021.2629%2066.6611%2021.4998C66.9179%2021.7366%2067.0462%2022.0365%2067.0462%2022.3994C67.0462%2022.6252%2066.9876%2022.8266%2066.8703%2023.0036C66.753%2023.1785%2066.5881%2023.3124%2066.3756%2023.4053C66.6456%2023.5138%2066.8503%2023.672%2066.9898%2023.8801C67.1314%2024.0881%2067.2022%2024.3282%2067.2022%2024.6004C67.2022%2025.0497%2067.0584%2025.4149%2066.7707%2025.696C66.4852%2025.9771%2066.1045%2026.1176%2065.6287%2026.1176C65.186%2026.1176%2064.8175%2026.0014%2064.5232%2025.769C64.1757%2025.4946%2064.002%2025.1183%2064.002%2024.6403C64.002%2024.3769%2064.0672%2024.1357%2064.1978%2023.9166C64.3284%2023.6952%2064.5342%2023.5248%2064.8153%2023.4053ZM65.0079%2022.4658C65.0079%2022.6517%2065.0599%2022.7967%2065.1639%2022.9007C65.2701%2023.0047%2065.4107%2023.0567%2065.5855%2023.0567C65.7626%2023.0567%2065.9042%2023.0047%2066.0104%2022.9007C66.1167%2022.7945%2066.1698%2022.6484%2066.1698%2022.4625C66.1698%2022.2877%2066.1167%2022.1482%2066.0104%2022.0442C65.9064%2021.938%2065.7681%2021.8848%2065.5955%2021.8848C65.4162%2021.8848%2065.2734%2021.938%2065.1672%2022.0442C65.061%2022.1504%2065.0079%2022.291%2065.0079%2022.4658ZM64.9215%2024.5507C64.9215%2024.8074%2064.9868%2025.0077%2065.1174%2025.1515C65.2502%2025.2954%2065.4151%2025.3673%2065.6121%2025.3673C65.8046%2025.3673%2065.964%2025.2987%2066.0901%2025.1615C66.2163%2025.0221%2066.2793%2024.8218%2066.2793%2024.5606C66.2793%2024.3327%2066.2152%2024.1501%2066.0868%2024.0128C65.9584%2023.8734%2065.7958%2023.8037%2065.5988%2023.8037C65.3708%2023.8037%2065.2004%2023.8823%2065.0875%2024.0394C64.9769%2024.1965%2064.9215%2024.367%2064.9215%2024.5507Z'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='Vector_3'%20d='M60.2504%2024.9059L61.1534%2024.8063C61.1755%2024.99%2061.2331%2025.1261%2061.326%2025.2146C61.419%2025.3031%2061.5418%2025.3474%2061.6945%2025.3474C61.8871%2025.3474%2062.0509%2025.2589%2062.1859%2025.0818C62.3209%2024.9048%2062.4072%2024.5374%2062.4448%2023.9796C62.2102%2024.2519%2061.917%2024.388%2061.5651%2024.388C61.1822%2024.388%2060.8513%2024.2408%2060.5724%2023.9464C60.2958%2023.6499%2060.1575%2023.2648%2060.1575%2022.7912C60.1575%2022.2976%2060.3035%2021.9003%2060.5957%2021.5993C60.89%2021.2961%2061.2641%2021.1445%2061.7178%2021.1445C62.2113%2021.1445%2062.6163%2021.336%2062.9328%2021.7189C63.2493%2022.0995%2063.4076%2022.727%2063.4076%2023.6012C63.4076%2024.4909%2063.2427%2025.1327%2062.9129%2025.5267C62.5831%2025.9206%2062.1538%2026.1176%2061.6248%2026.1176C61.2442%2026.1176%2060.9365%2026.0169%2060.7019%2025.8155C60.4673%2025.6119%2060.3168%2025.3087%2060.2504%2024.9059ZM62.3618%2022.8675C62.3618%2022.5665%2062.2921%2022.333%2062.1527%2022.167C62.0155%2022.001%2061.8561%2021.918%2061.6746%2021.918C61.502%2021.918%2061.3581%2021.9867%2061.243%2022.1239C61.1302%2022.2589%2061.0737%2022.4813%2061.0737%2022.7912C61.0737%2023.1054%2061.1357%2023.3367%2061.2596%2023.485C61.3836%2023.6311%2061.5385%2023.7041%2061.7244%2023.7041C61.9037%2023.7041%2062.0542%2023.6333%2062.1759%2023.4916C62.2999%2023.35%2062.3618%2023.1419%2062.3618%2022.8675Z'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='Vector_4'%20d='M58.833%2026.0313H57.9002V22.5156C57.5593%2022.8343%2057.1576%2023.07%2056.6951%2023.2227V22.3762C56.9385%2022.2965%2057.203%2022.146%2057.4885%2021.9247C57.774%2021.7012%2057.9699%2021.4411%2058.0761%2021.1445H58.833V26.0313Z'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='Vector_5'%20d='M54.2547%2026.1149L55.4598%2021.082H56.1603L54.9419%2026.1149H54.2547Z'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='Vector_6'%20d='M53.1563%2026.0313H52.2234V22.5156C51.8826%2022.8343%2051.4809%2023.07%2051.0183%2023.2227V22.3762C51.2618%2022.2965%2051.5262%2022.146%2051.8117%2021.9247C52.0972%2021.7012%2052.2931%2021.4411%2052.3994%2021.1445H53.1563V26.0313Z'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='Vector_7'%20d='M46.9514%2024.7399L47.8544%2024.6303C47.8832%2024.8605%2047.9606%2025.0365%2048.0868%2025.1582C48.2129%2025.2799%2048.3657%2025.3408%2048.5449%2025.3408C48.7375%2025.3408%2048.899%2025.2677%2049.0296%2025.1217C49.1624%2024.9756%2049.2288%2024.7786%2049.2288%2024.5307C49.2288%2024.2961%2049.1657%2024.1102%2049.0396%2023.973C48.9134%2023.8358%2048.7596%2023.7672%2048.5781%2023.7672C48.4586%2023.7672%2048.3159%2023.7904%2048.1499%2023.8369L48.2528%2023.0767C48.5051%2023.0833%2048.6976%2023.0291%2048.8304%2022.914C48.9632%2022.7967%2049.0296%2022.6418%2049.0296%2022.4492C49.0296%2022.2854%2048.9809%2022.1549%2048.8835%2022.0575C48.7862%2021.9601%2048.6567%2021.9114%2048.4951%2021.9114C48.3358%2021.9114%2048.1997%2021.9667%2048.0868%2022.0774C47.9739%2022.1881%2047.9053%2022.3496%2047.881%2022.5621L47.0211%2022.416C47.0809%2022.1217%2047.1705%2021.8871%2047.29%2021.7122C47.4118%2021.5352%2047.58%2021.3968%2047.7946%2021.2972C48.0115%2021.1954%2048.2539%2021.1445%2048.5217%2021.1445C48.9798%2021.1445%2049.3472%2021.2906%2049.6239%2021.5827C49.8518%2021.8218%2049.9658%2022.0918%2049.9658%2022.3928C49.9658%2022.8199%2049.7323%2023.1608%2049.2653%2023.4153C49.5442%2023.475%2049.7666%2023.6089%2049.9326%2023.817C50.1008%2024.025%2050.1849%2024.2762%2050.1849%2024.5706C50.1849%2024.9977%2050.0289%2025.3618%2049.7168%2025.6628C49.4048%2025.9638%2049.0163%2026.1143%2048.5516%2026.1143C48.1111%2026.1143%2047.746%2025.9881%2047.456%2025.7358C47.1661%2025.4813%2046.9979%2025.1493%2046.9514%2024.7399Z'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='Vector_8'%20d='M44.7937%2026.1149L45.9988%2021.082H46.6992L45.4809%2026.1149H44.7937Z'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='Vector_9'%20d='M42.1075%2023.4053C41.8663%2023.3035%2041.6904%2023.1641%2041.5797%2022.987C41.4712%2022.8078%2041.417%2022.6119%2041.417%2022.3994C41.417%2022.0365%2041.5432%2021.7366%2041.7955%2021.4998C42.05%2021.2629%2042.4108%2021.1445%2042.8777%2021.1445C43.3403%2021.1445%2043.6988%2021.2629%2043.9534%2021.4998C44.2101%2021.7366%2044.3385%2022.0365%2044.3385%2022.3994C44.3385%2022.6252%2044.2798%2022.8266%2044.1625%2023.0036C44.0452%2023.1785%2043.8803%2023.3124%2043.6679%2023.4053C43.9379%2023.5138%2044.1426%2023.672%2044.282%2023.8801C44.4237%2024.0881%2044.4945%2024.3282%2044.4945%2024.6004C44.4945%2025.0497%2044.3506%2025.4149%2044.0629%2025.696C43.7774%2025.9771%2043.3967%2026.1176%2042.9209%2026.1176C42.4783%2026.1176%2042.1098%2026.0014%2041.8154%2025.769C41.4679%2025.4946%2041.2942%2025.1183%2041.2942%2024.6403C41.2942%2024.3769%2041.3595%2024.1357%2041.4901%2023.9166C41.6206%2023.6952%2041.8265%2023.5248%2042.1075%2023.4053ZM42.3001%2022.4658C42.3001%2022.6517%2042.3521%2022.7967%2042.4561%2022.9007C42.5624%2023.0047%2042.7029%2023.0567%2042.8777%2023.0567C43.0548%2023.0567%2043.1964%2023.0047%2043.3027%2022.9007C43.4089%2022.7945%2043.462%2022.6484%2043.462%2022.4625C43.462%2022.2877%2043.4089%2022.1482%2043.3027%2022.0442C43.1987%2021.938%2043.0603%2021.8848%2042.8877%2021.8848C42.7084%2021.8848%2042.5657%2021.938%2042.4594%2022.0442C42.3532%2022.1504%2042.3001%2022.291%2042.3001%2022.4658ZM42.2138%2024.5507C42.2138%2024.8074%2042.2791%2025.0077%2042.4096%2025.1515C42.5424%2025.2954%2042.7073%2025.3673%2042.9043%2025.3673C43.0968%2025.3673%2043.2562%2025.2987%2043.3823%2025.1615C43.5085%2025.0221%2043.5716%2024.8218%2043.5716%2024.5606C43.5716%2024.3327%2043.5074%2024.1501%2043.379%2024.0128C43.2507%2023.8734%2043.088%2023.8037%2042.891%2023.8037C42.6631%2023.8037%2042.4926%2023.8823%2042.3798%2024.0394C42.2691%2024.1965%2042.2138%2024.367%2042.2138%2024.5507Z'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='Vector_10'%20d='M39.1%2021.1445C39.5714%2021.1445%2039.9399%2021.3127%2040.2055%2021.6491C40.522%2022.0475%2040.6802%2022.7082%2040.6802%2023.6311C40.6802%2024.5518%2040.5209%2025.2135%2040.2022%2025.6163C39.9388%2025.9483%2039.5714%2026.1143%2039.1%2026.1143C38.6264%2026.1143%2038.2446%2025.9328%2037.9547%2025.5698C37.6647%2025.2047%2037.5198%2024.5551%2037.5198%2023.6211C37.5198%2022.7048%2037.6791%2022.0453%2037.9978%2021.6425C38.2612%2021.3105%2038.6286%2021.1445%2039.1%2021.1445ZM39.1%2021.918C38.9871%2021.918%2038.8864%2021.9546%2038.7979%2022.0276C38.7094%2022.0984%2038.6408%2022.2268%2038.5921%2022.4127C38.5279%2022.6539%2038.4958%2023.0601%2038.4958%2023.6311C38.4958%2024.2021%2038.5246%2024.5949%2038.5821%2024.8096C38.6397%2025.0221%2038.7116%2025.1637%2038.7979%2025.2345C38.8864%2025.3054%2038.9871%2025.3408%2039.1%2025.3408C39.2129%2025.3408%2039.3136%2025.3054%2039.4021%2025.2345C39.4906%2025.1615%2039.5592%2025.032%2039.6079%2024.8461C39.6721%2024.6071%2039.7042%2024.2021%2039.7042%2023.6311C39.7042%2023.0601%2039.6754%2022.6683%2039.6179%2022.4559C39.5603%2022.2412%2039.4873%2022.0984%2039.3988%2022.0276C39.3125%2021.9546%2039.2129%2021.918%2039.1%2021.918Z'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='Vector_11'%20d='M30.9265%2021.166H32.8719C33.257%2021.166%2033.5436%2021.1826%2033.7318%2021.2158C33.9221%2021.2468%2034.0914%2021.3132%2034.2397%2021.415C34.3902%2021.5168%2034.5152%2021.6529%2034.6148%2021.8233C34.7144%2021.9915%2034.7642%2022.1808%2034.7642%2022.391C34.7642%2022.619%2034.7022%2022.8281%2034.5783%2023.0185C34.4566%2023.2088%2034.2906%2023.3516%2034.0803%2023.4467C34.3769%2023.533%2034.6049%2023.6802%2034.7642%2023.8883C34.9236%2024.0963%2035.0032%2024.3409%2035.0032%2024.6219C35.0032%2024.8433%2034.9512%2025.059%2034.8472%2025.2693C34.7454%2025.4773%2034.6049%2025.6444%2034.4256%2025.7706C34.2485%2025.8945%2034.0294%2025.9709%2033.7683%2025.9997C33.6045%2026.0174%2033.2094%2026.0284%2032.5831%2026.0329H30.9265V21.166ZM31.9092%2021.976V23.1015H32.5532C32.9361%2023.1015%2033.174%2023.0959%2033.267%2023.0849C33.4352%2023.0649%2033.5669%2023.0074%2033.662%2022.9122C33.7594%2022.8149%2033.8081%2022.6876%2033.8081%2022.5305C33.8081%2022.38%2033.7661%2022.2582%2033.682%2022.1653C33.6001%2022.0701%2033.4772%2022.0126%2033.3135%2021.9926C33.2161%2021.9816%2032.9361%2021.976%2032.4735%2021.976H31.9092ZM31.9092%2023.9115V25.2129H32.8188C33.1729%2025.2129%2033.3976%2025.2029%2033.4927%2025.183C33.6388%2025.1564%2033.7572%2025.0922%2033.8479%2024.9904C33.9409%2024.8864%2033.9874%2024.7481%2033.9874%2024.5755C33.9874%2024.4294%2033.952%2024.3054%2033.8811%2024.2036C33.8103%2024.1018%2033.7074%2024.0277%2033.5724%2023.9812C33.4396%2023.9347%2033.1497%2023.9115%2032.7026%2023.9115H31.9092Z'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='Vector_12'%20d='M25.4329%2023.6283C25.4329%2023.1326%2025.5071%2022.7165%2025.6553%2022.3801C25.766%2022.1322%2025.9165%2021.9098%2026.1068%2021.7128C26.2994%2021.5158%2026.5096%2021.3697%2026.7376%2021.2746C27.0408%2021.1462%2027.3905%2021.082%2027.7867%2021.082C28.5037%2021.082%2029.077%2021.3045%2029.5063%2021.7493C29.9379%2022.1942%2030.1537%2022.8128%2030.1537%2023.6051C30.1537%2024.3908%2029.9401%2025.006%2029.513%2025.4509C29.0858%2025.8935%2028.5148%2026.1149%2027.7999%2026.1149C27.0762%2026.1149%2026.5008%2025.8946%2026.0736%2025.4542C25.6465%2025.0116%2025.4329%2024.4029%2025.4329%2023.6283ZM26.4455%2023.5951C26.4455%2024.1462%2026.5727%2024.5645%2026.8272%2024.85C27.0817%2025.1333%2027.4049%2025.2749%2027.7966%2025.2749C28.1884%2025.2749%2028.5093%2025.1344%2028.7594%2024.8533C29.0117%2024.57%2029.1378%2024.1462%2029.1378%2023.5818C29.1378%2023.0241%2029.015%2022.608%2028.7693%2022.3336C28.5259%2022.0592%2028.2016%2021.9219%2027.7966%2021.9219C27.3916%2021.9219%2027.0652%2022.0614%2026.8173%2022.3402C26.5694%2022.6169%2026.4455%2023.0352%2026.4455%2023.5951Z'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='Vector_13'%20d='M20.7148%2021.166H22.5109C22.9159%2021.166%2023.2246%2021.197%2023.4371%2021.259C23.7226%2021.3431%2023.9671%2021.4925%2024.1708%2021.7071C24.3744%2021.9218%2024.5293%2022.1852%2024.6355%2022.4973C24.7418%2022.8071%2024.7949%2023.19%2024.7949%2023.6459C24.7949%2024.0465%2024.7451%2024.3918%2024.6455%2024.6817C24.5238%2025.0358%2024.35%2025.3224%2024.1243%2025.5415C23.9539%2025.7075%2023.7237%2025.837%2023.4338%2025.9299C23.2169%2025.9985%2022.9269%2026.0329%2022.564%2026.0329H20.7148V21.166ZM21.6975%2021.9893V25.2129H22.4312C22.7056%2025.2129%2022.9037%2025.1974%2023.0254%2025.1664C23.1848%2025.1265%2023.3165%2025.059%2023.4205%2024.9639C23.5267%2024.8687%2023.613%2024.7127%2023.6794%2024.4958C23.7458%2024.2767%2023.779%2023.979%2023.779%2023.6028C23.779%2023.2265%2023.7458%2022.9377%2023.6794%2022.7363C23.613%2022.5349%2023.5201%2022.3777%2023.4006%2022.2649C23.2811%2022.152%2023.1294%2022.0756%2022.9458%2022.0358C22.8085%2022.0048%2022.5396%2021.9893%2022.139%2021.9893H21.6975Z'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3c/g%3e%3crect%20id='shapes'%20x='20'%20y='9.56453'%20width='42.2335'%20height='6.39901'%20rx='0.358345'%20fill='var(--fill-0,%20%23E9E9EB)'/%3e%3crect%20id='shapes_2'%20x='20'%20y='32.6016'%20width='23.0365'%20height='6.39901'%20rx='0.358345'%20fill='var(--fill-0,%20%23E9E9EB)'/%3e%3crect%20id='shapes_3'%20x='20'%20y='-3.23438'%20width='42.2335'%20height='6.39901'%20rx='0.358345'%20fill='var(--fill-0,%20%23E9E9EB)'/%3e%3c/g%3e%3c/g%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_0_643'%20x1='-15.5588'%20y1='11.6877'%20x2='-15.5588'%20y2='23.7364'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23B1B1B1'/%3e%3cstop%20offset='1'%20stop-color='white'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint1_linear_0_643'%20x1='-4.71245'%20y1='5.19152'%20x2='-1.22969'%20y2='5.33129'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0.0416667'%20stop-color='%23B5B5B5'/%3e%3cstop%20offset='1'%20stop-color='white'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint2_linear_0_643'%20x1='-25.7979'%20y1='5.19087'%20x2='-29.2806'%20y2='5.33064'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0.0416667'%20stop-color='%23B5B5B5'/%3e%3cstop%20offset='1'%20stop-color='white'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint3_linear_0_643'%20x1='-26.4747'%20y1='0.407338'%20x2='-8.40711'%20y2='0.473848'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23E0E0E0'/%3e%3cstop%20offset='1'%20stop-color='white'/%3e%3c/linearGradient%3e%3cclipPath%20id='clip0_0_643'%3e%3crect%20width='96'%20height='64'%20rx='4'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e";
42
- //#endregion
43
- //#region src/modules/id/ageVerification/assets/age-verification-id-scan.svg
44
- var age_verification_id_scan_default = "data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20width='100%25'%20height='100%25'%20overflow='visible'%20viewBox='0%200%2096%2064'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='id'%3e%3crect%20width='96'%20height='64'%20rx='4'%20fill='var(--fill-0,%20%23E5F0FF)'/%3e%3cpath%20id='bg-white'%20d='M9%2011C9%209.34315%2010.3431%208%2012%208H83.9996C85.6564%208%2086.9996%209.34315%2086.9996%2011V51C86.9996%2052.6569%2085.6564%2054%2083.9996%2054H12C10.3432%2054%209%2052.6569%209%2051V11Z'%20fill='var(--fill-0,%20%23C9C9C9)'%20fill-opacity='0.8'/%3e%3cpath%20id='bg'%20d='M10.4336%2011.4297C10.4336%2010.3251%2011.329%209.42969%2012.4336%209.42969L83.1836%209.42969C84.2882%209.42969%2085.1836%2010.3251%2085.1836%2011.4297V50.2864C85.1836%2051.3909%2084.2882%2052.2864%2083.1836%2052.2864L12.4336%2052.2864C11.329%2052.2864%2010.4336%2051.3909%2010.4336%2050.2864L10.4336%2011.4297Z'%20fill='var(--fill-0,%20white)'/%3e%3cpath%20id='Line%202%20(Stroke)'%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M14.4204%2020.3907C14.4206%2019.8405%2014.8668%2019.3945%2015.417%2019.3945L80.1999%2019.3945C80.7504%2019.3945%2081.1966%2019.8408%2081.1966%2020.3912C81.1966%2020.9416%2080.7504%2021.3879%2080.1999%2021.3879L15.417%2021.3879C14.8664%2021.3879%2014.4201%2020.9414%2014.4204%2020.3907Z'%20fill='var(--fill-0,%20%23C9C9C9)'%20fill-opacity='0.5'/%3e%3cpath%20id='shapes'%20d='M46.3135%2046.3066H38.3398V43.3164H46.3135V46.3066ZM62.2598%2040.3262H38.3398V37.3359H62.2598V40.3262ZM56.2803%2034.3457L38.3398%2034.3457V31.3555H56.2803V34.3457ZM56.2803%2028.3652H38.3398V25.375H56.2803V28.3652Z'%20fill='var(--fill-0,%20%23C9C9C9)'%20fill-opacity='0.5'/%3e%3crect%20id='shapes_2'%20x='14.4199'%20y='12.418'%20width='30.8967'%20height='3.98667'%20rx='1'%20fill='var(--fill-0,%20%23C9C9C9)'%20fill-opacity='0.5'/%3e%3crect%20id='shapes_3'%20x='74.833'%20y='12.4902'%20width='5.98'%20height='3.93138'%20fill='var(--fill-0,%20%23EAF0F6)'/%3e%3cg%20id='img-lef'%3e%3crect%20id='bg_2'%20x='14.5'%20y='23.5'%20width='21'%20height='24'%20rx='2'%20fill='var(--fill-0,%20%23006AFF)'/%3e%3cpath%20id='neck'%20d='M21.668%2040.4193C21.6578%2041.1962%2020.3094%2041.4448%2019.4033%2042.3191C20.9799%2043.4551%2023.2584%2044.2192%2024.8349%2044.2192C26.6695%2044.2193%2028.7902%2043.4551%2030.3667%2042.3191C29.4606%2041.4448%2028.0296%2041.1975%2028.0105%2040.4193C28.0105%2040.124%2028.0115%2037.2468%2028.0129%2036.9514C28.0129%2031.9788%2021.4785%2029.0203%2021.6594%2037.0327C21.6628%2038.1615%2021.668%2039.2905%2021.668%2040.4193Z'%20fill='url(%23paint0_linear_0_546)'/%3e%3cpath%20id='tshirt'%20d='M28.9864%2041.3224C28.9864%2041.3224%2033.9028%2042.9122%2034.8516%2044.6261C35.0635%2045.0089%2035.2528%2045.5041%2035.4229%2046.0412C35.1866%2046.8824%2034.4168%2047.5002%2033.5%2047.5002H16.5C15.3955%2047.5002%2014.5001%2046.6047%2014.5%2045.5002V43.9797C16.2627%2042.5328%2020.7071%2041.3224%2020.7071%2041.3224C20.7071%2042.3611%2023.2872%2043.9872%2024.8467%2044.0138C27.0213%2044.0138%2028.9864%2042.3617%2028.9864%2041.3224Z'%20fill='var(--fill-0,%20%23CECECE)'/%3e%3cpath%20id='shadow'%20d='M21.6689%2037.2958C24.0023%2037.047%2026.1992%2038.9562%2026.1992%2038.9562C26.1992%2038.9562%2025.7637%2041.3043%2021.6689%2040.6219V37.2958Z'%20fill='var(--fill-0,%20%23CDCDCD)'/%3e%3cpath%20id='ear'%20d='M30.4589%2033.2935C30.5836%2032.8283%2030.3075%2032.3501%2029.8422%2032.2254L29.7507%2032.2009C29.3228%2032.0863%2028.877%2032.3105%2028.7141%2032.7224L28.0175%2034.4827C27.8101%2035.0069%2028.1471%2035.5872%2028.7052%2035.6669L29.0163%2035.7113C29.4531%2035.7737%2029.8677%2035.4999%2029.9819%2035.0737L30.4589%2033.2935Z'%20fill='url(%23paint1_linear_0_546)'/%3e%3cpath%20id='ear_2'%20d='M19.5411%2033.2935C19.4165%2032.8283%2019.6926%2032.3501%2020.1578%2032.2255C20.623%2032.1008%2021.1012%2032.3769%2021.2259%2032.8421L21.6773%2034.5269C21.802%2034.9921%2021.5259%2035.4703%2021.0607%2035.595C20.5954%2035.7196%2020.1172%2035.4435%2019.9926%2034.9783L19.5411%2033.2935Z'%20fill='url(%23paint2_linear_0_546)'/%3e%3cpath%20id='head'%20d='M29.7961%2033.0854C29.7961%2036.9044%2027.1022%2040.0004%2024.9996%2040.0004C22.6999%2040.0004%2020.2031%2036.9044%2020.2031%2033.0854C20.2031%2029.6827%2020.4677%2026.0469%2024.9996%2026.0469C29.5316%2026.0469%2029.7961%2029.6041%2029.7961%2033.0854Z'%20fill='url(%23paint3_linear_0_546)'/%3e%3c/g%3e%3cg%20id='img-bot-rig'%3e%3cpath%20id='Combined%20Shape'%20d='M74.805%2043.3724C74.7998%2043.7637%2074.3448%2043.9652%2073.8847%2044.4056C74.6853%2044.9778%2075.7662%2045.2864%2076.5668%2045.2864C77.4985%2045.2865%2078.2993%2044.9778%2079.0999%2044.4057C78.6398%2043.9653%2078.1893%2043.7644%2078.1796%2043.3724C78.1796%2043.2237%2078.1801%2041.7744%2078.1808%2041.6257C78.1808%2039.121%2074.7087%2037.6308%2074.8006%2041.6666C74.8023%2042.2352%2074.805%2042.8038%2074.805%2043.3724Z'%20fill='url(%23paint4_linear_0_546)'/%3e%3cpath%20id='Path%2048'%20d='M74.7537%2040.9329C76.0967%2040.7449%2077.3612%2042.1874%2077.3612%2042.1874C77.3612%2042.1874%2077.1105%2043.9615%2074.7537%2043.4459V40.9329Z'%20fill='var(--fill-0,%20%23F1F1F1)'/%3e%3cpath%20id='Combined%20Shape_2'%20d='M81.7073%2045.2883C82.14%2046.0951%2082.1941%2046.804%2082.1941%2046.804H70.7324C70.7324%2046.804%2070.8444%2046.0949%2071.277%2045.2883C71.7097%2044.4818%2074.7538%2043.5391%2074.7538%2043.5391C74.7538%2044.028%2075.7809%2044.4011%2076.4922%2044.4137C77.484%2044.4137%2078.2305%2044.0283%2078.2305%2043.5391C78.2305%2043.5391%2081.2745%2044.4815%2081.7073%2045.2883Z'%20fill='var(--fill-0,%20%23E1E1E1)'/%3e%3cpath%20id='Ellipse%20148'%20d='M79.3958%2039.3396C79.3958%2041.2491%2077.9264%2042.7971%2076.7795%2042.7971C75.5252%2042.7971%2074.1633%2041.2491%2074.1633%2039.3396C74.1633%2037.6382%2074.3076%2035.8203%2076.7795%2035.8203C79.2515%2035.8203%2079.3958%2037.5989%2079.3958%2039.3396Z'%20fill='url(%23paint5_linear_0_546)'/%3e%3c/g%3e%3c/g%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_0_546'%20x1='24.4155'%20y1='37.2573'%20x2='24.4155'%20y2='41.7755'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23B1B1B1'/%3e%3cstop%20offset='1'%20stop-color='white'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint1_linear_0_546'%20x1='28.4828'%20y1='34.8213'%20x2='29.7888'%20y2='34.8737'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0.0416667'%20stop-color='%23B5B5B5'/%3e%3cstop%20offset='1'%20stop-color='white'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint2_linear_0_546'%20x1='20.5758'%20y1='34.8211'%20x2='19.2698'%20y2='34.8735'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20offset='0.0416667'%20stop-color='%23B5B5B5'/%3e%3cstop%20offset='1'%20stop-color='white'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint3_linear_0_546'%20x1='20.322'%20y1='33.028'%20x2='27.0973'%20y2='33.0529'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23E0E0E0'/%3e%3cstop%20offset='1'%20stop-color='white'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint4_linear_0_546'%20x1='76.277'%20y1='41.7261'%20x2='76.277'%20y2='44.002'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23EDEDED'/%3e%3cstop%20offset='1'%20stop-color='white'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint5_linear_0_546'%20x1='74.4849'%20y1='39.2761'%20x2='78.1805'%20y2='39.2909'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23E0E0E0'/%3e%3cstop%20offset='1'%20stop-color='white'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e";
45
- //#endregion
46
- //#region src/modules/id/ageVerification/assets/age-verification-privacy.svg
47
- var age_verification_privacy_default = "data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20width='100%25'%20height='100%25'%20overflow='visible'%20viewBox='0%200%2096%2064'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='id'%3e%3crect%20width='96'%20height='64'%20rx='4'%20fill='var(--fill-0,%20%23E5F0FF)'/%3e%3cpath%20id='bg-white'%20d='M9%2012C9%2010.3431%2010.3431%209%2012%209H83.9996C85.6564%209%2086.9996%2010.3431%2086.9996%2012V37H9V12Z'%20fill='var(--fill-0,%20%23C9C9C9)'%20fill-opacity='0.8'/%3e%3cpath%20id='bg'%20d='M10.4336%2012.4297C10.4336%2011.3251%2011.329%2010.4297%2012.4336%2010.4297L83.1836%2010.4297C84.2882%2010.4297%2085.1836%2011.3251%2085.1836%2012.4297V37.0005H10.4336L10.4336%2012.4297Z'%20fill='var(--fill-0,%20white)'/%3e%3cpath%20id='Line%202%20(Stroke)'%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M14.4204%2021.3907C14.4206%2020.8405%2014.8668%2020.3945%2015.417%2020.3945L80.1999%2020.3945C80.7504%2020.3945%2081.1966%2020.8408%2081.1966%2021.3912C81.1966%2021.9416%2080.7504%2022.3879%2080.1999%2022.3879L15.417%2022.3879C14.8664%2022.3879%2014.4201%2021.9414%2014.4204%2021.3907Z'%20fill='var(--fill-0,%20%23C9C9C9)'%20fill-opacity='0.5'/%3e%3cpath%20id='shapes'%20d='M56.2803%2035.3457L38.3398%2035.3457V32.3555L56.2803%2032.3555V35.3457ZM56.2803%2029.3652H38.3398V26.375H56.2803V29.3652Z'%20fill='var(--fill-0,%20%23C9C9C9)'%20fill-opacity='0.5'/%3e%3crect%20id='shapes_2'%20x='14.4199'%20y='13.418'%20width='30.8967'%20height='3.98667'%20rx='1'%20fill='var(--fill-0,%20%23C9C9C9)'%20fill-opacity='0.5'/%3e%3crect%20id='shapes_3'%20x='74.833'%20y='13.4902'%20width='5.98'%20height='3.93138'%20fill='var(--fill-0,%20%23EAF0F6)'/%3e%3crect%20id='Rectangle%2039983'%20x='18'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3crect%20id='Rectangle%2039995'%20x='13'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3crect%20id='Rectangle%2039984'%20x='23'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3crect%20id='Rectangle%2039985'%20x='28'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3crect%20id='Rectangle%2039986'%20x='33'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3crect%20id='Rectangle%2039987'%20x='38'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3crect%20id='Rectangle%2039988'%20x='43'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3crect%20id='Rectangle%2039989'%20x='49'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3crect%20id='Rectangle%2039990'%20x='54'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3crect%20id='Rectangle%2039991'%20x='59'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3crect%20id='Rectangle%2039992'%20x='64'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3crect%20id='Rectangle%2039993'%20x='69'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3crect%20id='Rectangle%2039994'%20x='74'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3crect%20id='Rectangle%2039996'%20x='79'%20y='37'%20width='3'%20height='15'%20fill='var(--fill-0,%20white)'/%3e%3c/g%3e%3c/svg%3e";
48
- //#endregion
49
- //#region src/modules/id/ageVerification/ageVerification.tsx
50
- var ageVerificationDefaults = {
51
- "id.ageVerification.dob": age_verification_dob_default,
52
- "id.ageVerification.scan": age_verification_id_scan_default,
53
- "id.ageVerification.privacy": age_verification_privacy_default
54
- };
55
- var steps = [
56
- {
57
- textKey: "idv2.ageVerificationPage.showYourIdAndScanIt",
58
- assetKey: "id.ageVerification.scan"
59
- },
60
- {
61
- textKey: "idv2.ageVerificationPage.weOnlyUseTheDateOfBirthInformation",
62
- assetKey: "id.ageVerification.dob"
63
- },
64
- {
65
- textKey: "idv2.ageVerificationPage.TheRestOfYourInformationWillBeDeletedToEnsureYourPrivacy",
66
- assetKey: "id.ageVerification.privacy"
67
- }
68
- ];
69
- var AgeVerification = ({ manager }) => {
70
- const { t } = useTranslation();
71
- const [isLoading, setIsLoading] = d(false);
72
- const handleContinue = () => {
73
- setIsLoading(true);
74
- manager.nextStep();
75
- };
76
- return /* @__PURE__ */ u(Page, {
77
- className: "IncodeAgeVerificationPage",
78
- title: t("idv2.ageVerificationPage.ageVerification"),
79
- titleId: "id-age-verification-heading",
80
- subtitle: t("idv2.ageVerificationPage.weNeedToScanYourIDToKnowYourAge"),
81
- "data-testid": "age-verification-container",
82
- children: /* @__PURE__ */ u("div", {
83
- class: "IncodeAgeVerificationContent",
84
- children: [/* @__PURE__ */ u("ul", {
85
- class: "IncodeAgeVerificationList",
86
- "aria-labelledby": "id-age-verification-heading",
87
- children: steps.map(({ textKey, assetKey }) => /* @__PURE__ */ u("li", {
88
- class: "IncodeAgeVerificationItem",
89
- children: [/* @__PURE__ */ u("div", {
90
- class: "IncodeAgeVerificationIcon",
91
- children: /* @__PURE__ */ u(Asset, {
92
- name: assetKey,
93
- default: ageVerificationDefaults[assetKey]
94
- })
95
- }), /* @__PURE__ */ u("p", {
96
- class: "IncodeAgeVerificationText",
97
- children: t(textKey)
98
- })]
99
- }, textKey))
100
- }), /* @__PURE__ */ u(Button, {
101
- class: "IncodeAgeVerificationButton",
102
- onClick: handleContinue,
103
- isLoading,
104
- "data-testid": "age-verification-continue-button",
105
- children: t("idv2.ageVerificationPage.Continue")
106
- })]
107
- })
108
- });
109
- };
110
- //#endregion
111
39
  //#region src/modules/id/idFlipCard.tsx
112
40
  var TERMINAL_ANIMATION_NAMES = new Set(["incodeIdFlipCardRotate", "incodeIdFlipCardReducedMotionFadeIn"]);
113
41
  var HOLD_AFTER_FLIP_MS = 1250;
@@ -251,1035 +179,24 @@ var IdFlipTransition = ({ manager, state }) => {
251
179
  });
252
180
  };
253
181
  //#endregion
254
- //#region src/modules/id/digitalIdUpload/useFilePreviewUrl.ts
255
- /**
256
- * Produces a stable object-URL for the given file and revokes it on cleanup
257
- * (or whenever the file changes). Returns `null` when no file is provided.
258
- *
259
- * Centralizes the `URL.createObjectURL` / `URL.revokeObjectURL` lifecycle
260
- * that every preview screen in the digital ID upload flow needs.
261
- */
262
- function useFilePreviewUrl(file) {
263
- const fileUrl = T(() => {
264
- if (!file) return null;
265
- return URL.createObjectURL(file);
266
- }, [file]);
267
- y(() => {
268
- return () => {
269
- if (fileUrl) URL.revokeObjectURL(fileUrl);
270
- };
271
- }, [fileUrl]);
272
- return fileUrl;
273
- }
274
- //#endregion
275
- //#region src/modules/id/digitalIdUpload/analyzingScreen.tsx
276
- var AnalyzingScreen = ({ state }) => {
277
- const { t } = useTranslation();
278
- const fileUrl = useFilePreviewUrl(state.file);
279
- const isUploading = state.phase === "uploading";
280
- const statusLabel = isUploading ? t("idv2.digitalIdUpload.analyzing") : t("idv2.digitalIdUpload.successfullyProcessed");
281
- return /* @__PURE__ */ u(Page, {
282
- title: statusLabel,
283
- titleId: "digitalIdUploadStatusTitle",
284
- subtitle: isUploading ? void 0 : t("idv2.digitalIdUpload.screenDescription"),
285
- className: "IncodeDigitalIdUploadPage",
286
- "data-testid": "digital-id-upload-analyzing",
287
- children: [
288
- /* @__PURE__ */ u("div", {
289
- role: "status",
290
- "aria-live": "polite",
291
- class: "IncodeSrOnly",
292
- children: statusLabel
293
- }),
294
- /* @__PURE__ */ u("div", {
295
- class: "IncodeDigitalIdUploadPreviewBody",
296
- "aria-busy": isUploading,
297
- children: [
298
- /* @__PURE__ */ u("div", {
299
- class: "IncodeDigitalIdUploadPreStatusZone",
300
- children: isUploading ? /* @__PURE__ */ u(ProgressBar, {
301
- progress: state.uploadProgress,
302
- labelledById: "digitalIdUploadStatusTitle",
303
- className: "IncodeDigitalIdUploadProgressBar"
304
- }) : null
305
- }),
306
- /* @__PURE__ */ u("div", {
307
- class: "IncodeDigitalIdUploadDocumentPreview",
308
- "aria-hidden": "true",
309
- children: [fileUrl ? /* @__PURE__ */ u(PdfViewer, {
310
- url: fileUrl,
311
- mode: "thumbnail",
312
- className: "IncodeDigitalIdUploadDocumentPreviewPdf"
313
- }) : null, /* @__PURE__ */ u("div", {
314
- class: "IncodeDigitalIdUploadLaserOverlay",
315
- children: /* @__PURE__ */ u(AnimatedAsset, {
316
- name: "id.processing",
317
- orientation: "vertical",
318
- loop: true,
319
- autoStop: true
320
- })
321
- })]
322
- }),
323
- /* @__PURE__ */ u("div", {
324
- class: "IncodeDigitalIdUploadPostCaptionZone",
325
- "aria-hidden": "true"
326
- })
327
- ]
328
- }),
329
- /* @__PURE__ */ u("div", {
330
- class: "IncodeDigitalIdUploadFooter",
331
- "aria-hidden": "true"
332
- })
333
- ]
334
- });
335
- };
336
- //#endregion
337
- //#region src/modules/id/digitalIdUpload/errorScreen.tsx
338
- var TERMINAL_REASONS = new Set(["DIGITAL_ID_REQUESTED_BUT_OTHER_PROVIDED", "ID_TYPE_UNACCEPTABLE"]);
339
- var KEY_BY_FAIL_REASON = {
340
- DIGITAL_ID_REQUESTED_BUT_OTHER_PROVIDED: "idv2.digitalIdUpload.errorScreen.thisIdMustBeScanned",
341
- ID_TYPE_UNACCEPTABLE: "idv2.digitalIdUpload.wrongDocumentTypeScreen.errorTitle",
342
- FILE_CHANGED_ERROR: "idv2.digitalIdUpload.unknownDocumentTypeScreen.errorTitle",
343
- INVALID_FILE_TYPE: "idv2.digitalIdUpload.unknownDocumentTypeScreen.errorTitle",
344
- NETWORK_ERROR: "idv2.digitalIdUpload.unknownDocumentTypeScreen.errorTitle",
345
- GENERIC: "idv2.digitalIdUpload.unknownDocumentTypeScreen.errorTitle"
346
- };
347
- var ErrorScreen$1 = ({ manager, state }) => {
348
- const { t } = useTranslation();
349
- const failReason = state.failReason ?? "GENERIC";
350
- const isTerminal = state.phase === "exhausted" || TERMINAL_REASONS.has(failReason);
351
- const fileUrl = useFilePreviewUrl(state.file);
352
- return /* @__PURE__ */ u(Page, {
353
- title: t(KEY_BY_FAIL_REASON[failReason] ?? KEY_BY_FAIL_REASON.GENERIC),
354
- subtitle: t("idv2.digitalIdUpload.errorScreen.pleaseTryScanning"),
355
- className: "IncodeDigitalIdUploadPage",
356
- "data-testid": "digital-id-upload-error",
357
- children: [/* @__PURE__ */ u("div", {
358
- class: "IncodeDigitalIdUploadBody",
359
- children: [
360
- /* @__PURE__ */ u("div", {
361
- class: "IncodeDigitalIdUploadErrorIcon",
362
- "aria-hidden": "true",
363
- children: /* @__PURE__ */ u(ErrorIcon, { size: 40 })
364
- }),
365
- fileUrl ? /* @__PURE__ */ u("div", {
366
- class: "IncodeDigitalIdUploadErrorPreview",
367
- children: /* @__PURE__ */ u(PdfViewer, {
368
- url: fileUrl,
369
- mode: "thumbnail",
370
- "aria-label": t("idv2.digitalIdUpload.errorScreen.previewAriaLabel"),
371
- className: "IncodeDigitalIdUploadPreviewPdf"
372
- })
373
- }) : null,
374
- !isTerminal && state.attemptsRemaining > 0 ? /* @__PURE__ */ u("p", {
375
- class: "IncodeDigitalIdUploadAttempts",
376
- children: t("common.attemptsRemaining", { count: state.attemptsRemaining })
377
- }) : null
378
- ]
379
- }), /* @__PURE__ */ u("div", {
380
- class: "IncodeDigitalIdUploadFooter",
381
- children: [!isTerminal ? /* @__PURE__ */ u(Button, {
382
- onClick: () => manager.digitalUploadRetry(),
383
- children: t("common.tryAgain")
384
- }) : null, /* @__PURE__ */ u(Button, {
385
- variant: isTerminal ? "primary" : "secondary",
386
- onClick: () => manager.digitalUploadScanInstead(),
387
- children: t("idv2.digitalIdUpload.errorScreen.scanId")
388
- })]
389
- })]
390
- });
391
- };
392
- //#endregion
393
- //#region src/modules/id/digitalIdUpload/fileReviewScreen.tsx
394
- var FileReviewScreen = ({ manager, state }) => {
395
- const { t } = useTranslation();
396
- const fileInputRef = A(null);
397
- const fileUrl = useFilePreviewUrl(state.file);
398
- const onFileSelect = (event) => {
399
- const file = event.currentTarget.files?.[0];
400
- if (!file) return;
401
- manager.digitalUploadPickFile(file);
402
- };
403
- return /* @__PURE__ */ u(Page, {
404
- title: t("idv2.digitalIdUpload.reviewScreen.title"),
405
- subtitle: t("idv2.digitalIdUpload.reviewScreen.description"),
406
- className: "IncodeDigitalIdUploadPage",
407
- "data-testid": "digital-id-upload-review",
408
- children: [/* @__PURE__ */ u("div", {
409
- class: "IncodeDigitalIdUploadPreviewBody",
410
- children: [
411
- /* @__PURE__ */ u("input", {
412
- ref: fileInputRef,
413
- type: "file",
414
- accept: "application/pdf",
415
- onChange: onFileSelect,
416
- class: "IncodeDigitalIdUploadHiddenInput",
417
- tabIndex: -1,
418
- "aria-hidden": "true"
419
- }),
420
- /* @__PURE__ */ u("div", {
421
- class: "IncodeDigitalIdUploadPreStatusZone",
422
- "aria-hidden": "true"
423
- }),
424
- /* @__PURE__ */ u("div", {
425
- class: "IncodeDigitalIdUploadPreviewCard",
426
- children: fileUrl ? /* @__PURE__ */ u(PdfViewer, {
427
- url: fileUrl,
428
- mode: "thumbnail",
429
- "aria-label": t("idv2.digitalIdUpload.reviewScreen.previewAriaLabel"),
430
- className: "IncodeDigitalIdUploadPreviewPdf"
431
- }) : null
432
- }),
433
- /* @__PURE__ */ u("div", {
434
- class: "IncodeDigitalIdUploadPostCaptionZone",
435
- children: state.fileName ? /* @__PURE__ */ u("p", {
436
- class: "IncodeDigitalIdUploadFileName",
437
- children: state.fileName
438
- }) : null
439
- })
440
- ]
441
- }), /* @__PURE__ */ u("div", {
442
- class: "IncodeDigitalIdUploadFooter",
443
- children: [/* @__PURE__ */ u(Button, {
444
- onClick: () => manager.digitalUploadConfirm(),
445
- children: t("idv2.digitalIdUpload.reviewScreen.continue")
446
- }), /* @__PURE__ */ u(Button, {
447
- variant: "secondary",
448
- "aria-haspopup": "dialog",
449
- onClick: () => {
450
- manager.digitalUploadReplace();
451
- fileInputRef.current?.click();
452
- },
453
- children: t("idv2.digitalIdUpload.reviewScreen.replaceButton")
454
- })]
455
- })]
456
- });
457
- };
458
- //#endregion
459
- //#region src/modules/id/assets/upload-id-screen-image.svg?react
460
- var SvgUploadIdScreenImage = (props) => /* @__PURE__ */ u("svg", {
461
- viewBox: "0 0 191 266",
462
- fill: "none",
463
- xmlns: "http://www.w3.org/2000/svg",
464
- "aria-hidden": "true",
465
- focusable: "false",
466
- className: "IncodeUploadIdScreenImage",
467
- ...props,
468
- children: [
469
- /* @__PURE__ */ u("title", { children: "Upload ID Screen Image" }),
470
- /* @__PURE__ */ u("path", {
471
- d: "M17.5 11.1724C17.5 7.21119 20.7112 4 24.6724 4H166.328C170.289 4 173.5 7.2112 173.5 11.1724V228.138C173.5 232.099 170.289 235.31 166.328 235.31H24.6724C20.7112 235.31 17.5 232.099 17.5 228.138V11.1724Z",
472
- fill: "var(--digital-id-illustration-surface, #FFFFFF)"
473
- }),
474
- /* @__PURE__ */ u("rect", {
475
- x: 17.5,
476
- y: 16.5518,
477
- width: 156,
478
- height: 10.7586,
479
- fill: "var(--digital-id-illustration-strip, #EBECEF)"
480
- }),
481
- /* @__PURE__ */ u("rect", {
482
- x: 98.1895,
483
- y: 35.3799,
484
- width: 68.1379,
485
- height: 83.3793,
486
- rx: 7.17241,
487
- fill: "var(--digital-id-illustration-photo, #F0F6FF)"
488
- }),
489
- /* @__PURE__ */ u("path", {
490
- fillRule: "evenodd",
491
- clipRule: "evenodd",
492
- d: "M124.391 67.5897C124.391 68.725 123.469 69.6497 122.331 69.6497H114.953C113.818 69.6497 112.893 68.725 112.893 67.5897V60.2117C112.893 59.074 113.818 58.1518 114.953 58.1518H122.331C123.469 58.1518 124.391 59.074 124.391 60.2117V67.5897ZM122.331 53.3105H114.953C111.148 53.3105 108.052 56.4065 108.052 60.2117V67.5897C108.052 71.3949 111.148 74.4909 114.953 74.4909H122.331C126.136 74.4909 129.232 71.3949 129.232 67.5897V60.2117C129.232 56.4065 126.136 53.3105 122.331 53.3105Z",
493
- fill: "var(--digital-id-illustration-accent, var(--icon-brand-500-static, #006AFF))"
494
- }),
495
- /* @__PURE__ */ u("path", {
496
- fillRule: "evenodd",
497
- clipRule: "evenodd",
498
- d: "M118.643 61.4951C117.307 61.4951 116.223 62.5941 116.223 63.9303C116.223 65.2664 117.307 66.3509 118.643 66.3509C119.979 66.3509 121.064 65.2664 121.064 63.9303V63.9012C121.064 62.565 119.979 61.4951 118.643 61.4951Z",
499
- fill: "var(--digital-id-illustration-accent, var(--icon-brand-500-static, #006AFF))"
500
- }),
501
- /* @__PURE__ */ u("path", {
502
- fillRule: "evenodd",
503
- clipRule: "evenodd",
504
- d: "M118.643 88.7246C117.307 88.7246 116.223 89.8236 116.223 91.1597C116.223 92.4959 117.307 93.5804 118.643 93.5804C119.979 93.5804 121.064 92.4959 121.064 91.1597V91.1307C121.064 89.7945 119.979 88.7246 118.643 88.7246Z",
505
- fill: "var(--digital-id-illustration-accent, var(--icon-brand-500-static, #006AFF))"
506
- }),
507
- /* @__PURE__ */ u("path", {
508
- fillRule: "evenodd",
509
- clipRule: "evenodd",
510
- d: "M124.391 94.8222C124.391 95.9574 123.469 96.8821 122.331 96.8821H114.953C113.818 96.8821 112.893 95.9574 112.893 94.8222V87.4441C112.893 86.3064 113.818 85.3842 114.953 85.3842H122.331C123.469 85.3842 124.391 86.3064 124.391 87.4441V94.8222ZM122.331 80.543H114.953C111.148 80.543 108.052 83.6389 108.052 87.4441V94.8222C108.052 98.6274 111.148 101.723 114.953 101.723H122.331C126.136 101.723 129.232 98.6274 129.232 94.8222V87.4441C129.232 83.6389 126.136 80.543 122.331 80.543Z",
511
- fill: "var(--digital-id-illustration-accent, var(--icon-brand-500-static, #006AFF))"
512
- }),
513
- /* @__PURE__ */ u("path", {
514
- fillRule: "evenodd",
515
- clipRule: "evenodd",
516
- d: "M151.623 94.8222C151.623 95.9574 150.701 96.8821 149.563 96.8821H142.185C141.05 96.8821 140.125 95.9574 140.125 94.8222V87.4441C140.125 86.3064 141.05 85.3842 142.185 85.3842H149.563C150.701 85.3842 151.623 86.3064 151.623 87.4441V94.8222ZM149.563 80.543H142.185C138.38 80.543 135.284 83.6389 135.284 87.4441V94.8222C135.284 98.6274 138.38 101.723 142.185 101.723H149.563C153.369 101.723 156.465 98.6274 156.465 94.8222V87.4441C156.465 83.6389 153.369 80.543 149.563 80.543Z",
517
- fill: "var(--digital-id-illustration-accent, var(--icon-brand-500-static, #006AFF))"
518
- }),
519
- /* @__PURE__ */ u("path", {
520
- fillRule: "evenodd",
521
- clipRule: "evenodd",
522
- d: "M145.876 88.6826C144.54 88.6826 143.455 89.7671 143.455 91.1032V91.1299C143.455 92.466 144.54 93.5359 145.876 93.5359C147.212 93.5359 148.296 92.4394 148.296 91.1032C148.296 89.7671 147.212 88.6826 145.876 88.6826Z",
523
- fill: "var(--digital-id-illustration-accent, var(--icon-brand-500-static, #006AFF))"
524
- }),
525
- /* @__PURE__ */ u("path", {
526
- fillRule: "evenodd",
527
- clipRule: "evenodd",
528
- d: "M137.705 58.18C139.041 58.18 140.125 57.0955 140.125 55.7594V55.7303C140.125 54.3941 139.041 53.3242 137.705 53.3242C136.369 53.3242 135.284 54.4232 135.284 55.7594C135.284 57.0955 136.369 58.18 137.705 58.18Z",
529
- fill: "var(--digital-id-illustration-accent, var(--icon-brand-500-static, #006AFF))"
530
- }),
531
- /* @__PURE__ */ u("path", {
532
- fillRule: "evenodd",
533
- clipRule: "evenodd",
534
- d: "M150.487 53.3105H145.876C144.537 53.3105 143.455 54.395 143.455 55.7312C143.455 57.0673 144.537 58.1518 145.876 58.1518H150.487C151.114 58.1518 151.625 58.6625 151.625 59.2919V63.9007C151.625 65.2369 152.707 66.3213 154.045 66.3213C155.381 66.3213 156.466 65.2369 156.466 63.9007V59.2919C156.466 55.9926 153.784 53.3105 150.487 53.3105Z",
535
- fill: "var(--digital-id-illustration-accent, var(--icon-brand-500-static, #006AFF))"
536
- }),
537
- /* @__PURE__ */ u("path", {
538
- fillRule: "evenodd",
539
- clipRule: "evenodd",
540
- d: "M154.045 69.6514H145.876C144.54 69.6514 143.455 70.7358 143.455 72.072C143.455 73.4081 144.54 74.4925 145.876 74.4925H154.045C155.381 74.4925 156.466 73.4081 156.466 72.072C156.466 70.7358 155.381 69.6514 154.045 69.6514Z",
541
- fill: "var(--digital-id-illustration-accent, var(--icon-brand-500-static, #006AFF))"
542
- }),
543
- /* @__PURE__ */ u("path", {
544
- fillRule: "evenodd",
545
- clipRule: "evenodd",
546
- d: "M137.705 74.4922C139.041 74.4922 140.125 73.4078 140.125 72.0716V67.4604C140.125 66.8334 140.636 66.3227 141.266 66.3227H145.874C147.211 66.3227 148.295 65.2382 148.295 63.9021C148.295 62.5659 147.211 61.4814 145.874 61.4814H141.266C137.966 61.4814 135.284 64.1635 135.284 67.4604V72.0716C135.284 73.4078 136.369 74.4922 137.705 74.4922Z",
547
- fill: "var(--digital-id-illustration-accent, var(--icon-brand-500-static, #006AFF))"
548
- }),
549
- /* @__PURE__ */ u("rect", {
550
- x: 29.1553,
551
- y: 134,
552
- width: 54.6897,
553
- height: 10.7586,
554
- rx: 3.58621,
555
- fill: "var(--digital-id-illustration-strip, #EBECEF)"
556
- }),
557
- /* @__PURE__ */ u("rect", {
558
- x: 29.1553,
559
- y: 152.828,
560
- width: 54.6897,
561
- height: 10.7586,
562
- rx: 3.58621,
563
- fill: "var(--digital-id-illustration-strip, #EBECEF)"
564
- }),
565
- /* @__PURE__ */ u("rect", {
566
- x: 29.1553,
567
- y: 171.655,
568
- width: 72.6207,
569
- height: 10.7586,
570
- rx: 3.58621,
571
- fill: "var(--digital-id-illustration-strip, #EBECEF)"
572
- }),
573
- /* @__PURE__ */ u("path", {
574
- d: "M24.6729 4.44824H166.327C170.041 4.44824 173.052 7.45921 173.052 11.1729V228.138C173.052 231.851 170.041 234.862 166.327 234.862H24.6729C20.9592 234.862 17.9482 231.851 17.9482 228.138V11.1729C17.9482 7.45921 20.9592 4.44824 24.6729 4.44824Z",
575
- stroke: "var(--digital-id-illustration-border, #EBECEF)",
576
- strokeWidth: .896552
577
- }),
578
- /* @__PURE__ */ u("rect", {
579
- x: 24.6729,
580
- y: 35.8066,
581
- width: 68.1379,
582
- height: 82.9505,
583
- rx: 4.93753,
584
- fill: "var(--digital-id-illustration-photo, #F0F6FF)"
585
- }),
586
- /* @__PURE__ */ u("path", {
587
- d: "M49.36 91.1735V91.2999C49.3251 93.9726 47.0753 95.9823 42.6104 97.3291C47.9904 101.237 53.3707 104.364 58.7507 104.364C64.1307 104.364 69.5111 101.237 74.8911 97.3291C70.4565 95.9808 68.2066 93.968 68.1415 91.2908C68.1415 90.2747 68.145 80.3761 68.1497 79.36C68.4704 79.4052 68.4432 79.3765 68.1497 79.295C68.1585 75.9478 68.1729 80.3294 68.1928 75.7552C68.2128 71.181 49.0493 67.0886 49.3306 79.6487C49.3344 80.9294 49.3421 89.7232 49.36 91.1735Z",
588
- fill: "var(--digital-id-illustration-face-highlight, #E0E0E0)"
589
- }),
590
- /* @__PURE__ */ u("path", {
591
- d: "M92.8103 106.416C92.8103 108.838 92.8103 111.556 92.8103 113.823C92.8103 116.55 90.5997 118.759 87.8728 118.759H29.6104C26.8835 118.759 24.6729 116.55 24.6729 113.823C24.6729 111.669 24.6729 109.075 24.6729 106.609C27.8413 100.94 46.2752 95.6817 46.2752 95.6817C47.9856 98.7716 53.0062 101.59 58.1454 101.716C63.7221 101.853 69.4385 99.0337 71.2165 95.6797C71.2165 95.6797 89.6412 100.745 92.8103 106.416Z",
592
- fill: "var(--digital-id-illustration-accent, var(--icon-brand-500-static, #006AFF))"
593
- }),
594
- /* @__PURE__ */ u("path", {
595
- d: "M49.1074 85.037C56.9841 84.2188 64.4004 87.6292 64.4004 87.6292C64.4004 87.6292 62.9302 95.3516 49.1074 93.1072V85.037Z",
596
- fill: "var(--digital-id-illustration-face-shadow, #CDCDCD)"
597
- }),
598
- /* @__PURE__ */ u("path", {
599
- d: "M42.6488 68.8767C43.699 67.1248 45.009 68.3295 45.5328 69.1509L46.2644 76.9402C46.2387 77.6181 45.8326 78.0487 44.7734 78.1827C43.4493 78.3502 42.5746 74.7442 42.2696 73.3982C41.9645 72.0521 41.336 71.0665 42.6488 68.8767Z",
600
- fill: "var(--digital-id-illustration-mask-shadow, #D0D0D0)"
601
- }),
602
- /* @__PURE__ */ u("path", {
603
- d: "M74.3552 69.3252C73.3216 67.5635 72.0003 68.7558 71.4688 69.5721L70.6635 77.3542C70.6827 78.0322 71.0848 78.4667 72.1427 78.6107C73.4651 78.7907 74.3739 75.1932 74.6917 73.8501C75.0094 72.507 75.6472 71.5273 74.3552 69.3252Z",
604
- fill: "var(--digital-id-illustration-mask-shadow, #D0D0D0)"
605
- }),
606
- /* @__PURE__ */ u("path", {
607
- d: "M73.3109 70.6918C73.3109 81.9566 65.1557 91.0886 58.7907 91.0886C51.829 91.0886 44.2705 81.9566 44.2705 70.6918C44.2705 60.6551 45.0714 49.9307 58.7907 49.9307C72.51 49.9307 73.3109 60.423 73.3109 70.6918Z",
608
- fill: "var(--digital-id-illustration-mask, #FAFAFA)"
609
- })
610
- ]
611
- });
612
- //#endregion
613
- //#region src/modules/id/assets/uploadIdScreenImage.tsx
614
- /**
615
- * Decorative composite ID-card illustration for the digital-upload tutorial and
616
- * file-selection screens. Overridable via the `id.uploadScreen` asset key.
617
- *
618
- * The built-in artwork follows the active theme via CSS custom properties:
619
- * `--digital-id-illustration-border`, `--digital-id-illustration-accent`,
620
- * `--digital-id-illustration-photo`, `--digital-id-illustration-mask`,
621
- * `--digital-id-illustration-mask-shadow`, `--digital-id-illustration-strip`.
622
- * Sizing lives in `.IncodeUploadIdScreenImage`.
623
- */
624
- var UploadIdScreenImage = () => /* @__PURE__ */ u(Asset, {
625
- name: "id.uploadScreen",
626
- class: "IncodeUploadIdScreenImage",
627
- default: SvgUploadIdScreenImage
628
- });
629
- //#endregion
630
- //#region src/modules/id/digitalIdUpload/fileSelectionScreen.tsx
631
- var FileSelectionScreen = ({ manager, state }) => {
632
- const { t } = useTranslation();
633
- const fileInputRef = A(null);
634
- y(() => {
635
- if (!fileInputRef.current) return;
636
- fileInputRef.current.click();
637
- }, [state.pickerRequestId]);
638
- const onFileSelect = (event) => {
639
- const file = event.currentTarget.files?.[0];
640
- if (!file) return;
641
- manager.digitalUploadPickFile(file);
642
- };
643
- return /* @__PURE__ */ u(Page, {
644
- title: t("idv2.digitalIdUpload.screenTitle"),
645
- subtitle: t("idv2.digitalIdUpload.screenDescription"),
646
- className: "IncodeDigitalIdUploadPage",
647
- "data-testid": "digital-id-upload-selection",
648
- children: [/* @__PURE__ */ u("div", {
649
- class: "IncodeDigitalIdUploadBody",
650
- children: [/* @__PURE__ */ u("input", {
651
- ref: fileInputRef,
652
- type: "file",
653
- accept: "application/pdf",
654
- onChange: onFileSelect,
655
- class: "IncodeDigitalIdUploadHiddenInput",
656
- tabIndex: -1,
657
- "aria-hidden": "true"
658
- }), /* @__PURE__ */ u("div", {
659
- class: "IncodeDigitalIdUploadTutorialIllustration",
660
- "aria-hidden": "true",
661
- children: /* @__PURE__ */ u(UploadIdScreenImage, {})
662
- })]
663
- }), /* @__PURE__ */ u("div", {
664
- class: "IncodeDigitalIdUploadFooter",
665
- children: /* @__PURE__ */ u(Button, {
666
- onClick: () => fileInputRef.current?.click(),
667
- "aria-haspopup": "dialog",
668
- children: t("idv2.digitalIdUpload.digitalIdUploadButtonTitle")
669
- })
670
- })]
671
- });
672
- };
673
- //#endregion
674
- //#region src/modules/id/digitalIdUpload/fileTooLargeScreen.tsx
675
- var FileTooLargeScreen = ({ manager }) => {
676
- const { t } = useTranslation();
677
- return /* @__PURE__ */ u(Page, {
678
- title: t("idv2.digitalIdUpload.fileTooLargeScreen.title"),
679
- subtitle: t("idv2.digitalIdUpload.fileTooLargeScreen.subtitle"),
680
- className: "IncodeDigitalIdUploadPage",
681
- "data-testid": "digital-id-upload-file-too-large",
682
- children: [/* @__PURE__ */ u("div", { class: "IncodeDigitalIdUploadBody" }), /* @__PURE__ */ u("div", {
683
- class: "IncodeDigitalIdUploadFooter",
684
- children: /* @__PURE__ */ u(Button, {
685
- onClick: () => manager.digitalUploadChooseAnother(),
686
- children: t("idv2.digitalIdUpload.fileTooLargeScreen.cta")
687
- })
688
- })]
689
- });
690
- };
691
- //#endregion
692
- //#region src/modules/id/digitalIdUpload/successScreen.tsx
693
- var SuccessScreen$1 = ({ manager, state }) => {
694
- const { t } = useTranslation();
695
- const fileUrl = useFilePreviewUrl(state.file);
696
- return /* @__PURE__ */ u(Page, {
697
- titleTopSlot: /* @__PURE__ */ u("div", {
698
- class: "IncodeDigitalIdUploadSuccessIcon",
699
- "aria-hidden": "true",
700
- children: /* @__PURE__ */ u(SuccessIcon, { size: 32 })
701
- }),
702
- title: t("idv2.digitalIdUpload.successfullyProcessed"),
703
- subtitle: t("idv2.digitalIdUpload.loadingSuccess.letsContinue"),
704
- className: "IncodeDigitalIdUploadPage",
705
- "data-testid": "digital-id-upload-success",
706
- children: [/* @__PURE__ */ u("div", {
707
- class: "IncodeDigitalIdUploadPreviewBody",
708
- children: [
709
- /* @__PURE__ */ u("div", {
710
- class: "IncodeDigitalIdUploadPreStatusZone",
711
- "aria-hidden": "true"
712
- }),
713
- /* @__PURE__ */ u("div", {
714
- class: "IncodeDigitalIdUploadDocumentPreview",
715
- "aria-hidden": "true",
716
- children: fileUrl ? /* @__PURE__ */ u(PdfViewer, {
717
- url: fileUrl,
718
- mode: "thumbnail",
719
- className: "IncodeDigitalIdUploadDocumentPreviewPdf"
720
- }) : null
721
- }),
722
- /* @__PURE__ */ u("div", {
723
- class: "IncodeDigitalIdUploadPostCaptionZone",
724
- "aria-hidden": "true"
725
- })
726
- ]
727
- }), /* @__PURE__ */ u("div", {
728
- class: "IncodeDigitalIdUploadFooter",
729
- children: /* @__PURE__ */ u(Button, {
730
- onClick: () => manager.digitalUploadNextStep(),
731
- children: t("idv2.digitalIdUpload.continue")
732
- })
733
- })]
734
- });
735
- };
736
- //#endregion
737
- //#region src/modules/id/digitalIdUpload/tutorialScreen.tsx
738
- var TutorialScreen = ({ manager }) => {
739
- const { t } = useTranslation();
740
- return /* @__PURE__ */ u(Page, {
741
- title: t("idv2.digitalIdUpload.screenTitle"),
742
- subtitle: t("idv2.digitalIdUpload.screenDescription"),
743
- className: "IncodeDigitalIdUploadPage",
744
- "data-testid": "digital-id-upload-tutorial",
745
- children: [/* @__PURE__ */ u("div", {
746
- class: "IncodeDigitalIdUploadBody",
747
- children: /* @__PURE__ */ u("div", {
748
- class: "IncodeDigitalIdUploadTutorialIllustration",
749
- "aria-hidden": "true",
750
- children: /* @__PURE__ */ u(UploadIdScreenImage, {})
751
- })
752
- }), /* @__PURE__ */ u("div", {
753
- class: "IncodeDigitalIdUploadFooter",
754
- children: /* @__PURE__ */ u(Button, {
755
- onClick: () => manager.digitalUploadNextStep(),
756
- children: t("idv2.digitalIdUpload.digitalIdUploadButtonTitle")
757
- })
758
- })]
759
- });
760
- };
761
- //#endregion
762
- //#region src/modules/id/digitalIdUpload/digitalIdUpload.tsx
763
- var DigitalIdUpload = ({ manager, state }) => {
764
- if (state.phase === "tutorial") return /* @__PURE__ */ u(TutorialScreen, { manager });
765
- if (state.phase === "selecting") return /* @__PURE__ */ u(FileSelectionScreen, {
766
- manager,
767
- state
768
- });
769
- if (state.phase === "reviewing") return /* @__PURE__ */ u(FileReviewScreen, {
770
- manager,
771
- state
772
- });
773
- if (state.phase === "uploading" || state.phase === "holding") return /* @__PURE__ */ u(AnalyzingScreen, { state });
774
- if (state.phase === "success") return /* @__PURE__ */ u(SuccessScreen$1, {
775
- manager,
776
- state
777
- });
778
- if (state.phase === "fileTooLarge") return /* @__PURE__ */ u(FileTooLargeScreen, { manager });
779
- if (state.phase === "error" || state.phase === "exhausted") return /* @__PURE__ */ u(ErrorScreen$1, {
780
- manager,
781
- state
782
- });
783
- return null;
784
- };
785
- //#endregion
786
- //#region src/modules/id/deviceWallet/errorScreen.tsx
787
- /**
788
- * Failure screen for the device-wallet (mDL) handshake. Renders the shared
789
- * `VerificationResult` (same look as the digital-ID redirect failure screen)
790
- * with per-reason copy. Keys are static literals so i18nexus can extract them
791
- * (author EN + supported locales in i18nexus); the subtitle keys match the
792
- * core `DEVICE_WALLET_ERROR_KEYS` map, kept local here — like
793
- * `digitalIdRedirect/failureScreen.tsx` — to avoid a runtime value import
794
- * from `@incodetech/core`. Failure is non-blocking: retry restarts the
795
- * handshake, or fall back to the ID-Capture chooser.
796
- */
797
- var COPY_KEYS$1 = {
798
- UNSUPPORTED_PLATFORM: {
799
- title: "idv2.deviceWallet.unsupportedPlatformTitle",
800
- subtitle: "idv2.deviceWallet.unsupportedPlatformDescription"
801
- },
802
- NO_CREDENTIAL: {
803
- title: "idv2.deviceWallet.noCredentialTitle",
804
- subtitle: "idv2.deviceWallet.noCredentialDescription"
805
- },
806
- WALLET_ERROR: {
807
- title: "idv2.deviceWallet.errorTitle",
808
- subtitle: "idv2.deviceWallet.errorDescription"
809
- }
810
- };
811
- var GENERIC_KEYS$1 = {
812
- title: "idv2.deviceWallet.errorTitle",
813
- subtitle: "idv2.deviceWallet.errorDescription"
814
- };
815
- var ErrorScreen = ({ failReason, onRetry, onUseAnotherMethod }) => {
816
- const { t } = useTranslation();
817
- const { title, subtitle } = failReason ? COPY_KEYS$1[failReason] : GENERIC_KEYS$1;
818
- const canRetry = failReason !== "UNSUPPORTED_PLATFORM";
819
- return /* @__PURE__ */ u(VerificationResult, {
820
- status: "failure",
821
- failureTitle: t(title),
822
- errorMessage: t(subtitle),
823
- onRetry: canRetry ? onRetry : void 0,
824
- retryLabel: t("common.tryAgain"),
825
- onSkip: onUseAnotherMethod,
826
- skipLabel: t("idv2.deviceWallet.useAnotherMethodButton")
827
- });
828
- };
829
- //#endregion
830
- //#region src/modules/id/deviceWallet/deviceWallet.tsx
831
- /**
832
- * Device-wallet (mDL) handshake rendered INSIDE ID-Capture as a child machine
833
- * — mirrors `digitalIdRedirect/digitalIdRedirect.tsx`. The core child owns
834
- * request → wallet sheet → decrypt; this layer only renders the phase. During
835
- * `presenting` the OS wallet sheet covers the page, so a spinner is all the
836
- * page itself needs.
837
- */
838
- var DeviceWallet = ({ manager, state }) => {
839
- if (state.phase === "failed") return /* @__PURE__ */ u(ErrorScreen, {
840
- failReason: state.failReason,
841
- onRetry: () => manager.deviceWalletRetry(),
842
- onUseAnotherMethod: () => manager.deviceWalletUseAnotherMethod()
843
- });
844
- return /* @__PURE__ */ u(TransitionSpinner, { hideText: true });
845
- };
846
- //#endregion
847
- //#region src/modules/id/digitalIdRedirect/failureScreen.tsx
848
- /**
849
- * Failure screen for the digital-ID web-redirect (Trinsic iDIN/FTN). Renders the
850
- * shared `VerificationResult` (same look as ekyc/ekyb) with the module's own
851
- * per-reason copy. Copy is i18nexus-keyed under
852
- * `idv2.digitalIdRedirect.failureScreen.*` (add EN, plus NL for iDIN and FI/SV
853
- * for FTN, in i18nexus). Failure is non-blocking: retry (new session/billing
854
- * event) or use another method (back to the ID-Capture chooser).
855
- *
856
- * The nine `failureReason`s collapse into six copy groups; keys are written as
857
- * static literals so i18nexus can extract them. A translator can split a group
858
- * into per-reason copy later without a code change.
859
- */
860
- var COPY_KEYS = {
861
- USER_CANCELED: {
862
- title: "idv2.digitalIdRedirect.failureScreen.canceled.title",
863
- subtitle: "idv2.digitalIdRedirect.failureScreen.canceled.subtitle"
864
- },
865
- RP_CANCELED: {
866
- title: "idv2.digitalIdRedirect.failureScreen.canceled.title",
867
- subtitle: "idv2.digitalIdRedirect.failureScreen.canceled.subtitle"
868
- },
869
- AUTHENTICATION_FAILED: {
870
- title: "idv2.digitalIdRedirect.failureScreen.authenticationFailed.title",
871
- subtitle: "idv2.digitalIdRedirect.failureScreen.authenticationFailed.subtitle"
872
- },
873
- VERIFICATION_FAILED: {
874
- title: "idv2.digitalIdRedirect.failureScreen.verificationFailed.title",
875
- subtitle: "idv2.digitalIdRedirect.failureScreen.verificationFailed.subtitle"
876
- },
877
- SESSION_EXPIRED: {
878
- title: "idv2.digitalIdRedirect.failureScreen.sessionExpired.title",
879
- subtitle: "idv2.digitalIdRedirect.failureScreen.sessionExpired.subtitle"
880
- },
881
- SESSION_TOKEN_EXPIRED: {
882
- title: "idv2.digitalIdRedirect.failureScreen.sessionExpired.title",
883
- subtitle: "idv2.digitalIdRedirect.failureScreen.sessionExpired.subtitle"
884
- },
885
- PROVIDER_INTERNAL_ERROR: {
886
- title: "idv2.digitalIdRedirect.failureScreen.technicalError.title",
887
- subtitle: "idv2.digitalIdRedirect.failureScreen.technicalError.subtitle"
888
- },
889
- RESULTS_EXCHANGE_FAILED: {
890
- title: "idv2.digitalIdRedirect.failureScreen.technicalError.title",
891
- subtitle: "idv2.digitalIdRedirect.failureScreen.technicalError.subtitle"
892
- },
893
- INVALID_REDIRECT_RESULT: {
894
- title: "idv2.digitalIdRedirect.failureScreen.technicalError.title",
895
- subtitle: "idv2.digitalIdRedirect.failureScreen.technicalError.subtitle"
896
- }
897
- };
898
- var GENERIC_KEYS = {
899
- title: "idv2.digitalIdRedirect.failureScreen.generic.title",
900
- subtitle: "idv2.digitalIdRedirect.failureScreen.generic.subtitle"
901
- };
902
- var FailureScreen = ({ failureReason, onRetry, onUseAnotherMethod }) => {
903
- const { t } = useTranslation();
904
- const copy = failureReason ? COPY_KEYS[failureReason] : GENERIC_KEYS;
905
- return /* @__PURE__ */ u(VerificationResult, {
906
- status: "failure",
907
- failureTitle: t(copy.title),
908
- errorMessage: t(copy.subtitle),
909
- onRetry,
910
- retryLabel: t("common.tryAgain"),
911
- onSkip: onUseAnotherMethod,
912
- skipLabel: t("idv2.digitalIdRedirect.failureScreen.useAnotherMethod")
913
- });
914
- };
915
- //#endregion
916
- //#region src/modules/id/digitalIdRedirect/redirectingScreen.tsx
182
+ //#region src/modules/id/digitalIdRedirect/returnUrl.ts
917
183
  /**
918
- * Performs the full-page redirect out to the identity provider (bank login).
919
- * Full-page navigation lives in L2, so core stays window-free. The pending
920
- * verificationId was already persisted by the core child machine (its
921
- * `persisting` state) before this screen renders, so the return leg can recover
922
- * it from storage after the reload.
923
- */
924
- var RedirectingScreen = ({ launchUrl }) => {
925
- y(() => {
926
- if (launchUrl && launchUrl.startsWith("https://")) window.location.assign(launchUrl);
927
- }, [launchUrl]);
928
- return /* @__PURE__ */ u(TransitionSpinner, { hideText: true });
929
- };
930
- //#endregion
931
- //#region src/modules/id/digitalIdRedirect/successScreen.tsx
932
- /**
933
- * Success confirmation for the digital-ID web-redirect (Trinsic iDIN/FTN).
934
- * Renders the shared `VerificationResult` (same look as ekyc/ekyb) with a manual
935
- * Continue action — the child machine parks in `succeeded` until the user
936
- * acknowledges, so the flow does not silently skip past the result.
184
+ * Where the identity provider sends the user back after the bank login when
185
+ * the host names no return route: the current page, without its query string.
937
186
  *
938
- * Copy is i18nexus-keyed under `idv2.digitalIdRedirect.successScreen.*`
939
- * (add EN, plus NL for iDIN and FI/SV for FTN, in i18nexus).
940
- */
941
- var SuccessScreen = ({ onContinue }) => {
942
- const { t } = useTranslation();
943
- return /* @__PURE__ */ u(VerificationResult, {
944
- status: "success",
945
- successTitle: t("idv2.digitalIdRedirect.successScreen.title"),
946
- successSubtitle: t("idv2.digitalIdRedirect.successScreen.subtitle"),
947
- onContinue,
948
- continueLabel: t("idv2.digitalIdRedirect.successScreen.continue")
949
- });
950
- };
951
- //#endregion
952
- //#region src/modules/id/digitalIdRedirect/digitalIdRedirect.tsx
953
- /**
954
- * Digital ID web-redirect (Trinsic iDIN/FTN) rendered INSIDE ID-Capture as a
955
- * child machine — mirrors `digitalIdUpload/digitalIdUpload.tsx`. The core child
956
- * owns create → persist → redirect (and, on the return leg, submit → poll); this
957
- * layer only renders the phase and performs the full-page navigation.
958
- */
959
- var DigitalIdRedirect = ({ manager, state }) => {
960
- if (state.phase === "redirecting") return /* @__PURE__ */ u(RedirectingScreen, { launchUrl: state.launchUrl ?? "" });
961
- if (state.phase === "success") return /* @__PURE__ */ u(SuccessScreen, { onContinue: () => manager.digitalIdRedirectContinue() });
962
- if (state.phase === "failed") return /* @__PURE__ */ u(FailureScreen, {
963
- failureReason: state.failureReason,
964
- onRetry: () => manager.digitalIdRedirectRetry(),
965
- onUseAnotherMethod: () => manager.digitalIdRedirectUseAnotherMethod()
966
- });
967
- if (state.phase === "error") return /* @__PURE__ */ u(FailureScreen, {
968
- onRetry: () => manager.digitalIdRedirectRetry(),
969
- onUseAnotherMethod: () => manager.digitalIdRedirectUseAnotherMethod()
970
- });
971
- return /* @__PURE__ */ u(TransitionSpinner, { hideText: true });
972
- };
973
- //#endregion
974
- //#region src/modules/id/manualUpload/manualUploadError.tsx
975
- /**
976
- * Inline validation message for the manual-upload flow. Rendered directly
977
- * beneath the slot it refers to so the user can tell which document side was
978
- * rejected — the side context comes from the placement, not the copy.
979
- * `role="alert"` announces it once on insert (SC 4.1.3).
980
- */
981
- var ManualUploadError = ({ errorKey, id }) => {
982
- const { t } = useTranslation();
983
- return /* @__PURE__ */ u("div", {
984
- id,
985
- class: "IncodeManualUploadError",
986
- role: "alert",
987
- "data-testid": "manual-upload-error",
988
- children: [/* @__PURE__ */ u(ErrorIcon, { size: 16 }), /* @__PURE__ */ u("p", { children: t(errorKey) })]
989
- });
990
- };
991
- //#endregion
992
- //#region src/modules/id/manualUpload/uploadButton.tsx
993
- /**
994
- * Slot card for a single document side. The whole card is the clickable
995
- * trigger: a row with a small pictogram, the slot label, and a decorative
996
- * circular action icon on the right. Clicking anywhere on the card opens
997
- * the native file picker. When the upload has succeeded, the action icon
998
- * collapses to the success icon.
187
+ * The query is dropped on purpose. After a return, the address bar still holds
188
+ * the previous attempt's `success` / `sessionId` / `resultsAccessKey`, and
189
+ * reusing them would stamp a stale result onto the next attempt. The session
190
+ * `uuid` the return leg needs is appended by `createVerification`
191
+ * (`ensureReturnUrlUuid`), so nothing required is lost.
999
192
  *
1000
- * Kept local to the manual-upload flow — not promoted to `shared/`.
1001
- */
1002
- var UploadButton = ({ icon, label, uploaded, uploading, disabled, invalid, describedById, testId, onFile }) => {
1003
- const inputRef = A(null);
1004
- const isDisabled = disabled || uploading;
1005
- const openPicker = () => {
1006
- if (isDisabled) return;
1007
- inputRef.current?.click();
1008
- };
1009
- const handleChange = (event) => {
1010
- const input = event.target;
1011
- const file = input.files?.[0];
1012
- if (file) onFile(file);
1013
- input.value = "";
1014
- };
1015
- const renderActionIcon = () => {
1016
- if (uploading) return /* @__PURE__ */ u(Spinner, { size: "small" });
1017
- if (uploaded) return /* @__PURE__ */ u(SuccessIcon, { size: 40 });
1018
- return /* @__PURE__ */ u(ChevronRightIcon, {
1019
- variant: "xs",
1020
- size: 16
1021
- });
1022
- };
1023
- return /* @__PURE__ */ u(k, { children: [/* @__PURE__ */ u("button", {
1024
- type: "button",
1025
- class: cn("IncodeManualUploadSlot", uploaded && "IncodeManualUploadSlot--uploaded"),
1026
- onClick: openPicker,
1027
- disabled: isDisabled,
1028
- "aria-label": label,
1029
- "aria-busy": uploading || void 0,
1030
- "aria-invalid": invalid || void 0,
1031
- "aria-describedby": describedById,
1032
- "data-testid": testId,
1033
- children: [
1034
- /* @__PURE__ */ u("div", {
1035
- class: "IncodeManualUploadSlotIcon",
1036
- "aria-hidden": "true",
1037
- children: icon
1038
- }),
1039
- /* @__PURE__ */ u("div", {
1040
- class: "IncodeManualUploadSlotLabel",
1041
- children: label
1042
- }),
1043
- /* @__PURE__ */ u("div", {
1044
- class: "IncodeManualUploadSlotAction",
1045
- "aria-hidden": "true",
1046
- children: renderActionIcon()
1047
- })
1048
- ]
1049
- }), /* @__PURE__ */ u("input", {
1050
- ref: inputRef,
1051
- type: "file",
1052
- accept: "image/*",
1053
- class: "IncodeManualUploadSlotInput",
1054
- onChange: handleChange,
1055
- onInput: handleChange,
1056
- tabIndex: -1,
1057
- "aria-hidden": "true"
1058
- })] });
1059
- };
1060
- //#endregion
1061
- //#region src/modules/id/manualUpload/slotIcons.tsx
1062
- /**
1063
- * Slot pictograms used inside the manual-upload cards.
1064
- * Sourced from the Figma `IconIdDocument` component (front / back / passport).
1065
- * The primary shape uses `currentColor` so the parent card controls the tint
1066
- * via CSS. The inner highlight is filled via `.IncodeManualUploadSlotIconHighlight`
1067
- * so it remains theme-aware (dark mode included).
193
+ * Applied once by the ID module, so every surface that renders it — flow,
194
+ * workflow and the standalone `<incode-id>` element — sends a return URL.
1068
195
  */
1069
- var HIGHLIGHT_CLASS = "IncodeManualUploadSlotIconHighlight";
1070
- var IdFrontIcon = () => /* @__PURE__ */ u("svg", {
1071
- xmlns: "http://www.w3.org/2000/svg",
1072
- width: "27",
1073
- height: "27",
1074
- viewBox: "0 0 27 27",
1075
- fill: "none",
1076
- "aria-hidden": "true",
1077
- children: [/* @__PURE__ */ u("path", {
1078
- d: "M11.4187 12.2343C11.4187 12.557 11.323 12.8724 11.1437 13.1406C10.9645 13.4089 10.7097 13.618 10.4117 13.7414C10.1136 13.8649 9.78559 13.8972 9.46916 13.8343C9.15273 13.7713 8.86207 13.6159 8.63393 13.3878C8.4058 13.1597 8.25044 12.869 8.1875 12.5526C8.12455 12.2362 8.15686 11.9082 8.28032 11.6101C8.40379 11.312 8.61287 11.0573 8.88113 10.878C9.14939 10.6988 9.46477 10.6031 9.7874 10.6031C10.22 10.6031 10.635 10.775 10.9409 11.0809C11.2468 11.3868 11.4187 11.8017 11.4187 12.2343ZM23.653 5.70934V20.3906C23.653 20.8232 23.4812 21.2381 23.1752 21.5441C22.8693 21.85 22.4544 22.0218 22.0218 22.0218H4.07803C3.64539 22.0218 3.23048 21.85 2.92456 21.5441C2.61864 21.2381 2.44678 20.8232 2.44678 20.3906V5.70934C2.44678 5.27671 2.61864 4.8618 2.92456 4.55588C3.23048 4.24996 3.64539 4.07809 4.07803 4.07809H22.0218C22.4544 4.07809 22.8693 4.24996 23.1752 4.55588C23.4812 4.8618 23.653 5.27671 23.653 5.70934ZM20.3905 14.6812C20.3905 14.4649 20.3046 14.2574 20.1516 14.1045C19.9987 13.9515 19.7912 13.8656 19.5749 13.8656H15.4968C15.2805 13.8656 15.073 13.9515 14.92 14.1045C14.7671 14.2574 14.6812 14.4649 14.6812 14.6812C14.6812 14.8975 14.7671 15.105 14.92 15.258C15.073 15.4109 15.2805 15.4968 15.4968 15.4968H19.5749C19.7912 15.4968 19.9987 15.4109 20.1516 15.258C20.3046 15.105 20.3905 14.8975 20.3905 14.6812ZM20.3905 11.4187C20.3905 11.2024 20.3046 10.9949 20.1516 10.842C19.9987 10.689 19.7912 10.6031 19.5749 10.6031H15.4968C15.2805 10.6031 15.073 10.689 14.92 10.842C14.7671 10.9949 14.6812 11.2024 14.6812 11.4187C14.6812 11.635 14.7671 11.8425 14.92 11.9955C15.073 12.1484 15.2805 12.2343 15.4968 12.2343H19.5749C19.7912 12.2343 19.9987 12.1484 20.1516 11.9955C20.3046 11.8425 20.3905 11.635 20.3905 11.4187Z",
1079
- fill: "currentColor"
1080
- }), /* @__PURE__ */ u("path", {
1081
- d: "M5.02231 16.1109C5.58996 15.3667 6.34651 14.7807 7.21692 14.4111H7.22173C6.74461 13.9847 6.41033 13.4271 6.26277 12.8114C6.11521 12.1957 6.16125 11.5507 6.39486 10.9611C6.62847 10.3715 7.03873 9.86478 7.5718 9.50748C8.10487 9.15018 8.73583 8.95898 9.3819 8.95898C10.028 8.95898 10.6589 9.15018 11.192 9.50748C11.7251 9.86478 12.1353 10.3715 12.3689 10.9611C12.6025 11.5507 12.6486 12.1957 12.501 12.8114C12.3535 13.4271 12.0192 13.9847 11.5421 14.4111C12.4125 14.7807 13.169 15.3667 13.7367 16.1109C13.8083 16.2041 13.852 16.315 13.8628 16.4311C13.8736 16.5472 13.8511 16.664 13.7979 16.7683C13.7446 16.8727 13.6627 16.9604 13.5614 17.0217C13.46 17.0829 13.3432 17.1153 13.2241 17.1152H5.53492C5.41579 17.1153 5.29898 17.0829 5.19762 17.0217C5.09626 16.9604 5.01436 16.8727 4.96111 16.7683C4.90787 16.664 4.88539 16.5472 4.8962 16.4311C4.90701 16.315 4.95068 16.2041 5.02231 16.1109Z",
1082
- fill: "white"
1083
- })]
1084
- });
1085
- var IdBackIcon = () => /* @__PURE__ */ u("svg", {
1086
- viewBox: "0 0 27 27",
1087
- fill: "none",
1088
- "aria-hidden": "true",
1089
- children: /* @__PURE__ */ u("path", {
1090
- d: "M22.022 4.07812C22.4545 4.07818 22.8694 4.24985 23.1753 4.55566C23.4811 4.86149 23.6527 5.27649 23.6528 5.70898V20.3906C23.6528 20.8232 23.4811 21.238 23.1753 21.5439C22.8694 21.8498 22.4545 22.0214 22.022 22.0215H4.07764C3.64514 22.0214 3.23014 21.8498 2.92432 21.5439C2.61852 21.238 2.44678 20.8232 2.44678 20.3906V5.70898C2.44688 5.27649 2.61849 4.86149 2.92432 4.55566C3.23014 4.24984 3.64514 4.07823 4.07764 4.07812H22.022ZM5.49658 17C5.28034 17.0001 5.07332 17.0863 4.92041 17.2393C4.7675 17.3922 4.6812 17.5992 4.68115 17.8154C4.68115 18.0317 4.76745 18.2396 4.92041 18.3926C5.0733 18.5453 5.28047 18.6308 5.49658 18.6309H11.9995C12.2158 18.6309 12.4237 18.5455 12.5767 18.3926C12.7296 18.2396 12.8159 18.0317 12.8159 17.8154C12.8159 17.5993 12.7295 17.3922 12.5767 17.2393C12.4237 17.0863 12.2158 17 11.9995 17H5.49658ZM5.49658 7.60352C5.28047 7.60357 5.0733 7.68907 4.92041 7.8418C4.76745 7.99476 4.68115 8.20263 4.68115 8.41895C4.68116 8.46917 4.68462 10.4372 4.69189 10.5498C4.71927 10.9728 5.05459 11.289 5.49658 11.2891H20.1841C20.5995 11.2891 20.9497 10.9654 20.981 10.5498C20.9934 10.3844 20.9995 8.48197 20.9995 8.41895C20.9995 8.20263 20.9142 7.99476 20.7612 7.8418C20.6083 7.68884 20.4004 7.60352 20.1841 7.60352H5.49658Z",
1091
- fill: "currentColor"
1092
- })
1093
- });
1094
- var PassportSlotIcon = () => /* @__PURE__ */ u("svg", {
1095
- viewBox: "0 0 27 27",
1096
- fill: "none",
1097
- "aria-hidden": "true",
1098
- children: [
1099
- /* @__PURE__ */ u("path", {
1100
- d: "M14.8498 4.01579L24.7216 4.01579C25.0873 4.01579 25.4379 4.18646 25.6964 4.49026C25.955 4.79406 26.1002 5.20609 26.1002 5.63573L26.1002 21.4689C26.1002 21.8986 25.955 22.3106 25.6964 22.6144C25.4379 22.9182 25.0873 23.0889 24.7216 23.0889L14.8498 23.0889C14.4841 23.0889 14.1335 22.9182 13.875 22.6144C13.6164 22.3106 13.4712 21.8986 13.4712 21.4689L13.4712 5.63573C13.4712 5.20609 13.6164 4.79406 13.875 4.49026C14.1335 4.18646 14.4841 4.01579 14.8498 4.01579ZM21.5868 7.25567C21.404 7.25567 21.2287 7.341 21.0994 7.4929C20.9702 7.6448 20.8975 7.85082 20.8975 8.06564L20.8975 11.1224C20.8975 11.3372 20.9702 11.5433 21.0994 11.6952C21.2287 11.8471 21.404 11.9324 21.5868 11.9324C21.7696 11.9324 21.945 11.8471 22.0742 11.6952C22.2035 11.5433 22.2761 11.3372 22.2761 11.1224L22.2761 8.06564C22.2761 7.85082 22.2035 7.6448 22.0742 7.4929C21.945 7.341 21.7696 7.25567 21.5868 7.25567ZM18.8297 7.25567C18.6469 7.25567 18.4715 7.341 18.3423 7.4929C18.213 7.6448 18.1404 7.85082 18.1404 8.06564L18.1404 11.1224C18.1404 11.3372 18.213 11.5433 18.3423 11.6952C18.4715 11.8471 18.6469 11.9324 18.8297 11.9324C19.0125 11.9324 19.1878 11.8471 19.3171 11.6952C19.4463 11.5433 19.519 11.3372 19.519 11.1224L19.519 8.06564C19.519 7.85082 19.4463 7.6448 19.3171 7.4929C19.1878 7.341 19.0125 7.25567 18.8297 7.25567Z",
1101
- fill: "currentColor"
1102
- }),
1103
- /* @__PURE__ */ u("path", {
1104
- class: HIGHLIGHT_CLASS,
1105
- d: "M22.1102 19.9907C21.6493 19.6096 21.2864 19.1017 21.0575 18.5174L21.0575 18.5142C20.7934 18.8345 20.448 19.0589 20.0667 19.158C19.6853 19.257 19.2859 19.2261 18.9207 19.0693C18.5555 18.9124 18.2417 18.637 18.0204 18.2792C17.7991 17.9213 17.6807 17.4977 17.6807 17.064C17.6807 16.6303 17.7991 16.2067 18.0204 15.8488C18.2417 15.491 18.5555 15.2155 18.9207 15.0587C19.2859 14.9019 19.6853 14.871 20.0667 14.97C20.448 15.0691 20.7934 15.2935 21.0575 15.6138C21.2864 15.0295 21.6493 14.5216 22.1102 14.1405C22.1679 14.0924 22.2366 14.0631 22.3086 14.0558C22.3805 14.0486 22.4528 14.0637 22.5174 14.0994C22.582 14.1352 22.6364 14.1902 22.6743 14.2582C22.7123 14.3262 22.7323 14.4047 22.7323 14.4846L22.7323 19.6466C22.7323 19.7266 22.7123 19.805 22.6743 19.873C22.6364 19.9411 22.582 19.996 22.5174 20.0318C22.4528 20.0675 22.3805 20.0826 22.3086 20.0754C22.2366 20.0681 22.1679 20.0388 22.1102 19.9907Z"
1106
- }),
1107
- /* @__PURE__ */ u("path", {
1108
- d: "M1.14809 4.01579L11.4809 4.01579C11.7854 4.01579 12.0775 4.18582 12.2928 4.48848C12.5081 4.79114 12.629 5.20164 12.629 5.62967L12.629 21.475C12.629 21.903 12.5081 22.3135 12.2928 22.6162C12.0775 22.9188 11.7854 23.0889 11.4809 23.0889L1.14809 23.0889C0.843601 23.0889 0.551578 22.9188 0.336269 22.6162C0.12096 22.3135 2.17692e-08 21.903 3.05959e-09 21.475L-7.63166e-07 5.62967C-7.81875e-07 5.20164 0.120959 4.79115 0.336268 4.48849C0.551577 4.18583 0.8436 4.01579 1.14809 4.01579Z",
1109
- fill: "currentColor"
1110
- })
1111
- ]
1112
- });
1113
- //#endregion
1114
- //#region src/modules/id/manualUpload/uploadTab.tsx
1115
- var SLOT_LABEL_KEYS = {
1116
- front: {
1117
- idle: "manualIdUpload.frontId",
1118
- uploading: "manualIdUpload.uploadingFrontId",
1119
- uploaded: "manualIdUpload.frontIdUploaded"
1120
- },
1121
- back: {
1122
- idle: "manualIdUpload.backId",
1123
- uploading: "manualIdUpload.uploadingBackId",
1124
- uploaded: "manualIdUpload.backIdUploaded"
1125
- },
1126
- passport: {
1127
- idle: "manualIdUpload.passport",
1128
- uploading: "manualIdUpload.uploadingPassport",
1129
- uploaded: "manualIdUpload.passportUploaded"
1130
- }
1131
- };
1132
- var UploadTab = ({ mode, manager, state, errorMessageId }) => {
1133
- const { t } = useTranslation();
1134
- const slotLabel = (slot, isUploading, isUploaded) => {
1135
- const keys = SLOT_LABEL_KEYS[slot];
1136
- return t(isUploading ? keys.uploading : isUploaded ? keys.uploaded : keys.idle);
1137
- };
1138
- const slotErrorProps = (slot) => state.errorSide === slot ? {
1139
- invalid: true,
1140
- describedById: errorMessageId
1141
- } : {};
1142
- /**
1143
- * Render the validation message directly beneath the slot it refers to so
1144
- * the error is unambiguously tied to the correct document side. Only the
1145
- * slot matching `errorSide` gets the message.
1146
- */
1147
- const slotError = (slot) => state.errorKey && state.errorSide === slot ? /* @__PURE__ */ u(ManualUploadError, {
1148
- id: errorMessageId,
1149
- errorKey: state.errorKey
1150
- }) : null;
1151
- if (mode === "passport") {
1152
- const isUploading = state.uploadingSide === "passport";
1153
- return /* @__PURE__ */ u("div", {
1154
- class: "IncodeManualUploadTab",
1155
- children: [/* @__PURE__ */ u(UploadButton, {
1156
- icon: /* @__PURE__ */ u(PassportSlotIcon, {}),
1157
- label: slotLabel("passport", isUploading, state.passportUploaded),
1158
- uploaded: state.passportUploaded,
1159
- uploading: isUploading,
1160
- testId: "manual-upload-passport",
1161
- onFile: (file) => manager.manualUploadSelectFile("passport", file),
1162
- ...slotErrorProps("passport")
1163
- }), slotError("passport")]
1164
- });
1165
- }
1166
- const isUploadingFront = state.uploadingSide === "front";
1167
- const isUploadingBack = state.uploadingSide === "back";
1168
- return /* @__PURE__ */ u("div", {
1169
- class: "IncodeManualUploadTab",
1170
- children: [state.showFrontSlot !== false && /* @__PURE__ */ u(k, { children: [/* @__PURE__ */ u(UploadButton, {
1171
- icon: /* @__PURE__ */ u(IdFrontIcon, {}),
1172
- label: slotLabel("front", isUploadingFront, state.frontUploaded),
1173
- uploaded: state.frontUploaded,
1174
- uploading: isUploadingFront,
1175
- testId: "manual-upload-front",
1176
- onFile: (file) => manager.manualUploadSelectFile("front", file),
1177
- ...slotErrorProps("front")
1178
- }), slotError("front")] }), state.showBackSlot && /* @__PURE__ */ u(k, { children: [/* @__PURE__ */ u(UploadButton, {
1179
- icon: /* @__PURE__ */ u(IdBackIcon, {}),
1180
- label: slotLabel("back", isUploadingBack, state.backUploaded),
1181
- uploaded: state.backUploaded,
1182
- uploading: isUploadingBack,
1183
- testId: "manual-upload-back",
1184
- onFile: (file) => manager.manualUploadSelectFile("back", file),
1185
- ...slotErrorProps("back")
1186
- }), slotError("back")] })]
1187
- });
1188
- };
1189
- //#endregion
1190
- //#region src/modules/id/manualUpload/manualUpload.tsx
1191
- var isManualUploadTab = (value) => value === "id" || value === "passport";
1192
- var ManualUpload = ({ manager, state }) => {
1193
- const { t } = useTranslation();
1194
- if (state.phase === "exhausted") return /* @__PURE__ */ u(ErrorContent, {
1195
- title: t("manualIdUpload.tooManyTries"),
1196
- description: t("manualIdUpload.contactedByAdmin"),
1197
- attemptsRemaining: 0,
1198
- onButtonClick: () => manager.manualUploadContinue(),
1199
- "data-testid": "manual-upload-exhausted"
1200
- });
1201
- if (state.phase === "uploading") return /* @__PURE__ */ u(Spinner, {
1202
- fullScreen: true,
1203
- size: "large",
1204
- title: t("manualIdUpload.holdOnASec"),
1205
- subtitle: t("idv2.manualUploadLoading.subtitle"),
1206
- className: "IncodeManualUploadLoading"
1207
- });
1208
- const bothTabs = state.showIdTab && state.showPassportTab;
1209
- const handleTabChange = (next) => {
1210
- if (isManualUploadTab(next)) manager.manualUploadChangeTab(next);
1211
- };
1212
- const hintKeys = state.activeTab === "passport" ? ["hintPassportReadable", "hintSharpAndGlareFree"] : ["hintIdReadable", "hintSharpAndGlareFree"];
1213
- const errorMessageId = state.errorSide ? `manualUploadError-${state.errorSide}` : void 0;
1214
- return /* @__PURE__ */ u(Page, {
1215
- title: t("manualIdUpload.title"),
1216
- subtitle: t("manualIdUpload.subtitle"),
1217
- "data-testid": "manual-upload-page",
1218
- className: "IncodeManualUploadPage",
1219
- children: [/* @__PURE__ */ u("div", {
1220
- class: "IncodeManualUploadContainer",
1221
- children: [bothTabs ? /* @__PURE__ */ u(Tabs, {
1222
- value: state.activeTab,
1223
- onValueChange: handleTabChange,
1224
- listClassName: "IncodeManualUploadTabsList",
1225
- triggerClassName: "IncodeManualUploadTabTrigger",
1226
- activeTriggerClassName: "IncodeManualUploadTabTrigger--active",
1227
- children: [
1228
- /* @__PURE__ */ u(Tabs.List, {
1229
- label: t("manualIdUpload.tabsLabel"),
1230
- children: [/* @__PURE__ */ u(Tabs.Trigger, {
1231
- value: "id",
1232
- children: t("manualIdUpload.id")
1233
- }), /* @__PURE__ */ u(Tabs.Trigger, {
1234
- value: "passport",
1235
- children: t("manualIdUpload.passport")
1236
- })]
1237
- }),
1238
- /* @__PURE__ */ u(Tabs.Content, {
1239
- value: "id",
1240
- children: /* @__PURE__ */ u(UploadTab, {
1241
- mode: "id",
1242
- manager,
1243
- state,
1244
- errorMessageId
1245
- })
1246
- }),
1247
- /* @__PURE__ */ u(Tabs.Content, {
1248
- value: "passport",
1249
- children: /* @__PURE__ */ u(UploadTab, {
1250
- mode: "passport",
1251
- manager,
1252
- state,
1253
- errorMessageId
1254
- })
1255
- })
1256
- ]
1257
- }) : state.showIdTab ? /* @__PURE__ */ u(UploadTab, {
1258
- mode: "id",
1259
- manager,
1260
- state,
1261
- errorMessageId
1262
- }) : state.showPassportTab ? /* @__PURE__ */ u(UploadTab, {
1263
- mode: "passport",
1264
- manager,
1265
- state,
1266
- errorMessageId
1267
- }) : null, state.errorKey && !state.errorSide ? /* @__PURE__ */ u(ManualUploadError, { errorKey: state.errorKey }) : null]
1268
- }), /* @__PURE__ */ u("div", {
1269
- class: "IncodeManualUploadFooter",
1270
- children: [/* @__PURE__ */ u("ul", {
1271
- class: "IncodeManualUploadHintCard",
1272
- "data-testid": "manual-upload-hint-card",
1273
- children: hintKeys.map((key) => /* @__PURE__ */ u("li", { children: t(`manualIdUpload.${key}`) }, key))
1274
- }), /* @__PURE__ */ u(Button, {
1275
- onClick: () => manager.manualUploadContinue(),
1276
- disabled: !state.canContinue,
1277
- "data-testid": "manual-upload-continue",
1278
- children: t("manualIdUpload.continue")
1279
- })]
1280
- })]
1281
- });
1282
- };
196
+ function getDefaultDigitalIdReturnUrl() {
197
+ if (typeof window === "undefined") return;
198
+ return `${window.location.origin}${window.location.pathname}`;
199
+ }
1283
200
  //#endregion
1284
201
  //#region src/modules/id/preloadTutorialAssets.ts
1285
202
  var started = false;
@@ -1293,13 +210,13 @@ function preloadIdTutorialAssets() {
1293
210
  ]);
1294
211
  preloadAnimations(["id.processing"], "horizontal");
1295
212
  preloadAnimations(["id.processing"], "vertical");
1296
- import("../id-tutorial-IhmAzrIF.js");
1297
- import("../back-tutorial-XdmQ0Wml.js");
1298
- import("../passport-tutorial-61vlloJS.js");
1299
- import("../id-back-of-card-B6EcmiCs.js").then((n) => n.n);
1300
- import("../id-back-of-card-vertical-B3FXhPpj.js").then((n) => n.n);
1301
- import("../id-front-of-card-V_BlLaZr.js").then((n) => n.n);
1302
- import("../id-front-of-card-vertical-CuZjL8kc.js").then((n) => n.n);
213
+ import("../id-tutorial-DM9Pkfs-.js");
214
+ import("../back-tutorial-CZrMmj1_.js");
215
+ import("../passport-tutorial-CKZZuDf_.js");
216
+ import("../id-back-of-card-C7Au2tqk.js").then((n) => n.n);
217
+ import("../id-back-of-card-vertical-CtQBFw8w.js").then((n) => n.n);
218
+ import("../id-front-of-card-BmHL_keG.js").then((n) => n.n);
219
+ import("../id-front-of-card-vertical-DkNUn2Vx.js").then((n) => n.n);
1303
220
  }
1304
221
  //#endregion
1305
222
  //#region src/modules/id/tutorialWithPermissions/howItWorksOverlay.constants.ts
@@ -1330,6 +247,7 @@ var HOW_IT_WORKS_INSTRUCTIONS = [
1330
247
  //#region src/modules/id/tutorialWithPermissions/howItWorksOverlay.tsx
1331
248
  function HowItWorksContent({ onContinue, isLoading }) {
1332
249
  const { t } = useTranslation();
250
+ const { hideFooterBranding } = useUiConfig();
1333
251
  return /* @__PURE__ */ u("div", {
1334
252
  class: "IncodeHowItWorksOverlay",
1335
253
  "data-testid": "how-it-works-overlay",
@@ -1369,10 +287,10 @@ function HowItWorksContent({ onContinue, isLoading }) {
1369
287
  children: t(HOW_IT_WORKS_INSTRUCTIONS_LABELS.START_SCAN)
1370
288
  })
1371
289
  }),
1372
- /* @__PURE__ */ u("div", {
290
+ !hideFooterBranding ? /* @__PURE__ */ u("div", {
1373
291
  class: "IncodeHowItWorksOverlayFooter",
1374
292
  children: /* @__PURE__ */ u(VerifiedByIncodeLogo, {})
1375
- })
293
+ }) : null
1376
294
  ]
1377
295
  });
1378
296
  }
@@ -1444,14 +362,22 @@ function createSlots({ manager, stage, howItWorksOpen, onOpenHowItWorks, onClose
1444
362
  var TutorialWithPermissions = ({ manager, stage }) => {
1445
363
  const { t } = useTranslation();
1446
364
  const [howItWorksOpen, setHowItWorksOpen] = d(false);
365
+ const [isAdvancing, setIsAdvancing] = d(false);
1447
366
  const isHowItWorks = stage.ux.id === CAMERA_PERMISSION_UX.HOW_IT_WORKS;
1448
- const isCtaLoading = stage.tutorialPhase !== null ? CONTINUING_TUTORIAL_PHASES.has(stage.tutorialPhase) || stage.ux.id === CAMERA_PERMISSION_UX.PENDING : true;
367
+ const isPermissionUxPending = stage.ux.id === CAMERA_PERMISSION_UX.PENDING;
368
+ const isCtaLoading = stage.tutorialPhase !== null ? CONTINUING_TUTORIAL_PHASES.has(stage.tutorialPhase) || isPermissionUxPending || isAdvancing : true;
1449
369
  const requestPermissionFromTutorial = () => manager.requestPermission();
1450
370
  function handleContinue() {
371
+ if (isAdvancing) return;
1451
372
  if (isHowItWorks) {
1452
373
  requestPermissionFromTutorial();
1453
374
  return;
1454
375
  }
376
+ if (stage.ux.id === CAMERA_PERMISSION_UX.PERMISSION_IN_CAMERA) {
377
+ setIsAdvancing(true);
378
+ manager.continueToPermission();
379
+ return;
380
+ }
1455
381
  manager.nextStep();
1456
382
  }
1457
383
  const slots = createSlots({
@@ -1481,6 +407,158 @@ var TutorialWithPermissions = ({ manager, stage }) => {
1481
407
  ] });
1482
408
  };
1483
409
  //#endregion
410
+ //#region src/modules/id/permissionInCamera/permissionInCamera.tsx
411
+ var PERMISSION_IN_CAMERA_REVEAL_ANIMATION_NAME = "incodePermissionInCameraReveal";
412
+ var PERMISSION_IN_CAMERA_REVEAL_WATCHDOG_MS = 1500;
413
+ var PermissionInCamera = ({ manager, state }) => {
414
+ const { t } = useTranslation();
415
+ const [shellReady, setShellReady] = d(false);
416
+ const requestedAutomaticallyRef = A(false);
417
+ const hasRenderedRequestingRef = A(false);
418
+ const permissionStatus = state.status === "permissions" ? state.permissionStatus : void 0;
419
+ const canRequest = permissionStatus === "idle" || permissionStatus === "motionOnly";
420
+ if (permissionStatus === "requesting") hasRenderedRequestingRef.current = true;
421
+ y(() => {
422
+ if (!shellReady || !canRequest || state.requiresMotionPermissionUserGesture || requestedAutomaticallyRef.current) return;
423
+ requestedAutomaticallyRef.current = true;
424
+ manager.requestPermission({ trigger: "automatic" });
425
+ }, [
426
+ canRequest,
427
+ manager,
428
+ shellReady,
429
+ state.requiresMotionPermissionUserGesture
430
+ ]);
431
+ const handleShellAnimationEnd = useAnimationSignal({
432
+ active: !shellReady,
433
+ animationName: PERMISSION_IN_CAMERA_REVEAL_ANIMATION_NAME,
434
+ timeoutMs: PERMISSION_IN_CAMERA_REVEAL_WATCHDOG_MS,
435
+ onComplete: () => setShellReady(true)
436
+ });
437
+ const automaticRequestReturnedToAskable = requestedAutomaticallyRef.current && hasRenderedRequestingRef.current && canRequest;
438
+ if (canRequest && (automaticRequestReturnedToAskable || state.requiresMotionPermissionUserGesture)) return /* @__PURE__ */ u(Permissions, {
439
+ manager,
440
+ permissionStatus
441
+ });
442
+ return /* @__PURE__ */ u(Page, {
443
+ hideHeader: true,
444
+ hideFooterBranding: true,
445
+ className: "IncodeIdCapturePage IncodePermissionInCameraPage",
446
+ "data-testid": "permission-in-camera",
447
+ "data-permission-status": permissionStatus,
448
+ children: /* @__PURE__ */ u(CameraView, {
449
+ stream: void 0,
450
+ children: /* @__PURE__ */ u(CameraOverlay, {
451
+ className: "IncodeCaptureOverlayId",
452
+ children: /* @__PURE__ */ u("div", {
453
+ class: "IncodePermissionInCameraContent",
454
+ onAnimationEnd: handleShellAnimationEnd,
455
+ children: [
456
+ /* @__PURE__ */ u("div", {
457
+ class: "IncodeCaptureTopSection",
458
+ children: /* @__PURE__ */ u(CameraOverlayHeader, {
459
+ title: getCaptureFrameTitle(t, state.currentMode),
460
+ subtitle: t("idv2.capture.permissionInCamera.subtitle"),
461
+ titleId: "permission-in-camera-heading",
462
+ className: "IncodePermissionInCameraHeading",
463
+ autoFocusTitle: shellReady
464
+ })
465
+ }),
466
+ /* @__PURE__ */ u(CameraFrame, {
467
+ variant: "locked",
468
+ orientation: "horizontal",
469
+ className: cn(state.currentMode === "passport" && "IncodeCaptureFramePassport")
470
+ }),
471
+ /* @__PURE__ */ u("div", {
472
+ class: "IncodeSrOnly",
473
+ "aria-live": "polite",
474
+ "aria-atomic": "true",
475
+ children: permissionStatus === "requesting" ? t("common.holdOnASec") : ""
476
+ }),
477
+ /* @__PURE__ */ u(CaptureFooter, {
478
+ className: "IncodePermissionInCameraReservedFooter",
479
+ onOpenHelp: () => void 0,
480
+ hideActions: true,
481
+ inactive: true
482
+ })
483
+ ]
484
+ })
485
+ })
486
+ })
487
+ });
488
+ };
489
+ //#endregion
490
+ //#region src/modules/id/permissionInCamera/permissionInCameraFlowTransition.tsx
491
+ var PERMISSION_IN_CAMERA_TO_CAPTURE_EXIT_ANIMATION_NAME = "incodePermissionInCameraToCaptureExit";
492
+ var PERMISSION_IN_CAMERA_TO_CAPTURE_EXIT_WATCHDOG_MS = 1e3;
493
+ /**
494
+ * Coordinates the complete Tutorial -> PermissionInCamera -> Capture visual
495
+ * flow. Core still advances synchronously; this component retains each
496
+ * outgoing screen only for its visual and accessibility handoff.
497
+ */
498
+ var PermissionInCameraFlowTransition = ({ manager, tutorialStage, permissionState, captureState }) => {
499
+ const lastTutorialStageRef = A(null);
500
+ const lastPermissionStateRef = A(null);
501
+ const permissionIsMounted = permissionState !== null;
502
+ const tutorialOwnsScreen = tutorialStage !== null && !permissionIsMounted;
503
+ if (tutorialOwnsScreen) lastTutorialStageRef.current = tutorialStage;
504
+ if (permissionState) lastPermissionStateRef.current = permissionState;
505
+ const tutorialPresence = usePresence({
506
+ present: tutorialOwnsScreen,
507
+ animationName: PERMISSION_IN_CAMERA_REVEAL_ANIMATION_NAME,
508
+ timeoutMs: PERMISSION_IN_CAMERA_REVEAL_WATCHDOG_MS,
509
+ skipExit: !permissionIsMounted
510
+ });
511
+ const captureIsMounted = captureState !== null;
512
+ const permissionPresence = usePresence({
513
+ present: permissionIsMounted,
514
+ animationName: PERMISSION_IN_CAMERA_TO_CAPTURE_EXIT_ANIMATION_NAME,
515
+ timeoutMs: PERMISSION_IN_CAMERA_TO_CAPTURE_EXIT_WATCHDOG_MS,
516
+ skipExit: !captureIsMounted
517
+ });
518
+ const isTutorialHandoff = permissionIsMounted && tutorialPresence.phase === "exiting";
519
+ const isCaptureHandoff = captureIsMounted && permissionPresence.phase === "exiting";
520
+ const retainedTutorialStage = tutorialPresence.isRendered ? lastTutorialStageRef.current : null;
521
+ const retainedPermissionState = permissionPresence.isRendered ? lastPermissionStateRef.current : null;
522
+ const handlePermissionAnimationEnd = (event) => {
523
+ tutorialPresence.onAnimationEnd(event);
524
+ permissionPresence.onAnimationEnd(event);
525
+ };
526
+ return /* @__PURE__ */ u("div", {
527
+ class: "IncodePermissionInCameraFlowStage",
528
+ children: [
529
+ captureState ? /* @__PURE__ */ u("div", {
530
+ class: "IncodePermissionInCameraFlowCaptureLayer",
531
+ "aria-hidden": isCaptureHandoff || void 0,
532
+ inert: isCaptureHandoff || void 0,
533
+ children: /* @__PURE__ */ u(CaptureAutoFocusProvider, {
534
+ enabled: !isCaptureHandoff,
535
+ children: /* @__PURE__ */ u(Capture, {
536
+ manager,
537
+ state: captureState
538
+ })
539
+ })
540
+ }, "capture") : null,
541
+ retainedPermissionState ? /* @__PURE__ */ u("div", {
542
+ class: cn("IncodePermissionInCameraFlowPermissionLayer", isCaptureHandoff && "IncodePermissionInCameraFlowPermissionLayerExiting"),
543
+ "aria-hidden": isTutorialHandoff || void 0,
544
+ inert: isTutorialHandoff || void 0,
545
+ onAnimationEnd: handlePermissionAnimationEnd,
546
+ children: /* @__PURE__ */ u(PermissionInCamera, {
547
+ manager,
548
+ state: retainedPermissionState
549
+ })
550
+ }, "permission") : null,
551
+ retainedTutorialStage ? /* @__PURE__ */ u("div", {
552
+ class: cn("IncodePermissionInCameraFlowTutorialLayer", tutorialPresence.phase === "exiting" && "IncodePermissionInCameraFlowTutorialLayerExiting"),
553
+ children: /* @__PURE__ */ u(TutorialWithPermissions, {
554
+ manager,
555
+ stage: retainedTutorialStage
556
+ })
557
+ }, "tutorial") : null
558
+ ]
559
+ });
560
+ };
561
+ //#endregion
1484
562
  //#region src/modules/id/experiments/useCameraPermissionUx.ts
1485
563
  /** Permission surfaces the treatment can alter — the dialog ones, not the full-screen ones. */
1486
564
  function isPermissionDialogSurface(state) {
@@ -1513,20 +591,26 @@ function getCameraPermissionExperimentContext(state) {
1513
591
  if (!isCameraDocumentType(state.selectedDocumentType)) return;
1514
592
  return { tutorialEnabled: state.status === ID_CAPTURE_STATUS.TUTORIAL ? true : state.tutorialEnabled };
1515
593
  }
1516
- function isCameraPermissionTreatmentSurface(state) {
1517
- if (state.status === ID_CAPTURE_STATUS.TUTORIAL) return true;
1518
- if (isPermissionsIdleBlip(state)) return state.tutorialEnabled;
1519
- return isPermissionDialogSurface(state) && state.tutorialEnabled;
594
+ function resolveCameraPermissionSurface(state) {
595
+ if (state.status === ID_CAPTURE_STATUS.TUTORIAL) return "tutorialBacked";
596
+ if (state.status === ID_CAPTURE_STATUS.LOADING) {
597
+ if (!state.tutorialEnabled) return "none";
598
+ if (isPermissionsIdleBlip(state)) return "tutorialBacked";
599
+ return CAMERA_WARMUP_LOADING_PHASES.has(state.phase) ? "permissionInCameraOnly" : "none";
600
+ }
601
+ if (isPermissionDialogSurface(state)) return state.tutorialEnabled ? "tutorialBacked" : "none";
602
+ return "none";
1520
603
  }
1521
- function collapseCameraPermissionUx(showHowItWorks, showPermissionSheet) {
604
+ function collapseCameraPermissionUx(showHowItWorks, showPermissionSheet, showPermissionInCamera) {
1522
605
  if (showHowItWorks) return { id: CAMERA_PERMISSION_UX.HOW_IT_WORKS };
1523
606
  if (showPermissionSheet) return { id: CAMERA_PERMISSION_UX.PERMISSION_SHEET };
607
+ if (showPermissionInCamera) return { id: CAMERA_PERMISSION_UX.PERMISSION_IN_CAMERA };
1524
608
  return { id: CAMERA_PERMISSION_UX.CONTROL };
1525
609
  }
1526
610
  function useCameraPermissionUx(state) {
1527
611
  const experimentContext = getCameraPermissionExperimentContext(state);
1528
612
  const experimentEnabled = experimentContext !== void 0;
1529
- const onTreatmentSurface = experimentEnabled && isCameraPermissionTreatmentSurface(state);
613
+ const surface = experimentEnabled ? resolveCameraPermissionSurface(state) : "none";
1530
614
  const howItWorksExperiment = useIdExperiment({
1531
615
  key: "cameraPermissionHowItWorks",
1532
616
  enabled: experimentEnabled,
@@ -1537,9 +621,15 @@ function useCameraPermissionUx(state) {
1537
621
  enabled: experimentEnabled,
1538
622
  conditions: experimentContext
1539
623
  });
1540
- if (!onTreatmentSurface) return { id: CAMERA_PERMISSION_UX.CONTROL };
1541
- if (howItWorksExperiment.status === EXPERIMENT_LIFECYCLE_STATUS.PENDING || permissionSheetExperiment.status === EXPERIMENT_LIFECYCLE_STATUS.PENDING) return { id: CAMERA_PERMISSION_UX.PENDING };
1542
- return collapseCameraPermissionUx(howItWorksExperiment.params.showHowItWorks, permissionSheetExperiment.params.showPermissionSheet);
624
+ const permissionInCameraExperiment = useIdExperiment({
625
+ key: "cameraPermissionInCamera",
626
+ enabled: experimentEnabled,
627
+ conditions: experimentContext
628
+ });
629
+ if (surface === "none") return { id: CAMERA_PERMISSION_UX.CONTROL };
630
+ if (howItWorksExperiment.status === EXPERIMENT_LIFECYCLE_STATUS.PENDING || permissionSheetExperiment.status === EXPERIMENT_LIFECYCLE_STATUS.PENDING || permissionInCameraExperiment.status === EXPERIMENT_LIFECYCLE_STATUS.PENDING) return { id: CAMERA_PERMISSION_UX.PENDING };
631
+ const onTutorialBackedSurface = surface === "tutorialBacked";
632
+ return collapseCameraPermissionUx(onTutorialBackedSurface && howItWorksExperiment.params.showHowItWorks, onTutorialBackedSurface && permissionSheetExperiment.params.showPermissionSheet, permissionInCameraExperiment.params.showPermissionInCamera);
1543
633
  }
1544
634
  //#endregion
1545
635
  //#region src/modules/id/useIdTutorialWithPermissionsUxStage.ts
@@ -1556,16 +646,7 @@ function isDialogBackdropStatus(ux, permissionStatus) {
1556
646
  if (ux.id === CAMERA_PERMISSION_UX.PERMISSION_SHEET) return permissionStatus === PERMISSION_DIALOG_STATUS.IDLE || permissionStatus === PERMISSION_DIALOG_STATUS.MOTION_ONLY || permissionStatus === PERMISSION_DIALOG_STATUS.REQUESTING;
1557
647
  return false;
1558
648
  }
1559
- /**
1560
- * Resolves when `TutorialWithPermissions` should render instead of the plain
1561
- * tutorial or permissions screens.
1562
- *
1563
- * - Default (non-experimental): `state.status === 'tutorial'`.
1564
- * - Camera-permission experiment: permissions dialog with tutorial backdrop
1565
- * when `tutorialEnabled` and the treatment is not control.
1566
- */
1567
- function useIdTutorialWithPermissionsUxStage(state) {
1568
- const ux = useCameraPermissionUx(state);
649
+ function resolveIdTutorialWithPermissionsUxStage(state, ux) {
1569
650
  if (state.status === ID_CAPTURE_STATUS.LOADING && state.phase === "permissionsIdle" && state.tutorialEnabled && ux.id !== CAMERA_PERMISSION_UX.CONTROL && ux.id !== CAMERA_PERMISSION_UX.PENDING) return {
1570
651
  documentType: state.selectedDocumentType,
1571
652
  mode: state.currentMode,
@@ -1590,8 +671,51 @@ function useIdTutorialWithPermissionsUxStage(state) {
1590
671
  return null;
1591
672
  }
1592
673
  //#endregion
674
+ //#region src/modules/id/useIdPermissionExperience.ts
675
+ function isCameraWarmupState(state) {
676
+ return state.status === "loading" && CAMERA_WARMUP_LOADING_PHASES.has(state.phase);
677
+ }
678
+ function resolvePermissionInCameraState(state, cameraPermissionUx, wasPermissionInCameraVisible) {
679
+ if (cameraPermissionUx.id !== CAMERA_PERMISSION_UX.PERMISSION_IN_CAMERA) return null;
680
+ if (isPermissionDialogSurface(state)) return state;
681
+ if (state.status === "loading" && state.phase === "permissionsIdle") return state;
682
+ if (wasPermissionInCameraVisible && isCameraWarmupState(state)) return state;
683
+ return null;
684
+ }
685
+ /**
686
+ * Centralizes the ID permission experiments' presentation decisions. The
687
+ * module dispatcher consumes typed surfaces and does not need to know which
688
+ * permission/loading substates belong to IDC-03 or retain handoff history.
689
+ */
690
+ function useIdPermissionExperience(state) {
691
+ const cameraPermissionUx = useCameraPermissionUx(state);
692
+ const tutorialWithPermissionsUxStage = resolveIdTutorialWithPermissionsUxStage(state, cameraPermissionUx);
693
+ const wasPermissionInCameraVisibleRef = A(false);
694
+ const permissionInCameraFlowActiveRef = A(false);
695
+ const permissionInCameraState = resolvePermissionInCameraState(state, cameraPermissionUx, wasPermissionInCameraVisibleRef.current);
696
+ const isPermissionInCameraVisible = permissionInCameraState !== null;
697
+ if (isPermissionInCameraVisible) permissionInCameraFlowActiveRef.current = true;
698
+ else if (state.status !== "capture") permissionInCameraFlowActiveRef.current = false;
699
+ const permissionInCameraCaptureState = state.status === "capture" && permissionInCameraFlowActiveRef.current ? state : null;
700
+ y(() => {
701
+ wasPermissionInCameraVisibleRef.current = isPermissionInCameraVisible;
702
+ }, [isPermissionInCameraVisible]);
703
+ return {
704
+ cameraPermissionUx,
705
+ tutorialWithPermissionsUxStage,
706
+ permissionInCameraState,
707
+ permissionInCameraCaptureState,
708
+ isPermissionRequestingLoader: state.status === "permissions" && state.permissionStatus === "requesting" && cameraPermissionUx.id === CAMERA_PERMISSION_UX.CONTROL,
709
+ isPreparingCameraLoader: state.status === "loading" && permissionInCameraState === null && tutorialWithPermissionsUxStage?.ux.id !== CAMERA_PERMISSION_UX.PERMISSION_SHEET
710
+ };
711
+ }
712
+ //#endregion
1593
713
  //#region src/modules/id/id.tsx
1594
- var MandatoryConsent = z(() => import("../mandatoryConsent-BMvNiuiY.js").then((module) => ({ default: module.MandatoryConsent })));
714
+ var MandatoryConsent = z(() => import("../mandatoryConsent-B8JxEysm.js").then((module) => ({ default: module.MandatoryConsent })));
715
+ var AgeVerification = z(() => import("../ageVerification-DGLniT4Y.js").then((module) => ({ default: module.AgeVerification })));
716
+ var DigitalIdUpload = z(() => import("../digitalIdUpload-D39gUOUa.js").then((module) => ({ default: module.DigitalIdUpload })));
717
+ var DigitalIdRedirect = z(() => import("../digitalIdRedirect-BMakPQkG.js").then((module) => ({ default: module.DigitalIdRedirect })));
718
+ var DeviceWallet = z(() => import("../deviceWallet-B0fJl22u.js").then((module) => ({ default: module.DeviceWallet })));
1595
719
  var IdContent = ({ config, manager: externalManager, onFinish, onError }) => {
1596
720
  usePreloadDisplayFont();
1597
721
  y(() => {
@@ -1602,7 +726,8 @@ var IdContent = ({ config, manager: externalManager, onFinish, onError }) => {
1602
726
  if (!config) throw new Error("ID capture config is required when no manager is provided");
1603
727
  return createIdCaptureManager({ config: {
1604
728
  ...config,
1605
- supportsOptimizingStatus: config.supportsOptimizingStatus ?? true
729
+ supportsOptimizingStatus: config.supportsOptimizingStatus ?? true,
730
+ digitalIdReturnUrl: config.digitalIdReturnUrl ?? getDefaultDigitalIdReturnUrl()
1606
731
  } });
1607
732
  }, { manageLifecycle: !externalManager });
1608
733
  useModuleTerminalCallbacks({
@@ -1611,13 +736,22 @@ var IdContent = ({ config, manager: externalManager, onFinish, onError }) => {
1611
736
  onFinish,
1612
737
  onError
1613
738
  });
1614
- const tutorialWithPermissionsUxStage = useIdTutorialWithPermissionsUxStage(state);
1615
- const isPreparingCameraLoader = state.status === "loading" && tutorialWithPermissionsUxStage?.ux.id !== CAMERA_PERMISSION_UX.PERMISSION_SHEET;
739
+ const { tutorialWithPermissionsUxStage, permissionInCameraState, permissionInCameraCaptureState, isPreparingCameraLoader, isPermissionRequestingLoader } = useIdPermissionExperience(state);
1616
740
  const { params: darkCameraLoadingParams } = useIdExperiment({
1617
741
  key: "darkCameraLoading",
1618
- enabled: isPreparingCameraLoader
742
+ enabled: isPreparingCameraLoader || isPermissionRequestingLoader
1619
743
  });
1620
744
  if (state.status === "idle") return /* @__PURE__ */ u(TransitionSpinner, { renderMode: "spinnerOnly" });
745
+ if (tutorialWithPermissionsUxStage?.ux.id === CAMERA_PERMISSION_UX.PERMISSION_IN_CAMERA || permissionInCameraState !== null || permissionInCameraCaptureState !== null) return /* @__PURE__ */ u(PermissionInCameraFlowTransition, {
746
+ manager,
747
+ tutorialStage: tutorialWithPermissionsUxStage,
748
+ permissionState: permissionInCameraState,
749
+ captureState: permissionInCameraCaptureState
750
+ });
751
+ if (tutorialWithPermissionsUxStage) return /* @__PURE__ */ u(TutorialWithPermissions, {
752
+ manager,
753
+ stage: tutorialWithPermissionsUxStage
754
+ });
1621
755
  if (isPreparingCameraLoader) return /* @__PURE__ */ u(TransitionSpinner, {
1622
756
  titleKey: "loadingCircle.holdOn",
1623
757
  subtitleKey: "loadingCircle.preparingCamera",
@@ -1627,14 +761,16 @@ var IdContent = ({ config, manager: externalManager, onFinish, onError }) => {
1627
761
  manager,
1628
762
  state
1629
763
  });
1630
- if (state.status === "ageVerification") return /* @__PURE__ */ u(AgeVerification, { manager });
1631
- if (tutorialWithPermissionsUxStage) return /* @__PURE__ */ u(TutorialWithPermissions, {
1632
- manager,
1633
- stage: tutorialWithPermissionsUxStage
764
+ if (state.status === "ageVerification") return /* @__PURE__ */ u(P, {
765
+ fallback: null,
766
+ children: /* @__PURE__ */ u(AgeVerification, { manager })
1634
767
  });
1635
- if (state.status === "permissions") return /* @__PURE__ */ u(Permissions, {
1636
- manager,
1637
- permissionStatus: state.permissionStatus
768
+ if (state.status === "permissions") return /* @__PURE__ */ u(PermissionsProvider, {
769
+ value: { alwaysDark: darkCameraLoadingParams.showDarkCameraLoading },
770
+ children: /* @__PURE__ */ u(Permissions, {
771
+ manager,
772
+ permissionStatus: state.permissionStatus
773
+ })
1638
774
  });
1639
775
  if (state.status === "frontFinished" || state.status === "backFinished") return /* @__PURE__ */ u(IdFlipTransition, {
1640
776
  manager,
@@ -1665,21 +801,26 @@ var IdContent = ({ config, manager: externalManager, onFinish, onError }) => {
1665
801
  state,
1666
802
  onError
1667
803
  });
1668
- if (state.status === "manualUpload") return /* @__PURE__ */ u(ManualUpload, {
1669
- manager,
1670
- state
1671
- });
1672
- if (state.status === "digitalIdUpload") return /* @__PURE__ */ u(DigitalIdUpload, {
1673
- manager,
1674
- state
804
+ if (state.status === "digitalIdUpload") return /* @__PURE__ */ u(P, {
805
+ fallback: null,
806
+ children: /* @__PURE__ */ u(DigitalIdUpload, {
807
+ manager,
808
+ state
809
+ })
1675
810
  });
1676
- if (state.status === "digitalIdRedirect") return /* @__PURE__ */ u(DigitalIdRedirect, {
1677
- manager,
1678
- state
811
+ if (state.status === "digitalIdRedirect") return /* @__PURE__ */ u(P, {
812
+ fallback: null,
813
+ children: /* @__PURE__ */ u(DigitalIdRedirect, {
814
+ manager,
815
+ state
816
+ })
1679
817
  });
1680
- if (state.status === "deviceWallet") return /* @__PURE__ */ u(DeviceWallet, {
1681
- manager,
1682
- state
818
+ if (state.status === "deviceWallet") return /* @__PURE__ */ u(P, {
819
+ fallback: null,
820
+ children: /* @__PURE__ */ u(DeviceWallet, {
821
+ manager,
822
+ state
823
+ })
1683
824
  });
1684
825
  return null;
1685
826
  };