This is an automated email from the ASF dual-hosted git repository.
hugh pushed a change to branch hm/ar-filters
in repository https://gitbox.apache.org/repos/asf/superset.git
from 276d0f6eaa working
add cde2d49c95 fix(datepicker): Full width datepicker on filter value
select (#32064)
add 0cd0fcdecb fix(ci): ephemeral env, handle different label, create
comment (#32040)
add 386aa93e24 fix: Histogram examples config (#32122)
add 8984f88a3e chore(timeseries charts): adjust legend width by padding
(#32030)
add 9aa8b09505 docs: incorrect psycopg2 package in k8s install
instructions (#31999)
add 53d944d013 fix: No virtual environment when running Docker translation
compiler (#32133)
add c64018d421 fix: Local tarball Docker container is missing zstd
dependency (#32135)
add c7c3b1b0e9 fix: move oauth2 capture to `get_sqla_engine` (#32137)
add ea5879bf2b fix(releasing): fix borked SVN-based image building process
(#32151)
add 6ed9dae2f7 fix(migrations): Handle no params in time comparison
migration (#32155)
add acf91e1f60 docs: fix typo in docker compose (#32171)
add e8990f4a36 fix: ScreenshotCachePayload serialization (#32156)
add 649a0dec6c feat: add TDengine.py driver to db_engine (#32041)
add 205cff3a94 feat: Add parseJson Handlebars Helper to Support Processing
Nested JSON Data (#31998)
add 5a8488af36 fix(docker): Docker python-translation-build (#32163)
add e97eb71a52 chore(deps): bump less from 4.2.1 to 4.2.2 in /docs (#32085)
add 389aae270b chore: add query context data tests (#32157)
add c5f4a7f302 feat: Add parseJson Handlebars Helper to Support Processing
Nested JSON Data (#31998)
add f9f8c5d07a fix(sqllab): correct URL format for SQL Lab permalinks
(#32154)
add f3e7c64de6 fix(virtual dataset sync): Sync virtual dataset columns
when changing the SQL query (#30903)
add 38c46fcafd docs(typo): PostgresQL corrected to PostgreSQL (#32188)
add bcc61bd933 refactor(Dropdown): Migrate Dropdown to Ant Design 5
(#31972)
add 2770bc0865 fix(sqllab): correct URL format for SQL Lab permalinks
(#32154)
add a144464506 fix: Adds an entry to UPDATING.md about
DISABLE_LEGACY_DATASOURCE_EDITOR (#32185)
add 06f8f8e608 fix: TDengine move tdengine.png to databases/ subfolder
(#32176)
add 0030f46d2d refactor(Popover): Upgrade Popover to Antd5 (#31973)
add 0f6bd5ea83 fix: handlebars html and css templates reset on dataset
update (#32195)
add f01493277f docs(docker-compose): remove extra backticks (#32206)
add 8d1fb9c82d fix: false negative on critical security related to
eslint-plugin-translation-vars (#32018)
add 1c3ec21e0f chore: migrating easy-to-migrate AntD vanilla components
(#32010)
add a78968c68e chore(ci): consolidate Node version reference in CI to
associated `.nvmrc` (#32192)
add 60bbd72028 feat(dropdown accessibility): Wrap dropdown triggers with
buttons for accessibility (#32189)
add 60424c4ccd chore(ci): fix ephemeral env null issue number (#32220)
add 31d6f5a639 chore(ci): fix ephemeral env null issue number (v2) (#32221)
add eec54affc3 fix: hidrate datasetsStatus (#32211)
add 3160607aaf docs: Permissions 'can this form get on UserInfoEditView'
and 'can this form get on UserInfoEditView' are not associated with Aplha and
Gamma by default (#32180)
add db70c7912c chore(fe): migrate 4 Enzyme-based tests to RTL (#31634)
add 650fa5ccfb fix(SaveDatasetModal): repairs field alignment in the
SaveDatasetModal component (#32222)
add d3b854a833 fix: set `Rich tooltip` -> 'Show percentage' to false by
default (#32212)
add 319a860f23 chore: Working toward killing enzyme and cleaning up test
noise. (#32207)
add 937d40cdde fix(sqllab): close the table tab (#32224)
add af3589fe91 fix(Scope): Correct issue where filters appear out of scope
when sort is unchecked. (#32115)
add 21348c418a chore(backend): replace insecure `shortid` usage for native
filter migration with native `uuid` Python implementation (#32235)
add 52563d3eea fix: Update 'Last modified' time when modifying RLS rules
(#32227)
add 5867b87680 docs: adding notes about using uv instead of raw pip
(#32239)
add 15fbb195e9 fix: remove sort values on stacked totals (#31333)
add 2c583d1584 feat: recursive metric definitions (#32228)
add ad057324b7 fix: upgrade to 3.11.11-slim-bookworm to address critical
vulnerabilities (#32240)
add 9c7835a244 docs(api): Improve api documentation for dashboard
endpoints(filter_state, permalink, embedded) (#32142)
add 9da30956c0 fix(Datasource): handle undefined datasource_type in
fetchSyncedColumns (#32218)
add fa09d8187a chore(deps): bump cryptography from 43.0.3 to 44.0.1
(#32236)
add ffe9244458 fix: Decimal values for Histogram bins (#32253)
add 460aec7bc9 build(fe/dev-deps): remove unused `esbuild` dev deps
(#32243)
add 321d105c42 chore(deps): bump dompurify from 3.2.3 to 3.2.4 in
/superset-frontend (#32270)
add dcc9628f31 fix(viz/table): selected column not shown in Conditional
Formatting popover (#32272)
add 734f8ed4c3 fix(sec): resolve Dependabot security alerts (#32274)
add 093135ff30 chore(be/deps): add comments for un-greppable Python
dependencies (#32259)
add 878bcbd8c7 chore(deps-dev): bump @babel/preset-env from 7.26.0 to
7.26.7 in /superset-frontend (#32103)
add e061116032 chore(deps-dev): bump typescript from 5.7.2 to 5.7.3 in
/docs (#32090)
add de2bce6f47 chore(tests): Trying to kill enzyme, part 2 (more RTL!)
(#32226)
add b269d920a9 chore(code owners): adding @mistercrunch to cypress/e2e
code owners (#32316)
add e422e3c620 feat(type-checking): Add type-checking pre-commit hooks
(#32261)
add d5a5bd46d2 fix: keep the tab order (#30888)
add e74efd3072 chore(deps-dev): bump @docusaurus/module-type-aliases from
3.6.3 to 3.7.0 in /docs (#32088)
add f9a43921c5 chore(deps): bump core-js from 3.39.0 to 3.40.0 in
/superset-frontend/packages/superset-ui-demo (#32066)
add 2d8892958e docs: various enhancements across `/docs` workspace
(#31921)
add b09bfd7889 chore(docs): Add RIADVICE to companies using Superset
(#32326)
add 6900bc1855 chore(readme): updating video on Readme page. (#32319)
add 9dcf788f47 chore(deps): bump @docsearch/react from 3.8.2 to 3.9.0 in
/docs (#32327)
add b207f0616d chore(deps): bump antd from 5.22.7 to 5.24.1 in /docs
(#32329)
add bb46dd93be chore(deps): bump swagger-ui-react from 5.18.2 to 5.19.0 in
/docs (#32330)
add 42a3c523ae fix: Download as PDF fails due to cache error (#32332)
add 7ce1a3445c fix: oauth2 trino (#31993)
add c27aee2b14 chore(duckdb): Bump duckdb-engine, duckdb versions (#32302)
add f820f9a976 chore(build): remove Lodash filter and noop usage in
`superset-frontend` (#32341)
add 422a07b382 fix: revert "fix: remove sort values on stacked totals
(#31333)" (#32337)
add 88cf2d5c39 fix(fe/dashboard-list): display modifier info for `Last
modified` data (#32035)
add 5140250421 ci(type-checking): run type-checking-frontend hook
sequentially (#32323)
add b06a9edfd6 chore(docs): Fix typo in security.mdx (#32349)
add 2c37ddb2f6 fix(roles): Add SqlLabPermalinkRestApi as default sqlab
roles. (#32284)
add 4c4b5e8c64 fix(SSHTunnelForm): make the password tooltip visible
(#32356)
add ace8a3adb7 refactor(DatabaseSelector): Changes the imported types from
antd-4 to antd-5 (#32314)
add 22fe985cfc fix(firebolt): allow backslach escape for single quotes
(#32350)
add 0f07d78e01 fix(docker): Configure nginx for consistent port mapping
and hot reloading (#32362)
add c583eec4c7 fix(eslint-hook): ensure eslint hook receives arguments
(#32333)
add 90651dfe3e fix(dev/ci): pre-commit fixes galore (#32352)
add bc02f05613 feat(number-format): adds memory data transfer rates in
binary and decimal format (#32264)
add b43e2ac8f4 chore(tests): converting enzyme to RTL, part 3 (#32363)
add 8dcae810d4 fix: clickhouse-connect engine SSH parameter (#32348)
add b0dac046e6 refactor(DrillDetailTableControls): Upgrade
DrillDetailTableControls component to Ant Design 5 (#32313)
add 83071d0e5f fix: ensure metric_macro expands templates (#32344)
add 00883c395c feat: allow importing encrypted_extra (#32339)
add 167dacc2e4 fix: ephemeral CI fetching task ENI (#32377)
add 793fbac405 chore(cleanup): removing accidentally committed
package/lock files. (#32365)
add 479a5d2f72 chore: Upgrade AG Grid to use tree shaking (#32334)
add a08c18febe docs(intro): broaden link to installation options (#32379)
add c02a0a00f4 fix: bump FAB to 4.5.4 (#32325)
add 822d72c57d fix(pinot): revert join and subquery flags (#32382)
add dae6acf028 chore(docs): update instructions for pypi distribution
(#32380)
add 00429558c2 docs: add shipmnts to users list (#32396)
add 1d823a0be5 chore(docs): fix typos (#32393)
add 74733ae310 feat: Adding the option and feature to enable borders with
color, opacity and width control on heatmaps along with white borders on
emphasis (#32358)
add f4105e9ed2 feat: default ports for SSH tunnel (#32403)
add 2c851b7580 feat(i18n): Add polish to default language (#31506)
add cf7ce31054 build(deps): bump major versions for
`math-expression-evaluator` and `fetch-mock` + clean up obsolete dev/override
packages (#32322)
add 789049d386 docs(config): fill in commonly connection string for
Oracle, Presto and SQL Server databases (#32385)
add 4d6b4f8343 feat(filter): adding inputs to Numerical Range Filter
(#31726)
add 128c45e2d3 fix: prevent nested transactions (#32401)
add 6317a91541 fix(viz): update nesting logic to handle multiple
dimensions in PartitionViz (#32290)
add eacb234872 docs: add SingleStore to the users list (#32421)
add 84b52b2323 fix(clickhouse): get_parameters_from_uri failing when
secure is true (#32423)
add d79f7b28c2 feat: Update database permissions in async mode (#32231)
add 61b72f0c0b fix(com/grid-comp/markdown): pin `remark-gfm` to v3 to
allow inline code block by backticks in Markdown (#32420)
add 5766c36372 fix(plugin-chart-echarts): remove erroneous upper bound
value (#32473)
add 5af4e61aff feat: improve GSheets OAuth2 (#32048)
add 6c3886aad0 fix(tooltip): displaying <a> tags correctly (#32488)
add ce367d6427 chore(deps-dev): bump @docusaurus/tsconfig from 3.6.3 to
3.7.0 in /docs (#32087)
add d7e0ee6ceb fix(docker compose): replace port 8088 with 9000 (#32481)
add 2b98f326e8 feat: cache the frontend's bootstrap data (#31996)
add fe33661821 chore(deps-dev): bump typescript from 5.1.6 to 5.8.2 in
/docs (#32452)
add 15cf06699a feat: security, user group support (#32121)
add 16b08e333d chore(deps-dev): bump webpack from 5.97.1 to 5.98.0 in
/docs (#32449)
add a4902a3685 chore(deps): bump antd from 5.24.1 to 5.24.2 in /docs
(#32447)
add 0d24ce0ef9 chore(deps-dev): bump @types/lodash from 4.17.14 to 4.17.16
in /superset-frontend (#32476)
add 93d759c689 chore(deps): bump swagger-ui-react from 5.19.0 to 5.20.0 in
/docs (#32454)
add ef08ccbaa2 chore(deps-dev): bump @types/jsonwebtoken from 9.0.6 to
9.0.9 in /superset-websocket (#32440)
add c0e92b1639 feat(flag flip): Setting Horizontal Filters to True by
default. (#32317)
add 813e79fa9f fix: skip DB filter when doing OAuth2 (#32486)
add 6173a6c329 chore(deps): bump chrono-node from 2.7.7 to 2.7.8 in
/superset-frontend (#32462)
add 3d5128735b chore(deps): bump @rjsf/utils from 5.24.1 to 5.24.3 in
/superset-frontend (#32461)
add a45ce1e8d1 chore(deps-dev): bump @babel/types from 7.26.7 to 7.26.9 in
/superset-frontend (#32460)
add 807dcddc28 chore(deps): bump @deck.gl/react from 9.1.0 to 9.1.4 in
/superset-frontend (#32453)
add 2b53b1800e chore: various markdown warnings resolved (#30657)
add 33370eaa5c chore: enable dependabot using uv for auto-bumping python
packages (#32501)
add 90388885db chore(deps-dev): bump @typescript-eslint/eslint-plugin from
8.19.0 to 8.26.0 in /superset-websocket (#32503)
add d8686c2d12 chore(deps-dev): update @babel/types requirement from
^7.26.3 to ^7.26.9 in /superset-frontend/plugins/plugin-chart-pivot-table
(#32470)
add fc844d3dfd fix: dashboard, chart and dataset import validation (#32500)
add b3dfd4930a fix(explore): Glitch in a tooltip with metric's name
(#32499)
add c1abe1ec44 chore(ci): show more failed pre-commit context (#32517)
add 07221d8859 chore(deps): bump markdown-to-jsx from 7.7.3 to 7.7.4 in
/superset-frontend (#32456)
add 8053833e1f chore(deps-dev): bump globals from 15.9.0 to 16.0.0 in
/superset-websocket (#32437)
add 8decc9e45f feat(api): Added uuid to list api calls (#32414)
add c90e45a373 feat: make user agent customizable (#32506)
add 317532752c feat(KustoKQL): Update KQL alchemy version and update
timegrain expressions (#32509)
add e98194cdd3 fix(beat): prune_query celery task args fix (#32511)
add 05409d51da feat(slack): adds rate limit error handler for Slack client
(#32510)
add d2e0e2b79c fix(Slack): Fix Slack recipients migration to V2 (#32336)
add 281d1a8ec4 chore(deps-dev): bump eslint-config-prettier from 8.10.0 to
10.0.2 in /docs (#32448)
add 82595df6f9 chore(ci): use npm/yarn lock files where possible (#32527)
add 9ad9ea67cf chore: Caching the Slack channels list (#32529)
add c2de749d0e fix: Show response message as default error (#32507)
add 626736bdd3 chore: add logging to index error (#31770)
add 99238dccbb fix: keep calculated columns when datasource is updated
(#32523)
add 68e8d9858c fix: always extract query source from request (#32525)
add 20e5df501e fix(migrations): Handle comparator None in old time
comparison migration (#32538)
add eae7cf81b0 chore(Ant Design): Remove unnecessary exports from version
4 (#32544)
add c5dd52bcc9 docs: add Canonical to INTHEWILD.md (#32547)
add 4c3aae7583 fix(sqllab): Allow clear on schema and catalog (#32515)
add 33aa9030bf fix: add DateOffset to json serializer (#32532)
add f45ab70080 chore: bump node to v20.18.3 (#32550)
add e005e8b952 fix merge
No new revisions were added by this update.
Summary of changes:
.github/CODEOWNERS | 2 +-
.github/dependabot.yml | 16 +-
.github/workflows/embedded-sdk-release.yml | 2 +-
.github/workflows/embedded-sdk-test.yml | 2 +-
.github/workflows/ephemeral-env.yml | 69 +-
.github/workflows/pre-commit.yml | 34 +-
.github/workflows/release.yml | 10 +-
.github/workflows/superset-applitool-cypress.yml | 3 +-
.../workflows/superset-applitools-storybook.yml | 5 +-
.github/workflows/superset-docs-deploy.yml | 4 +-
.github/workflows/superset-docs-verify.yml | 4 +-
.github/workflows/superset-e2e.yml | 2 +-
.github/workflows/superset-translations.yml | 2 +-
.github/workflows/tech-debt.yml | 4 +-
.gitignore | 1 +
.pre-commit-config.yaml | 50 +-
Dockerfile | 12 +-
README.md | 6 +-
RELEASING/Dockerfile.from_local_tarball | 6 +-
RELEASING/Dockerfile.from_svn_tarball | 19 +-
RELEASING/README.md | 5 +-
RELEASING/changelog.py | 11 +-
RESOURCES/FEATURE_FLAGS.md | 1 -
RESOURCES/INTHEWILD.md | 20 +-
RESOURCES/STANDARD_ROLES.md | 16 +-
UPDATING.md | 6 +-
docker-compose.yml | 2 +-
docker/nginx/nginx.conf | 6 +
docker/pythonpath_dev/superset_config.py | 2 +-
.../webpack.config.js => docs/.eslintrc.js | 52 +-
docs/.nvmrc | 2 +-
docs/README.md | 2 +-
docs/babel.config.js | 1 +
docs/docs/api.mdx | 1 -
docs/docs/configuration/alerts-reports.mdx | 7 +-
docs/docs/configuration/async-queries-celery.mdx | 8 +-
docs/docs/configuration/cache.mdx | 4 +-
docs/docs/configuration/configuring-superset.mdx | 19 +-
docs/docs/configuration/databases.mdx | 176 +-
.../importing-exporting-datasources.mdx | 22 +-
docs/docs/configuration/networking-settings.mdx | 11 +-
docs/docs/configuration/setup-ssh-tunneling.mdx | 6 -
docs/docs/configuration/sql-templating.mdx | 21 +-
docs/docs/configuration/timezones.mdx | 4 +-
docs/docs/contributing/development.mdx | 23 +-
docs/docs/contributing/howtos.mdx | 8 +-
docs/docs/contributing/misc.mdx | 6 +-
docs/docs/contributing/resources.mdx | 2 +-
docs/docs/faq.mdx | 22 +-
docs/docs/installation/architecture.mdx | 6 +-
docs/docs/installation/docker-builds.mdx | 3 +-
docs/docs/installation/docker-compose.mdx | 3 +-
docs/docs/installation/kubernetes.mdx | 10 +-
docs/docs/quickstart.mdx | 4 +-
docs/docs/security/security.mdx | 13 +-
.../creating-your-first-dashboard.mdx | 6 +-
docs/docs/using-superset/exploring-data.mdx | 2 +-
.../{docusaurus.config.js => docusaurus.config.ts} | 199 +-
docs/package.json | 34 +-
docs/sidebars.js | 52 +-
docs/src/components/SectionHeader.tsx | 2 +-
docs/src/pages/community.tsx | 40 +-
docs/src/pages/index.tsx | 11 +-
docs/src/resources/data.js | 5 +
docs/src/styles/custom.css | 12 +
docs/src/styles/main.less | 3 +-
docs/src/theme/DocItem/index.js | 12 +-
docs/src/utils.js | 2 +-
docs/static/.htaccess | 2 -
docs/static/img/databases/tdengine.png | Bin 0 -> 32453 bytes
docs/static/script/matomo.js | 1 +
docs/tsconfig.json | 2 +-
docs/yarn.lock | 4779 +++++----
pyproject.toml | 19 +-
requirements/base.in | 2 +-
requirements/base.txt | 10 +-
requirements/development.txt | 18 +-
scripts/cancel_github_workflows.py | 2 +-
scripts/check-type.js | 260 +
.../entrypoints/docker-ci.sh => scripts/eslint.sh | 20 +-
superset-embedded-sdk/.nvmrc | 1 +
superset-embedded-sdk/package-lock.json | 51 +-
superset-embedded-sdk/package.json | 1 +
superset-frontend/.eslintrc.js | 14 +-
superset-frontend/.nvmrc | 2 +-
.../cypress/e2e/dashboard/_skip.controls.test.ts | 10 +-
.../cypress/e2e/dashboard/drillby.test.ts | 5 +-
.../cypress/e2e/dashboard/drilltodetail.test.ts | 5 +-
.../e2e/dashboard/horizontalFilterBar.test.ts | 12 +-
.../dashboard/nativeFilters.noInitState.test.ts | 38 +-
.../cypress-base/cypress/e2e/dashboard/utils.ts | 8 +-
.../cypress-base/cypress/e2e/explore/chart.test.js | 22 +-
.../cypress/e2e/explore/control.test.ts | 4 +-
.../explore/visualizations/download_chart.test.js | 6 +-
.../cypress-base/cypress/e2e/sqllab/tabs.test.ts | 4 +-
.../cypress-base/cypress/support/directories.ts | 10 +-
superset-frontend/cypress-base/package-lock.json | 101 +-
superset-frontend/cypress-base/package.json | 3 +-
.../eslint-plugin-i18n-strings}/index.js | 0
.../no-template-vars.test.js | 0
.../eslint-plugin-i18n-strings}/package.json | 2 +-
.../eslint-plugin-theme-colors/colors.js | 0
.../eslint-plugin-theme-colors/index.js | 0
.../eslint-plugin-theme-colors/package.json | 0
superset-frontend/jest.config.js | 1 +
superset-frontend/package-lock.json | 10199 +++++++------------
superset-frontend/package.json | 51 +-
.../src/components/SQLPopover.tsx | 6 +-
.../src/components/labelUtils.tsx | 15 +-
.../src/sections/chartTitle.tsx | 2 +-
.../superset-ui-chart-controls/src/types.ts | 13 +
.../src/utils/D3Formatting.ts | 8 +
.../packages/superset-ui-core/package.json | 6 +-
.../superset-ui-core/src/math-expression/index.ts | 4 +-
.../factories/createMemoryFormatter.ts | 61 +-
.../superset-ui-core/src/query/types/Metric.ts | 4 +-
.../superset-ui-core/src/utils/featureFlags.ts | 1 -
.../chart-composition/legend/WithLegend.test.tsx | 54 +-
.../chart/components/ChartDataProvider.test.tsx | 432 +-
.../test/chart/components/SuperChart.test.tsx | 456 +-
.../test/chart/components/SuperChartCore.test.tsx | 165 +-
.../test/chart/components/reactify.test.tsx | 24 +-
.../factories/createMemoryFormatter.test.ts | 48 +
.../test/time-comparison/fetchTimeRange.test.ts | 2 +-
.../packages/superset-ui-demo/package.json | 4 +-
.../shared/components/ResizableChartDemo.tsx | 17 +-
.../storybook/shared/components/ResizablePanel.tsx | 4 +-
.../LegacyPluginChartChord.stories.tsx | 2 +-
.../CountryMap.stories.tsx | 16 +-
.../BoxPlot/NVD3BoxPlot.stories.tsx | 4 +-
.../plugin-chart-echarts/Gauge/Gauge.stories.tsx | 2 +-
.../plugin-chart-echarts/Graph/Graph.stories.tsx | 2 +-
.../plugin-chart-echarts/Radar/Radar.stories.tsx | 2 +-
.../Timeseries/Timeseries.stories.tsx | 16 +-
.../Waterfall/Waterfall.stories.tsx | 8 +-
.../PivotTable.stories.tsx | 10 +-
.../plugins/plugin-chart-table/Table.stories.tsx | 2 +-
.../stories/plugins/plugin-chart-table/testData.ts | 6 +-
.../stories/superset-ui-color/RenderPalettes.tsx | 16 +-
.../NumberFormat.stories.tsx | 16 +-
.../stories/superset-ui-style/Theme.stories.tsx | 11 +-
.../superset-ui-time-format/TimeFormat.stories.tsx | 19 +-
.../legacy-preset-chart-deckgl/package.json | 2 +-
.../src/layers/Screengrid/Screengrid.tsx | 3 +-
.../plugins/legacy-preset-chart-nvd3/package.json | 2 +-
.../src/Heatmap/controlPanel.tsx | 25 +
.../src/Heatmap/transformProps.ts | 19 +
.../plugin-chart-echarts/src/Heatmap/types.ts | 3 +
.../src/Histogram/controlPanel.tsx | 57 +-
.../src/Histogram/transformProps.ts | 37 +-
.../plugin-chart-echarts/src/Histogram/types.ts | 2 +
.../src/Timeseries/transformProps.ts | 1 +
.../src/Timeseries/transformers.ts | 11 +-
.../plugins/plugin-chart-echarts/src/controls.tsx | 2 +-
.../src/utils/eventHandlers.ts | 3 +-
.../plugin-chart-echarts/src/utils/series.ts | 22 +-
.../test/BigNumber/transformProps.test.ts | 2 +-
.../plugins/plugin-chart-handlebars/README.md | 23 +
.../plugins/plugin-chart-handlebars/package.json | 2 +-
.../src/components/Handlebars/HandlebarsViewer.tsx | 13 +
.../src/plugin/controls/handlebarTemplate.tsx | 41 +-
.../src/plugin/controls/style.tsx | 1 +
.../plugins/plugin-chart-pivot-table/package.json | 2 +-
.../src/plugin/controlPanel.tsx | 2 +-
.../plugin-chart-table/src/controlPanel.tsx | 4 +-
superset-frontend/spec/helpers/shim.tsx | 2 +-
superset-frontend/spec/helpers/testing-library.tsx | 1 +
superset-frontend/spec/helpers/theming.ts | 19 +-
superset-frontend/src/GlobalStyles.tsx | 13 +-
.../src/SqlLab/actions/sqlLab.test.js | 6 +-
.../QueryLimitSelect/QueryLimitSelect.test.tsx | 8 +-
.../SqlLab/components/QueryLimitSelect/index.tsx | 53 +-
.../components/QueryTable/QueryTable.test.tsx | 71 +-
.../SqlLab/components/ResultSet/ResultSet.test.tsx | 45 +-
.../SaveDatasetActionButton.test.tsx | 3 +-
.../components/SaveDatasetActionButton/index.tsx | 30 +-
.../SaveDatasetModal/SaveDatasetModal.test.tsx | 4 +-
.../SqlLab/components/SaveDatasetModal/index.tsx | 16 +-
.../SqlLab/components/SaveQuery/SaveQuery.test.tsx | 8 +-
.../ShareSqlLabQuery/ShareSqlLabQuery.test.tsx | 16 +-
.../SqlLab/components/SouthPane/SouthPane.test.tsx | 25 +-
.../src/SqlLab/components/SouthPane/index.tsx | 2 +-
.../SqlLab/components/SqlEditor/SqlEditor.test.tsx | 43 +-
.../src/SqlLab/components/SqlEditor/index.tsx | 14 +-
.../SqlEditorLeftBar/SqlEditorLeftBar.test.tsx | 9 +-
.../SqlEditorTabHeader/SqlEditorTabHeader.test.tsx | 2 +-
.../SqlLab/components/SqlEditorTabHeader/index.tsx | 6 +-
.../src/SqlLab/components/TablePreview/index.tsx | 27 +-
.../src/components/Alert/Alert.test.tsx | 8 +-
.../AlteredSliceTag/AlteredSliceTag.test.jsx | 4 +-
.../src/components/AuditInfo/ModifiedInfo.test.tsx | 9 +-
superset-frontend/src/components/Button/index.tsx | 2 +-
.../src/components/Card/Card.test.tsx | 13 +-
.../CertifiedBadge/CertifiedBadge.test.tsx | 8 +-
superset-frontend/src/components/Chart/Chart.tsx | 11 +-
.../Chart/ChartContextMenu/ChartContextMenu.tsx | 42 +-
.../components/Chart/ChartErrorMessage.test.tsx | 84 +
.../src/components/Chart/ChartErrorMessage.tsx | 10 +-
.../Chart/DrillBy/DrillByMenuItems.test.tsx | 62 +-
.../components/Chart/DrillBy/DrillByMenuItems.tsx | 35 +-
.../components/Chart/DrillBy/DrillByModal.test.tsx | 10 +-
.../Chart/DrillBy/useDrillByBreadcrumbs.test.ts | 3 +-
.../Chart/DrillBy/useResultsTableView.test.ts | 9 +-
.../DrillDetail/DrillDetailMenuItems.test.tsx | 9 +-
.../Chart/DrillDetail/DrillDetailMenuItems.tsx | 27 +-
.../Chart/DrillDetail/DrillDetailModal.test.tsx | 3 +-
.../DrillDetailTableControls.stories.tsx} | 22 +-
.../DrillDetail/DrillDetailTableControls.test.tsx | 6 +-
.../Chart/DrillDetail/DrillDetailTableControls.tsx | 37 +-
.../components/Chart/MenuItemWithTruncation.tsx | 9 +-
.../src/components/Chart/chartActions.test.js | 2 +-
.../src/components/Collapse/Collapse.test.tsx | 161 +-
.../CopyToClipboard/CopyToClipboard.test.tsx | 8 +-
.../DatabaseSelector/DatabaseSelector.test.tsx | 6 +-
.../src/components/DatabaseSelector/index.tsx | 4 +-
.../src/components/Datasource/DatasourceEditor.jsx | 136 +-
.../Datasource/DatasourceEditor.test.jsx | 10 +-
.../components/Datasource/DatasourceModal.test.jsx | 20 +-
.../src/components/Datasource/DatasourceModal.tsx | 277 +-
.../src/components/Datasource/utils.js | 112 +
.../src/components/Datasource/utils.test.tsx | 202 +
.../src/components/DatePicker/index.tsx | 12 +-
.../components/DeleteModal/DeleteModal.test.tsx | 3 +-
.../src/components/Dropdown/Dropdown.stories.tsx | 6 +-
.../src/components/Dropdown/index.tsx | 27 +-
.../src/components/DropdownButton/index.tsx | 97 +-
.../DropdownContainer/DropdownContainer.test.tsx | 3 +-
.../src/components/DropdownContainer/index.tsx | 20 +-
.../DropdownSelectableIcon.stories.tsx | 56 -
.../DropdownSelectableIcon.test.tsx | 98 -
.../components/DropdownSelectableIcon/index.tsx | 177 -
.../DynamicEditableTitle.test.tsx | 3 +-
.../ErrorMessage/DatabaseErrorMessage.test.tsx | 3 +-
.../ErrorMessageWithStackTrace.test.tsx | 3 +-
.../ErrorMessage/ErrorMessageWithStackTrace.tsx | 1 -
.../FrontendNetworkErrorMessage.test.tsx | 3 +-
.../ErrorMessage/InvalidSQLErrorMessage.test.tsx | 51 +-
.../ErrorMessage/MarshmallowErrorMessage.test.tsx | 32 +-
.../ErrorMessage/OAuth2RedirectMessage.test.tsx | 19 +-
.../ErrorMessage/ParameterErrorMessage.test.tsx | 3 +-
.../ErrorMessage/TimeoutErrorMessage.test.tsx | 3 +-
.../src/components/FacePile/FacePile.test.tsx | 7 +-
.../src/components/FaveStar/FaveStar.test.tsx | 3 +-
.../FilterableTable/FilterableTable.test.tsx | 29 +-
.../FlashProvider/FlashProvider.test.tsx | 9 +-
.../src/components/Form/LabeledErrorBoundInput.tsx | 3 +-
.../src/components/GridTable/GridTable.test.tsx | 5 +
.../src/components/GridTable/index.tsx | 43 +-
.../IndeterminateCheckbox.test.tsx | 8 +-
.../src/components/ListView/CardSortSelect.tsx | 1 +
.../components/ListView/CrossLinksTooltip.test.tsx | 8 +-
.../src/components/ListView/ListView.test.jsx | 433 +-
.../src/components/ListView/ListView.tsx | 4 +-
.../ListViewCard/ListViewCard.stories.tsx | 10 +-
.../src/components/Loading/Loading.test.tsx | 3 +-
superset-frontend/src/components/Menu/index.tsx | 27 +-
.../cell-renderers/NullCell => Metadata}/index.tsx | 29 +-
.../components/MetadataBar/MetadataBar.test.tsx | 8 +-
.../components/ModalTrigger/ModalTrigger.test.tsx | 8 +-
.../PageHeaderWithActions.test.tsx | 3 +-
.../src/components/PageHeaderWithActions/index.tsx | 10 +-
.../src/components/Pagination/Ellipsis.test.tsx | 3 +-
.../src/components/Pagination/Item.test.tsx | 3 +-
.../src/components/Pagination/Next.test.tsx | 3 +-
.../src/components/Pagination/Prev.test.tsx | 3 +-
.../src/components/Pagination/Wrapper.test.tsx | 19 +-
.../src/components/Popover/Popover.stories.tsx | 15 +-
.../src/components/Popover/Popover.test.tsx | 22 +-
.../src/components/Popover/Popover.tsx | 27 -
superset-frontend/src/components/Popover/index.tsx | 14 +-
.../PopoverDropdown/PopoverDropdown.test.tsx | 3 +-
.../src/components/PopoverDropdown/index.tsx | 10 +-
.../PopoverSection/PopoverSection.test.tsx | 3 +-
.../components/RefreshLabel/RefreshLabel.test.tsx | 3 +-
.../src/components/RefreshLabel/index.tsx | 9 +-
.../src/components/Select/AsyncSelect.test.tsx | 2 +-
.../src/components/Select/Select.test.tsx | 2 +-
.../cell-renderers/ActionCell/ActionCell.test.tsx | 3 +-
.../Table/cell-renderers/ActionCell/index.tsx | 4 +-
.../cell-renderers/ButtonCell/ButtonCell.test.tsx | 3 +-
.../header-renderers/HeaderWithRadioGroup.tsx | 4 +-
.../src/components/Table/utils/utils.test.ts | 15 +-
.../TableSelector/TableSelector.test.tsx | 112 +-
.../src/components/TableView/TableView.test.tsx | 3 +-
superset-frontend/src/components/Tags/Tag.test.tsx | 3 +-
superset-frontend/src/components/Tags/Tag.tsx | 21 +-
.../TimezoneSelector.DaylightSavingTime.test.tsx | 8 +-
.../TimezoneSelector/TimezoneSelector.test.tsx | 8 +-
.../src/components/Tooltip/Tooltip.test.tsx | 3 +-
superset-frontend/src/components/Tooltip/index.tsx | 26 +-
.../TooltipParagraph/TooltipParagraph.test.tsx | 8 +-
superset-frontend/src/components/index.ts | 21 +-
.../src/dashboard/actions/dashboardState.test.js | 2 +-
superset-frontend/src/dashboard/actions/hydrate.js | 8 +-
.../components/AddSliceCard/AddSliceCard.test.tsx | 9 +-
.../components/CssEditor/CssEditor.test.tsx | 8 +-
.../src/dashboard/components/CssEditor/index.tsx | 6 +-
.../src/dashboard/components/Dashboard.test.jsx | 314 +-
.../DashboardBuilder/DashboardBuilder.test.tsx | 9 +-
.../DashboardBuilder/DashboardBuilder.tsx | 15 +-
.../EmbeddedModal/EmbeddedModal.test.tsx | 1 -
.../DetailsPanel/DetailsPanel.test.tsx | 8 +-
.../components/FiltersBadge/DetailsPanel/index.tsx | 60 +-
.../FilterIndicator/FilterIndicator.test.tsx | 3 +-
.../dashboard/components/Header/Header.test.tsx | 8 +-
.../HeaderActionsDropdown.test.tsx | 260 -
.../src/dashboard/components/Header/index.jsx | 180 +-
.../src/dashboard/components/Header/types.ts | 5 +-
.../index.tsx => useHeaderActionsDropdownMenu.tsx} | 339 +-
.../PropertiesModal/PropertiesModal.test.tsx | 502 +-
.../PublishedStatus/PublishedStatus.test.tsx | 3 +-
.../components/RefreshIntervalModal.test.tsx | 21 +-
.../src/dashboard/components/SliceAdder.test.tsx | 349 +-
.../components/SliceHeader/SliceHeader.test.tsx | 3 +-
.../SliceHeaderControls.test.tsx | 34 +-
.../components/SliceHeaderControls/index.tsx | 38 +-
.../URLShortLinkButton/URLShortLinkButton.test.tsx | 3 +-
.../src/dashboard/components/dnd/DragDroppable.jsx | 5 +-
.../components/dnd/DragDroppable.test.jsx | 252 +-
.../components/filterscope/FilterScope.test.tsx | 58 +-
.../components/gridComponents/ChartHolder.test.tsx | 2 +-
.../components/gridComponents/Column.test.jsx | 4 +-
.../components/gridComponents/Divider.test.jsx | 16 +-
.../components/gridComponents/Header.test.jsx | 79 +-
.../components/gridComponents/Markdown.test.jsx | 387 +-
.../components/gridComponents/Row.test.jsx | 4 +-
.../components/gridComponents/Tab.test.jsx | 108 +-
.../components/gridComponents/Tab.test.tsx | 2 +-
.../components/gridComponents/Tabs.test.tsx | 8 +-
.../new/DraggableNewComponent.test.jsx | 58 +-
.../components/gridComponents/new/NewTabs.test.jsx | 13 +-
.../DownloadMenuItems/DownloadAsImage.test.tsx | 14 +-
.../menu/DownloadMenuItems/DownloadAsImage.tsx | 12 +-
.../menu/DownloadMenuItems/DownloadAsPdf.test.tsx | 14 +-
.../menu/DownloadMenuItems/DownloadAsPdf.tsx | 12 +-
.../DownloadMenuItems/DownloadMenuItems.test.tsx | 12 +-
.../DownloadMenuItems/DownloadScreenshot.test.tsx | 8 +-
.../components/menu/DownloadMenuItems/index.tsx | 51 +-
.../dashboard/components/menu/HoverMenu.test.tsx | 3 +-
.../components/menu/MarkdownModeDropdown.tsx | 1 +
.../menu/ShareMenuItems/ShareMenuItems.test.tsx | 9 +-
.../components/menu/ShareMenuItems/index.tsx | 16 +-
.../FilterBar/ActionButtons/ActionButtons.test.tsx | 14 +-
.../FilterBar/CrossFilters/CrossFilterTag.test.tsx | 3 +-
.../CrossFilters/CrossFilterTitle.test.tsx | 41 +-
.../ScopingModal/ChartsScopingListPanel.test.tsx | 8 +-
.../ScopingModal/ScopingModal.test.tsx | 2 +-
.../nativeFilters/FilterBar/FilterBar.test.tsx | 3 +-
.../FilterBarSettings/FilterBarSettings.test.tsx | 125 +-
.../FilterBar/FilterBarSettings/index.tsx | 87 +-
.../FilterConfigurationLink.test.tsx | 18 +-
.../FilterBar/FilterConfigurationLink/index.tsx | 65 +-
.../useFilterConfigModal.tsx | 82 +
.../FilterBar/FilterControls/FilterControls.tsx | 7 +-
.../FilterControls/FilterDivider.test.tsx | 3 +-
.../FilterBar/FilterControls/FilterValue.tsx | 2 +-
.../nativeFilters/FilterBar/Header/Header.test.tsx | 3 +-
.../nativeFilters/FilterBar/Header/index.tsx | 3 -
.../components/nativeFilters/FilterBar/utils.ts | 8 +
.../nativeFilters/FilterCard/FilterCard.test.tsx | 3 +-
.../nativeFilters/FilterCard/NameRow.tsx | 15 +-
.../components/nativeFilters/FilterCard/index.tsx | 10 +-
.../FiltersConfigModal/FilterConfigPane.test.tsx | 2 +-
.../FiltersConfigForm/ColumnSelect.test.tsx | 8 +-
.../FilterScope/FilterScope.test.tsx | 116 +-
.../__tests__/TreeInitialization.test.tsx | 80 +
.../FilterScope/__tests__/TreeSelection.test.tsx | 124 +
.../FilterScope/__tests__/utils.tsx | 85 +
.../FiltersConfigForm/FiltersConfigForm.tsx | 2 +-
.../FiltersConfigForm/getControlItemsMap.test.tsx | 3 +-
.../FiltersConfigModal/FiltersConfigModal.test.tsx | 5 +-
.../components/nativeFilters/state.test.ts | 126 +
.../dashboard/components/nativeFilters/state.ts | 25 +-
.../src/dashboard/hooks/useDownloadScreenshot.ts | 184 +
superset-frontend/src/dashboard/styles.ts | 32 +-
.../src/explore/actions/datasourcesActions.ts | 13 +-
.../src/explore/actions/exploreActions.ts | 16 +
.../src/explore/components/Control.test.tsx | 7 +-
.../components/ControlPanelsContainer.test.tsx | 3 +-
.../CopyToClipboardButton.test.tsx | 8 +-
.../DataTableControl/FilterInput.test.tsx | 3 +-
.../explore/components/DataTableControl/index.tsx | 11 +-
.../DataTablesPane/test/DataTablesPane.test.tsx | 3 +-
.../test/ResultsPaneOnDashboard.test.tsx | 2 +-
.../DataTablesPane/test/SamplesPane.test.tsx | 2 +-
.../DatasourcePanel/DatasourcePanel.test.tsx | 96 +-
.../ExploreChartHeader/ExploreChartHeader.test.tsx | 184 +-
.../components/ExploreChartHeader/index.jsx | 51 +-
.../ExploreChartPanel/ExploreChartPanel.test.jsx | 10 +-
.../ExploreViewContainer.test.tsx | 8 +-
.../ExportToCSVDropdown.test.tsx | 3 +-
.../components/ExportToCSVDropdown/index.tsx | 10 +-
.../PropertiesModal/PropertiesModal.test.tsx | 80 +-
.../RowCountLabel/RowCountLabel.test.tsx | 3 +-
.../RunQueryButton/RunQueryButton.test.tsx | 3 +-
.../AnnotationLayer.test.tsx | 8 +-
.../controls/AnnotationLayerControl/index.tsx | 8 +-
.../components/controls/BoundsControl.test.jsx | 8 +-
.../components/controls/CheckboxControl.test.tsx | 8 +-
.../CollectionControl/CollectionControl.test.tsx | 3 +-
.../ColorSchemeControl/ColorSchemeControl.test.tsx | 8 +-
.../FormattingPopover.tsx | 4 +-
.../controls/ConditionalFormattingControl/types.ts | 2 +-
.../ContourControl/ContourPopoverTrigger.tsx | 6 +-
.../ControlPopover/ControlPopover.test.tsx | 22 +-
.../controls/ControlPopover/ControlPopover.tsx | 67 +-
.../DatasourceControl/DatasourceControl.test.jsx | 12 +-
.../DatasourceControl/DatasourceControl.test.tsx | 9 +-
.../controls/DatasourceControl/index.jsx | 14 +-
.../controls/DateFilterControl/DateFilterLabel.tsx | 17 +-
.../DateFilterControl/tests/AdvancedFrame.test.tsx | 3 +-
.../tests/CurrentCalendarFrame.test.tsx | 3 +-
.../DateFilterControl/tests/CustomFrame.test.tsx | 178 +-
.../tests/DateFilterLabel.test.tsx | 3 +-
.../ColumnSelectPopover.test.tsx | 28 +-
.../ColumnSelectPopoverTrigger.tsx | 6 +-
.../DndColumnSelect.test.tsx | 8 +-
.../DndMetricSelect.test.tsx | 4 +-
.../DndColumnSelectControl/DndSelectLabel.test.tsx | 3 +-
.../DndColumnSelectControl/Option.test.tsx | 115 +-
.../AdhocFilterControl/AdhocFilterControl.test.jsx | 146 -
.../AdhocFilterControl/AdhocFilterControl.test.tsx | 154 +
.../AdhocFilterEditPopover.test.jsx | 180 +-
...AdhocFilterEditPopoverSimpleTabContent.test.tsx | 28 +-
.../AdhocFilterEditPopoverSqlTabContent.test.tsx | 22 +-
.../AdhocFilterOption/AdhocFilterOption.test.tsx | 8 +-
.../AdhocFilterPopoverTrigger.test.tsx | 3 +-
.../AdhocFilterPopoverTrigger/index.tsx | 6 +-
.../utils/useDatePickerInAdhocfilter.test.ts | 19 +-
.../FixedOrMetricControl.test.tsx | 3 +-
.../LayerConfigsControl/LayerConfigsControl.tsx | 4 +-
.../controls/MapViewControl/MapViewControl.tsx | 5 +-
.../MapViewControl/MapViewPopoverContent.tsx | 3 +-
.../AdhocMetricEditPopover.test.jsx | 125 -
.../AdhocMetricEditPopover.test.tsx | 8 +-
.../AdhocMetricEditPopoverTitle.test.tsx | 4 +-
.../MetricControl/AdhocMetricOption.test.jsx | 8 +-
.../MetricControl/AdhocMetricPopoverTrigger.tsx | 6 +-
.../MetricControl/FilterDefinitionOption.test.jsx | 21 +-
.../MetricControl/MetricDefinitionOption.test.tsx | 3 +-
.../controls/MetricControl/MetricsControl.test.jsx | 20 +-
.../OptionControls/OptionControls.test.tsx | 38 +-
.../SelectAsyncControl/SelectAsyncControl.test.tsx | 3 +-
.../components/controls/SelectControl.test.jsx | 2 +-
.../components/controls/TextAreaControl.jsx | 61 +-
.../controls/TextControl/TextControl.test.tsx | 8 +-
.../components/controls/TimeOffsetControl.test.tsx | 13 +-
.../components/controls/TimeOffsetControl.tsx | 4 -
.../TimeSeriesColumnControl.test.tsx | 3 +-
.../controls/TimeSeriesColumnControl/index.jsx | 4 +-
.../components/controls/ViewportControl.test.jsx | 3 +-
.../VizTypeControl/VizTypeControl.test.jsx | 68 +-
.../VizTypeControl/VizTypeControl.test.tsx | 2 +-
.../controls/withAsyncVerification.test.tsx | 64 +-
.../DashboardsSubMenu.test.tsx | 8 +-
.../useExploreAdditionalActionsMenu/index.jsx | 52 +-
.../exploreUtils/getSimpleSQLExpression.test.ts | 8 +
.../src/explore/reducers/exploreReducer.js | 18 +
.../src/features/alerts/AlertReportModal.test.tsx | 8 +-
.../src/features/alerts/AlertReportModal.tsx | 24 +-
.../alerts/components/NotificationMethod.test.tsx | 79 +-
.../alerts/components/NotificationMethod.tsx | 133 +-
.../features/allEntities/AllEntitiesTable.test.tsx | 3 +-
.../annotationLayers/AnnotationLayerModal.test.jsx | 8 +-
.../features/annotations/AnnotationModal.test.jsx | 8 +-
.../src/features/charts/ChartCard.tsx | 11 +-
.../cssTemplates/CssTemplateModal.test.jsx | 8 +-
.../src/features/dashboards/DashboardCard.tsx | 11 +-
.../DatabaseConnectionForm/EncryptedField.tsx | 78 +-
.../OAuth2ClientField.test.tsx | 30 +-
.../DatabaseConnectionForm/OAuth2ClientField.tsx | 41 +-
.../DatabaseConnectionForm/TableCatalog.tsx | 9 +-
.../DatabaseConnectionForm/constants.ts | 6 +-
.../databases/DatabaseModal/SSHTunnelForm.tsx | 10 +-
.../DatabaseModal/SSHTunnelSwitch.test.tsx | 3 +-
.../databases/DatabaseModal/index.test.tsx | 696 +-
.../src/features/databases/DatabaseModal/index.tsx | 4 +-
.../src/features/databases/DatabaseModal/styles.ts | 25 +-
.../UploadDataModel/UploadDataModal.test.tsx | 22 +-
superset-frontend/src/features/databases/types.ts | 2 +-
.../EditDataset/UsageTab/UsageTab.test.tsx | 12 +-
.../AddDataset/LeftPanel/LeftPanel.test.tsx | 8 +-
superset-frontend/src/features/datasets/types.ts | 24 +-
.../src/features/home/ActivityTable.test.tsx | 8 +-
.../src/features/home/ChartTable.test.tsx | 8 +-
superset-frontend/src/features/home/ChartTable.tsx | 3 +-
.../src/features/home/DashboardTable.test.tsx | 362 +-
.../src/features/home/DashboardTable.tsx | 6 +-
.../src/features/home/EmptyState.test.tsx | 27 +-
.../src/features/home/LanguagePicker.test.tsx | 3 +-
superset-frontend/src/features/home/Menu.test.tsx | 3 +-
.../src/features/home/RightMenu.test.tsx | 10 +-
superset-frontend/src/features/home/RightMenu.tsx | 2 +
.../src/features/home/SavedQueries.test.tsx | 10 +-
.../src/features/home/SavedQueries.tsx | 67 +-
.../src/features/home/SubMenu.test.tsx | 3 +-
.../features/queries/QueryPreviewModal.test.tsx | 4 +-
.../queries/SavedQueryPreviewModal.test.jsx | 6 +-
.../HeaderReportDropdown/index.test.tsx | 74 +-
.../ReportModal/HeaderReportDropdown/index.tsx | 132 +-
.../reports/ReportModal/ReportModal.test.tsx | 8 +-
.../features/rls/RowLevelSecurityModal.test.tsx | 27 +-
superset-frontend/src/features/tags/TagCard.tsx | 11 +-
.../components/Range/RangeFilterPlugin.test.tsx | 86 +-
.../filters/components/Range/RangeFilterPlugin.tsx | 500 +-
.../components/Select/SelectFilterPlugin.test.tsx | 3 +-
.../src/middleware/asyncEvent.test.ts | 2 +-
.../pages/AlertReportList/AlertReportList.test.jsx | 208 +-
.../AnnotationLayerList.test.jsx | 180 +-
.../pages/AnnotationList/AnnotationList.test.jsx | 10 +-
.../src/pages/ChartCreation/ChartCreation.test.tsx | 8 +-
.../src/pages/ChartList/ChartList.test.jsx | 325 +-
.../pages/CssTemplateList/CssTemplateList.test.jsx | 181 +-
.../src/pages/DashboardList/DashboardList.test.jsx | 290 +-
.../src/pages/DashboardList/index.tsx | 5 +-
.../src/pages/DatabaseList/DatabaseList.test.jsx | 12 +-
superset-frontend/src/pages/DatabaseList/index.tsx | 61 +
.../src/pages/DatasetList/DatasetList.test.tsx | 16 +-
...nLogList.test.jsx => ExecutionLogList.test.tsx} | 49 +-
superset-frontend/src/pages/Home/Home.test.tsx | 20 +-
.../QueryHistoryList/QueryHistoryList.test.tsx | 12 +-
.../RowLevelSecurityList.test.tsx | 5 +-
.../pages/SavedQueryList/SavedQueryList.test.jsx | 478 +-
superset-frontend/src/setup/setupAGGridModules.ts | 61 +
superset-frontend/src/setup/setupFormatters.ts | 10 +-
superset-frontend/src/types/TagType.ts | 1 +
.../src/types/{ace-builds.ts => ace-builds.d.ts} | 0
.../react-syntax-highlighter.d.ts} | 29 +-
superset-frontend/src/utils/getBootstrapData.ts | 15 +-
superset-frontend/src/views/App.tsx | 2 +
superset-websocket/.nvmrc | 2 +-
superset-websocket/package-lock.json | 720 +-
superset-websocket/package.json | 7 +-
superset-websocket/tsconfig.json | 2 +-
superset-websocket/utils/client-ws-app/.nvmrc | 2 +-
superset/charts/api.py | 11 +-
superset/charts/client_processing.py | 17 +-
superset/charts/schemas.py | 3 +-
superset/cli/thumbnails.py | 2 +-
superset/commands/chart/importers/v1/utils.py | 7 +-
superset/commands/dashboard/importers/v1/utils.py | 7 +-
superset/commands/database/exceptions.py | 10 +
superset/commands/database/ssh_tunnel/create.py | 5 +-
superset/commands/database/ssh_tunnel/update.py | 5 +-
superset/commands/database/sync_permissions.py | 344 +
superset/commands/database/test_connection.py | 18 +-
superset/commands/database/update.py | 211 +-
superset/commands/database/utils.py | 92 +
superset/commands/database/validate.py | 2 +-
superset/commands/dataset/importers/v1/utils.py | 8 +
superset/commands/report/execute.py | 78 +-
superset/common/db_query_status.py | 16 +-
superset/config.py | 19 +-
superset/connectors/sqla/models.py | 2 +-
superset/constants.py | 3 +-
superset/dashboards/api.py | 9 +-
superset/dashboards/filter_state/api.py | 74 +
superset/dashboards/permalink/api.py | 69 +
superset/dashboards/schemas.py | 3 +-
superset/databases/api.py | 70 +-
superset/databases/schemas.py | 8 +-
superset/datasets/api.py | 10 +-
superset/db_engine_specs/base.py | 18 +-
superset/db_engine_specs/bigquery.py | 3 +-
superset/db_engine_specs/clickhouse.py | 24 +-
superset/db_engine_specs/couchbase.py | 2 +-
superset/db_engine_specs/databricks.py | 19 +-
superset/db_engine_specs/druid.py | 6 +-
superset/db_engine_specs/duckdb.py | 13 +-
superset/db_engine_specs/gsheets.py | 42 +-
superset/db_engine_specs/hana.py | 5 +-
superset/db_engine_specs/hive.py | 7 +-
superset/db_engine_specs/kusto.py | 18 +-
superset/db_engine_specs/oracle.py | 5 +-
superset/db_engine_specs/parseable.py | 5 +-
superset/db_engine_specs/pinot.py | 2 +
superset/db_engine_specs/postgres.py | 6 +-
superset/db_engine_specs/presto.py | 3 +-
superset/db_engine_specs/snowflake.py | 14 +-
superset/db_engine_specs/sqlite.py | 1 -
superset/db_engine_specs/tdengine.py | 57 +
superset/db_engine_specs/trino.py | 21 +-
superset/embedded/api.py | 32 +-
.../Age_distribution_of_respondents.yaml | 13 +-
.../How_much_do_you_expect_to_earn_0_-_100k.yaml | 48 +-
.../Last_Year_Income_Distribution.yaml | 7 +-
superset/extensions/ssh.py | 5 +-
superset/jinja_context.py | 46 +-
superset/migrations/shared/native_filters.py | 17 +-
superset/migrations/shared/utils.py | 4 +-
...b56500de1855_add_uuid_column_to_import_mixin.py | 2 +-
...14-38_a9422eeaae74_new_dataset_models_take_2.py | 10 +-
...9123a_update_charts_with_old_time_comparison.py | 10 +-
superset/models/core.py | 60 +-
superset/queries/api.py | 3 +-
superset/reports/api.py | 6 +-
superset/reports/notifications/slack.py | 4 +-
superset/reports/notifications/slackv2.py | 4 +-
superset/reports/schemas.py | 16 +-
superset/row_level_security/schemas.py | 2 +-
superset/security/guest_token.py | 3 +-
superset/security/manager.py | 34 +-
superset/sql/dialects/firebolt.py | 5 +-
superset/sql_lab.py | 2 +-
superset/sqllab/api.py | 11 +-
superset/sqllab/permalink/api.py | 2 +-
superset/sqllab/sql_json_executer.py | 1 -
superset/tags/api.py | 7 +-
superset/tasks/scheduler.py | 17 +-
.../{zh => pl}/LC_MESSAGES/messages.po | 9464 +++++++++--------
superset/utils/core.py | 52 +-
superset/utils/decorators.py | 7 +
superset/utils/json.py | 3 +
superset/utils/oauth2.py | 18 +-
superset/utils/pandas_postprocessing/histogram.py | 3 +-
superset/utils/screenshots.py | 54 +-
superset/utils/slack.py | 117 +-
superset/utils/ssh_tunnel.py | 14 +
superset/views/base.py | 1 +
superset/views/sqllab.py | 10 +-
superset/views/utils.py | 4 +-
superset/viz.py | 13 +-
tests/conftest.py | 35 +-
tests/integration_tests/base_api_tests.py | 2 +-
tests/integration_tests/celery_tests.py | 14 +-
tests/integration_tests/charts/commands_tests.py | 6 +-
tests/integration_tests/conftest.py | 34 +-
tests/integration_tests/core_tests.py | 2 +-
tests/integration_tests/dashboards/api_tests.py | 45 +-
tests/integration_tests/databases/api_tests.py | 510 +-
.../integration_tests/databases/commands_tests.py | 10 +-
tests/integration_tests/datasets/api_tests.py | 5 +-
tests/integration_tests/datasource_tests.py | 2 +-
.../db_engine_specs/base_engine_spec_tests.py | 3 +-
tests/integration_tests/fixtures/users.py | 80 +
.../7e67aecbf3f1_chart_ds_constraint__tests.py | 2 +-
...update_charts_with_old_time_comparison__test.py | 40 +
.../fb13d49b72f9_better_filters__tests.py | 2 +-
tests/integration_tests/reports/commands_tests.py | 140 +-
tests/integration_tests/reports/scheduler_tests.py | 4 +-
tests/integration_tests/reports/utils.py | 6 +-
tests/integration_tests/security/api_tests.py | 2 +-
.../security/row_level_security_tests.py | 1 -
tests/integration_tests/security_tests.py | 55 +-
tests/integration_tests/sql_lab/commands_tests.py | 11 +-
.../sql_lab/permalink/api_tests.py | 22 +
tests/integration_tests/sqllab_tests.py | 96 +-
tests/integration_tests/superset_test_config.py | 1 -
tests/integration_tests/tags/api_tests.py | 2 +-
tests/integration_tests/users/api_tests.py | 3 +-
tests/integration_tests/utils_tests.py | 555 +-
tests/integration_tests/viz_tests.py | 21 +
.../charts/commands/importers/v1/import_test.py | 51 +-
tests/unit_tests/charts/test_client_processing.py | 65 +-
tests/unit_tests/commands/databases/conftest.py | 90 +
.../commands/databases/excel_reader_test.py | 2 +-
.../commands/databases/importers}/__init__.py | 0
.../commands/databases/importers/v1}/__init__.py | 0
.../databases/importers/v1/command_test.py | 50 +
.../commands/databases/sync_permissions_test.py | 389 +
tests/unit_tests/commands/databases/update_test.py | 367 +-
tests/unit_tests/commands/databases/utils_test.py | 212 +
.../unit_tests/commands/databases/validate_test.py | 1 +
tests/unit_tests/commands/report/execute_test.py | 77 +
.../common/test_query_context_processor.py | 238 +
tests/unit_tests/connectors/sqla/models_test.py | 11 +-
.../commands/importers/v1/import_test.py | 53 +-
tests/unit_tests/databases/api_test.py | 144 +
.../databases/ssh_tunnel/commands/create_test.py | 57 +-
.../databases/ssh_tunnel/commands/update_test.py | 31 +
tests/unit_tests/datasets/api_tests.py | 3 +-
tests/unit_tests/datasets/commands/export_test.py | 2 +-
.../datasets/commands/importers/v1/import_test.py | 52 +
tests/unit_tests/db_engine_specs/test_gsheets.py | 134 +-
tests/unit_tests/db_engine_specs/test_kusto.py | 24 +
tests/unit_tests/db_engine_specs/test_mssql.py | 47 +-
tests/unit_tests/db_engine_specs/test_ocient.py | 6 +-
.../unit_tests/db_engine_specs/test_tdengine.py | 25 +-
tests/unit_tests/db_engine_specs/test_trino.py | 7 +-
tests/unit_tests/fixtures/dataframes.py | 4 +-
tests/unit_tests/jinja_context_test.py | 194 +-
.../unit_tests/migrations/shared/catalogs_test.py | 29 +-
tests/unit_tests/models/core_test.py | 98 +-
.../pandas_postprocessing/test_histogram.py | 48 +-
tests/unit_tests/sql/parse_tests.py | 21 +
tests/unit_tests/utils/json_tests.py | 88 +-
tests/unit_tests/utils/screenshot_test.py | 22 +-
tests/unit_tests/utils/slack_test.py | 16 +-
tests/unit_tests/utils/test_core.py | 519 +
tests/unit_tests/utils/test_decorators.py | 53 +
690 files changed, 27948 insertions(+), 22643 deletions(-)
copy superset-embedded-sdk/webpack.config.js => docs/.eslintrc.js (55%)
delete mode 100644 docs/docs/configuration/setup-ssh-tunneling.mdx
rename docs/{docusaurus.config.js => docusaurus.config.ts} (74%)
create mode 100644 docs/static/img/databases/tdengine.png
create mode 100755 scripts/check-type.js
copy docker/entrypoints/docker-ci.sh => scripts/eslint.sh (71%)
create mode 100644 superset-embedded-sdk/.nvmrc
rename superset-frontend/{tools/eslint-plugin-translation-vars =>
eslint-rules/eslint-plugin-i18n-strings}/index.js (100%)
rename superset-frontend/{tools/eslint-plugin-translation-vars =>
eslint-rules/eslint-plugin-i18n-strings}/no-template-vars.test.js (100%)
rename superset-frontend/{tools/eslint-plugin-translation-vars =>
eslint-rules/eslint-plugin-i18n-strings}/package.json (87%)
rename superset-frontend/{tools =>
eslint-rules}/eslint-plugin-theme-colors/colors.js (100%)
rename superset-frontend/{tools =>
eslint-rules}/eslint-plugin-theme-colors/index.js (100%)
rename superset-frontend/{tools =>
eslint-rules}/eslint-plugin-theme-colors/package.json (100%)
create mode 100644
superset-frontend/src/components/Chart/ChartErrorMessage.test.tsx
copy
superset-frontend/src/{visualizations/dashboardComponents/ExampleComponent/index.ts
=> components/Chart/DrillDetail/DrillDetailTableControls.stories.tsx} (67%)
create mode 100644 superset-frontend/src/components/Datasource/utils.test.tsx
delete mode 100644
superset-frontend/src/components/DropdownSelectableIcon/DropdownSelectableIcon.stories.tsx
delete mode 100644
superset-frontend/src/components/DropdownSelectableIcon/DropdownSelectableIcon.test.tsx
delete mode 100644
superset-frontend/src/components/DropdownSelectableIcon/index.tsx
copy superset-frontend/src/components/{Table/cell-renderers/NullCell =>
Metadata}/index.tsx (62%)
delete mode 100644 superset-frontend/src/components/Popover/Popover.tsx
delete mode 100644
superset-frontend/src/dashboard/components/Header/HeaderActionsDropdown/HeaderActionsDropdown.test.tsx
rename
superset-frontend/src/dashboard/components/Header/{HeaderActionsDropdown/index.tsx
=> useHeaderActionsDropdownMenu.tsx} (53%)
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterConfigurationLink/useFilterConfigModal.tsx
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FilterScope/__tests__/TreeInitialization.test.tsx
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FilterScope/__tests__/TreeSelection.test.tsx
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FilterScope/__tests__/utils.tsx
create mode 100644
superset-frontend/src/dashboard/components/nativeFilters/state.test.ts
create mode 100644
superset-frontend/src/dashboard/hooks/useDownloadScreenshot.ts
delete mode 100644
superset-frontend/src/explore/components/controls/FilterControl/AdhocFilterControl/AdhocFilterControl.test.jsx
create mode 100644
superset-frontend/src/explore/components/controls/FilterControl/AdhocFilterControl/AdhocFilterControl.test.tsx
delete mode 100644
superset-frontend/src/explore/components/controls/MetricControl/AdhocMetricEditPopover/AdhocMetricEditPopover.test.jsx
rename superset-frontend/src/pages/ExecutionLogList/{ExecutionLogList.test.jsx
=> ExecutionLogList.test.tsx} (69%)
create mode 100644 superset-frontend/src/setup/setupAGGridModules.ts
rename superset-frontend/src/types/{ace-builds.ts => ace-builds.d.ts} (100%)
copy
superset-frontend/src/{dashboard/components/nativeFilters/FilterCard/types.ts
=> types/react-syntax-highlighter.d.ts} (60%)
create mode 100644 superset/commands/database/sync_permissions.py
create mode 100644 superset/db_engine_specs/tdengine.py
copy superset/translations/{zh => pl}/LC_MESSAGES/messages.po (50%)
create mode 100644 tests/unit_tests/commands/databases/conftest.py
copy {superset/advanced_data_type =>
tests/unit_tests/commands/databases/importers}/__init__.py (100%)
copy {superset/advanced_data_type =>
tests/unit_tests/commands/databases/importers/v1}/__init__.py (100%)
create mode 100644
tests/unit_tests/commands/databases/importers/v1/command_test.py
create mode 100644 tests/unit_tests/commands/databases/sync_permissions_test.py
create mode 100644 tests/unit_tests/commands/databases/utils_test.py
create mode 100644 tests/unit_tests/common/test_query_context_processor.py
copy superset/daos/exceptions.py =>
tests/unit_tests/db_engine_specs/test_tdengine.py (65%)