| var MODIFIER_PATTERN = /\-\-.+$/; |
| |
| function rulesOverlap(rule1, rule2, bemMode) { |
| var scope1; |
| var scope2; |
| var i, l; |
| var j, m; |
| |
| for (i = 0, l = rule1.length; i < l; i++) { |
| scope1 = rule1[i][1]; |
| |
| for (j = 0, m = rule2.length; j < m; j++) { |
| scope2 = rule2[j][1]; |
| |
| if (scope1 == scope2) { |
| return true; |
| } |
| |
| if (bemMode && withoutModifiers(scope1) == withoutModifiers(scope2)) { |
| return true; |
| } |
| } |
| } |
| |
| return false; |
| } |
| |
| function withoutModifiers(scope) { |
| return scope.replace(MODIFIER_PATTERN, ''); |
| } |
| |
| module.exports = rulesOverlap; |