UNPKG

eslint-plugin-sort-destructure-keys

Version:
156 lines (96 loc) 3.69 kB
# eslint-plugin-sort-destructure-keys require object destructure key to be sorted ## Installation You'll first need to install [ESLint](http://eslint.org): ``` $ 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: ```json { "plugins": ["sort-destructure-keys"] } ``` Then configure the rule under the rules section. ```json { "rules": { "sort-destructure-keys/sort-destructure-keys": 2 } } ``` ## Rule Options ```json { "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: ```js let { B, a, c } = obj; ``` Example of **correct** code for the `{"caseSensitive": false}` option: ```js let { a, B, c } = obj; ``` Example of **incorrect** code for the `{"caseSensitive": true}` option: ```js let { a, B, c } = obj; ``` Example of **correct** code for the `{"caseSensitive": true}` option: ```js let { B, a, c } = obj; ``` ## Changelog ### `2.0.0` - Drop support for ESLint versions older than 5. ([#269]) [#269]: https://github.com/mthadley/eslint-plugin-sort-destructure-keys/pull/269 ### `1.6.0` - Add compatibility for ESLint 9. ([#267], by [ptb]) [#267]: https://github.com/mthadley/eslint-plugin-sort-destructure-keys/pull/267 [ptb]: https://github.com/ptb ### `1.5.0` - Allow sorting properties with defaults when the default doesn't reference other properties ([#215], by [ianobermiller]). [#215]: https://github.com/mthadley/eslint-plugin-sort-destructure-keys/pull/215 [ianobermiller]: https://github.com/ianobermiller ### `1.4.0` - Add compatibility with eslint 8. ([#123]) [#123]: https://github.com/mthadley/eslint-plugin-sort-destructure-keys/pull/123 ### `1.3.5` - Add `^7.0.0` to eslint peer dependency. ([#53], by [dsernst]) [#53]: https://github.com/mthadley/eslint-plugin-sort-destructure-keys/pull/53 [dsernst]: https://github.com/dsernst ### `1.3.4` - Fixes TypeError issue with multiple property expressions. ([#20]) [#20]: https://github.com/mthadley/eslint-plugin-sort-destructure-keys/issues/20 ### `1.3.3` - Add `6.0.0` to eslint peer dependency. ([#21], by [@7rulnik]) [#21]: https://github.com/mthadley/eslint-plugin-sort-destructure-keys/pull/21 [@7rulnik]: https://github.com/7rulnik ### `1.3.2` - Fix bug where computed properties were causing the rule to throw errors. ([#15], thanks [@TSMMark]!) [#15]: https://github.com/mthadley/eslint-plugin-sort-destructure-keys/issues/15 [@tsmmark]: https://github.com/TSMMark ### `1.3.1` - Fix bug with rest properties being sorted incorrectly. ([#11], [#12], thanks [@briandastous] and [@njdancer]!) [#11]: https://github.com/mthadley/eslint-plugin-sort-destructure-keys/issues/11 [@briandastous]: https://github.com/briandastous [#12]: https://github.com/mthadley/eslint-plugin-sort-destructure-keys/pull/12 [@njdancer]: https://github.com/njdancer ### `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` - Add `caseSensitive` option ([#1] by [@bsonntag]) [#1]: https://github.com/mthadley/eslint-plugin-sort-destructure-keys/pull/1 [@bsonntag]: https://github.com/bsonntag