UNPKG

swiper

Version:

Most modern mobile touch slider and framework with hardware accelerated transitions

2 lines 6.6 kB
import{w as setInnerHTML}from"./utils.min.mjs";const paramsList=["eventsPrefix","injectStyles","injectStylesUrls","modules","init","_direction","oneWayMovement","swiperElementNodeName","touchEventsTarget","initialSlide","_speed","cssMode","updateOnWindowResize","resizeObserver","nested","focusableElements","_enabled","_width","_height","preventInteractionOnTransition","userAgent","url","_edgeSwipeDetection","_edgeSwipeThreshold","_freeMode","_autoHeight","setWrapperSize","virtualTranslate","_effect","breakpoints","breakpointsBase","_spaceBetween","_slidesPerView","maxBackfaceHiddenSlides","_grid","_slidesPerGroup","_slidesPerGroupSkip","_slidesPerGroupAuto","_centeredSlides","_centeredSlidesBounds","_slidesOffsetBefore","_slidesOffsetAfter","normalizeSlideIndex","_centerInsufficientSlides","_snapToSlideEdge","_watchOverflow","roundLengths","touchRatio","touchAngle","simulateTouch","_shortSwipes","_longSwipes","longSwipesRatio","longSwipesMs","_followFinger","allowTouchMove","_threshold","touchMoveStopPropagation","touchStartPreventDefault","touchStartForcePreventDefault","touchReleaseOnEdges","uniqueNavElements","_resistance","_resistanceRatio","_watchSlidesProgress","_grabCursor","preventClicks","preventClicksPropagation","_slideToClickedSlide","_loop","loopAdditionalSlides","loopAddBlankSlides","loopPreventsSliding","_rewind","_allowSlidePrev","_allowSlideNext","_swipeHandler","_noSwiping","noSwipingClass","noSwipingSelector","passiveListeners","containerModifierClass","slideClass","slideActiveClass","slideVisibleClass","slideFullyVisibleClass","slideNextClass","slidePrevClass","slideBlankClass","wrapperClass","lazyPreloaderClass","lazyPreloadPrevNext","runCallbacksOnInit","observer","observeParents","observeSlideChildren","a11y","_autoplay","_controller","coverflowEffect","cubeEffect","fadeEffect","flipEffect","creativeEffect","cardsEffect","hashNavigation","history","keyboard","mousewheel","_navigation","_pagination","parallax","_scrollbar","_thumbs","virtual","zoom","control"];function isObject(e){if("object"!=typeof e||null===e)return!1;const t=e;return!!t.constructor&&"Object"===Object.prototype.toString.call(t).slice(8,-1)&&!t.__swiper__}function extend(e,t){const i=["__proto__","constructor","prototype"],n=e,o=t;return Object.keys(o).filter(e=>i.indexOf(e)<0).forEach(e=>{const t=o[e],i=n[e];void 0===i?n[e]=t:isObject(t)&&isObject(i)&&Object.keys(t).length>0?t.__swiper__?n[e]=t:extend(i,t):n[e]=t}),e}function needsNavigation(e={}){const t=e.navigation;return!!t&&"boolean"!=typeof t&&void 0===t.nextEl&&void 0===t.prevEl}function needsPagination(e={}){const t=e.pagination;return!!t&&"boolean"!=typeof t&&void 0===t.el}function needsScrollbar(e={}){const t=e.scrollbar;return!!t&&"boolean"!=typeof t&&void 0===t.el}function uniqueClasses(e=""){const t=e.split(" ").map(e=>e.trim()).filter(e=>!!e),i=[];return t.forEach(e=>{i.indexOf(e)<0&&i.push(e)}),i.join(" ")}function attrToProp(e=""){return e.replace(/-[a-z]/g,e=>e.toUpperCase().replace("-",""))}function wrapperClass(e=""){return e?e.includes("swiper-wrapper")?e:`swiper-wrapper ${e}`:"swiper-wrapper"}function updateSwiper(e){let{nextEl:t,prevEl:i,scrollbarEl:n,paginationEl:o}=e;const{swiper:s,slides:l,passedParams:r,changedParams:a}=e,c=a.filter(e=>"children"!==e&&"direction"!==e&&"wrapperClass"!==e),{params:d,pagination:p,navigation:u,scrollbar:v,virtual:b,thumbs:f}=s,g=r,w=d;let _,S,h,m,E,O,j,C;const x=g.thumbs,y=w.thumbs;a.includes("thumbs")&&isObject(x)&&isObject(x.swiper)&&!x.swiper.destroyed&&isObject(y)&&(!y.swiper||y.swiper.destroyed)&&(_=!0);const P=g.controller,T=w.controller;a.includes("controller")&&isObject(P)&&P.control&&isObject(T)&&!T.control&&(S=!0);const k=g.pagination;a.includes("pagination")&&isObject(k)&&(k.el||o)&&(w.pagination||!1===w.pagination)&&p&&!p.el&&(h=!0);const N=g.scrollbar;a.includes("scrollbar")&&isObject(N)&&(N.el||n)&&(w.scrollbar||!1===w.scrollbar)&&v&&!v.el&&(m=!0);const L=g.navigation;a.includes("navigation")&&isObject(L)&&(L.prevEl||i)&&(L.nextEl||t)&&(w.navigation||!1===w.navigation)&&u&&!u.prevEl&&!u.nextEl&&(E=!0);const M=e=>{const t=s[e];if(!t)return;t.destroy();const i=w[e],n=isObject(i)?i:void 0;"navigation"===e?(s.isElement&&(t.prevEl?.remove(),t.nextEl?.remove()),n&&(n.prevEl=void 0,n.nextEl=void 0),t.prevEl=void 0,t.nextEl=void 0):(s.isElement&&t.el?.remove(),n&&(n.el=void 0),t.el=void 0)};if(a.includes("loop")&&s.isElement&&(d.loop&&!r.loop?O=!0:!d.loop&&r.loop?j=!0:C=!0),c.forEach(e=>{const t=w[e],i=g[e];isObject(t)&&isObject(i)?(Object.assign(t,i),"navigation"!==e&&"pagination"!==e&&"scrollbar"!==e||!("enabled"in i)||i.enabled||M(e)):!0!==i&&!1!==i||"navigation"!==e&&"pagination"!==e&&"scrollbar"!==e?w[e]=i:!1===i&&M(e)}),c.includes("controller")&&!S&&s.controller&&s.controller.control&&isObject(T)&&T.control&&(s.controller.control=T.control),a.includes("children")&&l&&b&&d.virtual?.enabled?(b.slides=l,b.update(!0)):a.includes("virtual")&&b&&d.virtual?.enabled&&(l&&(b.slides=l),b.update(!0)),a.includes("children")&&l&&d.loop&&(C=!0),_&&f){f.init()&&f.update(!0)}if(S&&s.controller&&isObject(T)&&(s.controller.control=T.control),h&&p){if(s.isElement&&(!o||"string"==typeof o)){const e=document.createElement("div");e.classList.add("swiper-pagination"),e.part.add("pagination"),s.el.appendChild(e),o=e}const e=w.pagination;o&&isObject(e)&&(e.el=o),p.init(),p.render(),p.update()}if(m&&v){if(s.isElement&&(!n||"string"==typeof n)){const e=document.createElement("div");e.classList.add("swiper-scrollbar"),e.part.add("scrollbar"),s.el.appendChild(e),n=e}const e=w.scrollbar;n&&isObject(e)&&(e.el=n),v.init(),v.updateSize(),v.setTranslate()}if(E&&u){if(s.isElement){if(!t||"string"==typeof t){const e=document.createElement("div");e.classList.add("swiper-button-next"),setInnerHTML(e,u.arrowSvg),e.part.add("button-next"),s.el.appendChild(e),t=e}if(!i||"string"==typeof i){const e=document.createElement("div");e.classList.add("swiper-button-prev"),setInnerHTML(e,u.arrowSvg),e.part.add("button-prev"),s.el.appendChild(e),i=e}}const e=w.navigation;t&&isObject(e)&&(e.nextEl=t),i&&isObject(e)&&(e.prevEl=i),u.init(),u.update()}a.includes("allowSlideNext")&&(s.allowSlideNext=g.allowSlideNext),a.includes("allowSlidePrev")&&(s.allowSlidePrev=g.allowSlidePrev),a.includes("direction")&&s.changeDirection(g.direction,!1),(O||C)&&s.loopDestroy(),(j||C)&&s.loopCreate(),s.update()}export{attrToProp as a,needsPagination as b,needsScrollbar as c,updateSwiper as d,extend as e,isObject as i,needsNavigation as n,paramsList as p,uniqueClasses as u,wrapperClass as w}; //# sourceMappingURL=update-swiper.min.mjs.map