{"version":3,"file":"component-servicePageNavigation.chunk.js","mappings":"+JAEe,MAAMA,UAA8B,IAC/CC,YAAYC,GACRC,MAAMD,GACNE,KAAKC,gBACDD,KAAKE,IAAIC,UAAUC,SAAS,WAC5BJ,KAAKK,uBACLL,KAAKM,eAEb,CACAL,gBACI,IAAIM,EAAUP,KAAKE,IAAIM,cAAc,2BACrC,IAAKD,EAAS,CACV,IAAIE,EAAcT,KAAKE,IAAIM,cAAc,WAAWE,OAAOC,SAASC,cAEpE,GADAL,EAAUE,GAAeA,EAAYI,eAChCJ,EAAa,CACd,MAAMK,EAAaC,SAASC,KAAKR,cAAc,SAASS,aAAa,eAC/DC,EAAcJ,GAAcA,EAAWK,MAAM,KAAK,GAAGC,oBAC3Db,EAAUP,KAAKE,IAAIM,cAAc,sBAAsBU,MAC3D,CACAX,GAAWA,EAAQc,aAAa,eAAgB,OACpD,CACJ,CACAhB,uBACI,IAAIiB,EAAMtB,KAAKE,IAAIM,cAAc,UAC7Be,EAAKvB,KAAKE,IAAIM,cAAc,MAC5BgB,EAAQD,EAAGE,iBAAiB,MAChCH,EAAID,aAAa,OAAQ,YACzBE,EAAGF,aAAa,OAAQ,WACxBE,EAAGF,aAAa,WAAY,MAC5BE,EAAGF,aAAa,KAAMC,EAAII,GAAGC,QAAQ,QAAS,YAC9CH,EAAMI,SAASC,IACXA,EAAKR,aAAa,OAAQ,UAC1BQ,EAAKR,aAAa,gBAAiB,SACnCQ,EAAKrB,cAAc,mBAAqBqB,EAAKrB,cAAc,kBAAkBsB,SAC7ED,EAAKR,aAAa,QAASQ,EAAKrB,cAAc,KAAKS,aAAa,SAChEY,EAAKR,aAAa,YAAaQ,EAAKrB,cAAc,KAAKS,aAAa,SACpEY,EAAKE,UAAYF,EAAKrB,cAAc,KAAKuB,UACC,SAAtCF,EAAKZ,aAAa,iBAClBY,EAAKR,aAAa,gBAAiB,QACnCC,EAAIS,UAAYF,EAAKE,WAGrBF,EAAKR,aAAa,gBAAiB,SAEvCQ,EAAKG,gBAAgB,eAAe,GAE5C,CACA1B,eACIN,KAAKiC,SAAW,IAAI,UAASjC,KAAKE,KAClCF,KAAKkC,iBACT,CACAA,kBACIlC,KAAKE,IAAIiC,iBAAiB,UAAWC,IAEjC,MAAMC,EADQrC,KAAKiC,SAASK,UACA9B,cAAc,0BAA0BS,aAAa,aAC7EoB,GAA+B,SAAhBA,GAA0C,KAAhBA,GACzC3B,OAAOC,SAAS4B,OAAOF,EAC3B,GAER,E","sources":["webpack:///./assets/src/scripts/components/servicePageNavigation.ts"],"sourcesContent":["import Combobox from './comboBox';\nimport BaseComponent from '../base/baseComponent';\nexport default class ServicePageNavigation extends BaseComponent {\n    constructor(element) {\n        super(element);\n        this.defineCurrent();\n        if (this.$el.classList.contains('combo')) {\n            this.setMarkupForCombobox();\n            this.initCombobox();\n        }\n    }\n    defineCurrent() {\n        let current = this.$el.querySelector('li[aria-current=\"true\"]');\n        if (!current) {\n            let currentLink = this.$el.querySelector(`[href*=\"${window.location.pathname}\"]`);\n            current = currentLink && currentLink.parentElement;\n            if (!currentLink) {\n                const pageAction = document.body.querySelector('.page').getAttribute('data-action');\n                const currentArea = pageAction && pageAction.split('-')[0].toLocaleLowerCase();\n                current = this.$el.querySelector(`[data-servicearea=\"${currentArea}\"]`);\n            }\n            current && current.setAttribute('aria-current', 'true');\n        }\n    }\n    setMarkupForCombobox() {\n        let btn = this.$el.querySelector('button');\n        let ul = this.$el.querySelector('ul');\n        let items = ul.querySelectorAll('li');\n        btn.setAttribute('role', 'combobox');\n        ul.setAttribute('role', 'listbox');\n        ul.setAttribute('tabindex', '-1');\n        ul.setAttribute('id', btn.id.replace('combo', 'listbox'));\n        items.forEach((item) => {\n            item.setAttribute('role', 'option');\n            item.setAttribute('aria-selected', 'false');\n            item.querySelector('.icon--chevron') && item.querySelector('.icon--chevron').remove();\n            item.setAttribute('value', item.querySelector('a').getAttribute('href'));\n            item.setAttribute('data-href', item.querySelector('a').getAttribute('href'));\n            item.innerHTML = item.querySelector('a').innerHTML;\n            if (item.getAttribute('aria-current') === 'true') {\n                item.setAttribute('aria-selected', 'true');\n                btn.innerHTML = item.innerHTML;\n            }\n            else {\n                item.setAttribute('aria-selected', 'false');\n            }\n            item.removeAttribute('aria-current');\n        });\n    }\n    initCombobox() {\n        this.navCombo = new Combobox(this.$el);\n        this.listenForChange();\n    }\n    listenForChange() {\n        this.$el.addEventListener('change', (e) => {\n            let listbox = this.navCombo.listboxEl;\n            const selectedUrl = listbox.querySelector('[aria-selected=\"true\"]').getAttribute('data-href');\n            if (selectedUrl && selectedUrl !== 'null' && selectedUrl !== '') {\n                window.location.assign(selectedUrl);\n            }\n        });\n    }\n}\n"],"names":["ServicePageNavigation","constructor","element","super","this","defineCurrent","$el","classList","contains","setMarkupForCombobox","initCombobox","current","querySelector","currentLink","window","location","pathname","parentElement","pageAction","document","body","getAttribute","currentArea","split","toLocaleLowerCase","setAttribute","btn","ul","items","querySelectorAll","id","replace","forEach","item","remove","innerHTML","removeAttribute","navCombo","listenForChange","addEventListener","e","selectedUrl","listboxEl","assign"],"sourceRoot":""}