perf: slim dashboard runtime widgets

This commit is contained in:
2026-06-22 20:46:12 +08:00
parent 84d6791b3c
commit 991f1ae0c4
@@ -43,26 +43,6 @@ const widgetComponents: Record<
'progress-card': defineAsyncComponent(
() => import('./widgets/ProgressCard.vue'),
),
'chart-line': defineAsyncComponent(() => import('./widgets/ChartLine.vue')),
'chart-bar': defineAsyncComponent(() => import('./widgets/ChartBar.vue')),
'chart-pie': defineAsyncComponent(() => import('./widgets/ChartPie.vue')),
'chart-gauge': defineAsyncComponent(() => import('./widgets/ChartGauge.vue')),
'chart-area': defineAsyncComponent(() => import('./widgets/ChartArea.vue')),
'chart-radar': defineAsyncComponent(() => import('./widgets/ChartRadar.vue')),
'chart-funnel': defineAsyncComponent(
() => import('./widgets/ChartFunnel.vue'),
),
'chart-scatter': defineAsyncComponent(
() => import('./widgets/ChartScatter.vue'),
),
'chart-ring': defineAsyncComponent(() => import('./widgets/ChartRing.vue')),
'chart-heatmap': defineAsyncComponent(
() => import('./widgets/ChartHeatmap.vue'),
),
'chart-kline': defineAsyncComponent(() => import('./widgets/ChartKline.vue')),
'chart-sankey': defineAsyncComponent(
() => import('./widgets/ChartSankey.vue'),
),
'todo-list': defineAsyncComponent(() => import('./widgets/TodoList.vue')),
'notice-list': defineAsyncComponent(() => import('./widgets/NoticeList.vue')),
'ranking-list': defineAsyncComponent(
@@ -81,18 +61,6 @@ const widgetComponents: Record<
),
clock: defineAsyncComponent(() => import('./widgets/ClockWidget.vue')),
weather: defineAsyncComponent(() => import('./widgets/WeatherWidget.vue')),
'image-carousel': defineAsyncComponent(
() => import('./widgets/ImageCarousel.vue'),
),
'data-table': defineAsyncComponent(() => import('./widgets/DataTable.vue')),
'form-render': defineAsyncComponent(
() => import('./widgets/FormRenderWidget.vue'),
),
iframe: defineAsyncComponent(() => import('./widgets/IframeWidget.vue')),
'video-player': defineAsyncComponent(
() => import('./widgets/VideoPlayer.vue'),
),
image: defineAsyncComponent(() => import('./widgets/ImageWidget.vue')),
'approval-center': defineAsyncComponent(
() => import('./widgets/ApprovalCenter.vue'),
),
@@ -100,16 +68,6 @@ const widgetComponents: Record<
'server-monitor': defineAsyncComponent(
() => import('./widgets/ServerMonitor.vue'),
),
'filter-input': defineAsyncComponent(
() => import('./widgets/FilterInput.vue'),
),
'filter-select': defineAsyncComponent(
() => import('./widgets/FilterSelect.vue'),
),
'filter-date': defineAsyncComponent(() => import('./widgets/FilterDate.vue')),
'filter-date-range': defineAsyncComponent(
() => import('./widgets/FilterDateRange.vue'),
),
};
const store = useDashboardRuntimeStore();