디벨롭

This commit is contained in:
leeheejin
2025-10-28 09:32:03 +09:00
parent 5b394473f4
commit c52e77f37d
11 changed files with 832 additions and 71 deletions

View File

@@ -34,7 +34,8 @@ export default function ChartTestWidget({ element }: ChartTestWidgetProps) {
// 다중 데이터 소스 로딩
const loadMultipleDataSources = useCallback(async () => {
const dataSources = element?.dataSources;
// dataSources는 element.dataSources 또는 chartConfig.dataSources에서 로드
const dataSources = element?.dataSources || element?.chartConfig?.dataSources;
if (!dataSources || dataSources.length === 0) {
console.log("⚠️ 데이터 소스가 없습니다.");
@@ -174,10 +175,11 @@ export default function ChartTestWidget({ element }: ChartTestWidgetProps) {
};
useEffect(() => {
if (element?.dataSources && element.dataSources.length > 0) {
const dataSources = element?.dataSources || element?.chartConfig?.dataSources;
if (dataSources && dataSources.length > 0) {
loadMultipleDataSources();
}
}, [element?.dataSources, loadMultipleDataSources]);
}, [element?.dataSources, element?.chartConfig?.dataSources, loadMultipleDataSources]);
const chartType = element?.subtype || "line";
const chartConfig = element?.chartConfig || {};
@@ -265,7 +267,7 @@ export default function ChartTestWidget({ element }: ChartTestWidgetProps) {
{element?.customTitle || "차트 테스트 (다중 데이터 소스)"}
</h3>
<p className="text-xs text-muted-foreground">
{element?.dataSources?.length || 0}
{(element?.dataSources || element?.chartConfig?.dataSources)?.length || 0}
</p>
</div>
{loading && <Loader2 className="h-4 w-4 animate-spin" />}
@@ -276,7 +278,7 @@ export default function ChartTestWidget({ element }: ChartTestWidgetProps) {
<div className="flex h-full items-center justify-center">
<p className="text-sm text-destructive">{error}</p>
</div>
) : !element?.dataSources || element.dataSources.length === 0 ? (
) : !(element?.dataSources || element?.chartConfig?.dataSources) || (element?.dataSources || element?.chartConfig?.dataSources)?.length === 0 ? (
<div className="flex h-full items-center justify-center">
<p className="text-sm text-muted-foreground">