diff --git a/src/modules/library/api/useFilteredMods.ts b/src/modules/library/api/useFilteredMods.ts index 2f28d10..d5fca8b 100644 --- a/src/modules/library/api/useFilteredMods.ts +++ b/src/modules/library/api/useFilteredMods.ts @@ -5,7 +5,8 @@ import { sortMods } from "@/modules/library/utils"; import { useLibraryFilterStore } from "@/stores"; export function useFilteredMods(mods: InstalledMod[], searchQuery: string): InstalledMod[] { - const { selectedTags, selectedChampions, selectedMaps, sort } = useLibraryFilterStore(); + const { selectedTags, selectedChampions, selectedMaps, showOnlyEnabled, sort } = + useLibraryFilterStore(); return useMemo(() => { let result = mods; @@ -17,6 +18,10 @@ export function useFilteredMods(mods: InstalledMod[], searchQuery: string): Inst ); } + if (showOnlyEnabled) { + result = result.filter((mod) => mod.enabled); + } + if (selectedTags.size > 0) { result = result.filter((mod) => mod.tags.some((t) => selectedTags.has(t))); } @@ -28,5 +33,5 @@ export function useFilteredMods(mods: InstalledMod[], searchQuery: string): Inst } return sortMods(result, sort); - }, [mods, searchQuery, selectedTags, selectedChampions, selectedMaps, sort]); + }, [mods, searchQuery, selectedTags, selectedChampions, selectedMaps, showOnlyEnabled, sort]); } diff --git a/src/modules/library/components/FilterPopover.tsx b/src/modules/library/components/FilterPopover.tsx index 7554af8..9643926 100644 --- a/src/modules/library/components/FilterPopover.tsx +++ b/src/modules/library/components/FilterPopover.tsx @@ -36,6 +36,8 @@ export function FilterPopover({ filterOptions }: FilterPopoverProps) { toggleChampion, toggleMap, clearFilters, + showOnlyEnabled, + setShowOnlyEnabled, } = useLibraryFilterStore(); const hasActive = useHasActiveFilters(); const [champSearch, setChampSearch] = useState(""); @@ -94,6 +96,17 @@ export function FilterPopover({ filterOptions }: FilterPopoverProps) {