Skip to content

Commit

Permalink
replace eslint-plugin-sort-keys-fix to eslint-plugin-sort-keys-fix-cu…
Browse files Browse the repository at this point in the history
…stom
  • Loading branch information
ryota-murakami committed Sep 15, 2023
1 parent 2c52c43 commit 24cad43
Show file tree
Hide file tree
Showing 5 changed files with 46 additions and 63 deletions.
34 changes: 19 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->

**Table of Contents** _generated with [DocToc](https://github.com/thlorenz/doctoc)_

- [eslint-config-ts-prefixer 🌈](#eslint-config-ts-prefixer-)
- [This config is:](#this-config-is)
- [Installation](#installation)
Expand Down Expand Up @@ -50,25 +48,25 @@ If you want to manage `.eslintrc.js` file on your codebase, please choose [Bareb
- **npm**

```bash
npm install --save-dev eslint-config-ts-prefixer eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-fix prettier
npm install --save-dev eslint-config-ts-prefixer eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-custom-order prettier
```

- **yarn**

```bash
yarn add -D eslint-config-ts-prefixer eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-fix prettier
yarn add -D eslint-config-ts-prefixer eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-custom-order prettier
```

- **pnpm**

```bash
pnpm add -D eslint-config-ts-prefixer eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-fix prettier
pnpm add -D eslint-config-ts-prefixer eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-custom-order prettier
```

- **bun**

```
bun add -d eslint-config-ts-prefixer eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-fix prettier
```bash
bun add -d eslint-config-ts-prefixer eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-custom-order prettier
```

---
Expand Down Expand Up @@ -110,19 +108,19 @@ If you configure Prettier other way, `touch .prettierrc` and move your config wi

## OK, you are ready to use!

I generally run from npm script like this.
If you'll copy & paste this, ckeck target directly and target file extension are fitting your project.
You've got this commands in `package.json` by `npx eslint-config-ts-prefixer config`.
just run `npm run lint:fix` to apply this package's configurations.🎉

```json
{
"scripts": {
"lint:fix": "eslint src --ext .ts,.tsx,.js,jsx --fix"
"lint": "eslint . --ext .ts,.tsx,.js,jsx",
"lint:fix": "eslint . --ext .ts,.tsx,.js,jsx --fix"
}
}
```

Then you can run via `npm run lint:fix` ESLint & Prettier.
And if you use VSCode and [ESLint Extension](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint),
If you use VSCode and [ESLint Extension](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint),
you can get great developer experience with the shortcut.
And [Webstorm native support ESLint](https://www.jetbrains.com/help/webstorm/eslint.html#ws_eslint_configure_run_eslint_on_save).

Expand Down Expand Up @@ -150,19 +148,25 @@ You can manage the rules yourself.
- **npm**

```bash
npm install --save-dev eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-fix prettier
npm install --save-dev eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-custom-order prettier
```

- **yarn**

```bash
yarn add -D eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-fix prettier
yarn add -D eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-custom-order prettier
```

- **pnpm**

```bash
pnpm add -D eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-fix prettier
pnpm add -D eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-custom-order prettier
```

- **bun**

```bash
bun add -d eslint-config-ts-prefixer eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser typescript eslint-plugin-import eslint-import-resolver-typescript eslint-plugin-prettier eslint-plugin-sort-keys-custom-order prettier
```

### 2. run `npx eslint-config-ts-prefixer barebone`
Expand Down
6 changes: 3 additions & 3 deletions bin/cli.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -90,20 +90,20 @@ async function createPrettierConfig() {
async function copyConfig(filename) {
if (existsSync(destination[filename])) {
const answer = await input({
name: 'overwrite',
choices: [
{
key: 'y',
name: 'Overwrite',
key: 'y',
value: 'overwrite',
},
{
key: 'n',
name: 'Abort',
key: 'n',
value: 'abort',
},
],
message: `Your .${filename} already exists.`,
name: 'overwrite',
type: 'expand',
})

Expand Down
17 changes: 15 additions & 2 deletions index.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,12 @@ module.exports = {
parserOptions: {
project: ['tsconfig.json'],
},
plugins: ['@typescript-eslint', 'import', 'sort-keys-fix', 'prettier'],
plugins: [
'@typescript-eslint',
'import',
'sort-keys-custom-order',
'prettier',
],
reportUnusedDisableDirectives: true,
root: true,
rules: {
Expand Down Expand Up @@ -88,7 +93,15 @@ module.exports = {
],
radix: 'error',
'require-atomic-updates': 'error',
'sort-keys-fix/sort-keys-fix': 'warn',
'sort-keys-custom-order/object-keys': [
'warn',
{ orderedKeys: ['id', 'name', 'title'] },
],
// For TS types sorting
'sort-keys-custom-order/type-keys': [
'warn',
{ orderedKeys: ['id', 'name', 'title'] },
],
},
settings: {
'import/parsers': {
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
"eslint-plugin-import": "^2.28.1",
"eslint-plugin-prettier": "^5.0.0",
"eslint-plugin-react": "^7.33.2",
"eslint-plugin-sort-keys-fix": "^1.1.2",
"eslint-plugin-sort-keys-custom-order": "^1.0.5",
"husky": "^8.0.3",
"lint-staged": "^14.0.1",
"prettier": "^3.0.2",
Expand Down
50 changes: 8 additions & 42 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit 24cad43

Please sign in to comment.