You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by gi...@apache.org on 2026/03/17 18:11:45 UTC
(superset) branch dependabot/npm_and_yarn/superset-frontend/typescript-eslint/parser-8.56.1 updated (2ea8daac35d -> eee5331d774)
This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a change to branch dependabot/npm_and_yarn/superset-frontend/typescript-eslint/parser-8.56.1
in repository https://gitbox.apache.org/repos/asf/superset.git
discard 2ea8daac35d chore(deps-dev): bump @typescript-eslint/parser in /superset-frontend
add 3b656f9cc2f fix(dashboard): restore filterState prop for cross-filter functionality (#38349)
add c25adbc3953 test(DashboardList): migrate Cypress E2E tests to RTL (#38368)
add e2ebc135e4a test(playwright): add dashboard list E2E tests (#38377)
add 27d54f84213 fix(build/backend): migrate to deps-free `pygeohash` with pre-built wheels at runtime (#37524)
add 796c206ee7b fix(charts): apply resample before rolling window in post-processing pipeline (#37987)
add 63e7ee70bff fix(echarts): adaptive formatting labels (#38017)
add 8c9efe5659f feat: support for import/export masked_encrypted_extra (backend) (#38077)
add dc995328a86 chore(deps): bump cryptography from 44.0.3 to 46.0.5 (#37912)
add 8f28a8734a1 chore(deps): bump flask from 2.3.3 to 3.1.3 (#38168)
add 1bfd41df0ca chore(deps): bump aquasecurity/trivy-action from 0.34.1 to 0.34.2 (#38352)
add 88241d3e710 chore(deps-dev): bump oxlint from 1.50.0 to 1.51.0 in /superset-frontend (#38353)
add a79dcbbb66d chore(deps): update d3-cloud requirement from ^1.2.8 to ^1.2.9 in /superset-frontend/plugins/plugin-chart-word-cloud (#38381)
add 939e4194c61 fix(alerts): fix error toast when editing report with saved tab selection (#38198)
add 0d5827ac428 chore(extensions): unified contribution api and automatic prefixing (#38412)
add 5a2a72cf31a chore(deps): bump svgo from 3.3.2 to 3.3.3 in /docs (#38422)
add fdf19db5e6a chore(deps): bump svgo from 3.3.2 to 3.3.3 in /superset-frontend (#38421)
add 4dfb0e66cb6 chore(deps-dev): bump webpack from 5.105.3 to 5.105.4 in /superset-frontend (#38385)
add 880cab58c33 fix(bug): Error when adding a filter using custom sql (#38246)
add 20cc3345d89 chore(playwright): Using warning for timeouts (#38441)
add a2c23a2a58f chore(deps-dev): bump css-minimizer-webpack-plugin from 7.0.4 to 8.0.0 in /superset-frontend (#38434)
add f6f734f0d16 chore(deps): bump google-auth-library from 10.5.0 to 10.6.1 in /superset-frontend (#38436)
add a513406239f feat!: upgrade project's Node version to v22 (#37223)
add f0416eff78e fix(dashboard): fix multiple drag-and-drop and edit mode issues (#37891)
add 0dbd4c5b909 docs(mcp): add MCP server deployment and authentication guide (#38415)
add 5f0efd2be9d test: fix CI OOM crashes in DatasourceControl test and flaky FileHandleer test (#38430)
add 357e35dc628 refactor(core): reorganize superset-core packages into feature-based structure (#38448)
add 6c359733e1d fix(frontend): preserve absolute and protocol-relative URLs in ensureAppRoot (#38316)
add 884db9347da feat(docs): Adding VTG GmbH in INTHEWILD.yaml (#38359)
add 664c465d805 fix(test): use correct @apache-superset/core/theme import in Menu test (#38457)
add 17df85b5edb fix(roles): convert permissions/groups dropdowns to AsyncSelect with server-side search (#38387)
add 0d5ade6dd31 fix(ColorPicker): restore alpha input visibility hidden by geostyler CSS (#38169)
add 7d2efd8c1ae fix(mcp): suppress third-party deprecation warnings from client responses (#38401)
add 3609cd9544d feat(mcp): add compile check to validate chart queries before returning (#38408)
add 84a53eab31c feat(mcp): add pie, pivot table, and mixed timeseries chart creation support (#38375)
add db7665c0bc4 feat(mcp): add user roles to MCP response and permission-aware instructions (#38367)
add 5c4bf0f6ea6 fix(deps): bump Python dependencies to fix 7 security vulnerabilities (#38447)
add 296bd7e56b5 docs(extensions): fix extension developer documentation and CLI scaffolding (#38472)
add 03ad1789f02 feat(alerts/reports): external URL warning (#35021)
add 5fb9e17721d refactor(extensions): align editors API naming with commands/views, add description to all contribution types (#38475)
add a6c0d6321f6 chore(extensions): simplify backend package structure by removing superset_extensions namespace (#38476)
add 3cb00bf116d feat(database): add Google Cloud Datastore db engine spec (#37677)
add 60577bcd979 chore(deps-dev): bump webpack from 5.105.3 to 5.105.4 in /docs (#38380)
add d9a91f99dbb feat: support for import/export masked_encrypted_extra (frontend) (#38078)
add 9983e255f82 fix(charts): revert: improve negative stacked bar label positioning and accessibility (#37405) (#38484)
add c7a1f57487c fix(sqla): parenthesize extras where/having clauses in query generation (#38183)
add 577654cd02e fix(heatmap): correct tooltip display to show axis values instead of indices (#38487)
add e70c7944b75 fix(tests): achieve 100% TypeScript coverage for core packages (#38518)
add 62cebc8a0e6 fix(dashboard): prevent Apply button from disabling when required filters are auto-applied (#38479)
add dca41f9a7b8 fix(theme): prevent background color flash on page load (#38399)
add bf55f1e4388 chore(extensions): bump superset-core and superset-extensions-cli to 0.1.0rc1 (#38516)
add bc99b710bda fix(dashboard): ensure clear all respects required filter validation (#37681)
add 9017b9a74f2 chore: enable allow_update_branch in .asf.yaml (#38530)
add 61fbfda501e feat(security): add granular export controls (Phase 1) (#38361)
add 8e3e57c1c82 fix(docs): swizzle MethodEndpoint to fix SSG crash on all API pages (#38533)
add 4cd3ce164de fix(mcp): make fastmcp truly optional during Superset startup (#38534)
add 6ef4794778b fix(mcp): resolve chatbot tool call flakiness with URL and instruction fixes (#38532)
add a17f38a4e23 fix(embedded): add CurrentUserRestApi read permission to Public role defaults (#38474)
add 06fd0658ae7 chore(deps-dev): bump prettier-plugin-packagejson from 3.0.0 to 3.0.2 in /superset-frontend (#38508)
add 6c1df93215f chore(deps): bump aquasecurity/trivy-action from 0.34.2 to 0.35.0 (#38502)
add 9ecca47e693 feat(ci): only run precommit on changed files (#38155)
add 26c07b1ffb8 chore(deps-dev): bump eslint-plugin-react-you-might-not-need-an-effect from 0.9.1 to 0.9.2 in /superset-frontend (#38509)
add afa51125de4 chore(deps): bump the storybook group in /docs with 11 updates (#38501)
add 06d6b513cde chore(deps-dev): bump jest from 30.2.0 to 30.3.0 in /superset-frontend (#38549)
add 6d1d5d64d11 chore(deps): bump antd from 6.3.1 to 6.3.2 in /docs (#38547)
add 5f20d2e15ac chore(deps): bump react-syntax-highlighter from 16.1.0 to 16.1.1 in /superset-frontend (#38548)
add 0533ca9941e feat(mcp): register GlobalErrorHandlerMiddleware and LoggingMiddleware (#38523)
add 2a876e8b868 fix(mcp): add missing command.validate() to MCP chart data tools (#38521)
add 5fa70bdbd82 fix(mcp): add guardrails to prevent LLM artifact generation (#38391)
add 6342c4f338a feat(mcp): add horizontal bar chart orientation support to generate_chart (#38390)
add 5c2cbb58bc9 fix(mcp): add missing __init__.py for chart, dashboard, dataset packages (#38400)
add cc8ad23d6f9 chore(deps): bump react-diff-viewer-continued from 3.4.0 to 4.2.0 in /superset-frontend (#38552)
add 13fe88000a9 chore(deps-dev): bump lightningcss from 1.31.1 to 1.32.0 in /superset-frontend (#38511)
add 0cfd760a365 fix(mcp): improve default chart names with descriptive format (#38406)
add bde48e563ef fix: SQL Lab tab content padding (#38561)
add 31754a39c93 fix(i18n): correct variable name for translated SQL Lab query message (#38494)
add 6d7cfac8b2d fix(mcp): wrap LoggingMiddleware.on_message event_logger in try/except (#38560)
add eb77452857d feat(mcp): auto-generate dashboard title from chart names when omitted (#38410)
add 3bb9704cd51 fix(mcp): honor target_tab parameter when adding charts to tabbed dashboards (#38409)
add fe7f220c210 fix(charts): set reasonable default y-axis title margin to prevent label overlap (#38389)
add 9215eb5e45c fix(ag-grid): persist AG Grid column filters in explore permalinks (#38393)
add 9b8106b3820 chore(deps-dev): bump mini-css-extract-plugin from 2.10.0 to 2.10.1 in /superset-frontend (#38573)
add 59129419425 chore(deps-dev): bump @typescript-eslint/parser from 8.56.1 to 8.57.0 in /superset-websocket (#38570)
add d42e9c4d1b7 chore(deps): bump acorn from 8.9.0 to 8.16.0 in /superset-frontend (#38466)
add 3056c415075 chore(deps): bump caniuse-lite from 1.0.30001775 to 1.0.30001777 in /docs (#38463)
add d752be5f74a chore(deps): bump dompurify from 3.3.1 to 3.3.2 in /superset-frontend (#38455)
add ffe60bd9602 chore(deps-dev): bump oxlint from 1.51.0 to 1.53.0 in /superset-frontend (#38571)
add 27197faba97 fix(matrixify): Matrixify to not override slice id (#38515)
add a9def2fc152 fix: support nested function calls in cache_key_wrapper (#38569)
add 09e9c6a522e fix(embedded): prevent double RLS application in virtual datasets (#37395)
add 7943af359c2 feat(mcp): implement RBAC permission checking for MCP tools (#38407)
add 65e21cf13c4 docs: move MCP deployment guide to admin docs, add user-facing AI guide (#38585)
add 7f476a79b3e fix: add embedded box sizing rule for layout (#38351)
add 95f61bd223e fix: add parent_slice_id for multilayer charts to embed (#38243)
add d4f1f8db001 fix(mcp): extract role names as strings in UserInfo serialization (#38612)
add 4a9db243a17 chore(deps): bump caniuse-lite from 1.0.30001777 to 1.0.30001778 in /docs (#38593)
add 83955e87acc refactor(mcp): use serialize_user_object in get_instance_info (#38613)
add 0b8df8d3f2f build(deps): update `geostyler-*` deps to latest major versions (#38151)
add fc156d0014b fix(mcp): replace uuid with url and changed_on_humanized in default list columns (#38566)
add 56d6bb19136 feat(auth): add SAML login support to frontend (#38606)
add d91b96814e0 fix(mcp): Improve validation errors and field aliases to reduce failed LLM tool calls (#38625)
add 9516d1a306d fix(explore/dashboard): fix CSV/Excel downloads for legacy chart types (#38513)
add 32a64d02c74 fix(deckgl): polygon chart not rendering when boundary column contains nested geometry JSON (#38595)
add af5e05db2e4 fix(mcp): Support form_data_key without chart identifier for unsaved charts (#38628)
add f458e2d484f feat(mcp): add extra_form_data param to get_chart_data for dashboard filters (#38531)
add d5cf77cd60b fix(mcp): fix crashes in list tools, dataset info, chart preview, and add owner/favorite filters (#38277)
add f5383263bc7 fix(extensions): fix gitignore template and bump version (#38614)
add 18673369076 fix(editor): implement missing methods, fix cursor position clearing (#38603)
add f6106cd26f1 fix(timeshiftcolor): Time shift color to match the original color (#38473)
add ca2d26a1e2f fix(ag-grid-table): fix AND filter conditions not applied (#38369)
add ba7271b4d89 fix(world-map): add fallback fill color when colorFn returns null (#38602)
add ba7d7dcec0d chore(deps): bump react-syntax-highlighter from 16.1.0 to 16.1.1 in /superset-frontend (#38619)
add 242636b36b1 chore(deps): bump baseline-browser-mapping from 2.10.0 to 2.10.7 in /docs (#38622)
add f4a57a13bc9 chore(deps): bump dompurify from 3.3.2 to 3.3.3 in /superset-frontend (#38592)
add b6c3b3ef46d fix(mcp): return all statement results for multi-statement SQL queries (#38388)
add 97a66f7a647 feat(mcp): add BM25 tool search transform to reduce initial context size (#38562)
add e8061a9c2b4 style(metadata-bar): use bold font weight for metadata bar title (#38608)
add 6e7d6a85b45 fix(ag-grid-table): fix failing buildQuery test expectation (#38636)
add ed622e254a4 feat(matrixify): Revamp control panel (#38519)
add 48220fb33f8 feat(mcp): add save_sql_query tool for SQL Lab saved queries (#38414)
add 68e38c88936 chore(deps): bump undici from 7.22.0 to 7.24.1 in /superset-frontend (#38642)
add 176bf00c169 chore(deps-dev): bump baseline-browser-mapping from 2.10.0 to 2.10.7 + sync lockfile + run `npm audit fix` in /superset-frontend (#38621)
add 39cd1cdd436 chore(deps): bump dawidd6/action-download-artifact from 16 to 17 (#38620)
add cc066b35761 fix(docs): use absolute API doc links in developer docs (#38649)
add afe093f1ca5 fix(FilterBar): reduce padded space between filter header and first filter (#38646)
add dcb414aa064 feat(extensions): add update command to extensions cli (#38651)
add aa5adb0fce1 fix(embedded): default to light theme instead of system preference (#38644)
add 7909095ff34 feat(native-filters): add configurable LIKE/ILIKE operators to Select filter (#38470)
add 96705c156a9 fix(map-box): make opacity, lon, lat, and zoom controls functional (#38374)
add ca403dc45d0 fix(ci): allow docs testing to run despite absence of db diagnostics data (#38655)
add 1c8224f4c63 feat(mcp): Add tool annotations for MCP directory compliance (#38641)
add a854fa60a2e feat: apply RLS conservatively (#38683)
add c980f39aabe chore(deps): bump caniuse-lite from 1.0.30001778 to 1.0.30001780 in /docs (#38688)
add 461037f645d chore(deps-dev): bump typescript-eslint from 8.56.1 to 8.57.1 in /docs (#38684)
add 5865176f363 fix(dashboard): overload issue in dashboard export to excel (#29418)
add 6f301707f9f fix: Simplify extension folder name (#38690)
add 05b9970aa66 fix(map-box): prevent clusters from being smaller than individual points (#38458)
add eee5331d774 chore(deps-dev): bump @typescript-eslint/parser in /superset-frontend
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (2ea8daac35d)
\
N -- N -- N refs/heads/dependabot/npm_and_yarn/superset-frontend/typescript-eslint/parser-8.56.1 (eee5331d774)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
No new revisions were added by this update.
Summary of changes:
.asf.yaml | 4 +-
.github/workflows/docker.yml | 2 +-
.github/workflows/pre-commit.yml | 10 +-
.github/workflows/superset-docs-deploy.yml | 4 +-
.github/workflows/superset-docs-verify.yml | 3 +-
RESOURCES/INTHEWILD.yaml | 3 +
UPDATING.md | 8 +
docs/.nvmrc | 2 +-
docs/admin_docs/configuration/alerts-reports.mdx | 14 +
docs/admin_docs/configuration/mcp-server.mdx | 684 +++++
docs/developer_docs/api.mdx | 484 ++--
docs/developer_docs/extensions/architecture.md | 63 +-
.../developer_docs/extensions/components/alert.mdx | 6 +-
.../developer_docs/extensions/components/index.mdx | 8 +-
.../extensions/contribution-types.md | 142 +-
docs/developer_docs/extensions/dependencies.md | 6 +-
docs/developer_docs/extensions/development.md | 102 +-
.../extensions/extension-points/editors.md | 49 +-
.../extensions/extension-points/sqllab.md | 173 +-
docs/developer_docs/extensions/mcp.md | 6 +-
docs/developer_docs/extensions/overview.md | 4 +-
docs/developer_docs/extensions/quick-start.md | 111 +-
docs/developer_docs/extensions/registry.md | 14 +-
docs/developer_docs/extensions/tasks.md | 10 +-
.../docs/using-superset/using-ai-with-superset.mdx | 245 ++
docs/package.json | 28 +-
docs/scripts/generate-api-index.mjs | 6 +-
docs/scripts/generate-superset-components.mjs | 8 +-
docs/src/components/StorybookWrapper.jsx | 4 +-
.../src/theme/ApiExplorer/MethodEndpoint/index.tsx | 120 +
docs/src/theme/Playground/Preview/index.tsx | 2 +-
docs/src/theme/ReactLiveScope/index.tsx | 2 +-
docs/src/types/apache-superset-core/index.d.ts | 2 +-
docs/src/webpack.extend.ts | 4 +-
docs/static/feature-flags.json | 6 +
docs/static/img/databases/datastore.png | Bin 0 -> 5248 bytes
.../{sql-snippets.png => editor-snippets.png} | Bin
docs/tsconfig.json | 4 +-
docs/yarn.lock | 544 ++--
pyproject.toml | 10 +-
requirements/base.in | 4 +-
requirements/base.txt | 18 +-
requirements/development.txt | 91 +-
superset-core/README.md | 100 +-
superset-core/pyproject.toml | 2 +-
superset-core/src/superset_core/api/rest_api.py | 72 -
.../src/superset_core/{api => common}/__init__.py | 0
.../src/superset_core/{api => common}/daos.py | 82 +-
.../src/superset_core/{api => common}/models.py | 192 +-
.../src/superset_core/{api => mcp}/__init__.py | 0
.../{api/mcp.py => mcp/decorators.py} | 35 +-
.../src/superset_core/{api => queries}/__init__.py | 0
superset-core/src/superset_core/queries/daos.py | 63 +
superset-core/src/superset_core/queries/models.py | 79 +
.../src/superset_core/{api => queries}/query.py | 4 +-
.../src/superset_core/{api => queries}/types.py | 0
.../superset_core/{api => rest_api}/__init__.py | 0
.../src/superset_core/rest_api/api.py | 21 +-
.../src/superset_core/rest_api/decorators.py | 103 +
.../src/superset_core/{api => tasks}/__init__.py | 0
superset-core/src/superset_core/tasks/daos.py | 76 +
.../src/superset_core/tasks/decorators.py | 152 +
superset-core/src/superset_core/tasks/models.py | 169 ++
.../superset_core/{api/tasks.py => tasks/types.py} | 128 +-
superset-embedded-sdk/.nvmrc | 2 +-
superset-embedded-sdk/src/index.ts | 1 +
superset-extensions-cli/README.md | 73 +-
superset-extensions-cli/pyproject.toml | 3 +-
.../src/superset_extensions_cli/cli.py | 194 +-
.../templates/backend/src/package/__init__.py.j2 | 0
.../templates/{.gitignore.j2 => gitignore.j2} | 0
.../src/superset_extensions_cli/types.py | 4 +-
.../src/superset_extensions_cli/utils.py | 12 +-
superset-extensions-cli/tests/conftest.py | 77 +-
superset-extensions-cli/tests/test_cli_build.py | 113 +-
superset-extensions-cli/tests/test_cli_bundle.py | 5 +-
superset-extensions-cli/tests/test_cli_init.py | 60 +-
superset-extensions-cli/tests/test_cli_update.py | 172 ++
superset-extensions-cli/tests/test_cli_validate.py | 63 +
.../tests/test_name_transformations.py | 11 +-
superset-extensions-cli/tests/test_templates.py | 16 +-
superset-extensions-cli/tests/test_utils.py | 31 +-
superset-frontend/.nvmrc | 2 +-
superset-frontend/.storybook/preview.jsx | 2 +-
.../.storybook/shared/ResizableChartDemo.tsx | 2 +-
.../.storybook/shared/ResizablePanel.tsx | 2 +-
superset-frontend/.storybook/shared/VerifyCORS.tsx | 2 +-
.../cypress/e2e/dashboard_list/filter.test.ts | 47 -
.../cypress/e2e/dashboard_list/list.test.ts | 279 --
superset-frontend/jest.config.js | 2 +-
superset-frontend/oxlint.json | 3 +-
superset-frontend/package-lock.json | 2894 +++++++++-----------
superset-frontend/package.json | 35 +-
.../packages/generator-superset/package.json | 2 +-
superset-frontend/packages/superset-core/README.md | 148 +-
.../packages/superset-core/package.json | 64 +-
.../packages/superset-core/src/api/index.ts | 44 -
.../authentication.ts => authentication/index.ts} | 0
.../src/{api/commands.ts => commands/index.ts} | 4 +-
.../src/{api/core.ts => common/index.ts} | 0
.../{ui => }/components/Alert/Alert.stories.tsx | 0
.../src/{ui => }/components/Alert/Alert.test.tsx | 0
.../src/{ui => }/components/Alert/index.tsx | 0
.../superset-core/src/{ui => }/components/index.ts | 0
.../contributions.ts => contributions/index.ts} | 8 +-
.../src/{api/editors.ts => editors/index.ts} | 85 +-
.../src/{api/extensions.ts => extensions/index.ts} | 2 +-
.../packages/superset-core/src/index.ts | 16 +-
.../src/{api/menus.ts => menus/index.ts} | 4 +-
.../src/{api/sqlLab.ts => sqlLab/index.ts} | 20 +-
.../superset-core/src/{ui => }/testing.tsx | 0
.../src/{ui => }/theme/GlobalStyles.tsx | 11 +
.../src/{ui => }/theme/Theme.test.tsx | 0
.../superset-core/src/{ui => }/theme/Theme.tsx | 0
.../src/{ui => }/theme/exampleThemes.ts | 0
.../superset-core/src/{ui => }/theme/index.tsx | 0
.../superset-core/src/{ui => }/theme/types.ts | 1 +
.../src/{ui => }/theme/utils/index.ts | 0
.../src/{ui => }/theme/utils/themeUtils.test.ts | 30 +
.../src/{ui => }/theme/utils/themeUtils.ts | 0
.../src/{ui => }/theme/utils/utils.test.ts | 22 +
.../src/{ui => }/translation/README.md | 0
.../src/translation/Translator.test.ts | 132 +
.../src/{ui => }/translation/Translator.ts | 3 +-
.../src/translation/TranslatorSingleton.test.ts | 112 +
.../{ui => }/translation/TranslatorSingleton.ts | 0
.../src/{ui => }/translation/index.ts | 0
.../src/{ui => }/translation/types/index.ts | 0
.../src/{ui => }/translation/types/jed.ts | 0
.../packages/superset-core/src/ui/index.ts | 21 -
.../src/{spec => }/utils/logging.test.ts | 4 +-
.../packages/superset-core/src/utils/logging.ts | 1 +
.../src/{api/views.ts => views/index.ts} | 4 +-
.../src/components/CertifiedIconWithTooltip.tsx | 4 +-
.../src/components/ColumnOption.tsx | 2 +-
.../components/ColumnTypeLabel/ColumnTypeLabel.tsx | 6 +-
.../src/components/ControlHeader.tsx | 4 +-
.../src/components/ControlSubSectionHeader.tsx | 2 +-
.../src/components/MetricOption.tsx | 2 +-
.../src/components/SQLPopover.tsx | 4 +-
.../src/components/labelUtils.tsx | 4 +-
.../superset-ui-chart-controls/src/constants.ts | 4 +-
.../superset-ui-chart-controls/src/fixtures.ts | 2 +-
.../src/operators/utils/timeOffset.ts | 12 +-
.../src/sections/advancedAnalytics.tsx | 2 +-
.../src/sections/annotationsAndLayers.tsx | 2 +-
.../src/sections/chartTitle.tsx | 2 +-
.../src/sections/echartsTimeSeriesQuery.tsx | 2 +-
.../src/sections/forecastInterval.tsx | 2 +-
.../src/sections/matrixify.tsx | 44 +-
.../src/sections/sections.tsx | 2 +-
.../src/sections/timeComparison.tsx | 2 +-
.../components/RadioButtonControl.tsx | 2 +-
.../src/shared-controls/customControls.tsx | 4 +-
.../src/shared-controls/dndControls.tsx | 4 +-
.../src/shared-controls/matrixifyControls.tsx | 116 +-
.../src/shared-controls/mixins.tsx | 2 +-
.../src/shared-controls/sharedControls.tsx | 2 +-
.../superset-ui-chart-controls/src/types.ts | 2 +-
.../src/utils/D3Formatting.ts | 2 +-
.../src/utils/checkColumnType.ts | 2 +-
.../src/utils/columnChoices.ts | 2 +-
.../src/utils/getColorFormatters.ts | 2 +-
.../src/utils/isSortable.ts | 2 +-
.../test/components/ColumnOption.test.tsx | 2 +-
.../test/components/ColumnTypeLabel.test.tsx | 2 +-
.../test/operators/utils/timeOffset.test.ts | 92 +-
.../test/shared-controls/customControls.test.tsx | 2 +-
.../test/utils/checkColumnType.test.ts | 2 +-
.../test/utils/columnChoices.test.tsx | 2 +-
.../test/utils/getColorFormatters.test.ts | 2 +-
.../test/utils/getTemporalColumns.test.ts | 2 +-
.../test/utils/isSortable.test.ts | 2 +-
.../packages/superset-ui-core/package.json | 2 +-
.../src/chart/components/FallbackComponent.tsx | 4 +-
.../Matrixify/MatrixifyGridCell.test.tsx | 2 +-
.../components/Matrixify/MatrixifyGridCell.tsx | 4 +-
.../Matrixify/MatrixifyGridGenerator.test.ts | 20 +
.../components/Matrixify/MatrixifyGridGenerator.ts | 2 +-
.../Matrixify/MatrixifyGridRenderer.test.tsx | 60 +-
.../components/Matrixify/MatrixifyGridRenderer.tsx | 8 +-
.../src/chart/components/NoResultsComponent.tsx | 3 +-
.../src/chart/components/StatefulChart.tsx | 2 +-
.../src/chart/components/SuperChartCore.tsx | 2 +-
.../src/chart/models/ChartProps.ts | 2 +-
.../src/chart/types/matrixify.test.ts | 57 +-
.../superset-ui-core/src/chart/types/matrixify.ts | 80 +-
.../src/components/ActionButton/index.tsx | 2 +-
.../src/components/AsyncAceEditor/index.tsx | 2 +-
.../src/components/Badge/index.tsx | 2 +-
.../src/components/Button/index.tsx | 2 +-
.../src/components/CachedLabel/TooltipContent.tsx | 2 +-
.../src/components/CachedLabel/index.tsx | 2 +-
.../superset-ui-core/src/components/Card/index.tsx | 2 +-
.../CertifiedBadge/CertifiedBadge.stories.tsx | 2 +-
.../src/components/CertifiedBadge/index.tsx | 4 +-
.../src/components/Checkbox/CheckboxIcons.tsx | 2 +-
.../src/components/CodeSyntaxHighlighter/index.tsx | 2 +-
.../src/components/Collapse/Collapse.tsx | 2 +-
.../components/Collapse/CollapseLabelInModal.tsx | 2 +-
.../components/ConfirmModal/ConfirmModal.test.tsx | 2 +-
.../src/components/ConfirmModal/index.tsx | 4 +-
.../src/components/CronPicker/index.tsx | 4 +-
.../src/components/DatePicker/index.tsx | 2 +-
.../src/components/DeleteModal/index.tsx | 4 +-
.../src/components/Divider/index.tsx | 2 +-
.../src/components/Dropdown/index.tsx | 2 +-
.../src/components/DropdownButton/index.tsx | 2 +-
.../DropdownContainer.stories.tsx | 2 +-
.../DropdownContainer/DropdownContainer.tsx | 4 +-
.../src/components/DynamicEditableTitle/index.tsx | 4 +-
.../src/components/EditableTitle/index.tsx | 4 +-
.../src/components/EmptyState/index.tsx | 4 +-
.../src/components/FaveStar/index.tsx | 4 +-
.../src/components/Flex/Flex.stories.tsx | 2 +-
.../src/components/Form/FormItem.tsx | 2 +-
.../src/components/Form/FormLabel.tsx | 2 +-
.../src/components/Form/LabeledErrorBoundInput.tsx | 4 +-
.../src/components/IconButton/index.tsx | 2 +-
.../components/IconTooltip/IconTooltip.stories.tsx | 2 +-
.../src/components/Icons/BaseIcon.tsx | 2 +-
.../src/components/Icons/Icons.stories.tsx | 2 +-
.../src/components/InfoTooltip/index.tsx | 4 +-
.../src/components/Label/index.tsx | 2 +-
.../components/Label/reusable/DatasetTypeLabel.tsx | 4 +-
.../components/Label/reusable/PublishedLabel.tsx | 4 +-
.../src/components/LastUpdated/index.tsx | 4 +-
.../superset-ui-core/src/components/List/index.ts | 2 +-
.../src/components/ListViewCard/ImageLoader.tsx | 4 +-
.../src/components/ListViewCard/index.tsx | 2 +-
.../src/components/Loading/index.test.tsx | 2 +-
.../src/components/Loading/index.tsx | 4 +-
.../superset-ui-core/src/components/Menu/index.tsx | 2 +-
.../src/components/Metadata/index.tsx | 2 +-
.../src/components/MetadataBar/ContentConfig.tsx | 6 +-
.../components/MetadataBar/MetadataBar.stories.tsx | 2 +-
.../components/MetadataBar/MetadataBar.test.tsx | 2 +-
.../src/components/MetadataBar/MetadataBar.tsx | 2 +-
.../src/components/Modal/FormModal.tsx | 2 +-
.../src/components/Modal/Modal.tsx | 4 +-
.../src/components/PageHeaderWithActions/index.tsx | 4 +-
.../src/components/PopoverDropdown/index.tsx | 2 +-
.../src/components/PopoverSection/index.tsx | 2 +-
.../src/components/ProgressBar/index.tsx | 2 +-
.../src/components/Radio/Radio.stories.tsx | 2 +-
.../src/components/RefreshLabel/index.tsx | 2 +-
.../src/components/Select/AsyncSelect.tsx | 2 +-
.../src/components/Select/Select.tsx | 2 +-
.../src/components/Select/constants.ts | 2 +-
.../src/components/Select/styles.tsx | 2 +-
.../src/components/Select/utils.tsx | 2 +-
.../src/components/Table/VirtualTable.tsx | 2 +-
.../Table/cell-renderers/ActionCell/index.tsx | 2 +-
.../Table/cell-renderers/NullCell/index.tsx | 2 +-
.../Table/cell-renderers/NumericCell/index.tsx | 2 +-
.../header-renderers/HeaderWithRadioGroup.tsx | 2 +-
.../src/components/Table/index.tsx | 6 +-
.../src/components/TableCollection/index.tsx | 2 +-
.../src/components/TableView/TableView.tsx | 2 +-
.../superset-ui-core/src/components/Tabs/Tabs.tsx | 115 +-
.../ThemedAgGridReact/ThemedAgGridReact.test.tsx | 8 +-
.../src/components/ThemedAgGridReact/index.tsx | 2 +-
.../src/components/Timer/index.tsx | 2 +-
.../src/components/TimezoneSelector/index.tsx | 2 +-
.../src/components/TruncatedList/index.tsx | 4 +-
.../src/components/Typography/index.tsx | 2 +-
.../src/components/UnsavedChangesModal/index.tsx | 2 +-
.../components/WarningIconWithTooltip/index.tsx | 2 +-
.../superset-ui-core/src/components/constants.ts | 2 +-
.../src/query/extractQueryFields.ts | 2 +-
.../src/query/getClientErrorObject.ts | 2 +-
.../superset-ui-core/src/query/types/Column.ts | 2 +-
.../superset-ui-core/src/query/types/Operator.ts | 1 +
.../superset-ui-core/src/query/types/Query.ts | 2 +-
.../src/query/types/QueryResponse.ts | 2 +-
.../packages/superset-ui-core/src/spec/index.tsx | 2 +-
.../src/style/stories/Theme.stories.tsx | 2 +-
.../superset-ui-core/src/utils/featureFlags.ts | 3 +-
.../packages/superset-ui-core/src/utils/tooltip.ts | 2 +-
.../src/validator/legacyValidateInteger.ts | 2 +-
.../src/validator/legacyValidateNumber.ts | 2 +-
.../src/validator/validateInteger.ts | 2 +-
.../src/validator/validateMapboxStylesUrl.ts | 2 +-
.../src/validator/validateMaxValue.ts | 2 +-
.../src/validator/validateNonEmpty.ts | 2 +-
.../src/validator/validateNumber.ts | 2 +-
.../src/validator/validateServerPagination.ts | 2 +-
.../validator/validateTimeComparisonRangeValues.ts | 2 +-
.../test/chart/clients/ChartClient.test.ts | 2 +-
.../test/chart/components/MockChartPlugins.tsx | 2 +-
.../test/chart/components/SuperChartCore.test.tsx | 2 +-
.../test/chart/models/ChartPlugin.test.tsx | 2 +-
.../test/chart/models/ChartProps.test.ts | 2 +-
.../Icons/AsyncIcon.integration.test.tsx | 2 +-
.../packages/superset-ui-core/test/fixtures.ts | 2 +-
.../test/query/extractQueryFields.test.ts | 2 +-
.../superset-ui-core/test/query/getAxis.test.ts | 50 +-
.../test/utils/featureFlag.test.ts | 4 +-
.../superset-ui-core/test/validator/setup.ts | 2 +-
.../playwright/helpers/api/dashboard.ts | 170 ++
.../playwright/helpers/fixtures/testAssets.ts | 24 +-
.../{ChartListPage.ts => DashboardListPage.ts} | 67 +-
.../experimental/dashboard/dashboard-list.spec.ts | 403 +++
.../dashboard-test-helpers.ts} | 47 +-
.../legacy-plugin-chart-calendar/src/Calendar.ts | 3 +-
.../src/ReactCalendar.tsx | 2 +-
.../src/controlPanel.ts | 2 +-
.../legacy-plugin-chart-calendar/src/index.ts | 2 +-
.../src/vendor/cal-heatmap.ts | 2 +-
.../legacy-plugin-chart-chord/src/ReactChord.tsx | 2 +-
.../legacy-plugin-chart-chord/src/controlPanel.ts | 2 +-
.../plugins/legacy-plugin-chart-chord/src/index.ts | 2 +-
.../src/ReactCountryMap.tsx | 2 +-
.../src/controlPanel.ts | 2 +-
.../legacy-plugin-chart-country-map/src/index.ts | 2 +-
.../src/stories/CountryMap.stories.tsx | 2 +-
.../src/HorizonChart.tsx | 2 +-
.../src/controlPanel.ts | 2 +-
.../legacy-plugin-chart-horizon/src/index.ts | 2 +-
.../legacy-plugin-chart-map-box/src/MapBox.tsx | 96 +-
.../src/ScatterPlotGlowOverlay.tsx | 61 +-
.../src/controlPanel.ts | 9 +-
.../legacy-plugin-chart-map-box/src/index.ts | 2 +-
.../src/stories/MapBox.stories.tsx | 2 +-
.../src/stories/data.ts | 2 +-
.../src/transformProps.ts | 44 +-
.../test/MapBox.test.tsx | 381 +++
.../test/ScatterPlotGlowOverlay.test.tsx | 663 ++++-
.../test/controlPanel.test.ts | 81 +
.../test/transformProps.test.ts | 230 ++
.../src/PairedTTest.tsx | 2 +-
.../src/controlPanel.ts | 2 +-
.../legacy-plugin-chart-paired-t-test/src/index.ts | 2 +-
.../src/ReactParallelCoordinates.tsx | 2 +-
.../src/controlPanel.ts | 2 +-
.../src/index.ts | 2 +-
.../src/ReactPartition.tsx | 2 +-
.../src/controlPanel.tsx | 2 +-
.../legacy-plugin-chart-partition/src/index.ts | 2 +-
.../legacy-plugin-chart-rose/src/ReactRose.tsx | 2 +-
.../legacy-plugin-chart-rose/src/controlPanel.tsx | 2 +-
.../plugins/legacy-plugin-chart-rose/src/index.ts | 2 +-
.../src/ReactWorldMap.tsx | 2 +-
.../legacy-plugin-chart-world-map/src/WorldMap.ts | 14 +-
.../src/controlPanel.ts | 2 +-
.../legacy-plugin-chart-world-map/src/index.ts | 2 +-
.../test/WorldMap.test.ts | 53 +
.../src/DeckGLContainer.tsx | 2 +-
.../src/Multi/Multi.test.tsx | 139 +-
.../legacy-preset-chart-deckgl/src/Multi/Multi.tsx | 4 +-
.../src/Multi/controlPanel.ts | 2 +-
.../legacy-preset-chart-deckgl/src/Multi/index.ts | 2 +-
.../src/components/Legend.tsx | 2 +-
.../src/components/Tooltip.tsx | 2 +-
.../src/layers/Arc/controlPanel.ts | 2 +-
.../src/layers/Arc/index.ts | 2 +-
.../src/layers/Contour/Contour.tsx | 2 +-
.../src/layers/Contour/controlPanel.ts | 2 +-
.../src/layers/Contour/index.ts | 2 +-
.../src/layers/Geojson/controlPanel.ts | 2 +-
.../src/layers/Geojson/index.ts | 2 +-
.../src/layers/Grid/controlPanel.ts | 2 +-
.../src/layers/Grid/index.ts | 2 +-
.../src/layers/Heatmap/Heatmap.tsx | 2 +-
.../src/layers/Heatmap/controlPanel.ts | 2 +-
.../src/layers/Heatmap/index.ts | 2 +-
.../src/layers/Hex/controlPanel.ts | 2 +-
.../src/layers/Hex/index.ts | 2 +-
.../src/layers/Path/controlPanel.ts | 2 +-
.../src/layers/Path/index.ts | 2 +-
.../src/layers/Path/stories/Path.stories.tsx | 2 +-
.../src/layers/Polygon/Polygon.test.tsx | 2 +-
.../src/layers/Polygon/Polygon.tsx | 2 +-
.../src/layers/Polygon/controlPanel.ts | 2 +-
.../src/layers/Polygon/index.ts | 2 +-
.../src/layers/Polygon/transformProps.test.ts | 120 +
.../src/layers/Polygon/transformProps.ts | 4 +
.../src/layers/Scatter/Scatter.tsx | 2 +-
.../src/layers/Scatter/controlPanel.ts | 2 +-
.../src/layers/Scatter/index.ts | 2 +-
.../src/layers/Screengrid/Screengrid.tsx | 4 +-
.../src/layers/Screengrid/controlPanel.ts | 2 +-
.../src/layers/Screengrid/index.ts | 2 +-
.../src/layers/spatialUtils.test.ts | 2 +-
.../src/utilities/HandlebarsRenderer.tsx | 4 +-
.../src/utilities/Shared_DeckGL.tsx | 2 +-
.../src/utilities/TooltipTemplateControl.tsx | 4 +-
.../src/utilities/TooltipTemplateEditor.tsx | 2 +-
.../src/utilities/sharedDndControls.tsx | 2 +-
.../src/utilities/tooltipUtils.tsx | 2 +-
.../plugins/legacy-preset-chart-nvd3/package.json | 2 +-
.../src/Bubble/controlPanel.ts | 2 +-
.../legacy-preset-chart-nvd3/src/Bubble/index.ts | 2 +-
.../src/Bullet/controlPanel.ts | 2 +-
.../legacy-preset-chart-nvd3/src/Bullet/index.ts | 2 +-
.../src/Compare/controlPanel.ts | 2 +-
.../legacy-preset-chart-nvd3/src/Compare/index.ts | 2 +-
.../legacy-preset-chart-nvd3/src/NVD3Controls.tsx | 2 +-
.../legacy-preset-chart-nvd3/src/NVD3Vis.ts | 2 +-
.../legacy-preset-chart-nvd3/src/ReactNVD3.tsx | 2 +-
.../src/TimePivot/controlPanel.ts | 2 +-
.../src/TimePivot/index.ts | 2 +-
.../src/vendor/superset/AnnotationTypes.ts | 2 +-
.../src/AgGridTable/components/CustomHeader.tsx | 2 +-
.../src/AgGridTable/components/Pagination.tsx | 2 +-
.../components/TimeComparisonVisibility.tsx | 2 +-
.../src/AgGridTable/index.tsx | 2 +-
.../src/AgGridTableChart.tsx | 7 +-
.../plugin-chart-ag-grid-table/src/buildQuery.ts | 80 +-
.../src/controlPanel.tsx | 4 +-
.../plugin-chart-ag-grid-table/src/index.ts | 2 +-
.../src/renderers/NumericCellRenderer.tsx | 6 +-
.../src/renderers/TextCellRenderer.tsx | 2 +-
.../plugin-chart-ag-grid-table/src/stories/data.ts | 2 +-
.../src/styles/index.tsx | 2 +-
.../src/transformProps.ts | 42 +-
.../plugin-chart-ag-grid-table/src/types.ts | 1 +
.../src/utils/formatValue.ts | 2 +-
.../src/utils/useColDefs.ts | 2 +-
.../src/utils/useTableTheme.ts | 2 +-
.../test/buildQuery.test.ts | 254 ++
.../test/controlPanel.test.tsx | 2 +-
.../test/utils/useColDefs.test.ts | 2 +-
.../plugins/plugin-chart-cartodiagram/package.json | 8 +-
.../src/CartodiagramPlugin.tsx | 2 +-
.../src/components/ChartLayer.tsx | 2 +-
.../src/components/ChartWrapper.tsx | 2 +-
.../src/plugin/controlPanel.ts | 2 +-
.../plugin-chart-cartodiagram/src/plugin/index.ts | 2 +-
.../plugins/plugin-chart-cartodiagram/src/types.ts | 2 +-
.../src/util/chartUtil.tsx | 2 +-
.../src/util/controlPanelUtil.tsx | 2 +-
.../test/plugin/transformProps.test.ts | 2 +-
.../test/util/layerUtil.test.ts | 7 +-
.../plugins/plugin-chart-echarts/package.json | 2 +-
.../BigNumber/BigNumberPeriodOverPeriod/PopKPI.tsx | 4 +-
.../BigNumberPeriodOverPeriod/controlPanel.ts | 4 +-
.../BigNumber/BigNumberPeriodOverPeriod/index.ts | 2 +-
.../src/BigNumber/BigNumberTotal/controlPanel.ts | 4 +-
.../src/BigNumber/BigNumberTotal/index.ts | 2 +-
.../BigNumberTotal/transformProps.test.ts | 2 +-
.../src/BigNumber/BigNumberTotal/transformProps.ts | 2 +-
.../src/BigNumber/BigNumberViz.tsx | 4 +-
.../BigNumberWithTrendline/buildQuery.test.ts | 4 +-
.../BigNumber/BigNumberWithTrendline/buildQuery.ts | 2 +-
.../BigNumberWithTrendline/controlPanel.tsx | 2 +-
.../src/BigNumber/BigNumberWithTrendline/index.ts | 2 +-
.../BigNumberWithTrendline/transformProps.test.ts | 2 +-
.../BigNumberWithTrendline/transformProps.ts | 4 +-
.../src/BigNumber/sharedControls.ts | 2 +-
.../src/BoxPlot/controlPanel.ts | 2 +-
.../plugin-chart-echarts/src/BoxPlot/index.ts | 2 +-
.../src/Bubble/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Bubble/index.ts | 2 +-
.../src/Funnel/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Funnel/index.ts | 2 +-
.../src/Gantt/EchartsGantt.tsx | 2 +-
.../src/Gantt/controlPanel.tsx | 4 +-
.../plugin-chart-echarts/src/Gantt/index.ts | 2 +-
.../src/Gantt/transformProps.ts | 4 +-
.../plugin-chart-echarts/src/Gauge/constants.ts | 2 +-
.../src/Gauge/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Gauge/index.ts | 2 +-
.../src/Graph/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Graph/index.ts | 2 +-
.../src/Heatmap/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Heatmap/index.ts | 2 +-
.../src/Heatmap/transformProps.ts | 28 +-
.../src/Histogram/controlPanel.tsx | 4 +-
.../plugin-chart-echarts/src/Histogram/index.ts | 2 +-
.../src/MixedTimeseries/buildQuery.ts | 2 +-
.../src/MixedTimeseries/controlPanel.tsx | 2 +-
.../src/MixedTimeseries/index.ts | 2 +-
.../src/MixedTimeseries/transformProps.ts | 2 +-
.../plugin-chart-echarts/src/Pie/controlPanel.tsx | 2 +-
.../plugins/plugin-chart-echarts/src/Pie/index.ts | 2 +-
.../plugin-chart-echarts/src/Pie/transformProps.ts | 2 +-
.../src/Radar/controlPanel.tsx | 4 +-
.../plugin-chart-echarts/src/Radar/index.ts | 2 +-
.../src/Sankey/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Sankey/index.ts | 2 +-
.../src/Sunburst/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Sunburst/index.ts | 2 +-
.../src/Sunburst/transformProps.ts | 2 +-
.../src/Timeseries/Area/controlPanel.tsx | 2 +-
.../src/Timeseries/Area/index.ts | 2 +-
.../src/Timeseries/EchartsTimeseries.test.tsx | 2 +-
.../src/Timeseries/Regular/Bar/controlPanel.tsx | 2 +-
.../src/Timeseries/Regular/Bar/index.ts | 2 +-
.../src/Timeseries/Regular/Line/controlPanel.tsx | 2 +-
.../src/Timeseries/Regular/Line/index.ts | 2 +-
.../Timeseries/Regular/Scatter/controlPanel.tsx | 2 +-
.../src/Timeseries/Regular/Scatter/index.ts | 2 +-
.../Timeseries/Regular/SmoothLine/controlPanel.tsx | 2 +-
.../src/Timeseries/Regular/SmoothLine/index.ts | 2 +-
.../src/Timeseries/Step/controlPanel.tsx | 2 +-
.../src/Timeseries/Step/index.ts | 2 +-
.../src/Timeseries/buildQuery.ts | 6 +-
.../src/Timeseries/constants.ts | 4 +-
.../plugin-chart-echarts/src/Timeseries/index.ts | 2 +-
.../src/Timeseries/transformProps.ts | 23 +-
.../src/Timeseries/transformers.ts | 45 +-
.../plugin-chart-echarts/src/Tree/controlPanel.tsx | 2 +-
.../plugins/plugin-chart-echarts/src/Tree/index.ts | 2 +-
.../src/Treemap/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Treemap/index.ts | 2 +-
.../src/Waterfall/constants.ts | 2 +-
.../src/Waterfall/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Waterfall/index.ts | 2 +-
.../src/Waterfall/transformProps.ts | 2 +-
.../plugin-chart-echarts/src/components/Echart.tsx | 2 +-
.../src/components/ExtraControls.tsx | 2 +-
.../plugins/plugin-chart-echarts/src/constants.ts | 4 +-
.../plugins/plugin-chart-echarts/src/controls.tsx | 2 +-
.../plugin-chart-echarts/src/utils/formatters.ts | 91 +-
.../plugin-chart-echarts/src/utils/series.ts | 4 +-
.../test/BigNumber/transformProps.test.ts | 2 +-
.../test/BoxPlot/transformProps.test.ts | 2 +-
.../test/Bubble/transformProps.test.ts | 2 +-
.../test/Funnel/transformProps.test.ts | 2 +-
.../test/Gantt/transformProps.test.ts | 2 +-
.../test/Gauge/transformProps.test.ts | 2 +-
.../test/Graph/transformProps.test.ts | 2 +-
.../test/Heatmap/transformProps.test.ts | 2 +-
.../test/MixedTimeseries/transformProps.test.ts | 4 +-
.../test/Pie/transformProps.test.ts | 2 +-
.../test/Radar/transformProps.test.ts | 2 +-
.../test/Timeseries/Bar/transformProps.test.ts | 2 +-
.../test/Timeseries/Scatter/transformProps.test.ts | 12 +-
.../test/Timeseries/transformProps.test.ts | 6 +-
.../test/Timeseries/transformers.test.ts | 101 +-
.../test/Tree/transformProps.test.ts | 2 +-
.../test/Treemap/transformProps.test.ts | 2 +-
.../test/Waterfall/transformProps.test.ts | 2 +-
.../plugins/plugin-chart-echarts/test/helpers.ts | 2 +-
.../test/utils/formatters.test.ts | 174 +-
.../plugin-chart-echarts/test/utils/series.test.ts | 4 +-
.../test/utils/transformers.test.ts | 2 +-
.../plugins/plugin-chart-handlebars/package.json | 2 +-
.../plugin-chart-handlebars/src/Handlebars.tsx | 2 +-
.../src/components/Handlebars/HandlebarsViewer.tsx | 4 +-
.../src/plugin/controlPanel.tsx | 2 +-
.../src/plugin/controls/columns.tsx | 2 +-
.../src/plugin/controls/handlebarTemplate.tsx | 4 +-
.../src/plugin/controls/includeTime.ts | 2 +-
.../src/plugin/controls/metrics.tsx | 2 +-
.../src/plugin/controls/orderBy.tsx | 2 +-
.../src/plugin/controls/queryMode.tsx | 2 +-
.../src/plugin/controls/shared.ts | 2 +-
.../src/plugin/controls/style.tsx | 4 +-
.../plugin-chart-handlebars/src/plugin/index.ts | 2 +-
.../test/plugin/transformProps.test.ts | 2 +-
.../plugins/plugin-chart-pivot-table/package.json | 2 +-
.../src/PivotTableChart.tsx | 4 +-
.../src/plugin/controlPanel.tsx | 2 +-
.../plugin-chart-pivot-table/src/plugin/index.ts | 2 +-
.../src/plugin/transformProps.ts | 2 +-
.../src/react-pivottable/Styles.ts | 2 +-
.../src/react-pivottable/TableRenderers.tsx | 2 +-
.../src/react-pivottable/utilities.ts | 2 +-
.../test/plugin/transformProps.test.ts | 2 +-
.../plugin-chart-table/src/DataTable/DataTable.tsx | 2 +-
.../src/DataTable/components/GlobalFilter.tsx | 2 +-
.../DataTable/components/SearchSelectDropdown.tsx | 2 +-
.../src/DataTable/components/SelectPageSize.tsx | 4 +-
.../src/DataTable/hooks/useSticky.tsx | 2 +-
.../plugins/plugin-chart-table/src/Styles.tsx | 2 +-
.../plugins/plugin-chart-table/src/TableChart.tsx | 7 +-
.../plugins/plugin-chart-table/src/consts.ts | 2 +-
.../plugin-chart-table/src/controlPanel.tsx | 4 +-
.../plugins/plugin-chart-table/src/index.ts | 2 +-
.../plugin-chart-table/src/stories/testData.ts | 2 +-
.../plugin-chart-table/src/transformProps.ts | 4 +-
.../plugin-chart-table/src/utils/formatValue.ts | 2 +-
.../plugin-chart-table/test/TableChart.test.tsx | 2 +-
.../plugin-chart-table/test/controlPanel.test.tsx | 2 +-
.../plugins/plugin-chart-table/test/testData.ts | 4 +-
.../plugin-chart-table/test/testHelpers.tsx | 2 +-
.../test/utils/formatValue.test.ts | 2 +-
.../plugins/plugin-chart-word-cloud/package.json | 2 +-
.../src/chart/WordCloud.tsx | 2 +-
.../src/plugin/controlPanel.tsx | 2 +-
.../ColorSchemeControl/ColorSchemeLabel.tsx | 2 +-
.../plugin/controls/ColorSchemeControl/index.tsx | 4 +-
.../src/plugin/controls/RotationControl.tsx | 2 +-
.../plugin-chart-word-cloud/src/plugin/index.ts | 2 +-
superset-frontend/spec/helpers/ProviderWrapper.tsx | 2 +-
superset-frontend/spec/helpers/shim.tsx | 2 +-
superset-frontend/spec/helpers/testing-library.tsx | 2 +-
.../src/SqlLab/SqlLabGlobalStyles.tsx | 2 +-
superset-frontend/src/SqlLab/actions/sqlLab.ts | 2 +-
.../src/SqlLab/components/App/index.tsx | 4 +-
.../src/SqlLab/components/AppLayout/index.tsx | 2 +-
.../src/SqlLab/components/ColumnElement/index.tsx | 4 +-
.../EditorAutoSync/EditorAutoSync.test.tsx | 6 +-
.../src/SqlLab/components/EditorAutoSync/index.tsx | 2 +-
.../src/SqlLab/components/EditorWrapper/index.tsx | 2 +-
.../components/EditorWrapper/useAnnotations.ts | 2 +-
.../SqlLab/components/EditorWrapper/useKeywords.ts | 2 +-
.../components/EstimateQueryCostButton/index.tsx | 5 +-
.../components/ExploreCtasResultsButton/index.tsx | 2 +-
.../components/ExploreResultsButton/index.tsx | 2 +-
.../src/SqlLab/components/HighlightedSql/index.tsx | 2 +-
.../components/KeyboardShortcutButton/index.tsx | 4 +-
.../src/SqlLab/components/QueryHistory/index.tsx | 4 +-
.../SqlLab/components/QueryLimitSelect/index.tsx | 2 +-
.../SqlLab/components/QueryStateLabel/index.tsx | 2 +-
.../src/SqlLab/components/QueryStatusBar/index.tsx | 3 +-
.../src/SqlLab/components/QueryTable/index.tsx | 4 +-
.../src/SqlLab/components/QueryTable/styles.ts | 2 +-
.../src/SqlLab/components/ResultSet/index.tsx | 9 +-
.../components/RunQueryActionButton/index.tsx | 4 +-
.../components/SaveDatasetActionButton/index.tsx | 2 +-
.../SqlLab/components/SaveDatasetModal/index.tsx | 4 +-
.../src/SqlLab/components/SaveQuery/index.tsx | 4 +-
.../components/ScheduleQueryButton/index.tsx | 4 +-
.../SqlLab/components/ShareSqlLabQuery/index.tsx | 4 +-
.../src/SqlLab/components/SouthPane/Results.tsx | 5 +-
.../src/SqlLab/components/SouthPane/index.tsx | 6 +-
.../src/SqlLab/components/SqlEditor/index.tsx | 5 +-
.../SqlLab/components/SqlEditorLeftBar/index.tsx | 4 +-
.../SqlLab/components/SqlEditorTabHeader/index.tsx | 9 +-
.../SqlLab/components/SqlEditorTopBar/index.tsx | 2 +-
.../src/SqlLab/components/StatusBar/index.tsx | 2 +-
.../SqlLab/components/TabbedSqlEditors/index.tsx | 4 +-
.../src/SqlLab/components/TableElement/index.tsx | 4 +-
.../TableExploreTree/TreeNodeRenderer.tsx | 3 +-
.../SqlLab/components/TableExploreTree/index.tsx | 3 +-
.../components/TableExploreTree/useTreeData.ts | 2 +-
.../src/SqlLab/components/TablePreview/index.tsx | 5 +-
.../components/TemplateParamsEditor/index.tsx | 4 +-
superset-frontend/src/SqlLab/constants.ts | 2 +-
superset-frontend/src/SqlLab/fixtures.ts | 2 +-
.../src/SqlLab/reducers/getInitialState.ts | 2 +-
superset-frontend/src/SqlLab/reducers/sqlLab.ts | 2 +-
.../src/SqlLab/utils/newQueryTabName.ts | 2 +-
.../DeckglLayerVisibilityCustomizationPlugin.tsx | 4 +-
.../components/DeckglLayerVisibility/index.ts | 2 +-
.../DynamicGroupBy/DynamicGroupByPlugin.tsx | 2 +-
.../components/DynamicGroupBy/controlPanel.ts | 2 +-
.../components/DynamicGroupBy/index.ts | 2 +-
.../TimeColumn/TimeColumnFilterPlugin.tsx | 4 +-
.../components/TimeColumn/controlPanel.ts | 2 +-
.../components/TimeColumn/index.ts | 2 +-
.../components/TimeGrain/TimeGrainFilterPlugin.tsx | 2 +-
.../components/TimeGrain/controlPanel.ts | 2 +-
.../components/TimeGrain/index.ts | 2 +-
.../src/chartCustomizations/components/common.ts | 2 +-
.../src/components/AlteredSliceTag/index.tsx | 2 +-
.../src/components/AuditInfo/index.tsx | 2 +-
superset-frontend/src/components/Chart/Chart.tsx | 7 +-
.../Chart/ChartContextMenu/ChartContextMenu.tsx | 10 +-
.../src/components/Chart/ChartRenderer.test.tsx | 22 +-
.../src/components/Chart/ChartRenderer.tsx | 10 +-
.../components/Chart/DisabledMenuItemTooltip.tsx | 2 +-
.../src/components/Chart/DrillBy/DrillByChart.tsx | 2 +-
.../src/components/Chart/DrillBy/DrillByModal.tsx | 5 +-
.../Chart/DrillBy/DrillBySubmenu.test.tsx | 4 +-
.../components/Chart/DrillBy/DrillBySubmenu.tsx | 10 +-
.../Chart/DrillBy/useDisplayModeToggle.tsx | 4 +-
.../Chart/DrillBy/useResultsTableView.tsx | 3 +-
.../Chart/DrillDetail/DrillDetailModal.tsx | 4 +-
.../Chart/DrillDetail/DrillDetailPane.tsx | 6 +-
.../Chart/DrillDetail/DrillDetailTableControls.tsx | 4 +-
.../src/components/Chart/DrillDetail/types.ts | 2 +-
.../components/Chart/MenuItemWithTruncation.tsx | 2 +-
.../src/components/Chart/chartAction.ts | 2 +-
.../src/components/Chart/chartReducer.ts | 2 +-
.../src/components/Chart/chartReducers.test.ts | 45 +-
.../Chart/useDrillDetailMenuItems/index.tsx | 4 +-
.../src/components/CopyToClipboard/index.tsx | 4 +-
.../src/components/CrudThemeProvider.tsx | 2 +-
.../src/components/DatabaseSelector/index.tsx | 4 +-
.../src/components/DatabaseSelector/styles.ts | 2 +-
.../Datasource/ChangeDatasourceModal/index.tsx | 5 +-
.../Datasource/DatasourceModal/index.tsx | 5 +-
.../Datasource/FoldersEditor/TreeItem.styles.ts | 2 +-
.../Datasource/FoldersEditor/TreeItem.tsx | 5 +-
.../components/DragOverlayContent.tsx | 2 +-
.../components/FoldersToolbarComponent.tsx | 2 +-
.../FoldersEditor/components/ResetConfirmModal.tsx | 2 +-
.../Datasource/FoldersEditor/folderOperations.ts | 2 +-
.../Datasource/FoldersEditor/folderValidation.ts | 2 +-
.../FoldersEditor/hooks/useDragHandlers.ts | 2 +-
.../FoldersEditor/hooks/useItemHeights.ts | 2 +-
.../components/Datasource/FoldersEditor/styles.tsx | 2 +-
.../components/CollectionTable/index.tsx | 4 +-
.../DatasourceEditor/DatasourceEditor.tsx | 10 +-
.../components/DashboardLinksExternal/index.tsx | 2 +-
.../components/DatasetUsageTab/index.tsx | 4 +-
.../tests/DatasourceEditorCurrency.test.tsx | 2 +-
.../Datasource/components/Field/index.tsx | 2 +-
.../Datasource/components/Fieldset/index.tsx | 2 +-
.../src/components/Datasource/utils/index.ts | 2 +-
.../src/components/Datasource/utils/utils.test.tsx | 2 +-
.../src/components/DynamicPlugins/index.tsx | 2 +-
.../src/components/ErrorBoundary/index.tsx | 2 +-
.../ErrorMessage/BasicErrorAlert.test.tsx | 2 +-
.../components/ErrorMessage/BasicErrorAlert.tsx | 6 +-
.../ErrorMessage/DatabaseErrorMessage.tsx | 4 +-
.../ErrorMessage/DatasetNotFoundErrorMessage.tsx | 2 +-
.../src/components/ErrorMessage/ErrorAlert.tsx | 5 +-
.../ErrorMessage/ErrorMessageWithStackTrace.tsx | 2 +-
.../ErrorMessage/FrontendNetworkErrorMessage.tsx | 2 +-
.../ErrorMessage/InvalidSQLErrorMessage.tsx | 2 +-
.../src/components/ErrorMessage/IssueCode.tsx | 4 +-
.../ErrorMessage/MarshmallowErrorMessage.tsx | 2 +-
.../ErrorMessage/OAuth2RedirectMessage.tsx | 2 +-
.../ErrorMessage/ParameterErrorMessage.tsx | 4 +-
.../ErrorMessage/TimeoutErrorMessage.tsx | 4 +-
.../src/components/FilterableTable/utils.tsx | 2 +-
.../src/components/GridTable/Header.tsx | 4 +-
.../src/components/GridTable/HeaderMenu.tsx | 4 +-
.../src/components/GridTable/index.tsx | 2 +-
.../src/components/ImportModal/ErrorAlert.tsx | 5 +-
.../components/ImportModal/ImportErrorAlert.tsx | 2 +-
.../components/ImportModal/ImportModal.test.tsx | 44 +
.../src/components/ImportModal/index.tsx | 55 +-
.../src/components/ImportModal/styles.ts | 2 +-
.../src/components/ImportModal/types.ts | 9 +-
.../src/components/JsonModal/index.tsx | 2 +-
.../src/components/LastQueriedLabel/index.tsx | 4 +-
.../src/components/ListView/ActionsBar.tsx | 2 +-
.../src/components/ListView/CardCollection.tsx | 2 +-
.../src/components/ListView/CardSortSelect.tsx | 4 +-
.../src/components/ListView/CrossLinks.tsx | 2 +-
.../src/components/ListView/CrossLinksTooltip.tsx | 4 +-
.../src/components/ListView/Filters/Base.ts | 2 +-
.../src/components/ListView/Filters/DateRange.tsx | 2 +-
.../components/ListView/Filters/NumericalRange.tsx | 4 +-
.../src/components/ListView/Filters/Search.tsx | 4 +-
.../src/components/ListView/Filters/Select.tsx | 2 +-
.../src/components/ListView/Filters/index.tsx | 2 +-
.../src/components/ListView/ListView.tsx | 5 +-
.../src/components/MessageToasts/Toast.tsx | 9 +-
.../components/MessageToasts/ToastPresenter.tsx | 2 +-
.../components/Modal/CollapsibleModalSection.tsx | 2 +-
.../src/components/Modal/ModalFormField.tsx | 2 +-
.../src/components/Modal/StandardModal.tsx | 4 +-
.../src/components/Modal/useModalValidation.tsx | 4 +-
.../src/components/ModalTitleWithIcon/index.tsx | 2 +-
.../src/components/PanelToolbar/index.tsx | 2 +-
.../src/components/ResizableSidebar/index.tsx | 2 +-
.../src/components/RowCountLabel/index.tsx | 2 +-
.../components/SQLEditorWithValidation/index.tsx | 4 +-
.../StreamingExportModal/StreamingExportModal.tsx | 4 +-
.../src/components/TableSelector/index.tsx | 4 +-
superset-frontend/src/components/Tag/index.tsx | 2 +-
superset-frontend/src/components/Tag/utils.tsx | 2 +-
.../src/components/TagsList/index.tsx | 2 +-
superset-frontend/src/core/commands/index.ts | 2 +-
.../src/core/editors/AceEditorProvider.test.tsx | 2 +-
.../src/core/editors/AceEditorProvider.tsx | 45 +-
superset-frontend/src/core/editors/EditorHost.tsx | 4 +-
.../src/core/editors/EditorProviders.test.ts | 5 +-
.../src/core/editors/EditorProviders.ts | 17 +-
superset-frontend/src/core/editors/index.ts | 33 +-
superset-frontend/src/core/index.ts | 2 +-
superset-frontend/src/core/models.ts | 2 +-
superset-frontend/src/core/sqlLab/index.ts | 7 +
superset-frontend/src/core/sqlLab/models.ts | 5 +-
superset-frontend/src/core/utils.ts | 2 +-
.../dashboard/actions/chartCustomizationActions.ts | 2 +-
.../src/dashboard/actions/dashboardInfo.ts | 2 +-
.../src/dashboard/actions/dashboardLayout.ts | 2 +-
.../src/dashboard/actions/dashboardState.ts | 4 +-
.../src/dashboard/actions/sliceEntities.ts | 2 +-
.../components/AddSliceCard/AddSliceCard.tsx | 4 +-
.../src/dashboard/components/AnchorLink/index.tsx | 2 +-
.../components/AutoRefreshIndicator/index.tsx | 3 +-
.../AutoRefreshStatus/StatusIndicatorDot.tsx | 2 +-
.../AutoRefreshStatus/StatusTooltipContent.tsx | 2 +-
.../components/BuilderComponentPane/index.tsx | 4 +-
.../components/ColorSchemeControlWrapper.tsx | 2 +-
.../src/dashboard/components/ColorSchemeSelect.tsx | 4 +-
.../components/CustomizationsBadge/index.tsx | 4 +-
.../src/dashboard/components/Dashboard.tsx | 2 +-
.../DashboardBuilder/DashboardBuilder.tsx | 22 +-
.../DashboardBuilder/DashboardWrapper.tsx | 2 +-
.../src/dashboard/components/DashboardGrid.tsx | 3 +-
.../dashboard/components/EmbeddedModal/index.tsx | 5 +-
.../components/FiltersBadge/DetailsPanel/index.tsx | 4 +-
.../FiltersBadge/FilterIndicator/index.tsx | 2 +-
.../dashboard/components/FiltersBadge/Styles.tsx | 2 +-
.../dashboard/components/FiltersBadge/index.tsx | 4 +-
.../src/dashboard/components/Header/index.tsx | 3 +-
.../components/Header/useDashboardMetadataBar.tsx | 2 +-
.../Header/useHeaderActionsDropdownMenu.tsx | 2 +-
.../src/dashboard/components/IconButton.tsx | 2 +-
.../src/dashboard/components/MissingChart.tsx | 2 +-
.../OverwriteConfirm/OverwriteConfirmModal.tsx | 4 +-
.../PropertiesModal/PropertiesModal.test.tsx | 2 +-
.../dashboard/components/PropertiesModal/index.tsx | 2 +-
.../PropertiesModal/sections/AccessSection.tsx | 2 +-
.../PropertiesModal/sections/AdvancedSection.tsx | 4 +-
.../PropertiesModal/sections/BasicInfoSection.tsx | 2 +-
.../sections/CertificationSection.tsx | 2 +-
.../PropertiesModal/sections/RefreshSection.tsx | 2 +-
.../PropertiesModal/sections/StylingSection.tsx | 5 +-
.../dashboard/components/PublishedStatus/index.tsx | 2 +-
.../dashboard/components/RefreshButton/index.tsx | 3 +-
.../RefreshFrequency/RefreshFrequencySelect.tsx | 4 +-
.../dashboard/components/RefreshIntervalModal.tsx | 4 +-
.../src/dashboard/components/SaveModal.tsx | 4 +-
.../src/dashboard/components/SliceAdder.tsx | 4 +-
.../src/dashboard/components/SliceHeader/index.tsx | 9 +-
.../ViewResultsModalTrigger.tsx | 4 +-
.../components/SliceHeaderControls/index.tsx | 4 +-
.../components/URLShortLinkButton/index.tsx | 4 +-
.../src/dashboard/components/dnd/DragDroppable.tsx | 11 +-
.../src/dashboard/components/dnd/DragHandle.tsx | 2 +-
.../components/filterscope/FilterScope.test.tsx | 2 +-
.../components/filterscope/FilterScopeModal.tsx | 2 +-
.../components/filterscope/FilterScopeSelector.tsx | 3 +-
.../filterscope/renderFilterScopeTreeNodes.tsx | 2 +-
.../dashboard/components/filterscope/treeIcons.tsx | 2 +-
.../components/gridComponents/Chart/Chart.test.tsx | 30 +
.../components/gridComponents/Chart/Chart.tsx | 4 +-
.../gridComponents/ChartHolder/ChartHolder.tsx | 2 +-
.../components/gridComponents/Column/Column.tsx | 5 +-
.../components/gridComponents/Divider/Divider.tsx | 2 +-
.../DynamicComponent/DynamicComponent.tsx | 2 +-
.../components/gridComponents/Header/Header.tsx | 2 +-
.../gridComponents/Markdown/Markdown.test.tsx | 26 +-
.../gridComponents/Markdown/Markdown.tsx | 3 +-
.../components/gridComponents/Row/Row.tsx | 29 +-
.../components/gridComponents/Tab/Tab.tsx | 3 +-
.../components/gridComponents/Tabs/Tabs.tsx | 3 +-
.../gridComponents/TabsRenderer/TabsRenderer.tsx | 2 +-
.../gridComponents/new/DraggableNewComponent.tsx | 2 +-
.../components/gridComponents/new/NewColumn.tsx | 2 +-
.../components/gridComponents/new/NewDivider.tsx | 2 +-
.../components/gridComponents/new/NewHeader.tsx | 2 +-
.../components/gridComponents/new/NewMarkdown.tsx | 2 +-
.../components/gridComponents/new/NewRow.tsx | 2 +-
.../components/gridComponents/new/NewTabs.tsx | 2 +-
.../components/menu/BackgroundStyleDropdown.tsx | 4 +-
.../components/menu/DownloadMenuItems/index.tsx | 3 +-
.../src/dashboard/components/menu/HoverMenu.tsx | 2 +-
.../components/menu/MarkdownModeDropdown.tsx | 2 +-
.../components/menu/ShareMenuItems/index.tsx | 3 +-
.../dashboard/components/menu/WithPopoverMenu.tsx | 17 +-
.../nativeFilters/ConfigModal/ModalFooter.tsx | 5 +-
.../nativeFilters/ConfigModal/SharedStyles.tsx | 21 +-
.../FilterBar/ActionButtons/index.tsx | 128 +-
.../FilterBar/CrossFilters/CrossFilter.tsx | 2 +-
.../FilterBar/CrossFilters/CrossFilterTag.tsx | 2 +-
.../FilterBar/CrossFilters/CrossFilterTitle.tsx | 4 +-
.../ScopingModal/ChartsScopingListPanel.tsx | 4 +-
.../CrossFilters/ScopingModal/ScopingModal.tsx | 2 +-
.../ScopingModal/ScopingModalContent.tsx | 2 +-
.../CrossFilters/ScopingModal/ScopingTreePanel.tsx | 5 +-
.../FilterBar/CrossFilters/VerticalCollapse.tsx | 4 +-
.../nativeFilters/FilterBar/CrossFilters/styles.ts | 2 +-
.../CustomizationsOutOfScopeCollapsible/index.tsx | 4 +-
.../nativeFilters/FilterBar/FilterBar.test.tsx | 1141 ++++----
.../FilterBar/FilterBarSettings/index.tsx | 4 +-
.../FilterControls/FilterControlShared.tsx | 2 +-
.../FilterBar/FilterControls/FilterControls.tsx | 9 +-
.../FilterControls/FilterDivider.stories.tsx | 2 +-
.../FilterBar/FilterControls/FilterDivider.tsx | 2 +-
.../FilterBar/FilterControls/FilterValue.tsx | 4 +-
.../FilterBar/FilterControls/GroupByFilterCard.tsx | 9 +-
.../FilterBar/FiltersDropdownContent/index.tsx | 2 +-
.../FiltersOutOfScopeCollapsible/index.tsx | 4 +-
.../nativeFilters/FilterBar/Header/index.tsx | 10 +-
.../nativeFilters/FilterBar/Horizontal.tsx | 4 +-
.../nativeFilters/FilterBar/Vertical.tsx | 5 +-
.../components/nativeFilters/FilterBar/index.tsx | 102 +-
.../nativeFilters/FilterBar/keyValue.tsx | 2 +-
.../nativeFilters/FilterBar/utils.test.ts | 1145 +++++---
.../components/nativeFilters/FilterBar/utils.ts | 137 +-
.../nativeFilters/FilterCard/DependenciesRow.tsx | 4 +-
.../nativeFilters/FilterCard/NameRow.tsx | 2 +-
.../nativeFilters/FilterCard/ScopeRow.tsx | 4 +-
.../components/nativeFilters/FilterCard/Styles.ts | 2 +-
.../nativeFilters/FilterCard/TypeRow.tsx | 2 +-
.../nativeFilters/FilterCard/useFilterScope.ts | 2 +-
.../ConfigModalContent/ConfigModalContent.tsx | 2 +-
.../ConfigModalSidebar/ConfigModalSidebar.tsx | 4 +-
.../FiltersConfigModal/DividerConfigForm.tsx | 4 +-
.../FiltersConfigModal/DraggableFilter.tsx | 4 +-
.../FiltersConfigModal/FilterConfigurePane.tsx | 2 +-
.../FiltersConfigModal/FilterTitleContainer.tsx | 5 +-
.../FiltersConfigModal/FilterTitlePane.tsx | 4 +-
.../FiltersConfigForm/CollapsibleControl.tsx | 2 +-
.../FiltersConfigForm/ColumnSelect.tsx | 2 +-
.../FiltersConfigForm/DatasetSelect.tsx | 2 +-
.../FiltersConfigForm/DefaultValue.tsx | 2 +-
.../FiltersConfigForm/DependencyList.tsx | 4 +-
.../FiltersConfigForm/FilterScope/FilterScope.tsx | 2 +-
.../FiltersConfigForm/FilterScope/ScopingTree.tsx | 2 +-
.../FiltersConfigForm/FilterScope/state.ts | 2 +-
.../FiltersConfigForm/FilterScope/utils.ts | 4 +-
.../FiltersConfigForm/FiltersConfigForm.tsx | 122 +-
.../FiltersConfigForm/RemovedFilter.tsx | 4 +-
.../FiltersConfigForm/constants.ts | 2 +-
.../FiltersConfigForm/getControlItemsMap.tsx | 7 +-
.../FiltersConfigModal/FiltersConfigForm/state.ts | 2 +-
.../FiltersConfigForm/utils.test.ts | 2 +-
.../FiltersConfigModal/FiltersConfigForm/utils.ts | 2 +-
.../FiltersConfigModal/FiltersConfigModal.tsx | 4 +-
.../Footer/CancelConfirmationAlert.tsx | 4 +-
.../FiltersConfigModal/Footer/Footer.tsx | 2 +-
.../FiltersConfigModal/ItemTitleContainer.tsx | 5 +-
.../FiltersConfigModal/ItemTitlePane.tsx | 2 +-
.../FiltersConfigModal/NewItemDropdown.tsx | 4 +-
.../hooks/useFilterOperations.ts | 2 +-
.../FiltersConfigModal/hooks/useModalSaveLogic.ts | 2 +-
.../nativeFilters/FiltersConfigModal/utils.ts | 2 +-
.../dashboard/components/nativeFilters/utils.ts | 2 +-
.../components/resizable/ResizableContainer.tsx | 2 +-
.../src/dashboard/containers/DashboardPage.tsx | 4 +-
.../src/dashboard/hooks/useDownloadScreenshot.ts | 4 +-
.../src/dashboard/reducers/sliceEntities.ts | 2 +-
superset-frontend/src/dashboard/styles.ts | 2 +-
superset-frontend/src/dashboard/types.ts | 2 +-
.../src/dashboard/util/backgroundStyleOptions.ts | 2 +-
.../src/dashboard/util/getFilterFieldNodesTree.ts | 2 +-
.../src/dashboard/util/getFilterScopeNodesTree.ts | 2 +-
.../src/dashboard/util/getSliceHeaderTooltip.tsx | 2 +-
.../src/dashboard/util/headerStyleOptions.ts | 2 +-
.../src/dashboard/util/newComponentFactory.ts | 2 +-
.../dashboard/util/updateComponentParentsList.ts | 2 +-
.../util/useFilterFocusHighlightStyles.ts | 2 +-
superset-frontend/src/dataMask/reducer.ts | 20 +-
.../src/embedded/EmbeddedContextProviders.tsx | 3 +-
superset-frontend/src/embedded/index.tsx | 21 +-
superset-frontend/src/embedded/utils.ts | 2 +-
.../src/explore/actions/exploreActions.ts | 15 +-
.../src/explore/actions/hydrateExplore.ts | 27 +-
.../src/explore/actions/saveModalActions.ts | 2 +-
.../src/explore/components/ChartPills.tsx | 2 +-
.../src/explore/components/Control.tsx | 2 +-
.../src/explore/components/ControlHeader.tsx | 4 +-
.../components/ControlPanelsContainer.test.tsx | 11 +-
.../explore/components/ControlPanelsContainer.tsx | 16 +-
.../explore/components/DataTableControl/index.tsx | 6 +-
.../DataTableControl/useTableColumns.test.ts | 2 +-
.../components/DataTablesPane/DataTablesPane.tsx | 4 +-
.../components/DataTableControls.tsx | 4 +-
.../components/ResultsPaneOnDashboard.tsx | 4 +-
.../DataTablesPane/components/SamplesPane.tsx | 6 +-
.../components/SingleQueryResultPane.tsx | 2 +-
.../DataTablesPane/components/useResultsPane.tsx | 4 +-
.../src/explore/components/DataTablesPane/types.ts | 2 +-
.../DatasourcePanelDragOption/index.tsx | 2 +-
.../DatasourcePanel/DatasourcePanelItem.tsx | 4 +-
.../components/DatasourcePanel/fixtures.tsx | 2 +-
.../explore/components/DatasourcePanel/index.tsx | 5 +-
.../DatasourcePanel/transformDatasourceFolders.ts | 2 +-
.../src/explore/components/EmbedCodeContent.tsx | 3 +-
.../src/explore/components/ExploreAlert.tsx | 2 +-
.../ExploreChartHeader/ExploreChartHeader.test.tsx | 2 +-
.../components/ExploreChartHeader/index.tsx | 5 +-
.../ExploreChartHeader/useExploreMetadataBar.tsx | 4 +-
.../explore/components/ExploreChartPanel/index.tsx | 76 +-
.../explore/components/ExploreContainer/index.tsx | 2 +-
.../explore/components/ExploreContentPopover.tsx | 2 +-
.../components/ExploreViewContainer/index.tsx | 5 +-
.../components/ExportToCSVDropdown/index.tsx | 4 +-
.../explore/components/PropertiesModal/index.tsx | 2 +-
.../explore/components/RunQueryButton/index.tsx | 4 +-
.../src/explore/components/SaveModal.tsx | 7 +-
.../AnnotationLayerControl/AnnotationLayer.tsx | 4 +-
.../AnnotationLayerControl/AnnotationTypes.ts | 2 +-
.../controls/AnnotationLayerControl/index.tsx | 4 +-
.../explore/components/controls/BoundsControl.tsx | 4 +-
.../components/controls/CheckboxControl.tsx | 2 +-
.../controls/CollectionControl/index.tsx | 4 +-
.../ColorBreakpointOption.tsx | 2 +-
.../ColorBreakpointPopoverControl.tsx | 4 +-
.../controls/ColorBreakpointsControl/index.tsx | 4 +-
.../ColorSchemeControl/ColorSchemeLabel.tsx | 2 +-
.../controls/ColorSchemeControl/index.tsx | 4 +-
.../ColumnConfigControl/ColumnConfigControl.tsx | 6 +-
.../ColumnConfigControl/ColumnConfigItem.tsx | 2 +-
.../ColumnConfigControl/ColumnConfigPopover.tsx | 2 +-
.../ControlForm/ControlFormItem.tsx | 2 +-
.../ColumnConfigControl/ControlForm/index.tsx | 2 +-
.../controls/ColumnConfigControl/constants.tsx | 4 +-
.../controls/ColumnConfigControl/types.ts | 2 +-
.../components/controls/ComparisonRangeLabel.tsx | 4 +-
.../ConditionalFormattingControl.tsx | 4 +-
.../FormattingPopoverContent.test.tsx | 2 +-
.../FormattingPopoverContent.tsx | 6 +-
.../ConditionalFormattingControl/constants.ts | 2 +-
.../controls/ConditionalFormattingControl/types.ts | 2 +-
.../controls/ContourControl/ContourOption.tsx | 4 +-
.../ContourControl/ContourPopoverControl.tsx | 4 +-
.../components/controls/ContourControl/index.tsx | 4 +-
.../controls/CurrencyControl/CurrencyControl.tsx | 4 +-
.../components/controls/CustomListItem/index.tsx | 2 +-
.../DatasourceControl/DatasourceControl.test.tsx | 268 +-
.../controls/DatasourceControl/index.tsx | 4 +-
.../controls/DateFilterControl/DateFilterLabel.tsx | 9 +-
.../DateFilterControl/components/AdvancedFrame.tsx | 2 +-
.../DateFilterControl/components/CalendarFrame.tsx | 2 +-
.../DateFilterControl/components/CommonFrame.tsx | 2 +-
.../components/CurrentCalendarFrame.tsx | 2 +-
.../DateFilterControl/components/CustomFrame.tsx | 2 +-
.../components/DateFunctionTooltip.tsx | 4 +-
.../DateFilterControl/components/DateLabel.tsx | 4 +-
.../controls/DateFilterControl/utils/constants.ts | 2 +-
.../DndColumnSelectControl/ColumnSelectPopover.tsx | 5 +-
.../ColumnSelectPopoverTrigger.tsx | 2 +-
.../DndAdhocFilterOption.tsx | 2 +-
.../DndColumnMetricSelect.tsx | 4 +-
.../DndColumnSelectControl/DndColumnSelect.tsx | 4 +-
.../DndColumnSelectPopoverTitle.tsx | 4 +-
.../DndFilterSelect.test.tsx | 2 +-
.../DndColumnSelectControl/DndFilterSelect.tsx | 3 +-
.../DndColumnSelectControl/DndMetricSelect.tsx | 6 +-
.../DndColumnSelectControl/DndSelectLabel.tsx | 2 +-
.../controls/DndColumnSelectControl/Option.tsx | 4 +-
.../DndColumnSelectControl/OptionWrapper.tsx | 2 +-
.../DndColumnSelectControl/useResizeButton.tsx | 2 +-
.../DndColumnSelectControl/utils/optionSelector.ts | 2 +-
.../FilterControl/AdhocFilterControl/index.tsx | 6 +-
.../FilterControl/AdhocFilterEditPopover/index.tsx | 6 +-
.../index.tsx | 4 +-
.../useAdvancedDataTypes.ts | 2 +-
.../AdhocFilterEditPopoverSqlTabContent.test.tsx | 84 +-
.../AdhocFilterEditPopoverSqlTabContent/index.tsx | 12 +-
.../utils/useDatePickerInAdhocFilter.tsx | 2 +-
.../controls/FixedOrMetricControl/index.tsx | 2 +-
.../components/controls/JSEditorControl.tsx | 2 +-
.../controls/LayerConfigsControl/FlatLayerTree.tsx | 4 +-
.../LayerConfigsControl/GeoStylerWrapper.tsx | 1 +
.../LayerConfigsControl/LayerConfigsControl.tsx | 4 +-
.../LayerConfigsPopoverContent.tsx | 4 +-
.../controls/MapViewControl/ExtentTag.tsx | 2 +-
.../controls/MapViewControl/MapViewControl.tsx | 4 +-
.../MapViewControl/MapViewPopoverContent.tsx | 4 +-
.../controls/MatrixifyDimensionControl.tsx | 76 +-
.../MetricControl/AdhocMetricEditPopover/index.tsx | 25 +-
.../MetricControl/AdhocMetricEditPopoverTitle.tsx | 4 +-
.../MetricControl/AdhocMetricPopoverTrigger.tsx | 2 +-
.../controls/MetricControl/MetricsControl.tsx | 2 +-
.../components/controls/NumberControl/index.tsx | 2 +-
.../components/controls/OptionControls/index.tsx | 4 +-
.../controls/SelectAsyncControl/index.tsx | 2 +-
.../explore/components/controls/SelectControl.tsx | 4 +-
.../explore/components/controls/SpatialControl.tsx | 2 +-
.../explore/components/controls/SwitchControl.tsx | 65 +
.../components/controls/TextAreaControl.tsx | 4 +-
.../controls/TimeSeriesColumnControl/index.tsx | 4 +-
.../components/controls/VerticalRadioControl.tsx | 104 +
.../src/explore/components/controls/ViewQuery.tsx | 4 +-
.../explore/components/controls/ViewQueryModal.tsx | 5 +-
.../components/controls/ViewQueryModalFooter.tsx | 2 +-
.../components/controls/ViewportControl.tsx | 2 +-
.../controls/VizTypeControl/FastVizSwitcher.tsx | 4 +-
.../components/controls/VizTypeControl/VizTile.tsx | 4 +-
.../controls/VizTypeControl/VizTypeGallery.tsx | 4 +-
.../controls/VizTypeControl/constants.tsx | 2 +-
.../components/controls/VizTypeControl/index.tsx | 4 +-
.../ZoomConfigControl/ZoomConfigControl.tsx | 4 +-
.../ZoomConfigControl/ZoomConfigsChart.tsx | 2 +-
.../src/explore/components/controls/index.ts | 4 +
.../components/controls/withAsyncVerification.tsx | 2 +-
.../src/explore/components/optionRenderers.tsx | 2 +-
.../DashboardsSubMenu.tsx | 4 +-
.../useExploreAdditionalActionsMenu/index.tsx | 31 +-
superset-frontend/src/explore/constants.ts | 2 +-
.../src/explore/controlPanels/Separator.ts | 2 +-
.../src/explore/controlPanels/sections.tsx | 88 +-
.../src/explore/controlUtils/controlUtils.test.tsx | 2 +-
.../src/explore/controlUtils/getColumnKeywords.tsx | 2 +-
superset-frontend/src/explore/controls.tsx | 2 +-
.../src/explore/exploreUtils/exportChart.test.ts | 104 +-
.../src/explore/exploreUtils/getExploreUrl.test.ts | 31 +
.../exploreUtils/getLegacyEndpointType.test.ts | 6 +
.../src/explore/exploreUtils/index.ts | 32 +-
superset-frontend/src/explore/fixtures.tsx | 2 +-
.../src/explore/reducers/exploreReducer.ts | 35 +-
superset-frontend/src/explore/types.ts | 7 +-
.../src/extensions/ExtensionPlaceholder.tsx | 2 +-
.../src/extensions/ExtensionsList.tsx | 2 +-
.../src/extensions/ExtensionsLoader.test.ts | 4 +-
.../src/extensions/ExtensionsLoader.ts | 4 +-
.../src/extensions/ExtensionsStartup.test.tsx | 2 +-
.../src/extensions/ExtensionsStartup.tsx | 9 +-
.../src/features/alerts/AlertReportModal.test.tsx | 467 +++-
.../src/features/alerts/AlertReportModal.tsx | 49 +-
.../features/alerts/buildErrorTooltipMessage.tsx | 2 +-
.../alerts/components/AlertReportCronScheduler.tsx | 4 +-
.../features/alerts/components/AlertStatusIcon.tsx | 4 +-
.../alerts/components/NotificationMethod.tsx | 4 +-
.../features/alerts/components/RecipientIcon.tsx | 2 +-
superset-frontend/src/features/alerts/types.ts | 7 +
.../src/features/allEntities/AllEntitiesTable.tsx | 4 +-
.../annotationLayers/AnnotationLayerModal.tsx | 4 +-
.../src/features/annotations/AnnotationModal.tsx | 4 +-
.../src/features/charts/ChartCard.tsx | 4 +-
.../src/features/cssTemplates/CssTemplateModal.tsx | 4 +-
.../src/features/dashboards/DashboardCard.tsx | 2 +-
.../DatabaseConnectionForm/CommonParameters.tsx | 4 +-
.../DatabaseConnectionForm/EncryptedField.tsx | 5 +-
.../DatabaseConnectionForm/OAuth2ClientField.tsx | 2 +-
.../DatabaseConnectionForm/TableCatalog.tsx | 4 +-
.../DatabaseConnectionForm/ValidatedInputField.tsx | 2 +-
.../DatabaseModal/DatabaseConnectionForm/index.tsx | 2 +-
.../databases/DatabaseModal/ExtraOptions.test.tsx | 2 +-
.../databases/DatabaseModal/ExtraOptions.tsx | 4 +-
.../databases/DatabaseModal/ModalHeader.tsx | 2 +-
.../databases/DatabaseModal/SSHTunnelForm.tsx | 4 +-
.../databases/DatabaseModal/SSHTunnelSwitch.tsx | 4 +-
.../databases/DatabaseModal/SqlAlchemyForm.tsx | 4 +-
.../src/features/databases/DatabaseModal/index.tsx | 88 +-
.../src/features/databases/DatabaseModal/styles.ts | 2 +-
.../databases/UploadDataModel/ColumnsPreview.tsx | 4 +-
.../features/databases/UploadDataModel/index.tsx | 4 +-
.../features/databases/UploadDataModel/styles.ts | 2 +-
.../AddDataset/DatasetPanel/DatasetPanel.tsx | 5 +-
.../AddDataset/DatasetPanel/MessageContent.tsx | 4 +-
.../datasets/AddDataset/DatasetPanel/index.tsx | 4 +-
.../datasets/AddDataset/EditDataset/index.tsx | 4 +-
.../features/datasets/AddDataset/Footer/index.tsx | 4 +-
.../features/datasets/AddDataset/Header/index.tsx | 2 +-
.../datasets/AddDataset/LeftPanel/index.tsx | 4 +-
.../datasets/AddDataset/RightPanel/index.tsx | 2 +-
.../src/features/datasets/DatasetLayout/index.tsx | 2 +-
.../features/datasets/DatasetSelectLabel/index.tsx | 4 +-
.../datasets/DuplicateDatasetModal.test.tsx | 2 +-
.../features/datasets/DuplicateDatasetModal.tsx | 2 +-
.../src/features/datasets/constants.ts | 2 +-
.../src/features/datasets/hooks/useDatasetLists.ts | 4 +-
.../datasets/hooks/useGetDatasetRelatedCounts.ts | 4 +-
.../DatasetMetadataBar.skipped-stories.tsx | 2 +-
.../datasets/metadataBar/useDatasetMetadataBar.tsx | 4 +-
superset-frontend/src/features/datasets/styles.ts | 2 +-
.../src/features/groups/GroupListModal.tsx | 2 +-
superset-frontend/src/features/groups/utils.ts | 2 +-
.../src/features/home/ActivityTable.tsx | 4 +-
superset-frontend/src/features/home/ChartTable.tsx | 2 +-
.../src/features/home/DashboardTable.tsx | 2 +-
superset-frontend/src/features/home/EmptyState.tsx | 4 +-
.../src/features/home/LanguagePicker.tsx | 4 +-
superset-frontend/src/features/home/Menu.test.tsx | 115 +-
superset-frontend/src/features/home/Menu.tsx | 2 +-
superset-frontend/src/features/home/RightMenu.tsx | 9 +-
.../src/features/home/SavedQueries.tsx | 4 +-
superset-frontend/src/features/home/SubMenu.tsx | 9 +-
.../src/features/home/commonMenuData.ts | 2 +-
.../src/features/owners/OwnerSelectLabel/index.tsx | 2 +-
.../src/features/queries/QueryPreviewModal.tsx | 4 +-
.../features/queries/SavedQueryPreviewModal.tsx | 4 +-
.../src/features/queries/SyntaxHighlighterCopy.tsx | 4 +-
.../ReportModal/HeaderReportDropdown/index.tsx | 4 +-
.../src/features/reports/ReportModal/actions.ts | 2 +-
.../src/features/reports/ReportModal/index.tsx | 5 +-
.../src/features/reports/ReportModal/styles.tsx | 2 +-
.../src/features/rls/RowLevelSecurityModal.tsx | 4 +-
superset-frontend/src/features/rls/constants.ts | 2 +-
.../src/features/roles/RoleFormItems.tsx | 53 +-
.../src/features/roles/RoleListAddModal.test.tsx | 45 +-
.../src/features/roles/RoleListAddModal.tsx | 23 +-
.../src/features/roles/RoleListDuplicateModal.tsx | 2 +-
.../src/features/roles/RoleListEditModal.test.tsx | 328 ++-
.../src/features/roles/RoleListEditModal.tsx | 179 +-
superset-frontend/src/features/roles/types.ts | 12 +-
superset-frontend/src/features/roles/utils.test.ts | 547 ++++
superset-frontend/src/features/roles/utils.ts | 165 ++
.../src/features/tags/BulkTagModal.tsx | 4 +-
superset-frontend/src/features/tags/TagCard.tsx | 2 +-
superset-frontend/src/features/tags/TagModal.tsx | 4 +-
.../src/features/tasks/TaskPayloadPopover.tsx | 2 +-
.../src/features/tasks/TaskStackTracePopover.tsx | 4 +-
.../src/features/tasks/TaskStatusIcon.tsx | 3 +-
.../src/features/themes/ThemeModal.tsx | 5 +-
.../src/features/userInfo/UserInfoModal.tsx | 2 +-
.../src/features/users/UserListModal.tsx | 2 +-
superset-frontend/src/features/users/utils.ts | 2 +-
.../components/Range/RangeFilterPlugin.stories.tsx | 2 +-
.../components/Range/RangeFilterPlugin.test.tsx | 2 +-
.../filters/components/Range/RangeFilterPlugin.tsx | 4 +-
.../src/filters/components/Range/buildQuery.ts | 2 +-
.../src/filters/components/Range/controlPanel.ts | 2 +-
.../src/filters/components/Range/index.ts | 2 +-
.../components/Select/SelectFilterPlugin.test.tsx | 413 ++-
.../components/Select/SelectFilterPlugin.tsx | 160 +-
.../filters/components/Select/buildQuery.test.ts | 96 +-
.../src/filters/components/Select/buildQuery.ts | 2 +-
.../components/Select/controlPanel.test.ts} | 30 +-
.../src/filters/components/Select/controlPanel.ts | 77 +-
.../src/filters/components/Select/index.ts | 2 +-
.../filters/components/Select/transformProps.ts | 13 +-
.../src/filters/components/Select/types.ts | 11 +-
.../filters/components/Time/TimeFilterPlugin.tsx | 2 +-
.../src/filters/components/Time/controlPanel.ts | 2 +-
.../src/filters/components/Time/index.ts | 2 +-
.../TimeColumn/TimeColumnFilterPlugin.tsx | 4 +-
.../filters/components/TimeColumn/controlPanel.ts | 2 +-
.../src/filters/components/TimeColumn/index.ts | 2 +-
.../components/TimeGrain/TimeGrainFilterPlugin.tsx | 4 +-
.../filters/components/TimeGrain/controlPanel.ts | 2 +-
.../src/filters/components/TimeGrain/index.ts | 2 +-
superset-frontend/src/filters/components/common.ts | 2 +-
superset-frontend/src/filters/utils.test.ts | 2 +-
superset-frontend/src/filters/utils.ts | 47 +-
.../src/hooks/apiResources/datasets.ts | 2 +-
.../hooks/useConfirmModal/useConfirmModal.test.tsx | 2 +-
superset-frontend/src/hooks/useJsonTreeTheme.ts | 2 +-
.../src/hooks/usePermissions.test.tsx | 128 +
superset-frontend/src/hooks/usePermissions.ts | 18 +-
.../src/hooks/useThemeMenuItems.test.tsx | 2 +-
superset-frontend/src/hooks/useThemeMenuItems.tsx | 4 +-
.../src/hooks/useUnsavedChangesPrompt/index.ts | 2 +-
superset-frontend/src/middleware/asyncEvent.ts | 2 +-
superset-frontend/src/pages/ActionLog/index.tsx | 4 +-
.../src/pages/AlertReportList/index.tsx | 4 +-
superset-frontend/src/pages/AllEntities/index.tsx | 4 +-
.../src/pages/AnnotationLayerList/index.tsx | 2 +-
.../src/pages/AnnotationList/index.tsx | 4 +-
superset-frontend/src/pages/Chart/index.tsx | 18 +-
.../src/pages/ChartCreation/ChartCreation.test.tsx | 2 +-
.../src/pages/ChartCreation/index.tsx | 4 +-
.../src/pages/ChartList/ChartList.testHelpers.tsx | 2 +-
superset-frontend/src/pages/ChartList/index.tsx | 5 +-
.../src/pages/CssTemplateList/index.tsx | 2 +-
.../DashboardList/DashboardList.behavior.test.tsx | 394 +++
.../DashboardList/DashboardList.cardview.test.tsx | 417 +++
.../DashboardList/DashboardList.listview.test.tsx | 402 +++
.../DashboardList.permissions.test.tsx | 340 +++
.../src/pages/DashboardList/DashboardList.test.tsx | 391 +--
.../DashboardList/DashboardList.testHelpers.tsx | 360 +++
.../src/pages/DashboardList/index.tsx | 4 +-
superset-frontend/src/pages/DatabaseList/index.tsx | 4 +-
superset-frontend/src/pages/DatasetList/index.tsx | 4 +-
.../src/pages/ExecutionLogList/index.tsx | 4 +-
.../src/pages/FileHandler/index.test.tsx | 22 +-
superset-frontend/src/pages/FileHandler/index.tsx | 2 +-
superset-frontend/src/pages/GroupsList/index.tsx | 2 +-
superset-frontend/src/pages/Home/index.tsx | 4 +-
superset-frontend/src/pages/Login/Login.test.tsx | 46 +-
superset-frontend/src/pages/Login/index.tsx | 8 +-
.../src/pages/QueryHistoryList/index.tsx | 4 +-
.../src/pages/RedirectWarning/index.tsx | 175 ++
.../src/pages/RedirectWarning/utils.test.ts | 124 +
.../src/pages/RedirectWarning/utils.ts | 96 +
superset-frontend/src/pages/Register/index.tsx | 4 +-
.../src/pages/RolesList/RolesList.test.tsx | 27 +-
superset-frontend/src/pages/RolesList/index.tsx | 75 +-
.../src/pages/RowLevelSecurityList/index.tsx | 2 +-
.../src/pages/SavedQueryList/index.tsx | 4 +-
superset-frontend/src/pages/SqlLab/index.tsx | 2 +-
superset-frontend/src/pages/Tags/index.tsx | 2 +-
superset-frontend/src/pages/TaskList/index.tsx | 3 +-
superset-frontend/src/pages/ThemeList/index.tsx | 5 +-
superset-frontend/src/pages/UserInfo/index.tsx | 4 +-
.../src/pages/UserRegistrations/index.tsx | 2 +-
superset-frontend/src/pages/UsersList/index.tsx | 2 +-
superset-frontend/src/preamble.ts | 4 +-
superset-frontend/src/setup/setupClient.ts | 2 +-
superset-frontend/src/theme/ThemeController.ts | 15 +-
superset-frontend/src/theme/ThemeProvider.tsx | 2 +-
.../src/theme/hooks/useThemeValidation.ts | 2 +-
.../src/theme/tests/ThemeController.test.ts | 114 +-
.../src/theme/tests/ThemeProvider.test.tsx | 2 +-
.../theme/utils/themeStructureValidation.test.ts | 2 +-
.../src/theme/utils/themeStructureValidation.ts | 2 +-
superset-frontend/src/types/bootstrapTypes.ts | 9 +-
superset-frontend/src/utils/downloadAsImage.tsx | 4 +-
superset-frontend/src/utils/downloadAsPdf.ts | 4 +-
superset-frontend/src/utils/export.test.ts | 4 +-
superset-frontend/src/utils/export.ts | 2 +-
superset-frontend/src/utils/fetchOptions.ts | 2 +-
.../utils/getChartRequiredFieldsMissingMessage.ts | 2 +-
superset-frontend/src/utils/pathUtils.test.ts | 71 +
superset-frontend/src/utils/pathUtils.ts | 37 +-
superset-frontend/src/utils/urlUtils.ts | 9 +-
superset-frontend/src/views/App.tsx | 2 +-
superset-frontend/src/views/CRUD/hooks.ts | 28 +-
superset-frontend/src/views/CRUD/types.ts | 10 +
superset-frontend/src/views/CRUD/utils.test.tsx | 154 ++
superset-frontend/src/views/CRUD/utils.tsx | 48 +-
superset-frontend/src/views/index.tsx | 2 +-
superset-frontend/src/views/menu.tsx | 3 +-
superset-frontend/src/views/routes.tsx | 11 +
.../src/visualizations/TimeTable/TimeTable.tsx | 4 +-
.../components/SparklineCell/SparklineCell.tsx | 2 +-
.../TimeTable/config/controlPanel/controlPanel.ts | 2 +-
.../config/transformProps/transformProps.test.ts | 2 +-
.../src/visualizations/TimeTable/constants.ts | 2 +-
.../src/visualizations/TimeTable/index.ts | 2 +-
.../ExampleComponent/ExampleComponent.tsx | 2 +-
superset-frontend/webpack.config.js | 2 +-
superset-websocket/package-lock.json | 332 ++-
superset-websocket/package.json | 2 +-
superset-websocket/utils/client-ws-app/.nvmrc | 2 +-
superset/charts/data/api.py | 13 +-
superset/commands/database/export.py | 9 +
superset/commands/database/importers/v1/utils.py | 26 +-
superset/commands/database/validate.py | 2 +-
superset/commands/explore/get.py | 7 +-
superset/commands/importers/v1/__init__.py | 4 +
superset/commands/importers/v1/assets.py | 4 +
superset/commands/importers/v1/utils.py | 19 +
superset/commands/tasks/cancel.py | 2 +-
superset/commands/tasks/internal_update.py | 2 +-
superset/commands/tasks/prune.py | 2 +-
superset/commands/tasks/submit.py | 2 +-
superset/commands/tasks/update.py | 2 +-
superset/common/query_context_factory.py | 5 +-
superset/config.py | 7 +
superset/connectors/sqla/models.py | 14 +-
superset/core/api/core_api_injection.py | 159 +-
superset/core/mcp/core_mcp_injection.py | 115 +-
superset/daos/base.py | 4 +-
superset/daos/chart.py | 4 +-
superset/daos/dashboard.py | 59 +-
superset/daos/dataset.py | 11 +
superset/daos/tasks.py | 2 +-
superset/databases/api.py | 14 +
superset/databases/schemas.py | 62 +
superset/db_engine_specs/datastore.py | 610 +++++
superset/explore/permalink/schemas.py | 10 +
superset/explore/permalink/types.py | 1 +
superset/extensions/context.py | 90 +
superset/extensions/contributions.py | 94 +
superset/extensions/utils.py | 2 +-
superset/importexport/api.py | 13 +
superset/initialization/__init__.py | 7 +-
superset/jinja_context.py | 14 +-
superset/key_value/models.py | 2 +-
superset/mcp_service/app.py | 74 +-
superset/mcp_service/auth.py | 136 +-
.../api => superset/mcp_service/chart}/__init__.py | 0
superset/mcp_service/chart/chart_utils.py | 452 ++-
superset/mcp_service/chart/preview_utils.py | 18 +-
.../chart/prompts/create_chart_guided.py | 2 +-
.../mcp_service/chart/resources/chart_configs.py | 24 +
superset/mcp_service/chart/schemas.py | 356 ++-
superset/mcp_service/chart/tool/generate_chart.py | 237 +-
superset/mcp_service/chart/tool/get_chart_data.py | 323 ++-
superset/mcp_service/chart/tool/get_chart_info.py | 123 +-
.../mcp_service/chart/tool/get_chart_preview.py | 157 +-
superset/mcp_service/chart/tool/list_charts.py | 18 +-
superset/mcp_service/chart/tool/update_chart.py | 13 +-
.../mcp_service/chart/tool/update_chart_preview.py | 14 +-
.../chart/validation/schema_validator.py | 169 +-
superset/mcp_service/common/cache_schemas.py | 35 +-
superset/mcp_service/common/schema_discovery.py | 22 +-
.../mcp_service/dashboard}/__init__.py | 0
superset/mcp_service/dashboard/schemas.py | 145 +-
.../tool/add_chart_to_existing_dashboard.py | 145 +-
.../dashboard/tool/generate_dashboard.py | 72 +-
.../dashboard/tool/get_dashboard_info.py | 12 +-
.../mcp_service/dashboard/tool/list_dashboards.py | 18 +-
.../mcp_service/dataset}/__init__.py | 0
superset/mcp_service/dataset/schemas.py | 31 +-
.../mcp_service/dataset/tool/get_dataset_info.py | 12 +-
superset/mcp_service/dataset/tool/list_datasets.py | 17 +-
.../explore/tool/generate_explore_link.py | 12 +-
superset/mcp_service/flask_singleton.py | 70 +-
superset/mcp_service/mcp_config.py | 39 +
superset/mcp_service/mcp_core.py | 7 +-
superset/mcp_service/middleware.py | 73 +-
superset/mcp_service/server.py | 186 +-
superset/mcp_service/sql_lab/schemas.py | 113 +-
superset/mcp_service/sql_lab/tool/__init__.py | 2 +
superset/mcp_service/sql_lab/tool/execute_sql.py | 92 +-
.../sql_lab/tool/open_sql_lab_with_context.py | 24 +-
.../mcp_service/sql_lab/tool/save_sql_query.py | 146 +
superset/mcp_service/system/prompts/quickstart.py | 2 +-
superset/mcp_service/system/schemas.py | 132 +-
superset/mcp_service/system/system_utils.py | 4 +-
.../mcp_service/system/tool/get_instance_info.py | 21 +-
superset/mcp_service/system/tool/get_schema.py | 11 +-
superset/mcp_service/system/tool/health_check.py | 15 +-
superset/mcp_service/utils/schema_utils.py | 20 +-
...1b2c3d4e5f6_add_granular_export_permissions.py} | 43 +-
superset/models/core.py | 4 +-
superset/models/dashboard.py | 2 +-
superset/models/helpers.py | 33 +-
superset/models/slice.py | 4 +-
superset/models/sql_lab.py | 5 +-
superset/models/task_subscribers.py | 2 +-
superset/models/tasks.py | 4 +-
superset/reports/notifications/email.py | 5 +
superset/security/manager.py | 70 +-
superset/sql/execution/executor.py | 24 +-
superset/sql/parse.py | 14 +-
superset/tags/models.py | 2 +-
superset/tasks/constants.py | 2 +-
superset/tasks/context.py | 2 +-
superset/tasks/decorators.py | 17 +-
superset/tasks/manager.py | 2 +-
superset/tasks/scheduler.py | 2 +-
superset/tasks/utils.py | 2 +-
superset/templates/superset/spa.html | 32 +-
superset/translations/ar/LC_MESSAGES/messages.po | 2 +-
superset/translations/ca/LC_MESSAGES/messages.po | 2 +-
superset/translations/de/LC_MESSAGES/messages.po | 2 +-
superset/translations/es/LC_MESSAGES/messages.po | 2 +-
superset/translations/fa/LC_MESSAGES/messages.po | 2 +-
superset/translations/fr/LC_MESSAGES/messages.po | 2 +-
superset/translations/ja/LC_MESSAGES/messages.po | 2 +-
superset/translations/mi/LC_MESSAGES/messages.po | 4 +-
superset/translations/nl/LC_MESSAGES/messages.po | 2 +-
superset/translations/pl/LC_MESSAGES/messages.po | 2 +-
.../translations/pt_BR/LC_MESSAGES/messages.po | 2 +-
superset/translations/sl/LC_MESSAGES/messages.po | 2 +-
superset/translations/uk/LC_MESSAGES/messages.po | 2 +-
superset/utils/json.py | 43 +
superset/utils/link_redirect.py | 149 +
superset/utils/pandas_postprocessing/geography.py | 6 +-
superset/utils/rls.py | 20 +-
superset/utils/webdriver.py | 2 +-
superset/views/base.py | 21 +-
superset/views/core.py | 51 +-
superset/views/redirect.py | 76 +
superset/viz.py | 24 +-
tests/integration_tests/databases/api_tests.py | 91 +
.../db_engine_specs/datastore_tests.py | 521 ++++
tests/integration_tests/fixtures/importexport.py | 26 +
tests/integration_tests/security_tests.py | 3 +
tests/integration_tests/sqla_models_tests.py | 5 +-
tests/integration_tests/tasks/api_tests.py | 4 +-
.../tasks/commands/test_cancel.py | 2 +-
.../tasks/commands/test_internal_update.py | 2 +-
.../integration_tests/tasks/commands/test_prune.py | 2 +-
.../tasks/commands/test_submit.py | 2 +-
.../tasks/commands/test_update.py | 2 +-
.../integration_tests/tasks/test_event_handlers.py | 2 +-
.../tasks/test_subscription_visibility.py | 2 +-
.../integration_tests/tasks/test_sync_join_wait.py | 2 +-
tests/integration_tests/tasks/test_throttling.py | 2 +-
tests/integration_tests/tasks/test_timeout.py | 2 +-
.../integration_tests/views/test_redirect_view.py | 66 +
tests/unit_tests/dao/base_dao_test.py | 2 +-
tests/unit_tests/daos/test_tasks.py | 2 +-
tests/unit_tests/databases/api_test.py | 70 +
.../databases/commands/importers/v1/import_test.py | 123 +
tests/unit_tests/databases/schema_tests.py | 106 +
tests/unit_tests/db_engine_specs/test_datastore.py | 985 +++++++
tests/unit_tests/extensions/test_types.py | 19 +-
tests/unit_tests/importexport/api_test.py | 52 +
tests/unit_tests/jinja_context_test.py | 21 +
.../mcp_service/chart/test_chart_schemas.py | 55 +
.../mcp_service/chart/test_chart_utils.py | 209 +-
.../mcp_service/chart/test_new_chart_types.py | 929 +++++++
.../mcp_service/chart/tool/test_generate_chart.py | 74 +
.../mcp_service/chart/tool/test_get_chart_data.py | 187 ++
.../mcp_service/chart/tool/test_list_charts.py | 12 +-
tests/unit_tests/mcp_service/conftest.py | 19 +-
.../dashboard/tool/test_dashboard_generation.py | 315 ++-
.../dashboard/tool/test_dashboard_tools.py | 19 +-
.../mcp_service/dataset/tool/test_dataset_tools.py | 25 +-
.../mcp_service/sql_lab/tool/test_execute_sql.py | 148 +-
.../sql_lab/tool/test_save_sql_query.py | 467 ++++
.../system/test_serialize_user_object.py | 167 ++
.../system/tool/test_get_current_user.py | 8 +-
.../mcp_service/system/tool/test_get_schema.py | 47 +-
.../mcp_service/system/tool/test_mcp_core.py | 5 +-
tests/unit_tests/mcp_service/test_auth_rbac.py | 225 ++
tests/unit_tests/mcp_service/test_mcp_server.py | 34 +
.../mcp_service/test_mcp_tool_registration.py | 70 +-
.../mcp_service/test_tool_search_transform.py | 173 ++
.../mcp_service/utils/test_schema_utils.py | 16 +-
tests/unit_tests/models/helpers_test.py | 113 +
.../models/test_double_rls_virtual_dataset.py | 286 ++
.../models/test_virtual_dataset_format.py | 382 +++
tests/unit_tests/security/guest_rls_test.py | 298 ++
tests/unit_tests/security/manager_test.py | 114 +
.../security/test_granular_export_permissions.py | 110 +
tests/unit_tests/sql/execution/test_executor.py | 19 +-
tests/unit_tests/sql/parse_tests.py | 2 +-
tests/unit_tests/sql_lab_test.py | 3 +
tests/unit_tests/tasks/test_decorators.py | 2 +-
tests/unit_tests/tasks/test_handlers.py | 2 +-
tests/unit_tests/tasks/test_timeout.py | 2 +-
tests/unit_tests/tasks/test_utils.py | 2 +-
tests/unit_tests/utils/json_tests.py | 139 +
tests/unit_tests/utils/test_link_redirect.py | 143 +
tests/unit_tests/views/test_bootstrap_auth.py | 135 +
1477 files changed, 31357 insertions(+), 8690 deletions(-)
create mode 100644 docs/admin_docs/configuration/mcp-server.mdx
create mode 100644 docs/docs/using-superset/using-ai-with-superset.mdx
create mode 100644 docs/src/theme/ApiExplorer/MethodEndpoint/index.tsx
create mode 100644 docs/static/img/databases/datastore.png
rename docs/static/img/extensions/{sql-snippets.png => editor-snippets.png} (100%)
delete mode 100644 superset-core/src/superset_core/api/rest_api.py
copy superset-core/src/superset_core/{api => common}/__init__.py (100%)
rename superset-core/src/superset_core/{api => common}/daos.py (72%)
rename superset-core/src/superset_core/{api => common}/models.py (62%)
copy superset-core/src/superset_core/{api => mcp}/__init__.py (100%)
rename superset-core/src/superset_core/{api/mcp.py => mcp/decorators.py} (79%)
copy superset-core/src/superset_core/{api => queries}/__init__.py (100%)
create mode 100644 superset-core/src/superset_core/queries/daos.py
create mode 100644 superset-core/src/superset_core/queries/models.py
rename superset-core/src/superset_core/{api => queries}/query.py (93%)
rename superset-core/src/superset_core/{api => queries}/types.py (100%)
copy superset-core/src/superset_core/{api => rest_api}/__init__.py (100%)
copy superset/migrations/versions/2016-09-19_17-22_b347b202819b_.py => superset-core/src/superset_core/rest_api/api.py (72%)
create mode 100644 superset-core/src/superset_core/rest_api/decorators.py
copy superset-core/src/superset_core/{api => tasks}/__init__.py (100%)
create mode 100644 superset-core/src/superset_core/tasks/daos.py
create mode 100644 superset-core/src/superset_core/tasks/decorators.py
create mode 100644 superset-core/src/superset_core/tasks/models.py
rename superset-core/src/superset_core/{api/tasks.py => tasks/types.py} (62%)
delete mode 100644 superset-extensions-cli/src/superset_extensions_cli/templates/backend/src/package/__init__.py.j2
rename superset-extensions-cli/src/superset_extensions_cli/templates/{.gitignore.j2 => gitignore.j2} (100%)
create mode 100644 superset-extensions-cli/tests/test_cli_update.py
delete mode 100644 superset-frontend/cypress-base/cypress/e2e/dashboard_list/filter.test.ts
delete mode 100644 superset-frontend/cypress-base/cypress/e2e/dashboard_list/list.test.ts
delete mode 100644 superset-frontend/packages/superset-core/src/api/index.ts
rename superset-frontend/packages/superset-core/src/{api/authentication.ts => authentication/index.ts} (100%)
rename superset-frontend/packages/superset-core/src/{api/commands.ts => commands/index.ts} (98%)
rename superset-frontend/packages/superset-core/src/{api/core.ts => common/index.ts} (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/components/Alert/Alert.stories.tsx (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/components/Alert/Alert.test.tsx (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/components/Alert/index.tsx (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/components/index.ts (100%)
rename superset-frontend/packages/superset-core/src/{api/contributions.ts => contributions/index.ts} (94%)
rename superset-frontend/packages/superset-core/src/{api/editors.ts => editors/index.ts} (87%)
rename superset-frontend/packages/superset-core/src/{api/extensions.ts => extensions/index.ts} (98%)
rename superset-frontend/packages/superset-core/src/{api/menus.ts => menus/index.ts} (95%)
rename superset-frontend/packages/superset-core/src/{api/sqlLab.ts => sqlLab/index.ts} (96%)
rename superset-frontend/packages/superset-core/src/{ui => }/testing.tsx (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/theme/GlobalStyles.tsx (87%)
rename superset-frontend/packages/superset-core/src/{ui => }/theme/Theme.test.tsx (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/theme/Theme.tsx (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/theme/exampleThemes.ts (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/theme/index.tsx (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/theme/types.ts (99%)
rename superset-frontend/packages/superset-core/src/{ui => }/theme/utils/index.ts (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/theme/utils/themeUtils.test.ts (88%)
rename superset-frontend/packages/superset-core/src/{ui => }/theme/utils/themeUtils.ts (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/theme/utils/utils.test.ts (93%)
rename superset-frontend/packages/superset-core/src/{ui => }/translation/README.md (100%)
create mode 100644 superset-frontend/packages/superset-core/src/translation/Translator.test.ts
rename superset-frontend/packages/superset-core/src/{ui => }/translation/Translator.ts (97%)
create mode 100644 superset-frontend/packages/superset-core/src/translation/TranslatorSingleton.test.ts
rename superset-frontend/packages/superset-core/src/{ui => }/translation/TranslatorSingleton.ts (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/translation/index.ts (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/translation/types/index.ts (100%)
rename superset-frontend/packages/superset-core/src/{ui => }/translation/types/jed.ts (100%)
delete mode 100644 superset-frontend/packages/superset-core/src/ui/index.ts
rename superset-frontend/packages/superset-core/src/{spec => }/utils/logging.test.ts (94%)
rename superset-frontend/packages/superset-core/src/{api/views.ts => views/index.ts} (94%)
create mode 100644 superset-frontend/playwright/helpers/api/dashboard.ts
copy superset-frontend/playwright/pages/{ChartListPage.ts => DashboardListPage.ts} (56%)
create mode 100644 superset-frontend/playwright/tests/experimental/dashboard/dashboard-list.spec.ts
copy superset-frontend/playwright/tests/experimental/{dataset/dataset-test-helpers.ts => dashboard/dashboard-test-helpers.ts} (53%)
create mode 100644 superset-frontend/plugins/legacy-plugin-chart-map-box/test/MapBox.test.tsx
create mode 100644 superset-frontend/plugins/legacy-plugin-chart-map-box/test/controlPanel.test.ts
create mode 100644 superset-frontend/plugins/legacy-plugin-chart-map-box/test/transformProps.test.ts
create mode 100644 superset-frontend/src/explore/components/controls/SwitchControl.tsx
create mode 100644 superset-frontend/src/explore/components/controls/VerticalRadioControl.tsx
create mode 100644 superset-frontend/src/features/roles/utils.test.ts
copy superset-frontend/src/{features/datasets/AddDataset/RightPanel/RightPanel.test.tsx => filters/components/Select/controlPanel.test.ts} (52%)
create mode 100644 superset-frontend/src/hooks/usePermissions.test.tsx
create mode 100644 superset-frontend/src/pages/DashboardList/DashboardList.behavior.test.tsx
create mode 100644 superset-frontend/src/pages/DashboardList/DashboardList.cardview.test.tsx
create mode 100644 superset-frontend/src/pages/DashboardList/DashboardList.listview.test.tsx
create mode 100644 superset-frontend/src/pages/DashboardList/DashboardList.permissions.test.tsx
create mode 100644 superset-frontend/src/pages/DashboardList/DashboardList.testHelpers.tsx
create mode 100644 superset-frontend/src/pages/RedirectWarning/index.tsx
create mode 100644 superset-frontend/src/pages/RedirectWarning/utils.test.ts
create mode 100644 superset-frontend/src/pages/RedirectWarning/utils.ts
create mode 100644 superset/db_engine_specs/datastore.py
create mode 100644 superset/extensions/context.py
create mode 100644 superset/extensions/contributions.py
copy {superset-core/src/superset_core/api => superset/mcp_service/chart}/__init__.py (100%)
copy {superset-core/src/superset_core/api => superset/mcp_service/dashboard}/__init__.py (100%)
rename {superset-core/src/superset_core/api => superset/mcp_service/dataset}/__init__.py (100%)
create mode 100644 superset/mcp_service/sql_lab/tool/save_sql_query.py
copy superset/migrations/versions/{2024-02-07_17-13_87d38ad83218_migrate_can_view_and_drill_permission.py => 2026-03-02_12-00_a1b2c3d4e5f6_add_granular_export_permissions.py} (65%)
create mode 100644 superset/utils/link_redirect.py
create mode 100644 superset/views/redirect.py
create mode 100644 tests/integration_tests/db_engine_specs/datastore_tests.py
create mode 100644 tests/integration_tests/views/test_redirect_view.py
create mode 100644 tests/unit_tests/db_engine_specs/test_datastore.py
create mode 100644 tests/unit_tests/mcp_service/chart/test_new_chart_types.py
create mode 100644 tests/unit_tests/mcp_service/sql_lab/tool/test_save_sql_query.py
create mode 100644 tests/unit_tests/mcp_service/system/test_serialize_user_object.py
create mode 100644 tests/unit_tests/mcp_service/test_auth_rbac.py
create mode 100644 tests/unit_tests/mcp_service/test_tool_search_transform.py
create mode 100644 tests/unit_tests/models/test_double_rls_virtual_dataset.py
create mode 100644 tests/unit_tests/models/test_virtual_dataset_format.py
create mode 100644 tests/unit_tests/security/guest_rls_test.py
create mode 100644 tests/unit_tests/security/test_granular_export_permissions.py
create mode 100644 tests/unit_tests/utils/test_link_redirect.py
create mode 100644 tests/unit_tests/views/test_bootstrap_auth.py