@onairos/react-native 3.7.1 → 3.7.3
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.
- package/lib/commonjs/api/index.js +219 -9
- package/lib/commonjs/assets/icons/spotify.png +0 -0
- package/lib/commonjs/assets/images/spotify.png +0 -0
- package/lib/commonjs/components/BodyText.js +27 -9
- package/lib/commonjs/components/BrandMark.js +111 -10
- package/lib/commonjs/components/CodeInput.js +116 -9
- package/lib/commonjs/components/EmailInput.js +30 -8
- package/lib/commonjs/components/GoogleButton.js +56 -9
- package/lib/commonjs/components/HeadingGroup.js +43 -9
- package/lib/commonjs/components/LLMDataInputModal.js +664 -14
- package/lib/commonjs/components/ModalHeader.js +99 -9
- package/lib/commonjs/components/ModalSheet.js +47 -9
- package/lib/commonjs/components/Onairos.js +380 -14
- package/lib/commonjs/components/OnairosButton.js +313 -13
- package/lib/commonjs/components/OnairosSignInButton.js +130 -12
- package/lib/commonjs/components/Overlay.js +465 -13
- package/lib/commonjs/components/PersonaImage.js +137 -10
- package/lib/commonjs/components/PersonaLoadingScreen.js +318 -12
- package/lib/commonjs/components/PersonalizationConsentScreen.js +467 -13
- package/lib/commonjs/components/PinCreationScreen.js +403 -12
- package/lib/commonjs/components/PinInput.js +464 -9
- package/lib/commonjs/components/PlatformConnectorsStep.js +1311 -23
- package/lib/commonjs/components/PlatformList.js +137 -10
- package/lib/commonjs/components/PlatformToggle.js +180 -9
- package/lib/commonjs/components/PrimaryButton.js +180 -10
- package/lib/commonjs/components/SignInMatchAnimation.js +197 -9
- package/lib/commonjs/components/SignInStep.js +345 -12
- package/lib/commonjs/components/UniversalOnboarding.js +2780 -30
- package/lib/commonjs/components/VerificationStep.js +176 -11
- package/lib/commonjs/components/WelcomeScreen.js +461 -22
- package/lib/commonjs/components/icons/Basicproficon.js +37 -8
- package/lib/commonjs/components/icons/Basicprofile.js +21 -8
- package/lib/commonjs/components/icons/Checkbox.js +21 -8
- package/lib/commonjs/components/icons/Checkmark.js +27 -8
- package/lib/commonjs/components/icons/Contentanalysis.js +21 -8
- package/lib/commonjs/components/icons/Contenticon.js +39 -8
- package/lib/commonjs/components/icons/EnochE.js +41 -8
- package/lib/commonjs/components/icons/Personalityicon.js +30 -8
- package/lib/commonjs/components/icons/Personalityprofile.js +21 -8
- package/lib/commonjs/components/icons/Personalitytraits.js +21 -8
- package/lib/commonjs/components/icons/Userpreferences.js +21 -8
- package/lib/commonjs/components/icons/index.js +84 -17
- package/lib/commonjs/components/onboarding/OAuthWebView.js +1754 -18
- package/lib/commonjs/components/onboarding/OnboardingHeader.js +74 -10
- package/lib/commonjs/components/onboarding/PinInput.js +283 -10
- package/lib/commonjs/components/onboarding/PlatformConnector.js +249 -11
- package/lib/commonjs/config/PLATFORM_APIS.md +849 -0
- package/lib/commonjs/config/api.js +56 -7
- package/lib/commonjs/constants/index.js +120 -7
- package/lib/commonjs/context/AuthContext.js +345 -10
- package/lib/commonjs/hooks/useConnectedAccounts.js +111 -9
- package/lib/commonjs/hooks/useConnections.js +102 -8
- package/lib/commonjs/hooks/useCredentials.js +178 -10
- package/lib/commonjs/hooks/useUserConnections.js +148 -10
- package/lib/commonjs/index.js +439 -34
- package/lib/commonjs/services/apiClient.js +298 -8
- package/lib/commonjs/services/biometricPinService.js +180 -8
- package/lib/commonjs/services/chatGPTConversationExtractor.js +155 -8
- package/lib/commonjs/services/chatGPTConversationService.js +275 -9
- package/lib/commonjs/services/claudeConversationExtractor.js +103 -8
- package/lib/commonjs/services/claudeConversationService.js +158 -9
- package/lib/commonjs/services/connectedAccountsService.js +310 -10
- package/lib/commonjs/services/googleAuthService.js +252 -11
- package/lib/commonjs/services/hingeDataExtractor.js +105 -8
- package/lib/commonjs/services/hingeDataService.js +150 -9
- package/lib/commonjs/services/imageCompressionService.js +260 -7
- package/lib/commonjs/services/instagramDataExtractor.js +126 -8
- package/lib/commonjs/services/instagramDataService.js +163 -9
- package/lib/commonjs/services/jwtStorageService.js +276 -7
- package/lib/commonjs/services/linkedinDOMExtractor.js +245 -7
- package/lib/commonjs/services/linkedinProfileService.js +222 -9
- package/lib/commonjs/services/linkedinScrapingService.js +230 -8
- package/lib/commonjs/services/llmDataStorage.js +294 -8
- package/lib/commonjs/services/mobileTrainingService.js +186 -8
- package/lib/commonjs/services/netflixDataExtractor.js +120 -8
- package/lib/commonjs/services/netflixDataService.js +198 -9
- package/lib/commonjs/services/pinEncryptionService.js +84 -8
- package/lib/commonjs/services/pinStorageUtils.js +105 -7
- package/lib/commonjs/services/platformAuthService.js +1484 -12
- package/lib/commonjs/services/sephoraDataExtractor.js +140 -8
- package/lib/commonjs/services/sephoraDataService.js +200 -9
- package/lib/commonjs/services/spotifyDataExtractor.js +148 -8
- package/lib/commonjs/services/spotifyDataService.js +241 -9
- package/lib/commonjs/services/storageService.js +404 -8
- package/lib/commonjs/services/telegramDataExtractor.js +115 -8
- package/lib/commonjs/services/telegramDataService.js +499 -9
- package/lib/commonjs/services/trainingApiHelpers.js +73 -7
- package/lib/commonjs/services/userConnectionsService.js +340 -10
- package/lib/commonjs/services/youtubeMigrationService.js +416 -10
- package/lib/commonjs/theme/index.js +250 -7
- package/lib/commonjs/types/ambient.d.js +2 -1
- package/lib/commonjs/types/declarations.d.js +2 -1
- package/lib/commonjs/types/index.js +6 -1
- package/lib/commonjs/types/node-fix.d.js +2 -1
- package/lib/commonjs/types/node-override.d.js +2 -1
- package/lib/commonjs/types/opacity.d.js +2 -1
- package/lib/commonjs/types.js +14 -1
- package/lib/commonjs/utils/Portal.js +98 -8
- package/lib/commonjs/utils/api.js +130 -9
- package/lib/commonjs/utils/assetRegistry.js +210 -35
- package/lib/commonjs/utils/auth.js +112 -9
- package/lib/commonjs/utils/connectorTests.js +613 -29
- package/lib/commonjs/utils/crypto.js +62 -8
- package/lib/commonjs/utils/debugHelper.js +64 -1
- package/lib/commonjs/utils/encryption.js +76 -7
- package/lib/commonjs/utils/eventUtils.js +288 -1
- package/lib/commonjs/utils/haptics.js +66 -9
- package/lib/commonjs/utils/imagePreloader.js +6 -1
- package/lib/commonjs/utils/networkDiagnostics.js +226 -8
- package/lib/commonjs/utils/onairosApi.js +350 -9
- package/lib/commonjs/utils/programmaticFlow.js +117 -9
- package/lib/commonjs/utils/retryHelper.js +220 -1
- package/lib/commonjs/utils/secureStorage.js +349 -10
- package/lib/commonjs/utils/webviewScripts/chatgpt.js +551 -1
- package/lib/commonjs/utils/webviewScripts/claude.js +376 -1
- package/lib/commonjs/utils/webviewScripts/hinge.js +411 -1
- package/lib/commonjs/utils/webviewScripts/index.js +698 -15
- package/lib/commonjs/utils/webviewScripts/instagram.js +454 -1
- package/lib/commonjs/utils/webviewScripts/linkedin.js +880 -1
- package/lib/commonjs/utils/webviewScripts/netflix.js +382 -1
- package/lib/commonjs/utils/webviewScripts/sephora.js +516 -1
- package/lib/commonjs/utils/webviewScripts/spotify.js +419 -1
- package/lib/commonjs/utils/webviewScripts/telegram.js +678 -1
- package/lib/module/api/index.js +211 -1
- package/lib/module/assets/icons/spotify.png +0 -0
- package/lib/module/assets/images/spotify.png +0 -0
- package/lib/module/components/BodyText.js +20 -1
- package/lib/module/components/BrandMark.js +104 -1
- package/lib/module/components/CodeInput.js +109 -1
- package/lib/module/components/EmailInput.js +23 -1
- package/lib/module/components/GoogleButton.js +49 -1
- package/lib/module/components/HeadingGroup.js +36 -1
- package/lib/module/components/LLMDataInputModal.js +656 -7
- package/lib/module/components/ModalHeader.js +92 -1
- package/lib/module/components/ModalSheet.js +39 -1
- package/lib/module/components/Onairos.js +373 -1
- package/lib/module/components/OnairosButton.js +305 -1
- package/lib/module/components/OnairosSignInButton.js +121 -1
- package/lib/module/components/Overlay.js +456 -1
- package/lib/module/components/PersonaImage.js +129 -1
- package/lib/module/components/PersonaLoadingScreen.js +310 -1
- package/lib/module/components/PersonalizationConsentScreen.js +460 -1
- package/lib/module/components/PinCreationScreen.js +396 -1
- package/lib/module/components/PinInput.js +456 -1
- package/lib/module/components/PlatformConnectorsStep.js +1302 -6
- package/lib/module/components/PlatformList.js +129 -1
- package/lib/module/components/PlatformToggle.js +173 -1
- package/lib/module/components/PrimaryButton.js +172 -1
- package/lib/module/components/SignInMatchAnimation.js +189 -1
- package/lib/module/components/SignInStep.js +338 -1
- package/lib/module/components/UniversalOnboarding.js +2770 -1
- package/lib/module/components/VerificationStep.js +168 -1
- package/lib/module/components/WelcomeScreen.js +453 -1
- package/lib/module/components/icons/Basicproficon.js +30 -1
- package/lib/module/components/icons/Basicprofile.js +14 -1
- package/lib/module/components/icons/Checkbox.js +14 -1
- package/lib/module/components/icons/Checkmark.js +20 -1
- package/lib/module/components/icons/Contentanalysis.js +14 -1
- package/lib/module/components/icons/Contenticon.js +32 -1
- package/lib/module/components/icons/EnochE.js +34 -1
- package/lib/module/components/icons/Personalityicon.js +23 -1
- package/lib/module/components/icons/Personalityprofile.js +14 -1
- package/lib/module/components/icons/Personalitytraits.js +14 -1
- package/lib/module/components/icons/Userpreferences.js +14 -1
- package/lib/module/components/icons/index.js +13 -1
- package/lib/module/components/onboarding/OAuthWebView.js +1746 -1
- package/lib/module/components/onboarding/OnboardingHeader.js +66 -1
- package/lib/module/components/onboarding/PinInput.js +274 -1
- package/lib/module/components/onboarding/PlatformConnector.js +240 -1
- package/lib/module/config/PLATFORM_APIS.md +849 -0
- package/lib/module/config/api.js +47 -1
- package/lib/module/constants/index.js +114 -1
- package/lib/module/context/AuthContext.js +335 -1
- package/lib/module/hooks/useConnectedAccounts.js +106 -1
- package/lib/module/hooks/useConnections.js +95 -1
- package/lib/module/hooks/useCredentials.js +171 -6
- package/lib/module/hooks/useUserConnections.js +140 -1
- package/lib/module/index.js +172 -1
- package/lib/module/services/apiClient.js +295 -1
- package/lib/module/services/biometricPinService.js +169 -1
- package/lib/module/services/chatGPTConversationExtractor.js +149 -1
- package/lib/module/services/chatGPTConversationService.js +268 -1
- package/lib/module/services/claudeConversationExtractor.js +97 -1
- package/lib/module/services/claudeConversationService.js +151 -1
- package/lib/module/services/connectedAccountsService.js +293 -1
- package/lib/module/services/googleAuthService.js +241 -1
- package/lib/module/services/hingeDataExtractor.js +99 -1
- package/lib/module/services/hingeDataService.js +143 -1
- package/lib/module/services/imageCompressionService.js +250 -1
- package/lib/module/services/instagramDataExtractor.js +120 -1
- package/lib/module/services/instagramDataService.js +156 -1
- package/lib/module/services/jwtStorageService.js +257 -1
- package/lib/module/services/linkedinDOMExtractor.js +234 -1
- package/lib/module/services/linkedinProfileService.js +210 -1
- package/lib/module/services/linkedinScrapingService.js +219 -1
- package/lib/module/services/llmDataStorage.js +277 -1
- package/lib/module/services/mobileTrainingService.js +173 -1
- package/lib/module/services/netflixDataExtractor.js +114 -1
- package/lib/module/services/netflixDataService.js +191 -1
- package/lib/module/services/pinEncryptionService.js +74 -6
- package/lib/module/services/pinStorageUtils.js +93 -1
- package/lib/module/services/platformAuthService.js +1461 -1
- package/lib/module/services/sephoraDataExtractor.js +134 -1
- package/lib/module/services/sephoraDataService.js +193 -1
- package/lib/module/services/spotifyDataExtractor.js +142 -1
- package/lib/module/services/spotifyDataService.js +234 -1
- package/lib/module/services/storageService.js +383 -1
- package/lib/module/services/telegramDataExtractor.js +109 -1
- package/lib/module/services/telegramDataService.js +493 -1
- package/lib/module/services/trainingApiHelpers.js +67 -1
- package/lib/module/services/userConnectionsService.js +329 -1
- package/lib/module/services/youtubeMigrationService.js +405 -1
- package/lib/module/theme/index.js +245 -1
- package/lib/module/types.js +10 -1
- package/lib/module/utils/Portal.js +90 -1
- package/lib/module/utils/api.js +118 -1
- package/lib/module/utils/assetRegistry.js +200 -34
- package/lib/module/utils/auth.js +100 -1
- package/lib/module/utils/connectorTests.js +600 -27
- package/lib/module/utils/crypto.js +54 -1
- package/lib/module/utils/debugHelper.js +54 -1
- package/lib/module/utils/encryption.js +67 -1
- package/lib/module/utils/eventUtils.js +270 -1
- package/lib/module/utils/haptics.js +59 -8
- package/lib/module/utils/imagePreloader.js +3 -1
- package/lib/module/utils/networkDiagnostics.js +217 -1
- package/lib/module/utils/onairosApi.js +333 -1
- package/lib/module/utils/programmaticFlow.js +111 -1
- package/lib/module/utils/retryHelper.js +211 -1
- package/lib/module/utils/secureStorage.js +330 -6
- package/lib/module/utils/webviewScripts/chatgpt.js +545 -1
- package/lib/module/utils/webviewScripts/claude.js +370 -1
- package/lib/module/utils/webviewScripts/hinge.js +405 -1
- package/lib/module/utils/webviewScripts/index.js +434 -1
- package/lib/module/utils/webviewScripts/instagram.js +448 -1
- package/lib/module/utils/webviewScripts/linkedin.js +874 -1
- package/lib/module/utils/webviewScripts/netflix.js +376 -1
- package/lib/module/utils/webviewScripts/sephora.js +510 -1
- package/lib/module/utils/webviewScripts/spotify.js +413 -1
- package/lib/module/utils/webviewScripts/telegram.js +672 -1
- package/package.json +2 -2
|
@@ -1 +1,453 @@
|
|
|
1
|
-
import React,{useEffect,useRef,useState}from'react';import{View,StyleSheet,Modal,TouchableWithoutFeedback,Animated,Easing,StatusBar,Alert}from'react-native';import{triggerHaptic,HapticType}from'../utils/haptics';import{sendEmailVerificationCode,confirmEmailVerificationCode}from'../services/authService';import{signInWithGoogle}from'../services/googleAuthService';import AsyncStorage from'@react-native-async-storage/async-storage';import{isApiKeyInitialized,getApiConfig}from'../services/apiKeyService';import{getConnectedAccountsSmart}from'../services/connectedAccountsService';import _0x51bd59 from'./ModalSheet';import _0x51b795 from'./ModalHeader';import _0x487127 from'./BrandMark';function _0x199f(){const _0x560d33=['BxQgC','Onairos\x20SDK\x20not\x20initialized.\x20Developers\x20must\x20call\x20initializeApiKey()\x20with\x20a\x20valid\x20API\x20key\x20before\x20using\x20SDK\x20components.','oFKRi','gXMwv','...','✅\x20WelcomeScreen\x20animations\x20completed','PsKGY','🎬\x20Starting\x20WelcomeScreen\x20animations','🔄\x20Resetting\x20WelcomeScreen\x20animations','welcome','reviewer@apple.com','Invalid\x20verification\x20code.\x20Please\x20try\x20again.','mXOWl','2|4|1|3|0','✅\x20Stored\x20reviewer\x20bypass\x20markers\x20for\x20email\x20bypass','onairos_user','true','khdxe','UsROv','📧\x20Sending\x20verification\x20code\x20to:','kEMSV','✅\x20Verification\x20code\x20sent\x20successfully','❌\x20Failed\x20to\x20send\x20verification\x20code:','dYZZx','WjCWB','❌\x20Error\x20sending\x20verification\x20code:','Network\x20error.\x20Please\x20check\x20your\x20connection\x20and\x20try\x20again.','fKbIa','signin','Verification\x20failed.\x20Please\x20try\x20again.','NzsEc','qtDEq','👤\x20Returning\x20user\x20detected\x20via\x20Google\x20Sign-In','aYlEo','CVQYX','returning-user-token','LXfKk','rShiE','ℹ️\x20No\x20existing\x20connections\x20found\x20-\x20proceeding\x20to\x20platforms\x20step','⚠️\x20Could\x20not\x20fetch\x20existing\x20connections,\x20proceeding\x20to\x20platforms:','bYfLF','eIPuR','✅\x20Email\x20verification\x20successful','zHypL','❌\x20Error\x20verifying\x20email\x20code:','ZviOJ','fFUss','PlHWc','QibQi','verification','ftOMw','zzhgF','ByRzO','❌\x20Error\x20resending\x20verification\x20code:','XtzWr','❌\x20Unexpected\x20Google\x20Sign-In\x20error:','Connected\x20platforms:','onboarding-skipped-token','wzXeB','🔍\x20Reviewer\x20bypass\x20triggered\x20from\x20platforms\x20screen','RWxbQ','kRypW','onboarding-complete-token','nfTwT','slide','rgba(0,0,0,0.5)','light-content','Complete\x20Setup','MFomk','NhQMO','Value','current','EOygW','TRuwn','yiujm','rSwgk','pXjrI','npplS','error','BwscI','alert','VZKkg','ftRXr','wPZiL','uyQek','✅\x20[WelcomeScreen]\x20SDK\x20initialized\x20with\x20API\x20key:','nzHAF','DfPwA','VmFkz','apiKey','substring','QiBst','GZxHq','log','🔍\x20WelcomeScreen\x20visibility\x20changed:','tzaxh','message','dVmHh','IrkJI','out','timing','start','bkiDt','ejhZM','setValue','BUTTON_PRESS','GsQzO','parallel','cubic','kXXhR','cWPyR','AejLG','qCaMN','aVPBA','GCGHv','mpDRX','vevoI','reviewer@bypass.com','🔍\x20Reviewer\x20bypass\x20detected\x20in\x20WelcomeScreen','yzqVZ','split','AlUhQ','setItem','viWEB','ZGCWk','nkWeg','mRBLj','RpCGL','xzQni','atkjD','UxIbK','success','CIgoF','jLSGw','ZsuVg','rhNAo','KQXEY','lZujO','WRjCE','oster','OihCl','SxXdS','SwkPY','JHzuP','aPfcR','SiQOs','jAQHX','cxfUV','tjLVs','orVZV','nHwXN','user','TVTle','email','nWMoH','isNewUser','gDBKG','nGBvA','MkxJm','ewMIR','nnIKk','JobZY','oAHNT','boTFO','length','✅\x20Found\x20','getItem','tSIet','MISZS','SCnIN','mOKMC','FIZVI','uLmPf','HdxbA','wAxLB','WiKgv','PpJDl','cancelled','txzYL','OZZtl','❌\x20Google\x20Sign-In\x20failed:','Yyoeh','dLExe','hxOef','yHQEN','ivIOP','HaSoc','vwwID','DQJcy','HNNpj','SHJgx','olruT','ufCIL','🔍\x20Verifying\x20email\x20code:','platforms','HGhcc','fzRzG','EeHnu','WANhp','blMvI','hASch','reviewer-bypass-token','xeUHN','onQdE','BqTbh','OkgXt','VeGvI','GKOld','zFNif','PjohE','Utkyu','🔄\x20Resending\x20verification\x20code\x20to:','LBLBh','HXlzm','enSTb','ZkIOr','pJnqj','UtUzl','EAkvS','ycuhK','mumvN','ToVrQ','TzNzS','erYQe','eItRK','CWMek','Google\x20Sign-In\x20failed.\x20Please\x20try\x20again.','lkcyH','then','XVyFa','FlgBE','ogURN','oDJiD','dLqCK','IkPkh','sAHQA','iCRQt','mkusY','kZEoh','XHpMr','AfvXY','iHlJN','kNfZS','EcHPC','onairos_jwt_token','lNQWC','qHPwo','pQfJH','KqUOv','fJLsk','pcNWK','hjFiR','BeKbJ','rvaCT','IWowJ','HFMxb','ZPxym','fFWZi','createElement','uvltX','LwEHh','ZrwUC','View','backdrop','backdropTouchable','brandMarkContainer','headingContainer','bodyContainer','spacer','dIxan','AhLnQ','DyKus','CCSgy','content','buttonContainer','create','transparent','85%','center','100%'];_0x199f=function(){return _0x560d33;};return _0x199f();}import _0x5c71e5 from'./HeadingGroup';function _0x476b(_0x199fc4,_0x476b42){_0x199fc4=_0x199fc4-0x0;const _0x41893b=_0x199f();let _0x3cca2e=_0x41893b[_0x199fc4];return _0x3cca2e;}import _0x82907c from'./BodyText';import _0x15954f from'./PrimaryButton';import _0x3f46cf from'./SignInStep';import _0x3ec1f2 from'./VerificationStep';const WelcomeScreen=({visible:_0x392da7,onClose:_0x272be3,onComplete:_0x1131f0})=>{const _0x15d22d={'pXjrI':function(_0x35ef81,_0x491dd3){return _0x35ef81(_0x491dd3);},'TRuwn':function(_0x11323c){return _0x11323c();},'nzHAF':function(_0xfc684e,_0x4139e5){return _0xfc684e===_0x4139e5;},'yiujm':_0x476b(0x0),'npplS':_0x476b(0x1),'BwscI':'❌\x20[WelcomeScreen]\x20SDK\x20NOT\x20INITIALIZED:','zFNif':'SDK\x20Not\x20Initialized','VZKkg':'The\x20Onairos\x20SDK\x20requires\x20initialization\x20with\x20a\x20valid\x20API\x20key.\x0a\x0aDevelopers:\x20Please\x20call\x20initializeApiKey()\x20before\x20using\x20Onairos\x20components.\x0a\x0aGet\x20your\x20API\x20key\x20from\x20https://dashboard.onairos.uk','wPZiL':_0x476b(0x2),'uyQek':_0x476b(0x3),'mFHpH':function(_0x503183,_0x239b7c){return _0x503183+_0x239b7c;},'DfPwA':function(_0x2fe6b7,_0x1653c0){return _0x2fe6b7===_0x1653c0;},'VmFkz':function(_0x166297,_0x39c929){return _0x166297===_0x39c929;},'QiBst':_0x476b(0x4),'GZxHq':'❌\x20Failed\x20to\x20resend\x20verification\x20code:','kczft':_0x476b(0x5),'WKtAN':function(_0x1859bb,_0x48d064){return _0x1859bb&&_0x48d064;},'pmdVK':_0x476b(0x6),'tzaxh':'BiPLe','IrkJI':_0x476b(0x7),'ejhZM':_0x476b(0x8),'GsQzO':function(_0x2813b6,_0x1d265b){return _0x2813b6(_0x1d265b);},'UqAkR':_0x476b(0x9),'kXXhR':function(_0x50f948,_0x4b57d3){return _0x50f948(_0x4b57d3);},'EOygW':function(_0x260180,_0x80627d,_0x536c62){return _0x260180(_0x80627d,_0x536c62);},'mpDRX':_0x476b(0xa),'HGhcc':'❌\x20Email\x20verification\x20failed:','vevoI':function(_0x32ef1e,_0xdcb5d){return _0x32ef1e(_0xdcb5d);},'xzQni':_0x476b(0xb),'cWPyR':'❌\x20Failed\x20to\x20store\x20reviewer\x20bypass\x20markers:','AejLG':'reviewer-bypass-token','FIZVI':function(_0xaea52a,_0x4c6a90){return _0xaea52a||_0x4c6a90;},'qCaMN':function(_0x3856bc,_0x16ae74){return _0x3856bc===_0x16ae74;},'GCGHv':_0x476b(0xc),'ZGCWk':function(_0x2c4e01,_0x412649){return _0x2c4e01(_0x412649);},'vwwID':function(_0x101d0d,_0x45d961){return _0x101d0d===_0x45d961;},'yzqVZ':_0x476b(0xd),'AlUhQ':'platforms','BQzUE':_0x476b(0xe),'viWEB':_0x476b(0xf),'LdPlS':_0x476b(0x10),'nkWeg':'onairos_jwt_token','mRBLj':_0x476b(0x11),'RpCGL':_0x476b(0x12),'TMxDb':function(_0x7697a,_0x13fdbe){return _0x7697a(_0x13fdbe);},'atkjD':_0x476b(0x13),'UxIbK':function(_0xf3be25,_0xfc7a05){return _0xf3be25(_0xfc7a05);},'CIgoF':function(_0x4093a0,_0x2d69f0){return _0x4093a0!==_0x2d69f0;},'jLSGw':_0x476b(0x14),'ZsuVg':'KNpxR','rhNAo':_0x476b(0x15),'wmjEu':_0x476b(0x16),'WRjCE':'Failed\x20to\x20send\x20verification\x20code.\x20Please\x20try\x20again.','oster':_0x476b(0x17),'OihCl':_0x476b(0x18),'SxXdS':_0x476b(0x19),'Rznpz':_0x476b(0x1a),'SwkPY':function(_0x1fa686,_0x46c1b4){return _0x1fa686===_0x46c1b4;},'JHzuP':_0x476b(0x1b),'tjLVs':function(_0x47d9e5,_0x18d607){return _0x47d9e5(_0x18d607);},'ewMIR':_0x476b(0x1c),'OZZtl':'✅\x20Verification\x20code\x20resent\x20successfully','dLExe':function(_0x3d2ad1,_0x30d4c5){return _0x3d2ad1(_0x30d4c5);},'hxOef':_0x476b(0x1d),'cxfUV':function(_0x56c2a6,_0x496b5b){return _0x56c2a6(_0x496b5b);},'orVZV':function(_0x3f9d00,_0x3d1148){return _0x3f9d00!==_0x3d1148;},'nHwXN':_0x476b(0x1e),'TVTle':'✅\x20Google\x20Sign-In\x20successful:','nWMoH':'🔍\x20Is\x20new\x20user?','gDBKG':function(_0x3a1f23,_0x52b371){return _0x3a1f23===_0x52b371;},'nGBvA':function(_0x342e0f,_0x28e44d){return _0x342e0f!==_0x28e44d;},'MkxJm':_0x476b(0x1f),'nnIKk':_0x476b(0x20),'JobZY':_0x476b(0x21),'oAHNT':function(_0x33b97f,_0x3fff6b,_0x123428,_0x59ec51){return _0x33b97f(_0x3fff6b,_0x123428,_0x59ec51);},'boTFO':function(_0x435491,_0xb03e2c){return _0x435491>_0xb03e2c;},'tSIet':function(_0x3f29eb,_0x5b8b68){return _0x3f29eb===_0x5b8b68;},'MISZS':_0x476b(0x22),'uLmPf':_0x476b(0x23),'HdxbA':_0x476b(0x24),'wAxLB':_0x476b(0x25),'WiKgv':function(_0x48d6a1){return _0x48d6a1();},'qcAob':_0x476b(0x26),'PpJDl':_0x476b(0x27),'MFomk':function(_0x58953c,_0x403d12){return _0x58953c(_0x403d12);},'txzYL':_0x476b(0x28),'AZanx':'cjoVP','Yyoeh':_0x476b(0x29),'yHQEN':function(_0x5b8aea,_0x5c3b6d){return _0x5b8aea(_0x5c3b6d);},'ivIOP':'Google\x20Sign-In\x20failed.\x20Please\x20try\x20again.','HaSoc':function(_0x1e1bcc,_0x3c6d6a){return _0x1e1bcc(_0x3c6d6a);},'olruT':_0x476b(0x2a),'BElKt':function(_0x1b313f,_0x217648){return _0x1b313f(_0x217648);},'DQJcy':_0x476b(0x2b),'HNNpj':function(_0x8215ad,_0x2ac951){return _0x8215ad(_0x2ac951);},'SHJgx':function(_0x2e8fa0,_0xdfcc5f){return _0x2e8fa0(_0xdfcc5f);},'ufCIL':function(_0x37871f,_0x4cdb91){return _0x37871f(_0x4cdb91);},'iCRQt':function(_0x3f234c,_0x27c080,_0x5ac57f){return _0x3f234c(_0x27c080,_0x5ac57f);},'fzRzG':_0x476b(0x2c),'BNoQx':_0x476b(0x2d),'EeHnu':_0x476b(0x2e),'WANhp':function(_0x2d94c5,_0x59bfbb){return _0x2d94c5(_0x59bfbb);},'hASch':function(_0xa88c1a,_0xb0024d){return _0xa88c1a(_0xb0024d);},'xeUHN':function(_0x3eba5d,_0x454670){return _0x3eba5d!==_0x454670;},'onQdE':_0x476b(0x2f),'BqTbh':_0x476b(0x30),'OkgXt':function(_0x231f0b,_0x114132){return _0x231f0b(_0x114132);},'VeGvI':_0x476b(0x31),'ToVrQ':'❌\x20Google\x20Sign-In\x20failed:','zhMvK':function(_0x253248){return _0x253248();},'lyKvJ':function(_0x423b6d,_0x299d7f){return _0x423b6d(_0x299d7f);},'PjohE':function(_0x1dddcc,_0x332414){return _0x1dddcc(_0x332414);},'Utkyu':_0x476b(0x32),'jnASY':function(_0x2d35ac,_0xbe640b){return _0x2d35ac(_0xbe640b);},'LBLBh':function(_0x1ecf5b,_0x9b660e){return _0x1ecf5b!==_0x9b660e;},'HXlzm':_0x476b(0x33),'ycuhK':_0x476b(0x34),'mumvN':_0x476b(0x35),'TzNzS':_0x476b(0x36),'HQYOw':function(_0x5aca12,_0x3eddd2){return _0x5aca12(_0x3eddd2);},'XVyFa':function(_0x322a78,_0x4307cb,_0x421a39){return _0x322a78(_0x4307cb,_0x421a39);},'CWMek':_0x476b(0x37),'sAHQA':function(_0x187af5,_0x47fd4b){return _0x187af5(_0x47fd4b);},'lkcyH':_0x476b(0x38),'uiFfn':function(_0xf54a7a,_0x3d6660){return _0xf54a7a!==_0x3d6660;},'oDJiD':function(_0x557300){return _0x557300();},'YdBBu':_0x476b(0x39),'mkusY':function(_0x3a61f0){return _0x3a61f0();},'kZEoh':_0x476b(0x3a),'XHpMr':'tZFxX','AfvXY':_0x476b(0x3b),'iHlJN':'✅\x20Stored\x20reviewer\x20bypass\x20markers\x20for\x20new\x20UI','kNfZS':'FsWCU','etmVX':function(_0x53d9d0,_0x128dd2){return _0x53d9d0!==_0x128dd2;},'pQfJH':_0x476b(0x3c),'KqUOv':_0x476b(0x3d),'fJLsk':function(_0x27e4f3,_0x380326,_0x5ebf6a){return _0x27e4f3(_0x380326,_0x5ebf6a);},'pcNWK':function(_0x26db1f){return _0x26db1f();},'rvaCT':function(_0x42afd9,_0x185452){return _0x42afd9||_0x185452;},'IWowJ':_0x476b(0x3e),'fFWZi':function(_0x244da7){return _0x244da7();},'NhQMO':function(_0x1ceabf,_0x1f4dd1){return _0x1ceabf(_0x1f4dd1);},'hjFiR':function(_0x2cbc44,_0xd0e333){return _0x2cbc44===_0xd0e333;},'BeKbJ':_0x476b(0x3f),'uvltX':_0x476b(0x40),'LwEHh':_0x476b(0x41),'ZrwUC':_0x476b(0x42),'IOkDB':function(_0x27faed,_0x52cecf){return _0x27faed===_0x52cecf;},'dIxan':'Get\x20Started','AhLnQ':'welcome-get-started-button','DyKus':function(_0x1846e3,_0x2ba431){return _0x1846e3===_0x2ba431;},'CCSgy':function(_0x231dc0,_0x356e3b){return _0x231dc0===_0x356e3b;},'hRfLo':_0x476b(0x43),'TcJmQ':'complete-setup-button'},[_0x499823,_0x502f43]=_0x15d22d[_0x476b(0x44)](useState,_0x15d22d['UqAkR']),[_0x2d26ec,_0x3a6578]=_0x15d22d[_0x476b(0x45)](useState,''),[_0x6ee87f,_0x1ca1e2]=_0x15d22d['yHQEN'](useState,![]),[_0x45627f,_0x5729d7]=_0x15d22d['yHQEN'](useState,''),[_0x577899,_0x5a954f]=_0x15d22d['BElKt'](useState,![]),_0x154724=_0x15d22d['SHJgx'](useRef,new Animated[(_0x476b(0x46))](0x1))[_0x476b(0x47)],_0x30dce5=useRef(new Animated[(_0x476b(0x46))](0x0))[_0x476b(0x47)];_0x15d22d[_0x476b(0x48)](useEffect,()=>{const _0x4e6958={'ftRXr':function(_0xbb1143){return _0x15d22d[_0x476b(0x49)](_0xbb1143);}};if(_0x392da7){if(_0x15d22d['nzHAF'](_0x15d22d[_0x476b(0x4a)],_0x476b(0x4b)))_0x15d22d[_0x476b(0x4c)](_0x2f9cf4,![]);else{const _0x40e46e=isApiKeyInitialized();_0x15d22d['pXjrI'](_0x5a954f,_0x40e46e);if(!_0x40e46e){const _0x4b8054=_0x15d22d[_0x476b(0x4d)];console[_0x476b(0x4e)](_0x15d22d[_0x476b(0x4f)],_0x4b8054),Alert[_0x476b(0x50)](_0x15d22d['zFNif'],_0x15d22d[_0x476b(0x51)],[{'text':'OK','onPress':()=>{_0x4e6958[_0x476b(0x52)](_0x272be3);}}]);}else{if(_0x15d22d[_0x476b(0x53)]===_0x15d22d[_0x476b(0x54)])_0x596a56(![]);else{var _0x7b351;const _0x306e1c=_0x15d22d[_0x476b(0x49)](getApiConfig);console['log'](_0x476b(0x55),_0x15d22d['mFHpH'](_0x15d22d[_0x476b(0x56)](_0x306e1c,null)||_0x15d22d[_0x476b(0x57)](_0x306e1c,void 0x0)||_0x15d22d[_0x476b(0x58)](_0x7b351=_0x306e1c[_0x476b(0x59)],null)||_0x15d22d[_0x476b(0x57)](_0x7b351,void 0x0)?void 0x0:_0x7b351[_0x476b(0x5a)](0x0,0x8),_0x15d22d[_0x476b(0x5b)]));}}}}},[_0x392da7,_0x272be3]),useEffect(()=>{const _0x328b1a={'EwVFw':_0x15d22d[_0x476b(0x5c)],'dVmHh':function(_0x1cb0c4,_0x2ff9ec){return _0x1cb0c4(_0x2ff9ec);},'Imhms':'Failed\x20to\x20resend\x20verification\x20code.\x20Please\x20try\x20again.','bkiDt':_0x15d22d['kczft']};console[_0x476b(0x5d)](_0x476b(0x5e),_0x392da7),_0x15d22d['WKtAN'](_0x392da7,_0x577899)?_0x15d22d[_0x476b(0x57)](_0x15d22d['pmdVK'],_0x15d22d[_0x476b(0x5f)])?(_0xfe79f3[_0x476b(0x5d)](_0x328b1a['EwVFw'],_0x151f2a[_0x476b(0x60)]),_0x328b1a[_0x476b(0x61)](_0x96e620,_0x42166b[_0x476b(0x60)]||_0x328b1a['Imhms'])):(console[_0x476b(0x5d)](_0x15d22d[_0x476b(0x62)]),Animated['parallel']([Animated['timing'](_0x154724,{'toValue':0x0,'duration':0x190,'easing':Easing[_0x476b(0x63)](Easing['cubic']),'useNativeDriver':!![]}),Animated[_0x476b(0x64)](_0x30dce5,{'toValue':0x1,'duration':0x12c,'useNativeDriver':!![]})])[_0x476b(0x65)](()=>{console[_0x476b(0x5d)](_0x328b1a[_0x476b(0x66)]);})):(console[_0x476b(0x5d)](_0x15d22d[_0x476b(0x67)]),_0x154724[_0x476b(0x68)](0x1),_0x30dce5[_0x476b(0x68)](0x0));},[_0x392da7,_0x577899]);const _0x5e4566=()=>{triggerHaptic(HapticType[_0x476b(0x69)]),_0x15d22d[_0x476b(0x6a)](_0x502f43,_0x15d22d['UqAkR']),Animated[_0x476b(0x6b)]([Animated['timing'](_0x154724,{'toValue':0x1,'duration':0x12c,'easing':Easing['in'](Easing[_0x476b(0x6c)]),'useNativeDriver':!![]}),Animated[_0x476b(0x64)](_0x30dce5,{'toValue':0x0,'duration':0xfa,'useNativeDriver':!![]})])[_0x476b(0x65)](()=>{_0x15d22d[_0x476b(0x49)](_0x272be3);});},_0x8f0af9=()=>{_0x15d22d[_0x476b(0x6d)](triggerHaptic,HapticType[_0x476b(0x69)]),_0x15d22d[_0x476b(0x6d)](_0x502f43,_0x476b(0x1c));},_0x4c9d19=async _0x5172c0=>{const _0x1649f5={'KQXEY':_0x15d22d[_0x476b(0x6e)],'tIoEF':_0x15d22d[_0x476b(0x6f)],'RgGET':_0x476b(0xa),'lZujO':function(_0x247d72){return _0x247d72();},'SiQOs':function(_0x232cba,_0x24654b,_0x1cc6c7){return _0x15d22d[_0x476b(0x48)](_0x232cba,_0x24654b,_0x1cc6c7);},'tqAjz':function(_0xf7a912,_0x31cdbe){return _0x15d22d['FIZVI'](_0xf7a912,_0x31cdbe);},'jAQHX':_0x476b(0x3e)};if(_0x15d22d[_0x476b(0x70)](_0x476b(0x71),_0x15d22d[_0x476b(0x72)]))_0x15d22d[_0x476b(0x48)](_0x22a4c4,'reviewer-bypass-token',_0x15d22d[_0x476b(0x73)]);else{_0x15d22d['ZGCWk'](triggerHaptic,HapticType[_0x476b(0x69)]),_0x1ca1e2(!![]),_0x15d22d[_0x476b(0x74)](_0x5729d7,'');try{if(_0x15d22d['vwwID'](_0x5172c0,_0x476b(0x75))){console['log'](_0x476b(0x76));try{const _0x33f0b7=_0x15d22d[_0x476b(0x77)][_0x476b(0x78)]('|');let _0x4c6dc0=0x0;while(!![]){switch(_0x33f0b7[_0x4c6dc0++]){case'0':_0x15d22d[_0x476b(0x74)](_0x502f43,_0x15d22d[_0x476b(0x79)]);continue;case'1':console[_0x476b(0x5d)](_0x15d22d['BQzUE']);continue;case'2':await AsyncStorage[_0x476b(0x7a)](_0x15d22d[_0x476b(0x7b)],_0x15d22d['LdPlS']);continue;case'3':_0x15d22d[_0x476b(0x7c)](_0x3a6578,_0x5172c0);continue;case'4':await AsyncStorage['setItem'](_0x15d22d[_0x476b(0x7d)],_0x15d22d[_0x476b(0x6f)]);continue;}break;}}catch(_0x5ea0e6){_0x15d22d[_0x476b(0x70)](_0x15d22d[_0x476b(0x7e)],_0x15d22d[_0x476b(0x7f)])?(_0x2f9acc['log'](_0x15d22d['HGhcc'],_0x355a61[_0x476b(0x60)]),_0x15d22d[_0x476b(0x74)](_0x1967d6,_0x4a9b1d[_0x476b(0x60)]||_0x15d22d[_0x476b(0x80)])):(console[_0x476b(0x4e)](_0x15d22d['cWPyR'],_0x5ea0e6),_0x15d22d['TMxDb'](_0x3a6578,_0x5172c0),_0x502f43(_0x15d22d[_0x476b(0x79)]));}_0x1ca1e2(![]);return;}console[_0x476b(0x5d)](_0x15d22d[_0x476b(0x81)],_0x5172c0);const _0x445e28=await _0x15d22d[_0x476b(0x82)](sendEmailVerificationCode,_0x5172c0);_0x445e28[_0x476b(0x83)]?_0x15d22d[_0x476b(0x84)](_0x15d22d[_0x476b(0x85)],_0x15d22d[_0x476b(0x86)])?(console[_0x476b(0x5d)](_0x15d22d[_0x476b(0x87)]),_0x3a6578(_0x5172c0),_0x15d22d[_0x476b(0x6a)](_0x502f43,'verification')):(_0x2ab703[_0x476b(0x4e)](_0x1649f5[_0x476b(0x88)],_0x1c8838),_0x592ad6?_0x3bbdac(_0x1649f5['tIoEF'],_0x1649f5['RgGET']):_0x1649f5[_0x476b(0x89)](_0x53a914)):(console[_0x476b(0x5d)](_0x15d22d['wmjEu'],_0x445e28[_0x476b(0x60)]),_0x15d22d[_0x476b(0x6d)](_0x5729d7,_0x445e28[_0x476b(0x60)]||_0x15d22d[_0x476b(0x8a)]));}catch(_0x34082d){_0x15d22d[_0x476b(0x84)](_0x15d22d[_0x476b(0x8b)],_0x15d22d[_0x476b(0x8c)])?(console[_0x476b(0x4e)](_0x15d22d[_0x476b(0x8d)],_0x34082d),_0x5729d7(_0x15d22d['Rznpz'])):_0x449505();}finally{_0x15d22d[_0x476b(0x8e)](_0x15d22d[_0x476b(0x8f)],_0x476b(0x90))?_0x1649f5[_0x476b(0x91)](_0x4c6f59,_0x1649f5['tqAjz'](_0x56acea,_0x1649f5[_0x476b(0x92)]),_0x111297):_0x15d22d[_0x476b(0x7c)](_0x1ca1e2,![]);}}},_0x3e8901=async()=>{const _0x59a100={'mOKMC':'✅\x20WelcomeScreen\x20animations\x20completed','SCnIN':_0x15d22d['IrkJI'],'ppQjV':_0x15d22d['rhNAo'],'bVPKj':function(_0x695260,_0x4ca4ba){return _0x15d22d[_0x476b(0x93)](_0x695260,_0x4ca4ba);}};triggerHaptic(HapticType[_0x476b(0x69)]),_0x15d22d['UxIbK'](_0x1ca1e2,!![]),_0x15d22d[_0x476b(0x94)](_0x5729d7,'');try{if(_0x15d22d[_0x476b(0x95)](_0x15d22d[_0x476b(0x96)],'NzsEc'))_0x4f3737[_0x476b(0x5d)](_0x15d22d['ejhZM']),_0x56beb8[_0x476b(0x68)](0x1),_0x35bef4[_0x476b(0x68)](0x0);else{console[_0x476b(0x5d)]('🔗\x20Initiating\x20Google\x20Sign-In');const _0x181324=await _0x15d22d['TRuwn'](signInWithGoogle);if(_0x181324[_0x476b(0x83)]&&_0x181324[_0x476b(0x97)]){console['log'](_0x15d22d[_0x476b(0x98)],_0x181324[_0x476b(0x97)][_0x476b(0x99)]),console[_0x476b(0x5d)](_0x15d22d[_0x476b(0x9a)],_0x181324[_0x476b(0x9b)]),_0x15d22d['dLExe'](_0x3a6578,_0x181324[_0x476b(0x97)]['email']);if(_0x15d22d[_0x476b(0x9c)](_0x181324[_0x476b(0x9b)],![])){if(_0x15d22d[_0x476b(0x9d)](_0x15d22d[_0x476b(0x9e)],_0x476b(0x1f)))_0x15d22d[_0x476b(0x94)](_0x4fd707,_0x227835['BUTTON_PRESS']),_0x15d22d[_0x476b(0x6a)](_0x1a063c,_0x15d22d[_0x476b(0x9f)]);else{console[_0x476b(0x5d)](_0x15d22d[_0x476b(0xa0)]);try{if(_0x15d22d[_0x476b(0x57)](_0x15d22d[_0x476b(0xa1)],_0x15d22d[_0x476b(0xa1)])){const _0x610d13=_0x181324[_0x476b(0x97)]['username']||_0x181324['user'][_0x476b(0x99)][_0x476b(0x78)]('@')[0x0],_0x56385f=await _0x15d22d[_0x476b(0xa2)](getConnectedAccountsSmart,_0x181324[_0x476b(0x97)][_0x476b(0x99)],_0x181324[_0x476b(0x97)]['id'],_0x610d13);if(_0x56385f&&_0x15d22d[_0x476b(0xa3)](_0x56385f[_0x476b(0xa4)],0x0)){console[_0x476b(0x5d)](_0x476b(0xa5)+_0x56385f[_0x476b(0xa4)]+'\x20existing\x20connections\x20-\x20completing\x20directly');const _0x318ae6=await AsyncStorage[_0x476b(0xa6)](_0x15d22d[_0x476b(0x7d)]);_0x1131f0?_0x15d22d[_0x476b(0xa7)](_0x15d22d[_0x476b(0xa8)],'XZCEj')?(_0x2917ac[_0x476b(0x5d)](_0x59a100[_0x476b(0xa9)]),Animated[_0x476b(0x6b)]([Animated[_0x476b(0x64)](_0x53d4c0,{'toValue':0x0,'duration':0x190,'easing':_0x6969f8[_0x476b(0x63)](_0x2f45a8[_0x476b(0x6c)]),'useNativeDriver':!![]}),Animated['timing'](_0x428f6f,{'toValue':0x1,'duration':0x12c,'useNativeDriver':!![]})])[_0x476b(0x65)](()=>{_0x2ef47f[_0x476b(0x5d)](_0x59a100[_0x476b(0xaa)]);})):_0x15d22d[_0x476b(0x48)](_0x1131f0,_0x15d22d[_0x476b(0xab)](_0x318ae6,_0x15d22d[_0x476b(0xac)]),_0x181324[_0x476b(0x97)]['email']):_0x15d22d[_0x476b(0x70)](_0x15d22d[_0x476b(0xad)],_0x15d22d[_0x476b(0xae)])?(_0x587c9e[_0x476b(0x5d)](_0x59a100['ppQjV']),_0x4d584d(_0x21796a),_0x59a100['bVPKj'](_0x4a61da,_0x476b(0x31))):_0x15d22d[_0x476b(0xaf)](_0x272be3);return;}else console['log'](_0x15d22d['qcAob']);}else _0x29e5a3[_0x476b(0x5d)](_0x476b(0x26));}catch(_0x2fc47b){console['log'](_0x15d22d[_0x476b(0xb0)],_0x2fc47b);}}}_0x15d22d[_0x476b(0x44)](_0x502f43,_0x15d22d[_0x476b(0x79)]);}else _0x181324[_0x476b(0xb1)]?_0x15d22d[_0x476b(0x84)](_0x15d22d[_0x476b(0xb2)],_0x15d22d['AZanx'])?console[_0x476b(0x5d)]('ℹ️\x20Google\x20Sign-In\x20cancelled\x20by\x20user'):_0x111cab[_0x476b(0x5d)](_0x15d22d[_0x476b(0xb3)]):(console[_0x476b(0x5d)](_0x476b(0xb4),_0x181324['message']),_0x5729d7(_0x181324['message']||'Google\x20Sign-In\x20failed.\x20Please\x20try\x20again.'));}}catch(_0x2da977){_0x15d22d[_0x476b(0xb5)]!=='eIPuR'?(_0x5c5399[_0x476b(0x4e)](_0x476b(0x2c),_0x4fc26c),_0x15d22d[_0x476b(0xb6)](_0x52a517,_0x15d22d[_0x476b(0xb7)])):(console[_0x476b(0x4e)](_0x476b(0x37),_0x2da977),_0x15d22d[_0x476b(0xb8)](_0x5729d7,_0x15d22d[_0x476b(0xb9)]));}finally{_0x15d22d[_0x476b(0xba)](_0x1ca1e2,![]);}},_0x794915=()=>{_0x15d22d[_0x476b(0xbb)](_0x15d22d[_0x476b(0xbc)],_0x15d22d[_0x476b(0xbc)])?(_0x15d22d[_0x476b(0xbd)](triggerHaptic,HapticType[_0x476b(0x69)]),_0x15d22d[_0x476b(0xbe)](_0x502f43,_0x476b(0x31))):(_0x3363a5[_0x476b(0x5d)](_0x15d22d[_0x476b(0xbf)]),_0x15d22d['BElKt'](_0x553d9c,_0x15d22d[_0x476b(0x79)]));},_0x543ef1=async _0x4cd28a=>{const _0x320216={'blMvI':_0x476b(0x27)};triggerHaptic(HapticType[_0x476b(0x69)]),_0x15d22d[_0x476b(0x7c)](_0x1ca1e2,!![]),_0x15d22d[_0x476b(0xc0)](_0x5729d7,'');try{console[_0x476b(0x5d)](_0x476b(0xc1),_0x2d26ec,_0x4cd28a);const _0x5a9076=await _0x15d22d['iCRQt'](confirmEmailVerificationCode,_0x2d26ec,_0x4cd28a);_0x5a9076[_0x476b(0x83)]?(console[_0x476b(0x5d)](_0x476b(0x2a)),_0x15d22d[_0x476b(0xb6)](_0x502f43,_0x476b(0xc2))):(console[_0x476b(0x5d)](_0x15d22d[_0x476b(0xc3)],_0x5a9076[_0x476b(0x60)]),_0x15d22d[_0x476b(0x94)](_0x5729d7,_0x5a9076[_0x476b(0x60)]||_0x15d22d['xzQni']));}catch(_0x88813f){console[_0x476b(0x4e)](_0x15d22d[_0x476b(0xc4)],_0x88813f),_0x15d22d['SHJgx'](_0x5729d7,_0x15d22d[_0x476b(0xb7)]);}finally{_0x15d22d['BNoQx']!==_0x15d22d[_0x476b(0xc5)]?_0x15d22d[_0x476b(0xc6)](_0x1ca1e2,![]):_0x253013[_0x476b(0x5d)](_0x320216[_0x476b(0xc7)],_0x43b1a6);}},_0x2440ac=()=>{triggerHaptic(HapticType[_0x476b(0x69)]),_0x15d22d[_0x476b(0xc8)](_0x5729d7,''),_0x15d22d[_0x476b(0xc8)](_0x502f43,_0x15d22d['ewMIR']);},_0x49db44=()=>{const _0x446ead={'wlASe':_0x476b(0xc9),'GKOld':_0x15d22d[_0x476b(0x73)]};_0x15d22d[_0x476b(0xca)](_0x15d22d[_0x476b(0xcb)],_0x15d22d[_0x476b(0xcc)])?(_0x15d22d[_0x476b(0x93)](triggerHaptic,HapticType[_0x476b(0x69)]),_0x15d22d[_0x476b(0xcd)](_0x502f43,_0x15d22d[_0x476b(0xce)])):_0x98c51d(_0x446ead['wlASe'],_0x446ead[_0x476b(0xcf)]);},_0xf7a923=async()=>{const _0x12b991={'VuNEP':function(_0x4c4e56){return _0x15d22d['zhMvK'](_0x4c4e56);},'ZkIOr':_0x15d22d[_0x476b(0x4d)],'pJnqj':_0x15d22d[_0x476b(0x4f)],'UtUzl':_0x15d22d[_0x476b(0xd0)],'EAkvS':_0x15d22d[_0x476b(0x51)],'erYQe':function(_0x14bbcc,_0xaef319){return _0x15d22d['lyKvJ'](_0x14bbcc,_0xaef319);},'eItRK':'Network\x20error.\x20Please\x20check\x20your\x20connection\x20and\x20try\x20again.'};_0x15d22d[_0x476b(0xbd)](triggerHaptic,HapticType[_0x476b(0x69)]),_0x15d22d[_0x476b(0xd1)](_0x1ca1e2,!![]),_0x15d22d[_0x476b(0x6d)](_0x5729d7,'');try{if(_0x15d22d[_0x476b(0xd2)]!=='ftOMw')_0x15d22d[_0x476b(0x49)](_0x2db5d5);else{console['log'](_0x476b(0xd3),_0x2d26ec);const _0x250814=await _0x15d22d['jnASY'](sendEmailVerificationCode,_0x2d26ec);if(_0x250814[_0x476b(0x83)]){if(_0x15d22d[_0x476b(0xd4)](_0x15d22d[_0x476b(0xd5)],_0x476b(0xd6)))console[_0x476b(0x5d)]('✅\x20Verification\x20code\x20resent\x20successfully');else{const _0x2382cb=_0x12b991[_0x476b(0xd7)];_0x41aff6[_0x476b(0x4e)](_0x12b991[_0x476b(0xd8)],_0x2382cb),Alert[_0x476b(0x50)](_0x12b991[_0x476b(0xd9)],_0x12b991[_0x476b(0xda)],[{'text':'OK','onPress':()=>{_0x12b991['VuNEP'](_0x195f7f);}}]);}}else console['log'](_0x15d22d[_0x476b(0x5c)],_0x250814[_0x476b(0x60)]),_0x5729d7(_0x250814[_0x476b(0x60)]||'Failed\x20to\x20resend\x20verification\x20code.\x20Please\x20try\x20again.');}}catch(_0x12c18b){_0x15d22d[_0x476b(0x8e)](_0x15d22d[_0x476b(0xdb)],_0x15d22d[_0x476b(0xdb)])?(console[_0x476b(0x4e)](_0x15d22d[_0x476b(0xdc)],_0x12c18b),_0x15d22d[_0x476b(0x44)](_0x5729d7,_0x15d22d['Rznpz'])):(_0x36e5e9['log'](_0x15d22d[_0x476b(0xdd)],_0x20e935[_0x476b(0x60)]),_0x2f7ac0(_0x214253[_0x476b(0x60)]||_0x15d22d[_0x476b(0xb9)]));}finally{_0x15d22d[_0x476b(0x84)](_0x15d22d['TzNzS'],_0x15d22d[_0x476b(0xde)])?(_0x24d79a[_0x476b(0x4e)](_0x476b(0x35),_0x3a648e),_0x12b991[_0x476b(0xdf)](_0xce6c5c,_0x12b991[_0x476b(0xe0)])):_0x15d22d['HQYOw'](_0x1ca1e2,![]);}},_0x1d5705=_0x4b498d=>{const _0x3ed0b5={'dLqCK':_0x15d22d[_0x476b(0xe1)],'IkPkh':function(_0x1ad474,_0x7b7cf6){return _0x15d22d['sAHQA'](_0x1ad474,_0x7b7cf6);},'flLXx':_0x476b(0xe2)};triggerHaptic(HapticType['BUTTON_PRESS']),console[_0x476b(0x5d)](_0x15d22d[_0x476b(0xe3)],_0x4b498d),_0x1131f0?AsyncStorage[_0x476b(0xa6)](_0x15d22d[_0x476b(0x7d)])[_0x476b(0xe4)](_0x692d08=>{_0x15d22d[_0x476b(0xe5)](_0x1131f0,_0x15d22d[_0x476b(0xab)](_0x692d08,_0x476b(0x3e)),_0x2d26ec);}):_0x15d22d['uiFfn'](_0x476b(0xe6),_0x476b(0xe7))?_0x15d22d[_0x476b(0xe8)](_0x272be3):(_0x5ce689[_0x476b(0x4e)](_0x3ed0b5[_0x476b(0xe9)],_0x33f302),_0x3ed0b5[_0x476b(0xea)](_0x341438,_0x3ed0b5['flLXx']));},_0x340b39=()=>{_0x15d22d[_0x476b(0xeb)](triggerHaptic,HapticType[_0x476b(0x69)]),_0x1131f0?_0x15d22d[_0x476b(0xec)](_0x1131f0,_0x15d22d['YdBBu'],_0x2d26ec):_0x15d22d[_0x476b(0xed)](_0x272be3);},_0x20446d=async()=>{const _0x2774e2={'EcHPC':function(_0x293127,_0x3016f9){return _0x293127||_0x3016f9;}};if(_0x15d22d[_0x476b(0xee)]===_0x15d22d[_0x476b(0xef)])_0x7b564(_0x3a4b2a[_0x476b(0x69)]),_0x15d22d[_0x476b(0xb6)](_0x5cc29e,_0x15d22d[_0x476b(0xce)]);else{console[_0x476b(0x5d)](_0x15d22d[_0x476b(0xf0)]),_0x15d22d[_0x476b(0xb6)](triggerHaptic,HapticType[_0x476b(0x69)]);try{await AsyncStorage[_0x476b(0x7a)](_0x15d22d[_0x476b(0x7b)],_0x15d22d['LdPlS']),await AsyncStorage[_0x476b(0x7a)](_0x15d22d[_0x476b(0x7d)],_0x15d22d[_0x476b(0x6f)]),console['log'](_0x15d22d[_0x476b(0xf1)]),_0x1131f0?_0x15d22d[_0x476b(0x48)](_0x1131f0,_0x15d22d[_0x476b(0x6f)],'reviewer@apple.com'):_0x272be3();}catch(_0x2aaafe){if(_0x15d22d[_0x476b(0xf2)]!==_0x15d22d['kNfZS']){const _0x38f1e3={'lNQWC':function(_0x741424,_0x1429ee,_0x417089){return _0x741424(_0x1429ee,_0x417089);},'qHPwo':function(_0x2422c5,_0x4e3efe){return _0x2774e2[_0x476b(0xf3)](_0x2422c5,_0x4e3efe);}};AsyncStorage['getItem'](_0x476b(0xf4))[_0x476b(0xe4)](_0x54193b=>{_0x38f1e3[_0x476b(0xf5)](_0x1be18b,_0x38f1e3[_0x476b(0xf6)](_0x54193b,_0x476b(0x3e)),_0x59447f);});}else{console[_0x476b(0x4e)](_0x15d22d[_0x476b(0x6e)],_0x2aaafe);if(_0x1131f0){if(_0x15d22d['etmVX'](_0x15d22d[_0x476b(0xf7)],_0x15d22d[_0x476b(0xf8)]))_0x15d22d[_0x476b(0xf9)](_0x1131f0,_0x15d22d[_0x476b(0x6f)],_0x476b(0xa));else return null;}else _0x15d22d[_0x476b(0xfa)](_0x272be3);}}}},_0x5c5992=()=>{_0x15d22d['mkusY'](_0x5e4566);};if(_0x15d22d['FIZVI'](!_0x392da7,!_0x577899)){if(_0x15d22d[_0x476b(0xfb)](_0x15d22d[_0x476b(0xfc)],_0x15d22d[_0x476b(0xfc)]))return null;else{const _0x29ae5c={'HFMxb':function(_0x2bfe06,_0x27aba1,_0x26483e){return _0x2bfe06(_0x27aba1,_0x26483e);},'PYWWR':function(_0x497c5d,_0x2927cd){return _0x15d22d[_0x476b(0xfd)](_0x497c5d,_0x2927cd);},'ZPxym':_0x15d22d[_0x476b(0xfe)]};_0x180f74(_0x349575['BUTTON_PRESS']),_0xdea639[_0x476b(0x5d)]('Connected\x20platforms:',_0x2798a0),_0x477a84?AsyncStorage[_0x476b(0xa6)](_0x476b(0xf4))[_0x476b(0xe4)](_0x65a01b=>{_0x29ae5c[_0x476b(0xff)](_0x14a8ca,_0x29ae5c['PYWWR'](_0x65a01b,_0x29ae5c[_0x476b(0x100)]),_0x5c5c28);}):_0x15d22d[_0x476b(0x101)](_0x4d8a6b);}}return React[_0x476b(0x102)](Modal,{'visible':_0x392da7&&_0x577899,'transparent':!![],'animationType':_0x15d22d[_0x476b(0x103)],'onRequestClose':_0x5e4566,'statusBarTranslucent':!![]},React[_0x476b(0x102)](StatusBar,{'backgroundColor':_0x15d22d[_0x476b(0x104)],'barStyle':_0x15d22d[_0x476b(0x105)]}),React[_0x476b(0x102)](Animated[_0x476b(0x106)],{'style':[styles[_0x476b(0x107)],{'opacity':_0x30dce5}]},React[_0x476b(0x102)](TouchableWithoutFeedback,{'onPress':_0x5c5992},React[_0x476b(0x102)](View,{'style':styles[_0x476b(0x108)]}))),React['createElement'](Animated[_0x476b(0x106)],{'style':[styles['modalContainer'],{'transform':[{'translateY':_0x154724['interpolate']({'inputRange':[0x0,0x1],'outputRange':[0x0,0x258]})}]}]},React[_0x476b(0x102)](_0x51bd59,{'topPadding':0x0},React[_0x476b(0x102)](_0x51b795,{'onClose':_0x5e4566,'onBack':_0x15d22d['IOkDB'](_0x499823,_0x15d22d[_0x476b(0xce)])?_0x2440ac:_0x49db44,'showBackButton':_0x499823===_0x476b(0x31)||_0x499823===_0x15d22d['AlUhQ']}),_0x499823===_0x476b(0x9)&&React[_0x476b(0x102)](View,{'style':styles['content']},React['createElement'](View,{'style':styles[_0x476b(0x109)]},React[_0x476b(0x102)](_0x487127,null)),React[_0x476b(0x102)](View,{'style':styles[_0x476b(0x10a)]},React[_0x476b(0x102)](_0x5c71e5,null)),React[_0x476b(0x102)](View,{'style':styles[_0x476b(0x10b)]},React[_0x476b(0x102)](_0x82907c,null)),React[_0x476b(0x102)](View,{'style':styles[_0x476b(0x10c)]}),React[_0x476b(0x102)](View,{'style':styles['buttonContainer']},React['createElement'](_0x15954f,{'label':_0x15d22d[_0x476b(0x10d)],'onPress':_0x8f0af9,'testID':_0x15d22d[_0x476b(0x10e)]}))),_0x499823===_0x15d22d[_0x476b(0x9f)]&&React['createElement'](_0x3f46cf,{'onEmailSubmit':_0x4c9d19,'onGoogleSignIn':_0x3e8901,'onContinue':_0x794915,'loading':_0x6ee87f,'error':_0x45627f}),_0x15d22d[_0x476b(0x10f)](_0x499823,_0x15d22d[_0x476b(0xce)])&&React[_0x476b(0x102)](_0x3ec1f2,{'email':_0x2d26ec,'onCodeSubmit':_0x543ef1,'onBack':_0x2440ac,'loading':_0x6ee87f,'error':_0x45627f,'onResendCode':_0xf7a923}),_0x15d22d[_0x476b(0x110)](_0x499823,_0x15d22d[_0x476b(0x79)])&&React[_0x476b(0x102)](View,{'style':styles[_0x476b(0x111)]},React[_0x476b(0x102)](View,{'style':styles[_0x476b(0x10a)]},React[_0x476b(0x102)](_0x5c71e5,null)),React[_0x476b(0x102)](View,{'style':styles[_0x476b(0x10b)]},React[_0x476b(0x102)](_0x82907c,null)),React['createElement'](View,{'style':styles[_0x476b(0x10c)]}),React[_0x476b(0x102)](View,{'style':styles[_0x476b(0x112)]},React[_0x476b(0x102)](_0x15954f,{'label':_0x15d22d['hRfLo'],'onPress':()=>_0x1d5705([]),'testID':_0x15d22d['TcJmQ']}))))));},styles=StyleSheet[_0x476b(0x113)]({'backdrop':{...StyleSheet['absoluteFillObject'],'backgroundColor':_0x476b(0x114)},'backdropTouchable':{'flex':0x1},'modalContainer':{'position':'absolute','bottom':0x0,'left':0x0,'right':0x0,'height':_0x476b(0x115)},'content':{'flex':0x1,'alignItems':_0x476b(0x116),'paddingTop':0x14},'brandMarkContainer':{'marginBottom':0x20},'headingContainer':{'marginBottom':0x18},'bodyContainer':{'marginBottom':0x20,'width':_0x476b(0x117)},'spacer':{'flex':0x1,'minHeight':0x14},'buttonContainer':{'width':_0x476b(0x117),'paddingHorizontal':0x18,'paddingBottom':0x14}});export default WelcomeScreen;
|
|
1
|
+
import React, { useEffect, useRef, useState } from 'react';
|
|
2
|
+
import { View, StyleSheet, Modal, TouchableWithoutFeedback, Animated, Easing, StatusBar, Alert } from 'react-native';
|
|
3
|
+
import { triggerHaptic, HapticType } from '../utils/haptics';
|
|
4
|
+
import { sendEmailVerificationCode, confirmEmailVerificationCode } from '../services/authService';
|
|
5
|
+
import { signInWithGoogle } from '../services/googleAuthService';
|
|
6
|
+
import AsyncStorage from '@react-native-async-storage/async-storage';
|
|
7
|
+
import { isApiKeyInitialized, getApiConfig } from '../services/apiKeyService';
|
|
8
|
+
import { getConnectedAccountsSmart } from '../services/connectedAccountsService';
|
|
9
|
+
|
|
10
|
+
// Import our new components
|
|
11
|
+
import ModalSheet from './ModalSheet';
|
|
12
|
+
import ModalHeader from './ModalHeader';
|
|
13
|
+
import BrandMark from './BrandMark';
|
|
14
|
+
import HeadingGroup from './HeadingGroup';
|
|
15
|
+
import BodyText from './BodyText';
|
|
16
|
+
import PrimaryButton from './PrimaryButton';
|
|
17
|
+
import SignInStep from './SignInStep';
|
|
18
|
+
import VerificationStep from './VerificationStep';
|
|
19
|
+
// Temporarily remove PlatformConnectorsStep to avoid context dependency issues
|
|
20
|
+
// import PlatformConnectorsStep from './PlatformConnectorsStep';
|
|
21
|
+
|
|
22
|
+
// Type definitions for navigation
|
|
23
|
+
|
|
24
|
+
const WelcomeScreen = ({
|
|
25
|
+
visible,
|
|
26
|
+
onClose,
|
|
27
|
+
onComplete
|
|
28
|
+
}) => {
|
|
29
|
+
const [currentStep, setCurrentStep] = useState('welcome');
|
|
30
|
+
const [userEmail, setUserEmail] = useState('');
|
|
31
|
+
const [loading, setLoading] = useState(false);
|
|
32
|
+
const [error, setError] = useState('');
|
|
33
|
+
|
|
34
|
+
// 🔒 SDK Initialization check state
|
|
35
|
+
const [sdkInitialized, setSdkInitialized] = useState(false);
|
|
36
|
+
|
|
37
|
+
// Animation values
|
|
38
|
+
const slideAnim = useRef(new Animated.Value(1)).current; // Start from bottom
|
|
39
|
+
const fadeAnim = useRef(new Animated.Value(0)).current;
|
|
40
|
+
|
|
41
|
+
// 🔒 CRITICAL: Check SDK initialization when component becomes visible
|
|
42
|
+
useEffect(() => {
|
|
43
|
+
if (visible) {
|
|
44
|
+
const initialized = isApiKeyInitialized();
|
|
45
|
+
setSdkInitialized(initialized);
|
|
46
|
+
if (!initialized) {
|
|
47
|
+
const errorMsg = 'Onairos SDK not initialized. Developers must call initializeApiKey() with a valid API key before using SDK components.';
|
|
48
|
+
console.error('❌ [WelcomeScreen] SDK NOT INITIALIZED:', errorMsg);
|
|
49
|
+
|
|
50
|
+
// Show alert and close the modal
|
|
51
|
+
Alert.alert('SDK Not Initialized', 'The Onairos SDK requires initialization with a valid API key.\n\nDevelopers: Please call initializeApiKey() before using Onairos components.\n\nGet your API key from https://dashboard.onairos.uk', [{
|
|
52
|
+
text: 'OK',
|
|
53
|
+
onPress: () => {
|
|
54
|
+
onClose();
|
|
55
|
+
}
|
|
56
|
+
}]);
|
|
57
|
+
} else {
|
|
58
|
+
var _config$apiKey;
|
|
59
|
+
const config = getApiConfig();
|
|
60
|
+
console.log('✅ [WelcomeScreen] SDK initialized with API key:', (config === null || config === void 0 || (_config$apiKey = config.apiKey) === null || _config$apiKey === void 0 ? void 0 : _config$apiKey.substring(0, 8)) + '...');
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}, [visible, onClose]);
|
|
64
|
+
|
|
65
|
+
// Animate in when visible (matching existing modal style)
|
|
66
|
+
useEffect(() => {
|
|
67
|
+
console.log('🔍 WelcomeScreen visibility changed:', visible);
|
|
68
|
+
if (visible && sdkInitialized) {
|
|
69
|
+
console.log('🎬 Starting WelcomeScreen animations');
|
|
70
|
+
Animated.parallel([Animated.timing(slideAnim, {
|
|
71
|
+
toValue: 0,
|
|
72
|
+
duration: 400,
|
|
73
|
+
easing: Easing.out(Easing.cubic),
|
|
74
|
+
useNativeDriver: true
|
|
75
|
+
}), Animated.timing(fadeAnim, {
|
|
76
|
+
toValue: 1,
|
|
77
|
+
duration: 300,
|
|
78
|
+
useNativeDriver: true
|
|
79
|
+
})]).start(() => {
|
|
80
|
+
console.log('✅ WelcomeScreen animations completed');
|
|
81
|
+
});
|
|
82
|
+
} else {
|
|
83
|
+
console.log('🔄 Resetting WelcomeScreen animations');
|
|
84
|
+
slideAnim.setValue(1);
|
|
85
|
+
fadeAnim.setValue(0);
|
|
86
|
+
}
|
|
87
|
+
}, [visible, sdkInitialized]);
|
|
88
|
+
const handleClose = () => {
|
|
89
|
+
triggerHaptic(HapticType.BUTTON_PRESS);
|
|
90
|
+
|
|
91
|
+
// Reset to welcome step
|
|
92
|
+
setCurrentStep('welcome');
|
|
93
|
+
Animated.parallel([Animated.timing(slideAnim, {
|
|
94
|
+
toValue: 1,
|
|
95
|
+
duration: 300,
|
|
96
|
+
easing: Easing.in(Easing.cubic),
|
|
97
|
+
useNativeDriver: true
|
|
98
|
+
}), Animated.timing(fadeAnim, {
|
|
99
|
+
toValue: 0,
|
|
100
|
+
duration: 250,
|
|
101
|
+
useNativeDriver: true
|
|
102
|
+
})]).start(() => {
|
|
103
|
+
onClose();
|
|
104
|
+
});
|
|
105
|
+
};
|
|
106
|
+
const handleGetStarted = () => {
|
|
107
|
+
triggerHaptic(HapticType.BUTTON_PRESS);
|
|
108
|
+
// Move to sign-in step instead of closing modal
|
|
109
|
+
setCurrentStep('signin');
|
|
110
|
+
};
|
|
111
|
+
const handleEmailSubmit = async email => {
|
|
112
|
+
triggerHaptic(HapticType.BUTTON_PRESS);
|
|
113
|
+
setLoading(true);
|
|
114
|
+
setError('');
|
|
115
|
+
try {
|
|
116
|
+
// Check for reviewer bypass
|
|
117
|
+
if (email === 'reviewer@bypass.com') {
|
|
118
|
+
console.log('🔍 Reviewer bypass detected in WelcomeScreen');
|
|
119
|
+
try {
|
|
120
|
+
// Store the same markers as the old UI
|
|
121
|
+
await AsyncStorage.setItem('onairos_user', 'true');
|
|
122
|
+
await AsyncStorage.setItem('onairos_jwt_token', 'reviewer-bypass-token');
|
|
123
|
+
console.log('✅ Stored reviewer bypass markers for email bypass');
|
|
124
|
+
|
|
125
|
+
// Store the reviewer email and skip directly to platforms
|
|
126
|
+
setUserEmail(email);
|
|
127
|
+
setCurrentStep('platforms');
|
|
128
|
+
} catch (error) {
|
|
129
|
+
console.error('❌ Failed to store reviewer bypass markers:', error);
|
|
130
|
+
// Continue to platforms even if storage fails
|
|
131
|
+
setUserEmail(email);
|
|
132
|
+
setCurrentStep('platforms');
|
|
133
|
+
}
|
|
134
|
+
setLoading(false);
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
console.log('📧 Sending verification code to:', email);
|
|
138
|
+
|
|
139
|
+
// Send verification code using the existing API
|
|
140
|
+
const result = await sendEmailVerificationCode(email);
|
|
141
|
+
if (result.success) {
|
|
142
|
+
console.log('✅ Verification code sent successfully');
|
|
143
|
+
// Store the email and move to verification
|
|
144
|
+
setUserEmail(email);
|
|
145
|
+
setCurrentStep('verification');
|
|
146
|
+
} else {
|
|
147
|
+
console.log('❌ Failed to send verification code:', result.message);
|
|
148
|
+
setError(result.message || 'Failed to send verification code. Please try again.');
|
|
149
|
+
}
|
|
150
|
+
} catch (error) {
|
|
151
|
+
console.error('❌ Error sending verification code:', error);
|
|
152
|
+
setError('Network error. Please check your connection and try again.');
|
|
153
|
+
} finally {
|
|
154
|
+
setLoading(false);
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
const handleGoogleSignIn = async () => {
|
|
158
|
+
triggerHaptic(HapticType.BUTTON_PRESS);
|
|
159
|
+
setLoading(true);
|
|
160
|
+
setError('');
|
|
161
|
+
try {
|
|
162
|
+
console.log('🔗 Initiating Google Sign-In');
|
|
163
|
+
const result = await signInWithGoogle();
|
|
164
|
+
if (result.success && result.user) {
|
|
165
|
+
console.log('✅ Google Sign-In successful:', result.user.email);
|
|
166
|
+
console.log('🔍 Is new user?', result.isNewUser);
|
|
167
|
+
|
|
168
|
+
// Store user information
|
|
169
|
+
setUserEmail(result.user.email);
|
|
170
|
+
|
|
171
|
+
// ✅ FIX: Check if user is returning (already has an account)
|
|
172
|
+
if (result.isNewUser === false) {
|
|
173
|
+
console.log('👤 Returning user detected via Google Sign-In');
|
|
174
|
+
try {
|
|
175
|
+
// Try to fetch existing connected accounts
|
|
176
|
+
const derivedUsername = result.user.username || result.user.email.split('@')[0];
|
|
177
|
+
const existingConnections = await getConnectedAccountsSmart(result.user.email, result.user.id, derivedUsername);
|
|
178
|
+
if (existingConnections && existingConnections.length > 0) {
|
|
179
|
+
console.log(`✅ Found ${existingConnections.length} existing connections - completing directly`);
|
|
180
|
+
|
|
181
|
+
// Get the auth token
|
|
182
|
+
const token = await AsyncStorage.getItem('onairos_jwt_token');
|
|
183
|
+
|
|
184
|
+
// Complete directly for returning users
|
|
185
|
+
if (onComplete) {
|
|
186
|
+
onComplete(token || 'returning-user-token', result.user.email);
|
|
187
|
+
} else {
|
|
188
|
+
onClose();
|
|
189
|
+
}
|
|
190
|
+
return;
|
|
191
|
+
} else {
|
|
192
|
+
console.log('ℹ️ No existing connections found - proceeding to platforms step');
|
|
193
|
+
}
|
|
194
|
+
} catch (connError) {
|
|
195
|
+
console.log('⚠️ Could not fetch existing connections, proceeding to platforms:', connError);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
// New user or no existing connections - proceed to platforms step
|
|
200
|
+
setCurrentStep('platforms');
|
|
201
|
+
} else if (result.cancelled) {
|
|
202
|
+
console.log('ℹ️ Google Sign-In cancelled by user');
|
|
203
|
+
// Don't show error for cancellation, just reset loading
|
|
204
|
+
} else {
|
|
205
|
+
console.log('❌ Google Sign-In failed:', result.message);
|
|
206
|
+
setError(result.message || 'Google Sign-In failed. Please try again.');
|
|
207
|
+
}
|
|
208
|
+
} catch (error) {
|
|
209
|
+
console.error('❌ Unexpected Google Sign-In error:', error);
|
|
210
|
+
setError('Google Sign-In failed. Please try again.');
|
|
211
|
+
} finally {
|
|
212
|
+
setLoading(false);
|
|
213
|
+
}
|
|
214
|
+
};
|
|
215
|
+
const handleContinue = () => {
|
|
216
|
+
triggerHaptic(HapticType.BUTTON_PRESS);
|
|
217
|
+
// Move to verification step
|
|
218
|
+
setCurrentStep('verification');
|
|
219
|
+
};
|
|
220
|
+
const handleCodeSubmit = async code => {
|
|
221
|
+
triggerHaptic(HapticType.BUTTON_PRESS);
|
|
222
|
+
setLoading(true);
|
|
223
|
+
setError('');
|
|
224
|
+
try {
|
|
225
|
+
console.log('🔍 Verifying email code:', userEmail, code);
|
|
226
|
+
|
|
227
|
+
// Verify the email code using the existing API
|
|
228
|
+
const result = await confirmEmailVerificationCode(userEmail, code);
|
|
229
|
+
if (result.success) {
|
|
230
|
+
console.log('✅ Email verification successful');
|
|
231
|
+
// Move to platform connectors step
|
|
232
|
+
setCurrentStep('platforms');
|
|
233
|
+
} else {
|
|
234
|
+
console.log('❌ Email verification failed:', result.message);
|
|
235
|
+
setError(result.message || 'Invalid verification code. Please try again.');
|
|
236
|
+
}
|
|
237
|
+
} catch (error) {
|
|
238
|
+
console.error('❌ Error verifying email code:', error);
|
|
239
|
+
setError('Verification failed. Please try again.');
|
|
240
|
+
} finally {
|
|
241
|
+
setLoading(false);
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
const handleBackToSignIn = () => {
|
|
245
|
+
triggerHaptic(HapticType.BUTTON_PRESS);
|
|
246
|
+
setError(''); // Clear any errors when going back
|
|
247
|
+
setCurrentStep('signin');
|
|
248
|
+
};
|
|
249
|
+
const handleBackToVerification = () => {
|
|
250
|
+
triggerHaptic(HapticType.BUTTON_PRESS);
|
|
251
|
+
setCurrentStep('verification');
|
|
252
|
+
};
|
|
253
|
+
const handleResendCode = async () => {
|
|
254
|
+
triggerHaptic(HapticType.BUTTON_PRESS);
|
|
255
|
+
setLoading(true);
|
|
256
|
+
setError('');
|
|
257
|
+
try {
|
|
258
|
+
console.log('🔄 Resending verification code to:', userEmail);
|
|
259
|
+
|
|
260
|
+
// Resend verification code using the existing API
|
|
261
|
+
const result = await sendEmailVerificationCode(userEmail);
|
|
262
|
+
if (result.success) {
|
|
263
|
+
console.log('✅ Verification code resent successfully');
|
|
264
|
+
// Could show a success message here if needed
|
|
265
|
+
} else {
|
|
266
|
+
console.log('❌ Failed to resend verification code:', result.message);
|
|
267
|
+
setError(result.message || 'Failed to resend verification code. Please try again.');
|
|
268
|
+
}
|
|
269
|
+
} catch (error) {
|
|
270
|
+
console.error('❌ Error resending verification code:', error);
|
|
271
|
+
setError('Network error. Please check your connection and try again.');
|
|
272
|
+
} finally {
|
|
273
|
+
setLoading(false);
|
|
274
|
+
}
|
|
275
|
+
};
|
|
276
|
+
const handlePlatformUpdate = connectedPlatforms => {
|
|
277
|
+
triggerHaptic(HapticType.BUTTON_PRESS);
|
|
278
|
+
console.log('Connected platforms:', connectedPlatforms);
|
|
279
|
+
|
|
280
|
+
// Complete the onboarding flow
|
|
281
|
+
if (onComplete) {
|
|
282
|
+
// Return the stored token and email
|
|
283
|
+
AsyncStorage.getItem('onairos_jwt_token').then(token => {
|
|
284
|
+
onComplete(token || 'onboarding-complete-token', userEmail);
|
|
285
|
+
});
|
|
286
|
+
} else {
|
|
287
|
+
onClose();
|
|
288
|
+
}
|
|
289
|
+
};
|
|
290
|
+
const handlePlatformSkip = () => {
|
|
291
|
+
triggerHaptic(HapticType.BUTTON_PRESS);
|
|
292
|
+
// Skip platform connections and complete onboarding
|
|
293
|
+
if (onComplete) {
|
|
294
|
+
// Return a skip token
|
|
295
|
+
onComplete('onboarding-skipped-token', userEmail);
|
|
296
|
+
} else {
|
|
297
|
+
onClose();
|
|
298
|
+
}
|
|
299
|
+
};
|
|
300
|
+
const handleReviewerBypass = async () => {
|
|
301
|
+
console.log('🔍 Reviewer bypass triggered from platforms screen');
|
|
302
|
+
triggerHaptic(HapticType.BUTTON_PRESS);
|
|
303
|
+
try {
|
|
304
|
+
// Store the same markers as the old UI
|
|
305
|
+
await AsyncStorage.setItem('onairos_user', 'true');
|
|
306
|
+
await AsyncStorage.setItem('onairos_jwt_token', 'reviewer-bypass-token');
|
|
307
|
+
console.log('✅ Stored reviewer bypass markers for new UI');
|
|
308
|
+
|
|
309
|
+
// Complete the onboarding with bypass token
|
|
310
|
+
if (onComplete) {
|
|
311
|
+
onComplete('reviewer-bypass-token', 'reviewer@apple.com');
|
|
312
|
+
} else {
|
|
313
|
+
onClose();
|
|
314
|
+
}
|
|
315
|
+
} catch (error) {
|
|
316
|
+
console.error('❌ Failed to store reviewer bypass markers:', error);
|
|
317
|
+
// Still complete the onboarding even if storage fails
|
|
318
|
+
if (onComplete) {
|
|
319
|
+
onComplete('reviewer-bypass-token', 'reviewer@apple.com');
|
|
320
|
+
} else {
|
|
321
|
+
onClose();
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
};
|
|
325
|
+
const handleBackdropPress = () => {
|
|
326
|
+
// Optional: allow closing by tapping backdrop
|
|
327
|
+
handleClose();
|
|
328
|
+
};
|
|
329
|
+
|
|
330
|
+
// 🔒 CRITICAL: Block rendering if SDK is not initialized or not visible
|
|
331
|
+
if (!visible || !sdkInitialized) {
|
|
332
|
+
return null;
|
|
333
|
+
}
|
|
334
|
+
return /*#__PURE__*/React.createElement(Modal, {
|
|
335
|
+
visible: visible && sdkInitialized,
|
|
336
|
+
transparent: true,
|
|
337
|
+
animationType: "slide" // Use built-in slide animation like existing modal
|
|
338
|
+
,
|
|
339
|
+
onRequestClose: handleClose,
|
|
340
|
+
statusBarTranslucent: true
|
|
341
|
+
}, /*#__PURE__*/React.createElement(StatusBar, {
|
|
342
|
+
backgroundColor: "rgba(0,0,0,0.5)",
|
|
343
|
+
barStyle: "light-content"
|
|
344
|
+
}), /*#__PURE__*/React.createElement(Animated.View, {
|
|
345
|
+
style: [styles.backdrop, {
|
|
346
|
+
opacity: fadeAnim
|
|
347
|
+
}]
|
|
348
|
+
}, /*#__PURE__*/React.createElement(TouchableWithoutFeedback, {
|
|
349
|
+
onPress: handleBackdropPress
|
|
350
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
351
|
+
style: styles.backdropTouchable
|
|
352
|
+
}))), /*#__PURE__*/React.createElement(Animated.View, {
|
|
353
|
+
style: [styles.modalContainer, {
|
|
354
|
+
transform: [{
|
|
355
|
+
translateY: slideAnim.interpolate({
|
|
356
|
+
inputRange: [0, 1],
|
|
357
|
+
outputRange: [0, 600] // Slide from bottom
|
|
358
|
+
})
|
|
359
|
+
}]
|
|
360
|
+
}]
|
|
361
|
+
}, /*#__PURE__*/React.createElement(ModalSheet, {
|
|
362
|
+
topPadding: 0
|
|
363
|
+
}, /*#__PURE__*/React.createElement(ModalHeader, {
|
|
364
|
+
onClose: handleClose,
|
|
365
|
+
onBack: currentStep === 'verification' ? handleBackToSignIn : handleBackToVerification,
|
|
366
|
+
showBackButton: currentStep === 'verification' || currentStep === 'platforms'
|
|
367
|
+
}), currentStep === 'welcome' && /*#__PURE__*/React.createElement(View, {
|
|
368
|
+
style: styles.content
|
|
369
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
370
|
+
style: styles.brandMarkContainer
|
|
371
|
+
}, /*#__PURE__*/React.createElement(BrandMark, null)), /*#__PURE__*/React.createElement(View, {
|
|
372
|
+
style: styles.headingContainer
|
|
373
|
+
}, /*#__PURE__*/React.createElement(HeadingGroup, null)), /*#__PURE__*/React.createElement(View, {
|
|
374
|
+
style: styles.bodyContainer
|
|
375
|
+
}, /*#__PURE__*/React.createElement(BodyText, null)), /*#__PURE__*/React.createElement(View, {
|
|
376
|
+
style: styles.spacer
|
|
377
|
+
}), /*#__PURE__*/React.createElement(View, {
|
|
378
|
+
style: styles.buttonContainer
|
|
379
|
+
}, /*#__PURE__*/React.createElement(PrimaryButton, {
|
|
380
|
+
label: "Get Started",
|
|
381
|
+
onPress: handleGetStarted,
|
|
382
|
+
testID: "welcome-get-started-button"
|
|
383
|
+
}))), currentStep === 'signin' && /*#__PURE__*/React.createElement(SignInStep, {
|
|
384
|
+
onEmailSubmit: handleEmailSubmit,
|
|
385
|
+
onGoogleSignIn: handleGoogleSignIn,
|
|
386
|
+
onContinue: handleContinue,
|
|
387
|
+
loading: loading,
|
|
388
|
+
error: error
|
|
389
|
+
}), currentStep === 'verification' && /*#__PURE__*/React.createElement(VerificationStep, {
|
|
390
|
+
email: userEmail,
|
|
391
|
+
onCodeSubmit: handleCodeSubmit,
|
|
392
|
+
onBack: handleBackToSignIn,
|
|
393
|
+
loading: loading,
|
|
394
|
+
error: error,
|
|
395
|
+
onResendCode: handleResendCode
|
|
396
|
+
}), currentStep === 'platforms' && /*#__PURE__*/React.createElement(View, {
|
|
397
|
+
style: styles.content
|
|
398
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
399
|
+
style: styles.headingContainer
|
|
400
|
+
}, /*#__PURE__*/React.createElement(HeadingGroup, null)), /*#__PURE__*/React.createElement(View, {
|
|
401
|
+
style: styles.bodyContainer
|
|
402
|
+
}, /*#__PURE__*/React.createElement(BodyText, null)), /*#__PURE__*/React.createElement(View, {
|
|
403
|
+
style: styles.spacer
|
|
404
|
+
}), /*#__PURE__*/React.createElement(View, {
|
|
405
|
+
style: styles.buttonContainer
|
|
406
|
+
}, /*#__PURE__*/React.createElement(PrimaryButton, {
|
|
407
|
+
label: "Complete Setup",
|
|
408
|
+
onPress: () => handlePlatformUpdate([]),
|
|
409
|
+
testID: "complete-setup-button"
|
|
410
|
+
}))))));
|
|
411
|
+
};
|
|
412
|
+
const styles = StyleSheet.create({
|
|
413
|
+
backdrop: {
|
|
414
|
+
...StyleSheet.absoluteFillObject,
|
|
415
|
+
backgroundColor: 'transparent' // Remove grey overlay
|
|
416
|
+
},
|
|
417
|
+
backdropTouchable: {
|
|
418
|
+
flex: 1
|
|
419
|
+
},
|
|
420
|
+
modalContainer: {
|
|
421
|
+
position: 'absolute',
|
|
422
|
+
bottom: 0,
|
|
423
|
+
left: 0,
|
|
424
|
+
right: 0,
|
|
425
|
+
height: '85%' // Take most of the screen
|
|
426
|
+
},
|
|
427
|
+
content: {
|
|
428
|
+
flex: 1,
|
|
429
|
+
alignItems: 'center',
|
|
430
|
+
paddingTop: 20
|
|
431
|
+
},
|
|
432
|
+
brandMarkContainer: {
|
|
433
|
+
marginBottom: 32
|
|
434
|
+
},
|
|
435
|
+
headingContainer: {
|
|
436
|
+
marginBottom: 24
|
|
437
|
+
},
|
|
438
|
+
bodyContainer: {
|
|
439
|
+
marginBottom: 32,
|
|
440
|
+
width: '100%'
|
|
441
|
+
},
|
|
442
|
+
spacer: {
|
|
443
|
+
flex: 1,
|
|
444
|
+
minHeight: 20 // Ensure some minimum space
|
|
445
|
+
},
|
|
446
|
+
buttonContainer: {
|
|
447
|
+
width: '100%',
|
|
448
|
+
paddingHorizontal: 24,
|
|
449
|
+
paddingBottom: 20
|
|
450
|
+
}
|
|
451
|
+
});
|
|
452
|
+
export default WelcomeScreen;
|
|
453
|
+
//# sourceMappingURL=WelcomeScreen.js.map
|
|
@@ -1 +1,30 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import Svg, { G, Rect, Path, Defs } from 'react-native-svg';
|
|
4
|
+
/* SVGR has dropped some elements not supported by react-native-svg: filter */
|
|
5
|
+
|
|
6
|
+
const SvgBasicproficon = props => /*#__PURE__*/React.createElement(Svg, _extends({
|
|
7
|
+
width: 32,
|
|
8
|
+
height: 32,
|
|
9
|
+
fill: "none",
|
|
10
|
+
viewBox: "0 0 32 32"
|
|
11
|
+
}, props), /*#__PURE__*/React.createElement(G, {
|
|
12
|
+
filter: "url(#basicproficon_svg__a)"
|
|
13
|
+
}, /*#__PURE__*/React.createElement(Rect, {
|
|
14
|
+
width: 32,
|
|
15
|
+
height: 32,
|
|
16
|
+
fill: "#ECECED",
|
|
17
|
+
rx: 16
|
|
18
|
+
}), /*#__PURE__*/React.createElement(G, {
|
|
19
|
+
filter: "url(#basicproficon_svg__b)"
|
|
20
|
+
}, /*#__PURE__*/React.createElement(Path, {
|
|
21
|
+
fill: "#1F242F",
|
|
22
|
+
d: "M16 15.746c.952 0 1.776-.341 2.45-1.015a3.35 3.35 0 0 0 1.014-2.449c0-.952-.341-1.776-1.015-2.45A3.35 3.35 0 0 0 16 8.819c-.952 0-1.776.341-2.45 1.015a3.35 3.35 0 0 0-1.014 2.449c0 .952.341 1.776 1.015 2.45A3.35 3.35 0 0 0 16 15.745"
|
|
23
|
+
})), /*#__PURE__*/React.createElement(G, {
|
|
24
|
+
filter: "url(#basicproficon_svg__c)"
|
|
25
|
+
}, /*#__PURE__*/React.createElement(Path, {
|
|
26
|
+
fill: "#1F242F",
|
|
27
|
+
d: "M21.97 19.859a9 9 0 0 0-.116-.909 7 7 0 0 0-.223-.914 4.5 4.5 0 0 0-.376-.852 3.2 3.2 0 0 0-.566-.738 2.5 2.5 0 0 0-.814-.511 2.8 2.8 0 0 0-1.039-.188c-.147 0-.289.06-.563.239l-.586.378q-.285.18-.76.334c-.307.1-.62.15-.927.15q-.464 0-.929-.15a3.4 3.4 0 0 1-.758-.334q-.329-.21-.587-.379c-.274-.178-.416-.238-.563-.238q-.563 0-1.039.188c-.316.125-.59.297-.813.511a3.2 3.2 0 0 0-.567.738 4.5 4.5 0 0 0-.375.852c-.09.281-.165.589-.224.914a9 9 0 0 0-.116.91c-.02.274-.029.56-.029.849 0 .75.239 1.358.71 1.806.464.443 1.08.667 1.827.667h6.926c.748 0 1.363-.224 1.827-.667.471-.448.71-1.055.71-1.807q0-.436-.03-.85"
|
|
28
|
+
}))), /*#__PURE__*/React.createElement(Defs, null));
|
|
29
|
+
export default SvgBasicproficon;
|
|
30
|
+
//# sourceMappingURL=Basicproficon.js.map
|
|
@@ -1 +1,14 @@
|
|
|
1
|
-
function _extends()
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import Svg, { Path } from 'react-native-svg';
|
|
4
|
+
const SvgBasicprofile = props => /*#__PURE__*/React.createElement(Svg, _extends({
|
|
5
|
+
width: 263,
|
|
6
|
+
height: 22,
|
|
7
|
+
fill: "none",
|
|
8
|
+
viewBox: "0 0 263 22"
|
|
9
|
+
}, props), /*#__PURE__*/React.createElement(Path, {
|
|
10
|
+
fill: "#1F242F",
|
|
11
|
+
d: "M1.004 16V5.818h3.898q1.104 0 1.835.348.735.343 1.098.94.368.596.368 1.352q0 .621-.239 1.064-.238.438-.64.711a2.7 2.7 0 0 1-.9.393v.1q.54.029 1.038.332.503.299.82.845.32.547.319 1.323 0 .79-.383 1.422-.383.625-1.153.99-.77.362-1.94.362zm1.845-1.541h1.983q1.005 0 1.447-.383.448-.387.448-.994a1.52 1.52 0 0 0-.86-1.392q-.414-.214-.985-.214H2.85zm0-4.31h1.824q.477 0 .86-.175.383-.178.602-.502.225-.328.224-.775 0-.592-.418-.975-.412-.383-1.228-.383H2.85zm9.234 6.005q-.726 0-1.307-.258a2.13 2.13 0 0 1-.915-.776q-.333-.511-.333-1.263 0-.646.239-1.069t.65-.676q.414-.253.93-.383.522-.135 1.08-.193.67-.07 1.088-.125.418-.06.607-.179.194-.124.194-.383v-.03q0-.561-.334-.87-.332-.308-.959-.308-.66 0-1.049.289a1.43 1.43 0 0 0-.517.68l-1.68-.238q.197-.696.656-1.163.458-.472 1.118-.706.661-.24 1.462-.239.552 0 1.099.13.546.129.999.427.453.293.726.8.279.508.278 1.268V16h-1.73v-1.049h-.06q-.163.318-.462.597-.293.274-.74.442-.443.165-1.04.164m.468-1.322q.54 0 .94-.214a1.6 1.6 0 0 0 .61-.577 1.47 1.47 0 0 0 .22-.78v-.9a.9.9 0 0 1-.289.13q-.198.059-.447.104t-.492.079l-.423.06a3.1 3.1 0 0 0-.72.179q-.319.123-.503.348-.184.218-.184.566 0 .498.363.751.363.255.925.254m11.17-4.45-1.641.18a1.3 1.3 0 0 0-.244-.468 1.2 1.2 0 0 0-.457-.353 1.7 1.7 0 0 0-.706-.134q-.562 0-.945.243-.378.243-.373.632a.66.66 0 0 0 .244.541q.254.21.835.344l1.303.278q1.084.234 1.61.74.532.508.537 1.328-.005.72-.422 1.273-.413.547-1.148.855-.737.308-1.69.308-1.403 0-2.258-.587-.855-.59-1.02-1.645l1.756-.17q.12.519.507.781.387.264 1.01.264.64 0 1.028-.264.393-.263.393-.65q0-.33-.253-.543-.25-.213-.776-.328l-1.303-.273q-1.098-.23-1.625-.77-.528-.548-.522-1.383-.006-.705.383-1.223.392-.522 1.088-.805.702-.29 1.616-.289 1.343 0 2.113.572.776.571.96 1.546M25.128 16V8.364h1.8V16zm.905-8.72a1.05 1.05 0 0 1-.735-.284.91.91 0 0 1-.309-.69q0-.408.309-.692a1.04 1.04 0 0 1 .735-.288q.433 0 .736.288.308.285.308.691a.91.91 0 0 1-.308.691 1.04 1.04 0 0 1-.736.284m5.837 8.87q-1.143 0-1.964-.503a3.35 3.35 0 0 1-1.258-1.387q-.437-.89-.437-2.048 0-1.163.447-2.054.448-.894 1.263-1.392.82-.502 1.939-.502.93 0 1.646.343.72.338 1.148.96.427.615.487 1.441h-1.72a1.64 1.64 0 0 0-.497-.92q-.388-.372-1.04-.372-.55 0-.969.298-.417.294-.65.845-.23.553-.23 1.323 0 .78.23 1.342.227.557.64.86.418.299.98.298.398 0 .71-.149.319-.153.533-.442.213-.288.293-.701h1.72a3 3 0 0 1-.477 1.437q-.413.621-1.124.974-.71.348-1.67.348M39.69 16V5.818h3.818q1.174 0 1.97.438.8.437 1.207 1.203.413.76.413 1.73 0 .98-.413 1.74a2.95 2.95 0 0 1-1.218 1.198q-.805.433-1.984.433h-2.53v-1.517h2.282q.686 0 1.124-.238.437-.24.646-.657.214-.417.214-.96q0-.54-.214-.954a1.45 1.45 0 0 0-.651-.641q-.438-.234-1.129-.234h-1.69V16zm8.69 0V8.364h1.745v1.272h.08q.21-.66.716-1.019a1.97 1.97 0 0 1 1.168-.363q.15 0 .333.015.189.01.313.035V9.96a2 2 0 0 0-.362-.07 3 3 0 0 0-.473-.035 1.8 1.8 0 0 0-.885.214q-.387.21-.611.582t-.224.86V16zm8.328.15q-1.118 0-1.94-.493a3.34 3.34 0 0 1-1.272-1.377q-.447-.885-.447-2.068t.447-2.073a3.34 3.34 0 0 1 1.273-1.383q.82-.492 1.939-.492 1.118 0 1.939.492.82.494 1.267 1.383.453.89.453 2.073t-.453 2.068a3.3 3.3 0 0 1-1.267 1.377q-.82.492-1.94.492m.01-1.443q.606 0 1.014-.333.408-.338.606-.905a3.7 3.7 0 0 0 .204-1.262q0-.701-.204-1.268a2 2 0 0 0-.606-.91q-.408-.338-1.014-.338-.623 0-1.034.338a2.04 2.04 0 0 0-.612.91 3.8 3.8 0 0 0-.199 1.268q0 .696.2 1.262.203.567.61.905.413.333 1.035.333m8.804-6.343v1.392H61.01V8.364zM62.138 16V7.643q0-.771.318-1.283.323-.512.865-.766a2.8 2.8 0 0 1 1.203-.253q.467 0 .83.074.363.075.537.135l-.358 1.392a3 3 0 0 0-.288-.07 1.7 1.7 0 0 0-.388-.04q-.503 0-.71.244-.205.24-.205.686V16zm4.555 0V8.364h1.8V16zm.904-8.72a1.05 1.05 0 0 1-.735-.284.91.91 0 0 1-.308-.69q0-.408.308-.692a1.04 1.04 0 0 1 .736-.288q.432 0 .735.288.309.285.308.691a.91.91 0 0 1-.308.691 1.04 1.04 0 0 1-.736.284m4.306-1.462V16h-1.8V5.818zm4.991 10.331q-1.149 0-1.984-.477a3.23 3.23 0 0 1-1.277-1.362q-.447-.886-.448-2.083 0-1.178.448-2.069a3.4 3.4 0 0 1 1.263-1.392q.81-.502 1.904-.502.706 0 1.332.229.631.223 1.114.696.488.473.765 1.203.279.726.279 1.73v.552h-6.26v-1.213h4.535a1.94 1.94 0 0 0-.224-.92 1.63 1.63 0 0 0-.612-.641 1.7 1.7 0 0 0-.904-.234q-.552 0-.97.269a1.85 1.85 0 0 0-.651.696q-.229.427-.234.94v1.058q0 .666.244 1.144.244.472.68.726.438.248 1.025.248.393 0 .71-.11.32-.113.553-.332t.353-.542l1.68.189a2.6 2.6 0 0 1-.606 1.163 2.96 2.96 0 0 1-1.134.766q-.691.268-1.58.268"
|
|
12
|
+
}));
|
|
13
|
+
export default SvgBasicprofile;
|
|
14
|
+
//# sourceMappingURL=Basicprofile.js.map
|
|
@@ -1 +1,14 @@
|
|
|
1
|
-
function _extends(){return _extends=Object
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import Svg, { Path } from 'react-native-svg';
|
|
4
|
+
const SvgCheckbox = props => /*#__PURE__*/React.createElement(Svg, _extends({
|
|
5
|
+
width: 16,
|
|
6
|
+
height: 16,
|
|
7
|
+
fill: "none",
|
|
8
|
+
viewBox: "0 0 16 16"
|
|
9
|
+
}, props), /*#__PURE__*/React.createElement(Path, {
|
|
10
|
+
stroke: "#CECFD2",
|
|
11
|
+
d: "M4 .5h8A3.5 3.5 0 0 1 15.5 4v8a3.5 3.5 0 0 1-3.5 3.5H4A3.5 3.5 0 0 1 .5 12V4A3.5 3.5 0 0 1 4 .5Z"
|
|
12
|
+
}));
|
|
13
|
+
export default SvgCheckbox;
|
|
14
|
+
//# sourceMappingURL=Checkbox.js.map
|