@onairos/react-native 3.1.18 → 3.2.1

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 (734) 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 +1296 -2302
  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 +27 -157
  38. package/lib/commonjs/index.js.map +1 -1
  39. package/lib/commonjs/services/SDK_API_KEY_VALIDATION.md +428 -0
  40. package/lib/commonjs/services/apiKeyService.js +106 -105
  41. package/lib/commonjs/services/apiKeyService.js.map +1 -1
  42. package/lib/commonjs/services/oauthService.js.map +1 -1
  43. package/lib/commonjs/services/platformAuthService.js +722 -956
  44. package/lib/commonjs/services/platformAuthService.js.map +1 -1
  45. package/lib/commonjs/types/ambient.d.js.map +1 -1
  46. package/lib/commonjs/types/declarations.d.js.map +1 -1
  47. package/lib/commonjs/types/index.d.js.map +1 -1
  48. package/lib/commonjs/types/index.js.map +1 -1
  49. package/lib/commonjs/types/node-fix.d.js.map +1 -1
  50. package/lib/commonjs/types/node-override.d.js.map +1 -1
  51. package/lib/commonjs/types/opacity.d.js.map +1 -1
  52. package/lib/commonjs/types/types.d.js.map +1 -1
  53. package/lib/commonjs/types.js.map +1 -1
  54. package/lib/commonjs/utils/Portal.js +4 -4
  55. package/lib/commonjs/utils/Portal.js.map +1 -1
  56. package/lib/commonjs/utils/api.js +24 -24
  57. package/lib/commonjs/utils/api.js.map +1 -1
  58. package/lib/commonjs/utils/auth.js +18 -18
  59. package/lib/commonjs/utils/auth.js.map +1 -1
  60. package/lib/commonjs/utils/crypto.js +13 -13
  61. package/lib/commonjs/utils/crypto.js.map +1 -1
  62. package/lib/commonjs/utils/debugHelper.js.map +1 -1
  63. package/lib/commonjs/utils/encryption.js +12 -12
  64. package/lib/commonjs/utils/encryption.js.map +1 -1
  65. package/lib/commonjs/utils/onairosApi.js.map +1 -1
  66. package/lib/commonjs/utils/programmaticFlow.js +16 -16
  67. package/lib/commonjs/utils/programmaticFlow.js.map +1 -1
  68. package/lib/commonjs/utils/retryHelper.js +27 -27
  69. package/lib/commonjs/utils/retryHelper.js.map +1 -1
  70. package/lib/commonjs/utils/secureStorage.js.map +1 -1
  71. package/lib/module/api/index.js +0 -72
  72. package/lib/module/api/index.js.map +1 -1
  73. package/lib/module/assets/images/email.png +0 -0
  74. package/lib/module/assets/images/linkedin.png +0 -0
  75. package/lib/module/assets/images/reddit.png +0 -0
  76. package/lib/module/assets/images/youtube.png +0 -0
  77. package/lib/module/components/DataRequestModal.js.map +1 -1
  78. package/lib/module/components/DataRequestScreen.js.map +1 -1
  79. package/lib/module/components/EmailVerificationModal.js.map +1 -1
  80. package/lib/module/components/Onairos.js +3 -1
  81. package/lib/module/components/Onairos.js.map +1 -1
  82. package/lib/module/components/OnairosButton.js +192 -172
  83. package/lib/module/components/OnairosButton.js.map +1 -1
  84. package/lib/module/components/Overlay.js +5 -5
  85. package/lib/module/components/Overlay.js.map +1 -1
  86. package/lib/module/components/PinInput.js +120 -283
  87. package/lib/module/components/PinInput.js.map +1 -1
  88. package/lib/module/components/PlatformList.js.map +1 -1
  89. package/lib/module/components/TrainingModal.js +565 -809
  90. package/lib/module/components/TrainingModal.js.map +1 -1
  91. package/lib/module/components/UniversalOnboarding.js +1297 -2305
  92. package/lib/module/components/UniversalOnboarding.js.map +1 -1
  93. package/lib/module/components/UniversalOnboarding.tsx.new +455 -0
  94. package/lib/module/components/onboarding/OAuthWebView.js +744 -136
  95. package/lib/module/components/onboarding/OAuthWebView.js.map +1 -1
  96. package/lib/module/components/onboarding/OnboardingHeader.js.map +1 -1
  97. package/lib/module/components/onboarding/PinInput.js.map +1 -1
  98. package/lib/module/components/onboarding/PlatformConnector.js.map +1 -1
  99. package/lib/module/components/screens/ConnectorScreen.js.map +1 -1
  100. package/lib/module/components/screens/LoadingScreen.js.map +1 -1
  101. package/lib/module/components/screens/PinCreationScreen.js.map +1 -1
  102. package/lib/module/constants/index.js.map +1 -1
  103. package/lib/module/hooks/useConnections.js +125 -119
  104. package/lib/module/hooks/useConnections.js.map +1 -1
  105. package/lib/module/hooks/useCredentials.js.map +1 -1
  106. package/lib/module/index.js +17 -55
  107. package/lib/module/index.js.map +1 -1
  108. package/lib/module/services/SDK_API_KEY_VALIDATION.md +428 -0
  109. package/lib/module/services/apiKeyService.js +106 -105
  110. package/lib/module/services/apiKeyService.js.map +1 -1
  111. package/lib/module/services/oauthService.js.map +1 -1
  112. package/lib/module/services/platformAuthService.js +704 -943
  113. package/lib/module/services/platformAuthService.js.map +1 -1
  114. package/lib/module/types/ambient.d.js.map +1 -1
  115. package/lib/module/types/declarations.d.js.map +1 -1
  116. package/lib/module/types/index.d.js.map +1 -1
  117. package/lib/module/types/index.js.map +1 -1
  118. package/lib/module/types/node-fix.d.js.map +1 -1
  119. package/lib/module/types/node-override.d.js.map +1 -1
  120. package/lib/module/types/opacity.d.js.map +1 -1
  121. package/lib/module/types/types.d.js.map +1 -1
  122. package/lib/module/types.js.map +1 -1
  123. package/lib/module/utils/Portal.js +4 -4
  124. package/lib/module/utils/Portal.js.map +1 -1
  125. package/lib/module/utils/api.js +24 -24
  126. package/lib/module/utils/api.js.map +1 -1
  127. package/lib/module/utils/auth.js +18 -18
  128. package/lib/module/utils/auth.js.map +1 -1
  129. package/lib/module/utils/crypto.js +13 -13
  130. package/lib/module/utils/crypto.js.map +1 -1
  131. package/lib/module/utils/debugHelper.js.map +1 -1
  132. package/lib/module/utils/encryption.js +12 -12
  133. package/lib/module/utils/encryption.js.map +1 -1
  134. package/lib/module/utils/onairosApi.js.map +1 -1
  135. package/lib/module/utils/programmaticFlow.js +16 -16
  136. package/lib/module/utils/programmaticFlow.js.map +1 -1
  137. package/lib/module/utils/retryHelper.js +27 -27
  138. package/lib/module/utils/retryHelper.js.map +1 -1
  139. package/lib/module/utils/secureStorage.js.map +1 -1
  140. package/lib/typescript/api/index.d.ts +7 -15
  141. package/lib/typescript/api/index.d.ts.map +1 -1
  142. package/lib/typescript/components/DataRequestModal.d.ts +10 -10
  143. package/lib/typescript/components/DataRequestScreen.d.ts +10 -10
  144. package/lib/typescript/components/EmailVerificationModal.d.ts +10 -10
  145. package/lib/typescript/components/Onairos.d.ts +3 -3
  146. package/lib/typescript/components/Onairos.d.ts.map +1 -1
  147. package/lib/typescript/components/OnairosButton.d.ts +11 -36
  148. package/lib/typescript/components/OnairosButton.d.ts.map +1 -1
  149. package/lib/typescript/components/Overlay.d.ts +3 -3
  150. package/lib/typescript/components/PinInput.d.ts +3 -13
  151. package/lib/typescript/components/PinInput.d.ts.map +1 -1
  152. package/lib/typescript/components/PlatformList.d.ts +3 -3
  153. package/lib/typescript/components/TrainingModal.d.ts +3 -14
  154. package/lib/typescript/components/TrainingModal.d.ts.map +1 -1
  155. package/lib/typescript/components/UniversalOnboarding.d.ts +3 -16
  156. package/lib/typescript/components/UniversalOnboarding.d.ts.map +1 -1
  157. package/lib/typescript/components/onboarding/OAuthWebView.d.ts +9 -9
  158. package/lib/typescript/components/onboarding/OAuthWebView.d.ts.map +1 -1
  159. package/lib/typescript/components/onboarding/OnboardingHeader.d.ts +10 -10
  160. package/lib/typescript/components/onboarding/PinInput.d.ts +3 -3
  161. package/lib/typescript/components/onboarding/PlatformConnector.d.ts +12 -12
  162. package/lib/typescript/components/screens/ConnectorScreen.d.ts +8 -8
  163. package/lib/typescript/components/screens/LoadingScreen.d.ts +8 -8
  164. package/lib/typescript/components/screens/PinCreationScreen.d.ts +9 -9
  165. package/lib/typescript/constants/index.d.ts +52 -52
  166. package/lib/typescript/hooks/useConnections.d.ts +8 -13
  167. package/lib/typescript/hooks/useConnections.d.ts.map +1 -1
  168. package/lib/typescript/hooks/useCredentials.d.ts +8 -8
  169. package/lib/typescript/index.d.ts +17 -38
  170. package/lib/typescript/index.d.ts.map +1 -1
  171. package/lib/typescript/services/apiKeyService.d.ts +131 -131
  172. package/lib/typescript/services/apiKeyService.d.ts.map +1 -1
  173. package/lib/typescript/services/oauthService.d.ts +49 -49
  174. package/lib/typescript/services/platformAuthService.d.ts +143 -68
  175. package/lib/typescript/services/platformAuthService.d.ts.map +1 -1
  176. package/lib/typescript/types/index.d.ts +228 -264
  177. package/lib/typescript/types/index.d.ts.map +1 -1
  178. package/lib/typescript/types.d.ts +268 -266
  179. package/lib/typescript/types.d.ts.map +1 -1
  180. package/lib/typescript/utils/Portal.d.ts +13 -13
  181. package/lib/typescript/utils/api.d.ts +5 -5
  182. package/lib/typescript/utils/auth.d.ts +5 -5
  183. package/lib/typescript/utils/crypto.d.ts +3 -3
  184. package/lib/typescript/utils/debugHelper.d.ts +28 -28
  185. package/lib/typescript/utils/encryption.d.ts +18 -18
  186. package/lib/typescript/utils/onairosApi.d.ts +86 -86
  187. package/lib/typescript/utils/programmaticFlow.d.ts +22 -22
  188. package/lib/typescript/utils/retryHelper.d.ts +68 -68
  189. package/lib/typescript/utils/secureStorage.d.ts +93 -93
  190. package/package.json +149 -145
  191. package/src/api/index.ts +110 -151
  192. package/src/assets/images/email.png +0 -0
  193. package/src/assets/images/linkedin.png +0 -0
  194. package/src/assets/images/reddit.png +0 -0
  195. package/src/assets/images/youtube.png +0 -0
  196. package/src/components/DataRequestScreen.tsx +355 -355
  197. package/src/components/EmailVerificationModal.tsx +363 -363
  198. package/src/components/Onairos.tsx +424 -422
  199. package/src/components/OnairosButton.tsx +359 -339
  200. package/src/components/Overlay.tsx +506 -506
  201. package/src/components/PinInput.tsx +343 -555
  202. package/src/components/PlatformList.tsx +144 -144
  203. package/src/components/TrainingModal.tsx +737 -1047
  204. package/src/components/UniversalOnboarding.tsx +1839 -2888
  205. package/src/components/UniversalOnboarding.tsx.new +455 -0
  206. package/src/components/onboarding/OAuthWebView.tsx +838 -232
  207. package/src/hooks/useConnections.ts +163 -161
  208. package/src/hooks/useCredentials.ts +174 -174
  209. package/src/index.js +14 -14
  210. package/src/index.ts +49 -99
  211. package/src/services/SDK_API_KEY_VALIDATION.md +428 -0
  212. package/src/services/apiKeyService.ts +921 -919
  213. package/src/services/platformAuthService.ts +1113 -1346
  214. package/src/types/ambient.d.ts +28 -28
  215. package/src/types/index.ts +241 -265
  216. package/src/types/node-fix.d.ts +18 -18
  217. package/src/types/node-override.d.ts +23 -23
  218. package/src/types/opacity.d.ts +15 -15
  219. package/src/types/types.d.ts +17 -17
  220. package/src/types.ts +6 -4
  221. package/src/utils/Portal.tsx +82 -82
  222. package/src/utils/api.js +111 -111
  223. package/src/utils/auth.js +103 -103
  224. package/src/utils/crypto.js +59 -59
  225. package/src/utils/encryption.ts +68 -68
  226. package/src/utils/programmaticFlow.ts +112 -112
  227. package/src/utils/retryHelper.ts +274 -274
  228. package/types/index.d.ts +213 -213
  229. package/types/node-env.d.ts +14 -14
  230. package/lib/commonjs/assets/fonts/EBGaramond-VariableFont_wght.ttf +0 -0
  231. package/lib/commonjs/assets/fonts/IBMPlexSans-VariableFont_wdth,wght.ttf +0 -0
  232. package/lib/commonjs/assets/icons/Facebookicon.png +0 -0
  233. package/lib/commonjs/assets/icons/Gmail.png +0 -0
  234. package/lib/commonjs/assets/icons/Linkedinicon.png +0 -0
  235. package/lib/commonjs/assets/icons/Redditicon.png +0 -0
  236. package/lib/commonjs/assets/icons/YouTubeicon2.png +0 -0
  237. package/lib/commonjs/assets/icons/YouTubeicon3.png +0 -0
  238. package/lib/commonjs/assets/icons/farcaster.png +0 -0
  239. package/lib/commonjs/assets/icons/instagram.png +0 -0
  240. package/lib/commonjs/assets/icons/pinterest.png +0 -0
  241. package/lib/commonjs/assets/icons/swerv_logo.png +0 -0
  242. package/lib/commonjs/assets/icons/twitter.jpg +0 -0
  243. package/lib/commonjs/assets/images/Checkbox.svg +0 -3
  244. package/lib/commonjs/assets/images/EnochE.svg +0 -19
  245. package/lib/commonjs/assets/images/Enochicon1.png +0 -0
  246. package/lib/commonjs/assets/images/Face_ID_logo.png +0 -0
  247. package/lib/commonjs/assets/images/Facebookicon.png +0 -0
  248. package/lib/commonjs/assets/images/Gmail.png +0 -0
  249. package/lib/commonjs/assets/images/Googlelogo.png +0 -0
  250. package/lib/commonjs/assets/images/Linkedinicon.png +0 -0
  251. package/lib/commonjs/assets/images/Onairoslogo.png +0 -0
  252. package/lib/commonjs/assets/images/Personalityprofile.svg +0 -3
  253. package/lib/commonjs/assets/images/Personalitytraits.svg +0 -3
  254. package/lib/commonjs/assets/images/Redditicon.png +0 -0
  255. package/lib/commonjs/assets/images/Userpreferences.svg +0 -3
  256. package/lib/commonjs/assets/images/YouTubeicon3.png +0 -0
  257. package/lib/commonjs/assets/images/arrow.svg +0 -20
  258. package/lib/commonjs/assets/images/basicproficon.svg +0 -43
  259. package/lib/commonjs/assets/images/basicprofile.svg +0 -3
  260. package/lib/commonjs/assets/images/checkmark.svg +0 -4
  261. package/lib/commonjs/assets/images/contentanalysis.svg +0 -3
  262. package/lib/commonjs/assets/images/contenticon.svg +0 -23
  263. package/lib/commonjs/assets/images/persona1.png +0 -0
  264. package/lib/commonjs/assets/images/persona2.png +0 -0
  265. package/lib/commonjs/assets/images/persona3.png +0 -0
  266. package/lib/commonjs/assets/images/persona4.png +0 -0
  267. package/lib/commonjs/assets/images/persona5.png +0 -0
  268. package/lib/commonjs/assets/images/personalityicon.svg +0 -18
  269. package/lib/commonjs/assets/images/x-close.svg +0 -3
  270. package/lib/commonjs/components/BodyText.js +0 -27
  271. package/lib/commonjs/components/BodyText.js.map +0 -1
  272. package/lib/commonjs/components/BrandMark.js +0 -44
  273. package/lib/commonjs/components/BrandMark.js.map +0 -1
  274. package/lib/commonjs/components/CodeInput.js +0 -30
  275. package/lib/commonjs/components/CodeInput.js.map +0 -1
  276. package/lib/commonjs/components/EmailInput.js +0 -30
  277. package/lib/commonjs/components/EmailInput.js.map +0 -1
  278. package/lib/commonjs/components/ExistingUserDataConfirmation.js +0 -474
  279. package/lib/commonjs/components/ExistingUserDataConfirmation.js.map +0 -1
  280. package/lib/commonjs/components/GoogleButton.js +0 -55
  281. package/lib/commonjs/components/GoogleButton.js.map +0 -1
  282. package/lib/commonjs/components/HeadingGroup.js +0 -43
  283. package/lib/commonjs/components/HeadingGroup.js.map +0 -1
  284. package/lib/commonjs/components/ModalHeader.js +0 -99
  285. package/lib/commonjs/components/ModalHeader.js.map +0 -1
  286. package/lib/commonjs/components/ModalSheet.js +0 -47
  287. package/lib/commonjs/components/ModalSheet.js.map +0 -1
  288. package/lib/commonjs/components/OnairosSignInButton.js +0 -129
  289. package/lib/commonjs/components/OnairosSignInButton.js.map +0 -1
  290. package/lib/commonjs/components/PersonaImage.js +0 -60
  291. package/lib/commonjs/components/PersonaImage.js.map +0 -1
  292. package/lib/commonjs/components/PersonaLoadingScreen.js +0 -156
  293. package/lib/commonjs/components/PersonaLoadingScreen.js.map +0 -1
  294. package/lib/commonjs/components/PersonalizationConsentScreen.js +0 -316
  295. package/lib/commonjs/components/PersonalizationConsentScreen.js.map +0 -1
  296. package/lib/commonjs/components/PinCreationScreen.js +0 -393
  297. package/lib/commonjs/components/PinCreationScreen.js.map +0 -1
  298. package/lib/commonjs/components/PlatformConnectorsStep.js +0 -828
  299. package/lib/commonjs/components/PlatformConnectorsStep.js.map +0 -1
  300. package/lib/commonjs/components/PlatformToggle.js +0 -180
  301. package/lib/commonjs/components/PlatformToggle.js.map +0 -1
  302. package/lib/commonjs/components/PrimaryButton.js +0 -180
  303. package/lib/commonjs/components/PrimaryButton.js.map +0 -1
  304. package/lib/commonjs/components/SignInMatchAnimation.js +0 -197
  305. package/lib/commonjs/components/SignInMatchAnimation.js.map +0 -1
  306. package/lib/commonjs/components/SignInStep.js +0 -179
  307. package/lib/commonjs/components/SignInStep.js.map +0 -1
  308. package/lib/commonjs/components/VerificationStep.js +0 -154
  309. package/lib/commonjs/components/VerificationStep.js.map +0 -1
  310. package/lib/commonjs/components/WelcomeScreen.js +0 -401
  311. package/lib/commonjs/components/WelcomeScreen.js.map +0 -1
  312. package/lib/commonjs/components/icons/Basicproficon.js +0 -37
  313. package/lib/commonjs/components/icons/Basicproficon.js.map +0 -1
  314. package/lib/commonjs/components/icons/Basicprofile.js +0 -21
  315. package/lib/commonjs/components/icons/Basicprofile.js.map +0 -1
  316. package/lib/commonjs/components/icons/Checkbox.js +0 -21
  317. package/lib/commonjs/components/icons/Checkbox.js.map +0 -1
  318. package/lib/commonjs/components/icons/Checkmark.js +0 -27
  319. package/lib/commonjs/components/icons/Checkmark.js.map +0 -1
  320. package/lib/commonjs/components/icons/Contentanalysis.js +0 -21
  321. package/lib/commonjs/components/icons/Contentanalysis.js.map +0 -1
  322. package/lib/commonjs/components/icons/Contenticon.js +0 -39
  323. package/lib/commonjs/components/icons/Contenticon.js.map +0 -1
  324. package/lib/commonjs/components/icons/EnochE.js +0 -41
  325. package/lib/commonjs/components/icons/EnochE.js.map +0 -1
  326. package/lib/commonjs/components/icons/Personalityicon.js +0 -30
  327. package/lib/commonjs/components/icons/Personalityicon.js.map +0 -1
  328. package/lib/commonjs/components/icons/Personalityprofile.js +0 -21
  329. package/lib/commonjs/components/icons/Personalityprofile.js.map +0 -1
  330. package/lib/commonjs/components/icons/Personalitytraits.js +0 -21
  331. package/lib/commonjs/components/icons/Personalitytraits.js.map +0 -1
  332. package/lib/commonjs/components/icons/Userpreferences.js +0 -21
  333. package/lib/commonjs/components/icons/Userpreferences.js.map +0 -1
  334. package/lib/commonjs/components/icons/index.js +0 -84
  335. package/lib/commonjs/components/icons/index.js.map +0 -1
  336. package/lib/commonjs/config/api.js +0 -34
  337. package/lib/commonjs/config/api.js.map +0 -1
  338. package/lib/commonjs/context/AuthContext.js +0 -345
  339. package/lib/commonjs/context/AuthContext.js.map +0 -1
  340. package/lib/commonjs/hooks/useConnectedAccounts.js +0 -111
  341. package/lib/commonjs/hooks/useConnectedAccounts.js.map +0 -1
  342. package/lib/commonjs/hooks/useUserConnections.js +0 -148
  343. package/lib/commonjs/hooks/useUserConnections.js.map +0 -1
  344. package/lib/commonjs/services/apiClient.js +0 -302
  345. package/lib/commonjs/services/apiClient.js.map +0 -1
  346. package/lib/commonjs/services/authService.js +0 -935
  347. package/lib/commonjs/services/authService.js.map +0 -1
  348. package/lib/commonjs/services/biometricPinService.js +0 -184
  349. package/lib/commonjs/services/biometricPinService.js.map +0 -1
  350. package/lib/commonjs/services/connectedAccountsService.js +0 -268
  351. package/lib/commonjs/services/connectedAccountsService.js.map +0 -1
  352. package/lib/commonjs/services/googleAuthService.js +0 -268
  353. package/lib/commonjs/services/googleAuthService.js.map +0 -1
  354. package/lib/commonjs/services/imageCompressionService.js +0 -260
  355. package/lib/commonjs/services/imageCompressionService.js.map +0 -1
  356. package/lib/commonjs/services/jwtStorageService.js +0 -256
  357. package/lib/commonjs/services/jwtStorageService.js.map +0 -1
  358. package/lib/commonjs/services/mobileTrainingService.js +0 -185
  359. package/lib/commonjs/services/mobileTrainingService.js.map +0 -1
  360. package/lib/commonjs/services/pinEncryptionService.js +0 -84
  361. package/lib/commonjs/services/pinEncryptionService.js.map +0 -1
  362. package/lib/commonjs/services/pinStorageUtils.js +0 -105
  363. package/lib/commonjs/services/pinStorageUtils.js.map +0 -1
  364. package/lib/commonjs/services/storageService.js +0 -404
  365. package/lib/commonjs/services/storageService.js.map +0 -1
  366. package/lib/commonjs/services/trainingApiHelpers.js +0 -73
  367. package/lib/commonjs/services/trainingApiHelpers.js.map +0 -1
  368. package/lib/commonjs/services/userConnectionsService.js +0 -486
  369. package/lib/commonjs/services/userConnectionsService.js.map +0 -1
  370. package/lib/commonjs/services/youtubeMigrationService.js +0 -415
  371. package/lib/commonjs/services/youtubeMigrationService.js.map +0 -1
  372. package/lib/commonjs/theme/index.js +0 -249
  373. package/lib/commonjs/theme/index.js.map +0 -1
  374. package/lib/commonjs/utils/eventUtils.js +0 -288
  375. package/lib/commonjs/utils/eventUtils.js.map +0 -1
  376. package/lib/commonjs/utils/haptics.js +0 -66
  377. package/lib/commonjs/utils/haptics.js.map +0 -1
  378. package/lib/commonjs/utils/imagePreloader.js +0 -6
  379. package/lib/commonjs/utils/imagePreloader.js.map +0 -1
  380. package/lib/module/assets/fonts/EBGaramond-VariableFont_wght.ttf +0 -0
  381. package/lib/module/assets/fonts/IBMPlexSans-VariableFont_wdth,wght.ttf +0 -0
  382. package/lib/module/assets/icons/Facebookicon.png +0 -0
  383. package/lib/module/assets/icons/Gmail.png +0 -0
  384. package/lib/module/assets/icons/Linkedinicon.png +0 -0
  385. package/lib/module/assets/icons/Redditicon.png +0 -0
  386. package/lib/module/assets/icons/YouTubeicon2.png +0 -0
  387. package/lib/module/assets/icons/YouTubeicon3.png +0 -0
  388. package/lib/module/assets/icons/farcaster.png +0 -0
  389. package/lib/module/assets/icons/instagram.png +0 -0
  390. package/lib/module/assets/icons/pinterest.png +0 -0
  391. package/lib/module/assets/icons/swerv_logo.png +0 -0
  392. package/lib/module/assets/icons/twitter.jpg +0 -0
  393. package/lib/module/assets/images/Checkbox.svg +0 -3
  394. package/lib/module/assets/images/EnochE.svg +0 -19
  395. package/lib/module/assets/images/Enochicon1.png +0 -0
  396. package/lib/module/assets/images/Face_ID_logo.png +0 -0
  397. package/lib/module/assets/images/Facebookicon.png +0 -0
  398. package/lib/module/assets/images/Gmail.png +0 -0
  399. package/lib/module/assets/images/Googlelogo.png +0 -0
  400. package/lib/module/assets/images/Linkedinicon.png +0 -0
  401. package/lib/module/assets/images/Onairoslogo.png +0 -0
  402. package/lib/module/assets/images/Personalityprofile.svg +0 -3
  403. package/lib/module/assets/images/Personalitytraits.svg +0 -3
  404. package/lib/module/assets/images/Redditicon.png +0 -0
  405. package/lib/module/assets/images/Userpreferences.svg +0 -3
  406. package/lib/module/assets/images/YouTubeicon3.png +0 -0
  407. package/lib/module/assets/images/arrow.svg +0 -20
  408. package/lib/module/assets/images/basicproficon.svg +0 -43
  409. package/lib/module/assets/images/basicprofile.svg +0 -3
  410. package/lib/module/assets/images/checkmark.svg +0 -4
  411. package/lib/module/assets/images/contentanalysis.svg +0 -3
  412. package/lib/module/assets/images/contenticon.svg +0 -23
  413. package/lib/module/assets/images/persona1.png +0 -0
  414. package/lib/module/assets/images/persona2.png +0 -0
  415. package/lib/module/assets/images/persona3.png +0 -0
  416. package/lib/module/assets/images/persona4.png +0 -0
  417. package/lib/module/assets/images/persona5.png +0 -0
  418. package/lib/module/assets/images/personalityicon.svg +0 -18
  419. package/lib/module/assets/images/x-close.svg +0 -3
  420. package/lib/module/components/BodyText.js +0 -20
  421. package/lib/module/components/BodyText.js.map +0 -1
  422. package/lib/module/components/BrandMark.js +0 -37
  423. package/lib/module/components/BrandMark.js.map +0 -1
  424. package/lib/module/components/CodeInput.js +0 -23
  425. package/lib/module/components/CodeInput.js.map +0 -1
  426. package/lib/module/components/EmailInput.js +0 -23
  427. package/lib/module/components/EmailInput.js.map +0 -1
  428. package/lib/module/components/ExistingUserDataConfirmation.js +0 -465
  429. package/lib/module/components/ExistingUserDataConfirmation.js.map +0 -1
  430. package/lib/module/components/GoogleButton.js +0 -48
  431. package/lib/module/components/GoogleButton.js.map +0 -1
  432. package/lib/module/components/HeadingGroup.js +0 -36
  433. package/lib/module/components/HeadingGroup.js.map +0 -1
  434. package/lib/module/components/ModalHeader.js +0 -92
  435. package/lib/module/components/ModalHeader.js.map +0 -1
  436. package/lib/module/components/ModalSheet.js +0 -39
  437. package/lib/module/components/ModalSheet.js.map +0 -1
  438. package/lib/module/components/OnairosSignInButton.js +0 -120
  439. package/lib/module/components/OnairosSignInButton.js.map +0 -1
  440. package/lib/module/components/PersonaImage.js +0 -53
  441. package/lib/module/components/PersonaImage.js.map +0 -1
  442. package/lib/module/components/PersonaLoadingScreen.js +0 -148
  443. package/lib/module/components/PersonaLoadingScreen.js.map +0 -1
  444. package/lib/module/components/PersonalizationConsentScreen.js +0 -309
  445. package/lib/module/components/PersonalizationConsentScreen.js.map +0 -1
  446. package/lib/module/components/PinCreationScreen.js +0 -386
  447. package/lib/module/components/PinCreationScreen.js.map +0 -1
  448. package/lib/module/components/PlatformConnectorsStep.js +0 -820
  449. package/lib/module/components/PlatformConnectorsStep.js.map +0 -1
  450. package/lib/module/components/PlatformToggle.js +0 -173
  451. package/lib/module/components/PlatformToggle.js.map +0 -1
  452. package/lib/module/components/PrimaryButton.js +0 -172
  453. package/lib/module/components/PrimaryButton.js.map +0 -1
  454. package/lib/module/components/SignInMatchAnimation.js +0 -189
  455. package/lib/module/components/SignInMatchAnimation.js.map +0 -1
  456. package/lib/module/components/SignInStep.js +0 -171
  457. package/lib/module/components/SignInStep.js.map +0 -1
  458. package/lib/module/components/VerificationStep.js +0 -146
  459. package/lib/module/components/VerificationStep.js.map +0 -1
  460. package/lib/module/components/WelcomeScreen.js +0 -393
  461. package/lib/module/components/WelcomeScreen.js.map +0 -1
  462. package/lib/module/components/icons/Basicproficon.js +0 -30
  463. package/lib/module/components/icons/Basicproficon.js.map +0 -1
  464. package/lib/module/components/icons/Basicprofile.js +0 -14
  465. package/lib/module/components/icons/Basicprofile.js.map +0 -1
  466. package/lib/module/components/icons/Checkbox.js +0 -14
  467. package/lib/module/components/icons/Checkbox.js.map +0 -1
  468. package/lib/module/components/icons/Checkmark.js +0 -20
  469. package/lib/module/components/icons/Checkmark.js.map +0 -1
  470. package/lib/module/components/icons/Contentanalysis.js +0 -14
  471. package/lib/module/components/icons/Contentanalysis.js.map +0 -1
  472. package/lib/module/components/icons/Contenticon.js +0 -32
  473. package/lib/module/components/icons/Contenticon.js.map +0 -1
  474. package/lib/module/components/icons/EnochE.js +0 -34
  475. package/lib/module/components/icons/EnochE.js.map +0 -1
  476. package/lib/module/components/icons/Personalityicon.js +0 -23
  477. package/lib/module/components/icons/Personalityicon.js.map +0 -1
  478. package/lib/module/components/icons/Personalityprofile.js +0 -14
  479. package/lib/module/components/icons/Personalityprofile.js.map +0 -1
  480. package/lib/module/components/icons/Personalitytraits.js +0 -14
  481. package/lib/module/components/icons/Personalitytraits.js.map +0 -1
  482. package/lib/module/components/icons/Userpreferences.js +0 -14
  483. package/lib/module/components/icons/Userpreferences.js.map +0 -1
  484. package/lib/module/components/icons/index.js +0 -13
  485. package/lib/module/components/icons/index.js.map +0 -1
  486. package/lib/module/config/api.js +0 -26
  487. package/lib/module/config/api.js.map +0 -1
  488. package/lib/module/context/AuthContext.js +0 -335
  489. package/lib/module/context/AuthContext.js.map +0 -1
  490. package/lib/module/hooks/useConnectedAccounts.js +0 -106
  491. package/lib/module/hooks/useConnectedAccounts.js.map +0 -1
  492. package/lib/module/hooks/useUserConnections.js +0 -140
  493. package/lib/module/hooks/useUserConnections.js.map +0 -1
  494. package/lib/module/services/apiClient.js +0 -298
  495. package/lib/module/services/apiClient.js.map +0 -1
  496. package/lib/module/services/authService.js +0 -905
  497. package/lib/module/services/authService.js.map +0 -1
  498. package/lib/module/services/biometricPinService.js +0 -173
  499. package/lib/module/services/biometricPinService.js.map +0 -1
  500. package/lib/module/services/connectedAccountsService.js +0 -255
  501. package/lib/module/services/connectedAccountsService.js.map +0 -1
  502. package/lib/module/services/googleAuthService.js +0 -258
  503. package/lib/module/services/googleAuthService.js.map +0 -1
  504. package/lib/module/services/imageCompressionService.js +0 -250
  505. package/lib/module/services/imageCompressionService.js.map +0 -1
  506. package/lib/module/services/jwtStorageService.js +0 -239
  507. package/lib/module/services/jwtStorageService.js.map +0 -1
  508. package/lib/module/services/mobileTrainingService.js +0 -172
  509. package/lib/module/services/mobileTrainingService.js.map +0 -1
  510. package/lib/module/services/pinEncryptionService.js +0 -75
  511. package/lib/module/services/pinEncryptionService.js.map +0 -1
  512. package/lib/module/services/pinStorageUtils.js +0 -93
  513. package/lib/module/services/pinStorageUtils.js.map +0 -1
  514. package/lib/module/services/storageService.js +0 -383
  515. package/lib/module/services/storageService.js.map +0 -1
  516. package/lib/module/services/trainingApiHelpers.js +0 -67
  517. package/lib/module/services/trainingApiHelpers.js.map +0 -1
  518. package/lib/module/services/userConnectionsService.js +0 -476
  519. package/lib/module/services/userConnectionsService.js.map +0 -1
  520. package/lib/module/services/youtubeMigrationService.js +0 -404
  521. package/lib/module/services/youtubeMigrationService.js.map +0 -1
  522. package/lib/module/theme/index.js +0 -244
  523. package/lib/module/theme/index.js.map +0 -1
  524. package/lib/module/utils/eventUtils.js +0 -270
  525. package/lib/module/utils/eventUtils.js.map +0 -1
  526. package/lib/module/utils/haptics.js +0 -59
  527. package/lib/module/utils/haptics.js.map +0 -1
  528. package/lib/module/utils/imagePreloader.js +0 -3
  529. package/lib/module/utils/imagePreloader.js.map +0 -1
  530. package/lib/typescript/components/BodyText.d.ts +0 -10
  531. package/lib/typescript/components/BodyText.d.ts.map +0 -1
  532. package/lib/typescript/components/BrandMark.d.ts +0 -11
  533. package/lib/typescript/components/BrandMark.d.ts.map +0 -1
  534. package/lib/typescript/components/CodeInput.d.ts +0 -10
  535. package/lib/typescript/components/CodeInput.d.ts.map +0 -1
  536. package/lib/typescript/components/EmailInput.d.ts +0 -8
  537. package/lib/typescript/components/EmailInput.d.ts.map +0 -1
  538. package/lib/typescript/components/ExistingUserDataConfirmation.d.ts +0 -12
  539. package/lib/typescript/components/ExistingUserDataConfirmation.d.ts.map +0 -1
  540. package/lib/typescript/components/GoogleButton.d.ts +0 -11
  541. package/lib/typescript/components/GoogleButton.d.ts.map +0 -1
  542. package/lib/typescript/components/HeadingGroup.d.ts +0 -11
  543. package/lib/typescript/components/HeadingGroup.d.ts.map +0 -1
  544. package/lib/typescript/components/ModalHeader.d.ts +0 -11
  545. package/lib/typescript/components/ModalHeader.d.ts.map +0 -1
  546. package/lib/typescript/components/ModalSheet.d.ts +0 -13
  547. package/lib/typescript/components/ModalSheet.d.ts.map +0 -1
  548. package/lib/typescript/components/OnairosSignInButton.d.ts +0 -13
  549. package/lib/typescript/components/OnairosSignInButton.d.ts.map +0 -1
  550. package/lib/typescript/components/PersonaImage.d.ts +0 -8
  551. package/lib/typescript/components/PersonaImage.d.ts.map +0 -1
  552. package/lib/typescript/components/PersonaLoadingScreen.d.ts +0 -10
  553. package/lib/typescript/components/PersonaLoadingScreen.d.ts.map +0 -1
  554. package/lib/typescript/components/PersonalizationConsentScreen.d.ts +0 -10
  555. package/lib/typescript/components/PersonalizationConsentScreen.d.ts.map +0 -1
  556. package/lib/typescript/components/PinCreationScreen.d.ts +0 -10
  557. package/lib/typescript/components/PinCreationScreen.d.ts.map +0 -1
  558. package/lib/typescript/components/PlatformConnectorsStep.d.ts +0 -11
  559. package/lib/typescript/components/PlatformConnectorsStep.d.ts.map +0 -1
  560. package/lib/typescript/components/PlatformToggle.d.ts +0 -20
  561. package/lib/typescript/components/PlatformToggle.d.ts.map +0 -1
  562. package/lib/typescript/components/PrimaryButton.d.ts +0 -22
  563. package/lib/typescript/components/PrimaryButton.d.ts.map +0 -1
  564. package/lib/typescript/components/SignInMatchAnimation.d.ts +0 -9
  565. package/lib/typescript/components/SignInMatchAnimation.d.ts.map +0 -1
  566. package/lib/typescript/components/SignInStep.d.ts +0 -12
  567. package/lib/typescript/components/SignInStep.d.ts.map +0 -1
  568. package/lib/typescript/components/VerificationStep.d.ts +0 -13
  569. package/lib/typescript/components/VerificationStep.d.ts.map +0 -1
  570. package/lib/typescript/components/WelcomeScreen.d.ts +0 -9
  571. package/lib/typescript/components/WelcomeScreen.d.ts.map +0 -1
  572. package/lib/typescript/components/icons/Basicproficon.d.ts +0 -5
  573. package/lib/typescript/components/icons/Basicproficon.d.ts.map +0 -1
  574. package/lib/typescript/components/icons/Basicprofile.d.ts +0 -5
  575. package/lib/typescript/components/icons/Basicprofile.d.ts.map +0 -1
  576. package/lib/typescript/components/icons/Checkbox.d.ts +0 -5
  577. package/lib/typescript/components/icons/Checkbox.d.ts.map +0 -1
  578. package/lib/typescript/components/icons/Checkmark.d.ts +0 -5
  579. package/lib/typescript/components/icons/Checkmark.d.ts.map +0 -1
  580. package/lib/typescript/components/icons/Contentanalysis.d.ts +0 -5
  581. package/lib/typescript/components/icons/Contentanalysis.d.ts.map +0 -1
  582. package/lib/typescript/components/icons/Contenticon.d.ts +0 -5
  583. package/lib/typescript/components/icons/Contenticon.d.ts.map +0 -1
  584. package/lib/typescript/components/icons/EnochE.d.ts +0 -5
  585. package/lib/typescript/components/icons/EnochE.d.ts.map +0 -1
  586. package/lib/typescript/components/icons/Personalityicon.d.ts +0 -5
  587. package/lib/typescript/components/icons/Personalityicon.d.ts.map +0 -1
  588. package/lib/typescript/components/icons/Personalityprofile.d.ts +0 -5
  589. package/lib/typescript/components/icons/Personalityprofile.d.ts.map +0 -1
  590. package/lib/typescript/components/icons/Personalitytraits.d.ts +0 -5
  591. package/lib/typescript/components/icons/Personalitytraits.d.ts.map +0 -1
  592. package/lib/typescript/components/icons/Userpreferences.d.ts +0 -5
  593. package/lib/typescript/components/icons/Userpreferences.d.ts.map +0 -1
  594. package/lib/typescript/components/icons/index.d.ts +0 -12
  595. package/lib/typescript/components/icons/index.d.ts.map +0 -1
  596. package/lib/typescript/config/api.d.ts +0 -24
  597. package/lib/typescript/config/api.d.ts.map +0 -1
  598. package/lib/typescript/context/AuthContext.d.ts +0 -34
  599. package/lib/typescript/context/AuthContext.d.ts.map +0 -1
  600. package/lib/typescript/hooks/useConnectedAccounts.d.ts +0 -11
  601. package/lib/typescript/hooks/useConnectedAccounts.d.ts.map +0 -1
  602. package/lib/typescript/hooks/useUserConnections.d.ts +0 -12
  603. package/lib/typescript/hooks/useUserConnections.d.ts.map +0 -1
  604. package/lib/typescript/services/apiClient.d.ts +0 -91
  605. package/lib/typescript/services/apiClient.d.ts.map +0 -1
  606. package/lib/typescript/services/authService.d.ts +0 -216
  607. package/lib/typescript/services/authService.d.ts.map +0 -1
  608. package/lib/typescript/services/biometricPinService.d.ts +0 -29
  609. package/lib/typescript/services/biometricPinService.d.ts.map +0 -1
  610. package/lib/typescript/services/connectedAccountsService.d.ts +0 -56
  611. package/lib/typescript/services/connectedAccountsService.d.ts.map +0 -1
  612. package/lib/typescript/services/googleAuthService.d.ts +0 -63
  613. package/lib/typescript/services/googleAuthService.d.ts.map +0 -1
  614. package/lib/typescript/services/imageCompressionService.d.ts +0 -37
  615. package/lib/typescript/services/imageCompressionService.d.ts.map +0 -1
  616. package/lib/typescript/services/jwtStorageService.d.ts +0 -86
  617. package/lib/typescript/services/jwtStorageService.d.ts.map +0 -1
  618. package/lib/typescript/services/mobileTrainingService.d.ts +0 -45
  619. package/lib/typescript/services/mobileTrainingService.d.ts.map +0 -1
  620. package/lib/typescript/services/pinEncryptionService.d.ts +0 -17
  621. package/lib/typescript/services/pinEncryptionService.d.ts.map +0 -1
  622. package/lib/typescript/services/pinStorageUtils.d.ts +0 -25
  623. package/lib/typescript/services/pinStorageUtils.d.ts.map +0 -1
  624. package/lib/typescript/services/storageService.d.ts +0 -128
  625. package/lib/typescript/services/storageService.d.ts.map +0 -1
  626. package/lib/typescript/services/trainingApiHelpers.d.ts +0 -38
  627. package/lib/typescript/services/trainingApiHelpers.d.ts.map +0 -1
  628. package/lib/typescript/services/userConnectionsService.d.ts +0 -90
  629. package/lib/typescript/services/userConnectionsService.d.ts.map +0 -1
  630. package/lib/typescript/services/youtubeMigrationService.d.ts +0 -12
  631. package/lib/typescript/services/youtubeMigrationService.d.ts.map +0 -1
  632. package/lib/typescript/theme/index.d.ts +0 -416
  633. package/lib/typescript/theme/index.d.ts.map +0 -1
  634. package/lib/typescript/utils/eventUtils.d.ts +0 -108
  635. package/lib/typescript/utils/eventUtils.d.ts.map +0 -1
  636. package/lib/typescript/utils/haptics.d.ts +0 -11
  637. package/lib/typescript/utils/haptics.d.ts.map +0 -1
  638. package/lib/typescript/utils/imagePreloader.d.ts +0 -2
  639. package/lib/typescript/utils/imagePreloader.d.ts.map +0 -1
  640. package/src/assets/fonts/EBGaramond-VariableFont_wght.ttf +0 -0
  641. package/src/assets/fonts/IBMPlexSans-VariableFont_wdth,wght.ttf +0 -0
  642. package/src/assets/icons/Facebookicon.png +0 -0
  643. package/src/assets/icons/Gmail.png +0 -0
  644. package/src/assets/icons/Linkedinicon.png +0 -0
  645. package/src/assets/icons/Redditicon.png +0 -0
  646. package/src/assets/icons/YouTubeicon2.png +0 -0
  647. package/src/assets/icons/YouTubeicon3.png +0 -0
  648. package/src/assets/icons/farcaster.png +0 -0
  649. package/src/assets/icons/instagram.png +0 -0
  650. package/src/assets/icons/pinterest.png +0 -0
  651. package/src/assets/icons/swerv_logo.png +0 -0
  652. package/src/assets/icons/twitter.jpg +0 -0
  653. package/src/assets/images/Checkbox.svg +0 -3
  654. package/src/assets/images/EnochE.svg +0 -19
  655. package/src/assets/images/Enochicon1.png +0 -0
  656. package/src/assets/images/Face_ID_logo.png +0 -0
  657. package/src/assets/images/Facebookicon.png +0 -0
  658. package/src/assets/images/Gmail.png +0 -0
  659. package/src/assets/images/Googlelogo.png +0 -0
  660. package/src/assets/images/Linkedinicon.png +0 -0
  661. package/src/assets/images/Onairoslogo.png +0 -0
  662. package/src/assets/images/Personalityprofile.svg +0 -3
  663. package/src/assets/images/Personalitytraits.svg +0 -3
  664. package/src/assets/images/Redditicon.png +0 -0
  665. package/src/assets/images/Userpreferences.svg +0 -3
  666. package/src/assets/images/YouTubeicon3.png +0 -0
  667. package/src/assets/images/arrow.svg +0 -20
  668. package/src/assets/images/basicproficon.svg +0 -43
  669. package/src/assets/images/basicprofile.svg +0 -3
  670. package/src/assets/images/checkmark.svg +0 -4
  671. package/src/assets/images/contentanalysis.svg +0 -3
  672. package/src/assets/images/contenticon.svg +0 -23
  673. package/src/assets/images/persona1.png +0 -0
  674. package/src/assets/images/persona2.png +0 -0
  675. package/src/assets/images/persona3.png +0 -0
  676. package/src/assets/images/persona4.png +0 -0
  677. package/src/assets/images/persona5.png +0 -0
  678. package/src/assets/images/personalityicon.svg +0 -18
  679. package/src/assets/images/x-close.svg +0 -3
  680. package/src/components/BodyText.tsx +0 -33
  681. package/src/components/BrandMark.tsx +0 -62
  682. package/src/components/CodeInput.tsx +0 -32
  683. package/src/components/EmailInput.tsx +0 -31
  684. package/src/components/ExistingUserDataConfirmation.tsx +0 -507
  685. package/src/components/GoogleButton.tsx +0 -55
  686. package/src/components/HeadingGroup.tsx +0 -49
  687. package/src/components/ModalHeader.tsx +0 -125
  688. package/src/components/ModalSheet.tsx +0 -59
  689. package/src/components/OnairosSignInButton.tsx +0 -132
  690. package/src/components/PersonaImage.tsx +0 -79
  691. package/src/components/PersonaLoadingScreen.tsx +0 -201
  692. package/src/components/PersonalizationConsentScreen.tsx +0 -410
  693. package/src/components/PinCreationScreen.tsx +0 -492
  694. package/src/components/PlatformConnectorsStep.tsx +0 -892
  695. package/src/components/PlatformToggle.tsx +0 -226
  696. package/src/components/PrimaryButton.tsx +0 -214
  697. package/src/components/SignInMatchAnimation.tsx +0 -225
  698. package/src/components/SignInStep.tsx +0 -217
  699. package/src/components/VerificationStep.tsx +0 -198
  700. package/src/components/WelcomeScreen.tsx +0 -490
  701. package/src/components/icons/Basicproficon.tsx +0 -30
  702. package/src/components/icons/Basicprofile.tsx +0 -17
  703. package/src/components/icons/Checkbox.tsx +0 -17
  704. package/src/components/icons/Checkmark.tsx +0 -24
  705. package/src/components/icons/Contentanalysis.tsx +0 -17
  706. package/src/components/icons/Contenticon.tsx +0 -30
  707. package/src/components/icons/EnochE.tsx +0 -39
  708. package/src/components/icons/Personalityicon.tsx +0 -22
  709. package/src/components/icons/Personalityprofile.tsx +0 -17
  710. package/src/components/icons/Personalitytraits.tsx +0 -17
  711. package/src/components/icons/Userpreferences.tsx +0 -17
  712. package/src/components/icons/index.ts +0 -12
  713. package/src/config/api.ts +0 -25
  714. package/src/context/AuthContext.tsx +0 -393
  715. package/src/hooks/useConnectedAccounts.ts +0 -139
  716. package/src/hooks/useUserConnections.ts +0 -166
  717. package/src/services/apiClient.ts +0 -337
  718. package/src/services/authService.ts +0 -1008
  719. package/src/services/biometricPinService.ts +0 -193
  720. package/src/services/connectedAccountsService.ts +0 -290
  721. package/src/services/googleAuthService.ts +0 -279
  722. package/src/services/imageCompressionService.ts +0 -303
  723. package/src/services/jwtStorageService.ts +0 -257
  724. package/src/services/mobileTrainingService.ts +0 -204
  725. package/src/services/pinEncryptionService.ts +0 -76
  726. package/src/services/pinStorageUtils.ts +0 -97
  727. package/src/services/storageService.ts +0 -452
  728. package/src/services/trainingApiHelpers.ts +0 -67
  729. package/src/services/userConnectionsService.ts +0 -557
  730. package/src/services/youtubeMigrationService.ts +0 -454
  731. package/src/theme/index.ts +0 -239
  732. package/src/utils/eventUtils.ts +0 -303
  733. package/src/utils/haptics.ts +0 -59
  734. 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;