You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by di...@apache.org on 2024/06/09 17:10:05 UTC

(superset) branch geido/feat/antdesign-5 created (now 91582f3fba)

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

diegopucci pushed a change to branch geido/feat/antdesign-5
in repository https://gitbox.apache.org/repos/asf/superset.git


      at 91582f3fba Upgrade Badge to Antd 5

This branch includes the following new commits:

     new 7ed0c47561 Add Antdesign 5
     new 0af1c04035 Merge branch 'master' of https://github.com/apache/superset into geido/feat/antdesign-5
     new 91582f3fba Upgrade Badge to Antd 5

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



(superset) 02/03: Merge branch 'master' of https://github.com/apache/superset into geido/feat/antdesign-5

Posted by di...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

diegopucci pushed a commit to branch geido/feat/antdesign-5
in repository https://gitbox.apache.org/repos/asf/superset.git

commit 0af1c0403567d3343fb59c42e6fee67ea2b31294
Merge: 7ed0c47561 a9cebe81ea
Author: Diego Pucci <di...@gmail.com>
AuthorDate: Wed Jun 5 16:32:36 2024 +0300

    Merge branch 'master' of https://github.com/apache/superset into geido/feat/antdesign-5

 RESOURCES/FEATURE_FLAGS.md                         |    1 +
 docker-compose.yml                                 |    5 +
 docker/docker-bootstrap.sh                         |    3 +-
 docs/package.json                                  |   10 +-
 docs/src/components/SectionHeader.tsx              |    3 +-
 docs/yarn.lock                                     |  622 ++-
 superset-embedded-sdk/src/index.ts                 |    7 +-
 superset-frontend/.eslintrc.js                     |   20 +
 superset-frontend/.storybook/preview.jsx           |    1 -
 superset-frontend/babel.config.js                  |   19 +-
 .../cypress/e2e/explore/control.test.ts            |    9 +-
 superset-frontend/package-lock.json                |  253 +-
 superset-frontend/package.json                     |   18 +-
 .../src/components/CertifiedIconWithTooltip.tsx    |    1 -
 .../src/components/ColumnOption.tsx                |    4 +-
 .../components/ColumnTypeLabel/ColumnTypeLabel.tsx |    2 +-
 .../src/components/ControlHeader.tsx               |    2 +-
 .../src/components/InfoTooltipWithTrigger.tsx      |    2 +-
 .../src/components/MetricOption.tsx                |    5 +-
 .../src/components/SQLPopover.tsx                  |    1 -
 .../src/components/Select.tsx                      |    2 +-
 .../src/components/Tooltip.tsx                     |    1 -
 .../src/components/labelUtils.tsx                  |    8 +-
 .../operators/{index.ts => histogramOperator.ts}   |   36 +-
 .../src/operators/index.ts                         |    1 +
 .../src/sections/advancedAnalytics.tsx             |    1 -
 .../src/sections/chartTitle.tsx                    |    1 -
 .../components/RadioButtonControl.tsx              |    2 +-
 .../src/shared-controls/dndControls.tsx            |    1 -
 .../src/shared-controls/index.ts                   |    1 +
 .../superset-ui-chart-controls/src/types.ts        |    9 +-
 .../src/utils/columnChoices.ts                     |   52 +-
 .../src/utils/expandControlConfig.tsx              |    8 +-
 .../superset-ui-chart-controls/src/utils/index.ts  |    2 +-
 .../src/utils/selectOptions.ts                     |    8 +-
 .../test/components/ColumnOption.test.tsx          |    4 +-
 .../test/components/ColumnTypeLabel.test.tsx       |    6 +-
 .../components/InfoTooltipWithTrigger.test.tsx     |    1 -
 .../test/components/MetricOption.test.tsx          |    4 +-
 .../test/components/labelUtils.test.tsx            |    2 +-
 .../test/operators/histogramOperator.test.ts}      |   44 +-
 .../test/utils/columnChoices.test.tsx              |   40 +-
 .../test/utils/expandControlConfig.test.tsx        |    1 -
 .../packages/superset-ui-core/package.json         |    2 +-
 .../src/chart-composition/ChartFrame.tsx           |    5 +-
 .../src/chart-composition/legend/WithLegend.tsx    |    2 +-
 .../src/chart-composition/tooltip/TooltipFrame.tsx |    4 +-
 .../src/chart-composition/tooltip/TooltipTable.tsx |    2 +-
 .../src/chart/components/ChartDataProvider.tsx     |    4 +-
 .../src/chart/components/FallbackComponent.tsx     |    1 -
 .../src/chart/components/NoResultsComponent.tsx    |    2 +-
 .../src/chart/components/SuperChart.tsx            |   17 +-
 .../src/chart/components/SuperChartCore.tsx        |    4 +-
 .../src/chart/components/createLoadableRenderer.ts |    3 +-
 .../src/chart/components/reactify.tsx              |   11 +-
 .../src/components/SafeMarkdown.tsx                |    2 +-
 .../useElementOnScreen/useElementOnScreen.test.ts  |    7 +-
 .../useTruncation/useCSSTextTruncation.test.tsx    |    5 +-
 .../hooks/useTruncation/useCSSTextTruncation.ts    |    4 +-
 .../src/query/types/PostProcessing.ts              |   39 +
 .../superset-ui-core/src/ui-overrides/types.ts     |   51 +-
 .../superset-ui-core/src/utils/html.test.tsx       |    1 -
 .../packages/superset-ui-core/src/utils/html.tsx   |    1 -
 .../test/chart-composition/ChartFrame.test.tsx     |    1 -
 .../chart-composition/legend/WithLegend.test.tsx   |    1 -
 .../tooltip/TooltipFrame.test.tsx                  |    1 -
 .../tooltip/TooltipTable.test.tsx                  |    1 -
 .../chart/components/ChartDataProvider.test.tsx    |   10 +-
 .../chart/components/FallbackComponent.test.tsx    |    1 -
 .../test/chart/components/MockChartPlugins.tsx     |    1 -
 .../chart/components/NoResultsComponent.test.tsx   |    1 -
 .../test/chart/components/SuperChart.test.tsx      |    2 +-
 .../test/chart/components/SuperChartCore.test.tsx  |    2 +-
 .../components/createLoadableRenderer.test.tsx     |    4 +-
 .../test/chart/components/reactify.test.tsx        |    6 +-
 .../test/chart/models/ChartPlugin.test.tsx         |    1 -
 .../test/query/types/PostProcessing.test.ts        |   64 +
 .../superset-ui-core/test/style/index.test.tsx     |    1 -
 .../superset-ui-core/test/utils/logging.test.ts    |    5 +-
 .../superset-ui-demo/.storybook/themeDecorator.js  |    1 -
 .../packages/superset-ui-demo/package.json         |    2 +-
 .../storybook/shared/components/ErrorMessage.tsx   |    2 -
 .../storybook/shared/components/Expandable.tsx     |    4 +-
 .../shared/components/ResizableChartDemo.tsx       |    2 +-
 .../storybook/shared/components/ResizablePanel.tsx |    2 +-
 .../storybook/shared/components/VerifyCORS.tsx     |    4 +-
 .../shared/components/createQuery.story.tsx        |    1 -
 .../LegacyPluginChartCalendar.stories.tsx          |    1 -
 .../LegacyPluginChartChord.stories.tsx             |    1 -
 .../CountryMap.stories.tsx                         |    2 +-
 .../EventFlow.stories.jsx                          |    1 -
 .../Heatmap.stories.tsx                            |    1 -
 .../Histogram.stories.tsx                          |    1 -
 .../Horizon.stories.tsx                            |    1 -
 .../legacy-plugin-chart-map-box/MapBox.stories.tsx |    1 -
 .../TTest.stories.tsx                              |    1 -
 .../ParallelCoordinates.stories.tsx                |    1 -
 .../Partition.stories.tsx                          |    1 -
 .../legacy-plugin-chart-rose/Rose.stories.tsx      |    1 -
 .../SankeyLoop.stories.tsx                         |    1 -
 .../legacy-plugin-chart-sankey/Sankey.stories.tsx  |    1 -
 .../WorldMap.stories.tsx                           |    1 -
 .../BigNumber/BigNumber.stories.tsx                |    1 -
 .../BigNumberTotal/BigNumberTotal.stories.tsx      |    1 -
 .../legacy-preset-chart-deckgl/Arc/Arc.stories.tsx |    1 -
 .../Grid/Grid.stories.tsx                          |    1 -
 .../legacy-preset-chart-deckgl/Hex/Hex.stories.tsx |    1 -
 .../Path/Path.stories.tsx                          |    1 -
 .../Polygon/Polygon.stories.tsx                    |    1 -
 .../Scatter/Scatter.stories.tsx                    |    1 -
 .../Screengrid/Stories.tsx                         |    1 -
 .../Area/stories/controlsShown.tsx                 |    1 -
 .../Area/stories/expanded.tsx                      |    1 -
 .../Area/stories/stacked.tsx                       |    1 -
 .../Area/stories/stackedWithBounds.tsx             |    1 -
 .../stories/barWithPositiveAndNegativeValues.tsx   |    1 -
 .../Bar/stories/barWithValues.tsx                  |    1 -
 .../legacy-preset-chart-nvd3/Bar/stories/basic.tsx |    1 -
 .../Bar/stories/stackedBarWithValues.tsx           |    1 -
 .../BoxPlot/stories/basic.tsx                      |    1 -
 .../Bubble/stories/basic.tsx                       |    1 -
 .../Bullet/stories/basic.tsx                       |    1 -
 .../Compare/stories/basic.tsx                      |    1 -
 .../Compare/stories/timeFormat.tsx                 |    1 -
 .../DistBar/stories/basic.tsx                      |    1 -
 .../DistBar/stories/manyBars.tsx                   |    1 -
 .../Line/stories/basic.tsx                         |    1 -
 .../Line/stories/logScale.tsx                      |    1 -
 .../Line/stories/markers.tsx                       |    1 -
 .../Line/stories/yAxisBounds.tsx                   |    1 -
 .../legacy-preset-chart-nvd3/Pie/stories/basic.tsx |    1 -
 .../Pie/stories/noData.tsx                         |    1 -
 .../AreaSeries/AreaSeries.stories.tsx              |    1 -
 .../BoxPlot/BoxPolot.stories.tsx                   |    1 -
 .../Bubble/BubbleChart.stories.tsx                 |    1 -
 .../plugin-chart-echarts/Funnel/Funnel.stories.tsx |    1 -
 .../plugin-chart-echarts/Gauge/Gauge.stories.tsx   |    1 -
 .../plugin-chart-echarts/Graph/Graph.stories.tsx   |    1 -
 .../MixedSeries/MixedSeries.stories.tsx            |    1 -
 .../plugin-chart-echarts/Pie/Pie.stories.tsx       |    1 -
 .../plugin-chart-echarts/Radar/Radar.stories.tsx   |    1 -
 .../Sunburst/Sunburst.stories.tsx                  |    1 -
 .../Timeseries/Timeseries.stories.tsx              |    1 -
 .../plugin-chart-echarts/Tree/Tree.stories.tsx     |    1 -
 .../Treemap/Treemap.stories.tsx                    |    1 -
 .../Waterfall/Waterfall.stories.tsx                |    1 -
 .../PivotTable.stories.tsx                         |    1 -
 .../plugins/plugin-chart-table/Table.stories.tsx   |    1 -
 .../plugin-chart-word-cloud/WordCloud.stories.tsx  |    1 -
 .../ChartDataProvider.stories.tsx                  |    2 -
 .../superset-ui-chart/SuperChart.stories.tsx       |    1 -
 .../superset-ui-color/ColorPalettes.stories.tsx    |    1 -
 .../stories/superset-ui-color/RenderPalettes.tsx   |    1 -
 .../superset-ui-connection/Connection.stories.tsx  |    1 -
 .../NumberFormat.stories.tsx                       |    4 +-
 .../stories/superset-ui-style/Theme.stories.tsx    |    2 -
 .../superset-ui-time-format/TimeFormat.stories.tsx |    4 +-
 .../src/ReactCalendar.jsx                          |    1 -
 .../legacy-plugin-chart-chord/src/ReactChord.jsx   |    1 -
 .../src/ReactCountryMap.jsx                        |    1 -
 .../src/EventFlow.tsx                              |    1 -
 .../src/controlPanel.tsx                           |    1 -
 .../src/ReactHeatmap.jsx                           |    1 -
 .../src/controlPanel.tsx                           |    1 -
 .../src/Histogram.jsx                              |    4 +-
 .../src/WithLegend.jsx                             |    4 +-
 .../legacy-plugin-chart-histogram/src/index.js     |    2 +-
 .../src/HorizonChart.jsx                           |    4 +-
 .../legacy-plugin-chart-horizon/src/HorizonRow.jsx |    4 +-
 .../legacy-plugin-chart-map-box/src/MapBox.jsx     |    4 +-
 .../src/ScatterPlotGlowOverlay.jsx                 |    4 +-
 .../src/PairedTTest.jsx                            |    4 +-
 .../src/TTestTable.jsx                             |    4 +-
 .../src/ReactParallelCoordinates.jsx               |    1 -
 .../src/OptionDescription.tsx                      |    1 -
 .../src/ReactPartition.jsx                         |    1 -
 .../src/controlPanel.tsx                           |    1 -
 .../test/OptionDescription.test.jsx                |    1 -
 .../legacy-plugin-chart-rose/src/ReactRose.jsx     |    1 -
 .../legacy-plugin-chart-rose/src/controlPanel.tsx  |    1 -
 .../src/ReactSankeyLoop.jsx                        |    1 -
 .../legacy-plugin-chart-sankey/src/ReactSankey.jsx |    1 -
 .../src/ReactWorldMap.jsx                          |    1 -
 .../legacy-plugin-chart-world-map/src/index.js     |    2 +-
 .../src/CategoricalDeckGLContainer.tsx             |    2 +-
 .../src/DeckGLContainer.tsx                        |    2 +-
 .../legacy-preset-chart-deckgl/src/Multi/Multi.tsx |    2 +-
 .../legacy-preset-chart-deckgl/src/TooltipRow.tsx  |    2 -
 .../src/components/Legend.tsx                      |    2 +-
 .../src/components/Tooltip.tsx                     |    2 +-
 .../legacy-preset-chart-deckgl/src/factory.tsx     |    2 +-
 .../src/layers/Arc/Arc.tsx                         |    1 -
 .../src/layers/Contour/Contour.tsx                 |    1 -
 .../src/layers/Geojson/Geojson.tsx                 |    2 +-
 .../src/layers/Grid/Grid.tsx                       |    1 -
 .../src/layers/Heatmap/Heatmap.tsx                 |    1 -
 .../src/layers/Hex/Hex.tsx                         |    1 -
 .../src/layers/Path/Path.tsx                       |    1 -
 .../src/layers/Polygon/Polygon.tsx                 |    2 +-
 .../src/layers/Scatter/Scatter.tsx                 |    1 -
 .../src/layers/Screengrid/Screengrid.tsx           |    2 +-
 .../src/utilities/Shared_DeckGL.jsx                |    1 -
 .../legacy-preset-chart-nvd3/src/NVD3Controls.tsx  |    1 -
 .../legacy-preset-chart-nvd3/src/ReactNVD3.jsx     |    1 -
 .../BigNumber/BigNumberPeriodOverPeriod/PopKPI.tsx |    2 +-
 .../src/BigNumber/BigNumberTotal/index.ts          |    2 +-
 .../src/BigNumber/BigNumberViz.tsx                 |    4 +-
 .../BigNumberWithTrendline/controlPanel.tsx        |    1 -
 .../src/BigNumber/BigNumberWithTrendline/index.ts  |    2 +-
 .../src/BoxPlot/EchartsBoxPlot.tsx                 |    1 -
 .../plugin-chart-echarts/src/BoxPlot/index.ts      |    2 +-
 .../src/Bubble/EchartsBubble.tsx                   |    1 -
 .../plugin-chart-echarts/src/Bubble/index.ts       |    1 +
 .../src/Funnel/EchartsFunnel.tsx                   |    1 -
 .../src/Funnel/controlPanel.tsx                    |    1 -
 .../plugin-chart-echarts/src/Funnel/index.ts       |    1 +
 .../src/Gauge/EchartsGauge.tsx                     |    1 -
 .../src/Gauge/controlPanel.tsx                     |    1 -
 .../plugin-chart-echarts/src/Gauge/index.ts        |    1 +
 .../src/Graph/EchartsGraph.tsx                     |    1 -
 .../src/Graph/controlPanel.tsx                     |    1 -
 .../plugin-chart-echarts/src/Graph/index.ts        |    1 +
 .../plugin-chart-echarts/src/Heatmap/Heatmap.tsx   |    1 -
 .../src/Heatmap/controlPanel.tsx                   |    1 -
 .../plugin-chart-echarts/src/Heatmap/index.ts      |    1 +
 .../Histogram.tsx}                                 |   22 +-
 .../Heatmap.tsx => Histogram/buildQuery.ts}        |   25 +-
 .../src/Histogram/controlPanel.tsx                 |  141 +
 .../src/Histogram/images/example1.png              |  Bin 0 -> 58782 bytes
 .../src/Histogram/images/example2.png              |  Bin 0 -> 54583 bytes
 .../src/Histogram/images/thumbnail.png             |  Bin 0 -> 44371 bytes
 .../src/{Waterfall => Histogram}/index.ts          |   30 +-
 .../src/Histogram/transformProps.ts                |  188 +
 .../plugin-chart-echarts/src/Histogram/types.ts}   |   37 +-
 .../src/MixedTimeseries/EchartsMixedTimeseries.tsx |    2 +-
 .../src/MixedTimeseries/controlPanel.tsx           |    1 -
 .../src/MixedTimeseries/index.ts                   |    1 +
 .../plugin-chart-echarts/src/Pie/EchartsPie.tsx    |    1 -
 .../plugin-chart-echarts/src/Pie/controlPanel.tsx  |    1 -
 .../plugins/plugin-chart-echarts/src/Pie/index.ts  |    2 +-
 .../src/Radar/EchartsRadar.tsx                     |    1 -
 .../src/Radar/controlPanel.tsx                     |    1 -
 .../plugin-chart-echarts/src/Radar/index.ts        |    1 +
 .../src/Sunburst/EchartsSunburst.tsx               |    2 +-
 .../src/Sunburst/controlPanel.tsx                  |    1 -
 .../plugin-chart-echarts/src/Sunburst/index.ts     |    7 +-
 .../src/Timeseries/Area/controlPanel.tsx           |    1 -
 .../src/Timeseries/Area/index.ts                   |    2 +-
 .../src/Timeseries/EchartsTimeseries.tsx           |    2 +-
 .../src/Timeseries/Regular/Bar/controlPanel.tsx    |    1 -
 .../src/Timeseries/Regular/Bar/index.ts            |    2 +-
 .../src/Timeseries/Regular/Line/controlPanel.tsx   |    1 -
 .../src/Timeseries/Regular/Line/index.ts           |    2 +-
 .../Timeseries/Regular/Scatter/controlPanel.tsx    |    1 -
 .../src/Timeseries/Regular/Scatter/index.ts        |    2 +-
 .../Timeseries/Regular/SmoothLine/controlPanel.tsx |    1 -
 .../src/Timeseries/Step/controlPanel.tsx           |    1 -
 .../plugin-chart-echarts/src/Tree/EchartsTree.tsx  |    1 -
 .../plugin-chart-echarts/src/Tree/controlPanel.tsx |    1 -
 .../plugins/plugin-chart-echarts/src/Tree/index.ts |    1 +
 .../src/Treemap/EchartsTreemap.tsx                 |    2 +-
 .../src/Treemap/controlPanel.tsx                   |    1 -
 .../plugin-chart-echarts/src/Treemap/index.ts      |    1 +
 .../src/Waterfall/EchartsWaterfall.tsx             |    1 -
 .../src/Waterfall/controlPanel.tsx                 |    1 -
 .../plugin-chart-echarts/src/Waterfall/index.ts    |    2 +-
 .../plugin-chart-echarts/src/components/Echart.tsx |    6 +-
 .../src/components/ExtraControls.tsx               |    2 +-
 .../plugins/plugin-chart-echarts/src/controls.tsx  |    3 +-
 .../plugins/plugin-chart-echarts/src/index.ts      |    2 +
 .../plugins/plugin-chart-echarts/src/types.ts      |    5 +-
 .../plugins/plugin-chart-handlebars/package.json   |    2 +-
 .../plugin-chart-handlebars/src/Handlebars.tsx     |    2 +-
 .../src/components/CodeEditor/CodeEditor.tsx       |    2 +-
 .../src/components/ControlHeader/controlHeader.tsx |    2 +-
 .../src/components/Handlebars/HandlebarsViewer.tsx |    2 +-
 .../src/plugin/controls/handlebarTemplate.tsx      |    1 -
 .../src/plugin/controls/style.tsx                  |    1 -
 .../src/PivotTableChart.tsx                        |    2 +-
 .../src/plugin/controlPanel.tsx                    |    1 -
 .../plugin-chart-pivot-table/src/plugin/index.ts   |    2 +-
 .../src/react-pivottable/PivotTable.jsx            |    4 +-
 .../src/react-pivottable/TableRenderers.jsx        |    4 +-
 .../plugin-chart-table/src/DataTable/DataTable.tsx |    8 +-
 .../src/DataTable/components/GlobalFilter.tsx      |    4 +-
 .../src/DataTable/components/Pagination.tsx        |    6 +-
 .../src/DataTable/components/SelectPageSize.tsx    |    4 +-
 .../src/DataTable/hooks/useSticky.tsx              |   26 +-
 .../src/DataTable/types/react-table.d.ts           |    9 +-
 .../plugins/plugin-chart-table/src/TableChart.tsx  |    6 +-
 .../plugin-chart-table/src/controlPanel.tsx        |    1 -
 .../plugins/plugin-chart-table/src/index.ts        |    2 +-
 .../plugin-chart-table/test/TableChart.test.tsx    |    1 -
 .../plugins/plugin-chart-table/test/enzyme.tsx     |    2 +-
 .../src/chart/WordCloud.tsx                        |    7 +-
 superset-frontend/spec/__mocks__/svgrMock.tsx      |    2 +-
 superset-frontend/spec/helpers/ProviderWrapper.tsx |    1 -
 superset-frontend/spec/helpers/setup.ts            |    5 +
 superset-frontend/spec/helpers/shim.tsx            |    6 +-
 superset-frontend/spec/helpers/testing-library.tsx |    2 +-
 superset-frontend/src/GlobalStyles.tsx             |    1 -
 .../src/SqlLab/SqlLabGlobalStyles.tsx              |    1 -
 superset-frontend/src/SqlLab/actions/sqlLab.js     |   67 +-
 .../src/SqlLab/actions/sqlLab.test.js              |  101 +-
 .../AceEditorWrapper/AceEditorWrapper.test.tsx     |    1 -
 .../SqlLab/components/AceEditorWrapper/index.tsx   |    2 +-
 .../src/SqlLab/components/App/App.test.tsx         |    4 +-
 .../src/SqlLab/components/App/index.tsx            |    4 +-
 .../ColumnElement/ColumnElement.test.tsx           |    4 +-
 .../src/SqlLab/components/ColumnElement/index.tsx  |    4 +-
 .../EditorAutoSync/EditorAutoSync.test.tsx         |   35 +-
 .../src/SqlLab/components/EditorAutoSync/index.tsx |   53 +-
 .../EstimateQueryCostButton.test.tsx               |    1 -
 .../components/EstimateQueryCostButton/index.tsx   |    2 +-
 .../ExploreCtasResultsButton.test.tsx              |    1 -
 .../components/ExploreCtasResultsButton/index.tsx  |    1 -
 .../ExploreResultsButton.test.tsx                  |    1 -
 .../components/ExploreResultsButton/index.tsx      |    1 -
 .../HighlightedSql/HighlightedSql.test.tsx         |    4 +-
 .../src/SqlLab/components/HighlightedSql/index.tsx |    1 -
 .../KeyboardShortcutButton.test.tsx                |    1 -
 .../components/KeyboardShortcutButton/index.tsx    |    4 +-
 .../QueryAutoRefresh/QueryAutoRefresh.test.tsx     |    1 -
 .../components/QueryHistory/QueryHistory.test.tsx  |    1 -
 .../src/SqlLab/components/QueryHistory/index.tsx   |    2 +-
 .../QueryLimitSelect/QueryLimitSelect.test.tsx     |    1 -
 .../SqlLab/components/QueryLimitSelect/index.tsx   |    1 -
 .../QueryStateLabel/QueryStateLabel.test.tsx       |    4 +-
 .../SqlLab/components/QueryStateLabel/index.tsx    |    1 -
 .../components/QueryTable/QueryTable.test.tsx      |    6 +-
 .../src/SqlLab/components/QueryTable/index.tsx     |    2 +-
 .../SqlLab/components/ResultSet/ResultSet.test.tsx |    1 -
 .../src/SqlLab/components/ResultSet/index.tsx      |   16 +-
 .../RunQueryActionButton.test.tsx                  |    1 -
 .../components/RunQueryActionButton/index.tsx      |    9 +-
 .../SaveDatasetActionButton.test.tsx               |    1 -
 .../components/SaveDatasetActionButton/index.tsx   |    4 +-
 .../SaveDatasetModal/SaveDatasetModal.test.tsx     |    1 -
 .../SqlLab/components/SaveDatasetModal/index.tsx   |    5 +-
 .../SqlLab/components/SaveQuery/SaveQuery.test.tsx |    1 -
 .../src/SqlLab/components/SaveQuery/index.tsx      |    7 +-
 .../components/ScheduleQueryButton/index.tsx       |    7 +-
 .../ShareSqlLabQuery/ShareSqlLabQuery.test.tsx     |    6 +-
 .../SqlLab/components/ShareSqlLabQuery/index.tsx   |    1 -
 .../src/SqlLab/components/ShowSQL/index.tsx        |    1 -
 .../SqlLab/components/SouthPane/Results.test.tsx   |    1 -
 .../src/SqlLab/components/SouthPane/Results.tsx    |    4 +-
 .../SqlLab/components/SouthPane/SouthPane.test.tsx |    1 -
 .../src/SqlLab/components/SouthPane/index.tsx      |    2 +-
 .../SqlLab/components/SqlEditor/SqlEditor.test.tsx |    4 +-
 .../src/SqlLab/components/SqlEditor/index.tsx      |    6 +-
 .../SqlEditorLeftBar/SqlEditorLeftBar.test.tsx     |    1 -
 .../SqlLab/components/SqlEditorLeftBar/index.tsx   |    2 +-
 .../SqlEditorTabHeader/SqlEditorTabHeader.test.tsx |    1 -
 .../SqlLab/components/SqlEditorTabHeader/index.tsx |    5 +-
 .../TabStatusIcon/TabStatusIcon.test.tsx           |    1 -
 .../src/SqlLab/components/TabStatusIcon/index.tsx  |    4 +-
 .../TabbedSqlEditors/TabbedSqlEditors.test.tsx     |   14 +-
 .../SqlLab/components/TabbedSqlEditors/index.tsx   |   31 +-
 .../components/TableElement/TableElement.test.tsx  |    6 +-
 .../src/SqlLab/components/TableElement/index.tsx   |    2 +-
 .../TemplateParamsEditor.test.tsx                  |    1 -
 .../components/TemplateParamsEditor/index.tsx      |    2 +-
 superset-frontend/src/SqlLab/reducers/sqlLab.js    |   20 +-
 .../src/SqlLab/reducers/sqlLab.test.js             |   28 +
 .../src/components/Alert/Alert.stories.tsx         |    1 -
 .../src/components/Alert/Alert.test.tsx            |    1 -
 superset-frontend/src/components/Alert/index.tsx   |    2 +-
 .../AlteredSliceTag/AlteredSliceTag.stories.tsx    |    1 -
 .../AlteredSliceTag/AlteredSliceTag.test.jsx       |    1 -
 .../src/components/AlteredSliceTag/index.tsx       |    5 +-
 .../AsyncAceEditor/AsyncAceEditor.stories.tsx      |    1 -
 .../AsyncAceEditor/AsyncAceEditor.test.tsx         |    1 -
 .../src/components/AsyncAceEditor/index.tsx        |    5 +-
 .../AsyncEsmComponent.stories.tsx                  |    1 -
 .../AsyncEsmComponent/AsyncEsmComponent.test.tsx   |    1 -
 .../src/components/AsyncEsmComponent/index.tsx     |   24 +-
 .../src/components/AuditInfo/ModifiedInfo.test.tsx |    1 -
 .../src/components/AuditInfo/index.tsx             |    2 -
 .../src/components/Badge/Badge.stories.tsx         |    1 -
 .../src/components/Badge/Badge.test.tsx            |    1 -
 superset-frontend/src/components/Badge/index.tsx   |    1 -
 .../src/components/Button/Button.stories.tsx       |    1 -
 .../src/components/Button/Button.test.tsx          |    4 +-
 superset-frontend/src/components/Button/index.tsx  |   13 +-
 .../components/ButtonGroup/ButtonGroup.stories.tsx |    1 -
 .../components/ButtonGroup/ButtonGroup.test.tsx    |    1 -
 .../src/components/ButtonGroup/index.tsx           |    4 +-
 .../components/CachedLabel/CachedLabel.test.tsx    |    4 +-
 .../components/CachedLabel/TooltipContent.test.tsx |    1 -
 .../src/components/CachedLabel/TooltipContent.tsx  |    4 +-
 .../src/components/CachedLabel/index.tsx           |    7 +-
 .../src/components/Card/Card.stories.tsx           |    1 -
 superset-frontend/src/components/Card/index.tsx    |    1 -
 .../CertifiedBadge/CertifiedBadge.stories.tsx      |    1 -
 .../CertifiedBadge/CertifiedBadge.test.tsx         |    1 -
 .../src/components/CertifiedBadge/index.tsx        |    1 -
 superset-frontend/src/components/Chart/Chart.jsx   |    4 +-
 .../Chart/ChartContextMenu/ChartContextMenu.tsx    |    2 +-
 .../Chart/ChartContextMenu/useContextMenu.tsx      |    2 +-
 .../src/components/Chart/ChartErrorMessage.tsx     |    8 +-
 .../src/components/Chart/ChartRenderer.jsx         |    6 +-
 .../src/components/Chart/ChartRenderer.test.jsx    |    1 -
 .../components/Chart/DisabledMenuItemTooltip.tsx   |    2 +-
 .../components/Chart/DrillBy/DrillByChart.test.tsx |    1 -
 .../src/components/Chart/DrillBy/DrillByChart.tsx  |    2 +-
 .../Chart/DrillBy/DrillByMenuItems.test.tsx        |    1 -
 .../components/Chart/DrillBy/DrillByMenuItems.tsx  |    2 +-
 .../components/Chart/DrillBy/DrillByModal.test.tsx |    2 +-
 .../src/components/Chart/DrillBy/DrillByModal.tsx  |    8 +-
 .../Chart/DrillBy/useDisplayModeToggle.tsx         |    2 +-
 .../Chart/DrillBy/useDrillByBreadcrumbs.tsx        |    2 +-
 .../Chart/DrillBy/useResultsTableView.tsx          |    1 -
 .../DrillDetail/DrillDetailMenuItems.test.tsx      |    4 +-
 .../Chart/DrillDetail/DrillDetailMenuItems.tsx     |    8 +-
 .../Chart/DrillDetail/DrillDetailModal.test.tsx    |    2 +-
 .../Chart/DrillDetail/DrillDetailModal.tsx         |    2 +-
 .../Chart/DrillDetail/DrillDetailPane.test.tsx     |    1 -
 .../Chart/DrillDetail/DrillDetailPane.tsx          |    5 +-
 .../DrillDetail/DrillDetailTableControls.test.tsx  |    1 -
 .../Chart/DrillDetail/DrillDetailTableControls.tsx |    2 +-
 .../components/Chart/MenuItemWithTruncation.tsx    |    2 +-
 .../src/components/Checkbox/Checkbox.stories.tsx   |    1 -
 .../src/components/Checkbox/Checkbox.test.tsx      |    4 +-
 .../src/components/Checkbox/Checkbox.tsx           |    4 +-
 .../src/components/Checkbox/CheckboxIcons.tsx      |    1 -
 .../src/components/Collapse/Collapse.stories.tsx   |    1 -
 .../src/components/Collapse/Collapse.test.tsx      |    1 -
 .../src/components/Collapse/index.tsx              |    1 -
 .../ConfirmStatusChange.stories.tsx                |    1 -
 .../ConfirmStatusChange.test.jsx                   |    1 -
 .../src/components/ConfirmStatusChange/index.tsx   |    9 +-
 .../CopyToClipboard/CopyToClipboard.stories.tsx    |    1 -
 .../CopyToClipboard/CopyToClipboard.test.tsx       |    1 -
 .../src/components/CopyToClipboard/index.tsx       |    8 +-
 .../components/CronPicker/CronPicker.stories.tsx   |    2 +-
 .../src/components/CronPicker/CronPicker.test.tsx  |    1 -
 .../src/components/CronPicker/CronPicker.tsx       |    1 -
 .../DatabaseSelector/DatabaseSelector.test.tsx     |    1 -
 .../src/components/DatabaseSelector/index.tsx      |    4 +-
 .../Datasource/ChangeDatasourceModal.test.jsx      |    1 -
 .../Datasource/ChangeDatasourceModal.tsx           |    6 +-
 .../components/Datasource/CollectionTable.test.jsx |    4 +-
 .../src/components/Datasource/CollectionTable.tsx  |   14 +-
 .../src/components/Datasource/DatasourceEditor.jsx |    4 +-
 .../Datasource/DatasourceEditor.test.jsx           |    1 -
 .../components/Datasource/DatasourceModal.test.jsx |    1 -
 .../src/components/Datasource/DatasourceModal.tsx  |    2 +-
 .../src/components/Datasource/Field.test.tsx       |    1 -
 .../src/components/Datasource/Field.tsx            |    9 +-
 .../src/components/Datasource/Fieldset.tsx         |    8 +-
 .../src/components/Datasource/utils.js             |    8 +-
 .../components/DatePicker/DatePicker.stories.tsx   |    1 -
 .../components/DeleteModal/DeleteModal.test.tsx    |    1 -
 .../src/components/DeleteModal/index.tsx           |    8 +-
 .../src/components/DesignSystem.stories.tsx        |    1 -
 .../src/components/Dropdown/Dropdown.stories.tsx   |    1 -
 .../src/components/Dropdown/Dropdown.test.tsx      |    1 -
 .../src/components/Dropdown/index.tsx              |   20 +-
 .../DropdownButton/DropdownButton.stories.tsx      |    1 -
 .../src/components/DropdownButton/index.tsx        |    5 +-
 .../DropdownContainer.stories.tsx                  |    4 +-
 .../DropdownContainer/DropdownContainer.test.tsx   |    3 +-
 .../DropdownContainer/Overview.stories.tsx         |    1 -
 .../src/components/DropdownContainer/index.tsx     |    8 +-
 .../DropdownSelectableIcon.stories.tsx             |    1 -
 .../DropdownSelectableIcon.test.tsx                |    1 -
 .../components/DropdownSelectableIcon/index.tsx    |   14 +-
 .../DynamicEditableTitle.test.tsx                  |    1 -
 .../src/components/DynamicEditableTitle/index.tsx  |    2 +-
 .../src/components/DynamicPlugins/index.tsx        |    7 +-
 .../EditableTitle/EditableTitle.stories.tsx        |    1 -
 .../EditableTitle/EditableTitle.test.tsx           |    4 +-
 .../src/components/EditableTitle/index.tsx         |    2 +-
 .../components/EmptyState/EmptyState.stories.tsx   |    1 -
 .../src/components/EmptyState/index.tsx            |    8 +-
 .../ErrorBoundary/ErrorBoundary.test.tsx           |    4 +-
 .../src/components/ErrorBoundary/index.tsx         |   12 +-
 .../ErrorMessage/BasicErrorAlert.test.tsx          |    1 -
 .../components/ErrorMessage/BasicErrorAlert.tsx    |    1 -
 .../ErrorMessage/DatabaseErrorMessage.test.tsx     |    1 -
 .../ErrorMessage/DatabaseErrorMessage.tsx          |    4 +-
 .../DatasetNotFoundErrorMessage.test.tsx           |    1 -
 .../ErrorMessage/DatasetNotFoundErrorMessage.tsx   |    1 -
 .../components/ErrorMessage/ErrorAlert.test.tsx    |    1 -
 .../src/components/ErrorMessage/ErrorAlert.tsx     |    2 +-
 .../ErrorMessageWithStackTrace.test.tsx            |    1 -
 .../ErrorMessage/ErrorMessageWithStackTrace.tsx    |    6 +-
 .../src/components/ErrorMessage/IssueCode.test.tsx |    1 -
 .../src/components/ErrorMessage/IssueCode.tsx      |    2 -
 .../ErrorMessage/MarshmallowErrorMessage.test.tsx  |    1 -
 .../ErrorMessage/MarshmallowErrorMessage.tsx       |    1 -
 .../ErrorMessage/OAuth2RedirectMessage.test.tsx    |    1 -
 .../ErrorMessage/OAuth2RedirectMessage.tsx         |    5 +-
 .../ErrorMessage/ParameterErrorMessage.test.tsx    |    1 -
 .../ErrorMessage/ParameterErrorMessage.tsx         |    4 +-
 .../ErrorMessage/TimeoutErrorMessage.test.tsx      |    1 -
 .../ErrorMessage/TimeoutErrorMessage.tsx           |    4 +-
 .../getErrorMessageComponentRegistry.test.tsx      |    1 -
 .../src/components/FacePile/FacePile.stories.tsx   |    1 -
 .../src/components/FacePile/FacePile.test.tsx      |    1 -
 .../src/components/FacePile/index.tsx              |    1 -
 .../src/components/FaveStar/FaveStar.test.tsx      |    1 -
 .../src/components/FaveStar/index.tsx              |    5 +-
 .../FilterableTable/FilterableTable.stories.tsx    |    1 -
 .../FilterableTable/FilterableTable.test.tsx       |    6 +-
 .../src/components/FilterableTable/index.tsx       |    2 +-
 .../src/components/FilterableTable/utils.test.tsx  |    1 -
 .../src/components/FilterableTable/utils.tsx       |    1 -
 .../FlashProvider/FlashProvider.test.tsx           |    1 -
 superset-frontend/src/components/Form/Form.tsx     |    1 -
 .../src/components/Form/FormLabel.tsx              |    2 +-
 .../Form/LabeledErrorBoundInput.stories.tsx        |    2 +-
 .../Form/LabeledErrorBoundInput.test.jsx           |    1 -
 .../src/components/Form/LabeledErrorBoundInput.tsx |    1 -
 .../src/components/FormRow/FormRow.stories.tsx     |    1 -
 .../src/components/FormRow/FormRow.test.jsx        |    1 -
 superset-frontend/src/components/FormRow/index.jsx |    1 -
 .../components/GenericLink/GenericLink.test.tsx    |    1 -
 .../src/components/GenericLink/GenericLink.tsx     |    5 +-
 .../components/IconButton/IconButton.stories.tsx   |    1 -
 .../src/components/IconButton/IconButton.test.jsx  |    1 -
 .../src/components/IconButton/index.tsx            |    1 -
 .../components/IconTooltip/IconTooltip.stories.tsx |    1 -
 .../components/IconTooltip/IconTooltip.test.jsx    |    6 +-
 .../src/components/IconTooltip/index.tsx           |    2 +-
 .../src/components/Icons/AntdEnhanced.tsx          |    1 -
 superset-frontend/src/components/Icons/Icon.tsx    |    4 +-
 .../src/components/Icons/Icons.stories.tsx         |    1 -
 superset-frontend/src/components/Icons/index.tsx   |    4 +-
 .../src/components/ImportModal/ErrorAlert.tsx      |    2 +-
 .../components/ImportModal/ImportModal.test.tsx    |    1 -
 .../src/components/ImportModal/index.tsx           |    5 +-
 .../IndeterminateCheckbox.stories.tsx              |    1 -
 .../IndeterminateCheckbox.test.tsx                 |    1 -
 .../src/components/IndeterminateCheckbox/index.tsx |   14 +-
 .../components/InfoTooltip/InfoTooltip.stories.tsx |    1 -
 .../src/components/InfoTooltip/index.tsx           |    1 -
 .../src/components/JsonModal/JsonModal.test.tsx    |    1 -
 .../src/components/JsonModal/index.tsx             |    4 +-
 .../src/components/Label/Label.stories.tsx         |    1 -
 .../src/components/Label/Label.test.tsx            |    4 +-
 superset-frontend/src/components/Label/index.tsx   |   14 +-
 .../components/LastUpdated/LastUpdated.test.tsx    |    4 +-
 .../src/components/LastUpdated/index.tsx           |   10 +-
 .../src/components/ListView/ActionsBar.tsx         |    4 +-
 .../src/components/ListView/CardCollection.tsx     |    6 +-
 .../src/components/ListView/CardSortSelect.tsx     |    2 +-
 .../src/components/ListView/CrossLinks.test.tsx    |    1 -
 .../src/components/ListView/CrossLinks.tsx         |    4 +-
 .../components/ListView/CrossLinksTooltip.test.tsx |    1 -
 .../src/components/ListView/CrossLinksTooltip.tsx  |    4 +-
 .../components/ListView/DashboardCrossLinks.tsx    |    4 +-
 .../src/components/ListView/Filters/DateRange.tsx  |    6 +-
 .../src/components/ListView/Filters/Search.tsx     |   13 +-
 .../src/components/ListView/Filters/Select.tsx     |    6 +-
 .../src/components/ListView/Filters/index.tsx      |    6 +-
 .../src/components/ListView/ListView.test.jsx      |    1 -
 .../src/components/ListView/ListView.test.tsx      |    1 -
 .../src/components/ListView/ListView.tsx           |    8 +-
 superset-frontend/src/components/ListView/utils.ts |    6 +-
 .../components/ListViewCard/ImageLoader.test.jsx   |    1 -
 .../src/components/ListViewCard/ImageLoader.tsx    |    8 +-
 .../ListViewCard/ListViewCard.stories.tsx          |    1 -
 .../components/ListViewCard/ListViewCard.test.jsx  |    1 -
 .../src/components/ListViewCard/index.tsx          |   22 +-
 .../src/components/Loading/Loading.stories.tsx     |    1 -
 .../src/components/Loading/Loading.test.tsx        |    1 -
 superset-frontend/src/components/Loading/index.tsx |    1 -
 superset-frontend/src/components/Menu/index.tsx    |    3 +-
 .../src/components/MessageToasts/Toast.test.jsx    |    1 -
 .../src/components/MessageToasts/Toast.tsx         |    2 +-
 .../MessageToasts/ToastPresenter.test.jsx          |    1 -
 .../components/MessageToasts/ToastPresenter.tsx    |    1 -
 .../src/components/MetadataBar/ContentConfig.tsx   |    1 -
 .../components/MetadataBar/MetadataBar.stories.tsx |    1 -
 .../components/MetadataBar/MetadataBar.test.tsx    |    1 -
 .../src/components/MetadataBar/MetadataBar.tsx     |    2 +-
 .../MetadataBar/MetadataBarOverview.stories.tsx    |    1 -
 .../src/components/Modal/Modal.stories.tsx         |    1 -
 superset-frontend/src/components/Modal/Modal.tsx   |    8 +-
 .../ModalTrigger/ModalTrigger.stories.tsx          |    1 -
 .../components/ModalTrigger/ModalTrigger.test.tsx  |    1 -
 .../src/components/ModalTrigger/index.tsx          |   13 +-
 .../PageHeaderWithActions.test.tsx                 |    1 -
 .../src/components/PageHeaderWithActions/index.tsx |    2 +-
 .../src/components/Pagination/Ellipsis.test.tsx    |    1 -
 .../src/components/Pagination/Ellipsis.tsx         |    1 -
 .../src/components/Pagination/Item.test.tsx        |    1 -
 .../src/components/Pagination/Item.tsx             |    4 +-
 .../src/components/Pagination/Next.test.tsx        |    1 -
 .../src/components/Pagination/Next.tsx             |    1 -
 .../src/components/Pagination/Prev.test.tsx        |    1 -
 .../src/components/Pagination/Prev.tsx             |    1 -
 .../src/components/Pagination/Wrapper.test.tsx     |    1 -
 .../src/components/Pagination/Wrapper.tsx          |    1 -
 .../src/components/Pagination/index.tsx            |    1 -
 .../src/components/Pagination/types.ts             |    4 +-
 .../src/components/Popover/Popover.stories.tsx     |    1 -
 .../src/components/Popover/Popover.test.tsx        |    1 -
 .../src/components/Popover/Popover.tsx             |    1 -
 .../PopoverDropdown/PopoverDropdown.stories.tsx    |    2 +-
 .../PopoverDropdown/PopoverDropdown.test.tsx       |    1 -
 .../src/components/PopoverDropdown/index.tsx       |    6 +-
 .../PopoverSection/PopoverSection.stories.tsx      |    1 -
 .../PopoverSection/PopoverSection.test.tsx         |    1 -
 .../src/components/PopoverSection/index.tsx        |    2 +-
 .../components/ProgressBar/ProgressBar.stories.tsx |    1 -
 .../components/ProgressBar/ProgressBar.test.tsx    |    1 -
 .../src/components/ProgressBar/index.tsx           |    1 -
 .../src/components/Radio/Radio.stories.tsx         |    1 -
 .../RefreshLabel/RefreshLabel.stories.tsx          |    1 -
 .../components/RefreshLabel/RefreshLabel.test.tsx  |    1 -
 .../src/components/RefreshLabel/index.tsx          |    2 +-
 .../src/components/ResizableSidebar/index.tsx      |    6 +-
 .../src/components/Select/AsyncSelect.stories.tsx  |    8 +-
 .../src/components/Select/AsyncSelect.test.tsx     |    1 -
 .../src/components/Select/AsyncSelect.tsx          |    6 +-
 .../src/components/Select/CustomTag.tsx            |    4 +-
 .../src/components/Select/Select.stories.tsx       |    1 -
 .../src/components/Select/Select.test.tsx          |    1 -
 superset-frontend/src/components/Select/Select.tsx |    6 +-
 superset-frontend/src/components/Select/utils.tsx  |    2 +-
 .../src/components/Slider/Slider.stories.tsx       |    1 -
 superset-frontend/src/components/Slider/index.tsx  |    1 -
 .../src/components/Switch/Switch.stories.tsx       |    1 -
 superset-frontend/src/components/Switch/index.tsx  |    1 -
 .../src/components/Table/Table.stories.tsx         |   15 +-
 .../src/components/Table/Table.test.tsx            |    1 -
 .../src/components/Table/TableOverview.stories.tsx |    1 -
 .../src/components/Table/VirtualTable.tsx          |    4 +-
 .../ActionCell/ActionCell.overview.tsx             |    3 -
 .../ActionCell/ActionCell.stories.tsx              |    1 -
 .../cell-renderers/ActionCell/ActionCell.test.tsx  |    1 -
 .../Table/cell-renderers/ActionCell/index.tsx      |    2 +-
 .../BooleanCell/BooleanCell.stories.tsx            |    1 -
 .../BooleanCell/BooleanCell.test.tsx               |    1 -
 .../Table/cell-renderers/BooleanCell/index.tsx     |    1 -
 .../ButtonCell/ButtonCell.stories.tsx              |    1 -
 .../cell-renderers/ButtonCell/ButtonCell.test.tsx  |    1 -
 .../Table/cell-renderers/ButtonCell/index.tsx      |    1 -
 .../cell-renderers/NullCell/NullCell.stories.tsx   |    1 -
 .../cell-renderers/NullCell/NullCell.test.tsx      |    1 -
 .../Table/cell-renderers/NullCell/index.tsx        |    1 -
 .../NumericCell/NumericCell.stories.tsx            |    1 -
 .../NumericCell/NumericCell.test.tsx               |    1 -
 .../Table/cell-renderers/NumericCell/index.tsx     |    1 -
 .../cell-renderers/TimeCell/TimeCell.stories.tsx   |    1 -
 .../cell-renderers/TimeCell/TimeCell.test.tsx      |    1 -
 .../Table/cell-renderers/TimeCell/index.tsx        |    1 -
 .../header-renderers/HeaderWithRadioGroup.tsx      |    2 +-
 superset-frontend/src/components/Table/index.tsx   |   14 +-
 .../TableCollection/TableCollection.test.tsx       |    1 -
 .../src/components/TableCollection/index.tsx       |    4 +-
 .../TableSelector/TableSelector.test.tsx           |    1 -
 .../src/components/TableSelector/index.tsx         |    2 +-
 .../src/components/TableView/TableView.stories.tsx |    1 -
 .../src/components/TableView/TableView.test.tsx    |    1 -
 .../src/components/TableView/TableView.tsx         |    4 +-
 .../src/components/Tabs/Tabs.stories.tsx           |    1 -
 superset-frontend/src/components/Tabs/Tabs.tsx     |    1 -
 superset-frontend/src/components/Tags/Tag.test.tsx |    1 -
 superset-frontend/src/components/Tags/Tag.tsx      |    2 +-
 .../src/components/Tags/TagsList.stories.tsx       |    1 -
 .../src/components/Tags/TagsList.test.tsx          |    1 -
 superset-frontend/src/components/Tags/TagsList.tsx |    2 +-
 .../TelemetryPixel/TelemetryPixel.test.tsx         |    1 -
 .../src/components/TelemetryPixel/index.tsx        |    4 +-
 .../src/components/Timer/Timer.stories.tsx         |    1 -
 .../src/components/Timer/Timer.test.tsx            |    1 -
 superset-frontend/src/components/Timer/index.tsx   |    2 +-
 .../TimezoneSelector/TimezoneSelector.stories.tsx  |    1 -
 .../TimezoneSelector/TimezoneSelector.test.tsx     |    4 +-
 .../src/components/TimezoneSelector/index.tsx      |    2 +-
 .../src/components/Tooltip/Tooltip.stories.tsx     |    1 -
 .../src/components/Tooltip/Tooltip.test.tsx        |    1 -
 superset-frontend/src/components/Tooltip/index.tsx |    1 -
 .../TooltipParagraph/TooltipParagraph.stories.tsx  |    1 -
 .../TooltipParagraph/TooltipParagraph.test.tsx     |    1 -
 .../src/components/TooltipParagraph/index.tsx      |    5 +-
 .../src/components/TruncatedList/index.tsx         |    7 +-
 .../src/components/UiConfigContext/index.tsx       |    9 +-
 .../WarningIconWithTooltip.stories.tsx             |    1 -
 .../components/WarningIconWithTooltip/index.tsx    |    1 -
 .../components/AddSliceCard/AddSliceCard.test.tsx  |   11 +-
 .../components/AddSliceCard/AddSliceCard.tsx       |   17 +-
 .../components/AnchorLink/AnchorLink.stories.tsx   |    1 -
 .../components/AnchorLink/AnchorLink.test.tsx      |    1 -
 .../src/dashboard/components/AnchorLink/index.tsx  |    2 +-
 .../BuilderComponentPane.test.tsx                  |    1 -
 .../components/BuilderComponentPane/index.tsx      |    1 -
 .../components/ColorSchemeControlWrapper.jsx       |    4 +-
 .../components/CssEditor/CssEditor.test.tsx        |    1 -
 .../src/dashboard/components/CssEditor/index.tsx   |    8 +-
 .../src/dashboard/components/Dashboard.jsx         |    4 +-
 .../src/dashboard/components/Dashboard.test.jsx    |    1 -
 .../DashboardBuilder/DashboardBuilder.test.tsx     |    1 -
 .../DashboardBuilder/DashboardBuilder.tsx          |   11 +-
 .../DashboardBuilder/DashboardContainer.tsx        |    2 +-
 .../DashboardBuilder/DashboardWrapper.test.tsx     |    1 -
 .../DashboardBuilder/DashboardWrapper.tsx          |   13 +-
 .../src/dashboard/components/DashboardGrid.jsx     |    8 +-
 .../dashboard/components/DashboardGrid.test.jsx    |    1 -
 .../dashboard/components/DeleteComponentButton.tsx |    5 +-
 .../EmbeddedModal/EmbeddedModal.test.tsx           |    1 -
 .../dashboard/components/EmbeddedModal/index.tsx   |    2 +-
 .../DetailsPanel/DetailsPanel.test.tsx             |    2 +-
 .../components/FiltersBadge/DetailsPanel/index.tsx |    5 +-
 .../FilterIndicator/FilterIndicator.test.tsx       |    1 -
 .../FiltersBadge/FilterIndicator/index.tsx         |    4 +-
 .../components/FiltersBadge/FiltersBadge.test.tsx  |    4 +-
 .../dashboard/components/FiltersBadge/index.tsx    |    9 +-
 .../dashboard/components/Header/Header.test.tsx    |    1 -
 .../HeaderActionsDropdown.test.tsx                 |    1 -
 .../Header/HeaderActionsDropdown/index.jsx         |    4 +-
 .../src/dashboard/components/Header/index.jsx      |    4 +-
 .../src/dashboard/components/IconButton.tsx        |    2 +-
 .../src/dashboard/components/MissingChart.jsx      |    1 -
 .../src/dashboard/components/MissingChart.test.tsx |    1 -
 .../OverwriteConfirm/OverwriteConfirm.test.tsx     |    1 -
 .../OverwriteConfirmModal.test.tsx                 |    1 -
 .../OverwriteConfirm/OverwriteConfirmModal.tsx     |    6 +-
 .../components/OverwriteConfirm/index.tsx          |    1 -
 .../PropertiesModal/PropertiesModal.test.jsx       |    1 -
 .../PropertiesModal/PropertiesModal.test.tsx       |    1 -
 .../dashboard/components/PropertiesModal/index.tsx |    2 +-
 .../PublishedStatus/PublishedStatus.test.tsx       |    1 -
 .../dashboard/components/PublishedStatus/index.jsx |    4 +-
 .../components/RefreshIntervalModal.test.tsx       |    4 +-
 .../dashboard/components/RefreshIntervalModal.tsx  |    6 +-
 .../src/dashboard/components/SaveModal.tsx         |    6 +-
 .../src/dashboard/components/SliceAdder.jsx        |    4 +-
 .../src/dashboard/components/SliceAdder.test.jsx   |    1 -
 .../components/SliceHeader/SliceHeader.test.tsx    |    1 -
 .../src/dashboard/components/SliceHeader/index.tsx |    9 +-
 .../SliceHeaderControls.test.tsx                   |   18 +-
 .../components/SliceHeaderControls/index.tsx       |    9 +-
 .../SyncDashboardState/SyncDashboardState.test.tsx |    1 -
 .../components/SyncDashboardState/index.tsx        |    5 +-
 .../URLShortLinkButton/URLShortLinkButton.test.tsx |    1 -
 .../components/URLShortLinkButton/index.tsx        |    2 +-
 .../UndoRedoKeyListeners.test.tsx                  |    1 -
 .../components/UndoRedoKeyListeners/index.jsx      |    4 +-
 .../components/dnd/AddSliceDragPreview.jsx         |    1 -
 .../src/dashboard/components/dnd/DragDroppable.jsx |    4 +-
 .../components/dnd/DragDroppable.test.jsx          |    1 -
 .../src/dashboard/components/dnd/DragHandle.tsx    |    2 +-
 .../components/filterscope/FilterFieldItem.jsx     |    1 -
 .../components/filterscope/FilterFieldTree.jsx     |    1 -
 .../components/filterscope/FilterScope.test.tsx    |    1 -
 .../components/filterscope/FilterScopeModal.tsx    |    6 +-
 .../components/filterscope/FilterScopeSelector.jsx |    4 +-
 .../components/filterscope/FilterScopeTree.jsx     |    1 -
 .../filterscope/renderFilterFieldTreeNodes.jsx     |    1 -
 .../filterscope/renderFilterScopeTreeNodes.jsx     |    1 -
 .../dashboard/components/filterscope/treeIcons.jsx |    1 -
 .../dashboard/components/gridComponents/Chart.jsx  |    4 +-
 .../components/gridComponents/Chart.test.jsx       |    1 -
 .../components/gridComponents/ChartHolder.test.tsx |    1 -
 .../components/gridComponents/ChartHolder.tsx      |    3 +-
 .../dashboard/components/gridComponents/Column.jsx |   13 +-
 .../components/gridComponents/Column.test.jsx      |    1 -
 .../components/gridComponents/Divider.jsx          |    4 +-
 .../components/gridComponents/Divider.test.jsx     |    1 -
 .../components/gridComponents/DynamicComponent.tsx |    2 +-
 .../dashboard/components/gridComponents/Header.jsx |    4 +-
 .../components/gridComponents/Header.test.jsx      |    1 -
 .../components/gridComponents/Markdown.jsx         |    4 +-
 .../components/gridComponents/Markdown.test.jsx    |    1 -
 .../dashboard/components/gridComponents/Row.jsx    |   13 +-
 .../components/gridComponents/Row.test.jsx         |    1 -
 .../dashboard/components/gridComponents/Tab.jsx    |    8 +-
 .../components/gridComponents/Tab.test.jsx         |    1 -
 .../components/gridComponents/Tab.test.tsx         |    1 -
 .../dashboard/components/gridComponents/Tabs.jsx   |    4 +-
 .../components/gridComponents/Tabs.test.jsx        |    1 -
 .../components/gridComponents/Tabs.test.tsx        |    1 -
 .../gridComponents/new/DraggableNewComponent.jsx   |    4 +-
 .../new/DraggableNewComponent.test.jsx             |    1 -
 .../components/gridComponents/new/NewColumn.jsx    |    1 -
 .../gridComponents/new/NewColumn.test.jsx          |    1 -
 .../components/gridComponents/new/NewDivider.jsx   |    1 -
 .../gridComponents/new/NewDivider.test.jsx         |    1 -
 .../gridComponents/new/NewDynamicComponent.tsx     |    2 +-
 .../components/gridComponents/new/NewHeader.jsx    |    1 -
 .../gridComponents/new/NewHeader.test.jsx          |    1 -
 .../components/gridComponents/new/NewMarkdown.jsx  |    1 -
 .../components/gridComponents/new/NewRow.jsx       |    1 -
 .../components/gridComponents/new/NewRow.test.jsx  |    1 -
 .../components/gridComponents/new/NewTabs.jsx      |    1 -
 .../components/gridComponents/new/NewTabs.test.jsx |    1 -
 .../components/menu/BackgroundStyleDropdown.tsx    |    4 +-
 .../DownloadMenuItems/DownloadAsImage.test.tsx     |    2 +-
 .../menu/DownloadMenuItems/DownloadAsImage.tsx     |    2 +-
 .../menu/DownloadMenuItems/DownloadAsPdf.test.tsx  |    2 +-
 .../menu/DownloadMenuItems/DownloadAsPdf.tsx       |    2 +-
 .../DownloadMenuItems/DownloadMenuItems.test.tsx   |    1 -
 .../components/menu/DownloadMenuItems/index.tsx    |    1 -
 .../dashboard/components/menu/HoverMenu.test.tsx   |    1 -
 .../src/dashboard/components/menu/HoverMenu.tsx    |    7 +-
 .../components/menu/MarkdownModeDropdown.tsx       |    4 +-
 .../menu/ShareMenuItems/ShareMenuItems.test.tsx    |    1 -
 .../components/menu/ShareMenuItems/index.tsx       |    2 +-
 .../components/menu/WithPopoverMenu.test.jsx       |    1 -
 .../dashboard/components/menu/WithPopoverMenu.tsx  |   12 +-
 .../FilterBar/ActionButtons/ActionButtons.test.tsx |    1 -
 .../FilterBar/ActionButtons/index.tsx              |    2 +-
 .../FilterBar/CrossFilters/CrossFilter.test.tsx    |    1 -
 .../FilterBar/CrossFilters/CrossFilter.tsx         |    2 +-
 .../FilterBar/CrossFilters/CrossFilterTag.test.tsx |    1 -
 .../FilterBar/CrossFilters/CrossFilterTag.tsx      |    1 -
 .../CrossFilters/CrossFilterTitle.test.tsx         |    1 -
 .../FilterBar/CrossFilters/CrossFilterTitle.tsx    |    1 -
 .../ScopingModal/ChartsScopingListPanel.test.tsx   |    1 -
 .../ScopingModal/ChartsScopingListPanel.tsx        |    2 +-
 .../ScopingModal/ScopingModal.test.tsx             |    1 -
 .../CrossFilters/ScopingModal/ScopingModal.tsx     |    2 +-
 .../ScopingModal/ScopingModalContent.tsx           |    1 -
 .../CrossFilters/ScopingModal/ScopingTreePanel.tsx |    2 +-
 .../ScopingModal/useCrossFiltersScopingModal.tsx   |    2 +-
 .../FilterBar/CrossFilters/Vertical.tsx            |    1 -
 .../CrossFilters/VerticalCollapse.test.tsx         |    1 -
 .../FilterBar/CrossFilters/VerticalCollapse.tsx    |    2 +-
 .../nativeFilters/FilterBar/FilterBar.test.tsx     |    1 -
 .../FilterBarSettings/FilterBarSettings.test.tsx   |    1 -
 .../FilterBar/FilterBarSettings/index.tsx          |    2 +-
 .../FilterConfigurationLink.test.tsx               |    1 -
 .../FilterBar/FilterConfigurationLink/index.tsx    |    9 +-
 .../FilterBar/FilterControls/FilterControl.tsx     |    4 +-
 .../FilterBar/FilterControls/FilterControls.tsx    |   10 +-
 .../FilterControls/FilterDivider.stories.tsx       |    1 -
 .../FilterControls/FilterDivider.test.tsx          |    1 -
 .../FilterBar/FilterControls/FilterDivider.tsx     |    1 -
 .../FilterBar/FilterControls/FilterValue.tsx       |    9 +-
 .../FilterBar/FilterControls/types.ts              |    5 +-
 .../FilterBar/FiltersDropdownContent/index.tsx     |    2 +-
 .../FiltersOutOfScopeCollapsible/index.tsx         |    2 +-
 .../nativeFilters/FilterBar/Header/Header.test.tsx |    1 -
 .../nativeFilters/FilterBar/Header/index.tsx       |    4 +-
 .../nativeFilters/FilterBar/Horizontal.tsx         |    6 +-
 .../FilterBar/HorizontalFilterBar.test.tsx         |    1 -
 .../nativeFilters/FilterBar/Vertical.tsx           |    8 +-
 .../components/nativeFilters/FilterBar/index.tsx   |    9 +-
 .../FilterBar/useFilterControlFactory.tsx          |    2 +-
 .../nativeFilters/FilterCard/DependenciesRow.tsx   |    4 +-
 .../nativeFilters/FilterCard/FilterCard.test.tsx   |    1 -
 .../nativeFilters/FilterCard/FilterCardContent.tsx |    1 -
 .../nativeFilters/FilterCard/NameRow.tsx           |    1 -
 .../nativeFilters/FilterCard/ScopeRow.tsx          |    4 +-
 .../FilterCard/TooltipWithTruncation.tsx           |    1 -
 .../nativeFilters/FilterCard/TypeRow.tsx           |    2 +-
 .../components/nativeFilters/FilterCard/index.tsx  |    2 +-
 .../FiltersConfigModal/DividerConfigForm.tsx       |    4 +-
 .../FiltersConfigModal/DraggableFilter.tsx         |    4 +-
 .../FiltersConfigModal/FilterConfigPane.test.tsx   |    1 -
 .../FiltersConfigModal/FilterConfigurePane.tsx     |    6 +-
 .../FiltersConfigModal/FilterTitleContainer.tsx    |    5 +-
 .../FiltersConfigModal/FilterTitlePane.tsx         |    5 +-
 .../FiltersConfigForm/CollapsibleControl.tsx       |    2 +-
 .../FiltersConfigForm/ColumnSelect.test.tsx        |    1 -
 .../FiltersConfigForm/ColumnSelect.tsx             |    2 +-
 .../FiltersConfigForm/DatasetSelect.tsx            |    2 +-
 .../FiltersConfigForm/DefaultValue.tsx             |    2 +-
 .../FiltersConfigForm/DependencyList.tsx           |    2 +-
 .../FilterScope/FilterScope.test.tsx               |    1 -
 .../FiltersConfigForm/FilterScope/FilterScope.tsx  |    2 +-
 .../FiltersConfigForm/FilterScope/ScopingTree.tsx  |    2 +-
 .../FiltersConfigForm/FiltersConfigForm.tsx        |    8 +-
 .../FiltersConfigForm/RemovedFilter.tsx            |    2 +-
 .../FiltersConfigForm/getControlItemsMap.test.tsx  |    1 -
 .../FiltersConfigForm/getControlItemsMap.tsx       |    6 +-
 .../FiltersConfigModal/FiltersConfigForm/utils.ts  |    6 +-
 .../FiltersConfigModal/FiltersConfigModal.test.tsx |    1 -
 .../FiltersConfigModal/FiltersConfigModal.tsx      |   10 +-
 .../Footer/CancelConfirmationAlert.tsx             |    4 +-
 .../FiltersConfigModal/Footer/Footer.tsx           |    2 +-
 .../FiltersConfigModal/NativeFiltersModal.test.tsx |    1 -
 .../components/resizable/ResizableContainer.jsx    |    4 +-
 .../resizable/ResizableContainer.test.tsx          |    1 -
 .../components/resizable/ResizableHandle.jsx       |    2 -
 .../components/resizable/ResizableHandle.test.tsx  |    1 -
 .../dashboard/containers/DashboardComponent.jsx    |    4 +-
 .../src/dashboard/containers/DashboardPage.tsx     |    6 +-
 .../src/dashboard/util/getSliceHeaderTooltip.tsx   |    1 -
 .../util/useFilterFocusHighlightStyles.test.tsx    |    1 -
 superset-frontend/src/embedded/index.tsx           |    2 +-
 .../src/explore/actions/saveModalActions.ts        |    2 +-
 .../src/explore/components/ChartPills.tsx          |    2 +-
 .../src/explore/components/Control.test.tsx        |    1 -
 .../src/explore/components/Control.tsx             |    2 +-
 .../explore/components/ControlHeader.stories.tsx   |    1 -
 .../src/explore/components/ControlHeader.tsx       |    2 +-
 .../components/ControlPanelsContainer.test.tsx     |    1 -
 .../explore/components/ControlPanelsContainer.tsx  |   15 +-
 .../src/explore/components/ControlRow.test.tsx     |    4 +-
 .../src/explore/components/ControlRow.tsx          |    4 +-
 .../DataTableControl/CopyButton.test.tsx           |    1 -
 .../CopyToClipboardButton.test.tsx                 |    1 -
 .../DataTableControl/FilterInput.test.tsx          |    1 -
 .../explore/components/DataTableControl/index.tsx  |    2 +-
 .../components/DataTablesPane/DataTablesPane.tsx   |    8 +-
 .../components/DataTableControls.tsx               |    2 +-
 .../components/ResultsPaneOnDashboard.tsx          |    1 -
 .../DataTablesPane/components/SamplesPane.tsx      |    2 +-
 .../components/SingleQueryResultPane.tsx           |    2 +-
 .../DataTablesPane/components/useResultsPane.tsx   |    5 +-
 .../DataTablesPane/test/DataTablesPane.test.tsx    |    1 -
 .../test/ResultsPaneOnDashboard.test.tsx           |    1 -
 .../DataTablesPane/test/SamplesPane.test.tsx       |    1 -
 .../components/DataTablesPane/test/fixture.tsx     |    4 +-
 .../src/explore/components/DataTablesPane/types.ts |    3 +-
 .../DatasourcePanel/DatasourcePanel.test.tsx       |    8 +-
 .../DatasourcePanelDragOption.test.tsx             |    1 -
 .../DatasourcePanelDragOption/index.tsx            |    4 +-
 .../DatasourcePanel/DatasourcePanelItem.test.tsx   |    2 -
 .../DatasourcePanel/DatasourcePanelItem.tsx        |    5 +-
 .../explore/components/DatasourcePanel/index.tsx   |    2 +-
 .../src/explore/components/EmbedCodeContent.jsx    |    2 +-
 .../explore/components/EmbedCodeContent.test.jsx   |    4 +-
 .../src/explore/components/ExploreAlert.tsx        |    6 +-
 .../ExploreChartHeader/ExploreChartHeader.test.tsx |    1 -
 .../components/ExploreChartHeader/index.jsx        |    2 +-
 .../ExploreChartPanel/ExploreChartPanel.test.jsx   |    4 +-
 .../explore/components/ExploreChartPanel/index.jsx |    2 +-
 .../ExploreContainer/ExploreContainer.test.tsx     |    6 +-
 .../explore/components/ExploreContainer/index.tsx  |   23 +-
 .../ExploreViewContainer.test.tsx                  |    1 -
 .../components/ExploreViewContainer/index.jsx      |   30 +-
 .../ExportToCSVDropdown.test.tsx                   |    1 -
 .../components/ExportToCSVDropdown/index.tsx       |    5 +-
 .../PropertiesModal/PropertiesModal.test.tsx       |    1 -
 .../explore/components/PropertiesModal/index.tsx   |    5 +-
 .../RowCountLabel/RowCountLabel.stories.tsx        |    1 -
 .../RowCountLabel/RowCountLabel.test.tsx           |    1 -
 .../src/explore/components/RowCountLabel/index.tsx |    1 -
 .../RunQueryButton/RunQueryButton.stories.tsx      |    1 -
 .../RunQueryButton/RunQueryButton.test.tsx         |    1 -
 .../explore/components/RunQueryButton/index.tsx    |    2 +-
 .../src/explore/components/SaveModal.test.jsx      |    1 -
 .../src/explore/components/SaveModal.tsx           |    8 +-
 .../StashFormDataContainer.test.tsx                |    1 -
 .../components/StashFormDataContainer/index.tsx    |    5 +-
 .../AnnotationLayerControl/AnnotationLayer.jsx     |    4 +-
 .../AnnotationLayer.test.tsx                       |    1 -
 .../controls/AnnotationLayerControl/index.jsx      |    4 +-
 .../components/controls/BoundsControl.stories.tsx  |    1 -
 .../components/controls/BoundsControl.test.jsx     |    1 -
 .../explore/components/controls/BoundsControl.tsx  |    2 +-
 .../components/controls/CheckboxControl.jsx        |    4 +-
 .../components/controls/CheckboxControl.test.tsx   |    1 -
 .../CollectionControl/CollectionControl.test.tsx   |    1 -
 .../controls/CollectionControl/index.jsx           |    4 +-
 .../components/controls/ColorPickerControl.jsx     |    4 +-
 .../controls/ColorPickerControl.test.tsx           |    1 -
 .../ColorSchemeControl/ColorSchemeControl.test.tsx |    1 -
 .../ColorSchemeControl/ColorSchemeLabel.test.tsx   |    1 -
 .../ColorSchemeControl/ColorSchemeLabel.tsx        |    2 +-
 .../controls/ColorSchemeControl/index.tsx          |    5 +-
 .../ColumnConfigControl/ColumnConfigControl.tsx    |    2 +-
 .../ColumnConfigControl/ColumnConfigItem.tsx       |    4 +-
 .../ColumnConfigControl/ColumnConfigPopover.tsx    |    1 -
 .../ControlForm/ControlFormItem.tsx                |    2 +-
 .../ColumnConfigControl/ControlForm/index.tsx      |   15 +-
 .../controls/ColumnConfigControl/constants.tsx     |    1 -
 .../components/controls/ComparisonRangeLabel.tsx   |    2 +-
 .../ConditionalFormattingControl.tsx               |    2 +-
 .../FormattingPopover.tsx                          |    2 +-
 .../FormattingPopoverContent.tsx                   |    1 -
 .../controls/ContourControl/ContourOption.tsx      |    1 -
 .../ContourControl/ContourPopoverControl.tsx       |    2 +-
 .../ContourControl/ContourPopoverTrigger.tsx       |    2 +-
 .../components/controls/ContourControl/index.tsx   |    2 +-
 .../components/controls/ContourControl/types.ts    |    3 +-
 .../ControlPopover/ControlPopover.test.tsx         |    5 +-
 .../controls/ControlPopover/ControlPopover.tsx     |    5 +-
 .../controls/CurrencyControl/CurrencyControl.tsx   |    2 +-
 .../components/controls/CustomListItem/index.tsx   |    1 -
 .../DatasourceControl/DatasourceControl.test.jsx   |    1 -
 .../DatasourceControl/DatasourceControl.test.tsx   |    1 -
 .../controls/DatasourceControl/index.jsx           |    4 +-
 .../controls/DateFilterControl/DateFilterLabel.tsx |    2 +-
 .../DateFilterControl/components/AdvancedFrame.tsx |    1 -
 .../DateFilterControl/components/CalendarFrame.tsx |    2 +-
 .../DateFilterControl/components/CommonFrame.tsx   |    1 -
 .../DateFilterControl/components/CustomFrame.tsx   |    1 -
 .../components/DateFunctionTooltip.tsx             |    1 -
 .../DateFilterControl/components/DateLabel.tsx     |    5 +-
 .../DateFilterControl/tests/AdvancedFrame.test.tsx |    1 -
 .../DateFilterControl/tests/CustomFrame.test.tsx   |    1 -
 .../tests/DateFilterLabel.test.tsx                 |    1 -
 .../ColumnSelectPopover.test.tsx                   |    1 -
 .../DndColumnSelectControl/ColumnSelectPopover.tsx |   22 +-
 .../ColumnSelectPopoverTrigger.tsx                 |    8 +-
 .../DndAdhocFilterOption.tsx                       |    1 -
 .../DndColumnSelect.test.tsx                       |    1 -
 .../DndColumnSelectControl/DndColumnSelect.tsx     |    5 +-
 .../DndColumnSelectPopoverTitle.jsx                |    2 +-
 .../DndFilterSelect.test.tsx                       |    1 -
 .../DndColumnSelectControl/DndFilterSelect.tsx     |    2 +-
 .../DndMetricSelect.test.tsx                       |    1 -
 .../DndColumnSelectControl/DndMetricSelect.tsx     |    2 +-
 .../DndColumnSelectControl/DndSelectLabel.test.tsx |    4 +-
 .../DndColumnSelectControl/DndSelectLabel.tsx      |    8 +-
 .../DndColumnSelectControl/Option.test.tsx         |    1 -
 .../controls/DndColumnSelectControl/Option.tsx     |    2 +-
 .../DndColumnSelectControl/OptionWrapper.test.tsx  |    1 -
 .../DndColumnSelectControl/OptionWrapper.tsx       |    2 +-
 .../DndColumnSelectControl/useResizeButton.tsx     |   10 +-
 .../AdhocFilterControl/AdhocFilterControl.test.jsx |    1 -
 .../FilterControl/AdhocFilterControl/index.jsx     |    4 +-
 .../AdhocFilterEditPopover.test.jsx                |    1 -
 .../FilterControl/AdhocFilterEditPopover/index.jsx |    6 +-
 ...AdhocFilterEditPopoverSimpleTabContent.test.tsx |    1 -
 .../index.tsx                                      |    9 +-
 .../AdhocFilterEditPopoverSqlTabContent.test.jsx   |    1 -
 .../AdhocFilterEditPopoverSqlTabContent/index.jsx  |    4 +-
 .../AdhocFilterOption/AdhocFilterOption.test.tsx   |    1 -
 .../FilterControl/AdhocFilterOption/index.tsx      |    1 -
 .../AdhocFilterPopoverTrigger.test.tsx             |    1 -
 .../AdhocFilterPopoverTrigger/index.tsx            |    4 +-
 .../utils/useDatePickerInAdhocFilter.tsx           |    4 +-
 .../FixedOrMetricControl.test.tsx                  |    1 -
 .../controls/FixedOrMetricControl/index.jsx        |    4 +-
 .../explore/components/controls/HiddenControl.tsx  |    1 -
 .../AdhocMetricEditPopover.test.jsx                |    1 -
 .../AdhocMetricEditPopover.test.tsx                |    1 -
 .../MetricControl/AdhocMetricEditPopover/index.jsx |    4 +-
 .../AdhocMetricEditPopoverTitle.test.tsx           |    1 -
 .../MetricControl/AdhocMetricEditPopoverTitle.tsx  |   12 +-
 .../controls/MetricControl/AdhocMetricOption.jsx   |    4 +-
 .../MetricControl/AdhocMetricOption.test.jsx       |    1 -
 .../MetricControl/AdhocMetricPopoverTrigger.tsx    |    4 +-
 .../controls/MetricControl/AggregateOption.jsx     |    1 -
 .../MetricControl/AggregateOption.test.tsx         |    1 -
 .../MetricControl/FilterDefinitionOption.jsx       |    1 -
 .../MetricControl/FilterDefinitionOption.test.jsx  |    1 -
 .../MetricControl/MetricDefinitionOption.jsx       |    1 -
 .../MetricControl/MetricDefinitionOption.test.jsx  |    1 -
 .../MetricControl/MetricDefinitionValue.jsx        |    1 -
 .../MetricControl/MetricDefinitionValue.test.jsx   |    1 -
 .../controls/MetricControl/MetricsControl.jsx      |    2 +-
 .../controls/MetricControl/MetricsControl.test.jsx |    1 -
 .../OptionControls/OptionControls.test.tsx         |    1 -
 .../components/controls/OptionControls/index.tsx   |    5 +-
 .../SelectAsyncControl/SelectAsyncControl.test.tsx |    1 -
 .../controls/SelectAsyncControl/index.tsx          |    2 +-
 .../explore/components/controls/SelectControl.jsx  |    4 +-
 .../components/controls/SelectControl.test.jsx     |    1 -
 .../components/controls/SliderControl.stories.tsx  |    1 -
 .../explore/components/controls/SliderControl.tsx  |    1 -
 .../explore/components/controls/SpatialControl.jsx |    4 +-
 .../components/controls/TextAreaControl.jsx        |    4 +-
 .../components/controls/TextAreaControl.test.jsx   |    1 -
 .../controls/TextControl/TextControl.test.tsx      |    1 -
 .../components/controls/TextControl/index.tsx      |    6 +-
 .../components/controls/TimeOffsetControl.tsx      |    2 +-
 .../TimeSeriesColumnControl.test.tsx               |    1 -
 .../controls/TimeSeriesColumnControl/index.jsx     |    4 +-
 .../src/explore/components/controls/ViewQuery.tsx  |    4 +-
 .../explore/components/controls/ViewQueryModal.tsx |    5 +-
 .../components/controls/ViewQueryModalFooter.tsx   |    4 +-
 .../components/controls/ViewportControl.jsx        |    4 +-
 .../components/controls/ViewportControl.test.jsx   |    1 -
 .../controls/VizTypeControl/FastVizSwitcher.tsx    |    5 +-
 .../VizTypeControl/VizTypeControl.test.jsx         |    3 +-
 .../VizTypeControl/VizTypeControl.test.tsx         |    1 -
 .../controls/VizTypeControl/VizTypeGallery.tsx     |   88 +-
 .../components/controls/VizTypeControl/index.tsx   |    2 +-
 .../components/controls/XAxisSortControl.tsx       |    2 +-
 .../controls/withAsyncVerification.test.tsx        |    1 -
 .../components/controls/withAsyncVerification.tsx  |    8 +-
 .../src/explore/components/optionRenderers.tsx     |    1 -
 .../DashboardsSubMenu.test.tsx                     |    1 -
 .../DashboardsSubMenu.tsx                          |    2 +-
 .../useExploreAdditionalActionsMenu/index.jsx      |    2 +-
 .../src/explore/controlPanels/sections.tsx         |    1 -
 superset-frontend/src/explore/controls.jsx         |    1 -
 superset-frontend/src/explore/fixtures.tsx         |    1 -
 .../src/features/alerts/AlertReportModal.test.tsx  |    1 -
 .../src/features/alerts/AlertReportModal.tsx       |   10 +-
 .../features/alerts/buildErrorTooltipMessage.tsx   |    1 -
 .../alerts/components/AlertReportCronScheduler.tsx |   10 +-
 .../features/alerts/components/AlertStatusIcon.tsx |    1 -
 .../alerts/components/NotificationMethod.tsx       |   11 +-
 .../src/features/alerts/components/NumberInput.tsx |    2 +-
 .../features/alerts/components/RecipientIcon.tsx   |    2 +-
 .../src/features/alerts/components/StyledPanel.tsx |    4 +-
 .../alerts/components/ValidatedPanelHeader.tsx     |    1 -
 .../src/features/allEntities/AllEntitiesTable.tsx  |    1 -
 .../annotationLayers/AnnotationLayerModal.test.jsx |    1 -
 .../annotationLayers/AnnotationLayerModal.tsx      |    7 +-
 .../features/annotations/AnnotationModal.test.jsx  |    1 -
 .../src/features/annotations/AnnotationModal.tsx   |    7 +-
 .../src/features/charts/ChartCard.tsx              |    1 -
 .../cssTemplates/CssTemplateModal.test.jsx         |    1 -
 .../src/features/cssTemplates/CssTemplateModal.tsx |    5 +-
 .../src/features/dashboards/DashboardCard.test.tsx |    1 -
 .../src/features/dashboards/DashboardCard.tsx      |    2 +-
 .../DatabaseConnectionForm/CommonParameters.tsx    |    1 -
 .../DatabaseConnectionForm/EncryptedField.tsx      |    2 +-
 .../DatabaseConnectionForm/TableCatalog.tsx        |    1 -
 .../DatabaseConnectionForm/ValidatedInputField.tsx |    1 -
 .../DatabaseModal/DatabaseConnectionForm/index.tsx |    2 +-
 .../databases/DatabaseModal/ExtraOptions.tsx       |    2 +-
 .../databases/DatabaseModal/ModalHeader.tsx        |    1 -
 .../databases/DatabaseModal/SSHTunnelForm.tsx      |    2 +-
 .../DatabaseModal/SSHTunnelSwitch.test.tsx         |    1 -
 .../databases/DatabaseModal/SSHTunnelSwitch.tsx    |    2 +-
 .../databases/DatabaseModal/SqlAlchemyForm.tsx     |    2 +-
 .../databases/DatabaseModal/index.test.tsx         |    1 -
 .../src/features/databases/DatabaseModal/index.tsx |   15 +-
 .../databases/UploadDataModel/ColumnsPreview.tsx   |    4 +-
 .../UploadDataModel/StyledFormItemWithTip.tsx      |    6 +-
 .../UploadDataModel/UploadDataModal.test.tsx       |    1 -
 .../features/databases/UploadDataModel/index.tsx   |   20 +-
 .../DatasetPanel/DatasetPanel.stories.tsx          |    1 -
 .../AddDataset/DatasetPanel/DatasetPanel.test.tsx  |    1 -
 .../AddDataset/DatasetPanel/DatasetPanel.tsx       |    1 -
 .../AddDataset/DatasetPanel/MessageContent.tsx     |    1 -
 .../datasets/AddDataset/DatasetPanel/index.tsx     |    2 +-
 .../AddDataset/EditDataset/EditDataset.test.tsx    |    1 -
 .../EditDataset/UsageTab/UsageTab.test.tsx         |    1 -
 .../AddDataset/EditDataset/UsageTab/index.tsx      |    2 +-
 .../datasets/AddDataset/EditDataset/index.tsx      |    1 -
 .../datasets/AddDataset/Footer/Footer.test.tsx     |    1 -
 .../features/datasets/AddDataset/Footer/index.tsx  |    1 -
 .../datasets/AddDataset/Header/Header.test.tsx     |    1 -
 .../features/datasets/AddDataset/Header/index.tsx  |    4 +-
 .../AddDataset/LeftPanel/LeftPanel.test.tsx        |    1 -
 .../datasets/AddDataset/LeftPanel/index.tsx        |    2 +-
 .../AddDataset/RightPanel/RightPanel.test.tsx      |    1 -
 .../datasets/AddDataset/RightPanel/index.tsx       |    2 -
 .../datasets/DatasetLayout/DatasetLayout.test.tsx  |    1 -
 .../src/features/datasets/DatasetLayout/index.tsx  |    2 +-
 .../features/datasets/DatasetSelectLabel/index.tsx |    1 -
 .../features/datasets/DuplicateDatasetModal.tsx    |    4 +-
 .../DatasetMetadataBar.skipped-stories.tsx         |    1 -
 .../datasets/metadataBar/useDatasetMetadataBar.tsx |    2 +-
 .../src/features/home/ActivityTable.test.tsx       |    1 -
 .../src/features/home/ActivityTable.tsx            |    2 +-
 .../src/features/home/ChartTable.test.tsx          |    1 -
 superset-frontend/src/features/home/ChartTable.tsx |    2 +-
 .../src/features/home/DashboardTable.test.tsx      |    1 -
 .../src/features/home/DashboardTable.tsx           |    2 +-
 .../src/features/home/EmptyState.test.tsx          |    1 -
 superset-frontend/src/features/home/EmptyState.tsx |    1 -
 .../src/features/home/LanguagePicker.test.tsx      |    1 -
 .../src/features/home/LanguagePicker.tsx           |    1 -
 superset-frontend/src/features/home/Menu.test.tsx  |    1 -
 superset-frontend/src/features/home/Menu.tsx       |    2 +-
 .../src/features/home/RightMenu.test.tsx           |    1 -
 superset-frontend/src/features/home/RightMenu.tsx  |    9 +-
 .../src/features/home/SavedQueries.test.tsx        |    1 -
 .../src/features/home/SavedQueries.tsx             |    2 +-
 .../src/features/home/SubMenu.test.tsx             |    1 -
 superset-frontend/src/features/home/SubMenu.tsx    |    5 +-
 .../features/queries/QueryPreviewModal.test.tsx    |   10 +-
 .../src/features/queries/QueryPreviewModal.tsx     |    2 +-
 .../queries/SavedQueryPreviewModal.test.jsx        |    1 -
 .../features/queries/SavedQueryPreviewModal.tsx    |    2 +-
 .../src/features/queries/SyntaxHighlighterCopy.tsx |    1 -
 .../HeaderReportDropdown/index.test.tsx            |    1 -
 .../ReportModal/HeaderReportDropdown/index.tsx     |    2 +-
 .../reports/ReportModal/ReportModal.test.tsx       |    1 -
 .../src/features/reports/ReportModal/index.tsx     |    6 +-
 .../features/rls/RowLevelSecurityModal.test.tsx    |    1 -
 .../src/features/rls/RowLevelSecurityModal.tsx     |    2 +-
 .../src/features/tags/BulkTagModal.tsx             |    5 +-
 superset-frontend/src/features/tags/TagCard.tsx    |    1 -
 .../src/features/tags/TagModal.test.tsx            |    1 -
 superset-frontend/src/features/tags/TagModal.tsx   |    5 +-
 .../components/Range/RangeFilterPlugin.stories.tsx |    1 -
 .../components/Range/RangeFilterPlugin.test.tsx    |    1 -
 .../filters/components/Range/RangeFilterPlugin.tsx |    2 +-
 .../Select/SelectFilterPlugin.stories.tsx          |    1 -
 .../components/Select/SelectFilterPlugin.test.tsx  |    1 -
 .../components/Select/SelectFilterPlugin.tsx       |    2 +-
 .../filters/components/Time/TimeFilterPlugin.tsx   |    2 +-
 .../TimeColumn/TimeColumnFilterPlugin.tsx          |    2 +-
 .../components/TimeGrain/TimeGrainFilterPlugin.tsx |    2 +-
 .../pages/AlertReportList/AlertReportList.test.jsx |    1 -
 .../src/pages/AlertReportList/index.tsx            |    2 +-
 superset-frontend/src/pages/AllEntities/index.tsx  |    2 +-
 .../AnnotationLayerList.test.jsx                   |    1 -
 .../src/pages/AnnotationLayerList/index.tsx        |    2 +-
 .../pages/AnnotationList/AnnotationList.test.jsx   |    1 -
 .../src/pages/AnnotationList/index.tsx             |    2 +-
 superset-frontend/src/pages/Chart/Chart.test.tsx   |    1 -
 superset-frontend/src/pages/Chart/index.tsx        |    2 +-
 .../src/pages/ChartCreation/ChartCreation.test.tsx |    1 -
 .../src/pages/ChartCreation/index.tsx              |    6 +-
 .../src/pages/ChartList/ChartList.test.jsx         |    1 -
 superset-frontend/src/pages/ChartList/index.tsx    |    2 +-
 .../pages/CssTemplateList/CssTemplateList.test.jsx |    1 -
 .../src/pages/CssTemplateList/index.tsx            |    2 +-
 superset-frontend/src/pages/Dashboard/index.tsx    |    2 +-
 .../src/pages/DashboardList/DashboardList.test.jsx |    1 -
 .../src/pages/DashboardList/index.tsx              |    2 +-
 .../src/pages/DatabaseList/DatabaseList.test.jsx   |    1 -
 superset-frontend/src/pages/DatabaseList/index.tsx |    2 +-
 .../pages/DatasetCreation/DatasetCreation.test.tsx |    1 -
 .../src/pages/DatasetCreation/index.tsx            |    2 +-
 .../src/pages/DatasetList/DatasetList.test.tsx     |    1 -
 superset-frontend/src/pages/DatasetList/index.tsx  |    7 +-
 .../ExecutionLogList/ExecutionLogList.test.jsx     |    1 -
 .../src/pages/ExecutionLogList/index.tsx           |    2 +-
 superset-frontend/src/pages/Home/Home.test.tsx     |    1 -
 superset-frontend/src/pages/Home/index.tsx         |    2 +-
 .../QueryHistoryList/QueryHistoryList.test.tsx     |    4 +-
 .../src/pages/QueryHistoryList/index.tsx           |    2 +-
 .../RowLevelSecurityList.test.tsx                  |    1 -
 .../src/pages/RowLevelSecurityList/index.tsx       |    2 +-
 .../pages/SavedQueryList/SavedQueryList.test.jsx   |    1 -
 .../src/pages/SavedQueryList/index.tsx             |    4 +-
 .../src/pages/SqlLab/LocationContext.tsx           |    9 +-
 superset-frontend/src/pages/SqlLab/SqlLab.test.tsx |    4 +-
 superset-frontend/src/pages/SqlLab/index.tsx       |    2 +-
 superset-frontend/src/pages/Tags/index.tsx         |    2 +-
 superset-frontend/src/utils/functionalRegistry.ts  |    4 +-
 superset-frontend/src/views/App.tsx                |    2 +-
 .../src/views/RootContextProviders.tsx             |    4 +-
 superset-frontend/src/views/index.tsx              |    1 -
 superset-frontend/src/views/menu.tsx               |    1 -
 superset-frontend/src/views/routes.test.tsx        |    1 -
 superset-frontend/src/views/routes.tsx             |    8 +-
 .../visualizations/TimeTable/FormattedNumber.tsx   |    1 -
 .../src/visualizations/TimeTable/SparklineCell.tsx |    4 +-
 .../src/visualizations/TimeTable/TimeTable.jsx     |    2 +-
 .../ExampleComponent/ExampleComponent.tsx          |    1 -
 .../src/visualizations/presets/MainPreset.js       |    2 +
 superset-frontend/webpack.config.js                |   12 +-
 superset-websocket/package-lock.json               |   28 +-
 superset-websocket/package.json                    |    4 +-
 .../utils/client-ws-app/package-lock.json          |   14 +-
 .../utils/client-ws-app/package.json               |    2 +-
 superset/config.py                                 |    2 +
 .../configs/charts/Featured Charts/Area.yaml       |   97 +
 .../configs/charts/Featured Charts/Bar.yaml        |   72 +
 .../configs/charts/Featured Charts/Big_Number.yaml |   42 +
 .../Featured Charts/Big_Number_with_Trendline.yaml |   52 +
 .../configs/charts/Featured Charts/Box_Plot.yaml   |   54 +
 .../configs/charts/Featured Charts/Bubble.yaml     |  107 +
 .../configs/charts/Featured Charts/Funnel.yaml     |   51 +
 .../configs/charts/Featured Charts/Gauge.yaml      |   54 +
 .../configs/charts/Featured Charts/Graph.yaml      |   54 +
 .../configs/charts/Featured Charts/Heatmap.yaml    |   59 +
 .../configs/charts/Featured Charts/Histogram.yaml  |   46 +
 .../configs/charts/Featured Charts/Line.yaml       |   74 +
 .../configs/charts/Featured Charts/Mixed.yaml      |  109 +
 .../configs/charts/Featured Charts/Pie.yaml        |   78 +
 .../charts/Featured Charts/Pivot_Table.yaml        |   78 +
 .../configs/charts/Featured Charts/Radar.yaml      |  100 +
 .../charts/Featured Charts/Scatter_Plot.yaml       |   72 +
 .../configs/charts/Featured Charts/Sunburst.yaml   |   48 +
 .../configs/charts/Featured Charts/Table.yaml      |   57 +
 .../configs/charts/Featured Charts/Tree.yaml       |   43 +
 .../configs/charts/Featured Charts/Treemap.yaml    |   48 +
 .../configs/charts/Featured Charts/Waterfall.yaml  |   85 +
 .../configs/charts/Featured Charts/Word_Cloud.yaml |   44 +
 .../configs/charts/Featured Charts/World_Map.yaml  |   53 +
 .../configs/dashboards/Featured_Charts.yaml        |  490 +++
 .../datasets/examples/hierarchical_dataset.yaml    |  116 +
 .../datasets/examples/wb_health_population.yaml    | 4317 ++++++++++++++++++++
 ...4-05-24_11-31_02f4f7811799_remove_sl__tables.py |  164 +-
 superset/models/core.py                            |    9 +-
 superset/reports/notifications/slack.py            |  124 +-
 superset/tasks/slack_util.py                       |   62 -
 superset/utils/json.py                             |    2 +-
 superset/utils/pandas_postprocessing/__init__.py   |    2 +
 superset/utils/pandas_postprocessing/histogram.py  |   87 +
 .../fixtures/world_bank_dashboard.py               |   17 +
 tests/integration_tests/reports/commands_tests.py  |  329 +-
 tests/unit_tests/models/core_test.py               |   89 +
 tests/unit_tests/notifications/slack_tests.py      |   38 +-
 .../pandas_postprocessing/test_histogram.py        |  122 +
 .../reports/notifications/slack_tests.py           |   15 +-
 1276 files changed, 10076 insertions(+), 2918 deletions(-)

diff --cc superset-frontend/src/components/Badge/index.tsx
index 731fb5db83,723d6a6a61..9138529879
--- a/superset-frontend/src/components/Badge/index.tsx
+++ b/superset-frontend/src/components/Badge/index.tsx
@@@ -16,10 -16,9 +16,9 @@@
   * specific language governing permissions and limitations
   * under the License.
   */
- import React from 'react';
  import { styled } from '@superset-ui/core';
 -import { Badge as AntdBadge } from 'antd';
 -import { BadgeProps as AntdBadgeProps } from 'antd/lib/badge';
 +import { Badge as AntdBadge } from 'antd-v5';
 +import { BadgeProps as AntdBadgeProps } from 'antd-v5/lib/badge';
  
  export interface BadgeProps extends AntdBadgeProps {
    textColor?: string;


(superset) 01/03: Add Antdesign 5

Posted by di...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

diegopucci pushed a commit to branch geido/feat/antdesign-5
in repository https://gitbox.apache.org/repos/asf/superset.git

commit 7ed0c4756137bba4b0d7ea6a8f6d913af8dc521f
Author: Diego Pucci <di...@gmail.com>
AuthorDate: Tue Jun 4 16:01:54 2024 +0300

    Add Antdesign 5
---
 superset-frontend/package-lock.json              | 1719 +++++++++++++++++++---
 superset-frontend/package.json                   |    1 +
 superset-frontend/src/components/Badge/index.tsx |   15 +-
 3 files changed, 1568 insertions(+), 167 deletions(-)

diff --git a/superset-frontend/package-lock.json b/superset-frontend/package-lock.json
index b5cfb07c20..fcfd16e610 100644
--- a/superset-frontend/package-lock.json
+++ b/superset-frontend/package-lock.json
@@ -57,6 +57,7 @@
         "abortcontroller-polyfill": "^1.1.9",
         "ace-builds": "^1.4.14",
         "antd": "4.10.3",
+        "antd-v5": "npm:antd@^5.18.0",
         "babel-plugin-typescript-to-proptypes": "^2.0.0",
         "bootstrap": "^3.4.1",
         "brace": "^0.11.1",
@@ -338,20 +339,38 @@
       }
     },
     "node_modules/@ant-design/colors": {
-      "version": "7.0.0",
-      "resolved": "https://registry.npmjs.org/@ant-design/colors/-/colors-7.0.0.tgz",
-      "integrity": "sha512-iVm/9PfGCbC0dSMBrz7oiEXZaaGH7ceU40OJEfKmyuzR9R5CRimJYPlRiFtMQGQcbNMea/ePcoIebi4ASGYXtg==",
+      "version": "7.0.2",
+      "resolved": "https://registry.npmjs.org/@ant-design/colors/-/colors-7.0.2.tgz",
+      "integrity": "sha512-7KJkhTiPiLHSu+LmMJnehfJ6242OCxSlR3xHVBecYxnMW8MS/878NXct1GqYARyL59fyeFdKRxXTfvR9SnDgJg==",
       "dependencies": {
-        "@ctrl/tinycolor": "^3.4.0"
+        "@ctrl/tinycolor": "^3.6.1"
+      }
+    },
+    "node_modules/@ant-design/cssinjs": {
+      "version": "1.20.0",
+      "resolved": "https://registry.npmjs.org/@ant-design/cssinjs/-/cssinjs-1.20.0.tgz",
+      "integrity": "sha512-uG3iWzJxgNkADdZmc6W0Ci3iQAUOvLMcM8SnnmWq3r6JeocACft4ChnY/YWvI2Y+rG/68QBla/O+udke1yH3vg==",
+      "dependencies": {
+        "@babel/runtime": "^7.11.1",
+        "@emotion/hash": "^0.8.0",
+        "@emotion/unitless": "^0.7.5",
+        "classnames": "^2.3.1",
+        "csstype": "^3.1.3",
+        "rc-util": "^5.35.0",
+        "stylis": "^4.0.13"
+      },
+      "peerDependencies": {
+        "react": ">=16.0.0",
+        "react-dom": ">=16.0.0"
       }
     },
     "node_modules/@ant-design/icons": {
-      "version": "5.2.6",
-      "resolved": "https://registry.npmjs.org/@ant-design/icons/-/icons-5.2.6.tgz",
-      "integrity": "sha512-4wn0WShF43TrggskBJPRqCD0fcHbzTYjnaoskdiJrVHg86yxoZ8ZUqsXvyn4WUqehRiFKnaclOhqk9w4Ui2KVw==",
+      "version": "5.3.7",
+      "resolved": "https://registry.npmjs.org/@ant-design/icons/-/icons-5.3.7.tgz",
+      "integrity": "sha512-bCPXTAg66f5bdccM4TT21SQBDO1Ek2gho9h3nO9DAKXJP4sq+5VBjrQMSxMVXSB3HyEz+cUbHQ5+6ogxCOpaew==",
       "dependencies": {
         "@ant-design/colors": "^7.0.0",
-        "@ant-design/icons-svg": "^4.3.0",
+        "@ant-design/icons-svg": "^4.4.0",
         "@babel/runtime": "^7.11.2",
         "classnames": "^2.2.6",
         "rc-util": "^5.31.1"
@@ -365,9 +384,24 @@
       }
     },
     "node_modules/@ant-design/icons-svg": {
-      "version": "4.3.1",
-      "resolved": "https://registry.npmjs.org/@ant-design/icons-svg/-/icons-svg-4.3.1.tgz",
-      "integrity": "sha512-4QBZg8ccyC6LPIRii7A0bZUk3+lEDCLnhB+FVsflGdcWPPmV+j3fire4AwwoqHV/BibgvBmR9ZIo4s867smv+g=="
+      "version": "4.4.2",
+      "resolved": "https://registry.npmjs.org/@ant-design/icons-svg/-/icons-svg-4.4.2.tgz",
+      "integrity": "sha512-vHbT+zJEVzllwP+CM+ul7reTEfBR0vgxFe7+lREAsAA7YGsYpboiq2sQNeQeRvh09GfQgs/GyFEvZpJ9cLXpXA=="
+    },
+    "node_modules/@ant-design/react-slick": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/@ant-design/react-slick/-/react-slick-1.1.2.tgz",
+      "integrity": "sha512-EzlvzE6xQUBrZuuhSAFTdsr4P2bBBHGZwKFemEfq8gIGyIQCxalYfZW/T2ORbtQx5rU69o+WycP3exY/7T1hGA==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.4",
+        "classnames": "^2.2.5",
+        "json2mq": "^0.2.0",
+        "resize-observer-polyfill": "^1.5.1",
+        "throttle-debounce": "^5.0.0"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0"
+      }
     },
     "node_modules/@applitools/core": {
       "version": "4.12.2",
@@ -3669,9 +3703,9 @@
       "dev": true
     },
     "node_modules/@babel/runtime": {
-      "version": "7.23.9",
-      "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz",
-      "integrity": "sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==",
+      "version": "7.24.6",
+      "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.6.tgz",
+      "integrity": "sha512-Ja18XcETdEl5mzzACGd+DKgaGJzPTCow7EglgwTmHdwokzDFYh/MHua6lU6DV/hjF2IaOJ4oX2nqnjG7RElKOw==",
       "dependencies": {
         "regenerator-runtime": "^0.14.0"
       },
@@ -3833,9 +3867,9 @@
       }
     },
     "node_modules/@ctrl/tinycolor": {
-      "version": "3.4.1",
-      "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-3.4.1.tgz",
-      "integrity": "sha512-ej5oVy6lykXsvieQtqZxCOaLT+xD4+QNarq78cIYISHmZXshCvROLudpQN3lfL8G0NL7plMSSK+zlyvCaIJ4Iw==",
+      "version": "3.6.1",
+      "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-3.6.1.tgz",
+      "integrity": "sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==",
       "engines": {
         "node": ">=10"
       }
@@ -13243,6 +13277,144 @@
         "@babel/runtime": "^7.13.10"
       }
     },
+    "node_modules/@rc-component/async-validator": {
+      "version": "5.0.4",
+      "resolved": "https://registry.npmjs.org/@rc-component/async-validator/-/async-validator-5.0.4.tgz",
+      "integrity": "sha512-qgGdcVIF604M9EqjNF0hbUTz42bz/RDtxWdWuU5EQe3hi7M8ob54B6B35rOsvX5eSvIHIzT9iH1R3n+hk3CGfg==",
+      "dependencies": {
+        "@babel/runtime": "^7.24.4"
+      },
+      "engines": {
+        "node": ">=14.x"
+      }
+    },
+    "node_modules/@rc-component/color-picker": {
+      "version": "1.5.3",
+      "resolved": "https://registry.npmjs.org/@rc-component/color-picker/-/color-picker-1.5.3.tgz",
+      "integrity": "sha512-+tGGH3nLmYXTalVe0L8hSZNs73VTP5ueSHwUlDC77KKRaN7G4DS4wcpG5DTDzdcV/Yas+rzA6UGgIyzd8fS4cw==",
+      "dependencies": {
+        "@babel/runtime": "^7.23.6",
+        "@ctrl/tinycolor": "^3.6.1",
+        "classnames": "^2.2.6",
+        "rc-util": "^5.38.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/@rc-component/context": {
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/@rc-component/context/-/context-1.4.0.tgz",
+      "integrity": "sha512-kFcNxg9oLRMoL3qki0OMxK+7g5mypjgaaJp/pkOis/6rVxma9nJBF/8kCIuTYHUQNr0ii7MxqE33wirPZLJQ2w==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "rc-util": "^5.27.0"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/@rc-component/mini-decimal": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/@rc-component/mini-decimal/-/mini-decimal-1.1.0.tgz",
+      "integrity": "sha512-jS4E7T9Li2GuYwI6PyiVXmxTiM6b07rlD9Ge8uGZSCz3WlzcG5ZK7g5bbuKNeZ9pgUuPK/5guV781ujdVpm4HQ==",
+      "dependencies": {
+        "@babel/runtime": "^7.18.0"
+      },
+      "engines": {
+        "node": ">=8.x"
+      }
+    },
+    "node_modules/@rc-component/mutate-observer": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/@rc-component/mutate-observer/-/mutate-observer-1.1.0.tgz",
+      "integrity": "sha512-QjrOsDXQusNwGZPf4/qRQasg7UFEj06XiCJ8iuiq/Io7CrHrgVi6Uuetw60WAMG1799v+aM8kyc+1L/GBbHSlw==",
+      "dependencies": {
+        "@babel/runtime": "^7.18.0",
+        "classnames": "^2.3.2",
+        "rc-util": "^5.24.4"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/@rc-component/portal": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/@rc-component/portal/-/portal-1.1.2.tgz",
+      "integrity": "sha512-6f813C0IsasTZms08kfA8kPAGxbbkYToa8ALaiDIGGECU4i9hj8Plgbx0sNJDrey3EtHO30hmdaxtT0138xZcg==",
+      "dependencies": {
+        "@babel/runtime": "^7.18.0",
+        "classnames": "^2.3.2",
+        "rc-util": "^5.24.4"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/@rc-component/tour": {
+      "version": "1.15.0",
+      "resolved": "https://registry.npmjs.org/@rc-component/tour/-/tour-1.15.0.tgz",
+      "integrity": "sha512-h6hyILDwL+In9GAgRobwRWihLqqsD7Uft3fZGrJ7L4EiyCoxbnNYwzPXDfz7vNDhWeVyvAWQJj9fJCzpI4+b4g==",
+      "dependencies": {
+        "@babel/runtime": "^7.18.0",
+        "@rc-component/portal": "^1.0.0-9",
+        "@rc-component/trigger": "^2.0.0",
+        "classnames": "^2.3.2",
+        "rc-util": "^5.24.4"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/@rc-component/trigger": {
+      "version": "2.2.0",
+      "resolved": "https://registry.npmjs.org/@rc-component/trigger/-/trigger-2.2.0.tgz",
+      "integrity": "sha512-QarBCji02YE9aRFhZgRZmOpXBj0IZutRippsVBv85sxvG4FGk/vRxwAlkn3MS9zK5mwbETd86mAVg2tKqTkdJA==",
+      "dependencies": {
+        "@babel/runtime": "^7.23.2",
+        "@rc-component/portal": "^1.1.0",
+        "classnames": "^2.3.2",
+        "rc-motion": "^2.0.0",
+        "rc-resize-observer": "^1.3.1",
+        "rc-util": "^5.38.0"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/@rc-component/trigger/node_modules/rc-resize-observer": {
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.4.0.tgz",
+      "integrity": "sha512-PnMVyRid9JLxFavTjeDXEXo65HCRqbmLBw9xX9gfC4BZiSzbLXKzW3jPz+J0P71pLbD5tBMTT+mkstV5gD0c9Q==",
+      "dependencies": {
+        "@babel/runtime": "^7.20.7",
+        "classnames": "^2.2.1",
+        "rc-util": "^5.38.0",
+        "resize-observer-polyfill": "^1.5.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
     "node_modules/@react-dnd/asap": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/@react-dnd/asap/-/asap-4.0.0.tgz",
@@ -25626,6 +25798,372 @@
         "react-dom": ">=16.9.0"
       }
     },
+    "node_modules/antd-v5": {
+      "name": "antd",
+      "version": "5.18.0",
+      "resolved": "https://registry.npmjs.org/antd/-/antd-5.18.0.tgz",
+      "integrity": "sha512-xAvqvioW34npeZb8/JLZmCh5mcHU5MLiA0IYWAlpLAVmSgjs3p0tNzbU6a7Yx+y7o7E8PHtlchWfO3yBLQ15FQ==",
+      "dependencies": {
+        "@ant-design/colors": "^7.0.2",
+        "@ant-design/cssinjs": "^1.19.1",
+        "@ant-design/icons": "^5.3.7",
+        "@ant-design/react-slick": "~1.1.2",
+        "@babel/runtime": "^7.24.5",
+        "@ctrl/tinycolor": "^3.6.1",
+        "@rc-component/color-picker": "~1.5.3",
+        "@rc-component/mutate-observer": "^1.1.0",
+        "@rc-component/tour": "~1.15.0",
+        "@rc-component/trigger": "^2.2.0",
+        "classnames": "^2.5.1",
+        "copy-to-clipboard": "^3.3.3",
+        "dayjs": "^1.11.10",
+        "qrcode.react": "^3.1.0",
+        "rc-cascader": "~3.26.0",
+        "rc-checkbox": "~3.3.0",
+        "rc-collapse": "~3.7.3",
+        "rc-dialog": "~9.4.0",
+        "rc-drawer": "~7.2.0",
+        "rc-dropdown": "~4.2.0",
+        "rc-field-form": "~2.2.0",
+        "rc-image": "~7.8.0",
+        "rc-input": "~1.5.1",
+        "rc-input-number": "~9.1.0",
+        "rc-mentions": "~2.13.1",
+        "rc-menu": "~9.14.0",
+        "rc-motion": "^2.9.1",
+        "rc-notification": "~5.6.0",
+        "rc-pagination": "~4.0.4",
+        "rc-picker": "~4.5.0",
+        "rc-progress": "~4.0.0",
+        "rc-rate": "~2.13.0",
+        "rc-resize-observer": "^1.4.0",
+        "rc-segmented": "~2.3.0",
+        "rc-select": "~14.14.0",
+        "rc-slider": "~10.6.2",
+        "rc-steps": "~6.0.1",
+        "rc-switch": "~4.1.0",
+        "rc-table": "~7.45.7",
+        "rc-tabs": "~15.1.0",
+        "rc-textarea": "~1.7.0",
+        "rc-tooltip": "~6.2.0",
+        "rc-tree": "~5.8.7",
+        "rc-tree-select": "~5.21.0",
+        "rc-upload": "~4.5.2",
+        "rc-util": "^5.41.0",
+        "scroll-into-view-if-needed": "^3.1.0",
+        "throttle-debounce": "^5.0.0"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/ant-design"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/compute-scroll-into-view": {
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-3.1.0.tgz",
+      "integrity": "sha512-rj8l8pD4bJ1nx+dAkMhV1xB5RuZEyVysfxJqB1pRchh1KVvwOv9b7CGB8ZfjTImVv2oF+sYMUkMZq6Na5Ftmbg=="
+    },
+    "node_modules/antd-v5/node_modules/rc-cascader": {
+      "version": "3.26.0",
+      "resolved": "https://registry.npmjs.org/rc-cascader/-/rc-cascader-3.26.0.tgz",
+      "integrity": "sha512-L1dml383TPSJD1I11YwxuVbmqaJY64psZqFp1ETlgl3LEOwDu76Cyl11fw5dmjJhMlUWwM5dECQfqJgfebhUjg==",
+      "dependencies": {
+        "@babel/runtime": "^7.12.5",
+        "array-tree-filter": "^2.1.0",
+        "classnames": "^2.3.1",
+        "rc-select": "~14.14.0",
+        "rc-tree": "~5.8.1",
+        "rc-util": "^5.37.0"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-checkbox": {
+      "version": "3.3.0",
+      "resolved": "https://registry.npmjs.org/rc-checkbox/-/rc-checkbox-3.3.0.tgz",
+      "integrity": "sha512-Ih3ZaAcoAiFKJjifzwsGiT/f/quIkxJoklW4yKGho14Olulwn8gN7hOBve0/WGDg5o/l/5mL0w7ff7/YGvefVw==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "classnames": "^2.3.2",
+        "rc-util": "^5.25.2"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-collapse": {
+      "version": "3.7.3",
+      "resolved": "https://registry.npmjs.org/rc-collapse/-/rc-collapse-3.7.3.tgz",
+      "integrity": "sha512-60FJcdTRn0X5sELF18TANwtVi7FtModq649H11mYF1jh83DniMoM4MqY627sEKRCTm4+WXfGDcB7hY5oW6xhyw==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "classnames": "2.x",
+        "rc-motion": "^2.3.4",
+        "rc-util": "^5.27.0"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-dropdown": {
+      "version": "4.2.0",
+      "resolved": "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-4.2.0.tgz",
+      "integrity": "sha512-odM8Ove+gSh0zU27DUj5cG1gNKg7mLWBYzB5E4nNLrLwBmYEgYP43vHKDGOVZcJSVElQBI0+jTQgjnq0NfLjng==",
+      "dependencies": {
+        "@babel/runtime": "^7.18.3",
+        "@rc-component/trigger": "^2.0.0",
+        "classnames": "^2.2.6",
+        "rc-util": "^5.17.0"
+      },
+      "peerDependencies": {
+        "react": ">=16.11.0",
+        "react-dom": ">=16.11.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-field-form": {
+      "version": "2.2.0",
+      "resolved": "https://registry.npmjs.org/rc-field-form/-/rc-field-form-2.2.0.tgz",
+      "integrity": "sha512-Kl7wBXCmFbRi9aPw0yiRTSPH3WQGRnOVGX/UxlEjAz2pGwsaw2MisCJ7GTXukdiybYsw8K7agDD7ZsPGUNcDKg==",
+      "dependencies": {
+        "@babel/runtime": "^7.18.0",
+        "@rc-component/async-validator": "^5.0.3",
+        "rc-util": "^5.32.2"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-input-number": {
+      "version": "9.1.0",
+      "resolved": "https://registry.npmjs.org/rc-input-number/-/rc-input-number-9.1.0.tgz",
+      "integrity": "sha512-NqJ6i25Xn/AgYfVxynlevIhX3FuKlMwIFpucGG1h98SlK32wQwDK0zhN9VY32McOmuaqzftduNYWWooWz8pXQA==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "@rc-component/mini-decimal": "^1.0.1",
+        "classnames": "^2.2.5",
+        "rc-input": "~1.5.0",
+        "rc-util": "^5.40.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-mentions": {
+      "version": "2.13.1",
+      "resolved": "https://registry.npmjs.org/rc-mentions/-/rc-mentions-2.13.1.tgz",
+      "integrity": "sha512-DSyUDq/PPCleUX1eghIn371lTSRQsIuCs1N7xR9nZcHP9R1NkE7JjpWUP8Gy4EGVPu0JN0qIcokxYJaoGPnofg==",
+      "dependencies": {
+        "@babel/runtime": "^7.22.5",
+        "@rc-component/trigger": "^2.0.0",
+        "classnames": "^2.2.6",
+        "rc-input": "~1.5.0",
+        "rc-menu": "~9.14.0",
+        "rc-textarea": "~1.7.0",
+        "rc-util": "^5.34.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-menu": {
+      "version": "9.14.0",
+      "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-9.14.0.tgz",
+      "integrity": "sha512-La3LBCDMLMs9Q/8mTGbnscb+ZeJ26ebkLz9xJFHd2SD8vfsCKl1Z/k3mwbxyKL01lB40fel1s9Nn9LAv/nmVJQ==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "@rc-component/trigger": "^2.0.0",
+        "classnames": "2.x",
+        "rc-motion": "^2.4.3",
+        "rc-overflow": "^1.3.1",
+        "rc-util": "^5.27.0"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-notification": {
+      "version": "5.6.0",
+      "resolved": "https://registry.npmjs.org/rc-notification/-/rc-notification-5.6.0.tgz",
+      "integrity": "sha512-TGQW5T7waOxLwgJG7fXcw8l7AQiFOjaZ7ISF5PrU526nunHRNcTMuzKihQHaF4E/h/KfOCDk3Mv8eqzbu2e28w==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "classnames": "2.x",
+        "rc-motion": "^2.9.0",
+        "rc-util": "^5.20.1"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-pagination": {
+      "version": "4.0.4",
+      "resolved": "https://registry.npmjs.org/rc-pagination/-/rc-pagination-4.0.4.tgz",
+      "integrity": "sha512-GGrLT4NgG6wgJpT/hHIpL9nELv27A1XbSZzECIuQBQTVSf4xGKxWr6I/jhpRPauYEWEbWVw22ObG6tJQqwJqWQ==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "classnames": "^2.3.2",
+        "rc-util": "^5.38.0"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-progress": {
+      "version": "4.0.0",
+      "resolved": "https://registry.npmjs.org/rc-progress/-/rc-progress-4.0.0.tgz",
+      "integrity": "sha512-oofVMMafOCokIUIBnZLNcOZFsABaUw8PPrf1/y0ZBvKZNpOiu5h4AO9vv11Sw0p4Hb3D0yGWuEattcQGtNJ/aw==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "classnames": "^2.2.6",
+        "rc-util": "^5.16.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-rate": {
+      "version": "2.13.0",
+      "resolved": "https://registry.npmjs.org/rc-rate/-/rc-rate-2.13.0.tgz",
+      "integrity": "sha512-oxvx1Q5k5wD30sjN5tqAyWTvJfLNNJn7Oq3IeS4HxWfAiC4BOXMITNAsw7u/fzdtO4MS8Ki8uRLOzcnEuoQiAw==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "classnames": "^2.2.5",
+        "rc-util": "^5.0.1"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-resize-observer": {
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.4.0.tgz",
+      "integrity": "sha512-PnMVyRid9JLxFavTjeDXEXo65HCRqbmLBw9xX9gfC4BZiSzbLXKzW3jPz+J0P71pLbD5tBMTT+mkstV5gD0c9Q==",
+      "dependencies": {
+        "@babel/runtime": "^7.20.7",
+        "classnames": "^2.2.1",
+        "rc-util": "^5.38.0",
+        "resize-observer-polyfill": "^1.5.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-steps": {
+      "version": "6.0.1",
+      "resolved": "https://registry.npmjs.org/rc-steps/-/rc-steps-6.0.1.tgz",
+      "integrity": "sha512-lKHL+Sny0SeHkQKKDJlAjV5oZ8DwCdS2hFhAkIjuQt1/pB81M0cA0ErVFdHq9+jmPmFw1vJB2F5NBzFXLJxV+g==",
+      "dependencies": {
+        "@babel/runtime": "^7.16.7",
+        "classnames": "^2.2.3",
+        "rc-util": "^5.16.1"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-switch": {
+      "version": "4.1.0",
+      "resolved": "https://registry.npmjs.org/rc-switch/-/rc-switch-4.1.0.tgz",
+      "integrity": "sha512-TI8ufP2Az9oEbvyCeVE4+90PDSljGyuwix3fV58p7HV2o4wBnVToEyomJRVyTaZeqNPAp+vqeo4Wnj5u0ZZQBg==",
+      "dependencies": {
+        "@babel/runtime": "^7.21.0",
+        "classnames": "^2.2.1",
+        "rc-util": "^5.30.0"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-tabs": {
+      "version": "15.1.0",
+      "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-15.1.0.tgz",
+      "integrity": "sha512-xTNz4Km1025emtkv1q7xKhjPwAtXr/wycuXVTAcFJg+DKhnPDDbnwbA9KRW0SawAVOGvVEj8ZrBlU0u0FGLrbg==",
+      "dependencies": {
+        "@babel/runtime": "^7.11.2",
+        "classnames": "2.x",
+        "rc-dropdown": "~4.2.0",
+        "rc-menu": "~9.14.0",
+        "rc-motion": "^2.6.2",
+        "rc-resize-observer": "^1.0.0",
+        "rc-util": "^5.34.1"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-textarea": {
+      "version": "1.7.0",
+      "resolved": "https://registry.npmjs.org/rc-textarea/-/rc-textarea-1.7.0.tgz",
+      "integrity": "sha512-UxizYJkWkmxP3zofXgc487QiGyDmhhheDLLjIWbFtDmiru1ls30KpO8odDaPyqNUIy9ugj5djxTEuezIn6t3Jg==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "classnames": "^2.2.1",
+        "rc-input": "~1.5.0",
+        "rc-resize-observer": "^1.0.0",
+        "rc-util": "^5.27.0"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/rc-upload": {
+      "version": "4.5.2",
+      "resolved": "https://registry.npmjs.org/rc-upload/-/rc-upload-4.5.2.tgz",
+      "integrity": "sha512-QO3ne77DwnAPKFn0bA5qJM81QBjQi0e0NHdkvpFyY73Bea2NfITiotqJqVjHgeYPOJu5lLVR32TNGP084aSoXA==",
+      "dependencies": {
+        "@babel/runtime": "^7.18.3",
+        "classnames": "^2.2.5",
+        "rc-util": "^5.2.0"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/antd-v5/node_modules/scroll-into-view-if-needed": {
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-3.1.0.tgz",
+      "integrity": "sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==",
+      "dependencies": {
+        "compute-scroll-into-view": "^3.0.2"
+      }
+    },
     "node_modules/antd/node_modules/@ant-design/colors": {
       "version": "5.0.1",
       "resolved": "https://registry.npmjs.org/@ant-design/colors/-/colors-5.0.1.tgz",
@@ -25778,39 +26316,6 @@
         "react-dom": "*"
       }
     },
-    "node_modules/antd/node_modules/rc-select/node_modules/rc-overflow": {
-      "version": "1.2.8",
-      "resolved": "https://registry.npmjs.org/rc-overflow/-/rc-overflow-1.2.8.tgz",
-      "integrity": "sha512-QJ0UItckWPQ37ZL1dMEBAdY1dhfTXFL9k6oTTcyydVwoUNMnMqCGqnRNA98axSr/OeDKqR6DVFyi8eA5RQI/uQ==",
-      "dependencies": {
-        "@babel/runtime": "^7.11.1",
-        "classnames": "^2.2.1",
-        "rc-resize-observer": "^1.0.0",
-        "rc-util": "^5.19.2"
-      },
-      "peerDependencies": {
-        "react": ">=16.9.0",
-        "react-dom": ">=16.9.0"
-      }
-    },
-    "node_modules/antd/node_modules/rc-select/node_modules/rc-virtual-list": {
-      "version": "3.4.11",
-      "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-3.4.11.tgz",
-      "integrity": "sha512-BvUUH60kkeTBPigN5F89HtGaA5jSP4y2aM6cJ4dk9Y42I9yY+h6i08wF6UKeDcxdfOU8j3I5HxkSS/xA77J3wA==",
-      "dependencies": {
-        "@babel/runtime": "^7.20.0",
-        "classnames": "^2.2.6",
-        "rc-resize-observer": "^1.0.0",
-        "rc-util": "^5.15.0"
-      },
-      "engines": {
-        "node": ">=8.x"
-      },
-      "peerDependencies": {
-        "react": "*",
-        "react-dom": "*"
-      }
-    },
     "node_modules/antd/node_modules/rc-slider": {
       "version": "9.7.5",
       "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-9.7.5.tgz",
@@ -25897,24 +26402,6 @@
         "react-dom": "*"
       }
     },
-    "node_modules/antd/node_modules/rc-tree/node_modules/rc-virtual-list": {
-      "version": "3.4.11",
-      "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-3.4.11.tgz",
-      "integrity": "sha512-BvUUH60kkeTBPigN5F89HtGaA5jSP4y2aM6cJ4dk9Y42I9yY+h6i08wF6UKeDcxdfOU8j3I5HxkSS/xA77J3wA==",
-      "dependencies": {
-        "@babel/runtime": "^7.20.0",
-        "classnames": "^2.2.6",
-        "rc-resize-observer": "^1.0.0",
-        "rc-util": "^5.15.0"
-      },
-      "engines": {
-        "node": ">=8.x"
-      },
-      "peerDependencies": {
-        "react": "*",
-        "react-dom": "*"
-      }
-    },
     "node_modules/anymatch": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
@@ -28374,9 +28861,9 @@
       }
     },
     "node_modules/classnames": {
-      "version": "2.3.2",
-      "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz",
-      "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw=="
+      "version": "2.5.1",
+      "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz",
+      "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow=="
     },
     "node_modules/clean-css": {
       "version": "5.3.3",
@@ -29548,9 +30035,9 @@
       }
     },
     "node_modules/copy-to-clipboard": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz",
-      "integrity": "sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw==",
+      "version": "3.3.3",
+      "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz",
+      "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==",
       "dependencies": {
         "toggle-selection": "^1.0.6"
       }
@@ -32069,9 +32556,9 @@
       }
     },
     "node_modules/dayjs": {
-      "version": "1.10.7",
-      "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.10.7.tgz",
-      "integrity": "sha512-P6twpd70BcPK34K26uJ1KT3wlhpuOAPoMwJzpsIWUxHZ7wpmbdZL/hQqBDfz7hGurYSa5PhzdhDHtt319hL3ig=="
+      "version": "1.11.11",
+      "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.11.tgz",
+      "integrity": "sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg=="
     },
     "node_modules/deasync": {
       "version": "0.1.29",
@@ -57452,6 +57939,14 @@
         "teleport": ">=0.2.0"
       }
     },
+    "node_modules/qrcode.react": {
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/qrcode.react/-/qrcode.react-3.1.0.tgz",
+      "integrity": "sha512-oyF+Urr3oAMUG/OiOuONL3HXM+53wvuH3mtIWQrYmsXoAq0DkvZp2RYUWFSMFtbdOpuS++9v+WAkzNVkMlNW6Q==",
+      "peerDependencies": {
+        "react": "^16.8.0 || ^17.0.0 || ^18.0.0"
+      }
+    },
     "node_modules/qs": {
       "version": "6.5.3",
       "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz",
@@ -57728,6 +58223,38 @@
         "react-dom": ">=16.9.0"
       }
     },
+    "node_modules/rc-dialog": {
+      "version": "9.4.0",
+      "resolved": "https://registry.npmjs.org/rc-dialog/-/rc-dialog-9.4.0.tgz",
+      "integrity": "sha512-AScCexaLACvf8KZRqCPz12BJ8olszXOS4lKlkMyzDQHS1m0zj1KZMYgmMCh39ee0Dcv8kyrj8mTqxuLyhH+QuQ==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "@rc-component/portal": "^1.0.0-8",
+        "classnames": "^2.2.6",
+        "rc-motion": "^2.3.0",
+        "rc-util": "^5.21.0"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/rc-drawer": {
+      "version": "7.2.0",
+      "resolved": "https://registry.npmjs.org/rc-drawer/-/rc-drawer-7.2.0.tgz",
+      "integrity": "sha512-9lOQ7kBekEJRdEpScHvtmEtXnAsy+NGDXiRWc2ZVC7QXAazNVbeT4EraQKYwCME8BJLa8Bxqxvs5swwyOepRwg==",
+      "dependencies": {
+        "@babel/runtime": "^7.23.9",
+        "@rc-component/portal": "^1.1.1",
+        "classnames": "^2.2.6",
+        "rc-motion": "^2.6.1",
+        "rc-util": "^5.38.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
     "node_modules/rc-dropdown": {
       "version": "3.2.0",
       "resolved": "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-3.2.0.tgz",
@@ -57758,6 +58285,37 @@
         "react": ">= 16.9.0"
       }
     },
+    "node_modules/rc-image": {
+      "version": "7.8.0",
+      "resolved": "https://registry.npmjs.org/rc-image/-/rc-image-7.8.0.tgz",
+      "integrity": "sha512-f5lgtAvRaL+HW9to4Lt06419GJtMLCGbp9RA++nJaDEwZvsMNkKa4QtG5+kDYTVKQf6pjaakJOIPB98W/khQFw==",
+      "dependencies": {
+        "@babel/runtime": "^7.11.2",
+        "@rc-component/portal": "^1.0.2",
+        "classnames": "^2.2.6",
+        "rc-dialog": "~9.4.0",
+        "rc-motion": "^2.6.2",
+        "rc-util": "^5.34.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/rc-input": {
+      "version": "1.5.1",
+      "resolved": "https://registry.npmjs.org/rc-input/-/rc-input-1.5.1.tgz",
+      "integrity": "sha512-+nOzQJDeIfIpNP/SgY45LXSKbuMlp4Yap2y8c+ZpU7XbLmNzUd6+d5/S75sA/52jsVE6S/AkhkkDEAOjIu7i6g==",
+      "dependencies": {
+        "@babel/runtime": "^7.11.1",
+        "classnames": "^2.2.1",
+        "rc-util": "^5.18.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.0.0",
+        "react-dom": ">=16.0.0"
+      }
+    },
     "node_modules/rc-input-number": {
       "version": "6.1.2",
       "resolved": "https://registry.npmjs.org/rc-input-number/-/rc-input-number-6.1.2.tgz",
@@ -57809,13 +58367,13 @@
       }
     },
     "node_modules/rc-motion": {
-      "version": "2.4.1",
-      "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-2.4.1.tgz",
-      "integrity": "sha512-TWLvymfMu8SngPx5MDH8dQ0D2RYbluNTfam4hY/dNNx9RQ3WtGuZ/GXHi2ymLMzH+UNd6EEFYkOuR5JTTtm8Xg==",
+      "version": "2.9.1",
+      "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-2.9.1.tgz",
+      "integrity": "sha512-QD4bUqByjVQs7PhUT1d4bNxvtTcK9ETwtg7psbDfo6TmYalH/1hhjj4r2hbhW7g5OOEqYHhfwfj4noIvuOVRtQ==",
       "dependencies": {
         "@babel/runtime": "^7.11.1",
         "classnames": "^2.2.1",
-        "rc-util": "^5.2.1"
+        "rc-util": "^5.39.3"
       },
       "peerDependencies": {
         "react": ">=16.9.0",
@@ -57840,6 +58398,36 @@
         "react-dom": ">=16.9.0"
       }
     },
+    "node_modules/rc-overflow": {
+      "version": "1.3.2",
+      "resolved": "https://registry.npmjs.org/rc-overflow/-/rc-overflow-1.3.2.tgz",
+      "integrity": "sha512-nsUm78jkYAoPygDAcGZeC2VwIg/IBGSodtOY3pMof4W3M9qRJgqaDYm03ZayHlde3I6ipliAxbN0RUcGf5KOzw==",
+      "dependencies": {
+        "@babel/runtime": "^7.11.1",
+        "classnames": "^2.2.1",
+        "rc-resize-observer": "^1.0.0",
+        "rc-util": "^5.37.0"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/rc-overflow/node_modules/rc-resize-observer": {
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.4.0.tgz",
+      "integrity": "sha512-PnMVyRid9JLxFavTjeDXEXo65HCRqbmLBw9xX9gfC4BZiSzbLXKzW3jPz+J0P71pLbD5tBMTT+mkstV5gD0c9Q==",
+      "dependencies": {
+        "@babel/runtime": "^7.20.7",
+        "classnames": "^2.2.1",
+        "rc-util": "^5.38.0",
+        "resize-observer-polyfill": "^1.5.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
     "node_modules/rc-pagination": {
       "version": "3.1.2",
       "resolved": "https://registry.npmjs.org/rc-pagination/-/rc-pagination-3.1.2.tgz",
@@ -57853,6 +58441,59 @@
         "react-dom": ">=16.9.0"
       }
     },
+    "node_modules/rc-picker": {
+      "version": "4.5.0",
+      "resolved": "https://registry.npmjs.org/rc-picker/-/rc-picker-4.5.0.tgz",
+      "integrity": "sha512-suqz9bzuhBQlf7u+bZd1bJLPzhXpk12w6AjQ9BTPTiFwexVZgUKViG1KNLyfFvW6tCUZZK0HmCCX7JAyM+JnCg==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "@rc-component/trigger": "^2.0.0",
+        "classnames": "^2.2.1",
+        "rc-overflow": "^1.3.2",
+        "rc-resize-observer": "^1.4.0",
+        "rc-util": "^5.38.1"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "date-fns": ">= 2.x",
+        "dayjs": ">= 1.x",
+        "luxon": ">= 3.x",
+        "moment": ">= 2.x",
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      },
+      "peerDependenciesMeta": {
+        "date-fns": {
+          "optional": true
+        },
+        "dayjs": {
+          "optional": true
+        },
+        "luxon": {
+          "optional": true
+        },
+        "moment": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/rc-picker/node_modules/rc-resize-observer": {
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.4.0.tgz",
+      "integrity": "sha512-PnMVyRid9JLxFavTjeDXEXo65HCRqbmLBw9xX9gfC4BZiSzbLXKzW3jPz+J0P71pLbD5tBMTT+mkstV5gD0c9Q==",
+      "dependencies": {
+        "@babel/runtime": "^7.20.7",
+        "classnames": "^2.2.1",
+        "rc-util": "^5.38.0",
+        "resize-observer-polyfill": "^1.5.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
     "node_modules/rc-progress": {
       "version": "3.1.1",
       "resolved": "https://registry.npmjs.org/rc-progress/-/rc-progress-3.1.1.tgz",
@@ -57898,6 +58539,59 @@
         "react-dom": ">=16.9.0"
       }
     },
+    "node_modules/rc-segmented": {
+      "version": "2.3.0",
+      "resolved": "https://registry.npmjs.org/rc-segmented/-/rc-segmented-2.3.0.tgz",
+      "integrity": "sha512-I3FtM5Smua/ESXutFfb8gJ8ZPcvFR+qUgeeGFQHBOvRiRKyAk4aBE5nfqrxXx+h8/vn60DQjOt6i4RNtrbOobg==",
+      "dependencies": {
+        "@babel/runtime": "^7.11.1",
+        "classnames": "^2.2.1",
+        "rc-motion": "^2.4.4",
+        "rc-util": "^5.17.0"
+      },
+      "peerDependencies": {
+        "react": ">=16.0.0",
+        "react-dom": ">=16.0.0"
+      }
+    },
+    "node_modules/rc-select": {
+      "version": "14.14.0",
+      "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-14.14.0.tgz",
+      "integrity": "sha512-Uo2wulrjoPPRLCPd7zlK4ZFVJxlTN//yp1xWP/U+TUOQCyXrT+Duvq/Si5OzVcmQyWAUSbsplc2OwNNhvbOeKQ==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "@rc-component/trigger": "^2.1.1",
+        "classnames": "2.x",
+        "rc-motion": "^2.0.1",
+        "rc-overflow": "^1.3.1",
+        "rc-util": "^5.16.1",
+        "rc-virtual-list": "^3.5.2"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "react": "*",
+        "react-dom": "*"
+      }
+    },
+    "node_modules/rc-slider": {
+      "version": "10.6.2",
+      "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-10.6.2.tgz",
+      "integrity": "sha512-FjkoFjyvUQWcBo1F3RgSglky3ar0+qHLM41PlFVYB4Bj3RD8E/Mv7kqMouLFBU+3aFglMzzctAIWRwajEuueSw==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "classnames": "^2.2.5",
+        "rc-util": "^5.36.0"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
     "node_modules/rc-steps": {
       "version": "4.1.3",
       "resolved": "https://registry.npmjs.org/rc-steps/-/rc-steps-4.1.3.tgz",
@@ -57929,6 +58623,41 @@
         "react-dom": ">=16.9.0"
       }
     },
+    "node_modules/rc-table": {
+      "version": "7.45.7",
+      "resolved": "https://registry.npmjs.org/rc-table/-/rc-table-7.45.7.tgz",
+      "integrity": "sha512-wi9LetBL1t1csxyGkMB2p3mCiMt+NDexMlPbXHvQFmBBAsMxrgNSAPwUci2zDLUq9m8QdWc1Nh8suvrpy9mXrg==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "@rc-component/context": "^1.4.0",
+        "classnames": "^2.2.5",
+        "rc-resize-observer": "^1.1.0",
+        "rc-util": "^5.37.0",
+        "rc-virtual-list": "^3.14.2"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/rc-table/node_modules/rc-resize-observer": {
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.4.0.tgz",
+      "integrity": "sha512-PnMVyRid9JLxFavTjeDXEXo65HCRqbmLBw9xX9gfC4BZiSzbLXKzW3jPz+J0P71pLbD5tBMTT+mkstV5gD0c9Q==",
+      "dependencies": {
+        "@babel/runtime": "^7.20.7",
+        "classnames": "^2.2.1",
+        "rc-util": "^5.38.0",
+        "resize-observer-polyfill": "^1.5.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
     "node_modules/rc-tabs": {
       "version": "11.7.2",
       "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-11.7.2.tgz",
@@ -57964,6 +58693,55 @@
         "react-dom": ">=16.9.0"
       }
     },
+    "node_modules/rc-tooltip": {
+      "version": "6.2.0",
+      "resolved": "https://registry.npmjs.org/rc-tooltip/-/rc-tooltip-6.2.0.tgz",
+      "integrity": "sha512-iS/3iOAvtDh9GIx1ulY7EFUXUtktFccNLsARo3NPgLf0QW9oT0w3dA9cYWlhqAKmD+uriEwdWz1kH0Qs4zk2Aw==",
+      "dependencies": {
+        "@babel/runtime": "^7.11.2",
+        "@rc-component/trigger": "^2.0.0",
+        "classnames": "^2.3.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/rc-tree": {
+      "version": "5.8.7",
+      "resolved": "https://registry.npmjs.org/rc-tree/-/rc-tree-5.8.7.tgz",
+      "integrity": "sha512-cpsIQZ4nNYwpj6cqPRt52e/69URuNdgQF9wZ10InmEf8W3+i0A41OVmZWwHuX9gegQSqj+DPmaDkZFKQZ+ZV1w==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "classnames": "2.x",
+        "rc-motion": "^2.0.1",
+        "rc-util": "^5.16.1",
+        "rc-virtual-list": "^3.5.1"
+      },
+      "engines": {
+        "node": ">=10.x"
+      },
+      "peerDependencies": {
+        "react": "*",
+        "react-dom": "*"
+      }
+    },
+    "node_modules/rc-tree-select": {
+      "version": "5.21.0",
+      "resolved": "https://registry.npmjs.org/rc-tree-select/-/rc-tree-select-5.21.0.tgz",
+      "integrity": "sha512-w+9qEu6zh0G3wt9N/hzWNSnqYH1i9mH1Nqxo0caxLRRFXF5yZWYmpCDoDTMdQM1Y4z3Q5yj08qyrPH/d4AtumA==",
+      "dependencies": {
+        "@babel/runtime": "^7.10.1",
+        "classnames": "2.x",
+        "rc-select": "~14.14.0",
+        "rc-tree": "~5.8.1",
+        "rc-util": "^5.16.1"
+      },
+      "peerDependencies": {
+        "react": "*",
+        "react-dom": "*"
+      }
+    },
     "node_modules/rc-trigger": {
       "version": "5.2.0",
       "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-5.2.0.tgz",
@@ -57994,9 +58772,9 @@
       }
     },
     "node_modules/rc-util": {
-      "version": "5.38.1",
-      "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.38.1.tgz",
-      "integrity": "sha512-e4ZMs7q9XqwTuhIK7zBIVFltUtMSjphuPPQXHoHlzRzNdOwUxDejo0Zls5HYaJfRKNURcsS/ceKVULlhjBrxng==",
+      "version": "5.41.0",
+      "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.41.0.tgz",
+      "integrity": "sha512-xtlCim9RpmVv0Ar2Nnc3WfJCxjQkTf3xHPWoFdjp1fSs2NirQwqiQrfqdU9HUe0kdfb168M/T8Dq0IaX50xeKg==",
       "dependencies": {
         "@babel/runtime": "^7.18.3",
         "react-is": "^18.2.0"
@@ -58011,6 +58789,39 @@
       "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz",
       "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w=="
     },
+    "node_modules/rc-virtual-list": {
+      "version": "3.14.2",
+      "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-3.14.2.tgz",
+      "integrity": "sha512-rA+W5xryhklJAcmswNyuKB3ZGeB855io+yOFQK5u/RXhjdshGblfKpNkQr4/9fBhZns0+uiL/0/s6IP2krtSmg==",
+      "dependencies": {
+        "@babel/runtime": "^7.20.0",
+        "classnames": "^2.2.6",
+        "rc-resize-observer": "^1.0.0",
+        "rc-util": "^5.36.0"
+      },
+      "engines": {
+        "node": ">=8.x"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
+    "node_modules/rc-virtual-list/node_modules/rc-resize-observer": {
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.4.0.tgz",
+      "integrity": "sha512-PnMVyRid9JLxFavTjeDXEXo65HCRqbmLBw9xX9gfC4BZiSzbLXKzW3jPz+J0P71pLbD5tBMTT+mkstV5gD0c9Q==",
+      "dependencies": {
+        "@babel/runtime": "^7.20.7",
+        "classnames": "^2.2.1",
+        "rc-util": "^5.38.0",
+        "resize-observer-polyfill": "^1.5.1"
+      },
+      "peerDependencies": {
+        "react": ">=16.9.0",
+        "react-dom": ">=16.9.0"
+      }
+    },
     "node_modules/re-resizable": {
       "version": "6.9.11",
       "resolved": "https://registry.npmjs.org/re-resizable/-/re-resizable-6.9.11.tgz",
@@ -63364,6 +64175,14 @@
       "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==",
       "dev": true
     },
+    "node_modules/throttle-debounce": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-5.0.0.tgz",
+      "integrity": "sha512-2iQTSgkkc1Zyk0MeVrt/3BvuOXYPl/R8Z0U2xxo9rjwNciaHDG3R+Lm6dh4EeUci49DanvBnuqI6jshoQQRGEg==",
+      "engines": {
+        "node": ">=12.22"
+      }
+    },
     "node_modules/throttleit": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz",
@@ -71045,11 +71864,6 @@
         "@types/react": "*"
       }
     },
-    "plugins/plugin-chart-table/node_modules/classnames": {
-      "version": "2.5.1",
-      "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz",
-      "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow=="
-    },
     "plugins/plugin-chart-table/node_modules/d3-array": {
       "version": "2.12.1",
       "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz",
@@ -71206,29 +72020,55 @@
       }
     },
     "@ant-design/colors": {
-      "version": "7.0.0",
-      "resolved": "https://registry.npmjs.org/@ant-design/colors/-/colors-7.0.0.tgz",
-      "integrity": "sha512-iVm/9PfGCbC0dSMBrz7oiEXZaaGH7ceU40OJEfKmyuzR9R5CRimJYPlRiFtMQGQcbNMea/ePcoIebi4ASGYXtg==",
+      "version": "7.0.2",
+      "resolved": "https://registry.npmjs.org/@ant-design/colors/-/colors-7.0.2.tgz",
+      "integrity": "sha512-7KJkhTiPiLHSu+LmMJnehfJ6242OCxSlR3xHVBecYxnMW8MS/878NXct1GqYARyL59fyeFdKRxXTfvR9SnDgJg==",
       "requires": {
-        "@ctrl/tinycolor": "^3.4.0"
+        "@ctrl/tinycolor": "^3.6.1"
+      }
+    },
+    "@ant-design/cssinjs": {
+      "version": "1.20.0",
+      "resolved": "https://registry.npmjs.org/@ant-design/cssinjs/-/cssinjs-1.20.0.tgz",
+      "integrity": "sha512-uG3iWzJxgNkADdZmc6W0Ci3iQAUOvLMcM8SnnmWq3r6JeocACft4ChnY/YWvI2Y+rG/68QBla/O+udke1yH3vg==",
+      "requires": {
+        "@babel/runtime": "^7.11.1",
+        "@emotion/hash": "^0.8.0",
+        "@emotion/unitless": "^0.7.5",
+        "classnames": "^2.3.1",
+        "csstype": "^3.1.3",
+        "rc-util": "^5.35.0",
+        "stylis": "^4.0.13"
       }
     },
     "@ant-design/icons": {
-      "version": "5.2.6",
-      "resolved": "https://registry.npmjs.org/@ant-design/icons/-/icons-5.2.6.tgz",
-      "integrity": "sha512-4wn0WShF43TrggskBJPRqCD0fcHbzTYjnaoskdiJrVHg86yxoZ8ZUqsXvyn4WUqehRiFKnaclOhqk9w4Ui2KVw==",
+      "version": "5.3.7",
+      "resolved": "https://registry.npmjs.org/@ant-design/icons/-/icons-5.3.7.tgz",
+      "integrity": "sha512-bCPXTAg66f5bdccM4TT21SQBDO1Ek2gho9h3nO9DAKXJP4sq+5VBjrQMSxMVXSB3HyEz+cUbHQ5+6ogxCOpaew==",
       "requires": {
         "@ant-design/colors": "^7.0.0",
-        "@ant-design/icons-svg": "^4.3.0",
+        "@ant-design/icons-svg": "^4.4.0",
         "@babel/runtime": "^7.11.2",
         "classnames": "^2.2.6",
         "rc-util": "^5.31.1"
       }
     },
     "@ant-design/icons-svg": {
-      "version": "4.3.1",
-      "resolved": "https://registry.npmjs.org/@ant-design/icons-svg/-/icons-svg-4.3.1.tgz",
-      "integrity": "sha512-4QBZg8ccyC6LPIRii7A0bZUk3+lEDCLnhB+FVsflGdcWPPmV+j3fire4AwwoqHV/BibgvBmR9ZIo4s867smv+g=="
+      "version": "4.4.2",
+      "resolved": "https://registry.npmjs.org/@ant-design/icons-svg/-/icons-svg-4.4.2.tgz",
+      "integrity": "sha512-vHbT+zJEVzllwP+CM+ul7reTEfBR0vgxFe7+lREAsAA7YGsYpboiq2sQNeQeRvh09GfQgs/GyFEvZpJ9cLXpXA=="
+    },
+    "@ant-design/react-slick": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/@ant-design/react-slick/-/react-slick-1.1.2.tgz",
+      "integrity": "sha512-EzlvzE6xQUBrZuuhSAFTdsr4P2bBBHGZwKFemEfq8gIGyIQCxalYfZW/T2ORbtQx5rU69o+WycP3exY/7T1hGA==",
+      "requires": {
+        "@babel/runtime": "^7.10.4",
+        "classnames": "^2.2.5",
+        "json2mq": "^0.2.0",
+        "resize-observer-polyfill": "^1.5.1",
+        "throttle-debounce": "^5.0.0"
+      }
     },
     "@applitools/core": {
       "version": "4.12.2",
@@ -73567,9 +74407,9 @@
       "dev": true
     },
     "@babel/runtime": {
-      "version": "7.23.9",
-      "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz",
-      "integrity": "sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==",
+      "version": "7.24.6",
+      "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.6.tgz",
+      "integrity": "sha512-Ja18XcETdEl5mzzACGd+DKgaGJzPTCow7EglgwTmHdwokzDFYh/MHua6lU6DV/hjF2IaOJ4oX2nqnjG7RElKOw==",
       "requires": {
         "regenerator-runtime": "^0.14.0"
       },
@@ -73697,9 +74537,9 @@
       }
     },
     "@ctrl/tinycolor": {
-      "version": "3.4.1",
-      "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-3.4.1.tgz",
-      "integrity": "sha512-ej5oVy6lykXsvieQtqZxCOaLT+xD4+QNarq78cIYISHmZXshCvROLudpQN3lfL8G0NL7plMSSK+zlyvCaIJ4Iw=="
+      "version": "3.6.1",
+      "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-3.6.1.tgz",
+      "integrity": "sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA=="
     },
     "@cypress/mount-utils": {
       "version": "1.0.2",
@@ -80891,6 +81731,100 @@
         "@babel/runtime": "^7.13.10"
       }
     },
+    "@rc-component/async-validator": {
+      "version": "5.0.4",
+      "resolved": "https://registry.npmjs.org/@rc-component/async-validator/-/async-validator-5.0.4.tgz",
+      "integrity": "sha512-qgGdcVIF604M9EqjNF0hbUTz42bz/RDtxWdWuU5EQe3hi7M8ob54B6B35rOsvX5eSvIHIzT9iH1R3n+hk3CGfg==",
+      "requires": {
+        "@babel/runtime": "^7.24.4"
+      }
+    },
+    "@rc-component/color-picker": {
+      "version": "1.5.3",
+      "resolved": "https://registry.npmjs.org/@rc-component/color-picker/-/color-picker-1.5.3.tgz",
+      "integrity": "sha512-+tGGH3nLmYXTalVe0L8hSZNs73VTP5ueSHwUlDC77KKRaN7G4DS4wcpG5DTDzdcV/Yas+rzA6UGgIyzd8fS4cw==",
+      "requires": {
+        "@babel/runtime": "^7.23.6",
+        "@ctrl/tinycolor": "^3.6.1",
+        "classnames": "^2.2.6",
+        "rc-util": "^5.38.1"
+      }
+    },
+    "@rc-component/context": {
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/@rc-component/context/-/context-1.4.0.tgz",
+      "integrity": "sha512-kFcNxg9oLRMoL3qki0OMxK+7g5mypjgaaJp/pkOis/6rVxma9nJBF/8kCIuTYHUQNr0ii7MxqE33wirPZLJQ2w==",
+      "requires": {
+        "@babel/runtime": "^7.10.1",
+        "rc-util": "^5.27.0"
+      }
+    },
+    "@rc-component/mini-decimal": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/@rc-component/mini-decimal/-/mini-decimal-1.1.0.tgz",
+      "integrity": "sha512-jS4E7T9Li2GuYwI6PyiVXmxTiM6b07rlD9Ge8uGZSCz3WlzcG5ZK7g5bbuKNeZ9pgUuPK/5guV781ujdVpm4HQ==",
+      "requires": {
+        "@babel/runtime": "^7.18.0"
+      }
+    },
+    "@rc-component/mutate-observer": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/@rc-component/mutate-observer/-/mutate-observer-1.1.0.tgz",
+      "integrity": "sha512-QjrOsDXQusNwGZPf4/qRQasg7UFEj06XiCJ8iuiq/Io7CrHrgVi6Uuetw60WAMG1799v+aM8kyc+1L/GBbHSlw==",
+      "requires": {
+        "@babel/runtime": "^7.18.0",
+        "classnames": "^2.3.2",
+        "rc-util": "^5.24.4"
+      }
+    },
+    "@rc-component/portal": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/@rc-component/portal/-/portal-1.1.2.tgz",
+      "integrity": "sha512-6f813C0IsasTZms08kfA8kPAGxbbkYToa8ALaiDIGGECU4i9hj8Plgbx0sNJDrey3EtHO30hmdaxtT0138xZcg==",
+      "requires": {
+        "@babel/runtime": "^7.18.0",
+        "classnames": "^2.3.2",
+        "rc-util": "^5.24.4"
+      }
+    },
+    "@rc-component/tour": {
+      "version": "1.15.0",
+      "resolved": "https://registry.npmjs.org/@rc-component/tour/-/tour-1.15.0.tgz",
+      "integrity": "sha512-h6hyILDwL+In9GAgRobwRWihLqqsD7Uft3fZGrJ7L4EiyCoxbnNYwzPXDfz7vNDhWeVyvAWQJj9fJCzpI4+b4g==",
+      "requires": {
+        "@babel/runtime": "^7.18.0",
+        "@rc-component/portal": "^1.0.0-9",
+        "@rc-component/trigger": "^2.0.0",
+        "classnames": "^2.3.2",
+        "rc-util": "^5.24.4"
+      }
+    },
+    "@rc-component/trigger": {
+      "version": "2.2.0",
+      "resolved": "https://registry.npmjs.org/@rc-component/trigger/-/trigger-2.2.0.tgz",
+      "integrity": "sha512-QarBCji02YE9aRFhZgRZmOpXBj0IZutRippsVBv85sxvG4FGk/vRxwAlkn3MS9zK5mwbETd86mAVg2tKqTkdJA==",
+      "requires": {
+        "@babel/runtime": "^7.23.2",
+        "@rc-component/portal": "^1.1.0",
+        "classnames": "^2.3.2",
+        "rc-motion": "^2.0.0",
+        "rc-resize-observer": "^1.3.1",
+        "rc-util": "^5.38.0"
+      },
+      "dependencies": {
+        "rc-resize-observer": {
+          "version": "1.4.0",
+          "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.4.0.tgz",
+          "integrity": "sha512-PnMVyRid9JLxFavTjeDXEXo65HCRqbmLBw9xX9gfC4BZiSzbLXKzW3jPz+J0P71pLbD5tBMTT+mkstV5gD0c9Q==",
+          "requires": {
+            "@babel/runtime": "^7.20.7",
+            "classnames": "^2.2.1",
+            "rc-util": "^5.38.0",
+            "resize-observer-polyfill": "^1.5.1"
+          }
+        }
+      }
+    },
     "@react-dnd/asap": {
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/@react-dnd/asap/-/asap-4.0.0.tgz",
@@ -88847,11 +89781,6 @@
             "@types/react": "*"
           }
         },
-        "classnames": {
-          "version": "2.5.1",
-          "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz",
-          "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow=="
-        },
         "d3-array": {
           "version": "2.12.1",
           "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz",
@@ -92351,30 +93280,6 @@
             "rc-trigger": "^5.0.4",
             "rc-util": "^5.9.8",
             "rc-virtual-list": "^3.2.0"
-          },
-          "dependencies": {
-            "rc-overflow": {
-              "version": "1.2.8",
-              "resolved": "https://registry.npmjs.org/rc-overflow/-/rc-overflow-1.2.8.tgz",
-              "integrity": "sha512-QJ0UItckWPQ37ZL1dMEBAdY1dhfTXFL9k6oTTcyydVwoUNMnMqCGqnRNA98axSr/OeDKqR6DVFyi8eA5RQI/uQ==",
-              "requires": {
-                "@babel/runtime": "^7.11.1",
-                "classnames": "^2.2.1",
-                "rc-resize-observer": "^1.0.0",
-                "rc-util": "^5.19.2"
-              }
-            },
-            "rc-virtual-list": {
-              "version": "3.4.11",
-              "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-3.4.11.tgz",
-              "integrity": "sha512-BvUUH60kkeTBPigN5F89HtGaA5jSP4y2aM6cJ4dk9Y42I9yY+h6i08wF6UKeDcxdfOU8j3I5HxkSS/xA77J3wA==",
-              "requires": {
-                "@babel/runtime": "^7.20.0",
-                "classnames": "^2.2.6",
-                "rc-resize-observer": "^1.0.0",
-                "rc-util": "^5.15.0"
-              }
-            }
           }
         },
         "rc-slider": {
@@ -92420,19 +93325,6 @@
             "rc-motion": "^2.0.1",
             "rc-util": "^5.0.0",
             "rc-virtual-list": "^3.0.1"
-          },
-          "dependencies": {
-            "rc-virtual-list": {
-              "version": "3.4.11",
-              "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-3.4.11.tgz",
-              "integrity": "sha512-BvUUH60kkeTBPigN5F89HtGaA5jSP4y2aM6cJ4dk9Y42I9yY+h6i08wF6UKeDcxdfOU8j3I5HxkSS/xA77J3wA==",
-              "requires": {
-                "@babel/runtime": "^7.20.0",
-                "classnames": "^2.2.6",
-                "rc-resize-observer": "^1.0.0",
-                "rc-util": "^5.15.0"
-              }
-            }
           }
         },
         "rc-tree-select": {
@@ -92449,6 +93341,278 @@
         }
       }
     },
+    "antd-v5": {
+      "version": "npm:antd@5.18.0",
+      "resolved": "https://registry.npmjs.org/antd/-/antd-5.18.0.tgz",
+      "integrity": "sha512-xAvqvioW34npeZb8/JLZmCh5mcHU5MLiA0IYWAlpLAVmSgjs3p0tNzbU6a7Yx+y7o7E8PHtlchWfO3yBLQ15FQ==",
+      "requires": {
+        "@ant-design/colors": "^7.0.2",
+        "@ant-design/cssinjs": "^1.19.1",
+        "@ant-design/icons": "^5.3.7",
+        "@ant-design/react-slick": "~1.1.2",
+        "@babel/runtime": "^7.24.5",
+        "@ctrl/tinycolor": "^3.6.1",
+        "@rc-component/color-picker": "~1.5.3",
+        "@rc-component/mutate-observer": "^1.1.0",
+        "@rc-component/tour": "~1.15.0",
+        "@rc-component/trigger": "^2.2.0",
+        "classnames": "^2.5.1",
+        "copy-to-clipboard": "^3.3.3",
+        "dayjs": "^1.11.10",
+        "qrcode.react": "^3.1.0",
+        "rc-cascader": "~3.26.0",
+        "rc-checkbox": "~3.3.0",
+        "rc-collapse": "~3.7.3",
+        "rc-dialog": "~9.4.0",
+        "rc-drawer": "~7.2.0",
+        "rc-dropdown": "~4.2.0",
+        "rc-field-form": "~2.2.0",
+        "rc-image": "~7.8.0",
+        "rc-input": "~1.5.1",
+        "rc-input-number": "~9.1.0",
+        "rc-mentions": "~2.13.1",
+        "rc-menu": "~9.14.0",
+        "rc-motion": "^2.9.1",
+        "rc-notification": "~5.6.0",
+        "rc-pagination": "~4.0.4",
+        "rc-picker": "~4.5.0",
+        "rc-progress": "~4.0.0",
+        "rc-rate": "~2.13.0",
+        "rc-resize-observer": "^1.4.0",
+        "rc-segmented": "~2.3.0",
+        "rc-select": "~14.14.0",
+        "rc-slider": "~10.6.2",
+        "rc-steps": "~6.0.1",
+        "rc-switch": "~4.1.0",
+        "rc-table": "~7.45.7",
+        "rc-tabs": "~15.1.0",
+        "rc-textarea": "~1.7.0",
+        "rc-tooltip": "~6.2.0",
+        "rc-tree": "~5.8.7",
+        "rc-tree-select": "~5.21.0",
+        "rc-upload": "~4.5.2",
+        "rc-util": "^5.41.0",
+        "scroll-into-view-if-needed": "^3.1.0",
+        "throttle-debounce": "^5.0.0"
+      },
+      "dependencies": {
+        "compute-scroll-into-view": {
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-3.1.0.tgz",
+          "integrity": "sha512-rj8l8pD4bJ1nx+dAkMhV1xB5RuZEyVysfxJqB1pRchh1KVvwOv9b7CGB8ZfjTImVv2oF+sYMUkMZq6Na5Ftmbg=="
+        },
+        "rc-cascader": {
+          "version": "3.26.0",
+          "resolved": "https://registry.npmjs.org/rc-cascader/-/rc-cascader-3.26.0.tgz",
+          "integrity": "sha512-L1dml383TPSJD1I11YwxuVbmqaJY64psZqFp1ETlgl3LEOwDu76Cyl11fw5dmjJhMlUWwM5dECQfqJgfebhUjg==",
+          "requires": {
+            "@babel/runtime": "^7.12.5",
+            "array-tree-filter": "^2.1.0",
+            "classnames": "^2.3.1",
+            "rc-select": "~14.14.0",
+            "rc-tree": "~5.8.1",
+            "rc-util": "^5.37.0"
+          }
+        },
+        "rc-checkbox": {
+          "version": "3.3.0",
+          "resolved": "https://registry.npmjs.org/rc-checkbox/-/rc-checkbox-3.3.0.tgz",
+          "integrity": "sha512-Ih3ZaAcoAiFKJjifzwsGiT/f/quIkxJoklW4yKGho14Olulwn8gN7hOBve0/WGDg5o/l/5mL0w7ff7/YGvefVw==",
+          "requires": {
+            "@babel/runtime": "^7.10.1",
+            "classnames": "^2.3.2",
+            "rc-util": "^5.25.2"
+          }
+        },
+        "rc-collapse": {
+          "version": "3.7.3",
+          "resolved": "https://registry.npmjs.org/rc-collapse/-/rc-collapse-3.7.3.tgz",
+          "integrity": "sha512-60FJcdTRn0X5sELF18TANwtVi7FtModq649H11mYF1jh83DniMoM4MqY627sEKRCTm4+WXfGDcB7hY5oW6xhyw==",
+          "requires": {
+            "@babel/runtime": "^7.10.1",
+            "classnames": "2.x",
+            "rc-motion": "^2.3.4",
+            "rc-util": "^5.27.0"
+          }
+        },
+        "rc-dropdown": {
+          "version": "4.2.0",
+          "resolved": "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-4.2.0.tgz",
+          "integrity": "sha512-odM8Ove+gSh0zU27DUj5cG1gNKg7mLWBYzB5E4nNLrLwBmYEgYP43vHKDGOVZcJSVElQBI0+jTQgjnq0NfLjng==",
+          "requires": {
+            "@babel/runtime": "^7.18.3",
+            "@rc-component/trigger": "^2.0.0",
+            "classnames": "^2.2.6",
+            "rc-util": "^5.17.0"
+          }
+        },
+        "rc-field-form": {
+          "version": "2.2.0",
+          "resolved": "https://registry.npmjs.org/rc-field-form/-/rc-field-form-2.2.0.tgz",
+          "integrity": "sha512-Kl7wBXCmFbRi9aPw0yiRTSPH3WQGRnOVGX/UxlEjAz2pGwsaw2MisCJ7GTXukdiybYsw8K7agDD7ZsPGUNcDKg==",
+          "requires": {
+            "@babel/runtime": "^7.18.0",
+            "@rc-component/async-validator": "^5.0.3",
+            "rc-util": "^5.32.2"
+          }
+        },
+        "rc-input-number": {
+          "version": "9.1.0",
+          "resolved": "https://registry.npmjs.org/rc-input-number/-/rc-input-number-9.1.0.tgz",
+          "integrity": "sha512-NqJ6i25Xn/AgYfVxynlevIhX3FuKlMwIFpucGG1h98SlK32wQwDK0zhN9VY32McOmuaqzftduNYWWooWz8pXQA==",
+          "requires": {
+            "@babel/runtime": "^7.10.1",
+            "@rc-component/mini-decimal": "^1.0.1",
+            "classnames": "^2.2.5",
+            "rc-input": "~1.5.0",
+            "rc-util": "^5.40.1"
+          }
+        },
+        "rc-mentions": {
+          "version": "2.13.1",
+          "resolved": "https://registry.npmjs.org/rc-mentions/-/rc-mentions-2.13.1.tgz",
+          "integrity": "sha512-DSyUDq/PPCleUX1eghIn371lTSRQsIuCs1N7xR9nZcHP9R1NkE7JjpWUP8Gy4EGVPu0JN0qIcokxYJaoGPnofg==",
+          "requires": {
+            "@babel/runtime": "^7.22.5",
+            "@rc-component/trigger": "^2.0.0",
+            "classnames": "^2.2.6",
+            "rc-input": "~1.5.0",
+            "rc-menu": "~9.14.0",
+            "rc-textarea": "~1.7.0",
+            "rc-util": "^5.34.1"
+          }
+        },
+        "rc-menu": {
+          "version": "9.14.0",
+          "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-9.14.0.tgz",
+          "integrity": "sha512-La3LBCDMLMs9Q/8mTGbnscb+ZeJ26ebkLz9xJFHd2SD8vfsCKl1Z/k3mwbxyKL01lB40fel1s9Nn9LAv/nmVJQ==",
+          "requires": {
+            "@babel/runtime": "^7.10.1",
+            "@rc-component/trigger": "^2.0.0",
+            "classnames": "2.x",
+            "rc-motion": "^2.4.3",
+            "rc-overflow": "^1.3.1",
+            "rc-util": "^5.27.0"
+          }
+        },
+        "rc-notification": {
+          "version": "5.6.0",
+          "resolved": "https://registry.npmjs.org/rc-notification/-/rc-notification-5.6.0.tgz",
+          "integrity": "sha512-TGQW5T7waOxLwgJG7fXcw8l7AQiFOjaZ7ISF5PrU526nunHRNcTMuzKihQHaF4E/h/KfOCDk3Mv8eqzbu2e28w==",
+          "requires": {
+            "@babel/runtime": "^7.10.1",
+            "classnames": "2.x",
+            "rc-motion": "^2.9.0",
+            "rc-util": "^5.20.1"
+          }
+        },
+        "rc-pagination": {
+          "version": "4.0.4",
+          "resolved": "https://registry.npmjs.org/rc-pagination/-/rc-pagination-4.0.4.tgz",
+          "integrity": "sha512-GGrLT4NgG6wgJpT/hHIpL9nELv27A1XbSZzECIuQBQTVSf4xGKxWr6I/jhpRPauYEWEbWVw22ObG6tJQqwJqWQ==",
+          "requires": {
+            "@babel/runtime": "^7.10.1",
+            "classnames": "^2.3.2",
+            "rc-util": "^5.38.0"
+          }
+        },
+        "rc-progress": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/rc-progress/-/rc-progress-4.0.0.tgz",
+          "integrity": "sha512-oofVMMafOCokIUIBnZLNcOZFsABaUw8PPrf1/y0ZBvKZNpOiu5h4AO9vv11Sw0p4Hb3D0yGWuEattcQGtNJ/aw==",
+          "requires": {
+            "@babel/runtime": "^7.10.1",
+            "classnames": "^2.2.6",
+            "rc-util": "^5.16.1"
+          }
+        },
+        "rc-rate": {
+          "version": "2.13.0",
+          "resolved": "https://registry.npmjs.org/rc-rate/-/rc-rate-2.13.0.tgz",
+          "integrity": "sha512-oxvx1Q5k5wD30sjN5tqAyWTvJfLNNJn7Oq3IeS4HxWfAiC4BOXMITNAsw7u/fzdtO4MS8Ki8uRLOzcnEuoQiAw==",
+          "requires": {
+            "@babel/runtime": "^7.10.1",
+            "classnames": "^2.2.5",
+            "rc-util": "^5.0.1"
+          }
+        },
+        "rc-resize-observer": {
+          "version": "1.4.0",
+          "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.4.0.tgz",
+          "integrity": "sha512-PnMVyRid9JLxFavTjeDXEXo65HCRqbmLBw9xX9gfC4BZiSzbLXKzW3jPz+J0P71pLbD5tBMTT+mkstV5gD0c9Q==",
+          "requires": {
+            "@babel/runtime": "^7.20.7",
+            "classnames": "^2.2.1",
+            "rc-util": "^5.38.0",
+            "resize-observer-polyfill": "^1.5.1"
+          }
+        },
+        "rc-steps": {
+          "version": "6.0.1",
+          "resolved": "https://registry.npmjs.org/rc-steps/-/rc-steps-6.0.1.tgz",
+          "integrity": "sha512-lKHL+Sny0SeHkQKKDJlAjV5oZ8DwCdS2hFhAkIjuQt1/pB81M0cA0ErVFdHq9+jmPmFw1vJB2F5NBzFXLJxV+g==",
+          "requires": {
+            "@babel/runtime": "^7.16.7",
+            "classnames": "^2.2.3",
+            "rc-util": "^5.16.1"
+          }
+        },
+        "rc-switch": {
+          "version": "4.1.0",
+          "resolved": "https://registry.npmjs.org/rc-switch/-/rc-switch-4.1.0.tgz",
+          "integrity": "sha512-TI8ufP2Az9oEbvyCeVE4+90PDSljGyuwix3fV58p7HV2o4wBnVToEyomJRVyTaZeqNPAp+vqeo4Wnj5u0ZZQBg==",
+          "requires": {
+            "@babel/runtime": "^7.21.0",
+            "classnames": "^2.2.1",
+            "rc-util": "^5.30.0"
+          }
+        },
+        "rc-tabs": {
+          "version": "15.1.0",
+          "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-15.1.0.tgz",
+          "integrity": "sha512-xTNz4Km1025emtkv1q7xKhjPwAtXr/wycuXVTAcFJg+DKhnPDDbnwbA9KRW0SawAVOGvVEj8ZrBlU0u0FGLrbg==",
+          "requires": {
+            "@babel/runtime": "^7.11.2",
+            "classnames": "2.x",
+            "rc-dropdown": "~4.2.0",
+            "rc-menu": "~9.14.0",
+            "rc-motion": "^2.6.2",
+            "rc-resize-observer": "^1.0.0",
+            "rc-util": "^5.34.1"
+          }
+        },
+        "rc-textarea": {
+          "version": "1.7.0",
+          "resolved": "https://registry.npmjs.org/rc-textarea/-/rc-textarea-1.7.0.tgz",
+          "integrity": "sha512-UxizYJkWkmxP3zofXgc487QiGyDmhhheDLLjIWbFtDmiru1ls30KpO8odDaPyqNUIy9ugj5djxTEuezIn6t3Jg==",
+          "requires": {
+            "@babel/runtime": "^7.10.1",
+            "classnames": "^2.2.1",
+            "rc-input": "~1.5.0",
+            "rc-resize-observer": "^1.0.0",
+            "rc-util": "^5.27.0"
+          }
+        },
+        "rc-upload": {
+          "version": "4.5.2",
+          "resolved": "https://registry.npmjs.org/rc-upload/-/rc-upload-4.5.2.tgz",
+          "integrity": "sha512-QO3ne77DwnAPKFn0bA5qJM81QBjQi0e0NHdkvpFyY73Bea2NfITiotqJqVjHgeYPOJu5lLVR32TNGP084aSoXA==",
+          "requires": {
+            "@babel/runtime": "^7.18.3",
+            "classnames": "^2.2.5",
+            "rc-util": "^5.2.0"
+          }
+        },
+        "scroll-into-view-if-needed": {
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/scroll-into-view-if-needed/-/scroll-into-view-if-needed-3.1.0.tgz",
+          "integrity": "sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==",
+          "requires": {
+            "compute-scroll-into-view": "^3.0.2"
+          }
+        }
+      }
+    },
     "anymatch": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
@@ -94354,9 +95518,9 @@
       }
     },
     "classnames": {
-      "version": "2.3.2",
-      "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz",
-      "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw=="
+      "version": "2.5.1",
+      "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz",
+      "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow=="
     },
     "clean-css": {
       "version": "5.3.3",
@@ -95286,9 +96450,9 @@
       "dev": true
     },
     "copy-to-clipboard": {
-      "version": "3.3.1",
-      "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz",
-      "integrity": "sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw==",
+      "version": "3.3.3",
+      "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz",
+      "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==",
       "requires": {
         "toggle-selection": "^1.0.6"
       }
@@ -97257,9 +98421,9 @@
       "dev": true
     },
     "dayjs": {
-      "version": "1.10.7",
-      "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.10.7.tgz",
-      "integrity": "sha512-P6twpd70BcPK34K26uJ1KT3wlhpuOAPoMwJzpsIWUxHZ7wpmbdZL/hQqBDfz7hGurYSa5PhzdhDHtt319hL3ig=="
+      "version": "1.11.11",
+      "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.11.tgz",
+      "integrity": "sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg=="
     },
     "deasync": {
       "version": "0.1.29",
@@ -116543,6 +117707,12 @@
       "integrity": "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==",
       "dev": true
     },
+    "qrcode.react": {
+      "version": "3.1.0",
+      "resolved": "https://registry.npmjs.org/qrcode.react/-/qrcode.react-3.1.0.tgz",
+      "integrity": "sha512-oyF+Urr3oAMUG/OiOuONL3HXM+53wvuH3mtIWQrYmsXoAq0DkvZp2RYUWFSMFtbdOpuS++9v+WAkzNVkMlNW6Q==",
+      "requires": {}
+    },
     "qs": {
       "version": "6.5.3",
       "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz",
@@ -116756,6 +117926,30 @@
         "shallowequal": "^1.1.0"
       }
     },
+    "rc-dialog": {
+      "version": "9.4.0",
+      "resolved": "https://registry.npmjs.org/rc-dialog/-/rc-dialog-9.4.0.tgz",
+      "integrity": "sha512-AScCexaLACvf8KZRqCPz12BJ8olszXOS4lKlkMyzDQHS1m0zj1KZMYgmMCh39ee0Dcv8kyrj8mTqxuLyhH+QuQ==",
+      "requires": {
+        "@babel/runtime": "^7.10.1",
+        "@rc-component/portal": "^1.0.0-8",
+        "classnames": "^2.2.6",
+        "rc-motion": "^2.3.0",
+        "rc-util": "^5.21.0"
+      }
+    },
+    "rc-drawer": {
+      "version": "7.2.0",
+      "resolved": "https://registry.npmjs.org/rc-drawer/-/rc-drawer-7.2.0.tgz",
+      "integrity": "sha512-9lOQ7kBekEJRdEpScHvtmEtXnAsy+NGDXiRWc2ZVC7QXAazNVbeT4EraQKYwCME8BJLa8Bxqxvs5swwyOepRwg==",
+      "requires": {
+        "@babel/runtime": "^7.23.9",
+        "@rc-component/portal": "^1.1.1",
+        "classnames": "^2.2.6",
+        "rc-motion": "^2.6.1",
+        "rc-util": "^5.38.1"
+      }
+    },
     "rc-dropdown": {
       "version": "3.2.0",
       "resolved": "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-3.2.0.tgz",
@@ -116776,6 +117970,29 @@
         "rc-util": "^5.0.0"
       }
     },
+    "rc-image": {
+      "version": "7.8.0",
+      "resolved": "https://registry.npmjs.org/rc-image/-/rc-image-7.8.0.tgz",
+      "integrity": "sha512-f5lgtAvRaL+HW9to4Lt06419GJtMLCGbp9RA++nJaDEwZvsMNkKa4QtG5+kDYTVKQf6pjaakJOIPB98W/khQFw==",
+      "requires": {
+        "@babel/runtime": "^7.11.2",
+        "@rc-component/portal": "^1.0.2",
+        "classnames": "^2.2.6",
+        "rc-dialog": "~9.4.0",
+        "rc-motion": "^2.6.2",
+        "rc-util": "^5.34.1"
+      }
+    },
+    "rc-input": {
+      "version": "1.5.1",
+      "resolved": "https://registry.npmjs.org/rc-input/-/rc-input-1.5.1.tgz",
+      "integrity": "sha512-+nOzQJDeIfIpNP/SgY45LXSKbuMlp4Yap2y8c+ZpU7XbLmNzUd6+d5/S75sA/52jsVE6S/AkhkkDEAOjIu7i6g==",
+      "requires": {
+        "@babel/runtime": "^7.11.1",
+        "classnames": "^2.2.1",
+        "rc-util": "^5.18.1"
+      }
+    },
     "rc-input-number": {
       "version": "6.1.2",
       "resolved": "https://registry.npmjs.org/rc-input-number/-/rc-input-number-6.1.2.tgz",
@@ -116816,13 +118033,13 @@
       }
     },
     "rc-motion": {
-      "version": "2.4.1",
-      "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-2.4.1.tgz",
-      "integrity": "sha512-TWLvymfMu8SngPx5MDH8dQ0D2RYbluNTfam4hY/dNNx9RQ3WtGuZ/GXHi2ymLMzH+UNd6EEFYkOuR5JTTtm8Xg==",
+      "version": "2.9.1",
+      "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-2.9.1.tgz",
+      "integrity": "sha512-QD4bUqByjVQs7PhUT1d4bNxvtTcK9ETwtg7psbDfo6TmYalH/1hhjj4r2hbhW7g5OOEqYHhfwfj4noIvuOVRtQ==",
       "requires": {
         "@babel/runtime": "^7.11.1",
         "classnames": "^2.2.1",
-        "rc-util": "^5.2.1"
+        "rc-util": "^5.39.3"
       }
     },
     "rc-notification": {
@@ -116836,6 +118053,30 @@
         "rc-util": "^5.0.1"
       }
     },
+    "rc-overflow": {
+      "version": "1.3.2",
+      "resolved": "https://registry.npmjs.org/rc-overflow/-/rc-overflow-1.3.2.tgz",
+      "integrity": "sha512-nsUm78jkYAoPygDAcGZeC2VwIg/IBGSodtOY3pMof4W3M9qRJgqaDYm03ZayHlde3I6ipliAxbN0RUcGf5KOzw==",
+      "requires": {
+        "@babel/runtime": "^7.11.1",
+        "classnames": "^2.2.1",
+        "rc-resize-observer": "^1.0.0",
+        "rc-util": "^5.37.0"
+      },
+      "dependencies": {
+        "rc-resize-observer": {
+          "version": "1.4.0",
+          "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.4.0.tgz",
+          "integrity": "sha512-PnMVyRid9JLxFavTjeDXEXo65HCRqbmLBw9xX9gfC4BZiSzbLXKzW3jPz+J0P71pLbD5tBMTT+mkstV5gD0c9Q==",
+          "requires": {
+            "@babel/runtime": "^7.20.7",
+            "classnames": "^2.2.1",
+            "rc-util": "^5.38.0",
+            "resize-observer-polyfill": "^1.5.1"
+          }
+        }
+      }
+    },
     "rc-pagination": {
       "version": "3.1.2",
       "resolved": "https://registry.npmjs.org/rc-pagination/-/rc-pagination-3.1.2.tgz",
@@ -116845,6 +118086,32 @@
         "classnames": "^2.2.1"
       }
     },
+    "rc-picker": {
+      "version": "4.5.0",
+      "resolved": "https://registry.npmjs.org/rc-picker/-/rc-picker-4.5.0.tgz",
+      "integrity": "sha512-suqz9bzuhBQlf7u+bZd1bJLPzhXpk12w6AjQ9BTPTiFwexVZgUKViG1KNLyfFvW6tCUZZK0HmCCX7JAyM+JnCg==",
+      "requires": {
+        "@babel/runtime": "^7.10.1",
+        "@rc-component/trigger": "^2.0.0",
+        "classnames": "^2.2.1",
+        "rc-overflow": "^1.3.2",
+        "rc-resize-observer": "^1.4.0",
+        "rc-util": "^5.38.1"
+      },
+      "dependencies": {
+        "rc-resize-observer": {
+          "version": "1.4.0",
+          "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.4.0.tgz",
+          "integrity": "sha512-PnMVyRid9JLxFavTjeDXEXo65HCRqbmLBw9xX9gfC4BZiSzbLXKzW3jPz+J0P71pLbD5tBMTT+mkstV5gD0c9Q==",
+          "requires": {
+            "@babel/runtime": "^7.20.7",
+            "classnames": "^2.2.1",
+            "rc-util": "^5.38.0",
+            "resize-observer-polyfill": "^1.5.1"
+          }
+        }
+      }
+    },
     "rc-progress": {
       "version": "3.1.1",
       "resolved": "https://registry.npmjs.org/rc-progress/-/rc-progress-3.1.1.tgz",
@@ -116875,6 +118142,41 @@
         "resize-observer-polyfill": "^1.5.1"
       }
     },
+    "rc-segmented": {
+      "version": "2.3.0",
+      "resolved": "https://registry.npmjs.org/rc-segmented/-/rc-segmented-2.3.0.tgz",
+      "integrity": "sha512-I3FtM5Smua/ESXutFfb8gJ8ZPcvFR+qUgeeGFQHBOvRiRKyAk4aBE5nfqrxXx+h8/vn60DQjOt6i4RNtrbOobg==",
+      "requires": {
+        "@babel/runtime": "^7.11.1",
+        "classnames": "^2.2.1",
+        "rc-motion": "^2.4.4",
+        "rc-util": "^5.17.0"
+      }
+    },
+    "rc-select": {
+      "version": "14.14.0",
+      "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-14.14.0.tgz",
+      "integrity": "sha512-Uo2wulrjoPPRLCPd7zlK4ZFVJxlTN//yp1xWP/U+TUOQCyXrT+Duvq/Si5OzVcmQyWAUSbsplc2OwNNhvbOeKQ==",
+      "requires": {
+        "@babel/runtime": "^7.10.1",
+        "@rc-component/trigger": "^2.1.1",
+        "classnames": "2.x",
+        "rc-motion": "^2.0.1",
+        "rc-overflow": "^1.3.1",
+        "rc-util": "^5.16.1",
+        "rc-virtual-list": "^3.5.2"
+      }
+    },
+    "rc-slider": {
+      "version": "10.6.2",
+      "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-10.6.2.tgz",
+      "integrity": "sha512-FjkoFjyvUQWcBo1F3RgSglky3ar0+qHLM41PlFVYB4Bj3RD8E/Mv7kqMouLFBU+3aFglMzzctAIWRwajEuueSw==",
+      "requires": {
+        "@babel/runtime": "^7.10.1",
+        "classnames": "^2.2.5",
+        "rc-util": "^5.36.0"
+      }
+    },
     "rc-steps": {
       "version": "4.1.3",
       "resolved": "https://registry.npmjs.org/rc-steps/-/rc-steps-4.1.3.tgz",
@@ -116895,6 +118197,32 @@
         "rc-util": "^5.0.1"
       }
     },
+    "rc-table": {
+      "version": "7.45.7",
+      "resolved": "https://registry.npmjs.org/rc-table/-/rc-table-7.45.7.tgz",
+      "integrity": "sha512-wi9LetBL1t1csxyGkMB2p3mCiMt+NDexMlPbXHvQFmBBAsMxrgNSAPwUci2zDLUq9m8QdWc1Nh8suvrpy9mXrg==",
+      "requires": {
+        "@babel/runtime": "^7.10.1",
+        "@rc-component/context": "^1.4.0",
+        "classnames": "^2.2.5",
+        "rc-resize-observer": "^1.1.0",
+        "rc-util": "^5.37.0",
+        "rc-virtual-list": "^3.14.2"
+      },
+      "dependencies": {
+        "rc-resize-observer": {
+          "version": "1.4.0",
+          "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.4.0.tgz",
+          "integrity": "sha512-PnMVyRid9JLxFavTjeDXEXo65HCRqbmLBw9xX9gfC4BZiSzbLXKzW3jPz+J0P71pLbD5tBMTT+mkstV5gD0c9Q==",
+          "requires": {
+            "@babel/runtime": "^7.20.7",
+            "classnames": "^2.2.1",
+            "rc-util": "^5.38.0",
+            "resize-observer-polyfill": "^1.5.1"
+          }
+        }
+      }
+    },
     "rc-tabs": {
       "version": "11.7.2",
       "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-11.7.2.tgz",
@@ -116919,6 +118247,40 @@
         "rc-resize-observer": "^0.2.3"
       }
     },
+    "rc-tooltip": {
+      "version": "6.2.0",
+      "resolved": "https://registry.npmjs.org/rc-tooltip/-/rc-tooltip-6.2.0.tgz",
+      "integrity": "sha512-iS/3iOAvtDh9GIx1ulY7EFUXUtktFccNLsARo3NPgLf0QW9oT0w3dA9cYWlhqAKmD+uriEwdWz1kH0Qs4zk2Aw==",
+      "requires": {
+        "@babel/runtime": "^7.11.2",
+        "@rc-component/trigger": "^2.0.0",
+        "classnames": "^2.3.1"
+      }
+    },
+    "rc-tree": {
+      "version": "5.8.7",
+      "resolved": "https://registry.npmjs.org/rc-tree/-/rc-tree-5.8.7.tgz",
+      "integrity": "sha512-cpsIQZ4nNYwpj6cqPRt52e/69URuNdgQF9wZ10InmEf8W3+i0A41OVmZWwHuX9gegQSqj+DPmaDkZFKQZ+ZV1w==",
+      "requires": {
+        "@babel/runtime": "^7.10.1",
+        "classnames": "2.x",
+        "rc-motion": "^2.0.1",
+        "rc-util": "^5.16.1",
+        "rc-virtual-list": "^3.5.1"
+      }
+    },
+    "rc-tree-select": {
+      "version": "5.21.0",
+      "resolved": "https://registry.npmjs.org/rc-tree-select/-/rc-tree-select-5.21.0.tgz",
+      "integrity": "sha512-w+9qEu6zh0G3wt9N/hzWNSnqYH1i9mH1Nqxo0caxLRRFXF5yZWYmpCDoDTMdQM1Y4z3Q5yj08qyrPH/d4AtumA==",
+      "requires": {
+        "@babel/runtime": "^7.10.1",
+        "classnames": "2.x",
+        "rc-select": "~14.14.0",
+        "rc-tree": "~5.8.1",
+        "rc-util": "^5.16.1"
+      }
+    },
     "rc-trigger": {
       "version": "5.2.0",
       "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-5.2.0.tgz",
@@ -116942,9 +118304,9 @@
       }
     },
     "rc-util": {
-      "version": "5.38.1",
-      "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.38.1.tgz",
-      "integrity": "sha512-e4ZMs7q9XqwTuhIK7zBIVFltUtMSjphuPPQXHoHlzRzNdOwUxDejo0Zls5HYaJfRKNURcsS/ceKVULlhjBrxng==",
+      "version": "5.41.0",
+      "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.41.0.tgz",
+      "integrity": "sha512-xtlCim9RpmVv0Ar2Nnc3WfJCxjQkTf3xHPWoFdjp1fSs2NirQwqiQrfqdU9HUe0kdfb168M/T8Dq0IaX50xeKg==",
       "requires": {
         "@babel/runtime": "^7.18.3",
         "react-is": "^18.2.0"
@@ -116957,6 +118319,30 @@
         }
       }
     },
+    "rc-virtual-list": {
+      "version": "3.14.2",
+      "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-3.14.2.tgz",
+      "integrity": "sha512-rA+W5xryhklJAcmswNyuKB3ZGeB855io+yOFQK5u/RXhjdshGblfKpNkQr4/9fBhZns0+uiL/0/s6IP2krtSmg==",
+      "requires": {
+        "@babel/runtime": "^7.20.0",
+        "classnames": "^2.2.6",
+        "rc-resize-observer": "^1.0.0",
+        "rc-util": "^5.36.0"
+      },
+      "dependencies": {
+        "rc-resize-observer": {
+          "version": "1.4.0",
+          "resolved": "https://registry.npmjs.org/rc-resize-observer/-/rc-resize-observer-1.4.0.tgz",
+          "integrity": "sha512-PnMVyRid9JLxFavTjeDXEXo65HCRqbmLBw9xX9gfC4BZiSzbLXKzW3jPz+J0P71pLbD5tBMTT+mkstV5gD0c9Q==",
+          "requires": {
+            "@babel/runtime": "^7.20.7",
+            "classnames": "^2.2.1",
+            "rc-util": "^5.38.0",
+            "resize-observer-polyfill": "^1.5.1"
+          }
+        }
+      }
+    },
     "re-resizable": {
       "version": "6.9.11",
       "resolved": "https://registry.npmjs.org/re-resizable/-/re-resizable-6.9.11.tgz",
@@ -121083,6 +122469,11 @@
       "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==",
       "dev": true
     },
+    "throttle-debounce": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-5.0.0.tgz",
+      "integrity": "sha512-2iQTSgkkc1Zyk0MeVrt/3BvuOXYPl/R8Z0U2xxo9rjwNciaHDG3R+Lm6dh4EeUci49DanvBnuqI6jshoQQRGEg=="
+    },
     "throttleit": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz",
diff --git a/superset-frontend/package.json b/superset-frontend/package.json
index ef03f41f00..76f0b35e6a 100644
--- a/superset-frontend/package.json
+++ b/superset-frontend/package.json
@@ -122,6 +122,7 @@
     "abortcontroller-polyfill": "^1.1.9",
     "ace-builds": "^1.4.14",
     "antd": "4.10.3",
+    "antd-v5": "npm:antd@^5.18.0",
     "babel-plugin-typescript-to-proptypes": "^2.0.0",
     "bootstrap": "^3.4.1",
     "brace": "^0.11.1",
diff --git a/superset-frontend/src/components/Badge/index.tsx b/superset-frontend/src/components/Badge/index.tsx
index 01c03f3fcf..731fb5db83 100644
--- a/superset-frontend/src/components/Badge/index.tsx
+++ b/superset-frontend/src/components/Badge/index.tsx
@@ -18,8 +18,8 @@
  */
 import React from 'react';
 import { styled } from '@superset-ui/core';
-import { Badge as AntdBadge } from 'antd';
-import { BadgeProps as AntdBadgeProps } from 'antd/lib/badge';
+import { Badge as AntdBadge } from 'antd-v5';
+import { BadgeProps as AntdBadgeProps } from 'antd-v5/lib/badge';
 
 export interface BadgeProps extends AntdBadgeProps {
   textColor?: string;
@@ -29,7 +29,16 @@ const Badge = styled(
   (
     // eslint-disable-next-line @typescript-eslint/no-unused-vars
     { textColor, color, text, ...props }: BadgeProps,
-  ) => <AntdBadge text={text} color={text ? color : undefined} {...props} />,
+  ) => (
+    <AntdBadge
+      text={text}
+      color={text ? color : undefined}
+      classNames={{
+        root: 'superset-badge',
+      }}
+      {...props}
+    />
+  ),
 )`
   & > sup {
     padding: 0 ${({ theme }) => theme.gridUnit * 2}px;


(superset) 03/03: Upgrade Badge to Antd 5

Posted by di...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

diegopucci pushed a commit to branch geido/feat/antdesign-5
in repository https://gitbox.apache.org/repos/asf/superset.git

commit 91582f3fbac63017895fe61f64223f75ef7c40ac
Author: Diego Pucci <di...@gmail.com>
AuthorDate: Sun Jun 9 19:09:43 2024 +0200

    Upgrade Badge to Antd 5
---
 .../src/components/Badge/Badge.stories.tsx         |  8 ---
 .../src/components/Badge/Badge.test.tsx            |  9 ----
 superset-frontend/src/components/Badge/index.tsx   | 20 ++++----
 .../dashboard/components/FiltersBadge/index.tsx    |  5 +-
 .../src/views/RootContextProviders.tsx             | 58 ++++++++++++++--------
 5 files changed, 49 insertions(+), 51 deletions(-)

diff --git a/superset-frontend/src/components/Badge/Badge.stories.tsx b/superset-frontend/src/components/Badge/Badge.stories.tsx
index aa7f6b86af..201731f213 100644
--- a/superset-frontend/src/components/Badge/Badge.stories.tsx
+++ b/superset-frontend/src/components/Badge/Badge.stories.tsx
@@ -64,7 +64,6 @@ InteractiveBadge.args = {
   count: null,
   color: null,
   text: 'Text',
-  textColor: null,
   status: 'success',
   size: 'default',
 };
@@ -88,12 +87,6 @@ InteractiveBadge.argTypes = {
       options: [undefined, ...COLORS.options],
     },
   },
-  textColor: {
-    control: {
-      type: 'select',
-      options: [undefined, ...COLORS.options],
-    },
-  },
   count: {
     control: {
       type: 'select',
@@ -110,7 +103,6 @@ export const BadgeGallery = () => (
         {COLORS.options.map(color => (
           <Badge
             count={9}
-            textColor={color}
             size={size}
             key={`${color}_${size}`}
             style={{ marginRight: '15px' }}
diff --git a/superset-frontend/src/components/Badge/Badge.test.tsx b/superset-frontend/src/components/Badge/Badge.test.tsx
index 084dceb342..cbf9bcf80e 100644
--- a/superset-frontend/src/components/Badge/Badge.test.tsx
+++ b/superset-frontend/src/components/Badge/Badge.test.tsx
@@ -22,7 +22,6 @@ import Badge from '.';
 const mockedProps = {
   count: 9,
   text: 'Text',
-  textColor: 'orange',
 };
 
 test('should render', () => {
@@ -39,11 +38,3 @@ test('should render the text', () => {
   render(<Badge {...mockedProps} />);
   expect(screen.getByText('Text')).toBeInTheDocument();
 });
-
-test('should render with the chosen textColor', () => {
-  render(<Badge {...mockedProps} />);
-  const badge = screen.getAllByText('9')[0];
-  expect(badge).toHaveStyle(`
-    color: 'orange';
-  `);
-});
diff --git a/superset-frontend/src/components/Badge/index.tsx b/superset-frontend/src/components/Badge/index.tsx
index 9138529879..6ae0bf4b66 100644
--- a/superset-frontend/src/components/Badge/index.tsx
+++ b/superset-frontend/src/components/Badge/index.tsx
@@ -32,19 +32,21 @@ const Badge = styled(
     <AntdBadge
       text={text}
       color={text ? color : undefined}
-      classNames={{
-        root: 'superset-badge',
-      }}
+      status={props.status || 'default'}
       {...props}
     />
   ),
 )`
-  & > sup {
-    padding: 0 ${({ theme }) => theme.gridUnit * 2}px;
-    background: ${({ theme, color }) => color || theme.colors.primary.base};
-    color: ${({ theme, textColor }) =>
-      textColor || theme.colors.grayscale.light5};
-  }
+  ${({ theme, color, count }) => `
+    & > sup,
+    & > sup.ant-badge-count {
+      ${
+        count !== undefined
+          ? `background: ${color || theme.colors.primary.base};`
+          : ''
+      }
+    }
+  `}
 `;
 
 export default Badge;
diff --git a/superset-frontend/src/dashboard/components/FiltersBadge/index.tsx b/superset-frontend/src/dashboard/components/FiltersBadge/index.tsx
index dfea5cd508..6444d12d41 100644
--- a/superset-frontend/src/dashboard/components/FiltersBadge/index.tsx
+++ b/superset-frontend/src/dashboard/components/FiltersBadge/index.tsx
@@ -84,16 +84,15 @@ const StyledFilterCount = styled.div`
 
 const StyledBadge = styled(Badge)`
   ${({ theme }) => `
-    vertical-align: middle;
     margin-left: ${theme.gridUnit * 2}px;
-    &>sup {
-      padding: 0 ${theme.gridUnit}px;
+    &>sup.ant-badge-count {
       min-width: ${theme.gridUnit * 4}px;
       height: ${theme.gridUnit * 4}px;
       line-height: 1.5;
       font-weight: ${theme.typography.weights.medium};
       font-size: ${theme.typography.sizes.s - 1}px;
       box-shadow: none;
+      padding: 0 ${theme.gridUnit}px;
     }
   `}
 `;
diff --git a/superset-frontend/src/views/RootContextProviders.tsx b/superset-frontend/src/views/RootContextProviders.tsx
index 12bdd7d86f..83a439ebb1 100644
--- a/superset-frontend/src/views/RootContextProviders.tsx
+++ b/superset-frontend/src/views/RootContextProviders.tsx
@@ -25,6 +25,7 @@ import { QueryParamProvider } from 'use-query-params';
 import { DndProvider } from 'react-dnd';
 import { HTML5Backend } from 'react-dnd-html5-backend';
 import getBootstrapData from 'src/utils/getBootstrapData';
+import { ConfigProvider } from 'antd-v5';
 import { store } from './store';
 import FlashProvider from '../components/FlashProvider';
 import { theme } from '../preamble';
@@ -35,6 +36,17 @@ const { common } = getBootstrapData();
 
 const extensionsRegistry = getExtensionsRegistry();
 
+const antdTheme = {
+  components: {
+    Badge: {
+      colorBgContainer: theme.colors.grayscale.light5,
+      // colorError affects the color of the badge count too
+      // must override at the Badge component level
+      colorError: theme.colors.error.base,
+    },
+  },
+};
+
 export const RootContextProviders: FC = ({ children }) => {
   const RootContextProviderExtension = extensionsRegistry.get(
     'root.context.provider',
@@ -42,28 +54,30 @@ export const RootContextProviders: FC = ({ children }) => {
 
   return (
     <ThemeProvider theme={theme}>
-      <ReduxProvider store={store}>
-        <DndProvider backend={HTML5Backend}>
-          <FlashProvider messages={common.flash_messages}>
-            <EmbeddedUiConfigProvider>
-              <DynamicPluginProvider>
-                <QueryParamProvider
-                  ReactRouterRoute={Route}
-                  stringifyOptions={{ encode: false }}
-                >
-                  {RootContextProviderExtension ? (
-                    <RootContextProviderExtension>
-                      {children}
-                    </RootContextProviderExtension>
-                  ) : (
-                    children
-                  )}
-                </QueryParamProvider>
-              </DynamicPluginProvider>
-            </EmbeddedUiConfigProvider>
-          </FlashProvider>
-        </DndProvider>
-      </ReduxProvider>
+      <ConfigProvider theme={antdTheme}>
+        <ReduxProvider store={store}>
+          <DndProvider backend={HTML5Backend}>
+            <FlashProvider messages={common.flash_messages}>
+              <EmbeddedUiConfigProvider>
+                <DynamicPluginProvider>
+                  <QueryParamProvider
+                    ReactRouterRoute={Route}
+                    stringifyOptions={{ encode: false }}
+                  >
+                    {RootContextProviderExtension ? (
+                      <RootContextProviderExtension>
+                        {children}
+                      </RootContextProviderExtension>
+                    ) : (
+                      children
+                    )}
+                  </QueryParamProvider>
+                </DynamicPluginProvider>
+              </EmbeddedUiConfigProvider>
+            </FlashProvider>
+          </DndProvider>
+        </ReduxProvider>
+      </ConfigProvider>
     </ThemeProvider>
   );
 };