swiper
Version:
Most modern mobile touch slider and framework with hardware accelerated transitions
1 lines • 512 kB
Source Map (JSON)
{"version":3,"sources":["../node_modules/ssr-window/ssr-window.esm.js","../node_modules/dom7/dom7.esm.js","../src/shared/dom.js","../src/shared/utils.js","../src/shared/get-support.js","../src/shared/get-device.js","../src/shared/get-browser.js","../src/core/events-emitter.js","../src/core/transition/transitionEmit.js","../src/core/events/onTouchStart.js","../src/core/events/onTouchMove.js","../src/core/events/onTouchEnd.js","../src/core/events/onResize.js","../src/core/events/onClick.js","../src/core/events/onScroll.js","../src/core/events/index.js","../src/core/breakpoints/setBreakpoint.js","../src/core/check-overflow/index.js","../src/core/defaults.js","../src/core/moduleExtendParams.js","../src/core/core.js","../src/core/update/index.js","../src/core/update/updateSize.js","../src/core/update/updateSlides.js","../src/core/update/updateAutoHeight.js","../src/core/update/updateSlidesOffset.js","../src/core/update/updateSlidesProgress.js","../src/core/update/updateProgress.js","../src/core/update/updateSlidesClasses.js","../src/core/update/updateActiveIndex.js","../src/core/update/updateClickedSlide.js","../src/core/translate/index.js","../src/core/translate/getTranslate.js","../src/core/translate/setTranslate.js","../src/core/translate/minTranslate.js","../src/core/translate/maxTranslate.js","../src/core/translate/translateTo.js","../src/core/transition/index.js","../src/core/transition/setTransition.js","../src/core/transition/transitionStart.js","../src/core/transition/transitionEnd.js","../src/core/slide/index.js","../src/core/slide/slideTo.js","../src/core/slide/slideToLoop.js","../src/core/slide/slideNext.js","../src/core/slide/slidePrev.js","../src/core/slide/slideReset.js","../src/core/slide/slideToClosest.js","../src/core/slide/slideToClickedSlide.js","../src/core/loop/index.js","../src/core/loop/loopCreate.js","../src/core/loop/loopFix.js","../src/core/loop/loopDestroy.js","../src/core/grab-cursor/index.js","../src/core/grab-cursor/setGrabCursor.js","../src/core/grab-cursor/unsetGrabCursor.js","../src/core/breakpoints/index.js","../src/core/breakpoints/getBreakpoint.js","../src/core/classes/index.js","../src/core/classes/addClasses.js","../src/core/classes/removeClasses.js","../src/core/images/index.js","../src/core/images/loadImage.js","../src/core/images/preloadImages.js","../src/shared/create-element-if-not-defined.js","../src/shared/classes-to-selector.js","../src/modules/manipulation/methods/appendSlide.js","../src/modules/manipulation/methods/prependSlide.js","../src/modules/manipulation/methods/addSlide.js","../src/modules/manipulation/methods/removeSlide.js","../src/modules/manipulation/methods/removeAllSlides.js","../src/shared/effect-init.js","../src/shared/effect-target.js","../src/shared/effect-virtual-transition-end.js","../src/shared/create-shadow.js","../src/core/modules/resize/resize.js","../src/core/modules/observer/observer.js","../src/swiper.js","../src/modules/virtual/virtual.js","../src/modules/keyboard/keyboard.js","../src/modules/mousewheel/mousewheel.js","../src/modules/navigation/navigation.js","../src/modules/pagination/pagination.js","../src/modules/scrollbar/scrollbar.js","../src/modules/parallax/parallax.js","../src/modules/zoom/zoom.js","../src/modules/lazy/lazy.js","../src/modules/controller/controller.js","../src/modules/a11y/a11y.js","../src/modules/history/history.js","../src/modules/hash-navigation/hash-navigation.js","../src/modules/autoplay/autoplay.js","../src/modules/thumbs/thumbs.js","../src/modules/free-mode/free-mode.js","../src/modules/grid/grid.js","../src/modules/manipulation/manipulation.js","../src/modules/effect-fade/effect-fade.js","../src/modules/effect-cube/effect-cube.js","../src/modules/effect-flip/effect-flip.js","../src/modules/effect-coverflow/effect-coverflow.js","../src/modules/effect-creative/effect-creative.js","../src/modules/effect-cards/effect-cards.js"],"names":["isObject","obj","constructor","Object","extend","target","src","keys","forEach","key","length","ssrDocument","body","addEventListener","removeEventListener","activeElement","blur","nodeName","querySelector","querySelectorAll","getElementById","createEvent","initEvent","createElement","children","childNodes","style","setAttribute","getElementsByTagName","createElementNS","importNode","location","hash","host","hostname","href","origin","pathname","protocol","search","getDocument","doc","document","ssrWindow","navigator","userAgent","history","replaceState","pushState","go","back","CustomEvent","this","getComputedStyle","getPropertyValue","Image","Date","screen","setTimeout","clearTimeout","matchMedia","requestAnimationFrame","callback","cancelAnimationFrame","id","getWindow","win","window","Dom7","Array","items","super","proto","__proto__","defineProperty","get","set","value","makeReactive","arrayFlat","arr","res","el","isArray","push","arrayFilter","prototype","filter","call","$","selector","context","html","trim","indexOf","toCreate","tempParent","innerHTML","i","a","qsa","nodeType","uniqueArray","arrayUnique","fn","Methods","addClass","classes","classNames","map","c","split","classList","add","removeClass","remove","hasClass","className","contains","toggleClass","toggle","attr","attrs","arguments","getAttribute","attrName","removeAttr","removeAttribute","transform","transition","duration","transitionDuration","on","args","eventType","targetSelector","listener","capture","handleLiveEvent","e","eventData","dom7EventData","unshift","is","apply","parents","k","handleEvent","undefined","events","j","event","dom7LiveListeners","proxyListener","dom7Listeners","off","handlers","handler","dom7proxy","splice","trigger","evt","detail","bubbles","cancelable","data","dataIndex","dispatchEvent","transitionEnd","dom","fireCallBack","outerWidth","includeMargins","styles","offsetWidth","parseFloat","outerHeight","offsetHeight","offset","box","getBoundingClientRect","clientTop","clientLeft","scrollTop","scrollY","scrollLeft","scrollX","top","left","css","props","prop","each","index","text","textContent","compareWith","matches","webkitMatchesSelector","msMatchesSelector","child","previousSibling","eq","returnIndex","append","els","newChild","tempDiv","firstChild","appendChild","prepend","insertBefore","next","nextElementSibling","nextAll","nextEls","prev","previousElementSibling","prevAll","prevEls","parent","parentNode","closest","find","foundElements","found","removeChild","nextTick","delay","now","getTranslate","axis","matrix","curTransform","transformMatrix","curStyle","currentStyle","WebKitCSSMatrix","webkitTransform","replace","join","MozTransform","OTransform","MsTransform","msTransform","toString","m41","m42","o","slice","to","noExtend","nextSource","node","HTMLElement","keysArray","nextIndex","len","nextKey","desc","getOwnPropertyDescriptor","enumerable","__swiper__","setCSSProperty","varName","varValue","setProperty","animateCSSModeScroll","swiper","targetPosition","side","startPosition","translate","time","startTime","params","speed","wrapperEl","scrollSnapType","cssModeFrameID","dir","isOutOfBound","current","animate","getTime","progress","Math","max","min","easeProgress","cos","PI","currentPosition","scrollTo","support","deviceCached","browser","getSupport","smoothScroll","documentElement","touch","DocumentTouch","passiveListener","supportsPassive","opts","gestures","calcSupport","getDevice","overrides","platform","ua","device","ios","android","screenWidth","width","screenHeight","height","match","ipad","ipod","iphone","windows","macos","os","calcDevice","getBrowser","isSafari","toLowerCase","isWebView","test","calcBrowser","methodName","writable","eventsEmitter","priority","self","method","eventsListeners","once","onceHandler","__emitterProxy","onAny","eventsAnyListeners","offAny","eventHandler","emit","transitionEmit","runCallbacks","direction","step","activeIndex","previousIndex","onTouchStart","touchEventsData","touches","enabled","animating","preventInteractionOnTransition","cssMode","loop","loopFix","originalEvent","$targetEl","touchEventsTarget","isTouchEvent","type","which","button","isTouched","isMoved","noSwipingClass","shadowRoot","path","noSwipingSelector","isTargetShadow","noSwiping","base","__closestFrom","assignedSlot","getRootNode","closestElement","allowClick","swipeHandler","currentX","targetTouches","pageX","currentY","pageY","startX","startY","edgeSwipeDetection","iOSEdgeSwipeDetection","edgeSwipeThreshold","iOSEdgeSwipeThreshold","innerWidth","preventDefault","assign","allowTouchCallbacks","isScrolling","startMoving","touchStartTime","updateSize","swipeDirection","threshold","allowThresholdMove","focusableElements","shouldPreventDefault","allowTouchMove","touchStartPreventDefault","touchStartForcePreventDefault","isContentEditable","onTouchMove","rtlTranslate","rtl","targetTouch","changedTouches","preventedByNestedSwiper","touchReleaseOnEdges","isVertical","maxTranslate","minTranslate","diffX","diffY","sqrt","touchAngle","isHorizontal","atan2","abs","touchMoveStopPropagation","nested","stopPropagation","startTranslate","setTransition","$wrapperEl","allowMomentumBounce","grabCursor","allowSlideNext","allowSlidePrev","setGrabCursor","diff","touchRatio","currentTranslate","disableParentSwiper","resistanceRatio","resistance","followFinger","freeMode","watchSlidesProgress","updateActiveIndex","updateSlidesClasses","updateProgress","setTranslate","onTouchEnd","slidesGrid","touchEndTime","timeDiff","updateClickedSlide","lastClickTime","destroyed","currentPos","stopIndex","groupSize","slidesSizesGrid","slidesPerGroupSkip","slidesPerGroup","increment","ratio","longSwipesMs","longSwipes","slideTo","longSwipesRatio","shortSwipes","navigation","nextEl","prevEl","onResize","breakpoints","setBreakpoint","snapGrid","updateSlides","slidesPerView","isEnd","isBeginning","centeredSlides","slides","autoplay","running","paused","run","watchOverflow","checkOverflow","onClick","preventClicks","preventClicksPropagation","stopImmediatePropagation","onScroll","newProgress","previousTranslate","translatesDiff","dummyEventAttached","dummyEventListener","touchEvents","domMethod","swiperMethod","start","passiveListeners","passive","move","end","cancel","updateOnWindowResize","isGridEnabled","grid","rows","defaults","init","initialSlide","resizeObserver","createElements","url","autoHeight","setWrapperSize","virtualTranslate","effect","breakpointsBase","spaceBetween","slidesPerGroupAuto","centeredSlidesBounds","slidesOffsetBefore","slidesOffsetAfter","normalizeSlideIndex","centerInsufficientSlides","roundLengths","simulateTouch","uniqueNavElements","slideToClickedSlide","preloadImages","updateOnImagesReady","loopAdditionalSlides","loopedSlides","loopFillGroupWithBlank","loopPreventsSlide","containerModifierClass","slideClass","slideBlankClass","slideActiveClass","slideDuplicateActiveClass","slideVisibleClass","slideDuplicateClass","slideNextClass","slideDuplicateNextClass","slidePrevClass","slideDuplicatePrevClass","wrapperClass","runCallbacksOnInit","_emitClasses","moduleExtendParams","allModulesParams","moduleParamName","moduleParams","auto","prototypes","update","$el","clientWidth","clientHeight","parseInt","Number","isNaN","size","getDirectionLabel","property","marginRight","getDirectionPropertyValue","label","swiperSize","wrongRTL","isVirtual","virtual","previousSlidesLength","slidesLength","offsetBefore","offsetAfter","previousSnapGridLength","previousSlidesGridLength","slidePosition","prevSlideSize","virtualSize","marginLeft","marginBottom","marginTop","gridEnabled","slideSize","initSlides","shouldResetSlideSize","slide","updateSlide","slideStyles","currentTransform","currentWebKitTransform","paddingLeft","paddingRight","boxSizing","floor","swiperSlideSize","updateWrapperSize","newSlidesGrid","slidesGridItem","_","slideIndex","allSlidesSize","slideSizeValue","maxSnap","snap","allSlidesOffset","snapIndex","addToSnapGrid","addToSlidesGrid","v","updateSlidesOffset","updateAutoHeight","activeSlides","newHeight","getSlideByIndex","visibleSlides","ceil","swiperSlideOffset","offsetLeft","offsetTop","updateSlidesProgress","offsetCenter","visibleSlidesIndexes","slideOffset","slideProgress","slideBefore","slideAfter","multiplier","wasBeginning","wasEnd","realIndex","activeSlide","nextSlide","prevSlide","emitSlidesClasses","newActiveIndex","previousRealIndex","previousSnapIndex","skip","initialized","slideFound","clickedSlide","clickedIndex","byController","x","y","translateTo","translateBounds","internal","newTranslate","isH","behavior","onTranslateToWrapperTransitionEnd","transitionStart","initial","Error","indexAsNumber","isFinite","normalizedTranslate","normalizedGrid","normalizedGridNext","t","onSlideToWrapperTransitionEnd","slideToLoop","newIndex","slideNext","perGroup","slidesPerViewDynamic","_clientLeft","slidePrev","normalize","val","normalizedSnapGrid","prevSnap","prevSnapIndex","prevIndex","slideReset","slideToClosest","currentSnap","slideToIndex","loopCreate","blankSlidesNum","blankNode","prependSlides","appendSlides","cloneNode","loopDestroy","moving","isLocked","cursor","unsetGrabCursor","attachEvents","bind","detachEvents","breakpoint","getBreakpoint","currentBreakpoint","breakpointParams","originalParams","wasMultiRow","isMultiRow","wasEnabled","emitContainerClasses","fill","directionChanged","needsReLoop","changeDirection","isEnabled","disable","enable","containerEl","currentHeight","innerHeight","points","point","minRatio","substr","sort","b","wasLocked","lastSlideIndex","lastSlideRightEdge","addClasses","suffixes","entries","prefix","resultClasses","item","prepareClasses","autoheight","centered","removeClasses","images","loadImage","imageEl","srcset","sizes","checkForComplete","image","onReady","complete","onload","onerror","imagesLoaded","imagesToLoad","currentSrc","extendedDefaults","Swiper","swipers","newParams","modules","mod","extendParams","swiperParams","passedParams","eventName","velocity","desktop","touchEventsTouch","touchEventsDesktop","clickTimeout","velocities","setProgress","cls","getSlideClasses","slideEl","updates","view","exact","spv","breakLoop","translateValue","translated","newDirection","needUpdate","currentDirection","mount","mounted","getWrapperSelector","options","getWrapper","wrapper","destroy","deleteInstance","cleanStyles","object","deleteProps","extendDefaults","newDefaults","installModule","use","module","m","createElementIfNotDefined","checkProps","element","classesToSelector","appendSlide","observer","prependSlide","addSlide","activeIndexBuffer","baseLength","slidesBuffer","currentSlide","removeSlide","slidesIndexes","indexToRemove","removeAllSlides","effectInit","overwriteParams","perspective","overwriteParamsResult","_s","effectTarget","effectParams","$slideEl","transformEl","effectVirtualTransitionEnd","allSlides","$transitionEndTarget","eventTriggered","triggerEvents","createShadow","shadowClass","$shadowContainer","$shadowEl","prototypeGroup","protoMethod","resizeHandler","orientationChangeHandler","ResizeObserver","newWidth","contentBoxSize","contentRect","inlineSize","blockSize","observe","unobserve","observers","attach","MutationObserver","WebkitMutationObserver","mutations","observerUpdate","attributes","childList","characterData","observeParents","observeSlideChildren","containerParents","disconnect","renderSlide","cache","force","addSlidesBefore","addSlidesAfter","from","previousFrom","previousTo","previousSlidesGrid","previousOffset","offsetProp","slidesAfter","slidesBefore","onRendered","lazy","load","renderExternal","slidesToRender","renderExternalUpdate","prependIndexes","appendIndexes","numberOfNewSlides","newCache","cachedIndex","$cachedEl","cachedElIndex","handle","kc","keyCode","charCode","pageUpDown","keyboard","isPageUp","isPageDown","isArrowLeft","isArrowRight","isArrowUp","isArrowDown","shiftKey","altKey","ctrlKey","metaKey","onlyInViewport","inView","swiperWidth","swiperHeight","windowWidth","windowHeight","swiperOffset","swiperCoord","returnValue","timeout","mousewheel","releaseOnEdges","invert","forceToAxis","sensitivity","eventsTarget","thresholdDelta","thresholdTime","lastEventBeforeSnap","lastScrollTime","recentWheelEvents","handleMouseEnter","mouseEntered","handleMouseLeave","animateSlider","newEvent","delta","raw","rtlFactor","sX","sY","pX","pY","wheelDelta","wheelDeltaY","wheelDeltaX","HORIZONTAL_AXIS","deltaY","deltaX","deltaMode","spinX","spinY","pixelX","pixelY","positions","sign","ignoreWheelEvents","position","sticky","shift","prevEvent","firstEvent","snapToThreshold","autoplayDisableOnInteraction","stop","releaseScroll","getEl","toggleEl","disabled","disabledClass","tagName","lockClass","$nextEl","$prevEl","onPrevClick","onNextClick","hideOnClick","hiddenClass","targetEl","pagination","clickable","isHidden","pfx","bulletSize","bulletElement","renderBullet","renderProgressbar","renderFraction","renderCustom","progressbarOpposite","dynamicBullets","dynamicMainBullets","formatFractionCurrent","number","formatFractionTotal","bulletClass","bulletActiveClass","modifierClass","currentClass","totalClass","progressbarFillClass","progressbarOppositeClass","clickableClass","horizontalClass","verticalClass","bullets","dynamicBulletIndex","isPaginationDisabled","setSideBullets","$bulletEl","total","paginationType","firstIndex","lastIndex","midIndex","suffix","bullet","$bullet","bulletIndex","$firstDisplayedBullet","$lastDisplayedBullet","dynamicBulletsLength","bulletsOffset","progressbarDirection","scale","scaleX","scaleY","render","paginationHTML","numberOfBullets","dragStartPos","dragSize","trackSize","divider","dragTimeout","scrollbar","$dragEl","newSize","newPos","hide","opacity","display","getPointerPosition","clientX","clientY","setDragPosition","positionRatio","onDragStart","onDragMove","onDragEnd","snapOnRelease","activeListener","eventMethod","$swiperEl","dragClass","dragEl","draggable","parallax","setTransform","p","currentOpacity","currentScale","_swiper","parallaxEl","$parallaxEl","parallaxDuration","zoom","maxRatio","containerClass","zoomedSlideClass","gesturesEnabled","fakeGestureTouched","fakeGestureMoved","isScaling","gesture","slideWidth","slideHeight","$imageEl","$imageWrapEl","minX","minY","maxX","maxY","touchesStart","touchesCurrent","prevPositionX","prevPositionY","prevTime","getDistanceBetweenTouches","x1","y1","x2","y2","onGestureStart","scaleStart","onGestureChange","scaleMove","onGestureEnd","scaledWidth","scaledHeight","onTransitionEnd","zoomIn","touchX","touchY","offsetX","offsetY","translateX","translateY","imageWidth","imageHeight","translateMinX","translateMinY","translateMaxX","translateMaxY","overflow","touchAction","zoomOut","zoomToggle","getListeners","activeListenerWithCapture","getSlideSelector","toggleGestures","slideSelector","enableGestures","disableGestures","momentumDurationX","momentumDurationY","momentumDistanceX","newPositionX","momentumDistanceY","newPositionY","momentumDuration","in","out","checkInView","loadPrevNext","loadPrevNextAmount","loadOnTransitionStart","scrollingElement","elementClass","loadingClass","loadedClass","preloaderClass","scrollHandlerAttached","initialImageLoaded","loadInSlide","loadInDuplicate","$images","background","$pictureEl","sourceEl","$source","slideOriginalIndex","slideExist","amount","maxIndex","minIndex","checkInViewOnLoad","$scrollElement","isWindow","scrollElementWidth","scrollElementHeight","LinearSpline","binarySearch","guess","array","i1","i3","interpolate","removeSpline","controller","control","spline","inverse","by","_t","controlled","controlledTranslate","setControlledTranslate","getInterpolateFunction","setControlledTransition","a11y","notificationClass","prevSlideMessage","nextSlideMessage","firstSlideMessage","lastSlideMessage","paginationBulletMessage","slideLabelMessage","containerMessage","containerRoleDescriptionMessage","itemRoleDescriptionMessage","slideRole","liveRegion","notify","message","notification","makeElFocusable","makeElNotFocusable","addElRole","role","addElRoleDescription","description","addElLabel","disableEl","enableEl","onEnterOrSpaceKey","click","updateNavigation","hasPagination","initNavEl","wrapperId","controls","addElControls","$containerEl","repeat","round","random","getRandomNumber","live","addElLive","bulletEl","updatePagination","root","paths","slugify","getPathValues","urlOverride","URL","pathArray","part","setHistory","includes","currentState","state","scrollToSlide","setHistoryPopState","hashNavigation","watchState","onHashChange","newHash","setHash","$activeSlideEl","autoplayResult","reverseDirection","stopOnLastSlide","pause","waitForTransition","onVisibilityChange","visibilityState","onMouseEnter","disableOnInteraction","onMouseLeave","pauseOnMouseEnter","thumbs","multipleActiveThumbs","autoScrollOffset","slideThumbActiveClass","thumbsContainerClass","swiperCreated","onThumbClick","thumbsSwiper","currentIndex","thumbsParams","SwiperClass","thumbsSwiperParams","useOffset","newThumbsIndex","currentThumbsIndex","prevThumbsIndex","nextThumbsIndex","thumbsToActivate","thumbActiveClass","momentum","momentumRatio","momentumBounce","momentumBounceRatio","momentumVelocityRatio","minimumVelocity","lastMoveEvent","pop","velocityEvent","distance","momentumDistance","newPosition","afterBouncePosition","doBounce","bounceAmount","needsLoopFix","moveDistance","currentSlideSize","slidesNumberEvenToRows","slidesPerRow","numFullColumns","newSlideOrderIndex","column","row","groupIndex","slideIndexInGroup","columnsInGroup","order","fadeEffect","crossFade","tx","ty","slideOpacity","cubeEffect","slideShadows","shadow","shadowOffset","shadowScale","$cubeShadowEl","wrapperRotate","slideAngle","tz","shadowBefore","shadowAfter","shadowAngle","sin","scale1","scale2","zFactor","flipEffect","limitRotation","rotateY","rotateX","zIndex","coverflowEffect","rotate","stretch","depth","modifier","center","offsetMultiplier","translateZ","slideTransform","$shadowBeforeEl","$shadowAfterEl","creativeEffect","limitProgress","shadowPerProgress","progressMultiplier","getTranslateValue","r","custom","translateString","rotateString","scaleString","opacityString","shadowOpacity","cardsEffect","tX","tY","tZ","tXAdd","isSwipeToNext","isSwipeToPrev","subProgress","prevY"],"mappings":"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