{"version":3,"file":"product-quick-nav.ce0d6f8b.js","sources":["../../../src/js/_parts/product-quick-nav.ts"],"sourcesContent":["import {debounce} from '../_utilities/debounce'\n\nexport default function (productQuickNav: HTMLElement) {\n // set consts\n const toggleBtn = document.getElementById(\n 'product-quick-nav-toggle'\n ) as HTMLButtonElement\n const content = document.getElementById(\n 'product-quick-nav-content'\n ) as HTMLElement\n const activeCls = 'product-quick-nav--active'\n const ctas = content.querySelectorAll('.button')\n\n // toggle quick nav function\n function toggleQuickNav(open: boolean) {\n if (open) {\n toggleBtn.setAttribute('aria-expanded', 'true')\n productQuickNav.classList.add(activeCls)\n } else {\n toggleBtn.setAttribute('aria-expanded', 'false')\n productQuickNav.classList.remove(activeCls)\n }\n }\n\n // function to set the quick nav content height\n function setQuickNavContentHeight() {\n // save the height to a CSS vairable\n productQuickNav.style.setProperty(\n '--pqnch',\n `${content.offsetHeight}px`\n )\n }\n\n // initial call to set the quick nav content height CSS variable\n setQuickNavContentHeight()\n\n // add event listener to toggle button\n toggleBtn?.addEventListener('click', (e) => {\n e.preventDefault()\n toggleBtn.getAttribute('aria-expanded') === 'false'\n ? toggleQuickNav(true)\n : toggleQuickNav(false)\n })\n\n // add event listener to each cta\n ctas.forEach((cta) => cta.addEventListener('focus', () => toggleQuickNav(true)))\n\n // set content height var on screen resize\n window.addEventListener('resize', debounce(setQuickNavContentHeight))\n}\n"],"names":["productQuickNav","toggleBtn","content","activeCls","ctas","toggleQuickNav","open","setQuickNavContentHeight","e","cta","debounce"],"mappings":"2CAEA,SAAAA,EAAyBA,EAA8B,CAEnD,MAAMC,EAAY,SAAS,eACvB,0BAAA,EAEEC,EAAU,SAAS,eACrB,2BAAA,EAEEC,EAAY,4BACZC,EAAOF,EAAQ,iBAAoC,SAAS,EAGlE,SAASG,EAAeC,EAAe,CAC/BA,GACUL,EAAA,aAAa,gBAAiB,MAAM,EAC9BD,EAAA,UAAU,IAAIG,CAAS,IAE7BF,EAAA,aAAa,gBAAiB,OAAO,EAC/BD,EAAA,UAAU,OAAOG,CAAS,EAElD,CAGA,SAASI,GAA2B,CAEhCP,EAAgB,MAAM,YAClB,UACA,GAAGE,EAAQ,gBAAA,CAEnB,CAGyBK,IAGdN,GAAA,MAAAA,EAAA,iBAAiB,QAAUO,GAAM,CACxCA,EAAE,eAAe,EACPP,EAAA,aAAa,eAAe,IAAM,QACtCI,EAAe,EAAI,EACnBA,EAAe,EAAK,CAAA,GAIzBD,EAAA,QAASK,GAAQA,EAAI,iBAAiB,QAAS,IAAMJ,EAAe,EAAI,CAAC,CAAC,EAG/E,OAAO,iBAAiB,SAAUK,EAASH,CAAwB,CAAC,CACxE"}