140 lines
3.3 KiB
YAML
140 lines
3.3 KiB
YAML
root: true
|
|
env:
|
|
es2020: true
|
|
node: true
|
|
extends:
|
|
- eslint:recommended
|
|
- prettier
|
|
- prettier/unicorn
|
|
plugins:
|
|
- import
|
|
- unicorn
|
|
- prettier-internal-rules
|
|
settings:
|
|
import/internal-regex: ^linguist-languages/
|
|
rules:
|
|
arrow-body-style:
|
|
- error
|
|
- as-needed
|
|
curly: error
|
|
dot-notation: error
|
|
eqeqeq:
|
|
- error
|
|
- always
|
|
- null: ignore
|
|
import/no-extraneous-dependencies:
|
|
- error
|
|
- devDependencies: ["tests*/**", "scripts/**"]
|
|
import/order: error
|
|
no-else-return: error
|
|
no-implicit-coercion: error
|
|
no-inner-declarations: error
|
|
no-unneeded-ternary: error
|
|
no-useless-return: error
|
|
no-unused-vars:
|
|
- error
|
|
- ignoreRestSiblings: true
|
|
no-var: error
|
|
object-shorthand: error
|
|
one-var:
|
|
- error
|
|
- never
|
|
prefer-arrow-callback: error
|
|
prefer-const:
|
|
- error
|
|
- destructuring: all
|
|
prefer-destructuring:
|
|
- error
|
|
- VariableDeclarator:
|
|
array: false
|
|
object: true
|
|
AssignmentExpression:
|
|
array: false
|
|
object: false
|
|
- enforceForRenamedProperties: false
|
|
prefer-object-spread: error
|
|
prefer-rest-params: error
|
|
prefer-spread: error
|
|
prettier-internal-rules/jsx-identifier-case: error
|
|
prettier-internal-rules/require-json-extensions: error
|
|
quotes:
|
|
- error
|
|
- double
|
|
- avoidEscape: true
|
|
strict: error
|
|
symbol-description: error
|
|
yoda:
|
|
- error
|
|
- never
|
|
- exceptRange: true
|
|
unicorn/better-regex: error
|
|
unicorn/explicit-length-check: error
|
|
unicorn/new-for-builtins: error
|
|
unicorn/no-array-for-each: error
|
|
unicorn/no-array-push-push: error
|
|
unicorn/no-useless-undefined: error
|
|
unicorn/prefer-includes: error
|
|
unicorn/prefer-number-properties: error
|
|
unicorn/prefer-regexp-test: error
|
|
unicorn/prefer-spread: error
|
|
unicorn/prefer-string-slice: error
|
|
overrides:
|
|
- files:
|
|
- scripts/**/*.js
|
|
rules:
|
|
no-console: off
|
|
- files:
|
|
- "**/*.mjs"
|
|
parserOptions:
|
|
sourceType: module
|
|
- files:
|
|
- "{tests,tests_config,tests_integration}/**/*.js"
|
|
env:
|
|
jest: true
|
|
plugins:
|
|
- jest
|
|
rules:
|
|
jest/valid-expect:
|
|
- error
|
|
- alwaysAwait: true
|
|
- files:
|
|
- tests/**/*.js
|
|
rules:
|
|
strict: off
|
|
globals:
|
|
run_spec: false
|
|
- files:
|
|
- src/cli/**/*.js
|
|
rules:
|
|
no-restricted-modules:
|
|
- error
|
|
- patterns:
|
|
- ".."
|
|
- files: src/language-js/needs-parens.js
|
|
rules:
|
|
prettier-internal-rules/better-parent-property-check-in-needs-parens: error
|
|
- files: src/**/*.js
|
|
rules:
|
|
prettier-internal-rules/no-doc-builder-concat: error
|
|
prettier-internal-rules/no-empty-flat-contents-for-if-break: error
|
|
prettier-internal-rules/prefer-ast-path-each: error
|
|
prettier-internal-rules/prefer-indent-if-break: error
|
|
prettier-internal-rules/prefer-is-non-empty-array: error
|
|
- files:
|
|
- src/language-*/**/*.js
|
|
rules:
|
|
prettier-internal-rules/directly-loc-start-end: error
|
|
- files:
|
|
- src/language-js/**/*.js
|
|
rules:
|
|
prettier-internal-rules/no-node-comments:
|
|
- error
|
|
- file: "src/language-js/utils.js"
|
|
functions:
|
|
- hasComment
|
|
- getComments
|
|
- "src/language-js/parse-postprocess.js"
|
|
- "src/language-js/parser-babel.js"
|
|
- "src/language-js/parser-meriyah.js"
|
|
- "src/language-js/pragma.js"
|