From 779340a5f10db368cfefe67dda7dda1043c50dac Mon Sep 17 00:00:00 2001 From: Mike McCready <66998419+MikeMcC399@users.noreply.github.com> Date: Sat, 19 Oct 2024 18:28:30 +0200 Subject: [PATCH] fix: convert README template usage to flat (#194) * fix: convert README template usage to flat * update tests/plugin/index.js * remove comment about omitting prefix Co-authored-by: Milos Djermanovic * add import to usage instructions --------- Co-authored-by: Milos Djermanovic --- plugin/templates/_README.md | 41 +++++++++++++++++++++++-------------- tests/plugin/index.js | 6 +++--- 2 files changed, 29 insertions(+), 18 deletions(-) diff --git a/plugin/templates/_README.md b/plugin/templates/_README.md index aad75f2..0653974 100644 --- a/plugin/templates/_README.md +++ b/plugin/templates/_README.md @@ -18,25 +18,36 @@ npm install eslint-plugin-<%= pluginId %> --save-dev ## Usage -Add `<%= pluginId %>` to the plugins section of your `.eslintrc` configuration file. You can omit the `eslint-plugin-` prefix: - -```json -{ - "plugins": [ - "<%= pluginId %>" - ] -} +In your [configuration file](https://eslint.org/docs/latest/use/configure/configuration-files#configuration-file), import the plugin `eslint-plugin-<%= pluginId %>` and add `<%= pluginId %>` to the `plugins` key: + +```js +import <%= pluginId %> from "eslint-plugin-<%= pluginId %>"; + +export default [ + { + plugins: { + <%= pluginId %> + } + } +]; ``` <% if (hasRules) { %> -Then configure the rules you want to use under the rules section. - -```json -{ - "rules": { - "<%= pluginId %>/rule-name": 2 +Then configure the rules you want to use under the `rules` key. + +```js +import <%= pluginId %> from "eslint-plugin-<%= pluginId %>"; + +export default [ + { + plugins: { + <%= pluginId %> + }, + rules: { + "<%= pluginId %>/rule-name": "warn" + } } -} +]; ``` <% } %> diff --git a/tests/plugin/index.js b/tests/plugin/index.js index 34ce856..223e713 100644 --- a/tests/plugin/index.js +++ b/tests/plugin/index.js @@ -57,9 +57,9 @@ describe("ESLint Plugin Generator", () => { assert.fileContent("README.md", "# eslint-plugin-foo-bar"); assert.fileContent("README.md", "Next, install `eslint-plugin-foo-bar`:"); assert.fileContent("README.md", "npm install eslint-plugin-foo-bar --save-dev"); - assert.fileContent("README.md", "Add `foo-bar` to the plugins section"); + assert.fileContent("README.md", "add `foo-bar` to the `plugins` key"); - assert.noFileContent("README.md", "Then configure the rules you want to use under the rules section."); + assert.noFileContent("README.md", "Then configure the rules you want to use under the `rules` key."); }); it("has correct lib/index.js", () => { @@ -102,7 +102,7 @@ describe("ESLint Plugin Generator", () => { }); it("has correct README.md", () => { - assert.fileContent("README.md", "\"foo-bar/rule-name\": 2"); + assert.fileContent("README.md", "\"foo-bar/rule-name\": \"warn\""); }); });