From d74e95701f9ff7ebece4eefae6a508c2e775b27c Mon Sep 17 00:00:00 2001 From: sepeterson <10458078+sepeterson@users.noreply.github.com> Date: Fri, 17 Jul 2026 14:57:52 -0500 Subject: [PATCH] MOB-1557: fix consumers that type useCurrentUser as a live realm object --- .../MyObservations/Search/SearchMyObservationsTaxon.tsx | 4 ++-- .../MyObservations/Search/SearchedTaxonBanner.tsx | 6 +----- .../ActivityTab/DisagreementText.tsx | 8 +------- .../hooks/useObsDetailsSharedLogic.ts | 5 +++-- 4 files changed, 7 insertions(+), 16 deletions(-) diff --git a/src/components/MyObservations/Search/SearchMyObservationsTaxon.tsx b/src/components/MyObservations/Search/SearchMyObservationsTaxon.tsx index 9d9b446a8..32bcb2f47 100644 --- a/src/components/MyObservations/Search/SearchMyObservationsTaxon.tsx +++ b/src/components/MyObservations/Search/SearchMyObservationsTaxon.tsx @@ -11,7 +11,7 @@ import { useMyObservations, } from "providers/MyObservationsContext"; import React, { useCallback, useState } from "react"; -import type { RealmTaxon, RealmUser } from "realmModels/types"; +import type { RealmTaxon } from "realmModels/types"; import { taxonDisplayName } from "sharedHelpers/taxon"; import { useCurrentUser, useTranslation } from "sharedHooks"; import useTaxonSearch from "sharedHooks/useTaxonSearch"; @@ -21,7 +21,7 @@ const SearchMyObservationsTaxon = ( ) => { const navigation = useNavigation( ); const { state, dispatch } = useMyObservations( ); const { searchedTaxon } = state; - const currentUser = useCurrentUser( ) as RealmUser | null; + const currentUser = useCurrentUser( ); const [taxonQuery, setTaxonQuery] = useState( ( ) => ( searchedTaxon diff --git a/src/components/MyObservations/Search/SearchedTaxonBanner.tsx b/src/components/MyObservations/Search/SearchedTaxonBanner.tsx index 39097405b..569b9b2d1 100644 --- a/src/components/MyObservations/Search/SearchedTaxonBanner.tsx +++ b/src/components/MyObservations/Search/SearchedTaxonBanner.tsx @@ -8,7 +8,6 @@ import { useMyObservations, } from "providers/MyObservationsContext"; import React from "react"; -import type { RealmUser } from "realmModels/types"; import { taxonDisplayName } from "sharedHelpers/taxon"; import { useCurrentUser, useTranslation } from "sharedHooks"; @@ -17,10 +16,7 @@ const SearchedTaxonBanner = ( ) => { const { state, dispatch } = useMyObservations( ); const { searchedTaxon } = state; - // The Realm `User` class doesn't declare its schema fields as typed - // instance properties (see realmModels/User.ts), so cast to the typed - // RealmUser interface to access the user's name-display prefs. - const currentUser = useCurrentUser( ) as RealmUser | null; + const currentUser = useCurrentUser( ); if ( !searchedTaxon ) return null; diff --git a/src/components/ObsDetailsSharedComponents/ActivityTab/DisagreementText.tsx b/src/components/ObsDetailsSharedComponents/ActivityTab/DisagreementText.tsx index fb8fb3bca..83da0f3c5 100644 --- a/src/components/ObsDetailsSharedComponents/ActivityTab/DisagreementText.tsx +++ b/src/components/ObsDetailsSharedComponents/ActivityTab/DisagreementText.tsx @@ -16,14 +16,8 @@ interface Props { withdrawn?: boolean; } -// TODO replace when we've properly typed Realm object -interface User { - prefers_common_names?: boolean; - prefers_scientific_name_first?: boolean; -} - const DisagreementText = ( { taxon, username, withdrawn }: Props ) => { - const currentUser = useCurrentUser( ) as User; + const currentUser = useCurrentUser( ); const showTaxonName = useCallback( ( fontComponent: FC ) => ( void; setRemoteObsWasDeleted: ( deleted: boolean ) => void; fetchRemoteObservationError: { status?: number } | null; - currentUser: RealmUser | null; + currentUser: UserPojo | null; belongsToCurrentUser: boolean; isRefetching: boolean; refetchRemoteObservation: ( ) => void;