@oxyhq/services 25.0.1 → 26.0.1
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/README.md +2 -2
- package/android/src/main/java/so/oxy/identity/OxyIdentityStore.kt +127 -21
- package/expo-module.config.json +1 -4
- package/lib/commonjs/index.js +49 -18
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/notifications/deviceNotifications.js +0 -63
- package/lib/commonjs/notifications/deviceNotifications.js.map +1 -1
- package/lib/commonjs/ui/boot/runProviderColdBoot.js +64 -20
- package/lib/commonjs/ui/boot/runProviderColdBoot.js.map +1 -1
- package/lib/commonjs/ui/components/FollowButton.js +4 -4
- package/lib/commonjs/ui/components/FollowButton.js.map +1 -1
- package/lib/commonjs/ui/components/OxyAccountDialogScreen.js +1 -13
- package/lib/commonjs/ui/components/OxyAccountDialogScreen.js.map +1 -1
- package/lib/commonjs/ui/components/OxyAuthChooser.js +8 -9
- package/lib/commonjs/ui/components/OxyAuthChooser.js.map +1 -1
- package/lib/commonjs/ui/components/OxyProvider.js +7 -8
- package/lib/commonjs/ui/components/OxyProvider.js.map +1 -1
- package/lib/commonjs/ui/components/ProfileButton.js +1 -1
- package/lib/commonjs/ui/components/ProfileButton.js.map +1 -1
- package/lib/commonjs/ui/components/authChooser/AccountsMenuView.js +30 -25
- package/lib/commonjs/ui/components/authChooser/AccountsMenuView.js.map +1 -1
- package/lib/commonjs/ui/components/authChooser/primitives.js +9 -9
- package/lib/commonjs/ui/components/authChooser/primitives.js.map +1 -1
- package/lib/commonjs/ui/components/authChooser/useUsernameAvailability.js +2 -2
- package/lib/commonjs/ui/components/authChooser/useUsernameAvailability.js.map +1 -1
- package/lib/commonjs/ui/components/fileManagement/UploadPreview.js +2 -2
- package/lib/commonjs/ui/components/fileManagement/UploadPreview.js.map +1 -1
- package/lib/commonjs/ui/components/internal/PinInput.js +1 -3
- package/lib/commonjs/ui/components/internal/PinInput.js.map +1 -1
- package/lib/commonjs/ui/components/logo/LogoText.js +4 -4
- package/lib/commonjs/ui/components/logo/LogoText.js.map +1 -1
- package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js +2 -2
- package/lib/commonjs/ui/components/payment/PaymentDetailsStep.js.map +1 -1
- package/lib/commonjs/ui/components/payment/PaymentSummaryStep.js +2 -2
- package/lib/commonjs/ui/components/payment/PaymentSummaryStep.js.map +1 -1
- package/lib/commonjs/ui/components/styles/shadow.js.map +1 -1
- package/lib/commonjs/ui/context/OxyContext.js +46 -32
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
- package/lib/commonjs/ui/context/commitSessionFlow.js +43 -3
- package/lib/commonjs/ui/context/commitSessionFlow.js.map +1 -1
- package/lib/commonjs/ui/context/hooks/useAuthOperations.js +2 -15
- package/lib/commonjs/ui/context/hooks/useAuthOperations.js.map +1 -1
- package/lib/commonjs/ui/context/useOxyAccountGraph.js +4 -3
- package/lib/commonjs/ui/context/useOxyAccountGraph.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 +11 -11
- package/lib/commonjs/ui/hooks/mutations/useAccountMutations.js.map +1 -1
- package/lib/commonjs/ui/hooks/mutations/useServicesMutations.js +9 -9
- package/lib/commonjs/ui/hooks/mutations/useServicesMutations.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/usePaymentQueries.js +2 -3
- package/lib/commonjs/ui/hooks/queries/usePaymentQueries.js.map +1 -1
- package/lib/commonjs/ui/hooks/queries/userCache.js +17 -17
- package/lib/commonjs/ui/hooks/queries/userCache.js.map +1 -1
- package/lib/commonjs/ui/hooks/useAssets.js.map +1 -1
- package/lib/commonjs/ui/hooks/useAsyncAction.js +7 -7
- package/lib/commonjs/ui/hooks/useAsyncAction.js.map +1 -1
- package/lib/commonjs/ui/hooks/useAuth.js +2 -4
- package/lib/commonjs/ui/hooks/useAuth.js.map +1 -1
- package/lib/commonjs/ui/hooks/useAvatarPicker.js +5 -5
- package/lib/commonjs/ui/hooks/useAvatarPicker.js.map +1 -1
- package/lib/commonjs/ui/hooks/useOnlineStatus.js +2 -3
- package/lib/commonjs/ui/hooks/useOnlineStatus.js.map +1 -1
- package/lib/commonjs/ui/hooks/useSessionManagement.js +2 -0
- package/lib/commonjs/ui/hooks/useSessionManagement.js.map +1 -1
- package/lib/commonjs/ui/hooks/useSettingToggle.js +4 -4
- package/lib/commonjs/ui/hooks/useSettingToggle.js.map +1 -1
- package/lib/commonjs/ui/hooks/useSurfaceHeader.js +11 -68
- package/lib/commonjs/ui/hooks/useSurfaceHeader.js.map +1 -1
- package/lib/commonjs/ui/oauth/browserAuthTransport.js +64 -66
- package/lib/commonjs/ui/oauth/browserAuthTransport.js.map +1 -1
- package/lib/commonjs/ui/oauth/legacyRedirectLanes.js +48 -0
- package/lib/commonjs/ui/oauth/legacyRedirectLanes.js.map +1 -0
- package/lib/commonjs/ui/oauth/oauthPopup.js +0 -47
- package/lib/commonjs/ui/oauth/oauthPopup.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountMembersScreen.js +10 -10
- package/lib/commonjs/ui/screens/AccountMembersScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js +8 -7
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountVerificationScreen.js +4 -4
- package/lib/commonjs/ui/screens/AccountVerificationScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AppInfoScreen.js +9 -9
- package/lib/commonjs/ui/screens/AppInfoScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/AvatarCropScreen.js +3 -3
- package/lib/commonjs/ui/screens/AvatarCropScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ChangeAvatarScreen.js +7 -6
- package/lib/commonjs/ui/screens/ChangeAvatarScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ConnectedAppsScreen.js +4 -4
- package/lib/commonjs/ui/screens/ConnectedAppsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/CreateAccountScreen.js +3 -3
- package/lib/commonjs/ui/screens/CreateAccountScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/EditProfileFieldScreen.js +3 -3
- package/lib/commonjs/ui/screens/EditProfileFieldScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/EditProfileScreen.js +3 -2
- package/lib/commonjs/ui/screens/EditProfileScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FAQScreen.js +2 -2
- package/lib/commonjs/ui/screens/FAQScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FeedbackScreen.js +89 -90
- 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/FollowersListScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FollowingListScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/HelpSupportScreen.js +7 -7
- package/lib/commonjs/ui/screens/HelpSupportScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/HistoryViewScreen.js +34 -9
- package/lib/commonjs/ui/screens/HistoryViewScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/LanguageSelectorScreen.js +3 -3
- package/lib/commonjs/ui/screens/LanguageSelectorScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/LegalDocumentsScreen.js +3 -3
- package/lib/commonjs/ui/screens/LegalDocumentsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ManageAccountScreen.js +15 -15
- package/lib/commonjs/ui/screens/ManageAccountScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +19 -19
- package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/PrivacySettingsScreen.js +15 -15
- package/lib/commonjs/ui/screens/PrivacySettingsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ProfileScreen.js +7 -17
- package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/SavesCollectionsScreen.js +2 -2
- package/lib/commonjs/ui/screens/SavesCollectionsScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/UserListScreen.js +7 -13
- package/lib/commonjs/ui/screens/UserListScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js +6 -5
- package/lib/commonjs/ui/screens/WelcomeNewUserScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/fileManagement/PhotoPickerSection.js +4 -1
- package/lib/commonjs/ui/screens/fileManagement/PhotoPickerSection.js.map +1 -1
- package/lib/commonjs/ui/screens/fileManagement/hooks/useFileUploadState.js +24 -34
- package/lib/commonjs/ui/screens/fileManagement/hooks/useFileUploadState.js.map +1 -1
- package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js +1 -1
- package/lib/commonjs/ui/screens/trust/TrustCenterScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js +4 -3
- package/lib/commonjs/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js +1 -1
- package/lib/commonjs/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
- package/lib/commonjs/ui/session/index.js +0 -7
- package/lib/commonjs/ui/session/index.js.map +1 -1
- package/lib/commonjs/ui/utils/crossOriginRestore.js +140 -0
- package/lib/commonjs/ui/utils/crossOriginRestore.js.map +1 -0
- package/lib/commonjs/ui/utils/fileManagement.js +24 -24
- package/lib/commonjs/ui/utils/fileManagement.js.map +1 -1
- package/lib/commonjs/ui/utils/oauthReturn.js +30 -19
- package/lib/commonjs/ui/utils/oauthReturn.js.map +1 -1
- package/lib/commonjs/ui/utils/userUtils.js +28 -27
- package/lib/commonjs/ui/utils/userUtils.js.map +1 -1
- package/lib/module/index.js +8 -20
- package/lib/module/index.js.map +1 -1
- package/lib/module/notifications/deviceNotifications.js +0 -62
- package/lib/module/notifications/deviceNotifications.js.map +1 -1
- package/lib/module/ui/boot/runProviderColdBoot.js +65 -21
- package/lib/module/ui/boot/runProviderColdBoot.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/OxyAccountDialogScreen.js +1 -13
- package/lib/module/ui/components/OxyAccountDialogScreen.js.map +1 -1
- package/lib/module/ui/components/OxyAuthChooser.js +4 -5
- package/lib/module/ui/components/OxyAuthChooser.js.map +1 -1
- package/lib/module/ui/components/OxyProvider.js +6 -7
- package/lib/module/ui/components/OxyProvider.js.map +1 -1
- package/lib/module/ui/components/ProfileButton.js +2 -2
- package/lib/module/ui/components/ProfileButton.js.map +1 -1
- package/lib/module/ui/components/authChooser/AccountsMenuView.js +8 -3
- package/lib/module/ui/components/authChooser/AccountsMenuView.js.map +1 -1
- package/lib/module/ui/components/authChooser/primitives.js +1 -1
- package/lib/module/ui/components/authChooser/primitives.js.map +1 -1
- package/lib/module/ui/components/authChooser/useUsernameAvailability.js +1 -1
- package/lib/module/ui/components/authChooser/useUsernameAvailability.js.map +1 -1
- package/lib/module/ui/components/fileManagement/UploadPreview.js +1 -1
- package/lib/module/ui/components/fileManagement/UploadPreview.js.map +1 -1
- package/lib/module/ui/components/internal/PinInput.js +1 -3
- package/lib/module/ui/components/internal/PinInput.js.map +1 -1
- package/lib/module/ui/components/logo/LogoText.js +4 -4
- package/lib/module/ui/components/logo/LogoText.js.map +1 -1
- package/lib/module/ui/components/payment/PaymentDetailsStep.js +1 -1
- package/lib/module/ui/components/payment/PaymentDetailsStep.js.map +1 -1
- package/lib/module/ui/components/payment/PaymentSummaryStep.js +2 -2
- package/lib/module/ui/components/payment/PaymentSummaryStep.js.map +1 -1
- package/lib/module/ui/components/styles/shadow.js.map +1 -1
- package/lib/module/ui/context/OxyContext.js +49 -35
- package/lib/module/ui/context/OxyContext.js.map +1 -1
- package/lib/module/ui/context/commitSessionFlow.js +42 -3
- package/lib/module/ui/context/commitSessionFlow.js.map +1 -1
- package/lib/module/ui/context/hooks/useAuthOperations.js +2 -15
- package/lib/module/ui/context/hooks/useAuthOperations.js.map +1 -1
- package/lib/module/ui/context/useOxyAccountGraph.js +4 -3
- package/lib/module/ui/context/useOxyAccountGraph.js.map +1 -1
- package/lib/module/ui/hooks/mutations/mutationFactory.js +1 -1
- package/lib/module/ui/hooks/mutations/mutationFactory.js.map +1 -1
- 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/usePaymentQueries.js +2 -3
- package/lib/module/ui/hooks/queries/usePaymentQueries.js.map +1 -1
- package/lib/module/ui/hooks/queries/userCache.js +17 -17
- package/lib/module/ui/hooks/queries/userCache.js.map +1 -1
- package/lib/module/ui/hooks/useAssets.js.map +1 -1
- package/lib/module/ui/hooks/useAsyncAction.js +1 -1
- package/lib/module/ui/hooks/useAsyncAction.js.map +1 -1
- package/lib/module/ui/hooks/useAuth.js +2 -4
- package/lib/module/ui/hooks/useAuth.js.map +1 -1
- package/lib/module/ui/hooks/useAvatarPicker.js +1 -1
- package/lib/module/ui/hooks/useAvatarPicker.js.map +1 -1
- package/lib/module/ui/hooks/useOnlineStatus.js +2 -3
- package/lib/module/ui/hooks/useOnlineStatus.js.map +1 -1
- package/lib/module/ui/hooks/useSessionManagement.js +2 -0
- package/lib/module/ui/hooks/useSessionManagement.js.map +1 -1
- package/lib/module/ui/hooks/useSettingToggle.js +1 -1
- package/lib/module/ui/hooks/useSettingToggle.js.map +1 -1
- package/lib/module/ui/hooks/useSurfaceHeader.js +11 -68
- package/lib/module/ui/hooks/useSurfaceHeader.js.map +1 -1
- package/lib/module/ui/oauth/browserAuthTransport.js +64 -66
- package/lib/module/ui/oauth/browserAuthTransport.js.map +1 -1
- package/lib/module/ui/oauth/legacyRedirectLanes.js +44 -0
- package/lib/module/ui/oauth/legacyRedirectLanes.js.map +1 -0
- package/lib/module/ui/oauth/oauthPopup.js +1 -48
- package/lib/module/ui/oauth/oauthPopup.js.map +1 -1
- package/lib/module/ui/screens/AccountMembersScreen.js +1 -1
- package/lib/module/ui/screens/AccountMembersScreen.js.map +1 -1
- package/lib/module/ui/screens/AccountSettingsScreen.js +4 -3
- 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 +1 -1
- package/lib/module/ui/screens/AppInfoScreen.js.map +1 -1
- package/lib/module/ui/screens/AvatarCropScreen.js +1 -1
- package/lib/module/ui/screens/AvatarCropScreen.js.map +1 -1
- package/lib/module/ui/screens/ChangeAvatarScreen.js +5 -4
- package/lib/module/ui/screens/ChangeAvatarScreen.js.map +1 -1
- package/lib/module/ui/screens/ConnectedAppsScreen.js +2 -2
- package/lib/module/ui/screens/ConnectedAppsScreen.js.map +1 -1
- package/lib/module/ui/screens/CreateAccountScreen.js +1 -1
- package/lib/module/ui/screens/CreateAccountScreen.js.map +1 -1
- package/lib/module/ui/screens/EditProfileFieldScreen.js +1 -1
- package/lib/module/ui/screens/EditProfileFieldScreen.js.map +1 -1
- package/lib/module/ui/screens/EditProfileScreen.js +4 -3
- package/lib/module/ui/screens/EditProfileScreen.js.map +1 -1
- package/lib/module/ui/screens/FAQScreen.js +1 -1
- package/lib/module/ui/screens/FAQScreen.js.map +1 -1
- package/lib/module/ui/screens/FeedbackScreen.js +91 -94
- package/lib/module/ui/screens/FeedbackScreen.js.map +1 -1
- package/lib/module/ui/screens/FileManagementScreen.js +1 -1
- package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
- package/lib/module/ui/screens/FollowersListScreen.js.map +1 -1
- package/lib/module/ui/screens/FollowingListScreen.js.map +1 -1
- package/lib/module/ui/screens/HelpSupportScreen.js +1 -1
- package/lib/module/ui/screens/HelpSupportScreen.js.map +1 -1
- package/lib/module/ui/screens/HistoryViewScreen.js +30 -5
- package/lib/module/ui/screens/HistoryViewScreen.js.map +1 -1
- package/lib/module/ui/screens/LanguageSelectorScreen.js +1 -1
- package/lib/module/ui/screens/LanguageSelectorScreen.js.map +1 -1
- package/lib/module/ui/screens/LegalDocumentsScreen.js +1 -1
- package/lib/module/ui/screens/LegalDocumentsScreen.js.map +1 -1
- package/lib/module/ui/screens/ManageAccountScreen.js +3 -3
- package/lib/module/ui/screens/ManageAccountScreen.js.map +1 -1
- package/lib/module/ui/screens/PremiumSubscriptionScreen.js +4 -4
- package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +1 -1
- package/lib/module/ui/screens/PrivacySettingsScreen.js +11 -11
- package/lib/module/ui/screens/PrivacySettingsScreen.js.map +1 -1
- package/lib/module/ui/screens/ProfileScreen.js +8 -18
- package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
- package/lib/module/ui/screens/SavesCollectionsScreen.js +1 -1
- package/lib/module/ui/screens/SavesCollectionsScreen.js.map +1 -1
- package/lib/module/ui/screens/UserListScreen.js +8 -14
- package/lib/module/ui/screens/UserListScreen.js.map +1 -1
- package/lib/module/ui/screens/WelcomeNewUserScreen.js +6 -5
- package/lib/module/ui/screens/WelcomeNewUserScreen.js.map +1 -1
- package/lib/module/ui/screens/fileManagement/PhotoPickerSection.js +4 -1
- package/lib/module/ui/screens/fileManagement/PhotoPickerSection.js.map +1 -1
- package/lib/module/ui/screens/fileManagement/hooks/useFileUploadState.js +5 -15
- package/lib/module/ui/screens/fileManagement/hooks/useFileUploadState.js.map +1 -1
- package/lib/module/ui/screens/trust/TrustCenterScreen.js +1 -1
- package/lib/module/ui/screens/trust/TrustCenterScreen.js.map +1 -1
- package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js +5 -4
- package/lib/module/ui/screens/trust/TrustLeaderboardScreen.js.map +1 -1
- package/lib/module/ui/screens/trust/TrustRewardsScreen.js +1 -1
- package/lib/module/ui/screens/trust/TrustRewardsScreen.js.map +1 -1
- package/lib/module/ui/session/index.js +0 -1
- package/lib/module/ui/session/index.js.map +1 -1
- package/lib/module/ui/utils/crossOriginRestore.js +131 -0
- package/lib/module/ui/utils/crossOriginRestore.js.map +1 -0
- package/lib/module/ui/utils/fileManagement.js +25 -25
- package/lib/module/ui/utils/fileManagement.js.map +1 -1
- package/lib/module/ui/utils/oauthReturn.js +30 -20
- package/lib/module/ui/utils/oauthReturn.js.map +1 -1
- package/lib/module/ui/utils/userUtils.js +28 -27
- package/lib/module/ui/utils/userUtils.js.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +2 -0
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/notifications/deviceNotifications.d.ts +0 -51
- package/lib/typescript/commonjs/notifications/deviceNotifications.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/boot/runProviderColdBoot.d.ts +30 -11
- package/lib/typescript/commonjs/ui/boot/runProviderColdBoot.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 +0 -7
- package/lib/typescript/commonjs/ui/components/OxyAuthChooser.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.map +1 -1
- package/lib/typescript/commonjs/ui/components/authChooser/AccountsMenuView.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/authChooser/primitives.d.ts +1 -1
- package/lib/typescript/commonjs/ui/components/authChooser/primitives.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/fileManagement/UploadPreview.d.ts +1 -1
- package/lib/typescript/commonjs/ui/components/fileManagement/UploadPreview.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/internal/PinInput.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/payment/types.d.ts +6 -6
- package/lib/typescript/commonjs/ui/components/payment/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/commitSessionFlow.d.ts +40 -0
- package/lib/typescript/commonjs/ui/context/commitSessionFlow.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts +2 -11
- package/lib/typescript/commonjs/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/oxyContextTypes.d.ts +7 -26
- package/lib/typescript/commonjs/ui/context/oxyContextTypes.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/context/useOxyAccountGraph.d.ts +1 -0
- package/lib/typescript/commonjs/ui/context/useOxyAccountGraph.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/paymentTypes.d.ts +2 -3
- package/lib/typescript/commonjs/ui/hooks/queries/paymentTypes.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/usePaymentQueries.d.ts +2 -3
- package/lib/typescript/commonjs/ui/hooks/queries/usePaymentQueries.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/queries/userCache.d.ts +2 -2
- package/lib/typescript/commonjs/ui/hooks/queries/userCache.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useAssets.d.ts +1 -1
- package/lib/typescript/commonjs/ui/hooks/useAssets.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useAsyncAction.d.ts +2 -2
- package/lib/typescript/commonjs/ui/hooks/useAsyncAction.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useAuth.d.ts +2 -4
- package/lib/typescript/commonjs/ui/hooks/useAuth.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useOnlineStatus.d.ts +2 -3
- package/lib/typescript/commonjs/ui/hooks/useOnlineStatus.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useSessionManagement.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/hooks/useSurfaceHeader.d.ts +2 -7
- package/lib/typescript/commonjs/ui/hooks/useSurfaceHeader.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/oauth/browserAuthTransport.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/oauth/legacyRedirectLanes.d.ts +40 -0
- package/lib/typescript/commonjs/ui/oauth/legacyRedirectLanes.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/oauth/oauthPopup.d.ts +0 -6
- package/lib/typescript/commonjs/ui/oauth/oauthPopup.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/ChangeAvatarScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/EditProfileScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/FeedbackScreen.d.ts +2 -2
- package/lib/typescript/commonjs/ui/screens/FeedbackScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/FollowersListScreen.d.ts +0 -3
- package/lib/typescript/commonjs/ui/screens/FollowersListScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/FollowingListScreen.d.ts +0 -3
- package/lib/typescript/commonjs/ui/screens/FollowingListScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/HistoryViewScreen.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/screens/ManageAccountScreen.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/UserListScreen.d.ts +0 -7
- 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/fileManagement/hooks/useFileUploadState.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/trustTier.d.ts +1 -1
- package/lib/typescript/commonjs/ui/screens/trust/trustTier.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/session/index.d.ts +0 -1
- package/lib/typescript/commonjs/ui/session/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/types/navigation.d.ts +19 -27
- package/lib/typescript/commonjs/ui/types/navigation.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/crossOriginRestore.d.ts +43 -0
- package/lib/typescript/commonjs/ui/utils/crossOriginRestore.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts +5 -5
- package/lib/typescript/commonjs/ui/utils/fileManagement.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/oauthReturn.d.ts +12 -15
- package/lib/typescript/commonjs/ui/utils/oauthReturn.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/userUtils.d.ts +14 -7
- package/lib/typescript/commonjs/ui/utils/userUtils.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +2 -0
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/notifications/deviceNotifications.d.ts +0 -51
- package/lib/typescript/module/notifications/deviceNotifications.d.ts.map +1 -1
- package/lib/typescript/module/ui/boot/runProviderColdBoot.d.ts +30 -11
- package/lib/typescript/module/ui/boot/runProviderColdBoot.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 +0 -7
- package/lib/typescript/module/ui/components/OxyAuthChooser.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.map +1 -1
- package/lib/typescript/module/ui/components/authChooser/AccountsMenuView.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/authChooser/primitives.d.ts +1 -1
- package/lib/typescript/module/ui/components/authChooser/primitives.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/fileManagement/UploadPreview.d.ts +1 -1
- package/lib/typescript/module/ui/components/fileManagement/UploadPreview.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/internal/PinInput.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/payment/types.d.ts +6 -6
- package/lib/typescript/module/ui/components/payment/types.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/commitSessionFlow.d.ts +40 -0
- package/lib/typescript/module/ui/context/commitSessionFlow.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts +2 -11
- package/lib/typescript/module/ui/context/hooks/useAuthOperations.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/oxyContextTypes.d.ts +7 -26
- package/lib/typescript/module/ui/context/oxyContextTypes.d.ts.map +1 -1
- package/lib/typescript/module/ui/context/useOxyAccountGraph.d.ts +1 -0
- package/lib/typescript/module/ui/context/useOxyAccountGraph.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/mutations/useAccountMutations.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/paymentTypes.d.ts +2 -3
- package/lib/typescript/module/ui/hooks/queries/paymentTypes.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/usePaymentQueries.d.ts +2 -3
- package/lib/typescript/module/ui/hooks/queries/usePaymentQueries.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/queries/userCache.d.ts +2 -2
- package/lib/typescript/module/ui/hooks/queries/userCache.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useAssets.d.ts +1 -1
- package/lib/typescript/module/ui/hooks/useAssets.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useAsyncAction.d.ts +2 -2
- package/lib/typescript/module/ui/hooks/useAsyncAction.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useAuth.d.ts +2 -4
- package/lib/typescript/module/ui/hooks/useAuth.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useOnlineStatus.d.ts +2 -3
- package/lib/typescript/module/ui/hooks/useOnlineStatus.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useSessionManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/hooks/useSurfaceHeader.d.ts +2 -7
- package/lib/typescript/module/ui/hooks/useSurfaceHeader.d.ts.map +1 -1
- package/lib/typescript/module/ui/oauth/browserAuthTransport.d.ts.map +1 -1
- package/lib/typescript/module/ui/oauth/legacyRedirectLanes.d.ts +40 -0
- package/lib/typescript/module/ui/oauth/legacyRedirectLanes.d.ts.map +1 -0
- package/lib/typescript/module/ui/oauth/oauthPopup.d.ts +0 -6
- package/lib/typescript/module/ui/oauth/oauthPopup.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/ChangeAvatarScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/EditProfileScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts +2 -2
- package/lib/typescript/module/ui/screens/FeedbackScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/FollowersListScreen.d.ts +0 -3
- package/lib/typescript/module/ui/screens/FollowersListScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/FollowingListScreen.d.ts +0 -3
- package/lib/typescript/module/ui/screens/FollowingListScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/HistoryViewScreen.d.ts.map +1 -1
- package/lib/typescript/module/ui/screens/ManageAccountScreen.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/UserListScreen.d.ts +0 -7
- 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/fileManagement/hooks/useFileUploadState.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/trustTier.d.ts +1 -1
- package/lib/typescript/module/ui/screens/trust/trustTier.d.ts.map +1 -1
- package/lib/typescript/module/ui/session/index.d.ts +0 -1
- package/lib/typescript/module/ui/session/index.d.ts.map +1 -1
- package/lib/typescript/module/ui/types/navigation.d.ts +19 -27
- package/lib/typescript/module/ui/types/navigation.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/crossOriginRestore.d.ts +43 -0
- package/lib/typescript/module/ui/utils/crossOriginRestore.d.ts.map +1 -0
- package/lib/typescript/module/ui/utils/fileManagement.d.ts +5 -5
- package/lib/typescript/module/ui/utils/fileManagement.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/oauthReturn.d.ts +12 -15
- package/lib/typescript/module/ui/utils/oauthReturn.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/userUtils.d.ts +14 -7
- package/lib/typescript/module/ui/utils/userUtils.d.ts.map +1 -1
- package/package.json +10 -22
- package/src/index.ts +16 -18
- package/src/notifications/deviceNotifications.ts +0 -82
- package/src/ui/boot/__tests__/coldBootWebAuthMode.test.ts +281 -0
- package/src/ui/boot/runProviderColdBoot.ts +101 -24
- package/src/ui/components/FollowButton.tsx +1 -1
- package/src/ui/components/OxyAccountDialogScreen.tsx +1 -13
- package/src/ui/components/OxyAuthChooser.tsx +4 -14
- package/src/ui/components/OxyProvider.tsx +7 -8
- package/src/ui/components/ProfileButton.tsx +2 -5
- package/src/ui/components/authChooser/AccountsMenuView.tsx +10 -5
- package/src/ui/components/authChooser/primitives.tsx +1 -1
- package/src/ui/components/authChooser/useUsernameAvailability.ts +1 -1
- package/src/ui/components/fileManagement/UploadPreview.tsx +1 -1
- package/src/ui/components/internal/PinInput.tsx +0 -1
- package/src/ui/components/logo/LogoText.tsx +4 -4
- package/src/ui/components/payment/PaymentDetailsStep.tsx +1 -1
- package/src/ui/components/payment/PaymentSummaryStep.tsx +2 -2
- package/src/ui/components/payment/types.ts +24 -24
- package/src/ui/components/styles/shadow.tsx +2 -2
- package/src/ui/context/OxyContext.tsx +46 -35
- package/src/ui/context/__tests__/commitSessionFlow.test.ts +89 -13
- package/src/ui/context/commitSessionFlow.ts +61 -3
- package/src/ui/context/hooks/useAuthOperations.ts +1 -26
- package/src/ui/context/oxyContextTypes.ts +7 -26
- package/src/ui/context/useOxyAccountGraph.ts +4 -4
- package/src/ui/hooks/mutations/mutationFactory.ts +1 -1
- package/src/ui/hooks/mutations/useAccountMutations.ts +1 -1
- package/src/ui/hooks/mutations/useServicesMutations.ts +1 -1
- package/src/ui/hooks/queries/paymentTypes.ts +2 -3
- package/src/ui/hooks/queries/usePaymentQueries.ts +2 -3
- package/src/ui/hooks/queries/userCache.ts +148 -169
- package/src/ui/hooks/useAssets.ts +1 -1
- package/src/ui/hooks/useAsyncAction.ts +3 -3
- package/src/ui/hooks/useAuth.ts +2 -4
- package/src/ui/hooks/useAvatarPicker.ts +1 -1
- package/src/ui/hooks/useOnlineStatus.ts +2 -3
- package/src/ui/hooks/useSessionManagement.ts +2 -0
- package/src/ui/hooks/useSettingToggle.ts +1 -1
- package/src/ui/hooks/useSurfaceHeader.ts +15 -90
- package/src/ui/oauth/__tests__/oauthPopup.test.ts +0 -26
- package/src/ui/oauth/browserAuthTransport.ts +49 -55
- package/src/ui/oauth/legacyRedirectLanes.ts +43 -0
- package/src/ui/oauth/oauthPopup.ts +3 -61
- package/src/ui/screens/AccountMembersScreen.tsx +1 -1
- package/src/ui/screens/AccountSettingsScreen.tsx +5 -5
- package/src/ui/screens/AccountVerificationScreen.tsx +1 -1
- package/src/ui/screens/AppInfoScreen.tsx +1 -1
- package/src/ui/screens/AvatarCropScreen.tsx +1 -1
- package/src/ui/screens/ChangeAvatarScreen.tsx +4 -7
- package/src/ui/screens/ConnectedAppsScreen.tsx +2 -2
- package/src/ui/screens/CreateAccountScreen.tsx +1 -1
- package/src/ui/screens/EditProfileFieldScreen.tsx +1 -1
- package/src/ui/screens/EditProfileScreen.tsx +3 -6
- package/src/ui/screens/FAQScreen.tsx +1 -1
- package/src/ui/screens/FeedbackScreen.tsx +575 -741
- package/src/ui/screens/FileManagementScreen.tsx +1 -1
- package/src/ui/screens/FollowersListScreen.tsx +0 -3
- package/src/ui/screens/FollowingListScreen.tsx +0 -3
- package/src/ui/screens/HelpSupportScreen.tsx +1 -1
- package/src/ui/screens/HistoryViewScreen.tsx +20 -5
- package/src/ui/screens/LanguageSelectorScreen.tsx +1 -1
- package/src/ui/screens/LegalDocumentsScreen.tsx +1 -1
- package/src/ui/screens/ManageAccountScreen.tsx +2 -9
- package/src/ui/screens/PremiumSubscriptionScreen.tsx +4 -4
- package/src/ui/screens/PrivacySettingsScreen.tsx +12 -15
- package/src/ui/screens/ProfileScreen.tsx +6 -24
- package/src/ui/screens/SavesCollectionsScreen.tsx +1 -1
- package/src/ui/screens/UserListScreen.tsx +8 -18
- package/src/ui/screens/WelcomeNewUserScreen.tsx +6 -6
- package/src/ui/screens/fileManagement/PhotoPickerSection.tsx +1 -1
- package/src/ui/screens/fileManagement/hooks/useFileUploadState.ts +5 -14
- package/src/ui/screens/trust/TrustCenterScreen.tsx +2 -2
- package/src/ui/screens/trust/TrustLeaderboardScreen.tsx +5 -6
- package/src/ui/screens/trust/TrustRewardsScreen.tsx +1 -1
- package/src/ui/screens/trust/TrustRulesScreen.tsx +1 -1
- package/src/ui/screens/trust/trustTier.ts +1 -1
- package/src/ui/session/index.ts +0 -1
- package/src/ui/types/navigation.ts +19 -27
- package/src/ui/utils/__tests__/crossOriginRestore.test.ts +143 -0
- package/src/ui/utils/crossOriginRestore.ts +169 -0
- package/src/ui/utils/fileManagement.ts +92 -108
- package/src/ui/utils/oauthReturn.ts +33 -23
- package/src/ui/utils/userUtils.ts +32 -27
- package/android/src/main/java/so/oxy/session/OxyBackgroundSession.kt +0 -184
- package/android/src/main/java/so/oxy/session/OxyBackgroundSessionApi.kt +0 -162
- package/android/src/main/java/so/oxy/session/OxyBackgroundSessionModule.kt +0 -116
- package/android/src/main/java/so/oxy/session/OxyBackgroundSessionStore.kt +0 -179
- package/android/src/main/java/so/oxy/session/OxyBackgroundToken.kt +0 -61
- package/android/src/main/java/so/oxy/storage/OxyEncryptedPrefs.kt +0 -241
- package/lib/commonjs/ui/session/backgroundSession.js +0 -258
- package/lib/commonjs/ui/session/backgroundSession.js.map +0 -1
- package/lib/commonjs/ui/session/useBackgroundSessionSync.js +0 -81
- package/lib/commonjs/ui/session/useBackgroundSessionSync.js.map +0 -1
- package/lib/commonjs/ui/utils/netConnectivity.js +0 -28
- package/lib/commonjs/ui/utils/netConnectivity.js.map +0 -1
- package/lib/module/ui/session/backgroundSession.js +0 -252
- package/lib/module/ui/session/backgroundSession.js.map +0 -1
- package/lib/module/ui/session/useBackgroundSessionSync.js +0 -76
- package/lib/module/ui/session/useBackgroundSessionSync.js.map +0 -1
- package/lib/module/ui/utils/netConnectivity.js +0 -23
- package/lib/module/ui/utils/netConnectivity.js.map +0 -1
- package/lib/typescript/commonjs/ui/session/backgroundSession.d.ts +0 -42
- package/lib/typescript/commonjs/ui/session/backgroundSession.d.ts.map +0 -1
- package/lib/typescript/commonjs/ui/session/useBackgroundSessionSync.d.ts +0 -23
- package/lib/typescript/commonjs/ui/session/useBackgroundSessionSync.d.ts.map +0 -1
- package/lib/typescript/commonjs/ui/utils/netConnectivity.d.ts +0 -17
- package/lib/typescript/commonjs/ui/utils/netConnectivity.d.ts.map +0 -1
- package/lib/typescript/module/ui/session/backgroundSession.d.ts +0 -42
- package/lib/typescript/module/ui/session/backgroundSession.d.ts.map +0 -1
- package/lib/typescript/module/ui/session/useBackgroundSessionSync.d.ts +0 -23
- package/lib/typescript/module/ui/session/useBackgroundSessionSync.d.ts.map +0 -1
- package/lib/typescript/module/ui/utils/netConnectivity.d.ts +0 -17
- package/lib/typescript/module/ui/utils/netConnectivity.d.ts.map +0 -1
- package/src/ui/boot/__tests__/coldBootNoIdpRedirect.test.ts +0 -215
- package/src/ui/session/__tests__/backgroundSession.test.ts +0 -392
- package/src/ui/session/backgroundSession.ts +0 -313
- package/src/ui/session/useBackgroundSessionSync.ts +0 -92
- package/src/ui/utils/netConnectivity.ts +0 -27
|
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.upsertCachedUser = upsertCachedUser;
|
|
7
7
|
exports.upsertCachedUsers = upsertCachedUsers;
|
|
8
|
-
var _authStore = require("../../stores/authStore.js");
|
|
9
8
|
var _queryKeys = require("./queryKeys.js");
|
|
9
|
+
var _authStore = require("../../stores/authStore.js");
|
|
10
10
|
/**
|
|
11
11
|
* Canonical user-cache UPSERT for the Oxy React Query cache.
|
|
12
12
|
*
|
|
@@ -58,7 +58,7 @@ var _queryKeys = require("./queryKeys.js");
|
|
|
58
58
|
*/
|
|
59
59
|
|
|
60
60
|
/** The degraded display-name sentinel (ghost-author rule). */
|
|
61
|
-
const DEGRADED_DISPLAY_NAME =
|
|
61
|
+
const DEGRADED_DISPLAY_NAME = 'Unknown user';
|
|
62
62
|
|
|
63
63
|
/** A cache entry always carries a resolved string `id`. */
|
|
64
64
|
|
|
@@ -70,22 +70,22 @@ const DEGRADED_DISPLAY_NAME = "Unknown user";
|
|
|
70
70
|
*/
|
|
71
71
|
function isMeaningful(value) {
|
|
72
72
|
if (value === undefined || value === null) return false;
|
|
73
|
-
if (typeof value ===
|
|
73
|
+
if (typeof value === 'string') return value.trim() !== '';
|
|
74
74
|
return true;
|
|
75
75
|
}
|
|
76
76
|
|
|
77
77
|
/** A display name is meaningful only when non-empty AND not the degraded sentinel. */
|
|
78
78
|
function isMeaningfulDisplayName(value) {
|
|
79
|
-
return typeof value ===
|
|
79
|
+
return typeof value === 'string' && value.trim() !== '' && value !== DEGRADED_DISPLAY_NAME;
|
|
80
80
|
}
|
|
81
81
|
function isPlainObject(value) {
|
|
82
|
-
return typeof value ===
|
|
82
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
83
83
|
}
|
|
84
84
|
|
|
85
85
|
/** Normalize the polymorphic `name` (string | object | nullish) to the canonical object shape. */
|
|
86
86
|
function normalizeName(name) {
|
|
87
87
|
if (name === undefined || name === null) return undefined;
|
|
88
|
-
if (typeof name ===
|
|
88
|
+
if (typeof name === 'string') {
|
|
89
89
|
const trimmed = name.trim();
|
|
90
90
|
return trimmed ? {
|
|
91
91
|
displayName: trimmed
|
|
@@ -120,7 +120,7 @@ function toCachedUser(user, fallbackId) {
|
|
|
120
120
|
* when no id can be resolved (nothing to key on).
|
|
121
121
|
*/
|
|
122
122
|
function normalizeIncoming(user) {
|
|
123
|
-
const cached = toCachedUser(user,
|
|
123
|
+
const cached = toCachedUser(user, '');
|
|
124
124
|
return cached.id ? cached : null;
|
|
125
125
|
}
|
|
126
126
|
|
|
@@ -132,7 +132,7 @@ function mergeName(existing, incoming) {
|
|
|
132
132
|
...existing
|
|
133
133
|
};
|
|
134
134
|
for (const [key, value] of Object.entries(incoming)) {
|
|
135
|
-
if (key ===
|
|
135
|
+
if (key === 'displayName') continue;
|
|
136
136
|
if (isMeaningful(value)) merged[key] = value;
|
|
137
137
|
}
|
|
138
138
|
// Never let an empty / `'Unknown user'` displayName overwrite a real one.
|
|
@@ -148,8 +148,8 @@ function mergeCount(existing, incoming) {
|
|
|
148
148
|
const merged = {
|
|
149
149
|
...(isPlainObject(existing) ? existing : {})
|
|
150
150
|
};
|
|
151
|
-
if (typeof incoming.followers ===
|
|
152
|
-
if (typeof incoming.following ===
|
|
151
|
+
if (typeof incoming.followers === 'number') merged.followers = incoming.followers;
|
|
152
|
+
if (typeof incoming.following === 'number') merged.following = incoming.following;
|
|
153
153
|
return merged;
|
|
154
154
|
}
|
|
155
155
|
|
|
@@ -162,8 +162,8 @@ function mergeRelationship(existing, incoming) {
|
|
|
162
162
|
const merged = {
|
|
163
163
|
...(isPlainObject(existing) ? existing : {})
|
|
164
164
|
};
|
|
165
|
-
if (typeof incoming.isFollowing ===
|
|
166
|
-
if (typeof incoming.followsYou ===
|
|
165
|
+
if (typeof incoming.isFollowing === 'boolean') merged.isFollowing = incoming.isFollowing;
|
|
166
|
+
if (typeof incoming.followsYou === 'boolean') merged.followsYou = incoming.followsYou;
|
|
167
167
|
return merged;
|
|
168
168
|
}
|
|
169
169
|
|
|
@@ -181,8 +181,8 @@ function mergeUsers(existing, incoming, options) {
|
|
|
181
181
|
...existing
|
|
182
182
|
};
|
|
183
183
|
for (const [key, value] of Object.entries(incoming)) {
|
|
184
|
-
if (key ===
|
|
185
|
-
if (key ===
|
|
184
|
+
if (key === 'name' || key === '_count' || key === 'relationship') continue;
|
|
185
|
+
if (key === 'id') {
|
|
186
186
|
merged.id = incoming.id;
|
|
187
187
|
continue;
|
|
188
188
|
}
|
|
@@ -196,7 +196,7 @@ function mergeUsers(existing, incoming, options) {
|
|
|
196
196
|
const relationship = mergeRelationship(existing.relationship, incoming.relationship);
|
|
197
197
|
if (relationship !== undefined) merged.relationship = relationship;
|
|
198
198
|
} else {
|
|
199
|
-
merged.relationship
|
|
199
|
+
delete merged.relationship;
|
|
200
200
|
}
|
|
201
201
|
return merged;
|
|
202
202
|
}
|
|
@@ -235,7 +235,7 @@ function upsertOneKey(queryClient, key, incoming, options) {
|
|
|
235
235
|
* empty string is honoured (anonymous scope).
|
|
236
236
|
*/
|
|
237
237
|
function resolveViewerId(viewerId) {
|
|
238
|
-
return viewerId ?? _authStore.useAuthStore.getState().user?.id ??
|
|
238
|
+
return viewerId ?? _authStore.useAuthStore.getState().user?.id ?? '';
|
|
239
239
|
}
|
|
240
240
|
|
|
241
241
|
/**
|
|
@@ -259,7 +259,7 @@ function upsertCachedUser(queryClient, user, viewerId) {
|
|
|
259
259
|
includeRelationship: false
|
|
260
260
|
});
|
|
261
261
|
const username = incoming.username;
|
|
262
|
-
if (typeof username ===
|
|
262
|
+
if (typeof username === 'string' && username.trim() !== '') {
|
|
263
263
|
// By-username entry (read by `useUserByUsername`). Viewer-scoped because the
|
|
264
264
|
// authenticated single-profile fetch embeds the viewer `relationship`. Build
|
|
265
265
|
// the key through the SAME helper the hook uses so username normalization
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_queryKeys","require","_authStore","DEGRADED_DISPLAY_NAME","isMeaningful","value","undefined","trim","isMeaningfulDisplayName","isPlainObject","Array","isArray","normalizeName","name","trimmed","displayName","toCachedUser","user","fallbackId","rawName","rest","id","String","_id","normalized","normalizeIncoming","cached","mergeName","existing","incoming","merged","key","Object","entries","mergeCount","followers","following","mergeRelationship","isFollowing","followsYou","mergeUsers","options","includeRelationship","count","_count","relationship","upsertOneKey","queryClient","mergeOpts","getQueryData","seeded","setQueryData","updatedAt","dataUpdatedAt","getQueryState","resolveViewerId","viewerId","useAuthStore","getState","upsertCachedUser","queryKeys","users","detail","username","byUsername","upsertCachedUsers","length","resolvedViewerId"],"sourceRoot":"../../../../../src","sources":["ui/hooks/queries/userCache.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_assetStore","oxyInstance","setOxyAssetInstance","instance","exports","useAssets","assets","uploadProgress","loading","errors","setAsset","setAssets","removeAsset","setUploadProgress","removeUploadProgress","addLink","removeLink","setUploading","setLinking","setDeleting","setUploadError","setLinkError","setDeleteError","clearErrors","getAssetsByApp","getAssetsByEntity","getAssetUsageCount","isAssetLinked","reset","useAssetStore","upload","useCallback","file","metadata","Error","result","assetUpload","undefined","fileId","id","uploaded","size","total","percentage","status","setTimeout","error","message","link","assetId","app","entityType","entityId","visibility","assetLink","createdBy","createdAt","Date","toISOString","unlink","assetUnlink","getUrl","variant","expiresIn","assetGetUrl","url","getAsset","assetGet","deleteAsset","force","assetDelete","restore","assetRestore","getVariants","assetGetVariants","Object","values"],"sourceRoot":"../../../../src","sources":["ui/hooks/useAssets.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AASA;AACA,IAAIE,WAA+B,GAAG,IAAI;AAEnC,MAAMC,mBAAmB,GAAIC,QAAqB,IAAK;EAC5DF,WAAW,GAAGE,QAAQ;AACxB,CAAC;;AAED;AACA;AACA;AAFAC,OAAA,CAAAF,mBAAA,GAAAA,mBAAA;AAGO,MAAMG,SAAS,GAAGA,CAAA,KAAM;EAC7B,MAAM;IACJC,MAAM;IACNC,cAAc;IACdC,OAAO;IACPC,MAAM;IACNC,QAAQ;IACRC,SAAS;IACTC,WAAW;IACXC,iBAAiB;IACjBC,oBAAoB;IACpBC,OAAO;IACPC,UAAU;IACVC,YAAY;IACZC,UAAU;IACVC,WAAW;IACXC,cAAc;IACdC,YAAY;IACZC,cAAc;IACdC,WAAW;IACXC,cAAc;IACdC,iBAAiB;IACjBC,kBAAkB;IAClBC,aAAa;IACbC;EACF,CAAC,GAAG,IAAAC,yBAAa,EAAC,CAAC;;EAEnB;EACA,MAAMC,MAAM,GAAG,IAAAC,kBAAW,EAAC,OACzBC,IAAU,EACVC,
|
|
1
|
+
{"version":3,"names":["_react","require","_assetStore","oxyInstance","setOxyAssetInstance","instance","exports","useAssets","assets","uploadProgress","loading","errors","setAsset","setAssets","removeAsset","setUploadProgress","removeUploadProgress","addLink","removeLink","setUploading","setLinking","setDeleting","setUploadError","setLinkError","setDeleteError","clearErrors","getAssetsByApp","getAssetsByEntity","getAssetUsageCount","isAssetLinked","reset","useAssetStore","upload","useCallback","file","metadata","Error","result","assetUpload","undefined","fileId","id","uploaded","size","total","percentage","status","setTimeout","error","message","link","assetId","app","entityType","entityId","visibility","assetLink","createdBy","createdAt","Date","toISOString","unlink","assetUnlink","getUrl","variant","expiresIn","assetGetUrl","url","getAsset","assetGet","deleteAsset","force","assetDelete","restore","assetRestore","getVariants","assetGetVariants","Object","values"],"sourceRoot":"../../../../src","sources":["ui/hooks/useAssets.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,7 +7,7 @@ exports.default = void 0;
|
|
|
7
7
|
exports.executeWithToast = executeWithToast;
|
|
8
8
|
exports.useAsyncAction = useAsyncAction;
|
|
9
9
|
var _react = require("react");
|
|
10
|
-
var
|
|
10
|
+
var _bloom = require("@oxyhq/bloom");
|
|
11
11
|
/**
|
|
12
12
|
* Hook for handling async actions with loading state, error handling, and toast notifications.
|
|
13
13
|
* Reduces boilerplate for common patterns like try-catch with toast feedback.
|
|
@@ -37,18 +37,18 @@ function useAsyncAction(options) {
|
|
|
37
37
|
setIsLoading(true);
|
|
38
38
|
setError(null);
|
|
39
39
|
if (showLoadingToast && loadingMessage) {
|
|
40
|
-
|
|
40
|
+
_bloom.toast.info(loadingMessage);
|
|
41
41
|
}
|
|
42
42
|
try {
|
|
43
43
|
const result = await action();
|
|
44
44
|
if (successMessage) {
|
|
45
|
-
|
|
45
|
+
_bloom.toast.success(successMessage);
|
|
46
46
|
}
|
|
47
47
|
onSuccess?.(result);
|
|
48
48
|
return result;
|
|
49
49
|
} catch (err) {
|
|
50
50
|
const message = typeof errorMessage === 'function' ? errorMessage(err) : errorMessage || (err instanceof Error ? err.message : null) || 'An error occurred';
|
|
51
|
-
|
|
51
|
+
_bloom.toast.error(message);
|
|
52
52
|
setError(err instanceof Error ? err : new Error(message));
|
|
53
53
|
onError?.(err);
|
|
54
54
|
return undefined;
|
|
@@ -78,16 +78,16 @@ async function executeWithToast(action, options) {
|
|
|
78
78
|
loadingMessage
|
|
79
79
|
} = options || {};
|
|
80
80
|
if (loadingMessage) {
|
|
81
|
-
|
|
81
|
+
_bloom.toast.info(loadingMessage);
|
|
82
82
|
}
|
|
83
83
|
try {
|
|
84
84
|
const result = await action();
|
|
85
85
|
if (successMessage) {
|
|
86
|
-
|
|
86
|
+
_bloom.toast.success(successMessage);
|
|
87
87
|
}
|
|
88
88
|
return result;
|
|
89
89
|
} catch (err) {
|
|
90
|
-
|
|
90
|
+
_bloom.toast.error(errorMessage || (err instanceof Error ? err.message : null) || 'An error occurred');
|
|
91
91
|
return undefined;
|
|
92
92
|
}
|
|
93
93
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","
|
|
1
|
+
{"version":3,"names":["_react","require","_bloom","useAsyncAction","options","isLoading","setIsLoading","useState","error","setError","execute","useCallback","action","successMessage","errorMessage","onSuccess","onError","showLoadingToast","loadingMessage","toast","info","result","success","err","message","Error","undefined","resetError","executeWithToast","_default","exports","default"],"sourceRoot":"../../../../src","sources":["ui/hooks/useAsyncAction.ts"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AA8BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,cAAcA,CAC1BC,OAAiC,EACV;EACvB,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EACjD,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAF,eAAQ,EAAe,IAAI,CAAC;EAEtD,MAAMG,OAAO,GAAG,IAAAC,kBAAW,EAAC,YAAoC;IAC5D,MAAM;MACFC,MAAM;MACNC,cAAc;MACdC,YAAY;MACZC,SAAS;MACTC,OAAO;MACPC,gBAAgB;MAChBC;IACJ,CAAC,GAAGd,OAAO;IAEXE,YAAY,CAAC,IAAI,CAAC;IAClBG,QAAQ,CAAC,IAAI,CAAC;IAEd,IAAIQ,gBAAgB,IAAIC,cAAc,EAAE;MACpCC,YAAK,CAACC,IAAI,CAACF,cAAc,CAAC;IAC9B;IAEA,IAAI;MACA,MAAMG,MAAM,GAAG,MAAMT,MAAM,CAAC,CAAC;MAE7B,IAAIC,cAAc,EAAE;QAChBM,YAAK,CAACG,OAAO,CAACT,cAAc,CAAC;MACjC;MAEAE,SAAS,GAAGM,MAAM,CAAC;MACnB,OAAOA,MAAM;IACjB,CAAC,CAAC,OAAOE,GAAY,EAAE;MACnB,MAAMC,OAAO,GAAG,OAAOV,YAAY,KAAK,UAAU,GAC5CA,YAAY,CAACS,GAAG,CAAC,GACjBT,YAAY,KAAKS,GAAG,YAAYE,KAAK,GAAGF,GAAG,CAACC,OAAO,GAAG,IAAI,CAAC,IAAI,mBAAmB;MAExFL,YAAK,CAACX,KAAK,CAACgB,OAAO,CAAC;MACpBf,QAAQ,CAACc,GAAG,YAAYE,KAAK,GAAGF,GAAG,GAAG,IAAIE,KAAK,CAACD,OAAO,CAAC,CAAC;MACzDR,OAAO,GAAGO,GAAG,CAAC;MACd,OAAOG,SAAS;IACpB,CAAC,SAAS;MACNpB,YAAY,CAAC,KAAK,CAAC;IACvB;EACJ,CAAC,EAAE,CAACF,OAAO,CAAC,CAAC;EAEb,MAAMuB,UAAU,GAAG,IAAAhB,kBAAW,EAAC,MAAM;IACjCF,QAAQ,CAAC,IAAI,CAAC;EAClB,CAAC,EAAE,EAAE,CAAC;EAEN,OAAO;IAAEC,OAAO;IAAEL,SAAS;IAAEG,KAAK;IAAEmB;EAAW,CAAC;AACpD;;AAEA;AACA;AACA;AACA;AACO,eAAeC,gBAAgBA,CAClChB,MAAwB,EACxBR,OAIC,EACqB;EACtB,MAAM;IAAES,cAAc;IAAEC,YAAY;IAAEI;EAAe,CAAC,GAAGd,OAAO,IAAI,CAAC,CAAC;EAEtE,IAAIc,cAAc,EAAE;IAChBC,YAAK,CAACC,IAAI,CAACF,cAAc,CAAC;EAC9B;EAEA,IAAI;IACA,MAAMG,MAAM,GAAG,MAAMT,MAAM,CAAC,CAAC;IAC7B,IAAIC,cAAc,EAAE;MAChBM,YAAK,CAACG,OAAO,CAACT,cAAc,CAAC;IACjC;IACA,OAAOQ,MAAM;EACjB,CAAC,CAAC,OAAOE,GAAY,EAAE;IACnBJ,YAAK,CAACX,KAAK,CAACM,YAAY,KAAKS,GAAG,YAAYE,KAAK,GAAGF,GAAG,CAACC,OAAO,GAAG,IAAI,CAAC,IAAI,mBAAmB,CAAC;IAC/F,OAAOE,SAAS;EACpB;AACJ;AAAC,IAAAG,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEc5B,cAAc","ignoreList":[]}
|
|
@@ -26,10 +26,8 @@ var _isWebBrowser = require("../utils/isWebBrowser.js");
|
|
|
26
26
|
* }
|
|
27
27
|
* ```
|
|
28
28
|
*
|
|
29
|
-
*
|
|
30
|
-
* - Web:
|
|
31
|
-
* origin stays signed out until the user presses "Continue with Oxy". There is
|
|
32
|
-
* no cross-origin silent SSO: the SDK never navigates the tab on its own.
|
|
29
|
+
* Cross-domain session (zero cookies):
|
|
30
|
+
* - Web: silent OAuth (`prompt=none`) on cold boot; hub-ticket sync to auth.oxy.so after sign-in
|
|
33
31
|
* - Native: shared Keychain / app-group identity (Commons)
|
|
34
32
|
* - Realtime sync: Socket.IO `session_state` on `device:<deviceId>` once authenticated
|
|
35
33
|
* - Manual sign-in: signIn() opens the in-app account dialog (web + native)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_OxyContext","_isWebBrowser","useAuth","user","isAuthenticated","isLoading","isTokenReady","hasAccessToken","canUsePrivateApi","isPrivateApiPending","isAuthResolved","error","signIn","oxySignIn","logout","logoutAll","refreshSessions","oxyServices","hasIdentity","getPublicKey","showBottomSheet","openAvatarPicker","openAccountDialog","useOxy","useCallback","publicKey","isWebBrowser","hasExisting","existingKey","Promise","undefined","signOut","signOutAll","refresh","isReady"],"sourceRoot":"../../../../src","sources":["ui/hooks/useAuth.ts"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"names":["_react","require","_OxyContext","_isWebBrowser","useAuth","user","isAuthenticated","isLoading","isTokenReady","hasAccessToken","canUsePrivateApi","isPrivateApiPending","isAuthResolved","error","signIn","oxySignIn","logout","logoutAll","refreshSessions","oxyServices","hasIdentity","getPublicKey","showBottomSheet","openAvatarPicker","openAccountDialog","useOxy","useCallback","publicKey","isWebBrowser","hasExisting","existingKey","Promise","undefined","signOut","signOutAll","refresh","isReady"],"sourceRoot":"../../../../src","sources":["ui/hooks/useAuth.ts"],"mappings":";;;;;;AA0BA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAEA,IAAAE,aAAA,GAAAF,OAAA;AA7BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAuFA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASG,OAAOA,CAAA,EAAkB;EACvC,MAAM;IACJC,IAAI;IACJC,eAAe;IACfC,SAAS;IACTC,YAAY;IACZC,cAAc;IACdC,gBAAgB;IAChBC,mBAAmB;IACnBC,cAAc;IACdC,KAAK;IACLC,MAAM,EAAEC,SAAS;IACjBC,MAAM;IACNC,SAAS;IACTC,eAAe;IACfC,WAAW;IACXC,WAAW;IACXC,YAAY;IACZC,eAAe;IACfC,gBAAgB;IAChBC;EACF,CAAC,GAAG,IAAAC,kBAAM,EAAC,CAAC;EAEZ,MAAMX,MAAM,GAAG,IAAAY,kBAAW,EAAC,MAAOC,SAAkB,IAAoB;IACtE;IACA;IACA,IAAIA,SAAS,EAAE;MACb,OAAOZ,SAAS,CAACY,SAAS,CAAC;IAC7B;IACA,IAAI,CAAC,IAAAC,0BAAY,EAAC,CAAC,EAAE;MACnB,MAAMC,WAAW,GAAG,MAAMT,WAAW,CAAC,CAAC;MACvC,IAAIS,WAAW,EAAE;QACf,MAAMC,WAAW,GAAG,MAAMT,YAAY,CAAC,CAAC;QACxC,IAAIS,WAAW,EAAE;UACf,OAAOf,SAAS,CAACe,WAAW,CAAC;QAC/B;MACF;IACF;;IAEA;IACA;IACA;IACA;IACA;IACAN,iBAAiB,CAAC,QAAQ,CAAC;IAC3B,OAAO,IAAIO,OAAO,CAAO,MAAMC,SAAS,CAAC;EAC3C,CAAC,EAAE,CAACjB,SAAS,EAAEK,WAAW,EAAEC,YAAY,EAAEG,iBAAiB,CAAC,CAAC;EAE7D,MAAMS,OAAO,GAAG,IAAAP,kBAAW,EAAC,YAA2B;IACrD,MAAMV,MAAM,CAAC,CAAC;EAChB,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EAEZ,MAAMkB,UAAU,GAAG,IAAAR,kBAAW,EAAC,YAA2B;IACxD,MAAMT,SAAS,CAAC,CAAC;EACnB,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EAEf,MAAMkB,OAAO,GAAG,IAAAT,kBAAW,EAAC,YAA2B;IACrD,MAAMR,eAAe,CAAC,CAAC;EACzB,CAAC,EAAE,CAACA,eAAe,CAAC,CAAC;EAErB,OAAO;IACL;IACAb,IAAI;IACJC,eAAe;IACfC,SAAS,EAAEA,SAAS,IAAI,CAACK,cAAc;IACvCwB,OAAO,EAAE5B,YAAY;IACrBC,cAAc;IACdC,gBAAgB;IAChBC,mBAAmB;IACnBC,cAAc;IACdC,KAAK;IAEL;IACAC,MAAM;IACNmB,OAAO;IACPC,UAAU;IACVC,OAAO;IAEP;IACAhB,WAAW;IACXG,eAAe;IACfC;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.useAvatarPicker = useAvatarPicker;
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _core = require("@oxyhq/core");
|
|
9
|
-
var
|
|
9
|
+
var _bloom = require("@oxyhq/bloom");
|
|
10
10
|
var _avatarUtils = require("../utils/avatarUtils.js");
|
|
11
11
|
var _surfaces = require("../navigation/surfaces.js");
|
|
12
12
|
/**
|
|
@@ -66,10 +66,10 @@ function useAvatarPicker({
|
|
|
66
66
|
await (0, _avatarUtils.updateProfileWithAvatar)({
|
|
67
67
|
avatar: newFileId
|
|
68
68
|
}, oxyServices, activeSessionId, queryClient);
|
|
69
|
-
|
|
69
|
+
_bloom.toast.success((0, _core.translate)(currentLanguage ?? undefined, 'editProfile.toasts.avatarUpdated') || 'Avatar updated');
|
|
70
70
|
} catch (e) {
|
|
71
71
|
const message = e instanceof Error ? e.message : undefined;
|
|
72
|
-
|
|
72
|
+
_bloom.toast.error(message || (0, _core.translate)(currentLanguage ?? undefined, 'editProfile.toasts.updateAvatarFailed') || 'Failed to update avatar');
|
|
73
73
|
}
|
|
74
74
|
}, [activeSessionId, currentLanguage, oxyServices, queryClient]);
|
|
75
75
|
|
|
@@ -79,10 +79,10 @@ function useAvatarPicker({
|
|
|
79
79
|
await (0, _avatarUtils.updateProfileWithAvatar)({
|
|
80
80
|
avatar: ''
|
|
81
81
|
}, oxyServices, activeSessionId, queryClient);
|
|
82
|
-
|
|
82
|
+
_bloom.toast.success((0, _core.translate)(currentLanguage ?? undefined, 'editProfile.toasts.avatarRemoved'));
|
|
83
83
|
} catch (e) {
|
|
84
84
|
const message = e instanceof Error ? e.message : undefined;
|
|
85
|
-
|
|
85
|
+
_bloom.toast.error(message || (0, _core.translate)(currentLanguage ?? undefined, 'editProfile.toasts.updateAvatarFailed'));
|
|
86
86
|
}
|
|
87
87
|
}, [activeSessionId, currentLanguage, oxyServices, queryClient]);
|
|
88
88
|
const openAvatarPicker = (0, _react.useCallback)(async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_core","
|
|
1
|
+
{"version":3,"names":["_react","require","_core","_bloom","_avatarUtils","_surfaces","extractUploadedFileId","result","undefined","id","file","first","files","useAvatarPicker","oxyServices","currentLanguage","activeSessionId","queryClient","finalizeCroppedAvatar","useCallback","cropped","uploadResult","assetUpload","uri","type","mime","name","Date","now","newFileId","Error","updateAvatarVisibility","updateProfileWithAvatar","avatar","toast","success","translate","e","message","error","removeAvatar","openAvatarPicker","openWithinOrPresent"],"sourceRoot":"../../../../src","sources":["ui/hooks/useAvatarPicker.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -10,9 +10,8 @@ var _reactQuery = require("@tanstack/react-query");
|
|
|
10
10
|
* useOnlineStatus
|
|
11
11
|
*
|
|
12
12
|
* Reactive boolean reflecting TanStack Query's `onlineManager` state.
|
|
13
|
-
* Mirrors browser `online`/`offline` events on web and NetInfo
|
|
14
|
-
*
|
|
15
|
-
* `ConnectionStatusToasts` semantics).
|
|
13
|
+
* Mirrors browser `online`/`offline` events on web and NetInfo updates on
|
|
14
|
+
* native (both wired up in `OxyProvider`).
|
|
16
15
|
*
|
|
17
16
|
* Use this for surfacing offline UI — an OfflineBanner, a disabled "Sync"
|
|
18
17
|
* button, an inline "queued" badge on pending writes, etc. For pending /
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactQuery","getOnlineSnapshot","onlineManager","isOnline","subscribeOnline","notify","subscribe","getServerSnapshot","useOnlineStatus","useSyncExternalStore"],"sourceRoot":"../../../../src","sources":["ui/hooks/useOnlineStatus.ts"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"names":["_react","require","_reactQuery","getOnlineSnapshot","onlineManager","isOnline","subscribeOnline","notify","subscribe","getServerSnapshot","useOnlineStatus","useSyncExternalStore"],"sourceRoot":"../../../../src","sources":["ui/hooks/useOnlineStatus.ts"],"mappings":";;;;;;AAYA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAKA,MAAME,iBAAiB,GAAGA,CAAA,KAAeC,yBAAa,CAACC,QAAQ,CAAC,CAAC;AAEjE,MAAMC,eAAe,GAAIC,MAAkB,IAAmB;EAC5D,OAAOH,yBAAa,CAACI,SAAS,CAAC,MAAM;IACnCD,MAAM,CAAC,CAAC;EACV,CAAC,CAAC;AACJ,CAAC;;AAED;AACA,MAAME,iBAAiB,GAAGA,CAAA,KAAe,IAAI;AAEtC,SAASC,eAAeA,CAAA,EAAY;EACzC,OAAO,IAAAC,2BAAoB,EAACL,eAAe,EAAEH,iBAAiB,EAAEM,iBAAiB,CAAC;AACpF","ignoreList":[]}
|
|
@@ -11,6 +11,7 @@ var _storageHelpers = require("../utils/storageHelpers.js");
|
|
|
11
11
|
var _errorHandlers = require("../utils/errorHandlers.js");
|
|
12
12
|
var _queryClient = require("./queryClient.js");
|
|
13
13
|
var _isWebBrowser = require("../utils/isWebBrowser.js");
|
|
14
|
+
var _crossOriginRestore = require("../utils/crossOriginRestore.js");
|
|
14
15
|
var _resetSessionScopedStores = require("../stores/resetSessionScopedStores.js");
|
|
15
16
|
const DEFAULT_SAVE_ERROR_MESSAGE = 'Failed to save session data';
|
|
16
17
|
const CLEAR_STORAGE_ERROR = 'Failed to clear storage';
|
|
@@ -144,6 +145,7 @@ const useSessionManagement = ({
|
|
|
144
145
|
}
|
|
145
146
|
}
|
|
146
147
|
await clearSessionStorage();
|
|
148
|
+
(0, _crossOriginRestore.clearCrossOriginRestoreGuards)();
|
|
147
149
|
onAuthStateChange?.(null);
|
|
148
150
|
}, [clearSessionStorage, logoutStore, onAuthStateChange, oxyServices, queryClient, storage, logger]);
|
|
149
151
|
const activateSession = (0, _react.useCallback)(async (sessionId, user) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_core","_sessionHelpers","_storageHelpers","_errorHandlers","_queryClient","_isWebBrowser","_resetSessionScopedStores","DEFAULT_SAVE_ERROR_MESSAGE","CLEAR_STORAGE_ERROR","useSessionManagement","oxyServices","storage","storageKeyPrefix","loginSuccess","logoutStore","onAuthStateChange","onError","setAuthError","logger","setTokenReady","queryClient","sessions","setSessions","useState","activeSessionId","setActiveSessionId","sessionsRef","useRef","current","activeSessionIdRef","refreshInFlightRef","removedSessionsRef","Set","lastRefreshRef","storageKeys","useMemo","getStorageKeys","saveSessionIds","useCallback","sessionIds","uniqueIds","Array","from","setItem","JSON","stringify","error","isDev","console","warn","updateSessions","incoming","options","prevSessions","processed","merge","mergeSessions","normalizeAndSortSessions","map","session","sessionId","preserveSessionIds","sessionsArraysEqual","saveActiveSessionId","handleAuthError","defaultMessage","code","removeActiveSessionId","removeItem","clearSessionStorage","clearSessionState","resetSessionScopedStores","clearTokens","clear","clearQueryCache","activateSession","user","removalTimerIdsRef","trackRemovedSession","add","timerId","setTimeout","delete","useEffect","forEach","clearTimeout","switchSession","isWebBrowser","getAccessToken","Error","validation","validateSession","useHeaderValidation","valid","deviceSessions","fetchSessionsWithFallback","fallbackUserId","id","invalidSession","isInvalidSessionError","filter","refreshSessions","activeUserId","now","Date","refreshPromise","isRefreshInFlight","Boolean","exports"],"sourceRoot":"../../../../src","sources":["ui/hooks/useSessionManagement.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAGA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AAGA,IAAAK,YAAA,GAAAL,OAAA;AACA,IAAAM,aAAA,GAAAN,OAAA;AACA,IAAAO,
|
|
1
|
+
{"version":3,"names":["_react","require","_core","_sessionHelpers","_storageHelpers","_errorHandlers","_queryClient","_isWebBrowser","_crossOriginRestore","_resetSessionScopedStores","DEFAULT_SAVE_ERROR_MESSAGE","CLEAR_STORAGE_ERROR","useSessionManagement","oxyServices","storage","storageKeyPrefix","loginSuccess","logoutStore","onAuthStateChange","onError","setAuthError","logger","setTokenReady","queryClient","sessions","setSessions","useState","activeSessionId","setActiveSessionId","sessionsRef","useRef","current","activeSessionIdRef","refreshInFlightRef","removedSessionsRef","Set","lastRefreshRef","storageKeys","useMemo","getStorageKeys","saveSessionIds","useCallback","sessionIds","uniqueIds","Array","from","setItem","JSON","stringify","error","isDev","console","warn","updateSessions","incoming","options","prevSessions","processed","merge","mergeSessions","normalizeAndSortSessions","map","session","sessionId","preserveSessionIds","sessionsArraysEqual","saveActiveSessionId","handleAuthError","defaultMessage","code","removeActiveSessionId","removeItem","clearSessionStorage","clearSessionState","resetSessionScopedStores","clearTokens","clear","clearQueryCache","clearCrossOriginRestoreGuards","activateSession","user","removalTimerIdsRef","trackRemovedSession","add","timerId","setTimeout","delete","useEffect","forEach","clearTimeout","switchSession","isWebBrowser","getAccessToken","Error","validation","validateSession","useHeaderValidation","valid","deviceSessions","fetchSessionsWithFallback","fallbackUserId","id","invalidSession","isInvalidSessionError","filter","refreshSessions","activeUserId","now","Date","refreshPromise","isRefreshInFlight","Boolean","exports"],"sourceRoot":"../../../../src","sources":["ui/hooks/useSessionManagement.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,7 +7,7 @@ exports.default = void 0;
|
|
|
7
7
|
exports.useSettingToggle = useSettingToggle;
|
|
8
8
|
exports.useSettingToggles = useSettingToggles;
|
|
9
9
|
var _react = require("react");
|
|
10
|
-
var
|
|
10
|
+
var _bloom = require("@oxyhq/bloom");
|
|
11
11
|
/**
|
|
12
12
|
* Hook for handling boolean toggle settings with optimistic updates.
|
|
13
13
|
* Automatically reverts to the previous value if the save fails.
|
|
@@ -47,14 +47,14 @@ function useSettingToggle(options) {
|
|
|
47
47
|
try {
|
|
48
48
|
await onSave(newValue);
|
|
49
49
|
if (showSuccessToast && successMessage) {
|
|
50
|
-
|
|
50
|
+
_bloom.toast.success(successMessage);
|
|
51
51
|
}
|
|
52
52
|
} catch (err) {
|
|
53
53
|
// Revert on error
|
|
54
54
|
if (revertOnError) {
|
|
55
55
|
setValue(previousValue);
|
|
56
56
|
}
|
|
57
|
-
|
|
57
|
+
_bloom.toast.error(errorMessage || (err instanceof Error ? err.message : null) || 'An error occurred');
|
|
58
58
|
} finally {
|
|
59
59
|
setIsSaving(false);
|
|
60
60
|
}
|
|
@@ -106,7 +106,7 @@ function useSettingToggles(options) {
|
|
|
106
106
|
}));
|
|
107
107
|
}
|
|
108
108
|
const message = typeof errorMessage === 'function' ? errorMessage(key) : errorMessage;
|
|
109
|
-
|
|
109
|
+
_bloom.toast.error(message || (err instanceof Error ? err.message : null) || 'An error occurred');
|
|
110
110
|
} finally {
|
|
111
111
|
setSavingKeys(prev => {
|
|
112
112
|
const next = new Set(prev);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","
|
|
1
|
+
{"version":3,"names":["_react","require","_bloom","useSettingToggle","options","initialValue","onSave","successMessage","errorMessage","revertOnError","showSuccessToast","value","setValue","useState","isSaving","setIsSaving","useEffect","toggle","useCallback","previousValue","newValue","toast","success","err","error","Error","message","useSettingToggles","initialValues","values","setValues","savingKeys","setSavingKeys","Set","key","prev","add","next","delete","setValuesExternal","newValues","_default","exports","default"],"sourceRoot":"../../../../src","sources":["ui/hooks/useSettingToggle.ts"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AA4BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,gBAAgBA,CAACC,OAAgC,EAA0B;EACvF,MAAM;IACFC,YAAY;IACZC,MAAM;IACNC,cAAc;IACdC,YAAY,GAAG,wBAAwB;IACvCC,aAAa,GAAG,IAAI;IACpBC,gBAAgB,GAAG;EACvB,CAAC,GAAGN,OAAO;EAEX,MAAM,CAACO,KAAK,EAAEC,QAAQ,CAAC,GAAG,IAAAC,eAAQ,EAACR,YAAY,CAAC;EAChD,MAAM,CAACS,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAF,eAAQ,EAAC,KAAK,CAAC;;EAE/C;EACA,IAAAG,gBAAS,EAAC,MAAM;IACZJ,QAAQ,CAACP,YAAY,CAAC;EAC1B,CAAC,EAAE,CAACA,YAAY,CAAC,CAAC;EAElB,MAAMY,MAAM,GAAG,IAAAC,kBAAW,EAAC,YAAY;IACnC,MAAMC,aAAa,GAAGR,KAAK;IAC3B,MAAMS,QAAQ,GAAG,CAACT,KAAK;;IAEvB;IACAC,QAAQ,CAACQ,QAAQ,CAAC;IAClBL,WAAW,CAAC,IAAI,CAAC;IAEjB,IAAI;MACA,MAAMT,MAAM,CAACc,QAAQ,CAAC;MAEtB,IAAIV,gBAAgB,IAAIH,cAAc,EAAE;QACpCc,YAAK,CAACC,OAAO,CAACf,cAAc,CAAC;MACjC;IACJ,CAAC,CAAC,OAAOgB,GAAY,EAAE;MACnB;MACA,IAAId,aAAa,EAAE;QACfG,QAAQ,CAACO,aAAa,CAAC;MAC3B;MAEAE,YAAK,CAACG,KAAK,CAAChB,YAAY,KAAKe,GAAG,YAAYE,KAAK,GAAGF,GAAG,CAACG,OAAO,GAAG,IAAI,CAAC,IAAI,mBAAmB,CAAC;IACnG,CAAC,SAAS;MACNX,WAAW,CAAC,KAAK,CAAC;IACtB;EACJ,CAAC,EAAE,CAACJ,KAAK,EAAEL,MAAM,EAAEC,cAAc,EAAEC,YAAY,EAAEC,aAAa,EAAEC,gBAAgB,CAAC,CAAC;EAElF,OAAO;IAAEC,KAAK;IAAEG,QAAQ;IAAEG,MAAM;IAAEL;EAAS,CAAC;AAChD;;AAEA;AACA;AACA;AACA;AACO,SAASe,iBAAiBA,CAAwCvB,OAKxE,EAKC;EACE,MAAM;IAAEwB,aAAa;IAAEtB,MAAM;IAAEE,YAAY,GAAG,wBAAwB;IAAEC,aAAa,GAAG;EAAK,CAAC,GAAGL,OAAO;EAExG,MAAM,CAACyB,MAAM,EAAEC,SAAS,CAAC,GAAG,IAAAjB,eAAQ,EAAIe,aAAa,CAAC;EACtD,MAAM,CAACG,UAAU,EAAEC,aAAa,CAAC,GAAG,IAAAnB,eAAQ,EAAe,IAAIoB,GAAG,CAAC,CAAC,CAAC;;EAErE;EACA,IAAAjB,gBAAS,EAAC,MAAM;IACZc,SAAS,CAACF,aAAa,CAAC;EAC5B,CAAC,EAAE,CAACA,aAAa,CAAC,CAAC;EAEnB,MAAMX,MAAM,GAAG,IAAAC,kBAAW,EAAC,MAAOgB,GAAY,IAAK;IAC/C,MAAMf,aAAa,GAAGU,MAAM,CAACK,GAAG,CAAC;IACjC,MAAMd,QAAQ,GAAG,CAACD,aAAa;;IAE/B;IACAW,SAAS,CAACK,IAAI,KAAK;MAAE,GAAGA,IAAI;MAAE,CAACD,GAAG,GAAGd;IAAS,CAAC,CAAC,CAAC;IACjDY,aAAa,CAACG,IAAI,IAAI,IAAIF,GAAG,CAACE,IAAI,CAAC,CAACC,GAAG,CAACF,GAAG,CAAC,CAAC;IAE7C,IAAI;MACA,MAAM5B,MAAM,CAAC4B,GAAG,EAAEd,QAAQ,CAAC;IAC/B,CAAC,CAAC,OAAOG,GAAY,EAAE;MACnB;MACA,IAAId,aAAa,EAAE;QACfqB,SAAS,CAACK,IAAI,KAAK;UAAE,GAAGA,IAAI;UAAE,CAACD,GAAG,GAAGf;QAAc,CAAC,CAAC,CAAC;MAC1D;MAEA,MAAMO,OAAO,GAAG,OAAOlB,YAAY,KAAK,UAAU,GAC5CA,YAAY,CAAC0B,GAAG,CAAC,GACjB1B,YAAY;MAClBa,YAAK,CAACG,KAAK,CAACE,OAAO,KAAKH,GAAG,YAAYE,KAAK,GAAGF,GAAG,CAACG,OAAO,GAAG,IAAI,CAAC,IAAI,mBAAmB,CAAC;IAC9F,CAAC,SAAS;MACNM,aAAa,CAACG,IAAI,IAAI;QAClB,MAAME,IAAI,GAAG,IAAIJ,GAAG,CAACE,IAAI,CAAC;QAC1BE,IAAI,CAACC,MAAM,CAACJ,GAAG,CAAC;QAChB,OAAOG,IAAI;MACf,CAAC,CAAC;IACN;EACJ,CAAC,EAAE,CAACR,MAAM,EAAEvB,MAAM,EAAEE,YAAY,EAAEC,aAAa,CAAC,CAAC;EAEjD,MAAM8B,iBAAiB,GAAG,IAAArB,kBAAW,EAAEsB,SAAqB,IAAK;IAC7DV,SAAS,CAACK,IAAI,KAAK;MAAE,GAAGA,IAAI;MAAE,GAAGK;IAAU,CAAC,CAAC,CAAC;EAClD,CAAC,EAAE,EAAE,CAAC;EAEN,OAAO;IAAEX,MAAM;IAAEE,UAAU;IAAEd,MAAM;IAAEa,SAAS,EAAES;EAAkB,CAAC;AACvE;AAAC,IAAAE,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEcxC,gBAAgB","ignoreList":[]}
|
|
@@ -15,13 +15,8 @@ var _react = require("react");
|
|
|
15
15
|
* design-system fields Bloom's nav header supports: the single trailing
|
|
16
16
|
* `primaryAction` CTA (Upload / Save), a trailing icon `actions` row, a header
|
|
17
17
|
* `search` / `segments` in the large-title zone, an `onImage` `tone` over media,
|
|
18
|
-
* and a wizard `progress` bar.
|
|
19
|
-
*
|
|
20
|
-
* Only the NODE fields (`left`/`right`/`titleContent`, and an action's `icon`)
|
|
21
|
-
* must be referentially stable — a node can only be compared by identity, so an
|
|
22
|
-
* inline one thrashes the header. The rich OBJECT fields are compared by value
|
|
23
|
-
* (see {@link surfaceHeaderContentEqual}), so an inline `primaryAction` /
|
|
24
|
-
* `actions` / `search` / `segments` / `progress` is safe to pass.
|
|
18
|
+
* and a wizard `progress` bar. Object/slot fields MUST be referentially stable
|
|
19
|
+
* (memoize them with `useMemo`) so the header does not thrash.
|
|
25
20
|
*/
|
|
26
21
|
|
|
27
22
|
/**
|
|
@@ -31,74 +26,22 @@ var _react = require("react");
|
|
|
31
26
|
* a headerless surface), so {@link useSurfaceHeader} is a safe no-op there.
|
|
32
27
|
*/
|
|
33
28
|
const SurfaceHeaderContext = exports.SurfaceHeaderContext = /*#__PURE__*/(0, _react.createContext)(null);
|
|
34
|
-
function primaryActionEqual(a, b) {
|
|
35
|
-
if (a === b) return true;
|
|
36
|
-
if (!a || !b) return false;
|
|
37
|
-
// `onPress` is a fresh closure each render — its identity never changes what
|
|
38
|
-
// the button renders, so compare only the render-affecting scalars.
|
|
39
|
-
return a.label === b.label && !!a.disabled === !!b.disabled && !!a.loading === !!b.loading;
|
|
40
|
-
}
|
|
41
|
-
function actionsEqual(a, b) {
|
|
42
|
-
if (a === b) return true;
|
|
43
|
-
if (!a || !b || a.length !== b.length) return false;
|
|
44
|
-
for (let i = 0; i < a.length; i += 1) {
|
|
45
|
-
const x = a[i];
|
|
46
|
-
const y = b[i];
|
|
47
|
-
if (!x || !y) return false;
|
|
48
|
-
// `icon` is a node (identity); `onPress` is ignored, like `primaryAction`'s.
|
|
49
|
-
if (x.accessibilityLabel !== y.accessibilityLabel || !!x.disabled !== !!y.disabled || x.icon !== y.icon) {
|
|
50
|
-
return false;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
return true;
|
|
54
|
-
}
|
|
55
|
-
function searchEqual(a, b) {
|
|
56
|
-
if (a === b) return true;
|
|
57
|
-
if (!a || !b) return false;
|
|
58
|
-
return a.value === b.value && a.placeholder === b.placeholder;
|
|
59
|
-
}
|
|
60
|
-
function segmentsEqual(a, b) {
|
|
61
|
-
if (a === b) return true;
|
|
62
|
-
if (!a || !b || a.value !== b.value || a.items.length !== b.items.length) return false;
|
|
63
|
-
for (let i = 0; i < a.items.length; i += 1) {
|
|
64
|
-
const x = a.items[i];
|
|
65
|
-
const y = b.items[i];
|
|
66
|
-
if (!x || !y || x.key !== y.key || x.label !== y.label) return false;
|
|
67
|
-
}
|
|
68
|
-
return true;
|
|
69
|
-
}
|
|
70
|
-
function progressEqual(a, b) {
|
|
71
|
-
if (a === b) return true;
|
|
72
|
-
if (!a || !b) return false;
|
|
73
|
-
return a.step === b.step && a.total === b.total;
|
|
74
|
-
}
|
|
75
29
|
|
|
76
30
|
/**
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
* This MIRRORS Bloom's own `configsEqual` (`@oxyhq/bloom/dialog`), which guards
|
|
80
|
-
* the header store one layer down — deliberately field for field. The two must
|
|
81
|
-
* not diverge: this comparator is the gate that decides whether the host's
|
|
82
|
-
* `setContent` fires, so a comparator STRICTER than Bloom's re-introduces the
|
|
83
|
-
* update loop Bloom's own guard was written to prevent.
|
|
84
|
-
*
|
|
85
|
-
* Scalars (`title`/`subtitle`/`largeTitle`/`tone`) compare by value. The rich
|
|
86
|
-
* object fields (`primaryAction`/`actions`/`search`/`segments`/`progress`)
|
|
87
|
-
* compare by their render-affecting scalars, so a screen may build them inline:
|
|
88
|
-
* a fresh object with unchanged contents is NOT a change. Only the node fields
|
|
89
|
-
* (`titleContent`/`left`/`right`, and an action's `icon`) compare by identity —
|
|
90
|
-
* there is nothing else to compare a `ReactNode` by — so those, and only those,
|
|
91
|
-
* carry the memoize-me contract.
|
|
31
|
+
* Shallow value-equality for a surface's header contribution.
|
|
92
32
|
*
|
|
93
|
-
*
|
|
94
|
-
*
|
|
95
|
-
*
|
|
96
|
-
*
|
|
33
|
+
* Scalars (`title`/`subtitle`/`largeTitle`/`tone`) compare by value; the object
|
|
34
|
+
* and node fields (`titleContent`/`left`/`right`/`primaryAction`/`actions`/
|
|
35
|
+
* `search`/`segments`/`progress`) compare by identity — callers memoize them, per
|
|
36
|
+
* this hook's contract. Function-typed affordances compare by PRESENCE, never
|
|
37
|
+
* identity: `onBack` legitimately gets a fresh closure each render, and its
|
|
38
|
+
* identity never changes what the header renders, so it must not count as a
|
|
39
|
+
* change (that is exactly what would drive the update loop).
|
|
97
40
|
*/
|
|
98
41
|
function surfaceHeaderContentEqual(a, b) {
|
|
99
42
|
if (a === b) return true;
|
|
100
43
|
if (!a || !b) return false;
|
|
101
|
-
return a.title === b.title && a.titleContent === b.titleContent && a.subtitle === b.subtitle && a.largeTitle === b.largeTitle && a.left === b.left && a.right === b.right && !!a.onBack === !!b.onBack && a.
|
|
44
|
+
return a.title === b.title && a.titleContent === b.titleContent && a.subtitle === b.subtitle && a.largeTitle === b.largeTitle && a.left === b.left && a.right === b.right && !!a.onBack === !!b.onBack && a.primaryAction === b.primaryAction && a.actions === b.actions && a.search === b.search && a.segments === b.segments && a.tone === b.tone && a.progress === b.progress;
|
|
102
45
|
}
|
|
103
46
|
|
|
104
47
|
/**
|