add loading spinners for some lazy loaded content

This commit is contained in:
jeffvli
2026-02-13 15:04:54 -08:00
parent 9950e51d45
commit 9e63ee2735
2 changed files with 15 additions and 13 deletions
@@ -4,6 +4,7 @@ import { useTranslation } from 'react-i18next';
import { LibraryContainer } from '/@/renderer/features/shared/components/library-container'; import { LibraryContainer } from '/@/renderer/features/shared/components/library-container';
import { useSettingsStore, useSettingsStoreActions } from '/@/renderer/store/settings.store'; import { useSettingsStore, useSettingsStoreActions } from '/@/renderer/store/settings.store';
import { Spinner } from '/@/shared/components/spinner/spinner';
import { Tabs } from '/@/shared/components/tabs/tabs'; import { Tabs } from '/@/shared/components/tabs/tabs';
const GeneralTab = lazy(() => const GeneralTab = lazy(() =>
@@ -71,29 +72,29 @@ export const SettingsContent = () => {
</Tabs.Tab> </Tabs.Tab>
</Tabs.List> </Tabs.List>
<Tabs.Panel value="general"> <Tabs.Panel value="general">
<Suspense fallback={null}> <Suspense fallback={<Spinner container />}>
<GeneralTab /> <GeneralTab />
</Suspense> </Suspense>
</Tabs.Panel> </Tabs.Panel>
<Tabs.Panel value="playback"> <Tabs.Panel value="playback">
<Suspense fallback={null}> <Suspense fallback={<Spinner container />}>
<PlaybackTab /> <PlaybackTab />
</Suspense> </Suspense>
</Tabs.Panel> </Tabs.Panel>
<Tabs.Panel value="hotkeys"> <Tabs.Panel value="hotkeys">
<Suspense fallback={null}> <Suspense fallback={<Spinner container />}>
<HotkeysTab /> <HotkeysTab />
</Suspense> </Suspense>
</Tabs.Panel> </Tabs.Panel>
{isElectron() && ( {isElectron() && (
<Tabs.Panel value="window"> <Tabs.Panel value="window">
<Suspense fallback={null}> <Suspense fallback={<Spinner container />}>
<WindowTab /> <WindowTab />
</Suspense> </Suspense>
</Tabs.Panel> </Tabs.Panel>
)} )}
<Tabs.Panel value="advanced"> <Tabs.Panel value="advanced">
<Suspense fallback={null}> <Suspense fallback={<Spinner container />}>
<AdvancedTab /> <AdvancedTab />
</Suspense> </Suspense>
</Tabs.Panel> </Tabs.Panel>
+9 -8
View File
@@ -8,6 +8,7 @@ import { AppOutlet } from '/@/renderer/router/app-outlet';
import { AppRoute } from '/@/renderer/router/routes'; import { AppRoute } from '/@/renderer/router/routes';
import { TitlebarOutlet } from '/@/renderer/router/titlebar-outlet'; import { TitlebarOutlet } from '/@/renderer/router/titlebar-outlet';
import { BaseContextModal, ModalsProvider } from '/@/shared/components/modal/modal'; import { BaseContextModal, ModalsProvider } from '/@/shared/components/modal/modal';
import { Spinner } from '/@/shared/components/spinner/spinner';
const NowPlayingRoute = lazy( const NowPlayingRoute = lazy(
() => import('/@/renderer/features/now-playing/routes/now-playing-route'), () => import('/@/renderer/features/now-playing/routes/now-playing-route'),
@@ -90,7 +91,7 @@ const LazyLyricsSettingsContextModal = lazy(() =>
); );
const LyricsSettingsContextModal = (props: any) => ( const LyricsSettingsContextModal = (props: any) => (
<Suspense fallback={<></>}> <Suspense fallback={<Spinner container />}>
<LazyLyricsSettingsContextModal {...props} /> <LazyLyricsSettingsContextModal {...props} />
</Suspense> </Suspense>
); );
@@ -102,7 +103,7 @@ const LazyShuffleAllContextModal = lazy(() =>
); );
const ShuffleAllContextModal = (props: any) => ( const ShuffleAllContextModal = (props: any) => (
<Suspense fallback={<></>}> <Suspense fallback={<Spinner container />}>
<LazyShuffleAllContextModal {...props} /> <LazyShuffleAllContextModal {...props} />
</Suspense> </Suspense>
); );
@@ -116,7 +117,7 @@ const LazyAddToPlaylistContextModal = lazy(() =>
); );
const AddToPlaylistContextModal = (props: any) => ( const AddToPlaylistContextModal = (props: any) => (
<Suspense fallback={<></>}> <Suspense fallback={<Spinner container />}>
<LazyAddToPlaylistContextModal {...props} /> <LazyAddToPlaylistContextModal {...props} />
</Suspense> </Suspense>
); );
@@ -130,7 +131,7 @@ const LazySaveAndReplaceContextModal = lazy(() =>
); );
const SaveAndReplaceContextModal = (props: any) => ( const SaveAndReplaceContextModal = (props: any) => (
<Suspense fallback={<></>}> <Suspense fallback={<Spinner container />}>
<LazySaveAndReplaceContextModal {...props} /> <LazySaveAndReplaceContextModal {...props} />
</Suspense> </Suspense>
); );
@@ -142,7 +143,7 @@ const LazyUpdatePlaylistContextModal = lazy(() =>
); );
const UpdatePlaylistContextModal = (props: any) => ( const UpdatePlaylistContextModal = (props: any) => (
<Suspense fallback={<></>}> <Suspense fallback={<Spinner container />}>
<LazyUpdatePlaylistContextModal {...props} /> <LazyUpdatePlaylistContextModal {...props} />
</Suspense> </Suspense>
); );
@@ -154,7 +155,7 @@ const LazySettingsContextModal = lazy(() =>
); );
const SettingsContextModal = (props: any) => ( const SettingsContextModal = (props: any) => (
<Suspense fallback={<></>}> <Suspense fallback={<Spinner container />}>
<LazySettingsContextModal {...props} /> <LazySettingsContextModal {...props} />
</Suspense> </Suspense>
); );
@@ -166,7 +167,7 @@ const LazyShareItemContextModal = lazy(() =>
); );
const ShareItemContextModal = (props: any) => ( const ShareItemContextModal = (props: any) => (
<Suspense fallback={<></>}> <Suspense fallback={<Spinner container />}>
<LazyShareItemContextModal {...props} /> <LazyShareItemContextModal {...props} />
</Suspense> </Suspense>
); );
@@ -180,7 +181,7 @@ const LazyVisualizerSettingsContextModal = lazy(() =>
); );
const VisualizerSettingsContextModal = (props: any) => ( const VisualizerSettingsContextModal = (props: any) => (
<Suspense fallback={<></>}> <Suspense fallback={<Spinner container />}>
<LazyVisualizerSettingsContextModal {...props} /> <LazyVisualizerSettingsContextModal {...props} />
</Suspense> </Suspense>
); );