{"version":3,"file":"js/filter-nav.e0401774a79a8bcf0b96.bundle.js","mappings":"gYAAmF,gCACtEA,EAAS,WAClB,WAAYC,EAAWC,IAAS,mCAC5BC,KAAKC,IAAMH,EACXE,KAAKE,SAAWF,KAAKC,IAAIE,iBAAiB,qBAC1CH,KAAKI,cAAgBC,SAASF,iBAAiB,kBAC/CH,KAAKM,cAAgB,GACrB,EAAAN,KAAI,UAAJA,KACJ,CAsCC,OAtCA,2CAOD,WAAsB,WAClBA,KAAKE,SAASK,SAAQ,SAACC,GAAY,QACzBC,EAAeD,EAAQE,UAAUC,SAAS,4BAC1CC,GAA+D,QAA1C,EAAAJ,EAAQK,cAAc,4BAAoB,aAA1C,EAA4CC,aAAa,WAA8C,QAAvC,EAAIN,EAAQK,cAAc,qBAAa,aAAnC,EAAqCE,SAAS,EAEzIN,GAAiBG,IACrB,EAAKN,cAAgB,GACrB,EAAKA,cAAcU,KAAKJ,EAAmBK,MAAM,KAAK,IAC1D,IAEAjB,KAAKkB,aACT,GAAC,yBAED,WAAc,WAEVlB,KAAKI,cAAcG,SAAQ,SAACY,GACxB,IAAMC,EAAUD,EAAML,aAAa,MACnCK,EAAMT,UAAUW,OAAO,0BACsD,IAA1E,EAAKf,cAAcgB,WAAU,SAACC,GAAE,OAAKA,IAAOH,GAAkB,QAAPG,CAAY,KAClEJ,EAAMT,UAAUc,IAAI,wBAE5B,KACAC,EAAAA,EAAAA,KACJ,GAEA,iCACA,SAAoBC,GAChBA,EAAEC,iBACF3B,KAAKE,SAASK,SAAQ,SAACC,GAAO,OAAKA,EAAQE,UAAUW,OAAO,2BAA2B,IACvFK,EAAEE,cAAclB,UAAUc,IAAI,4BAC9BxB,KAAK6B,qBACT,KAAC,EA7CiB,GAwDrB,aA9CO7B,KAAK6B,sBACL,EAAA7B,KAAI,UAAJA,KACJ,CAAC,aAmCoB,WACjBA,KAAKE,SAASK,SAAQ,SAAAC,GACfA,EAAQE,UAAUC,SAAS,8BAC1BH,EAAQsB,iBAAiB,UAAU,SAACJ,GAAC,OAAK,EAAKK,oBAAoBL,EAAE,IAGzElB,EAAQsB,iBAAiB,SAAS,SAACJ,GAAC,OAAK,EAAKK,oBAAoBL,EAAE,GACxE,GACJ,CCtDmBrB,SAASF,iBAAiB,kCAClCI,SAAQ,SAACN,GAAG,OAAK,IAAIJ,EAAUI,EAAI,G","sources":["webpack:///./scripts/filter-nav/FilterNav.js","webpack:///./scripts/filter-nav/index.js"],"sourcesContent":["import { refreshAllControllers } from \"@/scripts/common/api/scrolltrigger.services\"\r\nexport class FilterNav {\r\n constructor(container, options) {\r\n this.nav = container\r\n this.triggers = this.nav.querySelectorAll('.filter-nav__item')\r\n this.panelSections = document.querySelectorAll('.section-panel')\r\n this.activeSection = []\r\n this.#_init()\r\n }\r\n\r\n #_init() {\r\n this.updateActiveSection()\r\n this.#_addEventListener()\r\n }\r\n\r\n updateActiveSection() {\r\n this.triggers.forEach((trigger) => {\r\n const activeTarget = trigger.classList.contains('filter-nav__item--active')\r\n const activeTargetLinkId = trigger.querySelector('.filter-nav__link')?.getAttribute('href') || trigger.querySelector('.dropdown ')?.value || false\r\n \r\n if(!activeTarget || !activeTargetLinkId) return\r\n this.activeSection = []\r\n this.activeSection.push(activeTargetLinkId.split('#')[1])\r\n })\r\n\r\n this.updatePanel()\r\n }\r\n\r\n updatePanel() {\r\n \r\n this.panelSections.forEach((panel) => {\r\n const panelId = panel.getAttribute('id')\r\n panel.classList.remove('section-panel--active')\r\n if(this.activeSection.findIndex((id) => id === panelId || id === 'all') !== -1 ) {\r\n panel.classList.add('section-panel--active')\r\n }\r\n })\r\n refreshAllControllers() // Refresh all scrollcontrollers\r\n }\r\n\r\n // Listeners\r\n switchActiveSection(e) {\r\n e.preventDefault()\r\n this.triggers.forEach((trigger) => trigger.classList.remove('filter-nav__item--active'))\r\n e.currentTarget.classList.add('filter-nav__item--active')\r\n this.updateActiveSection()\r\n }\r\n\r\n #_addEventListener() {\r\n this.triggers.forEach(trigger => {\r\n if(trigger.classList.contains('filter-nav__item--dropdown')) {\r\n trigger.addEventListener(\"select\", (e) => this.switchActiveSection(e))\r\n return\r\n }\r\n trigger.addEventListener(\"click\", (e) => this.switchActiveSection(e))\r\n })\r\n }\r\n}","import {FilterNav} from './FilterNav'\r\n(function(){\r\n const filterNavs = document.querySelectorAll('.filter-nav:not([data-native])')\r\n filterNavs.forEach((nav) => new FilterNav(nav))\r\n})()"],"names":["FilterNav","container","options","this","nav","triggers","querySelectorAll","panelSections","document","activeSection","forEach","trigger","activeTarget","classList","contains","activeTargetLinkId","querySelector","getAttribute","value","push","split","updatePanel","panel","panelId","remove","findIndex","id","add","refreshAllControllers","e","preventDefault","currentTarget","updateActiveSection","addEventListener","switchActiveSection"],"sourceRoot":""}