25 lines
		
	
	
		
			740 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			740 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
var walk = require('css-tree').walk;
 | 
						|
var handlers = {
 | 
						|
    Atrule: require('./Atrule'),
 | 
						|
    AttributeSelector: require('./AttributeSelector'),
 | 
						|
    Value: require('./Value'),
 | 
						|
    Dimension: require('./Dimension'),
 | 
						|
    Percentage: require('./Percentage'),
 | 
						|
    Number: require('./Number'),
 | 
						|
    String: require('./String'),
 | 
						|
    Url: require('./Url'),
 | 
						|
    Hash: require('./color').compressHex,
 | 
						|
    Identifier: require('./color').compressIdent,
 | 
						|
    Function: require('./color').compressFunction
 | 
						|
};
 | 
						|
 | 
						|
module.exports = function(ast) {
 | 
						|
    walk(ast, {
 | 
						|
        leave: function(node, item, list) {
 | 
						|
            if (handlers.hasOwnProperty(node.type)) {
 | 
						|
                handlers[node.type].call(this, node, item, list);
 | 
						|
            }
 | 
						|
        }
 | 
						|
    });
 | 
						|
};
 |