Skip to content

Commit fcd9d1d

Browse files
committed
remove usePersonalDetailsByEmail from useDelegateAccountID
1 parent 7873aac commit fcd9d1d

1 file changed

Lines changed: 18 additions & 3 deletions

File tree

src/hooks/useDelegateAccountID.ts

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,28 @@
11
import {delegateEmailSelector} from '@selectors/Account';
2+
import type {OnyxEntry} from 'react-native-onyx';
23
import ONYXKEYS from '@src/ONYXKEYS';
4+
import type {PersonalDetailsList} from '@src/types/onyx';
35
import useOnyx from './useOnyx';
4-
import usePersonalDetailsByLogin from './usePersonalDetailsByLogin';
56

67
function useDelegateAccountID(): number | undefined {
78
const [delegateEmail] = useOnyx(ONYXKEYS.ACCOUNT, {selector: delegateEmailSelector});
8-
const personalDetailsByLogin = usePersonalDetailsByLogin();
9+
const lowerEmail = delegateEmail?.toLowerCase();
910

10-
return delegateEmail ? personalDetailsByLogin[delegateEmail.toLowerCase()]?.accountID : undefined;
11+
const [accountID] = useOnyx(ONYXKEYS.PERSONAL_DETAILS_LIST, {
12+
selector: (personalDetails: OnyxEntry<PersonalDetailsList>) => {
13+
if (!lowerEmail || !personalDetails) {
14+
return undefined;
15+
}
16+
for (const detail of Object.values(personalDetails)) {
17+
if (detail?.login?.toLowerCase() === lowerEmail) {
18+
return detail.accountID;
19+
}
20+
}
21+
return undefined;
22+
},
23+
});
24+
25+
return accountID;
1126
}
1227

1328
export default useDelegateAccountID;

0 commit comments

Comments
 (0)