eslint-plugin-misc
TypeScript icon, indicating that this package has built-in type declarations

3.3.1 • Public • Published

ESLint plugin

Table of contents

Overview

A collection of ESLint rules for JavaScript and TypeScript files.

Installation

npm install --save-dev eslint-plugin-misc
// .eslintrc.js
module.exports = {
  extends: "plugin:misc/all",
  parser: "@typescript-eslint/parser",
  plugins: ["misc"]
};

Configs

  • plugin:misc/all — All rules.
  • plugin:misc/recommended — Recommended rules.
  • plugin:misc/core — Core rules.
  • plugin:misc/typescript — Rules for typescript files.

Rules

Synonyms

You can use the same rule several times by adding synonym:

// .eslintrc.synonyms.cjs
module.exports = ["misc/wrap/class-methods-use-this", "misc/wrap/no-shadow"];

// .eslintrc.js
module.exports = {
  rules: {
    // Same as ESLint core rule, but suppresses warnings for methods that have "this" parameter.
    "misc/wrap/class-methods-use-this": [
      "error",
      {
        plugin: "eslint",
        rule: "class-methods-use-this",
        skip: "FunctionExpression[params.0.name=this]"
      }
    ],
    // Same as typescript-eslint rule, but suppresses warnings for enums.
    "misc/wrap/no-shadow": [
      "error",
      {
        plugin: "@typescript-eslint/eslint-plugin",
        rule: "no-shadow",
        skip: "TSEnumDeclaration *"
      }
    ]
  }
};

Custom checks

Many custom checks can be created without writing full-fledged ESLint plugin. Use the rules below to create custom checks or adapt existing third-party rules:

If you want to apply one rule several times (e.g. restrict several syntaxes), use rule synonyms.

Planned rules

  • boolean-in-boolean-context — Require strict boolean type in boolean contexts like x && y or !x.
  • consistent-import-as — Require that y in import { x as y } statement is from allowed list.
  • consistent-test-file-name — Require that test file name matches some source file name.
  • no-re-export-mixing — Require that file contains either only re-export or only export of new items.
  • escape-doc-comment-entities — Require that "<" and ">" symbols inside doc comments are properly escaped.
  • no-array-mutation — Forbid array mutation.
  • no-duplicate-import — Forbid combining import { x } from "source" and import { x as y } from "source" in the same file.
  • protected-rules — Do not allow to disable selected ESLint rules.
  • sort-eslint-comments — Sort rules in eslint-disable comments.
  • sort-switch-cases — Sort switch cases.
  • spell-check — Spell check with international language support based on hunspell spell checker.

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
3.3.134latest

Version History

VersionDownloads (Last 7 Days)Published
3.3.134
3.3.01
3.2.01
3.1.011
3.0.01
2.1.1505
2.1.02
2.0.01
1.11.250
1.11.11
1.11.01
1.10.11
1.10.01
1.9.514
1.9.41
1.9.31
1.9.21
1.9.11
1.9.01
1.8.21
1.8.11
1.8.02
1.7.01
1.6.01
1.5.01
1.4.11
1.4.01
1.3.11
1.3.01
1.2.31
1.2.21
1.2.11
1.2.01
1.1.01
1.0.02
0.1.61
0.1.51
0.1.42
0.1.31
0.1.21
0.1.11
0.1.01

Package Sidebar

Install

npm i eslint-plugin-misc

Weekly Downloads

655

Version

3.3.1

License

ISC

Unpacked Size

1.31 MB

Total Files

885

Last publish

Collaborators

  • iliubinskii