PageSourceSearch

https://www.kutfromthekloth.com/cdn/shop/t/228/assets/slideshow-component.js?v=26818978511171305851774366227

js kutfromthekloth.com collected 2026-09-25 14:53:38 UTC 5,531 bytes, 2 lines download raw bytes

1customElements.get("slideshow-component")||customElements.define("slideshow-component",class extends HTMLElement{constructor(){super(),this.sliderControls=this.querySelector(".swiper-controls"),this.sliderInstance=!1,this.layout=this.dataset.layout,this.items=Number(this.dataset.items)}connectedCallback(){this.sliderInstance||(this.initSlider(),this.classList.contains("slideshow-height--adapt")&&this.calcSlideHeight())}static get observedAttributes(){return["selected-index"]}get selectedIndex(){return parseInt(this.getAttribute("selected-index"))||0}set selectedIndex(index){this.setAttribute("selected-index",`${index}`)}initSlider(){const additionModules=[FoxTheme.Swiper.Autoplay,FoxTheme.Swiper.EffectFade];this.sliderOptions={slidesPerView:1,spaceBetween:10,loop:!0,grabCursor:!0,allowTouchMove:!0,threshold:2,effect:"fade",on:{init:this.handleAfterInit.bind(this)},fadeEffect:{crossFade:!0}},this.sliderControls&&(this.sliderOptions.pagination={el:this.sliderControls.querySelector(".swiper-pagination"),clickable:!0}),this.layout==="centered"&&(this.sliderOptions={...this.sliderOptions,centeredSlides:!0,slidesPerView:"auto",effect:"slide"}),this.layout!=="centered"&&this.items===1&&(this.sliderOptions.loop=!1,this.classList.remove("slideshow-controls-visible--yes"));const autoplayDelay=parseInt(this.dataset.autoplay);if(autoplayDelay>0&&(this.sliderOptions={...this.sliderOptions,autoplay:{delay:autoplayDelay,disableOnInteraction:!1}}),this.sliderInstance=new window.FoxTheme.Carousel(this,this.sliderOptions,additionModules),this.sliderInstance.init(),this.sliderInstance.slider.on("realIndexChange",this.handleSlideChange.bind(this)),this.selectedIndex=this.sliderInstance.slider.realIndex,this.sliderInstance){if(this.layout==="centered"&&!FoxTheme.config.mqlMobile){const motionTextElements=Array.from(this.querySelectorAll("motion-element[data-text]"));motionTextElements&&motionTextElements.forEach(motionTextElement=>{typeof motionTextElement.resetAnimation=="function"&&!motionTextElement.closest(".swiper-slide-active")&&motionTextElement.resetAnimation()})}this.selectedElement=this.sliderInstance.slider.slides[this.sliderInstance.slider.activeIndex],this.onReady(this.selectedElement,this.sliderInstance.slider.slides);const focusableElements=FoxTheme.a11y.getFocusableElements(this);this.layout==="centered"?focusableElements.forEach(element=>{element.addEventListener("focusin",()=>{const slide=element.closest(".swiper-slide"),slideToIndex=this.sliderInstance.slider.slides.indexOf(slide);this.sliderInstance.slider.slideToLoop(slideToIndex)})}):focusableElements.forEach(element=>{element.addEventListener("focusin",()=>{const slide=element.closest(".swiper-slide");this.sliderInstance.slider.slideTo(this.sliderInstance.slider.slides.indexOf(slide))})})}}onReady(selectedElement){selectedElement.dataset.type==="video"&&FoxTheme.utils.displayedMedia(selectedElement.querySelectorAll("video-element"))?.play(),FoxTheme.config.motionReduced||selectedElement.querySelectorAll("motion-element").forEach(motionEl=>{!motionEl||motionEl.classList.contains("is-animated")||(motionEl.removeAttribute("hold"),motionEl.preInitialize(),setTimeout(()=>{motionEl.initialize()}))}),this.removeAttribute("data-media-loading")}handleAfterInit(){if(this.sliderControls){const activeBullet=this.sliderControls.querySelector(".swiper-pagination-bullet-active");activeBullet&&(activeBullet.classList.remove("swiper-pagination-bullet-active"),activeBullet.offsetHeight,activeBullet.classList.add("swiper-pagination-bullet-active"))}}handleSlideChange(swiper){const{slides,realIndex,activeIndex}=swiper;this.selectedIndex=realIndex,this.updateControlsScheme(slides[activeIndex])}attributeChangedCallback(name,oldValue,newValue){if(name==="selected-index"&&oldValue!==null&&oldValue!==newValue){const fromElements=this.querySelectorAll(`[data-swiper-slide-index="${oldValue}"]`),toElements=this.querySelectorAll(`[data-swiper-slide-index="${newValue}"]`);fromElements.forEach(fromElement=>{if(fromElement.dataset.type==="video"){const videoElement=FoxTheme.utils.displayedMedia([fromElement.querySelector("video-element")]);videoElement&&videoElement.pause()}fromElement.querySelectorAll("motion-element").forEach(motionEl=>{motionEl.hasAttribute("data-text")&&motionEl.resetAnimation()})}
1),toElements.forEach(toElement=>{setTimeout(()=>{if(toElement.classList.contains("swiper-slide-active")){if(toElement.dataset.type==="video"){const videoElement=FoxTheme.utils.displayedMedia([toElement.querySelector("video-element")]);videoElement&&videoElement.play()}toElement.querySelectorAll("motion-element").forEach(motionEl=>{motionEl&&motionEl.refreshAnimation()})}})})}}updateControlsScheme(activeSlide){if(this.sliderControls){Array.from(this.sliderControls.classList).filter(className=>className.startsWith("color-")).forEach(className=>this.sliderControls.classList.remove(className));const colorScheme=activeSlide.dataset.colorScheme;this.sliderControls.classList.add(colorScheme)}}calcSlideHeight(){let maxHeight=0;const slides=this.querySelectorAll(".swiper-slide");slides&&slides.forEach(slide=>{const slideText=slide.querySelector(".slideshow__text");if(slideText){const slideTextHeight=slideText.offsetHeight;slideTextHeight>maxHeight&&(maxHeight=slideTextHeight)}}),this.classList.contains("slideshow-controls-position--bottom")&&(maxHeight+=100),this.style.setProperty("--slide-height",maxHeight+"px")}});
2//# sourceMappingURL=/cdn/shop/t/228/assets/slideshow-component.js.map?v=26818978511171305851774366227

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.