Skip to content

Commit

Permalink
fix: ignore indent for inline style tags (#415)
Browse files Browse the repository at this point in the history
  • Loading branch information
ota-meshi committed Mar 23, 2023
1 parent fe306ed commit 9714749
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 16 deletions.
5 changes: 5 additions & 0 deletions .changeset/gorgeous-buckets-train.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"eslint-plugin-svelte": patch
---

fix: ignore indent for inline style tags in `svelte/indent` rule
37 changes: 21 additions & 16 deletions src/rules/indent-helpers/svelte.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,23 +34,28 @@ export function defineVisitor(context: IndentContext): NodeListener {
node.children.forEach((n) => offsets.ignore(n))
},
SvelteElement(node: AST.SvelteElement) {
if (
(node.name.type !== "Identifier" && node.name.type !== "SvelteName") ||
!PREFORMATTED_ELEMENT_NAMES.includes(node.name.name)
) {
if (node.endTag) {
offsets.setOffsetElementList(
node.children.filter(isNotEmptyTextNode),
node.startTag,
node.endTag,
1,
)
if (node.name.type === "Identifier" || node.name.type === "SvelteName") {
if (PREFORMATTED_ELEMENT_NAMES.includes(node.name.name)) {
const startTagToken = sourceCode.getFirstToken(node)
const endTagToken =
node.endTag && sourceCode.getFirstToken(node.endTag)
offsets.setOffsetToken(endTagToken, 0, startTagToken)
node.children.forEach((n) => offsets.ignore(n))
return
}
} else {
const startTagToken = sourceCode.getFirstToken(node)
const endTagToken = node.endTag && sourceCode.getFirstToken(node.endTag)
offsets.setOffsetToken(endTagToken, 0, startTagToken)
node.children.forEach((n) => offsets.ignore(n))
if (node.name.name === "style") {
// Inline style tag
node.children.forEach((n) => offsets.ignore(n))
return
}
}
if (node.endTag) {
offsets.setOffsetElementList(
node.children.filter(isNotEmptyTextNode),
node.startTag,
node.endTag,
1,
)
}
},
// ----------------------------------------------------------------------
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<svg>
<style>
/* prettier-ignore */
.test {
fill: red;
}
</style>
</svg>

0 comments on commit 9714749

Please sign in to comment.