From 8d8908a6836d0ba503dc2b1bf181fdbaeb83494d Mon Sep 17 00:00:00 2001 From: gjulivan Date: Thu, 22 May 2025 13:19:19 +0200 Subject: [PATCH 01/13] chore: backport to 9.24 --- .../area-chart-web/CHANGELOG.md | 2 - .../area-chart-web/package.json | 4 +- .../area-chart-web/src/package.xml | 2 +- .../bar-chart-web/CHANGELOG.md | 2 - .../bar-chart-web/package.json | 4 +- .../bar-chart-web/src/package.xml | 2 +- .../bubble-chart-web/CHANGELOG.md | 2 - .../bubble-chart-web/package.json | 4 +- .../bubble-chart-web/src/package.xml | 2 +- .../pluggableWidgets/charts-web/CHANGELOG.md | 50 ------------------- .../pluggableWidgets/charts-web/package.json | 4 +- .../charts-web/src/package.xml | 2 +- .../column-chart-web/CHANGELOG.md | 2 - .../column-chart-web/package.json | 4 +- .../column-chart-web/src/package.xml | 2 +- .../custom-chart-web/CHANGELOG.md | 2 - .../custom-chart-web/package.json | 4 +- .../custom-chart-web/src/package.xml | 2 +- .../line-chart-web/package.json | 4 +- .../line-chart-web/src/package.xml | 2 +- .../pie-doughnut-chart-web/CHANGELOG.md | 6 +-- .../pie-doughnut-chart-web/package.json | 4 +- .../pie-doughnut-chart-web/src/PieChart.tsx | 5 +- .../pie-doughnut-chart-web/src/PieChart.xml | 8 --- .../pie-doughnut-chart-web/src/hooks/data.ts | 9 +--- .../pie-doughnut-chart-web/src/package.xml | 2 +- .../typings/PieChartProps.d.ts | 4 +- .../time-series-chart-web/CHANGELOG.md | 2 - .../time-series-chart-web/package.json | 4 +- .../time-series-chart-web/src/package.xml | 2 +- packages/shared/charts/package.json | 2 +- 31 files changed, 35 insertions(+), 115 deletions(-) diff --git a/packages/pluggableWidgets/area-chart-web/CHANGELOG.md b/packages/pluggableWidgets/area-chart-web/CHANGELOG.md index 31c64e4597..8005213746 100644 --- a/packages/pluggableWidgets/area-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/area-chart-web/CHANGELOG.md @@ -6,8 +6,6 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] -## [6.2.0] - 2025-06-03 - ### Fixed - We fixed an issue with aggregate being removed on plotly 3.0 diff --git a/packages/pluggableWidgets/area-chart-web/package.json b/packages/pluggableWidgets/area-chart-web/package.json index cfe7b1c2f7..97b5dafe0f 100644 --- a/packages/pluggableWidgets/area-chart-web/package.json +++ b/packages/pluggableWidgets/area-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/area-chart-web", "widgetName": "AreaChart", - "version": "6.2.0", + "version": "6.1.0", "description": "An area chart displays a solid color between the traces of a graph.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", @@ -18,7 +18,7 @@ }, "packagePath": "com.mendix.widget.web", "marketplace": { - "minimumMXVersion": "9.6.0", + "minimumMXVersion": "9.24.0.2965", "appName": "Area Chart" }, "testProject": { diff --git a/packages/pluggableWidgets/area-chart-web/src/package.xml b/packages/pluggableWidgets/area-chart-web/src/package.xml index 0929537270..2087397b03 100644 --- a/packages/pluggableWidgets/area-chart-web/src/package.xml +++ b/packages/pluggableWidgets/area-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md b/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md index 4c2e228426..bea2351647 100644 --- a/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md @@ -6,8 +6,6 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] -## [6.2.0] - 2025-06-03 - ### Fixed - We fixed an issue with aggregate being removed on plotly 3.0 diff --git a/packages/pluggableWidgets/bar-chart-web/package.json b/packages/pluggableWidgets/bar-chart-web/package.json index 396c217930..720240e29f 100644 --- a/packages/pluggableWidgets/bar-chart-web/package.json +++ b/packages/pluggableWidgets/bar-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/bar-chart-web", "widgetName": "BarChart", - "version": "6.2.0", + "version": "6.1.0", "description": "Shows difference between the data points for one or more categories.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", @@ -18,7 +18,7 @@ }, "packagePath": "com.mendix.widget.web", "marketplace": { - "minimumMXVersion": "9.6.0", + "minimumMXVersion": "9.24.0.2965", "appName": "Bar Chart" }, "testProject": { diff --git a/packages/pluggableWidgets/bar-chart-web/src/package.xml b/packages/pluggableWidgets/bar-chart-web/src/package.xml index 687257e3a7..1635f82b8b 100644 --- a/packages/pluggableWidgets/bar-chart-web/src/package.xml +++ b/packages/pluggableWidgets/bar-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md b/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md index e3b816fac4..c52c747f7f 100644 --- a/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md @@ -6,8 +6,6 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] -## [6.2.0] - 2025-06-03 - ### Fixed - We fixed an issue with aggregate being removed on plotly 3.0 diff --git a/packages/pluggableWidgets/bubble-chart-web/package.json b/packages/pluggableWidgets/bubble-chart-web/package.json index 055276a8d6..46b460454d 100644 --- a/packages/pluggableWidgets/bubble-chart-web/package.json +++ b/packages/pluggableWidgets/bubble-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/bubble-chart-web", "widgetName": "BubbleChart", - "version": "6.2.0", + "version": "6.1.0", "description": "Shows data in a bubble format graph.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", @@ -18,7 +18,7 @@ }, "packagePath": "com.mendix.widget.web", "marketplace": { - "minimumMXVersion": "9.6.0", + "minimumMXVersion": "9.24.0.2965", "appName": "Bubble Chart" }, "testProject": { diff --git a/packages/pluggableWidgets/bubble-chart-web/src/package.xml b/packages/pluggableWidgets/bubble-chart-web/src/package.xml index 118cdd6a80..5eaaffda04 100644 --- a/packages/pluggableWidgets/bubble-chart-web/src/package.xml +++ b/packages/pluggableWidgets/bubble-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/charts-web/CHANGELOG.md b/packages/pluggableWidgets/charts-web/CHANGELOG.md index 380d19f3e3..cf26e714af 100644 --- a/packages/pluggableWidgets/charts-web/CHANGELOG.md +++ b/packages/pluggableWidgets/charts-web/CHANGELOG.md @@ -6,56 +6,6 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] -## [6.2.0] Charts - 2025-06-03 - -### [6.2.0] AreaChart - -#### Fixed - -- We fixed an issue with aggregate being removed on plotly 3.0 - -### [6.2.0] BarChart - -#### Fixed - -- We fixed an issue with aggregate being removed on plotly 3.0 - -### [6.2.0] BubbleChart - -#### Fixed - -- We fixed an issue with aggregate being removed on plotly 3.0 - -### [6.2.0] ColumnChart - -#### Fixed - -- We fixed an issue with aggregate being removed on plotly 3.0 - -### [1.2.0] CustomChart - -#### Changed - -- We increase the version to update shared code. - -### [6.2.0] LineChart - -#### Fixed - -- We fixed an issue with aggregate being removed on plotly 3.0 - -### [6.2.0] PieChart - -#### Changed - -- We increase the version to update shared code. - -### [6.2.0] TimeSeries - -#### Fixed - -- We fixed an issue with aggregate being removed on plotly 3.0 - ## [6.0.1] Charts - 2025-05-14 ### [1.0.1] CustomChart diff --git a/packages/pluggableWidgets/charts-web/package.json b/packages/pluggableWidgets/charts-web/package.json index 8ab734d550..70d0e54417 100644 --- a/packages/pluggableWidgets/charts-web/package.json +++ b/packages/pluggableWidgets/charts-web/package.json @@ -1,6 +1,6 @@ { "name": "@mendix/charts-web", - "version": "6.2.0", + "version": "6.1.0", "description": "Chart widgets collection for data visualization", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", @@ -28,7 +28,7 @@ }, "packagePath": "com.mendix.widget.web", "marketplace": { - "minimumMXVersion": "10.6.0.23934", + "minimumMXVersion": "9.24.0.2965", "appNumber": 105695, "appName": "Charts", "reactReady": true diff --git a/packages/pluggableWidgets/charts-web/src/package.xml b/packages/pluggableWidgets/charts-web/src/package.xml index 3291946680..4371765393 100644 --- a/packages/pluggableWidgets/charts-web/src/package.xml +++ b/packages/pluggableWidgets/charts-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/column-chart-web/CHANGELOG.md b/packages/pluggableWidgets/column-chart-web/CHANGELOG.md index 0376ce0467..39a7cc39a6 100644 --- a/packages/pluggableWidgets/column-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/column-chart-web/CHANGELOG.md @@ -6,8 +6,6 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] -## [6.2.0] - 2025-06-03 - ### Fixed - We fixed an issue with aggregate being removed on plotly 3.0 diff --git a/packages/pluggableWidgets/column-chart-web/package.json b/packages/pluggableWidgets/column-chart-web/package.json index 9d22a35101..e7265d8c8c 100644 --- a/packages/pluggableWidgets/column-chart-web/package.json +++ b/packages/pluggableWidgets/column-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/column-chart-web", "widgetName": "ColumnChart", - "version": "6.2.0", + "version": "6.1.0", "description": "Shows data in a column format graph.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", @@ -18,7 +18,7 @@ }, "packagePath": "com.mendix.widget.web", "marketplace": { - "minimumMXVersion": "9.6.0", + "minimumMXVersion": "9.24.0.2965", "appName": "Column Chart" }, "testProject": { diff --git a/packages/pluggableWidgets/column-chart-web/src/package.xml b/packages/pluggableWidgets/column-chart-web/src/package.xml index 543022649e..1026213549 100644 --- a/packages/pluggableWidgets/column-chart-web/src/package.xml +++ b/packages/pluggableWidgets/column-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md index 0d53035801..bdce82f108 100644 --- a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md @@ -6,8 +6,6 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] -## [1.2.0] - 2025-06-03 - ### Changed - We increase the version to update shared code. diff --git a/packages/pluggableWidgets/custom-chart-web/package.json b/packages/pluggableWidgets/custom-chart-web/package.json index 5915b281ea..93c278332f 100644 --- a/packages/pluggableWidgets/custom-chart-web/package.json +++ b/packages/pluggableWidgets/custom-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/custom-chart-web", "widgetName": "CustomChart", - "version": "1.2.0", + "version": "1.1.0", "description": "", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", @@ -20,7 +20,7 @@ }, "packagePath": "com.mendix.widget.web", "marketplace": { - "minimumMXVersion": "10.16.0", + "minimumMXVersion": "9.24.0.2965", "appNumber": 1234, "appName": "Custom chart" }, diff --git a/packages/pluggableWidgets/custom-chart-web/src/package.xml b/packages/pluggableWidgets/custom-chart-web/src/package.xml index b63d811c08..8fa524fe89 100644 --- a/packages/pluggableWidgets/custom-chart-web/src/package.xml +++ b/packages/pluggableWidgets/custom-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/line-chart-web/package.json b/packages/pluggableWidgets/line-chart-web/package.json index 6d468db2d2..8835af1500 100644 --- a/packages/pluggableWidgets/line-chart-web/package.json +++ b/packages/pluggableWidgets/line-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/line-chart-web", "widgetName": "LineChart", - "version": "6.2.0", + "version": "6.1.0", "description": "Shows data in a line format graph.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", @@ -18,7 +18,7 @@ }, "packagePath": "com.mendix.widget.web", "marketplace": { - "minimumMXVersion": "9.6.0", + "minimumMXVersion": "9.24.0.2965", "appName": "Line Chart" }, "testProject": { diff --git a/packages/pluggableWidgets/line-chart-web/src/package.xml b/packages/pluggableWidgets/line-chart-web/src/package.xml index 8b9f9e1c98..70ce0881cc 100644 --- a/packages/pluggableWidgets/line-chart-web/src/package.xml +++ b/packages/pluggableWidgets/line-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/pie-doughnut-chart-web/CHANGELOG.md b/packages/pluggableWidgets/pie-doughnut-chart-web/CHANGELOG.md index e55eb02fd4..149a1eb799 100644 --- a/packages/pluggableWidgets/pie-doughnut-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/pie-doughnut-chart-web/CHANGELOG.md @@ -6,11 +6,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] -## [6.2.0] - 2025-06-03 +### Breaking -### Changed - -- We increase the version to update shared code. +- We remove listened to selection in order for charts to works on Studio Pro 9.24. ## [6.0.0] - 2025-02-28 diff --git a/packages/pluggableWidgets/pie-doughnut-chart-web/package.json b/packages/pluggableWidgets/pie-doughnut-chart-web/package.json index 5b1dbdcfc5..aac421fb42 100644 --- a/packages/pluggableWidgets/pie-doughnut-chart-web/package.json +++ b/packages/pluggableWidgets/pie-doughnut-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/pie-doughnut-chart-web", "widgetName": "PieChart", - "version": "6.2.0", + "version": "6.1.0", "description": "Shows data in a pie format graph.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", @@ -18,7 +18,7 @@ }, "packagePath": "com.mendix.widget.web", "marketplace": { - "minimumMXVersion": "9.6.0", + "minimumMXVersion": "9.24.0", "appName": "Pie Chart" }, "testProject": { diff --git a/packages/pluggableWidgets/pie-doughnut-chart-web/src/PieChart.tsx b/packages/pluggableWidgets/pie-doughnut-chart-web/src/PieChart.tsx index 97513e3f02..0dce3dba91 100644 --- a/packages/pluggableWidgets/pie-doughnut-chart-web/src/PieChart.tsx +++ b/packages/pluggableWidgets/pie-doughnut-chart-web/src/PieChart.tsx @@ -39,11 +39,10 @@ export function PieChart(props: PieChartContainerProps): ReactElement | null { seriesSortOrder: props.seriesSortOrder, seriesValueAttribute: props.seriesValueAttribute, onClickAction: props.onClickAction, - tooltipHoverText: props.tooltipHoverText, - seriesItemSelection: props.seriesItemSelection + tooltipHoverText: props.tooltipHoverText }); - const isPieClickable = props.seriesItemSelection?.type === "Single" || props.onClickAction; + const isPieClickable = props.onClickAction; return ( - - Selection type - - - - - - diff --git a/packages/pluggableWidgets/pie-doughnut-chart-web/src/hooks/data.ts b/packages/pluggableWidgets/pie-doughnut-chart-web/src/hooks/data.ts index 084bb505e7..8db2b91da6 100644 --- a/packages/pluggableWidgets/pie-doughnut-chart-web/src/hooks/data.ts +++ b/packages/pluggableWidgets/pie-doughnut-chart-web/src/hooks/data.ts @@ -18,7 +18,6 @@ type PieChartDataSeriesHooks = Pick< | "seriesSortOrder" | "seriesValueAttribute" | "tooltipHoverText" - | "seriesItemSelection" >; type LocalPieChartData = { @@ -39,8 +38,7 @@ export const usePieChartDataSeries = ({ seriesSortOrder, seriesValueAttribute, onClickAction, - tooltipHoverText, - seriesItemSelection + tooltipHoverText }: PieChartDataSeriesHooks): ChartWidgetProps["data"] => { const [pieChartData, setPieChartData] = useState([]); @@ -76,11 +74,8 @@ export const usePieChartDataSeries = ({ const onClick = useCallback( (item: ObjectItem) => { executeAction(onClickAction?.get(item)); - if (seriesItemSelection && seriesItemSelection.type === "Single") { - seriesItemSelection.setSelection(item); - } }, - [onClickAction, seriesItemSelection] + [onClickAction] ); return useMemo( diff --git a/packages/pluggableWidgets/pie-doughnut-chart-web/src/package.xml b/packages/pluggableWidgets/pie-doughnut-chart-web/src/package.xml index c19a1068a7..f7f090af32 100644 --- a/packages/pluggableWidgets/pie-doughnut-chart-web/src/package.xml +++ b/packages/pluggableWidgets/pie-doughnut-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/pie-doughnut-chart-web/typings/PieChartProps.d.ts b/packages/pluggableWidgets/pie-doughnut-chart-web/typings/PieChartProps.d.ts index f5dc83b04f..003f501dc5 100644 --- a/packages/pluggableWidgets/pie-doughnut-chart-web/typings/PieChartProps.d.ts +++ b/packages/pluggableWidgets/pie-doughnut-chart-web/typings/PieChartProps.d.ts @@ -4,7 +4,7 @@ * @author Mendix Widgets Framework Team */ import { ComponentType, CSSProperties, ReactNode } from "react"; -import { ListValue, ListActionValue, ListAttributeValue, ListExpressionValue, SelectionSingleValue } from "mendix"; +import { ListValue, ListActionValue, ListAttributeValue, ListExpressionValue } from "mendix"; import { Big } from "big.js"; export type SeriesSortOrderEnum = "asc" | "desc"; @@ -24,7 +24,6 @@ export interface PieChartContainerProps { seriesSortAttribute?: ListAttributeValue; seriesSortOrder: SeriesSortOrderEnum; seriesColorAttribute?: ListExpressionValue; - seriesItemSelection?: SelectionSingleValue; enableAdvancedOptions: boolean; showPlaygroundSlot: boolean; playground?: ReactNode; @@ -59,7 +58,6 @@ export interface PieChartPreviewProps { seriesSortAttribute: string; seriesSortOrder: SeriesSortOrderEnum; seriesColorAttribute: string; - seriesItemSelection: "None" | "Single"; enableAdvancedOptions: boolean; showPlaygroundSlot: boolean; playground: { widgetCount: number; renderer: ComponentType<{ children: ReactNode; caption?: string }> }; diff --git a/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md b/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md index fa7a135ccb..d37da0bc7a 100644 --- a/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md @@ -6,8 +6,6 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] -## [6.2.0] - 2025-06-03 - ### Fixed - We fixed an issue with aggregate being removed on plotly 3.0 diff --git a/packages/pluggableWidgets/time-series-chart-web/package.json b/packages/pluggableWidgets/time-series-chart-web/package.json index b542d46aad..c2fdc2784d 100644 --- a/packages/pluggableWidgets/time-series-chart-web/package.json +++ b/packages/pluggableWidgets/time-series-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/time-series-chart-web", "widgetName": "TimeSeries", - "version": "6.2.0", + "version": "6.1.0", "description": "Shows data changes over period of time.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", @@ -18,7 +18,7 @@ }, "packagePath": "com.mendix.widget.web", "marketplace": { - "minimumMXVersion": "9.6.0", + "minimumMXVersion": "9.24.0", "appName": "Time Series" }, "testProject": { diff --git a/packages/pluggableWidgets/time-series-chart-web/src/package.xml b/packages/pluggableWidgets/time-series-chart-web/src/package.xml index ea4fcbe768..2a354128a5 100644 --- a/packages/pluggableWidgets/time-series-chart-web/src/package.xml +++ b/packages/pluggableWidgets/time-series-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/shared/charts/package.json b/packages/shared/charts/package.json index a60cfe5125..cd0791308f 100644 --- a/packages/shared/charts/package.json +++ b/packages/shared/charts/package.json @@ -1,6 +1,6 @@ { "name": "@mendix/shared-charts", - "version": "2.2.0", + "version": "2.1.0", "description": "Shared components for charts", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "private": true, From 5ac6dd8e646304119ffff6040b33208b1180a26c Mon Sep 17 00:00:00 2001 From: Content Teams Date: Wed, 4 Jun 2025 08:17:26 +0000 Subject: [PATCH 02/13] chore(@mendix/charts-web): update changelog --- .../area-chart-web/CHANGELOG.md | 2 + .../bar-chart-web/CHANGELOG.md | 2 + .../bubble-chart-web/CHANGELOG.md | 2 + .../pluggableWidgets/charts-web/CHANGELOG.md | 38 +++++++++++++++++++ .../column-chart-web/CHANGELOG.md | 2 + .../custom-chart-web/CHANGELOG.md | 2 + .../time-series-chart-web/CHANGELOG.md | 2 + 7 files changed, 50 insertions(+) diff --git a/packages/pluggableWidgets/area-chart-web/CHANGELOG.md b/packages/pluggableWidgets/area-chart-web/CHANGELOG.md index 8005213746..5b2a1b9941 100644 --- a/packages/pluggableWidgets/area-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/area-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.0] - 2025-06-04 + ### Fixed - We fixed an issue with aggregate being removed on plotly 3.0 diff --git a/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md b/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md index bea2351647..f710048571 100644 --- a/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.0] - 2025-06-04 + ### Fixed - We fixed an issue with aggregate being removed on plotly 3.0 diff --git a/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md b/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md index c52c747f7f..c0913cac5e 100644 --- a/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.0] - 2025-06-04 + ### Fixed - We fixed an issue with aggregate being removed on plotly 3.0 diff --git a/packages/pluggableWidgets/charts-web/CHANGELOG.md b/packages/pluggableWidgets/charts-web/CHANGELOG.md index cf26e714af..27dd66caeb 100644 --- a/packages/pluggableWidgets/charts-web/CHANGELOG.md +++ b/packages/pluggableWidgets/charts-web/CHANGELOG.md @@ -6,6 +6,44 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.0] Charts - 2025-06-04 + +### [6.1.0] AreaChart + +#### Fixed + +- We fixed an issue with aggregate being removed on plotly 3.0 + +### [6.1.0] BarChart + +#### Fixed + +- We fixed an issue with aggregate being removed on plotly 3.0 + +### [6.1.0] BubbleChart + +#### Fixed + +- We fixed an issue with aggregate being removed on plotly 3.0 + +### [6.1.0] ColumnChart + +#### Fixed + +- We fixed an issue with aggregate being removed on plotly 3.0 + +### [1.1.0] CustomChart + +#### Changed + +- We increase the version to update shared code. + +### [6.1.0] TimeSeries + +#### Fixed + +- We fixed an issue with aggregate being removed on plotly 3.0 + ## [6.0.1] Charts - 2025-05-14 ### [1.0.1] CustomChart diff --git a/packages/pluggableWidgets/column-chart-web/CHANGELOG.md b/packages/pluggableWidgets/column-chart-web/CHANGELOG.md index 39a7cc39a6..c46fb7a2de 100644 --- a/packages/pluggableWidgets/column-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/column-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.0] - 2025-06-04 + ### Fixed - We fixed an issue with aggregate being removed on plotly 3.0 diff --git a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md index bdce82f108..17280a4de0 100644 --- a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [1.1.0] - 2025-06-04 + ### Changed - We increase the version to update shared code. diff --git a/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md b/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md index d37da0bc7a..1de24b82f1 100644 --- a/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.0] - 2025-06-04 + ### Fixed - We fixed an issue with aggregate being removed on plotly 3.0 From 58fd1d9d4aba38f0b28acd1aa032464eab1c4f6e Mon Sep 17 00:00:00 2001 From: gjulivan Date: Tue, 24 Jun 2025 11:55:11 +0200 Subject: [PATCH 03/13] fix: heatmap update onclick --- .../area-chart-web/CHANGELOG.md | 4 +++ .../area-chart-web/package.json | 2 +- .../area-chart-web/src/package.xml | 2 +- .../bar-chart-web/CHANGELOG.md | 4 +++ .../bar-chart-web/package.json | 2 +- .../bar-chart-web/src/package.xml | 2 +- .../bubble-chart-web/CHANGELOG.md | 4 +++ .../bubble-chart-web/package.json | 2 +- .../bubble-chart-web/src/package.xml | 2 +- .../chart-playground-web/CHANGELOG.md | 4 +++ .../chart-playground-web/package.json | 2 +- .../chart-playground-web/src/package.xml | 2 +- .../pluggableWidgets/charts-web/package.json | 2 +- .../charts-web/src/package.xml | 2 +- .../column-chart-web/CHANGELOG.md | 4 +++ .../column-chart-web/package.json | 2 +- .../column-chart-web/src/package.xml | 2 +- .../custom-chart-web/CHANGELOG.md | 4 +++ .../custom-chart-web/package.json | 2 +- .../custom-chart-web/src/package.xml | 2 +- .../heatmap-chart-web/CHANGELOG.md | 4 +++ .../heatmap-chart-web/package.json | 2 +- .../heatmap-chart-web/src/HeatMap.xml | 2 +- .../heatmap-chart-web/src/hooks/data.ts | 30 +++++++++++++++++-- .../heatmap-chart-web/src/package.xml | 2 +- .../pie-doughnut-chart-web/CHANGELOG.md | 6 ++++ .../pie-doughnut-chart-web/package.json | 2 +- .../pie-doughnut-chart-web/src/package.xml | 2 +- .../time-series-chart-web/CHANGELOG.md | 4 +++ .../time-series-chart-web/package.json | 2 +- .../time-series-chart-web/src/package.xml | 2 +- packages/shared/charts/package.json | 2 +- .../charts/src/components/ChartView.tsx | 14 ++++++--- .../shared/charts/src/components/types.ts | 6 ++-- 34 files changed, 101 insertions(+), 31 deletions(-) diff --git a/packages/pluggableWidgets/area-chart-web/CHANGELOG.md b/packages/pluggableWidgets/area-chart-web/CHANGELOG.md index 5b2a1b9941..b39026087c 100644 --- a/packages/pluggableWidgets/area-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/area-chart-web/CHANGELOG.md @@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +### Changed + +- We updated shared charts dependency. + ## [6.1.0] - 2025-06-04 ### Fixed diff --git a/packages/pluggableWidgets/area-chart-web/package.json b/packages/pluggableWidgets/area-chart-web/package.json index 97b5dafe0f..6072320230 100644 --- a/packages/pluggableWidgets/area-chart-web/package.json +++ b/packages/pluggableWidgets/area-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/area-chart-web", "widgetName": "AreaChart", - "version": "6.1.0", + "version": "6.1.1", "description": "An area chart displays a solid color between the traces of a graph.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", diff --git a/packages/pluggableWidgets/area-chart-web/src/package.xml b/packages/pluggableWidgets/area-chart-web/src/package.xml index 2087397b03..6248233e6f 100644 --- a/packages/pluggableWidgets/area-chart-web/src/package.xml +++ b/packages/pluggableWidgets/area-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md b/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md index f710048571..ce742de066 100644 --- a/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md @@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +### Changed + +- We updated shared charts dependency. + ## [6.1.0] - 2025-06-04 ### Fixed diff --git a/packages/pluggableWidgets/bar-chart-web/package.json b/packages/pluggableWidgets/bar-chart-web/package.json index 720240e29f..7e2956c529 100644 --- a/packages/pluggableWidgets/bar-chart-web/package.json +++ b/packages/pluggableWidgets/bar-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/bar-chart-web", "widgetName": "BarChart", - "version": "6.1.0", + "version": "6.1.1", "description": "Shows difference between the data points for one or more categories.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", diff --git a/packages/pluggableWidgets/bar-chart-web/src/package.xml b/packages/pluggableWidgets/bar-chart-web/src/package.xml index 1635f82b8b..bfe0b65836 100644 --- a/packages/pluggableWidgets/bar-chart-web/src/package.xml +++ b/packages/pluggableWidgets/bar-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md b/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md index c0913cac5e..97c9a16513 100644 --- a/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md @@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +### Changed + +- We updated shared charts dependency. + ## [6.1.0] - 2025-06-04 ### Fixed diff --git a/packages/pluggableWidgets/bubble-chart-web/package.json b/packages/pluggableWidgets/bubble-chart-web/package.json index 46b460454d..cedd52e2f2 100644 --- a/packages/pluggableWidgets/bubble-chart-web/package.json +++ b/packages/pluggableWidgets/bubble-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/bubble-chart-web", "widgetName": "BubbleChart", - "version": "6.1.0", + "version": "6.1.1", "description": "Shows data in a bubble format graph.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", diff --git a/packages/pluggableWidgets/bubble-chart-web/src/package.xml b/packages/pluggableWidgets/bubble-chart-web/src/package.xml index 5eaaffda04..7e74f83a85 100644 --- a/packages/pluggableWidgets/bubble-chart-web/src/package.xml +++ b/packages/pluggableWidgets/bubble-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/chart-playground-web/CHANGELOG.md b/packages/pluggableWidgets/chart-playground-web/CHANGELOG.md index 2299c110d3..a3f1fc968d 100644 --- a/packages/pluggableWidgets/chart-playground-web/CHANGELOG.md +++ b/packages/pluggableWidgets/chart-playground-web/CHANGELOG.md @@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +### Changed + +- We updated shared charts dependency. + ## [2.0.0] - 2025-02-28 ### Changed diff --git a/packages/pluggableWidgets/chart-playground-web/package.json b/packages/pluggableWidgets/chart-playground-web/package.json index b7437c73df..33564aa468 100644 --- a/packages/pluggableWidgets/chart-playground-web/package.json +++ b/packages/pluggableWidgets/chart-playground-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/chart-playground-web", "widgetName": "ChartPlayground", - "version": "2.0.0", + "version": "2.0.1", "description": "A small playground widget for charts", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", diff --git a/packages/pluggableWidgets/chart-playground-web/src/package.xml b/packages/pluggableWidgets/chart-playground-web/src/package.xml index d4b762fbec..ab684e5183 100644 --- a/packages/pluggableWidgets/chart-playground-web/src/package.xml +++ b/packages/pluggableWidgets/chart-playground-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/charts-web/package.json b/packages/pluggableWidgets/charts-web/package.json index 70d0e54417..199b9e88b4 100644 --- a/packages/pluggableWidgets/charts-web/package.json +++ b/packages/pluggableWidgets/charts-web/package.json @@ -1,6 +1,6 @@ { "name": "@mendix/charts-web", - "version": "6.1.0", + "version": "6.1.1", "description": "Chart widgets collection for data visualization", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", diff --git a/packages/pluggableWidgets/charts-web/src/package.xml b/packages/pluggableWidgets/charts-web/src/package.xml index 4371765393..88ef151efa 100644 --- a/packages/pluggableWidgets/charts-web/src/package.xml +++ b/packages/pluggableWidgets/charts-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/column-chart-web/CHANGELOG.md b/packages/pluggableWidgets/column-chart-web/CHANGELOG.md index c46fb7a2de..f3cd1b10d9 100644 --- a/packages/pluggableWidgets/column-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/column-chart-web/CHANGELOG.md @@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +### Changed + +- We updated shared charts dependency. + ## [6.1.0] - 2025-06-04 ### Fixed diff --git a/packages/pluggableWidgets/column-chart-web/package.json b/packages/pluggableWidgets/column-chart-web/package.json index e7265d8c8c..f6075687ae 100644 --- a/packages/pluggableWidgets/column-chart-web/package.json +++ b/packages/pluggableWidgets/column-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/column-chart-web", "widgetName": "ColumnChart", - "version": "6.1.0", + "version": "6.1.1", "description": "Shows data in a column format graph.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", diff --git a/packages/pluggableWidgets/column-chart-web/src/package.xml b/packages/pluggableWidgets/column-chart-web/src/package.xml index 1026213549..7f6b2de5a5 100644 --- a/packages/pluggableWidgets/column-chart-web/src/package.xml +++ b/packages/pluggableWidgets/column-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md index 17280a4de0..2e0a0daa1a 100644 --- a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md @@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +### Changed + +- We updated shared charts dependency. + ## [1.1.0] - 2025-06-04 ### Changed diff --git a/packages/pluggableWidgets/custom-chart-web/package.json b/packages/pluggableWidgets/custom-chart-web/package.json index 93c278332f..2cc106aa43 100644 --- a/packages/pluggableWidgets/custom-chart-web/package.json +++ b/packages/pluggableWidgets/custom-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/custom-chart-web", "widgetName": "CustomChart", - "version": "1.1.0", + "version": "1.1.1", "description": "", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", diff --git a/packages/pluggableWidgets/custom-chart-web/src/package.xml b/packages/pluggableWidgets/custom-chart-web/src/package.xml index 8fa524fe89..b2d469ab57 100644 --- a/packages/pluggableWidgets/custom-chart-web/src/package.xml +++ b/packages/pluggableWidgets/custom-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/heatmap-chart-web/CHANGELOG.md b/packages/pluggableWidgets/heatmap-chart-web/CHANGELOG.md index a217374a92..f7f84a6624 100644 --- a/packages/pluggableWidgets/heatmap-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/heatmap-chart-web/CHANGELOG.md @@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +### Fixed + +- We fixed on click events by correctly adding datasource. + ## [6.0.0] - 2025-02-28 ### Changed diff --git a/packages/pluggableWidgets/heatmap-chart-web/package.json b/packages/pluggableWidgets/heatmap-chart-web/package.json index 38200905a9..23ad296da0 100644 --- a/packages/pluggableWidgets/heatmap-chart-web/package.json +++ b/packages/pluggableWidgets/heatmap-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/heatmap-chart-web", "widgetName": "HeatMap", - "version": "6.0.0", + "version": "6.1.1", "description": "Shows data in a heatmap format graph.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", diff --git a/packages/pluggableWidgets/heatmap-chart-web/src/HeatMap.xml b/packages/pluggableWidgets/heatmap-chart-web/src/HeatMap.xml index 4fb1191485..3e6fbf874b 100644 --- a/packages/pluggableWidgets/heatmap-chart-web/src/HeatMap.xml +++ b/packages/pluggableWidgets/heatmap-chart-web/src/HeatMap.xml @@ -184,7 +184,7 @@ - + On click action diff --git a/packages/pluggableWidgets/heatmap-chart-web/src/hooks/data.ts b/packages/pluggableWidgets/heatmap-chart-web/src/hooks/data.ts index 2060fb04ee..2afabc82d6 100644 --- a/packages/pluggableWidgets/heatmap-chart-web/src/hooks/data.ts +++ b/packages/pluggableWidgets/heatmap-chart-web/src/hooks/data.ts @@ -1,10 +1,11 @@ -import { ValueStatus } from "mendix"; -import { useEffect, useMemo, useState } from "react"; +import { ObjectItem, ValueStatus } from "mendix"; +import { useCallback, useEffect, useMemo, useRef, useState } from "react"; import { ensure } from "@mendix/pluggable-widgets-tools"; import { HeatMapContainerProps } from "../../typings/HeatMapProps"; import { ChartWidgetProps, compareAttrValuesAsc } from "@mendix/shared-charts/main"; import { executeAction } from "@mendix/widget-plugin-platform/framework/execute-action"; import Big from "big.js"; +import { PlotDatum } from "plotly.js-dist-min"; type HeatMapDataSeriesHooks = Pick< HeatMapContainerProps, @@ -67,6 +68,7 @@ export const useHeatMapDataSeries = ({ verticalSortOrder }: HeatMapDataSeriesHooks): HeatMapHookData => { const [heatmapChartData, setHeatMapData] = useState([]); + const objectMap = useRef>(new Map()); useEffect(() => { if (seriesDataSource.status === ValueStatus.Available && seriesDataSource.items) { @@ -90,7 +92,29 @@ export const useHeatMapDataSeries = ({ verticalSortAttribute ]); - const onClick = useMemo(() => (onClickAction ? () => executeAction(onClickAction) : undefined), [onClickAction]); + const onClick = useCallback( + (item: ObjectItem, data: PlotDatum) => { + let selectedObjectItem: ObjectItem | undefined = item; + if (selectedObjectItem === null || selectedObjectItem === undefined) { + const selectedLocalHeatmapData = heatmapChartData.values().find(heatMapPointData => { + return ( + heatMapPointData.horizontalAxisValue === data.x && + heatMapPointData.verticalAxisValue === data.y && + heatMapPointData.value === data.z + ); + }); + + if (selectedLocalHeatmapData) { + selectedObjectItem = objectMap.current.get(selectedLocalHeatmapData.id); + } + } + + if (selectedObjectItem) { + executeAction(onClickAction?.get(selectedObjectItem)); + } + }, + [onClickAction, heatmapChartData, seriesItemSelection] + ); return useMemo(() => { // `Array.reverse` mutates, so we make a copy. diff --git a/packages/pluggableWidgets/heatmap-chart-web/src/package.xml b/packages/pluggableWidgets/heatmap-chart-web/src/package.xml index 307cdfc052..4a8df91434 100644 --- a/packages/pluggableWidgets/heatmap-chart-web/src/package.xml +++ b/packages/pluggableWidgets/heatmap-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/pie-doughnut-chart-web/CHANGELOG.md b/packages/pluggableWidgets/pie-doughnut-chart-web/CHANGELOG.md index 149a1eb799..30f1b89e30 100644 --- a/packages/pluggableWidgets/pie-doughnut-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/pie-doughnut-chart-web/CHANGELOG.md @@ -6,6 +6,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +### Changed + +- We updated shared charts dependency. + +## [6.1.0] - 2025-06-04 + ### Breaking - We remove listened to selection in order for charts to works on Studio Pro 9.24. diff --git a/packages/pluggableWidgets/pie-doughnut-chart-web/package.json b/packages/pluggableWidgets/pie-doughnut-chart-web/package.json index aac421fb42..866632cea4 100644 --- a/packages/pluggableWidgets/pie-doughnut-chart-web/package.json +++ b/packages/pluggableWidgets/pie-doughnut-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/pie-doughnut-chart-web", "widgetName": "PieChart", - "version": "6.1.0", + "version": "6.1.1", "description": "Shows data in a pie format graph.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", diff --git a/packages/pluggableWidgets/pie-doughnut-chart-web/src/package.xml b/packages/pluggableWidgets/pie-doughnut-chart-web/src/package.xml index f7f090af32..04d9c2c693 100644 --- a/packages/pluggableWidgets/pie-doughnut-chart-web/src/package.xml +++ b/packages/pluggableWidgets/pie-doughnut-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md b/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md index 1de24b82f1..bb2af34ea5 100644 --- a/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md @@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +### Changed + +- We updated shared charts dependency. + ## [6.1.0] - 2025-06-04 ### Fixed diff --git a/packages/pluggableWidgets/time-series-chart-web/package.json b/packages/pluggableWidgets/time-series-chart-web/package.json index c2fdc2784d..c8a44a109b 100644 --- a/packages/pluggableWidgets/time-series-chart-web/package.json +++ b/packages/pluggableWidgets/time-series-chart-web/package.json @@ -1,7 +1,7 @@ { "name": "@mendix/time-series-chart-web", "widgetName": "TimeSeries", - "version": "6.1.0", + "version": "6.1.1", "description": "Shows data changes over period of time.", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", diff --git a/packages/pluggableWidgets/time-series-chart-web/src/package.xml b/packages/pluggableWidgets/time-series-chart-web/src/package.xml index 2a354128a5..31208498ef 100644 --- a/packages/pluggableWidgets/time-series-chart-web/src/package.xml +++ b/packages/pluggableWidgets/time-series-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/packages/shared/charts/package.json b/packages/shared/charts/package.json index cd0791308f..7b26e21ae5 100644 --- a/packages/shared/charts/package.json +++ b/packages/shared/charts/package.json @@ -1,6 +1,6 @@ { "name": "@mendix/shared-charts", - "version": "2.1.0", + "version": "2.1.1", "description": "Shared components for charts", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "private": true, diff --git a/packages/shared/charts/src/components/ChartView.tsx b/packages/shared/charts/src/components/ChartView.tsx index 3ef04c5837..d8fd5856de 100644 --- a/packages/shared/charts/src/components/ChartView.tsx +++ b/packages/shared/charts/src/components/ChartView.tsx @@ -32,10 +32,16 @@ export const ChartView = ({ const [{ curveNumber, pointIndex, pointIndices, pointNumber, pointNumbers }] = event.points; const index = pointIndex ?? pointNumber; const indices = pointIndices ?? pointNumbers; - const itemIndex = getItemIndex(index, indices); - const { dataSourceItems, onClick } = data[curveNumber]; - const item = dataSourceItems[itemIndex]; - onClick?.(item); + try { + const itemIndex = getItemIndex(index, indices); + const { dataSourceItems, onClick } = data[curveNumber]; + const item = dataSourceItems[itemIndex]; + onClick?.(item); + } catch (_e: any) { + // let the chart handle it's own onClick + const { onClick } = data[curveNumber]; + onClick?.(null, event.points[0]); + } }, [data] ); diff --git a/packages/shared/charts/src/components/types.ts b/packages/shared/charts/src/components/types.ts index d101cd784f..cdeb918657 100644 --- a/packages/shared/charts/src/components/types.ts +++ b/packages/shared/charts/src/components/types.ts @@ -1,11 +1,13 @@ import { ObjectItem } from "mendix"; -import { Config, Data, Layout } from "plotly.js-dist-min"; +import { Config, Data, Layout, PlotDatum } from "plotly.js-dist-min"; declare module "plotly.js-dist-min" { interface PlotDatum { /** This array appears on only when aggregation is used */ pointIndices?: number[]; pointNumbers?: number[]; + // this is only appear on 3 dimentional matrix datasource + z?: number; } } export type ExtraTraceProps = { @@ -14,7 +16,7 @@ export type ExtraTraceProps = { /** JSON string. Expected to be an object with custom 'trace' options. */ customSeriesOptions: string | undefined; /** Click handler for each point on current 'trace'. Should be call with ObjectItem associated with clicked point. */ - onClick?: (item: ObjectItem) => void; + onClick?: (item: ObjectItem | null, data?: Partial) => void; }; export type PlotTrace = Partial & ExtraTraceProps; From 461e3273536a04a04e86cbe4c7a767be2fdc3de0 Mon Sep 17 00:00:00 2001 From: Samuel Reichert Date: Tue, 1 Jul 2025 13:37:21 +0200 Subject: [PATCH 04/13] fix(custom-chart-web): fix data and layout parsing to merge sample when attribute is empty --- .../custom-chart-web/src/utils/utils.ts | 26 +++++++------------ 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/packages/pluggableWidgets/custom-chart-web/src/utils/utils.ts b/packages/pluggableWidgets/custom-chart-web/src/utils/utils.ts index 75a6c72817..9e42663c40 100644 --- a/packages/pluggableWidgets/custom-chart-web/src/utils/utils.ts +++ b/packages/pluggableWidgets/custom-chart-web/src/utils/utils.ts @@ -3,14 +3,11 @@ export function parseData(staticData?: string, attributeData?: string, sampleDat let finalData: Data[] = []; try { - if (staticData) { - finalData = [...finalData, ...JSON.parse(staticData)]; - } - if (attributeData) { - finalData = [...finalData, ...JSON.parse(attributeData)]; - } - if (!finalData.length && sampleData) { - finalData = [...finalData, ...JSON.parse(sampleData)]; + const dataAttribute = attributeData ? JSON.parse(attributeData) : []; + finalData = [...finalData, ...(staticData ? JSON.parse(staticData) : []), ...dataAttribute]; + + if (dataAttribute.length === 0) { + finalData = [...finalData, ...(sampleData ? JSON.parse(sampleData) : [])]; } } catch (error) { console.error("Error parsing chart data:", error); @@ -23,14 +20,11 @@ export function parseLayout(staticLayout?: string, attributeLayout?: string, sam let finalLayout: Partial = {}; try { - if (staticLayout) { - finalLayout = { ...finalLayout, ...JSON.parse(staticLayout) }; - } - if (attributeLayout) { - finalLayout = { ...finalLayout, ...JSON.parse(attributeLayout) }; - } - if (Object.keys(finalLayout).length === 0 && sampleLayout) { - finalLayout = { ...finalLayout, ...JSON.parse(sampleLayout) }; + const layoutAttribute = attributeLayout ? JSON.parse(attributeLayout) : {}; + finalLayout = { ...finalLayout, ...(staticLayout ? JSON.parse(staticLayout) : {}), ...layoutAttribute }; + + if (Object.keys(layoutAttribute).length === 0) { + finalLayout = { ...finalLayout, ...(sampleLayout ? JSON.parse(sampleLayout) : {}) }; } } catch (error) { console.error("Error parsing chart layout:", error); From daafd8828770d67e6236494927b9d167a4b6256c Mon Sep 17 00:00:00 2001 From: Samuel Reichert Date: Tue, 1 Jul 2025 13:43:45 +0200 Subject: [PATCH 05/13] chore(custom-chart-web): update changelog --- packages/pluggableWidgets/custom-chart-web/CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md index 2e0a0daa1a..8388f0cb4b 100644 --- a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md @@ -6,9 +6,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] -### Changed +### Fixed -- We updated shared charts dependency. +- We fixed an issue with incorrect parsing and merging of layout and data properties. ## [1.1.0] - 2025-06-04 From c2184ee41667ce454270998847f0beb4d6ab7266 Mon Sep 17 00:00:00 2001 From: Samuel Reichert Date: Thu, 3 Jul 2025 17:11:02 +0200 Subject: [PATCH 06/13] test(custom-chart-web): add unit tests for parseData, parseLayout, and parseConfig functions --- .../custom-chart-web/package.json | 2 +- .../custom-chart-web/src/utils/utils.spec.ts | 56 +++++++++++++++++++ 2 files changed, 57 insertions(+), 1 deletion(-) create mode 100644 packages/pluggableWidgets/custom-chart-web/src/utils/utils.spec.ts diff --git a/packages/pluggableWidgets/custom-chart-web/package.json b/packages/pluggableWidgets/custom-chart-web/package.json index 2cc106aa43..04835da0db 100644 --- a/packages/pluggableWidgets/custom-chart-web/package.json +++ b/packages/pluggableWidgets/custom-chart-web/package.json @@ -39,7 +39,7 @@ "publish-marketplace": "rui-publish-marketplace", "release": "cross-env NODE_OPTIONS=--max-old-space-size=8192 pluggable-widgets-tools release:web", "start": "cross-env NODE_OPTIONS=--max-old-space-size=8192 pluggable-widgets-tools start:server", - "test": "echo 'FIXME: Finish custom-chart-web unit test migration'", + "test": "pluggable-widgets-tools test:unit:web:enzyme-free", "update-changelog": "rui-update-changelog-widget", "verify": "rui-verify-package-format" }, diff --git a/packages/pluggableWidgets/custom-chart-web/src/utils/utils.spec.ts b/packages/pluggableWidgets/custom-chart-web/src/utils/utils.spec.ts new file mode 100644 index 0000000000..f420cd1770 --- /dev/null +++ b/packages/pluggableWidgets/custom-chart-web/src/utils/utils.spec.ts @@ -0,0 +1,56 @@ +import { parseData, parseLayout, parseConfig } from "../utils/utils"; + +describe("parseData", () => { + it("returns empty array when all inputs are empty", () => { + expect(parseData()).toEqual([]); + }); + + it("parses staticData only", () => { + const staticData = JSON.stringify([{ x: [1], y: [2] }]); + expect(parseData(staticData)).toEqual([{ x: [1], y: [2] }]); + }); + + it("parses sampleData when attributeData and staticData are empty", () => { + const sampleData = JSON.stringify([{ x: [3], y: [4] }]); + expect(parseData(undefined, undefined, sampleData)).toEqual([{ x: [3], y: [4] }]); + }); + + it("parses attributeData and ignores sampleData if attributeData is present", () => { + const attributeData = JSON.stringify([{ x: [5], y: [6] }]); + const sampleData = JSON.stringify([{ x: [7], y: [8] }]); + expect(parseData(undefined, attributeData, sampleData)).toEqual([{ x: [5], y: [6] }]); + }); +}); + +describe("parseLayout", () => { + it("returns empty object when all inputs are empty", () => { + expect(parseLayout()).toEqual({}); + }); + + it("parses staticLayout only", () => { + const staticLayout = JSON.stringify({ title: "Test" }); + expect(parseLayout(staticLayout)).toEqual({ title: "Test" }); + }); + + it("parses sampleLayout when attributeLayout and staticLayout are empty", () => { + const sampleLayout = JSON.stringify({ title: "Sample" }); + expect(parseLayout(undefined, undefined, sampleLayout)).toEqual({ title: "Sample" }); + }); + + it("parses attributeLayout and ignores sampleLayout if attributeLayout is present", () => { + const attributeLayout = JSON.stringify({ title: "Attr" }); + const sampleLayout = JSON.stringify({ title: "Sample" }); + expect(parseLayout(undefined, attributeLayout, sampleLayout)).toEqual({ title: "Attr" }); + }); +}); + +describe("parseConfig", () => { + it("returns empty object when configOptions is empty", () => { + expect(parseConfig()).toEqual({}); + }); + + it("parses configOptions", () => { + const configOptions = JSON.stringify({ responsive: true }); + expect(parseConfig(configOptions)).toEqual({ responsive: true }); + }); +}); From 1ce052a66635e58f5cb2d799e1452c5d15f5b563 Mon Sep 17 00:00:00 2001 From: Illia Obukhau <8282906+iobuhov@users.noreply.github.com> Date: Wed, 2 Jul 2025 12:32:59 +0200 Subject: [PATCH 07/13] fix: prevent false positive warnings on empty editor trace --- .../mergeChartProps.spec.ts.snap | 71 ++++ .../src/__tests__/mergeChartProps.spec.ts | 402 ++++++++++++++++++ .../src/controllers/ChartPropsController.ts | 27 +- .../custom-chart-web/src/utils/utils.ts | 33 ++ 4 files changed, 508 insertions(+), 25 deletions(-) create mode 100644 packages/pluggableWidgets/custom-chart-web/src/__tests__/__snapshots__/mergeChartProps.spec.ts.snap create mode 100644 packages/pluggableWidgets/custom-chart-web/src/__tests__/mergeChartProps.spec.ts diff --git a/packages/pluggableWidgets/custom-chart-web/src/__tests__/__snapshots__/mergeChartProps.spec.ts.snap b/packages/pluggableWidgets/custom-chart-web/src/__tests__/__snapshots__/mergeChartProps.spec.ts.snap new file mode 100644 index 0000000000..dae080df89 --- /dev/null +++ b/packages/pluggableWidgets/custom-chart-web/src/__tests__/__snapshots__/mergeChartProps.spec.ts.snap @@ -0,0 +1,71 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`mergeChartProps utility function Data merging behavior should only process traces that exist in chart props 1`] = `[]`; + +exports[`mergeChartProps utility function Data merging behavior should preserve original trace data when editor state has missing or falsy entries 1`] = `[]`; + +exports[`mergeChartProps utility function Edge cases should handle empty chart props data 1`] = `[]`; + +exports[`mergeChartProps utility function Edge cases should handle falsy values in editor state data without warnings 1`] = `[]`; + +exports[`mergeChartProps utility function Edge cases should handle null JSON parsing 1`] = `[]`; + +exports[`mergeChartProps utility function Edge cases should handle various malformed JSON types 1`] = ` +[ + [ + "Editor props for trace(1) is not a valid JSON:{invalid json}", + ], + [ + "Please make sure the props is a valid JSON string.", + ], + [ + "Editor props for trace(3) is not a valid JSON:undefined", + ], + [ + "Please make sure the props is a valid JSON string.", + ], +] +`; + +exports[`mergeChartProps utility function JSON parsing failures generate console warnings should handle mixed valid and invalid JSON 1`] = ` +[ + [ + "Editor props for trace(1) is not a valid JSON:invalid json", + ], + [ + "Please make sure the props is a valid JSON string.", + ], +] +`; + +exports[`mergeChartProps utility function JSON parsing failures generate console warnings should not warn for valid JSON 1`] = `[]`; + +exports[`mergeChartProps utility function JSON parsing failures generate console warnings should not warn when editor state has undefined entries 1`] = `[]`; + +exports[`mergeChartProps utility function JSON parsing failures generate console warnings should warn for invalid JSON in editor state data 1`] = ` +[ + [ + "Editor props for trace(0) is not a valid JSON:invalid json", + ], + [ + "Please make sure the props is a valid JSON string.", + ], +] +`; + +exports[`mergeChartProps utility function JSON parsing failures generate console warnings should warn for multiple invalid JSON entries 1`] = ` +[ + [ + "Editor props for trace(0) is not a valid JSON:invalid json", + ], + [ + "Please make sure the props is a valid JSON string.", + ], + [ + "Editor props for trace(1) is not a valid JSON:{broken: json}", + ], + [ + "Please make sure the props is a valid JSON string.", + ], +] +`; diff --git a/packages/pluggableWidgets/custom-chart-web/src/__tests__/mergeChartProps.spec.ts b/packages/pluggableWidgets/custom-chart-web/src/__tests__/mergeChartProps.spec.ts new file mode 100644 index 0000000000..222bd5adbe --- /dev/null +++ b/packages/pluggableWidgets/custom-chart-web/src/__tests__/mergeChartProps.spec.ts @@ -0,0 +1,402 @@ +import { EditorStoreState } from "@mendix/shared-charts/main"; +import { ChartProps } from "../components/PlotlyChart"; +import { mergeChartProps } from "../utils/utils"; + +// Mock console.warn to capture warnings +let consoleWarnSpy: jest.SpyInstance; +let consoleMockCalls: string[][]; + +beforeEach(() => { + consoleMockCalls = []; + consoleWarnSpy = jest.spyOn(console, "warn").mockImplementation((...args: any[]) => { + consoleMockCalls.push(args.map(arg => String(arg))); + }); +}); + +afterEach(() => { + consoleWarnSpy.mockRestore(); +}); + +describe("mergeChartProps utility function", () => { + describe("JSON parsing failures generate console warnings", () => { + it("should warn for invalid JSON in editor state data", () => { + // Arrange + const chartProps: ChartProps = { + data: [{ x: [1, 2], y: [3, 4], type: "scatter" }], + layout: { title: "Test Chart" }, + config: { displayModeBar: false }, + width: 800, + height: 600 + }; + + const editorState: EditorStoreState = { + layout: "{}", + config: "{}", + data: ["invalid json"] + }; + + // Act + mergeChartProps(chartProps, editorState); + + // Assert + expect(consoleMockCalls).toMatchSnapshot(); + }); + + it("should warn for multiple invalid JSON entries", () => { + // Arrange + const chartProps: ChartProps = { + data: [ + { x: [1], y: [2], type: "scatter" }, + { x: [3], y: [4], type: "bar" } + ], + layout: {}, + config: {}, + width: 800, + height: 600 + }; + + const editorState: EditorStoreState = { + layout: "{}", + config: "{}", + data: ["invalid json", "{broken: json}"] + }; + + // Act + mergeChartProps(chartProps, editorState); + + // Assert + expect(consoleMockCalls).toMatchSnapshot(); + }); + + it("should not warn when editor state has undefined entries", () => { + // Arrange + const chartProps: ChartProps = { + data: [{ x: [1], y: [2], type: "scatter" }], + layout: {}, + config: {}, + width: 800, + height: 600 + }; + + const editorState: EditorStoreState = { + layout: "{}", + config: "{}", + data: [] // Empty array, so data[0] will be undefined + }; + + // Act + mergeChartProps(chartProps, editorState); + + // Assert + expect(consoleMockCalls).toMatchSnapshot(); + }); + + it("should not warn for valid JSON", () => { + // Arrange + const chartProps: ChartProps = { + data: [{ x: [1], y: [2], type: "scatter" }], + layout: {}, + config: {}, + width: 800, + height: 600 + }; + + const editorState: EditorStoreState = { + layout: "{}", + config: "{}", + data: ['{"marker": {"color": "red"}}'] + }; + + // Act + mergeChartProps(chartProps, editorState); + + // Assert + expect(consoleMockCalls).toMatchSnapshot(); + }); + + it("should handle mixed valid and invalid JSON", () => { + // Arrange + const chartProps: ChartProps = { + data: [ + { x: [1], y: [2], type: "scatter" }, + { x: [3], y: [4], type: "bar" }, + { x: [5], y: [6], type: "scatter" as const } + ], + layout: {}, + config: {}, + width: 800, + height: 600 + }; + + const editorState: EditorStoreState = { + layout: "{}", + config: "{}", + data: [ + '{"marker": {"color": "red"}}', // Valid + "invalid json", // Invalid + '{"marker": {"color": "blue"}}' // Valid + ] + }; + + // Act + mergeChartProps(chartProps, editorState); + + // Assert + expect(consoleMockCalls).toMatchSnapshot(); + }); + }); + + describe("Data merging behavior", () => { + it("should merge valid editor state data with chart props", () => { + // Arrange + const chartProps: ChartProps = { + data: [{ x: [1, 2], y: [3, 4], type: "scatter", name: "original" }], + layout: { title: "Original Title" }, + config: { displayModeBar: true }, + width: 800, + height: 600 + }; + + const editorState: EditorStoreState = { + layout: '{"title": "Modified Title"}', + config: '{"displayModeBar": false}', + data: ['{"marker": {"color": "red"}, "name": "modified"}'] + }; + + // Act + const result = mergeChartProps(chartProps, editorState); + + // Assert + expect(result.data[0]).toEqual({ + x: [1, 2], + y: [3, 4], + type: "scatter", + name: "modified", // Overridden by editor state + marker: { color: "red" } // Added by editor state + }); + expect(result.layout.title).toBe("Modified Title"); + expect(result.config.displayModeBar).toBe(false); + }); + + it("should use empty object for invalid JSON entries", () => { + // Arrange + const chartProps: ChartProps = { + data: [{ x: [1], y: [2], type: "scatter", name: "original" }], + layout: {}, + config: {}, + width: 800, + height: 600 + }; + + const editorState: EditorStoreState = { + layout: "{}", + config: "{}", + data: ["invalid json"] + }; + + // Act + const result = mergeChartProps(chartProps, editorState); + + // Assert + expect(result.data[0]).toEqual({ + x: [1], + y: [2], + type: "scatter", + name: "original" // Original properties preserved + }); + }); + + it("should only process traces that exist in chart props", () => { + // Arrange + const chartProps: ChartProps = { + data: [{ x: [1], y: [2], type: "scatter" }], // Only 1 trace + layout: {}, + config: {}, + width: 800, + height: 600 + }; + + const editorState: EditorStoreState = { + layout: "{}", + config: "{}", + data: [ + '{"marker": {"color": "red"}}', // Will be processed + '{"marker": {"color": "blue"}}', // Will be ignored + "invalid json" // Will be ignored + ] + }; + + // Act + const result = mergeChartProps(chartProps, editorState); + + // Assert + expect(result.data).toHaveLength(1); // Only 1 trace in result + expect(result.data[0]).toEqual({ + x: [1], + y: [2], + type: "scatter", + marker: { color: "red" } + }); + expect(consoleMockCalls).toMatchSnapshot(); // No warnings for ignored entries + }); + + it("should preserve original trace data when editor state has missing or falsy entries", () => { + // Arrange + const chartProps: ChartProps = { + data: [ + { x: [1], y: [1], type: "scatter", name: "original1", marker: { color: "blue" } }, + { x: [2], y: [2], type: "bar", name: "original2" }, + { x: [3], y: [3], type: "scatter", name: "original3" } + ], + layout: {}, + config: {}, + width: 800, + height: 600 + }; + + const editorState: EditorStoreState = { + layout: "{}", + config: "{}", + data: [""] // Only one entry (empty string), so traces 1 and 2 will get undefined + }; + + // Act + const result = mergeChartProps(chartProps, editorState); + + // Assert - All original trace data should be preserved + expect(result.data[0]).toEqual({ + x: [1], + y: [1], + type: "scatter", + name: "original1", + marker: { color: "blue" } + }); + expect(result.data[1]).toEqual({ x: [2], y: [2], type: "bar", name: "original2" }); + expect(result.data[2]).toEqual({ x: [3], y: [3], type: "scatter", name: "original3" }); + expect(consoleMockCalls).toMatchSnapshot(); + }); + }); + + describe("Edge cases", () => { + it("should handle empty chart props data", () => { + // Arrange + const chartProps: ChartProps = { + data: [], // No traces + layout: {}, + config: {}, + width: 800, + height: 600 + }; + + const editorState: EditorStoreState = { + layout: "{}", + config: "{}", + data: ["invalid json"] // Will be ignored + }; + + // Act + const result = mergeChartProps(chartProps, editorState); + + // Assert + expect(result.data).toHaveLength(0); + expect(consoleMockCalls).toMatchSnapshot(); + }); + + it("should handle null JSON parsing", () => { + // Arrange + const chartProps: ChartProps = { + data: [{ x: [1], y: [2], type: "scatter" }], + layout: {}, + config: {}, + width: 800, + height: 600 + }; + + const editorState: EditorStoreState = { + layout: "{}", + config: "{}", + data: ["null"] // Valid JSON that parses to null + }; + + // Act + const result = mergeChartProps(chartProps, editorState); + + // Assert + expect(result.data[0]).toEqual({ + x: [1], + y: [2], + type: "scatter" + // null gets merged, but doesn't add properties + }); + expect(consoleMockCalls).toMatchSnapshot(); + }); + + it("should handle various malformed JSON types", () => { + // Arrange + const chartProps: ChartProps = { + data: [ + { x: [1], y: [1], type: "scatter" }, + { x: [2], y: [2], type: "bar" }, + { x: [3], y: [3], type: "scatter" as const }, + { x: [4], y: [4], type: "scatter" } + ], + layout: {}, + config: {}, + width: 800, + height: 600 + }; + + const editorState: EditorStoreState = { + layout: "{}", + config: "{}", + data: [ + '{"valid": "json"}', // Valid + "{invalid json}", // Invalid + "", // Invalid empty string - treated as falsy, early return + "undefined" // Invalid + ] + }; + + // Act + mergeChartProps(chartProps, editorState); + + // Assert + expect(consoleMockCalls).toMatchSnapshot(); + }); + + it("should handle falsy values in editor state data without warnings", () => { + // Arrange + const chartProps: ChartProps = { + data: [ + { x: [1], y: [1], type: "scatter", name: "trace1" }, + { x: [2], y: [2], type: "bar", name: "trace2" }, + { x: [3], y: [3], type: "scatter", name: "trace3" } + ], + layout: {}, + config: {}, + width: 800, + height: 600 + }; + + const editorState: EditorStoreState = { + layout: "{}", + config: "{}", + data: [ + "", // Empty string - falsy + null as any, // null - falsy + undefined as any // undefined - falsy + ] + }; + + // Act + const result = mergeChartProps(chartProps, editorState); + + // Assert - No warnings should be generated for falsy values + expect(consoleMockCalls).toMatchSnapshot(); + // Original traces should be returned unchanged + expect(result.data[0]).toEqual({ x: [1], y: [1], type: "scatter", name: "trace1" }); + expect(result.data[1]).toEqual({ x: [2], y: [2], type: "bar", name: "trace2" }); + expect(result.data[2]).toEqual({ x: [3], y: [3], type: "scatter", name: "trace3" }); + }); + }); +}); diff --git a/packages/pluggableWidgets/custom-chart-web/src/controllers/ChartPropsController.ts b/packages/pluggableWidgets/custom-chart-web/src/controllers/ChartPropsController.ts index 522aab94ae..4ec41dc652 100644 --- a/packages/pluggableWidgets/custom-chart-web/src/controllers/ChartPropsController.ts +++ b/packages/pluggableWidgets/custom-chart-web/src/controllers/ChartPropsController.ts @@ -4,7 +4,7 @@ import { executeAction } from "@mendix/widget-plugin-platform/framework/execute- import { makeAutoObservable } from "mobx"; import { Config, Data, Layout } from "plotly.js-dist-min"; import { ChartProps } from "../components/PlotlyChart"; -import { parseConfig, parseData, parseLayout } from "../utils/utils"; +import { parseConfig, parseData, parseLayout, mergeChartProps } from "../utils/utils"; import { ControllerProps } from "./typings"; interface SizeProvider { @@ -158,29 +158,6 @@ export class ChartPropsController implements ReactiveController { get mergedProps(): ChartProps { const props = this.chartProps; const state = this.editorStateGate.props; - return { - ...props, - config: { - ...props.config, - ...parseConfig(state.config) - }, - layout: { - ...props.layout, - ...parseLayout(state.layout) - }, - data: props.data.map((trace, index) => { - let stateTrace: Data; - try { - stateTrace = JSON.parse(state.data[index]); - } catch { - console.warn(`Failed to parse data for trace(${index})`); - stateTrace = {}; - } - return { - ...trace, - ...stateTrace - } as Data; - }) - }; + return mergeChartProps(props, state); } } diff --git a/packages/pluggableWidgets/custom-chart-web/src/utils/utils.ts b/packages/pluggableWidgets/custom-chart-web/src/utils/utils.ts index 9e42663c40..c5eadc2810 100644 --- a/packages/pluggableWidgets/custom-chart-web/src/utils/utils.ts +++ b/packages/pluggableWidgets/custom-chart-web/src/utils/utils.ts @@ -1,4 +1,7 @@ +import { EditorStoreState } from "@mendix/shared-charts/main"; import { Config, Data, Layout } from "plotly.js-dist-min"; +import { ChartProps } from "../components/PlotlyChart"; + export function parseData(staticData?: string, attributeData?: string, sampleData?: string): Data[] { let finalData: Data[] = []; @@ -44,3 +47,33 @@ export function parseConfig(configOptions?: string): Partial { return {}; } } + +export function mergeChartProps(chartProps: ChartProps, editorState: EditorStoreState): ChartProps { + return { + ...chartProps, + config: { + ...chartProps.config, + ...parseConfig(editorState.config) + }, + layout: { + ...chartProps.layout, + ...parseLayout(editorState.layout) + }, + data: chartProps.data.map((trace, index) => { + let stateTrace: Data = {}; + try { + if (!editorState.data || !editorState.data[index]) { + return trace; + } + stateTrace = JSON.parse(editorState.data[index]); + } catch { + console.warn(`Editor props for trace(${index}) is not a valid JSON:${editorState.data[index]}`); + console.warn("Please make sure the props is a valid JSON string."); + } + return { + ...trace, + ...stateTrace + } as Data; + }) + }; +} From f53dce6ad042672ad1d397269a06d7beceed8094 Mon Sep 17 00:00:00 2001 From: Illia Obukhau <8282906+iobuhov@users.noreply.github.com> Date: Fri, 11 Jul 2025 14:16:16 +0200 Subject: [PATCH 08/13] fix: change how editor state initialized --- packages/shared/charts/src/helpers/useEditorStore.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/shared/charts/src/helpers/useEditorStore.ts b/packages/shared/charts/src/helpers/useEditorStore.ts index e2ac492d8c..7610acf221 100644 --- a/packages/shared/charts/src/helpers/useEditorStore.ts +++ b/packages/shared/charts/src/helpers/useEditorStore.ts @@ -1,7 +1,7 @@ import { Data } from "plotly.js-dist-min"; -import { useState, useReducer, useEffect } from "react"; -import { EditorStore, EditorStoreState } from "./EditorStore"; +import { useEffect, useReducer, useState } from "react"; import { fallback, pprint } from "../utils/json"; +import { EditorStore, EditorStoreState } from "./EditorStore"; export type EditorStoreInitializer = () => EditorStoreState; @@ -37,6 +37,6 @@ export function initStateFromProps(data: Array>): EditorStoreIniti return () => ({ layout: pprint(fallback("")), config: pprint(fallback("")), - data: data.map(trace => pprint(fallback(trace.name))) + data: data.map(trace => pprint(JSON.stringify(trace))) }); } From 54a1940933984af9126c2a248ddd94c6c861b37d Mon Sep 17 00:00:00 2001 From: gjulivan Date: Tue, 15 Jul 2025 16:16:24 +0200 Subject: [PATCH 09/13] fix: heatmap lint failure id missing --- .../pluggableWidgets/heatmap-chart-web/src/hooks/data.ts | 6 ++++-- .../heatmap-chart-web/typings/HeatMapProps.d.ts | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/pluggableWidgets/heatmap-chart-web/src/hooks/data.ts b/packages/pluggableWidgets/heatmap-chart-web/src/hooks/data.ts index 2afabc82d6..782186d301 100644 --- a/packages/pluggableWidgets/heatmap-chart-web/src/hooks/data.ts +++ b/packages/pluggableWidgets/heatmap-chart-web/src/hooks/data.ts @@ -34,6 +34,7 @@ type LocalHeatMapData = { verticalAxisValue: AttributeValue; horizontalSortValue: string | Big | Date | undefined; verticalSortValue: string | Big | Date | undefined; + id: string; }; function getUniqueValues(values: T[]): T[] { @@ -78,7 +79,8 @@ export const useHeatMapDataSeries = ({ horizontalAxisValue: formatValueAttribute(horizontalAxisAttribute?.get(dataSourceItem).value), horizontalSortValue: horizontalSortAttribute?.get(dataSourceItem).value, verticalAxisValue: formatValueAttribute(verticalAxisAttribute?.get(dataSourceItem).value), - verticalSortValue: verticalSortAttribute?.get(dataSourceItem).value + verticalSortValue: verticalSortAttribute?.get(dataSourceItem).value, + id: dataSourceItem.id })); setHeatMapData(dataSourceItems); } @@ -113,7 +115,7 @@ export const useHeatMapDataSeries = ({ executeAction(onClickAction?.get(selectedObjectItem)); } }, - [onClickAction, heatmapChartData, seriesItemSelection] + [onClickAction, heatmapChartData] ); return useMemo(() => { diff --git a/packages/pluggableWidgets/heatmap-chart-web/typings/HeatMapProps.d.ts b/packages/pluggableWidgets/heatmap-chart-web/typings/HeatMapProps.d.ts index dc4c190529..4b958f1d77 100644 --- a/packages/pluggableWidgets/heatmap-chart-web/typings/HeatMapProps.d.ts +++ b/packages/pluggableWidgets/heatmap-chart-web/typings/HeatMapProps.d.ts @@ -4,7 +4,7 @@ * @author Mendix Widgets Framework Team */ import { ComponentType, CSSProperties, ReactNode } from "react"; -import { ActionValue, DynamicValue, ListValue, ListAttributeValue, ListExpressionValue } from "mendix"; +import { DynamicValue, ListValue, ListActionValue, ListAttributeValue, ListExpressionValue } from "mendix"; import { Big } from "big.js"; export type HorizontalSortOrderEnum = "asc" | "desc"; @@ -55,7 +55,7 @@ export interface HeatMapContainerProps { width: number; heightUnit: HeightUnitEnum; height: number; - onClickAction?: ActionValue; + onClickAction?: ListActionValue; tooltipHoverText?: ListExpressionValue; enableThemeConfig: boolean; customLayout: string; From 22cdecbc42fa2546ca74c69a05fd594ac08c33d4 Mon Sep 17 00:00:00 2001 From: Content Teams Date: Tue, 15 Jul 2025 14:57:21 +0000 Subject: [PATCH 10/13] chore(@mendix/charts-web): update changelog --- .../area-chart-web/CHANGELOG.md | 2 + .../bar-chart-web/CHANGELOG.md | 2 + .../bubble-chart-web/CHANGELOG.md | 2 + .../chart-playground-web/CHANGELOG.md | 2 + .../pluggableWidgets/charts-web/CHANGELOG.md | 56 +++++++++++++++++++ .../column-chart-web/CHANGELOG.md | 2 + .../custom-chart-web/CHANGELOG.md | 2 + .../heatmap-chart-web/CHANGELOG.md | 2 + .../pie-doughnut-chart-web/CHANGELOG.md | 4 +- .../time-series-chart-web/CHANGELOG.md | 2 + 10 files changed, 75 insertions(+), 1 deletion(-) diff --git a/packages/pluggableWidgets/area-chart-web/CHANGELOG.md b/packages/pluggableWidgets/area-chart-web/CHANGELOG.md index b39026087c..0200e8f191 100644 --- a/packages/pluggableWidgets/area-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/area-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.1] - 2025-07-15 + ### Changed - We updated shared charts dependency. diff --git a/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md b/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md index ce742de066..d7373f934b 100644 --- a/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/bar-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.1] - 2025-07-15 + ### Changed - We updated shared charts dependency. diff --git a/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md b/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md index 97c9a16513..9e9278a0ad 100644 --- a/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/bubble-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.1] - 2025-07-15 + ### Changed - We updated shared charts dependency. diff --git a/packages/pluggableWidgets/chart-playground-web/CHANGELOG.md b/packages/pluggableWidgets/chart-playground-web/CHANGELOG.md index a3f1fc968d..a2a108b4c6 100644 --- a/packages/pluggableWidgets/chart-playground-web/CHANGELOG.md +++ b/packages/pluggableWidgets/chart-playground-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [2.0.1] - 2025-07-15 + ### Changed - We updated shared charts dependency. diff --git a/packages/pluggableWidgets/charts-web/CHANGELOG.md b/packages/pluggableWidgets/charts-web/CHANGELOG.md index 27dd66caeb..96d7805812 100644 --- a/packages/pluggableWidgets/charts-web/CHANGELOG.md +++ b/packages/pluggableWidgets/charts-web/CHANGELOG.md @@ -6,6 +6,62 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.1] Charts - 2025-07-15 + +### [6.1.1] AreaChart + +#### Changed + +- We updated shared charts dependency. + +### [6.1.1] BarChart + +#### Changed + +- We updated shared charts dependency. + +### [6.1.1] BubbleChart + +#### Changed + +- We updated shared charts dependency. + +### [6.1.1] ColumnChart + +#### Changed + +- We updated shared charts dependency. + +### [1.1.1] CustomChart + +#### Fixed + +- We fixed an issue with incorrect parsing and merging of layout and data properties. + +### [6.1.1] HeatMap + +#### Fixed + +- We fixed on click events by correctly adding datasource. + +### [6.1.1] PieChart + +#### Changed + +- We updated shared charts dependency. + +### [6.1.1] TimeSeries + +#### Changed + +- We updated shared charts dependency. + +### [2.0.1] ChartPlayground + +#### Changed + +- We updated shared charts dependency. + ## [6.1.0] Charts - 2025-06-04 ### [6.1.0] AreaChart diff --git a/packages/pluggableWidgets/column-chart-web/CHANGELOG.md b/packages/pluggableWidgets/column-chart-web/CHANGELOG.md index f3cd1b10d9..9cb4ea357c 100644 --- a/packages/pluggableWidgets/column-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/column-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.1] - 2025-07-15 + ### Changed - We updated shared charts dependency. diff --git a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md index 8388f0cb4b..96137d1d36 100644 --- a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [1.1.1] - 2025-07-15 + ### Fixed - We fixed an issue with incorrect parsing and merging of layout and data properties. diff --git a/packages/pluggableWidgets/heatmap-chart-web/CHANGELOG.md b/packages/pluggableWidgets/heatmap-chart-web/CHANGELOG.md index f7f84a6624..3f8247d2b8 100644 --- a/packages/pluggableWidgets/heatmap-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/heatmap-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.1] - 2025-07-15 + ### Fixed - We fixed on click events by correctly adding datasource. diff --git a/packages/pluggableWidgets/pie-doughnut-chart-web/CHANGELOG.md b/packages/pluggableWidgets/pie-doughnut-chart-web/CHANGELOG.md index 30f1b89e30..a31379910e 100644 --- a/packages/pluggableWidgets/pie-doughnut-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/pie-doughnut-chart-web/CHANGELOG.md @@ -6,13 +6,15 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.1] - 2025-07-15 + ### Changed - We updated shared charts dependency. ## [6.1.0] - 2025-06-04 -### Breaking +## # Breaking - We remove listened to selection in order for charts to works on Studio Pro 9.24. diff --git a/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md b/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md index bb2af34ea5..c256ba8122 100644 --- a/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/time-series-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.1] - 2025-07-15 + ### Changed - We updated shared charts dependency. From ed86641b360644fdf4c702b8a97c27472cd744b5 Mon Sep 17 00:00:00 2001 From: gjulivan Date: Sun, 21 Sep 2025 21:27:30 +0200 Subject: [PATCH 11/13] fix: custom charts set event data attribute --- package.json | 3 +- .../custom-chart-web/CHANGELOG.md | 4 + .../custom-chart-web/package.json | 4 +- .../src/controllers/ChartPropsController.ts | 5 +- .../src/hooks/useCustomChart.ts | 8 -- .../custom-chart-web/src/package.xml | 2 +- pnpm-lock.yaml | 76 ++++++++++--------- 7 files changed, 51 insertions(+), 51 deletions(-) diff --git a/package.json b/package.json index 9c8cf17118..3d2156e20c 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,8 @@ "jest-environment-jsdom": "^29.7.0", "json5@1.x": ">=1.0.2", "json5@0.x": ">=1.0.2", - "@codemirror/view": "^6.34.2", + "@codemirror/view": "^6.38.1", + "@codemirror/state": "^6.5.2", "enzyme>cheerio": "1.0.0-rc.10", "ts-node": "10.9.2", "react-big-calendar@1>clsx": "2.1.0" diff --git a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md index 96137d1d36..614bf7a90c 100644 --- a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md @@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +### Fixed + +- We fixed an issue where event data attribute wouldn't successfully get its value set. + ## [1.1.1] - 2025-07-15 ### Fixed diff --git a/packages/pluggableWidgets/custom-chart-web/package.json b/packages/pluggableWidgets/custom-chart-web/package.json index 04835da0db..95ee4e607d 100644 --- a/packages/pluggableWidgets/custom-chart-web/package.json +++ b/packages/pluggableWidgets/custom-chart-web/package.json @@ -1,8 +1,8 @@ { "name": "@mendix/custom-chart-web", "widgetName": "CustomChart", - "version": "1.1.1", - "description": "", + "version": "1.1.2", + "description": "Create customizable charts with Plotly.js for advanced visualization needs", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", "repository": { diff --git a/packages/pluggableWidgets/custom-chart-web/src/controllers/ChartPropsController.ts b/packages/pluggableWidgets/custom-chart-web/src/controllers/ChartPropsController.ts index 4ec41dc652..7bd9b99af0 100644 --- a/packages/pluggableWidgets/custom-chart-web/src/controllers/ChartPropsController.ts +++ b/packages/pluggableWidgets/custom-chart-web/src/controllers/ChartPropsController.ts @@ -125,10 +125,9 @@ export class ChartPropsController implements ReactiveController { private get chartOnClick(): (data: any) => void { return (data: any): void => { if (this.props.eventDataAttribute) { - this.props.eventDataAttribute?.setValue(JSON.stringify(data.points[0].bbox)); - } else { - executeAction(this.props.onClick); + this.props.eventDataAttribute.setValue(JSON.stringify(data.points[0].bbox)); } + executeAction(this.props.onClick); }; } diff --git a/packages/pluggableWidgets/custom-chart-web/src/hooks/useCustomChart.ts b/packages/pluggableWidgets/custom-chart-web/src/hooks/useCustomChart.ts index 65da32ace3..5f72215182 100644 --- a/packages/pluggableWidgets/custom-chart-web/src/hooks/useCustomChart.ts +++ b/packages/pluggableWidgets/custom-chart-web/src/hooks/useCustomChart.ts @@ -2,7 +2,6 @@ import { EditorStoreState, initStateFromProps, PlaygroundData, useEditorStore } import { GateProvider } from "@mendix/widget-plugin-mobx-kit/GateProvider"; import { useConst } from "@mendix/widget-plugin-mobx-kit/react/useConst"; import { useSetup } from "@mendix/widget-plugin-mobx-kit/react/useSetup"; -import { executeAction } from "@mendix/widget-plugin-platform/framework/execute-action"; import { CSSProperties, Ref, RefCallback, useEffect } from "react"; import { CustomChartControllerHost } from "src/controllers/CustomChartControllerHost"; import { mergeRefs } from "src/utils/mergeRefs"; @@ -45,13 +44,6 @@ export function useCustomChart(props: CustomChartContainerProps): UseCustomChart editorStateGateProvider.setProps(editorStore.state); }); - useEffect(() => { - if (props.eventDataAttribute?.value && props.onClick) { - executeAction(props.onClick); - props.eventDataAttribute.setValue(""); - } - }, [props.eventDataAttribute?.value]); - const containerStyle: CSSProperties = { width: props.widthUnit === "percentage" ? `${props.width}%` : `${props.width}px` }; diff --git a/packages/pluggableWidgets/custom-chart-web/src/package.xml b/packages/pluggableWidgets/custom-chart-web/src/package.xml index b2d469ab57..2fcf393346 100644 --- a/packages/pluggableWidgets/custom-chart-web/src/package.xml +++ b/packages/pluggableWidgets/custom-chart-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 82ee8ab610..fbafe68916 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -20,7 +20,8 @@ overrides: jest-environment-jsdom: ^29.7.0 json5@1.x: '>=1.0.2' json5@0.x: '>=1.0.2' - '@codemirror/view': ^6.34.2 + '@codemirror/view': ^6.38.1 + '@codemirror/state': ^6.5.2 enzyme>cheerio: 1.0.0-rc.10 ts-node: 10.9.2 react-big-calendar@1>clsx: 2.1.0 @@ -3487,8 +3488,8 @@ packages: resolution: {integrity: sha512-MjfDrHy0gHKlPWsvSsikhO1+BOh+eBHNgfH1OXs1+DAf30IonQldgMM3kxLDTG9ktE7kDLaA1j/l7KMPA4KNfw==} peerDependencies: '@codemirror/language': ^6.0.0 - '@codemirror/state': ^6.0.0 - '@codemirror/view': ^6.34.2 + '@codemirror/state': ^6.5.2 + '@codemirror/view': ^6.38.1 '@lezer/common': ^1.0.0 '@codemirror/commands@6.7.0': @@ -3515,8 +3516,8 @@ packages: '@codemirror/search@6.5.6': resolution: {integrity: sha512-rpMgcsh7o0GuCDUXKPvww+muLA1pDJaFrpq/CCHtpQJYz8xopu4D1hPcKRoDD0YlF8gZaqTNIRa4VRBWyhyy7Q==} - '@codemirror/state@6.4.1': - resolution: {integrity: sha512-QkEyUiLhsJoZkbumGZlswmAhA7CBU02Wrz7zvH4SrcifbsqwlXShVXg65f3v/ts57W3dqyamEriMhij1Z3Zz4A==} + '@codemirror/state@6.5.2': + resolution: {integrity: sha512-FVqsPqtPWKVVL3dPSxy8wEF/ymIEuVzF1PK3VbUgrxXpJUSHQWWZz4JMToquRxnkw+36LTamCZG2iua2Ptq0fA==} '@codemirror/theme-one-dark@6.1.2': resolution: {integrity: sha512-F+sH0X16j/qFLMAfbciKTxVOwkdAS336b7AXTKOZhy8BR3eH/RelsnLgLFINrpST63mmN2OuwUt0W2ndUgYwUA==} @@ -4895,8 +4896,8 @@ packages: '@codemirror/language': '>=6.0.0' '@codemirror/lint': '>=6.0.0' '@codemirror/search': '>=6.0.0' - '@codemirror/state': '>=6.0.0' - '@codemirror/view': ^6.34.2 + '@codemirror/state': ^6.5.2 + '@codemirror/view': ^6.38.1 '@uiw/codemirror-theme-github@4.22.2': resolution: {integrity: sha512-tqGOOgVzbStJWUQmMLRWyymyD3DPF4TUSJx2DcXpeCF3YStWMd957I26uQQaqR1ppAcWFsprjkl2oL3piBxFdA==} @@ -4905,14 +4906,14 @@ packages: resolution: {integrity: sha512-gsLHn6SUuV5iboBvGrM7YimzLFHQmsNlkGIYs3UaVUJTo/A/ZrKoSJNyPziShLRjBXA2UwKdBTIU6VhHyyaChw==} peerDependencies: '@codemirror/language': '>=6.0.0' - '@codemirror/state': '>=6.0.0' - '@codemirror/view': ^6.34.2 + '@codemirror/state': ^6.5.2 + '@codemirror/view': ^6.38.1 '@uiw/react-codemirror@4.22.2': resolution: {integrity: sha512-okCSl+WJG63gRx8Fdz7v0C6RakBQnbb3pHhuzIgDB+fwhipgFodSnu2n9oOsQesJ5YQ7mSOcKMgX0JEsu4nnfQ==} peerDependencies: '@babel/runtime': '>=7.11.0' - '@codemirror/state': '>=6.0.0' + '@codemirror/state': ^6.5.2 '@codemirror/theme-one-dark': '>=6.0.0' '@codemirror/view': ^6.34.2 codemirror: '>=6.0.0' @@ -12252,50 +12253,51 @@ snapshots: dependencies: commander: 2.20.3 - '@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)(@lezer/common@1.2.2)': + '@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.1)(@lezer/common@1.2.2)': dependencies: '@codemirror/language': 6.10.2 - '@codemirror/state': 6.4.1 - '@codemirror/view': 6.34.2 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.38.1 '@lezer/common': 1.2.2 - '@codemirror/commands@6.7.0': + '@codemirror/lang-css@6.3.1(@codemirror/view@6.34.2)': dependencies: + '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)(@lezer/common@1.2.2) '@codemirror/language': 6.10.2 - '@codemirror/state': 6.4.1 - '@codemirror/view': 6.34.2 - '@lezer/common': 1.2.2 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.38.1 + '@lezer/common': 1.2.3 - '@codemirror/lang-css@6.3.1(@codemirror/view@6.34.2)': + '@codemirror/lang-css@6.3.1(@codemirror/view@6.38.1)': dependencies: - '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)(@lezer/common@1.2.2) + '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.1)(@lezer/common@1.2.3) '@codemirror/language': 6.10.2 - '@codemirror/state': 6.4.1 - '@lezer/common': 1.2.2 + '@codemirror/state': 6.5.2 + '@lezer/common': 1.2.3 '@lezer/css': 1.1.11 transitivePeerDependencies: - '@codemirror/view' '@codemirror/lang-html@6.4.9': dependencies: - '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)(@lezer/common@1.2.2) - '@codemirror/lang-css': 6.3.1(@codemirror/view@6.34.2) + '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.1)(@lezer/common@1.2.2) + '@codemirror/lang-css': 6.3.1(@codemirror/view@6.38.1) '@codemirror/lang-javascript': 6.2.3 '@codemirror/language': 6.10.2 - '@codemirror/state': 6.4.1 - '@codemirror/view': 6.34.2 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.38.1 '@lezer/common': 1.2.2 '@lezer/css': 1.1.11 '@lezer/html': 1.3.10 '@codemirror/lang-javascript@6.2.3': dependencies: - '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)(@lezer/common@1.2.2) + '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.1)(@lezer/common@1.2.3) '@codemirror/language': 6.10.2 - '@codemirror/lint': 6.8.2 - '@codemirror/state': 6.4.1 - '@codemirror/view': 6.34.2 - '@lezer/common': 1.2.2 + '@codemirror/lint': 6.8.5 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.38.1 + '@lezer/common': 1.2.3 '@lezer/javascript': 1.5.1 '@codemirror/lang-json@6.0.1': @@ -12305,17 +12307,17 @@ snapshots: '@codemirror/language@6.10.2': dependencies: - '@codemirror/state': 6.4.1 - '@codemirror/view': 6.34.2 - '@lezer/common': 1.2.2 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.38.1 + '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.1 style-mod: 4.1.2 '@codemirror/lint@6.8.2': dependencies: - '@codemirror/state': 6.4.1 - '@codemirror/view': 6.34.2 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.38.1 crelt: 1.0.6 '@codemirror/search@6.5.6': @@ -12324,7 +12326,9 @@ snapshots: '@codemirror/view': 6.34.2 crelt: 1.0.6 - '@codemirror/state@6.4.1': {} + '@codemirror/state@6.5.2': + dependencies: + '@marijn/find-cluster-break': 1.0.2 '@codemirror/theme-one-dark@6.1.2': dependencies: From d57a32e08478abfc41969e4975b1f56cb870918a Mon Sep 17 00:00:00 2001 From: gjulivan Date: Sun, 21 Sep 2025 21:35:29 +0200 Subject: [PATCH 12/13] chore: increase version for chart release --- .../pluggableWidgets/charts-web/package.json | 2 +- .../charts-web/src/package.xml | 2 +- pnpm-lock.yaml | 125 +++++++++--------- 3 files changed, 62 insertions(+), 67 deletions(-) diff --git a/packages/pluggableWidgets/charts-web/package.json b/packages/pluggableWidgets/charts-web/package.json index 199b9e88b4..518de4a1d7 100644 --- a/packages/pluggableWidgets/charts-web/package.json +++ b/packages/pluggableWidgets/charts-web/package.json @@ -1,6 +1,6 @@ { "name": "@mendix/charts-web", - "version": "6.1.1", + "version": "6.1.2", "description": "Chart widgets collection for data visualization", "copyright": "© Mendix Technology BV 2025. All rights reserved.", "license": "Apache-2.0", diff --git a/packages/pluggableWidgets/charts-web/src/package.xml b/packages/pluggableWidgets/charts-web/src/package.xml index 88ef151efa..a26f540bbb 100644 --- a/packages/pluggableWidgets/charts-web/src/package.xml +++ b/packages/pluggableWidgets/charts-web/src/package.xml @@ -1,6 +1,6 @@ - + diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fbafe68916..06dd62216c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -830,10 +830,10 @@ importers: version: link:../../shared/widget-plugin-platform '@uiw/codemirror-theme-github': specifier: ^4.21.25 - version: 4.22.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2) + version: 4.22.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3) '@uiw/react-codemirror': specifier: ^4.21.25 - version: 4.22.2(@babel/runtime@7.25.7)(@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)(@lezer/common@1.2.2))(@codemirror/language@6.10.2)(@codemirror/lint@6.8.2)(@codemirror/search@6.5.6)(@codemirror/state@6.4.1)(@codemirror/theme-one-dark@6.1.2)(@codemirror/view@6.34.2)(codemirror@6.0.1(@lezer/common@1.2.2))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + version: 4.22.2(@babel/runtime@7.25.7)(@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)(@lezer/common@1.2.2))(@codemirror/language@6.10.2)(@codemirror/lint@6.8.2)(@codemirror/search@6.5.6)(@codemirror/state@6.5.2)(@codemirror/theme-one-dark@6.1.2)(@codemirror/view@6.38.3)(codemirror@6.0.1(@lezer/common@1.2.2))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) devDependencies: '@mendix/automation-utils': specifier: workspace:* @@ -1987,10 +1987,10 @@ importers: version: 0.24.2 '@uiw/codemirror-theme-github': specifier: ^4.21.25 - version: 4.22.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2) + version: 4.22.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3) '@uiw/react-codemirror': specifier: ^4.21.25 - version: 4.22.2(@babel/runtime@7.25.7)(@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)(@lezer/common@1.2.2))(@codemirror/language@6.10.2)(@codemirror/lint@6.8.2)(@codemirror/search@6.5.6)(@codemirror/state@6.4.1)(@codemirror/theme-one-dark@6.1.2)(@codemirror/view@6.34.2)(codemirror@6.0.1(@lezer/common@1.2.2))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + version: 4.22.2(@babel/runtime@7.25.7)(@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)(@lezer/common@1.2.2))(@codemirror/language@6.10.2)(@codemirror/lint@6.8.2)(@codemirror/search@6.5.6)(@codemirror/state@6.5.2)(@codemirror/theme-one-dark@6.1.2)(@codemirror/view@6.38.3)(codemirror@6.0.1(@lezer/common@1.2.2))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) classnames: specifier: ^2.2.6 version: 2.3.2 @@ -3492,8 +3492,8 @@ packages: '@codemirror/view': ^6.38.1 '@lezer/common': ^1.0.0 - '@codemirror/commands@6.7.0': - resolution: {integrity: sha512-+cduIZ2KbesDhbykV02K25A5xIVrquSPz4UxxYBemRlAT2aW8dhwUgLDwej7q/RJUHKk4nALYcR1puecDvbdqw==} + '@codemirror/commands@6.8.1': + resolution: {integrity: sha512-KlGVYufHMQzxbdQONiLyGQDUW0itrLZwq3CcY7xpv9ZLRHqzkBSoteocBHtMCoY7/Ci4xhzSrToIeLg7FxHuaw==} '@codemirror/lang-css@6.3.1': resolution: {integrity: sha512-kr5fwBGiGtmz6l0LSJIbno9QrifNMUusivHbnA1H6Dmqy4HZFte3UAICix1VuKo0lMPKQr2rqB+0BkKi/S3Ejg==} @@ -3522,8 +3522,8 @@ packages: '@codemirror/theme-one-dark@6.1.2': resolution: {integrity: sha512-F+sH0X16j/qFLMAfbciKTxVOwkdAS336b7AXTKOZhy8BR3eH/RelsnLgLFINrpST63mmN2OuwUt0W2ndUgYwUA==} - '@codemirror/view@6.34.2': - resolution: {integrity: sha512-d6n0WFvL970A9Z+l9N2dO+Hk9ev4hDYQzIx+B9tCyBP0W5wPEszi1rhuyFesNSkLZzXbQE5FPH7F/z/TMJfoPA==} + '@codemirror/view@6.38.3': + resolution: {integrity: sha512-x2t87+oqwB1mduiQZ6huIghjMt4uZKFEdj66IcXw7+a5iBEvv9lh7EWDRHI7crnD4BMGpnyq/RzmCGbiEZLcvQ==} '@commitlint/cli@19.8.0': resolution: {integrity: sha512-t/fCrLVu+Ru01h0DtlgHZXbHV2Y8gKocTR5elDOqIRUzQd0/6hpt2VIWOj9b3NDo7y4/gfxeR2zRtXq/qO6iUg==} @@ -3906,6 +3906,9 @@ packages: resolution: {integrity: sha512-5ueL4UDitzVtceQ8J4kY+Px3WK+eZTsmGwha3MBKHKqiHvKrjWWwBCIl1K8BuJSc5OFh83uI8IFNoFvQxX2uUw==} hasBin: true + '@marijn/find-cluster-break@1.0.2': + resolution: {integrity: sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==} + '@melloware/coloris@0.24.2': resolution: {integrity: sha512-6IhdPOBIc922jRMx2p6Sl6mRzqjGF7x67q0ZziA5e4NTqWoSPHBEnSmiUCcsXiNHZJ6zdOQt+6Z/eZxpxcHjDA==} @@ -4915,7 +4918,7 @@ packages: '@babel/runtime': '>=7.11.0' '@codemirror/state': ^6.5.2 '@codemirror/theme-one-dark': '>=6.0.0' - '@codemirror/view': ^6.34.2 + '@codemirror/view': ^6.38.1 codemirror: '>=6.0.0' react: ^18.0.0 react-dom: ^18.0.0 @@ -12253,51 +12256,50 @@ snapshots: dependencies: commander: 2.20.3 - '@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.1)(@lezer/common@1.2.2)': + '@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)(@lezer/common@1.2.2)': dependencies: '@codemirror/language': 6.10.2 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.38.1 + '@codemirror/view': 6.38.3 '@lezer/common': 1.2.2 - '@codemirror/lang-css@6.3.1(@codemirror/view@6.34.2)': + '@codemirror/commands@6.8.1': dependencies: - '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)(@lezer/common@1.2.2) '@codemirror/language': 6.10.2 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.38.1 - '@lezer/common': 1.2.3 + '@codemirror/view': 6.38.3 + '@lezer/common': 1.2.2 - '@codemirror/lang-css@6.3.1(@codemirror/view@6.38.1)': + '@codemirror/lang-css@6.3.1(@codemirror/view@6.38.3)': dependencies: - '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.1)(@lezer/common@1.2.3) + '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)(@lezer/common@1.2.2) '@codemirror/language': 6.10.2 '@codemirror/state': 6.5.2 - '@lezer/common': 1.2.3 + '@lezer/common': 1.2.2 '@lezer/css': 1.1.11 transitivePeerDependencies: - '@codemirror/view' '@codemirror/lang-html@6.4.9': dependencies: - '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.1)(@lezer/common@1.2.2) - '@codemirror/lang-css': 6.3.1(@codemirror/view@6.38.1) + '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)(@lezer/common@1.2.2) + '@codemirror/lang-css': 6.3.1(@codemirror/view@6.38.3) '@codemirror/lang-javascript': 6.2.3 '@codemirror/language': 6.10.2 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.38.1 + '@codemirror/view': 6.38.3 '@lezer/common': 1.2.2 '@lezer/css': 1.1.11 '@lezer/html': 1.3.10 '@codemirror/lang-javascript@6.2.3': dependencies: - '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.1)(@lezer/common@1.2.3) + '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)(@lezer/common@1.2.2) '@codemirror/language': 6.10.2 - '@codemirror/lint': 6.8.5 + '@codemirror/lint': 6.8.2 '@codemirror/state': 6.5.2 - '@codemirror/view': 6.38.1 - '@lezer/common': 1.2.3 + '@codemirror/view': 6.38.3 + '@lezer/common': 1.2.2 '@lezer/javascript': 1.5.1 '@codemirror/lang-json@6.0.1': @@ -12308,8 +12310,8 @@ snapshots: '@codemirror/language@6.10.2': dependencies: '@codemirror/state': 6.5.2 - '@codemirror/view': 6.38.1 - '@lezer/common': 1.2.3 + '@codemirror/view': 6.38.3 + '@lezer/common': 1.2.2 '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.1 style-mod: 4.1.2 @@ -12317,13 +12319,13 @@ snapshots: '@codemirror/lint@6.8.2': dependencies: '@codemirror/state': 6.5.2 - '@codemirror/view': 6.38.1 + '@codemirror/view': 6.38.3 crelt: 1.0.6 '@codemirror/search@6.5.6': dependencies: - '@codemirror/state': 6.4.1 - '@codemirror/view': 6.34.2 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.38.3 crelt: 1.0.6 '@codemirror/state@6.5.2': @@ -12333,13 +12335,14 @@ snapshots: '@codemirror/theme-one-dark@6.1.2': dependencies: '@codemirror/language': 6.10.2 - '@codemirror/state': 6.4.1 - '@codemirror/view': 6.34.2 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.38.3 '@lezer/highlight': 1.2.1 - '@codemirror/view@6.34.2': + '@codemirror/view@6.38.3': dependencies: - '@codemirror/state': 6.4.1 + '@codemirror/state': 6.5.2 + crelt: 1.0.6 style-mod: 4.1.2 w3c-keyname: 2.2.8 @@ -12980,6 +12983,8 @@ snapshots: sort-object: 3.0.3 tinyqueue: 3.0.0 + '@marijn/find-cluster-break@1.0.2': {} + '@melloware/coloris@0.24.2': {} '@mendix/pluggable-widgets-tools@10.21.0(@jest/transform@29.7.0)(@jest/types@29.6.3)(@swc/core@1.7.26(@swc/helpers@0.5.15))(@types/babel__core@7.20.3)(@types/node@22.14.0)(picomatch@4.0.2)(react-dom@18.2.0(react@18.2.0))(react-native@0.75.3(@babel/core@7.26.10)(@babel/preset-env@7.26.9(@babel/core@7.26.10))(@types/react@18.2.36)(react@18.2.0)(typescript@5.1.6))(react@18.2.0)(tslib@2.8.1)': @@ -13023,7 +13028,7 @@ snapshots: enzyme-to-json: 3.6.2(enzyme@3.11.0) eslint: 7.32.0 eslint-config-prettier: 8.10.0(eslint@7.32.0) - eslint-plugin-jest: 24.7.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.1.6))(eslint@7.32.0)(typescript@5.8.2))(eslint@7.32.0)(typescript@5.8.2) + eslint-plugin-jest: 24.7.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.8.2))(eslint@7.32.0)(typescript@5.8.2))(eslint@7.32.0)(typescript@5.8.2) eslint-plugin-prettier: 3.4.1(eslint-config-prettier@8.10.0(eslint@7.32.0))(eslint@7.32.0)(prettier@3.5.3) eslint-plugin-promise: 4.3.1 eslint-plugin-react: 7.28.0(eslint@7.32.0) @@ -14730,38 +14735,38 @@ snapshots: '@typescript-eslint/types': 8.29.0 eslint-visitor-keys: 4.2.0 - '@uiw/codemirror-extensions-basic-setup@4.22.2(@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)(@lezer/common@1.2.2))(@codemirror/commands@6.7.0)(@codemirror/language@6.10.2)(@codemirror/lint@6.8.2)(@codemirror/search@6.5.6)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)': + '@uiw/codemirror-extensions-basic-setup@4.22.2(@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)(@lezer/common@1.2.2))(@codemirror/commands@6.8.1)(@codemirror/language@6.10.2)(@codemirror/lint@6.8.2)(@codemirror/search@6.5.6)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)': dependencies: - '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)(@lezer/common@1.2.2) - '@codemirror/commands': 6.7.0 + '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)(@lezer/common@1.2.2) + '@codemirror/commands': 6.8.1 '@codemirror/language': 6.10.2 '@codemirror/lint': 6.8.2 '@codemirror/search': 6.5.6 - '@codemirror/state': 6.4.1 - '@codemirror/view': 6.34.2 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.38.3 - '@uiw/codemirror-theme-github@4.22.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)': + '@uiw/codemirror-theme-github@4.22.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)': dependencies: - '@uiw/codemirror-themes': 4.22.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2) + '@uiw/codemirror-themes': 4.22.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3) transitivePeerDependencies: - '@codemirror/language' - '@codemirror/state' - '@codemirror/view' - '@uiw/codemirror-themes@4.22.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)': + '@uiw/codemirror-themes@4.22.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)': dependencies: '@codemirror/language': 6.10.2 - '@codemirror/state': 6.4.1 - '@codemirror/view': 6.34.2 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.38.3 - '@uiw/react-codemirror@4.22.2(@babel/runtime@7.25.7)(@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)(@lezer/common@1.2.2))(@codemirror/language@6.10.2)(@codemirror/lint@6.8.2)(@codemirror/search@6.5.6)(@codemirror/state@6.4.1)(@codemirror/theme-one-dark@6.1.2)(@codemirror/view@6.34.2)(codemirror@6.0.1(@lezer/common@1.2.2))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + '@uiw/react-codemirror@4.22.2(@babel/runtime@7.25.7)(@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)(@lezer/common@1.2.2))(@codemirror/language@6.10.2)(@codemirror/lint@6.8.2)(@codemirror/search@6.5.6)(@codemirror/state@6.5.2)(@codemirror/theme-one-dark@6.1.2)(@codemirror/view@6.38.3)(codemirror@6.0.1(@lezer/common@1.2.2))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: '@babel/runtime': 7.25.7 - '@codemirror/commands': 6.7.0 - '@codemirror/state': 6.4.1 + '@codemirror/commands': 6.8.1 + '@codemirror/state': 6.5.2 '@codemirror/theme-one-dark': 6.1.2 - '@codemirror/view': 6.34.2 - '@uiw/codemirror-extensions-basic-setup': 4.22.2(@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)(@lezer/common@1.2.2))(@codemirror/commands@6.7.0)(@codemirror/language@6.10.2)(@codemirror/lint@6.8.2)(@codemirror/search@6.5.6)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2) + '@codemirror/view': 6.38.3 + '@uiw/codemirror-extensions-basic-setup': 4.22.2(@codemirror/autocomplete@6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)(@lezer/common@1.2.2))(@codemirror/commands@6.8.1)(@codemirror/language@6.10.2)(@codemirror/lint@6.8.2)(@codemirror/search@6.5.6)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3) codemirror: 6.0.1(@lezer/common@1.2.2) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -15634,13 +15639,13 @@ snapshots: codemirror@6.0.1(@lezer/common@1.2.2): dependencies: - '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.4.1)(@codemirror/view@6.34.2)(@lezer/common@1.2.2) - '@codemirror/commands': 6.7.0 + '@codemirror/autocomplete': 6.16.2(@codemirror/language@6.10.2)(@codemirror/state@6.5.2)(@codemirror/view@6.38.3)(@lezer/common@1.2.2) + '@codemirror/commands': 6.8.1 '@codemirror/language': 6.10.2 '@codemirror/lint': 6.8.2 '@codemirror/search': 6.5.6 - '@codemirror/state': 6.4.1 - '@codemirror/view': 6.34.2 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.38.3 transitivePeerDependencies: - '@lezer/common' @@ -16894,22 +16899,12 @@ snapshots: eslint: 9.23.0(jiti@2.4.2) globals: 15.15.0 - eslint-plugin-jest@24.7.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.1.6))(eslint@7.32.0)(typescript@5.8.2))(eslint@7.32.0)(typescript@5.8.2): - dependencies: - '@typescript-eslint/experimental-utils': 4.33.0(eslint@7.32.0)(typescript@5.8.2) - eslint: 7.32.0 - optionalDependencies: - '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.1.6))(eslint@7.32.0)(typescript@5.1.6) - transitivePeerDependencies: - - supports-color - - typescript - eslint-plugin-jest@24.7.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.8.2))(eslint@7.32.0)(typescript@5.8.2))(eslint@7.32.0)(typescript@5.8.2): dependencies: '@typescript-eslint/experimental-utils': 4.33.0(eslint@7.32.0)(typescript@5.8.2) eslint: 7.32.0 optionalDependencies: - '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.8.2))(eslint@7.32.0)(typescript@5.8.2) + '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.1.6))(eslint@7.32.0)(typescript@5.1.6) transitivePeerDependencies: - supports-color - typescript From 7f7e5c4e02fdc2cbf226836d9b38df105a7448e5 Mon Sep 17 00:00:00 2001 From: Content Teams Date: Mon, 22 Sep 2025 07:52:33 +0000 Subject: [PATCH 13/13] chore(@mendix/charts-web): update changelog --- packages/pluggableWidgets/charts-web/CHANGELOG.md | 8 ++++++++ packages/pluggableWidgets/custom-chart-web/CHANGELOG.md | 2 ++ 2 files changed, 10 insertions(+) diff --git a/packages/pluggableWidgets/charts-web/CHANGELOG.md b/packages/pluggableWidgets/charts-web/CHANGELOG.md index 96d7805812..3cd7455063 100644 --- a/packages/pluggableWidgets/charts-web/CHANGELOG.md +++ b/packages/pluggableWidgets/charts-web/CHANGELOG.md @@ -6,6 +6,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [6.1.2] Charts - 2025-09-22 + +### [1.1.2] CustomChart + +#### Fixed + +- We fixed an issue where event data attribute wouldn't successfully get its value set. + ## [6.1.1] Charts - 2025-07-15 ### [6.1.1] AreaChart diff --git a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md index 614bf7a90c..1fac626c38 100644 --- a/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md +++ b/packages/pluggableWidgets/custom-chart-web/CHANGELOG.md @@ -6,6 +6,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +## [1.1.2] - 2025-09-22 + ### Fixed - We fixed an issue where event data attribute wouldn't successfully get its value set.