From 61f975258f379432cb55d19dc4cdd8874096e584 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?nicole=20miko=C5=82ajczyk?= Date: Sun, 4 Jan 2026 18:38:22 +0100 Subject: [PATCH] pl-fe: fix duplicated filter display MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: nicole mikołajczyk --- packages/pl-fe/src/components/status.tsx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/pl-fe/src/components/status.tsx b/packages/pl-fe/src/components/status.tsx index b0eae023d..dfb708b60 100644 --- a/packages/pl-fe/src/components/status.tsx +++ b/packages/pl-fe/src/components/status.tsx @@ -95,7 +95,14 @@ const Status: React.FC = (props) => { const isReblog = status.reblog_id; const group = actualStatus.group; - const filterResults = useMemo(() => [...status.filtered, ...actualStatus.filtered].filter(({ filter }) => filter.filter_action === 'warn'), [status.filtered, actualStatus.filtered]); + const filterResults = useMemo(() => { + return [...status.filtered, ...actualStatus.filtered].filter(({ filter }) => filter.filter_action === 'warn').reduce((uniqueFilters, current) => { + if (!uniqueFilters.some(({ filter: uniqueFilter }) => uniqueFilter.id === current.filter.id)) { + uniqueFilters.push(current); + } + return uniqueFilters; + }, [] as typeof status.filtered); + }, [status.filtered, actualStatus.filtered]); const filtered = filterResults.length > 0; // Track height changes we know about to compensate scrolling. @@ -332,6 +339,7 @@ const Status: React.FC = (props) => { ); if (filtered && actualStatus.showFiltered !== true) { + console.log(filterResults); const body = (