diff --git a/frontend/components/admin/dashboard/CanvasElement.tsx b/frontend/components/admin/dashboard/CanvasElement.tsx
index 09ddfe5c..ce08c522 100644
--- a/frontend/components/admin/dashboard/CanvasElement.tsx
+++ b/frontend/components/admin/dashboard/CanvasElement.tsx
@@ -853,7 +853,9 @@ export function CanvasElement({
)}
{/* 제목 */}
{!element.type || element.type !== "chart" ? (
- {element.customTitle || element.title}
+ element.subtype === "map-summary-v2" && !element.customTitle ? null : (
+ {element.customTitle || element.title}
+ )
) : null}
diff --git a/frontend/components/admin/dashboard/WidgetConfigSidebar.tsx b/frontend/components/admin/dashboard/WidgetConfigSidebar.tsx
index 5c272ec8..7ca9684b 100644
--- a/frontend/components/admin/dashboard/WidgetConfigSidebar.tsx
+++ b/frontend/components/admin/dashboard/WidgetConfigSidebar.tsx
@@ -152,7 +152,8 @@ export function WidgetConfigSidebar({ element, isOpen, onClose, onApply }: Widge
setCustomTitle(element.customTitle || "");
setShowHeader(element.showHeader !== false);
setDataSource(element.dataSource || { type: "database", connectionType: "current", refreshInterval: 0 });
- setDataSources(element.dataSources || []);
+ // dataSources는 element.dataSources 또는 chartConfig.dataSources에서 가져옴
+ setDataSources(element.dataSources || element.chartConfig?.dataSources || []);
setQueryResult(null);
// 리스트 위젯 설정 초기화
@@ -301,6 +302,8 @@ export function WidgetConfigSidebar({ element, isOpen, onClose, onApply }: Widge
...(isMultiDataSourceWidget
? {
dataSources: dataSources,
+ // chartConfig에도 dataSources 포함 (일부 위젯은 chartConfig에서 읽음)
+ chartConfig: { ...chartConfig, dataSources: dataSources },
}
: {}),
}
diff --git a/frontend/components/dashboard/DashboardViewer.tsx b/frontend/components/dashboard/DashboardViewer.tsx
index 30a6f53c..d26ac0b7 100644
--- a/frontend/components/dashboard/DashboardViewer.tsx
+++ b/frontend/components/dashboard/DashboardViewer.tsx
@@ -653,27 +653,10 @@ function ViewerElement({ element, data, isLoading, onRefresh, isMobile, canvasWi
>
{element.showHeader !== false && (
-
{element.customTitle || element.title}
-
+ {/* map-summary-v2는 customTitle이 없으면 제목 숨김 */}
+ {element.subtype === "map-summary-v2" && !element.customTitle ? null : (
+
{element.customTitle || element.title}
+ )}
)}
@@ -716,27 +699,10 @@ function ViewerElement({ element, data, isLoading, onRefresh, isMobile, canvasWi
>
{element.showHeader !== false && (
-
{element.customTitle || element.title}
-
+ {/* map-summary-v2는 customTitle이 없으면 제목 숨김 */}
+ {element.subtype === "map-summary-v2" && !element.customTitle ? null : (
+
{element.customTitle || element.title}
+ )}
)}