| 23 | * @return {string} |
| 24 | */ |
| 25 | export function stringify (element, index, children, callback) { |
| 26 | switch (element.type) { |
| 27 | case LAYER: if (element.children.length) break |
| 28 | case IMPORT: case NAMESPACE: case DECLARATION: return element.return = element.return || element.value |
| 29 | case COMMENT: return '' |
| 30 | case KEYFRAMES: return element.return = element.value + '{' + serialize(element.children, callback) + '}' |
| 31 | case RULESET: if (!strlen(element.value = element.props.join(','))) return '' |
| 32 | } |
| 33 | |
| 34 | return strlen(children = serialize(element.children, callback)) ? element.return = element.value + '{' + children + '}' : '' |
| 35 | } |