This is an automated email from the ASF dual-hosted git repository.

enzomartellucci pushed a change to branch enxdev/fix/dashboard-edit-mode
in repository https://gitbox.apache.org/repos/asf/superset.git


    from 422bba62294 fix test
     add 88a14f2ba0d fix(FiltersBadge): world map wont show filter icon after 
refresh page (#37260)
     add c28729f944f chore(lint): add jest/expect-expect rule for test 
assertions (#37887)
     add 534fa48f1ff chore(lint): enforce stricter eslint/oxlint rules (#37883)
     add d640fe42c9b chore: remove Applitools visual testing integration 
(#37873)
     add 98ca599eef9 perf: fix N+1 query in chart list API when thumbnail_url 
is requested (#37895)
     add 9089f300459 chore(lint): upgrade array creation, effect, and 
TypeScript rules (#37885)
     add 255a0ada814 fix(gtf): add missing user_id to task commands (#37867)
     add 5f0001affc9 feat(timeseries): remove stream style for bar charts 
(#37532)
     add 26a2e127793 perf: fix N+1 query in Slice.datasource property (#37899)
     add 00d02cb2ea1 perf(gtf): improve task base filter (#37900)
     add b0be47a4ac2 fix: Unreachable drop zones within tabs in dashbboard 
editor (#37904)
     add b012b63e5b8 fix(native-filters): align refresh icon with default value 
field (#37802)
     add 981b370fe9e chore(storybook): consolidate storybook and enhance plugin 
stories (#37771)
     add 77148277b96 feat(charts): improve negative stacked bar label 
positioning and accessibility (#37405)
     add 19ec7b48a0f fix: Conditional formatting painting empty cells (#37894)
     add 30ccbb2e050 chore(deps): update @types/geojson requirement from 
^7946.0.10 to ^7946.0.16 in 
/superset-frontend/plugins/plugin-chart-cartodiagram (#37908)
     add afacca350f0 chore(deps-dev): bump oxlint from 1.42.0 to 1.46.0 in 
/superset-frontend (#37917)
     add 3f64c257120 fix(mcp): Add database_name as valid filter column for 
list_datasets (#37865)
     add 4dfece9ee54 feat(mcp): add event_logger instrumentation to MCP tools 
(#37859)
     add 88ce1425e2c fix(roles): optimize user fetching and resolve N+1 query 
issue (#37235)
     add dbf5e1f1314 feat(theme): use IBM Plex Mono for code and numerical 
displays (#37366)
     add 58d245c6b03 chore(deps): Update sqlachemy-utils to 0.42.0 (#36240)
     add 0d5ddb36749 feat(themes): add enhanced validation and error handling 
with fallback mechanisms (#37378)
     add 6328e516206 test(examples): add tests for UUID threading and security 
bypass (#37557)
     add 142b2cc4254 test(e2e): add Playwright E2E tests for Chart List page 
(#37866)
     add 080f629ea21 fix(echarts): formula annotations not rendering with 
dataset-level columns label (#37522)
     add 0c0d915391d fix(echarts-timeseries-combined-labels): combine 
annotation labels for events at same timestamp (#37164)
     add e3e2bece6bc feat(owners): display email in owner selectors (#37906)
     add ffd7f103207 chore(deps): bump markdown-to-jsx from 9.7.3 to 9.7.4 in 
/superset-frontend (#37959)
     add 75d6a95ac39 chore(deps): bump aquasecurity/trivy-action from 0.33.1 to 
0.34.0 (#37958)
     add 79f51e2ae7d chore(deps-dev): bump webpack from 5.105.1 to 5.105.2 in 
/docs (#37953)
     add 475615e1186 chore(deps): bump ioredis from 5.9.2 to 5.9.3 in 
/superset-websocket (#37951)
     add a65f73a5323 chore(deps): bump qs from 6.14.1 to 6.14.2 in /docs 
(#37937)
     add 73adff55ee8 chore(deps): Relax sqlalchemy-utils lower bound for 
pydoris compatibility  (#37949)
     add 097f474f24b chore(deps): bump pillow from 11.3.0 to 12.1.1 (#37935)
     add cbf153845ed chore(deps): bump qs from 6.14.1 to 6.14.2 in 
/superset-websocket/utils/client-ws-app (#37933)
     add 440602ef344 fix(utils): datetime_to_epoch function is fixed to 
timezone aware epoch (#37979)
     add 5300f65a74e chore(deps): bump qs from 6.14.1 to 6.14.2 in 
/superset-frontend (#37936)
     add d748ed19ced chore(deps): bump hot-shots from 13.2.0 to 14.0.0 in 
/superset-websocket (#37993)
     add 232b34d9443 chore(deps-dev): bump webpack-sources from 3.3.3 to 3.3.4 
in /superset-frontend (#38004)
     add eee3af57759 chore(deps-dev): bump oxlint from 1.46.0 to 1.47.0 in 
/superset-frontend (#38005)
     add 982e2c1ef7f chore(deps-dev): bump webpack from 5.105.0 to 5.105.2 in 
/superset-frontend (#38003)
     add c873225308e chore(deps-dev): bump jsdom from 28.0.0 to 28.1.0 in 
/superset-frontend (#37997)
     add d47a7105dfa chore(deps): bump caniuse-lite from 1.0.30001769 to 
1.0.30001770 in /docs (#37994)
     add 2c9f0c1c2a8 chore(deps-dev): bump wait-on from 9.0.3 to 9.0.4 in 
/superset-frontend (#37999)
     add 22ac5e02b60 fix(deckgl): remove dataset field from Deck.gl Layer 
Visibility Display controls (#37611)
     add 8853ff19d48 chore(websocket): migrate external uuid usage with Node's 
native UUID generator (#37101)
     add 7b21979fa3b fix(charts): Force refresh uses async mode when GAQ is 
enabled (#37845)
     add 3e3c9686de8 perf(dashboard): Batch RLS filter lookups for dashboard 
digest computation (#37941)
     add 84f1ee44093 feat: added conditional formatting enhancements string to 
pivot table (#35863)
     add 604d49f5579 chore(deps): bump datamaps from 0.5.9 to 0.5.10 in 
/superset-frontend (#37913)
     add 9566e8a9c6a chore(deps-dev): bump 
eslint-plugin-react-you-might-not-need-an-effect from 0.8.5 to 0.9.1 in 
/superset-frontend (#38000)
     add 5cd829f13c8 fix(mcp): handle more chart types in get_chart_data 
fallback query construction (#37969)
     add f7218e7a192 feat(mcp): expose current user identity in 
get_instance_info and add created_by_fk filter (#37967)
     add aec1f6edce9 fix(mcp): use last data-bearing statement in execute_sql 
response (#37968)
     add 5a777c0f45f feat(matrixify): add single metric constraint (#37169)
     add 746e266e901 chore(deps): bump swagger-ui-react from 5.31.0 to 5.31.1 
in /docs (#38023)
     add b0f9a73f63d chore(deps-dev): bump typescript-eslint from 8.54.0 to 
8.56.0 in /superset-websocket (#38020)
     add 5efc7ea5a51 chore(deps-dev): bump typescript-eslint from 8.55.0 to 
8.56.0 in /docs (#38024)
     add 868e719c60e chore(deps-dev): bump oxlint from 1.47.0 to 1.48.0 in 
/superset-frontend (#38055)
     add 65c460c9d26 chore(deps-dev): bump @swc/plugin-emotion from 14.5.0 to 
14.6.0 in /superset-frontend (#38053)
     add cd4cd537260 chore(deps-dev): bump css-loader from 7.1.3 to 7.1.4 in 
/superset-frontend (#38050)
     add 090eab099c0 chore(deps): bump storybook from 8.6.15 to 8.6.16 in /docs 
(#38043)
     add a30492f55e1 fix(plugin/cal-heatmap): properly color tooltip's text for 
both dark/light theme (#38010)
     add 9131739f98b fix(home): null check for possibly undefined filtered 
other table data due to insufficient permission (#37983)
     add 7b56fc1714c fix(docs): correct DB module filename for editing + update 
DB metadata file (#37990)
     add 0d2c8fd3737 chore(deps): bump @storybook/core from 8.6.15 to 8.6.16 in 
/docs (#38046)
     add 21481eef4fc chore(deps): bump the storybook group in /docs with 9 
updates (#38067)
     add 29f499528ff chore(deps-dev): bump eslint-plugin-testing-library from 
7.15.4 to 7.16.0 in /superset-frontend (#38066)
     add af3e0882331 build(deps): resolve GHSA-36jr-mh4h-2g58 by upgrading 
d3-color to 3.1.0 (#37981)
     add 11a36ff4887 chore(deps-dev): bump the storybook group across 1 
directory with 11 updates (#38068)
     add 9ec56f5f02b fix: Include app_root in next param (#37942)
     add 33441ccf3db feat: add formatting column and formatting object to 
conditional formating table (#35897)
     add f54bbdc06b3 chore(deps): bump dawidd6/action-download-artifact from 14 
to 15 (#38060)
     add de079a7b199 feat(deps)!: bump postgresql from 16 to 17 (#37782)
     add 6b80135aa28 chore(lint): enforce more strict eslint/oxlint rules 
(batch 2) (#37884)
     add c175346808a fix(table-charts): Prevent time grain from altering Raw 
Records in Tables + Interactive Tables (#37561)
     add 0b77ace1109 chore: fix lint issue with `no-unsafe-optional-chaining` 
rule (#38103)
     add f5a5a804e23 perf(dashboard): skip thumbnail_url computing on single 
dashboard endpoint (#38015)
     add b7a3224f040 feat: Larger folder drag area in folders editor (#38102)
     add e12140beb65 fix: Warning toast copy in folders editor (#38099)
     add 86c8fa5cd7b fix: Badge count in folders editor (#38100)
     add f049d3e34aa fix: Search in folders editor with verbose names (#38101)
     add 1f76944c2b1 fix: Add editors to ContributionConfig and additional 
properties to EditorKeyword (#38098)
     add 5cc8ae5427d chore(deps): bump ol from 7.5.2 to 10.8.0 in 
/superset-frontend (#37961)
     add 6a61baf5be8 fix(alerts): show friendly filter names in report edit 
modal (#38054)
     add 3868821dc81 fix(webpack): skip building service worker in dev (#38106)
     add 5278deaf635 fix(metrics): normalize legacy currency strings (#37455)
     add f4acce5727f fix(table): preserve time grain aggregation when temporal 
column casing changes (#37893)
     add 88f0e322e32 chore(deps): bump baseline-browser-mapping from 2.9.19 to 
2.10.0 in /docs (#38113)
     add 58d8aa01f82 chore(deps): bump react-intersection-observer from 10.0.2 
to 10.0.3 in /superset-frontend (#38114)
     add 69653dfd08b chore(deps-dev): bump baseline-browser-mapping from 2.9.19 
to 2.10.0 in /superset-frontend (#38116)
     add 1ecff6fe5c1 fix(thumbnails): stabilize digest by sorting datasources 
and charts (#38079)
     add 9f8b212ccc7 feat(mcp): add LIKE, ILIKE, IN, NOT IN filter operators to 
MCP chart tools (#38071)
     add 79372465757 fix(button): use colorLink token for link-style buttons 
(#38121)
     add e30a9caba51 fix(dataset-modal): fix folders tab scrollbar by 
establishing proper flex chain (#38123)
     add 6fdaa8e9b36 fix(crud): reorder table actions + improve react 
memoization + improve hooks (#37897)
     add 1a77e171799 fix(chart-customizations): support migration of dynamic 
group by (#37176)
     add 6f34ba7d4a9 fix(table-chart): support orderby adhoc columns with 
server-side pagination (#37521)
     add 2d44f52ad16 fix(encryption): resolve SECRET_KEY lazily to fix silent 
re-encrypt-secrets failures (#37982)
     add 44d6b6a5139 fix(table): preserve line breaks in cell content modal 
(#37036)
     add cff854b06e3 chore(deps-dev): bump oxlint from 1.48.0 to 1.49.0 in 
/superset-frontend (#38115)
     add b290f712452 fix(explore): prevent theme object from being passed to 
ReactAce in TextAreaControl (#38117)
     add b565128fe76 fix(charts): improve error display for failed charts in 
dashboards (#37939)
     add 577b965a601 chore(deps-dev): bump ajv from 6.12.6 to 6.14.0 in 
/superset-frontend (#38132)
     add 3d6644864d4 build(deps): migrate to lighter and modern `react-icons` 
(#38125)
     add 987b6a6f041 chore(deps): bump swagger-ui-react from 5.31.1 to 5.31.2 
in /docs (#38140)
     add 5e6524954c8 chore(deps): pin react-icons to 5.4.0 in 
/superset-frontend (#38144)
     add 82fce8d7de8 chore(deps-dev): bump @types/node from 25.2.3 to 25.3.0 in 
/superset-frontend (#38143)
     add 5bee32ea93d chore(deps): bump aquasecurity/trivy-action from 0.34.0 to 
0.34.1 (#38138)
     add 6424194c874 chore(deps): bump underscore from 1.13.7 to 1.13.8 in 
/superset-frontend (#38142)
     add 159fb5d6f4a chore(deps-dev): bump ajv from 6.12.6 to 6.14.0 in 
/superset-frontend/cypress-base (#38131)
     add a87a006aaeb ci: declare explicit permissions in maintenance workflows 
(#38159)
     add 672a3805876 chore(frontend): enable additional oxlint rules for better 
code hygiene (#38145)
     add 3f64ad3da5e fix(i18n): wrap untranslated frontend strings and add i18n 
lint rule (#37776)
     add 2a3567d2f11 fix(mcp): Remove unsupported thumbnail/preview URLs and 
internal fields from MCP schemas (#38109)
     add cbb80f04627 refactor(extensions): simplify registerEditorProvider API 
(#38127)
     add 6f3a200c190 chore(deps-dev): bump @types/lodash from 4.17.23 to 
4.17.24 in /superset-websocket (#38179)
     add 131a97b6579 fix(handlebars): add missing currencyformatter.js 
dependency (#38173)
     add 50cc1b93d22 fix(security): fix Guest Token API 422 error by disabling 
JWT sub claim verification (#38177)
     add 6e94a6c21af fix(mcp): fix dashboard chart placement with proper COLUMN 
layout and tab support (#37970)
     add 40f609fdce2 fix(extensions): enforce correct naming conventions 
(#38167)
     add 228b5984096 feat: Labels for encrypted fields (#38075)
     add c4eb7de6de8 fix(excel): remove unwanted index column from Excel 
exports (#38176)
     add e06427d1efe feat(embedded): add feature flag to disable logout button 
in embedded contexts (#37537)
     add 8f070169a59 perf(datasource): add pagination to datasource editor 
tables to prevent browser freeze (#37555)
     add 8a74424545a fix(types): add explicit types for extendedDayjs plugin 
methods (#37923)
     add 615f13419cb fix(jest): ignore storybook-static and package __mocks__ 
directories (#37946)
     add 8eb30468884 fix(docs): guard window reference in logging.ts for SSR 
compatibility (#38201)
     add b8459c15b86 chore(deps-dev): bump @typescript-eslint/parser from 
8.56.0 to 8.56.1 in /docs (#38211)
     add f60432e34cf fix: Allow non-owners to fave/unfave charts (#38095)
     add fca8a495611 feat: auto refresh dashboard (#37459)
     add 974bee14c3e fix(extensions): make LOCAL_EXTENSIONS loading resilient 
to individual failures (#38217)
     add 7b04d251d60 fix(build): restore automatic .d.ts generation in dev mode 
(#38202)
     add 35c135852e8 feat(extensions): add mandatory publisher field to 
extension metadata (#38200)
     add 0d66accc377 chore(build): prevent opening Dependabot PRs for `@rjsf/*` 
deps due to React 18 constraint (#37976)
     add 97b8585fe5d chore(deps-dev): bump typescript-eslint from 8.56.0 to 
8.56.1 in /docs (#38209)
     add aa475734ef9 chore(deps-dev): bump eslint from 9.39.2 to 10.0.2 in 
/superset-websocket (#38204)
     add e4a7cd30c34 fix(GAQ): don't use async queries when cache timeout is -1 
(#38089)
     add 76a2559b2b8 fix(ci): revert "chore(deps): bump 
JustinBeckwith/linkinator-action from 2.3 to 2.4" (#38164)
     add 4809903bb80 chore(deps): bump markdown-to-jsx from 9.7.4 to 9.7.6 in 
/superset-frontend (#38225)
     add 9e4a88dfa2b chore(deps): bump antd from 6.3.0 to 6.3.1 in /docs 
(#38221)
     add 01c1b2eb8f0 chore(deps-dev): bump @types/lodash from 4.17.23 to 
4.17.24 in /superset-frontend (#38224)
     add 5eb35a47957 fix(reports): validate database field on PUT report 
schedule (#38084)
     add 1cd35bb1029 feat(mcp): dynamic feature availability via menus and 
feature flags (#37964)
     add 30849079318 feat(mcp): support unsaved state in Explore and Dashboard 
tools (#37183)
     add a1312a86e88 fix(mcp): normalize column names to fix time series filter 
prompt issue (#37187)
     add b543358d2f5 chore(deps-dev): bump @swc/core from 1.15.11 to 1.15.13 in 
/superset-frontend (#38237)
     add 1b605c4ddad chore(deps): bump fs-extra from 11.3.2 to 11.3.3 in 
/superset-frontend (#38234)
     add 79b2647481b chore(deps): bump @swc/core from 1.15.11 to 1.15.13 in 
/docs (#38207)
     add 37a46370181 chore(deps-dev): bump typescript-eslint from 8.56.0 to 
8.56.1 in /superset-websocket (#38203)
     add 438a9274206 chore(deps-dev): bump oxlint from 1.49.0 to 1.50.0 in 
/superset-frontend (#38240)
     add c54b21ef988 fix(mcp): add eager loading to get_info tools to prevent 
N+1 query timeouts (#38129)
     add cc1128a404a feat(mcp): add response size guard to prevent oversized 
responses (#37200)
     add eef4d95c229 fix(mcp): add dataset validation for chart tools (#37185)
     add abf0b7cf4b8 fix(mcp): use broad Exception in outermost tool-level 
handlers (#38254)
     add 26053a8b5d3 fix(alert-modal): show the add filter button on firefox 
(#38093)
     add 2b6c745444b fix(ci): use OIDC auth token for successful Codecov upload 
(#38218)
     add f04705f46c8 Merge branch 'master' into enxdev/fix/dashboard-edit-mode

No new revisions were added by this update.

Summary of changes:
 .github/dependabot.yml                             |   100 +-
 .github/workflows/bashlib.sh                       |    23 -
 .github/workflows/dependency-review.yml            |     6 +-
 .github/workflows/docker.yml                       |     2 +-
 .github/workflows/no-hold-label.yml                |     3 +
 .github/workflows/pre-commit.yml                   |     3 +
 .github/workflows/superset-app-cli.yml             |     2 +-
 .github/workflows/superset-applitool-cypress.yml   |    91 -
 .../workflows/superset-applitools-storybook.yml    |    52 -
 .github/workflows/superset-docs-deploy.yml         |     4 +-
 .github/workflows/superset-docs-verify.yml         |     4 +-
 .github/workflows/superset-e2e.yml                 |     4 +-
 .github/workflows/superset-frontend.yml            |    28 +-
 .github/workflows/superset-playwright.yml          |     2 +-
 .../workflows/superset-python-integrationtest.yml  |     2 +-
 .github/workflows/superset-python-presto-hive.yml  |     4 +-
 .github/workflows/tech-debt.yml                    |     3 +
 UPDATING.md                                        |    36 +
 docker-compose-image-tag.yml                       |     2 +-
 docker-compose-light.yml                           |     2 +-
 docker-compose-non-dev.yml                         |     2 +-
 docker-compose.yml                                 |     2 +-
 docs/.nvmrc                                        |     2 +-
 docs/developer_portal/extensions/development.md    |    44 +-
 .../extensions/extension-points/editors.md         |     8 +-
 docs/developer_portal/extensions/quick-start.md    |    73 +-
 .../guidelines/frontend-style-guidelines.md        |     2 +-
 docs/docs/configuration/configuring-superset.mdx   |     8 +-
 docs/docs/configuration/networking-settings.mdx    |    18 +
 docs/docusaurus.config.ts                          |     1 -
 docs/i18n/en/docusaurus-theme-classic/footer.json  |     2 +-
 docs/package.json                                  |    35 +-
 docs/src/components/databases/DatabasePage.tsx     |     8 +-
 docs/src/data/databases.json                       |   170 +-
 docs/static/feature-flags.json                     |     8 +
 docs/static/img/applitools.png                     |   Bin 37046 -> 0 bytes
 docs/yarn.lock                                     |  1010 +-
 helm/superset/Chart.lock                           |     6 +-
 helm/superset/Chart.yaml                           |     4 +-
 helm/superset/README.md                            |     4 +-
 pyproject.toml                                     |     4 +-
 requirements/base.txt                              |     2 +-
 requirements/development.txt                       |     2 +-
 superset-core/pyproject.toml                       |     2 +-
 .../src/superset_core/extensions/constants.py      |    35 +-
 .../src/superset_core/extensions/types.py          |    35 +-
 .../src/superset_extensions_cli/cli.py             |   177 +-
 .../src/superset_extensions_cli/exceptions.py      |     6 +-
 .../templates/backend/pyproject.toml.j2            |     2 +-
 .../templates/backend/src/package/entrypoint.py.j2 |     2 +-
 .../templates/extension.json.j2                    |    11 +-
 .../templates/frontend/package.json.j2             |     2 +-
 .../templates/frontend/webpack.config.js.j2        |     4 +-
 .../src/superset_extensions_cli/types.py           |    49 +
 .../src/superset_extensions_cli/utils.py           |   340 +
 superset-extensions-cli/tests/conftest.py          |    39 +-
 superset-extensions-cli/tests/test_cli_build.py    |    85 +-
 superset-extensions-cli/tests/test_cli_bundle.py   |    19 +-
 superset-extensions-cli/tests/test_cli_dev.py      |    29 +-
 superset-extensions-cli/tests/test_cli_init.py     |   195 +-
 .../tests/test_name_transformations.py             |   502 +
 superset-extensions-cli/tests/test_templates.py    |   127 +-
 superset-frontend/.eslintrc.js                     |    33 +-
 superset-frontend/.eslintrc.minimal.js             |     5 +-
 superset-frontend/.storybook/main.js               |    17 +-
 superset-frontend/.storybook/preview.jsx           |    21 +
 .../shared}/ErrorMessage.tsx                       |     0
 .../shared}/Expandable.tsx                         |     0
 .../shared}/ResizableChartDemo.tsx                 |    14 +-
 .../shared}/ResizablePanel.tsx                     |    20 +-
 .../shared}/VerifyCORS.tsx                         |     0
 .../shared/createQueryStory.tsx}                   |     4 +-
 .../shared/dummyDatasource.ts                      |     0
 .../Modal => .storybook/shared}/index.ts           |    31 +-
 superset-frontend/applitools.config.js             |    27 -
 .../cypress-base/applitools.config.js              |    29 -
 superset-frontend/cypress-base/cypress.config.ts   |   120 +-
 .../cypress/applitools/chartlist.test.ts           |    45 -
 .../cypress/applitools/dashboard.test.ts           |    53 -
 .../cypress/applitools/dashboardlist.test.ts       |    45 -
 .../cypress/applitools/explore.test.ts             |    46 -
 .../cypress-base/cypress/applitools/sqllab.test.ts |    32 -
 .../cypress-base/cypress/support/e2e.ts            |     1 -
 superset-frontend/cypress-base/package-lock.json   | 17079 +++++++------------
 superset-frontend/cypress-base/package.json        |     1 -
 superset-frontend/cypress-base/tsconfig.json       |     4 +-
 superset-frontend/jest.config.js                   |     8 +-
 superset-frontend/oxlint.json                      |    55 +-
 superset-frontend/package-lock.json                |  7499 ++------
 superset-frontend/package.json                     |    62 +-
 .../plugin-chart/templates/package-lock.erb        |    18 -
 .../packages/superset-core/package.json            |     4 +-
 .../packages/superset-core/src/api/editors.ts      |    18 +-
 .../src/ui/components/Alert/index.tsx              |     3 +-
 .../superset-core/src/ui/theme/GlobalStyles.tsx    |     6 +-
 .../superset-core/src/ui/theme/Theme.test.tsx      |     2 +-
 .../packages/superset-core/src/ui/theme/types.ts   |     1 +
 .../superset-core/src/ui/theme/utils/themeUtils.ts |    18 +-
 .../packages/superset-core/src/utils/index.ts      |     1 +
 .../superset-core/src/utils/isBlank.test.ts        |    59 +
 .../superset-core/src/utils/isBlank.ts}            |    16 +-
 .../packages/superset-core/src/utils/logging.ts    |     3 +-
 .../superset-ui-chart-controls/package.json        |     1 -
 .../components/RadioButtonControl.tsx              |   103 +-
 .../src/shared-controls/matrixifyControls.tsx      |    33 +-
 .../src/shared-controls/mixins.tsx                 |     4 +-
 .../src/shared-controls/sharedControls.tsx         |    14 +-
 .../superset-ui-chart-controls/src/types.ts        |    11 +
 .../src/utils/getColorFormatters.ts                |    15 +-
 .../components/RadioButtonControl.test.tsx         |   420 +
 .../test/utils/getColorFormatters.test.ts          |   111 +
 .../packages/superset-ui-core/package.json         |     4 +-
 .../components/Matrixify/MatrixifyGridCell.tsx     |     3 +-
 .../src/chart/components/StatefulChart.tsx         |     3 +-
 .../chart/stories}/ChartDataProvider.stories.tsx   |     4 +-
 .../src/chart/stories}/SuperChart.stories.tsx      |     2 +-
 .../src/color/stories}/ColorPalettes.stories.tsx   |     0
 .../src/color/stories}/RenderPalettes.tsx          |     0
 .../src/color/stories}/color-styles.css            |    11 +-
 .../AsyncAceEditor/AsyncAceEditor.test.tsx         |    15 +
 .../src/components/AsyncAceEditor/index.tsx        |     5 +-
 .../src/components/Button/Button.stories.tsx       |     2 +-
 .../src/components/Button/index.tsx                |    42 +-
 .../components/CachedLabel/CachedLabel.stories.tsx |   100 +
 .../src/components/Icons/AntdEnhanced.tsx          |    10 +-
 .../src/components/Label/Label.test.tsx            |     5 +
 .../src/components/Layout/Layout.test.tsx          |     8 +-
 .../src/components/Loading/index.tsx               |     9 +-
 .../src/components/MetadataBar/ContentConfig.tsx   |     2 +-
 .../src/components/MetadataBar/MetadataBar.tsx     |     4 +-
 .../src/components/Modal/Modal.tsx                 |     2 +-
 .../components/ModalTrigger/ModalTrigger.test.tsx  |     2 +-
 .../SafeMarkdown/SafeMarkdown.stories.tsx          |   249 +
 .../TableCollection/TableCollection.stories.tsx    |   530 +
 .../src/connection/callApi/callApi.ts              |    10 +-
 .../src/connection/stories}/Connection.stories.tsx |    12 +-
 .../src/models/ExtensibleFunction.ts               |     3 +-
 .../stories}/NumberFormat.stories.tsx              |     0
 .../superset-ui-core/src/query/types/Dashboard.ts  |    29 +
 .../src/style/stories}/Theme.stories.tsx           |     0
 .../time-format/stories}/TimeFormat.stories.tsx    |     0
 .../packages/superset-ui-core/src/utils/dates.ts   |    40 +-
 .../superset-ui-core/src/utils/featureFlags.ts     |     1 +
 .../superset-ui-core/src/utils/html.test.tsx       |     1 +
 .../packages/superset-ui-core/src/utils/html.tsx   |     2 +
 .../chart/components/ChartDataProvider.test.tsx    |     2 +-
 .../test/chart/components/SuperChart.test.tsx      |     2 +-
 .../test/connection/callApi/callApi.test.ts        |    15 +
 .../test/utils/getSelectedText.test.ts             |     3 +-
 .../packages/superset-ui-demo/.babelrc.json        |    18 -
 .../packages/superset-ui-demo/.storybook/main.js   |    55 -
 .../superset-ui-demo/.storybook/preview.js         |    77 -
 .../superset-ui-demo/.storybook/storybook.css      |    19 -
 .../superset-ui-demo/.storybook/themeDecorator.jsx |    10 -
 .../packages/superset-ui-demo/CHANGELOG.md         |    89 -
 .../packages/superset-ui-demo/README.md            |    28 -
 .../packages/superset-ui-demo/package.json         |    84 -
 .../storybook/stories/ExampleApp.stories.jsx       |    90 -
 .../LegacyPluginChartCalendar.stories.tsx          |    53 -
 .../legacy-plugin-chart-map-box/MapBox.stories.tsx |    58 -
 .../Partition.stories.tsx                          |    52 -
 .../legacy-plugin-chart-rose/Rose.stories.tsx      |    45 -
 .../legacy-preset-chart-deckgl/Arc/payload.js      |   269 -
 .../legacy-preset-chart-deckgl/Grid/payload.js     |   113 -
 .../legacy-preset-chart-deckgl/Hex/payload.js      |   113 -
 .../legacy-preset-chart-deckgl/Path/payload.js     |   227 -
 .../Polygon/geojsonPayload.js                      |   130 -
 .../legacy-preset-chart-deckgl/Polygon/payload.js  |   382 -
 .../legacy-preset-chart-deckgl/Scatter/payload.js  |   228 -
 .../Screengrid/payload.js                          |   135 -
 .../BoxPlot/NVD3BoxPlot.stories.tsx                |    28 -
 .../legacy-preset-chart-nvd3/BoxPlot/data.ts       |    77 -
 .../BoxPlot/stories/basic.tsx                      |    37 -
 .../Bubble/NVD3Bubble.stories.tsx                  |    29 -
 .../Bubble/stories/basic.tsx                       |    55 -
 .../Bullet/NVD3Bullet.stories.tsx                  |    29 -
 .../Bullet/stories/basic.tsx                       |    41 -
 .../Compare/NVD3Compare.stories.tsx                |    30 -
 .../Compare/stories/basic.tsx                      |    48 -
 .../Compare/stories/timeFormat.tsx                 |   249 -
 .../plugin-chart-echarts/Gauge/Gauge.stories.tsx   |    52 -
 .../plugin-chart-echarts/Graph/Graph.stories.tsx   |    54 -
 .../PivotTable.stories.tsx                         |    74 -
 .../plugins/plugin-chart-table/birthNames.json     | 13354 ---------------
 .../plugin-chart-word-cloud/WordCloud.stories.tsx  |   188 -
 .../packages/superset-ui-demo/tsconfig.json        |    22 -
 .../components/modals/ChartPropertiesModal.ts}     |    59 +-
 .../playwright/helpers/api/assertions.ts           |    58 +
 superset-frontend/playwright/helpers/api/chart.ts  |   104 +
 .../playwright/helpers/fixtures/testAssets.ts      |    57 +-
 .../playwright/pages/ChartListPage.ts              |   132 +
 .../tests/experimental/chart/chart-list.spec.ts    |   307 +
 .../tests/experimental/chart/chart-test-helpers.ts |    88 +
 .../experimental/dataset/dataset-list.spec.ts      |    51 +-
 .../src/ReactCalendar.tsx                          |     2 +-
 .../stories/LegacyPluginChartCalendar.stories.tsx  |   123 +
 .../src/stories}/data.ts                           |     0
 .../legacy-plugin-chart-calendar/tsconfig.json     |     3 +-
 .../stories}/LegacyPluginChartChord.stories.tsx    |    45 +-
 .../legacy-plugin-chart-chord/src/stories}/data.ts |    10 +-
 .../legacy-plugin-chart-chord/tsconfig.json        |     3 +-
 .../src/stories}/CountryMap.stories.tsx            |    29 +-
 .../legacy-plugin-chart-country-map/tsconfig.json  |     3 +-
 .../legacy-plugin-chart-horizon/package.json       |     2 +-
 .../src/stories}/Horizon.stories.tsx               |    36 +-
 .../src/stories}/data.ts                           |     0
 .../legacy-plugin-chart-horizon/tsconfig.json      |     3 +-
 .../src/ScatterPlotGlowOverlay.tsx                 |     2 +-
 .../src/stories/MapBox.stories.tsx                 |   107 +
 .../src/stories}/data.ts                           |     0
 .../legacy-plugin-chart-map-box/tsconfig.json      |     3 +-
 .../src/TTestTable.tsx                             |     2 +-
 .../src/stories}/TTest.stories.tsx                 |    45 +-
 .../src/stories}/data.ts                           |     0
 .../tsconfig.json                                  |     3 +-
 .../src/stories}/ParallelCoordinates.stories.tsx   |    53 +-
 .../src/stories}/data.ts                           |     0
 .../tsconfig.json                                  |     3 +-
 .../src/stories/Partition.stories.tsx              |   101 +
 .../src/stories}/data.ts                           |     0
 .../legacy-plugin-chart-partition/tsconfig.json    |     3 +-
 .../plugins/legacy-plugin-chart-rose/src/Rose.ts   |     2 +-
 .../src/stories/Rose.stories.tsx                   |    95 +
 .../legacy-plugin-chart-rose/src/stories}/data.ts  |     0
 .../plugins/legacy-plugin-chart-rose/tsconfig.json |     3 +-
 .../legacy-plugin-chart-world-map/package.json     |     2 +-
 .../src/stories}/WorldMap.stories.tsx              |    35 +-
 .../src/stories}/data.ts                           |     0
 .../legacy-plugin-chart-world-map/tsconfig.json    |     3 +-
 .../legacy-preset-chart-deckgl/package.json        |     6 +-
 .../src/layers/Arc/stories}/Arc.stories.tsx        |    48 +-
 .../src/layers/Arc/stories/payload.ts              |    80 +
 .../src/layers/Grid/stories}/Grid.stories.tsx      |    45 +-
 .../src/layers/Grid/stories/payload.ts             |    41 +
 .../src/layers/Hex/stories}/Hex.stories.tsx        |    45 +-
 .../src/layers/Hex/stories/payload.ts              |    46 +
 .../src/layers/Path/stories}/Path.stories.tsx      |    38 +-
 .../src/layers/Path/stories/payload.ts             |    26 +-
 .../layers/Polygon/stories}/Polygon.stories.tsx    |   174 +-
 .../src/layers/Polygon/stories/geojsonPayload.ts   |    77 +
 .../src/layers/Polygon/stories/payload.ts}         |    65 +-
 .../layers/Scatter/stories}/Scatter.stories.tsx    |    54 +-
 .../src/layers/Scatter/stories/payload.ts          |    41 +
 .../Screengrid/stories/Screengrid.stories.tsx}     |    36 +-
 .../src/layers/Screengrid/stories/payload.ts       |    44 +
 .../legacy-preset-chart-deckgl/src/utils.ts        |     2 +-
 .../src/BoxPlot/stories/NVD3BoxPlot.stories.tsx    |    81 +
 .../src/BoxPlot/stories/data.ts                    |    78 +
 .../src/Bubble/stories/NVD3Bubble.stories.tsx      |   103 +
 .../src/Bubble/stories}/data.ts                    |     0
 .../src/Bullet/stories/NVD3Bullet.stories.tsx      |    87 +
 .../src/Bullet/stories}/data.ts                    |     0
 .../src/Compare/stories/NVD3Compare.stories.tsx    |   208 +
 .../src/Compare/stories}/data.ts                   |     0
 .../plugin-chart-ag-grid-table/package.json        |     1 -
 .../src/AgGridTable/components/CustomPopover.tsx   |    20 +-
 .../src/AgGridTable/index.tsx                      |     4 +-
 .../src/AgGridTableChart.tsx                       |    18 +-
 .../plugin-chart-ag-grid-table/src/buildQuery.ts   |     2 +-
 .../src/controlPanel.tsx                           |    48 +-
 .../src/renderers/TextCellRenderer.tsx             |     2 +
 .../src/stories/AgGridTable.stories.tsx            |   100 +
 .../plugin-chart-ag-grid-table/src/stories/data.ts |    58 +
 .../src/transformProps.ts                          |   175 +-
 .../src/utils/agGridFilterConverter.ts             |    82 +-
 .../test/AgGridTableChart.test.tsx                 |   359 +
 .../plugin-chart-ag-grid-table/tsconfig.json       |     3 +-
 .../plugins/plugin-chart-cartodiagram/package.json |     4 +-
 .../src/stories/Cartodiagram.stories.tsx           |   208 +
 .../plugin-chart-cartodiagram/src/stories/data.ts  |   206 +
 .../plugin-chart-cartodiagram/tsconfig.json        |     3 +-
 .../stories}/BigNumberTotal.stories.tsx            |    56 +-
 .../src/BigNumber/BigNumberTotal/stories}/data.ts  |     0
 .../stories}/BigNumber.stories.tsx                 |    76 +-
 .../BigNumberWithTrendline/stories}/data.ts        |     0
 .../plugin-chart-echarts/src/BigNumber/types.ts    |     1 +
 .../src/BoxPlot/stories}/BoxPlot.stories.tsx       |    19 +-
 .../src/BoxPlot/stories}/data.ts                   |     0
 .../src/Bubble/stories}/BubbleChart.stories.tsx    |    43 +-
 .../src/Bubble/stories}/data.ts                    |     0
 .../src/Funnel/stories}/Funnel.stories.tsx         |    43 +-
 .../src/Funnel/stories}/constants.ts               |     0
 .../src/Gauge/stories/Gauge.stories.tsx            |   118 +
 .../src/Gauge/stories}/data.ts                     |     0
 .../plugin-chart-echarts/src/Graph/buildQuery.ts   |    21 +-
 .../src/Graph/stories/Graph.stories.tsx            |   138 +
 .../src/Graph/stories}/data.ts                     |     0
 .../plugin-chart-echarts/src/Heatmap/Heatmap.tsx   |     3 +-
 .../stories}/MixedSeries.stories.tsx               |   149 +-
 .../src/MixedTimeseries/stories}/negativeData.ts   |     0
 .../src/MixedTimeseries/transformProps.ts          |     2 +-
 .../src/Pie/stories}/Pie.stories.tsx               |   141 +-
 .../plugin-chart-echarts/src/Pie/stories}/data.ts  |     0
 .../src/Radar/stories}/Radar.stories.tsx           |    63 +-
 .../src/Radar/stories}/data.ts                     |     0
 .../plugin-chart-echarts/src/Sankey/buildQuery.ts  |    19 +-
 .../src/Sunburst/stories}/Sunburst.stories.tsx     |    23 +-
 .../src/Sunburst/stories}/data.ts                  |     0
 .../src/Timeseries/Regular/Bar/controlPanel.tsx    |    21 +-
 .../stories}/AreaSeries/AreaSeries.stories.tsx     |    67 +-
 .../src/Timeseries/stories}/AreaSeries/data.ts     |     0
 .../src/Timeseries/stories}/Timeseries.stories.tsx |    96 +-
 .../src/Timeseries/stories}/confbandData.ts        |     0
 .../src/Timeseries/stories}/data.ts                |     0
 .../src/Timeseries/stories}/negativeNumData.ts     |     0
 .../src/Timeseries/stories}/stackWithNulls.ts      |     0
 .../src/Timeseries/transformProps.ts               |     3 +-
 .../src/Timeseries/transformers.ts                 |   303 +-
 .../plugin-chart-echarts/src/Timeseries/types.ts   |     1 +
 .../plugin-chart-echarts/src/Tree/buildQuery.ts    |    15 +-
 .../src/Tree/stories}/Tree.stories.tsx             |   163 +-
 .../plugin-chart-echarts/src/Tree/stories}/data.ts |     0
 .../src/Tree/transformProps.ts                     |    10 +-
 .../src/Treemap/EchartsTreemap.tsx                 |     2 +-
 .../plugin-chart-echarts/src/Treemap/buildQuery.ts |    16 +-
 .../src/Treemap/stories}/Treemap.stories.tsx       |    27 +-
 .../src/Treemap/stories}/data.ts                   |     0
 .../src/Waterfall/stories}/Waterfall.stories.tsx   |    38 +-
 .../src/Waterfall/stories}/data.ts                 |     0
 .../plugin-chart-echarts/src/components/Echart.tsx |    30 +-
 .../src/components/ExtraControls.tsx               |     7 +-
 .../plugins/plugin-chart-echarts/src/constants.ts  |     8 +
 .../plugins/plugin-chart-echarts/src/controls.tsx  |    21 +-
 .../plugins/plugin-chart-echarts/src/types.ts      |     1 +
 .../src/utils/orderby.test.ts}                     |    19 +-
 .../plugin-chart-echarts/src/utils/orderby.ts      |    51 +
 .../plugin-chart-echarts/src/utils/series.ts       |     6 +-
 .../test/BigNumber/transformProps.test.ts          |    16 +-
 .../test/Graph/buildQuery.test.ts                  |     2 +
 .../test/MixedTimeseries/transformProps.test.ts    |   273 +-
 .../test/Timeseries/Bar/controlPanel.test.ts       |   344 +-
 .../test/Timeseries/transformProps.test.ts         |   726 +-
 .../test/Timeseries/transformers.test.ts           |    97 +-
 .../test/Tree/buildQuery.test.ts                   |    33 +-
 .../plugins/plugin-chart-echarts/test/helpers.ts   |   110 +
 .../plugin-chart-echarts/test/utils/series.test.ts |     2 +-
 .../test/utils/transformers.test.ts                |   249 +-
 .../plugins/plugin-chart-echarts/tsconfig.json     |     3 +-
 .../plugins/plugin-chart-handlebars/package.json   |     3 +-
 .../src/components/Handlebars/HandlebarsViewer.tsx |     2 +-
 .../src/stories/Handlebars.stories.tsx             |   268 +
 .../plugin-chart-handlebars/src/stories/data.ts    |   129 +
 .../plugins/plugin-chart-handlebars/tsconfig.json  |     3 +-
 .../plugins/plugin-chart-pivot-table/package.json  |     2 +-
 .../src/plugin/controlPanel.tsx                    |    14 +-
 .../src/react-pivottable/TableRenderers.tsx        |    75 +-
 .../src/react-pivottable/utilities.ts              |     4 +-
 .../src/stories/PivotTable.stories.tsx             |   119 +
 .../src/stories}/testData.ts                       |     0
 .../test/plugin/transformProps.test.ts             |   489 +-
 .../plugins/plugin-chart-table/package.json        |     2 +-
 .../plugin-chart-table/src/DataTable/DataTable.tsx |     4 +-
 .../src/DataTable/components/GlobalFilter.tsx      |     5 +-
 .../src/DataTable/components/Pagination.tsx        |    10 +-
 .../plugins/plugin-chart-table/src/TableChart.tsx  |    84 +-
 .../plugins/plugin-chart-table/src/buildQuery.ts   |     2 +-
 .../plugin-chart-table/src/controlPanel.tsx        |    85 +-
 .../src/stories}/Table.stories.tsx                 |    43 +-
 .../plugin-chart-table/src/stories/birthNames.json |    25 +
 .../plugin-chart-table/src/stories}/testData.ts    |     0
 .../plugin-chart-table/src/transformProps.ts       |   212 +-
 .../plugin-chart-table/test/TableChart.test.tsx    |    69 +-
 .../test/controlPanel.test.ts                      |     0
 .../plugins/plugin-chart-table/tsconfig.json       |     3 +-
 .../plugins/plugin-chart-word-cloud/package.json   |     2 +-
 .../src/plugin/buildQuery.ts                       |    17 +-
 .../src/stories/WordCloud.stories.tsx              |    90 +
 .../plugin-chart-word-cloud/src/stories}/data.ts   |     0
 .../plugins/plugin-chart-word-cloud/tsconfig.json  |     3 +-
 superset-frontend/scripts/check-custom-rules.js    |   368 +-
 .../scripts/check-storybook-coverage.js            |   221 +
 superset-frontend/spec/fixtures/mockStore.js       |    11 +
 .../src/SqlLab/components/App/index.tsx            |     8 +-
 .../components/EditorWrapper/useKeywords.test.ts   |     4 +-
 .../SqlLab/components/EditorWrapper/useKeywords.ts |     2 +-
 .../src/SqlLab/components/ResultSet/index.tsx      |     1 +
 .../SqlLab/components/SqlEditorTabHeader/index.tsx |     2 +
 .../src/SqlLab/components/TablePreview/index.tsx   |     6 +-
 superset-frontend/src/SqlLab/fixtures.ts           |     2 +-
 .../src/SqlLab/reducers/getInitialState.ts         |     3 +-
 .../src/SqlLab/reducers/sqlLab.test.ts             |     3 +
 .../src/SqlLab/utils/emptyQueryResults.test.ts     |     6 +-
 .../components/DeckglLayerVisibility/index.ts      |     1 +
 .../src/components/Chart/Chart.test.tsx            |    88 +
 superset-frontend/src/components/Chart/Chart.tsx   |    22 +-
 .../src/components/Chart/ChartRenderer.test.tsx    |    70 +-
 .../src/components/Chart/ChartRenderer.tsx         |    18 +-
 .../src/components/Chart/chartAction.ts            |    24 +-
 .../src/components/Chart/chartReducer.ts           |     8 +
 .../src/components/Chart/chartReducers.test.ts     |    30 +-
 .../src/components/DatabaseSelector/index.tsx      |     4 +-
 .../Datasource/DatasourceModal/index.tsx           |    24 +-
 .../Datasource/FoldersEditor/TreeItem.styles.ts    |    15 +-
 .../Datasource/FoldersEditor/TreeItem.tsx          |     5 +-
 .../Datasource/FoldersEditor/constants.ts          |     3 +
 .../FoldersEditor/folderOperations.test.ts         |    37 +
 .../Datasource/FoldersEditor/folderOperations.ts   |     8 +-
 .../FoldersEditor/hooks/useDragHandlers.ts         |     4 +-
 .../components/Datasource/FoldersEditor/styles.tsx |     2 +-
 .../Datasource/FoldersEditor/treeUtils.test.ts     |    59 +
 .../Datasource/FoldersEditor/treeUtils.ts          |    19 +
 .../components/CollectionTable/index.tsx           |    57 +-
 .../DatasourceEditor/DatasourceEditor.tsx          |   461 +-
 .../DatasetUsageTab/DatasetUsageTab.test.tsx       |   143 +
 .../components/DatasetUsageTab/index.tsx           |    71 +-
 .../tests/DatasourceEditor.test.tsx                |   242 +
 .../src/components/Datasource/types.ts             |    11 +
 .../src/components/ErrorMessage/IssueCode.tsx      |     3 +-
 .../ErrorMessage/OAuth2RedirectMessage.tsx         |    13 +-
 .../src/components/FacePile/FacePile.stories.tsx   |     2 +-
 .../src/components/FacePile/FacePile.test.tsx      |     2 +-
 .../src/components/FacePile/utils.tsx              |     4 +-
 .../src/components/GridTable/Header.tsx            |     5 +-
 .../src/components/JsonModal/index.tsx             |    30 +-
 .../src/components/ListView/CardCollection.tsx     |     6 +-
 .../src/components/ListView/Filters/Select.tsx     |    13 +-
 .../src/components/ListView/Filters/index.tsx      |     2 +
 superset-frontend/src/components/ListView/types.ts |     8 +-
 superset-frontend/src/components/ListView/utils.ts |     5 +-
 .../src/components/MessageToasts/Toast.tsx         |     3 +-
 .../src/components/MessageToasts/reducers.ts       |     2 +-
 .../src/components/RowCountLabel/index.tsx         |     2 +-
 .../src/core/editors/AceEditorProvider.tsx         |     2 +
 superset-frontend/src/core/editors/index.ts        |    24 +-
 .../src/dashboard/actions/autoRefresh.ts           |   124 +
 .../src/dashboard/actions/dashboardState.test.ts   |   164 +
 .../src/dashboard/actions/dashboardState.ts        |    63 +-
 superset-frontend/src/dashboard/actions/hydrate.ts |    10 +-
 .../components/AutoRefreshIndicator/index.tsx      |   169 +
 .../AutoRefreshStatus/StatusIndicatorDot.test.tsx  |   114 +
 .../AutoRefreshStatus/StatusIndicatorDot.tsx       |   168 +
 .../StatusTooltipContent.test.tsx                  |   180 +
 .../AutoRefreshStatus/StatusTooltipContent.tsx     |   178 +
 .../DashboardBuilder/DashboardBuilder.tsx          |     5 -
 .../dashboard/components/EmbeddedModal/index.tsx   |     2 +-
 .../components/FiltersBadge/FiltersBadge.test.tsx  |   253 +-
 .../dashboard/components/FiltersBadge/index.tsx    |    27 +-
 .../dashboard/components/Header/Header.test.tsx    |   128 +-
 .../src/dashboard/components/Header/index.tsx      |   383 +-
 .../src/dashboard/components/Header/types.ts       |    26 +-
 .../Header/useHeaderActionsDropdownMenu.tsx        |    13 +-
 .../components/Header/useHeaderAutoRefresh.ts      |   410 +
 .../PropertiesModal/hooks/useAccessOptions.ts      |    32 +-
 .../dashboard/components/PropertiesModal/index.tsx |    35 +-
 .../PropertiesModal/sections/AccessSection.tsx     |    22 +-
 .../PropertiesModal/sections/RefreshSection.tsx    |     2 +-
 .../dashboard/components/RefreshButton/index.tsx   |    81 +
 .../{index.ts => RefreshFrequencySelect.test.tsx}  |    25 +-
 .../RefreshFrequency/RefreshFrequencySelect.tsx    |    67 +-
 .../dashboard/components/RefreshIntervalModal.tsx  |    81 +-
 .../components/SliceHeaderControls/index.tsx       |     2 +-
 .../components/URLShortLinkButton/index.tsx        |     2 +-
 .../components/gridComponents/Chart/Chart.tsx      |     5 +-
 .../gridComponents/Column/Column.test.tsx          |    10 +
 .../components/gridComponents/Column/Column.tsx    |     6 +
 .../gridComponents/Markdown/Markdown.test.tsx      |     8 +
 .../components/gridComponents/Row/Row.test.tsx     |     2 +-
 .../components/gridComponents/Tab/Tab.test.tsx     |     2 +
 .../components/gridComponents/Tab/Tab.tsx          |    17 +-
 .../nativeFilters/FilterBar/FilterBar.test.tsx     |   183 +-
 .../FilterBarSettings/FilterBarSettings.test.tsx   |    20 +-
 .../FilterBar/FilterBarSettings/index.tsx          |     4 +-
 .../FilterBar/FilterControls/FilterControls.tsx    |    20 +-
 .../components/nativeFilters/FilterBar/index.tsx   |    12 +-
 .../components/nativeFilters/FilterBar/state.ts    |    14 +-
 .../ConfigModalSidebar/ConfigModalSidebar.tsx      |     4 +-
 .../FiltersConfigModal/DraggableFilter.tsx         |     3 +-
 .../FiltersConfigModal/FilterConfigPane.test.tsx   |    12 +-
 .../FiltersConfigModal/FilterTitleContainer.tsx    |     2 +-
 .../FiltersConfigForm/FiltersConfigForm.tsx        |     6 +-
 .../nativeFilters/FiltersConfigModal/utils.ts      |     7 +-
 .../components/nativeFilters/selectors.test.ts     |   425 +-
 .../components/nativeFilters/selectors.ts          |    60 +-
 .../dashboard/components/nativeFilters/state.ts    |    53 +-
 .../src/dashboard/containers/DashboardPage.tsx     |    15 +-
 .../dashboard/contexts/AutoRefreshContext.test.tsx |   137 +
 .../src/dashboard/contexts/AutoRefreshContext.tsx  |   101 +
 .../hooks/useAutoRefreshTabPause.test.tsx          |   378 +
 .../src/dashboard/hooks/useAutoRefreshTabPause.ts  |   146 +
 .../src/dashboard/hooks/useCurrentTime.test.ts     |   182 +
 .../src/dashboard/hooks/useCurrentTime.ts          |    67 +
 .../dashboard/hooks/useRealTimeDashboard.test.ts   |   175 +
 .../src/dashboard/hooks/useRealTimeDashboard.ts    |   245 +
 .../src/dashboard/hooks/useTabVisibility.test.ts   |   175 +
 .../src/dashboard/hooks/useTabVisibility.ts        |   102 +
 .../dashboard/reducers/autoRefreshReducer.test.ts  |   246 +
 .../src/dashboard/reducers/dashboardState.ts       |    81 +
 superset-frontend/src/dashboard/types.ts           |    16 +-
 .../src/dashboard/types/autoRefresh.ts             |    64 +
 .../src/dashboard/util/getOverwriteItems.ts        |     2 +-
 .../src/dashboard/util/isValidChild.test.ts        |     2 +-
 .../util/migrateChartCustomization.test.ts         |   490 +
 .../dashboard/util/migrateChartCustomization.ts    |   155 +
 superset-frontend/src/dataMask/reducer.ts          |    14 +-
 .../src/explore/components/EmbedCodeContent.tsx    |     2 +-
 .../explore/components/PropertiesModal/index.tsx   |    52 +-
 .../src/explore/components/SaveModal.tsx           |     4 +-
 .../AnnotationLayerControl/AnnotationLayer.tsx     |     4 +-
 .../controls/AnnotationLayerControl/index.tsx      |     2 +-
 .../CollectionControl/CollectionControl.test.tsx   |     2 +-
 .../controls/CollectionControl/index.tsx           |     2 +-
 .../ConditionalFormattingControl.tsx               |     5 +-
 .../FormattingPopover.tsx                          |     4 +-
 .../FormattingPopoverContent.test.tsx              |   137 +-
 .../FormattingPopoverContent.tsx                   |   264 +-
 .../ConditionalFormattingControl/constants.ts      |    72 +
 .../controls/ConditionalFormattingControl/types.ts |    25 +-
 .../CurrencyControl/CurrencyControl.test.tsx       |    29 +-
 .../controls/CurrencyControl/CurrencyControl.tsx   |    39 +-
 .../ColumnSelectPopover.test.tsx                   |     4 +-
 .../ColumnSelectPopoverTrigger.tsx                 |    20 +-
 .../DndColumnSelectControl/useResizeButton.tsx     |     4 +-
 .../FilterControl/AdhocFilterEditPopover/index.tsx |     2 +-
 .../controls/MetricControl/AdhocMetric.ts          |    54 +-
 .../MetricControl/AdhocMetricEditPopover/index.tsx |     2 +-
 .../controls/SelectAsyncControl/index.tsx          |     2 +-
 .../explore/components/controls/SelectControl.tsx  |     2 +-
 .../components/controls/TextAreaControl.tsx        |    59 +-
 .../controls/VizTypeControl/FastVizSwitcher.tsx    |     3 +-
 .../VizTypeControl/VizTypeControl.test.tsx         |     4 +-
 .../ZoomConfigControl/ZoomConfigControl.tsx        |     4 +-
 .../controlUtils/getColumnKeywords.test.tsx        |     2 +-
 .../src/explore/controlUtils/getColumnKeywords.tsx |     2 +-
 .../src/extensions/ExtensionsManager.ts            |     4 +-
 .../src/features/alerts/AlertReportModal.test.tsx  |   284 +-
 .../src/features/alerts/AlertReportModal.tsx       |   124 +-
 superset-frontend/src/features/alerts/types.ts     |     4 +-
 .../DatabaseConnectionForm/CommonParameters.tsx    |     8 +-
 .../DatabaseConnectionForm/OAuth2ClientField.tsx   |    13 +-
 .../DatabaseConnectionForm/ValidatedInputField.tsx |     6 +-
 .../databases/DatabaseModal/ExtraOptions.tsx       |     2 +-
 .../databases/DatabaseModal/SSHTunnelForm.tsx      |     8 +-
 .../src/features/databases/DatabaseModal/index.tsx |    25 +-
 .../databases/UploadDataModel/ColumnsPreview.tsx   |     2 +-
 .../UploadDataModel/UploadDataModal.test.tsx       |     6 +-
 .../features/databases/UploadDataModel/index.tsx   |     9 +-
 .../datasets/AddDataset/RightPanel/index.tsx       |     4 +-
 .../src/features/home/DashboardTable.tsx           |     4 +-
 .../src/features/home/RightMenu.test.tsx           |    83 +
 superset-frontend/src/features/home/RightMenu.tsx  |    33 +-
 .../OwnerSelectLabel/OwnerSelectLabel.test.tsx}    |    33 +-
 .../owners/OwnerSelectLabel/index.tsx}             |    71 +-
 .../src/features/roles/RoleListEditModal.test.tsx  |    37 +
 .../src/features/roles/RoleListEditModal.tsx       |    12 +-
 .../src/features/themes/ThemeModal.test.tsx        |   174 +-
 .../src/features/themes/ThemeModal.tsx             |    65 +-
 .../src/features/userInfo/UserInfoModal.tsx        |     2 +-
 .../src/features/users/UserListModal.tsx           |     2 +-
 .../src/hooks/apiResources/dashboards.test.ts      |    23 +-
 .../src/hooks/apiResources/dashboards.ts           |    35 +-
 .../src/pages/AlertReportList/index.tsx            |    11 +-
 .../AnnotationLayerList.test.tsx                   |     2 +-
 .../src/pages/ChartCreation/ChartCreation.test.tsx |     4 +-
 .../pages/ChartList/ChartList.listview.test.tsx    |     4 -
 superset-frontend/src/pages/ChartList/index.tsx    |   222 +-
 .../pages/CssTemplateList/CssTemplateList.test.tsx |     2 +-
 .../src/pages/DashboardList/index.tsx              |   141 +-
 superset-frontend/src/pages/DatabaseList/index.tsx |   227 +-
 superset-frontend/src/pages/DatasetList/index.tsx  |   147 +-
 .../ExecutionLogList/ExecutionLogList.test.tsx     |     2 +-
 .../src/pages/ExecutionLogList/index.tsx           |    12 +-
 superset-frontend/src/pages/Home/index.tsx         |     2 +-
 superset-frontend/src/pages/Register/index.tsx     |     8 +-
 .../src/pages/RolesList/RolesList.test.tsx         |     6 +-
 .../src/pages/RowLevelSecurityList/index.tsx       |    80 +-
 .../pages/SavedQueryList/SavedQueryList.test.tsx   |     2 +-
 .../src/pages/SavedQueryList/index.tsx             |    14 +-
 superset-frontend/src/pages/ThemeList/index.tsx    |    18 +-
 superset-frontend/src/pages/UserInfo/index.tsx     |    36 +-
 .../UserRegistrations/UserRegistrations.test.tsx   |     2 +-
 .../src/pages/UsersList/UsersList.test.tsx         |     4 +-
 superset-frontend/src/theme/ThemeController.ts     |   147 +-
 .../src/theme/hooks/useThemeValidation.test.ts     |   133 +
 .../src/theme/hooks/useThemeValidation.ts          |   155 +
 .../src/theme/tests/ThemeController.test.ts        |   196 +
 .../src/theme/utils/antdTokenNames.test.ts         |   108 +
 .../src/theme/utils/antdTokenNames.ts              |   115 +
 .../theme/utils/themeStructureValidation.test.ts   |   346 +
 .../src/theme/utils/themeStructureValidation.ts    |   191 +
 superset-frontend/src/types/Owner.ts               |     1 +
 superset-frontend/src/views/CRUD/hooks.test.tsx    |   889 +-
 superset-frontend/src/views/CRUD/hooks.ts          |   137 +-
 superset-frontend/src/views/CRUD/types.ts          |     2 +-
 superset-frontend/src/views/CRUD/utils.tsx         |   143 +-
 superset-frontend/tsconfig.json                    |     2 +
 superset-frontend/webpack.config.js                |    40 +-
 superset-websocket/package-lock.json               |  2003 +--
 superset-websocket/package.json                    |    13 +-
 superset-websocket/src/index.ts                    |     4 +-
 .../utils/client-ws-app/package-lock.json          |    12 +-
 superset-websocket/utils/loadtest.js               |     4 +-
 superset/charts/api.py                             |     1 +
 superset/charts/data/api.py                        |    39 +-
 superset/charts/schemas.py                         |     1 +
 superset/commands/chart/fave.py                    |     8 -
 superset/commands/chart/unfave.py                  |     8 -
 superset/commands/report/exceptions.py             |    12 +
 superset/commands/report/update.py                 |    18 +-
 superset/commands/tasks/submit.py                  |     3 +-
 superset/common/query_context_processor.py         |    16 +-
 superset/config.py                                 |    14 +-
 superset/connectors/sqla/models.py                 |     3 +-
 superset/daos/base.py                              |    11 +-
 superset/daos/database.py                          |     6 +-
 superset/daos/dataset.py                           |    41 +-
 superset/dashboards/api.py                         |    29 +-
 superset/datasets/schemas.py                       |    23 +-
 superset/db_engine_specs/base.py                   |    29 +-
 superset/db_engine_specs/bigquery.py               |     4 +-
 superset/db_engine_specs/gsheets.py                |    11 +-
 superset/db_engine_specs/mysql.py                  |     4 +-
 superset/db_engine_specs/postgres.py               |     4 +-
 superset/db_engine_specs/redshift.py               |     4 +-
 superset/db_engine_specs/snowflake.py              |     4 +-
 superset/db_engine_specs/ydb.py                    |     5 +-
 superset/extensions/api.py                         |    35 +-
 superset/extensions/utils.py                       |    61 +-
 superset/mcp_service/CLAUDE.md                     |    37 +
 superset/mcp_service/app.py                        |    20 +-
 superset/mcp_service/chart/chart_utils.py          |   125 +-
 superset/mcp_service/chart/schemas.py              |   130 +-
 superset/mcp_service/chart/tool/generate_chart.py  |   303 +-
 superset/mcp_service/chart/tool/get_chart_data.py  |   333 +-
 superset/mcp_service/chart/tool/get_chart_info.py  |   119 +-
 .../mcp_service/chart/tool/get_chart_preview.py    |   227 +-
 superset/mcp_service/chart/tool/list_charts.py     |    27 +-
 superset/mcp_service/chart/tool/update_chart.py    |    83 +-
 .../mcp_service/chart/tool/update_chart_preview.py |    23 +-
 .../chart/validation/dataset_validator.py          |   153 +-
 superset/mcp_service/chart/validation/pipeline.py  |    86 +-
 .../mcp_service}/constants.py                      |     6 +-
 .../create_form_data.py => dashboard/constants.py} |    23 +-
 superset/mcp_service/dashboard/schemas.py          |    56 +-
 .../tool/add_chart_to_existing_dashboard.py        |   281 +-
 .../dashboard/tool/generate_dashboard.py           |   141 +-
 .../dashboard/tool/get_dashboard_info.py           |   134 +-
 .../mcp_service/dashboard/tool/list_dashboards.py  |    25 +-
 superset/mcp_service/dataset/schemas.py            |     1 +
 .../mcp_service/dataset/tool/get_dataset_info.py   |    32 +-
 superset/mcp_service/dataset/tool/list_datasets.py |    28 +-
 .../explore/tool/generate_explore_link.py          |    33 +-
 superset/mcp_service/mcp_config.py                 |    49 +
 superset/mcp_service/mcp_core.py                   |    24 +-
 superset/mcp_service/middleware.py                 |   288 +-
 superset/mcp_service/server.py                     |    12 +-
 superset/mcp_service/sql_lab/tool/execute_sql.py   |    67 +-
 .../sql_lab/tool/open_sql_lab_with_context.py      |     6 +-
 superset/mcp_service/system/schemas.py             |    29 +
 superset/mcp_service/system/system_utils.py        |    29 +
 .../mcp_service/system/tool/get_instance_info.py   |    22 +-
 superset/mcp_service/system/tool/get_schema.py     |     6 +-
 superset/mcp_service/system/tool/health_check.py   |     8 +-
 superset/mcp_service/utils/schema_utils.py         |     6 +-
 superset/mcp_service/utils/token_utils.py          |   424 +
 superset/models/dashboard.py                       |    32 +-
 superset/models/helpers.py                         |    15 +
 superset/models/slice.py                           |    25 +-
 superset/models/sql_types/__init__.py              |     7 +
 superset/models/sql_types/base.py                  |   106 +
 superset/reports/api.py                            |     7 +
 superset/reports/schemas.py                        |     2 +-
 superset/security/api.py                           |    10 +-
 superset/security/manager.py                       |   123 +-
 superset/tasks/decorators.py                       |     2 -
 superset/tasks/filters.py                          |    91 +-
 superset/thumbnails/digest.py                      |    15 +-
 superset/translations/ar/LC_MESSAGES/messages.po   |  3274 +++-
 superset/translations/ca/LC_MESSAGES/messages.po   |  5178 ++++--
 superset/translations/de/LC_MESSAGES/messages.po   |  3272 +++-
 superset/translations/en/LC_MESSAGES/messages.po   |  2621 ++-
 superset/translations/es/LC_MESSAGES/messages.po   |  5661 ++++--
 superset/translations/fa/LC_MESSAGES/messages.po   |  3266 +++-
 superset/translations/fr/LC_MESSAGES/messages.po   |  1540 +-
 superset/translations/it/LC_MESSAGES/messages.po   |  3155 +++-
 superset/translations/ja/LC_MESSAGES/messages.po   |  3245 +++-
 superset/translations/ko/LC_MESSAGES/messages.po   |  3105 +++-
 superset/translations/messages.pot                 |  2615 ++-
 superset/translations/mi/LC_MESSAGES/messages.po   |  6248 ++++---
 superset/translations/nl/LC_MESSAGES/messages.po   |  3280 +++-
 superset/translations/pl/LC_MESSAGES/messages.po   |  3303 +++-
 superset/translations/pt/LC_MESSAGES/messages.po   |  3188 +++-
 .../translations/pt_BR/LC_MESSAGES/messages.po     |  3291 +++-
 superset/translations/ru/LC_MESSAGES/messages.po   |  4670 ++---
 superset/translations/sk/LC_MESSAGES/messages.po   |  2829 ++-
 superset/translations/sl/LC_MESSAGES/messages.po   |  3254 +++-
 superset/translations/tr/LC_MESSAGES/messages.po   |  3077 +++-
 superset/translations/uk/LC_MESSAGES/messages.po   |  3296 +++-
 superset/translations/zh/LC_MESSAGES/messages.po   |  3252 +++-
 .../translations/zh_TW/LC_MESSAGES/messages.po     |  3255 +++-
 superset/utils/dates.py                            |     2 +-
 superset/utils/encrypt.py                          |     2 +-
 superset/views/utils.py                            |     4 +-
 tests/integration_tests/charts/api_tests.py        |     1 +
 tests/integration_tests/charts/commands_tests.py   |    17 +-
 tests/integration_tests/charts/data/api_tests.py   |    42 +
 tests/integration_tests/dashboards/api_tests.py    |    81 +
 tests/integration_tests/datasets/api_tests.py      |     2 +-
 tests/integration_tests/model_tests.py             |     2 +-
 tests/integration_tests/reports/api_tests.py       |   314 +-
 tests/integration_tests/security/api_tests.py      |   111 +-
 .../tasks/commands/test_cancel.py                  |    60 +-
 .../tasks/commands/test_submit.py                  |    13 +-
 .../tasks/test_subscription_visibility.py          |   224 +
 .../integration_tests/tasks/test_sync_join_wait.py |     7 +-
 .../test_subdirectory_deployments.py               |    56 +
 tests/integration_tests/utils/encrypt_tests.py     |    76 +-
 .../commands/importers/v1/examples_test.py         |   133 +-
 .../unit_tests/commands/report}/__init__.py        |     0
 tests/unit_tests/commands/report/update_test.py    |   254 +
 .../common/test_query_context_processor.py         |    72 +-
 tests/unit_tests/dashboards/api_test.py            |    99 +
 .../databases/commands/importers/v1/import_test.py |    33 +
 tests/unit_tests/datasets/schema_tests.py          |    56 +
 tests/unit_tests/db_engine_specs/test_base.py      |    45 +
 tests/unit_tests/db_engine_specs/test_gsheets.py   |    20 +
 .../api => tests/unit_tests/examples}/__init__.py  |     0
 tests/unit_tests/examples/data_loading_test.py     |   204 +
 tests/unit_tests/examples/generic_loader_test.py   |   233 +
 tests/unit_tests/examples/utils_test.py            |   206 +
 tests/unit_tests/extensions/test_types.py          |   119 +-
 .../mcp_service/chart/test_chart_utils.py          |   268 +-
 .../mcp_service/chart/tool/test_get_chart_data.py  |   437 +-
 .../chart/tool/test_get_chart_preview.py           |     1 -
 .../mcp_service/chart/tool/test_list_charts.py     |     4 +-
 .../validation/test_column_name_normalization.py   |   681 +
 .../dashboard/tool/test_dashboard_generation.py    |   399 +-
 .../mcp_service/dataset/tool/test_dataset_tools.py |    46 +
 .../explore/tool/test_generate_explore_link.py     |   149 +
 .../mcp_service/sql_lab/tool/test_execute_sql.py   |   138 +-
 .../mcp_service/system/test_system_utils.py        |    60 +
 .../system/tool/test_get_current_user.py           |   365 +
 .../mcp_service/system/tool/test_get_schema.py     |     8 +-
 .../mcp_service/system/tool/test_mcp_core.py       |     4 +-
 tests/unit_tests/mcp_service/test_mcp_config.py    |     9 +
 tests/unit_tests/mcp_service/test_middleware.py    |   343 +
 .../mcp_service/test_middleware_logging.py         |   207 +
 .../mcp_service/utils/test_schema_utils.py         |    11 +
 .../mcp_service/utils/test_token_utils.py          |   358 +
 tests/unit_tests/models/helpers_test.py            |    40 +
 .../unit_tests/models/sql_types}/__init__.py       |     0
 .../models/sql_types/currency_type_test.py         |   129 +
 tests/unit_tests/security/manager_test.py          |   210 +
 tests/unit_tests/thumbnails/test_digest.py         |   115 +-
 tests/unit_tests/utils/json_tests.py               |     6 +
 744 files changed, 106737 insertions(+), 56998 deletions(-)
 delete mode 100644 .github/workflows/superset-applitool-cypress.yml
 delete mode 100644 .github/workflows/superset-applitools-storybook.yml
 delete mode 100644 docs/static/img/applitools.png
 copy superset/mcp_service/__init__.py => 
superset-core/src/superset_core/extensions/constants.py (53%)
 copy superset/sql/execution/__init__.py => 
superset-extensions-cli/src/superset_extensions_cli/exceptions.py (88%)
 create mode 100644 superset-extensions-cli/src/superset_extensions_cli/types.py
 create mode 100644 superset-extensions-cli/tests/test_name_transformations.py
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/shared/components => 
.storybook/shared}/ErrorMessage.tsx (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/shared/components => 
.storybook/shared}/Expandable.tsx (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/shared/components => 
.storybook/shared}/ResizableChartDemo.tsx (91%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/shared/components => 
.storybook/shared}/ResizablePanel.tsx (81%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/shared/components => 
.storybook/shared}/VerifyCORS.tsx (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/shared/components/createQuery.story.tsx
 => .storybook/shared/createQueryStory.tsx} (98%)
 rename superset-frontend/{packages/superset-ui-demo/storybook => 
.storybook}/shared/dummyDatasource.ts (100%)
 copy superset-frontend/{src/components/Modal => .storybook/shared}/index.ts 
(61%)
 delete mode 100644 superset-frontend/applitools.config.js
 delete mode 100644 superset-frontend/cypress-base/applitools.config.js
 delete mode 100644 
superset-frontend/cypress-base/cypress/applitools/chartlist.test.ts
 delete mode 100644 
superset-frontend/cypress-base/cypress/applitools/dashboard.test.ts
 delete mode 100644 
superset-frontend/cypress-base/cypress/applitools/dashboardlist.test.ts
 delete mode 100644 
superset-frontend/cypress-base/cypress/applitools/explore.test.ts
 delete mode 100644 
superset-frontend/cypress-base/cypress/applitools/sqllab.test.ts
 create mode 100644 
superset-frontend/packages/superset-core/src/utils/isBlank.test.ts
 copy superset-frontend/{src/dashboard/util/componentIsResizable.ts => 
packages/superset-core/src/utils/isBlank.ts} (74%)
 create mode 100644 
superset-frontend/packages/superset-ui-chart-controls/test/shared-controls/components/RadioButtonControl.test.tsx
 rename 
superset-frontend/packages/{superset-ui-demo/storybook/stories/superset-ui-chart
 => superset-ui-core/src/chart/stories}/ChartDataProvider.stories.tsx (96%)
 rename 
superset-frontend/packages/{superset-ui-demo/storybook/stories/superset-ui-chart
 => superset-ui-core/src/chart/stories}/SuperChart.stories.tsx (98%)
 rename 
superset-frontend/packages/{superset-ui-demo/storybook/stories/superset-ui-color
 => superset-ui-core/src/color/stories}/ColorPalettes.stories.tsx (100%)
 rename 
superset-frontend/packages/{superset-ui-demo/storybook/stories/superset-ui-color
 => superset-ui-core/src/color/stories}/RenderPalettes.tsx (100%)
 rename 
superset-frontend/packages/{superset-ui-demo/storybook/stories/superset-ui-color
 => superset-ui-core/src/color/stories}/color-styles.css (87%)
 create mode 100644 
superset-frontend/packages/superset-ui-core/src/components/CachedLabel/CachedLabel.stories.tsx
 create mode 100644 
superset-frontend/packages/superset-ui-core/src/components/SafeMarkdown/SafeMarkdown.stories.tsx
 create mode 100644 
superset-frontend/packages/superset-ui-core/src/components/TableCollection/TableCollection.stories.tsx
 rename 
superset-frontend/packages/{superset-ui-demo/storybook/stories/superset-ui-connection
 => superset-ui-core/src/connection/stories}/Connection.stories.tsx (92%)
 rename 
superset-frontend/packages/{superset-ui-demo/storybook/stories/superset-ui-number-format
 => superset-ui-core/src/number-format/stories}/NumberFormat.stories.tsx (100%)
 rename 
superset-frontend/packages/{superset-ui-demo/storybook/stories/superset-ui-theme
 => superset-ui-core/src/style/stories}/Theme.stories.tsx (100%)
 rename 
superset-frontend/packages/{superset-ui-demo/storybook/stories/superset-ui-time-format
 => superset-ui-core/src/time-format/stories}/TimeFormat.stories.tsx (100%)
 delete mode 100644 superset-frontend/packages/superset-ui-demo/.babelrc.json
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/.storybook/main.js
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/.storybook/preview.js
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/.storybook/storybook.css
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/.storybook/themeDecorator.jsx
 delete mode 100644 superset-frontend/packages/superset-ui-demo/CHANGELOG.md
 delete mode 100644 superset-frontend/packages/superset-ui-demo/README.md
 delete mode 100644 superset-frontend/packages/superset-ui-demo/package.json
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/ExampleApp.stories.jsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-calendar/LegacyPluginChartCalendar.stories.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-map-box/MapBox.stories.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-partition/Partition.stories.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-rose/Rose.stories.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Arc/payload.js
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Grid/payload.js
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Hex/payload.js
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Path/payload.js
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Polygon/geojsonPayload.js
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Polygon/payload.js
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Scatter/payload.js
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Screengrid/payload.js
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-nvd3/BoxPlot/NVD3BoxPlot.stories.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-nvd3/BoxPlot/data.ts
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-nvd3/BoxPlot/stories/basic.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-nvd3/Bubble/NVD3Bubble.stories.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-nvd3/Bubble/stories/basic.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-nvd3/Bullet/NVD3Bullet.stories.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-nvd3/Bullet/stories/basic.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-nvd3/Compare/NVD3Compare.stories.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-nvd3/Compare/stories/basic.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-nvd3/Compare/stories/timeFormat.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Gauge/Gauge.stories.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Graph/Graph.stories.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-pivot-table/PivotTable.stories.tsx
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-table/birthNames.json
 delete mode 100644 
superset-frontend/packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-word-cloud/WordCloud.stories.tsx
 delete mode 100644 superset-frontend/packages/superset-ui-demo/tsconfig.json
 copy superset-frontend/{src/features/rls/types.ts => 
playwright/components/modals/ChartPropertiesModal.ts} (50%)
 create mode 100644 superset-frontend/playwright/helpers/api/chart.ts
 create mode 100644 superset-frontend/playwright/pages/ChartListPage.ts
 create mode 100644 
superset-frontend/playwright/tests/experimental/chart/chart-list.spec.ts
 create mode 100644 
superset-frontend/playwright/tests/experimental/chart/chart-test-helpers.ts
 create mode 100644 
superset-frontend/plugins/legacy-plugin-chart-calendar/src/stories/LegacyPluginChartCalendar.stories.tsx
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-calendar
 => plugins/legacy-plugin-chart-calendar/src/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-chord
 => 
plugins/legacy-plugin-chart-chord/src/stories}/LegacyPluginChartChord.stories.tsx
 (59%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-chord
 => plugins/legacy-plugin-chart-chord/src/stories}/data.ts (89%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-country-map
 => plugins/legacy-plugin-chart-country-map/src/stories}/CountryMap.stories.tsx 
(88%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-horizon
 => plugins/legacy-plugin-chart-horizon/src/stories}/Horizon.stories.tsx (63%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-horizon
 => plugins/legacy-plugin-chart-horizon/src/stories}/data.ts (100%)
 create mode 100644 
superset-frontend/plugins/legacy-plugin-chart-map-box/src/stories/MapBox.stories.tsx
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-map-box
 => plugins/legacy-plugin-chart-map-box/src/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-paired-t-test
 => plugins/legacy-plugin-chart-paired-t-test/src/stories}/TTest.stories.tsx 
(55%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-paired-t-test
 => plugins/legacy-plugin-chart-paired-t-test/src/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-parallel-coordinates
 => 
plugins/legacy-plugin-chart-parallel-coordinates/src/stories}/ParallelCoordinates.stories.tsx
 (56%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-parallel-coordinates
 => plugins/legacy-plugin-chart-parallel-coordinates/src/stories}/data.ts (100%)
 create mode 100644 
superset-frontend/plugins/legacy-plugin-chart-partition/src/stories/Partition.stories.tsx
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-partition
 => plugins/legacy-plugin-chart-partition/src/stories}/data.ts (100%)
 create mode 100644 
superset-frontend/plugins/legacy-plugin-chart-rose/src/stories/Rose.stories.tsx
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-rose
 => plugins/legacy-plugin-chart-rose/src/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-world-map
 => plugins/legacy-plugin-chart-world-map/src/stories}/WorldMap.stories.tsx 
(65%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-plugin-chart-world-map
 => plugins/legacy-plugin-chart-world-map/src/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Arc
 => plugins/legacy-preset-chart-deckgl/src/layers/Arc/stories}/Arc.stories.tsx 
(72%)
 create mode 100644 
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/Arc/stories/payload.ts
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Grid
 => 
plugins/legacy-preset-chart-deckgl/src/layers/Grid/stories}/Grid.stories.tsx 
(70%)
 create mode 100644 
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/Grid/stories/payload.ts
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Hex
 => plugins/legacy-preset-chart-deckgl/src/layers/Hex/stories}/Hex.stories.tsx 
(70%)
 create mode 100644 
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/Hex/stories/payload.ts
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Path
 => 
plugins/legacy-preset-chart-deckgl/src/layers/Path/stories}/Path.stories.tsx 
(76%)
 copy docs/babel.config.js => 
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/Path/stories/payload.ts
 (71%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Polygon
 => 
plugins/legacy-preset-chart-deckgl/src/layers/Polygon/stories}/Polygon.stories.tsx
 (65%)
 create mode 100644 
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/Polygon/stories/geojsonPayload.ts
 copy 
superset-frontend/{packages/superset-ui-core/src/components/Table/cell-renderers/NumericCell/NumericCell.stories.tsx
 => plugins/legacy-preset-chart-deckgl/src/layers/Polygon/stories/payload.ts} 
(52%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Scatter
 => 
plugins/legacy-preset-chart-deckgl/src/layers/Scatter/stories}/Scatter.stories.tsx
 (67%)
 create mode 100644 
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/Scatter/stories/payload.ts
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-deckgl/Screengrid/Stories.tsx
 => 
plugins/legacy-preset-chart-deckgl/src/layers/Screengrid/stories/Screengrid.stories.tsx}
 (75%)
 create mode 100644 
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/Screengrid/stories/payload.ts
 create mode 100644 
superset-frontend/plugins/legacy-preset-chart-nvd3/src/BoxPlot/stories/NVD3BoxPlot.stories.tsx
 create mode 100644 
superset-frontend/plugins/legacy-preset-chart-nvd3/src/BoxPlot/stories/data.ts
 create mode 100644 
superset-frontend/plugins/legacy-preset-chart-nvd3/src/Bubble/stories/NVD3Bubble.stories.tsx
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-nvd3/Bubble
 => plugins/legacy-preset-chart-nvd3/src/Bubble/stories}/data.ts (100%)
 create mode 100644 
superset-frontend/plugins/legacy-preset-chart-nvd3/src/Bullet/stories/NVD3Bullet.stories.tsx
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-nvd3/Bullet
 => plugins/legacy-preset-chart-nvd3/src/Bullet/stories}/data.ts (100%)
 create mode 100644 
superset-frontend/plugins/legacy-preset-chart-nvd3/src/Compare/stories/NVD3Compare.stories.tsx
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-nvd3/Compare
 => plugins/legacy-preset-chart-nvd3/src/Compare/stories}/data.ts (100%)
 create mode 100644 
superset-frontend/plugins/plugin-chart-ag-grid-table/src/stories/AgGridTable.stories.tsx
 create mode 100644 
superset-frontend/plugins/plugin-chart-ag-grid-table/src/stories/data.ts
 create mode 100644 
superset-frontend/plugins/plugin-chart-ag-grid-table/test/AgGridTableChart.test.tsx
 create mode 100644 
superset-frontend/plugins/plugin-chart-cartodiagram/src/stories/Cartodiagram.stories.tsx
 create mode 100644 
superset-frontend/plugins/plugin-chart-cartodiagram/src/stories/data.ts
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-big-number/BigNumberTotal
 => 
plugins/plugin-chart-echarts/src/BigNumber/BigNumberTotal/stories}/BigNumberTotal.stories.tsx
 (57%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-big-number/BigNumberTotal
 => plugins/plugin-chart-echarts/src/BigNumber/BigNumberTotal/stories}/data.ts 
(100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-big-number/BigNumber
 => 
plugins/plugin-chart-echarts/src/BigNumber/BigNumberWithTrendline/stories}/BigNumber.stories.tsx
 (63%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/legacy-preset-chart-big-number/BigNumber
 => 
plugins/plugin-chart-echarts/src/BigNumber/BigNumberWithTrendline/stories}/data.ts
 (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/BoxPlot
 => plugins/plugin-chart-echarts/src/BoxPlot/stories}/BoxPlot.stories.tsx (88%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/BoxPlot
 => plugins/plugin-chart-echarts/src/BoxPlot/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Bubble
 => plugins/plugin-chart-echarts/src/Bubble/stories}/BubbleChart.stories.tsx 
(90%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Bubble
 => plugins/plugin-chart-echarts/src/Bubble/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Funnel
 => plugins/plugin-chart-echarts/src/Funnel/stories}/Funnel.stories.tsx (84%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Funnel
 => plugins/plugin-chart-echarts/src/Funnel/stories}/constants.ts (100%)
 create mode 100644 
superset-frontend/plugins/plugin-chart-echarts/src/Gauge/stories/Gauge.stories.tsx
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Gauge
 => plugins/plugin-chart-echarts/src/Gauge/stories}/data.ts (100%)
 create mode 100644 
superset-frontend/plugins/plugin-chart-echarts/src/Graph/stories/Graph.stories.tsx
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Graph
 => plugins/plugin-chart-echarts/src/Graph/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/MixedSeries
 => 
plugins/plugin-chart-echarts/src/MixedTimeseries/stories}/MixedSeries.stories.tsx
 (77%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/MixedSeries
 => plugins/plugin-chart-echarts/src/MixedTimeseries/stories}/negativeData.ts 
(100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Pie
 => plugins/plugin-chart-echarts/src/Pie/stories}/Pie.stories.tsx (77%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Pie
 => plugins/plugin-chart-echarts/src/Pie/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Radar
 => plugins/plugin-chart-echarts/src/Radar/stories}/Radar.stories.tsx (59%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Radar
 => plugins/plugin-chart-echarts/src/Radar/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Sunburst
 => plugins/plugin-chart-echarts/src/Sunburst/stories}/Sunburst.stories.tsx 
(86%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Sunburst
 => plugins/plugin-chart-echarts/src/Sunburst/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts
 => 
plugins/plugin-chart-echarts/src/Timeseries/stories}/AreaSeries/AreaSeries.stories.tsx
 (85%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts
 => plugins/plugin-chart-echarts/src/Timeseries/stories}/AreaSeries/data.ts 
(100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Timeseries
 => plugins/plugin-chart-echarts/src/Timeseries/stories}/Timeseries.stories.tsx 
(84%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Timeseries
 => plugins/plugin-chart-echarts/src/Timeseries/stories}/confbandData.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Timeseries
 => plugins/plugin-chart-echarts/src/Timeseries/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Timeseries
 => plugins/plugin-chart-echarts/src/Timeseries/stories}/negativeNumData.ts 
(100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Timeseries
 => plugins/plugin-chart-echarts/src/Timeseries/stories}/stackWithNulls.ts 
(100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Tree
 => plugins/plugin-chart-echarts/src/Tree/stories}/Tree.stories.tsx (50%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Tree
 => plugins/plugin-chart-echarts/src/Tree/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Treemap
 => plugins/plugin-chart-echarts/src/Treemap/stories}/Treemap.stories.tsx (85%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Treemap
 => plugins/plugin-chart-echarts/src/Treemap/stories}/data.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Waterfall
 => plugins/plugin-chart-echarts/src/Waterfall/stories}/Waterfall.stories.tsx 
(68%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-echarts/Waterfall
 => plugins/plugin-chart-echarts/src/Waterfall/stories}/data.ts (100%)
 copy superset-frontend/{src/explore/exploreUtils/getLegacyEndpointType.test.ts 
=> plugins/plugin-chart-echarts/src/utils/orderby.test.ts} (65%)
 create mode 100644 
superset-frontend/plugins/plugin-chart-echarts/src/utils/orderby.ts
 create mode 100644 
superset-frontend/plugins/plugin-chart-echarts/test/helpers.ts
 create mode 100644 
superset-frontend/plugins/plugin-chart-handlebars/src/stories/Handlebars.stories.tsx
 create mode 100644 
superset-frontend/plugins/plugin-chart-handlebars/src/stories/data.ts
 create mode 100644 
superset-frontend/plugins/plugin-chart-pivot-table/src/stories/PivotTable.stories.tsx
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-pivot-table
 => plugins/plugin-chart-pivot-table/src/stories}/testData.ts (100%)
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-table
 => plugins/plugin-chart-table/src/stories}/Table.stories.tsx (90%)
 create mode 100644 
superset-frontend/plugins/plugin-chart-table/src/stories/birthNames.json
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-table
 => plugins/plugin-chart-table/src/stories}/testData.ts (100%)
 copy superset-frontend/plugins/{plugin-chart-ag-grid-table => 
plugin-chart-table}/test/controlPanel.test.ts (100%)
 create mode 100644 
superset-frontend/plugins/plugin-chart-word-cloud/src/stories/WordCloud.stories.tsx
 rename 
superset-frontend/{packages/superset-ui-demo/storybook/stories/plugins/plugin-chart-word-cloud
 => plugins/plugin-chart-word-cloud/src/stories}/data.ts (100%)
 create mode 100644 superset-frontend/scripts/check-storybook-coverage.js
 create mode 100644 superset-frontend/src/components/Chart/Chart.test.tsx
 create mode 100644 superset-frontend/src/dashboard/actions/autoRefresh.ts
 create mode 100644 
superset-frontend/src/dashboard/components/AutoRefreshIndicator/index.tsx
 create mode 100644 
superset-frontend/src/dashboard/components/AutoRefreshStatus/StatusIndicatorDot.test.tsx
 create mode 100644 
superset-frontend/src/dashboard/components/AutoRefreshStatus/StatusIndicatorDot.tsx
 create mode 100644 
superset-frontend/src/dashboard/components/AutoRefreshStatus/StatusTooltipContent.test.tsx
 create mode 100644 
superset-frontend/src/dashboard/components/AutoRefreshStatus/StatusTooltipContent.tsx
 create mode 100644 
superset-frontend/src/dashboard/components/Header/useHeaderAutoRefresh.ts
 create mode 100644 
superset-frontend/src/dashboard/components/RefreshButton/index.tsx
 copy superset-frontend/src/dashboard/components/RefreshFrequency/{index.ts => 
RefreshFrequencySelect.test.tsx} (58%)
 create mode 100644 
superset-frontend/src/dashboard/contexts/AutoRefreshContext.test.tsx
 create mode 100644 
superset-frontend/src/dashboard/contexts/AutoRefreshContext.tsx
 create mode 100644 
superset-frontend/src/dashboard/hooks/useAutoRefreshTabPause.test.tsx
 create mode 100644 
superset-frontend/src/dashboard/hooks/useAutoRefreshTabPause.ts
 create mode 100644 superset-frontend/src/dashboard/hooks/useCurrentTime.test.ts
 create mode 100644 superset-frontend/src/dashboard/hooks/useCurrentTime.ts
 create mode 100644 
superset-frontend/src/dashboard/hooks/useRealTimeDashboard.test.ts
 create mode 100644 
superset-frontend/src/dashboard/hooks/useRealTimeDashboard.ts
 create mode 100644 
superset-frontend/src/dashboard/hooks/useTabVisibility.test.ts
 create mode 100644 superset-frontend/src/dashboard/hooks/useTabVisibility.ts
 create mode 100644 
superset-frontend/src/dashboard/reducers/autoRefreshReducer.test.ts
 create mode 100644 superset-frontend/src/dashboard/types/autoRefresh.ts
 create mode 100644 
superset-frontend/src/dashboard/util/migrateChartCustomization.test.ts
 create mode 100644 
superset-frontend/src/dashboard/util/migrateChartCustomization.ts
 create mode 100644 
superset-frontend/src/explore/components/controls/ConditionalFormattingControl/constants.ts
 copy superset-frontend/src/{components/ErrorMessage/IssueCode.test.tsx => 
features/owners/OwnerSelectLabel/OwnerSelectLabel.test.tsx} (54%)
 copy superset-frontend/src/{explore/components/optionRenderers.tsx => 
features/owners/OwnerSelectLabel/index.tsx} (50%)
 create mode 100644 superset-frontend/src/theme/hooks/useThemeValidation.test.ts
 create mode 100644 superset-frontend/src/theme/hooks/useThemeValidation.ts
 create mode 100644 superset-frontend/src/theme/utils/antdTokenNames.test.ts
 create mode 100644 superset-frontend/src/theme/utils/antdTokenNames.ts
 create mode 100644 
superset-frontend/src/theme/utils/themeStructureValidation.test.ts
 create mode 100644 
superset-frontend/src/theme/utils/themeStructureValidation.ts
 copy {superset-extensions-cli/src/superset_extensions_cli => 
superset/mcp_service}/constants.py (78%)
 copy superset/mcp_service/{commands/create_form_data.py => 
dashboard/constants.py} (61%)
 create mode 100644 superset/mcp_service/utils/token_utils.py
 create mode 100644 superset/models/sql_types/base.py
 create mode 100644 
tests/integration_tests/tasks/test_subscription_visibility.py
 copy {superset-core/src/superset_core/api => 
tests/unit_tests/commands/report}/__init__.py (100%)
 create mode 100644 tests/unit_tests/commands/report/update_test.py
 create mode 100644 tests/unit_tests/dashboards/api_test.py
 copy {superset-core/src/superset_core/api => 
tests/unit_tests/examples}/__init__.py (100%)
 create mode 100644 tests/unit_tests/examples/data_loading_test.py
 create mode 100644 tests/unit_tests/examples/generic_loader_test.py
 create mode 100644 tests/unit_tests/examples/utils_test.py
 create mode 100644 
tests/unit_tests/mcp_service/chart/validation/test_column_name_normalization.py
 create mode 100644 tests/unit_tests/mcp_service/system/test_system_utils.py
 create mode 100644 
tests/unit_tests/mcp_service/system/tool/test_get_current_user.py
 create mode 100644 tests/unit_tests/mcp_service/test_middleware.py
 create mode 100644 tests/unit_tests/mcp_service/test_middleware_logging.py
 create mode 100644 tests/unit_tests/mcp_service/utils/test_token_utils.py
 copy {superset-core/src/superset_core/api => 
tests/unit_tests/models/sql_types}/__init__.py (100%)
 create mode 100644 tests/unit_tests/models/sql_types/currency_type_test.py


Reply via email to