From 3d4001353d2d348399cf5855dd07e61c12b0472e Mon Sep 17 00:00:00 2001 From: Stringadmin Date: Fri, 5 Jun 2026 19:45:56 +0800 Subject: [PATCH] perf: route ecommerce utility styles on demand --- src/App.tsx | 30 +++++++++++++++++++ src/features/ecommerce/EcommercePage.tsx | 1 + .../ecommerce/EcommerceTemplatesPage.tsx | 1 + .../size-template/SizeTemplatePage.tsx | 2 ++ src/styles/index.css | 1 - 5 files changed, 34 insertions(+), 1 deletion(-) diff --git a/src/App.tsx b/src/App.tsx index 992f62f..cdb050f 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -51,6 +51,7 @@ const AvatarConsolePage = lazy(() => import("./features/digital-human/AvatarCons const DigitalHumanPage = lazy(() => import("./features/digital-human/DigitalHumanPage")); const DialogGeneratorPage = lazy(() => import("./features/dialog-generator/DialogGeneratorPage")); const EcommercePage = lazy(() => import("./features/ecommerce/EcommercePage")); +const EcommerceTemplatesPage = lazy(() => import("./features/ecommerce/EcommerceTemplatesPage")); const HomePage = lazy(() => import("./features/home/HomePage")); const ImageWorkbenchPage = lazy(() => import("./features/image-workbench/ImageWorkbenchPage")); const MorePage = lazy(() => import("./features/more/MorePage")); @@ -61,6 +62,7 @@ const ResolutionUpscalePage = lazy(() => import("./features/resolution-upscale/R const WatermarkRemovalPage = lazy(() => import("./features/watermark-removal/WatermarkRemovalPage")); const SubtitleRemovalPage = lazy(() => import("./features/subtitle-removal/SubtitleRemovalPage")); const ScriptTokensPage = lazy(() => import("./features/script-tokens/ScriptTokensPage")); +const SizeTemplatePage = lazy(() => import("./features/size-template/SizeTemplatePage")); const TokenUsagePage = lazy(() => import("./features/script-tokens/TokenUsagePage")); const WorkbenchPage = lazy(() => import("./features/workbench/WorkbenchPage")); import type { WorkbenchResultActionPayload } from "./features/workbench/WorkbenchPage"; @@ -106,6 +108,8 @@ const VIEW_KEYS = new Set([ "assets", "ecommerceHub", "ecommerce", + "ecommerceTemplates", + "sizeTemplate", "scriptTokens", "tokenUsage", "imageWorkbench", @@ -137,6 +141,8 @@ const LEGACY_PAGE_STYLE_VIEWS = new Set([ "assets", "ecommerce", "ecommerceHub", + "ecommerceTemplates", + "sizeTemplate", "digitalHuman", "characterMix", "more", @@ -1176,6 +1182,30 @@ function App() { case "ecommerce": case "ecommerceHub": return null; + case "ecommerceTemplates": + return ( + handleSetView("more")} + onOpenEcommerce={() => handleSetView("ecommerce")} + onSelectTemplate={(template) => { + setPendingEcommerceTemplate(template); + handleSetView("ecommerce"); + }} + onStartCreate={handleStartTemplateCanvasCreate} + onOpenProject={handleOpenProject} + onDeleteProject={handleDeleteProject} + /> + ); + case "sizeTemplate": + return ( + handleSetView("more")} + onOpenEcommerce={() => handleSetView("ecommerce")} + onSelectView={handleSetView} + /> + ); case "digitalHuman": return (