You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by ru...@apache.org on 2022/08/31 20:39:24 UTC

[superset] branch tech-debt-metrics updated: Grouping now breaks down by message for higher specificity

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

rusackas pushed a commit to branch tech-debt-metrics
in repository https://gitbox.apache.org/repos/asf/superset.git


The following commit(s) were added to refs/heads/tech-debt-metrics by this push:
     new 0015387632 Grouping now breaks down by message for higher specificity
0015387632 is described below

commit 0015387632c0bfe7a518445ac48a94c2a84e8b44
Author: Evan Rusackas <ev...@preset.io>
AuthorDate: Wed Aug 31 14:39:11 2022 -0600

    Grouping now breaks down by message for higher specificity
---
 .../scripts/eslint-metrics-report.json             | 1314 +++++++++++++-------
 superset-frontend/scripts/eslint_metrics.js        |   24 +-
 superset-frontend/scripts/eslintrc_metrics.js      |    6 +-
 3 files changed, 888 insertions(+), 456 deletions(-)

diff --git a/superset-frontend/scripts/eslint-metrics-report.json b/superset-frontend/scripts/eslint-metrics-report.json
index 9d5ca8440f..a835e82749 100644
--- a/superset-frontend/scripts/eslint-metrics-report.json
+++ b/superset-frontend/scripts/eslint-metrics-report.json
@@ -1,9 +1,10 @@
 {
   "metrics": [
     {
-      "issue": "We prefer Emotion for styling rather than `className` or `style` props",
       "eslint rule": "react/forbid-component-props",
-      "count": 302,
+      "issue": "We prefer Emotion for styling rather than `className` or `style` props",
+      "message": "Prop `className` is forbidden on Components",
+      "count": 239,
       "occurrences": [
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/packages/superset-ui-chart-controls/src/components/ColumnOption.tsx",
@@ -89,12 +90,6 @@
           "column": 9,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/plugins/legacy-plugin-chart-histogram/src/Histogram.jsx",
-          "line": 92,
-          "column": 15,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/plugins/legacy-plugin-chart-paired-t-test/src/TTestTable.jsx",
           "line": 212,
@@ -131,24 +126,6 @@
           "column": 11,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/plugins/plugin-chart-pivot-table/src/PivotTableChart.tsx",
-          "line": 348,
-          "column": 43,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/plugins/plugin-chart-pivot-table/src/PivotTableChart.tsx",
-          "line": 349,
-          "column": 43,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/plugins/plugin-chart-table/src/DataTable/DataTable.tsx",
-          "line": 348,
-          "column": 11,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/plugins/preset-chart-xy/src/components/BoxPlot/BoxPlot.tsx",
           "line": 154,
@@ -197,30 +174,6 @@
           "column": 11,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/EstimateQueryCostButton/index.tsx",
-          "line": 99,
-          "column": 13,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/HighlightedSql/index.tsx",
-          "line": 67,
-          "column": 39,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/HighlightedSql/index.tsx",
-          "line": 77,
-          "column": 41,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/HighlightedSql/index.tsx",
-          "line": 83,
-          "column": 45,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/QueryStateLabel/index.tsx",
           "line": 30,
@@ -311,12 +264,6 @@
           "column": 11,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/ShowSQL/index.tsx",
-          "line": 50,
-          "column": 45,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/SouthPane/index.tsx",
           "line": 108,
@@ -341,30 +288,12 @@
           "column": 9,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/SqlEditor/index.jsx",
-          "line": 534,
-          "column": 44,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/SqlEditor/index.jsx",
-          "line": 535,
-          "column": 20,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/SqlEditor/index.jsx",
           "line": 634,
           "column": 22,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/TabbedSqlEditors/index.jsx",
-          "line": 329,
-          "column": 15,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/TabbedSqlEditors/index.jsx",
           "line": 331,
@@ -401,12 +330,6 @@
           "column": 11,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/TableElement/index.tsx",
-          "line": 232,
-          "column": 11,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/TableElement/index.tsx",
           "line": 239,
@@ -443,36 +366,12 @@
           "column": 9,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Alert/Alert.stories.tsx",
-          "line": 49,
-          "column": 11,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/AlteredSliceTag/index.jsx",
           "line": 170,
           "column": 9,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Badge/Badge.stories.tsx",
-          "line": 125,
-          "column": 13,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Badge/Badge.stories.tsx",
-          "line": 140,
-          "column": 9,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Button/Button.stories.tsx",
-          "line": 88,
-          "column": 13,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Button/index.tsx",
           "line": 166,
@@ -491,66 +390,6 @@
           "column": 9,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.stories.jsx",
-          "line": 39,
-          "column": 9,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.stories.jsx",
-          "line": 54,
-          "column": 61,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.test.tsx",
-          "line": 38,
-          "column": 19,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.test.tsx",
-          "line": 46,
-          "column": 19,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.test.tsx",
-          "line": 55,
-          "column": 19,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.test.tsx",
-          "line": 64,
-          "column": 17,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.test.tsx",
-          "line": 72,
-          "column": 55,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.tsx",
-          "line": 39,
-          "column": 7,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Collapse/Collapse.stories.tsx",
-          "line": 33,
-          "column": 7,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/CopyToClipboard/index.jsx",
-          "line": 94,
-          "column": 9,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/DatabaseSelector/index.tsx",
           "line": 110,
@@ -617,24 +456,12 @@
           "column": 37,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FacePile/index.tsx",
-          "line": 65,
-          "column": 15,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FaveStar/index.tsx",
           "line": 65,
           "column": 7,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FilterableTable/FilterableTable.tsx",
-          "line": 506,
-          "column": 23,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FilterableTable/FilterableTable.tsx",
           "line": 587,
@@ -653,42 +480,12 @@
           "column": 20,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FormRow/index.jsx",
-          "line": 55,
-          "column": 12,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FormRow/index.jsx",
-          "line": 56,
-          "column": 29,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FormRow/index.jsx",
-          "line": 66,
-          "column": 10,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FormRow/index.jsx",
-          "line": 67,
-          "column": 27,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/IconButton/index.tsx",
           "line": 110,
           "column": 13,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/IconTooltip/index.tsx",
-          "line": 62,
-          "column": 7,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/IconTooltip/index.tsx",
           "line": 63,
@@ -761,12 +558,6 @@
           "column": 23,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Menu/LanguagePicker.tsx",
-          "line": 75,
-          "column": 11,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Menu/LanguagePicker.tsx",
           "line": 77,
@@ -797,12 +588,6 @@
           "column": 12,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Menu/SubMenu.tsx",
-          "line": 199,
-          "column": 31,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/MessageToasts/Toast.tsx",
           "line": 95,
@@ -827,12 +612,6 @@
           "column": 13,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Popover/Popover.stories.tsx",
-          "line": 32,
-          "column": 7,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/PopoverDropdown/index.tsx",
           "line": 100,
@@ -851,12 +630,6 @@
           "column": 7,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Slider/Slider.stories.tsx",
-          "line": 28,
-          "column": 21,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/TableCollection/index.tsx",
           "line": 230,
@@ -869,18 +642,6 @@
           "column": 11,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Tooltip/Tooltip.stories.tsx",
-          "line": 48,
-          "column": 13,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/AddSliceCard.jsx",
-          "line": 118,
-          "column": 28,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/BuilderComponentPane.tsx",
           "line": 75,
@@ -905,12 +666,6 @@
           "column": 15,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/DashboardBuilder/DashboardBuilder.tsx",
-          "line": 358,
-          "column": 11,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/DashboardBuilder/DashboardBuilder.tsx",
           "line": 376,
@@ -967,39 +722,9 @@
         },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/SliceAdder.jsx",
-          "line": 217,
-          "column": 9,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/SliceAdder.jsx",
-          "line": 222,
-          "column": 13,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/SliceAdder.jsx",
-          "line": 246,
-          "column": 13,
-          "message": "Prop `className` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/SliceHeaderControls/index.tsx",
-          "line": 267,
-          "column": 11,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/SliceHeaderControls/index.tsx",
-          "line": 364,
-          "column": 13,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/dnd/AddSliceDragPreview.jsx",
-          "line": 70,
-          "column": 7,
-          "message": "Prop `style` is forbidden on Components"
+          "line": 246,
+          "column": 13,
+          "message": "Prop `className` is forbidden on Components"
         },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/gridComponents/Chart.jsx",
@@ -1007,12 +732,6 @@
           "column": 15,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/gridComponents/Chart.jsx",
-          "line": 398,
-          "column": 15,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/gridComponents/ChartHolder.jsx",
           "line": 336,
@@ -1085,12 +804,6 @@
           "column": 28,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterSets/FilterSetUnit.tsx",
-          "line": 103,
-          "column": 15,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/Header/index.tsx",
           "line": 124,
@@ -1253,12 +966,6 @@
           "column": 9,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/PropertiesModal/index.tsx",
-          "line": 244,
-          "column": 36,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/PropertiesModal/index.tsx",
           "line": 246,
@@ -1295,18 +1002,6 @@
           "column": 20,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/AnnotationLayerControl/AnnotationLayer.jsx",
-          "line": 656,
-          "column": 15,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/CheckboxControl.jsx",
-          "line": 46,
-          "column": 9,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/CollectionControl/index.jsx",
           "line": 120,
@@ -1391,12 +1086,6 @@
           "column": 11,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/FilterControl/AdhocFilterEditPopover/index.jsx",
-          "line": 194,
-          "column": 11,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/FilterControl/AdhocFilterEditPopover/index.jsx",
           "line": 199,
@@ -1433,12 +1122,6 @@
           "column": 11,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/MetricControl/AdhocMetricEditPopover/index.jsx",
-          "line": 364,
-          "column": 11,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/MetricControl/AdhocMetricEditPopover/index.jsx",
           "line": 464,
@@ -1457,18 +1140,6 @@
           "column": 18,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/TextAreaControl.jsx",
-          "line": 76,
-          "column": 11,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/TextAreaControl.jsx",
-          "line": 96,
-          "column": 9,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/TextAreaControl.jsx",
           "line": 120,
@@ -1481,12 +1152,6 @@
           "column": 13,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/ViewQueryModal.tsx",
-          "line": 116,
-          "column": 15,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/ViewportControl.jsx",
           "line": 112,
@@ -1541,12 +1206,6 @@
           "column": 11,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/profile/components/UserInfo.tsx",
-          "line": 46,
-          "column": 11,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/alert/AlertList.tsx",
           "line": 505,
@@ -1583,12 +1242,6 @@
           "column": 35,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/alert/components/AlertReportCronScheduler.tsx",
-          "line": 74,
-          "column": 19,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/annotation/AnnotationList.tsx",
           "line": 318,
@@ -1631,12 +1284,6 @@
           "column": 17,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/data/components/SyntaxHighlighterCopy/index.tsx",
-          "line": 91,
-          "column": 26,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/data/database/DatabaseList.tsx",
           "line": 321,
@@ -1661,18 +1308,6 @@
           "column": 7,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm/EncryptedField.tsx",
-          "line": 76,
-          "column": 13,
-          "message": "Prop `style` is forbidden on Components"
-        },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm/EncryptedField.tsx",
-          "line": 98,
-          "column": 13,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm/EncryptedField.tsx",
           "line": 145,
@@ -1757,12 +1392,6 @@
           "column": 15,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/data/query/QueryList.tsx",
-          "line": 302,
-          "column": 53,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/data/query/QueryList.tsx",
           "line": 413,
@@ -1793,12 +1422,6 @@
           "column": 24,
           "message": "Prop `className` is forbidden on Components"
         },
-        {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/welcome/SavedQueries.tsx",
-          "line": 331,
-          "column": 25,
-          "message": "Prop `style` is forbidden on Components"
-        },
         {
           "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/welcome/Welcome.tsx",
           "line": 136,
@@ -1820,8 +1443,135 @@
       ]
     },
     {
-      "issue": "We prefer function components to class-based components",
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/checkbox' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/packages/superset-ui-chart-controls/src/components/ControlForm/controls.tsx",
+          "line": 21,
+          "column": 1,
+          "message": "'antd/lib/checkbox' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/tooltip' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 6,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/packages/superset-ui-chart-controls/src/components/InfoTooltipWithTrigger.tsx",
+          "line": 21,
+          "column": 1,
+          "message": "'antd/lib/tooltip' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/packages/superset-ui-chart-controls/src/components/Tooltip.tsx",
+          "line": 23,
+          "column": 1,
+          "message": "'antd/lib/tooltip' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/packages/superset-ui-chart-controls/src/components/Tooltip.tsx",
+          "line": 26,
+          "column": 1,
+          "message": "'antd/lib/tooltip' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/ListView/ActionsBar.tsx",
+          "line": 23,
+          "column": 1,
+          "message": "'antd/lib/tooltip' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Tooltip/Tooltip.stories.tsx",
+          "line": 21,
+          "column": 1,
+          "message": "'antd/lib/tooltip' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Tooltip/index.tsx",
+          "line": 22,
+          "column": 1,
+          "message": "'antd/lib/tooltip' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/select' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 10,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/packages/superset-ui-chart-controls/src/components/Select.tsx",
+          "line": 20,
+          "column": 1,
+          "message": "'antd/lib/select' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/common/components/index.tsx",
+          "line": 67,
+          "column": 1,
+          "message": "'antd/lib/select' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/common/components/index.tsx",
+          "line": 70,
+          "column": 1,
+          "message": "'antd/lib/select' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Select/NativeSelect.tsx",
+          "line": 21,
+          "column": 1,
+          "message": "'antd/lib/select' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Select/NativeSelect.tsx",
+          "line": 23,
+          "column": 1,
+          "message": "'antd/lib/select' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Select/Select.tsx",
+          "line": 32,
+          "column": 1,
+          "message": "'antd/lib/select' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Select/styles.tsx",
+          "line": 32,
+          "column": 1,
+          "message": "'antd/lib/select' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/PropertiesModal/index.tsx",
+          "line": 24,
+          "column": 1,
+          "message": "'antd/lib/select' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/SaveModal.tsx",
+          "line": 30,
+          "column": 1,
+          "message": "'antd/lib/select' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/SelectAsyncControl/index.tsx",
+          "line": 24,
+          "column": 1,
+          "message": "'antd/lib/select' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
       "eslint rule": "react-prefer-function-component/react-prefer-function-component",
+      "issue": "We prefer function components to class-based components",
+      "message": "Class component should be written as a function",
       "count": 128,
       "occurrences": [
         {
@@ -2595,8 +2345,9 @@
       ]
     },
     {
-      "issue": "We prefer Typescript - all JSX files should be converted to TSX",
       "eslint rule": "react/jsx-filename-extension",
+      "issue": "We prefer Typescript - all JSX files should be converted to TSX",
+      "message": "JSX not allowed in files with extension '.jsx'",
       "count": 246,
       "occurrences": [
         {
@@ -4078,111 +3829,788 @@
       ]
     },
     {
-      "issue": "Please reduce/remove reliance on LESS files - move approprate styles to Emotion and kill off LESS files/imports",
-      "eslint rule": "no-restricted-imports",
-      "count": 17,
+      "eslint rule": "react/forbid-component-props",
+      "issue": "We prefer Emotion for styling rather than `className` or `style` props",
+      "message": "Prop `style` is forbidden on Components",
+      "count": 63,
       "occurrences": [
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/CRUD/CollectionTable.tsx",
-          "line": 26,
-          "column": 1,
-          "message": "'./crud.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "file": "/Users/evan/GitHub/superset/superset-frontend/plugins/legacy-plugin-chart-histogram/src/Histogram.jsx",
+          "line": 92,
+          "column": 15,
+          "message": "Prop `style` is forbidden on Components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/CRUD/Field.tsx",
-          "line": 23,
-          "column": 1,
-          "message": "'./crud.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "file": "/Users/evan/GitHub/superset/superset-frontend/plugins/plugin-chart-pivot-table/src/PivotTableChart.tsx",
+          "line": 348,
+          "column": 43,
+          "message": "Prop `style` is forbidden on Components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/App.jsx",
-          "line": 41,
-          "column": 1,
-          "message": "'./main.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "file": "/Users/evan/GitHub/superset/superset-frontend/plugins/plugin-chart-pivot-table/src/PivotTableChart.tsx",
+          "line": 349,
+          "column": 43,
+          "message": "Prop `style` is forbidden on Components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/App.jsx",
-          "line": 42,
-          "column": 1,
-          "message": "'../assets/stylesheets/reactable-pagination.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "file": "/Users/evan/GitHub/superset/superset-frontend/plugins/plugin-chart-table/src/DataTable/DataTable.tsx",
+          "line": 348,
+          "column": 11,
+          "message": "Prop `style` is forbidden on Components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/App.jsx",
-          "line": 43,
-          "column": 1,
-          "message": "'../components/FilterableTable/FilterableTableStyles.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/EstimateQueryCostButton/index.tsx",
+          "line": 99,
+          "column": 13,
+          "message": "Prop `style` is forbidden on Components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/ScheduleQueryButton/index.tsx",
-          "line": 26,
-          "column": 1,
-          "message": "'./ScheduleQueryButton.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/HighlightedSql/index.tsx",
+          "line": 67,
+          "column": 39,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/HighlightedSql/index.tsx",
+          "line": 77,
+          "column": 41,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/HighlightedSql/index.tsx",
+          "line": 83,
+          "column": 45,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/ShowSQL/index.tsx",
+          "line": 50,
+          "column": 45,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/SqlEditor/index.jsx",
+          "line": 534,
+          "column": 44,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/SqlEditor/index.jsx",
+          "line": 535,
+          "column": 20,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/TabbedSqlEditors/index.jsx",
+          "line": 329,
+          "column": 15,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/TableElement/index.tsx",
+          "line": 232,
+          "column": 11,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Alert/Alert.stories.tsx",
+          "line": 49,
+          "column": 11,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Badge/Badge.stories.tsx",
+          "line": 125,
+          "column": 13,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Badge/Badge.stories.tsx",
+          "line": 140,
+          "column": 9,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Button/Button.stories.tsx",
+          "line": 88,
+          "column": 13,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.stories.jsx",
+          "line": 39,
+          "column": 9,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.stories.jsx",
+          "line": 54,
+          "column": 61,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.test.tsx",
+          "line": 38,
+          "column": 19,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.test.tsx",
+          "line": 46,
+          "column": 19,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.test.tsx",
+          "line": 55,
+          "column": 19,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.test.tsx",
+          "line": 64,
+          "column": 17,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.test.tsx",
+          "line": 72,
+          "column": 55,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Checkbox/Checkbox.tsx",
+          "line": 39,
+          "column": 7,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Collapse/Collapse.stories.tsx",
+          "line": 33,
+          "column": 7,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/CopyToClipboard/index.jsx",
+          "line": 94,
+          "column": 9,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FacePile/index.tsx",
+          "line": 65,
+          "column": 15,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FilterableTable/FilterableTable.tsx",
+          "line": 506,
+          "column": 23,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FormRow/index.jsx",
+          "line": 55,
+          "column": 12,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FormRow/index.jsx",
+          "line": 56,
+          "column": 29,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FormRow/index.jsx",
+          "line": 66,
+          "column": 10,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/FormRow/index.jsx",
+          "line": 67,
+          "column": 27,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/IconTooltip/index.tsx",
+          "line": 62,
+          "column": 7,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Menu/LanguagePicker.tsx",
+          "line": 75,
+          "column": 11,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Menu/SubMenu.tsx",
+          "line": 199,
+          "column": 31,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Popover/Popover.stories.tsx",
+          "line": 32,
+          "column": 7,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Slider/Slider.stories.tsx",
+          "line": 28,
+          "column": 21,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Tooltip/Tooltip.stories.tsx",
+          "line": 48,
+          "column": 13,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/AddSliceCard.jsx",
+          "line": 118,
+          "column": 28,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/DashboardBuilder/DashboardBuilder.tsx",
+          "line": 358,
+          "column": 11,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/SliceAdder.jsx",
+          "line": 217,
+          "column": 9,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/SliceAdder.jsx",
+          "line": 222,
+          "column": 13,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/SliceHeaderControls/index.tsx",
+          "line": 267,
+          "column": 11,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/SliceHeaderControls/index.tsx",
+          "line": 364,
+          "column": 13,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/dnd/AddSliceDragPreview.jsx",
+          "line": 70,
+          "column": 7,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/gridComponents/Chart.jsx",
+          "line": 398,
+          "column": 15,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/nativeFilters/FilterBar/FilterSets/FilterSetUnit.tsx",
+          "line": 103,
+          "column": 15,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/PropertiesModal/index.tsx",
+          "line": 244,
+          "column": 36,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/AnnotationLayerControl/AnnotationLayer.jsx",
+          "line": 656,
+          "column": 15,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/CheckboxControl.jsx",
+          "line": 46,
+          "column": 9,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/FilterControl/AdhocFilterEditPopover/index.jsx",
+          "line": 194,
+          "column": 11,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/MetricControl/AdhocMetricEditPopover/index.jsx",
+          "line": 364,
+          "column": 11,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/TextAreaControl.jsx",
+          "line": 76,
+          "column": 11,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/TextAreaControl.jsx",
+          "line": 96,
+          "column": 9,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/ViewQueryModal.tsx",
+          "line": 116,
+          "column": 15,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/profile/components/UserInfo.tsx",
+          "line": 46,
+          "column": 11,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/alert/components/AlertReportCronScheduler.tsx",
+          "line": 74,
+          "column": 19,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/data/components/SyntaxHighlighterCopy/index.tsx",
+          "line": 91,
+          "column": 26,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm/EncryptedField.tsx",
+          "line": 76,
+          "column": 13,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm/EncryptedField.tsx",
+          "line": 98,
+          "column": 13,
+          "message": "Prop `style` is forbidden on Components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/data/query/QueryList.tsx",
+          "line": 302,
+          "column": 53,
+          "message": "Prop `style` is forbidden on Components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/TableLoader/index.tsx",
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/welcome/SavedQueries.tsx",
+          "line": 331,
+          "column": 25,
+          "message": "Prop `style` is forbidden on Components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/radio' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 3,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/ResultSet/index.tsx",
           "line": 24,
           "column": 1,
-          "message": "'../../assets/stylesheets/reactable-pagination.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "message": "'antd/lib/radio' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/Dashboard.jsx",
-          "line": 42,
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/SaveDatasetModal/index.tsx",
+          "line": 27,
           "column": 1,
-          "message": "'../stylesheets/index.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "message": "'antd/lib/radio' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/App.jsx",
-          "line": 29,
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/common/components/index.tsx",
+          "line": 64,
+          "column": 1,
+          "message": "'antd/lib/radio' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/auto-complete' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/SqlLab/components/SaveDatasetModal/index.tsx",
+          "line": 21,
+          "column": 1,
+          "message": "'antd/lib/auto-complete' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/dropdown' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/common/components/index.tsx",
+          "line": 28,
+          "column": 1,
+          "message": "'antd/lib/dropdown' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/modal' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 2,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/common/components/index.tsx",
+          "line": 61,
           "column": 1,
-          "message": "'./main.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "message": "'antd/lib/modal' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/App.jsx",
-          "line": 30,
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/common/components/index.tsx",
+          "line": 62,
+          "column": 1,
+          "message": "'antd/lib/modal' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 15,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/common/components/index.tsx",
+          "line": 63,
           "column": 1,
-          "message": "'../assets/stylesheets/reactable-pagination.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/Control.tsx",
-          "line": 29,
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Form/Form.tsx",
+          "line": 20,
           "column": 1,
-          "message": "'./Control.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/profile/App.tsx",
-          "line": 29,
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Form/FormItem.tsx",
+          "line": 19,
           "column": 1,
-          "message": "'./main.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/showSavedQuery/index.jsx",
-          "line": 23,
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/CrossFilterScopingModal/CrossFilterScopingForm/index.tsx",
+          "line": 20,
           "column": 1,
-          "message": "'./index.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/theme.ts",
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/CrossFilterScopingModal/utils/index.ts",
           "line": 19,
           "column": 1,
-          "message": "'./assets/stylesheets/superset.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/theme.ts",
-          "line": 22,
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/ColumnSelect.tsx",
+          "line": 20,
           "column": 1,
-          "message": "'./assets/stylesheets/antd/index.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/visualizations/FilterBox/FilterBox.jsx",
-          "line": 46,
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/DefaultValue.tsx",
+          "line": 27,
           "column": 1,
-          "message": "'./FilterBox.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
         },
         {
-          "file": "/Users/evan/GitHub/superset/superset-frontend/src/visualizations/TimeTable/TimeTable.jsx",
-          "line": 33,
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx",
+          "line": 38,
+          "column": 1,
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/getControlItemsMap.tsx",
+          "line": 25,
+          "column": 1,
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/state.ts",
+          "line": 20,
+          "column": 1,
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/utils.ts",
+          "line": 20,
+          "column": 1,
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/utils.ts",
+          "line": 19,
+          "column": 1,
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/filters/components/GroupBy/GroupByFilterPlugin.tsx",
+          "line": 27,
+          "column": 1,
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/filters/components/TimeColumn/TimeColumnFilterPlugin.tsx",
+          "line": 28,
+          "column": 1,
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/filters/components/TimeGrain/TimeGrainFilterPlugin.tsx",
+          "line": 28,
+          "column": 1,
+          "message": "'antd/lib/form' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/tree' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/common/components/index.tsx",
+          "line": 65,
+          "column": 1,
+          "message": "'antd/lib/tree' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/alert' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 2,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/common/components/index.tsx",
+          "line": 66,
+          "column": 1,
+          "message": "'antd/lib/alert' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/common/components/index.tsx",
+          "line": 69,
+          "column": 1,
+          "message": "'antd/lib/alert' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/list' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 2,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/common/components/index.tsx",
+          "line": 68,
+          "column": 1,
+          "message": "'antd/lib/list' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/common/components/index.tsx",
+          "line": 71,
+          "column": 1,
+          "message": "'antd/lib/list' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/badge' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Badge/index.tsx",
+          "line": 22,
+          "column": 1,
+          "message": "'antd/lib/badge' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/card' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Card/index.tsx",
+          "line": 21,
+          "column": 1,
+          "message": "'antd/lib/card' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/collapse' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Collapse/index.tsx",
+          "line": 22,
+          "column": 1,
+          "message": "'antd/lib/collapse' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/date-picker' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/DatePicker/DatePicker.stories.tsx",
+          "line": 20,
+          "column": 1,
+          "message": "'antd/lib/date-picker' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/button' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/IconButton/index.tsx",
+          "line": 22,
+          "column": 1,
+          "message": "'antd/lib/button' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/upload/interface' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/ImportModal/index.tsx",
+          "line": 20,
+          "column": 1,
+          "message": "'antd/lib/upload/interface' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/popover' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 2,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Popover/Popover.stories.tsx",
+          "line": 20,
+          "column": 1,
+          "message": "'antd/lib/popover' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        },
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/explore/components/controls/ConditionalFormattingControl/types.ts",
+          "line": 21,
+          "column": 1,
+          "message": "'antd/lib/popover' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/progress/progress' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/ProgressBar/index.tsx",
+          "line": 22,
+          "column": 1,
+          "message": "'antd/lib/progress/progress' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/slider' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Slider/index.tsx",
+          "line": 20,
+          "column": 1,
+          "message": "'antd/lib/slider' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/switch' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Switch/index.tsx",
+          "line": 21,
+          "column": 1,
+          "message": "'antd/lib/switch' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/tabs' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/components/Tabs/Tabs.tsx",
+          "line": 21,
+          "column": 1,
+          "message": "'antd/lib/tabs' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
+        }
+      ]
+    },
+    {
+      "eslint rule": "no-restricted-imports",
+      "issue": "This rule catches several things that shouldn't be used anymore. LESS, antD, enzyme, etc. See individual occurrence messages for details",
+      "message": "'antd/lib/input' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components",
+      "count": 1,
+      "occurrences": [
+        {
+          "file": "/Users/evan/GitHub/superset/superset-frontend/src/views/CRUD/data/database/DatabaseModal/DatabaseConnectionForm/index.tsx",
+          "line": 21,
           "column": 1,
-          "message": "'./TimeTable.less' import is restricted from being used by a pattern. Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+          "message": "'antd/lib/input' import is restricted from being used by a pattern. Please do not use AntD directly, but instead import through src/common/components"
         }
       ]
     }
diff --git a/superset-frontend/scripts/eslint_metrics.js b/superset-frontend/scripts/eslint_metrics.js
index 5bbcab4107..280e4cfcda 100644
--- a/superset-frontend/scripts/eslint_metrics.js
+++ b/superset-frontend/scripts/eslint_metrics.js
@@ -1,8 +1,12 @@
 module.exports = results => {
   const byRuleId = results.reduce((map, current) => {
     current.messages.forEach(({ ruleId, line, column, message, ...stuff }) => {
-      if (!map[ruleId]) {
-        map[ruleId] = [];
+      if (!map[ruleId+message]) {
+        map[ruleId+message] = {
+          rule: ruleId,
+          message,
+          occurrences: [],
+        };
       }
 
       // const occurrence = `${current.filePath}:${line}:${column}:${message}`;
@@ -12,8 +16,7 @@ module.exports = results => {
         column,
         message,
       };
-
-      map[ruleId].push(occurrence);
+      map[ruleId+message].occurrences.push(occurrence);
     });
     return map;
   }, {});
@@ -34,15 +37,16 @@ module.exports = results => {
   };
 
   const metricsByRule = Object.entries(byRuleId)
-    .filter(([ruleId, occurrences]) => enforcedRules[ruleId] || false)
+    .filter(([key, value]) => enforcedRules[value.rule] || false)
     .map(
-      ([ruleId, occurrences]) => 
+      ([key, value]) => 
       {
         return {
-         "issue" : enforcedRules[ruleId].description,
-         "eslint rule": ruleId,
-         "count": occurrences.length,
-         occurrences,
+          "eslint rule": value.rule,
+          "issue" : enforcedRules[value.rule].description,
+          "message" : value.message,
+          "count": value.occurrences.length,
+          occurrences: value.occurrences,
         }
       }
     );
diff --git a/superset-frontend/scripts/eslintrc_metrics.js b/superset-frontend/scripts/eslintrc_metrics.js
index 0e979d9138..7e9ef42275 100644
--- a/superset-frontend/scripts/eslintrc_metrics.js
+++ b/superset-frontend/scripts/eslintrc_metrics.js
@@ -66,11 +66,11 @@ module.exports = {
       "warn", {
         "patterns": [
           {
-            "group": ["**/*.less"],
-            "message": "Please reduce/remove reliance on LESS files - move approprate styles to Emotion"
+            "group": ["**/*.less, **/*.css"],
+            "message": "Please reduce/remove reliance on LESS/CSS files - move approprate styles to Emotion"
           },
           {
-            "group": ["antd"],
+            "group": ["antd/**"],
             "message": "Please do not use AntD directly, but instead import through src/common/components"
           }
         ]