whenVisible('.swiper', element=> {
element.style.paddingRight=0;
if(element.classList.contains('wp-block-group')){
element.innerHTML='<div>' + element.innerHTML + '</div>';
}
[...element.children]?.forEach(child=> {
child.classList.add('swiper-wrapper', 'm0');
[...child.children]?.forEach(slide=> {
slide.outerHTML='<div class="swiper-slide">' + slide.outerHTML + '</div>';
});
});
let options=window.swiperOptions?.[element.id] ?? {
direction: 'horizontal', loop: true, slidesPerView: 1, spaceBetween: 10, breakpoints: {
480: {
slidesPerView: 2, spaceBetween: 20
},
600: {
slidesPerView: "auto", spaceBetween: 30
}}
};
if(element.classList.contains('swiper-autoplay')){
options.autoplay={
delay: 3000, disableOnInteraction: true,
};}
if(element.classList.contains('swiper-freemode')){
options.freeMode={
enabled: true,
momentum: false,
momentumBounce: false,
minimumVelocity: 0,
momentumRatio: 0,
momentumBounceRatio: 0,
momentumVelocityRatio: 0
};
options.speed=3500;
options.autoplay={
delay: 1, disableOnInteraction: true,
};}
for (let i=0; i <=10; i++){
if(element.classList.contains('swiper-slides-' + i)){
options.breakpoints["600"].slidesPerView=i;
break;
}
if(element.classList.contains('swiper-space-' + (i * 10))){
options.spaceBetween=i * 10;
break;
}
if(element.classList.contains('swiper-delay-' + i)){
options.delay=i * 1000;
break;
}}
new Swiper(element, options);
});