From d7faef1c13b65eb26a36b6af957495dd701e92db Mon Sep 17 00:00:00 2001 From: Jack Senyitko Date: Mon, 15 Dec 2025 09:04:42 -0500 Subject: [PATCH 01/50] add columns button --- assets/images/columns.svg | 14 +++++++ src/components/Icon/Expensicons.ts | 2 + .../Icon/chunks/expensify-icons.chunk.ts | 2 + .../SearchPageHeader/SearchFiltersBar.tsx | 41 +++++++++++++------ 4 files changed, 46 insertions(+), 13 deletions(-) create mode 100644 assets/images/columns.svg diff --git a/assets/images/columns.svg b/assets/images/columns.svg new file mode 100644 index 000000000000..13e1224da6db --- /dev/null +++ b/assets/images/columns.svg @@ -0,0 +1,14 @@ + + + + + + + + + + \ No newline at end of file diff --git a/src/components/Icon/Expensicons.ts b/src/components/Icon/Expensicons.ts index b66b17b32bdc..aec8abbfecec 100644 --- a/src/components/Icon/Expensicons.ts +++ b/src/components/Icon/Expensicons.ts @@ -47,6 +47,7 @@ import Close from '@assets/images/close.svg'; import ClosedSign from '@assets/images/closed-sign.svg'; import Coins from '@assets/images/coins.svg'; import Collapse from '@assets/images/collapse.svg'; +import Columns from '@assets/images/columns.svg'; import CommentBubbles from '@assets/images/comment-bubbles.svg'; import Concierge from '@assets/images/concierge.svg'; import Connect from '@assets/images/connect.svg'; @@ -216,6 +217,7 @@ export { ConciergeAvatar, Connect, ConnectionComplete, + Columns, Copy, CreditCard, CreditCardHourglass, diff --git a/src/components/Icon/chunks/expensify-icons.chunk.ts b/src/components/Icon/chunks/expensify-icons.chunk.ts index 68d8253c0977..10a0c7fada65 100644 --- a/src/components/Icon/chunks/expensify-icons.chunk.ts +++ b/src/components/Icon/chunks/expensify-icons.chunk.ts @@ -54,6 +54,7 @@ import Close from '@assets/images/close.svg'; import ClosedSign from '@assets/images/closed-sign.svg'; import Coins from '@assets/images/coins.svg'; import Collapse from '@assets/images/collapse.svg'; +import Columns from '@assets/images/columns.svg'; import CommentBubbles from '@assets/images/comment-bubbles.svg'; import Concierge from '@assets/images/concierge.svg'; import Connect from '@assets/images/connect.svg'; @@ -266,6 +267,7 @@ const Expensicons = { Clock, ClosedSign, Collapse, + Columns, CommentBubbles, Concierge, ConciergeAvatar, diff --git a/src/components/Search/SearchPageHeader/SearchFiltersBar.tsx b/src/components/Search/SearchPageHeader/SearchFiltersBar.tsx index e64e015a73ca..33fc6366ef4f 100644 --- a/src/components/Search/SearchPageHeader/SearchFiltersBar.tsx +++ b/src/components/Search/SearchPageHeader/SearchFiltersBar.tsx @@ -100,7 +100,7 @@ function SearchFiltersBar({ const {isOffline} = useNetwork(); const personalDetails = usePersonalDetails(); - const {shouldUseNarrowLayout} = useResponsiveLayout(); + const {shouldUseNarrowLayout, isLargeScreenWidth} = useResponsiveLayout(); const {selectedTransactions, selectAllMatchingItems, areAllMatchingItemsSelected, showSelectAllMatchingItems, shouldShowFiltersBarLoading} = useSearchContext(); const [email] = useOnyx(ONYXKEYS.SESSION, {canBeMissing: true, selector: emailSelector}); @@ -114,7 +114,7 @@ function SearchFiltersBar({ const [allFeeds] = useOnyx(ONYXKEYS.COLLECTION.SHARED_NVP_PRIVATE_DOMAIN_MEMBER, {canBeMissing: true}); const {isAccountLocked, showLockedAccountModal} = useContext(LockedAccountContext); const [searchResultsErrors] = useOnyx(`${ONYXKEYS.COLLECTION.SNAPSHOT}${hash}`, {canBeMissing: true, selector: searchResultsErrorSelector}); - const expensifyIcons = useMemoizedLazyExpensifyIcons(['Filter'] as const); + const expensifyIcons = useMemoizedLazyExpensifyIcons(['Filter', 'Columns'] as const); const {isDelegateAccessRestricted, showDelegateNoAccessModal} = useContext(DelegateNoAccessContext); const taxRates = getAllTaxRates(allPolicies); @@ -786,17 +786,32 @@ function SearchFiltersBar({ const renderListFooter = useCallback( () => ( -