You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
665 B
28 lines
665 B
import { walk } from 'css-tree'; |
|
import Atrule from './Atrule.js'; |
|
import Comment from './Comment.js'; |
|
import Declaration from './Declaration.js'; |
|
import Raw from './Raw.js'; |
|
import Rule from './Rule.js'; |
|
import TypeSelector from './TypeSelector.js'; |
|
import WhiteSpace from './WhiteSpace.js'; |
|
|
|
const handlers = { |
|
Atrule, |
|
Comment, |
|
Declaration, |
|
Raw, |
|
Rule, |
|
TypeSelector, |
|
WhiteSpace |
|
}; |
|
|
|
export default function(ast, options) { |
|
walk(ast, { |
|
leave(node, item, list) { |
|
if (handlers.hasOwnProperty(node.type)) { |
|
handlers[node.type].call(this, node, item, list, options); |
|
} |
|
} |
|
}); |
|
};
|
|
|