var lodash = require('lodash');

module.exports = {
    applyRules: function(rules, element, opts) {
        if (!rules) {
            return [];
        }

        return lodash.flatten(rules.map(function(rule) {
            return rule.lint.call(rule, element, opts);
        }));
    }
};

@@ -219,22 +219,28 @@
         
-return
+var issues =
  rule.li
@@ -268,16 +268,380 @@
 , opts);
+%0A%0A            // apparently we can also get an issue directly, instead of an array of issues%0A            if (!Array.isArray(issues)) %7B%0A                issues.rule = rule.name;%0A            %7D%0A            else %7B%0A                issues.forEach(function (issue) %7B%0A                    issue.rule = rule.name;%0A                %7D);%0A            %7D%0A%0A            return issues;
 %0A       
@@ -646,16 +646,17 @@
    %7D));%0A
+%0A
     %7D%0A%7D;

Add rule name to issues for a better output