From 2fcef981cd8cd074e684c819af65f000037ab541 Mon Sep 17 00:00:00 2001 From: npeter83 Date: Sun, 12 Jul 2026 01:55:10 +0200 Subject: [PATCH] feat(plex): collapse button in the expanded Plex filter sidebar MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The collapse feature was only half-present on the Plex page: App already passed the shared filterCollapsed state + toggle to PlexSidebar, and PlexSidebar rendered the CollapsedFilterRail when collapsed — but the EXPANDED PlexSidebar had no trigger, so you could only collapse it by first collapsing on the feed page. Add the same ChevronLeft 'Filters' collapse header the feed Sidebar has (reusing the existing sidebar.* i18n keys). E2E-verified: collapse→rail→expand round-trips on the Plex page. --- frontend/src/components/PlexSidebar.tsx | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/frontend/src/components/PlexSidebar.tsx b/frontend/src/components/PlexSidebar.tsx index 73583187..e797d624 100644 --- a/frontend/src/components/PlexSidebar.tsx +++ b/frontend/src/components/PlexSidebar.tsx @@ -1,7 +1,7 @@ import { useState, type ReactNode } from "react"; import { useTranslation } from "react-i18next"; import { useQuery, useQueryClient } from "@tanstack/react-query"; -import { Film, Layers, ListMusic, Plus, Tv2, X } from "lucide-react"; +import { ChevronLeft, Film, Layers, ListMusic, Plus, Tv2, X } from "lucide-react"; import CollapsedFilterRail from "./CollapsedFilterRail"; import { api, EMPTY_PLEX_FILTERS, plexFilterCount, type PlexFilters } from "../lib/api"; import { useDebounced } from "../lib/useDebounced"; @@ -121,6 +121,28 @@ export default function PlexSidebar({ return (