Maxime Beauchemin
bce6ca1ae0
refactor: eliminate all static theme dependencies and enable true dynamic theming
...
This comprehensive architectural transformation removes all static theme imports
(supersetTheme, themeObject) across the entire codebase, replacing them with
proper dynamic theme access patterns that support real-time theme switching.
## What Changed
**Static Exports Eliminated:**
- Removed `supersetTheme` and `themeObject` exports from core theme module
- Eliminated static theme dependencies across 47 files
- Updated ESLint rules to reflect removed exports
**Dynamic Theme Architecture:**
- Functional components: Use `useTheme()` hook for reactive theme access
- Class components: Use `withTheme()` HOC for theme injection
- Transform functions: Access `theme` from chartProps parameter
- Test infrastructure: Use `Theme.fromConfig()` for isolated testing
- Singleton pattern: `DEFAULT_THEME` for efficient fallbacks
**Test Architecture Cleanup:**
- Removed unnecessary theme setup from 30+ test files
- Eliminated legacy `dynamicTheme` cruft from logic tests
- Simplified theme assertions to focus on behavior vs implementation details
- Maintained theme testing only where legitimately needed
**Core Infrastructure:**
- ThemeController uses dynamic theme creation instead of static imports
- ChartProps uses singleton DEFAULT_THEME for efficient fallbacks
- Theme providers only at app root and isolated contexts (tests, storybook)
## Why This Was Needed
The previous architecture had static theme imports that:
- Always returned light theme values regardless of current theme mode
- Broke dark mode compatibility in visualizations (fixed in previous commit)
- Created performance overhead with redundant theme instance creation
- Prevented real-time theme switching across components
- Led to inconsistent theme access patterns
## Benefits
- ✅ Perfect dark mode support - no static dependencies to break theming
- ✅ True dynamic theming - all components react to theme changes
- ✅ Clean architecture - minimal providers, consistent patterns
- ✅ Better performance - singleton pattern eliminates waste
- ✅ Future-proof - ready for theme customization and user preferences
- ✅ Developer experience - clear patterns for every context
This transformation enables the next generation of Superset theming with
complete dynamic theme support and perfect dark mode compatibility.
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-09-16 10:57:36 -07:00
Elizabeth Thompson
7d0a472d1e
feat: Add comprehensive dark mode support for chart thumbnails and examples ( #35111 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-09-15 13:53:44 -07:00
SBIN2010
852adaa6cc
feat: conditional formatting improvements in tables ( #34330 )
2025-08-18 15:13:16 -07:00
Maxime Beauchemin
1f482b42eb
feat: completely migrate from DeprecatedThemeColors to Antd semantic tokens ( #34732 )
...
Co-authored-by: Claude <noreply@anthropic.com >
2025-08-18 14:04:26 -07:00
dependabot[bot]
486b0122d0
chore(deps-dev): update jest requirement from ^30.0.4 to ^30.0.5 in /superset-frontend/plugins/plugin-chart-pivot-table ( #34462 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-05 17:46:01 -07:00
Mehmet Salih Yavuz
f554848c9f
fix(PivotTable): Render html in cells if allowRenderHtml is true ( #34351 )
2025-07-29 01:12:37 +03:00
Maxime Beauchemin
5d6a979cd0
chore: remove some of the deprecated theme.colors.* ( #34056 )
2025-07-04 11:39:03 -07:00
dependabot[bot]
5214ee6fd4
chore(deps-dev): update jest requirement from ^30.0.2 to ^30.0.4 in /superset-frontend/plugins/plugin-chart-pivot-table ( #34036 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Li <joe@preset.io >
2025-07-03 12:58:28 -07:00
dependabot[bot]
09c657c899
chore(deps-dev): update @babel/types requirement from ^7.26.9 to ^7.28.0 in /superset-frontend/plugins/plugin-chart-pivot-table ( #34038 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Li <joe@preset.io >
2025-07-03 11:44:21 -07:00
Đỗ Trọng Hải
42288c4784
build(dev-deps): upgrade Jest to major version v30 ( #33979 )
2025-07-03 11:01:40 +07:00
Maxime Beauchemin
dd129fa403
feat(theming): land Ant Design v5 overhaul — dynamic themes, real dark mode + massive styling refactor ( #31590 )
...
Co-authored-by: Enzo Martellucci <52219496+EnxDev@users.noreply.github.com >
Co-authored-by: Diego Pucci <diegopucci.me@gmail.com >
Co-authored-by: Mehmet Salih Yavuz <salih.yavuz@proton.me >
Co-authored-by: Geido <60598000+geido@users.noreply.github.com >
Co-authored-by: Alexandru Soare <37236580+alexandrusoare@users.noreply.github.com >
Co-authored-by: Damian Pendrak <dpendrak@gmail.com >
Co-authored-by: Pius Iniobong <67148161+payose@users.noreply.github.com >
Co-authored-by: Enzo Martellucci <enzomartellucci@gmail.com >
Co-authored-by: Kamil Gabryjelski <kamil.gabryjelski@gmail.com >
2025-06-20 13:38:58 -07:00
JUST.in DO IT
a36e636a58
fix(pivot-table): Revert "fix(Pivot Table): Fix column width to respect currency config ( #31414 )" ( #32968 )
2025-04-01 19:05:36 -03:00
dependabot[bot]
a45ce1e8d1
chore(deps-dev): bump @babel/types from 7.26.7 to 7.26.9 in /superset-frontend ( #32460 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-04 12:29:50 -07:00
Evan Rusackas
6c3886aad0
fix(tooltip): displaying <a> tags correctly ( #32488 )
2025-03-03 15:04:05 -07:00
Đỗ Trọng Hải
19e8a7049b
feat(fe): upgrade superset-frontend to Typescript v5 ( #31979 )
...
Signed-off-by: hainenber <dotronghai96@gmail.com >
Co-authored-by: Michael S. Molina <70410625+michael-s-molina@users.noreply.github.com >
2025-01-29 08:40:33 -03:00
Kamil Gabryjelski
7e2b7941f3
refactor: Upgrade to React 17 ( #31961 )
2025-01-28 16:44:42 +01:00
dependabot[bot]
a5fdf6d14a
chore(deps-dev): update @babel/types requirement from ^7.25.6 to ^7.26.3 in /superset-frontend/plugins/plugin-chart-pivot-table ( #31524 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Evan Rusackas <evan@rusackas.com >
2024-12-19 15:55:16 -07:00
Vitor Avila
43314dc8db
fix(Pivot Table): Fix column width to respect currency config ( #31414 )
2024-12-12 10:44:07 -03:00
Evan Rusackas
a6e05f4558
build(packages): npm build/publish improvements. Making packages publishable again. ( #30196 )
2024-12-10 16:54:41 -07:00
yousoph
3ec3f0a610
fix(explore): Update tooltip copy for rendering html in tables and pivot tables ( #30682 )
...
Co-authored-by: Joe Li <joe@preset.io >
2024-11-01 10:54:50 -07:00
dependabot[bot]
fed117fbf7
build(deps-dev): update @babel/types requirement from ^7.25.2 to ^7.25.6 in /superset-frontend/plugins/plugin-chart-pivot-table ( #30103 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Evan Rusackas <evan@rusackas.com >
2024-09-09 14:55:28 -06:00
Geido
fb6efb9e9a
fix(PivotTable): Pass string only to safeHtmlSpan ( #29895 )
2024-08-08 20:01:18 +03:00
Đỗ Trọng Hải
1c3ef01209
chore(build): uplift several outdated frontend packages ( #29652 )
...
Signed-off-by: hainenber <dotronghai96@gmail.com >
2024-08-06 09:02:01 -06:00
dependabot[bot]
ecb9ff0f8a
build(deps-dev): update @babel/types requirement from ^7.24.5 to ^7.25.2 in /superset-frontend/plugins/plugin-chart-pivot-table ( #29808 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Evan Rusackas <evan@rusackas.com >
2024-08-02 16:38:42 -07:00
Maxime Beauchemin
c5829419e3
feat: get html (links/styling/img/...) to work in pivot table ( #29724 )
2024-07-31 16:43:56 -07:00
dependabot[bot]
a9229899f6
build(deps-dev): update @babel/types requirement from ^7.24.0 to ^7.24.5 in /superset-frontend/plugins/plugin-chart-pivot-table ( #28297 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: GitHub-Actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-07-29 12:53:44 -06:00
Đỗ Trọng Hải
813775e719
chore(build): sync Jest version across plugins ( #29414 )
...
Signed-off-by: hainenber <dotronghai96@gmail.com >
2024-07-09 13:20:13 -06:00
Matheus Batista
024cfd86e4
feat(formatters): Add custom d3-time-format locale ( #24263 )
2024-06-10 12:24:33 -06:00
Đỗ Trọng Hải
0ca42a8e4d
chore: remove React 16.4's obsolete React imports ( #28571 )
...
Signed-off-by: hainenber <dotronghai96@gmail.com >
2024-06-05 08:13:24 -03:00
Michael S. Molina
95706d9be2
feat: Adds the Featured Charts dashboard ( #28789 )
2024-06-04 16:59:10 -03:00
Edgar Ulloa
7263c7cb47
refactor: add "button" role to clickable UI elements for improved accessibility ( #26602 )
2024-04-18 18:28:02 +02:00
dependabot[bot]
bbe209a9e8
build(deps-dev): update @babel/types requirement from ^7.23.9 to ^7.24.0 in /superset-frontend/plugins/plugin-chart-pivot-table ( #27334 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: GitHub-Actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-04-05 08:29:12 -06:00
Jamie King
fb919c718d
docs: replace broken david badges with libraries.io ( #27903 )
2024-04-04 23:00:23 -06:00
dependabot[bot]
5cde275965
build(deps-dev): update @types/jest requirement from ^29.5.11 to ^29.5.12 in /superset-frontend/plugins/plugin-chart-pivot-table ( #26975 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: GitHub-Actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-04-03 14:48:03 -06:00
Stepan
60fe58196a
fix(pivot-table-v2): Added forgotten translation pivot table v2 ( #22840 )
2024-02-15 10:16:02 -07:00
Evan Rusackas
753ef69529
feat(storybook): Co-habitating/Upgrading Storybooks to v7 (dependency madness ensues) ( #26907 )
2024-02-15 07:40:17 -07:00
Ville Brofeldt
19f8405bc0
chore: make TS enums strictly PascalCase ( #26875 )
2024-01-31 17:40:44 -08:00
Michael S. Molina
8a2f7d378a
refactor: Removes the deprecated GENERIC_CHART_AXES feature flag ( #26372 )
2024-01-31 09:45:57 -05:00
dependabot[bot]
39973cd38e
build(deps-dev): update @babel/types requirement from ^7.13.12 to ^7.23.9 in /superset-frontend/plugins/plugin-chart-pivot-table ( #26881 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Maxime Beauchemin <maximebeauchemin@gmail.com >
2024-01-30 22:51:37 -08:00
Geido
092129201e
chore: Reformat changelogs ( #26815 )
2024-01-26 21:48:17 +01:00
dependabot[bot]
96adad5843
build(deps-dev): bump @types/jest from 26.0.24 to 29.5.11 in /superset-frontend/plugins/plugin-chart-pivot-table ( #26481 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Evan Rusackas <evan@rusackas.com >
2024-01-23 14:38:43 -07:00
Antonio Rivero
7536dd12cd
fix(charts): Time grain is None when dataset uses Jinja ( #25842 )
2023-11-06 09:51:28 -08:00
Michael S. Molina
be11556799
feat: Adds options to show subtotals in Pivot Table ( #24960 )
2023-08-14 09:20:32 -03:00
Kamil Gabryjelski
f7e76d02b7
feat: Add currencies controls in control panels ( #24718 )
2023-08-02 19:22:45 +02:00
Michael S. Molina
6e59f11f4c
fix: Dashboard time grain in Pivot Table ( #24665 )
2023-07-13 11:33:16 -03:00
Kamil Gabryjelski
83ff4cd86a
feat: Implement currencies formatter for saved metrics ( #24517 )
2023-06-28 20:51:40 +02:00
Evan Rusackas
46c2479db2
fix(capitalization): Capitalizing the 'metric' label in Pivot Tables ( #24265 )
2023-06-07 16:34:52 -06:00
Beto Dealmeida
314987f32d
fix: pivot v2 charts created before GENERIC_CHART_AXES is enabled ( #23731 )
2023-04-25 19:44:50 -07:00
Nicolas Charpentier
60c2e7013d
docs: cleanup references to apache-superset/superset-ui ( #23796 )
2023-04-25 09:18:27 -06:00
Kamil Gabryjelski
da5f7155c6
fix: Further drill by in Pivot Table ( #23692 )
2023-04-14 15:50:13 +02:00