(function() { var AtRule, Prefixer, __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }, __hasProp = {}.hasOwnProperty; Prefixer = require('./prefixer'); AtRule = (function(_super) { __extends(AtRule, _super); function AtRule() { return AtRule.__super__.constructor.apply(this, arguments); } AtRule.prototype.add = function(rule, prefix) { var already, cloned, prefixed; prefixed = prefix + rule.name; already = rule.parent.some(function(i) { return i.name === prefixed && i.params === rule.params; }); if (already) { return; } cloned = this.clone(rule, { name: prefixed }); return rule.parent.insertBefore(rule, cloned); }; AtRule.prototype.process = function(node) { var parent, prefix, _i, _len, _ref, _results; parent = this.parentPrefix(node); _ref = this.prefixes; _results = []; for (_i = 0, _len = _ref.length; _i < _len; _i++) { prefix = _ref[_i]; if (parent && parent !== prefix) { continue; } _results.push(this.add(node, prefix)); } return _results; }; return AtRule; })(Prefixer); module.exports = AtRule; }).call(this);