Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mthadley/eslint-plugin-sort-destructure-keys
ESLint plugin to check if keys should be sorted in an object pattern.
https://github.com/mthadley/eslint-plugin-sort-destructure-keys
destructuring eslint eslint-plugin lint sort
Last synced: 4 days ago
JSON representation
ESLint plugin to check if keys should be sorted in an object pattern.
- Host: GitHub
- URL: https://github.com/mthadley/eslint-plugin-sort-destructure-keys
- Owner: mthadley
- License: isc
- Created: 2018-05-07T05:28:44.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-07-22T13:50:42.000Z (5 months ago)
- Last Synced: 2024-12-14T21:02:27.761Z (11 days ago)
- Topics: destructuring, eslint, eslint-plugin, lint, sort
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/eslint-plugin-sort-destructure-keys
- Size: 1020 KB
- Stars: 95
- Watchers: 2
- Forks: 9
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 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