text: // Generated by CoffeeScript 1.9.3
  (function() {
    var Adapter, MinifyCSS, W,
      extend = 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;
  
    Adapter = require('../../adapter_base');
  
    W = require('when');
  
    MinifyCSS = (function(superClass) {
      var compile;
  
      extend(MinifyCSS, superClass);
  
      function MinifyCSS() {
        return MinifyCSS.__super__.constructor.apply(this, arguments);
      }
  
      MinifyCSS.prototype.name = 'minify-css';
  
      MinifyCSS.prototype.extensions = ['css'];
  
      MinifyCSS.prototype.output = 'css';
  
      MinifyCSS.prototype.supportedEngines = ['clean-css'];
  
  
      /**
       * It is sometimes isolated, but not always because you can get it to process
         `import` rules with `processImport`
       */
  
      MinifyCSS.prototype.isolated = false;
  
      MinifyCSS.prototype._render = function(str, options) {
        return compile((function(_this) {
          return function() {
            return (new _this.engine(options)).minify(str);
          };
        })(this));
      };
  
      compile = function(fn) {
        var err, res;
        try {
          res = fn();
        } catch (_error) {
          err = _error;
          return W.reject(err);
        }
        if (res.errors.length > 0) {
          W.reject(res);
        }
        return W.resolve({
          result: res.styles,
          warnings: res.warnings,
          stats: res.stats
        });
      };
  
      return MinifyCSS;
  
    })(Adapter);
  
    module.exports = MinifyCSS;
  
  }).call(this);
  