Skip to content

Commit a74b234

Browse files
chore: enforce eslint import/no-duplicates rule
This commit enforces the `import/no-duplicates` rule in ESLint with auto-fix enabled.
1 parent e77d1bc commit a74b234

File tree

14 files changed

+542
-294
lines changed

14 files changed

+542
-294
lines changed

eslint.config.mjs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import react from 'eslint-plugin-react';
22
import prettier from 'eslint-plugin-prettier';
33
import unusedImports from 'eslint-plugin-unused-imports';
4+
import importPlugin from 'eslint-plugin-import';
45
import cypress from 'eslint-plugin-cypress';
56
import globals from 'globals';
67
import babelParser from '@babel/eslint-parser';
@@ -33,6 +34,7 @@ export default [
3334
prettier,
3435
'unused-imports': unusedImports,
3536
cypress,
37+
import: importPlugin,
3638
},
3739

3840
languageOptions: {
@@ -76,7 +78,7 @@ export default [
7678
camelcase: 'off',
7779
'spaced-comment': 'error',
7880
'prettier/prettier': ['warn', { singleQuote: true }],
79-
'no-duplicate-imports': 'error',
81+
'import/no-duplicates': 'error', // This rule provides auto-fix capability
8082
'unused-imports/no-unused-imports': 'error',
8183
'unused-imports/no-unused-vars': ['warn'],
8284
'no-empty-pattern': ['error', { allowObjectPatternsAsParameters: true }],

package-lock.json

Lines changed: 195 additions & 13 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,16 +58,17 @@
5858
"eslint": "^9.17.0",
5959
"eslint-config-prettier": "^9.1.0",
6060
"eslint-plugin-cypress": "^4.2.0",
61+
"eslint-plugin-import": "^2.32.0",
6162
"eslint-plugin-prettier": "^5.2.1",
6263
"eslint-plugin-react": "^7.37.2",
6364
"eslint-plugin-unused-imports": "^4.1.4",
64-
"globals": "^15.13.0",
65-
"prettier": "^3.4.2",
6665
"glob": "^7.2.3",
66+
"globals": "^15.13.0",
6767
"identity-obj-proxy": "^3.0.0",
6868
"jest": "^29.7.0",
6969
"npm-run-all": "^4.1.5",
7070
"postcss": "^8.4.21",
71+
"prettier": "^3.4.2",
7172
"prop-types": "^15.8.1",
7273
"react-intl": "^6.6.2",
7374
"redux-mock-store": "^1.5.4",

src/PresentationalComponents/PackageHeader/PackageHeader.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import { Grid, GridItem, Stack, StackItem } from '@patternfly/react-core';
22
import propTypes from 'prop-types';
3-
import React from 'react';
4-
import { Fragment } from 'react';
3+
import React, { Fragment } from 'react';
54
import { truncateDescription } from '../../Utilities/Helpers';
65
import WithLoader, { WithLoaderVariants } from '../WithLoader/WithLoader';
76

src/PresentationalComponents/Snippets/AdvisorySeverityInfo.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
import { Icon, Split, SplitItem, Title } from '@patternfly/react-core';
1+
import { Icon, Split, SplitItem, Title, Flex, FlexItem } from '@patternfly/react-core';
22
import { SecurityIcon } from '@patternfly/react-icons';
33
import propTypes from 'prop-types';
44
import React from 'react';
5-
import { Flex, FlexItem } from '@patternfly/react-core';
65
import { intl } from '../../Utilities/IntlProvider';
76
import messages from '../../Messages';
87

src/PresentationalComponents/Snippets/EmptyStates.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,10 @@ import {
55
EmptyStateVariant,
66
Tooltip,
77
} from '@patternfly/react-core';
8-
import { SearchIcon } from '@patternfly/react-icons';
8+
import { SearchIcon, PlusCircleIcon } from '@patternfly/react-icons';
99
import React from 'react';
1010
import { intl } from '../../Utilities/IntlProvider';
1111
import messages from '../../Messages';
12-
import { PlusCircleIcon } from '@patternfly/react-icons';
1312
import PropTypes from 'prop-types';
1413

1514
export const EmptyAdvisoryList = () => (

src/SmartComponents/PatchSetDetail/PatchSetDetail.js

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ import {
1111
useDeepCompareEffect,
1212
useGetEntities,
1313
useRemoveFilter,
14+
ID_API_ENDPOINTS,
15+
useOnSelect,
1416
} from '../../Utilities/hooks';
1517
import {
1618
changePatchSetDetailsSystemsMetadata,
@@ -20,9 +22,19 @@ import {
2022
clearTemplateDetail,
2123
fetchPatchSetSystemsNoFiltersAction,
2224
fetchTemplateDetail,
25+
systemSelectAction,
2326
} from '../../store/Actions/Actions';
24-
import { Bullseye, Skeleton, Spinner, Content, Tooltip } from '@patternfly/react-core';
25-
import { Dropdown, DropdownItem, DropdownPosition, DropdownToggle } from '@patternfly/react-core';
27+
import {
28+
Bullseye,
29+
Skeleton,
30+
Spinner,
31+
Content,
32+
Tooltip,
33+
Dropdown,
34+
DropdownItem,
35+
DropdownPosition,
36+
DropdownToggle,
37+
} from '@patternfly/react-core';
2638
import DeleteSetModal from '../Modals/DeleteSetModal';
2739
import { deletePatchSet, fetchPatchSetSystems } from '../../Utilities/api';
2840
import { addNotification } from '@redhat-cloud-services/frontend-components-notifications/redux';
@@ -54,8 +66,6 @@ import {
5466
} from '../../store/Reducers/InventoryEntitiesReducer';
5567
import { SYSTEMS_LIST_COLUMNS } from '../Systems/SystemsListAssets';
5668
import { processDate } from '@redhat-cloud-services/frontend-components-utilities/helpers';
57-
import { ID_API_ENDPOINTS, useOnSelect } from '../../Utilities/hooks';
58-
import { systemSelectAction } from '../../store/Actions/Actions';
5969
import { useChrome } from '@redhat-cloud-services/frontend-components/useChrome';
6070

6171
const PatchSetDetail = () => {

0 commit comments

Comments
 (0)