dc5304823b
* add new woocommerce/eslint-plugin * implement eslint-plugin (switch scripts to use wp-scripts etc) * various linting fixes * more lint fixes * improve fix script * more eslint fixes * more eslint fixes * temporary convert rules to warnings until they are all handled * linting fixes * update package-lock.json * remove duplicates * remove unnecessary `@wordpress/dependency-group` rule config * add docs and adjust rules * prettier fix * fix merge artifact * convert more rules to warnings * change order to reflect importance * install babel-preset-default * remove unnecessary configuration for babel * fix dependency group rule and test * fix test * handle collapsible whitespace * add react testing library eslint plugin * linter errors * Add back in prettierrc * package-lock update * js lint fix with --fix * disable whitespace in translation * package-lock update * make eslint actual dependency, not peer dependency * pin eslint to v7 * I don't know why, but its working * fix lint js Co-authored-by: Paul Sealock <psealock@gmail.com> |
||
---|---|---|
.. | ||
configs | ||
docs/rules | ||
rules | ||
.npmrc | ||
README.md | ||
index.js | ||
package.json |
README.md
ESLint Plugin
This is an ESLint plugin including configurations and custom rules for WooCommerce development.
Note: This primarily extends the @wordpress/eslint-plugin/recommended
ruleset and does not change any of the rules exposed on that plugin. As a base, all WooCommerce projects are expected to follow WordPress JavaScript Code Styles.
However, this ruleset does implement the following (which do not conflict with WordPress standards):
- prettier formatting (using
wp-prettier
) - Dependency grouping (External and Internal) for dependencies in JavaScript files
- No yoda conditionals
- Radix argument required for
parseInt
.
Installation
Install the module
npm install @woocommerce/eslint-plugin --save-dev
Usage
To opt-in to the default configuration, extend your own project's .eslintrc
file:
{
"extends": [ "plugin:@woocommerce/eslint-plugin/recommended" ]
}
Refer to the ESLint documentation on Shareable Configs for more information.
The recommended
preset will include rules governing an ES2015+ environment, and includes rules from the @wordpress/eslint-plugin/recommended
project.
Rules
Rule | Description | Recommended |
---|---|---|
dependency-group | Enforce dependencies docblocks formatting | ✓ |