{"version":3,"file":"selectorMatches.min.mjs","sources":["../../../src/parser/selectorMatches.ts"],"sourcesContent":["export function selectorMatches(element: HTMLElement, selector: string) {\n  const nodeName = element.nodeName;\n  const classNames = element.getAttribute('class');\n  const id = element.getAttribute('id');\n  const azAz = '(?![a-zA-Z\\\\-]+)';\n  let matcher;\n  // i check if a selector matches slicing away part from it.\n  // if i get empty string i should match\n  matcher = new RegExp('^' + nodeName, 'i');\n  selector = selector.replace(matcher, '');\n  if (id && selector.length) {\n    matcher = new RegExp('#' + id + azAz, 'i');\n    selector = selector.replace(matcher, '');\n  }\n  if (classNames && selector.length) {\n    const splitClassNames = classNames.split(' ');\n    for (let i = splitClassNames.length; i--; ) {\n      matcher = new RegExp('\\\\.' + splitClassNames[i] + azAz, 'i');\n      selector = selector.replace(matcher, '');\n    }\n  }\n  return selector.length === 0;\n}\n"],"names":["selectorMatches","element","selector","nodeName","classNames","getAttribute","id","azAz","matcher","RegExp","replace","length","splitClassNames","split","i"],"mappings":"AAAO,SAASA,EAAgBC,EAAsBC,GACpD,MAAMC,EAAWF,EAAQE,SACnBC,EAAaH,EAAQI,aAAa,SAClCC,EAAKL,EAAQI,aAAa,MAC1BE,EAAO,mBACb,IAAIC,EASJ,GANAA,EAAU,IAAIC,OAAO,IAAMN,EAAU,KACrCD,EAAWA,EAASQ,QAAQF,EAAS,IACjCF,GAAMJ,EAASS,SACjBH,EAAU,IAAIC,OAAO,IAAMH,EAAKC,EAAM,KACtCL,EAAWA,EAASQ,QAAQF,EAAS,KAEnCJ,GAAcF,EAASS,OAAQ,CACjC,MAAMC,EAAkBR,EAAWS,MAAM,KACzC,IAAK,IAAIC,EAAIF,EAAgBD,OAAQG,KACnCN,EAAU,IAAIC,OAAO,MAAQG,EAAgBE,GAAKP,EAAM,KACxDL,EAAWA,EAASQ,QAAQF,EAAS,GAEzC,CACA,OAA2B,IAApBN,EAASS,MAClB"}