Skip to content

Commit cf9cf2e

Browse files
Fix @import hoisting warning (#1152)
We're displaying warnings about having to hoist `@import`s even on otherwise valid files. This fixes the over eager warning.
1 parent 6072fb5 commit cf9cf2e

File tree

1 file changed

+15
-2
lines changed

1 file changed

+15
-2
lines changed

packages/tailwindcss-language-server/src/css/resolve-css-imports.ts

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,26 @@ export function resolveCssImports({
3030
if (!loose) return
3131

3232
let hoist: postcss.AtRule[] = []
33+
let seenOtherNodes = false
3334
let seenImportsAfterOtherNodes = false
3435

3536
for (let node of root.nodes) {
3637
if (node.type === 'atrule' && (node.name === 'import' || node.name === 'charset')) {
3738
hoist.push(node)
38-
} else if (hoist.length > 0 && (node.type === 'atrule' || node.type === 'rule')) {
39-
seenImportsAfterOtherNodes = true
39+
40+
if (seenOtherNodes) {
41+
seenImportsAfterOtherNodes = true
42+
}
43+
} else if (node.type === 'atrule') {
44+
if (node.name === 'layer') {
45+
if (!node.nodes || node.nodes.length > 0) {
46+
continue
47+
}
48+
}
49+
50+
seenOtherNodes = true
51+
} else if (node.type === 'rule') {
52+
seenOtherNodes = true
4053
}
4154
}
4255

0 commit comments

Comments
 (0)