@onairos/react-native 3.7.2 → 3.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/api/index.js +219 -9
- package/lib/commonjs/components/BodyText.js +27 -9
- package/lib/commonjs/components/BrandMark.js +111 -10
- package/lib/commonjs/components/CodeInput.js +116 -9
- package/lib/commonjs/components/EmailInput.js +30 -8
- package/lib/commonjs/components/GoogleButton.js +56 -9
- package/lib/commonjs/components/HeadingGroup.js +43 -9
- package/lib/commonjs/components/LLMDataInputModal.js +664 -14
- package/lib/commonjs/components/ModalHeader.js +99 -9
- package/lib/commonjs/components/ModalSheet.js +47 -9
- package/lib/commonjs/components/Onairos.js +380 -14
- package/lib/commonjs/components/OnairosButton.js +313 -13
- package/lib/commonjs/components/OnairosSignInButton.js +130 -12
- package/lib/commonjs/components/Overlay.js +465 -13
- package/lib/commonjs/components/PersonaImage.js +137 -10
- package/lib/commonjs/components/PersonaLoadingScreen.js +318 -12
- package/lib/commonjs/components/PersonalizationConsentScreen.js +467 -13
- package/lib/commonjs/components/PinCreationScreen.js +403 -12
- package/lib/commonjs/components/PinInput.js +464 -9
- package/lib/commonjs/components/PlatformConnectorsStep.js +1311 -23
- package/lib/commonjs/components/PlatformList.js +137 -10
- package/lib/commonjs/components/PlatformToggle.js +180 -9
- package/lib/commonjs/components/PrimaryButton.js +180 -10
- package/lib/commonjs/components/SignInMatchAnimation.js +197 -9
- package/lib/commonjs/components/SignInStep.js +345 -12
- package/lib/commonjs/components/UniversalOnboarding.js +2780 -30
- package/lib/commonjs/components/VerificationStep.js +176 -11
- package/lib/commonjs/components/WelcomeScreen.js +461 -22
- package/lib/commonjs/components/icons/Basicproficon.js +37 -8
- package/lib/commonjs/components/icons/Basicprofile.js +21 -8
- package/lib/commonjs/components/icons/Checkbox.js +21 -8
- package/lib/commonjs/components/icons/Checkmark.js +27 -8
- package/lib/commonjs/components/icons/Contentanalysis.js +21 -8
- package/lib/commonjs/components/icons/Contenticon.js +39 -8
- package/lib/commonjs/components/icons/EnochE.js +41 -8
- package/lib/commonjs/components/icons/Personalityicon.js +30 -8
- package/lib/commonjs/components/icons/Personalityprofile.js +21 -8
- package/lib/commonjs/components/icons/Personalitytraits.js +21 -8
- package/lib/commonjs/components/icons/Userpreferences.js +21 -8
- package/lib/commonjs/components/icons/index.js +84 -17
- package/lib/commonjs/components/onboarding/OAuthWebView.js +1754 -18
- package/lib/commonjs/components/onboarding/OnboardingHeader.js +74 -10
- package/lib/commonjs/components/onboarding/PinInput.js +283 -10
- package/lib/commonjs/components/onboarding/PlatformConnector.js +249 -11
- package/lib/commonjs/config/PLATFORM_APIS.md +849 -0
- package/lib/commonjs/config/api.js +56 -7
- package/lib/commonjs/constants/index.js +120 -7
- package/lib/commonjs/context/AuthContext.js +345 -10
- package/lib/commonjs/hooks/useConnectedAccounts.js +111 -9
- package/lib/commonjs/hooks/useConnections.js +102 -8
- package/lib/commonjs/hooks/useCredentials.js +178 -10
- package/lib/commonjs/hooks/useUserConnections.js +148 -10
- package/lib/commonjs/index.js +439 -34
- package/lib/commonjs/services/apiClient.js +298 -8
- package/lib/commonjs/services/biometricPinService.js +180 -8
- package/lib/commonjs/services/chatGPTConversationExtractor.js +155 -8
- package/lib/commonjs/services/chatGPTConversationService.js +275 -9
- package/lib/commonjs/services/claudeConversationExtractor.js +103 -8
- package/lib/commonjs/services/claudeConversationService.js +158 -9
- package/lib/commonjs/services/connectedAccountsService.js +310 -10
- package/lib/commonjs/services/googleAuthService.js +252 -11
- package/lib/commonjs/services/hingeDataExtractor.js +105 -8
- package/lib/commonjs/services/hingeDataService.js +150 -9
- package/lib/commonjs/services/imageCompressionService.js +260 -7
- package/lib/commonjs/services/instagramDataExtractor.js +126 -8
- package/lib/commonjs/services/instagramDataService.js +163 -9
- package/lib/commonjs/services/jwtStorageService.js +276 -7
- package/lib/commonjs/services/linkedinDOMExtractor.js +245 -7
- package/lib/commonjs/services/linkedinProfileService.js +222 -9
- package/lib/commonjs/services/linkedinScrapingService.js +230 -8
- package/lib/commonjs/services/llmDataStorage.js +294 -8
- package/lib/commonjs/services/mobileTrainingService.js +186 -8
- package/lib/commonjs/services/netflixDataExtractor.js +120 -8
- package/lib/commonjs/services/netflixDataService.js +198 -9
- package/lib/commonjs/services/pinEncryptionService.js +84 -8
- package/lib/commonjs/services/pinStorageUtils.js +105 -7
- package/lib/commonjs/services/platformAuthService.js +1484 -12
- package/lib/commonjs/services/sephoraDataExtractor.js +140 -8
- package/lib/commonjs/services/sephoraDataService.js +200 -9
- package/lib/commonjs/services/spotifyDataExtractor.js +148 -8
- package/lib/commonjs/services/spotifyDataService.js +241 -9
- package/lib/commonjs/services/storageService.js +404 -8
- package/lib/commonjs/services/telegramDataExtractor.js +115 -8
- package/lib/commonjs/services/telegramDataService.js +499 -9
- package/lib/commonjs/services/trainingApiHelpers.js +73 -7
- package/lib/commonjs/services/userConnectionsService.js +340 -10
- package/lib/commonjs/services/youtubeMigrationService.js +416 -10
- package/lib/commonjs/theme/index.js +250 -7
- package/lib/commonjs/types/ambient.d.js +2 -1
- package/lib/commonjs/types/declarations.d.js +2 -1
- package/lib/commonjs/types/index.js +6 -1
- package/lib/commonjs/types/node-fix.d.js +2 -1
- package/lib/commonjs/types/node-override.d.js +2 -1
- package/lib/commonjs/types/opacity.d.js +2 -1
- package/lib/commonjs/types.js +14 -1
- package/lib/commonjs/utils/Portal.js +98 -8
- package/lib/commonjs/utils/api.js +130 -9
- package/lib/commonjs/utils/assetRegistry.js +210 -35
- package/lib/commonjs/utils/auth.js +112 -9
- package/lib/commonjs/utils/connectorTests.js +613 -29
- package/lib/commonjs/utils/crypto.js +62 -8
- package/lib/commonjs/utils/debugHelper.js +64 -1
- package/lib/commonjs/utils/encryption.js +76 -7
- package/lib/commonjs/utils/eventUtils.js +288 -1
- package/lib/commonjs/utils/haptics.js +66 -9
- package/lib/commonjs/utils/imagePreloader.js +6 -1
- package/lib/commonjs/utils/networkDiagnostics.js +226 -8
- package/lib/commonjs/utils/onairosApi.js +350 -9
- package/lib/commonjs/utils/programmaticFlow.js +117 -9
- package/lib/commonjs/utils/retryHelper.js +220 -1
- package/lib/commonjs/utils/secureStorage.js +349 -10
- package/lib/commonjs/utils/webviewScripts/chatgpt.js +551 -1
- package/lib/commonjs/utils/webviewScripts/claude.js +376 -1
- package/lib/commonjs/utils/webviewScripts/hinge.js +411 -1
- package/lib/commonjs/utils/webviewScripts/index.js +698 -15
- package/lib/commonjs/utils/webviewScripts/instagram.js +454 -1
- package/lib/commonjs/utils/webviewScripts/linkedin.js +880 -1
- package/lib/commonjs/utils/webviewScripts/netflix.js +382 -1
- package/lib/commonjs/utils/webviewScripts/sephora.js +516 -1
- package/lib/commonjs/utils/webviewScripts/spotify.js +419 -1
- package/lib/commonjs/utils/webviewScripts/telegram.js +678 -1
- package/lib/module/api/index.js +211 -1
- package/lib/module/components/BodyText.js +20 -1
- package/lib/module/components/BrandMark.js +104 -1
- package/lib/module/components/CodeInput.js +109 -1
- package/lib/module/components/EmailInput.js +23 -1
- package/lib/module/components/GoogleButton.js +49 -1
- package/lib/module/components/HeadingGroup.js +36 -1
- package/lib/module/components/LLMDataInputModal.js +656 -7
- package/lib/module/components/ModalHeader.js +92 -1
- package/lib/module/components/ModalSheet.js +39 -1
- package/lib/module/components/Onairos.js +373 -1
- package/lib/module/components/OnairosButton.js +305 -1
- package/lib/module/components/OnairosSignInButton.js +121 -1
- package/lib/module/components/Overlay.js +456 -1
- package/lib/module/components/PersonaImage.js +129 -1
- package/lib/module/components/PersonaLoadingScreen.js +310 -1
- package/lib/module/components/PersonalizationConsentScreen.js +460 -1
- package/lib/module/components/PinCreationScreen.js +396 -1
- package/lib/module/components/PinInput.js +456 -1
- package/lib/module/components/PlatformConnectorsStep.js +1302 -6
- package/lib/module/components/PlatformList.js +129 -1
- package/lib/module/components/PlatformToggle.js +173 -1
- package/lib/module/components/PrimaryButton.js +172 -1
- package/lib/module/components/SignInMatchAnimation.js +189 -1
- package/lib/module/components/SignInStep.js +338 -1
- package/lib/module/components/UniversalOnboarding.js +2770 -1
- package/lib/module/components/VerificationStep.js +168 -1
- package/lib/module/components/WelcomeScreen.js +453 -1
- package/lib/module/components/icons/Basicproficon.js +30 -1
- package/lib/module/components/icons/Basicprofile.js +14 -1
- package/lib/module/components/icons/Checkbox.js +14 -1
- package/lib/module/components/icons/Checkmark.js +20 -1
- package/lib/module/components/icons/Contentanalysis.js +14 -1
- package/lib/module/components/icons/Contenticon.js +32 -1
- package/lib/module/components/icons/EnochE.js +34 -1
- package/lib/module/components/icons/Personalityicon.js +23 -1
- package/lib/module/components/icons/Personalityprofile.js +14 -1
- package/lib/module/components/icons/Personalitytraits.js +14 -1
- package/lib/module/components/icons/Userpreferences.js +14 -1
- package/lib/module/components/icons/index.js +13 -1
- package/lib/module/components/onboarding/OAuthWebView.js +1746 -1
- package/lib/module/components/onboarding/OnboardingHeader.js +66 -1
- package/lib/module/components/onboarding/PinInput.js +274 -1
- package/lib/module/components/onboarding/PlatformConnector.js +240 -1
- package/lib/module/config/PLATFORM_APIS.md +849 -0
- package/lib/module/config/api.js +47 -1
- package/lib/module/constants/index.js +114 -1
- package/lib/module/context/AuthContext.js +335 -1
- package/lib/module/hooks/useConnectedAccounts.js +106 -1
- package/lib/module/hooks/useConnections.js +95 -1
- package/lib/module/hooks/useCredentials.js +171 -6
- package/lib/module/hooks/useUserConnections.js +140 -1
- package/lib/module/index.js +172 -1
- package/lib/module/services/apiClient.js +295 -1
- package/lib/module/services/biometricPinService.js +169 -1
- package/lib/module/services/chatGPTConversationExtractor.js +149 -1
- package/lib/module/services/chatGPTConversationService.js +268 -1
- package/lib/module/services/claudeConversationExtractor.js +97 -1
- package/lib/module/services/claudeConversationService.js +151 -1
- package/lib/module/services/connectedAccountsService.js +293 -1
- package/lib/module/services/googleAuthService.js +241 -1
- package/lib/module/services/hingeDataExtractor.js +99 -1
- package/lib/module/services/hingeDataService.js +143 -1
- package/lib/module/services/imageCompressionService.js +250 -1
- package/lib/module/services/instagramDataExtractor.js +120 -1
- package/lib/module/services/instagramDataService.js +156 -1
- package/lib/module/services/jwtStorageService.js +257 -1
- package/lib/module/services/linkedinDOMExtractor.js +234 -1
- package/lib/module/services/linkedinProfileService.js +210 -1
- package/lib/module/services/linkedinScrapingService.js +219 -1
- package/lib/module/services/llmDataStorage.js +277 -1
- package/lib/module/services/mobileTrainingService.js +173 -1
- package/lib/module/services/netflixDataExtractor.js +114 -1
- package/lib/module/services/netflixDataService.js +191 -1
- package/lib/module/services/pinEncryptionService.js +74 -6
- package/lib/module/services/pinStorageUtils.js +93 -1
- package/lib/module/services/platformAuthService.js +1461 -1
- package/lib/module/services/sephoraDataExtractor.js +134 -1
- package/lib/module/services/sephoraDataService.js +193 -1
- package/lib/module/services/spotifyDataExtractor.js +142 -1
- package/lib/module/services/spotifyDataService.js +234 -1
- package/lib/module/services/storageService.js +383 -1
- package/lib/module/services/telegramDataExtractor.js +109 -1
- package/lib/module/services/telegramDataService.js +493 -1
- package/lib/module/services/trainingApiHelpers.js +67 -1
- package/lib/module/services/userConnectionsService.js +329 -1
- package/lib/module/services/youtubeMigrationService.js +405 -1
- package/lib/module/theme/index.js +245 -1
- package/lib/module/types.js +10 -1
- package/lib/module/utils/Portal.js +90 -1
- package/lib/module/utils/api.js +118 -1
- package/lib/module/utils/assetRegistry.js +200 -34
- package/lib/module/utils/auth.js +100 -1
- package/lib/module/utils/connectorTests.js +600 -27
- package/lib/module/utils/crypto.js +54 -1
- package/lib/module/utils/debugHelper.js +54 -1
- package/lib/module/utils/encryption.js +67 -1
- package/lib/module/utils/eventUtils.js +270 -1
- package/lib/module/utils/haptics.js +59 -8
- package/lib/module/utils/imagePreloader.js +3 -1
- package/lib/module/utils/networkDiagnostics.js +217 -1
- package/lib/module/utils/onairosApi.js +333 -1
- package/lib/module/utils/programmaticFlow.js +111 -1
- package/lib/module/utils/retryHelper.js +211 -1
- package/lib/module/utils/secureStorage.js +330 -6
- package/lib/module/utils/webviewScripts/chatgpt.js +545 -1
- package/lib/module/utils/webviewScripts/claude.js +370 -1
- package/lib/module/utils/webviewScripts/hinge.js +405 -1
- package/lib/module/utils/webviewScripts/index.js +434 -1
- package/lib/module/utils/webviewScripts/instagram.js +448 -1
- package/lib/module/utils/webviewScripts/linkedin.js +874 -1
- package/lib/module/utils/webviewScripts/netflix.js +376 -1
- package/lib/module/utils/webviewScripts/sephora.js +510 -1
- package/lib/module/utils/webviewScripts/spotify.js +413 -1
- package/lib/module/utils/webviewScripts/telegram.js +672 -1
- package/package.json +2 -2
|
@@ -1,13 +1,313 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
function _0xef21(){const _0x1023a5=['defineProperty','default','Sign\x20in\x20with\x20Onairos','Sign\x20up\x20with\x20Onairos','Connect\x20Onairos','object','function','RcHCM','VqbEF','AvFyx','weCqe','gvxSo','KvLjb','__esModule','iMrIC','ktbFd','hhpEn','FxJRV','get','set','log','[OnairosButton]\x20handleOnboardingComplete:\x20Setting\x20showOnboarding\x20to\x20false.','BVzrr','BGukz','ikplV','hasOwnProperty','call','getOwnPropertyDescriptor','GidGS','bmYAK','BbwZj','muzRs','Dimensions','OnairosButton','normal','#1BA9D4','black','DicQi','[OnairosButton]\x20LogEffect:\x20showOnboarding\x20state\x20changed\x20to:','[OnairosButton]\x20Error\x20in\x20handlePress:','Unknown\x20error','❌\x20[OnairosButton]\x20SDK\x20NOT\x20INITIALIZED:','pweGr','SDK\x20Not\x20Initialized','The\x20Onairos\x20SDK\x20requires\x20initialization\x20with\x20a\x20valid\x20API\x20key.\x0a\x0aDevelopers:\x20Please\x20call\x20initializeApiKey()\x20before\x20using\x20OnairosButton.','[OnairosButton]\x20SDK\x20initialized\x20with\x20API\x20key:','[OnairosButton]\x20Precheck\x20failed.\x20Setting\x20showOnboarding\x20to\x20false\x20(indirectly,\x20by\x20not\x20setting\x20to\x20true).','Precheck\x20validation\x20failed','rEFri','ODfGI','signup','MZeYY','MOGmL','QAybV','RYSKX','User\x20closed\x20onboarding','[OnairosButton]\x20Initializing.\x20Initial\x20showOnboarding:','#f5e7c1','#C7A047','pill','small','Basic\x20tier','Free\x20access','Medium','Premium\x20features','useState','xOkRp','useEffect','pzYYK','bNDoA','GQemN','resolve','oLgiv','leAlW','Onairos\x20SDK\x20not\x20initialized.\x20Developers\x20must\x20call\x20initializeApiKey()\x20with\x20a\x20valid\x20API\x20key\x20before\x20using\x20SDK\x20components.\x20Get\x20your\x20API\x20key\x20from\x20https://dashboard.onairos.uk','error','tNnlC','EsXxW','lPLxI','Alert','ngbQQ','MqMpF','UAVqX','SgXSX','message','xBDyI','XviZH','substring','...','XmYwJ','QvtDZ','JONWT','[OnairosButton]\x20handlePress:\x20Setting\x20showOnboarding\x20to\x20true.','sjqaG','hKckZ','DQiie','acLIu','Rhxgw','oyJQb','dZoTP','QEfhD','PpHyP','bsMxv','PWMGN','VfKnc','xGItW','neRon','etNhd','dxHQX','apiKey','QYcKj','useCallback','DuEYC','LHxft','bcvLA','GdUvr','iHwyI','MiBck','uEsAj','alert','giDgt','CBOtG','LkfTM','ICmHW','OYPic','uKWdk','Tddzt','gZisM','ytNEk','IlHzW','jUmWk','vMBtr','AIpIB','cKbsX','has','RtJjJ','DqHQn','RXOCz','OgWzQ','ZZroC','TrwKb','JqQOJ','ewfEm','ZipdP','CdxPr','[OnairosButton]\x20Rendering\x20JSX\x20with\x20props:','createElement','Fragment','View','TouchableOpacity','button','pillButton','strokedButton','swervButton','disabledButton','WdRkH','MByhm','DpGhb','DlYDU','hkzWX','hZFUt','buttonContent','logoContainer','Image','BRAND_IMAGES','onairosLogoAlt','contain','Text','buttonText','#FFFFFF','UniversalOnboarding','aPZWp','Small','fffLq','WTYdm','FWjHL','UVoaH','IMxiA','EEkyT','zfeWB','onairosevents://auth/callback','create','row','center','bold','transparent','600'];_0xef21=function(){return _0x1023a5;};return _0xef21();}Object[_0x3792(0x0)](exports,'__esModule',{'value':!![]}),exports[_0x3792(0x1)]=exports['OnairosButton']=void 0x0;function _0x3792(_0xef21e3,_0x37923b){_0xef21e3=_0xef21e3-0x0;const _0x2e4960=_0xef21();let _0x19d202=_0x2e4960[_0xef21e3];return _0x19d202;}var _react=_interopRequireWildcard(__ONAIROS_REQ_FUNC__(0x0)),_reactNative=__ONAIROS_REQ_FUNC__(0x1),_reactNativeLinearGradient=_interopRequireDefault(__ONAIROS_REQ_FUNC__(0x2)),_UniversalOnboarding=__ONAIROS_REQ_FUNC__(0x3),_WelcomeScreen=_interopRequireDefault(__ONAIROS_REQ_FUNC__(0x4)),_apiKeyService=__ONAIROS_REQ_FUNC__(0x5),_assetRegistry=__ONAIROS_REQ_FUNC__(0x6);function _interopRequireDefault(_0x137e3a){return _0x137e3a&&_0x137e3a['__esModule']?_0x137e3a:{'default':_0x137e3a};}function _interopRequireWildcard(_0xd2e935,_0x12dfb5){const _0x24cb7f={'bmYAK':'login','BbwZj':_0x3792(0x2),'muzRs':'signup','sWWkT':_0x3792(0x3),'bOrIp':_0x3792(0x4),'VqbEF':function(_0x36211b,_0x380d03){return _0x36211b(_0x380d03);},'AvFyx':function(_0x30a75){return _0x30a75();},'weCqe':function(_0x164692,_0x47438f){return _0x164692===_0x47438f;},'gvxSo':'KvLjb','puPJt':function(_0x2207ac,_0x2ec98c){return _0x2207ac&&_0x2ec98c;},'iMrIC':function(_0x2c3962,_0x4b8d6f){return _0x2c3962!=_0x4b8d6f;},'ktbFd':_0x3792(0x5),'LoHIP':_0x3792(0x6),'hhpEn':function(_0x2fdaf5,_0x42ef27){return _0x2fdaf5!==_0x42ef27;},'wFXbF':_0x3792(0x7),'ikplV':_0x3792(0x1),'GidGS':function(_0x105697,_0x4b5fab,_0x157d38,_0x5e1be7){return _0x105697(_0x4b5fab,_0x157d38,_0x5e1be7);}};if(_0x3792(0x6)==typeof WeakMap)var _0xad165f=new WeakMap(),_0x1fa769=new WeakMap();return(_interopRequireWildcard=function(_0x2c4cd8,_0x392ddf){const _0x50523f={'BVzrr':function(_0x19f0a7,_0x4e6538){return _0x24cb7f[_0x3792(0x8)](_0x19f0a7,_0x4e6538);},'BGukz':function(_0xcd285d){return _0x24cb7f[_0x3792(0x9)](_0xcd285d);}};if(_0x24cb7f[_0x3792(0xa)](_0x24cb7f[_0x3792(0xb)],_0x3792(0xc))){if(_0x24cb7f['puPJt'](!_0x392ddf,_0x2c4cd8)&&_0x2c4cd8[_0x3792(0xd)])return _0x2c4cd8;var _0x1d3053,_0x43bdab,_0x531bee={'__proto__':null,'default':_0x2c4cd8};if(null===_0x2c4cd8||_0x24cb7f[_0x3792(0xe)](_0x24cb7f[_0x3792(0xf)],typeof _0x2c4cd8)&&_0x24cb7f['iMrIC'](_0x24cb7f['LoHIP'],typeof _0x2c4cd8))return _0x531bee;if(_0x1d3053=_0x392ddf?_0x1fa769:_0xad165f){if(_0x24cb7f[_0x3792(0x10)](_0x3792(0x11),_0x24cb7f['wFXbF'])){if(_0x1d3053['has'](_0x2c4cd8))return _0x1d3053[_0x3792(0x12)](_0x2c4cd8);_0x1d3053[_0x3792(0x13)](_0x2c4cd8,_0x531bee);}else _0x2135af[_0x3792(0x14)](_0x3792(0x15)),_0x50523f[_0x3792(0x16)](_0x333b59,![]),_0x11c610&&_0x546ddc(_0x1cd119,_0x2f54a8),_0x42060e&&_0x50523f[_0x3792(0x17)](_0x3e2175);}for(const _0xd00bcc in _0x2c4cd8)_0x24cb7f[_0x3792(0x18)]!==_0xd00bcc&&{}[_0x3792(0x19)][_0x3792(0x1a)](_0x2c4cd8,_0xd00bcc)&&((_0x43bdab=(_0x1d3053=Object['defineProperty'])&&Object[_0x3792(0x1b)](_0x2c4cd8,_0xd00bcc))&&(_0x43bdab[_0x3792(0x12)]||_0x43bdab[_0x3792(0x13)])?_0x24cb7f[_0x3792(0x1c)](_0x1d3053,_0x531bee,_0xd00bcc,_0x43bdab):_0x531bee[_0xd00bcc]=_0x2c4cd8[_0xd00bcc]);return _0x531bee;}else switch(_0x25837e){case'connect':return'Connect\x20Onairos';case _0x24cb7f[_0x3792(0x1d)]:return _0x24cb7f[_0x3792(0x1e)];case _0x24cb7f[_0x3792(0x1f)]:return _0x24cb7f['sWWkT'];default:return _0x24cb7f['bOrIp'];}})(_0xd2e935,_0x12dfb5);}const {width}=_reactNative[_0x3792(0x20)][_0x3792(0x12)]('window'),OnairosButton=exports[_0x3792(0x21)]=(0x0,_react['forwardRef'])(({AppName:_0x25ea60,buttonType:buttonType=_0x3792(0x22),buttonWidth:buttonWidth=0xb4,buttonHeight:buttonHeight=0x30,hasStroke:hasStroke=![],enabled:enabled=!![],buttonForm:buttonForm=_0x3792(0x1),onResolved:_0x35a3e0,onRejection:_0x180e91,preCheck:_0x51ae89,color:color=_0x3792(0x23),swerv:swerv=![],darkMode:darkMode=![],returnLink:_0x2ee471,preferredPlatform:_0x3f439d,autoFetch:autoFetch=![],inferenceData:_0x26caca,textLayout:textLayout='right',textColor:textColor=_0x3792(0x24),proofMode:proofMode=![],webpageName:_0x244606,debug:debug=![],testMode:testMode=![],requestData:_0x355d2c,onPress:_0x3e6c62,primaryAuthOnly:primaryAuthOnly=![],useNewWelcomeFlow:useNewWelcomeFlow=![]},_0x24d08f)=>{const _0x1d66e5={'IeToq':_0x3792(0x25),'bNDoA':_0x3792(0x26),'GQemN':function(_0x1c82b0){return _0x1c82b0();},'MqMpF':_0x3792(0x27),'UAVqX':function(_0x5a9489,_0x411a83){return _0x5a9489===_0x411a83;},'SgXSX':function(_0xf68f03,_0x35d829){return _0xf68f03 instanceof _0x35d829;},'xBDyI':_0x3792(0x28),'EsXxW':function(_0x2e4429,_0x2371f5){return _0x2e4429(_0x2371f5);},'oLgiv':'[OnairosButton]\x20handlePress\x20called.','zfeWB':function(_0x683cfc,_0x1cffe7){return _0x683cfc||_0x1cffe7;},'leAlW':function(_0x37f31b,_0x3a74d9){return _0x37f31b(_0x3a74d9);},'tNnlC':_0x3792(0x29),'lPLxI':_0x3792(0x2a),'SbAel':_0x3792(0x2b),'ngbQQ':_0x3792(0x2c),'oyJQb':_0x3792(0x2d),'XviZH':function(_0x3f3892,_0x89881a){return _0x3f3892+_0x89881a;},'bcvLA':function(_0x3a2eaa,_0x38458d){return _0x3a2eaa===_0x38458d;},'pnKdM':function(_0x90b538,_0x1e447f){return _0x90b538===_0x1e447f;},'XmYwJ':_0x3792(0x2e),'QvtDZ':function(_0x5eccb0,_0xcb32a5){return _0x5eccb0===_0xcb32a5;},'QEfhD':function(_0x292098,_0x378afb){return _0x292098===_0x378afb;},'JONWT':_0x3792(0x2f),'vWPZj':function(_0x18f776,_0x414e62){return _0x18f776(_0x414e62);},'sjqaG':function(_0x405bd2,_0x467ae1){return _0x405bd2(_0x467ae1);},'hKckZ':function(_0x3eb51b,_0x19efbe){return _0x3eb51b(_0x19efbe);},'DQiie':function(_0x4f5aed,_0x49ab0a){return _0x4f5aed!==_0x49ab0a;},'acLIu':_0x3792(0x30),'Rhxgw':_0x3792(0x31),'ZipdP':function(_0x465dcd,_0x178665){return _0x465dcd(_0x178665);},'dZoTP':function(_0x586cde,_0x3cd119){return _0x586cde===_0x3cd119;},'PpHyP':function(_0x2dabfe,_0x3f4f87){return _0x2dabfe===_0x3f4f87;},'bsMxv':'connect','PWMGN':_0x3792(0x4),'VfKnc':'Sign\x20in\x20with\x20Onairos','xGItW':_0x3792(0x32),'neRon':_0x3792(0x3),'LkfTM':function(_0x29cbbc,_0x366946,_0x4941b4){return _0x29cbbc(_0x366946,_0x4941b4);},'DuEYC':'Onairos\x20SDK\x20not\x20initialized.\x20Developers\x20must\x20call\x20initializeApiKey()\x20with\x20a\x20valid\x20API\x20key\x20before\x20using\x20SDK\x20components.\x20Get\x20your\x20API\x20key\x20from\x20https://dashboard.onairos.uk','HysPv':_0x3792(0x33),'LHxft':function(_0x32fcc0,_0x232ef8){return _0x32fcc0(_0x232ef8);},'OHsSc':_0x3792(0x34),'CBOtG':function(_0x35dff8,_0x16010d,_0x46427a){return _0x35dff8(_0x16010d,_0x46427a);},'ewfEm':function(_0x3a800a,_0x1d72dd){return _0x3a800a===_0x1d72dd;},'CdxPr':function(_0x4d9e05,_0x405850){return _0x4d9e05(_0x405850);},'ICmHW':function(_0x30484c,_0x4b1e1a){return _0x30484c&&_0x4b1e1a;},'OYPic':function(_0x30e18d,_0x1f7df8){return _0x30e18d===_0x1f7df8;},'uKWdk':function(_0x30e580,_0x520d87){return _0x30e580!=_0x520d87;},'DAiHL':_0x3792(0x5),'Tddzt':_0x3792(0x6),'GIiCy':function(_0x225ced,_0x3b79ea){return _0x225ced!==_0x3b79ea;},'bfaBf':'default','gZisM':function(_0x19ec7e,_0x13a0d5,_0x363008,_0x4aa84a){return _0x19ec7e(_0x13a0d5,_0x363008,_0x4aa84a);},'VvxQQ':function(_0x436d79,_0x35541d){return _0x436d79==_0x35541d;},'ytNEk':function(_0x38517b,_0xdc625e){return _0x38517b!==_0xdc625e;},'IlHzW':_0x3792(0x35),'RXOCz':'[OnairosButton]\x20handleOnboardingClose:\x20Setting\x20showOnboarding\x20to\x20false.','OgWzQ':function(_0x3de127,_0x5702b7){return _0x3de127!==_0x5702b7;},'ZZroC':_0x3792(0x36),'ZIKWM':function(_0xd598a7,_0x1be285){return _0xd598a7(_0x1be285);},'JqQOJ':_0x3792(0x37),'xOkRp':_0x3792(0x38),'GVqTV':function(_0x4f4037,_0x3fa1a8){return _0x4f4037||_0x3fa1a8;},'WdRkH':_0x3792(0x39),'MByhm':_0x3792(0x3a),'DpGhb':'#8B6914','DlYDU':'absolute','hkzWX':_0x3792(0x3b),'hZFUt':_0x3792(0x3c),'aPZWp':function(_0x137bb3,_0x1f9670){return _0x137bb3||_0x1f9670;},'fffLq':_0x3792(0x3d),'WTYdm':_0x3792(0x3e),'FWjHL':_0x3792(0x3f),'UVoaH':'Standard\x20tier','IMxiA':_0x3792(0x40),'EEkyT':'Large','hgcEH':'Full\x20personalization'},[_0x35b859,_0x28acd4]=(0x0,_react['useState'])(![]),[_0x170fa2,_0x5eda3f]=(0x0,_react[_0x3792(0x41)])(![]),[_0x2a9726,_0x5ea10f]=(0x0,_react[_0x3792(0x41)])(![]);console[_0x3792(0x14)](_0x1d66e5[_0x3792(0x42)],_0x2a9726),(0x0,_react[_0x3792(0x43)])(()=>{if(_0x1d66e5['IeToq']!==_0x3792(0x44))console['log'](_0x1d66e5[_0x3792(0x45)],_0x2a9726);else return _0x13214e['resolve']();},[_0x2a9726]),(0x0,_react['useImperativeHandle'])(_0x24d08f,()=>({'trigger':async()=>{return await _0x1d66e5[_0x3792(0x46)](_0x5720fd),Promise[_0x3792(0x47)]();},'reset':async()=>{return Promise[_0x3792(0x47)]();}}));const _0x5720fd=async()=>{console[_0x3792(0x14)](_0x1d66e5[_0x3792(0x48)]);if(_0x1d66e5['zfeWB'](!enabled,_0x35b859))return;_0x1d66e5[_0x3792(0x49)](_0x28acd4,!![]);try{if(!(0x0,_apiKeyService['isApiKeyInitialized'])()){const _0x375913=_0x3792(0x4a);console[_0x3792(0x4b)](_0x1d66e5[_0x3792(0x4c)],_0x375913);_0x180e91?_0x1d66e5[_0x3792(0x4d)](_0x180e91,_0x375913):_0x1d66e5['UAVqX'](_0x1d66e5[_0x3792(0x4e)],_0x1d66e5[_0x3792(0x4e)])?_reactNative[_0x3792(0x4f)]['alert'](_0x1d66e5['SbAel'],_0x1d66e5[_0x3792(0x50)],[{'text':'OK'}]):(_0x346aa5['error'](_0x1d66e5[_0x3792(0x51)],_0x2b3abf),_0x1d66e5['UAVqX'](_0x12229b,null)||_0x1d66e5[_0x3792(0x52)](_0x536aa8,void 0x0)||_0x506523(_0x1d66e5[_0x3792(0x53)](_0x11b325,_0x580d63)?_0x53565a[_0x3792(0x54)]:_0x1d66e5[_0x3792(0x55)]),_0x1d66e5[_0x3792(0x4d)](_0x44976d,![]));_0x28acd4(![]);return;}const _0x13f35a=(0x0,_apiKeyService['getApiConfig'])();if(debug){var _0x4ec187;console['log'](_0x1d66e5['oyJQb'],_0x1d66e5[_0x3792(0x56)](_0x1d66e5[_0x3792(0x52)](_0x13f35a,null)||_0x1d66e5['bcvLA'](_0x13f35a,void 0x0)||_0x1d66e5['pnKdM'](_0x4ec187=_0x13f35a['apiKey'],null)||_0x4ec187===void 0x0?void 0x0:_0x4ec187[_0x3792(0x57)](0x0,0x8),_0x3792(0x58)));}if(_0x51ae89){const _0x52ffeb=await _0x1d66e5['GQemN'](_0x51ae89);if(!_0x52ffeb){console[_0x3792(0x14)](_0x1d66e5[_0x3792(0x59)]),_0x1d66e5[_0x3792(0x5a)](_0x180e91,null)||_0x1d66e5['QEfhD'](_0x180e91,void 0x0)||_0x1d66e5[_0x3792(0x4d)](_0x180e91,_0x1d66e5[_0x3792(0x5b)]),_0x1d66e5['vWPZj'](_0x28acd4,![]);return;}}console[_0x3792(0x14)](_0x3792(0x5c)),_0x1d66e5[_0x3792(0x5d)](_0x5ea10f,!![]),_0x1d66e5[_0x3792(0x5e)](_0x28acd4,![]);}catch(_0x4e5add){_0x1d66e5[_0x3792(0x5f)](_0x1d66e5[_0x3792(0x60)],_0x1d66e5[_0x3792(0x61)])?(console['error'](_0x1d66e5[_0x3792(0x51)],_0x4e5add),_0x1d66e5['bcvLA'](_0x180e91,null)||_0x1d66e5['UAVqX'](_0x180e91,void 0x0)||_0x1d66e5['vWPZj'](_0x180e91,_0x4e5add instanceof Error?_0x4e5add[_0x3792(0x54)]:_0x1d66e5[_0x3792(0x55)]),_0x1d66e5['ZipdP'](_0x28acd4,![])):_0x7bb240();}},_0x3d1104=()=>{const _0x337f90={'etNhd':_0x1d66e5[_0x3792(0x62)],'dxHQX':function(_0x1ded2b,_0x48e1cc){return _0x1d66e5[_0x3792(0x63)](_0x1ded2b,_0x48e1cc);},'QYcKj':function(_0x21346,_0x182362){return _0x1d66e5[_0x3792(0x64)](_0x21346,_0x182362);}};if(_0x1d66e5[_0x3792(0x65)]('aqzRN','aqzRN'))switch(buttonForm){case _0x1d66e5[_0x3792(0x66)]:return _0x1d66e5[_0x3792(0x67)];case'login':return _0x1d66e5[_0x3792(0x68)];case _0x1d66e5[_0x3792(0x69)]:return _0x1d66e5[_0x3792(0x6a)];default:return _0x1d66e5['PWMGN'];}else{var _0x5d9cc6;_0x537062[_0x3792(0x14)](_0x337f90[_0x3792(0x6b)],(_0x337f90['dxHQX'](_0x4a9310,null)||_0x337f90[_0x3792(0x6c)](_0x5d1045,void 0x0)||_0x337f90['QYcKj'](_0x5d9cc6=_0x1cd413[_0x3792(0x6d)],null)||_0x337f90[_0x3792(0x6e)](_0x5d9cc6,void 0x0)?void 0x0:_0x5d9cc6[_0x3792(0x57)](0x0,0x8))+'...');}},_0x10da45=(0x0,_react[_0x3792(0x6f)])((_0x2a4d83,_0xbc154f)=>{const _0x3ce817={'iHwyI':_0x1d66e5[_0x3792(0x70)],'MiBck':_0x1d66e5[_0x3792(0x4c)],'uEsAj':function(_0x630d8c,_0x52750d){return _0x630d8c(_0x52750d);},'giDgt':_0x1d66e5[_0x3792(0x50)]};if(_0x1d66e5['HysPv']===_0x3792(0x33)){console[_0x3792(0x14)](_0x3792(0x15)),_0x1d66e5[_0x3792(0x71)](_0x5ea10f,![]);if(_0x35a3e0){if(_0x1d66e5[_0x3792(0x72)](_0x1d66e5['OHsSc'],_0x3792(0x73))){const _0x5e376d=_0x3ce817[_0x3792(0x74)];_0x5c04c1['error'](_0x3ce817[_0x3792(0x75)],_0x5e376d);_0x268f64?_0x3ce817[_0x3792(0x76)](_0x5185f4,_0x5e376d):_0x936dc5['Alert'][_0x3792(0x77)](_0x3792(0x2b),_0x3ce817[_0x3792(0x78)],[{'text':'OK'}]);_0x4841e3(![]);return;}else _0x1d66e5[_0x3792(0x79)](_0x35a3e0,_0x2a4d83,_0xbc154f);}_0x3e6c62&&_0x3e6c62();}else _0x1d66e5[_0x3792(0x7a)](_0x2b9973,_0x2cbd15,_0x41d693);},[_0x35a3e0,_0x3e6c62]),_0x16fc6c=(0x0,_react['useCallback'])(()=>{const _0x4c5ea2={'gbAbc':function(_0x37df14,_0x55da62){return _0x1d66e5[_0x3792(0x7b)](_0x37df14,_0x55da62);},'AIpIB':function(_0x5f5793,_0x169c78){return _0x1d66e5[_0x3792(0x7c)](_0x5f5793,_0x169c78);},'cKbsX':function(_0x27181c,_0x15e419){return _0x1d66e5[_0x3792(0x7d)](_0x27181c,_0x15e419);},'DXBTK':_0x1d66e5['DAiHL'],'vMBtr':_0x1d66e5[_0x3792(0x7e)],'RtJjJ':function(_0x334694,_0x42b6d7){return _0x1d66e5['GIiCy'](_0x334694,_0x42b6d7);},'cBnwi':_0x1d66e5['bfaBf'],'DqHQn':function(_0xaa389e,_0x52aa24,_0x231252,_0x10012b){return _0x1d66e5[_0x3792(0x7f)](_0xaa389e,_0x52aa24,_0x231252,_0x10012b);},'jUmWk':function(_0x3dbf3f,_0x1a8bab){return _0x1d66e5['VvxQQ'](_0x3dbf3f,_0x1a8bab);}};if(_0x1d66e5[_0x3792(0x80)](_0x1d66e5[_0x3792(0x81)],_0x1d66e5[_0x3792(0x81)])){if(_0x4c5ea2[_0x3792(0x82)](_0x4c5ea2[_0x3792(0x83)],typeof _0xadbea2))var _0x5de162=new _0x2ddf7d(),_0x46dcb8=new _0x26ae9b();return(_0x1596ca=function(_0x4b4ce4,_0x15e347){if(_0x4c5ea2['gbAbc'](!_0x15e347,_0x4b4ce4)&&_0x4b4ce4[_0x3792(0xd)])return _0x4b4ce4;var _0x2962a3,_0x1d3626,_0x1f579e={'__proto__':null,'default':_0x4b4ce4};if(_0x4c5ea2[_0x3792(0x84)](null,_0x4b4ce4)||_0x4c5ea2[_0x3792(0x85)](_0x4c5ea2['DXBTK'],typeof _0x4b4ce4)&&_0x4c5ea2[_0x3792(0x85)](_0x4c5ea2['vMBtr'],typeof _0x4b4ce4))return _0x1f579e;if(_0x2962a3=_0x15e347?_0x46dcb8:_0x5de162){if(_0x2962a3[_0x3792(0x86)](_0x4b4ce4))return _0x2962a3[_0x3792(0x12)](_0x4b4ce4);_0x2962a3['set'](_0x4b4ce4,_0x1f579e);}for(const _0x5847db in _0x4b4ce4)_0x4c5ea2[_0x3792(0x87)](_0x4c5ea2['cBnwi'],_0x5847db)&&{}[_0x3792(0x19)][_0x3792(0x1a)](_0x4b4ce4,_0x5847db)&&((_0x1d3626=(_0x2962a3=_0x1f1970['defineProperty'])&&_0x685e9[_0x3792(0x1b)](_0x4b4ce4,_0x5847db))&&(_0x1d3626[_0x3792(0x12)]||_0x1d3626[_0x3792(0x13)])?_0x4c5ea2[_0x3792(0x88)](_0x2962a3,_0x1f579e,_0x5847db,_0x1d3626):_0x1f579e[_0x5847db]=_0x4b4ce4[_0x5847db]);return _0x1f579e;})(_0x3bcf0d,_0x3a713c);}else{console['log'](_0x1d66e5[_0x3792(0x89)]),_0x1d66e5[_0x3792(0x71)](_0x5ea10f,![]);if(_0x180e91){if(_0x1d66e5[_0x3792(0x8a)](_0x1d66e5[_0x3792(0x8b)],_0x3792(0x8c)))_0x1d66e5['ZIKWM'](_0x180e91,_0x1d66e5[_0x3792(0x8d)]);else{_0xaf6092[_0x3792(0x14)](_0x1d66e5['XmYwJ']),_0x1d66e5[_0x3792(0x5a)](_0x11ca8c,null)||_0x1d66e5[_0x3792(0x8e)](_0x58e845,void 0x0)||_0x1d66e5[_0x3792(0x8f)](_0x4191bd,_0x3792(0x2f)),_0x1d66e5[_0x3792(0x90)](_0x2b919f,![]);return;}}}},[_0x180e91]);return console[_0x3792(0x14)](_0x3792(0x91),{'AppName':_0x25ea60,'buttonType':buttonType,'buttonWidth':buttonWidth,'buttonHeight':buttonHeight,'hasStroke':hasStroke,'enabled':enabled,'buttonForm':buttonForm,'onResolved':_0x35a3e0,'onRejection':_0x180e91,'preCheck':_0x51ae89,'color':color,'swerv':swerv,'darkMode':darkMode,'returnLink':_0x2ee471,'preferredPlatform':_0x3f439d,'autoFetch':autoFetch,'inferenceData':_0x26caca,'textLayout':textLayout,'textColor':textColor,'proofMode':proofMode,'webpageName':_0x244606,'debug':debug,'testMode':testMode,'requestData':_0x355d2c,'onPress':_0x3e6c62,'primaryAuthOnly':primaryAuthOnly,'useNewWelcomeFlow':useNewWelcomeFlow}),_react[_0x3792(0x1)][_0x3792(0x92)](_react[_0x3792(0x1)][_0x3792(0x93)],null,_react[_0x3792(0x1)][_0x3792(0x92)](_reactNative[_0x3792(0x94)],null,_react[_0x3792(0x1)]['createElement'](_reactNative[_0x3792(0x95)],{'style':[styles[_0x3792(0x96)],buttonType===_0x3792(0x3b)&&styles[_0x3792(0x97)],hasStroke&&styles[_0x3792(0x98)],{'width':buttonWidth,'height':buttonHeight},swerv&&styles[_0x3792(0x99)],!enabled&&styles[_0x3792(0x9a)]],'onPress':_0x5720fd,'disabled':_0x1d66e5['GVqTV'](!enabled,_0x35b859),'onPressIn':()=>_0x5eda3f(!![]),'onPressOut':()=>_0x5eda3f(![])},_react[_0x3792(0x1)][_0x3792(0x92)](_reactNativeLinearGradient[_0x3792(0x1)],{'colors':[_0x1d66e5[_0x3792(0x9b)],_0x1d66e5[_0x3792(0x9c)],_0x1d66e5[_0x3792(0x9d)]],'start':{'x':0x0,'y':0x0},'end':{'x':0x1,'y':0x0},'style':{'position':_0x1d66e5[_0x3792(0x9e)],'left':0x0,'right':0x0,'top':0x0,'bottom':0x0,'borderRadius':_0x1d66e5['OYPic'](buttonType,_0x1d66e5[_0x3792(0x9f)])?0x18:0x8}}),_0x35b859?_react[_0x3792(0x1)][_0x3792(0x92)](_reactNative['ActivityIndicator'],{'size':_0x1d66e5[_0x3792(0xa0)],'color':'#FFFFFF'}):_react[_0x3792(0x1)][_0x3792(0x92)](_reactNative['View'],{'style':styles[_0x3792(0xa1)]},_react['default'][_0x3792(0x92)](_reactNative['View'],{'style':styles[_0x3792(0xa2)]},_react[_0x3792(0x1)][_0x3792(0x92)](_reactNative[_0x3792(0xa3)],{'source':_assetRegistry[_0x3792(0xa4)][_0x3792(0xa5)],'style':styles['logoImage'],'resizeMode':_0x3792(0xa6)})),_react['default'][_0x3792(0x92)](_reactNative[_0x3792(0xa7)],{'style':[styles[_0x3792(0xa8)],{'color':_0x3792(0xa9)}]},_0x3d1104())))),useNewWelcomeFlow?_react[_0x3792(0x1)][_0x3792(0x92)](_WelcomeScreen[_0x3792(0x1)],{'visible':_0x2a9726,'onClose':_0x16fc6c,'onComplete':_0x10da45}):_react['default'][_0x3792(0x92)](_UniversalOnboarding[_0x3792(0xaa)],{'visible':_0x2a9726,'onClose':_0x16fc6c,'AppName':_0x25ea60,'requestData':_0x1d66e5[_0x3792(0xab)](_0x355d2c,{'Small':{'type':_0x3792(0xac),'descriptions':_0x1d66e5[_0x3792(0xad)],'reward':_0x1d66e5[_0x3792(0xae)]},'Medium':{'type':_0x1d66e5[_0x3792(0xaf)],'descriptions':_0x1d66e5[_0x3792(0xb0)],'reward':_0x1d66e5[_0x3792(0xb1)]},'Large':{'type':_0x1d66e5[_0x3792(0xb2)],'descriptions':'Premium\x20tier','reward':_0x1d66e5['hgcEH']}}),'returnLink':_0x1d66e5[_0x3792(0xb3)](_0x2ee471,_0x3792(0xb4)),'onComplete':_0x10da45,'debug':debug,'test':testMode,'preferredPlatform':_0x3f439d,'primaryAuthOnly':primaryAuthOnly}));}),styles=_reactNative['StyleSheet'][_0x3792(0xb5)]({'button':{'flexDirection':_0x3792(0xb6),'alignItems':_0x3792(0xb7),'justifyContent':_0x3792(0xb7),'paddingVertical':0xc,'paddingHorizontal':0x10,'borderRadius':0x8,'shadowColor':'#000','shadowOffset':{'width':0x0,'height':0x2},'shadowOpacity':0.2,'shadowRadius':0x4,'elevation':0x3,'overflow':'hidden'},'buttonContent':{'flexDirection':_0x3792(0xb6),'alignItems':_0x3792(0xb7),'justifyContent':_0x3792(0xb7)},'logoContainer':{'width':0x18,'height':0x18,'alignItems':_0x3792(0xb7),'justifyContent':_0x3792(0xb7),'marginRight':0x4},'logoText':{'color':_0x3792(0x3a),'fontWeight':_0x3792(0xb8),'fontSize':0xe},'logoImage':{'width':0x14,'height':0x14},'pillButton':{'borderRadius':0x18},'strokedButton':{'backgroundColor':_0x3792(0xb9),'borderWidth':0x1},'swervButton':{'transform':[{'rotate':'-2deg'}]},'disabledButton':{'opacity':0.6},'buttonText':{'fontSize':0x10,'fontWeight':_0x3792(0xba),'textAlign':'center'}});var _default=exports['default']=OnairosButton;
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.OnairosButton = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _reactNativeLinearGradient = _interopRequireDefault(require("react-native-linear-gradient"));
|
|
10
|
+
var _UniversalOnboarding = require("./UniversalOnboarding");
|
|
11
|
+
var _WelcomeScreen = _interopRequireDefault(require("./WelcomeScreen"));
|
|
12
|
+
var _apiKeyService = require("../services/apiKeyService");
|
|
13
|
+
var _assetRegistry = require("../utils/assetRegistry");
|
|
14
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
|
+
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); }
|
|
16
|
+
const {
|
|
17
|
+
width
|
|
18
|
+
} = _reactNative.Dimensions.get('window');
|
|
19
|
+
const OnairosButton = exports.OnairosButton = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
20
|
+
AppName,
|
|
21
|
+
buttonType = 'normal',
|
|
22
|
+
buttonWidth = 180,
|
|
23
|
+
buttonHeight = 48,
|
|
24
|
+
hasStroke = false,
|
|
25
|
+
enabled = true,
|
|
26
|
+
buttonForm = 'default',
|
|
27
|
+
onResolved,
|
|
28
|
+
onRejection,
|
|
29
|
+
preCheck,
|
|
30
|
+
color = '#1BA9D4',
|
|
31
|
+
swerv = false,
|
|
32
|
+
darkMode = false,
|
|
33
|
+
returnLink,
|
|
34
|
+
preferredPlatform,
|
|
35
|
+
autoFetch = false,
|
|
36
|
+
inferenceData,
|
|
37
|
+
textLayout = 'right',
|
|
38
|
+
textColor = 'black',
|
|
39
|
+
proofMode = false,
|
|
40
|
+
webpageName,
|
|
41
|
+
debug = false,
|
|
42
|
+
testMode = false,
|
|
43
|
+
requestData,
|
|
44
|
+
onPress,
|
|
45
|
+
primaryAuthOnly = false,
|
|
46
|
+
useNewWelcomeFlow = false
|
|
47
|
+
}, ref) => {
|
|
48
|
+
const [isLoading, setIsLoading] = (0, _react.useState)(false);
|
|
49
|
+
const [isPressed, setIsPressed] = (0, _react.useState)(false);
|
|
50
|
+
const [showOnboarding, setShowOnboarding] = (0, _react.useState)(false);
|
|
51
|
+
console.log('[OnairosButton] Initializing. Initial showOnboarding:', showOnboarding);
|
|
52
|
+
(0, _react.useEffect)(() => {
|
|
53
|
+
console.log('[OnairosButton] LogEffect: showOnboarding state changed to:', showOnboarding);
|
|
54
|
+
}, [showOnboarding]);
|
|
55
|
+
|
|
56
|
+
// Expose methods via ref
|
|
57
|
+
(0, _react.useImperativeHandle)(ref, () => ({
|
|
58
|
+
trigger: async () => {
|
|
59
|
+
await handlePress();
|
|
60
|
+
return Promise.resolve();
|
|
61
|
+
},
|
|
62
|
+
reset: async () => {
|
|
63
|
+
return Promise.resolve();
|
|
64
|
+
}
|
|
65
|
+
}));
|
|
66
|
+
const handlePress = async () => {
|
|
67
|
+
console.log('[OnairosButton] handlePress called.');
|
|
68
|
+
if (!enabled || isLoading) return;
|
|
69
|
+
setIsLoading(true);
|
|
70
|
+
try {
|
|
71
|
+
// 🔒 CRITICAL: Check if SDK is properly initialized with valid API key
|
|
72
|
+
if (!(0, _apiKeyService.isApiKeyInitialized)()) {
|
|
73
|
+
const errorMessage = 'Onairos SDK not initialized. Developers must call initializeApiKey() with a valid API key before using SDK components. Get your API key from https://dashboard.onairos.uk';
|
|
74
|
+
console.error('❌ [OnairosButton] SDK NOT INITIALIZED:', errorMessage);
|
|
75
|
+
if (onRejection) {
|
|
76
|
+
onRejection(errorMessage);
|
|
77
|
+
} else {
|
|
78
|
+
_reactNative.Alert.alert('SDK Not Initialized', 'The Onairos SDK requires initialization with a valid API key.\n\nDevelopers: Please call initializeApiKey() before using OnairosButton.', [{
|
|
79
|
+
text: 'OK'
|
|
80
|
+
}]);
|
|
81
|
+
}
|
|
82
|
+
setIsLoading(false);
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// Log API key status for debugging
|
|
87
|
+
const config = (0, _apiKeyService.getApiConfig)();
|
|
88
|
+
if (debug) {
|
|
89
|
+
var _config$apiKey;
|
|
90
|
+
console.log('[OnairosButton] SDK initialized with API key:', (config === null || config === void 0 || (_config$apiKey = config.apiKey) === null || _config$apiKey === void 0 ? void 0 : _config$apiKey.substring(0, 8)) + '...');
|
|
91
|
+
}
|
|
92
|
+
if (preCheck) {
|
|
93
|
+
const shouldProceed = await preCheck();
|
|
94
|
+
if (!shouldProceed) {
|
|
95
|
+
console.log('[OnairosButton] Precheck failed. Setting showOnboarding to false (indirectly, by not setting to true).');
|
|
96
|
+
onRejection === null || onRejection === void 0 || onRejection('Precheck validation failed');
|
|
97
|
+
setIsLoading(false);
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
console.log('[OnairosButton] handlePress: Setting showOnboarding to true.');
|
|
102
|
+
setShowOnboarding(true);
|
|
103
|
+
setIsLoading(false);
|
|
104
|
+
} catch (error) {
|
|
105
|
+
console.error('[OnairosButton] Error in handlePress:', error);
|
|
106
|
+
onRejection === null || onRejection === void 0 || onRejection(error instanceof Error ? error.message : 'Unknown error');
|
|
107
|
+
setIsLoading(false);
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
|
|
111
|
+
// Compute button text based on buttonForm
|
|
112
|
+
const getButtonText = () => {
|
|
113
|
+
switch (buttonForm) {
|
|
114
|
+
case 'connect':
|
|
115
|
+
return 'Connect Onairos';
|
|
116
|
+
case 'login':
|
|
117
|
+
return 'Sign in with Onairos';
|
|
118
|
+
case 'signup':
|
|
119
|
+
return 'Sign up with Onairos';
|
|
120
|
+
default:
|
|
121
|
+
return 'Connect Onairos';
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
// Handle onboarding completion
|
|
126
|
+
const handleOnboardingComplete = (0, _react.useCallback)((token, email) => {
|
|
127
|
+
console.log('[OnairosButton] handleOnboardingComplete: Setting showOnboarding to false.');
|
|
128
|
+
setShowOnboarding(false);
|
|
129
|
+
if (onResolved) {
|
|
130
|
+
// Call onResolved with the token and email
|
|
131
|
+
onResolved(token, email);
|
|
132
|
+
}
|
|
133
|
+
if (onPress) {
|
|
134
|
+
onPress();
|
|
135
|
+
}
|
|
136
|
+
}, [onResolved, onPress]);
|
|
137
|
+
|
|
138
|
+
// Handle onboarding close
|
|
139
|
+
const handleOnboardingClose = (0, _react.useCallback)(() => {
|
|
140
|
+
console.log('[OnairosButton] handleOnboardingClose: Setting showOnboarding to false.');
|
|
141
|
+
setShowOnboarding(false);
|
|
142
|
+
if (onRejection) {
|
|
143
|
+
onRejection('User closed onboarding');
|
|
144
|
+
}
|
|
145
|
+
}, [onRejection]);
|
|
146
|
+
console.log('[OnairosButton] Rendering JSX with props:', {
|
|
147
|
+
AppName,
|
|
148
|
+
buttonType,
|
|
149
|
+
buttonWidth,
|
|
150
|
+
buttonHeight,
|
|
151
|
+
hasStroke,
|
|
152
|
+
enabled,
|
|
153
|
+
buttonForm,
|
|
154
|
+
onResolved,
|
|
155
|
+
onRejection,
|
|
156
|
+
preCheck,
|
|
157
|
+
color,
|
|
158
|
+
swerv,
|
|
159
|
+
darkMode,
|
|
160
|
+
returnLink,
|
|
161
|
+
preferredPlatform,
|
|
162
|
+
autoFetch,
|
|
163
|
+
inferenceData,
|
|
164
|
+
textLayout,
|
|
165
|
+
textColor,
|
|
166
|
+
proofMode,
|
|
167
|
+
webpageName,
|
|
168
|
+
debug,
|
|
169
|
+
testMode,
|
|
170
|
+
requestData,
|
|
171
|
+
onPress,
|
|
172
|
+
primaryAuthOnly,
|
|
173
|
+
useNewWelcomeFlow
|
|
174
|
+
});
|
|
175
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactNative.View, null, /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
|
|
176
|
+
style: [styles.button, buttonType === 'pill' && styles.pillButton, hasStroke && styles.strokedButton, {
|
|
177
|
+
width: buttonWidth,
|
|
178
|
+
height: buttonHeight
|
|
179
|
+
}, swerv && styles.swervButton, !enabled && styles.disabledButton],
|
|
180
|
+
onPress: handlePress,
|
|
181
|
+
disabled: !enabled || isLoading,
|
|
182
|
+
onPressIn: () => setIsPressed(true),
|
|
183
|
+
onPressOut: () => setIsPressed(false)
|
|
184
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNativeLinearGradient.default, {
|
|
185
|
+
colors: ['#f5e7c1', '#C7A047', '#8B6914'],
|
|
186
|
+
start: {
|
|
187
|
+
x: 0,
|
|
188
|
+
y: 0
|
|
189
|
+
},
|
|
190
|
+
end: {
|
|
191
|
+
x: 1,
|
|
192
|
+
y: 0
|
|
193
|
+
},
|
|
194
|
+
style: {
|
|
195
|
+
position: 'absolute',
|
|
196
|
+
left: 0,
|
|
197
|
+
right: 0,
|
|
198
|
+
top: 0,
|
|
199
|
+
bottom: 0,
|
|
200
|
+
borderRadius: buttonType === 'pill' ? 24 : 8
|
|
201
|
+
}
|
|
202
|
+
}), isLoading ? /*#__PURE__*/_react.default.createElement(_reactNative.ActivityIndicator, {
|
|
203
|
+
size: "small",
|
|
204
|
+
color: "#FFFFFF"
|
|
205
|
+
}) : /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
206
|
+
style: styles.buttonContent
|
|
207
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
208
|
+
style: styles.logoContainer
|
|
209
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
|
|
210
|
+
source: _assetRegistry.BRAND_IMAGES.onairosLogoAlt,
|
|
211
|
+
style: styles.logoImage,
|
|
212
|
+
resizeMode: "contain"
|
|
213
|
+
})), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
214
|
+
style: [styles.buttonText, {
|
|
215
|
+
color: '#FFFFFF'
|
|
216
|
+
}]
|
|
217
|
+
}, getButtonText())))), useNewWelcomeFlow ? /*#__PURE__*/_react.default.createElement(_WelcomeScreen.default, {
|
|
218
|
+
visible: showOnboarding,
|
|
219
|
+
onClose: handleOnboardingClose,
|
|
220
|
+
onComplete: handleOnboardingComplete
|
|
221
|
+
}) : /*#__PURE__*/_react.default.createElement(_UniversalOnboarding.UniversalOnboarding, {
|
|
222
|
+
visible: showOnboarding,
|
|
223
|
+
onClose: handleOnboardingClose,
|
|
224
|
+
AppName: AppName,
|
|
225
|
+
requestData: requestData || {
|
|
226
|
+
Small: {
|
|
227
|
+
type: 'Small',
|
|
228
|
+
descriptions: 'Basic tier',
|
|
229
|
+
reward: 'Free access'
|
|
230
|
+
},
|
|
231
|
+
Medium: {
|
|
232
|
+
type: 'Medium',
|
|
233
|
+
descriptions: 'Standard tier',
|
|
234
|
+
reward: 'Premium features'
|
|
235
|
+
},
|
|
236
|
+
Large: {
|
|
237
|
+
type: 'Large',
|
|
238
|
+
descriptions: 'Premium tier',
|
|
239
|
+
reward: 'Full personalization'
|
|
240
|
+
}
|
|
241
|
+
},
|
|
242
|
+
returnLink: returnLink || 'onairosevents://auth/callback',
|
|
243
|
+
onComplete: handleOnboardingComplete,
|
|
244
|
+
debug: debug,
|
|
245
|
+
test: testMode,
|
|
246
|
+
preferredPlatform: preferredPlatform,
|
|
247
|
+
primaryAuthOnly: primaryAuthOnly
|
|
248
|
+
}));
|
|
249
|
+
});
|
|
250
|
+
const styles = _reactNative.StyleSheet.create({
|
|
251
|
+
button: {
|
|
252
|
+
flexDirection: 'row',
|
|
253
|
+
alignItems: 'center',
|
|
254
|
+
justifyContent: 'center',
|
|
255
|
+
paddingVertical: 12,
|
|
256
|
+
paddingHorizontal: 16,
|
|
257
|
+
borderRadius: 8,
|
|
258
|
+
shadowColor: '#000',
|
|
259
|
+
shadowOffset: {
|
|
260
|
+
width: 0,
|
|
261
|
+
height: 2
|
|
262
|
+
},
|
|
263
|
+
shadowOpacity: 0.2,
|
|
264
|
+
shadowRadius: 4,
|
|
265
|
+
elevation: 3,
|
|
266
|
+
overflow: 'hidden'
|
|
267
|
+
},
|
|
268
|
+
buttonContent: {
|
|
269
|
+
flexDirection: 'row',
|
|
270
|
+
alignItems: 'center',
|
|
271
|
+
justifyContent: 'center'
|
|
272
|
+
},
|
|
273
|
+
logoContainer: {
|
|
274
|
+
width: 24,
|
|
275
|
+
height: 24,
|
|
276
|
+
// borderRadius: 12, // Removed to eliminate circle shape
|
|
277
|
+
// backgroundColor: '#FFFFFF', // Removed to eliminate white background
|
|
278
|
+
alignItems: 'center',
|
|
279
|
+
justifyContent: 'center',
|
|
280
|
+
marginRight: 4
|
|
281
|
+
},
|
|
282
|
+
logoText: {
|
|
283
|
+
color: '#C7A047',
|
|
284
|
+
fontWeight: 'bold',
|
|
285
|
+
fontSize: 14
|
|
286
|
+
},
|
|
287
|
+
logoImage: {
|
|
288
|
+
width: 20,
|
|
289
|
+
height: 20
|
|
290
|
+
},
|
|
291
|
+
pillButton: {
|
|
292
|
+
borderRadius: 24
|
|
293
|
+
},
|
|
294
|
+
strokedButton: {
|
|
295
|
+
backgroundColor: 'transparent',
|
|
296
|
+
borderWidth: 1
|
|
297
|
+
},
|
|
298
|
+
swervButton: {
|
|
299
|
+
transform: [{
|
|
300
|
+
rotate: '-2deg'
|
|
301
|
+
}]
|
|
302
|
+
},
|
|
303
|
+
disabledButton: {
|
|
304
|
+
opacity: 0.6
|
|
305
|
+
},
|
|
306
|
+
buttonText: {
|
|
307
|
+
fontSize: 16,
|
|
308
|
+
fontWeight: '600',
|
|
309
|
+
textAlign: 'center'
|
|
310
|
+
}
|
|
311
|
+
});
|
|
312
|
+
var _default = exports.default = OnairosButton;
|
|
313
|
+
//# sourceMappingURL=OnairosButton.js.map
|
|
@@ -1,12 +1,130 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
function _0x3144(_0x54f70b,_0x314433){_0x54f70b=_0x54f70b-0x0;const _0x5b6ad4=_0x54f7();let _0x20ad9b=_0x5b6ad4[_0x54f70b];return _0x20ad9b;}function _0x54f7(){const _0x3f4c02=['defineProperty','__esModule','OnairosSignInButton','Yjhhx','WvbsL','object','function','default','tlpWR','NOjhF','uvweE','User\x20closed\x20welcome\x20screen','EnJNp','PKkqY','KScWn','DSHjp','nnOHF','XeUCX','has','set','vwyIj','kjaxw','get','YuJzj','getOwnPropertyDescriptor','nPUtH','hasOwnProperty','call','#000','🔑\x20Received\x20placeholder\x20token\x20from\x20WelcomeScreen,\x20completing\x20sign-in','🔑\x20OnairosSignInButton:\x20Returning\x20JWT\x20token\x20with\x20email:','LHPZV','hFXbF','🔍\x20OnairosSignInButton:\x20handleWelcomeComplete\x20called\x20with:','🔍\x20OnairosSignInButton:\x20Is\x20JWT\x20token?','🔑\x20Received\x20JWT\x20token\x20from\x20WelcomeScreen,\x20completing\x20sign-in','🔑\x20OnairosSignInButton:\x20Returning\x20token\x20with\x20email:','SlNOw','🔘\x20OnairosSignInButton\x20pressed,\x20showing\x20WelcomeScreen','🔘\x20showWelcomeScreen\x20state\x20set\x20to\x20true','useState','useCallback','ysMnx','BkqPp','dXaPM','gqBuo','mqRqx','HvjNq','fQjjC','getItem','user_email','then','log','pFUHO','puxbF','XqvsB','includes','length','Shzqn','CARyu','iGKKV','ImBWs','cEppl','trjZz','pwbQu','LMjge','YFmgI','SmZBb','aUTDS','createElement','container','button','dJxDo','zCqKn','ucVGF','uNdrs','RubQt','erzGr','isbDL','BDlRc','WgpQp','triggerHaptic','HapticType','BUTTON_PRESS','etUsO','View','contentRow','Image','logo','Text','SEthq','StyleSheet','create','center','row','600'];_0x54f7=function(){return _0x3f4c02;};return _0x54f7();}Object[_0x3144(0x0)](exports,_0x3144(0x1),{'value':!![]}),exports[_0x3144(0x2)]=void 0x0;var _react=_interopRequireWildcard(__ONAIROS_REQ_FUNC__(0x0)),_reactNative=__ONAIROS_REQ_FUNC__(0x1),_asyncStorage=_interopRequireDefault(__ONAIROS_REQ_FUNC__(0x2)),_WelcomeScreen=_interopRequireDefault(__ONAIROS_REQ_FUNC__(0x3)),_haptics=__ONAIROS_REQ_FUNC__(0x4),_assetRegistry=__ONAIROS_REQ_FUNC__(0x5);function _interopRequireDefault(_0x36a043){return _0x36a043&&_0x36a043[_0x3144(0x1)]?_0x36a043:{'default':_0x36a043};}function _interopRequireWildcard(_0x29f97d,_0x401f46){const _0x133bd1={'ZytTW':function(_0x40029a,_0x3fbc65){return _0x40029a(_0x3fbc65);},'vwyIj':function(_0x1db14d,_0xb708f9){return _0x1db14d===_0xb708f9;},'kjaxw':function(_0x339def,_0x5477dc){return _0x339def!=_0x5477dc;},'YuJzj':function(_0x57d5dd,_0x170c2d){return _0x57d5dd!==_0x170c2d;},'zlDtR':function(_0x3c6421,_0x4f191b,_0x2e3ab8,_0x3e516d){return _0x3c6421(_0x4f191b,_0x2e3ab8,_0x3e516d);},'tlpWR':function(_0x45e9e4,_0x148bee){return _0x45e9e4===_0x148bee;},'NOjhF':_0x3144(0x3),'uvweE':_0x3144(0x4),'EnJNp':function(_0x3754c5,_0x2c9892){return _0x3754c5&&_0x2c9892;},'PKkqY':function(_0x5ac2b6,_0xe71720){return _0x5ac2b6===_0xe71720;},'KScWn':_0x3144(0x5),'DSHjp':function(_0x5e41d8,_0x314019){return _0x5e41d8!=_0x314019;},'nnOHF':_0x3144(0x6),'XeUCX':'ehAqq','nPUtH':_0x3144(0x7),'TvyVF':function(_0x23ba60,_0x3c3028,_0x10c3f9,_0x47832f){return _0x23ba60(_0x3c3028,_0x10c3f9,_0x47832f);}};if(_0x133bd1['nnOHF']==typeof WeakMap)var _0x1e74f1=new WeakMap(),_0x11070e=new WeakMap();return(_interopRequireWildcard=function(_0x4584c8,_0x3bee9d){if(_0x133bd1[_0x3144(0x8)](_0x133bd1[_0x3144(0x9)],_0x133bd1[_0x3144(0xa)]))_0x133bd1['ZytTW'](_0xef7915,_0x3144(0xb));else{if(_0x133bd1[_0x3144(0xc)](!_0x3bee9d,_0x4584c8)&&_0x4584c8[_0x3144(0x1)])return _0x4584c8;var _0x463743,_0xe68f89,_0x484a49={'__proto__':null,'default':_0x4584c8};if(_0x133bd1[_0x3144(0xd)](null,_0x4584c8)||_0x133bd1[_0x3144(0xe)]!=typeof _0x4584c8&&_0x133bd1[_0x3144(0xf)](_0x133bd1[_0x3144(0x10)],typeof _0x4584c8))return _0x484a49;if(_0x463743=_0x3bee9d?_0x11070e:_0x1e74f1){if(_0x133bd1[_0x3144(0x11)]===_0x133bd1['XeUCX']){if(_0x463743[_0x3144(0x12)](_0x4584c8))return _0x463743['get'](_0x4584c8);_0x463743[_0x3144(0x13)](_0x4584c8,_0x484a49);}else{if(!_0x40292b&&_0x5705fb&&_0x3269bd['__esModule'])return _0x3ae241;var _0x477ad9,_0x22637a,_0x30c6bb={'__proto__':null,'default':_0xc0aee9};if(_0x133bd1[_0x3144(0x14)](null,_0x17b68b)||_0x133bd1[_0x3144(0x15)](_0x3144(0x5),typeof _0x3458be)&&_0x3144(0x6)!=typeof _0x5b2173)return _0x30c6bb;if(_0x477ad9=_0x62ea43?_0x5e15a9:_0x56b9e4){if(_0x477ad9[_0x3144(0x12)](_0x1faae9))return _0x477ad9[_0x3144(0x16)](_0x5100de);_0x477ad9[_0x3144(0x13)](_0x5e5cc2,_0x30c6bb);}for(const _0x44a9fa in _0x314758)_0x133bd1[_0x3144(0x17)](_0x3144(0x7),_0x44a9fa)&&{}['hasOwnProperty']['call'](_0x3b1fbb,_0x44a9fa)&&((_0x22637a=(_0x477ad9=_0x363d6f['defineProperty'])&&_0x3cbae6[_0x3144(0x18)](_0x46c51c,_0x44a9fa))&&(_0x22637a[_0x3144(0x16)]||_0x22637a[_0x3144(0x13)])?_0x133bd1['zlDtR'](_0x477ad9,_0x30c6bb,_0x44a9fa,_0x22637a):_0x30c6bb[_0x44a9fa]=_0x201458[_0x44a9fa]);return _0x30c6bb;}}for(const _0x74c559 in _0x4584c8)_0x133bd1[_0x3144(0x19)]!==_0x74c559&&{}[_0x3144(0x1a)][_0x3144(0x1b)](_0x4584c8,_0x74c559)&&((_0xe68f89=(_0x463743=Object[_0x3144(0x0)])&&Object['getOwnPropertyDescriptor'](_0x4584c8,_0x74c559))&&(_0xe68f89[_0x3144(0x16)]||_0xe68f89[_0x3144(0x13)])?_0x133bd1['TvyVF'](_0x463743,_0x484a49,_0x74c559,_0xe68f89):_0x484a49[_0x74c559]=_0x4584c8[_0x74c559]);return _0x484a49;}})(_0x29f97d,_0x401f46);}const OnairosSignInButton=({AppName:_0x45d5b7,buttonWidth:buttonWidth=0x118,buttonHeight:buttonHeight=0x2c,color:color='#D4A536',textColor:textColor=_0x3144(0x1c),onResolved:_0x1bf748,onRejection:_0x339462,autoFocusEmailInput:autoFocusEmailInput=!![]})=>{const _0x48ba1e={'ysMnx':function(_0x49d469,_0x48d993,_0x5050f4){return _0x49d469(_0x48d993,_0x5050f4);},'BkqPp':_0x3144(0x1d),'dXaPM':_0x3144(0x1e),'gqBuo':_0x3144(0x1f),'mqRqx':function(_0x2e6635,_0x46041f){return _0x2e6635===_0x46041f;},'HvjNq':'cixTz','fQjjC':_0x3144(0x20),'XqvsB':_0x3144(0x21),'wxhsa':_0x3144(0x22),'Shzqn':function(_0x3d10ef,_0x20f139){return _0x3d10ef(_0x20f139);},'CARyu':_0x3144(0x23),'AbUjS':'user_email','Evrmy':_0x3144(0x24),'BINTe':'PXrRP','YFmgI':function(_0x5c0505,_0x3635ed){return _0x5c0505(_0x3635ed);},'SmZBb':function(_0x459897,_0x555505){return _0x459897(_0x555505);},'aUTDS':_0x3144(0xb),'uNdrs':function(_0x12b04c,_0x147fb8){return _0x12b04c||_0x147fb8;},'RubQt':function(_0x8f7abb,_0x3c38b3,_0x23f881){return _0x8f7abb(_0x3c38b3,_0x23f881);},'dJxDo':function(_0x1cf6db,_0xef85fd){return _0x1cf6db===_0xef85fd;},'zCqKn':_0x3144(0x25),'WgpQp':_0x3144(0x26),'etUsO':_0x3144(0x27),'Ssixz':'contain','SEthq':'Sign\x20in\x20with\x20Onairos'},[_0x1175c3,_0x40bc4b]=(0x0,_react[_0x3144(0x28)])(![]),[_0x364e08,_0x2a1c54]=(0x0,_react[_0x3144(0x28)])(''),_0x32bee7=(0x0,_react[_0x3144(0x29)])((_0x40a870,_0xa52161)=>{const _0x233977={'pFUHO':function(_0x5a384d,_0x3ed1f0,_0x5f2a2d){return _0x48ba1e[_0x3144(0x2a)](_0x5a384d,_0x3ed1f0,_0x5f2a2d);},'puxbF':_0x48ba1e[_0x3144(0x2b)],'xGkQW':_0x3144(0x24),'iGKKV':_0x48ba1e[_0x3144(0x2c)],'oXMkg':function(_0x55e02d,_0xa8fa1a){return _0x55e02d===_0xa8fa1a;},'ImBWs':_0x48ba1e[_0x3144(0x2d)]};if(_0x48ba1e[_0x3144(0x2e)](_0x48ba1e[_0x3144(0x2f)],_0x48ba1e[_0x3144(0x30)])){if(_0x2639f9)_0x242d14['log']('🔑\x20Received\x20JWT\x20token\x20from\x20WelcomeScreen,\x20completing\x20sign-in'),_0x367e04[_0x3144(0x7)][_0x3144(0x31)](_0x3144(0x32))[_0x3144(0x33)](_0x210f48=>{const _0x431920=_0x54011c||_0x210f48||_0x5d8270;_0x3498f0[_0x3144(0x34)]('🔑\x20OnairosSignInButton:\x20Returning\x20JWT\x20token\x20with\x20email:',_0x431920),_0x233977[_0x3144(0x35)](_0x1d1299,_0x516dfb,_0x431920);});else{_0x40e268['log'](_0x233977[_0x3144(0x36)]);const _0x4310f1=_0x5f265e||_0x4bde3d;_0x58771a[_0x3144(0x34)](_0x233977['xGkQW'],_0x4310f1),_0x301c31(_0x6646e3,_0x4310f1);}}else{console[_0x3144(0x34)](_0x48ba1e[_0x3144(0x37)],{'token':_0x40a870,'email':_0xa52161});const _0xb0b10a=_0x40a870&&_0x40a870[_0x3144(0x38)]('.')&&_0x40a870['split']('.')[_0x3144(0x39)]===0x3;console[_0x3144(0x34)](_0x48ba1e['wxhsa'],_0xb0b10a),_0x48ba1e[_0x3144(0x3a)](_0x40bc4b,![]);if(_0x1bf748){if(_0xb0b10a)console[_0x3144(0x34)](_0x48ba1e[_0x3144(0x3b)]),_asyncStorage[_0x3144(0x7)]['getItem'](_0x48ba1e['AbUjS'])[_0x3144(0x33)](_0x1fd2a7=>{const _0x3804a7={'trjZz':_0x233977[_0x3144(0x3c)],'pwbQu':function(_0x225dc8,_0xbd6d44,_0x4682b6){return _0x233977['pFUHO'](_0x225dc8,_0xbd6d44,_0x4682b6);}};if(_0x233977['oXMkg'](_0x233977[_0x3144(0x3d)],_0x3144(0x3e))){const _0xed1875=_0x165b75||_0x8c8341||_0x4eec89;_0x44b58c[_0x3144(0x34)](_0x3804a7[_0x3144(0x3f)],_0xed1875),_0x3804a7[_0x3144(0x40)](_0x10b3f5,_0x438aec,_0xed1875);}else{const _0x21af66=_0xa52161||_0x1fd2a7||_0x364e08;console[_0x3144(0x34)](_0x233977[_0x3144(0x3c)],_0x21af66),_0x233977[_0x3144(0x35)](_0x1bf748,_0x40a870,_0x21af66);}});else{console[_0x3144(0x34)](_0x3144(0x1d));const _0x270ef3=_0xa52161||_0x364e08;console[_0x3144(0x34)](_0x48ba1e['Evrmy'],_0x270ef3),_0x1bf748(_0x40a870,_0x270ef3);}}}},[_0x1bf748,_0x364e08]),_0x3ed990=(0x0,_react['useCallback'])(()=>{if(_0x48ba1e['BINTe']!==_0x3144(0x41))_0x48ba1e[_0x3144(0x42)](_0x40bc4b,![]),_0x339462&&_0x48ba1e[_0x3144(0x43)](_0x339462,_0x48ba1e[_0x3144(0x44)]);else{if(_0xdc9735['has'](_0x106424))return _0xd1e938['get'](_0x2074e0);_0x55d0fa[_0x3144(0x13)](_0x59f92b,_0x5d65a2);}},[_0x339462]);return _react[_0x3144(0x7)][_0x3144(0x45)](_reactNative['View'],{'style':styles[_0x3144(0x46)]},_react[_0x3144(0x7)][_0x3144(0x45)](_reactNative['TouchableOpacity'],{'style':[styles[_0x3144(0x47)],{'width':buttonWidth,'height':buttonHeight,'backgroundColor':color}],'onPress':()=>{if(_0x48ba1e[_0x3144(0x48)](_0x48ba1e[_0x3144(0x49)],_0x3144(0x4a))){const _0x4a9fa3={'erzGr':function(_0x5858a0,_0xe04253){return _0x48ba1e[_0x3144(0x4b)](_0x5858a0,_0xe04253);},'isbDL':_0x48ba1e[_0x3144(0x2c)],'BDlRc':function(_0x30eeb1,_0x4dfb9b,_0x2672e4){return _0x48ba1e[_0x3144(0x4c)](_0x30eeb1,_0x4dfb9b,_0x2672e4);}};_0x4e11c4[_0x3144(0x34)](_0x48ba1e[_0x3144(0x3b)]),_0x2b0562['default'][_0x3144(0x31)](_0x3144(0x32))[_0x3144(0x33)](_0x2da026=>{const _0x428522=_0x4a9fa3[_0x3144(0x4d)](_0x234908,_0x2da026)||_0x252bfe;_0x13de60[_0x3144(0x34)](_0x4a9fa3[_0x3144(0x4e)],_0x428522),_0x4a9fa3[_0x3144(0x4f)](_0x5518ec,_0x4ec29b,_0x428522);});}else console[_0x3144(0x34)](_0x48ba1e[_0x3144(0x50)]),(0x0,_haptics[_0x3144(0x51)])(_haptics[_0x3144(0x52)][_0x3144(0x53)]),_0x40bc4b(!![]),console[_0x3144(0x34)](_0x48ba1e[_0x3144(0x54)]);},'activeOpacity':0.85},_react[_0x3144(0x7)][_0x3144(0x45)](_reactNative[_0x3144(0x55)],{'style':styles[_0x3144(0x56)]},_react[_0x3144(0x7)][_0x3144(0x45)](_reactNative[_0x3144(0x57)],{'source':_assetRegistry['BRAND_IMAGES']['onairosLogoAlt'],'style':styles[_0x3144(0x58)],'resizeMode':_0x48ba1e['Ssixz'],'accessibilityLabel':'Onairos\x20logo'}),_react[_0x3144(0x7)]['createElement'](_reactNative[_0x3144(0x59)],{'style':[styles['buttonText'],{'color':textColor}]},_0x48ba1e[_0x3144(0x5a)]))),_react[_0x3144(0x7)][_0x3144(0x45)](_WelcomeScreen[_0x3144(0x7)],{'visible':_0x1175c3,'onClose':_0x3ed990,'onComplete':_0x32bee7}));};exports[_0x3144(0x2)]=OnairosSignInButton;const styles=_reactNative[_0x3144(0x5b)][_0x3144(0x5c)]({'button':{'borderRadius':0x18,'justifyContent':_0x3144(0x5d),'alignItems':_0x3144(0x5d),'shadowColor':_0x3144(0x1c),'shadowOffset':{'width':0x0,'height':0x2},'shadowOpacity':0.1,'shadowRadius':0x4,'elevation':0x2,'marginVertical':0x8},'contentRow':{'flexDirection':_0x3144(0x5e),'alignItems':_0x3144(0x5d),'justifyContent':_0x3144(0x5d)},'logo':{'width':0x1a,'height':0x1a,'marginRight':0xa},'buttonText':{'fontSize':0x10,'fontWeight':_0x3144(0x5f),'textAlign':_0x3144(0x5d)},'container':{}});
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.OnairosSignInButton = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _asyncStorage = _interopRequireDefault(require("@react-native-async-storage/async-storage"));
|
|
10
|
+
var _WelcomeScreen = _interopRequireDefault(require("./WelcomeScreen"));
|
|
11
|
+
var _haptics = require("../utils/haptics");
|
|
12
|
+
var _assetRegistry = require("../utils/assetRegistry");
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
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); }
|
|
15
|
+
const OnairosSignInButton = ({
|
|
16
|
+
AppName,
|
|
17
|
+
buttonWidth = 280,
|
|
18
|
+
buttonHeight = 44,
|
|
19
|
+
color = '#D4A536',
|
|
20
|
+
textColor = '#000',
|
|
21
|
+
onResolved,
|
|
22
|
+
onRejection,
|
|
23
|
+
autoFocusEmailInput = true
|
|
24
|
+
}) => {
|
|
25
|
+
const [showWelcomeScreen, setShowWelcomeScreen] = (0, _react.useState)(false);
|
|
26
|
+
const [userEmail, setUserEmail] = (0, _react.useState)('');
|
|
27
|
+
const handleWelcomeComplete = (0, _react.useCallback)((token, email) => {
|
|
28
|
+
console.log('🔍 OnairosSignInButton: handleWelcomeComplete called with:', {
|
|
29
|
+
token,
|
|
30
|
+
email
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
// Check if we received a JWT token (real authentication) or just a placeholder token
|
|
34
|
+
const isJWTToken = token && token.includes('.') && token.split('.').length === 3;
|
|
35
|
+
console.log('🔍 OnairosSignInButton: Is JWT token?', isJWTToken);
|
|
36
|
+
|
|
37
|
+
// Close the welcome screen
|
|
38
|
+
setShowWelcomeScreen(false);
|
|
39
|
+
if (onResolved) {
|
|
40
|
+
// For JWT tokens, use the provided email or get from storage
|
|
41
|
+
if (isJWTToken) {
|
|
42
|
+
console.log('🔑 Received JWT token from WelcomeScreen, completing sign-in');
|
|
43
|
+
_asyncStorage.default.getItem('user_email').then(storedEmail => {
|
|
44
|
+
const emailToUse = email || storedEmail || userEmail;
|
|
45
|
+
console.log('🔑 OnairosSignInButton: Returning JWT token with email:', emailToUse);
|
|
46
|
+
onResolved(token, emailToUse);
|
|
47
|
+
});
|
|
48
|
+
} else {
|
|
49
|
+
// For placeholder tokens, still complete the flow with the provided email
|
|
50
|
+
console.log('🔑 Received placeholder token from WelcomeScreen, completing sign-in');
|
|
51
|
+
const emailToUse = email || userEmail;
|
|
52
|
+
console.log('🔑 OnairosSignInButton: Returning token with email:', emailToUse);
|
|
53
|
+
onResolved(token, emailToUse);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}, [onResolved, userEmail]);
|
|
57
|
+
const handleWelcomeCancel = (0, _react.useCallback)(() => {
|
|
58
|
+
setShowWelcomeScreen(false);
|
|
59
|
+
if (onRejection) {
|
|
60
|
+
onRejection('User closed welcome screen');
|
|
61
|
+
}
|
|
62
|
+
}, [onRejection]);
|
|
63
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
64
|
+
style: styles.container
|
|
65
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
|
|
66
|
+
style: [styles.button, {
|
|
67
|
+
width: buttonWidth,
|
|
68
|
+
height: buttonHeight,
|
|
69
|
+
backgroundColor: color
|
|
70
|
+
}],
|
|
71
|
+
onPress: () => {
|
|
72
|
+
console.log('🔘 OnairosSignInButton pressed, showing WelcomeScreen');
|
|
73
|
+
(0, _haptics.triggerHaptic)(_haptics.HapticType.BUTTON_PRESS);
|
|
74
|
+
setShowWelcomeScreen(true);
|
|
75
|
+
console.log('🔘 showWelcomeScreen state set to true');
|
|
76
|
+
},
|
|
77
|
+
activeOpacity: 0.85
|
|
78
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
79
|
+
style: styles.contentRow
|
|
80
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
|
|
81
|
+
source: _assetRegistry.BRAND_IMAGES.onairosLogoAlt,
|
|
82
|
+
style: styles.logo,
|
|
83
|
+
resizeMode: "contain",
|
|
84
|
+
accessibilityLabel: "Onairos logo"
|
|
85
|
+
}), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
86
|
+
style: [styles.buttonText, {
|
|
87
|
+
color: textColor
|
|
88
|
+
}]
|
|
89
|
+
}, "Sign in with Onairos"))), /*#__PURE__*/_react.default.createElement(_WelcomeScreen.default, {
|
|
90
|
+
visible: showWelcomeScreen,
|
|
91
|
+
onClose: handleWelcomeCancel,
|
|
92
|
+
onComplete: handleWelcomeComplete
|
|
93
|
+
}));
|
|
94
|
+
};
|
|
95
|
+
exports.OnairosSignInButton = OnairosSignInButton;
|
|
96
|
+
const styles = _reactNative.StyleSheet.create({
|
|
97
|
+
button: {
|
|
98
|
+
borderRadius: 24,
|
|
99
|
+
justifyContent: 'center',
|
|
100
|
+
alignItems: 'center',
|
|
101
|
+
shadowColor: '#000',
|
|
102
|
+
shadowOffset: {
|
|
103
|
+
width: 0,
|
|
104
|
+
height: 2
|
|
105
|
+
},
|
|
106
|
+
shadowOpacity: 0.1,
|
|
107
|
+
shadowRadius: 4,
|
|
108
|
+
elevation: 2,
|
|
109
|
+
marginVertical: 8
|
|
110
|
+
},
|
|
111
|
+
contentRow: {
|
|
112
|
+
flexDirection: 'row',
|
|
113
|
+
alignItems: 'center',
|
|
114
|
+
justifyContent: 'center'
|
|
115
|
+
},
|
|
116
|
+
logo: {
|
|
117
|
+
width: 26,
|
|
118
|
+
height: 26,
|
|
119
|
+
marginRight: 10
|
|
120
|
+
},
|
|
121
|
+
buttonText: {
|
|
122
|
+
fontSize: 16,
|
|
123
|
+
fontWeight: '600',
|
|
124
|
+
textAlign: 'center'
|
|
125
|
+
},
|
|
126
|
+
container: {
|
|
127
|
+
// Add any necessary styles for the container
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
//# sourceMappingURL=OnairosSignInButton.js.map
|