From 5d733ac6d9efb45b656ff6179b5cf425cae5c252 Mon Sep 17 00:00:00 2001 From: FitseTLT Date: Tue, 28 Jan 2025 23:17:40 +0300 Subject: [PATCH 1/2] disable card filter for inactive cards --- src/libs/CardUtils.ts | 4 ++-- src/pages/Search/AdvancedSearchFilters.tsx | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/libs/CardUtils.ts b/src/libs/CardUtils.ts index 76ea522624fa..feb68c0143eb 100644 --- a/src/libs/CardUtils.ts +++ b/src/libs/CardUtils.ts @@ -98,11 +98,11 @@ function isCardHiddenFromSearch(card: Card) { return !card?.nameValuePairs?.isVirtual && CONST.EXPENSIFY_CARD.HIDDEN_FROM_SEARCH_STATES.includes(card.state ?? 0); } -function mergeCardListWithWorkspaceFeeds(workspaceFeeds: Record, cardList = allCards) { +function mergeCardListWithWorkspaceFeeds(workspaceFeeds: Record, cardList = allCards, shouldExcludeCardHiddenFromSearch = false) { const feedCards: CardList = {...cardList}; Object.values(workspaceFeeds ?? {}).forEach((currentCardFeed) => { Object.values(currentCardFeed ?? {}).forEach((card) => { - if (!isCard(card)) { + if (!isCard(card) || (shouldExcludeCardHiddenFromSearch && isCardHiddenFromSearch(card))) { return; } feedCards[card.cardID] = card; diff --git a/src/pages/Search/AdvancedSearchFilters.tsx b/src/pages/Search/AdvancedSearchFilters.tsx index 005c5c96837b..026f5ea756c4 100644 --- a/src/pages/Search/AdvancedSearchFilters.tsx +++ b/src/pages/Search/AdvancedSearchFilters.tsx @@ -376,7 +376,7 @@ function AdvancedSearchFilters() { const policyID = searchAdvancedFilters.policyID; const [userCardList = {}] = useOnyx(ONYXKEYS.CARD_LIST); const [workspaceCardFeeds = {}] = useOnyx(ONYXKEYS.COLLECTION.WORKSPACE_CARDS_LIST); - const allCards = useMemo(() => mergeCardListWithWorkspaceFeeds(workspaceCardFeeds, userCardList), [userCardList, workspaceCardFeeds]); + const allCards = useMemo(() => mergeCardListWithWorkspaceFeeds(workspaceCardFeeds, userCardList, true), [userCardList, workspaceCardFeeds]); const taxRates = getAllTaxRates(); const personalDetails = usePersonalDetails(); From 7317bc59f40ab7129f7a537c48d1ab65d581845e Mon Sep 17 00:00:00 2001 From: FitseTLT Date: Thu, 30 Jan 2025 16:12:16 +0300 Subject: [PATCH 2/2] apply the hidden card filter for card list --- src/libs/CardUtils.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/libs/CardUtils.ts b/src/libs/CardUtils.ts index 3f46c08557ce..622692b25578 100644 --- a/src/libs/CardUtils.ts +++ b/src/libs/CardUtils.ts @@ -99,7 +99,16 @@ function isCardHiddenFromSearch(card: Card) { } function mergeCardListWithWorkspaceFeeds(workspaceFeeds: Record, cardList = allCards, shouldExcludeCardHiddenFromSearch = false) { - const feedCards: CardList = {...cardList}; + const feedCards: CardList = {}; + Object.keys(cardList).forEach((cardKey) => { + const card = cardList[cardKey]; + if (shouldExcludeCardHiddenFromSearch && isCardHiddenFromSearch(card)) { + return; + } + + feedCards[cardKey] = card; + }); + Object.values(workspaceFeeds ?? {}).forEach((currentCardFeed) => { Object.values(currentCardFeed ?? {}).forEach((card) => { if (!isCard(card) || (shouldExcludeCardHiddenFromSearch && isCardHiddenFromSearch(card))) {