From 518367a28c8e742516bc8882b6cdf0a843c15ff2 Mon Sep 17 00:00:00 2001 From: Richard Hallows Date: Fri, 30 Jun 2023 09:58:43 +0100 Subject: [PATCH] Fix selector-pseudo-element-no-unknown performance (#7007) --- .changeset/smooth-tigers-wink.md | 5 +++++ lib/rules/selector-pseudo-element-no-unknown/index.js | 8 ++++---- 2 files changed, 9 insertions(+), 4 deletions(-) create mode 100644 .changeset/smooth-tigers-wink.md diff --git a/.changeset/smooth-tigers-wink.md b/.changeset/smooth-tigers-wink.md new file mode 100644 index 0000000000..74d09bc60c --- /dev/null +++ b/.changeset/smooth-tigers-wink.md @@ -0,0 +1,5 @@ +--- +"stylelint": patch +--- + +Fixed: `selector-pseudo-element-no-unknown` performance diff --git a/lib/rules/selector-pseudo-element-no-unknown/index.js b/lib/rules/selector-pseudo-element-no-unknown/index.js index 1ba479919a..30a67571a5 100644 --- a/lib/rules/selector-pseudo-element-no-unknown/index.js +++ b/lib/rules/selector-pseudo-element-no-unknown/index.js @@ -42,10 +42,6 @@ const rule = (primary, secondaryOptions) => { } root.walkRules((ruleNode) => { - if (!isStandardSyntaxRule(ruleNode)) { - return; - } - const selector = ruleNode.selector; // Return early before parse if no pseudos for performance @@ -54,6 +50,10 @@ const rule = (primary, secondaryOptions) => { return; } + if (!isStandardSyntaxRule(ruleNode)) { + return; + } + parseSelector(selector, result, ruleNode, (selectorTree) => { selectorTree.walkPseudos((pseudoNode) => { const value = pseudoNode.value;