You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							33 lines
						
					
					
						
							596 B
						
					
					
				
			
		
		
	
	
							33 lines
						
					
					
						
							596 B
						
					
					
				| 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;
 |