1(()=>{"use strict";var e={359:(e,t,i)=>{i.d(t,{default:()=>r});class r{constructor(){this.storageKey="intedia_recently_viewed_products",this.maxItems=20}trackProductView(e){if(e)try{let t=this.getRecentlyViewedIds();(t=t.filter(t=>t!==e)).unshift(e),t.length>this.maxItems&&(t=t.slice(0,this.maxItems)),localStorage.setItem(this.storageKey,JSON.stringify(t))}catch{}}getRecentlyViewedIds(){try{let e=localStorage.getItem(this.storageKey);if(e){let t=JSON.parse(e);return Array.isArray(t)?t:[]}}catch{}return[]}clear(){try{localStorage.removeItem(this.storageKey)}catch{}}getCount(){return this.getRecentlyViewedIds().length}}}},t={};function i(r){var a=t[r];if(void 0!==a)return a.exports;var s=t[r]={exports:{}};return e[r](s,s.exports,i),s.exports}i.m=e,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce((t,r)=>(i.f[r](e,t),t),[])),i.u=e=>"./js/intedia-advanced-product-slider/"+({84024:"intedia-advanced-product-slider.swiper.mjs",87490:"intedia-advanced-product-slider.index.mjs"})[e]+"."+({84024:"a395d7",87490:"69692c"})[e]+".js",i.miniCssF=e=>{},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={};i.l=(t,r,a,s)=>{if(e[t]){e[t].push(r);return}if(void 0!==a)for(var n,l,o=document.getElementsByTagName("script"),d=0;d<o.length;d++){var c=o[d];if(c.getAttribute("src")==t){n=c;break}}n||(l=!0,(n=document.createElement("script")).charset="utf-8",n.timeout=120,i.nc&&n.setAttribute("nonce",i.nc),n.src=t),e[t]=[r];var p=(i,r)=>{n.onerror=n.onload=null,clearTimeout(u);var a=e[t];if(delete e[t],n.parentNode&&n.parentNode.removeChild(n),a&&a.forEach(e=>e(r)),i)return i(r)},u=setTimeout(p.bind(null,void 0,{type:"timeout",target:n}),12e4);n.onerror=p.bind(null,n.onerror),n.onload=p.bind(null,n.onload),l&&document.head.appendChild(n)}})(),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{i.g.importScripts&&(e=i.g.location+"");var e,t=i.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var a=r.length-1;a>-1&&(!e||!/^http(s?):/.test(e));)e=r[a--].src}if(!e)throw Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),i.p=e+"../../"})(),(()=>{var e={51274:0};i.f.j=(t,r)=>{var a=i.o(e,t)?e[t]:void 0;if(0!==a){if(a)r.push(a[2]);else{var s=new Promise((i,r)=>a=e[t]=[i,r]);r.push(a[2]=s);var n=i.p+i.u(t),l=Error();i.l(n,r=>{if(i.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var s=r&&("load"===r.type?"missing":r.type),n=r&&r.target&&r.target.src;l.message="Loading chunk "+t+" failed.\n("+s+": "+n+")",l.name="ChunkLoadError",l.type=s,l.request=n,a[1](l)}},"chunk-"+t,t)}}};var t=(t,r)=>{var a,s,[n,l,o]=r,d=0;if(n.some(t=>0!==e[t])){for(a in l)i.o(l,a)&&(i.m[a]=l[a]);o&&o(i)}for(t&&t(r);d<n.length;d++)s=n[d],i.o(e,s)&&e[s]&&e[s][0](),e[s]=0},r=self.webpackChunk=self.webpackChunk||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})();let r=window.PluginBaseClass;class a extends r{static #e=this.options={debug:!1};constructor(e,t,i){super(e,t,i),this._SwiperClass=null,this._swiperInstances=[]}init(){this._applyDataAttributesToCssVars(),this._setupViewportVisibility(),"true"===this.el.dataset.recentlyViewed?this._loadRecentlyViewedProducts():this._loadSwiperAndInit(),this._setupTabListener()}_isNavVisibleInViewport(e){let t=window.matchMedia("(max-width: 767.98px)").matches,i=window.matchMedia("(min-width: 768px) and (max-width: 991.98px)").matches,r=window.matchMedia("(min-width: 992px)").matches;return!e.classList.contains("nav-hidden-all-viewports")&&(!(e.classList.contains("nav-visible-mobile")||e.classList.contains("nav-visible-tablet")||e.classList.contains("nav-visible-desktop"))||e.classList.contains("nav-visible-mobile")&&t||e.classList.contains("nav-visible-tablet")&&i||e.classList.contains("nav-visible-desktop")&&r)}_setupViewportVisibility(){let e="(max-width: 767.98px)",t="(min-width: 768px) and (max-width: 991.98px)",i="(min-width: 992px)",r=()=>{let r=window.matchMedia(e).matches,a=window.matchMedia(t).matches,s=window.matchMedia(i).matches;this.el.querySelectorAll(".advanced-product-slider-nav").forEach(e
1=>{let t=!1;e.classList.contains("nav-hidden-all-viewports")?t=!1:e.classList.contains("nav-visible-mobile")||e.classList.contains("nav-visible-tablet")||e.classList.contains("nav-visible-desktop")?e.classList.contains("nav-visible-mobile")&&r?t=!0:e.classList.contains("nav-visible-tablet")&&a?t=!0:e.classList.contains("nav-visible-desktop")&&s&&(t=!0):t=!0,e.style.display=t?"flex":"none"}),this.el.querySelectorAll(".swiper-pagination").forEach(e=>{let t=!1;e.classList.contains("pagination-hidden-all-viewports")?t=!1:e.classList.contains("pagination-visible-mobile")||e.classList.contains("pagination-visible-tablet")||e.classList.contains("pagination-visible-desktop")?e.classList.contains("pagination-visible-mobile")&&r?t=!0:e.classList.contains("pagination-visible-tablet")&&a?t=!0:e.classList.contains("pagination-visible-desktop")&&s&&(t=!0):t=!0,e.style.display=t?"flex":"none"})};r(),[window.matchMedia(e),window.matchMedia(t),window.matchMedia(i)].forEach(e=>e.addEventListener("change",r))}_applyDataAttributesToCssVars(){this.el.querySelectorAll("[data-arrow-size]").forEach(e=>{let t=e.dataset.arrowSize,i=e.dataset.arrowColor,r=e.dataset.arrowBgColor,a=e.dataset.arrowBorderRadius,s=`--arrow-size: ${t}px; --arrow-color: ${i||"#45331F"};`;r&&(s+=` --arrow-bg-color: ${r};`),a&&(s+=` --arrow-border-radius: ${a};`),e.style.cssText=(e.style.cssText||"")+s}),this.el.querySelectorAll("[data-pagination-color]").forEach(e=>{let t=e.dataset.paginationColor,i=e.dataset.paginationBulletInactiveColor,r=e.dataset.paginationBulletSize,a=e.dataset.paginationBulletBorderRadius;e.style.cssText=(e.style.cssText||"")+`--swiper-pagination-color: ${t||"#ff6b35"};`+`--swiper-pagination-bullet-inactive-color: ${i||"rgba(255, 107, 53, 0.3)"};`+"--swiper-pagination-bullet-inactive-opacity: 1;"+`--swiper-pagination-bullet-size: ${r||12}px;`+"--swiper-pagination-bullet-horizontal-gap: 8px;"+`--swiper-pagination-bullet-border-radius: ${a||"50%"};`+"position: static; margin-top: 1.5rem;"})}async _loadSwiperAndInit(){if(this._ensureSwiperReference(window.Swiper)||await this._loadSwiperViaDynamicImport()||await this._loadSwiperFromFallback()){this._initializeSlider();return}this.options.debug&&console.warn("[IntediaAdvancedProductSlider] Swiper konnte nicht geladen werden.")}_initializeSlider(){let e=this.el.querySelectorAll(".swiper");0!==e.length&&e.forEach(e=>{this._initializeSingleSlider(e)})}_initializeSingleSlider(e){let t=this._getConfigFromDataAttributes(e),i=e.querySelectorAll(".swiper-slide").length;t.loop&&i<=this._getMaxSlidesPerView(t)&&(t.loop=!1);try{let r=new this._SwiperClass(e,t);this._swiperInstances.push(r);let a=e.dataset.swiperPrevSelector,s=e.dataset.swiperNextSelector;if(a&&s){let e=this.el.querySelector(a),t=this.el.querySelector(s);e&&t&&(e.addEventListener("click",()=>{r.slidePrev()}),t.addEventListener("click",()=>{r.slideNext()}))}this._handleNavigationVisibility(r,i,a,s)}catch{}}async _loadSwiperViaDynamicImport(){try{let e=await i.e(84024).then(i.bind(i,24)),t=await i.e(87490).then(i.bind(i,490)),r=e?.default||e?.Swiper||e;if(!r)return!1;return this._registerSwiperModules(r,t),this._ensureSwiperReference(r),!0}catch(e){return this.options.debug&&console.warn("[IntediaAdvancedProductSlider] Dynamischer Swiper-Import fehlgeschlagen.",e),!1}}_registerSwiperModules(e,t){if(!e||"function"!=typeof e.use||!t)return;let i=[];t.Navigation&&i.push(t.Navigation),t.Pagination&&i.push(t.Pagination),t.Autoplay&&i.push(t.Autoplay),i.length>0&&e.use(i)}async _loadSwiperFromFallback(){if(this._ensureSwiperReference(window.Swiper))return!0;if(window.intediaSwiperFallbackPromise)return window.intediaSwiperFallbackPromise;let e=new Promise((e,t)=>{let i=document.querySelector('script[data-intedia-swiper="true"]');if(i){i.addEventListener("load",()=>{this._ensureSwiperReference(window.Swiper)?e(!0):t(Error("Swiper fallback Script wurde geladen, aber window.Swiper ist nicht verfügbar."))},{once:!0}),i.addEventListener("error",()=>t(Error("Swiper fallback Script konnte nicht geladen werden.")),{once:!0});return}let r=document.createElement("script");r.src=this._getSwiperFallbackAssetUrl(),r.async=!0,r.dataset.intediaSwiper="true",r.onload=()=>
1{if(this._ensureSwiperReference(window.Swiper)){e(!0);return}t(Error("Swiper fallback Script geladen, aber window.Swiper ist nicht verfügbar."))},r.onerror=e=>{t(Error(`Swiper fallback Script konnte nicht geladen werden (${e?.type||"error"})`))},document.head.appendChild(r)});return window.intediaSwiperFallbackPromise=e.then(()=>!0).catch(e=>(this.options.debug&&console.error("[IntediaAdvancedProductSlider] Lokaler Swiper-Fallback fehlgeschlagen.",e),!1)).finally(()=>{delete window.intediaSwiperFallbackPromise}),window.intediaSwiperFallbackPromise}_getSwiperFallbackAssetUrl(){return(window.intediaAdvancedProductSlider||{}).swiperAssetUrl||"/bundles/intediaadvancedproductslider/static/js/swiper-bundle.min.js"}_ensureSwiperReference(e){return!!e&&(this._SwiperClass=e,window.Swiper=e,!0)}_getConfigFromDataAttributes(e){let t=e.dataset.swiperPrevSelector,i=e.dataset.swiperNextSelector,r=e.dataset.swiperPaginationSelector,a=parseInt(e.dataset.swiperPerView)||3,s="true"===e.dataset.swiperLoop;return{slidesPerView:a,spaceBetween:parseInt(e.dataset.swiperSpaceBetween)||20,loop:s,loopedSlides:s?Math.max(2*a,6):null,autoplay:"true"===e.dataset.swiperAutoplay&&{delay:3e3,disableOnInteraction:!1,pauseOnMouseEnter:!0},navigation:(()=>{if(t&&i){let e=this.el.querySelector(t),r=this.el.querySelector(i);if(e&&r)return{prevEl:e,nextEl:r,disabledClass:"swiper-button-disabled"}}return!1})(),pagination:(()=>{let e=r?this.el.querySelector(r):this.el.querySelector(".swiper-pagination");return!!e&&{el:e,clickable:!0,dynamicBullets:!1}})(),watchOverflow:!1,breakpoints:this._parseBreakpoints(e.dataset.swiperBreakpoints),on:{init:function(){},slideChange:()=>{}}}}_parseBreakpoints(e){if(!e)return{320:{slidesPerView:1,spaceBetween:10},768:{slidesPerView:2,spaceBetween:15},992:{slidesPerView:3,spaceBetween:20}};try{return JSON.parse(e)}catch{return{320:{slidesPerView:1,spaceBetween:10},768:{slidesPerView:2,spaceBetween:15},992:{slidesPerView:3,spaceBetween:20}}}}_getMaxSlidesPerView(e){let t=e.slidesPerView||1;return e.breakpoints&&Object.values(e.breakpoints).forEach(e=>{e.slidesPerView&&e.slidesPerView>t&&(t=e.slidesPerView)}),t}_handleNavigationVisibility(e,t,i,r){if(!i&&!r)return;let a=i?this.el.querySelector(i):null,s=r?this.el.querySelector(r):null,n=()=>{let i=t<=e.params.slidesPerView;[a,s].filter(Boolean).forEach(e=>{i?e.style.display="none":e.style.display=this._isNavVisibleInViewport(e)?"flex":"none"})};e.on("breakpoint",n),n()}_setupOutsideNavigation(e){let t=this.el.querySelector(".swiper-button-next-outside"),i=this.el.querySelector(".swiper-button-prev-outside");t&&t.addEventListener("click",()=>{e.slideNext()}),i&&i.addEventListener("click",()=>{e.slidePrev()});let r=this.el.querySelector(".swiper-button-next.navigation-overlay.advanced-product-slider-nav"),a=this.el.querySelector(".swiper-button-prev.navigation-overlay.advanced-product-slider-nav");r&&r.addEventListener("click",()=>{e.slideNext()}),a&&a.addEventListener("click",()=>{e.slidePrev()})}async _loadRecentlyViewedProducts(){try{let{default:e}=await Promise.resolve().then(i.bind(i,359)),t=new e().getRecentlyViewedIds(),r=window.intediaRecentlyViewedProductId;r&&(t=t.filter(e=>e!==r));let a=parseInt(this.el.dataset.recentlyViewedLimit)||12;if(t=t.slice(0,a),0===t.length){this.el.style.display="none";return}await this._fetchAndRenderProducts(t),this._loadSwiperAndInit()}catch{this.el.style.display="none"}}async _fetchAndRenderProducts(e){let t=window.intediaRecentlyViewedProductsUrl,i=new FormData;e.forEach((e,t)=>{i.append(`ids[${t}]`,e)});let r=this.el.dataset.productLayout||"standard";i.append("layout",r);let a=await fetch(t,{method:"POST",body:i,headers:{"X-Requested-With":"XMLHttpRequest"}});if(!a.ok)throw Error(`HTTP error! status: ${a.status}`);let s=await a.text(),n=this.el.querySelector(".swiper-wrapper");if(!n)throw Error("Swiper wrapper not found");n.innerHTML=s}async _renderProducts(e){let t=this.el.querySelector(".swiper-wrapper");if(t)for(let i of(t.innerHTML="",e)){let e=document.createElement("div");e.className="swiper-slide";let r=this._createProductCard(i);e.appendChild(r),t.appendChild(e)}}_createProductCard(e){let t=document.createElement("div");t.className="product-box";let i=e.cover?.media?.url||"",r=e.translated?.name||e.name||"",a=this._getProductUrl(e);return t.innerHTML=` 2 <div class="product-image-wrapper">
3 <a href="${a}" class="product-image-link"> 4 ${i?`<img src="${i}" alt="${r}" loading="lazy">`:'<div class="product-image-placeholder"></div>'} 5 </a> 6 </div> 7 <div class="product-info"> 8 <a href="${a}" class="product-name-link"> 9 <h3 class="product-name">${r}</h3> 10 </a> 11 ${e.calculatedPrice?` 12 <div class="product-price"> 13 ${this._formatPrice(e.calculatedPrice.unitPrice)} 14 </div> 15 `:""} 16 </div> 17 `,t}_getProductUrl(e){return e.seoUrls&&e.seoUrls.length>0?`/${e.seoUrls[0].seoPathInfo}`:`/detail/${e.id}`}_formatPrice(e){return new Intl.NumberFormat("de-DE",{style:"currency",currency:"EUR"}).format(e)}_setupTabListener(){let e=this.el.querySelectorAll('[data-bs-toggle="tab"]');0!==e.length&&e.forEach(e=>{e.addEventListener("shown.bs.tab",()=>{let t=e.dataset.bsTarget,i=document.querySelector(t);i&&i.querySelectorAll(".swiper").forEach(e=>{e.swiper&&e.swiper.update()})})})}destroy(){this._swiperInstance&&(this._swiperInstance.destroy(!0,!0),this._swiperInstance=null),this._swiperInstances&&this._swiperInstances.length>0&&(this._swiperInstances.forEach(e=>{e.destroy(!0,!0)}),this._swiperInstances=[]),super.destroy()}}var s=i(359);let n=window.PluginBaseClass,l=window.PluginManager;l.register("IntediaAdvancedProductSliderPlugin",a,".cms-element-intedia-advanced-product-slider"),l.register("RecentlyViewedTrackerPlugin",class extends n{init(){this.trackerService=new s.default,this.trackCurrentProduct()}trackCurrentProduct(){let e=window.intediaRecentlyViewedProductId;e&&this.trackerService.trackProductView(e)}},".is-ctl-product.is-act-index")})();
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.