@incodetech/web 2.2.0 → 2.3.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 (296) hide show
  1. package/THIRD_PARTY_NOTICES.txt +398 -0
  2. package/dist/ae-signature/ae-signature.es.js +4 -4
  3. package/dist/af-ZA-CiGNWICE.js +3043 -0
  4. package/dist/am-C5YehVGG.js +3043 -0
  5. package/dist/antifraud/antifraud.es.js +4 -4
  6. package/dist/ar-AE-BMJuIKTB.js +3059 -0
  7. package/dist/ar-CUw7KMHb.js +3059 -0
  8. package/dist/ar-EG-ojf2Ene5.js +3059 -0
  9. package/dist/assets/dm-sans-latin-400-normal.woff2 +0 -0
  10. package/dist/assets/dm-sans-latin-500-normal.woff2 +0 -0
  11. package/dist/assets/dm-sans-latin-600-normal.woff2 +0 -0
  12. package/dist/assets/dm-sans-latin-700-normal.woff2 +0 -0
  13. package/dist/assets/rethink-sans-latin-800-normal.woff2 +0 -0
  14. package/dist/authentication/authentication.es.js +15 -11
  15. package/dist/{autoFocusTitle-DB-23sv_.js → autoFocusTitle-CVjuQOGZ.js} +2 -2
  16. package/dist/az-DsqjgKhY.js +3043 -0
  17. package/dist/{back-horizontal-hint-CjdigFZj.js → back-horizontal-hint-UQ7Nof6k.js} +1 -1
  18. package/dist/{back-vertical-hint-OhaKsINF.js → back-vertical-hint-Crc8ybfk.js} +1 -1
  19. package/dist/base.css +917 -283
  20. package/dist/baseTutorial-BM2Ho3QZ.js +172 -0
  21. package/dist/bn-Bbn6O_i2.js +3043 -0
  22. package/dist/bottomSheet-Cixb81_b.js +101 -0
  23. package/dist/bs-CYW5eATI.js +3047 -0
  24. package/dist/ca-D5u2Z71o.js +3043 -0
  25. package/dist/cameraOverlay-MpL3OBQu.js +2 -0
  26. package/dist/cameraOverlayHeader-BarDrIC9.js +43 -0
  27. package/dist/cameraView-BNqv7JUh.js +49 -0
  28. package/dist/captureFooter-De74TCQi.js +67 -0
  29. package/dist/ceb-tXsl4nyX.js +3043 -0
  30. package/dist/certificate-issuance/certificate-issuance.es.js +19 -14
  31. package/dist/certificate-issuance/styles.css.js +1 -0
  32. package/dist/{checkbox-FGA-Ij-D.js → checkbox-BR-RTI4R.js} +9 -8
  33. package/dist/{connectionError-BurQq_4R.js → connectionError-Haw33Di8.js} +4 -4
  34. package/dist/consent/consent.es.js +26 -33
  35. package/dist/consent/styles.css +4 -4
  36. package/dist/consent/styles.css.js +1 -0
  37. package/dist/countries-5e8kwG_m.js +8560 -0
  38. package/dist/{countrySelector-COZ7XQHp.js → countrySelector-Zbe2eGzy.js} +8 -10
  39. package/dist/cross-document-data-match/cross-document-data-match.es.js +4 -4
  40. package/dist/cs-CZ-BUx_DNTa.js +3051 -0
  41. package/dist/cs-D_6Vg3XS.js +3051 -0
  42. package/dist/curp-validation/curp-validation.es.js +15 -22
  43. package/dist/curp-validation/styles.css.js +1 -0
  44. package/dist/custom-fields/styles.css.js +1 -0
  45. package/dist/{customFields-rVMTo1Yu.js → customFields-CEFWn2wC.js} +44 -19
  46. package/dist/{customWatchlist-DgpXtVRf.js → customWatchlist-Xn3d-zbf.js} +14 -11
  47. package/dist/da-DK-CsmjiCBo.js +3043 -0
  48. package/dist/{dashboardTheme-BUDq5UYs.js → dashboardTheme-B_YjGFDU.js} +31 -7
  49. package/dist/dateInputComposed-0tUVTT0_.js +1 -0
  50. package/dist/{dateInputComposed-DSgV0wnb.js → dateInputComposed-ByhgHDX8.js} +5 -5
  51. package/dist/de-BsJlhx6J.js +3043 -0
  52. package/dist/{manualCaptureButton-D58WsS-x.js → denied-CB1v3PyY.js} +270 -233
  53. package/dist/document-capture/document-capture.es.js +1 -1
  54. package/dist/document-capture/styles.css +4 -4
  55. package/dist/document-capture/styles.css.js +1 -0
  56. package/dist/{documentCapture-sZj09g0I.js → documentCapture-Cj8G5Wgb.js} +16 -17
  57. package/dist/documentCapture-D0o4Xh1J.js +2 -0
  58. package/dist/dropdownComposed-BsEtJjhn.js +1 -0
  59. package/dist/{dropdownComposed-CEegNzG4.js → dropdownComposed-DptsxuHA.js} +9 -9
  60. package/dist/{dynamicForms-t3vepXqJ.js → dynamic-forms/dynamic-forms.es.js} +24 -19
  61. package/dist/dynamic-forms/styles.css +5 -0
  62. package/dist/dynamic-forms/styles.css.js +1 -0
  63. package/dist/ekyb/ekyb.es.js +1 -1
  64. package/dist/ekyb/styles.css +15 -13
  65. package/dist/ekyb/styles.css.js +1 -0
  66. package/dist/ekybModule-B-gioC08.js +2 -0
  67. package/dist/{ekybModule-Dvkf5WAr.js → ekybModule-DqA0hfNQ.js} +17 -30
  68. package/dist/ekyc/ekyc.es.js +1 -1
  69. package/dist/ekyc/styles.css +17 -16
  70. package/dist/ekyc/styles.css.js +1 -0
  71. package/dist/ekycModule-CjkpPQ3f.js +2 -0
  72. package/dist/{ekycModule-C5QXVGP7.js → ekycModule-bRC6FW2H.js} +14 -29
  73. package/dist/el-Dq-L-4X5.js +3043 -0
  74. package/dist/el-GR-c9roJIs_.js +3043 -0
  75. package/dist/electronic-signature/electronic-signature.es.js +1 -1
  76. package/dist/electronic-signature/styles.css +62 -2
  77. package/dist/electronic-signature/styles.css.js +1 -0
  78. package/dist/{electronic-signature-CyE8F7LZ.js → electronic-signature-DRMdCzdF.js} +65 -18
  79. package/dist/email/email.es.js +9 -8
  80. package/dist/email/styles.css.js +1 -0
  81. package/dist/{emailInput-CsT8_C01.js → emailInput-Dz8ukhAE.js} +4 -4
  82. package/dist/en-CmZT05w8.js +3043 -0
  83. package/dist/en-DG-BQHfwiXE.js +3043 -0
  84. package/dist/errorContent-aJuo21I4.js +58 -0
  85. package/dist/es-419-CoqfXTDl.js +3043 -0
  86. package/dist/es-DXFWBB40.js +3043 -0
  87. package/dist/es-ES-TOSb7vSR.js +3043 -0
  88. package/dist/es-MX-CpubyuFB.js +3043 -0
  89. package/dist/et-dg12JfIX.js +3043 -0
  90. package/dist/{expiredId-BQ1uPh7b.js → expiredId-BPgVum6e.js} +22 -27
  91. package/dist/extensibility.es.js +701 -24
  92. package/dist/fa-IR-TKcZgrd1.js +3043 -0
  93. package/dist/face-match/face-match.es.js +1 -1
  94. package/dist/face-match/styles.css +76 -40
  95. package/dist/face-match/styles.css.js +1 -0
  96. package/dist/{faceMatch-Rf-MMdto.js → faceMatch-BcScQR2O.js} +7 -8
  97. package/dist/faceMatch-BvaN_Ggn.js +2 -0
  98. package/dist/fi-FI-BP9vgY5F.js +3043 -0
  99. package/dist/field-comparison/field-comparison.es.js +1 -1
  100. package/dist/field-comparison/styles.css +12 -0
  101. package/dist/field-comparison/styles.css.js +1 -0
  102. package/dist/fieldComparison-D4YoXJKX.js +2 -0
  103. package/dist/{fieldComparison-BnGj3nNp.js → fieldComparison-UKZsi875.js} +27 -11
  104. package/dist/fieldLabelHint-CxjArYkQ.js +16 -0
  105. package/dist/{finalSuccessScreen-B9uB3bST.js → finalSuccessScreen-7OX0TdIz.js} +13 -14
  106. package/dist/fiscal-qr/fiscal-qr.es.js +28 -9
  107. package/dist/fiscal-qr/styles.css +13 -1
  108. package/dist/fiscal-qr/styles.css.js +1 -0
  109. package/dist/{extensibility-C5XqL_A3.js → flipAnimation-BwI4pEJc.js} +608 -1005
  110. package/dist/flow/flow.es.js +308 -62
  111. package/dist/flow/shell/styles.css +402 -0
  112. package/dist/flow/shell/styles.css.js +1 -0
  113. package/dist/flow/styles.css +582 -312
  114. package/dist/formField-DWExlgnz.js +60 -0
  115. package/dist/fr-B4LoNDGy.js +3047 -0
  116. package/dist/fr-CA-CjN8CDsE.js +3047 -0
  117. package/dist/{front-horizontal-hint-Bhz1rq-w.js → front-horizontal-hint-mgovnJf3.js} +1 -1
  118. package/dist/{front-vertical-hint-C4FC1ksx.js → front-vertical-hint-qXMVdLri.js} +1 -1
  119. package/dist/geolocation/geolocation.es.js +9 -9
  120. package/dist/geolocation/styles.css +4 -4
  121. package/dist/geolocation/styles.css.js +1 -0
  122. package/dist/government-validation/government-validation.es.js +38 -86
  123. package/dist/government-validation/styles.css +2 -38
  124. package/dist/government-validation/styles.css.js +1 -0
  125. package/dist/he-CJNS0xku.js +3051 -0
  126. package/dist/hi-CoHu7PnX.js +3043 -0
  127. package/dist/hmn-qubMIB6T.js +3043 -0
  128. package/dist/{homeScreen-Bv9mUUOF.js → homeScreen-CqLbJbhW.js} +8 -7
  129. package/dist/hr-N3Dy9ndd.js +3047 -0
  130. package/dist/ht-iHGiGZhO.js +3043 -0
  131. package/dist/hu-hlQUlAJs.js +3043 -0
  132. package/dist/{icons-ChHV5iHi.js → icons-DNXYxUPA.js} +99 -11
  133. package/dist/id/id.es.js +576 -62
  134. package/dist/id/styles.css +114 -45
  135. package/dist/id/styles.css.js +1 -0
  136. package/dist/id-Dhk7ywrq.js +3037 -0
  137. package/dist/{id-back-of-card-C4XViC7W.js → id-back-of-card-B6EcmiCs.js} +1 -1
  138. package/dist/{id-back-of-card-vertical-DCz0rj8m.js → id-back-of-card-vertical-B3FXhPpj.js} +1 -1
  139. package/dist/{id-front-of-card-CUA1ocVF.js → id-front-of-card-V_BlLaZr.js} +1 -1
  140. package/dist/{id-front-of-card-vertical-Ddm_BwD3.js → id-front-of-card-vertical-CuZjL8kc.js} +1 -1
  141. package/dist/id-ocr/styles.css.js +1 -0
  142. package/dist/id-selfie-flow/id-selfie-flow.es.js +10 -9
  143. package/dist/id-selfie-flow/styles.css +40 -8
  144. package/dist/id-verification/id-verification.es.js +5 -5
  145. package/dist/{idOcr-Da1-2sWY.js → idOcr-Bt0V72id.js} +13 -16
  146. package/dist/identity-reuse/identity-reuse.es.js +8 -113
  147. package/dist/identity-reuse/styles.css +1 -1
  148. package/dist/{incode-logo-DeIDDejm.js → incode-logo-BzJOZr3f.js} +1 -64
  149. package/dist/{incodeComponent-BtFz-bx2.js → incodeComponent-DeVV0gEn.js} +192 -22
  150. package/dist/{incodeModule-9K8KUs61.js → incodeModule-Do8qpZk7.js} +3 -3
  151. package/dist/index.es.js +4 -3
  152. package/dist/{inputComposed-C2zTEXsp.js → inputComposed-9aPipTS_.js} +9 -9
  153. package/dist/inputComposed-DZokKK4c.js +1 -0
  154. package/dist/it-CXYuJ5BQ.js +3043 -0
  155. package/dist/ja-B5OkMrWD.js +3037 -0
  156. package/dist/ja-JP-SlPp7xE2.js +3037 -0
  157. package/dist/jv-DduD6MhM.js +3037 -0
  158. package/dist/ka-CG2wabuB.js +3043 -0
  159. package/dist/kk-D984nBRQ.js +3043 -0
  160. package/dist/km-B-DaaNxL.js +3037 -0
  161. package/dist/ko-B8I6YPOu.js +3037 -0
  162. package/dist/ko-KP-BTQZdVex.js +3037 -0
  163. package/dist/ky-p_wAYlXq.js +3043 -0
  164. package/dist/lo-CS-RhXrt.js +3037 -0
  165. package/dist/lt-C1yAMYTU.js +3051 -0
  166. package/dist/lv-CiHCsaN9.js +3047 -0
  167. package/dist/{mandatoryConsent-CxShVycM.js → mandatoryConsent-BJcDf3s-.js} +10 -7
  168. package/dist/manualCaptureButton-2RTC1vZC.js +63 -0
  169. package/dist/{manualCaptureButton-DzJFIEfu.js → manualCaptureButton-CqwPCE8h.js} +10 -55
  170. package/dist/mk-VumecXcv.js +3043 -0
  171. package/dist/mn-DGMJpCs6.js +3043 -0
  172. package/dist/{modal-BH2wi8Q0.js → modal-H_YHBjxJ.js} +7 -6
  173. package/dist/{modal.hooks-DcakflQ4.js → modal.hooks-B0Wrc9s2.js} +7 -1
  174. package/dist/ms-CBk2NkZ1.js +3037 -0
  175. package/dist/my-BWcPvvs5.js +3037 -0
  176. package/dist/nb-NO-D7azau2s.js +3043 -0
  177. package/dist/ne-D9CU-qx6.js +3043 -0
  178. package/dist/nl-BVhLZVXm.js +3043 -0
  179. package/dist/{numberedStep-DqtXyT11.js → numberedStep-C8e_uPaz.js} +1 -1
  180. package/dist/{optionAccessibleLabel-C5iZCrlq.js → optionAccessibleLabel-C0BRq4LF.js} +6 -6
  181. package/dist/{otpInput-CvPR3ZpP.js → otpInput-C8mlw_Cm.js} +8 -83
  182. package/dist/{passport-horizontal-hint-DzkhjC8Q.js → passport-horizontal-hint-6Ghn2EEN.js} +1 -1
  183. package/dist/{passport-vertical-hint-Bd0BQn2Y.js → passport-vertical-hint-UPFFpdf4.js} +1 -1
  184. package/dist/passwordInputComposed-CDbxJKHR.js +74 -0
  185. package/dist/{pdf-BUoY_2gv.js → pdf-CFubyG0B.js} +1 -1
  186. package/dist/pdfViewer-CCu7pBQv.js +2 -0
  187. package/dist/{pdfViewer-TTZmPABh.js → pdfViewer-DTwxqwSD.js} +4 -4
  188. package/dist/permissions-B0ctl0V9.js +212 -0
  189. package/dist/phone/phone.es.js +10 -9
  190. package/dist/phone/styles.css +1 -1
  191. package/dist/phone/styles.css.js +1 -0
  192. package/dist/{phoneInputComposed-byyszNoS.js → phoneInputComposed-Bz37hY_u.js} +20 -8412
  193. package/dist/pl-DWKpY783.js +3051 -0
  194. package/dist/{processing-B2eaSGLu.js → processing-CrNgzN1u.js} +2 -2
  195. package/dist/pt-B2_-n4Z3.js +3043 -0
  196. package/dist/pt-BR-CC8MxgMX.js +3043 -0
  197. package/dist/pt-PT-vo9--bzz.js +3043 -0
  198. package/dist/qe-signature/qe-signature.es.js +4 -4
  199. package/dist/radioGroupComposed-BFzxJVpZ.js +1 -0
  200. package/dist/{radioGroupComposed-DQzTWutW.js → radioGroupComposed-BrawV4FU.js} +15 -71
  201. package/dist/redirect-to-mobile/redirect-to-mobile.es.js +34 -178
  202. package/dist/redirect-to-mobile/styles.css +2 -27
  203. package/dist/redirect-to-mobile/styles.css.js +1 -0
  204. package/dist/{registerIncodeElement-DW2PE_DX.js → registerIncodeElement-CbZczi4S.js} +1 -1
  205. package/dist/resendTimer-C0HqF9VE.js +79 -0
  206. package/dist/{useModuleLoader-DxOEZ0vn.js → resolveApiKey-DU0APKTv.js} +70 -222
  207. package/dist/{richText-CEwM8jib.js → richText-BEuqr0as.js} +9 -9
  208. package/dist/ro-DOhwcTr3.js +3047 -0
  209. package/dist/ru-CD71PeIH.js +3051 -0
  210. package/dist/ru-RU-DLHiNY0O.js +3051 -0
  211. package/dist/selfie/selfie.es.js +184 -8
  212. package/dist/selfie/styles.css +225 -36
  213. package/dist/selfie/styles.css.js +1 -0
  214. package/dist/signature/signature.es.js +8 -9
  215. package/dist/signature/styles.css.js +1 -0
  216. package/dist/sk-DaVWjX4k.js +3051 -0
  217. package/dist/sl-YiCpfUol.js +3051 -0
  218. package/dist/smsTabContent-C1C1g4GT.js +172 -0
  219. package/dist/so-B2bRmOT5.js +3043 -0
  220. package/dist/{spacer-DLEDuWEx.js → spacer-DZ-t7RMQ.js} +10 -10
  221. package/dist/spinner-hjbTcmA1.js +88 -0
  222. package/dist/sr-BbjKCO-a.js +3047 -0
  223. package/dist/sr-Latn-D-xKaOqV.js +3047 -0
  224. package/dist/sr-YU-1ULH6b8i.js +3047 -0
  225. package/dist/{statusPage-BF4qGjF3.js → statusPage-DeP-KBHD.js} +4 -4
  226. package/dist/sv-SE-5wAQ-CsE.js +3043 -0
  227. package/dist/sw-DVj-0--U.js +3043 -0
  228. package/dist/{tabs-BGL1oRLb.js → tabs-C8WsKO4V.js} +2 -2
  229. package/dist/th-TH-DAqLZmwn.js +3037 -0
  230. package/dist/th-ubpxty9O.js +3037 -0
  231. package/dist/themes/dark.css +125 -0
  232. package/dist/themes/light.css +124 -0
  233. package/dist/tl-DCL6tS5T.js +3043 -0
  234. package/dist/tl-PH-Wftt86RZ.js +3043 -0
  235. package/dist/tr-B58sWy89.js +3043 -0
  236. package/dist/{tutorial-LQuJ4dse.js → tutorial-BP1F722m.js} +40 -226
  237. package/dist/types/certificate-issuance.d.ts +4 -4
  238. package/dist/types/dynamic-forms.d.ts +177 -0
  239. package/dist/types/extensibility.d.ts +75 -23
  240. package/dist/types/flow.d.ts +37 -0
  241. package/dist/types/government-validation.d.ts +2 -1
  242. package/dist/types/index.d.ts +28 -4
  243. package/dist/types/video-selfie.d.ts +6 -161
  244. package/dist/typography-CYO7ELEl.js +53 -0
  245. package/dist/{uiConfig-Dqnjankd.js → uiConfig-BcjOx3PY.js} +184 -8
  246. package/dist/uk-BaklGIxd.js +3051 -0
  247. package/dist/uk-UA-BoawOp_y.js +3051 -0
  248. package/dist/ur-MYw3j3wD.js +3043 -0
  249. package/dist/useModuleLoader-DpcbSKBH.js +176 -0
  250. package/dist/uz-DWfToWrZ.js +3043 -0
  251. package/dist/{vendor-preact-BPXMFRom.js → vendor-preact-C0jX1Cbq.js} +68 -181
  252. package/dist/{verificationResult-q_zD_Pxh.js → verificationResult-Bre5Fb7M.js} +32 -25
  253. package/dist/vi-IY_487Pk.js +3037 -0
  254. package/dist/video-selfie/styles.css +51 -17
  255. package/dist/video-selfie/styles.css.js +1 -0
  256. package/dist/video-selfie/video-selfie.es.js +35 -23
  257. package/dist/watchlist/watchlist.es.js +7 -7
  258. package/dist/watchlist-for-business/styles.css.js +1 -0
  259. package/dist/{watchlistForBusiness-C_zqdY4P.js → watchlistForBusiness-BIrl-mYj.js} +28 -16
  260. package/dist/workflow/styles.css +1073 -356
  261. package/dist/workflow/workflow.es.js +17 -15
  262. package/dist/zh-B1yRDjHf.js +3037 -0
  263. package/dist/zh-CN-B2Yvvabk.js +3037 -0
  264. package/dist/zh-HANT-CdNxQtKM.js +3037 -0
  265. package/dist/zh-TW-BgqFmnMA.js +3037 -0
  266. package/package.json +32 -22
  267. package/dist/bottomSheet-BWEUBq8m.js +0 -38
  268. package/dist/dateInputComposed-BGC37jC7.js +0 -1
  269. package/dist/documentCapture-CO9kIxru.js +0 -2
  270. package/dist/dropdownComposed-Bf4EcKFw.js +0 -1
  271. package/dist/ekybModule-uN0ComAn.js +0 -2
  272. package/dist/ekycModule-B7KRJ7l3.js +0 -2
  273. package/dist/faceMatch-DjD2hgBp.js +0 -2
  274. package/dist/fieldComparison-DFH4hUM_.js +0 -2
  275. package/dist/inputComposed-kKtrvJU5.js +0 -1
  276. package/dist/pdfViewer-C1B-07Wu.js +0 -2
  277. package/dist/requiredLabelHint-Dx0WS2cR.js +0 -17
  278. package/dist/snackbar-eBOj46AK.js +0 -16
  279. package/dist/spinner-CJCOHUKx.js +0 -95
  280. package/dist/successIcon-DS8BLsgy.js +0 -30
  281. package/dist/types/dynamic-forms/styles.d.ts +0 -1
  282. /package/dist/{aligndevicelottie-CfoZ5Uus.js → aligndevicelottie-B12hbVhG.js} +0 -0
  283. /package/dist/{back-tutorial-BHyRHyET.js → back-tutorial-XdmQ0Wml.js} +0 -0
  284. /package/dist/{backdevicelottie-yKkczgFy.js → backdevicelottie-m_DOD8xE.js} +0 -0
  285. /package/dist/{blurdevicelottie-8BbophdM.js → blurdevicelottie-DQo_hTMD.js} +0 -0
  286. /package/dist/{browser-ponyfill-CBjGwwPW.js → browser-ponyfill-ZkeBm4ji.js} +0 -0
  287. /package/dist/{defineProperty-BbpBna-2.js → defineProperty-BojnCa44.js} +0 -0
  288. /package/dist/{flip-animation-CvN8FLNc.js → flip-animation-VicedlT5.js} +0 -0
  289. /package/dist/{frontdevicelottie-CFcahVLk.js → frontdevicelottie-CyIerlMv.js} +0 -0
  290. /package/dist/{glaredevicelottie-Cnvah0kz.js → glaredevicelottie-QM2C6Ivp.js} +0 -0
  291. /package/dist/{id-laser-h-BaUHzX-d.js → id-laser-h-B0-iXcvl.js} +0 -0
  292. /package/dist/{id-laser-v-Dv9yEYJE.js → id-laser-v-Bqh6vimi.js} +0 -0
  293. /package/dist/{id-tutorial-BOOsXlAJ.js → id-tutorial-IhmAzrIF.js} +0 -0
  294. /package/dist/{lottie_light-Bv56F2Ae.js → lottie_light-CzZ3CHBk.js} +0 -0
  295. /package/dist/{passport-tutorial-CeSup6m9.js → passport-tutorial-61vlloJS.js} +0 -0
  296. /package/dist/{selfieTutorial-CYa8bq6B.js → selfieTutorial-BRQ2QNxQ.js} +0 -0
@@ -1,24 +1,701 @@
1
- import { a as useTranslation, n as setUiConfig } from "./uiConfig-Dqnjankd.js";
2
- import { b as useManager, n as LandscapeBlocker, o as Page, t as IncodeComponent, y as useScreenOrientation } from "./incodeComponent-BtFz-bx2.js";
3
- import { o as Lottie, t as Spacer } from "./spacer-DLEDuWEx.js";
4
- import { a as TypographyH4, i as TypographyH3, n as Title, o as TypographyH5, r as TypographyH1, s as TypographyP, t as Spinner } from "./spinner-CJCOHUKx.js";
5
- import { n as ErrorIcon, r as Button } from "./incode-logo-DeIDDejm.js";
6
- import { _ as TextArea, b as ProgressBar, d as CaptureFooter, f as CameraOverlayHeader, g as TextAreaComposed, h as VerificationOptionCardList, i as Capture, m as VerificationOptionCard, n as Chooser, o as IdExpired, p as CameraOverlay, r as Tutorial, s as IdError, t as FlipAnimation, u as ManualCapture, v as SegmentedDateInput, x as Overlay, y as PasswordInputComposed } from "./extensibility-C5XqL_A3.js";
7
- import { t as Processing } from "./processing-B2eaSGLu.js";
8
- import { _ as CalendarIcon, a as FileIcon, c as EllipseIcon, d as ChevronLeftIcon, f as ChevronDown, g as CameraIcon, h as CaptureButtonIcon, i as HelpIcon, l as CloseIcon, m as CheckmarkIcon, n as SearchIcon, o as EyeOffIcon, p as CheckmarkCompactIcon, r as LockIcon, s as EyeIcon, t as SvgLightningIcon, u as ChevronRightIcon, v as WarningIcon } from "./icons-ChHV5iHi.js";
9
- import { t as SuccessIcon } from "./successIcon-DS8BLsgy.js";
10
- import { t as Modal } from "./modal-BH2wi8Q0.js";
11
- import { i as ErrorContent, n as Capture$1, r as BaseTutorial, t as Tutorial$1 } from "./tutorial-LQuJ4dse.js";
12
- import { t as VerificationResult } from "./verificationResult-q_zD_Pxh.js";
13
- import { t as ConnectionError } from "./connectionError-BurQq_4R.js";
14
- import { n as Input, t as InputComposed } from "./inputComposed-C2zTEXsp.js";
15
- import { t as OtpInput } from "./otpInput-CvPR3ZpP.js";
16
- import { t as Checkbox } from "./checkbox-FGA-Ij-D.js";
17
- import { n as RadioButtonComposed, r as FormField, t as RadioGroupComposed } from "./radioGroupComposed-DQzTWutW.js";
18
- import { i as getCountryByCode, n as countries, r as getCountryByCallingCode, t as PhoneInputComposed } from "./phoneInputComposed-byyszNoS.js";
19
- import { t as DropdownComposed } from "./dropdownComposed-CEegNzG4.js";
20
- import { t as DateInputComposed } from "./dateInputComposed-DSgV0wnb.js";
21
- import { t as BottomSheet } from "./bottomSheet-BWEUBq8m.js";
22
- import { a as CameraView, o as CameraFrame } from "./manualCaptureButton-DzJFIEfu.js";
23
- import { n as Permissions } from "./manualCaptureButton-D58WsS-x.js";
24
- export { BaseTutorial, BottomSheet, Button, CalendarIcon, CameraFrame, CameraIcon, CameraOverlay, CameraOverlayHeader, CameraView, CaptureButtonIcon, CaptureFooter, Checkbox, CheckmarkCompactIcon, CheckmarkIcon, ChevronDown, ChevronLeftIcon, ChevronRightIcon, CloseIcon, ConnectionError, DateInputComposed, DropdownComposed, EllipseIcon, ErrorContent, ErrorIcon, EyeIcon, EyeOffIcon, FileIcon, FormField, HelpIcon, Capture as IdCapture, Chooser as IdChooser, IdError, IdExpired, FlipAnimation as IdFlipAnimation, Tutorial as IdTutorial, IncodeComponent, Input, InputComposed, LandscapeBlocker, SvgLightningIcon as LightningIcon, LockIcon, Lottie, ManualCapture, Modal, OtpInput, Overlay, Page, PasswordInputComposed, Permissions, PhoneInputComposed, Processing, ProgressBar, RadioButtonComposed, RadioGroupComposed, SearchIcon, SegmentedDateInput, Capture$1 as SelfieCapture, Tutorial$1 as SelfieTutorial, Spacer, Spinner, SuccessIcon, TextArea, TextAreaComposed, Title, TypographyH1, TypographyH3, TypographyH4, TypographyH5, TypographyP, VerificationOptionCard, VerificationOptionCardList, VerificationResult, WarningIcon, countries, getCountryByCallingCode, getCountryByCode, setUiConfig, useManager, useScreenOrientation, useTranslation };
1
+ import { n as setUiConfig, o as useTranslation } from "./uiConfig-BcjOx3PY.js";
2
+ import { S as k, _ as y, c as A, f as d, h as q, i as D, u as T, v as u } from "./vendor-preact-C0jX1Cbq.js";
3
+ import { S as useManager, c as Page, n as LandscapeBlocker, t as IncodeComponent, x as useScreenOrientation } from "./incodeComponent-DeVV0gEn.js";
4
+ import { d as cn, o as Lottie, t as Spacer } from "./spacer-DZ-t7RMQ.js";
5
+ import { a as TypographyH5, i as TypographyH4, n as TypographyH1, o as TypographyP, r as TypographyH3, t as Title } from "./typography-CYO7ELEl.js";
6
+ import { t as Spinner } from "./spinner-hjbTcmA1.js";
7
+ import { _ as CaptureButtonIcon, a as LockIcon, b as ErrorIcon, c as EyeOffIcon, d as CloseIcon, f as ChevronRightIcon, g as CheckmarkIcon, h as CheckmarkCompactIcon, i as SearchIcon, l as EyeIcon, m as ChevronDown, n as WarningIcon, o as HelpIcon, p as ChevronLeftIcon, r as SuccessIcon, s as FileIcon, t as SvgLightningIcon, u as EllipseIcon, v as CameraIcon, x as Button, y as CalendarIcon } from "./icons-DNXYxUPA.js";
8
+ import { t as Processing } from "./processing-CrNgzN1u.js";
9
+ import { t as Modal } from "./modal-H_YHBjxJ.js";
10
+ import { t as ErrorContent } from "./errorContent-aJuo21I4.js";
11
+ import { t as VerificationResult } from "./verificationResult-Bre5Fb7M.js";
12
+ import { t as ConnectionError } from "./connectionError-Haw33Di8.js";
13
+ import { n as ProgressBar, t as CaptureFooter } from "./captureFooter-De74TCQi.js";
14
+ import { n as Input, t as InputComposed } from "./inputComposed-9aPipTS_.js";
15
+ import { t as FieldLabelHint } from "./fieldLabelHint-CxjArYkQ.js";
16
+ import "./inputComposed-DZokKK4c.js";
17
+ import { t as PasswordInputComposed } from "./passwordInputComposed-CDbxJKHR.js";
18
+ import { t as OtpInput } from "./otpInput-C8mlw_Cm.js";
19
+ import { t as Checkbox } from "./checkbox-BR-RTI4R.js";
20
+ import { t as FormField } from "./formField-DWExlgnz.js";
21
+ import { a as getCountryByCode, i as getCountryByCallingCode, r as countries } from "./countries-5e8kwG_m.js";
22
+ import { t as PhoneInputComposed } from "./phoneInputComposed-Bz37hY_u.js";
23
+ import { t as DropdownComposed } from "./dropdownComposed-DptsxuHA.js";
24
+ import "./dropdownComposed-BsEtJjhn.js";
25
+ import { t as DateInputComposed } from "./dateInputComposed-ByhgHDX8.js";
26
+ import "./dateInputComposed-0tUVTT0_.js";
27
+ import { n as RadioButtonComposed, t as RadioGroupComposed } from "./radioGroupComposed-BrawV4FU.js";
28
+ import "./radioGroupComposed-BFzxJVpZ.js";
29
+ import { _ as VerificationOptionCard, i as Capture, n as Chooser, o as IdExpired, r as Tutorial, s as IdError, t as FlipAnimation, v as VerificationOptionCardList } from "./flipAnimation-BwI4pEJc.js";
30
+ import { t as BottomSheet } from "./bottomSheet-Cixb81_b.js";
31
+ import { n as CameraFrame, t as CameraView } from "./cameraView-BNqv7JUh.js";
32
+ import { n as CameraOverlay, t as CameraOverlayHeader } from "./cameraOverlayHeader-BarDrIC9.js";
33
+ import { c as useCoverMedia } from "./denied-CB1v3PyY.js";
34
+ import "./cameraOverlay-MpL3OBQu.js";
35
+ import { t as BaseTutorial } from "./baseTutorial-BM2Ho3QZ.js";
36
+ import { t as Permissions } from "./permissions-B0ctl0V9.js";
37
+ import { n as Capture$1, t as Tutorial$1 } from "./tutorial-BP1F722m.js";
38
+ //#region src/shared/overlay/overlay.tsx
39
+ var Overlay = ({ children, "aria-labelledby": ariaLabelledBy, class: className }) => {
40
+ return /* @__PURE__ */ u("div", {
41
+ class: `IncodeOverlay ${className ?? ""}`,
42
+ role: "dialog",
43
+ "aria-modal": "true",
44
+ "aria-labelledby": ariaLabelledBy,
45
+ children: /* @__PURE__ */ u("div", {
46
+ class: "IncodeOverlayContainer",
47
+ children: /* @__PURE__ */ u("div", {
48
+ class: "IncodeOverlayBody",
49
+ children
50
+ })
51
+ })
52
+ });
53
+ };
54
+ //#endregion
55
+ //#region src/shared/segmentedDateInput/segmentedDateInput.tsx
56
+ /**
57
+ * ⚠️ EXPERIMENTAL — DO NOT USE IN FORMS.
58
+ *
59
+ * This component is an in-progress alternative to `DateInputComposed` that
60
+ * renders mm/dd/yyyy as three independent segments. It is not production-ready
61
+ * and is intentionally not wired into any form module (curp-validation,
62
+ * custom-fields, dynamic-forms, ekyc, etc.). Those forms must continue to use
63
+ * `DateInputComposed` (native `<input type="date">`).
64
+ *
65
+ * Kept here for ongoing iteration and external preview only.
66
+ */
67
+ var ISO_DATE_RE = /^(\d{4})-(\d{2})-(\d{2})$/;
68
+ var US_DATE_RE = /^(\d{1,2})\/(\d{1,2})\/(\d{4})$/;
69
+ var EMPTY_SEGMENTS = {
70
+ mm: "",
71
+ dd: "",
72
+ yyyy: ""
73
+ };
74
+ var parseISO = (value) => {
75
+ if (!value) return EMPTY_SEGMENTS;
76
+ const m = ISO_DATE_RE.exec(value);
77
+ if (!m) return EMPTY_SEGMENTS;
78
+ return {
79
+ yyyy: m[1],
80
+ mm: m[2],
81
+ dd: m[3]
82
+ };
83
+ };
84
+ var isValidDate = (yyyy, mm, dd) => {
85
+ if (yyyy < 1 || mm < 1 || mm > 12 || dd < 1 || dd > 31) return false;
86
+ const date = new Date(yyyy, mm - 1, dd);
87
+ return date.getFullYear() === yyyy && date.getMonth() === mm - 1 && date.getDate() === dd;
88
+ };
89
+ /**
90
+ * Number of days in the (potentially partial) MM/YYYY combination. Falls back
91
+ * to a non-leap year (any year not divisible by 4) when the year is unknown
92
+ * or incomplete, so February can never accept 30 or 31 once the month is set.
93
+ */
94
+ var getDaysInMonth = (mm, yyyy) => {
95
+ const m = Number(mm);
96
+ if (!Number.isFinite(m) || m < 1 || m > 12) return 31;
97
+ const y = Number(yyyy);
98
+ const referenceYear = Number.isFinite(y) && y > 0 && yyyy.length === 4 ? y : 2001;
99
+ return new Date(referenceYear, m, 0).getDate();
100
+ };
101
+ var segmentsToISO = ({ mm, dd, yyyy }) => {
102
+ if (yyyy.length !== 4 || mm.length === 0 || dd.length === 0) return "";
103
+ const Y = Number(yyyy);
104
+ const M = Number(mm);
105
+ const D = Number(dd);
106
+ if (!isValidDate(Y, M, D)) return "";
107
+ return `${yyyy}-${String(M).padStart(2, "0")}-${String(D).padStart(2, "0")}`;
108
+ };
109
+ /**
110
+ * Compute the segment order for a given locale via Intl.DateTimeFormat —
111
+ * e.g. en-US → ['mm','dd','yyyy'], en-GB / de / es → ['dd','mm','yyyy'],
112
+ * ja / ko / zh / ISO → ['yyyy','mm','dd']. Always falls back to US ordering
113
+ * if the locale is unknown or Intl returns something unexpected.
114
+ */
115
+ var getSegmentOrder = (locale) => {
116
+ try {
117
+ const parts = new Intl.DateTimeFormat(locale || void 0).formatToParts(new Date(2e3, 0, 15));
118
+ const order = [];
119
+ for (const part of parts) if (part.type === "year") order.push("yyyy");
120
+ else if (part.type === "month") order.push("mm");
121
+ else if (part.type === "day") order.push("dd");
122
+ if (order.length === 3 && new Set(order).size === 3) return order;
123
+ } catch {}
124
+ return [
125
+ "mm",
126
+ "dd",
127
+ "yyyy"
128
+ ];
129
+ };
130
+ /** Build next/previous navigation maps from a concrete segment order. */
131
+ var buildNavMaps = (order) => {
132
+ const next = {
133
+ mm: null,
134
+ dd: null,
135
+ yyyy: null
136
+ };
137
+ const prev = {
138
+ mm: null,
139
+ dd: null,
140
+ yyyy: null
141
+ };
142
+ order.forEach((key, i) => {
143
+ next[key] = order[i + 1] ?? null;
144
+ prev[key] = order[i - 1] ?? null;
145
+ });
146
+ return {
147
+ next,
148
+ prev
149
+ };
150
+ };
151
+ var SEGMENT_RANGES = {
152
+ mm: {
153
+ min: 1,
154
+ max: 12,
155
+ pad: 2
156
+ },
157
+ dd: {
158
+ min: 1,
159
+ max: 31,
160
+ pad: 2
161
+ },
162
+ yyyy: {
163
+ min: 1,
164
+ max: 9999,
165
+ pad: 4
166
+ }
167
+ };
168
+ /**
169
+ * Largest digit that can still be the *first* of a valid two-digit value for
170
+ * each segment. Anything above this means the user typed a digit that can't
171
+ * start a valid 2-digit value (e.g. `3` in MM — there's no valid month from
172
+ * 30 to 39), so we commit it as a zero-padded single digit and auto-advance.
173
+ *
174
+ * mm: max 12 → first digit 0, 1 are still ambiguous; 2–9 commit immediately
175
+ * dd: max 31 → first digit 0, 1, 2, 3 are still ambiguous; 4–9 commit
176
+ * yyyy: any first digit is fine, never auto-commit early
177
+ */
178
+ var SEGMENT_MAX_AMBIGUOUS_FIRST_DIGIT = {
179
+ mm: 1,
180
+ dd: 3,
181
+ yyyy: 9
182
+ };
183
+ var padSegment = (key, n) => String(n).padStart(SEGMENT_RANGES[key].pad, "0");
184
+ /**
185
+ * Increment / decrement a segment value, wrapping at the segment's range.
186
+ * Empty segments default sensibly: ArrowUp on empty starts at the min value
187
+ * (or current year for `yyyy`); ArrowDown starts at the max.
188
+ *
189
+ * Mirrors the keyboard model of native <input type="date"> and React Aria's
190
+ * `DateField`, without the `role="spinbutton"` that would re-introduce the
191
+ * "9.1 percent" screen reader announcement on empty segments.
192
+ */
193
+ var stepSegment = (key, currentValue, direction) => {
194
+ const { min, max } = SEGMENT_RANGES[key];
195
+ if (currentValue === "") {
196
+ if (key === "yyyy") return padSegment(key, (/* @__PURE__ */ new Date()).getFullYear());
197
+ return padSegment(key, direction === 1 ? min : max);
198
+ }
199
+ const n = Number(currentValue);
200
+ if (Number.isNaN(n)) return padSegment(key, min);
201
+ let next = n + direction;
202
+ if (next > max) next = min;
203
+ if (next < min) next = max;
204
+ return padSegment(key, next);
205
+ };
206
+ /**
207
+ * ⚠️ Experimental — do not use in forms.
208
+ *
209
+ * Use `DateInputComposed` instead. See the file-level note at the top of this
210
+ * module for context.
211
+ *
212
+ * @experimental
213
+ */
214
+ var SegmentedDateInput = D(({ id, label, labelHint, "aria-label": ariaLabel, error, showErrorIcon, helper, showHelperIcon, required, suppressMessages = false, class: className, value, onInput, disabled, min, max, name, autocomplete: autocompleteAttr, autoComplete, ...restProps }, ref) => {
215
+ const { i18n } = useTranslation();
216
+ const segmentOrder = T(() => getSegmentOrder(i18n.language), [i18n.language]);
217
+ const navMaps = T(() => buildNavMaps(segmentOrder), [segmentOrder]);
218
+ const autocompleteValue = typeof autoComplete === "string" ? autoComplete : typeof autocompleteAttr === "string" ? autocompleteAttr : void 0;
219
+ /**
220
+ * Map the consumer-supplied autocomplete to per-segment + hidden-input
221
+ * tokens. The HTML spec defines `bday-day` / `bday-month` / `bday-year`
222
+ * for separate fields, paired with `bday` on a full-date input. Anything
223
+ * else passes through unchanged. Default is "off" so the browser doesn't
224
+ * suggest random history entries on individual numeric segments.
225
+ */
226
+ const getSegmentAutocomplete = (key) => {
227
+ if (!autocompleteValue) return "off";
228
+ if (autocompleteValue === "bday") return key === "mm" ? "bday-month" : key === "dd" ? "bday-day" : "bday-year";
229
+ return autocompleteValue;
230
+ };
231
+ const hiddenAutocomplete = autocompleteValue ?? void 0;
232
+ const hiddenRef = A(null);
233
+ const iconButtonRef = A(null);
234
+ const segmentRefs = {
235
+ mm: A(null),
236
+ dd: A(null),
237
+ yyyy: A(null)
238
+ };
239
+ const [segments, setSegments] = d(() => parseISO(value));
240
+ y(() => {
241
+ setSegments((curr) => {
242
+ if (segmentsToISO(curr) === (value ?? "")) return curr;
243
+ return parseISO(value);
244
+ });
245
+ }, [value]);
246
+ y(() => {
247
+ const hidden = hiddenRef.current;
248
+ if (!hidden) return;
249
+ const next = value ?? "";
250
+ if (hidden.value !== next) hidden.value = next;
251
+ }, [value]);
252
+ const setHiddenRef = (el) => {
253
+ hiddenRef.current = el;
254
+ if (typeof ref === "function") ref(el);
255
+ else if (ref) ref.current = el;
256
+ };
257
+ const labelId = `${id}-label`;
258
+ const helperId = `${id}-helper`;
259
+ const errorId = `${id}-error`;
260
+ const formatHintId = `${id}-format-hint`;
261
+ const formatHintText = T(() => {
262
+ const labels = {
263
+ mm: "month",
264
+ dd: "day",
265
+ yyyy: "year"
266
+ };
267
+ return `Date format: ${segmentOrder.map((k) => labels[k]).join(", ")}.`;
268
+ }, [segmentOrder]);
269
+ const describedByIds = [
270
+ formatHintId,
271
+ !suppressMessages && helper ? helperId : null,
272
+ !suppressMessages && error ? errorId : null
273
+ ].filter(Boolean).join(" ");
274
+ const fireOnInput = (next) => {
275
+ const iso = segmentsToISO(next);
276
+ const hidden = hiddenRef.current;
277
+ if (hidden) hidden.value = iso;
278
+ const event = new Event("input", { bubbles: true });
279
+ Object.defineProperty(event, "target", {
280
+ value: hidden,
281
+ enumerable: true,
282
+ configurable: true
283
+ });
284
+ onInput(event);
285
+ };
286
+ const writeSegment = (key, val) => {
287
+ let next = {
288
+ ...segments,
289
+ [key]: val
290
+ };
291
+ if (next.dd && next.mm) {
292
+ const days = getDaysInMonth(next.mm, next.yyyy);
293
+ const ddNum = Number(next.dd);
294
+ if (Number.isFinite(ddNum) && ddNum > days) next = {
295
+ ...next,
296
+ dd: padSegment("dd", days)
297
+ };
298
+ }
299
+ setSegments(next);
300
+ fireOnInput(next);
301
+ };
302
+ const focusSegment = (key) => {
303
+ if (!key) return;
304
+ const el = segmentRefs[key].current;
305
+ if (!el) return;
306
+ el.focus();
307
+ const len = el.value.length;
308
+ try {
309
+ el.setSelectionRange(len, len);
310
+ } catch {}
311
+ };
312
+ const handleSegmentInput = (key, maxLen) => (e) => {
313
+ const target = e.target;
314
+ let sanitized = target.value.replace(/\D/g, "").slice(0, maxLen);
315
+ let shouldAdvance = false;
316
+ if (sanitized.length === 1 && Number(sanitized) > SEGMENT_MAX_AMBIGUOUS_FIRST_DIGIT[key]) {
317
+ sanitized = padSegment(key, Number(sanitized));
318
+ shouldAdvance = true;
319
+ }
320
+ if (sanitized.length === maxLen) {
321
+ const n = Number(sanitized);
322
+ const { max } = SEGMENT_RANGES[key];
323
+ if (Number.isFinite(n) && n > max) sanitized = padSegment(key, max);
324
+ shouldAdvance = true;
325
+ }
326
+ if (sanitized !== target.value) target.value = sanitized;
327
+ writeSegment(key, sanitized);
328
+ if (shouldAdvance) focusSegment(navMaps.next[key]);
329
+ };
330
+ const handleSegmentKeyDown = (key) => (e) => {
331
+ const target = e.target;
332
+ const caret = target.selectionStart ?? 0;
333
+ if (e.key === "ArrowUp" || e.key === "ArrowDown") {
334
+ e.preventDefault();
335
+ const direction = e.key === "ArrowUp" ? 1 : -1;
336
+ const nextVal = stepSegment(key, target.value, direction);
337
+ target.value = nextVal;
338
+ writeSegment(key, nextVal);
339
+ try {
340
+ target.select();
341
+ } catch {}
342
+ } else if (e.key === "Backspace" && target.value === "" && caret === 0) {
343
+ e.preventDefault();
344
+ focusSegment(navMaps.prev[key]);
345
+ } else if (e.key === "ArrowLeft" && caret === 0) {
346
+ e.preventDefault();
347
+ focusSegment(navMaps.prev[key]);
348
+ } else if (e.key === "ArrowRight" && caret === target.value.length) {
349
+ e.preventDefault();
350
+ focusSegment(navMaps.next[key]);
351
+ } else if (e.key === "/" || e.key === "-" || e.key === " ") if (target.value.length > 0) {
352
+ e.preventDefault();
353
+ focusSegment(navMaps.next[key]);
354
+ } else e.preventDefault();
355
+ };
356
+ const handleSegmentBlur = (key, padTo) => (e) => {
357
+ const v = e.target.value;
358
+ if (!v) return;
359
+ let normalized = v.padStart(padTo, "0");
360
+ const n = Number(normalized);
361
+ const { min, max } = SEGMENT_RANGES[key];
362
+ if (Number.isFinite(n)) {
363
+ if (n < min) normalized = padSegment(key, min);
364
+ else if (n > max) normalized = padSegment(key, max);
365
+ }
366
+ if (normalized !== v) writeSegment(key, normalized);
367
+ };
368
+ const handleSegmentFocus = (e) => {
369
+ const target = e.target;
370
+ try {
371
+ target.select();
372
+ } catch {}
373
+ };
374
+ const handlePaste = (e) => {
375
+ const text = e.clipboardData?.getData("text")?.trim() ?? "";
376
+ if (!text) return;
377
+ const iso = ISO_DATE_RE.exec(text);
378
+ const us = US_DATE_RE.exec(text);
379
+ let next = null;
380
+ if (iso) next = {
381
+ yyyy: iso[1],
382
+ mm: iso[2],
383
+ dd: iso[3]
384
+ };
385
+ else if (us) next = {
386
+ mm: us[1].padStart(2, "0"),
387
+ dd: us[2].padStart(2, "0"),
388
+ yyyy: us[3]
389
+ };
390
+ if (next) {
391
+ e.preventDefault();
392
+ setSegments(next);
393
+ fireOnInput(next);
394
+ focusSegment("yyyy");
395
+ }
396
+ };
397
+ const handleHiddenChange = (e) => {
398
+ const target = e.target;
399
+ setSegments(parseISO(target.value));
400
+ onInput(e);
401
+ const iconBtn = iconButtonRef.current;
402
+ if (iconBtn && document.activeElement === target) try {
403
+ iconBtn.focus();
404
+ } catch {}
405
+ };
406
+ const handleIconClick = (e) => {
407
+ if (disabled) {
408
+ e.preventDefault();
409
+ return;
410
+ }
411
+ const hidden = hiddenRef.current;
412
+ if (!hidden) return;
413
+ try {
414
+ hidden.click();
415
+ } catch {}
416
+ try {
417
+ if (typeof hidden.showPicker === "function") hidden.showPicker();
418
+ } catch {}
419
+ };
420
+ const hasValue = !!segmentsToISO(segments);
421
+ const isInvalid = !!error;
422
+ const groupLabelProps = label ? { "aria-labelledby": labelId } : ariaLabel ? { "aria-label": ariaLabel } : {};
423
+ const SEGMENT_META = {
424
+ mm: {
425
+ maxLen: 2,
426
+ placeholder: "MM",
427
+ ariaLabel: "Month"
428
+ },
429
+ dd: {
430
+ maxLen: 2,
431
+ placeholder: "DD",
432
+ ariaLabel: "Day"
433
+ },
434
+ yyyy: {
435
+ maxLen: 4,
436
+ placeholder: "YYYY",
437
+ ariaLabel: "Year"
438
+ }
439
+ };
440
+ const renderSegment = (key) => {
441
+ const { maxLen, placeholder, ariaLabel: segAriaLabel } = SEGMENT_META[key];
442
+ return /* @__PURE__ */ u("input", {
443
+ ref: (el) => {
444
+ segmentRefs[key].current = el;
445
+ },
446
+ id: `${id}-${key}`,
447
+ class: cn("IncodeSegmentedDateInputSegment", `IncodeSegmentedDateInputSegment--${key}`),
448
+ type: "text",
449
+ inputMode: "numeric",
450
+ autoComplete: getSegmentAutocomplete(key),
451
+ autoCorrect: "off",
452
+ spellcheck: false,
453
+ maxLength: maxLen,
454
+ size: maxLen,
455
+ placeholder,
456
+ "aria-label": segAriaLabel,
457
+ "aria-required": required ? "true" : void 0,
458
+ "aria-invalid": isInvalid ? "true" : void 0,
459
+ value: segments[key],
460
+ disabled,
461
+ "data-testid": `${id}-${key}`,
462
+ onInput: handleSegmentInput(key, maxLen),
463
+ onKeyDown: handleSegmentKeyDown(key),
464
+ onBlur: handleSegmentBlur(key, maxLen),
465
+ onFocus: handleSegmentFocus,
466
+ onPaste: handlePaste
467
+ });
468
+ };
469
+ return /* @__PURE__ */ u("div", {
470
+ class: cn("IncodeInputComposed IncodeSegmentedDateInput", className),
471
+ children: [
472
+ label && /* @__PURE__ */ u("label", {
473
+ id: labelId,
474
+ class: "IncodeInputComposedLabel",
475
+ htmlFor: `${id}-${segmentOrder[0]}`,
476
+ "data-testid": `${id}-label`,
477
+ children: [label, /* @__PURE__ */ u(FieldLabelHint, {
478
+ className: "IncodeInputComposedLabelHint",
479
+ hint: labelHint,
480
+ required: required === true,
481
+ testId: `${id}-label-hint`
482
+ })]
483
+ }),
484
+ /* @__PURE__ */ u("div", {
485
+ class: "IncodeInputComposedWrapper",
486
+ children: [
487
+ /* @__PURE__ */ u("div", {
488
+ role: "group",
489
+ class: cn("IncodeSegmentedDateInputField", isInvalid && "IncodeSegmentedDateInputField--invalid", disabled && "IncodeSegmentedDateInputField--disabled"),
490
+ "data-has-value": hasValue ? "true" : void 0,
491
+ "data-disabled": disabled ? "true" : void 0,
492
+ "aria-invalid": isInvalid ? "true" : void 0,
493
+ "aria-describedby": describedByIds || void 0,
494
+ ...groupLabelProps,
495
+ children: segmentOrder.map((key, i) => /* @__PURE__ */ u(k, { children: [renderSegment(key), i < segmentOrder.length - 1 && /* @__PURE__ */ u("span", {
496
+ class: "IncodeSegmentedDateInputSeparator",
497
+ "aria-hidden": "true",
498
+ children: "/"
499
+ })] }, key))
500
+ }),
501
+ /* @__PURE__ */ u("span", {
502
+ id: formatHintId,
503
+ class: "IncodeSrOnly",
504
+ "data-testid": `${id}-format-hint`,
505
+ children: formatHintText
506
+ }),
507
+ /* @__PURE__ */ u("input", {
508
+ ref: setHiddenRef,
509
+ id,
510
+ type: "date",
511
+ name,
512
+ defaultValue: value,
513
+ min,
514
+ max,
515
+ disabled,
516
+ required,
517
+ "aria-required": required ? "true" : void 0,
518
+ autoComplete: hiddenAutocomplete,
519
+ class: "IncodeSegmentedDateInputHiddenNative",
520
+ tabIndex: -1,
521
+ "aria-hidden": "true",
522
+ "data-has-value": hasValue ? "true" : void 0,
523
+ "data-testid": `${id}-native`,
524
+ onInput: handleHiddenChange,
525
+ onChange: handleHiddenChange,
526
+ ...restProps
527
+ }),
528
+ /* @__PURE__ */ u("button", {
529
+ ref: iconButtonRef,
530
+ type: "button",
531
+ class: "IncodeSegmentedDateInputIconButton",
532
+ onClick: handleIconClick,
533
+ onTouchEnd: handleIconClick,
534
+ disabled,
535
+ "aria-label": "Open date picker",
536
+ "data-testid": `${id}-picker-trigger`,
537
+ children: /* @__PURE__ */ u("span", {
538
+ class: "IncodeSegmentedDateInputIcon",
539
+ children: /* @__PURE__ */ u(CalendarIcon, {})
540
+ })
541
+ })
542
+ ]
543
+ }),
544
+ !suppressMessages && error && /* @__PURE__ */ u("div", {
545
+ class: "IncodeInputComposedErrorWrapper",
546
+ role: "alert",
547
+ "data-testid": `${id}-error-wrapper`,
548
+ children: [showErrorIcon && /* @__PURE__ */ u("div", {
549
+ class: "IncodeInputComposedIconWrapper",
550
+ children: /* @__PURE__ */ u(ErrorIcon, { size: 16 })
551
+ }), /* @__PURE__ */ u("p", {
552
+ id: errorId,
553
+ class: "IncodeInputComposedError",
554
+ children: error
555
+ })]
556
+ }),
557
+ !suppressMessages && helper && !error && /* @__PURE__ */ u("div", {
558
+ class: "IncodeInputComposedHelperWrapper",
559
+ "data-testid": `${id}-helper-wrapper`,
560
+ children: [showHelperIcon && /* @__PURE__ */ u("div", {
561
+ class: "IncodeInputComposedIconWrapper",
562
+ children: /* @__PURE__ */ u(SuccessIcon, { size: 16 })
563
+ }), /* @__PURE__ */ u("p", {
564
+ id: helperId,
565
+ class: "IncodeInputComposedHelper",
566
+ children: helper
567
+ })]
568
+ })
569
+ ]
570
+ });
571
+ });
572
+ SegmentedDateInput.displayName = "SegmentedDateInput";
573
+ //#endregion
574
+ //#region src/shared/textArea/textArea.tsx
575
+ var TextArea = D((props, ref) => {
576
+ const { class: className, rows = 4, ...restProps } = props;
577
+ return /* @__PURE__ */ u("textarea", {
578
+ ...restProps,
579
+ ref,
580
+ rows,
581
+ class: cn("IncodeTextArea", className)
582
+ });
583
+ });
584
+ //#endregion
585
+ //#region src/shared/textAreaComposed/textAreaComposed.tsx
586
+ var TextAreaComposed = D(({ id, label, labelHint, "aria-label": ariaLabel, error, showErrorIcon, helper, showHelperIcon, required, rows = 4, class: className, ...restProps }, ref) => {
587
+ const helperId = `${id}-helper`;
588
+ const errorId = `${id}-error`;
589
+ const describedByIds = [helper ? helperId : null, error ? errorId : null].filter(Boolean).join(" ");
590
+ return /* @__PURE__ */ u("div", {
591
+ class: cn("IncodeTextAreaComposed", className),
592
+ children: [
593
+ label && /* @__PURE__ */ u("label", {
594
+ class: "IncodeTextAreaComposedLabel",
595
+ htmlFor: id,
596
+ "data-testid": `${id}-label`,
597
+ children: [label, /* @__PURE__ */ u(FieldLabelHint, {
598
+ className: "IncodeTextAreaComposedLabelHint",
599
+ hint: labelHint,
600
+ required: required === true,
601
+ testId: `${id}-label-hint`
602
+ })]
603
+ }),
604
+ /* @__PURE__ */ u("div", {
605
+ class: "IncodeTextAreaComposedWrapper",
606
+ children: /* @__PURE__ */ u(TextArea, {
607
+ id,
608
+ rows,
609
+ ...restProps,
610
+ ref,
611
+ required,
612
+ ...!label && ariaLabel ? { "aria-label": ariaLabel } : {},
613
+ "aria-describedby": describedByIds || void 0,
614
+ "aria-required": required ? "true" : void 0,
615
+ "aria-invalid": error ? "true" : void 0
616
+ })
617
+ }),
618
+ error && /* @__PURE__ */ u("div", {
619
+ class: "IncodeTextAreaComposedErrorWrapper",
620
+ role: "alert",
621
+ "data-testid": `${id}-error-wrapper`,
622
+ children: [showErrorIcon && /* @__PURE__ */ u("div", {
623
+ class: "IncodeTextAreaComposedIconWrapper",
624
+ children: /* @__PURE__ */ u(ErrorIcon, { size: 17 })
625
+ }), /* @__PURE__ */ u("p", {
626
+ id: errorId,
627
+ class: "IncodeTextAreaComposedError",
628
+ children: error
629
+ })]
630
+ }),
631
+ helper && !error && /* @__PURE__ */ u("div", {
632
+ class: "IncodeTextAreaComposedHelperWrapper",
633
+ "data-testid": `${id}-helper-wrapper`,
634
+ children: [showHelperIcon && /* @__PURE__ */ u("div", {
635
+ class: "IncodeTextAreaComposedIconWrapper",
636
+ children: /* @__PURE__ */ u(SuccessIcon, { size: 17 })
637
+ }), /* @__PURE__ */ u("p", {
638
+ id: helperId,
639
+ class: "IncodeTextAreaComposedHelper",
640
+ children: helper
641
+ })]
642
+ })
643
+ ]
644
+ });
645
+ });
646
+ TextAreaComposed.displayName = "TextAreaComposed";
647
+ //#endregion
648
+ //#region src/shared/manualCapture/manualCapture.tsx
649
+ function captureFrameFromVideo(video) {
650
+ if (video.readyState < 2 || video.videoWidth === 0 || video.videoHeight === 0) return null;
651
+ const canvas = document.createElement("canvas");
652
+ canvas.width = video.videoWidth;
653
+ canvas.height = video.videoHeight;
654
+ const ctx = canvas.getContext("2d");
655
+ if (!ctx) return null;
656
+ ctx.drawImage(video, 0, 0);
657
+ return canvas.toDataURL("image/jpeg", .92).split(",")[1] ?? null;
658
+ }
659
+ var ManualCapture = ({ stream, onCapture, disabled }) => {
660
+ const videoRef = A(null);
661
+ useCoverMedia(videoRef, stream);
662
+ y(() => {
663
+ if (videoRef.current && stream) {
664
+ videoRef.current.srcObject = stream;
665
+ videoRef.current.play().catch(() => {});
666
+ }
667
+ }, [stream]);
668
+ const handleCapture = q(() => {
669
+ const video = videoRef.current;
670
+ if (!video || disabled) return;
671
+ const base64 = captureFrameFromVideo(video);
672
+ if (base64) onCapture(base64);
673
+ }, [onCapture, disabled]);
674
+ return /* @__PURE__ */ u("div", {
675
+ class: "IncodeManualCapture",
676
+ children: [/* @__PURE__ */ u("div", {
677
+ class: "IncodeManualCaptureVideoContainer",
678
+ children: /* @__PURE__ */ u("video", {
679
+ ref: videoRef,
680
+ autoplay: true,
681
+ playsInline: true,
682
+ muted: true,
683
+ class: "IncodeManualCaptureVideo",
684
+ "aria-label": "Camera stream for document capture"
685
+ })
686
+ }), /* @__PURE__ */ u("div", {
687
+ class: "IncodeManualCaptureButtonContainer",
688
+ children: /* @__PURE__ */ u(Button, {
689
+ variant: "primary",
690
+ size: "L",
691
+ onClick: handleCapture,
692
+ disabled,
693
+ class: "IncodeManualCaptureButton",
694
+ "aria-label": "Capture document",
695
+ children: "Capture"
696
+ })
697
+ })]
698
+ });
699
+ };
700
+ //#endregion
701
+ export { BaseTutorial, BottomSheet, Button, CalendarIcon, CameraFrame, CameraIcon, CameraOverlay, CameraOverlayHeader, CameraView, CaptureButtonIcon, CaptureFooter, Checkbox, CheckmarkCompactIcon, CheckmarkIcon, ChevronDown, ChevronLeftIcon, ChevronRightIcon, CloseIcon, ConnectionError, DateInputComposed, DropdownComposed, EllipseIcon, ErrorContent, ErrorIcon, EyeIcon, EyeOffIcon, FileIcon, FormField, HelpIcon, Capture as IdCapture, Chooser as IdChooser, IdError, IdExpired, FlipAnimation as IdFlipAnimation, Tutorial as IdTutorial, IncodeComponent, Input, InputComposed, LandscapeBlocker, SvgLightningIcon as LightningIcon, LockIcon, Lottie, ManualCapture, Modal, OtpInput, Overlay, Page, PasswordInputComposed, Permissions, PhoneInputComposed, Processing, ProgressBar, RadioButtonComposed, RadioGroupComposed, SearchIcon, SegmentedDateInput, Capture$1 as SelfieCapture, Tutorial$1 as SelfieTutorial, Spacer, Spinner, SuccessIcon, TextArea, TextAreaComposed, Title, TypographyH1, TypographyH3, TypographyH4, TypographyH5, TypographyP, VerificationOptionCard, VerificationOptionCardList, VerificationResult, WarningIcon, countries, getCountryByCallingCode, getCountryByCode, setUiConfig, useManager, useScreenOrientation };