datakeen-session-react 1.1.194 → 1.1.195-dev.10

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 (886) hide show
  1. package/LICENSE +218 -0
  2. package/README.md +1 -17
  3. package/dist/cjs/_virtual/_commonjsHelpers.js +0 -1
  4. package/dist/cjs/_virtual/heic2any.js +0 -1
  5. package/dist/cjs/_virtual/heic2any2.js +0 -1
  6. package/dist/cjs/assets/Face Scan Square.svg.js +0 -1
  7. package/dist/cjs/assets/Lightbulb.svg.js +0 -1
  8. package/dist/cjs/assets/Monitor Camera.svg.js +0 -1
  9. package/dist/cjs/assets/User Hands.svg.js +0 -1
  10. package/dist/cjs/assets/before-document.png.js +0 -1
  11. package/dist/cjs/assets/before-passport.png.js +0 -1
  12. package/dist/cjs/assets/before-photo.png.js +0 -1
  13. package/dist/cjs/assets/before-verso.png.js +0 -1
  14. package/dist/cjs/assets/check.svg.js +0 -1
  15. package/dist/cjs/assets/icons/shield_magic_link.svg.js +0 -1
  16. package/dist/cjs/assets/selfietake.svg.js +0 -1
  17. package/dist/cjs/components/DatakeenSession.js +0 -1
  18. package/dist/cjs/components/document-collection/DocumentCollection.js +0 -1
  19. package/dist/cjs/components/document-collection/DocumentCollectionIntroduction.js +0 -1
  20. package/dist/cjs/components/document-collection/DocumentCollectionMethodSelection.js +0 -1
  21. package/dist/cjs/components/document-collection/DocumentCollectionSelection.js +0 -1
  22. package/dist/cjs/components/document-collection/DocumentCollectionUpload.js +0 -1
  23. package/dist/cjs/components/document-collection/DocumentError.js +5 -2
  24. package/dist/cjs/components/document-collection/DocumentProcessing.js +13 -12
  25. package/dist/cjs/components/document-collection/DocumentSuccess.js +0 -1
  26. package/dist/cjs/components/document-video/DocumentVideoCapture.js +0 -1
  27. package/dist/cjs/components/document-video/DocumentVideoConfirmation.js +0 -1
  28. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoFlow.js +0 -1
  29. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoInstructions.js +0 -1
  30. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoProcessing.js +9 -6
  31. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoRecorder.js +0 -1
  32. package/dist/cjs/components/icons/ElectronicIcon.js +0 -1
  33. package/dist/cjs/components/icons/PoweredByIcon.js +0 -1
  34. package/dist/cjs/components/icons/PreIntroIcon.js +0 -1
  35. package/dist/cjs/components/icons/StartIcon.js +0 -1
  36. package/dist/cjs/components/id-check/BeforePhoto.js +0 -1
  37. package/dist/cjs/components/id-check/BeforeVersoPhoto.js +0 -1
  38. package/dist/cjs/components/id-check/CameraError.js +0 -1
  39. package/dist/cjs/components/id-check/CameraMask.js +0 -1
  40. package/dist/cjs/components/id-check/OrientationToggle.js +0 -1
  41. package/dist/cjs/components/id-check/Photo.js +0 -1
  42. package/dist/cjs/components/id-check/PhotoConfirmation.js +0 -1
  43. package/dist/cjs/components/id-check/PhotoPreview.js +0 -1
  44. package/dist/cjs/components/jdi/JDDWorkInProgress.js +0 -1
  45. package/dist/cjs/components/jdi/JDICountrySelection.js +0 -1
  46. package/dist/cjs/components/jdi/JDIDocumentSelection.js +0 -1
  47. package/dist/cjs/components/jdi/JDIDocumentUpload.js +0 -1
  48. package/dist/cjs/components/jdi/JDIError.js +5 -2
  49. package/dist/cjs/components/jdi/JDIPreIntroduction.js +0 -1
  50. package/dist/cjs/components/jdi/JDIProcessing.js +15 -15
  51. package/dist/cjs/components/jdi/JDISuccess.js +0 -1
  52. package/dist/cjs/components/legal-consent/LegalConsentNode.js +0 -1
  53. package/dist/cjs/components/nfc-scan/BiometricSymbol.js +0 -1
  54. package/dist/cjs/components/nfc-scan/NfcChipGate.js +0 -1
  55. package/dist/cjs/components/nfc-scan/NfcFallbackSurvey.js +0 -1
  56. package/dist/cjs/components/nfc-scan/NfcOnboardingNotice.js +0 -1
  57. package/dist/cjs/components/nfc-scan/NfcScanNode.js +0 -1
  58. package/dist/cjs/components/nfc-scan/NfcSuccessAnimation.js +0 -1
  59. package/dist/cjs/components/nfc-scan/PuceCniSymbol.js +0 -1
  60. package/dist/cjs/components/selfie/SelfieConfirmation.js +0 -1
  61. package/dist/cjs/components/selfie/Video.css.js +0 -1
  62. package/dist/cjs/components/selfie/Video.js +2 -3
  63. package/dist/cjs/components/selfie/VideoFixes.css.js +0 -1
  64. package/dist/cjs/components/selfie/VideoResetStyles.js +0 -1
  65. package/dist/cjs/components/selfie/hooks/useLiveFrameCapture.js +0 -1
  66. package/dist/cjs/components/selfie/hooks/useVideoRecorderStyles.js +0 -1
  67. package/dist/cjs/components/selfie/selfie-flow/InstructionsSelfie.js +0 -1
  68. package/dist/cjs/components/selfie/selfie-flow/SelfieFlow.js +2 -3
  69. package/dist/cjs/components/selfie/selfie-flow/SelfiePreIntroduction.js +0 -1
  70. package/dist/cjs/components/selfie/selfie-flow/SelfieProcessing.js +5 -2
  71. package/dist/cjs/components/selfie/selfie-flow/SelfieRecorder.js +123 -14
  72. package/dist/cjs/components/selfie/utils/selfieCaptureUtils.js +0 -1
  73. package/dist/cjs/components/selfie/utils/unisseyStrings.js +0 -1
  74. package/dist/cjs/components/selfie/utils/videoElementStyles.js +0 -1
  75. package/dist/cjs/components/session/DocumentCheck.js +0 -1
  76. package/dist/cjs/components/session/EndFlow.js +15 -6
  77. package/dist/cjs/components/session/MobileRedirect.js +0 -1
  78. package/dist/cjs/components/session/PdfGeneration.js +0 -1
  79. package/dist/cjs/components/session/Selfie.js +1 -2
  80. package/dist/cjs/components/session/SessionContent.js +5 -4
  81. package/dist/cjs/components/session/SessionExpired.js +0 -1
  82. package/dist/cjs/components/session/StartSession.js +4 -30
  83. package/dist/cjs/components/session/UserInputForm/AddressFields.js +0 -1
  84. package/dist/cjs/components/session/UserInputForm/ContactFields.js +0 -1
  85. package/dist/cjs/components/session/UserInputForm/CustomFormFields.js +2 -11
  86. package/dist/cjs/components/session/UserInputForm/DatePickerField.js +0 -1
  87. package/dist/cjs/components/session/UserInputForm/IdentityFields.js +0 -1
  88. package/dist/cjs/components/session/UserInputForm/LegalEntityFields.js +0 -1
  89. package/dist/cjs/components/session/UserInputForm/LegalRepFields.js +0 -1
  90. package/dist/cjs/components/session/UserInputForm/NationalityField.js +0 -1
  91. package/dist/cjs/components/session/UserInputForm.js +4 -2
  92. package/dist/cjs/components/session/VideoWorkInProgress.js +0 -1
  93. package/dist/cjs/components/session/controleJdiPolicy.js +0 -1
  94. package/dist/cjs/components/session/endScreenIcons.js +0 -1
  95. package/dist/cjs/components/signature-electronic/DocusealSignature.js +0 -1
  96. package/dist/cjs/components/signature-electronic/SignatureElectronic.js +0 -1
  97. package/dist/cjs/components/signature-electronic/SignatureElectronicIntroduction.js +0 -1
  98. package/dist/cjs/components/signature-electronic/SignedDocumentPreview.js +0 -1
  99. package/dist/cjs/components/start-flow/Start.js +6 -7
  100. package/dist/cjs/components/states/ErrorState.js +0 -1
  101. package/dist/cjs/components/states/LoadingState.js +0 -1
  102. package/dist/cjs/components/states/NoSessionIdState.js +0 -1
  103. package/dist/cjs/components/template/ComplementaryMandateNodeHandler.js +35 -0
  104. package/dist/cjs/components/template/ConditionNodeHandler.js +0 -1
  105. package/dist/cjs/components/template/ExternalVerificationNodeHandler.js +82 -39
  106. package/dist/cjs/components/template/TemplateNodeRenderer.js +8 -4
  107. package/dist/cjs/components/template/conditionNodePolicy.js +0 -1
  108. package/dist/cjs/components/ui/Body.js +0 -1
  109. package/dist/cjs/components/ui/Button.js +0 -1
  110. package/dist/cjs/components/ui/ButtonDesktop.js +0 -1
  111. package/dist/cjs/components/ui/Card.js +0 -1
  112. package/dist/cjs/components/ui/MobilePageLayout.js +0 -1
  113. package/dist/cjs/components/ui/PDFPreview.js +0 -1
  114. package/dist/cjs/components/ui/PageActions.js +0 -1
  115. package/dist/cjs/components/ui/Paper.js +0 -1
  116. package/dist/cjs/components/ui/PoweredBy.js +0 -1
  117. package/dist/cjs/components/ui/QRCodeDisplay.js +0 -1
  118. package/dist/cjs/components/ui/SelectComponent.js +0 -1
  119. package/dist/cjs/components/ui/Subtitle.js +0 -1
  120. package/dist/cjs/components/ui/Title.js +0 -1
  121. package/dist/cjs/config/env.js +0 -1
  122. package/dist/cjs/constants/userInputForm.js +0 -1
  123. package/dist/cjs/context/ConfigContext.js +0 -1
  124. package/dist/cjs/context/DocumentContext.js +0 -1
  125. package/dist/cjs/context/SessionContext.js +0 -1
  126. package/dist/cjs/hooks/useClientInfo.js +0 -1
  127. package/dist/cjs/hooks/useCountryOptions.js +0 -1
  128. package/dist/cjs/hooks/useI18n.js +0 -1
  129. package/dist/cjs/hooks/useIsMobile.js +0 -1
  130. package/dist/cjs/hooks/useNfcSseStatus.js +0 -1
  131. package/dist/cjs/hooks/useRouteCSS.js +0 -1
  132. package/dist/cjs/hooks/useSession.js +0 -1
  133. package/dist/cjs/hooks/useSessionData.js +10 -6
  134. package/dist/cjs/hooks/useStepCSS.js +0 -1
  135. package/dist/cjs/hooks/useStepNavigation.js +25 -6
  136. package/dist/cjs/hooks/useTemplateLoader.js +0 -1
  137. package/dist/cjs/hooks/useUserInputForm.js +65 -7
  138. package/dist/cjs/i18n/country/country.en.json.js +0 -1
  139. package/dist/cjs/i18n/country/country.fr.json.js +0 -1
  140. package/dist/cjs/i18n/country/country.iso2.en.json.js +0 -1
  141. package/dist/cjs/i18n/country/country.iso2.fr.json.js +0 -1
  142. package/dist/cjs/i18n/documents/documents.en.json.js +0 -1
  143. package/dist/cjs/i18n/documents/documents.fr.json.js +0 -1
  144. package/dist/cjs/i18n/en.json.js +28 -28
  145. package/dist/cjs/i18n/es.json.js +28 -28
  146. package/dist/cjs/i18n/fr.json.js +28 -28
  147. package/dist/cjs/i18n/index.js +0 -1
  148. package/dist/cjs/index.css.js +0 -1
  149. package/dist/cjs/index.js +0 -1
  150. package/dist/cjs/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +0 -1
  151. package/dist/cjs/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +0 -1
  152. package/dist/cjs/node_modules/date-fns/locale/_lib/buildMatchFn.js +0 -1
  153. package/dist/cjs/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +0 -1
  154. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatDistance.js +0 -1
  155. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatLong.js +0 -1
  156. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatRelative.js +0 -1
  157. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/localize.js +0 -1
  158. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/match.js +0 -1
  159. package/dist/cjs/node_modules/date-fns/locale/en-US.js +0 -1
  160. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatDistance.js +0 -1
  161. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatLong.js +0 -1
  162. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatRelative.js +0 -1
  163. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/localize.js +0 -1
  164. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/match.js +0 -1
  165. package/dist/cjs/node_modules/date-fns/locale/fr.js +0 -1
  166. package/dist/cjs/node_modules/heic2any/dist/heic2any.js +0 -1
  167. package/dist/cjs/node_modules/pdfjs-dist/legacy/build/pdf.js +0 -1
  168. package/dist/cjs/node_modules/pdfjs-dist/legacy/build/pdf.worker.js +0 -1
  169. package/dist/cjs/node_modules/style-inject/dist/style-inject.es.js +0 -1
  170. package/dist/cjs/node_modules/tslib/tslib.es6.js +0 -1
  171. package/dist/cjs/providers/I18nProvider.js +0 -1
  172. package/dist/cjs/services/analysis.js +40 -27
  173. package/dist/cjs/services/api.js +0 -1
  174. package/dist/cjs/services/auditTrailService.js +0 -1
  175. package/dist/cjs/services/cameraService.js +0 -1
  176. package/dist/cjs/services/documentEdgeDetectionService.js +0 -1
  177. package/dist/cjs/services/documentTemplate.js +0 -1
  178. package/dist/cjs/services/iadService.js +29 -0
  179. package/dist/cjs/services/integrationService.js +0 -1
  180. package/dist/cjs/services/pollingService.js +0 -1
  181. package/dist/cjs/services/professionalImageQuality.js +0 -1
  182. package/dist/cjs/services/retryService.js +0 -1
  183. package/dist/cjs/services/sessionCredentials.js +0 -1
  184. package/dist/cjs/services/sessionMemoryStore.js +0 -1
  185. package/dist/cjs/services/sessionService.js +33 -7
  186. package/dist/cjs/services/utils.js +0 -1
  187. package/dist/cjs/types/session.js +0 -1
  188. package/dist/cjs/utils/analysisErrors.js +33 -13
  189. package/dist/cjs/utils/apiAnalysis.js +0 -1
  190. package/dist/cjs/utils/conditionEvaluator.js +0 -1
  191. package/dist/cjs/utils/countryFlags.js +0 -1
  192. package/dist/cjs/utils/cssLoader.js +0 -1
  193. package/dist/cjs/utils/customFieldIds.js +0 -1
  194. package/dist/cjs/utils/customFieldLocks.js +27 -0
  195. package/dist/cjs/utils/customFieldValidation.js +44 -2
  196. package/dist/cjs/utils/documentLabels.js +0 -1
  197. package/dist/cjs/utils/europeanCountries.js +0 -1
  198. package/dist/cjs/utils/fileConverter.js +0 -1
  199. package/dist/cjs/utils/imageConverter.js +0 -1
  200. package/dist/cjs/utils/imageProcessing.js +0 -1
  201. package/dist/cjs/utils/isMobileDevice.js +0 -1
  202. package/dist/cjs/utils/isoCountryCodes.js +0 -1
  203. package/dist/cjs/utils/jdiCodes.js +0 -1
  204. package/dist/cjs/utils/labelToKey.js +0 -1
  205. package/dist/cjs/utils/listFieldUtils.js +0 -1
  206. package/dist/cjs/utils/mimeTypes.js +0 -1
  207. package/dist/cjs/utils/navigation.js +0 -1
  208. package/dist/cjs/utils/renderInlineMarkdown.js +0 -1
  209. package/dist/cjs/utils/sessionStatus.js +27 -0
  210. package/dist/cjs/utils/userInputForm.js +0 -1
  211. package/dist/cjs/utils/utils.js +0 -1
  212. package/dist/cjs/utils/validationUtils.js +0 -1
  213. package/dist/esm/_virtual/_commonjsHelpers.js +0 -1
  214. package/dist/esm/_virtual/heic2any.js +0 -1
  215. package/dist/esm/_virtual/heic2any2.js +0 -1
  216. package/dist/esm/assets/Face Scan Square.svg.js +0 -1
  217. package/dist/esm/assets/Lightbulb.svg.js +0 -1
  218. package/dist/esm/assets/Monitor Camera.svg.js +0 -1
  219. package/dist/esm/assets/User Hands.svg.js +0 -1
  220. package/dist/esm/assets/before-document.png.js +0 -1
  221. package/dist/esm/assets/before-passport.png.js +0 -1
  222. package/dist/esm/assets/before-photo.png.js +0 -1
  223. package/dist/esm/assets/before-verso.png.js +0 -1
  224. package/dist/esm/assets/check.svg.js +0 -1
  225. package/dist/esm/assets/icons/shield_magic_link.svg.js +0 -1
  226. package/dist/esm/assets/selfietake.svg.js +0 -1
  227. package/dist/esm/components/DatakeenSession.js +0 -1
  228. package/dist/esm/components/document-collection/DocumentCollection.js +0 -1
  229. package/dist/esm/components/document-collection/DocumentCollectionIntroduction.js +0 -1
  230. package/dist/esm/components/document-collection/DocumentCollectionMethodSelection.js +0 -1
  231. package/dist/esm/components/document-collection/DocumentCollectionSelection.js +0 -1
  232. package/dist/esm/components/document-collection/DocumentCollectionUpload.js +0 -1
  233. package/dist/esm/components/document-collection/DocumentError.js +5 -2
  234. package/dist/esm/components/document-collection/DocumentProcessing.js +14 -13
  235. package/dist/esm/components/document-collection/DocumentSuccess.js +0 -1
  236. package/dist/esm/components/document-video/DocumentVideoCapture.js +0 -1
  237. package/dist/esm/components/document-video/DocumentVideoConfirmation.js +0 -1
  238. package/dist/esm/components/document-video/document-video-flow/DocumentVideoFlow.js +0 -1
  239. package/dist/esm/components/document-video/document-video-flow/DocumentVideoInstructions.js +0 -1
  240. package/dist/esm/components/document-video/document-video-flow/DocumentVideoProcessing.js +9 -6
  241. package/dist/esm/components/document-video/document-video-flow/DocumentVideoRecorder.js +0 -1
  242. package/dist/esm/components/icons/ElectronicIcon.js +0 -1
  243. package/dist/esm/components/icons/PoweredByIcon.js +0 -1
  244. package/dist/esm/components/icons/PreIntroIcon.js +0 -1
  245. package/dist/esm/components/icons/StartIcon.js +0 -1
  246. package/dist/esm/components/id-check/BeforePhoto.js +0 -1
  247. package/dist/esm/components/id-check/BeforeVersoPhoto.js +0 -1
  248. package/dist/esm/components/id-check/CameraError.js +0 -1
  249. package/dist/esm/components/id-check/CameraMask.js +0 -1
  250. package/dist/esm/components/id-check/OrientationToggle.js +0 -1
  251. package/dist/esm/components/id-check/Photo.js +0 -1
  252. package/dist/esm/components/id-check/PhotoConfirmation.js +0 -1
  253. package/dist/esm/components/id-check/PhotoPreview.js +0 -1
  254. package/dist/esm/components/jdi/JDDWorkInProgress.js +0 -1
  255. package/dist/esm/components/jdi/JDICountrySelection.js +0 -1
  256. package/dist/esm/components/jdi/JDIDocumentSelection.js +0 -1
  257. package/dist/esm/components/jdi/JDIDocumentUpload.js +0 -1
  258. package/dist/esm/components/jdi/JDIError.js +5 -2
  259. package/dist/esm/components/jdi/JDIPreIntroduction.js +0 -1
  260. package/dist/esm/components/jdi/JDIProcessing.js +16 -16
  261. package/dist/esm/components/jdi/JDISuccess.js +0 -1
  262. package/dist/esm/components/legal-consent/LegalConsentNode.js +0 -1
  263. package/dist/esm/components/nfc-scan/BiometricSymbol.js +0 -1
  264. package/dist/esm/components/nfc-scan/NfcChipGate.js +0 -1
  265. package/dist/esm/components/nfc-scan/NfcFallbackSurvey.js +0 -1
  266. package/dist/esm/components/nfc-scan/NfcOnboardingNotice.js +0 -1
  267. package/dist/esm/components/nfc-scan/NfcScanNode.js +0 -1
  268. package/dist/esm/components/nfc-scan/NfcSuccessAnimation.js +0 -1
  269. package/dist/esm/components/nfc-scan/PuceCniSymbol.js +0 -1
  270. package/dist/esm/components/selfie/SelfieConfirmation.js +0 -1
  271. package/dist/esm/components/selfie/Video.css.js +0 -1
  272. package/dist/esm/components/selfie/Video.js +2 -3
  273. package/dist/esm/components/selfie/VideoFixes.css.js +0 -1
  274. package/dist/esm/components/selfie/VideoResetStyles.js +0 -1
  275. package/dist/esm/components/selfie/hooks/useLiveFrameCapture.js +0 -1
  276. package/dist/esm/components/selfie/hooks/useVideoRecorderStyles.js +0 -1
  277. package/dist/esm/components/selfie/selfie-flow/InstructionsSelfie.js +0 -1
  278. package/dist/esm/components/selfie/selfie-flow/SelfieFlow.js +2 -3
  279. package/dist/esm/components/selfie/selfie-flow/SelfiePreIntroduction.js +0 -1
  280. package/dist/esm/components/selfie/selfie-flow/SelfieProcessing.js +5 -2
  281. package/dist/esm/components/selfie/selfie-flow/SelfieRecorder.js +124 -15
  282. package/dist/esm/components/selfie/utils/selfieCaptureUtils.js +0 -1
  283. package/dist/esm/components/selfie/utils/unisseyStrings.js +0 -1
  284. package/dist/esm/components/selfie/utils/videoElementStyles.js +0 -1
  285. package/dist/esm/components/session/DocumentCheck.js +0 -1
  286. package/dist/esm/components/session/EndFlow.js +15 -6
  287. package/dist/esm/components/session/MobileRedirect.js +0 -1
  288. package/dist/esm/components/session/PdfGeneration.js +0 -1
  289. package/dist/esm/components/session/Selfie.js +1 -2
  290. package/dist/esm/components/session/SessionContent.js +5 -4
  291. package/dist/esm/components/session/SessionExpired.js +0 -1
  292. package/dist/esm/components/session/StartSession.js +5 -31
  293. package/dist/esm/components/session/UserInputForm/AddressFields.js +0 -1
  294. package/dist/esm/components/session/UserInputForm/ContactFields.js +0 -1
  295. package/dist/esm/components/session/UserInputForm/CustomFormFields.js +1 -10
  296. package/dist/esm/components/session/UserInputForm/DatePickerField.js +0 -1
  297. package/dist/esm/components/session/UserInputForm/IdentityFields.js +0 -1
  298. package/dist/esm/components/session/UserInputForm/LegalEntityFields.js +0 -1
  299. package/dist/esm/components/session/UserInputForm/LegalRepFields.js +0 -1
  300. package/dist/esm/components/session/UserInputForm/NationalityField.js +0 -1
  301. package/dist/esm/components/session/UserInputForm.js +4 -2
  302. package/dist/esm/components/session/VideoWorkInProgress.js +0 -1
  303. package/dist/esm/components/session/controleJdiPolicy.js +0 -1
  304. package/dist/esm/components/session/endScreenIcons.js +0 -1
  305. package/dist/esm/components/signature-electronic/DocusealSignature.js +0 -1
  306. package/dist/esm/components/signature-electronic/SignatureElectronic.js +0 -1
  307. package/dist/esm/components/signature-electronic/SignatureElectronicIntroduction.js +0 -1
  308. package/dist/esm/components/signature-electronic/SignedDocumentPreview.js +0 -1
  309. package/dist/esm/components/start-flow/Start.js +6 -7
  310. package/dist/esm/components/states/ErrorState.js +0 -1
  311. package/dist/esm/components/states/LoadingState.js +0 -1
  312. package/dist/esm/components/states/NoSessionIdState.js +0 -1
  313. package/dist/esm/components/template/ComplementaryMandateNodeHandler.js +31 -0
  314. package/dist/esm/components/template/ConditionNodeHandler.js +0 -1
  315. package/dist/esm/components/template/ExternalVerificationNodeHandler.js +82 -39
  316. package/dist/esm/components/template/TemplateNodeRenderer.js +8 -4
  317. package/dist/esm/components/template/conditionNodePolicy.js +0 -1
  318. package/dist/esm/components/ui/Body.js +0 -1
  319. package/dist/esm/components/ui/Button.js +0 -1
  320. package/dist/esm/components/ui/ButtonDesktop.js +0 -1
  321. package/dist/esm/components/ui/Card.js +0 -1
  322. package/dist/esm/components/ui/MobilePageLayout.js +0 -1
  323. package/dist/esm/components/ui/PDFPreview.js +0 -1
  324. package/dist/esm/components/ui/PageActions.js +0 -1
  325. package/dist/esm/components/ui/Paper.js +0 -1
  326. package/dist/esm/components/ui/PoweredBy.js +0 -1
  327. package/dist/esm/components/ui/QRCodeDisplay.js +0 -1
  328. package/dist/esm/components/ui/SelectComponent.js +0 -1
  329. package/dist/esm/components/ui/Subtitle.js +0 -1
  330. package/dist/esm/components/ui/Title.js +0 -1
  331. package/dist/esm/config/env.js +0 -1
  332. package/dist/esm/constants/userInputForm.js +0 -1
  333. package/dist/esm/context/ConfigContext.js +0 -1
  334. package/dist/esm/context/DocumentContext.js +0 -1
  335. package/dist/esm/context/SessionContext.js +0 -1
  336. package/dist/esm/hooks/useClientInfo.js +0 -1
  337. package/dist/esm/hooks/useCountryOptions.js +0 -1
  338. package/dist/esm/hooks/useI18n.js +0 -1
  339. package/dist/esm/hooks/useIsMobile.js +0 -1
  340. package/dist/esm/hooks/useNfcSseStatus.js +0 -1
  341. package/dist/esm/hooks/useRouteCSS.js +0 -1
  342. package/dist/esm/hooks/useSession.js +0 -1
  343. package/dist/esm/hooks/useSessionData.js +10 -6
  344. package/dist/esm/hooks/useStepCSS.js +0 -1
  345. package/dist/esm/hooks/useStepNavigation.js +23 -4
  346. package/dist/esm/hooks/useTemplateLoader.js +0 -1
  347. package/dist/esm/hooks/useUserInputForm.js +66 -8
  348. package/dist/esm/i18n/country/country.en.json.js +0 -1
  349. package/dist/esm/i18n/country/country.fr.json.js +0 -1
  350. package/dist/esm/i18n/country/country.iso2.en.json.js +0 -1
  351. package/dist/esm/i18n/country/country.iso2.fr.json.js +0 -1
  352. package/dist/esm/i18n/documents/documents.en.json.js +0 -1
  353. package/dist/esm/i18n/documents/documents.fr.json.js +0 -1
  354. package/dist/esm/i18n/en.json.js +28 -28
  355. package/dist/esm/i18n/es.json.js +28 -28
  356. package/dist/esm/i18n/fr.json.js +28 -28
  357. package/dist/esm/i18n/index.js +0 -1
  358. package/dist/esm/index.css.js +0 -1
  359. package/dist/esm/index.js +0 -1
  360. package/dist/esm/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +0 -1
  361. package/dist/esm/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +0 -1
  362. package/dist/esm/node_modules/date-fns/locale/_lib/buildMatchFn.js +0 -1
  363. package/dist/esm/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +0 -1
  364. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatDistance.js +0 -1
  365. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatLong.js +0 -1
  366. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatRelative.js +0 -1
  367. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/localize.js +0 -1
  368. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/match.js +0 -1
  369. package/dist/esm/node_modules/date-fns/locale/en-US.js +0 -1
  370. package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatDistance.js +0 -1
  371. package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatLong.js +0 -1
  372. package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatRelative.js +0 -1
  373. package/dist/esm/node_modules/date-fns/locale/fr/_lib/localize.js +0 -1
  374. package/dist/esm/node_modules/date-fns/locale/fr/_lib/match.js +0 -1
  375. package/dist/esm/node_modules/date-fns/locale/fr.js +0 -1
  376. package/dist/esm/node_modules/heic2any/dist/heic2any.js +0 -1
  377. package/dist/esm/node_modules/pdfjs-dist/legacy/build/pdf.js +0 -1
  378. package/dist/esm/node_modules/pdfjs-dist/legacy/build/pdf.worker.js +0 -1
  379. package/dist/esm/node_modules/style-inject/dist/style-inject.es.js +0 -1
  380. package/dist/esm/node_modules/tslib/tslib.es6.js +0 -1
  381. package/dist/esm/providers/I18nProvider.js +0 -1
  382. package/dist/esm/services/analysis.js +40 -27
  383. package/dist/esm/services/api.js +0 -1
  384. package/dist/esm/services/auditTrailService.js +0 -1
  385. package/dist/esm/services/cameraService.js +0 -1
  386. package/dist/esm/services/documentEdgeDetectionService.js +0 -1
  387. package/dist/esm/services/documentTemplate.js +0 -1
  388. package/dist/esm/services/iadService.js +27 -0
  389. package/dist/esm/services/integrationService.js +0 -1
  390. package/dist/esm/services/pollingService.js +0 -1
  391. package/dist/esm/services/professionalImageQuality.js +0 -1
  392. package/dist/esm/services/retryService.js +0 -1
  393. package/dist/esm/services/sessionCredentials.js +0 -1
  394. package/dist/esm/services/sessionMemoryStore.js +0 -1
  395. package/dist/esm/services/sessionService.js +33 -8
  396. package/dist/esm/services/utils.js +0 -1
  397. package/dist/esm/types/session.js +0 -1
  398. package/dist/esm/utils/analysisErrors.js +30 -13
  399. package/dist/esm/utils/apiAnalysis.js +0 -1
  400. package/dist/esm/utils/conditionEvaluator.js +0 -1
  401. package/dist/esm/utils/countryFlags.js +0 -1
  402. package/dist/esm/utils/cssLoader.js +0 -1
  403. package/dist/esm/utils/customFieldIds.js +0 -1
  404. package/dist/esm/utils/customFieldLocks.js +24 -0
  405. package/dist/esm/utils/customFieldValidation.js +44 -3
  406. package/dist/esm/utils/documentLabels.js +0 -1
  407. package/dist/esm/utils/europeanCountries.js +0 -1
  408. package/dist/esm/utils/fileConverter.js +0 -1
  409. package/dist/esm/utils/imageConverter.js +0 -1
  410. package/dist/esm/utils/imageProcessing.js +0 -1
  411. package/dist/esm/utils/isMobileDevice.js +0 -1
  412. package/dist/esm/utils/isoCountryCodes.js +0 -1
  413. package/dist/esm/utils/jdiCodes.js +0 -1
  414. package/dist/esm/utils/labelToKey.js +0 -1
  415. package/dist/esm/utils/listFieldUtils.js +0 -1
  416. package/dist/esm/utils/mimeTypes.js +0 -1
  417. package/dist/esm/utils/navigation.js +0 -1
  418. package/dist/esm/utils/renderInlineMarkdown.js +0 -1
  419. package/dist/esm/utils/sessionStatus.js +25 -0
  420. package/dist/esm/utils/userInputForm.js +0 -1
  421. package/dist/esm/utils/utils.js +0 -1
  422. package/dist/esm/utils/validationUtils.js +0 -1
  423. package/package.json +9 -2
  424. package/.gitlab/issue_templates/bug.md +0 -14
  425. package/.gitlab/issue_templates/feature.md +0 -11
  426. package/.gitlab/issue_templates/task.md +0 -11
  427. package/.gitlab/merge_request_templates/default.md +0 -15
  428. package/.gitlab/merge_request_templates/hotfix.md +0 -15
  429. package/.gitlab-ci.yml +0 -290
  430. package/CLAUDE.md +0 -233
  431. package/__mocks__/@unissey-web/sdk-react.js +0 -17
  432. package/__mocks__/fileMock.js +0 -1
  433. package/__mocks__/pdfjs-dist/legacy/build/pdf.js +0 -5
  434. package/__mocks__/pdfjs-dist/legacy/build/pdf.worker.js +0 -1
  435. package/assets/logo.svg +0 -56
  436. package/axios.install.md +0 -2
  437. package/babel.config.js +0 -15
  438. package/dist/cjs/_virtual/_commonjsHelpers.js.map +0 -1
  439. package/dist/cjs/_virtual/heic2any.js.map +0 -1
  440. package/dist/cjs/_virtual/heic2any2.js.map +0 -1
  441. package/dist/cjs/assets/Face Scan Square.svg.js.map +0 -1
  442. package/dist/cjs/assets/Lightbulb.svg.js.map +0 -1
  443. package/dist/cjs/assets/Monitor Camera.svg.js.map +0 -1
  444. package/dist/cjs/assets/User Hands.svg.js.map +0 -1
  445. package/dist/cjs/assets/before-document.png.js.map +0 -1
  446. package/dist/cjs/assets/before-passport.png.js.map +0 -1
  447. package/dist/cjs/assets/before-photo.png.js.map +0 -1
  448. package/dist/cjs/assets/before-verso.png.js.map +0 -1
  449. package/dist/cjs/assets/check.svg.js.map +0 -1
  450. package/dist/cjs/assets/icons/shield_magic_link.svg.js.map +0 -1
  451. package/dist/cjs/assets/selfietake.svg.js.map +0 -1
  452. package/dist/cjs/components/DatakeenSession.js.map +0 -1
  453. package/dist/cjs/components/document-collection/DocumentCollection.js.map +0 -1
  454. package/dist/cjs/components/document-collection/DocumentCollectionIntroduction.js.map +0 -1
  455. package/dist/cjs/components/document-collection/DocumentCollectionMethodSelection.js.map +0 -1
  456. package/dist/cjs/components/document-collection/DocumentCollectionSelection.js.map +0 -1
  457. package/dist/cjs/components/document-collection/DocumentCollectionUpload.js.map +0 -1
  458. package/dist/cjs/components/document-collection/DocumentError.js.map +0 -1
  459. package/dist/cjs/components/document-collection/DocumentProcessing.js.map +0 -1
  460. package/dist/cjs/components/document-collection/DocumentSuccess.js.map +0 -1
  461. package/dist/cjs/components/document-video/DocumentVideoCapture.js.map +0 -1
  462. package/dist/cjs/components/document-video/DocumentVideoConfirmation.js.map +0 -1
  463. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoFlow.js.map +0 -1
  464. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoInstructions.js.map +0 -1
  465. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoProcessing.js.map +0 -1
  466. package/dist/cjs/components/document-video/document-video-flow/DocumentVideoRecorder.js.map +0 -1
  467. package/dist/cjs/components/icons/ElectronicIcon.js.map +0 -1
  468. package/dist/cjs/components/icons/PoweredByIcon.js.map +0 -1
  469. package/dist/cjs/components/icons/PreIntroIcon.js.map +0 -1
  470. package/dist/cjs/components/icons/StartIcon.js.map +0 -1
  471. package/dist/cjs/components/id-check/BeforePhoto.js.map +0 -1
  472. package/dist/cjs/components/id-check/BeforeVersoPhoto.js.map +0 -1
  473. package/dist/cjs/components/id-check/CameraError.js.map +0 -1
  474. package/dist/cjs/components/id-check/CameraMask.js.map +0 -1
  475. package/dist/cjs/components/id-check/OrientationToggle.js.map +0 -1
  476. package/dist/cjs/components/id-check/Photo.js.map +0 -1
  477. package/dist/cjs/components/id-check/PhotoConfirmation.js.map +0 -1
  478. package/dist/cjs/components/id-check/PhotoPreview.js.map +0 -1
  479. package/dist/cjs/components/jdi/JDDWorkInProgress.js.map +0 -1
  480. package/dist/cjs/components/jdi/JDICountrySelection.js.map +0 -1
  481. package/dist/cjs/components/jdi/JDIDocumentSelection.js.map +0 -1
  482. package/dist/cjs/components/jdi/JDIDocumentUpload.js.map +0 -1
  483. package/dist/cjs/components/jdi/JDIError.js.map +0 -1
  484. package/dist/cjs/components/jdi/JDIPreIntroduction.js.map +0 -1
  485. package/dist/cjs/components/jdi/JDIProcessing.js.map +0 -1
  486. package/dist/cjs/components/jdi/JDISuccess.js.map +0 -1
  487. package/dist/cjs/components/legal-consent/LegalConsentNode.js.map +0 -1
  488. package/dist/cjs/components/nfc-scan/BiometricSymbol.js.map +0 -1
  489. package/dist/cjs/components/nfc-scan/NfcChipGate.js.map +0 -1
  490. package/dist/cjs/components/nfc-scan/NfcFallbackSurvey.js.map +0 -1
  491. package/dist/cjs/components/nfc-scan/NfcOnboardingNotice.js.map +0 -1
  492. package/dist/cjs/components/nfc-scan/NfcScanNode.js.map +0 -1
  493. package/dist/cjs/components/nfc-scan/NfcSuccessAnimation.js.map +0 -1
  494. package/dist/cjs/components/nfc-scan/PuceCniSymbol.js.map +0 -1
  495. package/dist/cjs/components/selfie/SelfieConfirmation.js.map +0 -1
  496. package/dist/cjs/components/selfie/Video.css.js.map +0 -1
  497. package/dist/cjs/components/selfie/Video.js.map +0 -1
  498. package/dist/cjs/components/selfie/VideoFixes.css.js.map +0 -1
  499. package/dist/cjs/components/selfie/VideoResetStyles.js.map +0 -1
  500. package/dist/cjs/components/selfie/hooks/useLiveFrameCapture.js.map +0 -1
  501. package/dist/cjs/components/selfie/hooks/useVideoRecorderStyles.js.map +0 -1
  502. package/dist/cjs/components/selfie/selfie-flow/InstructionsSelfie.js.map +0 -1
  503. package/dist/cjs/components/selfie/selfie-flow/SelfieFlow.js.map +0 -1
  504. package/dist/cjs/components/selfie/selfie-flow/SelfiePreIntroduction.js.map +0 -1
  505. package/dist/cjs/components/selfie/selfie-flow/SelfieProcessing.js.map +0 -1
  506. package/dist/cjs/components/selfie/selfie-flow/SelfieRecorder.js.map +0 -1
  507. package/dist/cjs/components/selfie/utils/selfieCaptureUtils.js.map +0 -1
  508. package/dist/cjs/components/selfie/utils/unisseyStrings.js.map +0 -1
  509. package/dist/cjs/components/selfie/utils/videoElementStyles.js.map +0 -1
  510. package/dist/cjs/components/session/DocumentCheck.js.map +0 -1
  511. package/dist/cjs/components/session/EndFlow.js.map +0 -1
  512. package/dist/cjs/components/session/MobileRedirect.js.map +0 -1
  513. package/dist/cjs/components/session/PdfGeneration.js.map +0 -1
  514. package/dist/cjs/components/session/Selfie.js.map +0 -1
  515. package/dist/cjs/components/session/SessionContent.js.map +0 -1
  516. package/dist/cjs/components/session/SessionExpired.js.map +0 -1
  517. package/dist/cjs/components/session/StartSession.js.map +0 -1
  518. package/dist/cjs/components/session/UserInputForm/AddressFields.js.map +0 -1
  519. package/dist/cjs/components/session/UserInputForm/ContactFields.js.map +0 -1
  520. package/dist/cjs/components/session/UserInputForm/CustomFormFields.js.map +0 -1
  521. package/dist/cjs/components/session/UserInputForm/DatePickerField.js.map +0 -1
  522. package/dist/cjs/components/session/UserInputForm/IdentityFields.js.map +0 -1
  523. package/dist/cjs/components/session/UserInputForm/LegalEntityFields.js.map +0 -1
  524. package/dist/cjs/components/session/UserInputForm/LegalRepFields.js.map +0 -1
  525. package/dist/cjs/components/session/UserInputForm/NationalityField.js.map +0 -1
  526. package/dist/cjs/components/session/UserInputForm.js.map +0 -1
  527. package/dist/cjs/components/session/VideoWorkInProgress.js.map +0 -1
  528. package/dist/cjs/components/session/controleJdiPolicy.js.map +0 -1
  529. package/dist/cjs/components/session/endScreenIcons.js.map +0 -1
  530. package/dist/cjs/components/signature-electronic/DocusealSignature.js.map +0 -1
  531. package/dist/cjs/components/signature-electronic/SignatureElectronic.js.map +0 -1
  532. package/dist/cjs/components/signature-electronic/SignatureElectronicIntroduction.js.map +0 -1
  533. package/dist/cjs/components/signature-electronic/SignedDocumentPreview.js.map +0 -1
  534. package/dist/cjs/components/start-flow/CGU.js +0 -132
  535. package/dist/cjs/components/start-flow/CGU.js.map +0 -1
  536. package/dist/cjs/components/start-flow/Start.js.map +0 -1
  537. package/dist/cjs/components/states/ErrorState.js.map +0 -1
  538. package/dist/cjs/components/states/LoadingState.js.map +0 -1
  539. package/dist/cjs/components/states/NoSessionIdState.js.map +0 -1
  540. package/dist/cjs/components/template/ConditionNodeHandler.js.map +0 -1
  541. package/dist/cjs/components/template/ExternalVerificationNodeHandler.js.map +0 -1
  542. package/dist/cjs/components/template/TemplateNodeRenderer.js.map +0 -1
  543. package/dist/cjs/components/template/conditionNodePolicy.js.map +0 -1
  544. package/dist/cjs/components/ui/Body.js.map +0 -1
  545. package/dist/cjs/components/ui/Button.js.map +0 -1
  546. package/dist/cjs/components/ui/ButtonDesktop.js.map +0 -1
  547. package/dist/cjs/components/ui/Card.js.map +0 -1
  548. package/dist/cjs/components/ui/LanguageSelector.js +0 -46
  549. package/dist/cjs/components/ui/LanguageSelector.js.map +0 -1
  550. package/dist/cjs/components/ui/MobilePageLayout.js.map +0 -1
  551. package/dist/cjs/components/ui/PDFPreview.js.map +0 -1
  552. package/dist/cjs/components/ui/PageActions.js.map +0 -1
  553. package/dist/cjs/components/ui/Paper.js.map +0 -1
  554. package/dist/cjs/components/ui/PoweredBy.js.map +0 -1
  555. package/dist/cjs/components/ui/QRCodeDisplay.js.map +0 -1
  556. package/dist/cjs/components/ui/SelectComponent.js.map +0 -1
  557. package/dist/cjs/components/ui/Subtitle.js.map +0 -1
  558. package/dist/cjs/components/ui/Title.js.map +0 -1
  559. package/dist/cjs/config/env.js.map +0 -1
  560. package/dist/cjs/constants/userInputForm.js.map +0 -1
  561. package/dist/cjs/context/ConfigContext.js.map +0 -1
  562. package/dist/cjs/context/DocumentContext.js.map +0 -1
  563. package/dist/cjs/context/SessionContext.js.map +0 -1
  564. package/dist/cjs/hooks/useClientInfo.js.map +0 -1
  565. package/dist/cjs/hooks/useCountryOptions.js.map +0 -1
  566. package/dist/cjs/hooks/useI18n.js.map +0 -1
  567. package/dist/cjs/hooks/useIsMobile.js.map +0 -1
  568. package/dist/cjs/hooks/useNfcSseStatus.js.map +0 -1
  569. package/dist/cjs/hooks/useRouteCSS.js.map +0 -1
  570. package/dist/cjs/hooks/useSession.js.map +0 -1
  571. package/dist/cjs/hooks/useSessionData.js.map +0 -1
  572. package/dist/cjs/hooks/useStepCSS.js.map +0 -1
  573. package/dist/cjs/hooks/useStepNavigation.js.map +0 -1
  574. package/dist/cjs/hooks/useTemplateLoader.js.map +0 -1
  575. package/dist/cjs/hooks/useUserInputForm.js.map +0 -1
  576. package/dist/cjs/i18n/country/country.en.json.js.map +0 -1
  577. package/dist/cjs/i18n/country/country.fr.json.js.map +0 -1
  578. package/dist/cjs/i18n/country/country.iso2.en.json.js.map +0 -1
  579. package/dist/cjs/i18n/country/country.iso2.fr.json.js.map +0 -1
  580. package/dist/cjs/i18n/documents/documents.en.json.js.map +0 -1
  581. package/dist/cjs/i18n/documents/documents.fr.json.js.map +0 -1
  582. package/dist/cjs/i18n/en.json.js.map +0 -1
  583. package/dist/cjs/i18n/es.json.js.map +0 -1
  584. package/dist/cjs/i18n/fr.json.js.map +0 -1
  585. package/dist/cjs/i18n/index.js.map +0 -1
  586. package/dist/cjs/index.css.js.map +0 -1
  587. package/dist/cjs/index.js.map +0 -1
  588. package/dist/cjs/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +0 -1
  589. package/dist/cjs/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +0 -1
  590. package/dist/cjs/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +0 -1
  591. package/dist/cjs/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +0 -1
  592. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +0 -1
  593. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatLong.js.map +0 -1
  594. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/formatRelative.js.map +0 -1
  595. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/localize.js.map +0 -1
  596. package/dist/cjs/node_modules/date-fns/locale/en-US/_lib/match.js.map +0 -1
  597. package/dist/cjs/node_modules/date-fns/locale/en-US.js.map +0 -1
  598. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatDistance.js.map +0 -1
  599. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatLong.js.map +0 -1
  600. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/formatRelative.js.map +0 -1
  601. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/localize.js.map +0 -1
  602. package/dist/cjs/node_modules/date-fns/locale/fr/_lib/match.js.map +0 -1
  603. package/dist/cjs/node_modules/date-fns/locale/fr.js.map +0 -1
  604. package/dist/cjs/node_modules/heic2any/dist/heic2any.js.map +0 -1
  605. package/dist/cjs/node_modules/pdfjs-dist/legacy/build/pdf.js.map +0 -1
  606. package/dist/cjs/node_modules/pdfjs-dist/legacy/build/pdf.worker.js.map +0 -1
  607. package/dist/cjs/node_modules/style-inject/dist/style-inject.es.js.map +0 -1
  608. package/dist/cjs/node_modules/tslib/tslib.es6.js.map +0 -1
  609. package/dist/cjs/providers/I18nProvider.js.map +0 -1
  610. package/dist/cjs/services/analysis.js.map +0 -1
  611. package/dist/cjs/services/api.js.map +0 -1
  612. package/dist/cjs/services/auditTrailService.js.map +0 -1
  613. package/dist/cjs/services/cameraService.js.map +0 -1
  614. package/dist/cjs/services/documentEdgeDetectionService.js.map +0 -1
  615. package/dist/cjs/services/documentTemplate.js.map +0 -1
  616. package/dist/cjs/services/integrationService.js.map +0 -1
  617. package/dist/cjs/services/pollingService.js.map +0 -1
  618. package/dist/cjs/services/professionalImageQuality.js.map +0 -1
  619. package/dist/cjs/services/retryService.js.map +0 -1
  620. package/dist/cjs/services/sessionCredentials.js.map +0 -1
  621. package/dist/cjs/services/sessionMemoryStore.js.map +0 -1
  622. package/dist/cjs/services/sessionService.js.map +0 -1
  623. package/dist/cjs/services/utils.js.map +0 -1
  624. package/dist/cjs/types/session.js.map +0 -1
  625. package/dist/cjs/utils/analysisErrors.js.map +0 -1
  626. package/dist/cjs/utils/apiAnalysis.js.map +0 -1
  627. package/dist/cjs/utils/conditionEvaluator.js.map +0 -1
  628. package/dist/cjs/utils/countryFlags.js.map +0 -1
  629. package/dist/cjs/utils/cssLoader.js.map +0 -1
  630. package/dist/cjs/utils/customFieldIds.js.map +0 -1
  631. package/dist/cjs/utils/customFieldValidation.js.map +0 -1
  632. package/dist/cjs/utils/documentLabels.js.map +0 -1
  633. package/dist/cjs/utils/europeanCountries.js.map +0 -1
  634. package/dist/cjs/utils/fileConverter.js.map +0 -1
  635. package/dist/cjs/utils/imageConverter.js.map +0 -1
  636. package/dist/cjs/utils/imageProcessing.js.map +0 -1
  637. package/dist/cjs/utils/isMobileDevice.js.map +0 -1
  638. package/dist/cjs/utils/isoCountryCodes.js.map +0 -1
  639. package/dist/cjs/utils/jdiCodes.js.map +0 -1
  640. package/dist/cjs/utils/labelToKey.js.map +0 -1
  641. package/dist/cjs/utils/languageFlags.js +0 -46
  642. package/dist/cjs/utils/languageFlags.js.map +0 -1
  643. package/dist/cjs/utils/listFieldUtils.js.map +0 -1
  644. package/dist/cjs/utils/mimeTypes.js.map +0 -1
  645. package/dist/cjs/utils/navigation.js.map +0 -1
  646. package/dist/cjs/utils/renderInlineMarkdown.js.map +0 -1
  647. package/dist/cjs/utils/userInputForm.js.map +0 -1
  648. package/dist/cjs/utils/utils.js.map +0 -1
  649. package/dist/cjs/utils/validationUtils.js.map +0 -1
  650. package/dist/esm/_virtual/_commonjsHelpers.js.map +0 -1
  651. package/dist/esm/_virtual/heic2any.js.map +0 -1
  652. package/dist/esm/_virtual/heic2any2.js.map +0 -1
  653. package/dist/esm/assets/Face Scan Square.svg.js.map +0 -1
  654. package/dist/esm/assets/Lightbulb.svg.js.map +0 -1
  655. package/dist/esm/assets/Monitor Camera.svg.js.map +0 -1
  656. package/dist/esm/assets/User Hands.svg.js.map +0 -1
  657. package/dist/esm/assets/before-document.png.js.map +0 -1
  658. package/dist/esm/assets/before-passport.png.js.map +0 -1
  659. package/dist/esm/assets/before-photo.png.js.map +0 -1
  660. package/dist/esm/assets/before-verso.png.js.map +0 -1
  661. package/dist/esm/assets/check.svg.js.map +0 -1
  662. package/dist/esm/assets/icons/shield_magic_link.svg.js.map +0 -1
  663. package/dist/esm/assets/selfietake.svg.js.map +0 -1
  664. package/dist/esm/components/DatakeenSession.js.map +0 -1
  665. package/dist/esm/components/document-collection/DocumentCollection.js.map +0 -1
  666. package/dist/esm/components/document-collection/DocumentCollectionIntroduction.js.map +0 -1
  667. package/dist/esm/components/document-collection/DocumentCollectionMethodSelection.js.map +0 -1
  668. package/dist/esm/components/document-collection/DocumentCollectionSelection.js.map +0 -1
  669. package/dist/esm/components/document-collection/DocumentCollectionUpload.js.map +0 -1
  670. package/dist/esm/components/document-collection/DocumentError.js.map +0 -1
  671. package/dist/esm/components/document-collection/DocumentProcessing.js.map +0 -1
  672. package/dist/esm/components/document-collection/DocumentSuccess.js.map +0 -1
  673. package/dist/esm/components/document-video/DocumentVideoCapture.js.map +0 -1
  674. package/dist/esm/components/document-video/DocumentVideoConfirmation.js.map +0 -1
  675. package/dist/esm/components/document-video/document-video-flow/DocumentVideoFlow.js.map +0 -1
  676. package/dist/esm/components/document-video/document-video-flow/DocumentVideoInstructions.js.map +0 -1
  677. package/dist/esm/components/document-video/document-video-flow/DocumentVideoProcessing.js.map +0 -1
  678. package/dist/esm/components/document-video/document-video-flow/DocumentVideoRecorder.js.map +0 -1
  679. package/dist/esm/components/icons/ElectronicIcon.js.map +0 -1
  680. package/dist/esm/components/icons/PoweredByIcon.js.map +0 -1
  681. package/dist/esm/components/icons/PreIntroIcon.js.map +0 -1
  682. package/dist/esm/components/icons/StartIcon.js.map +0 -1
  683. package/dist/esm/components/id-check/BeforePhoto.js.map +0 -1
  684. package/dist/esm/components/id-check/BeforeVersoPhoto.js.map +0 -1
  685. package/dist/esm/components/id-check/CameraError.js.map +0 -1
  686. package/dist/esm/components/id-check/CameraMask.js.map +0 -1
  687. package/dist/esm/components/id-check/OrientationToggle.js.map +0 -1
  688. package/dist/esm/components/id-check/Photo.js.map +0 -1
  689. package/dist/esm/components/id-check/PhotoConfirmation.js.map +0 -1
  690. package/dist/esm/components/id-check/PhotoPreview.js.map +0 -1
  691. package/dist/esm/components/jdi/JDDWorkInProgress.js.map +0 -1
  692. package/dist/esm/components/jdi/JDICountrySelection.js.map +0 -1
  693. package/dist/esm/components/jdi/JDIDocumentSelection.js.map +0 -1
  694. package/dist/esm/components/jdi/JDIDocumentUpload.js.map +0 -1
  695. package/dist/esm/components/jdi/JDIError.js.map +0 -1
  696. package/dist/esm/components/jdi/JDIPreIntroduction.js.map +0 -1
  697. package/dist/esm/components/jdi/JDIProcessing.js.map +0 -1
  698. package/dist/esm/components/jdi/JDISuccess.js.map +0 -1
  699. package/dist/esm/components/legal-consent/LegalConsentNode.js.map +0 -1
  700. package/dist/esm/components/nfc-scan/BiometricSymbol.js.map +0 -1
  701. package/dist/esm/components/nfc-scan/NfcChipGate.js.map +0 -1
  702. package/dist/esm/components/nfc-scan/NfcFallbackSurvey.js.map +0 -1
  703. package/dist/esm/components/nfc-scan/NfcOnboardingNotice.js.map +0 -1
  704. package/dist/esm/components/nfc-scan/NfcScanNode.js.map +0 -1
  705. package/dist/esm/components/nfc-scan/NfcSuccessAnimation.js.map +0 -1
  706. package/dist/esm/components/nfc-scan/PuceCniSymbol.js.map +0 -1
  707. package/dist/esm/components/selfie/SelfieConfirmation.js.map +0 -1
  708. package/dist/esm/components/selfie/Video.css.js.map +0 -1
  709. package/dist/esm/components/selfie/Video.js.map +0 -1
  710. package/dist/esm/components/selfie/VideoFixes.css.js.map +0 -1
  711. package/dist/esm/components/selfie/VideoResetStyles.js.map +0 -1
  712. package/dist/esm/components/selfie/hooks/useLiveFrameCapture.js.map +0 -1
  713. package/dist/esm/components/selfie/hooks/useVideoRecorderStyles.js.map +0 -1
  714. package/dist/esm/components/selfie/selfie-flow/InstructionsSelfie.js.map +0 -1
  715. package/dist/esm/components/selfie/selfie-flow/SelfieFlow.js.map +0 -1
  716. package/dist/esm/components/selfie/selfie-flow/SelfiePreIntroduction.js.map +0 -1
  717. package/dist/esm/components/selfie/selfie-flow/SelfieProcessing.js.map +0 -1
  718. package/dist/esm/components/selfie/selfie-flow/SelfieRecorder.js.map +0 -1
  719. package/dist/esm/components/selfie/utils/selfieCaptureUtils.js.map +0 -1
  720. package/dist/esm/components/selfie/utils/unisseyStrings.js.map +0 -1
  721. package/dist/esm/components/selfie/utils/videoElementStyles.js.map +0 -1
  722. package/dist/esm/components/session/DocumentCheck.js.map +0 -1
  723. package/dist/esm/components/session/EndFlow.js.map +0 -1
  724. package/dist/esm/components/session/MobileRedirect.js.map +0 -1
  725. package/dist/esm/components/session/PdfGeneration.js.map +0 -1
  726. package/dist/esm/components/session/Selfie.js.map +0 -1
  727. package/dist/esm/components/session/SessionContent.js.map +0 -1
  728. package/dist/esm/components/session/SessionExpired.js.map +0 -1
  729. package/dist/esm/components/session/StartSession.js.map +0 -1
  730. package/dist/esm/components/session/UserInputForm/AddressFields.js.map +0 -1
  731. package/dist/esm/components/session/UserInputForm/ContactFields.js.map +0 -1
  732. package/dist/esm/components/session/UserInputForm/CustomFormFields.js.map +0 -1
  733. package/dist/esm/components/session/UserInputForm/DatePickerField.js.map +0 -1
  734. package/dist/esm/components/session/UserInputForm/IdentityFields.js.map +0 -1
  735. package/dist/esm/components/session/UserInputForm/LegalEntityFields.js.map +0 -1
  736. package/dist/esm/components/session/UserInputForm/LegalRepFields.js.map +0 -1
  737. package/dist/esm/components/session/UserInputForm/NationalityField.js.map +0 -1
  738. package/dist/esm/components/session/UserInputForm.js.map +0 -1
  739. package/dist/esm/components/session/VideoWorkInProgress.js.map +0 -1
  740. package/dist/esm/components/session/controleJdiPolicy.js.map +0 -1
  741. package/dist/esm/components/session/endScreenIcons.js.map +0 -1
  742. package/dist/esm/components/signature-electronic/DocusealSignature.js.map +0 -1
  743. package/dist/esm/components/signature-electronic/SignatureElectronic.js.map +0 -1
  744. package/dist/esm/components/signature-electronic/SignatureElectronicIntroduction.js.map +0 -1
  745. package/dist/esm/components/signature-electronic/SignedDocumentPreview.js.map +0 -1
  746. package/dist/esm/components/start-flow/CGU.js +0 -108
  747. package/dist/esm/components/start-flow/CGU.js.map +0 -1
  748. package/dist/esm/components/start-flow/Start.js.map +0 -1
  749. package/dist/esm/components/states/ErrorState.js.map +0 -1
  750. package/dist/esm/components/states/LoadingState.js.map +0 -1
  751. package/dist/esm/components/states/NoSessionIdState.js.map +0 -1
  752. package/dist/esm/components/template/ConditionNodeHandler.js.map +0 -1
  753. package/dist/esm/components/template/ExternalVerificationNodeHandler.js.map +0 -1
  754. package/dist/esm/components/template/TemplateNodeRenderer.js.map +0 -1
  755. package/dist/esm/components/template/conditionNodePolicy.js.map +0 -1
  756. package/dist/esm/components/ui/Body.js.map +0 -1
  757. package/dist/esm/components/ui/Button.js.map +0 -1
  758. package/dist/esm/components/ui/ButtonDesktop.js.map +0 -1
  759. package/dist/esm/components/ui/Card.js.map +0 -1
  760. package/dist/esm/components/ui/LanguageSelector.js +0 -42
  761. package/dist/esm/components/ui/LanguageSelector.js.map +0 -1
  762. package/dist/esm/components/ui/MobilePageLayout.js.map +0 -1
  763. package/dist/esm/components/ui/PDFPreview.js.map +0 -1
  764. package/dist/esm/components/ui/PageActions.js.map +0 -1
  765. package/dist/esm/components/ui/Paper.js.map +0 -1
  766. package/dist/esm/components/ui/PoweredBy.js.map +0 -1
  767. package/dist/esm/components/ui/QRCodeDisplay.js.map +0 -1
  768. package/dist/esm/components/ui/SelectComponent.js.map +0 -1
  769. package/dist/esm/components/ui/Subtitle.js.map +0 -1
  770. package/dist/esm/components/ui/Title.js.map +0 -1
  771. package/dist/esm/config/env.js.map +0 -1
  772. package/dist/esm/constants/userInputForm.js.map +0 -1
  773. package/dist/esm/context/ConfigContext.js.map +0 -1
  774. package/dist/esm/context/DocumentContext.js.map +0 -1
  775. package/dist/esm/context/SessionContext.js.map +0 -1
  776. package/dist/esm/hooks/useClientInfo.js.map +0 -1
  777. package/dist/esm/hooks/useCountryOptions.js.map +0 -1
  778. package/dist/esm/hooks/useI18n.js.map +0 -1
  779. package/dist/esm/hooks/useIsMobile.js.map +0 -1
  780. package/dist/esm/hooks/useNfcSseStatus.js.map +0 -1
  781. package/dist/esm/hooks/useRouteCSS.js.map +0 -1
  782. package/dist/esm/hooks/useSession.js.map +0 -1
  783. package/dist/esm/hooks/useSessionData.js.map +0 -1
  784. package/dist/esm/hooks/useStepCSS.js.map +0 -1
  785. package/dist/esm/hooks/useStepNavigation.js.map +0 -1
  786. package/dist/esm/hooks/useTemplateLoader.js.map +0 -1
  787. package/dist/esm/hooks/useUserInputForm.js.map +0 -1
  788. package/dist/esm/i18n/country/country.en.json.js.map +0 -1
  789. package/dist/esm/i18n/country/country.fr.json.js.map +0 -1
  790. package/dist/esm/i18n/country/country.iso2.en.json.js.map +0 -1
  791. package/dist/esm/i18n/country/country.iso2.fr.json.js.map +0 -1
  792. package/dist/esm/i18n/documents/documents.en.json.js.map +0 -1
  793. package/dist/esm/i18n/documents/documents.fr.json.js.map +0 -1
  794. package/dist/esm/i18n/en.json.js.map +0 -1
  795. package/dist/esm/i18n/es.json.js.map +0 -1
  796. package/dist/esm/i18n/fr.json.js.map +0 -1
  797. package/dist/esm/i18n/index.js.map +0 -1
  798. package/dist/esm/index.css.js.map +0 -1
  799. package/dist/esm/index.js.map +0 -1
  800. package/dist/esm/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +0 -1
  801. package/dist/esm/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +0 -1
  802. package/dist/esm/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +0 -1
  803. package/dist/esm/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +0 -1
  804. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +0 -1
  805. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatLong.js.map +0 -1
  806. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/formatRelative.js.map +0 -1
  807. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/localize.js.map +0 -1
  808. package/dist/esm/node_modules/date-fns/locale/en-US/_lib/match.js.map +0 -1
  809. package/dist/esm/node_modules/date-fns/locale/en-US.js.map +0 -1
  810. package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatDistance.js.map +0 -1
  811. package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatLong.js.map +0 -1
  812. package/dist/esm/node_modules/date-fns/locale/fr/_lib/formatRelative.js.map +0 -1
  813. package/dist/esm/node_modules/date-fns/locale/fr/_lib/localize.js.map +0 -1
  814. package/dist/esm/node_modules/date-fns/locale/fr/_lib/match.js.map +0 -1
  815. package/dist/esm/node_modules/date-fns/locale/fr.js.map +0 -1
  816. package/dist/esm/node_modules/heic2any/dist/heic2any.js.map +0 -1
  817. package/dist/esm/node_modules/pdfjs-dist/legacy/build/pdf.js.map +0 -1
  818. package/dist/esm/node_modules/pdfjs-dist/legacy/build/pdf.worker.js.map +0 -1
  819. package/dist/esm/node_modules/style-inject/dist/style-inject.es.js.map +0 -1
  820. package/dist/esm/node_modules/tslib/tslib.es6.js.map +0 -1
  821. package/dist/esm/providers/I18nProvider.js.map +0 -1
  822. package/dist/esm/services/analysis.js.map +0 -1
  823. package/dist/esm/services/api.js.map +0 -1
  824. package/dist/esm/services/auditTrailService.js.map +0 -1
  825. package/dist/esm/services/cameraService.js.map +0 -1
  826. package/dist/esm/services/documentEdgeDetectionService.js.map +0 -1
  827. package/dist/esm/services/documentTemplate.js.map +0 -1
  828. package/dist/esm/services/integrationService.js.map +0 -1
  829. package/dist/esm/services/pollingService.js.map +0 -1
  830. package/dist/esm/services/professionalImageQuality.js.map +0 -1
  831. package/dist/esm/services/retryService.js.map +0 -1
  832. package/dist/esm/services/sessionCredentials.js.map +0 -1
  833. package/dist/esm/services/sessionMemoryStore.js.map +0 -1
  834. package/dist/esm/services/sessionService.js.map +0 -1
  835. package/dist/esm/services/utils.js.map +0 -1
  836. package/dist/esm/types/session.js.map +0 -1
  837. package/dist/esm/utils/analysisErrors.js.map +0 -1
  838. package/dist/esm/utils/apiAnalysis.js.map +0 -1
  839. package/dist/esm/utils/conditionEvaluator.js.map +0 -1
  840. package/dist/esm/utils/countryFlags.js.map +0 -1
  841. package/dist/esm/utils/cssLoader.js.map +0 -1
  842. package/dist/esm/utils/customFieldIds.js.map +0 -1
  843. package/dist/esm/utils/customFieldValidation.js.map +0 -1
  844. package/dist/esm/utils/documentLabels.js.map +0 -1
  845. package/dist/esm/utils/europeanCountries.js.map +0 -1
  846. package/dist/esm/utils/fileConverter.js.map +0 -1
  847. package/dist/esm/utils/imageConverter.js.map +0 -1
  848. package/dist/esm/utils/imageProcessing.js.map +0 -1
  849. package/dist/esm/utils/isMobileDevice.js.map +0 -1
  850. package/dist/esm/utils/isoCountryCodes.js.map +0 -1
  851. package/dist/esm/utils/jdiCodes.js.map +0 -1
  852. package/dist/esm/utils/labelToKey.js.map +0 -1
  853. package/dist/esm/utils/languageFlags.js +0 -42
  854. package/dist/esm/utils/languageFlags.js.map +0 -1
  855. package/dist/esm/utils/listFieldUtils.js.map +0 -1
  856. package/dist/esm/utils/mimeTypes.js.map +0 -1
  857. package/dist/esm/utils/navigation.js.map +0 -1
  858. package/dist/esm/utils/renderInlineMarkdown.js.map +0 -1
  859. package/dist/esm/utils/userInputForm.js.map +0 -1
  860. package/dist/esm/utils/utils.js.map +0 -1
  861. package/dist/esm/utils/validationUtils.js.map +0 -1
  862. package/docs/GITLAB_BADGES_SETUP.md +0 -317
  863. package/docs/JOURNEY_NODE_BUILDER.md +0 -198
  864. package/docs/POLLING_SYSTEM.md +0 -695
  865. package/docs/README.md +0 -254
  866. package/docs/SESSION_TOKEN_MIGRATION.md +0 -52
  867. package/docs/condition-node.md +0 -651
  868. package/docs/configuration.md +0 -113
  869. package/docs/dynamic-configuration.md +0 -97
  870. package/docs/environment.md +0 -27
  871. package/docs/migration-guide.md +0 -120
  872. package/docs/multi-runs.md +0 -104
  873. package/docs/navigation-history.md +0 -155
  874. package/docs/sdk_integration_guide.md +0 -58
  875. package/eslint.config.js +0 -13
  876. package/examples/analysis-progress-example.tsx +0 -220
  877. package/examples/sdk-configuration.ts +0 -187
  878. package/examples/test-updated-urls.ts +0 -162
  879. package/examples/usage-example.tsx +0 -49
  880. package/jest.config.js +0 -32
  881. package/postcss.config.js +0 -6
  882. package/renovate.json +0 -242
  883. package/rollup.asset-url-plugin.js +0 -38
  884. package/rollup.dev.config.js +0 -65
  885. package/setupTests.js +0 -41
  886. package/tailwind.config.js +0 -11
@@ -95,4 +95,3 @@ var CameraMask = function (_a) {
95
95
  };
96
96
 
97
97
  exports.default = CameraMask;
98
- //# sourceMappingURL=CameraMask.js.map
@@ -12,4 +12,3 @@ var OrientationToggle = function (_a) {
12
12
  };
13
13
 
14
14
  exports.default = OrientationToggle;
15
- //# sourceMappingURL=OrientationToggle.js.map
@@ -351,4 +351,3 @@ var Photo = function (_a) {
351
351
  };
352
352
 
353
353
  exports.default = Photo;
354
- //# sourceMappingURL=Photo.js.map
@@ -19,4 +19,3 @@ var PhotoConfirmation = function (_a) {
19
19
  };
20
20
 
21
21
  exports.default = PhotoConfirmation;
22
- //# sourceMappingURL=PhotoConfirmation.js.map
@@ -36,4 +36,3 @@ var PhotoPreview = function (_a) {
36
36
  };
37
37
 
38
38
  exports.default = PhotoPreview;
39
- //# sourceMappingURL=PhotoPreview.js.map
@@ -16,4 +16,3 @@ var JDDWorkInProgress = function (_a) {
16
16
  };
17
17
 
18
18
  exports.default = JDDWorkInProgress;
19
- //# sourceMappingURL=JDDWorkInProgress.js.map
@@ -78,4 +78,3 @@ var JDICountrySelection = function (_a) {
78
78
  };
79
79
 
80
80
  exports.default = JDICountrySelection;
81
- //# sourceMappingURL=JDICountrySelection.js.map
@@ -180,4 +180,3 @@ var JDIDocumentSelection = function (_a) {
180
180
  };
181
181
 
182
182
  exports.default = JDIDocumentSelection;
183
- //# sourceMappingURL=JDIDocumentSelection.js.map
@@ -490,4 +490,3 @@ var JDIDocumentUpload = function (_a) {
490
490
  };
491
491
 
492
492
  exports.default = JDIDocumentUpload;
493
- //# sourceMappingURL=JDIDocumentUpload.js.map
@@ -11,6 +11,7 @@ var ButtonDesktop = require('../ui/ButtonDesktop.js');
11
11
  var useI18n = require('../../hooks/useI18n.js');
12
12
  var validationUtils = require('../../utils/validationUtils.js');
13
13
  var MobilePageLayout = require('../ui/MobilePageLayout.js');
14
+ var analysisErrors = require('../../utils/analysisErrors.js');
14
15
 
15
16
  var DEFAULT_PREDICTIONS = [];
16
17
  var JDIError = function (_a) {
@@ -44,8 +45,10 @@ var JDIError = function (_a) {
44
45
  documentType: "document",
45
46
  }) })] }), !blockContinue && (errorCode === null || errorCode === void 0 ? void 0 : errorCode.startsWith("8")) && (jsxRuntime.jsx("div", { className: "bg-orange-50 border border-orange-200 rounded-lg p-4", children: jsxRuntime.jsx("p", { className: "text-sm text-orange-800", children: t("errors.specimen_detected") }) })), !blockContinue && (jsxRuntime.jsxs("div", { className: "bg-red-50 border border-red-200 rounded-lg p-4", children: [jsxRuntime.jsx("h3", { className: "font-medium text-red-900 mb-2", children: t("errors.problems_detected") }), jsxRuntime.jsx("div", { className: "text-sm text-red-800 space-y-1", children: validationPoints.map(function (point, index) { return (jsxRuntime.jsx("p", { children: point }, index)); }) })] })), !blockContinue && !isRetryAllowed && (jsxRuntime.jsxs("div", { className: "bg-orange-50 border border-orange-200 rounded-lg p-4", children: [jsxRuntime.jsx("h3", { className: "font-medium text-orange-900 mb-2", children: t("errors.resubmission.max_attempts_reached") }), jsxRuntime.jsx("p", { className: "text-sm text-orange-800", children: maxResubmissionAttempts !== undefined
46
47
  ? t("errors.resubmission.max_attempts_reached_description")
47
- : t("errors.resubmission.no_resubmission_allowed") })] })), !blockContinue && getUserGuidance() && (jsxRuntime.jsxs("div", { className: "bg-yellow-50 border border-yellow-200 rounded-lg p-4", children: [jsxRuntime.jsxs("h3", { className: "font-medium text-yellow-900 mb-2", children: ["\uD83D\uDCA1 ", t("errors.improvement_tips")] }), jsxRuntime.jsx("p", { className: "text-sm text-yellow-800", children: getUserGuidance() })] })), !blockContinue && isRetryAllowed && (jsxRuntime.jsxs("div", { className: "bg-blue-50 border border-blue-200 rounded-lg p-4", children: [jsxRuntime.jsx("h3", { className: "font-medium text-blue-900 mb-2", children: t("errors.next_steps") }), jsxRuntime.jsx("p", { className: "text-sm text-blue-800", children: t("errors.next_steps_description") })] }))] }) }) }));
48
+ : t("errors.resubmission.no_resubmission_allowed") })] })), !blockContinue && getUserGuidance() && (jsxRuntime.jsxs("div", { className: "bg-yellow-50 border border-yellow-200 rounded-lg p-4", children: [jsxRuntime.jsx("h3", { className: "font-medium text-yellow-900 mb-2", children: analysisErrors.isServiceErrorCode(errorCode)
49
+ ? // Quota / out of credits: nothing for the end user to improve.
50
+ t("errors.service_refusal_title")
51
+ : "\uD83D\uDCA1 ".concat(t("errors.improvement_tips", "Conseils d'amélioration")) }), jsxRuntime.jsx("p", { className: "text-sm text-yellow-800", children: getUserGuidance() })] })), !blockContinue && isRetryAllowed && (jsxRuntime.jsxs("div", { className: "bg-blue-50 border border-blue-200 rounded-lg p-4", children: [jsxRuntime.jsx("h3", { className: "font-medium text-blue-900 mb-2", children: t("errors.next_steps") }), jsxRuntime.jsx("p", { className: "text-sm text-blue-800", children: t("errors.next_steps_description") })] }))] }) }) }));
48
52
  };
49
53
 
50
54
  exports.default = JDIError;
51
- //# sourceMappingURL=JDIError.js.map
@@ -22,4 +22,3 @@ var JDIPreIntroduction = function (_a) {
22
22
  };
23
23
 
24
24
  exports.default = JDIPreIntroduction;
25
- //# sourceMappingURL=JDIPreIntroduction.js.map
@@ -102,7 +102,7 @@ var JDIProcessing = React.memo(function (_a) {
102
102
  return [4 /*yield*/, imageConverter.convertPdfToPng(frontImage)];
103
103
  case 2:
104
104
  convertedFile = _a.sent();
105
- return [4 /*yield*/, analysis.uploadConvertedIdCardImage(sessionId, convertedFile)];
105
+ return [4 /*yield*/, analysis.uploadConvertedIdCardImage(sessionId, convertedFile, nodeId)];
106
106
  case 3:
107
107
  _a.sent();
108
108
  return [3 /*break*/, 9];
@@ -111,14 +111,14 @@ var JDIProcessing = React.memo(function (_a) {
111
111
  return [4 /*yield*/, imageConverter.convertJpegToPng(frontImage)];
112
112
  case 5:
113
113
  convertedFile = _a.sent();
114
- return [4 /*yield*/, analysis.uploadConvertedIdCardImage(sessionId, convertedFile)];
114
+ return [4 /*yield*/, analysis.uploadConvertedIdCardImage(sessionId, convertedFile, nodeId)];
115
115
  case 6:
116
116
  _a.sent();
117
117
  return [3 /*break*/, 9];
118
118
  case 7:
119
119
  if (!imageConverter.isPng(frontImage)) return [3 /*break*/, 9];
120
120
  file = imageConverter.dataUrlToFile(frontImage, "converted_id_card.png");
121
- return [4 /*yield*/, analysis.uploadConvertedIdCardImage(sessionId, file)];
121
+ return [4 /*yield*/, analysis.uploadConvertedIdCardImage(sessionId, file, nodeId)];
122
122
  case 8:
123
123
  _a.sent();
124
124
  _a.label = 9;
@@ -132,7 +132,7 @@ var JDIProcessing = React.memo(function (_a) {
132
132
  });
133
133
  }); };
134
134
  var processFiles = function () { return tslib_es6.__awaiter(void 0, void 0, void 0, function () {
135
- var i, response, extractedCode, codeName, codeDescription, mismatchDetails, predictions, isSuccess, canRetry, error_2, failedStepIndex_1, errorMessage, isNetworkError, isUploadNotConfirmed, isQuotaExceeded, apiError;
135
+ var i, response, serviceErrorCode, extractedCode, codeName, codeDescription, mismatchDetails, predictions, isSuccess, canRetry, error_2, failedStepIndex_1, errorMessage, isNetworkError, isUploadNotConfirmed, serviceErrorCode, apiError;
136
136
  return tslib_es6.__generator(this, function (_a) {
137
137
  switch (_a.label) {
138
138
  case 0:
@@ -241,7 +241,8 @@ var JDIProcessing = React.memo(function (_a) {
241
241
  })];
242
242
  case 5:
243
243
  response = _a.sent();
244
- extractedCode = String(response.code);
244
+ serviceErrorCode = analysisErrors.getServiceErrorCodeFromCodeName(response === null || response === void 0 ? void 0 : response.codeName);
245
+ extractedCode = serviceErrorCode || String(response.code);
245
246
  codeName = response === null || response === void 0 ? void 0 : response.codeName;
246
247
  codeDescription = response === null || response === void 0 ? void 0 : response.codeDescription;
247
248
  mismatchDetails = response === null || response === void 0 ? void 0 : response.mismatchDetails;
@@ -249,7 +250,7 @@ var JDIProcessing = React.memo(function (_a) {
249
250
  if (extractedCode && codeName) {
250
251
  predictions.push(tslib_es6.__assign({ code: extractedCode, codeName: codeName, codeDescription: codeDescription || "", type: "document" }, (mismatchDetails ? { mismatchDetails: mismatchDetails } : {})));
251
252
  }
252
- isSuccess = !jdiCodes.isBlockingCode(extractedCode, blockingCodes);
253
+ isSuccess = !serviceErrorCode && !jdiCodes.isBlockingCode(extractedCode, blockingCodes);
253
254
  canRetry = isSuccess === false;
254
255
  setAnalysisResult({
255
256
  success: isSuccess,
@@ -301,25 +302,25 @@ var JDIProcessing = React.memo(function (_a) {
301
302
  errorMessage.includes("CORS") ||
302
303
  errorMessage.includes("timeout");
303
304
  isUploadNotConfirmed = analysisErrors.isS3UploadNotConfirmedError(error_2);
304
- isQuotaExceeded = analysisErrors.isQuotaExceededError(error_2);
305
+ serviceErrorCode = analysisErrors.getServiceErrorCode(error_2);
305
306
  apiError = error_2;
306
307
  setAnalysisResult({
307
308
  success: false,
308
309
  data: null,
309
- // Propage le code/message QUOTA_EXCEEDED pour que l'écran
310
- // d'erreur puisse afficher un message dédié (limité au cas
311
- // quota : les autres erreurs gardent leur comportement existant).
312
- predictions: isQuotaExceeded
310
+ // Propage le code QUOTA_EXCEEDED / INSUFFICIENT_CREDITS pour que
311
+ // l'écran d'erreur affiche un message dédié (les autres erreurs
312
+ // gardent leur comportement existant).
313
+ predictions: serviceErrorCode
313
314
  ? [
314
315
  {
315
- code: analysisErrors.QUOTA_EXCEEDED_CODE,
316
- codeName: analysisErrors.QUOTA_EXCEEDED_CODE,
316
+ code: serviceErrorCode,
317
+ codeName: serviceErrorCode,
317
318
  codeDescription: (apiError === null || apiError === void 0 ? void 0 : apiError.message) || "",
318
319
  type: "document",
319
320
  },
320
321
  ]
321
322
  : undefined,
322
- canRetry: isNetworkError || isUploadNotConfirmed || isQuotaExceeded,
323
+ canRetry: isNetworkError || isUploadNotConfirmed || !!serviceErrorCode,
323
324
  blockContinue: isUploadNotConfirmed,
324
325
  });
325
326
  setIsComplete(true);
@@ -369,4 +370,3 @@ var JDIProcessing = React.memo(function (_a) {
369
370
  JDIProcessing.displayName = "JDIProcessing";
370
371
 
371
372
  exports.default = JDIProcessing;
372
- //# sourceMappingURL=JDIProcessing.js.map
@@ -24,4 +24,3 @@ var JDISuccess = function (_a) {
24
24
  };
25
25
 
26
26
  exports.default = JDISuccess;
27
- //# sourceMappingURL=JDISuccess.js.map
@@ -104,4 +104,3 @@ var LegalConsentNode = function (_a) {
104
104
  };
105
105
 
106
106
  exports.default = LegalConsentNode;
107
- //# sourceMappingURL=LegalConsentNode.js.map
@@ -19,4 +19,3 @@ var BiometricSymbol = function (_a) {
19
19
  };
20
20
 
21
21
  exports.default = BiometricSymbol;
22
- //# sourceMappingURL=BiometricSymbol.js.map
@@ -33,4 +33,3 @@ var NfcChipGate = function (_a) {
33
33
  };
34
34
 
35
35
  exports.default = NfcChipGate;
36
- //# sourceMappingURL=NfcChipGate.js.map
@@ -71,4 +71,3 @@ var NfcFallbackSurvey = function (_a) {
71
71
  };
72
72
 
73
73
  exports.default = NfcFallbackSurvey;
74
- //# sourceMappingURL=NfcFallbackSurvey.js.map
@@ -41,4 +41,3 @@ var NfcOnboardingNotice = function () {
41
41
  };
42
42
 
43
43
  exports.default = NfcOnboardingNotice;
44
- //# sourceMappingURL=NfcOnboardingNotice.js.map
@@ -145,4 +145,3 @@ var NfcScanStep = function (_a) {
145
145
  };
146
146
 
147
147
  exports.default = NfcScanStep;
148
- //# sourceMappingURL=NfcScanNode.js.map
@@ -37,4 +37,3 @@ var NfcSuccessAnimation = function () {
37
37
  };
38
38
 
39
39
  exports.default = NfcSuccessAnimation;
40
- //# sourceMappingURL=NfcSuccessAnimation.js.map
@@ -19,4 +19,3 @@ var PuceCniSymbol = function (_a) {
19
19
  };
20
20
 
21
21
  exports.default = PuceCniSymbol;
22
- //# sourceMappingURL=PuceCniSymbol.js.map
@@ -52,4 +52,3 @@ var SelfieConfirmation = function (_a) {
52
52
  };
53
53
 
54
54
  exports.default = SelfieConfirmation;
55
- //# sourceMappingURL=SelfieConfirmation.js.map
@@ -4,4 +4,3 @@ var styleInject_es = require('../../node_modules/style-inject/dist/style-inject.
4
4
 
5
5
  var css_248z = "";
6
6
  styleInject_es.default(css_248z,{"insertAt":"top"});
7
- //# sourceMappingURL=Video.css.js.map
@@ -10,7 +10,7 @@ var SelfieFlow = require('./selfie-flow/SelfieFlow.js');
10
10
  var VideoResetStyles = require('./VideoResetStyles.js');
11
11
 
12
12
  var Video = function (_a) {
13
- var setSelfieData = _a.setSelfieData, setStep = _a.setStep, btnBg = _a.btnBg, btnText = _a.btnText;
13
+ var setSelfieData = _a.setSelfieData, setStep = _a.setStep, sessionId = _a.sessionId, iad = _a.iad, btnBg = _a.btnBg, btnText = _a.btnText;
14
14
  // Effet pour ajouter la classe au body lorsque le composant est monté
15
15
  React.useEffect(function () {
16
16
  // Empêcher le scroll sur le body lorsque la capture est active
@@ -32,8 +32,7 @@ var Video = function (_a) {
32
32
  setStep(1); // Move to the next step after selfie capture
33
33
  }, 300);
34
34
  };
35
- return (jsxRuntime.jsxs("div", { className: "w-full h-full overflow-hidden flex flex-col", children: [jsxRuntime.jsx(VideoResetStyles.default, {}), jsxRuntime.jsx(SelfieFlow.default, { handleSelfie: handleSelfie, btnBg: btnBg, btnText: btnText })] }));
35
+ return (jsxRuntime.jsxs("div", { className: "w-full h-full overflow-hidden flex flex-col", children: [jsxRuntime.jsx(VideoResetStyles.default, {}), jsxRuntime.jsx(SelfieFlow.default, { handleSelfie: handleSelfie, sessionId: sessionId, iad: iad, btnBg: btnBg, btnText: btnText })] }));
36
36
  };
37
37
 
38
38
  exports.default = Video;
39
- //# sourceMappingURL=Video.js.map
@@ -4,4 +4,3 @@ var styleInject_es = require('../../node_modules/style-inject/dist/style-inject.
4
4
 
5
5
  var css_248z = "";
6
6
  styleInject_es.default(css_248z,{"insertAt":"top"});
7
- //# sourceMappingURL=VideoFixes.css.js.map
@@ -30,4 +30,3 @@ var VideoResetStyles = function () {
30
30
  };
31
31
 
32
32
  exports.default = VideoResetStyles;
33
- //# sourceMappingURL=VideoResetStyles.js.map
@@ -40,4 +40,3 @@ var useLiveFrameCapture = function () {
40
40
  };
41
41
 
42
42
  exports.useLiveFrameCapture = useLiveFrameCapture;
43
- //# sourceMappingURL=useLiveFrameCapture.js.map
@@ -30,4 +30,3 @@ var useVideoRecorderStyles = function (btnBg, btnText) {
30
30
  };
31
31
 
32
32
  exports.default = useVideoRecorderStyles;
33
- //# sourceMappingURL=useVideoRecorderStyles.js.map
@@ -30,4 +30,3 @@ var InstructionsSelfie = function (_a) {
30
30
  };
31
31
 
32
32
  exports.default = InstructionsSelfie;
33
- //# sourceMappingURL=InstructionsSelfie.js.map
@@ -11,13 +11,12 @@ var LoadingState = require('../../states/LoadingState.js');
11
11
  var SelfieRecorder = React.lazy(function () { return Promise.resolve().then(function () { return require('./SelfieRecorder.js'); }); });
12
12
  var SelfieFlow = function (_a) {
13
13
  var _b;
14
- var handleSelfie = _a.handleSelfie, btnBg = _a.btnBg, btnText = _a.btnText;
14
+ var handleSelfie = _a.handleSelfie, sessionId = _a.sessionId, iad = _a.iad, btnBg = _a.btnBg, btnText = _a.btnText;
15
15
  var _c = React.useState(-1), internalStep = _c[0], setInternalStep = _c[1]; // Commencer à -1 pour la pré-introduction
16
16
  return (jsxRuntime.jsxs("div", { className: "h-full w-full flex flex-col", style: (_b = {},
17
17
  _b["--dk-btn-bg"] = btnBg !== null && btnBg !== void 0 ? btnBg : "#11E5C5",
18
18
  _b["--dk-btn-text"] = btnText !== null && btnText !== void 0 ? btnText : "#3C3C40",
19
- _b), children: [internalStep === -1 && (jsxRuntime.jsx("div", { className: "flex-1 flex flex-col h-full", children: jsxRuntime.jsx(SelfiePreIntroduction.default, { onContinue: function () { return setInternalStep(0); } }) })), internalStep === 0 && (jsxRuntime.jsx("div", { className: "flex-1 flex flex-col h-full", children: jsxRuntime.jsx(InstructionsSelfie.default, { setStep: setInternalStep, onBack: function () { return setInternalStep(-1); } }) })), internalStep === 1 && (jsxRuntime.jsx("div", { className: "flex-1 flex flex-col h-full overflow-hidden", children: jsxRuntime.jsx(React.Suspense, { fallback: jsxRuntime.jsx(LoadingState.default, {}), children: jsxRuntime.jsx(SelfieRecorder, { handleSelfie: handleSelfie, btnBg: btnBg, btnText: btnText }) }) }))] }));
19
+ _b), children: [internalStep === -1 && (jsxRuntime.jsx("div", { className: "flex-1 flex flex-col h-full", children: jsxRuntime.jsx(SelfiePreIntroduction.default, { onContinue: function () { return setInternalStep(0); } }) })), internalStep === 0 && (jsxRuntime.jsx("div", { className: "flex-1 flex flex-col h-full", children: jsxRuntime.jsx(InstructionsSelfie.default, { setStep: setInternalStep, onBack: function () { return setInternalStep(-1); } }) })), internalStep === 1 && (jsxRuntime.jsx("div", { className: "flex-1 flex flex-col h-full overflow-hidden", children: jsxRuntime.jsx(React.Suspense, { fallback: jsxRuntime.jsx(LoadingState.default, {}), children: jsxRuntime.jsx(SelfieRecorder, { handleSelfie: handleSelfie, sessionId: sessionId, iad: iad, btnBg: btnBg, btnText: btnText }) }) }))] }));
20
20
  };
21
21
 
22
22
  exports.default = SelfieFlow;
23
- //# sourceMappingURL=SelfieFlow.js.map
@@ -22,4 +22,3 @@ var SelfiePreIntroduction = function (_a) {
22
22
  };
23
23
 
24
24
  exports.default = SelfiePreIntroduction;
25
- //# sourceMappingURL=SelfiePreIntroduction.js.map
@@ -85,7 +85,11 @@ var SelfieProcessing = function (_a) {
85
85
  details = data.details;
86
86
  faceComparison = details === null || details === void 0 ? void 0 : details.face_comparison;
87
87
  // Success: face match with high confidence
88
- if (data.is_match &&
88
+ if (data.face_comparison_disabled === true) {
89
+ isSuccess = true;
90
+ conformityCodeToSet = "1.0";
91
+ }
92
+ else if (data.is_match &&
89
93
  (faceComparison === null || faceComparison === void 0 ? void 0 : faceComparison.result) === "match"
90
94
  // faceComparison?.confidence_level === "high" Pas assez explicit
91
95
  ) {
@@ -190,4 +194,3 @@ var SelfieProcessing = function (_a) {
190
194
  };
191
195
 
192
196
  exports.default = SelfieProcessing;
193
- //# sourceMappingURL=SelfieProcessing.js.map
@@ -16,21 +16,118 @@ var useLiveFrameCapture = require('../hooks/useLiveFrameCapture.js');
16
16
  var useI18n = require('../../../hooks/useI18n.js');
17
17
  var useIsMobile = require('../../../hooks/useIsMobile.js');
18
18
  var unisseyStrings = require('../utils/unisseyStrings.js');
19
+ var iadService = require('../../../services/iadService.js');
19
20
 
20
21
  var SelfieRecorder = function (_a) {
21
22
  var _b;
22
- var handleSelfie = _a.handleSelfie, _c = _a.onBeginCapture, onBeginCapture = _c === void 0 ? function () { } : _c, btnBg = _a.btnBg, btnText = _a.btnText;
23
+ var handleSelfie = _a.handleSelfie, _c = _a.onBeginCapture, onBeginCapture = _c === void 0 ? function () { } : _c, sessionId = _a.sessionId, iad = _a.iad, btnBg = _a.btnBg, btnText = _a.btnText;
23
24
  var t = useI18n.useI18n().t;
24
25
  var isMobile = useIsMobile.default(768);
25
26
  var recorderRef = React.useRef(null);
26
27
  var _d = React.useState(false), disableButton = _d[0], setDisableButton = _d[1];
27
28
  var _e = React.useState(false), recorderReady = _e[0], setRecorderReady = _e[1];
28
29
  var _f = React.useState("idle"), recordingState = _f[0], setRecordingState = _f[1];
30
+ var _g = React.useState(), iadConfig = _g[0], setIadConfig = _g[1];
31
+ var _h = React.useState((iad === null || iad === void 0 ? void 0 : iad.enabled) !== true), iadPreparationDone = _h[0], setIadPreparationDone = _h[1];
32
+ var _j = React.useState(), captureError = _j[0], setCaptureError = _j[1];
33
+ /**
34
+ * Préparation IAD déjà demandée pour une session, avec son résultat.
35
+ * `preparation` reste indéfini tant que la requête n'a pas abouti.
36
+ */
37
+ var preparedSessionRef = React.useRef();
29
38
  var recordingStateRef = React.useRef("idle");
30
39
  var lastRecorderStatusRef = React.useRef();
31
40
  var capturedThumbnailRef = React.useRef(null);
32
- var _g = useLiveFrameCapture.useLiveFrameCapture(), captureFrame = _g.captureFrame, cleanup = _g.cleanup;
41
+ var _k = useLiveFrameCapture.useLiveFrameCapture(), captureFrame = _k.captureFrame, cleanup = _k.cleanup;
33
42
  useVideoRecorderStyles.default(btnBg, btnText);
43
+ React.useEffect(function () {
44
+ var cancelled = false;
45
+ if ((iad === null || iad === void 0 ? void 0 : iad.enabled) !== true || !sessionId) {
46
+ setIadConfig(undefined);
47
+ setIadPreparationDone(true);
48
+ return function () {
49
+ cancelled = true;
50
+ };
51
+ }
52
+ /**
53
+ * La donnée de préparation est à USAGE UNIQUE : une seconde requête invalide
54
+ * la première et provoque des suspicions d'injection systématiques (doc
55
+ * Unissey, « False rejections possible root causes »). On ne prépare donc
56
+ * qu'une fois par session — ce garde neutralise aussi le double montage du
57
+ * StrictMode en développement.
58
+ */
59
+ /**
60
+ * La préparation est mémorisée par session : on ne redemande pas de donnée
61
+ * (usage unique côté Unissey), mais on réapplique le résultat déjà obtenu.
62
+ *
63
+ * C'est indispensable avec le double montage du StrictMode : au premier
64
+ * montage la requête part puis le démontage annule l'application du
65
+ * résultat ; sans réapplication ici, `iadPreparationDone` resterait
66
+ * définitivement `false` et le recorder ne serait jamais monté.
67
+ */
68
+ var cached = preparedSessionRef.current;
69
+ if ((cached === null || cached === void 0 ? void 0 : cached.sessionId) === sessionId) {
70
+ if (cached.preparation)
71
+ setIadConfig(cached.preparation);
72
+ setIadPreparationDone(true);
73
+ return function () {
74
+ cancelled = true;
75
+ };
76
+ }
77
+ var entry = { sessionId: sessionId };
78
+ preparedSessionRef.current = entry;
79
+ setIadConfig(undefined);
80
+ setIadPreparationDone(false);
81
+ void iadService.prepareIadCapture(sessionId)
82
+ .then(function (preparation) {
83
+ var config = {
84
+ mode: preparation.mode,
85
+ data: preparation.data,
86
+ };
87
+ // Mémorisé même si ce montage est annulé : le montage suivant le
88
+ // réappliquera sans consommer une nouvelle donnée.
89
+ entry.preparation = config;
90
+ if (!cancelled)
91
+ setIadConfig(config);
92
+ })
93
+ .catch(function (error) {
94
+ // Seul le message est loggué : l'objet d'erreur Axios embarque la
95
+ // requête (en-têtes d'authentification, URL avec identifiant de session).
96
+ console.warn("[IAD prepare failed]", error instanceof Error ? error.message : "unknown error");
97
+ // Fail open for capture: the backend will keep the IAD verdict
98
+ // inconclusive if a trustworthy signal cannot be produced.
99
+ // Aucune donnée n'a été consommée : on libère le garde pour permettre
100
+ // une nouvelle tentative au prochain montage.
101
+ if (preparedSessionRef.current === entry) {
102
+ preparedSessionRef.current = undefined;
103
+ }
104
+ })
105
+ .finally(function () {
106
+ // Volontairement sans garde `cancelled` : le drapeau doit passer à
107
+ // `true` même si ce montage est annulé, sinon le recorder reste bloqué.
108
+ setIadPreparationDone(true);
109
+ });
110
+ return function () {
111
+ cancelled = true;
112
+ };
113
+ }, [iad === null || iad === void 0 ? void 0 : iad.enabled, sessionId]);
114
+ /**
115
+ * La prop `config` doit être STABLE entre les rendus.
116
+ *
117
+ * `VideoRecorder` est un web-component Lit : un nouvel objet à chaque rendu
118
+ * est vu comme une prop modifiée, ce qui réinitialise le recorder — il
119
+ * recharge alors ses modules WASM et redemande une préparation IAD, en
120
+ * boucle. Sans ce mémo, l'écran de capture ne devient jamais prêt.
121
+ */
122
+ /**
123
+ * L'IAD est-elle attendue pour cette capture ET techniquement obtenable ?
124
+ *
125
+ * Sert à retarder le montage du recorder jusqu'à ce que `iadConfig` soit
126
+ * prête. Repasse à `false` si la préparation a échoué (`preparedSessionRef`
127
+ * libéré par le `catch`) : la capture démarre alors sans IAD plutôt que de
128
+ * rester bloquée — le backend produira un verdict `inconclusive`.
129
+ */
130
+ var recorderConfig = React.useMemo(function () { return (iadConfig ? { iadConfig: iadConfig } : undefined); }, [iadConfig]);
34
131
  var updateRecordingState = React.useCallback(function (state) {
35
132
  recordingStateRef.current = state;
36
133
  setRecordingState(state);
@@ -55,14 +152,6 @@ var SelfieRecorder = function (_a) {
55
152
  React.useEffect(function () {
56
153
  document.body.classList.add("recording-selfie");
57
154
  var cleanupObserver = videoElementStyles.setupVideoElementsObserver();
58
- // Les traducteurs automatiques (Safari iOS notamment) réécrivent le DOM et
59
- // détruisent les marqueurs de template Lit du web component Unissey : la capture
60
- // ne redémarre alors plus jamais. React sérialise `translate` en propriété DOM sur
61
- // un custom element (d'où un translate="yes" parasite), il faut poser l'attribut
62
- // impérativement.
63
- document
64
- .querySelectorAll("uni-video-recorder")
65
- .forEach(function (el) { return el.setAttribute("translate", "no"); });
66
155
  // iOS-specific fix: Add required attributes to video elements after mount
67
156
  if (selfieCaptureUtils.isIOS()) {
68
157
  var addIOSVideoAttributes = function () {
@@ -111,10 +200,24 @@ var SelfieRecorder = function (_a) {
111
200
  cleanup();
112
201
  };
113
202
  }, [cleanup]);
203
+ // Les traducteurs automatiques (Safari iOS notamment) réécrivent le DOM et
204
+ // détruisent les marqueurs de template Lit du web component Unissey : la capture
205
+ // ne redémarre alors plus jamais. React sérialise `translate` en propriété DOM sur
206
+ // un custom element (d'où un translate="yes" parasite), il faut poser l'attribut
207
+ // impérativement. Le recorder n'étant monté qu'une fois la préparation IAD
208
+ // terminée, l'attribut est posé à ce moment-là (et non au montage du composant).
209
+ React.useEffect(function () {
210
+ if (!iadPreparationDone)
211
+ return;
212
+ document
213
+ .querySelectorAll("uni-video-recorder")
214
+ .forEach(function (el) { return el.setAttribute("translate", "no"); });
215
+ }, [iadPreparationDone]);
114
216
  var recordStarting = function () {
115
217
  if (!recorderReady || recordingState !== "idle")
116
218
  return;
117
219
  onBeginCapture();
220
+ setCaptureError(undefined);
118
221
  updateRecordingState("preparing");
119
222
  setDisableButton(true);
120
223
  var triggerCapture = function () { return tslib_es6.__awaiter(void 0, void 0, void 0, function () {
@@ -171,10 +274,14 @@ var SelfieRecorder = function (_a) {
171
274
  return function () { return clearInterval(interval); };
172
275
  }, [resetCaptureControlsFromPolling]);
173
276
  var handleRecorderReady = function () {
277
+ setCaptureError(undefined);
174
278
  setRecorderReady(true);
175
279
  resetCaptureControls();
176
280
  };
177
281
  var handleRecordInterrupted = function () {
282
+ var _a;
283
+ var recorderError = (_a = recorderRef.current) === null || _a === void 0 ? void 0 : _a.error;
284
+ setCaptureError(recorderError || t("unissey.forbiddenActionMessages.default"));
178
285
  resetCaptureControls();
179
286
  };
180
287
  var handleRecordCompleted = function (e) {
@@ -217,12 +324,14 @@ var SelfieRecorder = function (_a) {
217
324
  _b.zIndex = isMobile ? 50 : "auto",
218
325
  _b.height = "100%",
219
326
  _b.width = "100%",
220
- _b), children: [jsxRuntime.jsxs("div", { className: "p-4 text-center bg-white shrink-0", children: [jsxRuntime.jsx(Title.default, { className: "text-lg md:text-xl mb-1", children: t("selfie.recorder.title") }), jsxRuntime.jsx(Subtitle.default, { className: "text-xs text-gray-600 md:text-sm", children: t("selfie.recorder.subtitle") })] }), jsxRuntime.jsx("div", { className: "video-container flex-1 relative overflow-hidden", children: jsxRuntime.jsx(sdkReact.VideoRecorder, tslib_es6.__assign({ ref: recorderRef, preset: sdkReact.AcquisitionPreset.SELFIE_OPTIMIZED, hideCaptureBtn: true, faceChecker: (typeof window !== 'undefined' && window.__E2E_DISABLE_FACE_CHECKER__) ? 'disabled' : 'enabled', disableDebugMode: true, onRecorderReady: handleRecorderReady, onRecordInterrupted: handleRecordInterrupted, onRecordCompleted: handleRecordCompleted, style: { width: "100%", height: "100%" }, className: "video-recorder-no-radius notranslate w-full h-full" }, (selfieCaptureUtils.isIOS() && {
327
+ _b), children: [jsxRuntime.jsxs("div", { className: "p-4 text-center bg-white shrink-0", children: [jsxRuntime.jsx(Title.default, { className: "text-lg md:text-xl mb-1", children: t("selfie.recorder.title") }), jsxRuntime.jsx(Subtitle.default, { className: "text-xs text-gray-600 md:text-sm", children: t("selfie.recorder.subtitle") })] }), jsxRuntime.jsx("div", { className: "video-container flex-1 relative overflow-hidden", children: iadPreparationDone && (jsxRuntime.jsx(sdkReact.VideoRecorder, tslib_es6.__assign({ ref: recorderRef, preset: sdkReact.AcquisitionPreset.SELFIE_OPTIMIZED, hideCaptureBtn: true, faceChecker: typeof window !== "undefined" &&
328
+ window.__E2E_DISABLE_FACE_CHECKER__
329
+ ? "disabled"
330
+ : "enabled", disableDebugMode: true }, (recorderConfig ? { config: recorderConfig } : {}), { onRecorderReady: handleRecorderReady, onRecordInterrupted: handleRecordInterrupted, onRecordCompleted: handleRecordCompleted, style: { width: "100%", height: "100%" }, className: "video-recorder-no-radius notranslate w-full h-full" }, (selfieCaptureUtils.isIOS() && {
221
331
  "data-playsinline": "true",
222
332
  "data-autoplay": "true",
223
- "data-muted": "true"
224
- }), { strings: unisseyStrings.getUnisseyStrings(t) })) }), jsxRuntime.jsx("div", { className: "shrink-0 bg-white border-t border-gray-200 p-4 md:p-6 relative", style: { zIndex: 9999 }, children: jsxRuntime.jsxs("div", { className: "max-w-md mx-auto", children: [jsxRuntime.jsx("div", { className: "text-center text-xs text-gray-400 mt-3", children: t("selfie.recorder.note") }), jsxRuntime.jsxs(Button.default, { onClick: recordStarting, className: "w-full py-3 md:py-4 relative selfie-button", disabled: disableButton || !recorderReady, style: { backgroundColor: btnBg !== null && btnBg !== void 0 ? btnBg : "#11E5C5", color: btnText !== null && btnText !== void 0 ? btnText : "#3C3C40" }, children: [recordingState === "idle" && t("selfie.recorder.start"), recordingState === "preparing" && t("selfie.recorder.preparing"), recordingState === "recording" && (jsxRuntime.jsxs("span", { className: "flex items-center justify-center", children: [jsxRuntime.jsx("span", { className: "mr-2", children: t("selfie.recorder.recording_label") }), jsxRuntime.jsxs("span", { className: "flex space-x-1 loading-dots", children: [jsxRuntime.jsx("span", { className: "h-1 w-1 bg-white rounded-full" }), jsxRuntime.jsx("span", { className: "h-1 w-1 bg-white rounded-full" }), jsxRuntime.jsx("span", { className: "h-1 w-1 bg-white rounded-full" })] })] })), recordingState === "processing" && t("selfie.recorder.processing")] })] }) })] }));
333
+ "data-muted": "true",
334
+ }), { strings: unisseyStrings.getUnisseyStrings(t) }))) }), captureError && (jsxRuntime.jsx("div", { role: "alert", className: "shrink-0 bg-red-50 px-4 py-2 text-center text-sm text-red-700", children: captureError })), jsxRuntime.jsx("div", { className: "shrink-0 bg-white border-t border-gray-200 p-4 md:p-6 relative", style: { zIndex: 9999 }, children: jsxRuntime.jsxs("div", { className: "max-w-md mx-auto", children: [jsxRuntime.jsx("div", { className: "text-center text-xs text-gray-400 mt-3", children: t("selfie.recorder.note") }), jsxRuntime.jsxs(Button.default, { onClick: recordStarting, className: "w-full py-3 md:py-4 relative selfie-button", disabled: disableButton || !recorderReady, style: { backgroundColor: btnBg !== null && btnBg !== void 0 ? btnBg : "#11E5C5", color: btnText !== null && btnText !== void 0 ? btnText : "#3C3C40" }, children: [recordingState === "idle" && t("selfie.recorder.start"), recordingState === "preparing" && t("selfie.recorder.preparing"), recordingState === "recording" && (jsxRuntime.jsxs("span", { className: "flex items-center justify-center", children: [jsxRuntime.jsx("span", { className: "mr-2", children: t("selfie.recorder.recording_label") }), jsxRuntime.jsxs("span", { className: "flex space-x-1 loading-dots", children: [jsxRuntime.jsx("span", { className: "h-1 w-1 bg-white rounded-full" }), jsxRuntime.jsx("span", { className: "h-1 w-1 bg-white rounded-full" }), jsxRuntime.jsx("span", { className: "h-1 w-1 bg-white rounded-full" })] })] })), recordingState === "processing" && t("selfie.recorder.processing")] })] }) })] }));
225
335
  };
226
336
 
227
337
  exports.default = SelfieRecorder;
228
- //# sourceMappingURL=SelfieRecorder.js.map
@@ -122,4 +122,3 @@ exports.delay = delay;
122
122
  exports.getRecorderVideoElement = getRecorderVideoElement;
123
123
  exports.isIOS = isIOS;
124
124
  exports.waitForVideoFrame = waitForVideoFrame;
125
- //# sourceMappingURL=selfieCaptureUtils.js.map
@@ -42,4 +42,3 @@ var getUnisseyStrings = function (t) { return ({
42
42
  }); };
43
43
 
44
44
  exports.getUnisseyStrings = getUnisseyStrings;
45
- //# sourceMappingURL=unisseyStrings.js.map
@@ -107,4 +107,3 @@ var setupVideoElementsObserver = function () {
107
107
 
108
108
  exports.applyStylesToVideoElements = applyStylesToVideoElements;
109
109
  exports.setupVideoElementsObserver = setupVideoElementsObserver;
110
- //# sourceMappingURL=videoElementStyles.js.map
@@ -823,4 +823,3 @@ var DocumentCheck = function (_a) {
823
823
  };
824
824
 
825
825
  exports.default = DocumentCheck;
826
- //# sourceMappingURL=DocumentCheck.js.map
@@ -35,16 +35,19 @@ var ICON_COLOR = "var(--dk-btn-bg, #11e5c5)";
35
35
  */
36
36
  var EndFlow = function (_a) {
37
37
  var _b, _c;
38
- var sessionId = _a.sessionId, sessionStatus = _a.sessionStatus, callbackURL = _a.callbackURL, endNodeId = _a.endNodeId, expectedResult = _a.expectedResult, compliantCase = _a.compliantCase, nonCompliantCase = _a.nonCompliantCase;
38
+ var sessionId = _a.sessionId, sessionStatus = _a.sessionStatus, callbackURL = _a.callbackURL, endNodeId = _a.endNodeId, expectedResult = _a.expectedResult, compliantCase = _a.compliantCase, nonCompliantCase = _a.nonCompliantCase, alreadyFinished = _a.alreadyFinished;
39
39
  var _d = React.useState(false), isEnding = _d[0], setIsEnding = _d[1];
40
40
  var _e = React.useState(false), isRedirecting = _e[0], setIsRedirecting = _e[1];
41
41
  var _f = React.useState(false), shouldRedirect = _f[0], setShouldRedirect = _f[1];
42
42
  // Statut consolidé renvoyé par le backend après updateSessionStatus —
43
- // sert à détecter un échec « poursuivre quand même » non porté par expectedResult.
44
- var _g = React.useState(undefined), backendStatus = _g[0], setBackendStatus = _g[1];
43
+ // sert à détecter un échec « poursuivre quand même » non porté par
44
+ // expectedResult. Si la session était déjà terminée à l'arrivée, on la
45
+ // connaît déjà (sessionStatus) : pas besoin d'attendre le backend.
46
+ var _g = React.useState(alreadyFinished ? sessionStatus : undefined), backendStatus = _g[0], setBackendStatus = _g[1];
45
47
  // Le verdict backend arrive de façon asynchrone (~1-2s). On le marque résolu
46
48
  // pour éviter de flasher l'écran succès puis basculer sur l'écran erreur.
47
- var _h = React.useState(false), statusResolved = _h[0], setStatusResolved = _h[1];
49
+ // Déjà résolu si la session était déjà terminée (pas d'appel réseau à attendre).
50
+ var _h = React.useState(Boolean(alreadyFinished)), statusResolved = _h[0], setStatusResolved = _h[1];
48
51
  var t = useI18n.useI18n().t;
49
52
  var isMobile = useIsMobile.default(768);
50
53
  // Décalage horizontal du bloc d'items réservé au desktop. On le pilote en JS
@@ -72,8 +75,15 @@ var EndFlow = function (_a) {
72
75
  // le backend), on affiche un état neutre plutôt que de présumer le succès.
73
76
  var isResolving = !expectedError && !statusResolved;
74
77
  // Trigger session end as soon as the user reaches this screen,
75
- // regardless of whether they click the button (e.g. tab close)
78
+ // regardless of whether they click the button (e.g. tab close).
79
+ // Skipped when the session was already finished on arrival: the backend
80
+ // ignores this PATCH anyway (session already consolidated), and resending
81
+ // it risks forcing a phantom "end" node reached only through a resumption
82
+ // index mismatch, not a real navigation.
76
83
  React.useEffect(function () {
84
+ if (alreadyFinished) {
85
+ return;
86
+ }
77
87
  sessionService.updateSessionStatus(sessionId, "ended", endNodeId)
78
88
  .then(function (updatedSession) {
79
89
  if (updatedSession === null || updatedSession === void 0 ? void 0 : updatedSession.status) {
@@ -256,4 +266,3 @@ var EndFlow = function (_a) {
256
266
  };
257
267
 
258
268
  exports.default = EndFlow;
259
- //# sourceMappingURL=EndFlow.js.map