diff --git a/src/ui/src/builder/BuilderApp.vue b/src/ui/src/builder/BuilderApp.vue index d1980d562..5f4162a71 100644 --- a/src/ui/src/builder/BuilderApp.vue +++ b/src/ui/src/builder/BuilderApp.vue @@ -105,31 +105,34 @@ import { isPlatformMac } from "../core/detectPlatform"; import BuilderHeader from "./BuilderHeader.vue"; import BuilderTooltip from "./BuilderTooltip.vue"; import BuilderComponentShortcuts from "./BuilderComponentShortcuts.vue"; +import BuilderAsyncLoader from "./BuilderAsyncLoader.vue"; +import BuilderCodePanel from "./BuilderCodePanel.vue"; +import BuilderLogPanel from "./BuilderLogPanel.vue"; -const BuilderSettings = defineAsyncComponent( - () => import("./BuilderSettings.vue"), -); -const BuilderSidebar = defineAsyncComponent( - () => import("./BuilderSidebar.vue"), -); -const ComponentRenderer = defineAsyncComponent( - () => import("@/renderer/ComponentRenderer.vue"), -); -const BuilderInstanceTracker = defineAsyncComponent( - () => import("./BuilderInstanceTracker.vue"), -); -const BuilderInsertionOverlay = defineAsyncComponent( - () => import("./BuilderInsertionOverlay.vue"), -); -const BuilderInsertionLabel = defineAsyncComponent( - () => import("./BuilderInsertionLabel.vue"), -); -const BuilderCodePanel = defineAsyncComponent( - () => import("./BuilderCodePanel.vue"), -); -const BuilderLogPanel = defineAsyncComponent( - () => import("./BuilderLogPanel.vue"), -); +const BuilderSettings = defineAsyncComponent({ + loader: () => import("./BuilderSettings.vue"), + loadingComponent: BuilderAsyncLoader, +}); +const BuilderSidebar = defineAsyncComponent({ + loader: () => import("./BuilderSidebar.vue"), + loadingComponent: BuilderAsyncLoader, +}); +const ComponentRenderer = defineAsyncComponent({ + loader: () => import("@/renderer/ComponentRenderer.vue"), + loadingComponent: BuilderAsyncLoader, +}); +const BuilderInstanceTracker = defineAsyncComponent({ + loader: () => import("./BuilderInstanceTracker.vue"), + loadingComponent: BuilderAsyncLoader, +}); +const BuilderInsertionOverlay = defineAsyncComponent({ + loader: () => import("./BuilderInsertionOverlay.vue"), + loadingComponent: BuilderAsyncLoader, +}); +const BuilderInsertionLabel = defineAsyncComponent({ + loader: () => import("./BuilderInsertionLabel.vue"), + loadingComponent: BuilderAsyncLoader, +}); const wf = inject(injectionKeys.core); const ssbm = inject(injectionKeys.builderManager); diff --git a/src/ui/src/builder/BuilderAsyncLoader.vue b/src/ui/src/builder/BuilderAsyncLoader.vue new file mode 100644 index 000000000..27fb46e68 --- /dev/null +++ b/src/ui/src/builder/BuilderAsyncLoader.vue @@ -0,0 +1,19 @@ + + + + + diff --git a/src/ui/src/builder/BuilderCodePanel.vue b/src/ui/src/builder/BuilderCodePanel.vue index 78394bac1..2b7e329ee 100644 --- a/src/ui/src/builder/BuilderCodePanel.vue +++ b/src/ui/src/builder/BuilderCodePanel.vue @@ -17,11 +17,16 @@