Skip to content

Commit 74240d2

Browse files
committed
feat: support postcss
1 parent 10a218c commit 74240d2

10 files changed

+1053
-3
lines changed

.changeset/silver-swans-build.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"svelte-eslint-parser": patch
3+
---
4+
5+
feat: support postcss

src/parser/style-context.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ export interface StyleContextUnknownLang {
3737
*/
3838
export function parseStyleContext(
3939
styleElement: SvelteStyleElement | undefined,
40-
ctx: Context,
40+
ctx: Context
4141
): StyleContext {
4242
if (!styleElement || !styleElement.endTag) {
4343
return { status: "no-style-element" };
@@ -56,6 +56,7 @@ export function parseStyleContext(
5656
let parseFn: Parser<Root>, sourceAst: Root;
5757
switch (sourceLang) {
5858
case "css":
59+
case "postcss":
5960
parseFn = postcss.parse;
6061
break;
6162
case "scss":
@@ -66,7 +67,7 @@ export function parseStyleContext(
6667
}
6768
const styleCode = ctx.code.slice(
6869
styleElement.startTag.range[1],
69-
styleElement.endTag.range[0],
70+
styleElement.endTag.range[0]
7071
);
7172
try {
7273
sourceAst = parseFn(styleCode, {
@@ -109,7 +110,7 @@ export function styleNodeLoc(node: Node): Partial<SourceLocation> {
109110
* Extracts a node range (like that of any ESLint node) from a parsed svelte style node.
110111
*/
111112
export function styleNodeRange(
112-
node: Node,
113+
node: Node
113114
): [number | undefined, number | undefined] {
114115
if (node.source === undefined) {
115116
return [undefined, undefined];
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<style lang="postcss">
2+
body {
3+
colour: white;
4+
background-colour: grey;
5+
}
6+
</style>

0 commit comments

Comments
 (0)