@oxy.so/services 11.13.0 → 11.15.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/assets/assets/fonts/icons/OxyServicesIonicons.ttf +0 -0
- package/lib/commonjs/assets/assets/fonts/icons/OxyServicesMaterialCommunityIcons.ttf +0 -0
- package/lib/commonjs/assets/assets/fonts/icons/manifest.json +9 -9
- package/lib/commonjs/assets/assets/one/README.md +8 -0
- package/lib/commonjs/assets/assets/one/floral.jpg +0 -0
- package/lib/commonjs/assets/assets/one/floral.jpg.d.ts +2 -0
- package/lib/commonjs/assets/assets/one/floral.mp4 +0 -0
- package/lib/commonjs/assets/assets/one/floral.mp4.d.ts +2 -0
- package/lib/commonjs/assets/fonts/icons/OxyServicesIonicons.ttf +0 -0
- package/lib/commonjs/assets/fonts/icons/OxyServicesMaterialCommunityIcons.ttf +0 -0
- package/lib/commonjs/assets/fonts/icons/manifest.json +9 -9
- package/lib/commonjs/assets/one/README.md +8 -0
- package/lib/commonjs/assets/one/floral.jpg +0 -0
- package/lib/commonjs/assets/one/floral.mp4 +0 -0
- package/lib/commonjs/index.js +3 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/ui/client.js.map +1 -1
- package/lib/commonjs/ui/components/AccountInvitationAcceptance.js +2 -2
- package/lib/commonjs/ui/components/AccountInvitationAcceptance.js.map +1 -1
- package/lib/commonjs/ui/components/BloomLocaleBridge.js +2 -2
- package/lib/commonjs/ui/components/BloomLocaleBridge.js.map +1 -1
- package/lib/commonjs/ui/components/FollowButton.js +2 -2
- package/lib/commonjs/ui/components/FollowButton.js.map +1 -1
- package/lib/commonjs/ui/components/LanguageBridge.js +2 -2
- package/lib/commonjs/ui/components/LanguageBridge.js.map +1 -1
- package/lib/commonjs/ui/components/OxyAccountDialogScreen.js +5 -18
- package/lib/commonjs/ui/components/OxyAccountDialogScreen.js.map +1 -1
- package/lib/commonjs/ui/components/OxyAuthChooser.js +30 -25
- package/lib/commonjs/ui/components/OxyAuthChooser.js.map +1 -1
- package/lib/commonjs/ui/components/OxyConsentScreen.js +6 -30
- package/lib/commonjs/ui/components/OxyConsentScreen.js.map +1 -1
- package/lib/commonjs/ui/components/OxyOAuthCallback.js +2 -1
- package/lib/commonjs/ui/components/OxyOAuthCallback.js.map +1 -1
- package/lib/commonjs/ui/components/OxyProvider.js +36 -6
- package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
- package/lib/commonjs/ui/components/OxySignInButton.js +2 -2
- package/lib/commonjs/ui/components/OxySignInButton.js.map +1 -1
- package/lib/commonjs/ui/components/ProfileButton.js +7 -5
- package/lib/commonjs/ui/components/ProfileButton.js.map +1 -1
- package/lib/commonjs/ui/components/ProfileSummaryCard.js +24 -57
- package/lib/commonjs/ui/components/ProfileSummaryCard.js.map +1 -1
- package/lib/commonjs/ui/components/RequireOxyAuth.js +17 -43
- package/lib/commonjs/ui/components/RequireOxyAuth.js.map +1 -1
- package/lib/commonjs/ui/components/SettingsIcon.js +14 -25
- package/lib/commonjs/ui/components/SettingsIcon.js.map +1 -1
- package/lib/commonjs/ui/components/SurfaceHeaderAction.js +1 -1
- package/lib/commonjs/ui/components/SurfaceScreen.js +38 -47
- package/lib/commonjs/ui/components/SurfaceScreen.js.map +1 -1
- package/lib/commonjs/ui/components/authChooser/AccountsMenuView.js +232 -472
- package/lib/commonjs/ui/components/authChooser/AccountsMenuView.js.map +1 -1
- package/lib/commonjs/ui/components/authChooser/storageUsage.js +62 -0
- package/lib/commonjs/ui/components/authChooser/storageUsage.js.map +1 -0
- package/lib/commonjs/ui/components/authChooser/styles.js +21 -70
- package/lib/commonjs/ui/components/authChooser/styles.js.map +1 -1
- package/lib/commonjs/ui/components/authChooser/types.js.map +1 -1
- package/lib/commonjs/ui/components/fileManagement/FileViewer.js +6 -5
- package/lib/commonjs/ui/components/fileManagement/FileViewer.js.map +1 -1
- package/lib/commonjs/ui/components/modals/DeleteAccountModal.js +25 -25
- package/lib/commonjs/ui/components/modals/DeleteAccountModal.js.map +1 -1
- package/lib/commonjs/ui/components/organizations/OrganizationClaimReview.js +4 -4
- package/lib/commonjs/ui/components/organizations/OrganizationClaimReview.js.map +1 -1
- package/lib/commonjs/ui/components/organizations/OrganizationClaims.js +2 -2
- package/lib/commonjs/ui/components/organizations/OrganizationClaims.js.map +1 -1
- package/lib/commonjs/ui/components/organizations/OrganizationDirectorySearch.js +2 -2
- package/lib/commonjs/ui/components/organizations/OrganizationDirectorySearch.js.map +1 -1
- package/lib/commonjs/ui/components/organizations/OrganizationSettings.js +3 -3
- package/lib/commonjs/ui/components/organizations/OrganizationSettings.js.map +1 -1
- package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js +16 -50
- package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js.map +1 -1
- package/lib/commonjs/ui/components/payment/PaymentMethodStep.js +3 -3
- package/lib/commonjs/ui/components/payment/PaymentMethodStep.js.map +1 -1
- package/lib/commonjs/ui/components/payment/PaymentReviewStep.js +10 -12
- package/lib/commonjs/ui/components/payment/PaymentReviewStep.js.map +1 -1
- package/lib/commonjs/ui/components/payment/PaymentSummaryStep.js +3 -3
- package/lib/commonjs/ui/components/payment/PaymentSummaryStep.js.map +1 -1
- package/lib/commonjs/ui/components/signIn/InlineCommonsQr.js +13 -6
- package/lib/commonjs/ui/components/signIn/InlineCommonsQr.js.map +1 -1
- package/lib/commonjs/ui/components/signIn/OxyAccountPicker.js +53 -112
- package/lib/commonjs/ui/components/signIn/OxyAccountPicker.js.map +1 -1
- package/lib/commonjs/ui/components/signIn/OxyAuthenticatorPanel.js +2 -2
- package/lib/commonjs/ui/components/signIn/OxyAuthenticatorPanel.js.map +1 -1
- package/lib/commonjs/ui/components/signIn/OxyDeleteAccountPanel.js +2 -2
- package/lib/commonjs/ui/components/signIn/OxyDeleteAccountPanel.js.map +1 -1
- package/lib/commonjs/ui/components/signIn/OxyEmailAccountChoice.js +2 -2
- package/lib/commonjs/ui/components/signIn/OxyEmailAccountChoice.js.map +1 -1
- package/lib/commonjs/ui/components/signIn/OxyLinkCommonsPanel.js +2 -2
- package/lib/commonjs/ui/components/signIn/OxyLinkCommonsPanel.js.map +1 -1
- package/lib/commonjs/ui/components/signIn/OxyPasswordPanel.js +2 -2
- package/lib/commonjs/ui/components/signIn/OxyPasswordPanel.js.map +1 -1
- package/lib/commonjs/ui/components/signIn/OxySignInPanel.js +2 -2
- package/lib/commonjs/ui/components/signIn/OxySignInPanel.js.map +1 -1
- package/lib/commonjs/ui/components/signIn/OxySignUpPanel.js +2 -2
- package/lib/commonjs/ui/components/signIn/OxySignUpPanel.js.map +1 -1
- package/lib/commonjs/ui/components/signIn/ReauthStep.js +31 -13
- package/lib/commonjs/ui/components/signIn/ReauthStep.js.map +1 -1
- package/lib/commonjs/ui/components/signIn/accountFlowParts.js +2 -2
- package/lib/commonjs/ui/components/signIn/accountFlowParts.js.map +1 -1
- package/lib/commonjs/ui/components/supervision/PersonPicker.js +2 -2
- package/lib/commonjs/ui/components/supervision/PersonPicker.js.map +1 -1
- package/lib/commonjs/ui/context/OxyContext.js +32 -58
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
- package/lib/commonjs/ui/context/oxyRuntimeContext.js +57 -0
- package/lib/commonjs/ui/context/oxyRuntimeContext.js.map +1 -0
- package/lib/commonjs/ui/context/oxySupportContext.js +10 -0
- package/lib/commonjs/ui/context/oxySupportContext.js.map +1 -0
- package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js +10 -10
- package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
- package/lib/commonjs/ui/hooks/mutations/useServicesMutations.js +6 -6
- package/lib/commonjs/ui/hooks/mutations/useServicesMutations.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useAccountQueries.js +13 -10
- package/lib/commonjs/ui/hooks/queries/useAccountQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useAuthMethods.js +3 -3
- package/lib/commonjs/ui/hooks/queries/useAuthMethods.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useFileQueries.js +3 -3
- package/lib/commonjs/ui/hooks/queries/useFileQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/usePaymentQueries.js +5 -5
- package/lib/commonjs/ui/hooks/queries/usePaymentQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/usePersonalPlans.js +3 -3
- package/lib/commonjs/ui/hooks/queries/usePersonalPlans.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useSecurityQueries.js +4 -4
- package/lib/commonjs/ui/hooks/queries/useSecurityQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useServicesQueries.js +7 -7
- package/lib/commonjs/ui/hooks/queries/useServicesQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/useSupervision.js +2 -2
- package/lib/commonjs/ui/hooks/queries/useSupervision.js.map +1 -1
- package/lib/commonjs/ui/hooks/useAuth.js +2 -2
- package/lib/commonjs/ui/hooks/useAuth.js.map +1 -1
- package/lib/commonjs/ui/hooks/useDeviceSwitcher.js +2 -2
- package/lib/commonjs/ui/hooks/useDeviceSwitcher.js.map +1 -1
- package/lib/commonjs/ui/hooks/useDisplayCurrency.js +2 -2
- package/lib/commonjs/ui/hooks/useDisplayCurrency.js.map +1 -1
- package/lib/commonjs/ui/hooks/useFollow.js +3 -3
- package/lib/commonjs/ui/hooks/useFollow.js.map +1 -1
- package/lib/commonjs/ui/hooks/useFollowTarget.js +2 -2
- package/lib/commonjs/ui/hooks/useFollowTarget.js.map +1 -1
- package/lib/commonjs/ui/hooks/useI18n.js +2 -2
- package/lib/commonjs/ui/hooks/useI18n.js.map +1 -1
- package/lib/commonjs/ui/hooks/useLanguageManagement.js +33 -18
- package/lib/commonjs/ui/hooks/useLanguageManagement.js.map +1 -1
- package/lib/commonjs/ui/hooks/useOxyEvent.js +2 -2
- package/lib/commonjs/ui/hooks/useOxyEvent.js.map +1 -1
- package/lib/commonjs/ui/hooks/useSurfaceHeader.js +40 -2
- package/lib/commonjs/ui/hooks/useSurfaceHeader.js.map +1 -1
- package/lib/commonjs/ui/hooks/useUsernameAvailability.js +60 -0
- package/lib/commonjs/ui/hooks/useUsernameAvailability.js.map +1 -0
- package/lib/commonjs/ui/icons/subsetGlyphMaps.js +4 -4
- package/lib/commonjs/ui/icons/subsetGlyphMaps.js.map +1 -1
- package/lib/commonjs/ui/index.js +37 -0
- package/lib/commonjs/ui/index.js.map +1 -1
- package/lib/commonjs/ui/navigation/accountDialogManager.js +2 -0
- package/lib/commonjs/ui/navigation/accountDialogManager.js.map +1 -1
- package/lib/commonjs/ui/navigation/bottomSheetManager.js +2 -2
- package/lib/commonjs/ui/navigation/bottomSheetManager.js.map +1 -1
- package/lib/commonjs/ui/navigation/routes.js +27 -101
- package/lib/commonjs/ui/navigation/routes.js.map +1 -1
- package/lib/commonjs/ui/navigation/screenComponents.js +101 -0
- package/lib/commonjs/ui/navigation/screenComponents.js.map +1 -0
- package/lib/commonjs/ui/navigation/surfaceBackBridge.js +1 -1
- package/lib/commonjs/ui/navigation/surfaceBackBridge.js.map +1 -1
- package/lib/commonjs/ui/navigation/surfaceNavStack.js +25 -6
- package/lib/commonjs/ui/navigation/surfaceNavStack.js.map +1 -1
- package/lib/commonjs/ui/navigation/surfaceRegistry.js +4 -0
- package/lib/commonjs/ui/navigation/surfaceRegistry.js.map +1 -1
- package/lib/commonjs/ui/navigation/surfaces.js +19 -7
- package/lib/commonjs/ui/navigation/surfaces.js.map +1 -1
- package/lib/commonjs/ui/one-video.js +50 -0
- package/lib/commonjs/ui/one-video.js.map +1 -0
- package/lib/commonjs/ui/runtime/createOxyRuntime.js +7 -1
- package/lib/commonjs/ui/runtime/createOxyRuntime.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountMembersScreen.js +7 -6
- package/lib/commonjs/ui/screens/AccountMembersScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js +10 -10
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountVerificationScreen.js +2 -2
- package/lib/commonjs/ui/screens/AccountVerificationScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AppInfoScreen.js +36 -35
- package/lib/commonjs/ui/screens/AppInfoScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AvatarCropScreen.js +35 -64
- package/lib/commonjs/ui/screens/AvatarCropScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ChangeAvatarScreen.js +8 -8
- package/lib/commonjs/ui/screens/ChangeAvatarScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ConnectedAppsScreen.js +13 -14
- package/lib/commonjs/ui/screens/ConnectedAppsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/CreateAccountScreen.js +10 -10
- package/lib/commonjs/ui/screens/CreateAccountScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/DomainsScreen.js +7 -14
- package/lib/commonjs/ui/screens/DomainsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/EditProfileFieldScreen.js +137 -285
- package/lib/commonjs/ui/screens/EditProfileFieldScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/EditProfileScreen.js +19 -16
- package/lib/commonjs/ui/screens/EditProfileScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FileManagementScreen.js +38 -189
- package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FileTrashScreen.js +2 -2
- package/lib/commonjs/ui/screens/FileTrashScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/HelpSupportScreen.js +74 -62
- package/lib/commonjs/ui/screens/HelpSupportScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/HistoryViewScreen.js +9 -14
- package/lib/commonjs/ui/screens/HistoryViewScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/LanguageSelectorScreen.js +35 -36
- package/lib/commonjs/ui/screens/LanguageSelectorScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/LegalDocumentsScreen.js +9 -17
- package/lib/commonjs/ui/screens/LegalDocumentsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ManageAccountScreen.js +319 -328
- package/lib/commonjs/ui/screens/ManageAccountScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/NotificationsScreen.js +10 -10
- package/lib/commonjs/ui/screens/NotificationsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/OxyOneScreen.js +213 -0
- package/lib/commonjs/ui/screens/OxyOneScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/PreferencesScreen.js +12 -12
- package/lib/commonjs/ui/screens/PreferencesScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +64 -87
- package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ProfileScreen.js +309 -233
- package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ReportBugScreen.js +72 -0
- package/lib/commonjs/ui/screens/ReportBugScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/SearchSettingsScreen.js +32 -61
- package/lib/commonjs/ui/screens/SearchSettingsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/SupervisionScreen.js +4 -4
- package/lib/commonjs/ui/screens/SupervisionScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/UserListScreen.js +66 -58
- package/lib/commonjs/ui/screens/UserListScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js +2 -2
- package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/fileManagement/FileListSection.js +6 -5
- package/lib/commonjs/ui/screens/fileManagement/FileListSection.js.map +1 -1
- package/lib/commonjs/ui/screens/fileManagement/PhotoPickerSection.js +17 -82
- package/lib/commonjs/ui/screens/fileManagement/PhotoPickerSection.js.map +1 -1
- package/lib/commonjs/ui/screens/fileManagement/UploadBar.js +3 -1
- package/lib/commonjs/ui/screens/fileManagement/UploadBar.js.map +1 -1
- package/lib/commonjs/ui/screens/index.js +7 -0
- package/lib/commonjs/ui/screens/index.js.map +1 -1
- package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js +12 -22
- package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js +37 -67
- package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js +20 -8
- package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/trust/TrustRulesScreen.js +6 -10
- package/lib/commonjs/ui/screens/trust/TrustRulesScreen.js.map +1 -1
- package/lib/module/assets/assets/fonts/icons/OxyServicesIonicons.ttf +0 -0
- package/lib/module/assets/assets/fonts/icons/OxyServicesMaterialCommunityIcons.ttf +0 -0
- package/lib/module/assets/assets/fonts/icons/manifest.json +9 -9
- package/lib/module/assets/assets/one/README.md +8 -0
- package/lib/module/assets/assets/one/floral.jpg +0 -0
- package/lib/module/assets/assets/one/floral.jpg.d.ts +2 -0
- package/lib/module/assets/assets/one/floral.mp4 +0 -0
- package/lib/module/assets/assets/one/floral.mp4.d.ts +2 -0
- package/lib/module/assets/fonts/icons/OxyServicesIonicons.ttf +0 -0
- package/lib/module/assets/fonts/icons/OxyServicesMaterialCommunityIcons.ttf +0 -0
- package/lib/module/assets/fonts/icons/manifest.json +9 -9
- package/lib/module/assets/one/README.md +8 -0
- package/lib/module/assets/one/floral.jpg +0 -0
- package/lib/module/assets/one/floral.mp4 +0 -0
- package/lib/module/index.js +3 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/ui/client.js +2 -3
- package/lib/module/ui/client.js.map +1 -1
- package/lib/module/ui/components/AccountInvitationAcceptance.js +1 -1
- package/lib/module/ui/components/AccountInvitationAcceptance.js.map +1 -1
- package/lib/module/ui/components/BloomLocaleBridge.js +1 -1
- package/lib/module/ui/components/BloomLocaleBridge.js.map +1 -1
- package/lib/module/ui/components/FollowButton.js +1 -1
- package/lib/module/ui/components/FollowButton.js.map +1 -1
- package/lib/module/ui/components/LanguageBridge.js +1 -1
- package/lib/module/ui/components/LanguageBridge.js.map +1 -1
- package/lib/module/ui/components/OxyAccountDialogScreen.js +4 -17
- package/lib/module/ui/components/OxyAccountDialogScreen.js.map +1 -1
- package/lib/module/ui/components/OxyAuthChooser.js +29 -24
- package/lib/module/ui/components/OxyAuthChooser.js.map +1 -1
- package/lib/module/ui/components/OxyConsentScreen.js +8 -32
- package/lib/module/ui/components/OxyConsentScreen.js.map +1 -1
- package/lib/module/ui/components/OxyOAuthCallback.js +3 -2
- package/lib/module/ui/components/OxyOAuthCallback.js.map +1 -1
- package/lib/module/ui/components/OxyProvider.js +38 -6
- package/lib/module/ui/components/OxyProvider.js.map +1 -1
- package/lib/module/ui/components/OxySignInButton.js +1 -1
- package/lib/module/ui/components/OxySignInButton.js.map +1 -1
- package/lib/module/ui/components/ProfileButton.js +6 -4
- package/lib/module/ui/components/ProfileButton.js.map +1 -1
- package/lib/module/ui/components/ProfileSummaryCard.js +24 -57
- package/lib/module/ui/components/ProfileSummaryCard.js.map +1 -1
- package/lib/module/ui/components/RequireOxyAuth.js +17 -43
- package/lib/module/ui/components/RequireOxyAuth.js.map +1 -1
- package/lib/module/ui/components/SettingsIcon.js +14 -25
- package/lib/module/ui/components/SettingsIcon.js.map +1 -1
- package/lib/module/ui/components/SurfaceHeaderAction.js +1 -1
- package/lib/module/ui/components/SurfaceScreen.js +39 -48
- package/lib/module/ui/components/SurfaceScreen.js.map +1 -1
- package/lib/module/ui/components/authChooser/AccountsMenuView.js +237 -475
- package/lib/module/ui/components/authChooser/AccountsMenuView.js.map +1 -1
- package/lib/module/ui/components/authChooser/storageUsage.js +56 -0
- package/lib/module/ui/components/authChooser/storageUsage.js.map +1 -0
- package/lib/module/ui/components/authChooser/styles.js +21 -70
- package/lib/module/ui/components/authChooser/styles.js.map +1 -1
- package/lib/module/ui/components/authChooser/types.js.map +1 -1
- package/lib/module/ui/components/fileManagement/FileViewer.js +7 -6
- package/lib/module/ui/components/fileManagement/FileViewer.js.map +1 -1
- package/lib/module/ui/components/modals/DeleteAccountModal.js +26 -26
- package/lib/module/ui/components/modals/DeleteAccountModal.js.map +1 -1
- package/lib/module/ui/components/organizations/OrganizationClaimReview.js +1 -1
- package/lib/module/ui/components/organizations/OrganizationClaimReview.js.map +1 -1
- package/lib/module/ui/components/organizations/OrganizationClaims.js +1 -1
- package/lib/module/ui/components/organizations/OrganizationClaims.js.map +1 -1
- package/lib/module/ui/components/organizations/OrganizationDirectorySearch.js +1 -1
- package/lib/module/ui/components/organizations/OrganizationDirectorySearch.js.map +1 -1
- package/lib/module/ui/components/organizations/OrganizationSettings.js +1 -1
- package/lib/module/ui/components/organizations/OrganizationSettings.js.map +1 -1
- package/lib/module/ui/components/payment/PaymentDetailsStep.js +17 -51
- package/lib/module/ui/components/payment/PaymentDetailsStep.js.map +1 -1
- package/lib/module/ui/components/payment/PaymentMethodStep.js +3 -3
- package/lib/module/ui/components/payment/PaymentMethodStep.js.map +1 -1
- package/lib/module/ui/components/payment/PaymentReviewStep.js +11 -13
- package/lib/module/ui/components/payment/PaymentReviewStep.js.map +1 -1
- package/lib/module/ui/components/payment/PaymentSummaryStep.js +3 -3
- package/lib/module/ui/components/payment/PaymentSummaryStep.js.map +1 -1
- package/lib/module/ui/components/signIn/InlineCommonsQr.js +14 -7
- package/lib/module/ui/components/signIn/InlineCommonsQr.js.map +1 -1
- package/lib/module/ui/components/signIn/OxyAccountPicker.js +54 -113
- package/lib/module/ui/components/signIn/OxyAccountPicker.js.map +1 -1
- package/lib/module/ui/components/signIn/OxyAuthenticatorPanel.js +1 -1
- package/lib/module/ui/components/signIn/OxyAuthenticatorPanel.js.map +1 -1
- package/lib/module/ui/components/signIn/OxyDeleteAccountPanel.js +1 -1
- package/lib/module/ui/components/signIn/OxyDeleteAccountPanel.js.map +1 -1
- package/lib/module/ui/components/signIn/OxyEmailAccountChoice.js +1 -1
- package/lib/module/ui/components/signIn/OxyEmailAccountChoice.js.map +1 -1
- package/lib/module/ui/components/signIn/OxyLinkCommonsPanel.js +1 -1
- package/lib/module/ui/components/signIn/OxyLinkCommonsPanel.js.map +1 -1
- package/lib/module/ui/components/signIn/OxyPasswordPanel.js +1 -1
- package/lib/module/ui/components/signIn/OxyPasswordPanel.js.map +1 -1
- package/lib/module/ui/components/signIn/OxySignInPanel.js +1 -1
- package/lib/module/ui/components/signIn/OxySignInPanel.js.map +1 -1
- package/lib/module/ui/components/signIn/OxySignUpPanel.js +1 -1
- package/lib/module/ui/components/signIn/OxySignUpPanel.js.map +1 -1
- package/lib/module/ui/components/signIn/ReauthStep.js +30 -12
- package/lib/module/ui/components/signIn/ReauthStep.js.map +1 -1
- package/lib/module/ui/components/signIn/accountFlowParts.js +1 -1
- package/lib/module/ui/components/signIn/accountFlowParts.js.map +1 -1
- package/lib/module/ui/components/supervision/PersonPicker.js +1 -1
- package/lib/module/ui/components/supervision/PersonPicker.js.map +1 -1
- package/lib/module/ui/context/OxyContext.js +7 -51
- package/lib/module/ui/context/OxyContext.js.map +1 -1
- package/lib/module/ui/context/oxyRuntimeContext.js +49 -0
- package/lib/module/ui/context/oxyRuntimeContext.js.map +1 -0
- package/lib/module/ui/context/oxySupportContext.js +7 -0
- package/lib/module/ui/context/oxySupportContext.js.map +1 -0
- package/lib/module/ui/hooks/mutations/useAccountMutations.js +1 -1
- package/lib/module/ui/hooks/mutations/useAccountMutations.js.map +1 -1
- package/lib/module/ui/hooks/mutations/useServicesMutations.js +1 -1
- package/lib/module/ui/hooks/mutations/useServicesMutations.js.map +1 -1
- package/lib/module/ui/hooks/queries/useAccountQueries.js +5 -2
- package/lib/module/ui/hooks/queries/useAccountQueries.js.map +1 -1
- package/lib/module/ui/hooks/queries/useAuthMethods.js +1 -1
- package/lib/module/ui/hooks/queries/useAuthMethods.js.map +1 -1
- package/lib/module/ui/hooks/queries/useFileQueries.js +1 -1
- package/lib/module/ui/hooks/queries/useFileQueries.js.map +1 -1
- package/lib/module/ui/hooks/queries/usePaymentQueries.js +1 -1
- package/lib/module/ui/hooks/queries/usePaymentQueries.js.map +1 -1
- package/lib/module/ui/hooks/queries/usePersonalPlans.js +1 -1
- package/lib/module/ui/hooks/queries/usePersonalPlans.js.map +1 -1
- package/lib/module/ui/hooks/queries/useSecurityQueries.js +1 -1
- package/lib/module/ui/hooks/queries/useSecurityQueries.js.map +1 -1
- package/lib/module/ui/hooks/queries/useServicesQueries.js +1 -1
- package/lib/module/ui/hooks/queries/useServicesQueries.js.map +1 -1
- package/lib/module/ui/hooks/queries/useSupervision.js +1 -1
- package/lib/module/ui/hooks/queries/useSupervision.js.map +1 -1
- package/lib/module/ui/hooks/useAuth.js +1 -1
- package/lib/module/ui/hooks/useAuth.js.map +1 -1
- package/lib/module/ui/hooks/useDeviceSwitcher.js +1 -1
- package/lib/module/ui/hooks/useDeviceSwitcher.js.map +1 -1
- package/lib/module/ui/hooks/useDisplayCurrency.js +1 -1
- package/lib/module/ui/hooks/useDisplayCurrency.js.map +1 -1
- package/lib/module/ui/hooks/useFollow.js +1 -1
- package/lib/module/ui/hooks/useFollow.js.map +1 -1
- package/lib/module/ui/hooks/useFollowTarget.js +1 -1
- package/lib/module/ui/hooks/useFollowTarget.js.map +1 -1
- package/lib/module/ui/hooks/useI18n.js +1 -1
- package/lib/module/ui/hooks/useI18n.js.map +1 -1
- package/lib/module/ui/hooks/useLanguageManagement.js +34 -19
- package/lib/module/ui/hooks/useLanguageManagement.js.map +1 -1
- package/lib/module/ui/hooks/useOxyEvent.js +1 -1
- package/lib/module/ui/hooks/useOxyEvent.js.map +1 -1
- package/lib/module/ui/hooks/useSurfaceHeader.js +41 -3
- package/lib/module/ui/hooks/useSurfaceHeader.js.map +1 -1
- package/lib/module/ui/hooks/useUsernameAvailability.js +56 -0
- package/lib/module/ui/hooks/useUsernameAvailability.js.map +1 -0
- package/lib/module/ui/icons/subsetGlyphMaps.js +4 -4
- package/lib/module/ui/icons/subsetGlyphMaps.js.map +1 -1
- package/lib/module/ui/index.js +4 -0
- package/lib/module/ui/index.js.map +1 -1
- package/lib/module/ui/navigation/accountDialogManager.js +2 -0
- package/lib/module/ui/navigation/accountDialogManager.js.map +1 -1
- package/lib/module/ui/navigation/bottomSheetManager.js +3 -3
- package/lib/module/ui/navigation/bottomSheetManager.js.map +1 -1
- package/lib/module/ui/navigation/routes.js +24 -102
- package/lib/module/ui/navigation/routes.js.map +1 -1
- package/lib/module/ui/navigation/screenComponents.js +96 -0
- package/lib/module/ui/navigation/screenComponents.js.map +1 -0
- package/lib/module/ui/navigation/surfaceBackBridge.js +1 -1
- package/lib/module/ui/navigation/surfaceBackBridge.js.map +1 -1
- package/lib/module/ui/navigation/surfaceNavStack.js +25 -6
- package/lib/module/ui/navigation/surfaceNavStack.js.map +1 -1
- package/lib/module/ui/navigation/surfaceRegistry.js +4 -0
- package/lib/module/ui/navigation/surfaceRegistry.js.map +1 -1
- package/lib/module/ui/navigation/surfaces.js +19 -7
- package/lib/module/ui/navigation/surfaces.js.map +1 -1
- package/lib/module/ui/one-video.js +45 -0
- package/lib/module/ui/one-video.js.map +1 -0
- package/lib/module/ui/runtime/createOxyRuntime.js +7 -1
- package/lib/module/ui/runtime/createOxyRuntime.js.map +1 -1
- package/lib/module/ui/screens/AccountMembersScreen.js +7 -6
- package/lib/module/ui/screens/AccountMembersScreen.js.map +1 -1
- package/lib/module/ui/screens/AccountSettingsScreen.js +10 -10
- package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -1
- package/lib/module/ui/screens/AccountVerificationScreen.js +1 -1
- package/lib/module/ui/screens/AccountVerificationScreen.js.map +1 -1
- package/lib/module/ui/screens/AppInfoScreen.js +36 -35
- package/lib/module/ui/screens/AppInfoScreen.js.map +1 -1
- package/lib/module/ui/screens/AvatarCropScreen.js +35 -64
- package/lib/module/ui/screens/AvatarCropScreen.js.map +1 -1
- package/lib/module/ui/screens/ChangeAvatarScreen.js +7 -7
- package/lib/module/ui/screens/ChangeAvatarScreen.js.map +1 -1
- package/lib/module/ui/screens/ConnectedAppsScreen.js +13 -14
- package/lib/module/ui/screens/ConnectedAppsScreen.js.map +1 -1
- package/lib/module/ui/screens/CreateAccountScreen.js +9 -9
- package/lib/module/ui/screens/CreateAccountScreen.js.map +1 -1
- package/lib/module/ui/screens/DomainsScreen.js +6 -13
- package/lib/module/ui/screens/DomainsScreen.js.map +1 -1
- package/lib/module/ui/screens/EditProfileFieldScreen.js +138 -287
- package/lib/module/ui/screens/EditProfileFieldScreen.js.map +1 -1
- package/lib/module/ui/screens/EditProfileScreen.js +18 -15
- package/lib/module/ui/screens/EditProfileScreen.js.map +1 -1
- package/lib/module/ui/screens/FileManagementScreen.js +38 -189
- package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
- package/lib/module/ui/screens/FileTrashScreen.js +1 -1
- package/lib/module/ui/screens/FileTrashScreen.js.map +1 -1
- package/lib/module/ui/screens/HelpSupportScreen.js +76 -64
- package/lib/module/ui/screens/HelpSupportScreen.js.map +1 -1
- package/lib/module/ui/screens/HistoryViewScreen.js +8 -13
- package/lib/module/ui/screens/HistoryViewScreen.js.map +1 -1
- package/lib/module/ui/screens/LanguageSelectorScreen.js +34 -35
- package/lib/module/ui/screens/LanguageSelectorScreen.js.map +1 -1
- package/lib/module/ui/screens/LegalDocumentsScreen.js +9 -17
- package/lib/module/ui/screens/LegalDocumentsScreen.js.map +1 -1
- package/lib/module/ui/screens/ManageAccountScreen.js +319 -328
- package/lib/module/ui/screens/ManageAccountScreen.js.map +1 -1
- package/lib/module/ui/screens/NotificationsScreen.js +9 -9
- package/lib/module/ui/screens/NotificationsScreen.js.map +1 -1
- package/lib/module/ui/screens/OxyOneScreen.js +208 -0
- package/lib/module/ui/screens/OxyOneScreen.js.map +1 -0
- package/lib/module/ui/screens/PreferencesScreen.js +11 -11
- package/lib/module/ui/screens/PreferencesScreen.js.map +1 -1
- package/lib/module/ui/screens/PrivacySettingsScreen.js +64 -87
- package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
- package/lib/module/ui/screens/ProfileScreen.js +310 -235
- package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
- package/lib/module/ui/screens/ReportBugScreen.js +68 -0
- package/lib/module/ui/screens/ReportBugScreen.js.map +1 -0
- package/lib/module/ui/screens/SearchSettingsScreen.js +33 -62
- package/lib/module/ui/screens/SearchSettingsScreen.js.map +1 -1
- package/lib/module/ui/screens/SupervisionScreen.js +1 -1
- package/lib/module/ui/screens/SupervisionScreen.js.map +1 -1
- package/lib/module/ui/screens/UserListScreen.js +67 -59
- package/lib/module/ui/screens/UserListScreen.js.map +1 -1
- package/lib/module/ui/screens/WelcomeNewUserScreen.js +1 -1
- package/lib/module/ui/screens/WelcomeNewUserScreen.js.map +1 -1
- package/lib/module/ui/screens/fileManagement/FileListSection.js +7 -6
- package/lib/module/ui/screens/fileManagement/FileListSection.js.map +1 -1
- package/lib/module/ui/screens/fileManagement/PhotoPickerSection.js +19 -84
- package/lib/module/ui/screens/fileManagement/PhotoPickerSection.js.map +1 -1
- package/lib/module/ui/screens/fileManagement/UploadBar.js +3 -1
- package/lib/module/ui/screens/fileManagement/UploadBar.js.map +1 -1
- package/lib/module/ui/screens/index.js +1 -0
- package/lib/module/ui/screens/index.js.map +1 -1
- package/lib/module/ui/screens/trust/TrustCenterScreen.js +11 -21
- package/lib/module/ui/screens/trust/TrustCenterScreen.js.map +1 -1
- package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js +37 -67
- package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
- package/lib/module/ui/screens/trust/TrustRewardsScreen.js +20 -8
- package/lib/module/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
- package/lib/module/ui/screens/trust/TrustRulesScreen.js +5 -9
- package/lib/module/ui/screens/trust/TrustRulesScreen.js.map +1 -1
- package/lib/typescript/assets/one/floral.jpg.d.ts +2 -0
- package/lib/typescript/assets/one/floral.mp4.d.ts +2 -0
- package/lib/typescript/commonjs/index.d.ts +1 -1
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/client.d.ts +1 -2
- package/lib/typescript/commonjs/ui/client.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/OxyAccountDialogScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/OxyAuthChooser.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/OxyConsentScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/OxyOAuthCallback.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/OxyProvider.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/ProfileButton.d.ts +3 -1
- package/lib/typescript/commonjs/ui/components/ProfileButton.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/ProfileSummaryCard.d.ts +4 -13
- package/lib/typescript/commonjs/ui/components/ProfileSummaryCard.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/RequireOxyAuth.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/SettingsIcon.d.ts +0 -4
- package/lib/typescript/commonjs/ui/components/SettingsIcon.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/SurfaceHeaderAction.d.ts +1 -1
- package/lib/typescript/commonjs/ui/components/SurfaceHeaderAction.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/SurfaceScreen.d.ts +8 -1
- package/lib/typescript/commonjs/ui/components/SurfaceScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/authChooser/AccountsMenuView.d.ts +2 -29
- package/lib/typescript/commonjs/ui/components/authChooser/AccountsMenuView.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/authChooser/storageUsage.d.ts +11 -0
- package/lib/typescript/commonjs/ui/components/authChooser/storageUsage.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/components/authChooser/styles.d.ts +24 -73
- package/lib/typescript/commonjs/ui/components/authChooser/styles.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/authChooser/types.d.ts +6 -6
- package/lib/typescript/commonjs/ui/components/authChooser/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/fileManagement/FileViewer.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/modals/DeleteAccountModal.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/payment/PaymentDetailsStep.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/payment/PaymentReviewStep.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/payment/paymentStyles.d.ts +22 -22
- package/lib/typescript/commonjs/ui/components/payment/paymentStyles.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/signIn/OxyAccountPicker.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/signIn/ReauthStep.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/OxyContext.d.ts +2 -28
- package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/oxyContextTypes.d.ts +1 -0
- package/lib/typescript/commonjs/ui/context/oxyContextTypes.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/oxyRuntimeContext.d.ts +31 -0
- package/lib/typescript/commonjs/ui/context/oxyRuntimeContext.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/context/oxySupportContext.d.ts +9 -0
- package/lib/typescript/commonjs/ui/context/oxySupportContext.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/usePersonalPlans.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useAuth.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/useAuth.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useLanguageManagement.d.ts +4 -2
- package/lib/typescript/commonjs/ui/hooks/useLanguageManagement.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useSurfaceHeader.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/useSurfaceHeader.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useUsernameAvailability.d.ts +9 -0
- package/lib/typescript/commonjs/ui/hooks/useUsernameAvailability.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/icons/Ionicons.d.ts +1 -1
- package/lib/typescript/commonjs/ui/icons/Ionicons.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/icons/MaterialCommunityIcons.d.ts +1 -1
- package/lib/typescript/commonjs/ui/icons/MaterialCommunityIcons.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/icons/subsetGlyphMaps.d.ts +4 -4
- package/lib/typescript/commonjs/ui/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/navigation/accountDialogManager.d.ts +15 -1
- package/lib/typescript/commonjs/ui/navigation/accountDialogManager.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/navigation/routes.d.ts +10 -18
- package/lib/typescript/commonjs/ui/navigation/routes.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/navigation/screenComponents.d.ts +4 -0
- package/lib/typescript/commonjs/ui/navigation/screenComponents.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/navigation/surfaceNavStack.d.ts +3 -1
- package/lib/typescript/commonjs/ui/navigation/surfaceNavStack.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/navigation/surfaceRegistry.d.ts +6 -1
- package/lib/typescript/commonjs/ui/navigation/surfaceRegistry.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/navigation/surfaces.d.ts +1 -1
- package/lib/typescript/commonjs/ui/navigation/surfaces.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/one-video.d.ts +3 -0
- package/lib/typescript/commonjs/ui/one-video.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/runtime/createOxyRuntime.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/DomainsScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/EditProfileScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/FileManagementScreen.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/LegalDocumentsScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts +4 -1
- package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/OxyOneScreen.d.ts +4 -0
- package/lib/typescript/commonjs/ui/screens/OxyOneScreen.d.ts.map +1 -0
- 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/ReportBugScreen.d.ts +2 -0
- package/lib/typescript/commonjs/ui/screens/ReportBugScreen.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/UserListScreen.d.ts +1 -5
- package/lib/typescript/commonjs/ui/screens/UserListScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/fileManagement/FileListSection.d.ts +1 -1
- package/lib/typescript/commonjs/ui/screens/fileManagement/FileListSection.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/fileManagement/PhotoPickerSection.d.ts +1 -1
- package/lib/typescript/commonjs/ui/screens/fileManagement/PhotoPickerSection.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/fileManagement/UploadBar.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/index.d.ts +1 -0
- package/lib/typescript/commonjs/ui/screens/index.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/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/types/navigation.d.ts +12 -0
- package/lib/typescript/commonjs/ui/types/navigation.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +1 -1
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/ui/client.d.ts +1 -2
- package/lib/typescript/module/ui/client.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/OxyAccountDialogScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/OxyAuthChooser.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/OxyConsentScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/OxyOAuthCallback.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/OxyProvider.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/ProfileButton.d.ts +3 -1
- package/lib/typescript/module/ui/components/ProfileButton.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/ProfileSummaryCard.d.ts +4 -13
- package/lib/typescript/module/ui/components/ProfileSummaryCard.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/RequireOxyAuth.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/SettingsIcon.d.ts +0 -4
- package/lib/typescript/module/ui/components/SettingsIcon.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/SurfaceHeaderAction.d.ts +1 -1
- package/lib/typescript/module/ui/components/SurfaceHeaderAction.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/SurfaceScreen.d.ts +8 -1
- package/lib/typescript/module/ui/components/SurfaceScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/authChooser/AccountsMenuView.d.ts +2 -29
- package/lib/typescript/module/ui/components/authChooser/AccountsMenuView.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/authChooser/storageUsage.d.ts +11 -0
- package/lib/typescript/module/ui/components/authChooser/storageUsage.d.ts.map +1 -0
- package/lib/typescript/module/ui/components/authChooser/styles.d.ts +24 -73
- package/lib/typescript/module/ui/components/authChooser/styles.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/authChooser/types.d.ts +6 -6
- package/lib/typescript/module/ui/components/authChooser/types.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/fileManagement/FileViewer.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/modals/DeleteAccountModal.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/payment/PaymentDetailsStep.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/payment/PaymentReviewStep.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/payment/paymentStyles.d.ts +22 -22
- package/lib/typescript/module/ui/components/payment/paymentStyles.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/signIn/OxyAccountPicker.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/signIn/ReauthStep.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/OxyContext.d.ts +2 -28
- package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/oxyContextTypes.d.ts +1 -0
- package/lib/typescript/module/ui/context/oxyContextTypes.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/oxyRuntimeContext.d.ts +31 -0
- package/lib/typescript/module/ui/context/oxyRuntimeContext.d.ts.map +1 -0
- package/lib/typescript/module/ui/context/oxySupportContext.d.ts +9 -0
- package/lib/typescript/module/ui/context/oxySupportContext.d.ts.map +1 -0
- package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/useAccountQueries.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/usePersonalPlans.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useAuth.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/useAuth.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useLanguageManagement.d.ts +4 -2
- package/lib/typescript/module/ui/hooks/useLanguageManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useSurfaceHeader.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/useSurfaceHeader.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useUsernameAvailability.d.ts +9 -0
- package/lib/typescript/module/ui/hooks/useUsernameAvailability.d.ts.map +1 -0
- package/lib/typescript/module/ui/icons/Ionicons.d.ts +1 -1
- package/lib/typescript/module/ui/icons/Ionicons.d.ts.map +1 -1
- package/lib/typescript/module/ui/icons/MaterialCommunityIcons.d.ts +1 -1
- package/lib/typescript/module/ui/icons/MaterialCommunityIcons.d.ts.map +1 -1
- package/lib/typescript/module/ui/icons/subsetGlyphMaps.d.ts +4 -4
- package/lib/typescript/module/ui/index.d.ts.map +1 -1
- package/lib/typescript/module/ui/navigation/accountDialogManager.d.ts +15 -1
- package/lib/typescript/module/ui/navigation/accountDialogManager.d.ts.map +1 -1
- package/lib/typescript/module/ui/navigation/routes.d.ts +10 -18
- package/lib/typescript/module/ui/navigation/routes.d.ts.map +1 -1
- package/lib/typescript/module/ui/navigation/screenComponents.d.ts +4 -0
- package/lib/typescript/module/ui/navigation/screenComponents.d.ts.map +1 -0
- package/lib/typescript/module/ui/navigation/surfaceNavStack.d.ts +3 -1
- package/lib/typescript/module/ui/navigation/surfaceNavStack.d.ts.map +1 -1
- package/lib/typescript/module/ui/navigation/surfaceRegistry.d.ts +6 -1
- package/lib/typescript/module/ui/navigation/surfaceRegistry.d.ts.map +1 -1
- package/lib/typescript/module/ui/navigation/surfaces.d.ts +1 -1
- package/lib/typescript/module/ui/navigation/surfaces.d.ts.map +1 -1
- package/lib/typescript/module/ui/one-video.d.ts +3 -0
- package/lib/typescript/module/ui/one-video.d.ts.map +1 -0
- package/lib/typescript/module/ui/runtime/createOxyRuntime.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/DomainsScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/EditProfileFieldScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/EditProfileScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/FileManagementScreen.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/LegalDocumentsScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts +4 -1
- package/lib/typescript/module/ui/screens/ManageAccountScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/OxyOneScreen.d.ts +4 -0
- package/lib/typescript/module/ui/screens/OxyOneScreen.d.ts.map +1 -0
- 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/ReportBugScreen.d.ts +2 -0
- package/lib/typescript/module/ui/screens/ReportBugScreen.d.ts.map +1 -0
- package/lib/typescript/module/ui/screens/SearchSettingsScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/UserListScreen.d.ts +1 -5
- package/lib/typescript/module/ui/screens/UserListScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/fileManagement/FileListSection.d.ts +1 -1
- package/lib/typescript/module/ui/screens/fileManagement/FileListSection.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/fileManagement/PhotoPickerSection.d.ts +1 -1
- package/lib/typescript/module/ui/screens/fileManagement/PhotoPickerSection.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/fileManagement/UploadBar.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/index.d.ts +1 -0
- package/lib/typescript/module/ui/screens/index.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/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/types/navigation.d.ts +12 -0
- package/lib/typescript/module/ui/types/navigation.d.ts.map +1 -1
- package/lib/typescript/types/assets.d.ts +10 -0
- package/package.json +64 -48
- package/plugins/withOxySharedPermissions.js +2 -1
- package/plugins/withSharedDeviceSessionProvider.js +2 -1
- package/src/assets/fonts/icons/OxyServicesIonicons.ttf +0 -0
- package/src/assets/fonts/icons/OxyServicesMaterialCommunityIcons.ttf +0 -0
- package/src/assets/fonts/icons/manifest.json +9 -9
- package/src/assets/one/README.md +8 -0
- package/src/assets/one/floral.jpg +0 -0
- package/src/assets/one/floral.jpg.d.ts +2 -0
- package/src/assets/one/floral.mp4 +0 -0
- package/src/assets/one/floral.mp4.d.ts +2 -0
- package/src/index.ts +9 -1
- package/src/types/assets.d.ts +10 -0
- package/src/ui/client.ts +2 -3
- package/src/ui/components/AccountInvitationAcceptance.tsx +1 -1
- package/src/ui/components/BloomLocaleBridge.tsx +1 -1
- package/src/ui/components/FollowButton.tsx +1 -1
- package/src/ui/components/LanguageBridge.tsx +1 -1
- package/src/ui/components/OxyAccountDialogScreen.tsx +3 -14
- package/src/ui/components/OxyAuthChooser.tsx +28 -24
- package/src/ui/components/OxyConsentScreen.tsx +8 -25
- package/src/ui/components/OxyOAuthCallback.tsx +3 -2
- package/src/ui/components/OxyProvider.tsx +34 -8
- package/src/ui/components/OxySignInButton.tsx +1 -1
- package/src/ui/components/ProfileButton.tsx +17 -4
- package/src/ui/components/ProfileSummaryCard.tsx +27 -68
- package/src/ui/components/RequireOxyAuth.tsx +16 -38
- package/src/ui/components/SettingsIcon.tsx +8 -33
- package/src/ui/components/SurfaceHeaderAction.tsx +1 -1
- package/src/ui/components/SurfaceScreen.tsx +56 -49
- package/src/ui/components/__tests__/AccountInvitationAcceptance.test.tsx +1 -1
- package/src/ui/components/__tests__/BloomLocaleBridge.test.tsx +1 -1
- package/src/ui/components/__tests__/LanguageBridge.test.tsx +1 -1
- package/src/ui/components/__tests__/followButtonAccessibility.test.tsx +1 -1
- package/src/ui/components/authChooser/AccountsMenuView.tsx +271 -521
- package/src/ui/components/authChooser/storageUsage.ts +75 -0
- package/src/ui/components/authChooser/styles.ts +14 -76
- package/src/ui/components/authChooser/types.ts +6 -6
- package/src/ui/components/fileManagement/FileViewer.tsx +7 -6
- package/src/ui/components/modals/DeleteAccountModal.tsx +25 -24
- package/src/ui/components/organizations/OrganizationClaimReview.tsx +1 -1
- package/src/ui/components/organizations/OrganizationClaims.tsx +1 -1
- package/src/ui/components/organizations/OrganizationDirectorySearch.tsx +1 -1
- package/src/ui/components/organizations/OrganizationSettings.tsx +1 -1
- package/src/ui/components/payment/PaymentDetailsStep.tsx +13 -51
- package/src/ui/components/payment/PaymentMethodStep.tsx +4 -4
- package/src/ui/components/payment/PaymentReviewStep.tsx +12 -17
- package/src/ui/components/payment/PaymentSummaryStep.tsx +4 -4
- package/src/ui/components/signIn/InlineCommonsQr.tsx +9 -4
- package/src/ui/components/signIn/OxyAccountPicker.tsx +42 -93
- package/src/ui/components/signIn/OxyAuthenticatorPanel.tsx +1 -1
- package/src/ui/components/signIn/OxyDeleteAccountPanel.tsx +1 -1
- package/src/ui/components/signIn/OxyEmailAccountChoice.tsx +1 -1
- package/src/ui/components/signIn/OxyLinkCommonsPanel.tsx +1 -1
- package/src/ui/components/signIn/OxyPasswordPanel.tsx +1 -1
- package/src/ui/components/signIn/OxySignInPanel.tsx +1 -1
- package/src/ui/components/signIn/OxySignUpPanel.tsx +1 -1
- package/src/ui/components/signIn/ReauthStep.tsx +26 -16
- package/src/ui/components/signIn/accountFlowParts.tsx +1 -1
- package/src/ui/components/supervision/PersonPicker.tsx +1 -1
- package/src/ui/context/OxyContext.tsx +15 -79
- package/src/ui/context/oxyContextTypes.ts +1 -0
- package/src/ui/context/oxyRuntimeContext.ts +69 -0
- package/src/ui/context/oxySupportContext.ts +9 -0
- package/src/ui/hooks/mutations/useAccountMutations.ts +1 -1
- package/src/ui/hooks/mutations/useServicesMutations.ts +1 -1
- package/src/ui/hooks/queries/useAccountQueries.ts +4 -2
- package/src/ui/hooks/queries/useAuthMethods.ts +1 -1
- package/src/ui/hooks/queries/useFileQueries.ts +1 -1
- package/src/ui/hooks/queries/usePaymentQueries.ts +1 -1
- package/src/ui/hooks/queries/usePersonalPlans.ts +1 -1
- package/src/ui/hooks/queries/useSecurityQueries.ts +1 -1
- package/src/ui/hooks/queries/useServicesQueries.ts +1 -1
- package/src/ui/hooks/queries/useSupervision.ts +1 -1
- package/src/ui/hooks/useAuth.ts +1 -1
- package/src/ui/hooks/useDeviceSwitcher.ts +1 -1
- package/src/ui/hooks/useDisplayCurrency.ts +1 -1
- package/src/ui/hooks/useFollow.ts +1 -1
- package/src/ui/hooks/useFollowTarget.ts +1 -1
- package/src/ui/hooks/useI18n.ts +1 -1
- package/src/ui/hooks/useLanguageManagement.ts +48 -23
- package/src/ui/hooks/useOxyEvent.ts +1 -1
- package/src/ui/hooks/useSurfaceHeader.ts +50 -2
- package/src/ui/hooks/useUsernameAvailability.ts +57 -0
- package/src/ui/icons/subsetGlyphMaps.ts +4 -4
- package/src/ui/index.ts +5 -0
- package/src/ui/navigation/__tests__/bottomSheetManager.test.ts +37 -0
- package/src/ui/navigation/__tests__/surfaceNavStack.test.ts +27 -0
- package/src/ui/navigation/accountDialogManager.ts +16 -1
- package/src/ui/navigation/bottomSheetManager.ts +3 -3
- package/src/ui/navigation/routes.ts +75 -103
- package/src/ui/navigation/screenComponents.ts +96 -0
- package/src/ui/navigation/surfaceBackBridge.ts +1 -1
- package/src/ui/navigation/surfaceNavStack.ts +33 -6
- package/src/ui/navigation/surfaceRegistry.ts +7 -1
- package/src/ui/navigation/surfaces.ts +30 -15
- package/src/ui/one-video.tsx +44 -0
- package/src/ui/runtime/createOxyRuntime.ts +7 -1
- package/src/ui/screens/AccountMembersScreen.tsx +6 -6
- package/src/ui/screens/AccountSettingsScreen.tsx +14 -14
- package/src/ui/screens/AccountVerificationScreen.tsx +1 -1
- package/src/ui/screens/AppInfoScreen.tsx +41 -42
- package/src/ui/screens/AvatarCropScreen.tsx +33 -57
- package/src/ui/screens/ChangeAvatarScreen.tsx +8 -8
- package/src/ui/screens/ConnectedAppsScreen.tsx +14 -16
- package/src/ui/screens/CreateAccountScreen.tsx +13 -13
- package/src/ui/screens/DomainsScreen.tsx +9 -14
- package/src/ui/screens/EditProfileFieldScreen.tsx +189 -282
- package/src/ui/screens/EditProfileScreen.tsx +21 -18
- package/src/ui/screens/FileManagementScreen.tsx +52 -209
- package/src/ui/screens/FileTrashScreen.tsx +3 -3
- package/src/ui/screens/HelpSupportScreen.tsx +59 -53
- package/src/ui/screens/HistoryViewScreen.tsx +10 -17
- package/src/ui/screens/LanguageSelectorScreen.tsx +37 -35
- package/src/ui/screens/LegalDocumentsScreen.tsx +10 -20
- package/src/ui/screens/ManageAccountScreen.tsx +367 -340
- package/src/ui/screens/NotificationsScreen.tsx +12 -12
- package/src/ui/screens/OxyOneScreen.tsx +223 -0
- package/src/ui/screens/PreferencesScreen.tsx +15 -15
- package/src/ui/screens/PrivacySettingsScreen.tsx +65 -89
- package/src/ui/screens/ProfileScreen.tsx +242 -268
- package/src/ui/screens/ReportBugScreen.tsx +68 -0
- package/src/ui/screens/SearchSettingsScreen.tsx +30 -65
- package/src/ui/screens/SupervisionScreen.tsx +1 -1
- package/src/ui/screens/UserListScreen.tsx +85 -62
- package/src/ui/screens/WelcomeNewUserScreen.tsx +1 -1
- package/src/ui/screens/fileManagement/FileListSection.tsx +8 -7
- package/src/ui/screens/fileManagement/PhotoPickerSection.tsx +16 -79
- package/src/ui/screens/fileManagement/UploadBar.tsx +4 -1
- package/src/ui/screens/index.ts +1 -0
- package/src/ui/screens/trust/TrustCenterScreen.tsx +13 -22
- package/src/ui/screens/trust/TrustLeaderboardScreen.tsx +32 -62
- package/src/ui/screens/trust/TrustRewardsScreen.tsx +10 -5
- package/src/ui/screens/trust/TrustRulesScreen.tsx +6 -9
- package/src/ui/types/navigation.ts +12 -0
- package/lib/commonjs/ui/screens/UserLinksScreen.js +0 -61
- package/lib/commonjs/ui/screens/UserLinksScreen.js.map +0 -1
- package/lib/module/ui/screens/UserLinksScreen.js +0 -57
- package/lib/module/ui/screens/UserLinksScreen.js.map +0 -1
- package/lib/typescript/commonjs/ui/screens/UserLinksScreen.d.ts +0 -15
- package/lib/typescript/commonjs/ui/screens/UserLinksScreen.d.ts.map +0 -1
- package/lib/typescript/module/ui/screens/UserLinksScreen.d.ts +0 -15
- package/lib/typescript/module/ui/screens/UserLinksScreen.d.ts.map +0 -1
- package/lib/typescript/types/expo-document-picker.d.ts +0 -35
- package/lib/typescript/types/expo-image-picker.d.ts +0 -35
- package/src/types/expo-document-picker.d.ts +0 -35
- package/src/types/expo-image-picker.d.ts +0 -35
- package/src/ui/screens/UserLinksScreen.tsx +0 -68
|
@@ -1,20 +1,25 @@
|
|
|
1
1
|
import type React from 'react';
|
|
2
2
|
import { useMemo } from 'react';
|
|
3
|
-
import { View, StyleSheet
|
|
3
|
+
import { View, StyleSheet } from 'react-native';
|
|
4
4
|
import { useQuery } from '@tanstack/react-query';
|
|
5
5
|
import type { BaseScreenProps } from '../types/navigation';
|
|
6
6
|
import { useTheme } from '@oxy.so/bloom/theme';
|
|
7
|
-
import { Button } from '@oxy.so/bloom/button';
|
|
7
|
+
import { Button, LinkButton } from '@oxy.so/bloom/button';
|
|
8
|
+
import { ButtonGroup, ButtonGroupItem } from '@oxy.so/bloom/button-group';
|
|
9
|
+
import { RiSettings3Line } from '@oxy.so/bloom/icons/RiSettings3Line';
|
|
10
|
+
import { PressableScale } from '@oxy.so/bloom/pressable-scale';
|
|
11
|
+
import { useSurfaceFill } from '@oxy.so/bloom/styles';
|
|
8
12
|
import { H2, Text } from '@oxy.so/bloom/typography';
|
|
9
|
-
import { SettingsListGroup, SettingsListItem } from '@oxy.so/bloom/settings-list';
|
|
10
13
|
import { Avatar } from '@oxy.so/bloom/avatar';
|
|
14
|
+
import * as Skeleton from '@oxy.so/bloom/skeleton';
|
|
15
|
+
import { CoverHeader } from '@oxy.so/bloom/cover-header';
|
|
11
16
|
import FollowButton from '../components/FollowButton';
|
|
12
17
|
import { useFollow } from '../hooks/useFollow';
|
|
13
18
|
import Ionicons from '../icons/Ionicons';
|
|
14
19
|
import { useI18n } from '../hooks/useI18n';
|
|
15
20
|
import { useSurfaceHeader } from '../hooks/useSurfaceHeader';
|
|
16
|
-
import { useOxy } from '../context/
|
|
17
|
-
import { getNormalizedUserHandle, logger
|
|
21
|
+
import { useOxy } from '../context/oxyRuntimeContext';
|
|
22
|
+
import { getNormalizedUserHandle, logger } from '@oxy.so/core';
|
|
18
23
|
import { extractErrorMessage } from '../utils/errorHandlers';
|
|
19
24
|
|
|
20
25
|
interface ProfileScreenProps extends BaseScreenProps {
|
|
@@ -23,17 +28,9 @@ interface ProfileScreenProps extends BaseScreenProps {
|
|
|
23
28
|
}
|
|
24
29
|
|
|
25
30
|
const AVATAR_SIZE = 96;
|
|
26
|
-
const BANNER_HEIGHT = 160;
|
|
27
|
-
const AVATAR_OVERLAP = -56;
|
|
28
31
|
const INFO_ICON_SIZE = 18;
|
|
29
32
|
|
|
30
|
-
const ProfileScreen: React.FC<ProfileScreenProps> = ({
|
|
31
|
-
userId,
|
|
32
|
-
username,
|
|
33
|
-
theme,
|
|
34
|
-
goBack,
|
|
35
|
-
navigate,
|
|
36
|
-
}) => {
|
|
33
|
+
const ProfileScreen: React.FC<ProfileScreenProps> = ({ userId, username, navigate }) => {
|
|
37
34
|
// Use useOxy() hook for OxyContext values. "Me" for own-profile detection
|
|
38
35
|
// and the own-profile fallback is the ACTIVE account (the account switched
|
|
39
36
|
// into), so previewing my profile while switched into an org/project/bot
|
|
@@ -44,7 +41,8 @@ const ProfileScreen: React.FC<ProfileScreenProps> = ({
|
|
|
44
41
|
const { followerCount, followingCount, isLoadingCounts } = useFollow(userId);
|
|
45
42
|
|
|
46
43
|
const bloomTheme = useTheme();
|
|
47
|
-
const
|
|
44
|
+
const surfaceFill = useSurfaceFill();
|
|
45
|
+
const { t, locale } = useI18n();
|
|
48
46
|
|
|
49
47
|
// Check if current user is viewing their own profile
|
|
50
48
|
// Normalize IDs by trimming whitespace to handle format mismatches
|
|
@@ -88,15 +86,12 @@ const ProfileScreen: React.FC<ProfileScreenProps> = ({
|
|
|
88
86
|
return {
|
|
89
87
|
profile: profileRes,
|
|
90
88
|
reputationTotal: typeof reputationRes.total === 'number' ? reputationRes.total : null,
|
|
91
|
-
links: normalizeProfileLinks(profileRes.linksMetadata, profileRes.links),
|
|
92
89
|
};
|
|
93
90
|
},
|
|
94
91
|
});
|
|
95
92
|
|
|
96
|
-
const profile = profileQuery.data?.profile ?? null;
|
|
93
|
+
const profile = profileQuery.data?.profile ?? (isOwnProfile ? currentUser : null);
|
|
97
94
|
const reputationTotal = profileQuery.data?.reputationTotal ?? null;
|
|
98
|
-
const links = profileQuery.data?.links ?? [];
|
|
99
|
-
const isLoading = !!userId && profileQuery.isLoading;
|
|
100
95
|
|
|
101
96
|
// Friendly, status-aware error copy derived from the query error (no effect).
|
|
102
97
|
const error = useMemo<string | null>(() => {
|
|
@@ -126,32 +121,16 @@ const ProfileScreen: React.FC<ProfileScreenProps> = ({
|
|
|
126
121
|
return errorMessageText || 'Failed to load profile';
|
|
127
122
|
}, [userId, profileQuery.isError, profileQuery.error, isOwnProfile]);
|
|
128
123
|
|
|
129
|
-
//
|
|
130
|
-
//
|
|
131
|
-
// overlapping avatar scroll as content UNDER the shared gradient nav bar.
|
|
132
|
-
// `onImage` tone keeps the title + close legible over the colored banner.
|
|
133
|
-
// Ends in a string, deliberately: `getNormalizedUserHandle` answers `null` for a
|
|
134
|
-
// user it cannot normalise, and letting that null travel makes this `string | null`
|
|
135
|
-
// — which does not satisfy `Avatar.name` and does not typecheck. Empty is the honest
|
|
136
|
-
// bottom of the chain and every reader below already treats it as falsy
|
|
137
|
-
// (`displayName || t('profile.title')`), so nothing renders a literal "null".
|
|
124
|
+
// The dialog owns navigation chrome; CoverHeader owns the profile artwork
|
|
125
|
+
// and avatar overlap. A neutral cover is not an on-image navigation surface.
|
|
138
126
|
const displayName = profile
|
|
139
127
|
? (profile.name?.displayName ?? getNormalizedUserHandle(profile) ?? '')
|
|
140
128
|
: username || '';
|
|
141
129
|
useSurfaceHeader({
|
|
142
130
|
title: displayName || t('profile.title'),
|
|
143
131
|
largeTitle: false,
|
|
144
|
-
tone: 'onImage',
|
|
145
132
|
});
|
|
146
133
|
|
|
147
|
-
if (isLoading) {
|
|
148
|
-
return (
|
|
149
|
-
<View className="items-center py-space-40">
|
|
150
|
-
<ActivityIndicator size="large" color={bloomTheme.colors.primary} />
|
|
151
|
-
</View>
|
|
152
|
-
);
|
|
153
|
-
}
|
|
154
|
-
|
|
155
134
|
if (error) {
|
|
156
135
|
// The shared nav header owns back/close; the error body is just the alert.
|
|
157
136
|
return (
|
|
@@ -171,6 +150,34 @@ const ProfileScreen: React.FC<ProfileScreenProps> = ({
|
|
|
171
150
|
);
|
|
172
151
|
}
|
|
173
152
|
|
|
153
|
+
if (!profile && profileQuery.isPending) {
|
|
154
|
+
return (
|
|
155
|
+
<View
|
|
156
|
+
testID="profile-skeleton"
|
|
157
|
+
accessibilityLabel={t('common.loading')}
|
|
158
|
+
accessibilityState={{ busy: true }}
|
|
159
|
+
style={styles.scrollContainer}
|
|
160
|
+
>
|
|
161
|
+
<CoverHeader>
|
|
162
|
+
<View style={styles.avatarRow} className="px-screen-margin">
|
|
163
|
+
<Skeleton.Circle size={AVATAR_SIZE} />
|
|
164
|
+
<Skeleton.Box width={88} height={32} borderRadius={16} />
|
|
165
|
+
</View>
|
|
166
|
+
<View className="px-screen-margin gap-space-8" style={styles.header}>
|
|
167
|
+
<Skeleton.Box width={180} height={28} />
|
|
168
|
+
<Skeleton.Box width={110} height={18} />
|
|
169
|
+
<Skeleton.Box width="100%" height={18} style={{ marginTop: 10 }} />
|
|
170
|
+
<Skeleton.Box width="75%" height={18} />
|
|
171
|
+
</View>
|
|
172
|
+
</CoverHeader>
|
|
173
|
+
<View className="px-screen-margin gap-space-12" style={styles.details}>
|
|
174
|
+
<Skeleton.Box width="65%" height={18} />
|
|
175
|
+
<Skeleton.Box width="85%" height={18} />
|
|
176
|
+
</View>
|
|
177
|
+
</View>
|
|
178
|
+
);
|
|
179
|
+
}
|
|
180
|
+
|
|
174
181
|
// The singular `location` field was removed from the User contract; derive
|
|
175
182
|
// the primary place from the `locations` list instead. `locations` is only
|
|
176
183
|
// reachable through the User index signature (typed `unknown`), so narrow it
|
|
@@ -184,238 +191,197 @@ const ProfileScreen: React.FC<ProfileScreenProps> = ({
|
|
|
184
191
|
return undefined;
|
|
185
192
|
})();
|
|
186
193
|
|
|
194
|
+
const metadata: Array<{
|
|
195
|
+
key: string;
|
|
196
|
+
icon: React.ComponentProps<typeof Ionicons>['name'];
|
|
197
|
+
label: string;
|
|
198
|
+
}> = [];
|
|
199
|
+
if (primaryLocation)
|
|
200
|
+
metadata.push({ key: 'location', icon: 'location-outline', label: primaryLocation });
|
|
201
|
+
if (profile?.createdAt) {
|
|
202
|
+
const joined = new Date(profile.createdAt);
|
|
203
|
+
if (!Number.isNaN(joined.getTime()))
|
|
204
|
+
metadata.push({
|
|
205
|
+
key: 'joined',
|
|
206
|
+
icon: 'calendar-outline',
|
|
207
|
+
label: t('profile.joinedOn', {
|
|
208
|
+
date: joined.toLocaleDateString(locale, { month: 'long', year: 'numeric' }),
|
|
209
|
+
}),
|
|
210
|
+
});
|
|
211
|
+
}
|
|
212
|
+
for (const [key, icon] of [
|
|
213
|
+
['company', 'business-outline'],
|
|
214
|
+
['jobTitle', 'briefcase-outline'],
|
|
215
|
+
['education', 'school-outline'],
|
|
216
|
+
] as const) {
|
|
217
|
+
const value = profile?.[key];
|
|
218
|
+
if (typeof value === 'string' && value.trim()) metadata.push({ key, icon, label: value });
|
|
219
|
+
}
|
|
220
|
+
if (typeof profile?.birthday === 'string' && profile.birthday) {
|
|
221
|
+
const birthday = new Date(profile.birthday);
|
|
222
|
+
if (!Number.isNaN(birthday.getTime()))
|
|
223
|
+
metadata.push({
|
|
224
|
+
key: 'birthday',
|
|
225
|
+
icon: 'gift-outline',
|
|
226
|
+
label: t('profile.bornOn', {
|
|
227
|
+
date: birthday.toLocaleDateString(locale, { timeZone: 'UTC' }),
|
|
228
|
+
}),
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
let websiteUrl: string | undefined;
|
|
232
|
+
if (profile?.website) {
|
|
233
|
+
try {
|
|
234
|
+
const url = new URL(profile.website);
|
|
235
|
+
if (url.protocol === 'https:' || url.protocol === 'http:') websiteUrl = url.href;
|
|
236
|
+
} catch {
|
|
237
|
+
/* Invalid profile URLs are not interactive links. */
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
|
|
187
241
|
return (
|
|
188
242
|
<View style={styles.scrollContainer}>
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
<View style={styles.
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
/>
|
|
210
|
-
</View>
|
|
211
|
-
{/* Conditional Action Button */}
|
|
212
|
-
<View style={styles.actionButtonWrapper}>
|
|
213
|
-
{isOwnProfile ? (
|
|
214
|
-
<Button
|
|
215
|
-
appearance="subtle"
|
|
216
|
-
tone="neutral"
|
|
217
|
-
size="sm"
|
|
218
|
-
onPress={() => navigate?.('ManageAccount')}
|
|
219
|
-
>
|
|
220
|
-
{t('editProfile.title') || 'Edit Profile'}
|
|
221
|
-
</Button>
|
|
222
|
-
) : (
|
|
223
|
-
<FollowButton
|
|
224
|
-
userId={userId}
|
|
225
|
-
onFollowChange={(isFollowing) => {
|
|
226
|
-
// The follow button will automatically update counts via Zustand
|
|
227
|
-
if (__DEV__) {
|
|
228
|
-
logger.debug(`Follow status changed: ${isFollowing}`, {
|
|
229
|
-
component: 'ProfileScreen',
|
|
230
|
-
});
|
|
231
|
-
}
|
|
232
|
-
}}
|
|
233
|
-
/>
|
|
234
|
-
)}
|
|
235
|
-
</View>
|
|
236
|
-
</View>
|
|
237
|
-
{/* Profile Info */}
|
|
238
|
-
<View style={styles.header} className="px-screen-margin">
|
|
239
|
-
<H2 style={styles.displayName} className="text-text">
|
|
240
|
-
{displayName}
|
|
241
|
-
</H2>
|
|
242
|
-
{profile?.username && (
|
|
243
|
-
<Text style={styles.subText} className="text-text-secondary">
|
|
244
|
-
@{profile.username}
|
|
245
|
-
</Text>
|
|
246
|
-
)}
|
|
247
|
-
{/* Bio */}
|
|
248
|
-
<Text style={styles.bio} className="text-text">
|
|
249
|
-
{profile?.bio || t('profile.noBio') || 'This user has no bio yet.'}
|
|
250
|
-
</Text>
|
|
251
|
-
</View>
|
|
252
|
-
|
|
253
|
-
{/* Info Grid as a settings list group */}
|
|
254
|
-
<View className="px-screen-margin">
|
|
255
|
-
<SettingsListGroup>
|
|
256
|
-
{profile?.createdAt && (
|
|
257
|
-
<SettingsListItem
|
|
258
|
-
icon={
|
|
259
|
-
<Ionicons
|
|
260
|
-
name="calendar-outline"
|
|
261
|
-
size={INFO_ICON_SIZE}
|
|
262
|
-
color={bloomTheme.colors.textSecondary}
|
|
263
|
-
/>
|
|
264
|
-
}
|
|
265
|
-
title={
|
|
266
|
-
t('profile.joinedOn', { date: new Date(profile.createdAt).toLocaleDateString() }) ||
|
|
267
|
-
`Joined ${new Date(profile.createdAt).toLocaleDateString()}`
|
|
268
|
-
}
|
|
269
|
-
showChevron={false}
|
|
270
|
-
/>
|
|
271
|
-
)}
|
|
272
|
-
{primaryLocation && (
|
|
273
|
-
<SettingsListItem
|
|
274
|
-
icon={
|
|
275
|
-
<Ionicons
|
|
276
|
-
name="location-outline"
|
|
277
|
-
size={INFO_ICON_SIZE}
|
|
278
|
-
color={bloomTheme.colors.textSecondary}
|
|
279
|
-
/>
|
|
280
|
-
}
|
|
281
|
-
title={primaryLocation}
|
|
282
|
-
showChevron={false}
|
|
283
|
-
/>
|
|
284
|
-
)}
|
|
285
|
-
{profile?.website && (
|
|
286
|
-
<SettingsListItem
|
|
287
|
-
icon={
|
|
288
|
-
<Ionicons
|
|
289
|
-
name="globe-outline"
|
|
290
|
-
size={INFO_ICON_SIZE}
|
|
291
|
-
color={bloomTheme.colors.textSecondary}
|
|
292
|
-
/>
|
|
243
|
+
<CoverHeader testID="profile-cover-header">
|
|
244
|
+
{/* Avatar overlapping banner */}
|
|
245
|
+
<View style={styles.avatarRow} className="px-screen-margin">
|
|
246
|
+
<View
|
|
247
|
+
style={[
|
|
248
|
+
styles.avatarWrapper,
|
|
249
|
+
{ borderColor: surfaceFill, backgroundColor: surfaceFill },
|
|
250
|
+
]}
|
|
251
|
+
className="rounded-radius-max"
|
|
252
|
+
>
|
|
253
|
+
<Avatar
|
|
254
|
+
// `getFileDownloadUrl` answers `null` for a reference it cannot
|
|
255
|
+
// resolve, and `Avatar.source` takes `undefined` for "no picture" —
|
|
256
|
+
// the two spellings of absent do not meet, so the coalesce is the
|
|
257
|
+
// whole fix. Without it this file does not typecheck, which blocks
|
|
258
|
+
// `bun run build` and therefore every publish of this package.
|
|
259
|
+
source={
|
|
260
|
+
profile?.avatar
|
|
261
|
+
? (oxyServices.assets.publicUrl(profile.avatar, 'thumb') ?? undefined)
|
|
262
|
+
: undefined
|
|
293
263
|
}
|
|
294
|
-
|
|
295
|
-
|
|
264
|
+
name={displayName}
|
|
265
|
+
size={AVATAR_SIZE}
|
|
296
266
|
/>
|
|
297
|
-
|
|
298
|
-
{
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
267
|
+
</View>
|
|
268
|
+
{/* Conditional Action Button */}
|
|
269
|
+
<View style={styles.actionButtonWrapper}>
|
|
270
|
+
{isOwnProfile ? (
|
|
271
|
+
<View style={styles.profileActions}>
|
|
272
|
+
<Button
|
|
273
|
+
appearance="subtle"
|
|
274
|
+
tone="neutral"
|
|
275
|
+
size="sm"
|
|
276
|
+
onPress={() => navigate?.('EditProfile')}
|
|
277
|
+
>
|
|
278
|
+
{t('editProfile.title') || 'Edit Profile'}
|
|
279
|
+
</Button>
|
|
280
|
+
<ButtonGroup>
|
|
281
|
+
<ButtonGroupItem
|
|
282
|
+
iconOnly
|
|
283
|
+
leadingIcon={RiSettings3Line}
|
|
284
|
+
accessibilityLabel={t('accountMenu.settings') || 'Settings'}
|
|
285
|
+
onPress={() => navigate?.('Preferences')}
|
|
308
286
|
/>
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
287
|
+
</ButtonGroup>
|
|
288
|
+
</View>
|
|
289
|
+
) : (
|
|
290
|
+
<FollowButton
|
|
291
|
+
userId={userId}
|
|
292
|
+
onFollowChange={(isFollowing) => {
|
|
293
|
+
// The follow button will automatically update counts via Zustand
|
|
294
|
+
if (__DEV__) {
|
|
295
|
+
logger.debug(`Follow status changed: ${isFollowing}`, {
|
|
296
|
+
component: 'ProfileScreen',
|
|
297
|
+
});
|
|
298
|
+
}
|
|
299
|
+
}}
|
|
312
300
|
/>
|
|
313
301
|
)}
|
|
314
|
-
|
|
315
|
-
'jobTitle' in profile &&
|
|
316
|
-
typeof profile.jobTitle === 'string' &&
|
|
317
|
-
profile.jobTitle && (
|
|
318
|
-
<SettingsListItem
|
|
319
|
-
icon={
|
|
320
|
-
<Ionicons
|
|
321
|
-
name="briefcase-outline"
|
|
322
|
-
size={INFO_ICON_SIZE}
|
|
323
|
-
color={bloomTheme.colors.textSecondary}
|
|
324
|
-
/>
|
|
325
|
-
}
|
|
326
|
-
title={profile.jobTitle}
|
|
327
|
-
showChevron={false}
|
|
328
|
-
/>
|
|
329
|
-
)}
|
|
330
|
-
{profile &&
|
|
331
|
-
'education' in profile &&
|
|
332
|
-
typeof profile.education === 'string' &&
|
|
333
|
-
profile.education && (
|
|
334
|
-
<SettingsListItem
|
|
335
|
-
icon={
|
|
336
|
-
<Ionicons
|
|
337
|
-
name="school-outline"
|
|
338
|
-
size={INFO_ICON_SIZE}
|
|
339
|
-
color={bloomTheme.colors.textSecondary}
|
|
340
|
-
/>
|
|
341
|
-
}
|
|
342
|
-
title={profile.education}
|
|
343
|
-
showChevron={false}
|
|
344
|
-
/>
|
|
345
|
-
)}
|
|
346
|
-
{profile &&
|
|
347
|
-
'birthday' in profile &&
|
|
348
|
-
typeof profile.birthday === 'string' &&
|
|
349
|
-
profile.birthday && (
|
|
350
|
-
<SettingsListItem
|
|
351
|
-
icon={
|
|
352
|
-
<Ionicons
|
|
353
|
-
name="gift-outline"
|
|
354
|
-
size={INFO_ICON_SIZE}
|
|
355
|
-
color={bloomTheme.colors.textSecondary}
|
|
356
|
-
/>
|
|
357
|
-
}
|
|
358
|
-
title={
|
|
359
|
-
t('profile.bornOn', { date: new Date(profile.birthday).toLocaleDateString() }) ||
|
|
360
|
-
`Born ${new Date(profile.birthday).toLocaleDateString()}`
|
|
361
|
-
}
|
|
362
|
-
showChevron={false}
|
|
363
|
-
/>
|
|
364
|
-
)}
|
|
365
|
-
{links.length > 0 && (
|
|
366
|
-
<SettingsListItem
|
|
367
|
-
icon={
|
|
368
|
-
<Ionicons
|
|
369
|
-
name="link-outline"
|
|
370
|
-
size={INFO_ICON_SIZE}
|
|
371
|
-
color={bloomTheme.colors.textSecondary}
|
|
372
|
-
/>
|
|
373
|
-
}
|
|
374
|
-
title={links[0].url}
|
|
375
|
-
value={
|
|
376
|
-
links.length > 1
|
|
377
|
-
? t('profile.more', { count: links.length - 1 }) || `+ ${links.length - 1} more`
|
|
378
|
-
: undefined
|
|
379
|
-
}
|
|
380
|
-
onPress={() => navigate?.('UserLinks', { userId, links })}
|
|
381
|
-
/>
|
|
382
|
-
)}
|
|
383
|
-
</SettingsListGroup>
|
|
384
|
-
</View>
|
|
385
|
-
|
|
386
|
-
{/* All Stats in one row */}
|
|
387
|
-
<View style={styles.statsRow} className="px-screen-margin">
|
|
388
|
-
<View style={styles.statItem}>
|
|
389
|
-
<Text style={styles.statAmount} className="text-text">
|
|
390
|
-
{reputationTotal !== null && reputationTotal !== undefined ? reputationTotal : '--'}
|
|
391
|
-
</Text>
|
|
392
|
-
<Text style={styles.statLabel} className="text-text-secondary">
|
|
393
|
-
{t('profile.reputation') || 'Reputation'}
|
|
394
|
-
</Text>
|
|
302
|
+
</View>
|
|
395
303
|
</View>
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
304
|
+
{/* Profile Info */}
|
|
305
|
+
<View style={styles.header} className="px-screen-margin">
|
|
306
|
+
<H2 style={styles.displayName} className="text-text">
|
|
307
|
+
{displayName}
|
|
308
|
+
</H2>
|
|
309
|
+
{profile?.username && (
|
|
310
|
+
<Text style={styles.subText} className="text-text-secondary">
|
|
311
|
+
@{profile.username}
|
|
402
312
|
</Text>
|
|
403
313
|
)}
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
<View style={styles.statItem}>
|
|
409
|
-
{isLoadingCounts ? (
|
|
410
|
-
<ActivityIndicator size="small" color={bloomTheme.colors.text} />
|
|
411
|
-
) : (
|
|
412
|
-
<Text style={styles.statAmount} className="text-text">
|
|
413
|
-
{followingCount !== null ? followingCount : '--'}
|
|
314
|
+
{/* Bio */}
|
|
315
|
+
{profile?.bio ? (
|
|
316
|
+
<Text style={styles.bio} className="text-text">
|
|
317
|
+
{profile.bio}
|
|
414
318
|
</Text>
|
|
415
|
-
)}
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
319
|
+
) : null}
|
|
320
|
+
</View>
|
|
321
|
+
</CoverHeader>
|
|
322
|
+
|
|
323
|
+
<View className="px-screen-margin" style={styles.details}>
|
|
324
|
+
<View style={styles.metadataRow}>
|
|
325
|
+
{metadata.map(({ key, icon, label }) => (
|
|
326
|
+
<View key={key} style={styles.metadataEntry}>
|
|
327
|
+
<Ionicons name={icon} size={16} color={bloomTheme.colors.textSecondary} />
|
|
328
|
+
<Text style={[styles.metadataText, { color: bloomTheme.colors.textSecondary }]}>
|
|
329
|
+
{label}
|
|
330
|
+
</Text>
|
|
331
|
+
</View>
|
|
332
|
+
))}
|
|
333
|
+
</View>
|
|
334
|
+
{websiteUrl ? (
|
|
335
|
+
<LinkButton
|
|
336
|
+
size="sm"
|
|
337
|
+
href={websiteUrl}
|
|
338
|
+
style={{ alignSelf: 'flex-start', paddingLeft: 0, paddingRight: 0 }}
|
|
339
|
+
target="_blank"
|
|
340
|
+
rel="noopener noreferrer"
|
|
341
|
+
icon={<Ionicons name="link-outline" size={INFO_ICON_SIZE} />}
|
|
342
|
+
>
|
|
343
|
+
{profile?.website}
|
|
344
|
+
</LinkButton>
|
|
345
|
+
) : null}
|
|
346
|
+
<View style={styles.statsRow}>
|
|
347
|
+
{!isLoadingCounts && followingCount !== null ? (
|
|
348
|
+
<PressableScale
|
|
349
|
+
style={styles.statItem}
|
|
350
|
+
accessibilityLabel={`${followingCount} ${t('profile.following')}`}
|
|
351
|
+
onPress={() => navigate?.('FollowingList', { userId, initialCount: followingCount })}
|
|
352
|
+
>
|
|
353
|
+
<Text style={[styles.statNumber, { color: bloomTheme.colors.text }]}>
|
|
354
|
+
{followingCount}
|
|
355
|
+
</Text>
|
|
356
|
+
<Text style={[styles.statLabel, { color: bloomTheme.colors.textSecondary }]}>
|
|
357
|
+
{t('profile.following')}
|
|
358
|
+
</Text>
|
|
359
|
+
</PressableScale>
|
|
360
|
+
) : null}
|
|
361
|
+
{!isLoadingCounts && followerCount !== null ? (
|
|
362
|
+
<PressableScale
|
|
363
|
+
style={styles.statItem}
|
|
364
|
+
accessibilityLabel={`${followerCount} ${t('profile.followers')}`}
|
|
365
|
+
onPress={() => navigate?.('FollowersList', { userId, initialCount: followerCount })}
|
|
366
|
+
>
|
|
367
|
+
<Text style={[styles.statNumber, { color: bloomTheme.colors.text }]}>
|
|
368
|
+
{followerCount}
|
|
369
|
+
</Text>
|
|
370
|
+
<Text style={[styles.statLabel, { color: bloomTheme.colors.textSecondary }]}>
|
|
371
|
+
{t('profile.followers')}
|
|
372
|
+
</Text>
|
|
373
|
+
</PressableScale>
|
|
374
|
+
) : null}
|
|
375
|
+
{reputationTotal !== null ? (
|
|
376
|
+
<View style={styles.statItem}>
|
|
377
|
+
<Text style={[styles.statNumber, { color: bloomTheme.colors.text }]}>
|
|
378
|
+
{reputationTotal}
|
|
379
|
+
</Text>
|
|
380
|
+
<Text style={[styles.statLabel, { color: bloomTheme.colors.textSecondary }]}>
|
|
381
|
+
{t('profile.reputation')}
|
|
382
|
+
</Text>
|
|
383
|
+
</View>
|
|
384
|
+
) : null}
|
|
419
385
|
</View>
|
|
420
386
|
</View>
|
|
421
387
|
</View>
|
|
@@ -426,13 +392,10 @@ const ProfileScreen: React.FC<ProfileScreenProps> = ({
|
|
|
426
392
|
// that no token class can express. Colors, spacing, radius, and typography roles
|
|
427
393
|
// live on Bloom components + NativeWind token classes.
|
|
428
394
|
const styles = StyleSheet.create({
|
|
429
|
-
flex: { flex: 1 },
|
|
430
395
|
scrollContainer: { alignItems: 'stretch', paddingBottom: 40 },
|
|
431
|
-
bannerContainer: { height: BANNER_HEIGHT, position: 'relative', overflow: 'hidden' },
|
|
432
396
|
avatarRow: {
|
|
433
397
|
flexDirection: 'row',
|
|
434
398
|
alignItems: 'flex-end',
|
|
435
|
-
marginTop: AVATAR_OVERLAP,
|
|
436
399
|
justifyContent: 'space-between',
|
|
437
400
|
zIndex: 2,
|
|
438
401
|
},
|
|
@@ -446,17 +409,28 @@ const styles = StyleSheet.create({
|
|
|
446
409
|
header: { alignItems: 'flex-start', width: '100%', marginTop: 10 },
|
|
447
410
|
displayName: { fontSize: 24, marginBottom: 2, letterSpacing: 0.1 },
|
|
448
411
|
subText: { fontSize: 16, marginBottom: 2 },
|
|
449
|
-
bio: { fontSize:
|
|
412
|
+
bio: { fontSize: 15, marginTop: 10, lineHeight: 20 },
|
|
413
|
+
profileActions: {
|
|
414
|
+
flexDirection: 'row',
|
|
415
|
+
alignItems: 'center',
|
|
416
|
+
gap: 8,
|
|
417
|
+
flexWrap: 'wrap',
|
|
418
|
+
justifyContent: 'flex-end',
|
|
419
|
+
},
|
|
420
|
+
details: { marginTop: 12 },
|
|
421
|
+
metadataRow: { flexDirection: 'row', flexWrap: 'wrap', columnGap: 16, rowGap: 4 },
|
|
422
|
+
metadataEntry: { flexDirection: 'row', alignItems: 'center', gap: 4, flexShrink: 1 },
|
|
423
|
+
metadataText: { fontSize: 15, lineHeight: 20, flexShrink: 1 },
|
|
450
424
|
statsRow: {
|
|
451
|
-
width: '100%',
|
|
452
425
|
flexDirection: 'row',
|
|
426
|
+
flexWrap: 'wrap',
|
|
453
427
|
alignItems: 'center',
|
|
454
|
-
|
|
455
|
-
|
|
428
|
+
gap: 10,
|
|
429
|
+
marginTop: 12,
|
|
456
430
|
},
|
|
457
|
-
statItem: {
|
|
458
|
-
|
|
459
|
-
|
|
431
|
+
statItem: { flexDirection: 'row', alignItems: 'center', gap: 4 },
|
|
432
|
+
statNumber: { fontSize: 15, lineHeight: 20, fontWeight: '700' },
|
|
433
|
+
statLabel: { fontSize: 15, lineHeight: 20 },
|
|
460
434
|
// Error state layout
|
|
461
435
|
errorTitle: { fontSize: 20 },
|
|
462
436
|
errorContent: { justifyContent: 'center', alignItems: 'center' },
|