diff --git a/client/packages/lowcoder-comps/src/comps/basicChartComp/chartConstants.tsx b/client/packages/lowcoder-comps/src/comps/basicChartComp/chartConstants.tsx index ab2845f52..d557c82fa 100644 --- a/client/packages/lowcoder-comps/src/comps/basicChartComp/chartConstants.tsx +++ b/client/packages/lowcoder-comps/src/comps/basicChartComp/chartConstants.tsx @@ -17,7 +17,8 @@ import { clickEvent, styleControl, EchartDefaultTextStyle, - EchartDefaultChartStyle + EchartDefaultChartStyle, + toArray } from "lowcoder-sdk"; import { RecordConstructorToComp, RecordConstructorToView } from "lowcoder-core"; import { BarChartConfig } from "./chartConfigs/barChartConfig"; @@ -253,7 +254,7 @@ export const chartUiModeChildren = { }; let chartJsonModeChildren: any = { - echartsData: jsonControl(toJSONObjectArray), + echartsData: jsonControl(toArray), echartsOption: jsonControl(toObject, i18nObjs.defaultEchartsJsonOption), echartsTitle: withDefault(StringControl, trans("echarts.defaultTitle")), echartsLegendConfig: EchartsLegendConfig, diff --git a/client/packages/lowcoder-comps/src/comps/candleStickChartComp/candleStickChartConstants.tsx b/client/packages/lowcoder-comps/src/comps/candleStickChartComp/candleStickChartConstants.tsx index c745dc09a..4c26568a5 100644 --- a/client/packages/lowcoder-comps/src/comps/candleStickChartComp/candleStickChartConstants.tsx +++ b/client/packages/lowcoder-comps/src/comps/candleStickChartComp/candleStickChartConstants.tsx @@ -17,7 +17,8 @@ import { clickEvent, styleControl, EchartCandleStickChartStyle, - EchartDefaultTextStyle + EchartDefaultTextStyle, + toArray } from "lowcoder-sdk"; import { RecordConstructorToComp, RecordConstructorToView } from "lowcoder-core"; import { BarChartConfig } from "../chartComp/chartConfigs/barChartConfig"; @@ -250,7 +251,7 @@ export const chartUiModeChildren = { }; let chartJsonModeChildren: any = { - echartsData: jsonControl(toObject), + echartsData: jsonControl(toArray), echartsOption: jsonControl(toObject, i18nObjs.defaultCandleStickChartOption), echartsTitle: withDefault(StringControl, trans("candleStickChart.defaultTitle")), echartsTitleVerticalConfig: EchartsTitleVerticalConfig, diff --git a/client/packages/lowcoder-comps/src/comps/candleStickChartComp/candleStickChartUtils.ts b/client/packages/lowcoder-comps/src/comps/candleStickChartComp/candleStickChartUtils.ts index 60fa0c10d..129b27648 100644 --- a/client/packages/lowcoder-comps/src/comps/candleStickChartComp/candleStickChartUtils.ts +++ b/client/packages/lowcoder-comps/src/comps/candleStickChartComp/candleStickChartUtils.ts @@ -213,7 +213,7 @@ export function getEchartsConfig( show: true, position: props?.echartsLabelConfig.top }, - data: props?.echartsData?.data || props?.echartsOption.data, + data: props?.echartsData.length !== 0 && props?.echartsData || props?.echartsOption.data, itemStyle: props?.echartsData.itemStyle ? { ...props?.echartsData.itemStyle, borderWidth: props?.chartStyle?.chartBorderWidth || theme?.chartStyle?.borderWidth, diff --git a/client/packages/lowcoder-comps/src/comps/chartComp/chartConstants.tsx b/client/packages/lowcoder-comps/src/comps/chartComp/chartConstants.tsx index fb715820b..064b10903 100644 --- a/client/packages/lowcoder-comps/src/comps/chartComp/chartConstants.tsx +++ b/client/packages/lowcoder-comps/src/comps/chartComp/chartConstants.tsx @@ -18,7 +18,8 @@ import { clickEvent, EchartDefaultTextStyle, styleControl, - EchartDefaultChartStyle + EchartDefaultChartStyle, + toArray } from "lowcoder-sdk"; import { RecordConstructorToComp, RecordConstructorToView } from "lowcoder-core"; import { BarChartConfig } from "./chartConfigs/barChartConfig"; @@ -263,7 +264,7 @@ export const chartUiModeChildren = { }; let chartJsonModeChildren: any = { - echartsData: jsonControl(toJSONObjectArray), + echartsData: jsonControl(toArray), echartsTitle: withDefault(StringControl, trans("echarts.defaultTitle")), echartsOption: jsonControl(toObject, i18nObjs.defaultEchartsJsonOption), diff --git a/client/packages/lowcoder-comps/src/comps/funnelChartComp/funnelChartConstants.tsx b/client/packages/lowcoder-comps/src/comps/funnelChartComp/funnelChartConstants.tsx index 025d792c3..fdac1ea20 100644 --- a/client/packages/lowcoder-comps/src/comps/funnelChartComp/funnelChartConstants.tsx +++ b/client/packages/lowcoder-comps/src/comps/funnelChartComp/funnelChartConstants.tsx @@ -17,7 +17,8 @@ import { clickEvent, styleControl, EchartDefaultChartStyle, - EchartDefaultTextStyle + EchartDefaultTextStyle, + toArray } from "lowcoder-sdk"; import { RecordConstructorToComp, RecordConstructorToView } from "lowcoder-core"; import { BarChartConfig } from "../chartComp/chartConfigs/barChartConfig"; @@ -255,7 +256,7 @@ export const chartUiModeChildren = { }; let chartJsonModeChildren: any = { - echartsData: jsonControl(toObject), + echartsData: jsonControl(toArray), echartsOption: jsonControl(toObject, i18nObjs.defaultFunnelChartOption), echartsTitle: withDefault(StringControl, trans("funnelChart.defaultTitle")), echartsTitleVerticalConfig: EchartsTitleVerticalConfig, diff --git a/client/packages/lowcoder-comps/src/comps/funnelChartComp/funnelChartUtils.ts b/client/packages/lowcoder-comps/src/comps/funnelChartComp/funnelChartUtils.ts index 3e5e46f33..36fe24edf 100644 --- a/client/packages/lowcoder-comps/src/comps/funnelChartComp/funnelChartUtils.ts +++ b/client/packages/lowcoder-comps/src/comps/funnelChartComp/funnelChartUtils.ts @@ -184,7 +184,7 @@ export function getEchartsConfig( "position": props.echartsLabelConfig.top, ...styleWrapper(props?.labelStyle,theme?.labelStyle, 13), }, - "data": props?.echartsData?.data || props.echartsOption.data + "data": props?.echartsData.length !== 0 && props?.echartsData || props.echartsOption.data } ] } diff --git a/client/packages/lowcoder-comps/src/comps/gaugeChartComp/gaugeChartConstants.tsx b/client/packages/lowcoder-comps/src/comps/gaugeChartComp/gaugeChartConstants.tsx index db349bf09..f09412345 100644 --- a/client/packages/lowcoder-comps/src/comps/gaugeChartComp/gaugeChartConstants.tsx +++ b/client/packages/lowcoder-comps/src/comps/gaugeChartComp/gaugeChartConstants.tsx @@ -19,7 +19,8 @@ import { EchartDefaultChartStyle, EchartDefaultTextStyle, ColorControl, - EchartDefaultDetailStyle + EchartDefaultDetailStyle, + toArray } from "lowcoder-sdk"; import { RecordConstructorToComp, RecordConstructorToView } from "lowcoder-core"; import { BarChartConfig } from "../chartComp/chartConfigs/barChartConfig"; @@ -268,7 +269,7 @@ export const chartUiModeChildren = { }; let chartJsonModeChildren: any = { - echartsData: jsonControl(toObject), + echartsData: jsonControl(toArray), echartsOption: jsonControl(toObject, i18nObjs.defaultGaugeChartOption), stageGaugeOption: jsonControl(toObject, i18nObjs.defaultStageGaugeChartOption), gradeGaugeOption: jsonControl(toObject, i18nObjs.defaultGradeGaugeChartOption), @@ -278,13 +279,13 @@ let chartJsonModeChildren: any = { clockGaugeOption: jsonControl(toObject, i18nObjs.defaultClockGaugeChartOption), barometerGaugeOption: jsonControl(toObject, i18nObjs.defaultBarometerGaugeChartOption), - stageGaugeData:jsonControl(toObject), - gradeGaugeData:jsonControl(toObject), - temperatureGaugeData:jsonControl(toObject), - multiTitleGaugeData:jsonControl(toObject), - ringGaugeData:jsonControl(toObject), - clockGaugeData:jsonControl(toObject), - barometerGaugeData:jsonControl(toObject), + stageGaugeData:jsonControl(toArray), + gradeGaugeData:jsonControl(toArray), + temperatureGaugeData:jsonControl(toArray), + multiTitleGaugeData:jsonControl(toArray), + ringGaugeData:jsonControl(toArray), + clockGaugeData:jsonControl(toArray), + barometerGaugeData:jsonControl(toArray), chartType: dropdownControl(ChartTypeOptions, trans("chart.default")), echartsTitle: withDefault(StringControl, trans("gaugeChart.defaultTitle")), diff --git a/client/packages/lowcoder-comps/src/comps/gaugeChartComp/gaugeChartPropertyView.tsx b/client/packages/lowcoder-comps/src/comps/gaugeChartComp/gaugeChartPropertyView.tsx index 498d39eb0..cab358d44 100644 --- a/client/packages/lowcoder-comps/src/comps/gaugeChartComp/gaugeChartPropertyView.tsx +++ b/client/packages/lowcoder-comps/src/comps/gaugeChartComp/gaugeChartPropertyView.tsx @@ -83,7 +83,7 @@ export function gaugeChartPropertyView( const stageGaugePropertyView = ( <>
- {children.gradeGaugeData.propertyView({ label: trans("chart.data") })} + {children.stageGaugeData.propertyView({ label: trans("chart.data") })} {children.chartType.propertyView({label: trans("gaugeChart.chartType"), tooltip: trans("gaugeChart.chartTypeTooltip") })} {children.echartsTitleConfig.getPropertyView()} {children.echartsTitle.propertyView({ label: trans("gaugeChart.title"), tooltip: trans("echarts.titleTooltip") })} diff --git a/client/packages/lowcoder-comps/src/comps/gaugeChartComp/gaugeChartUtils.ts b/client/packages/lowcoder-comps/src/comps/gaugeChartComp/gaugeChartUtils.ts index 6dfc28720..971775100 100644 --- a/client/packages/lowcoder-comps/src/comps/gaugeChartComp/gaugeChartUtils.ts +++ b/client/packages/lowcoder-comps/src/comps/gaugeChartComp/gaugeChartUtils.ts @@ -218,13 +218,13 @@ export function getEchartsConfig( "position": props.echartsLabelConfig.top, }, "data": - props.echartsData.data?.map(item => ({ + props?.echartsData.length !== 0 && props?.echartsData?.map(item => ({ "value": item.value, "name": item.name, title: { ...styleWrapper(props?.labelStyle, theme?.labelStyle, 18, "#000000"), }})) - || + || props.echartsOption.data?.map(item => ({ "value": item.value, "name": item.name, @@ -282,7 +282,7 @@ export function getEchartsConfig( }, data: [ { - value: props?.stageGaugeData?.data?.map(data => data.value) || props?.stageGaugeOption?.data?.map(data => data.value) + value: props?.stageGaugeData.length !== 0 && props?.stageGaugeData?.map(data => data.value) || props?.stageGaugeOption?.data?.map(data => data.value) } ] } @@ -342,8 +342,8 @@ export function getEchartsConfig( }, data: [ { - value: props?.gradeGaugeData?.data?.map(data => data.value) || props?.gradeGaugeOption?.data?.map(data => data.value), - name: props?.gradeGaugeData?.data?.map(data => data.name)[0] || props?.gradeGaugeOption?.data?.map(data => data.name)[0], + value: props?.gradeGaugeData.length !== 0 && props?.gradeGaugeData?.map(data => data.value) || props?.gradeGaugeOption?.data?.map(data => data.value), + name: props?.gradeGaugeData.length !== 0 && props?.gradeGaugeData?.map(data => data.name)[0] || props?.gradeGaugeOption?.data?.map(data => data.name)[0], } ] } @@ -370,28 +370,8 @@ export function getEchartsConfig( }, data: - props?.multiTitleGaugeData?.data && props?.multiTitleGaugeData?.data[0]?.value?.map(item => ({ - value: item.value, - name: item.title, - title: { - offsetCenter: item.titlePosition - }, - detail: { - offsetCenter: item.valuePosition, - - }, - itemStyle: { - color: item.color - }, - pointer: { - itemStyle: { - color: item.color - } - } - })) - || - props?.multiTitleGaugeOption?.data && props?.multiTitleGaugeOption?.data[0]?.value?.map(item => ({ - value: item.value, + props?.multiTitleGaugeOption?.data && props?.multiTitleGaugeOption?.data[0]?.value?.map((item, index) => ({ + value: props?.multiTitleGaugeData.length !== 0 && props?.multiTitleGaugeData[index] || item.value, name: item.title, title: { offsetCenter: item.titlePosition @@ -476,7 +456,7 @@ export function getEchartsConfig( }, data: [ { - value: props?.temperatureGaugeData?.data?.map(data => data.value) || props?.temperatureGaugeOption?.data?.map(data => data.value) + value: props?.temperatureGaugeData.length !== 0 && props?.temperatureGaugeData?.map(data => data.value) || props?.temperatureGaugeOption?.data?.map(data => data.value) } ] }, @@ -557,27 +537,8 @@ export function getEchartsConfig( show: false }, data: - props?.ringGaugeData?.data && props?.ringGaugeData?.data[0]?.value.map(item => ({ - value: item.value, - name: item.title, - title: { - offsetCenter: item.titlePosition - }, - detail: { - offsetCenter: item.valuePosition - }, - itemStyle: { - color: item.color - }, - pointer: { - itemStyle: { - color: item.color - } - } - })) - || - props?.ringGaugeOption?.data && props?.ringGaugeOption?.data[0]?.value.map(item => ({ - value: item.value, + props?.ringGaugeOption?.data && props?.ringGaugeOption?.data[0]?.value.map((item, index) => ({ + value: props?.ringGaugeData.length !== 0 && props?.ringGaugeData[index] || item.value, name: item.title, title: { offsetCenter: item.titlePosition @@ -610,130 +571,6 @@ export function getEchartsConfig( let barometerGaugeOpt = { ...basic, series: - props?.barometerGaugeData?.data && [ - { - ...basicSeries, - type: 'gauge', - min: props?.barometerGaugeData?.data[0]?.outline?.period[0], - max: props?.barometerGaugeData?.data[0]?.outline?.period[1], - center: [`${props?.position_x}%`, `${props?.position_y}%`], - splitNumber: props?.barometerGaugeData?.data[0]?.outline?.splitNumber, - radius: props?.barometerGaugeData?.data[0]?.outline?.radius, - axisLine: { - lineStyle: { - color: [[1, props?.barometerGaugeData?.data[0]?.outline?.color]], - width: props?.barometerGaugeData?.data[0]?.outline?.progressBarWidth - } - }, - splitLine: { - distance: -Number(props?.barometerGaugeData?.data[0]?.outline?.progressBarWidth), - length: -Number(props?.barometerGaugeData?.data[0]?.outline?.axisTickLength) * 2, - lineStyle: { - color: props?.barometerGaugeData?.data[0]?.outline?.color, - width: Number(props?.barometerGaugeData?.data[0]?.outline?.axisTickWidth) * 1.5 - } - }, - axisTick: { - distance: -Number(props?.barometerGaugeData?.data[0]?.outline?.progressBarWidth), - length: -Number(props?.barometerGaugeData?.data[0]?.outline?.axisTickLength), - lineStyle: { - color: props?.barometerGaugeData?.data[0]?.outline?.color, - width: props?.barometerGaugeData?.data[0]?.outline?.axisTickWidth - } - }, - axisLabel: { - distance: Number(props?.barometerGaugeData?.data[0]?.outline?.progressBarWidth) - 20, - ...styleWrapper(props?.axisLabelStyle, theme?.axisLabelStyle, 13, '#c80707') - }, - pointer: { - ...basicSeries.pointer, - icon: props?.barometerPointerIcon, - length: `${props?.barometerPointerLength}%`, - width: props?.barometerPointerWidth, - offsetCenter: [0, `${-Number(props.barometerPointer_Y)}%`], - itemStyle: { - color: props?.barometerGaugeData?.data[0]?.inline?.color - } - }, - anchor: { - show: true, - size: 10, - itemStyle: { - borderColor: '#000', - borderWidth: 1 - } - }, - detail: { - valueAnimation: true, - precision: 2, // Increase precision or keep as is - ...styleWrapper(props?.legendStyle, theme?.legendStyle, 16), - offsetCenter: [0, '40%'], - formatter: props?.barometerGaugeData?.data?.map(data => data.formatter)[0], - }, - title: { - offsetCenter: [0, '-40%'], // Adjust title placement for smaller chart - ...styleWrapper(props?.labelStyle, theme?.labelStyle, 13) - }, - data: [ - { - value: props?.barometerGaugeData?.data[0]?.value, - name: props?.barometerGaugeData?.data[0]?.name, - } - ] - }, - { - ...basicSeries, - type: 'gauge', - min: props?.barometerGaugeData?.data[0]?.inline?.period[0], - max: props?.barometerGaugeData?.data[0]?.inline?.period[1], - center: [`${props?.position_x}%`, `${props?.position_y}%`], - splitNumber: props?.barometerGaugeData?.data[0]?.inline?.splitNumber, - radius: props?.barometerGaugeData?.data[0]?.inline?.radius, - anchor: { - show: true, - size: 6, - itemStyle: { - color: '#000' - } - }, - axisLine: { - lineStyle: { - color: [[1, props?.barometerGaugeData?.data[0]?.inline?.color]], - width: props?.barometerGaugeData?.data[0]?.inline?.progressBarWidth - } - }, - splitLine: { - distance: -2, // Adjust spacing - length: Number(props?.barometerGaugeData?.data[0]?.inline?.axisTickLength) * 2, - lineStyle: { - color: props?.barometerGaugeData?.data[0]?.inline?.color, - width: Number(props?.barometerGaugeData?.data[0]?.inline?.axisTickWidth) * 1.5 - } - }, - axisTick: { - distance: 0, - length: props?.barometerGaugeData?.data[0]?.inline?.axisTickLength, - lineStyle: { - color: props?.barometerGaugeData?.data[0]?.inline?.color, - width: props?.barometerGaugeData?.data[0]?.inline?.axisTickWidth - } - }, - axisLabel: { - distance: Number(props?.barometerGaugeData?.data[0]?.inline?.progressBarWidth) + 6, - ...styleWrapper(props?.axisLabelStyleOutline, theme?.axisLabelStyleOutline, 13, '#000'), - }, - pointer: { - show: false - }, - title: { - show: false - }, - detail: { - show: false - } - } - ] - || props?.barometerGaugeOption?.data && [ { ...basicSeries, @@ -800,8 +637,8 @@ export function getEchartsConfig( }, data: [ { - value: props?.barometerGaugeOption?.data[0]?.value, - name: props?.barometerGaugeOption?.data[0]?.name, + value: props?.barometerGaugeData.length !== 0 && props?.barometerGaugeData[0]?.value || props?.barometerGaugeOption?.data[0]?.value, + name: props?.barometerGaugeData.length !== 0 && props?.barometerGaugeData[0]?.name || props?.barometerGaugeOption?.data[0]?.name, } ] }, @@ -938,7 +775,7 @@ export function getEchartsConfig( }, data: [ { - value: props?.clockGaugeData?.data?.map(data => data.hour)[0]?.value || props?.clockGaugeOption?.data?.map(data => data.hour)[0]?.value + value: props?.clockGaugeData.length !== 0 && props?.clockGaugeData?.map(data => data.hour)[0]?.value || props?.clockGaugeOption?.data?.map(data => data.hour)[0]?.value } ] }, @@ -983,7 +820,7 @@ export function getEchartsConfig( }, data: [ { - value: props?.clockGaugeData?.data?.map(data => data.minute)[0]?.value || props?.clockGaugeOption?.data?.map(data => data.minute)[0]?.value + value: props?.clockGaugeData.length !== 0 && props?.clockGaugeData?.map(data => data.minute)[0]?.value || props?.clockGaugeOption?.data?.map(data => data.minute)[0]?.value } ] }, @@ -1041,7 +878,7 @@ export function getEchartsConfig( }, data: [ { - value: props?.clockGaugeData?.data?.map(data => data.second)[0]?.value || props?.clockGaugeOption?.data?.map(data => data.second)[0]?.value + value: props?.clockGaugeData.length !== 0 && props?.clockGaugeData?.map(data => data.second)[0]?.value || props?.clockGaugeOption?.data?.map(data => data.second)[0]?.value } ] } diff --git a/client/packages/lowcoder-comps/src/comps/graphChartComp/graphChartConstants.tsx b/client/packages/lowcoder-comps/src/comps/graphChartComp/graphChartConstants.tsx index 80c5878cf..77ac2b7d2 100644 --- a/client/packages/lowcoder-comps/src/comps/graphChartComp/graphChartConstants.tsx +++ b/client/packages/lowcoder-comps/src/comps/graphChartComp/graphChartConstants.tsx @@ -19,6 +19,7 @@ import { EchartsStyle, EchartDefaultChartStyle, EchartDefaultTextStyle, + toArray } from "lowcoder-sdk"; import { RecordConstructorToComp, RecordConstructorToView } from "lowcoder-core"; @@ -253,7 +254,7 @@ export const chartUiModeChildren = { }; let chartJsonModeChildren: any = { - echartsData: jsonControl(toObject), + echartsData: jsonControl(toArray), echartsOption: jsonControl(toObject, i18nObjs.defaultGraphChartOption), echartsTitle: withDefault(StringControl, trans("graphChart.defaultTitle")), echartsLegendConfig: EchartsLegendConfig, diff --git a/client/packages/lowcoder-comps/src/comps/graphChartComp/graphChartUtils.ts b/client/packages/lowcoder-comps/src/comps/graphChartComp/graphChartUtils.ts index 7db850fec..45a68d841 100644 --- a/client/packages/lowcoder-comps/src/comps/graphChartComp/graphChartUtils.ts +++ b/client/packages/lowcoder-comps/src/comps/graphChartComp/graphChartUtils.ts @@ -155,7 +155,7 @@ export function getEchartsConfig( "type": "graph", "layout": "force", 'categories': props?.echartsData?.categories || props.echartsOption.categories, - 'links': props?.echartsData?.links || props.echartsOption.links, + 'links': props?.echartsData.length !== 0 && props?.echartsData || props.echartsOption.links, "force": { "repulsion": props.repulsion, "gravity": props?.gravity, diff --git a/client/packages/lowcoder-comps/src/comps/heatmapChartComp/heatmapChartConstants.tsx b/client/packages/lowcoder-comps/src/comps/heatmapChartComp/heatmapChartConstants.tsx index dd680ac30..205a2905a 100644 --- a/client/packages/lowcoder-comps/src/comps/heatmapChartComp/heatmapChartConstants.tsx +++ b/client/packages/lowcoder-comps/src/comps/heatmapChartComp/heatmapChartConstants.tsx @@ -17,7 +17,8 @@ import { clickEvent, styleControl, EchartDefaultTextStyle, - EchartDefaultChartStyle + EchartDefaultChartStyle, + toArray } from "lowcoder-sdk"; import { RecordConstructorToComp, RecordConstructorToView } from "lowcoder-core"; import { BarChartConfig } from "../chartComp/chartConfigs/barChartConfig"; @@ -253,7 +254,7 @@ export const chartUiModeChildren = { }; let chartJsonModeChildren: any = { - echartsData: jsonControl(toObject), + echartsData: jsonControl(toArray), echartsOption: jsonControl(toObject, i18nObjs.defaultHeatmapChartOption), echartsTitle: withDefault(StringControl, trans("heatmapChart.defaultTitle")), echartsLegendConfig: EchartsLegendConfig, diff --git a/client/packages/lowcoder-comps/src/comps/heatmapChartComp/heatmapChartUtils.ts b/client/packages/lowcoder-comps/src/comps/heatmapChartComp/heatmapChartUtils.ts index 6478c9bd2..80b04f59d 100644 --- a/client/packages/lowcoder-comps/src/comps/heatmapChartComp/heatmapChartUtils.ts +++ b/client/packages/lowcoder-comps/src/comps/heatmapChartComp/heatmapChartUtils.ts @@ -193,7 +193,7 @@ export function getEchartsConfig( { name: 'Heatmap', type: 'heatmap', - data: props?.echartsData?.data || props?.echartsOption && props?.echartsOption.data, + data: props?.echartsData.length !== 0 && props?.echartsData || props?.echartsOption && props?.echartsOption.data, label: { show: props?.labelVisibility, ...styleWrapper(props?.labelStyle, theme?.labelStyle, 12), diff --git a/client/packages/lowcoder-comps/src/comps/radarChartComp/radarChartConstants.tsx b/client/packages/lowcoder-comps/src/comps/radarChartComp/radarChartConstants.tsx index 52b0e3891..97a1556e8 100644 --- a/client/packages/lowcoder-comps/src/comps/radarChartComp/radarChartConstants.tsx +++ b/client/packages/lowcoder-comps/src/comps/radarChartComp/radarChartConstants.tsx @@ -18,7 +18,8 @@ import { styleControl, EchartDefaultChartStyle, EchartDefaultTextStyle, - RadarLabelStyle + RadarLabelStyle, + toArray } from "lowcoder-sdk"; import { RecordConstructorToComp, RecordConstructorToView } from "lowcoder-core"; import { BarChartConfig } from "../chartComp/chartConfigs/barChartConfig"; @@ -254,7 +255,7 @@ export const chartUiModeChildren = { }; let chartJsonModeChildren: any = { - echartsData: jsonControl(toObject), + echartsData: jsonControl(toArray), echartsOption: jsonControl(toObject, i18nObjs.defaultRadarChartOption), echartsTitle: withDefault(StringControl, trans("radarChart.defaultTitle")), echartsLegendConfig: EchartsLegendConfig, diff --git a/client/packages/lowcoder-comps/src/comps/radarChartComp/radarChartUtils.ts b/client/packages/lowcoder-comps/src/comps/radarChartComp/radarChartUtils.ts index df55ca2f8..2c0da13ef 100644 --- a/client/packages/lowcoder-comps/src/comps/radarChartComp/radarChartUtils.ts +++ b/client/packages/lowcoder-comps/src/comps/radarChartComp/radarChartUtils.ts @@ -189,10 +189,10 @@ export function getEchartsConfig( } ], series: - props?.echartsData?.series ? - props?.echartsData && { - data: props?.echartsData?.series && [ - ...props?.echartsData?.series.map(item => ({ + props?.echartsData.length !== 0 ? + { + data: props?.echartsData && [ + ...props?.echartsData.map(item => ({ ...item, areaStyle: item.areaColor && { ...chartStyleWrapper(props?.chartStyle, theme?.chartStyle), diff --git a/client/packages/lowcoder-comps/src/comps/sankeyChartComp/sankeyChartConstants.tsx b/client/packages/lowcoder-comps/src/comps/sankeyChartComp/sankeyChartConstants.tsx index 95e5c152b..661dc6c12 100644 --- a/client/packages/lowcoder-comps/src/comps/sankeyChartComp/sankeyChartConstants.tsx +++ b/client/packages/lowcoder-comps/src/comps/sankeyChartComp/sankeyChartConstants.tsx @@ -19,7 +19,8 @@ import { SankeyLineStyle, EchartDefaultChartStyle, EchartDefaultTextStyle, - RadarLabelStyle + RadarLabelStyle, + toArray } from "lowcoder-sdk"; import { RecordConstructorToComp, RecordConstructorToView } from "lowcoder-core"; import { BarChartConfig } from "../chartComp/chartConfigs/barChartConfig"; @@ -253,7 +254,7 @@ export const chartUiModeChildren = { }; let chartJsonModeChildren: any = { - echartsData: jsonControl(toObject), + echartsData: jsonControl(toArray), echartsOption: jsonControl(toObject, i18nObjs.defaultSankeyChartOption), echartsTitle: withDefault(StringControl, trans("sankeyChart.defaultTitle")), echartsLegendConfig: EchartsLegendConfig, diff --git a/client/packages/lowcoder-comps/src/comps/sankeyChartComp/sankeyChartUtils.ts b/client/packages/lowcoder-comps/src/comps/sankeyChartComp/sankeyChartUtils.ts index 57e34e0c3..123b1c94e 100644 --- a/client/packages/lowcoder-comps/src/comps/sankeyChartComp/sankeyChartUtils.ts +++ b/client/packages/lowcoder-comps/src/comps/sankeyChartComp/sankeyChartUtils.ts @@ -166,7 +166,7 @@ export function getEchartsConfig( position: props.echartsLabelConfig.top, ...styleWrapper(props?.detailStyle, theme?.detailStyle,15) }, - data: props?.echartsData?.data && props?.echartsData?.data?.map(item => ({ + data: props?.echartsData.length !== 0 && props?.echartsData?.map(item => ({ name: item.name, itemStyle: isColorString(item.color) && {color: item.color} })) || props?.echartsOption?.data && props?.echartsOption?.data?.map(item => ({ diff --git a/client/packages/lowcoder-comps/src/comps/sunburstChartComp/sunburstChartConstants.tsx b/client/packages/lowcoder-comps/src/comps/sunburstChartComp/sunburstChartConstants.tsx index 686d838a9..8a6c426c4 100644 --- a/client/packages/lowcoder-comps/src/comps/sunburstChartComp/sunburstChartConstants.tsx +++ b/client/packages/lowcoder-comps/src/comps/sunburstChartComp/sunburstChartConstants.tsx @@ -18,7 +18,8 @@ import { styleControl, EchartDefaultChartStyle, EchartDefaultTextStyle, - RadarLabelStyle + RadarLabelStyle, + toArray } from "lowcoder-sdk"; import { RecordConstructorToComp, RecordConstructorToView } from "lowcoder-core"; import { BarChartConfig } from "../chartComp/chartConfigs/barChartConfig"; @@ -252,7 +253,7 @@ export const chartUiModeChildren = { }; let chartJsonModeChildren: any = { - echartsData: jsonControl(toObject), + echartsData: jsonControl(toArray), echartsOption: jsonControl(toObject, i18nObjs.defaultSunburstChartOption), echartsTitle: withDefault(StringControl, trans("sunburstChart.defaultTitle")), echartsLegendConfig: EchartsLegendConfig, diff --git a/client/packages/lowcoder-comps/src/comps/sunburstChartComp/sunburstChartUtils.ts b/client/packages/lowcoder-comps/src/comps/sunburstChartComp/sunburstChartUtils.ts index e2fce383b..7a406e2cd 100644 --- a/client/packages/lowcoder-comps/src/comps/sunburstChartComp/sunburstChartUtils.ts +++ b/client/packages/lowcoder-comps/src/comps/sunburstChartComp/sunburstChartUtils.ts @@ -160,7 +160,7 @@ export function getEchartsConfig( radius: [`${props?.radiusInline}%`, `${props?.radiusOutline}%`], center: [`${props?.position_x}%`, `${props?.position_y}%`], symbolSize: 7, - data: props?.echartsData?.data || props.echartsOption.data, + data: props?.echartsData.length !== 0 && props?.echartsData || props.echartsOption.data, levels: props.echartsData.levels || props.echartsOption.levels, itemStyle: { ...chartStyleWrapper(props?.chartStyle, theme?.chartStyle) diff --git a/client/packages/lowcoder-comps/src/comps/themeriverChartComp/themeriverChartConstants.tsx b/client/packages/lowcoder-comps/src/comps/themeriverChartComp/themeriverChartConstants.tsx index 7afc3bdcc..efe1bd375 100644 --- a/client/packages/lowcoder-comps/src/comps/themeriverChartComp/themeriverChartConstants.tsx +++ b/client/packages/lowcoder-comps/src/comps/themeriverChartComp/themeriverChartConstants.tsx @@ -18,6 +18,7 @@ import { styleControl, EchartDefaultChartStyle, EchartDefaultTextStyle, + toArray } from "lowcoder-sdk"; import { RecordConstructorToComp, RecordConstructorToView } from "lowcoder-core"; import { BarChartConfig } from "../chartComp/chartConfigs/barChartConfig"; @@ -253,7 +254,7 @@ export const chartUiModeChildren = { }; let chartJsonModeChildren: any = { - echartsData: jsonControl(toObject), + echartsData: jsonControl(toArray), echartsOption: jsonControl(toObject, i18nObjs.defaultThemeriverChartOption), echartsTitle: withDefault(StringControl, trans("themeriverChart.defaultTitle")), echartsLegendConfig: EchartsLegendConfig, diff --git a/client/packages/lowcoder-comps/src/comps/themeriverChartComp/themeriverChartUtils.ts b/client/packages/lowcoder-comps/src/comps/themeriverChartComp/themeriverChartUtils.ts index e19225ca1..bcaf15884 100644 --- a/client/packages/lowcoder-comps/src/comps/themeriverChartComp/themeriverChartUtils.ts +++ b/client/packages/lowcoder-comps/src/comps/themeriverChartComp/themeriverChartUtils.ts @@ -189,7 +189,7 @@ export function getEchartsConfig( series: [ { type: props.echartsConfig.type, - data: props?.echartsData?.data || props.echartsOption.data, + data: props?.echartsData.length !== 0 && props?.echartsData || props.echartsOption.data, label: { show: true, position: "top", diff --git a/client/packages/lowcoder-comps/src/comps/treeChartComp/treeChartConstants.tsx b/client/packages/lowcoder-comps/src/comps/treeChartComp/treeChartConstants.tsx index 0060cd871..095070428 100644 --- a/client/packages/lowcoder-comps/src/comps/treeChartComp/treeChartConstants.tsx +++ b/client/packages/lowcoder-comps/src/comps/treeChartComp/treeChartConstants.tsx @@ -16,7 +16,11 @@ import { uiChildren, clickEvent, styleControl, - EchartsStyle, RadarLabelStyle, EchartDefaultChartStyle, EchartDefaultTextStyle + EchartsStyle, + RadarLabelStyle, + EchartDefaultChartStyle, + EchartDefaultTextStyle, + toArray } from "lowcoder-sdk"; import { RecordConstructorToComp, RecordConstructorToView } from "lowcoder-core"; import { BarChartConfig } from "../chartComp/chartConfigs/barChartConfig"; @@ -250,7 +254,7 @@ export const chartUiModeChildren = { }; let chartJsonModeChildren: any = { - echartsData: jsonControl(toObject), + echartsData: jsonControl(toArray), echartsOption: jsonControl(toObject, i18nObjs.defaultTreeChartOption), echartsTitle: withDefault(StringControl, trans("treeChart.defaultTitle")), echartsLegendConfig: EchartsLegendConfig, diff --git a/client/packages/lowcoder-comps/src/comps/treeChartComp/treeChartUtils.ts b/client/packages/lowcoder-comps/src/comps/treeChartComp/treeChartUtils.ts index 8d9eaeaf1..083b18103 100644 --- a/client/packages/lowcoder-comps/src/comps/treeChartComp/treeChartUtils.ts +++ b/client/packages/lowcoder-comps/src/comps/treeChartComp/treeChartUtils.ts @@ -161,7 +161,7 @@ export function getEchartsConfig( top: `${props?.top}%`, symbol: "circle", // Define the shape of the nodes (e.g., 'circle', 'rect', etc.) symbolSize: props?.pointSize || 20, // Control the size of the nodes - data: props?.echartsData?.data || props.echartsOption.data, + data: props?.echartsData.length !== 0 && props?.echartsData || props.echartsOption.data, label: { position: "top", verticalAlign: "middle", diff --git a/client/packages/lowcoder-comps/src/comps/treemapChartComp/treemapChartConstants.tsx b/client/packages/lowcoder-comps/src/comps/treemapChartComp/treemapChartConstants.tsx index 2893b2093..e65ee490a 100644 --- a/client/packages/lowcoder-comps/src/comps/treemapChartComp/treemapChartConstants.tsx +++ b/client/packages/lowcoder-comps/src/comps/treemapChartComp/treemapChartConstants.tsx @@ -18,7 +18,8 @@ import { styleControl, RadarLabelStyle, EchartDefaultChartStyle, - EchartDefaultTextStyle + EchartDefaultTextStyle, + toArray } from "lowcoder-sdk"; import { RecordConstructorToComp, RecordConstructorToView } from "lowcoder-core"; import { BarChartConfig } from "../chartComp/chartConfigs/barChartConfig"; @@ -252,7 +253,7 @@ export const chartUiModeChildren = { }; let chartJsonModeChildren: any = { - echartsData: jsonControl(toObject), + echartsData: jsonControl(toArray), echartsOption: jsonControl(toObject, i18nObjs.defaultTreemapChartOption), echartsTitle: withDefault(StringControl, trans("treemapChart.defaultTitle")), echartsLegendConfig: EchartsLegendConfig, diff --git a/client/packages/lowcoder-comps/src/comps/treemapChartComp/treemapChartUtils.ts b/client/packages/lowcoder-comps/src/comps/treemapChartComp/treemapChartUtils.ts index 6674bd333..f07d91852 100644 --- a/client/packages/lowcoder-comps/src/comps/treemapChartComp/treemapChartUtils.ts +++ b/client/packages/lowcoder-comps/src/comps/treemapChartComp/treemapChartUtils.ts @@ -162,7 +162,7 @@ export function getEchartsConfig( right: `${props?.right}%`, bottom: `${props?.bottom}%`, top: `${props?.top}%`, - data: props?.echartsData?.data || props.echartsOption.data, + data: props?.echartsData.length !== 0 && props?.echartsData || props.echartsOption.data, breadcrumb: { show: true },