datakeen-session-react 1.1.195-dev.8 → 1.1.195-dev.9

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 (878) hide show
  1. package/README.md +1 -17
  2. package/dist/cjs/_virtual/_commonjsHelpers.js +0 -1
  3. package/dist/cjs/_virtual/heic2any.js +0 -1
  4. package/dist/cjs/_virtual/heic2any2.js +0 -1
  5. package/dist/cjs/assets/Face Scan Square.svg.js +0 -1
  6. package/dist/cjs/assets/Lightbulb.svg.js +0 -1
  7. package/dist/cjs/assets/Monitor Camera.svg.js +0 -1
  8. package/dist/cjs/assets/User Hands.svg.js +0 -1
  9. package/dist/cjs/assets/before-document.png.js +0 -1
  10. package/dist/cjs/assets/before-passport.png.js +0 -1
  11. package/dist/cjs/assets/before-photo.png.js +0 -1
  12. package/dist/cjs/assets/before-verso.png.js +0 -1
  13. package/dist/cjs/assets/check.svg.js +0 -1
  14. package/dist/cjs/assets/icons/shield_magic_link.svg.js +0 -1
  15. package/dist/cjs/assets/selfietake.svg.js +0 -1
  16. package/dist/cjs/components/DatakeenSession.js +0 -1
  17. package/dist/cjs/components/document-collection/DocumentCollection.js +0 -1
  18. package/dist/cjs/components/document-collection/DocumentCollectionIntroduction.js +0 -1
  19. package/dist/cjs/components/document-collection/DocumentCollectionMethodSelection.js +0 -1
  20. package/dist/cjs/components/document-collection/DocumentCollectionSelection.js +0 -1
  21. package/dist/cjs/components/document-collection/DocumentCollectionUpload.js +0 -1
  22. package/dist/cjs/components/document-collection/DocumentError.js +0 -1
  23. package/dist/cjs/components/document-collection/DocumentProcessing.js +0 -1
  24. package/dist/cjs/components/document-collection/DocumentSuccess.js +0 -1
  25. package/dist/cjs/components/document-video/DocumentVideoCapture.js +0 -1
  26. package/dist/cjs/components/document-video/DocumentVideoConfirmation.js +0 -1
  27. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoFlow.js +0 -1
  28. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoInstructions.js +0 -1
  29. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoProcessing.js +0 -1
  30. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoRecorder.js +0 -1
  31. package/dist/cjs/components/icons/ElectronicIcon.js +0 -1
  32. package/dist/cjs/components/icons/PoweredByIcon.js +0 -1
  33. package/dist/cjs/components/icons/PreIntroIcon.js +0 -1
  34. package/dist/cjs/components/icons/StartIcon.js +0 -1
  35. package/dist/cjs/components/id-check/BeforePhoto.js +0 -1
  36. package/dist/cjs/components/id-check/BeforeVersoPhoto.js +0 -1
  37. package/dist/cjs/components/id-check/CameraError.js +0 -1
  38. package/dist/cjs/components/id-check/CameraMask.js +0 -1
  39. package/dist/cjs/components/id-check/OrientationToggle.js +0 -1
  40. package/dist/cjs/components/id-check/Photo.js +0 -1
  41. package/dist/cjs/components/id-check/PhotoConfirmation.js +0 -1
  42. package/dist/cjs/components/id-check/PhotoPreview.js +0 -1
  43. package/dist/cjs/components/jdi/JDDWorkInProgress.js +0 -1
  44. package/dist/cjs/components/jdi/JDICountrySelection.js +0 -1
  45. package/dist/cjs/components/jdi/JDIDocumentSelection.js +0 -1
  46. package/dist/cjs/components/jdi/JDIDocumentUpload.js +0 -1
  47. package/dist/cjs/components/jdi/JDIError.js +0 -1
  48. package/dist/cjs/components/jdi/JDIPreIntroduction.js +0 -1
  49. package/dist/cjs/components/jdi/JDIProcessing.js +0 -1
  50. package/dist/cjs/components/jdi/JDISuccess.js +0 -1
  51. package/dist/cjs/components/legal-consent/LegalConsentNode.js +0 -1
  52. package/dist/cjs/components/nfc-scan/BiometricSymbol.js +0 -1
  53. package/dist/cjs/components/nfc-scan/NfcChipGate.js +0 -1
  54. package/dist/cjs/components/nfc-scan/NfcFallbackSurvey.js +0 -1
  55. package/dist/cjs/components/nfc-scan/NfcOnboardingNotice.js +0 -1
  56. package/dist/cjs/components/nfc-scan/NfcScanNode.js +0 -1
  57. package/dist/cjs/components/nfc-scan/NfcSuccessAnimation.js +0 -1
  58. package/dist/cjs/components/nfc-scan/PuceCniSymbol.js +0 -1
  59. package/dist/cjs/components/selfie/SelfieConfirmation.js +0 -1
  60. package/dist/cjs/components/selfie/Video.css.js +0 -1
  61. package/dist/cjs/components/selfie/Video.js +0 -1
  62. package/dist/cjs/components/selfie/VideoFixes.css.js +0 -1
  63. package/dist/cjs/components/selfie/VideoResetStyles.js +0 -1
  64. package/dist/cjs/components/selfie/hooks/useLiveFrameCapture.js +0 -1
  65. package/dist/cjs/components/selfie/hooks/useVideoRecorderStyles.js +0 -1
  66. package/dist/cjs/components/selfie/selfie-flow/InstructionsSelfie.js +0 -1
  67. package/dist/cjs/components/selfie/selfie-flow/SelfieFlow.js +0 -1
  68. package/dist/cjs/components/selfie/selfie-flow/SelfiePreIntroduction.js +0 -1
  69. package/dist/cjs/components/selfie/selfie-flow/SelfieProcessing.js +0 -1
  70. package/dist/cjs/components/selfie/selfie-flow/SelfieRecorder.js +0 -1
  71. package/dist/cjs/components/selfie/utils/selfieCaptureUtils.js +0 -1
  72. package/dist/cjs/components/selfie/utils/unisseyStrings.js +0 -1
  73. package/dist/cjs/components/selfie/utils/videoElementStyles.js +0 -1
  74. package/dist/cjs/components/session/DocumentCheck.js +0 -1
  75. package/dist/cjs/components/session/EndFlow.js +0 -1
  76. package/dist/cjs/components/session/MobileRedirect.js +0 -1
  77. package/dist/cjs/components/session/PdfGeneration.js +0 -1
  78. package/dist/cjs/components/session/Selfie.js +0 -1
  79. package/dist/cjs/components/session/SessionContent.js +0 -1
  80. package/dist/cjs/components/session/SessionExpired.js +0 -1
  81. package/dist/cjs/components/session/StartSession.js +0 -1
  82. package/dist/cjs/components/session/UserInputForm/AddressFields.js +0 -1
  83. package/dist/cjs/components/session/UserInputForm/ContactFields.js +0 -1
  84. package/dist/cjs/components/session/UserInputForm/CustomFormFields.js +0 -1
  85. package/dist/cjs/components/session/UserInputForm/DatePickerField.js +0 -1
  86. package/dist/cjs/components/session/UserInputForm/IdentityFields.js +0 -1
  87. package/dist/cjs/components/session/UserInputForm/LegalEntityFields.js +0 -1
  88. package/dist/cjs/components/session/UserInputForm/LegalRepFields.js +0 -1
  89. package/dist/cjs/components/session/UserInputForm/NationalityField.js +0 -1
  90. package/dist/cjs/components/session/UserInputForm.js +0 -1
  91. package/dist/cjs/components/session/VideoWorkInProgress.js +0 -1
  92. package/dist/cjs/components/session/controleJdiPolicy.js +0 -1
  93. package/dist/cjs/components/session/endScreenIcons.js +0 -1
  94. package/dist/cjs/components/signature-electronic/DocusealSignature.js +0 -1
  95. package/dist/cjs/components/signature-electronic/SignatureElectronic.js +0 -1
  96. package/dist/cjs/components/signature-electronic/SignatureElectronicIntroduction.js +0 -1
  97. package/dist/cjs/components/signature-electronic/SignedDocumentPreview.js +0 -1
  98. package/dist/cjs/components/start-flow/Start.js +0 -1
  99. package/dist/cjs/components/states/ErrorState.js +0 -1
  100. package/dist/cjs/components/states/LoadingState.js +0 -1
  101. package/dist/cjs/components/states/NoSessionIdState.js +0 -1
  102. package/dist/cjs/components/template/ComplementaryMandateNodeHandler.js +0 -1
  103. package/dist/cjs/components/template/ConditionNodeHandler.js +0 -1
  104. package/dist/cjs/components/template/ExternalVerificationNodeHandler.js +0 -1
  105. package/dist/cjs/components/template/TemplateNodeRenderer.js +0 -1
  106. package/dist/cjs/components/template/conditionNodePolicy.js +0 -1
  107. package/dist/cjs/components/ui/Body.js +0 -1
  108. package/dist/cjs/components/ui/Button.js +0 -1
  109. package/dist/cjs/components/ui/ButtonDesktop.js +0 -1
  110. package/dist/cjs/components/ui/Card.js +0 -1
  111. package/dist/cjs/components/ui/MobilePageLayout.js +0 -1
  112. package/dist/cjs/components/ui/PDFPreview.js +0 -1
  113. package/dist/cjs/components/ui/PageActions.js +0 -1
  114. package/dist/cjs/components/ui/Paper.js +0 -1
  115. package/dist/cjs/components/ui/PoweredBy.js +0 -1
  116. package/dist/cjs/components/ui/QRCodeDisplay.js +0 -1
  117. package/dist/cjs/components/ui/SelectComponent.js +0 -1
  118. package/dist/cjs/components/ui/Subtitle.js +0 -1
  119. package/dist/cjs/components/ui/Title.js +0 -1
  120. package/dist/cjs/config/env.js +0 -1
  121. package/dist/cjs/constants/userInputForm.js +0 -1
  122. package/dist/cjs/context/ConfigContext.js +0 -1
  123. package/dist/cjs/context/DocumentContext.js +0 -1
  124. package/dist/cjs/context/SessionContext.js +0 -1
  125. package/dist/cjs/hooks/useClientInfo.js +0 -1
  126. package/dist/cjs/hooks/useCountryOptions.js +0 -1
  127. package/dist/cjs/hooks/useI18n.js +0 -1
  128. package/dist/cjs/hooks/useIsMobile.js +0 -1
  129. package/dist/cjs/hooks/useNfcSseStatus.js +0 -1
  130. package/dist/cjs/hooks/useRouteCSS.js +0 -1
  131. package/dist/cjs/hooks/useSession.js +0 -1
  132. package/dist/cjs/hooks/useSessionData.js +0 -1
  133. package/dist/cjs/hooks/useStepCSS.js +0 -1
  134. package/dist/cjs/hooks/useStepNavigation.js +0 -1
  135. package/dist/cjs/hooks/useTemplateLoader.js +0 -1
  136. package/dist/cjs/hooks/useUserInputForm.js +0 -1
  137. package/dist/cjs/i18n/country/country.en.json.js +0 -1
  138. package/dist/cjs/i18n/country/country.fr.json.js +0 -1
  139. package/dist/cjs/i18n/country/country.iso2.en.json.js +0 -1
  140. package/dist/cjs/i18n/country/country.iso2.fr.json.js +0 -1
  141. package/dist/cjs/i18n/documents/documents.en.json.js +0 -1
  142. package/dist/cjs/i18n/documents/documents.fr.json.js +0 -1
  143. package/dist/cjs/i18n/en.json.js +0 -1
  144. package/dist/cjs/i18n/es.json.js +0 -1
  145. package/dist/cjs/i18n/fr.json.js +0 -1
  146. package/dist/cjs/i18n/index.js +0 -1
  147. package/dist/cjs/index.css.js +0 -1
  148. package/dist/cjs/index.js +0 -1
  149. package/dist/cjs/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +0 -1
  150. package/dist/cjs/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +0 -1
  151. package/dist/cjs/node_modules/date-fns/locale/_lib/buildMatchFn.js +0 -1
  152. package/dist/cjs/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +0 -1
  153. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatDistance.js +0 -1
  154. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatLong.js +0 -1
  155. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatRelative.js +0 -1
  156. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/localize.js +0 -1
  157. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/match.js +0 -1
  158. package/dist/cjs/node_modules/date-fns/locale/en-US.js +0 -1
  159. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatDistance.js +0 -1
  160. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatLong.js +0 -1
  161. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatRelative.js +0 -1
  162. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/localize.js +0 -1
  163. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/match.js +0 -1
  164. package/dist/cjs/node_modules/date-fns/locale/fr.js +0 -1
  165. package/dist/cjs/node_modules/heic2any/dist/heic2any.js +0 -1
  166. package/dist/cjs/node_modules/pdfjs-dist/legacy/build/pdf.js +0 -1
  167. package/dist/cjs/node_modules/pdfjs-dist/legacy/build/pdf.worker.js +0 -1
  168. package/dist/cjs/node_modules/style-inject/dist/style-inject.es.js +0 -1
  169. package/dist/cjs/node_modules/tslib/tslib.es6.js +0 -1
  170. package/dist/cjs/providers/I18nProvider.js +0 -1
  171. package/dist/cjs/services/analysis.js +0 -1
  172. package/dist/cjs/services/api.js +0 -1
  173. package/dist/cjs/services/auditTrailService.js +0 -1
  174. package/dist/cjs/services/cameraService.js +0 -1
  175. package/dist/cjs/services/documentEdgeDetectionService.js +0 -1
  176. package/dist/cjs/services/documentTemplate.js +0 -1
  177. package/dist/cjs/services/iadService.js +0 -1
  178. package/dist/cjs/services/integrationService.js +0 -1
  179. package/dist/cjs/services/pollingService.js +0 -1
  180. package/dist/cjs/services/professionalImageQuality.js +0 -1
  181. package/dist/cjs/services/retryService.js +0 -1
  182. package/dist/cjs/services/sessionCredentials.js +0 -1
  183. package/dist/cjs/services/sessionMemoryStore.js +0 -1
  184. package/dist/cjs/services/sessionService.js +0 -1
  185. package/dist/cjs/services/utils.js +0 -1
  186. package/dist/cjs/types/session.js +0 -1
  187. package/dist/cjs/utils/analysisErrors.js +0 -1
  188. package/dist/cjs/utils/apiAnalysis.js +0 -1
  189. package/dist/cjs/utils/conditionEvaluator.js +0 -1
  190. package/dist/cjs/utils/countryFlags.js +0 -1
  191. package/dist/cjs/utils/cssLoader.js +0 -1
  192. package/dist/cjs/utils/customFieldIds.js +0 -1
  193. package/dist/cjs/utils/customFieldValidation.js +0 -1
  194. package/dist/cjs/utils/documentLabels.js +0 -1
  195. package/dist/cjs/utils/europeanCountries.js +0 -1
  196. package/dist/cjs/utils/fileConverter.js +0 -1
  197. package/dist/cjs/utils/imageConverter.js +0 -1
  198. package/dist/cjs/utils/imageProcessing.js +0 -1
  199. package/dist/cjs/utils/isMobileDevice.js +0 -1
  200. package/dist/cjs/utils/isoCountryCodes.js +0 -1
  201. package/dist/cjs/utils/jdiCodes.js +0 -1
  202. package/dist/cjs/utils/labelToKey.js +0 -1
  203. package/dist/cjs/utils/listFieldUtils.js +0 -1
  204. package/dist/cjs/utils/mimeTypes.js +0 -1
  205. package/dist/cjs/utils/navigation.js +0 -1
  206. package/dist/cjs/utils/renderInlineMarkdown.js +0 -1
  207. package/dist/cjs/utils/sessionStatus.js +0 -1
  208. package/dist/cjs/utils/userInputForm.js +0 -1
  209. package/dist/cjs/utils/utils.js +0 -1
  210. package/dist/cjs/utils/validationUtils.js +0 -1
  211. package/dist/esm/_virtual/_commonjsHelpers.js +0 -1
  212. package/dist/esm/_virtual/heic2any.js +0 -1
  213. package/dist/esm/_virtual/heic2any2.js +0 -1
  214. package/dist/esm/assets/Face Scan Square.svg.js +0 -1
  215. package/dist/esm/assets/Lightbulb.svg.js +0 -1
  216. package/dist/esm/assets/Monitor Camera.svg.js +0 -1
  217. package/dist/esm/assets/User Hands.svg.js +0 -1
  218. package/dist/esm/assets/before-document.png.js +0 -1
  219. package/dist/esm/assets/before-passport.png.js +0 -1
  220. package/dist/esm/assets/before-photo.png.js +0 -1
  221. package/dist/esm/assets/before-verso.png.js +0 -1
  222. package/dist/esm/assets/check.svg.js +0 -1
  223. package/dist/esm/assets/icons/shield_magic_link.svg.js +0 -1
  224. package/dist/esm/assets/selfietake.svg.js +0 -1
  225. package/dist/esm/components/DatakeenSession.js +0 -1
  226. package/dist/esm/components/document-collection/DocumentCollection.js +0 -1
  227. package/dist/esm/components/document-collection/DocumentCollectionIntroduction.js +0 -1
  228. package/dist/esm/components/document-collection/DocumentCollectionMethodSelection.js +0 -1
  229. package/dist/esm/components/document-collection/DocumentCollectionSelection.js +0 -1
  230. package/dist/esm/components/document-collection/DocumentCollectionUpload.js +0 -1
  231. package/dist/esm/components/document-collection/DocumentError.js +0 -1
  232. package/dist/esm/components/document-collection/DocumentProcessing.js +0 -1
  233. package/dist/esm/components/document-collection/DocumentSuccess.js +0 -1
  234. package/dist/esm/components/document-video/DocumentVideoCapture.js +0 -1
  235. package/dist/esm/components/document-video/DocumentVideoConfirmation.js +0 -1
  236. package/dist/esm/components/document-video/document-video-flow/DocumentVideoFlow.js +0 -1
  237. package/dist/esm/components/document-video/document-video-flow/DocumentVideoInstructions.js +0 -1
  238. package/dist/esm/components/document-video/document-video-flow/DocumentVideoProcessing.js +0 -1
  239. package/dist/esm/components/document-video/document-video-flow/DocumentVideoRecorder.js +0 -1
  240. package/dist/esm/components/icons/ElectronicIcon.js +0 -1
  241. package/dist/esm/components/icons/PoweredByIcon.js +0 -1
  242. package/dist/esm/components/icons/PreIntroIcon.js +0 -1
  243. package/dist/esm/components/icons/StartIcon.js +0 -1
  244. package/dist/esm/components/id-check/BeforePhoto.js +0 -1
  245. package/dist/esm/components/id-check/BeforeVersoPhoto.js +0 -1
  246. package/dist/esm/components/id-check/CameraError.js +0 -1
  247. package/dist/esm/components/id-check/CameraMask.js +0 -1
  248. package/dist/esm/components/id-check/OrientationToggle.js +0 -1
  249. package/dist/esm/components/id-check/Photo.js +0 -1
  250. package/dist/esm/components/id-check/PhotoConfirmation.js +0 -1
  251. package/dist/esm/components/id-check/PhotoPreview.js +0 -1
  252. package/dist/esm/components/jdi/JDDWorkInProgress.js +0 -1
  253. package/dist/esm/components/jdi/JDICountrySelection.js +0 -1
  254. package/dist/esm/components/jdi/JDIDocumentSelection.js +0 -1
  255. package/dist/esm/components/jdi/JDIDocumentUpload.js +0 -1
  256. package/dist/esm/components/jdi/JDIError.js +0 -1
  257. package/dist/esm/components/jdi/JDIPreIntroduction.js +0 -1
  258. package/dist/esm/components/jdi/JDIProcessing.js +0 -1
  259. package/dist/esm/components/jdi/JDISuccess.js +0 -1
  260. package/dist/esm/components/legal-consent/LegalConsentNode.js +0 -1
  261. package/dist/esm/components/nfc-scan/BiometricSymbol.js +0 -1
  262. package/dist/esm/components/nfc-scan/NfcChipGate.js +0 -1
  263. package/dist/esm/components/nfc-scan/NfcFallbackSurvey.js +0 -1
  264. package/dist/esm/components/nfc-scan/NfcOnboardingNotice.js +0 -1
  265. package/dist/esm/components/nfc-scan/NfcScanNode.js +0 -1
  266. package/dist/esm/components/nfc-scan/NfcSuccessAnimation.js +0 -1
  267. package/dist/esm/components/nfc-scan/PuceCniSymbol.js +0 -1
  268. package/dist/esm/components/selfie/SelfieConfirmation.js +0 -1
  269. package/dist/esm/components/selfie/Video.css.js +0 -1
  270. package/dist/esm/components/selfie/Video.js +0 -1
  271. package/dist/esm/components/selfie/VideoFixes.css.js +0 -1
  272. package/dist/esm/components/selfie/VideoResetStyles.js +0 -1
  273. package/dist/esm/components/selfie/hooks/useLiveFrameCapture.js +0 -1
  274. package/dist/esm/components/selfie/hooks/useVideoRecorderStyles.js +0 -1
  275. package/dist/esm/components/selfie/selfie-flow/InstructionsSelfie.js +0 -1
  276. package/dist/esm/components/selfie/selfie-flow/SelfieFlow.js +0 -1
  277. package/dist/esm/components/selfie/selfie-flow/SelfiePreIntroduction.js +0 -1
  278. package/dist/esm/components/selfie/selfie-flow/SelfieProcessing.js +0 -1
  279. package/dist/esm/components/selfie/selfie-flow/SelfieRecorder.js +0 -1
  280. package/dist/esm/components/selfie/utils/selfieCaptureUtils.js +0 -1
  281. package/dist/esm/components/selfie/utils/unisseyStrings.js +0 -1
  282. package/dist/esm/components/selfie/utils/videoElementStyles.js +0 -1
  283. package/dist/esm/components/session/DocumentCheck.js +0 -1
  284. package/dist/esm/components/session/EndFlow.js +0 -1
  285. package/dist/esm/components/session/MobileRedirect.js +0 -1
  286. package/dist/esm/components/session/PdfGeneration.js +0 -1
  287. package/dist/esm/components/session/Selfie.js +0 -1
  288. package/dist/esm/components/session/SessionContent.js +0 -1
  289. package/dist/esm/components/session/SessionExpired.js +0 -1
  290. package/dist/esm/components/session/StartSession.js +0 -1
  291. package/dist/esm/components/session/UserInputForm/AddressFields.js +0 -1
  292. package/dist/esm/components/session/UserInputForm/ContactFields.js +0 -1
  293. package/dist/esm/components/session/UserInputForm/CustomFormFields.js +0 -1
  294. package/dist/esm/components/session/UserInputForm/DatePickerField.js +0 -1
  295. package/dist/esm/components/session/UserInputForm/IdentityFields.js +0 -1
  296. package/dist/esm/components/session/UserInputForm/LegalEntityFields.js +0 -1
  297. package/dist/esm/components/session/UserInputForm/LegalRepFields.js +0 -1
  298. package/dist/esm/components/session/UserInputForm/NationalityField.js +0 -1
  299. package/dist/esm/components/session/UserInputForm.js +0 -1
  300. package/dist/esm/components/session/VideoWorkInProgress.js +0 -1
  301. package/dist/esm/components/session/controleJdiPolicy.js +0 -1
  302. package/dist/esm/components/session/endScreenIcons.js +0 -1
  303. package/dist/esm/components/signature-electronic/DocusealSignature.js +0 -1
  304. package/dist/esm/components/signature-electronic/SignatureElectronic.js +0 -1
  305. package/dist/esm/components/signature-electronic/SignatureElectronicIntroduction.js +0 -1
  306. package/dist/esm/components/signature-electronic/SignedDocumentPreview.js +0 -1
  307. package/dist/esm/components/start-flow/Start.js +0 -1
  308. package/dist/esm/components/states/ErrorState.js +0 -1
  309. package/dist/esm/components/states/LoadingState.js +0 -1
  310. package/dist/esm/components/states/NoSessionIdState.js +0 -1
  311. package/dist/esm/components/template/ComplementaryMandateNodeHandler.js +0 -1
  312. package/dist/esm/components/template/ConditionNodeHandler.js +0 -1
  313. package/dist/esm/components/template/ExternalVerificationNodeHandler.js +0 -1
  314. package/dist/esm/components/template/TemplateNodeRenderer.js +0 -1
  315. package/dist/esm/components/template/conditionNodePolicy.js +0 -1
  316. package/dist/esm/components/ui/Body.js +0 -1
  317. package/dist/esm/components/ui/Button.js +0 -1
  318. package/dist/esm/components/ui/ButtonDesktop.js +0 -1
  319. package/dist/esm/components/ui/Card.js +0 -1
  320. package/dist/esm/components/ui/MobilePageLayout.js +0 -1
  321. package/dist/esm/components/ui/PDFPreview.js +0 -1
  322. package/dist/esm/components/ui/PageActions.js +0 -1
  323. package/dist/esm/components/ui/Paper.js +0 -1
  324. package/dist/esm/components/ui/PoweredBy.js +0 -1
  325. package/dist/esm/components/ui/QRCodeDisplay.js +0 -1
  326. package/dist/esm/components/ui/SelectComponent.js +0 -1
  327. package/dist/esm/components/ui/Subtitle.js +0 -1
  328. package/dist/esm/components/ui/Title.js +0 -1
  329. package/dist/esm/config/env.js +0 -1
  330. package/dist/esm/constants/userInputForm.js +0 -1
  331. package/dist/esm/context/ConfigContext.js +0 -1
  332. package/dist/esm/context/DocumentContext.js +0 -1
  333. package/dist/esm/context/SessionContext.js +0 -1
  334. package/dist/esm/hooks/useClientInfo.js +0 -1
  335. package/dist/esm/hooks/useCountryOptions.js +0 -1
  336. package/dist/esm/hooks/useI18n.js +0 -1
  337. package/dist/esm/hooks/useIsMobile.js +0 -1
  338. package/dist/esm/hooks/useNfcSseStatus.js +0 -1
  339. package/dist/esm/hooks/useRouteCSS.js +0 -1
  340. package/dist/esm/hooks/useSession.js +0 -1
  341. package/dist/esm/hooks/useSessionData.js +0 -1
  342. package/dist/esm/hooks/useStepCSS.js +0 -1
  343. package/dist/esm/hooks/useStepNavigation.js +0 -1
  344. package/dist/esm/hooks/useTemplateLoader.js +0 -1
  345. package/dist/esm/hooks/useUserInputForm.js +0 -1
  346. package/dist/esm/i18n/country/country.en.json.js +0 -1
  347. package/dist/esm/i18n/country/country.fr.json.js +0 -1
  348. package/dist/esm/i18n/country/country.iso2.en.json.js +0 -1
  349. package/dist/esm/i18n/country/country.iso2.fr.json.js +0 -1
  350. package/dist/esm/i18n/documents/documents.en.json.js +0 -1
  351. package/dist/esm/i18n/documents/documents.fr.json.js +0 -1
  352. package/dist/esm/i18n/en.json.js +0 -1
  353. package/dist/esm/i18n/es.json.js +0 -1
  354. package/dist/esm/i18n/fr.json.js +0 -1
  355. package/dist/esm/i18n/index.js +0 -1
  356. package/dist/esm/index.css.js +0 -1
  357. package/dist/esm/index.js +0 -1
  358. package/dist/esm/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +0 -1
  359. package/dist/esm/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +0 -1
  360. package/dist/esm/node_modules/date-fns/locale/_lib/buildMatchFn.js +0 -1
  361. package/dist/esm/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +0 -1
  362. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatDistance.js +0 -1
  363. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatLong.js +0 -1
  364. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatRelative.js +0 -1
  365. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/localize.js +0 -1
  366. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/match.js +0 -1
  367. package/dist/esm/node_modules/date-fns/locale/en-US.js +0 -1
  368. package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatDistance.js +0 -1
  369. package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatLong.js +0 -1
  370. package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatRelative.js +0 -1
  371. package/dist/esm/node_modules/date-fns/locale/fr/_lib/localize.js +0 -1
  372. package/dist/esm/node_modules/date-fns/locale/fr/_lib/match.js +0 -1
  373. package/dist/esm/node_modules/date-fns/locale/fr.js +0 -1
  374. package/dist/esm/node_modules/heic2any/dist/heic2any.js +0 -1
  375. package/dist/esm/node_modules/pdfjs-dist/legacy/build/pdf.js +0 -1
  376. package/dist/esm/node_modules/pdfjs-dist/legacy/build/pdf.worker.js +0 -1
  377. package/dist/esm/node_modules/style-inject/dist/style-inject.es.js +0 -1
  378. package/dist/esm/node_modules/tslib/tslib.es6.js +0 -1
  379. package/dist/esm/providers/I18nProvider.js +0 -1
  380. package/dist/esm/services/analysis.js +0 -1
  381. package/dist/esm/services/api.js +0 -1
  382. package/dist/esm/services/auditTrailService.js +0 -1
  383. package/dist/esm/services/cameraService.js +0 -1
  384. package/dist/esm/services/documentEdgeDetectionService.js +0 -1
  385. package/dist/esm/services/documentTemplate.js +0 -1
  386. package/dist/esm/services/iadService.js +0 -1
  387. package/dist/esm/services/integrationService.js +0 -1
  388. package/dist/esm/services/pollingService.js +0 -1
  389. package/dist/esm/services/professionalImageQuality.js +0 -1
  390. package/dist/esm/services/retryService.js +0 -1
  391. package/dist/esm/services/sessionCredentials.js +0 -1
  392. package/dist/esm/services/sessionMemoryStore.js +0 -1
  393. package/dist/esm/services/sessionService.js +0 -1
  394. package/dist/esm/services/utils.js +0 -1
  395. package/dist/esm/types/session.js +0 -1
  396. package/dist/esm/utils/analysisErrors.js +0 -1
  397. package/dist/esm/utils/apiAnalysis.js +0 -1
  398. package/dist/esm/utils/conditionEvaluator.js +0 -1
  399. package/dist/esm/utils/countryFlags.js +0 -1
  400. package/dist/esm/utils/cssLoader.js +0 -1
  401. package/dist/esm/utils/customFieldIds.js +0 -1
  402. package/dist/esm/utils/customFieldValidation.js +0 -1
  403. package/dist/esm/utils/documentLabels.js +0 -1
  404. package/dist/esm/utils/europeanCountries.js +0 -1
  405. package/dist/esm/utils/fileConverter.js +0 -1
  406. package/dist/esm/utils/imageConverter.js +0 -1
  407. package/dist/esm/utils/imageProcessing.js +0 -1
  408. package/dist/esm/utils/isMobileDevice.js +0 -1
  409. package/dist/esm/utils/isoCountryCodes.js +0 -1
  410. package/dist/esm/utils/jdiCodes.js +0 -1
  411. package/dist/esm/utils/labelToKey.js +0 -1
  412. package/dist/esm/utils/listFieldUtils.js +0 -1
  413. package/dist/esm/utils/mimeTypes.js +0 -1
  414. package/dist/esm/utils/navigation.js +0 -1
  415. package/dist/esm/utils/renderInlineMarkdown.js +0 -1
  416. package/dist/esm/utils/sessionStatus.js +0 -1
  417. package/dist/esm/utils/userInputForm.js +0 -1
  418. package/dist/esm/utils/utils.js +0 -1
  419. package/dist/esm/utils/validationUtils.js +0 -1
  420. package/package.json +9 -2
  421. package/.gitlab/issue_templates/bug.md +0 -14
  422. package/.gitlab/issue_templates/feature.md +0 -11
  423. package/.gitlab/issue_templates/task.md +0 -11
  424. package/.gitlab/merge_request_templates/default.md +0 -15
  425. package/.gitlab/merge_request_templates/hotfix.md +0 -15
  426. package/.gitlab-ci.yml +0 -290
  427. package/CLAUDE.md +0 -233
  428. package/__mocks__/@unissey-web/sdk-react.js +0 -17
  429. package/__mocks__/fileMock.js +0 -1
  430. package/__mocks__/pdfjs-dist/legacy/build/pdf.js +0 -5
  431. package/__mocks__/pdfjs-dist/legacy/build/pdf.worker.js +0 -1
  432. package/assets/logo.svg +0 -56
  433. package/axios.install.md +0 -2
  434. package/babel.config.js +0 -15
  435. package/dist/cjs/_virtual/_commonjsHelpers.js.map +0 -1
  436. package/dist/cjs/_virtual/heic2any.js.map +0 -1
  437. package/dist/cjs/_virtual/heic2any2.js.map +0 -1
  438. package/dist/cjs/assets/Face Scan Square.svg.js.map +0 -1
  439. package/dist/cjs/assets/Lightbulb.svg.js.map +0 -1
  440. package/dist/cjs/assets/Monitor Camera.svg.js.map +0 -1
  441. package/dist/cjs/assets/User Hands.svg.js.map +0 -1
  442. package/dist/cjs/assets/before-document.png.js.map +0 -1
  443. package/dist/cjs/assets/before-passport.png.js.map +0 -1
  444. package/dist/cjs/assets/before-photo.png.js.map +0 -1
  445. package/dist/cjs/assets/before-verso.png.js.map +0 -1
  446. package/dist/cjs/assets/check.svg.js.map +0 -1
  447. package/dist/cjs/assets/icons/shield_magic_link.svg.js.map +0 -1
  448. package/dist/cjs/assets/selfietake.svg.js.map +0 -1
  449. package/dist/cjs/components/DatakeenSession.js.map +0 -1
  450. package/dist/cjs/components/document-collection/DocumentCollection.js.map +0 -1
  451. package/dist/cjs/components/document-collection/DocumentCollectionIntroduction.js.map +0 -1
  452. package/dist/cjs/components/document-collection/DocumentCollectionMethodSelection.js.map +0 -1
  453. package/dist/cjs/components/document-collection/DocumentCollectionSelection.js.map +0 -1
  454. package/dist/cjs/components/document-collection/DocumentCollectionUpload.js.map +0 -1
  455. package/dist/cjs/components/document-collection/DocumentError.js.map +0 -1
  456. package/dist/cjs/components/document-collection/DocumentProcessing.js.map +0 -1
  457. package/dist/cjs/components/document-collection/DocumentSuccess.js.map +0 -1
  458. package/dist/cjs/components/document-video/DocumentVideoCapture.js.map +0 -1
  459. package/dist/cjs/components/document-video/DocumentVideoConfirmation.js.map +0 -1
  460. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoFlow.js.map +0 -1
  461. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoInstructions.js.map +0 -1
  462. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoProcessing.js.map +0 -1
  463. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoRecorder.js.map +0 -1
  464. package/dist/cjs/components/icons/ElectronicIcon.js.map +0 -1
  465. package/dist/cjs/components/icons/PoweredByIcon.js.map +0 -1
  466. package/dist/cjs/components/icons/PreIntroIcon.js.map +0 -1
  467. package/dist/cjs/components/icons/StartIcon.js.map +0 -1
  468. package/dist/cjs/components/id-check/BeforePhoto.js.map +0 -1
  469. package/dist/cjs/components/id-check/BeforeVersoPhoto.js.map +0 -1
  470. package/dist/cjs/components/id-check/CameraError.js.map +0 -1
  471. package/dist/cjs/components/id-check/CameraMask.js.map +0 -1
  472. package/dist/cjs/components/id-check/OrientationToggle.js.map +0 -1
  473. package/dist/cjs/components/id-check/Photo.js.map +0 -1
  474. package/dist/cjs/components/id-check/PhotoConfirmation.js.map +0 -1
  475. package/dist/cjs/components/id-check/PhotoPreview.js.map +0 -1
  476. package/dist/cjs/components/jdi/JDDWorkInProgress.js.map +0 -1
  477. package/dist/cjs/components/jdi/JDICountrySelection.js.map +0 -1
  478. package/dist/cjs/components/jdi/JDIDocumentSelection.js.map +0 -1
  479. package/dist/cjs/components/jdi/JDIDocumentUpload.js.map +0 -1
  480. package/dist/cjs/components/jdi/JDIError.js.map +0 -1
  481. package/dist/cjs/components/jdi/JDIPreIntroduction.js.map +0 -1
  482. package/dist/cjs/components/jdi/JDIProcessing.js.map +0 -1
  483. package/dist/cjs/components/jdi/JDISuccess.js.map +0 -1
  484. package/dist/cjs/components/legal-consent/LegalConsentNode.js.map +0 -1
  485. package/dist/cjs/components/nfc-scan/BiometricSymbol.js.map +0 -1
  486. package/dist/cjs/components/nfc-scan/NfcChipGate.js.map +0 -1
  487. package/dist/cjs/components/nfc-scan/NfcFallbackSurvey.js.map +0 -1
  488. package/dist/cjs/components/nfc-scan/NfcOnboardingNotice.js.map +0 -1
  489. package/dist/cjs/components/nfc-scan/NfcScanNode.js.map +0 -1
  490. package/dist/cjs/components/nfc-scan/NfcSuccessAnimation.js.map +0 -1
  491. package/dist/cjs/components/nfc-scan/PuceCniSymbol.js.map +0 -1
  492. package/dist/cjs/components/selfie/SelfieConfirmation.js.map +0 -1
  493. package/dist/cjs/components/selfie/Video.css.js.map +0 -1
  494. package/dist/cjs/components/selfie/Video.js.map +0 -1
  495. package/dist/cjs/components/selfie/VideoFixes.css.js.map +0 -1
  496. package/dist/cjs/components/selfie/VideoResetStyles.js.map +0 -1
  497. package/dist/cjs/components/selfie/hooks/useLiveFrameCapture.js.map +0 -1
  498. package/dist/cjs/components/selfie/hooks/useVideoRecorderStyles.js.map +0 -1
  499. package/dist/cjs/components/selfie/selfie-flow/InstructionsSelfie.js.map +0 -1
  500. package/dist/cjs/components/selfie/selfie-flow/SelfieFlow.js.map +0 -1
  501. package/dist/cjs/components/selfie/selfie-flow/SelfiePreIntroduction.js.map +0 -1
  502. package/dist/cjs/components/selfie/selfie-flow/SelfieProcessing.js.map +0 -1
  503. package/dist/cjs/components/selfie/selfie-flow/SelfieRecorder.js.map +0 -1
  504. package/dist/cjs/components/selfie/utils/selfieCaptureUtils.js.map +0 -1
  505. package/dist/cjs/components/selfie/utils/unisseyStrings.js.map +0 -1
  506. package/dist/cjs/components/selfie/utils/videoElementStyles.js.map +0 -1
  507. package/dist/cjs/components/session/DocumentCheck.js.map +0 -1
  508. package/dist/cjs/components/session/EndFlow.js.map +0 -1
  509. package/dist/cjs/components/session/MobileRedirect.js.map +0 -1
  510. package/dist/cjs/components/session/PdfGeneration.js.map +0 -1
  511. package/dist/cjs/components/session/Selfie.js.map +0 -1
  512. package/dist/cjs/components/session/SessionContent.js.map +0 -1
  513. package/dist/cjs/components/session/SessionExpired.js.map +0 -1
  514. package/dist/cjs/components/session/StartSession.js.map +0 -1
  515. package/dist/cjs/components/session/UserInputForm/AddressFields.js.map +0 -1
  516. package/dist/cjs/components/session/UserInputForm/ContactFields.js.map +0 -1
  517. package/dist/cjs/components/session/UserInputForm/CustomFormFields.js.map +0 -1
  518. package/dist/cjs/components/session/UserInputForm/DatePickerField.js.map +0 -1
  519. package/dist/cjs/components/session/UserInputForm/IdentityFields.js.map +0 -1
  520. package/dist/cjs/components/session/UserInputForm/LegalEntityFields.js.map +0 -1
  521. package/dist/cjs/components/session/UserInputForm/LegalRepFields.js.map +0 -1
  522. package/dist/cjs/components/session/UserInputForm/NationalityField.js.map +0 -1
  523. package/dist/cjs/components/session/UserInputForm.js.map +0 -1
  524. package/dist/cjs/components/session/VideoWorkInProgress.js.map +0 -1
  525. package/dist/cjs/components/session/controleJdiPolicy.js.map +0 -1
  526. package/dist/cjs/components/session/endScreenIcons.js.map +0 -1
  527. package/dist/cjs/components/signature-electronic/DocusealSignature.js.map +0 -1
  528. package/dist/cjs/components/signature-electronic/SignatureElectronic.js.map +0 -1
  529. package/dist/cjs/components/signature-electronic/SignatureElectronicIntroduction.js.map +0 -1
  530. package/dist/cjs/components/signature-electronic/SignedDocumentPreview.js.map +0 -1
  531. package/dist/cjs/components/start-flow/Start.js.map +0 -1
  532. package/dist/cjs/components/states/ErrorState.js.map +0 -1
  533. package/dist/cjs/components/states/LoadingState.js.map +0 -1
  534. package/dist/cjs/components/states/NoSessionIdState.js.map +0 -1
  535. package/dist/cjs/components/template/ComplementaryMandateNodeHandler.js.map +0 -1
  536. package/dist/cjs/components/template/ConditionNodeHandler.js.map +0 -1
  537. package/dist/cjs/components/template/ExternalVerificationNodeHandler.js.map +0 -1
  538. package/dist/cjs/components/template/TemplateNodeRenderer.js.map +0 -1
  539. package/dist/cjs/components/template/conditionNodePolicy.js.map +0 -1
  540. package/dist/cjs/components/ui/Body.js.map +0 -1
  541. package/dist/cjs/components/ui/Button.js.map +0 -1
  542. package/dist/cjs/components/ui/ButtonDesktop.js.map +0 -1
  543. package/dist/cjs/components/ui/Card.js.map +0 -1
  544. package/dist/cjs/components/ui/MobilePageLayout.js.map +0 -1
  545. package/dist/cjs/components/ui/PDFPreview.js.map +0 -1
  546. package/dist/cjs/components/ui/PageActions.js.map +0 -1
  547. package/dist/cjs/components/ui/Paper.js.map +0 -1
  548. package/dist/cjs/components/ui/PoweredBy.js.map +0 -1
  549. package/dist/cjs/components/ui/QRCodeDisplay.js.map +0 -1
  550. package/dist/cjs/components/ui/SelectComponent.js.map +0 -1
  551. package/dist/cjs/components/ui/Subtitle.js.map +0 -1
  552. package/dist/cjs/components/ui/Title.js.map +0 -1
  553. package/dist/cjs/config/env.js.map +0 -1
  554. package/dist/cjs/constants/userInputForm.js.map +0 -1
  555. package/dist/cjs/context/ConfigContext.js.map +0 -1
  556. package/dist/cjs/context/DocumentContext.js.map +0 -1
  557. package/dist/cjs/context/SessionContext.js.map +0 -1
  558. package/dist/cjs/hooks/useClientInfo.js.map +0 -1
  559. package/dist/cjs/hooks/useCountryOptions.js.map +0 -1
  560. package/dist/cjs/hooks/useI18n.js.map +0 -1
  561. package/dist/cjs/hooks/useIsMobile.js.map +0 -1
  562. package/dist/cjs/hooks/useNfcSseStatus.js.map +0 -1
  563. package/dist/cjs/hooks/useRouteCSS.js.map +0 -1
  564. package/dist/cjs/hooks/useSession.js.map +0 -1
  565. package/dist/cjs/hooks/useSessionData.js.map +0 -1
  566. package/dist/cjs/hooks/useStepCSS.js.map +0 -1
  567. package/dist/cjs/hooks/useStepNavigation.js.map +0 -1
  568. package/dist/cjs/hooks/useTemplateLoader.js.map +0 -1
  569. package/dist/cjs/hooks/useUserInputForm.js.map +0 -1
  570. package/dist/cjs/i18n/country/country.en.json.js.map +0 -1
  571. package/dist/cjs/i18n/country/country.fr.json.js.map +0 -1
  572. package/dist/cjs/i18n/country/country.iso2.en.json.js.map +0 -1
  573. package/dist/cjs/i18n/country/country.iso2.fr.json.js.map +0 -1
  574. package/dist/cjs/i18n/documents/documents.en.json.js.map +0 -1
  575. package/dist/cjs/i18n/documents/documents.fr.json.js.map +0 -1
  576. package/dist/cjs/i18n/en.json.js.map +0 -1
  577. package/dist/cjs/i18n/es.json.js.map +0 -1
  578. package/dist/cjs/i18n/fr.json.js.map +0 -1
  579. package/dist/cjs/i18n/index.js.map +0 -1
  580. package/dist/cjs/index.css.js.map +0 -1
  581. package/dist/cjs/index.js.map +0 -1
  582. package/dist/cjs/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +0 -1
  583. package/dist/cjs/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +0 -1
  584. package/dist/cjs/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +0 -1
  585. package/dist/cjs/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +0 -1
  586. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +0 -1
  587. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatLong.js.map +0 -1
  588. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatRelative.js.map +0 -1
  589. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/localize.js.map +0 -1
  590. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/match.js.map +0 -1
  591. package/dist/cjs/node_modules/date-fns/locale/en-US.js.map +0 -1
  592. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatDistance.js.map +0 -1
  593. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatLong.js.map +0 -1
  594. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatRelative.js.map +0 -1
  595. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/localize.js.map +0 -1
  596. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/match.js.map +0 -1
  597. package/dist/cjs/node_modules/date-fns/locale/fr.js.map +0 -1
  598. package/dist/cjs/node_modules/heic2any/dist/heic2any.js.map +0 -1
  599. package/dist/cjs/node_modules/pdfjs-dist/legacy/build/pdf.js.map +0 -1
  600. package/dist/cjs/node_modules/pdfjs-dist/legacy/build/pdf.worker.js.map +0 -1
  601. package/dist/cjs/node_modules/style-inject/dist/style-inject.es.js.map +0 -1
  602. package/dist/cjs/node_modules/tslib/tslib.es6.js.map +0 -1
  603. package/dist/cjs/providers/I18nProvider.js.map +0 -1
  604. package/dist/cjs/services/analysis.js.map +0 -1
  605. package/dist/cjs/services/api.js.map +0 -1
  606. package/dist/cjs/services/auditTrailService.js.map +0 -1
  607. package/dist/cjs/services/cameraService.js.map +0 -1
  608. package/dist/cjs/services/documentEdgeDetectionService.js.map +0 -1
  609. package/dist/cjs/services/documentTemplate.js.map +0 -1
  610. package/dist/cjs/services/iadService.js.map +0 -1
  611. package/dist/cjs/services/integrationService.js.map +0 -1
  612. package/dist/cjs/services/pollingService.js.map +0 -1
  613. package/dist/cjs/services/professionalImageQuality.js.map +0 -1
  614. package/dist/cjs/services/retryService.js.map +0 -1
  615. package/dist/cjs/services/sessionCredentials.js.map +0 -1
  616. package/dist/cjs/services/sessionMemoryStore.js.map +0 -1
  617. package/dist/cjs/services/sessionService.js.map +0 -1
  618. package/dist/cjs/services/utils.js.map +0 -1
  619. package/dist/cjs/types/session.js.map +0 -1
  620. package/dist/cjs/utils/analysisErrors.js.map +0 -1
  621. package/dist/cjs/utils/apiAnalysis.js.map +0 -1
  622. package/dist/cjs/utils/conditionEvaluator.js.map +0 -1
  623. package/dist/cjs/utils/countryFlags.js.map +0 -1
  624. package/dist/cjs/utils/cssLoader.js.map +0 -1
  625. package/dist/cjs/utils/customFieldIds.js.map +0 -1
  626. package/dist/cjs/utils/customFieldValidation.js.map +0 -1
  627. package/dist/cjs/utils/documentLabels.js.map +0 -1
  628. package/dist/cjs/utils/europeanCountries.js.map +0 -1
  629. package/dist/cjs/utils/fileConverter.js.map +0 -1
  630. package/dist/cjs/utils/imageConverter.js.map +0 -1
  631. package/dist/cjs/utils/imageProcessing.js.map +0 -1
  632. package/dist/cjs/utils/isMobileDevice.js.map +0 -1
  633. package/dist/cjs/utils/isoCountryCodes.js.map +0 -1
  634. package/dist/cjs/utils/jdiCodes.js.map +0 -1
  635. package/dist/cjs/utils/labelToKey.js.map +0 -1
  636. package/dist/cjs/utils/listFieldUtils.js.map +0 -1
  637. package/dist/cjs/utils/mimeTypes.js.map +0 -1
  638. package/dist/cjs/utils/navigation.js.map +0 -1
  639. package/dist/cjs/utils/renderInlineMarkdown.js.map +0 -1
  640. package/dist/cjs/utils/sessionStatus.js.map +0 -1
  641. package/dist/cjs/utils/userInputForm.js.map +0 -1
  642. package/dist/cjs/utils/utils.js.map +0 -1
  643. package/dist/cjs/utils/validationUtils.js.map +0 -1
  644. package/dist/esm/_virtual/_commonjsHelpers.js.map +0 -1
  645. package/dist/esm/_virtual/heic2any.js.map +0 -1
  646. package/dist/esm/_virtual/heic2any2.js.map +0 -1
  647. package/dist/esm/assets/Face Scan Square.svg.js.map +0 -1
  648. package/dist/esm/assets/Lightbulb.svg.js.map +0 -1
  649. package/dist/esm/assets/Monitor Camera.svg.js.map +0 -1
  650. package/dist/esm/assets/User Hands.svg.js.map +0 -1
  651. package/dist/esm/assets/before-document.png.js.map +0 -1
  652. package/dist/esm/assets/before-passport.png.js.map +0 -1
  653. package/dist/esm/assets/before-photo.png.js.map +0 -1
  654. package/dist/esm/assets/before-verso.png.js.map +0 -1
  655. package/dist/esm/assets/check.svg.js.map +0 -1
  656. package/dist/esm/assets/icons/shield_magic_link.svg.js.map +0 -1
  657. package/dist/esm/assets/selfietake.svg.js.map +0 -1
  658. package/dist/esm/components/DatakeenSession.js.map +0 -1
  659. package/dist/esm/components/document-collection/DocumentCollection.js.map +0 -1
  660. package/dist/esm/components/document-collection/DocumentCollectionIntroduction.js.map +0 -1
  661. package/dist/esm/components/document-collection/DocumentCollectionMethodSelection.js.map +0 -1
  662. package/dist/esm/components/document-collection/DocumentCollectionSelection.js.map +0 -1
  663. package/dist/esm/components/document-collection/DocumentCollectionUpload.js.map +0 -1
  664. package/dist/esm/components/document-collection/DocumentError.js.map +0 -1
  665. package/dist/esm/components/document-collection/DocumentProcessing.js.map +0 -1
  666. package/dist/esm/components/document-collection/DocumentSuccess.js.map +0 -1
  667. package/dist/esm/components/document-video/DocumentVideoCapture.js.map +0 -1
  668. package/dist/esm/components/document-video/DocumentVideoConfirmation.js.map +0 -1
  669. package/dist/esm/components/document-video/document-video-flow/DocumentVideoFlow.js.map +0 -1
  670. package/dist/esm/components/document-video/document-video-flow/DocumentVideoInstructions.js.map +0 -1
  671. package/dist/esm/components/document-video/document-video-flow/DocumentVideoProcessing.js.map +0 -1
  672. package/dist/esm/components/document-video/document-video-flow/DocumentVideoRecorder.js.map +0 -1
  673. package/dist/esm/components/icons/ElectronicIcon.js.map +0 -1
  674. package/dist/esm/components/icons/PoweredByIcon.js.map +0 -1
  675. package/dist/esm/components/icons/PreIntroIcon.js.map +0 -1
  676. package/dist/esm/components/icons/StartIcon.js.map +0 -1
  677. package/dist/esm/components/id-check/BeforePhoto.js.map +0 -1
  678. package/dist/esm/components/id-check/BeforeVersoPhoto.js.map +0 -1
  679. package/dist/esm/components/id-check/CameraError.js.map +0 -1
  680. package/dist/esm/components/id-check/CameraMask.js.map +0 -1
  681. package/dist/esm/components/id-check/OrientationToggle.js.map +0 -1
  682. package/dist/esm/components/id-check/Photo.js.map +0 -1
  683. package/dist/esm/components/id-check/PhotoConfirmation.js.map +0 -1
  684. package/dist/esm/components/id-check/PhotoPreview.js.map +0 -1
  685. package/dist/esm/components/jdi/JDDWorkInProgress.js.map +0 -1
  686. package/dist/esm/components/jdi/JDICountrySelection.js.map +0 -1
  687. package/dist/esm/components/jdi/JDIDocumentSelection.js.map +0 -1
  688. package/dist/esm/components/jdi/JDIDocumentUpload.js.map +0 -1
  689. package/dist/esm/components/jdi/JDIError.js.map +0 -1
  690. package/dist/esm/components/jdi/JDIPreIntroduction.js.map +0 -1
  691. package/dist/esm/components/jdi/JDIProcessing.js.map +0 -1
  692. package/dist/esm/components/jdi/JDISuccess.js.map +0 -1
  693. package/dist/esm/components/legal-consent/LegalConsentNode.js.map +0 -1
  694. package/dist/esm/components/nfc-scan/BiometricSymbol.js.map +0 -1
  695. package/dist/esm/components/nfc-scan/NfcChipGate.js.map +0 -1
  696. package/dist/esm/components/nfc-scan/NfcFallbackSurvey.js.map +0 -1
  697. package/dist/esm/components/nfc-scan/NfcOnboardingNotice.js.map +0 -1
  698. package/dist/esm/components/nfc-scan/NfcScanNode.js.map +0 -1
  699. package/dist/esm/components/nfc-scan/NfcSuccessAnimation.js.map +0 -1
  700. package/dist/esm/components/nfc-scan/PuceCniSymbol.js.map +0 -1
  701. package/dist/esm/components/selfie/SelfieConfirmation.js.map +0 -1
  702. package/dist/esm/components/selfie/Video.css.js.map +0 -1
  703. package/dist/esm/components/selfie/Video.js.map +0 -1
  704. package/dist/esm/components/selfie/VideoFixes.css.js.map +0 -1
  705. package/dist/esm/components/selfie/VideoResetStyles.js.map +0 -1
  706. package/dist/esm/components/selfie/hooks/useLiveFrameCapture.js.map +0 -1
  707. package/dist/esm/components/selfie/hooks/useVideoRecorderStyles.js.map +0 -1
  708. package/dist/esm/components/selfie/selfie-flow/InstructionsSelfie.js.map +0 -1
  709. package/dist/esm/components/selfie/selfie-flow/SelfieFlow.js.map +0 -1
  710. package/dist/esm/components/selfie/selfie-flow/SelfiePreIntroduction.js.map +0 -1
  711. package/dist/esm/components/selfie/selfie-flow/SelfieProcessing.js.map +0 -1
  712. package/dist/esm/components/selfie/selfie-flow/SelfieRecorder.js.map +0 -1
  713. package/dist/esm/components/selfie/utils/selfieCaptureUtils.js.map +0 -1
  714. package/dist/esm/components/selfie/utils/unisseyStrings.js.map +0 -1
  715. package/dist/esm/components/selfie/utils/videoElementStyles.js.map +0 -1
  716. package/dist/esm/components/session/DocumentCheck.js.map +0 -1
  717. package/dist/esm/components/session/EndFlow.js.map +0 -1
  718. package/dist/esm/components/session/MobileRedirect.js.map +0 -1
  719. package/dist/esm/components/session/PdfGeneration.js.map +0 -1
  720. package/dist/esm/components/session/Selfie.js.map +0 -1
  721. package/dist/esm/components/session/SessionContent.js.map +0 -1
  722. package/dist/esm/components/session/SessionExpired.js.map +0 -1
  723. package/dist/esm/components/session/StartSession.js.map +0 -1
  724. package/dist/esm/components/session/UserInputForm/AddressFields.js.map +0 -1
  725. package/dist/esm/components/session/UserInputForm/ContactFields.js.map +0 -1
  726. package/dist/esm/components/session/UserInputForm/CustomFormFields.js.map +0 -1
  727. package/dist/esm/components/session/UserInputForm/DatePickerField.js.map +0 -1
  728. package/dist/esm/components/session/UserInputForm/IdentityFields.js.map +0 -1
  729. package/dist/esm/components/session/UserInputForm/LegalEntityFields.js.map +0 -1
  730. package/dist/esm/components/session/UserInputForm/LegalRepFields.js.map +0 -1
  731. package/dist/esm/components/session/UserInputForm/NationalityField.js.map +0 -1
  732. package/dist/esm/components/session/UserInputForm.js.map +0 -1
  733. package/dist/esm/components/session/VideoWorkInProgress.js.map +0 -1
  734. package/dist/esm/components/session/controleJdiPolicy.js.map +0 -1
  735. package/dist/esm/components/session/endScreenIcons.js.map +0 -1
  736. package/dist/esm/components/signature-electronic/DocusealSignature.js.map +0 -1
  737. package/dist/esm/components/signature-electronic/SignatureElectronic.js.map +0 -1
  738. package/dist/esm/components/signature-electronic/SignatureElectronicIntroduction.js.map +0 -1
  739. package/dist/esm/components/signature-electronic/SignedDocumentPreview.js.map +0 -1
  740. package/dist/esm/components/start-flow/Start.js.map +0 -1
  741. package/dist/esm/components/states/ErrorState.js.map +0 -1
  742. package/dist/esm/components/states/LoadingState.js.map +0 -1
  743. package/dist/esm/components/states/NoSessionIdState.js.map +0 -1
  744. package/dist/esm/components/template/ComplementaryMandateNodeHandler.js.map +0 -1
  745. package/dist/esm/components/template/ConditionNodeHandler.js.map +0 -1
  746. package/dist/esm/components/template/ExternalVerificationNodeHandler.js.map +0 -1
  747. package/dist/esm/components/template/TemplateNodeRenderer.js.map +0 -1
  748. package/dist/esm/components/template/conditionNodePolicy.js.map +0 -1
  749. package/dist/esm/components/ui/Body.js.map +0 -1
  750. package/dist/esm/components/ui/Button.js.map +0 -1
  751. package/dist/esm/components/ui/ButtonDesktop.js.map +0 -1
  752. package/dist/esm/components/ui/Card.js.map +0 -1
  753. package/dist/esm/components/ui/MobilePageLayout.js.map +0 -1
  754. package/dist/esm/components/ui/PDFPreview.js.map +0 -1
  755. package/dist/esm/components/ui/PageActions.js.map +0 -1
  756. package/dist/esm/components/ui/Paper.js.map +0 -1
  757. package/dist/esm/components/ui/PoweredBy.js.map +0 -1
  758. package/dist/esm/components/ui/QRCodeDisplay.js.map +0 -1
  759. package/dist/esm/components/ui/SelectComponent.js.map +0 -1
  760. package/dist/esm/components/ui/Subtitle.js.map +0 -1
  761. package/dist/esm/components/ui/Title.js.map +0 -1
  762. package/dist/esm/config/env.js.map +0 -1
  763. package/dist/esm/constants/userInputForm.js.map +0 -1
  764. package/dist/esm/context/ConfigContext.js.map +0 -1
  765. package/dist/esm/context/DocumentContext.js.map +0 -1
  766. package/dist/esm/context/SessionContext.js.map +0 -1
  767. package/dist/esm/hooks/useClientInfo.js.map +0 -1
  768. package/dist/esm/hooks/useCountryOptions.js.map +0 -1
  769. package/dist/esm/hooks/useI18n.js.map +0 -1
  770. package/dist/esm/hooks/useIsMobile.js.map +0 -1
  771. package/dist/esm/hooks/useNfcSseStatus.js.map +0 -1
  772. package/dist/esm/hooks/useRouteCSS.js.map +0 -1
  773. package/dist/esm/hooks/useSession.js.map +0 -1
  774. package/dist/esm/hooks/useSessionData.js.map +0 -1
  775. package/dist/esm/hooks/useStepCSS.js.map +0 -1
  776. package/dist/esm/hooks/useStepNavigation.js.map +0 -1
  777. package/dist/esm/hooks/useTemplateLoader.js.map +0 -1
  778. package/dist/esm/hooks/useUserInputForm.js.map +0 -1
  779. package/dist/esm/i18n/country/country.en.json.js.map +0 -1
  780. package/dist/esm/i18n/country/country.fr.json.js.map +0 -1
  781. package/dist/esm/i18n/country/country.iso2.en.json.js.map +0 -1
  782. package/dist/esm/i18n/country/country.iso2.fr.json.js.map +0 -1
  783. package/dist/esm/i18n/documents/documents.en.json.js.map +0 -1
  784. package/dist/esm/i18n/documents/documents.fr.json.js.map +0 -1
  785. package/dist/esm/i18n/en.json.js.map +0 -1
  786. package/dist/esm/i18n/es.json.js.map +0 -1
  787. package/dist/esm/i18n/fr.json.js.map +0 -1
  788. package/dist/esm/i18n/index.js.map +0 -1
  789. package/dist/esm/index.css.js.map +0 -1
  790. package/dist/esm/index.js.map +0 -1
  791. package/dist/esm/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +0 -1
  792. package/dist/esm/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +0 -1
  793. package/dist/esm/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +0 -1
  794. package/dist/esm/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +0 -1
  795. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +0 -1
  796. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatLong.js.map +0 -1
  797. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatRelative.js.map +0 -1
  798. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/localize.js.map +0 -1
  799. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/match.js.map +0 -1
  800. package/dist/esm/node_modules/date-fns/locale/en-US.js.map +0 -1
  801. package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatDistance.js.map +0 -1
  802. package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatLong.js.map +0 -1
  803. package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatRelative.js.map +0 -1
  804. package/dist/esm/node_modules/date-fns/locale/fr/_lib/localize.js.map +0 -1
  805. package/dist/esm/node_modules/date-fns/locale/fr/_lib/match.js.map +0 -1
  806. package/dist/esm/node_modules/date-fns/locale/fr.js.map +0 -1
  807. package/dist/esm/node_modules/heic2any/dist/heic2any.js.map +0 -1
  808. package/dist/esm/node_modules/pdfjs-dist/legacy/build/pdf.js.map +0 -1
  809. package/dist/esm/node_modules/pdfjs-dist/legacy/build/pdf.worker.js.map +0 -1
  810. package/dist/esm/node_modules/style-inject/dist/style-inject.es.js.map +0 -1
  811. package/dist/esm/node_modules/tslib/tslib.es6.js.map +0 -1
  812. package/dist/esm/providers/I18nProvider.js.map +0 -1
  813. package/dist/esm/services/analysis.js.map +0 -1
  814. package/dist/esm/services/api.js.map +0 -1
  815. package/dist/esm/services/auditTrailService.js.map +0 -1
  816. package/dist/esm/services/cameraService.js.map +0 -1
  817. package/dist/esm/services/documentEdgeDetectionService.js.map +0 -1
  818. package/dist/esm/services/documentTemplate.js.map +0 -1
  819. package/dist/esm/services/iadService.js.map +0 -1
  820. package/dist/esm/services/integrationService.js.map +0 -1
  821. package/dist/esm/services/pollingService.js.map +0 -1
  822. package/dist/esm/services/professionalImageQuality.js.map +0 -1
  823. package/dist/esm/services/retryService.js.map +0 -1
  824. package/dist/esm/services/sessionCredentials.js.map +0 -1
  825. package/dist/esm/services/sessionMemoryStore.js.map +0 -1
  826. package/dist/esm/services/sessionService.js.map +0 -1
  827. package/dist/esm/services/utils.js.map +0 -1
  828. package/dist/esm/types/session.js.map +0 -1
  829. package/dist/esm/utils/analysisErrors.js.map +0 -1
  830. package/dist/esm/utils/apiAnalysis.js.map +0 -1
  831. package/dist/esm/utils/conditionEvaluator.js.map +0 -1
  832. package/dist/esm/utils/countryFlags.js.map +0 -1
  833. package/dist/esm/utils/cssLoader.js.map +0 -1
  834. package/dist/esm/utils/customFieldIds.js.map +0 -1
  835. package/dist/esm/utils/customFieldValidation.js.map +0 -1
  836. package/dist/esm/utils/documentLabels.js.map +0 -1
  837. package/dist/esm/utils/europeanCountries.js.map +0 -1
  838. package/dist/esm/utils/fileConverter.js.map +0 -1
  839. package/dist/esm/utils/imageConverter.js.map +0 -1
  840. package/dist/esm/utils/imageProcessing.js.map +0 -1
  841. package/dist/esm/utils/isMobileDevice.js.map +0 -1
  842. package/dist/esm/utils/isoCountryCodes.js.map +0 -1
  843. package/dist/esm/utils/jdiCodes.js.map +0 -1
  844. package/dist/esm/utils/labelToKey.js.map +0 -1
  845. package/dist/esm/utils/listFieldUtils.js.map +0 -1
  846. package/dist/esm/utils/mimeTypes.js.map +0 -1
  847. package/dist/esm/utils/navigation.js.map +0 -1
  848. package/dist/esm/utils/renderInlineMarkdown.js.map +0 -1
  849. package/dist/esm/utils/sessionStatus.js.map +0 -1
  850. package/dist/esm/utils/userInputForm.js.map +0 -1
  851. package/dist/esm/utils/utils.js.map +0 -1
  852. package/dist/esm/utils/validationUtils.js.map +0 -1
  853. package/docs/COMPLEMENTARY_MANDATE.md +0 -22
  854. package/docs/GITLAB_BADGES_SETUP.md +0 -317
  855. package/docs/JOURNEY_NODE_BUILDER.md +0 -222
  856. package/docs/POLLING_SYSTEM.md +0 -699
  857. package/docs/README.md +0 -254
  858. package/docs/SESSION_TOKEN_MIGRATION.md +0 -52
  859. package/docs/condition-node.md +0 -651
  860. package/docs/configuration.md +0 -113
  861. package/docs/dynamic-configuration.md +0 -97
  862. package/docs/environment.md +0 -27
  863. package/docs/migration-guide.md +0 -120
  864. package/docs/multi-runs.md +0 -111
  865. package/docs/navigation-history.md +0 -163
  866. package/docs/sdk_integration_guide.md +0 -58
  867. package/eslint.config.js +0 -13
  868. package/examples/analysis-progress-example.tsx +0 -220
  869. package/examples/sdk-configuration.ts +0 -187
  870. package/examples/test-updated-urls.ts +0 -162
  871. package/examples/usage-example.tsx +0 -49
  872. package/jest.config.js +0 -32
  873. package/postcss.config.js +0 -6
  874. package/renovate.json +0 -242
  875. package/rollup.asset-url-plugin.js +0 -38
  876. package/rollup.dev.config.js +0 -65
  877. package/setupTests.js +0 -41
  878. package/tailwind.config.js +0 -11
package/assets/logo.svg DELETED
@@ -1,56 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="260px" height="45px" viewBox="0 0 259 45" version="1.1">
3
- <defs>
4
- <clipPath id="clip1">
5
- <path d="M 30.078125 9.90625 L 46 9.90625 L 46 25.945312 L 30.078125 25.945312 Z M 30.078125 9.90625 "/>
6
- </clipPath>
7
- <clipPath id="clip2">
8
- <path d="M 30.078125 27.578125 L 46 27.578125 L 46 43.511719 L 30.078125 43.511719 Z M 30.078125 27.578125 "/>
9
- </clipPath>
10
- <clipPath id="clip3">
11
- <path d="M 0.953125 9.851562 L 17.535156 9.851562 L 17.535156 43.511719 L 0.953125 43.511719 Z M 0.953125 9.851562 "/>
12
- </clipPath>
13
- <clipPath id="clip4">
14
- <path d="M 20.25 9.90625 L 27.53125 9.90625 L 27.53125 43.539062 L 20.25 43.539062 Z M 20.25 9.90625 "/>
15
- </clipPath>
16
- <clipPath id="clip5">
17
- <path d="M 23.886719 9.90625 C 25.898438 9.90625 27.53125 11.542969 27.53125 13.558594 L 27.53125 39.867188 C 27.53125 41.882812 25.898438 43.519531 23.886719 43.519531 C 21.878906 43.519531 20.25 41.882812 20.25 39.867188 L 20.25 13.558594 C 20.25 11.542969 21.878906 9.90625 23.886719 9.90625 Z M 23.886719 9.90625 "/>
18
- </clipPath>
19
- <clipPath id="clip6">
20
- <path d="M 23.914062 23.789062 L 27.554688 23.789062 L 27.554688 43.519531 L 23.914062 43.519531 Z M 23.914062 23.789062 "/>
21
- </clipPath>
22
- <clipPath id="clip7">
23
- <path d="M 20.273438 9.90625 L 23.914062 9.90625 L 23.914062 29.632812 L 20.273438 29.632812 Z M 20.273438 9.90625 "/>
24
- </clipPath>
25
- </defs>
26
- <g id="surface1">
27
- <g clip-path="url(#clip1)" clip-rule="nonzero">
28
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(6.666667%,89.803922%,77.254903%);fill-opacity:1;" d="M 45.960938 9.90625 L 45.960938 14.773438 C 45.960938 20.886719 41.019531 25.84375 34.925781 25.84375 L 30.078125 25.84375 L 30.078125 20.976562 C 30.078125 14.863281 35.015625 9.90625 41.109375 9.90625 Z M 45.960938 9.90625 "/>
29
- </g>
30
- <g clip-path="url(#clip2)" clip-rule="nonzero">
31
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(6.666667%,89.803922%,77.254903%);fill-opacity:1;" d="M 45.960938 43.511719 L 45.960938 38.644531 C 45.960938 32.53125 41.019531 27.578125 34.925781 27.578125 L 30.078125 27.578125 L 30.078125 32.441406 C 30.078125 38.558594 35.015625 43.511719 41.109375 43.511719 Z M 45.960938 43.511719 "/>
32
- </g>
33
- <g clip-path="url(#clip3)" clip-rule="nonzero">
34
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(9.803922%,14.117648%,25.490198%);fill-opacity:1;" d="M 0.953125 9.925781 C 10.203125 9.925781 17.703125 17.445312 17.703125 26.722656 C 17.703125 36.003906 10.203125 43.492188 0.953125 43.492188 Z M 0.953125 9.925781 "/>
35
- </g>
36
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(9.803922%,14.117648%,25.490198%);fill-opacity:1;" d="M 58.449219 36.601562 C 56.316406 34.261719 55.25 31.398438 55.25 28.007812 C 55.25 24.621094 56.316406 21.75 58.449219 19.394531 C 60.585938 17.042969 63.300781 15.863281 66.589844 15.863281 C 69.613281 15.863281 72.105469 16.816406 74.0625 18.722656 L 74.0625 1.058594 L 81.945312 1.058594 L 81.945312 39.433594 L 74.152344 39.433594 L 74.152344 36.847656 L 74.0625 36.847656 C 72.105469 39.019531 69.613281 40.105469 66.589844 40.105469 C 63.300781 40.105469 60.585938 38.9375 58.449219 36.601562 Z M 65.140625 24.132812 C 64.113281 25.144531 63.605469 26.4375 63.605469 28.007812 C 63.605469 29.585938 64.089844 30.875 65.066406 31.875 C 66.046875 32.871094 67.339844 33.367188 68.945312 33.367188 C 70.488281 33.367188 71.757812 32.863281 72.75 31.851562 C 73.742188 30.839844 74.238281 29.558594 74.238281 28.007812 C 74.238281 26.4375 73.722656 25.144531 72.699219 24.132812 C 71.683594 23.121094 70.433594 22.613281 68.945312 22.613281 C 67.433594 22.613281 66.164062 23.121094 65.140625 24.132812 Z M 65.140625 24.132812 "/>
37
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(9.803922%,14.117648%,25.490198%);fill-opacity:1;" d="M 86.609375 36.601562 C 84.476562 34.261719 83.410156 31.398438 83.410156 28.007812 C 83.410156 24.621094 84.476562 21.75 86.609375 19.394531 C 88.746094 17.042969 91.460938 15.863281 94.75 15.863281 C 97.773438 15.863281 100.265625 16.816406 102.222656 18.722656 L 102.222656 16.535156 L 110.109375 16.535156 L 110.109375 39.433594 L 102.3125 39.433594 L 102.3125 36.847656 L 102.222656 36.847656 C 100.265625 39.019531 97.773438 40.105469 94.75 40.105469 C 91.460938 40.105469 88.746094 38.9375 86.609375 36.601562 Z M 93.300781 24.132812 C 92.277344 25.144531 91.765625 26.4375 91.765625 28.007812 C 91.765625 29.585938 92.25 30.875 93.226562 31.875 C 94.207031 32.871094 95.5 33.367188 97.105469 33.367188 C 98.648438 33.367188 99.917969 32.863281 100.910156 31.851562 C 101.902344 30.839844 102.398438 29.558594 102.398438 28.007812 C 102.398438 26.4375 101.882812 25.144531 100.863281 24.132812 C 99.847656 23.121094 98.59375 22.613281 97.105469 22.613281 C 95.59375 22.613281 94.324219 23.121094 93.300781 24.132812 Z M 93.300781 24.132812 "/>
38
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(9.803922%,14.117648%,25.490198%);fill-opacity:1;" d="M 114.546875 16.535156 L 114.546875 8.019531 L 122.429688 8.019531 L 122.429688 16.535156 L 127.226562 16.535156 L 127.226562 22.5625 L 122.429688 22.5625 L 122.429688 29.835938 C 122.429688 31.949219 123.019531 33.007812 124.203125 33.007812 C 124.5 33.007812 124.808594 32.949219 125.132812 32.832031 C 125.460938 32.707031 125.714844 32.589844 125.902344 32.472656 L 126.160156 32.296875 L 128.117188 38.675781 C 126.421875 39.625 124.492188 40.105469 122.332031 40.105469 C 120.847656 40.105469 119.574219 39.84375 118.5 39.320312 C 117.4375 38.800781 116.628906 38.101562 116.082031 37.21875 C 115.539062 36.34375 115.144531 35.425781 114.90625 34.460938 C 114.664062 33.492188 114.546875 32.457031 114.546875 31.351562 L 114.546875 22.5625 L 111.25 22.5625 L 111.25 16.535156 Z M 114.546875 16.535156 "/>
39
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(9.803922%,14.117648%,25.490198%);fill-opacity:1;" d="M 130.117188 36.601562 C 127.988281 34.261719 126.921875 31.398438 126.921875 28.007812 C 126.921875 24.621094 127.988281 21.75 130.117188 19.394531 C 132.257812 17.042969 134.96875 15.863281 138.261719 15.863281 C 141.285156 15.863281 143.777344 16.816406 145.734375 18.722656 L 145.734375 16.535156 L 153.617188 16.535156 L 153.617188 39.433594 L 145.820312 39.433594 L 145.820312 36.847656 L 145.734375 36.847656 C 143.777344 39.019531 141.285156 40.105469 138.261719 40.105469 C 134.96875 40.105469 132.257812 38.9375 130.117188 36.601562 Z M 136.8125 24.132812 C 135.785156 25.144531 135.273438 26.4375 135.273438 28.007812 C 135.273438 29.585938 135.761719 30.875 136.738281 31.875 C 137.71875 32.871094 139.011719 33.367188 140.617188 33.367188 C 142.160156 33.367188 143.429688 32.863281 144.421875 31.851562 C 145.414062 30.839844 145.910156 29.558594 145.910156 28.007812 C 145.910156 26.4375 145.394531 25.144531 144.371094 24.132812 C 143.355469 23.121094 142.105469 22.613281 140.617188 22.613281 C 139.105469 22.613281 137.832031 23.121094 136.8125 24.132812 Z M 136.8125 24.132812 "/>
40
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(9.803922%,14.117648%,25.490198%);fill-opacity:1;" d="M 182.796875 16.535156 L 171.9375 27.476562 L 183.863281 39.433594 L 173.722656 39.433594 L 164.601562 30.285156 L 164.601562 39.433594 L 156.71875 39.433594 L 156.71875 1.058594 L 164.601562 1.058594 L 164.601562 24.527344 L 172.558594 16.535156 Z M 182.796875 16.535156 "/>
41
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(9.803922%,14.117648%,25.490198%);fill-opacity:1;" d="M 206.335938 29.078125 L 189.777344 29.078125 C 189.777344 30.6875 190.292969 31.882812 191.328125 32.660156 C 192.371094 33.429688 193.5 33.8125 194.722656 33.8125 C 195.992188 33.8125 196.996094 33.648438 197.734375 33.304688 C 198.480469 32.957031 199.324219 32.28125 200.277344 31.265625 L 205.976562 34.125 C 203.605469 38.113281 199.660156 40.105469 194.140625 40.105469 C 190.703125 40.105469 187.75 38.921875 185.292969 36.5625 C 182.828125 34.195312 181.597656 31.339844 181.597656 28.007812 C 181.597656 24.679688 182.828125 21.824219 185.292969 19.445312 C 187.75 17.058594 190.703125 15.863281 194.140625 15.863281 C 197.761719 15.863281 200.699219 16.917969 202.964844 19.023438 C 205.238281 21.117188 206.375 24.117188 206.375 28.007812 C 206.375 28.550781 206.359375 28.90625 206.335938 29.078125 Z M 190 24.703125 L 198.675781 24.703125 C 198.503906 23.519531 198.035156 22.609375 197.277344 21.96875 C 196.515625 21.320312 195.542969 21 194.363281 21 C 193.058594 21 192.015625 21.34375 191.238281 22.03125 C 190.472656 22.710938 190.054688 23.601562 190 24.703125 Z M 190 24.703125 "/>
42
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(9.803922%,14.117648%,25.490198%);fill-opacity:1;" d="M 230.9375 29.078125 L 214.382812 29.078125 C 214.382812 30.6875 214.894531 31.882812 215.929688 32.660156 C 216.972656 33.429688 218.101562 33.8125 219.328125 33.8125 C 220.597656 33.8125 221.601562 33.648438 222.339844 33.304688 C 223.082031 32.957031 223.925781 32.28125 224.878906 31.265625 L 230.578125 34.125 C 228.207031 38.113281 224.261719 40.105469 218.742188 40.105469 C 215.304688 40.105469 212.355469 38.921875 209.894531 36.5625 C 207.429688 34.195312 206.199219 31.339844 206.199219 28.007812 C 206.199219 24.679688 207.429688 21.824219 209.894531 19.445312 C 212.355469 17.058594 215.304688 15.863281 218.742188 15.863281 C 222.363281 15.863281 225.300781 16.917969 227.570312 19.023438 C 229.839844 21.117188 230.976562 24.117188 230.976562 28.007812 C 230.976562 28.550781 230.964844 28.90625 230.9375 29.078125 Z M 214.605469 24.703125 L 223.28125 24.703125 C 223.105469 23.519531 222.640625 22.609375 221.878906 21.96875 C 221.117188 21.320312 220.148438 21 218.964844 21 C 217.660156 21 216.617188 21.34375 215.84375 22.03125 C 215.074219 22.710938 214.660156 23.601562 214.605469 24.703125 Z M 214.605469 24.703125 "/>
43
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(9.803922%,14.117648%,25.490198%);fill-opacity:1;" d="M 232.4375 39.433594 L 232.4375 16.535156 L 240.320312 16.535156 L 240.320312 18.945312 L 240.40625 18.945312 C 242.457031 16.890625 244.636719 15.863281 246.953125 15.863281 C 248.074219 15.863281 249.1875 16.011719 250.296875 16.3125 C 251.414062 16.609375 252.484375 17.078125 253.507812 17.703125 C 254.53125 18.324219 255.363281 19.207031 256 20.351562 C 256.636719 21.496094 256.953125 22.832031 256.953125 24.355469 L 256.953125 39.433594 L 249.085938 39.433594 L 249.085938 26.492188 C 249.085938 25.300781 248.703125 24.261719 247.941406 23.371094 C 247.191406 22.476562 246.210938 22.03125 244.996094 22.03125 C 243.804688 22.03125 242.726562 22.488281 241.761719 23.410156 C 240.800781 24.328125 240.320312 25.359375 240.320312 26.492188 L 240.320312 39.433594 Z M 232.4375 39.433594 "/>
44
- <g clip-path="url(#clip4)" clip-rule="nonzero">
45
- <g clip-path="url(#clip5)" clip-rule="nonzero">
46
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(9.803922%,14.117648%,25.490198%);fill-opacity:1;" d="M 20.25 9.90625 L 27.53125 9.90625 L 27.53125 43.507812 L 20.25 43.507812 Z M 20.25 9.90625 "/>
47
- </g>
48
- </g>
49
- <g clip-path="url(#clip6)" clip-rule="nonzero">
50
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(9.803922%,14.117648%,25.490198%);fill-opacity:1;" d="M 23.914062 23.789062 L 27.554688 23.789062 L 27.554688 43.515625 L 23.914062 43.515625 Z M 23.914062 23.789062 "/>
51
- </g>
52
- <g clip-path="url(#clip7)" clip-rule="nonzero">
53
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(9.803922%,14.117648%,25.490198%);fill-opacity:1;" d="M 20.273438 9.90625 L 23.914062 9.90625 L 23.914062 29.632812 L 20.273438 29.632812 Z M 20.273438 9.90625 "/>
54
- </g>
55
- </g>
56
- </svg>
package/axios.install.md DELETED
@@ -1,2 +0,0 @@
1
- // This file is required for axios usage and Jest compatibility.
2
- // It should be installed before using axios in the project.
package/babel.config.js DELETED
@@ -1,15 +0,0 @@
1
- module.exports = {
2
- presets: [
3
- '@babel/preset-env',
4
- [
5
- '@babel/preset-react',
6
- {
7
- runtime: 'automatic',
8
- development:
9
- process.env.BABEL_ENV === 'development' ||
10
- process.env.NODE_ENV === 'development',
11
- },
12
- ],
13
- '@babel/preset-typescript',
14
- ],
15
- };
@@ -1 +0,0 @@
1
- {"version":3,"file":"_commonjsHelpers.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"heic2any.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"heic2any2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Face Scan Square.svg.js","sources":["../../../src/assets/Face Scan Square.svg"],"sourcesContent":["export default \"assets/Face Scan Square-c5a142da630f8205.svg\""],"names":[],"mappings":";;;;;AAAA,yBAAe,IAAI,GAAG,CAAC,yCAAyC,EAAE,gRAAe,CAAC,CAAC,IAAI;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Lightbulb.svg.js","sources":["../../../src/assets/Lightbulb.svg"],"sourcesContent":["export default \"assets/Lightbulb-209595ace824e52e.svg\""],"names":[],"mappings":";;;;;AAAA,oBAAe,IAAI,GAAG,CAAC,kCAAkC,EAAE,yQAAe,CAAC,CAAC,IAAI;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Monitor Camera.svg.js","sources":["../../../src/assets/Monitor Camera.svg"],"sourcesContent":["export default \"assets/Monitor Camera-ab984ad5aef2f553.svg\""],"names":[],"mappings":";;;;;AAAA,wBAAe,IAAI,GAAG,CAAC,uCAAuC,EAAE,8QAAe,CAAC,CAAC,IAAI;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"User Hands.svg.js","sources":["../../../src/assets/User Hands.svg"],"sourcesContent":["export default \"assets/User Hands-7be3c75669cb1542.svg\""],"names":[],"mappings":";;;;;AAAA,oBAAe,IAAI,GAAG,CAAC,mCAAmC,EAAE,0QAAe,CAAC,CAAC,IAAI;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"before-document.png.js","sources":["../../../src/assets/before-document.png"],"sourcesContent":["export default \"assets/before-document-9cd9c15d2f939f85.png\""],"names":[],"mappings":";;;;;AAAA,yBAAe,IAAI,GAAG,CAAC,wCAAwC,EAAE,+QAAe,CAAC,CAAC,IAAI;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"before-passport.png.js","sources":["../../../src/assets/before-passport.png"],"sourcesContent":["export default \"assets/before-passport-2685d18b76b111d6.png\""],"names":[],"mappings":";;;;;AAAA,yBAAe,IAAI,GAAG,CAAC,wCAAwC,EAAE,+QAAe,CAAC,CAAC,IAAI;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"before-photo.png.js","sources":["../../../src/assets/before-photo.png"],"sourcesContent":["export default \"assets/before-photo-c37ca9db84978cda.png\""],"names":[],"mappings":";;;;;AAAA,sBAAe,IAAI,GAAG,CAAC,qCAAqC,EAAE,4QAAe,CAAC,CAAC,IAAI;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"before-verso.png.js","sources":["../../../src/assets/before-verso.png"],"sourcesContent":["export default \"assets/before-verso-2c4cc6bd96cb3fe5.png\""],"names":[],"mappings":";;;;;AAAA,sBAAe,IAAI,GAAG,CAAC,qCAAqC,EAAE,4QAAe,CAAC,CAAC,IAAI;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"check.svg.js","sources":["../../../src/assets/check.svg"],"sourcesContent":["export default \"assets/check-d7a32b83ddff3741.svg\""],"names":[],"mappings":";;;;;AAAA,gBAAe,IAAI,GAAG,CAAC,8BAA8B,EAAE,qQAAe,CAAC,CAAC,IAAI;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"shield_magic_link.svg.js","sources":["../../../../src/assets/icons/shield_magic_link.svg"],"sourcesContent":["export default \"assets/shield_magic_link-29277e29974857a3.svg\""],"names":[],"mappings":";;;;;AAAA,iBAAe,IAAI,GAAG,CAAC,2CAA2C,EAAE,uRAAe,CAAC,CAAC,IAAI;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"selfietake.svg.js","sources":["../../../src/assets/selfietake.svg"],"sourcesContent":["export default \"assets/selfietake-adcc92438f482fac.svg\""],"names":[],"mappings":";;;;;AAAA,iBAAe,IAAI,GAAG,CAAC,mCAAmC,EAAE,0QAAe,CAAC,CAAC,IAAI;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"DatakeenSession.js","sources":["../../../../src/components/DatakeenSession.tsx"],"sourcesContent":["import { setSessionCredential } from '../services/sessionCredentials';\nimport { useEffect, useLayoutEffect, useMemo, useRef, useState } from \"react\";\nimport type { CSSProperties } from \"react\";\nimport type { DatakeenSessionProps } from \"../types/session\";\nimport Paper from \"./ui/Paper\";\nimport useIsMobile from \"../hooks/useIsMobile\";\nimport PoweredBy from \"./ui/PoweredBy\";\nimport SessionExpired from \"./session/SessionExpired\";\nimport { useRouteCSS } from \"../hooks/useRouteCSS\";\nimport { DocumentProvider } from \"../context/DocumentContext\";\nimport { ConfigProvider } from \"../context/ConfigContext\";\nimport { setSessionStore } from \"../context/SessionContext\";\n\n// Hooks\nimport { useSessionData } from \"../hooks/useSessionData\";\nimport { useStepNavigation } from \"../hooks/useStepNavigation\";\nimport { useStepCSS } from \"../hooks/useStepCSS\";\nimport { useTemplateLoader } from \"../hooks/useTemplateLoader\";\nimport { useClientInfo } from \"../hooks/useClientInfo\";\nimport { useI18n } from \"../hooks/useI18n\";\nimport { getOrderedJourneySteps } from \"../services/sessionService\";\n\n// Components\nimport NoSessionIdState from \"./states/NoSessionIdState\";\nimport LoadingState from \"./states/LoadingState\";\nimport ErrorState from \"./states/ErrorState\";\nimport SessionContent from \"./session/SessionContent\";\n\n/**\n * DatakeenSession Component\n *\n * The main component of the Datakeen SDK that manages the multi-step verification flow.\n * This component handles the different steps of the session process, including:\n * - Initial welcome screen\n * - User information collection\n * - Country selection for JDI verification\n * - Mobile redirect when selfie is required\n *\n * The component maintains internal state for the current step and user input data,\n * progressing through the verification journey as the user completes each step.\n *\n * @param {DatakeenSessionProps} props - Component props\n * @param {string} props.sessionId - Unique identifier for the verification session\n * @param {SessionConfig} props.sessionConfig - Configuration for the session (e.g., selfie: true)\n * @param {string} props.apiBaseUrl - Optional API base URL for dynamic environment configuration\n * @returns {JSX.Element} A Paper-wrapped container with the appropriate step component based on current state\n */\nconst DatakeenSession = ({\n sessionId,\n sessionToken,\n sessionConfig,\n apiBaseUrl,\n}: DatakeenSessionProps) => {\n useLayoutEffect(() => {\n const fragmentToken = typeof window !== 'undefined' ? new URLSearchParams(window.location.hash.slice(1)).get('sessionToken') : null;\n setSessionCredential(sessionId, sessionToken || sessionConfig?.sessionToken || fragmentToken || undefined);\n return () => setSessionCredential(sessionId);\n }, [sessionId, sessionToken, sessionConfig?.sessionToken]);\n const isMobile = useIsMobile();\n const { info: clientInfo, isLoaded: clientInfoLoaded } = useClientInfo();\n const { currentLanguage } = useI18n();\n\n // Load base CSS and UI components CSS that are always needed\n useRouteCSS(\"ui-components\");\n\n // Session data management\n const {\n session,\n setSession,\n loading,\n setLoading,\n error,\n isExpired,\n userInput,\n setUserInput,\n contactInfo,\n setContactInfo,\n loadSession,\n handleRetrySession,\n } = useSessionData(sessionId, clientInfo, clientInfoLoaded);\n\n // Step navigation management\n const { step, stepObject, history } = useStepNavigation(\n sessionId,\n session?.status,\n session?.currentStep,\n session?.template,\n );\n\n // Load route-specific CSS based on current step\n useStepCSS(step, session);\n\n // Template loading logic\n useTemplateLoader(step, sessionId, session, loading, setSession, setLoading);\n\n // Load session data on component mount\n useEffect(() => {\n loadSession();\n }, [sessionId, sessionConfig]);\n\n // Update global session store whenever session data changes\n useEffect(() => {\n const sanitizedSessionForGlobalStore = session\n ? {\n ...session,\n token: \"\",\n userInput: {},\n contactInfo: undefined,\n }\n : null;\n\n setSessionStore({\n session: sanitizedSessionForGlobalStore,\n loading,\n error,\n isExpired,\n userInput: {},\n contactInfo: { email: \"\", phoneNumber: \"\" },\n });\n }, [session, loading, error, isExpired]);\n\n // Handle initial step setting when session loads.\n // Quand la session est déjà terminée (ex: rechargement), on positionne le step\n // sur le nœud `end`. On indexe sur getOrderedJourneySteps (start filtré + tri par\n // `order`) — MÊME référentiel que TemplateNodeRenderer — sinon l'index calculé\n // pointe sur un autre nœud que celui rendu (ex: external-verification, qui se\n // ré-exécute et part en boucle).\n // Idempotent : on ne re-navigue que si on n'est pas déjà sur le bon step, et on\n // resserre les dépendances pour ne pas se re-déclencher à chaque mutation de session\n // (userInput, retryCounts, polling…) — ce qui relançait la boucle.\n useEffect(() => {\n if (session?.status !== \"ended\" || !session.template) {\n return;\n }\n const orderedSteps = getOrderedJourneySteps(session.template);\n const endNodeIndex = orderedSteps.findIndex(\n (node) => node.type === \"end\",\n );\n const targetStep =\n endNodeIndex !== -1 ? 1 + endNodeIndex : 1 + orderedSteps.length;\n\n if (stepObject.step !== targetStep) {\n // skipHistory: repositionnement technique, pas une étape utilisateur\n // (évite aussi que goBack() ne ramène sur un nœud auto-exécutant).\n stepObject.setStep(targetStep, true);\n }\n // Dépendances volontairement resserrées à status + template.id (cf. commentaire\n // ci-dessus) : ne pas inclure `session`/`stepObject` qui relanceraient la boucle.\n }, [session?.status, session?.template?.id]);\n\n if (!sessionId) {\n return <NoSessionIdState />;\n }\n\n // PoweredBy de DatakeenSession : uniquement pour les états spéciaux (loading/error/expired)\n // Les pages normales utilisent MobilePageLayout qui gère son propre PoweredBy\n const showMobilePoweredBy = isMobile && (loading || !!error || isExpired);\n const showDesktopPoweredBy = !isMobile && !loading && !error && !isExpired;\n const poweredByRef = useRef<HTMLDivElement | null>(null);\n const [poweredByHeight, setPoweredByHeight] = useState(0);\n\n useLayoutEffect(() => {\n if (typeof window === \"undefined\" || !showMobilePoweredBy) {\n setPoweredByHeight(0);\n return;\n }\n\n const updateHeight = () => {\n if (poweredByRef.current) {\n setPoweredByHeight(poweredByRef.current.offsetHeight);\n }\n };\n\n updateHeight();\n window.addEventListener(\"resize\", updateHeight);\n\n return () => {\n window.removeEventListener(\"resize\", updateHeight);\n };\n }, [showMobilePoweredBy]);\n\n const mobileRootStyle: CSSProperties = {\n [\"--dk-mobile-footer-offset\" as any]: `${poweredByHeight}px`,\n };\n\n const renderSessionContent = () => {\n if (loading) {\n return <LoadingState />;\n }\n\n if (error) {\n return <ErrorState error={error} />;\n }\n\n if (isExpired) {\n return <SessionExpired onRetry={handleRetrySession} />;\n }\n\n return (\n <SessionContent\n step={step}\n loading={loading}\n session={session}\n sessionId={sessionId}\n stepObject={stepObject}\n stepHistory={history}\n userInput={userInput}\n setUserInput={setUserInput}\n contactInfo={contactInfo}\n setContactInfo={setContactInfo}\n />\n );\n };\n\n const mobileScrollPadding = showMobilePoweredBy\n ? `calc(${poweredByHeight}px + env(safe-area-inset-bottom, 0px))`\n : \"env(safe-area-inset-bottom, 0px)\";\n\n const currentTemplateNode = useMemo(() => {\n if (!session?.template || step < 1) {\n return null;\n }\n\n const templateIndex = Math.floor(step - 1);\n const orderedSteps = getOrderedJourneySteps(session.template);\n return orderedSteps[templateIndex] || null;\n }, [session?.template, step]);\n\n const shouldUseWideDesktopLayout =\n currentTemplateNode?.type === \"information-input\" &&\n currentTemplateNode.informationType === \"custom\" &&\n (currentTemplateNode.customFields || []).some(\n (field) => field.valueType === \"list\",\n );\n\n const [isRecordingSelfie, setIsRecordingSelfie] = useState(false);\n useEffect(() => {\n if (typeof document === \"undefined\") return;\n const update = () =>\n setIsRecordingSelfie(\n document.body.classList.contains(\"recording-selfie\"),\n );\n update();\n const observer = new MutationObserver(update);\n observer.observe(document.body, {\n attributes: true,\n attributeFilter: [\"class\"],\n });\n return () => observer.disconnect();\n }, []);\n\n const isCaptureStep =\n currentTemplateNode?.type === \"biometric-capture\" ||\n currentTemplateNode?.type === \"selfie-capture\" ||\n currentTemplateNode?.type === \"document-collection\" || // Could be upload, but safer to allow full height\n currentTemplateNode?.type === \"controle-jdi\";\n\n const btnBg = session?.template?.buttonBgColor ?? \"#11E5C5\";\n const btnText = session?.template?.buttonTextColor ?? \"#3C3C40\";\n\n return (\n <ConfigProvider apiBaseUrl={apiBaseUrl}>\n <DocumentProvider>\n <div\n className=\"sdk-session notranslate flex-1 flex flex-col\"\n lang={currentLanguage}\n translate=\"no\"\n style={\n {\n [\"--dk-btn-bg\" as string]: btnBg,\n [\"--dk-btn-text\" as string]: btnText,\n ...(isMobile\n ? {\n [\"--dk-mobile-scroll-padding\" as string]:\n mobileScrollPadding,\n }\n : undefined),\n } as CSSProperties\n }\n >\n {isMobile ? (\n <div\n className=\"flex h-full w-full flex-col bg-white\"\n style={mobileRootStyle}\n >\n <div\n className={`flex flex-1 min-h-0 flex-col ${isCaptureStep ? \"\" : \"overflow-y-auto\"}`}\n style={{\n paddingBottom: isCaptureStep\n ? \"0\"\n : \"var(--dk-mobile-scroll-padding, env(safe-area-inset-bottom, 0px))\",\n }}\n >\n <div className=\"flex flex-1 flex-col min-h-0\">\n {renderSessionContent()}\n </div>\n </div>\n {showMobilePoweredBy && (\n <div\n className=\"bg-white px-4 pt-3 pb-4 sm:px-6 sm:pt-6 sm:pb-6\"\n style={{\n paddingBottom:\n \"calc(env(safe-area-inset-bottom, 0px) + 0.5rem)\",\n }}\n ref={poweredByRef}\n >\n <PoweredBy\n logo={session?.template?.logo}\n text={session?.template?.logo ? \"par\" : undefined}\n />\n </div>\n )}\n </div>\n ) : (\n <div className=\"flex items-center justify-center w-full min-h-screen bg-gray-100 py-12\">\n <div className=\"flex flex-col items-center justify-center\">\n <Paper\n className={`dk-session-paper flex flex-col h-[800px] px-8 py-10 bg-white rounded-2xl shadow-xl z-10 ${isRecordingSelfie\n ? \"\"\n : shouldUseWideDesktopLayout\n ? \"w-[98vw] max-w-[1500px]\"\n : \"w-[600px]\"\n }`}\n style={\n isRecordingSelfie\n ? { width: \"min(66vw, 942px)\" }\n : undefined\n }\n >\n <div className=\"flex-1 w-full h-full overflow-y-auto\">\n {renderSessionContent()}\n </div>\n </Paper>\n {showDesktopPoweredBy && (\n <div className=\"pt-6 text-center\">\n <PoweredBy\n logo={session?.template?.logo}\n text={session?.template?.logo ? \"par\" : undefined}\n />\n </div>\n )}\n </div>\n </div>\n )}\n </div>\n </DocumentProvider>\n </ConfigProvider>\n );\n};\n\nexport default DatakeenSession;\n"],"names":["useLayoutEffect","setSessionCredential","useIsMobile","useClientInfo","useI18n","useRouteCSS","useSessionData","useStepNavigation","useStepCSS","useTemplateLoader","useEffect","setSessionStore","getOrderedJourneySteps","_jsx","NoSessionIdState","useRef","useState","LoadingState","ErrorState","SessionExpired","SessionContent","useMemo","ConfigProvider","DocumentProvider","__assign","_jsxs","PoweredBy","Paper"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocumentCollection.js","sources":["../../../../../src/components/document-collection/DocumentCollection.tsx"],"sourcesContent":["import { useState, useEffect } from \"react\";\nimport {\n SessionTemplate,\n SessionTemplateNode,\n stepObject,\n} from \"../../types/session\";\nimport type { onUploadFiles } from \"../../types/uploadFiles\";\nimport type { Prediction } from \"../../utils/apiAnalysis\";\nimport DocumentCollectionIntroduction from \"./DocumentCollectionIntroduction\";\nimport DocumentCollectionSelection from \"./DocumentCollectionSelection\";\nimport DocumentCollectionUpload from \"./DocumentCollectionUpload\";\nimport DocumentCollectionMethodSelection from \"./DocumentCollectionMethodSelection\";\nimport { DocumentError, DocumentProcessing, DocumentSuccess } from \".\";\nimport JDIProcessing from \"../jdi/JDIProcessing\";\nimport JDISuccess from \"../jdi/JDISuccess\";\nimport JDIError from \"../jdi/JDIError\";\nimport BeforePhoto from \"../id-check/BeforePhoto\";\nimport BeforeVersoPhoto from \"../id-check/BeforeVersoPhoto\";\nimport Photo from \"../id-check/Photo\";\nimport PhotoPreview from \"../id-check/PhotoPreview\";\nimport PhotoConfirmation from \"../id-check/PhotoConfirmation\";\nimport { useI18n } from \"../../hooks/useI18n\";\nimport ButtonDesktop from \"../ui/ButtonDesktop\";\nimport { updateSessionCurrentStep } from \"../../services/sessionService\";\nimport { analyzeFiles } from \"../../services/analysis\";\nimport {\n getNodeRetryCount,\n incrementNodeRetryCount,\n} from \"../../services/retryService\";\nimport { getSession } from \"../../context/SessionContext\";\nimport {\n resizeAfterCapture,\n dataUrlToBlob,\n blobToDataUrl,\n} from \"../../utils/imageProcessing\";\n\nexport type DocumentTypeSide = \"ONE_FILE\" | \"RECTO_VERSO\";\n\nexport interface NodeDocumentCollection {\n id: string;\n allowedDocumentTypes: Array<{\n name: string;\n id: string;\n collectOnly?: boolean;\n }>;\n allowedAddingMethods: Array<'download' | 'picture'>;\n introductionPage: {\n title: string;\n description: string;\n };\n documentSelection: {\n title: string;\n description: string;\n };\n allowResubmission: boolean;\n maxResubmissionAttempts?: number;\n /** Paramétrable par nœud dans le journey builder. Absent/true = comportement\n * actuel inchangé (bouton \"Continuer quand même\" proposé) ; false = masqué. */\n allowContinueOnFailure?: boolean;\n}\n\ninterface AllowedDocumentType {\n id: string;\n name: string;\n side?: DocumentTypeSide;\n collectOnly?: boolean;\n}\n\ninterface DocumentCollectionProps {\n stepObject: stepObject;\n sessionId: string;\n node: NodeDocumentCollection;\n onContinueOnPC?: () => void;\n allowedDocumentTypes: AllowedDocumentType[];\n allowedAddingMethods: string[];\n template?: SessionTemplate;\n introductionPage?: {\n title?: string;\n description?: string;\n };\n documentSelection?: {\n title?: string;\n description?: string;\n };\n allowResubmission?: boolean;\n maxResubmissionAttempts?: number;\n}\n\n/**\n * DocumentCollection component manages the multi-step document collection flow.\n * It handles document type selection, document upload, processing, and error/success handling.\n *\n * @component\n * @param {Object} props - Component props.\n * @param {stepObject} props.stepObject - Object managing the current step in the parent flow, with setStep and step properties.\n * @param {string} props.sessionId - Unique identifier for the current session.\n * @param {NodeDocumentCollection} props.node - Node configuration containing allowed document types and page content.\n * @param {() => void} [props.onContinueOnPC] - Optional callback to continue the process on a PC.\n * @param {AllowedDocumentType[]} props.allowedDocumentTypes - List of document types accepted for collection.\n * @param {string[]} props.allowedAddingMethods - List of allowed methods for adding documents (download, picture, etc.).\n * @param {Object} [props.introductionPage] - Optional introduction page configuration with title and description.\n * @param {Object} [props.documentSelection] - Optional document selection page configuration with title and description.\n *\n * @returns {JSX.Element} Multi-step document collection UI, rendering different subcomponents based on the current step.\n *\n * @remarks\n * - Manages internal state for step navigation, document selection, file uploads, and error handling.\n * - Displays error messages and fallback UI for invalid navigation.\n * - Uses translation hooks for internationalization support.\n */\nconst DocumentCollection = ({\n stepObject,\n sessionId,\n node,\n template,\n onContinueOnPC,\n allowedDocumentTypes,\n allowedAddingMethods,\n introductionPage,\n documentSelection,\n allowResubmission,\n maxResubmissionAttempts,\n}: DocumentCollectionProps) => {\n const { t } = useI18n();\n const { session } = getSession();\n\n const [currentStep, setCurrentStep] = useState(introductionPage?.title ? 0 : 1);\n const [fileUploaded, setFileUploaded] = useState<onUploadFiles | null>(null);\n const [selectedDocumentType, setSelectedDocumentType] = useState<string>(\"\");\n const [analysisData, setAnalysisData] = useState<Prediction[] | null>(null);\n const [errorCode, setErrorCode] = useState<string | null>(null);\n const [blockContinue, setBlockContinue] = useState(false);\n const [selectedMethod, setSelectedMethod] = useState<\"download\" | \"picture\" | null>(null);\n const [photoSubStep, setPhotoSubStep] = useState<\"before-recto\" | \"recto\" | \"preview-recto\" | \"before-verso\" | \"verso\" | \"preview-verso\" | \"confirmation\">(\"before-recto\");\n const [capturedImages, setCapturedImages] = useState<Record<string, string>>({});\n\n // Initialize retry count from session data\n const [retryCount, setRetryCount] = useState(() => {\n return getNodeRetryCount(session, node.id);\n });\n\n // Update retry count when session loads/changes\n useEffect(() => {\n if (session) {\n const sessionRetryCount = getNodeRetryCount(session, node.id);\n setRetryCount(sessionRetryCount);\n }\n }, [session, node.id]);\n\n // Check retry limits on mount/reload - if retries exhausted, show error page\n useEffect(() => {\n // Special case: if allowResubmission is false and retryCount > 0, show error immediately\n if (allowResubmission === false && retryCount > 0) {\n setCurrentStep(6);\n return;\n }\n\n // Normal case: check against maxResubmissionAttempts\n if (retryCount > 0 && !isRetryAllowed()) {\n // User has exhausted retries, redirect to error page\n setCurrentStep(6);\n }\n }, [retryCount, allowResubmission]);\n\n const handleContinueFromIntroduction = () => {\n setCurrentStep(1);\n };\n\n const handleDocumentTypeSelect = (docType: string, files?: onUploadFiles) => {\n setSelectedDocumentType(docType);\n\n if (files) {\n // `docType` explicitement, pas l'état : `setSelectedDocumentType` ne prend\n // effet qu'au rendu suivant, et la lecture depuis l'état renvoyait donc le\n // type précédent — une pièce en collecte seule partait alors en analyse.\n handleDocumentUpload(files, docType);\n return;\n }\n\n const isPictureAllowed = allowedAddingMethods.includes(\"picture\");\n const isDownloadAllowed = allowedAddingMethods.includes(\"download\");\n\n if (isPictureAllowed && isDownloadAllowed) {\n setCurrentStep(2); // Method selection\n } else {\n const method = isPictureAllowed ? \"picture\" : \"download\";\n handleMethodSelect(method);\n }\n };\n\n const handleMethodSelect = (method: \"download\" | \"picture\") => {\n setSelectedMethod(method);\n if (method === \"picture\") {\n setPhotoSubStep(\"before-recto\");\n setCapturedImages({});\n }\n setCurrentStep(3); // Go to action (Upload screen or Photo flow)\n };\n\n const handlePhotoCapture = async (imageData: string, side: \"recto\" | \"verso\") => {\n try {\n const imageBlob = dataUrlToBlob(imageData);\n const processedBlob = await resizeAfterCapture(imageBlob);\n const processedDataUrl = await blobToDataUrl(processedBlob);\n setCapturedImages((prev) => ({ ...prev, [side]: processedDataUrl }));\n } catch (error) {\n console.error(`[DocumentCollection] Failed to process photo for ${side}:`, error);\n setCapturedImages((prev) => ({ ...prev, [side]: imageData }));\n }\n setPhotoSubStep(side === \"recto\" ? \"preview-recto\" : \"preview-verso\");\n };\n\n const handlePhotoConfirmation = () => {\n if (capturedImages.recto) {\n const files: onUploadFiles = {\n front: capturedImages.recto,\n back: capturedImages.verso || null,\n };\n // Même aiguillage que pour un téléversement : ce chemin passait\n // directement à l'analyse, donc une pièce en collecte seule capturée en\n // photo déclenchait une analyse et affichait une erreur au candidat.\n handleDocumentUpload(files);\n }\n };\n\n const handleDocumentUpload = (files: onUploadFiles, docTypeId?: string) => {\n setFileUploaded(files);\n\n const effectiveDocType = docTypeId ?? selectedDocumentType;\n\n // Check if the selected document type is collectOnly — skip processing step\n const selectedDoc = allowedDocumentTypes.find((d) => d.id === effectiveDocType);\n if (selectedDoc?.collectOnly) {\n handleCollectOnlyUpload(files, effectiveDocType);\n return;\n }\n\n // Check if retry limit is reached before processing\n if (!isRetryAllowed() && retryCount > 0) {\n // Skip processing and go directly to error page\n setCurrentStep(6);\n } else {\n // Proceed to processing\n setCurrentStep(4);\n }\n };\n\n const handleProcessingComplete = (\n success: boolean,\n currentRetryCount?: number,\n apiAnalysisData?: Prediction[] | null,\n shouldBlockContinue?: boolean,\n ) => {\n setBlockContinue(shouldBlockContinue === true);\n if (apiAnalysisData) {\n setAnalysisData(apiAnalysisData);\n if (apiAnalysisData.length > 0) {\n setErrorCode(apiAnalysisData[0].code);\n }\n }\n\n if (success) {\n // Always follow the graph edges. Arithmetic fallback only when no template is available\n // (out of the normal TemplateNodeRenderer flow).\n if (template) {\n stepObject.goToNextStep(node.id, template);\n } else {\n stepObject.setStep(stepObject.step + 1);\n }\n setCurrentStep(5);\n } else {\n setRetryCount((prev) => {\n const newCount = prev + 1;\n incrementNodeRetryCount(sessionId, node.id, prev).catch((error) => {\n console.error(\"Failed to update retry count in session:\", error);\n });\n return newCount;\n });\n setCurrentStep(6);\n }\n };\n\n const handleCollectOnlyUpload = async (\n files: onUploadFiles,\n docTypeId: string = selectedDocumentType,\n ) => {\n try {\n await analyzeFiles(sessionId, node.id, files, docTypeId, {\n documentTypeKey: docTypeId,\n collectOnly: true,\n enablePolling: false,\n });\n handleProcessingComplete(true, retryCount, null);\n } catch (error) {\n console.error(\"[DocumentCollection] collectOnly upload failed:\", error);\n handleProcessingComplete(false, retryCount, null);\n }\n };\n\n const handleRetryFromError = () => {\n setBlockContinue(false);\n setCurrentStep(1);\n setSelectedMethod(null);\n setCapturedImages({});\n setFileUploaded(null);\n };\n\n // Check if retry is allowed based on configuration\n const isRetryAllowed = () => {\n if (allowResubmission === undefined) return true;\n if (!allowResubmission) return false;\n if (maxResubmissionAttempts !== undefined) {\n return retryCount <= maxResubmissionAttempts;\n }\n return true;\n };\n\n // Node progression must follow the graph edges. `onContinueOnPC` is reserved for the\n // QR / mobile→PC redirection and must NOT drive node progression (it navigates by raw step\n // arithmetic, which breaks when several nodes share the same `order`).\n const handleContinueAnyway = () => {\n if (template) {\n stepObject.goToNextStep(node.id, template);\n } else if (onContinueOnPC) {\n onContinueOnPC();\n } else {\n stepObject.setStep(stepObject.step + 1);\n }\n };\n\n const handleSuccessContinue = () => {\n if (template) {\n stepObject.goToNextStep(node.id, template);\n } else if (onContinueOnPC) {\n onContinueOnPC();\n } else {\n stepObject.setStep(stepObject.step + 1);\n }\n };\n\n const handleBack = () => {\n if (currentStep === 0) {\n // Inter-node back navigation goes through the history-aware goBack(), never raw arithmetic.\n stepObject.goBack();\n } else {\n setCurrentStep(currentStep - 1);\n }\n };\n\n switch (currentStep) {\n case 0:\n return (\n <DocumentCollectionIntroduction\n onContinue={handleContinueFromIntroduction}\n onBack={stepObject.canGoBack ? handleBack : undefined}\n introductionPage={introductionPage}\n />\n );\n case 1:\n return (\n <DocumentCollectionSelection\n onContinue={handleDocumentTypeSelect}\n onBack={handleBack}\n allowedDocumentTypes={allowedDocumentTypes}\n allowedAddingMethods={allowedAddingMethods}\n stepObject={stepObject}\n documentSelection={documentSelection}\n />\n );\n case 2:\n return (\n <DocumentCollectionMethodSelection\n onMethodSelect={handleMethodSelect}\n onBack={handleBack}\n title={documentSelection?.title}\n description={documentSelection?.description}\n />\n );\n case 3:\n if (selectedMethod === \"download\") {\n return (\n <DocumentCollectionUpload\n selectedDocumentType={selectedDocumentType}\n allowedDocumentTypes={allowedDocumentTypes}\n onUpload={handleDocumentUpload}\n onBack={handleBack}\n documentSelection={documentSelection}\n sessionId={sessionId}\n />\n );\n } else {\n // Photo flow\n const requiresTwoSides = allowedDocumentTypes.find((dt) => dt.id === selectedDocumentType)?.side === \"RECTO_VERSO\";\n\n switch (photoSubStep) {\n case \"before-recto\":\n return <BeforePhoto setStep={() => setPhotoSubStep(\"recto\")} isSingleSided={!requiresTwoSides} onBack={handleBack} />;\n case \"recto\":\n return <Photo onCapture={(img) => handlePhotoCapture(img, \"recto\")} automaticCapture={false} maskType=\"document\" />;\n case \"preview-recto\":\n return (\n <PhotoPreview\n imageUrl={capturedImages.recto}\n side=\"recto\"\n isSingleSided={!requiresTwoSides}\n onValidate={() => setPhotoSubStep(requiresTwoSides ? \"before-verso\" : \"confirmation\")}\n onRetake={() => {\n setCapturedImages((prev) => { const next = { ...prev }; delete next.recto; return next; });\n setPhotoSubStep(\"recto\");\n }}\n />\n );\n case \"before-verso\":\n return <BeforeVersoPhoto setStep={() => setPhotoSubStep(\"verso\")} />;\n case \"verso\":\n return <Photo onCapture={(img) => handlePhotoCapture(img, \"verso\")} automaticCapture={false} maskType=\"document\" />;\n case \"preview-verso\":\n return (\n <PhotoPreview\n imageUrl={capturedImages.verso}\n side=\"verso\"\n onValidate={() => setPhotoSubStep(\"confirmation\")}\n onRetake={() => {\n setCapturedImages((prev) => { const next = { ...prev }; delete next.verso; return next; });\n setPhotoSubStep(\"verso\");\n }}\n />\n );\n case \"confirmation\":\n return (\n <PhotoConfirmation\n imageUrl={capturedImages.recto}\n versoImageUrl={capturedImages.verso}\n requiresTwoSides={requiresTwoSides}\n onConfirm={handlePhotoConfirmation}\n onRetry={() => {\n setPhotoSubStep(\"before-recto\");\n setCapturedImages({});\n }}\n onRetryAfterProcessing={() => {\n setCurrentStep(1);\n setPhotoSubStep(\"before-recto\");\n setCapturedImages({});\n }}\n fileUploaded={fileUploaded}\n isSingleSided={!requiresTwoSides}\n />\n );\n }\n }\n return null;\n\n case 4:\n return (\n <DocumentProcessing\n documentType={selectedDocumentType}\n onProcessingComplete={handleProcessingComplete}\n fileUploaded={fileUploaded}\n documentTypeId={selectedDocumentType}\n retryCount={retryCount}\n nodeId={node.id}\n />\n );\n case 5:\n return (\n <DocumentSuccess\n documentType={selectedDocumentType}\n documentTypeLabel={t(allowedDocumentTypes.find((dt) => dt.id === selectedDocumentType)?.name || \"\")}\n onContinue={handleSuccessContinue}\n errorCode={errorCode || undefined}\n successDetails={{\n nextSteps: {\n title: t(\"success.next_steps\", \"Prochaines étapes\"),\n description: t(\n \"success.next_steps_description\",\n \"Vous pouvez maintenant continuer le processus de vérification en suivant les instructions à l'écran.\"\n ),\n },\n }}\n />\n );\n case 6:\n return (\n <DocumentError\n documentType={selectedDocumentType}\n onRetry={handleRetryFromError}\n onContinueAnyway={\n node.allowContinueOnFailure === false\n ? undefined\n : handleContinueAnyway\n }\n retryCount={retryCount}\n predictions={analysisData || undefined}\n errorCode={errorCode || undefined}\n allowResubmission={allowResubmission}\n maxResubmissionAttempts={maxResubmissionAttempts}\n isRetryAllowed={isRetryAllowed()}\n blockContinue={blockContinue}\n />\n );\n\n default:\n console.error(`Invalid document collection step: ${currentStep} `);\n return (\n <div className=\"flex flex-col items-center justify-center h-full p-4 text-center\">\n <div className=\"text-red-500 text-4xl mb-4\">⚠️</div>\n <h2 className=\"text-xl font-bold text-red-600 mb-2\">\n {t(\"document_collection.navigation_error.title\", \"Erreur de navigation\")}\n </h2>\n <p className=\"text-gray-600 mb-4\">\n {t(\"document_collection.navigation_error.description\", \"Étape non valide. Veuillez recommencer.\")}\n </p>\n <ButtonDesktop\n type=\"back\"\n className=\"w-full\"\n onClick={() => setCurrentStep(0)}\n >\n {t(\"document_collection.navigation_error.back\", \"Retour au début\")}\n </ButtonDesktop>\n </div>\n );\n }\n};\n\nexport default DocumentCollection;\n"],"names":["useI18n","getSession","useState","getNodeRetryCount","useEffect","__awaiter","dataUrlToBlob","resizeAfterCapture","blobToDataUrl","incrementNodeRetryCount","__spreadArray","analyzeFiles","_jsx","DocumentCollectionIntroduction","DocumentCollectionSelection","DocumentCollectionMethodSelection","DocumentCollectionUpload","BeforePhoto","Photo","PhotoPreview","__assign","BeforeVersoPhoto","PhotoConfirmation","DocumentProcessing","DocumentSuccess","DocumentError","_jsxs","ButtonDesktop"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocumentCollectionIntroduction.js","sources":["../../../../../src/components/document-collection/DocumentCollectionIntroduction.tsx"],"sourcesContent":["import Title from \"../ui/Title\";\nimport Subtitle from \"../ui/Subtitle\";\nimport Button from \"../ui/Button\";\nimport PageActions from \"../ui/PageActions\";\nimport { beforeDocumentIcon } from \"../../assets\";\nimport { useI18n } from \"../../hooks/useI18n\";\nimport MobilePageLayout from \"../ui/MobilePageLayout\";\n\ninterface DocumentCollectionIntroductionProps {\n onContinue: () => void;\n onBack?: () => void;\n introductionPage?: {\n title?: string;\n description?: string;\n };\n}\n\nconst DocumentCollectionIntroduction = ({\n onContinue,\n onBack,\n introductionPage,\n}: DocumentCollectionIntroductionProps) => {\n // Use provided values or fallback to defaults (use i18n keys)\n const { t } = useI18n();\n const title =\n introductionPage?.title ||\n t(\"document_upload.selection_title\");\n const description =\n introductionPage?.description ||\n t(\"document_upload.selection_description\");\n\n return (\n <MobilePageLayout\n footer={\n <PageActions\n primary={\n <Button onClick={onContinue}>\n {t(\"buttons.continue\")}\n </Button>\n }\n secondary={onBack ? (\n <Button variant=\"secondary\" onClick={onBack}>\n {t(\"buttons.back\")}\n </Button>\n ) : undefined}\n />\n }\n >\n <div className=\"px-4 py-6 md:px-8 md:py-8\">\n <div className=\"w-full max-w-md mx-auto space-y-6\">\n {/* Header */}\n <div className=\"text-center space-y-4\">\n <Title className=\"text-xl md:text-2xl lg:text-3xl\">{title}</Title>\n <Subtitle className=\"text-sm md:text-base text-gray-600 leading-relaxed whitespace-pre-line\">\n {description}\n </Subtitle>\n </div>\n\n {/* Document collection illustration */}\n <div className=\"flex justify-center py-6\">\n <img\n src={beforeDocumentIcon}\n alt={t(\"document_upload.selection_title\")}\n className=\"max-w-full h-auto object-contain max-h-[25vh]\"\n />\n </div>\n\n {/* Information box */}\n <div className=\"bg-blue-50 border border-blue-200 rounded-lg p-4\">\n <div className=\"flex\">\n <div className=\"flex-shrink-0\">\n <svg\n className=\"h-5 w-5 text-blue-400\"\n fill=\"currentColor\"\n viewBox=\"0 0 20 20\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n d=\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z\"\n clipRule=\"evenodd\"\n />\n </svg>\n </div>\n <div className=\"ml-3\">\n <h3 className=\"text-sm font-medium text-blue-800\">\n {t(\"jdi.document_selection.info_title\")}\n </h3>\n <div className=\"mt-2 text-sm text-blue-700\">\n <ul className=\"list-disc pl-5 space-y-1\">\n <li>{t(\"jdi.document_upload.info_point1\")}</li>\n <li>{t(\"jdi.document_upload.accepted_formats\")}</li>\n <li>{t(\"jdi.document_upload.max_size_label\")} {t(\"jdi.document_upload.max_size\")}</li>\n </ul>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </MobilePageLayout>\n );\n};\n\nexport default DocumentCollectionIntroduction;\n"],"names":["useI18n","_jsx","MobilePageLayout","PageActions","Button","_jsxs","Title","Subtitle","beforeDocumentIcon"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocumentCollectionMethodSelection.js","sources":["../../../../../src/components/document-collection/DocumentCollectionMethodSelection.tsx"],"sourcesContent":["import React from \"react\";\nimport { Camera, Upload } from \"lucide-react\";\nimport { useI18n } from \"../../hooks/useI18n\";\nimport Title from \"../ui/Title\";\nimport Subtitle from \"../ui/Subtitle\";\nimport Button from \"../ui/Button\";\nimport PageActions from \"../ui/PageActions\";\nimport MobilePageLayout from \"../ui/MobilePageLayout\";\n\ninterface DocumentCollectionMethodSelectionProps {\n onMethodSelect: (method: \"download\" | \"picture\") => void;\n onBack?: () => void;\n title?: string;\n description?: string;\n}\n\nconst DocumentCollectionMethodSelection = ({\n onMethodSelect,\n onBack,\n title,\n description,\n}: DocumentCollectionMethodSelectionProps) => {\n const { t } = useI18n();\n\n return (\n <MobilePageLayout\n footer={\n <PageActions\n primary={onBack ? (\n <Button variant=\"secondary\" onClick={onBack}>\n {t(\"buttons.back\", \"Retour\")}\n </Button>\n ) : undefined}\n />\n }\n >\n <div className=\"px-4 py-6 pt-11 md:px-8 md:py-8\">\n <div className=\"w-full max-w-md mx-auto space-y-6\">\n <div className=\"text-center space-y-4\">\n <Title className=\"text-xl md:text-2xl lg:text-3xl\">\n {title || t(\"document_check.method_selection.title\", \"Choisissez une méthode\")}\n </Title>\n <Subtitle className=\"text-sm text-gray-600 leading-relaxed\">\n {description || t(\"document_check.method_selection.subtitle\", \"Comment souhaitez-vous ajouter votre document ?\")}\n </Subtitle>\n </div>\n\n <div className=\"grid gap-4\">\n <button\n onClick={() => onMethodSelect(\"picture\")}\n className=\"flex items-center p-4 bg-white border-2 border-gray-100 rounded-xl hover:border-teal-500 transition-colors text-left group\"\n >\n <div className=\"w-12 h-12 bg-teal-50 rounded-lg flex items-center justify-center text-teal-600 group-hover:bg-teal-100 transition-colors mr-4\">\n <Camera size={24} />\n </div>\n <div>\n <p className=\"font-semibold text-gray-900\">\n {t(\"document_check.method_selection.picture_title\", \"Prendre une photo\")}\n </p>\n <p className=\"text-sm text-gray-500\">\n {t(\"document_check.method_selection.picture_desc\", \"Utilisez l'appareil photo de votre appareil\")}\n </p>\n </div>\n </button>\n\n <button\n onClick={() => onMethodSelect(\"download\")}\n className=\"flex items-center p-4 bg-white border-2 border-gray-100 rounded-xl hover:border-teal-500 transition-colors text-left group\"\n >\n <div className=\"w-12 h-12 bg-teal-50 rounded-lg flex items-center justify-center text-teal-600 group-hover:bg-teal-100 transition-colors mr-4\">\n <Upload size={24} />\n </div>\n <div>\n <p className=\"font-semibold text-gray-900\">\n {t(\"document_check.method_selection.download_title\", \"Téléverser un fichier\")}\n </p>\n <p className=\"text-sm text-gray-500\">\n {t(\"document_check.method_selection.download_desc\", \"Sélectionnez un fichier sur votre appareil\")}\n </p>\n </div>\n </button>\n </div>\n </div>\n </div>\n </MobilePageLayout>\n );\n};\n\nexport default DocumentCollectionMethodSelection;\n"],"names":["useI18n","_jsx","MobilePageLayout","PageActions","Button","_jsxs","Title","Subtitle","Camera","Upload"],"mappings":";;;;;;;;;;;;;AAgBA,IAAM,iCAAiC,GAAG,UAAC,EAKF,EAAA;QAJrC,cAAc,GAAA,EAAA,CAAA,cAAA,EACd,MAAM,GAAA,EAAA,CAAA,MAAA,EACN,KAAK,GAAA,EAAA,CAAA,KAAA,EACL,WAAW,GAAA,EAAA,CAAA,WAAA;AAEH,IAAA,IAAA,CAAC,GAAKA,eAAO,EAAE,EAAd;IAET,QACIC,eAACC,wBAAgB,EAAA,EACb,MAAM,EACFD,cAAA,CAACE,mBAAW,EAAA,EACR,OAAO,EAAE,MAAM,IACXF,cAAA,CAACG,cAAM,IAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAE,MAAM,EAAA,QAAA,EACtC,CAAC,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAA,CACvB,IACT,SAAS,GACf,EAAA,QAAA,EAGNH,cAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,iCAAiC,EAAA,QAAA,EAC5CI,yBAAK,SAAS,EAAC,mCAAmC,EAAA,QAAA,EAAA,CAC9CA,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,uBAAuB,EAAA,QAAA,EAAA,CAClCJ,cAAA,CAACK,aAAK,EAAA,EAAC,SAAS,EAAC,iCAAiC,EAAA,QAAA,EAC7C,KAAK,IAAI,CAAC,CAAC,uCAAuC,EAAE,wBAAwB,CAAC,EAAA,CAC1E,EACRL,cAAA,CAACM,gBAAQ,EAAA,EAAC,SAAS,EAAC,uCAAuC,EAAA,QAAA,EACtD,WAAW,IAAI,CAAC,CAAC,0CAA0C,EAAE,iDAAiD,CAAC,GACzG,CAAA,EAAA,CACT,EAENF,eAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAC,YAAY,aACvBA,eAAA,CAAA,QAAA,EAAA,EACI,OAAO,EAAE,YAAA,EAAM,OAAA,cAAc,CAAC,SAAS,CAAC,CAAA,CAAzB,CAAyB,EACxC,SAAS,EAAC,4HAA4H,EAAA,QAAA,EAAA,CAEtIJ,wBAAK,SAAS,EAAC,+HAA+H,EAAA,QAAA,EAC1IA,cAAA,CAACO,kBAAM,EAAA,EAAC,IAAI,EAAE,EAAE,EAAA,CAAI,EAAA,CAClB,EACNH,eAAA,CAAA,KAAA,EAAA,EAAA,QAAA,EAAA,CACIJ,cAAA,CAAA,GAAA,EAAA,EAAG,SAAS,EAAC,6BAA6B,EAAA,QAAA,EACrC,CAAC,CAAC,+CAA+C,EAAE,mBAAmB,CAAC,EAAA,CACxE,EACJA,cAAA,CAAA,GAAA,EAAA,EAAG,SAAS,EAAC,uBAAuB,EAAA,QAAA,EAC/B,CAAC,CAAC,8CAA8C,EAAE,6CAA6C,CAAC,EAAA,CACjG,CAAA,EAAA,CACF,CAAA,EAAA,CACD,EAETI,eAAA,CAAA,QAAA,EAAA,EACI,OAAO,EAAE,YAAA,EAAM,OAAA,cAAc,CAAC,UAAU,CAAC,EAA1B,CAA0B,EACzC,SAAS,EAAC,4HAA4H,EAAA,QAAA,EAAA,CAEtIJ,wBAAK,SAAS,EAAC,+HAA+H,EAAA,QAAA,EAC1IA,cAAA,CAACQ,kBAAM,IAAC,IAAI,EAAE,EAAE,EAAA,CAAI,EAAA,CAClB,EACNJ,oCACIJ,cAAA,CAAA,GAAA,EAAA,EAAG,SAAS,EAAC,6BAA6B,EAAA,QAAA,EACrC,CAAC,CAAC,gDAAgD,EAAE,uBAAuB,CAAC,EAAA,CAC7E,EACJA,sBAAG,SAAS,EAAC,uBAAuB,EAAA,QAAA,EAC/B,CAAC,CAAC,+CAA+C,EAAE,4CAA4C,CAAC,EAAA,CACjG,CAAA,EAAA,CACF,CAAA,EAAA,CACD,IACP,CAAA,EAAA,CACJ,EAAA,CACJ,EAAA,CACS;AAE3B;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocumentCollectionSelection.js","sources":["../../../../../src/components/document-collection/DocumentCollectionSelection.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from \"react\";\nimport Title from \"../ui/Title\";\nimport Subtitle from \"../ui/Subtitle\";\nimport Button from \"../ui/Button\";\nimport PageActions from \"../ui/PageActions\";\nimport { Select } from \"../ui/SelectComponent\";\nimport { useI18n } from \"../../hooks/useI18n\";\nimport { DocumentTypeSide } from \"./DocumentCollection\";\nimport MobilePageLayout from \"../ui/MobilePageLayout\";\nimport { stepObject } from \"../../types/session\";\nimport { Card } from \"../ui/Card\";\nimport { Upload } from \"lucide-react\";\nimport PDFPreview from \"../ui/PDFPreview\";\nimport type { onUploadFiles } from \"../../types/uploadFiles\";\n\ninterface AllowedDocumentType {\n id: string;\n name: string;\n side?: DocumentTypeSide;\n}\n\ninterface DocumentCollectionSelectionProps {\n onContinue: (selectedDocumentType: string, files?: onUploadFiles) => void;\n onBack?: () => void;\n allowedDocumentTypes: AllowedDocumentType[];\n allowedAddingMethods: string[];\n stepObject?: stepObject;\n documentSelection?: {\n title?: string;\n description?: string;\n };\n}\n\nconst DocumentCollectionSelection = ({\n onContinue,\n onBack,\n allowedDocumentTypes,\n allowedAddingMethods,\n stepObject,\n documentSelection,\n}: DocumentCollectionSelectionProps) => {\n const { t } = useI18n();\n const [selectedDocumentType, setSelectedDocumentType] = useState<string>(\"\");\n\n useEffect(() => {\n if (allowedDocumentTypes.length > 0 && !selectedDocumentType) {\n setSelectedDocumentType(allowedDocumentTypes[0].id);\n }\n }, [allowedDocumentTypes, selectedDocumentType]);\n\n const title =\n documentSelection?.title ||\n t(\"document_upload.selection_title\");\n const description =\n documentSelection?.description ||\n t(\"document_upload.selection_description\");\n\n const documentOptions = allowedDocumentTypes.map((docType) => ({\n value: docType.id,\n label: t(docType.name) || docType.name,\n }));\n\n const handleContinueAction = () => {\n if (selectedDocumentType) {\n onContinue(selectedDocumentType);\n }\n };\n\n return (\n <MobilePageLayout\n footer={\n <PageActions\n primary={\n <Button onClick={handleContinueAction} disabled={!selectedDocumentType}>\n {t(\"buttons.continue\")}\n </Button>\n }\n secondary={onBack ? (\n <Button variant=\"secondary\" onClick={onBack}>\n {t(\"buttons.back\")}\n </Button>\n ) : undefined}\n />\n }\n >\n <div className=\"flex-1 flex items-start justify-center md:items-center p-4\">\n <div className=\"w-full max-w-lg\">\n <div className=\"text-center mb-8\">\n <Title className=\"text-2xl md:text-3xl font-bold text-gray-900 mb-2\">\n {title}\n </Title>\n <Subtitle className=\"text-gray-600 whitespace-pre-line\">{description}</Subtitle>\n </div>\n\n {/* Document Type Selection */}\n <div className=\"mb-6\">\n <label className=\"block text-sm font-medium text-gray-700 mb-2\">\n {t(\"jdi.document_selection.label_identity\")}\n </label>\n <Select\n options={documentOptions}\n value={selectedDocumentType}\n onValueChange={(value) => setSelectedDocumentType(value)}\n placeholder={t(\"jdi.document_selection.placeholder_identity\")}\n />\n </div>\n\n {/* Information about selected document */}\n {selectedDocumentType && (\n <div className=\"bg-gray-50 border border-gray-200 rounded-lg p-4 mb-6\">\n <h3 className=\"font-medium text-gray-900 mb-2\">\n {t(\"jdi.document_selection.info_title\")}\n </h3>\n <div className=\"text-sm text-gray-700 space-y-1\">\n <p>{t(\"jdi.document_upload.info_point1\")}</p>\n <p>{t(\"jdi.document_upload.info_point2\")}</p>\n <p>{t(\"jdi.document_upload.info_point3\")}</p>\n </div>\n </div>\n )}\n </div>\n </div>\n </MobilePageLayout>\n );\n};\n\nexport default DocumentCollectionSelection;\n"],"names":["useI18n","useState","useEffect","_jsx","MobilePageLayout","PageActions","Button","_jsxs","Title","Subtitle","Select"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocumentCollectionUpload.js","sources":["../../../../../src/components/document-collection/DocumentCollectionUpload.tsx"],"sourcesContent":["import React, { useState, useRef } from \"react\";\nimport Title from \"../ui/Title\";\nimport Subtitle from \"../ui/Subtitle\";\nimport Button from \"../ui/Button\";\nimport PageActions from \"../ui/PageActions\";\nimport { Card } from \"../ui/Card\";\nimport { Upload } from \"lucide-react\";\nimport PDFPreview from \"../ui/PDFPreview\";\nimport type { onUploadFiles } from \"../../types/uploadFiles\";\nimport { useI18n } from \"../../hooks/useI18n\";\nimport MobilePageLayout from \"../ui/MobilePageLayout\";\nimport { DocumentTypeSide } from \"./DocumentCollection\";\nimport {\n logDocumentLoaded,\n logDocumentsValidated,\n} from \"../../services/auditTrailService\";\n\ninterface AllowedDocumentType {\n id: string;\n name: string;\n side?: DocumentTypeSide;\n}\n\ninterface DocumentCollectionUploadProps {\n onUpload: (files: onUploadFiles) => void;\n onBack?: () => void;\n selectedDocumentType: string;\n allowedDocumentTypes: AllowedDocumentType[];\n documentSelection?: {\n title?: string;\n description?: string;\n };\n sessionId?: string;\n}\n\nconst DocumentCollectionUpload = ({\n onUpload,\n onBack,\n selectedDocumentType,\n allowedDocumentTypes,\n documentSelection,\n sessionId,\n}: DocumentCollectionUploadProps) => {\n const { t } = useI18n();\n const [frontImage, setFrontImage] = useState<string | null>(null);\n const [backImage, setBackImage] = useState<string | null>(null);\n const [frontIsPDF, setFrontIsPDF] = useState<boolean>(false);\n const [backIsPDF, setBackIsPDF] = useState<boolean>(false);\n const [isUploading, setIsUploading] = useState(false);\n const [error, setError] = useState<string>(\"\");\n const [isDragging, setIsDragging] = useState(false);\n\n const frontInputRef = useRef<HTMLInputElement>(null);\n const multipleInputRef = useRef<HTMLInputElement>(null);\n const dropZoneRef = useRef<HTMLDivElement>(null);\n\n const requiresTwoSides = (): boolean => {\n const selected = allowedDocumentTypes.find(\n (d) => d.id === selectedDocumentType,\n );\n return selected?.side === \"RECTO_VERSO\";\n };\n\n const getSelectedDocumentName = () => {\n const selectedDoc = allowedDocumentTypes.find(\n (doc) => doc.id === selectedDocumentType,\n );\n if (!selectedDoc) return \"document\";\n return t(selectedDoc.name) || selectedDoc.name;\n };\n\n const handleFileChange = (\n event: React.ChangeEvent<HTMLInputElement>,\n side: \"front\" | \"back\" = \"front\",\n ) => {\n const file = event.target.files?.[0];\n if (!file) return;\n\n if (\n !file.type.startsWith(\"image/\") &&\n !file.type.startsWith(\"application/pdf\")\n ) {\n setError(t(\"document_upload.errors.invalid_file_type\"));\n return;\n }\n if (file.size > 10 * 1024 * 1024) {\n setError(t(\"document_upload.errors.file_too_large\"));\n return;\n }\n\n setError(\"\");\n const isFilePDF = file.type === \"application/pdf\";\n const reader = new FileReader();\n reader.onload = (e) => {\n const result = e.target?.result as string;\n if (side === \"front\") {\n setFrontImage(result);\n setFrontIsPDF(isFilePDF);\n } else {\n setBackImage(result);\n setBackIsPDF(isFilePDF);\n }\n };\n reader.readAsDataURL(file);\n };\n\n const handleMultipleFileChange = (\n event: React.ChangeEvent<HTMLInputElement>,\n ) => {\n const files = event.target.files;\n if (!files) return;\n const maxFiles = requiresTwoSides() ? 2 : 1;\n if (files.length > maxFiles) {\n setError(t(\"document_upload.errors.max_files\"));\n return;\n }\n setError(\"\");\n Array.from(files).forEach((file, index) => {\n if (\n !file.type.startsWith(\"image/\") &&\n !file.type.startsWith(\"application/pdf\")\n ) {\n setError(t(\"document_upload.errors.invalid_file_type\"));\n return;\n }\n if (file.size > 10 * 1024 * 1024) {\n setError(t(\"document_upload.errors.file_too_large\"));\n return;\n }\n const isFilePDF = file.type === \"application/pdf\";\n const reader = new FileReader();\n reader.onload = (e) => {\n const result = e.target?.result as string;\n if (index === 0) {\n setFrontImage(result);\n setFrontIsPDF(isFilePDF);\n } else if (index === 1 && requiresTwoSides()) {\n setBackImage(result);\n setBackIsPDF(isFilePDF);\n }\n };\n reader.readAsDataURL(file);\n });\n };\n\n const handleUpload = async () => {\n setError(\"\");\n if (!frontImage) {\n setError(t(\"jdi.document_upload.errors.add_photo_identity\"));\n return;\n }\n\n setIsUploading(true);\n try {\n const files = {\n front: frontImage,\n back: requiresTwoSides() ? backImage : null,\n };\n if (sessionId) {\n logDocumentLoaded(sessionId, \"recto\");\n if (requiresTwoSides() && backImage) {\n logDocumentLoaded(sessionId, \"verso\");\n }\n logDocumentsValidated(sessionId);\n }\n onUpload(files);\n } catch (err) {\n setError(t(\"document_upload.errors.upload_error\"));\n setIsUploading(false);\n }\n };\n\n const removeImage = (side: \"front\" | \"back\" = \"front\") => {\n if (side === \"front\") {\n setFrontImage(null);\n setFrontIsPDF(false);\n } else {\n setBackImage(null);\n setBackIsPDF(false);\n }\n setError(\"\");\n };\n\n return (\n <MobilePageLayout\n footer={\n <PageActions\n primary={\n <Button\n onClick={handleUpload}\n disabled={!frontImage || isUploading}\n >\n {isUploading\n ? t(\"jdi.processing.download\")\n : requiresTwoSides()\n ? t(\"jdi.document_upload.validate_multiple\")\n : t(\"jdi.document_upload.validate_single\")}\n </Button>\n }\n secondary={onBack ? (\n <Button variant=\"secondary\" onClick={onBack} disabled={isUploading}>\n {t(\"buttons.back\")}\n </Button>\n ) : undefined}\n />\n }\n >\n <div className=\"flex-1 flex items-start justify-center md:items-center p-4\">\n <div className=\"w-full max-w-lg\">\n <div className=\"text-center mb-8\">\n <h1 className=\"text-2xl md:text-3xl font-bold text-gray-900 mb-2\">\n {t(\"document_upload.upload_title\")}\n </h1>\n <p className=\"text-gray-600\">\n {t(\"document_upload.upload_description\")}\n </p>\n </div>\n\n {error && (\n <div className=\"mb-6 p-4 bg-red-50 border border-red-200 rounded-lg text-sm text-red-700\">\n {error}\n </div>\n )}\n\n <Card\n className=\"border-2 border-dashed border-teal-300 bg-teal-50/30 p-8 mb-6 text-center\"\n onDragOver={(e) => e.preventDefault()}\n onDrop={(e) => {\n e.preventDefault();\n const files = e.dataTransfer.files;\n if (files.length > 0) {\n const syntheticEvent = { target: { files } } as any;\n requiresTwoSides() ? handleMultipleFileChange(syntheticEvent) : handleFileChange(syntheticEvent);\n }\n }}\n >\n {!frontImage ? (\n <div className=\"space-y-6\">\n <h3 className=\"text-lg font-semibold text-gray-900\">{getSelectedDocumentName()}</h3>\n <Button\n onClick={() => requiresTwoSides() ? multipleInputRef.current?.click() : frontInputRef.current?.click()}\n className=\"bg-teal-600 text-white hover:bg-teal-700 px-6 py-2 rounded-lg font-medium mx-auto flex items-center gap-2\"\n disabled={isUploading}\n >\n <Upload size={18} />\n <span>{t(\"document_upload.browse_files\")}</span>\n </Button>\n <div className=\"text-xs text-gray-500 space-y-1\">\n <p>{t(\"document_upload.accepted_formats\")}</p>\n <p>{requiresTwoSides() ? t(\"document_upload.multiple_files_info\") : t(\"document_upload.single_file_info\")}</p>\n </div>\n </div>\n ) : (\n <div className=\"space-y-4\">\n <div className=\"bg-white border rounded-lg p-4 relative group\">\n <p className=\"text-sm font-medium mb-1\">{frontIsPDF ? t(\"document_upload.pdf_preview\") : t(\"document_upload.image_preview\")}</p>\n {frontIsPDF ? <PDFPreview src={frontImage} /> : <img src={frontImage} alt={t(\"document_upload.front_side\")} className=\"max-h-48 mx-auto\" />}\n <button onClick={() => removeImage(\"front\")} className=\"absolute top-2 right-2 text-red-500 hover:text-red-700\">✕</button>\n </div>\n {requiresTwoSides() && backImage && (\n <div className=\"bg-white border rounded-lg p-4 relative group\">\n <p className=\"text-sm font-medium mb-1\">{t(\"document_upload.back_side\")} {backIsPDF ? \"PDF\" : \"\"}</p>\n {backIsPDF ? <PDFPreview src={backImage} /> : <img src={backImage} alt={t(\"document_upload.back_side\")} className=\"max-h-48 mx-auto\" />}\n <button onClick={() => removeImage(\"back\")} className=\"absolute top-2 right-2 text-red-500 hover:text-red-700\">✕</button>\n </div>\n )}\n {requiresTwoSides() && !backImage && (\n <Button\n onClick={() => {\n const input = document.createElement(\"input\");\n input.type = \"file\";\n input.accept = \"image/*,.pdf\";\n input.onchange = (e) => handleFileChange(e as any, \"back\");\n input.click();\n }}\n className=\"text-teal-600 border border-teal-600 bg-transparent hover:bg-teal-50 w-full\"\n >\n {t(\"document_upload.add_back\")}\n </Button>\n )}\n </div>\n )}\n </Card>\n\n <input ref={frontInputRef} type=\"file\" accept=\"image/*,.pdf\" onChange={(e) => handleFileChange(e, \"front\")} className=\"hidden\" />\n <input ref={multipleInputRef} type=\"file\" accept=\"image/*,.pdf\" multiple={true} onChange={handleMultipleFileChange} className=\"hidden\" />\n </div>\n </div>\n </MobilePageLayout>\n );\n};\n\nexport default DocumentCollectionUpload;\n"],"names":["useI18n","useState","useRef","__awaiter","logDocumentLoaded","logDocumentsValidated","_jsx","MobilePageLayout","PageActions","Button","_jsxs","Card","Upload","PDFPreview"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocumentError.js","sources":["../../../../../src/components/document-collection/DocumentError.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport Title from \"../ui/Title\";\nimport Subtitle from \"../ui/Subtitle\";\nimport Button from \"../ui/Button\";\nimport ButtonDesktop from \"../ui/ButtonDesktop\";\nimport { useI18n } from \"../../hooks/useI18n\";\nimport { getValidationPoints } from \"../../utils/validationUtils\";\nimport type { DocumentErrorProps } from \"./types\";\nimport MobilePageLayout from \"../ui/MobilePageLayout\";\nimport { isServiceErrorCode } from \"../../utils/analysisErrors\";\n\nconst DocumentError: React.FC<DocumentErrorProps> = ({\n documentType,\n documentTypeLabel,\n onRetry,\n onContinueAnyway,\n onBackToUserInput,\n retryCount = 0,\n predictions = [],\n errorDetails,\n allowResubmission,\n maxResubmissionAttempts,\n isRetryAllowed = true,\n errorCode,\n blockContinue = false,\n}) => {\n const { t } = useI18n();\n const [validationPoints, setValidationPoints] = useState<string[]>([]);\n\n useEffect(() => {\n // Use shared utility to get validation points\n setValidationPoints(\n getValidationPoints(errorCode, predictions, t, \"error\"),\n );\n }, [predictions, errorCode, t]);\n\n // Get user guidance message if available\n const getUserGuidance = (): string | null => {\n if (!errorCode) return null;\n const guidance = t(`user_guidance.${errorCode}`, \"\");\n return guidance || null;\n };\n\n const getDocumentLabel = (documentType: string): string => {\n if (documentTypeLabel) return documentTypeLabel;\n\n const translated = t(documentType);\n // If no translation, use default fallbacks\n if (translated === documentType) {\n switch (documentType) {\n case \"national_id\":\n return t(\"documentTypes.idCard\", \"carte nationale d'identité\");\n case \"passport\":\n return t(\"documentTypes.passport\", \"passeport\");\n case \"driving_license\":\n return t(\"documentTypes.driving_license\", \"permis de conduire\");\n default:\n return t(\"documentTypes.document\", \"document\");\n }\n }\n return translated;\n };\n\n return (\n <div className=\"flex flex-col justify-between h-full w-full\">\n {/* Main content area */}\n <div className=\"flex-1 px-4 py-6 pt-11 md:px-8 md:py-8\">\n <div className=\"w-full max-w-md mx-auto space-y-6\">\n {/* Error icon */}\n <div className=\"text-center\">\n <div className=\"mx-auto w-16 h-16 bg-red-100 rounded-full flex items-center justify-center mb-4\">\n <div className=\"w-8 h-8 bg-red-500 rounded-full flex items-center justify-center\">\n <span className=\"text-white text-lg\">✕</span>\n </div>\n </div>\n </div>\n\n {/* Header */}\n <div className=\"text-center space-y-4\">\n <Title className=\"text-xl md:text-2xl lg:text-3xl text-red-600\">\n {blockContinue\n ? t(\"errors.upload_not_confirmed.title\")\n : t(\"errors.verification_failed\", \"Vérification échouée\")}\n </Title>\n <Subtitle className=\"text-sm text-gray-600 leading-relaxed\">\n {blockContinue\n ? t(\"errors.upload_not_confirmed.subtitle\")\n : isRetryAllowed\n ? t(\"errors.verification_failed_subtitle\", {\n documentType: getDocumentLabel(documentType),\n defaultValue:\n \"Nous n'avons pas pu valider votre {{documentType}}. Veuillez vérifier les points ci-dessous et réessayer.\",\n })\n : t(\"errors.verification_failed_subtitle_no_retry\", {\n documentType: getDocumentLabel(documentType),\n defaultValue:\n \"Nous n'avons pas pu valider votre {{documentType}}. Veuillez vérifier les points ci-dessous.\",\n })}\n </Subtitle>\n </div>\n\n {/* Error details - Validation Points */}\n {!blockContinue && (\n <div className=\"bg-red-50 border border-red-200 rounded-lg p-4\">\n <h3 className=\"font-medium text-red-900 mb-2\">\n {t(\"errors.problems_detected\", \"Problèmes détectés\")}\n </h3>\n <div className=\"text-sm text-red-800 space-y-1\">\n {validationPoints.map((point, index) => (\n <p key={index}>{point}</p>\n ))}\n </div>\n </div>\n )}\n\n {/* Resubmission limit message */}\n {!blockContinue && !isRetryAllowed && (\n <div className=\"bg-orange-50 border border-orange-200 rounded-lg p-4\">\n <h3 className=\"font-medium text-orange-900 mb-2\">\n {t(\n \"errors.resubmission.max_attempts_reached\",\n \"Nombre maximum de tentatives atteint\",\n )}\n </h3>\n <p className=\"text-sm text-orange-800\">\n {maxResubmissionAttempts !== undefined\n ? t(\"errors.resubmission.max_attempts_reached_description\")\n : t(\"errors.resubmission.no_resubmission_allowed\")}\n </p>\n </div>\n )}\n\n {/* User guidance - specific advice based on error code */}\n {!blockContinue && getUserGuidance() && (\n <div className=\"bg-yellow-50 border border-yellow-200 rounded-lg p-4\">\n <h3 className=\"font-medium text-yellow-900 mb-2\">\n {isServiceErrorCode(errorCode)\n ? // Quota / out of credits: nothing for the end user to improve.\n t(\"errors.service_refusal_title\")\n : `💡 ${t(\"errors.improvement_tips\", \"Conseils d'amélioration\")}`}\n </h3>\n <p className=\"text-sm text-yellow-800\">{getUserGuidance()}</p>\n </div>\n )}\n\n {/* Next steps */}\n {!blockContinue && isRetryAllowed && (\n <div className=\"bg-blue-50 border border-blue-200 rounded-lg p-4\">\n <h3 className=\"font-medium text-blue-900 mb-2\">\n {t(\"errors.next_steps\", \"Prochaines étapes\")}\n </h3>\n <p className=\"text-sm text-blue-800\">\n {t(\n \"errors.next_steps_description\",\n \"Veuillez reprendre les photos de votre document en suivant les conseils d'amélioration pour une meilleure qualité.\",\n )}\n </p>\n </div>\n )}\n </div>\n </div>\n\n {/* Footer with buttons */}\n <div className=\"sticky bottom-0 md:static bg-white border-t md:border-t-0 p-4 md:p-0 md:pb-8\">\n <div className=\"w-full max-w-md mx-auto\">\n {/* Mobile layout */}\n <div className=\"flex flex-col space-y-3 md:hidden\">\n {blockContinue ? (\n <ButtonDesktop onClick={onRetry} type=\"continue\">\n {t(\"errors.retry_verification\", \"Recommencer la vérification\")}\n </ButtonDesktop>\n ) : (\n <>\n {onBackToUserInput && (\n <ButtonDesktop onClick={onBackToUserInput} type=\"back\">\n {t(\n \"errors.back_to_user_input\",\n \"Retour aux informations d'identité\",\n )}\n </ButtonDesktop>\n )}\n {retryCount >= 1 && isRetryAllowed && onContinueAnyway && (\n <ButtonDesktop onClick={onContinueAnyway} type=\"back\">\n {t(\"errors.continue_anyway\", \"Poursuivre tout de même\")}\n </ButtonDesktop>\n )}\n {isRetryAllowed && (\n <ButtonDesktop onClick={onRetry} type=\"continue\">\n {t(\n \"errors.retry_verification\",\n \"Recommencer la vérification\",\n )}\n </ButtonDesktop>\n )}\n {!isRetryAllowed && onContinueAnyway && (\n <ButtonDesktop onClick={onContinueAnyway} type=\"back\">\n {t(\"errors.continue_anyway\", \"Poursuivre tout de même\")}\n </ButtonDesktop>\n )}\n </>\n )}\n </div>\n\n {/* Desktop layout */}\n <div className=\"hidden md:flex flex-col space-y-3\">\n <div className=\"flex justify-center space-x-3\">\n {blockContinue ? (\n <ButtonDesktop onClick={onRetry} type=\"continue\">\n {t(\n \"errors.retry_verification\",\n \"Recommencer la vérification\",\n )}\n </ButtonDesktop>\n ) : (\n <>\n {onBackToUserInput && (\n <ButtonDesktop onClick={onBackToUserInput} type=\"back\">\n {t(\n \"errors.back_to_user_input\",\n \"Retour aux informations d'identité\",\n )}\n </ButtonDesktop>\n )}\n {retryCount >= 1 && isRetryAllowed && onContinueAnyway && (\n <ButtonDesktop onClick={onContinueAnyway} type=\"back\">\n {t(\"errors.continue_anyway\", \"Poursuivre tout de même\")}\n </ButtonDesktop>\n )}\n {isRetryAllowed && (\n <ButtonDesktop onClick={onRetry} type=\"continue\">\n {t(\n \"errors.retry_verification\",\n \"Recommencer la vérification\",\n )}\n </ButtonDesktop>\n )}\n {!isRetryAllowed && onContinueAnyway && (\n <ButtonDesktop onClick={onContinueAnyway} type=\"continue\">\n {t(\"errors.continue_anyway\", \"Poursuivre tout de même\")}\n </ButtonDesktop>\n )}\n </>\n )}\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default DocumentError;\nexport type { DocumentErrorProps };\n"],"names":["useI18n","useState","useEffect","getValidationPoints","_jsxs","_jsx","Title","Subtitle","isServiceErrorCode","ButtonDesktop","_Fragment"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocumentProcessing.js","sources":["../../../../../src/components/document-collection/DocumentProcessing.tsx"],"sourcesContent":["import { useEffect, useRef, useState, useMemo, useCallback, memo } from \"react\";\nimport Title from \"../ui/Title\";\nimport Subtitle from \"../ui/Subtitle\";\nimport { useI18n } from \"../../hooks/useI18n\";\nimport {\n analyzeFiles,\n type AnalyzeFilesOptions,\n} from \"../../services/analysis\";\nimport { getActiveSessionId } from \"../../services/sessionMemoryStore\";\nimport type { onUploadFiles } from \"../../types/uploadFiles\";\nimport type {\n DocumentProcessingProps,\n ProcessingStep,\n ProcessingResult,\n} from \"./types\";\nimport type { Prediction } from \"../../utils/apiAnalysis\";\nimport {\n isS3UploadNotConfirmedError,\n getServiceErrorCode,\n getServiceErrorCodeFromCodeName,\n} from \"../../utils/analysisErrors\";\n\n// Localized processing steps generator\nconst getProcessingSteps = (t: any): ProcessingStep[] => [\n {\n title: t(\n \"processing.steps.document_reception.title\",\n \"Réception du document\",\n ),\n subtitle: t(\n \"processing.steps.document_reception.subtitle\",\n \"Téléchargement et vérification du format\",\n ),\n hasError: false,\n },\n {\n title: t(\n \"processing.steps.quality_analysis.title\",\n \"Analyse de la qualité\",\n ),\n subtitle: t(\n \"processing.steps.quality_analysis.subtitle\",\n \"Contrôle de la netteté et de l'éclairage\",\n ),\n hasError: false,\n },\n {\n title: t(\n \"processing.steps.data_extraction.title\",\n \"Extraction des données\",\n ),\n subtitle: t(\n \"processing.steps.data_extraction.subtitle\",\n \"Lecture des informations du document\",\n ),\n hasError: false,\n },\n {\n title: t(\n \"processing.steps.final_verification.title\",\n \"Vérification finale\",\n ),\n subtitle: t(\n \"processing.steps.final_verification.subtitle\",\n \"Validation des données extraites\",\n ),\n hasError: false,\n },\n];\n\nconst DocumentProcessing = memo(\n ({\n onProcessingComplete,\n documentType,\n documentTypeLabel,\n nodeId,\n fileUploaded,\n documentTypeId,\n retryCount = 0,\n config,\n customAnalysisFunction,\n }: DocumentProcessingProps) => {\n const inferRequiresTwoSides = useCallback(\n (type?: string): boolean | undefined => {\n if (!type) {\n return undefined;\n }\n\n const normalized = type.trim().toLowerCase();\n if (!normalized) {\n return undefined;\n }\n\n if (normalized.includes(\"passport\")) {\n return false;\n }\n\n if (\n normalized.includes(\"idcard\") ||\n normalized.includes(\"identity\") ||\n normalized.includes(\"driver\") ||\n normalized.includes(\"licenc\") ||\n normalized.includes(\"residence\")\n ) {\n return true;\n }\n\n return undefined;\n },\n [],\n );\n\n const { t, translateDocumentType } = useI18n();\n\n const [isProcessing, setIsProcessing] = useState(false);\n const [currentStep, setCurrentStep] = useState(0);\n const [processingSteps, setProcessingSteps] = useState<ProcessingStep[]>(\n () => config?.steps || getProcessingSteps(t),\n );\n const [isComplete, setIsComplete] = useState(false);\n const [analysisResult, setAnalysisResult] =\n useState<ProcessingResult | null>(null);\n\n const processingStartedRef = useRef(false);\n const processedFilesRef = useRef<string | null>(null);\n\n // Create stable key for uploaded files\n const filesKey = useMemo(() => {\n if (!fileUploaded) return null;\n\n // Handle onUploadFiles structure\n return `${fileUploaded.front?.substring(0, 50) || \"no-front\"}-${\n fileUploaded.back?.substring(0, 50) || \"no-back\"\n }`;\n }, [fileUploaded]);\n\n // Stable callback for completion\n const stableOnProcessingComplete = useCallback(\n (\n success: boolean,\n retryCount?: number,\n analysisData?: Prediction[] | null,\n blockContinue?: boolean,\n ) => {\n console.log(\"[DocumentProcessing] Stable callback for completion:\", success, retryCount);\n if (blockContinue === true) {\n onProcessingComplete(success, retryCount, analysisData, true);\n } else {\n onProcessingComplete(success, retryCount, analysisData);\n }\n },\n [onProcessingComplete],\n );\n\n // Default analysis function\n const defaultAnalysisFunction = useCallback(\n async (\n sessionId: string,\n files: onUploadFiles,\n docTypeId: string,\n options?: AnalyzeFilesOptions,\n ): Promise<ProcessingResult> => {\n const response = await analyzeFiles(\n sessionId,\n nodeId,\n files,\n docTypeId,\n {\n ...options,\n save: options?.save ?? false, // don't save to session yet\n incrementAnalysis: options?.incrementAnalysis ?? false, // don't auto-progress session\n },\n );\n\n // When polling is enabled, response is AnalysisStatusResponse\n // which has code, codeName, codeDescription directly on the object\n // A refused async analysis (quota / no credits) surfaces as the\n // fallback document: expose its SDK code so DocumentError explains it.\n const extractedCode =\n getServiceErrorCodeFromCodeName(response?.codeName) ||\n response?.code ||\n String(response?.status);\n const codeName = response?.codeName;\n const codeDescription = response?.codeDescription;\n\n // Construct predictions array from the response\n const predictions = [];\n if (extractedCode && codeName) {\n predictions.push({\n code: extractedCode,\n codeName: codeName,\n codeDescription: codeDescription || \"\",\n type: \"document\", // default type\n });\n }\n\n // Determine success based on code\n // Code 8.x (specimen) is blocking — treated as failure\n const isSuccess = [\"1.\", \"4.\", \"5.\", \"6.\", \"9.\"].some((prefix) =>\n extractedCode.startsWith(prefix),\n );\n\n return {\n success: isSuccess,\n code: extractedCode,\n data: response,\n predictions: predictions,\n };\n },\n [nodeId],\n );\n\n // Main processing effect\n useEffect(() => {\n // Prevent multiple calls\n if (\n !fileUploaded ||\n !filesKey ||\n isProcessing ||\n processingStartedRef.current\n ) {\n return;\n }\n\n const sessionId = getActiveSessionId();\n if (!sessionId) {\n stableOnProcessingComplete(false);\n return;\n }\n\n // Check if we already processed these same files\n if (processedFilesRef.current === filesKey) {\n return;\n }\n\n const processFiles = async () => {\n try {\n // Mark processing start\n setIsProcessing(true);\n processingStartedRef.current = true;\n processedFilesRef.current = filesKey;\n\n // Animate through steps with real API call at the end\n for (let i = 0; i < processingSteps.length; i++) {\n setCurrentStep(i);\n\n if (i < processingSteps.length - 1) {\n // Delay between steps (except last one)\n await new Promise((resolve) => setTimeout(resolve, 800));\n } else {\n // Last step: real API call\n const analysisFunction =\n customAnalysisFunction || defaultAnalysisFunction;\n const inferredTwoSides = inferRequiresTwoSides(\n typeof config?.documentType === \"string\"\n ? config.documentType\n : documentType,\n );\n\n const analysisOptions: AnalyzeFilesOptions = {\n documentTypeKey: documentType,\n requiresTwoSides:\n typeof inferredTwoSides === \"boolean\"\n ? inferredTwoSides\n : Boolean(fileUploaded.back),\n };\n\n const result = await analysisFunction(\n sessionId,\n fileUploaded,\n documentTypeId,\n analysisOptions,\n );\n\n setAnalysisResult(result);\n\n // Mark current step according to result\n setProcessingSteps((prev) =>\n prev.map((step, index) =>\n index === i ? { ...step, hasError: !result.success } : step,\n ),\n );\n\n // Small delay to see result\n await new Promise((resolve) => setTimeout(resolve, 500));\n }\n }\n\n setCurrentStep(processingSteps.length);\n setIsComplete(true);\n } catch (error) {\n console.error(\"Processing error:\", error);\n\n // Mark current step as error\n setProcessingSteps((prev) =>\n prev.map((step, index) =>\n index === currentStep ? { ...step, hasError: true } : step,\n ),\n );\n\n const isUploadNotConfirmed = isS3UploadNotConfirmedError(error);\n const serviceErrorCode = getServiceErrorCode(error);\n const apiError = error as { code?: string; message?: string };\n setAnalysisResult({\n success: false,\n data: null,\n // Propage le code QUOTA_EXCEEDED / INSUFFICIENT_CREDITS pour que\n // DocumentError affiche un message dédié via `user_guidance.<code>`\n // au lieu de rester muet sur la cause (les autres erreurs gardent\n // leur comportement existant).\n predictions: serviceErrorCode\n ? [\n {\n code: serviceErrorCode,\n codeName: serviceErrorCode,\n codeDescription: apiError?.message || \"\",\n type: \"document\",\n },\n ]\n : undefined,\n canRetry: isUploadNotConfirmed || !!serviceErrorCode,\n blockContinue: isUploadNotConfirmed,\n });\n setIsComplete(true);\n } finally {\n setIsProcessing(false);\n }\n };\n\n processFiles();\n }, [\n fileUploaded,\n filesKey,\n documentTypeId,\n documentType,\n config?.documentType,\n isProcessing,\n stableOnProcessingComplete,\n processingSteps.length,\n currentStep,\n customAnalysisFunction,\n defaultAnalysisFunction,\n inferRequiresTwoSides,\n ]);\n\n // Auto-complete when analysis is done\n useEffect(() => {\n if (isComplete && analysisResult) {\n setTimeout(() => {\n stableOnProcessingComplete(\n analysisResult.success,\n retryCount,\n analysisResult.predictions || null,\n analysisResult.blockContinue,\n );\n }, 1000);\n }\n }, [isComplete, analysisResult, stableOnProcessingComplete, retryCount]);\n\n return (\n <div className=\"flex flex-col justify-between h-full w-full\">\n {/* Main content area */}\n <div className=\"flex-1 px-4 py-6 pt-11 md:px-8 md:py-8\">\n <div className=\"w-full max-w-md mx-auto space-y-6\">\n {/* Header */}\n <div className=\"text-center space-y-4\">\n <Title className=\"text-xl md:text-2xl lg:text-3xl\">\n {config?.processingTitle ||\n t(\"processing.title\", \"Analyse en cours\")}\n </Title>\n <Subtitle className=\"text-sm text-gray-600 leading-relaxed\">\n {config?.processingSubtitle ||\n t(\"processing.subtitle\", {\n documentType: t(\n \"documentTypes.\" + documentType,\n \"document\",\n ),\n defaultValue: `Nous analysons votre ${t(\"documentTypes.\" + documentType, \"document\")}. Cela peut prendre quelques instants.`,\n })}\n </Subtitle>\n </div>\n\n {/* Processing steps with status indicators */}\n <div className=\"w-full flex justify-center\">\n <div className=\"space-y-5\">\n {processingSteps.map((step, index: number) => (\n <div key={index} className=\"flex items-start\">\n {/* Status indicator */}\n <div className=\"mr-4 mt-1 flex-shrink-0\">\n {index < currentStep ? (\n step.hasError ? (\n // Error indicator - Red X\n <div className=\"flex items-center justify-center w-6 h-6 rounded-full bg-red-500 text-white text-xs\">\n ✕\n </div>\n ) : (\n // Success indicator - Green checkmark\n <div className=\"flex items-center justify-center w-6 h-6 rounded-full bg-[#11E5C5] text-white text-xs\">\n ✓\n </div>\n )\n ) : index === currentStep ? (\n // Loading spinner only for the current step\n <div className=\"w-6 h-6 rounded-full border-2 border-t-[#11E5C5] border-r-[#11E5C5] border-b-[#11E5C5] border-l-transparent animate-spin\"></div>\n ) : (\n // Empty circle for future steps\n <div className=\"w-6 h-6 rounded-full border-2 border-gray-300\"></div>\n )}\n </div>\n\n {/* Step content */}\n <div className=\"flex-1 min-w-0\">\n <p className=\"font-medium text-[#3C3C40] text-sm\">\n {step.title}\n </p>\n <p className=\"text-xs text-gray-500 mt-1\">\n {step.subtitle}\n </p>\n </div>\n </div>\n ))}\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n },\n);\n\nDocumentProcessing.displayName = \"DocumentProcessing\";\n\nexport default DocumentProcessing;\nexport type { DocumentProcessingProps };\n"],"names":["memo","useCallback","useI18n","useState","useRef","useMemo","__awaiter","analyzeFiles","__assign","getServiceErrorCodeFromCodeName","useEffect","getActiveSessionId","isS3UploadNotConfirmedError","getServiceErrorCode","_jsx","_jsxs","Title","Subtitle"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocumentSuccess.js","sources":["../../../../../src/components/document-collection/DocumentSuccess.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport Title from \"../ui/Title\";\nimport Subtitle from \"../ui/Subtitle\";\nimport Button from \"../ui/Button\";\nimport PageActions from \"../ui/PageActions\";\nimport { useI18n } from \"../../hooks/useI18n\";\nimport { getValidationPoints } from \"../../utils/validationUtils\";\nimport type { DocumentSuccessProps } from \"./types\";\nimport MobilePageLayout from \"../ui/MobilePageLayout\";\n\nconst DocumentSuccess: React.FC<DocumentSuccessProps> = ({\n documentType,\n documentTypeLabel,\n onContinue,\n successDetails,\n customValidationPoints,\n errorCode,\n}) => {\n const { t } = useI18n();\n const [validationPoints, setValidationPoints] = useState<string[]>([]);\n\n useEffect(() => {\n if (customValidationPoints) {\n setValidationPoints(customValidationPoints);\n } else if (successDetails?.validationPoints) {\n setValidationPoints(successDetails.validationPoints);\n } else {\n // Use shared utility to get validation points\n setValidationPoints(getValidationPoints(errorCode, null, t, 'success'));\n }\n }, [customValidationPoints, successDetails?.validationPoints, errorCode, t]);\n\n // Get next steps info\n const getNextSteps = () => {\n if (successDetails?.nextSteps) {\n return successDetails.nextSteps;\n }\n\n return {\n title: t(\"success.next_steps\", \"Prochaines étapes\"),\n description: t(\n \"success.next_steps_description\",\n \"Vous pouvez maintenant continuer le processus de vérification.\"\n ),\n };\n };\n\n const nextSteps = getNextSteps();\n\n return (\n <MobilePageLayout\n footer={\n <PageActions\n primary={\n <Button onClick={onContinue}>\n {t(\"success.continue_verification\", \"Continuer la vérification\")}\n </Button>\n }\n />\n }\n >\n <div className=\"px-4 py-6 pt-11 md:px-8 md:py-8\">\n <div className=\"w-full max-w-md mx-auto space-y-6\">\n\n {/* Header */}\n <div className=\"text-center space-y-4\">\n <Title className=\"text-xl md:text-2xl lg:text-3xl text-green-600\">\n {t(\"success.verification_successful\", \"Vérification réussie !\")}\n </Title>\n <Subtitle className=\"text-sm text-gray-600 leading-relaxed\">\n {t(\"success.verification_successful_subtitle\", {\n documentType: documentTypeLabel\n ? documentTypeLabel\n : t(\"documentTypes.\" + documentType),\n })}\n </Subtitle>\n </div>\n\n {/* Success icon */}\n <div className=\"text-center\">\n <div className=\"mx-auto w-16 h-16 bg-green-100 rounded-full flex items-center justify-center mb-4\">\n <div className=\"w-8 h-8 bg-green-500 rounded-full flex items-center justify-center\">\n <span className=\"text-white text-lg\">✓</span>\n </div>\n </div>\n </div>\n\n {/* Success details */}\n <div className=\"bg-green-50 border border-green-200 rounded-lg p-4\">\n <h3 className=\"font-medium text-green-900 mb-2\">\n {t(\"success.document_validated\", \"Document validé\")}\n </h3>\n <div className=\"text-sm text-green-800 space-y-1\">\n {validationPoints.map((point, index) => (\n <p key={index}>{point}</p>\n ))}\n </div>\n </div>\n\n {/* Next steps */}\n <div className=\"bg-blue-50 border border-blue-200 rounded-lg p-4\">\n <h3 className=\"font-medium text-blue-900 mb-2\">\n {nextSteps.title}\n </h3>\n <p className=\"text-sm text-blue-800\">{nextSteps.description}</p>\n </div>\n </div>\n </div>\n </MobilePageLayout>\n );\n};\n\nexport default DocumentSuccess;\nexport type { DocumentSuccessProps };\n"],"names":["useI18n","useState","useEffect","getValidationPoints","_jsx","MobilePageLayout","PageActions","Button","_jsxs","Title","Subtitle"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"DocumentVideoCapture.js","sources":["../../../../../src/components/document-video/DocumentVideoCapture.tsx"],"sourcesContent":["import { useState } from \"react\";\nimport DocumentVideoFlow from \"./document-video-flow/DocumentVideoFlow\";\nimport DocumentVideoConfirmation from \"./DocumentVideoConfirmation\";\nimport DocumentVideoProcessing from \"./document-video-flow/DocumentVideoProcessing\";\nimport type {\n DocumentVideoCaptureBySide,\n DocumentVideoPreviewBySide,\n DocumentVideoSide,\n DocumentVideoCaptureData,\n} from \"../../types/documentVideo\";\nimport type { Prediction } from \"../../utils/apiAnalysis\";\n\ninterface DocumentVideoCaptureProps {\n selectedDocumentType: {\n id: string;\n label: string;\n hasTwoSides?: boolean;\n documentTemplateId?: string;\n } | null;\n onComplete: (\n success: boolean,\n predictions?: Prediction[],\n errorCode?: string,\n ) => void;\n onBack: () => void;\n nodeId: string;\n sessionId: string;\n previewOverrides?: DocumentVideoPreviewBySide;\n /** Codes JDI exacts considérés comme bloquants pour ce nœud (cf. node.blockingCodes). Absent = liste par défaut. */\n blockingCodes?: string[];\n}\n\n/**\n * Composant de gestion du flux de capture vidéo de documents.\n * Gère les étapes internes de capture, confirmation et traitement de la vidéo.\n */\nconst DocumentVideoCapture = ({\n selectedDocumentType,\n onComplete,\n onBack,\n nodeId,\n sessionId,\n previewOverrides,\n blockingCodes,\n}: DocumentVideoCaptureProps) => {\n const [internalStep, setInternalStep] = useState(0);\n const [videoData, setVideoData] = useState<DocumentVideoCaptureBySide>({});\n const [thumbnail, setThumbnail] = useState<DocumentVideoPreviewBySide>({});\n const [isTransitioning, setIsTransitioning] = useState(false);\n const [currentSide, setCurrentSide] = useState<DocumentVideoSide>(\"recto\");\n\n const requiresTwoSides = !!selectedDocumentType?.hasTwoSides;\n\n const handleConfirmVideo = () => {\n // Ajouter une transition visuelle avant de passer à l'étape suivante\n setIsTransitioning(true);\n\n // Attendre un peu pour l'animation avant de passer à l'étape suivante\n setTimeout(() => {\n if (requiresTwoSides && currentSide === \"recto\") {\n setCurrentSide(\"verso\");\n setInternalStep(0);\n } else {\n setInternalStep(2); // Passer à l'étape de traitement de la vidéo\n }\n setIsTransitioning(false);\n }, 500);\n };\n\n const videoProcessed = (\n processed: boolean,\n predictions?: Prediction[],\n errorCode?: string,\n ) => {\n // Callback pour indiquer que la vidéo a été traitée\n onComplete(processed, predictions, errorCode);\n };\n\n const onRetake = () => {\n setCurrentSide(\"recto\");\n setVideoData({});\n setThumbnail({});\n setInternalStep(0);\n };\n\n const handleRetakeVideo = () => {\n setVideoData((prev) => ({ ...prev, [currentSide]: undefined }));\n setThumbnail((prev) => ({ ...prev, [currentSide]: undefined }));\n setInternalStep(0);\n };\n\n return (\n <div\n className={`h-full w-full transition-opacity duration-500 ${\n isTransitioning ? \"opacity-50\" : \"opacity-100\"\n }`}\n >\n {internalStep === 0 && (\n <DocumentVideoFlow\n setVideoData={(\n side: DocumentVideoSide,\n data: DocumentVideoCaptureData,\n ) => setVideoData((prev) => ({ ...prev, [side]: data }))}\n setThumbnail={(side: DocumentVideoSide, data: string) =>\n setThumbnail((prev) => ({ ...prev, [side]: data }))\n }\n setStep={setInternalStep}\n onBack={\n currentSide === \"verso\"\n ? () => {\n setCurrentSide(\"recto\");\n setInternalStep(1);\n }\n : onBack\n }\n documentType={selectedDocumentType?.label || \"document\"}\n side={currentSide}\n />\n )}\n {internalStep === 1 &&\n videoData[currentSide] &&\n (thumbnail[currentSide] || previewOverrides?.[currentSide]) && (\n <DocumentVideoConfirmation\n videoData={videoData[currentSide] as DocumentVideoCaptureData}\n thumbnail={\n (previewOverrides?.[currentSide] ||\n thumbnail[currentSide]) as string\n }\n documentType={selectedDocumentType?.label || \"document\"}\n side={currentSide}\n onConfirm={handleConfirmVideo}\n onRetake={handleRetakeVideo}\n />\n )}\n {internalStep === 2 &&\n videoData.recto &&\n (thumbnail.recto || previewOverrides?.recto) && (\n <DocumentVideoProcessing\n onProcessingComplete={videoProcessed}\n videoData={videoData}\n thumbnail={previewOverrides ?? thumbnail}\n onRetake={onRetake}\n sessionId={sessionId}\n nodeId={nodeId}\n documentTemplateId={selectedDocumentType?.documentTemplateId || \"\"}\n documentType={selectedDocumentType?.id || \"document\"}\n requiresTwoSides={requiresTwoSides}\n blockingCodes={blockingCodes}\n />\n )}\n </div>\n );\n};\n\nexport default DocumentVideoCapture;\n"],"names":["useState","_jsxs","_jsx","DocumentVideoFlow","DocumentVideoConfirmation","DocumentVideoProcessing"],"mappings":"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"}