UNPKG

eslint-config-neon

Version:

The ultimate ESLint shareable config

192 lines (191 loc) 5.59 kB
{ "jsPlugins": [ { "name": "@neon/eslint-import-x", "specifier": "eslint-plugin-import-x" }, { "name": "@neon/eslint-sonarjs", "specifier": "eslint-plugin-sonarjs" }, { "name": "@neon/eslint-stylistic", "specifier": "@stylistic/eslint-plugin" }, { "name": "@neon/eslint-tsdoc", "specifier": "eslint-plugin-tsdoc" }, { "name": "@neon/eslint-typescript-sort-keys", "specifier": "eslint-plugin-typescript-sort-keys" } ], "overrides": [ { "files": [ "**/*.{js,jsx,ts,tsx,cjs,mjs,cts,mts}" ], "rules": { "@neon/eslint-sonarjs/elseif-without-else": 0, "@neon/eslint-sonarjs/max-switch-cases": 0, "@neon/eslint-sonarjs/no-all-duplicated-branches": 2, "@neon/eslint-sonarjs/no-collapsible-if": 2, "@neon/eslint-sonarjs/no-collection-size-mischeck": 2, "@neon/eslint-sonarjs/no-duplicate-string": 0, "@neon/eslint-sonarjs/no-duplicated-branches": 2, "@neon/eslint-sonarjs/no-element-overwrite": 2, "@neon/eslint-sonarjs/no-empty-collection": 2, "@neon/eslint-sonarjs/no-extra-arguments": 2, "@neon/eslint-sonarjs/no-gratuitous-expressions": 2, "@neon/eslint-sonarjs/no-identical-conditions": 2, "@neon/eslint-sonarjs/no-identical-expressions": 2, "@neon/eslint-sonarjs/no-identical-functions": 2, "@neon/eslint-sonarjs/no-ignored-return": 2, "@neon/eslint-sonarjs/no-inverted-boolean-check": 2, "@neon/eslint-sonarjs/no-nested-switch": 2, "@neon/eslint-sonarjs/no-nested-template-literals": 0, "@neon/eslint-sonarjs/no-redundant-boolean": 2, "@neon/eslint-sonarjs/no-redundant-jump": 2, "@neon/eslint-sonarjs/no-same-line-conditional": 2, "@neon/eslint-sonarjs/no-small-switch": 0, "@neon/eslint-sonarjs/no-unused-collection": 2, "@neon/eslint-sonarjs/no-use-of-empty-return-value": 2, "@neon/eslint-sonarjs/no-useless-catch": 0, "@neon/eslint-sonarjs/non-existent-operator": 2, "@neon/eslint-sonarjs/prefer-immediate-return": 2, "@neon/eslint-sonarjs/prefer-object-literal": 2, "@neon/eslint-sonarjs/prefer-single-boolean-return": 2, "@neon/eslint-sonarjs/prefer-while": 2, "@neon/eslint-stylistic/brace-style": [ 2, "1tbs", { "allowSingleLine": false } ], "@neon/eslint-stylistic/comma-dangle": [ 2, { "arrays": "always-multiline", "exports": "always-multiline", "functions": "always-multiline", "imports": "always-multiline", "objects": "always-multiline", "enums": "always-multiline", "generics": "never", "tuples": "never" } ], "@neon/eslint-stylistic/comma-spacing": [ 2, { "after": true, "before": false } ], "@neon/eslint-stylistic/function-call-spacing": [ 2, "never" ], "@neon/eslint-stylistic/indent": [ 2, "tab" ], "@neon/eslint-stylistic/keyword-spacing": [ 2, { "after": true, "before": true } ], "@neon/eslint-stylistic/lines-between-class-members": [ 2, "always" ], "@neon/eslint-stylistic/member-delimiter-style": [ 2, { "multiline": { "delimiter": "semi", "requireLast": true }, "overrides": { "interface": { "multiline": { "delimiter": "semi", "requireLast": true } } }, "singleline": { "delimiter": "semi", "requireLast": true } } ], "@neon/eslint-stylistic/no-extra-parens": 2, "@neon/eslint-stylistic/no-extra-semi": 2, "@neon/eslint-stylistic/object-curly-spacing": [ 2, "always" ], "@neon/eslint-stylistic/padding-line-between-statements": [ 2, { "blankLine": "always", "next": "*", "prev": "multiline-block-like" } ], "@neon/eslint-stylistic/quotes": [ 2, "double" ], "@neon/eslint-stylistic/semi": [ 2, "always" ], "@neon/eslint-stylistic/space-before-blocks": [ 2, "always" ], "@neon/eslint-stylistic/space-before-function-paren": [ 2, { "anonymous": "always", "named": "never", "asyncArrow": "always" } ], "@neon/eslint-stylistic/space-infix-ops": [ 2, { "int32Hint": true } ], "@neon/eslint-stylistic/type-annotation-spacing": 2 } }, { "files": [ "**/*.{ts,tsx,cts,mts}" ], "rules": { "@neon/eslint-tsdoc/syntax": 1, "@neon/eslint-typescript-sort-keys/interface": 2, "@neon/eslint-typescript-sort-keys/string-enum": 2 } }, { "files": [ "**/*.oxlint-disabled" ], "rules": { "@neon/eslint-import-x/no-unresolved": 0 } } ], "rules": {}, "plugins": [] }