@sanctum-key/react-native-sdk 1.0.20 → 1.0.21

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sanctum-key/react-native-sdk",
3
- "version": "1.0.20",
3
+ "version": "1.0.21",
4
4
  "description": "Sanctum Key React Native SDK",
5
5
  "main": "build/src/index.js",
6
6
  "types": "build/src/index.d.ts",
@@ -1 +1 @@
1
- {"version":3,"file":"VerificationProgressTemplate.d.ts","sourceRoot":"","sources":["../../../../src/components/KYCElements/VerificationProgressTemplate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAM1D,UAAU,iCAAiC;IACzC,SAAS,EAAE,iBAAiB,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,aAAa,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,4BAA4B,EAAE,KAAK,CAAC,EAAE,CAAC,iCAAiC,CAuMpF,CAAC"}
1
+ {"version":3,"file":"VerificationProgressTemplate.d.ts","sourceRoot":"","sources":["../../../../src/components/KYCElements/VerificationProgressTemplate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAM1D,UAAU,iCAAiC;IACzC,SAAS,EAAE,iBAAiB,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;IACf,aAAa,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,4BAA4B,EAAE,KAAK,CAAC,EAAE,CAAC,iCAAiC,CA4NpF,CAAC"}
@@ -13,7 +13,6 @@ export const VerificationProgressTemplate = () => {
13
13
  const verification = state.verification;
14
14
  const isSuccess = verification.status === 'success';
15
15
  const isFailed = verification.status === 'failed';
16
- // Fonction pour récupérer le résultat de vérification avec retry
17
16
  const getVerificationResult = async (currentRetryCount = 0, maxRetries = 40) => {
18
17
  try {
19
18
  logger.log(`Starting verification check (attempt ${currentRetryCount + 1}/${maxRetries + 1})`);
@@ -28,17 +27,18 @@ export const VerificationProgressTemplate = () => {
28
27
  }
29
28
  });
30
29
  setIsRetrying(false);
31
- return; // Break out of the function so it DOES NOT RETRY
30
+ return;
31
+ }
32
+ let verificationResult = result?.data;
33
+ if (verificationResult && !verificationResult.verification_status && verificationResult[state.session.session_id]) {
34
+ const nestedData = verificationResult[state.session.session_id]?.data;
35
+ verificationResult = typeof nestedData === 'string' ? JSON.parse(nestedData) : nestedData;
32
36
  }
33
- // Check standard nested payload format
34
- const responseData = result?.data;
35
- const verificationResult = responseData?.[state.session.session_id]?.data;
36
37
  if (!verificationResult) {
37
- // If we still didn't get data and the status wasn't failed, throw to trigger a retry
38
38
  throw new Error('Verification payload missing for current session');
39
39
  }
40
- // Vérifier le statut de vérification
41
- if (verificationResult.verification_status === null || verificationResult.verification_status === "processing" || verificationResult.verification_status === "pending") {
40
+ const currentStatus = verificationResult.verification_status;
41
+ if (currentStatus === null || currentStatus === "processing" || currentStatus === "pending") {
42
42
  if (currentRetryCount < maxRetries) {
43
43
  const nextRetryCount = currentRetryCount + 1;
44
44
  setRetryCount(nextRetryCount);
@@ -58,14 +58,16 @@ export const VerificationProgressTemplate = () => {
58
58
  return;
59
59
  }
60
60
  }
61
- // Traiter le résultat final (success, failed, etc.)
62
- if (verificationResult.verification_status === "completed" || verificationResult.verification_status === "approved") {
61
+ if (currentStatus === "completed" || currentStatus === "approved") {
63
62
  actions.setVerificationState({
64
63
  status: 'success',
65
- result: result
64
+ result: {
65
+ ...result,
66
+ referenceId: verificationResult.verification_id || verificationResult.session_id
67
+ }
66
68
  });
67
69
  }
68
- else if (verificationResult.verification_status === "failed" || verificationResult.verification_status === "rejected") {
70
+ else if (currentStatus === "failed" || currentStatus === "rejected") {
69
71
  actions.setVerificationState({
70
72
  status: 'failed',
71
73
  result: {
@@ -107,6 +109,22 @@ export const VerificationProgressTemplate = () => {
107
109
  clearTimeout(timeoutId);
108
110
  };
109
111
  }, [timeoutId]);
112
+ // 🚨 THE FIX: Automatically trigger the webhook/completion flow on success
113
+ useEffect(() => {
114
+ let autoSubmitTimer;
115
+ if (isSuccess) {
116
+ logger.log("Verification successful. Initiating auto-submit countdown...");
117
+ // Wait 3 seconds so the user can see the "Complete" screen, then automatically push the data
118
+ autoSubmitTimer = setTimeout(() => {
119
+ actions.submitVerification();
120
+ }, 3000);
121
+ }
122
+ // Cleanup the timer if the user clicks the button manually before 3 seconds are up
123
+ return () => {
124
+ if (autoSubmitTimer)
125
+ clearTimeout(autoSubmitTimer);
126
+ };
127
+ }, [isSuccess, actions]);
110
128
  if (isSuccess) {
111
129
  return (<View style={styles.container}>
112
130
  <Text style={styles.title}>{t('kyc.verificationProgress.steps.complete')}</Text>
@@ -126,7 +144,6 @@ export const VerificationProgressTemplate = () => {
126
144
  {Array.isArray(verification.result?.issues) && verification.result.issues.map((issue, idx) => (<Text key={idx} style={styles.issueItem}>• {issue}</Text>))}
127
145
  </View>
128
146
 
129
- {/* 🚨 FIX 2: Give the user actionable options to End or Restart */}
130
147
  <TouchableOpacity style={[styles.button, styles.primary]} onPress={() => actions.submitVerification()}>
131
148
  <Text style={styles.buttonText}>
132
149
  {state.currentLanguage === 'en' ? 'OK / Finish' : 'Terminer'}
@@ -1 +1 @@
1
- {"version":3,"file":"VerificationProgressTemplate.js","sourceRoot":"","sources":["../../../../src/components/KYCElements/VerificationProgressTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { View, Text, StyleSheet, TouchableOpacity } from 'react-native';\nimport { TemplateComponent } from '../../types/KYC.types';\nimport { useTemplateKYCFlowContext } from '../../hooks/useTemplateKYCFlow';\nimport { useI18n } from '../../hooks/useI18n';\nimport kycService, { errorMessage } from '../../modules/api/KYCService';\nimport { logger } from '../../utils/logger';\n\ninterface VerificationProgressTemplateProps {\n component: TemplateComponent;\n value: unknown;\n onValueChange: (data: unknown) => void;\n error?: string;\n language?: string;\n}\n\nexport const VerificationProgressTemplate: React.FC<VerificationProgressTemplateProps> = () => {\n const { t } = useI18n();\n const { state, actions } = useTemplateKYCFlowContext();\n const [retryCount, setRetryCount] = useState(0);\n const [isRetrying, setIsRetrying] = useState(false);\n const [timeoutId, setTimeoutId] = useState<number | null>(null);\n\n const verification = state.verification;\n const isSuccess = verification.status === 'success';\n const isFailed = verification.status === 'failed';\n\n // Fonction pour récupérer le résultat de vérification avec retry\n const getVerificationResult = async (currentRetryCount = 0, maxRetries = 40) => {\n try {\n logger.log(`Starting verification check (attempt ${currentRetryCount + 1}/${maxRetries + 1})`);\n const result: any = await kycService.getVerificationResult(state.session.session_id);\n \n logger.log('getVerificationResult raw result:', JSON.stringify(result, null, 2));\n\n if (result?.status === 'Failed.' || result?.status === 'failed' || result?.status === 'rejected') {\n actions.setVerificationState({\n status: 'failed',\n result: {\n referenceId: state.session.session_id,\n issues: [result?.message || 'Verification failed. Sent for manual review.']\n } as any\n });\n setIsRetrying(false);\n return; // Break out of the function so it DOES NOT RETRY\n }\n\n // Check standard nested payload format\n const responseData = result?.data;\n const verificationResult = responseData?.[state.session.session_id]?.data;\n\n if (!verificationResult) {\n // If we still didn't get data and the status wasn't failed, throw to trigger a retry\n throw new Error('Verification payload missing for current session');\n }\n\n // Vérifier le statut de vérification\n if (verificationResult.verification_status === null || verificationResult.verification_status === \"processing\" || verificationResult.verification_status === \"pending\") {\n if (currentRetryCount < maxRetries) {\n const nextRetryCount = currentRetryCount + 1;\n setRetryCount(nextRetryCount);\n setIsRetrying(true);\n logger.log(`Verification still processing, retrying in 10s... (${nextRetryCount}/${maxRetries})`);\n \n if (timeoutId) clearTimeout(timeoutId);\n \n const newTimeoutId = setTimeout(() => {\n getVerificationResult(nextRetryCount, maxRetries);\n }, 10000);\n \n setTimeoutId(newTimeoutId as any);\n return; \n } else {\n logger.error('Max retries reached, verification still processing');\n setIsRetrying(false);\n return;\n }\n }\n\n // Traiter le résultat final (success, failed, etc.)\n if (verificationResult.verification_status === \"completed\" || verificationResult.verification_status === \"approved\") {\n actions.setVerificationState({\n status: 'success',\n result: result\n });\n } else if (verificationResult.verification_status === \"failed\" || verificationResult.verification_status === \"rejected\") {\n actions.setVerificationState({\n status: 'failed',\n result: {\n referenceId: verificationResult.verification_id || state.session.session_id,\n issues: ['Verification failed during processing.']\n } as any\n });\n }\n \n setIsRetrying(false);\n\n } catch (error: any) {\n logger.error('getVerificationResult error', JSON.stringify(errorMessage(error) || { message: error?.message || 'Unknown error' }, null, 2));\n \n if (currentRetryCount < maxRetries) {\n const nextRetryCount = currentRetryCount + 1;\n setRetryCount(nextRetryCount);\n setIsRetrying(true);\n logger.log(`getVerificationResult Error occurred, retrying in 10s... (${nextRetryCount}/${maxRetries})`);\n \n if (timeoutId) clearTimeout(timeoutId);\n \n const newTimeoutId = setTimeout(() => {\n getVerificationResult(nextRetryCount, maxRetries);\n }, 10000);\n \n setTimeoutId(newTimeoutId as any);\n } else {\n setIsRetrying(false);\n logger.error('Max retries reached after errors');\n }\n }\n };\n\n useEffect(() => {\n if (state.session.session_id) {\n getVerificationResult();\n }\n }, [state.session.session_id]);\n\n useEffect(() => {\n return () => {\n if (timeoutId) clearTimeout(timeoutId);\n };\n }, [timeoutId]);\n\n if (isSuccess) {\n return (\n <View style={styles.container}>\n <Text style={styles.title}>{t('kyc.verificationProgress.steps.complete')}</Text>\n <Text style={styles.subtitle}>{t('kyc.verificationProgress.subtitle')}</Text>\n <TouchableOpacity style={[styles.button, styles.primary]} onPress={() => actions.submitVerification()}>\n <Text style={styles.buttonText}>{t('common.continue')}</Text>\n </TouchableOpacity>\n {verification.result?.referenceId ? (\n <Text style={styles.refText}>{`Verification ID: ${verification.result.referenceId}`}</Text>\n ) : null}\n </View>\n );\n }\n\n if (isFailed) {\n return (\n <View style={styles.container}>\n <Text style={styles.title}>{t('kyc.verificationProgress.status.failed')}</Text>\n \n <View style={styles.issuesBox}>\n <Text style={styles.issuesTitle}>{t('common.error')}</Text>\n {Array.isArray(verification.result?.issues) && verification.result.issues.map((issue: string, idx: number) => (\n <Text key={idx} style={styles.issueItem}>• {issue}</Text>\n ))}\n </View>\n\n {/* 🚨 FIX 2: Give the user actionable options to End or Restart */}\n <TouchableOpacity style={[styles.button, styles.primary]} onPress={() => actions.submitVerification()}>\n <Text style={styles.buttonText}>\n {state.currentLanguage === 'en' ? 'OK / Finish' : 'Terminer'}\n </Text>\n </TouchableOpacity>\n \n <TouchableOpacity style={[styles.button, styles.secondary]} onPress={() => actions.resetTemplate()}>\n <Text style={styles.secondaryText}>\n {state.currentLanguage === 'en' ? 'Start Over' : 'Recommencer'}\n </Text>\n </TouchableOpacity>\n\n {verification.result?.referenceId ? (\n <Text style={styles.refText}>{`Reference ID: ${verification.result.referenceId}`}</Text>\n ) : null}\n </View>\n );\n }\n\n return (\n <View style={styles.container}>\n <Text style={styles.title}>{t('kyc.verificationProgress.title')}</Text>\n <Text style={styles.subtitle}>\n {isRetrying\n ? `${t('kyc.verificationProgress.retrying', { current: retryCount, max: 40 })}`\n : t('kyc.verificationProgress.estimatedTime')\n }\n </Text>\n <View style={styles.timeline}>\n <View style={[styles.dot, styles.done]}><Text style={styles.stepCheckmark}>✓</Text></View>\n <View style={styles.line} />\n <View style={[styles.dot, styles.active]}><Text style={styles.stepCheckmark}>2</Text></View>\n <View style={styles.line} />\n <View style={[styles.dot, styles.pending]}><Text style={styles.stepCheckmark}>3</Text></View>\n </View>\n <View style={styles.row}>\n <Text style={styles.stepLabel}>{t('kyc.verificationProgress.status.completed')}</Text>\n <Text style={styles.stepLabel}>{t('kyc.verificationProgress.steps.analyzing')}</Text>\n <Text style={styles.stepLabel}>{t('kyc.verificationProgress.steps.verifying')}</Text>\n </View>\n <View style={styles.card}>\n <Text style={styles.cardTitle}>{t('kyc.idCardCapture.title')}</Text>\n <Text style={styles.cardLine}>{t('kyc.verificationProgress.steps.extracting')}</Text>\n <Text style={styles.cardTitle}>{t('kyc.selfieCapture.title')}</Text>\n <Text style={styles.cardLine}>{t('kyc.verificationProgress.steps.analyzing')}</Text>\n <Text style={styles.cardTitle}>{t('kyc.verificationProgress.title')}</Text>\n <Text style={styles.cardLine}>\n {isRetrying\n ? `${t('kyc.verificationProgress.status.processing')}...`\n : t('kyc.verificationProgress.status.pending')\n }\n </Text>\n </View>\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: { flex: 1, width: '100%', paddingHorizontal: 16, paddingVertical: 12 },\n title: { fontSize: 24, fontWeight: 'bold', color: '#111827', textAlign: 'center', marginTop: 12 },\n subtitle: { fontSize: 14, color: '#6B7280', textAlign: 'center', marginTop: 8 },\n timeline: { flexDirection: 'row', alignItems: 'center', justifyContent: 'space-between', marginTop: 24 },\n dot: { width: 38, height: 38, borderRadius: 34, justifyContent: 'center', alignItems: 'center' },\n stepCheckmark: { color: 'white', fontSize: 16, fontWeight: 'bold' },\n line: { flex: 1, height: 4, backgroundColor: '#E5E7EB' },\n done: { backgroundColor: '#10B981' },\n active: { backgroundColor: '#F59E0B' },\n pending: { backgroundColor: '#E5E7EB' },\n row: { flexDirection: 'row', justifyContent: 'space-between', marginTop: 8 },\n stepLabel: { fontSize: 14, color: '#111827', fontWeight: '600' },\n card: { backgroundColor: 'white', padding: 16, borderRadius: 16, marginTop: 24 },\n cardTitle: { fontSize: 16, color: '#6B7280', marginTop: 8 },\n cardLine: { fontSize: 18, color: '#111827', fontWeight: '600', marginTop: 2 },\n button: { paddingVertical: 14, borderRadius: 10, alignItems: 'center', marginTop: 14 },\n primary: { backgroundColor: '#2DBD60' },\n buttonText: { color: 'white', fontSize: 16, fontWeight: '600' },\n refText: { marginTop: 12, textAlign: 'center', color: '#6B7280' },\n issuesBox: { backgroundColor: '#FEF2F2', borderRadius: 16, padding: 16, marginTop: 20 },\n issuesTitle: { color: '#991B1B', fontWeight: '700', marginBottom: 8 },\n issueItem: { color: '#991B1B', marginTop: 4 },\n secondary: { backgroundColor: '#F3F4F6', borderWidth: 1, borderColor: '#D1D5DB' },\n secondaryText: { color: '#374151', fontSize: 16, fontWeight: '600' },\n});"]}
1
+ {"version":3,"file":"VerificationProgressTemplate.js","sourceRoot":"","sources":["../../../../src/components/KYCElements/VerificationProgressTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { View, Text, StyleSheet, TouchableOpacity } from 'react-native';\nimport { TemplateComponent } from '../../types/KYC.types';\nimport { useTemplateKYCFlowContext } from '../../hooks/useTemplateKYCFlow';\nimport { useI18n } from '../../hooks/useI18n';\nimport kycService, { errorMessage } from '../../modules/api/KYCService';\nimport { logger } from '../../utils/logger';\n\ninterface VerificationProgressTemplateProps {\n component: TemplateComponent;\n value: unknown;\n onValueChange: (data: unknown) => void;\n error?: string;\n language?: string;\n}\n\nexport const VerificationProgressTemplate: React.FC<VerificationProgressTemplateProps> = () => {\n const { t } = useI18n();\n const { state, actions } = useTemplateKYCFlowContext();\n const [retryCount, setRetryCount] = useState(0);\n const [isRetrying, setIsRetrying] = useState(false);\n const [timeoutId, setTimeoutId] = useState<number | null>(null);\n\n const verification = state.verification;\n const isSuccess = verification.status === 'success';\n const isFailed = verification.status === 'failed';\n\n const getVerificationResult = async (currentRetryCount = 0, maxRetries = 40) => {\n try {\n logger.log(`Starting verification check (attempt ${currentRetryCount + 1}/${maxRetries + 1})`);\n const result: any = await kycService.getVerificationResult(state.session.session_id);\n \n logger.log('getVerificationResult raw result:', JSON.stringify(result, null, 2));\n\n if (result?.status === 'Failed.' || result?.status === 'failed' || result?.status === 'rejected') {\n actions.setVerificationState({\n status: 'failed',\n result: {\n referenceId: state.session.session_id,\n issues: [result?.message || 'Verification failed. Sent for manual review.']\n } as any\n });\n setIsRetrying(false);\n return; \n }\n\n let verificationResult = result?.data;\n \n if (verificationResult && !verificationResult.verification_status && verificationResult[state.session.session_id]) {\n const nestedData = verificationResult[state.session.session_id]?.data;\n verificationResult = typeof nestedData === 'string' ? JSON.parse(nestedData) : nestedData;\n }\n\n if (!verificationResult) {\n throw new Error('Verification payload missing for current session');\n }\n\n const currentStatus = verificationResult.verification_status;\n\n if (currentStatus === null || currentStatus === \"processing\" || currentStatus === \"pending\") {\n if (currentRetryCount < maxRetries) {\n const nextRetryCount = currentRetryCount + 1;\n setRetryCount(nextRetryCount);\n setIsRetrying(true);\n logger.log(`Verification still processing, retrying in 10s... (${nextRetryCount}/${maxRetries})`);\n \n if (timeoutId) clearTimeout(timeoutId);\n \n const newTimeoutId = setTimeout(() => {\n getVerificationResult(nextRetryCount, maxRetries);\n }, 10000);\n \n setTimeoutId(newTimeoutId as any);\n return;\n } else {\n logger.error('Max retries reached, verification still processing');\n setIsRetrying(false);\n return;\n }\n }\n\n if (currentStatus === \"completed\" || currentStatus === \"approved\") {\n actions.setVerificationState({\n status: 'success',\n result: {\n ...result,\n referenceId: verificationResult.verification_id || verificationResult.session_id\n } as any\n });\n } else if (currentStatus === \"failed\" || currentStatus === \"rejected\") {\n actions.setVerificationState({\n status: 'failed',\n result: {\n referenceId: verificationResult.verification_id || state.session.session_id,\n issues: ['Verification failed during processing.']\n } as any\n });\n }\n \n setIsRetrying(false);\n\n } catch (error: any) {\n logger.error('getVerificationResult error', JSON.stringify(errorMessage(error) || { message: error?.message || 'Unknown error' }, null, 2));\n \n if (currentRetryCount < maxRetries) {\n const nextRetryCount = currentRetryCount + 1;\n setRetryCount(nextRetryCount);\n setIsRetrying(true);\n logger.log(`getVerificationResult Error occurred, retrying in 10s... (${nextRetryCount}/${maxRetries})`);\n \n if (timeoutId) clearTimeout(timeoutId);\n \n const newTimeoutId = setTimeout(() => {\n getVerificationResult(nextRetryCount, maxRetries);\n }, 10000);\n \n setTimeoutId(newTimeoutId as any);\n } else {\n setIsRetrying(false);\n logger.error('Max retries reached after errors');\n }\n }\n };\n\n useEffect(() => {\n if (state.session.session_id) {\n getVerificationResult();\n }\n }, [state.session.session_id]);\n\n useEffect(() => {\n return () => {\n if (timeoutId) clearTimeout(timeoutId);\n };\n }, [timeoutId]);\n\n // 🚨 THE FIX: Automatically trigger the webhook/completion flow on success\n useEffect(() => {\n let autoSubmitTimer: ReturnType<typeof setTimeout>;\n \n if (isSuccess) {\n logger.log(\"Verification successful. Initiating auto-submit countdown...\");\n // Wait 3 seconds so the user can see the \"Complete\" screen, then automatically push the data\n autoSubmitTimer = setTimeout(() => {\n actions.submitVerification();\n }, 3000);\n }\n\n // Cleanup the timer if the user clicks the button manually before 3 seconds are up\n return () => {\n if (autoSubmitTimer) clearTimeout(autoSubmitTimer);\n };\n }, [isSuccess, actions]);\n\n if (isSuccess) {\n return (\n <View style={styles.container}>\n <Text style={styles.title}>{t('kyc.verificationProgress.steps.complete')}</Text>\n <Text style={styles.subtitle}>{t('kyc.verificationProgress.subtitle')}</Text>\n <TouchableOpacity style={[styles.button, styles.primary]} onPress={() => actions.submitVerification()}>\n <Text style={styles.buttonText}>{t('common.continue')}</Text>\n </TouchableOpacity>\n {verification.result?.referenceId ? (\n <Text style={styles.refText}>{`Verification ID: ${verification.result.referenceId}`}</Text>\n ) : null}\n </View>\n );\n }\n\n if (isFailed) {\n return (\n <View style={styles.container}>\n <Text style={styles.title}>{t('kyc.verificationProgress.status.failed')}</Text>\n \n <View style={styles.issuesBox}>\n <Text style={styles.issuesTitle}>{t('common.error')}</Text>\n {Array.isArray(verification.result?.issues) && verification.result.issues.map((issue: string, idx: number) => (\n <Text key={idx} style={styles.issueItem}>• {issue}</Text>\n ))}\n </View>\n\n <TouchableOpacity style={[styles.button, styles.primary]} onPress={() => actions.submitVerification()}>\n <Text style={styles.buttonText}>\n {state.currentLanguage === 'en' ? 'OK / Finish' : 'Terminer'}\n </Text>\n </TouchableOpacity>\n \n <TouchableOpacity style={[styles.button, styles.secondary]} onPress={() => actions.resetTemplate()}>\n <Text style={styles.secondaryText}>\n {state.currentLanguage === 'en' ? 'Start Over' : 'Recommencer'}\n </Text>\n </TouchableOpacity>\n\n {verification.result?.referenceId ? (\n <Text style={styles.refText}>{`Reference ID: ${verification.result.referenceId}`}</Text>\n ) : null}\n </View>\n );\n }\n\n return (\n <View style={styles.container}>\n <Text style={styles.title}>{t('kyc.verificationProgress.title')}</Text>\n <Text style={styles.subtitle}>\n {isRetrying\n ? `${t('kyc.verificationProgress.retrying', { current: retryCount, max: 40 })}`\n : t('kyc.verificationProgress.estimatedTime')\n }\n </Text>\n <View style={styles.timeline}>\n <View style={[styles.dot, styles.done]}><Text style={styles.stepCheckmark}>✓</Text></View>\n <View style={styles.line} />\n <View style={[styles.dot, styles.active]}><Text style={styles.stepCheckmark}>2</Text></View>\n <View style={styles.line} />\n <View style={[styles.dot, styles.pending]}><Text style={styles.stepCheckmark}>3</Text></View>\n </View>\n <View style={styles.row}>\n <Text style={styles.stepLabel}>{t('kyc.verificationProgress.status.completed')}</Text>\n <Text style={styles.stepLabel}>{t('kyc.verificationProgress.steps.analyzing')}</Text>\n <Text style={styles.stepLabel}>{t('kyc.verificationProgress.steps.verifying')}</Text>\n </View>\n <View style={styles.card}>\n <Text style={styles.cardTitle}>{t('kyc.idCardCapture.title')}</Text>\n <Text style={styles.cardLine}>{t('kyc.verificationProgress.steps.extracting')}</Text>\n <Text style={styles.cardTitle}>{t('kyc.selfieCapture.title')}</Text>\n <Text style={styles.cardLine}>{t('kyc.verificationProgress.steps.analyzing')}</Text>\n <Text style={styles.cardTitle}>{t('kyc.verificationProgress.title')}</Text>\n <Text style={styles.cardLine}>\n {isRetrying\n ? `${t('kyc.verificationProgress.status.processing')}...`\n : t('kyc.verificationProgress.status.pending')\n }\n </Text>\n </View>\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: { flex: 1, width: '100%', paddingHorizontal: 16, paddingVertical: 12 },\n title: { fontSize: 24, fontWeight: 'bold', color: '#111827', textAlign: 'center', marginTop: 12 },\n subtitle: { fontSize: 14, color: '#6B7280', textAlign: 'center', marginTop: 8 },\n timeline: { flexDirection: 'row', alignItems: 'center', justifyContent: 'space-between', marginTop: 24 },\n dot: { width: 38, height: 38, borderRadius: 34, justifyContent: 'center', alignItems: 'center' },\n stepCheckmark: { color: 'white', fontSize: 16, fontWeight: 'bold' },\n line: { flex: 1, height: 4, backgroundColor: '#E5E7EB' },\n done: { backgroundColor: '#10B981' },\n active: { backgroundColor: '#F59E0B' },\n pending: { backgroundColor: '#E5E7EB' },\n row: { flexDirection: 'row', justifyContent: 'space-between', marginTop: 8 },\n stepLabel: { fontSize: 14, color: '#111827', fontWeight: '600' },\n card: { backgroundColor: 'white', padding: 16, borderRadius: 16, marginTop: 24 },\n cardTitle: { fontSize: 16, color: '#6B7280', marginTop: 8 },\n cardLine: { fontSize: 18, color: '#111827', fontWeight: '600', marginTop: 2 },\n button: { paddingVertical: 14, borderRadius: 10, alignItems: 'center', marginTop: 14 },\n primary: { backgroundColor: '#2DBD60' },\n buttonText: { color: 'white', fontSize: 16, fontWeight: '600' },\n refText: { marginTop: 12, textAlign: 'center', color: '#6B7280' },\n issuesBox: { backgroundColor: '#FEF2F2', borderRadius: 16, padding: 16, marginTop: 20 },\n issuesTitle: { color: '#991B1B', fontWeight: '700', marginBottom: 8 },\n issueItem: { color: '#991B1B', marginTop: 4 },\n secondary: { backgroundColor: '#F3F4F6', borderWidth: 1, borderColor: '#D1D5DB' },\n secondaryText: { color: '#374151', fontSize: 16, fontWeight: '600' },\n});"]}
@@ -1 +1 @@
1
- {"version":3,"file":"region_mapping.d.ts","sourceRoot":"","sources":["../../../src/config/region_mapping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC,CAstB5F,CAAA"}
1
+ {"version":3,"file":"region_mapping.d.ts","sourceRoot":"","sources":["../../../src/config/region_mapping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC,CAutB5F,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"region_mapping.js","sourceRoot":"","sources":["../../../src/config/region_mapping.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,cAAc,GAAsE;IAC7F,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,eAAe;oBAC1B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,cAAc;oBACzB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,cAAc;oBACzB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,eAAe;oBAC1B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,eAAe;oBAC1B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,oBAAoB;oBAC/B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,eAAe,EAAE;YACb,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,6BAA6B;oBACxC,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,yBAAyB;oBACpC,YAAY,EAAE,IAAI;iBACrB;gBACD;oBACI,SAAS,EAAE,yBAAyB;oBACpC,YAAY,EAAE,IAAI;iBACrB;gBACD;oBACI,SAAS,EAAE,yBAAyB;oBACpC,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,yBAAyB;oBACpC,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,8BAA8B;oBACzC,YAAY,EAAE,IAAI;iBACrB;gBACD;oBACI,SAAS,EAAE,0BAA0B;oBACrC,YAAY,EAAE,IAAI;iBACrB;gBACD;oBACI,SAAS,EAAE,0BAA0B;oBACrC,YAAY,EAAE,IAAI;iBACrB;gBACD;oBACI,SAAS,EAAE,0BAA0B;oBACrC,YAAY,EAAE,IAAI;iBACrB;aACJ;SACJ;QACD,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,gBAAgB;oBAC3B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,gBAAgB;oBAC3B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,iBAAiB,EAAE;YACf,SAAS,EAAE;gBACP;oBACI,SAAS,EAAE,iBAAiB;oBAC5B,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,kBAAkB;oBAC7B,OAAO,EAAE,YAAY;iBACxB;aACJ;YACD,kBAAkB,EAAE;gBAChB;oBACI,SAAS,EAAE,0BAA0B;oBACrC,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,2BAA2B;oBACtC,YAAY,EAAE,IAAI;iBACrB;gBACD;oBACI,SAAS,EAAE,8BAA8B;oBACzC,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,UAAU,EAAE;gBACR;oBACI,SAAS,EAAE,kBAAkB;oBAC7B,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,mBAAmB;oBAC9B,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,eAAe,EAAE;gBACb;oBACI,SAAS,EAAE,uBAAuB;oBAClC,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,wBAAwB;oBACnC,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,2BAA2B,EAAE;gBACzB;oBACI,SAAS,EAAE,sBAAsB;oBACjC,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,uBAAuB;oBAClC,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,uBAAuB,EAAE;gBACrB;oBACI,SAAS,EAAE,mBAAmB;oBAC9B,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,oBAAoB;oBAC/B,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,aAAa,EAAE;gBACX;oBACI,SAAS,EAAE,qBAAqB;oBAChC,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,sBAAsB;oBACjC,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,SAAS,EAAE;gBACP;oBACI,SAAS,EAAE,iBAAiB;oBAC5B,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,kBAAkB;oBAC7B,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,SAAS,EAAE;gBACP;oBACI,SAAS,EAAE,iBAAiB;oBAC5B,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,kBAAkB;oBAC7B,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,sBAAsB,EAAE;gBACpB;oBACI,SAAS,EAAE,YAAY;oBACvB,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,aAAa;oBACxB,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,QAAQ,EAAE;gBACN;oBACI,SAAS,EAAE,gBAAgB;oBAC3B,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,iBAAiB;oBAC5B,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,cAAc,EAAE;gBACZ;oBACI,SAAS,EAAE,sBAAsB;oBACjC,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,uBAAuB;oBAClC,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,OAAO,EAAE;gBACL;oBACI,SAAS,EAAE,eAAe;oBAC1B,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,gBAAgB;oBAC3B,YAAY,EAAE,IAAI;iBACrB;aACJ;SACJ;QACD,uBAAuB,EAAE;YACrB,SAAS,EAAE;gBACP;oBACI,SAAS,EAAE,iBAAiB;oBAC5B,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,kBAAkB;oBAC7B,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,QAAQ,EAAE;gBACN;oBACI,SAAS,EAAE,mBAAmB;oBAC9B,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,oBAAoB;oBAC/B,YAAY,EAAE,IAAI;iBACrB;gBACD;oBACI,SAAS,EAAE,oBAAoB;oBAC/B,OAAO,EAAE,YAAY;iBACxB;aACJ;SACJ;QACD,eAAe,EAAE;YACb,SAAS,EAAE;gBACP;oBACI,SAAS,EAAE,oBAAoB;oBAC/B,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,qBAAqB;oBAChC,OAAO,EAAE,YAAY;iBACxB;aACJ;YACD,kBAAkB,EAAE;gBAChB;oBACI,SAAS,EAAE,6BAA6B;oBACxC,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,8BAA8B;oBACzC,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,eAAe,EAAE;gBACb;oBACI,SAAS,EAAE,0BAA0B;oBACrC,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,2BAA2B;oBACtC,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,aAAa,EAAE;gBACX;oBACI,SAAS,EAAE,wBAAwB;oBACnC,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,yBAAyB;oBACpC,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,SAAS,EAAE;gBACP;oBACI,SAAS,EAAE,oBAAoB;oBAC/B,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,qBAAqB;oBAChC,YAAY,EAAE,IAAI;iBACrB;aACJ;YACD,cAAc,EAAE;gBACZ;oBACI,SAAS,EAAE,yBAAyB;oBACpC,MAAM,EAAE,YAAY;iBACvB;gBACD;oBACI,SAAS,EAAE,0BAA0B;oBACrC,YAAY,EAAE,IAAI;iBACrB;aACJ;SACJ;QACD,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,cAAc;oBACzB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,cAAc;oBACzB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;QACD,qBAAqB,EAAE;YACnB,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,eAAe;oBAC1B,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,gBAAgB;oBAC3B,YAAY,EAAE,IAAI;iBACrB;gBACD;oBACI,SAAS,EAAE,eAAe;oBAC1B,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,gBAAgB;oBAC3B,YAAY,EAAE,IAAI;iBACrB;gBACD;oBACI,SAAS,EAAE,eAAe;oBAC1B,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,gBAAgB;oBAC3B,YAAY,EAAE,IAAI;iBACrB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,WAAW;oBACtB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,yBAAyB;oBACpC,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,gBAAgB;oBAC3B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,cAAc;oBACzB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,eAAe;oBAC1B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,eAAe;oBAC1B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,eAAe,EAAE;YACb,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,WAAW;oBACtB,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,WAAW;oBACtB,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,YAAY;oBACvB,YAAY,EAAE,IAAI;iBACrB;gBACD;oBACI,SAAS,EAAE,YAAY;oBACvB,YAAY,EAAE,IAAI;iBACrB;aACJ;SACJ;QACD,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,cAAc;oBACzB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,eAAe,EAAE;YACb,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,WAAW;oBACtB,YAAY,EAAE,IAAI;iBACrB;gBACD;oBACI,SAAS,EAAE,YAAY;oBACvB,YAAY,EAAE,IAAI;iBACrB;aACJ;SACJ;QACD,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,mBAAmB;oBAC9B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,mBAAmB;oBAC9B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,eAAe,EAAE;YACb,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,WAAW;oBACtB,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,YAAY;oBACvB,YAAY,EAAE,IAAI;iBACrB;gBACD;oBACI,SAAS,EAAE,iBAAiB;oBAC5B,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,iBAAiB;oBAC5B,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,kBAAkB;oBAC7B,YAAY,EAAE,IAAI;iBACrB;aACJ;SACJ;QACD,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,eAAe;oBAC1B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,YAAY;oBACvB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,mBAAmB;oBAC9B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,eAAe,EAAE;YACb,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,sBAAsB;oBACjC,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,uBAAuB;oBAClC,YAAY,EAAE,IAAI;iBACrB;aACJ;SACJ;QACD,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,eAAe;oBAC1B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;gBACD;oBACI,SAAS,EAAE,eAAe;oBAC1B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,eAAe;oBAC1B,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;IACD,IAAI,EAAE;QACF,UAAU,EAAE;YACR,MAAM,EAAE;gBACJ;oBACI,SAAS,EAAE,YAAY;oBACvB,OAAO,EAAE,KAAK;oBACd,UAAU,EAAE,KAAK;iBACpB;aACJ;SACJ;KACJ;CACJ,CAAA","sourcesContent":["import { ICountryMapping } from \"../types/KYC.types\";\r\n\r\nexport const countryMapping: Record<string, Record<string, Record<string, ICountryMapping[]>>> = {\r\n \"BE\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"belgium_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"BJ\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"benin_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"benin_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"BR\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"brazil_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"brazil_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"GB\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"britain_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"britain_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"BF\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"burkina_faso_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"CM\": {\r\n \"identity_card\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"cameroon_id_back_1_1_new.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_back_2_1.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_back_2_2.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_back_3_1.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD2\"\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_back_3_2.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_front_1_1_new.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_front_2_2.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_front_3_1.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_front_3_2.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"cameroon_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"cameroon_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"CA\": {\r\n \"drivers_licence\": {\r\n \"Alberta\": [\r\n {\r\n \"py_file\": \"alberta_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"alberta_front.py\",\r\n \"front\": \"2D_barcode\"\r\n }\r\n ],\r\n \"British Columbia\": [\r\n {\r\n \"py_file\": \"british_columbia_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"british_columbia_front.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"british_columbia_front_01.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Manitoba\": [\r\n {\r\n \"py_file\": \"manitoba_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"manitoba_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"New Brunswick\": [\r\n {\r\n \"py_file\": \"new_brunswick_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"new_brunswick_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Newfoundland and Labrador\": [\r\n {\r\n \"py_file\": \"newfoundland_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"newfoundland_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Northwest Territories\": [\r\n {\r\n \"py_file\": \"northwest_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"northwest_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Nova Scotia\": [\r\n {\r\n \"py_file\": \"nova_scotia_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"nova_scotia_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Nunavut\": [\r\n {\r\n \"py_file\": \"nunavut_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"nunavut_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Ontario\": [\r\n {\r\n \"py_file\": \"ontario_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"ontario_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Prince Edward Island\": [\r\n {\r\n \"py_file\": \"pe_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"pe_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Quebec\": [\r\n {\r\n \"py_file\": \"quebec_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"quebec_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Saskatchewan\": [\r\n {\r\n \"py_file\": \"saskatchewan_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"saskatchewan_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Yukon\": [\r\n {\r\n \"py_file\": \"yukon_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"yukon_front.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"health_insurance_card\": {\r\n \"Ontario\": [\r\n {\r\n \"py_file\": \"ontario_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"ontario_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Quebec\": [\r\n {\r\n \"py_file\": \"quebec_01_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"quebec_01_front.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"quebec_02_front.py\",\r\n \"front\": \"2D_barcode\"\r\n }\r\n ]\r\n },\r\n \"identity_card\": {\r\n \"Alberta\": [\r\n {\r\n \"py_file\": \"alberta_id_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"alberta_id_front.py\",\r\n \"front\": \"2D_barcode\"\r\n }\r\n ],\r\n \"British Columbia\": [\r\n {\r\n \"py_file\": \"british_columbia_id_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"british_columbia_id_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"New Brunswick\": [\r\n {\r\n \"py_file\": \"new_brunswick_id_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"new_brunswick_id_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Nova Scotia\": [\r\n {\r\n \"py_file\": \"nova_scotia_id_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"nova_scotia_id_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Ontario\": [\r\n {\r\n \"py_file\": \"ontario_id_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"ontario_id_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Saskatchewan\": [\r\n {\r\n \"py_file\": \"saskatchewan_id_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"saskatchewan_id_front.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"canada_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"canada_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n },\r\n \"permanent_residence\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"pr_01_back.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"pr_01_front.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"pr_02_back.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"pr_02_front.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"pr_03_back.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"pr_03_front.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n }\r\n },\r\n \"CF\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"caf_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"TD\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"tchad_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"CG\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"congo_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"GQ\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"ecuatorial_guinea_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"ET\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"ethiopia_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"FR\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"france_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"GA\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"gabon_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"gabon_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"DE\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"germany_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"germany_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"GH\": {\r\n \"identity_card\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"back_1.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"back_2.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"front_1.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"front_2.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"ghana_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"GN\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"guinee_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"HT\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"haiti_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"IT\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"italy_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"CI\": {\r\n \"identity_card\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"back_1.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"front_1.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"ivory_coast_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"ivory_coast_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"KE\": {\r\n \"identity_card\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"back_2.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"front_3.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"kenya_back_1.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"kenya_back_3.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"kenya_front_2.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"passport_1.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"ML\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"mali_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"NL\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"netherlands_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"NE\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"niger_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"NG\": {\r\n \"identity_card\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"nigeria_id_back_1.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"nigeria_id_front_1.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"nigeria_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"nigeria_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"SN\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"senegal_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"ES\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"spain_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"TG\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"togo_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n }\r\n}"]}
1
+ {"version":3,"file":"region_mapping.js","sourceRoot":"","sources":["../../../src/config/region_mapping.ts"],"names":[],"mappings":"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","sourcesContent":["import { ICountryMapping } from \"../types/KYC.types\";\r\n\r\nexport const countryMapping: Record<string, Record<string, Record<string, ICountryMapping[]>>> = \r\n{\r\n \"BE\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"belgium_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"BJ\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"benin_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"benin_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"BR\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"brazil_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"brazil_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"GB\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"britain_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"britain_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"BF\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"burkina_faso_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"CM\": {\r\n \"identity_card\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"cameroon_id_back_1_1_new.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_back_2_1.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_back_2_2.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_back_3_1.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD2\"\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_back_3_2.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_front_1_1_new.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_front_2_2.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_front_3_1.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"cameroon_id_front_3_2.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"cameroon_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"cameroon_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"CA\": {\r\n \"drivers_licence\": {\r\n \"Alberta\": [\r\n {\r\n \"py_file\": \"alberta_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"alberta_front.py\",\r\n \"front\": \"2D_barcode\"\r\n }\r\n ],\r\n \"British Columbia\": [\r\n {\r\n \"py_file\": \"british_columbia_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"british_columbia_front.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"british_columbia_front_01.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Manitoba\": [\r\n {\r\n \"py_file\": \"manitoba_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"manitoba_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"New Brunswick\": [\r\n {\r\n \"py_file\": \"new_brunswick_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"new_brunswick_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Newfoundland and Labrador\": [\r\n {\r\n \"py_file\": \"newfoundland_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"newfoundland_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Northwest Territories\": [\r\n {\r\n \"py_file\": \"northwest_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"northwest_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Nova Scotia\": [\r\n {\r\n \"py_file\": \"nova_scotia_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"nova_scotia_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Nunavut\": [\r\n {\r\n \"py_file\": \"nunavut_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"nunavut_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Ontario\": [\r\n {\r\n \"py_file\": \"ontario_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"ontario_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Prince Edward Island\": [\r\n {\r\n \"py_file\": \"pe_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"pe_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Quebec\": [\r\n {\r\n \"py_file\": \"quebec_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"quebec_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Saskatchewan\": [\r\n {\r\n \"py_file\": \"saskatchewan_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"saskatchewan_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Yukon\": [\r\n {\r\n \"py_file\": \"yukon_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"yukon_front.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"health_insurance_card\": {\r\n \"Ontario\": [\r\n {\r\n \"py_file\": \"ontario_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"ontario_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Quebec\": [\r\n {\r\n \"py_file\": \"quebec_01_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"quebec_01_front.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"quebec_02_front.py\",\r\n \"front\": \"2D_barcode\"\r\n }\r\n ]\r\n },\r\n \"identity_card\": {\r\n \"Alberta\": [\r\n {\r\n \"py_file\": \"alberta_id_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"alberta_id_front.py\",\r\n \"front\": \"2D_barcode\"\r\n }\r\n ],\r\n \"British Columbia\": [\r\n {\r\n \"py_file\": \"british_columbia_id_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"british_columbia_id_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"New Brunswick\": [\r\n {\r\n \"py_file\": \"new_brunswick_id_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"new_brunswick_id_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Nova Scotia\": [\r\n {\r\n \"py_file\": \"nova_scotia_id_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"nova_scotia_id_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Ontario\": [\r\n {\r\n \"py_file\": \"ontario_id_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"ontario_id_front.py\",\r\n \"keys_found\": null\r\n }\r\n ],\r\n \"Saskatchewan\": [\r\n {\r\n \"py_file\": \"saskatchewan_id_back.py\",\r\n \"back\": \"2D_barcode\"\r\n },\r\n {\r\n \"py_file\": \"saskatchewan_id_front.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"canada_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"canada_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n },\r\n \"permanent_residence\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"pr_01_back.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"pr_01_front.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"pr_02_back.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"pr_02_front.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"pr_03_back.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"pr_03_front.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n }\r\n },\r\n \"CF\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"caf_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"TD\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"tchad_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"CG\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"congo_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"GQ\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"ecuatorial_guinea_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"ET\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"ethiopia_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"FR\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"france_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"GA\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"gabon_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"gabon_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"DE\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"germany_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"germany_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"GH\": {\r\n \"identity_card\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"back_1.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"back_2.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"front_1.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"front_2.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"ghana_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"GN\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"guinee_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"HT\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"haiti_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"IT\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"italy_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"CI\": {\r\n \"identity_card\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"back_1.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"front_1.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"ivory_coast_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"ivory_coast_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"KE\": {\r\n \"identity_card\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"back_2.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"front_3.py\",\r\n \"keys_found\": null\r\n },\r\n {\r\n \"py_file\": \"kenya_back_1.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"kenya_back_3.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"kenya_front_2.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"passport_1.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"ML\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"mali_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"NL\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"netherlands_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"NE\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"niger_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"NG\": {\r\n \"identity_card\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"nigeria_id_back_1.py\",\r\n \"back\": \"MRZ\",\r\n \"mrz_type\": \"TD1\"\r\n },\r\n {\r\n \"py_file\": \"nigeria_id_front_1.py\",\r\n \"keys_found\": null\r\n }\r\n ]\r\n },\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"nigeria_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n },\r\n {\r\n \"py_file\": \"nigeria_02.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"SN\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"senegal_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"ES\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"spain_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n },\r\n \"TG\": {\r\n \"passport\": {\r\n \"root\": [\r\n {\r\n \"py_file\": \"togo_01.py\",\r\n \"front\": \"MRZ\",\r\n \"mrz_type\": \"TD3\"\r\n }\r\n ]\r\n }\r\n }\r\n}"]}
@@ -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;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAIvD,UAAU,WAAW;IACjB,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,UAAU,uBAAuB;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,wBAAsB,iBAAiB,CACnC,MAAM,EAAE;IACJ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,EAAE;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC5D,oBAAoB,EAAE,MAAM,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC9B,EACD,GAAG,GAAE,cAA6B;;;;;;;;;;;;;;;;;;;;;;;;;aApBzB,OAAO;cACN,OAAO;aACR,GAAG,EAAE;eACH,WAAW,EAAE,GAAG,GAAG;oBACd,MAAM;YACd,GAAG;GAwJd;AAED,wBAAsB,gBAAgB,CAClC,MAAM,EAAE;IACJ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,EAAE;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC5D,oBAAoB,EAAE,MAAM,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,uBAAuB,CAAC;IAC3C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC7B,EACD,GAAG,GAAE,cAA6B,gBAsNrC;AAED,wBAAsB,iBAAiB,CACnC,MAAM,EAAE;IACJ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC9B,EACD,GAAG,GAAE,cAA6B,gBAuErC"}
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;AAIvD,UAAU,WAAW;IACjB,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,UAAU,uBAAuB;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,wBAAsB,iBAAiB,CACnC,MAAM,EAAE;IACJ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,EAAE;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC5D,oBAAoB,EAAE,MAAM,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC9B,EACD,GAAG,GAAE,cAA6B;;;;;;;;;;;;;;;;;;;;;;;;;aApBzB,OAAO;cACN,OAAO;aACR,GAAG,EAAE;eACH,WAAW,EAAE,GAAG,GAAG;oBACd,MAAM;YACd,GAAG;GAwJd;AAED,wBAAsB,gBAAgB,CAClC,MAAM,EAAE;IACJ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,EAAE;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC5D,oBAAoB,EAAE,MAAM,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,uBAAuB,CAAC;IAC3C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC7B,EACD,GAAG,GAAE,cAA6B,gBA+NrC;AAED,wBAAsB,iBAAiB,CACnC,MAAM,EAAE;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC/B,EACD,GAAG,GAAE,cAA6B,gBA2ErC"}
@@ -217,26 +217,37 @@ export async function backVerification(result, env = 'PRODUCTION') {
217
217
  throw new Error(`Le document ne correspond pas au pays sélectionné (${result.code}).`);
218
218
  }
219
219
  }
220
- // 🚨 STRICT FRONT VS BACK TEMPLATE VALIDATION 🚨
220
+ // 🚨 FRONT VS BACK TEMPLATE VALIDATION 🚨
221
221
  if (result.frontTemplatePath && activeTemplatePath) {
222
- const frontPy = result.frontTemplatePath.split("/").pop()?.replace(/\.(jpg|png)$/i, ".py");
223
- const backPy = activeTemplatePath.split("/").pop()?.replace(/\.(jpg|png)$/i, ".py");
224
- if (frontPy && backPy) {
225
- logger.log(`Validating Front (${frontPy}) vs Back (${backPy}) for region ${result.code}`);
226
- const matchValidation = await kycService.validateBackTemplate({
227
- region: result.code,
228
- docType: result.selectedDocumentType,
229
- frontTemplateName: frontPy,
230
- backTemplateName: backPy,
231
- subRegion: result.issuingSubdivision || "",
232
- token: token
233
- }, env);
234
- // If the API succeeds but explicitly returns false, stop immediately.
235
- if (!matchValidation || matchValidation.is_match === false) {
236
- logger.log(`Front/Back Mismatch: ${matchValidation?.status_message}`);
237
- throw new Error(`Le verso ne correspond pas au recto fourni. Vous avez scanné un document différent.`);
222
+ try {
223
+ const frontPy = result.frontTemplatePath.split("/").pop()?.replace(/\.(jpg|png)$/i, ".py");
224
+ const backPy = activeTemplatePath.split("/").pop()?.replace(/\.(jpg|png)$/i, ".py");
225
+ if (frontPy && backPy) {
226
+ logger.log(`Validating Front (${frontPy}) vs Back (${backPy}) for region ${result.code}`);
227
+ // 🚨 THE FIX: Only populate subRegion for Canadian 'hic' documents. Empty for all others.
228
+ const isCanadianHic = result.code === 'CA' && result.selectedDocumentType === 'hic';
229
+ const safeSubRegion = isCanadianHic ? (result.issuingSubdivision || "") : "";
230
+ const matchValidation = await kycService.validateBackTemplate({
231
+ region: result.code,
232
+ docType: result.selectedDocumentType,
233
+ frontTemplateName: frontPy,
234
+ backTemplateName: backPy,
235
+ subRegion: safeSubRegion,
236
+ token: token
237
+ }, env);
238
+ // If the API succeeds but explicitly returns false, stop immediately.
239
+ if (!matchValidation || matchValidation.is_match === false) {
240
+ logger.log(`Front/Back Mismatch: ${matchValidation?.status_message}`);
241
+ throw new Error(`Le verso ne correspond pas au recto fourni. Vous avez scanné un document différent.`);
242
+ }
238
243
  }
239
244
  }
245
+ catch (err) {
246
+ // Throw hard errors (like the mismatch). Ignore harmless 400s if a template mapping doesn't exist yet
247
+ if (err?.message?.includes('ne correspond pas'))
248
+ throw err;
249
+ logger.log("Template matching validation skipped/failed internally:", err?.message);
250
+ }
240
251
  }
241
252
  logger.log("Framing, Country, and Match verified successfully. Proceeding to Data Extraction.");
242
253
  let extractionResult = {};
@@ -329,12 +340,15 @@ export async function checkTemplateType(result, env = 'PRODUCTION') {
329
340
  };
330
341
  }
331
342
  const token = await authentification();
343
+ const isCanada = result.docRegion?.toUpperCase() === 'CA';
332
344
  const templateType = await kycService.checkTemplateType({
333
345
  fileUri: result.path || '',
334
346
  docType: result?.docType,
335
347
  docRegion: result?.docRegion || "",
336
348
  postfix: result?.postfix,
337
- token: token
349
+ token: token,
350
+ // 🚨 Pass the subdivision strictly if the region is Canada
351
+ issuingSubdivision: isCanada ? result.issuingSubdivision : undefined
338
352
  }, env);
339
353
  if (templateType.success === false || templateType.Error) {
340
354
  logger.log("Backend returned an error:", templateType.Error);