Skip to content

Commit a84f90a

Browse files
Fix toggling performance filters on and off again does not restore sectioned "all models" view (#2189)
* fix default filters logic Signed-off-by: Philip Colares Carneiro <philip.colares@gmail.com> * add changes requested to isolate mathod Signed-off-by: Philip Colares Carneiro <philip.colares@gmail.com> --------- Signed-off-by: Philip Colares Carneiro <philip.colares@gmail.com>
1 parent 4013566 commit a84f90a

File tree

3 files changed

+21
-5
lines changed

3 files changed

+21
-5
lines changed
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import React from 'react';
2+
import { ModelCatalogContext } from '~/app/context/modelCatalog/ModelCatalogContext';
3+
import { hasFiltersApplied } from '~/app/pages/modelCatalog/utils/modelCatalogUtils';
4+
import { BASIC_FILTER_KEYS } from '~/concepts/modelCatalog/const';
5+
6+
export const useHasVisibleFiltersApplied = (): boolean => {
7+
const { filterData, performanceViewEnabled } = React.useContext(ModelCatalogContext);
8+
9+
return React.useMemo(
10+
() =>
11+
performanceViewEnabled
12+
? hasFiltersApplied(filterData)
13+
: hasFiltersApplied(filterData, BASIC_FILTER_KEYS),
14+
[filterData, performanceViewEnabled],
15+
);
16+
};

clients/ui/frontend/src/app/pages/modelCatalog/screens/ModelCatalog.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,16 @@ import { ApplicationsPage, ProjectObjectType, TitleWithIcon } from 'mod-arch-sha
44
import ScrollViewOnMount from '~/app/shared/components/ScrollViewOnMount';
55
import ModelCatalogFilters from '~/app/pages/modelCatalog/components/ModelCatalogFilters';
66
import { ModelCatalogContext } from '~/app/context/modelCatalog/ModelCatalogContext';
7-
import { hasFiltersApplied } from '~/app/pages/modelCatalog/utils/modelCatalogUtils';
87
import { CategoryName } from '~/app/modelCatalogTypes';
8+
import { useHasVisibleFiltersApplied } from '~/app/hooks/modelCatalog/useHasVisibleFiltersApplied';
99
import ModelCatalogSourceLabelSelectorNavigator from './ModelCatalogSourceLabelSelectorNavigator';
1010
import ModelCatalogAllModelsView from './ModelCatalogAllModelsView';
1111
import ModelCatalogGalleryView from './ModelCatalogGalleryView';
1212

1313
const ModelCatalog: React.FC = () => {
1414
const [searchTerm, setSearchTerm] = React.useState('');
15-
const { selectedSourceLabel, filterData, clearAllFilters } =
16-
React.useContext(ModelCatalogContext);
17-
const filtersApplied = hasFiltersApplied(filterData);
15+
const { selectedSourceLabel, clearAllFilters } = React.useContext(ModelCatalogContext);
16+
const filtersApplied = useHasVisibleFiltersApplied();
1817
const isAllModelsView =
1918
selectedSourceLabel === CategoryName.allModels && !searchTerm && !filtersApplied;
2019

clients/ui/frontend/src/app/pages/modelCatalog/screens/ModelCatalogGalleryView.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import { ChartBarIcon, SearchIcon } from '@patternfly/react-icons';
1313
import React from 'react';
1414
import { ModelCatalogContext } from '~/app/context/modelCatalog/ModelCatalogContext';
1515
import { useCatalogModelsBySources } from '~/app/hooks/modelCatalog/useCatalogModelsBySource';
16+
import { useHasVisibleFiltersApplied } from '~/app/hooks/modelCatalog/useHasVisibleFiltersApplied';
1617
import { CatalogModel, CategoryName, SourceLabel } from '~/app/modelCatalogTypes';
1718
import ModelCatalogCard from '~/app/pages/modelCatalog/components/ModelCatalogCard';
1819
import {
@@ -52,7 +53,7 @@ const ModelCatalogGalleryView: React.FC<ModelCatalogPageProps> = ({
5253
performanceViewEnabled,
5354
sortBy,
5455
} = React.useContext(ModelCatalogContext);
55-
const filtersApplied = hasFiltersApplied(filterData);
56+
const filtersApplied = useHasVisibleFiltersApplied();
5657

5758
// When performance view is disabled, exclude performance filters from API queries
5859
// Memoize to prevent infinite re-fetching

0 commit comments

Comments
 (0)