From 33fdb2c3962d71c5210299f0a4fdb5a7e2ace295 Mon Sep 17 00:00:00 2001 From: Prospector <6166773+Prospector@users.noreply.github.com> Date: Sun, 26 Jul 2026 12:53:24 -0700 Subject: [PATCH] change toggle filters to just use exclude-only filters, same design as the others. --- .../components/search/SearchFilterGroup.vue | 6 +- .../components/search/SearchFilterOption.vue | 28 ++- .../components/search/SearchSidebarFilter.vue | 174 ++++++++---------- packages/ui/src/utils/search.ts | 29 +-- packages/ui/src/utils/server-search.ts | 12 +- 5 files changed, 118 insertions(+), 131 deletions(-) diff --git a/packages/ui/src/components/search/SearchFilterGroup.vue b/packages/ui/src/components/search/SearchFilterGroup.vue index 071d0896c1..4a23f1742b 100644 --- a/packages/ui/src/components/search/SearchFilterGroup.vue +++ b/packages/ui/src/components/search/SearchFilterGroup.vue @@ -19,7 +19,7 @@ :option="option" :included="included(option)" :excluded="excluded(option)" - :supports-negative-filter="supportsNegativeFilter" + :supports="supports" @toggle="(o) => emit('toggle', o)" @toggle-exclude="(o) => emit('toggleExclude', o)" > @@ -44,13 +44,13 @@ import { DropdownIcon } from '@modrinth/assets' import { ref } from 'vue' -import type { FilterOption } from '../../utils/search' +import type { FilterMode, FilterOption } from '../../utils/search' import SearchFilterOption from './SearchFilterOption.vue' defineProps<{ groupName: string options: FilterOption[] - supportsNegativeFilter: boolean + supports: FilterMode[] included: (option: FilterOption) => boolean excluded: (option: FilterOption) => boolean }>() diff --git a/packages/ui/src/components/search/SearchFilterOption.vue b/packages/ui/src/components/search/SearchFilterOption.vue index f455a273d0..b05b50fc45 100644 --- a/packages/ui/src/components/search/SearchFilterOption.vue +++ b/packages/ui/src/components/search/SearchFilterOption.vue @@ -1,13 +1,13 @@