| var wrapSingle = require('../wrap-for-optimizing').single; |
| |
| var Token = require('../../tokenizer/token'); |
| |
| function deep(property) { |
| var cloned = shallow(property); |
| for (var i = property.components.length - 1; i >= 0; i--) { |
| var component = shallow(property.components[i]); |
| component.value = property.components[i].value.slice(0); |
| cloned.components.unshift(component); |
| } |
| |
| cloned.dirty = true; |
| cloned.value = property.value.slice(0); |
| |
| return cloned; |
| } |
| |
| function shallow(property) { |
| var cloned = wrapSingle([ |
| Token.PROPERTY, |
| [Token.PROPERTY_NAME, property.name] |
| ]); |
| cloned.important = property.important; |
| cloned.hack = property.hack; |
| cloned.unused = false; |
| return cloned; |
| } |
| |
| module.exports = { |
| deep: deep, |
| shallow: shallow |
| }; |