@onairos/react-native 3.1.14 → 3.1.16

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 (307) hide show
  1. package/lib/commonjs/api/index.js.map +1 -1
  2. package/lib/commonjs/components/BodyText.js.map +1 -1
  3. package/lib/commonjs/components/BrandMark.js.map +1 -1
  4. package/lib/commonjs/components/CodeInput.js.map +1 -1
  5. package/lib/commonjs/components/DataRequestModal.js.map +1 -1
  6. package/lib/commonjs/components/DataRequestScreen.js.map +1 -1
  7. package/lib/commonjs/components/EmailInput.js.map +1 -1
  8. package/lib/commonjs/components/EmailVerificationModal.js.map +1 -1
  9. package/lib/commonjs/components/ExistingUserDataConfirmation.js.map +1 -1
  10. package/lib/commonjs/components/GoogleButton.js.map +1 -1
  11. package/lib/commonjs/components/HeadingGroup.js.map +1 -1
  12. package/lib/commonjs/components/ModalHeader.js.map +1 -1
  13. package/lib/commonjs/components/ModalSheet.js.map +1 -1
  14. package/lib/commonjs/components/Onairos.js.map +1 -1
  15. package/lib/commonjs/components/OnairosSignInButton.js +19 -83
  16. package/lib/commonjs/components/OnairosSignInButton.js.map +1 -1
  17. package/lib/commonjs/components/Overlay.js.map +1 -1
  18. package/lib/commonjs/components/PersonaImage.js.map +1 -1
  19. package/lib/commonjs/components/PersonaLoadingScreen.js.map +1 -1
  20. package/lib/commonjs/components/PersonalizationConsentScreen.js.map +1 -1
  21. package/lib/commonjs/components/PinCreationScreen.js.map +1 -1
  22. package/lib/commonjs/components/PinInput.js.map +1 -1
  23. package/lib/commonjs/components/PlatformConnectorsStep.js.map +1 -1
  24. package/lib/commonjs/components/PlatformList.js.map +1 -1
  25. package/lib/commonjs/components/PlatformToggle.js.map +1 -1
  26. package/lib/commonjs/components/PrimaryButton.js.map +1 -1
  27. package/lib/commonjs/components/SignInMatchAnimation.js.map +1 -1
  28. package/lib/commonjs/components/SignInStep.js.map +1 -1
  29. package/lib/commonjs/components/TrainingModal.js.map +1 -1
  30. package/lib/commonjs/components/UniversalOnboarding.js.map +1 -1
  31. package/lib/commonjs/components/VerificationStep.js.map +1 -1
  32. package/lib/commonjs/components/WelcomeScreen.js.map +1 -1
  33. package/lib/commonjs/components/icons/Basicproficon.js.map +1 -1
  34. package/lib/commonjs/components/icons/Basicprofile.js.map +1 -1
  35. package/lib/commonjs/components/icons/Checkbox.js.map +1 -1
  36. package/lib/commonjs/components/icons/Checkmark.js.map +1 -1
  37. package/lib/commonjs/components/icons/Contentanalysis.js.map +1 -1
  38. package/lib/commonjs/components/icons/Contenticon.js.map +1 -1
  39. package/lib/commonjs/components/icons/EnochE.js.map +1 -1
  40. package/lib/commonjs/components/icons/Personalityicon.js.map +1 -1
  41. package/lib/commonjs/components/icons/Personalityprofile.js.map +1 -1
  42. package/lib/commonjs/components/icons/Personalitytraits.js.map +1 -1
  43. package/lib/commonjs/components/icons/Userpreferences.js.map +1 -1
  44. package/lib/commonjs/components/icons/index.js.map +1 -1
  45. package/lib/commonjs/components/onboarding/OAuthWebView.js.map +1 -1
  46. package/lib/commonjs/components/onboarding/OnboardingHeader.js.map +1 -1
  47. package/lib/commonjs/components/onboarding/PinInput.js.map +1 -1
  48. package/lib/commonjs/components/onboarding/PlatformConnector.js.map +1 -1
  49. package/lib/commonjs/components/screens/ConnectorScreen.js.map +1 -1
  50. package/lib/commonjs/components/screens/LoadingScreen.js.map +1 -1
  51. package/lib/commonjs/components/screens/PinCreationScreen.js.map +1 -1
  52. package/lib/commonjs/config/api.js.map +1 -1
  53. package/lib/commonjs/constants/index.js.map +1 -1
  54. package/lib/commonjs/context/AuthContext.js.map +1 -1
  55. package/lib/commonjs/hooks/useConnectedAccounts.js.map +1 -1
  56. package/lib/commonjs/hooks/useConnections.js.map +1 -1
  57. package/lib/commonjs/hooks/useCredentials.js.map +1 -1
  58. package/lib/commonjs/hooks/useUserConnections.js.map +1 -1
  59. package/lib/commonjs/index.js +222 -11
  60. package/lib/commonjs/index.js.map +1 -1
  61. package/lib/commonjs/services/apiClient.js.map +1 -1
  62. package/lib/commonjs/services/apiKeyService.js.map +1 -1
  63. package/lib/commonjs/services/authService.js.map +1 -1
  64. package/lib/commonjs/services/biometricPinService.js.map +1 -1
  65. package/lib/commonjs/services/connectedAccountsService.js.map +1 -1
  66. package/lib/commonjs/services/googleAuthService.js.map +1 -1
  67. package/lib/commonjs/services/imageCompressionService.js.map +1 -1
  68. package/lib/commonjs/services/jwtStorageService.js.map +1 -1
  69. package/lib/commonjs/services/mobileTrainingService.js.map +1 -1
  70. package/lib/commonjs/services/oauthService.js.map +1 -1
  71. package/lib/commonjs/services/pinEncryptionService.js.map +1 -1
  72. package/lib/commonjs/services/pinStorageUtils.js.map +1 -1
  73. package/lib/commonjs/services/platformAuthService.js.map +1 -1
  74. package/lib/commonjs/services/storageService.js.map +1 -1
  75. package/lib/commonjs/services/trainingApiHelpers.js.map +1 -1
  76. package/lib/commonjs/services/userConnectionsService.js.map +1 -1
  77. package/lib/commonjs/services/youtubeMigrationService.js.map +1 -1
  78. package/lib/commonjs/theme/index.js.map +1 -1
  79. package/lib/commonjs/types/ambient.d.js.map +1 -1
  80. package/lib/commonjs/types/declarations.d.js.map +1 -1
  81. package/lib/commonjs/types/index.d.js.map +1 -1
  82. package/lib/commonjs/types/index.js.map +1 -1
  83. package/lib/commonjs/types/node-fix.d.js.map +1 -1
  84. package/lib/commonjs/types/node-override.d.js.map +1 -1
  85. package/lib/commonjs/types/opacity.d.js.map +1 -1
  86. package/lib/commonjs/types/types.d.js.map +1 -1
  87. package/lib/commonjs/types.js.map +1 -1
  88. package/lib/commonjs/utils/Portal.js.map +1 -1
  89. package/lib/commonjs/utils/api.js.map +1 -1
  90. package/lib/commonjs/utils/auth.js.map +1 -1
  91. package/lib/commonjs/utils/crypto.js.map +1 -1
  92. package/lib/commonjs/utils/debugHelper.js.map +1 -1
  93. package/lib/commonjs/utils/encryption.js.map +1 -1
  94. package/lib/commonjs/utils/eventUtils.js.map +1 -1
  95. package/lib/commonjs/utils/haptics.js.map +1 -1
  96. package/lib/commonjs/utils/imagePreloader.js.map +1 -1
  97. package/lib/commonjs/utils/onairosApi.js.map +1 -1
  98. package/lib/commonjs/utils/programmaticFlow.js.map +1 -1
  99. package/lib/commonjs/utils/retryHelper.js.map +1 -1
  100. package/lib/commonjs/utils/secureStorage.js.map +1 -1
  101. package/lib/module/api/index.js.map +1 -1
  102. package/lib/module/components/BodyText.js.map +1 -1
  103. package/lib/module/components/BrandMark.js.map +1 -1
  104. package/lib/module/components/CodeInput.js.map +1 -1
  105. package/lib/module/components/DataRequestModal.js.map +1 -1
  106. package/lib/module/components/DataRequestScreen.js.map +1 -1
  107. package/lib/module/components/EmailInput.js.map +1 -1
  108. package/lib/module/components/EmailVerificationModal.js.map +1 -1
  109. package/lib/module/components/ExistingUserDataConfirmation.js.map +1 -1
  110. package/lib/module/components/GoogleButton.js.map +1 -1
  111. package/lib/module/components/HeadingGroup.js.map +1 -1
  112. package/lib/module/components/ModalHeader.js.map +1 -1
  113. package/lib/module/components/ModalSheet.js.map +1 -1
  114. package/lib/module/components/Onairos.js.map +1 -1
  115. package/lib/module/components/OnairosSignInButton.js +19 -83
  116. package/lib/module/components/OnairosSignInButton.js.map +1 -1
  117. package/lib/module/components/Overlay.js.map +1 -1
  118. package/lib/module/components/PersonaImage.js.map +1 -1
  119. package/lib/module/components/PersonaLoadingScreen.js.map +1 -1
  120. package/lib/module/components/PersonalizationConsentScreen.js.map +1 -1
  121. package/lib/module/components/PinCreationScreen.js.map +1 -1
  122. package/lib/module/components/PinInput.js.map +1 -1
  123. package/lib/module/components/PlatformConnectorsStep.js.map +1 -1
  124. package/lib/module/components/PlatformList.js.map +1 -1
  125. package/lib/module/components/PlatformToggle.js.map +1 -1
  126. package/lib/module/components/PrimaryButton.js.map +1 -1
  127. package/lib/module/components/SignInMatchAnimation.js.map +1 -1
  128. package/lib/module/components/SignInStep.js.map +1 -1
  129. package/lib/module/components/TrainingModal.js.map +1 -1
  130. package/lib/module/components/UniversalOnboarding.js.map +1 -1
  131. package/lib/module/components/VerificationStep.js.map +1 -1
  132. package/lib/module/components/WelcomeScreen.js.map +1 -1
  133. package/lib/module/components/icons/Basicproficon.js.map +1 -1
  134. package/lib/module/components/icons/Basicprofile.js.map +1 -1
  135. package/lib/module/components/icons/Checkbox.js.map +1 -1
  136. package/lib/module/components/icons/Checkmark.js.map +1 -1
  137. package/lib/module/components/icons/Contentanalysis.js.map +1 -1
  138. package/lib/module/components/icons/Contenticon.js.map +1 -1
  139. package/lib/module/components/icons/EnochE.js.map +1 -1
  140. package/lib/module/components/icons/Personalityicon.js.map +1 -1
  141. package/lib/module/components/icons/Personalityprofile.js.map +1 -1
  142. package/lib/module/components/icons/Personalitytraits.js.map +1 -1
  143. package/lib/module/components/icons/Userpreferences.js.map +1 -1
  144. package/lib/module/components/icons/index.js.map +1 -1
  145. package/lib/module/components/onboarding/OAuthWebView.js.map +1 -1
  146. package/lib/module/components/onboarding/OnboardingHeader.js.map +1 -1
  147. package/lib/module/components/onboarding/PinInput.js.map +1 -1
  148. package/lib/module/components/onboarding/PlatformConnector.js.map +1 -1
  149. package/lib/module/components/screens/ConnectorScreen.js.map +1 -1
  150. package/lib/module/components/screens/LoadingScreen.js.map +1 -1
  151. package/lib/module/components/screens/PinCreationScreen.js.map +1 -1
  152. package/lib/module/config/api.js.map +1 -1
  153. package/lib/module/constants/index.js.map +1 -1
  154. package/lib/module/context/AuthContext.js.map +1 -1
  155. package/lib/module/hooks/useConnectedAccounts.js.map +1 -1
  156. package/lib/module/hooks/useConnections.js.map +1 -1
  157. package/lib/module/hooks/useCredentials.js.map +1 -1
  158. package/lib/module/hooks/useUserConnections.js.map +1 -1
  159. package/lib/module/index.js +5 -3
  160. package/lib/module/index.js.map +1 -1
  161. package/lib/module/services/apiClient.js.map +1 -1
  162. package/lib/module/services/apiKeyService.js.map +1 -1
  163. package/lib/module/services/authService.js.map +1 -1
  164. package/lib/module/services/biometricPinService.js.map +1 -1
  165. package/lib/module/services/connectedAccountsService.js.map +1 -1
  166. package/lib/module/services/googleAuthService.js.map +1 -1
  167. package/lib/module/services/imageCompressionService.js.map +1 -1
  168. package/lib/module/services/jwtStorageService.js.map +1 -1
  169. package/lib/module/services/mobileTrainingService.js.map +1 -1
  170. package/lib/module/services/oauthService.js.map +1 -1
  171. package/lib/module/services/pinEncryptionService.js.map +1 -1
  172. package/lib/module/services/pinStorageUtils.js.map +1 -1
  173. package/lib/module/services/platformAuthService.js.map +1 -1
  174. package/lib/module/services/storageService.js.map +1 -1
  175. package/lib/module/services/trainingApiHelpers.js.map +1 -1
  176. package/lib/module/services/userConnectionsService.js.map +1 -1
  177. package/lib/module/services/youtubeMigrationService.js.map +1 -1
  178. package/lib/module/theme/index.js.map +1 -1
  179. package/lib/module/types/ambient.d.js.map +1 -1
  180. package/lib/module/types/declarations.d.js.map +1 -1
  181. package/lib/module/types/index.d.js.map +1 -1
  182. package/lib/module/types/index.js.map +1 -1
  183. package/lib/module/types/node-fix.d.js.map +1 -1
  184. package/lib/module/types/node-override.d.js.map +1 -1
  185. package/lib/module/types/opacity.d.js.map +1 -1
  186. package/lib/module/types/types.d.js.map +1 -1
  187. package/lib/module/types.js.map +1 -1
  188. package/lib/module/utils/Portal.js.map +1 -1
  189. package/lib/module/utils/api.js.map +1 -1
  190. package/lib/module/utils/auth.js.map +1 -1
  191. package/lib/module/utils/crypto.js.map +1 -1
  192. package/lib/module/utils/debugHelper.js.map +1 -1
  193. package/lib/module/utils/encryption.js.map +1 -1
  194. package/lib/module/utils/eventUtils.js.map +1 -1
  195. package/lib/module/utils/haptics.js.map +1 -1
  196. package/lib/module/utils/imagePreloader.js.map +1 -1
  197. package/lib/module/utils/onairosApi.js.map +1 -1
  198. package/lib/module/utils/programmaticFlow.js.map +1 -1
  199. package/lib/module/utils/retryHelper.js.map +1 -1
  200. package/lib/module/utils/secureStorage.js.map +1 -1
  201. package/lib/typescript/api/index.d.ts +15 -15
  202. package/lib/typescript/components/BodyText.d.ts +9 -9
  203. package/lib/typescript/components/BrandMark.d.ts +10 -10
  204. package/lib/typescript/components/CodeInput.d.ts +9 -9
  205. package/lib/typescript/components/DataRequestModal.d.ts +10 -10
  206. package/lib/typescript/components/DataRequestScreen.d.ts +10 -10
  207. package/lib/typescript/components/EmailInput.d.ts +7 -7
  208. package/lib/typescript/components/EmailVerificationModal.d.ts +10 -10
  209. package/lib/typescript/components/ExistingUserDataConfirmation.d.ts +11 -11
  210. package/lib/typescript/components/GoogleButton.d.ts +10 -10
  211. package/lib/typescript/components/HeadingGroup.d.ts +10 -10
  212. package/lib/typescript/components/ModalHeader.d.ts +10 -10
  213. package/lib/typescript/components/ModalSheet.d.ts +12 -12
  214. package/lib/typescript/components/Onairos.d.ts +3 -3
  215. package/lib/typescript/components/OnairosSignInButton.d.ts +12 -13
  216. package/lib/typescript/components/OnairosSignInButton.d.ts.map +1 -1
  217. package/lib/typescript/components/Overlay.d.ts +3 -3
  218. package/lib/typescript/components/PersonaImage.d.ts +7 -7
  219. package/lib/typescript/components/PersonaLoadingScreen.d.ts +9 -9
  220. package/lib/typescript/components/PersonalizationConsentScreen.d.ts +9 -9
  221. package/lib/typescript/components/PinCreationScreen.d.ts +9 -9
  222. package/lib/typescript/components/PinInput.d.ts +13 -13
  223. package/lib/typescript/components/PlatformConnectorsStep.d.ts +10 -10
  224. package/lib/typescript/components/PlatformList.d.ts +3 -3
  225. package/lib/typescript/components/PlatformToggle.d.ts +19 -19
  226. package/lib/typescript/components/PrimaryButton.d.ts +21 -21
  227. package/lib/typescript/components/SignInMatchAnimation.d.ts +8 -8
  228. package/lib/typescript/components/SignInStep.d.ts +11 -11
  229. package/lib/typescript/components/TrainingModal.d.ts +14 -14
  230. package/lib/typescript/components/UniversalOnboarding.d.ts +16 -16
  231. package/lib/typescript/components/VerificationStep.d.ts +12 -12
  232. package/lib/typescript/components/WelcomeScreen.d.ts +8 -8
  233. package/lib/typescript/components/icons/Basicproficon.d.ts +4 -4
  234. package/lib/typescript/components/icons/Basicprofile.d.ts +4 -4
  235. package/lib/typescript/components/icons/Checkbox.d.ts +4 -4
  236. package/lib/typescript/components/icons/Checkmark.d.ts +4 -4
  237. package/lib/typescript/components/icons/Contentanalysis.d.ts +4 -4
  238. package/lib/typescript/components/icons/Contenticon.d.ts +4 -4
  239. package/lib/typescript/components/icons/EnochE.d.ts +4 -4
  240. package/lib/typescript/components/icons/Personalityicon.d.ts +4 -4
  241. package/lib/typescript/components/icons/Personalityprofile.d.ts +4 -4
  242. package/lib/typescript/components/icons/Personalitytraits.d.ts +4 -4
  243. package/lib/typescript/components/icons/Userpreferences.d.ts +4 -4
  244. package/lib/typescript/components/icons/index.d.ts +11 -11
  245. package/lib/typescript/components/onboarding/OAuthWebView.d.ts +9 -9
  246. package/lib/typescript/components/onboarding/OnboardingHeader.d.ts +10 -10
  247. package/lib/typescript/components/onboarding/PinInput.d.ts +3 -3
  248. package/lib/typescript/components/onboarding/PlatformConnector.d.ts +12 -12
  249. package/lib/typescript/components/screens/ConnectorScreen.d.ts +8 -8
  250. package/lib/typescript/components/screens/LoadingScreen.d.ts +8 -8
  251. package/lib/typescript/components/screens/PinCreationScreen.d.ts +9 -9
  252. package/lib/typescript/config/api.d.ts +23 -23
  253. package/lib/typescript/constants/index.d.ts +52 -52
  254. package/lib/typescript/context/AuthContext.d.ts +33 -33
  255. package/lib/typescript/hooks/useConnectedAccounts.d.ts +10 -10
  256. package/lib/typescript/hooks/useConnections.d.ts +13 -13
  257. package/lib/typescript/hooks/useCredentials.d.ts +8 -8
  258. package/lib/typescript/hooks/useUserConnections.d.ts +11 -11
  259. package/lib/typescript/index.d.ts +36 -35
  260. package/lib/typescript/index.d.ts.map +1 -1
  261. package/lib/typescript/services/apiClient.d.ts +90 -90
  262. package/lib/typescript/services/apiKeyService.d.ts +131 -131
  263. package/lib/typescript/services/authService.d.ts +215 -215
  264. package/lib/typescript/services/biometricPinService.d.ts +28 -28
  265. package/lib/typescript/services/connectedAccountsService.d.ts +55 -55
  266. package/lib/typescript/services/googleAuthService.d.ts +62 -62
  267. package/lib/typescript/services/imageCompressionService.d.ts +36 -36
  268. package/lib/typescript/services/jwtStorageService.d.ts +85 -85
  269. package/lib/typescript/services/mobileTrainingService.d.ts +44 -44
  270. package/lib/typescript/services/oauthService.d.ts +49 -49
  271. package/lib/typescript/services/pinEncryptionService.d.ts +16 -16
  272. package/lib/typescript/services/pinStorageUtils.d.ts +24 -24
  273. package/lib/typescript/services/platformAuthService.d.ts +68 -68
  274. package/lib/typescript/services/storageService.d.ts +127 -127
  275. package/lib/typescript/services/trainingApiHelpers.d.ts +37 -37
  276. package/lib/typescript/services/userConnectionsService.d.ts +89 -89
  277. package/lib/typescript/services/youtubeMigrationService.d.ts +11 -11
  278. package/lib/typescript/theme/index.d.ts +415 -415
  279. package/lib/typescript/types/index.d.ts +264 -264
  280. package/lib/typescript/types.d.ts +266 -266
  281. package/lib/typescript/utils/Portal.d.ts +13 -13
  282. package/lib/typescript/utils/api.d.ts +5 -5
  283. package/lib/typescript/utils/auth.d.ts +5 -5
  284. package/lib/typescript/utils/crypto.d.ts +3 -3
  285. package/lib/typescript/utils/debugHelper.d.ts +28 -28
  286. package/lib/typescript/utils/encryption.d.ts +18 -18
  287. package/lib/typescript/utils/eventUtils.d.ts +107 -107
  288. package/lib/typescript/utils/haptics.d.ts +10 -10
  289. package/lib/typescript/utils/imagePreloader.d.ts +1 -1
  290. package/lib/typescript/utils/onairosApi.d.ts +86 -86
  291. package/lib/typescript/utils/programmaticFlow.d.ts +22 -22
  292. package/lib/typescript/utils/retryHelper.d.ts +68 -68
  293. package/lib/typescript/utils/secureStorage.d.ts +93 -93
  294. package/package.json +1 -1
  295. package/src/components/OnairosSignInButton.tsx +110 -166
  296. package/src/index.ts +6 -4
  297. package/types/index.d.ts +213 -213
  298. package/types/node-env.d.ts +14 -14
  299. package/README.md +0 -404
  300. package/lib/commonjs/components/OnairosButton.js +0 -290
  301. package/lib/commonjs/components/OnairosButton.js.map +0 -1
  302. package/lib/module/components/OnairosButton.js +0 -282
  303. package/lib/module/components/OnairosButton.js.map +0 -1
  304. package/lib/typescript/components/OnairosButton.d.ts +0 -37
  305. package/lib/typescript/components/OnairosButton.d.ts.map +0 -1
  306. package/src/components/OnairosButton.tsx +0 -339
  307. package/src/index.js +0 -14
@@ -1,339 +0,0 @@
1
- import React, { useState, useCallback, forwardRef, useImperativeHandle, useEffect } from 'react';
2
- import {
3
- TouchableOpacity,
4
- Text,
5
- StyleSheet,
6
- View,
7
- ActivityIndicator,
8
- Dimensions,
9
- Image,
10
- } from 'react-native';
11
- import LinearGradient from 'react-native-linear-gradient';
12
- import { UniversalOnboarding } from './UniversalOnboarding';
13
- import WelcomeScreen from './WelcomeScreen';
14
-
15
- export interface OnairosButtonProps {
16
- AppName: string;
17
- buttonType?: 'normal' | 'pill';
18
- buttonWidth?: number;
19
- buttonHeight?: number;
20
- hasStroke?: boolean;
21
- enabled?: boolean;
22
- buttonForm?: 'default' | 'login' | 'signup' | 'connect';
23
- onResolved?: (token: string, email?: string) => void;
24
- onRejection?: (error: any) => void;
25
- preCheck?: () => Promise<boolean>;
26
- color?: string;
27
- swerv?: boolean;
28
- darkMode?: boolean;
29
- returnLink?: string;
30
- preferredPlatform?: string;
31
- autoFetch?: boolean;
32
- inferenceData?: any;
33
- textLayout?: 'left' | 'right' | 'center';
34
- textColor?: string;
35
- proofMode?: boolean;
36
- webpageName?: string;
37
- debug?: boolean;
38
- testMode?: boolean;
39
- requestData?: any;
40
- onPress?: () => void;
41
- primaryAuthOnly?: boolean;
42
- useNewWelcomeFlow?: boolean; // NEW: Enable the refreshed welcome screen experience
43
- }
44
-
45
- export interface OnairosButtonRef {
46
- trigger: () => Promise<void>;
47
- reset: () => Promise<void>;
48
- }
49
-
50
- const { width } = Dimensions.get('window');
51
-
52
- export const OnairosButton = forwardRef<OnairosButtonRef, OnairosButtonProps>(({
53
- AppName,
54
- buttonType = 'normal',
55
- buttonWidth = 180,
56
- buttonHeight = 48,
57
- hasStroke = false,
58
- enabled = true,
59
- buttonForm = 'default',
60
- onResolved,
61
- onRejection,
62
- preCheck,
63
- color = '#1BA9D4',
64
- swerv = false,
65
- darkMode = false,
66
- returnLink,
67
- preferredPlatform,
68
- autoFetch = false,
69
- inferenceData,
70
- textLayout = 'right',
71
- textColor = 'black',
72
- proofMode = false,
73
- webpageName,
74
- debug = false,
75
- testMode = false,
76
- requestData,
77
- onPress,
78
- primaryAuthOnly = false,
79
- useNewWelcomeFlow = false,
80
- }, ref) => {
81
- const [isLoading, setIsLoading] = useState(false);
82
- const [isPressed, setIsPressed] = useState(false);
83
- const [showOnboarding, setShowOnboarding] = useState(false);
84
- console.log('[OnairosButton] Initializing. Initial showOnboarding:', showOnboarding);
85
-
86
- useEffect(() => {
87
- console.log('[OnairosButton] LogEffect: showOnboarding state changed to:', showOnboarding);
88
- }, [showOnboarding]);
89
-
90
- // Expose methods via ref
91
- useImperativeHandle(ref, () => ({
92
- trigger: async () => {
93
- await handlePress();
94
- return Promise.resolve();
95
- },
96
- reset: async () => {
97
- return Promise.resolve();
98
- }
99
- }));
100
-
101
- const handlePress = async () => {
102
- console.log('[OnairosButton] handlePress called.');
103
- if (!enabled || isLoading) return;
104
-
105
- setIsLoading(true);
106
-
107
- try {
108
- if (preCheck) {
109
- const shouldProceed = await preCheck();
110
- if (!shouldProceed) {
111
- console.log('[OnairosButton] Precheck failed. Setting showOnboarding to false (indirectly, by not setting to true).');
112
- onRejection?.('Precheck validation failed');
113
- setIsLoading(false);
114
- return;
115
- }
116
- }
117
-
118
- console.log('[OnairosButton] handlePress: Setting showOnboarding to true.');
119
- setShowOnboarding(true);
120
- setIsLoading(false);
121
- } catch (error) {
122
- console.error('[OnairosButton] Error in handlePress:', error);
123
- onRejection?.(error instanceof Error ? error.message : 'Unknown error');
124
- setIsLoading(false);
125
- }
126
- };
127
-
128
- // Compute button text based on buttonForm
129
- const getButtonText = () => {
130
- switch (buttonForm) {
131
- case 'connect':
132
- return 'Connect Onairos';
133
- case 'login':
134
- return 'Sign in with Onairos';
135
- case 'signup':
136
- return 'Sign up with Onairos';
137
- default:
138
- return 'Connect Onairos';
139
- }
140
- };
141
-
142
- // Handle onboarding completion
143
- const handleOnboardingComplete = useCallback((token: string, email?: string) => {
144
- console.log('[OnairosButton] handleOnboardingComplete: Setting showOnboarding to false.');
145
- setShowOnboarding(false);
146
-
147
- if (onResolved) {
148
- // Call onResolved with the token and email
149
- onResolved(token, email);
150
- }
151
-
152
- if (onPress) {
153
- onPress();
154
- }
155
- }, [onResolved, onPress]);
156
-
157
- // Handle onboarding close
158
- const handleOnboardingClose = useCallback(() => {
159
- console.log('[OnairosButton] handleOnboardingClose: Setting showOnboarding to false.');
160
- setShowOnboarding(false);
161
- if (onRejection) {
162
- onRejection('User closed onboarding');
163
- }
164
- }, [onRejection]);
165
-
166
- console.log('[OnairosButton] Rendering JSX with props:', {
167
- AppName,
168
- buttonType,
169
- buttonWidth,
170
- buttonHeight,
171
- hasStroke,
172
- enabled,
173
- buttonForm,
174
- onResolved,
175
- onRejection,
176
- preCheck,
177
- color,
178
- swerv,
179
- darkMode,
180
- returnLink,
181
- preferredPlatform,
182
- autoFetch,
183
- inferenceData,
184
- textLayout,
185
- textColor,
186
- proofMode,
187
- webpageName,
188
- debug,
189
- testMode,
190
- requestData,
191
- onPress,
192
- primaryAuthOnly,
193
- useNewWelcomeFlow,
194
- });
195
-
196
- return (
197
- <>
198
- <View>
199
- <TouchableOpacity
200
- style={[
201
- styles.button,
202
- buttonType === 'pill' && styles.pillButton,
203
- hasStroke && styles.strokedButton,
204
- {
205
- width: buttonWidth,
206
- height: buttonHeight,
207
- },
208
- swerv && styles.swervButton,
209
- !enabled && styles.disabledButton
210
- ]}
211
- onPress={handlePress}
212
- disabled={!enabled || isLoading}
213
- onPressIn={() => setIsPressed(true)}
214
- onPressOut={() => setIsPressed(false)}
215
- >
216
- <LinearGradient
217
- colors={['#f5e7c1', '#C7A047', '#8B6914']}
218
- start={{x: 0, y: 0}}
219
- end={{x: 1, y: 0}}
220
- style={{
221
- position: 'absolute',
222
- left: 0,
223
- right: 0,
224
- top: 0,
225
- bottom: 0,
226
- borderRadius: buttonType === 'pill' ? 24 : 8,
227
- }}
228
- />
229
-
230
- {isLoading ? (
231
- <ActivityIndicator
232
- size="small"
233
- color="#FFFFFF"
234
- />
235
- ) : (
236
- <View style={styles.buttonContent}>
237
- <View style={styles.logoContainer}>
238
- <Image
239
- source={require('../assets/images/onairos_logo.png')}
240
- style={styles.logoImage}
241
- resizeMode="contain"
242
- />
243
- </View>
244
- <Text style={[styles.buttonText, { color: '#FFFFFF' }]}>
245
- {getButtonText()}
246
- </Text>
247
- </View>
248
- )}
249
- </TouchableOpacity>
250
- </View>
251
-
252
- {/* Onboarding Modal - Choose between new WelcomeScreen or legacy UniversalOnboarding */}
253
- {useNewWelcomeFlow ? (
254
- <WelcomeScreen
255
- visible={showOnboarding}
256
- onClose={handleOnboardingClose}
257
- onComplete={handleOnboardingComplete}
258
- />
259
- ) : (
260
- <UniversalOnboarding
261
- visible={showOnboarding}
262
- onClose={handleOnboardingClose}
263
- AppName={AppName}
264
- requestData={requestData || {
265
- Small: { type: 'Small', descriptions: 'Basic tier', reward: 'Free access' },
266
- Medium: { type: 'Medium', descriptions: 'Standard tier', reward: 'Premium features' },
267
- Large: { type: 'Large', descriptions: 'Premium tier', reward: 'Full personalization' }
268
- }}
269
- returnLink={returnLink || 'onairosevents://auth/callback'}
270
- onComplete={handleOnboardingComplete}
271
- debug={debug}
272
- test={testMode}
273
- preferredPlatform={preferredPlatform}
274
- primaryAuthOnly={primaryAuthOnly}
275
- />
276
- )}
277
- </>
278
- );
279
- });
280
-
281
- const styles = StyleSheet.create({
282
- button: {
283
- flexDirection: 'row',
284
- alignItems: 'center',
285
- justifyContent: 'center',
286
- paddingVertical: 12,
287
- paddingHorizontal: 16,
288
- borderRadius: 8,
289
- shadowColor: '#000',
290
- shadowOffset: { width: 0, height: 2 },
291
- shadowOpacity: 0.2,
292
- shadowRadius: 4,
293
- elevation: 3,
294
- overflow: 'hidden',
295
- },
296
- buttonContent: {
297
- flexDirection: 'row',
298
- alignItems: 'center',
299
- justifyContent: 'center',
300
- },
301
- logoContainer: {
302
- width: 24,
303
- height: 24,
304
- // borderRadius: 12, // Removed to eliminate circle shape
305
- // backgroundColor: '#FFFFFF', // Removed to eliminate white background
306
- alignItems: 'center',
307
- justifyContent: 'center',
308
- marginRight: 4,
309
- },
310
- logoText: {
311
- color: '#C7A047',
312
- fontWeight: 'bold',
313
- fontSize: 14,
314
- },
315
- logoImage: {
316
- width: 20,
317
- height: 20,
318
- },
319
- pillButton: {
320
- borderRadius: 24,
321
- },
322
- strokedButton: {
323
- backgroundColor: 'transparent',
324
- borderWidth: 1,
325
- },
326
- swervButton: {
327
- transform: [{ rotate: '-2deg' }],
328
- },
329
- disabledButton: {
330
- opacity: 0.6,
331
- },
332
- buttonText: {
333
- fontSize: 16,
334
- fontWeight: '600',
335
- textAlign: 'center',
336
- },
337
- });
338
-
339
- export default OnairosButton;
package/src/index.js DELETED
@@ -1,14 +0,0 @@
1
- import OnairosButton from './components/OnairosButton';
2
- import * as AuthUtils from './utils/auth';
3
- import * as CryptoUtils from './utils/crypto';
4
- import * as ApiUtils from './utils/api';
5
-
6
- // Export the main component
7
- export default OnairosButton;
8
-
9
- // Export utilities for advanced usage
10
- export {
11
- AuthUtils,
12
- CryptoUtils,
13
- ApiUtils
14
- };