deepujain opened a new pull request, #44556: URL: https://github.com/apache/superset/pull/44556
### SUMMARY Stacked bars on a logarithmic axis can lose visible segments, as reported in #25829. This applies the requested control-panel guard: logarithmic mode disables the Stacked Style selector, and choosing a stacked style hides the logarithmic option. Turning the active setting off makes the other option available again. A saved chart with both values already set keeps both controls accessible so the user can clear either setting. Its stored configuration and existing rendering are not silently rewritten. The change is limited to the ECharts Bar panel; shared controls, line/area charts and Mixed Timeseries remain unchanged. The logarithmic option uses the panel's visibility mechanism because the shared CheckboxControl does not support a disabled state. Fixes #25829 ### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF Isolated production SelectControl and CheckboxControl components in Storybook, using the Bar panel configuration. These show the control interaction, not a full Explore page or a database-backed chart. | Before: stacking selectable with log enabled | After: stacking disabled with log enabled | | --- | --- | |  |  | [Stacked mode](https://raw.githubusercontent.com/deepujain/superset/evidence-25829-stacked-log-controls/stacked.png) and [a saved invalid combination with a recovery path](https://raw.githubusercontent.com/deepujain/superset/evidence-25829-stacked-log-controls/legacy.png). ### TESTING INSTRUCTIONS 1. In an ECharts Bar chart, enable Logarithmic axis. Stacked Style is disabled; turning logarithmic mode off restores it. 2. Select Stack. The logarithmic toggle is hidden; clearing stacking restores it. Check horizontal and vertical orientations. 3. Open a saved chart whose stack and log settings are both enabled. Either setting can be cleared, without trapping the user behind two disabled controls. Local checks: - `jest plugins/plugin-chart-echarts/test/Timeseries/Bar/controlPanel.test.ts plugins/plugin-chart-echarts/test/Timeseries/Bar/transformProps.test.ts plugins/plugin-chart-echarts/test/MixedTimeseries/controlPanel.test.ts --runInBand`: 61 tests passed with Node 24.16.0. The five new guard cases fail against the original panel. - `npm run plugins:build`: passed, including declaration generation. - Staged-file `pre-commit run`: all applicable hooks passed, including frontend type checking. - Chromium exercised the real production controls in isolated Storybook for normal, logarithmic, stacked and saved-invalid states, including recovery interactions. Full application E2E and database-backed chart rendering were not run locally. ### ADDITIONAL INFORMATION - [x] Has associated issue: #25829 - [ ] Required feature flags: - [x] Changes UI - [ ] Includes DB Migration (follow approval process in SIP-59) - [ ] Migration is atomic, supports rollback & is backwards-compatible - [ ] Confirm DB migration upgrade and downgrade tested - [ ] Runtime estimates and downtime expectations provided - [ ] Introduces new feature or API - [ ] Removes existing feature or API -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
