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.
		
		
		
		
		
			
		
			
				
					
					
						
							64 lines
						
					
					
						
							2.5 KiB
						
					
					
				
			
		
		
	
	
							64 lines
						
					
					
						
							2.5 KiB
						
					
					
				"use strict"; | 
						|
 | 
						|
exports.__esModule = true; | 
						|
exports.isNode = isNode; | 
						|
exports.isPseudoElement = isPseudoElement; | 
						|
exports.isPseudoClass = isPseudoClass; | 
						|
exports.isContainer = isContainer; | 
						|
exports.isNamespace = isNamespace; | 
						|
exports.isUniversal = exports.isTag = exports.isString = exports.isSelector = exports.isRoot = exports.isPseudo = exports.isNesting = exports.isIdentifier = exports.isComment = exports.isCombinator = exports.isClassName = exports.isAttribute = void 0; | 
						|
 | 
						|
var _types = require("./types"); | 
						|
 | 
						|
var _IS_TYPE; | 
						|
 | 
						|
var IS_TYPE = (_IS_TYPE = {}, _IS_TYPE[_types.ATTRIBUTE] = true, _IS_TYPE[_types.CLASS] = true, _IS_TYPE[_types.COMBINATOR] = true, _IS_TYPE[_types.COMMENT] = true, _IS_TYPE[_types.ID] = true, _IS_TYPE[_types.NESTING] = true, _IS_TYPE[_types.PSEUDO] = true, _IS_TYPE[_types.ROOT] = true, _IS_TYPE[_types.SELECTOR] = true, _IS_TYPE[_types.STRING] = true, _IS_TYPE[_types.TAG] = true, _IS_TYPE[_types.UNIVERSAL] = true, _IS_TYPE); | 
						|
 | 
						|
function isNode(node) { | 
						|
  return typeof node === "object" && IS_TYPE[node.type]; | 
						|
} | 
						|
 | 
						|
function isNodeType(type, node) { | 
						|
  return isNode(node) && node.type === type; | 
						|
} | 
						|
 | 
						|
var isAttribute = isNodeType.bind(null, _types.ATTRIBUTE); | 
						|
exports.isAttribute = isAttribute; | 
						|
var isClassName = isNodeType.bind(null, _types.CLASS); | 
						|
exports.isClassName = isClassName; | 
						|
var isCombinator = isNodeType.bind(null, _types.COMBINATOR); | 
						|
exports.isCombinator = isCombinator; | 
						|
var isComment = isNodeType.bind(null, _types.COMMENT); | 
						|
exports.isComment = isComment; | 
						|
var isIdentifier = isNodeType.bind(null, _types.ID); | 
						|
exports.isIdentifier = isIdentifier; | 
						|
var isNesting = isNodeType.bind(null, _types.NESTING); | 
						|
exports.isNesting = isNesting; | 
						|
var isPseudo = isNodeType.bind(null, _types.PSEUDO); | 
						|
exports.isPseudo = isPseudo; | 
						|
var isRoot = isNodeType.bind(null, _types.ROOT); | 
						|
exports.isRoot = isRoot; | 
						|
var isSelector = isNodeType.bind(null, _types.SELECTOR); | 
						|
exports.isSelector = isSelector; | 
						|
var isString = isNodeType.bind(null, _types.STRING); | 
						|
exports.isString = isString; | 
						|
var isTag = isNodeType.bind(null, _types.TAG); | 
						|
exports.isTag = isTag; | 
						|
var isUniversal = isNodeType.bind(null, _types.UNIVERSAL); | 
						|
exports.isUniversal = isUniversal; | 
						|
 | 
						|
function isPseudoElement(node) { | 
						|
  return isPseudo(node) && node.value && (node.value.startsWith("::") || node.value.toLowerCase() === ":before" || node.value.toLowerCase() === ":after"); | 
						|
} | 
						|
 | 
						|
function isPseudoClass(node) { | 
						|
  return isPseudo(node) && !isPseudoElement(node); | 
						|
} | 
						|
 | 
						|
function isContainer(node) { | 
						|
  return !!(isNode(node) && node.walk); | 
						|
} | 
						|
 | 
						|
function isNamespace(node) { | 
						|
  return isAttribute(node) || isTag(node); | 
						|
} |