@onairos/react-native 3.1.18 → 3.2.0

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 (729) hide show
  1. package/README.md +374 -403
  2. package/lib/commonjs/api/index.js +1 -75
  3. package/lib/commonjs/api/index.js.map +1 -1
  4. package/lib/commonjs/assets/images/email.png +0 -0
  5. package/lib/commonjs/assets/images/linkedin.png +0 -0
  6. package/lib/commonjs/assets/images/reddit.png +0 -0
  7. package/lib/commonjs/assets/images/youtube.png +0 -0
  8. package/lib/commonjs/components/DataRequestModal.js.map +1 -1
  9. package/lib/commonjs/components/DataRequestScreen.js.map +1 -1
  10. package/lib/commonjs/components/EmailVerificationModal.js.map +1 -1
  11. package/lib/commonjs/components/Onairos.js +3 -1
  12. package/lib/commonjs/components/Onairos.js.map +1 -1
  13. package/lib/commonjs/components/OnairosButton.js +190 -171
  14. package/lib/commonjs/components/OnairosButton.js.map +1 -1
  15. package/lib/commonjs/components/Overlay.js +5 -5
  16. package/lib/commonjs/components/Overlay.js.map +1 -1
  17. package/lib/commonjs/components/PinInput.js +120 -282
  18. package/lib/commonjs/components/PinInput.js.map +1 -1
  19. package/lib/commonjs/components/PlatformList.js.map +1 -1
  20. package/lib/commonjs/components/TrainingModal.js +563 -808
  21. package/lib/commonjs/components/TrainingModal.js.map +1 -1
  22. package/lib/commonjs/components/UniversalOnboarding.js +1283 -2304
  23. package/lib/commonjs/components/UniversalOnboarding.js.map +1 -1
  24. package/lib/commonjs/components/UniversalOnboarding.tsx.new +455 -0
  25. package/lib/commonjs/components/onboarding/OAuthWebView.js +743 -134
  26. package/lib/commonjs/components/onboarding/OAuthWebView.js.map +1 -1
  27. package/lib/commonjs/components/onboarding/OnboardingHeader.js.map +1 -1
  28. package/lib/commonjs/components/onboarding/PinInput.js.map +1 -1
  29. package/lib/commonjs/components/onboarding/PlatformConnector.js.map +1 -1
  30. package/lib/commonjs/components/screens/ConnectorScreen.js.map +1 -1
  31. package/lib/commonjs/components/screens/LoadingScreen.js.map +1 -1
  32. package/lib/commonjs/components/screens/PinCreationScreen.js.map +1 -1
  33. package/lib/commonjs/constants/index.js.map +1 -1
  34. package/lib/commonjs/hooks/useConnections.js +125 -120
  35. package/lib/commonjs/hooks/useConnections.js.map +1 -1
  36. package/lib/commonjs/hooks/useCredentials.js.map +1 -1
  37. package/lib/commonjs/index.js +31 -201
  38. package/lib/commonjs/index.js.map +1 -1
  39. package/lib/commonjs/services/apiKeyService.js +102 -101
  40. package/lib/commonjs/services/apiKeyService.js.map +1 -1
  41. package/lib/commonjs/services/oauthService.js.map +1 -1
  42. package/lib/commonjs/services/platformAuthService.js +722 -956
  43. package/lib/commonjs/services/platformAuthService.js.map +1 -1
  44. package/lib/commonjs/types/ambient.d.js.map +1 -1
  45. package/lib/commonjs/types/declarations.d.js.map +1 -1
  46. package/lib/commonjs/types/index.d.js.map +1 -1
  47. package/lib/commonjs/types/index.js.map +1 -1
  48. package/lib/commonjs/types/node-fix.d.js.map +1 -1
  49. package/lib/commonjs/types/node-override.d.js.map +1 -1
  50. package/lib/commonjs/types/opacity.d.js.map +1 -1
  51. package/lib/commonjs/types/types.d.js.map +1 -1
  52. package/lib/commonjs/types.js.map +1 -1
  53. package/lib/commonjs/utils/Portal.js +4 -4
  54. package/lib/commonjs/utils/Portal.js.map +1 -1
  55. package/lib/commonjs/utils/api.js +24 -24
  56. package/lib/commonjs/utils/api.js.map +1 -1
  57. package/lib/commonjs/utils/auth.js +18 -18
  58. package/lib/commonjs/utils/auth.js.map +1 -1
  59. package/lib/commonjs/utils/crypto.js +13 -13
  60. package/lib/commonjs/utils/crypto.js.map +1 -1
  61. package/lib/commonjs/utils/debugHelper.js.map +1 -1
  62. package/lib/commonjs/utils/encryption.js +12 -12
  63. package/lib/commonjs/utils/encryption.js.map +1 -1
  64. package/lib/commonjs/utils/onairosApi.js.map +1 -1
  65. package/lib/commonjs/utils/programmaticFlow.js +16 -16
  66. package/lib/commonjs/utils/programmaticFlow.js.map +1 -1
  67. package/lib/commonjs/utils/retryHelper.js +27 -27
  68. package/lib/commonjs/utils/retryHelper.js.map +1 -1
  69. package/lib/commonjs/utils/secureStorage.js.map +1 -1
  70. package/lib/module/api/index.js +0 -72
  71. package/lib/module/api/index.js.map +1 -1
  72. package/lib/module/assets/images/email.png +0 -0
  73. package/lib/module/assets/images/linkedin.png +0 -0
  74. package/lib/module/assets/images/reddit.png +0 -0
  75. package/lib/module/assets/images/youtube.png +0 -0
  76. package/lib/module/components/DataRequestModal.js.map +1 -1
  77. package/lib/module/components/DataRequestScreen.js.map +1 -1
  78. package/lib/module/components/EmailVerificationModal.js.map +1 -1
  79. package/lib/module/components/Onairos.js +3 -1
  80. package/lib/module/components/Onairos.js.map +1 -1
  81. package/lib/module/components/OnairosButton.js +192 -172
  82. package/lib/module/components/OnairosButton.js.map +1 -1
  83. package/lib/module/components/Overlay.js +5 -5
  84. package/lib/module/components/Overlay.js.map +1 -1
  85. package/lib/module/components/PinInput.js +120 -283
  86. package/lib/module/components/PinInput.js.map +1 -1
  87. package/lib/module/components/PlatformList.js.map +1 -1
  88. package/lib/module/components/TrainingModal.js +565 -809
  89. package/lib/module/components/TrainingModal.js.map +1 -1
  90. package/lib/module/components/UniversalOnboarding.js +1284 -2307
  91. package/lib/module/components/UniversalOnboarding.js.map +1 -1
  92. package/lib/module/components/UniversalOnboarding.tsx.new +455 -0
  93. package/lib/module/components/onboarding/OAuthWebView.js +744 -136
  94. package/lib/module/components/onboarding/OAuthWebView.js.map +1 -1
  95. package/lib/module/components/onboarding/OnboardingHeader.js.map +1 -1
  96. package/lib/module/components/onboarding/PinInput.js.map +1 -1
  97. package/lib/module/components/onboarding/PlatformConnector.js.map +1 -1
  98. package/lib/module/components/screens/ConnectorScreen.js.map +1 -1
  99. package/lib/module/components/screens/LoadingScreen.js.map +1 -1
  100. package/lib/module/components/screens/PinCreationScreen.js.map +1 -1
  101. package/lib/module/constants/index.js.map +1 -1
  102. package/lib/module/hooks/useConnections.js +125 -119
  103. package/lib/module/hooks/useConnections.js.map +1 -1
  104. package/lib/module/hooks/useCredentials.js.map +1 -1
  105. package/lib/module/index.js +17 -55
  106. package/lib/module/index.js.map +1 -1
  107. package/lib/module/services/apiKeyService.js +102 -101
  108. package/lib/module/services/apiKeyService.js.map +1 -1
  109. package/lib/module/services/oauthService.js.map +1 -1
  110. package/lib/module/services/platformAuthService.js +704 -943
  111. package/lib/module/services/platformAuthService.js.map +1 -1
  112. package/lib/module/types/ambient.d.js.map +1 -1
  113. package/lib/module/types/declarations.d.js.map +1 -1
  114. package/lib/module/types/index.d.js.map +1 -1
  115. package/lib/module/types/index.js.map +1 -1
  116. package/lib/module/types/node-fix.d.js.map +1 -1
  117. package/lib/module/types/node-override.d.js.map +1 -1
  118. package/lib/module/types/opacity.d.js.map +1 -1
  119. package/lib/module/types/types.d.js.map +1 -1
  120. package/lib/module/types.js.map +1 -1
  121. package/lib/module/utils/Portal.js +4 -4
  122. package/lib/module/utils/Portal.js.map +1 -1
  123. package/lib/module/utils/api.js +24 -24
  124. package/lib/module/utils/api.js.map +1 -1
  125. package/lib/module/utils/auth.js +18 -18
  126. package/lib/module/utils/auth.js.map +1 -1
  127. package/lib/module/utils/crypto.js +13 -13
  128. package/lib/module/utils/crypto.js.map +1 -1
  129. package/lib/module/utils/debugHelper.js.map +1 -1
  130. package/lib/module/utils/encryption.js +12 -12
  131. package/lib/module/utils/encryption.js.map +1 -1
  132. package/lib/module/utils/onairosApi.js.map +1 -1
  133. package/lib/module/utils/programmaticFlow.js +16 -16
  134. package/lib/module/utils/programmaticFlow.js.map +1 -1
  135. package/lib/module/utils/retryHelper.js +27 -27
  136. package/lib/module/utils/retryHelper.js.map +1 -1
  137. package/lib/module/utils/secureStorage.js.map +1 -1
  138. package/lib/typescript/api/index.d.ts +7 -15
  139. package/lib/typescript/api/index.d.ts.map +1 -1
  140. package/lib/typescript/components/DataRequestModal.d.ts +10 -10
  141. package/lib/typescript/components/DataRequestScreen.d.ts +10 -10
  142. package/lib/typescript/components/EmailVerificationModal.d.ts +10 -10
  143. package/lib/typescript/components/Onairos.d.ts +3 -3
  144. package/lib/typescript/components/Onairos.d.ts.map +1 -1
  145. package/lib/typescript/components/OnairosButton.d.ts +11 -36
  146. package/lib/typescript/components/OnairosButton.d.ts.map +1 -1
  147. package/lib/typescript/components/Overlay.d.ts +3 -3
  148. package/lib/typescript/components/PinInput.d.ts +3 -13
  149. package/lib/typescript/components/PinInput.d.ts.map +1 -1
  150. package/lib/typescript/components/PlatformList.d.ts +3 -3
  151. package/lib/typescript/components/TrainingModal.d.ts +3 -14
  152. package/lib/typescript/components/TrainingModal.d.ts.map +1 -1
  153. package/lib/typescript/components/UniversalOnboarding.d.ts +3 -16
  154. package/lib/typescript/components/UniversalOnboarding.d.ts.map +1 -1
  155. package/lib/typescript/components/onboarding/OAuthWebView.d.ts +9 -9
  156. package/lib/typescript/components/onboarding/OAuthWebView.d.ts.map +1 -1
  157. package/lib/typescript/components/onboarding/OnboardingHeader.d.ts +10 -10
  158. package/lib/typescript/components/onboarding/PinInput.d.ts +3 -3
  159. package/lib/typescript/components/onboarding/PlatformConnector.d.ts +12 -12
  160. package/lib/typescript/components/screens/ConnectorScreen.d.ts +8 -8
  161. package/lib/typescript/components/screens/LoadingScreen.d.ts +8 -8
  162. package/lib/typescript/components/screens/PinCreationScreen.d.ts +9 -9
  163. package/lib/typescript/constants/index.d.ts +52 -52
  164. package/lib/typescript/hooks/useConnections.d.ts +8 -13
  165. package/lib/typescript/hooks/useConnections.d.ts.map +1 -1
  166. package/lib/typescript/hooks/useCredentials.d.ts +8 -8
  167. package/lib/typescript/index.d.ts +17 -38
  168. package/lib/typescript/index.d.ts.map +1 -1
  169. package/lib/typescript/services/apiKeyService.d.ts +131 -131
  170. package/lib/typescript/services/apiKeyService.d.ts.map +1 -1
  171. package/lib/typescript/services/oauthService.d.ts +49 -49
  172. package/lib/typescript/services/platformAuthService.d.ts +143 -68
  173. package/lib/typescript/services/platformAuthService.d.ts.map +1 -1
  174. package/lib/typescript/types/index.d.ts +225 -264
  175. package/lib/typescript/types/index.d.ts.map +1 -1
  176. package/lib/typescript/types.d.ts +266 -266
  177. package/lib/typescript/utils/Portal.d.ts +13 -13
  178. package/lib/typescript/utils/api.d.ts +5 -5
  179. package/lib/typescript/utils/auth.d.ts +5 -5
  180. package/lib/typescript/utils/crypto.d.ts +3 -3
  181. package/lib/typescript/utils/debugHelper.d.ts +28 -28
  182. package/lib/typescript/utils/encryption.d.ts +18 -18
  183. package/lib/typescript/utils/onairosApi.d.ts +86 -86
  184. package/lib/typescript/utils/programmaticFlow.d.ts +22 -22
  185. package/lib/typescript/utils/retryHelper.d.ts +68 -68
  186. package/lib/typescript/utils/secureStorage.d.ts +93 -93
  187. package/package.json +149 -145
  188. package/src/api/index.ts +110 -151
  189. package/src/assets/images/email.png +0 -0
  190. package/src/assets/images/linkedin.png +0 -0
  191. package/src/assets/images/reddit.png +0 -0
  192. package/src/assets/images/youtube.png +0 -0
  193. package/src/components/DataRequestScreen.tsx +355 -355
  194. package/src/components/EmailVerificationModal.tsx +363 -363
  195. package/src/components/Onairos.tsx +424 -422
  196. package/src/components/OnairosButton.tsx +359 -339
  197. package/src/components/Overlay.tsx +506 -506
  198. package/src/components/PinInput.tsx +343 -555
  199. package/src/components/PlatformList.tsx +144 -144
  200. package/src/components/TrainingModal.tsx +737 -1047
  201. package/src/components/UniversalOnboarding.tsx +1820 -2888
  202. package/src/components/UniversalOnboarding.tsx.new +455 -0
  203. package/src/components/onboarding/OAuthWebView.tsx +838 -232
  204. package/src/hooks/useConnections.ts +163 -161
  205. package/src/hooks/useCredentials.ts +174 -174
  206. package/src/index.js +14 -14
  207. package/src/index.ts +49 -99
  208. package/src/services/apiKeyService.ts +921 -919
  209. package/src/services/platformAuthService.ts +1113 -1346
  210. package/src/types/ambient.d.ts +28 -28
  211. package/src/types/index.ts +238 -265
  212. package/src/types/node-fix.d.ts +18 -18
  213. package/src/types/node-override.d.ts +23 -23
  214. package/src/types/opacity.d.ts +15 -15
  215. package/src/types/types.d.ts +17 -17
  216. package/src/utils/Portal.tsx +82 -82
  217. package/src/utils/api.js +111 -111
  218. package/src/utils/auth.js +103 -103
  219. package/src/utils/crypto.js +59 -59
  220. package/src/utils/encryption.ts +68 -68
  221. package/src/utils/programmaticFlow.ts +112 -112
  222. package/src/utils/retryHelper.ts +274 -274
  223. package/types/index.d.ts +213 -213
  224. package/types/node-env.d.ts +14 -14
  225. package/lib/commonjs/assets/fonts/EBGaramond-VariableFont_wght.ttf +0 -0
  226. package/lib/commonjs/assets/fonts/IBMPlexSans-VariableFont_wdth,wght.ttf +0 -0
  227. package/lib/commonjs/assets/icons/Facebookicon.png +0 -0
  228. package/lib/commonjs/assets/icons/Gmail.png +0 -0
  229. package/lib/commonjs/assets/icons/Linkedinicon.png +0 -0
  230. package/lib/commonjs/assets/icons/Redditicon.png +0 -0
  231. package/lib/commonjs/assets/icons/YouTubeicon2.png +0 -0
  232. package/lib/commonjs/assets/icons/YouTubeicon3.png +0 -0
  233. package/lib/commonjs/assets/icons/farcaster.png +0 -0
  234. package/lib/commonjs/assets/icons/instagram.png +0 -0
  235. package/lib/commonjs/assets/icons/pinterest.png +0 -0
  236. package/lib/commonjs/assets/icons/swerv_logo.png +0 -0
  237. package/lib/commonjs/assets/icons/twitter.jpg +0 -0
  238. package/lib/commonjs/assets/images/Checkbox.svg +0 -3
  239. package/lib/commonjs/assets/images/EnochE.svg +0 -19
  240. package/lib/commonjs/assets/images/Enochicon1.png +0 -0
  241. package/lib/commonjs/assets/images/Face_ID_logo.png +0 -0
  242. package/lib/commonjs/assets/images/Facebookicon.png +0 -0
  243. package/lib/commonjs/assets/images/Gmail.png +0 -0
  244. package/lib/commonjs/assets/images/Googlelogo.png +0 -0
  245. package/lib/commonjs/assets/images/Linkedinicon.png +0 -0
  246. package/lib/commonjs/assets/images/Onairoslogo.png +0 -0
  247. package/lib/commonjs/assets/images/Personalityprofile.svg +0 -3
  248. package/lib/commonjs/assets/images/Personalitytraits.svg +0 -3
  249. package/lib/commonjs/assets/images/Redditicon.png +0 -0
  250. package/lib/commonjs/assets/images/Userpreferences.svg +0 -3
  251. package/lib/commonjs/assets/images/YouTubeicon3.png +0 -0
  252. package/lib/commonjs/assets/images/arrow.svg +0 -20
  253. package/lib/commonjs/assets/images/basicproficon.svg +0 -43
  254. package/lib/commonjs/assets/images/basicprofile.svg +0 -3
  255. package/lib/commonjs/assets/images/checkmark.svg +0 -4
  256. package/lib/commonjs/assets/images/contentanalysis.svg +0 -3
  257. package/lib/commonjs/assets/images/contenticon.svg +0 -23
  258. package/lib/commonjs/assets/images/persona1.png +0 -0
  259. package/lib/commonjs/assets/images/persona2.png +0 -0
  260. package/lib/commonjs/assets/images/persona3.png +0 -0
  261. package/lib/commonjs/assets/images/persona4.png +0 -0
  262. package/lib/commonjs/assets/images/persona5.png +0 -0
  263. package/lib/commonjs/assets/images/personalityicon.svg +0 -18
  264. package/lib/commonjs/assets/images/x-close.svg +0 -3
  265. package/lib/commonjs/components/BodyText.js +0 -27
  266. package/lib/commonjs/components/BodyText.js.map +0 -1
  267. package/lib/commonjs/components/BrandMark.js +0 -44
  268. package/lib/commonjs/components/BrandMark.js.map +0 -1
  269. package/lib/commonjs/components/CodeInput.js +0 -30
  270. package/lib/commonjs/components/CodeInput.js.map +0 -1
  271. package/lib/commonjs/components/EmailInput.js +0 -30
  272. package/lib/commonjs/components/EmailInput.js.map +0 -1
  273. package/lib/commonjs/components/ExistingUserDataConfirmation.js +0 -474
  274. package/lib/commonjs/components/ExistingUserDataConfirmation.js.map +0 -1
  275. package/lib/commonjs/components/GoogleButton.js +0 -55
  276. package/lib/commonjs/components/GoogleButton.js.map +0 -1
  277. package/lib/commonjs/components/HeadingGroup.js +0 -43
  278. package/lib/commonjs/components/HeadingGroup.js.map +0 -1
  279. package/lib/commonjs/components/ModalHeader.js +0 -99
  280. package/lib/commonjs/components/ModalHeader.js.map +0 -1
  281. package/lib/commonjs/components/ModalSheet.js +0 -47
  282. package/lib/commonjs/components/ModalSheet.js.map +0 -1
  283. package/lib/commonjs/components/OnairosSignInButton.js +0 -129
  284. package/lib/commonjs/components/OnairosSignInButton.js.map +0 -1
  285. package/lib/commonjs/components/PersonaImage.js +0 -60
  286. package/lib/commonjs/components/PersonaImage.js.map +0 -1
  287. package/lib/commonjs/components/PersonaLoadingScreen.js +0 -156
  288. package/lib/commonjs/components/PersonaLoadingScreen.js.map +0 -1
  289. package/lib/commonjs/components/PersonalizationConsentScreen.js +0 -316
  290. package/lib/commonjs/components/PersonalizationConsentScreen.js.map +0 -1
  291. package/lib/commonjs/components/PinCreationScreen.js +0 -393
  292. package/lib/commonjs/components/PinCreationScreen.js.map +0 -1
  293. package/lib/commonjs/components/PlatformConnectorsStep.js +0 -828
  294. package/lib/commonjs/components/PlatformConnectorsStep.js.map +0 -1
  295. package/lib/commonjs/components/PlatformToggle.js +0 -180
  296. package/lib/commonjs/components/PlatformToggle.js.map +0 -1
  297. package/lib/commonjs/components/PrimaryButton.js +0 -180
  298. package/lib/commonjs/components/PrimaryButton.js.map +0 -1
  299. package/lib/commonjs/components/SignInMatchAnimation.js +0 -197
  300. package/lib/commonjs/components/SignInMatchAnimation.js.map +0 -1
  301. package/lib/commonjs/components/SignInStep.js +0 -179
  302. package/lib/commonjs/components/SignInStep.js.map +0 -1
  303. package/lib/commonjs/components/VerificationStep.js +0 -154
  304. package/lib/commonjs/components/VerificationStep.js.map +0 -1
  305. package/lib/commonjs/components/WelcomeScreen.js +0 -401
  306. package/lib/commonjs/components/WelcomeScreen.js.map +0 -1
  307. package/lib/commonjs/components/icons/Basicproficon.js +0 -37
  308. package/lib/commonjs/components/icons/Basicproficon.js.map +0 -1
  309. package/lib/commonjs/components/icons/Basicprofile.js +0 -21
  310. package/lib/commonjs/components/icons/Basicprofile.js.map +0 -1
  311. package/lib/commonjs/components/icons/Checkbox.js +0 -21
  312. package/lib/commonjs/components/icons/Checkbox.js.map +0 -1
  313. package/lib/commonjs/components/icons/Checkmark.js +0 -27
  314. package/lib/commonjs/components/icons/Checkmark.js.map +0 -1
  315. package/lib/commonjs/components/icons/Contentanalysis.js +0 -21
  316. package/lib/commonjs/components/icons/Contentanalysis.js.map +0 -1
  317. package/lib/commonjs/components/icons/Contenticon.js +0 -39
  318. package/lib/commonjs/components/icons/Contenticon.js.map +0 -1
  319. package/lib/commonjs/components/icons/EnochE.js +0 -41
  320. package/lib/commonjs/components/icons/EnochE.js.map +0 -1
  321. package/lib/commonjs/components/icons/Personalityicon.js +0 -30
  322. package/lib/commonjs/components/icons/Personalityicon.js.map +0 -1
  323. package/lib/commonjs/components/icons/Personalityprofile.js +0 -21
  324. package/lib/commonjs/components/icons/Personalityprofile.js.map +0 -1
  325. package/lib/commonjs/components/icons/Personalitytraits.js +0 -21
  326. package/lib/commonjs/components/icons/Personalitytraits.js.map +0 -1
  327. package/lib/commonjs/components/icons/Userpreferences.js +0 -21
  328. package/lib/commonjs/components/icons/Userpreferences.js.map +0 -1
  329. package/lib/commonjs/components/icons/index.js +0 -84
  330. package/lib/commonjs/components/icons/index.js.map +0 -1
  331. package/lib/commonjs/config/api.js +0 -34
  332. package/lib/commonjs/config/api.js.map +0 -1
  333. package/lib/commonjs/context/AuthContext.js +0 -345
  334. package/lib/commonjs/context/AuthContext.js.map +0 -1
  335. package/lib/commonjs/hooks/useConnectedAccounts.js +0 -111
  336. package/lib/commonjs/hooks/useConnectedAccounts.js.map +0 -1
  337. package/lib/commonjs/hooks/useUserConnections.js +0 -148
  338. package/lib/commonjs/hooks/useUserConnections.js.map +0 -1
  339. package/lib/commonjs/services/apiClient.js +0 -302
  340. package/lib/commonjs/services/apiClient.js.map +0 -1
  341. package/lib/commonjs/services/authService.js +0 -935
  342. package/lib/commonjs/services/authService.js.map +0 -1
  343. package/lib/commonjs/services/biometricPinService.js +0 -184
  344. package/lib/commonjs/services/biometricPinService.js.map +0 -1
  345. package/lib/commonjs/services/connectedAccountsService.js +0 -268
  346. package/lib/commonjs/services/connectedAccountsService.js.map +0 -1
  347. package/lib/commonjs/services/googleAuthService.js +0 -268
  348. package/lib/commonjs/services/googleAuthService.js.map +0 -1
  349. package/lib/commonjs/services/imageCompressionService.js +0 -260
  350. package/lib/commonjs/services/imageCompressionService.js.map +0 -1
  351. package/lib/commonjs/services/jwtStorageService.js +0 -256
  352. package/lib/commonjs/services/jwtStorageService.js.map +0 -1
  353. package/lib/commonjs/services/mobileTrainingService.js +0 -185
  354. package/lib/commonjs/services/mobileTrainingService.js.map +0 -1
  355. package/lib/commonjs/services/pinEncryptionService.js +0 -84
  356. package/lib/commonjs/services/pinEncryptionService.js.map +0 -1
  357. package/lib/commonjs/services/pinStorageUtils.js +0 -105
  358. package/lib/commonjs/services/pinStorageUtils.js.map +0 -1
  359. package/lib/commonjs/services/storageService.js +0 -404
  360. package/lib/commonjs/services/storageService.js.map +0 -1
  361. package/lib/commonjs/services/trainingApiHelpers.js +0 -73
  362. package/lib/commonjs/services/trainingApiHelpers.js.map +0 -1
  363. package/lib/commonjs/services/userConnectionsService.js +0 -486
  364. package/lib/commonjs/services/userConnectionsService.js.map +0 -1
  365. package/lib/commonjs/services/youtubeMigrationService.js +0 -415
  366. package/lib/commonjs/services/youtubeMigrationService.js.map +0 -1
  367. package/lib/commonjs/theme/index.js +0 -249
  368. package/lib/commonjs/theme/index.js.map +0 -1
  369. package/lib/commonjs/utils/eventUtils.js +0 -288
  370. package/lib/commonjs/utils/eventUtils.js.map +0 -1
  371. package/lib/commonjs/utils/haptics.js +0 -66
  372. package/lib/commonjs/utils/haptics.js.map +0 -1
  373. package/lib/commonjs/utils/imagePreloader.js +0 -6
  374. package/lib/commonjs/utils/imagePreloader.js.map +0 -1
  375. package/lib/module/assets/fonts/EBGaramond-VariableFont_wght.ttf +0 -0
  376. package/lib/module/assets/fonts/IBMPlexSans-VariableFont_wdth,wght.ttf +0 -0
  377. package/lib/module/assets/icons/Facebookicon.png +0 -0
  378. package/lib/module/assets/icons/Gmail.png +0 -0
  379. package/lib/module/assets/icons/Linkedinicon.png +0 -0
  380. package/lib/module/assets/icons/Redditicon.png +0 -0
  381. package/lib/module/assets/icons/YouTubeicon2.png +0 -0
  382. package/lib/module/assets/icons/YouTubeicon3.png +0 -0
  383. package/lib/module/assets/icons/farcaster.png +0 -0
  384. package/lib/module/assets/icons/instagram.png +0 -0
  385. package/lib/module/assets/icons/pinterest.png +0 -0
  386. package/lib/module/assets/icons/swerv_logo.png +0 -0
  387. package/lib/module/assets/icons/twitter.jpg +0 -0
  388. package/lib/module/assets/images/Checkbox.svg +0 -3
  389. package/lib/module/assets/images/EnochE.svg +0 -19
  390. package/lib/module/assets/images/Enochicon1.png +0 -0
  391. package/lib/module/assets/images/Face_ID_logo.png +0 -0
  392. package/lib/module/assets/images/Facebookicon.png +0 -0
  393. package/lib/module/assets/images/Gmail.png +0 -0
  394. package/lib/module/assets/images/Googlelogo.png +0 -0
  395. package/lib/module/assets/images/Linkedinicon.png +0 -0
  396. package/lib/module/assets/images/Onairoslogo.png +0 -0
  397. package/lib/module/assets/images/Personalityprofile.svg +0 -3
  398. package/lib/module/assets/images/Personalitytraits.svg +0 -3
  399. package/lib/module/assets/images/Redditicon.png +0 -0
  400. package/lib/module/assets/images/Userpreferences.svg +0 -3
  401. package/lib/module/assets/images/YouTubeicon3.png +0 -0
  402. package/lib/module/assets/images/arrow.svg +0 -20
  403. package/lib/module/assets/images/basicproficon.svg +0 -43
  404. package/lib/module/assets/images/basicprofile.svg +0 -3
  405. package/lib/module/assets/images/checkmark.svg +0 -4
  406. package/lib/module/assets/images/contentanalysis.svg +0 -3
  407. package/lib/module/assets/images/contenticon.svg +0 -23
  408. package/lib/module/assets/images/persona1.png +0 -0
  409. package/lib/module/assets/images/persona2.png +0 -0
  410. package/lib/module/assets/images/persona3.png +0 -0
  411. package/lib/module/assets/images/persona4.png +0 -0
  412. package/lib/module/assets/images/persona5.png +0 -0
  413. package/lib/module/assets/images/personalityicon.svg +0 -18
  414. package/lib/module/assets/images/x-close.svg +0 -3
  415. package/lib/module/components/BodyText.js +0 -20
  416. package/lib/module/components/BodyText.js.map +0 -1
  417. package/lib/module/components/BrandMark.js +0 -37
  418. package/lib/module/components/BrandMark.js.map +0 -1
  419. package/lib/module/components/CodeInput.js +0 -23
  420. package/lib/module/components/CodeInput.js.map +0 -1
  421. package/lib/module/components/EmailInput.js +0 -23
  422. package/lib/module/components/EmailInput.js.map +0 -1
  423. package/lib/module/components/ExistingUserDataConfirmation.js +0 -465
  424. package/lib/module/components/ExistingUserDataConfirmation.js.map +0 -1
  425. package/lib/module/components/GoogleButton.js +0 -48
  426. package/lib/module/components/GoogleButton.js.map +0 -1
  427. package/lib/module/components/HeadingGroup.js +0 -36
  428. package/lib/module/components/HeadingGroup.js.map +0 -1
  429. package/lib/module/components/ModalHeader.js +0 -92
  430. package/lib/module/components/ModalHeader.js.map +0 -1
  431. package/lib/module/components/ModalSheet.js +0 -39
  432. package/lib/module/components/ModalSheet.js.map +0 -1
  433. package/lib/module/components/OnairosSignInButton.js +0 -120
  434. package/lib/module/components/OnairosSignInButton.js.map +0 -1
  435. package/lib/module/components/PersonaImage.js +0 -53
  436. package/lib/module/components/PersonaImage.js.map +0 -1
  437. package/lib/module/components/PersonaLoadingScreen.js +0 -148
  438. package/lib/module/components/PersonaLoadingScreen.js.map +0 -1
  439. package/lib/module/components/PersonalizationConsentScreen.js +0 -309
  440. package/lib/module/components/PersonalizationConsentScreen.js.map +0 -1
  441. package/lib/module/components/PinCreationScreen.js +0 -386
  442. package/lib/module/components/PinCreationScreen.js.map +0 -1
  443. package/lib/module/components/PlatformConnectorsStep.js +0 -820
  444. package/lib/module/components/PlatformConnectorsStep.js.map +0 -1
  445. package/lib/module/components/PlatformToggle.js +0 -173
  446. package/lib/module/components/PlatformToggle.js.map +0 -1
  447. package/lib/module/components/PrimaryButton.js +0 -172
  448. package/lib/module/components/PrimaryButton.js.map +0 -1
  449. package/lib/module/components/SignInMatchAnimation.js +0 -189
  450. package/lib/module/components/SignInMatchAnimation.js.map +0 -1
  451. package/lib/module/components/SignInStep.js +0 -171
  452. package/lib/module/components/SignInStep.js.map +0 -1
  453. package/lib/module/components/VerificationStep.js +0 -146
  454. package/lib/module/components/VerificationStep.js.map +0 -1
  455. package/lib/module/components/WelcomeScreen.js +0 -393
  456. package/lib/module/components/WelcomeScreen.js.map +0 -1
  457. package/lib/module/components/icons/Basicproficon.js +0 -30
  458. package/lib/module/components/icons/Basicproficon.js.map +0 -1
  459. package/lib/module/components/icons/Basicprofile.js +0 -14
  460. package/lib/module/components/icons/Basicprofile.js.map +0 -1
  461. package/lib/module/components/icons/Checkbox.js +0 -14
  462. package/lib/module/components/icons/Checkbox.js.map +0 -1
  463. package/lib/module/components/icons/Checkmark.js +0 -20
  464. package/lib/module/components/icons/Checkmark.js.map +0 -1
  465. package/lib/module/components/icons/Contentanalysis.js +0 -14
  466. package/lib/module/components/icons/Contentanalysis.js.map +0 -1
  467. package/lib/module/components/icons/Contenticon.js +0 -32
  468. package/lib/module/components/icons/Contenticon.js.map +0 -1
  469. package/lib/module/components/icons/EnochE.js +0 -34
  470. package/lib/module/components/icons/EnochE.js.map +0 -1
  471. package/lib/module/components/icons/Personalityicon.js +0 -23
  472. package/lib/module/components/icons/Personalityicon.js.map +0 -1
  473. package/lib/module/components/icons/Personalityprofile.js +0 -14
  474. package/lib/module/components/icons/Personalityprofile.js.map +0 -1
  475. package/lib/module/components/icons/Personalitytraits.js +0 -14
  476. package/lib/module/components/icons/Personalitytraits.js.map +0 -1
  477. package/lib/module/components/icons/Userpreferences.js +0 -14
  478. package/lib/module/components/icons/Userpreferences.js.map +0 -1
  479. package/lib/module/components/icons/index.js +0 -13
  480. package/lib/module/components/icons/index.js.map +0 -1
  481. package/lib/module/config/api.js +0 -26
  482. package/lib/module/config/api.js.map +0 -1
  483. package/lib/module/context/AuthContext.js +0 -335
  484. package/lib/module/context/AuthContext.js.map +0 -1
  485. package/lib/module/hooks/useConnectedAccounts.js +0 -106
  486. package/lib/module/hooks/useConnectedAccounts.js.map +0 -1
  487. package/lib/module/hooks/useUserConnections.js +0 -140
  488. package/lib/module/hooks/useUserConnections.js.map +0 -1
  489. package/lib/module/services/apiClient.js +0 -298
  490. package/lib/module/services/apiClient.js.map +0 -1
  491. package/lib/module/services/authService.js +0 -905
  492. package/lib/module/services/authService.js.map +0 -1
  493. package/lib/module/services/biometricPinService.js +0 -173
  494. package/lib/module/services/biometricPinService.js.map +0 -1
  495. package/lib/module/services/connectedAccountsService.js +0 -255
  496. package/lib/module/services/connectedAccountsService.js.map +0 -1
  497. package/lib/module/services/googleAuthService.js +0 -258
  498. package/lib/module/services/googleAuthService.js.map +0 -1
  499. package/lib/module/services/imageCompressionService.js +0 -250
  500. package/lib/module/services/imageCompressionService.js.map +0 -1
  501. package/lib/module/services/jwtStorageService.js +0 -239
  502. package/lib/module/services/jwtStorageService.js.map +0 -1
  503. package/lib/module/services/mobileTrainingService.js +0 -172
  504. package/lib/module/services/mobileTrainingService.js.map +0 -1
  505. package/lib/module/services/pinEncryptionService.js +0 -75
  506. package/lib/module/services/pinEncryptionService.js.map +0 -1
  507. package/lib/module/services/pinStorageUtils.js +0 -93
  508. package/lib/module/services/pinStorageUtils.js.map +0 -1
  509. package/lib/module/services/storageService.js +0 -383
  510. package/lib/module/services/storageService.js.map +0 -1
  511. package/lib/module/services/trainingApiHelpers.js +0 -67
  512. package/lib/module/services/trainingApiHelpers.js.map +0 -1
  513. package/lib/module/services/userConnectionsService.js +0 -476
  514. package/lib/module/services/userConnectionsService.js.map +0 -1
  515. package/lib/module/services/youtubeMigrationService.js +0 -404
  516. package/lib/module/services/youtubeMigrationService.js.map +0 -1
  517. package/lib/module/theme/index.js +0 -244
  518. package/lib/module/theme/index.js.map +0 -1
  519. package/lib/module/utils/eventUtils.js +0 -270
  520. package/lib/module/utils/eventUtils.js.map +0 -1
  521. package/lib/module/utils/haptics.js +0 -59
  522. package/lib/module/utils/haptics.js.map +0 -1
  523. package/lib/module/utils/imagePreloader.js +0 -3
  524. package/lib/module/utils/imagePreloader.js.map +0 -1
  525. package/lib/typescript/components/BodyText.d.ts +0 -10
  526. package/lib/typescript/components/BodyText.d.ts.map +0 -1
  527. package/lib/typescript/components/BrandMark.d.ts +0 -11
  528. package/lib/typescript/components/BrandMark.d.ts.map +0 -1
  529. package/lib/typescript/components/CodeInput.d.ts +0 -10
  530. package/lib/typescript/components/CodeInput.d.ts.map +0 -1
  531. package/lib/typescript/components/EmailInput.d.ts +0 -8
  532. package/lib/typescript/components/EmailInput.d.ts.map +0 -1
  533. package/lib/typescript/components/ExistingUserDataConfirmation.d.ts +0 -12
  534. package/lib/typescript/components/ExistingUserDataConfirmation.d.ts.map +0 -1
  535. package/lib/typescript/components/GoogleButton.d.ts +0 -11
  536. package/lib/typescript/components/GoogleButton.d.ts.map +0 -1
  537. package/lib/typescript/components/HeadingGroup.d.ts +0 -11
  538. package/lib/typescript/components/HeadingGroup.d.ts.map +0 -1
  539. package/lib/typescript/components/ModalHeader.d.ts +0 -11
  540. package/lib/typescript/components/ModalHeader.d.ts.map +0 -1
  541. package/lib/typescript/components/ModalSheet.d.ts +0 -13
  542. package/lib/typescript/components/ModalSheet.d.ts.map +0 -1
  543. package/lib/typescript/components/OnairosSignInButton.d.ts +0 -13
  544. package/lib/typescript/components/OnairosSignInButton.d.ts.map +0 -1
  545. package/lib/typescript/components/PersonaImage.d.ts +0 -8
  546. package/lib/typescript/components/PersonaImage.d.ts.map +0 -1
  547. package/lib/typescript/components/PersonaLoadingScreen.d.ts +0 -10
  548. package/lib/typescript/components/PersonaLoadingScreen.d.ts.map +0 -1
  549. package/lib/typescript/components/PersonalizationConsentScreen.d.ts +0 -10
  550. package/lib/typescript/components/PersonalizationConsentScreen.d.ts.map +0 -1
  551. package/lib/typescript/components/PinCreationScreen.d.ts +0 -10
  552. package/lib/typescript/components/PinCreationScreen.d.ts.map +0 -1
  553. package/lib/typescript/components/PlatformConnectorsStep.d.ts +0 -11
  554. package/lib/typescript/components/PlatformConnectorsStep.d.ts.map +0 -1
  555. package/lib/typescript/components/PlatformToggle.d.ts +0 -20
  556. package/lib/typescript/components/PlatformToggle.d.ts.map +0 -1
  557. package/lib/typescript/components/PrimaryButton.d.ts +0 -22
  558. package/lib/typescript/components/PrimaryButton.d.ts.map +0 -1
  559. package/lib/typescript/components/SignInMatchAnimation.d.ts +0 -9
  560. package/lib/typescript/components/SignInMatchAnimation.d.ts.map +0 -1
  561. package/lib/typescript/components/SignInStep.d.ts +0 -12
  562. package/lib/typescript/components/SignInStep.d.ts.map +0 -1
  563. package/lib/typescript/components/VerificationStep.d.ts +0 -13
  564. package/lib/typescript/components/VerificationStep.d.ts.map +0 -1
  565. package/lib/typescript/components/WelcomeScreen.d.ts +0 -9
  566. package/lib/typescript/components/WelcomeScreen.d.ts.map +0 -1
  567. package/lib/typescript/components/icons/Basicproficon.d.ts +0 -5
  568. package/lib/typescript/components/icons/Basicproficon.d.ts.map +0 -1
  569. package/lib/typescript/components/icons/Basicprofile.d.ts +0 -5
  570. package/lib/typescript/components/icons/Basicprofile.d.ts.map +0 -1
  571. package/lib/typescript/components/icons/Checkbox.d.ts +0 -5
  572. package/lib/typescript/components/icons/Checkbox.d.ts.map +0 -1
  573. package/lib/typescript/components/icons/Checkmark.d.ts +0 -5
  574. package/lib/typescript/components/icons/Checkmark.d.ts.map +0 -1
  575. package/lib/typescript/components/icons/Contentanalysis.d.ts +0 -5
  576. package/lib/typescript/components/icons/Contentanalysis.d.ts.map +0 -1
  577. package/lib/typescript/components/icons/Contenticon.d.ts +0 -5
  578. package/lib/typescript/components/icons/Contenticon.d.ts.map +0 -1
  579. package/lib/typescript/components/icons/EnochE.d.ts +0 -5
  580. package/lib/typescript/components/icons/EnochE.d.ts.map +0 -1
  581. package/lib/typescript/components/icons/Personalityicon.d.ts +0 -5
  582. package/lib/typescript/components/icons/Personalityicon.d.ts.map +0 -1
  583. package/lib/typescript/components/icons/Personalityprofile.d.ts +0 -5
  584. package/lib/typescript/components/icons/Personalityprofile.d.ts.map +0 -1
  585. package/lib/typescript/components/icons/Personalitytraits.d.ts +0 -5
  586. package/lib/typescript/components/icons/Personalitytraits.d.ts.map +0 -1
  587. package/lib/typescript/components/icons/Userpreferences.d.ts +0 -5
  588. package/lib/typescript/components/icons/Userpreferences.d.ts.map +0 -1
  589. package/lib/typescript/components/icons/index.d.ts +0 -12
  590. package/lib/typescript/components/icons/index.d.ts.map +0 -1
  591. package/lib/typescript/config/api.d.ts +0 -24
  592. package/lib/typescript/config/api.d.ts.map +0 -1
  593. package/lib/typescript/context/AuthContext.d.ts +0 -34
  594. package/lib/typescript/context/AuthContext.d.ts.map +0 -1
  595. package/lib/typescript/hooks/useConnectedAccounts.d.ts +0 -11
  596. package/lib/typescript/hooks/useConnectedAccounts.d.ts.map +0 -1
  597. package/lib/typescript/hooks/useUserConnections.d.ts +0 -12
  598. package/lib/typescript/hooks/useUserConnections.d.ts.map +0 -1
  599. package/lib/typescript/services/apiClient.d.ts +0 -91
  600. package/lib/typescript/services/apiClient.d.ts.map +0 -1
  601. package/lib/typescript/services/authService.d.ts +0 -216
  602. package/lib/typescript/services/authService.d.ts.map +0 -1
  603. package/lib/typescript/services/biometricPinService.d.ts +0 -29
  604. package/lib/typescript/services/biometricPinService.d.ts.map +0 -1
  605. package/lib/typescript/services/connectedAccountsService.d.ts +0 -56
  606. package/lib/typescript/services/connectedAccountsService.d.ts.map +0 -1
  607. package/lib/typescript/services/googleAuthService.d.ts +0 -63
  608. package/lib/typescript/services/googleAuthService.d.ts.map +0 -1
  609. package/lib/typescript/services/imageCompressionService.d.ts +0 -37
  610. package/lib/typescript/services/imageCompressionService.d.ts.map +0 -1
  611. package/lib/typescript/services/jwtStorageService.d.ts +0 -86
  612. package/lib/typescript/services/jwtStorageService.d.ts.map +0 -1
  613. package/lib/typescript/services/mobileTrainingService.d.ts +0 -45
  614. package/lib/typescript/services/mobileTrainingService.d.ts.map +0 -1
  615. package/lib/typescript/services/pinEncryptionService.d.ts +0 -17
  616. package/lib/typescript/services/pinEncryptionService.d.ts.map +0 -1
  617. package/lib/typescript/services/pinStorageUtils.d.ts +0 -25
  618. package/lib/typescript/services/pinStorageUtils.d.ts.map +0 -1
  619. package/lib/typescript/services/storageService.d.ts +0 -128
  620. package/lib/typescript/services/storageService.d.ts.map +0 -1
  621. package/lib/typescript/services/trainingApiHelpers.d.ts +0 -38
  622. package/lib/typescript/services/trainingApiHelpers.d.ts.map +0 -1
  623. package/lib/typescript/services/userConnectionsService.d.ts +0 -90
  624. package/lib/typescript/services/userConnectionsService.d.ts.map +0 -1
  625. package/lib/typescript/services/youtubeMigrationService.d.ts +0 -12
  626. package/lib/typescript/services/youtubeMigrationService.d.ts.map +0 -1
  627. package/lib/typescript/theme/index.d.ts +0 -416
  628. package/lib/typescript/theme/index.d.ts.map +0 -1
  629. package/lib/typescript/utils/eventUtils.d.ts +0 -108
  630. package/lib/typescript/utils/eventUtils.d.ts.map +0 -1
  631. package/lib/typescript/utils/haptics.d.ts +0 -11
  632. package/lib/typescript/utils/haptics.d.ts.map +0 -1
  633. package/lib/typescript/utils/imagePreloader.d.ts +0 -2
  634. package/lib/typescript/utils/imagePreloader.d.ts.map +0 -1
  635. package/src/assets/fonts/EBGaramond-VariableFont_wght.ttf +0 -0
  636. package/src/assets/fonts/IBMPlexSans-VariableFont_wdth,wght.ttf +0 -0
  637. package/src/assets/icons/Facebookicon.png +0 -0
  638. package/src/assets/icons/Gmail.png +0 -0
  639. package/src/assets/icons/Linkedinicon.png +0 -0
  640. package/src/assets/icons/Redditicon.png +0 -0
  641. package/src/assets/icons/YouTubeicon2.png +0 -0
  642. package/src/assets/icons/YouTubeicon3.png +0 -0
  643. package/src/assets/icons/farcaster.png +0 -0
  644. package/src/assets/icons/instagram.png +0 -0
  645. package/src/assets/icons/pinterest.png +0 -0
  646. package/src/assets/icons/swerv_logo.png +0 -0
  647. package/src/assets/icons/twitter.jpg +0 -0
  648. package/src/assets/images/Checkbox.svg +0 -3
  649. package/src/assets/images/EnochE.svg +0 -19
  650. package/src/assets/images/Enochicon1.png +0 -0
  651. package/src/assets/images/Face_ID_logo.png +0 -0
  652. package/src/assets/images/Facebookicon.png +0 -0
  653. package/src/assets/images/Gmail.png +0 -0
  654. package/src/assets/images/Googlelogo.png +0 -0
  655. package/src/assets/images/Linkedinicon.png +0 -0
  656. package/src/assets/images/Onairoslogo.png +0 -0
  657. package/src/assets/images/Personalityprofile.svg +0 -3
  658. package/src/assets/images/Personalitytraits.svg +0 -3
  659. package/src/assets/images/Redditicon.png +0 -0
  660. package/src/assets/images/Userpreferences.svg +0 -3
  661. package/src/assets/images/YouTubeicon3.png +0 -0
  662. package/src/assets/images/arrow.svg +0 -20
  663. package/src/assets/images/basicproficon.svg +0 -43
  664. package/src/assets/images/basicprofile.svg +0 -3
  665. package/src/assets/images/checkmark.svg +0 -4
  666. package/src/assets/images/contentanalysis.svg +0 -3
  667. package/src/assets/images/contenticon.svg +0 -23
  668. package/src/assets/images/persona1.png +0 -0
  669. package/src/assets/images/persona2.png +0 -0
  670. package/src/assets/images/persona3.png +0 -0
  671. package/src/assets/images/persona4.png +0 -0
  672. package/src/assets/images/persona5.png +0 -0
  673. package/src/assets/images/personalityicon.svg +0 -18
  674. package/src/assets/images/x-close.svg +0 -3
  675. package/src/components/BodyText.tsx +0 -33
  676. package/src/components/BrandMark.tsx +0 -62
  677. package/src/components/CodeInput.tsx +0 -32
  678. package/src/components/EmailInput.tsx +0 -31
  679. package/src/components/ExistingUserDataConfirmation.tsx +0 -507
  680. package/src/components/GoogleButton.tsx +0 -55
  681. package/src/components/HeadingGroup.tsx +0 -49
  682. package/src/components/ModalHeader.tsx +0 -125
  683. package/src/components/ModalSheet.tsx +0 -59
  684. package/src/components/OnairosSignInButton.tsx +0 -132
  685. package/src/components/PersonaImage.tsx +0 -79
  686. package/src/components/PersonaLoadingScreen.tsx +0 -201
  687. package/src/components/PersonalizationConsentScreen.tsx +0 -410
  688. package/src/components/PinCreationScreen.tsx +0 -492
  689. package/src/components/PlatformConnectorsStep.tsx +0 -892
  690. package/src/components/PlatformToggle.tsx +0 -226
  691. package/src/components/PrimaryButton.tsx +0 -214
  692. package/src/components/SignInMatchAnimation.tsx +0 -225
  693. package/src/components/SignInStep.tsx +0 -217
  694. package/src/components/VerificationStep.tsx +0 -198
  695. package/src/components/WelcomeScreen.tsx +0 -490
  696. package/src/components/icons/Basicproficon.tsx +0 -30
  697. package/src/components/icons/Basicprofile.tsx +0 -17
  698. package/src/components/icons/Checkbox.tsx +0 -17
  699. package/src/components/icons/Checkmark.tsx +0 -24
  700. package/src/components/icons/Contentanalysis.tsx +0 -17
  701. package/src/components/icons/Contenticon.tsx +0 -30
  702. package/src/components/icons/EnochE.tsx +0 -39
  703. package/src/components/icons/Personalityicon.tsx +0 -22
  704. package/src/components/icons/Personalityprofile.tsx +0 -17
  705. package/src/components/icons/Personalitytraits.tsx +0 -17
  706. package/src/components/icons/Userpreferences.tsx +0 -17
  707. package/src/components/icons/index.ts +0 -12
  708. package/src/config/api.ts +0 -25
  709. package/src/context/AuthContext.tsx +0 -393
  710. package/src/hooks/useConnectedAccounts.ts +0 -139
  711. package/src/hooks/useUserConnections.ts +0 -166
  712. package/src/services/apiClient.ts +0 -337
  713. package/src/services/authService.ts +0 -1008
  714. package/src/services/biometricPinService.ts +0 -193
  715. package/src/services/connectedAccountsService.ts +0 -290
  716. package/src/services/googleAuthService.ts +0 -279
  717. package/src/services/imageCompressionService.ts +0 -303
  718. package/src/services/jwtStorageService.ts +0 -257
  719. package/src/services/mobileTrainingService.ts +0 -204
  720. package/src/services/pinEncryptionService.ts +0 -76
  721. package/src/services/pinStorageUtils.ts +0 -97
  722. package/src/services/storageService.ts +0 -452
  723. package/src/services/trainingApiHelpers.ts +0 -67
  724. package/src/services/userConnectionsService.ts +0 -557
  725. package/src/services/youtubeMigrationService.ts +0 -454
  726. package/src/theme/index.ts +0 -239
  727. package/src/utils/eventUtils.ts +0 -303
  728. package/src/utils/haptics.ts +0 -59
  729. package/src/utils/imagePreloader.ts +0 -2
@@ -1,892 +0,0 @@
1
- import React, { useState, useEffect, useRef, useCallback } from 'react';
2
- import {
3
- View,
4
- Text,
5
- StyleSheet,
6
- ScrollView,
7
- KeyboardAvoidingView,
8
- Platform,
9
- Vibration,
10
- TouchableOpacity,
11
- } from 'react-native';
12
- import { COLORS, SPACING } from '../theme';
13
- import { triggerHaptic, HapticType } from '../utils/haptics';
14
- import PlatformToggle from './PlatformToggle';
15
- import PersonaImage from './PersonaImage';
16
- import PrimaryButton from './PrimaryButton';
17
- import PersonalizationConsentScreen from './PersonalizationConsentScreen';
18
- import PinCreationScreen from './PinCreationScreen';
19
- import PersonaLoadingScreen from './PersonaLoadingScreen';
20
- import { useConnections } from '../hooks/useConnections';
21
- import { getPlatformIcon } from '../services/connectedAccountsService';
22
- import { initiateOAuth, initiateNativeAuth, hasNativeSDK } from '../services/platformAuthService';
23
- import { OAuthWebView } from './onboarding/OAuthWebView';
24
- import { useAuth } from '../context/AuthContext';
25
- import { startEnochTrainingWithYouTubeCheck } from '../services/mobileTrainingService';
26
- import { getOnairosUsername } from '../services/authService';
27
- import { getEncryptedPinForAPI } from '../services/pinEncryptionService';
28
- import { setTemporaryPin } from '../services/pinStorageUtils';
29
- import AsyncStorage from '@react-native-async-storage/async-storage';
30
- import { io, Socket } from 'socket.io-client';
31
-
32
- interface PlatformConnectorsStepProps {
33
- onUpdate: (connectedPlatforms: string[]) => void;
34
- onSkip: () => void;
35
- loading?: boolean;
36
- onPinComplete?: (pin: string) => void;
37
- onReviewerBypass?: () => void;
38
- }
39
-
40
- const PlatformConnectorsStep: React.FC<PlatformConnectorsStepProps> = ({
41
- onUpdate,
42
- onSkip,
43
- loading = false,
44
- onPinComplete,
45
- onReviewerBypass,
46
- }) => {
47
- const [connectedPlatforms, setConnectedPlatforms] = useState<Set<string>>(new Set());
48
- const [showConsentScreen, setShowConsentScreen] = useState(false);
49
- const [showPinScreen, setShowPinScreen] = useState(false);
50
- const [showLoadingScreen, setShowLoadingScreen] = useState(false);
51
- const [createdPin, setCreatedPin] = useState<string>('');
52
- const [connectionStatuses, setConnectionStatuses] = useState<Record<string, string>>({});
53
- const [showOAuthWebView, setShowOAuthWebView] = useState(false);
54
- const [oauthUrl, setOauthUrl] = useState<string>('');
55
- const [currentPlatform, setCurrentPlatform] = useState<string>('');
56
- const [longPressTimer, setLongPressTimer] = useState<ReturnType<typeof setTimeout> | null>(null);
57
-
58
- // EXACT same training state variables as UniversalOnboarding
59
- const [username, setUsername] = useState<string>('');
60
- const [personaProgress, setPersonaProgress] = useState(0);
61
- const [personaStatus, setPersonaStatus] = useState('Initializing...');
62
- const [isPersonaComplete, setIsPersonaComplete] = useState(false);
63
- const [socketConnected, setSocketConnected] = useState(false);
64
- const [hasError, setHasError] = useState(false);
65
- const [userTraits, setUserTraits] = useState<any>(null);
66
- const [inferenceResults, setInferenceResults] = useState<any>(null);
67
- const [userToken, setUserToken] = useState<string | null>(null);
68
- const [userInfo, setUserInfo] = useState<any>(null);
69
- const socketRef = useRef<Socket | null>(null);
70
-
71
- // EXACT same background training state as UniversalOnboarding
72
- const [isBackgroundTrainingStarted, setIsBackgroundTrainingStarted] = useState(false);
73
- const [backgroundTrainingProgress, setBackgroundTrainingProgress] = useState('');
74
- const [backgroundSocketId, setBackgroundSocketId] = useState<string | null>(null);
75
-
76
- // Use the real platform connection hook
77
- const { connectPlatform, disconnectPlatform, isConnecting } = useConnections();
78
-
79
- // Get the authenticated user from auth context
80
- const { user } = useAuth();
81
-
82
- // Initialize username on mount
83
- useEffect(() => {
84
- const initializeUsername = async () => {
85
- try {
86
- // First try to get stored username
87
- const storedUsername = await AsyncStorage.getItem('onairos_username');
88
- if (storedUsername && !username) {
89
- console.log('📝 [USERNAME] Using stored username:', storedUsername);
90
- setUsername(storedUsername);
91
- return;
92
- }
93
-
94
- // If no stored username, generate from user data
95
- if (user && !username) {
96
- const initialUsername = user?.email?.split('@')[0] || user?.name || `user_${Math.floor(Math.random() * 10000)}`;
97
- console.log('📝 [USERNAME] Generated username from user data:', initialUsername);
98
- setUsername(initialUsername);
99
- // Store it for future use
100
- await AsyncStorage.setItem('onairos_username', initialUsername);
101
- return;
102
- }
103
-
104
- // If no user data and no stored username, create a fallback
105
- if (!username) {
106
- const fallbackUsername = `mobile_user_${Math.floor(Math.random() * 10000)}`;
107
- console.log('📝 [USERNAME] Using fallback username:', fallbackUsername);
108
- setUsername(fallbackUsername);
109
- await AsyncStorage.setItem('onairos_username', fallbackUsername);
110
- }
111
- } catch (error) {
112
- console.error('❌ [USERNAME] Error initializing username:', error);
113
- // Fallback to simple username
114
- const fallbackUsername = `user_${Math.floor(Math.random() * 10000)}`;
115
- setUsername(fallbackUsername);
116
- }
117
- };
118
-
119
- initializeUsername();
120
- }, [user, username]);
121
-
122
- // EXACT same ensureAuthToken function from UniversalOnboarding
123
- const ensureAuthToken = async () => {
124
- try {
125
- let existingToken = await AsyncStorage.getItem('onairos_jwt_token') ||
126
- await AsyncStorage.getItem('enoch_token') ||
127
- await AsyncStorage.getItem('auth_token');
128
-
129
- if (existingToken && existingToken.trim().length > 20) {
130
- console.log('✅ Authentication token already exists:', `${existingToken.substring(0, 20)}...`);
131
- return existingToken;
132
- }
133
-
134
- console.log('🔐 Creating Enoch authentication token...');
135
- console.log('🔍 [ENSURE AUTH] Current username state:', username);
136
- console.log('🔍 [ENSURE AUTH] Current user state:', user);
137
-
138
- const fallbackEmail = user?.email || `${username || 'user'}@onairos.temp`;
139
- const fallbackUsername = username || user?.name?.split('@')[0] || 'mobile_user';
140
-
141
- console.log('🔍 [ENSURE AUTH] Using fallback email:', fallbackEmail);
142
- console.log('🔍 [ENSURE AUTH] Using fallback username:', fallbackUsername);
143
-
144
- // Create Enoch user
145
- try {
146
- await fetch('https://api2.onairos.uk/enoch/users/register', {
147
- method: 'POST',
148
- headers: { 'Content-Type': 'application/json' },
149
- body: JSON.stringify({
150
- email: fallbackEmail,
151
- name: fallbackUsername,
152
- photoUrl: ''
153
- })
154
- });
155
- } catch (enochError) {
156
- console.warn('⚠️ Enoch user creation failed (continuing):', enochError);
157
- }
158
-
159
- // Create Onairos account to get JWT token
160
- const onairosSignupResponse = await fetch('https://api2.onairos.uk/register/enoch', {
161
- method: 'POST',
162
- headers: { 'Content-Type': 'application/json' },
163
- body: JSON.stringify({
164
- email: fallbackEmail,
165
- username: fallbackUsername,
166
- name: fallbackUsername
167
- })
168
- });
169
-
170
- if (!onairosSignupResponse.ok) {
171
- const errorText = await onairosSignupResponse.text();
172
- throw new Error(`Onairos signup failed: ${onairosSignupResponse.status} ${errorText}`);
173
- }
174
-
175
- const onairosResponseData = await onairosSignupResponse.json();
176
- let authToken = onairosResponseData.token || onairosResponseData.data?.token || onairosResponseData.jwt;
177
-
178
- if (!authToken) {
179
- throw new Error('No authentication token returned from server');
180
- }
181
-
182
- // Store the token
183
- await AsyncStorage.setItem('onairos_jwt_token', authToken);
184
- await AsyncStorage.setItem('auth_token', authToken);
185
- await AsyncStorage.setItem('enoch_token', authToken);
186
- await AsyncStorage.setItem('onairos_username', onairosResponseData.username || fallbackUsername);
187
-
188
- console.log('✅ Successfully stored authentication tokens');
189
- return authToken;
190
-
191
- } catch (error) {
192
- console.error('❌ Error ensuring authentication token:', error);
193
- throw error;
194
- }
195
- };
196
-
197
- // EXACT same background training function from UniversalOnboarding
198
- const startBackgroundTraining = useCallback(async (): Promise<void> => {
199
- try {
200
- console.log('🚀 [BACKGROUND] Starting background training optimization...');
201
- setBackgroundTrainingProgress('Connecting...');
202
-
203
- const authToken = await ensureAuthToken();
204
- if (!authToken) {
205
- throw new Error('Failed to create authentication token for background training');
206
- }
207
-
208
- console.log('✅ [BACKGROUND] Auth token ready:', `${authToken.substring(0, 20)}...`);
209
- setUserToken(authToken);
210
-
211
- // Set up user info if not available
212
- if (!userInfo) {
213
- const storedUsername = await getOnairosUsername();
214
- const fallbackUsername = storedUsername || user?.email?.split('@')[0] || user?.name || 'mobile_user';
215
-
216
- const newUserInfo = {
217
- username: fallbackUsername,
218
- email: user?.email || null,
219
- id: null
220
- };
221
-
222
- setUserInfo(newUserInfo);
223
- setUsername(fallbackUsername);
224
- console.log('🧑‍💻 [BACKGROUND] User info set:', newUserInfo);
225
- }
226
-
227
- console.log('🔌 [BACKGROUND] Setting up socket for background training...');
228
- setBackgroundTrainingProgress('Initializing data collection...');
229
-
230
- const backgroundSocket = io('https://api2.onairos.uk', {
231
- transports: ['websocket', 'polling'],
232
- autoConnect: false,
233
- timeout: 15000,
234
- reconnection: true,
235
- reconnectionAttempts: 3,
236
- reconnectionDelay: 1000,
237
- forceNew: true
238
- });
239
-
240
- backgroundSocket.on('connect', async () => {
241
- console.log('✅ [BACKGROUND] Socket connected, starting background data collection...');
242
- const socketId = backgroundSocket.id;
243
- setBackgroundSocketId(socketId || null);
244
- setBackgroundTrainingProgress('Collecting your data...');
245
-
246
- if (socketId) {
247
- // Step 4: Start background training WITHOUT PIN (per backend instructions)
248
- await startBackgroundEnochTraining(socketId, authToken);
249
- }
250
- });
251
-
252
- backgroundSocket.on('trainingUpdate', (data: any) => {
253
- console.log('🔥 [SOCKET] Received trainingUpdate event:', data);
254
- if (data.progress) {
255
- setBackgroundTrainingProgress(data.status || 'Processing...');
256
- setPersonaProgress(data.progress);
257
- setPersonaStatus(data.status || 'Training in progress');
258
- console.log('📊 [BACKGROUND] Training progress:', data.progress, '%');
259
- } else {
260
- console.log('⚠️ [SOCKET] trainingUpdate event has no progress data:', data);
261
- }
262
- });
263
-
264
- backgroundSocket.on('disconnect', () => {
265
- console.log('❌ [BACKGROUND] Socket disconnected');
266
- });
267
-
268
- backgroundSocket.on('trainingCompleted', (data: any) => {
269
- console.log('🔥 [SOCKET] Received trainingCompleted event:', data);
270
- console.log('✅ [BACKGROUND] Training Complete:', data);
271
- setPersonaStatus('Running test inference');
272
- setPersonaProgress(60);
273
- });
274
-
275
- backgroundSocket.on('inferenceCompleted', (data: any) => {
276
- console.log('🔥 [SOCKET] Received inferenceCompleted event:', data);
277
- console.log('🧠 [BACKGROUND] Inference Complete:', data);
278
- setPersonaStatus('Uploading to S3');
279
- setPersonaProgress(80);
280
- });
281
-
282
- backgroundSocket.on('modelStandby', (data: any) => {
283
- console.log('🔥 [SOCKET] Received modelStandby event:', data);
284
- console.log('🎉 [BACKGROUND] All Complete:', data);
285
- setIsPersonaComplete(true);
286
- setPersonaStatus('Complete!');
287
- setPersonaProgress(100);
288
- });
289
-
290
- backgroundSocket.on('connect_error', (error: any) => {
291
- console.error('❌ [BACKGROUND] Socket connection error:', error);
292
- setBackgroundTrainingProgress('Connection failed');
293
- setPersonaStatus('Connection error');
294
- setPersonaProgress(0);
295
- });
296
-
297
- // Store socket reference for later use
298
- socketRef.current = backgroundSocket;
299
-
300
- // Connect the socket to start background training
301
- backgroundSocket.connect();
302
-
303
- console.log('✅ [BACKGROUND] Background training initiated successfully');
304
-
305
- } catch (error) {
306
- console.error('❌ [BACKGROUND] Error starting background training:', error);
307
- setBackgroundTrainingProgress('Failed to start training');
308
- setPersonaStatus('Training failed');
309
- setPersonaProgress(0);
310
- }
311
- }, [userInfo, username, user, connectedPlatforms]);
312
-
313
- // EXACT same background training API call from UniversalOnboarding
314
- const startBackgroundEnochTraining = async (socketId: string, authToken: string) => {
315
- try {
316
- console.log('🚀 [BACKGROUND] Starting background training with socketId:', socketId);
317
- console.log('🔑 Using auth token:', `${authToken.substring(0, 20)}...`);
318
-
319
- // Prepare background training data - EXACT same as UniversalOnboarding
320
- const backgroundData = {
321
- socketId,
322
- username: userInfo?.username || userInfo?.name || username || 'mobile_user',
323
- email: userInfo?.email || null,
324
- modelKey: null,
325
- connectedPlatforms: [], // No connected platforms for background training
326
- platformConnections: {}, // No platform connections for background training
327
- // No encrypted PIN for background training
328
- };
329
-
330
- console.log('📤 Sending background training data to /mobile-training/enoch:', backgroundData);
331
-
332
- // Use the new training function that includes YouTube migration check
333
- const backgroundResult = await startEnochTrainingWithYouTubeCheck(backgroundData);
334
- console.log('📡 Background training API response:', backgroundResult);
335
-
336
- // Handle CONNECTIONS_REQUIRED scenario (pre-training validation)
337
- if (backgroundResult.requiresConnections || backgroundResult.code === 'CONNECTIONS_REQUIRED') {
338
- console.log('🔗 Connections required detected from background training');
339
- setPersonaStatus('Connections required');
340
- setHasError(true);
341
- setBackgroundTrainingProgress('');
342
- return;
343
- }
344
-
345
- if (backgroundResult.success) {
346
- console.log('✅ [BACKGROUND] Training started successfully');
347
- console.log('🔍 [BACKGROUND] Setting isBackgroundTrainingStarted to true');
348
- setIsBackgroundTrainingStarted(true);
349
- setBackgroundTrainingProgress('Training model...');
350
- setPersonaStatus('Training model...');
351
- setPersonaProgress(25);
352
- console.log('🔍 [BACKGROUND] Background training state updated:', {
353
- isBackgroundTrainingStarted: true,
354
- backgroundSocketId: socketId
355
- });
356
- } else {
357
- console.error('❌ Background training start failed:', backgroundResult.error);
358
- setPersonaStatus(`Error: ${backgroundResult.error || 'Background training failed to start'}`);
359
- setHasError(true);
360
- setBackgroundTrainingProgress('');
361
- throw new Error(backgroundResult.error || 'Background training failed to start');
362
- }
363
- } catch (error) {
364
- console.error('❌ [BACKGROUND] Background training error:', error);
365
- setPersonaStatus('Training failed to start');
366
- setHasError(true);
367
- setBackgroundTrainingProgress('');
368
- throw error;
369
- }
370
- };
371
-
372
- // EXACT same continue training function from UniversalOnboarding
373
- const continueBackgroundTrainingWithPin = async (userPin: string) => {
374
- try {
375
- console.log('🔐 [BACKGROUND] Continuing existing background training with PIN validation');
376
- console.log('🔑 Using auth token:', `${userToken?.substring(0, 20)}...`);
377
-
378
- if (!backgroundSocketId) {
379
- throw new Error('No background training socket available');
380
- }
381
-
382
- const encryptedPin = await getEncryptedPinForAPI().catch(() => null);
383
-
384
- if (!encryptedPin) {
385
- console.warn('⚠️ No encrypted PIN available, continuing without PIN validation');
386
- }
387
-
388
- console.log('📤 [BACKGROUND] Sending PIN validation to continue training...');
389
- setPersonaStatus('Validating PIN and continuing training');
390
- setPersonaProgress(30);
391
-
392
- // Check socket connection status after PIN submission
393
- console.log('🔍 [SOCKET] Socket connection status after PIN:', {
394
- socketId: backgroundSocketId,
395
- isConnected: socketRef.current?.connected,
396
- socketExists: !!socketRef.current,
397
- socketId_current: socketRef.current?.id
398
- });
399
-
400
- } catch (error) {
401
- console.error('❌ [BACKGROUND] Failed to continue training with PIN:', error);
402
- throw error;
403
- }
404
- };
405
-
406
- // Cleanup socket on unmount
407
- useEffect(() => {
408
- return () => {
409
- if (socketRef.current) {
410
- socketRef.current.disconnect();
411
- }
412
- };
413
- }, []);
414
-
415
- // Real platforms that can be connected (from UniversalOnboarding)
416
- const platforms = [
417
- {
418
- id: 'pinterest',
419
- name: 'Pinterest',
420
- icon: getPlatformIcon('pinterest'),
421
- description: 'We analyze your pins, boards, and interests to understand your style and preferences.',
422
- },
423
- {
424
- id: 'youtube',
425
- name: 'YouTube',
426
- icon: getPlatformIcon('youtube'),
427
- description: 'We analyze your watch history, likes, and subscriptions to understand your interests.',
428
- },
429
- {
430
- id: 'linkedin',
431
- name: 'LinkedIn',
432
- icon: getPlatformIcon('linkedin'),
433
- description: 'We analyze your professional network and career interests.',
434
- },
435
- {
436
- id: 'reddit',
437
- name: 'Reddit',
438
- icon: getPlatformIcon('reddit'),
439
- description: 'We analyze your posts and comments to understand your interests.',
440
- },
441
- {
442
- id: 'gmail',
443
- name: 'Gmail',
444
- icon: getPlatformIcon('gmail'),
445
- description: 'We analyze your email patterns to understand your communication style.',
446
- },
447
- ];
448
-
449
- const handlePlatformToggle = async (platformId: string, enabled: boolean) => {
450
- console.log(`🔄 [PLATFORM TOGGLE] ${platformId} - enabled: ${enabled}, username: "${username}", user:`, user);
451
- triggerHaptic(HapticType.BUTTON_PRESS);
452
-
453
- try {
454
- if (enabled) {
455
- // Ensure we have a valid username before proceeding
456
- let validUsername = username;
457
- if (!validUsername || validUsername.trim() === '') {
458
- console.log('⚠️ [PLATFORM TOGGLE] No username available, generating one...');
459
-
460
- // Try to get stored username first
461
- const storedUsername = await AsyncStorage.getItem('onairos_username');
462
- if (storedUsername) {
463
- validUsername = storedUsername;
464
- setUsername(validUsername);
465
- } else {
466
- // Generate username from user data or fallback
467
- validUsername = user?.email?.split('@')[0] || user?.name || `mobile_user_${Math.floor(Math.random() * 10000)}`;
468
- setUsername(validUsername);
469
- await AsyncStorage.setItem('onairos_username', validUsername);
470
- }
471
-
472
- console.log(`📝 [PLATFORM TOGGLE] Using username: "${validUsername}"`);
473
- }
474
-
475
- // Check if the platform has a native SDK
476
- if (hasNativeSDK(platformId)) {
477
- console.log(`🔧 [PLATFORM TOGGLE] ${platformId} has native SDK`);
478
- // Use native SDK authentication (YouTube)
479
- setCurrentPlatform(platformId);
480
- setConnectionStatuses(prev => ({ ...prev, [platformId]: 'connecting' }));
481
- const success = await initiateNativeAuth(platformId, validUsername);
482
-
483
- if (success) {
484
- const newConnected = new Set(connectedPlatforms);
485
- newConnected.add(platformId);
486
- setConnectedPlatforms(newConnected);
487
- setConnectionStatuses(prev => ({ ...prev, [platformId]: 'connected' }));
488
- triggerHaptic(HapticType.SUCCESS);
489
- } else {
490
- setConnectionStatuses(prev => ({ ...prev, [platformId]: 'error' }));
491
- triggerHaptic(HapticType.ERROR);
492
- }
493
- } else {
494
- console.log(`🌐 [PLATFORM TOGGLE] ${platformId} using OAuth WebView with username: "${validUsername}"`);
495
- // For platforms like Pinterest, use OAuth WebView
496
- setCurrentPlatform(platformId);
497
- setConnectionStatuses(prev => ({ ...prev, [platformId]: 'connecting' }));
498
-
499
- console.log(`🚀 [PLATFORM TOGGLE] Calling initiateOAuth for ${platformId}...`);
500
- const oauthUrl = await initiateOAuth(platformId, validUsername);
501
- console.log(`📡 [PLATFORM TOGGLE] OAuth URL received for ${platformId}:`, oauthUrl);
502
-
503
- if (oauthUrl) {
504
- console.log(`✅ [PLATFORM TOGGLE] Setting OAuth URL and showing WebView for ${platformId}`);
505
- setOauthUrl(oauthUrl);
506
- setShowOAuthWebView(true);
507
- } else {
508
- console.log(`❌ [PLATFORM TOGGLE] No OAuth URL received for ${platformId}`);
509
- setConnectionStatuses(prev => ({ ...prev, [platformId]: 'error' }));
510
- triggerHaptic(HapticType.ERROR);
511
- }
512
- }
513
- } else {
514
- // Disconnect the platform
515
- await disconnectPlatform(platformId);
516
- const newConnected = new Set(connectedPlatforms);
517
- newConnected.delete(platformId);
518
- setConnectedPlatforms(newConnected);
519
- setConnectionStatuses(prev => ({ ...prev, [platformId]: 'disconnected' }));
520
- triggerHaptic(HapticType.BUTTON_PRESS);
521
- }
522
- } catch (error) {
523
- console.error(`Error toggling platform ${platformId}:`, error);
524
- setConnectionStatuses(prev => ({ ...prev, [platformId]: 'error' }));
525
- triggerHaptic(HapticType.ERROR);
526
- }
527
- };
528
-
529
- const handleUpdate = () => {
530
- triggerHaptic(HapticType.BUTTON_PRESS);
531
-
532
- // EXACT same logic as UniversalOnboarding handleProceed
533
- console.log('🚀 [TRANSITION] Starting background training during connect → pin transition');
534
- startBackgroundTraining().catch(error => {
535
- console.error('❌ [TRANSITION] Background training failed during transition:', error);
536
- // Continue to PIN screen even if training fails
537
- });
538
-
539
- setShowPinScreen(true);
540
- };
541
-
542
- const handleConsentAccept = () => {
543
- triggerHaptic(HapticType.BUTTON_PRESS);
544
- if (onPinComplete) {
545
- onPinComplete(createdPin);
546
- } else {
547
- onUpdate(Array.from(connectedPlatforms));
548
- }
549
- };
550
-
551
- const handleConsentDecline = () => {
552
- triggerHaptic(HapticType.BUTTON_PRESS);
553
- setShowConsentScreen(false);
554
- };
555
-
556
- const handleSkip = () => {
557
- triggerHaptic(HapticType.BUTTON_PRESS);
558
- onSkip();
559
- };
560
-
561
- const handlePinComplete = async (pin: string) => {
562
- setCreatedPin(pin);
563
-
564
- // Store PIN temporarily for training component access (EXACT same as UniversalOnboarding)
565
- setTemporaryPin(pin);
566
-
567
- console.log('🔐 [PIN SUBMIT] PIN submitted, checking for background training...');
568
- console.log('🔍 [PIN SUBMIT] Background training state:', {
569
- isBackgroundTrainingStarted,
570
- backgroundSocketId,
571
- hasBackgroundSocket: !!backgroundSocketId,
572
- userToken: !!userToken,
573
- userInfo: !!userInfo
574
- });
575
-
576
- // EXACT same logic as UniversalOnboarding handlePinSubmit
577
- if (isBackgroundTrainingStarted && backgroundSocketId) {
578
- console.log('✅ [PIN SUBMIT] Background training detected, continuing with PIN validation...');
579
-
580
- // Continue with existing training by sending PIN validation
581
- try {
582
- await continueBackgroundTrainingWithPin(pin);
583
- setShowPinScreen(false);
584
- setShowLoadingScreen(true); // Move to loading screen to show training progress
585
- } catch (error) {
586
- console.error('❌ [PIN SUBMIT] Failed to continue background training:', error);
587
- setPersonaStatus('Error: Failed to continue training');
588
- setHasError(true);
589
- setShowPinScreen(false);
590
- setShowLoadingScreen(true);
591
- }
592
- } else {
593
- console.log('ℹ️ [PIN SUBMIT] No background training detected');
594
- setPersonaStatus('No training in progress. Please restart the flow.');
595
- setHasError(true);
596
- setShowPinScreen(false);
597
- setShowLoadingScreen(true);
598
- }
599
-
600
- console.log('🔐 [PIN SUBMIT] PIN stored securely, moved to loading screen');
601
- };
602
-
603
- const handleLoadingComplete = () => {
604
- setShowLoadingScreen(false);
605
- setShowConsentScreen(true);
606
- };
607
-
608
- const handleOAuthSuccess = (code: string) => {
609
- console.log(`OAuth success for ${currentPlatform} with code:`, code);
610
-
611
- if (currentPlatform) {
612
- // Update connected platforms
613
- const newConnected = new Set(connectedPlatforms);
614
- newConnected.add(currentPlatform);
615
- setConnectedPlatforms(newConnected);
616
- setConnectionStatuses(prev => ({ ...prev, [currentPlatform]: 'connected' }));
617
- triggerHaptic(HapticType.SUCCESS);
618
- }
619
-
620
- // Close the OAuth window
621
- setShowOAuthWebView(false);
622
- setOauthUrl('');
623
- setCurrentPlatform('');
624
- };
625
-
626
- const handleOAuthClose = () => {
627
- setShowOAuthWebView(false);
628
- setOauthUrl('');
629
- if (currentPlatform) {
630
- setConnectionStatuses(prev => ({ ...prev, [currentPlatform]: 'disconnected' }));
631
- }
632
- setCurrentPlatform('');
633
- };
634
-
635
- const handlePinBack = () => {
636
- setShowPinScreen(false);
637
- };
638
-
639
- const handleReviewerBypass = () => {
640
- console.log('🔍 Reviewer bypass activated in new UI');
641
- if (onReviewerBypass) {
642
- onReviewerBypass();
643
- }
644
- };
645
-
646
- const handleSkipLongPress = () => {
647
- console.log('🔍 Skip button long press detected, starting reviewer bypass timer');
648
-
649
- // Start a timer for haptic feedback at 2 seconds
650
- const hapticTimer = setTimeout(() => {
651
- // Provide haptic feedback
652
- Vibration.vibrate(100);
653
- }, 2000);
654
-
655
- // Start a timer for 4 seconds for the bypass
656
- const bypassTimer = setTimeout(() => {
657
- handleReviewerBypass();
658
- }, 4000);
659
-
660
- // Store the timer
661
- setLongPressTimer(bypassTimer);
662
- };
663
-
664
- const handleSkipPressOut = () => {
665
- console.log('🔍 Skip button press released, clearing reviewer bypass timer');
666
-
667
- // Clear the timer if the press is released before 4 seconds
668
- if (longPressTimer) {
669
- clearTimeout(longPressTimer);
670
- setLongPressTimer(null);
671
- }
672
- };
673
-
674
- // Calculate persona level based on connected platforms (1-5)
675
- const personaLevel = Math.min(5, Math.max(1, connectedPlatforms.size + 1));
676
-
677
- // Show PIN screen if triggered
678
- if (showPinScreen) {
679
- return (
680
- <PinCreationScreen
681
- visible={showPinScreen}
682
- onComplete={handlePinComplete}
683
- onBack={handlePinBack}
684
- />
685
- );
686
- }
687
-
688
- // Show loading screen if triggered
689
- if (showLoadingScreen) {
690
- return (
691
- <PersonaLoadingScreen
692
- visible={showLoadingScreen}
693
- onComplete={handleLoadingComplete}
694
- progress={personaProgress}
695
- status={personaStatus}
696
- />
697
- );
698
- }
699
-
700
- // Show OAuth WebView if triggered
701
- if (showOAuthWebView && oauthUrl) {
702
- return (
703
- <OAuthWebView
704
- url={oauthUrl}
705
- platform={currentPlatform}
706
- onClose={handleOAuthClose}
707
- onSuccess={handleOAuthSuccess}
708
- onComplete={handleOAuthClose}
709
- />
710
- );
711
- }
712
-
713
- // Show consent screen if triggered
714
- if (showConsentScreen) {
715
- return (
716
- <PersonalizationConsentScreen
717
- visible={showConsentScreen}
718
- onAccept={handleConsentAccept}
719
- onDecline={handleConsentDecline}
720
- />
721
- );
722
- }
723
-
724
- return (
725
- <View style={styles.container}>
726
- {/* Fixed Header and Persona Section */}
727
- <View style={styles.fixedHeaderSection}>
728
- {/* Heading */}
729
- <View style={styles.headingContainer}>
730
- <Text style={styles.title}>Connect platforms</Text>
731
- <Text style={styles.subtitle}>More connections, smarter personalization.</Text>
732
- </View>
733
-
734
- {/* Persona Image */}
735
- <View style={styles.personaContainer}>
736
- <PersonaImage level={personaLevel} style={styles.largePersona} />
737
- </View>
738
- </View>
739
-
740
- {/* Scrollable Platform Section */}
741
- <KeyboardAvoidingView
742
- behavior={Platform.OS === 'ios' ? 'padding' : 'height'}
743
- style={styles.scrollableSection}
744
- >
745
- <ScrollView
746
- style={styles.scrollView}
747
- showsVerticalScrollIndicator={false}
748
- contentContainerStyle={styles.scrollContent}
749
- >
750
- <View style={styles.platformsContainer}>
751
- {platforms.map((platform, index) => (
752
- <PlatformToggle
753
- key={platform.id}
754
- platform={platform}
755
- isEnabled={connectedPlatforms.has(platform.id)}
756
- onToggle={handlePlatformToggle}
757
- fullWidth={true}
758
- isLast={index === platforms.length - 1}
759
- customIconSize={platform.id === 'youtube' ? 36 : undefined}
760
- />
761
- ))}
762
- </View>
763
- </ScrollView>
764
- </KeyboardAvoidingView>
765
-
766
- {/* Fixed Bottom Buttons */}
767
- <View style={styles.bottomContainer}>
768
- <View style={styles.buttonContainer}>
769
- <PrimaryButton
770
- label="Continue"
771
- onPress={handleUpdate}
772
- disabled={loading || connectedPlatforms.size === 0 || isConnecting}
773
- loading={loading || isConnecting}
774
- />
775
- </View>
776
-
777
- <View style={styles.skipContainer}>
778
- <TouchableOpacity
779
- onPress={handleSkip}
780
- onLongPress={handleSkipLongPress}
781
- onPressOut={handleSkipPressOut}
782
- activeOpacity={0.7}
783
- >
784
- <Text style={styles.skipButton}>
785
- Skip
786
- </Text>
787
- </TouchableOpacity>
788
- </View>
789
- </View>
790
- </View>
791
- );
792
- };
793
-
794
- const styles = StyleSheet.create({
795
- container: {
796
- flex: 1,
797
- backgroundColor: COLORS.surface,
798
- },
799
-
800
- fixedHeaderSection: {
801
- paddingTop: 8,
802
- paddingHorizontal: 0,
803
- backgroundColor: COLORS.surface,
804
- maxHeight: '50%', // Limit fixed section to 50% of screen
805
- overflow: 'hidden', // Hide any overflow
806
- },
807
-
808
- scrollableSection: {
809
- flex: 1,
810
- },
811
-
812
- scrollView: {
813
- flex: 1,
814
- },
815
-
816
- scrollContent: {
817
- paddingTop: 0, // Ensure scroll starts at the top
818
- },
819
-
820
- headingContainer: {
821
- width: '100%',
822
- marginBottom: 0, // Remove margin to make persona very close
823
- paddingHorizontal: 0,
824
- },
825
-
826
- title: {
827
- fontFamily: 'IBM Plex Sans',
828
- fontWeight: '700',
829
- fontSize: 24,
830
- lineHeight: 32,
831
- color: COLORS.grey800,
832
- textAlign: 'left',
833
- marginBottom: 2,
834
- },
835
-
836
- subtitle: {
837
- fontFamily: 'Inter',
838
- fontWeight: '400',
839
- fontSize: 16,
840
- lineHeight: 24,
841
- color: COLORS.grey600,
842
- textAlign: 'left',
843
- marginBottom: 0, // Remove bottom margin to bring persona closer
844
- },
845
-
846
- personaContainer: {
847
- alignItems: 'center',
848
- marginTop: -110, // Negative margin to pull persona up into header space
849
- marginBottom: 0, // Remove bottom margin
850
- },
851
-
852
- largePersona: {
853
- width: 650, // Make it bigger than default 200x200
854
- height: 650,
855
- marginTop: -20, // Additional negative margin to override internal spacing
856
- marginBottom: -20, // Pull content below up as well
857
- },
858
-
859
- platformsContainer: {
860
- paddingHorizontal: 0,
861
- paddingTop: 8, // Reduced from 20 to minimize space at top of scroll area
862
- paddingBottom: 120, // More space to account for fixed buttons at bottom
863
- },
864
-
865
- bottomContainer: {
866
- position: 'absolute',
867
- bottom: -40, // Position 40px from bottom of screen
868
- left: 0,
869
- right: 0,
870
- paddingHorizontal: 0,
871
- paddingBottom: SPACING.xl,
872
- backgroundColor: COLORS.surface,
873
- },
874
-
875
- buttonContainer: {
876
- marginBottom: 16,
877
- },
878
-
879
- skipContainer: {
880
- alignItems: 'center',
881
- },
882
-
883
- skipButton: {
884
- fontSize: 16,
885
- fontFamily: 'Inter',
886
- fontWeight: '500',
887
- color: COLORS.grey600,
888
- textAlign: 'center',
889
- },
890
- });
891
-
892
- export default PlatformConnectorsStep;