feat(ui): enforce loader when switching tabs

This commit is contained in:
psychedelicious
2025-07-04 16:46:32 +10:00
parent 69a56aafed
commit d94aa4abf7
30 changed files with 202 additions and 186 deletions

View File

@@ -2,9 +2,9 @@ import type { IconButtonProps } from '@invoke-ai/ui-library';
import { IconButton } from '@invoke-ai/ui-library';
import { useStore } from '@nanostores/react';
import { $onClickGoToModelManager } from 'app/store/nanostores/onClickGoToModelManager';
import { useAppDispatch, useAppSelector } from 'app/store/storeHooks';
import { useAppSelector } from 'app/store/storeHooks';
import { selectIsModelsTabDisabled } from 'features/system/store/configSlice';
import { setActiveTab } from 'features/ui/store/uiSlice';
import { navigationApi } from 'features/ui/layouts/navigation-api';
import { memo, useCallback } from 'react';
import { useTranslation } from 'react-i18next';
import { PiCubeBold } from 'react-icons/pi';
@@ -14,11 +14,10 @@ export const NavigateToModelManagerButton = memo((props: Omit<IconButtonProps, '
const onClickGoToModelManager = useStore($onClickGoToModelManager);
const { t } = useTranslation();
const dispatch = useAppDispatch();
const onClick = useCallback(() => {
dispatch(setActiveTab('models'));
}, [dispatch]);
navigationApi.switchToTab('models');
}, []);
if (isModelsTabDisabled && !onClickGoToModelManager) {
return null;