@transfergratis/react-native-sdk 0.1.24 → 0.1.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +12 -5
  2. package/android/build/intermediates/aar_main_jar/debug/syncDebugLibJars/classes.jar +0 -0
  3. package/android/build/intermediates/annotations_typedef_file/debug/extractDebugAnnotations/typedefs.txt +0 -0
  4. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +1 -1
  5. package/android/build/intermediates/incremental/debug-mergeJavaRes/merge-state +0 -0
  6. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +61 -59
  7. package/android/build/intermediates/merged_java_res/debug/mergeDebugJavaResource/feature-transfergratis-react-native-sdk.jar +0 -0
  8. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +12 -5
  9. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  10. package/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +0 -0
  11. package/android/build/outputs/aar/transfergratis-react-native-sdk-debug.aar +0 -0
  12. package/android/build/outputs/logs/manifest-merger-debug-report.txt +26 -34
  13. package/android/src/main/AndroidManifest.xml +10 -7
  14. package/build/components/KYCElements/AdditionalDocumentsTemplate.d.ts +12 -0
  15. package/build/components/KYCElements/AdditionalDocumentsTemplate.d.ts.map +1 -0
  16. package/build/components/KYCElements/AdditionalDocumentsTemplate.js +283 -0
  17. package/build/components/KYCElements/AdditionalDocumentsTemplate.js.map +1 -0
  18. package/build/components/KYCElements/EmailVerificationTemplate.d.ts +12 -0
  19. package/build/components/KYCElements/EmailVerificationTemplate.d.ts.map +1 -0
  20. package/build/components/KYCElements/EmailVerificationTemplate.js +193 -0
  21. package/build/components/KYCElements/EmailVerificationTemplate.js.map +1 -0
  22. package/build/components/KYCElements/IDCardCapture.d.ts.map +1 -1
  23. package/build/components/KYCElements/IDCardCapture.js +180 -7
  24. package/build/components/KYCElements/IDCardCapture.js.map +1 -1
  25. package/build/components/KYCElements/OrientationVideoCapture.d.ts +2 -0
  26. package/build/components/KYCElements/OrientationVideoCapture.d.ts.map +1 -1
  27. package/build/components/KYCElements/OrientationVideoCapture.js +2 -2
  28. package/build/components/KYCElements/OrientationVideoCapture.js.map +1 -1
  29. package/build/components/KYCElements/OrientationVideoCaptureEnhanced.d.ts +2 -0
  30. package/build/components/KYCElements/OrientationVideoCaptureEnhanced.d.ts.map +1 -1
  31. package/build/components/KYCElements/OrientationVideoCaptureEnhanced.js +2 -2
  32. package/build/components/KYCElements/OrientationVideoCaptureEnhanced.js.map +1 -1
  33. package/build/components/KYCElements/OrientationVideoCaptureFinal.d.ts +2 -0
  34. package/build/components/KYCElements/OrientationVideoCaptureFinal.d.ts.map +1 -1
  35. package/build/components/KYCElements/OrientationVideoCaptureFinal.js +2 -2
  36. package/build/components/KYCElements/OrientationVideoCaptureFinal.js.map +1 -1
  37. package/build/components/KYCElements/PersonalInformationTemplate.d.ts +12 -0
  38. package/build/components/KYCElements/PersonalInformationTemplate.d.ts.map +1 -0
  39. package/build/components/KYCElements/PersonalInformationTemplate.js +120 -0
  40. package/build/components/KYCElements/PersonalInformationTemplate.js.map +1 -0
  41. package/build/components/KYCElements/PhoneVerificationTemplate.d.ts +12 -0
  42. package/build/components/KYCElements/PhoneVerificationTemplate.d.ts.map +1 -0
  43. package/build/components/KYCElements/PhoneVerificationTemplate.js +185 -0
  44. package/build/components/KYCElements/PhoneVerificationTemplate.js.map +1 -0
  45. package/build/components/KYCElements/SelfieCaptureTemplate.d.ts.map +1 -1
  46. package/build/components/KYCElements/SelfieCaptureTemplate.js +7 -3
  47. package/build/components/KYCElements/SelfieCaptureTemplate.js.map +1 -1
  48. package/build/components/TemplateKYCExample.d.ts +4 -0
  49. package/build/components/TemplateKYCExample.d.ts.map +1 -1
  50. package/build/components/TemplateKYCExample.js +7 -30
  51. package/build/components/TemplateKYCExample.js.map +1 -1
  52. package/build/components/TemplateKYCFlowRefactored.d.ts +4 -0
  53. package/build/components/TemplateKYCFlowRefactored.d.ts.map +1 -1
  54. package/build/components/TemplateKYCFlowRefactored.js +14 -2
  55. package/build/components/TemplateKYCFlowRefactored.js.map +1 -1
  56. package/build/config/KYCConfig.d.ts +14 -0
  57. package/build/config/KYCConfig.d.ts.map +1 -0
  58. package/build/config/KYCConfig.js +26 -0
  59. package/build/config/KYCConfig.js.map +1 -0
  60. package/build/config/allowedDomains.d.ts.map +1 -1
  61. package/build/config/allowedDomains.js +4 -19
  62. package/build/config/allowedDomains.js.map +1 -1
  63. package/build/hooks/useOrientationVideo.d.ts +2 -1
  64. package/build/hooks/useOrientationVideo.d.ts.map +1 -1
  65. package/build/hooks/useOrientationVideo.js +3 -3
  66. package/build/hooks/useOrientationVideo.js.map +1 -1
  67. package/build/hooks/useTemplateKYCFlow.d.ts +6 -1
  68. package/build/hooks/useTemplateKYCFlow.d.ts.map +1 -1
  69. package/build/hooks/useTemplateKYCFlow.js +286 -23
  70. package/build/hooks/useTemplateKYCFlow.js.map +1 -1
  71. package/build/i18n/en/index.d.ts +40 -0
  72. package/build/i18n/en/index.d.ts.map +1 -1
  73. package/build/i18n/en/index.js +41 -1
  74. package/build/i18n/en/index.js.map +1 -1
  75. package/build/i18n/fr/index.d.ts +26 -0
  76. package/build/i18n/fr/index.d.ts.map +1 -1
  77. package/build/i18n/fr/index.js +27 -1
  78. package/build/i18n/fr/index.js.map +1 -1
  79. package/build/index.d.ts +1 -0
  80. package/build/index.d.ts.map +1 -1
  81. package/build/index.js +2 -0
  82. package/build/index.js.map +1 -1
  83. package/build/modules/api/CardAuthentification.d.ts +24 -3
  84. package/build/modules/api/CardAuthentification.d.ts.map +1 -1
  85. package/build/modules/api/CardAuthentification.js +68 -10
  86. package/build/modules/api/CardAuthentification.js.map +1 -1
  87. package/build/modules/api/KYCService.d.ts +7 -7
  88. package/build/modules/api/KYCService.d.ts.map +1 -1
  89. package/build/modules/api/KYCService.js +101 -37
  90. package/build/modules/api/KYCService.js.map +1 -1
  91. package/build/modules/api/SelfieVerification.d.ts +3 -1
  92. package/build/modules/api/SelfieVerification.d.ts.map +1 -1
  93. package/build/modules/api/SelfieVerification.js +17 -1
  94. package/build/modules/api/SelfieVerification.js.map +1 -1
  95. package/build/modules/api/TemplateService.d.ts +0 -1
  96. package/build/modules/api/TemplateService.d.ts.map +1 -1
  97. package/build/modules/api/TemplateService.js +3 -3
  98. package/build/modules/api/TemplateService.js.map +1 -1
  99. package/build/types/KYC.types.d.ts +124 -3
  100. package/build/types/KYC.types.d.ts.map +1 -1
  101. package/build/types/KYC.types.js.map +1 -1
  102. package/build/types/env.types.d.ts +13 -0
  103. package/build/types/env.types.d.ts.map +1 -0
  104. package/build/types/env.types.js +2 -0
  105. package/build/types/env.types.js.map +1 -0
  106. package/build/utils/deviceDetection.d.ts +6 -0
  107. package/build/utils/deviceDetection.d.ts.map +1 -0
  108. package/build/utils/deviceDetection.js +12 -0
  109. package/build/utils/deviceDetection.js.map +1 -0
  110. package/build/utils/platformAlert.d.ts.map +1 -1
  111. package/build/utils/platformAlert.js.map +1 -1
  112. package/build/utils/template-transformer.d.ts.map +1 -1
  113. package/build/utils/template-transformer.js +12 -0
  114. package/build/utils/template-transformer.js.map +1 -1
  115. package/build/web/WebKYCEntry.d.ts.map +1 -1
  116. package/build/web/WebKYCEntry.js +82 -38
  117. package/build/web/WebKYCEntry.js.map +1 -1
  118. package/package.json +1 -1
  119. package/plugin/build/withVisionCamera.js +3 -4
  120. package/plugin/src/withVisionCamera.js +3 -4
  121. package/plugin/src/withVisionCamera.ts +3 -4
  122. package/src/components/KYCElements/AdditionalDocumentsTemplate.tsx +346 -0
  123. package/src/components/KYCElements/EmailVerificationTemplate.tsx +264 -0
  124. package/src/components/KYCElements/IDCardCapture.tsx +216 -15
  125. package/src/components/KYCElements/OrientationVideoCapture.tsx +4 -1
  126. package/src/components/KYCElements/OrientationVideoCaptureEnhanced.tsx +4 -1
  127. package/src/components/KYCElements/OrientationVideoCaptureFinal.tsx +4 -1
  128. package/src/components/KYCElements/PersonalInformationTemplate.tsx +158 -0
  129. package/src/components/KYCElements/PhoneVerificationTemplate.tsx +253 -0
  130. package/src/components/KYCElements/SelfieCaptureTemplate.tsx +6 -3
  131. package/src/components/TemplateKYCExample.tsx +31 -46
  132. package/src/components/TemplateKYCFlowRefactored.tsx +27 -1
  133. package/src/config/KYCConfig.ts +34 -0
  134. package/src/config/allowedDomains.ts +7 -26
  135. package/src/hooks/useOrientationVideo.ts +5 -4
  136. package/src/hooks/useTemplateKYCFlow.tsx +314 -21
  137. package/src/i18n/en/index.ts +43 -2
  138. package/src/i18n/fr/index.ts +28 -1
  139. package/src/index.ts +3 -0
  140. package/src/modules/api/CardAuthentification.ts +75 -10
  141. package/src/modules/api/KYCService.ts +117 -37
  142. package/src/modules/api/SelfieVerification.ts +25 -3
  143. package/src/modules/api/TemplateService.ts +4 -4
  144. package/src/types/KYC.types.ts +146 -3
  145. package/src/types/env.types.ts +13 -0
  146. package/src/utils/deviceDetection.ts +11 -0
  147. package/src/utils/platformAlert.ts +1 -0
  148. package/src/utils/template-transformer.ts +20 -8
  149. package/src/web/WebKYCEntry.tsx +112 -61
@@ -14,11 +14,38 @@ export declare const en: {
14
14
  success: string;
15
15
  warning: string;
16
16
  info: string;
17
+ invalidCode: string;
18
+ resendCode: string;
19
+ verify: string;
20
+ sendCode: string;
21
+ resend: string;
22
+ email: string;
23
+ otp: string;
24
+ verificationCode: string;
25
+ changeEmail: string;
26
+ processing: string;
27
+ codeResent: string;
28
+ codeResentMessage: string;
29
+ phone: string;
17
30
  };
18
31
  kyc: {
19
32
  title: string;
20
33
  subtitle: string;
21
34
  step: string;
35
+ enterCodeSent: string;
36
+ additionalDocs: {
37
+ title: string;
38
+ add: string;
39
+ subtitle: string;
40
+ uploadButton: string;
41
+ uploadButtonText: string;
42
+ uploadSubtext: string;
43
+ supportedFormats: string;
44
+ maxSize: string;
45
+ processing: string;
46
+ success: string;
47
+ error: string;
48
+ };
22
49
  initialization: {
23
50
  title: string;
24
51
  description: string;
@@ -77,6 +104,9 @@ export declare const en: {
77
104
  success: string;
78
105
  error: string;
79
106
  captureTitle: string;
107
+ continueOnPhone: string;
108
+ continueOnMobile: string;
109
+ scanQrCode: string;
80
110
  };
81
111
  selfieCapture: {
82
112
  title: string;
@@ -175,6 +205,16 @@ export declare const en: {
175
205
  fileError: string;
176
206
  timeoutError: string;
177
207
  unknownError: string;
208
+ wrongCode: string;
209
+ invalidCode: string;
210
+ invalidEmail: string;
211
+ invalidPhone: string;
212
+ invalidDate: string;
213
+ minLength: string;
214
+ maxLength: string;
215
+ invalidFormat: string;
216
+ fileTooLarge: string;
217
+ fileTypeNotSupported: string;
178
218
  };
179
219
  validation: {
180
220
  required: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/i18n/en/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuOd,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/i18n/en/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgRd,CAAC"}
@@ -15,12 +15,39 @@ export const en = {
15
15
  success: 'Success',
16
16
  warning: 'Warning',
17
17
  info: 'Information',
18
+ invalidCode: 'Invalid code',
19
+ resendCode: 'Resend code',
20
+ verify: 'Verify',
21
+ sendCode: 'Send code',
22
+ resend: 'Resend',
23
+ email: 'Email',
24
+ otp: 'OTP',
25
+ verificationCode: 'Verification code',
26
+ changeEmail: 'Change Email',
27
+ processing: "Processing",
28
+ codeResent: 'Code Resent',
29
+ codeResentMessage: 'Code resent to %{email}',
30
+ phone: 'Phone number with country code',
18
31
  },
19
32
  // KYC Flow
20
33
  kyc: {
21
34
  title: 'Identity Verification',
22
35
  subtitle: 'Complete your identity verification to continue',
23
36
  step: 'Step %{current} of %{total}',
37
+ enterCodeSent: "Enter code sent",
38
+ additionalDocs: {
39
+ title: 'Additional Documents',
40
+ add: "Press to select file",
41
+ subtitle: 'Upload additional documents to complete your identity verification',
42
+ uploadButton: 'Upload',
43
+ uploadButtonText: 'Upload',
44
+ uploadSubtext: 'Upload a clear photo of your document',
45
+ supportedFormats: 'Supported formats: JPG, PNG, PDF',
46
+ maxSize: 'Max file size: 10MB',
47
+ processing: 'Processing file...',
48
+ success: 'File uploaded successfully',
49
+ error: 'Failed to upload file. Please try again.'
50
+ },
24
51
  // Initialization
25
52
  initialization: {
26
53
  title: 'Welcome to Identity Verification',
@@ -92,6 +119,9 @@ export const en = {
92
119
  success: 'ID captured successfully',
93
120
  error: 'Failed to capture ID. Please try again.',
94
121
  captureTitle: '%{side} side of your government document',
122
+ continueOnPhone: 'Continue on Phone',
123
+ continueOnMobile: 'Continue on Mobile',
124
+ scanQrCode: 'Scan this QR code with your phone to continue the verification process.',
95
125
  },
96
126
  // Selfie Capture
97
127
  selfieCapture: {
@@ -201,7 +231,17 @@ export const en = {
201
231
  cameraError: 'Camera error. Please try again.',
202
232
  fileError: 'File error. Please try again.',
203
233
  timeoutError: 'Request timeout. Please try again.',
204
- unknownError: 'An unknown error occurred. Please try again.'
234
+ unknownError: 'An unknown error occurred. Please try again.',
235
+ wrongCode: "Wrong code",
236
+ invalidCode: "Invalid code",
237
+ invalidEmail: "Invalid email",
238
+ invalidPhone: "Invalid phone",
239
+ invalidDate: "Invalid date",
240
+ minLength: "Min length",
241
+ maxLength: "Max length",
242
+ invalidFormat: "Invalid format",
243
+ fileTooLarge: "File too large",
244
+ fileTypeNotSupported: "File type not supported",
205
245
  },
206
246
  // Validation messages
207
247
  validation: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/i18n/en/index.ts"],"names":[],"mappings":"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","sourcesContent":["export const en = {\n // Common UI elements\n common: {\n next: 'Next',\n previous: 'Previous',\n continue: 'Continue',\n cancel: 'Cancel',\n confirm: 'Confirm',\n submit: 'Submit',\n retry: 'Retry',\n close: 'Close',\n back: 'Back',\n loading: 'Loading...',\n error: 'Error',\n success: 'Success',\n warning: 'Warning',\n info: 'Information',\n },\n\n // KYC Flow\n kyc: {\n title: 'Identity Verification',\n subtitle: 'Complete your identity verification to continue',\n step: 'Step %{current} of %{total}',\n \n // Initialization\n initialization: {\n title: 'Welcome to Identity Verification',\n description: 'We need to verify your identity to comply with regulations and ensure security.',\n startButton: 'Start Verification',\n requirements: 'What you\\'ll need:',\n requirementsList: [\n 'Valid government-issued ID',\n 'Good lighting for photos',\n 'Stable internet connection'\n ]\n },\n\n welcome: {\n requirements: 'What you\\'ll need:',\n estimatedTime: 'Estimated time:',\n consent: 'Please accept the following:',\n privacyPolicy: 'I agree to the Privacy Policy',\n termsOfService: 'I agree to the Terms of Service',\n marketingConsent: 'I agree to receive marketing communications',\n readMore: 'Read more'\n },\n\n // Location Capture\n locationCapture: {\n title: 'Secure Your Verification',\n description: 'Allow location access to help us protect your account and prevent fraudulent activity during verification.',\n howThisHelps: 'How this helps:',\n howThisHelpsList: '• Verifies your device location matches your identity\\n• Detects and prevents unauthorized access\\n• Ensures compliance with security regulations',\n permissionDeniedTitle: 'Permission denied',\n permissionDeniedMessage: 'Location permission is required to continue.',\n locationDisabledTitle: 'Location disabled',\n locationDisabledMessage: 'Please enable location services on your device to continue.',\n errorTitle: 'Error',\n errorMessage: 'Unable to retrieve your location. Please try again.',\n obtained: 'Location obtained',\n latitudeLabel: 'Latitude',\n longitudeLabel: 'Longitude',\n accuracyLabel: 'Accuracy',\n resetButton: 'Reset',\n enableButton: 'Enable Location Access',\n fetching: 'Fetching...'\n },\n\n // Country Selection\n countrySelection: {\n title: 'Select Your Country',\n subtitle: 'Choose the country that issued your ID document',\n searchPlaceholder: 'Search for your country...',\n noResults: 'No countries found',\n selectCountry: 'Select Country'\n },\n\n // ID Card Capture\n idCardCapture: {\n title: 'Capture Your ID Document',\n subtitle: 'Take a clear photo of your ID document',\n frontSide: 'Front Side',\n backSide: 'Back Side',\n instructions: {\n title: 'Instructions:',\n list: [\n 'Place your ID on a flat surface',\n 'Ensure good lighting',\n 'Keep the entire document in frame',\n 'Avoid glare and shadows'\n ]\n },\n captureButton: 'Capture Photo',\n retakeButton: 'Retake',\n usePhotoButton: 'Use This Photo',\n processing: 'Processing image...',\n success: 'ID captured successfully',\n error: 'Failed to capture ID. Please try again.',\n captureTitle: '%{side} side of your government document',\n },\n\n // Selfie Capture\n selfieCapture: {\n title: 'Take a Selfie',\n subtitle: 'Take a clear selfie for identity verification',\n instructions: {\n title: 'Instructions:',\n list: [\n 'Look directly at the camera',\n 'Ensure good lighting on your face',\n 'Remove glasses and hats',\n 'Keep a neutral expression'\n ]\n },\n captureButton: 'Take Selfie',\n retakeButton: 'Retake',\n usePhotoButton: 'Use This Photo',\n processing: 'Processing selfie...',\n success: 'Selfie captured successfully',\n error: 'Failed to capture selfie. Please try again.'\n },\n\n // File Upload\n fileUpload: {\n title: 'Upload Document',\n subtitle: 'Upload a clear photo of your document',\n selectFile: 'Select File',\n uploadButton: 'Upload',\n dragDropText: 'Drag and drop your file here, or click to select',\n supportedFormats: 'Supported formats: JPG, PNG, PDF',\n maxSize: 'Max file size: 10MB',\n processing: 'Processing file...',\n success: 'File uploaded successfully',\n error: 'Failed to upload file. Please try again.'\n },\n\n // Verification Progress\n verificationProgress: {\n title: 'Verifying Your Identity',\n subtitle: 'Please wait while we verify your information',\n steps: {\n analyzing: 'Analyzing documents...',\n extracting: 'Extracting information...',\n verifying: 'Verifying identity...',\n complete: 'Verification complete'\n },\n retrying: 'Retrying ( %{current} / %{max} )',\n estimatedTime: 'Estimated time: 2-3 minutes',\n status: {\n pending: 'Pending',\n processing: 'Processing',\n completed: 'Completed',\n failed: 'Failed',\n retry: 'Retry'\n }\n },\n\n // Review and Submit\n reviewSubmit: {\n title: 'Review Your Information',\n subtitle: 'Please review the information we extracted',\n personalInfo: 'Personal Information',\n documentInfo: 'Document Information',\n editButton: 'Edit',\n submitButton: 'Submit for Verification',\n confirmMessage: 'Are you sure you want to submit this information?',\n processing: 'Submitting...',\n success: 'Information submitted successfully',\n error: 'Failed to submit information. Please try again.',\n selfieSide: {\n center: 'Center',\n right: 'Right',\n left: 'Left'\n }\n },\n\n // Cancel Confirmation\n cancelConfirmation: {\n title: 'Are you sure you want to cancel?',\n message: 'You will lose all your progress.',\n cancelButton: 'Cancel',\n confirmButton: 'OK'\n }\n },\n\n // Camera and Media\n camera: {\n permissionTitle: 'Camera Permission Required',\n permissionMessage: 'We need access to your camera to capture your ID and selfie.',\n permissionButton: 'Grant Permission',\n settingsButton: 'Open Settings',\n notAvailable: 'Camera not available',\n switchCamera: 'Switch Camera',\n flashOn: 'Flash On',\n flashOff: 'Flash Off',\n capturePhoto: 'Capture Photo',\n processing: 'Processing...',\n permissionRequired: 'Camera permission required. Please grant permission to continue.',\n deviceNotAvailable: 'Camera device not available',\n notReady: 'Camera not ready',\n analyzing: 'Analyzing...',\n errorOccurred: 'Camera error occurred',\n failedToCapture: 'Failed to capture photo',\n failedToStartRecording: 'Failed to start video recording',\n failedToStopRecording: 'Failed to stop video recording'\n },\n\n // Errors\n errors: {\n networkError: 'Network error. Please check your connection.',\n serverError: 'Server error. Please try again later.',\n validationError: 'Please check your information and try again.',\n cameraError: 'Camera error. Please try again.',\n fileError: 'File error. Please try again.',\n timeoutError: 'Request timeout. Please try again.',\n unknownError: 'An unknown error occurred. Please try again.'\n },\n\n // Validation messages\n validation: {\n required: 'This field is required',\n invalidEmail: 'Please enter a valid email address',\n invalidPhone: 'Please enter a valid phone number',\n invalidDate: 'Please enter a valid date',\n minLength: 'Must be at least %{min} characters',\n maxLength: 'Must be no more than %{max} characters',\n invalidFormat: 'Invalid format',\n fileTooLarge: 'File is too large',\n fileTypeNotSupported: 'File type not supported'\n }\n};\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/i18n/en/index.ts"],"names":[],"mappings":"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","sourcesContent":["export const en = {\n // Common UI elements\n common: {\n next: 'Next',\n previous: 'Previous',\n continue: 'Continue',\n cancel: 'Cancel',\n confirm: 'Confirm',\n submit: 'Submit',\n retry: 'Retry',\n close: 'Close',\n back: 'Back',\n loading: 'Loading...',\n error: 'Error',\n success: 'Success',\n warning: 'Warning',\n info: 'Information',\n invalidCode: 'Invalid code',\n resendCode: 'Resend code',\n verify: 'Verify',\n sendCode: 'Send code',\n resend: 'Resend',\n email: 'Email',\n otp: 'OTP',\n verificationCode: 'Verification code',\n changeEmail: 'Change Email',\n processing: \"Processing\",\n codeResent: 'Code Resent',\n codeResentMessage: 'Code resent to %{email}',\n phone: 'Phone number with country code',\n },\n\n // KYC Flow\n kyc: {\n title: 'Identity Verification',\n subtitle: 'Complete your identity verification to continue',\n step: 'Step %{current} of %{total}',\n enterCodeSent: \"Enter code sent\",\n\n additionalDocs: {\n title: 'Additional Documents',\n add: \"Press to select file\",\n subtitle: 'Upload additional documents to complete your identity verification',\n uploadButton: 'Upload',\n uploadButtonText: 'Upload',\n uploadSubtext: 'Upload a clear photo of your document',\n supportedFormats: 'Supported formats: JPG, PNG, PDF',\n maxSize: 'Max file size: 10MB',\n processing: 'Processing file...',\n success: 'File uploaded successfully',\n error: 'Failed to upload file. Please try again.'\n },\n\n // Initialization\n initialization: {\n title: 'Welcome to Identity Verification',\n description: 'We need to verify your identity to comply with regulations and ensure security.',\n startButton: 'Start Verification',\n requirements: 'What you\\'ll need:',\n requirementsList: [\n 'Valid government-issued ID',\n 'Good lighting for photos',\n 'Stable internet connection'\n ]\n },\n\n welcome: {\n requirements: 'What you\\'ll need:',\n estimatedTime: 'Estimated time:',\n consent: 'Please accept the following:',\n privacyPolicy: 'I agree to the Privacy Policy',\n termsOfService: 'I agree to the Terms of Service',\n marketingConsent: 'I agree to receive marketing communications',\n readMore: 'Read more'\n },\n\n // Location Capture\n locationCapture: {\n title: 'Secure Your Verification',\n description: 'Allow location access to help us protect your account and prevent fraudulent activity during verification.',\n howThisHelps: 'How this helps:',\n howThisHelpsList: '• Verifies your device location matches your identity\\n• Detects and prevents unauthorized access\\n• Ensures compliance with security regulations',\n permissionDeniedTitle: 'Permission denied',\n permissionDeniedMessage: 'Location permission is required to continue.',\n locationDisabledTitle: 'Location disabled',\n locationDisabledMessage: 'Please enable location services on your device to continue.',\n errorTitle: 'Error',\n errorMessage: 'Unable to retrieve your location. Please try again.',\n obtained: 'Location obtained',\n latitudeLabel: 'Latitude',\n longitudeLabel: 'Longitude',\n accuracyLabel: 'Accuracy',\n resetButton: 'Reset',\n enableButton: 'Enable Location Access',\n fetching: 'Fetching...'\n },\n\n // Country Selection\n countrySelection: {\n title: 'Select Your Country',\n subtitle: 'Choose the country that issued your ID document',\n searchPlaceholder: 'Search for your country...',\n noResults: 'No countries found',\n selectCountry: 'Select Country'\n },\n\n // ID Card Capture\n idCardCapture: {\n title: 'Capture Your ID Document',\n subtitle: 'Take a clear photo of your ID document',\n frontSide: 'Front Side',\n backSide: 'Back Side',\n instructions: {\n title: 'Instructions:',\n list: [\n 'Place your ID on a flat surface',\n 'Ensure good lighting',\n 'Keep the entire document in frame',\n 'Avoid glare and shadows'\n ]\n },\n captureButton: 'Capture Photo',\n retakeButton: 'Retake',\n usePhotoButton: 'Use This Photo',\n processing: 'Processing image...',\n success: 'ID captured successfully',\n error: 'Failed to capture ID. Please try again.',\n captureTitle: '%{side} side of your government document',\n continueOnPhone: 'Continue on Phone',\n continueOnMobile: 'Continue on Mobile',\n scanQrCode: 'Scan this QR code with your phone to continue the verification process.',\n },\n\n // Selfie Capture\n selfieCapture: {\n title: 'Take a Selfie',\n subtitle: 'Take a clear selfie for identity verification',\n instructions: {\n title: 'Instructions:',\n list: [\n 'Look directly at the camera',\n 'Ensure good lighting on your face',\n 'Remove glasses and hats',\n 'Keep a neutral expression'\n ]\n },\n captureButton: 'Take Selfie',\n retakeButton: 'Retake',\n usePhotoButton: 'Use This Photo',\n processing: 'Processing selfie...',\n success: 'Selfie captured successfully',\n error: 'Failed to capture selfie. Please try again.'\n },\n\n // File Upload\n fileUpload: {\n title: 'Upload Document',\n subtitle: 'Upload a clear photo of your document',\n selectFile: 'Select File',\n uploadButton: 'Upload',\n dragDropText: 'Drag and drop your file here, or click to select',\n supportedFormats: 'Supported formats: JPG, PNG, PDF',\n maxSize: 'Max file size: 10MB',\n processing: 'Processing file...',\n success: 'File uploaded successfully',\n error: 'Failed to upload file. Please try again.'\n },\n\n // Verification Progress\n verificationProgress: {\n title: 'Verifying Your Identity',\n subtitle: 'Please wait while we verify your information',\n steps: {\n analyzing: 'Analyzing documents...',\n extracting: 'Extracting information...',\n verifying: 'Verifying identity...',\n complete: 'Verification complete'\n },\n retrying: 'Retrying ( %{current} / %{max} )',\n estimatedTime: 'Estimated time: 2-3 minutes',\n status: {\n pending: 'Pending',\n processing: 'Processing',\n completed: 'Completed',\n failed: 'Failed',\n retry: 'Retry'\n }\n },\n\n // Review and Submit\n reviewSubmit: {\n title: 'Review Your Information',\n subtitle: 'Please review the information we extracted',\n personalInfo: 'Personal Information',\n documentInfo: 'Document Information',\n editButton: 'Edit',\n submitButton: 'Submit for Verification',\n confirmMessage: 'Are you sure you want to submit this information?',\n processing: 'Submitting...',\n success: 'Information submitted successfully',\n error: 'Failed to submit information. Please try again.',\n selfieSide: {\n center: 'Center',\n right: 'Right',\n left: 'Left'\n }\n },\n\n // Cancel Confirmation\n cancelConfirmation: {\n title: 'Are you sure you want to cancel?',\n message: 'You will lose all your progress.',\n cancelButton: 'Cancel',\n confirmButton: 'OK'\n }\n },\n\n // Camera and Media\n camera: {\n permissionTitle: 'Camera Permission Required',\n permissionMessage: 'We need access to your camera to capture your ID and selfie.',\n permissionButton: 'Grant Permission',\n settingsButton: 'Open Settings',\n notAvailable: 'Camera not available',\n switchCamera: 'Switch Camera',\n flashOn: 'Flash On',\n flashOff: 'Flash Off',\n capturePhoto: 'Capture Photo',\n processing: 'Processing...',\n permissionRequired: 'Camera permission required. Please grant permission to continue.',\n deviceNotAvailable: 'Camera device not available',\n notReady: 'Camera not ready',\n analyzing: 'Analyzing...',\n errorOccurred: 'Camera error occurred',\n failedToCapture: 'Failed to capture photo',\n failedToStartRecording: 'Failed to start video recording',\n failedToStopRecording: 'Failed to stop video recording'\n },\n\n // Errors\n errors: {\n networkError: 'Network error. Please check your connection.',\n serverError: 'Server error. Please try again later.',\n validationError: 'Please check your information and try again.',\n cameraError: 'Camera error. Please try again.',\n fileError: 'File error. Please try again.',\n timeoutError: 'Request timeout. Please try again.',\n unknownError: 'An unknown error occurred. Please try again.',\n wrongCode: \"Wrong code\",\n invalidCode: \"Invalid code\",\n invalidEmail: \"Invalid email\",\n invalidPhone: \"Invalid phone\",\n invalidDate: \"Invalid date\",\n minLength: \"Min length\",\n maxLength: \"Max length\",\n invalidFormat: \"Invalid format\",\n fileTooLarge: \"File too large\",\n fileTypeNotSupported: \"File type not supported\",\n },\n\n // Validation messages\n validation: {\n required: 'This field is required',\n invalidEmail: 'Please enter a valid email address',\n invalidPhone: 'Please enter a valid phone number',\n invalidDate: 'Please enter a valid date',\n minLength: 'Must be at least %{min} characters',\n maxLength: 'Must be no more than %{max} characters',\n invalidFormat: 'Invalid format',\n fileTooLarge: 'File is too large',\n fileTypeNotSupported: 'File type not supported'\n }\n};\n"]}
@@ -14,6 +14,19 @@ export declare const fr: {
14
14
  success: string;
15
15
  warning: string;
16
16
  info: string;
17
+ invalidCode: string;
18
+ resendCode: string;
19
+ verify: string;
20
+ sendCode: string;
21
+ resend: string;
22
+ email: string;
23
+ otp: string;
24
+ verificationCode: string;
25
+ changeEmail: string;
26
+ processing: string;
27
+ codeResent: string;
28
+ codeResentMessage: string;
29
+ phone: string;
17
30
  };
18
31
  kyc: {
19
32
  title: string;
@@ -77,6 +90,9 @@ export declare const fr: {
77
90
  success: string;
78
91
  error: string;
79
92
  captureTitle: string;
93
+ continueOnPhone: string;
94
+ continueOnMobile: string;
95
+ scanQrCode: string;
80
96
  };
81
97
  selfieCapture: {
82
98
  title: string;
@@ -175,6 +191,16 @@ export declare const fr: {
175
191
  fileError: string;
176
192
  timeoutError: string;
177
193
  unknownError: string;
194
+ wrongCode: string;
195
+ invalidCode: string;
196
+ invalidEmail: string;
197
+ invalidPhone: string;
198
+ invalidDate: string;
199
+ minLength: string;
200
+ maxLength: string;
201
+ invalidFormat: string;
202
+ fileTooLarge: string;
203
+ fileTypeNotSupported: string;
178
204
  };
179
205
  validation: {
180
206
  required: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/i18n/fr/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsOd,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/i18n/fr/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiQd,CAAC"}
@@ -15,6 +15,19 @@ export const fr = {
15
15
  success: 'Succès',
16
16
  warning: 'Avertissement',
17
17
  info: 'Information',
18
+ invalidCode: 'Code invalide',
19
+ resendCode: 'Renvoyer le code',
20
+ verify: 'Vérifier',
21
+ sendCode: 'Envoyer le code',
22
+ resend: 'Renvoyer',
23
+ email: 'Email',
24
+ otp: 'OTP',
25
+ verificationCode: 'Code de vérification',
26
+ changeEmail: 'Changer d\'email',
27
+ processing: "Traitement",
28
+ codeResent: 'Code Renvoyé',
29
+ codeResentMessage: 'Code renvoyé à %{email}',
30
+ phone: 'Numéro de téléphone avec code pays',
18
31
  },
19
32
  // KYC Flow
20
33
  kyc: {
@@ -92,6 +105,9 @@ export const fr = {
92
105
  success: 'Document d\'identité capturé avec succès',
93
106
  error: 'Échec de la capture du document. Veuillez réessayer.',
94
107
  captureTitle: '%{side} de votre document d\'identité',
108
+ continueOnPhone: 'Continuer sur mobile',
109
+ continueOnMobile: 'Continuer sur mobile',
110
+ scanQrCode: 'Scannez ce code QR avec votre téléphone pour continuer la vérification.',
95
111
  },
96
112
  // Selfie Capture
97
113
  selfieCapture: {
@@ -201,7 +217,17 @@ export const fr = {
201
217
  cameraError: 'Erreur caméra. Veuillez réessayer.',
202
218
  fileError: 'Erreur fichier. Veuillez réessayer.',
203
219
  timeoutError: 'Délai d\'attente dépassé. Veuillez réessayer.',
204
- unknownError: 'Une erreur inconnue s\'est produite. Veuillez réessayer.'
220
+ unknownError: 'Une erreur inconnue s\'est produite. Veuillez réessayer.',
221
+ wrongCode: "Wrong code",
222
+ invalidCode: "Invalid code",
223
+ invalidEmail: "Invalid email",
224
+ invalidPhone: "Invalid phone",
225
+ invalidDate: "Invalid date",
226
+ minLength: "Min length",
227
+ maxLength: "Max length",
228
+ invalidFormat: "Invalid format",
229
+ fileTooLarge: "File too large",
230
+ fileTypeNotSupported: "File type not supported",
205
231
  },
206
232
  validation: {
207
233
  required: 'Ce champ est obligatoire',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/i18n/fr/index.ts"],"names":[],"mappings":"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","sourcesContent":["export const fr = {\n // Common UI elements\n common: {\n next: 'Suivant',\n previous: 'Précédent',\n continue: 'Continuer',\n cancel: 'Annuler',\n confirm: 'Confirmer',\n submit: 'Soumettre',\n retry: 'Réessayer',\n close: 'Fermer',\n back: 'Retour',\n loading: 'Chargement...',\n error: 'Erreur',\n success: 'Succès',\n warning: 'Avertissement',\n info: 'Information',\n },\n\n // KYC Flow\n kyc: {\n title: 'Vérification d\\'Identité',\n subtitle: 'Complétez votre vérification d\\'identité pour continuer',\n step: 'Étape %{current} sur %{total}',\n\n // Initialization\n initialization: {\n title: 'Bienvenue dans la Vérification d\\'Identité',\n description: 'Nous devons vérifier votre identité pour respecter les réglementations et assurer la sécurité.',\n startButton: 'Commencer la Vérification',\n requirements: 'Ce dont vous aurez besoin :',\n requirementsList: [\n 'Une pièce d\\'identité officielle valide',\n 'Un bon éclairage pour les photos',\n 'Une connexion internet stable'\n ]\n },\n welcome: {\n requirements: 'Ce dont vous aurez besoin :',\n estimatedTime: 'Temps estimé :',\n consent: 'Veuillez accepter les suivants :',\n privacyPolicy: 'J\\'accepte la Politique de Confidentialité',\n termsOfService: 'J\\'accepte les Conditions d\\'Utilisation',\n marketingConsent: 'J\\'accepte de recevoir des communications marketing',\n readMore: 'Lire plus'\n },\n\n // Location Capture\n locationCapture: {\n title: 'Sécurisez Votre Vérification',\n description: 'Autorisez l\\'accès à la localisation pour nous aider à protéger votre compte et à prévenir les activités frauduleuses pendant la vérification.',\n howThisHelps: 'Comment cela aide :',\n howThisHelpsList: '• Vérifie que la localisation de votre appareil correspond à votre identité\\n• Détecte et empêche les accès non autorisés\\n• Garantit la conformité aux réglementations de sécurité',\n permissionDeniedTitle: 'Permission refusée',\n permissionDeniedMessage: 'La permission de localisation est nécessaire pour continuer.',\n locationDisabledTitle: 'Localisation désactivée',\n locationDisabledMessage: 'Veuillez activer la localisation sur votre appareil pour continuer.',\n errorTitle: 'Erreur',\n errorMessage: 'Impossible de récupérer votre localisation. Veuillez réessayer.',\n obtained: 'Localisation obtenue',\n latitudeLabel: 'Latitude',\n longitudeLabel: 'Longitude',\n accuracyLabel: 'Précision',\n resetButton: 'Réinitialiser',\n enableButton: 'Activer l\\'accès à la localisation',\n fetching: 'Récupération...'\n },\n\n // Country Selection\n countrySelection: {\n title: 'Sélectionnez Votre Pays',\n subtitle: 'Choisissez le pays qui a émis votre document d\\'identité',\n searchPlaceholder: 'Recherchez votre pays...',\n noResults: 'Aucun pays trouvé',\n selectCountry: 'Sélectionner le Pays'\n },\n\n // ID Card Capture\n idCardCapture: {\n title: 'Capturez Votre Document d\\'Identité',\n subtitle: 'Prenez une photo claire de votre document d\\'identité',\n frontSide: 'Face Avant',\n backSide: 'Face Arrière',\n instructions: {\n title: 'Instructions :',\n list: [\n 'Placez votre pièce d\\'identité sur une surface plane',\n 'Assurez-vous d\\'un bon éclairage',\n 'Gardez tout le document dans le cadre',\n 'Évitez les reflets et les ombres'\n ]\n },\n captureButton: 'Prendre la Photo',\n retakeButton: 'Reprendre',\n usePhotoButton: 'Utiliser Cette Photo',\n processing: 'Traitement de l\\'image...',\n success: 'Document d\\'identité capturé avec succès',\n error: 'Échec de la capture du document. Veuillez réessayer.',\n captureTitle: '%{side} de votre document d\\'identité',\n },\n\n // Selfie Capture\n selfieCapture: {\n title: 'Prenez un Selfie',\n subtitle: 'Prenez un selfie clair pour la vérification d\\'identité',\n instructions: {\n title: 'Instructions :',\n list: [\n 'Regardez directement la caméra',\n 'Assurez-vous d\\'un bon éclairage sur votre visage',\n 'Retirez les lunettes et les chapeaux',\n 'Gardez une expression neutre'\n ]\n },\n captureButton: 'Prendre le Selfie',\n retakeButton: 'Reprendre',\n usePhotoButton: 'Utiliser Cette Photo',\n processing: 'Traitement du selfie...',\n success: 'Selfie capturé avec succès',\n error: 'Échec de la capture du selfie. Veuillez réessayer.'\n },\n\n // File Upload\n fileUpload: {\n title: 'Télécharger le Document',\n subtitle: 'Téléchargez une photo claire de votre document',\n selectFile: 'Sélectionner le Fichier',\n uploadButton: 'Télécharger',\n dragDropText: 'Glissez-déposez votre fichier ici, ou cliquez pour sélectionner',\n supportedFormats: 'Formats supportés : JPG, PNG, PDF',\n maxSize: 'Taille maximale : 10MB',\n processing: 'Traitement du fichier...',\n success: 'Fichier téléchargé avec succès',\n error: 'Échec du téléchargement. Veuillez réessayer.'\n },\n\n // Verification Progress\n verificationProgress: {\n title: 'Vérification de Votre Identité',\n subtitle: 'Veuillez patienter pendant que nous vérifions vos informations',\n steps: {\n analyzing: 'Analyse des documents...',\n extracting: 'Extraction des informations...',\n verifying: 'Vérification de l\\'identité...',\n complete: 'Vérification terminée'\n },\n retrying: 'Réessayer ( %{current}/ %{max} )',\n estimatedTime: 'Temps estimé : 2-3 minutes',\n status: {\n pending: 'En attente',\n processing: 'En cours',\n completed: 'Terminé',\n failed: 'Échoué',\n retry: 'Réessayer'\n }\n },\n\n // Review and Submit\n reviewSubmit: {\n title: 'Vérifiez Vos Informations',\n subtitle: 'Veuillez vérifier les informations que nous avons extraites',\n personalInfo: 'Informations Personnelles',\n documentInfo: 'Informations du Document',\n editButton: 'Modifier',\n submitButton: 'Soumettre pour Vérification',\n confirmMessage: 'Êtes-vous sûr de vouloir soumettre ces informations ?',\n processing: 'Soumission...',\n success: 'Informations soumises avec succès',\n error: 'Échec de la soumission. Veuillez réessayer.',\n selfieSide: {\n center: 'Face',\n right: 'Droite',\n left: 'Gauche'\n }\n },\n\n // Confirmation d'annulation\n cancelConfirmation: {\n title: 'Êtes-vous sûr de vouloir annuler ?',\n message: 'Vous perdrez tout votre progrès.',\n cancelButton: 'Annuler',\n confirmButton: 'OK'\n }\n },\n\n // Camera and Media\n camera: {\n permissionTitle: 'Permission Caméra Requise',\n permissionMessage: 'Nous avons besoin d\\'accéder à votre caméra pour capturer votre pièce d\\'identité et votre selfie.',\n permissionButton: 'Accorder la Permission',\n settingsButton: 'Ouvrir les Paramètres',\n notAvailable: 'Caméra non disponible',\n switchCamera: 'Changer de Caméra',\n flashOn: 'Flash Activé',\n flashOff: 'Flash Désactivé',\n capturePhoto: 'Prendre la Photo',\n processing: 'Traitement...',\n permissionRequired: 'Permission caméra requise. Veuillez accorder la permission pour continuer.',\n deviceNotAvailable: 'Appareil photo non disponible',\n notReady: 'Caméra pas prête',\n analyzing: 'Analyse en cours...',\n errorOccurred: 'Erreur de caméra survenue',\n failedToCapture: 'Échec de la capture photo',\n failedToStartRecording: 'Échec du démarrage de l\\'enregistrement vidéo',\n failedToStopRecording: 'Échec de l\\'arrêt de l\\'enregistrement vidéo'\n },\n\n // Errors\n errors: {\n networkError: 'Erreur réseau. Veuillez vérifier votre connexion.',\n serverError: 'Erreur serveur. Veuillez réessayer plus tard.',\n validationError: 'Veuillez vérifier vos informations et réessayer.',\n cameraError: 'Erreur caméra. Veuillez réessayer.',\n fileError: 'Erreur fichier. Veuillez réessayer.',\n timeoutError: 'Délai d\\'attente dépassé. Veuillez réessayer.',\n unknownError: 'Une erreur inconnue s\\'est produite. Veuillez réessayer.'\n },\n\n validation: {\n required: 'Ce champ est obligatoire',\n invalidEmail: 'Veuillez entrer une adresse email valide',\n invalidPhone: 'Veuillez entrer un numéro de téléphone valide',\n invalidDate: 'Veuillez entrer une date valide',\n minLength: 'Doit contenir au moins {min} caractères',\n maxLength: 'Ne doit pas dépasser {max} caractères',\n invalidFormat: 'Format invalide',\n fileTooLarge: 'Fichier trop volumineux',\n fileTypeNotSupported: 'Type de fichier non supporté'\n }\n\n};\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/i18n/fr/index.ts"],"names":[],"mappings":"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","sourcesContent":["export const fr = {\n // Common UI elements\n common: {\n next: 'Suivant',\n previous: 'Précédent',\n continue: 'Continuer',\n cancel: 'Annuler',\n confirm: 'Confirmer',\n submit: 'Soumettre',\n retry: 'Réessayer',\n close: 'Fermer',\n back: 'Retour',\n loading: 'Chargement...',\n error: 'Erreur',\n success: 'Succès',\n warning: 'Avertissement',\n info: 'Information',\n invalidCode: 'Code invalide',\n resendCode: 'Renvoyer le code',\n verify: 'Vérifier',\n sendCode: 'Envoyer le code',\n resend: 'Renvoyer',\n email: 'Email',\n otp: 'OTP',\n verificationCode: 'Code de vérification',\n changeEmail: 'Changer d\\'email',\n processing: \"Traitement\",\n codeResent: 'Code Renvoyé',\n codeResentMessage: 'Code renvoyé à %{email}',\n phone: 'Numéro de téléphone avec code pays',\n\n },\n\n // KYC Flow\n kyc: {\n title: 'Vérification d\\'Identité',\n subtitle: 'Complétez votre vérification d\\'identité pour continuer',\n step: 'Étape %{current} sur %{total}',\n\n // Initialization\n initialization: {\n title: 'Bienvenue dans la Vérification d\\'Identité',\n description: 'Nous devons vérifier votre identité pour respecter les réglementations et assurer la sécurité.',\n startButton: 'Commencer la Vérification',\n requirements: 'Ce dont vous aurez besoin :',\n requirementsList: [\n 'Une pièce d\\'identité officielle valide',\n 'Un bon éclairage pour les photos',\n 'Une connexion internet stable'\n ]\n },\n welcome: {\n requirements: 'Ce dont vous aurez besoin :',\n estimatedTime: 'Temps estimé :',\n consent: 'Veuillez accepter les suivants :',\n privacyPolicy: 'J\\'accepte la Politique de Confidentialité',\n termsOfService: 'J\\'accepte les Conditions d\\'Utilisation',\n marketingConsent: 'J\\'accepte de recevoir des communications marketing',\n readMore: 'Lire plus'\n },\n\n // Location Capture\n locationCapture: {\n title: 'Sécurisez Votre Vérification',\n description: 'Autorisez l\\'accès à la localisation pour nous aider à protéger votre compte et à prévenir les activités frauduleuses pendant la vérification.',\n howThisHelps: 'Comment cela aide :',\n howThisHelpsList: '• Vérifie que la localisation de votre appareil correspond à votre identité\\n• Détecte et empêche les accès non autorisés\\n• Garantit la conformité aux réglementations de sécurité',\n permissionDeniedTitle: 'Permission refusée',\n permissionDeniedMessage: 'La permission de localisation est nécessaire pour continuer.',\n locationDisabledTitle: 'Localisation désactivée',\n locationDisabledMessage: 'Veuillez activer la localisation sur votre appareil pour continuer.',\n errorTitle: 'Erreur',\n errorMessage: 'Impossible de récupérer votre localisation. Veuillez réessayer.',\n obtained: 'Localisation obtenue',\n latitudeLabel: 'Latitude',\n longitudeLabel: 'Longitude',\n accuracyLabel: 'Précision',\n resetButton: 'Réinitialiser',\n enableButton: 'Activer l\\'accès à la localisation',\n fetching: 'Récupération...'\n },\n\n // Country Selection\n countrySelection: {\n title: 'Sélectionnez Votre Pays',\n subtitle: 'Choisissez le pays qui a émis votre document d\\'identité',\n searchPlaceholder: 'Recherchez votre pays...',\n noResults: 'Aucun pays trouvé',\n selectCountry: 'Sélectionner le Pays'\n },\n\n // ID Card Capture\n idCardCapture: {\n title: 'Capturez Votre Document d\\'Identité',\n subtitle: 'Prenez une photo claire de votre document d\\'identité',\n frontSide: 'Face Avant',\n backSide: 'Face Arrière',\n instructions: {\n title: 'Instructions :',\n list: [\n 'Placez votre pièce d\\'identité sur une surface plane',\n 'Assurez-vous d\\'un bon éclairage',\n 'Gardez tout le document dans le cadre',\n 'Évitez les reflets et les ombres'\n ]\n },\n captureButton: 'Prendre la Photo',\n retakeButton: 'Reprendre',\n usePhotoButton: 'Utiliser Cette Photo',\n processing: 'Traitement de l\\'image...',\n success: 'Document d\\'identité capturé avec succès',\n error: 'Échec de la capture du document. Veuillez réessayer.',\n captureTitle: '%{side} de votre document d\\'identité',\n continueOnPhone: 'Continuer sur mobile',\n continueOnMobile: 'Continuer sur mobile',\n scanQrCode: 'Scannez ce code QR avec votre téléphone pour continuer la vérification.',\n },\n\n // Selfie Capture\n selfieCapture: {\n title: 'Prenez un Selfie',\n subtitle: 'Prenez un selfie clair pour la vérification d\\'identité',\n instructions: {\n title: 'Instructions :',\n list: [\n 'Regardez directement la caméra',\n 'Assurez-vous d\\'un bon éclairage sur votre visage',\n 'Retirez les lunettes et les chapeaux',\n 'Gardez une expression neutre'\n ]\n },\n captureButton: 'Prendre le Selfie',\n retakeButton: 'Reprendre',\n usePhotoButton: 'Utiliser Cette Photo',\n processing: 'Traitement du selfie...',\n success: 'Selfie capturé avec succès',\n error: 'Échec de la capture du selfie. Veuillez réessayer.'\n },\n\n // File Upload\n fileUpload: {\n title: 'Télécharger le Document',\n subtitle: 'Téléchargez une photo claire de votre document',\n selectFile: 'Sélectionner le Fichier',\n uploadButton: 'Télécharger',\n dragDropText: 'Glissez-déposez votre fichier ici, ou cliquez pour sélectionner',\n supportedFormats: 'Formats supportés : JPG, PNG, PDF',\n maxSize: 'Taille maximale : 10MB',\n processing: 'Traitement du fichier...',\n success: 'Fichier téléchargé avec succès',\n error: 'Échec du téléchargement. Veuillez réessayer.'\n },\n\n // Verification Progress\n verificationProgress: {\n title: 'Vérification de Votre Identité',\n subtitle: 'Veuillez patienter pendant que nous vérifions vos informations',\n steps: {\n analyzing: 'Analyse des documents...',\n extracting: 'Extraction des informations...',\n verifying: 'Vérification de l\\'identité...',\n complete: 'Vérification terminée'\n },\n retrying: 'Réessayer ( %{current}/ %{max} )',\n estimatedTime: 'Temps estimé : 2-3 minutes',\n status: {\n pending: 'En attente',\n processing: 'En cours',\n completed: 'Terminé',\n failed: 'Échoué',\n retry: 'Réessayer'\n }\n },\n\n // Review and Submit\n reviewSubmit: {\n title: 'Vérifiez Vos Informations',\n subtitle: 'Veuillez vérifier les informations que nous avons extraites',\n personalInfo: 'Informations Personnelles',\n documentInfo: 'Informations du Document',\n editButton: 'Modifier',\n submitButton: 'Soumettre pour Vérification',\n confirmMessage: 'Êtes-vous sûr de vouloir soumettre ces informations ?',\n processing: 'Soumission...',\n success: 'Informations soumises avec succès',\n error: 'Échec de la soumission. Veuillez réessayer.',\n selfieSide: {\n center: 'Face',\n right: 'Droite',\n left: 'Gauche'\n }\n },\n\n // Confirmation d'annulation\n cancelConfirmation: {\n title: 'Êtes-vous sûr de vouloir annuler ?',\n message: 'Vous perdrez tout votre progrès.',\n cancelButton: 'Annuler',\n confirmButton: 'OK'\n }\n },\n\n // Camera and Media\n camera: {\n permissionTitle: 'Permission Caméra Requise',\n permissionMessage: 'Nous avons besoin d\\'accéder à votre caméra pour capturer votre pièce d\\'identité et votre selfie.',\n permissionButton: 'Accorder la Permission',\n settingsButton: 'Ouvrir les Paramètres',\n notAvailable: 'Caméra non disponible',\n switchCamera: 'Changer de Caméra',\n flashOn: 'Flash Activé',\n flashOff: 'Flash Désactivé',\n capturePhoto: 'Prendre la Photo',\n processing: 'Traitement...',\n permissionRequired: 'Permission caméra requise. Veuillez accorder la permission pour continuer.',\n deviceNotAvailable: 'Appareil photo non disponible',\n notReady: 'Caméra pas prête',\n analyzing: 'Analyse en cours...',\n errorOccurred: 'Erreur de caméra survenue',\n failedToCapture: 'Échec de la capture photo',\n failedToStartRecording: 'Échec du démarrage de l\\'enregistrement vidéo',\n failedToStopRecording: 'Échec de l\\'arrêt de l\\'enregistrement vidéo'\n },\n\n // Errors\n errors: {\n networkError: 'Erreur réseau. Veuillez vérifier votre connexion.',\n serverError: 'Erreur serveur. Veuillez réessayer plus tard.',\n validationError: 'Veuillez vérifier vos informations et réessayer.',\n cameraError: 'Erreur caméra. Veuillez réessayer.',\n fileError: 'Erreur fichier. Veuillez réessayer.',\n timeoutError: 'Délai d\\'attente dépassé. Veuillez réessayer.',\n unknownError: 'Une erreur inconnue s\\'est produite. Veuillez réessayer.',\n wrongCode: \"Wrong code\",\n invalidCode: \"Invalid code\",\n invalidEmail: \"Invalid email\",\n invalidPhone: \"Invalid phone\",\n invalidDate: \"Invalid date\",\n minLength: \"Min length\",\n maxLength: \"Max length\",\n invalidFormat: \"Invalid format\",\n fileTooLarge: \"File too large\",\n fileTypeNotSupported: \"File type not supported\",\n },\n\n validation: {\n required: 'Ce champ est obligatoire',\n invalidEmail: 'Veuillez entrer une adresse email valide',\n invalidPhone: 'Veuillez entrer un numéro de téléphone valide',\n invalidDate: 'Veuillez entrer une date valide',\n minLength: 'Doit contenir au moins {min} caractères',\n maxLength: 'Ne doit pas dépasser {max} caractères',\n invalidFormat: 'Format invalide',\n fileTooLarge: 'Fichier trop volumineux',\n fileTypeNotSupported: 'Type de fichier non supporté'\n }\n\n};\n"]}
package/build/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export * from './TransfergratisSdk.types';
2
2
  export * from './types/KYC.types';
3
+ export * from './types/env.types';
3
4
  export { TemplateKYCExample as LauchTransferGratisKYC } from './components/TemplateKYCExample';
4
5
  export { TemplateKYCFlow } from './components/TemplateKYCFlowRefactored';
5
6
  export { default as templateService } from './modules/api/TemplateService';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAI1C,cAAc,mBAAmB,CAAC;AAGlC,OAAO,EAAE,kBAAkB,IAAI,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAG/F,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AAGzE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC1G,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAG3E,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAI1C,cAAc,mBAAmB,CAAC;AAGlC,cAAc,mBAAmB,CAAC;AAGlC,OAAO,EAAE,kBAAkB,IAAI,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAG/F,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AAGzE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC1G,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAG3E,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC"}
package/build/index.js CHANGED
@@ -1,6 +1,8 @@
1
1
  export * from './TransfergratisSdk.types';
2
2
  // Export KYC types
3
3
  export * from './types/KYC.types';
4
+ // Export Environment types
5
+ export * from './types/env.types';
4
6
  export { TemplateKYCExample as LauchTransferGratisKYC } from './components/TemplateKYCExample';
5
7
  // Export Template Flow Components
6
8
  export { TemplateKYCFlow } from './components/TemplateKYCFlowRefactored';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAG1C,mBAAmB;AACnB,cAAc,mBAAmB,CAAC;AAGlC,OAAO,EAAE,kBAAkB,IAAI,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAE/F,kCAAkC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AAEzE,wCAAwC;AACxC,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC1G,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,6BAA6B;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAE3E,4BAA4B;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC","sourcesContent":["export * from './TransfergratisSdk.types';\n\n\n// Export KYC types\nexport * from './types/KYC.types';\n\n\nexport { TemplateKYCExample as LauchTransferGratisKYC } from './components/TemplateKYCExample';\n\n// Export Template Flow Components\nexport { TemplateKYCFlow } from './components/TemplateKYCFlowRefactored';\n\n// Export Template Service and Utilities\nexport { default as templateService } from './modules/api/TemplateService';\nexport { transformBackendTemplateToSDK, validateTransformedTemplate } from './utils/template-transformer';\nexport { useTemplateLoader } from './hooks/useTemplateLoader';\n\n// Export Template Components\nexport { WelcomeTemplate } from './components/KYCElements/WelcomeTemplate';\n\n// Export Web KYC Components\nexport { WebKYCEntry } from './web';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAG1C,mBAAmB;AACnB,cAAc,mBAAmB,CAAC;AAElC,2BAA2B;AAC3B,cAAc,mBAAmB,CAAC;AAGlC,OAAO,EAAE,kBAAkB,IAAI,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAE/F,kCAAkC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AAEzE,wCAAwC;AACxC,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC1G,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,6BAA6B;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAE3E,4BAA4B;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC","sourcesContent":["export * from './TransfergratisSdk.types';\n\n\n// Export KYC types\nexport * from './types/KYC.types';\n\n// Export Environment types\nexport * from './types/env.types';\n\n\nexport { TemplateKYCExample as LauchTransferGratisKYC } from './components/TemplateKYCExample';\n\n// Export Template Flow Components\nexport { TemplateKYCFlow } from './components/TemplateKYCFlowRefactored';\n\n// Export Template Service and Utilities\nexport { default as templateService } from './modules/api/TemplateService';\nexport { transformBackendTemplateToSDK, validateTransformedTemplate } from './utils/template-transformer';\nexport { useTemplateLoader } from './hooks/useTemplateLoader';\n\n// Export Template Components\nexport { WelcomeTemplate } from './components/KYCElements/WelcomeTemplate';\n\n// Export Web KYC Components\nexport { WebKYCEntry } from './web';\n"]}
@@ -1,4 +1,5 @@
1
1
  import { IBbox } from "../../types/KYC.types";
2
+ import { KycEnvironment } from "../../types/env.types";
2
3
  export declare function frontVerification(result: {
3
4
  path?: string;
4
5
  regionMapping: {
@@ -10,7 +11,27 @@ export declare function frontVerification(result: {
10
11
  currentSide: string;
11
12
  templatePath?: string;
12
13
  mrzType?: string;
13
- }): Promise<{
14
+ }, env?: KycEnvironment): Promise<{
15
+ mrz?: {
16
+ success: boolean;
17
+ parsed_data: {
18
+ status: string;
19
+ document_type: string;
20
+ mrz_type: string;
21
+ };
22
+ } | undefined;
23
+ result: boolean;
24
+ detail: {
25
+ confidence: number;
26
+ }[];
27
+ card_obb: {
28
+ x: number;
29
+ y: number;
30
+ width: number;
31
+ height: number;
32
+ };
33
+ bbox: IBbox;
34
+ } | {
14
35
  mrz?: any;
15
36
  croppedBase64: string | undefined;
16
37
  bbox: IBbox | undefined;
@@ -28,7 +49,7 @@ export declare function backVerification(result: {
28
49
  currentSide: string;
29
50
  templatePath?: string;
30
51
  mrzType?: string;
31
- }): Promise<any>;
52
+ }, env?: KycEnvironment): Promise<any>;
32
53
  /**
33
54
  * Check template type
34
55
  * @param result
@@ -39,5 +60,5 @@ export declare function checkTemplateType(result: {
39
60
  docType: string;
40
61
  docRegion: string;
41
62
  postfix: string;
42
- }): Promise<any>;
63
+ }, env?: KycEnvironment): Promise<any>;
43
64
  //# sourceMappingURL=CardAuthentification.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CardAuthentification.d.ts","sourceRoot":"","sources":["../../../src/modules/api/CardAuthentification.ts"],"names":[],"mappings":"AAEA,OAAO,EAA0B,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAGtE,wBAAsB,iBAAiB,CAAC,MAAM,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE;;;;;;GA0CvO;AAED,wBAAsB,gBAAgB,CAAC,MAAM,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,gBA2FtO;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,gBAWrH"}
1
+ {"version":3,"file":"CardAuthentification.d.ts","sourceRoot":"","sources":["../../../src/modules/api/CardAuthentification.ts"],"names":[],"mappings":"AAEA,OAAO,EAA0B,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGvD,wBAAsB,iBAAiB,CAAC,MAAM,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,GAAE,cAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;GAoE3Q;AAED,wBAAsB,gBAAgB,CAAC,MAAM,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,GAAE,cAA6B,gBAuH1Q;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,GAAE,cAA6B,gBAqBzJ"}
@@ -1,12 +1,35 @@
1
1
  import kycService, { authentification, errorMessage, truncateFields } from "./KYCService";
2
2
  import { cropByObb } from "../../utils/cropByObb";
3
3
  import { logger } from "../../utils/logger";
4
- export async function frontVerification(result) {
4
+ export async function frontVerification(result, env = 'PRODUCTION') {
5
5
  try {
6
6
  console.log("Front verification START", JSON.stringify({ result }, null, 2));
7
7
  logger.log("Front verification", JSON.stringify({ result }, null, 2));
8
+ // SANDBOX mode: skip AI verification and return mock response
9
+ if (env === 'SANDBOX') {
10
+ console.log("SANDBOX mode: Skipping AI verification for front document");
11
+ logger.log("SANDBOX mode: Returning mock front verification response");
12
+ const mockBbox = { minX: 50, minY: 50, width: 200, height: 200 };
13
+ const mockResponse = {
14
+ result: true,
15
+ detail: [{ confidence: 0.95 }],
16
+ card_obb: { x: 50, y: 50, width: 200, height: 200 },
17
+ bbox: mockBbox,
18
+ ...(result.regionMapping.authMethod.includes('MRZ') ? {
19
+ mrz: {
20
+ success: true,
21
+ parsed_data: {
22
+ status: 'success',
23
+ document_type: result.selectedDocumentType,
24
+ mrz_type: result.mrzType || 'TD1'
25
+ }
26
+ }
27
+ } : {})
28
+ };
29
+ return mockResponse;
30
+ }
8
31
  const token = await authentification();
9
- const detected = await kycService.detectFaceOnId(result?.path || '', token, result?.selectedDocumentType || '');
32
+ const detected = await kycService.detectFaceOnId(result?.path || '', token, result?.selectedDocumentType || '', env);
10
33
  if (!detected.result) {
11
34
  throw new Error('Aucun visage détecté sur la carte. Veuillez reprendre.');
12
35
  }
@@ -29,7 +52,7 @@ export async function frontVerification(result) {
29
52
  token: token,
30
53
  template_path: result?.templatePath || '',
31
54
  mrz_type: result?.mrzType || ''
32
- });
55
+ }, env);
33
56
  }
34
57
  return { ...detected, croppedBase64, bbox, ...(mrz ? { mrz } : {}) };
35
58
  }
@@ -38,11 +61,37 @@ export async function frontVerification(result) {
38
61
  throw new Error(e?.message || 'Erreur de détection du visage');
39
62
  }
40
63
  }
41
- export async function backVerification(result) {
64
+ export async function backVerification(result, env = 'PRODUCTION') {
42
65
  try {
43
66
  if (!result.path)
44
67
  throw new Error('No path provided');
45
68
  logger.log("result.regionMapping", result.regionMapping, result.currentSide, result.code);
69
+ // SANDBOX mode: skip AI verification and return mock response
70
+ if (env === 'SANDBOX') {
71
+ console.log("SANDBOX mode: Skipping AI verification for back document");
72
+ logger.log("SANDBOX mode: Returning mock back verification response");
73
+ const mockBbox = { minX: 50, minY: 50, width: 200, height: 200 };
74
+ if (result.regionMapping.authMethod.includes('MRZ')) {
75
+ return {
76
+ success: true,
77
+ parsed_data: {
78
+ status: 'success',
79
+ document_type: result.selectedDocumentType,
80
+ mrz_type: result.mrzType || 'TD1'
81
+ },
82
+ bbox: mockBbox,
83
+ card_obb: { x: 50, y: 50, width: 200, height: 200 }
84
+ };
85
+ }
86
+ else if (result.regionMapping.authMethod.includes('2D_barcode')) {
87
+ return {
88
+ barcode_data: 'SANDBOX_MOCK_BARCODE',
89
+ bbox: mockBbox,
90
+ card_obb: { x: 50, y: 50, width: 200, height: 200 }
91
+ };
92
+ }
93
+ return { bbox: mockBbox };
94
+ }
46
95
  const token = await authentification();
47
96
  // Fonction helper pour essayer MRZ puis barcode en fallback
48
97
  const tryMrzWithBarcodeFallback = async () => {
@@ -56,7 +105,7 @@ export async function backVerification(result) {
56
105
  token: token,
57
106
  template_path: result?.templatePath || '',
58
107
  mrz_type: result?.mrzType || ''
59
- });
108
+ }, env);
60
109
  let bbox;
61
110
  let croppedBase64;
62
111
  try {
@@ -70,7 +119,7 @@ export async function backVerification(result) {
70
119
  catch (mrzError) {
71
120
  logger.log("MRZ échoué, tentative d'extraction barcode");
72
121
  try {
73
- const barcode = await kycService.extractBarcode({ fileUri: result.path, token: token });
122
+ const barcode = await kycService.extractBarcode({ fileUri: result.path, token: token }, env);
74
123
  return barcode;
75
124
  }
76
125
  catch (barcodeError) {
@@ -92,7 +141,7 @@ export async function backVerification(result) {
92
141
  token: token,
93
142
  template_path: result?.templatePath || '',
94
143
  mrz_type: result?.mrzType || ''
95
- });
144
+ }, env);
96
145
  let bbox;
97
146
  try {
98
147
  const crop = await cropByObb(result?.path || '', mrz.card_obb);
@@ -108,7 +157,7 @@ export async function backVerification(result) {
108
157
  if (result.regionMapping.authMethod.length > 0 && result.regionMapping.authMethod.includes('2D_barcode')) {
109
158
  try {
110
159
  logger.log("Tentative d'extraction barcode");
111
- const barcode = await kycService.extractBarcode({ fileUri: result.path, token: token });
160
+ const barcode = await kycService.extractBarcode({ fileUri: result.path, token: token }, env);
112
161
  let bbox;
113
162
  try {
114
163
  const crop = await cropByObb(result?.path || '', barcode.card_obb);
@@ -132,10 +181,19 @@ export async function backVerification(result) {
132
181
  * @param result
133
182
  * @returns
134
183
  */
135
- export async function checkTemplateType(result) {
184
+ export async function checkTemplateType(result, env = 'PRODUCTION') {
136
185
  try {
186
+ // SANDBOX mode: skip AI verification and return mock response
187
+ if (env === 'SANDBOX') {
188
+ console.log("SANDBOX mode: Skipping AI template type check");
189
+ logger.log("SANDBOX mode: Returning mock template type response");
190
+ return {
191
+ template_path: `templates/${result.docType}_${result.docRegion}_${result.postfix}.jpg`,
192
+ card_obb: { x: 50, y: 50, width: 200, height: 200 }
193
+ };
194
+ }
137
195
  const token = await authentification();
138
- const templateType = await kycService.checkTemplateType({ fileUri: result.path || '', docType: result?.docType, docRegion: result?.docRegion || "", postfix: result?.postfix, token: token });
196
+ const templateType = await kycService.checkTemplateType({ fileUri: result.path || '', docType: result?.docType, docRegion: result?.docRegion || "", postfix: result?.postfix, token: token }, env);
139
197
  logger.log("templateType result", JSON.stringify(truncateFields(templateType), null, 2));
140
198
  return templateType;
141
199
  }