From 227da4543e490922b2929cf4e1c8c27e4ee901de Mon Sep 17 00:00:00 2001 From: nikec <43032218+niikeec@users.noreply.github.com> Date: Tue, 3 Oct 2023 21:56:50 +0200 Subject: [PATCH] [ENG-1179] Add hidden search filter to paths query (#1427) add hidden filter --- interface/app/$libraryId/location/$id.tsx | 26 ++++------------------- 1 file changed, 4 insertions(+), 22 deletions(-) diff --git a/interface/app/$libraryId/location/$id.tsx b/interface/app/$libraryId/location/$id.tsx index 8d7d0b194..62e514551 100644 --- a/interface/app/$libraryId/location/$id.tsx +++ b/interface/app/$libraryId/location/$id.tsx @@ -2,7 +2,6 @@ import { useCallback, useEffect, useMemo } from 'react'; import { useDebouncedCallback } from 'use-debounce'; import { stringify } from 'uuid'; import { - ExplorerItem, ExplorerSettings, FilePathFilterArgs, FilePathOrder, @@ -147,13 +146,11 @@ const useItems = ({ locationId, ...(explorerSettings.layoutMode === 'media' ? { object: { kind: [ObjectKindEnum.Image, ObjectKindEnum.Video] } } - : { path: path ?? '' }) + : { path: path ?? '' }), + ...(explorerSettings.showHiddenFiles ? {} : { hidden: false }) }; - const count = useLibraryQuery([ - 'search.pathsCount', - { filter: { ...filter, hidden: explorerSettings.showHiddenFiles ? undefined : false } } - ]); + const count = useLibraryQuery(['search.pathsCount', { filter }]); const query = usePathsInfiniteQuery({ arg: { filter, take }, @@ -161,22 +158,7 @@ const useItems = ({ settings }); - const items = useMemo(() => { - if (!query.data) return null; - - const ret: ExplorerItem[] = []; - - for (const page of query.data.pages) { - for (const item of page.items) { - if (item.type === 'Path' && !explorerSettings.showHiddenFiles && item.item.hidden) - continue; - - ret.push(item); - } - } - - return ret; - }, [query.data, explorerSettings.showHiddenFiles]); + const items = useMemo(() => query.data?.pages.flatMap((d) => d.items) || null, [query.data]); const loadMore = useCallback(() => { if (query.hasNextPage && !query.isFetchingNextPage) {