Package Exports
- eslint-plugin-decorator-position
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (eslint-plugin-decorator-position) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
eslint-plugin-decorator-position
An ESlint plugin that provides set of rules enforcing consistent decorator positions
❗️Requirements
🚀 Usage
1. Install plugin
yarn add --dev eslint-plugin-decorator-positionOr
npm install --save-dev eslint-plugin-decorator-position2. Modify your .eslintrc.js
// .eslintrc.js
module.exports = {
parser: 'babel-eslint',
// parser: '@typescript-eslint/parser',
plugins: ['decorator-position'],
extends: [
'plugin:decorator-position/ember' // or other configuration
],
rules: {
// override rule settings from extends config here
// 'decorator-position': ['error', { /* your config */ }]
}
};🧰 Configurations
| Name | Description | |
|---|---|---|
| base | contains no rules settings, but the basic eslint configuration suitable for any project. You can use it to configure rules as you wish. | |
| 🐹 | ember | extends the base configuration by enabling the recommended rules for ember projects. |
🍟 Rules
Rules are grouped by category to help you understand their purpose. Each rule has emojis denoting:
- What configuration it belongs to
- 🔧 if some problems reported by the rule are automatically fixable by the
--fixcommand line option
Style
| Rule ID | Description | |
|---|---|---|
| ✅🔧 | decorator-position | Enforces consistent decorator position on properties and methods |
For the simplified list of rules, go here.
🍻 Contribution Guide
If you have any suggestions, ideas, or problems, feel free to create an issue, but first please make sure your question does not repeat previous ones.
Creating a New Rule
- Create an issue with a description of the proposed rule
- Create files for the new rule:
lib/rules/new-rule.js(implementation, see no-proxies for an example)docs/rules/new-rule.md(documentation, start from the template -- raw, rendered)tests/lib/rules/new-rule.js(tests, see no-proxies for an example)
- Run
yarn updateto automatically update the README and other files (and re-run this if you change the rule name or description) - Make sure your changes will pass CI by running:
yarn testyarn lint(yarn lint:js --fixcan fix many errors)
- Create a PR and link the created issue in the description
Note that new rules should not immediately be added to the recommended configuration, as we only consider such breaking changes during major version updates.
🔓 License
See the LICENSE file for license rights and limitations (MIT).