@oxyhq/services 10.5.0 → 11.1.0
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/index.js.map +1 -1
- package/lib/commonjs/ui/components/AccountMenu.js +9 -5
- package/lib/commonjs/ui/components/AccountMenu.js.map +1 -1
- package/lib/commonjs/ui/components/AnotherDeviceQR.js +51 -56
- package/lib/commonjs/ui/components/AnotherDeviceQR.js.map +1 -1
- package/lib/commonjs/ui/components/BottomSheetRouter.js +1 -0
- package/lib/commonjs/ui/components/BottomSheetRouter.js.map +1 -1
- package/lib/commonjs/ui/components/FollowButton.js +18 -5
- package/lib/commonjs/ui/components/FollowButton.js.map +1 -1
- package/lib/commonjs/ui/components/OxyProvider.js +23 -7
- package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
- package/lib/commonjs/ui/components/SignInModal.js +20 -1
- package/lib/commonjs/ui/components/SignInModal.js.map +1 -1
- package/lib/commonjs/ui/components/fileManagement/FileViewer.js +19 -9
- package/lib/commonjs/ui/components/fileManagement/FileViewer.js.map +1 -1
- package/lib/commonjs/ui/components/fileManagement/UploadPreview.js +4 -2
- package/lib/commonjs/ui/components/fileManagement/UploadPreview.js.map +1 -1
- package/lib/commonjs/ui/context/OxyContext.js +153 -19
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
- package/lib/commonjs/ui/context/hooks/useAuthOperations.js +6 -17
- package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -1
- package/lib/commonjs/ui/hooks/mutations/mutationFactory.js +5 -5
- package/lib/commonjs/ui/hooks/mutations/mutationFactory.js.map +1 -1
- package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js +38 -38
- package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
- package/lib/commonjs/ui/hooks/mutations/useServicesMutations.js +2 -2
- package/lib/commonjs/ui/hooks/mutations/useServicesMutations.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/queryKeys.js +3 -3
- package/lib/commonjs/ui/hooks/queries/queryKeys.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useAccountQueries.js +1 -1
- package/lib/commonjs/ui/hooks/queries/useAccountQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/usePaymentQueries.js +16 -12
- package/lib/commonjs/ui/hooks/queries/usePaymentQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useServicesQueries.js +10 -6
- package/lib/commonjs/ui/hooks/queries/useServicesQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/queryClient.js +6 -5
- package/lib/commonjs/ui/hooks/queryClient.js.map +1 -1
- package/lib/commonjs/ui/hooks/useOxyAuthSession.js +40 -2
- package/lib/commonjs/ui/hooks/useOxyAuthSession.js.map +1 -1
- package/lib/commonjs/ui/hooks/useProfileEditing.js +21 -0
- package/lib/commonjs/ui/hooks/useProfileEditing.js.map +1 -1
- package/lib/commonjs/ui/hooks/useSessionManagement.js +3 -3
- package/lib/commonjs/ui/hooks/useSessionManagement.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountVerificationScreen.js +100 -108
- package/lib/commonjs/ui/screens/AccountVerificationScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AppInfoScreen.js +227 -273
- package/lib/commonjs/ui/screens/AppInfoScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AvatarCropScreen.js +10 -4
- package/lib/commonjs/ui/screens/AvatarCropScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ConnectedAppsScreen.js +20 -37
- package/lib/commonjs/ui/screens/ConnectedAppsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/CreateManagedAccountScreen.js +89 -201
- package/lib/commonjs/ui/screens/CreateManagedAccountScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/EditProfileFieldScreen.js +80 -208
- package/lib/commonjs/ui/screens/EditProfileFieldScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FAQScreen.js +56 -208
- package/lib/commonjs/ui/screens/FAQScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FeedbackScreen.js +303 -352
- package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FileManagementScreen.js +20 -20
- package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/HelpSupportScreen.js +77 -89
- package/lib/commonjs/ui/screens/HelpSupportScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/HistoryViewScreen.js +43 -58
- package/lib/commonjs/ui/screens/HistoryViewScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/LanguageSelectorScreen.js +67 -90
- package/lib/commonjs/ui/screens/LanguageSelectorScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/LearnMoreUsernamesScreen.js +77 -177
- package/lib/commonjs/ui/screens/LearnMoreUsernamesScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/LegalDocumentsScreen.js +113 -107
- package/lib/commonjs/ui/screens/LegalDocumentsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ManageAccountScreen.js +55 -114
- package/lib/commonjs/ui/screens/ManageAccountScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/NotificationsScreen.js +67 -85
- package/lib/commonjs/ui/screens/NotificationsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/OxyAuthScreen.js +71 -135
- package/lib/commonjs/ui/screens/OxyAuthScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PaymentGatewayScreen.js +15 -9
- package/lib/commonjs/ui/screens/PaymentGatewayScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PreferencesScreen.js +65 -83
- package/lib/commonjs/ui/screens/PreferencesScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +378 -1023
- package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +294 -242
- package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ProfileScreen.js +192 -305
- package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/SavesCollectionsScreen.js +57 -97
- package/lib/commonjs/ui/screens/SavesCollectionsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/SearchSettingsScreen.js +41 -41
- package/lib/commonjs/ui/screens/SearchSettingsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/UserLinksScreen.js +17 -24
- package/lib/commonjs/ui/screens/UserLinksScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/UserListScreen.js +83 -214
- package/lib/commonjs/ui/screens/UserListScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js +115 -77
- package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/trust/TrustAboutScreen.js +70 -57
- package/lib/commonjs/ui/screens/trust/TrustAboutScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js +136 -332
- package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/trust/TrustFAQScreen.js +47 -137
- package/lib/commonjs/ui/screens/trust/TrustFAQScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js +182 -115
- package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js +138 -214
- package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/trust/TrustRulesScreen.js +54 -92
- package/lib/commonjs/ui/screens/trust/TrustRulesScreen.js.map +1 -1
- package/lib/commonjs/ui/utils/activeAuthuser.js +15 -9
- package/lib/commonjs/ui/utils/activeAuthuser.js.map +1 -1
- package/lib/commonjs/ui/utils/avatarUtils.js +1 -1
- package/lib/commonjs/ui/utils/avatarUtils.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/ui/components/AccountMenu.js +10 -6
- package/lib/module/ui/components/AccountMenu.js.map +1 -1
- package/lib/module/ui/components/AnotherDeviceQR.js +50 -56
- package/lib/module/ui/components/AnotherDeviceQR.js.map +1 -1
- package/lib/module/ui/components/BottomSheetRouter.js +2 -1
- package/lib/module/ui/components/BottomSheetRouter.js.map +1 -1
- package/lib/module/ui/components/FollowButton.js +18 -5
- package/lib/module/ui/components/FollowButton.js.map +1 -1
- package/lib/module/ui/components/OxyProvider.js +23 -7
- package/lib/module/ui/components/OxyProvider.js.map +1 -1
- package/lib/module/ui/components/SignInModal.js +20 -1
- package/lib/module/ui/components/SignInModal.js.map +1 -1
- package/lib/module/ui/components/fileManagement/FileViewer.js +19 -9
- package/lib/module/ui/components/fileManagement/FileViewer.js.map +1 -1
- package/lib/module/ui/components/fileManagement/UploadPreview.js +4 -2
- package/lib/module/ui/components/fileManagement/UploadPreview.js.map +1 -1
- package/lib/module/ui/context/OxyContext.js +154 -20
- package/lib/module/ui/context/OxyContext.js.map +1 -1
- package/lib/module/ui/context/hooks/useAuthOperations.js +6 -17
- package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -1
- package/lib/module/ui/hooks/mutations/mutationFactory.js +5 -5
- package/lib/module/ui/hooks/mutations/mutationFactory.js.map +1 -1
- package/lib/module/ui/hooks/mutations/useAccountMutations.js +38 -38
- package/lib/module/ui/hooks/mutations/useAccountMutations.js.map +1 -1
- package/lib/module/ui/hooks/mutations/useServicesMutations.js +2 -2
- package/lib/module/ui/hooks/mutations/useServicesMutations.js.map +1 -1
- package/lib/module/ui/hooks/queries/queryKeys.js +3 -3
- package/lib/module/ui/hooks/queries/queryKeys.js.map +1 -1
- package/lib/module/ui/hooks/queries/useAccountQueries.js +1 -1
- package/lib/module/ui/hooks/queries/useAccountQueries.js.map +1 -1
- package/lib/module/ui/hooks/queries/usePaymentQueries.js +16 -12
- package/lib/module/ui/hooks/queries/usePaymentQueries.js.map +1 -1
- package/lib/module/ui/hooks/queries/useServicesQueries.js +9 -6
- package/lib/module/ui/hooks/queries/useServicesQueries.js.map +1 -1
- package/lib/module/ui/hooks/queryClient.js +6 -5
- package/lib/module/ui/hooks/queryClient.js.map +1 -1
- package/lib/module/ui/hooks/useOxyAuthSession.js +40 -2
- package/lib/module/ui/hooks/useOxyAuthSession.js.map +1 -1
- package/lib/module/ui/hooks/useProfileEditing.js +21 -0
- package/lib/module/ui/hooks/useProfileEditing.js.map +1 -1
- package/lib/module/ui/hooks/useSessionManagement.js +4 -3
- package/lib/module/ui/hooks/useSessionManagement.js.map +1 -1
- package/lib/module/ui/screens/AccountVerificationScreen.js +101 -109
- package/lib/module/ui/screens/AccountVerificationScreen.js.map +1 -1
- package/lib/module/ui/screens/AppInfoScreen.js +228 -275
- package/lib/module/ui/screens/AppInfoScreen.js.map +1 -1
- package/lib/module/ui/screens/AvatarCropScreen.js +10 -4
- package/lib/module/ui/screens/AvatarCropScreen.js.map +1 -1
- package/lib/module/ui/screens/ConnectedAppsScreen.js +19 -39
- package/lib/module/ui/screens/ConnectedAppsScreen.js.map +1 -1
- package/lib/module/ui/screens/CreateManagedAccountScreen.js +90 -202
- package/lib/module/ui/screens/CreateManagedAccountScreen.js.map +1 -1
- package/lib/module/ui/screens/EditProfileFieldScreen.js +77 -205
- package/lib/module/ui/screens/EditProfileFieldScreen.js.map +1 -1
- package/lib/module/ui/screens/FAQScreen.js +55 -207
- package/lib/module/ui/screens/FAQScreen.js.map +1 -1
- package/lib/module/ui/screens/FeedbackScreen.js +301 -350
- package/lib/module/ui/screens/FeedbackScreen.js.map +1 -1
- package/lib/module/ui/screens/FileManagementScreen.js +20 -20
- package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
- package/lib/module/ui/screens/HelpSupportScreen.js +78 -90
- package/lib/module/ui/screens/HelpSupportScreen.js.map +1 -1
- package/lib/module/ui/screens/HistoryViewScreen.js +44 -59
- package/lib/module/ui/screens/HistoryViewScreen.js.map +1 -1
- package/lib/module/ui/screens/LanguageSelectorScreen.js +68 -91
- package/lib/module/ui/screens/LanguageSelectorScreen.js.map +1 -1
- package/lib/module/ui/screens/LearnMoreUsernamesScreen.js +75 -177
- package/lib/module/ui/screens/LearnMoreUsernamesScreen.js.map +1 -1
- package/lib/module/ui/screens/LegalDocumentsScreen.js +116 -108
- package/lib/module/ui/screens/LegalDocumentsScreen.js.map +1 -1
- package/lib/module/ui/screens/ManageAccountScreen.js +52 -112
- package/lib/module/ui/screens/ManageAccountScreen.js.map +1 -1
- package/lib/module/ui/screens/NotificationsScreen.js +68 -86
- package/lib/module/ui/screens/NotificationsScreen.js.map +1 -1
- package/lib/module/ui/screens/OxyAuthScreen.js +69 -134
- package/lib/module/ui/screens/OxyAuthScreen.js.map +1 -1
- package/lib/module/ui/screens/PaymentGatewayScreen.js +16 -10
- package/lib/module/ui/screens/PaymentGatewayScreen.js.map +1 -1
- package/lib/module/ui/screens/PreferencesScreen.js +66 -84
- package/lib/module/ui/screens/PreferencesScreen.js.map +1 -1
- package/lib/module/ui/screens/PremiumSubscriptionScreen.js +366 -1012
- package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
- package/lib/module/ui/screens/PrivacySettingsScreen.js +295 -243
- package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
- package/lib/module/ui/screens/ProfileScreen.js +189 -302
- package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
- package/lib/module/ui/screens/SavesCollectionsScreen.js +58 -98
- package/lib/module/ui/screens/SavesCollectionsScreen.js.map +1 -1
- package/lib/module/ui/screens/SearchSettingsScreen.js +42 -42
- package/lib/module/ui/screens/SearchSettingsScreen.js.map +1 -1
- package/lib/module/ui/screens/UserLinksScreen.js +18 -25
- package/lib/module/ui/screens/UserLinksScreen.js.map +1 -1
- package/lib/module/ui/screens/UserListScreen.js +81 -212
- package/lib/module/ui/screens/UserListScreen.js.map +1 -1
- package/lib/module/ui/screens/WelcomeNewUserScreen.js +114 -76
- package/lib/module/ui/screens/WelcomeNewUserScreen.js.map +1 -1
- package/lib/module/ui/screens/trust/TrustAboutScreen.js +69 -57
- package/lib/module/ui/screens/trust/TrustAboutScreen.js.map +1 -1
- package/lib/module/ui/screens/trust/TrustCenterScreen.js +135 -332
- package/lib/module/ui/screens/trust/TrustCenterScreen.js.map +1 -1
- package/lib/module/ui/screens/trust/TrustFAQScreen.js +48 -138
- package/lib/module/ui/screens/trust/TrustFAQScreen.js.map +1 -1
- package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js +184 -117
- package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
- package/lib/module/ui/screens/trust/TrustRewardsScreen.js +132 -208
- package/lib/module/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
- package/lib/module/ui/screens/trust/TrustRulesScreen.js +58 -94
- package/lib/module/ui/screens/trust/TrustRulesScreen.js.map +1 -1
- package/lib/module/ui/utils/activeAuthuser.js +15 -9
- package/lib/module/ui/utils/activeAuthuser.js.map +1 -1
- package/lib/module/ui/utils/avatarUtils.js +1 -1
- package/lib/module/ui/utils/avatarUtils.js.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +1 -0
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/AccountMenu.d.ts +2 -0
- package/lib/typescript/commonjs/ui/components/AccountMenu.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/AnotherDeviceQR.d.ts +12 -2
- package/lib/typescript/commonjs/ui/components/AnotherDeviceQR.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/BottomSheetRouter.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/FollowButton.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts +3 -2
- package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/SignInModal.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/TouchableRipple/TouchableRipple.native.d.ts +1 -1
- package/lib/typescript/commonjs/ui/components/TouchableRipple/TouchableRipple.native.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/OxyContext.d.ts +34 -0
- package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts +3 -0
- package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/queryKeys.d.ts +3 -3
- package/lib/typescript/commonjs/ui/hooks/queries/queryKeys.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queryClient.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useOxyAuthSession.d.ts +22 -0
- package/lib/typescript/commonjs/ui/hooks/useOxyAuthSession.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useProfileEditing.d.ts +3 -0
- package/lib/typescript/commonjs/ui/hooks/useProfileEditing.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useSessionManagement.d.ts +2 -1
- package/lib/typescript/commonjs/ui/hooks/useSessionManagement.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/AccountVerificationScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/AppInfoScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/AvatarCropScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/ConnectedAppsScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/CreateManagedAccountScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/FAQScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/FeedbackScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/HelpSupportScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/HistoryViewScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/LearnMoreUsernamesScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/LegalDocumentsScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/NotificationsScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/OxyAuthScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/PreferencesScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/ProfileScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/SavesCollectionsScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/UserLinksScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/UserListScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/WelcomeNewUserScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/trust/TrustAboutScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/trust/TrustCenterScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/trust/TrustFAQScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/trust/TrustLeaderboardScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/trust/TrustRewardsScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/trust/TrustRulesScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/activeAuthuser.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +1 -0
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/AccountMenu.d.ts +2 -0
- package/lib/typescript/module/ui/components/AccountMenu.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/AnotherDeviceQR.d.ts +12 -2
- package/lib/typescript/module/ui/components/AnotherDeviceQR.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/BottomSheetRouter.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/FollowButton.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/OxyProvider.d.ts +3 -2
- package/lib/typescript/module/ui/components/OxyProvider.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/SignInModal.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/TouchableRipple/TouchableRipple.native.d.ts +1 -1
- package/lib/typescript/module/ui/components/TouchableRipple/TouchableRipple.native.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/OxyContext.d.ts +34 -0
- package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts +3 -0
- package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/queryKeys.d.ts +3 -3
- package/lib/typescript/module/ui/hooks/queries/queryKeys.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/useServicesQueries.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queryClient.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useOxyAuthSession.d.ts +22 -0
- package/lib/typescript/module/ui/hooks/useOxyAuthSession.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useProfileEditing.d.ts +3 -0
- package/lib/typescript/module/ui/hooks/useProfileEditing.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useSessionManagement.d.ts +2 -1
- package/lib/typescript/module/ui/hooks/useSessionManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/AccountVerificationScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/AppInfoScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/AvatarCropScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/ConnectedAppsScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/CreateManagedAccountScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/FAQScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/HelpSupportScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/HistoryViewScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/LanguageSelectorScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/LearnMoreUsernamesScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/LegalDocumentsScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/NotificationsScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/OxyAuthScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/PaymentGatewayScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/PreferencesScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/PrivacySettingsScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/ProfileScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/SavesCollectionsScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/UserLinksScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/UserListScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/WelcomeNewUserScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/trust/TrustAboutScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/trust/TrustCenterScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/trust/TrustFAQScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/trust/TrustLeaderboardScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/trust/TrustRewardsScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/trust/TrustRulesScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/activeAuthuser.d.ts.map +1 -1
- package/lib/typescript/types/expo-haptics.d.ts +42 -0
- package/package.json +24 -31
- package/src/index.ts +1 -0
- package/src/types/expo-haptics.d.ts +42 -0
- package/src/ui/components/AccountMenu.tsx +11 -5
- package/src/ui/components/AnotherDeviceQR.tsx +53 -45
- package/src/ui/components/BottomSheetRouter.tsx +2 -1
- package/src/ui/components/FollowButton.tsx +24 -5
- package/src/ui/components/OxyProvider.tsx +22 -8
- package/src/ui/components/SignInModal.tsx +21 -2
- package/src/ui/components/TouchableRipple/TouchableRipple.native.tsx +1 -1
- package/src/ui/components/fileManagement/FileViewer.tsx +9 -9
- package/src/ui/components/fileManagement/UploadPreview.tsx +2 -2
- package/src/ui/context/OxyContext.tsx +178 -21
- package/src/ui/context/hooks/useAuthOperations.ts +6 -17
- package/src/ui/hooks/mutations/mutationFactory.ts +5 -5
- package/src/ui/hooks/mutations/useAccountMutations.ts +38 -38
- package/src/ui/hooks/mutations/useServicesMutations.ts +2 -2
- package/src/ui/hooks/queries/queryKeys.ts +6 -3
- package/src/ui/hooks/queries/useAccountQueries.ts +1 -1
- package/src/ui/hooks/queries/usePaymentQueries.ts +12 -12
- package/src/ui/hooks/queries/useServicesQueries.ts +9 -6
- package/src/ui/hooks/queryClient.ts +5 -5
- package/src/ui/hooks/useOxyAuthSession.ts +76 -2
- package/src/ui/hooks/useProfileEditing.ts +24 -0
- package/src/ui/hooks/useSessionManagement.ts +9 -6
- package/src/ui/screens/AccountVerificationScreen.tsx +101 -113
- package/src/ui/screens/AppInfoScreen.tsx +200 -238
- package/src/ui/screens/AvatarCropScreen.tsx +17 -4
- package/src/ui/screens/ConnectedAppsScreen.tsx +16 -34
- package/src/ui/screens/CreateManagedAccountScreen.tsx +94 -170
- package/src/ui/screens/EditProfileFieldScreen.tsx +77 -190
- package/src/ui/screens/FAQScreen.tsx +77 -208
- package/src/ui/screens/FeedbackScreen.tsx +330 -239
- package/src/ui/screens/FileManagementScreen.tsx +20 -20
- package/src/ui/screens/HelpSupportScreen.tsx +67 -82
- package/src/ui/screens/HistoryViewScreen.tsx +32 -38
- package/src/ui/screens/LanguageSelectorScreen.tsx +79 -93
- package/src/ui/screens/LearnMoreUsernamesScreen.tsx +81 -164
- package/src/ui/screens/LegalDocumentsScreen.tsx +184 -123
- package/src/ui/screens/ManageAccountScreen.tsx +48 -114
- package/src/ui/screens/NotificationsScreen.tsx +107 -106
- package/src/ui/screens/OxyAuthScreen.tsx +76 -109
- package/src/ui/screens/PaymentGatewayScreen.tsx +16 -7
- package/src/ui/screens/PreferencesScreen.tsx +96 -116
- package/src/ui/screens/PremiumSubscriptionScreen.tsx +419 -872
- package/src/ui/screens/PrivacySettingsScreen.tsx +203 -185
- package/src/ui/screens/ProfileScreen.tsx +158 -200
- package/src/ui/screens/SavesCollectionsScreen.tsx +78 -125
- package/src/ui/screens/SearchSettingsScreen.tsx +52 -41
- package/src/ui/screens/UserLinksScreen.tsx +18 -25
- package/src/ui/screens/UserListScreen.tsx +95 -188
- package/src/ui/screens/WelcomeNewUserScreen.tsx +109 -36
- package/src/ui/screens/trust/TrustAboutScreen.tsx +52 -41
- package/src/ui/screens/trust/TrustCenterScreen.tsx +184 -222
- package/src/ui/screens/trust/TrustFAQScreen.tsx +64 -124
- package/src/ui/screens/trust/TrustLeaderboardScreen.tsx +190 -67
- package/src/ui/screens/trust/TrustRewardsScreen.tsx +147 -182
- package/src/ui/screens/trust/TrustRulesScreen.tsx +77 -50
- package/src/ui/utils/activeAuthuser.ts +15 -9
- package/src/ui/utils/avatarUtils.ts +1 -1
- package/lib/commonjs/ui/components/feedback/FormInput.js +0 -72
- package/lib/commonjs/ui/components/feedback/FormInput.js.map +0 -1
- package/lib/commonjs/ui/components/feedback/feedbackStyles.js +0 -261
- package/lib/commonjs/ui/components/feedback/feedbackStyles.js.map +0 -1
- package/lib/module/ui/components/feedback/FormInput.js +0 -67
- package/lib/module/ui/components/feedback/FormInput.js.map +0 -1
- package/lib/module/ui/components/feedback/feedbackStyles.js +0 -256
- package/lib/module/ui/components/feedback/feedbackStyles.js.map +0 -1
- package/lib/typescript/commonjs/ui/components/feedback/FormInput.d.ts +0 -20
- package/lib/typescript/commonjs/ui/components/feedback/FormInput.d.ts.map +0 -1
- package/lib/typescript/commonjs/ui/components/feedback/feedbackStyles.d.ts +0 -279
- package/lib/typescript/commonjs/ui/components/feedback/feedbackStyles.d.ts.map +0 -1
- package/lib/typescript/module/ui/components/feedback/FormInput.d.ts +0 -20
- package/lib/typescript/module/ui/components/feedback/FormInput.d.ts.map +0 -1
- package/lib/typescript/module/ui/components/feedback/feedbackStyles.d.ts +0 -279
- package/lib/typescript/module/ui/components/feedback/feedbackStyles.d.ts.map +0 -1
- package/src/ui/components/feedback/FormInput.tsx +0 -84
- package/src/ui/components/feedback/feedbackStyles.ts +0 -246
|
@@ -1029,8 +1029,8 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
|
|
|
1029
1029
|
|
|
1030
1030
|
const bloomTheme = useTheme();
|
|
1031
1031
|
const { colors } = bloomTheme;
|
|
1032
|
-
// FileManagementScreen uses a slightly
|
|
1033
|
-
const backgroundColor =
|
|
1032
|
+
// FileManagementScreen uses a slightly elevated page background.
|
|
1033
|
+
const backgroundColor = colors.backgroundSecondary;
|
|
1034
1034
|
const borderColor = colors.border;
|
|
1035
1035
|
|
|
1036
1036
|
const targetUserId = userId || user?.id;
|
|
@@ -1984,12 +1984,12 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
|
|
|
1984
1984
|
<Text style={[fileManagementStyles.fileName, { color: colors.text }]} numberOfLines={1}>
|
|
1985
1985
|
{file.filename}
|
|
1986
1986
|
</Text>
|
|
1987
|
-
<Text style={[fileManagementStyles.fileDetails, { color:
|
|
1987
|
+
<Text style={[fileManagementStyles.fileDetails, { color: colors.textSecondary }]}>
|
|
1988
1988
|
{formatFileSize(file.length)} • {new Date(file.uploadDate).toLocaleDateString()}
|
|
1989
1989
|
</Text>
|
|
1990
1990
|
{file.metadata?.description && (
|
|
1991
1991
|
<Text
|
|
1992
|
-
style={[fileManagementStyles.fileDescription, { color:
|
|
1992
|
+
style={[fileManagementStyles.fileDescription, { color: colors.textTertiary }]}
|
|
1993
1993
|
numberOfLines={2}
|
|
1994
1994
|
>
|
|
1995
1995
|
{file.metadata.description}
|
|
@@ -2003,7 +2003,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
|
|
|
2003
2003
|
{/* Preview button for supported files */}
|
|
2004
2004
|
{hasPreview && (
|
|
2005
2005
|
<TouchableOpacity
|
|
2006
|
-
style={[fileManagementStyles.actionButton, { backgroundColor:
|
|
2006
|
+
style={[fileManagementStyles.actionButton, { backgroundColor: colors.backgroundSecondary }]}
|
|
2007
2007
|
onPress={() => handleFileOpen(file)}
|
|
2008
2008
|
>
|
|
2009
2009
|
<Ionicons name="eye" size={20} color={colors.primary} />
|
|
@@ -2011,7 +2011,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
|
|
|
2011
2011
|
)}
|
|
2012
2012
|
|
|
2013
2013
|
<TouchableOpacity
|
|
2014
|
-
style={[fileManagementStyles.actionButton, { backgroundColor:
|
|
2014
|
+
style={[fileManagementStyles.actionButton, { backgroundColor: colors.backgroundSecondary }]}
|
|
2015
2015
|
onPress={() => handleFileDownload(file.id, file.filename)}
|
|
2016
2016
|
>
|
|
2017
2017
|
<Ionicons name="download" size={20} color={colors.primary} />
|
|
@@ -2019,7 +2019,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
|
|
|
2019
2019
|
|
|
2020
2020
|
{/* Always show delete button for debugging */}
|
|
2021
2021
|
<TouchableOpacity
|
|
2022
|
-
style={[fileManagementStyles.actionButton, { backgroundColor:
|
|
2022
|
+
style={[fileManagementStyles.actionButton, { backgroundColor: colors.negativeSubtle }]}
|
|
2023
2023
|
onPress={() => confirmFileDelete(file.id, file.filename)}
|
|
2024
2024
|
disabled={deleting === file.id}
|
|
2025
2025
|
>
|
|
@@ -2119,20 +2119,20 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
|
|
|
2119
2119
|
<View style={fileManagementStyles.groupedActions}>
|
|
2120
2120
|
{(isImage || isVideo || file.contentType.includes('pdf')) && (
|
|
2121
2121
|
<TouchableOpacity
|
|
2122
|
-
style={[fileManagementStyles.groupedActionBtn, { backgroundColor:
|
|
2122
|
+
style={[fileManagementStyles.groupedActionBtn, { backgroundColor: colors.backgroundSecondary }]}
|
|
2123
2123
|
onPress={() => handleFileOpen(file)}
|
|
2124
2124
|
>
|
|
2125
2125
|
<Ionicons name="eye" size={18} color={colors.primary} />
|
|
2126
2126
|
</TouchableOpacity>
|
|
2127
2127
|
)}
|
|
2128
2128
|
<TouchableOpacity
|
|
2129
|
-
style={[fileManagementStyles.groupedActionBtn, { backgroundColor:
|
|
2129
|
+
style={[fileManagementStyles.groupedActionBtn, { backgroundColor: colors.backgroundSecondary }]}
|
|
2130
2130
|
onPress={() => handleFileDownload(file.id, file.filename)}
|
|
2131
2131
|
>
|
|
2132
2132
|
<Ionicons name="download" size={18} color={colors.primary} />
|
|
2133
2133
|
</TouchableOpacity>
|
|
2134
2134
|
<TouchableOpacity
|
|
2135
|
-
style={[fileManagementStyles.groupedActionBtn, { backgroundColor:
|
|
2135
|
+
style={[fileManagementStyles.groupedActionBtn, { backgroundColor: colors.negativeSubtle }]}
|
|
2136
2136
|
onPress={() => confirmFileDelete(file.id, file.filename)}
|
|
2137
2137
|
disabled={deleting === file.id}
|
|
2138
2138
|
>
|
|
@@ -2284,9 +2284,9 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
|
|
|
2284
2284
|
if (photos.length === 0) {
|
|
2285
2285
|
return (
|
|
2286
2286
|
<View style={fileManagementStyles.emptyState}>
|
|
2287
|
-
<Ionicons name="images-outline" size={64} color={
|
|
2287
|
+
<Ionicons name="images-outline" size={64} color={colors.textTertiary} />
|
|
2288
2288
|
<Text style={[fileManagementStyles.emptyStateTitle, { color: colors.text }]}>{t('fileManagement.emptyPhotos.title')}</Text>
|
|
2289
|
-
<Text style={[fileManagementStyles.emptyStateDescription, { color:
|
|
2289
|
+
<Text style={[fileManagementStyles.emptyStateDescription, { color: colors.textSecondary }]}> {
|
|
2290
2290
|
user?.id === targetUserId
|
|
2291
2291
|
? t('fileManagement.emptyPhotos.ownDescription')
|
|
2292
2292
|
: t('fileManagement.emptyPhotos.otherDescription')
|
|
@@ -2338,7 +2338,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
|
|
|
2338
2338
|
{loadingDimensions && (
|
|
2339
2339
|
<View style={fileManagementStyles.dimensionsLoadingIndicator}>
|
|
2340
2340
|
<ActivityIndicator size="small" color={colors.primary} />
|
|
2341
|
-
<Text style={[fileManagementStyles.dimensionsLoadingText, { color:
|
|
2341
|
+
<Text style={[fileManagementStyles.dimensionsLoadingText, { color: colors.textSecondary }]}>{t('fileManagement.loadingPhotoLayout')}</Text>
|
|
2342
2342
|
</View>
|
|
2343
2343
|
)}
|
|
2344
2344
|
|
|
@@ -2378,9 +2378,9 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
|
|
|
2378
2378
|
|
|
2379
2379
|
const renderEmptyState = () => (
|
|
2380
2380
|
<View style={fileManagementStyles.emptyState}>
|
|
2381
|
-
<Ionicons name="folder-open-outline" size={64} color={
|
|
2381
|
+
<Ionicons name="folder-open-outline" size={64} color={colors.textTertiary} />
|
|
2382
2382
|
<Text style={[fileManagementStyles.emptyStateTitle, { color: colors.text }]}>{t('fileManagement.emptyFiles.title')}</Text>
|
|
2383
|
-
<Text style={[fileManagementStyles.emptyStateDescription, { color:
|
|
2383
|
+
<Text style={[fileManagementStyles.emptyStateDescription, { color: colors.textSecondary }]}>
|
|
2384
2384
|
{user?.id === targetUserId
|
|
2385
2385
|
? t('fileManagement.emptyFiles.ownDescription')
|
|
2386
2386
|
: t('fileManagement.emptyFiles.otherDescription')
|
|
@@ -2444,7 +2444,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
|
|
|
2444
2444
|
width,
|
|
2445
2445
|
height,
|
|
2446
2446
|
borderRadius,
|
|
2447
|
-
backgroundColor:
|
|
2447
|
+
backgroundColor: colors.backgroundSecondary,
|
|
2448
2448
|
overflow: 'hidden',
|
|
2449
2449
|
position: 'relative',
|
|
2450
2450
|
},
|
|
@@ -2459,7 +2459,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
|
|
|
2459
2459
|
left: 0,
|
|
2460
2460
|
right: 0,
|
|
2461
2461
|
bottom: 0,
|
|
2462
|
-
backgroundColor:
|
|
2462
|
+
backgroundColor: colors.backgroundSecondary,
|
|
2463
2463
|
}}
|
|
2464
2464
|
/>
|
|
2465
2465
|
{/* Shimmer gradient effect */}
|
|
@@ -2500,7 +2500,7 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
|
|
|
2500
2500
|
alignItems: 'center',
|
|
2501
2501
|
paddingHorizontal: 16,
|
|
2502
2502
|
paddingVertical: 12,
|
|
2503
|
-
backgroundColor:
|
|
2503
|
+
backgroundColor: colors.background,
|
|
2504
2504
|
borderBottomWidth: StyleSheet.hairlineWidth,
|
|
2505
2505
|
borderBottomColor: colors.border,
|
|
2506
2506
|
},
|
|
@@ -2965,9 +2965,9 @@ const FileManagementScreen: React.FC<FileManagementScreenProps> = ({
|
|
|
2965
2965
|
>
|
|
2966
2966
|
{filteredFiles.length === 0 && searchQuery.length > 0 ? (
|
|
2967
2967
|
<View style={fileManagementStyles.emptyState}>
|
|
2968
|
-
<Ionicons name="search" size={64} color={
|
|
2968
|
+
<Ionicons name="search" size={64} color={colors.textTertiary} />
|
|
2969
2969
|
<Text style={[fileManagementStyles.emptyStateTitle, { color: colors.text }]}>{t('fileManagement.noResults.title')}</Text>
|
|
2970
|
-
<Text style={[fileManagementStyles.emptyStateDescription, { color:
|
|
2970
|
+
<Text style={[fileManagementStyles.emptyStateDescription, { color: colors.textSecondary }]}>
|
|
2971
2971
|
{t('fileManagement.noResults.description', { query: searchQuery })}
|
|
2972
2972
|
</Text>
|
|
2973
2973
|
<TouchableOpacity
|
|
@@ -1,32 +1,20 @@
|
|
|
1
1
|
import React, { useMemo } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
View,
|
|
4
|
-
StyleSheet,
|
|
5
|
-
ScrollView,
|
|
6
|
-
Linking,
|
|
7
|
-
} from 'react-native';
|
|
2
|
+
import { View, ScrollView, Linking } from 'react-native';
|
|
8
3
|
import type { BaseScreenProps } from '../types/navigation';
|
|
9
4
|
import { toast } from '@oxyhq/bloom';
|
|
5
|
+
import { SettingsListGroup, SettingsListItem } from '@oxyhq/bloom/settings-list';
|
|
6
|
+
import { useTheme } from '@oxyhq/bloom/theme';
|
|
10
7
|
import Header from '../components/Header';
|
|
11
8
|
import { SettingsIcon } from '../components/SettingsIcon';
|
|
12
9
|
import { useI18n } from '../hooks/useI18n';
|
|
13
|
-
import { useTheme } from '@oxyhq/bloom/theme';
|
|
14
|
-
import { useColorScheme } from '../hooks/useColorScheme';
|
|
15
|
-
import { Colors } from '../constants/theme';
|
|
16
|
-
import { normalizeColorScheme } from '@oxyhq/core';
|
|
17
|
-
import { SettingsListGroup, SettingsListItem } from '@oxyhq/bloom/settings-list';
|
|
18
10
|
|
|
19
11
|
const HelpSupportScreen: React.FC<BaseScreenProps> = ({
|
|
20
12
|
onClose,
|
|
21
|
-
theme,
|
|
22
13
|
goBack,
|
|
23
14
|
navigate,
|
|
24
15
|
}) => {
|
|
25
16
|
const { t } = useI18n();
|
|
26
17
|
const bloomTheme = useTheme();
|
|
27
|
-
const colorScheme = useColorScheme();
|
|
28
|
-
const normalizedColorScheme = normalizeColorScheme(colorScheme);
|
|
29
|
-
const themeColors = Colors[normalizedColorScheme];
|
|
30
18
|
|
|
31
19
|
const handleContactSupport = useMemo(() => () => {
|
|
32
20
|
Linking.openURL('mailto:support@oxy.so?subject=Support Request').catch(() => {
|
|
@@ -48,85 +36,82 @@ const HelpSupportScreen: React.FC<BaseScreenProps> = ({
|
|
|
48
36
|
});
|
|
49
37
|
}, [t]);
|
|
50
38
|
|
|
39
|
+
const handleDocumentation = useMemo(() => () => {
|
|
40
|
+
Linking.openURL('https://developer.oxy.so/docs').catch(() => {
|
|
41
|
+
toast.error(t('help.linkError') || 'Failed to open link');
|
|
42
|
+
});
|
|
43
|
+
}, [t]);
|
|
44
|
+
|
|
45
|
+
const handleCommunity = useMemo(() => () => {
|
|
46
|
+
Linking.openURL('https://community.oxy.so').catch(() => {
|
|
47
|
+
toast.error(t('help.linkError') || 'Failed to open link');
|
|
48
|
+
});
|
|
49
|
+
}, [t]);
|
|
50
|
+
|
|
51
|
+
const handleDevelopersPortal = useMemo(() => () => {
|
|
52
|
+
Linking.openURL('https://developer.oxy.so').catch(() => {
|
|
53
|
+
toast.error(t('help.linkError') || 'Failed to open link');
|
|
54
|
+
});
|
|
55
|
+
}, [t]);
|
|
56
|
+
|
|
51
57
|
return (
|
|
52
|
-
<View
|
|
58
|
+
<View className="flex-1 bg-bg">
|
|
53
59
|
<Header
|
|
54
60
|
title={t('help.title') || 'Help & Support'}
|
|
55
|
-
|
|
56
61
|
onBack={goBack || onClose}
|
|
57
62
|
variant="minimal"
|
|
58
63
|
elevation="subtle"
|
|
59
64
|
/>
|
|
60
65
|
|
|
61
|
-
<ScrollView
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
<
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
66
|
+
<ScrollView className="flex-1">
|
|
67
|
+
<View className="px-screen-margin pb-space-24">
|
|
68
|
+
{/* Help Options */}
|
|
69
|
+
<SettingsListGroup title={t('help.options') || 'Get Help'}>
|
|
70
|
+
<SettingsListItem
|
|
71
|
+
icon={<SettingsIcon name="help-circle" color={bloomTheme.colors.info} />}
|
|
72
|
+
title={t('help.faq.title') || 'Frequently Asked Questions'}
|
|
73
|
+
description={t('help.faq.subtitle') || 'Find answers to common questions'}
|
|
74
|
+
onPress={handleFAQ}
|
|
75
|
+
/>
|
|
76
|
+
<SettingsListItem
|
|
77
|
+
icon={<SettingsIcon name="email" color={bloomTheme.colors.success} />}
|
|
78
|
+
title={t('help.contact.title') || 'Contact Support'}
|
|
79
|
+
description={t('help.contact.subtitle') || 'Get help from our support team'}
|
|
80
|
+
onPress={handleContactSupport}
|
|
81
|
+
/>
|
|
82
|
+
<SettingsListItem
|
|
83
|
+
icon={<SettingsIcon name="bug" color={bloomTheme.colors.warning} />}
|
|
84
|
+
title={t('help.reportBug.title') || 'Report a Bug'}
|
|
85
|
+
description={t('help.reportBug.subtitle') || 'Help us improve by reporting issues'}
|
|
86
|
+
onPress={handleReportBug}
|
|
87
|
+
/>
|
|
88
|
+
</SettingsListGroup>
|
|
83
89
|
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
<SettingsListItem
|
|
107
|
-
icon={<SettingsIcon name="code-tags" color={themeColors.iconSharing} />}
|
|
108
|
-
title={t('help.developersPortal.title') || 'Developers Portal'}
|
|
109
|
-
description={t('help.developersPortal.subtitle') || 'API documentation and developer resources'}
|
|
110
|
-
onPress={() => {
|
|
111
|
-
Linking.openURL('https://developer.oxy.so').catch(() => {
|
|
112
|
-
toast.error(t('help.linkError') || 'Failed to open link');
|
|
113
|
-
});
|
|
114
|
-
}}
|
|
115
|
-
/>
|
|
116
|
-
</SettingsListGroup>
|
|
90
|
+
{/* Resources */}
|
|
91
|
+
<SettingsListGroup title={t('help.resources') || 'Resources'}>
|
|
92
|
+
<SettingsListItem
|
|
93
|
+
icon={<SettingsIcon name="file-document" color={bloomTheme.colors.textTertiary} />}
|
|
94
|
+
title={t('help.documentation.title') || 'Documentation'}
|
|
95
|
+
description={t('help.documentation.subtitle') || 'User guides and tutorials'}
|
|
96
|
+
onPress={handleDocumentation}
|
|
97
|
+
/>
|
|
98
|
+
<SettingsListItem
|
|
99
|
+
icon={<SettingsIcon name="account-group" color={bloomTheme.colors.secondary} />}
|
|
100
|
+
title={t('help.community.title') || 'Community'}
|
|
101
|
+
description={t('help.community.subtitle') || 'Join our community'}
|
|
102
|
+
onPress={handleCommunity}
|
|
103
|
+
/>
|
|
104
|
+
<SettingsListItem
|
|
105
|
+
icon={<SettingsIcon name="code-tags" color={bloomTheme.colors.error} />}
|
|
106
|
+
title={t('help.developersPortal.title') || 'Developers Portal'}
|
|
107
|
+
description={t('help.developersPortal.subtitle') || 'API documentation and developer resources'}
|
|
108
|
+
onPress={handleDevelopersPortal}
|
|
109
|
+
/>
|
|
110
|
+
</SettingsListGroup>
|
|
111
|
+
</View>
|
|
117
112
|
</ScrollView>
|
|
118
113
|
</View>
|
|
119
114
|
);
|
|
120
115
|
};
|
|
121
116
|
|
|
122
|
-
const styles = StyleSheet.create({
|
|
123
|
-
container: {
|
|
124
|
-
flex: 1,
|
|
125
|
-
},
|
|
126
|
-
content: {
|
|
127
|
-
flex: 1,
|
|
128
|
-
padding: 16,
|
|
129
|
-
},
|
|
130
|
-
});
|
|
131
|
-
|
|
132
117
|
export default React.memo(HelpSupportScreen);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { useState, useCallback } from 'react';
|
|
2
|
-
import { View,
|
|
2
|
+
import { View, ScrollView } from 'react-native';
|
|
3
3
|
import type { BaseScreenProps } from '../types/navigation';
|
|
4
4
|
import { toast } from '@oxyhq/bloom';
|
|
5
5
|
import Header from '../components/Header';
|
|
@@ -9,21 +9,15 @@ import { SettingsListGroup, SettingsListItem } from '@oxyhq/bloom/settings-list'
|
|
|
9
9
|
import { SettingsIcon } from '../components/SettingsIcon';
|
|
10
10
|
import { useI18n } from '../hooks/useI18n';
|
|
11
11
|
import { useTheme } from '@oxyhq/bloom/theme';
|
|
12
|
-
import { useColorScheme } from '../hooks/useColorScheme';
|
|
13
|
-
import { Colors } from '../constants/theme';
|
|
14
|
-
import { normalizeColorScheme } from '@oxyhq/core';
|
|
15
12
|
import { useOxy } from '../context/OxyContext';
|
|
16
13
|
import { Dialog, useDialogControl } from '@oxyhq/bloom';
|
|
17
14
|
|
|
18
15
|
interface HistoryItem { id: string; query: string; type: 'search' | 'browse'; timestamp: Date; }
|
|
19
16
|
|
|
20
|
-
const HistoryViewScreen: React.FC<BaseScreenProps> = ({ onClose,
|
|
17
|
+
const HistoryViewScreen: React.FC<BaseScreenProps> = ({ onClose, goBack }) => {
|
|
21
18
|
const { user } = useOxy();
|
|
22
19
|
const { t } = useI18n();
|
|
23
20
|
const bloomTheme = useTheme();
|
|
24
|
-
const colorScheme = useColorScheme();
|
|
25
|
-
const normalizedColorScheme = normalizeColorScheme(colorScheme);
|
|
26
|
-
const themeColors = Colors[normalizedColorScheme];
|
|
27
21
|
const [history, setHistory] = useState<HistoryItem[]>([]);
|
|
28
22
|
const [isLoading, setIsLoading] = useState(true);
|
|
29
23
|
const [isDeleting, setIsDeleting] = useState(false);
|
|
@@ -93,37 +87,39 @@ const HistoryViewScreen: React.FC<BaseScreenProps> = ({ onClose, theme, goBack }
|
|
|
93
87
|
};
|
|
94
88
|
|
|
95
89
|
return (
|
|
96
|
-
<View
|
|
90
|
+
<View className="flex-1 bg-bg">
|
|
97
91
|
<Header title={t('history.title') || 'History'} onBack={goBack || onClose} variant="minimal" elevation="subtle" />
|
|
98
|
-
<ScrollView
|
|
99
|
-
<
|
|
100
|
-
<
|
|
101
|
-
icon={<SettingsIcon name="clock-outline" color={themeColors.iconStorage} />}
|
|
102
|
-
title={t('history.deleteLast15Minutes.title') || 'Delete Last 15 Minutes'}
|
|
103
|
-
description={t('history.deleteLast15Minutes.subtitle') || 'Remove recent history entries'}
|
|
104
|
-
onPress={() => deleteLast15Dialog.open()}
|
|
105
|
-
disabled={isDeleting || history.length === 0}
|
|
106
|
-
/>
|
|
107
|
-
<SettingsListItem
|
|
108
|
-
icon={<SettingsIcon name="delete-outline" color={themeColors.iconSharing} />}
|
|
109
|
-
title={t('history.clearAll.title') || 'Clear All History'}
|
|
110
|
-
description={t('history.clearAll.subtitle') || 'Remove all history entries'}
|
|
111
|
-
onPress={() => clearAllDialog.open()}
|
|
112
|
-
disabled={isDeleting || history.length === 0}
|
|
113
|
-
/>
|
|
114
|
-
</SettingsListGroup>
|
|
115
|
-
<SettingsListGroup title={t('history.recent') || 'Recent History'}>
|
|
116
|
-
{isLoading ? <LoadingState message={t('history.loading') || 'Loading history...'} color={bloomTheme.colors.text} />
|
|
117
|
-
: history.length === 0 ? <EmptyState message={t('history.empty') || 'No history yet'} textColor={bloomTheme.colors.text} />
|
|
118
|
-
: history.map(item => (
|
|
92
|
+
<ScrollView className="flex-1">
|
|
93
|
+
<View className="px-screen-margin pb-space-24">
|
|
94
|
+
<SettingsListGroup title={t('history.actions') || 'Actions'}>
|
|
119
95
|
<SettingsListItem
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
96
|
+
icon={<SettingsIcon name="clock-outline" color={bloomTheme.colors.warning} />}
|
|
97
|
+
title={t('history.deleteLast15Minutes.title') || 'Delete Last 15 Minutes'}
|
|
98
|
+
description={t('history.deleteLast15Minutes.subtitle') || 'Remove recent history entries'}
|
|
99
|
+
onPress={() => deleteLast15Dialog.open()}
|
|
100
|
+
disabled={isDeleting || history.length === 0}
|
|
124
101
|
/>
|
|
125
|
-
|
|
126
|
-
|
|
102
|
+
<SettingsListItem
|
|
103
|
+
icon={<SettingsIcon name="delete-outline" color={bloomTheme.colors.error} />}
|
|
104
|
+
title={t('history.clearAll.title') || 'Clear All History'}
|
|
105
|
+
description={t('history.clearAll.subtitle') || 'Remove all history entries'}
|
|
106
|
+
onPress={() => clearAllDialog.open()}
|
|
107
|
+
disabled={isDeleting || history.length === 0}
|
|
108
|
+
/>
|
|
109
|
+
</SettingsListGroup>
|
|
110
|
+
<SettingsListGroup title={t('history.recent') || 'Recent History'}>
|
|
111
|
+
{isLoading ? <LoadingState message={t('history.loading') || 'Loading history...'} color={bloomTheme.colors.text} />
|
|
112
|
+
: history.length === 0 ? <EmptyState message={t('history.empty') || 'No history yet'} textColor={bloomTheme.colors.text} />
|
|
113
|
+
: history.map(item => (
|
|
114
|
+
<SettingsListItem
|
|
115
|
+
key={item.id}
|
|
116
|
+
icon={<SettingsIcon name={item.type === 'search' ? 'magnify' : 'earth'} color={item.type === 'search' ? bloomTheme.colors.info : bloomTheme.colors.primary} />}
|
|
117
|
+
title={item.query}
|
|
118
|
+
description={formatTime(item.timestamp)}
|
|
119
|
+
/>
|
|
120
|
+
))}
|
|
121
|
+
</SettingsListGroup>
|
|
122
|
+
</View>
|
|
127
123
|
</ScrollView>
|
|
128
124
|
<Dialog
|
|
129
125
|
control={deleteLast15Dialog}
|
|
@@ -147,6 +143,4 @@ const HistoryViewScreen: React.FC<BaseScreenProps> = ({ onClose, theme, goBack }
|
|
|
147
143
|
);
|
|
148
144
|
};
|
|
149
145
|
|
|
150
|
-
const styles = StyleSheet.create({ container: { flex: 1 }, content: { flex: 1, padding: 16 } });
|
|
151
|
-
|
|
152
146
|
export default React.memo(HistoryViewScreen);
|