1!function(){"use strict";function e(){return(document.documentElement.clientWidth||document.body.clientWidth||window.innerWidth)<window.theme.sizes.small}const t="[data-button-arrow]",s="[data-deferred-media-button]",i="model-viewer, video, iframe, button, [href], input, [tabindex]",n="[data-image-id]",o="[data-product-media-list]",d="[data-section-type]",a="slider__arrows",r="is-dragging",h="is-focused",u="media--active",c="media--hidden",l="media--hiding",v="data-active-media",m="data-button-prev",M="data-button-next",g="data-image-id",L="data-media-id",p="data-type",E="data-fader-desktop",b="data-fader-mobile";customElements.get("product-images")||customElements.define("product-images",class extends HTMLElement{constructor(){super(),this.initialized=!1,this.buttons=!1,this.isDown=!1,this.startX=0,this.startY=0,this.scrollLeft=0,this.onButtonArrowClick=e=>this.buttonArrowClickEvent(e),this.container=this.closest(d),this.handleMouseDown=this.handleMouseDown.bind(this),this.handleMouseLeave=this.handleMouseLeave.bind(this),this.handleMouseUp=this.handleMouseUp.bind(this),this.handleMouseMove=this.handleMouseMove.bind(this),this.handleKeyUp=this.handleKeyUp.bind(this),this.productMediaItems=this.querySelectorAll(n),this.productMediaList=this.querySelector(o),this.setHeight=this.setHeight.bind(this),this.toggleEvents=this.toggleEvents.bind(this),this.selectMediaEvent=e=>this.showMediaOnVariantSelect(e)}connectedCallback(){1!==Object.keys(this.productMediaItems).length&&(this.productMediaObserver(),this.toggleEvents(),this.listen(),this.setHeight())}disconnectedCallback(){this.unlisten()}listen(){document.addEventListener("theme:resize:width",this.toggleEvents),document.addEventListener("theme:resize:width",this.setHeight),this.addEventListener("theme:media:select",this.selectMediaEvent)}unlisten(){document.removeEventListener("theme:resize:width",this.toggleEvents),document.removeEventListener("theme:resize:width",this.setHeight),this.removeEventListener("theme:media:select",this.selectMediaEvent)}toggleEvents(){const t=e();t&&this.hasAttribute(b)||!t&&this.hasAttribute(E)?this.bindEventListeners():this.unbindEventListeners()}bindEventListeners(){this.initialized||(this.productMediaList.addEventListener("mousedown",this.handleMouseDown),this.productMediaList.addEventListener("mouseleave",this.handleMouseLeave),this.productMediaList.addEventListener("mouseup",this.handleMouseUp),this.productMediaList.addEventListener("mousemove",this.handleMouseMove),this.productMediaList.addEventListener("touchstart",this.handleMouseDown,{passive:!0}),this.productMediaList.addEventListener("touchend",this.handleMouseUp,{passive:!0}),this.productMediaList.addEventListener("touchmove",this.handleMouseMove,{passive:!0}),this.productMediaList.addEventListener("keyup",this.handleKeyUp),this.initArrows(),this.resetScrollPosition(),this.initialized=!0)}unbindEventListeners(){this.initialized&&(this.productMediaList.removeEventListener("mousedown",this.handleMouseDown),this.productMediaList.removeEventListener("mouseleave",this.handleMouseLeave),this.productMediaList.removeEventListener("mouseup",this.handleMouseUp),this.productMediaList.removeEventListener("mousemove",this.handleMouseMove),this.productMediaList.removeEventListener("touchstart",this.handleMouseDown),this.productMediaList.removeEventListener("touchend",this.handleMouseUp),this.productMediaList.removeEventListener("touchmove",this.handleMouseMove),this.productMediaList.removeEventListener("keyup",this.handleKeyUp),this.removeArrows(),this.initialized=!1)}handleMouseDown(e){this.isDown=!0,this.startX=(e.pageX||e.changedTouches[0].screenX)-this.offsetLeft,this.startY=(e.pageY||e.changedTouches[0].screenY)-this.offsetTop}handleMouseLeave(){this.isDown&&(this.isDown=!1)}handleMouseUp(e){const t=(e.pageX||e.changedTouches[0].screenX)-this.offsetLeft,s=(e.pageY||e.changedTouches[0].screenY)-this.offsetTop,i=t-this.startX,n=s-this.startY,o=i>0?1:-1,d=this.getCurrentMedia().hasAttribute(p)&&"image"===this.getCurrentMedia().getAttribute(p);Math.abs(i)>10&&Math.abs(i)>Math.abs(n)&&d&&(o<0?this.showNextImage():this.showPreviousImage()),this.isDown=!1,requestAnimationFrame((()=>{this.classList.remove(r)}))}handleMouseMove(){this.isDown&&this.classList.add(r)}handleKeyUp(e){"ArrowLeft"===e.code&&this.showPreviousImage(),"ArrowRight"===e.code&&this.showNextImage()}handleArrowsClickEvent(){this.querySelectorAll(t)?.forEach((e=>{e.addEventListener("click",(e=>{e.preventDefault(),e.target.hasAttribute(m)&&this.showPreviousImage(),e.target.hasAttribute(M)&&this.showNextImage()}))}))}resetScrollPosition(){0!==this.productMediaList.scrollLeft&&(this.productMediaList.scrollLeft=0)}initArrows(){if(!this.buttons.length){const e=document.createElement("div");e.classList.add(a),e.innerHTML=theme.sliderArrows.prev+theme.sliderArrows.next,this.productMediaList.append(e),this.buttons=this.querySelectorAll(t),this.buttonPrev=this.querySelector(`[${m}]`),this.buttonNext=this.querySelector(`[${M}]`)}this.handleArrowsClickEvent(),this.preloadImageOnArrowHover()}removeArrows(){this.querySelector(`.${a}`)?.remove()}preloadImageOnArrowHover(){this.buttonPrev?.addEventListener("mouseover",(()=>{const e=this.getPreviousMediaId();this.preloadImage(e)})),this.buttonNext?.addEventListener("mouseover",(()=>{const e=this.getNextMediaId();this.preloadImage(e)}))}preloadImage(e){this.querySelector(`[${L}="${e}"] img`)?.setAttribute("loading","eager")}showMediaOnVariantSelect(e){const t=e.detail.id;this.setActiveMedia(t)}getCurrentMedia(){return this.querySelector(`${n}.${u}`)}getNextMediaId(){const e=this.getCurrentMedia();return(e?.nextElementSibling.hasAttribute(g)?e?.nextElementSibling:this.querySelector(n))?.getAttribute(L)}getPreviousMediaId(){const e=this.getCurrentMedia(),t=this.productMediaItems.length-1;return(e?.previousElementSibling||this.productMediaItems[t])?.getAttribute(L)}showNextImage(){const e=this.getNextMediaId();this.selectMedia(e)}showPreviousImage(){const e=this.getPreviousMediaId();this.selectMedia(e)}selectMedia(e){this.dispatchEvent(new CustomEvent("theme:media:select",{detail:{id:e}}))}setActiveMedia(e){if(!e)return;this.setAttribute(v,e);const t=this.querySelector(`${n}.${u}`),o=this.querySelector(`[${L}="${e}"]`),d=o?.querySelector(i),a=o.querySelector("deferred-media");t?.classList.add(l),t?.classList.remove(u),o?.classList.remove(l,c),o?.classList.add(u),a&&!0!==a.getAttribute("loaded")&&o.querySelector(s)?.dispatchEvent(new Event("click",{bubbles:!1})),requestAnimationFrame((()=>{this.setHeight(),document.body.classList.contains(h)&&d?.focus()}))}setHeight(){const e=this.querySelector(`${n}.${u}`)?.offsetHeight||this.productMediaItems[0]?.offsetHeight;this.style.setProperty("--height",`${e}px`)}
1productMediaObserver(){this.productMediaItems.forEach((e=>{e.addEventListener("transitionend",(t=>{t.target==e&&e.classList.contains(l)&&(e.classList.remove(l),e.classList.add(c))})),e.addEventListener("transitioncancel",(t=>{t.target==e&&e.classList.contains(l)&&(e.classList.remove(l),e.classList.add(c))}))}))}})}();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.