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/babel/preset-typescript-7.28.5
in repository https://gitbox.apache.org/repos/asf/superset.git
discard a70eff1e84 chore(deps-dev): bump @babel/preset-typescript in
/superset-frontend
add ebee35ea5a chore(deps-dev): bump typescript-eslint from 8.49.0 to
8.50.0 in /superset-websocket (#36649)
add e9bbf06938 chore(deps): bump re-resizable from 6.10.3 to 6.11.2 in
/superset-frontend (#36647)
add 6456f4c516 chore(deps): bump googleapis from 168.0.0 to 169.0.0 in
/superset-frontend (#36646)
add ea3d247017 chore(deps-dev): bump webpack-bundle-analyzer from 4.10.2
to 5.1.0 in /superset-frontend (#36610)
add 789be78166 chore(deps-dev): bump webpack from 5.103.0 to 5.104.0 in
/docs (#36695)
add f97fa08477 chore(deps-dev): bump baseline-browser-mapping from 2.9.7
to 2.9.8 in /superset-frontend (#36690)
add f4ded02e0d chore(deps-dev): bump typescript-eslint from 8.49.0 to
8.50.0 in /docs (#36650)
add d77f7b6d20 chore(deps): bump nanoid from 5.0.9 to 5.1.6 in
/superset-frontend (#36586)
add 594ea972ca chore(deps-dev): bump @types/node from 25.0.2 to 25.0.3 in
/superset-websocket (#36692)
add 479b7a3fba chore(deps-dev): bump @pmmmwh/react-refresh-webpack-plugin
from 0.5.17 to 0.6.2 in /superset-frontend (#36691)
add 71f9dcff5a chore: Bump core packages (0.0.1rc3, 0.0.1-rc6) (#36707)
add c9ec173647 fix(SearchFilter): prevent unintended autocomplete on
search input (#36209)
add 5ce4c52cfa feat(docs): In the Wild page with YAML data and AntD
components (#36386)
add 33a425bbbc fix(echarts): use scroll legend for horizontal layouts to
prevent overlap (#36306)
add 24a4f8510d docs: Add SQL Lab Export to Google Sheets to community
extensions registry (#36714)
add b800412eda fix(docs): add retry logic and concurrency handling for
badge downloads (#36715)
add 737a5162e4 fix: Use is_active for guest users (#36716)
add b1e004e122 build(dev-deps): remove stub type definition packages
(#36706)
add ae584c8886 chore: remove INTHEWILD.md after migration to YAML (#36718)
add 2f4f64dfe8 chore(frontend): migrate easy JS/JSX files to TypeScript
(#36713)
add f51f7f3307 fix(tests): resolve flakey selectOption helper race
condition (#36719)
add f3407d7a56 chore: Close playwright browser gracefully (#36537)
add ee45b26ad7 fix(tests): optimize DatasourceEditorCurrency tests for CI
reliability (#36723)
add 0f56e3b9ae fix: Implement SIP-40 error styles for GAQ (#36596)
add 0830a57fa6 feat(docs): add llms.txt for LLM-friendly documentation
index (#36730)
add 2cf0d7936e chore(pre-commit): exclude logos from end-of-file-fixer
(#36744)
add 32435bc3e9 feat(docs): enhance Matomo analytics tracking (#36743)
add da8e077a44 chore(frontend): migrate utility JS files to TypeScript
(#36721)
add b8f31124d0 chore(frontend): migrate 13 JS/JSX files to TypeScript
(#36720)
add 91539f77aa feat(docker): support running multiple Superset instances
simultaneously (#36751)
add fb6f3fbb4d chore: update files for release 6.0.0 (#36745)
add 5920cb57ea refactor(extensions): add Pydantic validation for extension
configuration (#36767)
add d36ddbbb33 feat(extensions-cli): Add .gitignore generation to init
command (#36768)
add 3258082819 docs: add SQL Lab Export to Parquet to community extensions
registry (#36755)
add ae491aee00 docs: Add SQL Lab Query Comparison to community extensions
registry (#36769)
add c026ae2ce7 fix(dashboard): prevent table chart infinite reload loop
(#36686)
add e3e6b0e18b fix(mcp): use SQLScript for all SQL parsing in execute_sql
(#36599)
add 0ced20457b chore(deps-dev): bump webpack from 5.104.0 to 5.104.1 in
/docs (#36758)
add 5cd8e1e736 chore(deps): bump caniuse-lite from 1.0.30001760 to
1.0.30001761 in /docs (#36757)
add 8d070f5cb6 chore(deps-dev): bump @types/node from 25.0.2 to 25.0.3 in
/superset-frontend (#36726)
add e0ea807031 chore(deps-dev): bump baseline-browser-mapping from 2.9.8
to 2.9.9 in /superset-frontend (#36725)
add c0bcf28947 chore(deps-dev): bump @playwright/test from 1.56.0 to
1.57.0 in /superset-frontend (#36571)
add 6b25d0663e refactor: Migrates the MCP `execute_sql` tool to use the
SQL execution API (#36739)
add 32c98d02d3 fix: UI cut off (#36531)
add 54eb6317ef fix(margin): Fixing margin issues (#36479)
add ff24e2f27d fix: fix error with dashboard filters when global async
queries is enabled and user navigates quickly (#36639)
add ff3dab9b3b docs: Add Query Estimator to community extensions registry
(#36814)
add 8f8fe19e3e docs: Add SQL Snippets to community extensions registry
(#36797)
add 9e04c3471d docs: Add SQL Lab Result Stats to community extensions
registry (#36796)
add c399fd2801 fix: Stale editor content in @apache-superset/core (#36813)
add ba8d6eb9ac docs: Adds a new "Dependencies" page to the Developer
Portal (#36817)
add f8cb935105 feat(reports): add webhook option for notifications (#36127)
add ecb4e483df fix: apply `EXCLUDE_USERS_FROM_LISTS` to
`/api/v1/security/users/` (#36742)
add bd8d4ddbee chore(deps-dev): bump typescript-eslint from 8.50.0 to
8.50.1 in /superset-websocket (#36802)
add fd67d3190a chore(deps-dev): bump typescript-eslint from 8.50.0 to
8.50.1 in /docs (#36801)
add f95f125c4c chore(deps-dev): bump html-webpack-plugin from 5.6.4 to
5.6.5 in /superset-frontend (#36787)
add 100789200a chore(deps): bump hot-shots from 11.4.0 to 12.0.0 in
/superset-websocket (#36786)
add bf5070471d chore(deps): bump storybook from 8.6.14 to 8.6.15 in /docs
(#36727)
add 362b5e3b89 chore(deps-dev): bump js-yaml from 3.14.1 to 3.14.2 in
/superset-frontend (#36711)
add 28c802fb6c fix(TableCollection): only apply highlight class when
defined (#36809)
add 1697cf733b chore(deps): bump antd from 6.1.1 to 6.1.2 in /docs (#36823)
add 02411ffde0 docs: Add EnquiryLabs to INTHEWILD.yaml (#36843)
add fe5d5fdae6 fix(chart-creation): use exact match when loading dataset
from URL parameter (#36831)
add e112d863bf fix(dashboard): resolve tab reorder state sync issues
(#36855)
add 7cd76e4647 fix: SqlLab error when collapsing the left panel preview
(#36858)
add d4ba44fce2 fix: Query history view button in SqlLab (#36540)
add 85e830de46 fix: Clear database form errors (#36854)
add c31224c891 fix(TableChart): render cell bars for columns with NULL
values (#36819)
add 12aa425049 fix(logout): clicking logout displays an error
notification "invalid username or password" (#36490)
add e5489bd30f fix(SavedQueries): unify query card actions styling across
all home page cards (#36671)
add 1b1be96274 chore(deps-dev): bump globals from 16.5.0 to 17.0.0 in
/docs (#36886)
add dd2eb6293d chore(deps-dev): bump globals from 16.5.0 to 17.0.0 in
/superset-websocket (#36885)
add 4451e8db05 chore(deps): bump qs from 6.14.0 to 6.14.1 in /docs (#36884)
add aed95453b3 chore(deps): bump qs from 6.14.0 to 6.14.1 in
/superset-websocket/utils/client-ws-app (#36883)
add d07a452e9b fix(RightMenu): fix inconsistent icon alignment in
RightMenu items (#36532)
add 52af489d8f docs: Add Rogow to INTHEWILD.yaml (#36879)
add 1334040fd6 chore(docs): Include VLMedia logo to intothewild (#36868)
add fdef8fa50a chore(deps-dev): bump @typescript-eslint/parser from 8.50.1
to 8.51.0 in /docs (#36866)
add 53fa65fe67 chore(deps): bump caniuse-lite from 1.0.30001761 to
1.0.30001762 in /docs (#36865)
add ac27c0aa3c chore(deps-dev): bump @typescript-eslint/parser from 8.50.1
to 8.51.0 in /superset-websocket (#36861)
add 2080633e57 other: resolve frontend dep vulns (#36820)
add 740ddc03e2 fix(plugin-chart-table): remove column misalignment when no
scrollbars are present (#36891)
add c76ddcbbec fix(deck.gl): Fix Scatterplot chart error when using fixed
point size (#36890)
add 61986100bd chore(deps): bump hot-shots from 12.0.0 to 12.1.0 in
/superset-websocket (#36899)
add dcc556a9a7 chore(CHANGELOG): add link to 6.0.0 CHANGELOG (#36832)
add 5909e90081 feat(security): add built-in Public role for anonymous
dashboard access (#36548)
add 12a266fd2f fix(trino): update query progress using cursor stats
(#36872)
add cedc35e39f fix(SQLLab): remove error icon displayed when writing Jinja
SQL even when the script is correct (#36422)
add f9fde87e85 feat(native filters): add filter type icons in config modal
(#36905)
add 1949d1bb96 feat(dev): add make ports and make open commands (#36906)
add aaa174f820 docs: add Netlify configuration for PR deploy previews
(#36908)
add 9aff89c1b4 chore(frontend): migrate SqlLab and explore JS/JSX files to
TypeScript (#36760)
add 9968393e4c feat(ci): add container security scan for image built for
commits merged to mainline (#36604)
add d7d94ba640 fix(ag-grid): Ag Grid Date Filter timezone correction
(#36270)
add 861e5cd013 fix(security): enforce datasource access control in
get_samples() (#36550)
add 5edaed2e5b fix(alerts): wrong alert trigger with custom query (#35871)
add 7a5441bc7a refactor: Remove unimplemented APIs from
@apache-superset/core (#36952)
add 0c1edd4568 chore: Bump @apache-superset/core (0.0.1-rc9) (#36953)
add dfdf8e75d8 fix: handle undefined template variables safely in query
rendering. (#35009)
add f9be2b816a feat(docs): add resources admonition with external links
(#36761)
add 64ee48f147 fix(mcp): use chart.query_context for get_chart_data like
the API does (#36937)
add 6f67b05375 chore: Update INTHEWILD.yaml for PlaidCloud (#36741)
add 03caa7b337 docs(INTHEWILD): add Cirrus Assessment (#36871)
add 84279acd2f feat(mcp): add unified get_schema tool for schema discovery
(#36458)
add a6d85dccf8 fix: streaming export losing g context (#36950)
add 16e046b5d9 docs(INTHEWILD): add HOLLYLAND猛玛 (#36968)
add 70b2e520b2 chore(frontend): Update $schema path in oxlint.json (#36859)
add 337eb3baf5 fix(dashboard): prevent PublishedLabel overlap in
non-English languages (#36877)
add 047360641a feat(mcp): change save_chart default to False for
preview-first workflow (#36935)
add 4249b8ee6a chore(deps-dev): bump
eslint-plugin-react-you-might-not-need-an-effect from 0.5.1 to 0.8.3 in
/superset-frontend (#36972)
add 3ac76e116d chore: Update INTHEWILD.yaml (#36733)
add e9b91f6ec9 chore(deps): bump ioredis from 5.8.2 to 5.9.0 in
/superset-websocket (#36920)
add 77ebc5ac10 chore(deps-dev): bump @typescript-eslint/parser from 8.51.0
to 8.52.0 in /docs (#36918)
add dd7f0c4224 chore(deps-dev): bump typescript-eslint from 8.50.1 to
8.52.0 in /superset-websocket (#36916)
add af185ad8c9 chore(deps-dev): bump jsdom from 27.0.0 to 27.4.0 in
/superset-frontend (#36922)
add 4fc8157d6f chore(deps-dev): bump source-map from 0.7.4 to 0.7.6 in
/superset-frontend (#36653)
add 85cf46dc1c fix(mcp): remove unused ctx parameter from health_check
tool (#36992)
add 734d64081f chore(deps): bump caniuse-lite from 1.0.30001762 to
1.0.30001763 in /docs (#36970)
add ffbf81e952 chore(deps): bump ws from 8.18.3 to 8.19.0 in
/superset-websocket (#36919)
add 07aa7622f7 chore(deps): bump react-resizable from 3.0.5 to 3.1.3 in
/superset-frontend (#36911)
add 57f8f50292 chore(deps-dev): bump @typescript-eslint/eslint-plugin from
8.50.1 to 8.51.0 in /docs (#36898)
add 413dfc98ff chore(deps): bump @storybook/addon-docs from 8.6.14 to
8.6.15 in /docs (#36824)
add f48322c17d chore: bump flask-cors to 6.0.2 (#36640)
add ea90d1f141 refactor(db-engine-specs): use standard OAuth 2.0 params in
base class (#37010)
add f895250cf9 fix(mypy): add overrides for superset-core local dev
consistency (#36907)
add 14c0cad0ba chore: remove deprecated function (#37021)
add 1e8d648f47 feat: Chart query last run timestamp (#36934)
add 53dddf4db2 feat(embedded-sdk): Add resolvePermalinkUrl callback for
custom permalink URLs (#36924)
add ecefba5bf7 fix(mcp): resolve startup failures from circular DAO
imports (#37023)
add 1cface15e6 docs: Update INTHEWILD.yaml (#36888)
add 0294c30c9e fix(Tabs): prevent infinite rerenders with nested tabs
(#37018)
add e9b6791ffb refactor: move translations and logging to new core (#36929)
add 4f5789abfe fix(reports): Use authenticated user as recipient for
chart/dashboard reports (#36981)
add d914b35cc0 fix(translations): post merge fix for new translations
addded (#37041)
add 459b4cb23d perf(date_parser): bound regex quantifiers for
deterministic parsing performance (#36983)
add 4f444ae1d2 feat(ag-grid): Server Side Filtering for Column Level
Filters (#35683)
add 62c7b48b5c fix(extensions-cli): fix dev mode error (#37024)
add 169d27c9e9 fix(extensions): gracefully handle dist directory
rebuilding (#37025)
add 911d72c957 fix(models): prevent SQLAlchemy and_() deprecation warning
(#37020)
add d8f7ae83ee fix(sqlglot): use Athena dialect for awsathena parsing
(#36747)
add dcdcf88969 chore(chart): rollback legend top alignment to the right
(#36994)
add f4772a9383 chore(deps-dev): bump webpack-bundle-analyzer from 5.1.0 to
5.1.1 in /superset-frontend (#37006)
add 2a38ce001e fix(deckgl): remove visibility condition in deckgl stroke
color (#37029)
add 005b2af985 chore(deps-dev): bump @types/lodash from 4.17.21 to 4.17.23
in /superset-websocket (#37045)
add 4fe2085596 chore(deps): bump caniuse-lite from 1.0.30001763 to
1.0.30001764 in /docs (#37049)
add fac5d2bcb6 feat(db): add dynamic schema support for athena (#36003)
add 22cfc4536b fix(export): URL prefix handling for subdirectory
deployments (#36771)
add 72c69e2ca6 chore(deps): bump fs-extra from 11.3.0 to 11.3.3 in
/superset-frontend (#37001)
add d56bc5826f chore(deps-dev): bump @applitools/eyes-storybook from
3.60.0 to 3.63.4 in /superset-frontend (#37003)
add adb575be2f chore(deps-dev): bump typescript-eslint from 8.50.1 to
8.52.0 in /docs (#36913)
add fa3d4a75ca chore(deps): bump actions/download-artifact from 6 to 7
(#36699)
add 7503ee4e09 feat(sqllab): primary/secondary action extensions (#36644)
add 462fffc23c fix(docs): Update references from LLMS.md to AGENTS.md
(#37060)
add 481bfa0f68 feat(starrocks): add catalog support for StarRocks database
connections (#37026)
add 5f58241795 fix(explore): dispatch NumberControl value on blur to allow
field clearing (#37007)
add ad3812edd7 fix(table): keep d3-format semantics when applying currency
formatting (#37039)
add 936e37bd02 chore(deps-dev): bump @babel/node from 7.28.0 to 7.28.6 in
/superset-frontend (#37089)
add e17bfae6bd chore(deps-dev): bump webpack from 5.103.0 to 5.104.1 in
/superset-frontend (#37083)
add fc67569cd4 fix(datasets): ui bug fixes (#37058)
add 23a47e2f5a chore(deps-dev): bump webpack-dev-server from 5.2.2 to
5.2.3 in /superset-frontend (#37088)
add 3a3cbc2900 chore(deps-dev): bump @types/node from 25.0.3 to 25.0.7 in
/superset-websocket (#37081)
add 6c75365427 chore(deps-dev): bump typescript-eslint from 8.52.0 to
8.53.0 in /docs (#37076)
add 5d5012aa9f chore(deps-dev): bump @types/lodash from 4.17.21 to 4.17.23
in /superset-frontend (#37077)
add 560da50df8 chore(deps): bump @babel/runtime from 7.28.4 to 7.28.6 in
/superset-frontend (#37080)
add 393259bb9e chore(deps-dev): bump typescript-eslint from 8.52.0 to
8.53.0 in /superset-websocket (#37082)
add 9f2f3c90b8 chore(deps-dev): bump @babel/preset-typescript 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 (a70eff1e84)
\
N -- N -- N
refs/heads/dependabot/npm_and_yarn/superset-frontend/babel/preset-typescript-7.28.5
(9f2f3c90b8)
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:
.envrc.example | 41 +
.github/ISSUE_TEMPLATE/bug-report.yml | 2 +-
.github/workflows/docker.yml | 17 +
.github/workflows/superset-frontend.yml | 2 +-
.pre-commit-config.yaml | 2 +-
.rat-excludes | 4 +
CHANGELOG.md | 1 +
CHANGELOG/6.0.0.md | 1062 +++++++++++++
Dockerfile | 2 +-
Makefile | 27 +-
README.md | 4 +-
RESOURCES/INTHEWILD.md | 226 ---
RESOURCES/INTHEWILD.yaml | 673 +++++++++
RESOURCES/STANDARD_ROLES.md | 379 ++---
UPDATING.md | 51 +-
docker-compose.yml | 26 +-
docker/.env | 9 +
docker/.env-local.example | 39 +
docker/README.md | 28 +
.../contributing/development-setup.md | 35 +
docs/developer_portal/extensions/architecture.md | 16 +-
.../extensions/contribution-types.md | 2 +-
docs/developer_portal/extensions/dependencies.md | 166 ++
docs/developer_portal/extensions/deployment.md | 2 +-
docs/developer_portal/extensions/development.md | 6 +-
docs/developer_portal/extensions/mcp.md | 2 +-
docs/developer_portal/extensions/overview.md | 1 +
docs/developer_portal/extensions/registry.md | 17 +-
docs/developer_portal/extensions/security.md | 2 +-
docs/developer_portal/sidebars.js | 1 +
docs/docs/api.mdx | 5 +
docs/docs/configuration/alerts-reports.mdx | 5 +
docs/docs/configuration/async-queries-celery.mdx | 4 +
docs/docs/configuration/cache.mdx | 5 +
docs/docs/configuration/configuring-superset.mdx | 4 +
docs/docs/configuration/databases.mdx | 128 +-
docs/docs/configuration/networking-settings.mdx | 16 +-
docs/docs/configuration/sql-templating.mdx | 4 +
docs/docs/configuration/theming.mdx | 8 +
docs/docs/contributing/contributing.mdx | 4 +
docs/docs/contributing/development.mdx | 13 +-
docs/docs/installation/kubernetes.mdx | 5 +
docs/docs/quickstart.mdx | 6 +
docs/docs/security/securing_superset.mdx | 5 +
docs/docs/security/security.mdx | 100 +-
.../creating-your-first-dashboard.mdx | 23 +-
docs/docs/using-superset/exploring-data.mdx | 9 +
docs/docusaurus.config.ts | 20 +
docs/netlify.toml | 56 +
docs/package.json | 21 +-
docs/plugins/remark-localize-badges.mjs | 162 +-
docs/sidebarTutorials.js | 1 +
docs/src/pages/inTheWild.tsx | 165 ++
docs/src/pages/index.tsx | 104 +-
docs/src/styles/custom.css | 39 +
docs/src/theme/Admonition/Types.js | 63 +
docs/src/theme/Root.js | 238 ++-
.../svgType.d.ts => docs/src/types/yaml.d.ts | 10 +-
docs/src/webpack.extend.ts | 7 +
.../{api_explorer.png => api-explorer.png} | Bin
docs/static/img/extensions/gsheets-export.png | Bin 0 -> 387654 bytes
docs/static/img/extensions/parquet-export.png | Bin 0 -> 62473 bytes
docs/static/img/extensions/query-comparison.png | Bin 0 -> 611336 bytes
docs/static/img/extensions/query-estimator.png | Bin 0 -> 443733 bytes
docs/static/img/extensions/result-stats.png | Bin 0 -> 403058 bytes
...flow_visualizer.png => sql-flow-visualizer.png} | Bin
docs/static/img/extensions/sql-snippets.png | Bin 0 -> 366481 bytes
docs/static/img/logos/cirrus.svg | Bin 0 -> 1809 bytes
.../logos/hollyland\347\214\233\347\216\233.svg" | Bin 0 -> 77086 bytes
docs/static/img/logos/plaidcloud.svg | Bin 0 -> 81228 bytes
docs/static/img/logos/preset.svg | Bin 0 -> 3622 bytes
docs/static/img/logos/vlmedia.svg | Bin 0 -> 10468 bytes
docs/static/llms.txt | 64 +
docs/yarn.lock | 571 ++++---
pyproject.toml | 23 +-
requirements/base.txt | 2 +-
requirements/development.txt | 2 +-
scripts/docker-compose-up.sh | 222 +++
superset-core/pyproject.toml | 2 +-
superset-core/src/superset_core/api/models.py | 12 +-
.../src/superset_core/extensions/types.py | 233 ++-
superset-embedded-sdk/README.md | 61 +-
superset-embedded-sdk/src/index.ts | 38 +-
.../src/superset_extensions_cli/cli.py | 67 +-
.../templates/.gitignore.j2 | 36 +
superset-extensions-cli/tests/test_cli_build.py | 43 +-
superset-extensions-cli/tests/test_cli_dev.py | 36 +-
superset-extensions-cli/tests/test_cli_init.py | 32 +-
superset-extensions-cli/tests/utils.py | 2 +-
superset-frontend/cypress-base/package-lock.json | 354 ++++-
superset-frontend/cypress-base/package.json | 5 +
.../netlify.toml | 22 +-
superset-frontend/oxlint.json | 2 +-
superset-frontend/package-lock.json | 1579 +++++++++++---------
superset-frontend/package.json | 45 +-
.../packages/generator-superset/package.json | 2 +-
.../packages/superset-core/package.json | 12 +-
.../packages/superset-core/src/api/environment.ts | 153 --
.../packages/superset-core/src/api/index.ts | 2 -
.../packages/superset-core/src/api/sqlLab.ts | 109 --
.../packages/superset-core/src/index.ts | 1 +
.../superset-core/src/spec/utils/logging.test.ts | 69 +
.../packages/superset-core/src/ui/index.ts | 1 +
.../src/ui}/translation/README.md | 0
.../src/ui}/translation/Translator.ts | 2 +-
.../src/ui}/translation/TranslatorSingleton.ts | 0
.../src/ui}/translation/index.ts | 1 +
.../src/ui}/translation/types/index.ts | 0
.../src/ui}/translation/types/jed.ts | 0
.../src/utils}/index.ts | 2 +-
.../src/utils/logging.ts | 2 +-
.../types/external.d.ts | 0
.../src/components/CertifiedIconWithTooltip.tsx | 2 +-
.../components/ColumnTypeLabel/ColumnTypeLabel.tsx | 2 +-
.../src/components/ControlHeader.tsx | 2 +-
.../src/components/SQLPopover.tsx | 2 +-
.../src/components/labelUtils.tsx | 2 +-
.../superset-ui-chart-controls/src/constants.ts | 3 +-
.../src/sections/advancedAnalytics.tsx | 3 +-
.../src/sections/annotationsAndLayers.tsx | 2 +-
.../src/sections/chartTitle.tsx | 2 +-
.../src/sections/echartsTimeSeriesQuery.tsx | 2 +-
.../src/sections/forecastInterval.tsx | 7 +-
.../src/sections/matrixify.tsx | 2 +-
.../src/sections/sections.tsx | 2 +-
.../src/sections/timeComparison.tsx | 3 +-
.../components/RadioButtonControl.tsx | 3 +-
.../src/shared-controls/customControls.tsx | 2 +-
.../src/shared-controls/dndControls.tsx | 3 +-
.../src/shared-controls/matrixifyControls.tsx | 3 +-
.../src/shared-controls/mixins.tsx | 2 +-
.../src/shared-controls/sharedControls.tsx | 2 +-
.../src/utils/D3Formatting.ts | 2 +-
.../test/utils/getColorFormatters.test.ts | 2 +-
.../packages/superset-ui-core/package.json | 7 +-
.../src/chart/components/FallbackComponent.tsx | 2 +-
.../src/chart/components/NoResultsComponent.tsx | 3 +-
.../src/chart/components/SuperChartCore.tsx | 2 +-
.../src/components/AsyncAceEditor/index.tsx | 2 -
.../src/components/CachedLabel/TooltipContent.tsx | 2 +-
.../src/components/CachedLabel/index.tsx | 2 +-
.../CertifiedBadge/CertifiedBadge.stories.tsx | 2 +-
.../src/components/CertifiedBadge/index.tsx | 2 +-
.../src/components/ConfirmModal/index.tsx | 2 +-
.../src/components/CronPicker/index.tsx | 2 +-
.../src/components/DeleteModal/index.tsx | 2 +-
.../DropdownContainer/DropdownContainer.tsx | 3 +-
.../src/components/DynamicEditableTitle/index.tsx | 2 +-
.../src/components/EditableTitle/index.tsx | 2 +-
.../src/components/EmptyState/index.tsx | 89 +-
.../src/components/EmptyState/types.ts | 3 +
.../src/components/FaveStar/index.tsx | 2 +-
.../src/components/Form/LabeledErrorBoundInput.tsx | 2 +-
.../src/components/Icons/AntdEnhanced.tsx | 4 +
.../src/components/InfoTooltip/index.tsx | 2 +-
.../components/Label/reusable/DatasetTypeLabel.tsx | 2 +-
.../components/Label/reusable/PublishedLabel.tsx | 2 +-
.../src/components/LastUpdated/index.tsx | 2 +-
.../src/components/ListViewCard/ImageLoader.tsx | 2 +-
.../src/components/ListViewCard/index.tsx | 4 +-
.../src/components/MetadataBar/ContentConfig.tsx | 3 +-
.../src/components/Modal/FormModal.tsx | 2 +-
.../src/components/Modal/Modal.tsx | 2 +-
.../src/components/PageHeaderWithActions/index.tsx | 2 +-
.../src/components/Select/AsyncSelect.tsx | 2 +-
.../src/components/Select/Select.tsx | 3 +-
.../src/components/Select/constants.ts | 2 +-
.../src/components/Select/utils.tsx | 3 +-
.../Table/cell-renderers/NumericCell/index.tsx | 2 +-
.../src/components/Table/index.tsx | 3 +-
.../TableCollection/TableCollection.test.tsx | 83 +
.../src/components/TableCollection/index.tsx | 4 +-
.../superset-ui-core/src/components/Tabs/Tabs.tsx | 5 +-
.../ThemedAgGridReact/ThemedAgGridReact.test.tsx | 10 +-
.../src/components/TimezoneSelector/index.tsx | 2 +-
.../src/components/TruncatedList/index.tsx | 3 +-
.../src/components/UnsavedChangesModal/index.tsx | 2 +-
.../superset-ui-core/src/components/constants.ts | 2 +-
.../src/currency-format/CurrencyFormatter.ts | 11 +-
.../packages/superset-ui-core/src/index.ts | 1 -
.../src/query/extractQueryFields.ts | 2 +-
.../src/query/getClientErrorObject.ts | 2 +-
.../src/query/types/QueryResponse.ts | 6 +-
.../superset-ui-core/src/utils/featureFlags.ts | 3 +-
.../packages/superset-ui-core/src/utils/index.ts | 1 -
.../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/currency-format/CurrencyFormatter.test.ts | 6 +-
.../test/query/extractQueryFields.test.ts | 3 +-
.../test/translation/Translator.test.ts | 201 ---
.../test/translation/TranslatorSingleton.test.ts | 86 --
.../test/translation/index.test.ts | 35 -
.../test/translation/languagePacks/en.ts | 37 -
.../test/translation/languagePacks/zh.ts | 37 -
.../test/utils/featureFlag.test.ts | 19 +-
.../superset-ui-core/test/utils/logging.test.ts | 78 -
.../superset-ui-core/test/validator/setup.ts | 2 +-
.../packages/superset-ui-demo/package.json | 2 +-
.../storybook/shared/components/VerifyCORS.tsx | 2 +-
.../playwright/tests/experimental/README.md | 7 +
.../legacy-plugin-chart-calendar/src/Calendar.js | 3 +-
.../src/controlPanel.ts | 3 +-
.../legacy-plugin-chart-calendar/src/index.js | 3 +-
.../src/vendor/cal-heatmap.js | 3 +-
.../legacy-plugin-chart-chord/src/controlPanel.ts | 3 +-
.../plugins/legacy-plugin-chart-chord/src/index.js | 3 +-
.../src/controlPanel.ts | 3 +-
.../legacy-plugin-chart-country-map/src/index.js | 3 +-
.../src/controlPanel.ts | 2 +-
.../legacy-plugin-chart-horizon/src/index.js | 3 +-
.../src/controlPanel.ts | 3 +-
.../legacy-plugin-chart-map-box/src/index.js | 3 +-
.../src/controlPanel.ts | 3 +-
.../legacy-plugin-chart-paired-t-test/src/index.js | 3 +-
.../src/controlPanel.ts | 2 +-
.../src/index.js | 3 +-
.../src/controlPanel.tsx | 3 +-
.../legacy-plugin-chart-partition/src/index.js | 3 +-
.../legacy-plugin-chart-rose/src/controlPanel.tsx | 2 +-
.../plugins/legacy-plugin-chart-rose/src/index.js | 3 +-
.../src/controlPanel.ts | 2 +-
.../legacy-plugin-chart-world-map/src/index.js | 3 +-
.../src/Multi/controlPanel.ts | 3 +-
.../legacy-preset-chart-deckgl/src/Multi/index.ts | 3 +-
.../src/layers/Arc/controlPanel.ts | 3 +-
.../src/layers/Arc/index.ts | 3 +-
.../src/layers/Contour/Contour.tsx | 2 +-
.../src/layers/Contour/controlPanel.ts | 3 +-
.../src/layers/Contour/index.ts | 3 +-
.../src/layers/Geojson/controlPanel.ts | 2 +-
.../src/layers/Geojson/index.ts | 3 +-
.../src/layers/Grid/controlPanel.ts | 3 +-
.../src/layers/Grid/index.ts | 3 +-
.../src/layers/Heatmap/Heatmap.tsx | 2 +-
.../src/layers/Heatmap/controlPanel.ts | 2 +-
.../src/layers/Heatmap/index.ts | 3 +-
.../src/layers/Hex/controlPanel.ts | 2 +-
.../src/layers/Hex/index.ts | 3 +-
.../src/layers/Path/controlPanel.ts | 2 +-
.../src/layers/Path/index.ts | 3 +-
.../src/layers/Polygon/Polygon.tsx | 2 +-
.../src/layers/Polygon/controlPanel.ts | 4 +-
.../src/layers/Polygon/index.ts | 3 +-
.../src/layers/Scatter/Scatter.tsx | 21 +-
.../src/layers/Scatter/buildQuery.test.ts | 312 ++++
.../src/layers/Scatter/buildQuery.ts | 26 +-
.../src/layers/Scatter/controlPanel.ts | 3 +-
.../src/layers/Scatter/index.ts | 3 +-
.../src/layers/Scatter/transformProps.test.ts | 303 ++++
.../src/layers/Scatter/transformProps.ts | 19 +-
.../src/layers/Screengrid/Screengrid.tsx | 2 +-
.../src/layers/Screengrid/controlPanel.ts | 3 +-
.../src/layers/Screengrid/index.ts | 3 +-
.../src/layers/transformUtils.test.ts | 184 +++
.../src/layers/transformUtils.ts | 12 +-
.../src/layers/utils/metricUtils.test.ts | 121 ++
.../src/layers/utils/metricUtils.ts | 120 ++
.../src/utilities/HandlebarsRenderer.tsx | 3 +-
.../src/utilities/Shared_DeckGL.tsx | 4 +-
.../src/utilities/TooltipTemplateControl.tsx | 2 +-
.../src/utilities/sharedDndControls.tsx | 2 +-
.../src/utilities/tooltipUtils.tsx | 3 +-
.../src/Bubble/controlPanel.ts | 2 +-
.../legacy-preset-chart-nvd3/src/Bubble/index.js | 3 +-
.../src/Bullet/controlPanel.ts | 2 +-
.../legacy-preset-chart-nvd3/src/Bullet/index.js | 3 +-
.../src/Compare/controlPanel.ts | 2 +-
.../legacy-preset-chart-nvd3/src/Compare/index.js | 3 +-
.../legacy-preset-chart-nvd3/src/NVD3Controls.tsx | 2 +-
.../legacy-preset-chart-nvd3/src/NVD3Vis.js | 2 +-
.../src/TimePivot/controlPanel.ts | 2 +-
.../src/TimePivot/index.js | 3 +-
.../src/vendor/superset/AnnotationTypes.js | 2 +-
.../plugin-chart-ag-grid-table/package.json | 1 -
.../src/AgGridTable/components/CustomHeader.tsx | 82 +-
.../src/AgGridTable/components/Pagination.tsx | 2 +-
.../components/TimeComparisonVisibility.tsx | 2 +-
.../src/AgGridTable/index.tsx | 94 +-
.../src/AgGridTableChart.tsx | 93 +-
.../plugin-chart-ag-grid-table/src/buildQuery.ts | 158 +-
.../plugin-chart-ag-grid-table/src/consts.ts | 15 +
.../src/controlPanel.tsx | 2 +-
.../plugin-chart-ag-grid-table/src/index.ts | 3 +-
.../src/renderers/NumericCellRenderer.tsx | 14 +-
.../src/renderers/TextCellRenderer.tsx | 3 +-
.../src/stateConversion.ts | 185 ++-
.../src/transformProps.ts | 2 +-
.../plugin-chart-ag-grid-table/src/types.ts | 23 +-
.../src/utils/agGridFilterConverter.ts | 726 +++++++++
.../src/utils/dateFilterComparator.ts | 58 +-
.../src/utils/filterStateManager.ts | 164 ++
.../src/utils/getInitialFilterModel.ts} | 37 +-
.../src/utils/useColDefs.ts | 110 +-
.../test/buildQuery.test.ts | 591 ++++++++
.../test/utils/agGridFilterConverter.test.ts | 863 +++++++++++
.../test/utils/dateFilterComparator.test.ts | 124 ++
.../test/utils/filterStateManager.test.ts | 658 ++++++++
.../test/utils/getInitialFilterModel.test.ts | 412 +++++
.../src/plugin/controlPanel.ts | 3 +-
.../plugin-chart-cartodiagram/src/plugin/index.ts | 3 +-
.../src/util/controlPanelUtil.tsx | 2 +-
.../BigNumber/BigNumberPeriodOverPeriod/PopKPI.tsx | 2 +-
.../BigNumberPeriodOverPeriod/controlPanel.ts | 2 +-
.../BigNumber/BigNumberPeriodOverPeriod/index.ts | 3 +-
.../src/BigNumber/BigNumberTotal/controlPanel.ts | 3 +-
.../src/BigNumber/BigNumberTotal/index.ts | 3 +-
.../src/BigNumber/BigNumberViz.tsx | 2 +-
.../BigNumberWithTrendline/controlPanel.tsx | 3 +-
.../src/BigNumber/BigNumberWithTrendline/index.ts | 3 +-
.../BigNumberWithTrendline/transformProps.ts | 2 +-
.../src/BigNumber/sharedControls.ts | 2 +-
.../src/BoxPlot/controlPanel.ts | 2 +-
.../plugin-chart-echarts/src/BoxPlot/index.ts | 3 +-
.../src/Bubble/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Bubble/index.ts | 3 +-
.../src/Funnel/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Funnel/index.ts | 3 +-
.../src/Gantt/EchartsGantt.tsx | 2 +-
.../src/Gantt/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Gantt/index.ts | 3 +-
.../src/Gantt/transformProps.ts | 2 +-
.../src/Gauge/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Gauge/index.ts | 3 +-
.../src/Graph/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Graph/index.ts | 3 +-
.../src/Heatmap/controlPanel.tsx | 3 +-
.../plugin-chart-echarts/src/Heatmap/index.ts | 3 +-
.../src/Heatmap/transformProps.ts | 2 +-
.../src/Histogram/controlPanel.tsx | 3 +-
.../plugin-chart-echarts/src/Histogram/index.ts | 3 +-
.../src/MixedTimeseries/controlPanel.tsx | 3 +-
.../src/MixedTimeseries/index.ts | 3 +-
.../plugin-chart-echarts/src/Pie/controlPanel.tsx | 3 +-
.../plugins/plugin-chart-echarts/src/Pie/index.ts | 3 +-
.../plugin-chart-echarts/src/Pie/transformProps.ts | 2 +-
.../src/Radar/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Radar/index.ts | 3 +-
.../src/Sankey/controlPanel.tsx | 3 +-
.../plugin-chart-echarts/src/Sankey/index.ts | 3 +-
.../src/Sunburst/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Sunburst/index.ts | 3 +-
.../src/Sunburst/transformProps.ts | 2 +-
.../src/Timeseries/Area/controlPanel.tsx | 2 +-
.../src/Timeseries/Area/index.ts | 3 +-
.../src/Timeseries/Regular/Bar/controlPanel.tsx | 3 +-
.../src/Timeseries/Regular/Bar/index.ts | 3 +-
.../src/Timeseries/Regular/Line/controlPanel.tsx | 2 +-
.../src/Timeseries/Regular/Line/index.ts | 3 +-
.../Timeseries/Regular/Scatter/controlPanel.tsx | 2 +-
.../src/Timeseries/Regular/Scatter/index.ts | 3 +-
.../Timeseries/Regular/SmoothLine/controlPanel.tsx | 2 +-
.../src/Timeseries/Regular/SmoothLine/index.ts | 3 +-
.../src/Timeseries/Step/controlPanel.tsx | 2 +-
.../src/Timeseries/Step/index.ts | 3 +-
.../src/Timeseries/constants.ts | 2 +-
.../plugin-chart-echarts/src/Timeseries/index.ts | 3 +-
.../src/Timeseries/transformProps.ts | 2 +-
.../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 | 3 +-
.../src/Waterfall/constants.ts | 2 +-
.../src/Waterfall/controlPanel.tsx | 2 +-
.../plugin-chart-echarts/src/Waterfall/index.ts | 3 +-
.../plugins/plugin-chart-echarts/src/constants.ts | 3 +-
.../plugins/plugin-chart-echarts/src/controls.tsx | 3 +-
.../plugin-chart-echarts/src/utils/series.ts | 15 +-
.../test/Gantt/transformProps.test.ts | 1 -
.../plugin-chart-echarts/test/utils/series.test.ts | 17 +-
.../plugins/plugin-chart-handlebars/package.json | 2 +-
.../src/components/Handlebars/HandlebarsViewer.tsx | 2 +-
.../src/plugin/controlPanel.tsx | 2 +-
.../src/plugin/controls/columns.tsx | 3 +-
.../src/plugin/controls/handlebarTemplate.tsx | 3 +-
.../src/plugin/controls/includeTime.ts | 2 +-
.../src/plugin/controls/metrics.tsx | 2 +-
.../src/plugin/controls/orderBy.tsx | 2 +-
.../src/plugin/controls/queryMode.tsx | 3 +-
.../src/plugin/controls/shared.ts | 8 +-
.../src/plugin/controls/style.tsx | 2 +-
.../plugin-chart-handlebars/src/plugin/index.ts | 3 +-
.../src/PivotTableChart.tsx | 2 +-
.../src/plugin/controlPanel.tsx | 2 +-
.../plugin-chart-pivot-table/src/plugin/index.ts | 2 +-
.../src/react-pivottable/TableRenderers.jsx | 3 +-
.../src/react-pivottable/utilities.js | 2 +-
.../plugins/plugin-chart-table/package.json | 1 -
.../src/DataTable/components/SelectPageSize.tsx | 2 +-
.../src/DataTable/hooks/useSticky.tsx | 2 +-
.../plugins/plugin-chart-table/src/TableChart.tsx | 14 +-
.../plugins/plugin-chart-table/src/consts.ts | 2 +-
.../plugin-chart-table/src/controlPanel.tsx | 2 +-
.../plugins/plugin-chart-table/src/index.ts | 3 +-
.../plugin-chart-table/src/transformProps.ts | 2 +-
.../plugin-chart-table/test/TableChart.test.tsx | 72 +
.../plugins/plugin-chart-table/test/testData.ts | 1 +
.../src/plugin/controlPanel.tsx | 3 +-
.../plugin/controls/ColorSchemeControl/index.tsx | 2 +-
.../src/plugin/controls/RotationControl.tsx | 2 +-
.../plugin-chart-word-cloud/src/plugin/index.ts | 3 +-
superset-frontend/spec/helpers/shim.tsx | 8 +-
superset-frontend/spec/helpers/testing-library.tsx | 3 +-
.../src/SqlLab/actions/sqlLab.test.js | 195 ++-
.../src/SqlLab/actions/{sqlLab.js => sqlLab.ts} | 824 +++++++---
.../SqlLab/components/AceEditorWrapper/index.tsx | 26 +-
.../components/AceEditorWrapper/useAnnotations.ts | 3 +-
.../AceEditorWrapper/useKeywords.test.ts | 6 +-
.../components/AceEditorWrapper/useKeywords.ts | 9 +-
.../src/SqlLab/components/App/index.tsx | 2 +-
.../src/SqlLab/components/AppLayout/index.tsx | 22 +-
.../src/SqlLab/components/ColumnElement/index.tsx | 2 +-
.../EditorAutoSync/EditorAutoSync.test.tsx | 6 +-
.../src/SqlLab/components/EditorAutoSync/index.tsx | 2 +-
.../EstimateQueryCostButton.test.tsx | 28 +-
.../components/EstimateQueryCostButton/index.tsx | 11 +-
.../components/ExploreCtasResultsButton/index.tsx | 3 +-
.../components/ExploreResultsButton/index.tsx | 2 +-
.../src/SqlLab/components/HighlightedSql/index.tsx | 2 +-
.../components/KeyboardShortcutButton/index.tsx | 2 +-
.../SqlLab/components/QueryAutoRefresh/index.tsx | 2 +-
.../src/SqlLab/components/QueryHistory/index.tsx | 3 +-
.../QueryLimitSelect/QueryLimitSelect.test.tsx | 3 +-
.../SqlLab/components/QueryLimitSelect/index.tsx | 30 +-
.../components/QueryTable/QueryTable.test.tsx | 97 +-
.../src/SqlLab/components/QueryTable/index.tsx | 111 +-
.../src/SqlLab/components/QueryTable/styles.ts | 7 +
.../SqlLab/components/ResultSet/ResultSet.test.tsx | 141 ++
.../src/SqlLab/components/ResultSet/index.tsx | 56 +-
.../RunQueryActionButton.test.tsx | 1 -
.../components/RunQueryActionButton/index.tsx | 40 +-
.../SaveDatasetActionButton.test.tsx | 39 +-
.../components/SaveDatasetActionButton/index.tsx | 49 +-
.../SqlLab/components/SaveDatasetModal/index.tsx | 8 +-
.../SqlLab/components/SaveQuery/SaveQuery.test.tsx | 23 +-
.../src/SqlLab/components/SaveQuery/index.tsx | 24 +-
.../components/ScheduleQueryButton/index.tsx | 2 +-
.../SqlLab/components/ShareSqlLabQuery/index.tsx | 13 +-
.../src/SqlLab/components/SouthPane/Results.tsx | 3 +-
.../src/SqlLab/components/SouthPane/index.tsx | 29 +-
.../SqlLab/components/SqlEditor/SqlEditor.test.tsx | 6 +-
.../src/SqlLab/components/SqlEditor/index.tsx | 260 ++--
.../SqlLab/components/SqlEditorLeftBar/index.tsx | 91 +-
.../SqlLab/components/SqlEditorTabHeader/index.tsx | 3 +-
.../SqlEditorTopBar/SqlEditorTopBar.test.tsx | 130 ++
.../SqlLab/components/SqlEditorTopBar/index.tsx | 62 +
.../SqlEditorTopBar/useDatabaseSelector.test.ts | 320 ++++
.../SqlEditorTopBar/useDatabaseSelector.ts | 126 ++
.../components/StatusBar/StatusBar.test.tsx} | 28 +-
.../src/SqlLab/components/StatusBar/index.tsx | 57 +
.../SqlLab/components/TabbedSqlEditors/index.tsx | 43 +-
.../src/SqlLab/components/TableElement/index.tsx | 4 +-
.../src/SqlLab/components/TablePreview/index.tsx | 3 +-
.../components/TemplateParamsEditor/index.tsx | 2 +-
superset-frontend/src/SqlLab/constants.ts | 5 +-
superset-frontend/src/SqlLab/contributions.ts | 4 +-
.../middlewares/persistSqlLabStateEnhancer.js | 136 --
.../middlewares/persistSqlLabStateEnhancer.ts | 185 +++
.../src/SqlLab/reducers/getInitialState.ts | 2 +-
.../src/SqlLab/reducers/{sqlLab.js => sqlLab.ts} | 336 +++--
.../src/SqlLab/utils/newQueryTabName.ts | 2 +-
.../src/components/AlteredSliceTag/index.tsx | 2 +-
.../src/components/AuditInfo/index.tsx | 2 +-
superset-frontend/src/components/Chart/Chart.tsx | 3 +-
.../{ChartContainer.jsx => ChartContainer.tsx} | 6 +-
.../Chart/ChartContextMenu/ChartContextMenu.tsx | 2 +-
.../src/components/Chart/ChartRenderer.jsx | 16 +-
.../src/components/Chart/DrillBy/DrillByModal.tsx | 2 +-
.../components/Chart/DrillBy/DrillBySubmenu.tsx | 2 +-
.../Chart/DrillBy/useDisplayModeToggle.tsx | 2 +-
.../Chart/DrillBy/useResultsTableView.tsx | 3 +-
.../Chart/DrillDetail/DrillDetailModal.tsx | 2 +-
.../Chart/DrillDetail/DrillDetailPane.tsx | 2 +-
.../Chart/DrillDetail/DrillDetailTableControls.tsx | 2 +-
.../src/components/Chart/chartAction.js | 16 +-
.../src/components/Chart/chartActions.test.js | 22 +
.../src/components/Chart/chartReducer.ts | 2 +-
.../Chart/useDrillDetailMenuItems/index.tsx | 2 +-
.../src/components/CopyToClipboard/index.tsx | 2 +-
.../src/components/DatabaseSelector/index.tsx | 3 +-
.../Datasource/ChangeDatasourceModal/index.tsx | 3 +-
.../Datasource/DatasourceModal/index.tsx | 2 +-
.../components/CollectionTable/index.tsx | 2 +-
.../DatasourceEditor/DatasourceEditor.jsx | 2 +-
.../components/DatasetUsageTab/index.tsx | 2 +-
.../tests/DatasourceEditorCurrency.test.tsx | 124 +-
.../src/components/Datasource/utils/index.js | 3 +-
.../src/components/Datasource/utils/utils.test.tsx | 2 +-
.../src/components/DynamicPlugins/index.tsx | 2 +-
.../src/components/ErrorBoundary/index.tsx | 2 +-
.../ErrorMessage/DatabaseErrorMessage.tsx | 3 +-
.../ErrorMessage/DatasetNotFoundErrorMessage.tsx | 2 +-
.../src/components/ErrorMessage/ErrorAlert.tsx | 2 +-
.../ErrorMessage/ErrorMessageWithStackTrace.tsx | 3 +-
.../ErrorMessage/FrontendNetworkErrorMessage.tsx | 2 +-
.../ErrorMessage/InvalidSQLErrorMessage.tsx | 2 +-
.../ErrorMessage/MarshmallowErrorMessage.tsx | 2 +-
.../ErrorMessage/OAuth2RedirectMessage.tsx | 3 +-
.../ErrorMessage/ParameterErrorMessage.tsx | 3 +-
.../ErrorMessage/TimeoutErrorMessage.tsx | 3 +-
.../src/components/FilterableTable/utils.tsx | 3 +-
.../src/components/GridTable/Header.tsx | 2 +-
.../src/components/GridTable/HeaderMenu.tsx | 2 +-
.../src/components/ImportModal/ErrorAlert.tsx | 2 +-
.../components/ImportModal/ImportErrorAlert.tsx | 2 +-
.../src/components/ImportModal/index.tsx | 2 +-
.../components/LastQueriedLabel/index.tsx} | 63 +-
.../src/components/ListView/CardSortSelect.tsx | 2 +-
.../src/components/ListView/CrossLinksTooltip.tsx | 2 +-
.../src/components/ListView/Filters/DateRange.tsx | 2 +-
.../components/ListView/Filters/NumericalRange.tsx | 2 +-
.../components/ListView/Filters/Search.test.tsx | 230 +++
.../src/components/ListView/Filters/Search.tsx | 5 +-
.../src/components/ListView/Filters/Select.tsx | 2 +-
.../src/components/ListView/Filters/index.test.tsx | 132 ++
.../src/components/ListView/Filters/index.tsx | 5 +-
.../src/components/ListView/ListView.tsx | 2 +-
superset-frontend/src/components/ListView/types.ts | 2 +
.../MenuListExtension/MenuListExtension.test.tsx | 374 +++++
.../src/components/MenuListExtension/index.tsx | 157 ++
.../{mockMessageToasts.js => mockMessageToasts.ts} | 6 +-
.../src/components/Modal/StandardModal.tsx | 2 +-
.../src/components/Modal/useModalValidation.tsx | 2 +-
.../src/components/RowCountLabel/index.tsx | 3 +-
.../components/SQLEditorWithValidation/index.tsx | 3 +-
.../StreamingExportModal/StreamingExportModal.tsx | 2 +-
.../useStreamingExport.test.ts | 959 ++++++++++++
.../StreamingExportModal/useStreamingExport.ts | 57 +-
.../src/components/TableSelector/index.tsx | 7 +-
superset-frontend/src/components/Tag/utils.tsx | 2 +-
.../ViewListExtension/ViewListExtension.test.tsx | 198 +++
.../ViewListExtension/index.tsx} | 32 +-
superset-frontend/src/core/authentication/index.ts | 6 +-
superset-frontend/src/core/commands/index.ts | 12 +-
superset-frontend/src/core/environment/index.ts | 57 -
superset-frontend/src/core/extensions/index.ts | 11 +-
superset-frontend/src/core/index.ts | 1 -
superset-frontend/src/core/sqlLab/index.ts | 139 +-
.../dashboard/actions/chartCustomizationActions.ts | 3 +-
.../src/dashboard/actions/dashboardInfo.ts | 3 +-
.../src/dashboard/actions/dashboardLayout.js | 2 +-
.../src/dashboard/actions/dashboardState.js | 16 +-
.../src/dashboard/actions/sliceEntities.ts | 2 +-
.../components/AddSliceCard/AddSliceCard.tsx | 3 +-
.../src/dashboard/components/AnchorLink/index.tsx | 2 +-
.../components/BuilderComponentPane/index.tsx | 2 +-
.../components/ColorSchemeControlWrapper.tsx | 3 +-
.../src/dashboard/components/ColorSchemeSelect.tsx | 2 +-
.../src/dashboard/components/Dashboard.jsx | 2 +-
.../src/dashboard/components/Dashboard.test.jsx | 69 +
.../DashboardBuilder/DashboardBuilder.tsx | 3 +-
.../src/dashboard/components/DashboardGrid.jsx | 4 +-
.../dashboard/components/EmbeddedModal/index.tsx | 2 +-
.../components/FiltersBadge/DetailsPanel/index.tsx | 2 +-
.../dashboard/components/FiltersBadge/index.tsx | 2 +-
.../dashboard/components/GroupByBadge/index.tsx | 2 +-
.../src/dashboard/components/Header/index.jsx | 3 +-
.../components/Header/useDashboardMetadataBar.tsx | 2 +-
.../Header/useHeaderActionsDropdownMenu.tsx | 2 +-
.../{MissingChart.jsx => MissingChart.tsx} | 13 +-
.../OverwriteConfirm/OverwriteConfirmModal.tsx | 2 +-
.../PropertiesModal/PropertiesModal.test.tsx | 16 +-
.../dashboard/components/PropertiesModal/index.tsx | 17 +-
.../PropertiesModal/sections/AccessSection.tsx | 3 +-
.../PropertiesModal/sections/AdvancedSection.tsx | 2 +-
.../PropertiesModal/sections/BasicInfoSection.tsx | 2 +-
.../sections/CertificationSection.tsx | 2 +-
.../PropertiesModal/sections/RefreshSection.tsx | 2 +-
.../sections/StylingSection.test.tsx | 45 +
.../PropertiesModal/sections/StylingSection.tsx | 51 +-
.../dashboard/components/PublishedStatus/index.tsx | 2 +-
.../RefreshFrequency/RefreshFrequencySelect.tsx | 2 +-
.../dashboard/components/RefreshIntervalModal.tsx | 2 +-
.../src/dashboard/components/SaveModal.tsx | 2 +-
.../src/dashboard/components/SliceAdder.tsx | 2 +-
.../src/dashboard/components/SliceHeader/index.tsx | 6 +-
.../ViewResultsModalTrigger.tsx | 2 +-
.../components/SliceHeaderControls/index.tsx | 25 +-
.../components/SliceHeaderControls/types.ts | 1 +
.../components/URLShortLinkButton/index.tsx | 9 +-
.../dnd/{handleHover.js => handleHover.ts} | 13 +-
.../dashboard/components/dnd/handleScroll/index.ts | 2 +-
.../{FilterFieldItem.jsx => FilterFieldItem.tsx} | 16 +-
.../{FilterFieldTree.jsx => FilterFieldTree.tsx} | 47 +-
.../components/filterscope/FilterScopeSelector.jsx | 3 +-
.../{FilterScopeTree.jsx => FilterScopeTree.tsx} | 45 +-
...reeNodes.jsx => renderFilterFieldTreeNodes.tsx} | 29 +-
...reeNodes.jsx => renderFilterScopeTreeNodes.tsx} | 36 +-
.../filterscope/{treeIcons.jsx => treeIcons.tsx} | 2 +-
.../components/gridComponents/Chart/Chart.jsx | 34 +-
.../gridComponents/Chart/{index.js => index.ts} | 0
.../components/gridComponents/Column/Column.jsx | 3 +-
.../gridComponents/Column/{index.js => index.ts} | 0
.../gridComponents/Divider/{index.js => index.ts} | 0
.../DynamicComponent/DynamicComponent.tsx | 3 +-
.../gridComponents/Markdown/Markdown.jsx | 3 +-
.../gridComponents/Markdown/{index.js => index.ts} | 0
.../components/gridComponents/Row/Row.tsx | 8 +-
.../components/gridComponents/Tab/Tab.jsx | 25 +-
.../components/gridComponents/Tab/Tab.test.tsx | 103 ++
.../gridComponents/Tab/{index.js => index.ts} | 0
.../components/gridComponents/Tabs/Tabs.jsx | 6 +-
.../gridComponents/Tabs/{index.js => index.ts} | 0
.../gridComponents/TabsRenderer/TabsRenderer.tsx | 30 +-
.../gridComponents/{index.js => index.ts} | 0
.../new/{NewColumn.jsx => NewColumn.tsx} | 2 +-
.../new/{NewDivider.jsx => NewDivider.tsx} | 2 +-
.../new/{NewHeader.jsx => NewHeader.tsx} | 2 +-
.../new/{NewMarkdown.jsx => NewMarkdown.tsx} | 2 +-
.../components/gridComponents/new/NewRow.tsx | 2 +-
.../new/{NewTabs.jsx => NewTabs.tsx} | 2 +-
.../components/menu/BackgroundStyleDropdown.tsx | 2 +-
.../components/menu/DownloadMenuItems/index.tsx | 4 +-
.../components/menu/MarkdownModeDropdown.tsx | 2 +-
.../components/menu/ShareMenuItems/index.tsx | 9 +-
.../ChartCustomization/ChartCustomizationForm.tsx | 2 +-
.../ChartCustomization/ChartCustomizationModal.tsx | 2 +-
.../ChartCustomizationTitleContainer.tsx | 2 +-
.../ChartCustomizationTitlePane.tsx | 2 +-
.../ChartCustomization/GroupByFilterCard.tsx | 3 +-
.../nativeFilters/ChartCustomization/utils.ts | 2 +-
.../nativeFilters/ConfigModal/ModalFooter.tsx | 2 +-
.../FilterBar/ActionButtons/index.tsx | 2 +-
.../FilterBar/CrossFilters/CrossFilterTitle.tsx | 3 +-
.../ScopingModal/ChartsScopingListPanel.tsx | 2 +-
.../CrossFilters/ScopingModal/ScopingModal.tsx | 3 +-
.../CrossFilters/ScopingModal/ScopingTreePanel.tsx | 3 +-
.../FilterBar/CrossFilters/VerticalCollapse.tsx | 2 +-
.../FilterBar/FilterBarSettings/index.tsx | 2 +-
.../FilterBar/FilterControls/FilterControls.tsx | 2 +-
.../FilterBar/FilterControls/FilterValue.tsx | 2 +-
.../FiltersOutOfScopeCollapsible/index.tsx | 3 +-
.../nativeFilters/FilterBar/Header/index.tsx | 2 +-
.../nativeFilters/FilterBar/Horizontal.tsx | 3 +-
.../nativeFilters/FilterBar/Vertical.tsx | 2 +-
.../nativeFilters/FilterBar/keyValue.tsx | 3 +-
.../nativeFilters/FilterCard/DependenciesRow.tsx | 3 +-
.../nativeFilters/FilterCard/ScopeRow.tsx | 3 +-
.../nativeFilters/FilterCard/TypeRow.tsx | 3 +-
.../nativeFilters/FilterCard/useFilterScope.ts | 3 +-
.../FiltersConfigModal/DividerConfigForm.tsx | 3 +-
.../FiltersConfigModal/FilterTitleContainer.tsx | 19 +-
.../FiltersConfigModal/FilterTitlePane.tsx | 3 +-
.../FiltersConfigForm/ColumnSelect.tsx | 2 +-
.../FiltersConfigForm/DatasetSelect.tsx | 2 +-
.../FiltersConfigForm/DefaultValue.tsx | 2 +-
.../FiltersConfigForm/DependencyList.tsx | 2 +-
.../FiltersConfigForm/FilterScope/state.ts | 2 +-
.../FiltersConfigForm/FilterScope/utils.ts | 4 +-
.../FiltersConfigForm/FiltersConfigForm.tsx | 6 +-
.../FiltersConfigForm/RemovedFilter.tsx | 2 +-
.../FiltersConfigForm/getControlItemsMap.tsx | 3 +-
.../FiltersConfigModal/FiltersConfigForm/state.ts | 3 +-
.../FiltersConfigModal/FiltersConfigModal.tsx | 3 +-
.../Footer/CancelConfirmationAlert.tsx | 2 +-
.../FiltersConfigModal/Footer/Footer.tsx | 2 +-
.../nativeFilters/FiltersConfigModal/utils.ts | 2 +-
.../dashboard/components/nativeFilters/utils.ts | 2 +-
.../{DashboardGrid.jsx => DashboardGrid.tsx} | 7 +-
.../src/dashboard/containers/DashboardPage.tsx | 19 +-
.../{FilterScope.jsx => FilterScope.tsx} | 7 +-
.../containers/{SliceAdder.jsx => SliceAdder.tsx} | 17 +-
.../src/dashboard/hooks/useDownloadScreenshot.ts | 9 +-
.../src/dashboard/reducers/sliceEntities.ts | 2 +-
.../util/activeAllDashboardFilters.test.ts | 150 ++
.../dashboard/util/activeAllDashboardFilters.ts | 17 +-
.../src/dashboard/util/backgroundStyleOptions.ts | 2 +-
...h.js => getChartAndLabelComponentIdFromPath.ts} | 12 +-
...ieldNodesTree.js => getFilterFieldNodesTree.ts} | 27 +-
.../src/dashboard/util/getFilterScopeNodesTree.js | 2 +-
...ParentNodes.js => getFilterScopeParentNodes.ts} | 21 +-
....js => getSelectedChartIdForFilterScopeTree.ts} | 7 +-
.../src/dashboard/util/getSliceHeaderTooltip.tsx | 2 +-
.../src/dashboard/util/headerStyleOptions.ts | 2 +-
...ChildChartIds.js => findNonTabChildChartIds.ts} | 26 +-
...ComponentIds.js => findTopLevelComponentIds.ts} | 33 +-
...nent.js => getLoadStatsPerTopLevelComponent.ts} | 21 +-
.../src/dashboard/util/newComponentFactory.js | 2 +-
...terValues.js => serializeActiveFilterValues.ts} | 38 +-
...arentsList.js => updateComponentParentsList.ts} | 16 +-
superset-frontend/src/embedded/api.tsx | 4 +-
superset-frontend/src/embedded/index.tsx | 4 +-
superset-frontend/src/embedded/utils.ts | 3 +-
.../src/explore/actions/exploreActions.ts | 3 +-
.../src/explore/actions/saveModalActions.ts | 2 +-
.../src/explore/components/ControlHeader.tsx | 10 +-
.../components/ControlPanelsContainer.test.tsx | 2 +-
.../explore/components/ControlPanelsContainer.tsx | 2 +-
.../explore/components/DataTableControl/index.tsx | 8 +-
.../components/DataTablesPane/DataTablesPane.tsx | 3 +-
.../components/ResultsPaneOnDashboard.tsx | 2 +-
.../DataTablesPane/components/SamplesPane.tsx | 3 +-
.../components/SingleQueryResultPane.tsx | 2 +-
.../DataTablesPane/components/useResultsPane.tsx | 2 +-
.../DatasourcePanel/DatasourcePanelItem.tsx | 3 +-
.../explore/components/DatasourcePanel/index.tsx | 3 +-
.../DatasourcePanel/transformDatasourceFolders.ts | 3 +-
.../src/explore/components/EmbedCodeContent.jsx | 11 +-
.../components/ExploreChartHeader/index.jsx | 5 +-
.../ExploreChartHeader/useExploreMetadataBar.tsx | 3 +-
.../explore/components/ExploreChartPanel/index.tsx | 17 +-
.../components/ExploreViewContainer/index.jsx | 9 +-
.../components/ExportToCSVDropdown/index.tsx | 2 +-
.../explore/components/PropertiesModal/index.tsx | 2 +-
.../explore/components/RunQueryButton/index.tsx | 2 +-
.../src/explore/components/SaveModal.tsx | 9 +-
.../AnnotationLayer.test.tsx | 39 +-
.../{AnnotationLayer.jsx => AnnotationLayer.tsx} | 419 ++++--
.../{AnnotationTypes.js => AnnotationTypes.ts} | 42 +-
.../controls/AnnotationLayerControl/index.tsx | 2 +-
...undsControl.test.jsx => BoundsControl.test.tsx} | 0
.../explore/components/controls/BoundsControl.tsx | 2 +-
.../{CheckboxControl.jsx => CheckboxControl.tsx} | 52 +-
.../CollectionControl/{index.jsx => index.tsx} | 92 +-
.../ColorBreakpointPopoverControl.tsx | 3 +-
.../controls/ColorBreakpointsControl/index.tsx | 2 +-
.../controls/ColorSchemeControl/index.tsx | 2 +-
.../ColumnConfigControl/ColumnConfigControl.tsx | 2 +-
.../controls/ColumnConfigControl/constants.tsx | 3 +-
.../components/controls/ComparisonRangeLabel.tsx | 2 +-
.../ConditionalFormattingControl.tsx | 2 +-
.../FormattingPopoverContent.tsx | 2 +-
.../controls/ContourControl/ContourOption.tsx | 2 +-
.../ContourControl/ContourPopoverControl.tsx | 3 +-
.../components/controls/ContourControl/index.tsx | 2 +-
.../controls/CurrencyControl/CurrencyControl.tsx | 8 +-
.../DatasourceControl/DatasourceControl.test.tsx | 110 +-
.../DatasourceControl/{index.jsx => index.tsx} | 153 +-
.../controls/DateFilterControl/DateFilterLabel.tsx | 2 +-
.../DateFilterControl/components/AdvancedFrame.tsx | 3 +-
.../DateFilterControl/components/CalendarFrame.tsx | 2 +-
.../DateFilterControl/components/CommonFrame.tsx | 2 +-
.../components/CurrentCalendarFrame.tsx | 2 +-
.../DateFilterControl/components/CustomFrame.tsx | 3 +-
.../components/DateFunctionTooltip.tsx | 2 +-
.../DateFilterControl/components/DateLabel.tsx | 2 +-
.../controls/DateFilterControl/utils/constants.ts | 2 +-
.../DndColumnSelectControl/ColumnSelectPopover.tsx | 2 +-
.../ColumnSelectPopoverTrigger.tsx | 2 +-
.../DndAdhocFilterOption.tsx | 2 +-
.../DndColumnMetricSelect.tsx | 19 +-
.../DndColumnSelectControl/DndColumnSelect.tsx | 10 +-
...erTitle.jsx => DndColumnSelectPopoverTitle.tsx} | 13 +-
.../DndFilterSelect.test.tsx | 14 +-
.../DndColumnSelectControl/DndFilterSelect.tsx | 3 +-
.../DndColumnSelectControl/DndMetricSelect.tsx | 27 +-
.../DndColumnSelectControl/DndSelectLabel.tsx | 2 +-
.../controls/DndColumnSelectControl/Option.tsx | 2 +-
.../DndColumnSelectControl/utils/optionSelector.ts | 2 +-
.../{AdhocFilter.test.js => AdhocFilter.test.ts} | 0
.../AdhocFilter/{index.js => index.ts} | 110 +-
.../AdhocFilterControl/AdhocFilterControl.test.tsx | 49 +-
.../AdhocFilterControl/{index.jsx => index.tsx} | 164 +-
...er.test.jsx => AdhocFilterEditPopover.test.tsx} | 24 +-
.../{index.jsx => index.tsx} | 162 +-
...AdhocFilterEditPopoverSimpleTabContent.test.tsx | 133 +-
.../index.tsx | 90 +-
.../useAdvancedDataTypes.ts | 3 +-
.../AdhocFilterEditPopoverSqlTabContent/index.tsx | 2 +-
.../FilterControl/AdhocFilterOption/index.tsx | 25 +-
.../AdhocFilterPopoverTrigger/index.tsx | 2 +-
.../utils/useDatePickerInAdhocFilter.tsx | 9 +-
.../FilterControl/utils/useGetTimeRangeLabel.tsx | 31 +-
.../FixedOrMetricControl/{index.jsx => index.tsx} | 90 +-
.../controls/LayerConfigsControl/FlatLayerTree.tsx | 2 +-
.../LayerConfigsControl/LayerConfigsControl.tsx | 2 +-
.../LayerConfigsPopoverContent.tsx | 3 +-
.../controls/MapViewControl/ExtentTag.tsx | 2 +-
.../controls/MapViewControl/MapViewControl.tsx | 2 +-
.../MapViewControl/MapViewPopoverContent.tsx | 2 +-
.../controls/MatrixifyDimensionControl.tsx | 3 +-
.../{AdhocMetric.test.js => AdhocMetric.test.ts} | 4 +-
.../{AdhocMetric.js => AdhocMetric.ts} | 102 +-
.../{index.jsx => index.tsx} | 165 +-
.../MetricControl/AdhocMetricEditPopoverTitle.tsx | 2 +-
...cOption.test.jsx => AdhocMetricOption.test.tsx} | 27 +-
...AdhocMetricOption.jsx => AdhocMetricOption.tsx} | 46 +-
.../MetricControl/AdhocMetricPopoverTrigger.tsx | 23 +-
.../{AggregateOption.jsx => AggregateOption.tsx} | 20 +-
...on.test.jsx => FilterDefinitionOption.test.tsx} | 6 +-
...nitionOption.jsx => FilterDefinitionOption.tsx} | 21 +-
...nitionOption.jsx => MetricDefinitionOption.tsx} | 39 +-
...lue.test.jsx => MetricDefinitionValue.test.tsx} | 26 +-
...finitionValue.jsx => MetricDefinitionValue.tsx} | 31 +-
...icsControl.test.jsx => MetricsControl.test.tsx} | 17 +-
.../{MetricsControl.jsx => MetricsControl.tsx} | 96 +-
.../{adhocMetricType.js => adhocMetricType.ts} | 0
.../components/controls/MetricControl/types.ts | 2 +
.../controls/NumberControl/NumberControl.test.tsx | 50 +-
.../components/controls/NumberControl/index.tsx | 14 +-
.../components/controls/OptionControls/index.tsx | 6 +-
.../controls/SelectAsyncControl/index.tsx | 3 +-
...lectControl.test.jsx => SelectControl.test.tsx} | 34 +-
.../{SelectControl.jsx => SelectControl.tsx} | 155 +-
.../{SpatialControl.jsx => SpatialControl.tsx} | 125 +-
...eaControl.test.jsx => TextAreaControl.test.tsx} | 0
.../{TextAreaControl.jsx => TextAreaControl.tsx} | 106 +-
.../components/controls/TextControl/index.tsx | 4 +
.../{index.jsx => index.tsx} | 111 +-
.../src/explore/components/controls/ViewQuery.tsx | 3 +-
.../explore/components/controls/ViewQueryModal.tsx | 2 +-
.../components/controls/ViewQueryModalFooter.tsx | 3 +-
...rtControl.test.jsx => ViewportControl.test.tsx} | 0
.../{ViewportControl.jsx => ViewportControl.tsx} | 84 +-
.../components/controls/VizTypeControl/VizTile.tsx | 4 +-
.../controls/VizTypeControl/VizTypeGallery.tsx | 2 +-
.../components/controls/VizTypeControl/index.tsx | 3 +-
.../components/controls/XAxisSortControl.tsx | 16 +-
.../ZoomConfigControl/ZoomConfigControl.tsx | 2 +-
.../ZoomConfigControl/ZoomConfigsChart.tsx | 2 +-
.../components/controls/withAsyncVerification.tsx | 3 +-
.../DashboardsSubMenu.tsx | 2 +-
.../useExploreAdditionalActionsMenu/index.jsx | 30 +-
superset-frontend/src/explore/constants.ts | 2 +-
.../src/explore/controlPanels/Separator.ts | 3 +-
.../src/explore/controlPanels/sections.tsx | 2 +-
.../src/explore/controlUtils/controlUtils.test.tsx | 2 +-
.../src/explore/controlUtils/getColumnKeywords.tsx | 2 +-
.../explore/controlUtils/standardizedFormData.ts | 24 +-
.../src/explore/{controls.jsx => controls.tsx} | 81 +-
.../src/explore/exploreUtils/exportChart.test.ts | 173 +++
superset-frontend/src/explore/fixtures.tsx | 3 +-
.../{saveModalReducer.js => saveModalReducer.ts} | 29 +-
.../src/explore/{store.test.jsx => store.test.tsx} | 5 +-
.../src/explore/{store.js => store.ts} | 62 +-
.../src/extensions/ExtensionPlaceholder.tsx | 2 +-
.../src/extensions/ExtensionsList.tsx | 2 +-
.../src/extensions/ExtensionsManager.ts | 3 +-
.../src/extensions/ExtensionsStartup.test.tsx | 4 +-
.../src/extensions/ExtensionsStartup.tsx | 17 +-
.../src/features/alerts/AlertReportModal.tsx | 3 +-
.../alerts/components/AlertReportCronScheduler.tsx | 2 +-
.../features/alerts/components/AlertStatusIcon.tsx | 2 +-
.../alerts/components/NotificationMethod.tsx | 139 +-
.../features/alerts/components/RecipientIcon.tsx | 6 +
superset-frontend/src/features/alerts/types.ts | 2 +
.../src/features/allEntities/AllEntitiesTable.tsx | 2 +-
.../annotationLayers/AnnotationLayerModal.tsx | 2 +-
.../src/features/annotations/AnnotationModal.tsx | 2 +-
.../src/features/charts/ChartCard.tsx | 3 +-
.../src/features/cssTemplates/CssTemplateModal.tsx | 2 +-
.../src/features/dashboards/DashboardCard.tsx | 2 +-
.../DatabaseConnectionForm/CommonParameters.tsx | 2 +-
.../DatabaseConnectionForm/EncryptedField.tsx | 2 +-
.../DatabaseConnectionForm/TableCatalog.tsx | 2 +-
.../DatabaseConnectionForm/ValidatedInputField.tsx | 2 +-
.../databases/DatabaseModal/ExtraOptions.test.tsx | 2 +-
.../databases/DatabaseModal/ExtraOptions.tsx | 16 +-
.../databases/DatabaseModal/ModalHeader.tsx | 2 +-
.../databases/DatabaseModal/SSHTunnelForm.tsx | 2 +-
.../databases/DatabaseModal/SSHTunnelSwitch.tsx | 3 +-
.../databases/DatabaseModal/SqlAlchemyForm.tsx | 2 +-
.../databases/DatabaseModal/index.test.tsx | 81 +
.../src/features/databases/DatabaseModal/index.tsx | 61 +-
.../databases/UploadDataModel/ColumnsPreview.tsx | 2 +-
.../features/databases/UploadDataModel/index.tsx | 3 +-
.../AddDataset/DatasetPanel/DatasetPanel.tsx | 27 +-
.../AddDataset/DatasetPanel/MessageContent.tsx | 5 +-
.../datasets/AddDataset/DatasetPanel/index.tsx | 4 +-
.../datasets/AddDataset/EditDataset/index.tsx | 2 +-
.../datasets/AddDataset/Footer/Footer.test.tsx | 1 +
.../features/datasets/AddDataset/Footer/index.tsx | 12 +-
.../features/datasets/AddDataset/Header/index.tsx | 2 +-
.../datasets/AddDataset/LeftPanel/index.tsx | 2 +-
.../features/datasets/DatasetSelectLabel/index.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 +-
.../datasets/metadataBar/useDatasetMetadataBar.tsx | 2 +-
.../src/features/groups/GroupListModal.tsx | 2 +-
superset-frontend/src/features/groups/utils.ts | 3 +-
.../src/features/home/ActivityTable.tsx | 2 +-
superset-frontend/src/features/home/ChartTable.tsx | 2 +-
.../src/features/home/DashboardTable.tsx | 3 +-
superset-frontend/src/features/home/EmptyState.tsx | 2 +-
.../src/features/home/LanguagePicker.tsx | 2 +-
.../src/features/home/RightMenu.test.tsx | 7 +-
superset-frontend/src/features/home/RightMenu.tsx | 24 +-
.../src/features/home/SavedQueries.tsx | 46 +-
superset-frontend/src/features/home/SubMenu.tsx | 2 +-
.../src/features/home/commonMenuData.ts | 2 +-
.../src/features/queries/QueryPreviewModal.tsx | 2 +-
.../features/queries/SavedQueryPreviewModal.tsx | 2 +-
.../src/features/queries/SyntaxHighlighterCopy.tsx | 2 +-
.../ReportModal/HeaderReportDropdown/index.tsx | 2 +-
.../src/features/reports/ReportModal/actions.js | 3 +-
.../src/features/reports/ReportModal/index.tsx | 3 +-
superset-frontend/src/features/reports/types.ts | 2 +-
.../src/features/rls/RowLevelSecurityModal.tsx | 3 +-
superset-frontend/src/features/rls/constants.ts | 2 +-
.../src/features/roles/RoleFormItems.tsx | 2 +-
.../src/features/roles/RoleListAddModal.tsx | 2 +-
.../src/features/roles/RoleListDuplicateModal.tsx | 2 +-
.../src/features/roles/RoleListEditModal.tsx | 2 +-
.../src/features/tags/BulkTagModal.tsx | 3 +-
superset-frontend/src/features/tags/TagCard.tsx | 3 +-
superset-frontend/src/features/tags/TagModal.tsx | 3 +-
.../src/features/themes/ThemeModal.tsx | 2 +-
.../src/features/userInfo/UserInfoModal.tsx | 3 +-
.../src/features/users/UserListModal.tsx | 2 +-
superset-frontend/src/features/users/utils.ts | 3 +-
.../filters/components/Range/RangeFilterPlugin.tsx | 2 +-
.../src/filters/components/Range/controlPanel.ts | 2 +-
.../src/filters/components/Range/index.ts | 3 +-
.../components/Select/SelectFilterPlugin.tsx | 4 +-
.../src/filters/components/Select/controlPanel.ts | 3 +-
.../src/filters/components/Select/index.ts | 3 +-
.../src/filters/components/Time/controlPanel.ts | 2 +-
.../src/filters/components/Time/index.ts | 3 +-
.../TimeColumn/TimeColumnFilterPlugin.tsx | 3 +-
.../filters/components/TimeColumn/controlPanel.ts | 2 +-
.../src/filters/components/TimeColumn/index.ts | 3 +-
.../components/TimeGrain/TimeGrainFilterPlugin.tsx | 4 +-
.../filters/components/TimeGrain/controlPanel.ts | 2 +-
.../src/filters/components/TimeGrain/index.ts | 3 +-
.../src/hooks/apiResources/datasets.ts | 2 +-
superset-frontend/src/hooks/useThemeMenuItems.tsx | 2 +-
.../src/hooks/useUnsavedChangesPrompt/index.ts | 3 +-
superset-frontend/src/middleware/asyncEvent.ts | 2 +-
superset-frontend/src/pages/ActionLog/index.tsx | 2 +-
.../src/pages/AlertReportList/index.tsx | 3 +-
superset-frontend/src/pages/AllEntities/index.tsx | 2 +-
.../src/pages/AnnotationLayerList/index.tsx | 4 +-
.../src/pages/AnnotationList/index.tsx | 3 +-
superset-frontend/src/pages/Chart/index.tsx | 2 +-
.../src/pages/ChartCreation/ChartCreation.test.tsx | 227 +++
.../src/pages/ChartCreation/index.tsx | 42 +-
superset-frontend/src/pages/ChartList/index.tsx | 2 +-
.../src/pages/CssTemplateList/index.tsx | 3 +-
.../src/pages/DashboardList/index.tsx | 2 +-
superset-frontend/src/pages/DatabaseList/index.tsx | 3 +-
superset-frontend/src/pages/DatasetList/index.tsx | 3 +-
.../src/pages/ExecutionLogList/index.tsx | 2 +-
superset-frontend/src/pages/GroupsList/index.tsx | 3 +-
superset-frontend/src/pages/Home/index.tsx | 2 +-
superset-frontend/src/pages/Login/index.tsx | 3 +-
.../src/pages/QueryHistoryList/index.tsx | 3 +-
superset-frontend/src/pages/Register/index.tsx | 3 +-
superset-frontend/src/pages/RolesList/index.tsx | 4 +-
.../src/pages/RowLevelSecurityList/index.tsx | 4 +-
.../src/pages/SavedQueryList/index.tsx | 2 +-
superset-frontend/src/pages/Tags/index.tsx | 4 +-
superset-frontend/src/pages/ThemeList/index.tsx | 3 +-
superset-frontend/src/pages/UserInfo/index.tsx | 3 +-
.../src/pages/UserRegistrations/index.tsx | 3 +-
superset-frontend/src/pages/UsersList/index.tsx | 2 +-
superset-frontend/src/preamble.ts | 10 +-
superset-frontend/src/setup/setupClient.ts | 3 +-
superset-frontend/src/types/bootstrapTypes.ts | 4 +-
superset-frontend/src/utils/downloadAsImage.tsx | 2 +-
superset-frontend/src/utils/downloadAsPdf.ts | 3 +-
superset-frontend/src/utils/export.test.ts | 57 +-
superset-frontend/src/utils/export.ts | 8 +-
superset-frontend/src/utils/fetchOptions.ts | 3 +-
.../utils/getChartRequiredFieldsMissingMessage.ts | 2 +-
.../src/utils/getControlsForVizType.js | 52 -
superset-frontend/src/utils/reducerUtils.js | 71 -
superset-frontend/src/utils/urlUtils.ts | 67 +-
superset-frontend/src/views/CRUD/hooks.ts | 2 +-
superset-frontend/src/views/CRUD/utils.tsx | 3 +-
.../src/visualizations/TimeTable/TimeTable.tsx | 2 +-
.../TimeTable/config/controlPanel/controlPanel.ts | 3 +-
.../src/visualizations/TimeTable/index.ts | 3 +-
.../ExampleComponent/ExampleComponent.tsx | 3 +-
superset-websocket/package-lock.json | 461 +++---
superset-websocket/package.json | 16 +-
.../utils/client-ws-app/package-lock.json | 12 +-
superset/charts/schemas.py | 7 +
superset/commands/database/validate_sql.py | 44 +
superset/commands/report/alert.py | 66 +-
superset/commands/report/create.py | 35 +
superset/commands/report/exceptions.py | 15 +
superset/commands/report/execute.py | 18 +-
superset/commands/streaming_export/base.py | 55 +-
superset/common/query_context_processor.py | 1 +
superset/common/utils/query_cache_manager.py | 11 +
superset/config.py | 3 +
superset/dashboards/schemas.py | 2 +
superset/db_engine_specs/athena.py | 40 +
superset/db_engine_specs/base.py | 6 +-
superset/db_engine_specs/gsheets.py | 33 +
superset/db_engine_specs/starrocks.py | 155 +-
superset/db_engine_specs/trino.py | 61 +-
superset/extensions/discovery.py | 3 +-
superset/extensions/local_extensions_watcher.py | 33 +-
superset/extensions/utils.py | 55 +-
superset/initialization/__init__.py | 4 +-
superset/jinja_context.py | 19 +-
superset/mcp_service/CLAUDE.md | 6 +-
superset/mcp_service/__main__.py | 2 +-
superset/mcp_service/app.py | 24 +-
superset/mcp_service/chart/schemas.py | 76 +-
superset/mcp_service/chart/tool/__init__.py | 2 -
superset/mcp_service/chart/tool/generate_chart.py | 6 +-
.../chart/tool/get_chart_available_filters.py | 50 -
superset/mcp_service/chart/tool/get_chart_data.py | 95 +-
superset/mcp_service/chart/tool/list_charts.py | 42 +-
superset/mcp_service/common/schema_discovery.py | 422 ++++++
superset/mcp_service/dashboard/schemas.py | 56 +-
superset/mcp_service/dashboard/tool/__init__.py | 2 -
.../tool/get_dashboard_available_filters.py | 49 -
.../mcp_service/dashboard/tool/list_dashboards.py | 68 +-
superset/mcp_service/dataset/schemas.py | 61 +-
superset/mcp_service/dataset/tool/__init__.py | 2 -
.../dataset/tool/get_dataset_available_filters.py | 49 -
superset/mcp_service/dataset/tool/list_datasets.py | 43 +-
.../mcp_service/docs/tool-search-optimization.md | 2 +-
superset/mcp_service/mcp_core.py | 120 +-
superset/mcp_service/server.py | 4 +-
superset/mcp_service/sql_lab/execute_sql_core.py | 221 ---
superset/mcp_service/sql_lab/schemas.py | 42 +-
superset/mcp_service/sql_lab/sql_lab_utils.py | 243 ---
superset/mcp_service/sql_lab/tool/execute_sql.py | 136 +-
superset/mcp_service/system/resources/__init__.py | 5 +-
.../system/resources/schema_discovery.py | 196 +++
superset/mcp_service/system/tool/__init__.py | 2 +
superset/mcp_service/system/tool/get_schema.py | 167 +++
superset/mcp_service/system/tool/health_check.py | 3 +-
superset/mcp_service/utils/schema_utils.py | 21 +-
superset/models/helpers.py | 20 +-
superset/reports/models.py | 1 +
superset/reports/notifications/__init__.py | 1 +
superset/reports/notifications/webhook.py | 144 ++
superset/reports/schemas.py | 2 +-
superset/security/guest_token.py | 3 +-
superset/security/manager.py | 124 +-
superset/sql/parse.py | 2 +-
superset/sqllab/query_render.py | 23 +-
superset/tasks/async_queries.py | 19 +-
superset/utils/core.py | 1 +
superset/utils/date_parser.py | 10 +-
superset/utils/excel.py | 2 +-
superset/utils/webdriver.py | 2 +
superset/views/base.py | 2 +
superset/views/datasource/utils.py | 6 +
superset/views/utils.py | 2 +-
tests/integration_tests/databases/api_tests.py | 109 ++
tests/integration_tests/fixtures/__init__.py | 1 +
tests/integration_tests/fixtures/public_role.py | 18 +
tests/integration_tests/reports/alert_tests.py | 8 +-
tests/integration_tests/security_tests.py | 99 ++
.../commands/databases/validate_sql_test.py | 279 ++++
tests/unit_tests/commands/report/alert_test.py | 496 ++++++
.../commands/report/test_create_recipients.py | 179 +++
tests/unit_tests/db_engine_specs/test_athena.py | 70 +
tests/unit_tests/db_engine_specs/test_base.py | 49 +
tests/unit_tests/db_engine_specs/test_gsheets.py | 5 +
tests/unit_tests/db_engine_specs/test_starrocks.py | 116 +-
tests/unit_tests/db_engine_specs/test_trino.py | 309 +++-
tests/unit_tests/extensions/test_types.py | 258 ++++
tests/unit_tests/jinja_context_test.py | 54 +
.../mcp_service/chart/tool/test_generate_chart.py | 21 +-
.../mcp_service/chart/tool/test_get_chart_data.py | 99 ++
.../mcp_service/chart/tool/test_list_charts.py | 48 +-
.../dashboard/tool/test_dashboard_tools.py | 135 +-
.../mcp_service/dataset/tool/test_dataset_tools.py | 133 +-
.../mcp_service/sql_lab/tool/test_execute_sql.py | 490 +++---
.../mcp_service/system/tool/test_get_schema.py | 368 +++++
.../mcp_service/system/tool/test_mcp_core.py | 152 +-
.../mcp_service/test_mcp_tool_registration.py | 42 +-
.../reports/notifications/webhook_tests.py | 225 +++
.../security/exclude_users_filter_test.py | 165 ++
tests/unit_tests/sql/parse_tests.py | 14 +
tests/unit_tests/sql_lab_test.py | 2 +-
tests/unit_tests/tasks/test_async_queries.py | 96 ++
tests/unit_tests/utils/date_parser_tests.py | 47 +
.../unit_tests/views/datasource}/__init__.py | 0
tests/unit_tests/views/datasource/utils_test.py | 217 +++
1077 files changed, 27982 insertions(+), 7805 deletions(-)
create mode 100644 .envrc.example
create mode 100644 CHANGELOG/6.0.0.md
delete mode 100644 RESOURCES/INTHEWILD.md
create mode 100644 RESOURCES/INTHEWILD.yaml
create mode 100644 docker/.env-local.example
create mode 100644 docs/developer_portal/extensions/dependencies.md
create mode 100644 docs/netlify.toml
create mode 100644 docs/src/pages/inTheWild.tsx
create mode 100644 docs/src/theme/Admonition/Types.js
copy
superset-frontend/packages/superset-ui-chart-controls/src/components/ColumnTypeLabel/type-icons/svgType.d.ts
=> docs/src/types/yaml.d.ts (86%)
rename docs/static/img/extensions/{api_explorer.png => api-explorer.png} (100%)
create mode 100644 docs/static/img/extensions/gsheets-export.png
create mode 100644 docs/static/img/extensions/parquet-export.png
create mode 100644 docs/static/img/extensions/query-comparison.png
create mode 100644 docs/static/img/extensions/query-estimator.png
create mode 100644 docs/static/img/extensions/result-stats.png
rename docs/static/img/extensions/{sql_flow_visualizer.png =>
sql-flow-visualizer.png} (100%)
create mode 100644 docs/static/img/extensions/sql-snippets.png
create mode 100644 docs/static/img/logos/cirrus.svg
create mode 100644
"docs/static/img/logos/hollyland\347\214\233\347\216\233.svg"
create mode 100644 docs/static/img/logos/plaidcloud.svg
create mode 100644 docs/static/img/logos/preset.svg
create mode 100644 docs/static/img/logos/vlmedia.svg
create mode 100644 docs/static/llms.txt
create mode 100755 scripts/docker-compose-up.sh
create mode 100644
superset-extensions-cli/src/superset_extensions_cli/templates/.gitignore.j2
copy superset/charts/data/query_context_cache_loader.py =>
superset-frontend/netlify.toml (61%)
delete mode 100644
superset-frontend/packages/superset-core/src/api/environment.ts
create mode 100644
superset-frontend/packages/superset-core/src/spec/utils/logging.test.ts
rename superset-frontend/packages/{superset-ui-core/src =>
superset-core/src/ui}/translation/README.md (100%)
rename superset-frontend/packages/{superset-ui-core/src =>
superset-core/src/ui}/translation/Translator.ts (98%)
rename superset-frontend/packages/{superset-ui-core/src =>
superset-core/src/ui}/translation/TranslatorSingleton.ts (100%)
rename superset-frontend/packages/{superset-ui-core/src =>
superset-core/src/ui}/translation/index.ts (94%)
rename superset-frontend/packages/{superset-ui-core/src =>
superset-core/src/ui}/translation/types/index.ts (100%)
rename superset-frontend/packages/{superset-ui-core/src =>
superset-core/src/ui}/translation/types/jed.ts (100%)
copy superset-frontend/packages/{superset-ui-core/src/dynamic-plugins =>
superset-core/src/utils}/index.ts (94%)
rename superset-frontend/packages/{superset-ui-core =>
superset-core}/src/utils/logging.ts (95%)
rename superset-frontend/packages/{superset-ui-core =>
superset-core}/types/external.d.ts (100%)
delete mode 100644
superset-frontend/packages/superset-ui-core/test/translation/Translator.test.ts
delete mode 100644
superset-frontend/packages/superset-ui-core/test/translation/TranslatorSingleton.test.ts
delete mode 100644
superset-frontend/packages/superset-ui-core/test/translation/index.test.ts
delete mode 100644
superset-frontend/packages/superset-ui-core/test/translation/languagePacks/en.ts
delete mode 100644
superset-frontend/packages/superset-ui-core/test/translation/languagePacks/zh.ts
delete mode 100644
superset-frontend/packages/superset-ui-core/test/utils/logging.test.ts
create mode 100644
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/Scatter/buildQuery.test.ts
create mode 100644
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/Scatter/transformProps.test.ts
create mode 100644
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/transformUtils.test.ts
create mode 100644
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/utils/metricUtils.test.ts
create mode 100644
superset-frontend/plugins/legacy-preset-chart-deckgl/src/layers/utils/metricUtils.ts
create mode 100644
superset-frontend/plugins/plugin-chart-ag-grid-table/src/utils/agGridFilterConverter.ts
create mode 100644
superset-frontend/plugins/plugin-chart-ag-grid-table/src/utils/filterStateManager.ts
copy superset-frontend/{src/dashboard/types/chartState.ts =>
plugins/plugin-chart-ag-grid-table/src/utils/getInitialFilterModel.ts} (53%)
create mode 100644
superset-frontend/plugins/plugin-chart-ag-grid-table/test/utils/agGridFilterConverter.test.ts
create mode 100644
superset-frontend/plugins/plugin-chart-ag-grid-table/test/utils/dateFilterComparator.test.ts
create mode 100644
superset-frontend/plugins/plugin-chart-ag-grid-table/test/utils/filterStateManager.test.ts
create mode 100644
superset-frontend/plugins/plugin-chart-ag-grid-table/test/utils/getInitialFilterModel.test.ts
rename superset-frontend/src/SqlLab/actions/{sqlLab.js => sqlLab.ts} (59%)
create mode 100644
superset-frontend/src/SqlLab/components/SqlEditorTopBar/SqlEditorTopBar.test.tsx
create mode 100644
superset-frontend/src/SqlLab/components/SqlEditorTopBar/index.tsx
create mode 100644
superset-frontend/src/SqlLab/components/SqlEditorTopBar/useDatabaseSelector.test.ts
create mode 100644
superset-frontend/src/SqlLab/components/SqlEditorTopBar/useDatabaseSelector.ts
copy
superset-frontend/src/{explore/components/controls/MetricControl/AggregateOption.test.tsx
=> SqlLab/components/StatusBar/StatusBar.test.tsx} (57%)
create mode 100644 superset-frontend/src/SqlLab/components/StatusBar/index.tsx
delete mode 100644
superset-frontend/src/SqlLab/middlewares/persistSqlLabStateEnhancer.js
create mode 100644
superset-frontend/src/SqlLab/middlewares/persistSqlLabStateEnhancer.ts
rename superset-frontend/src/SqlLab/reducers/{sqlLab.js => sqlLab.ts} (67%)
rename superset-frontend/src/components/Chart/{ChartContainer.jsx =>
ChartContainer.tsx} (89%)
copy
superset-frontend/{packages/superset-ui-core/src/components/IconTooltip/IconTooltip.stories.tsx
=> src/components/LastQueriedLabel/index.tsx} (54%)
create mode 100644
superset-frontend/src/components/ListView/Filters/Search.test.tsx
create mode 100644
superset-frontend/src/components/ListView/Filters/index.test.tsx
create mode 100644
superset-frontend/src/components/MenuListExtension/MenuListExtension.test.tsx
create mode 100644 superset-frontend/src/components/MenuListExtension/index.tsx
rename superset-frontend/src/components/MessageToasts/{mockMessageToasts.js =>
mockMessageToasts.ts} (85%)
create mode 100644
superset-frontend/src/components/ViewListExtension/ViewListExtension.test.tsx
copy superset-frontend/src/{core/extensions/index.ts =>
components/ViewListExtension/index.tsx} (55%)
delete mode 100644 superset-frontend/src/core/environment/index.ts
rename superset-frontend/src/dashboard/components/{MissingChart.jsx =>
MissingChart.tsx} (84%)
rename superset-frontend/src/dashboard/components/dnd/{handleHover.js =>
handleHover.ts} (84%)
rename
superset-frontend/src/dashboard/components/filterscope/{FilterFieldItem.jsx =>
FilterFieldItem.tsx} (81%)
rename
superset-frontend/src/dashboard/components/filterscope/{FilterFieldTree.jsx =>
FilterFieldTree.tsx} (54%)
rename
superset-frontend/src/dashboard/components/filterscope/{FilterScopeTree.jsx =>
FilterScopeTree.tsx} (58%)
rename
superset-frontend/src/dashboard/components/filterscope/{renderFilterFieldTreeNodes.jsx
=> renderFilterFieldTreeNodes.tsx} (63%)
rename
superset-frontend/src/dashboard/components/filterscope/{renderFilterScopeTreeNodes.jsx
=> renderFilterScopeTreeNodes.tsx} (71%)
rename superset-frontend/src/dashboard/components/filterscope/{treeIcons.jsx
=> treeIcons.tsx} (97%)
rename
superset-frontend/src/dashboard/components/gridComponents/Chart/{index.js =>
index.ts} (100%)
rename
superset-frontend/src/dashboard/components/gridComponents/Column/{index.js =>
index.ts} (100%)
rename
superset-frontend/src/dashboard/components/gridComponents/Divider/{index.js =>
index.ts} (100%)
rename
superset-frontend/src/dashboard/components/gridComponents/Markdown/{index.js =>
index.ts} (100%)
rename superset-frontend/src/dashboard/components/gridComponents/Tab/{index.js
=> index.ts} (100%)
rename
superset-frontend/src/dashboard/components/gridComponents/Tabs/{index.js =>
index.ts} (100%)
rename superset-frontend/src/dashboard/components/gridComponents/{index.js =>
index.ts} (100%)
rename
superset-frontend/src/dashboard/components/gridComponents/new/{NewColumn.jsx =>
NewColumn.tsx} (96%)
rename
superset-frontend/src/dashboard/components/gridComponents/new/{NewDivider.jsx
=> NewDivider.tsx} (96%)
rename
superset-frontend/src/dashboard/components/gridComponents/new/{NewHeader.jsx =>
NewHeader.tsx} (96%)
rename
superset-frontend/src/dashboard/components/gridComponents/new/{NewMarkdown.jsx
=> NewMarkdown.tsx} (96%)
rename
superset-frontend/src/dashboard/components/gridComponents/new/{NewTabs.jsx =>
NewTabs.tsx} (96%)
rename superset-frontend/src/dashboard/containers/{DashboardGrid.jsx =>
DashboardGrid.tsx} (86%)
rename superset-frontend/src/dashboard/containers/{FilterScope.jsx =>
FilterScope.tsx} (85%)
rename superset-frontend/src/dashboard/containers/{SliceAdder.jsx =>
SliceAdder.tsx} (82%)
rename
superset-frontend/src/dashboard/util/{getChartAndLabelComponentIdFromPath.js =>
getChartAndLabelComponentIdFromPath.ts} (77%)
rename superset-frontend/src/dashboard/util/{getFilterFieldNodesTree.js =>
getFilterFieldNodesTree.ts} (70%)
rename superset-frontend/src/dashboard/util/{getFilterScopeParentNodes.js =>
getFilterScopeParentNodes.ts} (70%)
rename
superset-frontend/src/dashboard/util/{getSelectedChartIdForFilterScopeTree.js
=> getSelectedChartIdForFilterScopeTree.ts} (91%)
rename
superset-frontend/src/dashboard/util/logging/{findNonTabChildChartIds.js =>
findNonTabChildChartIds.ts} (75%)
rename
superset-frontend/src/dashboard/util/logging/{findTopLevelComponentIds.js =>
findTopLevelComponentIds.ts} (77%)
rename
superset-frontend/src/dashboard/util/logging/{getLoadStatsPerTopLevelComponent.js
=> getLoadStatsPerTopLevelComponent.ts} (71%)
rename superset-frontend/src/dashboard/util/{serializeActiveFilterValues.js =>
serializeActiveFilterValues.ts} (59%)
rename superset-frontend/src/dashboard/util/{updateComponentParentsList.js =>
updateComponentParentsList.ts} (85%)
rename
superset-frontend/src/explore/components/controls/AnnotationLayerControl/{AnnotationLayer.jsx
=> AnnotationLayer.tsx} (74%)
rename
superset-frontend/src/explore/components/controls/AnnotationLayerControl/{AnnotationTypes.js
=> AnnotationTypes.ts} (67%)
rename
superset-frontend/src/explore/components/controls/{BoundsControl.test.jsx =>
BoundsControl.test.tsx} (100%)
rename superset-frontend/src/explore/components/controls/{CheckboxControl.jsx
=> CheckboxControl.tsx} (68%)
rename
superset-frontend/src/explore/components/controls/CollectionControl/{index.jsx
=> index.tsx} (66%)
rename
superset-frontend/src/explore/components/controls/DatasourceControl/{index.jsx
=> index.tsx} (80%)
rename
superset-frontend/src/explore/components/controls/DndColumnSelectControl/{DndColumnSelectPopoverTitle.jsx
=> DndColumnSelectPopoverTitle.tsx} (89%)
rename
superset-frontend/src/explore/components/controls/FilterControl/AdhocFilter/{AdhocFilter.test.js
=> AdhocFilter.test.ts} (100%)
rename
superset-frontend/src/explore/components/controls/FilterControl/AdhocFilter/{index.js
=> index.ts} (56%)
rename
superset-frontend/src/explore/components/controls/FilterControl/AdhocFilterControl/{index.jsx
=> index.tsx} (70%)
rename
superset-frontend/src/explore/components/controls/FilterControl/AdhocFilterEditPopover/{AdhocFilterEditPopover.test.jsx
=> AdhocFilterEditPopover.test.tsx} (89%)
rename
superset-frontend/src/explore/components/controls/FilterControl/AdhocFilterEditPopover/{index.jsx
=> index.tsx} (73%)
rename
superset-frontend/src/explore/components/controls/FixedOrMetricControl/{index.jsx
=> index.tsx} (69%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{AdhocMetric.test.js
=> AdhocMetric.test.ts} (98%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{AdhocMetric.js
=> AdhocMetric.ts} (62%)
rename
superset-frontend/src/explore/components/controls/MetricControl/AdhocMetricEditPopover/{index.jsx
=> index.tsx} (79%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{AdhocMetricOption.test.jsx
=> AdhocMetricOption.test.tsx} (90%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{AdhocMetricOption.jsx
=> AdhocMetricOption.tsx} (63%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{AggregateOption.jsx
=> AggregateOption.tsx} (74%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{FilterDefinitionOption.test.jsx
=> FilterDefinitionOption.test.tsx} (94%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{FilterDefinitionOption.jsx
=> FilterDefinitionOption.tsx} (81%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{MetricDefinitionOption.jsx
=> MetricDefinitionOption.tsx} (66%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{MetricDefinitionValue.test.jsx
=> MetricDefinitionValue.test.tsx} (83%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{MetricDefinitionValue.jsx
=> MetricDefinitionValue.tsx} (67%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{MetricsControl.test.jsx
=> MetricsControl.test.tsx} (92%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{MetricsControl.jsx
=> MetricsControl.tsx} (75%)
rename
superset-frontend/src/explore/components/controls/MetricControl/{adhocMetricType.js
=> adhocMetricType.ts} (100%)
rename
superset-frontend/src/explore/components/controls/{SelectControl.test.jsx =>
SelectControl.test.tsx} (94%)
rename superset-frontend/src/explore/components/controls/{SelectControl.jsx =>
SelectControl.tsx} (64%)
rename superset-frontend/src/explore/components/controls/{SpatialControl.jsx
=> SpatialControl.tsx} (71%)
rename
superset-frontend/src/explore/components/controls/{TextAreaControl.test.jsx =>
TextAreaControl.test.tsx} (100%)
rename superset-frontend/src/explore/components/controls/{TextAreaControl.jsx
=> TextAreaControl.tsx} (68%)
rename
superset-frontend/src/explore/components/controls/TimeSeriesColumnControl/{index.jsx
=> index.tsx} (81%)
rename
superset-frontend/src/explore/components/controls/{ViewportControl.test.jsx =>
ViewportControl.test.tsx} (100%)
rename superset-frontend/src/explore/components/controls/{ViewportControl.jsx
=> ViewportControl.tsx} (61%)
rename superset-frontend/src/explore/{controls.jsx => controls.tsx} (87%)
create mode 100644
superset-frontend/src/explore/exploreUtils/exportChart.test.ts
rename superset-frontend/src/explore/reducers/{saveModalReducer.js =>
saveModalReducer.ts} (71%)
rename superset-frontend/src/explore/{store.test.jsx => store.test.tsx} (95%)
rename superset-frontend/src/explore/{store.js => store.ts} (61%)
delete mode 100644 superset-frontend/src/utils/getControlsForVizType.js
delete mode 100644 superset-frontend/src/utils/reducerUtils.js
delete mode 100644
superset/mcp_service/chart/tool/get_chart_available_filters.py
create mode 100644 superset/mcp_service/common/schema_discovery.py
delete mode 100644
superset/mcp_service/dashboard/tool/get_dashboard_available_filters.py
delete mode 100644
superset/mcp_service/dataset/tool/get_dataset_available_filters.py
delete mode 100644 superset/mcp_service/sql_lab/execute_sql_core.py
delete mode 100644 superset/mcp_service/sql_lab/sql_lab_utils.py
create mode 100644 superset/mcp_service/system/resources/schema_discovery.py
create mode 100644 superset/mcp_service/system/tool/get_schema.py
create mode 100644 superset/reports/notifications/webhook.py
create mode 100644 tests/unit_tests/commands/databases/validate_sql_test.py
create mode 100644 tests/unit_tests/commands/report/alert_test.py
create mode 100644 tests/unit_tests/commands/report/test_create_recipients.py
create mode 100644 tests/unit_tests/extensions/test_types.py
create mode 100644
tests/unit_tests/mcp_service/chart/tool/test_get_chart_data.py
create mode 100644 tests/unit_tests/mcp_service/system/tool/test_get_schema.py
create mode 100644 tests/unit_tests/reports/notifications/webhook_tests.py
create mode 100644 tests/unit_tests/security/exclude_users_filter_test.py
copy {superset-core/src/superset_core/api =>
tests/unit_tests/views/datasource}/__init__.py (100%)
create mode 100644 tests/unit_tests/views/datasource/utils_test.py