- Complete React app with 7 developer tools - JSON Tool with visual structured editor - Serialize Tool with visual structured editor - URL, Base64, CSV/JSON, Beautifier, Diff tools - Responsive navigation with dropdown menu - Dark/light mode toggle - Mobile-responsive design with sticky header - All tools working with copy/paste functionality
33 lines
594 B
JavaScript
33 lines
594 B
JavaScript
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;
|