@velion-la/onboarding-sdk-react-native 1.0.0-beta.2

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 (557) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/LICENSE +12 -0
  3. package/README.md +803 -0
  4. package/lib/commonjs/camera/AddressSearchBar.js +304 -0
  5. package/lib/commonjs/camera/AddressSearchBar.js.map +1 -0
  6. package/lib/commonjs/camera/DocumentCapture.js +505 -0
  7. package/lib/commonjs/camera/DocumentCapture.js.map +1 -0
  8. package/lib/commonjs/camera/LivenessCamera.js +534 -0
  9. package/lib/commonjs/camera/LivenessCamera.js.map +1 -0
  10. package/lib/commonjs/camera/MapAddressPicker.js +341 -0
  11. package/lib/commonjs/camera/MapAddressPicker.js.map +1 -0
  12. package/lib/commonjs/core/VelionOnboarding.js +815 -0
  13. package/lib/commonjs/core/VelionOnboarding.js.map +1 -0
  14. package/lib/commonjs/core/sessionDeclinedCopy.js +56 -0
  15. package/lib/commonjs/core/sessionDeclinedCopy.js.map +1 -0
  16. package/lib/commonjs/core/sessionStateMapper.js +137 -0
  17. package/lib/commonjs/core/sessionStateMapper.js.map +1 -0
  18. package/lib/commonjs/core/sseReasonMessages.js +450 -0
  19. package/lib/commonjs/core/sseReasonMessages.js.map +1 -0
  20. package/lib/commonjs/data/iso3166Alpha2Codes.json +1 -0
  21. package/lib/commonjs/data/iso3166CountryNames.json +251 -0
  22. package/lib/commonjs/i18n/index.js +30 -0
  23. package/lib/commonjs/i18n/index.js.map +1 -0
  24. package/lib/commonjs/i18n/strings/en.js +261 -0
  25. package/lib/commonjs/i18n/strings/en.js.map +1 -0
  26. package/lib/commonjs/i18n/strings/es.js +266 -0
  27. package/lib/commonjs/i18n/strings/es.js.map +1 -0
  28. package/lib/commonjs/index.js +213 -0
  29. package/lib/commonjs/index.js.map +1 -0
  30. package/lib/commonjs/package.json +1 -0
  31. package/lib/commonjs/steps/AddressInfoStep.js +650 -0
  32. package/lib/commonjs/steps/AddressInfoStep.js.map +1 -0
  33. package/lib/commonjs/steps/DocumentsOcrStep.js +397 -0
  34. package/lib/commonjs/steps/DocumentsOcrStep.js.map +1 -0
  35. package/lib/commonjs/steps/EmailContactStep.js +145 -0
  36. package/lib/commonjs/steps/EmailContactStep.js.map +1 -0
  37. package/lib/commonjs/steps/EmailOtpStep.js +220 -0
  38. package/lib/commonjs/steps/EmailOtpStep.js.map +1 -0
  39. package/lib/commonjs/steps/FaceMatchStep.js +166 -0
  40. package/lib/commonjs/steps/FaceMatchStep.js.map +1 -0
  41. package/lib/commonjs/steps/FingerprintStep.js +92 -0
  42. package/lib/commonjs/steps/FingerprintStep.js.map +1 -0
  43. package/lib/commonjs/steps/HumanBasicInfoStep.js +243 -0
  44. package/lib/commonjs/steps/HumanBasicInfoStep.js.map +1 -0
  45. package/lib/commonjs/steps/HumanExtendedInfoStep.js +268 -0
  46. package/lib/commonjs/steps/HumanExtendedInfoStep.js.map +1 -0
  47. package/lib/commonjs/steps/LegalBasicInfoStep.js +188 -0
  48. package/lib/commonjs/steps/LegalBasicInfoStep.js.map +1 -0
  49. package/lib/commonjs/steps/LegalExtendedInfoStep.js +166 -0
  50. package/lib/commonjs/steps/LegalExtendedInfoStep.js.map +1 -0
  51. package/lib/commonjs/steps/LivenessMatchStep.js +707 -0
  52. package/lib/commonjs/steps/LivenessMatchStep.js.map +1 -0
  53. package/lib/commonjs/steps/PhoneContactStep.js +146 -0
  54. package/lib/commonjs/steps/PhoneContactStep.js.map +1 -0
  55. package/lib/commonjs/steps/PhoneOtpStep.js +219 -0
  56. package/lib/commonjs/steps/PhoneOtpStep.js.map +1 -0
  57. package/lib/commonjs/steps/SwornDeclarationStep.js +196 -0
  58. package/lib/commonjs/steps/SwornDeclarationStep.js.map +1 -0
  59. package/lib/commonjs/steps/TaxInfoStep.js +244 -0
  60. package/lib/commonjs/steps/TaxInfoStep.js.map +1 -0
  61. package/lib/commonjs/steps/TermsAndConditionsStep.js +238 -0
  62. package/lib/commonjs/steps/TermsAndConditionsStep.js.map +1 -0
  63. package/lib/commonjs/steps/_shared.js +40 -0
  64. package/lib/commonjs/steps/_shared.js.map +1 -0
  65. package/lib/commonjs/steps/types.js +6 -0
  66. package/lib/commonjs/steps/types.js.map +1 -0
  67. package/lib/commonjs/transport/api.js +176 -0
  68. package/lib/commonjs/transport/api.js.map +1 -0
  69. package/lib/commonjs/transport/irisWebSocket.js +121 -0
  70. package/lib/commonjs/transport/irisWebSocket.js.map +1 -0
  71. package/lib/commonjs/transport/secureUrl.js +50 -0
  72. package/lib/commonjs/transport/secureUrl.js.map +1 -0
  73. package/lib/commonjs/transport/sse.js +248 -0
  74. package/lib/commonjs/transport/sse.js.map +1 -0
  75. package/lib/commonjs/types/index.js +391 -0
  76. package/lib/commonjs/types/index.js.map +1 -0
  77. package/lib/commonjs/ui/MapFallbackBoundary.js +42 -0
  78. package/lib/commonjs/ui/MapFallbackBoundary.js.map +1 -0
  79. package/lib/commonjs/ui/StepShell.js +118 -0
  80. package/lib/commonjs/ui/StepShell.js.map +1 -0
  81. package/lib/commonjs/ui/VelionOnboardingScreen.js +217 -0
  82. package/lib/commonjs/ui/VelionOnboardingScreen.js.map +1 -0
  83. package/lib/commonjs/ui/forms/index.js +38 -0
  84. package/lib/commonjs/ui/forms/index.js.map +1 -0
  85. package/lib/commonjs/ui/forms/useInlineValidation.js +88 -0
  86. package/lib/commonjs/ui/forms/useInlineValidation.js.map +1 -0
  87. package/lib/commonjs/ui/forms/validators.js +34 -0
  88. package/lib/commonjs/ui/forms/validators.js.map +1 -0
  89. package/lib/commonjs/ui/icons/HomeHeartIcon.js +38 -0
  90. package/lib/commonjs/ui/icons/HomeHeartIcon.js.map +1 -0
  91. package/lib/commonjs/ui/icons/StepIcon.js +59 -0
  92. package/lib/commonjs/ui/icons/StepIcon.js.map +1 -0
  93. package/lib/commonjs/ui/overlays/AnalyzingOverlay.js +284 -0
  94. package/lib/commonjs/ui/overlays/AnalyzingOverlay.js.map +1 -0
  95. package/lib/commonjs/ui/overlays/LoadingOverlay.js +108 -0
  96. package/lib/commonjs/ui/overlays/LoadingOverlay.js.map +1 -0
  97. package/lib/commonjs/ui/overlays/ProgressBar.js +95 -0
  98. package/lib/commonjs/ui/overlays/ProgressBar.js.map +1 -0
  99. package/lib/commonjs/ui/overlays/RetryDialog.js +125 -0
  100. package/lib/commonjs/ui/overlays/RetryDialog.js.map +1 -0
  101. package/lib/commonjs/ui/overlays/index.js +33 -0
  102. package/lib/commonjs/ui/overlays/index.js.map +1 -0
  103. package/lib/commonjs/ui/primitives/Banner.js +81 -0
  104. package/lib/commonjs/ui/primitives/Banner.js.map +1 -0
  105. package/lib/commonjs/ui/primitives/Button.js +142 -0
  106. package/lib/commonjs/ui/primitives/Button.js.map +1 -0
  107. package/lib/commonjs/ui/primitives/Card.js +50 -0
  108. package/lib/commonjs/ui/primitives/Card.js.map +1 -0
  109. package/lib/commonjs/ui/primitives/Checkbox.js +139 -0
  110. package/lib/commonjs/ui/primitives/Checkbox.js.map +1 -0
  111. package/lib/commonjs/ui/primitives/CountrySelect.js +288 -0
  112. package/lib/commonjs/ui/primitives/CountrySelect.js.map +1 -0
  113. package/lib/commonjs/ui/primitives/DatePicker.js +245 -0
  114. package/lib/commonjs/ui/primitives/DatePicker.js.map +1 -0
  115. package/lib/commonjs/ui/primitives/Input.js +101 -0
  116. package/lib/commonjs/ui/primitives/Input.js.map +1 -0
  117. package/lib/commonjs/ui/primitives/Select.js +209 -0
  118. package/lib/commonjs/ui/primitives/Select.js.map +1 -0
  119. package/lib/commonjs/ui/primitives/Spinner.js +25 -0
  120. package/lib/commonjs/ui/primitives/Spinner.js.map +1 -0
  121. package/lib/commonjs/ui/primitives/index.js +69 -0
  122. package/lib/commonjs/ui/primitives/index.js.map +1 -0
  123. package/lib/commonjs/ui/theme/ThemeProvider.js +74 -0
  124. package/lib/commonjs/ui/theme/ThemeProvider.js.map +1 -0
  125. package/lib/commonjs/ui/theme/index.js +68 -0
  126. package/lib/commonjs/ui/theme/index.js.map +1 -0
  127. package/lib/commonjs/ui/theme/tokens.js +154 -0
  128. package/lib/commonjs/ui/theme/tokens.js.map +1 -0
  129. package/lib/commonjs/utils/EventEmitter.js +144 -0
  130. package/lib/commonjs/utils/EventEmitter.js.map +1 -0
  131. package/lib/commonjs/utils/base64.js +53 -0
  132. package/lib/commonjs/utils/base64.js.map +1 -0
  133. package/lib/commonjs/utils/deviceFingerprint.js +132 -0
  134. package/lib/commonjs/utils/deviceFingerprint.js.map +1 -0
  135. package/lib/commonjs/utils/documentTypeOptions.js +35 -0
  136. package/lib/commonjs/utils/documentTypeOptions.js.map +1 -0
  137. package/lib/commonjs/utils/googleMapsPreflight.js +77 -0
  138. package/lib/commonjs/utils/googleMapsPreflight.js.map +1 -0
  139. package/lib/commonjs/utils/hmac.js +58 -0
  140. package/lib/commonjs/utils/hmac.js.map +1 -0
  141. package/lib/commonjs/utils/iso3166Countries.js +98 -0
  142. package/lib/commonjs/utils/iso3166Countries.js.map +1 -0
  143. package/lib/commonjs/utils/jpegFromUri.js +44 -0
  144. package/lib/commonjs/utils/jpegFromUri.js.map +1 -0
  145. package/lib/commonjs/utils/keepAwake.js +58 -0
  146. package/lib/commonjs/utils/keepAwake.js.map +1 -0
  147. package/lib/commonjs/utils/log.js +42 -0
  148. package/lib/commonjs/utils/log.js.map +1 -0
  149. package/lib/commonjs/utils/osGeocoder.js +70 -0
  150. package/lib/commonjs/utils/osGeocoder.js.map +1 -0
  151. package/lib/commonjs/utils/parseGoogleAddressComponents.js +74 -0
  152. package/lib/commonjs/utils/parseGoogleAddressComponents.js.map +1 -0
  153. package/lib/commonjs/utils/personNameNormalize.js +24 -0
  154. package/lib/commonjs/utils/personNameNormalize.js.map +1 -0
  155. package/lib/commonjs/utils/sdkError.js +34 -0
  156. package/lib/commonjs/utils/sdkError.js.map +1 -0
  157. package/lib/commonjs/utils/sdkVersion.js +13 -0
  158. package/lib/commonjs/utils/sdkVersion.js.map +1 -0
  159. package/lib/commonjs/utils/stepConfig.js +65 -0
  160. package/lib/commonjs/utils/stepConfig.js.map +1 -0
  161. package/lib/commonjs/utils/taxInfoConfig.js +19 -0
  162. package/lib/commonjs/utils/taxInfoConfig.js.map +1 -0
  163. package/lib/module/camera/AddressSearchBar.js +299 -0
  164. package/lib/module/camera/AddressSearchBar.js.map +1 -0
  165. package/lib/module/camera/DocumentCapture.js +500 -0
  166. package/lib/module/camera/DocumentCapture.js.map +1 -0
  167. package/lib/module/camera/LivenessCamera.js +529 -0
  168. package/lib/module/camera/LivenessCamera.js.map +1 -0
  169. package/lib/module/camera/MapAddressPicker.js +337 -0
  170. package/lib/module/camera/MapAddressPicker.js.map +1 -0
  171. package/lib/module/core/VelionOnboarding.js +811 -0
  172. package/lib/module/core/VelionOnboarding.js.map +1 -0
  173. package/lib/module/core/sessionDeclinedCopy.js +52 -0
  174. package/lib/module/core/sessionDeclinedCopy.js.map +1 -0
  175. package/lib/module/core/sessionStateMapper.js +128 -0
  176. package/lib/module/core/sessionStateMapper.js.map +1 -0
  177. package/lib/module/core/sseReasonMessages.js +446 -0
  178. package/lib/module/core/sseReasonMessages.js.map +1 -0
  179. package/lib/module/data/iso3166Alpha2Codes.json +1 -0
  180. package/lib/module/data/iso3166CountryNames.json +251 -0
  181. package/lib/module/i18n/index.js +25 -0
  182. package/lib/module/i18n/index.js.map +1 -0
  183. package/lib/module/i18n/strings/en.js +257 -0
  184. package/lib/module/i18n/strings/en.js.map +1 -0
  185. package/lib/module/i18n/strings/es.js +262 -0
  186. package/lib/module/i18n/strings/es.js.map +1 -0
  187. package/lib/module/index.js +36 -0
  188. package/lib/module/index.js.map +1 -0
  189. package/lib/module/steps/AddressInfoStep.js +646 -0
  190. package/lib/module/steps/AddressInfoStep.js.map +1 -0
  191. package/lib/module/steps/DocumentsOcrStep.js +391 -0
  192. package/lib/module/steps/DocumentsOcrStep.js.map +1 -0
  193. package/lib/module/steps/EmailContactStep.js +140 -0
  194. package/lib/module/steps/EmailContactStep.js.map +1 -0
  195. package/lib/module/steps/EmailOtpStep.js +215 -0
  196. package/lib/module/steps/EmailOtpStep.js.map +1 -0
  197. package/lib/module/steps/FaceMatchStep.js +161 -0
  198. package/lib/module/steps/FaceMatchStep.js.map +1 -0
  199. package/lib/module/steps/FingerprintStep.js +87 -0
  200. package/lib/module/steps/FingerprintStep.js.map +1 -0
  201. package/lib/module/steps/HumanBasicInfoStep.js +238 -0
  202. package/lib/module/steps/HumanBasicInfoStep.js.map +1 -0
  203. package/lib/module/steps/HumanExtendedInfoStep.js +263 -0
  204. package/lib/module/steps/HumanExtendedInfoStep.js.map +1 -0
  205. package/lib/module/steps/LegalBasicInfoStep.js +183 -0
  206. package/lib/module/steps/LegalBasicInfoStep.js.map +1 -0
  207. package/lib/module/steps/LegalExtendedInfoStep.js +161 -0
  208. package/lib/module/steps/LegalExtendedInfoStep.js.map +1 -0
  209. package/lib/module/steps/LivenessMatchStep.js +701 -0
  210. package/lib/module/steps/LivenessMatchStep.js.map +1 -0
  211. package/lib/module/steps/PhoneContactStep.js +141 -0
  212. package/lib/module/steps/PhoneContactStep.js.map +1 -0
  213. package/lib/module/steps/PhoneOtpStep.js +214 -0
  214. package/lib/module/steps/PhoneOtpStep.js.map +1 -0
  215. package/lib/module/steps/SwornDeclarationStep.js +191 -0
  216. package/lib/module/steps/SwornDeclarationStep.js.map +1 -0
  217. package/lib/module/steps/TaxInfoStep.js +239 -0
  218. package/lib/module/steps/TaxInfoStep.js.map +1 -0
  219. package/lib/module/steps/TermsAndConditionsStep.js +233 -0
  220. package/lib/module/steps/TermsAndConditionsStep.js.map +1 -0
  221. package/lib/module/steps/_shared.js +33 -0
  222. package/lib/module/steps/_shared.js.map +1 -0
  223. package/lib/module/steps/types.js +4 -0
  224. package/lib/module/steps/types.js.map +1 -0
  225. package/lib/module/transport/api.js +173 -0
  226. package/lib/module/transport/api.js.map +1 -0
  227. package/lib/module/transport/irisWebSocket.js +115 -0
  228. package/lib/module/transport/irisWebSocket.js.map +1 -0
  229. package/lib/module/transport/secureUrl.js +45 -0
  230. package/lib/module/transport/secureUrl.js.map +1 -0
  231. package/lib/module/transport/sse.js +242 -0
  232. package/lib/module/transport/sse.js.map +1 -0
  233. package/lib/module/types/index.js +457 -0
  234. package/lib/module/types/index.js.map +1 -0
  235. package/lib/module/ui/MapFallbackBoundary.js +37 -0
  236. package/lib/module/ui/MapFallbackBoundary.js.map +1 -0
  237. package/lib/module/ui/StepShell.js +114 -0
  238. package/lib/module/ui/StepShell.js.map +1 -0
  239. package/lib/module/ui/VelionOnboardingScreen.js +212 -0
  240. package/lib/module/ui/VelionOnboardingScreen.js.map +1 -0
  241. package/lib/module/ui/forms/index.js +5 -0
  242. package/lib/module/ui/forms/index.js.map +1 -0
  243. package/lib/module/ui/forms/useInlineValidation.js +84 -0
  244. package/lib/module/ui/forms/useInlineValidation.js.map +1 -0
  245. package/lib/module/ui/forms/validators.js +27 -0
  246. package/lib/module/ui/forms/validators.js.map +1 -0
  247. package/lib/module/ui/icons/HomeHeartIcon.js +33 -0
  248. package/lib/module/ui/icons/HomeHeartIcon.js.map +1 -0
  249. package/lib/module/ui/icons/StepIcon.js +55 -0
  250. package/lib/module/ui/icons/StepIcon.js.map +1 -0
  251. package/lib/module/ui/overlays/AnalyzingOverlay.js +279 -0
  252. package/lib/module/ui/overlays/AnalyzingOverlay.js.map +1 -0
  253. package/lib/module/ui/overlays/LoadingOverlay.js +104 -0
  254. package/lib/module/ui/overlays/LoadingOverlay.js.map +1 -0
  255. package/lib/module/ui/overlays/ProgressBar.js +90 -0
  256. package/lib/module/ui/overlays/ProgressBar.js.map +1 -0
  257. package/lib/module/ui/overlays/RetryDialog.js +121 -0
  258. package/lib/module/ui/overlays/RetryDialog.js.map +1 -0
  259. package/lib/module/ui/overlays/index.js +6 -0
  260. package/lib/module/ui/overlays/index.js.map +1 -0
  261. package/lib/module/ui/primitives/Banner.js +77 -0
  262. package/lib/module/ui/primitives/Banner.js.map +1 -0
  263. package/lib/module/ui/primitives/Button.js +138 -0
  264. package/lib/module/ui/primitives/Button.js.map +1 -0
  265. package/lib/module/ui/primitives/Card.js +46 -0
  266. package/lib/module/ui/primitives/Card.js.map +1 -0
  267. package/lib/module/ui/primitives/Checkbox.js +136 -0
  268. package/lib/module/ui/primitives/Checkbox.js.map +1 -0
  269. package/lib/module/ui/primitives/CountrySelect.js +284 -0
  270. package/lib/module/ui/primitives/CountrySelect.js.map +1 -0
  271. package/lib/module/ui/primitives/DatePicker.js +241 -0
  272. package/lib/module/ui/primitives/DatePicker.js.map +1 -0
  273. package/lib/module/ui/primitives/Input.js +97 -0
  274. package/lib/module/ui/primitives/Input.js.map +1 -0
  275. package/lib/module/ui/primitives/Select.js +205 -0
  276. package/lib/module/ui/primitives/Select.js.map +1 -0
  277. package/lib/module/ui/primitives/Spinner.js +21 -0
  278. package/lib/module/ui/primitives/Spinner.js.map +1 -0
  279. package/lib/module/ui/primitives/index.js +12 -0
  280. package/lib/module/ui/primitives/index.js.map +1 -0
  281. package/lib/module/ui/theme/ThemeProvider.js +67 -0
  282. package/lib/module/ui/theme/ThemeProvider.js.map +1 -0
  283. package/lib/module/ui/theme/index.js +5 -0
  284. package/lib/module/ui/theme/index.js.map +1 -0
  285. package/lib/module/ui/theme/tokens.js +145 -0
  286. package/lib/module/ui/theme/tokens.js.map +1 -0
  287. package/lib/module/utils/EventEmitter.js +139 -0
  288. package/lib/module/utils/EventEmitter.js.map +1 -0
  289. package/lib/module/utils/base64.js +47 -0
  290. package/lib/module/utils/base64.js.map +1 -0
  291. package/lib/module/utils/deviceFingerprint.js +129 -0
  292. package/lib/module/utils/deviceFingerprint.js.map +1 -0
  293. package/lib/module/utils/documentTypeOptions.js +31 -0
  294. package/lib/module/utils/documentTypeOptions.js.map +1 -0
  295. package/lib/module/utils/googleMapsPreflight.js +73 -0
  296. package/lib/module/utils/googleMapsPreflight.js.map +1 -0
  297. package/lib/module/utils/hmac.js +53 -0
  298. package/lib/module/utils/hmac.js.map +1 -0
  299. package/lib/module/utils/iso3166Countries.js +92 -0
  300. package/lib/module/utils/iso3166Countries.js.map +1 -0
  301. package/lib/module/utils/jpegFromUri.js +40 -0
  302. package/lib/module/utils/jpegFromUri.js.map +1 -0
  303. package/lib/module/utils/keepAwake.js +53 -0
  304. package/lib/module/utils/keepAwake.js.map +1 -0
  305. package/lib/module/utils/log.js +37 -0
  306. package/lib/module/utils/log.js.map +1 -0
  307. package/lib/module/utils/osGeocoder.js +65 -0
  308. package/lib/module/utils/osGeocoder.js.map +1 -0
  309. package/lib/module/utils/parseGoogleAddressComponents.js +69 -0
  310. package/lib/module/utils/parseGoogleAddressComponents.js.map +1 -0
  311. package/lib/module/utils/personNameNormalize.js +20 -0
  312. package/lib/module/utils/personNameNormalize.js.map +1 -0
  313. package/lib/module/utils/sdkError.js +29 -0
  314. package/lib/module/utils/sdkError.js.map +1 -0
  315. package/lib/module/utils/sdkVersion.js +9 -0
  316. package/lib/module/utils/sdkVersion.js.map +1 -0
  317. package/lib/module/utils/stepConfig.js +59 -0
  318. package/lib/module/utils/stepConfig.js.map +1 -0
  319. package/lib/module/utils/taxInfoConfig.js +15 -0
  320. package/lib/module/utils/taxInfoConfig.js.map +1 -0
  321. package/lib/typescript/camera/AddressSearchBar.d.ts +37 -0
  322. package/lib/typescript/camera/AddressSearchBar.d.ts.map +1 -0
  323. package/lib/typescript/camera/DocumentCapture.d.ts +34 -0
  324. package/lib/typescript/camera/DocumentCapture.d.ts.map +1 -0
  325. package/lib/typescript/camera/LivenessCamera.d.ts +50 -0
  326. package/lib/typescript/camera/LivenessCamera.d.ts.map +1 -0
  327. package/lib/typescript/camera/MapAddressPicker.d.ts +57 -0
  328. package/lib/typescript/camera/MapAddressPicker.d.ts.map +1 -0
  329. package/lib/typescript/core/VelionOnboarding.d.ts +115 -0
  330. package/lib/typescript/core/VelionOnboarding.d.ts.map +1 -0
  331. package/lib/typescript/core/sessionDeclinedCopy.d.ts +16 -0
  332. package/lib/typescript/core/sessionDeclinedCopy.d.ts.map +1 -0
  333. package/lib/typescript/core/sessionStateMapper.d.ts +33 -0
  334. package/lib/typescript/core/sessionStateMapper.d.ts.map +1 -0
  335. package/lib/typescript/core/sseReasonMessages.d.ts +20 -0
  336. package/lib/typescript/core/sseReasonMessages.d.ts.map +1 -0
  337. package/lib/typescript/i18n/index.d.ts +13 -0
  338. package/lib/typescript/i18n/index.d.ts.map +1 -0
  339. package/lib/typescript/i18n/strings/en.d.ts +3 -0
  340. package/lib/typescript/i18n/strings/en.d.ts.map +1 -0
  341. package/lib/typescript/i18n/strings/es.d.ts +260 -0
  342. package/lib/typescript/i18n/strings/es.d.ts.map +1 -0
  343. package/lib/typescript/index.d.ts +26 -0
  344. package/lib/typescript/index.d.ts.map +1 -0
  345. package/lib/typescript/steps/AddressInfoStep.d.ts +26 -0
  346. package/lib/typescript/steps/AddressInfoStep.d.ts.map +1 -0
  347. package/lib/typescript/steps/DocumentsOcrStep.d.ts +26 -0
  348. package/lib/typescript/steps/DocumentsOcrStep.d.ts.map +1 -0
  349. package/lib/typescript/steps/EmailContactStep.d.ts +15 -0
  350. package/lib/typescript/steps/EmailContactStep.d.ts.map +1 -0
  351. package/lib/typescript/steps/EmailOtpStep.d.ts +21 -0
  352. package/lib/typescript/steps/EmailOtpStep.d.ts.map +1 -0
  353. package/lib/typescript/steps/FaceMatchStep.d.ts +27 -0
  354. package/lib/typescript/steps/FaceMatchStep.d.ts.map +1 -0
  355. package/lib/typescript/steps/FingerprintStep.d.ts +25 -0
  356. package/lib/typescript/steps/FingerprintStep.d.ts.map +1 -0
  357. package/lib/typescript/steps/HumanBasicInfoStep.d.ts +25 -0
  358. package/lib/typescript/steps/HumanBasicInfoStep.d.ts.map +1 -0
  359. package/lib/typescript/steps/HumanExtendedInfoStep.d.ts +23 -0
  360. package/lib/typescript/steps/HumanExtendedInfoStep.d.ts.map +1 -0
  361. package/lib/typescript/steps/LegalBasicInfoStep.d.ts +17 -0
  362. package/lib/typescript/steps/LegalBasicInfoStep.d.ts.map +1 -0
  363. package/lib/typescript/steps/LegalExtendedInfoStep.d.ts +17 -0
  364. package/lib/typescript/steps/LegalExtendedInfoStep.d.ts.map +1 -0
  365. package/lib/typescript/steps/LivenessMatchStep.d.ts +26 -0
  366. package/lib/typescript/steps/LivenessMatchStep.d.ts.map +1 -0
  367. package/lib/typescript/steps/PhoneContactStep.d.ts +15 -0
  368. package/lib/typescript/steps/PhoneContactStep.d.ts.map +1 -0
  369. package/lib/typescript/steps/PhoneOtpStep.d.ts +19 -0
  370. package/lib/typescript/steps/PhoneOtpStep.d.ts.map +1 -0
  371. package/lib/typescript/steps/SwornDeclarationStep.d.ts +20 -0
  372. package/lib/typescript/steps/SwornDeclarationStep.d.ts.map +1 -0
  373. package/lib/typescript/steps/TaxInfoStep.d.ts +19 -0
  374. package/lib/typescript/steps/TaxInfoStep.d.ts.map +1 -0
  375. package/lib/typescript/steps/TermsAndConditionsStep.d.ts +21 -0
  376. package/lib/typescript/steps/TermsAndConditionsStep.d.ts.map +1 -0
  377. package/lib/typescript/steps/_shared.d.ts +11 -0
  378. package/lib/typescript/steps/_shared.d.ts.map +1 -0
  379. package/lib/typescript/steps/types.d.ts +68 -0
  380. package/lib/typescript/steps/types.d.ts.map +1 -0
  381. package/lib/typescript/transport/api.d.ts +35 -0
  382. package/lib/typescript/transport/api.d.ts.map +1 -0
  383. package/lib/typescript/transport/irisWebSocket.d.ts +72 -0
  384. package/lib/typescript/transport/irisWebSocket.d.ts.map +1 -0
  385. package/lib/typescript/transport/secureUrl.d.ts +14 -0
  386. package/lib/typescript/transport/secureUrl.d.ts.map +1 -0
  387. package/lib/typescript/transport/sse.d.ts +54 -0
  388. package/lib/typescript/transport/sse.d.ts.map +1 -0
  389. package/lib/typescript/types/index.d.ts +1010 -0
  390. package/lib/typescript/types/index.d.ts.map +1 -0
  391. package/lib/typescript/ui/MapFallbackBoundary.d.ts +28 -0
  392. package/lib/typescript/ui/MapFallbackBoundary.d.ts.map +1 -0
  393. package/lib/typescript/ui/StepShell.d.ts +19 -0
  394. package/lib/typescript/ui/StepShell.d.ts.map +1 -0
  395. package/lib/typescript/ui/VelionOnboardingScreen.d.ts +19 -0
  396. package/lib/typescript/ui/VelionOnboardingScreen.d.ts.map +1 -0
  397. package/lib/typescript/ui/forms/index.d.ts +3 -0
  398. package/lib/typescript/ui/forms/index.d.ts.map +1 -0
  399. package/lib/typescript/ui/forms/useInlineValidation.d.ts +30 -0
  400. package/lib/typescript/ui/forms/useInlineValidation.d.ts.map +1 -0
  401. package/lib/typescript/ui/forms/validators.d.ts +11 -0
  402. package/lib/typescript/ui/forms/validators.d.ts.map +1 -0
  403. package/lib/typescript/ui/icons/HomeHeartIcon.d.ts +14 -0
  404. package/lib/typescript/ui/icons/HomeHeartIcon.d.ts.map +1 -0
  405. package/lib/typescript/ui/icons/StepIcon.d.ts +26 -0
  406. package/lib/typescript/ui/icons/StepIcon.d.ts.map +1 -0
  407. package/lib/typescript/ui/overlays/AnalyzingOverlay.d.ts +24 -0
  408. package/lib/typescript/ui/overlays/AnalyzingOverlay.d.ts.map +1 -0
  409. package/lib/typescript/ui/overlays/LoadingOverlay.d.ts +19 -0
  410. package/lib/typescript/ui/overlays/LoadingOverlay.d.ts.map +1 -0
  411. package/lib/typescript/ui/overlays/ProgressBar.d.ts +26 -0
  412. package/lib/typescript/ui/overlays/ProgressBar.d.ts.map +1 -0
  413. package/lib/typescript/ui/overlays/RetryDialog.d.ts +17 -0
  414. package/lib/typescript/ui/overlays/RetryDialog.d.ts.map +1 -0
  415. package/lib/typescript/ui/overlays/index.d.ts +4 -0
  416. package/lib/typescript/ui/overlays/index.d.ts.map +1 -0
  417. package/lib/typescript/ui/primitives/Banner.d.ts +11 -0
  418. package/lib/typescript/ui/primitives/Banner.d.ts.map +1 -0
  419. package/lib/typescript/ui/primitives/Button.d.ts +27 -0
  420. package/lib/typescript/ui/primitives/Button.d.ts.map +1 -0
  421. package/lib/typescript/ui/primitives/Card.d.ts +10 -0
  422. package/lib/typescript/ui/primitives/Card.d.ts.map +1 -0
  423. package/lib/typescript/ui/primitives/Checkbox.d.ts +25 -0
  424. package/lib/typescript/ui/primitives/Checkbox.d.ts.map +1 -0
  425. package/lib/typescript/ui/primitives/CountrySelect.d.ts +31 -0
  426. package/lib/typescript/ui/primitives/CountrySelect.d.ts.map +1 -0
  427. package/lib/typescript/ui/primitives/DatePicker.d.ts +42 -0
  428. package/lib/typescript/ui/primitives/DatePicker.d.ts.map +1 -0
  429. package/lib/typescript/ui/primitives/Input.d.ts +17 -0
  430. package/lib/typescript/ui/primitives/Input.d.ts.map +1 -0
  431. package/lib/typescript/ui/primitives/Select.d.ts +26 -0
  432. package/lib/typescript/ui/primitives/Select.d.ts.map +1 -0
  433. package/lib/typescript/ui/primitives/Spinner.d.ts +10 -0
  434. package/lib/typescript/ui/primitives/Spinner.d.ts.map +1 -0
  435. package/lib/typescript/ui/primitives/index.d.ts +10 -0
  436. package/lib/typescript/ui/primitives/index.d.ts.map +1 -0
  437. package/lib/typescript/ui/theme/ThemeProvider.d.ts +23 -0
  438. package/lib/typescript/ui/theme/ThemeProvider.d.ts.map +1 -0
  439. package/lib/typescript/ui/theme/index.d.ts +3 -0
  440. package/lib/typescript/ui/theme/index.d.ts.map +1 -0
  441. package/lib/typescript/ui/theme/tokens.d.ts +42 -0
  442. package/lib/typescript/ui/theme/tokens.d.ts.map +1 -0
  443. package/lib/typescript/utils/EventEmitter.d.ts +98 -0
  444. package/lib/typescript/utils/EventEmitter.d.ts.map +1 -0
  445. package/lib/typescript/utils/base64.d.ts +19 -0
  446. package/lib/typescript/utils/base64.d.ts.map +1 -0
  447. package/lib/typescript/utils/deviceFingerprint.d.ts +42 -0
  448. package/lib/typescript/utils/deviceFingerprint.d.ts.map +1 -0
  449. package/lib/typescript/utils/documentTypeOptions.d.ts +13 -0
  450. package/lib/typescript/utils/documentTypeOptions.d.ts.map +1 -0
  451. package/lib/typescript/utils/googleMapsPreflight.d.ts +44 -0
  452. package/lib/typescript/utils/googleMapsPreflight.d.ts.map +1 -0
  453. package/lib/typescript/utils/hmac.d.ts +39 -0
  454. package/lib/typescript/utils/hmac.d.ts.map +1 -0
  455. package/lib/typescript/utils/iso3166Countries.d.ts +27 -0
  456. package/lib/typescript/utils/iso3166Countries.d.ts.map +1 -0
  457. package/lib/typescript/utils/jpegFromUri.d.ts +29 -0
  458. package/lib/typescript/utils/jpegFromUri.d.ts.map +1 -0
  459. package/lib/typescript/utils/keepAwake.d.ts +16 -0
  460. package/lib/typescript/utils/keepAwake.d.ts.map +1 -0
  461. package/lib/typescript/utils/log.d.ts +18 -0
  462. package/lib/typescript/utils/log.d.ts.map +1 -0
  463. package/lib/typescript/utils/osGeocoder.d.ts +38 -0
  464. package/lib/typescript/utils/osGeocoder.d.ts.map +1 -0
  465. package/lib/typescript/utils/parseGoogleAddressComponents.d.ts +43 -0
  466. package/lib/typescript/utils/parseGoogleAddressComponents.d.ts.map +1 -0
  467. package/lib/typescript/utils/personNameNormalize.d.ts +10 -0
  468. package/lib/typescript/utils/personNameNormalize.d.ts.map +1 -0
  469. package/lib/typescript/utils/sdkError.d.ts +14 -0
  470. package/lib/typescript/utils/sdkError.d.ts.map +1 -0
  471. package/lib/typescript/utils/sdkVersion.d.ts +7 -0
  472. package/lib/typescript/utils/sdkVersion.d.ts.map +1 -0
  473. package/lib/typescript/utils/stepConfig.d.ts +8 -0
  474. package/lib/typescript/utils/stepConfig.d.ts.map +1 -0
  475. package/lib/typescript/utils/taxInfoConfig.d.ts +7 -0
  476. package/lib/typescript/utils/taxInfoConfig.d.ts.map +1 -0
  477. package/package.json +99 -0
  478. package/src/camera/AddressSearchBar.tsx +363 -0
  479. package/src/camera/DocumentCapture.tsx +505 -0
  480. package/src/camera/LivenessCamera.tsx +602 -0
  481. package/src/camera/MapAddressPicker.tsx +397 -0
  482. package/src/core/VelionOnboarding.ts +974 -0
  483. package/src/core/sessionDeclinedCopy.ts +76 -0
  484. package/src/core/sessionStateMapper.ts +167 -0
  485. package/src/core/sseReasonMessages.ts +531 -0
  486. package/src/data/iso3166Alpha2Codes.json +1 -0
  487. package/src/data/iso3166CountryNames.json +251 -0
  488. package/src/i18n/index.ts +26 -0
  489. package/src/i18n/strings/en.ts +289 -0
  490. package/src/i18n/strings/es.ts +291 -0
  491. package/src/index.ts +137 -0
  492. package/src/steps/AddressInfoStep.tsx +726 -0
  493. package/src/steps/DocumentsOcrStep.tsx +472 -0
  494. package/src/steps/EmailContactStep.tsx +159 -0
  495. package/src/steps/EmailOtpStep.tsx +250 -0
  496. package/src/steps/FaceMatchStep.tsx +177 -0
  497. package/src/steps/FingerprintStep.tsx +99 -0
  498. package/src/steps/HumanBasicInfoStep.tsx +274 -0
  499. package/src/steps/HumanExtendedInfoStep.tsx +353 -0
  500. package/src/steps/LegalBasicInfoStep.tsx +205 -0
  501. package/src/steps/LegalExtendedInfoStep.tsx +171 -0
  502. package/src/steps/LivenessMatchStep.tsx +846 -0
  503. package/src/steps/PhoneContactStep.tsx +160 -0
  504. package/src/steps/PhoneOtpStep.tsx +249 -0
  505. package/src/steps/SwornDeclarationStep.tsx +220 -0
  506. package/src/steps/TaxInfoStep.tsx +277 -0
  507. package/src/steps/TermsAndConditionsStep.tsx +261 -0
  508. package/src/steps/_shared.ts +44 -0
  509. package/src/steps/types.ts +72 -0
  510. package/src/transport/api.ts +257 -0
  511. package/src/transport/irisWebSocket.ts +186 -0
  512. package/src/transport/secureUrl.ts +47 -0
  513. package/src/transport/sse.ts +310 -0
  514. package/src/types/index.ts +1198 -0
  515. package/src/ui/MapFallbackBoundary.tsx +46 -0
  516. package/src/ui/StepShell.tsx +137 -0
  517. package/src/ui/VelionOnboardingScreen.tsx +223 -0
  518. package/src/ui/forms/index.ts +12 -0
  519. package/src/ui/forms/useInlineValidation.ts +115 -0
  520. package/src/ui/forms/validators.ts +29 -0
  521. package/src/ui/icons/HomeHeartIcon.tsx +34 -0
  522. package/src/ui/icons/StepIcon.tsx +77 -0
  523. package/src/ui/overlays/AnalyzingOverlay.tsx +323 -0
  524. package/src/ui/overlays/LoadingOverlay.tsx +115 -0
  525. package/src/ui/overlays/ProgressBar.tsx +99 -0
  526. package/src/ui/overlays/RetryDialog.tsx +128 -0
  527. package/src/ui/overlays/index.ts +3 -0
  528. package/src/ui/primitives/Banner.tsx +81 -0
  529. package/src/ui/primitives/Button.tsx +164 -0
  530. package/src/ui/primitives/Card.tsx +55 -0
  531. package/src/ui/primitives/Checkbox.tsx +153 -0
  532. package/src/ui/primitives/CountrySelect.tsx +356 -0
  533. package/src/ui/primitives/DatePicker.tsx +266 -0
  534. package/src/ui/primitives/Input.tsx +110 -0
  535. package/src/ui/primitives/Select.tsx +259 -0
  536. package/src/ui/primitives/Spinner.tsx +17 -0
  537. package/src/ui/primitives/index.ts +9 -0
  538. package/src/ui/theme/ThemeProvider.tsx +102 -0
  539. package/src/ui/theme/index.ts +17 -0
  540. package/src/ui/theme/tokens.ts +159 -0
  541. package/src/utils/EventEmitter.ts +155 -0
  542. package/src/utils/base64.ts +44 -0
  543. package/src/utils/deviceFingerprint.ts +184 -0
  544. package/src/utils/documentTypeOptions.ts +31 -0
  545. package/src/utils/googleMapsPreflight.ts +72 -0
  546. package/src/utils/hmac.ts +61 -0
  547. package/src/utils/iso3166Countries.ts +111 -0
  548. package/src/utils/jpegFromUri.ts +42 -0
  549. package/src/utils/keepAwake.ts +62 -0
  550. package/src/utils/log.ts +37 -0
  551. package/src/utils/osGeocoder.ts +75 -0
  552. package/src/utils/parseGoogleAddressComponents.ts +123 -0
  553. package/src/utils/personNameNormalize.ts +17 -0
  554. package/src/utils/sdkError.ts +40 -0
  555. package/src/utils/sdkVersion.ts +6 -0
  556. package/src/utils/stepConfig.ts +75 -0
  557. package/src/utils/taxInfoConfig.ts +14 -0
@@ -0,0 +1,391 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.VELION_MSG_TOKEN_EXPIRED = exports.VELION_MSG_TOKEN = exports.VELION_MSG_SUCCESS = exports.VELION_MSG_STEP_COMPLETE = exports.VELION_MSG_STEP_CHANGE = exports.VELION_MSG_READY = exports.VELION_MSG_INIT = exports.VELION_MSG_ERROR = exports.SdkErrorCode = exports.CameraErrorCode = void 0;
7
+ /**
8
+ * @fileoverview Public TypeScript contracts for the Velion Onboarding SDK.
9
+ *
10
+ * Design principle: All types exported from this file constitute the public API.
11
+ * Internal implementation types should live alongside their respective modules.
12
+ */
13
+ // ─────────────────────────────────────────────────────────────────────────────
14
+ // STEP & FLOW TYPES
15
+ // ─────────────────────────────────────────────────────────────────────────────
16
+ /**
17
+ * The complete set of onboarding steps the backend can require.
18
+ * The SDK dynamically receives the active subset for each session.
19
+ *
20
+ * @remarks
21
+ * - `DEVICE_FINGERPRINT`: Silently collects device entropy via FingerprintJS.
22
+ * - `DOCUMENTS_OCR`: Renders a UI for ID document image capture and upload.
23
+ * - `LIVENESS_MATCH`: Drives the Velion Iris active-liveness flow over WebSocket (HUMAN only).
24
+ * - `EMAIL_OTP` / `PHONE_OTP`: Contact verification via one-time passwords.
25
+ * - `HUMAN_BASIC_INFO`: Natural-person identification data (HUMAN only).
26
+ * - `LEGAL_BASIC_INFO`: Legal-entity identification data (LEGAL only).
27
+ * - `EMAIL_CONTACT` / `PHONE_CONTACT`: contact collection without OTP.
28
+ * - `TAX_INFO`, `HUMAN_EXTENDED_INFO`, `LEGAL_EXTENDED_INFO`, `ADDRESS_INFO`, `SWORN_DECLARATION`: form steps.
29
+ * - `TERMS_AND_CONDITIONS`: accept configured T&C items.
30
+ * - `FACE_MATCH`: server-side face comparison after liveness (no user input; SDK waits).
31
+ */
32
+ /**
33
+ * Status of an individual onboarding step (matches backend OnboardingStepStatus).
34
+ */
35
+ /**
36
+ * Type of onboarding session (matches backend OnboardingType).
37
+ * Constrains which steps are valid: HUMAN allows biometric steps, LEGAL uses entity data.
38
+ */
39
+ /** Which face of the ID document is being captured. */
40
+ /**
41
+ * How the user can provide document images in the DOCUMENTS_OCR step.
42
+ * - `'camera'`: Only "Take photo" (opens camera on supported devices).
43
+ * - `'file'`: Only "Choose file" (file picker).
44
+ * - `'both'`: Both options; implementer can style via theme.
45
+ *
46
+ * @default 'both'
47
+ */
48
+ /**
49
+ * Orientation of the document capture cutout / crop frame.
50
+ * - `'landscape'`: Horizontal card (default — standard ID-1 cards).
51
+ * - `'portrait'`: Vertical card (e.g. some passports, residence permits).
52
+ *
53
+ * @default 'landscape'
54
+ */
55
+ /** Generic visible/required field toggle used by workflow step configs. */
56
+ /** Select option used by configurable step fields (e.g. HUMAN_EXTENDED_INFO gender/civil_status). */
57
+ /** Field rule with optional selectable options. */
58
+ /** STEP config for HUMAN_BASIC_INFO. */
59
+ /**
60
+ * One selectable option row from TAX_INFO `accepted_tax_information` (backend GET session).
61
+ * Prefer `code` as the value sent in POST tax-info; `id` is supported for older payloads.
62
+ */
63
+ /** One country block in TAX_INFO step config (GET session `current_step.config`). */
64
+ /** STEP config for TAX_INFO. */
65
+ /** STEP config for HUMAN_EXTENDED_INFO. */
66
+ /** STEP config for ADDRESS_INFO. */
67
+ /** STEP config for SWORN_DECLARATION. */
68
+ /** STEP config for DOCUMENTS_OCR. */
69
+ /** STEP config for TERMS_AND_CONDITIONS. */
70
+ /** Generic per-step runtime config map carried by session state and SSE. */
71
+ /**
72
+ * Request body for POST /sessions/:sessionId/documents-init.
73
+ * Allowed values are defined by the backend; the SDK currently sends a fixed type until
74
+ * the session exposes selectable document types.
75
+ */
76
+ /**
77
+ * Response from POST /sessions/:sessionId/documents-init.
78
+ * Backend returns signed upload URLs so the SDK can PUT each document side
79
+ * directly to storage (e.g. GCS) without routing bytes through the backend.
80
+ */
81
+ // ─────────────────────────────────────────────────────────────────────────────
82
+ // ERROR TYPES
83
+ // ─────────────────────────────────────────────────────────────────────────────
84
+ /**
85
+ * Granular error codes for camera/hardware failures.
86
+ * Allows consumers to display localized, actionable messages to end-users.
87
+ */
88
+ let CameraErrorCode = exports.CameraErrorCode = /*#__PURE__*/function (CameraErrorCode) {
89
+ /** User explicitly denied camera access in the browser permission dialog. */
90
+ CameraErrorCode["PERMISSION_DENIED"] = "CAMERA_PERMISSION_DENIED";
91
+ /** No camera device was detected on the system. */
92
+ CameraErrorCode["DEVICE_NOT_FOUND"] = "CAMERA_DEVICE_NOT_FOUND";
93
+ /**
94
+ * The camera could not be opened for reading (often in use by another app,
95
+ * or blocked at the OS level). Maps to `NotReadableError` / `TrackStartError`.
96
+ */
97
+ CameraErrorCode["DEVICE_NOT_READABLE"] = "CAMERA_DEVICE_NOT_READABLE";
98
+ /**
99
+ * The page is served over HTTP (not HTTPS) in a production environment.
100
+ * `getUserMedia` is blocked by the browser's Secure Context policy.
101
+ */
102
+ CameraErrorCode["INSECURE_CONTEXT"] = "CAMERA_INSECURE_CONTEXT";
103
+ /**
104
+ * Browser policy blocked camera (e.g. cross-origin iframe without permission,
105
+ * or `Permissions-Policy` / Feature-Policy denying camera). Maps to `SecurityError`
106
+ * from `getUserMedia` — distinct from {@link INSECURE_CONTEXT} (non-HTTPS).
107
+ */
108
+ CameraErrorCode["POLICY_BLOCKED"] = "CAMERA_POLICY_BLOCKED";
109
+ /** The browser or WebView does not support the `getUserMedia` API. */
110
+ CameraErrorCode["NOT_SUPPORTED"] = "CAMERA_NOT_SUPPORTED";
111
+ /**
112
+ * Camera access is blocked by a WebView policy (common in in-app browsers
113
+ * on iOS/Android that restrict hardware access).
114
+ */
115
+ CameraErrorCode["WEBVIEW_BLOCKED"] = "CAMERA_WEBVIEW_BLOCKED";
116
+ /** The requested video constraints (resolution, facing mode) are not satisfiable. */
117
+ CameraErrorCode["CONSTRAINT_ERROR"] = "CAMERA_CONSTRAINT_ERROR";
118
+ /** An unclassified camera error occurred. Check `cause` for details. */
119
+ CameraErrorCode["UNKNOWN"] = "CAMERA_UNKNOWN_ERROR";
120
+ return CameraErrorCode;
121
+ }({});
122
+ /**
123
+ * Top-level SDK error codes covering all failure scenarios in the onboarding flow.
124
+ */
125
+ let SdkErrorCode = exports.SdkErrorCode = /*#__PURE__*/function (SdkErrorCode) {
126
+ // ── Session ──────────────────────────────────────────────────────────────
127
+ /** The sessionToken was rejected by the backend (401/403). */
128
+ SdkErrorCode["SESSION_INVALID"] = "SESSION_INVALID";
129
+ /** The sessionToken has expired (typically a 401 after initial validation). */
130
+ SdkErrorCode["SESSION_EXPIRED"] = "SESSION_EXPIRED";
131
+ /** Could not fetch the initial session state from the backend. */
132
+ SdkErrorCode["SESSION_FETCH_FAILED"] = "SESSION_FETCH_FAILED";
133
+ /** Backend sent SESSION_DECLINED over SSE; session ended before completion. */
134
+ SdkErrorCode["SESSION_DECLINED"] = "SESSION_DECLINED";
135
+ // ── Modules ──────────────────────────────────────────────────────────────
136
+ /** FingerprintJS failed to generate the visitor ID. */
137
+ SdkErrorCode["FINGERPRINT_FAILED"] = "FINGERPRINT_FAILED";
138
+ /** One or more document images failed to upload successfully. */
139
+ SdkErrorCode["DOCUMENT_UPLOAD_FAILED"] = "DOCUMENT_UPLOAD_FAILED";
140
+ /** The liveness check did not pass or returned an unexpected result. */
141
+ SdkErrorCode["LIVENESS_FAILED"] = "LIVENESS_FAILED";
142
+ /** The Liveness module failed to initialize (e.g., could not create the Iris session). */
143
+ SdkErrorCode["LIVENESS_INIT_FAILED"] = "LIVENESS_INIT_FAILED";
144
+ // ── Camera ───────────────────────────────────────────────────────────────
145
+ /**
146
+ * A camera-related error occurred. Inspect `cameraCode` for the specific reason.
147
+ * @see CameraErrorCode
148
+ */
149
+ SdkErrorCode["CAMERA_ERROR"] = "CAMERA_ERROR";
150
+ // ── Network & API ────────────────────────────────────────────────────────
151
+ /** A network-level failure (no internet, CORS, DNS). */
152
+ SdkErrorCode["NETWORK_ERROR"] = "NETWORK_ERROR";
153
+ /** The backend returned a non-2xx HTTP status. */
154
+ SdkErrorCode["API_ERROR"] = "API_ERROR";
155
+ // ── Configuration ────────────────────────────────────────────────────────
156
+ /** The `containerId` provided in the config does not exist in the DOM. */
157
+ SdkErrorCode["CONTAINER_NOT_FOUND"] = "CONTAINER_NOT_FOUND";
158
+ /** `start()` was called on an SDK instance that is already running. */
159
+ SdkErrorCode["ALREADY_STARTED"] = "ALREADY_STARTED";
160
+ /** `start()` was called after `destroy()`. The instance is no longer usable. */
161
+ SdkErrorCode["INSTANCE_DESTROYED"] = "INSTANCE_DESTROYED";
162
+ /**
163
+ * The page is running inside an iframe and embedding was not explicitly allowed.
164
+ * Configure Content-Security-Policy: frame-ancestors or X-Frame-Options on the
165
+ * page that hosts the SDK, or set allowEmbedded: true if embedding is intentional.
166
+ */
167
+ SdkErrorCode["INSECURE_EMBED"] = "INSECURE_EMBED";
168
+ /**
169
+ * The CDN-served manifest could not be downloaded or its Ed25519 signature did
170
+ * not verify against the loader's embedded public key. The loader refuses to
171
+ * mount the iframe to prevent execution of tampered/unsigned bundles.
172
+ */
173
+ SdkErrorCode["INTEGRITY_FAILED"] = "INTEGRITY_FAILED";
174
+ SdkErrorCode["UNKNOWN"] = "UNKNOWN";
175
+ return SdkErrorCode;
176
+ }({});
177
+ /**
178
+ * A structured, machine-readable error object emitted by the SDK.
179
+ *
180
+ * @example
181
+ * ```typescript
182
+ * const sdk = new VelionOnboarding({
183
+ * onError: (err) => {
184
+ * if (err.code === SdkErrorCode.CAMERA_ERROR &&
185
+ * err.cameraCode === CameraErrorCode.PERMISSION_DENIED) {
186
+ * showCameraPermissionDialog();
187
+ * }
188
+ * }
189
+ * });
190
+ * ```
191
+ */
192
+ // ─────────────────────────────────────────────────────────────────────────────
193
+ // THEMING
194
+ // ─────────────────────────────────────────────────────────────────────────────
195
+ /**
196
+ * White-labeling theme configuration.
197
+ * Each property maps to a CSS custom property injected on the SDK container,
198
+ * making all SDK UI elements styleable via `--vl-*` variables.
199
+ *
200
+ * @example
201
+ * ```typescript
202
+ * const theme: VelionTheme = {
203
+ * primaryColor: '#0052CC', // → --vl-primary-color
204
+ * borderRadius: '12px', // → --vl-border-radius
205
+ * fontFamily: 'Inter, sans-serif'// → --vl-font-family
206
+ * };
207
+ * ```
208
+ */
209
+ /**
210
+ * Optional title and body for one terminal verdict on the final result screen.
211
+ */
212
+ /**
213
+ * Configurable copy for the built-in final result screen (`showFinalResultScreen`).
214
+ * Omitted fields fall back to SDK defaults for the active `locale`.
215
+ */
216
+ /**
217
+ * Localized title/body for one `reason` on the SESSION_DECLINED screen.
218
+ * Keys match backend `reason` (e.g. `TAX_INFO_FAILED`).
219
+ */
220
+ /**
221
+ * Per-reason overrides for the built-in SESSION_DECLINED screen (`showFinalResultScreen` not false).
222
+ * Unspecified reasons fall back to SDK defaults when available, then generic copy.
223
+ */
224
+ // ─────────────────────────────────────────────────────────────────────────────
225
+ // CALLBACKS
226
+ // ─────────────────────────────────────────────────────────────────────────────
227
+ /**
228
+ * The complete set of lifecycle callbacks the host application can subscribe to.
229
+ * All callbacks are optional. The SDK is still functional without any of them,
230
+ * but `onError` and `onSuccess` are strongly recommended for production.
231
+ */
232
+ // ─────────────────────────────────────────────────────────────────────────────
233
+ // MAIN CONFIGURATION
234
+ // ─────────────────────────────────────────────────────────────────────────────
235
+ /**
236
+ * Root configuration object for the `VelionOnboarding` class.
237
+ *
238
+ * @example
239
+ * ```typescript
240
+ * const sdk = new VelionOnboarding({
241
+ * containerId: 'velion-root',
242
+ * sessionId: 'ses_abc123',
243
+ * sessionToken: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...',
244
+ * apiUrl: 'https://api.velion.la/v1',
245
+ * theme: { primaryColor: '#0052CC' },
246
+ * onSuccess: (result) => console.log('Done!', result),
247
+ * onError: (err) => console.error('SDK Error:', err),
248
+ * });
249
+ *
250
+ * await sdk.start();
251
+ * ```
252
+ */
253
+ // ─────────────────────────────────────────────────────────────────────────────
254
+ // BACKEND RESPONSE SHAPES
255
+ // ─────────────────────────────────────────────────────────────────────────────
256
+ /**
257
+ * Backend step DTO (OnboardingStepDto). GET session returns an array of these.
258
+ */
259
+ /**
260
+ * Backend session/onboarding DTO (OnboardingDto). Returned by GET /sessions/:sessionId.
261
+ * The SDK maps this to SessionState for the step machine.
262
+ */
263
+ /**
264
+ * Session state used by the SDK step machine. Derived from GET /sessions/:sessionId
265
+ * (OnboardingDto): steps sorted by order → requiredSteps, first non-completed index → currentStepIndex.
266
+ */
267
+ /**
268
+ * A single T&C line item (matches backend TermsAndConditionsItemDto / domain record).
269
+ */
270
+ /**
271
+ * Response from session creation (POST from your backend). Use sessionId and
272
+ * sessionToken when instantiating VelionOnboarding; pass expiresAt for optional
273
+ * client-side expiration checks.
274
+ */
275
+ /**
276
+ * Shape of the final result returned by `GET /sessions/:sessionId/result`
277
+ * once all steps are complete.
278
+ */
279
+ /**
280
+ * Response from `POST /sessions/:sessionId/liveness-init`.
281
+ * The backend returns the Iris session details the SDK needs to open the WebSocket
282
+ * and stream frames. Credentials are not used: Iris owns the session lifecycle.
283
+ */
284
+ /**
285
+ * Payload for POST /sessions/:sessionId/basic-info/human (HUMAN_BASIC_INFO step).
286
+ * Matches backend SubmitHumanBasicInfoRequestDto (snake_case in JSON).
287
+ */
288
+ /**
289
+ * Payload for POST /sessions/:sessionId/basic-info/legal (LEGAL_BASIC_INFO step).
290
+ * Matches backend SubmitLegalBasicInfoRequestDto (snake_case in JSON).
291
+ */
292
+ /**
293
+ * Single selectable option for tax category or fiscal identifier type (TAX_INFO step).
294
+ * `id` is submitted to the API; `description` is the user-visible label.
295
+ */
296
+ /**
297
+ * Resolved selectable lists for the TAX_INFO step UI (from `accepted_tax_information` only; no SDK defaults).
298
+ */
299
+ /** POST /sessions/:id/tax-info — SubmitTaxInfoRequestDto. */
300
+ /** POST /sessions/:id/extended-info/human — SubmitHumanExtendedInfoRequestDto. */
301
+ /** POST /sessions/:id/extended-info/legal — SubmitLegalExtendedInfoRequestDto. */
302
+ /** POST /sessions/:id/address-info — SubmitAddressInfoRequestDto. */
303
+ /** POST /sessions/:id/sworn-declaration — SubmitSwornDeclarationRequestDto. */
304
+ /** POST /sessions/:id/contact/email — SubmitEmailContactRequestDto. */
305
+ /** POST /sessions/:id/contact/phone — SubmitPhoneContactRequestDto. */
306
+ /** POST /sessions/:id/terms-and-conditions — SubmitTermsAndConditionsRequestDto. */
307
+ /**
308
+ * SSE event payload (OnboardingSessionEvent). Matches the backend record
309
+ * la.velion.onboarding.api...sdk.OnboardingSessionEventDto (snake_case in JSON).
310
+ *
311
+ * Received on GET /public/sdk/sessions/:sessionId/events. The backend sends
312
+ * ServerSentEvent with id = event_id (epoch millis) for Last-Event-ID replay.
313
+ *
314
+ * Event types (event_type):
315
+ * - STEP_UPDATED — a workflow step changed status (step_code, step_status)
316
+ * - ROUTING_COMMAND — next/retry/terminate instruction (action: NEXT_STEP | RETRY_STEP | TERMINATE)
317
+ * - SESSION_APPROVED — all checks passed; session_status = APPROVED
318
+ * - SESSION_MANUAL_REVIEW — manual review required; session_status = MANUAL_REVIEW
319
+ * - SESSION_DECLINED — session ended with decline (step_code, session_status DECLINED, reason)
320
+ */
321
+ // ─────────────────────────────────────────────────────────────────────────────
322
+ // BACKEND COMMANDS (Listen & Obey)
323
+ // ─────────────────────────────────────────────────────────────────────────────
324
+ /**
325
+ * Backend command: advance to a specific step. The SDK must render that step's
326
+ * screen without evaluating business rules locally.
327
+ */
328
+ /**
329
+ * Backend command: show an error message to the user. The SDK displays the
330
+ * message and does not advance (backend owns the decision).
331
+ */
332
+ /**
333
+ * Backend command: flow is complete. SDK should fetch final result and fire onSuccess.
334
+ */
335
+ /**
336
+ * Backend command: retry the current step (e.g. after transient failure).
337
+ */
338
+ /**
339
+ * Strict command payload the backend may return in a synchronous HTTP response
340
+ * or send via SSE. The SDK never makes routing decisions; it only obeys these commands.
341
+ */
342
+ /**
343
+ * Raw response body that may contain a backend command (e.g. POST submit response).
344
+ */
345
+ // ─────────────────────────────────────────────────────────────────────────────
346
+ // INTERNAL STATE MACHINE TYPES (exported for module authors)
347
+ // ─────────────────────────────────────────────────────────────────────────────
348
+ /**
349
+ * All possible states of the SDK's internal lifecycle.
350
+ * Transitions are strictly unidirectional (no going back to IDLE once started).
351
+ *
352
+ * @internal
353
+ */
354
+ // destroy() was called, instance is a no-op
355
+ /**
356
+ * Internal event bus event names. Typed via `SdkEventMap`.
357
+ * @internal
358
+ */
359
+ /**
360
+ * Maps each internal event name to its payload type.
361
+ * Used by the `TypedEventEmitter` for compile-time safety.
362
+ * @internal
363
+ */
364
+ // ─────────────────────────────────────────────────────────────────────────────
365
+ // LOADER ↔ CDN APP POSTMESSAGE PROTOCOL (Sumsub-style)
366
+ // ─────────────────────────────────────────────────────────────────────────────
367
+
368
+ /** Message type: parent (loader) sends config to iframe (CDN app). */
369
+ const VELION_MSG_INIT = exports.VELION_MSG_INIT = 'VELION_INIT';
370
+
371
+ /** Message types: iframe (CDN app) sends to parent (loader). */
372
+ const VELION_MSG_READY = exports.VELION_MSG_READY = 'VELION_READY';
373
+ const VELION_MSG_SUCCESS = exports.VELION_MSG_SUCCESS = 'VELION_SUCCESS';
374
+ const VELION_MSG_ERROR = exports.VELION_MSG_ERROR = 'VELION_ERROR';
375
+ const VELION_MSG_STEP_CHANGE = exports.VELION_MSG_STEP_CHANGE = 'VELION_STEP_CHANGE';
376
+ const VELION_MSG_STEP_COMPLETE = exports.VELION_MSG_STEP_COMPLETE = 'VELION_STEP_COMPLETE';
377
+ const VELION_MSG_TOKEN_EXPIRED = exports.VELION_MSG_TOKEN_EXPIRED = 'VELION_TOKEN_EXPIRED';
378
+
379
+ /** Message type: parent sends new token to iframe after VELION_TOKEN_EXPIRED. */
380
+ const VELION_MSG_TOKEN = exports.VELION_MSG_TOKEN = 'VELION_TOKEN';
381
+
382
+ /** Envelope for all loader ↔ iframe messages. Both sides must validate origin. */
383
+
384
+ /** Payload for VELION_INIT: full config (iframe runs with containerId overwritten to root id). */
385
+
386
+ /** Payload for VELION_STEP_CHANGE. */
387
+
388
+ /** Payload for VELION_STEP_COMPLETE. */
389
+
390
+ /** Payload for VELION_TOKEN (token refresh response from parent to iframe). */
391
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CameraErrorCode","exports","SdkErrorCode","VELION_MSG_INIT","VELION_MSG_READY","VELION_MSG_SUCCESS","VELION_MSG_ERROR","VELION_MSG_STEP_CHANGE","VELION_MSG_STEP_COMPLETE","VELION_MSG_TOKEN_EXPIRED","VELION_MSG_TOKEN"],"sourceRoot":"../../../src","sources":["types/index.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAmBA;AACA;AACA;AAQA;AACA;AACA;AACA;AAGA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AAMA;AAMA;AAKA;AAQA;AACA;AACA;AACA;AAQA;AAQA;AAMA;AAaA;AAiBA;AAYA;AAaA;AAKA;AAGA;AACA;AACA;AACA;AACA;AAKA;AACA;AACA;AACA;AACA;AAUA;AACA;AACA;AAEA;AACA;AACA;AACA;AAHA,IAIYA,eAAe,GAAAC,OAAA,CAAAD,eAAA,0BAAfA,eAAe;EACzB;EADUA,eAAe;EAGzB;EAHUA,eAAe;EAKzB;AACF;AACA;AACA;EARYA,eAAe;EAUzB;AACF;AACA;AACA;EAbYA,eAAe;EAezB;AACF;AACA;AACA;AACA;EAnBYA,eAAe;EAqBzB;EArBUA,eAAe;EAuBzB;AACF;AACA;AACA;EA1BYA,eAAe;EA4BzB;EA5BUA,eAAe;EA8BzB;EA9BUA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAkC3B;AACA;AACA;AAFA,IAGYE,YAAY,GAAAD,OAAA,CAAAC,YAAA,0BAAZA,YAAY;EACtB;EACA;EAFUA,YAAY;EAItB;EAJUA,YAAY;EAMtB;EANUA,YAAY;EAQtB;EARUA,YAAY;EAWtB;EACA;EAZUA,YAAY;EActB;EAdUA,YAAY;EAgBtB;EAhBUA,YAAY;EAkBtB;EAlBUA,YAAY;EAqBtB;EACA;AACF;AACA;AACA;EAzBYA,YAAY;EA4BtB;EACA;EA7BUA,YAAY;EA+BtB;EA/BUA,YAAY;EAkCtB;EACA;EAnCUA,YAAY;EAqCtB;EArCUA,YAAY;EAuCtB;EAvCUA,YAAY;EA0CtB;AACF;AACA;AACA;AACA;EA9CYA,YAAY;EAiDtB;AACF;AACA;AACA;AACA;EArDYA,YAAY;EAAZA,YAAY;EAAA,OAAZA,YAAY;AAAA;AA2DxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAgCA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA6CA;AACA;AACA;AAMA;AACA;AACA;AACA;AAWA;AACA;AACA;AACA;AAMA;AACA;AACA;AACA;AAMA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAwDA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAoMA;AACA;AACA;AAEA;AACA;AACA;AAYA;AACA;AACA;AACA;AAyBA;AACA;AACA;AACA;AAmBA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AAuBA;AACA;AACA;AACA;AACA;AAmBA;AACA;AACA;AACA;AAUA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AAMA;AACA;AACA;AAYA;AAUA;AAUA;AAMA;AAkBA;AAQA;AAKA;AAKA;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAsBA;AACA;AACA;AAEA;AACA;AACA;AACA;AAMA;AACA;AACA;AACA;AAMA;AACA;AACA;AAKA;AACA;AACA;AAKA;AACA;AACA;AACA;AAOA;AACA;AACA;AAOA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAQqB;AAErB;AACA;AACA;AACA;AASA;AACA;AACA;AACA;AACA;AAUA;AACA;AACA;;AAEA;AACO,MAAMC,eAAe,GAAAF,OAAA,CAAAE,eAAA,GAAG,aAAsB;;AAErD;AACO,MAAMC,gBAAgB,GAAAH,OAAA,CAAAG,gBAAA,GAAG,cAAuB;AAChD,MAAMC,kBAAkB,GAAAJ,OAAA,CAAAI,kBAAA,GAAG,gBAAyB;AACpD,MAAMC,gBAAgB,GAAAL,OAAA,CAAAK,gBAAA,GAAG,cAAuB;AAChD,MAAMC,sBAAsB,GAAAN,OAAA,CAAAM,sBAAA,GAAG,oBAA6B;AAC5D,MAAMC,wBAAwB,GAAAP,OAAA,CAAAO,wBAAA,GAAG,sBAA+B;AAChE,MAAMC,wBAAwB,GAAAR,OAAA,CAAAQ,wBAAA,GAAG,sBAA+B;;AAEvE;AACO,MAAMC,gBAAgB,GAAAT,OAAA,CAAAS,gBAAA,GAAG,cAAuB;;AAYvD;;AAMA;;AAGA;;AAMA;;AAKA","ignoreList":[]}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MapFallbackBoundary = void 0;
7
+ var _react = require("react");
8
+ var _log = require("../utils/log");
9
+ /**
10
+ * Error boundary that catches render failures from `react-native-maps` and
11
+ * lets the parent fall back to the manual address form.
12
+ *
13
+ * Specifically the `AirGoogleMaps` runtime error (`AirGoogleMaps dir must be
14
+ * added to your xCode project to support GoogleMaps on iOS`) only surfaces
15
+ * when the MapView mounts. The preflight check cannot detect it because the
16
+ * native module exists — it's just missing its iOS sub-target.
17
+ */
18
+
19
+ class MapFallbackBoundary extends _react.Component {
20
+ state = {
21
+ hasError: false
22
+ };
23
+ static getDerivedStateFromError() {
24
+ return {
25
+ hasError: true
26
+ };
27
+ }
28
+ componentDidCatch(error) {
29
+ _log.log.warn('[MapFallbackBoundary] map render failed, switching to manual', {
30
+ message: error.message
31
+ });
32
+ this.props.onError(error);
33
+ }
34
+ render() {
35
+ if (this.state.hasError) {
36
+ return this.props.fallback ?? null;
37
+ }
38
+ return this.props.children;
39
+ }
40
+ }
41
+ exports.MapFallbackBoundary = MapFallbackBoundary;
42
+ //# sourceMappingURL=MapFallbackBoundary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_log","MapFallbackBoundary","Component","state","hasError","getDerivedStateFromError","componentDidCatch","error","log","warn","message","props","onError","render","fallback","children","exports"],"sourceRoot":"../../../src","sources":["ui/MapFallbackBoundary.tsx"],"mappings":";;;;;;AAUA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAiBO,MAAME,mBAAmB,SAASC,gBAAS,CAAe;EAC/DC,KAAK,GAAU;IAAEC,QAAQ,EAAE;EAAM,CAAC;EAElC,OAAOC,wBAAwBA,CAAA,EAAU;IACvC,OAAO;MAAED,QAAQ,EAAE;IAAK,CAAC;EAC3B;EAEAE,iBAAiBA,CAACC,KAAY,EAAQ;IACpCC,QAAG,CAACC,IAAI,CAAC,8DAA8D,EAAE;MACvEC,OAAO,EAAEH,KAAK,CAACG;IACjB,CAAC,CAAC;IACF,IAAI,CAACC,KAAK,CAACC,OAAO,CAACL,KAAK,CAAC;EAC3B;EAEAM,MAAMA,CAAA,EAAG;IACP,IAAI,IAAI,CAACV,KAAK,CAACC,QAAQ,EAAE;MACvB,OAAO,IAAI,CAACO,KAAK,CAACG,QAAQ,IAAI,IAAI;IACpC;IACA,OAAO,IAAI,CAACH,KAAK,CAACI,QAAQ;EAC5B;AACF;AAACC,OAAA,CAAAf,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.StepShell = StepShell;
7
+ var _reactNative = require("react-native");
8
+ var _theme = require("./theme");
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ /**
11
+ * @fileoverview Step shell — header + scrollable body.
12
+ *
13
+ * Rounded header icon, title, subtitle, then a centered column with the
14
+ * step's form. Used by every form-style step (HUMAN_BASIC_INFO, TAX_INFO, …)
15
+ * so they read as a single visual family.
16
+ */
17
+
18
+ function StepShell({
19
+ title,
20
+ subtitle,
21
+ iconNode,
22
+ children,
23
+ avoidKeyboard = true
24
+ }) {
25
+ const theme = (0, _theme.useTheme)();
26
+ const showIconCircle = !theme.hideStepIcons && iconNode != null;
27
+ const body = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.ScrollView, {
28
+ style: styles.scroll,
29
+ contentContainerStyle: styles.scrollBody,
30
+ keyboardShouldPersistTaps: "handled",
31
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
32
+ style: styles.header,
33
+ children: [showIconCircle ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
34
+ style: [styles.iconCircle, {
35
+ backgroundColor: theme.primaryColor,
36
+ shadowColor: (0, _theme.withAlpha)(theme.primaryColor, 0.5)
37
+ }],
38
+ accessibilityElementsHidden: true,
39
+ importantForAccessibility: "no",
40
+ children: iconNode
41
+ }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
42
+ style: [styles.title, {
43
+ color: theme.textColor
44
+ }],
45
+ children: title
46
+ }), subtitle ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
47
+ style: [styles.subtitle, {
48
+ color: theme.textSecondaryColor
49
+ }],
50
+ children: subtitle
51
+ }) : null]
52
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
53
+ style: styles.column,
54
+ children: children
55
+ })]
56
+ });
57
+ if (avoidKeyboard) {
58
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.KeyboardAvoidingView, {
59
+ style: styles.flex,
60
+ behavior: _reactNative.Platform.OS === 'ios' ? 'padding' : undefined,
61
+ children: body
62
+ });
63
+ }
64
+ return body;
65
+ }
66
+ const styles = _reactNative.StyleSheet.create({
67
+ flex: {
68
+ flex: 1
69
+ },
70
+ scroll: {
71
+ flex: 1
72
+ },
73
+ scrollBody: {
74
+ paddingHorizontal: 18,
75
+ paddingTop: 12,
76
+ paddingBottom: 28
77
+ },
78
+ header: {
79
+ alignItems: 'center',
80
+ marginBottom: 14
81
+ },
82
+ iconCircle: {
83
+ width: 56,
84
+ height: 56,
85
+ borderRadius: 28,
86
+ marginBottom: 10,
87
+ alignItems: 'center',
88
+ justifyContent: 'center',
89
+ shadowOpacity: 0.25,
90
+ shadowRadius: 8,
91
+ shadowOffset: {
92
+ width: 0,
93
+ height: 3
94
+ },
95
+ elevation: 3
96
+ },
97
+ title: {
98
+ fontSize: 20,
99
+ fontWeight: '700',
100
+ letterSpacing: -0.3,
101
+ textAlign: 'center'
102
+ },
103
+ subtitle: {
104
+ marginTop: 6,
105
+ fontSize: 14,
106
+ fontWeight: '400',
107
+ textAlign: 'center',
108
+ lineHeight: 20,
109
+ maxWidth: 320
110
+ },
111
+ column: {
112
+ width: '100%',
113
+ maxWidth: 360,
114
+ alignSelf: 'center',
115
+ gap: 10
116
+ }
117
+ });
118
+ //# sourceMappingURL=StepShell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_theme","_jsxRuntime","StepShell","title","subtitle","iconNode","children","avoidKeyboard","theme","useTheme","showIconCircle","hideStepIcons","body","jsxs","ScrollView","style","styles","scroll","contentContainerStyle","scrollBody","keyboardShouldPersistTaps","View","header","jsx","iconCircle","backgroundColor","primaryColor","shadowColor","withAlpha","accessibilityElementsHidden","importantForAccessibility","Text","color","textColor","textSecondaryColor","column","KeyboardAvoidingView","flex","behavior","Platform","OS","undefined","StyleSheet","create","paddingHorizontal","paddingTop","paddingBottom","alignItems","marginBottom","width","height","borderRadius","justifyContent","shadowOpacity","shadowRadius","shadowOffset","elevation","fontSize","fontWeight","letterSpacing","textAlign","marginTop","lineHeight","maxWidth","alignSelf","gap"],"sourceRoot":"../../../src","sources":["ui/StepShell.tsx"],"mappings":"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","ignoreList":[]}