Refactor AIPage and EQPage components to use lazy loading with PageSuspense for improved performance; update vite.config.ts to adjust chunking strategy and increase chunk size warning limit for better handling of large libraries.
This commit is contained in:
+19
-4
@@ -1,15 +1,16 @@
|
||||
import { lazy } from "react";
|
||||
import { Toaster } from "@/components/ui/sonner";
|
||||
import { TooltipProvider } from "@/components/ui/tooltip";
|
||||
import { Route, Switch, Router } from "wouter";
|
||||
import { useHashLocation } from "wouter/use-hash-location";
|
||||
import ErrorBoundary from "./components/ErrorBoundary";
|
||||
import PageSuspense from "./components/PageSuspense";
|
||||
import { ThemeProvider } from "./contexts/ThemeContext";
|
||||
import { DeviceProvider } from "./contexts/DeviceContext";
|
||||
import Home from "./pages/Home";
|
||||
import NotFound from "./pages/NotFound";
|
||||
import Dashboard from "./pages/Dashboard";
|
||||
import AudioPage from "./pages/AudioPage";
|
||||
import EQPage from "./pages/EQPage";
|
||||
import EffectsPage from "./pages/EffectsPage";
|
||||
import BluetoothPage from "./pages/BluetoothPage";
|
||||
import DspPage from "./pages/DspPage";
|
||||
@@ -18,14 +19,28 @@ import SystemPage from "./pages/SystemPage";
|
||||
import IOPage from "./pages/IOPage";
|
||||
import VUPage from "./pages/VUPage";
|
||||
import SelectPage from "./pages/SelectPage";
|
||||
import AIPage from "./pages/AIPage";
|
||||
import CommunityPage from "./pages/CommunityPage";
|
||||
import { AIDrawerProvider } from "./contexts/AIDrawerContext";
|
||||
import DesktopAIShell from "./components/DesktopAIShell";
|
||||
import { appShellColumnClass, appShellGutterClass } from "./lib/appShell";
|
||||
|
||||
const EQPage = lazy(() => import("./pages/EQPage"));
|
||||
const AIPage = lazy(() => import("./pages/AIPage"));
|
||||
|
||||
function AIPageRoute() {
|
||||
return <AIPage />;
|
||||
return (
|
||||
<PageSuspense>
|
||||
<AIPage />
|
||||
</PageSuspense>
|
||||
);
|
||||
}
|
||||
|
||||
function EQPageRoute() {
|
||||
return (
|
||||
<PageSuspense>
|
||||
<EQPage />
|
||||
</PageSuspense>
|
||||
);
|
||||
}
|
||||
|
||||
function AppRouter() {
|
||||
@@ -34,7 +49,7 @@ function AppRouter() {
|
||||
<Route path="/" component={Home} />
|
||||
<Route path="/dashboard" component={Dashboard} />
|
||||
<Route path="/audio" component={AudioPage} />
|
||||
<Route path="/eq" component={EQPage} />
|
||||
<Route path="/eq" component={EQPageRoute} />
|
||||
<Route path="/effects" component={EffectsPage} />
|
||||
<Route path="/bluetooth" component={BluetoothPage} />
|
||||
<Route path="/dsp" component={DspPage} />
|
||||
|
||||
Reference in New Issue
Block a user