Skip to content

mthadley/eslint-plugin-sort-destructure-keys

Repository files navigation

eslint-plugin-sort-destructure-keys

require object destructure key to be sorted

Installation

You'll first need to install ESLint:

$ npm i eslint --save-dev

Next, install eslint-plugin-sort-destructure-keys:

$ npm install eslint-plugin-sort-destructure-keys --save-dev

Note: If you installed ESLint globally (using the -g flag) then you must also install eslint-plugin-sort-destructure-keys globally.

Usage

Add sort-destructure-keys to the plugins section of your .eslintrc configuration file. You can omit the eslint-plugin- prefix:

{
  "plugins": ["sort-destructure-keys"]
}

Then configure the rule under the rules section.

{
  "rules": {
    "sort-destructure-keys/sort-destructure-keys": 2
  }
}

Rule Options

{
  "sort-destructure-keys/sort-destructure-keys": [2, { "caseSensitive": false }]
}

caseSensitive

When true the rule will enforce properties to be in case-sensitive order. Default is true.

Example of incorrect code for the {"caseSensitive": false} option:

let { B, a, c } = obj;

Example of correct code for the {"caseSensitive": false} option:

let { a, B, c } = obj;

Example of incorrect code for the {"caseSensitive": true} option:

let { a, B, c } = obj;

Example of correct code for the {"caseSensitive": true} option:

let { B, a, c } = obj;

Changelog

2.0.0

  • Drop support for ESLint versions older than 5. (#269)

1.6.0

  • Add compatibility for ESLint 9. (#267, by ptb)

1.5.0

  • Allow sorting properties with defaults when the default doesn't reference other properties (#215, by ianobermiller).

1.4.0

  • Add compatibility with eslint 8. (#123)

1.3.5

  • Add ^7.0.0 to eslint peer dependency. (#53, by dsernst)

1.3.4

  • Fixes TypeError issue with multiple property expressions. (#20)

1.3.3

  • Add 6.0.0 to eslint peer dependency. (#21, by @7rulnik)

1.3.2

  • Fix bug where computed properties were causing the rule to throw errors. (#15, thanks @TSMMark!)

1.3.1

1.3.0

  • Add support for --fix eslint cli flag

1.2.0

  • Add peer dependency support for eslint ^5.0.0

1.1.0