From 04bef970ef9f9f2bf8a09d6cf4575430610826e5 Mon Sep 17 00:00:00 2001 From: RJ <27843274+rjchow@users.noreply.github.com> Date: Wed, 29 Jun 2022 16:56:31 +0800 Subject: [PATCH] Dev: allow unused destructured variables in lint rules (#33548) Allow unused destructured variables in lint rules - there were exceptions to the rule being added everywhere and it seems to be a reasonable allowance --- packages/js/data/src/items/utils.ts | 4 ---- packages/js/data/src/orders/test/reducer.ts | 2 -- packages/js/data/src/orders/utils.ts | 3 --- packages/js/data/src/products/utils.ts | 4 ---- .../changelog/dev-allow-unused-destructured-vars | 4 ++++ packages/js/eslint-plugin/configs/recommended.js | 3 ++- 6 files changed, 6 insertions(+), 14 deletions(-) create mode 100644 packages/js/eslint-plugin/changelog/dev-allow-unused-destructured-vars diff --git a/packages/js/data/src/items/utils.ts b/packages/js/data/src/items/utils.ts index 2ac29d8647b..9ae50b9cce8 100644 --- a/packages/js/data/src/items/utils.ts +++ b/packages/js/data/src/items/utils.ts @@ -129,10 +129,6 @@ export function searchItemsByString< T extends ItemType >( * @return {string} Resource name for item totals. */ export function getTotalCountResourceName( itemType: string, query: Query ) { - // Disable eslint rule because we're using this spread to omit properties - // that don't affect item totals count results. - // eslint-disable-next-line no-unused-vars, camelcase - // eslint-disable-next-line @typescript-eslint/no-unused-vars const { _fields, page, per_page, ...totalsQuery } = query; return getResourceName( 'total-' + itemType, { ...totalsQuery } ); diff --git a/packages/js/data/src/orders/test/reducer.ts b/packages/js/data/src/orders/test/reducer.ts index 0506c33d982..3dd6652e53d 100644 --- a/packages/js/data/src/orders/test/reducer.ts +++ b/packages/js/data/src/orders/test/reducer.ts @@ -100,8 +100,6 @@ describe( 'orders reducer', () => { totalCount, } ); - const resourceName = getOrderResourceName( query ); - expect( state.data[ 1 ].total ).toEqual( initialState.data[ 1 ].total ); expect( state.data[ 2 ] ).toEqual( orders[ 1 ] ); } ); diff --git a/packages/js/data/src/orders/utils.ts b/packages/js/data/src/orders/utils.ts index b4a36c336af..d03ca76c761 100644 --- a/packages/js/data/src/orders/utils.ts +++ b/packages/js/data/src/orders/utils.ts @@ -28,9 +28,6 @@ export function getOrderResourceName( query: Partial< OrdersQuery > ) { export function getTotalOrderCountResourceName( query: Partial< OrdersQuery > ) { - // Disable eslint rule because we're using this spread to omit properties - // that don't affect item totals count results. - // eslint-disable-next-line no-unused-vars, camelcase const { _fields, page, per_page, ...totalsQuery } = query; return getOrderResourceName( totalsQuery ); diff --git a/packages/js/data/src/products/utils.ts b/packages/js/data/src/products/utils.ts index 7ac799d1a7a..3e4582f6aee 100644 --- a/packages/js/data/src/products/utils.ts +++ b/packages/js/data/src/products/utils.ts @@ -28,10 +28,6 @@ export function getProductResourceName( query: Partial< ProductQuery > ) { export function getTotalProductCountResourceName( query: Partial< ProductQuery > ) { - // Disable eslint rule because we're using this spread to omit properties - // that don't affect item totals count results. - // eslint-disable-next-line no-unused-vars, camelcase const { _fields, page, per_page, ...totalsQuery } = query; - return getProductResourceName( totalsQuery ); } diff --git a/packages/js/eslint-plugin/changelog/dev-allow-unused-destructured-vars b/packages/js/eslint-plugin/changelog/dev-allow-unused-destructured-vars new file mode 100644 index 00000000000..86c37216d62 --- /dev/null +++ b/packages/js/eslint-plugin/changelog/dev-allow-unused-destructured-vars @@ -0,0 +1,4 @@ +Significance: minor +Type: dev + +Allow unused destructured variables in lint rules #35548 diff --git a/packages/js/eslint-plugin/configs/recommended.js b/packages/js/eslint-plugin/configs/recommended.js index acadbb1a92f..c12e191a5b2 100644 --- a/packages/js/eslint-plugin/configs/recommended.js +++ b/packages/js/eslint-plugin/configs/recommended.js @@ -35,10 +35,11 @@ module.exports = { ], }, ], - 'no-unused-vars': [ + '@typescript-eslint/no-unused-vars': [ 'error', { varsIgnorePattern: 'createElement', + ignoreRestSiblings: true, }, ], 'react/react-in-jsx-scope': 'error',