16 KiB
16 KiB
Road Map
ESLint
- "accessor-pairs"
- "array-bracket-newline"
- "array-bracket-spacing"
- "array-callback-return"
- "array-element-newline"
- "arrow-body-style"
- "arrow-parens"
- "arrow-spacing"
- "block-scoped-var"
- "block-spacing"
- "brace-style"
- "callback-return"
- "camelcase"
- "capitalized-comments"
- "class-methods-use-this"
- "comma-dangle"
- "comma-spacing"
- "comma-style"
- "complexity"
- "computed-property-spacing"
- "consistent-return"
- "consistent-this"
- "constructor-super"
- "curly"
- "default-case"
- "default-case-last"
- "default-param-last"
- "dot-location"
- "dot-notation"
- "eol-last"
- "eqeqeq"
- "for-direction"
- "func-call-spacing"
- "func-name-matching"
- "func-names"
- "func-style"
- "function-call-argument-newline"
- "function-paren-newline"
- "generator-star-spacing"
- "getter-return"
- "global-require"
- "grouped-accessor-pairs"
- "guard-for-in"
- "handle-callback-err"
- "id-blacklist"
- "id-length"
- "id-match"
- "implicit-arrow-linebreak"
- "indent"
- "indent-legacy"
- "init-declarations"
- "jsx-quotes"
- "key-spacing"
- "keyword-spacing"
- "line-comment-position"
- "linebreak-style"
- "lines-around-comment"
- "lines-around-directive"
- "lines-between-class-members"
- "max-classes-per-file"
- "max-depth"
- "max-len"
- "max-lines"
- "max-lines-per-function"
- "max-nested-callbacks"
- "max-params"
- "max-statements"
- "max-statements-per-line"
- "multiline-comment-style"
- "multiline-ternary"
- "new-cap"
- "new-parens"
- "newline-after-var"
- "newline-before-return"
- "newline-per-chained-call"
- "no-alert"
- "no-array-constructor"
- "no-async-promise-executor"
- "no-await-in-loop"
- "no-bitwise"
- "no-buffer-constructor"
- "no-caller"
- "no-case-declarations"
- "no-catch-shadow"
- "no-class-assign"
- "no-compare-neg-zero"
- "no-cond-assign"
- "no-confusing-arrow"
- "no-console"
- "no-const-assign"
- "no-constant-condition"
- "no-constructor-return"
- "no-continue"
- "no-control-regex"
- "no-debugger"
- "no-delete-var"
- "no-div-regex"
- "no-dupe-args"
- "no-dupe-class-members"
- "no-dupe-else-if"
- "no-dupe-keys"
- "no-duplicate-case"
- "no-duplicate-imports"
- "no-else-return"
- "no-empty"
- "no-empty-character-class"
- "no-empty-function"
- "no-empty-pattern"
- "no-eq-null"
- "no-eval"
- "no-ex-assign"
- "no-extend-native"
- "no-extra-bind"
- "no-extra-boolean-cast"
- "no-extra-label"
- "no-extra-parens"
- "no-extra-semi"
- "no-fallthrough"
- "no-floating-decimal"
- "no-func-assign"
- "no-global-assign"
- "no-implicit-coercion"
- "no-implicit-globals"
- "no-implied-eval"
- "no-import-assign"
- "no-inline-comments"
- "no-inner-declarations"
- "no-invalid-regexp"
- "no-invalid-this"
- "no-irregular-whitespace"
- "no-iterator"
- "no-label-var"
- "no-labels"
- "no-lone-blocks"
- "no-lonely-if"
- "no-loop-func"
- "no-magic-numbers"
- "no-misleading-character-class"
- "no-mixed-operators"
- "no-mixed-requires"
- "no-mixed-spaces-and-tabs"
- "no-multi-assign"
- "no-multi-spaces"
- "no-multi-str"
- "no-multiple-empty-lines"
- "no-native-reassign"
- "no-negated-condition"
- "no-negated-in-lhs"
- "no-nested-ternary"
- "no-new"
- "no-new-func"
- "no-new-object"
- "no-new-require"
- "no-new-symbol"
- "no-new-wrappers"
- "no-obj-calls"
- "no-octal"
- "no-octal-escape"
- "no-param-reassign"
- "no-path-concat"
- "no-plusplus"
- "no-process-env"
- "no-process-exit"
- "no-proto"
- "no-prototype-builtins"
- "no-redeclare"
- "no-regex-spaces"
- "no-restricted-exports"
- "no-restricted-globals"
- "no-restricted-imports"
- "no-restricted-modules"
- "no-restricted-properties"
- "no-restricted-syntax"
- "no-return-assign"
- "no-return-await"
- "no-script-url"
- "no-self-assign"
- "no-self-compare"
- "no-sequences"
- "no-setter-return"
- "no-shadow"
- "no-shadow-restricted-names"
- "no-spaced-func"
- "no-sparse-arrays"
- "no-sync"
- "no-tabs"
- "no-template-curly-in-string"
- "no-ternary"
- "no-this-before-super"
- "no-throw-literal"
- "no-trailing-spaces"
- "no-undef"
- "no-undef-init"
- "no-undefined"
- "no-underscore-dangle"
- "no-unexpected-multiline"
- "no-unmodified-loop-condition"
- "no-unneeded-ternary"
- "no-unreachable"
- "no-unsafe-finally"
- "no-unsafe-negation"
- "no-unused-expressions"
- "no-unused-labels"
- "no-unused-vars"
- "no-use-before-define"
- "no-useless-backreference"
- "no-useless-call"
- "no-useless-catch"
- "no-useless-computed-key"
- "no-useless-concat"
- "no-useless-constructor"
- "no-useless-escape"
- "no-useless-rename"
- "no-useless-return"
- "no-var"
- "no-void"
- "no-warning-comments"
- "no-whitespace-before-property"
- "no-with"
- "nonblock-statement-body-position"
- "object-curly-newline"
- "object-curly-spacing"
- "object-property-newline"
- "object-shorthand"
- "one-var"
- "one-var-declaration-per-line"
- "operator-assignment"
- "operator-linebreak"
- "padded-blocks"
- "padding-line-between-statements"
- "prefer-arrow-callback"
- "prefer-const"
- "prefer-destructuring"
- "prefer-exponentiation-operator"
- "prefer-named-capture-group"
- "prefer-numeric-literals"
- "prefer-object-spread"
- "prefer-promise-reject-errors"
- "prefer-reflect"
- "prefer-regex-literals"
- "prefer-rest-params"
- "prefer-spread"
- "prefer-template"
- "quote-props"
- "quotes"
- "radix"
- "require-atomic-updates"
- "require-await"
- "require-jsdoc"
- "require-unicode-regexp"
- "require-yield"
- "rest-spread-spacing"
- "semi"
- "semi-spacing"
- "semi-style"
- "sort-imports"
- "sort-keys"
- "sort-vars"
- "space-before-blocks"
- "space-before-function-paren"
- "space-in-parens"
- "space-infix-ops"
- "space-unary-ops"
- "spaced-comment"
- "strict"
- "switch-colon-spacing"
- "symbol-description"
- "template-curly-spacing"
- "template-tag-spacing"
- "unicode-bom"
- "use-isnan"
- "valid-jsdoc"
- "valid-typeof"
- "vars-on-top"
- "wrap-iife"
- "wrap-regex"
- "yield-star-spacing"
- "yoda"
ESLint Comments
- "disable-enable-pair"
- "no-aggregating-enable"
- "no-duplicate-disable"
- "no-restricted-disable"
- "no-unlimited-disable"
- "no-unused-disable"
- "no-unused-enable"
- "no-use"
Import
- "default"
- "dynamic-import-chunkname"
- "export"
- "exports-last"
- "extensions"
- "first"
- "group-exports"
- "max-dependencies"
- "named"
- "namespace"
- "newline-after-import"
- "no-absolute-path"
- "no-amd"
- "no-anonymous-default-export"
- "no-commonjs"
- "no-cycle"
- "no-default-export"
- "no-deprecated"
- "no-duplicates"
- "no-dynamic-require"
- "no-extraneous-dependencies"
- "no-internal-modules"
- "no-mutable-exports"
- "no-named-as-default"
- "no-named-as-default-member"
- "no-named-default"
- "no-named-export"
- "no-namespace"
- "no-nodejs-modules"
- "no-relative-parent-imports"
- "no-restricted-paths"
- "no-self-import"
- "no-unassigned-import"
- "no-unresolved"
- "no-unused-modules"
- "no-useless-path-segments"
- "no-webpack-loader-syntax"
- "order"
- "prefer-default-export"
- "unambiguous"
Security
- "detect-buffer-noassert"
- "detect-child-process"
- "detect-disable-mustache-escape"
- "detect-eval-with-expression"
- "detect-new-buffer"
- "detect-no-csrf-before-method-override"
- "detect-non-literal-fs-filename"
- "detect-non-literal-regexp"
- "detect-non-literal-require"
- "detect-object-injection"
- "detect-possible-timing-attacks"
- "detect-pseudoRandomBytes"
- "detect-unsafe-regex"
SonarJS
- "cognitive-complexity"
- "max-switch-cases"
- "no-all-duplicated-branches"
- "no-collapsible-if"
- "no-collection-size-mischeck"
- "no-duplicate-string"
- "no-duplicated-branches"
- "no-element-overwrite"
- "no-extra-arguments"
- "no-identical-conditions"
- "no-identical-expressions"
- "no-identical-functions"
- "no-inverted-boolean-check"
- "no-one-iteration-loop"
- "no-redundant-boolean"
- "no-redundant-jump"
- "no-same-line-conditional"
- "no-small-switch"
- "no-unused-collection"
- "no-use-of-empty-return-value"
- "no-useless-catch"
- "prefer-immediate-return"
- "prefer-object-literal"
- "prefer-single-boolean-return"
- "prefer-while"
TypeScript
- "adjacent-overload-signatures"
- "array-type"
- "await-thenable"
- "ban-ts-comment"
- "ban-ts-ignore"
- "ban-types"
- "brace-style"
- "camelcase"
- "class-literal-property-style"
- "class-name-casing"
- "comma-spacing"
- "consistent-type-assertions"
- "consistent-type-definitions"
- "default-param-last"
- "explicit-function-return-type"
- "explicit-member-accessibility"
- "explicit-module-boundary-types"
- "func-call-spacing"
- "generic-type-naming"
- "indent"
- "interface-name-prefix"
- "member-delimiter-style"
- "member-naming"
- "member-ordering"
- "naming-convention"
- "no-array-constructor"
- "no-base-to-string"
- "no-dupe-class-members"
- "no-dynamic-delete"
- "no-empty-function"
- "no-empty-interface"
- "no-explicit-any"
- "no-extra-non-null-assertion"
- "no-extra-parens"
- "no-extra-semi"
- "no-extraneous-class"
- "no-floating-promises"
- "no-for-in-array"
- "no-implied-eval"
- "no-inferrable-types"
- "no-magic-numbers"
- "no-misused-new"
- "no-misused-promises"
- "no-namespace"
- "no-non-null-asserted-optional-chain"
- "no-non-null-assertion"
- "no-parameter-properties"
- "no-require-imports"
- "no-this-alias"
- "no-throw-literal"
- "no-type-alias"
- "no-unnecessary-boolean-literal-compare"
- "no-unnecessary-condition"
- "no-unnecessary-qualifier"
- "no-unnecessary-type-arguments"
- "no-unnecessary-type-assertion"
- "no-unsafe-call"
- "no-unsafe-member-access"
- "no-unsafe-return"
- "no-untyped-public-signature"
- "no-unused-expressions"
- "no-unused-vars"
- "no-unused-vars-experimental"
- "no-use-before-define"
- "no-useless-constructor"
- "no-var-requires"
- "prefer-as-const"
- "prefer-for-of"
- "prefer-function-type"
- "prefer-includes"
- "prefer-namespace-keyword"
- "prefer-nullish-coalescing"
- "prefer-optional-chain"
- "prefer-readonly"
- "prefer-readonly-parameter-types"
- "prefer-regexp-exec"
- "prefer-string-starts-ends-with"
- "promise-function-async"
- "quotes"
- "require-array-sort-compare"
- "require-await"
- "restrict-plus-operands"
- "restrict-template-expressions"
- "return-await"
- "semi"
- "space-before-function-paren"
- "strict-boolean-expressions"
- "switch-exhaustiveness-check"
- "triple-slash-reference"
- "type-annotation-spacing"
- "typedef"
- "unbound-method"
- "unified-signatures"
Unicorn
- "better-regex"
- "catch-error-name"
- "consistent-function-scoping"
- "custom-error-definition"
- "error-message"
- "escape-case"
- "expiring-todo-comments"
- "explicit-length-check"
- "filename-case"
- "import-index"
- "new-for-builtins"
- "no-abusive-eslint-disable"
- "no-array-instanceof"
- "no-console-spaces"
- "no-fn-reference-in-iterator"
- "no-for-loop"
- "no-hex-escape"
- "no-keyword-prefix"
- "no-nested-ternary"
- "no-new-buffer"
- "no-process-exit"
- "no-unreadable-array-destructuring"
- "no-unsafe-regex"
- "no-unused-properties"
- "no-zero-fractions"
- "number-literal-case"
- "prefer-add-event-listener"
- "prefer-dataset"
- "prefer-event-key"
- "prefer-exponentiation-operator"
- "prefer-flat-map"
- "prefer-includes"
- "prefer-modern-dom-apis"
- "prefer-negative-index"
- "prefer-node-append"
- "prefer-node-remove"
- "prefer-number-properties"
- "prefer-query-selector"
- "prefer-reflect-apply"
- "prefer-replace-all"
- "prefer-set-has"
- "prefer-spread"
- "prefer-starts-ends-with"
- "prefer-string-slice"
- "prefer-text-content"
- "prefer-trim-start-end"
- "prefer-type-error"
- "prevent-abbreviations"
- "throw-new-error"
Vue
- "array-bracket-spacing"
- "arrow-spacing"
- "attribute-hyphenation"
- "attributes-order"
- "block-spacing"
- "brace-style"
- "camelcase"
- "comma-dangle"
- "comment-directive"
- "component-definition-name-casing"
- "component-name-in-template-casing"
- "component-tags-order"
- "dot-location"
- "eqeqeq"
- "html-closing-bracket-newline"
- "html-closing-bracket-spacing"
- "html-end-tags"
- "html-indent"
- "html-quotes"
- "html-self-closing"
- "jsx-uses-vars"
- "key-spacing"
- "keyword-spacing"
- "match-component-file-name"
- "max-attributes-per-line"
- "max-len"
- "multiline-html-element-content-newline"
- "mustache-interpolation-spacing"
- "name-property-casing"
- "no-async-in-computed-properties"
- "no-boolean-default"
- "no-confusing-v-for-v-if"
- "no-deprecated-scope-attribute"
- "no-deprecated-slot-attribute"
- "no-deprecated-slot-scope-attribute"
- "no-dupe-keys"
- "no-duplicate-attributes"
- "no-empty-pattern"
- "no-irregular-whitespace"
- "no-multi-spaces"
- "no-parsing-error"
- "no-reserved-component-names"
- "no-reserved-keys"
- "no-restricted-syntax"
- "no-shared-component-data"
- "no-side-effects-in-computed-properties"
- "no-spaces-around-equal-signs-in-attribute"
- "no-static-inline-styles"
- "no-template-key"
- "no-template-shadow"
- "no-textarea-mustache"
- "no-unsupported-features"
- "no-unused-components"
- "no-unused-vars"
- "no-use-v-if-with-v-for"
- "no-v-html"
- "object-curly-spacing"
- "order-in-components"
- "padding-line-between-blocks"
- "prop-name-casing"
- "require-component-is"
- "require-default-prop"
- "require-direct-export"
- "require-name-property"
- "require-prop-type-constructor"
- "require-prop-types"
- "require-render-return"
- "require-v-for-key"
- "require-valid-default-prop"
- "return-in-computed-property"
- "script-indent"
- "singleline-html-element-content-newline"
- "sort-keys"
- "space-infix-ops"
- "space-unary-ops"
- "static-class-names-order"
- "this-in-template"
- "use-v-on-exact"
- "v-bind-style"
- "v-on-function-call"
- "v-on-style"
- "v-slot-style"
- "valid-template-root"
- "valid-v-bind"
- "valid-v-bind-sync"
- "valid-v-cloak"
- "valid-v-else"
- "valid-v-else-if"
- "valid-v-for"
- "valid-v-html"
- "valid-v-if"
- "valid-v-model"
- "valid-v-on"
- "valid-v-once"
- "valid-v-pre"
- "valid-v-show"
- "valid-v-slot"
- "valid-v-text"