@onairos/react-native 3.7.2 → 3.7.4
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/components/BodyText.js +27 -9
- package/lib/commonjs/components/BrandMark.js +111 -10
- package/lib/commonjs/components/CodeInput.js +120 -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/components/BodyText.js +20 -1
- package/lib/module/components/BrandMark.js +104 -1
- package/lib/module/components/CodeInput.js +113 -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,18 +1,1754 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
function _0x1043(){const _0x27c91f=['defineProperty','__esModule','OAuthWebView','function','default','JiMQE','uAiEp','Dtapi','iqPZU','has','get','UxUCt','call','getOwnPropertyDescriptor','set','sVUXC','Dimensions','platform','💼\x20[LINKEDIN]\x20Initialized\x20-\x20waiting\x20for\x20page\x20load','ZDgoX','EUDkz','🤖\x20[CHATGPT]\x20Initialized\x20-\x20waiting\x20for\x20page\x20load','🧠\x20[CLAUDE]\x20Initialized\x20-\x20waiting\x20for\x20page\x20load','TFDKB','items','yRCYD','Starting\x20extraction...','Close','❌\x20[HINGE]\x20Export\x20error:','code','frpMj','saYNJ','1|0|3|4|2','0|6|2|4|5|1|3','Extracting\x20profile...','🔍\x20[LINKEDIN]\x20Executing\x20profile\x20DOM\x20scraping...','📊\x20[LINKEDIN]\x20Scrape\x20progress:','4|3|1|5|0|2','Connected!','success','zRixL','Connecting','GZCsV','AcTDC','Export\x20Failed','IwDnT','ZcCvq','Lowpm','onairos.uk','🚀\x20[LINKEDIN]\x20Auto-triggering\x20profile\x20URL\x20extraction...','/signin','/registration','/auth','✅\x20[CLAUDE]\x20User\x20logged\x20in!\x20Detected\x20main\x20page\x20navigation','🔐\x20[CHATGPT]\x20On\x20auth/login\x20page\x20-\x20waiting\x20for\x20user\x20to\x20log\x20in...','qQniy','denied','You\x20denied\x20access\x20to\x20your\x20LinkedIn\x20profile\x20data.','✅\x20[LINKEDIN]\x20User\x20allowed\x20profile\x20consent\x20-\x20starting\x20extraction','LINKEDIN_PROFILE_PROGRESS','jAUHg','lntmi','NZpSf','❌\x20[LINKEDIN]\x20Profile\x20extraction\x20error:','Extraction\x20Failed','aUNrO','✅\x20[LINKEDIN]\x20Profile\x20URL\x20extracted:','unknown_user','⚠️\x20[LINKEDIN]\x20Profile\x20URL\x20extraction\x20failed:','DEBUG_LOG','wpLUp','MEMORIES_DATA','jDeUJ','🧠\x20[CHATGPT]\x20Received\x20memories\x20data\x20from\x20WebView,\x20storing...','WflWb','IUDUc','tvgZw','FaikD','CONVERSATION_EXPORT_COMPLETE','📤\x20[CHATGPT]\x20Backend\x20storage\x20result:','PxtFb','📤\x20[CLAUDE]\x20Backend\x20storage\x20result:','CONVERSATION_EXPORT_ERROR','AwkUF','0|2|4|1|3','CHATGPT_CONSENT','CLAUDE_CONSENT','allowed','MEMORIES_FETCH_COMPLETE','lkwKi','HINGE_EXPORT_PROGRESS','HINGE_EXPORT_COMPLETE','✅\x20[HINGE]\x20Export\x20complete!','📤\x20[HINGE]\x20Storing\x20data\x20to\x20backend...','INSTAGRAM_EXPORT_PROGRESS','INSTAGRAM_EXPORT_COMPLETE','Storing\x20data...','Uzrph','📤\x20[INSTAGRAM]\x20Storing\x20data\x20to\x20backend...','📤\x20[INSTAGRAM]\x20Backend\x20storage\x20result:','INSTAGRAM_EXPORT_ERROR','6|7|0|3|4|1|2|5','❌\x20[INSTAGRAM]\x20Export\x20error:','SEPHORA_EXPORT_PROGRESS','NlCHP','SEPHORA_EXPORT_COMPLETE','✅\x20[SEPHORA]\x20Export\x20complete!','📤\x20[SEPHORA]\x20Backend\x20storage\x20result:','❌\x20[SEPHORA]\x20Export\x20error:','TELEGRAM_EXPORT_PROGRESS','TELEGRAM_EXPORT_COMPLETE','✅\x20[TELEGRAM]\x20Export\x20complete!','TaqMz','TELEGRAM_EXPORT_ERROR','IZUjC','wEKgb','❌\x20[TELEGRAM]\x20Export\x20error:','HINGE_CONSENT','SEPHORA_CONSENT','tyMvy','#0077B5','#D97706','#FF0000','#4285F4','#10B981','6|4|7|5|8|3|0|1|2','NKShS','SwOUt','✅\x20[LINKEDIN]\x20On\x20profile\x20page','linkedin.com','sHorq','🔍\x20[LINKEDIN]\x20On\x20login\x20page\x20-\x20waiting\x20for\x20user\x20to\x20log\x20in...','EDyUf','🚀\x20[LINKEDIN]\x20Navigating\x20directly\x20to\x20/me...','/auth/login','/signup','/api/auth/','chatgpt.com','chat.openai.com','/api/','✅\x20[CHATGPT]\x20User\x20logged\x20in!\x20Detected\x20main\x20page\x20navigation','AHkeO','/login','claude.ai','/accounts/login','/challenge','mztOO','💉\x20[LINKEDIN]\x20Auto-injecting\x20profile\x20extraction\x20script...','pDINw','HuyWS','access_token','QKElA','FxBpv','SdDrv','apqoZ','umUty','onairos.uk/Home','onairos.uk/home','https://onairos.uk/Home','https://onairos.uk/home','success=true','QnQXh','❌\x20[CHATGPT]\x20Memories\x20storage\x20error:','linkedin://','linkedinssl://','linkedin','vIRjl','🚫\x20[LINKEDIN]\x20Blocked\x20intent://\x20deep\x20link:','http://','https://','mkjOa','about:','#10A37F','#7C3AED','piVFB','mDHtL','nGaoy','claude','Platform:','Connect\x20','Taking\x20longer\x20than\x20expected...','100%','large','Extracting\x20Data','...','\x20account','https://*','http://*','useRef','useState','Value','current','Animated','useChatGPTConversationExtractor','useInstagramDataExtractor','useSephoraDataExtractor','isLinkedInPlatform','VqFbG','ITbRT','toLowerCase','AaklO','OTYTj','openai','iyUBo','ciMlA','omAxx','OBKIB','TLTWd','isHingePlatform','isInstagramPlatform','isSephoraPlatform','isTelegramPlatform','log','LLM','WjBmt','WDLjS','\x20WebView\x20with\x20URL:','jdGLx','useEffect','oGjos','vHNqg','YAWnZ','\x20timeout\x20reached\x20for\x20','\x20after\x202\x20minutes','aVcSW','hsYKG','UfiLW','GgHlK','dpURe','TAAFg','progress','%\x20-\x20','message','QnkLV','Extracting...\x20','timing','start','YXPrm','nSxYS','TSLOP','RXmnT','HAYsb','GdapJ','stop','setValue','loop','sequence','useCallback','CHATGPT_EXPORT_SCRIPT','BoIdr','uGmCR','xjOJa','YrINR','injectJavaScript','CLAUDE_EXPORT_SCRIPT',']\x20Memories\x20fetch\x20complete:','QHgsg','data','🚀\x20[','toUpperCase',']\x20Triggering\x20export\x20script...','wobSG','HINGE_EXPORT_SCRIPT','YppDR','molCj','INSTAGRAM_EXPORT_SCRIPT','Ennda','split','Alert','alert','WBfVw','error','Ttuud','qfLNh','ikULC','dEcQA','url','searchParams','eDvYC','dvAIt','osKFJ','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20window.location.href\x20=\x20\x27https://www.linkedin.com/me\x27;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20true;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','TELEGRAM_EXPORT_SCRIPT','PqAHR','🚀\x20[LINKEDIN]\x20Triggering\x20profile\x20DOM\x20scraping...','qGiAu','GUbEO','ZoJSP','gLzAr','PYrHk','LINKEDIN_PROFILE_SCRAPER_SCRIPT','ppVqx','yEeuJ','igYON','LbifM','kmdcg','XqeCj','RyYFE','dKkMd','AKAYD','hyFvL','DUCqT','aHytW','MgUTI','FUVMY','pRFnn','HiKcO','ZRaxq','VxgzW','gPHxd','rhgef','smMbs','kWueU','parse','nativeEvent','📩\x20[','type','status','WrHiO','GELOc','jMIpw','IMDTd','EljXH','🚀\x20[CHATGPT]\x20Triggering\x20export\x20script...','ugpFa','LINKEDIN_PROFILE_CONSENT','ewXWx','FpCvl','Connection\x20Cancelled','NaUFd','JAPvn','jCWsO','oVnTT','jVpPq','IgeoB','📊\x20[LINKEDIN]\x20Profile\x20extraction\x20progress:\x20','VPiOh','IaOpV','OCYeE','QXpLT','SiQiH','headline','substring','dEWAS','experience','length','EISvW','zDttU','education','syuOO','qOBhR','skills','THNQG','Storing\x20profile\x20data...','XXWWU','storeLinkedInProfile','📤\x20[LINKEDIN]\x20Storage\x20result:','gglWN','lUNwA','ULMqa','cqJlB','XbJSb','eSFNg','QTpMr','ucfwO','LINKEDIN_PROFILE_EXPORT_ERROR','fgTDG','Uxamu','AhWnz','3|6|2|0|1|7|5|4','nFuKi','XIUDz','Failed\x20to\x20extract\x20LinkedIn\x20profile:\x20','cancel','ZAylh','profileUrl','statusCode','includes','oUmTv','PTTLi','nFlaK','EDneL','PUoXr','sgdYD','✅\x20[LINKEDIN]\x20Profile\x20scraping\x20complete!','THZvP','BMqCx','hpdgK','ubElb','zfCHC','hbKpl','mQfgY','DDtDo','Jxywc','kNWWM','FNlLL','unNVF','QpwbN','kouWi','❌\x20[LINKEDIN]\x20Scraping\x20failed\x20(attempt\x20','iyORo','MYqiw','yrAqT','iqDKM','DWljQ','TWCeh','MwuGx','aataz','oOKdP','❌\x20[LINKEDIN]\x20Exception\x20(attempt\x20','totdb','vlmvw','RDUFB','SLBqc','warn','oTYfY','gbUdz','XSwNT','AhtOR','rmkNH','znuDe','XCSoF','🔍\x20[',']\x20Export\x20error:','VvYJH','GvGci','zjAGq','mXcls','Failed\x20to\x20export\x20','\x20conversations:\x20','dNFWo','QiaAt','iyIPP','yNSfR','pajMv','bDRtc','vuelr','VPwYs','cyoTR','InskV','cZQQh','YZXvj','memoriesData','TkGVN','JAFYj','wLZqP','IffAl','GTOWN','LINKEDIN_PROFILE_EXTRACTOR_SCRIPT','xLtBy','📊\x20[CHATGPT]\x20Export\x20progress:\x20','BXyRi','CjYZr','📊\x20[CLAUDE]\x20Export\x20progress:\x20','Rvdpf','total_conversations','HClBj','tkOEC','conversations','total_messages','vvDDe','CvhXs','wFZrI','✅\x20[CHATGPT]\x20Export\x20complete:\x20','\x20messages','eqOAL','jQTTa','NqRyS','NsPNi','✅\x20[CLAUDE]\x20Export\x20complete:\x20','UGIBf','Storing\x20','\x20conversations...','kwxRY','omZnq','IveLW','KmFWg','rezuy','zZdgG','✅\x20Imported\x20','\x20conversations!','giLpT','FSdKk','QcwEa','HndHE','rOaYi','❌\x20[','lHeKF','YkxNk','fhnUU','ZMtRL','mzIuL','VpIMY','Pgetr','loading','AbOLa','NKtiS','onYJd','RYbzJ',']\x20User\x20denied\x20consent','You\x20denied\x20access\x20to\x20your\x20','✅\x20[',']\x20User\x20allowed\x20consent','SCEfm','OlhXC','🧠\x20[','wBXAB','MEMORIES_FETCH_ERROR','ROcXh','⚠️\x20[',']\x20Memories\x20fetch\x20failed:','🔍\x20[CLAUDE]\x20Navigation:\x20',',\x20loading=','zepbO','nfqFY','ZYioa','ysQyY','kvXcm','gBLBF','📊\x20[HINGE]\x20Export\x20progress:\x20','tnqqJ','dvliT','PCbWG','GKdKp','ouVNY','Zxetw','ZNgEN','MSAEz','JJhdi','Uvsrt','hLiWP','HDlkg','GElmu','HYTCn','coEMo','KIpBH','HINGE_EXPORT_ERROR','dNldW','Failed\x20to\x20export\x20Hinge\x20data:\x20','hTujK','📊\x20[INSTAGRAM]\x20Export\x20progress:\x20','xTvui','PXfDF','pZSxe','gQVZZ','nYWDh','WxsUQ','rVnGX','FPxQI','ghBeq','IogkZ','RKWBe','NjmBe','XPvyw','TLKRi','TCBHf','vTTcv','fMnJy','pDAXH','xDzDk','YNTII','ATIhj','Failed\x20to\x20export\x20Instagram\x20data:\x20','xESZe','ZJRnN','ehbDy','tRKeS','Extracting\x20data...\x20','📊\x20[SEPHORA]\x20Export\x20progress:\x20','KWDbe','gkdvz','dRFIa','rhjKz','bLyek','EsUoK','BMaug','xSHIZ','BlDQD','fabfh','OTunp','cjSUp','XyzvE','iavwO','Failed\x20to\x20export\x20Sephora\x20data:\x20','hBpLt','FSPde','MDltG','DnktR','1|4|6|2|5|7|3|0','tgvna','xFymJ','iuzaH','YwWHh','XqvQp','Dgqje','DbmLL','SQZOr','SrhAA','📤\x20[TELEGRAM]\x20Backend\x20storage\x20result:','\x20OAuth\x20completed\x20-\x20backend\x20callback\x20finished,\x20URL:\x20','rcgXB','BocNZ','LAgxH','LfIAI','hvvdw','BglUQ','ZwTAW','YXkEK','CEJAB','twEyb','wheop','AISzE','xazan','tzKaw','HxuDG','ifinI','⛔\x20[','\x20data.',']\x20Unknown\x20message\x20type:',']\x20Error\x20parsing\x20WebView\x20message:','jeOfL','cWPXZ','WSIIq','XXGvH','gwHKn','xAPCP','sBNsS','xmYDd','RLikp','SGDwY','sWRBy','cxkin','LinkedIn','YfMVS','🔍\x20[LINKEDIN]\x20Navigation:\x20',',\x20isLoadEnd=','isLinkedInOAuthCallback','💼\x20[LINKEDIN]\x20On\x20OAuth\x20callback\x20URL\x20-\x20connection\x20successful!','mZDzu','Uyall','xuqeH','KuZsP','sdxgV','hPbLt','isLinkedInProfilePage','pIAeR','QEOyj','daRFM','Mumdw','XCDkC','ZJAvl','dVvBQ','Siqco','EFaJV','xGwAv','VqLAj','RbqAD','vKXgZ','hRAhj','inCwh','Trfgn','zRGFF','RxRHB','jzGYy','isLinkedInLoginPage','cqEir','SmjdS','evZJw','OkBZp','DdhSD','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20window.location.href\x20=\x20\x27https://www.linkedin.com/me\x27;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20true;\x0a\x20\x20\x20\x20\x20\x20\x20\x20','hYNoD','eLmud','Nudtt','🔍\x20[CHATGPT]\x20Navigation:\x20','🔍\x20[CHATGPT]\x20State:\x20loggedIn=',',\x20started=','pilaU','nKWdn','wirrg','YIuNW','iRuKI','zxvMf','ekNIW','QqKiM','WnGng','Menfg','eCxYv','YWGFc','🔐\x20[CLAUDE]\x20On\x20login\x20page\x20-\x20waiting\x20for\x20user\x20to\x20log\x20in...','CbBtR','FAWZA','hRRec','iLEfW','Sylby','QeRYH','NeZoH',']\x20Navigation:\x20','hinge.co','Desui','/accounts/signup','jXaWP','MsIKs','usZma','pjjhB','sephora.com','SEPHORA_EXPORT_SCRIPT','shAgu','pPKio','UGQBy','VFpxS','Hnyup','🔐\x20[',']\x20On\x20login\x20page\x20-\x20waiting\x20for\x20user\x20to\x20log\x20in...','nHKck','🚫\x20[LINKEDIN]\x20Blocked\x20app\x20deep\x20link:',']\x20User\x20logged\x20in!\x20Detected\x20main\x20page\x20navigation','UEnVB','VzuKI','kWpnW','pKPcY','HOqgA','object','qLQvw','hasOwnProperty','Navigation\x20state\x20changed\x20for\x20','bYGQF','htbOt','isLoggedInUrl','oikmS','BYdwb','AdacN','uqvVJ','✅\x20[LINKEDIN]\x20OAuth\x20SUCCESS\x20-\x20Authorization\x20code/token\x20received','💼\x20[LINKEDIN]\x20Navigating\x20to\x20profile\x20page...','uBWGG','mLCZQ','DzpZb','ZOEmx','SgJMC','wkBfl','yBilq','dMdxp',']\x20Login\x20detected!','REmIu','startsWith','ooimB','oauth-callback.html','PItOl','wvOoQ','ivTfw','EjIyd','usmRL','sdCJw','zNNdA','linkedinapp://','QnZzE','linkedin-mobile://','some','YnyOF','ZTImQ','KLtUz','MEvEX','VeHjr','QFwJy','YVqKf','vUTvO','NGdxs','uYzEp','qrstD','ACXZl','YMZbS','VuRZo','pRfUs','getAntiDetectionScript','jPWor','cSMhT','RqAgB','#FF4500','#E60023','jgUkQ','#000000','hrtFZ','GUjpt','OzGZj','spring','modalContainer','createElement','SafeAreaView','container','View','header','title','gbMFC','slice','Text','timeoutText','ToOJK','TouchableOpacity','closeButton','closeButtonText','linkedinProgressTrack','linkedinProgressIndicator','interpolate','qhemR','Connecting\x20to\x20LinkedIn...','progressBarContainer','lvsfb','Exporting...\x20','round','FWJQg','claudeExtractionOverlay','extractionContent','ActivityIndicator','claudeExtractionTitle','claudeExtractionSubtitle','claudeExtractionProgressFill','claudeExtractionProgressText','newPlatformExtractionOverlay','WgtOi','newPlatformExtractionTitle','pXkqS','newPlatformExtractionSubtitle','newPlatformExtractionProgressContainer','newPlatformExtractionProgressFill','newPlatformExtractionProgressText','successOverlay','successCheckmarkIcon','successText','webViewContainer','dvldg','sxrAn','loadingHint','Please\x20log\x20in\x20to\x20your\x20','JiIxx','WebView','webView','getPlatformUserAgent','KowHg','WebView\x20error\x20for\x20','fLgKE','qJmqC','mMFSo','NItBK','nwVdd','WebView\x20HTTP\x20error\x20for\x20','NGhWf','create','absolute','hidden','row','space-between','#E5E5E5','#333','center','absoluteFillObject','rgba(255,\x20255,\x20255,\x200.9)','#666','#FAFBFC','#E1E9EE','IBM\x20Plex\x20Sans','#F9FAFB','#E5E7EB','#6B7280','#000','#FFFFFF','bold','700','#1a1a1a','600'];_0x1043=function(){return _0x27c91f;};return _0x1043();}Object[_0x1678(0x0)](exports,_0x1678(0x1),{'value':!![]}),exports[_0x1678(0x2)]=void 0x0;var _react=_interopRequireWildcard(__ONAIROS_REQ_FUNC__(0x0)),_reactNative=__ONAIROS_REQ_FUNC__(0x1),_reactNativeWebview=__ONAIROS_REQ_FUNC__(0x2),_webviewScripts=__ONAIROS_REQ_FUNC__(0x3),_linkedinDOMExtractor=__ONAIROS_REQ_FUNC__(0x4),_chatGPTConversationExtractor=__ONAIROS_REQ_FUNC__(0x5),_claudeConversationExtractor=__ONAIROS_REQ_FUNC__(0x6),_linkedinProfileService=__ONAIROS_REQ_FUNC__(0x7),_hingeDataExtractor=__ONAIROS_REQ_FUNC__(0x8),_instagramDataExtractor=__ONAIROS_REQ_FUNC__(0x9),_sephoraDataExtractor=__ONAIROS_REQ_FUNC__(0xa),_telegramDataExtractor=__ONAIROS_REQ_FUNC__(0xb);function _0x1678(_0x104348,_0x1678da){_0x104348=_0x104348-0x0;const _0x26cc6b=_0x1043();let _0x400f05=_0x26cc6b[_0x104348];return _0x400f05;}function _interopRequireWildcard(_0x57909f,_0x158114){const _0x3e16e3={'Dtapi':function(_0x1af851,_0x670b4a){return _0x1af851&&_0x670b4a;},'iqPZU':'object','spVAW':function(_0x2d09eb,_0x7b132){return _0x2d09eb!=_0x7b132;},'uAiEp':_0x1678(0x3),'UxUCt':function(_0x51a1e9,_0x404476){return _0x51a1e9!==_0x404476;},'loolu':_0x1678(0x4),'sVUXC':function(_0x52c10a,_0x3075d9,_0x111b5b,_0x5c5647){return _0x52c10a(_0x3075d9,_0x111b5b,_0x5c5647);},'JiMQE':function(_0x8dcc2d,_0x1fcfc4){return _0x8dcc2d==_0x1fcfc4;}};if(_0x3e16e3[_0x1678(0x5)](_0x3e16e3[_0x1678(0x6)],typeof WeakMap))var _0x34e0cb=new WeakMap(),_0x4601fd=new WeakMap();return(_interopRequireWildcard=function(_0x546b61,_0x3a7f30){if(_0x3e16e3[_0x1678(0x7)](!_0x3a7f30,_0x546b61)&&_0x546b61['__esModule'])return _0x546b61;var _0x5a9a6e,_0x49d450,_0x42ff62={'__proto__':null,'default':_0x546b61};if(null===_0x546b61||_0x3e16e3[_0x1678(0x8)]!=typeof _0x546b61&&_0x3e16e3['spVAW'](_0x3e16e3[_0x1678(0x6)],typeof _0x546b61))return _0x42ff62;if(_0x5a9a6e=_0x3a7f30?_0x4601fd:_0x34e0cb){if(_0x5a9a6e[_0x1678(0x9)](_0x546b61))return _0x5a9a6e[_0x1678(0xa)](_0x546b61);_0x5a9a6e['set'](_0x546b61,_0x42ff62);}for(const _0xbcabeb in _0x546b61)_0x3e16e3[_0x1678(0xb)](_0x3e16e3['loolu'],_0xbcabeb)&&{}['hasOwnProperty'][_0x1678(0xc)](_0x546b61,_0xbcabeb)&&((_0x49d450=(_0x5a9a6e=Object[_0x1678(0x0)])&&Object[_0x1678(0xd)](_0x546b61,_0xbcabeb))&&(_0x49d450[_0x1678(0xa)]||_0x49d450[_0x1678(0xe)])?_0x3e16e3[_0x1678(0xf)](_0x5a9a6e,_0x42ff62,_0xbcabeb,_0x49d450):_0x42ff62[_0xbcabeb]=_0x546b61[_0xbcabeb]);return _0x42ff62;})(_0x57909f,_0x158114);}const {width,height}=_reactNative[_0x1678(0x10)]['get']('window'),OAuthWebView=({url:_0x29ed45,onClose:_0x1b2026,onSuccess:_0x21d104,platform:platform=_0x1678(0x11),onComplete:_0x2a3e2c,username:_0x24682d})=>{const _0x260109={'oGjos':'LLM','WjBmt':'LinkedIn','WDLjS':'OAuth','HiKcO':function(_0xaddf22,_0x460b8d,_0x36978c){return _0xaddf22(_0x460b8d,_0x36978c);},'aVcSW':_0x1678(0x12),'hsYKG':function(_0xaba593,_0x5c95c4){return _0xaba593(_0x5c95c4);},'qfLNh':function(_0x471abc,_0xb8f37f){return _0x471abc!==_0xb8f37f;},'GgHlK':'UfiLW','QcwEa':function(_0xf6135e,_0x37c23f){return _0xf6135e!==_0x37c23f;},'dpURe':_0x1678(0x13),'TAAFg':_0x1678(0x14),'uqvVJ':_0x1678(0x15),'YXPrm':_0x1678(0x16),'YppDR':function(_0x365e2f,_0x3c0227){return _0x365e2f===_0x3c0227;},'HAYsb':_0x1678(0x17),'qUDqc':'🚀\x20[CHATGPT]\x20Triggering\x20export\x20script...','YrINR':function(_0x3504b6,_0x460159){return _0x3504b6(_0x460159);},'BoIdr':_0x1678(0x18),'uGmCR':_0x1678(0x19),'xjOJa':'🚀\x20[CLAUDE]\x20Triggering\x20export\x20script...','xmYDd':_0x1678(0x1a),'Ennda':'4|6|5|0|7|1|2|3','ULMqa':function(_0x4c8b3a,_0x527647){return _0x4c8b3a(_0x527647);},'WBfVw':'Retry','dKkMd':_0x1678(0x1b),'mzIuL':'cancel','Ttuud':_0x1678(0x1c),'wobSG':function(_0x375d87,_0x349ec7){return _0x375d87(_0x349ec7);},'ikULC':'💼\x20[LINKEDIN]\x20Navigating\x20to\x20profile\x20page...','dEcQA':function(_0x32f4d1,_0x36ee4e){return _0x32f4d1(_0x36ee4e);},'eDvYC':_0x1678(0x1d),'dvAIt':function(_0x3051b1,_0x46cb54){return _0x3051b1||_0x46cb54;},'EljXH':function(_0x426340,_0x261178){return _0x426340(_0x261178);},'cqJlB':function(_0x300d9d,_0x3f4b50){return _0x300d9d(_0x3f4b50);},'molCj':_0x1678(0x1e),'pFDbz':_0x1678(0x1f),'PqAHR':_0x1678(0x20),'qGiAu':function(_0x2b98c7,_0x2db15b){return _0x2b98c7(_0x2db15b);},'LbifM':function(_0x3f9ca4,_0x2f92e6){return _0x3f9ca4(_0x2f92e6);},'uYzEp':function(_0x1e94c8,_0x45bf64){return _0x1e94c8!==_0x45bf64;},'gLzAr':_0x1678(0x21),'ppVqx':function(_0x450d21,_0x54adb5){return _0x450d21(_0x54adb5);},'PYrHk':_0x1678(0x22),'yEeuJ':function(_0xb8a25d,_0x7bcd00){return _0xb8a25d(_0x7bcd00);},'igYON':_0x1678(0x23),'jMIpw':'6|5|2|4|3|1|0','IMDTd':function(_0x2d4d57,_0x1ba818){return _0x2d4d57(_0x1ba818);},'gglWN':function(_0x2ac774,_0x30bf69){return _0x2ac774(_0x30bf69);},'LfIAI':function(_0xf47c95,_0x19af51,_0x327ecf){return _0xf47c95(_0x19af51,_0x327ecf);},'IgeoB':function(_0x577955,_0x3de542){return _0x577955+_0x3de542;},'PUoXr':_0x1678(0x24),'sgdYD':_0x1678(0x25),'eSFNg':_0x1678(0x26),'THZvP':function(_0x1819a5,_0x411ce7){return _0x1819a5(_0x411ce7);},'daRFM':function(_0x20864e,_0x2989ce,_0x714e65){return _0x20864e(_0x2989ce,_0x714e65);},'XqeCj':_0x1678(0x27),'BMqCx':_0x1678(0x28),'ubElb':function(_0x3db711,_0x2b38cf){return _0x3db711-_0x2b38cf;},'zfCHC':function(_0x5ae1ae,_0x15b7ec){return _0x5ae1ae(_0x15b7ec);},'RDUFB':function(_0x47eb4f,_0x39be9c,_0x5a96ea){return _0x47eb4f(_0x39be9c,_0x5a96ea);},'hbKpl':function(_0x12a69a,_0x561b4c){return _0x12a69a(_0x561b4c);},'RXmnT':_0x1678(0x29),'oOKdP':_0x1678(0x2a),'MgAuS':_0x1678(0x2b),'qhemR':function(_0x1d28f6,_0x1387cb){return _0x1d28f6-_0x1387cb;},'xFymJ':function(_0x50102c,_0x2cb965){return _0x50102c(_0x2cb965);},'ZMtRL':function(_0x51d5c0){return _0x51d5c0();},'lHeKF':function(_0x32a265,_0x3c00eb){return _0x32a265(_0x3c00eb);},'KmFWg':function(_0x5d7508,_0x5358a7){return _0x5d7508(_0x5358a7);},'EsUoK':'1|6|7|2|3|0|5|4','gbUdz':function(_0x46f201,_0x412ecc){return _0x46f201(_0x412ecc);},'BMaug':_0x1678(0x2c),'xSHIZ':_0x1678(0x2d),'BlDQD':'hiBQf','hvvdw':function(_0x4cc6e3,_0x471da0){return _0x4cc6e3!==_0x471da0;},'DwPnH':_0x1678(0x2e),'BglUQ':_0x1678(0x2f),'rhgef':function(_0x623937){return _0x623937();},'DbOGX':function(_0x3b24d5){return _0x3b24d5();},'kmdcg':_0x1678(0x30),'RyYFE':function(_0x2c7011){return _0x2c7011();},'AKAYD':_0x1678(0x31),'hyFvL':function(_0x3938ea){return _0x3938ea();},'DUCqT':_0x1678(0x32),'aHytW':_0x1678(0x33),'MgUTI':_0x1678(0x34),'FUVMY':'🔐\x20[CLAUDE]\x20On\x20login\x20page\x20-\x20waiting\x20for\x20user\x20to\x20log\x20in...','pRFnn':_0x1678(0x35),'ZRaxq':_0x1678(0x36),'VxgzW':_0x1678(0x37),'pwKwa':'GSWEG','smMbs':function(_0x39e9b0,_0x326243){return _0x39e9b0(_0x326243);},'kWueU':function(_0x43ca50,_0x5c1785,_0x343c13){return _0x43ca50(_0x5c1785,_0x343c13);},'WrHiO':function(_0x3b1b96,_0x2b1805){return _0x3b1b96!==_0x2b1805;},'GELOc':'rYouN','ugpFa':function(_0x2bc019,_0x36a46e){return _0x2bc019===_0x36a46e;},'JAPvn':function(_0x16c68a,_0x5347ef){return _0x16c68a===_0x5347ef;},'ewXWx':_0x1678(0x38),'FpCvl':'⛔\x20[LINKEDIN]\x20User\x20denied\x20profile\x20consent','NaUFd':_0x1678(0x39),'jCWsO':_0x1678(0x3a),'oVnTT':_0x1678(0x3b),'jVpPq':'yjtiH','dEAXg':_0x1678(0x3c),'VPiOh':function(_0x4d2720,_0x4092fa){return _0x4d2720(_0x4092fa);},'IaOpV':'LINKEDIN_PROFILE_EXPORT_COMPLETE','OCYeE':_0x1678(0x3d),'SiQiH':function(_0x24e74b,_0xc4b959){return _0x24e74b===_0xc4b959;},'dEWAS':function(_0x279411,_0x5b7773){return _0x279411===_0x5b7773;},'EISvW':function(_0x468399,_0x2a5e2e){return _0x468399===_0x2a5e2e;},'zDttU':function(_0x2325b0,_0x33ba93){return _0x2325b0===_0x33ba93;},'syuOO':function(_0x552578,_0x433e81){return _0x552578===_0x433e81;},'qOBhR':function(_0x36a5e4,_0x5a372f){return _0x36a5e4===_0x5a372f;},'THNQG':function(_0x13dac7,_0x234e67){return _0x13dac7===_0x234e67;},'XXWWU':'📤\x20[LINKEDIN]\x20Storing\x20profile\x20data...','lUNwA':function(_0xa572a5,_0x3cd245){return _0xa572a5(_0x3cd245);},'XbJSb':function(_0x129cc3,_0x15a6c0){return _0x129cc3(_0x15a6c0);},'QTpMr':function(_0x1ea261,_0x3b570d,_0x1de94e){return _0x1ea261(_0x3b570d,_0x1de94e);},'Uxamu':_0x1678(0x3e),'nFuKi':_0x1678(0x3f),'XIUDz':_0x1678(0x40),'cOpwR':function(_0x5456fd,_0x558817){return _0x5456fd(_0x558817);},'ZAylh':function(_0x1637ab,_0x1b3218){return _0x1637ab===_0x1b3218;},'SnLrx':_0x1678(0x41),'PTTLi':_0x1678(0x42),'nFlaK':function(_0x24eb1c,_0x13ed03){return _0x24eb1c||_0x13ed03;},'EDneL':_0x1678(0x43),'riUVH':function(_0x23036d,_0xdbea5e){return _0x23036d===_0xdbea5e;},'SLBqc':'error','oTYfY':_0x1678(0x44),'XSwNT':function(_0x562585,_0x3ee76b){return _0x562585(_0x3ee76b);},'jQTTa':function(_0x46009c,_0x4907b5,_0x286774){return _0x46009c(_0x4907b5,_0x286774);},'rmkNH':_0x1678(0x45),'TLTWd':function(_0x34966b,_0x902055){return _0x34966b===_0x902055;},'znuDe':function(_0x4d8c08,_0x288d1c){return _0x4d8c08===_0x288d1c;},'XCSoF':_0x1678(0x46),'bDRtc':function(_0x1fcfd9,_0x12c364){return _0x1fcfd9===_0x12c364;},'vuelr':_0x1678(0x47),'VPwYs':_0x1678(0x48),'cyoTR':_0x1678(0x49),'InskV':function(_0x25c3bc,_0x11f6cc){return _0x25c3bc===_0x11f6cc;},'cZQQh':_0x1678(0x4a),'YZXvj':function(_0x5676a3,_0x10594d){return _0x5676a3(_0x10594d);},'TkGVN':'✅\x20[CHATGPT]\x20Memories\x20stored\x20successfully!','JAFYj':'⚠️\x20[CHATGPT]\x20Memories\x20storage\x20returned\x20false','vnxqM':'EXPORT_PROGRESS','VqFbG':function(_0x144be2,_0x477c08){return _0x144be2===_0x477c08;},'ccONt':_0x1678(0x4b),'eRaqB':_0x1678(0x4c),'xLtBy':_0x1678(0x4d),'BXyRi':'iJwGU','Rvdpf':function(_0x1e3016,_0x346c22){return _0x1e3016(_0x346c22);},'wpNOs':_0x1678(0x4e),'HClBj':function(_0x13df7a,_0x586fd1){return _0x13df7a===_0x586fd1;},'tkOEC':function(_0x45cda4,_0x220a9e){return _0x45cda4===_0x220a9e;},'vvDDe':function(_0x4f5ebc,_0x5e990b){return _0x4f5ebc!==_0x5e990b;},'wFZrI':'CvhXs','fMnJy':function(_0x25f10f,_0x10a3c5){return _0x25f10f!==_0x10a3c5;},'eqOAL':'📤\x20[CHATGPT]\x20Storing\x20conversations\x20to\x20backend...','NqRyS':_0x1678(0x4f),'NsPNi':function(_0x3cb549,_0x1a7e34){return _0x3cb549(_0x1a7e34);},'UGIBf':function(_0xa672a,_0x53511d){return _0xa672a(_0x53511d);},'kwxRY':function(_0x592f05,_0x4329d8){return _0x592f05!==_0x4329d8;},'AbOLa':function(_0x397b2d,_0x5f22a6){return _0x397b2d===_0x5f22a6;},'omZnq':_0x1678(0x50),'VzuKI':function(_0x4c51f0,_0x2541bc,_0x16e734){return _0x4c51f0(_0x2541bc,_0x16e734);},'IveLW':_0x1678(0x51),'rezuy':function(_0x57a28f,_0x49202e){return _0x57a28f(_0x49202e);},'zZdgG':function(_0x9fa8d1,_0x8d4594){return _0x9fa8d1(_0x8d4594);},'giLpT':function(_0x41fe04,_0x7d9d61){return _0x41fe04(_0x7d9d61);},'FSdKk':_0x1678(0x52),'HndHE':_0x1678(0x53),'qaDCl':_0x1678(0x54),'YkxNk':function(_0x19a25a,_0x112c47){return _0x19a25a(_0x112c47);},'fhnUU':function(_0x26c4d9,_0x452be8){return _0x26c4d9(_0x452be8);},'NKtiS':_0x1678(0x55),'onYJd':_0x1678(0x56),'uFhnS':_0x1678(0x57),'SCEfm':function(_0x589d12,_0x5d8d72){return _0x589d12===_0x5d8d72;},'OlhXC':_0x1678(0x58),'wBXAB':function(_0x4a7b17,_0x500a66){return _0x4a7b17===_0x500a66;},'ITbRT':function(_0x4dc2de,_0x53ae8b){return _0x4dc2de===_0x53ae8b;},'ROcXh':_0x1678(0x59),'lpsTm':_0x1678(0x5a),'tnqqJ':function(_0x35573a,_0x1bf820){return _0x35573a===_0x1bf820;},'dvliT':_0x1678(0x5b),'PCbWG':_0x1678(0x5c),'GKdKp':function(_0x3cd262,_0x3b6ddc){return _0x3cd262(_0x3b6ddc);},'ouVNY':_0x1678(0x5d),'Zxetw':function(_0x3181af,_0x48f02f,_0x255eb6){return _0x3181af(_0x48f02f,_0x255eb6);},'ZNgEN':'📤\x20[HINGE]\x20Backend\x20storage\x20result:','MSAEz':function(_0x3074e2,_0x148d22){return _0x3074e2(_0x148d22);},'JJhdi':function(_0x281e2c,_0xda32c4){return _0x281e2c(_0xda32c4);},'Uvsrt':function(_0x2b9c63,_0x481df9){return _0x2b9c63(_0x481df9);},'hajVi':function(_0x34ed72,_0x219b4c){return _0x34ed72===_0x219b4c;},'dNldW':function(_0x5c87d0,_0x18d12f){return _0x5c87d0(_0x18d12f);},'hTujK':_0x1678(0x5e),'xTvui':function(_0x4d07b6,_0x270614){return _0x4d07b6(_0x270614);},'jdqYc':_0x1678(0x5f),'PXfDF':'✅\x20[INSTAGRAM]\x20Export\x20complete!','EPhDv':function(_0x4e9073,_0x56bdad){return _0x4e9073(_0x56bdad);},'pZSxe':function(_0x318ee4,_0x4abeda){return _0x318ee4(_0x4abeda);},'gQVZZ':_0x1678(0x60),'nYWDh':function(_0x5aaa13,_0x23235d){return _0x5aaa13===_0x23235d;},'WxsUQ':_0x1678(0x61),'rVnGX':_0x1678(0x62),'FPxQI':function(_0x32bc93,_0x54a7a6,_0x1364b2){return _0x32bc93(_0x54a7a6,_0x1364b2);},'ghBeq':_0x1678(0x63),'IogkZ':function(_0x57a5f2,_0x33d72b){return _0x57a5f2(_0x33d72b);},'TJDpd':function(_0x8e0baa,_0x123d24){return _0x8e0baa(_0x123d24);},'jxWst':function(_0x297f73,_0x1d3081,_0x5edbe6){return _0x297f73(_0x1d3081,_0x5edbe6);},'vTTcv':_0x1678(0x64),'YNTII':_0x1678(0x65),'ATIhj':function(_0x268d7c,_0x35ef24){return _0x268d7c(_0x35ef24);},'xESZe':_0x1678(0x66),'Zkyqz':function(_0x1a05a1,_0x22fad8){return _0x1a05a1===_0x22fad8;},'wTMyV':_0x1678(0x67),'ZJRnN':'vkHMR','ehbDy':_0x1678(0x68),'KWDbe':function(_0x7f55a7,_0x414ff2){return _0x7f55a7(_0x414ff2);},'gkdvz':function(_0x56ad80,_0x202f6e){return _0x56ad80===_0x202f6e;},'dRFIa':_0x1678(0x69),'rhjKz':_0x1678(0x6a),'pIAeR':function(_0x599202,_0x54940b){return _0x599202(_0x54940b);},'TopHq':function(_0x71c97,_0x1114b3){return _0x71c97(_0x1114b3);},'bLyek':_0x1678(0x6b),'ddXtc':function(_0x3c8f80,_0x3cecfc,_0x570f6c){return _0x3c8f80(_0x3cecfc,_0x570f6c);},'DnktR':'SEPHORA_EXPORT_ERROR','tgvna':_0x1678(0x6c),'PHLXE':function(_0x1f873f,_0x30949d){return _0x1f873f(_0x30949d);},'iuzaH':function(_0x5cb4c8,_0x4e6dc3){return _0x5cb4c8(_0x4e6dc3);},'YwWHh':function(_0x17134d,_0x57f221){return _0x17134d===_0x57f221;},'nZEgg':_0x1678(0x6d),'vaHzC':_0x1678(0x6e),'XqvQp':_0x1678(0x6f),'Dgqje':function(_0x39be97,_0x185f48){return _0x39be97(_0x185f48);},'DbmLL':function(_0x317aaf,_0x2c4893){return _0x317aaf(_0x2c4893);},'SQZOr':_0x1678(0x70),'SrhAA':'📤\x20[TELEGRAM]\x20Storing\x20data\x20to\x20backend...','LAgxH':function(_0x2d3adf,_0x1783b0){return _0x2d3adf(_0x1783b0);},'ZwTAW':_0x1678(0x71),'YXkEK':function(_0x3598e0,_0x35c5ae){return _0x3598e0===_0x35c5ae;},'CEJAB':_0x1678(0x72),'phzrY':_0x1678(0x73),'rBiWG':_0x1678(0x74),'twEyb':function(_0x108fd1,_0x43b6cc){return _0x108fd1(_0x43b6cc);},'wheop':function(_0x18b23e,_0x503a5f){return _0x18b23e(_0x503a5f);},'dXbtG':_0x1678(0x75),'AISzE':function(_0x2a749c,_0x512989){return _0x2a749c===_0x512989;},'xazan':'INSTAGRAM_CONSENT','tzKaw':function(_0x453258,_0x6353b3){return _0x453258===_0x6353b3;},'FmeYJ':_0x1678(0x76),'HxuDG':'TELEGRAM_CONSENT','ifinI':_0x1678(0x77),'SmjdS':function(_0x5e363d,_0x337a9d){return _0x5e363d(_0x337a9d);},'DoIJg':function(_0x3275d2){return _0x3275d2();},'WtqUB':'Connection\x20Cancelled','jeOfL':_0x1678(0x78),'RqAgB':_0x1678(0x79),'cWPXZ':'#FF4500','WSIIq':_0x1678(0x7a),'XXGvH':'#E60023','gwHKn':'#EA4335','jgUkQ':_0x1678(0x7b),'xAPCP':'#E1306C','sBNsS':'#0088CC','lMnjg':_0x1678(0x7c),'gQxBa':_0x1678(0x7d),'RLikp':function(_0x9b733,_0x4a3c87){return _0x9b733(_0x4a3c87);},'SGDwY':_0x1678(0x7e),'cxkin':function(_0x2fcc02,_0x14cb32){return _0x2fcc02(_0x14cb32);},'ciMlA':function(_0x542c08,_0x3ff1ff){return _0x542c08===_0x3ff1ff;},'YfMVS':_0x1678(0x7f),'UNkMX':function(_0x4d7cbf,_0x2130bd){return _0x4d7cbf(_0x2130bd);},'mZDzu':'JvdGi','Uyall':function(_0x12e300,_0xa7ae3b){return _0x12e300(_0xa7ae3b);},'xuqeH':function(_0xa2e5a7,_0x281728){return _0xa2e5a7(_0x281728);},'KuZsP':function(_0x266954,_0x23fc87,_0x1ac45a){return _0x266954(_0x23fc87,_0x1ac45a);},'QEOyj':_0x1678(0x80),'jzGYy':_0x1678(0x81),'mpjNX':_0x1678(0x82),'cqEir':_0x1678(0x83),'evZJw':'🚀\x20[LINKEDIN]\x20User\x20logged\x20in!\x20Immediately\x20navigating\x20to\x20profile...','OxFXg':function(_0x3e4473,_0x2e92f2){return _0x3e4473(_0x2e92f2);},'OkBZp':function(_0x11eb09,_0x547f5e){return _0x11eb09(_0x547f5e);},'uQiol':_0x1678(0x84),'qrwpK':_0x1678(0x85),'yylyV':function(_0x53f9c6){return _0x53f9c6();},'pilaU':_0x1678(0x86),'nKWdn':'auth.openai.com','wirrg':_0x1678(0x87),'YIuNW':_0x1678(0x88),'iRuKI':_0x1678(0x89),'zxvMf':_0x1678(0x8a),'idJCF':_0x1678(0x8b),'ekNIW':function(_0x318b5b,_0x56a6c9){return _0x318b5b&&_0x56a6c9;},'GaJgr':_0x1678(0x8c),'WnGng':_0x1678(0x8d),'Menfg':function(_0x449d88,_0x2094ae){return _0x449d88(_0x2094ae);},'eCxYv':_0x1678(0x8e),'YWGFc':_0x1678(0x8f),'CbBtR':function(_0x3105ce,_0x3a629b){return _0x3105ce&&_0x3a629b;},'VFpxS':function(_0x353d37){return _0x353d37();},'lmqpw':function(_0x1f4623,_0xf61318){return _0x1f4623(_0xf61318);},'Desui':_0x1678(0x90),'jXaWP':_0x1678(0x91),'MsIKs':'instagram.com','usZma':'sWbiQ','shAgu':function(_0x12b75e,_0x26d647){return _0x12b75e===_0x26d647;},'pPKio':_0x1678(0x92),'UGQBy':'web.telegram.org','nHKck':'fivYY','UEnVB':function(_0x127afb,_0xec3ca3){return _0x127afb(_0xec3ca3);},'kWpnW':_0x1678(0x93),'yBilq':function(_0x5c0971,_0x14671b){return _0x5c0971!==_0x14671b;},'pKPcY':_0x1678(0x94),'bYGQF':function(_0xdf9e3b,_0x4b2420){return _0xdf9e3b===_0x4b2420;},'PaVZK':'rMPME','htbOt':_0x1678(0x95),'oikmS':_0x1678(0x96),'BYdwb':_0x1678(0x97),'AdacN':_0x1678(0x98),'uBWGG':_0x1678(0x99),'RsYud':_0x1678(0x9a),'wkBfl':function(_0x303591,_0x16d9de){return _0x303591(_0x16d9de);},'dMdxp':_0x1678(0x9b),'REmIu':_0x1678(0x9c),'radeV':_0x1678(0x9d),'eEDun':'onairos.uk/success','ooimB':_0x1678(0x9e),'qVoUX':_0x1678(0x9f),'PItOl':_0x1678(0xa0),'wvOoQ':function(_0x5f2943,_0x443840){return _0x5f2943(_0x443840);},'ivTfw':function(_0x2f820e,_0x3daebc,_0x398893){return _0x2f820e(_0x3daebc,_0x398893);},'bHnZo':function(_0x102ef8,_0x179b78){return _0x102ef8(_0x179b78);},'EjIyd':_0x1678(0xa1),'sTdPZ':'usmRL','sdCJw':function(_0x1eb95a,_0x100aab,_0x58e8c8){return _0x1eb95a(_0x100aab,_0x58e8c8);},'KtoIw':function(_0x5250e7,_0x2f1b24,_0x3d8393){return _0x5250e7(_0x2f1b24,_0x3d8393);},'UzTZZ':_0x1678(0xa2),'QFwJy':function(_0x3b1f5e,_0xb9694d){return _0x3b1f5e(_0xb9694d);},'zNNdA':_0x1678(0xa3),'QnZzE':_0x1678(0xa4),'YnyOF':function(_0x16db92,_0x45c535){return _0x16db92===_0x45c535;},'KLtUz':'intent://','MEvEX':_0x1678(0xa5),'VeHjr':_0x1678(0xa6),'YVqKf':_0x1678(0xa7),'vUTvO':_0x1678(0xa8),'gHtPd':_0x1678(0xa9),'NGdxs':_0x1678(0xaa),'noKqX':_0x1678(0xab),'qrstD':'ACXZl','ZzOJM':'🚫\x20[LINKEDIN]\x20Blocked\x20non-HTTP\x20scheme:','pRfUs':function(_0x31cd7b,_0x49715e){return _0x31cd7b||_0x49715e;},'cSMhT':_0x1678(0xac),'Bvxli':_0x1678(0xad),'hrtFZ':'#000000','GUjpt':function(_0xae32d5,_0x595f08){return _0xae32d5===_0x595f08;},'OzGZj':_0x1678(0xae),'GcNFp':function(_0x99129,_0x39288f,_0x4e3158){return _0x99129(_0x39288f,_0x4e3158);},'fLgKE':function(_0x1def85,_0x5773e0,_0x15ed2e){return _0x1def85(_0x5773e0,_0x15ed2e);},'KowHg':_0x1678(0xaf),'mMFSo':function(_0x178aaa,_0x2f3e3e){return _0x178aaa!==_0x2f3e3e;},'nwVdd':_0x1678(0xb0),'NGhWf':'HTTP\x20error\x20on\x20onairos.uk\x20domain\x20-\x20treating\x20as\x20potential\x20success','Ebhgj':function(_0x455c43,_0x2b7667,_0x39939d){return _0x455c43(_0x2b7667,_0x39939d);},'AaklO':'chatgpt','OTYTj':function(_0x12ceb8,_0x1b5881){return _0x12ceb8===_0x1b5881;},'iyUBo':function(_0x1210a2,_0x5230cd){return _0x1210a2===_0x5230cd;},'omAxx':_0x1678(0xb1),'HteMh':function(_0x144d51,_0x533bc8){return _0x144d51===_0x533bc8;},'OBKIB':function(_0x5f0f43,_0x48a3d){return _0x5f0f43===_0x48a3d;},'updZv':'anthropic','jdGLx':_0x1678(0xb2),'nSxYS':function(_0x25c401,_0x113aee){return _0x25c401&&_0x113aee;},'TSLOP':function(_0x386a9e,_0x40ee88){return _0x386a9e===_0x40ee88;},'jPWor':function(_0x276afb,_0x594fa9){return _0x276afb&&_0x594fa9;},'bugNF':function(_0x4aa589,_0xe9347e){return _0x4aa589||_0xe9347e;},'gbMFC':_0x1678(0xb3),'ToOJK':_0x1678(0xb4),'lvsfb':_0x1678(0xb5),'LsynJ':function(_0x43b0cd,_0x5e6381){return _0x43b0cd<_0x5e6381;},'FWJQg':'Complete!','WgtOi':_0x1678(0xb6),'pXkqS':_0x1678(0xb7),'dvldg':function(_0x5134d5,_0xa925aa){return _0x5134d5&&_0xa925aa;},'sxrAn':_0x1678(0xb8),'JiIxx':_0x1678(0xb9),'QLBQs':_0x1678(0xba),'habDQ':_0x1678(0xbb)},[_0x6c2e93,_0xc01974]=(0x0,_react['useState'])(!![]),[_0x53e3ea,_0x3258e4]=(0x0,_react['useState'])(![]),_0x2303cf=(0x0,_react[_0x1678(0xbc)])(null),[_0xa9cf31,_0x31c706]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x13ffba,_0x6167ef]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x487d32,_0x3b88e9]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x132b8c,_0x5cb052]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x362be2,_0x4abb84]=(0x0,_react['useState'])(![]),[_0x301b83,_0x5199cd]=(0x0,_react['useState'])(![]),[_0x53f049,_0x4de9d2]=(0x0,_react['useState'])(''),[_0xb531b1,_0x3075e1]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x5d6012,_0x32c7ca]=(0x0,_react[_0x1678(0xbd)])(null),[_0x25e2c1,_0x3f2930]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x6450fd,_0xf76729]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x210820,_0x397d0d]=(0x0,_react[_0x1678(0xbd)])(0x0),[_0x37d4fa,_0x1297ae]=(0x0,_react[_0x1678(0xbd)])(![]),_0x4203ab=(0x0,_react[_0x1678(0xbc)])(![]),_0x259cba=(0x0,_react[_0x1678(0xbc)])(new _reactNative['Animated'][(_0x1678(0xbe))](0x0))[_0x1678(0xbf)],[_0x1e12c7,_0x15510f]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x41abcc,_0x1c9bdc]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x117270,_0x5af05f]=(0x0,_react['useState'])(![]),[_0x237680,_0x3268a6]=(0x0,_react[_0x1678(0xbd)])(0x0),[_0x5e4399,_0x52e225]=(0x0,_react[_0x1678(0xbd)])(![]),_0x4d8f63=(0x0,_react[_0x1678(0xbc)])(new _reactNative[(_0x1678(0xc0))][(_0x1678(0xbe))](0x0))['current'],_0x4ee58e=(0x0,_react['useRef'])(![]),[_0x24b14e,_0x2bf6a7]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x2d5307,_0x32ef17]=(0x0,_react['useState'])(![]),[_0x35d454,_0x2a094f]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x189db1,_0x28f2d]=(0x0,_react[_0x1678(0xbd)])(0x0),[_0x3796d0,_0x3451c0]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x876e4b,_0xf53b4e]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x4817bc,_0x56244e]=(0x0,_react[_0x1678(0xbd)])(''),_0x1f2c57=(0x0,_react['useRef'])(new _reactNative['Animated'][(_0x1678(0xbe))](0x0))[_0x1678(0xbf)],_0x2cbb09=(0x0,_react[_0x1678(0xbc)])(![]),[_0x207fbd,_0x3e8ea2]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x5df3a8,_0x3c02c8]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x6f8300,_0x542ef3]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x50a0e1,_0x4f7876]=(0x0,_react['useState'])(0x0),[_0x3ca959,_0x59b609]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x586243,_0x34596e]=(0x0,_react[_0x1678(0xbd)])(![]),[_0x599722,_0x32e605]=(0x0,_react['useState'])(''),_0x5bfbcc=(0x0,_react[_0x1678(0xbc)])(new _reactNative[(_0x1678(0xc0))][(_0x1678(0xbe))](0x0))[_0x1678(0xbf)],_0x5336e0=(0x0,_react[_0x1678(0xbc)])(![]),[_0x373633,_0x2888e4]=(0x0,_react[_0x1678(0xbd)])(![]),_0x4e80e1=(0x0,_react[_0x1678(0xbc)])(new _reactNative[(_0x1678(0xc0))][(_0x1678(0xbe))](0x0))['current'],_0x504430=(0x0,_react[_0x1678(0xbc)])(new _reactNative['Animated'][(_0x1678(0xbe))](0x0))['current'],_0x380c48=(0x0,_react[_0x1678(0xbc)])(new _reactNative[(_0x1678(0xc0))][(_0x1678(0xbe))](0x0))[_0x1678(0xbf)],{initiateConversationExport:_0x303a69,storeMemories:_0x547b68}=(0x0,_chatGPTConversationExtractor[_0x1678(0xc1)])(),{initiateConversationExport:_0x549c69}=(0x0,_claudeConversationExtractor['useClaudeConversationExtractor'])(),{initiateDataExport:_0x44e585}=(0x0,_hingeDataExtractor['useHingeDataExtractor'])(),{initiateDataExport:_0x2b6915}=(0x0,_instagramDataExtractor[_0x1678(0xc2)])(),{initiateDataExport:_0x849e9e}=(0x0,_sephoraDataExtractor[_0x1678(0xc3)])(),{initiateDataExport:_0x20fcd2}=(0x0,_telegramDataExtractor['useTelegramDataExtractor'])(),_0x2b9829=(0x0,_webviewScripts['isLLMPlatform'])(platform),_0xf05d21=(0x0,_webviewScripts[_0x1678(0xc4)])(platform),_0x44e801=_0x260109[_0x1678(0xc5)](_0x260109[_0x1678(0xc6)](platform,null)||_0x260109['ZAylh'](platform,void 0x0)?void 0x0:platform[_0x1678(0xc7)](),_0x260109[_0x1678(0xc8)])||_0x260109[_0x1678(0xc9)](_0x260109['EISvW'](platform,null)||_0x260109['ITbRT'](platform,void 0x0)?void 0x0:platform[_0x1678(0xc7)](),_0x1678(0xca)),_0x592beb=_0x260109[_0x1678(0xcb)](platform===null||_0x260109[_0x1678(0xcc)](platform,void 0x0)?void 0x0:platform[_0x1678(0xc7)](),_0x260109[_0x1678(0xcd)])||_0x260109['HteMh'](_0x260109[_0x1678(0xce)](platform,null)||_0x260109[_0x1678(0xcf)](platform,void 0x0)?void 0x0:platform[_0x1678(0xc7)](),_0x260109['updZv']),_0x2cf41e=(0x0,_webviewScripts[_0x1678(0xd0)])(platform),_0x27e271=(0x0,_webviewScripts[_0x1678(0xd1)])(platform),_0x1db8ad=(0x0,_webviewScripts[_0x1678(0xd2)])(platform),_0x3b41d0=(0x0,_webviewScripts[_0x1678(0xd3)])(platform),_0x239452=_0x2cf41e||_0x27e271||_0x1db8ad||_0x3b41d0;console[_0x1678(0xd4)]('Opening\x20'+(_0x2b9829?_0x1678(0xd5):_0xf05d21?_0x260109[_0x1678(0xd6)]:_0x260109[_0x1678(0xd7)])+_0x1678(0xd8),_0x29ed45,_0x260109[_0x1678(0xd9)],platform),_react['default'][_0x1678(0xda)](()=>{const _0x209dd4={'vHNqg':_0x260109[_0x1678(0xdb)],'lSBNH':_0x260109[_0x1678(0xd6)],'YAWnZ':_0x260109[_0x1678(0xd7)]},_0x5e6399=_0x260109['HiKcO'](setTimeout,()=>{console[_0x1678(0xd4)]('⏰\x20'+(_0x2b9829?_0x209dd4[_0x1678(0xdc)]:_0xf05d21?_0x209dd4['lSBNH']:_0x209dd4[_0x1678(0xdd)])+_0x1678(0xde)+platform+_0x1678(0xdf)),_0x3258e4(!![]);},0x1d4c0);return()=>clearTimeout(_0x5e6399);},[platform,_0x2b9829,_0xf05d21]),_react['default'][_0x1678(0xda)](()=>{_0xf05d21&&(_0x4de9d2(''),console[_0x1678(0xd4)](_0x260109[_0x1678(0xe0)]));},[_0xf05d21]),_react['default']['useEffect'](()=>{const _0x4c29ef={'QnkLV':function(_0x3502a6,_0x428d30){return _0x260109[_0x1678(0xe1)](_0x3502a6,_0x428d30);}};if(_0x260109['qfLNh'](_0x1678(0xe2),_0x260109[_0x1678(0xe3)])){if(_0x17531d)_0x29454d();}else{if(_0x44e801){if(_0x260109['QcwEa'](_0x260109[_0x1678(0xe4)],_0x260109[_0x1678(0xe5)]))console[_0x1678(0xd4)](_0x260109['uqvVJ']);else{const _0x4471e4=_0x2191b3[_0x1678(0xe6)]||0x0;_0x2328e3[_0x1678(0xd4)]('📊\x20[HINGE]\x20Export\x20progress:\x20'+_0x4471e4+_0x1678(0xe7)+_0x35fc9c[_0x1678(0xe8)]),_0x2796db(_0x4471e4),_0x4c29ef[_0x1678(0xe9)](_0x51f598,_0xfd878e['message']||_0x1678(0xea)+_0x4471e4+'%'),_0x393bec[_0x1678(0xc0)][_0x1678(0xeb)](_0x593a6c,{'toValue':_0x4471e4,'duration':0x12c,'useNativeDriver':![]})[_0x1678(0xec)]();return;}}}},[_0x44e801]),_react[_0x1678(0x4)][_0x1678(0xda)](()=>{_0x592beb&&console['log'](_0x260109[_0x1678(0xed)]);},[_0x592beb]);const _0x5079e8=_0x260109[_0x1678(0xee)](_0xf05d21,_0xa9cf31)&&_0x260109[_0x1678(0xef)](_0x53f049,_0x260109[_0x1678(0xf0)])&&!_0x132b8c;_react[_0x1678(0x4)][_0x1678(0xda)](()=>{if(_0x260109['YppDR'](_0x260109[_0x1678(0xf1)],_0x1678(0xf2)))_0x261af4[_0x1678(0xf3)](),_0x4720f3[_0x1678(0xf4)](0x0);else{if(_0x5079e8){const _0x17705e=_reactNative[_0x1678(0xc0)][_0x1678(0xf5)](_reactNative['Animated'][_0x1678(0xf6)]([_reactNative[_0x1678(0xc0)][_0x1678(0xeb)](_0x380c48,{'toValue':0x1,'duration':0x4b0,'useNativeDriver':!![]}),_reactNative[_0x1678(0xc0)][_0x1678(0xeb)](_0x380c48,{'toValue':0x0,'duration':0x4b0,'useNativeDriver':!![]})]));return _0x17705e['start'](),()=>{_0x17705e['stop'](),_0x380c48[_0x1678(0xf4)](0x0);};}}},[_0x5079e8,_0x380c48]);const _0x47a02c=(0x0,_react[_0x1678(0xf7)])(()=>{if(!_0x2303cf[_0x1678(0xbf)]||_0x41abcc||_0x4ee58e['current'])return;console[_0x1678(0xd4)](_0x260109['qUDqc']),_0x4ee58e[_0x1678(0xbf)]=!![],_0x260109['YrINR'](_0x1c9bdc,!![]),_0x5af05f(!![]),_0x260109[_0x1678(0xe1)](_0x3268a6,0x0),_0x2303cf[_0x1678(0xbf)]['injectJavaScript'](_webviewScripts[_0x1678(0xf8)]);},[_0x41abcc]),_0x1feabd=(0x0,_react[_0x1678(0xf7)])(()=>{const _0x147f9f={'QHgsg':function(_0x2efbae,_0x309fde){return _0x2efbae===_0x309fde;},'evOQf':_0x260109[_0x1678(0xf9)]};if('gdImU'!==_0x260109[_0x1678(0xfa)]){if(!_0x2303cf[_0x1678(0xbf)]||_0x2d5307||_0x2cbb09[_0x1678(0xbf)])return;console[_0x1678(0xd4)](_0x260109[_0x1678(0xfb)]),_0x2cbb09[_0x1678(0xbf)]=!![],_0x32ef17(!![]),_0x2a094f(!![]),_0x260109[_0x1678(0xe1)](_0x28f2d,0x0),_0x260109[_0x1678(0xfc)](_0x3451c0,!![]),_0x260109[_0x1678(0xfc)](_0x56244e,_0x260109['xmYDd']),_0x2303cf[_0x1678(0xbf)][_0x1678(0xfd)](_webviewScripts[_0x1678(0xfe)]);}else{var _0x16caca;_0x21c40e[_0x1678(0xd4)]('🧠\x20['+_0x3c5fb6['toUpperCase']()+_0x1678(0xff),_0x147f9f[_0x1678(0x100)](_0x16caca=_0x51ff95[_0x1678(0x101)],null)||_0x147f9f[_0x1678(0x100)](_0x16caca,void 0x0)?void 0x0:_0x16caca['itemsCount'],_0x147f9f['evOQf']);return;}},[_0x2d5307]),_0x34fdc5=(0x0,_react['useCallback'])(()=>{if(!_0x2303cf[_0x1678(0xbf)]||_0x5df3a8||_0x5336e0['current'])return;console['log'](_0x1678(0x102)+platform[_0x1678(0x103)]()+_0x1678(0x104)),_0x5336e0[_0x1678(0xbf)]=!![],_0x260109[_0x1678(0x105)](_0x3c02c8,!![]),_0x542ef3(!![]),_0x4f7876(0x0),_0x260109[_0x1678(0xfc)](_0x59b609,!![]),_0x260109['cqJlB'](_0x32e605,_0x1678(0x1a));if(_0x2cf41e)_0x2303cf['current'][_0x1678(0xfd)](_webviewScripts[_0x1678(0x106)]);else{if(_0x27e271){if(_0x260109[_0x1678(0x107)](_0x260109[_0x1678(0x108)],_0x260109[_0x1678(0x108)]))_0x2303cf[_0x1678(0xbf)][_0x1678(0xfd)](_webviewScripts[_0x1678(0x109)]);else{const _0x3ea1ed=_0x260109[_0x1678(0x10a)][_0x1678(0x10b)]('|');let _0x436239=0x0;while(!![]){switch(_0x3ea1ed[_0x436239++]){case'0':_0x260109[_0x1678(0xfc)](_0x2c6e3b,![]);continue;case'1':_0x260109['ULMqa'](_0x7f920b,![]);continue;case'2':_0x583c48[_0x1678(0x10c)][_0x1678(0x10d)]('Export\x20Failed','Failed\x20to\x20export\x20Hinge\x20data:\x20'+_0x2ffac0[_0x1678(0xe8)],[{'text':_0x260109[_0x1678(0x10e)],'onPress':()=>_0x4126b1()},{'text':_0x260109['dKkMd'],'onPress':_0x204aa0,'style':_0x260109['mzIuL']}]);continue;case'3':return;case'4':_0x4354a7[_0x1678(0x10f)](_0x260109[_0x1678(0x110)],_0x350342[_0x1678(0xe8)]);continue;case'5':_0x260109[_0x1678(0x105)](_0x34f7cc,0x0);continue;case'6':_0x260109['YrINR'](_0x20d527,![]);continue;case'7':_0x3c5ceb['current']=![];continue;}break;}}}else{if(_0x1db8ad){if(_0x260109[_0x1678(0x111)](_0x1678(0x1f),_0x260109['pFDbz'])){const _0x32084b={'BUTrh':_0x260109[_0x1678(0x112)],'osKFJ':function(_0x277e8a,_0x1ac34e){return _0x260109[_0x1678(0x113)](_0x277e8a,_0x1ac34e);}},_0x5710c9=new _0x2212df(_0x25c1d2[_0x1678(0x114)]),_0x5ce400=_0x5710c9[_0x1678(0x115)]['has'](_0x260109[_0x1678(0x116)]),_0x3a2cdd=_0x5710c9[_0x1678(0x115)][_0x1678(0x9)]('access_token');if(_0x260109[_0x1678(0x117)](_0x5ce400,_0x3a2cdd)){_0x412ed1[_0x1678(0xd4)]('✅\x20[LINKEDIN]\x20OAuth\x20SUCCESS\x20-\x20Authorization\x20code/token\x20received'),_0x260109['EljXH'](_0x938445,!![]),_0x260109['HiKcO'](_0x47897e,()=>{_0x41c5a9[_0x1678(0xbf)]&&(_0x84a1fb['log'](_0x32084b['BUTrh']),_0x32084b[_0x1678(0x118)](_0x470e16,_0x1678(0x29)),_0x27baf2['current']['injectJavaScript'](_0x1678(0x119)));},0x1f4);return;}}else _0x2303cf[_0x1678(0xbf)]['injectJavaScript'](_webviewScripts['SEPHORA_EXPORT_SCRIPT']);}else _0x3b41d0&&_0x2303cf[_0x1678(0xbf)][_0x1678(0xfd)](_webviewScripts[_0x1678(0x11a)]);}}},[_0x5df3a8,platform,_0x2cf41e,_0x27e271,_0x1db8ad,_0x3b41d0]),_0x1973c8=(0x0,_react[_0x1678(0xf7)])(()=>{const _0x3fa3f9=_0x260109[_0x1678(0x11b)][_0x1678(0x10b)]('|');let _0x257f01=0x0;while(!![]){switch(_0x3fa3f9[_0x257f01++]){case'0':console['log'](_0x1678(0x11c));continue;case'1':if(!_0x2303cf[_0x1678(0xbf)]||_0x25e2c1||_0x4203ab['current'])return;continue;case'2':_0x2303cf[_0x1678(0xbf)][_0x1678(0xfd)](_webviewScripts['LINKEDIN_PROFILE_CONSENT_POPUP_SCRIPT']);continue;case'3':_0x4203ab[_0x1678(0xbf)]=!![];continue;case'4':_0x260109[_0x1678(0x11d)](_0x3f2930,!![]);continue;}break;}},[_0x25e2c1]),_0x593518=(0x0,_react[_0x1678(0xf7)])(()=>{if(_0x260109['uYzEp'](_0x1678(0x11e),_0x1678(0x11f))){const _0x79f116=_0x260109[_0x1678(0x120)][_0x1678(0x10b)]('|');let _0x5cb13e=0x0;while(!![]){switch(_0x79f116[_0x5cb13e++]){case'0':if(!_0x2303cf[_0x1678(0xbf)])return;continue;case'1':_0x260109['ppVqx'](_0x4de9d2,_0x260109[_0x1678(0x121)]);continue;case'2':_0x260109[_0x1678(0x105)](_0xf76729,!![]);continue;case'3':_0x2303cf['current'][_0x1678(0xfd)](_webviewScripts[_0x1678(0x122)]);continue;case'4':_0x260109[_0x1678(0x123)](_0x397d0d,0x0);continue;case'5':_0x260109[_0x1678(0x124)](_0x1297ae,!![]);continue;case'6':console[_0x1678(0xd4)](_0x260109[_0x1678(0x125)]);continue;}break;}}else _0x35a77e&&(_0x260109[_0x1678(0x126)](_0x332b1b,''),_0x5a3e44[_0x1678(0xd4)](_0x260109['aVcSW']));},[]),_0x8146af=(0x0,_react['useCallback'])(async _0x4b8496=>{const _0x19ea8d={'QXpLT':_0x1678(0x15),'ucfwO':function(_0x35fd31){return _0x260109['DbOGX'](_0x35fd31);},'AhWnz':function(_0xe52c3,_0x417d9e,_0x4ffbd3){return _0xe52c3(_0x417d9e,_0x4ffbd3);},'AfrDK':_0x260109[_0x1678(0x127)],'oUmTv':_0x260109[_0x1678(0x128)],'AhtOR':function(_0x5adcd5,_0x43aa00){return _0x260109['EljXH'](_0x5adcd5,_0x43aa00);},'QiaAt':function(_0x2ddf9d){return _0x260109[_0x1678(0x129)](_0x2ddf9d);},'iyIPP':function(_0x45d867){return _0x45d867();},'nfqFY':function(_0x2e42c7,_0x149f88){return _0x2e42c7(_0x149f88);},'VvYJH':function(_0x41aeaf,_0x543b5e){return _0x260109[_0x1678(0x113)](_0x41aeaf,_0x543b5e);},'GvGci':function(_0x5a00e5,_0x21195f){return _0x260109[_0x1678(0x123)](_0x5a00e5,_0x21195f);},'zjAGq':function(_0x4d0fd9,_0x4d169c){return _0x260109['ppVqx'](_0x4d0fd9,_0x4d169c);},'mXcls':_0x1678(0x2c),'dNFWo':_0x260109[_0x1678(0x10e)],'yNSfR':_0x260109[_0x1678(0x12a)],'pajMv':_0x260109['mzIuL'],'ZYioa':function(_0x386858,_0x1201ba){return _0x386858&&_0x1201ba;},'wLZqP':_0x260109[_0x1678(0x12b)],'xbCPL':function(_0x1308de){return _0x260109[_0x1678(0x12c)](_0x1308de);},'VpIMY':'/login','Pgetr':_0x260109[_0x1678(0x12d)],'IbBlE':_0x260109[_0x1678(0x12e)],'grSlj':'sephora.com','gBLBF':function(_0x2904fb){return _0x2904fb();},'VtuoS':_0x260109[_0x1678(0x12f)],'zepbO':_0x260109[_0x1678(0x130)],'ysQyY':_0x260109[_0x1678(0x131)],'kvXcm':function(_0x8eb53c,_0x130191,_0x1f65ee){return _0x260109[_0x1678(0x132)](_0x8eb53c,_0x130191,_0x1f65ee);},'hLiWP':_0x260109[_0x1678(0x133)],'HDlkg':function(_0x3d87d8,_0x39fe3a){return _0x260109['QcwEa'](_0x3d87d8,_0x39fe3a);},'GElmu':_0x260109[_0x1678(0x134)],'HYTCn':_0x260109['pwKwa'],'NMTBP':function(_0x26a992,_0x26eee6){return _0x260109['IgeoB'](_0x26a992,_0x26eee6);},'RKWBe':function(_0x42eb5e,_0x4a7936){return _0x260109[_0x1678(0x107)](_0x42eb5e,_0x4a7936);},'NjmBe':_0x1678(0x135),'XPvyw':function(_0x8ee27a){return _0x260109[_0x1678(0x136)](_0x8ee27a);},'tRKeS':function(_0x5c9b34,_0xe364e5){return _0x260109['THZvP'](_0x5c9b34,_0xe364e5);},'rcgXB':function(_0x28a778,_0x2f143b){return _0x260109[_0x1678(0x137)](_0x28a778,_0x2f143b);},'BocNZ':function(_0x3b7205,_0x148aa8,_0xb4c157){return _0x260109[_0x1678(0x138)](_0x3b7205,_0x148aa8,_0xb4c157);}};try{const _0x330b1f=JSON[_0x1678(0x139)](_0x4b8496[_0x1678(0x13a)][_0x1678(0x101)]);console['log'](_0x1678(0x13b)+platform[_0x1678(0x103)]()+']\x20WebView\x20message:',_0x330b1f[_0x1678(0x13c)]||_0x330b1f[_0x1678(0x13d)]);if(_0xf05d21){if(_0x260109[_0x1678(0x13e)](_0x260109[_0x1678(0x13f)],_0x260109[_0x1678(0x13f)])){const _0x3257fe=_0x260109[_0x1678(0x140)][_0x1678(0x10b)]('|');let _0x2de696=0x0;while(!![]){switch(_0x3257fe[_0x2de696++]){case'0':_0x5c5098[_0x1678(0xbf)][_0x1678(0xfd)](_0x14d40b[_0x1678(0xf8)]);continue;case'1':_0x260109[_0x1678(0x141)](_0x3c74ca,0x0);continue;case'2':_0x2846b[_0x1678(0xbf)]=!![];continue;case'3':_0x260109[_0x1678(0x142)](_0x446180,!![]);continue;case'4':_0x260109['gglWN'](_0x228747,!![]);continue;case'5':_0x436f05[_0x1678(0xd4)](_0x1678(0x143));continue;case'6':if(!_0x89b304['current']||_0x48a2df||_0x43a81e[_0x1678(0xbf)])return;continue;}break;}}else{if(_0x260109[_0x1678(0x144)](_0x330b1f['type'],_0x1678(0x145))){if(_0x260109['JAPvn'](_0x330b1f['status'],_0x260109[_0x1678(0x146)])){console['log'](_0x260109[_0x1678(0x147)]),_reactNative[_0x1678(0x10c)][_0x1678(0x10d)](_0x1678(0x148),_0x260109[_0x1678(0x149)],[{'text':'OK','onPress':_0x1b2026}]);return;}else{if(_0x260109[_0x1678(0x14a)](_0x330b1f[_0x1678(0x13d)],_0x1678(0x57))){console[_0x1678(0xd4)](_0x260109[_0x1678(0x14b)]),_0x260109['DbOGX'](_0x593518);return;}}}if(_0x260109['JAPvn'](_0x330b1f[_0x1678(0x13c)],_0x260109[_0x1678(0x14c)])){if(_0x260109[_0x1678(0x144)](_0x260109[_0x1678(0x14d)],_0x260109['dEAXg']))_0x260109['LfIAI'](_0x4a7e4a,_0x260109[_0x1678(0x14e)](_0x97f60,0x1),_0x448d8a);else{const _0x20295e=_0x330b1f[_0x1678(0xe6)]||0x0;console['log'](_0x1678(0x14f)+_0x20295e+_0x1678(0xe7)+_0x330b1f[_0x1678(0xe8)]),_0x260109[_0x1678(0x150)](_0x397d0d,_0x20295e),_0x260109[_0x1678(0xe1)](_0x4de9d2,_0x330b1f[_0x1678(0xe8)]||_0x1678(0xea)+_0x20295e+'%'),_reactNative[_0x1678(0xc0)]['timing'](_0x259cba,{'toValue':_0x20295e,'duration':0x12c,'useNativeDriver':![]})[_0x1678(0xec)]();return;}}if(_0x260109[_0x1678(0x144)](_0x330b1f[_0x1678(0x13c)],_0x260109[_0x1678(0x151)])){if(_0x260109['uYzEp'](_0x260109[_0x1678(0x152)],_0x1678(0x3d)))_0x5f04b3['log'](_0x19ea8d[_0x1678(0x153)]);else{var _0x2a76a7,_0x5bbb37,_0x5c3e4e,_0x14d30b;console[_0x1678(0xd4)]('✅\x20[LINKEDIN]\x20Profile\x20DOM\x20extraction\x20complete!');const _0x2e65d0=_0x330b1f[_0x1678(0x101)];console[_0x1678(0xd4)]('📊\x20[LINKEDIN]\x20Extracted\x20profile:',{'name':_0x2e65d0===null||_0x260109[_0x1678(0x107)](_0x2e65d0,void 0x0)?void 0x0:_0x2e65d0['fullName'],'headline':_0x260109[_0x1678(0x154)](_0x2e65d0,null)||_0x260109[_0x1678(0x144)](_0x2e65d0,void 0x0)||(_0x2a76a7=_0x2e65d0[_0x1678(0x155)])===null||_0x260109[_0x1678(0x144)](_0x2a76a7,void 0x0)?void 0x0:_0x2a76a7[_0x1678(0x156)](0x0,0x32),'experienceCount':(_0x2e65d0===null||_0x260109[_0x1678(0x157)](_0x2e65d0,void 0x0)||_0x260109[_0x1678(0x157)](_0x5bbb37=_0x2e65d0[_0x1678(0x158)],null)||_0x260109[_0x1678(0x107)](_0x5bbb37,void 0x0)?void 0x0:_0x5bbb37[_0x1678(0x159)])||0x0,'educationCount':(_0x260109[_0x1678(0x15a)](_0x2e65d0,null)||_0x260109[_0x1678(0x15b)](_0x2e65d0,void 0x0)||_0x260109[_0x1678(0x107)](_0x5c3e4e=_0x2e65d0[_0x1678(0x15c)],null)||_0x5c3e4e===void 0x0?void 0x0:_0x5c3e4e[_0x1678(0x159)])||0x0,'skillsCount':(_0x260109[_0x1678(0x15d)](_0x2e65d0,null)||_0x2e65d0===void 0x0||_0x260109[_0x1678(0x15e)](_0x14d30b=_0x2e65d0[_0x1678(0x15f)],null)||_0x260109[_0x1678(0x160)](_0x14d30b,void 0x0)?void 0x0:_0x14d30b[_0x1678(0x159)])||0x0}),_0x397d0d(0x5a),_0x260109[_0x1678(0x142)](_0x4de9d2,_0x1678(0x161));if(_0x2e65d0&&_0x24682d){console['log'](_0x260109[_0x1678(0x162)]);const _0x2f85c4=await(0x0,_linkedinProfileService[_0x1678(0x163)])(_0x24682d,_0x2e65d0);console[_0x1678(0xd4)](_0x1678(0x164),_0x2f85c4);}_0x260109[_0x1678(0x165)](_0x397d0d,0x64),_0x260109[_0x1678(0x166)](_0xf76729,![]),_0x260109[_0x1678(0x167)](_0x1297ae,![]),_0x260109[_0x1678(0x168)](_0x5cb052,!![]),_0x260109['KmFWg'](_0x5199cd,!![]),_0x260109[_0x1678(0x169)](_0x4de9d2,_0x260109[_0x1678(0x16a)]),_0x21d104(_0x260109[_0x1678(0x128)]),_0x260109[_0x1678(0x16b)](setTimeout,()=>{if(_0x2a3e2c)_0x19ea8d[_0x1678(0x16c)](_0x2a3e2c);},0x7d0);return;}}if(_0x260109['dEWAS'](_0x330b1f[_0x1678(0x13c)],_0x1678(0x16d))){if(_0x260109[_0x1678(0x14a)](_0x1678(0x16e),_0x260109[_0x1678(0x16f)]))_0x19ea8d[_0x1678(0x170)](_0x4d619e,{'url':_0x42de76,'loading':![]},!![]);else{const _0xd9f6ec=_0x1678(0x171)['split']('|');let _0x3aaa20=0x0;while(!![]){switch(_0xd9f6ec[_0x3aaa20++]){case'0':_0x1297ae(![]);continue;case'1':_0x4203ab[_0x1678(0xbf)]=![];continue;case'2':_0x260109[_0x1678(0x126)](_0x397d0d,0x0);continue;case'3':console[_0x1678(0x10f)](_0x260109[_0x1678(0x172)],_0x330b1f[_0x1678(0xe8)]);continue;case'4':return;case'5':_reactNative['Alert'][_0x1678(0x10d)](_0x260109[_0x1678(0x173)],_0x1678(0x174)+_0x330b1f[_0x1678(0xe8)]+'.\x20Would\x20you\x20like\x20to\x20try\x20again?',[{'text':_0x260109[_0x1678(0x10e)],'onPress':()=>_0x1973c8()},{'text':_0x1678(0x1b),'onPress':_0x1b2026,'style':_0x1678(0x175)}]);continue;case'6':_0xf76729(![]);continue;case'7':_0x260109['cOpwR'](_0x3f2930,![]);continue;}break;}}}if(_0x260109[_0x1678(0x176)](_0x330b1f['status'],_0x260109[_0x1678(0x128)])&&_0x330b1f[_0x1678(0x177)]){if(_0x260109[_0x1678(0x144)]('AHHig',_0x260109['SnLrx'])){const {nativeEvent:_0x13a1ff}=_0x1160f2;_0x2f6d08[_0x1678(0x10f)]('WebView\x20HTTP\x20error\x20for\x20'+_0x27e416+':\x20'+_0x13a1ff[_0x1678(0x178)],_0x13a1ff[_0x1678(0x114)]),_0x13a1ff[_0x1678(0x114)]&&_0x13a1ff[_0x1678(0x114)][_0x1678(0x179)](_0x19ea8d['AfrDK'])&&(_0x186f60[_0x1678(0xd4)]('HTTP\x20error\x20on\x20onairos.uk\x20domain\x20-\x20treating\x20as\x20potential\x20success'),_0x270a40(_0x19ea8d[_0x1678(0x17a)]),_0x481c85&&_0x1d5ea9(()=>_0x50a178(),0x3e8));}else{console[_0x1678(0xd4)](_0x260109[_0x1678(0x17b)],_0x330b1f['profileUrl']),_0x32c7ca(_0x330b1f['profileUrl']),_0x260109['cOpwR'](_0x4de9d2,_0x1678(0x29));const _0x3afd3f=_0x260109[_0x1678(0x17c)](_0x24682d,_0x260109[_0x1678(0x17d)]),_0x11d6fa=async(_0x535099=0x0,_0x35df53=0x3)=>{const _0x2c8052={'mQfgY':_0x260109[_0x1678(0x17e)],'kNWWM':function(_0x418eeb,_0x349611){return _0x260109['ppVqx'](_0x418eeb,_0x349611);},'DDtDo':_0x260109[_0x1678(0x17f)],'Jxywc':function(_0x467b6b,_0x4ce068){return _0x260109[_0x1678(0x11d)](_0x467b6b,_0x4ce068);},'MwuGx':_0x260109['eSFNg'],'FNlLL':_0x1678(0x180),'unNVF':function(_0x1da190,_0x47430d){return _0x260109[_0x1678(0x181)](_0x1da190,_0x47430d);},'zqFsD':function(_0x51d236,_0x29bf61,_0x317662){return _0x260109['daRFM'](_0x51d236,_0x29bf61,_0x317662);},'vlmvw':function(_0x4855a8,_0x48f2d0){return _0x260109[_0x1678(0x14e)](_0x4855a8,_0x48f2d0);},'DWljQ':_0x260109[_0x1678(0x128)],'TWCeh':function(_0x23d3e9){return _0x23d3e9();},'aataz':_0x260109[_0x1678(0xed)],'kNgAL':function(_0x528d55,_0x3598e1){return _0x528d55!==_0x3598e1;},'QpwbN':_0x260109[_0x1678(0x182)],'kouWi':_0x1678(0x183),'URdlw':function(_0xdadda4,_0x4da316){return _0x260109[_0x1678(0x184)](_0xdadda4,_0x4da316);},'iyORo':function(_0x9a4e0d,_0x377c0e,_0x381ab1){return _0x9a4e0d(_0x377c0e,_0x381ab1);},'MYqiw':'2|0|1|4|3','yrAqT':function(_0x3b5047,_0xf88759){return _0x260109[_0x1678(0x185)](_0x3b5047,_0xf88759);},'iqDKM':function(_0x54632c,_0x3b102a,_0x18d2c4){return _0x260109['RDUFB'](_0x54632c,_0x3b102a,_0x18d2c4);},'totdb':function(_0x1b5595,_0x3f29bf,_0x5da66b){return _0x1b5595(_0x3f29bf,_0x5da66b);}};try{_0x260109[_0x1678(0x186)](_0x4de9d2,_0x260109[_0x1678(0xf0)]),await(0x0,_linkedinDOMExtractor['initiateProfileScraping'])({'userId':_0x3afd3f,'profileUrl':_0x330b1f[_0x1678(0x177)],'onProgress':_0x2d7850=>{console['log'](_0x2c8052[_0x1678(0x187)],_0x2d7850);},'onSuccess':_0x5b3dbc=>{const _0x487b75=_0x2c8052[_0x1678(0x188)][_0x1678(0x10b)]('|');let _0x9dfb41=0x0;while(!![]){switch(_0x487b75[_0x9dfb41++]){case'0':_0x2c8052['Jxywc'](_0x4de9d2,_0x2c8052['MwuGx']);continue;case'1':_0x2c8052[_0x1678(0x189)](_0x5cb052,!![]);continue;case'2':setTimeout(()=>{_0x2c8052[_0x1678(0x18a)](_0x21d104,'success');if(_0x2a3e2c)_0x2a3e2c();},0x7d0);continue;case'3':_0x2c8052[_0x1678(0x18a)](_0x3075e1,![]);continue;case'4':console[_0x1678(0xd4)](_0x2c8052[_0x1678(0x18b)],_0x5b3dbc);continue;case'5':_0x2c8052[_0x1678(0x18c)](_0x5199cd,!![]);continue;}break;}},'onError':async _0xfdf47e=>{if(_0x2c8052['kNgAL'](_0x2c8052[_0x1678(0x18d)],_0x2c8052[_0x1678(0x18e)])){console[_0x1678(0x10f)](_0x1678(0x18f)+(_0x535099+0x1)+'/'+_0x35df53+'):',_0xfdf47e);if(_0x535099<_0x2c8052['URdlw'](_0x35df53,0x1))_0x2c8052[_0x1678(0x190)](setTimeout,()=>{_0x2c8052['zqFsD'](_0x11d6fa,_0x2c8052['vlmvw'](_0x535099,0x1),_0x35df53);},0xbb8);else{const _0x25a758=_0x2c8052[_0x1678(0x191)]['split']('|');let _0x6175cd=0x0;while(!![]){switch(_0x25a758[_0x6175cd++]){case'0':_0x5cb052(!![]);continue;case'1':_0x2c8052[_0x1678(0x192)](_0x5199cd,!![]);continue;case'2':_0x3075e1(![]);continue;case'3':_0x2c8052[_0x1678(0x193)](setTimeout,()=>{_0x21d104(_0x2c8052[_0x1678(0x194)]);if(_0x2a3e2c)_0x2c8052[_0x1678(0x195)](_0x2a3e2c);},0x7d0);continue;case'4':_0x2c8052[_0x1678(0x18a)](_0x4de9d2,_0x2c8052[_0x1678(0x196)]);continue;}break;}}}else _0x294e23[_0x1678(0xd4)](_0x2c8052[_0x1678(0x197)]);}});}catch(_0x13592d){if(_0x260109[_0x1678(0x198)]===_0x260109['MgAuS'])return!![];else console[_0x1678(0x10f)](_0x1678(0x199)+(_0x535099+0x1)+'/'+_0x35df53+'):',_0x13592d),_0x535099<_0x260109['qhemR'](_0x35df53,0x1)?_0x260109[_0x1678(0x132)](setTimeout,()=>{_0x2c8052[_0x1678(0x19a)](_0x11d6fa,_0x2c8052[_0x1678(0x19b)](_0x535099,0x1),_0x35df53);},0xbb8):(_0x260109[_0x1678(0xe1)](_0x3075e1,![]),_0x260109[_0x1678(0x185)](_0x5cb052,!![]),_0x260109['xFymJ'](_0x5199cd,!![]),_0x260109[_0x1678(0x165)](_0x4de9d2,_0x260109[_0x1678(0x16a)]),_0x260109[_0x1678(0x19c)](setTimeout,()=>{_0x19ea8d['AhtOR'](_0x21d104,_0x19ea8d[_0x1678(0x17a)]);if(_0x2a3e2c)_0x19ea8d[_0x1678(0x16c)](_0x2a3e2c);},0x7d0));}};_0x11d6fa();return;}}else{if(_0x260109['riUVH'](_0x330b1f['status'],_0x260109[_0x1678(0x19d)])&&_0x330b1f[_0x1678(0xe8)]){console[_0x1678(0x19e)](_0x260109[_0x1678(0x19f)],_0x330b1f[_0x1678(0xe8)]),_0x260109[_0x1678(0x1a0)](_0x3075e1,![]),_0x260109[_0x1678(0x166)](_0x5cb052,!![]),_0x260109[_0x1678(0x1a1)](_0x5199cd,!![]),_0x260109['ULMqa'](_0x4de9d2,_0x1678(0x26)),_0x260109['jQTTa'](setTimeout,()=>{_0x19ea8d[_0x1678(0x1a2)](_0x21d104,_0x19ea8d[_0x1678(0x17a)]);if(_0x2a3e2c)_0x19ea8d[_0x1678(0x16c)](_0x2a3e2c);},0x7d0);return;}}}}if(_0x330b1f[_0x1678(0x13c)]===_0x260109[_0x1678(0x1a3)]||_0x260109[_0x1678(0xcf)](_0x330b1f[_0x1678(0x13c)],'DEBUG_MEMORIES')){if(_0x260109[_0x1678(0x1a4)](_0x1678(0x46),_0x260109[_0x1678(0x1a5)])){console[_0x1678(0xd4)](_0x1678(0x1a6)+platform[_0x1678(0x103)]()+']\x20Debug:',_0x330b1f['message']);return;}else{_0xfd92da['error']('❌\x20['+_0x1e17df[_0x1678(0x103)]()+_0x1678(0x1a7),_0x85247c['message']);if(_0xce34a4)_0x19ea8d['nfqFY'](_0x478c8c,![]),_0x19ea8d['AhtOR'](_0x4dcd91,0x0),_0x41a29f[_0x1678(0xbf)]=![],_0x19ea8d[_0x1678(0x1a8)](_0x4bc2d3,![]);else _0xa04dc6&&(_0x19ea8d[_0x1678(0x1a9)](_0x549f51,![]),_0x19ea8d[_0x1678(0x1a8)](_0x543746,0x0),_0x19ea8d['nfqFY'](_0x3a5f72,![]),_0xc168aa[_0x1678(0xbf)]=![],_0x19ea8d[_0x1678(0x1aa)](_0x143826,![]));_0x4bafed[_0x1678(0x10c)]['alert'](_0x19ea8d[_0x1678(0x1ab)],_0x1678(0x1ac)+_0x2fb65a+_0x1678(0x1ad)+_0x399238[_0x1678(0xe8)],[{'text':_0x19ea8d[_0x1678(0x1ae)],'onPress':()=>{if(_0x2d0059)_0x19ea8d[_0x1678(0x1af)](_0x35982c);else{if(_0x1fc8e4)_0x19ea8d[_0x1678(0x1b0)](_0x4c8447);}}},{'text':_0x19ea8d[_0x1678(0x1b1)],'onPress':_0x4cdeea,'style':_0x19ea8d[_0x1678(0x1b2)]}]);return;}}if(_0x260109[_0x1678(0x1b3)](_0x330b1f[_0x1678(0x13c)],_0x260109[_0x1678(0x1b4)])&&_0x44e801){if(_0x260109['ugpFa'](_0x260109[_0x1678(0x1b5)],_0x260109['VPwYs'])){console[_0x1678(0xd4)](_0x260109[_0x1678(0x1b6)]);try{if(_0x260109[_0x1678(0x1b7)](_0x260109[_0x1678(0x1b8)],_0x260109['cZQQh'])){const _0xbdc02e=await _0x260109[_0x1678(0x1b9)](_0x547b68,_0x330b1f[_0x1678(0x1ba)]);_0xbdc02e?console[_0x1678(0xd4)](_0x260109[_0x1678(0x1bb)]):console[_0x1678(0x19e)](_0x260109[_0x1678(0x1bc)]);}else return!![];}catch(_0x4e9388){console['error'](_0x1678(0xa2),_0x4e9388);}return;}else{if(_0x582e30){const _0x22e444=_0x55c23c[_0x1678(0xc0)][_0x1678(0xf5)](_0x24b1ee[_0x1678(0xc0)][_0x1678(0xf6)]([_0x5ca3bc['Animated'][_0x1678(0xeb)](_0x43437d,{'toValue':0x1,'duration':0x4b0,'useNativeDriver':!![]}),_0x46db7f[_0x1678(0xc0)][_0x1678(0xeb)](_0x509f0c,{'toValue':0x0,'duration':0x4b0,'useNativeDriver':!![]})]));return _0x22e444[_0x1678(0xec)](),()=>{_0x22e444[_0x1678(0xf3)](),_0x430703[_0x1678(0xf4)](0x0);};}}}if(_0x260109[_0x1678(0x1b7)](_0x330b1f['type'],_0x260109['vnxqM'])){if(_0x260109[_0x1678(0xc5)]('CSyWc',_0x260109['ccONt'])){const _0xe9eefc={'IffAl':function(_0x14e451,_0x335f1a){return _0x14e451(_0x335f1a);},'GTOWN':'Connecting'};_0x23e887(!![]),_0x26ff1a[_0x1678(0xd4)]('✅\x20[LINKEDIN]\x20On\x20profile\x20page');_0x19ea8d['ZYioa'](!_0x21d767,!_0x5f44e3)&&_0x4724fa&&!_0x1fedbb['loading']&&(_0x551b7a[_0x1678(0xd4)](_0x19ea8d[_0x1678(0x1bd)]),_0x510839(!![]),_0x35306d(()=>{_0xc6799b[_0x1678(0xbf)]&&(_0x4904de[_0x1678(0xd4)](_0x1678(0x93)),_0x39f7eb(!![]),_0xe9eefc[_0x1678(0x1be)](_0x31a0a4,_0xe9eefc[_0x1678(0x1bf)]),_0x5f3d70[_0x1678(0xbf)][_0x1678(0xfd)](_0x53a084[_0x1678(0x1c0)]));},0x3e8));return;}else{const _0xebf451=_0x330b1f[_0x1678(0xe6)]||0x0;if(_0x44e801)_0x260109[_0x1678(0x15d)](_0x260109['eRaqB'],_0x260109[_0x1678(0x1c1)])?_0x29497[_0x1678(0xbf)][_0x1678(0xfd)](_0x3c099c['INSTAGRAM_EXPORT_SCRIPT']):(console[_0x1678(0xd4)](_0x1678(0x1c2)+_0xebf451+_0x1678(0xe7)+_0x330b1f[_0x1678(0xe8)]),_0x260109[_0x1678(0x11d)](_0x3268a6,_0xebf451),_reactNative['Animated'][_0x1678(0xeb)](_0x4d8f63,{'toValue':_0xebf451,'duration':0x12c,'useNativeDriver':![]})[_0x1678(0xec)]());else _0x592beb&&(_0x260109[_0x1678(0x1c3)]===_0x1678(0x1c4)?_0x3c3a1b[_0x1678(0xbf)][_0x1678(0xfd)](_0x1d5c8a[_0x1678(0x106)]):(console[_0x1678(0xd4)](_0x1678(0x1c5)+_0xebf451+_0x1678(0xe7)+_0x330b1f['message']),_0x260109[_0x1678(0x1c6)](_0x28f2d,_0xebf451),_0x260109[_0x1678(0x181)](_0x56244e,_0x330b1f[_0x1678(0xe8)]||'Extracting\x20data...\x20'+_0xebf451+'%'),_reactNative[_0x1678(0xc0)][_0x1678(0xeb)](_0x1f2c57,{'toValue':_0xebf451,'duration':0x12c,'useNativeDriver':![]})[_0x1678(0xec)]()));return;}}if(_0x260109[_0x1678(0x154)](_0x330b1f[_0x1678(0x13c)],_0x260109['wpNOs'])){var _0x50e944,_0x199249,_0x210c1d;const _0xea8229=(_0x260109[_0x1678(0x15e)](_0x50e944=_0x330b1f['data'],null)||_0x50e944===void 0x0?void 0x0:_0x50e944[_0x1678(0x1c7)])||((_0x199249=_0x330b1f['data'])===null||_0x260109[_0x1678(0x1c8)](_0x199249,void 0x0)||_0x260109[_0x1678(0x1c9)](_0x199249=_0x199249[_0x1678(0x1ca)],null)||_0x260109[_0x1678(0x15e)](_0x199249,void 0x0)?void 0x0:_0x199249['length'])||0x0,_0x2e114a=(_0x260109[_0x1678(0x1c9)](_0x210c1d=_0x330b1f[_0x1678(0x101)],null)||_0x260109[_0x1678(0x144)](_0x210c1d,void 0x0)?void 0x0:_0x210c1d[_0x1678(0x1cb)])||0x0;if(_0x44e801){if(_0x260109[_0x1678(0x1cc)](_0x1678(0x1cd),_0x260109[_0x1678(0x1ce)])){if(_0x3ac46a[_0x1678(0x9)](_0x365535))return _0x5618a3[_0x1678(0xa)](_0x724487);_0x31cbd4['set'](_0x59fd64,_0x4d755b);}else{var _0x25bbdf;console[_0x1678(0xd4)](_0x1678(0x1cf)+_0xea8229+'\x20conversations,\x20'+_0x2e114a+_0x1678(0x1d0)),_0x3268a6(0x5a);if((_0x25bbdf=_0x330b1f['data'])!==null&&_0x260109['fMnJy'](_0x25bbdf,void 0x0)&&_0x25bbdf['conversations']&&_0x24682d){console[_0x1678(0xd4)](_0x260109[_0x1678(0x1d1)]);const _0x2532ff=await _0x260109[_0x1678(0x1d2)](_0x303a69,_0x24682d,_0x330b1f[_0x1678(0x101)][_0x1678(0x1ca)]);console[_0x1678(0xd4)](_0x260109[_0x1678(0x1d3)],_0x2532ff);}_0x260109[_0x1678(0x1d4)](_0x3268a6,0x64),_0x260109[_0x1678(0x123)](_0x5af05f,![]),_0x260109['LbifM'](_0x52e225,!![]),_0x260109[_0x1678(0x181)](_0x21d104,'success'),_0x260109[_0x1678(0x132)](setTimeout,()=>{if(_0x2a3e2c)_0x19ea8d['xbCPL'](_0x2a3e2c);},0x7d0);}}else{if(_0x592beb){var _0x4393ad;console[_0x1678(0xd4)](_0x1678(0x1d5)+_0xea8229+'\x20conversations,\x20'+_0x2e114a+'\x20messages'),_0x28f2d(0x5a),_0x260109[_0x1678(0x1d6)](_0x56244e,_0x1678(0x1d7)+_0xea8229+_0x1678(0x1d8));if((_0x4393ad=_0x330b1f[_0x1678(0x101)])!==null&&_0x260109[_0x1678(0x1d9)](_0x4393ad,void 0x0)&&_0x4393ad[_0x1678(0x1ca)]&&_0x24682d){if(_0x260109['AbOLa'](_0x260109['omZnq'],_0x260109[_0x1678(0x1da)])){console[_0x1678(0xd4)]('📤\x20[CLAUDE]\x20Storing\x20conversations\x20to\x20backend...');const _0x88747f=await _0x260109['VzuKI'](_0x549c69,_0x24682d,_0x330b1f[_0x1678(0x101)][_0x1678(0x1ca)]);console[_0x1678(0xd4)](_0x260109[_0x1678(0x1db)],_0x88747f);}else _0x19ea8d[_0x1678(0x1b0)](_0x251bd3);}_0x260109[_0x1678(0x185)](_0x28f2d,0x64),_0x260109[_0x1678(0x1dc)](_0x2a094f,![]),_0x260109[_0x1678(0x165)](_0x3451c0,![]),_0x260109[_0x1678(0x1dd)](_0xf53b4e,!![]),_0x260109[_0x1678(0x1de)](_0x56244e,_0x1678(0x1df)+_0xea8229+_0x1678(0x1e0)),_0x260109[_0x1678(0x1e1)](_0x21d104,_0x1678(0x27)),_0x260109['HiKcO'](setTimeout,()=>{if(_0x2a3e2c)_0x19ea8d[_0x1678(0x1af)](_0x2a3e2c);},0x7d0);}}return;}if(_0x260109[_0x1678(0xcf)](_0x330b1f[_0x1678(0x13c)],_0x260109[_0x1678(0x1e2)])){if(_0x260109[_0x1678(0x1e3)](_0x260109[_0x1678(0x1e4)],_0x1678(0x1e5))){console[_0x1678(0x10f)](_0x1678(0x1e6)+platform['toUpperCase']()+_0x1678(0x1a7),_0x330b1f['message']);if(_0x44e801)_0x260109['xFymJ'](_0x5af05f,![]),_0x3268a6(0x0),_0x4ee58e['current']=![],_0x260109[_0x1678(0x1e7)](_0x1c9bdc,![]);else{if(_0x592beb){const _0x15f1e2=_0x260109['qaDCl']['split']('|');let _0x3cfa76=0x0;while(!![]){switch(_0x15f1e2[_0x3cfa76++]){case'0':_0x260109[_0x1678(0x1e8)](_0x2a094f,![]);continue;case'1':_0x2cbb09[_0x1678(0xbf)]=![];continue;case'2':_0x260109[_0x1678(0x1dc)](_0x28f2d,0x0);continue;case'3':_0x32ef17(![]);continue;case'4':_0x260109[_0x1678(0x1e9)](_0x3451c0,![]);continue;}break;}}}_reactNative[_0x1678(0x10c)][_0x1678(0x10d)](_0x1678(0x2c),_0x1678(0x1ac)+platform+_0x1678(0x1ad)+_0x330b1f[_0x1678(0xe8)],[{'text':_0x260109[_0x1678(0x10e)],'onPress':()=>{if(_0x44e801)_0x47a02c();else{if(_0x592beb)_0x260109[_0x1678(0x1ea)](_0x1feabd);}}},{'text':_0x260109[_0x1678(0x12a)],'onPress':_0x1b2026,'style':_0x260109[_0x1678(0x1eb)]}]);return;}else _0x29ccab=_0x2f8134['includes'](_0x19ea8d[_0x1678(0x1ec)])||_0x391157[_0x1678(0x179)](_0x19ea8d[_0x1678(0x1ed)])||_0x1b9ce4[_0x1678(0x179)](_0x19ea8d['IbBlE']),_0x1699ce=_0x2c387f[_0x1678(0x179)](_0x19ea8d['grSlj'])&&!_0x38030f&&!_0x6a822[_0x1678(0x1ee)];}if(_0x260109[_0x1678(0x1ef)](_0x330b1f['type'],_0x260109[_0x1678(0x1f0)])||_0x330b1f[_0x1678(0x13c)]===_0x260109[_0x1678(0x1f1)]){if(_0x260109[_0x1678(0x1e3)]('obMLP',_0x1678(0x1f2))){if(_0x330b1f[_0x1678(0x13d)]===_0x260109['ewXWx'])console[_0x1678(0xd4)]('⛔\x20['+platform['toUpperCase']()+_0x1678(0x1f3)),_reactNative[_0x1678(0x10c)][_0x1678(0x10d)](_0x1678(0x148),_0x1678(0x1f4)+platform+'\x20conversations.',[{'text':'OK','onPress':_0x1b2026}]);else _0x330b1f[_0x1678(0x13d)]===_0x260109['uFhnS']&&console[_0x1678(0xd4)](_0x1678(0x1f5)+platform[_0x1678(0x103)]()+_0x1678(0x1f6));return;}else _0x1f81e7[_0x1678(0xd4)](_0x1678(0x1c2)+_0x44ad89+'%\x20-\x20'+_0xd0400a[_0x1678(0xe8)]),_0x260109[_0x1678(0x1e7)](_0x55540d,_0x312e44),_0x2fe036['Animated']['timing'](_0x509599,{'toValue':_0x4fd7d0,'duration':0x12c,'useNativeDriver':![]})[_0x1678(0xec)]();}if(_0x260109[_0x1678(0x1f7)](_0x330b1f['type'],_0x260109[_0x1678(0x1f8)])){var _0x9de6f1;console[_0x1678(0xd4)](_0x1678(0x1f9)+platform['toUpperCase']()+']\x20Memories\x20fetch\x20complete:',(_0x9de6f1=_0x330b1f[_0x1678(0x101)])===null||_0x9de6f1===void 0x0?void 0x0:_0x9de6f1['itemsCount'],_0x260109[_0x1678(0xf9)]);return;}if(_0x260109[_0x1678(0x1fa)](_0x330b1f['type'],_0x1678(0x1fb))){if(_0x260109[_0x1678(0xc6)](_0x260109[_0x1678(0x1fc)],_0x260109[_0x1678(0x1fc)])){console[_0x1678(0x19e)](_0x1678(0x1fd)+platform[_0x1678(0x103)]()+_0x1678(0x1fe),_0x330b1f[_0x1678(0xe8)]);return;}else{const _0x1ff4b8=_0xfe3fcc[_0x1678(0x114)]||'',_0x3fe6dc=_0x1ff4b8[_0x1678(0xc7)]();_0x493f58[_0x1678(0xd4)](_0x1678(0x1ff)+_0x1ff4b8+_0x1678(0x200)+_0x4f2634[_0x1678(0x1ee)]+',\x20isLoadEnd='+_0x4619ea);const _0x2c485b=_0x3fe6dc[_0x1678(0x179)](_0x19ea8d[_0x1678(0x1ec)])||_0x3fe6dc[_0x1678(0x179)](_0x19ea8d['VtuoS'])||_0x3fe6dc['includes'](_0x19ea8d[_0x1678(0x1ed)]),_0x193602=_0x3fe6dc['includes'](_0x1678(0x8f))&&!_0x2c485b&&!_0xb4f29a[_0x1678(0x1ee)];if(_0x2c485b){_0x1ec34f[_0x1678(0xd4)](_0x19ea8d[_0x1678(0x201)]),_0x19ea8d[_0x1678(0x202)](_0x2cb944,![]);return;}_0x19ea8d[_0x1678(0x203)](_0x193602,!_0x394ca5)&&!_0x3cf6b5&&!_0x5a22c5['current']&&_0x1cff46&&(_0x628c01[_0x1678(0xd4)](_0x19ea8d[_0x1678(0x204)]),_0x19ea8d[_0x1678(0x202)](_0x615575,!![]),_0x19ea8d[_0x1678(0x205)](_0x1e23bb,()=>{_0x19ea8d[_0x1678(0x206)](_0x55972b);},0x7d0));}}if(_0x330b1f[_0x1678(0x13c)]===_0x260109['lpsTm']&&_0x2cf41e){const _0x130d67=_0x330b1f[_0x1678(0xe6)]||0x0;console[_0x1678(0xd4)](_0x1678(0x207)+_0x130d67+_0x1678(0xe7)+_0x330b1f[_0x1678(0xe8)]),_0x260109[_0x1678(0x142)](_0x4f7876,_0x130d67),_0x260109[_0x1678(0x142)](_0x32e605,_0x330b1f[_0x1678(0xe8)]||'Extracting...\x20'+_0x130d67+'%'),_reactNative[_0x1678(0xc0)][_0x1678(0xeb)](_0x5bfbcc,{'toValue':_0x130d67,'duration':0x12c,'useNativeDriver':![]})['start']();return;}if(_0x260109[_0x1678(0x208)](_0x330b1f[_0x1678(0x13c)],_0x260109[_0x1678(0x209)])&&_0x2cf41e){console['log'](_0x260109[_0x1678(0x20a)],_0x330b1f[_0x1678(0x101)]),_0x260109[_0x1678(0x20b)](_0x4f7876,0x5a),_0x32e605(_0x1678(0x60));if(_0x330b1f['data']&&_0x24682d){console['log'](_0x260109[_0x1678(0x20c)]);const _0x24f9a6=await _0x260109[_0x1678(0x20d)](_0x44e585,_0x24682d,_0x330b1f[_0x1678(0x101)]);console['log'](_0x260109[_0x1678(0x20e)],_0x24f9a6);}_0x260109[_0x1678(0x20f)](_0x4f7876,0x64),_0x260109[_0x1678(0x210)](_0x542ef3,![]),_0x59b609(![]),_0x34596e(!![]),_0x260109[_0x1678(0x11d)](_0x32e605,_0x260109['eSFNg']),_0x260109[_0x1678(0x211)](_0x21d104,_0x260109['XqeCj']),_0x260109[_0x1678(0x1d2)](setTimeout,()=>{const _0x1fbd0f={'coEMo':_0x19ea8d[_0x1678(0x212)],'KIpBH':function(_0xe874bb,_0x5f3dd0){return _0x19ea8d[_0x1678(0x1a9)](_0xe874bb,_0x5f3dd0);}};if(_0x19ea8d[_0x1678(0x213)](_0x19ea8d[_0x1678(0x214)],_0x19ea8d[_0x1678(0x215)])){if(_0x2a3e2c)_0x19ea8d['xbCPL'](_0x2a3e2c);}else{_0x31e10e[_0x1678(0xd4)](_0x1fbd0f[_0x1678(0x216)]),_0x1fbd0f[_0x1678(0x217)](_0x5054c4,![]);return;}},0x7d0);return;}if(_0x260109['hajVi'](_0x330b1f[_0x1678(0x13c)],_0x1678(0x218))&&_0x2cf41e){const _0x5aca50='4|7|5|3|0|2|6|1'[_0x1678(0x10b)]('|');let _0x1861eb=0x0;while(!![]){switch(_0x5aca50[_0x1861eb++]){case'0':_0x5336e0[_0x1678(0xbf)]=![];continue;case'1':return;case'2':_0x260109[_0x1678(0x219)](_0x3c02c8,![]);continue;case'3':_0x59b609(![]);continue;case'4':console[_0x1678(0x10f)](_0x260109[_0x1678(0x110)],_0x330b1f[_0x1678(0xe8)]);continue;case'5':_0x4f7876(0x0);continue;case'6':_reactNative[_0x1678(0x10c)][_0x1678(0x10d)](_0x1678(0x2c),_0x1678(0x21a)+_0x330b1f[_0x1678(0xe8)],[{'text':_0x260109[_0x1678(0x10e)],'onPress':()=>_0x34fdc5()},{'text':_0x260109[_0x1678(0x12a)],'onPress':_0x1b2026,'style':_0x260109[_0x1678(0x1eb)]}]);continue;case'7':_0x260109[_0x1678(0x1de)](_0x542ef3,![]);continue;}break;}}if(_0x330b1f[_0x1678(0x13c)]===_0x260109[_0x1678(0x21b)]&&_0x27e271){const _0x552e48=_0x330b1f[_0x1678(0xe6)]||0x0;console[_0x1678(0xd4)](_0x1678(0x21c)+_0x552e48+_0x1678(0xe7)+_0x330b1f[_0x1678(0xe8)]),_0x4f7876(_0x552e48),_0x260109[_0x1678(0x21d)](_0x32e605,_0x330b1f[_0x1678(0xe8)]||_0x1678(0xea)+_0x552e48+'%'),_reactNative['Animated'][_0x1678(0xeb)](_0x5bfbcc,{'toValue':_0x552e48,'duration':0x12c,'useNativeDriver':![]})[_0x1678(0xec)]();return;}if(_0x330b1f['type']===_0x260109['jdqYc']&&_0x27e271){console[_0x1678(0xd4)](_0x260109[_0x1678(0x21e)],_0x330b1f[_0x1678(0x101)]),_0x260109['EPhDv'](_0x4f7876,0x5a),_0x260109[_0x1678(0x21f)](_0x32e605,_0x260109[_0x1678(0x220)]);if(_0x330b1f['data']&&_0x24682d){if(_0x260109[_0x1678(0x221)](_0x1678(0x61),_0x260109[_0x1678(0x222)])){console[_0x1678(0xd4)](_0x260109[_0x1678(0x223)]);const _0x393945=await _0x260109[_0x1678(0x224)](_0x2b6915,_0x24682d,_0x330b1f[_0x1678(0x101)]);console['log'](_0x260109[_0x1678(0x225)],_0x393945);}else _0x2f9edb[_0x1678(0xd4)](_0x1678(0x1f5)+_0x2affa6[_0x1678(0x103)]()+']\x20Login\x20detected!');}_0x4f7876(0x64),_0x260109[_0x1678(0x226)](_0x542ef3,![]),_0x260109['EPhDv'](_0x59b609,![]),_0x34596e(!![]),_0x260109[_0x1678(0x142)](_0x32e605,_0x260109[_0x1678(0x16a)]),_0x260109['TJDpd'](_0x21d104,_0x260109[_0x1678(0x128)]),_0x260109['jxWst'](setTimeout,()=>{const _0x4ab903={'TLKRi':function(_0x1ae4d4,_0x5349d4,_0x38cd85){return _0x19ea8d[_0x1678(0x170)](_0x1ae4d4,_0x5349d4,_0x38cd85);},'TCBHf':function(_0x22da99,_0x1318db){return _0x19ea8d['NMTBP'](_0x22da99,_0x1318db);}};if(_0x19ea8d[_0x1678(0x227)](_0x19ea8d[_0x1678(0x228)],_0x19ea8d['NjmBe'])){if(_0x2a3e2c)_0x19ea8d[_0x1678(0x229)](_0x2a3e2c);}else _0x4ab903[_0x1678(0x22a)](_0x21d9c5,()=>{_0x4ab903[_0x1678(0x22a)](_0x2995af,_0x4ab903[_0x1678(0x22b)](_0x5e930a,0x1),_0x21d436);},0xbb8);},0x7d0);return;}if(_0x260109['ZAylh'](_0x330b1f['type'],_0x260109[_0x1678(0x22c)])&&_0x27e271){if(_0x260109[_0x1678(0x22d)](_0x1678(0x22e),_0x1678(0x22f))){const _0x69a2e6=_0x260109[_0x1678(0x230)][_0x1678(0x10b)]('|');let _0x473ec2=0x0;while(!![]){switch(_0x69a2e6[_0x473ec2++]){case'0':_0x260109['ULMqa'](_0x4f7876,0x0);continue;case'1':_0x260109[_0x1678(0x231)](_0x3c02c8,![]);continue;case'2':_reactNative['Alert'][_0x1678(0x10d)](_0x260109['BMaug'],_0x1678(0x232)+_0x330b1f[_0x1678(0xe8)],[{'text':_0x260109[_0x1678(0x10e)],'onPress':()=>_0x34fdc5()},{'text':_0x1678(0x1b),'onPress':_0x1b2026,'style':_0x260109[_0x1678(0x1eb)]}]);continue;case'3':_0x260109[_0x1678(0x186)](_0x59b609,![]);continue;case'4':_0x5336e0[_0x1678(0xbf)]=![];continue;case'5':return;case'6':console['error'](_0x260109[_0x1678(0x233)],_0x330b1f[_0x1678(0xe8)]);continue;case'7':_0x260109['pZSxe'](_0x542ef3,![]);continue;}break;}}else _0x3c7d90[_0x1678(0xd4)](_0x260109[_0x1678(0x112)]),_0x260109[_0x1678(0x1dc)](_0x1576d4,_0x260109[_0x1678(0xf0)]),_0x3465ca[_0x1678(0xbf)][_0x1678(0xfd)](_0x1678(0x119));}if(_0x260109['Zkyqz'](_0x330b1f[_0x1678(0x13c)],_0x260109['wTMyV'])&&_0x1db8ad){if(_0x260109[_0x1678(0x107)](_0x260109[_0x1678(0x234)],_0x260109[_0x1678(0x235)])){const _0x2cfb66=_0x3b2e8a[_0x1678(0xe6)]||0x0;if(_0x1bb10e)_0x1ba401[_0x1678(0xd4)](_0x1678(0x1c2)+_0x2cfb66+_0x1678(0xe7)+_0x218408[_0x1678(0xe8)]),_0x46e426(_0x2cfb66),_0x2ceeaf[_0x1678(0xc0)][_0x1678(0xeb)](_0x35d754,{'toValue':_0x2cfb66,'duration':0x12c,'useNativeDriver':![]})[_0x1678(0xec)]();else _0xe9527d&&(_0x4598de[_0x1678(0xd4)](_0x1678(0x1c5)+_0x2cfb66+'%\x20-\x20'+_0x228199[_0x1678(0xe8)]),_0x19ea8d[_0x1678(0x202)](_0x19f844,_0x2cfb66),_0x19ea8d[_0x1678(0x236)](_0x3b4ae7,_0xe1d883[_0x1678(0xe8)]||_0x1678(0x237)+_0x2cfb66+'%'),_0x59ae47[_0x1678(0xc0)][_0x1678(0xeb)](_0xafe5c6,{'toValue':_0x2cfb66,'duration':0x12c,'useNativeDriver':![]})['start']());return;}else{const _0x3595c2=_0x330b1f[_0x1678(0xe6)]||0x0;console[_0x1678(0xd4)](_0x1678(0x238)+_0x3595c2+'%\x20-\x20'+_0x330b1f[_0x1678(0xe8)]),_0x260109[_0x1678(0x239)](_0x4f7876,_0x3595c2),_0x260109[_0x1678(0x239)](_0x32e605,_0x330b1f[_0x1678(0xe8)]||_0x1678(0xea)+_0x3595c2+'%'),_reactNative[_0x1678(0xc0)][_0x1678(0xeb)](_0x5bfbcc,{'toValue':_0x3595c2,'duration':0x12c,'useNativeDriver':![]})[_0x1678(0xec)]();return;}}if(_0x260109[_0x1678(0x23a)](_0x330b1f[_0x1678(0x13c)],_0x260109[_0x1678(0x23b)])&&_0x1db8ad){console[_0x1678(0xd4)](_0x260109[_0x1678(0x23c)],_0x330b1f[_0x1678(0x101)]),_0x260109['pIAeR'](_0x4f7876,0x5a),_0x260109['TopHq'](_0x32e605,_0x260109['gQVZZ']);if(_0x330b1f[_0x1678(0x101)]&&_0x24682d){console['log']('📤\x20[SEPHORA]\x20Storing\x20data\x20to\x20backend...');const _0x3bb364=await _0x260109[_0x1678(0x132)](_0x849e9e,_0x24682d,_0x330b1f['data']);console[_0x1678(0xd4)](_0x260109[_0x1678(0x23d)],_0x3bb364);}_0x260109[_0x1678(0x165)](_0x4f7876,0x64),_0x542ef3(![]),_0x260109['xFymJ'](_0x59b609,![]),_0x260109[_0x1678(0xe1)](_0x34596e,!![]),_0x260109[_0x1678(0x219)](_0x32e605,'Connected!'),_0x260109[_0x1678(0x1a0)](_0x21d104,_0x260109[_0x1678(0x128)]),_0x260109['ddXtc'](setTimeout,()=>{const _0x22f049={'fabfh':_0x260109[_0x1678(0x23e)],'OTunp':function(_0x513b99,_0x16e363){return _0x513b99(_0x16e363);},'cjSUp':'❌\x20[SEPHORA]\x20Export\x20error:','XyzvE':function(_0x4d730d,_0x27dd58){return _0x260109['gbUdz'](_0x4d730d,_0x27dd58);},'iavwO':_0x260109[_0x1678(0x23f)],'hBpLt':_0x260109[_0x1678(0x10e)],'FSPde':_0x260109['dKkMd'],'MDltG':_0x260109[_0x1678(0x1eb)]};if(_0x260109[_0x1678(0x240)]===_0x260109[_0x1678(0x241)]){const _0x25b7a0=_0x22f049[_0x1678(0x242)][_0x1678(0x10b)]('|');let _0x7efc10=0x0;while(!![]){switch(_0x25b7a0[_0x7efc10++]){case'0':_0x22f049[_0x1678(0x243)](_0x5be50e,![]);continue;case'1':_0x3864be[_0x1678(0x10f)](_0x22f049[_0x1678(0x244)],_0x9a989[_0x1678(0xe8)]);continue;case'2':_0x22f049[_0x1678(0x245)](_0x417fe3,![]);continue;case'3':_0x406531['current']=![];continue;case'4':return;case'5':_0x2411c1['Alert']['alert'](_0x22f049[_0x1678(0x246)],_0x1678(0x247)+_0x28e784[_0x1678(0xe8)],[{'text':_0x22f049[_0x1678(0x248)],'onPress':()=>_0x4d9264()},{'text':_0x22f049[_0x1678(0x249)],'onPress':_0x378e91,'style':_0x22f049[_0x1678(0x24a)]}]);continue;case'6':_0x3ebeba(![]);continue;case'7':_0x5cf924(0x0);continue;}break;}}else{if(_0x2a3e2c)_0x260109[_0x1678(0x1ea)](_0x2a3e2c);}},0x7d0);return;}if(_0x330b1f['type']===_0x260109[_0x1678(0x24b)]&&_0x1db8ad){const _0x403a83=_0x1678(0x24c)['split']('|');let _0x2c9df8=0x0;while(!![]){switch(_0x403a83[_0x2c9df8++]){case'0':return;case'1':console['error'](_0x260109[_0x1678(0x24d)],_0x330b1f[_0x1678(0xe8)]);continue;case'2':_0x59b609(![]);continue;case'3':_reactNative[_0x1678(0x10c)][_0x1678(0x10d)](_0x260109[_0x1678(0x23f)],'Failed\x20to\x20export\x20Sephora\x20data:\x20'+_0x330b1f[_0x1678(0xe8)],[{'text':_0x260109['WBfVw'],'onPress':()=>_0x34fdc5()},{'text':_0x260109[_0x1678(0x12a)],'onPress':_0x1b2026,'style':_0x260109[_0x1678(0x1eb)]}]);continue;case'4':_0x260109[_0x1678(0x24e)](_0x542ef3,![]);continue;case'5':_0x5336e0['current']=![];continue;case'6':_0x260109['PHLXE'](_0x4f7876,0x0);continue;case'7':_0x260109[_0x1678(0x24f)](_0x3c02c8,![]);continue;}break;}}if(_0x260109[_0x1678(0x250)](_0x330b1f[_0x1678(0x13c)],_0x260109['nZEgg'])&&_0x3b41d0){const _0x3e0bc0=_0x330b1f[_0x1678(0xe6)]||0x0;console[_0x1678(0xd4)]('📊\x20[TELEGRAM]\x20Export\x20progress:\x20'+_0x3e0bc0+_0x1678(0xe7)+_0x330b1f[_0x1678(0xe8)]),_0x260109[_0x1678(0x150)](_0x4f7876,_0x3e0bc0),_0x260109['zfCHC'](_0x32e605,_0x330b1f[_0x1678(0xe8)]||'Extracting...\x20'+_0x3e0bc0+'%'),_reactNative[_0x1678(0xc0)][_0x1678(0xeb)](_0x5bfbcc,{'toValue':_0x3e0bc0,'duration':0x12c,'useNativeDriver':![]})[_0x1678(0xec)]();return;}if(_0x330b1f['type']===_0x260109['vaHzC']&&_0x3b41d0){console['log'](_0x260109[_0x1678(0x251)],_0x330b1f[_0x1678(0x101)]),_0x260109[_0x1678(0x252)](_0x4f7876,0x5a),_0x260109[_0x1678(0x253)](_0x32e605,_0x260109[_0x1678(0x220)]);if(_0x330b1f[_0x1678(0x101)]&&_0x24682d){if(_0x260109[_0x1678(0x15b)](_0x260109[_0x1678(0x254)],_0x260109['SQZOr'])){console[_0x1678(0xd4)](_0x260109[_0x1678(0x255)]);const _0x3a6339=await _0x260109[_0x1678(0x132)](_0x20fcd2,_0x24682d,_0x330b1f['data']);console[_0x1678(0xd4)](_0x1678(0x256),_0x3a6339);}else{_0x42ad0[_0x1678(0xd4)]('✅\x20'+_0x1548c8+_0x1678(0x257)+_0x13b5ff['url']),_0x19ea8d[_0x1678(0x258)](_0x35d784,!![]),_0x19ea8d[_0x1678(0x259)](_0xe04070,()=>{_0x19ea8d[_0x1678(0x1a8)](_0x3758ab,_0x1678(0x27));if(_0x48f95a)_0x19ea8d['QiaAt'](_0x8f4b26);},0x7d0);return;}}_0x4f7876(0x64),_0x542ef3(![]),_0x260109[_0x1678(0x1a1)](_0x59b609,![]),_0x260109[_0x1678(0x25a)](_0x34596e,!![]),_0x32e605(_0x260109['eSFNg']),_0x260109[_0x1678(0x181)](_0x21d104,_0x260109[_0x1678(0x128)]),_0x260109[_0x1678(0x25b)](setTimeout,()=>{if(_0x260109[_0x1678(0x25c)](_0x260109['DwPnH'],_0x260109[_0x1678(0x25d)])){if(_0x2a3e2c)_0x260109[_0x1678(0x136)](_0x2a3e2c);}else{_0x19ea8d[_0x1678(0x236)](_0x328529,_0x19ea8d[_0x1678(0x17a)]);if(_0x4cb822)_0x225881();}},0x7d0);return;}if(_0x260109[_0x1678(0x1c9)](_0x330b1f[_0x1678(0x13c)],_0x260109[_0x1678(0x25e)])&&_0x3b41d0){if(_0x260109[_0x1678(0x25f)](_0x260109[_0x1678(0x260)],_0x260109['phzrY']))_0x260109[_0x1678(0x25b)](_0x49776f,()=>_0x49797(),0x3e8);else{console[_0x1678(0x10f)](_0x260109['rBiWG'],_0x330b1f[_0x1678(0xe8)]),_0x260109[_0x1678(0x261)](_0x542ef3,![]),_0x4f7876(0x0),_0x260109[_0x1678(0x262)](_0x59b609,![]),_0x5336e0[_0x1678(0xbf)]=![],_0x260109[_0x1678(0x126)](_0x3c02c8,![]),_reactNative[_0x1678(0x10c)][_0x1678(0x10d)](_0x260109['BMaug'],'Failed\x20to\x20export\x20Telegram\x20data:\x20'+_0x330b1f[_0x1678(0xe8)],[{'text':_0x260109[_0x1678(0x10e)],'onPress':()=>_0x34fdc5()},{'text':'Close','onPress':_0x1b2026,'style':_0x260109[_0x1678(0x1eb)]}]);return;}}if(_0x330b1f[_0x1678(0x13c)]===_0x260109['dXbtG']||_0x260109[_0x1678(0x263)](_0x330b1f['type'],_0x260109[_0x1678(0x264)])||_0x260109[_0x1678(0x265)](_0x330b1f[_0x1678(0x13c)],_0x260109['FmeYJ'])||_0x330b1f[_0x1678(0x13c)]===_0x260109[_0x1678(0x266)]){if(_0x260109[_0x1678(0x22d)](_0x260109[_0x1678(0x267)],_0x260109[_0x1678(0x267)]))_0x2b36b5[_0x1678(0xbf)][_0x1678(0xfd)](_0x3a2680[_0x1678(0x11a)]);else{if(_0x260109[_0x1678(0x1ef)](_0x330b1f[_0x1678(0x13d)],_0x260109[_0x1678(0x146)]))console[_0x1678(0xd4)](_0x1678(0x268)+platform[_0x1678(0x103)]()+_0x1678(0x1f3)),_reactNative[_0x1678(0x10c)][_0x1678(0x10d)](_0x1678(0x148),_0x1678(0x1f4)+platform+_0x1678(0x269),[{'text':'OK','onPress':_0x1b2026}]);else _0x260109[_0x1678(0x1b3)](_0x330b1f[_0x1678(0x13d)],_0x260109['uFhnS'])&&console[_0x1678(0xd4)](_0x1678(0x1f5)+platform[_0x1678(0x103)]()+_0x1678(0x1f6));return;}}console[_0x1678(0xd4)](_0x1678(0x13b)+platform[_0x1678(0x103)]()+_0x1678(0x26a),_0x330b1f['type']);}catch(_0x1fc8a2){console[_0x1678(0x10f)]('❌\x20['+platform[_0x1678(0x103)]()+_0x1678(0x26b),_0x1fc8a2);}},[platform,_0x24682d,_0x21d104,_0x2a3e2c,_0x1b2026,_0xf05d21,_0x44e801,_0x592beb,_0x2cf41e,_0x27e271,_0x1db8ad,_0x3b41d0,_0x47a02c,_0x1feabd,_0x34fdc5,_0x303a69,_0x549c69,_0x44e585,_0x2b6915,_0x849e9e,_0x20fcd2,_0x547b68,_0x5bfbcc]),_0x592c29=(0x0,_react[_0x1678(0xf7)])((_0x255982,_0x583b9d=![])=>{const _0x36acd1={'sdxgV':function(_0x1c586b,_0x14edf7){return _0x260109[_0x1678(0x262)](_0x1c586b,_0x14edf7);},'hPbLt':function(_0x10c913){return _0x10c913();},'Siqco':_0x260109[_0x1678(0x26c)],'EFaJV':_0x260109['RqAgB'],'uFACX':_0x260109[_0x1678(0x26d)],'fFWXR':_0x260109[_0x1678(0x26e)],'wrvHs':_0x260109[_0x1678(0x26f)],'xGwAv':_0x260109[_0x1678(0x270)],'VqLAj':_0x260109['jgUkQ'],'RbqAD':'#000000','JNiWT':_0x260109[_0x1678(0x271)],'vKXgZ':_0x260109[_0x1678(0x272)],'hRAhj':_0x260109['lMnjg'],'Fahol':_0x260109['gQxBa'],'inCwh':function(_0x461d4b,_0x56eb6b){return _0x260109[_0x1678(0x11d)](_0x461d4b,_0x56eb6b);},'Trfgn':_0x260109[_0x1678(0x273)],'zRGFF':function(_0x19a20d,_0x388b0b){return _0x260109[_0x1678(0x274)](_0x19a20d,_0x388b0b);},'RxRHB':_0x260109[_0x1678(0xfb)],'Mumdw':_0x260109[_0x1678(0x275)],'XCDkC':_0x1678(0x276),'ZJAvl':function(_0x1ed8b8,_0x363af3){return _0x260109[_0x1678(0x277)](_0x1ed8b8,_0x363af3);},'dVvBQ':_0x260109[_0x1678(0xf0)],'hYNoD':_0x260109[_0x1678(0xdb)],'eLmud':_0x1678(0x278),'Nudtt':_0x260109['WDLjS']};if(_0x260109['ciMlA'](_0x260109[_0x1678(0x279)],_0x260109[_0x1678(0x279)])){const _0x5a2038=_0x255982[_0x1678(0x114)]||'',_0x50dd56=_0x5a2038[_0x1678(0xc7)]();console[_0x1678(0xd4)](_0x1678(0x27a)+_0x5a2038+_0x1678(0x200)+_0x255982[_0x1678(0x1ee)]+_0x1678(0x27b)+_0x583b9d);if((0x0,_webviewScripts[_0x1678(0x27c)])(_0x5a2038)){console[_0x1678(0xd4)](_0x1678(0x27d)),_0x260109['UNkMX'](_0x4de9d2,_0x260109['eSFNg']);if(!_0x132b8c){if('JvdGi'!==_0x260109[_0x1678(0x27e)]){if(_0x4c7b77)_0x5eef05();}else console[_0x1678(0xd4)]('✅\x20[LINKEDIN]\x20OAuth\x20callback\x20detected\x20-\x20showing\x20success\x20animation'),_0x260109[_0x1678(0x27f)](_0x5cb052,!![]),_0x260109[_0x1678(0x280)](_0x5199cd,!![]),_0x260109[_0x1678(0x281)](setTimeout,()=>{_0x36acd1[_0x1678(0x282)](_0x21d104,'success');if(_0x2a3e2c)_0x36acd1[_0x1678(0x283)](_0x2a3e2c);},0x7d0);}return;}const _0x4375c5=(0x0,_webviewScripts[_0x1678(0x284)])(_0x5a2038);_0x260109[_0x1678(0x285)](_0x3b88e9,_0x4375c5);if(_0x4375c5){_0x31c706(!![]),console['log'](_0x260109[_0x1678(0x286)]);!_0x362be2&&!_0xb531b1&&_0x583b9d&&!_0x255982[_0x1678(0x1ee)]&&(console[_0x1678(0xd4)](_0x260109[_0x1678(0x12b)]),_0x4abb84(!![]),_0x260109[_0x1678(0x287)](setTimeout,()=>{if(_0x36acd1[_0x1678(0x288)]===_0x36acd1[_0x1678(0x288)]){if(_0x2303cf[_0x1678(0xbf)]){if(_0x36acd1[_0x1678(0x289)]===_0x36acd1['XCDkC'])console[_0x1678(0xd4)](_0x1678(0x93)),_0x3075e1(!![]),_0x36acd1[_0x1678(0x28a)](_0x4de9d2,_0x36acd1[_0x1678(0x28b)]),_0x2303cf[_0x1678(0xbf)][_0x1678(0xfd)](_webviewScripts[_0x1678(0x1c0)]);else{const _0x4324a3={'linkedin':_0x36acd1[_0x1678(0x28c)],'chatgpt':_0x1678(0xac),'openai':_0x1678(0xac),'claude':_0x36acd1['EFaJV'],'anthropic':_0x36acd1[_0x1678(0x28d)],'reddit':_0x36acd1['uFACX'],'youtube':_0x36acd1['fFWXR'],'pinterest':_0x36acd1['wrvHs'],'gmail':_0x36acd1[_0x1678(0x28e)],'gemini':_0x36acd1[_0x1678(0x28f)],'grok':_0x36acd1[_0x1678(0x290)],'hinge':_0x1678(0xad),'instagram':_0x36acd1['JNiWT'],'sephora':_0x36acd1[_0x1678(0x290)],'telegram':_0x36acd1[_0x1678(0x291)]};return _0x4324a3[_0x10406b[_0x1678(0xc7)]()]||_0x36acd1[_0x1678(0x292)];}}}else{const _0x23cf0c=_0x36acd1['Fahol'][_0x1678(0x10b)]('|');let _0x5d668f=0x0;while(!![]){switch(_0x23cf0c[_0x5d668f++]){case'0':_0x36acd1[_0x1678(0x282)](_0x4f703f,!![]);continue;case'1':_0x36acd1[_0x1678(0x293)](_0x5273c2,_0x36acd1[_0x1678(0x294)]);continue;case'2':_0x2f6593[_0x1678(0xbf)][_0x1678(0xfd)](_0x21efa2['CLAUDE_EXPORT_SCRIPT']);continue;case'3':_0x36acd1[_0x1678(0x295)](_0x1c8a6f,0x0);continue;case'4':_0x1e9394[_0x1678(0xd4)](_0x36acd1[_0x1678(0x296)]);continue;case'5':_0x36acd1[_0x1678(0x282)](_0x2b2054,!![]);continue;case'6':if(!_0x31095b[_0x1678(0xbf)]||_0x291cfc||_0x102ec0[_0x1678(0xbf)])return;continue;case'7':_0xf72c5['current']=!![];continue;case'8':_0x36acd1[_0x1678(0x282)](_0x37eb9d,!![]);continue;}break;}}},0x3e8));return;}if(!_0x50dd56['includes'](_0x260109[_0x1678(0x297)]))return;if((0x0,_webviewScripts[_0x1678(0x298)])(_0x5a2038)){if(_0x260109[_0x1678(0x1ef)](_0x260109['mpjNX'],_0x260109['mpjNX'])){console[_0x1678(0xd4)](_0x260109[_0x1678(0x299)]),_0x31c706(![]),_0x260109['ULMqa'](_0x6167ef,![]);return;}else{_0x260109[_0x1678(0x29a)](_0x2088b3,_0x260109[_0x1678(0x128)]);if(_0x302678)_0x260109['DoIJg'](_0x5cb20c);}}!_0x13ffba&&(console[_0x1678(0xd4)](_0x260109[_0x1678(0x29b)]),_0x4de9d2(_0x260109[_0x1678(0xf0)]),_0x260109['OxFXg'](_0x31c706,!![]),_0x260109[_0x1678(0x29c)](_0x6167ef,!![]),_0x2303cf['current']&&(_0x1678(0x29d)!==_0x260109['uQiol']?(console['log'](_0x260109['qrwpK']),_0x2303cf[_0x1678(0xbf)]['injectJavaScript'](_0x1678(0x29e))):(_0x12b3fa[_0x1678(0xd4)](_0x1678(0x268)+_0x3bcd5d['toUpperCase']()+_0x1678(0x1f3)),_0x4ba5c0[_0x1678(0x10c)]['alert'](_0x260109['WtqUB'],_0x1678(0x1f4)+_0x45ad11+'\x20conversations.',[{'text':'OK','onPress':_0x53e06c}]))));}else _0x4737f1[_0x1678(0xd4)]('⏰\x20'+(_0x5e918d?_0x36acd1[_0x1678(0x29f)]:_0xd69a69?_0x36acd1[_0x1678(0x2a0)]:_0x36acd1[_0x1678(0x2a1)])+_0x1678(0xde)+_0x22ccdb+_0x1678(0xdf)),_0x36acd1[_0x1678(0x282)](_0x543f63,!![]);},[_0x362be2,_0xb531b1,_0x13ffba,_0x132b8c,_0x25e2c1,_0x1973c8,_0x21d104,_0x2a3e2c]),_0x5b0a48=(0x0,_react[_0x1678(0xf7)])((_0x38f9dd,_0x20f2e0=![])=>{const _0x42fb1f={'QqKiM':function(_0x11966c){return _0x260109['yylyV'](_0x11966c);}},_0x232432=_0x38f9dd['url']||'',_0x3180a5=_0x232432['toLowerCase']();console[_0x1678(0xd4)](_0x1678(0x2a2)+_0x232432+_0x1678(0x200)+_0x38f9dd[_0x1678(0x1ee)]+_0x1678(0x27b)+_0x20f2e0),console[_0x1678(0xd4)](_0x1678(0x2a3)+_0x1e12c7+',\x20exporting='+_0x117270+_0x1678(0x2a4)+_0x41abcc);const _0x38e832=_0x3180a5[_0x1678(0x179)](_0x260109[_0x1678(0x2a5)])||_0x3180a5[_0x1678(0x179)](_0x260109[_0x1678(0x2a6)])||_0x3180a5[_0x1678(0x179)](_0x1678(0x8e))||_0x3180a5[_0x1678(0x179)](_0x260109[_0x1678(0x2a7)])||_0x3180a5[_0x1678(0x179)](_0x260109[_0x1678(0x2a8)]),_0x110ce2=(_0x3180a5[_0x1678(0x179)](_0x260109[_0x1678(0x2a9)])||_0x3180a5['includes'](_0x260109[_0x1678(0x2aa)]))&&!_0x38e832&&!_0x3180a5[_0x1678(0x179)](_0x260109['idJCF'])&&!_0x38f9dd['loading'];if(_0x38e832){console[_0x1678(0xd4)](_0x260109[_0x1678(0x133)]),_0x260109[_0x1678(0x280)](_0x15510f,![]);return;}_0x260109[_0x1678(0x2ab)](_0x110ce2,!_0x1e12c7)&&!_0x41abcc&&!_0x4ee58e[_0x1678(0xbf)]&&_0x20f2e0&&(console[_0x1678(0xd4)](_0x260109['GaJgr']),_0x260109[_0x1678(0x21f)](_0x15510f,!![]),_0x260109[_0x1678(0x16b)](setTimeout,()=>{_0x42fb1f[_0x1678(0x2ac)](_0x47a02c);},0x7d0));},[_0x1e12c7,_0x117270,_0x41abcc,_0x47a02c]),_0x106725=(0x0,_react[_0x1678(0xf7)])((_0x1bcdf8,_0x2372bf=![])=>{const _0x3d7822={'Sylby':_0x1678(0x148),'hRRec':function(_0x2742b8,_0x246b1b){return _0x260109['vvDDe'](_0x2742b8,_0x246b1b);},'iLEfW':_0x260109[_0x1678(0x2ad)],'AXeZQ':function(_0x6c5ac){return _0x6c5ac();},'QeRYH':_0x260109[_0x1678(0x299)],'NeZoH':function(_0xb59276,_0x65bb6c){return _0x260109[_0x1678(0x105)](_0xb59276,_0x65bb6c);},'yyMjm':function(_0x164682,_0x2d4f5a){return _0x260109[_0x1678(0x2ae)](_0x164682,_0x2d4f5a);}},_0x138dbb=_0x1bcdf8[_0x1678(0x114)]||'',_0x11e704=_0x138dbb['toLowerCase']();console[_0x1678(0xd4)](_0x1678(0x1ff)+_0x138dbb+_0x1678(0x200)+_0x1bcdf8[_0x1678(0x1ee)]+_0x1678(0x27b)+_0x2372bf);const _0x8150d7=_0x11e704[_0x1678(0x179)](_0x260109[_0x1678(0x2af)])||_0x11e704[_0x1678(0x179)](_0x260109[_0x1678(0x12f)])||_0x11e704[_0x1678(0x179)]('/signin'),_0x516a58=_0x11e704['includes'](_0x260109[_0x1678(0x2b0)])&&!_0x8150d7&&!_0x1bcdf8[_0x1678(0x1ee)];if(_0x8150d7){console[_0x1678(0xd4)](_0x1678(0x2b1)),_0x260109[_0x1678(0x1c6)](_0x2bf6a7,![]);return;}if(_0x260109[_0x1678(0x2b2)](_0x516a58,!_0x24b14e)&&!_0x2d5307&&!_0x2cbb09['current']&&_0x2372bf){if(_0x260109[_0x1678(0x221)]('FAWZA',_0x1678(0x2b3)))console[_0x1678(0xd4)](_0x260109['pRFnn']),_0x260109[_0x1678(0x141)](_0x2bf6a7,!![]),_0x260109[_0x1678(0x138)](setTimeout,()=>{_0x3d7822[_0x1678(0x2b4)](_0x3d7822[_0x1678(0x2b5)],_0x3d7822['iLEfW'])?(_0x4a8585['log'](_0x1678(0x268)+_0x3c29f2['toUpperCase']()+']\x20User\x20denied\x20consent'),_0x1adbf0[_0x1678(0x10c)]['alert'](_0x3d7822[_0x1678(0x2b6)],_0x1678(0x1f4)+_0x4818c9+_0x1678(0x269),[{'text':'OK','onPress':_0x24e614}])):_0x3d7822['AXeZQ'](_0x1feabd);},0x7d0);else{_0x469db1[_0x1678(0xd4)](_0x3d7822[_0x1678(0x2b7)]),_0x3d7822[_0x1678(0x2b8)](_0x5564c7,![]),_0x3d7822['yyMjm'](_0x3cf7b2,![]);return;}}},[_0x24b14e,_0x2d5307,_0x1feabd]),_0x289ab1=(0x0,_react['useCallback'])((_0x3a0bd5,_0x32b450=![])=>{const _0x26cba7=_0x3a0bd5[_0x1678(0x114)]||'',_0x554469=_0x26cba7[_0x1678(0xc7)]();console['log'](_0x1678(0x1a6)+platform[_0x1678(0x103)]()+_0x1678(0x2b9)+_0x26cba7+',\x20loading='+_0x3a0bd5['loading']+',\x20isLoadEnd='+_0x32b450);let _0x48087f=![],_0x205085=![];if(_0x2cf41e)_0x48087f=_0x554469['includes'](_0x1678(0x8e))||_0x554469[_0x1678(0x179)](_0x1678(0x34))||_0x554469['includes'](_0x260109[_0x1678(0x2a7)]),_0x205085=_0x554469['includes'](_0x1678(0x2ba))&&!_0x48087f&&!_0x3a0bd5[_0x1678(0x1ee)];else{if(_0x27e271)_0x48087f=_0x554469[_0x1678(0x179)](_0x260109[_0x1678(0x2bb)])||_0x554469['includes'](_0x1678(0x2bc))||_0x554469[_0x1678(0x179)](_0x260109[_0x1678(0x2bd)]),_0x205085=_0x554469[_0x1678(0x179)](_0x260109[_0x1678(0x2be)])&&!_0x48087f&&!_0x3a0bd5[_0x1678(0x1ee)];else{if(_0x1db8ad)_0x260109[_0x1678(0x111)](_0x260109[_0x1678(0x2bf)],_0x1678(0x2c0))?(_0x48087f=_0x554469[_0x1678(0x179)](_0x260109['eCxYv'])||_0x554469[_0x1678(0x179)](_0x260109['DUCqT'])||_0x554469[_0x1678(0x179)](_0x1678(0x33)),_0x205085=_0x554469['includes'](_0x1678(0x2c1))&&!_0x48087f&&!_0x3a0bd5[_0x1678(0x1ee)]):_0x1b4e13[_0x1678(0xbf)][_0x1678(0xfd)](_0x308d50[_0x1678(0x2c2)]);else{if(_0x3b41d0){if(_0x260109[_0x1678(0x2c3)](_0x260109[_0x1678(0x2c4)],_0x1678(0x92)))_0x48087f=_0x554469['includes']('/auth')||!_0x554469['includes']('#'),_0x205085=_0x554469['includes'](_0x260109[_0x1678(0x2c5)])&&_0x554469[_0x1678(0x179)]('#')&&!_0x48087f&&!_0x3a0bd5[_0x1678(0x1ee)];else{const _0x587328={'Hnyup':_0x260109[_0x1678(0x128)],'NwZNu':function(_0xd3d6e9){return _0x260109[_0x1678(0x2c6)](_0xd3d6e9);}};_0x843a4c[_0x1678(0xd4)](_0x1678(0x180),_0x387aea),_0x260109['lmqpw'](_0x2c1c4e,![]),_0x260109['Rvdpf'](_0x510500,!![]),_0x5a5ed3(!![]),_0x4ef5d3(_0x1678(0x26)),_0x260109[_0x1678(0x20d)](_0x2a8c67,()=>{_0x516fc1(_0x587328[_0x1678(0x2c7)]);if(_0x9dc7b1)_0x587328['NwZNu'](_0x479a6c);},0x7d0);}}}}}if(_0x48087f){console[_0x1678(0xd4)](_0x1678(0x2c8)+platform['toUpperCase']()+_0x1678(0x2c9)),_0x3e8ea2(![]);return;}if(_0x205085&&!_0x207fbd&&!_0x5df3a8&&!_0x5336e0['current']&&_0x32b450){if(_0x260109[_0x1678(0x25c)](_0x260109['nHKck'],_0x260109[_0x1678(0x2ca)]))return _0x4ac0c2[_0x1678(0xd4)](_0x1678(0x2cb),_0x21484e),![];else console['log'](_0x1678(0x1f5)+platform[_0x1678(0x103)]()+_0x1678(0x2cc)),_0x260109[_0x1678(0x2cd)](_0x3e8ea2,!![]),_0x260109[_0x1678(0x2ce)](setTimeout,()=>{_0x34fdc5();},0x7d0);}},[platform,_0x2cf41e,_0x27e271,_0x1db8ad,_0x3b41d0,_0x207fbd,_0x5df3a8,_0x34fdc5]),_0x11ac04=_0x242167=>{const _0xc78653={'HOqgA':function(_0x1966ad,_0x5c62a9){return _0x260109[_0x1678(0x2ab)](_0x1966ad,_0x5c62a9);},'DpctZ':function(_0x229cc5,_0x45f058){return _0x229cc5===_0x45f058;},'qLQvw':function(_0x3a1334,_0x556f98){return _0x260109['qfLNh'](_0x3a1334,_0x556f98);},'SgJMC':_0x260109['RXmnT'],'mLCZQ':_0x260109[_0x1678(0x2cf)],'DzpZb':function(_0x2b9aa9,_0x4e96c2){return _0x260109[_0x1678(0x20f)](_0x2b9aa9,_0x4e96c2);},'ZOEmx':function(_0x1a7c13,_0x366d7a){return _0x260109['hsYKG'](_0x1a7c13,_0x366d7a);}};if(_0x260109['yBilq'](_0x260109[_0x1678(0x2d0)],'pDINw')){if(_0xc78653[_0x1678(0x2d1)](!_0x4e0642,_0x57cf6b)&&_0x5b2a5f['__esModule'])return _0x3d1259;var _0x35f09f,_0x566303,_0x18e191={'__proto__':null,'default':_0x5a4f9d};if(_0xc78653['DpctZ'](null,_0x1f53d2)||_0x1678(0x2d2)!=typeof _0x38b168&&_0x1678(0x3)!=typeof _0x17daf3)return _0x18e191;if(_0x35f09f=_0x72e6d1?_0x3d4b00:_0x576aca){if(_0x35f09f[_0x1678(0x9)](_0x5843c9))return _0x35f09f['get'](_0xbe4745);_0x35f09f[_0x1678(0xe)](_0x5b8e5e,_0x18e191);}for(const _0x8d5d28 in _0xf475bf)_0xc78653[_0x1678(0x2d3)]('default',_0x8d5d28)&&{}[_0x1678(0x2d4)][_0x1678(0xc)](_0xd2583f,_0x8d5d28)&&((_0x566303=(_0x35f09f=_0x2d120e['defineProperty'])&&_0x716016[_0x1678(0xd)](_0x1732ae,_0x8d5d28))&&(_0x566303['get']||_0x566303[_0x1678(0xe)])?_0x35f09f(_0x18e191,_0x8d5d28,_0x566303):_0x18e191[_0x8d5d28]=_0x18f8e9[_0x8d5d28]);return _0x18e191;}else{console[_0x1678(0xd4)](_0x1678(0x2d5)+platform+':',_0x242167[_0x1678(0x114)]);if(_0xf05d21){_0x592c29(_0x242167);try{if(_0x260109[_0x1678(0x2d6)](_0x260109['PaVZK'],_0x260109[_0x1678(0x2d7)])){(0x0,_0x237239[_0x1678(0x2d8)])(_0x49622d[_0x1678(0x114)],_0x43f5a1)&&_0x8a4701[_0x1678(0xd4)](_0x1678(0x1f5)+_0x42d828[_0x1678(0x103)]()+']\x20Login\x20detected!');return;}else{const _0x13c81f=new URL(_0x242167['url']),_0x490a6c=_0x13c81f['searchParams'][_0x1678(0x9)](_0x260109[_0x1678(0x116)]),_0x127606=_0x13c81f[_0x1678(0x115)][_0x1678(0x9)](_0x260109[_0x1678(0x2d9)]);if(_0x490a6c||_0x127606){if(_0x260109[_0x1678(0xc6)](_0x260109[_0x1678(0x2da)],_0x260109[_0x1678(0x2db)]))_0x1f44a0&&_0x43fe1a[_0x1678(0xd4)](_0x260109[_0x1678(0x2dc)]);else{console[_0x1678(0xd4)](_0x1678(0x2dd)),_0x260109[_0x1678(0x1e1)](_0x31c706,!![]),_0x260109['RDUFB'](setTimeout,()=>{_0x2303cf['current']&&(console[_0x1678(0xd4)](_0x1678(0x2de)),_0x4de9d2(_0xc78653['SgJMC']),_0x2303cf[_0x1678(0xbf)][_0x1678(0xfd)](_0x1678(0x119)));},0x1f4);return;}}}}catch(_0xa0c468){}return;}if(_0x44e801){if(_0x260109[_0x1678(0x23a)](_0x260109[_0x1678(0x2df)],_0x260109['RsYud']))_0x412944[_0x1678(0xd4)](_0xc78653[_0x1678(0x2e0)]),_0xc78653[_0x1678(0x2e1)](_0xe57843,!![]),_0xc78653[_0x1678(0x2e2)](_0x351234,_0xc78653[_0x1678(0x2e3)]),_0x30281d['current'][_0x1678(0xfd)](_0x145ede['LINKEDIN_PROFILE_EXTRACTOR_SCRIPT']);else{_0x260109['UNkMX'](_0x5b0a48,_0x242167);return;}}if(_0x592beb){_0x260109[_0x1678(0x150)](_0x106725,_0x242167);return;}if(_0x239452){_0x260109[_0x1678(0x2e4)](_0x289ab1,_0x242167);return;}if(_0x2b9829){if(_0x260109[_0x1678(0x2e5)](_0x1678(0x9b),_0x260109[_0x1678(0x2e6)]))_0x8b6470();else{(0x0,_webviewScripts['isLoggedInUrl'])(_0x242167[_0x1678(0x114)],platform)&&console[_0x1678(0xd4)]('✅\x20['+platform[_0x1678(0x103)]()+_0x1678(0x2e7));return;}}const _0x596fc9=_0x242167['url'][_0x1678(0x179)](_0x260109[_0x1678(0x2e8)])||_0x242167[_0x1678(0x114)][_0x1678(0x179)](_0x260109['radeV'])||_0x242167[_0x1678(0x114)][_0x1678(0x179)](_0x260109['eEDun'])||_0x242167[_0x1678(0x114)][_0x1678(0x2e9)](_0x260109[_0x1678(0x2ea)])||_0x242167[_0x1678(0x114)][_0x1678(0x2e9)](_0x260109['qVoUX']),_0x67c071=_0x242167[_0x1678(0x114)][_0x1678(0x179)](_0x1678(0x2eb))&&_0x242167['url'][_0x1678(0x179)](_0x260109[_0x1678(0x2ec)]);if(_0x596fc9||_0x67c071){console[_0x1678(0xd4)]('✅\x20'+platform+_0x1678(0x257)+_0x242167[_0x1678(0x114)]),_0x260109[_0x1678(0x2ed)](_0x2888e4,!![]),_0x260109[_0x1678(0x2ee)](setTimeout,()=>{_0x21d104(_0x1678(0x27));if(_0x2a3e2c)_0x260109[_0x1678(0x1ea)](_0x2a3e2c);},0x7d0);return;}}},_0x3d922f=_0x214fae=>{const _0x38f009={'FHZOj':function(_0x252dc6,_0x4c5d41){return _0x260109['bHnZo'](_0x252dc6,_0x4c5d41);}};if(_0x260109[_0x1678(0x1e3)]('QnQXh',_0x260109[_0x1678(0x2ef)])){const _0x226f95=_0x3d7ca0[_0x1678(0xe6)]||0x0;_0x2f3244['log'](_0x1678(0x238)+_0x226f95+_0x1678(0xe7)+_0x3343fb[_0x1678(0xe8)]),_0x52dba4(_0x226f95),_0x38f009['FHZOj'](_0x4998cc,_0x2f6151['message']||_0x1678(0xea)+_0x226f95+'%'),_0x3e451c['Animated']['timing'](_0x36434f,{'toValue':_0x226f95,'duration':0x12c,'useNativeDriver':![]})[_0x1678(0xec)]();return;}else{const _0x184d96=_0x214fae['nativeEvent'][_0x1678(0x114)];console['log']('📄\x20[LOAD\x20END]\x20Page\x20loaded:\x20'+_0x184d96),_0x260109['iuzaH'](_0xc01974,![]);if(_0xf05d21)_0x260109['YwWHh'](_0x260109['sTdPZ'],_0x1678(0x2f0))?_0x592c29({'url':_0x184d96,'loading':![]},!![]):_0x5cd907({'url':_0x2fd92b,'loading':![]},!![]);else{if(_0x44e801)_0x260109[_0x1678(0x2f1)](_0x5b0a48,{'url':_0x184d96,'loading':![]},!![]);else{if(_0x592beb)_0x106725({'url':_0x184d96,'loading':![]},!![]);else _0x239452&&_0x260109['KtoIw'](_0x289ab1,{'url':_0x184d96,'loading':![]},!![]);}}}},_0xdea175=_0x2ce068=>{const _0x4bd16f={'YMZbS':_0x1678(0x8c),'VuRZo':function(_0x5a5bd7,_0x29fb86){return _0x5a5bd7(_0x29fb86);}},_0x4c793e=_0x2ce068[_0x1678(0x114)]||'',_0x7e2333=_0x4c793e[_0x1678(0xc7)]();if(_0xf05d21){const _0x35388a=[_0x260109[_0x1678(0x2f2)],_0x1678(0x2f3),_0x260109[_0x1678(0x2f4)],_0x1678(0x2f5)],_0x27149e=_0x35388a[_0x1678(0x2f6)](_0x578e44=>_0x7e2333[_0x1678(0x2e9)](_0x578e44));if(_0x27149e){if(_0x260109[_0x1678(0x2f7)]('ECiFe',_0x1678(0x2f8)))_0x577b00['error'](_0x260109['UzTZZ'],_0x945d14);else return console[_0x1678(0xd4)](_0x1678(0x2cb),_0x4c793e),![];}if(_0x7e2333[_0x1678(0x2e9)](_0x260109[_0x1678(0x2f9)])&&_0x7e2333[_0x1678(0x179)](_0x260109[_0x1678(0x2fa)])){if(_0x260109[_0x1678(0x2fb)]!==_0x260109['VeHjr'])_0x260109[_0x1678(0x2fc)](_0x224e29,''),_0x3f28c4[_0x1678(0xd4)](_0x260109[_0x1678(0xe0)]);else return console[_0x1678(0xd4)](_0x260109[_0x1678(0x2fd)],_0x4c793e),![];}if(_0x7e2333[_0x1678(0x2e9)](_0x260109[_0x1678(0x2fe)])||_0x7e2333[_0x1678(0x2e9)](_0x260109['gHtPd'])){if(_0x260109[_0x1678(0xcf)](_0x260109[_0x1678(0x2ff)],_0x260109[_0x1678(0x2ff)]))return!![];else _0x231322=_0x646bf3[_0x1678(0x179)](_0x260109[_0x1678(0x12f)])||!_0x2c683a[_0x1678(0x179)]('#'),_0xe5393e=_0x5768e8[_0x1678(0x179)](_0x260109[_0x1678(0x2c5)])&&_0x4fad54[_0x1678(0x179)]('#')&&!_0x36906c&&!_0x203b6a[_0x1678(0x1ee)];}if(_0x7e2333[_0x1678(0x2e9)](_0x260109['noKqX'])){if(_0x260109[_0x1678(0x300)](_0x260109[_0x1678(0x301)],_0x1678(0x302)))_0x52bed8[_0x1678(0xd4)](_0x4bd16f[_0x1678(0x303)]),_0x4bd16f[_0x1678(0x304)](_0x254c28,!![]),_0x13e870(()=>{_0x3716dc();},0x7d0);else return!![];}return console[_0x1678(0xd4)](_0x260109['ZzOJM'],_0x4c793e),![];}return!![];},_0x4cdc41=()=>{if(_0x260109[_0x1678(0x305)](_0x2b9829,_0xf05d21)||_0x239452)return(0x0,_webviewScripts[_0x1678(0x306)])(platform);return undefined;},_0x3a36e5=_0x260109[_0x1678(0x307)](_0x44e801,_0x117270),_0x474664=_0x237680,_0x219478=_0x4d8f63,_0x263fa5=_0x260109['bugNF'](_0x301b83,_0x5e4399)||_0x876e4b||_0x373633||_0x586243,_0x4fae0f=_0x3de7ae=>{const _0x3785e8={'linkedin':_0x260109[_0x1678(0x26c)],'chatgpt':_0x260109[_0x1678(0x308)],'openai':_0x260109['cSMhT'],'claude':_0x260109[_0x1678(0x309)],'anthropic':_0x260109[_0x1678(0x309)],'reddit':_0x1678(0x30a),'youtube':_0x260109['WSIIq'],'pinterest':_0x1678(0x30b),'gmail':_0x260109['gwHKn'],'gemini':_0x260109[_0x1678(0x30c)],'grok':_0x1678(0x30d),'hinge':_0x260109['Bvxli'],'instagram':_0x260109[_0x1678(0x271)],'sephora':_0x260109[_0x1678(0x30e)],'telegram':_0x260109['sBNsS']};return _0x3785e8[_0x3de7ae[_0x1678(0xc7)]()]||_0x1678(0x7c);},_0x22e6d5=_0x260109['wobSG'](_0x4fae0f,platform);return _react['default'][_0x1678(0xda)](()=>{_0x260109[_0x1678(0x30f)](_0x1678(0xae),_0x260109[_0x1678(0x310)])?_0x263fa5&&(_0x4e80e1[_0x1678(0xf4)](0x0),_0x504430[_0x1678(0xf4)](0x0),_reactNative[_0x1678(0xc0)][_0x1678(0xf6)]([_reactNative[_0x1678(0xc0)]['timing'](_0x504430,{'toValue':0x1,'duration':0x96,'useNativeDriver':!![]})])[_0x1678(0xec)](),_reactNative[_0x1678(0xc0)][_0x1678(0x311)](_0x4e80e1,{'toValue':0x1,'friction':0x4,'tension':0x64,'useNativeDriver':!![]})['start']()):_0x3ad626['log'](_0x260109['TkGVN']);},[_0x263fa5,_0x4e80e1,_0x504430]),_react['default']['createElement'](_reactNative['View'],{'style':styles[_0x1678(0x312)]},_react['default'][_0x1678(0x313)](_reactNative[_0x1678(0x314)],{'style':styles[_0x1678(0x315)]},_react['default']['createElement'](_reactNative[_0x1678(0x316)],{'style':styles[_0x1678(0x317)]},_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative['Text'],{'style':styles[_0x1678(0x318)]},_0x260109[_0x1678(0x319)],platform['charAt'](0x0)['toUpperCase']()+platform[_0x1678(0x31a)](0x1)),_0x53e3ea&&_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x31b)],{'style':styles[_0x1678(0x31c)]},_0x260109[_0x1678(0x31d)]),_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x31e)],{'onPress':_0x1b2026,'style':styles[_0x1678(0x31f)]},_react[_0x1678(0x4)]['createElement'](_reactNative['Text'],{'style':styles[_0x1678(0x320)]},'✕'))),_0x5079e8&&_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x316)],{'style':styles['linkedinProgressContainer']},_react[_0x1678(0x4)]['createElement'](_reactNative[_0x1678(0x316)],{'style':styles[_0x1678(0x321)]},_react['default']['createElement'](_reactNative[_0x1678(0xc0)]['View'],{'style':[styles[_0x1678(0x322)],{'transform':[{'translateX':_0x380c48[_0x1678(0x323)]({'inputRange':[0x0,0x1],'outputRange':[0x0,_0x260109[_0x1678(0x324)](width,0x78)]})}]}]})),_react[_0x1678(0x4)]['createElement'](_reactNative[_0x1678(0x31b)],{'style':styles['linkedinProgressText']},_0x1678(0x325))),_0x3a36e5&&_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x316)],{'style':styles['exportProgressContainer']},_react['default'][_0x1678(0x313)](_reactNative[_0x1678(0x316)],{'style':styles[_0x1678(0x326)]},_react[_0x1678(0x4)]['createElement'](_reactNative[_0x1678(0xc0)][_0x1678(0x316)],{'style':[styles['progressBar'],{'width':_0x219478[_0x1678(0x323)]({'inputRange':[0x0,0x64],'outputRange':['0%',_0x260109[_0x1678(0x327)]]}),'backgroundColor':_0x22e6d5}]})),_react[_0x1678(0x4)]['createElement'](_reactNative['Text'],{'style':styles['progressText']},_0x260109['LsynJ'](_0x474664,0x64)?_0x1678(0x328)+Math[_0x1678(0x329)](_0x474664)+'%':_0x260109[_0x1678(0x32a)])),_0x592beb&&_0x3796d0&&_react[_0x1678(0x4)]['createElement'](_reactNative[_0x1678(0x316)],{'style':styles[_0x1678(0x32b)]},_react[_0x1678(0x4)]['createElement'](_reactNative['View'],{'style':styles[_0x1678(0x32c)]},_react['default'][_0x1678(0x313)](_reactNative[_0x1678(0x32d)],{'size':_0x260109['WgtOi'],'color':_0x260109[_0x1678(0x309)]}),_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x31b)],{'style':styles[_0x1678(0x32e)]},'Extracting\x20Data'),_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x31b)],{'style':styles[_0x1678(0x32f)]},_0x4817bc),_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x316)],{'style':styles['claudeExtractionProgressContainer']},_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0xc0)][_0x1678(0x316)],{'style':[styles[_0x1678(0x330)],{'width':_0x1f2c57[_0x1678(0x323)]({'inputRange':[0x0,0x64],'outputRange':['0%',_0x1678(0xb5)]})}]})),_react['default'][_0x1678(0x313)](_reactNative[_0x1678(0x31b)],{'style':styles[_0x1678(0x331)]},Math[_0x1678(0x329)](_0x189db1),'%'))),_0x239452&&_0x3ca959&&_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x316)],{'style':styles[_0x1678(0x332)]},_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative['View'],{'style':styles[_0x1678(0x32c)]},_react[_0x1678(0x4)]['createElement'](_reactNative[_0x1678(0x32d)],{'size':_0x260109[_0x1678(0x333)],'color':_0x22e6d5}),_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative['Text'],{'style':styles[_0x1678(0x334)]},_0x260109[_0x1678(0x335)]),_react['default'][_0x1678(0x313)](_reactNative[_0x1678(0x31b)],{'style':styles[_0x1678(0x336)]},_0x599722),_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x316)],{'style':styles[_0x1678(0x337)]},_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative['Animated']['View'],{'style':[styles[_0x1678(0x338)],{'backgroundColor':_0x22e6d5,'width':_0x5bfbcc[_0x1678(0x323)]({'inputRange':[0x0,0x64],'outputRange':['0%',_0x260109[_0x1678(0x327)]]})}]})),_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative['Text'],{'style':[styles[_0x1678(0x339)],{'color':_0x22e6d5}]},Math[_0x1678(0x329)](_0x50a0e1),'%'))),_0x263fa5&&_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x316)],{'style':styles[_0x1678(0x33a)]},_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative['Animated'][_0x1678(0x316)],{'style':[styles['successCheckmark'],{'backgroundColor':_0x22e6d5,'transform':[{'scale':_0x4e80e1}],'opacity':_0x504430}]},_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x31b)],{'style':styles[_0x1678(0x33b)]},'✓')),_react['default']['createElement'](_reactNative[_0x1678(0xc0)][_0x1678(0x31b)],{'style':[styles[_0x1678(0x33c)],{'opacity':_0x504430}]},_0x260109['eSFNg'])),_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x316)],{'style':styles[_0x1678(0x33d)]},_0x260109[_0x1678(0x33e)](_0x6c2e93,!_0x3a36e5)&&!_0x263fa5&&_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x316)],{'style':styles['loadingContainer']},_react[_0x1678(0x4)][_0x1678(0x313)](_reactNative[_0x1678(0x32d)],{'size':_0x260109[_0x1678(0x333)],'color':_0x22e6d5}),_react['default']['createElement'](_reactNative[_0x1678(0x31b)],{'style':styles['loadingText']},'Loading\x20',platform,_0x260109[_0x1678(0x33f)]),_react[_0x1678(0x4)]['createElement'](_reactNative['Text'],{'style':styles[_0x1678(0x340)]},_0x1678(0x341),platform,_0x260109[_0x1678(0x342)])),_react['default'][_0x1678(0x313)](_reactNativeWebview[_0x1678(0x343)],{'ref':_0x2303cf,'source':{'uri':_0x29ed45},'onShouldStartLoadWithRequest':_0xdea175,'onNavigationStateChange':_0x11ac04,'onLoadStart':()=>_0xc01974(!![]),'onLoadEnd':_0x3d922f,'onMessage':_0x8146af,'injectedJavaScriptBeforeContentLoaded':_0x4cdc41(),'style':styles[_0x1678(0x344)],'javaScriptEnabled':!![],'domStorageEnabled':!![],'cacheEnabled':!_0xf05d21,'incognito':_0xf05d21,'thirdPartyCookiesEnabled':!_0xf05d21,'sharedCookiesEnabled':!_0xf05d21,'userAgent':(0x0,_webviewScripts[_0x1678(0x345)])(platform),'originWhitelist':[_0x260109['QLBQs'],_0x260109['habDQ']],'allowsBackForwardNavigationGestures':!![],'setSupportMultipleWindows':![],'onError':_0x51e018=>{if(_0x260109[_0x1678(0x144)](_0x260109['KowHg'],_0x260109[_0x1678(0x346)])){const {nativeEvent:_0x248284}=_0x51e018;console[_0x1678(0x10f)](_0x1678(0x347)+platform+':',_0x248284);}else{const _0x2fd450={'YhJSl':function(_0x4e1efd,_0x2ca934,_0x59237e){return _0x260109['GcNFp'](_0x4e1efd,_0x2ca934,_0x59237e);},'qJmqC':function(_0x5f556e,_0x321bfe){return _0x5f556e+_0x321bfe;}};_0x260109[_0x1678(0x348)](_0x4f99e9,()=>{_0x2fd450['YhJSl'](_0x1d77a8,_0x2fd450[_0x1678(0x349)](_0x4acfe4,0x1),_0xa32f88);},0xbb8);}},'onHttpError':_0x17eed4=>{const _0x381ac8={'ytpfi':function(_0x1acaf2,_0x5b272f){return _0x260109[_0x1678(0x17c)](_0x1acaf2,_0x5b272f);}};if(_0x260109[_0x1678(0x34a)](_0x1678(0x34b),_0x260109[_0x1678(0x34c)])){const {nativeEvent:_0x5ec42e}=_0x17eed4;console[_0x1678(0x10f)](_0x1678(0x34d)+platform+':\x20'+_0x5ec42e[_0x1678(0x178)],_0x5ec42e['url']),_0x5ec42e['url']&&_0x5ec42e[_0x1678(0x114)][_0x1678(0x179)](_0x260109[_0x1678(0x127)])&&(console['log'](_0x260109[_0x1678(0x34e)]),_0x260109[_0x1678(0x137)](_0x21d104,_0x260109[_0x1678(0x128)]),_0x2a3e2c&&_0x260109['Ebhgj'](setTimeout,()=>_0x2a3e2c(),0x3e8));}else{if(_0x381ac8['ytpfi'](_0x453581,_0x71eda)||_0xa34d35)return(0x0,_0x5645c8['getAntiDetectionScript'])(_0x2c0b41);return _0x4e095b;}}}))));};exports[_0x1678(0x2)]=OAuthWebView;const styles=_reactNative['StyleSheet'][_0x1678(0x34f)]({'modalContainer':{'position':_0x1678(0x350),'top':0x0,'left':0x0,'right':0x0,'bottom':0x0,'width':width,'height':height,'backgroundColor':'#fff','zIndex':0x270f,'borderTopLeftRadius':0x14,'borderTopRightRadius':0x14,'overflow':_0x1678(0x351)},'container':{'flex':0x1,'backgroundColor':'#fff','width':width,'height':height,'position':_0x1678(0x350),'top':0x0,'left':0x0,'right':0x0,'bottom':0x0,'zIndex':0x3e7,'borderTopLeftRadius':0x14,'borderTopRightRadius':0x14,'overflow':_0x1678(0x351)},'header':{'flexDirection':_0x1678(0x352),'alignItems':'center','justifyContent':_0x1678(0x353),'paddingHorizontal':0x10,'paddingVertical':0x8,'borderBottomWidth':0x1,'borderBottomColor':_0x1678(0x354),'backgroundColor':'#fff','zIndex':0x3e8},'title':{'fontSize':0x12,'fontWeight':'600','color':_0x1678(0x355),'flex':0x1,'textAlign':_0x1678(0x356)},'closeButton':{'padding':0x8},'closeButtonText':{'fontSize':0x14,'color':'#666'},'webViewContainer':{'flex':0x1,'width':width,'height':height-0x3c},'webView':{'flex':0x1,'width':_0x1678(0xb5),'height':_0x1678(0xb5)},'loadingContainer':{..._reactNative['StyleSheet'][_0x1678(0x357)],'alignItems':_0x1678(0x356),'justifyContent':_0x1678(0x356),'backgroundColor':_0x1678(0x358),'zIndex':0x1},'loadingText':{'marginTop':0xc,'fontSize':0x10,'color':_0x1678(0x359)},'loadingHint':{'marginTop':0x8,'fontSize':0xe,'color':'#999','textAlign':_0x1678(0x356),'paddingHorizontal':0x28},'timeoutText':{'fontSize':0xc,'color':'#FF6B6B','textAlign':_0x1678(0x356),'marginTop':0x4},'linkedinProgressContainer':{'paddingHorizontal':0x10,'paddingVertical':0xc,'backgroundColor':_0x1678(0x35a),'borderBottomWidth':0x1,'borderBottomColor':_0x1678(0x354),'alignItems':_0x1678(0x356)},'linkedinProgressTrack':{'width':_0x1678(0xb5),'height':0x4,'backgroundColor':_0x1678(0x35b),'borderRadius':0x2,'overflow':_0x1678(0x351)},'linkedinProgressIndicator':{'width':0x50,'height':0x4,'backgroundColor':_0x1678(0x78),'borderRadius':0x2},'linkedinProgressText':{'color':_0x1678(0x78),'fontSize':0xd,'fontWeight':'500','marginTop':0x8,'fontFamily':_0x1678(0x35c)},'exportProgressContainer':{'paddingHorizontal':0x10,'paddingVertical':0x6,'backgroundColor':_0x1678(0x35d),'borderBottomWidth':0x1,'borderBottomColor':_0x1678(0x354)},'progressBarContainer':{'height':0x6,'backgroundColor':_0x1678(0x35e),'borderRadius':0x3,'overflow':_0x1678(0x351)},'progressBar':{'height':_0x1678(0xb5),'borderRadius':0x3},'progressText':{'fontSize':0xc,'color':_0x1678(0x35f),'textAlign':_0x1678(0x356),'marginTop':0x6},'successOverlay':{'position':'absolute','top':0x0,'left':0x0,'right':0x0,'bottom':0x0,'backgroundColor':'#FFFFFF','justifyContent':'center','alignItems':'center','zIndex':0x7d0},'successCheckmark':{'width':0x50,'height':0x50,'borderRadius':0x28,'justifyContent':_0x1678(0x356),'alignItems':_0x1678(0x356),'shadowColor':_0x1678(0x360),'shadowOffset':{'width':0x0,'height':0x4},'shadowOpacity':0.2,'shadowRadius':0x14,'elevation':0xa},'successCheckmarkIcon':{'fontSize':0x32,'color':_0x1678(0x361),'fontWeight':_0x1678(0x362)},'successText':{'fontFamily':_0x1678(0x35c),'fontSize':0x18,'fontWeight':_0x1678(0x363),'color':_0x1678(0x364),'marginTop':0x18},'claudeExtractionOverlay':{'position':_0x1678(0x350),'top':0x0,'left':0x0,'right':0x0,'bottom':0x0,'backgroundColor':'#FFFFFF','justifyContent':_0x1678(0x356),'alignItems':'center','zIndex':0x3e8},'extractionContent':{'alignItems':'center','paddingHorizontal':0x20},'claudeExtractionTitle':{'fontSize':0x18,'fontWeight':_0x1678(0x363),'color':_0x1678(0x364),'marginTop':0x18,'marginBottom':0x8},'claudeExtractionSubtitle':{'fontSize':0x10,'color':_0x1678(0x35f),'textAlign':_0x1678(0x356),'marginBottom':0x18},'claudeExtractionProgressContainer':{'width':0xc8,'height':0x8,'backgroundColor':_0x1678(0x35e),'borderRadius':0x4,'overflow':_0x1678(0x351)},'claudeExtractionProgressFill':{'height':_0x1678(0xb5),'backgroundColor':_0x1678(0x79),'borderRadius':0x4},'claudeExtractionProgressText':{'fontSize':0xe,'color':_0x1678(0x79),'fontWeight':'600','marginTop':0x8},'linkedInExtractionOverlay':{'position':_0x1678(0x350),'top':0x0,'left':0x0,'right':0x0,'bottom':0x0,'backgroundColor':_0x1678(0x361),'justifyContent':_0x1678(0x356),'alignItems':'center','zIndex':0x3e8},'linkedInExtractionTitle':{'fontSize':0x18,'fontWeight':_0x1678(0x363),'color':'#1a1a1a','marginTop':0x18,'marginBottom':0x8},'linkedInExtractionSubtitle':{'fontSize':0x10,'color':_0x1678(0x35f),'textAlign':_0x1678(0x356),'marginBottom':0x18},'linkedInExtractionProgressContainer':{'width':0xc8,'height':0x8,'backgroundColor':'#E5E7EB','borderRadius':0x4,'overflow':_0x1678(0x351)},'linkedInExtractionProgressFill':{'height':'100%','backgroundColor':_0x1678(0x78),'borderRadius':0x4},'linkedInExtractionProgressText':{'fontSize':0xe,'color':_0x1678(0x78),'fontWeight':_0x1678(0x365),'marginTop':0x8},'newPlatformExtractionOverlay':{'position':_0x1678(0x350),'top':0x0,'left':0x0,'right':0x0,'bottom':0x0,'backgroundColor':_0x1678(0x361),'justifyContent':_0x1678(0x356),'alignItems':_0x1678(0x356),'zIndex':0x3e8},'newPlatformExtractionTitle':{'fontSize':0x18,'fontWeight':_0x1678(0x363),'color':_0x1678(0x364),'marginTop':0x18,'marginBottom':0x8},'newPlatformExtractionSubtitle':{'fontSize':0x10,'color':_0x1678(0x35f),'textAlign':'center','marginBottom':0x18},'newPlatformExtractionProgressContainer':{'width':0xc8,'height':0x8,'backgroundColor':_0x1678(0x35e),'borderRadius':0x4,'overflow':_0x1678(0x351)},'newPlatformExtractionProgressFill':{'height':_0x1678(0xb5),'borderRadius':0x4},'newPlatformExtractionProgressText':{'fontSize':0xe,'fontWeight':_0x1678(0x365),'marginTop':0x8}});
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.OAuthWebView = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _reactNativeWebview = require("react-native-webview");
|
|
10
|
+
var _webviewScripts = require("../../utils/webviewScripts");
|
|
11
|
+
var _linkedinDOMExtractor = require("../../services/linkedinDOMExtractor");
|
|
12
|
+
var _chatGPTConversationExtractor = require("../../services/chatGPTConversationExtractor");
|
|
13
|
+
var _claudeConversationExtractor = require("../../services/claudeConversationExtractor");
|
|
14
|
+
var _linkedinProfileService = require("../../services/linkedinProfileService");
|
|
15
|
+
var _hingeDataExtractor = require("../../services/hingeDataExtractor");
|
|
16
|
+
var _instagramDataExtractor = require("../../services/instagramDataExtractor");
|
|
17
|
+
var _sephoraDataExtractor = require("../../services/sephoraDataExtractor");
|
|
18
|
+
var _telegramDataExtractor = require("../../services/telegramDataExtractor");
|
|
19
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
20
|
+
const {
|
|
21
|
+
width,
|
|
22
|
+
height
|
|
23
|
+
} = _reactNative.Dimensions.get('window');
|
|
24
|
+
const OAuthWebView = ({
|
|
25
|
+
url,
|
|
26
|
+
onClose,
|
|
27
|
+
onSuccess,
|
|
28
|
+
platform = 'platform',
|
|
29
|
+
onComplete,
|
|
30
|
+
username
|
|
31
|
+
}) => {
|
|
32
|
+
const [isLoading, setIsLoading] = (0, _react.useState)(true);
|
|
33
|
+
const [timeoutReached, setTimeoutReached] = (0, _react.useState)(false);
|
|
34
|
+
const webViewRef = (0, _react.useRef)(null);
|
|
35
|
+
|
|
36
|
+
// LinkedIn-specific state
|
|
37
|
+
const [linkedInLoggedIn, setLinkedInLoggedIn] = (0, _react.useState)(false);
|
|
38
|
+
const [hasAutoNavigatedToProfile, setHasAutoNavigatedToProfile] = (0, _react.useState)(false);
|
|
39
|
+
const [isOnProfilePage, setIsOnProfilePage] = (0, _react.useState)(false);
|
|
40
|
+
const [linkedInConnectionComplete, setLinkedInConnectionComplete] = (0, _react.useState)(false);
|
|
41
|
+
const [hasStartedAutoExtraction, setHasStartedAutoExtraction] = (0, _react.useState)(false);
|
|
42
|
+
const [showLinkedInSuccessAnimation, setShowLinkedInSuccessAnimation] = (0, _react.useState)(false);
|
|
43
|
+
const [extractionStatus, setExtractionStatus] = (0, _react.useState)('');
|
|
44
|
+
const [isExtracting, setIsExtracting] = (0, _react.useState)(false);
|
|
45
|
+
const [extractedProfileUrl, setExtractedProfileUrl] = (0, _react.useState)(null);
|
|
46
|
+
|
|
47
|
+
// LinkedIn Profile DOM Scraping state (new - similar to ChatGPT pattern)
|
|
48
|
+
const [hasStartedLinkedInProfileScraping, setHasStartedLinkedInProfileScraping] = (0, _react.useState)(false);
|
|
49
|
+
const [isLinkedInProfileScraping, setIsLinkedInProfileScraping] = (0, _react.useState)(false);
|
|
50
|
+
const [linkedInProfileProgress, setLinkedInProfileProgress] = (0, _react.useState)(0);
|
|
51
|
+
const [showLinkedInExtractionAnimation, setShowLinkedInExtractionAnimation] = (0, _react.useState)(false);
|
|
52
|
+
const linkedInProfileScrapingStartedRef = (0, _react.useRef)(false);
|
|
53
|
+
const linkedInProfileProgressAnim = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
54
|
+
|
|
55
|
+
// ChatGPT-specific state (matches Enoch iOS implementation)
|
|
56
|
+
const [chatGPTLoggedIn, setChatGPTLoggedIn] = (0, _react.useState)(false);
|
|
57
|
+
const [hasStartedChatGPTExtraction, setHasStartedChatGPTExtraction] = (0, _react.useState)(false);
|
|
58
|
+
const [isChatGPTExporting, setIsChatGPTExporting] = (0, _react.useState)(false);
|
|
59
|
+
const [chatGPTExportProgress, setChatGPTExportProgress] = (0, _react.useState)(0);
|
|
60
|
+
const [showChatGPTSuccessAnimation, setShowChatGPTSuccessAnimation] = (0, _react.useState)(false);
|
|
61
|
+
const chatGPTProgressAnim = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
62
|
+
const chatGPTExtractionStartedRef = (0, _react.useRef)(false);
|
|
63
|
+
|
|
64
|
+
// Claude-specific state (same pattern as ChatGPT)
|
|
65
|
+
const [claudeLoggedIn, setClaudeLoggedIn] = (0, _react.useState)(false);
|
|
66
|
+
const [hasStartedClaudeExtraction, setHasStartedClaudeExtraction] = (0, _react.useState)(false);
|
|
67
|
+
const [isClaudeExporting, setIsClaudeExporting] = (0, _react.useState)(false);
|
|
68
|
+
const [claudeExportProgress, setClaudeExportProgress] = (0, _react.useState)(0);
|
|
69
|
+
const [showClaudeExtractionAnimation, setShowClaudeExtractionAnimation] = (0, _react.useState)(false);
|
|
70
|
+
const [showClaudeSuccessAnimation, setShowClaudeSuccessAnimation] = (0, _react.useState)(false);
|
|
71
|
+
const [claudeStatus, setClaudeStatus] = (0, _react.useState)('');
|
|
72
|
+
const claudeProgressAnim = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
73
|
+
const claudeExtractionStartedRef = (0, _react.useRef)(false);
|
|
74
|
+
|
|
75
|
+
// New Platform state (Hinge, Instagram, Sephora) - same pattern as ChatGPT/Claude
|
|
76
|
+
const [newPlatformLoggedIn, setNewPlatformLoggedIn] = (0, _react.useState)(false);
|
|
77
|
+
const [hasStartedNewPlatformExtraction, setHasStartedNewPlatformExtraction] = (0, _react.useState)(false);
|
|
78
|
+
const [isNewPlatformExporting, setIsNewPlatformExporting] = (0, _react.useState)(false);
|
|
79
|
+
const [newPlatformExportProgress, setNewPlatformExportProgress] = (0, _react.useState)(0);
|
|
80
|
+
const [showNewPlatformExtractionAnimation, setShowNewPlatformExtractionAnimation] = (0, _react.useState)(false);
|
|
81
|
+
const [showNewPlatformSuccessAnimation, setShowNewPlatformSuccessAnimation] = (0, _react.useState)(false);
|
|
82
|
+
const [newPlatformStatus, setNewPlatformStatus] = (0, _react.useState)('');
|
|
83
|
+
const newPlatformProgressAnim = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
84
|
+
const newPlatformExtractionStartedRef = (0, _react.useRef)(false);
|
|
85
|
+
|
|
86
|
+
// Generic OAuth success animation (for Reddit, YouTube, Pinterest, Gmail, Gemini, Grok)
|
|
87
|
+
const [showOAuthSuccessAnimation, setShowOAuthSuccessAnimation] = (0, _react.useState)(false);
|
|
88
|
+
const checkmarkScaleAnim = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
89
|
+
const checkmarkOpacityAnim = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
90
|
+
|
|
91
|
+
// LinkedIn connecting progress bar animation (indeterminate sliding)
|
|
92
|
+
const linkedinProgressAnim = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
93
|
+
|
|
94
|
+
// Services
|
|
95
|
+
const {
|
|
96
|
+
initiateConversationExport,
|
|
97
|
+
storeMemories
|
|
98
|
+
} = (0, _chatGPTConversationExtractor.useChatGPTConversationExtractor)();
|
|
99
|
+
const {
|
|
100
|
+
initiateConversationExport: initiateClaudeExport
|
|
101
|
+
} = (0, _claudeConversationExtractor.useClaudeConversationExtractor)();
|
|
102
|
+
const {
|
|
103
|
+
initiateDataExport: initiateHingeExport
|
|
104
|
+
} = (0, _hingeDataExtractor.useHingeDataExtractor)();
|
|
105
|
+
const {
|
|
106
|
+
initiateDataExport: initiateInstagramExport
|
|
107
|
+
} = (0, _instagramDataExtractor.useInstagramDataExtractor)();
|
|
108
|
+
const {
|
|
109
|
+
initiateDataExport: initiateSephoraExport
|
|
110
|
+
} = (0, _sephoraDataExtractor.useSephoraDataExtractor)();
|
|
111
|
+
const {
|
|
112
|
+
initiateDataExport: initiateTelegramExport
|
|
113
|
+
} = (0, _telegramDataExtractor.useTelegramDataExtractor)();
|
|
114
|
+
const isLLM = (0, _webviewScripts.isLLMPlatform)(platform);
|
|
115
|
+
const isLinkedIn = (0, _webviewScripts.isLinkedInPlatform)(platform);
|
|
116
|
+
const isChatGPT = (platform === null || platform === void 0 ? void 0 : platform.toLowerCase()) === 'chatgpt' || (platform === null || platform === void 0 ? void 0 : platform.toLowerCase()) === 'openai';
|
|
117
|
+
const isClaude = (platform === null || platform === void 0 ? void 0 : platform.toLowerCase()) === 'claude' || (platform === null || platform === void 0 ? void 0 : platform.toLowerCase()) === 'anthropic';
|
|
118
|
+
const isHinge = (0, _webviewScripts.isHingePlatform)(platform);
|
|
119
|
+
const isInstagram = (0, _webviewScripts.isInstagramPlatform)(platform);
|
|
120
|
+
const isSephora = (0, _webviewScripts.isSephoraPlatform)(platform);
|
|
121
|
+
const isTelegram = (0, _webviewScripts.isTelegramPlatform)(platform);
|
|
122
|
+
const isNewPlatform = isHinge || isInstagram || isSephora || isTelegram;
|
|
123
|
+
console.log(`Opening ${isLLM ? 'LLM' : isLinkedIn ? 'LinkedIn' : 'OAuth'} WebView with URL:`, url, 'Platform:', platform);
|
|
124
|
+
|
|
125
|
+
// Set up a timeout to prevent infinite waiting
|
|
126
|
+
_react.default.useEffect(() => {
|
|
127
|
+
const timeout = setTimeout(() => {
|
|
128
|
+
console.log(`⏰ ${isLLM ? 'LLM' : isLinkedIn ? 'LinkedIn' : 'OAuth'} timeout reached for ${platform} after 2 minutes`);
|
|
129
|
+
setTimeoutReached(true);
|
|
130
|
+
}, 120000); // 2 minutes timeout
|
|
131
|
+
|
|
132
|
+
return () => clearTimeout(timeout);
|
|
133
|
+
}, [platform, isLLM, isLinkedIn]);
|
|
134
|
+
|
|
135
|
+
// LinkedIn-specific: Initialize state
|
|
136
|
+
_react.default.useEffect(() => {
|
|
137
|
+
if (isLinkedIn) {
|
|
138
|
+
setExtractionStatus('');
|
|
139
|
+
console.log('💼 [LINKEDIN] Initialized - waiting for page load');
|
|
140
|
+
}
|
|
141
|
+
}, [isLinkedIn]);
|
|
142
|
+
|
|
143
|
+
// ChatGPT-specific: Initialize state
|
|
144
|
+
_react.default.useEffect(() => {
|
|
145
|
+
if (isChatGPT) {
|
|
146
|
+
console.log('🤖 [CHATGPT] Initialized - waiting for page load');
|
|
147
|
+
}
|
|
148
|
+
}, [isChatGPT]);
|
|
149
|
+
|
|
150
|
+
// Claude-specific: Initialize state
|
|
151
|
+
_react.default.useEffect(() => {
|
|
152
|
+
if (isClaude) {
|
|
153
|
+
console.log('🧠 [CLAUDE] Initialized - waiting for page load');
|
|
154
|
+
}
|
|
155
|
+
}, [isClaude]);
|
|
156
|
+
|
|
157
|
+
// LinkedIn connecting animation - smooth sliding progress bar
|
|
158
|
+
const isLinkedInConnecting = isLinkedIn && linkedInLoggedIn && extractionStatus === 'Connecting' && !linkedInConnectionComplete;
|
|
159
|
+
_react.default.useEffect(() => {
|
|
160
|
+
if (isLinkedInConnecting) {
|
|
161
|
+
// Create smooth back-and-forth animation
|
|
162
|
+
const animation = _reactNative.Animated.loop(_reactNative.Animated.sequence([_reactNative.Animated.timing(linkedinProgressAnim, {
|
|
163
|
+
toValue: 1,
|
|
164
|
+
duration: 1200,
|
|
165
|
+
useNativeDriver: true
|
|
166
|
+
// Smooth easing for natural feel
|
|
167
|
+
}), _reactNative.Animated.timing(linkedinProgressAnim, {
|
|
168
|
+
toValue: 0,
|
|
169
|
+
duration: 1200,
|
|
170
|
+
useNativeDriver: true
|
|
171
|
+
})]));
|
|
172
|
+
animation.start();
|
|
173
|
+
return () => {
|
|
174
|
+
animation.stop();
|
|
175
|
+
linkedinProgressAnim.setValue(0);
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
}, [isLinkedInConnecting, linkedinProgressAnim]);
|
|
179
|
+
|
|
180
|
+
/**
|
|
181
|
+
* Trigger the export script for ChatGPT after successful login
|
|
182
|
+
*/
|
|
183
|
+
const triggerChatGPTExport = (0, _react.useCallback)(() => {
|
|
184
|
+
if (!webViewRef.current || hasStartedChatGPTExtraction || chatGPTExtractionStartedRef.current) return;
|
|
185
|
+
console.log('🚀 [CHATGPT] Triggering export script...');
|
|
186
|
+
chatGPTExtractionStartedRef.current = true;
|
|
187
|
+
setHasStartedChatGPTExtraction(true);
|
|
188
|
+
setIsChatGPTExporting(true);
|
|
189
|
+
setChatGPTExportProgress(0);
|
|
190
|
+
|
|
191
|
+
// Inject the export script
|
|
192
|
+
webViewRef.current.injectJavaScript(_webviewScripts.CHATGPT_EXPORT_SCRIPT);
|
|
193
|
+
}, [hasStartedChatGPTExtraction]);
|
|
194
|
+
|
|
195
|
+
/**
|
|
196
|
+
* Trigger the export script for Claude after successful login
|
|
197
|
+
*/
|
|
198
|
+
const triggerClaudeExport = (0, _react.useCallback)(() => {
|
|
199
|
+
if (!webViewRef.current || hasStartedClaudeExtraction || claudeExtractionStartedRef.current) return;
|
|
200
|
+
console.log('🚀 [CLAUDE] Triggering export script...');
|
|
201
|
+
claudeExtractionStartedRef.current = true;
|
|
202
|
+
setHasStartedClaudeExtraction(true);
|
|
203
|
+
setIsClaudeExporting(true);
|
|
204
|
+
setClaudeExportProgress(0);
|
|
205
|
+
setShowClaudeExtractionAnimation(true);
|
|
206
|
+
setClaudeStatus('Starting extraction...');
|
|
207
|
+
|
|
208
|
+
// Inject the export script
|
|
209
|
+
webViewRef.current.injectJavaScript(_webviewScripts.CLAUDE_EXPORT_SCRIPT);
|
|
210
|
+
}, [hasStartedClaudeExtraction]);
|
|
211
|
+
|
|
212
|
+
/**
|
|
213
|
+
* Trigger the export script for new platforms (Hinge, Instagram, Sephora)
|
|
214
|
+
*/
|
|
215
|
+
const triggerNewPlatformExport = (0, _react.useCallback)(() => {
|
|
216
|
+
if (!webViewRef.current || hasStartedNewPlatformExtraction || newPlatformExtractionStartedRef.current) return;
|
|
217
|
+
console.log(`🚀 [${platform.toUpperCase()}] Triggering export script...`);
|
|
218
|
+
newPlatformExtractionStartedRef.current = true;
|
|
219
|
+
setHasStartedNewPlatformExtraction(true);
|
|
220
|
+
setIsNewPlatformExporting(true);
|
|
221
|
+
setNewPlatformExportProgress(0);
|
|
222
|
+
setShowNewPlatformExtractionAnimation(true);
|
|
223
|
+
setNewPlatformStatus('Starting extraction...');
|
|
224
|
+
|
|
225
|
+
// Inject the appropriate export script based on platform
|
|
226
|
+
if (isHinge) {
|
|
227
|
+
webViewRef.current.injectJavaScript(_webviewScripts.HINGE_EXPORT_SCRIPT);
|
|
228
|
+
} else if (isInstagram) {
|
|
229
|
+
webViewRef.current.injectJavaScript(_webviewScripts.INSTAGRAM_EXPORT_SCRIPT);
|
|
230
|
+
} else if (isSephora) {
|
|
231
|
+
webViewRef.current.injectJavaScript(_webviewScripts.SEPHORA_EXPORT_SCRIPT);
|
|
232
|
+
} else if (isTelegram) {
|
|
233
|
+
webViewRef.current.injectJavaScript(_webviewScripts.TELEGRAM_EXPORT_SCRIPT);
|
|
234
|
+
}
|
|
235
|
+
}, [hasStartedNewPlatformExtraction, platform, isHinge, isInstagram, isSephora, isTelegram]);
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
* Trigger LinkedIn profile DOM scraping after user is on profile page
|
|
239
|
+
* This shows consent popup first, then scrapes profile data from DOM
|
|
240
|
+
*/
|
|
241
|
+
const triggerLinkedInProfileScraping = (0, _react.useCallback)(() => {
|
|
242
|
+
if (!webViewRef.current || hasStartedLinkedInProfileScraping || linkedInProfileScrapingStartedRef.current) return;
|
|
243
|
+
console.log('🚀 [LINKEDIN] Triggering profile DOM scraping...');
|
|
244
|
+
linkedInProfileScrapingStartedRef.current = true;
|
|
245
|
+
setHasStartedLinkedInProfileScraping(true);
|
|
246
|
+
|
|
247
|
+
// First show consent popup
|
|
248
|
+
webViewRef.current.injectJavaScript(_webviewScripts.LINKEDIN_PROFILE_CONSENT_POPUP_SCRIPT);
|
|
249
|
+
}, [hasStartedLinkedInProfileScraping]);
|
|
250
|
+
|
|
251
|
+
/**
|
|
252
|
+
* Execute LinkedIn profile scraping after user consents
|
|
253
|
+
*/
|
|
254
|
+
const executeLinkedInProfileScraping = (0, _react.useCallback)(() => {
|
|
255
|
+
if (!webViewRef.current) return;
|
|
256
|
+
console.log('🔍 [LINKEDIN] Executing profile DOM scraping...');
|
|
257
|
+
setIsLinkedInProfileScraping(true);
|
|
258
|
+
setLinkedInProfileProgress(0);
|
|
259
|
+
setShowLinkedInExtractionAnimation(true);
|
|
260
|
+
setExtractionStatus('Extracting profile...');
|
|
261
|
+
|
|
262
|
+
// Inject the scraper script
|
|
263
|
+
webViewRef.current.injectJavaScript(_webviewScripts.LINKEDIN_PROFILE_SCRAPER_SCRIPT);
|
|
264
|
+
}, []);
|
|
265
|
+
|
|
266
|
+
/**
|
|
267
|
+
* Handle messages from the WebView
|
|
268
|
+
*/
|
|
269
|
+
const handleWebViewMessage = (0, _react.useCallback)(async event => {
|
|
270
|
+
try {
|
|
271
|
+
const data = JSON.parse(event.nativeEvent.data);
|
|
272
|
+
console.log(`📩 [${platform.toUpperCase()}] WebView message:`, data.type || data.status);
|
|
273
|
+
|
|
274
|
+
// ========================================
|
|
275
|
+
// LINKEDIN MESSAGE HANDLING
|
|
276
|
+
// ========================================
|
|
277
|
+
if (isLinkedIn) {
|
|
278
|
+
// Handle LinkedIn profile consent
|
|
279
|
+
if (data.type === 'LINKEDIN_PROFILE_CONSENT') {
|
|
280
|
+
if (data.status === 'denied') {
|
|
281
|
+
console.log('⛔ [LINKEDIN] User denied profile consent');
|
|
282
|
+
_reactNative.Alert.alert('Connection Cancelled', 'You denied access to your LinkedIn profile data.', [{
|
|
283
|
+
text: 'OK',
|
|
284
|
+
onPress: onClose
|
|
285
|
+
}]);
|
|
286
|
+
return;
|
|
287
|
+
} else if (data.status === 'allowed') {
|
|
288
|
+
console.log('✅ [LINKEDIN] User allowed profile consent - starting extraction');
|
|
289
|
+
executeLinkedInProfileScraping();
|
|
290
|
+
return;
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
// Handle LinkedIn profile extraction progress
|
|
295
|
+
if (data.type === 'LINKEDIN_PROFILE_PROGRESS') {
|
|
296
|
+
const progress = data.progress || 0;
|
|
297
|
+
console.log(`📊 [LINKEDIN] Profile extraction progress: ${progress}% - ${data.message}`);
|
|
298
|
+
setLinkedInProfileProgress(progress);
|
|
299
|
+
setExtractionStatus(data.message || `Extracting... ${progress}%`);
|
|
300
|
+
_reactNative.Animated.timing(linkedInProfileProgressAnim, {
|
|
301
|
+
toValue: progress,
|
|
302
|
+
duration: 300,
|
|
303
|
+
useNativeDriver: false
|
|
304
|
+
}).start();
|
|
305
|
+
return;
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
// Handle LinkedIn profile extraction complete
|
|
309
|
+
if (data.type === 'LINKEDIN_PROFILE_EXPORT_COMPLETE') {
|
|
310
|
+
var _profileData$headline, _profileData$experien, _profileData$educatio, _profileData$skills;
|
|
311
|
+
console.log('✅ [LINKEDIN] Profile DOM extraction complete!');
|
|
312
|
+
const profileData = data.data;
|
|
313
|
+
console.log('📊 [LINKEDIN] Extracted profile:', {
|
|
314
|
+
name: profileData === null || profileData === void 0 ? void 0 : profileData.fullName,
|
|
315
|
+
headline: profileData === null || profileData === void 0 || (_profileData$headline = profileData.headline) === null || _profileData$headline === void 0 ? void 0 : _profileData$headline.substring(0, 50),
|
|
316
|
+
experienceCount: (profileData === null || profileData === void 0 || (_profileData$experien = profileData.experience) === null || _profileData$experien === void 0 ? void 0 : _profileData$experien.length) || 0,
|
|
317
|
+
educationCount: (profileData === null || profileData === void 0 || (_profileData$educatio = profileData.education) === null || _profileData$educatio === void 0 ? void 0 : _profileData$educatio.length) || 0,
|
|
318
|
+
skillsCount: (profileData === null || profileData === void 0 || (_profileData$skills = profileData.skills) === null || _profileData$skills === void 0 ? void 0 : _profileData$skills.length) || 0
|
|
319
|
+
});
|
|
320
|
+
setLinkedInProfileProgress(90);
|
|
321
|
+
setExtractionStatus('Storing profile data...');
|
|
322
|
+
|
|
323
|
+
// Store profile data to backend
|
|
324
|
+
if (profileData && username) {
|
|
325
|
+
console.log('📤 [LINKEDIN] Storing profile data...');
|
|
326
|
+
const storeResult = await (0, _linkedinProfileService.storeLinkedInProfile)(username, profileData);
|
|
327
|
+
console.log('📤 [LINKEDIN] Storage result:', storeResult);
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
// Show success animation
|
|
331
|
+
setLinkedInProfileProgress(100);
|
|
332
|
+
setIsLinkedInProfileScraping(false);
|
|
333
|
+
setShowLinkedInExtractionAnimation(false);
|
|
334
|
+
setLinkedInConnectionComplete(true);
|
|
335
|
+
setShowLinkedInSuccessAnimation(true);
|
|
336
|
+
setExtractionStatus('Connected!');
|
|
337
|
+
onSuccess('success');
|
|
338
|
+
|
|
339
|
+
// Close after showing success
|
|
340
|
+
setTimeout(() => {
|
|
341
|
+
if (onComplete) onComplete();
|
|
342
|
+
}, 2000);
|
|
343
|
+
return;
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
// Handle LinkedIn profile extraction error
|
|
347
|
+
if (data.type === 'LINKEDIN_PROFILE_EXPORT_ERROR') {
|
|
348
|
+
console.error('❌ [LINKEDIN] Profile extraction error:', data.message);
|
|
349
|
+
setIsLinkedInProfileScraping(false);
|
|
350
|
+
setLinkedInProfileProgress(0);
|
|
351
|
+
setShowLinkedInExtractionAnimation(false);
|
|
352
|
+
linkedInProfileScrapingStartedRef.current = false;
|
|
353
|
+
setHasStartedLinkedInProfileScraping(false);
|
|
354
|
+
_reactNative.Alert.alert('Extraction Failed', `Failed to extract LinkedIn profile: ${data.message}. Would you like to try again?`, [{
|
|
355
|
+
text: 'Retry',
|
|
356
|
+
onPress: () => triggerLinkedInProfileScraping()
|
|
357
|
+
}, {
|
|
358
|
+
text: 'Close',
|
|
359
|
+
onPress: onClose,
|
|
360
|
+
style: 'cancel'
|
|
361
|
+
}]);
|
|
362
|
+
return;
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
// Legacy: Handle profile URL extraction (fallback to backend scraping)
|
|
366
|
+
if (data.status === 'success' && data.profileUrl) {
|
|
367
|
+
console.log('✅ [LINKEDIN] Profile URL extracted:', data.profileUrl);
|
|
368
|
+
setExtractedProfileUrl(data.profileUrl);
|
|
369
|
+
setExtractionStatus('Connecting');
|
|
370
|
+
const userId = username || 'unknown_user';
|
|
371
|
+
const performScrapeAndComplete = async (retryCount = 0, maxRetries = 3) => {
|
|
372
|
+
try {
|
|
373
|
+
setExtractionStatus('Connecting');
|
|
374
|
+
await (0, _linkedinDOMExtractor.initiateProfileScraping)({
|
|
375
|
+
userId,
|
|
376
|
+
profileUrl: data.profileUrl,
|
|
377
|
+
onProgress: message => {
|
|
378
|
+
console.log('📊 [LINKEDIN] Scrape progress:', message);
|
|
379
|
+
},
|
|
380
|
+
onSuccess: scrapedData => {
|
|
381
|
+
console.log('✅ [LINKEDIN] Profile scraping complete!', scrapedData);
|
|
382
|
+
setIsExtracting(false);
|
|
383
|
+
setLinkedInConnectionComplete(true);
|
|
384
|
+
setShowLinkedInSuccessAnimation(true);
|
|
385
|
+
setExtractionStatus('Connected!');
|
|
386
|
+
|
|
387
|
+
// 🎯 FIX: Show success animation for 2 seconds BEFORE calling onSuccess
|
|
388
|
+
// onSuccess triggers parent to close WebView, so delay it
|
|
389
|
+
setTimeout(() => {
|
|
390
|
+
onSuccess('success');
|
|
391
|
+
if (onComplete) onComplete();
|
|
392
|
+
}, 2000);
|
|
393
|
+
},
|
|
394
|
+
onError: async error => {
|
|
395
|
+
console.error(`❌ [LINKEDIN] Scraping failed (attempt ${retryCount + 1}/${maxRetries}):`, error);
|
|
396
|
+
if (retryCount < maxRetries - 1) {
|
|
397
|
+
setTimeout(() => {
|
|
398
|
+
performScrapeAndComplete(retryCount + 1, maxRetries);
|
|
399
|
+
}, 3000);
|
|
400
|
+
} else {
|
|
401
|
+
setIsExtracting(false);
|
|
402
|
+
setLinkedInConnectionComplete(true);
|
|
403
|
+
setShowLinkedInSuccessAnimation(true);
|
|
404
|
+
setExtractionStatus('Connected!');
|
|
405
|
+
|
|
406
|
+
// 🎯 FIX: Show success animation for 2 seconds BEFORE calling onSuccess
|
|
407
|
+
setTimeout(() => {
|
|
408
|
+
onSuccess('success');
|
|
409
|
+
if (onComplete) onComplete();
|
|
410
|
+
}, 2000);
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
});
|
|
414
|
+
} catch (error) {
|
|
415
|
+
console.error(`❌ [LINKEDIN] Exception (attempt ${retryCount + 1}/${maxRetries}):`, error);
|
|
416
|
+
if (retryCount < maxRetries - 1) {
|
|
417
|
+
setTimeout(() => {
|
|
418
|
+
performScrapeAndComplete(retryCount + 1, maxRetries);
|
|
419
|
+
}, 3000);
|
|
420
|
+
} else {
|
|
421
|
+
setIsExtracting(false);
|
|
422
|
+
setLinkedInConnectionComplete(true);
|
|
423
|
+
setShowLinkedInSuccessAnimation(true);
|
|
424
|
+
setExtractionStatus('Connected!');
|
|
425
|
+
|
|
426
|
+
// 🎯 FIX: Show success animation for 2 seconds BEFORE calling onSuccess
|
|
427
|
+
setTimeout(() => {
|
|
428
|
+
onSuccess('success');
|
|
429
|
+
if (onComplete) onComplete();
|
|
430
|
+
}, 2000);
|
|
431
|
+
}
|
|
432
|
+
}
|
|
433
|
+
};
|
|
434
|
+
performScrapeAndComplete();
|
|
435
|
+
return;
|
|
436
|
+
} else if (data.status === 'error' && data.message) {
|
|
437
|
+
console.warn('⚠️ [LINKEDIN] Profile URL extraction failed:', data.message);
|
|
438
|
+
setIsExtracting(false);
|
|
439
|
+
setLinkedInConnectionComplete(true);
|
|
440
|
+
setShowLinkedInSuccessAnimation(true);
|
|
441
|
+
setExtractionStatus('Connected!');
|
|
442
|
+
|
|
443
|
+
// 🎯 FIX: Show success animation for 2 seconds BEFORE calling onSuccess
|
|
444
|
+
setTimeout(() => {
|
|
445
|
+
onSuccess('success');
|
|
446
|
+
if (onComplete) onComplete();
|
|
447
|
+
}, 2000);
|
|
448
|
+
return;
|
|
449
|
+
}
|
|
450
|
+
}
|
|
451
|
+
|
|
452
|
+
// ========================================
|
|
453
|
+
// CHATGPT/CLAUDE MESSAGE HANDLING
|
|
454
|
+
// ========================================
|
|
455
|
+
|
|
456
|
+
// Debug logs
|
|
457
|
+
if (data.type === 'DEBUG_LOG' || data.type === 'DEBUG_MEMORIES') {
|
|
458
|
+
console.log(`🔍 [${platform.toUpperCase()}] Debug:`, data.message);
|
|
459
|
+
return;
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
// Handle memories data from ChatGPT
|
|
463
|
+
if (data.type === 'MEMORIES_DATA' && isChatGPT) {
|
|
464
|
+
console.log('🧠 [CHATGPT] Received memories data from WebView, storing...');
|
|
465
|
+
try {
|
|
466
|
+
const result = await storeMemories(data.memoriesData);
|
|
467
|
+
if (result) {
|
|
468
|
+
console.log('✅ [CHATGPT] Memories stored successfully!');
|
|
469
|
+
} else {
|
|
470
|
+
console.warn('⚠️ [CHATGPT] Memories storage returned false');
|
|
471
|
+
}
|
|
472
|
+
} catch (error) {
|
|
473
|
+
console.error('❌ [CHATGPT] Memories storage error:', error);
|
|
474
|
+
}
|
|
475
|
+
return;
|
|
476
|
+
}
|
|
477
|
+
|
|
478
|
+
// Export progress
|
|
479
|
+
if (data.type === 'EXPORT_PROGRESS') {
|
|
480
|
+
const progress = data.progress || 0;
|
|
481
|
+
if (isChatGPT) {
|
|
482
|
+
console.log(`📊 [CHATGPT] Export progress: ${progress}% - ${data.message}`);
|
|
483
|
+
setChatGPTExportProgress(progress);
|
|
484
|
+
_reactNative.Animated.timing(chatGPTProgressAnim, {
|
|
485
|
+
toValue: progress,
|
|
486
|
+
duration: 300,
|
|
487
|
+
useNativeDriver: false
|
|
488
|
+
}).start();
|
|
489
|
+
} else if (isClaude) {
|
|
490
|
+
console.log(`📊 [CLAUDE] Export progress: ${progress}% - ${data.message}`);
|
|
491
|
+
setClaudeExportProgress(progress);
|
|
492
|
+
setClaudeStatus(data.message || `Extracting data... ${progress}%`);
|
|
493
|
+
_reactNative.Animated.timing(claudeProgressAnim, {
|
|
494
|
+
toValue: progress,
|
|
495
|
+
duration: 300,
|
|
496
|
+
useNativeDriver: false
|
|
497
|
+
}).start();
|
|
498
|
+
}
|
|
499
|
+
return;
|
|
500
|
+
}
|
|
501
|
+
|
|
502
|
+
// Conversation export complete
|
|
503
|
+
if (data.type === 'CONVERSATION_EXPORT_COMPLETE') {
|
|
504
|
+
var _data$data, _data$data2, _data$data3;
|
|
505
|
+
const totalConversations = ((_data$data = data.data) === null || _data$data === void 0 ? void 0 : _data$data.total_conversations) || ((_data$data2 = data.data) === null || _data$data2 === void 0 || (_data$data2 = _data$data2.conversations) === null || _data$data2 === void 0 ? void 0 : _data$data2.length) || 0;
|
|
506
|
+
const totalMessages = ((_data$data3 = data.data) === null || _data$data3 === void 0 ? void 0 : _data$data3.total_messages) || 0;
|
|
507
|
+
if (isChatGPT) {
|
|
508
|
+
var _data$data4;
|
|
509
|
+
console.log(`✅ [CHATGPT] Export complete: ${totalConversations} conversations, ${totalMessages} messages`);
|
|
510
|
+
setChatGPTExportProgress(90);
|
|
511
|
+
|
|
512
|
+
// Store conversations to backend
|
|
513
|
+
if ((_data$data4 = data.data) !== null && _data$data4 !== void 0 && _data$data4.conversations && username) {
|
|
514
|
+
console.log('📤 [CHATGPT] Storing conversations to backend...');
|
|
515
|
+
const exportResult = await initiateConversationExport(username, data.data.conversations);
|
|
516
|
+
console.log('📤 [CHATGPT] Backend storage result:', exportResult);
|
|
517
|
+
}
|
|
518
|
+
|
|
519
|
+
// Show success animation
|
|
520
|
+
setChatGPTExportProgress(100);
|
|
521
|
+
setIsChatGPTExporting(false);
|
|
522
|
+
setShowChatGPTSuccessAnimation(true);
|
|
523
|
+
onSuccess('success');
|
|
524
|
+
|
|
525
|
+
// Close after showing success
|
|
526
|
+
setTimeout(() => {
|
|
527
|
+
if (onComplete) onComplete();
|
|
528
|
+
}, 2000);
|
|
529
|
+
} else if (isClaude) {
|
|
530
|
+
var _data$data5;
|
|
531
|
+
console.log(`✅ [CLAUDE] Export complete: ${totalConversations} conversations, ${totalMessages} messages`);
|
|
532
|
+
setClaudeExportProgress(90);
|
|
533
|
+
setClaudeStatus(`Storing ${totalConversations} conversations...`);
|
|
534
|
+
|
|
535
|
+
// Store conversations to backend
|
|
536
|
+
if ((_data$data5 = data.data) !== null && _data$data5 !== void 0 && _data$data5.conversations && username) {
|
|
537
|
+
console.log('📤 [CLAUDE] Storing conversations to backend...');
|
|
538
|
+
const exportResult = await initiateClaudeExport(username, data.data.conversations);
|
|
539
|
+
console.log('📤 [CLAUDE] Backend storage result:', exportResult);
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
// Show success animation
|
|
543
|
+
setClaudeExportProgress(100);
|
|
544
|
+
setIsClaudeExporting(false);
|
|
545
|
+
setShowClaudeExtractionAnimation(false);
|
|
546
|
+
setShowClaudeSuccessAnimation(true);
|
|
547
|
+
setClaudeStatus(`✅ Imported ${totalConversations} conversations!`);
|
|
548
|
+
onSuccess('success');
|
|
549
|
+
|
|
550
|
+
// Close after showing success
|
|
551
|
+
setTimeout(() => {
|
|
552
|
+
if (onComplete) onComplete();
|
|
553
|
+
}, 2000);
|
|
554
|
+
}
|
|
555
|
+
return;
|
|
556
|
+
}
|
|
557
|
+
|
|
558
|
+
// Export error
|
|
559
|
+
if (data.type === 'CONVERSATION_EXPORT_ERROR') {
|
|
560
|
+
console.error(`❌ [${platform.toUpperCase()}] Export error:`, data.message);
|
|
561
|
+
if (isChatGPT) {
|
|
562
|
+
setIsChatGPTExporting(false);
|
|
563
|
+
setChatGPTExportProgress(0);
|
|
564
|
+
chatGPTExtractionStartedRef.current = false;
|
|
565
|
+
setHasStartedChatGPTExtraction(false);
|
|
566
|
+
} else if (isClaude) {
|
|
567
|
+
setIsClaudeExporting(false);
|
|
568
|
+
setClaudeExportProgress(0);
|
|
569
|
+
setShowClaudeExtractionAnimation(false);
|
|
570
|
+
claudeExtractionStartedRef.current = false;
|
|
571
|
+
setHasStartedClaudeExtraction(false);
|
|
572
|
+
}
|
|
573
|
+
_reactNative.Alert.alert('Export Failed', `Failed to export ${platform} conversations: ${data.message}`, [{
|
|
574
|
+
text: 'Retry',
|
|
575
|
+
onPress: () => {
|
|
576
|
+
if (isChatGPT) triggerChatGPTExport();else if (isClaude) triggerClaudeExport();
|
|
577
|
+
}
|
|
578
|
+
}, {
|
|
579
|
+
text: 'Close',
|
|
580
|
+
onPress: onClose,
|
|
581
|
+
style: 'cancel'
|
|
582
|
+
}]);
|
|
583
|
+
return;
|
|
584
|
+
}
|
|
585
|
+
|
|
586
|
+
// Consent handling
|
|
587
|
+
if (data.type === 'CHATGPT_CONSENT' || data.type === 'CLAUDE_CONSENT') {
|
|
588
|
+
if (data.status === 'denied') {
|
|
589
|
+
console.log(`⛔ [${platform.toUpperCase()}] User denied consent`);
|
|
590
|
+
_reactNative.Alert.alert('Connection Cancelled', `You denied access to your ${platform} conversations.`, [{
|
|
591
|
+
text: 'OK',
|
|
592
|
+
onPress: onClose
|
|
593
|
+
}]);
|
|
594
|
+
} else if (data.status === 'allowed') {
|
|
595
|
+
console.log(`✅ [${platform.toUpperCase()}] User allowed consent`);
|
|
596
|
+
}
|
|
597
|
+
return;
|
|
598
|
+
}
|
|
599
|
+
|
|
600
|
+
// Memories fetch complete (standalone)
|
|
601
|
+
if (data.type === 'MEMORIES_FETCH_COMPLETE') {
|
|
602
|
+
var _data$data6;
|
|
603
|
+
console.log(`🧠 [${platform.toUpperCase()}] Memories fetch complete:`, (_data$data6 = data.data) === null || _data$data6 === void 0 ? void 0 : _data$data6.itemsCount, 'items');
|
|
604
|
+
return;
|
|
605
|
+
}
|
|
606
|
+
|
|
607
|
+
// Memories fetch error
|
|
608
|
+
if (data.type === 'MEMORIES_FETCH_ERROR') {
|
|
609
|
+
console.warn(`⚠️ [${platform.toUpperCase()}] Memories fetch failed:`, data.message);
|
|
610
|
+
return;
|
|
611
|
+
}
|
|
612
|
+
|
|
613
|
+
// ========================================
|
|
614
|
+
// NEW PLATFORMS MESSAGE HANDLING (Hinge, Instagram, Sephora)
|
|
615
|
+
// ========================================
|
|
616
|
+
|
|
617
|
+
// Hinge export progress
|
|
618
|
+
if (data.type === 'HINGE_EXPORT_PROGRESS' && isHinge) {
|
|
619
|
+
const progress = data.progress || 0;
|
|
620
|
+
console.log(`📊 [HINGE] Export progress: ${progress}% - ${data.message}`);
|
|
621
|
+
setNewPlatformExportProgress(progress);
|
|
622
|
+
setNewPlatformStatus(data.message || `Extracting... ${progress}%`);
|
|
623
|
+
_reactNative.Animated.timing(newPlatformProgressAnim, {
|
|
624
|
+
toValue: progress,
|
|
625
|
+
duration: 300,
|
|
626
|
+
useNativeDriver: false
|
|
627
|
+
}).start();
|
|
628
|
+
return;
|
|
629
|
+
}
|
|
630
|
+
|
|
631
|
+
// Hinge export complete
|
|
632
|
+
if (data.type === 'HINGE_EXPORT_COMPLETE' && isHinge) {
|
|
633
|
+
console.log('✅ [HINGE] Export complete!', data.data);
|
|
634
|
+
setNewPlatformExportProgress(90);
|
|
635
|
+
setNewPlatformStatus('Storing data...');
|
|
636
|
+
if (data.data && username) {
|
|
637
|
+
console.log('📤 [HINGE] Storing data to backend...');
|
|
638
|
+
const exportResult = await initiateHingeExport(username, data.data);
|
|
639
|
+
console.log('📤 [HINGE] Backend storage result:', exportResult);
|
|
640
|
+
}
|
|
641
|
+
setNewPlatformExportProgress(100);
|
|
642
|
+
setIsNewPlatformExporting(false);
|
|
643
|
+
setShowNewPlatformExtractionAnimation(false);
|
|
644
|
+
setShowNewPlatformSuccessAnimation(true);
|
|
645
|
+
setNewPlatformStatus('Connected!');
|
|
646
|
+
onSuccess('success');
|
|
647
|
+
setTimeout(() => {
|
|
648
|
+
if (onComplete) onComplete();
|
|
649
|
+
}, 2000);
|
|
650
|
+
return;
|
|
651
|
+
}
|
|
652
|
+
|
|
653
|
+
// Hinge export error
|
|
654
|
+
if (data.type === 'HINGE_EXPORT_ERROR' && isHinge) {
|
|
655
|
+
console.error('❌ [HINGE] Export error:', data.message);
|
|
656
|
+
setIsNewPlatformExporting(false);
|
|
657
|
+
setNewPlatformExportProgress(0);
|
|
658
|
+
setShowNewPlatformExtractionAnimation(false);
|
|
659
|
+
newPlatformExtractionStartedRef.current = false;
|
|
660
|
+
setHasStartedNewPlatformExtraction(false);
|
|
661
|
+
_reactNative.Alert.alert('Export Failed', `Failed to export Hinge data: ${data.message}`, [{
|
|
662
|
+
text: 'Retry',
|
|
663
|
+
onPress: () => triggerNewPlatformExport()
|
|
664
|
+
}, {
|
|
665
|
+
text: 'Close',
|
|
666
|
+
onPress: onClose,
|
|
667
|
+
style: 'cancel'
|
|
668
|
+
}]);
|
|
669
|
+
return;
|
|
670
|
+
}
|
|
671
|
+
|
|
672
|
+
// Instagram export progress
|
|
673
|
+
if (data.type === 'INSTAGRAM_EXPORT_PROGRESS' && isInstagram) {
|
|
674
|
+
const progress = data.progress || 0;
|
|
675
|
+
console.log(`📊 [INSTAGRAM] Export progress: ${progress}% - ${data.message}`);
|
|
676
|
+
setNewPlatformExportProgress(progress);
|
|
677
|
+
setNewPlatformStatus(data.message || `Extracting... ${progress}%`);
|
|
678
|
+
_reactNative.Animated.timing(newPlatformProgressAnim, {
|
|
679
|
+
toValue: progress,
|
|
680
|
+
duration: 300,
|
|
681
|
+
useNativeDriver: false
|
|
682
|
+
}).start();
|
|
683
|
+
return;
|
|
684
|
+
}
|
|
685
|
+
|
|
686
|
+
// Instagram export complete
|
|
687
|
+
if (data.type === 'INSTAGRAM_EXPORT_COMPLETE' && isInstagram) {
|
|
688
|
+
console.log('✅ [INSTAGRAM] Export complete!', data.data);
|
|
689
|
+
setNewPlatformExportProgress(90);
|
|
690
|
+
setNewPlatformStatus('Storing data...');
|
|
691
|
+
if (data.data && username) {
|
|
692
|
+
console.log('📤 [INSTAGRAM] Storing data to backend...');
|
|
693
|
+
const exportResult = await initiateInstagramExport(username, data.data);
|
|
694
|
+
console.log('📤 [INSTAGRAM] Backend storage result:', exportResult);
|
|
695
|
+
}
|
|
696
|
+
setNewPlatformExportProgress(100);
|
|
697
|
+
setIsNewPlatformExporting(false);
|
|
698
|
+
setShowNewPlatformExtractionAnimation(false);
|
|
699
|
+
setShowNewPlatformSuccessAnimation(true);
|
|
700
|
+
setNewPlatformStatus('Connected!');
|
|
701
|
+
onSuccess('success');
|
|
702
|
+
setTimeout(() => {
|
|
703
|
+
if (onComplete) onComplete();
|
|
704
|
+
}, 2000);
|
|
705
|
+
return;
|
|
706
|
+
}
|
|
707
|
+
|
|
708
|
+
// Instagram export error
|
|
709
|
+
if (data.type === 'INSTAGRAM_EXPORT_ERROR' && isInstagram) {
|
|
710
|
+
console.error('❌ [INSTAGRAM] Export error:', data.message);
|
|
711
|
+
setIsNewPlatformExporting(false);
|
|
712
|
+
setNewPlatformExportProgress(0);
|
|
713
|
+
setShowNewPlatformExtractionAnimation(false);
|
|
714
|
+
newPlatformExtractionStartedRef.current = false;
|
|
715
|
+
setHasStartedNewPlatformExtraction(false);
|
|
716
|
+
_reactNative.Alert.alert('Export Failed', `Failed to export Instagram data: ${data.message}`, [{
|
|
717
|
+
text: 'Retry',
|
|
718
|
+
onPress: () => triggerNewPlatformExport()
|
|
719
|
+
}, {
|
|
720
|
+
text: 'Close',
|
|
721
|
+
onPress: onClose,
|
|
722
|
+
style: 'cancel'
|
|
723
|
+
}]);
|
|
724
|
+
return;
|
|
725
|
+
}
|
|
726
|
+
|
|
727
|
+
// Sephora export progress
|
|
728
|
+
if (data.type === 'SEPHORA_EXPORT_PROGRESS' && isSephora) {
|
|
729
|
+
const progress = data.progress || 0;
|
|
730
|
+
console.log(`📊 [SEPHORA] Export progress: ${progress}% - ${data.message}`);
|
|
731
|
+
setNewPlatformExportProgress(progress);
|
|
732
|
+
setNewPlatformStatus(data.message || `Extracting... ${progress}%`);
|
|
733
|
+
_reactNative.Animated.timing(newPlatformProgressAnim, {
|
|
734
|
+
toValue: progress,
|
|
735
|
+
duration: 300,
|
|
736
|
+
useNativeDriver: false
|
|
737
|
+
}).start();
|
|
738
|
+
return;
|
|
739
|
+
}
|
|
740
|
+
|
|
741
|
+
// Sephora export complete
|
|
742
|
+
if (data.type === 'SEPHORA_EXPORT_COMPLETE' && isSephora) {
|
|
743
|
+
console.log('✅ [SEPHORA] Export complete!', data.data);
|
|
744
|
+
setNewPlatformExportProgress(90);
|
|
745
|
+
setNewPlatformStatus('Storing data...');
|
|
746
|
+
if (data.data && username) {
|
|
747
|
+
console.log('📤 [SEPHORA] Storing data to backend...');
|
|
748
|
+
const exportResult = await initiateSephoraExport(username, data.data);
|
|
749
|
+
console.log('📤 [SEPHORA] Backend storage result:', exportResult);
|
|
750
|
+
}
|
|
751
|
+
setNewPlatformExportProgress(100);
|
|
752
|
+
setIsNewPlatformExporting(false);
|
|
753
|
+
setShowNewPlatformExtractionAnimation(false);
|
|
754
|
+
setShowNewPlatformSuccessAnimation(true);
|
|
755
|
+
setNewPlatformStatus('Connected!');
|
|
756
|
+
onSuccess('success');
|
|
757
|
+
setTimeout(() => {
|
|
758
|
+
if (onComplete) onComplete();
|
|
759
|
+
}, 2000);
|
|
760
|
+
return;
|
|
761
|
+
}
|
|
762
|
+
|
|
763
|
+
// Sephora export error
|
|
764
|
+
if (data.type === 'SEPHORA_EXPORT_ERROR' && isSephora) {
|
|
765
|
+
console.error('❌ [SEPHORA] Export error:', data.message);
|
|
766
|
+
setIsNewPlatformExporting(false);
|
|
767
|
+
setNewPlatformExportProgress(0);
|
|
768
|
+
setShowNewPlatformExtractionAnimation(false);
|
|
769
|
+
newPlatformExtractionStartedRef.current = false;
|
|
770
|
+
setHasStartedNewPlatformExtraction(false);
|
|
771
|
+
_reactNative.Alert.alert('Export Failed', `Failed to export Sephora data: ${data.message}`, [{
|
|
772
|
+
text: 'Retry',
|
|
773
|
+
onPress: () => triggerNewPlatformExport()
|
|
774
|
+
}, {
|
|
775
|
+
text: 'Close',
|
|
776
|
+
onPress: onClose,
|
|
777
|
+
style: 'cancel'
|
|
778
|
+
}]);
|
|
779
|
+
return;
|
|
780
|
+
}
|
|
781
|
+
|
|
782
|
+
// Telegram export progress
|
|
783
|
+
if (data.type === 'TELEGRAM_EXPORT_PROGRESS' && isTelegram) {
|
|
784
|
+
const progress = data.progress || 0;
|
|
785
|
+
console.log(`📊 [TELEGRAM] Export progress: ${progress}% - ${data.message}`);
|
|
786
|
+
setNewPlatformExportProgress(progress);
|
|
787
|
+
setNewPlatformStatus(data.message || `Extracting... ${progress}%`);
|
|
788
|
+
_reactNative.Animated.timing(newPlatformProgressAnim, {
|
|
789
|
+
toValue: progress,
|
|
790
|
+
duration: 300,
|
|
791
|
+
useNativeDriver: false
|
|
792
|
+
}).start();
|
|
793
|
+
return;
|
|
794
|
+
}
|
|
795
|
+
|
|
796
|
+
// Telegram export complete
|
|
797
|
+
if (data.type === 'TELEGRAM_EXPORT_COMPLETE' && isTelegram) {
|
|
798
|
+
console.log('✅ [TELEGRAM] Export complete!', data.data);
|
|
799
|
+
setNewPlatformExportProgress(90);
|
|
800
|
+
setNewPlatformStatus('Storing data...');
|
|
801
|
+
if (data.data && username) {
|
|
802
|
+
console.log('📤 [TELEGRAM] Storing data to backend...');
|
|
803
|
+
const exportResult = await initiateTelegramExport(username, data.data);
|
|
804
|
+
console.log('📤 [TELEGRAM] Backend storage result:', exportResult);
|
|
805
|
+
}
|
|
806
|
+
setNewPlatformExportProgress(100);
|
|
807
|
+
setIsNewPlatformExporting(false);
|
|
808
|
+
setShowNewPlatformExtractionAnimation(false);
|
|
809
|
+
setShowNewPlatformSuccessAnimation(true);
|
|
810
|
+
setNewPlatformStatus('Connected!');
|
|
811
|
+
onSuccess('success');
|
|
812
|
+
setTimeout(() => {
|
|
813
|
+
if (onComplete) onComplete();
|
|
814
|
+
}, 2000);
|
|
815
|
+
return;
|
|
816
|
+
}
|
|
817
|
+
|
|
818
|
+
// Telegram export error
|
|
819
|
+
if (data.type === 'TELEGRAM_EXPORT_ERROR' && isTelegram) {
|
|
820
|
+
console.error('❌ [TELEGRAM] Export error:', data.message);
|
|
821
|
+
setIsNewPlatformExporting(false);
|
|
822
|
+
setNewPlatformExportProgress(0);
|
|
823
|
+
setShowNewPlatformExtractionAnimation(false);
|
|
824
|
+
newPlatformExtractionStartedRef.current = false;
|
|
825
|
+
setHasStartedNewPlatformExtraction(false);
|
|
826
|
+
_reactNative.Alert.alert('Export Failed', `Failed to export Telegram data: ${data.message}`, [{
|
|
827
|
+
text: 'Retry',
|
|
828
|
+
onPress: () => triggerNewPlatformExport()
|
|
829
|
+
}, {
|
|
830
|
+
text: 'Close',
|
|
831
|
+
onPress: onClose,
|
|
832
|
+
style: 'cancel'
|
|
833
|
+
}]);
|
|
834
|
+
return;
|
|
835
|
+
}
|
|
836
|
+
|
|
837
|
+
// Consent handling for new platforms
|
|
838
|
+
if (data.type === 'HINGE_CONSENT' || data.type === 'INSTAGRAM_CONSENT' || data.type === 'SEPHORA_CONSENT' || data.type === 'TELEGRAM_CONSENT') {
|
|
839
|
+
if (data.status === 'denied') {
|
|
840
|
+
console.log(`⛔ [${platform.toUpperCase()}] User denied consent`);
|
|
841
|
+
_reactNative.Alert.alert('Connection Cancelled', `You denied access to your ${platform} data.`, [{
|
|
842
|
+
text: 'OK',
|
|
843
|
+
onPress: onClose
|
|
844
|
+
}]);
|
|
845
|
+
} else if (data.status === 'allowed') {
|
|
846
|
+
console.log(`✅ [${platform.toUpperCase()}] User allowed consent`);
|
|
847
|
+
}
|
|
848
|
+
return;
|
|
849
|
+
}
|
|
850
|
+
console.log(`📩 [${platform.toUpperCase()}] Unknown message type:`, data.type);
|
|
851
|
+
} catch (error) {
|
|
852
|
+
console.error(`❌ [${platform.toUpperCase()}] Error parsing WebView message:`, error);
|
|
853
|
+
}
|
|
854
|
+
}, [platform, username, onSuccess, onComplete, onClose, isLinkedIn, isChatGPT, isClaude, isHinge, isInstagram, isSephora, isTelegram, triggerChatGPTExport, triggerClaudeExport, triggerNewPlatformExport, initiateConversationExport, initiateClaudeExport, initiateHingeExport, initiateInstagramExport, initiateSephoraExport, initiateTelegramExport, storeMemories, newPlatformProgressAnim]);
|
|
855
|
+
|
|
856
|
+
/**
|
|
857
|
+
* Handle LinkedIn-specific navigation
|
|
858
|
+
*/
|
|
859
|
+
const handleLinkedInNavigation = (0, _react.useCallback)((navState, isLoadEnd = false) => {
|
|
860
|
+
const currentUrl = navState.url || '';
|
|
861
|
+
const urlLower = currentUrl.toLowerCase();
|
|
862
|
+
console.log(`🔍 [LINKEDIN] Navigation: ${currentUrl}, loading=${navState.loading}, isLoadEnd=${isLoadEnd}`);
|
|
863
|
+
if ((0, _webviewScripts.isLinkedInOAuthCallback)(currentUrl)) {
|
|
864
|
+
console.log('💼 [LINKEDIN] On OAuth callback URL - connection successful!');
|
|
865
|
+
setExtractionStatus('Connected!');
|
|
866
|
+
|
|
867
|
+
// LinkedIn OAuth completed successfully - show success animation
|
|
868
|
+
// The backend has already processed the connection
|
|
869
|
+
if (!linkedInConnectionComplete) {
|
|
870
|
+
console.log('✅ [LINKEDIN] OAuth callback detected - showing success animation');
|
|
871
|
+
setLinkedInConnectionComplete(true);
|
|
872
|
+
setShowLinkedInSuccessAnimation(true);
|
|
873
|
+
|
|
874
|
+
// 🎯 FIX: Show success animation for 2 seconds BEFORE calling onSuccess
|
|
875
|
+
// onSuccess triggers parent to close WebView, so delay it
|
|
876
|
+
setTimeout(() => {
|
|
877
|
+
onSuccess('success');
|
|
878
|
+
if (onComplete) onComplete();
|
|
879
|
+
}, 2000);
|
|
880
|
+
}
|
|
881
|
+
return;
|
|
882
|
+
}
|
|
883
|
+
const profilePage = (0, _webviewScripts.isLinkedInProfilePage)(currentUrl);
|
|
884
|
+
setIsOnProfilePage(profilePage);
|
|
885
|
+
if (profilePage) {
|
|
886
|
+
setLinkedInLoggedIn(true);
|
|
887
|
+
console.log('✅ [LINKEDIN] On profile page');
|
|
888
|
+
|
|
889
|
+
// TODO: LinkedIn DOM scraping is disabled for now - using URL extraction instead
|
|
890
|
+
// To enable DOM scraping, uncomment the block below and comment out the URL extraction block
|
|
891
|
+
/*
|
|
892
|
+
if (!hasStartedAutoExtraction && !isExtracting && isLoadEnd && !navState.loading && !hasStartedLinkedInProfileScraping) {
|
|
893
|
+
console.log('🚀 [LINKEDIN] Auto-triggering profile DOM scraping...');
|
|
894
|
+
setHasStartedAutoExtraction(true);
|
|
895
|
+
|
|
896
|
+
setTimeout(() => {
|
|
897
|
+
if (webViewRef.current) {
|
|
898
|
+
console.log('💉 [LINKEDIN] Showing consent popup and starting DOM scraping...');
|
|
899
|
+
setIsExtracting(true);
|
|
900
|
+
setExtractionStatus('Preparing extraction...');
|
|
901
|
+
// Use new DOM scraping flow instead of URL extraction
|
|
902
|
+
triggerLinkedInProfileScraping();
|
|
903
|
+
}
|
|
904
|
+
}, 1500);
|
|
905
|
+
}
|
|
906
|
+
*/
|
|
907
|
+
|
|
908
|
+
// Using legacy URL extraction flow (backend Apify scraping)
|
|
909
|
+
if (!hasStartedAutoExtraction && !isExtracting && isLoadEnd && !navState.loading) {
|
|
910
|
+
console.log('🚀 [LINKEDIN] Auto-triggering profile URL extraction...');
|
|
911
|
+
setHasStartedAutoExtraction(true);
|
|
912
|
+
setTimeout(() => {
|
|
913
|
+
if (webViewRef.current) {
|
|
914
|
+
console.log('💉 [LINKEDIN] Auto-injecting profile extraction script...');
|
|
915
|
+
setIsExtracting(true);
|
|
916
|
+
setExtractionStatus('Connecting');
|
|
917
|
+
webViewRef.current.injectJavaScript(_webviewScripts.LINKEDIN_PROFILE_EXTRACTOR_SCRIPT);
|
|
918
|
+
}
|
|
919
|
+
}, 1000);
|
|
920
|
+
}
|
|
921
|
+
return;
|
|
922
|
+
}
|
|
923
|
+
if (!urlLower.includes('linkedin.com')) {
|
|
924
|
+
return;
|
|
925
|
+
}
|
|
926
|
+
if ((0, _webviewScripts.isLinkedInLoginPage)(currentUrl)) {
|
|
927
|
+
console.log('🔍 [LINKEDIN] On login page - waiting for user to log in...');
|
|
928
|
+
setLinkedInLoggedIn(false);
|
|
929
|
+
setHasAutoNavigatedToProfile(false);
|
|
930
|
+
return;
|
|
931
|
+
}
|
|
932
|
+
|
|
933
|
+
// 🚀 OPTIMIZATION: Navigate to profile IMMEDIATELY when we detect user is logged in
|
|
934
|
+
// Don't wait for page to fully load - just redirect as soon as we're on a non-login LinkedIn page
|
|
935
|
+
if (!hasAutoNavigatedToProfile) {
|
|
936
|
+
console.log('🚀 [LINKEDIN] User logged in! Immediately navigating to profile...');
|
|
937
|
+
setExtractionStatus('Connecting');
|
|
938
|
+
setLinkedInLoggedIn(true);
|
|
939
|
+
setHasAutoNavigatedToProfile(true);
|
|
940
|
+
|
|
941
|
+
// Navigate immediately - no delay to avoid showing the feed
|
|
942
|
+
if (webViewRef.current) {
|
|
943
|
+
console.log('🚀 [LINKEDIN] Navigating directly to /me...');
|
|
944
|
+
webViewRef.current.injectJavaScript(`
|
|
945
|
+
window.location.href = 'https://www.linkedin.com/me';
|
|
946
|
+
true;
|
|
947
|
+
`);
|
|
948
|
+
}
|
|
949
|
+
}
|
|
950
|
+
}, [hasStartedAutoExtraction, isExtracting, hasAutoNavigatedToProfile, linkedInConnectionComplete, hasStartedLinkedInProfileScraping, triggerLinkedInProfileScraping, onSuccess, onComplete]);
|
|
951
|
+
|
|
952
|
+
/**
|
|
953
|
+
* Handle ChatGPT-specific navigation - detect login and trigger export
|
|
954
|
+
*/
|
|
955
|
+
const handleChatGPTNavigation = (0, _react.useCallback)((navState, isLoadEnd = false) => {
|
|
956
|
+
const currentUrl = navState.url || '';
|
|
957
|
+
const urlLower = currentUrl.toLowerCase();
|
|
958
|
+
console.log(`🔍 [CHATGPT] Navigation: ${currentUrl}, loading=${navState.loading}, isLoadEnd=${isLoadEnd}`);
|
|
959
|
+
console.log(`🔍 [CHATGPT] State: loggedIn=${chatGPTLoggedIn}, exporting=${isChatGPTExporting}, started=${hasStartedChatGPTExtraction}`);
|
|
960
|
+
|
|
961
|
+
// Check if on login/auth pages
|
|
962
|
+
const isOnAuthPage = urlLower.includes('/auth/login') || urlLower.includes('auth.openai.com') || urlLower.includes('/login') || urlLower.includes('/signup') || urlLower.includes('/api/auth/');
|
|
963
|
+
|
|
964
|
+
// Check if on main ChatGPT page (logged in)
|
|
965
|
+
const isOnMainPage = (urlLower.includes('chatgpt.com') || urlLower.includes('chat.openai.com')) && !isOnAuthPage && !urlLower.includes('/api/') && !navState.loading;
|
|
966
|
+
if (isOnAuthPage) {
|
|
967
|
+
console.log('🔐 [CHATGPT] On auth/login page - waiting for user to log in...');
|
|
968
|
+
setChatGPTLoggedIn(false);
|
|
969
|
+
return;
|
|
970
|
+
}
|
|
971
|
+
|
|
972
|
+
// User logged in - trigger extraction
|
|
973
|
+
if (isOnMainPage && !chatGPTLoggedIn && !hasStartedChatGPTExtraction && !chatGPTExtractionStartedRef.current && isLoadEnd) {
|
|
974
|
+
console.log('✅ [CHATGPT] User logged in! Detected main page navigation');
|
|
975
|
+
setChatGPTLoggedIn(true);
|
|
976
|
+
|
|
977
|
+
// Small delay to ensure page is fully loaded
|
|
978
|
+
setTimeout(() => {
|
|
979
|
+
triggerChatGPTExport();
|
|
980
|
+
}, 2000);
|
|
981
|
+
}
|
|
982
|
+
}, [chatGPTLoggedIn, isChatGPTExporting, hasStartedChatGPTExtraction, triggerChatGPTExport]);
|
|
983
|
+
|
|
984
|
+
/**
|
|
985
|
+
* Handle Claude-specific navigation - detect login and trigger export
|
|
986
|
+
*/
|
|
987
|
+
const handleClaudeNavigation = (0, _react.useCallback)((navState, isLoadEnd = false) => {
|
|
988
|
+
const currentUrl = navState.url || '';
|
|
989
|
+
const urlLower = currentUrl.toLowerCase();
|
|
990
|
+
console.log(`🔍 [CLAUDE] Navigation: ${currentUrl}, loading=${navState.loading}, isLoadEnd=${isLoadEnd}`);
|
|
991
|
+
|
|
992
|
+
// Check if on login page
|
|
993
|
+
const isOnLoginPage = urlLower.includes('/login') || urlLower.includes('/auth') || urlLower.includes('/signin');
|
|
994
|
+
|
|
995
|
+
// Check if on main Claude page (logged in)
|
|
996
|
+
const isOnMainPage = urlLower.includes('claude.ai') && !isOnLoginPage && !navState.loading;
|
|
997
|
+
if (isOnLoginPage) {
|
|
998
|
+
console.log('🔐 [CLAUDE] On login page - waiting for user to log in...');
|
|
999
|
+
setClaudeLoggedIn(false);
|
|
1000
|
+
return;
|
|
1001
|
+
}
|
|
1002
|
+
|
|
1003
|
+
// User logged in - trigger extraction
|
|
1004
|
+
if (isOnMainPage && !claudeLoggedIn && !hasStartedClaudeExtraction && !claudeExtractionStartedRef.current && isLoadEnd) {
|
|
1005
|
+
console.log('✅ [CLAUDE] User logged in! Detected main page navigation');
|
|
1006
|
+
setClaudeLoggedIn(true);
|
|
1007
|
+
setTimeout(() => {
|
|
1008
|
+
triggerClaudeExport();
|
|
1009
|
+
}, 2000);
|
|
1010
|
+
}
|
|
1011
|
+
}, [claudeLoggedIn, hasStartedClaudeExtraction, triggerClaudeExport]);
|
|
1012
|
+
|
|
1013
|
+
/**
|
|
1014
|
+
* Handle new platforms navigation (Hinge, Instagram, Sephora) - detect login and trigger export
|
|
1015
|
+
*/
|
|
1016
|
+
const handleNewPlatformNavigation = (0, _react.useCallback)((navState, isLoadEnd = false) => {
|
|
1017
|
+
const currentUrl = navState.url || '';
|
|
1018
|
+
const urlLower = currentUrl.toLowerCase();
|
|
1019
|
+
console.log(`🔍 [${platform.toUpperCase()}] Navigation: ${currentUrl}, loading=${navState.loading}, isLoadEnd=${isLoadEnd}`);
|
|
1020
|
+
|
|
1021
|
+
// Determine login page patterns based on platform
|
|
1022
|
+
let isOnLoginPage = false;
|
|
1023
|
+
let isOnMainPage = false;
|
|
1024
|
+
if (isHinge) {
|
|
1025
|
+
isOnLoginPage = urlLower.includes('/login') || urlLower.includes('/auth') || urlLower.includes('/signup');
|
|
1026
|
+
isOnMainPage = urlLower.includes('hinge.co') && !isOnLoginPage && !navState.loading;
|
|
1027
|
+
} else if (isInstagram) {
|
|
1028
|
+
isOnLoginPage = urlLower.includes('/accounts/login') || urlLower.includes('/accounts/signup') || urlLower.includes('/challenge');
|
|
1029
|
+
isOnMainPage = urlLower.includes('instagram.com') && !isOnLoginPage && !navState.loading;
|
|
1030
|
+
} else if (isSephora) {
|
|
1031
|
+
isOnLoginPage = urlLower.includes('/login') || urlLower.includes('/signin') || urlLower.includes('/registration');
|
|
1032
|
+
isOnMainPage = urlLower.includes('sephora.com') && !isOnLoginPage && !navState.loading;
|
|
1033
|
+
} else if (isTelegram) {
|
|
1034
|
+
// Telegram Web shows QR code login or phone number auth
|
|
1035
|
+
isOnLoginPage = urlLower.includes('/auth') || !urlLower.includes('#'); // No hash means still loading/auth
|
|
1036
|
+
isOnMainPage = urlLower.includes('web.telegram.org') && urlLower.includes('#') &&
|
|
1037
|
+
// Has hash (app loaded)
|
|
1038
|
+
!isOnLoginPage && !navState.loading;
|
|
1039
|
+
}
|
|
1040
|
+
if (isOnLoginPage) {
|
|
1041
|
+
console.log(`🔐 [${platform.toUpperCase()}] On login page - waiting for user to log in...`);
|
|
1042
|
+
setNewPlatformLoggedIn(false);
|
|
1043
|
+
return;
|
|
1044
|
+
}
|
|
1045
|
+
|
|
1046
|
+
// User logged in - trigger extraction
|
|
1047
|
+
if (isOnMainPage && !newPlatformLoggedIn && !hasStartedNewPlatformExtraction && !newPlatformExtractionStartedRef.current && isLoadEnd) {
|
|
1048
|
+
console.log(`✅ [${platform.toUpperCase()}] User logged in! Detected main page navigation`);
|
|
1049
|
+
setNewPlatformLoggedIn(true);
|
|
1050
|
+
setTimeout(() => {
|
|
1051
|
+
triggerNewPlatformExport();
|
|
1052
|
+
}, 2000);
|
|
1053
|
+
}
|
|
1054
|
+
}, [platform, isHinge, isInstagram, isSephora, isTelegram, newPlatformLoggedIn, hasStartedNewPlatformExtraction, triggerNewPlatformExport]);
|
|
1055
|
+
|
|
1056
|
+
/**
|
|
1057
|
+
* Handle navigation state changes
|
|
1058
|
+
*/
|
|
1059
|
+
const handleNavigationStateChange = navState => {
|
|
1060
|
+
console.log(`Navigation state changed for ${platform}:`, navState.url);
|
|
1061
|
+
|
|
1062
|
+
// LinkedIn Platform Flow
|
|
1063
|
+
if (isLinkedIn) {
|
|
1064
|
+
handleLinkedInNavigation(navState);
|
|
1065
|
+
try {
|
|
1066
|
+
const url = new URL(navState.url);
|
|
1067
|
+
const hasCode = url.searchParams.has('code');
|
|
1068
|
+
const hasAccessToken = url.searchParams.has('access_token');
|
|
1069
|
+
if (hasCode || hasAccessToken) {
|
|
1070
|
+
console.log(`✅ [LINKEDIN] OAuth SUCCESS - Authorization code/token received`);
|
|
1071
|
+
setLinkedInLoggedIn(true);
|
|
1072
|
+
setTimeout(() => {
|
|
1073
|
+
if (webViewRef.current) {
|
|
1074
|
+
console.log('💼 [LINKEDIN] Navigating to profile page...');
|
|
1075
|
+
setExtractionStatus('Connecting');
|
|
1076
|
+
webViewRef.current.injectJavaScript(`
|
|
1077
|
+
window.location.href = 'https://www.linkedin.com/me';
|
|
1078
|
+
true;
|
|
1079
|
+
`);
|
|
1080
|
+
}
|
|
1081
|
+
}, 500);
|
|
1082
|
+
return;
|
|
1083
|
+
}
|
|
1084
|
+
} catch (e) {
|
|
1085
|
+
// URL parsing failed
|
|
1086
|
+
}
|
|
1087
|
+
return;
|
|
1088
|
+
}
|
|
1089
|
+
|
|
1090
|
+
// ChatGPT Platform Flow
|
|
1091
|
+
if (isChatGPT) {
|
|
1092
|
+
handleChatGPTNavigation(navState);
|
|
1093
|
+
return;
|
|
1094
|
+
}
|
|
1095
|
+
|
|
1096
|
+
// Claude Platform Flow
|
|
1097
|
+
if (isClaude) {
|
|
1098
|
+
handleClaudeNavigation(navState);
|
|
1099
|
+
return;
|
|
1100
|
+
}
|
|
1101
|
+
|
|
1102
|
+
// New Platforms Flow (Hinge, Instagram, Sephora)
|
|
1103
|
+
if (isNewPlatform) {
|
|
1104
|
+
handleNewPlatformNavigation(navState);
|
|
1105
|
+
return;
|
|
1106
|
+
}
|
|
1107
|
+
|
|
1108
|
+
// Other LLM Platform Flow
|
|
1109
|
+
if (isLLM) {
|
|
1110
|
+
if ((0, _webviewScripts.isLoggedInUrl)(navState.url, platform)) {
|
|
1111
|
+
console.log(`✅ [${platform.toUpperCase()}] Login detected!`);
|
|
1112
|
+
}
|
|
1113
|
+
return;
|
|
1114
|
+
}
|
|
1115
|
+
|
|
1116
|
+
// OAuth Flow: Check for callback URLs
|
|
1117
|
+
const isFinalRedirect = navState.url.includes('onairos.uk/Home') || navState.url.includes('onairos.uk/home') || navState.url.includes('onairos.uk/success') || navState.url.startsWith('https://onairos.uk/Home') || navState.url.startsWith('https://onairos.uk/home');
|
|
1118
|
+
|
|
1119
|
+
// Check for oauth-callback.html success URL (used by Reddit, Pinterest, etc.)
|
|
1120
|
+
const isOAuthCallbackSuccess = navState.url.includes('oauth-callback.html') && navState.url.includes('success=true');
|
|
1121
|
+
if (isFinalRedirect || isOAuthCallbackSuccess) {
|
|
1122
|
+
console.log(`✅ ${platform} OAuth completed - backend callback finished, URL: ${navState.url}`);
|
|
1123
|
+
|
|
1124
|
+
// Show success animation with brand color before closing
|
|
1125
|
+
setShowOAuthSuccessAnimation(true);
|
|
1126
|
+
|
|
1127
|
+
// Delay calling onSuccess to show the animation for 2 seconds
|
|
1128
|
+
setTimeout(() => {
|
|
1129
|
+
onSuccess('success');
|
|
1130
|
+
if (onComplete) onComplete();
|
|
1131
|
+
}, 2000);
|
|
1132
|
+
return;
|
|
1133
|
+
}
|
|
1134
|
+
};
|
|
1135
|
+
|
|
1136
|
+
/**
|
|
1137
|
+
* Handle onLoadEnd
|
|
1138
|
+
*/
|
|
1139
|
+
const handleLoadEnd = syntheticEvent => {
|
|
1140
|
+
const currentUrl = syntheticEvent.nativeEvent.url;
|
|
1141
|
+
console.log(`📄 [LOAD END] Page loaded: ${currentUrl}`);
|
|
1142
|
+
setIsLoading(false);
|
|
1143
|
+
if (isLinkedIn) {
|
|
1144
|
+
handleLinkedInNavigation({
|
|
1145
|
+
url: currentUrl,
|
|
1146
|
+
loading: false
|
|
1147
|
+
}, true);
|
|
1148
|
+
} else if (isChatGPT) {
|
|
1149
|
+
handleChatGPTNavigation({
|
|
1150
|
+
url: currentUrl,
|
|
1151
|
+
loading: false
|
|
1152
|
+
}, true);
|
|
1153
|
+
} else if (isClaude) {
|
|
1154
|
+
handleClaudeNavigation({
|
|
1155
|
+
url: currentUrl,
|
|
1156
|
+
loading: false
|
|
1157
|
+
}, true);
|
|
1158
|
+
} else if (isNewPlatform) {
|
|
1159
|
+
handleNewPlatformNavigation({
|
|
1160
|
+
url: currentUrl,
|
|
1161
|
+
loading: false
|
|
1162
|
+
}, true);
|
|
1163
|
+
}
|
|
1164
|
+
};
|
|
1165
|
+
|
|
1166
|
+
/**
|
|
1167
|
+
* Prevent LinkedIn app from opening
|
|
1168
|
+
*/
|
|
1169
|
+
const handleShouldStartLoadWithRequest = request => {
|
|
1170
|
+
const requestUrl = request.url || '';
|
|
1171
|
+
const urlLower = requestUrl.toLowerCase();
|
|
1172
|
+
if (isLinkedIn) {
|
|
1173
|
+
const blockedSchemes = ['linkedin://', 'linkedinapp://', 'linkedinssl://', 'linkedin-mobile://'];
|
|
1174
|
+
const isBlockedScheme = blockedSchemes.some(scheme => urlLower.startsWith(scheme));
|
|
1175
|
+
if (isBlockedScheme) {
|
|
1176
|
+
console.log('🚫 [LINKEDIN] Blocked app deep link:', requestUrl);
|
|
1177
|
+
return false;
|
|
1178
|
+
}
|
|
1179
|
+
if (urlLower.startsWith('intent://') && urlLower.includes('linkedin')) {
|
|
1180
|
+
console.log('🚫 [LINKEDIN] Blocked intent:// deep link:', requestUrl);
|
|
1181
|
+
return false;
|
|
1182
|
+
}
|
|
1183
|
+
if (urlLower.startsWith('http://') || urlLower.startsWith('https://')) {
|
|
1184
|
+
return true;
|
|
1185
|
+
}
|
|
1186
|
+
if (urlLower.startsWith('about:')) {
|
|
1187
|
+
return true;
|
|
1188
|
+
}
|
|
1189
|
+
console.log('🚫 [LINKEDIN] Blocked non-HTTP scheme:', requestUrl);
|
|
1190
|
+
return false;
|
|
1191
|
+
}
|
|
1192
|
+
return true;
|
|
1193
|
+
};
|
|
1194
|
+
|
|
1195
|
+
/**
|
|
1196
|
+
* Get injected JavaScript for anti-detection
|
|
1197
|
+
*/
|
|
1198
|
+
const getInjectedJavaScriptBeforeLoad = () => {
|
|
1199
|
+
if (isLLM || isLinkedIn || isNewPlatform) {
|
|
1200
|
+
return (0, _webviewScripts.getAntiDetectionScript)(platform);
|
|
1201
|
+
}
|
|
1202
|
+
return undefined;
|
|
1203
|
+
};
|
|
1204
|
+
|
|
1205
|
+
// Determine if we're showing export progress (ChatGPT only - Claude uses full-screen overlay)
|
|
1206
|
+
const showExportProgress = isChatGPT && isChatGPTExporting;
|
|
1207
|
+
const currentExportProgress = chatGPTExportProgress;
|
|
1208
|
+
const progressAnim = chatGPTProgressAnim;
|
|
1209
|
+
|
|
1210
|
+
// Determine if showing success animation
|
|
1211
|
+
const showSuccessAnimation = showLinkedInSuccessAnimation || showChatGPTSuccessAnimation || showClaudeSuccessAnimation || showOAuthSuccessAnimation || showNewPlatformSuccessAnimation;
|
|
1212
|
+
|
|
1213
|
+
// Brand colors for all platforms
|
|
1214
|
+
const getPlatformBrandColor = platformName => {
|
|
1215
|
+
const colors = {
|
|
1216
|
+
linkedin: '#0077B5',
|
|
1217
|
+
// LinkedIn Blue
|
|
1218
|
+
chatgpt: '#10A37F',
|
|
1219
|
+
// ChatGPT Green
|
|
1220
|
+
openai: '#10A37F',
|
|
1221
|
+
// OpenAI Green
|
|
1222
|
+
claude: '#D97706',
|
|
1223
|
+
// Claude Amber
|
|
1224
|
+
anthropic: '#D97706',
|
|
1225
|
+
// Anthropic Amber
|
|
1226
|
+
reddit: '#FF4500',
|
|
1227
|
+
// Reddit Orange
|
|
1228
|
+
youtube: '#FF0000',
|
|
1229
|
+
// YouTube Red
|
|
1230
|
+
pinterest: '#E60023',
|
|
1231
|
+
// Pinterest Red
|
|
1232
|
+
gmail: '#EA4335',
|
|
1233
|
+
// Google Red
|
|
1234
|
+
gemini: '#4285F4',
|
|
1235
|
+
// Gemini Blue
|
|
1236
|
+
grok: '#000000',
|
|
1237
|
+
// Grok Black
|
|
1238
|
+
// New platforms
|
|
1239
|
+
hinge: '#7C3AED',
|
|
1240
|
+
// Hinge Purple
|
|
1241
|
+
instagram: '#E1306C',
|
|
1242
|
+
// Instagram Pink/Magenta
|
|
1243
|
+
sephora: '#000000',
|
|
1244
|
+
// Sephora Black
|
|
1245
|
+
telegram: '#0088CC' // Telegram Blue
|
|
1246
|
+
};
|
|
1247
|
+
return colors[platformName.toLowerCase()] || '#10B981'; // Default to green
|
|
1248
|
+
};
|
|
1249
|
+
const successColor = getPlatformBrandColor(platform);
|
|
1250
|
+
|
|
1251
|
+
// Trigger checkmark scale animation when success animation shows
|
|
1252
|
+
_react.default.useEffect(() => {
|
|
1253
|
+
if (showSuccessAnimation) {
|
|
1254
|
+
// Reset animation values
|
|
1255
|
+
checkmarkScaleAnim.setValue(0);
|
|
1256
|
+
checkmarkOpacityAnim.setValue(0);
|
|
1257
|
+
|
|
1258
|
+
// Pop/scale animation sequence
|
|
1259
|
+
_reactNative.Animated.sequence([
|
|
1260
|
+
// Quick fade in
|
|
1261
|
+
_reactNative.Animated.timing(checkmarkOpacityAnim, {
|
|
1262
|
+
toValue: 1,
|
|
1263
|
+
duration: 150,
|
|
1264
|
+
useNativeDriver: true
|
|
1265
|
+
})]).start();
|
|
1266
|
+
|
|
1267
|
+
// Bouncy scale animation (runs in parallel)
|
|
1268
|
+
_reactNative.Animated.spring(checkmarkScaleAnim, {
|
|
1269
|
+
toValue: 1,
|
|
1270
|
+
friction: 4,
|
|
1271
|
+
tension: 100,
|
|
1272
|
+
useNativeDriver: true
|
|
1273
|
+
}).start();
|
|
1274
|
+
}
|
|
1275
|
+
}, [showSuccessAnimation, checkmarkScaleAnim, checkmarkOpacityAnim]);
|
|
1276
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1277
|
+
style: styles.modalContainer
|
|
1278
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.SafeAreaView, {
|
|
1279
|
+
style: styles.container
|
|
1280
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1281
|
+
style: styles.header
|
|
1282
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1283
|
+
style: styles.title
|
|
1284
|
+
}, "Connect ", platform.charAt(0).toUpperCase() + platform.slice(1)), timeoutReached && /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1285
|
+
style: styles.timeoutText
|
|
1286
|
+
}, "Taking longer than expected..."), /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
|
|
1287
|
+
onPress: onClose,
|
|
1288
|
+
style: styles.closeButton
|
|
1289
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1290
|
+
style: styles.closeButtonText
|
|
1291
|
+
}, "\u2715"))), isLinkedInConnecting && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1292
|
+
style: styles.linkedinProgressContainer
|
|
1293
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1294
|
+
style: styles.linkedinProgressTrack
|
|
1295
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
1296
|
+
style: [styles.linkedinProgressIndicator, {
|
|
1297
|
+
transform: [{
|
|
1298
|
+
translateX: linkedinProgressAnim.interpolate({
|
|
1299
|
+
inputRange: [0, 1],
|
|
1300
|
+
outputRange: [0, width - 120] // Slide across the screen (minus indicator width and padding)
|
|
1301
|
+
})
|
|
1302
|
+
}]
|
|
1303
|
+
}]
|
|
1304
|
+
})), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1305
|
+
style: styles.linkedinProgressText
|
|
1306
|
+
}, "Connecting to LinkedIn...")), showExportProgress && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1307
|
+
style: styles.exportProgressContainer
|
|
1308
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1309
|
+
style: styles.progressBarContainer
|
|
1310
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
1311
|
+
style: [styles.progressBar, {
|
|
1312
|
+
width: progressAnim.interpolate({
|
|
1313
|
+
inputRange: [0, 100],
|
|
1314
|
+
outputRange: ['0%', '100%']
|
|
1315
|
+
}),
|
|
1316
|
+
backgroundColor: successColor
|
|
1317
|
+
}]
|
|
1318
|
+
})), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1319
|
+
style: styles.progressText
|
|
1320
|
+
}, currentExportProgress < 100 ? `Exporting... ${Math.round(currentExportProgress)}%` : 'Complete!')), isClaude && showClaudeExtractionAnimation && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1321
|
+
style: styles.claudeExtractionOverlay
|
|
1322
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1323
|
+
style: styles.extractionContent
|
|
1324
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.ActivityIndicator, {
|
|
1325
|
+
size: "large",
|
|
1326
|
+
color: "#D97706"
|
|
1327
|
+
}), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1328
|
+
style: styles.claudeExtractionTitle
|
|
1329
|
+
}, "Extracting Data"), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1330
|
+
style: styles.claudeExtractionSubtitle
|
|
1331
|
+
}, claudeStatus), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1332
|
+
style: styles.claudeExtractionProgressContainer
|
|
1333
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
1334
|
+
style: [styles.claudeExtractionProgressFill, {
|
|
1335
|
+
width: claudeProgressAnim.interpolate({
|
|
1336
|
+
inputRange: [0, 100],
|
|
1337
|
+
outputRange: ['0%', '100%']
|
|
1338
|
+
})
|
|
1339
|
+
}]
|
|
1340
|
+
})), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1341
|
+
style: styles.claudeExtractionProgressText
|
|
1342
|
+
}, Math.round(claudeExportProgress), "%"))), isNewPlatform && showNewPlatformExtractionAnimation && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1343
|
+
style: styles.newPlatformExtractionOverlay
|
|
1344
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1345
|
+
style: styles.extractionContent
|
|
1346
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.ActivityIndicator, {
|
|
1347
|
+
size: "large",
|
|
1348
|
+
color: successColor
|
|
1349
|
+
}), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1350
|
+
style: styles.newPlatformExtractionTitle
|
|
1351
|
+
}, "Extracting Data"), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1352
|
+
style: styles.newPlatformExtractionSubtitle
|
|
1353
|
+
}, newPlatformStatus), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1354
|
+
style: styles.newPlatformExtractionProgressContainer
|
|
1355
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
1356
|
+
style: [styles.newPlatformExtractionProgressFill, {
|
|
1357
|
+
backgroundColor: successColor,
|
|
1358
|
+
width: newPlatformProgressAnim.interpolate({
|
|
1359
|
+
inputRange: [0, 100],
|
|
1360
|
+
outputRange: ['0%', '100%']
|
|
1361
|
+
})
|
|
1362
|
+
}]
|
|
1363
|
+
})), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1364
|
+
style: [styles.newPlatformExtractionProgressText, {
|
|
1365
|
+
color: successColor
|
|
1366
|
+
}]
|
|
1367
|
+
}, Math.round(newPlatformExportProgress), "%"))), showSuccessAnimation && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1368
|
+
style: styles.successOverlay
|
|
1369
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
1370
|
+
style: [styles.successCheckmark, {
|
|
1371
|
+
backgroundColor: successColor,
|
|
1372
|
+
transform: [{
|
|
1373
|
+
scale: checkmarkScaleAnim
|
|
1374
|
+
}],
|
|
1375
|
+
opacity: checkmarkOpacityAnim
|
|
1376
|
+
}]
|
|
1377
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1378
|
+
style: styles.successCheckmarkIcon
|
|
1379
|
+
}, "\u2713")), /*#__PURE__*/_react.default.createElement(_reactNative.Animated.Text, {
|
|
1380
|
+
style: [styles.successText, {
|
|
1381
|
+
opacity: checkmarkOpacityAnim
|
|
1382
|
+
}]
|
|
1383
|
+
}, "Connected!")), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1384
|
+
style: styles.webViewContainer
|
|
1385
|
+
}, isLoading && !showExportProgress && !showSuccessAnimation && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
1386
|
+
style: styles.loadingContainer
|
|
1387
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.ActivityIndicator, {
|
|
1388
|
+
size: "large",
|
|
1389
|
+
color: successColor
|
|
1390
|
+
}), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1391
|
+
style: styles.loadingText
|
|
1392
|
+
}, "Loading ", platform, "..."), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
1393
|
+
style: styles.loadingHint
|
|
1394
|
+
}, "Please log in to your ", platform, " account")), /*#__PURE__*/_react.default.createElement(_reactNativeWebview.WebView, {
|
|
1395
|
+
ref: webViewRef,
|
|
1396
|
+
source: {
|
|
1397
|
+
uri: url
|
|
1398
|
+
},
|
|
1399
|
+
onShouldStartLoadWithRequest: handleShouldStartLoadWithRequest,
|
|
1400
|
+
onNavigationStateChange: handleNavigationStateChange,
|
|
1401
|
+
onLoadStart: () => setIsLoading(true),
|
|
1402
|
+
onLoadEnd: handleLoadEnd,
|
|
1403
|
+
onMessage: handleWebViewMessage,
|
|
1404
|
+
injectedJavaScriptBeforeContentLoaded: getInjectedJavaScriptBeforeLoad(),
|
|
1405
|
+
style: styles.webView,
|
|
1406
|
+
javaScriptEnabled: true,
|
|
1407
|
+
domStorageEnabled: true,
|
|
1408
|
+
cacheEnabled: !isLinkedIn,
|
|
1409
|
+
incognito: isLinkedIn,
|
|
1410
|
+
thirdPartyCookiesEnabled: !isLinkedIn,
|
|
1411
|
+
sharedCookiesEnabled: !isLinkedIn,
|
|
1412
|
+
userAgent: (0, _webviewScripts.getPlatformUserAgent)(platform),
|
|
1413
|
+
originWhitelist: ['https://*', 'http://*'],
|
|
1414
|
+
allowsBackForwardNavigationGestures: true,
|
|
1415
|
+
setSupportMultipleWindows: false,
|
|
1416
|
+
onError: syntheticEvent => {
|
|
1417
|
+
const {
|
|
1418
|
+
nativeEvent
|
|
1419
|
+
} = syntheticEvent;
|
|
1420
|
+
console.error(`WebView error for ${platform}:`, nativeEvent);
|
|
1421
|
+
},
|
|
1422
|
+
onHttpError: syntheticEvent => {
|
|
1423
|
+
const {
|
|
1424
|
+
nativeEvent
|
|
1425
|
+
} = syntheticEvent;
|
|
1426
|
+
console.error(`WebView HTTP error for ${platform}: ${nativeEvent.statusCode}`, nativeEvent.url);
|
|
1427
|
+
if (nativeEvent.url && nativeEvent.url.includes('onairos.uk')) {
|
|
1428
|
+
console.log('HTTP error on onairos.uk domain - treating as potential success');
|
|
1429
|
+
onSuccess('success');
|
|
1430
|
+
if (onComplete) {
|
|
1431
|
+
setTimeout(() => onComplete(), 1000);
|
|
1432
|
+
}
|
|
1433
|
+
}
|
|
1434
|
+
}
|
|
1435
|
+
}))));
|
|
1436
|
+
};
|
|
1437
|
+
exports.OAuthWebView = OAuthWebView;
|
|
1438
|
+
const styles = _reactNative.StyleSheet.create({
|
|
1439
|
+
modalContainer: {
|
|
1440
|
+
position: 'absolute',
|
|
1441
|
+
top: 0,
|
|
1442
|
+
left: 0,
|
|
1443
|
+
right: 0,
|
|
1444
|
+
bottom: 0,
|
|
1445
|
+
width: width,
|
|
1446
|
+
height: height,
|
|
1447
|
+
backgroundColor: '#fff',
|
|
1448
|
+
zIndex: 9999,
|
|
1449
|
+
borderTopLeftRadius: 20,
|
|
1450
|
+
borderTopRightRadius: 20,
|
|
1451
|
+
overflow: 'hidden'
|
|
1452
|
+
},
|
|
1453
|
+
container: {
|
|
1454
|
+
flex: 1,
|
|
1455
|
+
backgroundColor: '#fff',
|
|
1456
|
+
width: width,
|
|
1457
|
+
height: height,
|
|
1458
|
+
position: 'absolute',
|
|
1459
|
+
top: 0,
|
|
1460
|
+
left: 0,
|
|
1461
|
+
right: 0,
|
|
1462
|
+
bottom: 0,
|
|
1463
|
+
zIndex: 999,
|
|
1464
|
+
borderTopLeftRadius: 20,
|
|
1465
|
+
borderTopRightRadius: 20,
|
|
1466
|
+
overflow: 'hidden'
|
|
1467
|
+
},
|
|
1468
|
+
header: {
|
|
1469
|
+
flexDirection: 'row',
|
|
1470
|
+
alignItems: 'center',
|
|
1471
|
+
justifyContent: 'space-between',
|
|
1472
|
+
paddingHorizontal: 16,
|
|
1473
|
+
paddingVertical: 8,
|
|
1474
|
+
borderBottomWidth: 1,
|
|
1475
|
+
borderBottomColor: '#E5E5E5',
|
|
1476
|
+
backgroundColor: '#fff',
|
|
1477
|
+
zIndex: 1000
|
|
1478
|
+
},
|
|
1479
|
+
title: {
|
|
1480
|
+
fontSize: 18,
|
|
1481
|
+
fontWeight: '600',
|
|
1482
|
+
color: '#333',
|
|
1483
|
+
flex: 1,
|
|
1484
|
+
textAlign: 'center'
|
|
1485
|
+
},
|
|
1486
|
+
closeButton: {
|
|
1487
|
+
padding: 8
|
|
1488
|
+
},
|
|
1489
|
+
closeButtonText: {
|
|
1490
|
+
fontSize: 20,
|
|
1491
|
+
color: '#666'
|
|
1492
|
+
},
|
|
1493
|
+
webViewContainer: {
|
|
1494
|
+
flex: 1,
|
|
1495
|
+
width: width,
|
|
1496
|
+
height: height - 60
|
|
1497
|
+
},
|
|
1498
|
+
webView: {
|
|
1499
|
+
flex: 1,
|
|
1500
|
+
width: '100%',
|
|
1501
|
+
height: '100%'
|
|
1502
|
+
},
|
|
1503
|
+
loadingContainer: {
|
|
1504
|
+
..._reactNative.StyleSheet.absoluteFillObject,
|
|
1505
|
+
alignItems: 'center',
|
|
1506
|
+
justifyContent: 'center',
|
|
1507
|
+
backgroundColor: 'rgba(255, 255, 255, 0.9)',
|
|
1508
|
+
zIndex: 1
|
|
1509
|
+
},
|
|
1510
|
+
loadingText: {
|
|
1511
|
+
marginTop: 12,
|
|
1512
|
+
fontSize: 16,
|
|
1513
|
+
color: '#666'
|
|
1514
|
+
},
|
|
1515
|
+
loadingHint: {
|
|
1516
|
+
marginTop: 8,
|
|
1517
|
+
fontSize: 14,
|
|
1518
|
+
color: '#999',
|
|
1519
|
+
textAlign: 'center',
|
|
1520
|
+
paddingHorizontal: 40
|
|
1521
|
+
},
|
|
1522
|
+
timeoutText: {
|
|
1523
|
+
fontSize: 12,
|
|
1524
|
+
color: '#FF6B6B',
|
|
1525
|
+
textAlign: 'center',
|
|
1526
|
+
marginTop: 4
|
|
1527
|
+
},
|
|
1528
|
+
// LinkedIn-specific styles - Smooth sliding progress bar
|
|
1529
|
+
linkedinProgressContainer: {
|
|
1530
|
+
paddingHorizontal: 16,
|
|
1531
|
+
paddingVertical: 12,
|
|
1532
|
+
backgroundColor: '#FAFBFC',
|
|
1533
|
+
borderBottomWidth: 1,
|
|
1534
|
+
borderBottomColor: '#E5E5E5',
|
|
1535
|
+
alignItems: 'center'
|
|
1536
|
+
},
|
|
1537
|
+
linkedinProgressTrack: {
|
|
1538
|
+
width: '100%',
|
|
1539
|
+
height: 4,
|
|
1540
|
+
backgroundColor: '#E1E9EE',
|
|
1541
|
+
borderRadius: 2,
|
|
1542
|
+
overflow: 'hidden'
|
|
1543
|
+
},
|
|
1544
|
+
linkedinProgressIndicator: {
|
|
1545
|
+
width: 80,
|
|
1546
|
+
height: 4,
|
|
1547
|
+
backgroundColor: '#0077B5',
|
|
1548
|
+
borderRadius: 2
|
|
1549
|
+
},
|
|
1550
|
+
linkedinProgressText: {
|
|
1551
|
+
color: '#0077B5',
|
|
1552
|
+
fontSize: 13,
|
|
1553
|
+
fontWeight: '500',
|
|
1554
|
+
marginTop: 8,
|
|
1555
|
+
fontFamily: 'IBM Plex Sans'
|
|
1556
|
+
},
|
|
1557
|
+
// Export progress bar styles
|
|
1558
|
+
exportProgressContainer: {
|
|
1559
|
+
paddingHorizontal: 16,
|
|
1560
|
+
paddingVertical: 6,
|
|
1561
|
+
backgroundColor: '#F9FAFB',
|
|
1562
|
+
borderBottomWidth: 1,
|
|
1563
|
+
borderBottomColor: '#E5E5E5'
|
|
1564
|
+
},
|
|
1565
|
+
progressBarContainer: {
|
|
1566
|
+
height: 6,
|
|
1567
|
+
backgroundColor: '#E5E7EB',
|
|
1568
|
+
borderRadius: 3,
|
|
1569
|
+
overflow: 'hidden'
|
|
1570
|
+
},
|
|
1571
|
+
progressBar: {
|
|
1572
|
+
height: '100%',
|
|
1573
|
+
borderRadius: 3
|
|
1574
|
+
},
|
|
1575
|
+
progressText: {
|
|
1576
|
+
fontSize: 12,
|
|
1577
|
+
color: '#6B7280',
|
|
1578
|
+
textAlign: 'center',
|
|
1579
|
+
marginTop: 6
|
|
1580
|
+
},
|
|
1581
|
+
// Success Animation Overlay
|
|
1582
|
+
successOverlay: {
|
|
1583
|
+
position: 'absolute',
|
|
1584
|
+
top: 0,
|
|
1585
|
+
left: 0,
|
|
1586
|
+
right: 0,
|
|
1587
|
+
bottom: 0,
|
|
1588
|
+
backgroundColor: '#FFFFFF',
|
|
1589
|
+
justifyContent: 'center',
|
|
1590
|
+
alignItems: 'center',
|
|
1591
|
+
zIndex: 2000
|
|
1592
|
+
},
|
|
1593
|
+
successCheckmark: {
|
|
1594
|
+
width: 80,
|
|
1595
|
+
height: 80,
|
|
1596
|
+
borderRadius: 40,
|
|
1597
|
+
justifyContent: 'center',
|
|
1598
|
+
alignItems: 'center',
|
|
1599
|
+
shadowColor: '#000',
|
|
1600
|
+
shadowOffset: {
|
|
1601
|
+
width: 0,
|
|
1602
|
+
height: 4
|
|
1603
|
+
},
|
|
1604
|
+
shadowOpacity: 0.2,
|
|
1605
|
+
shadowRadius: 20,
|
|
1606
|
+
elevation: 10
|
|
1607
|
+
},
|
|
1608
|
+
successCheckmarkIcon: {
|
|
1609
|
+
fontSize: 50,
|
|
1610
|
+
color: '#FFFFFF',
|
|
1611
|
+
fontWeight: 'bold'
|
|
1612
|
+
},
|
|
1613
|
+
successText: {
|
|
1614
|
+
fontFamily: 'IBM Plex Sans',
|
|
1615
|
+
fontSize: 24,
|
|
1616
|
+
fontWeight: '700',
|
|
1617
|
+
color: '#1a1a1a',
|
|
1618
|
+
marginTop: 24
|
|
1619
|
+
},
|
|
1620
|
+
// Claude-specific styles (matches Enoch)
|
|
1621
|
+
claudeExtractionOverlay: {
|
|
1622
|
+
position: 'absolute',
|
|
1623
|
+
top: 0,
|
|
1624
|
+
left: 0,
|
|
1625
|
+
right: 0,
|
|
1626
|
+
bottom: 0,
|
|
1627
|
+
backgroundColor: '#FFFFFF',
|
|
1628
|
+
justifyContent: 'center',
|
|
1629
|
+
alignItems: 'center',
|
|
1630
|
+
zIndex: 1000
|
|
1631
|
+
},
|
|
1632
|
+
extractionContent: {
|
|
1633
|
+
alignItems: 'center',
|
|
1634
|
+
paddingHorizontal: 32
|
|
1635
|
+
},
|
|
1636
|
+
claudeExtractionTitle: {
|
|
1637
|
+
fontSize: 24,
|
|
1638
|
+
fontWeight: '700',
|
|
1639
|
+
color: '#1a1a1a',
|
|
1640
|
+
marginTop: 24,
|
|
1641
|
+
marginBottom: 8
|
|
1642
|
+
},
|
|
1643
|
+
claudeExtractionSubtitle: {
|
|
1644
|
+
fontSize: 16,
|
|
1645
|
+
color: '#6B7280',
|
|
1646
|
+
textAlign: 'center',
|
|
1647
|
+
marginBottom: 24
|
|
1648
|
+
},
|
|
1649
|
+
claudeExtractionProgressContainer: {
|
|
1650
|
+
width: 200,
|
|
1651
|
+
height: 8,
|
|
1652
|
+
backgroundColor: '#E5E7EB',
|
|
1653
|
+
borderRadius: 4,
|
|
1654
|
+
overflow: 'hidden'
|
|
1655
|
+
},
|
|
1656
|
+
claudeExtractionProgressFill: {
|
|
1657
|
+
height: '100%',
|
|
1658
|
+
backgroundColor: '#D97706',
|
|
1659
|
+
// Claude amber color
|
|
1660
|
+
borderRadius: 4
|
|
1661
|
+
},
|
|
1662
|
+
claudeExtractionProgressText: {
|
|
1663
|
+
fontSize: 14,
|
|
1664
|
+
color: '#D97706',
|
|
1665
|
+
fontWeight: '600',
|
|
1666
|
+
marginTop: 8
|
|
1667
|
+
},
|
|
1668
|
+
// LinkedIn-specific extraction overlay styles
|
|
1669
|
+
linkedInExtractionOverlay: {
|
|
1670
|
+
position: 'absolute',
|
|
1671
|
+
top: 0,
|
|
1672
|
+
left: 0,
|
|
1673
|
+
right: 0,
|
|
1674
|
+
bottom: 0,
|
|
1675
|
+
backgroundColor: '#FFFFFF',
|
|
1676
|
+
justifyContent: 'center',
|
|
1677
|
+
alignItems: 'center',
|
|
1678
|
+
zIndex: 1000
|
|
1679
|
+
},
|
|
1680
|
+
linkedInExtractionTitle: {
|
|
1681
|
+
fontSize: 24,
|
|
1682
|
+
fontWeight: '700',
|
|
1683
|
+
color: '#1a1a1a',
|
|
1684
|
+
marginTop: 24,
|
|
1685
|
+
marginBottom: 8
|
|
1686
|
+
},
|
|
1687
|
+
linkedInExtractionSubtitle: {
|
|
1688
|
+
fontSize: 16,
|
|
1689
|
+
color: '#6B7280',
|
|
1690
|
+
textAlign: 'center',
|
|
1691
|
+
marginBottom: 24
|
|
1692
|
+
},
|
|
1693
|
+
linkedInExtractionProgressContainer: {
|
|
1694
|
+
width: 200,
|
|
1695
|
+
height: 8,
|
|
1696
|
+
backgroundColor: '#E5E7EB',
|
|
1697
|
+
borderRadius: 4,
|
|
1698
|
+
overflow: 'hidden'
|
|
1699
|
+
},
|
|
1700
|
+
linkedInExtractionProgressFill: {
|
|
1701
|
+
height: '100%',
|
|
1702
|
+
backgroundColor: '#0077B5',
|
|
1703
|
+
// LinkedIn blue color
|
|
1704
|
+
borderRadius: 4
|
|
1705
|
+
},
|
|
1706
|
+
linkedInExtractionProgressText: {
|
|
1707
|
+
fontSize: 14,
|
|
1708
|
+
color: '#0077B5',
|
|
1709
|
+
fontWeight: '600',
|
|
1710
|
+
marginTop: 8
|
|
1711
|
+
},
|
|
1712
|
+
// New platforms extraction overlay styles
|
|
1713
|
+
newPlatformExtractionOverlay: {
|
|
1714
|
+
position: 'absolute',
|
|
1715
|
+
top: 0,
|
|
1716
|
+
left: 0,
|
|
1717
|
+
right: 0,
|
|
1718
|
+
bottom: 0,
|
|
1719
|
+
backgroundColor: '#FFFFFF',
|
|
1720
|
+
justifyContent: 'center',
|
|
1721
|
+
alignItems: 'center',
|
|
1722
|
+
zIndex: 1000
|
|
1723
|
+
},
|
|
1724
|
+
newPlatformExtractionTitle: {
|
|
1725
|
+
fontSize: 24,
|
|
1726
|
+
fontWeight: '700',
|
|
1727
|
+
color: '#1a1a1a',
|
|
1728
|
+
marginTop: 24,
|
|
1729
|
+
marginBottom: 8
|
|
1730
|
+
},
|
|
1731
|
+
newPlatformExtractionSubtitle: {
|
|
1732
|
+
fontSize: 16,
|
|
1733
|
+
color: '#6B7280',
|
|
1734
|
+
textAlign: 'center',
|
|
1735
|
+
marginBottom: 24
|
|
1736
|
+
},
|
|
1737
|
+
newPlatformExtractionProgressContainer: {
|
|
1738
|
+
width: 200,
|
|
1739
|
+
height: 8,
|
|
1740
|
+
backgroundColor: '#E5E7EB',
|
|
1741
|
+
borderRadius: 4,
|
|
1742
|
+
overflow: 'hidden'
|
|
1743
|
+
},
|
|
1744
|
+
newPlatformExtractionProgressFill: {
|
|
1745
|
+
height: '100%',
|
|
1746
|
+
borderRadius: 4
|
|
1747
|
+
},
|
|
1748
|
+
newPlatformExtractionProgressText: {
|
|
1749
|
+
fontSize: 14,
|
|
1750
|
+
fontWeight: '600',
|
|
1751
|
+
marginTop: 8
|
|
1752
|
+
}
|
|
1753
|
+
});
|
|
1754
|
+
//# sourceMappingURL=OAuthWebView.js.map
|