1class SlideshowSection extends HTMLElement{constructor(){if(super(),this.mainSlide=this.querySelector(".swiper-slideshow-main"),!this.mainSlide){console.warn("\u672A\u627E\u5230 .swiper-slideshow-main \u5143\u7D20");return}const regionBannerValue=this.dataset.enableRegionBanner||this.closest("[data-enable-region-banner]")?.dataset.enableRegionBanner||"false";this.enableRegionBanner=regionBannerValue==="true"||regionBannerValue===!0,this.init()}init(){const _this=this;this.mainSlide&&(this.enableRegionBanner?this.initRegionBanner():this.initSlideShow())}async initRegionBanner(){this.hideAllSlides();try{const region=await this.getUserRegion();this.filterSlidesByRegion(region),this.initSlideShow()}catch(error){console.warn("\u83B7\u53D6\u7528\u6237\u5730\u533A\u5931\u8D25\uFF0C\u663E\u793A\u9ED8\u8BA4 Banner:",error),this.filterSlidesByRegion("other"),this.initSlideShow()}}hideAllSlides(){if(!this.mainSlide)return;this.mainSlide.querySelectorAll(".swiper-slide").forEach(slide=>{slide.style.display="none"})}async getUserRegion(){try{const response=await fetch("https://api.ip.sb/geoip/");if(!response.ok)throw new Error("API \u8BF7\u6C42\u5931\u8D25");const data=await response.json(),countryCode=data.country_code||"",continentCode=data.continent_code||"",europeCountries=["AT","BE","BG","HR","CY","CZ","DK","EE","FI","FR","DE","GR","HU","IE","IT","LV","LT","LU","MT","NL","PL","PT","RO","SK","SI","ES","SE","GB","IS","LI","NO","CH","AL","AD","BY","BA","FO","GI","GG","JE","MC","MD","ME","MK","RU","SM","RS","UA","VA","XK"],australiaCountries=["AU","NZ","FJ","PG","SB","VU","NC","PF"];return europeCountries.includes(countryCode.toUpperCase())?(console.log("\u7528\u6237IP\u6765\u81EA\u6B27\u6D32\u56FD\u5BB6:",countryCode),"europe"):australiaCountries.includes(countryCode.toUpperCase())?(console.log("\u7528\u6237IP\u6765\u81EA\u6FB3\u6D32\u56FD\u5BB6:",countryCode),"australia"):(console.log("\u7528\u6237IP\u5176\u4ED6\u56FD\u5BB6:",countryCode),"other")}catch(error){return console.error("\u83B7\u53D6\u7528\u6237\u5730\u533A\u65F6\u51FA\u9519:",error),"other"}}filterSlidesByRegion(region){if(!this.mainSlide)return;
1this.mainSlide.querySelectorAll(".swiper-slide").forEach(slide=>{const regionImages=slide.querySelectorAll(".banner-image-region");if(regionImages.length===0)return;let hasRegionImage=!1;if(regionImages.forEach(imgWrapper=>{imgWrapper.style.display="none"}),regionImages.forEach(imgWrapper=>{imgWrapper.dataset.region===region&&(imgWrapper.style.display="",hasRegionImage=!0)}),!hasRegionImage)if(Array.from(regionImages).some(imgWrapper=>imgWrapper.dataset.region==="other"))regionImages.forEach(imgWrapper=>{imgWrapper.dataset.region==="other"&&(imgWrapper.style.display="")});else{slide.style.display="none";return}slide.style.display=""})}initSlideShow(){if(!this.mainSlide)return;let autoplay=this.mainSlide?.dataset.autoplay==="true";const loop=this.mainSlide?.dataset.loop==="true";let autoPlaySpeed=this.mainSlide?.dataset.autoPlaySpeed?this.mainSlide?.dataset.autoPlaySpeed:3e3;const effect=this.mainSlide?.dataset.effect?this.mainSlide?.dataset.effect:"slide",animation=this.mainSlide?.dataset.effect?this.mainSlide?.dataset.animation:"default",pauseOnMouseEnter=this.mainSlide?.dataset.pauseOnMouseEnter==="true";autoplay&&(autoplay={delay:autoPlaySpeed,pauseOnMouseEnter});const _this=this,base={autoplay,effect,loop,navigation:{nextEl:this.querySelector(".swiper-button-next"),prevEl:this.querySelector(".swiper-button-prev")},pagination:{clickable:!0,el:this.querySelector(".swiper-pagination")},on:{init:function(sw){_this.mainSlide?.querySelectorAll(".slide-video-1").forEach(video=>{_this.loadSlideVideo(video,!1)})},slideChangeTransitionStart:function(sw){this.slides[this.activeIndex].querySelectorAll("motion-effect").forEach(async motion=>{await motion.initAnimate()})},slideChangeTransitionEnd:function(){_this.mainSlide?.querySelectorAll("video-local-slide").forEach(video=>{_this.loadSlideVideo(video,!1)}),this.slides[this.activeIndex]?.querySelectorAll("motion-effect").forEach(async motion=>{motion.classList.remove("animate-delay"),await motion.initAnimateEffect()})}}};return base.effect=effect,base.speed=400,new Swiper(this.mainSlide,base)}loadSlideVideo(_this,lazy=!1){if(window.innerWidth>787){if(!lazy&&_this.classList.contains("video-mobile"))return}else if(!lazy&&_this.classList.contains("video-desktop"))return;if(!_this.getAttribute("loaded")&&_this.querySelector("template")){const content=document.createElement("div");content.appendChild(_this.querySelector("template").content.firstElementChild.cloneNode(!0)),_this.setAttribute("loaded",!0);const deferredElement=_this.appendChild(content.querySelector("video")),alt=deferredElement.getAttribute("alt"),img=deferredElement.querySelector("img"),video=_this.querySelector("video");video.preload="metadata",this.waitForFirstFrame(video).then(()=>{this.mainSlide&&this.mainSlide.classList.add("is-ready")}),alt&&img&&img.setAttribute("alt",alt),deferredElement.nodeName=="VIDEO"&&deferredElement.getAttribute("autoplay")&&deferredElement.play(),new IntersectionObserver(entries=>{entries.forEach(({target,isIntersecting,intersectionRatio})=>{if(isIntersecting&&intersectionRatio>.2){const p=video.play();p&&typeof p.catch=="function"&&p.catch(err=>{err?.name!=="AbortError"&&console.warn("play failed:",err)})}else target.pause()})},{threshold:[0,.2,1]}).observe(video)}}waitForFirstFrame(video){return new Promise(resolve=>{const done=()=>{cleanup(),resolve()},cleanup=()=>{video.removeEventListener("loadeddata",done),video.removeEventListener("playing",done),video.removeEventListener("timeupdate",onTime)},onTime=()=>{video.currentTime>0&&done()};if(video.readyState>=2&&video.videoWidth||video.currentTime>0)return resolve();video.addEventListener("loadeddata",done,{once:!0}),video.addEventListener("playing",done,{once:!0}),video.addEventListener("timeupdate",onTime,{once:!0}),"requestVideoFrameCallback"in video&&video.requestVideoFrameCallback(()=>{done()})})}}customElements.get("slideshow-section")||customElements.define("slideshow-section",SlideshowSection); 2//# sourceMappingURL=/cdn/shop/t/68/assets/slideshow-section.js.map?v=166333753400847194481784025592
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.