@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,35 +1,201 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Centralized Asset Registry for Onairos React Native SDK
|
|
3
|
+
*
|
|
4
|
+
* This file consolidates ALL require() statements for assets (images, icons, animations).
|
|
5
|
+
* This allows the obfuscation script to apply MAXIMUM obfuscation to all other files
|
|
6
|
+
* while only this single file receives lighter obfuscation.
|
|
7
|
+
*
|
|
8
|
+
* SECURITY BENEFIT:
|
|
9
|
+
* - Before: 12 files with lighter obfuscation (30% control flow flattening)
|
|
10
|
+
* - After: Only 1 file with lighter obfuscation, 11 files with MAXIMUM (75%)
|
|
11
|
+
*
|
|
12
|
+
* @module assetRegistry
|
|
13
|
+
*/
|
|
1
14
|
|
|
2
|
-
//
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
15
|
+
// ============================================================================
|
|
16
|
+
// PLATFORM ICONS
|
|
17
|
+
// ============================================================================
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Platform icons for social media and LLM platforms
|
|
21
|
+
*/
|
|
22
|
+
export const PLATFORM_ICONS = {
|
|
23
|
+
// Social Media Platforms
|
|
24
|
+
youtube: require('../assets/icons/YouTubeicon3.png'),
|
|
25
|
+
youtube2: require('../assets/icons/YouTubeicon2.png'),
|
|
26
|
+
reddit: require('../assets/icons/Redditicon.png'),
|
|
27
|
+
linkedin: require('../assets/icons/Linkedinicon.png'),
|
|
28
|
+
instagram: require('../assets/icons/instagram.png'),
|
|
29
|
+
facebook: require('../assets/icons/Facebookicon.png'),
|
|
30
|
+
pinterest: require('../assets/icons/pinterest.png'),
|
|
31
|
+
gmail: require('../assets/icons/Gmail.png'),
|
|
32
|
+
twitter: require('../assets/icons/twitter.jpg'),
|
|
33
|
+
farcaster: require('../assets/icons/farcaster.png'),
|
|
34
|
+
// LLM Platforms
|
|
35
|
+
chatgpt: require('../assets/icons/chatgpt.png'),
|
|
36
|
+
claude: require('../assets/icons/claude.png'),
|
|
37
|
+
grok: require('../assets/icons/grok.png'),
|
|
38
|
+
gemini: require('../assets/icons/gemini.png'),
|
|
39
|
+
// Streaming Platforms
|
|
40
|
+
netflix: require('../assets/icons/netflix.png'),
|
|
41
|
+
spotify: require('../assets/icons/spotify.png'),
|
|
42
|
+
// Default/Fallback
|
|
43
|
+
default: require('../assets/icons/swerv_logo.png')
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* Get platform icon by platform name (case-insensitive)
|
|
47
|
+
* @param platform - Platform name
|
|
48
|
+
* @returns Image source for the platform icon
|
|
49
|
+
*/
|
|
50
|
+
export const getPlatformIconFromRegistry = platform => {
|
|
51
|
+
const platformLower = platform.toLowerCase();
|
|
52
|
+
|
|
53
|
+
// Handle aliases
|
|
54
|
+
switch (platformLower) {
|
|
55
|
+
case 'youtube':
|
|
56
|
+
return PLATFORM_ICONS.youtube;
|
|
57
|
+
case 'reddit':
|
|
58
|
+
return PLATFORM_ICONS.reddit;
|
|
59
|
+
case 'linkedin':
|
|
60
|
+
return PLATFORM_ICONS.linkedin;
|
|
61
|
+
case 'instagram':
|
|
62
|
+
return PLATFORM_ICONS.instagram;
|
|
63
|
+
case 'facebook':
|
|
64
|
+
return PLATFORM_ICONS.facebook;
|
|
65
|
+
case 'pinterest':
|
|
66
|
+
return PLATFORM_ICONS.pinterest;
|
|
67
|
+
case 'gmail':
|
|
68
|
+
case 'email':
|
|
69
|
+
return PLATFORM_ICONS.gmail;
|
|
70
|
+
case 'twitter':
|
|
71
|
+
case 'x':
|
|
72
|
+
return PLATFORM_ICONS.twitter;
|
|
73
|
+
case 'farcaster':
|
|
74
|
+
return PLATFORM_ICONS.farcaster;
|
|
75
|
+
case 'chatgpt':
|
|
76
|
+
case 'openai':
|
|
77
|
+
return PLATFORM_ICONS.chatgpt;
|
|
78
|
+
case 'claude':
|
|
79
|
+
case 'anthropic':
|
|
80
|
+
return PLATFORM_ICONS.claude;
|
|
81
|
+
case 'grok':
|
|
82
|
+
return PLATFORM_ICONS.grok;
|
|
83
|
+
case 'gemini':
|
|
84
|
+
case 'google_ai':
|
|
85
|
+
return PLATFORM_ICONS.gemini;
|
|
86
|
+
case 'netflix':
|
|
87
|
+
return PLATFORM_ICONS.netflix;
|
|
88
|
+
case 'spotify':
|
|
89
|
+
return PLATFORM_ICONS.spotify;
|
|
90
|
+
default:
|
|
91
|
+
return PLATFORM_ICONS.default;
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
// ============================================================================
|
|
96
|
+
// PERSONA IMAGES
|
|
97
|
+
// ============================================================================
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Persona level images (1-5 levels of persona completion)
|
|
101
|
+
*/
|
|
102
|
+
export const PERSONA_IMAGES = {
|
|
103
|
+
level1: require('../assets/images/persona1.png'),
|
|
104
|
+
level2: require('../assets/images/persona2.png'),
|
|
105
|
+
level3: require('../assets/images/persona3.png'),
|
|
106
|
+
level4: require('../assets/images/persona4.png'),
|
|
107
|
+
level5: require('../assets/images/persona5.png')
|
|
108
|
+
};
|
|
109
|
+
/**
|
|
110
|
+
* Get persona image by level
|
|
111
|
+
* @param level - Persona level (1-5)
|
|
112
|
+
* @returns Image source for the persona
|
|
113
|
+
*/
|
|
114
|
+
export const getPersonaImage = level => {
|
|
115
|
+
const key = `level${level}`;
|
|
116
|
+
return PERSONA_IMAGES[key] || PERSONA_IMAGES.level1;
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
// ============================================================================
|
|
120
|
+
// BRAND / LOGO IMAGES
|
|
121
|
+
// ============================================================================
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* Brand and logo images
|
|
125
|
+
*/
|
|
126
|
+
export const BRAND_IMAGES = {
|
|
127
|
+
onairosLogo: require('../assets/images/OnairosNewLogo.png'),
|
|
128
|
+
onairosLogoAlt: require('../assets/images/onairos_logo.png'),
|
|
129
|
+
googleLogo: require('../assets/images/Googlelogo.png'),
|
|
130
|
+
faceIdLogo: require('../assets/images/Face_ID_logo.png'),
|
|
131
|
+
enochIcon: require('../assets/images/Enochicon1.png')
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
// ============================================================================
|
|
135
|
+
// ANIMATIONS
|
|
136
|
+
// ============================================================================
|
|
137
|
+
|
|
138
|
+
/**
|
|
139
|
+
* Lottie animation files
|
|
140
|
+
*/
|
|
141
|
+
export const ANIMATIONS = {
|
|
142
|
+
loader: require('../assets/animations/loaderani.json'),
|
|
143
|
+
persona: require('../assets/animations/persona-animation.json')
|
|
144
|
+
};
|
|
145
|
+
|
|
146
|
+
// ============================================================================
|
|
147
|
+
// LEGACY OVERLAY PLATFORMS (for backward compatibility)
|
|
148
|
+
// ============================================================================
|
|
149
|
+
|
|
150
|
+
/**
|
|
151
|
+
* Platform list for overlay component
|
|
152
|
+
* @deprecated Use PLATFORM_ICONS directly
|
|
153
|
+
*/
|
|
154
|
+
export const OVERLAY_PLATFORMS = [{
|
|
155
|
+
id: 'instagram',
|
|
156
|
+
name: 'Instagram',
|
|
157
|
+
icon: PLATFORM_ICONS.instagram
|
|
158
|
+
}, {
|
|
159
|
+
id: 'youtube',
|
|
160
|
+
name: 'YouTube',
|
|
161
|
+
icon: PLATFORM_ICONS.youtube2
|
|
162
|
+
}, {
|
|
163
|
+
id: 'reddit',
|
|
164
|
+
name: 'Reddit',
|
|
165
|
+
icon: PLATFORM_ICONS.reddit
|
|
166
|
+
}, {
|
|
167
|
+
id: 'pinterest',
|
|
168
|
+
name: 'Pinterest',
|
|
169
|
+
icon: PLATFORM_ICONS.pinterest
|
|
170
|
+
}, {
|
|
171
|
+
id: 'email',
|
|
172
|
+
name: 'Email',
|
|
173
|
+
icon: PLATFORM_ICONS.gmail
|
|
174
|
+
}];
|
|
175
|
+
|
|
176
|
+
/**
|
|
177
|
+
* Get universal onboarding platform icon (uses youtube2 variant)
|
|
178
|
+
*/
|
|
179
|
+
export const getUniversalOnboardingIcon = platform => {
|
|
180
|
+
const platformLower = platform.toLowerCase();
|
|
181
|
+
switch (platformLower) {
|
|
182
|
+
case 'instagram':
|
|
183
|
+
return PLATFORM_ICONS.instagram;
|
|
184
|
+
case 'youtube':
|
|
185
|
+
return PLATFORM_ICONS.youtube2;
|
|
186
|
+
case 'reddit':
|
|
187
|
+
return PLATFORM_ICONS.reddit;
|
|
188
|
+
case 'pinterest':
|
|
189
|
+
return PLATFORM_ICONS.pinterest;
|
|
190
|
+
case 'facebook':
|
|
191
|
+
return PLATFORM_ICONS.facebook;
|
|
192
|
+
case 'linkedin':
|
|
193
|
+
return PLATFORM_ICONS.linkedin;
|
|
194
|
+
case 'gmail':
|
|
195
|
+
case 'email':
|
|
196
|
+
return PLATFORM_ICONS.gmail;
|
|
197
|
+
default:
|
|
198
|
+
return PLATFORM_ICONS.default;
|
|
199
|
+
}
|
|
200
|
+
};
|
|
201
|
+
//# sourceMappingURL=assetRegistry.js.map
|
package/lib/module/utils/auth.js
CHANGED
|
@@ -1 +1,100 @@
|
|
|
1
|
-
import axios from
|
|
1
|
+
import axios from 'axios';
|
|
2
|
+
import AsyncStorage from '@react-native-async-storage/async-storage';
|
|
3
|
+
import { API_CONFIG } from '../config/api';
|
|
4
|
+
const API_URL = API_CONFIG.BASE_URL;
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Get the encrypted PIN for a user
|
|
8
|
+
* @param {string} hashedOthentSub - The hashed Othent sub
|
|
9
|
+
* @returns {Promise<Object>} - The response containing the encrypted PIN
|
|
10
|
+
*/
|
|
11
|
+
export const getPin = async hashedOthentSub => {
|
|
12
|
+
try {
|
|
13
|
+
const response = await axios.post(`${API_URL}/getPin`, {
|
|
14
|
+
hashedOthentSub
|
|
15
|
+
});
|
|
16
|
+
return response.data;
|
|
17
|
+
} catch (error) {
|
|
18
|
+
console.error('Error getting PIN:', error);
|
|
19
|
+
throw error;
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Verify a token with the Onairos API
|
|
25
|
+
* @param {string} token - The token to verify
|
|
26
|
+
* @returns {Promise<boolean>} - Whether the token is valid
|
|
27
|
+
*/
|
|
28
|
+
export const verifyToken = async token => {
|
|
29
|
+
try {
|
|
30
|
+
const response = await axios.post(`${API_URL}/verifyToken`, {}, {
|
|
31
|
+
headers: {
|
|
32
|
+
'Authorization': `Bearer ${token}`
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
return response.data.valid;
|
|
36
|
+
} catch (error) {
|
|
37
|
+
console.error('Error verifying token:', error);
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Store authentication data
|
|
44
|
+
* @param {string} token - The authentication token
|
|
45
|
+
* @param {string} username - The username
|
|
46
|
+
* @param {Object} othentData - The Othent user data
|
|
47
|
+
*/
|
|
48
|
+
export const storeAuthData = async (token, username = null, othentData = null) => {
|
|
49
|
+
try {
|
|
50
|
+
await AsyncStorage.setItem('onairosToken', token);
|
|
51
|
+
if (username) {
|
|
52
|
+
await AsyncStorage.setItem('username', username);
|
|
53
|
+
}
|
|
54
|
+
if (othentData) {
|
|
55
|
+
await AsyncStorage.setItem('othentToken', JSON.stringify(othentData));
|
|
56
|
+
}
|
|
57
|
+
} catch (error) {
|
|
58
|
+
console.error('Error storing auth data:', error);
|
|
59
|
+
throw error;
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Clear authentication data
|
|
65
|
+
*/
|
|
66
|
+
export const clearAuthData = async () => {
|
|
67
|
+
try {
|
|
68
|
+
await AsyncStorage.removeItem('onairosToken');
|
|
69
|
+
await AsyncStorage.removeItem('username');
|
|
70
|
+
await AsyncStorage.removeItem('othentToken');
|
|
71
|
+
} catch (error) {
|
|
72
|
+
console.error('Error clearing auth data:', error);
|
|
73
|
+
throw error;
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Get stored authentication data
|
|
79
|
+
* @returns {Promise<Object>} - The stored authentication data
|
|
80
|
+
*/
|
|
81
|
+
export const getStoredAuthData = async () => {
|
|
82
|
+
try {
|
|
83
|
+
const token = await AsyncStorage.getItem('onairosToken');
|
|
84
|
+
const username = await AsyncStorage.getItem('username');
|
|
85
|
+
const othentToken = await AsyncStorage.getItem('othentToken');
|
|
86
|
+
return {
|
|
87
|
+
token,
|
|
88
|
+
username,
|
|
89
|
+
othentToken: othentToken ? JSON.parse(othentToken) : null
|
|
90
|
+
};
|
|
91
|
+
} catch (error) {
|
|
92
|
+
console.error('Error getting stored auth data:', error);
|
|
93
|
+
return {
|
|
94
|
+
token: null,
|
|
95
|
+
username: null,
|
|
96
|
+
othentToken: null
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
//# sourceMappingURL=auth.js.map
|