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.
		
		
		
		
		
			
		
			
				
					34 lines
				
				669 B
			
		
		
			
		
	
	
					34 lines
				
				669 B
			| 
											3 years ago
										 | "use strict"; | ||
|  | 
 | ||
|  | var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); | ||
|  | 
 | ||
|  | exports.__esModule = true; | ||
|  | exports.default = collectSiblings; | ||
|  | 
 | ||
|  | var _matches = _interopRequireDefault(require("./matches")); | ||
|  | 
 | ||
|  | function collectSiblings(node, refNode, selector) { | ||
|  |   if (refNode === void 0) { | ||
|  |     refNode = null; | ||
|  |   } | ||
|  | 
 | ||
|  |   if (selector === void 0) { | ||
|  |     selector = null; | ||
|  |   } | ||
|  | 
 | ||
|  |   var siblings = []; | ||
|  | 
 | ||
|  |   for (; node; node = node.nextElementSibling) { | ||
|  |     if (node !== refNode) { | ||
|  |       if (selector && (0, _matches.default)(node, selector)) { | ||
|  |         break; | ||
|  |       } | ||
|  | 
 | ||
|  |       siblings.push(node); | ||
|  |     } | ||
|  |   } | ||
|  | 
 | ||
|  |   return siblings; | ||
|  | } | ||
|  | 
 | ||
|  | module.exports = exports["default"]; |