eslint-plugin-ban

Allows you to bannish some methods or functions.

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
eslint-plugin-ban
2951.6.02 years ago5 years agoMinified + gzip package size for eslint-plugin-ban in KB

Readme

eslint-plugin-ban Build Status npm version
Allows you to bannish some methods or functions.. Inspired by tslint ban rule

Installation

You'll first need to install ESLint:
$ npm i eslint --save-dev

Next, install eslint-plugin-ban:
$ npm install eslint-plugin-ban --save-dev

Note: If you installed ESLint globally (using the -g flag) then you must also install eslint-plugin-ban globally.

Usage

Add ban to the plugins section of your .eslintrc configuration file. You can omit the eslint-plugin- prefix:
{
  "plugins": ["ban"]
}

Then configure the rules you want to use under the rules section.
{
  "rules": {
    "ban/ban": [
      2,
      { "name": "functionName", "message": "Prefer use functionName2" }
    ]
  }
}

Some examples

An error

{
  "rules": {
    "ban/ban": [
      2,
      {
        "name": ["*", "push"],
        "message": "Prefer use es6 spread like [...items, newItem]"
      }
    ]
  }
}

A simple warning

{
  "rules": {
    "ban/ban": [
      1,
      {
        "name": "api",
        "message": "This function is deprecated, please use api.call()"
      }
    ]
  }
}

Multiple errors

{
  "rules": {
    "ban/ban": [
      "error",
      {
        "name": "api",
        "message": "This function is deprecated, please use api.call()"
      },
      {
        "name": ["*", "push"],
        "message": "Prefer use es6 spread like [...items, newItem]"
      },
      { "name": "functionName", "message": "Prefer use functionName2" }
    ]
  }
}

Widcard

{
  "rules": {
    "ban/ban": [
      2,
      { "name": ["console", "*"], "message": "Please use our logger" }
    ]
  }
}
Todo
  • Possibility to add errorand warning at same time
Contributing
Please feel free to submit, comment anything on this repo :)