From 84f0b7d80a08eca376fc02db3f5c422792af48a3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 30 Aug 2022 15:46:26 +0000 Subject: [PATCH 1/2] chore(deps): update dependency @ota-meshi/eslint-plugin to ^0.12.0 --- package-lock.json | 6 +++--- package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index 67766cce..0592b165 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1468,9 +1468,9 @@ } }, "@ota-meshi/eslint-plugin": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/@ota-meshi/eslint-plugin/-/eslint-plugin-0.11.1.tgz", - "integrity": "sha512-VKfIaz089KeXLhVRjfNJotXra9yc/gwwr/l1gOu6dcXGHYsv5eEv0uNzmxvCvtfP5Kf2qYFYMBHCgmSjKdPSVg==", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@ota-meshi/eslint-plugin/-/eslint-plugin-0.12.0.tgz", + "integrity": "sha512-OAoyqxJWhyjdpRwrqUCvnYCrXN4A1VmjKvadh8edIBJnK8ad6QIHgFK2CDCmv7u84lSKXMDFRKVtjk+UYNFjIg==", "dev": true, "requires": { "semver": "^7.3.4" diff --git a/package.json b/package.json index 4c176079..fed31a04 100644 --- a/package.json +++ b/package.json @@ -47,7 +47,7 @@ "dist" ], "devDependencies": { - "@ota-meshi/eslint-plugin": "^0.11.0", + "@ota-meshi/eslint-plugin": "^0.12.0", "@types/eslint": "^8.0.0", "@types/eslint-visitor-keys": "^1.0.0", "@types/estree": "^1.0.0", From 1f3201ba77102173e7f25bf2e96a417fb41329d5 Mon Sep 17 00:00:00 2001 From: Yosuke Ota Date: Wed, 31 Aug 2022 00:26:11 +0000 Subject: [PATCH 2/2] format --- lib/configs/all.ts | 8 +- lib/configs/base.ts | 6 +- lib/configs/recommended.ts | 8 +- lib/configs/vue3-recommended.ts | 8 +- lib/index.ts | 26 +- lib/options.ts | 24 +- lib/rules/enforce-style-type.ts | 446 ++-- lib/rules/no-deprecated-deep-combinator.ts | 154 +- .../no-deprecated-v-enter-v-leave-class.ts | 483 ++--- lib/rules/no-parent-of-v-global.ts | 137 +- lib/rules/no-parsing-error.ts | 142 +- lib/rules/no-unused-keyframes.ts | 273 ++- lib/rules/no-unused-selector.ts | 444 ++-- lib/rules/require-scoped.ts | 184 +- lib/rules/require-selector-used-inside.ts | 317 ++- lib/rules/require-v-deep-argument.ts | 270 ++- lib/rules/require-v-global-argument.ts | 131 +- lib/rules/require-v-slotted-argument.ts | 134 +- lib/styles/ast.ts | 1872 ++++++++--------- lib/styles/context/comment-directive/index.ts | 425 ++-- lib/styles/context/index.ts | 114 +- lib/styles/context/style/index.ts | 439 ++-- lib/styles/context/vue-components/find-vue.ts | 194 +- lib/styles/context/vue-components/index.ts | 700 +++--- lib/styles/parser/css-parser.ts | 950 ++++----- lib/styles/parser/index.ts | 36 +- lib/styles/parser/scss-parser.ts | 112 +- .../parser/selector/css-selector-parser.ts | 1287 ++++++------ lib/styles/parser/selector/replace-utils.ts | 917 ++++---- .../parser/selector/scss-selector-parser.ts | 130 +- .../parser/selector/stylus-selector-parser.ts | 274 ++- lib/styles/parser/stylus-parser.ts | 134 +- lib/styles/parser/utils.ts | 18 +- lib/styles/selectors/index.ts | 54 +- .../selectors/query/attribute-tracker.ts | 148 +- lib/styles/selectors/query/elements.ts | 88 +- lib/styles/selectors/query/index.ts | 1546 +++++++------- .../resolver/css-selector-resolver.ts | 849 ++++---- .../resolver/scss-selector-resolver.ts | 276 +-- .../resolver/stylus-selector-resolver.ts | 553 +++-- lib/styles/template/at-rule-params/css.ts | 2 +- lib/styles/template/at-rule-params/index.ts | 30 +- lib/styles/template/at-rule-params/scss.ts | 6 +- lib/styles/template/at-rule-params/stylus.ts | 6 +- lib/styles/template/decl-value/css.ts | 2 +- lib/styles/template/decl-value/index.ts | 30 +- lib/styles/template/decl-value/scss.ts | 6 +- lib/styles/template/decl-value/stylus.ts | 6 +- lib/styles/template/index.ts | 436 ++-- lib/styles/template/interpolation.ts | 8 +- lib/styles/template/scss/util.ts | 50 +- lib/styles/template/selector/css.ts | 12 +- lib/styles/template/selector/index.ts | 36 +- lib/styles/template/selector/scss.ts | 16 +- lib/styles/template/selector/stylus.ts | 16 +- lib/styles/template/stylus/util.ts | 34 +- lib/styles/utils/css-nodes.ts | 70 +- lib/styles/utils/index.ts | 8 +- lib/styles/utils/nodes.ts | 74 +- lib/styles/utils/selectors.ts | 310 ++- lib/types.ts | 403 ++-- lib/utils/regexp.ts | 24 +- lib/utils/rules.ts | 154 +- lib/utils/templates.ts | 187 +- lib/utils/utils.ts | 10 +- tests/lib/comment-directives.ts | 90 +- tests/lib/rules-without-vue-eslint-parser.ts | 46 +- tests/lib/rules/enforce-style-type.ts | 678 +++--- .../rules/no-deprecated-deep-combinator.ts | 82 +- .../no-deprecated-v-enter-v-leave-class.ts | 176 +- tests/lib/rules/no-parent-of-v-global.ts | 50 +- tests/lib/rules/no-parsing-error.ts | 102 +- tests/lib/rules/no-unused-keyframes.ts | 114 +- tests/lib/rules/no-unused-selector.ts | 870 ++++---- tests/lib/rules/require-scoped.ts | 178 +- .../lib/rules/require-selector-used-inside.ts | 692 +++--- tests/lib/rules/require-v-deep-argument.ts | 68 +- tests/lib/rules/require-v-global-argument.ts | 66 +- tests/lib/rules/require-v-slotted-argument.ts | 66 +- tests/lib/styles/parser/index.ts | 465 ++-- tests/lib/styles/selectors/index.ts | 112 +- tests/lib/styles/selectors/query.ts | 397 ++-- tests/lib/styles/test-utils.ts | 154 +- tests/lib/utils/rules.ts | 93 +- tests/regressions/reporter.ts | 114 +- tools/lib/categories.ts | 62 +- tools/lib/load-configs.ts | 72 +- tools/lib/load-rules.ts | 32 +- tools/new-rule.ts | 78 +- tools/render-rules.ts | 114 +- tools/update-docs-rules-index.ts | 16 +- tools/update-docs.ts | 354 ++-- tools/update-readme.ts | 76 +- tools/update-rules.ts | 34 +- tools/update.ts | 8 +- typings/eslint-scope/index.d.ts | 106 +- typings/eslint-utils/index.d.ts | 22 +- typings/postcss-safe-parser/index.d.ts | 4 +- typings/postcss-scss/index.d.ts | 4 +- typings/postcss-styl/index.d.ts | 4 +- 100 files changed, 10798 insertions(+), 11048 deletions(-) diff --git a/lib/configs/all.ts b/lib/configs/all.ts index 030ee798..0afe7a19 100644 --- a/lib/configs/all.ts +++ b/lib/configs/all.ts @@ -1,6 +1,6 @@ -import { collectRules } from "../utils/rules" +import { collectRules } from "../utils/rules"; export = { - extends: require.resolve("./base"), - rules: collectRules(), -} + extends: require.resolve("./base"), + rules: collectRules(), +}; diff --git a/lib/configs/base.ts b/lib/configs/base.ts index e3c1cef2..e19f6b8f 100644 --- a/lib/configs/base.ts +++ b/lib/configs/base.ts @@ -1,4 +1,4 @@ export = { - parser: require.resolve("vue-eslint-parser"), - plugins: ["vue-scoped-css"], -} + parser: require.resolve("vue-eslint-parser"), + plugins: ["vue-scoped-css"], +}; diff --git a/lib/configs/recommended.ts b/lib/configs/recommended.ts index 26094168..cd698fdb 100644 --- a/lib/configs/recommended.ts +++ b/lib/configs/recommended.ts @@ -1,6 +1,6 @@ -import { collectRules } from "../utils/rules" +import { collectRules } from "../utils/rules"; export = { - extends: require.resolve("./base"), - rules: collectRules("recommended"), -} + extends: require.resolve("./base"), + rules: collectRules("recommended"), +}; diff --git a/lib/configs/vue3-recommended.ts b/lib/configs/vue3-recommended.ts index ae9d7e17..a96414de 100644 --- a/lib/configs/vue3-recommended.ts +++ b/lib/configs/vue3-recommended.ts @@ -1,6 +1,6 @@ -import { collectRules } from "../utils/rules" +import { collectRules } from "../utils/rules"; export = { - extends: require.resolve("./base"), - rules: collectRules("vue3-recommended"), -} + extends: require.resolve("./base"), + rules: collectRules("vue3-recommended"), +}; diff --git a/lib/index.ts b/lib/index.ts index 8a2be93f..5542716d 100644 --- a/lib/index.ts +++ b/lib/index.ts @@ -1,19 +1,19 @@ -import { rules as ruleList } from "./utils/rules" -import type { Rule } from "./types" +import { rules as ruleList } from "./utils/rules"; +import type { Rule } from "./types"; const configs = { - base: require("./configs/base"), - recommended: require("./configs/recommended"), - "vue3-recommended": require("./configs/vue3-recommended"), - all: require("./configs/all"), -} + base: require("./configs/base"), + recommended: require("./configs/recommended"), + "vue3-recommended": require("./configs/vue3-recommended"), + all: require("./configs/all"), +}; const rules = ruleList.reduce((obj, r) => { - obj[r.meta.docs?.ruleName || ""] = r - return obj -}, {} as { [key: string]: Rule }) + obj[r.meta.docs?.ruleName || ""] = r; + return obj; +}, {} as { [key: string]: Rule }); export = { - configs, - rules, -} + configs, + rules, +}; diff --git a/lib/options.ts b/lib/options.ts index 70aec52e..5988d938 100644 --- a/lib/options.ts +++ b/lib/options.ts @@ -1,26 +1,26 @@ -import { toRegExp } from "./utils/regexp" +import { toRegExp } from "./utils/regexp"; export interface QueryOptions { - ignoreBEMModifier?: boolean - captureClassesFromDoc?: string[] + ignoreBEMModifier?: boolean; + captureClassesFromDoc?: string[]; } export interface ParsedQueryOptions { - ignoreBEMModifier: boolean - captureClassesFromDoc: RegExp[] + ignoreBEMModifier: boolean; + captureClassesFromDoc: RegExp[]; } /** * Parse options */ export function parseQueryOptions( - options: QueryOptions | undefined, + options: QueryOptions | undefined ): ParsedQueryOptions { - const { ignoreBEMModifier, captureClassesFromDoc } = options || {} + const { ignoreBEMModifier, captureClassesFromDoc } = options || {}; - return { - ignoreBEMModifier: ignoreBEMModifier ?? false, - captureClassesFromDoc: - captureClassesFromDoc?.map((s) => toRegExp(s, "g")) ?? [], - } + return { + ignoreBEMModifier: ignoreBEMModifier ?? false, + captureClassesFromDoc: + captureClassesFromDoc?.map((s) => toRegExp(s, "g")) ?? [], + }; } diff --git a/lib/rules/enforce-style-type.ts b/lib/rules/enforce-style-type.ts index 1df809f2..aa268d4c 100644 --- a/lib/rules/enforce-style-type.ts +++ b/lib/rules/enforce-style-type.ts @@ -1,256 +1,232 @@ -import lodash from "lodash" -import type { RuleContext, AST, TokenStore, Rule, RuleFixer } from "../types" +import lodash from "lodash"; +import type { RuleContext, AST, TokenStore, Rule, RuleFixer } from "../types"; import { - getStyleContexts, - isValidStyleContext, - getCommentDirectivesReporter, -} from "../styles/context" + getStyleContexts, + isValidStyleContext, + getCommentDirectivesReporter, +} from "../styles/context"; declare const module: { - exports: Rule -} + exports: Rule; +}; -const styleTypesAttrs = ["scoped", "module"] as const -type StyleTypes = "plain" | typeof styleTypesAttrs[number] -type AllowsOption = StyleTypes[] +const styleTypesAttrs = ["scoped", "module"] as const; +type StyleTypes = "plain" | typeof styleTypesAttrs[number]; +type AllowsOption = StyleTypes[]; module.exports = { - meta: { - docs: { - description: - "enforce the ` `, - errors: [{ messageId: "unused", data: { selector: ".foo" } }], - }, - { - code: ` + errors: [{ messageId: "unused", data: { selector: ".foo" } }], + }, + { + code: `