{"version":3,"file":"static/js/5642.d222ccf8.chunk.js","mappings":"8MAkBaA,G,SAAmB,WAJhC,SAAAA,oBAAAC,IAAAC,EAAAA,EAAAA,GAAA,KAAAF,sB,uGAUU,KAAAG,kBAAoBC,KAAKC,a,QA+BlCC,EAAAA,EAAAA,GAAAN,oBAAA,EAAAO,IAAA,gBAAAC,IA7BC,SAAAA,MACE,IAAMC,GAAiBC,EAAAA,EAAAA,KAEvB,QAASD,IAAkBE,EAAAA,EAAAA,GAAaP,KAAKQ,KAAMH,E,GACpD,CAAAF,IAAA,YAAAM,MAGD,SAAAC,YACEV,KAAKW,gB,GACN,CAAAR,IAAA,aAAAM,MAGD,SAAAG,aACEZ,KAAKW,gB,GACN,CAAAR,IAAA,iBAAAM,MAEO,SAAAE,iBACN,IAAMV,EAAgBD,KAAKC,cACvBA,IAAkBD,KAAKD,oBAI3BC,KAAKD,kBAAoBE,EACzBA,EAAgBD,KAAKa,WAAWC,OAASd,KAAKe,UAAUD,O,GACzD,CAAAX,IAAA,SAAAM,MAED,SAAAO,SACE,OAAOC,EAAAA,EAAAA,GAACC,EAAAA,EAAI,CAAAf,IAAA,2CAACgB,MAAO,CAACC,QAAS,a,GAC/B,CAAAjB,IAAA,OAAAC,IAAA,e,4CApC6B,G","sources":["../node_modules/@coveo/atomic/dist/esm/src/components/common/atomic-focus-detector.tsx"],"sourcesContent":["import {\n h,\n Component,\n Element,\n Event,\n EventEmitter,\n Listen,\n Host,\n} from '@stencil/core';\nimport {getFocusedElement, isAncestorOf} from '../../utils/utils';\n\n/**\n * @internal\n */\n@Component({\n tag: 'atomic-focus-detector',\n shadow: false,\n})\nexport class AtomicFocusDetector {\n @Element() private host!: HTMLElement;\n\n @Event() focusEnter!: EventEmitter;\n @Event() focusExit!: EventEmitter;\n\n private focusWasContained = this.containsFocus;\n\n private get containsFocus() {\n const focusedElement = getFocusedElement();\n\n return !!focusedElement && isAncestorOf(this.host, focusedElement);\n }\n\n @Listen('focusin', {target: 'document'})\n onFocusIn() {\n this.onFocusChanged();\n }\n\n @Listen('focusout', {target: 'document'})\n onFocusOut() {\n this.onFocusChanged();\n }\n\n private onFocusChanged() {\n const containsFocus = this.containsFocus;\n if (containsFocus === this.focusWasContained) {\n return;\n }\n\n this.focusWasContained = containsFocus;\n containsFocus ? this.focusEnter.emit() : this.focusExit.emit();\n }\n\n render() {\n return ;\n }\n}\n"],"names":["AtomicFocusDetector","hostRef","_classCallCheck","focusWasContained","this","containsFocus","_createClass","key","get","focusedElement","getFocusedElement","isAncestorOf","host","value","onFocusIn","onFocusChanged","onFocusOut","focusEnter","emit","focusExit","render","h","Host","style","display"],"sourceRoot":""}