From 752c6e60f07294653be156b28c8b3e67cbbfc99e Mon Sep 17 00:00:00 2001 From: Dylan Jeffers Date: Wed, 6 May 2026 13:03:03 -0700 Subject: [PATCH] feat: show all search filters on the All tab (web + mobile) Previously the All tab had no filter buttons even though the underlying search-all query already accepts every filter. The Tracks/Albums/Playlists sub-tabs each exposed their relevant subset, so filtering was only available after switching tabs. The All tab now exposes the union of all sub-tab filters: genre, mood, key, bpm, isPremium, hasDownloads, isVerified. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../search-screen/SearchCategoriesAndFilters.tsx | 10 +++++++++- packages/web/src/pages/search-page/categories.ts | 12 +++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/packages/mobile/src/screens/search-screen/SearchCategoriesAndFilters.tsx b/packages/mobile/src/screens/search-screen/SearchCategoriesAndFilters.tsx index 7a24c2eb38a..57286da4ed2 100644 --- a/packages/mobile/src/screens/search-screen/SearchCategoriesAndFilters.tsx +++ b/packages/mobile/src/screens/search-screen/SearchCategoriesAndFilters.tsx @@ -63,7 +63,15 @@ const SearchCategory = (props: SearchCategoryProps) => { } const filtersByCategory: Record = { - all: [], + all: [ + 'genre', + 'mood', + 'key', + 'bpm', + 'isPremium', + 'hasDownloads', + 'isVerified' + ], users: ['genre', 'isVerified'], tracks: [ 'genre', diff --git a/packages/web/src/pages/search-page/categories.ts b/packages/web/src/pages/search-page/categories.ts index 293871c71dc..94012620b0a 100644 --- a/packages/web/src/pages/search-page/categories.ts +++ b/packages/web/src/pages/search-page/categories.ts @@ -3,7 +3,17 @@ import { IconAlbum, IconNote, IconPlaylists, IconUser } from '@audius/harmony' import { Category } from './types' export const categories = { - all: { filters: [] }, + all: { + filters: [ + 'genre', + 'mood', + 'key', + 'bpm', + 'isPremium', + 'hasDownloads', + 'isVerified' + ] + }, profiles: { icon: IconUser, filters: ['genre', 'isVerified'] }, tracks: { icon: IconNote,