Skip to content

Commit a2d7df7

Browse files
leshniakclaude
andcommitted
fix: skip pending-delete feeds in useDefaultFundID resolution
Mirrors company card pattern where getSelectedFeed filters out pendingAction: DELETE feeds via getCompanyFeeds. Without this, deleting Workspace A still resolves its shared feed for Workspace B. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 2346bf6 commit a2d7df7

1 file changed

Lines changed: 6 additions & 2 deletions

File tree

src/hooks/useDefaultFundID.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,9 @@ function useDefaultFundID(policyID: string | undefined) {
2525

2626
const getDomainFundID = useCallback(
2727
(cardSettings: OnyxCollection<ExpensifyCardSettings>) => {
28-
const eligibleEntries = Object.entries(cardSettings ?? {}).filter(([key, settings]) => !!settings && !key.includes(workspaceAccountID.toString()));
28+
const eligibleEntries = Object.entries(cardSettings ?? {}).filter(
29+
([key, settings]) => !!settings && !key.includes(workspaceAccountID.toString()) && settings.pendingAction !== CONST.RED_BRICK_ROAD_PENDING_ACTION.DELETE,
30+
);
2931

3032
if (policyID) {
3133
const preferredMatch = eligibleEntries.find(([, settings]) => getPreferredPolicyFromExpensifyCardSettings(settings)?.toUpperCase() === policyID.toUpperCase());
@@ -52,7 +54,9 @@ function useDefaultFundID(policyID: string | undefined) {
5254
[getDomainFundID],
5355
);
5456

55-
if (lastSelectedExpensifyCardFeed && lastSelectedSettings?.paymentBankAccountID) {
57+
const isFeedPendingDelete = lastSelectedCardSettings?.pendingAction === CONST.RED_BRICK_ROAD_PENDING_ACTION.DELETE;
58+
59+
if (lastSelectedExpensifyCardFeed && lastSelectedSettings?.paymentBankAccountID && !isFeedPendingDelete) {
5660
return lastSelectedExpensifyCardFeed;
5761
}
5862

0 commit comments

Comments
 (0)