From f62080297181cf053224a7271cff58049bedaca9 Mon Sep 17 00:00:00 2001 From: Anders Nilsson Date: Fri, 29 Nov 2024 09:26:31 +0100 Subject: [PATCH] fix: disable stylistic rules (#223) --- .changeset/seven-foxes-worry.md | 5 + packages/eslint-config/package.json | 2 + packages/eslint-config/src/configs/cjs.js | 3 + packages/eslint-config/src/configs/esm.js | 3 + packages/eslint-config/src/configs/react.js | 60 +- .../eslint-config/src/configs/recommended.js | 3 + .../src/configs/rules/eslint-core.js | 6 +- .../src/configs/rules/import-x.js | 2 +- .../eslint-config/src/configs/rules/react.js | 59 +- packages/eslint-config/src/configs/svelte.js | 2 + .../test/generated/cjs-final-config.js | 370 +++++++++++- .../test/generated/esm-final-config.js | 370 +++++++++++- .../test/generated/react-final-config.js | 476 +++++++++++---- .../generated/recommended-final-config.js | 370 +++++++++++- .../test/generated/svelte-final-config.js | 550 +++++++++++++++++- pnpm-lock.yaml | 27 +- 16 files changed, 2045 insertions(+), 263 deletions(-) create mode 100644 .changeset/seven-foxes-worry.md diff --git a/.changeset/seven-foxes-worry.md b/.changeset/seven-foxes-worry.md new file mode 100644 index 0000000..5a27aab --- /dev/null +++ b/.changeset/seven-foxes-worry.md @@ -0,0 +1,5 @@ +--- +"@qlik/eslint-config": patch +--- + +Disables stylistic rules, normally handled by prettier. diff --git a/packages/eslint-config/package.json b/packages/eslint-config/package.json index 2224446..5eeadbf 100644 --- a/packages/eslint-config/package.json +++ b/packages/eslint-config/package.json @@ -28,6 +28,7 @@ "@typescript-eslint/utils": "^8.16.0", "@vitest/eslint-plugin": "^1.1.11", "confusing-browser-globals": "^1.0.11", + "eslint-config-prettier": "^9.1.0", "eslint-import-resolver-typescript": "^3.6.3", "eslint-plugin-import-x": "^4.4.3", "eslint-plugin-jest": "^28.9.0", @@ -45,6 +46,7 @@ "@qlik/prettier-config": "workspace:*", "@qlik/tsconfig": "workspace:*", "@types/confusing-browser-globals": "^1.0.3", + "@types/eslint-config-prettier": "^6.11.3", "@types/eslint-plugin-jsx-a11y": "^6.10.0", "@types/eslint__js": "^8.42.3", "eslint": "^9.15.0", diff --git a/packages/eslint-config/src/configs/cjs.js b/packages/eslint-config/src/configs/cjs.js index 90b3681..770ccba 100644 --- a/packages/eslint-config/src/configs/cjs.js +++ b/packages/eslint-config/src/configs/cjs.js @@ -1,4 +1,5 @@ // @ts-check +import prettier from "eslint-config-prettier"; import globals from "globals"; import { mergeConfigs } from "../utils/config.js"; import { recommendedJS, recommendedTS } from "./recommended.js"; @@ -28,6 +29,7 @@ const cjsJS = mergeConfigs( }, rules: cjsRules, }, + prettier, ); /** @@ -49,6 +51,7 @@ const cjsTS = mergeConfigs( // modify ts specific rules for node here }, }, + prettier, ); export default [cjsJS, cjsTS]; diff --git a/packages/eslint-config/src/configs/esm.js b/packages/eslint-config/src/configs/esm.js index e700399..1335a60 100644 --- a/packages/eslint-config/src/configs/esm.js +++ b/packages/eslint-config/src/configs/esm.js @@ -1,4 +1,5 @@ // @ts-check +import prettier from "eslint-config-prettier"; import globals from "globals"; import { mergeConfigs } from "../utils/config.js"; import { recommendedJS, recommendedTS } from "./recommended.js"; @@ -29,6 +30,7 @@ const esmJS = mergeConfigs( }, rules: nodeEsmRules, }, + prettier, ); /** @@ -50,6 +52,7 @@ const esmTS = mergeConfigs( // modify typescript specific rules for node esm here if needed }, }, + prettier, ); export default [esmJS, esmTS]; diff --git a/packages/eslint-config/src/configs/react.js b/packages/eslint-config/src/configs/react.js index c710b71..fa352d3 100644 --- a/packages/eslint-config/src/configs/react.js +++ b/packages/eslint-config/src/configs/react.js @@ -1,5 +1,6 @@ // @ts-check import react from "@eslint-react/eslint-plugin"; +import prettier from "eslint-config-prettier"; import jsxA11y from "eslint-plugin-jsx-a11y"; import eslintPluginReact from "eslint-plugin-react"; // @ts-expect-error no types for this plugin yet @@ -16,38 +17,45 @@ const reactPlugin = eslintPluginReact; /** * @type {import("../types/index.js").ESLintFlatConfig} */ -const reactBaseConfig = { - languageOptions: { - parserOptions: { - ecmaFeatures: { - jsx: true, - }, - jsxPragma: null, // for @typescript/eslint-parser +const reactBaseConfig = mergeConfigs( + // base it on the recommended react plugins config + react.configs.recommended, + reactPlugin.configs.flat.recommended, + jsxA11y.flatConfigs.recommended, + // add react-hooks plugin config (no recommended flat config YET!) + { + plugins: { + "react-hooks": reactHooks, + }, + rules: { + ...reactHooks.configs.recommended.rules, }, }, - plugins: { ...react.configs.recommended.plugins, react: reactPlugin, "jsx-a11y": jsxA11y, "react-hooks": reactHooks }, + // add qlik's recommended react config + { + languageOptions: { + parserOptions: { + ecmaFeatures: { + jsx: true, + }, + jsxPragma: null, // for @typescript/eslint-parser + }, + }, - settings: { - ...react.configs.recommended.settings, - react: { - version: "detect", + settings: { + react: { + version: "detect", + }, }, - }, - rules: { - // react plugin - ...reactPlugin.configs.flat.recommended.rules, - ...reactRules, - // jsx-a11y plugin - ...jsxA11y.flatConfigs.recommended.rules, - ...reactA11yRules, - ...react.configs.recommended.rules, - // react-hooks plugin - ...reactHooks.configs.recommended.rules, - ...reactHooksRules, + rules: { + ...reactRules, + ...reactA11yRules, + ...reactHooksRules, + }, }, -}; +); /** * @type {import("../types/index.js").ESLintFlatConfig} @@ -66,6 +74,7 @@ const reactJS = mergeConfigs( "react/jsx-filename-extension": [2, { extensions: [".js", ".jsx"] }], }, }, + prettier, ); /** @@ -85,6 +94,7 @@ const reactTS = mergeConfigs( "react/jsx-filename-extension": [2, { extensions: [".js", ".jsx", ".ts", ".tsx"] }], }, }, + prettier, ); export default [reactJS, reactTS]; diff --git a/packages/eslint-config/src/configs/recommended.js b/packages/eslint-config/src/configs/recommended.js index 537c0ae..dd21ae7 100644 --- a/packages/eslint-config/src/configs/recommended.js +++ b/packages/eslint-config/src/configs/recommended.js @@ -1,6 +1,7 @@ // @ts-check import js from "@eslint/js"; import tsParser from "@typescript-eslint/parser"; +import prettier from "eslint-config-prettier"; import eslintPluginImportX from "eslint-plugin-import-x"; import globals from "globals"; import tsconfig from "typescript-eslint"; @@ -43,6 +44,7 @@ const recommendedJS = mergeConfigs( name: "recommended-js", files: ["**/*.js", "**/*.mjs", "**/*.cjs"], }, + prettier, ); /** @@ -67,6 +69,7 @@ const recommendedTS = mergeConfigs( }, rules: typescriptRules, }, + prettier, ); export default [recommendedJS, recommendedTS]; diff --git a/packages/eslint-config/src/configs/rules/eslint-core.js b/packages/eslint-config/src/configs/rules/eslint-core.js index d9a1e02..5c5267e 100644 --- a/packages/eslint-config/src/configs/rules/eslint-core.js +++ b/packages/eslint-config/src/configs/rules/eslint-core.js @@ -30,10 +30,6 @@ const rules = { // https://eslint.org/docs/rules/consistent-return "consistent-return": "error", - // specify curly brace conventions for all control statements - // https://eslint.org/docs/rules/curly - curly: ["error", "multi-line"], // multiline - // require default case in switch statements // https://eslint.org/docs/rules/default-case "default-case": ["error", { commentPattern: "^no default$" }], @@ -502,7 +498,7 @@ const rules = { // Avoid code that looks like two expressions but is actually one // https://eslint.org/docs/rules/no-unexpected-multiline - "no-unexpected-multiline": "error", + "no-unexpected-multiline": "off", // disallow unreachable statements after a return, throw, continue, or break statement "no-unreachable": "error", diff --git a/packages/eslint-config/src/configs/rules/import-x.js b/packages/eslint-config/src/configs/rules/import-x.js index ef1f502..5d47c79 100644 --- a/packages/eslint-config/src/configs/rules/import-x.js +++ b/packages/eslint-config/src/configs/rules/import-x.js @@ -128,7 +128,7 @@ const rules = { "import-x/no-self-import": "error", // Forbid cyclical dependencies between modules // https://github.com/un-ts/eslint-plugin-import-x/blob/master/docs/rules/no-cycle.md - "import-x/no-cycle": ["error", { maxDepth: "∞" }], + "import-x/no-cycle": ["error", { ignoreExternal: true }], // Ensures that there are no useless path segments // https://github.com/un-ts/eslint-plugin-import-x/blob/master/docs/rules/no-useless-path-segments.md "import-x/no-useless-path-segments": ["error", { commonjs: true }], diff --git a/packages/eslint-config/src/configs/rules/react.js b/packages/eslint-config/src/configs/rules/react.js index a4756c2..0bdfe35 100644 --- a/packages/eslint-config/src/configs/rules/react.js +++ b/packages/eslint-config/src/configs/rules/react.js @@ -43,26 +43,6 @@ const rules = { // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-boolean-value.md "react/jsx-boolean-value": ["error", "never", { always: [] }], - // Validate closing bracket location in JSX - // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-closing-bracket-location.md - "react/jsx-closing-bracket-location": ["error", "line-aligned"], - - // Validate closing tag location in JSX - // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-closing-tag-location.md - "react/jsx-closing-tag-location": "error", - - // Enforce or disallow spaces inside of curly braces in JSX attributes - // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-curly-spacing.md - "react/jsx-curly-spacing": ["error", "never", { allowMultiline: true }], - - // Validate props indentation in JSX - // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-indent-props.md - "react/jsx-indent-props": ["error", 2], - - // Limit maximum of props on a single line in JSX - // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-max-props-per-line.md - "react/jsx-max-props-per-line": ["error", { maximum: 1, when: "multiline" }], - // Prevent usage of .bind() in JSX props // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-no-bind.md "react/jsx-no-bind": [ @@ -215,22 +195,7 @@ const rules = { // Prevent missing parentheses around multilines JSX // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-wrap-multilines.md - "react/jsx-wrap-multilines": [ - "error", - { - declaration: "parens-new-line", - assignment: "parens-new-line", - return: "parens-new-line", - arrow: "parens-new-line", - condition: "parens-new-line", - logical: "parens-new-line", - prop: "ignore", - }, - ], - - // Require that the first prop in a JSX element be on a new line when the element is multiline - // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-first-prop-new-line.md - "react/jsx-first-prop-new-line": ["error", "multiline-multiprop"], + "react/jsx-wrap-multilines": "off", // Stylistic, Prettier handles this. // Enforce spacing around jsx equals signs @@ -290,15 +255,7 @@ const rules = { // Validate whitespace in and around the JSX opening and closing brackets // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-tag-spacing.md - "react/jsx-tag-spacing": [ - "error", - { - closingSlash: "never", - beforeSelfClosing: "always", - afterOpening: "never", - beforeClosing: "never", - }, - ], + "react/jsx-tag-spacing": "off", // Prevent usage of Array index in keys // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/no-array-index-key.md @@ -369,22 +326,12 @@ const rules = { // Disallow multiple spaces between inline JSX props // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-props-no-multi-spaces.md - "react/jsx-props-no-multi-spaces": "error", + "react/jsx-props-no-multi-spaces": "off", // Enforce shorthand or standard form for React fragments // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-fragments.md "react/jsx-fragments": ["error", "syntax"], - // Enforce linebreaks in curly braces in JSX attributes and expressions. - // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/jsx-curly-newline.md - "react/jsx-curly-newline": [ - "error", - { - multiline: "consistent", - singleline: "consistent", - }, - ], - // Enforce state initialization style // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/state-in-constructor.md "react/state-in-constructor": ["error", "never"], diff --git a/packages/eslint-config/src/configs/svelte.js b/packages/eslint-config/src/configs/svelte.js index ce3633e..4ffe9bb 100644 --- a/packages/eslint-config/src/configs/svelte.js +++ b/packages/eslint-config/src/configs/svelte.js @@ -1,4 +1,5 @@ // @ts-check +import prettier from "eslint-config-prettier"; import eslintPluginSvelte from "eslint-plugin-svelte"; import svelteParser from "svelte-eslint-parser"; import tsEslint from "typescript-eslint"; @@ -48,6 +49,7 @@ const svelteSvelte = mergeConfigs( "no-unused-vars": "off", }, }, + prettier, ); export default [recommendedJS, recommendedTS, svelteSvelte]; diff --git a/packages/eslint-config/test/generated/cjs-final-config.js b/packages/eslint-config/test/generated/cjs-final-config.js index a97f5cd..622e7bc 100644 --- a/packages/eslint-config/test/generated/cjs-final-config.js +++ b/packages/eslint-config/test/generated/cjs-final-config.js @@ -93,14 +93,45 @@ export default [ "import-x": "import-x-plugin" }, "rules": { + "@babel/object-curly-spacing": "off", + "@babel/semi": "off", + "@typescript-eslint/block-spacing": "off", + "@typescript-eslint/brace-style": "off", + "@typescript-eslint/comma-dangle": "off", + "@typescript-eslint/comma-spacing": "off", + "@typescript-eslint/func-call-spacing": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/key-spacing": "off", + "@typescript-eslint/keyword-spacing": "off", + "@typescript-eslint/lines-around-comment": 0, + "@typescript-eslint/member-delimiter-style": "off", + "@typescript-eslint/no-extra-parens": "off", + "@typescript-eslint/no-extra-semi": "off", + "@typescript-eslint/object-curly-spacing": "off", + "@typescript-eslint/quotes": 0, + "@typescript-eslint/semi": "off", + "@typescript-eslint/space-before-blocks": "off", + "@typescript-eslint/space-before-function-paren": "off", + "@typescript-eslint/space-infix-ops": "off", + "@typescript-eslint/type-annotation-spacing": "off", + "array-bracket-newline": "off", + "array-bracket-spacing": "off", "array-callback-return": [ "error", { "allowImplicit": true } ], + "array-element-newline": "off", "arrow-body-style": "off", + "arrow-parens": "off", + "arrow-spacing": "off", + "babel/object-curly-spacing": "off", + "babel/quotes": 0, + "babel/semi": "off", "block-scoped-var": "error", + "block-spacing": "off", + "brace-style": "off", "camelcase": [ "error", { @@ -114,12 +145,13 @@ export default [ "exceptMethods": [] } ], + "comma-dangle": "off", + "comma-spacing": "off", + "comma-style": "off", + "computed-property-spacing": "off", "consistent-return": "error", "constructor-super": "error", - "curly": [ - "error", - "multi-line" - ], + "curly": 0, "default-case": [ "error", { @@ -128,6 +160,8 @@ export default [ ], "default-case-last": "error", "default-param-last": "error", + "dot-location": "off", + "eol-last": "off", "eqeqeq": [ "error", "always", @@ -135,8 +169,24 @@ export default [ "null": "ignore" } ], + "flowtype/boolean-style": "off", + "flowtype/delimiter-dangle": "off", + "flowtype/generic-spacing": "off", + "flowtype/object-type-curly-spacing": "off", + "flowtype/object-type-delimiter": "off", + "flowtype/quotes": "off", + "flowtype/semi": "off", + "flowtype/space-after-type-colon": "off", + "flowtype/space-before-generic-bracket": "off", + "flowtype/space-before-type-colon": "off", + "flowtype/union-intersection-spacing": "off", "for-direction": "error", + "func-call-spacing": "off", "func-names": "warn", + "function-call-argument-newline": "off", + "function-paren-newline": "off", + "generator-star": "off", + "generator-star-spacing": "off", "getter-return": [ "error", { @@ -144,6 +194,7 @@ export default [ } ], "grouped-accessor-pairs": "error", + "implicit-arrow-linebreak": "off", "import-x/consistent-type-specifier-style": "off", "import-x/default": "error", "import-x/export": "error", @@ -167,7 +218,7 @@ export default [ "import-x/no-cycle": [ "error", { - "maxDepth": "∞" + "ignoreExternal": true } ], "import-x/no-deprecated": "warn", @@ -239,10 +290,20 @@ export default [ ], "import-x/no-webpack-loader-syntax": "error", "import-x/prefer-default-export": "off", + "indent": "off", + "indent-legacy": "off", + "jsx-quotes": "off", + "key-spacing": "off", + "keyword-spacing": "off", + "linebreak-style": "off", + "lines-around-comment": 0, "max-classes-per-file": [ "error", 1 ], + "max-len": 0, + "max-statements-per-line": "off", + "multiline-ternary": "off", "new-cap": [ "error", { @@ -256,19 +317,24 @@ export default [ "newIsCapExceptions": [] } ], + "new-parens": "off", + "newline-per-chained-call": "off", "no-alert": "error", "no-array-constructor": "error", + "no-arrow-condition": "off", "no-async-promise-executor": "error", "no-await-in-loop": "error", "no-bitwise": "error", "no-caller": "error", "no-case-declarations": "error", "no-class-assign": "error", + "no-comma-dangle": "off", "no-compare-neg-zero": "error", "no-cond-assign": [ "error", "always" ], + "no-confusing-arrow": 0, "no-console": "off", "no-const-assign": "error", "no-constant-binary-expression": "error", @@ -309,7 +375,10 @@ export default [ "no-extra-bind": "error", "no-extra-boolean-cast": "error", "no-extra-label": "error", + "no-extra-parens": "off", + "no-extra-semi": "off", "no-fallthrough": "error", + "no-floating-decimal": "off", "no-func-assign": "error", "no-global-assign": [ "error", @@ -337,10 +406,14 @@ export default [ "no-loss-of-precision": "error", "no-magic-numbers": "off", "no-misleading-character-class": "error", + "no-mixed-operators": 0, + "no-mixed-spaces-and-tabs": "off", "no-multi-assign": [ "error" ], + "no-multi-spaces": "off", "no-multi-str": "error", + "no-multiple-empty-lines": "off", "no-nested-ternary": "error", "no-new": "error", "no-new-func": "error", @@ -378,6 +451,7 @@ export default [ "no-prototype-builtins": "error", "no-redeclare": "error", "no-regex-spaces": "error", + "no-reserved-keys": "off", "no-restricted-exports": [ "error", { @@ -715,14 +789,18 @@ export default [ "no-setter-return": "error", "no-shadow": "error", "no-shadow-restricted-names": "error", + "no-space-before-semi": "off", + "no-spaced-func": "off", "no-sparse-arrays": "error", + "no-tabs": 0, "no-template-curly-in-string": "error", "no-this-before-super": "error", "no-throw-literal": "error", + "no-trailing-spaces": "off", "no-undef": "error", "no-undef-init": "error", "no-underscore-dangle": "off", - "no-unexpected-multiline": "error", + "no-unexpected-multiline": 0, "no-unmodified-loop-condition": "error", "no-unneeded-ternary": [ "error", @@ -780,7 +858,13 @@ export default [ ], "no-useless-return": "error", "no-var": "error", + "no-whitespace-before-property": "off", "no-with": "error", + "no-wrap-func": "off", + "nonblock-statement-body-position": "off", + "object-curly-newline": "off", + "object-curly-spacing": "off", + "object-property-newline": "off", "object-shorthand": [ "error", "always", @@ -793,10 +877,13 @@ export default [ "error", "never" ], + "one-var-declaration-per-line": "off", "operator-assignment": [ "error", "always" ], + "operator-linebreak": "off", + "padded-blocks": "off", "prefer-arrow-callback": "off", "prefer-const": [ "error", @@ -824,14 +911,58 @@ export default [ "prefer-rest-params": "error", "prefer-spread": "error", "prefer-template": "error", + "quote-props": "off", + "quotes": 0, "radix": "error", + "react/jsx-child-element-spacing": "off", + "react/jsx-closing-bracket-location": "off", + "react/jsx-closing-tag-location": "off", + "react/jsx-curly-newline": "off", + "react/jsx-curly-spacing": "off", + "react/jsx-equals-spacing": "off", + "react/jsx-first-prop-new-line": "off", + "react/jsx-indent": "off", + "react/jsx-indent-props": "off", + "react/jsx-max-props-per-line": "off", + "react/jsx-newline": "off", + "react/jsx-one-expression-per-line": "off", + "react/jsx-props-no-multi-spaces": "off", + "react/jsx-space-before-closing": "off", + "react/jsx-tag-spacing": "off", + "react/jsx-wrap-multilines": "off", "require-atomic-updates": "error", "require-yield": "error", + "rest-spread-spacing": "off", + "semi": "off", + "semi-spacing": "off", + "semi-style": "off", + "space-after-function-name": "off", + "space-after-keywords": "off", + "space-before-blocks": "off", + "space-before-function-paren": "off", + "space-before-function-parentheses": "off", + "space-before-keywords": "off", + "space-in-brackets": "off", + "space-in-parens": "off", + "space-infix-ops": "off", + "space-return-throw-case": "off", + "space-unary-ops": "off", + "space-unary-word-ops": "off", + "standard/array-bracket-even-spacing": "off", + "standard/computed-property-even-spacing": "off", + "standard/object-curly-even-spacing": "off", + "switch-colon-spacing": "off", "symbol-description": "error", + "template-curly-spacing": "off", + "template-tag-spacing": "off", "unicode-bom": [ "error", "never" ], + "unicorn/empty-brace-spaces": "off", + "unicorn/no-nested-ternary": "off", + "unicorn/number-literal-case": "off", + "unicorn/template-indent": 0, "use-isnan": "error", "valid-typeof": [ "error", @@ -839,6 +970,48 @@ export default [ "requireStringLiterals": true } ], + "vue/array-bracket-newline": "off", + "vue/array-bracket-spacing": "off", + "vue/array-element-newline": "off", + "vue/arrow-spacing": "off", + "vue/block-spacing": "off", + "vue/block-tag-newline": "off", + "vue/brace-style": "off", + "vue/comma-dangle": "off", + "vue/comma-spacing": "off", + "vue/comma-style": "off", + "vue/dot-location": "off", + "vue/func-call-spacing": "off", + "vue/html-closing-bracket-newline": "off", + "vue/html-closing-bracket-spacing": "off", + "vue/html-end-tags": "off", + "vue/html-indent": "off", + "vue/html-quotes": "off", + "vue/html-self-closing": 0, + "vue/key-spacing": "off", + "vue/keyword-spacing": "off", + "vue/max-attributes-per-line": "off", + "vue/max-len": 0, + "vue/multiline-html-element-content-newline": "off", + "vue/multiline-ternary": "off", + "vue/mustache-interpolation-spacing": "off", + "vue/no-extra-parens": "off", + "vue/no-multi-spaces": "off", + "vue/no-spaces-around-equal-signs-in-attribute": "off", + "vue/object-curly-newline": "off", + "vue/object-curly-spacing": "off", + "vue/object-property-newline": "off", + "vue/operator-linebreak": "off", + "vue/quote-props": "off", + "vue/script-indent": "off", + "vue/singleline-html-element-content-newline": "off", + "vue/space-in-parens": "off", + "vue/space-infix-ops": "off", + "vue/space-unary-ops": "off", + "vue/template-curly-spacing": "off", + "wrap-iife": "off", + "wrap-regex": "off", + "yield-star-spacing": "off", "yoda": "error" } }, @@ -944,17 +1117,29 @@ export default [ "import-x": "import-x-plugin" }, "rules": { + "@babel/object-curly-spacing": "off", + "@babel/semi": "off", "@typescript-eslint/ban-ts-comment": "error", + "@typescript-eslint/block-spacing": "off", + "@typescript-eslint/brace-style": "off", "@typescript-eslint/class-methods-use-this": [ "warn", { "exceptMethods": [] } ], + "@typescript-eslint/comma-dangle": "off", + "@typescript-eslint/comma-spacing": "off", "@typescript-eslint/consistent-type-exports": "error", "@typescript-eslint/consistent-type-imports": "error", "@typescript-eslint/default-param-last": "error", "@typescript-eslint/explicit-module-boundary-types": "off", + "@typescript-eslint/func-call-spacing": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/key-spacing": "off", + "@typescript-eslint/keyword-spacing": "off", + "@typescript-eslint/lines-around-comment": 0, + "@typescript-eslint/member-delimiter-style": "off", "@typescript-eslint/method-signature-style": "error", "@typescript-eslint/naming-convention": [ "error", @@ -987,6 +1172,8 @@ export default [ "@typescript-eslint/no-empty-object-type": "error", "@typescript-eslint/no-explicit-any": "error", "@typescript-eslint/no-extra-non-null-assertion": "error", + "@typescript-eslint/no-extra-parens": "off", + "@typescript-eslint/no-extra-semi": "off", "@typescript-eslint/no-extraneous-class": "error", "@typescript-eslint/no-floating-promises": [ "error", @@ -1041,6 +1228,7 @@ export default [ "@typescript-eslint/no-useless-constructor": "error", "@typescript-eslint/no-useless-empty-export": "error", "@typescript-eslint/no-wrapper-object-types": "error", + "@typescript-eslint/object-curly-spacing": "off", "@typescript-eslint/prefer-as-const": "error", "@typescript-eslint/prefer-enum-initializers": "error", "@typescript-eslint/prefer-for-of": "off", @@ -1048,29 +1236,46 @@ export default [ "@typescript-eslint/prefer-namespace-keyword": "error", "@typescript-eslint/prefer-reduce-type-parameter": "error", "@typescript-eslint/prefer-return-this-type": "error", + "@typescript-eslint/quotes": 0, "@typescript-eslint/require-array-sort-compare": "error", "@typescript-eslint/return-await": "error", + "@typescript-eslint/semi": "off", + "@typescript-eslint/space-before-blocks": "off", + "@typescript-eslint/space-before-function-paren": "off", + "@typescript-eslint/space-infix-ops": "off", "@typescript-eslint/strict-boolean-expressions": "off", "@typescript-eslint/switch-exhaustiveness-check": "error", "@typescript-eslint/triple-slash-reference": "error", + "@typescript-eslint/type-annotation-spacing": "off", "@typescript-eslint/unified-signatures": "error", "@typescript-eslint/use-unknown-in-catch-callback-variable": "error", + "array-bracket-newline": "off", + "array-bracket-spacing": "off", "array-callback-return": [ "error", { "allowImplicit": true } ], + "array-element-newline": "off", "arrow-body-style": "off", + "arrow-parens": "off", + "arrow-spacing": "off", + "babel/object-curly-spacing": "off", + "babel/quotes": 0, + "babel/semi": "off", "block-scoped-var": "error", + "block-spacing": "off", + "brace-style": "off", "camelcase": "off", "class-methods-use-this": "off", + "comma-dangle": "off", + "comma-spacing": "off", + "comma-style": "off", + "computed-property-spacing": "off", "consistent-return": "error", "constructor-super": "off", - "curly": [ - "error", - "multi-line" - ], + "curly": 0, "default-case": [ "error", { @@ -1079,6 +1284,8 @@ export default [ ], "default-case-last": "error", "default-param-last": "off", + "dot-location": "off", + "eol-last": "off", "eqeqeq": [ "error", "always", @@ -1086,10 +1293,27 @@ export default [ "null": "ignore" } ], + "flowtype/boolean-style": "off", + "flowtype/delimiter-dangle": "off", + "flowtype/generic-spacing": "off", + "flowtype/object-type-curly-spacing": "off", + "flowtype/object-type-delimiter": "off", + "flowtype/quotes": "off", + "flowtype/semi": "off", + "flowtype/space-after-type-colon": "off", + "flowtype/space-before-generic-bracket": "off", + "flowtype/space-before-type-colon": "off", + "flowtype/union-intersection-spacing": "off", "for-direction": "error", + "func-call-spacing": "off", "func-names": "warn", + "function-call-argument-newline": "off", + "function-paren-newline": "off", + "generator-star": "off", + "generator-star-spacing": "off", "getter-return": "off", "grouped-accessor-pairs": "error", + "implicit-arrow-linebreak": "off", "import-x/consistent-type-specifier-style": "off", "import-x/default": "error", "import-x/export": "error", @@ -1113,7 +1337,7 @@ export default [ "import-x/no-cycle": [ "error", { - "maxDepth": "∞" + "ignoreExternal": true } ], "import-x/no-deprecated": "warn", @@ -1185,10 +1409,20 @@ export default [ ], "import-x/no-webpack-loader-syntax": "error", "import-x/prefer-default-export": "off", + "indent": "off", + "indent-legacy": "off", + "jsx-quotes": "off", + "key-spacing": "off", + "keyword-spacing": "off", + "linebreak-style": "off", + "lines-around-comment": 0, "max-classes-per-file": [ "error", 1 ], + "max-len": 0, + "max-statements-per-line": "off", + "multiline-ternary": "off", "new-cap": [ "error", { @@ -1202,19 +1436,24 @@ export default [ "newIsCapExceptions": [] } ], + "new-parens": "off", + "newline-per-chained-call": "off", "no-alert": "error", "no-array-constructor": "off", + "no-arrow-condition": "off", "no-async-promise-executor": "error", "no-await-in-loop": "error", "no-bitwise": "error", "no-caller": "error", "no-case-declarations": "error", "no-class-assign": "off", + "no-comma-dangle": "off", "no-compare-neg-zero": "error", "no-cond-assign": [ "error", "always" ], + "no-confusing-arrow": 0, "no-console": "off", "no-const-assign": "off", "no-constant-binary-expression": "error", @@ -1255,7 +1494,10 @@ export default [ "no-extra-bind": "error", "no-extra-boolean-cast": "error", "no-extra-label": "error", + "no-extra-parens": "off", + "no-extra-semi": "off", "no-fallthrough": "error", + "no-floating-decimal": "off", "no-func-assign": "off", "no-global-assign": [ "error", @@ -1283,10 +1525,14 @@ export default [ "no-loss-of-precision": "error", "no-magic-numbers": "off", "no-misleading-character-class": "error", + "no-mixed-operators": 0, + "no-mixed-spaces-and-tabs": "off", "no-multi-assign": [ "error" ], + "no-multi-spaces": "off", "no-multi-str": "error", + "no-multiple-empty-lines": "off", "no-nested-ternary": "error", "no-new": "error", "no-new-func": "error", @@ -1325,6 +1571,7 @@ export default [ "no-prototype-builtins": "error", "no-redeclare": "off", "no-regex-spaces": "error", + "no-reserved-keys": "off", "no-restricted-exports": [ "error", { @@ -1657,14 +1904,18 @@ export default [ "no-setter-return": "off", "no-shadow": "off", "no-shadow-restricted-names": "error", + "no-space-before-semi": "off", + "no-spaced-func": "off", "no-sparse-arrays": "error", + "no-tabs": 0, "no-template-curly-in-string": "error", "no-this-before-super": "off", "no-throw-literal": "error", + "no-trailing-spaces": "off", "no-undef": "off", "no-undef-init": "error", "no-underscore-dangle": "off", - "no-unexpected-multiline": "error", + "no-unexpected-multiline": 0, "no-unmodified-loop-condition": "error", "no-unneeded-ternary": [ "error", @@ -1708,7 +1959,13 @@ export default [ ], "no-useless-return": "error", "no-var": "error", + "no-whitespace-before-property": "off", "no-with": "error", + "no-wrap-func": "off", + "nonblock-statement-body-position": "off", + "object-curly-newline": "off", + "object-curly-spacing": "off", + "object-property-newline": "off", "object-shorthand": [ "error", "always", @@ -1721,10 +1978,13 @@ export default [ "error", "never" ], + "one-var-declaration-per-line": "off", "operator-assignment": [ "error", "always" ], + "operator-linebreak": "off", + "padded-blocks": "off", "prefer-arrow-callback": "off", "prefer-const": "error", "prefer-exponentiation-operator": "error", @@ -1746,14 +2006,58 @@ export default [ "prefer-rest-params": "error", "prefer-spread": "error", "prefer-template": "error", + "quote-props": "off", + "quotes": 0, "radix": "error", + "react/jsx-child-element-spacing": "off", + "react/jsx-closing-bracket-location": "off", + "react/jsx-closing-tag-location": "off", + "react/jsx-curly-newline": "off", + "react/jsx-curly-spacing": "off", + "react/jsx-equals-spacing": "off", + "react/jsx-first-prop-new-line": "off", + "react/jsx-indent": "off", + "react/jsx-indent-props": "off", + "react/jsx-max-props-per-line": "off", + "react/jsx-newline": "off", + "react/jsx-one-expression-per-line": "off", + "react/jsx-props-no-multi-spaces": "off", + "react/jsx-space-before-closing": "off", + "react/jsx-tag-spacing": "off", + "react/jsx-wrap-multilines": "off", "require-atomic-updates": "error", "require-yield": "error", + "rest-spread-spacing": "off", + "semi": "off", + "semi-spacing": "off", + "semi-style": "off", + "space-after-function-name": "off", + "space-after-keywords": "off", + "space-before-blocks": "off", + "space-before-function-paren": "off", + "space-before-function-parentheses": "off", + "space-before-keywords": "off", + "space-in-brackets": "off", + "space-in-parens": "off", + "space-infix-ops": "off", + "space-return-throw-case": "off", + "space-unary-ops": "off", + "space-unary-word-ops": "off", + "standard/array-bracket-even-spacing": "off", + "standard/computed-property-even-spacing": "off", + "standard/object-curly-even-spacing": "off", + "switch-colon-spacing": "off", "symbol-description": "error", + "template-curly-spacing": "off", + "template-tag-spacing": "off", "unicode-bom": [ "error", "never" ], + "unicorn/empty-brace-spaces": "off", + "unicorn/no-nested-ternary": "off", + "unicorn/number-literal-case": "off", + "unicorn/template-indent": 0, "use-isnan": "error", "valid-typeof": [ "error", @@ -1761,6 +2065,48 @@ export default [ "requireStringLiterals": true } ], + "vue/array-bracket-newline": "off", + "vue/array-bracket-spacing": "off", + "vue/array-element-newline": "off", + "vue/arrow-spacing": "off", + "vue/block-spacing": "off", + "vue/block-tag-newline": "off", + "vue/brace-style": "off", + "vue/comma-dangle": "off", + "vue/comma-spacing": "off", + "vue/comma-style": "off", + "vue/dot-location": "off", + "vue/func-call-spacing": "off", + "vue/html-closing-bracket-newline": "off", + "vue/html-closing-bracket-spacing": "off", + "vue/html-end-tags": "off", + "vue/html-indent": "off", + "vue/html-quotes": "off", + "vue/html-self-closing": 0, + "vue/key-spacing": "off", + "vue/keyword-spacing": "off", + "vue/max-attributes-per-line": "off", + "vue/max-len": 0, + "vue/multiline-html-element-content-newline": "off", + "vue/multiline-ternary": "off", + "vue/mustache-interpolation-spacing": "off", + "vue/no-extra-parens": "off", + "vue/no-multi-spaces": "off", + "vue/no-spaces-around-equal-signs-in-attribute": "off", + "vue/object-curly-newline": "off", + "vue/object-curly-spacing": "off", + "vue/object-property-newline": "off", + "vue/operator-linebreak": "off", + "vue/quote-props": "off", + "vue/script-indent": "off", + "vue/singleline-html-element-content-newline": "off", + "vue/space-in-parens": "off", + "vue/space-infix-ops": "off", + "vue/space-unary-ops": "off", + "vue/template-curly-spacing": "off", + "wrap-iife": "off", + "wrap-regex": "off", + "yield-star-spacing": "off", "yoda": "error" }, "settings": { diff --git a/packages/eslint-config/test/generated/esm-final-config.js b/packages/eslint-config/test/generated/esm-final-config.js index 0e7f244..85555ef 100644 --- a/packages/eslint-config/test/generated/esm-final-config.js +++ b/packages/eslint-config/test/generated/esm-final-config.js @@ -93,14 +93,45 @@ export default [ "import-x": "import-x-plugin" }, "rules": { + "@babel/object-curly-spacing": "off", + "@babel/semi": "off", + "@typescript-eslint/block-spacing": "off", + "@typescript-eslint/brace-style": "off", + "@typescript-eslint/comma-dangle": "off", + "@typescript-eslint/comma-spacing": "off", + "@typescript-eslint/func-call-spacing": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/key-spacing": "off", + "@typescript-eslint/keyword-spacing": "off", + "@typescript-eslint/lines-around-comment": 0, + "@typescript-eslint/member-delimiter-style": "off", + "@typescript-eslint/no-extra-parens": "off", + "@typescript-eslint/no-extra-semi": "off", + "@typescript-eslint/object-curly-spacing": "off", + "@typescript-eslint/quotes": 0, + "@typescript-eslint/semi": "off", + "@typescript-eslint/space-before-blocks": "off", + "@typescript-eslint/space-before-function-paren": "off", + "@typescript-eslint/space-infix-ops": "off", + "@typescript-eslint/type-annotation-spacing": "off", + "array-bracket-newline": "off", + "array-bracket-spacing": "off", "array-callback-return": [ "error", { "allowImplicit": true } ], + "array-element-newline": "off", "arrow-body-style": "off", + "arrow-parens": "off", + "arrow-spacing": "off", + "babel/object-curly-spacing": "off", + "babel/quotes": 0, + "babel/semi": "off", "block-scoped-var": "error", + "block-spacing": "off", + "brace-style": "off", "camelcase": [ "error", { @@ -114,12 +145,13 @@ export default [ "exceptMethods": [] } ], + "comma-dangle": "off", + "comma-spacing": "off", + "comma-style": "off", + "computed-property-spacing": "off", "consistent-return": "error", "constructor-super": "error", - "curly": [ - "error", - "multi-line" - ], + "curly": 0, "default-case": [ "error", { @@ -128,6 +160,8 @@ export default [ ], "default-case-last": "error", "default-param-last": "error", + "dot-location": "off", + "eol-last": "off", "eqeqeq": [ "error", "always", @@ -135,8 +169,24 @@ export default [ "null": "ignore" } ], + "flowtype/boolean-style": "off", + "flowtype/delimiter-dangle": "off", + "flowtype/generic-spacing": "off", + "flowtype/object-type-curly-spacing": "off", + "flowtype/object-type-delimiter": "off", + "flowtype/quotes": "off", + "flowtype/semi": "off", + "flowtype/space-after-type-colon": "off", + "flowtype/space-before-generic-bracket": "off", + "flowtype/space-before-type-colon": "off", + "flowtype/union-intersection-spacing": "off", "for-direction": "error", + "func-call-spacing": "off", "func-names": "warn", + "function-call-argument-newline": "off", + "function-paren-newline": "off", + "generator-star": "off", + "generator-star-spacing": "off", "getter-return": [ "error", { @@ -144,6 +194,7 @@ export default [ } ], "grouped-accessor-pairs": "error", + "implicit-arrow-linebreak": "off", "import-x/consistent-type-specifier-style": "off", "import-x/default": "error", "import-x/export": "error", @@ -159,7 +210,7 @@ export default [ "import-x/no-cycle": [ "error", { - "maxDepth": "∞" + "ignoreExternal": true } ], "import-x/no-deprecated": "warn", @@ -231,10 +282,20 @@ export default [ ], "import-x/no-webpack-loader-syntax": "error", "import-x/prefer-default-export": "off", + "indent": "off", + "indent-legacy": "off", + "jsx-quotes": "off", + "key-spacing": "off", + "keyword-spacing": "off", + "linebreak-style": "off", + "lines-around-comment": 0, "max-classes-per-file": [ "error", 1 ], + "max-len": 0, + "max-statements-per-line": "off", + "multiline-ternary": "off", "new-cap": [ "error", { @@ -248,19 +309,24 @@ export default [ "newIsCapExceptions": [] } ], + "new-parens": "off", + "newline-per-chained-call": "off", "no-alert": "error", "no-array-constructor": "error", + "no-arrow-condition": "off", "no-async-promise-executor": "error", "no-await-in-loop": "error", "no-bitwise": "error", "no-caller": "error", "no-case-declarations": "error", "no-class-assign": "error", + "no-comma-dangle": "off", "no-compare-neg-zero": "error", "no-cond-assign": [ "error", "always" ], + "no-confusing-arrow": 0, "no-console": "off", "no-const-assign": "error", "no-constant-binary-expression": "error", @@ -301,7 +367,10 @@ export default [ "no-extra-bind": "error", "no-extra-boolean-cast": "error", "no-extra-label": "error", + "no-extra-parens": "off", + "no-extra-semi": "off", "no-fallthrough": "error", + "no-floating-decimal": "off", "no-func-assign": "error", "no-global-assign": [ "error", @@ -329,10 +398,14 @@ export default [ "no-loss-of-precision": "error", "no-magic-numbers": "off", "no-misleading-character-class": "error", + "no-mixed-operators": 0, + "no-mixed-spaces-and-tabs": "off", "no-multi-assign": [ "error" ], + "no-multi-spaces": "off", "no-multi-str": "error", + "no-multiple-empty-lines": "off", "no-nested-ternary": "error", "no-new": "error", "no-new-func": "error", @@ -370,6 +443,7 @@ export default [ "no-prototype-builtins": "error", "no-redeclare": "error", "no-regex-spaces": "error", + "no-reserved-keys": "off", "no-restricted-exports": [ "error", { @@ -707,14 +781,18 @@ export default [ "no-setter-return": "error", "no-shadow": "error", "no-shadow-restricted-names": "error", + "no-space-before-semi": "off", + "no-spaced-func": "off", "no-sparse-arrays": "error", + "no-tabs": 0, "no-template-curly-in-string": "error", "no-this-before-super": "error", "no-throw-literal": "error", + "no-trailing-spaces": "off", "no-undef": "error", "no-undef-init": "error", "no-underscore-dangle": "off", - "no-unexpected-multiline": "error", + "no-unexpected-multiline": 0, "no-unmodified-loop-condition": "error", "no-unneeded-ternary": [ "error", @@ -772,7 +850,13 @@ export default [ ], "no-useless-return": "error", "no-var": "error", + "no-whitespace-before-property": "off", "no-with": "error", + "no-wrap-func": "off", + "nonblock-statement-body-position": "off", + "object-curly-newline": "off", + "object-curly-spacing": "off", + "object-property-newline": "off", "object-shorthand": [ "error", "always", @@ -785,10 +869,13 @@ export default [ "error", "never" ], + "one-var-declaration-per-line": "off", "operator-assignment": [ "error", "always" ], + "operator-linebreak": "off", + "padded-blocks": "off", "prefer-arrow-callback": "off", "prefer-const": [ "error", @@ -816,14 +903,58 @@ export default [ "prefer-rest-params": "error", "prefer-spread": "error", "prefer-template": "error", + "quote-props": "off", + "quotes": 0, "radix": "error", + "react/jsx-child-element-spacing": "off", + "react/jsx-closing-bracket-location": "off", + "react/jsx-closing-tag-location": "off", + "react/jsx-curly-newline": "off", + "react/jsx-curly-spacing": "off", + "react/jsx-equals-spacing": "off", + "react/jsx-first-prop-new-line": "off", + "react/jsx-indent": "off", + "react/jsx-indent-props": "off", + "react/jsx-max-props-per-line": "off", + "react/jsx-newline": "off", + "react/jsx-one-expression-per-line": "off", + "react/jsx-props-no-multi-spaces": "off", + "react/jsx-space-before-closing": "off", + "react/jsx-tag-spacing": "off", + "react/jsx-wrap-multilines": "off", "require-atomic-updates": "error", "require-yield": "error", + "rest-spread-spacing": "off", + "semi": "off", + "semi-spacing": "off", + "semi-style": "off", + "space-after-function-name": "off", + "space-after-keywords": "off", + "space-before-blocks": "off", + "space-before-function-paren": "off", + "space-before-function-parentheses": "off", + "space-before-keywords": "off", + "space-in-brackets": "off", + "space-in-parens": "off", + "space-infix-ops": "off", + "space-return-throw-case": "off", + "space-unary-ops": "off", + "space-unary-word-ops": "off", + "standard/array-bracket-even-spacing": "off", + "standard/computed-property-even-spacing": "off", + "standard/object-curly-even-spacing": "off", + "switch-colon-spacing": "off", "symbol-description": "error", + "template-curly-spacing": "off", + "template-tag-spacing": "off", "unicode-bom": [ "error", "never" ], + "unicorn/empty-brace-spaces": "off", + "unicorn/no-nested-ternary": "off", + "unicorn/number-literal-case": "off", + "unicorn/template-indent": 0, "use-isnan": "error", "valid-typeof": [ "error", @@ -831,6 +962,48 @@ export default [ "requireStringLiterals": true } ], + "vue/array-bracket-newline": "off", + "vue/array-bracket-spacing": "off", + "vue/array-element-newline": "off", + "vue/arrow-spacing": "off", + "vue/block-spacing": "off", + "vue/block-tag-newline": "off", + "vue/brace-style": "off", + "vue/comma-dangle": "off", + "vue/comma-spacing": "off", + "vue/comma-style": "off", + "vue/dot-location": "off", + "vue/func-call-spacing": "off", + "vue/html-closing-bracket-newline": "off", + "vue/html-closing-bracket-spacing": "off", + "vue/html-end-tags": "off", + "vue/html-indent": "off", + "vue/html-quotes": "off", + "vue/html-self-closing": 0, + "vue/key-spacing": "off", + "vue/keyword-spacing": "off", + "vue/max-attributes-per-line": "off", + "vue/max-len": 0, + "vue/multiline-html-element-content-newline": "off", + "vue/multiline-ternary": "off", + "vue/mustache-interpolation-spacing": "off", + "vue/no-extra-parens": "off", + "vue/no-multi-spaces": "off", + "vue/no-spaces-around-equal-signs-in-attribute": "off", + "vue/object-curly-newline": "off", + "vue/object-curly-spacing": "off", + "vue/object-property-newline": "off", + "vue/operator-linebreak": "off", + "vue/quote-props": "off", + "vue/script-indent": "off", + "vue/singleline-html-element-content-newline": "off", + "vue/space-in-parens": "off", + "vue/space-infix-ops": "off", + "vue/space-unary-ops": "off", + "vue/template-curly-spacing": "off", + "wrap-iife": "off", + "wrap-regex": "off", + "yield-star-spacing": "off", "yoda": "error" } }, @@ -936,17 +1109,29 @@ export default [ "import-x": "import-x-plugin" }, "rules": { + "@babel/object-curly-spacing": "off", + "@babel/semi": "off", "@typescript-eslint/ban-ts-comment": "error", + "@typescript-eslint/block-spacing": "off", + "@typescript-eslint/brace-style": "off", "@typescript-eslint/class-methods-use-this": [ "warn", { "exceptMethods": [] } ], + "@typescript-eslint/comma-dangle": "off", + "@typescript-eslint/comma-spacing": "off", "@typescript-eslint/consistent-type-exports": "error", "@typescript-eslint/consistent-type-imports": "error", "@typescript-eslint/default-param-last": "error", "@typescript-eslint/explicit-module-boundary-types": "off", + "@typescript-eslint/func-call-spacing": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/key-spacing": "off", + "@typescript-eslint/keyword-spacing": "off", + "@typescript-eslint/lines-around-comment": 0, + "@typescript-eslint/member-delimiter-style": "off", "@typescript-eslint/method-signature-style": "error", "@typescript-eslint/naming-convention": [ "error", @@ -979,6 +1164,8 @@ export default [ "@typescript-eslint/no-empty-object-type": "error", "@typescript-eslint/no-explicit-any": "error", "@typescript-eslint/no-extra-non-null-assertion": "error", + "@typescript-eslint/no-extra-parens": "off", + "@typescript-eslint/no-extra-semi": "off", "@typescript-eslint/no-extraneous-class": "error", "@typescript-eslint/no-floating-promises": [ "error", @@ -1033,6 +1220,7 @@ export default [ "@typescript-eslint/no-useless-constructor": "error", "@typescript-eslint/no-useless-empty-export": "error", "@typescript-eslint/no-wrapper-object-types": "error", + "@typescript-eslint/object-curly-spacing": "off", "@typescript-eslint/prefer-as-const": "error", "@typescript-eslint/prefer-enum-initializers": "error", "@typescript-eslint/prefer-for-of": "off", @@ -1040,29 +1228,46 @@ export default [ "@typescript-eslint/prefer-namespace-keyword": "error", "@typescript-eslint/prefer-reduce-type-parameter": "error", "@typescript-eslint/prefer-return-this-type": "error", + "@typescript-eslint/quotes": 0, "@typescript-eslint/require-array-sort-compare": "error", "@typescript-eslint/return-await": "error", + "@typescript-eslint/semi": "off", + "@typescript-eslint/space-before-blocks": "off", + "@typescript-eslint/space-before-function-paren": "off", + "@typescript-eslint/space-infix-ops": "off", "@typescript-eslint/strict-boolean-expressions": "off", "@typescript-eslint/switch-exhaustiveness-check": "error", "@typescript-eslint/triple-slash-reference": "error", + "@typescript-eslint/type-annotation-spacing": "off", "@typescript-eslint/unified-signatures": "error", "@typescript-eslint/use-unknown-in-catch-callback-variable": "error", + "array-bracket-newline": "off", + "array-bracket-spacing": "off", "array-callback-return": [ "error", { "allowImplicit": true } ], + "array-element-newline": "off", "arrow-body-style": "off", + "arrow-parens": "off", + "arrow-spacing": "off", + "babel/object-curly-spacing": "off", + "babel/quotes": 0, + "babel/semi": "off", "block-scoped-var": "error", + "block-spacing": "off", + "brace-style": "off", "camelcase": "off", "class-methods-use-this": "off", + "comma-dangle": "off", + "comma-spacing": "off", + "comma-style": "off", + "computed-property-spacing": "off", "consistent-return": "error", "constructor-super": "off", - "curly": [ - "error", - "multi-line" - ], + "curly": 0, "default-case": [ "error", { @@ -1071,6 +1276,8 @@ export default [ ], "default-case-last": "error", "default-param-last": "off", + "dot-location": "off", + "eol-last": "off", "eqeqeq": [ "error", "always", @@ -1078,10 +1285,27 @@ export default [ "null": "ignore" } ], + "flowtype/boolean-style": "off", + "flowtype/delimiter-dangle": "off", + "flowtype/generic-spacing": "off", + "flowtype/object-type-curly-spacing": "off", + "flowtype/object-type-delimiter": "off", + "flowtype/quotes": "off", + "flowtype/semi": "off", + "flowtype/space-after-type-colon": "off", + "flowtype/space-before-generic-bracket": "off", + "flowtype/space-before-type-colon": "off", + "flowtype/union-intersection-spacing": "off", "for-direction": "error", + "func-call-spacing": "off", "func-names": "warn", + "function-call-argument-newline": "off", + "function-paren-newline": "off", + "generator-star": "off", + "generator-star-spacing": "off", "getter-return": "off", "grouped-accessor-pairs": "error", + "implicit-arrow-linebreak": "off", "import-x/consistent-type-specifier-style": "off", "import-x/default": "error", "import-x/export": "error", @@ -1097,7 +1321,7 @@ export default [ "import-x/no-cycle": [ "error", { - "maxDepth": "∞" + "ignoreExternal": true } ], "import-x/no-deprecated": "warn", @@ -1169,10 +1393,20 @@ export default [ ], "import-x/no-webpack-loader-syntax": "error", "import-x/prefer-default-export": "off", + "indent": "off", + "indent-legacy": "off", + "jsx-quotes": "off", + "key-spacing": "off", + "keyword-spacing": "off", + "linebreak-style": "off", + "lines-around-comment": 0, "max-classes-per-file": [ "error", 1 ], + "max-len": 0, + "max-statements-per-line": "off", + "multiline-ternary": "off", "new-cap": [ "error", { @@ -1186,19 +1420,24 @@ export default [ "newIsCapExceptions": [] } ], + "new-parens": "off", + "newline-per-chained-call": "off", "no-alert": "error", "no-array-constructor": "off", + "no-arrow-condition": "off", "no-async-promise-executor": "error", "no-await-in-loop": "error", "no-bitwise": "error", "no-caller": "error", "no-case-declarations": "error", "no-class-assign": "off", + "no-comma-dangle": "off", "no-compare-neg-zero": "error", "no-cond-assign": [ "error", "always" ], + "no-confusing-arrow": 0, "no-console": "off", "no-const-assign": "off", "no-constant-binary-expression": "error", @@ -1239,7 +1478,10 @@ export default [ "no-extra-bind": "error", "no-extra-boolean-cast": "error", "no-extra-label": "error", + "no-extra-parens": "off", + "no-extra-semi": "off", "no-fallthrough": "error", + "no-floating-decimal": "off", "no-func-assign": "off", "no-global-assign": [ "error", @@ -1267,10 +1509,14 @@ export default [ "no-loss-of-precision": "error", "no-magic-numbers": "off", "no-misleading-character-class": "error", + "no-mixed-operators": 0, + "no-mixed-spaces-and-tabs": "off", "no-multi-assign": [ "error" ], + "no-multi-spaces": "off", "no-multi-str": "error", + "no-multiple-empty-lines": "off", "no-nested-ternary": "error", "no-new": "error", "no-new-func": "error", @@ -1309,6 +1555,7 @@ export default [ "no-prototype-builtins": "error", "no-redeclare": "off", "no-regex-spaces": "error", + "no-reserved-keys": "off", "no-restricted-exports": [ "error", { @@ -1641,14 +1888,18 @@ export default [ "no-setter-return": "off", "no-shadow": "off", "no-shadow-restricted-names": "error", + "no-space-before-semi": "off", + "no-spaced-func": "off", "no-sparse-arrays": "error", + "no-tabs": 0, "no-template-curly-in-string": "error", "no-this-before-super": "off", "no-throw-literal": "error", + "no-trailing-spaces": "off", "no-undef": "off", "no-undef-init": "error", "no-underscore-dangle": "off", - "no-unexpected-multiline": "error", + "no-unexpected-multiline": 0, "no-unmodified-loop-condition": "error", "no-unneeded-ternary": [ "error", @@ -1692,7 +1943,13 @@ export default [ ], "no-useless-return": "error", "no-var": "error", + "no-whitespace-before-property": "off", "no-with": "error", + "no-wrap-func": "off", + "nonblock-statement-body-position": "off", + "object-curly-newline": "off", + "object-curly-spacing": "off", + "object-property-newline": "off", "object-shorthand": [ "error", "always", @@ -1705,10 +1962,13 @@ export default [ "error", "never" ], + "one-var-declaration-per-line": "off", "operator-assignment": [ "error", "always" ], + "operator-linebreak": "off", + "padded-blocks": "off", "prefer-arrow-callback": "off", "prefer-const": "error", "prefer-exponentiation-operator": "error", @@ -1730,14 +1990,58 @@ export default [ "prefer-rest-params": "error", "prefer-spread": "error", "prefer-template": "error", + "quote-props": "off", + "quotes": 0, "radix": "error", + "react/jsx-child-element-spacing": "off", + "react/jsx-closing-bracket-location": "off", + "react/jsx-closing-tag-location": "off", + "react/jsx-curly-newline": "off", + "react/jsx-curly-spacing": "off", + "react/jsx-equals-spacing": "off", + "react/jsx-first-prop-new-line": "off", + "react/jsx-indent": "off", + "react/jsx-indent-props": "off", + "react/jsx-max-props-per-line": "off", + "react/jsx-newline": "off", + "react/jsx-one-expression-per-line": "off", + "react/jsx-props-no-multi-spaces": "off", + "react/jsx-space-before-closing": "off", + "react/jsx-tag-spacing": "off", + "react/jsx-wrap-multilines": "off", "require-atomic-updates": "error", "require-yield": "error", + "rest-spread-spacing": "off", + "semi": "off", + "semi-spacing": "off", + "semi-style": "off", + "space-after-function-name": "off", + "space-after-keywords": "off", + "space-before-blocks": "off", + "space-before-function-paren": "off", + "space-before-function-parentheses": "off", + "space-before-keywords": "off", + "space-in-brackets": "off", + "space-in-parens": "off", + "space-infix-ops": "off", + "space-return-throw-case": "off", + "space-unary-ops": "off", + "space-unary-word-ops": "off", + "standard/array-bracket-even-spacing": "off", + "standard/computed-property-even-spacing": "off", + "standard/object-curly-even-spacing": "off", + "switch-colon-spacing": "off", "symbol-description": "error", + "template-curly-spacing": "off", + "template-tag-spacing": "off", "unicode-bom": [ "error", "never" ], + "unicorn/empty-brace-spaces": "off", + "unicorn/no-nested-ternary": "off", + "unicorn/number-literal-case": "off", + "unicorn/template-indent": 0, "use-isnan": "error", "valid-typeof": [ "error", @@ -1745,6 +2049,48 @@ export default [ "requireStringLiterals": true } ], + "vue/array-bracket-newline": "off", + "vue/array-bracket-spacing": "off", + "vue/array-element-newline": "off", + "vue/arrow-spacing": "off", + "vue/block-spacing": "off", + "vue/block-tag-newline": "off", + "vue/brace-style": "off", + "vue/comma-dangle": "off", + "vue/comma-spacing": "off", + "vue/comma-style": "off", + "vue/dot-location": "off", + "vue/func-call-spacing": "off", + "vue/html-closing-bracket-newline": "off", + "vue/html-closing-bracket-spacing": "off", + "vue/html-end-tags": "off", + "vue/html-indent": "off", + "vue/html-quotes": "off", + "vue/html-self-closing": 0, + "vue/key-spacing": "off", + "vue/keyword-spacing": "off", + "vue/max-attributes-per-line": "off", + "vue/max-len": 0, + "vue/multiline-html-element-content-newline": "off", + "vue/multiline-ternary": "off", + "vue/mustache-interpolation-spacing": "off", + "vue/no-extra-parens": "off", + "vue/no-multi-spaces": "off", + "vue/no-spaces-around-equal-signs-in-attribute": "off", + "vue/object-curly-newline": "off", + "vue/object-curly-spacing": "off", + "vue/object-property-newline": "off", + "vue/operator-linebreak": "off", + "vue/quote-props": "off", + "vue/script-indent": "off", + "vue/singleline-html-element-content-newline": "off", + "vue/space-in-parens": "off", + "vue/space-infix-ops": "off", + "vue/space-unary-ops": "off", + "vue/template-curly-spacing": "off", + "wrap-iife": "off", + "wrap-regex": "off", + "yield-star-spacing": "off", "yoda": "error" }, "settings": { diff --git a/packages/eslint-config/test/generated/react-final-config.js b/packages/eslint-config/test/generated/react-final-config.js index d7f27f5..c4a0549 100644 --- a/packages/eslint-config/test/generated/react-final-config.js +++ b/packages/eslint-config/test/generated/react-final-config.js @@ -1157,6 +1157,8 @@ export default [ "react-hooks": "react-hooks-plugin" }, "rules": { + "@babel/object-curly-spacing": "off", + "@babel/semi": "off", "@eslint-react/dom/no-children-in-void-dom-elements": "warn", "@eslint-react/dom/no-dangerously-set-innerhtml": "warn", "@eslint-react/dom/no-dangerously-set-innerhtml-with-children": "error", @@ -1209,14 +1211,43 @@ export default [ "@eslint-react/web-api/no-leaked-interval": "warn", "@eslint-react/web-api/no-leaked-resize-observer": "warn", "@eslint-react/web-api/no-leaked-timeout": "warn", + "@typescript-eslint/block-spacing": "off", + "@typescript-eslint/brace-style": "off", + "@typescript-eslint/comma-dangle": "off", + "@typescript-eslint/comma-spacing": "off", + "@typescript-eslint/func-call-spacing": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/key-spacing": "off", + "@typescript-eslint/keyword-spacing": "off", + "@typescript-eslint/lines-around-comment": 0, + "@typescript-eslint/member-delimiter-style": "off", + "@typescript-eslint/no-extra-parens": "off", + "@typescript-eslint/no-extra-semi": "off", + "@typescript-eslint/object-curly-spacing": "off", + "@typescript-eslint/quotes": 0, + "@typescript-eslint/semi": "off", + "@typescript-eslint/space-before-blocks": "off", + "@typescript-eslint/space-before-function-paren": "off", + "@typescript-eslint/space-infix-ops": "off", + "@typescript-eslint/type-annotation-spacing": "off", + "array-bracket-newline": "off", + "array-bracket-spacing": "off", "array-callback-return": [ "error", { "allowImplicit": true } ], + "array-element-newline": "off", "arrow-body-style": "off", + "arrow-parens": "off", + "arrow-spacing": "off", + "babel/object-curly-spacing": "off", + "babel/quotes": 0, + "babel/semi": "off", "block-scoped-var": "error", + "block-spacing": "off", + "brace-style": "off", "camelcase": [ "error", { @@ -1247,12 +1278,13 @@ export default [ ] } ], + "comma-dangle": "off", + "comma-spacing": "off", + "comma-style": "off", + "computed-property-spacing": "off", "consistent-return": "error", "constructor-super": "error", - "curly": [ - "error", - "multi-line" - ], + "curly": 0, "default-case": [ "error", { @@ -1261,6 +1293,8 @@ export default [ ], "default-case-last": "error", "default-param-last": "error", + "dot-location": "off", + "eol-last": "off", "eqeqeq": [ "error", "always", @@ -1268,8 +1302,24 @@ export default [ "null": "ignore" } ], + "flowtype/boolean-style": "off", + "flowtype/delimiter-dangle": "off", + "flowtype/generic-spacing": "off", + "flowtype/object-type-curly-spacing": "off", + "flowtype/object-type-delimiter": "off", + "flowtype/quotes": "off", + "flowtype/semi": "off", + "flowtype/space-after-type-colon": "off", + "flowtype/space-before-generic-bracket": "off", + "flowtype/space-before-type-colon": "off", + "flowtype/union-intersection-spacing": "off", "for-direction": "error", + "func-call-spacing": "off", "func-names": "warn", + "function-call-argument-newline": "off", + "function-paren-newline": "off", + "generator-star": "off", + "generator-star-spacing": "off", "getter-return": [ "error", { @@ -1277,6 +1327,7 @@ export default [ } ], "grouped-accessor-pairs": "error", + "implicit-arrow-linebreak": "off", "import-x/consistent-type-specifier-style": "off", "import-x/default": "error", "import-x/export": "error", @@ -1300,7 +1351,7 @@ export default [ "import-x/no-cycle": [ "error", { - "maxDepth": "∞" + "ignoreExternal": true } ], "import-x/no-deprecated": "warn", @@ -1372,6 +1423,8 @@ export default [ ], "import-x/no-webpack-loader-syntax": "error", "import-x/prefer-default-export": "off", + "indent": "off", + "indent-legacy": "off", "jsx-a11y/alt-text": [ "error", { @@ -1595,10 +1648,18 @@ export default [ "jsx-a11y/role-supports-aria-props": "error", "jsx-a11y/scope": "error", "jsx-a11y/tabindex-no-positive": "error", + "jsx-quotes": "off", + "key-spacing": "off", + "keyword-spacing": "off", + "linebreak-style": "off", + "lines-around-comment": 0, "max-classes-per-file": [ "error", 1 ], + "max-len": 0, + "max-statements-per-line": "off", + "multiline-ternary": "off", "new-cap": [ "error", { @@ -1612,19 +1673,24 @@ export default [ "newIsCapExceptions": [] } ], + "new-parens": "off", + "newline-per-chained-call": "off", "no-alert": "error", "no-array-constructor": "error", + "no-arrow-condition": "off", "no-async-promise-executor": "error", "no-await-in-loop": "error", "no-bitwise": "error", "no-caller": "error", "no-case-declarations": "error", "no-class-assign": "error", + "no-comma-dangle": "off", "no-compare-neg-zero": "error", "no-cond-assign": [ "error", "always" ], + "no-confusing-arrow": 0, "no-console": "warn", "no-const-assign": "error", "no-constant-binary-expression": "error", @@ -1665,7 +1731,10 @@ export default [ "no-extra-bind": "error", "no-extra-boolean-cast": "error", "no-extra-label": "error", + "no-extra-parens": "off", + "no-extra-semi": "off", "no-fallthrough": "error", + "no-floating-decimal": "off", "no-func-assign": "error", "no-global-assign": [ "error", @@ -1693,10 +1762,14 @@ export default [ "no-loss-of-precision": "error", "no-magic-numbers": "off", "no-misleading-character-class": "error", + "no-mixed-operators": 0, + "no-mixed-spaces-and-tabs": "off", "no-multi-assign": [ "error" ], + "no-multi-spaces": "off", "no-multi-str": "error", + "no-multiple-empty-lines": "off", "no-nested-ternary": "error", "no-new": "error", "no-new-func": "error", @@ -1734,6 +1807,7 @@ export default [ "no-prototype-builtins": "error", "no-redeclare": "error", "no-regex-spaces": "error", + "no-reserved-keys": "off", "no-restricted-exports": [ "error", { @@ -2071,14 +2145,18 @@ export default [ "no-setter-return": "error", "no-shadow": "error", "no-shadow-restricted-names": "error", + "no-space-before-semi": "off", + "no-spaced-func": "off", "no-sparse-arrays": "error", + "no-tabs": 0, "no-template-curly-in-string": "error", "no-this-before-super": "error", "no-throw-literal": "error", + "no-trailing-spaces": "off", "no-undef": "error", "no-undef-init": "error", "no-underscore-dangle": "off", - "no-unexpected-multiline": "error", + "no-unexpected-multiline": 0, "no-unmodified-loop-condition": "error", "no-unneeded-ternary": [ "error", @@ -2136,7 +2214,13 @@ export default [ ], "no-useless-return": "error", "no-var": "error", + "no-whitespace-before-property": "off", "no-with": "error", + "no-wrap-func": "off", + "nonblock-statement-body-position": "off", + "object-curly-newline": "off", + "object-curly-spacing": "off", + "object-property-newline": "off", "object-shorthand": [ "error", "always", @@ -2149,10 +2233,13 @@ export default [ "error", "never" ], + "one-var-declaration-per-line": "off", "operator-assignment": [ "error", "always" ], + "operator-linebreak": "off", + "padded-blocks": "off", "prefer-arrow-callback": "off", "prefer-const": [ "error", @@ -2180,6 +2267,8 @@ export default [ "prefer-rest-params": "error", "prefer-spread": "error", "prefer-template": "error", + "quote-props": "off", + "quotes": 0, "radix": "error", "react-hooks/exhaustive-deps": "error", "react-hooks/rules-of-hooks": "error", @@ -2230,11 +2319,9 @@ export default [ "always": [] } ], - "react/jsx-closing-bracket-location": [ - "error", - "line-aligned" - ], - "react/jsx-closing-tag-location": "error", + "react/jsx-child-element-spacing": "off", + "react/jsx-closing-bracket-location": "off", + "react/jsx-closing-tag-location": "off", "react/jsx-curly-brace-presence": [ "error", { @@ -2242,20 +2329,8 @@ export default [ "props": "never" } ], - "react/jsx-curly-newline": [ - "error", - { - "multiline": "consistent", - "singleline": "consistent" - } - ], - "react/jsx-curly-spacing": [ - "error", - "never", - { - "allowMultiline": true - } - ], + "react/jsx-curly-newline": "off", + "react/jsx-curly-spacing": "off", "react/jsx-equals-spacing": "off", "react/jsx-filename-extension": [ 2, @@ -2266,27 +2341,16 @@ export default [ ] } ], - "react/jsx-first-prop-new-line": [ - "error", - "multiline-multiprop" - ], + "react/jsx-first-prop-new-line": "off", "react/jsx-fragments": [ "error", "syntax" ], "react/jsx-indent": "off", - "react/jsx-indent-props": [ - "error", - 2 - ], + "react/jsx-indent-props": "off", "react/jsx-key": 2, - "react/jsx-max-props-per-line": [ - "error", - { - "maximum": 1, - "when": "multiline" - } - ], + "react/jsx-max-props-per-line": "off", + "react/jsx-newline": "off", "react/jsx-no-bind": [ "error", { @@ -2333,7 +2397,7 @@ export default [ "ignore": [] } ], - "react/jsx-props-no-multi-spaces": "error", + "react/jsx-props-no-multi-spaces": "off", "react/jsx-props-no-spread-multi": "error", "react/jsx-props-no-spreading": [ "off", @@ -2344,29 +2408,11 @@ export default [ "html": "enforce" } ], - "react/jsx-tag-spacing": [ - "error", - { - "afterOpening": "never", - "beforeClosing": "never", - "beforeSelfClosing": "always", - "closingSlash": "never" - } - ], + "react/jsx-space-before-closing": "off", + "react/jsx-tag-spacing": "off", "react/jsx-uses-react": "off", "react/jsx-uses-vars": "error", - "react/jsx-wrap-multilines": [ - "error", - { - "arrow": "parens-new-line", - "assignment": "parens-new-line", - "condition": "parens-new-line", - "declaration": "parens-new-line", - "logical": "parens-new-line", - "prop": "ignore", - "return": "parens-new-line" - } - ], + "react/jsx-wrap-multilines": "off", "react/no-access-state-in-setstate": "error", "react/no-array-index-key": "error", "react/no-arrow-function-lifecycle": "error", @@ -2486,11 +2532,37 @@ export default [ "react/void-dom-elements-no-children": "error", "require-atomic-updates": "error", "require-yield": "error", + "rest-spread-spacing": "off", + "semi": "off", + "semi-spacing": "off", + "semi-style": "off", + "space-after-function-name": "off", + "space-after-keywords": "off", + "space-before-blocks": "off", + "space-before-function-paren": "off", + "space-before-function-parentheses": "off", + "space-before-keywords": "off", + "space-in-brackets": "off", + "space-in-parens": "off", + "space-infix-ops": "off", + "space-return-throw-case": "off", + "space-unary-ops": "off", + "space-unary-word-ops": "off", + "standard/array-bracket-even-spacing": "off", + "standard/computed-property-even-spacing": "off", + "standard/object-curly-even-spacing": "off", + "switch-colon-spacing": "off", "symbol-description": "error", + "template-curly-spacing": "off", + "template-tag-spacing": "off", "unicode-bom": [ "error", "never" ], + "unicorn/empty-brace-spaces": "off", + "unicorn/no-nested-ternary": "off", + "unicorn/number-literal-case": "off", + "unicorn/template-indent": 0, "use-isnan": "error", "valid-typeof": [ "error", @@ -2498,6 +2570,48 @@ export default [ "requireStringLiterals": true } ], + "vue/array-bracket-newline": "off", + "vue/array-bracket-spacing": "off", + "vue/array-element-newline": "off", + "vue/arrow-spacing": "off", + "vue/block-spacing": "off", + "vue/block-tag-newline": "off", + "vue/brace-style": "off", + "vue/comma-dangle": "off", + "vue/comma-spacing": "off", + "vue/comma-style": "off", + "vue/dot-location": "off", + "vue/func-call-spacing": "off", + "vue/html-closing-bracket-newline": "off", + "vue/html-closing-bracket-spacing": "off", + "vue/html-end-tags": "off", + "vue/html-indent": "off", + "vue/html-quotes": "off", + "vue/html-self-closing": 0, + "vue/key-spacing": "off", + "vue/keyword-spacing": "off", + "vue/max-attributes-per-line": "off", + "vue/max-len": 0, + "vue/multiline-html-element-content-newline": "off", + "vue/multiline-ternary": "off", + "vue/mustache-interpolation-spacing": "off", + "vue/no-extra-parens": "off", + "vue/no-multi-spaces": "off", + "vue/no-spaces-around-equal-signs-in-attribute": "off", + "vue/object-curly-newline": "off", + "vue/object-curly-spacing": "off", + "vue/object-property-newline": "off", + "vue/operator-linebreak": "off", + "vue/quote-props": "off", + "vue/script-indent": "off", + "vue/singleline-html-element-content-newline": "off", + "vue/space-in-parens": "off", + "vue/space-infix-ops": "off", + "vue/space-unary-ops": "off", + "vue/template-curly-spacing": "off", + "wrap-iife": "off", + "wrap-regex": "off", + "yield-star-spacing": "off", "yoda": "error" }, "settings": { @@ -3686,6 +3800,8 @@ export default [ "react-hooks": "react-hooks-plugin" }, "rules": { + "@babel/object-curly-spacing": "off", + "@babel/semi": "off", "@eslint-react/dom/no-children-in-void-dom-elements": "warn", "@eslint-react/dom/no-dangerously-set-innerhtml": "warn", "@eslint-react/dom/no-dangerously-set-innerhtml-with-children": "error", @@ -3739,16 +3855,26 @@ export default [ "@eslint-react/web-api/no-leaked-resize-observer": "warn", "@eslint-react/web-api/no-leaked-timeout": "warn", "@typescript-eslint/ban-ts-comment": "error", + "@typescript-eslint/block-spacing": "off", + "@typescript-eslint/brace-style": "off", "@typescript-eslint/class-methods-use-this": [ "warn", { "exceptMethods": [] } ], + "@typescript-eslint/comma-dangle": "off", + "@typescript-eslint/comma-spacing": "off", "@typescript-eslint/consistent-type-exports": "error", "@typescript-eslint/consistent-type-imports": "error", "@typescript-eslint/default-param-last": "error", "@typescript-eslint/explicit-module-boundary-types": "off", + "@typescript-eslint/func-call-spacing": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/key-spacing": "off", + "@typescript-eslint/keyword-spacing": "off", + "@typescript-eslint/lines-around-comment": 0, + "@typescript-eslint/member-delimiter-style": "off", "@typescript-eslint/method-signature-style": "error", "@typescript-eslint/naming-convention": [ "error", @@ -3781,6 +3907,8 @@ export default [ "@typescript-eslint/no-empty-object-type": "error", "@typescript-eslint/no-explicit-any": "error", "@typescript-eslint/no-extra-non-null-assertion": "error", + "@typescript-eslint/no-extra-parens": "off", + "@typescript-eslint/no-extra-semi": "off", "@typescript-eslint/no-extraneous-class": "error", "@typescript-eslint/no-floating-promises": [ "error", @@ -3835,6 +3963,7 @@ export default [ "@typescript-eslint/no-useless-constructor": "error", "@typescript-eslint/no-useless-empty-export": "error", "@typescript-eslint/no-wrapper-object-types": "error", + "@typescript-eslint/object-curly-spacing": "off", "@typescript-eslint/prefer-as-const": "error", "@typescript-eslint/prefer-enum-initializers": "error", "@typescript-eslint/prefer-for-of": "off", @@ -3842,21 +3971,37 @@ export default [ "@typescript-eslint/prefer-namespace-keyword": "error", "@typescript-eslint/prefer-reduce-type-parameter": "error", "@typescript-eslint/prefer-return-this-type": "error", + "@typescript-eslint/quotes": 0, "@typescript-eslint/require-array-sort-compare": "error", "@typescript-eslint/return-await": "error", + "@typescript-eslint/semi": "off", + "@typescript-eslint/space-before-blocks": "off", + "@typescript-eslint/space-before-function-paren": "off", + "@typescript-eslint/space-infix-ops": "off", "@typescript-eslint/strict-boolean-expressions": "off", "@typescript-eslint/switch-exhaustiveness-check": "error", "@typescript-eslint/triple-slash-reference": "error", + "@typescript-eslint/type-annotation-spacing": "off", "@typescript-eslint/unified-signatures": "error", "@typescript-eslint/use-unknown-in-catch-callback-variable": "error", + "array-bracket-newline": "off", + "array-bracket-spacing": "off", "array-callback-return": [ "error", { "allowImplicit": true } ], + "array-element-newline": "off", "arrow-body-style": "off", + "arrow-parens": "off", + "arrow-spacing": "off", + "babel/object-curly-spacing": "off", + "babel/quotes": 0, + "babel/semi": "off", "block-scoped-var": "error", + "block-spacing": "off", + "brace-style": "off", "camelcase": "off", "class-methods-use-this": [ "warn", @@ -3881,12 +4026,13 @@ export default [ ] } ], + "comma-dangle": "off", + "comma-spacing": "off", + "comma-style": "off", + "computed-property-spacing": "off", "consistent-return": "error", "constructor-super": "off", - "curly": [ - "error", - "multi-line" - ], + "curly": 0, "default-case": [ "error", { @@ -3895,6 +4041,8 @@ export default [ ], "default-case-last": "error", "default-param-last": "off", + "dot-location": "off", + "eol-last": "off", "eqeqeq": [ "error", "always", @@ -3902,10 +4050,27 @@ export default [ "null": "ignore" } ], + "flowtype/boolean-style": "off", + "flowtype/delimiter-dangle": "off", + "flowtype/generic-spacing": "off", + "flowtype/object-type-curly-spacing": "off", + "flowtype/object-type-delimiter": "off", + "flowtype/quotes": "off", + "flowtype/semi": "off", + "flowtype/space-after-type-colon": "off", + "flowtype/space-before-generic-bracket": "off", + "flowtype/space-before-type-colon": "off", + "flowtype/union-intersection-spacing": "off", "for-direction": "error", + "func-call-spacing": "off", "func-names": "warn", + "function-call-argument-newline": "off", + "function-paren-newline": "off", + "generator-star": "off", + "generator-star-spacing": "off", "getter-return": "off", "grouped-accessor-pairs": "error", + "implicit-arrow-linebreak": "off", "import-x/consistent-type-specifier-style": "off", "import-x/default": "error", "import-x/export": "error", @@ -3929,7 +4094,7 @@ export default [ "import-x/no-cycle": [ "error", { - "maxDepth": "∞" + "ignoreExternal": true } ], "import-x/no-deprecated": "warn", @@ -4001,6 +4166,8 @@ export default [ ], "import-x/no-webpack-loader-syntax": "error", "import-x/prefer-default-export": "off", + "indent": "off", + "indent-legacy": "off", "jsx-a11y/alt-text": [ "error", { @@ -4224,10 +4391,18 @@ export default [ "jsx-a11y/role-supports-aria-props": "error", "jsx-a11y/scope": "error", "jsx-a11y/tabindex-no-positive": "error", + "jsx-quotes": "off", + "key-spacing": "off", + "keyword-spacing": "off", + "linebreak-style": "off", + "lines-around-comment": 0, "max-classes-per-file": [ "error", 1 ], + "max-len": 0, + "max-statements-per-line": "off", + "multiline-ternary": "off", "new-cap": [ "error", { @@ -4241,19 +4416,24 @@ export default [ "newIsCapExceptions": [] } ], + "new-parens": "off", + "newline-per-chained-call": "off", "no-alert": "error", "no-array-constructor": "off", + "no-arrow-condition": "off", "no-async-promise-executor": "error", "no-await-in-loop": "error", "no-bitwise": "error", "no-caller": "error", "no-case-declarations": "error", "no-class-assign": "off", + "no-comma-dangle": "off", "no-compare-neg-zero": "error", "no-cond-assign": [ "error", "always" ], + "no-confusing-arrow": 0, "no-console": "warn", "no-const-assign": "off", "no-constant-binary-expression": "error", @@ -4294,7 +4474,10 @@ export default [ "no-extra-bind": "error", "no-extra-boolean-cast": "error", "no-extra-label": "error", + "no-extra-parens": "off", + "no-extra-semi": "off", "no-fallthrough": "error", + "no-floating-decimal": "off", "no-func-assign": "off", "no-global-assign": [ "error", @@ -4322,10 +4505,14 @@ export default [ "no-loss-of-precision": "error", "no-magic-numbers": "off", "no-misleading-character-class": "error", + "no-mixed-operators": 0, + "no-mixed-spaces-and-tabs": "off", "no-multi-assign": [ "error" ], + "no-multi-spaces": "off", "no-multi-str": "error", + "no-multiple-empty-lines": "off", "no-nested-ternary": "error", "no-new": "error", "no-new-func": "error", @@ -4364,6 +4551,7 @@ export default [ "no-prototype-builtins": "error", "no-redeclare": "off", "no-regex-spaces": "error", + "no-reserved-keys": "off", "no-restricted-exports": [ "error", { @@ -4696,14 +4884,18 @@ export default [ "no-setter-return": "off", "no-shadow": "off", "no-shadow-restricted-names": "error", + "no-space-before-semi": "off", + "no-spaced-func": "off", "no-sparse-arrays": "error", + "no-tabs": 0, "no-template-curly-in-string": "error", "no-this-before-super": "off", "no-throw-literal": "error", + "no-trailing-spaces": "off", "no-undef": "off", "no-undef-init": "error", "no-underscore-dangle": "off", - "no-unexpected-multiline": "error", + "no-unexpected-multiline": 0, "no-unmodified-loop-condition": "error", "no-unneeded-ternary": [ "error", @@ -4747,7 +4939,13 @@ export default [ ], "no-useless-return": "error", "no-var": "error", + "no-whitespace-before-property": "off", "no-with": "error", + "no-wrap-func": "off", + "nonblock-statement-body-position": "off", + "object-curly-newline": "off", + "object-curly-spacing": "off", + "object-property-newline": "off", "object-shorthand": [ "error", "always", @@ -4760,10 +4958,13 @@ export default [ "error", "never" ], + "one-var-declaration-per-line": "off", "operator-assignment": [ "error", "always" ], + "operator-linebreak": "off", + "padded-blocks": "off", "prefer-arrow-callback": "off", "prefer-const": "error", "prefer-exponentiation-operator": "error", @@ -4785,6 +4986,8 @@ export default [ "prefer-rest-params": "error", "prefer-spread": "error", "prefer-template": "error", + "quote-props": "off", + "quotes": 0, "radix": "error", "react-hooks/exhaustive-deps": "error", "react-hooks/rules-of-hooks": "error", @@ -4835,11 +5038,9 @@ export default [ "always": [] } ], - "react/jsx-closing-bracket-location": [ - "error", - "line-aligned" - ], - "react/jsx-closing-tag-location": "error", + "react/jsx-child-element-spacing": "off", + "react/jsx-closing-bracket-location": "off", + "react/jsx-closing-tag-location": "off", "react/jsx-curly-brace-presence": [ "error", { @@ -4847,20 +5048,8 @@ export default [ "props": "never" } ], - "react/jsx-curly-newline": [ - "error", - { - "multiline": "consistent", - "singleline": "consistent" - } - ], - "react/jsx-curly-spacing": [ - "error", - "never", - { - "allowMultiline": true - } - ], + "react/jsx-curly-newline": "off", + "react/jsx-curly-spacing": "off", "react/jsx-equals-spacing": "off", "react/jsx-filename-extension": [ 2, @@ -4873,27 +5062,16 @@ export default [ ] } ], - "react/jsx-first-prop-new-line": [ - "error", - "multiline-multiprop" - ], + "react/jsx-first-prop-new-line": "off", "react/jsx-fragments": [ "error", "syntax" ], "react/jsx-indent": "off", - "react/jsx-indent-props": [ - "error", - 2 - ], + "react/jsx-indent-props": "off", "react/jsx-key": 2, - "react/jsx-max-props-per-line": [ - "error", - { - "maximum": 1, - "when": "multiline" - } - ], + "react/jsx-max-props-per-line": "off", + "react/jsx-newline": "off", "react/jsx-no-bind": [ "error", { @@ -4940,7 +5118,7 @@ export default [ "ignore": [] } ], - "react/jsx-props-no-multi-spaces": "error", + "react/jsx-props-no-multi-spaces": "off", "react/jsx-props-no-spread-multi": "error", "react/jsx-props-no-spreading": [ "off", @@ -4951,29 +5129,11 @@ export default [ "html": "enforce" } ], - "react/jsx-tag-spacing": [ - "error", - { - "afterOpening": "never", - "beforeClosing": "never", - "beforeSelfClosing": "always", - "closingSlash": "never" - } - ], + "react/jsx-space-before-closing": "off", + "react/jsx-tag-spacing": "off", "react/jsx-uses-react": "off", "react/jsx-uses-vars": "error", - "react/jsx-wrap-multilines": [ - "error", - { - "arrow": "parens-new-line", - "assignment": "parens-new-line", - "condition": "parens-new-line", - "declaration": "parens-new-line", - "logical": "parens-new-line", - "prop": "ignore", - "return": "parens-new-line" - } - ], + "react/jsx-wrap-multilines": "off", "react/no-access-state-in-setstate": "error", "react/no-array-index-key": "error", "react/no-arrow-function-lifecycle": "error", @@ -5093,11 +5253,37 @@ export default [ "react/void-dom-elements-no-children": "error", "require-atomic-updates": "error", "require-yield": "error", + "rest-spread-spacing": "off", + "semi": "off", + "semi-spacing": "off", + "semi-style": "off", + "space-after-function-name": "off", + "space-after-keywords": "off", + "space-before-blocks": "off", + "space-before-function-paren": "off", + "space-before-function-parentheses": "off", + "space-before-keywords": "off", + "space-in-brackets": "off", + "space-in-parens": "off", + "space-infix-ops": "off", + "space-return-throw-case": "off", + "space-unary-ops": "off", + "space-unary-word-ops": "off", + "standard/array-bracket-even-spacing": "off", + "standard/computed-property-even-spacing": "off", + "standard/object-curly-even-spacing": "off", + "switch-colon-spacing": "off", "symbol-description": "error", + "template-curly-spacing": "off", + "template-tag-spacing": "off", "unicode-bom": [ "error", "never" ], + "unicorn/empty-brace-spaces": "off", + "unicorn/no-nested-ternary": "off", + "unicorn/number-literal-case": "off", + "unicorn/template-indent": 0, "use-isnan": "error", "valid-typeof": [ "error", @@ -5105,6 +5291,48 @@ export default [ "requireStringLiterals": true } ], + "vue/array-bracket-newline": "off", + "vue/array-bracket-spacing": "off", + "vue/array-element-newline": "off", + "vue/arrow-spacing": "off", + "vue/block-spacing": "off", + "vue/block-tag-newline": "off", + "vue/brace-style": "off", + "vue/comma-dangle": "off", + "vue/comma-spacing": "off", + "vue/comma-style": "off", + "vue/dot-location": "off", + "vue/func-call-spacing": "off", + "vue/html-closing-bracket-newline": "off", + "vue/html-closing-bracket-spacing": "off", + "vue/html-end-tags": "off", + "vue/html-indent": "off", + "vue/html-quotes": "off", + "vue/html-self-closing": 0, + "vue/key-spacing": "off", + "vue/keyword-spacing": "off", + "vue/max-attributes-per-line": "off", + "vue/max-len": 0, + "vue/multiline-html-element-content-newline": "off", + "vue/multiline-ternary": "off", + "vue/mustache-interpolation-spacing": "off", + "vue/no-extra-parens": "off", + "vue/no-multi-spaces": "off", + "vue/no-spaces-around-equal-signs-in-attribute": "off", + "vue/object-curly-newline": "off", + "vue/object-curly-spacing": "off", + "vue/object-property-newline": "off", + "vue/operator-linebreak": "off", + "vue/quote-props": "off", + "vue/script-indent": "off", + "vue/singleline-html-element-content-newline": "off", + "vue/space-in-parens": "off", + "vue/space-infix-ops": "off", + "vue/space-unary-ops": "off", + "vue/template-curly-spacing": "off", + "wrap-iife": "off", + "wrap-regex": "off", + "yield-star-spacing": "off", "yoda": "error" }, "settings": { diff --git a/packages/eslint-config/test/generated/recommended-final-config.js b/packages/eslint-config/test/generated/recommended-final-config.js index 835507d..2ad11b0 100644 --- a/packages/eslint-config/test/generated/recommended-final-config.js +++ b/packages/eslint-config/test/generated/recommended-final-config.js @@ -1145,14 +1145,45 @@ export default [ "import-x": "import-x-plugin" }, "rules": { + "@babel/object-curly-spacing": "off", + "@babel/semi": "off", + "@typescript-eslint/block-spacing": "off", + "@typescript-eslint/brace-style": "off", + "@typescript-eslint/comma-dangle": "off", + "@typescript-eslint/comma-spacing": "off", + "@typescript-eslint/func-call-spacing": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/key-spacing": "off", + "@typescript-eslint/keyword-spacing": "off", + "@typescript-eslint/lines-around-comment": 0, + "@typescript-eslint/member-delimiter-style": "off", + "@typescript-eslint/no-extra-parens": "off", + "@typescript-eslint/no-extra-semi": "off", + "@typescript-eslint/object-curly-spacing": "off", + "@typescript-eslint/quotes": 0, + "@typescript-eslint/semi": "off", + "@typescript-eslint/space-before-blocks": "off", + "@typescript-eslint/space-before-function-paren": "off", + "@typescript-eslint/space-infix-ops": "off", + "@typescript-eslint/type-annotation-spacing": "off", + "array-bracket-newline": "off", + "array-bracket-spacing": "off", "array-callback-return": [ "error", { "allowImplicit": true } ], + "array-element-newline": "off", "arrow-body-style": "off", + "arrow-parens": "off", + "arrow-spacing": "off", + "babel/object-curly-spacing": "off", + "babel/quotes": 0, + "babel/semi": "off", "block-scoped-var": "error", + "block-spacing": "off", + "brace-style": "off", "camelcase": [ "error", { @@ -1166,12 +1197,13 @@ export default [ "exceptMethods": [] } ], + "comma-dangle": "off", + "comma-spacing": "off", + "comma-style": "off", + "computed-property-spacing": "off", "consistent-return": "error", "constructor-super": "error", - "curly": [ - "error", - "multi-line" - ], + "curly": 0, "default-case": [ "error", { @@ -1180,6 +1212,8 @@ export default [ ], "default-case-last": "error", "default-param-last": "error", + "dot-location": "off", + "eol-last": "off", "eqeqeq": [ "error", "always", @@ -1187,8 +1221,24 @@ export default [ "null": "ignore" } ], + "flowtype/boolean-style": "off", + "flowtype/delimiter-dangle": "off", + "flowtype/generic-spacing": "off", + "flowtype/object-type-curly-spacing": "off", + "flowtype/object-type-delimiter": "off", + "flowtype/quotes": "off", + "flowtype/semi": "off", + "flowtype/space-after-type-colon": "off", + "flowtype/space-before-generic-bracket": "off", + "flowtype/space-before-type-colon": "off", + "flowtype/union-intersection-spacing": "off", "for-direction": "error", + "func-call-spacing": "off", "func-names": "warn", + "function-call-argument-newline": "off", + "function-paren-newline": "off", + "generator-star": "off", + "generator-star-spacing": "off", "getter-return": [ "error", { @@ -1196,6 +1246,7 @@ export default [ } ], "grouped-accessor-pairs": "error", + "implicit-arrow-linebreak": "off", "import-x/consistent-type-specifier-style": "off", "import-x/default": "error", "import-x/export": "error", @@ -1219,7 +1270,7 @@ export default [ "import-x/no-cycle": [ "error", { - "maxDepth": "∞" + "ignoreExternal": true } ], "import-x/no-deprecated": "warn", @@ -1291,10 +1342,20 @@ export default [ ], "import-x/no-webpack-loader-syntax": "error", "import-x/prefer-default-export": "off", + "indent": "off", + "indent-legacy": "off", + "jsx-quotes": "off", + "key-spacing": "off", + "keyword-spacing": "off", + "linebreak-style": "off", + "lines-around-comment": 0, "max-classes-per-file": [ "error", 1 ], + "max-len": 0, + "max-statements-per-line": "off", + "multiline-ternary": "off", "new-cap": [ "error", { @@ -1308,19 +1369,24 @@ export default [ "newIsCapExceptions": [] } ], + "new-parens": "off", + "newline-per-chained-call": "off", "no-alert": "error", "no-array-constructor": "error", + "no-arrow-condition": "off", "no-async-promise-executor": "error", "no-await-in-loop": "error", "no-bitwise": "error", "no-caller": "error", "no-case-declarations": "error", "no-class-assign": "error", + "no-comma-dangle": "off", "no-compare-neg-zero": "error", "no-cond-assign": [ "error", "always" ], + "no-confusing-arrow": 0, "no-console": "warn", "no-const-assign": "error", "no-constant-binary-expression": "error", @@ -1361,7 +1427,10 @@ export default [ "no-extra-bind": "error", "no-extra-boolean-cast": "error", "no-extra-label": "error", + "no-extra-parens": "off", + "no-extra-semi": "off", "no-fallthrough": "error", + "no-floating-decimal": "off", "no-func-assign": "error", "no-global-assign": [ "error", @@ -1389,10 +1458,14 @@ export default [ "no-loss-of-precision": "error", "no-magic-numbers": "off", "no-misleading-character-class": "error", + "no-mixed-operators": 0, + "no-mixed-spaces-and-tabs": "off", "no-multi-assign": [ "error" ], + "no-multi-spaces": "off", "no-multi-str": "error", + "no-multiple-empty-lines": "off", "no-nested-ternary": "error", "no-new": "error", "no-new-func": "error", @@ -1430,6 +1503,7 @@ export default [ "no-prototype-builtins": "error", "no-redeclare": "error", "no-regex-spaces": "error", + "no-reserved-keys": "off", "no-restricted-exports": [ "error", { @@ -1767,14 +1841,18 @@ export default [ "no-setter-return": "error", "no-shadow": "error", "no-shadow-restricted-names": "error", + "no-space-before-semi": "off", + "no-spaced-func": "off", "no-sparse-arrays": "error", + "no-tabs": 0, "no-template-curly-in-string": "error", "no-this-before-super": "error", "no-throw-literal": "error", + "no-trailing-spaces": "off", "no-undef": "error", "no-undef-init": "error", "no-underscore-dangle": "off", - "no-unexpected-multiline": "error", + "no-unexpected-multiline": 0, "no-unmodified-loop-condition": "error", "no-unneeded-ternary": [ "error", @@ -1832,7 +1910,13 @@ export default [ ], "no-useless-return": "error", "no-var": "error", + "no-whitespace-before-property": "off", "no-with": "error", + "no-wrap-func": "off", + "nonblock-statement-body-position": "off", + "object-curly-newline": "off", + "object-curly-spacing": "off", + "object-property-newline": "off", "object-shorthand": [ "error", "always", @@ -1845,10 +1929,13 @@ export default [ "error", "never" ], + "one-var-declaration-per-line": "off", "operator-assignment": [ "error", "always" ], + "operator-linebreak": "off", + "padded-blocks": "off", "prefer-arrow-callback": "off", "prefer-const": [ "error", @@ -1876,14 +1963,58 @@ export default [ "prefer-rest-params": "error", "prefer-spread": "error", "prefer-template": "error", + "quote-props": "off", + "quotes": 0, "radix": "error", + "react/jsx-child-element-spacing": "off", + "react/jsx-closing-bracket-location": "off", + "react/jsx-closing-tag-location": "off", + "react/jsx-curly-newline": "off", + "react/jsx-curly-spacing": "off", + "react/jsx-equals-spacing": "off", + "react/jsx-first-prop-new-line": "off", + "react/jsx-indent": "off", + "react/jsx-indent-props": "off", + "react/jsx-max-props-per-line": "off", + "react/jsx-newline": "off", + "react/jsx-one-expression-per-line": "off", + "react/jsx-props-no-multi-spaces": "off", + "react/jsx-space-before-closing": "off", + "react/jsx-tag-spacing": "off", + "react/jsx-wrap-multilines": "off", "require-atomic-updates": "error", "require-yield": "error", + "rest-spread-spacing": "off", + "semi": "off", + "semi-spacing": "off", + "semi-style": "off", + "space-after-function-name": "off", + "space-after-keywords": "off", + "space-before-blocks": "off", + "space-before-function-paren": "off", + "space-before-function-parentheses": "off", + "space-before-keywords": "off", + "space-in-brackets": "off", + "space-in-parens": "off", + "space-infix-ops": "off", + "space-return-throw-case": "off", + "space-unary-ops": "off", + "space-unary-word-ops": "off", + "standard/array-bracket-even-spacing": "off", + "standard/computed-property-even-spacing": "off", + "standard/object-curly-even-spacing": "off", + "switch-colon-spacing": "off", "symbol-description": "error", + "template-curly-spacing": "off", + "template-tag-spacing": "off", "unicode-bom": [ "error", "never" ], + "unicorn/empty-brace-spaces": "off", + "unicorn/no-nested-ternary": "off", + "unicorn/number-literal-case": "off", + "unicorn/template-indent": 0, "use-isnan": "error", "valid-typeof": [ "error", @@ -1891,6 +2022,48 @@ export default [ "requireStringLiterals": true } ], + "vue/array-bracket-newline": "off", + "vue/array-bracket-spacing": "off", + "vue/array-element-newline": "off", + "vue/arrow-spacing": "off", + "vue/block-spacing": "off", + "vue/block-tag-newline": "off", + "vue/brace-style": "off", + "vue/comma-dangle": "off", + "vue/comma-spacing": "off", + "vue/comma-style": "off", + "vue/dot-location": "off", + "vue/func-call-spacing": "off", + "vue/html-closing-bracket-newline": "off", + "vue/html-closing-bracket-spacing": "off", + "vue/html-end-tags": "off", + "vue/html-indent": "off", + "vue/html-quotes": "off", + "vue/html-self-closing": 0, + "vue/key-spacing": "off", + "vue/keyword-spacing": "off", + "vue/max-attributes-per-line": "off", + "vue/max-len": 0, + "vue/multiline-html-element-content-newline": "off", + "vue/multiline-ternary": "off", + "vue/mustache-interpolation-spacing": "off", + "vue/no-extra-parens": "off", + "vue/no-multi-spaces": "off", + "vue/no-spaces-around-equal-signs-in-attribute": "off", + "vue/object-curly-newline": "off", + "vue/object-curly-spacing": "off", + "vue/object-property-newline": "off", + "vue/operator-linebreak": "off", + "vue/quote-props": "off", + "vue/script-indent": "off", + "vue/singleline-html-element-content-newline": "off", + "vue/space-in-parens": "off", + "vue/space-infix-ops": "off", + "vue/space-unary-ops": "off", + "vue/template-curly-spacing": "off", + "wrap-iife": "off", + "wrap-regex": "off", + "yield-star-spacing": "off", "yoda": "error" } }, @@ -3050,17 +3223,29 @@ export default [ "import-x": "import-x-plugin" }, "rules": { + "@babel/object-curly-spacing": "off", + "@babel/semi": "off", "@typescript-eslint/ban-ts-comment": "error", + "@typescript-eslint/block-spacing": "off", + "@typescript-eslint/brace-style": "off", "@typescript-eslint/class-methods-use-this": [ "warn", { "exceptMethods": [] } ], + "@typescript-eslint/comma-dangle": "off", + "@typescript-eslint/comma-spacing": "off", "@typescript-eslint/consistent-type-exports": "error", "@typescript-eslint/consistent-type-imports": "error", "@typescript-eslint/default-param-last": "error", "@typescript-eslint/explicit-module-boundary-types": "off", + "@typescript-eslint/func-call-spacing": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/key-spacing": "off", + "@typescript-eslint/keyword-spacing": "off", + "@typescript-eslint/lines-around-comment": 0, + "@typescript-eslint/member-delimiter-style": "off", "@typescript-eslint/method-signature-style": "error", "@typescript-eslint/naming-convention": [ "error", @@ -3093,6 +3278,8 @@ export default [ "@typescript-eslint/no-empty-object-type": "error", "@typescript-eslint/no-explicit-any": "error", "@typescript-eslint/no-extra-non-null-assertion": "error", + "@typescript-eslint/no-extra-parens": "off", + "@typescript-eslint/no-extra-semi": "off", "@typescript-eslint/no-extraneous-class": "error", "@typescript-eslint/no-floating-promises": [ "error", @@ -3147,6 +3334,7 @@ export default [ "@typescript-eslint/no-useless-constructor": "error", "@typescript-eslint/no-useless-empty-export": "error", "@typescript-eslint/no-wrapper-object-types": "error", + "@typescript-eslint/object-curly-spacing": "off", "@typescript-eslint/prefer-as-const": "error", "@typescript-eslint/prefer-enum-initializers": "error", "@typescript-eslint/prefer-for-of": "off", @@ -3154,29 +3342,46 @@ export default [ "@typescript-eslint/prefer-namespace-keyword": "error", "@typescript-eslint/prefer-reduce-type-parameter": "error", "@typescript-eslint/prefer-return-this-type": "error", + "@typescript-eslint/quotes": 0, "@typescript-eslint/require-array-sort-compare": "error", "@typescript-eslint/return-await": "error", + "@typescript-eslint/semi": "off", + "@typescript-eslint/space-before-blocks": "off", + "@typescript-eslint/space-before-function-paren": "off", + "@typescript-eslint/space-infix-ops": "off", "@typescript-eslint/strict-boolean-expressions": "off", "@typescript-eslint/switch-exhaustiveness-check": "error", "@typescript-eslint/triple-slash-reference": "error", + "@typescript-eslint/type-annotation-spacing": "off", "@typescript-eslint/unified-signatures": "error", "@typescript-eslint/use-unknown-in-catch-callback-variable": "error", + "array-bracket-newline": "off", + "array-bracket-spacing": "off", "array-callback-return": [ "error", { "allowImplicit": true } ], + "array-element-newline": "off", "arrow-body-style": "off", + "arrow-parens": "off", + "arrow-spacing": "off", + "babel/object-curly-spacing": "off", + "babel/quotes": 0, + "babel/semi": "off", "block-scoped-var": "error", + "block-spacing": "off", + "brace-style": "off", "camelcase": "off", "class-methods-use-this": "off", + "comma-dangle": "off", + "comma-spacing": "off", + "comma-style": "off", + "computed-property-spacing": "off", "consistent-return": "error", "constructor-super": "off", - "curly": [ - "error", - "multi-line" - ], + "curly": 0, "default-case": [ "error", { @@ -3185,6 +3390,8 @@ export default [ ], "default-case-last": "error", "default-param-last": "off", + "dot-location": "off", + "eol-last": "off", "eqeqeq": [ "error", "always", @@ -3192,10 +3399,27 @@ export default [ "null": "ignore" } ], + "flowtype/boolean-style": "off", + "flowtype/delimiter-dangle": "off", + "flowtype/generic-spacing": "off", + "flowtype/object-type-curly-spacing": "off", + "flowtype/object-type-delimiter": "off", + "flowtype/quotes": "off", + "flowtype/semi": "off", + "flowtype/space-after-type-colon": "off", + "flowtype/space-before-generic-bracket": "off", + "flowtype/space-before-type-colon": "off", + "flowtype/union-intersection-spacing": "off", "for-direction": "error", + "func-call-spacing": "off", "func-names": "warn", + "function-call-argument-newline": "off", + "function-paren-newline": "off", + "generator-star": "off", + "generator-star-spacing": "off", "getter-return": "off", "grouped-accessor-pairs": "error", + "implicit-arrow-linebreak": "off", "import-x/consistent-type-specifier-style": "off", "import-x/default": "error", "import-x/export": "error", @@ -3219,7 +3443,7 @@ export default [ "import-x/no-cycle": [ "error", { - "maxDepth": "∞" + "ignoreExternal": true } ], "import-x/no-deprecated": "warn", @@ -3291,10 +3515,20 @@ export default [ ], "import-x/no-webpack-loader-syntax": "error", "import-x/prefer-default-export": "off", + "indent": "off", + "indent-legacy": "off", + "jsx-quotes": "off", + "key-spacing": "off", + "keyword-spacing": "off", + "linebreak-style": "off", + "lines-around-comment": 0, "max-classes-per-file": [ "error", 1 ], + "max-len": 0, + "max-statements-per-line": "off", + "multiline-ternary": "off", "new-cap": [ "error", { @@ -3308,19 +3542,24 @@ export default [ "newIsCapExceptions": [] } ], + "new-parens": "off", + "newline-per-chained-call": "off", "no-alert": "error", "no-array-constructor": "off", + "no-arrow-condition": "off", "no-async-promise-executor": "error", "no-await-in-loop": "error", "no-bitwise": "error", "no-caller": "error", "no-case-declarations": "error", "no-class-assign": "off", + "no-comma-dangle": "off", "no-compare-neg-zero": "error", "no-cond-assign": [ "error", "always" ], + "no-confusing-arrow": 0, "no-console": "warn", "no-const-assign": "off", "no-constant-binary-expression": "error", @@ -3361,7 +3600,10 @@ export default [ "no-extra-bind": "error", "no-extra-boolean-cast": "error", "no-extra-label": "error", + "no-extra-parens": "off", + "no-extra-semi": "off", "no-fallthrough": "error", + "no-floating-decimal": "off", "no-func-assign": "off", "no-global-assign": [ "error", @@ -3389,10 +3631,14 @@ export default [ "no-loss-of-precision": "error", "no-magic-numbers": "off", "no-misleading-character-class": "error", + "no-mixed-operators": 0, + "no-mixed-spaces-and-tabs": "off", "no-multi-assign": [ "error" ], + "no-multi-spaces": "off", "no-multi-str": "error", + "no-multiple-empty-lines": "off", "no-nested-ternary": "error", "no-new": "error", "no-new-func": "error", @@ -3431,6 +3677,7 @@ export default [ "no-prototype-builtins": "error", "no-redeclare": "off", "no-regex-spaces": "error", + "no-reserved-keys": "off", "no-restricted-exports": [ "error", { @@ -3763,14 +4010,18 @@ export default [ "no-setter-return": "off", "no-shadow": "off", "no-shadow-restricted-names": "error", + "no-space-before-semi": "off", + "no-spaced-func": "off", "no-sparse-arrays": "error", + "no-tabs": 0, "no-template-curly-in-string": "error", "no-this-before-super": "off", "no-throw-literal": "error", + "no-trailing-spaces": "off", "no-undef": "off", "no-undef-init": "error", "no-underscore-dangle": "off", - "no-unexpected-multiline": "error", + "no-unexpected-multiline": 0, "no-unmodified-loop-condition": "error", "no-unneeded-ternary": [ "error", @@ -3814,7 +4065,13 @@ export default [ ], "no-useless-return": "error", "no-var": "error", + "no-whitespace-before-property": "off", "no-with": "error", + "no-wrap-func": "off", + "nonblock-statement-body-position": "off", + "object-curly-newline": "off", + "object-curly-spacing": "off", + "object-property-newline": "off", "object-shorthand": [ "error", "always", @@ -3827,10 +4084,13 @@ export default [ "error", "never" ], + "one-var-declaration-per-line": "off", "operator-assignment": [ "error", "always" ], + "operator-linebreak": "off", + "padded-blocks": "off", "prefer-arrow-callback": "off", "prefer-const": "error", "prefer-exponentiation-operator": "error", @@ -3852,14 +4112,58 @@ export default [ "prefer-rest-params": "error", "prefer-spread": "error", "prefer-template": "error", + "quote-props": "off", + "quotes": 0, "radix": "error", + "react/jsx-child-element-spacing": "off", + "react/jsx-closing-bracket-location": "off", + "react/jsx-closing-tag-location": "off", + "react/jsx-curly-newline": "off", + "react/jsx-curly-spacing": "off", + "react/jsx-equals-spacing": "off", + "react/jsx-first-prop-new-line": "off", + "react/jsx-indent": "off", + "react/jsx-indent-props": "off", + "react/jsx-max-props-per-line": "off", + "react/jsx-newline": "off", + "react/jsx-one-expression-per-line": "off", + "react/jsx-props-no-multi-spaces": "off", + "react/jsx-space-before-closing": "off", + "react/jsx-tag-spacing": "off", + "react/jsx-wrap-multilines": "off", "require-atomic-updates": "error", "require-yield": "error", + "rest-spread-spacing": "off", + "semi": "off", + "semi-spacing": "off", + "semi-style": "off", + "space-after-function-name": "off", + "space-after-keywords": "off", + "space-before-blocks": "off", + "space-before-function-paren": "off", + "space-before-function-parentheses": "off", + "space-before-keywords": "off", + "space-in-brackets": "off", + "space-in-parens": "off", + "space-infix-ops": "off", + "space-return-throw-case": "off", + "space-unary-ops": "off", + "space-unary-word-ops": "off", + "standard/array-bracket-even-spacing": "off", + "standard/computed-property-even-spacing": "off", + "standard/object-curly-even-spacing": "off", + "switch-colon-spacing": "off", "symbol-description": "error", + "template-curly-spacing": "off", + "template-tag-spacing": "off", "unicode-bom": [ "error", "never" ], + "unicorn/empty-brace-spaces": "off", + "unicorn/no-nested-ternary": "off", + "unicorn/number-literal-case": "off", + "unicorn/template-indent": 0, "use-isnan": "error", "valid-typeof": [ "error", @@ -3867,6 +4171,48 @@ export default [ "requireStringLiterals": true } ], + "vue/array-bracket-newline": "off", + "vue/array-bracket-spacing": "off", + "vue/array-element-newline": "off", + "vue/arrow-spacing": "off", + "vue/block-spacing": "off", + "vue/block-tag-newline": "off", + "vue/brace-style": "off", + "vue/comma-dangle": "off", + "vue/comma-spacing": "off", + "vue/comma-style": "off", + "vue/dot-location": "off", + "vue/func-call-spacing": "off", + "vue/html-closing-bracket-newline": "off", + "vue/html-closing-bracket-spacing": "off", + "vue/html-end-tags": "off", + "vue/html-indent": "off", + "vue/html-quotes": "off", + "vue/html-self-closing": 0, + "vue/key-spacing": "off", + "vue/keyword-spacing": "off", + "vue/max-attributes-per-line": "off", + "vue/max-len": 0, + "vue/multiline-html-element-content-newline": "off", + "vue/multiline-ternary": "off", + "vue/mustache-interpolation-spacing": "off", + "vue/no-extra-parens": "off", + "vue/no-multi-spaces": "off", + "vue/no-spaces-around-equal-signs-in-attribute": "off", + "vue/object-curly-newline": "off", + "vue/object-curly-spacing": "off", + "vue/object-property-newline": "off", + "vue/operator-linebreak": "off", + "vue/quote-props": "off", + "vue/script-indent": "off", + "vue/singleline-html-element-content-newline": "off", + "vue/space-in-parens": "off", + "vue/space-infix-ops": "off", + "vue/space-unary-ops": "off", + "vue/template-curly-spacing": "off", + "wrap-iife": "off", + "wrap-regex": "off", + "yield-star-spacing": "off", "yoda": "error" }, "settings": { diff --git a/packages/eslint-config/test/generated/svelte-final-config.js b/packages/eslint-config/test/generated/svelte-final-config.js index b4f7a3b..0f09aff 100644 --- a/packages/eslint-config/test/generated/svelte-final-config.js +++ b/packages/eslint-config/test/generated/svelte-final-config.js @@ -1145,14 +1145,45 @@ export default [ "import-x": "import-x-plugin" }, "rules": { + "@babel/object-curly-spacing": "off", + "@babel/semi": "off", + "@typescript-eslint/block-spacing": "off", + "@typescript-eslint/brace-style": "off", + "@typescript-eslint/comma-dangle": "off", + "@typescript-eslint/comma-spacing": "off", + "@typescript-eslint/func-call-spacing": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/key-spacing": "off", + "@typescript-eslint/keyword-spacing": "off", + "@typescript-eslint/lines-around-comment": 0, + "@typescript-eslint/member-delimiter-style": "off", + "@typescript-eslint/no-extra-parens": "off", + "@typescript-eslint/no-extra-semi": "off", + "@typescript-eslint/object-curly-spacing": "off", + "@typescript-eslint/quotes": 0, + "@typescript-eslint/semi": "off", + "@typescript-eslint/space-before-blocks": "off", + "@typescript-eslint/space-before-function-paren": "off", + "@typescript-eslint/space-infix-ops": "off", + "@typescript-eslint/type-annotation-spacing": "off", + "array-bracket-newline": "off", + "array-bracket-spacing": "off", "array-callback-return": [ "error", { "allowImplicit": true } ], + "array-element-newline": "off", "arrow-body-style": "off", + "arrow-parens": "off", + "arrow-spacing": "off", + "babel/object-curly-spacing": "off", + "babel/quotes": 0, + "babel/semi": "off", "block-scoped-var": "error", + "block-spacing": "off", + "brace-style": "off", "camelcase": [ "error", { @@ -1166,12 +1197,13 @@ export default [ "exceptMethods": [] } ], + "comma-dangle": "off", + "comma-spacing": "off", + "comma-style": "off", + "computed-property-spacing": "off", "consistent-return": "error", "constructor-super": "error", - "curly": [ - "error", - "multi-line" - ], + "curly": 0, "default-case": [ "error", { @@ -1180,6 +1212,8 @@ export default [ ], "default-case-last": "error", "default-param-last": "error", + "dot-location": "off", + "eol-last": "off", "eqeqeq": [ "error", "always", @@ -1187,8 +1221,24 @@ export default [ "null": "ignore" } ], + "flowtype/boolean-style": "off", + "flowtype/delimiter-dangle": "off", + "flowtype/generic-spacing": "off", + "flowtype/object-type-curly-spacing": "off", + "flowtype/object-type-delimiter": "off", + "flowtype/quotes": "off", + "flowtype/semi": "off", + "flowtype/space-after-type-colon": "off", + "flowtype/space-before-generic-bracket": "off", + "flowtype/space-before-type-colon": "off", + "flowtype/union-intersection-spacing": "off", "for-direction": "error", + "func-call-spacing": "off", "func-names": "warn", + "function-call-argument-newline": "off", + "function-paren-newline": "off", + "generator-star": "off", + "generator-star-spacing": "off", "getter-return": [ "error", { @@ -1196,6 +1246,7 @@ export default [ } ], "grouped-accessor-pairs": "error", + "implicit-arrow-linebreak": "off", "import-x/consistent-type-specifier-style": "off", "import-x/default": "error", "import-x/export": "error", @@ -1219,7 +1270,7 @@ export default [ "import-x/no-cycle": [ "error", { - "maxDepth": "∞" + "ignoreExternal": true } ], "import-x/no-deprecated": "warn", @@ -1291,10 +1342,20 @@ export default [ ], "import-x/no-webpack-loader-syntax": "error", "import-x/prefer-default-export": "off", + "indent": "off", + "indent-legacy": "off", + "jsx-quotes": "off", + "key-spacing": "off", + "keyword-spacing": "off", + "linebreak-style": "off", + "lines-around-comment": 0, "max-classes-per-file": [ "error", 1 ], + "max-len": 0, + "max-statements-per-line": "off", + "multiline-ternary": "off", "new-cap": [ "error", { @@ -1308,19 +1369,24 @@ export default [ "newIsCapExceptions": [] } ], + "new-parens": "off", + "newline-per-chained-call": "off", "no-alert": "error", "no-array-constructor": "error", + "no-arrow-condition": "off", "no-async-promise-executor": "error", "no-await-in-loop": "error", "no-bitwise": "error", "no-caller": "error", "no-case-declarations": "error", "no-class-assign": "error", + "no-comma-dangle": "off", "no-compare-neg-zero": "error", "no-cond-assign": [ "error", "always" ], + "no-confusing-arrow": 0, "no-console": "warn", "no-const-assign": "error", "no-constant-binary-expression": "error", @@ -1361,7 +1427,10 @@ export default [ "no-extra-bind": "error", "no-extra-boolean-cast": "error", "no-extra-label": "error", + "no-extra-parens": "off", + "no-extra-semi": "off", "no-fallthrough": "error", + "no-floating-decimal": "off", "no-func-assign": "error", "no-global-assign": [ "error", @@ -1389,10 +1458,14 @@ export default [ "no-loss-of-precision": "error", "no-magic-numbers": "off", "no-misleading-character-class": "error", + "no-mixed-operators": 0, + "no-mixed-spaces-and-tabs": "off", "no-multi-assign": [ "error" ], + "no-multi-spaces": "off", "no-multi-str": "error", + "no-multiple-empty-lines": "off", "no-nested-ternary": "error", "no-new": "error", "no-new-func": "error", @@ -1430,6 +1503,7 @@ export default [ "no-prototype-builtins": "error", "no-redeclare": "error", "no-regex-spaces": "error", + "no-reserved-keys": "off", "no-restricted-exports": [ "error", { @@ -1767,14 +1841,18 @@ export default [ "no-setter-return": "error", "no-shadow": "error", "no-shadow-restricted-names": "error", + "no-space-before-semi": "off", + "no-spaced-func": "off", "no-sparse-arrays": "error", + "no-tabs": 0, "no-template-curly-in-string": "error", "no-this-before-super": "error", "no-throw-literal": "error", + "no-trailing-spaces": "off", "no-undef": "error", "no-undef-init": "error", "no-underscore-dangle": "off", - "no-unexpected-multiline": "error", + "no-unexpected-multiline": 0, "no-unmodified-loop-condition": "error", "no-unneeded-ternary": [ "error", @@ -1832,7 +1910,13 @@ export default [ ], "no-useless-return": "error", "no-var": "error", + "no-whitespace-before-property": "off", "no-with": "error", + "no-wrap-func": "off", + "nonblock-statement-body-position": "off", + "object-curly-newline": "off", + "object-curly-spacing": "off", + "object-property-newline": "off", "object-shorthand": [ "error", "always", @@ -1845,10 +1929,13 @@ export default [ "error", "never" ], + "one-var-declaration-per-line": "off", "operator-assignment": [ "error", "always" ], + "operator-linebreak": "off", + "padded-blocks": "off", "prefer-arrow-callback": "off", "prefer-const": [ "error", @@ -1876,14 +1963,58 @@ export default [ "prefer-rest-params": "error", "prefer-spread": "error", "prefer-template": "error", + "quote-props": "off", + "quotes": 0, "radix": "error", + "react/jsx-child-element-spacing": "off", + "react/jsx-closing-bracket-location": "off", + "react/jsx-closing-tag-location": "off", + "react/jsx-curly-newline": "off", + "react/jsx-curly-spacing": "off", + "react/jsx-equals-spacing": "off", + "react/jsx-first-prop-new-line": "off", + "react/jsx-indent": "off", + "react/jsx-indent-props": "off", + "react/jsx-max-props-per-line": "off", + "react/jsx-newline": "off", + "react/jsx-one-expression-per-line": "off", + "react/jsx-props-no-multi-spaces": "off", + "react/jsx-space-before-closing": "off", + "react/jsx-tag-spacing": "off", + "react/jsx-wrap-multilines": "off", "require-atomic-updates": "error", "require-yield": "error", + "rest-spread-spacing": "off", + "semi": "off", + "semi-spacing": "off", + "semi-style": "off", + "space-after-function-name": "off", + "space-after-keywords": "off", + "space-before-blocks": "off", + "space-before-function-paren": "off", + "space-before-function-parentheses": "off", + "space-before-keywords": "off", + "space-in-brackets": "off", + "space-in-parens": "off", + "space-infix-ops": "off", + "space-return-throw-case": "off", + "space-unary-ops": "off", + "space-unary-word-ops": "off", + "standard/array-bracket-even-spacing": "off", + "standard/computed-property-even-spacing": "off", + "standard/object-curly-even-spacing": "off", + "switch-colon-spacing": "off", "symbol-description": "error", + "template-curly-spacing": "off", + "template-tag-spacing": "off", "unicode-bom": [ "error", "never" ], + "unicorn/empty-brace-spaces": "off", + "unicorn/no-nested-ternary": "off", + "unicorn/number-literal-case": "off", + "unicorn/template-indent": 0, "use-isnan": "error", "valid-typeof": [ "error", @@ -1891,6 +2022,48 @@ export default [ "requireStringLiterals": true } ], + "vue/array-bracket-newline": "off", + "vue/array-bracket-spacing": "off", + "vue/array-element-newline": "off", + "vue/arrow-spacing": "off", + "vue/block-spacing": "off", + "vue/block-tag-newline": "off", + "vue/brace-style": "off", + "vue/comma-dangle": "off", + "vue/comma-spacing": "off", + "vue/comma-style": "off", + "vue/dot-location": "off", + "vue/func-call-spacing": "off", + "vue/html-closing-bracket-newline": "off", + "vue/html-closing-bracket-spacing": "off", + "vue/html-end-tags": "off", + "vue/html-indent": "off", + "vue/html-quotes": "off", + "vue/html-self-closing": 0, + "vue/key-spacing": "off", + "vue/keyword-spacing": "off", + "vue/max-attributes-per-line": "off", + "vue/max-len": 0, + "vue/multiline-html-element-content-newline": "off", + "vue/multiline-ternary": "off", + "vue/mustache-interpolation-spacing": "off", + "vue/no-extra-parens": "off", + "vue/no-multi-spaces": "off", + "vue/no-spaces-around-equal-signs-in-attribute": "off", + "vue/object-curly-newline": "off", + "vue/object-curly-spacing": "off", + "vue/object-property-newline": "off", + "vue/operator-linebreak": "off", + "vue/quote-props": "off", + "vue/script-indent": "off", + "vue/singleline-html-element-content-newline": "off", + "vue/space-in-parens": "off", + "vue/space-infix-ops": "off", + "vue/space-unary-ops": "off", + "vue/template-curly-spacing": "off", + "wrap-iife": "off", + "wrap-regex": "off", + "yield-star-spacing": "off", "yoda": "error" } }, @@ -3050,17 +3223,29 @@ export default [ "import-x": "import-x-plugin" }, "rules": { + "@babel/object-curly-spacing": "off", + "@babel/semi": "off", "@typescript-eslint/ban-ts-comment": "error", + "@typescript-eslint/block-spacing": "off", + "@typescript-eslint/brace-style": "off", "@typescript-eslint/class-methods-use-this": [ "warn", { "exceptMethods": [] } ], + "@typescript-eslint/comma-dangle": "off", + "@typescript-eslint/comma-spacing": "off", "@typescript-eslint/consistent-type-exports": "error", "@typescript-eslint/consistent-type-imports": "error", "@typescript-eslint/default-param-last": "error", "@typescript-eslint/explicit-module-boundary-types": "off", + "@typescript-eslint/func-call-spacing": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/key-spacing": "off", + "@typescript-eslint/keyword-spacing": "off", + "@typescript-eslint/lines-around-comment": 0, + "@typescript-eslint/member-delimiter-style": "off", "@typescript-eslint/method-signature-style": "error", "@typescript-eslint/naming-convention": [ "error", @@ -3093,6 +3278,8 @@ export default [ "@typescript-eslint/no-empty-object-type": "error", "@typescript-eslint/no-explicit-any": "error", "@typescript-eslint/no-extra-non-null-assertion": "error", + "@typescript-eslint/no-extra-parens": "off", + "@typescript-eslint/no-extra-semi": "off", "@typescript-eslint/no-extraneous-class": "error", "@typescript-eslint/no-floating-promises": [ "error", @@ -3147,6 +3334,7 @@ export default [ "@typescript-eslint/no-useless-constructor": "error", "@typescript-eslint/no-useless-empty-export": "error", "@typescript-eslint/no-wrapper-object-types": "error", + "@typescript-eslint/object-curly-spacing": "off", "@typescript-eslint/prefer-as-const": "error", "@typescript-eslint/prefer-enum-initializers": "error", "@typescript-eslint/prefer-for-of": "off", @@ -3154,29 +3342,46 @@ export default [ "@typescript-eslint/prefer-namespace-keyword": "error", "@typescript-eslint/prefer-reduce-type-parameter": "error", "@typescript-eslint/prefer-return-this-type": "error", + "@typescript-eslint/quotes": 0, "@typescript-eslint/require-array-sort-compare": "error", "@typescript-eslint/return-await": "error", + "@typescript-eslint/semi": "off", + "@typescript-eslint/space-before-blocks": "off", + "@typescript-eslint/space-before-function-paren": "off", + "@typescript-eslint/space-infix-ops": "off", "@typescript-eslint/strict-boolean-expressions": "off", "@typescript-eslint/switch-exhaustiveness-check": "error", "@typescript-eslint/triple-slash-reference": "error", + "@typescript-eslint/type-annotation-spacing": "off", "@typescript-eslint/unified-signatures": "error", "@typescript-eslint/use-unknown-in-catch-callback-variable": "error", + "array-bracket-newline": "off", + "array-bracket-spacing": "off", "array-callback-return": [ "error", { "allowImplicit": true } ], + "array-element-newline": "off", "arrow-body-style": "off", + "arrow-parens": "off", + "arrow-spacing": "off", + "babel/object-curly-spacing": "off", + "babel/quotes": 0, + "babel/semi": "off", "block-scoped-var": "error", + "block-spacing": "off", + "brace-style": "off", "camelcase": "off", "class-methods-use-this": "off", + "comma-dangle": "off", + "comma-spacing": "off", + "comma-style": "off", + "computed-property-spacing": "off", "consistent-return": "error", "constructor-super": "off", - "curly": [ - "error", - "multi-line" - ], + "curly": 0, "default-case": [ "error", { @@ -3185,6 +3390,8 @@ export default [ ], "default-case-last": "error", "default-param-last": "off", + "dot-location": "off", + "eol-last": "off", "eqeqeq": [ "error", "always", @@ -3192,10 +3399,27 @@ export default [ "null": "ignore" } ], + "flowtype/boolean-style": "off", + "flowtype/delimiter-dangle": "off", + "flowtype/generic-spacing": "off", + "flowtype/object-type-curly-spacing": "off", + "flowtype/object-type-delimiter": "off", + "flowtype/quotes": "off", + "flowtype/semi": "off", + "flowtype/space-after-type-colon": "off", + "flowtype/space-before-generic-bracket": "off", + "flowtype/space-before-type-colon": "off", + "flowtype/union-intersection-spacing": "off", "for-direction": "error", + "func-call-spacing": "off", "func-names": "warn", + "function-call-argument-newline": "off", + "function-paren-newline": "off", + "generator-star": "off", + "generator-star-spacing": "off", "getter-return": "off", "grouped-accessor-pairs": "error", + "implicit-arrow-linebreak": "off", "import-x/consistent-type-specifier-style": "off", "import-x/default": "error", "import-x/export": "error", @@ -3219,7 +3443,7 @@ export default [ "import-x/no-cycle": [ "error", { - "maxDepth": "∞" + "ignoreExternal": true } ], "import-x/no-deprecated": "warn", @@ -3291,10 +3515,20 @@ export default [ ], "import-x/no-webpack-loader-syntax": "error", "import-x/prefer-default-export": "off", + "indent": "off", + "indent-legacy": "off", + "jsx-quotes": "off", + "key-spacing": "off", + "keyword-spacing": "off", + "linebreak-style": "off", + "lines-around-comment": 0, "max-classes-per-file": [ "error", 1 ], + "max-len": 0, + "max-statements-per-line": "off", + "multiline-ternary": "off", "new-cap": [ "error", { @@ -3308,19 +3542,24 @@ export default [ "newIsCapExceptions": [] } ], + "new-parens": "off", + "newline-per-chained-call": "off", "no-alert": "error", "no-array-constructor": "off", + "no-arrow-condition": "off", "no-async-promise-executor": "error", "no-await-in-loop": "error", "no-bitwise": "error", "no-caller": "error", "no-case-declarations": "error", "no-class-assign": "off", + "no-comma-dangle": "off", "no-compare-neg-zero": "error", "no-cond-assign": [ "error", "always" ], + "no-confusing-arrow": 0, "no-console": "warn", "no-const-assign": "off", "no-constant-binary-expression": "error", @@ -3361,7 +3600,10 @@ export default [ "no-extra-bind": "error", "no-extra-boolean-cast": "error", "no-extra-label": "error", + "no-extra-parens": "off", + "no-extra-semi": "off", "no-fallthrough": "error", + "no-floating-decimal": "off", "no-func-assign": "off", "no-global-assign": [ "error", @@ -3389,10 +3631,14 @@ export default [ "no-loss-of-precision": "error", "no-magic-numbers": "off", "no-misleading-character-class": "error", + "no-mixed-operators": 0, + "no-mixed-spaces-and-tabs": "off", "no-multi-assign": [ "error" ], + "no-multi-spaces": "off", "no-multi-str": "error", + "no-multiple-empty-lines": "off", "no-nested-ternary": "error", "no-new": "error", "no-new-func": "error", @@ -3431,6 +3677,7 @@ export default [ "no-prototype-builtins": "error", "no-redeclare": "off", "no-regex-spaces": "error", + "no-reserved-keys": "off", "no-restricted-exports": [ "error", { @@ -3763,14 +4010,18 @@ export default [ "no-setter-return": "off", "no-shadow": "off", "no-shadow-restricted-names": "error", + "no-space-before-semi": "off", + "no-spaced-func": "off", "no-sparse-arrays": "error", + "no-tabs": 0, "no-template-curly-in-string": "error", "no-this-before-super": "off", "no-throw-literal": "error", + "no-trailing-spaces": "off", "no-undef": "off", "no-undef-init": "error", "no-underscore-dangle": "off", - "no-unexpected-multiline": "error", + "no-unexpected-multiline": 0, "no-unmodified-loop-condition": "error", "no-unneeded-ternary": [ "error", @@ -3814,7 +4065,13 @@ export default [ ], "no-useless-return": "error", "no-var": "error", + "no-whitespace-before-property": "off", "no-with": "error", + "no-wrap-func": "off", + "nonblock-statement-body-position": "off", + "object-curly-newline": "off", + "object-curly-spacing": "off", + "object-property-newline": "off", "object-shorthand": [ "error", "always", @@ -3827,10 +4084,13 @@ export default [ "error", "never" ], + "one-var-declaration-per-line": "off", "operator-assignment": [ "error", "always" ], + "operator-linebreak": "off", + "padded-blocks": "off", "prefer-arrow-callback": "off", "prefer-const": "error", "prefer-exponentiation-operator": "error", @@ -3852,14 +4112,58 @@ export default [ "prefer-rest-params": "error", "prefer-spread": "error", "prefer-template": "error", + "quote-props": "off", + "quotes": 0, "radix": "error", + "react/jsx-child-element-spacing": "off", + "react/jsx-closing-bracket-location": "off", + "react/jsx-closing-tag-location": "off", + "react/jsx-curly-newline": "off", + "react/jsx-curly-spacing": "off", + "react/jsx-equals-spacing": "off", + "react/jsx-first-prop-new-line": "off", + "react/jsx-indent": "off", + "react/jsx-indent-props": "off", + "react/jsx-max-props-per-line": "off", + "react/jsx-newline": "off", + "react/jsx-one-expression-per-line": "off", + "react/jsx-props-no-multi-spaces": "off", + "react/jsx-space-before-closing": "off", + "react/jsx-tag-spacing": "off", + "react/jsx-wrap-multilines": "off", "require-atomic-updates": "error", "require-yield": "error", + "rest-spread-spacing": "off", + "semi": "off", + "semi-spacing": "off", + "semi-style": "off", + "space-after-function-name": "off", + "space-after-keywords": "off", + "space-before-blocks": "off", + "space-before-function-paren": "off", + "space-before-function-parentheses": "off", + "space-before-keywords": "off", + "space-in-brackets": "off", + "space-in-parens": "off", + "space-infix-ops": "off", + "space-return-throw-case": "off", + "space-unary-ops": "off", + "space-unary-word-ops": "off", + "standard/array-bracket-even-spacing": "off", + "standard/computed-property-even-spacing": "off", + "standard/object-curly-even-spacing": "off", + "switch-colon-spacing": "off", "symbol-description": "error", + "template-curly-spacing": "off", + "template-tag-spacing": "off", "unicode-bom": [ "error", "never" ], + "unicorn/empty-brace-spaces": "off", + "unicorn/no-nested-ternary": "off", + "unicorn/number-literal-case": "off", + "unicorn/template-indent": 0, "use-isnan": "error", "valid-typeof": [ "error", @@ -3867,6 +4171,48 @@ export default [ "requireStringLiterals": true } ], + "vue/array-bracket-newline": "off", + "vue/array-bracket-spacing": "off", + "vue/array-element-newline": "off", + "vue/arrow-spacing": "off", + "vue/block-spacing": "off", + "vue/block-tag-newline": "off", + "vue/brace-style": "off", + "vue/comma-dangle": "off", + "vue/comma-spacing": "off", + "vue/comma-style": "off", + "vue/dot-location": "off", + "vue/func-call-spacing": "off", + "vue/html-closing-bracket-newline": "off", + "vue/html-closing-bracket-spacing": "off", + "vue/html-end-tags": "off", + "vue/html-indent": "off", + "vue/html-quotes": "off", + "vue/html-self-closing": 0, + "vue/key-spacing": "off", + "vue/keyword-spacing": "off", + "vue/max-attributes-per-line": "off", + "vue/max-len": 0, + "vue/multiline-html-element-content-newline": "off", + "vue/multiline-ternary": "off", + "vue/mustache-interpolation-spacing": "off", + "vue/no-extra-parens": "off", + "vue/no-multi-spaces": "off", + "vue/no-spaces-around-equal-signs-in-attribute": "off", + "vue/object-curly-newline": "off", + "vue/object-curly-spacing": "off", + "vue/object-property-newline": "off", + "vue/operator-linebreak": "off", + "vue/quote-props": "off", + "vue/script-indent": "off", + "vue/singleline-html-element-content-newline": "off", + "vue/space-in-parens": "off", + "vue/space-infix-ops": "off", + "vue/space-unary-ops": "off", + "vue/template-curly-spacing": "off", + "wrap-iife": "off", + "wrap-regex": "off", + "yield-star-spacing": "off", "yoda": "error" }, "settings": { @@ -3921,20 +4267,149 @@ export default [ }, "processor": "svelte/svelte", "rules": { + "@babel/object-curly-spacing": "off", + "@babel/semi": "off", + "@typescript-eslint/block-spacing": "off", + "@typescript-eslint/brace-style": "off", + "@typescript-eslint/comma-dangle": "off", + "@typescript-eslint/comma-spacing": "off", + "@typescript-eslint/func-call-spacing": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/key-spacing": "off", + "@typescript-eslint/keyword-spacing": "off", + "@typescript-eslint/lines-around-comment": 0, + "@typescript-eslint/member-delimiter-style": "off", + "@typescript-eslint/no-extra-parens": "off", + "@typescript-eslint/no-extra-semi": "off", "@typescript-eslint/no-unsafe-argument": "off", "@typescript-eslint/no-unsafe-assignment": "off", "@typescript-eslint/no-unsafe-call": "off", "@typescript-eslint/no-unsafe-member-access": "off", "@typescript-eslint/no-unsafe-return": "off", + "@typescript-eslint/object-curly-spacing": "off", + "@typescript-eslint/quotes": 0, + "@typescript-eslint/semi": "off", + "@typescript-eslint/space-before-blocks": "off", + "@typescript-eslint/space-before-function-paren": "off", + "@typescript-eslint/space-infix-ops": "off", + "@typescript-eslint/type-annotation-spacing": "off", + "array-bracket-newline": "off", + "array-bracket-spacing": "off", + "array-element-newline": "off", + "arrow-parens": "off", + "arrow-spacing": "off", + "babel/object-curly-spacing": "off", + "babel/quotes": 0, + "babel/semi": "off", + "block-spacing": "off", + "brace-style": "off", + "comma-dangle": "off", + "comma-spacing": "off", + "comma-style": "off", + "computed-property-spacing": "off", + "curly": 0, + "dot-location": "off", + "eol-last": "off", + "flowtype/boolean-style": "off", + "flowtype/delimiter-dangle": "off", + "flowtype/generic-spacing": "off", + "flowtype/object-type-curly-spacing": "off", + "flowtype/object-type-delimiter": "off", + "flowtype/quotes": "off", + "flowtype/semi": "off", + "flowtype/space-after-type-colon": "off", + "flowtype/space-before-generic-bracket": "off", + "flowtype/space-before-type-colon": "off", + "flowtype/union-intersection-spacing": "off", + "func-call-spacing": "off", + "function-call-argument-newline": "off", + "function-paren-newline": "off", + "generator-star": "off", + "generator-star-spacing": "off", + "implicit-arrow-linebreak": "off", "import-x/extensions": "off", "import-x/first": "off", "import-x/no-duplicates": "off", "import-x/no-mutable-exports": "off", "import-x/no-unresolved": "off", "import-x/prefer-default-export": "off", + "indent": "off", + "indent-legacy": "off", + "jsx-quotes": "off", + "key-spacing": "off", + "keyword-spacing": "off", + "linebreak-style": "off", + "lines-around-comment": 0, + "max-len": 0, + "max-statements-per-line": "off", + "multiline-ternary": "off", + "new-parens": "off", + "newline-per-chained-call": "off", + "no-arrow-condition": "off", + "no-comma-dangle": "off", + "no-confusing-arrow": 0, + "no-extra-parens": "off", + "no-extra-semi": "off", + "no-floating-decimal": "off", "no-inner-declarations": "off", + "no-mixed-operators": 0, + "no-mixed-spaces-and-tabs": "off", + "no-multi-spaces": "off", + "no-multiple-empty-lines": "off", + "no-reserved-keys": "off", "no-self-assign": "off", + "no-space-before-semi": "off", + "no-spaced-func": "off", + "no-tabs": 0, + "no-trailing-spaces": "off", + "no-unexpected-multiline": 0, "no-unused-vars": "off", + "no-whitespace-before-property": "off", + "no-wrap-func": "off", + "nonblock-statement-body-position": "off", + "object-curly-newline": "off", + "object-curly-spacing": "off", + "object-property-newline": "off", + "one-var-declaration-per-line": "off", + "operator-linebreak": "off", + "padded-blocks": "off", + "quote-props": "off", + "quotes": 0, + "react/jsx-child-element-spacing": "off", + "react/jsx-closing-bracket-location": "off", + "react/jsx-closing-tag-location": "off", + "react/jsx-curly-newline": "off", + "react/jsx-curly-spacing": "off", + "react/jsx-equals-spacing": "off", + "react/jsx-first-prop-new-line": "off", + "react/jsx-indent": "off", + "react/jsx-indent-props": "off", + "react/jsx-max-props-per-line": "off", + "react/jsx-newline": "off", + "react/jsx-one-expression-per-line": "off", + "react/jsx-props-no-multi-spaces": "off", + "react/jsx-space-before-closing": "off", + "react/jsx-tag-spacing": "off", + "react/jsx-wrap-multilines": "off", + "rest-spread-spacing": "off", + "semi": "off", + "semi-spacing": "off", + "semi-style": "off", + "space-after-function-name": "off", + "space-after-keywords": "off", + "space-before-blocks": "off", + "space-before-function-paren": "off", + "space-before-function-parentheses": "off", + "space-before-keywords": "off", + "space-in-brackets": "off", + "space-in-parens": "off", + "space-infix-ops": "off", + "space-return-throw-case": "off", + "space-unary-ops": "off", + "space-unary-word-ops": "off", + "standard/array-bracket-even-spacing": "off", + "standard/computed-property-even-spacing": "off", + "standard/object-curly-even-spacing": "off", "svelte/comment-directive": "error", "svelte/no-at-debug-tags": "warn", "svelte/no-at-html-tags": "error", @@ -3948,7 +4423,56 @@ export default [ "svelte/no-unknown-style-directive-property": "error", "svelte/no-unused-svelte-ignore": "error", "svelte/system": "error", - "svelte/valid-compile": "error" + "svelte/valid-compile": "error", + "switch-colon-spacing": "off", + "template-curly-spacing": "off", + "template-tag-spacing": "off", + "unicorn/empty-brace-spaces": "off", + "unicorn/no-nested-ternary": "off", + "unicorn/number-literal-case": "off", + "unicorn/template-indent": 0, + "vue/array-bracket-newline": "off", + "vue/array-bracket-spacing": "off", + "vue/array-element-newline": "off", + "vue/arrow-spacing": "off", + "vue/block-spacing": "off", + "vue/block-tag-newline": "off", + "vue/brace-style": "off", + "vue/comma-dangle": "off", + "vue/comma-spacing": "off", + "vue/comma-style": "off", + "vue/dot-location": "off", + "vue/func-call-spacing": "off", + "vue/html-closing-bracket-newline": "off", + "vue/html-closing-bracket-spacing": "off", + "vue/html-end-tags": "off", + "vue/html-indent": "off", + "vue/html-quotes": "off", + "vue/html-self-closing": 0, + "vue/key-spacing": "off", + "vue/keyword-spacing": "off", + "vue/max-attributes-per-line": "off", + "vue/max-len": 0, + "vue/multiline-html-element-content-newline": "off", + "vue/multiline-ternary": "off", + "vue/mustache-interpolation-spacing": "off", + "vue/no-extra-parens": "off", + "vue/no-multi-spaces": "off", + "vue/no-spaces-around-equal-signs-in-attribute": "off", + "vue/object-curly-newline": "off", + "vue/object-curly-spacing": "off", + "vue/object-property-newline": "off", + "vue/operator-linebreak": "off", + "vue/quote-props": "off", + "vue/script-indent": "off", + "vue/singleline-html-element-content-newline": "off", + "vue/space-in-parens": "off", + "vue/space-infix-ops": "off", + "vue/space-unary-ops": "off", + "vue/template-curly-spacing": "off", + "wrap-iife": "off", + "wrap-regex": "off", + "yield-star-spacing": "off" } } ] \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7a0a920..935d8dd 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -40,6 +40,9 @@ importers: confusing-browser-globals: specifier: ^1.0.11 version: 1.0.11 + eslint-config-prettier: + specifier: ^9.1.0 + version: 9.1.0(eslint@9.15.0(jiti@2.4.0)) eslint-import-resolver-typescript: specifier: ^3.6.3 version: 3.6.3(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-plugin-import-x@4.4.3(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-plugin-import@2.31.0)(eslint@9.15.0(jiti@2.4.0)) @@ -86,6 +89,9 @@ importers: '@types/confusing-browser-globals': specifier: ^1.0.3 version: 1.0.3 + '@types/eslint-config-prettier': + specifier: ^6.11.3 + version: 6.11.3 '@types/eslint-plugin-jsx-a11y': specifier: ^6.10.0 version: 6.10.0 @@ -631,6 +637,9 @@ packages: '@types/confusing-browser-globals@1.0.3': resolution: {integrity: sha512-q+6axdE3RyjrSsy2ONE4UpF89rwOfpoMBP3lqJ+OzLuOeYHwP+o2GITzuleKb1UT3FSYybO8QmeACgyHleu2CA==} + '@types/eslint-config-prettier@6.11.3': + resolution: {integrity: sha512-3wXCiM8croUnhg9LdtZUJQwNcQYGWxxdOWDjPe1ykCqJFPVpzAKfs/2dgSoCtAvdPeaponcWPI7mPcGGp9dkKQ==} + '@types/eslint-plugin-jsx-a11y@6.10.0': resolution: {integrity: sha512-TGKmk2gO6DrvTVADNOGQMqn3SzqcFcJILFnXNllQA34us9uClS3/AsL/cERPz6jS9ePI3bx+1q8/d2GZsxPVYw==} @@ -1073,6 +1082,12 @@ packages: peerDependencies: eslint: '>=6.0.0' + eslint-config-prettier@9.1.0: + resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' + eslint-import-resolver-node@0.3.9: resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} @@ -2916,6 +2931,8 @@ snapshots: '@types/confusing-browser-globals@1.0.3': {} + '@types/eslint-config-prettier@6.11.3': {} + '@types/eslint-plugin-jsx-a11y@6.10.0': dependencies: '@types/eslint': 9.6.1 @@ -3472,6 +3489,10 @@ snapshots: eslint: 9.15.0(jiti@2.4.0) semver: 7.6.3 + eslint-config-prettier@9.1.0(eslint@9.15.0(jiti@2.4.0)): + dependencies: + eslint: 9.15.0(jiti@2.4.0) + eslint-import-resolver-node@0.3.9: dependencies: debug: 3.2.7 @@ -3486,7 +3507,7 @@ snapshots: debug: 4.3.7 enhanced-resolve: 5.17.1 eslint: 9.15.0(jiti@2.4.0) - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-plugin-import-x@4.4.3(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-plugin-import@2.31.0)(eslint@9.15.0(jiti@2.4.0)))(eslint@9.15.0(jiti@2.4.0)) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@9.15.0(jiti@2.4.0)) fast-glob: 3.3.2 get-tsconfig: 4.8.1 is-bun-module: 1.3.0 @@ -3500,7 +3521,7 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-plugin-import-x@4.4.3(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-plugin-import@2.31.0)(eslint@9.15.0(jiti@2.4.0)))(eslint@9.15.0(jiti@2.4.0)): + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@9.15.0(jiti@2.4.0)): dependencies: debug: 3.2.7 optionalDependencies: @@ -3539,7 +3560,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.15.0(jiti@2.4.0) eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-plugin-import-x@4.4.3(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-plugin-import@2.31.0)(eslint@9.15.0(jiti@2.4.0)))(eslint@9.15.0(jiti@2.4.0)) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.16.0(eslint@9.15.0(jiti@2.4.0))(typescript@5.7.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@9.15.0(jiti@2.4.0)) hasown: 2.0.2 is-core-module: 2.15.1 is-glob: 4.0.3