2.0.8 • Published 6 months ago

@justia/eslint-config-typescript v2.0.8

Weekly downloads
2
License
MIT
Repository
github
Last release
6 months ago

@justia/eslint-config-typescript version 2.0.8

Justia's ESLint configuration for TypeScript projects

This package uses @justia/eslint-config as a base configuration and modifies import and prettier rules to support TypeScript.

Install

Install the correct versions of the peer dependencies, which are listed by the command:

npm info "@justia/eslint-config-typescript@latest" peerDependencies

If using npm 5+, use this shortcut

npx install-peerdeps --dev @justia/eslint-config-typescript

If using npm < 5, Linux/OSX users can run

(
export PKG=@justia/eslint-config-typescript;
npm info "$PKG@latest" peerDependencies --json | command sed 's/[\{\},]//g ; s/: /@/g' | xargs npm install --save-dev "$PKG@latest"
)

Which produces and runs a command like:

npm install --save-dev @justia/eslint-config-typescript eslint@^#.#.# prettier@^#.#.# eslint-config-prettier@^#.#.# eslint-plugin-import@^#.#.# eslint-plugin-prettier@^#.#.# eslint-plugin-promise@^#.#.# @typescript-eslint/parser@^#.#.# @typescript-eslint/eslint-plugin@^#.#.#

Usage

This configuration contains all of our ESLint rules, including ECMAScript 6+, TypeScript and formatting styles. It requires the following external packages:

  • eslint
  • prettier
  • eslint-config-prettier
  • eslint-plugin-import
  • eslint-plugin-prettier
  • eslint-plugin-promise
  • @typescript-eslint/parser
  • @typescript-eslint/eslint-plugin

After installation of packages and its peer dependencies, add the following configuration to your ESLint configuration file:

{
    "extends": ["@justia/eslint-config-typescript"],
    "parserOptions": {
        "project": "./tsconfig.json"
    }
}

Alter your eslint command to include ts files:

eslint --ext .js,.ts ./

VS Code Issue

For those how use VS Code, it is possible you are getting the following error message:

Parsing error: "parserOptions.project" has been set for @typescript-eslint/parser. The file does not match your project config: .eslintrc.js. The file must be included in at least one of the projects provided.

To fix it you will need to add a ESLint-specific TypeScript configuration file (tsconfig.eslint.json):

{
    "extends": "./tsconfig.json",
    "compilerOptions": {
        "noEmit": true
    },
    "include": [
        ".eslintrc.js",
        // Also re-add the patterns you define in the original `include` key.
    ]
}

Then change the parserOptions.project to tsconfig.eslint.json.

2.0.7

8 months ago

2.0.8

6 months ago

2.0.5

1 year ago

2.0.6

1 year ago

2.0.3

1 year ago

2.0.2

1 year ago

2.0.4

1 year ago

2.0.1

1 year ago

1.0.0

2 years ago

2.0.0

2 years ago

0.3.4

3 years ago

0.3.3

3 years ago

0.3.2

3 years ago

0.3.1

4 years ago

0.3.0

4 years ago

0.2.0

4 years ago

0.1.4

4 years ago

0.1.3

4 years ago

0.1.2

4 years ago

0.1.1

4 years ago

0.1.0

4 years ago