@incodetech/prizma-core-screens 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +74 -0
- package/dist/CaptureOverlay.css +55 -0
- package/dist/CaptureOverlay.d.ts +34 -0
- package/dist/CaptureOverlay.js +32 -0
- package/dist/CaptureScreen.d.ts +51 -0
- package/dist/CaptureScreen.js +30 -0
- package/dist/CurpConfirmScreen.d.ts +33 -0
- package/dist/CurpConfirmScreen.js +29 -0
- package/dist/CurpEnterScreen.d.ts +51 -0
- package/dist/CurpEnterScreen.js +77 -0
- package/dist/CurpGenerateScreen.d.ts +47 -0
- package/dist/CurpGenerateScreen.js +57 -0
- package/dist/CurpLayout.css +92 -0
- package/dist/CurpProcessingScreen.d.ts +32 -0
- package/dist/CurpProcessingScreen.js +29 -0
- package/dist/CurpResultScreen.d.ts +37 -0
- package/dist/CurpResultScreen.js +36 -0
- package/dist/CurpStrings.d.ts +170 -0
- package/dist/CurpStrings.js +16 -0
- package/dist/DataSharingConsentConsentScreen.d.ts +73 -0
- package/dist/DataSharingConsentConsentScreen.js +120 -0
- package/dist/DataSharingConsentLayout.css +78 -0
- package/dist/DataSharingConsentStrings.d.ts +96 -0
- package/dist/DataSharingConsentStrings.js +38 -0
- package/dist/DemoScreensEndScreen.d.ts +33 -0
- package/dist/DemoScreensEndScreen.js +27 -0
- package/dist/DemoScreensStrings.d.ts +11 -0
- package/dist/DemoScreensStrings.js +19 -0
- package/dist/DocumentCaptureCaptureScreen.d.ts +53 -0
- package/dist/DocumentCaptureCaptureScreen.js +51 -0
- package/dist/DocumentCaptureCommonIssuesScreen.d.ts +32 -0
- package/dist/DocumentCaptureCommonIssuesScreen.js +45 -0
- package/dist/DocumentCaptureConfirmImageScreen.d.ts +38 -0
- package/dist/DocumentCaptureConfirmImageScreen.js +34 -0
- package/dist/DocumentCaptureConfirmUploadScreen.d.ts +43 -0
- package/dist/DocumentCaptureConfirmUploadScreen.js +29 -0
- package/dist/DocumentCaptureGenericErrorScreen.d.ts +36 -0
- package/dist/DocumentCaptureGenericErrorScreen.js +30 -0
- package/dist/DocumentCaptureIllustration.d.ts +45 -0
- package/dist/DocumentCaptureIllustration.js +7 -0
- package/dist/DocumentCaptureLayout.css +226 -0
- package/dist/DocumentCaptureMethodSelectionScreen.d.ts +45 -0
- package/dist/DocumentCaptureMethodSelectionScreen.js +70 -0
- package/dist/DocumentCaptureNextPageScreen.d.ts +33 -0
- package/dist/DocumentCaptureNextPageScreen.js +28 -0
- package/dist/DocumentCaptureNoConnectionScreen.d.ts +28 -0
- package/dist/DocumentCaptureNoConnectionScreen.js +29 -0
- package/dist/DocumentCaptureStrings.d.ts +158 -0
- package/dist/DocumentCaptureStrings.js +21 -0
- package/dist/DocumentCaptureTutorialScreen.d.ts +36 -0
- package/dist/DocumentCaptureTutorialScreen.js +27 -0
- package/dist/EkybAddressDetailsScreen.d.ts +61 -0
- package/dist/EkybAddressDetailsScreen.js +63 -0
- package/dist/EkybBusinessDetailsScreen.d.ts +55 -0
- package/dist/EkybBusinessDetailsScreen.js +57 -0
- package/dist/EkybCountryScreen.d.ts +52 -0
- package/dist/EkybCountryScreen.js +58 -0
- package/dist/EkybErrorScreen.d.ts +30 -0
- package/dist/EkybErrorScreen.js +24 -0
- package/dist/EkybOwnersScreen.d.ts +73 -0
- package/dist/EkybOwnersScreen.js +87 -0
- package/dist/EkybProcessingScreen.d.ts +28 -0
- package/dist/EkybProcessingScreen.js +22 -0
- package/dist/EkybStrings.d.ts +200 -0
- package/dist/EkybStrings.js +27 -0
- package/dist/EkybSuccessScreen.d.ts +28 -0
- package/dist/EkybSuccessScreen.js +22 -0
- package/dist/EkycDetailsScreen.d.ts +65 -0
- package/dist/EkycDetailsScreen.js +81 -0
- package/dist/EkycErrorScreen.d.ts +32 -0
- package/dist/EkycErrorScreen.js +26 -0
- package/dist/EkycLayout.css +39 -0
- package/dist/EkycLicenseScreen.d.ts +21 -0
- package/dist/EkycLicenseScreen.js +68 -0
- package/dist/EkycProcessingScreen.d.ts +26 -0
- package/dist/EkycProcessingScreen.js +20 -0
- package/dist/EkycStrings.d.ts +112 -0
- package/dist/EkycStrings.js +34 -0
- package/dist/EkycSuccessScreen.d.ts +29 -0
- package/dist/EkycSuccessScreen.js +23 -0
- package/dist/ElectronicSignatureDrawScreen.d.ts +57 -0
- package/dist/ElectronicSignatureDrawScreen.js +53 -0
- package/dist/ElectronicSignatureErrorScreen.d.ts +31 -0
- package/dist/ElectronicSignatureErrorScreen.js +25 -0
- package/dist/ElectronicSignatureLayout.css +80 -0
- package/dist/ElectronicSignatureReviewScreen.d.ts +51 -0
- package/dist/ElectronicSignatureReviewScreen.js +36 -0
- package/dist/ElectronicSignatureStrings.d.ts +50 -0
- package/dist/ElectronicSignatureStrings.js +12 -0
- package/dist/ElectronicSignatureSuccessScreen.d.ts +30 -0
- package/dist/ElectronicSignatureSuccessScreen.js +24 -0
- package/dist/EmailInputErrorScreen.d.ts +34 -0
- package/dist/EmailInputErrorScreen.js +28 -0
- package/dist/EmailInputOtpScreen.d.ts +56 -0
- package/dist/EmailInputOtpScreen.js +82 -0
- package/dist/EmailInputProcessingScreen.d.ts +29 -0
- package/dist/EmailInputProcessingScreen.js +23 -0
- package/dist/EmailInputStrings.d.ts +130 -0
- package/dist/EmailInputStrings.js +19 -0
- package/dist/EmailInputSuccessScreen.d.ts +37 -0
- package/dist/EmailInputSuccessScreen.js +31 -0
- package/dist/EmailInputVerifyScreen.d.ts +46 -0
- package/dist/EmailInputVerifyScreen.js +55 -0
- package/dist/ErrorScreensScreen.d.ts +62 -0
- package/dist/ErrorScreensScreen.js +71 -0
- package/dist/ErrorScreensStrings.d.ts +31 -0
- package/dist/ErrorScreensStrings.js +28 -0
- package/dist/FaceCaptureCapturingScreen.d.ts +32 -0
- package/dist/FaceCaptureCapturingScreen.js +53 -0
- package/dist/FaceCaptureLayout.css +18 -0
- package/dist/FaceCaptureLoadingScreen.d.ts +32 -0
- package/dist/FaceCaptureLoadingScreen.js +30 -0
- package/dist/FaceCaptureManualCaptureScreen.d.ts +32 -0
- package/dist/FaceCaptureManualCaptureScreen.js +27 -0
- package/dist/FaceCaptureNoConnectionScreen.d.ts +30 -0
- package/dist/FaceCaptureNoConnectionScreen.js +31 -0
- package/dist/FaceCaptureResultErrorScreen.d.ts +40 -0
- package/dist/FaceCaptureResultErrorScreen.js +32 -0
- package/dist/FaceCaptureResultSuccessScreen.d.ts +25 -0
- package/dist/FaceCaptureResultSuccessScreen.js +27 -0
- package/dist/FaceCaptureStrings.d.ts +62 -0
- package/dist/FaceCaptureStrings.js +14 -0
- package/dist/FaceCaptureTutorialScreen.d.ts +29 -0
- package/dist/FaceCaptureTutorialScreen.js +20 -0
- package/dist/FaceMatchComparisonCompactScreen.d.ts +26 -0
- package/dist/FaceMatchComparisonCompactScreen.js +24 -0
- package/dist/FaceMatchComparisonScreen.d.ts +80 -0
- package/dist/FaceMatchComparisonScreen.js +81 -0
- package/dist/FaceMatchLayout.css +264 -0
- package/dist/FaceMatchResultScreen.d.ts +50 -0
- package/dist/FaceMatchResultScreen.js +52 -0
- package/dist/FaceMatchStrings.d.ts +66 -0
- package/dist/FaceMatchStrings.js +21 -0
- package/dist/FormScreen.css +78 -0
- package/dist/FormScreen.d.ts +101 -0
- package/dist/FormScreen.js +36 -0
- package/dist/FormsChoiceScreen.d.ts +66 -0
- package/dist/FormsChoiceScreen.js +63 -0
- package/dist/FormsErrorScreen.d.ts +28 -0
- package/dist/FormsErrorScreen.js +22 -0
- package/dist/FormsFieldScreen.d.ts +66 -0
- package/dist/FormsFieldScreen.js +85 -0
- package/dist/FormsLayout.css +45 -0
- package/dist/FormsLongFormScreen.d.ts +70 -0
- package/dist/FormsLongFormScreen.js +149 -0
- package/dist/FormsStrings.d.ts +181 -0
- package/dist/FormsStrings.js +36 -0
- package/dist/FormsSuccessScreen.d.ts +32 -0
- package/dist/FormsSuccessScreen.js +26 -0
- package/dist/GeolocationBrowserStepsScreen.d.ts +56 -0
- package/dist/GeolocationBrowserStepsScreen.js +95 -0
- package/dist/GeolocationErrorScreen.d.ts +43 -0
- package/dist/GeolocationErrorScreen.js +56 -0
- package/dist/GeolocationIntroScreen.d.ts +49 -0
- package/dist/GeolocationIntroScreen.js +38 -0
- package/dist/GeolocationPermissionScreen.d.ts +38 -0
- package/dist/GeolocationPermissionScreen.js +30 -0
- package/dist/GeolocationStrings.d.ts +157 -0
- package/dist/GeolocationStrings.js +28 -0
- package/dist/IdCaptureAgeVerificationScreen.d.ts +25 -0
- package/dist/IdCaptureAgeVerificationScreen.js +38 -0
- package/dist/IdCaptureAnalyzingScreen.d.ts +41 -0
- package/dist/IdCaptureAnalyzingScreen.js +30 -0
- package/dist/IdCaptureCommonIssuesScreen.d.ts +31 -0
- package/dist/IdCaptureCommonIssuesScreen.js +49 -0
- package/dist/IdCaptureDocumentErrorScreen.d.ts +37 -0
- package/dist/IdCaptureDocumentErrorScreen.js +30 -0
- package/dist/IdCaptureDocumentSelectionScreen.d.ts +41 -0
- package/dist/IdCaptureDocumentSelectionScreen.js +49 -0
- package/dist/IdCaptureFlipScreen.d.ts +31 -0
- package/dist/IdCaptureFlipScreen.js +26 -0
- package/dist/IdCaptureHoldOnScreen.d.ts +28 -0
- package/dist/IdCaptureHoldOnScreen.js +22 -0
- package/dist/IdCaptureLayout.css +111 -0
- package/dist/IdCaptureNoConnectionScreen.d.ts +28 -0
- package/dist/IdCaptureNoConnectionScreen.js +29 -0
- package/dist/IdCapturePermissionScreen.d.ts +34 -0
- package/dist/IdCapturePermissionScreen.js +45 -0
- package/dist/IdCaptureResultScreen.d.ts +59 -0
- package/dist/IdCaptureResultScreen.js +89 -0
- package/dist/IdCaptureStageScreen.d.ts +69 -0
- package/dist/IdCaptureStageScreen.js +88 -0
- package/dist/IdCaptureStrings.d.ts +199 -0
- package/dist/IdCaptureStrings.js +15 -0
- package/dist/IdCaptureTutorialScreen.d.ts +36 -0
- package/dist/IdCaptureTutorialScreen.js +30 -0
- package/dist/ListScreen.d.ts +95 -0
- package/dist/ListScreen.js +46 -0
- package/dist/LoaderScreen.d.ts +32 -0
- package/dist/LoaderScreen.js +27 -0
- package/dist/LoadersStrings.d.ts +20 -0
- package/dist/LoadersStrings.js +16 -0
- package/dist/NfcCommonIssuesScreen.d.ts +35 -0
- package/dist/NfcCommonIssuesScreen.js +48 -0
- package/dist/NfcErrorScreen.d.ts +41 -0
- package/dist/NfcErrorScreen.js +27 -0
- package/dist/NfcLayout.css +36 -0
- package/dist/NfcProcessingScreen.d.ts +28 -0
- package/dist/NfcProcessingScreen.js +22 -0
- package/dist/NfcScanningScreen.d.ts +66 -0
- package/dist/NfcScanningScreen.js +61 -0
- package/dist/NfcSettingsScreen.d.ts +53 -0
- package/dist/NfcSettingsScreen.js +57 -0
- package/dist/NfcStrings.d.ts +112 -0
- package/dist/NfcStrings.js +7 -0
- package/dist/NfcSuccessScreen.d.ts +28 -0
- package/dist/NfcSuccessScreen.js +22 -0
- package/dist/NfcSymbolScreen.d.ts +39 -0
- package/dist/NfcSymbolScreen.js +32 -0
- package/dist/NfcTryAgainScreen.d.ts +53 -0
- package/dist/NfcTryAgainScreen.js +45 -0
- package/dist/NfcTutorialScreen.d.ts +33 -0
- package/dist/NfcTutorialScreen.js +24 -0
- package/dist/PermissionsAllowScreen.d.ts +44 -0
- package/dist/PermissionsAllowScreen.js +38 -0
- package/dist/PermissionsBrowserStepsScreen.d.ts +42 -0
- package/dist/PermissionsBrowserStepsScreen.js +86 -0
- package/dist/PermissionsRequiredScreen.d.ts +37 -0
- package/dist/PermissionsRequiredScreen.js +51 -0
- package/dist/PermissionsStrings.d.ts +70 -0
- package/dist/PermissionsStrings.js +36 -0
- package/dist/PhoneInputErrorScreen.d.ts +37 -0
- package/dist/PhoneInputErrorScreen.js +47 -0
- package/dist/PhoneInputLayout.css +61 -0
- package/dist/PhoneInputOtpScreen.d.ts +37 -0
- package/dist/PhoneInputOtpScreen.js +44 -0
- package/dist/PhoneInputSnaLoadingScreen.d.ts +23 -0
- package/dist/PhoneInputSnaLoadingScreen.js +17 -0
- package/dist/PhoneInputStrings.d.ts +121 -0
- package/dist/PhoneInputStrings.js +13 -0
- package/dist/PhoneInputSuccessScreen.d.ts +23 -0
- package/dist/PhoneInputSuccessScreen.js +17 -0
- package/dist/PhoneInputVerifyScreen.d.ts +41 -0
- package/dist/PhoneInputVerifyScreen.js +71 -0
- package/dist/ProcessingScreen.d.ts +42 -0
- package/dist/ProcessingScreen.js +21 -0
- package/dist/QualifiedSignatureAcceptScreen.d.ts +71 -0
- package/dist/QualifiedSignatureAcceptScreen.js +86 -0
- package/dist/QualifiedSignatureDocumentScreen.d.ts +62 -0
- package/dist/QualifiedSignatureDocumentScreen.js +56 -0
- package/dist/QualifiedSignatureLayout.css +206 -0
- package/dist/QualifiedSignatureProcessingScreen.d.ts +46 -0
- package/dist/QualifiedSignatureProcessingScreen.js +48 -0
- package/dist/QualifiedSignatureResultScreen.d.ts +65 -0
- package/dist/QualifiedSignatureResultScreen.js +76 -0
- package/dist/QualifiedSignatureReviewScreen.d.ts +49 -0
- package/dist/QualifiedSignatureReviewScreen.js +40 -0
- package/dist/QualifiedSignatureStrings.d.ts +222 -0
- package/dist/QualifiedSignatureStrings.js +25 -0
- package/dist/QualifiedSignatureUploadScreen.d.ts +42 -0
- package/dist/QualifiedSignatureUploadScreen.js +35 -0
- package/dist/ResultScreen.d.ts +93 -0
- package/dist/ResultScreen.js +37 -0
- package/dist/ReviewScreen.d.ts +81 -0
- package/dist/ReviewScreen.js +56 -0
- package/dist/ScreenLayout.css +469 -0
- package/dist/ScreenNav.css +43 -0
- package/dist/ScreenNav.d.ts +26 -0
- package/dist/ScreenNav.js +13 -0
- package/dist/ScreenShell.css +130 -0
- package/dist/ScreenShell.d.ts +45 -0
- package/dist/ScreenShell.js +22 -0
- package/dist/TutorialScreen.d.ts +70 -0
- package/dist/TutorialScreen.js +24 -0
- package/dist/VideoSelfieCameraStepsScreen.d.ts +47 -0
- package/dist/VideoSelfieCameraStepsScreen.js +56 -0
- package/dist/VideoSelfieErrorScreen.d.ts +63 -0
- package/dist/VideoSelfieErrorScreen.js +94 -0
- package/dist/VideoSelfieFlipCameraScreen.d.ts +34 -0
- package/dist/VideoSelfieFlipCameraScreen.js +38 -0
- package/dist/VideoSelfieFlipIdScreen.d.ts +34 -0
- package/dist/VideoSelfieFlipIdScreen.js +29 -0
- package/dist/VideoSelfieIdCaptureScreen.d.ts +75 -0
- package/dist/VideoSelfieIdCaptureScreen.js +86 -0
- package/dist/VideoSelfieLayout.css +259 -0
- package/dist/VideoSelfiePermissionRequiredScreen.d.ts +35 -0
- package/dist/VideoSelfiePermissionRequiredScreen.js +45 -0
- package/dist/VideoSelfiePermissionScreen.d.ts +51 -0
- package/dist/VideoSelfiePermissionScreen.js +44 -0
- package/dist/VideoSelfieProcessingScreen.d.ts +28 -0
- package/dist/VideoSelfieProcessingScreen.js +22 -0
- package/dist/VideoSelfieRetryScreen.d.ts +31 -0
- package/dist/VideoSelfieRetryScreen.js +32 -0
- package/dist/VideoSelfieSelfieCaptureScreen.d.ts +52 -0
- package/dist/VideoSelfieSelfieCaptureScreen.js +58 -0
- package/dist/VideoSelfieSpeakScreen.d.ts +64 -0
- package/dist/VideoSelfieSpeakScreen.js +95 -0
- package/dist/VideoSelfieStrings.d.ts +196 -0
- package/dist/VideoSelfieStrings.js +14 -0
- package/dist/VideoSelfieSuccessScreen.d.ts +25 -0
- package/dist/VideoSelfieSuccessScreen.js +19 -0
- package/dist/VideoSelfieTutorialScreen.d.ts +33 -0
- package/dist/VideoSelfieTutorialScreen.js +41 -0
- package/dist/ViewfinderScreen.css +107 -0
- package/dist/ViewfinderScreen.d.ts +40 -0
- package/dist/ViewfinderScreen.js +26 -0
- package/dist/WatchlistBusinessFormScreen.d.ts +61 -0
- package/dist/WatchlistBusinessFormScreen.js +85 -0
- package/dist/WatchlistBusinessProcessingScreen.d.ts +25 -0
- package/dist/WatchlistBusinessProcessingScreen.js +19 -0
- package/dist/WatchlistBusinessStrings.d.ts +95 -0
- package/dist/WatchlistBusinessStrings.js +19 -0
- package/dist/WatchlistBusinessSuccessScreen.d.ts +29 -0
- package/dist/WatchlistBusinessSuccessScreen.js +23 -0
- package/dist/flows.d.ts +216 -0
- package/dist/flows.js +516 -0
- package/dist/index.d.ts +145 -0
- package/dist/index.js +130 -0
- package/dist/styles.css +33 -0
- package/dist/types.d.ts +56 -0
- package/dist/types.js +8 -0
- package/package.json +689 -0
- package/samples/camera-surface.png +0 -0
- package/samples/document-still.png +0 -0
- package/samples/document-thumbnail.png +0 -0
- package/samples/face-match-bottom.png +0 -0
- package/samples/face-match-left.png +0 -0
- package/samples/face-match-right.png +0 -0
- package/samples/id-back-blur.png +0 -0
- package/samples/id-back-dark.png +0 -0
- package/samples/id-back-glare.png +0 -0
- package/samples/id-back.png +0 -0
- package/samples/id-front-blur.png +0 -0
- package/samples/id-front-dark.png +0 -0
- package/samples/id-front-glare.png +0 -0
- package/samples/id-front.png +0 -0
- package/samples/id-passport.png +0 -0
- package/samples/selfie-glasses.png +0 -0
- package/samples/selfie-hat.png +0 -0
- package/samples/selfie-mask.png +0 -0
- package/samples/selfie.png +0 -0
- package/samples/video-selfie-camera.png +0 -0
- package/src/CaptureOverlay.css +55 -0
- package/src/CaptureOverlay.tsx +56 -0
- package/src/CaptureScreen.tsx +121 -0
- package/src/CurpConfirmScreen.tsx +75 -0
- package/src/CurpEnterScreen.tsx +149 -0
- package/src/CurpGenerateScreen.tsx +172 -0
- package/src/CurpLayout.css +92 -0
- package/src/CurpProcessingScreen.tsx +75 -0
- package/src/CurpResultScreen.tsx +80 -0
- package/src/CurpStrings.ts +178 -0
- package/src/DataSharingConsentConsentScreen.tsx +223 -0
- package/src/DataSharingConsentLayout.css +78 -0
- package/src/DataSharingConsentStrings.ts +144 -0
- package/src/DemoScreensEndScreen.tsx +56 -0
- package/src/DemoScreensStrings.ts +31 -0
- package/src/DocumentCaptureCaptureScreen.tsx +135 -0
- package/src/DocumentCaptureCommonIssuesScreen.tsx +97 -0
- package/src/DocumentCaptureConfirmImageScreen.tsx +112 -0
- package/src/DocumentCaptureConfirmUploadScreen.tsx +113 -0
- package/src/DocumentCaptureGenericErrorScreen.tsx +82 -0
- package/src/DocumentCaptureIllustration.tsx +153 -0
- package/src/DocumentCaptureLayout.css +226 -0
- package/src/DocumentCaptureMethodSelectionScreen.tsx +151 -0
- package/src/DocumentCaptureNextPageScreen.tsx +82 -0
- package/src/DocumentCaptureNoConnectionScreen.tsx +77 -0
- package/src/DocumentCaptureStrings.ts +192 -0
- package/src/DocumentCaptureTutorialScreen.tsx +79 -0
- package/src/EkybAddressDetailsScreen.tsx +200 -0
- package/src/EkybBusinessDetailsScreen.tsx +147 -0
- package/src/EkybCountryScreen.tsx +124 -0
- package/src/EkybErrorScreen.tsx +61 -0
- package/src/EkybOwnersScreen.tsx +230 -0
- package/src/EkybProcessingScreen.tsx +57 -0
- package/src/EkybStrings.ts +239 -0
- package/src/EkybSuccessScreen.tsx +54 -0
- package/src/EkycDetailsScreen.tsx +178 -0
- package/src/EkycErrorScreen.tsx +64 -0
- package/src/EkycLayout.css +39 -0
- package/src/EkycLicenseScreen.tsx +164 -0
- package/src/EkycProcessingScreen.tsx +60 -0
- package/src/EkycStrings.ts +157 -0
- package/src/EkycSuccessScreen.tsx +63 -0
- package/src/ElectronicSignatureDrawScreen.tsx +127 -0
- package/src/ElectronicSignatureErrorScreen.tsx +74 -0
- package/src/ElectronicSignatureLayout.css +80 -0
- package/src/ElectronicSignatureReviewScreen.tsx +106 -0
- package/src/ElectronicSignatureStrings.ts +67 -0
- package/src/ElectronicSignatureSuccessScreen.tsx +67 -0
- package/src/EmailInputErrorScreen.tsx +67 -0
- package/src/EmailInputOtpScreen.tsx +169 -0
- package/src/EmailInputProcessingScreen.tsx +67 -0
- package/src/EmailInputStrings.ts +166 -0
- package/src/EmailInputSuccessScreen.tsx +72 -0
- package/src/EmailInputVerifyScreen.tsx +117 -0
- package/src/ErrorScreensScreen.tsx +149 -0
- package/src/ErrorScreensStrings.ts +66 -0
- package/src/FaceCaptureCapturingScreen.tsx +99 -0
- package/src/FaceCaptureLayout.css +18 -0
- package/src/FaceCaptureLoadingScreen.tsx +65 -0
- package/src/FaceCaptureManualCaptureScreen.tsx +94 -0
- package/src/FaceCaptureNoConnectionScreen.tsx +73 -0
- package/src/FaceCaptureResultErrorScreen.tsx +86 -0
- package/src/FaceCaptureResultSuccessScreen.tsx +49 -0
- package/src/FaceCaptureStrings.ts +92 -0
- package/src/FaceCaptureTutorialScreen.tsx +77 -0
- package/src/FaceMatchComparisonCompactScreen.tsx +51 -0
- package/src/FaceMatchComparisonScreen.tsx +201 -0
- package/src/FaceMatchLayout.css +264 -0
- package/src/FaceMatchResultScreen.tsx +117 -0
- package/src/FaceMatchStrings.ts +95 -0
- package/src/FormScreen.css +78 -0
- package/src/FormScreen.tsx +213 -0
- package/src/FormsChoiceScreen.tsx +150 -0
- package/src/FormsErrorScreen.tsx +61 -0
- package/src/FormsFieldScreen.tsx +198 -0
- package/src/FormsLayout.css +45 -0
- package/src/FormsLongFormScreen.tsx +295 -0
- package/src/FormsStrings.ts +243 -0
- package/src/FormsSuccessScreen.tsx +67 -0
- package/src/GeolocationBrowserStepsScreen.tsx +173 -0
- package/src/GeolocationErrorScreen.tsx +113 -0
- package/src/GeolocationIntroScreen.tsx +100 -0
- package/src/GeolocationPermissionScreen.tsx +88 -0
- package/src/GeolocationStrings.ts +193 -0
- package/src/IdCaptureAgeVerificationScreen.tsx +84 -0
- package/src/IdCaptureAnalyzingScreen.tsx +94 -0
- package/src/IdCaptureCommonIssuesScreen.tsx +109 -0
- package/src/IdCaptureDocumentErrorScreen.tsx +92 -0
- package/src/IdCaptureDocumentSelectionScreen.tsx +100 -0
- package/src/IdCaptureFlipScreen.tsx +66 -0
- package/src/IdCaptureHoldOnScreen.tsx +51 -0
- package/src/IdCaptureLayout.css +111 -0
- package/src/IdCaptureNoConnectionScreen.tsx +68 -0
- package/src/IdCapturePermissionScreen.tsx +102 -0
- package/src/IdCaptureResultScreen.tsx +197 -0
- package/src/IdCaptureStageScreen.tsx +241 -0
- package/src/IdCaptureStrings.ts +228 -0
- package/src/IdCaptureTutorialScreen.tsx +99 -0
- package/src/ListScreen.tsx +213 -0
- package/src/LoaderScreen.tsx +69 -0
- package/src/LoadersStrings.ts +38 -0
- package/src/NfcCommonIssuesScreen.tsx +104 -0
- package/src/NfcErrorScreen.tsx +83 -0
- package/src/NfcLayout.css +36 -0
- package/src/NfcProcessingScreen.tsx +57 -0
- package/src/NfcScanningScreen.tsx +127 -0
- package/src/NfcSettingsScreen.tsx +124 -0
- package/src/NfcStrings.ts +127 -0
- package/src/NfcSuccessScreen.tsx +56 -0
- package/src/NfcSymbolScreen.tsx +85 -0
- package/src/NfcTryAgainScreen.tsx +114 -0
- package/src/NfcTutorialScreen.tsx +76 -0
- package/src/PermissionsAllowScreen.tsx +90 -0
- package/src/PermissionsBrowserStepsScreen.tsx +158 -0
- package/src/PermissionsRequiredScreen.tsx +118 -0
- package/src/PermissionsStrings.ts +129 -0
- package/src/PhoneInputErrorScreen.tsx +104 -0
- package/src/PhoneInputLayout.css +61 -0
- package/src/PhoneInputOtpScreen.tsx +126 -0
- package/src/PhoneInputSnaLoadingScreen.tsx +61 -0
- package/src/PhoneInputStrings.ts +136 -0
- package/src/PhoneInputSuccessScreen.tsx +56 -0
- package/src/PhoneInputVerifyScreen.tsx +153 -0
- package/src/ProcessingScreen.tsx +97 -0
- package/src/QualifiedSignatureAcceptScreen.tsx +198 -0
- package/src/QualifiedSignatureDocumentScreen.tsx +124 -0
- package/src/QualifiedSignatureLayout.css +206 -0
- package/src/QualifiedSignatureProcessingScreen.tsx +112 -0
- package/src/QualifiedSignatureResultScreen.tsx +146 -0
- package/src/QualifiedSignatureReviewScreen.tsx +113 -0
- package/src/QualifiedSignatureStrings.ts +256 -0
- package/src/QualifiedSignatureUploadScreen.tsx +81 -0
- package/src/ResultScreen.tsx +211 -0
- package/src/ReviewScreen.tsx +196 -0
- package/src/ScreenLayout.css +469 -0
- package/src/ScreenNav.css +43 -0
- package/src/ScreenNav.tsx +46 -0
- package/src/ScreenShell.css +130 -0
- package/src/ScreenShell.tsx +66 -0
- package/src/TutorialScreen.tsx +166 -0
- package/src/VideoSelfieCameraStepsScreen.tsx +145 -0
- package/src/VideoSelfieErrorScreen.tsx +168 -0
- package/src/VideoSelfieFlipCameraScreen.tsx +88 -0
- package/src/VideoSelfieFlipIdScreen.tsx +74 -0
- package/src/VideoSelfieIdCaptureScreen.tsx +213 -0
- package/src/VideoSelfieLayout.css +259 -0
- package/src/VideoSelfiePermissionRequiredScreen.tsx +104 -0
- package/src/VideoSelfiePermissionScreen.tsx +102 -0
- package/src/VideoSelfieProcessingScreen.tsx +68 -0
- package/src/VideoSelfieRetryScreen.tsx +92 -0
- package/src/VideoSelfieSelfieCaptureScreen.tsx +122 -0
- package/src/VideoSelfieSpeakScreen.tsx +237 -0
- package/src/VideoSelfieStrings.ts +222 -0
- package/src/VideoSelfieSuccessScreen.tsx +64 -0
- package/src/VideoSelfieTutorialScreen.tsx +129 -0
- package/src/ViewfinderScreen.css +107 -0
- package/src/ViewfinderScreen.tsx +113 -0
- package/src/WatchlistBusinessFormScreen.tsx +176 -0
- package/src/WatchlistBusinessProcessingScreen.tsx +63 -0
- package/src/WatchlistBusinessStrings.ts +121 -0
- package/src/WatchlistBusinessSuccessScreen.tsx +67 -0
- package/src/flows.ts +711 -0
- package/src/index.ts +591 -0
- package/src/styles.css +33 -0
- package/src/types.ts +69 -0
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
/* Qualified Signature — module layout additions.
|
|
2
|
+
*
|
|
3
|
+
* ONLY what the foundation archetypes and Prizma Core do not already own.
|
|
4
|
+
* NOTHING here re-declares an archetype spacing rule: the content column, the
|
|
5
|
+
* 24px gutters, the title → fields Spacing/32 (`FormScreen.css`), the title →
|
|
6
|
+
* list Spacing/24 (`__list`), the review header → stage Spacing/32 and stage →
|
|
7
|
+
* CTA Spacing/24 (`__review-*`), the CTA-band recipe (`__band`, DEVIATIONS #8)
|
|
8
|
+
* and the anchored footer (#F-29) all stay the foundation's.
|
|
9
|
+
*
|
|
10
|
+
* Every rule below is one of exactly three kinds:
|
|
11
|
+
* (a) CONTENT rhythm inside a slot the archetype hands over — the same
|
|
12
|
+
* licence §6-G gives a Core card list ("the list keeps its own row
|
|
13
|
+
* rhythm; the archetype supplies only the offset above it");
|
|
14
|
+
* (b) a RELEASE of a Core/foundation constraint a purple section contradicts
|
|
15
|
+
* — the idiom Phone Input's `width: auto` (#PI-1) and CURP's scrolling
|
|
16
|
+
* field stack (#CURP-1) established;
|
|
17
|
+
* (c) media CONTENT Core has no primitive for, rebuilt from Core's own
|
|
18
|
+
* tokens, with the Core request recorded.
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
/* ── (b) The consent stack is taller than the screen ─────────────────────────
|
|
22
|
+
* `QSign.AcceptSign.default` is a 1156-tall frame (the `selectedCheckox` one is
|
|
23
|
+
* 1160): five consent containers at ~120 each plus the document row push CONTENT
|
|
24
|
+
* far past the 654 a 390×844 reference gives it. Figma lets the page grow and
|
|
25
|
+
* the browser scroll; screens are authored at 390×844 and never reflow
|
|
26
|
+
* (DEVIATIONS #17), and archetype E's `.prizma-form-screen__fields` is
|
|
27
|
+
* `flex: 1; min-height: 0` with NO overflow behaviour — so the surplus is
|
|
28
|
+
* clipped by `ScreenShell`'s `overflow: hidden` and first paints over the CTA.
|
|
29
|
+
*
|
|
30
|
+
* The stack therefore scrolls INSIDE the column: the title, the CTA, the link
|
|
31
|
+
* and the anchored tag hold still while the clauses pan. It adds no padding, no
|
|
32
|
+
* gap and no size of its own. Identical to CURP's `.curp-generate--scroll`
|
|
33
|
+
* (DEVIATIONS #CURP-1) — this is the SECOND module to need it.
|
|
34
|
+
*
|
|
35
|
+
* FOUNDATION REQUEST (restated, now with two consumers): promote this to
|
|
36
|
+
* `FormScreen.css` as a `.prizma-form-screen__fields--scroll` variant driven by
|
|
37
|
+
* a `scrollFields` prop on `PrizmaFormScreen`. Every long-form module left in
|
|
38
|
+
* Wave 3 — eKYC, eKYB, address entry — hits the same wall.
|
|
39
|
+
*/
|
|
40
|
+
/* CLOSED: the scroll is now the archetype's `scrollFields` prop
|
|
41
|
+
* (`.prizma-form-screen__fields--scroll` in FormScreen.css), which also gives
|
|
42
|
+
* every row `flex-shrink: 0`. Keeping the rule here re-declared layout in a
|
|
43
|
+
* module file AND missed that fix, which collapsed the document row to 18px and
|
|
44
|
+
* clipped its View button (owner-reported 2026-08-19). DEVIATIONS #QS-1. */
|
|
45
|
+
|
|
46
|
+
/* ── (a) Consent-clause rhythm ───────────────────────────────────────────────
|
|
47
|
+
* Figma stacks the `Checkbox` (size L / Container) instances at Spacing/4
|
|
48
|
+
* inside the accept screen's `bottom container`. Core ships the clause card
|
|
49
|
+
* itself (`PrizmaCheckbox size="L"` — tinted surface, 28px box, inline links)
|
|
50
|
+
* but no group wrapper, so the row rhythm is supplied here, exactly as a
|
|
51
|
+
* `PrizmaCardList` supplies its own. One token, no padding, no size.
|
|
52
|
+
*
|
|
53
|
+
* CORE REQUEST: a consent-group primitive (`PrizmaCheckboxGroup`) would own
|
|
54
|
+
* this gap and the group's `role="group"` naming.
|
|
55
|
+
*/
|
|
56
|
+
.qualified-signature-terms {
|
|
57
|
+
display: flex;
|
|
58
|
+
flex-direction: column;
|
|
59
|
+
gap: var(--prizma-spacing-4);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/* ── (c) Uploaded-file preview card ──────────────────────────────────────────
|
|
63
|
+
* `QSign.reviewDoc.default`'s `Document Container` — a VERTICAL card holding a
|
|
64
|
+
* page thumbnail over the filename. Core's `PrizmaCardDocumentContainer` shares
|
|
65
|
+
* the Figma name but is the HORIZONTAL filename + action row (used on the accept
|
|
66
|
+
* screen, where it IS the right component). Rebuilt here from the same Card
|
|
67
|
+
* tokens: Surface/Neutral/50 on Border/Neutral/100 at Border/Radius/large,
|
|
68
|
+
* Spacing/32 block + Spacing/24 inline padding, Spacing/24 thumbnail → name.
|
|
69
|
+
*
|
|
70
|
+
* CORE REQUEST (third module to need it — Document Capture's `confirmUpload`
|
|
71
|
+
* has a byte-equivalent copy, DEVIATIONS #DC-27): promote a
|
|
72
|
+
* `PrizmaCardFilePreview`. Two identical hand-builds were already one too many;
|
|
73
|
+
* three is the #DC-29 threshold that got the glyph slot promoted.
|
|
74
|
+
*/
|
|
75
|
+
.qualified-signature-file-card {
|
|
76
|
+
display: flex;
|
|
77
|
+
flex-direction: column;
|
|
78
|
+
align-items: center;
|
|
79
|
+
gap: var(--prizma-spacing-24);
|
|
80
|
+
box-sizing: border-box;
|
|
81
|
+
width: 100%;
|
|
82
|
+
padding: var(--prizma-spacing-32) var(--prizma-spacing-24);
|
|
83
|
+
background: var(--prizma-surface-neutral-50);
|
|
84
|
+
border: var(--prizma-border-width-regular) solid var(--prizma-border-neutral-100);
|
|
85
|
+
border-radius: var(--prizma-border-radius-large);
|
|
86
|
+
overflow: hidden;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/* Thumbnail — Figma draws `Artboard 1` at 113.25 × 150, a 3:4 page crop. Sized
|
|
90
|
+
* by ratio so it scales with the host and capped at the design width. */
|
|
91
|
+
.qualified-signature-file-card__thumb {
|
|
92
|
+
position: relative;
|
|
93
|
+
flex: none;
|
|
94
|
+
width: 113px; /* hardcoded — Figma page-thumbnail width; absent from the token SOT (same class as DEVIATIONS #DC-27) */
|
|
95
|
+
aspect-ratio: 3 / 4;
|
|
96
|
+
max-width: 100%;
|
|
97
|
+
border: var(--prizma-border-width-regular) solid var(--prizma-border-neutral-100);
|
|
98
|
+
border-radius: var(--prizma-border-radius-small);
|
|
99
|
+
overflow: hidden;
|
|
100
|
+
background: var(--prizma-surface-neutral-0);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.qualified-signature-file-card__thumb > img,
|
|
104
|
+
.qualified-signature-file-card__thumb > svg {
|
|
105
|
+
position: absolute;
|
|
106
|
+
inset: 0;
|
|
107
|
+
width: 100%;
|
|
108
|
+
height: 100%;
|
|
109
|
+
object-fit: cover;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
.qualified-signature-file-card__name {
|
|
113
|
+
margin: 0;
|
|
114
|
+
width: 100%;
|
|
115
|
+
overflow-wrap: break-word;
|
|
116
|
+
text-align: center;
|
|
117
|
+
color: var(--prizma-text-body-800-primary);
|
|
118
|
+
font-family: var(--prizma-headline-family);
|
|
119
|
+
font-size: var(--prizma-headline-h5-font-size);
|
|
120
|
+
font-weight: var(--prizma-headline-h5-font-weight);
|
|
121
|
+
line-height: var(--prizma-headline-h5-line-height);
|
|
122
|
+
letter-spacing: var(--prizma-headline-h5-letter-spacing);
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/* The card is inset inside the media stage — Figma centres the 246-wide
|
|
126
|
+
* container in the 342 column (48 each side). The spacing scale stops at 40, so
|
|
127
|
+
* the value is DERIVED from Spacing/24 rather than hardcoded. */
|
|
128
|
+
.qualified-signature-review-file {
|
|
129
|
+
padding-inline: calc(var(--prizma-spacing-24) * 2);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
/* ── (c) Standalone encrypted notice ─────────────────────────────────────────
|
|
133
|
+
* "All data is encrypted" sits beside the file card, not under a capture frame.
|
|
134
|
+
* Core owns that building block ONLY as a private part of `PrizmaIdCapture`, so
|
|
135
|
+
* it is rebuilt from the identical tokens (Spacing/8 block padding, Spacing/4
|
|
136
|
+
* gap, Body/M Regular, Text/Body/800). One literal: the 16px lock clamp —
|
|
137
|
+
* `IconLock` is designed at 24 only and the icon-size axis has no 16, the same
|
|
138
|
+
* clamp Core itself writes in `IdCapture.css`.
|
|
139
|
+
*
|
|
140
|
+
* CORE REQUEST (third consumer, DEVIATIONS #DC-26): extract
|
|
141
|
+
* `PrizmaEncryptedNotice`.
|
|
142
|
+
*/
|
|
143
|
+
.qualified-signature-encrypted {
|
|
144
|
+
margin: 0;
|
|
145
|
+
flex-shrink: 0;
|
|
146
|
+
display: flex;
|
|
147
|
+
align-items: center;
|
|
148
|
+
justify-content: center;
|
|
149
|
+
gap: var(--prizma-spacing-4);
|
|
150
|
+
padding-block: var(--prizma-spacing-8);
|
|
151
|
+
color: var(--prizma-text-body-800-primary);
|
|
152
|
+
font-family: var(--prizma-body-family);
|
|
153
|
+
font-size: var(--prizma-body-m-regular-font-size);
|
|
154
|
+
font-weight: var(--prizma-body-m-regular-font-weight);
|
|
155
|
+
line-height: var(--prizma-body-m-regular-line-height);
|
|
156
|
+
letter-spacing: var(--prizma-body-m-regular-letter-spacing);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
.qualified-signature-encrypted > svg {
|
|
160
|
+
flex: none;
|
|
161
|
+
width: 16px; /* hardcoded — Icon/Lock is designed at 24 only and Figma draws 16; same clamp as Core's .prizma-id-capture__encrypted-icon (DEVIATIONS #DC-26) */
|
|
162
|
+
height: 16px;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
/* ── (b) The document body scrolls inside the middle ─────────────────────────
|
|
166
|
+
* `QSign.AcceptSign.viewdoc` hands the middle a 592-tall contract page and
|
|
167
|
+
* `QSign.T&C` a 13575-tall block of legal text WITH ITS OWN SCROLL INDICATOR —
|
|
168
|
+
* Figma is explicit that this surface scrolls. Archetype G's `__list` middle
|
|
169
|
+
* flexes but does not scroll, so the body would be clipped by the shell.
|
|
170
|
+
*
|
|
171
|
+
* This releases that one constraint. It declares no padding, no gap and no size:
|
|
172
|
+
* the Spacing/24 above it is still the archetype's, the gutters are still the
|
|
173
|
+
* content column's, and the tag stays anchored. `overscroll-behavior` keeps a
|
|
174
|
+
* flick inside the document instead of panning the host page.
|
|
175
|
+
*/
|
|
176
|
+
.qualified-signature-document {
|
|
177
|
+
flex: 1 1 auto;
|
|
178
|
+
min-height: 0;
|
|
179
|
+
width: 100%;
|
|
180
|
+
overflow-y: auto;
|
|
181
|
+
overscroll-behavior: contain;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
/* The contract page is host-supplied media (an <img> / <canvas> of the rendered
|
|
185
|
+
* PDF, GUIDELINES §10's `cameraSurface` idiom) — it fills the column width and
|
|
186
|
+
* keeps its own aspect. */
|
|
187
|
+
.qualified-signature-document > img,
|
|
188
|
+
.qualified-signature-document > svg {
|
|
189
|
+
display: block;
|
|
190
|
+
width: 100%;
|
|
191
|
+
height: auto;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
/* Legal body copy inside the `terms` variant. Core has no long-form prose
|
|
195
|
+
* component (Body tokens exist, the block does not), so the paragraph binds the
|
|
196
|
+
* Body/M Regular scale directly — no new size, no new colour. */
|
|
197
|
+
.qualified-signature-document__prose {
|
|
198
|
+
margin: 0;
|
|
199
|
+
color: var(--prizma-text-body-800-primary);
|
|
200
|
+
font-family: var(--prizma-body-family);
|
|
201
|
+
font-size: var(--prizma-body-m-regular-font-size);
|
|
202
|
+
font-weight: var(--prizma-body-m-regular-font-weight);
|
|
203
|
+
line-height: var(--prizma-body-m-regular-line-height);
|
|
204
|
+
letter-spacing: var(--prizma-body-m-regular-letter-spacing);
|
|
205
|
+
text-align: left;
|
|
206
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type PrizmaProcessingScreenProps } from './ProcessingScreen';
|
|
3
|
+
import type { PrizmaScreenActionHandler, PrizmaScreenOverrides } from './types';
|
|
4
|
+
import type { QualifiedSignatureProcessingVariant, QualifiedSignatureStrings } from './QualifiedSignatureStrings';
|
|
5
|
+
import './ScreenLayout.css';
|
|
6
|
+
export interface QualifiedSignatureProcessingScreenProps extends Omit<PrizmaProcessingScreenProps, 'status' | 'title' | 'subtitle' | 'verifiedLabel' | 'navLabel'> {
|
|
7
|
+
/** Module copy — this screen reads the `processing` slice its `variant` names. */
|
|
8
|
+
strings: QualifiedSignatureStrings;
|
|
9
|
+
/** Which reading of the in-flight frame to render. Default `processing`. */
|
|
10
|
+
variant?: QualifiedSignatureProcessingVariant;
|
|
11
|
+
screenId?: string;
|
|
12
|
+
overrides?: PrizmaScreenOverrides;
|
|
13
|
+
onAction?: PrizmaScreenActionHandler;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Qualified Signature — the in-flight screens.
|
|
17
|
+
*
|
|
18
|
+
* The two purple parents do NOT draw the same wait, so this is two frames, not
|
|
19
|
+
* one:
|
|
20
|
+
*
|
|
21
|
+
* - `processing` — `QSign.AcceptSign.processing` (10196:67395). The pure
|
|
22
|
+
* spinner + H2 case with nothing else on the frame, which is exactly what
|
|
23
|
+
* GUIDELINES §6-C reserves for the Processing archetype: the spinner block is
|
|
24
|
+
* centred in the middle container, so the archetype's fully-centred column is
|
|
25
|
+
* the right template.
|
|
26
|
+
* - `signing` — the partner's own 6086:39544. "Creating your signature…"
|
|
27
|
+
* under the spinner PLUS a second attribution row, "Signing as …", anchored
|
|
28
|
+
* at the BOTTOM of the frame immediately above the verified tag — NOT under
|
|
29
|
+
* the title, where a `subtitle` would land it.
|
|
30
|
+
*
|
|
31
|
+
* WHY `signing` MOVES TO ARCHETYPE F. Archetype C has no slot between its
|
|
32
|
+
* centred column and the footer tag, so there is no way to place a
|
|
33
|
+
* bottom-anchored row without declaring spacing locally — forbidden by §6.
|
|
34
|
+
* Archetype F is "C with a CTA band", and its `disclaimer` slot is precisely
|
|
35
|
+
* that row: Core's own `PrizmaDisclaimer`, centred secondary text, sitting in
|
|
36
|
+
* the band directly above the tag. With no CTA label the band carries only that
|
|
37
|
+
* row, so the frame keeps C's silhouette and gains the anchored line. The
|
|
38
|
+
* archetype gap (C has no footer/disclaimer slot) is reported, not patched
|
|
39
|
+
* here — this screen still declares no layout of its own.
|
|
40
|
+
*
|
|
41
|
+
* Both are distinct from the accept screen's `loading` state, which keeps the
|
|
42
|
+
* signer on the form with the spinner in the CTA — these are the flow's own
|
|
43
|
+
* waits.
|
|
44
|
+
*/
|
|
45
|
+
export declare const QualifiedSignatureProcessingScreen: React.ForwardRefExoticComponent<QualifiedSignatureProcessingScreenProps & React.RefAttributes<HTMLDivElement>>;
|
|
46
|
+
export default QualifiedSignatureProcessingScreen;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { forwardRef } from 'react';
|
|
4
|
+
import { PrizmaProcessingScreen, } from './ProcessingScreen';
|
|
5
|
+
import { PrizmaResultScreen } from './ResultScreen';
|
|
6
|
+
import './ScreenLayout.css';
|
|
7
|
+
/**
|
|
8
|
+
* Qualified Signature — the in-flight screens.
|
|
9
|
+
*
|
|
10
|
+
* The two purple parents do NOT draw the same wait, so this is two frames, not
|
|
11
|
+
* one:
|
|
12
|
+
*
|
|
13
|
+
* - `processing` — `QSign.AcceptSign.processing` (10196:67395). The pure
|
|
14
|
+
* spinner + H2 case with nothing else on the frame, which is exactly what
|
|
15
|
+
* GUIDELINES §6-C reserves for the Processing archetype: the spinner block is
|
|
16
|
+
* centred in the middle container, so the archetype's fully-centred column is
|
|
17
|
+
* the right template.
|
|
18
|
+
* - `signing` — the partner's own 6086:39544. "Creating your signature…"
|
|
19
|
+
* under the spinner PLUS a second attribution row, "Signing as …", anchored
|
|
20
|
+
* at the BOTTOM of the frame immediately above the verified tag — NOT under
|
|
21
|
+
* the title, where a `subtitle` would land it.
|
|
22
|
+
*
|
|
23
|
+
* WHY `signing` MOVES TO ARCHETYPE F. Archetype C has no slot between its
|
|
24
|
+
* centred column and the footer tag, so there is no way to place a
|
|
25
|
+
* bottom-anchored row without declaring spacing locally — forbidden by §6.
|
|
26
|
+
* Archetype F is "C with a CTA band", and its `disclaimer` slot is precisely
|
|
27
|
+
* that row: Core's own `PrizmaDisclaimer`, centred secondary text, sitting in
|
|
28
|
+
* the band directly above the tag. With no CTA label the band carries only that
|
|
29
|
+
* row, so the frame keeps C's silhouette and gains the anchored line. The
|
|
30
|
+
* archetype gap (C has no footer/disclaimer slot) is reported, not patched
|
|
31
|
+
* here — this screen still declares no layout of its own.
|
|
32
|
+
*
|
|
33
|
+
* Both are distinct from the accept screen's `loading` state, which keeps the
|
|
34
|
+
* signer on the form with the spinner in the CTA — these are the flow's own
|
|
35
|
+
* waits.
|
|
36
|
+
*/
|
|
37
|
+
export const QualifiedSignatureProcessingScreen = forwardRef(({ strings, variant = 'processing', screenId = `qualified-signature-processing-${variant}`, overrides, onAction, ...shell }, ref) => {
|
|
38
|
+
if (variant === 'signing') {
|
|
39
|
+
const copy = strings.processing.signing;
|
|
40
|
+
return (_jsx(PrizmaResultScreen, { ref: ref, status: "loading", title: copy.title, subtitle: copy.subtitle,
|
|
41
|
+
/* The bottom-anchored "Signing as …" row. */
|
|
42
|
+
disclaimer: copy.signingAsLabel, verifiedLabel: strings.verifiedLabel, navLabel: strings.navLabel, screenId: screenId, overrides: overrides, onAction: onAction, ...shell }));
|
|
43
|
+
}
|
|
44
|
+
const copy = strings.processing.processing;
|
|
45
|
+
return (_jsx(PrizmaProcessingScreen, { ref: ref, status: "loading", title: copy.title, subtitle: copy.subtitle, verifiedLabel: strings.verifiedLabel, navLabel: strings.navLabel, screenId: screenId, overrides: overrides, onAction: onAction, ...shell }));
|
|
46
|
+
});
|
|
47
|
+
QualifiedSignatureProcessingScreen.displayName = 'QualifiedSignatureProcessingScreen';
|
|
48
|
+
export default QualifiedSignatureProcessingScreen;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type PrizmaResultScreenProps } from './ResultScreen';
|
|
3
|
+
import type { PrizmaScreenActionHandler, PrizmaScreenOverrides } from './types';
|
|
4
|
+
import type { QualifiedSignatureResultVariant, QualifiedSignatureStrings } from './QualifiedSignatureStrings';
|
|
5
|
+
import './ScreenLayout.css';
|
|
6
|
+
export interface QualifiedSignatureResultScreenProps extends Omit<PrizmaResultScreenProps, 'status' | 'title' | 'subtitle' | 'glyph' | 'bandContent' | 'disclaimer' | 'ctaLabel' | 'secondaryCtaLabel' | 'verifiedLabel' | 'navLabel'> {
|
|
7
|
+
/** Module copy — this screen reads the `result` slice its `variant` names. */
|
|
8
|
+
strings: QualifiedSignatureStrings;
|
|
9
|
+
/** Which verdict section to render. Default `signed`. */
|
|
10
|
+
variant?: QualifiedSignatureResultVariant;
|
|
11
|
+
screenId?: string;
|
|
12
|
+
overrides?: PrizmaScreenOverrides;
|
|
13
|
+
onAction?: PrizmaScreenActionHandler;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Qualified Signature — the five verdicts, built on the Result archetype
|
|
17
|
+
* (GUIDELINES.md §6-F, `PrizmaResultScreen`).
|
|
18
|
+
*
|
|
19
|
+
* ONE screen for five purple frames that share the archetype's skeleton —
|
|
20
|
+
* nav → centred status mark + title block → CTA band → anchored tag — and differ
|
|
21
|
+
* in status, copy and which actions exist:
|
|
22
|
+
* - `signed` — `QSign.success` (10196:67485): the positive mark over a
|
|
23
|
+
* `Button group` 124 tall = the "Continue" primary plus the "Download PDF"
|
|
24
|
+
* underlined link.
|
|
25
|
+
* - `signedPlain` — `QSign.success` (10196:67494): the SAME mark and line
|
|
26
|
+
* with no actions at all, so the band never renders and the screen reads as
|
|
27
|
+
* the pure §6-C verdict.
|
|
28
|
+
* - `signedPartner` — the `x Namirial` parent's own success frame (6086:40135).
|
|
29
|
+
* NOT a copy of either generic one: it adds the "Signed by …" attribution row
|
|
30
|
+
* and a STACKED pair — "Done" primary above a "Download document" OUTLINED
|
|
31
|
+
* secondary. Both ride the archetype's `ctaLabel` + `secondaryCtaLabel`, which
|
|
32
|
+
* already fix primary-above-secondary (#GEO-1); the attribution row rides
|
|
33
|
+
* `disclaimer`, the band's own centred text row above the buttons.
|
|
34
|
+
* - `error` — `QSign.AcceptSign.error` (10196:67436 / 6089:37399): the
|
|
35
|
+
* warning mark and "Something went wrong". This frame really does draw no
|
|
36
|
+
* button.
|
|
37
|
+
* - `errorRetry` — the SECOND error frame both parents draw (10196:67445 and
|
|
38
|
+
* the partner's 8363:21429): the same warning mark over "Signature failed"
|
|
39
|
+
* plus a full-width "Try again" primary. It is the flow's only recovery
|
|
40
|
+
* affordance, so it is a state in its own right rather than an upstream
|
|
41
|
+
* concern (QA finding, 2026-08-19).
|
|
42
|
+
*
|
|
43
|
+
* Core's outline status marks are used, not Figma's two-tone filled discs — the
|
|
44
|
+
* icon-outline sweep of 2026-07-28 settled that for every module (DEVIATIONS
|
|
45
|
+
* #15, #DC-34) and these frames are one sweep behind. Both error frames get the
|
|
46
|
+
* WARNING mark, not the negative one: Figma draws the amber "!" disc, and the
|
|
47
|
+
* signature attempt is recoverable rather than refused.
|
|
48
|
+
*
|
|
49
|
+
* The generic error frames drop the verified tag; the partner's keeps it.
|
|
50
|
+
* The owner rule settles the split in favour of keeping it (#PI-8, #F-30) so
|
|
51
|
+
* nothing shifts between states.
|
|
52
|
+
*
|
|
53
|
+
* ONE reported delta: on `signed`, Figma puts "Download PDF" BELOW the primary,
|
|
54
|
+
* at Core's `PrizmaButtonGroup` Spacing/12. Archetype F has no tertiary-link
|
|
55
|
+
* slot — its only band opening above the buttons is `bandContent` — so Core's
|
|
56
|
+
* own `tertiary-link` Button is composed there and lands ABOVE the primary at
|
|
57
|
+
* the band's Spacing/32 (16 + 16). Ink, semantics and the distinct `secondary`
|
|
58
|
+
* action are all correct (#PI-10); only the position moves. #GEO-1 fixes the
|
|
59
|
+
* tertiary link's position PER ARCHETYPE and F has never declared one — the
|
|
60
|
+
* archetype request is logged instead of a local override. `signedPartner` is
|
|
61
|
+
* unaffected: its download control is a real outlined secondary Button, which
|
|
62
|
+
* the archetype already places correctly.
|
|
63
|
+
*/
|
|
64
|
+
export declare const QualifiedSignatureResultScreen: React.ForwardRefExoticComponent<QualifiedSignatureResultScreenProps & React.RefAttributes<HTMLDivElement>>;
|
|
65
|
+
export default QualifiedSignatureResultScreen;
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { forwardRef } from 'react';
|
|
4
|
+
import { PrizmaButton } from '@incodetech/prizma-core-web/button';
|
|
5
|
+
import { PrizmaResultScreen } from './ResultScreen';
|
|
6
|
+
import './ScreenLayout.css';
|
|
7
|
+
/**
|
|
8
|
+
* Qualified Signature — the five verdicts, built on the Result archetype
|
|
9
|
+
* (GUIDELINES.md §6-F, `PrizmaResultScreen`).
|
|
10
|
+
*
|
|
11
|
+
* ONE screen for five purple frames that share the archetype's skeleton —
|
|
12
|
+
* nav → centred status mark + title block → CTA band → anchored tag — and differ
|
|
13
|
+
* in status, copy and which actions exist:
|
|
14
|
+
* - `signed` — `QSign.success` (10196:67485): the positive mark over a
|
|
15
|
+
* `Button group` 124 tall = the "Continue" primary plus the "Download PDF"
|
|
16
|
+
* underlined link.
|
|
17
|
+
* - `signedPlain` — `QSign.success` (10196:67494): the SAME mark and line
|
|
18
|
+
* with no actions at all, so the band never renders and the screen reads as
|
|
19
|
+
* the pure §6-C verdict.
|
|
20
|
+
* - `signedPartner` — the `x Namirial` parent's own success frame (6086:40135).
|
|
21
|
+
* NOT a copy of either generic one: it adds the "Signed by …" attribution row
|
|
22
|
+
* and a STACKED pair — "Done" primary above a "Download document" OUTLINED
|
|
23
|
+
* secondary. Both ride the archetype's `ctaLabel` + `secondaryCtaLabel`, which
|
|
24
|
+
* already fix primary-above-secondary (#GEO-1); the attribution row rides
|
|
25
|
+
* `disclaimer`, the band's own centred text row above the buttons.
|
|
26
|
+
* - `error` — `QSign.AcceptSign.error` (10196:67436 / 6089:37399): the
|
|
27
|
+
* warning mark and "Something went wrong". This frame really does draw no
|
|
28
|
+
* button.
|
|
29
|
+
* - `errorRetry` — the SECOND error frame both parents draw (10196:67445 and
|
|
30
|
+
* the partner's 8363:21429): the same warning mark over "Signature failed"
|
|
31
|
+
* plus a full-width "Try again" primary. It is the flow's only recovery
|
|
32
|
+
* affordance, so it is a state in its own right rather than an upstream
|
|
33
|
+
* concern (QA finding, 2026-08-19).
|
|
34
|
+
*
|
|
35
|
+
* Core's outline status marks are used, not Figma's two-tone filled discs — the
|
|
36
|
+
* icon-outline sweep of 2026-07-28 settled that for every module (DEVIATIONS
|
|
37
|
+
* #15, #DC-34) and these frames are one sweep behind. Both error frames get the
|
|
38
|
+
* WARNING mark, not the negative one: Figma draws the amber "!" disc, and the
|
|
39
|
+
* signature attempt is recoverable rather than refused.
|
|
40
|
+
*
|
|
41
|
+
* The generic error frames drop the verified tag; the partner's keeps it.
|
|
42
|
+
* The owner rule settles the split in favour of keeping it (#PI-8, #F-30) so
|
|
43
|
+
* nothing shifts between states.
|
|
44
|
+
*
|
|
45
|
+
* ONE reported delta: on `signed`, Figma puts "Download PDF" BELOW the primary,
|
|
46
|
+
* at Core's `PrizmaButtonGroup` Spacing/12. Archetype F has no tertiary-link
|
|
47
|
+
* slot — its only band opening above the buttons is `bandContent` — so Core's
|
|
48
|
+
* own `tertiary-link` Button is composed there and lands ABOVE the primary at
|
|
49
|
+
* the band's Spacing/32 (16 + 16). Ink, semantics and the distinct `secondary`
|
|
50
|
+
* action are all correct (#PI-10); only the position moves. #GEO-1 fixes the
|
|
51
|
+
* tertiary link's position PER ARCHETYPE and F has never declared one — the
|
|
52
|
+
* archetype request is logged instead of a local override. `signedPartner` is
|
|
53
|
+
* unaffected: its download control is a real outlined secondary Button, which
|
|
54
|
+
* the archetype already places correctly.
|
|
55
|
+
*/
|
|
56
|
+
export const QualifiedSignatureResultScreen = forwardRef(({ strings, variant = 'signed', screenId = `qualified-signature-result-${variant}`, overrides, onAction, ...shell }, ref) => {
|
|
57
|
+
// One slice per frame — nothing is shared between variants, so the frames
|
|
58
|
+
// can never collapse into each other visually.
|
|
59
|
+
const signedCopy = variant === 'signed' ? strings.result.signed : undefined;
|
|
60
|
+
const partnerCopy = variant === 'signedPartner' ? strings.result.signedPartner : undefined;
|
|
61
|
+
const retryCopy = variant === 'errorRetry' ? strings.result.errorRetry : undefined;
|
|
62
|
+
const copy = signedCopy ??
|
|
63
|
+
partnerCopy ??
|
|
64
|
+
retryCopy ??
|
|
65
|
+
(variant === 'error' ? strings.result.error : strings.result.signedPlain);
|
|
66
|
+
return (_jsx(PrizmaResultScreen, { ref: ref, status: variant === 'error' || variant === 'errorRetry' ? 'warning' : 'success', title: copy.title, subtitle: copy.subtitle,
|
|
67
|
+
/* "Continue" · "Done" · "Try again" — the archetype's own primary. */
|
|
68
|
+
ctaLabel: signedCopy?.ctaLabel ?? partnerCopy?.ctaLabel ?? retryCopy?.ctaLabel,
|
|
69
|
+
/* The partner's outlined "Download document", below the primary. */
|
|
70
|
+
secondaryCtaLabel: partnerCopy?.secondaryCtaLabel,
|
|
71
|
+
/* The partner's "Signed by …" row — the band's centred text slot, which
|
|
72
|
+
puts it above the button pair exactly as Figma draws it. */
|
|
73
|
+
disclaimer: partnerCopy?.signedByLabel, bandContent: signedCopy?.downloadLabel ? (_jsx(PrizmaButton, { variant: "tertiary-link", size: "L", onClick: () => onAction?.({ type: 'secondary', screenId }), children: signedCopy.downloadLabel })) : undefined, verifiedLabel: strings.verifiedLabel, navLabel: strings.navLabel, screenId: screenId, overrides: overrides, onAction: onAction, ...shell }));
|
|
74
|
+
});
|
|
75
|
+
QualifiedSignatureResultScreen.displayName = 'QualifiedSignatureResultScreen';
|
|
76
|
+
export default QualifiedSignatureResultScreen;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import React, { type ReactNode } from 'react';
|
|
2
|
+
import { type PrizmaReviewScreenProps } from './ReviewScreen';
|
|
3
|
+
import type { PrizmaScreenActionHandler, PrizmaScreenOverrides } from './types';
|
|
4
|
+
import type { QualifiedSignatureStrings } from './QualifiedSignatureStrings';
|
|
5
|
+
import './ScreenLayout.css';
|
|
6
|
+
import './QualifiedSignatureLayout.css';
|
|
7
|
+
export interface QualifiedSignatureReviewScreenProps extends Omit<PrizmaReviewScreenProps, 'stage' | 'title' | 'subtitle' | 'successTitle' | 'analyzingLabel' | 'analyzingState' | 'primaryLabel' | 'secondaryLabel' | 'verifiedLabel' | 'children' | 'stageClassName'> {
|
|
8
|
+
/** Module copy — this screen reads the `review` slice. */
|
|
9
|
+
strings: QualifiedSignatureStrings;
|
|
10
|
+
/** The uploaded file's name. Not copy — runtime data from the picker. */
|
|
11
|
+
filename?: string;
|
|
12
|
+
/** Page-preview thumbnail (an `<img>`) rendered inside the card. */
|
|
13
|
+
thumbnail?: ReactNode;
|
|
14
|
+
screenId?: string;
|
|
15
|
+
overrides?: PrizmaScreenOverrides;
|
|
16
|
+
onAction?: PrizmaScreenActionHandler;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Qualified Signature — the uploaded document confirmed before signing, built on
|
|
20
|
+
* the Review archetype (GUIDELINES.md §6-H, `PrizmaReviewScreen`).
|
|
21
|
+
*
|
|
22
|
+
* Figma: purple section `QSign.reviewDoc.default` (10196:67138). It is archetype
|
|
23
|
+
* H and not F for exactly the reason §6-H draws the line: the header is
|
|
24
|
+
* TOP-aligned (`top container` starts at CONTENT y=24 with the Title, no logo
|
|
25
|
+
* row) over a media `Container` that fills the middle (109→450 of a 654 frame),
|
|
26
|
+
* with the actions anchored at the bottom — F would centre the title and the
|
|
27
|
+
* card together as one block. Measured against the archetype: Title → stage 32
|
|
28
|
+
* (Figma 109 − 77 = 32), stage → actions 24 (482 − 450 − 8 rounding). Every one
|
|
29
|
+
* of those offsets is the archetype's; this file declares none.
|
|
30
|
+
*
|
|
31
|
+
* TWO deltas from the frame, both reported rather than worked around:
|
|
32
|
+
* 1. Figma stacks `Continue` over `Replace` (a `Button group` 124 tall = 56 + 12
|
|
33
|
+
* + 56). Archetype H hardcodes Core's `PrizmaButtonGroup
|
|
34
|
+
* orientation="horizontal-v1"`, so they pair side by side. A screen never
|
|
35
|
+
* picks its own button order (#GEO-1), and H has no orientation slot — the
|
|
36
|
+
* archetype request is logged instead of overridden here.
|
|
37
|
+
* 2. The frame draws no verified tag. The owner rule wins over Figma for
|
|
38
|
+
* attribution chrome — every non-capture screen keeps header and footer
|
|
39
|
+
* (#PI-8, #F-30, #F-34) — so `showFooter` keeps its default.
|
|
40
|
+
*
|
|
41
|
+
* What stays module-side is the MEDIA, which Core has no primitive for: the
|
|
42
|
+
* vertical file-preview card (`PrizmaCardDocumentContainer` is the horizontal
|
|
43
|
+
* filename + action row this module uses on the accept screen instead) and the
|
|
44
|
+
* standalone encrypted notice (Core owns it only inside `PrizmaIdCapture`).
|
|
45
|
+
* Both are rebuilt from Core's own tokens in `QualifiedSignatureLayout.css`,
|
|
46
|
+
* with the Core requests recorded there — DEVIATIONS #DC-26, #DC-27.
|
|
47
|
+
*/
|
|
48
|
+
export declare const QualifiedSignatureReviewScreen: React.ForwardRefExoticComponent<QualifiedSignatureReviewScreenProps & React.RefAttributes<HTMLDivElement>>;
|
|
49
|
+
export default QualifiedSignatureReviewScreen;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { forwardRef } from 'react';
|
|
4
|
+
import { IconLock } from '@incodetech/prizma-core-icons';
|
|
5
|
+
import { PrizmaReviewScreen } from './ReviewScreen';
|
|
6
|
+
import './ScreenLayout.css';
|
|
7
|
+
import './QualifiedSignatureLayout.css';
|
|
8
|
+
/**
|
|
9
|
+
* Qualified Signature — the uploaded document confirmed before signing, built on
|
|
10
|
+
* the Review archetype (GUIDELINES.md §6-H, `PrizmaReviewScreen`).
|
|
11
|
+
*
|
|
12
|
+
* Figma: purple section `QSign.reviewDoc.default` (10196:67138). It is archetype
|
|
13
|
+
* H and not F for exactly the reason §6-H draws the line: the header is
|
|
14
|
+
* TOP-aligned (`top container` starts at CONTENT y=24 with the Title, no logo
|
|
15
|
+
* row) over a media `Container` that fills the middle (109→450 of a 654 frame),
|
|
16
|
+
* with the actions anchored at the bottom — F would centre the title and the
|
|
17
|
+
* card together as one block. Measured against the archetype: Title → stage 32
|
|
18
|
+
* (Figma 109 − 77 = 32), stage → actions 24 (482 − 450 − 8 rounding). Every one
|
|
19
|
+
* of those offsets is the archetype's; this file declares none.
|
|
20
|
+
*
|
|
21
|
+
* TWO deltas from the frame, both reported rather than worked around:
|
|
22
|
+
* 1. Figma stacks `Continue` over `Replace` (a `Button group` 124 tall = 56 + 12
|
|
23
|
+
* + 56). Archetype H hardcodes Core's `PrizmaButtonGroup
|
|
24
|
+
* orientation="horizontal-v1"`, so they pair side by side. A screen never
|
|
25
|
+
* picks its own button order (#GEO-1), and H has no orientation slot — the
|
|
26
|
+
* archetype request is logged instead of overridden here.
|
|
27
|
+
* 2. The frame draws no verified tag. The owner rule wins over Figma for
|
|
28
|
+
* attribution chrome — every non-capture screen keeps header and footer
|
|
29
|
+
* (#PI-8, #F-30, #F-34) — so `showFooter` keeps its default.
|
|
30
|
+
*
|
|
31
|
+
* What stays module-side is the MEDIA, which Core has no primitive for: the
|
|
32
|
+
* vertical file-preview card (`PrizmaCardDocumentContainer` is the horizontal
|
|
33
|
+
* filename + action row this module uses on the accept screen instead) and the
|
|
34
|
+
* standalone encrypted notice (Core owns it only inside `PrizmaIdCapture`).
|
|
35
|
+
* Both are rebuilt from Core's own tokens in `QualifiedSignatureLayout.css`,
|
|
36
|
+
* with the Core requests recorded there — DEVIATIONS #DC-26, #DC-27.
|
|
37
|
+
*/
|
|
38
|
+
export const QualifiedSignatureReviewScreen = forwardRef(({ strings, filename, thumbnail, screenId = 'qualified-signature-review', overrides, onAction, ...shell }, ref) => (_jsxs(PrizmaReviewScreen, { ref: ref, stage: "review", title: strings.review.title, subtitle: strings.review.subtitle, stageClassName: "qualified-signature-review-file", primaryLabel: strings.review.ctaLabel, secondaryLabel: strings.review.replaceLabel, verifiedLabel: strings.verifiedLabel, navLabel: strings.navLabel, screenId: screenId, overrides: overrides, onAction: onAction, ...shell, children: [_jsxs("div", { className: "qualified-signature-file-card", children: [_jsx("span", { className: "qualified-signature-file-card__thumb", children: thumbnail }), filename ? (_jsx("p", { className: "qualified-signature-file-card__name", children: filename })) : null] }), strings.review.encryptedLabel ? (_jsxs("p", { className: "qualified-signature-encrypted", children: [_jsx(IconLock, { size: "m" }), _jsx("span", { children: strings.review.encryptedLabel })] })) : null] })));
|
|
39
|
+
QualifiedSignatureReviewScreen.displayName = 'QualifiedSignatureReviewScreen';
|
|
40
|
+
export default QualifiedSignatureReviewScreen;
|