{"version":3,"file":"overview-enRrVlge.js","sources":["../../src/scripts/modules/overview.ts"],"sourcesContent":["import { Component } from '@verndale/core';\nimport { ReplaceHeading, ConditionalDisplay, ExtendedWindowType } from '../helpers/global';\nimport { splide } from '../helpers/splide';\nclass Overview extends Component {\n setupDefaults() {\n this.dom = {\n heading: this.el.querySelector('.v-section-heading'),\n summaryImages: this.el.querySelectorAll('.v-section-overview__icon'),\n tooltips: this.el.querySelectorAll('.v-section-overview__tooltip'),\n triggers: this.el.querySelectorAll('.v-section-overview__link'),\n icons: this.el.querySelectorAll('.v-section-overview__tooltip-icon'),\n splide: this.el.querySelector('.splide'),\n slides: this.el.querySelectorAll('.splide__slide')\n };\n\n if (ConditionalDisplay(this.el.id)) {\n this.el.style.display = 'none';\n }\n\n const splideOptions = {\n perPage: 1.2,\n breakpoints: {\n 768: {\n perPage: 1,\n padding: {\n left: 0,\n right: '50%'\n }\n },\n 1280: {\n perPage: 2,\n padding: {\n left: 0,\n right: '30%'\n }\n }\n }\n };\n\n if ((this.dom.slides as NodeList)?.length > 0 && this.dom.splide) {\n splide(this.el.querySelector('.splide') as HTMLElement, splideOptions);\n } else {\n if (this.dom.splide) {\n (this.dom.splide as HTMLElement).style.display = 'none';\n }\n }\n\n this.updateTooltipContent();\n if (this.dom.heading) {\n ReplaceHeading(this.dom.heading as HTMLElement);\n }\n }\n\n addListeners() {\n document.body.addEventListener('mousedown', e => {\n this.handleCloseTooltip(e);\n });\n\n document.body.addEventListener('touchend', e => {\n this.handleCloseTooltip(e);\n });\n\n (this.dom.icons as NodeListOf).forEach(trigger => {\n trigger.addEventListener('mouseover', e => {\n this.handleTriggerTooltip(e);\n });\n\n trigger.addEventListener('mouseout', () => {\n this.handleCloseAll();\n });\n });\n }\n\n updateTooltipContent() {\n (this.dom.tooltips as NodeListOf).forEach(tooltip => {\n tooltip.innerHTML = '';\n const content = (tooltip.dataset.tooltip as string).toLowerCase();\n tooltip.innerHTML = (window as ExtendedWindowType)?.tooltips[content];\n });\n }\n\n handleTriggerTooltip(e: Event) {\n this.handleCloseAll();\n const trigger = (e.currentTarget as HTMLElement).closest('.v-section-overview__label-wrapper');\n const tooltip = trigger?.querySelector('.v-section-overview__tooltip');\n\n if (tooltip) {\n if (tooltip.style.display === 'block') {\n tooltip.style.display = 'none';\n } else {\n tooltip.style.display = 'block';\n }\n }\n }\n\n handleCloseAll() {\n (this.dom.tooltips as NodeListOf).forEach(tooltip => {\n tooltip.style.display = 'none';\n });\n }\n\n handleCloseTooltip(e: Event) {\n if (!(e.target as HTMLElement)?.closest('.v-section-overview__label-wrapper')) {\n this.handleCloseAll();\n }\n }\n}\n\nexport default Overview;\n"],"names":["Overview","Component","ConditionalDisplay","splideOptions","_a","splide","ReplaceHeading","trigger","e","tooltip","content"],"mappings":"8HAGA,MAAMA,UAAiBC,CAAU,CAC/B,eAAgB,OACd,KAAK,IAAM,CACT,QAAS,KAAK,GAAG,cAA2B,oBAAoB,EAChE,cAAe,KAAK,GAAG,iBAA8B,2BAA2B,EAChF,SAAU,KAAK,GAAG,iBAA8B,8BAA8B,EAC9E,SAAU,KAAK,GAAG,iBAA8B,2BAA2B,EAC3E,MAAO,KAAK,GAAG,iBAA8B,mCAAmC,EAChF,OAAQ,KAAK,GAAG,cAA2B,SAAS,EACpD,OAAQ,KAAK,GAAG,iBAAiB,gBAAgB,CAAA,EAG/CC,EAAmB,KAAK,GAAG,EAAE,IAC1B,KAAA,GAAG,MAAM,QAAU,QAG1B,MAAMC,EAAgB,CACpB,QAAS,IACT,YAAa,CACX,IAAK,CACH,QAAS,EACT,QAAS,CACP,KAAM,EACN,MAAO,KACT,CACF,EACA,KAAM,CACJ,QAAS,EACT,QAAS,CACP,KAAM,EACN,MAAO,KACT,CACF,CACF,CAAA,IAGGC,EAAA,KAAK,IAAI,SAAT,YAAAA,EAA8B,QAAS,GAAK,KAAK,IAAI,OACxDC,EAAO,KAAK,GAAG,cAAc,SAAS,EAAkBF,CAAa,EAEjE,KAAK,IAAI,SACV,KAAK,IAAI,OAAuB,MAAM,QAAU,QAIrD,KAAK,qBAAqB,EACtB,KAAK,IAAI,SACIG,EAAA,KAAK,IAAI,OAAsB,CAElD,CAEA,cAAe,CACJ,SAAA,KAAK,iBAAiB,YAAkB,GAAA,CAC/C,KAAK,mBAAmB,CAAC,CAAA,CAC1B,EAEQ,SAAA,KAAK,iBAAiB,WAAiB,GAAA,CAC9C,KAAK,mBAAmB,CAAC,CAAA,CAC1B,EAEA,KAAK,IAAI,MAAkC,QAAmBC,GAAA,CACrDA,EAAA,iBAAiB,YAAkBC,GAAA,CACzC,KAAK,qBAAqBA,CAAC,CAAA,CAC5B,EAEOD,EAAA,iBAAiB,WAAY,IAAM,CACzC,KAAK,eAAe,CAAA,CACrB,CAAA,CACF,CACH,CAEA,sBAAuB,CACpB,KAAK,IAAI,SAAqC,QAAmBE,GAAA,CAChEA,EAAQ,UAAY,GACpB,MAAMC,EAAWD,EAAQ,QAAQ,QAAmB,YAAY,EACxDA,EAAA,UAAa,2BAA+B,SAASC,EAAO,CACrE,CACH,CAEA,qBAAqB,EAAU,CAC7B,KAAK,eAAe,EACpB,MAAMH,EAAW,EAAE,cAA8B,QAAQ,oCAAoC,EACvFE,EAAUF,GAAA,YAAAA,EAAS,cAA2B,gCAEhDE,IACEA,EAAQ,MAAM,UAAY,QAC5BA,EAAQ,MAAM,QAAU,OAExBA,EAAQ,MAAM,QAAU,QAG9B,CAEA,gBAAiB,CACd,KAAK,IAAI,SAAqC,QAAmBA,GAAA,CAChEA,EAAQ,MAAM,QAAU,MAAA,CACzB,CACH,CAEA,mBAAmB,EAAU,QACrBL,EAAA,EAAE,SAAF,MAAAA,EAA0B,QAAQ,uCACtC,KAAK,eAAe,CAExB,CACF"}