();
+ const [selectedSidebarItem, setSelectedSidebarItem] = useState<
+ CatalogFilterType
+ >();
const orgName = configApi.getOptionalString('organization.name') ?? 'Company';
const addMockData = useCallback(async () => {
@@ -180,13 +186,15 @@ const CatalogPageContents = () => {
setSelectedSidebarItem(label)}
- initiallySelected="owned"
+ onChange={({ label, id }) =>
+ setSelectedSidebarItem({ label, id })
+ }
+ initiallySelected={selectedSidebarItem?.id ?? 'owned'}
/>
initialSelectedFilters?.slice(), []);
+ const initialMemo = useMemo(() => {
+ return initialSelectedFilters?.slice();
+ }, [initialSelectedFilters]);
// Register the group on mount, and unregister on unmount
useEffect(() => {
register(filterGroupId, filterGroup, initialMemo);
return () => unregister(filterGroupId);
- }, [register, unregister, filterGroupId, filterGroup, initialMemo]);
+ // eslint-disable-next-line react-hooks/exhaustive-deps
+ }, [register, unregister, filterGroupId, filterGroup]);
const setSelectedFilters = useCallback(
(filters: string[]) => {