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
@@ -1,6 +1,6 @@
1
1
  import { __assign, __awaiter, __generator } from '../../../node_modules/tslib/tslib.es6.js';
2
2
  import { jsxs, jsx } from 'react/jsx-runtime';
3
- import { useRef, useState, useCallback, useEffect } from 'react';
3
+ import { useRef, useState, useEffect, useMemo, useCallback } from 'react';
4
4
  import { VideoRecorder, AcquisitionPreset } from '@unissey-web/sdk-react';
5
5
  import Button from '../../ui/Button.js';
6
6
  import Title from '../../ui/Title.js';
@@ -12,21 +12,118 @@ import { useLiveFrameCapture } from '../hooks/useLiveFrameCapture.js';
12
12
  import { useI18n } from '../../../hooks/useI18n.js';
13
13
  import useIsMobile from '../../../hooks/useIsMobile.js';
14
14
  import { getUnisseyStrings } from '../utils/unisseyStrings.js';
15
+ import { prepareIadCapture } from '../../../services/iadService.js';
15
16
 
16
17
  var SelfieRecorder = function (_a) {
17
18
  var _b;
18
- var handleSelfie = _a.handleSelfie, _c = _a.onBeginCapture, onBeginCapture = _c === void 0 ? function () { } : _c, btnBg = _a.btnBg, btnText = _a.btnText;
19
+ 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;
19
20
  var t = useI18n().t;
20
21
  var isMobile = useIsMobile(768);
21
22
  var recorderRef = useRef(null);
22
23
  var _d = useState(false), disableButton = _d[0], setDisableButton = _d[1];
23
24
  var _e = useState(false), recorderReady = _e[0], setRecorderReady = _e[1];
24
25
  var _f = useState("idle"), recordingState = _f[0], setRecordingState = _f[1];
26
+ var _g = useState(), iadConfig = _g[0], setIadConfig = _g[1];
27
+ var _h = useState((iad === null || iad === void 0 ? void 0 : iad.enabled) !== true), iadPreparationDone = _h[0], setIadPreparationDone = _h[1];
28
+ var _j = useState(), captureError = _j[0], setCaptureError = _j[1];
29
+ /**
30
+ * Préparation IAD déjà demandée pour une session, avec son résultat.
31
+ * `preparation` reste indéfini tant que la requête n'a pas abouti.
32
+ */
33
+ var preparedSessionRef = useRef();
25
34
  var recordingStateRef = useRef("idle");
26
35
  var lastRecorderStatusRef = useRef();
27
36
  var capturedThumbnailRef = useRef(null);
28
- var _g = useLiveFrameCapture(), captureFrame = _g.captureFrame, cleanup = _g.cleanup;
37
+ var _k = useLiveFrameCapture(), captureFrame = _k.captureFrame, cleanup = _k.cleanup;
29
38
  useVideoRecorderStyles(btnBg, btnText);
39
+ useEffect(function () {
40
+ var cancelled = false;
41
+ if ((iad === null || iad === void 0 ? void 0 : iad.enabled) !== true || !sessionId) {
42
+ setIadConfig(undefined);
43
+ setIadPreparationDone(true);
44
+ return function () {
45
+ cancelled = true;
46
+ };
47
+ }
48
+ /**
49
+ * La donnée de préparation est à USAGE UNIQUE : une seconde requête invalide
50
+ * la première et provoque des suspicions d'injection systématiques (doc
51
+ * Unissey, « False rejections possible root causes »). On ne prépare donc
52
+ * qu'une fois par session — ce garde neutralise aussi le double montage du
53
+ * StrictMode en développement.
54
+ */
55
+ /**
56
+ * La préparation est mémorisée par session : on ne redemande pas de donnée
57
+ * (usage unique côté Unissey), mais on réapplique le résultat déjà obtenu.
58
+ *
59
+ * C'est indispensable avec le double montage du StrictMode : au premier
60
+ * montage la requête part puis le démontage annule l'application du
61
+ * résultat ; sans réapplication ici, `iadPreparationDone` resterait
62
+ * définitivement `false` et le recorder ne serait jamais monté.
63
+ */
64
+ var cached = preparedSessionRef.current;
65
+ if ((cached === null || cached === void 0 ? void 0 : cached.sessionId) === sessionId) {
66
+ if (cached.preparation)
67
+ setIadConfig(cached.preparation);
68
+ setIadPreparationDone(true);
69
+ return function () {
70
+ cancelled = true;
71
+ };
72
+ }
73
+ var entry = { sessionId: sessionId };
74
+ preparedSessionRef.current = entry;
75
+ setIadConfig(undefined);
76
+ setIadPreparationDone(false);
77
+ void prepareIadCapture(sessionId)
78
+ .then(function (preparation) {
79
+ var config = {
80
+ mode: preparation.mode,
81
+ data: preparation.data,
82
+ };
83
+ // Mémorisé même si ce montage est annulé : le montage suivant le
84
+ // réappliquera sans consommer une nouvelle donnée.
85
+ entry.preparation = config;
86
+ if (!cancelled)
87
+ setIadConfig(config);
88
+ })
89
+ .catch(function (error) {
90
+ // Seul le message est loggué : l'objet d'erreur Axios embarque la
91
+ // requête (en-têtes d'authentification, URL avec identifiant de session).
92
+ console.warn("[IAD prepare failed]", error instanceof Error ? error.message : "unknown error");
93
+ // Fail open for capture: the backend will keep the IAD verdict
94
+ // inconclusive if a trustworthy signal cannot be produced.
95
+ // Aucune donnée n'a été consommée : on libère le garde pour permettre
96
+ // une nouvelle tentative au prochain montage.
97
+ if (preparedSessionRef.current === entry) {
98
+ preparedSessionRef.current = undefined;
99
+ }
100
+ })
101
+ .finally(function () {
102
+ // Volontairement sans garde `cancelled` : le drapeau doit passer à
103
+ // `true` même si ce montage est annulé, sinon le recorder reste bloqué.
104
+ setIadPreparationDone(true);
105
+ });
106
+ return function () {
107
+ cancelled = true;
108
+ };
109
+ }, [iad === null || iad === void 0 ? void 0 : iad.enabled, sessionId]);
110
+ /**
111
+ * La prop `config` doit être STABLE entre les rendus.
112
+ *
113
+ * `VideoRecorder` est un web-component Lit : un nouvel objet à chaque rendu
114
+ * est vu comme une prop modifiée, ce qui réinitialise le recorder — il
115
+ * recharge alors ses modules WASM et redemande une préparation IAD, en
116
+ * boucle. Sans ce mémo, l'écran de capture ne devient jamais prêt.
117
+ */
118
+ /**
119
+ * L'IAD est-elle attendue pour cette capture ET techniquement obtenable ?
120
+ *
121
+ * Sert à retarder le montage du recorder jusqu'à ce que `iadConfig` soit
122
+ * prête. Repasse à `false` si la préparation a échoué (`preparedSessionRef`
123
+ * libéré par le `catch`) : la capture démarre alors sans IAD plutôt que de
124
+ * rester bloquée — le backend produira un verdict `inconclusive`.
125
+ */
126
+ var recorderConfig = useMemo(function () { return (iadConfig ? { iadConfig: iadConfig } : undefined); }, [iadConfig]);
30
127
  var updateRecordingState = useCallback(function (state) {
31
128
  recordingStateRef.current = state;
32
129
  setRecordingState(state);
@@ -51,14 +148,6 @@ var SelfieRecorder = function (_a) {
51
148
  useEffect(function () {
52
149
  document.body.classList.add("recording-selfie");
53
150
  var cleanupObserver = setupVideoElementsObserver();
54
- // Les traducteurs automatiques (Safari iOS notamment) réécrivent le DOM et
55
- // détruisent les marqueurs de template Lit du web component Unissey : la capture
56
- // ne redémarre alors plus jamais. React sérialise `translate` en propriété DOM sur
57
- // un custom element (d'où un translate="yes" parasite), il faut poser l'attribut
58
- // impérativement.
59
- document
60
- .querySelectorAll("uni-video-recorder")
61
- .forEach(function (el) { return el.setAttribute("translate", "no"); });
62
151
  // iOS-specific fix: Add required attributes to video elements after mount
63
152
  if (isIOS()) {
64
153
  var addIOSVideoAttributes = function () {
@@ -107,10 +196,24 @@ var SelfieRecorder = function (_a) {
107
196
  cleanup();
108
197
  };
109
198
  }, [cleanup]);
199
+ // Les traducteurs automatiques (Safari iOS notamment) réécrivent le DOM et
200
+ // détruisent les marqueurs de template Lit du web component Unissey : la capture
201
+ // ne redémarre alors plus jamais. React sérialise `translate` en propriété DOM sur
202
+ // un custom element (d'où un translate="yes" parasite), il faut poser l'attribut
203
+ // impérativement. Le recorder n'étant monté qu'une fois la préparation IAD
204
+ // terminée, l'attribut est posé à ce moment-là (et non au montage du composant).
205
+ useEffect(function () {
206
+ if (!iadPreparationDone)
207
+ return;
208
+ document
209
+ .querySelectorAll("uni-video-recorder")
210
+ .forEach(function (el) { return el.setAttribute("translate", "no"); });
211
+ }, [iadPreparationDone]);
110
212
  var recordStarting = function () {
111
213
  if (!recorderReady || recordingState !== "idle")
112
214
  return;
113
215
  onBeginCapture();
216
+ setCaptureError(undefined);
114
217
  updateRecordingState("preparing");
115
218
  setDisableButton(true);
116
219
  var triggerCapture = function () { return __awaiter(void 0, void 0, void 0, function () {
@@ -167,10 +270,14 @@ var SelfieRecorder = function (_a) {
167
270
  return function () { return clearInterval(interval); };
168
271
  }, [resetCaptureControlsFromPolling]);
169
272
  var handleRecorderReady = function () {
273
+ setCaptureError(undefined);
170
274
  setRecorderReady(true);
171
275
  resetCaptureControls();
172
276
  };
173
277
  var handleRecordInterrupted = function () {
278
+ var _a;
279
+ var recorderError = (_a = recorderRef.current) === null || _a === void 0 ? void 0 : _a.error;
280
+ setCaptureError(recorderError || t("unissey.forbiddenActionMessages.default"));
174
281
  resetCaptureControls();
175
282
  };
176
283
  var handleRecordCompleted = function (e) {
@@ -213,12 +320,14 @@ var SelfieRecorder = function (_a) {
213
320
  _b.zIndex = isMobile ? 50 : "auto",
214
321
  _b.height = "100%",
215
322
  _b.width = "100%",
216
- _b), children: [jsxs("div", { className: "p-4 text-center bg-white shrink-0", children: [jsx(Title, { className: "text-lg md:text-xl mb-1", children: t("selfie.recorder.title") }), jsx(Subtitle, { className: "text-xs text-gray-600 md:text-sm", children: t("selfie.recorder.subtitle") })] }), jsx("div", { className: "video-container flex-1 relative overflow-hidden", children: jsx(VideoRecorder, __assign({ ref: recorderRef, preset: 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" }, (isIOS() && {
323
+ _b), children: [jsxs("div", { className: "p-4 text-center bg-white shrink-0", children: [jsx(Title, { className: "text-lg md:text-xl mb-1", children: t("selfie.recorder.title") }), jsx(Subtitle, { className: "text-xs text-gray-600 md:text-sm", children: t("selfie.recorder.subtitle") })] }), jsx("div", { className: "video-container flex-1 relative overflow-hidden", children: iadPreparationDone && (jsx(VideoRecorder, __assign({ ref: recorderRef, preset: AcquisitionPreset.SELFIE_OPTIMIZED, hideCaptureBtn: true, faceChecker: typeof window !== "undefined" &&
324
+ window.__E2E_DISABLE_FACE_CHECKER__
325
+ ? "disabled"
326
+ : "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" }, (isIOS() && {
217
327
  "data-playsinline": "true",
218
328
  "data-autoplay": "true",
219
- "data-muted": "true"
220
- }), { strings: getUnisseyStrings(t) })) }), jsx("div", { className: "shrink-0 bg-white border-t border-gray-200 p-4 md:p-6 relative", style: { zIndex: 9999 }, children: jsxs("div", { className: "max-w-md mx-auto", children: [jsx("div", { className: "text-center text-xs text-gray-400 mt-3", children: t("selfie.recorder.note") }), jsxs(Button, { 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" && (jsxs("span", { className: "flex items-center justify-center", children: [jsx("span", { className: "mr-2", children: t("selfie.recorder.recording_label") }), jsxs("span", { className: "flex space-x-1 loading-dots", children: [jsx("span", { className: "h-1 w-1 bg-white rounded-full" }), jsx("span", { className: "h-1 w-1 bg-white rounded-full" }), jsx("span", { className: "h-1 w-1 bg-white rounded-full" })] })] })), recordingState === "processing" && t("selfie.recorder.processing")] })] }) })] }));
329
+ "data-muted": "true",
330
+ }), { strings: getUnisseyStrings(t) }))) }), captureError && (jsx("div", { role: "alert", className: "shrink-0 bg-red-50 px-4 py-2 text-center text-sm text-red-700", children: captureError })), jsx("div", { className: "shrink-0 bg-white border-t border-gray-200 p-4 md:p-6 relative", style: { zIndex: 9999 }, children: jsxs("div", { className: "max-w-md mx-auto", children: [jsx("div", { className: "text-center text-xs text-gray-400 mt-3", children: t("selfie.recorder.note") }), jsxs(Button, { 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" && (jsxs("span", { className: "flex items-center justify-center", children: [jsx("span", { className: "mr-2", children: t("selfie.recorder.recording_label") }), jsxs("span", { className: "flex space-x-1 loading-dots", children: [jsx("span", { className: "h-1 w-1 bg-white rounded-full" }), jsx("span", { className: "h-1 w-1 bg-white rounded-full" }), jsx("span", { className: "h-1 w-1 bg-white rounded-full" })] })] })), recordingState === "processing" && t("selfie.recorder.processing")] })] }) })] }));
221
331
  };
222
332
 
223
333
  export { SelfieRecorder as default };
224
- //# sourceMappingURL=SelfieRecorder.js.map
@@ -117,4 +117,3 @@ var delay = function (ms) {
117
117
  };
118
118
 
119
119
  export { delay, getRecorderVideoElement, isIOS, waitForVideoFrame };
120
- //# sourceMappingURL=selfieCaptureUtils.js.map
@@ -40,4 +40,3 @@ var getUnisseyStrings = function (t) { return ({
40
40
  }); };
41
41
 
42
42
  export { getUnisseyStrings };
43
- //# sourceMappingURL=unisseyStrings.js.map
@@ -104,4 +104,3 @@ var setupVideoElementsObserver = function () {
104
104
  };
105
105
 
106
106
  export { applyStylesToVideoElements, setupVideoElementsObserver };
107
- //# sourceMappingURL=videoElementStyles.js.map
@@ -819,4 +819,3 @@ var DocumentCheck = function (_a) {
819
819
  };
820
820
 
821
821
  export { DocumentCheck as default };
822
- //# sourceMappingURL=DocumentCheck.js.map
@@ -31,16 +31,19 @@ var ICON_COLOR = "var(--dk-btn-bg, #11e5c5)";
31
31
  */
32
32
  var EndFlow = function (_a) {
33
33
  var _b, _c;
34
- var sessionId = _a.sessionId, sessionStatus = _a.sessionStatus, callbackURL = _a.callbackURL, endNodeId = _a.endNodeId, expectedResult = _a.expectedResult, compliantCase = _a.compliantCase, nonCompliantCase = _a.nonCompliantCase;
34
+ 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;
35
35
  var _d = useState(false), isEnding = _d[0], setIsEnding = _d[1];
36
36
  var _e = useState(false), isRedirecting = _e[0], setIsRedirecting = _e[1];
37
37
  var _f = useState(false), shouldRedirect = _f[0], setShouldRedirect = _f[1];
38
38
  // Statut consolidé renvoyé par le backend après updateSessionStatus —
39
- // sert à détecter un échec « poursuivre quand même » non porté par expectedResult.
40
- var _g = useState(undefined), backendStatus = _g[0], setBackendStatus = _g[1];
39
+ // sert à détecter un échec « poursuivre quand même » non porté par
40
+ // expectedResult. Si la session était déjà terminée à l'arrivée, on la
41
+ // connaît déjà (sessionStatus) : pas besoin d'attendre le backend.
42
+ var _g = useState(alreadyFinished ? sessionStatus : undefined), backendStatus = _g[0], setBackendStatus = _g[1];
41
43
  // Le verdict backend arrive de façon asynchrone (~1-2s). On le marque résolu
42
44
  // pour éviter de flasher l'écran succès puis basculer sur l'écran erreur.
43
- var _h = useState(false), statusResolved = _h[0], setStatusResolved = _h[1];
45
+ // Déjà résolu si la session était déjà terminée (pas d'appel réseau à attendre).
46
+ var _h = useState(Boolean(alreadyFinished)), statusResolved = _h[0], setStatusResolved = _h[1];
44
47
  var t = useI18n().t;
45
48
  var isMobile = useIsMobile(768);
46
49
  // Décalage horizontal du bloc d'items réservé au desktop. On le pilote en JS
@@ -68,8 +71,15 @@ var EndFlow = function (_a) {
68
71
  // le backend), on affiche un état neutre plutôt que de présumer le succès.
69
72
  var isResolving = !expectedError && !statusResolved;
70
73
  // Trigger session end as soon as the user reaches this screen,
71
- // regardless of whether they click the button (e.g. tab close)
74
+ // regardless of whether they click the button (e.g. tab close).
75
+ // Skipped when the session was already finished on arrival: the backend
76
+ // ignores this PATCH anyway (session already consolidated), and resending
77
+ // it risks forcing a phantom "end" node reached only through a resumption
78
+ // index mismatch, not a real navigation.
72
79
  useEffect(function () {
80
+ if (alreadyFinished) {
81
+ return;
82
+ }
73
83
  updateSessionStatus(sessionId, "ended", endNodeId)
74
84
  .then(function (updatedSession) {
75
85
  if (updatedSession === null || updatedSession === void 0 ? void 0 : updatedSession.status) {
@@ -252,4 +262,3 @@ var EndFlow = function (_a) {
252
262
  };
253
263
 
254
264
  export { EndFlow as default };
255
- //# sourceMappingURL=EndFlow.js.map
@@ -44,4 +44,3 @@ var MobileRedirect = function (_a) {
44
44
  };
45
45
 
46
46
  export { MobileRedirect as default };
47
- //# sourceMappingURL=MobileRedirect.js.map
@@ -84,4 +84,3 @@ var PdfGeneration = function (_a) {
84
84
  };
85
85
 
86
86
  export { PdfGeneration as default };
87
- //# sourceMappingURL=PdfGeneration.js.map
@@ -45,10 +45,9 @@ var Selfie = function (_a) {
45
45
  var handleRetakeSelfie = function () {
46
46
  setInternalStep(0);
47
47
  };
48
- return (jsxs("div", { className: "h-full w-full transition-opacity duration-500 ".concat(isTransitioning ? "opacity-50" : "opacity-100"), children: [internalStep === 0 && (jsx(Video, { setSelfieData: setSelfieData, setStep: setInternalStep, btnBg: (_b = template.buttonBgColor) !== null && _b !== void 0 ? _b : "#11E5C5", btnText: (_c = template.buttonTextColor) !== null && _c !== void 0 ? _c : "#3C3C40" })), internalStep === 1 && selfieData && (jsx(SelfieConfirmation, { selfieData: selfieData, onConfirm: handleConfirmSelfie, onRetake: handleRetakeSelfie, setSelfiePhoto: setSelfiePhoto })), internalStep === 2 && selfieData && (jsx(SelfieProcessing, { onProcessingComplete: selfieProcessed, selfieVideo: selfieData, selfiePhoto: selfiePhoto, onRetake: onRetake, nodeId: node.id, onContinueAnyway: node.allowContinueOnFailure === false
48
+ return (jsxs("div", { className: "h-full w-full transition-opacity duration-500 ".concat(isTransitioning ? "opacity-50" : "opacity-100"), children: [internalStep === 0 && (jsx(Video, { setSelfieData: setSelfieData, setStep: setInternalStep, sessionId: sessionId, iad: node.iad, btnBg: (_b = template.buttonBgColor) !== null && _b !== void 0 ? _b : "#11E5C5", btnText: (_c = template.buttonTextColor) !== null && _c !== void 0 ? _c : "#3C3C40" })), internalStep === 1 && selfieData && (jsx(SelfieConfirmation, { selfieData: selfieData, onConfirm: handleConfirmSelfie, onRetake: handleRetakeSelfie, setSelfiePhoto: setSelfiePhoto })), internalStep === 2 && selfieData && (jsx(SelfieProcessing, { onProcessingComplete: selfieProcessed, selfieVideo: selfieData, selfiePhoto: selfiePhoto, onRetake: onRetake, nodeId: node.id, onContinueAnyway: node.allowContinueOnFailure === false
49
49
  ? undefined
50
50
  : handleContinueAnyway }))] }));
51
51
  };
52
52
 
53
53
  export { Selfie as default };
54
- //# sourceMappingURL=Selfie.js.map
@@ -6,6 +6,7 @@ import EndFlow from './EndFlow.js';
6
6
  import LoadingState from '../states/LoadingState.js';
7
7
  import TemplateNodeRenderer from '../template/TemplateNodeRenderer.js';
8
8
  import { getOrderedJourneySteps } from '../../services/sessionService.js';
9
+ import { isSessionFinished } from '../../utils/sessionStatus.js';
9
10
  import { useI18n } from '../../hooks/useI18n.js';
10
11
 
11
12
  var SessionContent = function (_a) {
@@ -63,9 +64,10 @@ var SessionContent = function (_a) {
63
64
  }
64
65
  }
65
66
  }, []);
66
- // Special check: If session is ended, display EndFlow directly
67
- if ((session === null || session === void 0 ? void 0 : session.status) === "ended") {
68
- return (jsx(EndFlow, { sessionId: sessionId, sessionStatus: session.status, callbackURL: session === null || session === void 0 ? void 0 : session.callbackURL, compliantCase: (_k = (_j = session === null || session === void 0 ? void 0 : session.template) === null || _j === void 0 ? void 0 : _j.endScreenConfig) === null || _k === void 0 ? void 0 : _k.compliant, nonCompliantCase: (_m = (_l = session === null || session === void 0 ? void 0 : session.template) === null || _l === void 0 ? void 0 : _l.endScreenConfig) === null || _m === void 0 ? void 0 : _m.nonCompliant }));
67
+ // Special check: if the session is already finished, display EndFlow
68
+ // directly (raw "ended" or a consolidated result status).
69
+ if (isSessionFinished(session === null || session === void 0 ? void 0 : session.status)) {
70
+ return (jsx(EndFlow, { sessionId: sessionId, sessionStatus: session === null || session === void 0 ? void 0 : session.status, callbackURL: session === null || session === void 0 ? void 0 : session.callbackURL, compliantCase: (_k = (_j = session === null || session === void 0 ? void 0 : session.template) === null || _j === void 0 ? void 0 : _j.endScreenConfig) === null || _k === void 0 ? void 0 : _k.compliant, nonCompliantCase: (_m = (_l = session === null || session === void 0 ? void 0 : session.template) === null || _l === void 0 ? void 0 : _l.endScreenConfig) === null || _m === void 0 ? void 0 : _m.nonCompliant, alreadyFinished: (session === null || session === void 0 ? void 0 : session.status) !== "ended" }));
69
71
  }
70
72
  // Render step content
71
73
  switch (step) {
@@ -94,4 +96,3 @@ var SessionContent = function (_a) {
94
96
  };
95
97
 
96
98
  export { SessionContent as default };
97
- //# sourceMappingURL=SessionContent.js.map
@@ -23,4 +23,3 @@ var SessionExpired = function (_a) {
23
23
  };
24
24
 
25
25
  export { SessionExpired as default };
26
- //# sourceMappingURL=SessionExpired.js.map
@@ -1,40 +1,14 @@
1
- import { jsxs, jsx } from 'react/jsx-runtime';
2
- import { useState } from 'react';
1
+ import { jsx } from 'react/jsx-runtime';
3
2
  import Start from '../start-flow/Start.js';
4
- import CGU from '../start-flow/CGU.js';
5
3
 
4
+ // Le consentement est porté par le nœud `legal-consent` du parcours : l'accueil
5
+ // enchaîne directement sur le QR code (si configuré) ou le premier nœud.
6
6
  var StartSession = function (_a) {
7
- var _b, _c, _d, _e, _f;
7
+ var _b, _c;
8
8
  var stepObject = _a.stepObject, session = _a.session, showQRCodeInstructions = _a.showQRCodeInstructions;
9
9
  var setStep = stepObject.setStep;
10
- var _g = useState(0), startStep = _g[0], setStartStep = _g[1];
11
- // Find the start node from template
12
10
  var startNode = (_c = (_b = session === null || session === void 0 ? void 0 : session.template) === null || _b === void 0 ? void 0 : _b.nodes) === null || _c === void 0 ? void 0 : _c.find(function (node) { return node.type === "start"; });
13
- // Un nœud `legal-consent` porte lui-même le consentement : afficher en plus
14
- // les CGU de la page d'accueil ferait consentir deux fois pour la même chose.
15
- //
16
- // Le drapeau `showLegacyCGU` n'existe que pour les parcours antérieurs à ce
17
- // nœud. Il était posé à `false` par une migration au démarrage, retirée
18
- // depuis (« remove legacy legal consent migration from bootstrap process ») :
19
- // un parcours créé ou restauré après ce retrait garde donc le défaut `true`
20
- // et réaffiche les CGU malgré son nœud de consentement. On déduit le cas du
21
- // graphe plutôt que du drapeau, ce qui couvre aussi les parcours existants
22
- // sans toucher aux données.
23
- var hasLegalConsentNode = ((_e = (_d = session === null || session === void 0 ? void 0 : session.template) === null || _d === void 0 ? void 0 : _d.nodes) === null || _e === void 0 ? void 0 : _e.some(function (node) { return node.type === "legal-consent"; })) === true;
24
- var showLegacyCGU = !hasLegalConsentNode &&
25
- (startNode === null || startNode === void 0 ? void 0 : startNode.showLegacyCGU) !== false;
26
- // If CGU is disabled, clicking "Start" skips CGU.
27
- // Still honour showQRCodeInstructions so the QR code step is not bypassed.
28
- var handleStartButtonClick = function (localStep) {
29
- if (!showLegacyCGU) {
30
- setStep(showQRCodeInstructions ? 0.5 : 1);
31
- }
32
- else {
33
- setStartStep(localStep);
34
- }
35
- };
36
- return (jsxs("div", { className: "w-full h-full", children: [startStep === 0 && (jsx(Start, { setStep: handleStartButtonClick, welcomeTitle: startNode === null || startNode === void 0 ? void 0 : startNode.welcomeTitle, welcomeSubtitle: startNode === null || startNode === void 0 ? void 0 : startNode.welcomeSubtitle, welcomeDescription: startNode === null || startNode === void 0 ? void 0 : startNode.welcomeDescription, welcomeImage: startNode === null || startNode === void 0 ? void 0 : startNode.welcomeImage, session: session !== null && session !== void 0 ? session : undefined })), startStep === 1 && showLegacyCGU && (jsx(CGU, { setStep: setStep, session: session !== null && session !== void 0 ? session : undefined, sessionId: session === null || session === void 0 ? void 0 : session.id, showQRCodeInstructions: showQRCodeInstructions, languages: (_f = session === null || session === void 0 ? void 0 : session.template) === null || _f === void 0 ? void 0 : _f.languages, onBack: function () { return setStartStep(0); } }))] }));
11
+ return (jsx("div", { className: "w-full h-full", children: jsx(Start, { setStep: function () { return setStep(showQRCodeInstructions ? 0.5 : 1); }, welcomeTitle: startNode === null || startNode === void 0 ? void 0 : startNode.welcomeTitle, welcomeSubtitle: startNode === null || startNode === void 0 ? void 0 : startNode.welcomeSubtitle, welcomeDescription: startNode === null || startNode === void 0 ? void 0 : startNode.welcomeDescription, welcomeImage: startNode === null || startNode === void 0 ? void 0 : startNode.welcomeImage, session: session !== null && session !== void 0 ? session : undefined }) }));
37
12
  };
38
13
 
39
14
  export { StartSession as default };
40
- //# sourceMappingURL=StartSession.js.map
@@ -40,4 +40,3 @@ var AddressFields = function (_a) {
40
40
  };
41
41
 
42
42
  export { AddressFields as default };
43
- //# sourceMappingURL=AddressFields.js.map
@@ -16,4 +16,3 @@ var ContactFields = function (_a) {
16
16
  };
17
17
 
18
18
  export { ContactFields as default };
19
- //# sourceMappingURL=ContactFields.js.map
@@ -9,6 +9,7 @@ import AddressFields from './AddressFields.js';
9
9
  import { normalizeListColumns, getListFieldMinRows, ensureMinimumListRows, createEmptyListRow } from '../../../utils/listFieldUtils.js';
10
10
  import { cellErrorKey } from '../../../utils/customFieldValidation.js';
11
11
  import { DatePickerField } from './DatePickerField.js';
12
+ import { isValuePresent } from '../../../utils/customFieldLocks.js';
12
13
 
13
14
  /**
14
15
  * Sous-composant dédié au rendu d'une cellule du tableau dynamique.
@@ -166,15 +167,6 @@ var CustomFormFields = function (_a) {
166
167
  // - hard lock (lockedFromApi sans editableIfMissing) → toujours masqué ;
167
168
  // - soft lock (editableIfMissing) → masqué uniquement si l'API a fourni une
168
169
  // valeur ; sinon le champ redevient éditable par l'utilisateur final.
169
- var isValuePresent = function (value) {
170
- if (value === null || value === undefined)
171
- return false;
172
- if (typeof value === "string")
173
- return value.trim().length > 0;
174
- if (Array.isArray(value))
175
- return value.length > 0;
176
- return true;
177
- };
178
170
  // La décision de visibilité d'un soft lock se fige à l'OUVERTURE du nœud,
179
171
  // pas à chaque frappe : on capture une seule fois (au mount, via ref) les
180
172
  // soft locks dont l'API n'avait fourni AUCUNE valeur. Ceux-là restent
@@ -221,4 +213,3 @@ var CustomFormFields = function (_a) {
221
213
  };
222
214
 
223
215
  export { CustomFormFields as default };
224
- //# sourceMappingURL=CustomFormFields.js.map
@@ -129,4 +129,3 @@ var DatePickerField = function (_a) {
129
129
  };
130
130
 
131
131
  export { DatePickerField };
132
- //# sourceMappingURL=DatePickerField.js.map
@@ -45,4 +45,3 @@ var IdentityFields = function (_a) {
45
45
  };
46
46
 
47
47
  export { IdentityFields as default };
48
- //# sourceMappingURL=IdentityFields.js.map
@@ -24,4 +24,3 @@ var LegalEntityFields = function (_a) {
24
24
  };
25
25
 
26
26
  export { LegalEntityFields as default };
27
- //# sourceMappingURL=LegalEntityFields.js.map
@@ -23,4 +23,3 @@ var LegalRepFields = function (_a) {
23
23
  };
24
24
 
25
25
  export { LegalRepFields as default };
26
- //# sourceMappingURL=LegalRepFields.js.map
@@ -16,4 +16,3 @@ var NationalityField = function (_a) {
16
16
  };
17
17
 
18
18
  export { NationalityField as default };
19
- //# sourceMappingURL=NationalityField.js.map
@@ -19,7 +19,10 @@ var UserInputForm = function (props) {
19
19
  var t = useI18n().t;
20
20
  var hasListCustomField = props.node.informationType === "custom" &&
21
21
  (props.node.customFields || []).some(function (field) { return field.valueType === "list"; });
22
- var _b = useUserInputForm(props), form = _b.form, errors = _b.errors, informationType = _b.informationType, requestedFields = _b.requestedFields, pageTitle = _b.pageTitle, pageDescription = _b.pageDescription, addressSuggestions = _b.addressSuggestions, showSuggestions = _b.showSuggestions, handleFieldChange = _b.handleFieldChange, handleAddressChange = _b.handleAddressChange, handleAddressFocus = _b.handleAddressFocus, handleAddressBlur = _b.handleAddressBlur, applyAddressSuggestion = _b.applyAddressSuggestion, goOnNextStep = _b.goOnNextStep, goOnPreviousStep = _b.goOnPreviousStep, customFormData = _b.customFormData, customFormErrors = _b.customFormErrors, customFormCellErrors = _b.customFormCellErrors, handleCustomFieldChange = _b.handleCustomFieldChange, customFields = _b.customFields;
22
+ var _b = useUserInputForm(props), form = _b.form, errors = _b.errors, informationType = _b.informationType, requestedFields = _b.requestedFields, pageTitle = _b.pageTitle, pageDescription = _b.pageDescription, addressSuggestions = _b.addressSuggestions, showSuggestions = _b.showSuggestions, handleFieldChange = _b.handleFieldChange, handleAddressChange = _b.handleAddressChange, handleAddressFocus = _b.handleAddressFocus, handleAddressBlur = _b.handleAddressBlur, applyAddressSuggestion = _b.applyAddressSuggestion, goOnNextStep = _b.goOnNextStep, goOnPreviousStep = _b.goOnPreviousStep, customFormData = _b.customFormData, customFormErrors = _b.customFormErrors, customFormCellErrors = _b.customFormCellErrors, handleCustomFieldChange = _b.handleCustomFieldChange, customFields = _b.customFields, isAutoSkipping = _b.isAutoSkipping;
23
+ // Nœud sauté (tous les champs verrouillés) : rien à afficher pendant la transition.
24
+ if (isAutoSkipping)
25
+ return null;
23
26
  return (jsxs(MobilePageLayout, { contentClassName: "overflow-y-auto", footerClassName: "md:sticky md:bottom-0 md:bg-white md:pt-4 md:z-20", footer: jsx(PageActions, { primary: jsx(Button, { onClick: goOnNextStep, children: t("user_input_form.buttons.continue") }), secondary: props.stepObject.canGoBack ? (jsx(Button, { variant: "secondary", onClick: goOnPreviousStep, children: t("user_input_form.buttons.back") })) : undefined }), children: [typeof process !== "undefined" &&
24
27
  ((_a = process.env) === null || _a === void 0 ? void 0 : _a.NODE_ENV) === "development" && (jsx("div", { className: "fixed right-0 top-0 z-50 bg-green-500 p-2 text-xs text-white", children: "UserInputForm Rendered \u2713" })), jsx("div", { className: "px-4 py-6 pt-11 md:px-8 md:py-8", children: jsxs("div", { className: "mx-auto w-full space-y-6 ".concat(hasListCustomField
25
28
  ? "max-w-[98vw] md:max-w-[1300px] lg:max-w-[1500px]"
@@ -29,4 +32,3 @@ var UserInputForm = function (props) {
29
32
  };
30
33
 
31
34
  export { UserInputForm as default };
32
- //# sourceMappingURL=UserInputForm.js.map
@@ -10,4 +10,3 @@ var VideoWorkInProgress = function (_a) {
10
10
  };
11
11
 
12
12
  export { VideoWorkInProgress as default };
13
- //# sourceMappingURL=VideoWorkInProgress.js.map
@@ -39,4 +39,3 @@ function resolveControleJdiOutcomeRoute(params) {
39
39
  }
40
40
 
41
41
  export { DEFAULT_MAX_RESUBMISSION_ACTION, hasExceededResubmissionAttempts, normalizeMaxResubmissionAction, resolveControleJdiOutcomeRoute };
42
- //# sourceMappingURL=controleJdiPolicy.js.map
@@ -23,4 +23,3 @@ var resolveEndScreenIcon = function (icon) {
23
23
  };
24
24
 
25
25
  export { resolveEndScreenIcon };
26
- //# sourceMappingURL=endScreenIcons.js.map
@@ -107,4 +107,3 @@ var DocusealSignature = function (_a) {
107
107
  };
108
108
 
109
109
  export { DocusealSignature as default };
110
- //# sourceMappingURL=DocusealSignature.js.map
@@ -143,4 +143,3 @@ var SignatureElectronic = function (_a) {
143
143
  };
144
144
 
145
145
  export { SignatureElectronic as default };
146
- //# sourceMappingURL=SignatureElectronic.js.map
@@ -27,4 +27,3 @@ var SignatureElectronicIntroduction = function (_a) {
27
27
  };
28
28
 
29
29
  export { SignatureElectronicIntroduction as default };
30
- //# sourceMappingURL=SignatureElectronicIntroduction.js.map
@@ -125,4 +125,3 @@ var SignedDocumentPreview = function (_a) {
125
125
  };
126
126
 
127
127
  export { SignedDocumentPreview as default };
128
- //# sourceMappingURL=SignedDocumentPreview.js.map
@@ -9,6 +9,7 @@ import '../../utils/cssLoader.js';
9
9
  import '../../context/DocumentContext.js';
10
10
  import '../../services/api.js';
11
11
  import '../../config/env.js';
12
+ import 'axios';
12
13
  import '../../services/auditTrailService.js';
13
14
  import 'ua-parser-js';
14
15
  import StartIcon from '../icons/StartIcon.js';
@@ -16,10 +17,6 @@ import PageActions from '../ui/PageActions.js';
16
17
  import Subtitle from '../ui/Subtitle.js';
17
18
  import Title from '../ui/Title.js';
18
19
  import MobilePageLayout from '../ui/MobilePageLayout.js';
19
- import '@radix-ui/react-checkbox';
20
- import '@radix-ui/react-label';
21
- import '@radix-ui/react-icons';
22
- import 'react-circle-flags';
23
20
  import 'qrcode';
24
21
  import 'lucide-react';
25
22
  import '../../assets/check.svg.js';
@@ -40,12 +37,15 @@ import '../../services/documentEdgeDetectionService.js';
40
37
  import '../document-video/document-video-flow/DocumentVideoFlow.js';
41
38
  import '../document-collection/DocumentProcessing.js';
42
39
  import '../../constants/userInputForm.js';
40
+ import '@radix-ui/react-label';
43
41
  import 'date-fns';
44
42
  import 'react-day-picker';
45
43
  import '@radix-ui/react-popover';
46
44
  import 'react-i18next';
47
45
  import '../../i18n/index.js';
48
46
  import '@docuseal/react';
47
+ import '@radix-ui/react-checkbox';
48
+ import '@radix-ui/react-icons';
49
49
  import '../../services/professionalImageQuality.js';
50
50
  import '../../providers/I18nProvider.js';
51
51
 
@@ -56,11 +56,10 @@ var Start = function (_a) {
56
56
  var displaySubtitle = welcomeSubtitle ||
57
57
  t("start.welcome_subtitle", "Nous devons vérifier votre identité");
58
58
  var displayDescription = welcomeDescription || t("start.welcome_description");
59
- var goOnCGU = function () {
59
+ var goOnNextStep = function () {
60
60
  setStep(1);
61
61
  };
62
- return (jsx(MobilePageLayout, { footer: jsx(PageActions, { primary: jsx(Button, { onClick: goOnCGU, children: t("start_verification") }) }), session: session, children: jsx("div", { className: "flex flex-col items-center px-4 py-8 md:px-8", children: jsxs("div", { className: "w-full max-w-md mx-auto text-center space-y-6 flex flex-col", children: [jsx("div", { className: "flex justify-center", children: welcomeImage ? (jsx("img", { src: welcomeImage, alt: "Welcome image", className: "max-w-48 w-auto h-auto rounded-lg" })) : (jsx(StartIcon, { className: "w-48 h-48" })) }), jsxs("div", { className: "space-y-4", children: [jsx(Title, { className: "text-xl md:text-2xl lg:text-3xl", children: displayTitle }), jsx(Subtitle, { className: "text-sm md:text-base text-gray-600 leading-relaxed whitespace-pre-line", children: displaySubtitle })] }), jsx("div", { className: "md:block mt-8", children: jsx("p", { className: "text-xs text-gray-500 leading-relaxed max-w-sm mx-auto whitespace-pre-line", children: displayDescription }) })] }) }) }));
62
+ return (jsx(MobilePageLayout, { footer: jsx(PageActions, { primary: jsx(Button, { onClick: goOnNextStep, children: t("start_verification") }) }), session: session, children: jsx("div", { className: "flex flex-col items-center px-4 py-8 md:px-8", children: jsxs("div", { className: "w-full max-w-md mx-auto text-center space-y-6 flex flex-col", children: [jsx("div", { className: "flex justify-center", children: welcomeImage ? (jsx("img", { src: welcomeImage, alt: "Welcome image", className: "max-w-48 w-auto h-auto rounded-lg" })) : (jsx(StartIcon, { className: "w-48 h-48" })) }), jsxs("div", { className: "space-y-4", children: [jsx(Title, { className: "text-xl md:text-2xl lg:text-3xl", children: displayTitle }), jsx(Subtitle, { className: "text-sm md:text-base text-gray-600 leading-relaxed whitespace-pre-line", children: displaySubtitle })] }), jsx("div", { className: "md:block mt-8", children: jsx("p", { className: "text-xs text-gray-500 leading-relaxed max-w-sm mx-auto whitespace-pre-line", children: displayDescription }) })] }) }) }));
63
63
  };
64
64
 
65
65
  export { Start as default };
66
- //# sourceMappingURL=Start.js.map
@@ -8,4 +8,3 @@ var ErrorState = function (_a) {
8
8
  };
9
9
 
10
10
  export { ErrorState as default };
11
- //# sourceMappingURL=ErrorState.js.map
@@ -10,4 +10,3 @@ var LoadingState = function (_a) {
10
10
  };
11
11
 
12
12
  export { LoadingState as default };
13
- //# sourceMappingURL=LoadingState.js.map
@@ -5,4 +5,3 @@ var NoSessionIdState = function () {
5
5
  };
6
6
 
7
7
  export { NoSessionIdState as default };
8
- //# sourceMappingURL=NoSessionIdState.js.map