@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.
- package/THIRD_PARTY_NOTICES.txt +398 -0
- package/dist/ae-signature/ae-signature.es.js +4 -4
- package/dist/af-ZA-CiGNWICE.js +3043 -0
- package/dist/am-C5YehVGG.js +3043 -0
- package/dist/antifraud/antifraud.es.js +4 -4
- package/dist/ar-AE-BMJuIKTB.js +3059 -0
- package/dist/ar-CUw7KMHb.js +3059 -0
- package/dist/ar-EG-ojf2Ene5.js +3059 -0
- package/dist/assets/dm-sans-latin-400-normal.woff2 +0 -0
- package/dist/assets/dm-sans-latin-500-normal.woff2 +0 -0
- package/dist/assets/dm-sans-latin-600-normal.woff2 +0 -0
- package/dist/assets/dm-sans-latin-700-normal.woff2 +0 -0
- package/dist/assets/rethink-sans-latin-800-normal.woff2 +0 -0
- package/dist/authentication/authentication.es.js +15 -11
- package/dist/{autoFocusTitle-DB-23sv_.js → autoFocusTitle-CVjuQOGZ.js} +2 -2
- package/dist/az-DsqjgKhY.js +3043 -0
- package/dist/{back-horizontal-hint-CjdigFZj.js → back-horizontal-hint-UQ7Nof6k.js} +1 -1
- package/dist/{back-vertical-hint-OhaKsINF.js → back-vertical-hint-Crc8ybfk.js} +1 -1
- package/dist/base.css +917 -283
- package/dist/baseTutorial-BM2Ho3QZ.js +172 -0
- package/dist/bn-Bbn6O_i2.js +3043 -0
- package/dist/bottomSheet-Cixb81_b.js +101 -0
- package/dist/bs-CYW5eATI.js +3047 -0
- package/dist/ca-D5u2Z71o.js +3043 -0
- package/dist/cameraOverlay-MpL3OBQu.js +2 -0
- package/dist/cameraOverlayHeader-BarDrIC9.js +43 -0
- package/dist/cameraView-BNqv7JUh.js +49 -0
- package/dist/captureFooter-De74TCQi.js +67 -0
- package/dist/ceb-tXsl4nyX.js +3043 -0
- package/dist/certificate-issuance/certificate-issuance.es.js +19 -14
- package/dist/certificate-issuance/styles.css.js +1 -0
- package/dist/{checkbox-FGA-Ij-D.js → checkbox-BR-RTI4R.js} +9 -8
- package/dist/{connectionError-BurQq_4R.js → connectionError-Haw33Di8.js} +4 -4
- package/dist/consent/consent.es.js +26 -33
- package/dist/consent/styles.css +4 -4
- package/dist/consent/styles.css.js +1 -0
- package/dist/countries-5e8kwG_m.js +8560 -0
- package/dist/{countrySelector-COZ7XQHp.js → countrySelector-Zbe2eGzy.js} +8 -10
- package/dist/cross-document-data-match/cross-document-data-match.es.js +4 -4
- package/dist/cs-CZ-BUx_DNTa.js +3051 -0
- package/dist/cs-D_6Vg3XS.js +3051 -0
- package/dist/curp-validation/curp-validation.es.js +15 -22
- package/dist/curp-validation/styles.css.js +1 -0
- package/dist/custom-fields/styles.css.js +1 -0
- package/dist/{customFields-rVMTo1Yu.js → customFields-CEFWn2wC.js} +44 -19
- package/dist/{customWatchlist-DgpXtVRf.js → customWatchlist-Xn3d-zbf.js} +14 -11
- package/dist/da-DK-CsmjiCBo.js +3043 -0
- package/dist/{dashboardTheme-BUDq5UYs.js → dashboardTheme-B_YjGFDU.js} +31 -7
- package/dist/dateInputComposed-0tUVTT0_.js +1 -0
- package/dist/{dateInputComposed-DSgV0wnb.js → dateInputComposed-ByhgHDX8.js} +5 -5
- package/dist/de-BsJlhx6J.js +3043 -0
- package/dist/{manualCaptureButton-D58WsS-x.js → denied-CB1v3PyY.js} +270 -233
- package/dist/document-capture/document-capture.es.js +1 -1
- package/dist/document-capture/styles.css +4 -4
- package/dist/document-capture/styles.css.js +1 -0
- package/dist/{documentCapture-sZj09g0I.js → documentCapture-Cj8G5Wgb.js} +16 -17
- package/dist/documentCapture-D0o4Xh1J.js +2 -0
- package/dist/dropdownComposed-BsEtJjhn.js +1 -0
- package/dist/{dropdownComposed-CEegNzG4.js → dropdownComposed-DptsxuHA.js} +9 -9
- package/dist/{dynamicForms-t3vepXqJ.js → dynamic-forms/dynamic-forms.es.js} +24 -19
- package/dist/dynamic-forms/styles.css +5 -0
- package/dist/dynamic-forms/styles.css.js +1 -0
- package/dist/ekyb/ekyb.es.js +1 -1
- package/dist/ekyb/styles.css +15 -13
- package/dist/ekyb/styles.css.js +1 -0
- package/dist/ekybModule-B-gioC08.js +2 -0
- package/dist/{ekybModule-Dvkf5WAr.js → ekybModule-DqA0hfNQ.js} +17 -30
- package/dist/ekyc/ekyc.es.js +1 -1
- package/dist/ekyc/styles.css +17 -16
- package/dist/ekyc/styles.css.js +1 -0
- package/dist/ekycModule-CjkpPQ3f.js +2 -0
- package/dist/{ekycModule-C5QXVGP7.js → ekycModule-bRC6FW2H.js} +14 -29
- package/dist/el-Dq-L-4X5.js +3043 -0
- package/dist/el-GR-c9roJIs_.js +3043 -0
- package/dist/electronic-signature/electronic-signature.es.js +1 -1
- package/dist/electronic-signature/styles.css +62 -2
- package/dist/electronic-signature/styles.css.js +1 -0
- package/dist/{electronic-signature-CyE8F7LZ.js → electronic-signature-DRMdCzdF.js} +65 -18
- package/dist/email/email.es.js +9 -8
- package/dist/email/styles.css.js +1 -0
- package/dist/{emailInput-CsT8_C01.js → emailInput-Dz8ukhAE.js} +4 -4
- package/dist/en-CmZT05w8.js +3043 -0
- package/dist/en-DG-BQHfwiXE.js +3043 -0
- package/dist/errorContent-aJuo21I4.js +58 -0
- package/dist/es-419-CoqfXTDl.js +3043 -0
- package/dist/es-DXFWBB40.js +3043 -0
- package/dist/es-ES-TOSb7vSR.js +3043 -0
- package/dist/es-MX-CpubyuFB.js +3043 -0
- package/dist/et-dg12JfIX.js +3043 -0
- package/dist/{expiredId-BQ1uPh7b.js → expiredId-BPgVum6e.js} +22 -27
- package/dist/extensibility.es.js +701 -24
- package/dist/fa-IR-TKcZgrd1.js +3043 -0
- package/dist/face-match/face-match.es.js +1 -1
- package/dist/face-match/styles.css +76 -40
- package/dist/face-match/styles.css.js +1 -0
- package/dist/{faceMatch-Rf-MMdto.js → faceMatch-BcScQR2O.js} +7 -8
- package/dist/faceMatch-BvaN_Ggn.js +2 -0
- package/dist/fi-FI-BP9vgY5F.js +3043 -0
- package/dist/field-comparison/field-comparison.es.js +1 -1
- package/dist/field-comparison/styles.css +12 -0
- package/dist/field-comparison/styles.css.js +1 -0
- package/dist/fieldComparison-D4YoXJKX.js +2 -0
- package/dist/{fieldComparison-BnGj3nNp.js → fieldComparison-UKZsi875.js} +27 -11
- package/dist/fieldLabelHint-CxjArYkQ.js +16 -0
- package/dist/{finalSuccessScreen-B9uB3bST.js → finalSuccessScreen-7OX0TdIz.js} +13 -14
- package/dist/fiscal-qr/fiscal-qr.es.js +28 -9
- package/dist/fiscal-qr/styles.css +13 -1
- package/dist/fiscal-qr/styles.css.js +1 -0
- package/dist/{extensibility-C5XqL_A3.js → flipAnimation-BwI4pEJc.js} +608 -1005
- package/dist/flow/flow.es.js +308 -62
- package/dist/flow/shell/styles.css +402 -0
- package/dist/flow/shell/styles.css.js +1 -0
- package/dist/flow/styles.css +582 -312
- package/dist/formField-DWExlgnz.js +60 -0
- package/dist/fr-B4LoNDGy.js +3047 -0
- package/dist/fr-CA-CjN8CDsE.js +3047 -0
- package/dist/{front-horizontal-hint-Bhz1rq-w.js → front-horizontal-hint-mgovnJf3.js} +1 -1
- package/dist/{front-vertical-hint-C4FC1ksx.js → front-vertical-hint-qXMVdLri.js} +1 -1
- package/dist/geolocation/geolocation.es.js +9 -9
- package/dist/geolocation/styles.css +4 -4
- package/dist/geolocation/styles.css.js +1 -0
- package/dist/government-validation/government-validation.es.js +38 -86
- package/dist/government-validation/styles.css +2 -38
- package/dist/government-validation/styles.css.js +1 -0
- package/dist/he-CJNS0xku.js +3051 -0
- package/dist/hi-CoHu7PnX.js +3043 -0
- package/dist/hmn-qubMIB6T.js +3043 -0
- package/dist/{homeScreen-Bv9mUUOF.js → homeScreen-CqLbJbhW.js} +8 -7
- package/dist/hr-N3Dy9ndd.js +3047 -0
- package/dist/ht-iHGiGZhO.js +3043 -0
- package/dist/hu-hlQUlAJs.js +3043 -0
- package/dist/{icons-ChHV5iHi.js → icons-DNXYxUPA.js} +99 -11
- package/dist/id/id.es.js +576 -62
- package/dist/id/styles.css +114 -45
- package/dist/id/styles.css.js +1 -0
- package/dist/id-Dhk7ywrq.js +3037 -0
- package/dist/{id-back-of-card-C4XViC7W.js → id-back-of-card-B6EcmiCs.js} +1 -1
- package/dist/{id-back-of-card-vertical-DCz0rj8m.js → id-back-of-card-vertical-B3FXhPpj.js} +1 -1
- package/dist/{id-front-of-card-CUA1ocVF.js → id-front-of-card-V_BlLaZr.js} +1 -1
- package/dist/{id-front-of-card-vertical-Ddm_BwD3.js → id-front-of-card-vertical-CuZjL8kc.js} +1 -1
- package/dist/id-ocr/styles.css.js +1 -0
- package/dist/id-selfie-flow/id-selfie-flow.es.js +10 -9
- package/dist/id-selfie-flow/styles.css +40 -8
- package/dist/id-verification/id-verification.es.js +5 -5
- package/dist/{idOcr-Da1-2sWY.js → idOcr-Bt0V72id.js} +13 -16
- package/dist/identity-reuse/identity-reuse.es.js +8 -113
- package/dist/identity-reuse/styles.css +1 -1
- package/dist/{incode-logo-DeIDDejm.js → incode-logo-BzJOZr3f.js} +1 -64
- package/dist/{incodeComponent-BtFz-bx2.js → incodeComponent-DeVV0gEn.js} +192 -22
- package/dist/{incodeModule-9K8KUs61.js → incodeModule-Do8qpZk7.js} +3 -3
- package/dist/index.es.js +4 -3
- package/dist/{inputComposed-C2zTEXsp.js → inputComposed-9aPipTS_.js} +9 -9
- package/dist/inputComposed-DZokKK4c.js +1 -0
- package/dist/it-CXYuJ5BQ.js +3043 -0
- package/dist/ja-B5OkMrWD.js +3037 -0
- package/dist/ja-JP-SlPp7xE2.js +3037 -0
- package/dist/jv-DduD6MhM.js +3037 -0
- package/dist/ka-CG2wabuB.js +3043 -0
- package/dist/kk-D984nBRQ.js +3043 -0
- package/dist/km-B-DaaNxL.js +3037 -0
- package/dist/ko-B8I6YPOu.js +3037 -0
- package/dist/ko-KP-BTQZdVex.js +3037 -0
- package/dist/ky-p_wAYlXq.js +3043 -0
- package/dist/lo-CS-RhXrt.js +3037 -0
- package/dist/lt-C1yAMYTU.js +3051 -0
- package/dist/lv-CiHCsaN9.js +3047 -0
- package/dist/{mandatoryConsent-CxShVycM.js → mandatoryConsent-BJcDf3s-.js} +10 -7
- package/dist/manualCaptureButton-2RTC1vZC.js +63 -0
- package/dist/{manualCaptureButton-DzJFIEfu.js → manualCaptureButton-CqwPCE8h.js} +10 -55
- package/dist/mk-VumecXcv.js +3043 -0
- package/dist/mn-DGMJpCs6.js +3043 -0
- package/dist/{modal-BH2wi8Q0.js → modal-H_YHBjxJ.js} +7 -6
- package/dist/{modal.hooks-DcakflQ4.js → modal.hooks-B0Wrc9s2.js} +7 -1
- package/dist/ms-CBk2NkZ1.js +3037 -0
- package/dist/my-BWcPvvs5.js +3037 -0
- package/dist/nb-NO-D7azau2s.js +3043 -0
- package/dist/ne-D9CU-qx6.js +3043 -0
- package/dist/nl-BVhLZVXm.js +3043 -0
- package/dist/{numberedStep-DqtXyT11.js → numberedStep-C8e_uPaz.js} +1 -1
- package/dist/{optionAccessibleLabel-C5iZCrlq.js → optionAccessibleLabel-C0BRq4LF.js} +6 -6
- package/dist/{otpInput-CvPR3ZpP.js → otpInput-C8mlw_Cm.js} +8 -83
- package/dist/{passport-horizontal-hint-DzkhjC8Q.js → passport-horizontal-hint-6Ghn2EEN.js} +1 -1
- package/dist/{passport-vertical-hint-Bd0BQn2Y.js → passport-vertical-hint-UPFFpdf4.js} +1 -1
- package/dist/passwordInputComposed-CDbxJKHR.js +74 -0
- package/dist/{pdf-BUoY_2gv.js → pdf-CFubyG0B.js} +1 -1
- package/dist/pdfViewer-CCu7pBQv.js +2 -0
- package/dist/{pdfViewer-TTZmPABh.js → pdfViewer-DTwxqwSD.js} +4 -4
- package/dist/permissions-B0ctl0V9.js +212 -0
- package/dist/phone/phone.es.js +10 -9
- package/dist/phone/styles.css +1 -1
- package/dist/phone/styles.css.js +1 -0
- package/dist/{phoneInputComposed-byyszNoS.js → phoneInputComposed-Bz37hY_u.js} +20 -8412
- package/dist/pl-DWKpY783.js +3051 -0
- package/dist/{processing-B2eaSGLu.js → processing-CrNgzN1u.js} +2 -2
- package/dist/pt-B2_-n4Z3.js +3043 -0
- package/dist/pt-BR-CC8MxgMX.js +3043 -0
- package/dist/pt-PT-vo9--bzz.js +3043 -0
- package/dist/qe-signature/qe-signature.es.js +4 -4
- package/dist/radioGroupComposed-BFzxJVpZ.js +1 -0
- package/dist/{radioGroupComposed-DQzTWutW.js → radioGroupComposed-BrawV4FU.js} +15 -71
- package/dist/redirect-to-mobile/redirect-to-mobile.es.js +34 -178
- package/dist/redirect-to-mobile/styles.css +2 -27
- package/dist/redirect-to-mobile/styles.css.js +1 -0
- package/dist/{registerIncodeElement-DW2PE_DX.js → registerIncodeElement-CbZczi4S.js} +1 -1
- package/dist/resendTimer-C0HqF9VE.js +79 -0
- package/dist/{useModuleLoader-DxOEZ0vn.js → resolveApiKey-DU0APKTv.js} +70 -222
- package/dist/{richText-CEwM8jib.js → richText-BEuqr0as.js} +9 -9
- package/dist/ro-DOhwcTr3.js +3047 -0
- package/dist/ru-CD71PeIH.js +3051 -0
- package/dist/ru-RU-DLHiNY0O.js +3051 -0
- package/dist/selfie/selfie.es.js +184 -8
- package/dist/selfie/styles.css +225 -36
- package/dist/selfie/styles.css.js +1 -0
- package/dist/signature/signature.es.js +8 -9
- package/dist/signature/styles.css.js +1 -0
- package/dist/sk-DaVWjX4k.js +3051 -0
- package/dist/sl-YiCpfUol.js +3051 -0
- package/dist/smsTabContent-C1C1g4GT.js +172 -0
- package/dist/so-B2bRmOT5.js +3043 -0
- package/dist/{spacer-DLEDuWEx.js → spacer-DZ-t7RMQ.js} +10 -10
- package/dist/spinner-hjbTcmA1.js +88 -0
- package/dist/sr-BbjKCO-a.js +3047 -0
- package/dist/sr-Latn-D-xKaOqV.js +3047 -0
- package/dist/sr-YU-1ULH6b8i.js +3047 -0
- package/dist/{statusPage-BF4qGjF3.js → statusPage-DeP-KBHD.js} +4 -4
- package/dist/sv-SE-5wAQ-CsE.js +3043 -0
- package/dist/sw-DVj-0--U.js +3043 -0
- package/dist/{tabs-BGL1oRLb.js → tabs-C8WsKO4V.js} +2 -2
- package/dist/th-TH-DAqLZmwn.js +3037 -0
- package/dist/th-ubpxty9O.js +3037 -0
- package/dist/themes/dark.css +125 -0
- package/dist/themes/light.css +124 -0
- package/dist/tl-DCL6tS5T.js +3043 -0
- package/dist/tl-PH-Wftt86RZ.js +3043 -0
- package/dist/tr-B58sWy89.js +3043 -0
- package/dist/{tutorial-LQuJ4dse.js → tutorial-BP1F722m.js} +40 -226
- package/dist/types/certificate-issuance.d.ts +4 -4
- package/dist/types/dynamic-forms.d.ts +177 -0
- package/dist/types/extensibility.d.ts +75 -23
- package/dist/types/flow.d.ts +37 -0
- package/dist/types/government-validation.d.ts +2 -1
- package/dist/types/index.d.ts +28 -4
- package/dist/types/video-selfie.d.ts +6 -161
- package/dist/typography-CYO7ELEl.js +53 -0
- package/dist/{uiConfig-Dqnjankd.js → uiConfig-BcjOx3PY.js} +184 -8
- package/dist/uk-BaklGIxd.js +3051 -0
- package/dist/uk-UA-BoawOp_y.js +3051 -0
- package/dist/ur-MYw3j3wD.js +3043 -0
- package/dist/useModuleLoader-DpcbSKBH.js +176 -0
- package/dist/uz-DWfToWrZ.js +3043 -0
- package/dist/{vendor-preact-BPXMFRom.js → vendor-preact-C0jX1Cbq.js} +68 -181
- package/dist/{verificationResult-q_zD_Pxh.js → verificationResult-Bre5Fb7M.js} +32 -25
- package/dist/vi-IY_487Pk.js +3037 -0
- package/dist/video-selfie/styles.css +51 -17
- package/dist/video-selfie/styles.css.js +1 -0
- package/dist/video-selfie/video-selfie.es.js +35 -23
- package/dist/watchlist/watchlist.es.js +7 -7
- package/dist/watchlist-for-business/styles.css.js +1 -0
- package/dist/{watchlistForBusiness-C_zqdY4P.js → watchlistForBusiness-BIrl-mYj.js} +28 -16
- package/dist/workflow/styles.css +1073 -356
- package/dist/workflow/workflow.es.js +17 -15
- package/dist/zh-B1yRDjHf.js +3037 -0
- package/dist/zh-CN-B2Yvvabk.js +3037 -0
- package/dist/zh-HANT-CdNxQtKM.js +3037 -0
- package/dist/zh-TW-BgqFmnMA.js +3037 -0
- package/package.json +32 -22
- package/dist/bottomSheet-BWEUBq8m.js +0 -38
- package/dist/dateInputComposed-BGC37jC7.js +0 -1
- package/dist/documentCapture-CO9kIxru.js +0 -2
- package/dist/dropdownComposed-Bf4EcKFw.js +0 -1
- package/dist/ekybModule-uN0ComAn.js +0 -2
- package/dist/ekycModule-B7KRJ7l3.js +0 -2
- package/dist/faceMatch-DjD2hgBp.js +0 -2
- package/dist/fieldComparison-DFH4hUM_.js +0 -2
- package/dist/inputComposed-kKtrvJU5.js +0 -1
- package/dist/pdfViewer-C1B-07Wu.js +0 -2
- package/dist/requiredLabelHint-Dx0WS2cR.js +0 -17
- package/dist/snackbar-eBOj46AK.js +0 -16
- package/dist/spinner-CJCOHUKx.js +0 -95
- package/dist/successIcon-DS8BLsgy.js +0 -30
- package/dist/types/dynamic-forms/styles.d.ts +0 -1
- /package/dist/{aligndevicelottie-CfoZ5Uus.js → aligndevicelottie-B12hbVhG.js} +0 -0
- /package/dist/{back-tutorial-BHyRHyET.js → back-tutorial-XdmQ0Wml.js} +0 -0
- /package/dist/{backdevicelottie-yKkczgFy.js → backdevicelottie-m_DOD8xE.js} +0 -0
- /package/dist/{blurdevicelottie-8BbophdM.js → blurdevicelottie-DQo_hTMD.js} +0 -0
- /package/dist/{browser-ponyfill-CBjGwwPW.js → browser-ponyfill-ZkeBm4ji.js} +0 -0
- /package/dist/{defineProperty-BbpBna-2.js → defineProperty-BojnCa44.js} +0 -0
- /package/dist/{flip-animation-CvN8FLNc.js → flip-animation-VicedlT5.js} +0 -0
- /package/dist/{frontdevicelottie-CFcahVLk.js → frontdevicelottie-CyIerlMv.js} +0 -0
- /package/dist/{glaredevicelottie-Cnvah0kz.js → glaredevicelottie-QM2C6Ivp.js} +0 -0
- /package/dist/{id-laser-h-BaUHzX-d.js → id-laser-h-B0-iXcvl.js} +0 -0
- /package/dist/{id-laser-v-Dv9yEYJE.js → id-laser-v-Bqh6vimi.js} +0 -0
- /package/dist/{id-tutorial-BOOsXlAJ.js → id-tutorial-IhmAzrIF.js} +0 -0
- /package/dist/{lottie_light-Bv56F2Ae.js → lottie_light-CzZ3CHBk.js} +0 -0
- /package/dist/{passport-tutorial-CeSup6m9.js → passport-tutorial-61vlloJS.js} +0 -0
- /package/dist/{selfieTutorial-CYa8bq6B.js → selfieTutorial-BRQ2QNxQ.js} +0 -0
package/dist/extensibility.es.js
CHANGED
|
@@ -1,24 +1,701 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { n as
|
|
6
|
-
import {
|
|
7
|
-
import { t as
|
|
8
|
-
import {
|
|
9
|
-
import { t as
|
|
10
|
-
import { t as
|
|
11
|
-
import {
|
|
12
|
-
import { t as
|
|
13
|
-
import { t as
|
|
14
|
-
import { n as Input, t as InputComposed } from "./inputComposed-
|
|
15
|
-
import { t as
|
|
16
|
-
import
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import { t as
|
|
20
|
-
import { t as
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
|
|
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 };
|