UNPKG

478 BJavaScriptView Raw
1module.exports = function getContainingNode(node) {
2 if (node.type === 'rule' || node.type === 'atrule') {
3 return node;
4 }
5
6 // postcss-styled-syntax: declarations are children of Root node
7 if (node.parent?.type === 'root' && node.parent?.raws.isRuleLike) {
8 return node.parent;
9 }
10
11 // @stylelint/postcss-css-in-js: declarations are children of Root node
12 if (node.parent?.document?.nodes?.some((item) => item.type === 'root')) {
13 return node.parent;
14 }
15
16 return node;
17};