diff --git a/.changeset/all-config.md b/.changeset/all-config.md new file mode 100644 index 000000000..cc4387ce6 --- /dev/null +++ b/.changeset/all-config.md @@ -0,0 +1,5 @@ +--- +"eslint-plugin-svelte": minor +--- + +add `all` config which enables every rule \ No newline at end of file diff --git a/README.md b/README.md index 2cb25d651..0e9843df2 100644 --- a/README.md +++ b/README.md @@ -89,6 +89,7 @@ This plugin provides configs: - `plugin:svelte/base` ... Configuration to enable correct Svelte parsing. - `plugin:svelte/recommended` ... Above, plus rules to prevent errors or unintended behavior. - `plugin:svelte/prettier` ... Turns off rules that may conflict with [Prettier](https://prettier.io/) (You still need to configure prettier to work with svelte yourself, for example by using [prettier-plugin-svelte](https://github.com/sveltejs/prettier-plugin-svelte).). +- `plugin:svelte/all` ... All rules. This configuration is not recommended for production use because it changes with every minor and major version of `eslint-plugin-svelte`. Use it at your own risk. See [the rule list](https://ota-meshi.github.io/eslint-plugin-svelte/rules/) to get the `rules` that this plugin provides. diff --git a/docs/user-guide.md b/docs/user-guide.md index e0be11704..3f83cb32e 100644 --- a/docs/user-guide.md +++ b/docs/user-guide.md @@ -42,6 +42,7 @@ This plugin provides configs: - `plugin:svelte/base` ... Configuration to enable correct Svelte parsing. - `plugin:svelte/recommended` ... Above, plus rules to prevent errors or unintended behavior. - `plugin:svelte/prettier` ... Turns off rules that may conflict with [Prettier](https://prettier.io/) (You still need to configure prettier to work with svelte yourself, for example by using [prettier-plugin-svelte](https://github.com/sveltejs/prettier-plugin-svelte).). +- `plugin:svelte/all` ... All rules. This configuration is not recommended for production use because it changes with every minor and major version of `eslint-plugin-svelte`. Use it at your own risk. See [the rule list](./rules.md) to get the `rules` that this plugin provides. diff --git a/src/configs/all.ts b/src/configs/all.ts new file mode 100644 index 000000000..a62f5bd84 --- /dev/null +++ b/src/configs/all.ts @@ -0,0 +1,11 @@ +import path from "path" +import { rules } from "../utils/rules" +const base = require.resolve("./base") +const baseExtend = + path.extname(`${base}`) === ".ts" ? "plugin:svelte/base" : base +export = { + extends: [baseExtend], + rules: Object.fromEntries( + rules.map((rule) => [`svelte/${rule.meta.docs.ruleName}`, "error"]), + ), +} diff --git a/src/index.ts b/src/index.ts index ae5f8ee40..774ad68f5 100644 --- a/src/index.ts +++ b/src/index.ts @@ -3,12 +3,14 @@ import { rules as ruleList } from "./utils/rules" import base from "./configs/base" import recommended from "./configs/recommended" import prettier from "./configs/prettier" +import all from "./configs/all" import * as processor from "./processor" const configs = { base, recommended, prettier, + all, } const rules = ruleList.reduce((obj, r) => {