{"version":3,"file":"product-media-thumbnails.546b3ba9.js","sources":["../../../src/js/_parts/product-media-thumbnails.ts"],"sourcesContent":["import {debounce} from '../_utilities/debounce'\n\nexport default function (productMediaNav: HTMLElement) {\n const productMediaContainer = document.querySelector(\n '#product-media'\n ) as HTMLElement\n const productMediaList = productMediaContainer.querySelector(\n ':scope > ul'\n ) as HTMLElement\n const productMedia = productMediaList?.querySelector(\n ':scope > li'\n ) as HTMLElement\n const productMediaButtons =\n productMediaNav.querySelectorAll('button')\n\n // for each button\n for (const button of productMediaButtons) {\n button.addEventListener('click', (e) => {\n e.preventDefault()\n\n // get the index based on the aria-controls attribute\n let index = button.getAttribute('aria-controls') as string\n index = index?.replace('product-media-', '')\n\n // set border color for all buttons\n for (const button of productMediaButtons) {\n button.classList.remove('border-primary-900')\n button.classList.add('border-gray-line')\n }\n\n // add a blue border to the active button\n button.classList.add('border-primary-900')\n\n // set the data-product-media-active attribute\n productMediaList.dataset.productMediaActive = index\n\n // got to the corresponding media element\n goToMedia(Number(index))\n })\n }\n\n // go to media function\n function goToMedia(num: number) {\n productMediaList.style.transform = `translateX(-${\n (num - 1) * productMedia.offsetWidth\n }px)`\n }\n\n // window resize\n function windowResize() {\n goToMedia(Number(productMediaList.dataset.productMediaActive))\n }\n\n window.addEventListener('resize', debounce(windowResize))\n}\n"],"names":["productMediaThumbnails","productMediaNav","productMediaList","productMedia","productMediaButtons","button","e","index","goToMedia","num","windowResize","debounce"],"mappings":"2CAEA,SAAAA,EAAyBC,EAA8B,CAInD,MAAMC,EAHwB,SAAS,cACnC,gBAAA,EAE2C,cAC3C,aAAA,EAEEC,EAAeD,GAAA,YAAAA,EAAkB,cACnC,eAEEE,EACFH,EAAgB,iBAAoC,QAAQ,EAGhE,UAAWI,KAAUD,EACVC,EAAA,iBAAiB,QAAUC,GAAM,CACpCA,EAAE,eAAe,EAGb,IAAAC,EAAQF,EAAO,aAAa,eAAe,EACvCE,EAAAA,GAAA,YAAAA,EAAO,QAAQ,iBAAkB,IAGzC,UAAWF,KAAUD,EACjBC,EAAO,UAAU,OAAO,oBAAoB,EAC5CA,EAAO,UAAU,IAAI,kBAAkB,EAIpCA,EAAA,UAAU,IAAI,oBAAoB,EAGzCH,EAAiB,QAAQ,mBAAqBK,EAGpCC,EAAA,OAAOD,CAAK,CAAC,CAAA,CAC1B,EAIL,SAASC,EAAUC,EAAa,CAC5BP,EAAiB,MAAM,UAAY,gBAC9BO,EAAM,GAAKN,EAAa,gBAEjC,CAGA,SAASO,GAAe,CACpBF,EAAU,OAAON,EAAiB,QAAQ,kBAAkB,CAAC,CACjE,CAEA,OAAO,iBAAiB,SAAUS,EAASD,CAAY,CAAC,CAC5D"}