{"version":3,"file":"chunk-jafjshg2.js","sources":["packages/sports/libs/common/core/utils/dom/src/lib/dom.utils.ts"],"sourcesContent":["import { Type } from '@angular/core';\n\n/**\n * Checks if an event is bubbling up from a particular element type.\n * Example: if a click event happened on an anchor element (or a child of an anchor element)\n *\n * @param event\n * @param targetType\n * @returns\n */\nexport function hasTarget(event: Event, targetType: Type): boolean {\n if (!event.currentTarget || !event.target) {\n return false;\n }\n\n const currentTarget = event.currentTarget as HTMLElement;\n const target = event.target as HTMLElement;\n\n return hasTargetInternal(target, currentTarget, targetType);\n}\n\nfunction hasTargetInternal(target: HTMLElement | null, currentTarget: HTMLElement, targetType: Type): boolean {\n if (target instanceof targetType) {\n return true;\n }\n\n if (currentTarget === target || !target) {\n return false;\n }\n\n return hasTargetInternal(target.parentElement, currentTarget, targetType);\n}\n"],"names":["hasTarget","event","targetType","currentTarget","target","hasTargetInternal","parentElement"],"mappings":"AAUM,SAAUA,CAAAA,CAAaC,EAAcC,CAAmB,CAAA,CAC1D,GAAI,CAACD,CAAAA,CAAME,eAAiB,CAACF,CAAAA,CAAMG,OAC/B,OAAO,CAAA,CAAA,CAGX,IAAMD,CAAgBF,CAAAA,CAAAA,CAAME,cACtBC,CAASH,CAAAA,CAAAA,CAAMG,MAErB,CAAA,OAAOC,CAAkBD,CAAAA,CAAAA,CAAQD,EAAeD,CAAU,CAC9D,CAEA,SAASG,CAAAA,CAAqBD,EAA4BD,CAA4BD,CAAAA,CAAAA,CAAmB,CACrG,OAAIE,CAAkBF,YAAAA,CAAAA,CACX,GAGPC,CAAkBC,GAAAA,CAAAA,EAAU,CAACA,CACtB,CAAA,CAAA,CAAA,CAGJC,EAAkBD,CAAOE,CAAAA,aAAAA,CAAeH,CAAeD,CAAAA,CAAU,CAC5E"}