basant307/AI_Governance_Project
048
1let Prefixer = require('./prefixer')2 3class AtRule extends Prefixer {4 /**5 * Clone and add prefixes for at-rule6 */7 add(rule, prefix) {8 let prefixed = prefix + rule.name9 10 let already = rule.parent.some(11 i => i.name === prefixed && i.params === rule.params12 )13 if (already) {14 return undefined15 }16 17 let cloned = this.clone(rule, { name: prefixed })18 return rule.parent.insertBefore(rule, cloned)19 }20 21 /**22 * Clone node with prefixes23 */24 process(node) {25 let parent = this.parentPrefix(node)26 27 for (let prefix of this.prefixes) {28 if (!parent || parent === prefix) {29 this.add(node, prefix)30 }31 }32 }33}34 35module.exports = AtRule36 