import{e as H,b as D,c as O,d as T}from"./navigation-ab7f9df8.js";function I(x){return x===void 0&&(x=""),`.${x.trim().replace(/([\.:!+\/])/g,"\\$1").replace(/ /g,".")}`}function q(x){let{swiper:e,extendParams:F,on:g,emit:v}=x;const d="swiper-pagination";F({pagination:{el:null,bulletElement:"span",clickable:!1,hideOnClick:!1,renderBullet:null,renderProgressbar:null,renderFraction:null,renderCustom:null,progressbarOpposite:!1,type:"bullets",dynamicBullets:!1,dynamicMainBullets:1,formatFractionCurrent:a=>a,formatFractionTotal:a=>a,bulletClass:`${d}-bullet`,bulletActiveClass:`${d}-bullet-active`,modifierClass:`${d}-`,currentClass:`${d}-current`,totalClass:`${d}-total`,hiddenClass:`${d}-hidden`,progressbarFillClass:`${d}-progressbar-fill`,progressbarOppositeClass:`${d}-progressbar-opposite`,clickableClass:`${d}-clickable`,lockClass:`${d}-lock`,horizontalClass:`${d}-horizontal`,verticalClass:`${d}-vertical`,paginationDisabledClass:`${d}-disabled`}}),e.pagination={el:null,bullets:[]};let L,h=0;const m=a=>(Array.isArray(a)?a:[a]).filter(i=>!!i);function k(){return!e.params.pagination.el||!e.pagination.el||Array.isArray(e.pagination.el)&&e.pagination.el.length===0}function B(a,i){const{bulletActiveClass:s}=e.params.pagination;a&&(a=a[`${i==="prev"?"previous":"next"}ElementSibling`],a&&(a.classList.add(`${s}-${i}`),a=a[`${i==="prev"?"previous":"next"}ElementSibling`],a&&a.classList.add(`${s}-${i}-${i}`)))}function z(a){const i=a.target.closest(I(e.params.pagination.bulletClass));if(!i)return;a.preventDefault();const s=D(i)*e.params.slidesPerGroup;if(e.params.loop){if(e.realIndex===s)return;const t=e.realIndex,n=e.getSlideIndexByData(s),u=e.getSlideIndexByData(e.realIndex),y=l=>{const f=e.activeIndex;e.loopFix({direction:l,activeSlideIndex:n,slideTo:!1});const o=e.activeIndex;f===o&&e.slideToLoop(t,0,!1,!0)};if(n>e.slides.length-e.loopedSlides)y(n>u?"next":"prev");else if(e.params.centeredSlides){const l=e.params.slidesPerView==="auto"?e.slidesPerViewDynamic():Math.ceil(parseFloat(e.params.slidesPerView,10));n<Math.floor(l/2)&&y("prev")}e.slideToLoop(s)}else e.slideTo(s)}function C(){const a=e.rtl,i=e.params.pagination;if(k())return;let s=e.pagination.el;s=m(s);let t,n;const u=e.virtual&&e.params.virtual.enabled?e.virtual.slides.length:e.slides.length,y=e.params.loop?Math.ceil(u/e.params.slidesPerGroup):e.snapGrid.length;if(e.params.loop?(n=e.previousRealIndex||0,t=e.params.slidesPerGroup>1?Math.floor(e.realIndex/e.params.slidesPerGroup):e.realIndex):typeof e.snapIndex<"u"?(t=e.snapIndex,n=e.previousSnapIndex):(n=e.previousIndex||0,t=e.activeIndex||0),i.type==="bullets"&&e.pagination.bullets&&e.pagination.bullets.length>0){const l=e.pagination.bullets;let f,o,$;if(i.dynamicBullets&&(L=H(l[0],e.isHorizontal()?"width":"height",!0),s.forEach(r=>{r.style[e.isHorizontal()?"width":"height"]=`${L*(i.dynamicMainBullets+4)}px`}),i.dynamicMainBullets>1&&n!==void 0&&(h+=t-(n||0),h>i.dynamicMainBullets-1?h=i.dynamicMainBullets-1:h<0&&(h=0)),f=Math.max(t-h,0),o=f+(Math.min(l.length,i.dynamicMainBullets)-1),$=(o+f)/2),l.forEach(r=>{const p=[...["","-next","-next-next","-prev","-prev-prev","-main"].map(c=>`${i.bulletActiveClass}${c}`)].map(c=>typeof c=="string"&&c.includes(" ")?c.split(" "):c).flat();r.classList.remove(...p)}),s.length>1)l.forEach(r=>{const p=D(r);p===t?r.classList.add(...i.bulletActiveClass.split(" ")):e.isElement&&r.setAttribute("part","bullet"),i.dynamicBullets&&(p>=f&&p<=o&&r.classList.add(...`${i.bulletActiveClass}-main`.split(" ")),p===f&&B(r,"prev"),p===o&&B(r,"next"))});else{const r=l[t];if(r&&r.classList.add(...i.bulletActiveClass.split(" ")),e.isElement&&l.forEach((p,c)=>{p.setAttribute("part",c===t?"bullet-active":"bullet")}),i.dynamicBullets){const p=l[f],c=l[o];for(let b=f;b<=o;b+=1)l[b]&&l[b].classList.add(...`${i.bulletActiveClass}-main`.split(" "));B(p,"prev"),B(c,"next")}}if(i.dynamicBullets){const r=Math.min(l.length,i.dynamicMainBullets+4),p=(L*r-L)/2-$*L,c=a?"right":"left";l.forEach(b=>{b.style[e.isHorizontal()?c:"top"]=`${p}px`})}}s.forEach((l,f)=>{if(i.type==="fraction"&&(l.querySelectorAll(I(i.currentClass)).forEach(o=>{o.textContent=i.formatFractionCurrent(t+1)}),l.querySelectorAll(I(i.totalClass)).forEach(o=>{o.textContent=i.formatFractionTotal(y)})),i.type==="progressbar"){let o;i.progressbarOpposite?o=e.isHorizontal()?"vertical":"horizontal":o=e.isHorizontal()?"horizontal":"vertical";const $=(t+1)/y;let r=1,p=1;o==="horizontal"?r=$:p=$,l.querySelectorAll(I(i.progressbarFillClass)).forEach(c=>{c.style.transform=`translate3d(0,0,0) scaleX(${r}) scaleY(${p})`,c.style.transitionDuration=`${e.params.speed}ms`})}i.type==="custom"&&i.renderCustom?(l.innerHTML=i.renderCustom(e,t+1,y),f===0&&v("paginationRender",l)):(f===0&&v("paginationRender",l),v("paginationUpdate",l)),e.params.watchOverflow&&e.enabled&&l.classList[e.isLocked?"add":"remove"](i.lockClass)})}function A(){const a=e.params.pagination;if(k())return;const i=e.virtual&&e.params.virtual.enabled?e.virtual.slides.length:e.slides.length;let s=e.pagination.el;s=m(s);let t="";if(a.type==="bullets"){let n=e.params.loop?Math.ceil(i/e.params.slidesPerGroup):e.snapGrid.length;e.params.freeMode&&e.params.freeMode.enabled&&n>i&&(n=i);for(let u=0;u<n;u+=1)a.renderBullet?t+=a.renderBullet.call(e,u,a.bulletClass):t+=`<${a.bulletElement} ${e.isElement?'part="bullet"':""} class="${a.bulletClass}"></${a.bulletElement}>`}a.type==="fraction"&&(a.renderFraction?t=a.renderFraction.call(e,a.currentClass,a.totalClass):t=`<span class="${a.currentClass}"></span> / <span class="${a.totalClass}"></span>`),a.type==="progressbar"&&(a.renderProgressbar?t=a.renderProgressbar.call(e,a.progressbarFillClass):t=`<span class="${a.progressbarFillClass}"></span>`),e.pagination.bullets=[],s.forEach(n=>{a.type!=="custom"&&(n.innerHTML=t||""),a.type==="bullets"&&e.pagination.bullets.push(...n.querySelectorAll(I(a.bulletClass)))}),a.type!=="custom"&&v("paginationRender",s[0])}function M(){e.params.pagination=O(e,e.originalParams.pagination,e.params.pagination,{el:"swiper-pagination"});const a=e.params.pagination;if(!a.el)return;let i;typeof a.el=="string"&&e.isElement&&(i=e.el.querySelector(a.el)),!i&&typeof a.el=="string"&&(i=[...document.querySelectorAll(a.el)]),i||(i=a.el),!(!i||i.length===0)&&(e.params.uniqueNavElements&&typeof a.el=="string"&&Array.isArray(i)&&i.length>1&&(i=[...e.el.querySelectorAll(a.el)],i.length>1&&(i=i.filter(s=>T(s,".swiper")[0]===e.el)[0])),Array.isArray(i)&&i.length===1&&(i=i[0]),Object.assign(e.pagination,{el:i}),i=m(i),i.forEach(s=>{a.type==="bullets"&&a.clickable&&s.classList.add(...(a.clickableClass||"").split(" ")),s.classList.add(a.modifierClass+a.type),s.classList.add(e.isHorizontal()?a.horizontalClass:a.verticalClass),a.type==="bullets"&&a.dynamicBullets&&(s.classList.add(`${a.modifierClass}${a.type}-dynamic`),h=0,a.dynamicMainBullets<1&&(a.dynamicMainBullets=1)),a.type==="progressbar"&&a.progressbarOpposite&&s.classList.add(a.progressbarOppositeClass),a.clickable&&s.addEventListener("click",z),e.enabled||s.classList.add(a.lockClass)}))}function S(){const a=e.params.pagination;if(k())return;let i=e.pagination.el;i&&(i=m(i),i.forEach(s=>{s.classList.remove(a.hiddenClass),s.classList.remove(a.modifierClass+a.type),s.classList.remove(e.isHorizontal()?a.horizontalClass:a.verticalClass),a.clickable&&(s.classList.remove(...(a.clickableClass||"").split(" ")),s.removeEventListener("click",z))})),e.pagination.bullets&&e.pagination.bullets.forEach(s=>s.classList.remove(...a.bulletActiveClass.split(" ")))}g("changeDirection",()=>{if(!e.pagination||!e.pagination.el)return;const a=e.params.pagination;let{el:i}=e.pagination;i=m(i),i.forEach(s=>{s.classList.remove(a.horizontalClass,a.verticalClass),s.classList.add(e.isHorizontal()?a.horizontalClass:a.verticalClass)})}),g("init",()=>{e.params.pagination.enabled===!1?P():(M(),A(),C())}),g("activeIndexChange",()=>{typeof e.snapIndex>"u"&&C()}),g("snapIndexChange",()=>{C()}),g("snapGridLengthChange",()=>{A(),C()}),g("destroy",()=>{S()}),g("enable disable",()=>{let{el:a}=e.pagination;a&&(a=m(a),a.forEach(i=>i.classList[e.enabled?"remove":"add"](e.params.pagination.lockClass)))}),g("lock unlock",()=>{C()}),g("click",(a,i)=>{const s=i.target,t=m(e.pagination.el);if(e.params.pagination.el&&e.params.pagination.hideOnClick&&t&&t.length>0&&!s.classList.contains(e.params.pagination.bulletClass)){if(e.navigation&&(e.navigation.nextEl&&s===e.navigation.nextEl||e.navigation.prevEl&&s===e.navigation.prevEl))return;const n=t[0].classList.contains(e.params.pagination.hiddenClass);v(n===!0?"paginationShow":"paginationHide"),t.forEach(u=>u.classList.toggle(e.params.pagination.hiddenClass))}});const w=()=>{e.el.classList.remove(e.params.pagination.paginationDisabledClass);let{el:a}=e.pagination;a&&(a=m(a),a.forEach(i=>i.classList.remove(e.params.pagination.paginationDisabledClass))),M(),A(),C()},P=()=>{e.el.classList.add(e.params.pagination.paginationDisabledClass);let{el:a}=e.pagination;a&&(a=m(a),a.forEach(i=>i.classList.add(e.params.pagination.paginationDisabledClass))),S()};Object.assign(e.pagination,{enable:w,disable:P,render:A,update:C,init:M,destroy:S})}export{q as P};
