{"version":3,"sources":["webpack:///./src/views/pages/DocumentDetails.vue?d7c5","webpack:///./src/components/Carousel.vue?4868","webpack:///./src/components/carousel/DdCarouselNavigation.vue?6fbf","webpack:///src/components/carousel/DdCarouselNavigation.vue","webpack:///./src/components/carousel/DdCarouselNavigation.vue?0164","webpack:///./src/components/carousel/DdCarouselNavigation.vue","webpack:///src/components/Carousel.vue","webpack:///./src/components/Carousel.vue?2eef","webpack:///./src/components/Carousel.vue","webpack:///./src/components/Comments.vue?7b4b","webpack:///src/components/Comments.vue","webpack:///./src/components/Comments.vue?f0bc","webpack:///./src/components/Comments.vue","webpack:///./src/components/dd-video-player/DdVideoPlayer.vue?5542","webpack:///src/components/dd-video-player/DdVideoPlayer.vue","webpack:///./src/components/dd-video-player/DdVideoPlayer.vue?f4b5","webpack:///./src/components/dd-video-player/DdVideoPlayer.vue","webpack:///./src/components/DdAudioPlayer.vue?0692","webpack:///src/components/DdAudioPlayer.vue","webpack:///./src/components/DdAudioPlayer.vue?ca92","webpack:///./src/components/DdAudioPlayer.vue","webpack:///src/views/pages/DocumentDetails.vue","webpack:///./src/views/pages/DocumentDetails.vue?15ea","webpack:///./src/views/pages/DocumentDetails.vue","webpack:///./node_modules/core-js/modules/es6.string.includes.js","webpack:///./src/components/Comments.vue?1168","webpack:///./node_modules/plyr/dist/plyr.min.js","webpack:///./src/views/pages/DocumentDetails.vue?d811","webpack:///./src/components/DdRequestNewPermission.vue?4a0a","webpack:///src/components/DdRequestNewPermission.vue","webpack:///./src/components/DdRequestNewPermission.vue?70b3","webpack:///./src/components/DdRequestNewPermission.vue","webpack:///./node_modules/vue-awesome-swiper/dist/vue-awesome-swiper.js","webpack:///./src/components/Carousel.vue?f9ce","webpack:///./node_modules/swiper/dist/js/swiper.js"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","on","handleOk","model","value","callback","$$v","visible","expression","_v","_s","modal_name_document","_l","item","index","key","class","modal_id_favorite","id","checkFavoriteExists","$event","selectFavoriteId","name","_e","levels_id","encodeUrl","levels_name","father","titleDefault","showError","friendlyError","isAdmin","documentType","staticStyle","creators","_f","earliestDate","hasEarliestDate","latestDate","is_document_favorite","showModal","imagesCollection","startImageAt","changeImageIndex","video","startVideoAt","uri","audio","startAudioAt","image","currentImageIndex","domProps","imageTranscription","videoTranscription","audioTranscription","ref","comments","createCommentHandler","comment","staticRenderFns","_m","images","length","goToImage","swiperOption","openInNewTab","slot","directives","rawName","max","min","target","composing","imageNumber","component","$emit","currentComment","hasComments","username","createdAt","content","src","showSlider","title","text","color","iconPack","icon","$vs","notify","$refs","reset","loading","close","favoriteListId","$export","context","INCLUDES","P","F","includes","searchString","indexOf","arguments","undefined","module","exports","t","e","TypeError","i","n","enumerable","configurable","writable","Object","defineProperty","prototype","a","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","push","apply","s","forEach","getOwnPropertyDescriptors","defineProperties","r","propertyIsEnumerable","call","o","Array","isArray","Symbol","iterator","next","done","return","c","l","u","from","toString","slice","constructor","test","d","h","m","p","f","addCSS","thumbWidth","watch","g","document","querySelectorAll","y","v","b","w","k","String","T","C","NodeList","A","S","E","Element","N","Event","M","x","concat","match","Math","parseFloat","toFixed","round","I","L","O","_","element","querySelector","rangeTouch","config","init","enabled","style","userSelect","webKitUserSelect","touchAction","listeners","set","changedTouches","getAttribute","getBoundingClientRect","width","clientX","left","disabled","preventDefault","get","bubbles","dispatchEvent","type","MutationObserver","addedNodes","observe","body","childList","subtree","map","documentElement","j","D","Boolean","q","H","R","Function","V","B","U","W","z","K","Number","isNaN","Y","Q","X","$","J","G","Z","ee","KeyboardEvent","te","TextTrack","kind","ie","Promise","then","ne","window","URL","startsWith","hostname","ae","se","createElement","WebkitTransition","MozTransition","OTransition","transition","find","re","setTimeout","hidden","offsetHeight","oe","isIE","documentMode","isEdge","navigator","userAgent","isWebkit","isIPhone","platform","isIos","le","split","reduce","ce","shift","assign","ue","reverse","cloneNode","parentNode","nextSibling","appendChild","insertBefore","de","entries","setAttribute","he","innerText","me","pe","removeChild","fe","childNodes","lastChild","ge","replaceChild","ye","trim","replace","charAt","ve","be","classList","contains","we","ke","matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","Te","elements","container","Ce","Ae","focus","preventScroll","classNames","tabFocus","Se","Pe","Ee","check","playsinline","api","ui","rangeInput","pip","webkitSetPresentationMode","pictureInPictureEnabled","disablePictureInPicture","airplay","WebKitPlaybackTargetAvailabilityEvent","mime","isHTML5","media","canPlayType","textTracks","touch","transitions","reducedMotion","matchMedia","Ne","addEventListener","removeEventListener","Me","passive","capture","eventListeners","options","xe","Ie","Le","Oe","CustomEvent","detail","plyr","je","ready","De","qe","every","He","Fe","ratio","embed","videoWidth","videoHeight","Re","isVideo","wrapper","paddingBottom","isVimeo","vimeo","premium","supported","offsetWidth","parseInt","getComputedStyle","fullscreen","active","transform","toggle","videoFixedRatio","padding","Ve","getSources","getQualityOptions","quality","forced","setup","speed","source","onChange","currentTime","paused","preload","readyState","playbackRate","once","play","load","cancelRequests","blankVideo","debug","log","Be","Ue","We","RegExp","ze","toUpperCase","substr","toLowerCase","Ke","Ye","innerHTML","Qe","html5","youtube","Xe","i18n","seekTime","$e","storage","localStorage","getItem","JSON","parse","setItem","stringify","removeItem","Je","XMLHttpRequest","responseText","response","Error","status","open","responseType","send","Ge","getElementById","insertAdjacentElement","catch","Ze","trunc","et","tt","it","nt","getIconUrl","iconUrl","location","host","svg4everybody","url","cors","findElements","controls","selectors","buttons","pause","restart","rewind","fastForward","mute","settings","captions","progress","inputs","seek","volume","display","buffer","duration","seekTooltip","tooltip","warn","toggleNativeControls","createIcon","iconPrefix","createElementNS","focusable","setAttributeNS","createLabel","join","createBadge","menu","badge","createButton","label","labelPressed","iconPressed","some","control","createRange","step","autocomplete","role","updateRangeFill","createProgress","played","createTime","time","bindMenuItemShortcuts","which","stopPropagation","showMenuPanel","nextElementSibling","firstElementChild","previousElementSibling","lastElementChild","focusFirstMenuItem","createMenuItem","list","checked","children","bind","currentTrack","formatTime","updateTimeDisplay","updateVolume","setRange","muted","pressed","updateProgress","getElementsByTagName","nodeValue","buffered","setProperty","updateSeekTooltip","tooltips","pageX","timeUpdate","invertTime","seeking","durationUpdate","pow","displayDuration","toggleMenuButton","updateSetting","panels","default","getLabel","rt","setQualityMenu","checkMenu","sort","setCaptionsMenu","getTracks","toggled","language","unshift","setSpeedMenu","minimumSpeed","maximumSpeed","values","popup","toggleMenu","composedPath","getMenuSize","position","opacity","removeAttribute","scrollWidth","scrollHeight","height","propertyName","setDownloadUrl","download","create","home","href","urls","isEmbed","provider","inject","loadSprite","floor","random","seektime","controlPressed","labels","at","st","URLSearchParams","isYouTube","protocol","createObjectURL","languages","userLanguage","update","meta","currentTrackNode","mode","updateCues","setLanguage","findTrack","enableTextTrack","has","getCurrentTrack","activeCues","getCueAsHTML","caption","ot","autoplay","autopause","toggleInvert","clickToPlay","hideControls","resetOnEnd","disableContextMenu","loop","selected","keyboard","focused","global","fallback","iosNative","seekLabel","unmute","enableCaptions","disableCaptions","enterFullscreen","exitFullscreen","frameTitle","menuBack","normal","start","end","all","advertisement","qualityBadge","2160","1440","1080","720","576","480","sdk","iframe","googleIMA","events","editable","embedContainer","poster","posterEnabled","ads","playing","stopped","hover","cues","isTouch","uiSupported","noTransition","previewThumbnails","thumbContainer","thumbContainerShown","imageContainer","timeContainer","scrubbingContainer","scrubbingContainerShown","attributes","publisherId","tagUrl","byline","portrait","transparent","customControls","referrerPolicy","rel","showinfo","iv_load_policy","modestbranding","noCookie","lt","ct","ut","dt","ht","mt","pt","console","error","ft","player","prefix","property","scrollPosition","forceFallback","closest","parentElement","nodeType","proxy","trapFocus","scrollX","scrollY","scrollTo","overflow","head","cleanupViewport","keyCode","activeElement","shiftKey","native","webkitEnterFullscreen","toggleFallback","requestFullscreen","navigationUI","webkitExitFullscreen","cancelFullScreen","exit","enter","fullscreenElement","shadowRoot","getRootNode","fullscreenEnabled","webkitFullscreenEnabled","mozFullScreenEnabled","msFullscreenEnabled","gt","Image","onload","onerror","naturalWidth","yt","addStyleHook","build","checkPlaying","setTitle","setPoster","togglePoster","reject","backgroundImage","backgroundSize","toggleControls","checkLoading","clearTimeout","timers","lastSeekTime","Date","now","migrateStyles","getPropertyValue","removeProperty","vt","lastKey","focusTimer","lastKeyDown","handleKey","setTabFocus","firstTouch","altKey","ctrlKey","metaKey","togglePlay","increaseVolume","decreaseVolume","forward","toggleCaptions","usingNative","timeStamp","resized","firstChild","maxWidth","margin","isAudio","ended","currentTarget","hasAttribute","loaded","startMove","endMove","startScrubbing","endScrubbing","webkitDirectionInvertedFromDevice","deltaX","deltaY","sign","abs","globalThis","self","bt","splice","success","async","numRetries","before","relList","as","onbeforeload","sheet","cssText","code","defaultPrevented","returnPromise","isDefined","wt","kt","hasPlayed","Tt","Vimeo","sidedock","gesture","$2","thumbnail_url","Player","disableTextTrack","stop","resolve","setVolume","setCurrentTime","setPlaybackRate","setLoop","getVideoUrl","getVideoWidth","getVideoHeight","setAutopause","getVideoTitle","getCurrentTime","getDuration","getTextTracks","createDocumentFragment","getPaused","seconds","percent","Ct","At","It","St","YT","onYouTubeIframeAPIReady","getTitle","videoId","playerVars","hl","disablekb","cc_load_policy","cc_lang_pref","widget_referrer","onError","data","2","5","100","101","150","message","onPlaybackRateChange","getPlaybackRate","onReady","playVideo","pauseVideo","stopVideo","seekTo","getAvailablePlaybackRates","clearInterval","buffering","setInterval","getVideoLoadedFraction","lastBuffered","onStateChange","unMute","Pt","Et","initialized","displayContainer","manager","loader","cuePoints","safetyTimer","countdownTimer","managerPromise","google","ima","trigger","destroy","remove","startSafetyTimer","clearSafetyTimer","setupIMA","setVpaidMode","ImaSdkSettings","VpaidMode","ENABLED","setLocale","setDisableCustomPlaybackForIOS10Plus","AdDisplayContainer","AdsLoader","AdsManagerLoadedEvent","Type","ADS_MANAGER_LOADED","onAdsManagerLoaded","AdErrorEvent","AD_ERROR","onAdError","requestAds","AdsRequest","adTagUrl","linearAdSlotWidth","linearAdSlotHeight","nonLinearAdSlotWidth","nonLinearAdSlotHeight","forceNonLinearFullSlot","setAdWillPlayMuted","getRemainingTime","AdsRenderingSettings","restoreCustomPlaybackStateOnAdBreakComplete","enablePreloading","getAdsManager","getCuePoints","AdEvent","onAdEvent","getAd","getAdData","LOADED","pollCountdown","isLinear","STARTED","ALL_ADS_COMPLETED","loadAds","contentComplete","CONTENT_PAUSE_REQUESTED","pauseContent","CONTENT_RESUME_REQUESTED","resumeContent","LOG","adError","getMessage","cancel","addCuePoints","discardAdBreak","resize","ViewMode","NORMAL","initialize","zIndex","AV_PUBLISHERID","AV_CHANNELID","AV_URL","cb","AV_WIDTH","AV_HEIGHT","AV_CDIM2","Nt","Mt","thumbnails","lastMouseMoveTime","mouseDown","loadedImages","thumb","scrubbing","getThumbnails","determineContainerAutoSizing","getThumbnail","frames","startTime","endTime","urlPrefix","substring","lastIndexOf","naturalHeight","mousePosX","showImageAtCurrentTime","toggleThumbContainer","button","toggleScrubbingContainer","ceil","lastTime","setScrubbingContainerSize","setThumbContainerSizeAndPos","findIndex","showingThumb","loadImage","currentImageElement","dataset","filename","showImage","removeOldImages","loadingImage","usingSprites","showingThumbFilename","setImageSizeAndOffset","currentImageContainer","preloadNearby","getHigherQuality","tagName","deleting","thumbContainerHeight","clientHeight","clientWidth","sizeSpecifiedInCSS","thumbAspectRatio","setThumbContainerPos","right","top","currentScrubbingImageElement","currentThumbnailImageElement","xt","insertElements","change","sources","crossorigin","tracks","Lt","failed","jQuery","defaults","WeakMap","original","className","search","searchParams","tabindex","webkitShowPlaybackTargetPicker","unload","mozHasAudio","webkitAudioDecodedByteCount","audioTracks","currentSrc","requestPictureInPicture","exitPictureInPicture","webkitPresentationMode","pictureInPictureElement","openRequestNewPermissionDialog","result","activePrompt","requestNewPermission","closeSelects","selectedAccessLevel","showSelectUsers","selectedUsers","__esModule","hasOwnProperty","_compiled","functional","_scopeId","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","beforeCreate","_injectStyles","esModule","install","swiperSlide","swiper","Swiper","props","globalOptions","slideClass","mounted","$parent","updated","attached","methods","required","classes","wrapperClass","mountInstance","$nextTick","activated","beforeDestroy","navigation","pagination","$el","bindEvents","_t","factory","doc","blur","nodeName","createEvent","initEvent","hash","win","history","screen","Dom7","arr","selector","els","tempParent","html","toCreate","unique","uniqueArray","addClass","removeClass","hasClass","toggleClass","attr","arguments$1","attrName","removeAttr","el","dom7ElementDataStorage","dataKey","elStyle","webkitTransform","webkitTransitionDuration","transitionDuration","args","len","eventType","targetSelector","listener","handleLiveEvent","eventData","dom7EventData","is","parents","handleEvent","event$1","dom7LiveListeners","proxyListener","event","dom7Listeners","off","handlers","handler","dom7proxy","evt","cancelable","dataIndex","transitionEnd","dom","fireCallBack","outerWidth","includeMargins","styles","outerHeight","offset","box","clientTop","clientLeft","scrollTop","scrollLeft","css","prop","each","textContent","compareWith","child","previousSibling","eq","returnIndex","append","newChild","tempDiv","prepend","nextAll","nextEls","prev","prevAll","prevEls","foundElements","found","toAdd","fn","Class","Methods","methodName","Utils","deleteProps","obj","object","nextTick","delay","getTranslate","axis","matrix","curTransform","transformMatrix","curStyle","WebKitCSSMatrix","MozTransform","OTransform","MsTransform","msTransform","m41","m42","parseUrlQuery","params","param","query","urlToParse","paramsPart","decodeURIComponent","isObject","extend","len$1","to","nextSource","keysArray","nextIndex","nextKey","desc","Support","testDiv","Modernizr","maxTouchPoints","DocumentTouch","pointerEvents","pointerEnabled","PointerEvent","prefixedPointerEvents","msPointerEnabled","transforms3d","csstransforms3d","flexbox","observer","passiveListener","supportsPassive","opts","gestures","Browser","isSafari","ua","isUiWebView","SwiperClass","eventsListeners","eventName","staticAccessors","components","updateSize","isHorizontal","isVertical","size","updateSlides","$wrapperEl","swiperSize","rtl","rtlTranslate","wrongRTL","isVirtual","virtual","previousSlidesLength","slides","slidesLength","snapGrid","slidesGrid","slidesSizesGrid","offsetBefore","slidesOffsetBefore","offsetAfter","slidesOffsetAfter","previousSnapGridLength","previousSlidesGridLength","spaceBetween","slidePosition","prevSlideSize","slidesNumberEvenToRows","slideSize","virtualSize","marginLeft","marginTop","marginRight","marginBottom","slidesPerColumn","slidesPerView","slidesPerColumnFill","newSlidesGrid","slidesPerRow","numFullColumns","slide","newSlideOrderIndex","column","row","slidesPerGroup","groupIndex","order","slideStyles","currentTransform","currentWebKitTransform","roundLengths","paddingLeft","paddingRight","boxSizing","paddingTop","boxSizing$1","swiperSlideSize","centeredSlides","effect","setWrapperSize","i$1","slidesGridItem","i$2","slidesGridItem$1","centerInsufficientSlides","allSlidesSize","slideSizeValue","allSlidesOffset","snap","snapIndex","emit","watchOverflow","checkOverflow","watchSlidesProgress","watchSlidesVisibility","updateSlidesOffset","updateAutoHeight","activeSlides","newHeight","setTransition","activeIndex","swiperSlideOffset","offsetLeft","offsetTop","updateSlidesProgress","translate","offsetCenter","slideVisibleClass","visibleSlidesIndexes","visibleSlides","slideProgress","minTranslate","slideBefore","slideAfter","isVisible","translatesDiff","maxTranslate","isBeginning","isEnd","wasBeginning","wasEnd","updateSlidesClasses","activeSlide","realIndex","slideActiveClass","slideDuplicateClass","slideDuplicateActiveClass","nextSlide","slideNextClass","prevSlide","slidePrevClass","slideDuplicateNextClass","slideDuplicatePrevClass","updateActiveIndex","newActiveIndex","previousIndex","previousRealIndex","previousSnapIndex","normalizeSlideIndex","runCallbacksOnInit","updateClickedSlide","slideFound","clickedSlide","clickedIndex","slideToClickedSlide","priority","method","onceHandler","f7proxy","eventHandler","eventsArray","useModulesParams","instanceParams","instance","modules","moduleName","useModules","modulesParams","moduleParams","modulePropName","moduleProp","moduleEventName","use","installModule","proto","static","virtualTranslate","currentTranslate","setTranslate","byController","newProgress","previousTranslate","transitionStart","runCallbacks","direction","autoHeight","dir","transitionEnd$1","animating","transition$1","slideTo","internal","slideIndex","preventInteractionOnTransition","initialSlide","allowSlideNext","allowSlidePrev","onSlideToWrapperTransitionEnd","destroyed","slideToLoop","newIndex","loopedSlides","slideNext","loopFix","_clientLeft","slidePrev","normalize","val","prevIndex","normalizedTranslate","normalizedSnapGrid","prevSnap","slideReset","slideToClosest","currentSnap","nextSnap","slidesPerViewDynamic","slideToIndex","loopCreate","loopFillGroupWithBlank","blankSlidesNum","blankNode","loopAdditionalSlides","prependSlides","appendSlides","snapTranslate","diff","slideChanged","slideChanged$1","loopDestroy","setGrabCursor","moving","simulateTouch","isLocked","cursor","unsetGrabCursor","grabCursor","appendSlide","prependSlide","addSlide","activeIndexBuffer","baseLength","slidesBuffer","currentSlide","removeSlide","slidesIndexes","indexToRemove","removeAllSlides","manipulation","Device","device","ios","android","androidChrome","desktop","windows","iphone","ipod","ipad","cordova","phonegap","os","osVersion","webView","osVersionArr","metaViewport","minimalUi","pixelRatio","devicePixelRatio","onTouchStart","touchEventsData","touches","originalEvent","isTouchEvent","isTouched","isMoved","noSwiping","noSwipingSelector","allowClick","swipeHandler","currentX","targetTouches","currentY","pageY","startX","startY","edgeSwipeDetection","iOSEdgeSwipeDetection","edgeSwipeThreshold","iOSEdgeSwipeThreshold","allowTouchCallbacks","isScrolling","startMoving","touchStartTime","swipeDirection","threshold","allowThresholdMove","formElements","shouldPreventDefault","allowTouchMove","touchStartPreventDefault","touchStartForcePreventDefault","onTouchMove","preventedByNestedSwiper","touchReleaseOnEdges","diffX","diffY","sqrt","touchAngle","atan2","PI","touchMoveStopPropagation","nested","startTranslate","allowMomentumBounce","touchRatio","disableParentSwiper","resistanceRatio","resistance","followFinger","freeMode","velocities","onTouchEnd","currentPos","touchEndTime","timeDiff","lastClickTime","clickTimeout","freeModeMomentum","lastMoveEvent","pop","velocityEvent","distance","velocity","freeModeMinimumVelocity","freeModeMomentumVelocityRatio","momentumDuration","freeModeMomentumRatio","momentumDistance","newPosition","afterBouncePosition","needsLoopFix","doBounce","bounceAmount","freeModeMomentumBounceRatio","freeModeMomentumBounce","freeModeSticky","longSwipesMs","stopIndex","groupSize","longSwipes","longSwipesRatio","shortSwipes","onResize","breakpoints","setBreakpoint","newTranslate","running","run","onClick","preventClicks","preventClicksPropagation","stopImmediatePropagation","attachEvents","touchEvents","wrapperEl","touchEventsTarget","passiveListeners","move","detachEvents","breakpoint","getBreakpoint","currentBreakpoint","breakpointOnlyParams","paramValue","breakpointParams","originalParams","directionChanged","needsReLoop","changeDirection","points","point","breakpointsInverse","innerWidth","addClasses","suffixes","suffix","containerModifierClass","removeClasses","imageEl","srcset","sizes","checkForComplete","complete","preloadImages","imagesLoaded","imagesToLoad","updateOnImagesReady","wasLocked","checkOverflow$1","uniqueNavElements","noSwipingClass","slideBlankClass","prototypes","extendedDefaults","prototypeGroup","protoMethod","moduleParamName","swiperParams","passedParams","swipers","containerEl","newParams","touchEventsTouch","touchEventsDesktop","__proto__","spv","breakLoop","translated","translateValue","newDirection","needUpdate","currentDirection","slideEl","deleteInstance","cleanStyles","extendDefaults","newDefaults","Device$1","Support$1","support","Browser$1","browser","Resize","resizeHandler","orientationChangeHandler","Observer","func","WebkitMutationObserver","attach","ObserverFunc","mutations","observerUpdate","requestAnimationFrame","characterData","observers","observeParents","containerParents","observeSlideChildren","disconnect","Observer$1","Virtual","force","ref$1","addSlidesBefore","addSlidesAfter","ref$2","previousFrom","previousTo","previousSlidesGrid","renderSlide","previousOffset","offsetProp","slidesAfter","slidesBefore","onRendered","lazy","renderExternal","slidesToRender","prependIndexes","appendIndexes","cache","$slideEl","numberOfNewSlides","newCache","cachedIndex","Virtual$1","beforeInit","overwriteParams","Keyboard","handle","kc","charCode","onlyInViewport","inView","windowWidth","windowHeight","innerHeight","swiperOffset","swiperCoord","returnValue","enable","disable","Keyboard$1","isEventSupported","isSupported","implementation","hasFeature","Mousewheel","lastScrollTime","PIXEL_STEP","LINE_HEIGHT","PAGE_HEIGHT","sX","sY","pX","pY","wheelDelta","wheelDeltaY","wheelDeltaX","HORIZONTAL_AXIS","deltaMode","spinX","spinY","pixelX","pixelY","handleMouseEnter","mouseEntered","handleMouseLeave","mousewheel","releaseOnEdges","delta","rtlFactor","forceToAxis","invert","sensitivity","timeout","autoplayDisableOnInteraction","getTime","eventsTarged","Mousewheel$1","Navigation","$nextEl","$prevEl","disabledClass","lockClass","onPrevClick","onNextClick","nextEl","prevEl","Navigation$1","hideOnClick","hiddenClass","toEdge","fromEdge","click","isHidden","Pagination","current","total","paginationType","bullets","firstIndex","lastIndex","midIndex","dynamicBullets","bulletSize","dynamicMainBullets","dynamicBulletIndex","bullet","$bullet","bulletIndex","bulletActiveClass","$firstDisplayedBullet","$lastDisplayedBullet","dynamicBulletsLength","bulletsOffset","formatFractionCurrent","formatFractionTotal","progressbarDirection","progressbarOpposite","scale","scaleX","scaleY","renderCustom","paginationHTML","numberOfBullets","renderBullet","bulletClass","renderFraction","currentClass","totalClass","renderProgressbar","progressbarFillClass","clickable","clickableClass","modifierClass","progressbarOppositeClass","Pagination$1","bulletElement","number","activeIndexChange","snapIndexChange","slidesLengthChange","snapGridLengthChange","Scrollbar","scrollbar","dragSize","trackSize","$dragEl","newSize","newPos","hide","divider","moveDivider","getPointerPosition","clientY","setDragPosition","positionRatio","dragStartPos","onDragStart","dragTimeout","onDragMove","onDragEnd","snapOnRelease","enableDraggable","activeListener","disableDraggable","$swiperEl","dragEl","draggable","Scrollbar$1","dragClass","Parallax","setTransform","currentOpacity","currentScale","parallax","parallaxEl","$parallaxEl","parallaxDuration","Parallax$1","Zoom","getDistanceBetweenTouches","x1","y1","x2","y2","onGestureStart","zoom","fakeGestureTouched","fakeGestureMoved","scaleStart","$imageEl","$imageWrapEl","maxRatio","isScaling","onGestureChange","scaleMove","minRatio","onGestureEnd","touchesStart","slideWidth","slideHeight","scaledWidth","scaledHeight","minX","maxX","minY","maxY","touchesCurrent","prevPositionX","prevPositionY","prevTime","momentumDurationX","momentumDurationY","momentumDistanceX","newPositionX","momentumDistanceY","newPositionY","onTransitionEnd","out","in","touchX","touchY","offsetX","offsetY","translateX","translateY","imageWidth","imageHeight","translateMinX","translateMinY","translateMaxX","translateMaxY","Zoom$1","containerClass","zoomedSlideClass","touchStart","touchEnd","doubleTap","Lazy","loadInSlide","loadInDuplicate","$images","elementClass","loadedClass","loadingClass","imageIndex","background","slideOriginalIndex","originalSlide","duplicatedSlide","slideExist","initialImageLoaded","elIndex","loadPrevNext","loadPrevNextAmount","amount","maxIndex","minIndex","Lazy$1","loadOnTransitionStart","preloaderClass","scroll","scrollbarDragMove","Controller","LinearSpline","i1","i3","binarySearch","guess","array","interpolate","getInterpolateFunction","controller","spline","setTranslate$1","multiplier","controlledTranslate","controlled","setControlledTranslate","by","inverse","setControlledTransition","Controller$1","a11y","makeElFocusable","addElRole","addElLabel","disableEl","enableEl","onEnterKey","$targetEl","lastSlideMessage","nextSlideMessage","firstSlideMessage","prevSlideMessage","notification","liveRegion","updateNavigation","updatePagination","bulletEl","$bulletEl","paginationBulletMessage","A11y","notificationClass","paginationUpdate","History","pushState","hashNavigation","paths","getPathValues","scrollToSlide","replaceState","setHistoryPopState","pathArray","pathname","part","setHistory","slugify","currentState","state","slideHistory","History$1","HashNavigation","onHashCange","newHash","activeSlideHash","setHash","slideHash","watchState","HashNavigation$1","Autoplay","$activeSlideEl","reverseDirection","stopOnLastSlide","waitForTransition","Autoplay$1","disableOnInteraction","beforeTransitionStart","sliderFirstMove","Fade","tx","ty","slideOpacity","fadeEffect","crossFade","eventTriggered","triggerEvents","EffectFade","Cube","$cubeShadowEl","swiperWidth","swiperHeight","cubeEffect","wrapperRotate","shadow","slideAngle","tz","slideShadows","shadowBefore","shadowAfter","shadowOffset","shadowAngle","sin","cos","scale1","shadowScale","scale2","zFactor","EffectCube","Flip","flipEffect","limitRotation","rotate","rotateY","rotateX","EffectFlip","Coverflow","coverflowEffect","center","depth","slideOffset","offsetMultiplier","modifier","translateZ","stretch","slideTransform","$shadowBeforeEl","$shadowAfterEl","ws","perspectiveOrigin","EffectCoverflow","Thumbs","thumbsParams","thumbs","swiperCreated","thumbsContainerClass","onThumbClick","thumbsSwiper","slideThumbActiveClass","currentIndex","initial","newThumbsIndex","currentThumbsIndex","prevThumbsIndex","nextThumbsIndex","thumbsToActivate","thumbActiveClass","Thumbs$1","slideChange"],"mappings":"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","file":"js/chunk-582211e8.2042b2cb.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container\",attrs:{\"id\":\"document-details-page\"}},[_c('div',[(_vm.hasFavoriteListOption)?_c('a-modal',{attrs:{\"title\":\"Lista de favoritos\",\"okText\":\"Favoritar\",\"cancelText\":\"Cancelar\"},on:{\"ok\":_vm.handleOk},model:{value:(_vm.visible),callback:function ($$v) {_vm.visible=$$v},expression:\"visible\"}},[_c('h6',[_vm._v(\"Favoritar: \"+_vm._s(this.modal_name_document))]),_vm._l((_vm.favoriteListOption),function(item,index){return _c('div',{key:index,class:(\"\" + (_vm.modal_id_favorite == item.id || _vm.checkFavoriteExists(item.id) ? 'bg-gray' : '')),on:{\"click\":function($event){return _vm.selectFavoriteId(item.id)}}},[_c('p',[_vm._v(\"\\n \"+_vm._s(item.name)+\"\\n \")])])})],2):_vm._e()],1),_c('div',{staticClass:\"m-3 pt-3\"},[_c('a-breadcrumb',{attrs:{\"separator\":\">\"}},[_c('a-breadcrumb-item',{attrs:{\"href\":\"/home\"}},[_c('router-link',{attrs:{\"to\":\"/\"}},[_vm._v(\"\\n Home\\n \")])],1),(_vm.levels_id !== 0)?_c('a-breadcrumb-item',{attrs:{\"href\":(\"/levels/\" + (this.levels_id) + \"/\" + (_vm.encodeUrl(_vm.levels_name)))}},[_c('router-link',{attrs:{\"to\":(\"/levels/\" + (this.levels_id) + \"/\" + (_vm.encodeUrl(_vm.levels_name)))}},[_vm._v(\"\\n \"+_vm._s(this.levels_name)+\"\\n \")])],1):_vm._e(),_vm._l((_vm.levels_fathers),function(father,index){return _c('a-breadcrumb-item',{key:index,attrs:{\"href\":(\"/itens/\" + (father.id) + \"/\" + (_vm.encodeUrl(father.name)))}},[_c('router-link',{attrs:{\"to\":(\"/itens/\" + (father.id) + \"/\" + (_vm.encodeUrl(father.name)))}},[_vm._v(\"\\n \"+_vm._s(father.name)+\"\\n \")])],1)}),_c('a-breadcrumb-item',{attrs:{\"href\":\"#\"}},[_c('strong',[_vm._v(\"\\n \"+_vm._s(this.titleDefault || 'Sem título')+\"\\n \")])])],2)],1),_c('hr',{staticClass:\" mb-5\"}),(!_vm.showError)?_c('div',{staticClass:\"mt-5\",attrs:{\"title\":_vm.titleDefault}},[(!_vm.isAdmin)?_c('dd-request-new-permission',{staticClass:\"mb-6\",attrs:{\"document-id\":_vm.id,\"document-title\":_vm.titleDefault}}):_vm._e(),_c('div',{staticClass:\"fab-card-titulo\"},[_c('div',[(_vm.documentType == 'mp3')?_c('a-icon',{staticClass:\"mt-3 mr-3\",staticStyle:{\"fontSize\":\"20px\",\"color\":\"green\"},attrs:{\"type\":\"sound\",\"theme\":\"filled\"}}):_vm._e(),(_vm.documentType == 'mp4')?_c('a-icon',{staticClass:\"mt-3 mr-3\",staticStyle:{\"fontSize\":\"20px\",\"color\":\"red\"},attrs:{\"type\":\"play-circle\",\"theme\":\"filled\"}}):_vm._e(),(_vm.documentType == 'txt')?_c('a-icon',{staticClass:\"mt-3 mr-3\",staticStyle:{\"fontSize\":\"20px\",\"color\":\"blue\"},attrs:{\"type\":\"file\",\"theme\":\"filled\"}}):_vm._e()],1),_c('div',{staticClass:\"fab-card-width\"},[_c('div',{staticClass:\"fab-card-titulo-resp\"},[_c('strong',[_vm._v(_vm._s(_vm.titleDefault))]),_c('div',{staticClass:\"fab-card-width\"},[_c('small',{staticClass:\"mt-2\"},[_c('strong',[_vm._v(\"Responsável:\")]),_vm._v(\" \"+_vm._s(_vm.creators[0])+\" \")]),_c('div',{staticClass:\"fab-flex\"},[_c('small',{staticClass:\"mt-2 mr-4\",staticStyle:{\"white-space\":\"nowrap\",\"display\":\"flex\"}},[_c('strong',{staticClass:\"mr-2\"},[_vm._v(\"\\n Início:\\n \")]),(_vm.hasEarliestDate)?_c('p',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.earliestDate,true)))]):_vm._e(),(!_vm.hasEarliestDate)?_c('p',[_vm._v(\" - \")]):_vm._e()]),_c('small',{staticClass:\"mt-2 mr-4\",staticStyle:{\"white-space\":\"nowrap\",\"display\":\"flex\"}},[_c('strong',{staticClass:\"mr-2\"},[_vm._v(\"\\n Término:\\n \")]),(_vm.latestDate)?_c('p',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.latestDate,true)))]):_vm._e(),(!_vm.latestDate)?_c('p',[_vm._v(\" - \")]):_vm._e()]),_c('a',[_c('a-icon',{staticStyle:{\"fontSize\":\"20px\"},attrs:{\"theme\":(\"\" + (_vm.is_document_favorite ? 'filled' : 'outlined')),\"type\":\"star\"},on:{\"click\":_vm.showModal}})],1)])])])])]),_c('div',{staticClass:\"fab-card-body\"},[_c('div',{staticClass:\"fab-card-body-section-1\"},[(_vm.showSlider)?_c('carousel',{staticClass:\"mt-6\",attrs:{\"images\":_vm.imagesCollection,\"start-image-at\":_vm.startImageAt},on:{\"currentSlideIndex\":_vm.changeImageIndex}}):_vm._e(),(_vm.hasVideos)?_c('article',{staticClass:\"mt-6 mx-auto text-center\"},[_c('h5',{staticClass:\"mb-2\"},[_vm._v(\"Vídeos\")]),_vm._l((_vm.videosCollection),function(video,index){return _c('div',{key:index},[_c('div',{staticClass:\"flex flex-col align-center items-center\",staticStyle:{\"margin-top\":\"-2.5rem\"}},[_c('dd-video-player',{attrs:{\"src\":video,\"start-at\":_vm.startVideoAt}}),_vm._v(\"\\n \\n \"+_vm._s(video.uri)+\"\\n \")],1)])})],2):_vm._e(),(_vm.hasAudios)?_c('article',{staticClass:\"mt-6 mx-auto text-center\"},[_c('h5',{staticClass:\"mb-2\"},[_vm._v(\"Áudios\")]),_c('div',{staticClass:\"flex flex-col align-center items-center\"},_vm._l((_vm.audiosCollection),function(audio){return _c('dd-audio-player',{key:audio,attrs:{\"src\":audio,\"start-at\":_vm.startAudioAt}})}),1)]):_vm._e()],1),_c('div',{staticClass:\"fab-card-body-section-2\"},[(_vm.hasImages)?_c('article',{staticClass:\"mt-6 mx-auto text-center\"},[_c('h5',{staticClass:\"mb-2\"},[_vm._v(\"Transcrição do arquivo\")]),_vm._l((_vm.images),function(image,index){return (_vm.currentImageIndex == index)?_c('div',{key:image.uri},[_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.imageTranscription)}})]):_vm._e()})],2):_vm._e(),(_vm.hasVideos)?_c('article',{staticClass:\"mt-6 mx-auto text-center\"},_vm._l((_vm.videos),function(video,index){return _c('div',{key:index},[_c('h5',{staticClass:\"mb-4 mt-10\"},[_vm._v(\"Transcrição do vídeo\")]),_c('div',{staticClass:\"text-left\"},[_c('vue-markdown',[_c('p',{staticClass:\"mb-2\",domProps:{\"innerHTML\":_vm._s(_vm.videoTranscription)}})])],1)])}),0):_vm._e(),(_vm.hasAudios)?_c('article',{staticClass:\"mt-6 mx-auto text-center\"},[_c('h5',{staticClass:\"mb-4 mt-10\"},[_vm._v(\"Transcrição do áudio\")]),_c('div',{staticClass:\"text-left\"},[_c('vue-markdown',[_c('p',{staticClass:\"mb-2\",domProps:{\"innerHTML\":_vm._s(_vm.audioTranscription)}})])],1)]):_vm._e()]),_c('div',{staticClass:\"fab-card-body-section-3\"},[_c('section',{staticClass:\"mt-4 w-full\"},[_c('h5',{staticClass:\"mb-2\"},[_vm._v(\"Registrar comentário\")]),_c('comments',{ref:\"comments\",attrs:{\"comments\":_vm.comments},on:{\"submit\":_vm.createCommentHandler},model:{value:(_vm.comment),callback:function ($$v) {_vm.comment=$$v},expression:\"comment\"}})],1)])])],1):_c('vx-card',[_c('div',{staticClass:\"container\"},[_c('h4',{staticClass:\"text-red\"},[_vm._v(_vm._s(_vm.friendlyError))])])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"carousel\"},[_vm._m(0),_c('dd-carousel-navigation',{attrs:{\"max\":_vm.images.length,\"min\":1},on:{\"goTo\":_vm.goToImage}}),_c('swiper',{ref:\"slider\",attrs:{\"options\":_vm.swiperOption}},[_vm._l((_vm.images),function(image){return _c('swiper-slide',{key:image,staticClass:\"swiper-slide swiper-lazy\",attrs:{\"data-background\":image}},[_c('div',{staticClass:\"h-full w-full cursor-pointer\",on:{\"click\":function($event){return _vm.openInNewTab(image)}}}),_c('div',{staticClass:\"swiper-lazy-preloader\"})])}),_c('div',{staticClass:\"swiper-pagination\",attrs:{\"slot\":\"pagination\"},slot:\"pagination\"})],2)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"text-center mt-4\"},[_c('a',{staticClass:\"prev-slide\",attrs:{\"href\":\"#\"}},[_vm._v(\"Anterior\")]),_vm._v(\" |\\n \"),_c('a',{staticClass:\"next-slide\",attrs:{\"href\":\"#\"}},[_vm._v(\"Próximo\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex items-center justify-end mt-4 mr-5\"},[_c('p',{staticClass:\"mb-0 mr-4 \"},[_vm._v(\"Pular para a imagem\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.imageNumber),expression:\"imageNumber\"}],staticStyle:{\"width\":\"60px\"},attrs:{\"type\":\"number\",\"max\":_vm.max,\"min\":_vm.min},domProps:{\"value\":(_vm.imageNumber)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.imageNumber=$event.target.value}}}),_c('vs-button',{staticClass:\"ml-2\",attrs:{\"size\":\"small\"},on:{\"click\":_vm.goToImage}},[_vm._v(\"Ir\")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DdCarouselNavigation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DdCarouselNavigation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DdCarouselNavigation.vue?vue&type=template&id=fc76dc68&\"\nimport script from \"./DdCarouselNavigation.vue?vue&type=script&lang=js&\"\nexport * from \"./DdCarouselNavigation.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Carousel.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Carousel.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Carousel.vue?vue&type=template&id=6188889a&\"\nimport script from \"./Carousel.vue?vue&type=script&lang=js&\"\nexport * from \"./Carousel.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Carousel.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"text-right mb-4\"},[_c('vs-textarea',{staticClass:\"fab-textarea\",staticStyle:{\"border\":\"1px solid darkgray\"},attrs:{\"height\":\"160\",\"placeholder\":\"Escreva um comentário...\"},on:{\"input\":function($event){return _vm.$emit('input', _vm.currentComment)}},model:{value:(_vm.currentComment),callback:function ($$v) {_vm.currentComment=$$v},expression:\"currentComment\"}}),_c('vs-button',{attrs:{\"color\":\"primary\",\"type\":\"filled\"},on:{\"click\":function($event){return _vm.$emit('submit')}}},[_c('strong',[_vm._v(\"\\n REGISTRAR COMENTÁRIO\\n \")])])],1),(!_vm.hasComments)?_c('p',[_vm._v(\"Nenhum comentário encontrado\")]):_c('div',[_c('h3',[_vm._v(\"Comentários anteriores\")]),_c('hr'),_c('vs-list',{staticClass:\"mb-4\"},_vm._l((_vm.comments),function(comment){return _c('vs-list-item',{key:comment.id},[_c('div',{staticStyle:{\"display\":\"flex\",\"justify-content\":\"space-between\",\"margin-bottom\":\"10px\"}},[_c('strong',[_vm._v(\"\\n \"+_vm._s(comment.username)+\"\\n \")]),_c('small',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"relativeDate\")(comment.createdAt))+\"\\n \")])]),_vm._v(\"\\n \"+_vm._s(comment.content)+\"\\n \")])}),1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Comments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Comments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Comments.vue?vue&type=template&id=3624a32b&\"\nimport script from \"./Comments.vue?vue&type=script&lang=js&\"\nexport * from \"./Comments.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Comments.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"w-full max-w-full\"},[_c('video',{ref:\"player\",staticClass:\"video-js vjs-big-play-centered inline-block\",attrs:{\"controls\":\"\",\"width\":\"640\"}},[_c('source',{attrs:{\"src\":_vm.src,\"type\":\"video/mp4\"}})])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DdVideoPlayer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DdVideoPlayer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DdVideoPlayer.vue?vue&type=template&id=02d7bfb8&\"\nimport script from \"./DdVideoPlayer.vue?vue&type=script&lang=js&\"\nexport * from \"./DdVideoPlayer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('audio',{ref:\"player\",staticClass:\"mt-10 w-full\",attrs:{\"src\":_vm.src,\"controls\":\"\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DdAudioPlayer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DdAudioPlayer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DdAudioPlayer.vue?vue&type=template&id=04764160&\"\nimport script from \"./DdAudioPlayer.vue?vue&type=script&lang=js&\"\nexport * from \"./DdAudioPlayer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DocumentDetails.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DocumentDetails.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DocumentDetails.vue?vue&type=template&id=5a346790&scoped=true&\"\nimport script from \"./DocumentDetails.vue?vue&type=script&lang=js&\"\nexport * from \"./DocumentDetails.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DocumentDetails.vue?vue&type=style&index=0&id=5a346790&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5a346790\",\n null\n \n)\n\nexport default component.exports","// 21.1.3.7 String.prototype.includes(searchString, position = 0)\n'use strict';\nvar $export = require('./_export');\nvar context = require('./_string-context');\nvar INCLUDES = 'includes';\n\n$export($export.P + $export.F * require('./_fails-is-regexp')(INCLUDES), 'String', {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~context(this, searchString, INCLUDES)\n .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Comments.vue?vue&type=style&index=0&lang=css&\"","\"object\"==typeof navigator&&function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(\"Plyr\",t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).Plyr=t()}(this,(function(){\"use strict\";function e(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}function t(e,t){for(var i=0;i=0||(a[i]=e[i]);return a}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,i)&&(a[i]=e[i])}return a}function o(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(\"undefined\"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var i=[],n=!0,a=!1,s=void 0;try{for(var r,o=e[Symbol.iterator]();!(n=(r=o.next()).done)&&(i.push(r.value),!t||i.length!==t);n=!0);}catch(e){a=!0,s=e}finally{try{n||null==o.return||o.return()}finally{if(a)throw s}}return i}(e,t)||c(e,t)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function l(e){return function(e){if(Array.isArray(e))return u(e)}(e)||function(e){if(\"undefined\"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||c(e)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function c(e,t){if(e){if(\"string\"==typeof e)return u(e,t);var i=Object.prototype.toString.call(e).slice(8,-1);return\"Object\"===i&&e.constructor&&(i=e.constructor.name),\"Map\"===i||\"Set\"===i?Array.from(e):\"Arguments\"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?u(e,t):void 0}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=new Array(t);it){var i=function(e){var t=\"\".concat(e).match(/(?:\\.(\\d+))?(?:[eE]([+-]?\\d+))?$/);return t?Math.max(0,(t[1]?t[1].length:0)-(t[2]?+t[2]:0)):0}(t);return parseFloat(e.toFixed(i))}return Math.round(e/t)*t}var I,L,O,_=function(){function e(t,i){(function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")})(this,e),E(t)?this.element=t:A(t)&&(this.element=document.querySelector(t)),E(this.element)&&M(this.element.rangeTouch)&&(this.config=p({},f,{},i),this.init())}return function(e,t,i){t&&d(e.prototype,t),i&&d(e,i)}(e,[{key:\"init\",value:function(){e.enabled&&(this.config.addCSS&&(this.element.style.userSelect=\"none\",this.element.style.webKitUserSelect=\"none\",this.element.style.touchAction=\"manipulation\"),this.listeners(!0),this.element.rangeTouch=this)}},{key:\"destroy\",value:function(){e.enabled&&(this.config.addCSS&&(this.element.style.userSelect=\"\",this.element.style.webKitUserSelect=\"\",this.element.style.touchAction=\"\"),this.listeners(!1),this.element.rangeTouch=null)}},{key:\"listeners\",value:function(e){var t=this,i=e?\"addEventListener\":\"removeEventListener\";[\"touchstart\",\"touchmove\",\"touchend\"].forEach((function(e){t.element[i](e,(function(e){return t.set(e)}),!1)}))}},{key:\"get\",value:function(t){if(!e.enabled||!N(t))return null;var i,n=t.target,a=t.changedTouches[0],s=parseFloat(n.getAttribute(\"min\"))||0,r=parseFloat(n.getAttribute(\"max\"))||100,o=parseFloat(n.getAttribute(\"step\"))||1,l=n.getBoundingClientRect(),c=100/l.width*(this.config.thumbWidth/2)/100;return 0>(i=100/l.width*(a.clientX-l.left))?i=0:100i?i-=(100-2*i)*c:500&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length,i=new Array(t>1?t-1:0),a=1;a0?t.cloneNode(!0):t,a=e.parentNode,s=e.nextSibling;n.appendChild(e),s?a.insertBefore(n,s):a.appendChild(n)}))}function de(e,t){G(e)&&!ae(t)&&Object.entries(t).filter((function(e){var t=o(e,2)[1];return!W(t)})).forEach((function(t){var i=o(t,2),n=i[0],a=i[1];return e.setAttribute(n,a)}))}function he(e,t,i){var n=document.createElement(e);return z(t)&&de(n,t),Y(i)&&(n.innerText=i),n}function me(e,t,i,n){G(t)&&t.appendChild(he(e,i,n))}function pe(e){J(e)||$(e)?Array.from(e).forEach(pe):G(e)&&G(e.parentNode)&&e.parentNode.removeChild(e)}function fe(e){if(G(e))for(var t=e.childNodes.length;t>0;)e.removeChild(e.lastChild),t-=1}function ge(e,t){return G(t)&&G(t.parentNode)&&G(e)?(t.parentNode.replaceChild(e,t),e):null}function ye(e,t){if(!Y(e)||ae(e))return{};var i={},n=ce({},t);return e.split(\",\").forEach((function(e){var t=e.trim(),a=t.replace(\".\",\"\"),s=t.replace(/[[\\]]/g,\"\").split(\"=\"),r=o(s,1)[0],l=s.length>1?s[1].replace(/[\"']/g,\"\"):\"\";switch(t.charAt(0)){case\".\":Y(n.class)?i.class=\"\".concat(n.class,\" \").concat(a):i.class=a;break;case\"#\":i.id=t.replace(\"#\",\"\");break;case\"[\":i[r]=l}})),ce(n,i)}function ve(e,t){if(G(e)){var i=t;Q(i)||(i=!e.hidden),e.hidden=i}}function be(e,t,i){if(J(e))return Array.from(e).map((function(e){return be(e,t,i)}));if(G(e)){var n=\"toggle\";return void 0!==i&&(n=i?\"add\":\"remove\"),e.classList[n](t),e.classList.contains(t)}return!1}function we(e,t){return G(e)&&e.classList.contains(t)}function ke(e,t){var i=Element.prototype;return(i.matches||i.webkitMatchesSelector||i.mozMatchesSelector||i.msMatchesSelector||function(){return Array.from(document.querySelectorAll(t)).includes(this)}).call(e,t)}function Te(e){return this.elements.container.querySelectorAll(e)}function Ce(e){return this.elements.container.querySelector(e)}function Ae(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];G(e)&&(e.focus({preventScroll:!0}),t&&be(e,this.config.classNames.tabFocus))}var Se,Pe={\"audio/ogg\":\"vorbis\",\"audio/wav\":\"1\",\"video/webm\":\"vp8, vorbis\",\"video/mp4\":\"avc1.42E01E, mp4a.40.2\",\"video/ogg\":\"theora\"},Ee={audio:\"canPlayType\"in document.createElement(\"audio\"),video:\"canPlayType\"in document.createElement(\"video\"),check:function(e,t,i){var n=oe.isIPhone&&i&&Ee.playsinline,a=Ee[e]||\"html5\"!==t;return{api:a,ui:a&&Ee.rangeInput&&(\"video\"!==e||!oe.isIPhone||n)}},pip:!(oe.isIPhone||!X(he(\"video\").webkitSetPresentationMode)&&(!document.pictureInPictureEnabled||he(\"video\").disablePictureInPicture)),airplay:X(window.WebKitPlaybackTargetAvailabilityEvent),playsinline:\"playsInline\"in document.createElement(\"video\"),mime:function(e){if(ae(e))return!1;var t=o(e.split(\"/\"),1)[0],i=e;if(!this.isHTML5||t!==this.type)return!1;Object.keys(Pe).includes(i)&&(i+='; codecs=\"'.concat(Pe[e],'\"'));try{return Boolean(i&&this.media.canPlayType(i).replace(/no/,\"\"))}catch(e){return!1}},textTracks:\"textTracks\"in document.createElement(\"video\"),rangeInput:(Se=document.createElement(\"input\"),Se.type=\"range\",\"range\"===Se.type),touch:\"ontouchstart\"in document.documentElement,transitions:!1!==se,reducedMotion:\"matchMedia\"in window&&window.matchMedia(\"(prefers-reduced-motion)\").matches},Ne=function(){var e=!1;try{var t=Object.defineProperty({},\"passive\",{get:function(){return e=!0,null}});window.addEventListener(\"test\",null,t),window.removeEventListener(\"test\",null,t)}catch(e){}return e}();function Me(e,t,i){var n=this,a=arguments.length>3&&void 0!==arguments[3]&&arguments[3],s=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],r=arguments.length>5&&void 0!==arguments[5]&&arguments[5];if(e&&\"addEventListener\"in e&&!ae(t)&&X(i)){var o=t.split(\" \"),l=r;Ne&&(l={passive:s,capture:r}),o.forEach((function(t){n&&n.eventListeners&&a&&n.eventListeners.push({element:e,type:t,callback:i,options:l}),e[a?\"addEventListener\":\"removeEventListener\"](t,i,l)}))}}function xe(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",i=arguments.length>2?arguments[2]:void 0,n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],a=arguments.length>4&&void 0!==arguments[4]&&arguments[4];Me.call(this,e,t,i,!0,n,a)}function Ie(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",i=arguments.length>2?arguments[2]:void 0,n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],a=arguments.length>4&&void 0!==arguments[4]&&arguments[4];Me.call(this,e,t,i,!1,n,a)}function Le(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",n=arguments.length>2?arguments[2]:void 0,a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],r=function r(){Ie(e,i,r,a,s);for(var o=arguments.length,l=new Array(o),c=0;c1&&void 0!==arguments[1]?arguments[1]:\"\",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if(G(e)&&!ae(t)){var a=new CustomEvent(t,{bubbles:i,detail:s(s({},n),{},{plyr:this})});e.dispatchEvent(a)}}function _e(){this&&this.eventListeners&&(this.eventListeners.forEach((function(e){var t=e.element,i=e.type,n=e.callback,a=e.options;t.removeEventListener(i,n,a)})),this.eventListeners=[])}function je(){var e=this;return new Promise((function(t){return e.ready?setTimeout(t,0):xe.call(e,e.elements.container,\"ready\",t)})).then((function(){}))}function De(e){ie(e)&&e.then(null,(function(){}))}function qe(e){return!!($(e)||Y(e)&&e.includes(\":\"))&&($(e)?e:e.split(\":\")).map(Number).every(K)}function He(e){if(!$(e)||!e.every(K))return null;var t=o(e,2),i=t[0],n=t[1],a=function e(t,i){return 0===i?t:e(i,t%i)}(i,n);return[i/a,n/a]}function Fe(e){var t=function(e){return qe(e)?e.split(\":\").map(Number):null},i=t(e);if(null===i&&(i=t(this.config.ratio)),null===i&&!ae(this.embed)&&$(this.embed.ratio)&&(i=this.embed.ratio),null===i&&this.isHTML5){var n=this.media;i=He([n.videoWidth,n.videoHeight])}return i}function Re(e){if(!this.isVideo)return{};var t=this.elements.wrapper,i=Fe.call(this,e),n=o($(i)?i:[0,0],2),a=100/n[0]*n[1];if(t.style.paddingBottom=\"\".concat(a,\"%\"),this.isVimeo&&!this.config.vimeo.premium&&this.supported.ui){var s=100/this.media.offsetWidth*parseInt(window.getComputedStyle(this.media).paddingBottom,10),r=(s-a)/(s/50);this.fullscreen.active?t.style.paddingBottom=null:this.media.style.transform=\"translateY(-\".concat(r,\"%)\")}else this.isHTML5&&t.classList.toggle(this.config.classNames.videoFixedRatio,null!==i);return{padding:a,ratio:i}}var Ve={getSources:function(){var e=this;return this.isHTML5?Array.from(this.media.querySelectorAll(\"source\")).filter((function(t){var i=t.getAttribute(\"type\");return!!ae(i)||Ee.mime.call(e,i)})):[]},getQualityOptions:function(){return this.config.quality.forced?this.config.quality.options:Ve.getSources.call(this).map((function(e){return Number(e.getAttribute(\"size\"))})).filter(Boolean)},setup:function(){if(this.isHTML5){var e=this;e.options.speed=e.config.speed.options,ae(this.config.ratio)||Re.call(e),Object.defineProperty(e.media,\"quality\",{get:function(){var t=Ve.getSources.call(e).find((function(t){return t.getAttribute(\"src\")===e.source}));return t&&Number(t.getAttribute(\"size\"))},set:function(t){if(e.quality!==t){if(e.config.quality.forced&&X(e.config.quality.onChange))e.config.quality.onChange(t);else{var i=Ve.getSources.call(e).find((function(e){return Number(e.getAttribute(\"size\"))===t}));if(!i)return;var n=e.media,a=n.currentTime,s=n.paused,r=n.preload,o=n.readyState,l=n.playbackRate;e.media.src=i.getAttribute(\"src\"),(\"none\"!==r||o)&&(e.once(\"loadedmetadata\",(function(){e.speed=l,e.currentTime=a,s||De(e.play())})),e.media.load())}Oe.call(e,e.media,\"qualitychange\",!1,{quality:t})}}})}},cancelRequests:function(){this.isHTML5&&(pe(Ve.getSources.call(this)),this.media.setAttribute(\"src\",this.config.blankVideo),this.media.load(),this.debug.log(\"Cancelled network requests\"))}};function Be(e){return $(e)?e.filter((function(t,i){return e.indexOf(t)===i})):e}function Ue(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),n=1;n0&&void 0!==arguments[0]?arguments[0]:\"\",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"\",i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:\"\";return e.replace(new RegExp(t.toString().replace(/([.*+?^=!:${}()|[\\]/\\\\])/g,\"\\\\$1\"),\"g\"),i.toString())},ze=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\";return e.toString().replace(/\\w\\S*/g,(function(e){return e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()}))};function Ke(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",t=e.toString();return t=We(t,\"-\",\" \"),t=We(t,\"_\",\" \"),t=ze(t),We(t,\" \",\"\")}function Ye(e){var t=document.createElement(\"div\");return t.appendChild(e),t.innerHTML}var Qe={pip:\"PIP\",airplay:\"AirPlay\",html5:\"HTML5\",vimeo:\"Vimeo\",youtube:\"YouTube\"},Xe=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(ae(e)||ae(t))return\"\";var i=le(t.i18n,e);if(ae(i))return Object.keys(Qe).includes(e)?Qe[e]:\"\";var n={\"{seektime}\":t.seekTime,\"{title}\":t.title};return Object.entries(n).forEach((function(e){var t=o(e,2),n=t[0],a=t[1];i=We(i,n,a)})),i},$e=function(){function t(i){e(this,t),this.enabled=i.config.storage.enabled,this.key=i.config.storage.key}return i(t,[{key:\"get\",value:function(e){if(!t.supported||!this.enabled)return null;var i=window.localStorage.getItem(this.key);if(ae(i))return null;var n=JSON.parse(i);return Y(e)&&e.length?n[e]:n}},{key:\"set\",value:function(e){if(t.supported&&this.enabled&&z(e)){var i=this.get();ae(i)&&(i={}),ce(i,e),window.localStorage.setItem(this.key,JSON.stringify(i))}}}],[{key:\"supported\",get:function(){try{if(!(\"localStorage\"in window))return!1;var e=\"___test\";return window.localStorage.setItem(e,e),window.localStorage.removeItem(e),!0}catch(e){return!1}}}]),t}();function Je(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"text\";return new Promise((function(i,n){try{var a=new XMLHttpRequest;if(!(\"withCredentials\"in a))return;a.addEventListener(\"load\",(function(){if(\"text\"===t)try{i(JSON.parse(a.responseText))}catch(e){i(a.responseText)}else i(a.response)})),a.addEventListener(\"error\",(function(){throw new Error(a.status)})),a.open(\"GET\",e,!0),a.responseType=t,a.send()}catch(e){n(e)}}))}function Ge(e,t){if(Y(e)){var i=\"cache\",n=Y(t),a=function(){return null!==document.getElementById(t)},s=function(e,t){e.innerHTML=t,n&&a()||document.body.insertAdjacentElement(\"afterbegin\",e)};if(!n||!a()){var r=$e.supported,o=document.createElement(\"div\");if(o.setAttribute(\"hidden\",\"\"),n&&o.setAttribute(\"id\",t),r){var l=window.localStorage.getItem(\"\".concat(i,\"-\").concat(t));if(null!==l){var c=JSON.parse(l);s(o,c.content)}}Je(e).then((function(e){ae(e)||(r&&window.localStorage.setItem(\"\".concat(i,\"-\").concat(t),JSON.stringify({content:e})),s(o,e))})).catch((function(){}))}}}var Ze=function(e){return Math.trunc(e/60/60%60,10)},et=function(e){return Math.trunc(e/60%60,10)},tt=function(e){return Math.trunc(e%60,10)};function it(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!K(e))return it(void 0,t,i);var n=function(e){return\"0\".concat(e).slice(-2)},a=Ze(e),s=et(e),r=tt(e);return a=t||a>0?\"\".concat(a,\":\"):\"\",\"\".concat(i&&e>0?\"-\":\"\").concat(a).concat(n(s),\":\").concat(n(r))}var nt={getIconUrl:function(){var e=new URL(this.config.iconUrl,window.location).host!==window.location.host||oe.isIE&&!window.svg4everybody;return{url:this.config.iconUrl,cors:e}},findElements:function(){try{return this.elements.controls=Ce.call(this,this.config.selectors.controls.wrapper),this.elements.buttons={play:Te.call(this,this.config.selectors.buttons.play),pause:Ce.call(this,this.config.selectors.buttons.pause),restart:Ce.call(this,this.config.selectors.buttons.restart),rewind:Ce.call(this,this.config.selectors.buttons.rewind),fastForward:Ce.call(this,this.config.selectors.buttons.fastForward),mute:Ce.call(this,this.config.selectors.buttons.mute),pip:Ce.call(this,this.config.selectors.buttons.pip),airplay:Ce.call(this,this.config.selectors.buttons.airplay),settings:Ce.call(this,this.config.selectors.buttons.settings),captions:Ce.call(this,this.config.selectors.buttons.captions),fullscreen:Ce.call(this,this.config.selectors.buttons.fullscreen)},this.elements.progress=Ce.call(this,this.config.selectors.progress),this.elements.inputs={seek:Ce.call(this,this.config.selectors.inputs.seek),volume:Ce.call(this,this.config.selectors.inputs.volume)},this.elements.display={buffer:Ce.call(this,this.config.selectors.display.buffer),currentTime:Ce.call(this,this.config.selectors.display.currentTime),duration:Ce.call(this,this.config.selectors.display.duration)},G(this.elements.progress)&&(this.elements.display.seekTooltip=this.elements.progress.querySelector(\".\".concat(this.config.classNames.tooltip))),!0}catch(e){return this.debug.warn(\"It looks like there is a problem with your custom controls HTML\",e),this.toggleNativeControls(!0),!1}},createIcon:function(e,t){var i=\"http://www.w3.org/2000/svg\",n=nt.getIconUrl.call(this),a=\"\".concat(n.cors?\"\":n.url,\"#\").concat(this.config.iconPrefix),s=document.createElementNS(i,\"svg\");de(s,ce(t,{\"aria-hidden\":\"true\",focusable:\"false\"}));var r=document.createElementNS(i,\"use\"),o=\"\".concat(a,\"-\").concat(e);return\"href\"in r&&r.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"href\",o),r.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",o),s.appendChild(r),s},createLabel:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=Xe(e,this.config),n=s(s({},t),{},{class:[t.class,this.config.classNames.hidden].filter(Boolean).join(\" \")});return he(\"span\",n,i)},createBadge:function(e){if(ae(e))return null;var t=he(\"span\",{class:this.config.classNames.menu.value});return t.appendChild(he(\"span\",{class:this.config.classNames.menu.badge},e)),t},createButton:function(e,t){var i=this,n=ce({},t),a=function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\").toString();return(e=Ke(e)).charAt(0).toLowerCase()+e.slice(1)}(e),s={element:\"button\",toggle:!1,label:null,icon:null,labelPressed:null,iconPressed:null};switch([\"element\",\"icon\",\"label\"].forEach((function(e){Object.keys(n).includes(e)&&(s[e]=n[e],delete n[e])})),\"button\"!==s.element||Object.keys(n).includes(\"type\")||(n.type=\"button\"),Object.keys(n).includes(\"class\")?n.class.split(\" \").some((function(e){return e===i.config.classNames.control}))||ce(n,{class:\"\".concat(n.class,\" \").concat(this.config.classNames.control)}):n.class=this.config.classNames.control,e){case\"play\":s.toggle=!0,s.label=\"play\",s.labelPressed=\"pause\",s.icon=\"play\",s.iconPressed=\"pause\";break;case\"mute\":s.toggle=!0,s.label=\"mute\",s.labelPressed=\"unmute\",s.icon=\"volume\",s.iconPressed=\"muted\";break;case\"captions\":s.toggle=!0,s.label=\"enableCaptions\",s.labelPressed=\"disableCaptions\",s.icon=\"captions-off\",s.iconPressed=\"captions-on\";break;case\"fullscreen\":s.toggle=!0,s.label=\"enterFullscreen\",s.labelPressed=\"exitFullscreen\",s.icon=\"enter-fullscreen\",s.iconPressed=\"exit-fullscreen\";break;case\"play-large\":n.class+=\" \".concat(this.config.classNames.control,\"--overlaid\"),a=\"play\",s.label=\"play\",s.icon=\"play\";break;default:ae(s.label)&&(s.label=a),ae(s.icon)&&(s.icon=e)}var r=he(s.element);return s.toggle?(r.appendChild(nt.createIcon.call(this,s.iconPressed,{class:\"icon--pressed\"})),r.appendChild(nt.createIcon.call(this,s.icon,{class:\"icon--not-pressed\"})),r.appendChild(nt.createLabel.call(this,s.labelPressed,{class:\"label--pressed\"})),r.appendChild(nt.createLabel.call(this,s.label,{class:\"label--not-pressed\"}))):(r.appendChild(nt.createIcon.call(this,s.icon)),r.appendChild(nt.createLabel.call(this,s.label))),ce(n,ye(this.config.selectors.buttons[a],n)),de(r,n),\"play\"===a?($(this.elements.buttons[a])||(this.elements.buttons[a]=[]),this.elements.buttons[a].push(r)):this.elements.buttons[a]=r,r},createRange:function(e,t){var i=he(\"input\",ce(ye(this.config.selectors.inputs[e]),{type:\"range\",min:0,max:100,step:.01,value:0,autocomplete:\"off\",role:\"slider\",\"aria-label\":Xe(e,this.config),\"aria-valuemin\":0,\"aria-valuemax\":100,\"aria-valuenow\":0},t));return this.elements.inputs[e]=i,nt.updateRangeFill.call(this,i),_.setup(i),i},createProgress:function(e,t){var i=he(\"progress\",ce(ye(this.config.selectors.display[e]),{min:0,max:100,value:0,role:\"progressbar\",\"aria-hidden\":!0},t));if(\"volume\"!==e){i.appendChild(he(\"span\",null,\"0\"));var n={played:\"played\",buffer:\"buffered\"}[e],a=n?Xe(n,this.config):\"\";i.innerText=\"% \".concat(a.toLowerCase())}return this.elements.display[e]=i,i},createTime:function(e,t){var i=ye(this.config.selectors.display[e],t),n=he(\"div\",ce(i,{class:\"\".concat(i.class?i.class:\"\",\" \").concat(this.config.classNames.display.time,\" \").trim(),\"aria-label\":Xe(e,this.config)}),\"00:00\");return this.elements.display[e]=n,n},bindMenuItemShortcuts:function(e,t){var i=this;xe.call(this,e,\"keydown keyup\",(function(n){if([32,38,39,40].includes(n.which)&&(n.preventDefault(),n.stopPropagation(),\"keydown\"!==n.type)){var a,s=ke(e,'[role=\"menuitemradio\"]');if(!s&&[32,39].includes(n.which))nt.showMenuPanel.call(i,t,!0);else 32!==n.which&&(40===n.which||s&&39===n.which?(a=e.nextElementSibling,G(a)||(a=e.parentNode.firstElementChild)):(a=e.previousElementSibling,G(a)||(a=e.parentNode.lastElementChild)),Ae.call(i,a,!0))}}),!1),xe.call(this,e,\"keyup\",(function(e){13===e.which&&nt.focusFirstMenuItem.call(i,null,!0)}))},createMenuItem:function(e){var t=this,i=e.value,n=e.list,a=e.type,s=e.title,r=e.badge,o=void 0===r?null:r,l=e.checked,c=void 0!==l&&l,u=ye(this.config.selectors.inputs[a]),d=he(\"button\",ce(u,{type:\"button\",role:\"menuitemradio\",class:\"\".concat(this.config.classNames.control,\" \").concat(u.class?u.class:\"\").trim(),\"aria-checked\":c,value:i})),h=he(\"span\");h.innerHTML=s,G(o)&&h.appendChild(o),d.appendChild(h),Object.defineProperty(d,\"checked\",{enumerable:!0,get:function(){return\"true\"===d.getAttribute(\"aria-checked\")},set:function(e){e&&Array.from(d.parentNode.children).filter((function(e){return ke(e,'[role=\"menuitemradio\"]')})).forEach((function(e){return e.setAttribute(\"aria-checked\",\"false\")})),d.setAttribute(\"aria-checked\",e?\"true\":\"false\")}}),this.listeners.bind(d,\"click keyup\",(function(e){if(!ee(e)||32===e.which){switch(e.preventDefault(),e.stopPropagation(),d.checked=!0,a){case\"language\":t.currentTrack=Number(i);break;case\"quality\":t.quality=i;break;case\"speed\":t.speed=parseFloat(i)}nt.showMenuPanel.call(t,\"home\",ee(e))}}),a,!1),nt.bindMenuItemShortcuts.call(this,d,a),n.appendChild(d)},formatTime:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!K(e))return e;var i=Ze(this.duration)>0;return it(e,i,t)},updateTimeDisplay:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];G(e)&&K(t)&&(e.innerText=nt.formatTime(t,i))},updateVolume:function(){this.supported.ui&&(G(this.elements.inputs.volume)&&nt.setRange.call(this,this.elements.inputs.volume,this.muted?0:this.volume),G(this.elements.buttons.mute)&&(this.elements.buttons.mute.pressed=this.muted||0===this.volume))},setRange:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;G(e)&&(e.value=t,nt.updateRangeFill.call(this,e))},updateProgress:function(e){var t=this;if(this.supported.ui&&Z(e)){var i,n,a=0;if(e)switch(e.type){case\"timeupdate\":case\"seeking\":case\"seeked\":i=this.currentTime,n=this.duration,a=0===i||0===n||Number.isNaN(i)||Number.isNaN(n)?0:(i/n*100).toFixed(2),\"timeupdate\"===e.type&&nt.setRange.call(this,this.elements.inputs.seek,a);break;case\"playing\":case\"progress\":!function(e,i){var n=K(i)?i:0,a=G(e)?e:t.elements.display.buffer;if(G(a)){a.value=n;var s=a.getElementsByTagName(\"span\")[0];G(s)&&(s.childNodes[0].nodeValue=n)}}(this.elements.display.buffer,100*this.buffered)}}},updateRangeFill:function(e){var t=Z(e)?e.target:e;if(G(t)&&\"range\"===t.getAttribute(\"type\")){if(ke(t,this.config.selectors.inputs.seek)){t.setAttribute(\"aria-valuenow\",this.currentTime);var i=nt.formatTime(this.currentTime),n=nt.formatTime(this.duration),a=Xe(\"seekLabel\",this.config);t.setAttribute(\"aria-valuetext\",a.replace(\"{currentTime}\",i).replace(\"{duration}\",n))}else if(ke(t,this.config.selectors.inputs.volume)){var s=100*t.value;t.setAttribute(\"aria-valuenow\",s),t.setAttribute(\"aria-valuetext\",\"\".concat(s.toFixed(1),\"%\"))}else t.setAttribute(\"aria-valuenow\",t.value);oe.isWebkit&&t.style.setProperty(\"--value\",\"\".concat(t.value/t.max*100,\"%\"))}},updateSeekTooltip:function(e){var t=this;if(this.config.tooltips.seek&&G(this.elements.inputs.seek)&&G(this.elements.display.seekTooltip)&&0!==this.duration){var i=\"\".concat(this.config.classNames.tooltip,\"--visible\"),n=function(e){return be(t.elements.display.seekTooltip,i,e)};if(this.touch)n(!1);else{var a=0,s=this.elements.progress.getBoundingClientRect();if(Z(e))a=100/s.width*(e.pageX-s.left);else{if(!we(this.elements.display.seekTooltip,i))return;a=parseFloat(this.elements.display.seekTooltip.style.left,10)}a<0?a=0:a>100&&(a=100),nt.updateTimeDisplay.call(this,this.elements.display.seekTooltip,this.duration/100*a),this.elements.display.seekTooltip.style.left=\"\".concat(a,\"%\"),Z(e)&&[\"mouseenter\",\"mouseleave\"].includes(e.type)&&n(\"mouseenter\"===e.type)}}},timeUpdate:function(e){var t=!G(this.elements.display.duration)&&this.config.invertTime;nt.updateTimeDisplay.call(this,this.elements.display.currentTime,t?this.duration-this.currentTime:this.currentTime,t),e&&\"timeupdate\"===e.type&&this.media.seeking||nt.updateProgress.call(this,e)},durationUpdate:function(){if(this.supported.ui&&(this.config.invertTime||!this.currentTime)){if(this.duration>=Math.pow(2,32))return ve(this.elements.display.currentTime,!0),void ve(this.elements.progress,!0);G(this.elements.inputs.seek)&&this.elements.inputs.seek.setAttribute(\"aria-valuemax\",this.duration);var e=G(this.elements.display.duration);!e&&this.config.displayDuration&&this.paused&&nt.updateTimeDisplay.call(this,this.elements.display.currentTime,this.duration),e&&nt.updateTimeDisplay.call(this,this.elements.display.duration,this.duration),nt.updateSeekTooltip.call(this)}},toggleMenuButton:function(e,t){ve(this.elements.settings.buttons[e],!t)},updateSetting:function(e,t,i){var n=this.elements.settings.panels[e],a=null,s=t;if(\"captions\"===e)a=this.currentTrack;else{if(a=ae(i)?this[e]:i,ae(a)&&(a=this.config[e].default),!ae(this.options[e])&&!this.options[e].includes(a))return void this.debug.warn(\"Unsupported value of '\".concat(a,\"' for \").concat(e));if(!this.config[e].options.includes(a))return void this.debug.warn(\"Disabled value of '\".concat(a,\"' for \").concat(e))}if(G(s)||(s=n&&n.querySelector('[role=\"menu\"]')),G(s)){this.elements.settings.buttons[e].querySelector(\".\".concat(this.config.classNames.menu.value)).innerHTML=nt.getLabel.call(this,e,a);var r=s&&s.querySelector('[value=\"'.concat(a,'\"]'));G(r)&&(r.checked=!0)}},getLabel:function(e,t){switch(e){case\"speed\":return 1===t?Xe(\"normal\",this.config):\"\".concat(t,\"×\");case\"quality\":if(K(t)){var i=Xe(\"qualityLabel.\".concat(t),this.config);return i.length?i:\"\".concat(t,\"p\")}return ze(t);case\"captions\":return rt.getLabel.call(this);default:return null}},setQualityMenu:function(e){var t=this;if(G(this.elements.settings.panels.quality)){var i=\"quality\",n=this.elements.settings.panels.quality.querySelector('[role=\"menu\"]');$(e)&&(this.options.quality=Be(e).filter((function(e){return t.config.quality.options.includes(e)})));var a=!ae(this.options.quality)&&this.options.quality.length>1;if(nt.toggleMenuButton.call(this,i,a),fe(n),nt.checkMenu.call(this),a){var s=function(e){var i=Xe(\"qualityBadge.\".concat(e),t.config);return i.length?nt.createBadge.call(t,i):null};this.options.quality.sort((function(e,i){var n=t.config.quality.options;return n.indexOf(e)>n.indexOf(i)?1:-1})).forEach((function(e){nt.createMenuItem.call(t,{value:e,list:n,type:i,title:nt.getLabel.call(t,\"quality\",e),badge:s(e)})})),nt.updateSetting.call(this,i,n)}}},setCaptionsMenu:function(){var e=this;if(G(this.elements.settings.panels.captions)){var t=\"captions\",i=this.elements.settings.panels.captions.querySelector('[role=\"menu\"]'),n=rt.getTracks.call(this),a=Boolean(n.length);if(nt.toggleMenuButton.call(this,t,a),fe(i),nt.checkMenu.call(this),a){var s=n.map((function(t,n){return{value:n,checked:e.captions.toggled&&e.currentTrack===n,title:rt.getLabel.call(e,t),badge:t.language&&nt.createBadge.call(e,t.language.toUpperCase()),list:i,type:\"language\"}}));s.unshift({value:-1,checked:!this.captions.toggled,title:Xe(\"disabled\",this.config),list:i,type:\"language\"}),s.forEach(nt.createMenuItem.bind(this)),nt.updateSetting.call(this,t,i)}}},setSpeedMenu:function(){var e=this;if(G(this.elements.settings.panels.speed)){var t=\"speed\",i=this.elements.settings.panels.speed.querySelector('[role=\"menu\"]');this.options.speed=this.options.speed.filter((function(t){return t>=e.minimumSpeed&&t<=e.maximumSpeed}));var n=!ae(this.options.speed)&&this.options.speed.length>1;nt.toggleMenuButton.call(this,t,n),fe(i),nt.checkMenu.call(this),n&&(this.options.speed.forEach((function(n){nt.createMenuItem.call(e,{value:n,list:i,type:t,title:nt.getLabel.call(e,\"speed\",n)})})),nt.updateSetting.call(this,t,i))}},checkMenu:function(){var e=this.elements.settings.buttons,t=!ae(e)&&Object.values(e).some((function(e){return!e.hidden}));ve(this.elements.settings.menu,!t)},focusFirstMenuItem:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!this.elements.settings.popup.hidden){var i=e;G(i)||(i=Object.values(this.elements.settings.panels).find((function(e){return!e.hidden})));var n=i.querySelector('[role^=\"menuitem\"]');Ae.call(this,n,t)}},toggleMenu:function(e){var t=this.elements.settings.popup,i=this.elements.buttons.settings;if(G(t)&&G(i)){var n=t.hidden,a=n;if(Q(e))a=e;else if(ee(e)&&27===e.which)a=!1;else if(Z(e)){var s=X(e.composedPath)?e.composedPath()[0]:e.target,r=t.contains(s);if(r||!r&&e.target!==i&&a)return}i.setAttribute(\"aria-expanded\",a),ve(t,!a),be(this.elements.container,this.config.classNames.menu.open,a),a&&ee(e)?nt.focusFirstMenuItem.call(this,null,!0):a||n||Ae.call(this,i,ee(e))}},getMenuSize:function(e){var t=e.cloneNode(!0);t.style.position=\"absolute\",t.style.opacity=0,t.removeAttribute(\"hidden\"),e.parentNode.appendChild(t);var i=t.scrollWidth,n=t.scrollHeight;return pe(t),{width:i,height:n}},showMenuPanel:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=this.elements.container.querySelector(\"#plyr-settings-\".concat(this.id,\"-\").concat(t));if(G(n)){var a=n.parentNode,s=Array.from(a.children).find((function(e){return!e.hidden}));if(Ee.transitions&&!Ee.reducedMotion){a.style.width=\"\".concat(s.scrollWidth,\"px\"),a.style.height=\"\".concat(s.scrollHeight,\"px\");var r=nt.getMenuSize.call(this,n),o=function t(i){i.target===a&&[\"width\",\"height\"].includes(i.propertyName)&&(a.style.width=\"\",a.style.height=\"\",Ie.call(e,a,se,t))};xe.call(this,a,se,o),a.style.width=\"\".concat(r.width,\"px\"),a.style.height=\"\".concat(r.height,\"px\")}ve(s,!0),ve(n,!1),nt.focusFirstMenuItem.call(this,n,i)}},setDownloadUrl:function(){var e=this.elements.buttons.download;G(e)&&e.setAttribute(\"href\",this.download)},create:function(e){var t=this,i=nt.bindMenuItemShortcuts,n=nt.createButton,a=nt.createProgress,s=nt.createRange,r=nt.createTime,o=nt.setQualityMenu,l=nt.setSpeedMenu,c=nt.showMenuPanel;this.elements.controls=null,$(this.config.controls)&&this.config.controls.includes(\"play-large\")&&this.elements.container.appendChild(n.call(this,\"play-large\"));var u=he(\"div\",ye(this.config.selectors.controls.wrapper));this.elements.controls=u;var d={class:\"plyr__controls__item\"};return Be($(this.config.controls)?this.config.controls:[]).forEach((function(o){if(\"restart\"===o&&u.appendChild(n.call(t,\"restart\",d)),\"rewind\"===o&&u.appendChild(n.call(t,\"rewind\",d)),\"play\"===o&&u.appendChild(n.call(t,\"play\",d)),\"fast-forward\"===o&&u.appendChild(n.call(t,\"fast-forward\",d)),\"progress\"===o){var l=he(\"div\",{class:\"\".concat(d.class,\" plyr__progress__container\")}),h=he(\"div\",ye(t.config.selectors.progress));if(h.appendChild(s.call(t,\"seek\",{id:\"plyr-seek-\".concat(e.id)})),h.appendChild(a.call(t,\"buffer\")),t.config.tooltips.seek){var m=he(\"span\",{class:t.config.classNames.tooltip},\"00:00\");h.appendChild(m),t.elements.display.seekTooltip=m}t.elements.progress=h,l.appendChild(t.elements.progress),u.appendChild(l)}if(\"current-time\"===o&&u.appendChild(r.call(t,\"currentTime\",d)),\"duration\"===o&&u.appendChild(r.call(t,\"duration\",d)),\"mute\"===o||\"volume\"===o){var p=t.elements.volume;if(G(p)&&u.contains(p)||(p=he(\"div\",ce({},d,{class:\"\".concat(d.class,\" plyr__volume\").trim()})),t.elements.volume=p,u.appendChild(p)),\"mute\"===o&&p.appendChild(n.call(t,\"mute\")),\"volume\"===o&&!oe.isIos){var f={max:1,step:.05,value:t.config.volume};p.appendChild(s.call(t,\"volume\",ce(f,{id:\"plyr-volume-\".concat(e.id)})))}}if(\"captions\"===o&&u.appendChild(n.call(t,\"captions\",d)),\"settings\"===o&&!ae(t.config.settings)){var g=he(\"div\",ce({},d,{class:\"\".concat(d.class,\" plyr__menu\").trim(),hidden:\"\"}));g.appendChild(n.call(t,\"settings\",{\"aria-haspopup\":!0,\"aria-controls\":\"plyr-settings-\".concat(e.id),\"aria-expanded\":!1}));var y=he(\"div\",{class:\"plyr__menu__container\",id:\"plyr-settings-\".concat(e.id),hidden:\"\"}),v=he(\"div\"),b=he(\"div\",{id:\"plyr-settings-\".concat(e.id,\"-home\")}),w=he(\"div\",{role:\"menu\"});b.appendChild(w),v.appendChild(b),t.elements.settings.panels.home=b,t.config.settings.forEach((function(n){var a=he(\"button\",ce(ye(t.config.selectors.buttons.settings),{type:\"button\",class:\"\".concat(t.config.classNames.control,\" \").concat(t.config.classNames.control,\"--forward\"),role:\"menuitem\",\"aria-haspopup\":!0,hidden:\"\"}));i.call(t,a,n),xe.call(t,a,\"click\",(function(){c.call(t,n,!1)}));var s=he(\"span\",null,Xe(n,t.config)),r=he(\"span\",{class:t.config.classNames.menu.value});r.innerHTML=e[n],s.appendChild(r),a.appendChild(s),w.appendChild(a);var o=he(\"div\",{id:\"plyr-settings-\".concat(e.id,\"-\").concat(n),hidden:\"\"}),l=he(\"button\",{type:\"button\",class:\"\".concat(t.config.classNames.control,\" \").concat(t.config.classNames.control,\"--back\")});l.appendChild(he(\"span\",{\"aria-hidden\":!0},Xe(n,t.config))),l.appendChild(he(\"span\",{class:t.config.classNames.hidden},Xe(\"menuBack\",t.config))),xe.call(t,o,\"keydown\",(function(e){37===e.which&&(e.preventDefault(),e.stopPropagation(),c.call(t,\"home\",!0))}),!1),xe.call(t,l,\"click\",(function(){c.call(t,\"home\",!1)})),o.appendChild(l),o.appendChild(he(\"div\",{role:\"menu\"})),v.appendChild(o),t.elements.settings.buttons[n]=a,t.elements.settings.panels[n]=o})),y.appendChild(v),g.appendChild(y),u.appendChild(g),t.elements.settings.popup=y,t.elements.settings.menu=g}if(\"pip\"===o&&Ee.pip&&u.appendChild(n.call(t,\"pip\",d)),\"airplay\"===o&&Ee.airplay&&u.appendChild(n.call(t,\"airplay\",d)),\"download\"===o){var k=ce({},d,{element:\"a\",href:t.download,target:\"_blank\"});t.isHTML5&&(k.download=\"\");var T=t.config.urls.download;!ne(T)&&t.isEmbed&&ce(k,{icon:\"logo-\".concat(t.provider),label:t.provider}),u.appendChild(n.call(t,\"download\",k))}\"fullscreen\"===o&&u.appendChild(n.call(t,\"fullscreen\",d))})),this.isHTML5&&o.call(this,Ve.getQualityOptions.call(this)),l.call(this),u},inject:function(){var e=this;if(this.config.loadSprite){var t=nt.getIconUrl.call(this);t.cors&&Ge(t.url,\"sprite-plyr\")}this.id=Math.floor(1e4*Math.random());var i=null;this.elements.controls=null;var n={id:this.id,seektime:this.config.seekTime,title:this.config.title},a=!0;X(this.config.controls)&&(this.config.controls=this.config.controls.call(this,n)),this.config.controls||(this.config.controls=[]),G(this.config.controls)||Y(this.config.controls)?i=this.config.controls:(i=nt.create.call(this,{id:this.id,seektime:this.config.seekTime,speed:this.speed,quality:this.quality,captions:rt.getLabel.call(this)}),a=!1);var s,r;if(a&&Y(this.config.controls)&&(s=i,Object.entries(n).forEach((function(e){var t=o(e,2),i=t[0],n=t[1];s=We(s,\"{\".concat(i,\"}\"),n)})),i=s),Y(this.config.selectors.controls.container)&&(r=document.querySelector(this.config.selectors.controls.container)),G(r)||(r=this.elements.container),r[G(i)?\"insertAdjacentElement\":\"insertAdjacentHTML\"](\"afterbegin\",i),G(this.elements.controls)||nt.findElements.call(this),!ae(this.elements.buttons)){var l=function(t){var i=e.config.classNames.controlPressed;Object.defineProperty(t,\"pressed\",{enumerable:!0,get:function(){return we(t,i)},set:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];be(t,i,e)}})};Object.values(this.elements.buttons).filter(Boolean).forEach((function(e){$(e)||J(e)?Array.from(e).filter(Boolean).forEach(l):l(e)}))}if(oe.isEdge&&re(r),this.config.tooltips.controls){var c=this.config,u=c.classNames,d=c.selectors,h=\"\".concat(d.controls.wrapper,\" \").concat(d.labels,\" .\").concat(u.hidden),m=Te.call(this,h);Array.from(m).forEach((function(t){be(t,e.config.classNames.hidden,!1),be(t,e.config.classNames.tooltip,!0)}))}}};function at(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=e;if(t){var n=document.createElement(\"a\");n.href=i,i=n.href}try{return new URL(i)}catch(e){return null}}function st(e){var t=new URLSearchParams;return z(e)&&Object.entries(e).forEach((function(e){var i=o(e,2),n=i[0],a=i[1];t.set(n,a)})),t}var rt={setup:function(){if(this.supported.ui)if(!this.isVideo||this.isYouTube||this.isHTML5&&!Ee.textTracks)$(this.config.controls)&&this.config.controls.includes(\"settings\")&&this.config.settings.includes(\"captions\")&&nt.setCaptionsMenu.call(this);else{if(G(this.elements.captions)||(this.elements.captions=he(\"div\",ye(this.config.selectors.captions)),function(e,t){G(e)&&G(t)&&t.parentNode.insertBefore(e,t.nextSibling)}(this.elements.captions,this.elements.wrapper)),oe.isIE&&window.URL){var e=this.media.querySelectorAll(\"track\");Array.from(e).forEach((function(e){var t=e.getAttribute(\"src\"),i=at(t);null!==i&&i.hostname!==window.location.href.hostname&&[\"http:\",\"https:\"].includes(i.protocol)&&Je(t,\"blob\").then((function(t){e.setAttribute(\"src\",window.URL.createObjectURL(t))})).catch((function(){pe(e)}))}))}var t=Be((navigator.languages||[navigator.language||navigator.userLanguage||\"en\"]).map((function(e){return e.split(\"-\")[0]}))),i=(this.storage.get(\"language\")||this.config.captions.language||\"auto\").toLowerCase();if(\"auto\"===i)i=o(t,1)[0];var n=this.storage.get(\"captions\");if(Q(n)||(n=this.config.captions.active),Object.assign(this.captions,{toggled:!1,active:n,language:i,languages:t}),this.isHTML5){var a=this.config.captions.update?\"addtrack removetrack\":\"removetrack\";xe.call(this,this.media.textTracks,a,rt.update.bind(this))}setTimeout(rt.update.bind(this),0)}},update:function(){var e=this,t=rt.getTracks.call(this,!0),i=this.captions,n=i.active,a=i.language,s=i.meta,r=i.currentTrackNode,o=Boolean(t.find((function(e){return e.language===a})));this.isHTML5&&this.isVideo&&t.filter((function(e){return!s.get(e)})).forEach((function(t){e.debug.log(\"Track added\",t),s.set(t,{default:\"showing\"===t.mode}),\"showing\"===t.mode&&(t.mode=\"hidden\"),xe.call(e,t,\"cuechange\",(function(){return rt.updateCues.call(e)}))})),(o&&this.language!==a||!t.includes(r))&&(rt.setLanguage.call(this,a),rt.toggle.call(this,n&&o)),be(this.elements.container,this.config.classNames.captions.enabled,!ae(t)),$(this.config.controls)&&this.config.controls.includes(\"settings\")&&this.config.settings.includes(\"captions\")&&nt.setCaptionsMenu.call(this)},toggle:function(e){var t=this,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(this.supported.ui){var n=this.captions.toggled,a=this.config.classNames.captions.active,s=W(e)?!n:e;if(s!==n){if(i||(this.captions.active=s,this.storage.set({captions:s})),!this.language&&s&&!i){var r=rt.getTracks.call(this),o=rt.findTrack.call(this,[this.captions.language].concat(l(this.captions.languages)),!0);return this.captions.language=o.language,void rt.set.call(this,r.indexOf(o))}this.elements.buttons.captions&&(this.elements.buttons.captions.pressed=s),be(this.elements.container,a,s),this.captions.toggled=s,nt.updateSetting.call(this,\"captions\"),Oe.call(this,this.media,s?\"captionsenabled\":\"captionsdisabled\")}setTimeout((function(){s&&t.captions.toggled&&(t.captions.currentTrackNode.mode=\"hidden\")}))}},set:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=rt.getTracks.call(this);if(-1!==e)if(K(e))if(e in i){if(this.captions.currentTrack!==e){this.captions.currentTrack=e;var n=i[e],a=n||{},s=a.language;this.captions.currentTrackNode=n,nt.updateSetting.call(this,\"captions\"),t||(this.captions.language=s,this.storage.set({language:s})),this.isVimeo&&this.embed.enableTextTrack(s),Oe.call(this,this.media,\"languagechange\")}rt.toggle.call(this,!0,t),this.isHTML5&&this.isVideo&&rt.updateCues.call(this)}else this.debug.warn(\"Track not found\",e);else this.debug.warn(\"Invalid caption argument\",e);else rt.toggle.call(this,!1,t)},setLanguage:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(Y(e)){var i=e.toLowerCase();this.captions.language=i;var n=rt.getTracks.call(this),a=rt.findTrack.call(this,[i]);rt.set.call(this,n.indexOf(a),t)}else this.debug.warn(\"Invalid language argument\",e)},getTracks:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=Array.from((this.media||{}).textTracks||[]);return i.filter((function(i){return!e.isHTML5||t||e.captions.meta.has(i)})).filter((function(e){return[\"captions\",\"subtitles\"].includes(e.kind)}))},findTrack:function(e){var t,i=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a=rt.getTracks.call(this),s=function(e){return Number((i.captions.meta.get(e)||{}).default)},r=Array.from(a).sort((function(e,t){return s(t)-s(e)}));return e.every((function(e){return!(t=r.find((function(t){return t.language===e})))})),t||(n?r[0]:void 0)},getCurrentTrack:function(){return rt.getTracks.call(this)[this.currentTrack]},getLabel:function(e){var t=e;return!te(t)&&Ee.textTracks&&this.captions.toggled&&(t=rt.getCurrentTrack.call(this)),te(t)?ae(t.label)?ae(t.language)?Xe(\"enabled\",this.config):e.language.toUpperCase():t.label:Xe(\"disabled\",this.config)},updateCues:function(e){if(this.supported.ui)if(G(this.elements.captions))if(W(e)||Array.isArray(e)){var t=e;if(!t){var i=rt.getCurrentTrack.call(this);t=Array.from((i||{}).activeCues||[]).map((function(e){return e.getCueAsHTML()})).map(Ye)}var n=t.map((function(e){return e.trim()})).join(\"\\n\");if(n!==this.elements.captions.innerHTML){fe(this.elements.captions);var a=he(\"span\",ye(this.config.selectors.caption));a.innerHTML=n,this.elements.captions.appendChild(a),Oe.call(this,this.media,\"cuechange\")}}else this.debug.warn(\"updateCues: Invalid input\",e);else this.debug.warn(\"No captions element to render to\")}},ot={enabled:!0,title:\"\",debug:!1,autoplay:!1,autopause:!0,playsinline:!0,seekTime:10,volume:1,muted:!1,duration:null,displayDuration:!0,invertTime:!0,toggleInvert:!0,ratio:null,clickToPlay:!0,hideControls:!0,resetOnEnd:!1,disableContextMenu:!0,loadSprite:!0,iconPrefix:\"plyr\",iconUrl:\"https://cdn.plyr.io/3.6.3/plyr.svg\",blankVideo:\"https://cdn.plyr.io/static/blank.mp4\",quality:{default:576,options:[4320,2880,2160,1440,1080,720,576,480,360,240],forced:!1,onChange:null},loop:{active:!1},speed:{selected:1,options:[.5,.75,1,1.25,1.5,1.75,2,4]},keyboard:{focused:!0,global:!1},tooltips:{controls:!1,seek:!0},captions:{active:!1,language:\"auto\",update:!1},fullscreen:{enabled:!0,fallback:!0,iosNative:!1},storage:{enabled:!0,key:\"plyr\"},controls:[\"play-large\",\"play\",\"progress\",\"current-time\",\"mute\",\"volume\",\"captions\",\"settings\",\"pip\",\"airplay\",\"fullscreen\"],settings:[\"captions\",\"quality\",\"speed\"],i18n:{restart:\"Restart\",rewind:\"Rewind {seektime}s\",play:\"Play\",pause:\"Pause\",fastForward:\"Forward {seektime}s\",seek:\"Seek\",seekLabel:\"{currentTime} of {duration}\",played:\"Played\",buffered:\"Buffered\",currentTime:\"Current time\",duration:\"Duration\",volume:\"Volume\",mute:\"Mute\",unmute:\"Unmute\",enableCaptions:\"Enable captions\",disableCaptions:\"Disable captions\",download:\"Download\",enterFullscreen:\"Enter fullscreen\",exitFullscreen:\"Exit fullscreen\",frameTitle:\"Player for {title}\",captions:\"Captions\",settings:\"Settings\",pip:\"PIP\",menuBack:\"Go back to previous menu\",speed:\"Speed\",normal:\"Normal\",quality:\"Quality\",loop:\"Loop\",start:\"Start\",end:\"End\",all:\"All\",reset:\"Reset\",disabled:\"Disabled\",enabled:\"Enabled\",advertisement:\"Ad\",qualityBadge:{2160:\"4K\",1440:\"HD\",1080:\"HD\",720:\"HD\",576:\"SD\",480:\"SD\"}},urls:{download:null,vimeo:{sdk:\"https://player.vimeo.com/api/player.js\",iframe:\"https://player.vimeo.com/video/{0}?{1}\",api:\"https://vimeo.com/api/oembed.json?url={0}\"},youtube:{sdk:\"https://www.youtube.com/iframe_api\",api:\"https://noembed.com/embed?url=https://www.youtube.com/watch?v={0}\"},googleIMA:{sdk:\"https://imasdk.googleapis.com/js/sdkloader/ima3.js\"}},listeners:{seek:null,play:null,pause:null,restart:null,rewind:null,fastForward:null,mute:null,volume:null,captions:null,download:null,fullscreen:null,pip:null,airplay:null,speed:null,quality:null,loop:null,language:null},events:[\"ended\",\"progress\",\"stalled\",\"playing\",\"waiting\",\"canplay\",\"canplaythrough\",\"loadstart\",\"loadeddata\",\"loadedmetadata\",\"timeupdate\",\"volumechange\",\"play\",\"pause\",\"error\",\"seeking\",\"seeked\",\"emptied\",\"ratechange\",\"cuechange\",\"download\",\"enterfullscreen\",\"exitfullscreen\",\"captionsenabled\",\"captionsdisabled\",\"languagechange\",\"controlshidden\",\"controlsshown\",\"ready\",\"statechange\",\"qualitychange\",\"adsloaded\",\"adscontentpause\",\"adscontentresume\",\"adstarted\",\"adsmidpoint\",\"adscomplete\",\"adsallcomplete\",\"adsimpression\",\"adsclick\"],selectors:{editable:\"input, textarea, select, [contenteditable]\",container:\".plyr\",controls:{container:null,wrapper:\".plyr__controls\"},labels:\"[data-plyr]\",buttons:{play:'[data-plyr=\"play\"]',pause:'[data-plyr=\"pause\"]',restart:'[data-plyr=\"restart\"]',rewind:'[data-plyr=\"rewind\"]',fastForward:'[data-plyr=\"fast-forward\"]',mute:'[data-plyr=\"mute\"]',captions:'[data-plyr=\"captions\"]',download:'[data-plyr=\"download\"]',fullscreen:'[data-plyr=\"fullscreen\"]',pip:'[data-plyr=\"pip\"]',airplay:'[data-plyr=\"airplay\"]',settings:'[data-plyr=\"settings\"]',loop:'[data-plyr=\"loop\"]'},inputs:{seek:'[data-plyr=\"seek\"]',volume:'[data-plyr=\"volume\"]',speed:'[data-plyr=\"speed\"]',language:'[data-plyr=\"language\"]',quality:'[data-plyr=\"quality\"]'},display:{currentTime:\".plyr__time--current\",duration:\".plyr__time--duration\",buffer:\".plyr__progress__buffer\",loop:\".plyr__progress__loop\",volume:\".plyr__volume--display\"},progress:\".plyr__progress\",captions:\".plyr__captions\",caption:\".plyr__caption\"},classNames:{type:\"plyr--{0}\",provider:\"plyr--{0}\",video:\"plyr__video-wrapper\",embed:\"plyr__video-embed\",videoFixedRatio:\"plyr__video-wrapper--fixed-ratio\",embedContainer:\"plyr__video-embed__container\",poster:\"plyr__poster\",posterEnabled:\"plyr__poster-enabled\",ads:\"plyr__ads\",control:\"plyr__control\",controlPressed:\"plyr__control--pressed\",playing:\"plyr--playing\",paused:\"plyr--paused\",stopped:\"plyr--stopped\",loading:\"plyr--loading\",hover:\"plyr--hover\",tooltip:\"plyr__tooltip\",cues:\"plyr__cues\",hidden:\"plyr__sr-only\",hideControls:\"plyr--hide-controls\",isIos:\"plyr--is-ios\",isTouch:\"plyr--is-touch\",uiSupported:\"plyr--full-ui\",noTransition:\"plyr--no-transition\",display:{time:\"plyr__time\"},menu:{value:\"plyr__menu__value\",badge:\"plyr__badge\",open:\"plyr--menu-open\"},captions:{enabled:\"plyr--captions-enabled\",active:\"plyr--captions-active\"},fullscreen:{enabled:\"plyr--fullscreen-enabled\",fallback:\"plyr--fullscreen-fallback\"},pip:{supported:\"plyr--pip-supported\",active:\"plyr--pip-active\"},airplay:{supported:\"plyr--airplay-supported\",active:\"plyr--airplay-active\"},tabFocus:\"plyr__tab-focus\",previewThumbnails:{thumbContainer:\"plyr__preview-thumb\",thumbContainerShown:\"plyr__preview-thumb--is-shown\",imageContainer:\"plyr__preview-thumb__image-container\",timeContainer:\"plyr__preview-thumb__time-container\",scrubbingContainer:\"plyr__preview-scrubbing\",scrubbingContainerShown:\"plyr__preview-scrubbing--is-shown\"}},attributes:{embed:{provider:\"data-plyr-provider\",id:\"data-plyr-embed-id\"}},ads:{enabled:!1,publisherId:\"\",tagUrl:\"\"},previewThumbnails:{enabled:!1,src:\"\"},vimeo:{byline:!1,portrait:!1,title:!1,speed:!0,transparent:!1,customControls:!0,referrerPolicy:null,premium:!1},youtube:{rel:0,showinfo:0,iv_load_policy:3,modestbranding:1,customControls:!0,noCookie:!1}},lt=\"picture-in-picture\",ct=\"inline\",ut={html5:\"html5\",youtube:\"youtube\",vimeo:\"vimeo\"},dt=\"audio\",ht=\"video\";var mt=function(){},pt=function(){function t(){var i=arguments.length>0&&void 0!==arguments[0]&&arguments[0];e(this,t),this.enabled=window.console&&i,this.enabled&&this.log(\"Debugging enabled\")}return i(t,[{key:\"log\",get:function(){return this.enabled?Function.prototype.bind.call(console.log,console):mt}},{key:\"warn\",get:function(){return this.enabled?Function.prototype.bind.call(console.warn,console):mt}},{key:\"error\",get:function(){return this.enabled?Function.prototype.bind.call(console.error,console):mt}}]),t}(),ft=function(){function t(i){var n=this;e(this,t),this.player=i,this.prefix=t.prefix,this.property=t.property,this.scrollPosition={x:0,y:0},this.forceFallback=\"force\"===i.config.fullscreen.fallback,this.player.elements.fullscreen=i.config.fullscreen.container&&function(e,t){return(Element.prototype.closest||function(){var e=this;do{if(ke.matches(e,t))return e;e=e.parentElement||e.parentNode}while(null!==e&&1===e.nodeType);return null}).call(e,t)}(this.player.elements.container,i.config.fullscreen.container),xe.call(this.player,document,\"ms\"===this.prefix?\"MSFullscreenChange\":\"\".concat(this.prefix,\"fullscreenchange\"),(function(){n.onChange()})),xe.call(this.player,this.player.elements.container,\"dblclick\",(function(e){G(n.player.elements.controls)&&n.player.elements.controls.contains(e.target)||n.player.listeners.proxy(e,n.toggle,\"fullscreen\")})),xe.call(this,this.player.elements.container,\"keydown\",(function(e){return n.trapFocus(e)})),this.update()}return i(t,[{key:\"onChange\",value:function(){if(this.enabled){var e=this.player.elements.buttons.fullscreen;G(e)&&(e.pressed=this.active);var t=this.target===this.player.media?this.target:this.player.elements.container;Oe.call(this.player,t,this.active?\"enterfullscreen\":\"exitfullscreen\",!0)}}},{key:\"toggleFallback\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(e?this.scrollPosition={x:window.scrollX||0,y:window.scrollY||0}:window.scrollTo(this.scrollPosition.x,this.scrollPosition.y),document.body.style.overflow=e?\"hidden\":\"\",be(this.target,this.player.config.classNames.fullscreen.fallback,e),oe.isIos){var t=document.head.querySelector('meta[name=\"viewport\"]'),i=\"viewport-fit=cover\";t||(t=document.createElement(\"meta\")).setAttribute(\"name\",\"viewport\");var n=Y(t.content)&&t.content.includes(i);e?(this.cleanupViewport=!n,n||(t.content+=\",\".concat(i))):this.cleanupViewport&&(t.content=t.content.split(\",\").filter((function(e){return e.trim()!==i})).join(\",\"))}this.onChange()}},{key:\"trapFocus\",value:function(e){if(!oe.isIos&&this.active&&\"Tab\"===e.key&&9===e.keyCode){var t=document.activeElement,i=Te.call(this.player,\"a[href], button:not(:disabled), input:not(:disabled), [tabindex]\"),n=o(i,1)[0],a=i[i.length-1];t!==a||e.shiftKey?t===n&&e.shiftKey&&(a.focus(),e.preventDefault()):(n.focus(),e.preventDefault())}}},{key:\"update\",value:function(){var e;this.enabled?(e=this.forceFallback?\"Fallback (forced)\":t.native?\"Native\":\"Fallback\",this.player.debug.log(\"\".concat(e,\" fullscreen enabled\"))):this.player.debug.log(\"Fullscreen not supported and fallback disabled\");be(this.player.elements.container,this.player.config.classNames.fullscreen.enabled,this.enabled)}},{key:\"enter\",value:function(){this.enabled&&(oe.isIos&&this.player.config.fullscreen.iosNative?this.target.webkitEnterFullscreen():!t.native||this.forceFallback?this.toggleFallback(!0):this.prefix?ae(this.prefix)||this.target[\"\".concat(this.prefix,\"Request\").concat(this.property)]():this.target.requestFullscreen({navigationUI:\"hide\"}))}},{key:\"exit\",value:function(){if(this.enabled)if(oe.isIos&&this.player.config.fullscreen.iosNative)this.target.webkitExitFullscreen(),De(this.player.play());else if(!t.native||this.forceFallback)this.toggleFallback(!1);else if(this.prefix){if(!ae(this.prefix)){var e=\"moz\"===this.prefix?\"Cancel\":\"Exit\";document[\"\".concat(this.prefix).concat(e).concat(this.property)]()}}else(document.cancelFullScreen||document.exitFullscreen).call(document)}},{key:\"toggle\",value:function(){this.active?this.exit():this.enter()}},{key:\"usingNative\",get:function(){return t.native&&!this.forceFallback}},{key:\"enabled\",get:function(){return(t.native||this.player.config.fullscreen.fallback)&&this.player.config.fullscreen.enabled&&this.player.supported.ui&&this.player.isVideo}},{key:\"active\",get:function(){if(!this.enabled)return!1;if(!t.native||this.forceFallback)return we(this.target,this.player.config.classNames.fullscreen.fallback);var e=this.prefix?document[\"\".concat(this.prefix).concat(this.property,\"Element\")]:document.fullscreenElement;return e&&e.shadowRoot?e===this.target.getRootNode().host:e===this.target}},{key:\"target\",get:function(){return oe.isIos&&this.player.config.fullscreen.iosNative?this.player.media:this.player.elements.fullscreen||this.player.elements.container}}],[{key:\"native\",get:function(){return!!(document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled||document.msFullscreenEnabled)}},{key:\"prefix\",get:function(){if(X(document.exitFullscreen))return\"\";var e=\"\";return[\"webkit\",\"moz\",\"ms\"].some((function(t){return!(!X(document[\"\".concat(t,\"ExitFullscreen\")])&&!X(document[\"\".concat(t,\"CancelFullScreen\")]))&&(e=t,!0)})),e}},{key:\"property\",get:function(){return\"moz\"===this.prefix?\"FullScreen\":\"Fullscreen\"}}]),t}();function gt(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return new Promise((function(i,n){var a=new Image,s=function(){delete a.onload,delete a.onerror,(a.naturalWidth>=t?i:n)(a)};Object.assign(a,{onload:s,onerror:s,src:e})}))}var yt={addStyleHook:function(){be(this.elements.container,this.config.selectors.container.replace(\".\",\"\"),!0),be(this.elements.container,this.config.classNames.uiSupported,this.supported.ui)},toggleNativeControls:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];e&&this.isHTML5?this.media.setAttribute(\"controls\",\"\"):this.media.removeAttribute(\"controls\")},build:function(){var e=this;if(this.listeners.media(),!this.supported.ui)return this.debug.warn(\"Basic support only for \".concat(this.provider,\" \").concat(this.type)),void yt.toggleNativeControls.call(this,!0);G(this.elements.controls)||(nt.inject.call(this),this.listeners.controls()),yt.toggleNativeControls.call(this),this.isHTML5&&rt.setup.call(this),this.volume=null,this.muted=null,this.loop=null,this.quality=null,this.speed=null,nt.updateVolume.call(this),nt.timeUpdate.call(this),yt.checkPlaying.call(this),be(this.elements.container,this.config.classNames.pip.supported,Ee.pip&&this.isHTML5&&this.isVideo),be(this.elements.container,this.config.classNames.airplay.supported,Ee.airplay&&this.isHTML5),be(this.elements.container,this.config.classNames.isIos,oe.isIos),be(this.elements.container,this.config.classNames.isTouch,this.touch),this.ready=!0,setTimeout((function(){Oe.call(e,e.media,\"ready\")}),0),yt.setTitle.call(this),this.poster&&yt.setPoster.call(this,this.poster,!1).catch((function(){})),this.config.duration&&nt.durationUpdate.call(this)},setTitle:function(){var e=Xe(\"play\",this.config);if(Y(this.config.title)&&!ae(this.config.title)&&(e+=\", \".concat(this.config.title)),Array.from(this.elements.buttons.play||[]).forEach((function(t){t.setAttribute(\"aria-label\",e)})),this.isEmbed){var t=Ce.call(this,\"iframe\");if(!G(t))return;var i=ae(this.config.title)?\"video\":this.config.title,n=Xe(\"frameTitle\",this.config);t.setAttribute(\"title\",n.replace(\"{title}\",i))}},togglePoster:function(e){be(this.elements.container,this.config.classNames.posterEnabled,e)},setPoster:function(e){var t=this,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return i&&this.poster?Promise.reject(new Error(\"Poster already set\")):(this.media.setAttribute(\"data-poster\",e),this.elements.poster.removeAttribute(\"hidden\"),je.call(this).then((function(){return gt(e)})).catch((function(i){throw e===t.poster&&yt.togglePoster.call(t,!1),i})).then((function(){if(e!==t.poster)throw new Error(\"setPoster cancelled by later call to setPoster\")})).then((function(){return Object.assign(t.elements.poster.style,{backgroundImage:\"url('\".concat(e,\"')\"),backgroundSize:\"\"}),yt.togglePoster.call(t,!0),e})))},checkPlaying:function(e){var t=this;be(this.elements.container,this.config.classNames.playing,this.playing),be(this.elements.container,this.config.classNames.paused,this.paused),be(this.elements.container,this.config.classNames.stopped,this.stopped),Array.from(this.elements.buttons.play||[]).forEach((function(e){Object.assign(e,{pressed:t.playing}),e.setAttribute(\"aria-label\",Xe(t.playing?\"pause\":\"play\",t.config))})),Z(e)&&\"timeupdate\"===e.type||yt.toggleControls.call(this)},checkLoading:function(e){var t=this;this.loading=[\"stalled\",\"waiting\"].includes(e.type),clearTimeout(this.timers.loading),this.timers.loading=setTimeout((function(){be(t.elements.container,t.config.classNames.loading,t.loading),yt.toggleControls.call(t)}),this.loading?250:0)},toggleControls:function(e){var t=this.elements.controls;if(t&&this.config.hideControls){var i=this.touch&&this.lastSeekTime+2e3>Date.now();this.toggleControls(Boolean(e||this.loading||this.paused||t.pressed||t.hover||i))}},migrateStyles:function(){var e=this;Object.values(s({},this.media.style)).filter((function(e){return!ae(e)&&Y(e)&&e.startsWith(\"--plyr\")})).forEach((function(t){e.elements.container.style.setProperty(t,e.media.style.getPropertyValue(t)),e.media.style.removeProperty(t)})),ae(this.media.style)&&this.media.removeAttribute(\"style\")}},vt=function(){function t(i){e(this,t),this.player=i,this.lastKey=null,this.focusTimer=null,this.lastKeyDown=null,this.handleKey=this.handleKey.bind(this),this.toggleMenu=this.toggleMenu.bind(this),this.setTabFocus=this.setTabFocus.bind(this),this.firstTouch=this.firstTouch.bind(this)}return i(t,[{key:\"handleKey\",value:function(e){var t=this.player,i=t.elements,n=e.keyCode?e.keyCode:e.which,a=\"keydown\"===e.type,s=a&&n===this.lastKey;if(!(e.altKey||e.ctrlKey||e.metaKey||e.shiftKey)&&K(n)){if(a){var r=document.activeElement;if(G(r)){var o=t.config.selectors.editable;if(r!==i.inputs.seek&&ke(r,o))return;if(32===e.which&&ke(r,'button, [role^=\"menuitem\"]'))return}switch([32,37,38,39,40,48,49,50,51,52,53,54,56,57,67,70,73,75,76,77,79].includes(n)&&(e.preventDefault(),e.stopPropagation()),n){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:s||(t.currentTime=t.duration/10*(n-48));break;case 32:case 75:s||De(t.togglePlay());break;case 38:t.increaseVolume(.1);break;case 40:t.decreaseVolume(.1);break;case 77:s||(t.muted=!t.muted);break;case 39:t.forward();break;case 37:t.rewind();break;case 70:t.fullscreen.toggle();break;case 67:s||t.toggleCaptions();break;case 76:t.loop=!t.loop}27===n&&!t.fullscreen.usingNative&&t.fullscreen.active&&t.fullscreen.toggle(),this.lastKey=n}else this.lastKey=null}}},{key:\"toggleMenu\",value:function(e){nt.toggleMenu.call(this.player,e)}},{key:\"firstTouch\",value:function(){var e=this.player,t=e.elements;e.touch=!0,be(t.container,e.config.classNames.isTouch,!0)}},{key:\"setTabFocus\",value:function(e){var t=this.player,i=t.elements;if(clearTimeout(this.focusTimer),\"keydown\"!==e.type||9===e.which){\"keydown\"===e.type&&(this.lastKeyDown=e.timeStamp);var n,a=e.timeStamp-this.lastKeyDown<=20;if(\"focus\"!==e.type||a)n=t.config.classNames.tabFocus,be(Te.call(t,\".\".concat(n)),n,!1),\"focusout\"!==e.type&&(this.focusTimer=setTimeout((function(){var e=document.activeElement;i.container.contains(e)&&be(document.activeElement,t.config.classNames.tabFocus,!0)}),10))}}},{key:\"global\",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=this.player;t.config.keyboard.global&&Me.call(t,window,\"keydown keyup\",this.handleKey,e,!1),Me.call(t,document.body,\"click\",this.toggleMenu,e),Le.call(t,document.body,\"touchstart\",this.firstTouch),Me.call(t,document.body,\"keydown focus blur focusout\",this.setTabFocus,e,!1,!0)}},{key:\"container\",value:function(){var e=this.player,t=e.config,i=e.elements,n=e.timers;!t.keyboard.global&&t.keyboard.focused&&xe.call(e,i.container,\"keydown keyup\",this.handleKey,!1),xe.call(e,i.container,\"mousemove mouseleave touchstart touchmove enterfullscreen exitfullscreen\",(function(t){var a=i.controls;a&&\"enterfullscreen\"===t.type&&(a.pressed=!1,a.hover=!1);var s=0;[\"touchstart\",\"touchmove\",\"mousemove\"].includes(t.type)&&(yt.toggleControls.call(e,!0),s=e.touch?3e3:2e3),clearTimeout(n.controls),n.controls=setTimeout((function(){return yt.toggleControls.call(e,!1)}),s)}));var a=function(t){if(!t)return Re.call(e);var n=i.container.getBoundingClientRect(),a=n.width,s=n.height;return Re.call(e,\"\".concat(a,\":\").concat(s))},s=function(){clearTimeout(n.resized),n.resized=setTimeout(a,50)};xe.call(e,i.container,\"enterfullscreen exitfullscreen\",(function(t){var n=e.fullscreen,r=n.target,l=n.usingNative;if(r===i.container&&(e.isEmbed||!ae(e.config.ratio))){var c=\"enterfullscreen\"===t.type,u=a(c);u.padding;!function(t,i,n){if(e.isVimeo&&!e.config.vimeo.premium){var a=e.elements.wrapper.firstChild,s=o(t,2)[1],r=o(Fe.call(e),2),l=r[0],c=r[1];a.style.maxWidth=n?\"\".concat(s/c*l,\"px\"):null,a.style.margin=n?\"0 auto\":null}}(u.ratio,0,c),c&&setTimeout((function(){return re(i.container)}),100),l||(c?xe.call(e,window,\"resize\",s):Ie.call(e,window,\"resize\",s))}}))}},{key:\"media\",value:function(){var e=this,t=this.player,i=t.elements;if(xe.call(t,t.media,\"timeupdate seeking seeked\",(function(e){return nt.timeUpdate.call(t,e)})),xe.call(t,t.media,\"durationchange loadeddata loadedmetadata\",(function(e){return nt.durationUpdate.call(t,e)})),xe.call(t,t.media,\"ended\",(function(){t.isHTML5&&t.isVideo&&t.config.resetOnEnd&&(t.restart(),t.pause())})),xe.call(t,t.media,\"progress playing seeking seeked\",(function(e){return nt.updateProgress.call(t,e)})),xe.call(t,t.media,\"volumechange\",(function(e){return nt.updateVolume.call(t,e)})),xe.call(t,t.media,\"playing play pause ended emptied timeupdate\",(function(e){return yt.checkPlaying.call(t,e)})),xe.call(t,t.media,\"waiting canplay seeked playing\",(function(e){return yt.checkLoading.call(t,e)})),t.supported.ui&&t.config.clickToPlay&&!t.isAudio){var n=Ce.call(t,\".\".concat(t.config.classNames.video));if(!G(n))return;xe.call(t,i.container,\"click\",(function(a){([i.container,n].includes(a.target)||n.contains(a.target))&&(t.touch&&t.config.hideControls||(t.ended?(e.proxy(a,t.restart,\"restart\"),e.proxy(a,(function(){De(t.play())}),\"play\")):e.proxy(a,(function(){De(t.togglePlay())}),\"play\")))}))}t.supported.ui&&t.config.disableContextMenu&&xe.call(t,i.wrapper,\"contextmenu\",(function(e){e.preventDefault()}),!1),xe.call(t,t.media,\"volumechange\",(function(){t.storage.set({volume:t.volume,muted:t.muted})})),xe.call(t,t.media,\"ratechange\",(function(){nt.updateSetting.call(t,\"speed\"),t.storage.set({speed:t.speed})})),xe.call(t,t.media,\"qualitychange\",(function(e){nt.updateSetting.call(t,\"quality\",null,e.detail.quality)})),xe.call(t,t.media,\"ready qualitychange\",(function(){nt.setDownloadUrl.call(t)}));var a=t.config.events.concat([\"keyup\",\"keydown\"]).join(\" \");xe.call(t,t.media,a,(function(e){var n=e.detail,a=void 0===n?{}:n;\"error\"===e.type&&(a=t.media.error),Oe.call(t,i.container,e.type,!0,a)}))}},{key:\"proxy\",value:function(e,t,i){var n=this.player,a=n.config.listeners[i],s=!0;X(a)&&(s=a.call(n,e)),!1!==s&&X(t)&&t.call(n,e)}},{key:\"bind\",value:function(e,t,i,n){var a=this,s=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],r=this.player,o=r.config.listeners[n],l=X(o);xe.call(r,e,t,(function(e){return a.proxy(e,i,n)}),s&&!l)}},{key:\"controls\",value:function(){var e=this,t=this.player,i=t.elements,n=oe.isIE?\"change\":\"input\";if(i.buttons.play&&Array.from(i.buttons.play).forEach((function(i){e.bind(i,\"click\",(function(){De(t.togglePlay())}),\"play\")})),this.bind(i.buttons.restart,\"click\",t.restart,\"restart\"),this.bind(i.buttons.rewind,\"click\",(function(){t.lastSeekTime=Date.now(),t.rewind()}),\"rewind\"),this.bind(i.buttons.fastForward,\"click\",(function(){t.lastSeekTime=Date.now(),t.forward()}),\"fastForward\"),this.bind(i.buttons.mute,\"click\",(function(){t.muted=!t.muted}),\"mute\"),this.bind(i.buttons.captions,\"click\",(function(){return t.toggleCaptions()})),this.bind(i.buttons.download,\"click\",(function(){Oe.call(t,t.media,\"download\")}),\"download\"),this.bind(i.buttons.fullscreen,\"click\",(function(){t.fullscreen.toggle()}),\"fullscreen\"),this.bind(i.buttons.pip,\"click\",(function(){t.pip=\"toggle\"}),\"pip\"),this.bind(i.buttons.airplay,\"click\",t.airplay,\"airplay\"),this.bind(i.buttons.settings,\"click\",(function(e){e.stopPropagation(),e.preventDefault(),nt.toggleMenu.call(t,e)}),null,!1),this.bind(i.buttons.settings,\"keyup\",(function(e){var i=e.which;[13,32].includes(i)&&(13!==i?(e.preventDefault(),e.stopPropagation(),nt.toggleMenu.call(t,e)):nt.focusFirstMenuItem.call(t,null,!0))}),null,!1),this.bind(i.settings.menu,\"keydown\",(function(e){27===e.which&&nt.toggleMenu.call(t,e)})),this.bind(i.inputs.seek,\"mousedown mousemove\",(function(e){var t=i.progress.getBoundingClientRect(),n=100/t.width*(e.pageX-t.left);e.currentTarget.setAttribute(\"seek-value\",n)})),this.bind(i.inputs.seek,\"mousedown mouseup keydown keyup touchstart touchend\",(function(e){var i=e.currentTarget,n=e.keyCode?e.keyCode:e.which,a=\"play-on-seeked\";if(!ee(e)||39===n||37===n){t.lastSeekTime=Date.now();var s=i.hasAttribute(a),r=[\"mouseup\",\"touchend\",\"keyup\"].includes(e.type);s&&r?(i.removeAttribute(a),De(t.play())):!r&&t.playing&&(i.setAttribute(a,\"\"),t.pause())}})),oe.isIos){var a=Te.call(t,'input[type=\"range\"]');Array.from(a).forEach((function(t){return e.bind(t,n,(function(e){return re(e.target)}))}))}this.bind(i.inputs.seek,n,(function(e){var i=e.currentTarget,n=i.getAttribute(\"seek-value\");ae(n)&&(n=i.value),i.removeAttribute(\"seek-value\"),t.currentTime=n/i.max*t.duration}),\"seek\"),this.bind(i.progress,\"mouseenter mouseleave mousemove\",(function(e){return nt.updateSeekTooltip.call(t,e)})),this.bind(i.progress,\"mousemove touchmove\",(function(e){var i=t.previewThumbnails;i&&i.loaded&&i.startMove(e)})),this.bind(i.progress,\"mouseleave touchend click\",(function(){var e=t.previewThumbnails;e&&e.loaded&&e.endMove(!1,!0)})),this.bind(i.progress,\"mousedown touchstart\",(function(e){var i=t.previewThumbnails;i&&i.loaded&&i.startScrubbing(e)})),this.bind(i.progress,\"mouseup touchend\",(function(e){var i=t.previewThumbnails;i&&i.loaded&&i.endScrubbing(e)})),oe.isWebkit&&Array.from(Te.call(t,'input[type=\"range\"]')).forEach((function(i){e.bind(i,\"input\",(function(e){return nt.updateRangeFill.call(t,e.target)}))})),t.config.toggleInvert&&!G(i.display.duration)&&this.bind(i.display.currentTime,\"click\",(function(){0!==t.currentTime&&(t.config.invertTime=!t.config.invertTime,nt.timeUpdate.call(t))})),this.bind(i.inputs.volume,n,(function(e){t.volume=e.target.value}),\"volume\"),this.bind(i.controls,\"mouseenter mouseleave\",(function(e){i.controls.hover=!t.touch&&\"mouseenter\"===e.type})),i.fullscreen&&Array.from(i.fullscreen.children).filter((function(e){return!e.contains(i.container)})).forEach((function(n){e.bind(n,\"mouseenter mouseleave\",(function(e){i.controls.hover=!t.touch&&\"mouseenter\"===e.type}))})),this.bind(i.controls,\"mousedown mouseup touchstart touchend touchcancel\",(function(e){i.controls.pressed=[\"mousedown\",\"touchstart\"].includes(e.type)})),this.bind(i.controls,\"focusin\",(function(){var n=t.config,a=t.timers;be(i.controls,n.classNames.noTransition,!0),yt.toggleControls.call(t,!0),setTimeout((function(){be(i.controls,n.classNames.noTransition,!1)}),0);var s=e.touch?3e3:4e3;clearTimeout(a.controls),a.controls=setTimeout((function(){return yt.toggleControls.call(t,!1)}),s)})),this.bind(i.inputs.volume,\"wheel\",(function(e){var i=e.webkitDirectionInvertedFromDevice,n=o([e.deltaX,-e.deltaY].map((function(e){return i?-e:e})),2),a=n[0],s=n[1],r=Math.sign(Math.abs(a)>Math.abs(s)?a:s);t.increaseVolume(r/50);var l=t.media.volume;(1===r&&l<1||-1===r&&l>0)&&e.preventDefault()}),\"volume\",!1)}}]),t}();\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self&&self;var bt=function(e,t){return e(t={exports:{}},t.exports),t.exports}((function(e,t){e.exports=function(){var e=function(){},t={},i={},n={};function a(e,t){e=e.push?e:[e];var a,s,r,o=[],l=e.length,c=l;for(a=function(e,i){i.length&&o.push(e),--c||t(o)};l--;)s=e[l],(r=i[s])?a(s,r):(n[s]=n[s]||[]).push(a)}function s(e,t){if(e){var a=n[e];if(i[e]=t,a)for(;a.length;)a[0](e,t),a.splice(0,1)}}function r(t,i){t.call&&(t={success:t}),i.length?(t.error||e)(i):(t.success||e)(t)}function o(t,i,n,a){var s,r,l=document,c=n.async,u=(n.numRetries||0)+1,d=n.before||e,h=t.replace(/[\\?|#].*$/,\"\"),m=t.replace(/^(css|img)!/,\"\");a=a||0,/(^css!|\\.css$)/.test(h)?((r=l.createElement(\"link\")).rel=\"stylesheet\",r.href=m,(s=\"hideFocus\"in r)&&r.relList&&(s=0,r.rel=\"preload\",r.as=\"style\")):/(^img!|\\.(png|gif|jpg|svg|webp)$)/.test(h)?(r=l.createElement(\"img\")).src=m:((r=l.createElement(\"script\")).src=t,r.async=void 0===c||c),r.onload=r.onerror=r.onbeforeload=function(e){var l=e.type[0];if(s)try{r.sheet.cssText.length||(l=\"e\")}catch(e){18!=e.code&&(l=\"e\")}if(\"e\"==l){if((a+=1)0&&void 0!==arguments[0]&&arguments[0];if(!t)return clearInterval(this.countdownTimer),void this.elements.container.removeAttribute(\"data-badge-text\");var i=function(){var t=it(Math.max(e.manager.getRemainingTime(),0)),i=\"\".concat(Xe(\"advertisement\",e.player.config),\" - \").concat(t);e.elements.container.setAttribute(\"data-badge-text\",i)};this.countdownTimer=setInterval(i,100)}},{key:\"onAdsManagerLoaded\",value:function(e){var t=this;if(this.enabled){var i=new google.ima.AdsRenderingSettings;i.restoreCustomPlaybackStateOnAdBreakComplete=!0,i.enablePreloading=!0,this.manager=e.getAdsManager(this.player,i),this.cuePoints=this.manager.getCuePoints(),this.manager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR,(function(e){return t.onAdError(e)})),Object.keys(google.ima.AdEvent.Type).forEach((function(e){t.manager.addEventListener(google.ima.AdEvent.Type[e],(function(e){return t.onAdEvent(e)}))})),this.trigger(\"loaded\")}}},{key:\"addCuePoints\",value:function(){var e=this;ae(this.cuePoints)||this.cuePoints.forEach((function(t){if(0!==t&&-1!==t&&t1?i-1:0),a=1;at.width/t.height?(i.width=t.width,i.height=1/e*t.width):(i.height=t.height,i.width=e*t.height),i},Mt=function(){function t(i){e(this,t),this.player=i,this.thumbnails=[],this.loaded=!1,this.lastMouseMoveTime=Date.now(),this.mouseDown=!1,this.loadedImages=[],this.elements={thumb:{},scrubbing:{}},this.load()}return i(t,[{key:\"load\",value:function(){var e=this;this.player.elements.display.seekTooltip&&(this.player.elements.display.seekTooltip.hidden=this.enabled),this.enabled&&this.getThumbnails().then((function(){e.enabled&&(e.render(),e.determineContainerAutoSizing(),e.loaded=!0)}))}},{key:\"getThumbnails\",value:function(){var e=this;return new Promise((function(t){var i=e.player.config.previewThumbnails.src;if(ae(i))throw new Error(\"Missing previewThumbnails.src config attribute\");var n=function(){e.thumbnails.sort((function(e,t){return e.height-t.height})),e.player.debug.log(\"Preview thumbnails\",e.thumbnails),t()};if(X(i))i((function(t){e.thumbnails=t,n()}));else{var a=(Y(i)?[i]:i).map((function(t){return e.getThumbnail(t)}));Promise.all(a).then(n)}}))}},{key:\"getThumbnail\",value:function(e){var t=this;return new Promise((function(i){Je(e).then((function(n){var a,s,r={frames:(a=n,s=[],a.split(/\\r\\n\\r\\n|\\n\\n|\\r\\r/).forEach((function(e){var t={};e.split(/\\r\\n|\\n|\\r/).forEach((function(e){if(K(t.startTime)){if(!ae(e.trim())&&ae(t.text)){var i=e.trim().split(\"#xywh=\"),n=o(i,1);if(t.text=n[0],i[1]){var a=o(i[1].split(\",\"),4);t.x=a[0],t.y=a[1],t.w=a[2],t.h=a[3]}}}else{var s=e.match(/([0-9]{2})?:?([0-9]{2}):([0-9]{2}).([0-9]{2,3})( ?--> ?)([0-9]{2})?:?([0-9]{2}):([0-9]{2}).([0-9]{2,3})/);s&&(t.startTime=60*Number(s[1]||0)*60+60*Number(s[2])+Number(s[3])+Number(\"0.\".concat(s[4])),t.endTime=60*Number(s[6]||0)*60+60*Number(s[7])+Number(s[8])+Number(\"0.\".concat(s[9])))}})),t.text&&s.push(t)})),s),height:null,urlPrefix:\"\"};r.frames[0].text.startsWith(\"/\")||r.frames[0].text.startsWith(\"http://\")||r.frames[0].text.startsWith(\"https://\")||(r.urlPrefix=e.substring(0,e.lastIndexOf(\"/\")+1));var l=new Image;l.onload=function(){r.height=l.naturalHeight,r.width=l.naturalWidth,t.thumbnails.push(r),i()},l.src=r.urlPrefix+r.frames[0].text}))}))}},{key:\"startMove\",value:function(e){if(this.loaded&&Z(e)&&[\"touchmove\",\"mousemove\"].includes(e.type)&&this.player.media.duration){if(\"touchmove\"===e.type)this.seekTime=this.player.media.duration*(this.player.elements.inputs.seek.value/100);else{var t=this.player.elements.progress.getBoundingClientRect(),i=100/t.width*(e.pageX-t.left);this.seekTime=this.player.media.duration*(i/100),this.seekTime<0&&(this.seekTime=0),this.seekTime>this.player.media.duration-1&&(this.seekTime=this.player.media.duration-1),this.mousePosX=e.pageX,this.elements.thumb.time.innerText=it(this.seekTime)}this.showImageAtCurrentTime()}}},{key:\"endMove\",value:function(){this.toggleThumbContainer(!1,!0)}},{key:\"startScrubbing\",value:function(e){(W(e.button)||!1===e.button||0===e.button)&&(this.mouseDown=!0,this.player.media.duration&&(this.toggleScrubbingContainer(!0),this.toggleThumbContainer(!1,!0),this.showImageAtCurrentTime()))}},{key:\"endScrubbing\",value:function(){var e=this;this.mouseDown=!1,Math.ceil(this.lastTime)===Math.ceil(this.player.media.currentTime)?this.toggleScrubbingContainer(!1):Le.call(this.player,this.player.media,\"timeupdate\",(function(){e.mouseDown||e.toggleScrubbingContainer(!1)}))}},{key:\"listeners\",value:function(){var e=this;this.player.on(\"play\",(function(){e.toggleThumbContainer(!1,!0)})),this.player.on(\"seeked\",(function(){e.toggleThumbContainer(!1)})),this.player.on(\"timeupdate\",(function(){e.lastTime=e.player.media.currentTime}))}},{key:\"render\",value:function(){this.elements.thumb.container=he(\"div\",{class:this.player.config.classNames.previewThumbnails.thumbContainer}),this.elements.thumb.imageContainer=he(\"div\",{class:this.player.config.classNames.previewThumbnails.imageContainer}),this.elements.thumb.container.appendChild(this.elements.thumb.imageContainer);var e=he(\"div\",{class:this.player.config.classNames.previewThumbnails.timeContainer});this.elements.thumb.time=he(\"span\",{},\"00:00\"),e.appendChild(this.elements.thumb.time),this.elements.thumb.container.appendChild(e),G(this.player.elements.progress)&&this.player.elements.progress.appendChild(this.elements.thumb.container),this.elements.scrubbing.container=he(\"div\",{class:this.player.config.classNames.previewThumbnails.scrubbingContainer}),this.player.elements.wrapper.appendChild(this.elements.scrubbing.container)}},{key:\"destroy\",value:function(){this.elements.thumb.container&&this.elements.thumb.container.remove(),this.elements.scrubbing.container&&this.elements.scrubbing.container.remove()}},{key:\"showImageAtCurrentTime\",value:function(){var e=this;this.mouseDown?this.setScrubbingContainerSize():this.setThumbContainerSizeAndPos();var t=this.thumbnails[0].frames.findIndex((function(t){return e.seekTime>=t.startTime&&e.seekTime<=t.endTime})),i=t>=0,n=0;this.mouseDown||this.toggleThumbContainer(i),i&&(this.thumbnails.forEach((function(i,a){e.loadedImages.includes(i.frames[t].text)&&(n=a)})),t!==this.showingThumb&&(this.showingThumb=t,this.loadImage(n)))}},{key:\"loadImage\",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=this.showingThumb,n=this.thumbnails[t],a=n.urlPrefix,s=n.frames[i],r=n.frames[i].text,o=a+r;if(this.currentImageElement&&this.currentImageElement.dataset.filename===r)this.showImage(this.currentImageElement,s,t,i,r,!1),this.currentImageElement.dataset.index=i,this.removeOldImages(this.currentImageElement);else{this.loadingImage&&this.usingSprites&&(this.loadingImage.onload=null);var l=new Image;l.src=o,l.dataset.index=i,l.dataset.filename=r,this.showingThumbFilename=r,this.player.debug.log(\"Loading image: \".concat(o)),l.onload=function(){return e.showImage(l,s,t,i,r,!0)},this.loadingImage=l,this.removeOldImages(l)}}},{key:\"showImage\",value:function(e,t,i,n,a){var s=!(arguments.length>5&&void 0!==arguments[5])||arguments[5];this.player.debug.log(\"Showing thumb: \".concat(a,\". num: \").concat(n,\". qual: \").concat(i,\". newimg: \").concat(s)),this.setImageSizeAndOffset(e,t),s&&(this.currentImageContainer.appendChild(e),this.currentImageElement=e,this.loadedImages.includes(a)||this.loadedImages.push(a)),this.preloadNearby(n,!0).then(this.preloadNearby(n,!1)).then(this.getHigherQuality(i,e,t,a))}},{key:\"removeOldImages\",value:function(e){var t=this;Array.from(this.currentImageContainer.children).forEach((function(i){if(\"img\"===i.tagName.toLowerCase()){var n=t.usingSprites?500:1e3;if(i.dataset.index!==e.dataset.index&&!i.dataset.deleting){i.dataset.deleting=!0;var a=t.currentImageContainer;setTimeout((function(){a.removeChild(i),t.player.debug.log(\"Removing thumb: \".concat(i.dataset.filename))}),n)}}}))}},{key:\"preloadNearby\",value:function(e){var t=this,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return new Promise((function(n){setTimeout((function(){var a=t.thumbnails[0].frames[e].text;if(t.showingThumbFilename===a){var s;s=i?t.thumbnails[0].frames.slice(e):t.thumbnails[0].frames.slice(0,e).reverse();var r=!1;s.forEach((function(e){var i=e.text;if(i!==a&&!t.loadedImages.includes(i)){r=!0,t.player.debug.log(\"Preloading thumb filename: \".concat(i));var s=t.thumbnails[0].urlPrefix+i,o=new Image;o.src=s,o.onload=function(){t.player.debug.log(\"Preloaded thumb filename: \".concat(i)),t.loadedImages.includes(i)||t.loadedImages.push(i),n()}}})),r||n()}}),300)}))}},{key:\"getHigherQuality\",value:function(e,t,i,n){var a=this;if(e0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=this.player.config.classNames.previewThumbnails.thumbContainerShown;this.elements.thumb.container.classList.toggle(i,e),!e&&t&&(this.showingThumb=null,this.showingThumbFilename=null)}},{key:\"toggleScrubbingContainer\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.player.config.classNames.previewThumbnails.scrubbingContainerShown;this.elements.scrubbing.container.classList.toggle(t,e),e||(this.showingThumb=null,this.showingThumbFilename=null)}},{key:\"determineContainerAutoSizing\",value:function(){(this.elements.thumb.imageContainer.clientHeight>20||this.elements.thumb.imageContainer.clientWidth>20)&&(this.sizeSpecifiedInCSS=!0)}},{key:\"setThumbContainerSizeAndPos\",value:function(){if(this.sizeSpecifiedInCSS){if(this.elements.thumb.imageContainer.clientHeight>20&&this.elements.thumb.imageContainer.clientWidth<20){var e=Math.floor(this.elements.thumb.imageContainer.clientHeight*this.thumbAspectRatio);this.elements.thumb.imageContainer.style.width=\"\".concat(e,\"px\")}else if(this.elements.thumb.imageContainer.clientHeight<20&&this.elements.thumb.imageContainer.clientWidth>20){var t=Math.floor(this.elements.thumb.imageContainer.clientWidth/this.thumbAspectRatio);this.elements.thumb.imageContainer.style.height=\"\".concat(t,\"px\")}}else{var i=Math.floor(this.thumbContainerHeight*this.thumbAspectRatio);this.elements.thumb.imageContainer.style.height=\"\".concat(this.thumbContainerHeight,\"px\"),this.elements.thumb.imageContainer.style.width=\"\".concat(i,\"px\")}this.setThumbContainerPos()}},{key:\"setThumbContainerPos\",value:function(){var e=this.player.elements.progress.getBoundingClientRect(),t=this.player.elements.container.getBoundingClientRect(),i=this.elements.thumb.container,n=t.left-e.left+10,a=t.right-e.left-i.clientWidth-10,s=this.mousePosX-e.left-i.clientWidth/2;sa&&(s=a),i.style.left=\"\".concat(s,\"px\")}},{key:\"setScrubbingContainerSize\",value:function(){var e=Nt(this.thumbAspectRatio,{width:this.player.media.clientWidth,height:this.player.media.clientHeight}),t=e.width,i=e.height;this.elements.scrubbing.container.style.width=\"\".concat(t,\"px\"),this.elements.scrubbing.container.style.height=\"\".concat(i,\"px\")}},{key:\"setImageSizeAndOffset\",value:function(e,t){if(this.usingSprites){var i=this.thumbContainerHeight/t.h;e.style.height=\"\".concat(e.naturalHeight*i,\"px\"),e.style.width=\"\".concat(e.naturalWidth*i,\"px\"),e.style.left=\"-\".concat(t.x*i,\"px\"),e.style.top=\"-\".concat(t.y*i,\"px\")}}},{key:\"enabled\",get:function(){return this.player.isHTML5&&this.player.isVideo&&this.player.config.previewThumbnails.enabled}},{key:\"currentImageContainer\",get:function(){return this.mouseDown?this.elements.scrubbing.container:this.elements.thumb.imageContainer}},{key:\"usingSprites\",get:function(){return Object.keys(this.thumbnails[0].frames[0]).includes(\"w\")}},{key:\"thumbAspectRatio\",get:function(){return this.usingSprites?this.thumbnails[0].frames[0].w/this.thumbnails[0].frames[0].h:this.thumbnails[0].width/this.thumbnails[0].height}},{key:\"thumbContainerHeight\",get:function(){return this.mouseDown?Nt(this.thumbAspectRatio,{width:this.player.media.clientWidth,height:this.player.media.clientHeight}).height:this.sizeSpecifiedInCSS?this.elements.thumb.imageContainer.clientHeight:Math.floor(this.player.media.clientWidth/this.thumbAspectRatio/4)}},{key:\"currentImageElement\",get:function(){return this.mouseDown?this.currentScrubbingImageElement:this.currentThumbnailImageElement},set:function(e){this.mouseDown?this.currentScrubbingImageElement=e:this.currentThumbnailImageElement=e}}]),t}(),xt={insertElements:function(e,t){var i=this;Y(t)?me(e,this.media,{src:t}):$(t)&&t.forEach((function(t){me(e,i.media,t)}))},change:function(e){var t=this;le(e,\"sources.length\")?(Ve.cancelRequests.call(this),this.destroy.call(this,(function(){t.options.quality=[],pe(t.media),t.media=null,G(t.elements.container)&&t.elements.container.removeAttribute(\"class\");var i=e.sources,n=e.type,a=o(i,1)[0],s=a.provider,r=void 0===s?ut.html5:s,l=a.src,c=\"html5\"===r?n:\"div\",u=\"html5\"===r?{}:{src:l};Object.assign(t,{provider:r,type:n,supported:Ee.check(n,r,t.config.playsinline),media:he(c,u)}),t.elements.container.appendChild(t.media),Q(e.autoplay)&&(t.config.autoplay=e.autoplay),t.isHTML5&&(t.config.crossorigin&&t.media.setAttribute(\"crossorigin\",\"\"),t.config.autoplay&&t.media.setAttribute(\"autoplay\",\"\"),ae(e.poster)||(t.poster=e.poster),t.config.loop.active&&t.media.setAttribute(\"loop\",\"\"),t.config.muted&&t.media.setAttribute(\"muted\",\"\"),t.config.playsinline&&t.media.setAttribute(\"playsinline\",\"\")),yt.addStyleHook.call(t),t.isHTML5&&xt.insertElements.call(t,\"source\",i),t.config.title=e.title,Pt.setup.call(t),t.isHTML5&&Object.keys(e).includes(\"tracks\")&&xt.insertElements.call(t,\"track\",e.tracks),(t.isHTML5||t.isEmbed&&!t.supported.ui)&&yt.build.call(t),t.isHTML5&&t.media.load(),ae(e.previewThumbnails)||(Object.assign(t.config.previewThumbnails,e.previewThumbnails),t.previewThumbnails&&t.previewThumbnails.loaded&&(t.previewThumbnails.destroy(),t.previewThumbnails=null),t.config.previewThumbnails.enabled&&(t.previewThumbnails=new Mt(t))),t.fullscreen.update()}),!0)):this.debug.warn(\"Invalid source format\")}};var It,Lt=function(){function t(i,n){var a=this;if(e(this,t),this.timers={},this.ready=!1,this.loading=!1,this.failed=!1,this.touch=Ee.touch,this.media=i,Y(this.media)&&(this.media=document.querySelectorAll(this.media)),(window.jQuery&&this.media instanceof jQuery||J(this.media)||$(this.media))&&(this.media=this.media[0]),this.config=ce({},ot,t.defaults,n||{},function(){try{return JSON.parse(a.media.getAttribute(\"data-plyr-config\"))}catch(e){return{}}}()),this.elements={container:null,fullscreen:null,captions:null,buttons:{},display:{},progress:{},inputs:{},settings:{popup:null,menu:null,panels:{},buttons:{}}},this.captions={active:null,currentTrack:-1,meta:new WeakMap},this.fullscreen={active:!1},this.options={speed:[],quality:[]},this.debug=new pt(this.config.debug),this.debug.log(\"Config\",this.config),this.debug.log(\"Support\",Ee),!W(this.media)&&G(this.media))if(this.media.plyr)this.debug.warn(\"Target already setup\");else if(this.config.enabled)if(Ee.check().api){var s=this.media.cloneNode(!0);s.autoplay=!1,this.elements.original=s;var r=this.media.tagName.toLowerCase(),o=null,l=null;switch(r){case\"div\":if(o=this.media.querySelector(\"iframe\"),G(o)){if(l=at(o.getAttribute(\"src\")),this.provider=function(e){return/^(https?:\\/\\/)?(www\\.)?(youtube\\.com|youtube-nocookie\\.com|youtu\\.?be)\\/.+$/.test(e)?ut.youtube:/^https?:\\/\\/player.vimeo.com\\/video\\/\\d{0,9}(?=\\b|\\/)/.test(e)?ut.vimeo:null}(l.toString()),this.elements.container=this.media,this.media=o,this.elements.container.className=\"\",l.search.length){var c=[\"1\",\"true\"];c.includes(l.searchParams.get(\"autoplay\"))&&(this.config.autoplay=!0),c.includes(l.searchParams.get(\"loop\"))&&(this.config.loop.active=!0),this.isYouTube?(this.config.playsinline=c.includes(l.searchParams.get(\"playsinline\")),this.config.youtube.hl=l.searchParams.get(\"hl\")):this.config.playsinline=!0}}else this.provider=this.media.getAttribute(this.config.attributes.embed.provider),this.media.removeAttribute(this.config.attributes.embed.provider);if(ae(this.provider)||!Object.keys(ut).includes(this.provider))return void this.debug.error(\"Setup failed: Invalid provider\");this.type=ht;break;case\"video\":case\"audio\":this.type=r,this.provider=ut.html5,this.media.hasAttribute(\"crossorigin\")&&(this.config.crossorigin=!0),this.media.hasAttribute(\"autoplay\")&&(this.config.autoplay=!0),(this.media.hasAttribute(\"playsinline\")||this.media.hasAttribute(\"webkit-playsinline\"))&&(this.config.playsinline=!0),this.media.hasAttribute(\"muted\")&&(this.config.muted=!0),this.media.hasAttribute(\"loop\")&&(this.config.loop.active=!0);break;default:return void this.debug.error(\"Setup failed: unsupported type\")}this.supported=Ee.check(this.type,this.provider,this.config.playsinline),this.supported.api?(this.eventListeners=[],this.listeners=new vt(this),this.storage=new $e(this),this.media.plyr=this,G(this.elements.container)||(this.elements.container=he(\"div\",{tabindex:0}),ue(this.media,this.elements.container)),yt.migrateStyles.call(this),yt.addStyleHook.call(this),Pt.setup.call(this),this.config.debug&&xe.call(this,this.elements.container,this.config.events.join(\" \"),(function(e){a.debug.log(\"event: \".concat(e.type))})),this.fullscreen=new ft(this),(this.isHTML5||this.isEmbed&&!this.supported.ui)&&yt.build.call(this),this.listeners.container(),this.listeners.global(),this.config.ads.enabled&&(this.ads=new Et(this)),this.isHTML5&&this.config.autoplay&&this.once(\"canplay\",(function(){return De(a.play())})),this.lastSeekTime=0,this.config.previewThumbnails.enabled&&(this.previewThumbnails=new Mt(this))):this.debug.error(\"Setup failed: no support\")}else this.debug.error(\"Setup failed: no support\");else this.debug.error(\"Setup failed: disabled by config\");else this.debug.error(\"Setup failed: no suitable element passed\")}return i(t,[{key:\"play\",value:function(){var e=this;return X(this.media.play)?(this.ads&&this.ads.enabled&&this.ads.managerPromise.then((function(){return e.ads.play()})).catch((function(){return De(e.media.play())})),this.media.play()):null}},{key:\"pause\",value:function(){return this.playing&&X(this.media.pause)?this.media.pause():null}},{key:\"togglePlay\",value:function(e){return(Q(e)?e:!this.playing)?this.play():this.pause()}},{key:\"stop\",value:function(){this.isHTML5?(this.pause(),this.restart()):X(this.media.stop)&&this.media.stop()}},{key:\"restart\",value:function(){this.currentTime=0}},{key:\"rewind\",value:function(e){this.currentTime-=K(e)?e:this.config.seekTime}},{key:\"forward\",value:function(e){this.currentTime+=K(e)?e:this.config.seekTime}},{key:\"increaseVolume\",value:function(e){var t=this.media.muted?0:this.volume;this.volume=t+(K(e)?e:0)}},{key:\"decreaseVolume\",value:function(e){this.increaseVolume(-e)}},{key:\"toggleCaptions\",value:function(e){rt.toggle.call(this,e,!1)}},{key:\"airplay\",value:function(){Ee.airplay&&this.media.webkitShowPlaybackTargetPicker()}},{key:\"toggleControls\",value:function(e){if(this.supported.ui&&!this.isAudio){var t=we(this.elements.container,this.config.classNames.hideControls),i=void 0===e?void 0:!e,n=be(this.elements.container,this.config.classNames.hideControls,i);if(n&&$(this.config.controls)&&this.config.controls.includes(\"settings\")&&!ae(this.config.settings)&&nt.toggleMenu.call(this,!1),n!==t){var a=n?\"controlshidden\":\"controlsshown\";Oe.call(this,this.media,a)}return!n}return!1}},{key:\"on\",value:function(e,t){xe.call(this,this.elements.container,e,t)}},{key:\"once\",value:function(e,t){Le.call(this,this.elements.container,e,t)}},{key:\"off\",value:function(e,t){Ie(this.elements.container,e,t)}},{key:\"destroy\",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(this.ready){var n=function(){document.body.style.overflow=\"\",t.embed=null,i?(Object.keys(t.elements).length&&(pe(t.elements.buttons.play),pe(t.elements.captions),pe(t.elements.controls),pe(t.elements.wrapper),t.elements.buttons.play=null,t.elements.captions=null,t.elements.controls=null,t.elements.wrapper=null),X(e)&&e()):(_e.call(t),Ve.cancelRequests.call(t),ge(t.elements.original,t.elements.container),Oe.call(t,t.elements.original,\"destroyed\",!0),X(e)&&e.call(t.elements.original),t.ready=!1,setTimeout((function(){t.elements=null,t.media=null}),200))};this.stop(),clearTimeout(this.timers.loading),clearTimeout(this.timers.controls),clearTimeout(this.timers.resized),this.isHTML5?(yt.toggleNativeControls.call(this,!0),n()):this.isYouTube?(clearInterval(this.timers.buffering),clearInterval(this.timers.playing),null!==this.embed&&X(this.embed.destroy)&&this.embed.destroy(),n()):this.isVimeo&&(null!==this.embed&&this.embed.unload().then(n),setTimeout(n,200))}}},{key:\"supports\",value:function(e){return Ee.mime.call(this,e)}},{key:\"isHTML5\",get:function(){return this.provider===ut.html5}},{key:\"isEmbed\",get:function(){return this.isYouTube||this.isVimeo}},{key:\"isYouTube\",get:function(){return this.provider===ut.youtube}},{key:\"isVimeo\",get:function(){return this.provider===ut.vimeo}},{key:\"isVideo\",get:function(){return this.type===ht}},{key:\"isAudio\",get:function(){return this.type===dt}},{key:\"playing\",get:function(){return Boolean(this.ready&&!this.paused&&!this.ended)}},{key:\"paused\",get:function(){return Boolean(this.media.paused)}},{key:\"stopped\",get:function(){return Boolean(this.paused&&0===this.currentTime)}},{key:\"ended\",get:function(){return Boolean(this.media.ended)}},{key:\"currentTime\",set:function(e){if(this.duration){var t=K(e)&&e>0;this.media.currentTime=t?Math.min(e,this.duration):0,this.debug.log(\"Seeking to \".concat(this.currentTime,\" seconds\"))}},get:function(){return Number(this.media.currentTime)}},{key:\"buffered\",get:function(){var e=this.media.buffered;return K(e)?e:e&&e.length&&this.duration>0?e.end(0)/this.duration:0}},{key:\"seeking\",get:function(){return Boolean(this.media.seeking)}},{key:\"duration\",get:function(){var e=parseFloat(this.config.duration),t=(this.media||{}).duration,i=K(t)&&t!==1/0?t:0;return e||i}},{key:\"volume\",set:function(e){var t=e;Y(t)&&(t=Number(t)),K(t)||(t=this.storage.get(\"volume\")),K(t)||(t=this.config.volume),t>1&&(t=1),t<0&&(t=0),this.config.volume=t,this.media.volume=t,!ae(e)&&this.muted&&t>0&&(this.muted=!1)},get:function(){return Number(this.media.volume)}},{key:\"muted\",set:function(e){var t=e;Q(t)||(t=this.storage.get(\"muted\")),Q(t)||(t=this.config.muted),this.config.muted=t,this.media.muted=t},get:function(){return Boolean(this.media.muted)}},{key:\"hasAudio\",get:function(){return!this.isHTML5||(!!this.isAudio||(Boolean(this.media.mozHasAudio)||Boolean(this.media.webkitAudioDecodedByteCount)||Boolean(this.media.audioTracks&&this.media.audioTracks.length)))}},{key:\"speed\",set:function(e){var t=this,i=null;K(e)&&(i=e),K(i)||(i=this.storage.get(\"speed\")),K(i)||(i=this.config.speed.selected);var n=this.minimumSpeed,a=this.maximumSpeed;i=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:255;return Math.min(Math.max(e,t),i)}(i,n,a),this.config.speed.selected=i,setTimeout((function(){t.media.playbackRate=i}),0)},get:function(){return Number(this.media.playbackRate)}},{key:\"minimumSpeed\",get:function(){return this.isYouTube?Math.min.apply(Math,l(this.options.speed)):this.isVimeo?.5:.0625}},{key:\"maximumSpeed\",get:function(){return this.isYouTube?Math.max.apply(Math,l(this.options.speed)):this.isVimeo?2:16}},{key:\"quality\",set:function(e){var t=this.config.quality,i=this.options.quality;if(i.length){var n=[!ae(e)&&Number(e),this.storage.get(\"quality\"),t.selected,t.default].find(K),a=!0;if(!i.includes(n)){var s=function(e,t){return $(e)&&e.length?e.reduce((function(e,i){return Math.abs(i-t)1&&void 0!==arguments[1]?arguments[1]:{},n=null;return Y(e)?n=Array.from(document.querySelectorAll(e)):J(e)?n=Array.from(e):$(e)&&(n=e.filter(G)),ae(n)?null:n.map((function(e){return new t(e,i)}))}}]),t}();return Lt.defaults=(It=ot,JSON.parse(JSON.stringify(It))),Lt}));\n//# sourceMappingURL=plyr.min.js.map\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DocumentDetails.vue?vue&type=style&index=0&id=5a346790&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"request-new-permission-container\"},[(_vm.isVisible)?_c('vs-button',{staticClass:\"px-2 py-1\",attrs:{\"color\":\"warning\",\"type\":\"filled\"},on:{\"click\":function($event){return _vm.openRequestNewPermissionDialog(_vm.result)}}},[_vm._v(_vm._s(_vm.label))]):_vm._e(),_c('vs-prompt',{attrs:{\"active\":_vm.activePrompt,\"title\":\"Solicitar alteração de permissão\",\"accept-text\":\"Solicitar\",\"cancel-text\":\"Cancelar\"},on:{\"update:active\":function($event){_vm.activePrompt=$event},\"accept\":_vm.requestNewPermission}},[_c('div',{on:{\"click\":_vm.closeSelects}},[_c('vs-select',{staticClass:\"mr-4\",attrs:{\"label\":\"Nível de Acesso\"},model:{value:(_vm.selectedAccessLevel),callback:function ($$v) {_vm.selectedAccessLevel=$$v},expression:\"selectedAccessLevel\"}},_vm._l((_vm.accessLevels),function(item,index){return _c('vs-select-item',{key:index,attrs:{\"value\":item.value,\"text\":item.text}})}),1),_c('vs-select',{ref:\"usersSelect\",staticClass:\"mr-4\",attrs:{\"placeholder\":\"Selecione os usuários\",\"multiple\":\"\",\"label\":\"Usuários\",\"disabled\":!_vm.showSelectUsers},model:{value:(_vm.selectedUsers),callback:function ($$v) {_vm.selectedUsers=$$v},expression:\"selectedUsers\"}},_vm._l((_vm.usersOptions),function(item,index){return _c('vs-select-item',{key:index,attrs:{\"value\":item.value,\"text\":item.text}})}),1)],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DdRequestNewPermission.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DdRequestNewPermission.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DdRequestNewPermission.vue?vue&type=template&id=0e818187&\"\nimport script from \"./DdRequestNewPermission.vue?vue&type=script&lang=js&\"\nexport * from \"./DdRequestNewPermission.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t(require(\"swiper/dist/js/swiper.js\")):\"function\"==typeof define&&define.amd?define(\"VueAwesomeSwiper\",[\"swiper\"],t):\"object\"==typeof exports?exports.VueAwesomeSwiper=t(require(\"swiper/dist/js/swiper.js\")):e.VueAwesomeSwiper=t(e.Swiper)}(this,function(e){return function(e){function t(i){if(n[i])return n[i].exports;var s=n[i]={i:i,l:!1,exports:{}};return e[i].call(s.exports,s,s.exports,t),s.l=!0,s.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,i){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:i})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,\"a\",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p=\"/\",t(t.s=4)}([function(t,n){t.exports=e},function(e,t){e.exports=function(e,t,n,i,s,r){var o,a=e=e||{},u=typeof e.default;\"object\"!==u&&\"function\"!==u||(o=e,a=e.default);var p=\"function\"==typeof a?a.options:a;t&&(p.render=t.render,p.staticRenderFns=t.staticRenderFns,p._compiled=!0),n&&(p.functional=!0),s&&(p._scopeId=s);var l;if(r?(l=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(r)},p._ssrRegister=l):i&&(l=i),l){var c=p.functional,d=c?p.render:p.beforeCreate;c?(p._injectStyles=l,p.render=function(e,t){return l.call(t),d(e,t)}):p.beforeCreate=d?[].concat(d,l):[l]}return{esModule:o,exports:a,options:p}}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(5),s=n.n(i),r=n(8),o=n(1),a=o(s.a,r.a,!1,null,null,null);t.default=a.exports},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(6),s=n.n(i),r=n(7),o=n(1),a=o(s.a,r.a,!1,null,null,null);t.default=a.exports},function(e,t,n){\"use strict\";function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,\"__esModule\",{value:!0}),t.install=t.swiperSlide=t.swiper=t.Swiper=void 0;var s=n(0),r=i(s),o=n(2),a=i(o),u=n(3),p=i(u),l=window.Swiper||r.default,c=p.default,d=a.default,f=function(e,t){t&&(p.default.props.globalOptions.default=function(){return t}),e.component(p.default.name,p.default),e.component(a.default.name,a.default)},h={Swiper:l,swiper:c,swiperSlide:d,install:f};t.default=h,t.Swiper=l,t.swiper=c,t.swiperSlide=d,t.install=f},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.default={name:\"swiper-slide\",data:function(){return{slideClass:\"swiper-slide\"}},ready:function(){this.update()},mounted:function(){this.update(),this.$parent&&this.$parent.options&&this.$parent.options.slideClass&&(this.slideClass=this.$parent.options.slideClass)},updated:function(){this.update()},attached:function(){this.update()},methods:{update:function(){this.$parent&&this.$parent.swiper&&this.$parent.update()}}}},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var i=n(0),s=function(e){return e&&e.__esModule?e:{default:e}}(i),r=window.Swiper||s.default;\"function\"!=typeof Object.assign&&Object.defineProperty(Object,\"assign\",{value:function(e,t){if(null==e)throw new TypeError(\"Cannot convert undefined or null to object\");for(var n=Object(e),i=1;i= 0 && html.indexOf('>') >= 0) {\n var toCreate = 'div';\n if (html.indexOf(':~]/)) {\n // Pure ID selector\n els = [doc.getElementById(selector.trim().split('#')[1])];\n } else {\n // Other selectors\n els = (context || doc).querySelectorAll(selector.trim());\n }\n for (i = 0; i < els.length; i += 1) {\n if (els[i]) { arr.push(els[i]); }\n }\n }\n } else if (selector.nodeType || selector === win || selector === doc) {\n // Node/element\n arr.push(selector);\n } else if (selector.length > 0 && selector[0].nodeType) {\n // Array of elements or instance of Dom\n for (i = 0; i < selector.length; i += 1) {\n arr.push(selector[i]);\n }\n }\n }\n return new Dom7(arr);\n }\n\n $.fn = Dom7.prototype;\n $.Class = Dom7;\n $.Dom7 = Dom7;\n\n function unique(arr) {\n var uniqueArray = [];\n for (var i = 0; i < arr.length; i += 1) {\n if (uniqueArray.indexOf(arr[i]) === -1) { uniqueArray.push(arr[i]); }\n }\n return uniqueArray;\n }\n\n // Classes and attributes\n function addClass(className) {\n if (typeof className === 'undefined') {\n return this;\n }\n var classes = className.split(' ');\n for (var i = 0; i < classes.length; i += 1) {\n for (var j = 0; j < this.length; j += 1) {\n if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') { this[j].classList.add(classes[i]); }\n }\n }\n return this;\n }\n function removeClass(className) {\n var classes = className.split(' ');\n for (var i = 0; i < classes.length; i += 1) {\n for (var j = 0; j < this.length; j += 1) {\n if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') { this[j].classList.remove(classes[i]); }\n }\n }\n return this;\n }\n function hasClass(className) {\n if (!this[0]) { return false; }\n return this[0].classList.contains(className);\n }\n function toggleClass(className) {\n var classes = className.split(' ');\n for (var i = 0; i < classes.length; i += 1) {\n for (var j = 0; j < this.length; j += 1) {\n if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') { this[j].classList.toggle(classes[i]); }\n }\n }\n return this;\n }\n function attr(attrs, value) {\n var arguments$1 = arguments;\n\n if (arguments.length === 1 && typeof attrs === 'string') {\n // Get attr\n if (this[0]) { return this[0].getAttribute(attrs); }\n return undefined;\n }\n\n // Set attrs\n for (var i = 0; i < this.length; i += 1) {\n if (arguments$1.length === 2) {\n // String\n this[i].setAttribute(attrs, value);\n } else {\n // Object\n // eslint-disable-next-line\n for (var attrName in attrs) {\n this[i][attrName] = attrs[attrName];\n this[i].setAttribute(attrName, attrs[attrName]);\n }\n }\n }\n return this;\n }\n // eslint-disable-next-line\n function removeAttr(attr) {\n for (var i = 0; i < this.length; i += 1) {\n this[i].removeAttribute(attr);\n }\n return this;\n }\n function data(key, value) {\n var el;\n if (typeof value === 'undefined') {\n el = this[0];\n // Get value\n if (el) {\n if (el.dom7ElementDataStorage && (key in el.dom7ElementDataStorage)) {\n return el.dom7ElementDataStorage[key];\n }\n\n var dataKey = el.getAttribute((\"data-\" + key));\n if (dataKey) {\n return dataKey;\n }\n return undefined;\n }\n return undefined;\n }\n\n // Set value\n for (var i = 0; i < this.length; i += 1) {\n el = this[i];\n if (!el.dom7ElementDataStorage) { el.dom7ElementDataStorage = {}; }\n el.dom7ElementDataStorage[key] = value;\n }\n return this;\n }\n // Transforms\n // eslint-disable-next-line\n function transform(transform) {\n for (var i = 0; i < this.length; i += 1) {\n var elStyle = this[i].style;\n elStyle.webkitTransform = transform;\n elStyle.transform = transform;\n }\n return this;\n }\n function transition(duration) {\n if (typeof duration !== 'string') {\n duration = duration + \"ms\"; // eslint-disable-line\n }\n for (var i = 0; i < this.length; i += 1) {\n var elStyle = this[i].style;\n elStyle.webkitTransitionDuration = duration;\n elStyle.transitionDuration = duration;\n }\n return this;\n }\n // Events\n function on() {\n var assign;\n\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n var eventType = args[0];\n var targetSelector = args[1];\n var listener = args[2];\n var capture = args[3];\n if (typeof args[1] === 'function') {\n (assign = args, eventType = assign[0], listener = assign[1], capture = assign[2]);\n targetSelector = undefined;\n }\n if (!capture) { capture = false; }\n\n function handleLiveEvent(e) {\n var target = e.target;\n if (!target) { return; }\n var eventData = e.target.dom7EventData || [];\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n if ($(target).is(targetSelector)) { listener.apply(target, eventData); }\n else {\n var parents = $(target).parents(); // eslint-disable-line\n for (var k = 0; k < parents.length; k += 1) {\n if ($(parents[k]).is(targetSelector)) { listener.apply(parents[k], eventData); }\n }\n }\n }\n function handleEvent(e) {\n var eventData = e && e.target ? e.target.dom7EventData || [] : [];\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n listener.apply(this, eventData);\n }\n var events = eventType.split(' ');\n var j;\n for (var i = 0; i < this.length; i += 1) {\n var el = this[i];\n if (!targetSelector) {\n for (j = 0; j < events.length; j += 1) {\n var event = events[j];\n if (!el.dom7Listeners) { el.dom7Listeners = {}; }\n if (!el.dom7Listeners[event]) { el.dom7Listeners[event] = []; }\n el.dom7Listeners[event].push({\n listener: listener,\n proxyListener: handleEvent,\n });\n el.addEventListener(event, handleEvent, capture);\n }\n } else {\n // Live events\n for (j = 0; j < events.length; j += 1) {\n var event$1 = events[j];\n if (!el.dom7LiveListeners) { el.dom7LiveListeners = {}; }\n if (!el.dom7LiveListeners[event$1]) { el.dom7LiveListeners[event$1] = []; }\n el.dom7LiveListeners[event$1].push({\n listener: listener,\n proxyListener: handleLiveEvent,\n });\n el.addEventListener(event$1, handleLiveEvent, capture);\n }\n }\n }\n return this;\n }\n function off() {\n var assign;\n\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n var eventType = args[0];\n var targetSelector = args[1];\n var listener = args[2];\n var capture = args[3];\n if (typeof args[1] === 'function') {\n (assign = args, eventType = assign[0], listener = assign[1], capture = assign[2]);\n targetSelector = undefined;\n }\n if (!capture) { capture = false; }\n\n var events = eventType.split(' ');\n for (var i = 0; i < events.length; i += 1) {\n var event = events[i];\n for (var j = 0; j < this.length; j += 1) {\n var el = this[j];\n var handlers = (void 0);\n if (!targetSelector && el.dom7Listeners) {\n handlers = el.dom7Listeners[event];\n } else if (targetSelector && el.dom7LiveListeners) {\n handlers = el.dom7LiveListeners[event];\n }\n if (handlers && handlers.length) {\n for (var k = handlers.length - 1; k >= 0; k -= 1) {\n var handler = handlers[k];\n if (listener && handler.listener === listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (listener && handler.listener && handler.listener.dom7proxy && handler.listener.dom7proxy === listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (!listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n }\n }\n }\n }\n }\n return this;\n }\n function trigger() {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var events = args[0].split(' ');\n var eventData = args[1];\n for (var i = 0; i < events.length; i += 1) {\n var event = events[i];\n for (var j = 0; j < this.length; j += 1) {\n var el = this[j];\n var evt = (void 0);\n try {\n evt = new win.CustomEvent(event, {\n detail: eventData,\n bubbles: true,\n cancelable: true,\n });\n } catch (e) {\n evt = doc.createEvent('Event');\n evt.initEvent(event, true, true);\n evt.detail = eventData;\n }\n // eslint-disable-next-line\n el.dom7EventData = args.filter(function (data, dataIndex) { return dataIndex > 0; });\n el.dispatchEvent(evt);\n el.dom7EventData = [];\n delete el.dom7EventData;\n }\n }\n return this;\n }\n function transitionEnd(callback) {\n var events = ['webkitTransitionEnd', 'transitionend'];\n var dom = this;\n var i;\n function fireCallBack(e) {\n /* jshint validthis:true */\n if (e.target !== this) { return; }\n callback.call(this, e);\n for (i = 0; i < events.length; i += 1) {\n dom.off(events[i], fireCallBack);\n }\n }\n if (callback) {\n for (i = 0; i < events.length; i += 1) {\n dom.on(events[i], fireCallBack);\n }\n }\n return this;\n }\n function outerWidth(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n // eslint-disable-next-line\n var styles = this.styles();\n return this[0].offsetWidth + parseFloat(styles.getPropertyValue('margin-right')) + parseFloat(styles.getPropertyValue('margin-left'));\n }\n return this[0].offsetWidth;\n }\n return null;\n }\n function outerHeight(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n // eslint-disable-next-line\n var styles = this.styles();\n return this[0].offsetHeight + parseFloat(styles.getPropertyValue('margin-top')) + parseFloat(styles.getPropertyValue('margin-bottom'));\n }\n return this[0].offsetHeight;\n }\n return null;\n }\n function offset() {\n if (this.length > 0) {\n var el = this[0];\n var box = el.getBoundingClientRect();\n var body = doc.body;\n var clientTop = el.clientTop || body.clientTop || 0;\n var clientLeft = el.clientLeft || body.clientLeft || 0;\n var scrollTop = el === win ? win.scrollY : el.scrollTop;\n var scrollLeft = el === win ? win.scrollX : el.scrollLeft;\n return {\n top: (box.top + scrollTop) - clientTop,\n left: (box.left + scrollLeft) - clientLeft,\n };\n }\n\n return null;\n }\n function styles() {\n if (this[0]) { return win.getComputedStyle(this[0], null); }\n return {};\n }\n function css(props, value) {\n var i;\n if (arguments.length === 1) {\n if (typeof props === 'string') {\n if (this[0]) { return win.getComputedStyle(this[0], null).getPropertyValue(props); }\n } else {\n for (i = 0; i < this.length; i += 1) {\n // eslint-disable-next-line\n for (var prop in props) {\n this[i].style[prop] = props[prop];\n }\n }\n return this;\n }\n }\n if (arguments.length === 2 && typeof props === 'string') {\n for (i = 0; i < this.length; i += 1) {\n this[i].style[props] = value;\n }\n return this;\n }\n return this;\n }\n // Iterate over the collection passing elements to `callback`\n function each(callback) {\n // Don't bother continuing without a callback\n if (!callback) { return this; }\n // Iterate over the current collection\n for (var i = 0; i < this.length; i += 1) {\n // If the callback returns false\n if (callback.call(this[i], i, this[i]) === false) {\n // End the loop early\n return this;\n }\n }\n // Return `this` to allow chained DOM operations\n return this;\n }\n // eslint-disable-next-line\n function html(html) {\n if (typeof html === 'undefined') {\n return this[0] ? this[0].innerHTML : undefined;\n }\n\n for (var i = 0; i < this.length; i += 1) {\n this[i].innerHTML = html;\n }\n return this;\n }\n // eslint-disable-next-line\n function text(text) {\n if (typeof text === 'undefined') {\n if (this[0]) {\n return this[0].textContent.trim();\n }\n return null;\n }\n\n for (var i = 0; i < this.length; i += 1) {\n this[i].textContent = text;\n }\n return this;\n }\n function is(selector) {\n var el = this[0];\n var compareWith;\n var i;\n if (!el || typeof selector === 'undefined') { return false; }\n if (typeof selector === 'string') {\n if (el.matches) { return el.matches(selector); }\n else if (el.webkitMatchesSelector) { return el.webkitMatchesSelector(selector); }\n else if (el.msMatchesSelector) { return el.msMatchesSelector(selector); }\n\n compareWith = $(selector);\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) { return true; }\n }\n return false;\n } else if (selector === doc) { return el === doc; }\n else if (selector === win) { return el === win; }\n\n if (selector.nodeType || selector instanceof Dom7) {\n compareWith = selector.nodeType ? [selector] : selector;\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) { return true; }\n }\n return false;\n }\n return false;\n }\n function index() {\n var child = this[0];\n var i;\n if (child) {\n i = 0;\n // eslint-disable-next-line\n while ((child = child.previousSibling) !== null) {\n if (child.nodeType === 1) { i += 1; }\n }\n return i;\n }\n return undefined;\n }\n // eslint-disable-next-line\n function eq(index) {\n if (typeof index === 'undefined') { return this; }\n var length = this.length;\n var returnIndex;\n if (index > length - 1) {\n return new Dom7([]);\n }\n if (index < 0) {\n returnIndex = length + index;\n if (returnIndex < 0) { return new Dom7([]); }\n return new Dom7([this[returnIndex]]);\n }\n return new Dom7([this[index]]);\n }\n function append() {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var newChild;\n\n for (var k = 0; k < args.length; k += 1) {\n newChild = args[k];\n for (var i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n var tempDiv = doc.createElement('div');\n tempDiv.innerHTML = newChild;\n while (tempDiv.firstChild) {\n this[i].appendChild(tempDiv.firstChild);\n }\n } else if (newChild instanceof Dom7) {\n for (var j = 0; j < newChild.length; j += 1) {\n this[i].appendChild(newChild[j]);\n }\n } else {\n this[i].appendChild(newChild);\n }\n }\n }\n\n return this;\n }\n function prepend(newChild) {\n var i;\n var j;\n for (i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n var tempDiv = doc.createElement('div');\n tempDiv.innerHTML = newChild;\n for (j = tempDiv.childNodes.length - 1; j >= 0; j -= 1) {\n this[i].insertBefore(tempDiv.childNodes[j], this[i].childNodes[0]);\n }\n } else if (newChild instanceof Dom7) {\n for (j = 0; j < newChild.length; j += 1) {\n this[i].insertBefore(newChild[j], this[i].childNodes[0]);\n }\n } else {\n this[i].insertBefore(newChild, this[i].childNodes[0]);\n }\n }\n return this;\n }\n function next(selector) {\n if (this.length > 0) {\n if (selector) {\n if (this[0].nextElementSibling && $(this[0].nextElementSibling).is(selector)) {\n return new Dom7([this[0].nextElementSibling]);\n }\n return new Dom7([]);\n }\n\n if (this[0].nextElementSibling) { return new Dom7([this[0].nextElementSibling]); }\n return new Dom7([]);\n }\n return new Dom7([]);\n }\n function nextAll(selector) {\n var nextEls = [];\n var el = this[0];\n if (!el) { return new Dom7([]); }\n while (el.nextElementSibling) {\n var next = el.nextElementSibling; // eslint-disable-line\n if (selector) {\n if ($(next).is(selector)) { nextEls.push(next); }\n } else { nextEls.push(next); }\n el = next;\n }\n return new Dom7(nextEls);\n }\n function prev(selector) {\n if (this.length > 0) {\n var el = this[0];\n if (selector) {\n if (el.previousElementSibling && $(el.previousElementSibling).is(selector)) {\n return new Dom7([el.previousElementSibling]);\n }\n return new Dom7([]);\n }\n\n if (el.previousElementSibling) { return new Dom7([el.previousElementSibling]); }\n return new Dom7([]);\n }\n return new Dom7([]);\n }\n function prevAll(selector) {\n var prevEls = [];\n var el = this[0];\n if (!el) { return new Dom7([]); }\n while (el.previousElementSibling) {\n var prev = el.previousElementSibling; // eslint-disable-line\n if (selector) {\n if ($(prev).is(selector)) { prevEls.push(prev); }\n } else { prevEls.push(prev); }\n el = prev;\n }\n return new Dom7(prevEls);\n }\n function parent(selector) {\n var parents = []; // eslint-disable-line\n for (var i = 0; i < this.length; i += 1) {\n if (this[i].parentNode !== null) {\n if (selector) {\n if ($(this[i].parentNode).is(selector)) { parents.push(this[i].parentNode); }\n } else {\n parents.push(this[i].parentNode);\n }\n }\n }\n return $(unique(parents));\n }\n function parents(selector) {\n var parents = []; // eslint-disable-line\n for (var i = 0; i < this.length; i += 1) {\n var parent = this[i].parentNode; // eslint-disable-line\n while (parent) {\n if (selector) {\n if ($(parent).is(selector)) { parents.push(parent); }\n } else {\n parents.push(parent);\n }\n parent = parent.parentNode;\n }\n }\n return $(unique(parents));\n }\n function closest(selector) {\n var closest = this; // eslint-disable-line\n if (typeof selector === 'undefined') {\n return new Dom7([]);\n }\n if (!closest.is(selector)) {\n closest = closest.parents(selector).eq(0);\n }\n return closest;\n }\n function find(selector) {\n var foundElements = [];\n for (var i = 0; i < this.length; i += 1) {\n var found = this[i].querySelectorAll(selector);\n for (var j = 0; j < found.length; j += 1) {\n foundElements.push(found[j]);\n }\n }\n return new Dom7(foundElements);\n }\n function children(selector) {\n var children = []; // eslint-disable-line\n for (var i = 0; i < this.length; i += 1) {\n var childNodes = this[i].childNodes;\n\n for (var j = 0; j < childNodes.length; j += 1) {\n if (!selector) {\n if (childNodes[j].nodeType === 1) { children.push(childNodes[j]); }\n } else if (childNodes[j].nodeType === 1 && $(childNodes[j]).is(selector)) {\n children.push(childNodes[j]);\n }\n }\n }\n return new Dom7(unique(children));\n }\n function remove() {\n for (var i = 0; i < this.length; i += 1) {\n if (this[i].parentNode) { this[i].parentNode.removeChild(this[i]); }\n }\n return this;\n }\n function add() {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var dom = this;\n var i;\n var j;\n for (i = 0; i < args.length; i += 1) {\n var toAdd = $(args[i]);\n for (j = 0; j < toAdd.length; j += 1) {\n dom[dom.length] = toAdd[j];\n dom.length += 1;\n }\n }\n return dom;\n }\n\n var Methods = {\n addClass: addClass,\n removeClass: removeClass,\n hasClass: hasClass,\n toggleClass: toggleClass,\n attr: attr,\n removeAttr: removeAttr,\n data: data,\n transform: transform,\n transition: transition,\n on: on,\n off: off,\n trigger: trigger,\n transitionEnd: transitionEnd,\n outerWidth: outerWidth,\n outerHeight: outerHeight,\n offset: offset,\n css: css,\n each: each,\n html: html,\n text: text,\n is: is,\n index: index,\n eq: eq,\n append: append,\n prepend: prepend,\n next: next,\n nextAll: nextAll,\n prev: prev,\n prevAll: prevAll,\n parent: parent,\n parents: parents,\n closest: closest,\n find: find,\n children: children,\n remove: remove,\n add: add,\n styles: styles,\n };\n\n Object.keys(Methods).forEach(function (methodName) {\n $.fn[methodName] = $.fn[methodName] || Methods[methodName];\n });\n\n var Utils = {\n deleteProps: function deleteProps(obj) {\n var object = obj;\n Object.keys(object).forEach(function (key) {\n try {\n object[key] = null;\n } catch (e) {\n // no getter for object\n }\n try {\n delete object[key];\n } catch (e) {\n // something got wrong\n }\n });\n },\n nextTick: function nextTick(callback, delay) {\n if ( delay === void 0 ) delay = 0;\n\n return setTimeout(callback, delay);\n },\n now: function now() {\n return Date.now();\n },\n getTranslate: function getTranslate(el, axis) {\n if ( axis === void 0 ) axis = 'x';\n\n var matrix;\n var curTransform;\n var transformMatrix;\n\n var curStyle = win.getComputedStyle(el, null);\n\n if (win.WebKitCSSMatrix) {\n curTransform = curStyle.transform || curStyle.webkitTransform;\n if (curTransform.split(',').length > 6) {\n curTransform = curTransform.split(', ').map(function (a) { return a.replace(',', '.'); }).join(', ');\n }\n // Some old versions of Webkit choke when 'none' is passed; pass\n // empty string instead in this case\n transformMatrix = new win.WebKitCSSMatrix(curTransform === 'none' ? '' : curTransform);\n } else {\n transformMatrix = curStyle.MozTransform || curStyle.OTransform || curStyle.MsTransform || curStyle.msTransform || curStyle.transform || curStyle.getPropertyValue('transform').replace('translate(', 'matrix(1, 0, 0, 1,');\n matrix = transformMatrix.toString().split(',');\n }\n\n if (axis === 'x') {\n // Latest Chrome and webkits Fix\n if (win.WebKitCSSMatrix) { curTransform = transformMatrix.m41; }\n // Crazy IE10 Matrix\n else if (matrix.length === 16) { curTransform = parseFloat(matrix[12]); }\n // Normal Browsers\n else { curTransform = parseFloat(matrix[4]); }\n }\n if (axis === 'y') {\n // Latest Chrome and webkits Fix\n if (win.WebKitCSSMatrix) { curTransform = transformMatrix.m42; }\n // Crazy IE10 Matrix\n else if (matrix.length === 16) { curTransform = parseFloat(matrix[13]); }\n // Normal Browsers\n else { curTransform = parseFloat(matrix[5]); }\n }\n return curTransform || 0;\n },\n parseUrlQuery: function parseUrlQuery(url) {\n var query = {};\n var urlToParse = url || win.location.href;\n var i;\n var params;\n var param;\n var length;\n if (typeof urlToParse === 'string' && urlToParse.length) {\n urlToParse = urlToParse.indexOf('?') > -1 ? urlToParse.replace(/\\S*\\?/, '') : '';\n params = urlToParse.split('&').filter(function (paramsPart) { return paramsPart !== ''; });\n length = params.length;\n\n for (i = 0; i < length; i += 1) {\n param = params[i].replace(/#\\S+/g, '').split('=');\n query[decodeURIComponent(param[0])] = typeof param[1] === 'undefined' ? undefined : decodeURIComponent(param[1]) || '';\n }\n }\n return query;\n },\n isObject: function isObject(o) {\n return typeof o === 'object' && o !== null && o.constructor && o.constructor === Object;\n },\n extend: function extend() {\n var args = [], len$1 = arguments.length;\n while ( len$1-- ) args[ len$1 ] = arguments[ len$1 ];\n\n var to = Object(args[0]);\n for (var i = 1; i < args.length; i += 1) {\n var nextSource = args[i];\n if (nextSource !== undefined && nextSource !== null) {\n var keysArray = Object.keys(Object(nextSource));\n for (var nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex += 1) {\n var nextKey = keysArray[nextIndex];\n var desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);\n if (desc !== undefined && desc.enumerable) {\n if (Utils.isObject(to[nextKey]) && Utils.isObject(nextSource[nextKey])) {\n Utils.extend(to[nextKey], nextSource[nextKey]);\n } else if (!Utils.isObject(to[nextKey]) && Utils.isObject(nextSource[nextKey])) {\n to[nextKey] = {};\n Utils.extend(to[nextKey], nextSource[nextKey]);\n } else {\n to[nextKey] = nextSource[nextKey];\n }\n }\n }\n }\n }\n return to;\n },\n };\n\n var Support = (function Support() {\n var testDiv = doc.createElement('div');\n return {\n touch: (win.Modernizr && win.Modernizr.touch === true) || (function checkTouch() {\n return !!((win.navigator.maxTouchPoints > 0) || ('ontouchstart' in win) || (win.DocumentTouch && doc instanceof win.DocumentTouch));\n }()),\n\n pointerEvents: !!(win.navigator.pointerEnabled || win.PointerEvent || ('maxTouchPoints' in win.navigator && win.navigator.maxTouchPoints > 0)),\n prefixedPointerEvents: !!win.navigator.msPointerEnabled,\n\n transition: (function checkTransition() {\n var style = testDiv.style;\n return ('transition' in style || 'webkitTransition' in style || 'MozTransition' in style);\n }()),\n transforms3d: (win.Modernizr && win.Modernizr.csstransforms3d === true) || (function checkTransforms3d() {\n var style = testDiv.style;\n return ('webkitPerspective' in style || 'MozPerspective' in style || 'OPerspective' in style || 'MsPerspective' in style || 'perspective' in style);\n }()),\n\n flexbox: (function checkFlexbox() {\n var style = testDiv.style;\n var styles = ('alignItems webkitAlignItems webkitBoxAlign msFlexAlign mozBoxAlign webkitFlexDirection msFlexDirection mozBoxDirection mozBoxOrient webkitBoxDirection webkitBoxOrient').split(' ');\n for (var i = 0; i < styles.length; i += 1) {\n if (styles[i] in style) { return true; }\n }\n return false;\n }()),\n\n observer: (function checkObserver() {\n return ('MutationObserver' in win || 'WebkitMutationObserver' in win);\n }()),\n\n passiveListener: (function checkPassiveListener() {\n var supportsPassive = false;\n try {\n var opts = Object.defineProperty({}, 'passive', {\n // eslint-disable-next-line\n get: function get() {\n supportsPassive = true;\n },\n });\n win.addEventListener('testPassiveListener', null, opts);\n } catch (e) {\n // No support\n }\n return supportsPassive;\n }()),\n\n gestures: (function checkGestures() {\n return 'ongesturestart' in win;\n }()),\n };\n }());\n\n var Browser = (function Browser() {\n function isSafari() {\n var ua = win.navigator.userAgent.toLowerCase();\n return (ua.indexOf('safari') >= 0 && ua.indexOf('chrome') < 0 && ua.indexOf('android') < 0);\n }\n return {\n isIE: !!win.navigator.userAgent.match(/Trident/g) || !!win.navigator.userAgent.match(/MSIE/g),\n isEdge: !!win.navigator.userAgent.match(/Edge/g),\n isSafari: isSafari(),\n isUiWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(win.navigator.userAgent),\n };\n }());\n\n var SwiperClass = function SwiperClass(params) {\n if ( params === void 0 ) params = {};\n\n var self = this;\n self.params = params;\n\n // Events\n self.eventsListeners = {};\n\n if (self.params && self.params.on) {\n Object.keys(self.params.on).forEach(function (eventName) {\n self.on(eventName, self.params.on[eventName]);\n });\n }\n };\n\n var staticAccessors = { components: { configurable: true } };\n\n SwiperClass.prototype.on = function on (events, handler, priority) {\n var self = this;\n if (typeof handler !== 'function') { return self; }\n var method = priority ? 'unshift' : 'push';\n events.split(' ').forEach(function (event) {\n if (!self.eventsListeners[event]) { self.eventsListeners[event] = []; }\n self.eventsListeners[event][method](handler);\n });\n return self;\n };\n\n SwiperClass.prototype.once = function once (events, handler, priority) {\n var self = this;\n if (typeof handler !== 'function') { return self; }\n function onceHandler() {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n handler.apply(self, args);\n self.off(events, onceHandler);\n if (onceHandler.f7proxy) {\n delete onceHandler.f7proxy;\n }\n }\n onceHandler.f7proxy = handler;\n return self.on(events, onceHandler, priority);\n };\n\n SwiperClass.prototype.off = function off (events, handler) {\n var self = this;\n if (!self.eventsListeners) { return self; }\n events.split(' ').forEach(function (event) {\n if (typeof handler === 'undefined') {\n self.eventsListeners[event] = [];\n } else if (self.eventsListeners[event] && self.eventsListeners[event].length) {\n self.eventsListeners[event].forEach(function (eventHandler, index) {\n if (eventHandler === handler || (eventHandler.f7proxy && eventHandler.f7proxy === handler)) {\n self.eventsListeners[event].splice(index, 1);\n }\n });\n }\n });\n return self;\n };\n\n SwiperClass.prototype.emit = function emit () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var self = this;\n if (!self.eventsListeners) { return self; }\n var events;\n var data;\n var context;\n if (typeof args[0] === 'string' || Array.isArray(args[0])) {\n events = args[0];\n data = args.slice(1, args.length);\n context = self;\n } else {\n events = args[0].events;\n data = args[0].data;\n context = args[0].context || self;\n }\n var eventsArray = Array.isArray(events) ? events : events.split(' ');\n eventsArray.forEach(function (event) {\n if (self.eventsListeners && self.eventsListeners[event]) {\n var handlers = [];\n self.eventsListeners[event].forEach(function (eventHandler) {\n handlers.push(eventHandler);\n });\n handlers.forEach(function (eventHandler) {\n eventHandler.apply(context, data);\n });\n }\n });\n return self;\n };\n\n SwiperClass.prototype.useModulesParams = function useModulesParams (instanceParams) {\n var instance = this;\n if (!instance.modules) { return; }\n Object.keys(instance.modules).forEach(function (moduleName) {\n var module = instance.modules[moduleName];\n // Extend params\n if (module.params) {\n Utils.extend(instanceParams, module.params);\n }\n });\n };\n\n SwiperClass.prototype.useModules = function useModules (modulesParams) {\n if ( modulesParams === void 0 ) modulesParams = {};\n\n var instance = this;\n if (!instance.modules) { return; }\n Object.keys(instance.modules).forEach(function (moduleName) {\n var module = instance.modules[moduleName];\n var moduleParams = modulesParams[moduleName] || {};\n // Extend instance methods and props\n if (module.instance) {\n Object.keys(module.instance).forEach(function (modulePropName) {\n var moduleProp = module.instance[modulePropName];\n if (typeof moduleProp === 'function') {\n instance[modulePropName] = moduleProp.bind(instance);\n } else {\n instance[modulePropName] = moduleProp;\n }\n });\n }\n // Add event listeners\n if (module.on && instance.on) {\n Object.keys(module.on).forEach(function (moduleEventName) {\n instance.on(moduleEventName, module.on[moduleEventName]);\n });\n }\n\n // Module create callback\n if (module.create) {\n module.create.bind(instance)(moduleParams);\n }\n });\n };\n\n staticAccessors.components.set = function (components) {\n var Class = this;\n if (!Class.use) { return; }\n Class.use(components);\n };\n\n SwiperClass.installModule = function installModule (module) {\n var params = [], len = arguments.length - 1;\n while ( len-- > 0 ) params[ len ] = arguments[ len + 1 ];\n\n var Class = this;\n if (!Class.prototype.modules) { Class.prototype.modules = {}; }\n var name = module.name || (((Object.keys(Class.prototype.modules).length) + \"_\" + (Utils.now())));\n Class.prototype.modules[name] = module;\n // Prototype\n if (module.proto) {\n Object.keys(module.proto).forEach(function (key) {\n Class.prototype[key] = module.proto[key];\n });\n }\n // Class\n if (module.static) {\n Object.keys(module.static).forEach(function (key) {\n Class[key] = module.static[key];\n });\n }\n // Callback\n if (module.install) {\n module.install.apply(Class, params);\n }\n return Class;\n };\n\n SwiperClass.use = function use (module) {\n var params = [], len = arguments.length - 1;\n while ( len-- > 0 ) params[ len ] = arguments[ len + 1 ];\n\n var Class = this;\n if (Array.isArray(module)) {\n module.forEach(function (m) { return Class.installModule(m); });\n return Class;\n }\n return Class.installModule.apply(Class, [ module ].concat( params ));\n };\n\n Object.defineProperties( SwiperClass, staticAccessors );\n\n function updateSize () {\n var swiper = this;\n var width;\n var height;\n var $el = swiper.$el;\n if (typeof swiper.params.width !== 'undefined') {\n width = swiper.params.width;\n } else {\n width = $el[0].clientWidth;\n }\n if (typeof swiper.params.height !== 'undefined') {\n height = swiper.params.height;\n } else {\n height = $el[0].clientHeight;\n }\n if ((width === 0 && swiper.isHorizontal()) || (height === 0 && swiper.isVertical())) {\n return;\n }\n\n // Subtract paddings\n width = width - parseInt($el.css('padding-left'), 10) - parseInt($el.css('padding-right'), 10);\n height = height - parseInt($el.css('padding-top'), 10) - parseInt($el.css('padding-bottom'), 10);\n\n Utils.extend(swiper, {\n width: width,\n height: height,\n size: swiper.isHorizontal() ? width : height,\n });\n }\n\n function updateSlides () {\n var swiper = this;\n var params = swiper.params;\n\n var $wrapperEl = swiper.$wrapperEl;\n var swiperSize = swiper.size;\n var rtl = swiper.rtlTranslate;\n var wrongRTL = swiper.wrongRTL;\n var isVirtual = swiper.virtual && params.virtual.enabled;\n var previousSlidesLength = isVirtual ? swiper.virtual.slides.length : swiper.slides.length;\n var slides = $wrapperEl.children((\".\" + (swiper.params.slideClass)));\n var slidesLength = isVirtual ? swiper.virtual.slides.length : slides.length;\n var snapGrid = [];\n var slidesGrid = [];\n var slidesSizesGrid = [];\n\n var offsetBefore = params.slidesOffsetBefore;\n if (typeof offsetBefore === 'function') {\n offsetBefore = params.slidesOffsetBefore.call(swiper);\n }\n\n var offsetAfter = params.slidesOffsetAfter;\n if (typeof offsetAfter === 'function') {\n offsetAfter = params.slidesOffsetAfter.call(swiper);\n }\n\n var previousSnapGridLength = swiper.snapGrid.length;\n var previousSlidesGridLength = swiper.snapGrid.length;\n\n var spaceBetween = params.spaceBetween;\n var slidePosition = -offsetBefore;\n var prevSlideSize = 0;\n var index = 0;\n if (typeof swiperSize === 'undefined') {\n return;\n }\n if (typeof spaceBetween === 'string' && spaceBetween.indexOf('%') >= 0) {\n spaceBetween = (parseFloat(spaceBetween.replace('%', '')) / 100) * swiperSize;\n }\n\n swiper.virtualSize = -spaceBetween;\n\n // reset margins\n if (rtl) { slides.css({ marginLeft: '', marginTop: '' }); }\n else { slides.css({ marginRight: '', marginBottom: '' }); }\n\n var slidesNumberEvenToRows;\n if (params.slidesPerColumn > 1) {\n if (Math.floor(slidesLength / params.slidesPerColumn) === slidesLength / swiper.params.slidesPerColumn) {\n slidesNumberEvenToRows = slidesLength;\n } else {\n slidesNumberEvenToRows = Math.ceil(slidesLength / params.slidesPerColumn) * params.slidesPerColumn;\n }\n if (params.slidesPerView !== 'auto' && params.slidesPerColumnFill === 'row') {\n slidesNumberEvenToRows = Math.max(slidesNumberEvenToRows, params.slidesPerView * params.slidesPerColumn);\n }\n }\n\n // Calc slides\n var slideSize;\n var slidesPerColumn = params.slidesPerColumn;\n var slidesPerRow = slidesNumberEvenToRows / slidesPerColumn;\n var numFullColumns = Math.floor(slidesLength / params.slidesPerColumn);\n for (var i = 0; i < slidesLength; i += 1) {\n slideSize = 0;\n var slide = slides.eq(i);\n if (params.slidesPerColumn > 1) {\n // Set slides order\n var newSlideOrderIndex = (void 0);\n var column = (void 0);\n var row = (void 0);\n if (\n (params.slidesPerColumnFill === 'column')\n || (params.slidesPerColumnFill === 'row' && params.slidesPerGroup > 1)\n ) {\n if (params.slidesPerColumnFill === 'column') {\n column = Math.floor(i / slidesPerColumn);\n row = i - (column * slidesPerColumn);\n if (column > numFullColumns || (column === numFullColumns && row === slidesPerColumn - 1)) {\n row += 1;\n if (row >= slidesPerColumn) {\n row = 0;\n column += 1;\n }\n }\n } else {\n var groupIndex = Math.floor(i / params.slidesPerGroup);\n row = Math.floor(i / params.slidesPerView) - groupIndex * params.slidesPerColumn;\n column = i - row * params.slidesPerView - groupIndex * params.slidesPerView;\n }\n newSlideOrderIndex = column + ((row * slidesNumberEvenToRows) / slidesPerColumn);\n slide\n .css({\n '-webkit-box-ordinal-group': newSlideOrderIndex,\n '-moz-box-ordinal-group': newSlideOrderIndex,\n '-ms-flex-order': newSlideOrderIndex,\n '-webkit-order': newSlideOrderIndex,\n order: newSlideOrderIndex,\n });\n } else {\n row = Math.floor(i / slidesPerRow);\n column = i - (row * slidesPerRow);\n }\n slide\n .css(\n (\"margin-\" + (swiper.isHorizontal() ? 'top' : 'left')),\n (row !== 0 && params.spaceBetween) && (((params.spaceBetween) + \"px\"))\n )\n .attr('data-swiper-column', column)\n .attr('data-swiper-row', row);\n }\n if (slide.css('display') === 'none') { continue; } // eslint-disable-line\n\n if (params.slidesPerView === 'auto') {\n var slideStyles = win.getComputedStyle(slide[0], null);\n var currentTransform = slide[0].style.transform;\n var currentWebKitTransform = slide[0].style.webkitTransform;\n if (currentTransform) {\n slide[0].style.transform = 'none';\n }\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = 'none';\n }\n if (params.roundLengths) {\n slideSize = swiper.isHorizontal()\n ? slide.outerWidth(true)\n : slide.outerHeight(true);\n } else {\n // eslint-disable-next-line\n if (swiper.isHorizontal()) {\n var width = parseFloat(slideStyles.getPropertyValue('width'));\n var paddingLeft = parseFloat(slideStyles.getPropertyValue('padding-left'));\n var paddingRight = parseFloat(slideStyles.getPropertyValue('padding-right'));\n var marginLeft = parseFloat(slideStyles.getPropertyValue('margin-left'));\n var marginRight = parseFloat(slideStyles.getPropertyValue('margin-right'));\n var boxSizing = slideStyles.getPropertyValue('box-sizing');\n if (boxSizing && boxSizing === 'border-box' && !Browser.isIE) {\n slideSize = width + marginLeft + marginRight;\n } else {\n slideSize = width + paddingLeft + paddingRight + marginLeft + marginRight;\n }\n } else {\n var height = parseFloat(slideStyles.getPropertyValue('height'));\n var paddingTop = parseFloat(slideStyles.getPropertyValue('padding-top'));\n var paddingBottom = parseFloat(slideStyles.getPropertyValue('padding-bottom'));\n var marginTop = parseFloat(slideStyles.getPropertyValue('margin-top'));\n var marginBottom = parseFloat(slideStyles.getPropertyValue('margin-bottom'));\n var boxSizing$1 = slideStyles.getPropertyValue('box-sizing');\n if (boxSizing$1 && boxSizing$1 === 'border-box' && !Browser.isIE) {\n slideSize = height + marginTop + marginBottom;\n } else {\n slideSize = height + paddingTop + paddingBottom + marginTop + marginBottom;\n }\n }\n }\n if (currentTransform) {\n slide[0].style.transform = currentTransform;\n }\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = currentWebKitTransform;\n }\n if (params.roundLengths) { slideSize = Math.floor(slideSize); }\n } else {\n slideSize = (swiperSize - ((params.slidesPerView - 1) * spaceBetween)) / params.slidesPerView;\n if (params.roundLengths) { slideSize = Math.floor(slideSize); }\n\n if (slides[i]) {\n if (swiper.isHorizontal()) {\n slides[i].style.width = slideSize + \"px\";\n } else {\n slides[i].style.height = slideSize + \"px\";\n }\n }\n }\n if (slides[i]) {\n slides[i].swiperSlideSize = slideSize;\n }\n slidesSizesGrid.push(slideSize);\n\n\n if (params.centeredSlides) {\n slidePosition = slidePosition + (slideSize / 2) + (prevSlideSize / 2) + spaceBetween;\n if (prevSlideSize === 0 && i !== 0) { slidePosition = slidePosition - (swiperSize / 2) - spaceBetween; }\n if (i === 0) { slidePosition = slidePosition - (swiperSize / 2) - spaceBetween; }\n if (Math.abs(slidePosition) < 1 / 1000) { slidePosition = 0; }\n if (params.roundLengths) { slidePosition = Math.floor(slidePosition); }\n if ((index) % params.slidesPerGroup === 0) { snapGrid.push(slidePosition); }\n slidesGrid.push(slidePosition);\n } else {\n if (params.roundLengths) { slidePosition = Math.floor(slidePosition); }\n if ((index) % params.slidesPerGroup === 0) { snapGrid.push(slidePosition); }\n slidesGrid.push(slidePosition);\n slidePosition = slidePosition + slideSize + spaceBetween;\n }\n\n swiper.virtualSize += slideSize + spaceBetween;\n\n prevSlideSize = slideSize;\n\n index += 1;\n }\n swiper.virtualSize = Math.max(swiper.virtualSize, swiperSize) + offsetAfter;\n var newSlidesGrid;\n\n if (\n rtl && wrongRTL && (params.effect === 'slide' || params.effect === 'coverflow')) {\n $wrapperEl.css({ width: ((swiper.virtualSize + params.spaceBetween) + \"px\") });\n }\n if (!Support.flexbox || params.setWrapperSize) {\n if (swiper.isHorizontal()) { $wrapperEl.css({ width: ((swiper.virtualSize + params.spaceBetween) + \"px\") }); }\n else { $wrapperEl.css({ height: ((swiper.virtualSize + params.spaceBetween) + \"px\") }); }\n }\n\n if (params.slidesPerColumn > 1) {\n swiper.virtualSize = (slideSize + params.spaceBetween) * slidesNumberEvenToRows;\n swiper.virtualSize = Math.ceil(swiper.virtualSize / params.slidesPerColumn) - params.spaceBetween;\n if (swiper.isHorizontal()) { $wrapperEl.css({ width: ((swiper.virtualSize + params.spaceBetween) + \"px\") }); }\n else { $wrapperEl.css({ height: ((swiper.virtualSize + params.spaceBetween) + \"px\") }); }\n if (params.centeredSlides) {\n newSlidesGrid = [];\n for (var i$1 = 0; i$1 < snapGrid.length; i$1 += 1) {\n var slidesGridItem = snapGrid[i$1];\n if (params.roundLengths) { slidesGridItem = Math.floor(slidesGridItem); }\n if (snapGrid[i$1] < swiper.virtualSize + snapGrid[0]) { newSlidesGrid.push(slidesGridItem); }\n }\n snapGrid = newSlidesGrid;\n }\n }\n\n // Remove last grid elements depending on width\n if (!params.centeredSlides) {\n newSlidesGrid = [];\n for (var i$2 = 0; i$2 < snapGrid.length; i$2 += 1) {\n var slidesGridItem$1 = snapGrid[i$2];\n if (params.roundLengths) { slidesGridItem$1 = Math.floor(slidesGridItem$1); }\n if (snapGrid[i$2] <= swiper.virtualSize - swiperSize) {\n newSlidesGrid.push(slidesGridItem$1);\n }\n }\n snapGrid = newSlidesGrid;\n if (Math.floor(swiper.virtualSize - swiperSize) - Math.floor(snapGrid[snapGrid.length - 1]) > 1) {\n snapGrid.push(swiper.virtualSize - swiperSize);\n }\n }\n if (snapGrid.length === 0) { snapGrid = [0]; }\n\n if (params.spaceBetween !== 0) {\n if (swiper.isHorizontal()) {\n if (rtl) { slides.css({ marginLeft: (spaceBetween + \"px\") }); }\n else { slides.css({ marginRight: (spaceBetween + \"px\") }); }\n } else { slides.css({ marginBottom: (spaceBetween + \"px\") }); }\n }\n\n if (params.centerInsufficientSlides) {\n var allSlidesSize = 0;\n slidesSizesGrid.forEach(function (slideSizeValue) {\n allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);\n });\n allSlidesSize -= params.spaceBetween;\n if (allSlidesSize < swiperSize) {\n var allSlidesOffset = (swiperSize - allSlidesSize) / 2;\n snapGrid.forEach(function (snap, snapIndex) {\n snapGrid[snapIndex] = snap - allSlidesOffset;\n });\n slidesGrid.forEach(function (snap, snapIndex) {\n slidesGrid[snapIndex] = snap + allSlidesOffset;\n });\n }\n }\n\n Utils.extend(swiper, {\n slides: slides,\n snapGrid: snapGrid,\n slidesGrid: slidesGrid,\n slidesSizesGrid: slidesSizesGrid,\n });\n\n if (slidesLength !== previousSlidesLength) {\n swiper.emit('slidesLengthChange');\n }\n if (snapGrid.length !== previousSnapGridLength) {\n if (swiper.params.watchOverflow) { swiper.checkOverflow(); }\n swiper.emit('snapGridLengthChange');\n }\n if (slidesGrid.length !== previousSlidesGridLength) {\n swiper.emit('slidesGridLengthChange');\n }\n\n if (params.watchSlidesProgress || params.watchSlidesVisibility) {\n swiper.updateSlidesOffset();\n }\n }\n\n function updateAutoHeight (speed) {\n var swiper = this;\n var activeSlides = [];\n var newHeight = 0;\n var i;\n if (typeof speed === 'number') {\n swiper.setTransition(speed);\n } else if (speed === true) {\n swiper.setTransition(swiper.params.speed);\n }\n // Find slides currently in view\n if (swiper.params.slidesPerView !== 'auto' && swiper.params.slidesPerView > 1) {\n for (i = 0; i < Math.ceil(swiper.params.slidesPerView); i += 1) {\n var index = swiper.activeIndex + i;\n if (index > swiper.slides.length) { break; }\n activeSlides.push(swiper.slides.eq(index)[0]);\n }\n } else {\n activeSlides.push(swiper.slides.eq(swiper.activeIndex)[0]);\n }\n\n // Find new height from highest slide in view\n for (i = 0; i < activeSlides.length; i += 1) {\n if (typeof activeSlides[i] !== 'undefined') {\n var height = activeSlides[i].offsetHeight;\n newHeight = height > newHeight ? height : newHeight;\n }\n }\n\n // Update Height\n if (newHeight) { swiper.$wrapperEl.css('height', (newHeight + \"px\")); }\n }\n\n function updateSlidesOffset () {\n var swiper = this;\n var slides = swiper.slides;\n for (var i = 0; i < slides.length; i += 1) {\n slides[i].swiperSlideOffset = swiper.isHorizontal() ? slides[i].offsetLeft : slides[i].offsetTop;\n }\n }\n\n function updateSlidesProgress (translate) {\n if ( translate === void 0 ) translate = (this && this.translate) || 0;\n\n var swiper = this;\n var params = swiper.params;\n\n var slides = swiper.slides;\n var rtl = swiper.rtlTranslate;\n\n if (slides.length === 0) { return; }\n if (typeof slides[0].swiperSlideOffset === 'undefined') { swiper.updateSlidesOffset(); }\n\n var offsetCenter = -translate;\n if (rtl) { offsetCenter = translate; }\n\n // Visible Slides\n slides.removeClass(params.slideVisibleClass);\n\n swiper.visibleSlidesIndexes = [];\n swiper.visibleSlides = [];\n\n for (var i = 0; i < slides.length; i += 1) {\n var slide = slides[i];\n var slideProgress = (\n (offsetCenter + (params.centeredSlides ? swiper.minTranslate() : 0)) - slide.swiperSlideOffset\n ) / (slide.swiperSlideSize + params.spaceBetween);\n if (params.watchSlidesVisibility) {\n var slideBefore = -(offsetCenter - slide.swiperSlideOffset);\n var slideAfter = slideBefore + swiper.slidesSizesGrid[i];\n var isVisible = (slideBefore >= 0 && slideBefore < swiper.size - 1)\n || (slideAfter > 1 && slideAfter <= swiper.size)\n || (slideBefore <= 0 && slideAfter >= swiper.size);\n if (isVisible) {\n swiper.visibleSlides.push(slide);\n swiper.visibleSlidesIndexes.push(i);\n slides.eq(i).addClass(params.slideVisibleClass);\n }\n }\n slide.progress = rtl ? -slideProgress : slideProgress;\n }\n swiper.visibleSlides = $(swiper.visibleSlides);\n }\n\n function updateProgress (translate) {\n if ( translate === void 0 ) translate = (this && this.translate) || 0;\n\n var swiper = this;\n var params = swiper.params;\n\n var translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n var progress = swiper.progress;\n var isBeginning = swiper.isBeginning;\n var isEnd = swiper.isEnd;\n var wasBeginning = isBeginning;\n var wasEnd = isEnd;\n if (translatesDiff === 0) {\n progress = 0;\n isBeginning = true;\n isEnd = true;\n } else {\n progress = (translate - swiper.minTranslate()) / (translatesDiff);\n isBeginning = progress <= 0;\n isEnd = progress >= 1;\n }\n Utils.extend(swiper, {\n progress: progress,\n isBeginning: isBeginning,\n isEnd: isEnd,\n });\n\n if (params.watchSlidesProgress || params.watchSlidesVisibility) { swiper.updateSlidesProgress(translate); }\n\n if (isBeginning && !wasBeginning) {\n swiper.emit('reachBeginning toEdge');\n }\n if (isEnd && !wasEnd) {\n swiper.emit('reachEnd toEdge');\n }\n if ((wasBeginning && !isBeginning) || (wasEnd && !isEnd)) {\n swiper.emit('fromEdge');\n }\n\n swiper.emit('progress', progress);\n }\n\n function updateSlidesClasses () {\n var swiper = this;\n\n var slides = swiper.slides;\n var params = swiper.params;\n var $wrapperEl = swiper.$wrapperEl;\n var activeIndex = swiper.activeIndex;\n var realIndex = swiper.realIndex;\n var isVirtual = swiper.virtual && params.virtual.enabled;\n\n slides.removeClass(((params.slideActiveClass) + \" \" + (params.slideNextClass) + \" \" + (params.slidePrevClass) + \" \" + (params.slideDuplicateActiveClass) + \" \" + (params.slideDuplicateNextClass) + \" \" + (params.slideDuplicatePrevClass)));\n\n var activeSlide;\n if (isVirtual) {\n activeSlide = swiper.$wrapperEl.find((\".\" + (params.slideClass) + \"[data-swiper-slide-index=\\\"\" + activeIndex + \"\\\"]\"));\n } else {\n activeSlide = slides.eq(activeIndex);\n }\n\n // Active classes\n activeSlide.addClass(params.slideActiveClass);\n\n if (params.loop) {\n // Duplicate to all looped slides\n if (activeSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children((\".\" + (params.slideClass) + \":not(.\" + (params.slideDuplicateClass) + \")[data-swiper-slide-index=\\\"\" + realIndex + \"\\\"]\"))\n .addClass(params.slideDuplicateActiveClass);\n } else {\n $wrapperEl\n .children((\".\" + (params.slideClass) + \".\" + (params.slideDuplicateClass) + \"[data-swiper-slide-index=\\\"\" + realIndex + \"\\\"]\"))\n .addClass(params.slideDuplicateActiveClass);\n }\n }\n // Next Slide\n var nextSlide = activeSlide.nextAll((\".\" + (params.slideClass))).eq(0).addClass(params.slideNextClass);\n if (params.loop && nextSlide.length === 0) {\n nextSlide = slides.eq(0);\n nextSlide.addClass(params.slideNextClass);\n }\n // Prev Slide\n var prevSlide = activeSlide.prevAll((\".\" + (params.slideClass))).eq(0).addClass(params.slidePrevClass);\n if (params.loop && prevSlide.length === 0) {\n prevSlide = slides.eq(-1);\n prevSlide.addClass(params.slidePrevClass);\n }\n if (params.loop) {\n // Duplicate to all looped slides\n if (nextSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children((\".\" + (params.slideClass) + \":not(.\" + (params.slideDuplicateClass) + \")[data-swiper-slide-index=\\\"\" + (nextSlide.attr('data-swiper-slide-index')) + \"\\\"]\"))\n .addClass(params.slideDuplicateNextClass);\n } else {\n $wrapperEl\n .children((\".\" + (params.slideClass) + \".\" + (params.slideDuplicateClass) + \"[data-swiper-slide-index=\\\"\" + (nextSlide.attr('data-swiper-slide-index')) + \"\\\"]\"))\n .addClass(params.slideDuplicateNextClass);\n }\n if (prevSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children((\".\" + (params.slideClass) + \":not(.\" + (params.slideDuplicateClass) + \")[data-swiper-slide-index=\\\"\" + (prevSlide.attr('data-swiper-slide-index')) + \"\\\"]\"))\n .addClass(params.slideDuplicatePrevClass);\n } else {\n $wrapperEl\n .children((\".\" + (params.slideClass) + \".\" + (params.slideDuplicateClass) + \"[data-swiper-slide-index=\\\"\" + (prevSlide.attr('data-swiper-slide-index')) + \"\\\"]\"))\n .addClass(params.slideDuplicatePrevClass);\n }\n }\n }\n\n function updateActiveIndex (newActiveIndex) {\n var swiper = this;\n var translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n var slidesGrid = swiper.slidesGrid;\n var snapGrid = swiper.snapGrid;\n var params = swiper.params;\n var previousIndex = swiper.activeIndex;\n var previousRealIndex = swiper.realIndex;\n var previousSnapIndex = swiper.snapIndex;\n var activeIndex = newActiveIndex;\n var snapIndex;\n if (typeof activeIndex === 'undefined') {\n for (var i = 0; i < slidesGrid.length; i += 1) {\n if (typeof slidesGrid[i + 1] !== 'undefined') {\n if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1] - ((slidesGrid[i + 1] - slidesGrid[i]) / 2)) {\n activeIndex = i;\n } else if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1]) {\n activeIndex = i + 1;\n }\n } else if (translate >= slidesGrid[i]) {\n activeIndex = i;\n }\n }\n // Normalize slideIndex\n if (params.normalizeSlideIndex) {\n if (activeIndex < 0 || typeof activeIndex === 'undefined') { activeIndex = 0; }\n }\n }\n if (snapGrid.indexOf(translate) >= 0) {\n snapIndex = snapGrid.indexOf(translate);\n } else {\n snapIndex = Math.floor(activeIndex / params.slidesPerGroup);\n }\n if (snapIndex >= snapGrid.length) { snapIndex = snapGrid.length - 1; }\n if (activeIndex === previousIndex) {\n if (snapIndex !== previousSnapIndex) {\n swiper.snapIndex = snapIndex;\n swiper.emit('snapIndexChange');\n }\n return;\n }\n\n // Get real index\n var realIndex = parseInt(swiper.slides.eq(activeIndex).attr('data-swiper-slide-index') || activeIndex, 10);\n\n Utils.extend(swiper, {\n snapIndex: snapIndex,\n realIndex: realIndex,\n previousIndex: previousIndex,\n activeIndex: activeIndex,\n });\n swiper.emit('activeIndexChange');\n swiper.emit('snapIndexChange');\n if (previousRealIndex !== realIndex) {\n swiper.emit('realIndexChange');\n }\n if (swiper.initialized || swiper.runCallbacksOnInit) {\n swiper.emit('slideChange');\n }\n }\n\n function updateClickedSlide (e) {\n var swiper = this;\n var params = swiper.params;\n var slide = $(e.target).closest((\".\" + (params.slideClass)))[0];\n var slideFound = false;\n if (slide) {\n for (var i = 0; i < swiper.slides.length; i += 1) {\n if (swiper.slides[i] === slide) { slideFound = true; }\n }\n }\n\n if (slide && slideFound) {\n swiper.clickedSlide = slide;\n if (swiper.virtual && swiper.params.virtual.enabled) {\n swiper.clickedIndex = parseInt($(slide).attr('data-swiper-slide-index'), 10);\n } else {\n swiper.clickedIndex = $(slide).index();\n }\n } else {\n swiper.clickedSlide = undefined;\n swiper.clickedIndex = undefined;\n return;\n }\n if (params.slideToClickedSlide && swiper.clickedIndex !== undefined && swiper.clickedIndex !== swiper.activeIndex) {\n swiper.slideToClickedSlide();\n }\n }\n\n var update = {\n updateSize: updateSize,\n updateSlides: updateSlides,\n updateAutoHeight: updateAutoHeight,\n updateSlidesOffset: updateSlidesOffset,\n updateSlidesProgress: updateSlidesProgress,\n updateProgress: updateProgress,\n updateSlidesClasses: updateSlidesClasses,\n updateActiveIndex: updateActiveIndex,\n updateClickedSlide: updateClickedSlide,\n };\n\n function getTranslate (axis) {\n if ( axis === void 0 ) axis = this.isHorizontal() ? 'x' : 'y';\n\n var swiper = this;\n\n var params = swiper.params;\n var rtl = swiper.rtlTranslate;\n var translate = swiper.translate;\n var $wrapperEl = swiper.$wrapperEl;\n\n if (params.virtualTranslate) {\n return rtl ? -translate : translate;\n }\n\n var currentTranslate = Utils.getTranslate($wrapperEl[0], axis);\n if (rtl) { currentTranslate = -currentTranslate; }\n\n return currentTranslate || 0;\n }\n\n function setTranslate (translate, byController) {\n var swiper = this;\n var rtl = swiper.rtlTranslate;\n var params = swiper.params;\n var $wrapperEl = swiper.$wrapperEl;\n var progress = swiper.progress;\n var x = 0;\n var y = 0;\n var z = 0;\n\n if (swiper.isHorizontal()) {\n x = rtl ? -translate : translate;\n } else {\n y = translate;\n }\n\n if (params.roundLengths) {\n x = Math.floor(x);\n y = Math.floor(y);\n }\n\n if (!params.virtualTranslate) {\n if (Support.transforms3d) { $wrapperEl.transform((\"translate3d(\" + x + \"px, \" + y + \"px, \" + z + \"px)\")); }\n else { $wrapperEl.transform((\"translate(\" + x + \"px, \" + y + \"px)\")); }\n }\n swiper.previousTranslate = swiper.translate;\n swiper.translate = swiper.isHorizontal() ? x : y;\n\n // Check if we need to update progress\n var newProgress;\n var translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n if (translatesDiff === 0) {\n newProgress = 0;\n } else {\n newProgress = (translate - swiper.minTranslate()) / (translatesDiff);\n }\n if (newProgress !== progress) {\n swiper.updateProgress(translate);\n }\n\n swiper.emit('setTranslate', swiper.translate, byController);\n }\n\n function minTranslate () {\n return (-this.snapGrid[0]);\n }\n\n function maxTranslate () {\n return (-this.snapGrid[this.snapGrid.length - 1]);\n }\n\n var translate = {\n getTranslate: getTranslate,\n setTranslate: setTranslate,\n minTranslate: minTranslate,\n maxTranslate: maxTranslate,\n };\n\n function setTransition (duration, byController) {\n var swiper = this;\n\n swiper.$wrapperEl.transition(duration);\n\n swiper.emit('setTransition', duration, byController);\n }\n\n function transitionStart (runCallbacks, direction) {\n if ( runCallbacks === void 0 ) runCallbacks = true;\n\n var swiper = this;\n var activeIndex = swiper.activeIndex;\n var params = swiper.params;\n var previousIndex = swiper.previousIndex;\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n\n var dir = direction;\n if (!dir) {\n if (activeIndex > previousIndex) { dir = 'next'; }\n else if (activeIndex < previousIndex) { dir = 'prev'; }\n else { dir = 'reset'; }\n }\n\n swiper.emit('transitionStart');\n\n if (runCallbacks && activeIndex !== previousIndex) {\n if (dir === 'reset') {\n swiper.emit('slideResetTransitionStart');\n return;\n }\n swiper.emit('slideChangeTransitionStart');\n if (dir === 'next') {\n swiper.emit('slideNextTransitionStart');\n } else {\n swiper.emit('slidePrevTransitionStart');\n }\n }\n }\n\n function transitionEnd$1 (runCallbacks, direction) {\n if ( runCallbacks === void 0 ) runCallbacks = true;\n\n var swiper = this;\n var activeIndex = swiper.activeIndex;\n var previousIndex = swiper.previousIndex;\n swiper.animating = false;\n swiper.setTransition(0);\n\n var dir = direction;\n if (!dir) {\n if (activeIndex > previousIndex) { dir = 'next'; }\n else if (activeIndex < previousIndex) { dir = 'prev'; }\n else { dir = 'reset'; }\n }\n\n swiper.emit('transitionEnd');\n\n if (runCallbacks && activeIndex !== previousIndex) {\n if (dir === 'reset') {\n swiper.emit('slideResetTransitionEnd');\n return;\n }\n swiper.emit('slideChangeTransitionEnd');\n if (dir === 'next') {\n swiper.emit('slideNextTransitionEnd');\n } else {\n swiper.emit('slidePrevTransitionEnd');\n }\n }\n }\n\n var transition$1 = {\n setTransition: setTransition,\n transitionStart: transitionStart,\n transitionEnd: transitionEnd$1,\n };\n\n function slideTo (index, speed, runCallbacks, internal) {\n if ( index === void 0 ) index = 0;\n if ( speed === void 0 ) speed = this.params.speed;\n if ( runCallbacks === void 0 ) runCallbacks = true;\n\n var swiper = this;\n var slideIndex = index;\n if (slideIndex < 0) { slideIndex = 0; }\n\n var params = swiper.params;\n var snapGrid = swiper.snapGrid;\n var slidesGrid = swiper.slidesGrid;\n var previousIndex = swiper.previousIndex;\n var activeIndex = swiper.activeIndex;\n var rtl = swiper.rtlTranslate;\n if (swiper.animating && params.preventInteractionOnTransition) {\n return false;\n }\n\n var snapIndex = Math.floor(slideIndex / params.slidesPerGroup);\n if (snapIndex >= snapGrid.length) { snapIndex = snapGrid.length - 1; }\n\n if ((activeIndex || params.initialSlide || 0) === (previousIndex || 0) && runCallbacks) {\n swiper.emit('beforeSlideChangeStart');\n }\n\n var translate = -snapGrid[snapIndex];\n\n // Update progress\n swiper.updateProgress(translate);\n\n // Normalize slideIndex\n if (params.normalizeSlideIndex) {\n for (var i = 0; i < slidesGrid.length; i += 1) {\n if (-Math.floor(translate * 100) >= Math.floor(slidesGrid[i] * 100)) {\n slideIndex = i;\n }\n }\n }\n // Directions locks\n if (swiper.initialized && slideIndex !== activeIndex) {\n if (!swiper.allowSlideNext && translate < swiper.translate && translate < swiper.minTranslate()) {\n return false;\n }\n if (!swiper.allowSlidePrev && translate > swiper.translate && translate > swiper.maxTranslate()) {\n if ((activeIndex || 0) !== slideIndex) { return false; }\n }\n }\n\n var direction;\n if (slideIndex > activeIndex) { direction = 'next'; }\n else if (slideIndex < activeIndex) { direction = 'prev'; }\n else { direction = 'reset'; }\n\n\n // Update Index\n if ((rtl && -translate === swiper.translate) || (!rtl && translate === swiper.translate)) {\n swiper.updateActiveIndex(slideIndex);\n // Update Height\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n swiper.updateSlidesClasses();\n if (params.effect !== 'slide') {\n swiper.setTranslate(translate);\n }\n if (direction !== 'reset') {\n swiper.transitionStart(runCallbacks, direction);\n swiper.transitionEnd(runCallbacks, direction);\n }\n return false;\n }\n\n if (speed === 0 || !Support.transition) {\n swiper.setTransition(0);\n swiper.setTranslate(translate);\n swiper.updateActiveIndex(slideIndex);\n swiper.updateSlidesClasses();\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.transitionStart(runCallbacks, direction);\n swiper.transitionEnd(runCallbacks, direction);\n } else {\n swiper.setTransition(speed);\n swiper.setTranslate(translate);\n swiper.updateActiveIndex(slideIndex);\n swiper.updateSlidesClasses();\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.transitionStart(runCallbacks, direction);\n if (!swiper.animating) {\n swiper.animating = true;\n if (!swiper.onSlideToWrapperTransitionEnd) {\n swiper.onSlideToWrapperTransitionEnd = function transitionEnd(e) {\n if (!swiper || swiper.destroyed) { return; }\n if (e.target !== this) { return; }\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n swiper.onSlideToWrapperTransitionEnd = null;\n delete swiper.onSlideToWrapperTransitionEnd;\n swiper.transitionEnd(runCallbacks, direction);\n };\n }\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n }\n }\n\n return true;\n }\n\n function slideToLoop (index, speed, runCallbacks, internal) {\n if ( index === void 0 ) index = 0;\n if ( speed === void 0 ) speed = this.params.speed;\n if ( runCallbacks === void 0 ) runCallbacks = true;\n\n var swiper = this;\n var newIndex = index;\n if (swiper.params.loop) {\n newIndex += swiper.loopedSlides;\n }\n\n return swiper.slideTo(newIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideNext (speed, runCallbacks, internal) {\n if ( speed === void 0 ) speed = this.params.speed;\n if ( runCallbacks === void 0 ) runCallbacks = true;\n\n var swiper = this;\n var params = swiper.params;\n var animating = swiper.animating;\n if (params.loop) {\n if (animating) { return false; }\n swiper.loopFix();\n // eslint-disable-next-line\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n return swiper.slideTo(swiper.activeIndex + params.slidesPerGroup, speed, runCallbacks, internal);\n }\n return swiper.slideTo(swiper.activeIndex + params.slidesPerGroup, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slidePrev (speed, runCallbacks, internal) {\n if ( speed === void 0 ) speed = this.params.speed;\n if ( runCallbacks === void 0 ) runCallbacks = true;\n\n var swiper = this;\n var params = swiper.params;\n var animating = swiper.animating;\n var snapGrid = swiper.snapGrid;\n var slidesGrid = swiper.slidesGrid;\n var rtlTranslate = swiper.rtlTranslate;\n\n if (params.loop) {\n if (animating) { return false; }\n swiper.loopFix();\n // eslint-disable-next-line\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n }\n var translate = rtlTranslate ? swiper.translate : -swiper.translate;\n function normalize(val) {\n if (val < 0) { return -Math.floor(Math.abs(val)); }\n return Math.floor(val);\n }\n var normalizedTranslate = normalize(translate);\n var normalizedSnapGrid = snapGrid.map(function (val) { return normalize(val); });\n var normalizedSlidesGrid = slidesGrid.map(function (val) { return normalize(val); });\n\n var currentSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate)];\n var prevSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate) - 1];\n var prevIndex;\n if (typeof prevSnap !== 'undefined') {\n prevIndex = slidesGrid.indexOf(prevSnap);\n if (prevIndex < 0) { prevIndex = swiper.activeIndex - 1; }\n }\n return swiper.slideTo(prevIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideReset (speed, runCallbacks, internal) {\n if ( speed === void 0 ) speed = this.params.speed;\n if ( runCallbacks === void 0 ) runCallbacks = true;\n\n var swiper = this;\n return swiper.slideTo(swiper.activeIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideToClosest (speed, runCallbacks, internal) {\n if ( speed === void 0 ) speed = this.params.speed;\n if ( runCallbacks === void 0 ) runCallbacks = true;\n\n var swiper = this;\n var index = swiper.activeIndex;\n var snapIndex = Math.floor(index / swiper.params.slidesPerGroup);\n\n if (snapIndex < swiper.snapGrid.length - 1) {\n var translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n\n var currentSnap = swiper.snapGrid[snapIndex];\n var nextSnap = swiper.snapGrid[snapIndex + 1];\n\n if ((translate - currentSnap) > (nextSnap - currentSnap) / 2) {\n index = swiper.params.slidesPerGroup;\n }\n }\n\n return swiper.slideTo(index, speed, runCallbacks, internal);\n }\n\n function slideToClickedSlide () {\n var swiper = this;\n var params = swiper.params;\n var $wrapperEl = swiper.$wrapperEl;\n\n var slidesPerView = params.slidesPerView === 'auto' ? swiper.slidesPerViewDynamic() : params.slidesPerView;\n var slideToIndex = swiper.clickedIndex;\n var realIndex;\n if (params.loop) {\n if (swiper.animating) { return; }\n realIndex = parseInt($(swiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n if (params.centeredSlides) {\n if (\n (slideToIndex < swiper.loopedSlides - (slidesPerView / 2))\n || (slideToIndex > (swiper.slides.length - swiper.loopedSlides) + (slidesPerView / 2))\n ) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children((\".\" + (params.slideClass) + \"[data-swiper-slide-index=\\\"\" + realIndex + \"\\\"]:not(.\" + (params.slideDuplicateClass) + \")\"))\n .eq(0)\n .index();\n\n Utils.nextTick(function () {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else if (slideToIndex > swiper.slides.length - slidesPerView) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children((\".\" + (params.slideClass) + \"[data-swiper-slide-index=\\\"\" + realIndex + \"\\\"]:not(.\" + (params.slideDuplicateClass) + \")\"))\n .eq(0)\n .index();\n\n Utils.nextTick(function () {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else {\n swiper.slideTo(slideToIndex);\n }\n }\n\n var slide = {\n slideTo: slideTo,\n slideToLoop: slideToLoop,\n slideNext: slideNext,\n slidePrev: slidePrev,\n slideReset: slideReset,\n slideToClosest: slideToClosest,\n slideToClickedSlide: slideToClickedSlide,\n };\n\n function loopCreate () {\n var swiper = this;\n var params = swiper.params;\n var $wrapperEl = swiper.$wrapperEl;\n // Remove duplicated slides\n $wrapperEl.children((\".\" + (params.slideClass) + \".\" + (params.slideDuplicateClass))).remove();\n\n var slides = $wrapperEl.children((\".\" + (params.slideClass)));\n\n if (params.loopFillGroupWithBlank) {\n var blankSlidesNum = params.slidesPerGroup - (slides.length % params.slidesPerGroup);\n if (blankSlidesNum !== params.slidesPerGroup) {\n for (var i = 0; i < blankSlidesNum; i += 1) {\n var blankNode = $(doc.createElement('div')).addClass(((params.slideClass) + \" \" + (params.slideBlankClass)));\n $wrapperEl.append(blankNode);\n }\n slides = $wrapperEl.children((\".\" + (params.slideClass)));\n }\n }\n\n if (params.slidesPerView === 'auto' && !params.loopedSlides) { params.loopedSlides = slides.length; }\n\n swiper.loopedSlides = parseInt(params.loopedSlides || params.slidesPerView, 10);\n swiper.loopedSlides += params.loopAdditionalSlides;\n if (swiper.loopedSlides > slides.length) {\n swiper.loopedSlides = slides.length;\n }\n\n var prependSlides = [];\n var appendSlides = [];\n slides.each(function (index, el) {\n var slide = $(el);\n if (index < swiper.loopedSlides) { appendSlides.push(el); }\n if (index < slides.length && index >= slides.length - swiper.loopedSlides) { prependSlides.push(el); }\n slide.attr('data-swiper-slide-index', index);\n });\n for (var i$1 = 0; i$1 < appendSlides.length; i$1 += 1) {\n $wrapperEl.append($(appendSlides[i$1].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n for (var i$2 = prependSlides.length - 1; i$2 >= 0; i$2 -= 1) {\n $wrapperEl.prepend($(prependSlides[i$2].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n }\n\n function loopFix () {\n var swiper = this;\n var params = swiper.params;\n var activeIndex = swiper.activeIndex;\n var slides = swiper.slides;\n var loopedSlides = swiper.loopedSlides;\n var allowSlidePrev = swiper.allowSlidePrev;\n var allowSlideNext = swiper.allowSlideNext;\n var snapGrid = swiper.snapGrid;\n var rtl = swiper.rtlTranslate;\n var newIndex;\n swiper.allowSlidePrev = true;\n swiper.allowSlideNext = true;\n\n var snapTranslate = -snapGrid[activeIndex];\n var diff = snapTranslate - swiper.getTranslate();\n\n\n // Fix For Negative Oversliding\n if (activeIndex < loopedSlides) {\n newIndex = (slides.length - (loopedSlides * 3)) + activeIndex;\n newIndex += loopedSlides;\n var slideChanged = swiper.slideTo(newIndex, 0, false, true);\n if (slideChanged && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n } else if ((params.slidesPerView === 'auto' && activeIndex >= loopedSlides * 2) || (activeIndex >= slides.length - loopedSlides)) {\n // Fix For Positive Oversliding\n newIndex = -slides.length + activeIndex + loopedSlides;\n newIndex += loopedSlides;\n var slideChanged$1 = swiper.slideTo(newIndex, 0, false, true);\n if (slideChanged$1 && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n }\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n }\n\n function loopDestroy () {\n var swiper = this;\n var $wrapperEl = swiper.$wrapperEl;\n var params = swiper.params;\n var slides = swiper.slides;\n $wrapperEl.children((\".\" + (params.slideClass) + \".\" + (params.slideDuplicateClass) + \",.\" + (params.slideClass) + \".\" + (params.slideBlankClass))).remove();\n slides.removeAttr('data-swiper-slide-index');\n }\n\n var loop = {\n loopCreate: loopCreate,\n loopFix: loopFix,\n loopDestroy: loopDestroy,\n };\n\n function setGrabCursor (moving) {\n var swiper = this;\n if (Support.touch || !swiper.params.simulateTouch || (swiper.params.watchOverflow && swiper.isLocked)) { return; }\n var el = swiper.el;\n el.style.cursor = 'move';\n el.style.cursor = moving ? '-webkit-grabbing' : '-webkit-grab';\n el.style.cursor = moving ? '-moz-grabbin' : '-moz-grab';\n el.style.cursor = moving ? 'grabbing' : 'grab';\n }\n\n function unsetGrabCursor () {\n var swiper = this;\n if (Support.touch || (swiper.params.watchOverflow && swiper.isLocked)) { return; }\n swiper.el.style.cursor = '';\n }\n\n var grabCursor = {\n setGrabCursor: setGrabCursor,\n unsetGrabCursor: unsetGrabCursor,\n };\n\n function appendSlide (slides) {\n var swiper = this;\n var $wrapperEl = swiper.$wrapperEl;\n var params = swiper.params;\n if (params.loop) {\n swiper.loopDestroy();\n }\n if (typeof slides === 'object' && 'length' in slides) {\n for (var i = 0; i < slides.length; i += 1) {\n if (slides[i]) { $wrapperEl.append(slides[i]); }\n }\n } else {\n $wrapperEl.append(slides);\n }\n if (params.loop) {\n swiper.loopCreate();\n }\n if (!(params.observer && Support.observer)) {\n swiper.update();\n }\n }\n\n function prependSlide (slides) {\n var swiper = this;\n var params = swiper.params;\n var $wrapperEl = swiper.$wrapperEl;\n var activeIndex = swiper.activeIndex;\n\n if (params.loop) {\n swiper.loopDestroy();\n }\n var newActiveIndex = activeIndex + 1;\n if (typeof slides === 'object' && 'length' in slides) {\n for (var i = 0; i < slides.length; i += 1) {\n if (slides[i]) { $wrapperEl.prepend(slides[i]); }\n }\n newActiveIndex = activeIndex + slides.length;\n } else {\n $wrapperEl.prepend(slides);\n }\n if (params.loop) {\n swiper.loopCreate();\n }\n if (!(params.observer && Support.observer)) {\n swiper.update();\n }\n swiper.slideTo(newActiveIndex, 0, false);\n }\n\n function addSlide (index, slides) {\n var swiper = this;\n var $wrapperEl = swiper.$wrapperEl;\n var params = swiper.params;\n var activeIndex = swiper.activeIndex;\n var activeIndexBuffer = activeIndex;\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children((\".\" + (params.slideClass)));\n }\n var baseLength = swiper.slides.length;\n if (index <= 0) {\n swiper.prependSlide(slides);\n return;\n }\n if (index >= baseLength) {\n swiper.appendSlide(slides);\n return;\n }\n var newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + 1 : activeIndexBuffer;\n\n var slidesBuffer = [];\n for (var i = baseLength - 1; i >= index; i -= 1) {\n var currentSlide = swiper.slides.eq(i);\n currentSlide.remove();\n slidesBuffer.unshift(currentSlide);\n }\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (var i$1 = 0; i$1 < slides.length; i$1 += 1) {\n if (slides[i$1]) { $wrapperEl.append(slides[i$1]); }\n }\n newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + slides.length : activeIndexBuffer;\n } else {\n $wrapperEl.append(slides);\n }\n\n for (var i$2 = 0; i$2 < slidesBuffer.length; i$2 += 1) {\n $wrapperEl.append(slidesBuffer[i$2]);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n if (!(params.observer && Support.observer)) {\n swiper.update();\n }\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n }\n\n function removeSlide (slidesIndexes) {\n var swiper = this;\n var params = swiper.params;\n var $wrapperEl = swiper.$wrapperEl;\n var activeIndex = swiper.activeIndex;\n\n var activeIndexBuffer = activeIndex;\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children((\".\" + (params.slideClass)));\n }\n var newActiveIndex = activeIndexBuffer;\n var indexToRemove;\n\n if (typeof slidesIndexes === 'object' && 'length' in slidesIndexes) {\n for (var i = 0; i < slidesIndexes.length; i += 1) {\n indexToRemove = slidesIndexes[i];\n if (swiper.slides[indexToRemove]) { swiper.slides.eq(indexToRemove).remove(); }\n if (indexToRemove < newActiveIndex) { newActiveIndex -= 1; }\n }\n newActiveIndex = Math.max(newActiveIndex, 0);\n } else {\n indexToRemove = slidesIndexes;\n if (swiper.slides[indexToRemove]) { swiper.slides.eq(indexToRemove).remove(); }\n if (indexToRemove < newActiveIndex) { newActiveIndex -= 1; }\n newActiveIndex = Math.max(newActiveIndex, 0);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!(params.observer && Support.observer)) {\n swiper.update();\n }\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n }\n\n function removeAllSlides () {\n var swiper = this;\n\n var slidesIndexes = [];\n for (var i = 0; i < swiper.slides.length; i += 1) {\n slidesIndexes.push(i);\n }\n swiper.removeSlide(slidesIndexes);\n }\n\n var manipulation = {\n appendSlide: appendSlide,\n prependSlide: prependSlide,\n addSlide: addSlide,\n removeSlide: removeSlide,\n removeAllSlides: removeAllSlides,\n };\n\n var Device = (function Device() {\n var ua = win.navigator.userAgent;\n\n var device = {\n ios: false,\n android: false,\n androidChrome: false,\n desktop: false,\n windows: false,\n iphone: false,\n ipod: false,\n ipad: false,\n cordova: win.cordova || win.phonegap,\n phonegap: win.cordova || win.phonegap,\n };\n\n var windows = ua.match(/(Windows Phone);?[\\s\\/]+([\\d.]+)?/); // eslint-disable-line\n var android = ua.match(/(Android);?[\\s\\/]+([\\d.]+)?/); // eslint-disable-line\n var ipad = ua.match(/(iPad).*OS\\s([\\d_]+)/);\n var ipod = ua.match(/(iPod)(.*OS\\s([\\d_]+))?/);\n var iphone = !ipad && ua.match(/(iPhone\\sOS|iOS)\\s([\\d_]+)/);\n\n\n // Windows\n if (windows) {\n device.os = 'windows';\n device.osVersion = windows[2];\n device.windows = true;\n }\n // Android\n if (android && !windows) {\n device.os = 'android';\n device.osVersion = android[2];\n device.android = true;\n device.androidChrome = ua.toLowerCase().indexOf('chrome') >= 0;\n }\n if (ipad || iphone || ipod) {\n device.os = 'ios';\n device.ios = true;\n }\n // iOS\n if (iphone && !ipod) {\n device.osVersion = iphone[2].replace(/_/g, '.');\n device.iphone = true;\n }\n if (ipad) {\n device.osVersion = ipad[2].replace(/_/g, '.');\n device.ipad = true;\n }\n if (ipod) {\n device.osVersion = ipod[3] ? ipod[3].replace(/_/g, '.') : null;\n device.iphone = true;\n }\n // iOS 8+ changed UA\n if (device.ios && device.osVersion && ua.indexOf('Version/') >= 0) {\n if (device.osVersion.split('.')[0] === '10') {\n device.osVersion = ua.toLowerCase().split('version/')[1].split(' ')[0];\n }\n }\n\n // Desktop\n device.desktop = !(device.os || device.android || device.webView);\n\n // Webview\n device.webView = (iphone || ipad || ipod) && ua.match(/.*AppleWebKit(?!.*Safari)/i);\n\n // Minimal UI\n if (device.os && device.os === 'ios') {\n var osVersionArr = device.osVersion.split('.');\n var metaViewport = doc.querySelector('meta[name=\"viewport\"]');\n device.minimalUi = !device.webView\n && (ipod || iphone)\n && (osVersionArr[0] * 1 === 7 ? osVersionArr[1] * 1 >= 1 : osVersionArr[0] * 1 > 7)\n && metaViewport && metaViewport.getAttribute('content').indexOf('minimal-ui') >= 0;\n }\n\n // Pixel Ratio\n device.pixelRatio = win.devicePixelRatio || 1;\n\n // Export object\n return device;\n }());\n\n function onTouchStart (event) {\n var swiper = this;\n var data = swiper.touchEventsData;\n var params = swiper.params;\n var touches = swiper.touches;\n if (swiper.animating && params.preventInteractionOnTransition) {\n return;\n }\n var e = event;\n if (e.originalEvent) { e = e.originalEvent; }\n data.isTouchEvent = e.type === 'touchstart';\n if (!data.isTouchEvent && 'which' in e && e.which === 3) { return; }\n if (!data.isTouchEvent && 'button' in e && e.button > 0) { return; }\n if (data.isTouched && data.isMoved) { return; }\n if (params.noSwiping && $(e.target).closest(params.noSwipingSelector ? params.noSwipingSelector : (\".\" + (params.noSwipingClass)))[0]) {\n swiper.allowClick = true;\n return;\n }\n if (params.swipeHandler) {\n if (!$(e).closest(params.swipeHandler)[0]) { return; }\n }\n\n touches.currentX = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n touches.currentY = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n var startX = touches.currentX;\n var startY = touches.currentY;\n\n // Do NOT start if iOS edge swipe is detected. Otherwise iOS app (UIWebView) cannot swipe-to-go-back anymore\n\n var edgeSwipeDetection = params.edgeSwipeDetection || params.iOSEdgeSwipeDetection;\n var edgeSwipeThreshold = params.edgeSwipeThreshold || params.iOSEdgeSwipeThreshold;\n if (\n edgeSwipeDetection\n && ((startX <= edgeSwipeThreshold)\n || (startX >= win.screen.width - edgeSwipeThreshold))\n ) {\n return;\n }\n\n Utils.extend(data, {\n isTouched: true,\n isMoved: false,\n allowTouchCallbacks: true,\n isScrolling: undefined,\n startMoving: undefined,\n });\n\n touches.startX = startX;\n touches.startY = startY;\n data.touchStartTime = Utils.now();\n swiper.allowClick = true;\n swiper.updateSize();\n swiper.swipeDirection = undefined;\n if (params.threshold > 0) { data.allowThresholdMove = false; }\n if (e.type !== 'touchstart') {\n var preventDefault = true;\n if ($(e.target).is(data.formElements)) { preventDefault = false; }\n if (\n doc.activeElement\n && $(doc.activeElement).is(data.formElements)\n && doc.activeElement !== e.target\n ) {\n doc.activeElement.blur();\n }\n\n var shouldPreventDefault = preventDefault && swiper.allowTouchMove && params.touchStartPreventDefault;\n if (params.touchStartForcePreventDefault || shouldPreventDefault) {\n e.preventDefault();\n }\n }\n swiper.emit('touchStart', e);\n }\n\n function onTouchMove (event) {\n var swiper = this;\n var data = swiper.touchEventsData;\n var params = swiper.params;\n var touches = swiper.touches;\n var rtl = swiper.rtlTranslate;\n var e = event;\n if (e.originalEvent) { e = e.originalEvent; }\n if (!data.isTouched) {\n if (data.startMoving && data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n return;\n }\n if (data.isTouchEvent && e.type === 'mousemove') { return; }\n var pageX = e.type === 'touchmove' ? e.targetTouches[0].pageX : e.pageX;\n var pageY = e.type === 'touchmove' ? e.targetTouches[0].pageY : e.pageY;\n if (e.preventedByNestedSwiper) {\n touches.startX = pageX;\n touches.startY = pageY;\n return;\n }\n if (!swiper.allowTouchMove) {\n // isMoved = true;\n swiper.allowClick = false;\n if (data.isTouched) {\n Utils.extend(touches, {\n startX: pageX,\n startY: pageY,\n currentX: pageX,\n currentY: pageY,\n });\n data.touchStartTime = Utils.now();\n }\n return;\n }\n if (data.isTouchEvent && params.touchReleaseOnEdges && !params.loop) {\n if (swiper.isVertical()) {\n // Vertical\n if (\n (pageY < touches.startY && swiper.translate <= swiper.maxTranslate())\n || (pageY > touches.startY && swiper.translate >= swiper.minTranslate())\n ) {\n data.isTouched = false;\n data.isMoved = false;\n return;\n }\n } else if (\n (pageX < touches.startX && swiper.translate <= swiper.maxTranslate())\n || (pageX > touches.startX && swiper.translate >= swiper.minTranslate())\n ) {\n return;\n }\n }\n if (data.isTouchEvent && doc.activeElement) {\n if (e.target === doc.activeElement && $(e.target).is(data.formElements)) {\n data.isMoved = true;\n swiper.allowClick = false;\n return;\n }\n }\n if (data.allowTouchCallbacks) {\n swiper.emit('touchMove', e);\n }\n if (e.targetTouches && e.targetTouches.length > 1) { return; }\n\n touches.currentX = pageX;\n touches.currentY = pageY;\n\n var diffX = touches.currentX - touches.startX;\n var diffY = touches.currentY - touches.startY;\n if (swiper.params.threshold && Math.sqrt((Math.pow( diffX, 2 )) + (Math.pow( diffY, 2 ))) < swiper.params.threshold) { return; }\n\n if (typeof data.isScrolling === 'undefined') {\n var touchAngle;\n if ((swiper.isHorizontal() && touches.currentY === touches.startY) || (swiper.isVertical() && touches.currentX === touches.startX)) {\n data.isScrolling = false;\n } else {\n // eslint-disable-next-line\n if ((diffX * diffX) + (diffY * diffY) >= 25) {\n touchAngle = (Math.atan2(Math.abs(diffY), Math.abs(diffX)) * 180) / Math.PI;\n data.isScrolling = swiper.isHorizontal() ? touchAngle > params.touchAngle : (90 - touchAngle > params.touchAngle);\n }\n }\n }\n if (data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n if (typeof data.startMoving === 'undefined') {\n if (touches.currentX !== touches.startX || touches.currentY !== touches.startY) {\n data.startMoving = true;\n }\n }\n if (data.isScrolling) {\n data.isTouched = false;\n return;\n }\n if (!data.startMoving) {\n return;\n }\n swiper.allowClick = false;\n e.preventDefault();\n if (params.touchMoveStopPropagation && !params.nested) {\n e.stopPropagation();\n }\n\n if (!data.isMoved) {\n if (params.loop) {\n swiper.loopFix();\n }\n data.startTranslate = swiper.getTranslate();\n swiper.setTransition(0);\n if (swiper.animating) {\n swiper.$wrapperEl.trigger('webkitTransitionEnd transitionend');\n }\n data.allowMomentumBounce = false;\n // Grab Cursor\n if (params.grabCursor && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {\n swiper.setGrabCursor(true);\n }\n swiper.emit('sliderFirstMove', e);\n }\n swiper.emit('sliderMove', e);\n data.isMoved = true;\n\n var diff = swiper.isHorizontal() ? diffX : diffY;\n touches.diff = diff;\n\n diff *= params.touchRatio;\n if (rtl) { diff = -diff; }\n\n swiper.swipeDirection = diff > 0 ? 'prev' : 'next';\n data.currentTranslate = diff + data.startTranslate;\n\n var disableParentSwiper = true;\n var resistanceRatio = params.resistanceRatio;\n if (params.touchReleaseOnEdges) {\n resistanceRatio = 0;\n }\n if ((diff > 0 && data.currentTranslate > swiper.minTranslate())) {\n disableParentSwiper = false;\n if (params.resistance) { data.currentTranslate = (swiper.minTranslate() - 1) + (Math.pow( (-swiper.minTranslate() + data.startTranslate + diff), resistanceRatio )); }\n } else if (diff < 0 && data.currentTranslate < swiper.maxTranslate()) {\n disableParentSwiper = false;\n if (params.resistance) { data.currentTranslate = (swiper.maxTranslate() + 1) - (Math.pow( (swiper.maxTranslate() - data.startTranslate - diff), resistanceRatio )); }\n }\n\n if (disableParentSwiper) {\n e.preventedByNestedSwiper = true;\n }\n\n // Directions locks\n if (!swiper.allowSlideNext && swiper.swipeDirection === 'next' && data.currentTranslate < data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n if (!swiper.allowSlidePrev && swiper.swipeDirection === 'prev' && data.currentTranslate > data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n\n\n // Threshold\n if (params.threshold > 0) {\n if (Math.abs(diff) > params.threshold || data.allowThresholdMove) {\n if (!data.allowThresholdMove) {\n data.allowThresholdMove = true;\n touches.startX = touches.currentX;\n touches.startY = touches.currentY;\n data.currentTranslate = data.startTranslate;\n touches.diff = swiper.isHorizontal() ? touches.currentX - touches.startX : touches.currentY - touches.startY;\n return;\n }\n } else {\n data.currentTranslate = data.startTranslate;\n return;\n }\n }\n\n if (!params.followFinger) { return; }\n\n // Update active index in free mode\n if (params.freeMode || params.watchSlidesProgress || params.watchSlidesVisibility) {\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n if (params.freeMode) {\n // Velocity\n if (data.velocities.length === 0) {\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'startX' : 'startY'],\n time: data.touchStartTime,\n });\n }\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'currentX' : 'currentY'],\n time: Utils.now(),\n });\n }\n // Update progress\n swiper.updateProgress(data.currentTranslate);\n // Update translate\n swiper.setTranslate(data.currentTranslate);\n }\n\n function onTouchEnd (event) {\n var swiper = this;\n var data = swiper.touchEventsData;\n\n var params = swiper.params;\n var touches = swiper.touches;\n var rtl = swiper.rtlTranslate;\n var $wrapperEl = swiper.$wrapperEl;\n var slidesGrid = swiper.slidesGrid;\n var snapGrid = swiper.snapGrid;\n var e = event;\n if (e.originalEvent) { e = e.originalEvent; }\n if (data.allowTouchCallbacks) {\n swiper.emit('touchEnd', e);\n }\n data.allowTouchCallbacks = false;\n if (!data.isTouched) {\n if (data.isMoved && params.grabCursor) {\n swiper.setGrabCursor(false);\n }\n data.isMoved = false;\n data.startMoving = false;\n return;\n }\n // Return Grab Cursor\n if (params.grabCursor && data.isMoved && data.isTouched && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {\n swiper.setGrabCursor(false);\n }\n\n // Time diff\n var touchEndTime = Utils.now();\n var timeDiff = touchEndTime - data.touchStartTime;\n\n // Tap, doubleTap, Click\n if (swiper.allowClick) {\n swiper.updateClickedSlide(e);\n swiper.emit('tap', e);\n if (timeDiff < 300 && (touchEndTime - data.lastClickTime) > 300) {\n if (data.clickTimeout) { clearTimeout(data.clickTimeout); }\n data.clickTimeout = Utils.nextTick(function () {\n if (!swiper || swiper.destroyed) { return; }\n swiper.emit('click', e);\n }, 300);\n }\n if (timeDiff < 300 && (touchEndTime - data.lastClickTime) < 300) {\n if (data.clickTimeout) { clearTimeout(data.clickTimeout); }\n swiper.emit('doubleTap', e);\n }\n }\n\n data.lastClickTime = Utils.now();\n Utils.nextTick(function () {\n if (!swiper.destroyed) { swiper.allowClick = true; }\n });\n\n if (!data.isTouched || !data.isMoved || !swiper.swipeDirection || touches.diff === 0 || data.currentTranslate === data.startTranslate) {\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n return;\n }\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n\n var currentPos;\n if (params.followFinger) {\n currentPos = rtl ? swiper.translate : -swiper.translate;\n } else {\n currentPos = -data.currentTranslate;\n }\n\n if (params.freeMode) {\n if (currentPos < -swiper.minTranslate()) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n if (currentPos > -swiper.maxTranslate()) {\n if (swiper.slides.length < snapGrid.length) {\n swiper.slideTo(snapGrid.length - 1);\n } else {\n swiper.slideTo(swiper.slides.length - 1);\n }\n return;\n }\n\n if (params.freeModeMomentum) {\n if (data.velocities.length > 1) {\n var lastMoveEvent = data.velocities.pop();\n var velocityEvent = data.velocities.pop();\n\n var distance = lastMoveEvent.position - velocityEvent.position;\n var time = lastMoveEvent.time - velocityEvent.time;\n swiper.velocity = distance / time;\n swiper.velocity /= 2;\n if (Math.abs(swiper.velocity) < params.freeModeMinimumVelocity) {\n swiper.velocity = 0;\n }\n // this implies that the user stopped moving a finger then released.\n // There would be no events with distance zero, so the last event is stale.\n if (time > 150 || (Utils.now() - lastMoveEvent.time) > 300) {\n swiper.velocity = 0;\n }\n } else {\n swiper.velocity = 0;\n }\n swiper.velocity *= params.freeModeMomentumVelocityRatio;\n\n data.velocities.length = 0;\n var momentumDuration = 1000 * params.freeModeMomentumRatio;\n var momentumDistance = swiper.velocity * momentumDuration;\n\n var newPosition = swiper.translate + momentumDistance;\n if (rtl) { newPosition = -newPosition; }\n\n var doBounce = false;\n var afterBouncePosition;\n var bounceAmount = Math.abs(swiper.velocity) * 20 * params.freeModeMomentumBounceRatio;\n var needsLoopFix;\n if (newPosition < swiper.maxTranslate()) {\n if (params.freeModeMomentumBounce) {\n if (newPosition + swiper.maxTranslate() < -bounceAmount) {\n newPosition = swiper.maxTranslate() - bounceAmount;\n }\n afterBouncePosition = swiper.maxTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.maxTranslate();\n }\n if (params.loop && params.centeredSlides) { needsLoopFix = true; }\n } else if (newPosition > swiper.minTranslate()) {\n if (params.freeModeMomentumBounce) {\n if (newPosition - swiper.minTranslate() > bounceAmount) {\n newPosition = swiper.minTranslate() + bounceAmount;\n }\n afterBouncePosition = swiper.minTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.minTranslate();\n }\n if (params.loop && params.centeredSlides) { needsLoopFix = true; }\n } else if (params.freeModeSticky) {\n var nextSlide;\n for (var j = 0; j < snapGrid.length; j += 1) {\n if (snapGrid[j] > -newPosition) {\n nextSlide = j;\n break;\n }\n }\n\n if (Math.abs(snapGrid[nextSlide] - newPosition) < Math.abs(snapGrid[nextSlide - 1] - newPosition) || swiper.swipeDirection === 'next') {\n newPosition = snapGrid[nextSlide];\n } else {\n newPosition = snapGrid[nextSlide - 1];\n }\n newPosition = -newPosition;\n }\n if (needsLoopFix) {\n swiper.once('transitionEnd', function () {\n swiper.loopFix();\n });\n }\n // Fix duration\n if (swiper.velocity !== 0) {\n if (rtl) {\n momentumDuration = Math.abs((-newPosition - swiper.translate) / swiper.velocity);\n } else {\n momentumDuration = Math.abs((newPosition - swiper.translate) / swiper.velocity);\n }\n } else if (params.freeModeSticky) {\n swiper.slideToClosest();\n return;\n }\n\n if (params.freeModeMomentumBounce && doBounce) {\n swiper.updateProgress(afterBouncePosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n swiper.animating = true;\n $wrapperEl.transitionEnd(function () {\n if (!swiper || swiper.destroyed || !data.allowMomentumBounce) { return; }\n swiper.emit('momentumBounce');\n\n swiper.setTransition(params.speed);\n swiper.setTranslate(afterBouncePosition);\n $wrapperEl.transitionEnd(function () {\n if (!swiper || swiper.destroyed) { return; }\n swiper.transitionEnd();\n });\n });\n } else if (swiper.velocity) {\n swiper.updateProgress(newPosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n if (!swiper.animating) {\n swiper.animating = true;\n $wrapperEl.transitionEnd(function () {\n if (!swiper || swiper.destroyed) { return; }\n swiper.transitionEnd();\n });\n }\n } else {\n swiper.updateProgress(newPosition);\n }\n\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n } else if (params.freeModeSticky) {\n swiper.slideToClosest();\n return;\n }\n\n if (!params.freeModeMomentum || timeDiff >= params.longSwipesMs) {\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n return;\n }\n\n // Find current slide\n var stopIndex = 0;\n var groupSize = swiper.slidesSizesGrid[0];\n for (var i = 0; i < slidesGrid.length; i += params.slidesPerGroup) {\n if (typeof slidesGrid[i + params.slidesPerGroup] !== 'undefined') {\n if (currentPos >= slidesGrid[i] && currentPos < slidesGrid[i + params.slidesPerGroup]) {\n stopIndex = i;\n groupSize = slidesGrid[i + params.slidesPerGroup] - slidesGrid[i];\n }\n } else if (currentPos >= slidesGrid[i]) {\n stopIndex = i;\n groupSize = slidesGrid[slidesGrid.length - 1] - slidesGrid[slidesGrid.length - 2];\n }\n }\n\n // Find current slide size\n var ratio = (currentPos - slidesGrid[stopIndex]) / groupSize;\n\n if (timeDiff > params.longSwipesMs) {\n // Long touches\n if (!params.longSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n if (swiper.swipeDirection === 'next') {\n if (ratio >= params.longSwipesRatio) { swiper.slideTo(stopIndex + params.slidesPerGroup); }\n else { swiper.slideTo(stopIndex); }\n }\n if (swiper.swipeDirection === 'prev') {\n if (ratio > (1 - params.longSwipesRatio)) { swiper.slideTo(stopIndex + params.slidesPerGroup); }\n else { swiper.slideTo(stopIndex); }\n }\n } else {\n // Short swipes\n if (!params.shortSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n if (swiper.swipeDirection === 'next') {\n swiper.slideTo(stopIndex + params.slidesPerGroup);\n }\n if (swiper.swipeDirection === 'prev') {\n swiper.slideTo(stopIndex);\n }\n }\n }\n\n function onResize () {\n var swiper = this;\n\n var params = swiper.params;\n var el = swiper.el;\n\n if (el && el.offsetWidth === 0) { return; }\n\n // Breakpoints\n if (params.breakpoints) {\n swiper.setBreakpoint();\n }\n\n // Save locks\n var allowSlideNext = swiper.allowSlideNext;\n var allowSlidePrev = swiper.allowSlidePrev;\n var snapGrid = swiper.snapGrid;\n\n // Disable locks on resize\n swiper.allowSlideNext = true;\n swiper.allowSlidePrev = true;\n\n swiper.updateSize();\n swiper.updateSlides();\n\n if (params.freeMode) {\n var newTranslate = Math.min(Math.max(swiper.translate, swiper.maxTranslate()), swiper.minTranslate());\n swiper.setTranslate(newTranslate);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n } else {\n swiper.updateSlidesClasses();\n if ((params.slidesPerView === 'auto' || params.slidesPerView > 1) && swiper.isEnd && !swiper.params.centeredSlides) {\n swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n }\n if (swiper.autoplay && swiper.autoplay.running && swiper.autoplay.paused) {\n swiper.autoplay.run();\n }\n // Return locks after resize\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n\n if (swiper.params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n }\n\n function onClick (e) {\n var swiper = this;\n if (!swiper.allowClick) {\n if (swiper.params.preventClicks) { e.preventDefault(); }\n if (swiper.params.preventClicksPropagation && swiper.animating) {\n e.stopPropagation();\n e.stopImmediatePropagation();\n }\n }\n }\n\n function attachEvents() {\n var swiper = this;\n var params = swiper.params;\n var touchEvents = swiper.touchEvents;\n var el = swiper.el;\n var wrapperEl = swiper.wrapperEl;\n\n {\n swiper.onTouchStart = onTouchStart.bind(swiper);\n swiper.onTouchMove = onTouchMove.bind(swiper);\n swiper.onTouchEnd = onTouchEnd.bind(swiper);\n }\n\n swiper.onClick = onClick.bind(swiper);\n\n var target = params.touchEventsTarget === 'container' ? el : wrapperEl;\n var capture = !!params.nested;\n\n // Touch Events\n {\n if (!Support.touch && (Support.pointerEvents || Support.prefixedPointerEvents)) {\n target.addEventListener(touchEvents.start, swiper.onTouchStart, false);\n doc.addEventListener(touchEvents.move, swiper.onTouchMove, capture);\n doc.addEventListener(touchEvents.end, swiper.onTouchEnd, false);\n } else {\n if (Support.touch) {\n var passiveListener = touchEvents.start === 'touchstart' && Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;\n target.addEventListener(touchEvents.start, swiper.onTouchStart, passiveListener);\n target.addEventListener(touchEvents.move, swiper.onTouchMove, Support.passiveListener ? { passive: false, capture: capture } : capture);\n target.addEventListener(touchEvents.end, swiper.onTouchEnd, passiveListener);\n }\n if ((params.simulateTouch && !Device.ios && !Device.android) || (params.simulateTouch && !Support.touch && Device.ios)) {\n target.addEventListener('mousedown', swiper.onTouchStart, false);\n doc.addEventListener('mousemove', swiper.onTouchMove, capture);\n doc.addEventListener('mouseup', swiper.onTouchEnd, false);\n }\n }\n // Prevent Links Clicks\n if (params.preventClicks || params.preventClicksPropagation) {\n target.addEventListener('click', swiper.onClick, true);\n }\n }\n\n // Resize handler\n swiper.on((Device.ios || Device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate'), onResize, true);\n }\n\n function detachEvents() {\n var swiper = this;\n\n var params = swiper.params;\n var touchEvents = swiper.touchEvents;\n var el = swiper.el;\n var wrapperEl = swiper.wrapperEl;\n\n var target = params.touchEventsTarget === 'container' ? el : wrapperEl;\n var capture = !!params.nested;\n\n // Touch Events\n {\n if (!Support.touch && (Support.pointerEvents || Support.prefixedPointerEvents)) {\n target.removeEventListener(touchEvents.start, swiper.onTouchStart, false);\n doc.removeEventListener(touchEvents.move, swiper.onTouchMove, capture);\n doc.removeEventListener(touchEvents.end, swiper.onTouchEnd, false);\n } else {\n if (Support.touch) {\n var passiveListener = touchEvents.start === 'onTouchStart' && Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;\n target.removeEventListener(touchEvents.start, swiper.onTouchStart, passiveListener);\n target.removeEventListener(touchEvents.move, swiper.onTouchMove, capture);\n target.removeEventListener(touchEvents.end, swiper.onTouchEnd, passiveListener);\n }\n if ((params.simulateTouch && !Device.ios && !Device.android) || (params.simulateTouch && !Support.touch && Device.ios)) {\n target.removeEventListener('mousedown', swiper.onTouchStart, false);\n doc.removeEventListener('mousemove', swiper.onTouchMove, capture);\n doc.removeEventListener('mouseup', swiper.onTouchEnd, false);\n }\n }\n // Prevent Links Clicks\n if (params.preventClicks || params.preventClicksPropagation) {\n target.removeEventListener('click', swiper.onClick, true);\n }\n }\n\n // Resize handler\n swiper.off((Device.ios || Device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate'), onResize);\n }\n\n var events = {\n attachEvents: attachEvents,\n detachEvents: detachEvents,\n };\n\n function setBreakpoint () {\n var swiper = this;\n var activeIndex = swiper.activeIndex;\n var initialized = swiper.initialized;\n var loopedSlides = swiper.loopedSlides; if ( loopedSlides === void 0 ) loopedSlides = 0;\n var params = swiper.params;\n var breakpoints = params.breakpoints;\n if (!breakpoints || (breakpoints && Object.keys(breakpoints).length === 0)) { return; }\n\n // Set breakpoint for window width and update parameters\n var breakpoint = swiper.getBreakpoint(breakpoints);\n\n if (breakpoint && swiper.currentBreakpoint !== breakpoint) {\n var breakpointOnlyParams = breakpoint in breakpoints ? breakpoints[breakpoint] : undefined;\n if (breakpointOnlyParams) {\n ['slidesPerView', 'spaceBetween', 'slidesPerGroup'].forEach(function (param) {\n var paramValue = breakpointOnlyParams[param];\n if (typeof paramValue === 'undefined') { return; }\n if (param === 'slidesPerView' && (paramValue === 'AUTO' || paramValue === 'auto')) {\n breakpointOnlyParams[param] = 'auto';\n } else if (param === 'slidesPerView') {\n breakpointOnlyParams[param] = parseFloat(paramValue);\n } else {\n breakpointOnlyParams[param] = parseInt(paramValue, 10);\n }\n });\n }\n\n var breakpointParams = breakpointOnlyParams || swiper.originalParams;\n var directionChanged = breakpointParams.direction && breakpointParams.direction !== params.direction;\n var needsReLoop = params.loop && (breakpointParams.slidesPerView !== params.slidesPerView || directionChanged);\n\n if (directionChanged && initialized) {\n swiper.changeDirection();\n }\n\n Utils.extend(swiper.params, breakpointParams);\n\n Utils.extend(swiper, {\n allowTouchMove: swiper.params.allowTouchMove,\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n });\n\n swiper.currentBreakpoint = breakpoint;\n\n if (needsReLoop && initialized) {\n swiper.loopDestroy();\n swiper.loopCreate();\n swiper.updateSlides();\n swiper.slideTo((activeIndex - loopedSlides) + swiper.loopedSlides, 0, false);\n }\n\n swiper.emit('breakpoint', breakpointParams);\n }\n }\n\n function getBreakpoint (breakpoints) {\n var swiper = this;\n // Get breakpoint for window width\n if (!breakpoints) { return undefined; }\n var breakpoint = false;\n var points = [];\n Object.keys(breakpoints).forEach(function (point) {\n points.push(point);\n });\n points.sort(function (a, b) { return parseInt(a, 10) - parseInt(b, 10); });\n for (var i = 0; i < points.length; i += 1) {\n var point = points[i];\n if (swiper.params.breakpointsInverse) {\n if (point <= win.innerWidth) {\n breakpoint = point;\n }\n } else if (point >= win.innerWidth && !breakpoint) {\n breakpoint = point;\n }\n }\n return breakpoint || 'max';\n }\n\n var breakpoints = { setBreakpoint: setBreakpoint, getBreakpoint: getBreakpoint };\n\n function addClasses () {\n var swiper = this;\n var classNames = swiper.classNames;\n var params = swiper.params;\n var rtl = swiper.rtl;\n var $el = swiper.$el;\n var suffixes = [];\n\n suffixes.push('initialized');\n suffixes.push(params.direction);\n\n if (params.freeMode) {\n suffixes.push('free-mode');\n }\n if (!Support.flexbox) {\n suffixes.push('no-flexbox');\n }\n if (params.autoHeight) {\n suffixes.push('autoheight');\n }\n if (rtl) {\n suffixes.push('rtl');\n }\n if (params.slidesPerColumn > 1) {\n suffixes.push('multirow');\n }\n if (Device.android) {\n suffixes.push('android');\n }\n if (Device.ios) {\n suffixes.push('ios');\n }\n // WP8 Touch Events Fix\n if ((Browser.isIE || Browser.isEdge) && (Support.pointerEvents || Support.prefixedPointerEvents)) {\n suffixes.push((\"wp8-\" + (params.direction)));\n }\n\n suffixes.forEach(function (suffix) {\n classNames.push(params.containerModifierClass + suffix);\n });\n\n $el.addClass(classNames.join(' '));\n }\n\n function removeClasses () {\n var swiper = this;\n var $el = swiper.$el;\n var classNames = swiper.classNames;\n\n $el.removeClass(classNames.join(' '));\n }\n\n var classes = { addClasses: addClasses, removeClasses: removeClasses };\n\n function loadImage (imageEl, src, srcset, sizes, checkForComplete, callback) {\n var image;\n function onReady() {\n if (callback) { callback(); }\n }\n if (!imageEl.complete || !checkForComplete) {\n if (src) {\n image = new win.Image();\n image.onload = onReady;\n image.onerror = onReady;\n if (sizes) {\n image.sizes = sizes;\n }\n if (srcset) {\n image.srcset = srcset;\n }\n if (src) {\n image.src = src;\n }\n } else {\n onReady();\n }\n } else {\n // image already loaded...\n onReady();\n }\n }\n\n function preloadImages () {\n var swiper = this;\n swiper.imagesToLoad = swiper.$el.find('img');\n function onReady() {\n if (typeof swiper === 'undefined' || swiper === null || !swiper || swiper.destroyed) { return; }\n if (swiper.imagesLoaded !== undefined) { swiper.imagesLoaded += 1; }\n if (swiper.imagesLoaded === swiper.imagesToLoad.length) {\n if (swiper.params.updateOnImagesReady) { swiper.update(); }\n swiper.emit('imagesReady');\n }\n }\n for (var i = 0; i < swiper.imagesToLoad.length; i += 1) {\n var imageEl = swiper.imagesToLoad[i];\n swiper.loadImage(\n imageEl,\n imageEl.currentSrc || imageEl.getAttribute('src'),\n imageEl.srcset || imageEl.getAttribute('srcset'),\n imageEl.sizes || imageEl.getAttribute('sizes'),\n true,\n onReady\n );\n }\n }\n\n var images = {\n loadImage: loadImage,\n preloadImages: preloadImages,\n };\n\n function checkOverflow() {\n var swiper = this;\n var wasLocked = swiper.isLocked;\n\n swiper.isLocked = swiper.snapGrid.length === 1;\n swiper.allowSlideNext = !swiper.isLocked;\n swiper.allowSlidePrev = !swiper.isLocked;\n\n // events\n if (wasLocked !== swiper.isLocked) { swiper.emit(swiper.isLocked ? 'lock' : 'unlock'); }\n\n if (wasLocked && wasLocked !== swiper.isLocked) {\n swiper.isEnd = false;\n swiper.navigation.update();\n }\n }\n\n var checkOverflow$1 = { checkOverflow: checkOverflow };\n\n var defaults = {\n init: true,\n direction: 'horizontal',\n touchEventsTarget: 'container',\n initialSlide: 0,\n speed: 300,\n //\n preventInteractionOnTransition: false,\n\n // To support iOS's swipe-to-go-back gesture (when being used in-app, with UIWebView).\n edgeSwipeDetection: false,\n edgeSwipeThreshold: 20,\n\n // Free mode\n freeMode: false,\n freeModeMomentum: true,\n freeModeMomentumRatio: 1,\n freeModeMomentumBounce: true,\n freeModeMomentumBounceRatio: 1,\n freeModeMomentumVelocityRatio: 1,\n freeModeSticky: false,\n freeModeMinimumVelocity: 0.02,\n\n // Autoheight\n autoHeight: false,\n\n // Set wrapper width\n setWrapperSize: false,\n\n // Virtual Translate\n virtualTranslate: false,\n\n // Effects\n effect: 'slide', // 'slide' or 'fade' or 'cube' or 'coverflow' or 'flip'\n\n // Breakpoints\n breakpoints: undefined,\n breakpointsInverse: false,\n\n // Slides grid\n spaceBetween: 0,\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerColumnFill: 'column',\n slidesPerGroup: 1,\n centeredSlides: false,\n slidesOffsetBefore: 0, // in px\n slidesOffsetAfter: 0, // in px\n normalizeSlideIndex: true,\n centerInsufficientSlides: false,\n\n // Disable swiper and hide navigation when container not overflow\n watchOverflow: false,\n\n // Round length\n roundLengths: false,\n\n // Touches\n touchRatio: 1,\n touchAngle: 45,\n simulateTouch: true,\n shortSwipes: true,\n longSwipes: true,\n longSwipesRatio: 0.5,\n longSwipesMs: 300,\n followFinger: true,\n allowTouchMove: true,\n threshold: 0,\n touchMoveStopPropagation: true,\n touchStartPreventDefault: true,\n touchStartForcePreventDefault: false,\n touchReleaseOnEdges: false,\n\n // Unique Navigation Elements\n uniqueNavElements: true,\n\n // Resistance\n resistance: true,\n resistanceRatio: 0.85,\n\n // Progress\n watchSlidesProgress: false,\n watchSlidesVisibility: false,\n\n // Cursor\n grabCursor: false,\n\n // Clicks\n preventClicks: true,\n preventClicksPropagation: true,\n slideToClickedSlide: false,\n\n // Images\n preloadImages: true,\n updateOnImagesReady: true,\n\n // loop\n loop: false,\n loopAdditionalSlides: 0,\n loopedSlides: null,\n loopFillGroupWithBlank: false,\n\n // Swiping/no swiping\n allowSlidePrev: true,\n allowSlideNext: true,\n swipeHandler: null, // '.swipe-handler',\n noSwiping: true,\n noSwipingClass: 'swiper-no-swiping',\n noSwipingSelector: null,\n\n // Passive Listeners\n passiveListeners: true,\n\n // NS\n containerModifierClass: 'swiper-container-', // NEW\n slideClass: 'swiper-slide',\n slideBlankClass: 'swiper-slide-invisible-blank',\n slideActiveClass: 'swiper-slide-active',\n slideDuplicateActiveClass: 'swiper-slide-duplicate-active',\n slideVisibleClass: 'swiper-slide-visible',\n slideDuplicateClass: 'swiper-slide-duplicate',\n slideNextClass: 'swiper-slide-next',\n slideDuplicateNextClass: 'swiper-slide-duplicate-next',\n slidePrevClass: 'swiper-slide-prev',\n slideDuplicatePrevClass: 'swiper-slide-duplicate-prev',\n wrapperClass: 'swiper-wrapper',\n\n // Callbacks\n runCallbacksOnInit: true,\n };\n\n /* eslint no-param-reassign: \"off\" */\n\n var prototypes = {\n update: update,\n translate: translate,\n transition: transition$1,\n slide: slide,\n loop: loop,\n grabCursor: grabCursor,\n manipulation: manipulation,\n events: events,\n breakpoints: breakpoints,\n checkOverflow: checkOverflow$1,\n classes: classes,\n images: images,\n };\n\n var extendedDefaults = {};\n\n var Swiper = /*@__PURE__*/(function (SwiperClass) {\n function Swiper() {\n var assign;\n\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n var el;\n var params;\n if (args.length === 1 && args[0].constructor && args[0].constructor === Object) {\n params = args[0];\n } else {\n (assign = args, el = assign[0], params = assign[1]);\n }\n if (!params) { params = {}; }\n\n params = Utils.extend({}, params);\n if (el && !params.el) { params.el = el; }\n\n SwiperClass.call(this, params);\n\n Object.keys(prototypes).forEach(function (prototypeGroup) {\n Object.keys(prototypes[prototypeGroup]).forEach(function (protoMethod) {\n if (!Swiper.prototype[protoMethod]) {\n Swiper.prototype[protoMethod] = prototypes[prototypeGroup][protoMethod];\n }\n });\n });\n\n // Swiper Instance\n var swiper = this;\n if (typeof swiper.modules === 'undefined') {\n swiper.modules = {};\n }\n Object.keys(swiper.modules).forEach(function (moduleName) {\n var module = swiper.modules[moduleName];\n if (module.params) {\n var moduleParamName = Object.keys(module.params)[0];\n var moduleParams = module.params[moduleParamName];\n if (typeof moduleParams !== 'object' || moduleParams === null) { return; }\n if (!(moduleParamName in params && 'enabled' in moduleParams)) { return; }\n if (params[moduleParamName] === true) {\n params[moduleParamName] = { enabled: true };\n }\n if (\n typeof params[moduleParamName] === 'object'\n && !('enabled' in params[moduleParamName])\n ) {\n params[moduleParamName].enabled = true;\n }\n if (!params[moduleParamName]) { params[moduleParamName] = { enabled: false }; }\n }\n });\n\n // Extend defaults with modules params\n var swiperParams = Utils.extend({}, defaults);\n swiper.useModulesParams(swiperParams);\n\n // Extend defaults with passed params\n swiper.params = Utils.extend({}, swiperParams, extendedDefaults, params);\n swiper.originalParams = Utils.extend({}, swiper.params);\n swiper.passedParams = Utils.extend({}, params);\n\n // Save Dom lib\n swiper.$ = $;\n\n // Find el\n var $el = $(swiper.params.el);\n el = $el[0];\n\n if (!el) {\n return undefined;\n }\n\n if ($el.length > 1) {\n var swipers = [];\n $el.each(function (index, containerEl) {\n var newParams = Utils.extend({}, params, { el: containerEl });\n swipers.push(new Swiper(newParams));\n });\n return swipers;\n }\n\n el.swiper = swiper;\n $el.data('swiper', swiper);\n\n // Find Wrapper\n var $wrapperEl = $el.children((\".\" + (swiper.params.wrapperClass)));\n\n // Extend Swiper\n Utils.extend(swiper, {\n $el: $el,\n el: el,\n $wrapperEl: $wrapperEl,\n wrapperEl: $wrapperEl[0],\n\n // Classes\n classNames: [],\n\n // Slides\n slides: $(),\n slidesGrid: [],\n snapGrid: [],\n slidesSizesGrid: [],\n\n // isDirection\n isHorizontal: function isHorizontal() {\n return swiper.params.direction === 'horizontal';\n },\n isVertical: function isVertical() {\n return swiper.params.direction === 'vertical';\n },\n // RTL\n rtl: (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'),\n rtlTranslate: swiper.params.direction === 'horizontal' && (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'),\n wrongRTL: $wrapperEl.css('display') === '-webkit-box',\n\n // Indexes\n activeIndex: 0,\n realIndex: 0,\n\n //\n isBeginning: true,\n isEnd: false,\n\n // Props\n translate: 0,\n previousTranslate: 0,\n progress: 0,\n velocity: 0,\n animating: false,\n\n // Locks\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n\n // Touch Events\n touchEvents: (function touchEvents() {\n var touch = ['touchstart', 'touchmove', 'touchend'];\n var desktop = ['mousedown', 'mousemove', 'mouseup'];\n if (Support.pointerEvents) {\n desktop = ['pointerdown', 'pointermove', 'pointerup'];\n } else if (Support.prefixedPointerEvents) {\n desktop = ['MSPointerDown', 'MSPointerMove', 'MSPointerUp'];\n }\n swiper.touchEventsTouch = {\n start: touch[0],\n move: touch[1],\n end: touch[2],\n };\n swiper.touchEventsDesktop = {\n start: desktop[0],\n move: desktop[1],\n end: desktop[2],\n };\n return Support.touch || !swiper.params.simulateTouch ? swiper.touchEventsTouch : swiper.touchEventsDesktop;\n }()),\n touchEventsData: {\n isTouched: undefined,\n isMoved: undefined,\n allowTouchCallbacks: undefined,\n touchStartTime: undefined,\n isScrolling: undefined,\n currentTranslate: undefined,\n startTranslate: undefined,\n allowThresholdMove: undefined,\n // Form elements to match\n formElements: 'input, select, option, textarea, button, video',\n // Last click time\n lastClickTime: Utils.now(),\n clickTimeout: undefined,\n // Velocities\n velocities: [],\n allowMomentumBounce: undefined,\n isTouchEvent: undefined,\n startMoving: undefined,\n },\n\n // Clicks\n allowClick: true,\n\n // Touches\n allowTouchMove: swiper.params.allowTouchMove,\n\n touches: {\n startX: 0,\n startY: 0,\n currentX: 0,\n currentY: 0,\n diff: 0,\n },\n\n // Images\n imagesToLoad: [],\n imagesLoaded: 0,\n\n });\n\n // Install Modules\n swiper.useModules();\n\n // Init\n if (swiper.params.init) {\n swiper.init();\n }\n\n // Return app instance\n return swiper;\n }\n\n if ( SwiperClass ) Swiper.__proto__ = SwiperClass;\n Swiper.prototype = Object.create( SwiperClass && SwiperClass.prototype );\n Swiper.prototype.constructor = Swiper;\n\n var staticAccessors = { extendedDefaults: { configurable: true },defaults: { configurable: true },Class: { configurable: true },$: { configurable: true } };\n\n Swiper.prototype.slidesPerViewDynamic = function slidesPerViewDynamic () {\n var swiper = this;\n var params = swiper.params;\n var slides = swiper.slides;\n var slidesGrid = swiper.slidesGrid;\n var swiperSize = swiper.size;\n var activeIndex = swiper.activeIndex;\n var spv = 1;\n if (params.centeredSlides) {\n var slideSize = slides[activeIndex].swiperSlideSize;\n var breakLoop;\n for (var i = activeIndex + 1; i < slides.length; i += 1) {\n if (slides[i] && !breakLoop) {\n slideSize += slides[i].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) { breakLoop = true; }\n }\n }\n for (var i$1 = activeIndex - 1; i$1 >= 0; i$1 -= 1) {\n if (slides[i$1] && !breakLoop) {\n slideSize += slides[i$1].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) { breakLoop = true; }\n }\n }\n } else {\n for (var i$2 = activeIndex + 1; i$2 < slides.length; i$2 += 1) {\n if (slidesGrid[i$2] - slidesGrid[activeIndex] < swiperSize) {\n spv += 1;\n }\n }\n }\n return spv;\n };\n\n Swiper.prototype.update = function update () {\n var swiper = this;\n if (!swiper || swiper.destroyed) { return; }\n var snapGrid = swiper.snapGrid;\n var params = swiper.params;\n // Breakpoints\n if (params.breakpoints) {\n swiper.setBreakpoint();\n }\n swiper.updateSize();\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n\n function setTranslate() {\n var translateValue = swiper.rtlTranslate ? swiper.translate * -1 : swiper.translate;\n var newTranslate = Math.min(Math.max(translateValue, swiper.maxTranslate()), swiper.minTranslate());\n swiper.setTranslate(newTranslate);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n var translated;\n if (swiper.params.freeMode) {\n setTranslate();\n if (swiper.params.autoHeight) {\n swiper.updateAutoHeight();\n }\n } else {\n if ((swiper.params.slidesPerView === 'auto' || swiper.params.slidesPerView > 1) && swiper.isEnd && !swiper.params.centeredSlides) {\n translated = swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n translated = swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n if (!translated) {\n setTranslate();\n }\n }\n if (params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n swiper.emit('update');\n };\n\n Swiper.prototype.changeDirection = function changeDirection (newDirection, needUpdate) {\n if ( needUpdate === void 0 ) needUpdate = true;\n\n var swiper = this;\n var currentDirection = swiper.params.direction;\n if (!newDirection) {\n // eslint-disable-next-line\n newDirection = currentDirection === 'horizontal' ? 'vertical' : 'horizontal';\n }\n if ((newDirection === currentDirection) || (newDirection !== 'horizontal' && newDirection !== 'vertical')) {\n return swiper;\n }\n\n swiper.$el\n .removeClass((\"\" + (swiper.params.containerModifierClass) + currentDirection + \" wp8-\" + currentDirection))\n .addClass((\"\" + (swiper.params.containerModifierClass) + newDirection));\n\n if ((Browser.isIE || Browser.isEdge) && (Support.pointerEvents || Support.prefixedPointerEvents)) {\n swiper.$el.addClass(((swiper.params.containerModifierClass) + \"wp8-\" + newDirection));\n }\n\n swiper.params.direction = newDirection;\n\n swiper.slides.each(function (slideIndex, slideEl) {\n if (newDirection === 'vertical') {\n slideEl.style.width = '';\n } else {\n slideEl.style.height = '';\n }\n });\n\n swiper.emit('changeDirection');\n if (needUpdate) { swiper.update(); }\n\n return swiper;\n };\n\n Swiper.prototype.init = function init () {\n var swiper = this;\n if (swiper.initialized) { return; }\n\n swiper.emit('beforeInit');\n\n // Set breakpoint\n if (swiper.params.breakpoints) {\n swiper.setBreakpoint();\n }\n\n // Add Classes\n swiper.addClasses();\n\n // Create loop\n if (swiper.params.loop) {\n swiper.loopCreate();\n }\n\n // Update size\n swiper.updateSize();\n\n // Update slides\n swiper.updateSlides();\n\n if (swiper.params.watchOverflow) {\n swiper.checkOverflow();\n }\n\n // Set Grab Cursor\n if (swiper.params.grabCursor) {\n swiper.setGrabCursor();\n }\n\n if (swiper.params.preloadImages) {\n swiper.preloadImages();\n }\n\n // Slide To Initial Slide\n if (swiper.params.loop) {\n swiper.slideTo(swiper.params.initialSlide + swiper.loopedSlides, 0, swiper.params.runCallbacksOnInit);\n } else {\n swiper.slideTo(swiper.params.initialSlide, 0, swiper.params.runCallbacksOnInit);\n }\n\n // Attach events\n swiper.attachEvents();\n\n // Init Flag\n swiper.initialized = true;\n\n // Emit\n swiper.emit('init');\n };\n\n Swiper.prototype.destroy = function destroy (deleteInstance, cleanStyles) {\n if ( deleteInstance === void 0 ) deleteInstance = true;\n if ( cleanStyles === void 0 ) cleanStyles = true;\n\n var swiper = this;\n var params = swiper.params;\n var $el = swiper.$el;\n var $wrapperEl = swiper.$wrapperEl;\n var slides = swiper.slides;\n\n if (typeof swiper.params === 'undefined' || swiper.destroyed) {\n return null;\n }\n\n swiper.emit('beforeDestroy');\n\n // Init Flag\n swiper.initialized = false;\n\n // Detach events\n swiper.detachEvents();\n\n // Destroy loop\n if (params.loop) {\n swiper.loopDestroy();\n }\n\n // Cleanup styles\n if (cleanStyles) {\n swiper.removeClasses();\n $el.removeAttr('style');\n $wrapperEl.removeAttr('style');\n if (slides && slides.length) {\n slides\n .removeClass([\n params.slideVisibleClass,\n params.slideActiveClass,\n params.slideNextClass,\n params.slidePrevClass ].join(' '))\n .removeAttr('style')\n .removeAttr('data-swiper-slide-index')\n .removeAttr('data-swiper-column')\n .removeAttr('data-swiper-row');\n }\n }\n\n swiper.emit('destroy');\n\n // Detach emitter events\n Object.keys(swiper.eventsListeners).forEach(function (eventName) {\n swiper.off(eventName);\n });\n\n if (deleteInstance !== false) {\n swiper.$el[0].swiper = null;\n swiper.$el.data('swiper', null);\n Utils.deleteProps(swiper);\n }\n swiper.destroyed = true;\n\n return null;\n };\n\n Swiper.extendDefaults = function extendDefaults (newDefaults) {\n Utils.extend(extendedDefaults, newDefaults);\n };\n\n staticAccessors.extendedDefaults.get = function () {\n return extendedDefaults;\n };\n\n staticAccessors.defaults.get = function () {\n return defaults;\n };\n\n staticAccessors.Class.get = function () {\n return SwiperClass;\n };\n\n staticAccessors.$.get = function () {\n return $;\n };\n\n Object.defineProperties( Swiper, staticAccessors );\n\n return Swiper;\n }(SwiperClass));\n\n var Device$1 = {\n name: 'device',\n proto: {\n device: Device,\n },\n static: {\n device: Device,\n },\n };\n\n var Support$1 = {\n name: 'support',\n proto: {\n support: Support,\n },\n static: {\n support: Support,\n },\n };\n\n var Browser$1 = {\n name: 'browser',\n proto: {\n browser: Browser,\n },\n static: {\n browser: Browser,\n },\n };\n\n var Resize = {\n name: 'resize',\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n resize: {\n resizeHandler: function resizeHandler() {\n if (!swiper || swiper.destroyed || !swiper.initialized) { return; }\n swiper.emit('beforeResize');\n swiper.emit('resize');\n },\n orientationChangeHandler: function orientationChangeHandler() {\n if (!swiper || swiper.destroyed || !swiper.initialized) { return; }\n swiper.emit('orientationchange');\n },\n },\n });\n },\n on: {\n init: function init() {\n var swiper = this;\n // Emit resize\n win.addEventListener('resize', swiper.resize.resizeHandler);\n\n // Emit orientationchange\n win.addEventListener('orientationchange', swiper.resize.orientationChangeHandler);\n },\n destroy: function destroy() {\n var swiper = this;\n win.removeEventListener('resize', swiper.resize.resizeHandler);\n win.removeEventListener('orientationchange', swiper.resize.orientationChangeHandler);\n },\n },\n };\n\n var Observer = {\n func: win.MutationObserver || win.WebkitMutationObserver,\n attach: function attach(target, options) {\n if ( options === void 0 ) options = {};\n\n var swiper = this;\n\n var ObserverFunc = Observer.func;\n var observer = new ObserverFunc(function (mutations) {\n // The observerUpdate event should only be triggered\n // once despite the number of mutations. Additional\n // triggers are redundant and are very costly\n if (mutations.length === 1) {\n swiper.emit('observerUpdate', mutations[0]);\n return;\n }\n var observerUpdate = function observerUpdate() {\n swiper.emit('observerUpdate', mutations[0]);\n };\n\n if (win.requestAnimationFrame) {\n win.requestAnimationFrame(observerUpdate);\n } else {\n win.setTimeout(observerUpdate, 0);\n }\n });\n\n observer.observe(target, {\n attributes: typeof options.attributes === 'undefined' ? true : options.attributes,\n childList: typeof options.childList === 'undefined' ? true : options.childList,\n characterData: typeof options.characterData === 'undefined' ? true : options.characterData,\n });\n\n swiper.observer.observers.push(observer);\n },\n init: function init() {\n var swiper = this;\n if (!Support.observer || !swiper.params.observer) { return; }\n if (swiper.params.observeParents) {\n var containerParents = swiper.$el.parents();\n for (var i = 0; i < containerParents.length; i += 1) {\n swiper.observer.attach(containerParents[i]);\n }\n }\n // Observe container\n swiper.observer.attach(swiper.$el[0], { childList: swiper.params.observeSlideChildren });\n\n // Observe wrapper\n swiper.observer.attach(swiper.$wrapperEl[0], { attributes: false });\n },\n destroy: function destroy() {\n var swiper = this;\n swiper.observer.observers.forEach(function (observer) {\n observer.disconnect();\n });\n swiper.observer.observers = [];\n },\n };\n\n var Observer$1 = {\n name: 'observer',\n params: {\n observer: false,\n observeParents: false,\n observeSlideChildren: false,\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n observer: {\n init: Observer.init.bind(swiper),\n attach: Observer.attach.bind(swiper),\n destroy: Observer.destroy.bind(swiper),\n observers: [],\n },\n });\n },\n on: {\n init: function init() {\n var swiper = this;\n swiper.observer.init();\n },\n destroy: function destroy() {\n var swiper = this;\n swiper.observer.destroy();\n },\n },\n };\n\n var Virtual = {\n update: function update(force) {\n var swiper = this;\n var ref = swiper.params;\n var slidesPerView = ref.slidesPerView;\n var slidesPerGroup = ref.slidesPerGroup;\n var centeredSlides = ref.centeredSlides;\n var ref$1 = swiper.params.virtual;\n var addSlidesBefore = ref$1.addSlidesBefore;\n var addSlidesAfter = ref$1.addSlidesAfter;\n var ref$2 = swiper.virtual;\n var previousFrom = ref$2.from;\n var previousTo = ref$2.to;\n var slides = ref$2.slides;\n var previousSlidesGrid = ref$2.slidesGrid;\n var renderSlide = ref$2.renderSlide;\n var previousOffset = ref$2.offset;\n swiper.updateActiveIndex();\n var activeIndex = swiper.activeIndex || 0;\n\n var offsetProp;\n if (swiper.rtlTranslate) { offsetProp = 'right'; }\n else { offsetProp = swiper.isHorizontal() ? 'left' : 'top'; }\n\n var slidesAfter;\n var slidesBefore;\n if (centeredSlides) {\n slidesAfter = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesBefore;\n slidesBefore = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesAfter;\n } else {\n slidesAfter = slidesPerView + (slidesPerGroup - 1) + addSlidesBefore;\n slidesBefore = slidesPerGroup + addSlidesAfter;\n }\n var from = Math.max((activeIndex || 0) - slidesBefore, 0);\n var to = Math.min((activeIndex || 0) + slidesAfter, slides.length - 1);\n var offset = (swiper.slidesGrid[from] || 0) - (swiper.slidesGrid[0] || 0);\n\n Utils.extend(swiper.virtual, {\n from: from,\n to: to,\n offset: offset,\n slidesGrid: swiper.slidesGrid,\n });\n\n function onRendered() {\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n if (swiper.lazy && swiper.params.lazy.enabled) {\n swiper.lazy.load();\n }\n }\n\n if (previousFrom === from && previousTo === to && !force) {\n if (swiper.slidesGrid !== previousSlidesGrid && offset !== previousOffset) {\n swiper.slides.css(offsetProp, (offset + \"px\"));\n }\n swiper.updateProgress();\n return;\n }\n if (swiper.params.virtual.renderExternal) {\n swiper.params.virtual.renderExternal.call(swiper, {\n offset: offset,\n from: from,\n to: to,\n slides: (function getSlides() {\n var slidesToRender = [];\n for (var i = from; i <= to; i += 1) {\n slidesToRender.push(slides[i]);\n }\n return slidesToRender;\n }()),\n });\n onRendered();\n return;\n }\n var prependIndexes = [];\n var appendIndexes = [];\n if (force) {\n swiper.$wrapperEl.find((\".\" + (swiper.params.slideClass))).remove();\n } else {\n for (var i = previousFrom; i <= previousTo; i += 1) {\n if (i < from || i > to) {\n swiper.$wrapperEl.find((\".\" + (swiper.params.slideClass) + \"[data-swiper-slide-index=\\\"\" + i + \"\\\"]\")).remove();\n }\n }\n }\n for (var i$1 = 0; i$1 < slides.length; i$1 += 1) {\n if (i$1 >= from && i$1 <= to) {\n if (typeof previousTo === 'undefined' || force) {\n appendIndexes.push(i$1);\n } else {\n if (i$1 > previousTo) { appendIndexes.push(i$1); }\n if (i$1 < previousFrom) { prependIndexes.push(i$1); }\n }\n }\n }\n appendIndexes.forEach(function (index) {\n swiper.$wrapperEl.append(renderSlide(slides[index], index));\n });\n prependIndexes.sort(function (a, b) { return b - a; }).forEach(function (index) {\n swiper.$wrapperEl.prepend(renderSlide(slides[index], index));\n });\n swiper.$wrapperEl.children('.swiper-slide').css(offsetProp, (offset + \"px\"));\n onRendered();\n },\n renderSlide: function renderSlide(slide, index) {\n var swiper = this;\n var params = swiper.params.virtual;\n if (params.cache && swiper.virtual.cache[index]) {\n return swiper.virtual.cache[index];\n }\n var $slideEl = params.renderSlide\n ? $(params.renderSlide.call(swiper, slide, index))\n : $((\"
\" + slide + \"
\"));\n if (!$slideEl.attr('data-swiper-slide-index')) { $slideEl.attr('data-swiper-slide-index', index); }\n if (params.cache) { swiper.virtual.cache[index] = $slideEl; }\n return $slideEl;\n },\n appendSlide: function appendSlide(slides) {\n var swiper = this;\n if (typeof slides === 'object' && 'length' in slides) {\n for (var i = 0; i < slides.length; i += 1) {\n if (slides[i]) { swiper.virtual.slides.push(slides[i]); }\n }\n } else {\n swiper.virtual.slides.push(slides);\n }\n swiper.virtual.update(true);\n },\n prependSlide: function prependSlide(slides) {\n var swiper = this;\n var activeIndex = swiper.activeIndex;\n var newActiveIndex = activeIndex + 1;\n var numberOfNewSlides = 1;\n\n if (Array.isArray(slides)) {\n for (var i = 0; i < slides.length; i += 1) {\n if (slides[i]) { swiper.virtual.slides.unshift(slides[i]); }\n }\n newActiveIndex = activeIndex + slides.length;\n numberOfNewSlides = slides.length;\n } else {\n swiper.virtual.slides.unshift(slides);\n }\n if (swiper.params.virtual.cache) {\n var cache = swiper.virtual.cache;\n var newCache = {};\n Object.keys(cache).forEach(function (cachedIndex) {\n newCache[parseInt(cachedIndex, 10) + numberOfNewSlides] = cache[cachedIndex];\n });\n swiper.virtual.cache = newCache;\n }\n swiper.virtual.update(true);\n swiper.slideTo(newActiveIndex, 0);\n },\n removeSlide: function removeSlide(slidesIndexes) {\n var swiper = this;\n if (typeof slidesIndexes === 'undefined' || slidesIndexes === null) { return; }\n var activeIndex = swiper.activeIndex;\n if (Array.isArray(slidesIndexes)) {\n for (var i = slidesIndexes.length - 1; i >= 0; i -= 1) {\n swiper.virtual.slides.splice(slidesIndexes[i], 1);\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes[i]];\n }\n if (slidesIndexes[i] < activeIndex) { activeIndex -= 1; }\n activeIndex = Math.max(activeIndex, 0);\n }\n } else {\n swiper.virtual.slides.splice(slidesIndexes, 1);\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes];\n }\n if (slidesIndexes < activeIndex) { activeIndex -= 1; }\n activeIndex = Math.max(activeIndex, 0);\n }\n swiper.virtual.update(true);\n swiper.slideTo(activeIndex, 0);\n },\n removeAllSlides: function removeAllSlides() {\n var swiper = this;\n swiper.virtual.slides = [];\n if (swiper.params.virtual.cache) {\n swiper.virtual.cache = {};\n }\n swiper.virtual.update(true);\n swiper.slideTo(0, 0);\n },\n };\n\n var Virtual$1 = {\n name: 'virtual',\n params: {\n virtual: {\n enabled: false,\n slides: [],\n cache: true,\n renderSlide: null,\n renderExternal: null,\n addSlidesBefore: 0,\n addSlidesAfter: 0,\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n virtual: {\n update: Virtual.update.bind(swiper),\n appendSlide: Virtual.appendSlide.bind(swiper),\n prependSlide: Virtual.prependSlide.bind(swiper),\n removeSlide: Virtual.removeSlide.bind(swiper),\n removeAllSlides: Virtual.removeAllSlides.bind(swiper),\n renderSlide: Virtual.renderSlide.bind(swiper),\n slides: swiper.params.virtual.slides,\n cache: {},\n },\n });\n },\n on: {\n beforeInit: function beforeInit() {\n var swiper = this;\n if (!swiper.params.virtual.enabled) { return; }\n swiper.classNames.push(((swiper.params.containerModifierClass) + \"virtual\"));\n var overwriteParams = {\n watchSlidesProgress: true,\n };\n Utils.extend(swiper.params, overwriteParams);\n Utils.extend(swiper.originalParams, overwriteParams);\n\n if (!swiper.params.initialSlide) {\n swiper.virtual.update();\n }\n },\n setTranslate: function setTranslate() {\n var swiper = this;\n if (!swiper.params.virtual.enabled) { return; }\n swiper.virtual.update();\n },\n },\n };\n\n var Keyboard = {\n handle: function handle(event) {\n var swiper = this;\n var rtl = swiper.rtlTranslate;\n var e = event;\n if (e.originalEvent) { e = e.originalEvent; } // jquery fix\n var kc = e.keyCode || e.charCode;\n // Directions locks\n if (!swiper.allowSlideNext && ((swiper.isHorizontal() && kc === 39) || (swiper.isVertical() && kc === 40) || kc === 34)) {\n return false;\n }\n if (!swiper.allowSlidePrev && ((swiper.isHorizontal() && kc === 37) || (swiper.isVertical() && kc === 38) || kc === 33)) {\n return false;\n }\n if (e.shiftKey || e.altKey || e.ctrlKey || e.metaKey) {\n return undefined;\n }\n if (doc.activeElement && doc.activeElement.nodeName && (doc.activeElement.nodeName.toLowerCase() === 'input' || doc.activeElement.nodeName.toLowerCase() === 'textarea')) {\n return undefined;\n }\n if (swiper.params.keyboard.onlyInViewport && (kc === 33 || kc === 34 || kc === 37 || kc === 39 || kc === 38 || kc === 40)) {\n var inView = false;\n // Check that swiper should be inside of visible area of window\n if (swiper.$el.parents((\".\" + (swiper.params.slideClass))).length > 0 && swiper.$el.parents((\".\" + (swiper.params.slideActiveClass))).length === 0) {\n return undefined;\n }\n var windowWidth = win.innerWidth;\n var windowHeight = win.innerHeight;\n var swiperOffset = swiper.$el.offset();\n if (rtl) { swiperOffset.left -= swiper.$el[0].scrollLeft; }\n var swiperCoord = [\n [swiperOffset.left, swiperOffset.top],\n [swiperOffset.left + swiper.width, swiperOffset.top],\n [swiperOffset.left, swiperOffset.top + swiper.height],\n [swiperOffset.left + swiper.width, swiperOffset.top + swiper.height] ];\n for (var i = 0; i < swiperCoord.length; i += 1) {\n var point = swiperCoord[i];\n if (\n point[0] >= 0 && point[0] <= windowWidth\n && point[1] >= 0 && point[1] <= windowHeight\n ) {\n inView = true;\n }\n }\n if (!inView) { return undefined; }\n }\n if (swiper.isHorizontal()) {\n if (kc === 33 || kc === 34 || kc === 37 || kc === 39) {\n if (e.preventDefault) { e.preventDefault(); }\n else { e.returnValue = false; }\n }\n if (((kc === 34 || kc === 39) && !rtl) || ((kc === 33 || kc === 37) && rtl)) { swiper.slideNext(); }\n if (((kc === 33 || kc === 37) && !rtl) || ((kc === 34 || kc === 39) && rtl)) { swiper.slidePrev(); }\n } else {\n if (kc === 33 || kc === 34 || kc === 38 || kc === 40) {\n if (e.preventDefault) { e.preventDefault(); }\n else { e.returnValue = false; }\n }\n if (kc === 34 || kc === 40) { swiper.slideNext(); }\n if (kc === 33 || kc === 38) { swiper.slidePrev(); }\n }\n swiper.emit('keyPress', kc);\n return undefined;\n },\n enable: function enable() {\n var swiper = this;\n if (swiper.keyboard.enabled) { return; }\n $(doc).on('keydown', swiper.keyboard.handle);\n swiper.keyboard.enabled = true;\n },\n disable: function disable() {\n var swiper = this;\n if (!swiper.keyboard.enabled) { return; }\n $(doc).off('keydown', swiper.keyboard.handle);\n swiper.keyboard.enabled = false;\n },\n };\n\n var Keyboard$1 = {\n name: 'keyboard',\n params: {\n keyboard: {\n enabled: false,\n onlyInViewport: true,\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n keyboard: {\n enabled: false,\n enable: Keyboard.enable.bind(swiper),\n disable: Keyboard.disable.bind(swiper),\n handle: Keyboard.handle.bind(swiper),\n },\n });\n },\n on: {\n init: function init() {\n var swiper = this;\n if (swiper.params.keyboard.enabled) {\n swiper.keyboard.enable();\n }\n },\n destroy: function destroy() {\n var swiper = this;\n if (swiper.keyboard.enabled) {\n swiper.keyboard.disable();\n }\n },\n },\n };\n\n function isEventSupported() {\n var eventName = 'onwheel';\n var isSupported = eventName in doc;\n\n if (!isSupported) {\n var element = doc.createElement('div');\n element.setAttribute(eventName, 'return;');\n isSupported = typeof element[eventName] === 'function';\n }\n\n if (!isSupported\n && doc.implementation\n && doc.implementation.hasFeature\n // always returns true in newer browsers as per the standard.\n // @see http://dom.spec.whatwg.org/#dom-domimplementation-hasfeature\n && doc.implementation.hasFeature('', '') !== true\n ) {\n // This is the only way to test support for the `wheel` event in IE9+.\n isSupported = doc.implementation.hasFeature('Events.wheel', '3.0');\n }\n\n return isSupported;\n }\n var Mousewheel = {\n lastScrollTime: Utils.now(),\n event: (function getEvent() {\n if (win.navigator.userAgent.indexOf('firefox') > -1) { return 'DOMMouseScroll'; }\n return isEventSupported() ? 'wheel' : 'mousewheel';\n }()),\n normalize: function normalize(e) {\n // Reasonable defaults\n var PIXEL_STEP = 10;\n var LINE_HEIGHT = 40;\n var PAGE_HEIGHT = 800;\n\n var sX = 0;\n var sY = 0; // spinX, spinY\n var pX = 0;\n var pY = 0; // pixelX, pixelY\n\n // Legacy\n if ('detail' in e) {\n sY = e.detail;\n }\n if ('wheelDelta' in e) {\n sY = -e.wheelDelta / 120;\n }\n if ('wheelDeltaY' in e) {\n sY = -e.wheelDeltaY / 120;\n }\n if ('wheelDeltaX' in e) {\n sX = -e.wheelDeltaX / 120;\n }\n\n // side scrolling on FF with DOMMouseScroll\n if ('axis' in e && e.axis === e.HORIZONTAL_AXIS) {\n sX = sY;\n sY = 0;\n }\n\n pX = sX * PIXEL_STEP;\n pY = sY * PIXEL_STEP;\n\n if ('deltaY' in e) {\n pY = e.deltaY;\n }\n if ('deltaX' in e) {\n pX = e.deltaX;\n }\n\n if ((pX || pY) && e.deltaMode) {\n if (e.deltaMode === 1) { // delta in LINE units\n pX *= LINE_HEIGHT;\n pY *= LINE_HEIGHT;\n } else { // delta in PAGE units\n pX *= PAGE_HEIGHT;\n pY *= PAGE_HEIGHT;\n }\n }\n\n // Fall-back if spin cannot be determined\n if (pX && !sX) {\n sX = (pX < 1) ? -1 : 1;\n }\n if (pY && !sY) {\n sY = (pY < 1) ? -1 : 1;\n }\n\n return {\n spinX: sX,\n spinY: sY,\n pixelX: pX,\n pixelY: pY,\n };\n },\n handleMouseEnter: function handleMouseEnter() {\n var swiper = this;\n swiper.mouseEntered = true;\n },\n handleMouseLeave: function handleMouseLeave() {\n var swiper = this;\n swiper.mouseEntered = false;\n },\n handle: function handle(event) {\n var e = event;\n var swiper = this;\n var params = swiper.params.mousewheel;\n\n if (!swiper.mouseEntered && !params.releaseOnEdges) { return true; }\n\n if (e.originalEvent) { e = e.originalEvent; } // jquery fix\n var delta = 0;\n var rtlFactor = swiper.rtlTranslate ? -1 : 1;\n\n var data = Mousewheel.normalize(e);\n\n if (params.forceToAxis) {\n if (swiper.isHorizontal()) {\n if (Math.abs(data.pixelX) > Math.abs(data.pixelY)) { delta = data.pixelX * rtlFactor; }\n else { return true; }\n } else if (Math.abs(data.pixelY) > Math.abs(data.pixelX)) { delta = data.pixelY; }\n else { return true; }\n } else {\n delta = Math.abs(data.pixelX) > Math.abs(data.pixelY) ? -data.pixelX * rtlFactor : -data.pixelY;\n }\n\n if (delta === 0) { return true; }\n\n if (params.invert) { delta = -delta; }\n\n if (!swiper.params.freeMode) {\n if (Utils.now() - swiper.mousewheel.lastScrollTime > 60) {\n if (delta < 0) {\n if ((!swiper.isEnd || swiper.params.loop) && !swiper.animating) {\n swiper.slideNext();\n swiper.emit('scroll', e);\n } else if (params.releaseOnEdges) { return true; }\n } else if ((!swiper.isBeginning || swiper.params.loop) && !swiper.animating) {\n swiper.slidePrev();\n swiper.emit('scroll', e);\n } else if (params.releaseOnEdges) { return true; }\n }\n swiper.mousewheel.lastScrollTime = (new win.Date()).getTime();\n } else {\n // Freemode or scrollContainer:\n if (swiper.params.loop) {\n swiper.loopFix();\n }\n var position = swiper.getTranslate() + (delta * params.sensitivity);\n var wasBeginning = swiper.isBeginning;\n var wasEnd = swiper.isEnd;\n\n if (position >= swiper.minTranslate()) { position = swiper.minTranslate(); }\n if (position <= swiper.maxTranslate()) { position = swiper.maxTranslate(); }\n\n swiper.setTransition(0);\n swiper.setTranslate(position);\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n\n if ((!wasBeginning && swiper.isBeginning) || (!wasEnd && swiper.isEnd)) {\n swiper.updateSlidesClasses();\n }\n\n if (swiper.params.freeModeSticky) {\n clearTimeout(swiper.mousewheel.timeout);\n swiper.mousewheel.timeout = Utils.nextTick(function () {\n swiper.slideToClosest();\n }, 300);\n }\n // Emit event\n swiper.emit('scroll', e);\n\n // Stop autoplay\n if (swiper.params.autoplay && swiper.params.autoplayDisableOnInteraction) { swiper.autoplay.stop(); }\n // Return page scroll on edge positions\n if (position === swiper.minTranslate() || position === swiper.maxTranslate()) { return true; }\n }\n\n if (e.preventDefault) { e.preventDefault(); }\n else { e.returnValue = false; }\n return false;\n },\n enable: function enable() {\n var swiper = this;\n if (!Mousewheel.event) { return false; }\n if (swiper.mousewheel.enabled) { return false; }\n var target = swiper.$el;\n if (swiper.params.mousewheel.eventsTarged !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarged);\n }\n target.on('mouseenter', swiper.mousewheel.handleMouseEnter);\n target.on('mouseleave', swiper.mousewheel.handleMouseLeave);\n target.on(Mousewheel.event, swiper.mousewheel.handle);\n swiper.mousewheel.enabled = true;\n return true;\n },\n disable: function disable() {\n var swiper = this;\n if (!Mousewheel.event) { return false; }\n if (!swiper.mousewheel.enabled) { return false; }\n var target = swiper.$el;\n if (swiper.params.mousewheel.eventsTarged !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarged);\n }\n target.off(Mousewheel.event, swiper.mousewheel.handle);\n swiper.mousewheel.enabled = false;\n return true;\n },\n };\n\n var Mousewheel$1 = {\n name: 'mousewheel',\n params: {\n mousewheel: {\n enabled: false,\n releaseOnEdges: false,\n invert: false,\n forceToAxis: false,\n sensitivity: 1,\n eventsTarged: 'container',\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n mousewheel: {\n enabled: false,\n enable: Mousewheel.enable.bind(swiper),\n disable: Mousewheel.disable.bind(swiper),\n handle: Mousewheel.handle.bind(swiper),\n handleMouseEnter: Mousewheel.handleMouseEnter.bind(swiper),\n handleMouseLeave: Mousewheel.handleMouseLeave.bind(swiper),\n lastScrollTime: Utils.now(),\n },\n });\n },\n on: {\n init: function init() {\n var swiper = this;\n if (swiper.params.mousewheel.enabled) { swiper.mousewheel.enable(); }\n },\n destroy: function destroy() {\n var swiper = this;\n if (swiper.mousewheel.enabled) { swiper.mousewheel.disable(); }\n },\n },\n };\n\n var Navigation = {\n update: function update() {\n // Update Navigation Buttons\n var swiper = this;\n var params = swiper.params.navigation;\n\n if (swiper.params.loop) { return; }\n var ref = swiper.navigation;\n var $nextEl = ref.$nextEl;\n var $prevEl = ref.$prevEl;\n\n if ($prevEl && $prevEl.length > 0) {\n if (swiper.isBeginning) {\n $prevEl.addClass(params.disabledClass);\n } else {\n $prevEl.removeClass(params.disabledClass);\n }\n $prevEl[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n if ($nextEl && $nextEl.length > 0) {\n if (swiper.isEnd) {\n $nextEl.addClass(params.disabledClass);\n } else {\n $nextEl.removeClass(params.disabledClass);\n }\n $nextEl[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n },\n onPrevClick: function onPrevClick(e) {\n var swiper = this;\n e.preventDefault();\n if (swiper.isBeginning && !swiper.params.loop) { return; }\n swiper.slidePrev();\n },\n onNextClick: function onNextClick(e) {\n var swiper = this;\n e.preventDefault();\n if (swiper.isEnd && !swiper.params.loop) { return; }\n swiper.slideNext();\n },\n init: function init() {\n var swiper = this;\n var params = swiper.params.navigation;\n if (!(params.nextEl || params.prevEl)) { return; }\n\n var $nextEl;\n var $prevEl;\n if (params.nextEl) {\n $nextEl = $(params.nextEl);\n if (\n swiper.params.uniqueNavElements\n && typeof params.nextEl === 'string'\n && $nextEl.length > 1\n && swiper.$el.find(params.nextEl).length === 1\n ) {\n $nextEl = swiper.$el.find(params.nextEl);\n }\n }\n if (params.prevEl) {\n $prevEl = $(params.prevEl);\n if (\n swiper.params.uniqueNavElements\n && typeof params.prevEl === 'string'\n && $prevEl.length > 1\n && swiper.$el.find(params.prevEl).length === 1\n ) {\n $prevEl = swiper.$el.find(params.prevEl);\n }\n }\n\n if ($nextEl && $nextEl.length > 0) {\n $nextEl.on('click', swiper.navigation.onNextClick);\n }\n if ($prevEl && $prevEl.length > 0) {\n $prevEl.on('click', swiper.navigation.onPrevClick);\n }\n\n Utils.extend(swiper.navigation, {\n $nextEl: $nextEl,\n nextEl: $nextEl && $nextEl[0],\n $prevEl: $prevEl,\n prevEl: $prevEl && $prevEl[0],\n });\n },\n destroy: function destroy() {\n var swiper = this;\n var ref = swiper.navigation;\n var $nextEl = ref.$nextEl;\n var $prevEl = ref.$prevEl;\n if ($nextEl && $nextEl.length) {\n $nextEl.off('click', swiper.navigation.onNextClick);\n $nextEl.removeClass(swiper.params.navigation.disabledClass);\n }\n if ($prevEl && $prevEl.length) {\n $prevEl.off('click', swiper.navigation.onPrevClick);\n $prevEl.removeClass(swiper.params.navigation.disabledClass);\n }\n },\n };\n\n var Navigation$1 = {\n name: 'navigation',\n params: {\n navigation: {\n nextEl: null,\n prevEl: null,\n\n hideOnClick: false,\n disabledClass: 'swiper-button-disabled',\n hiddenClass: 'swiper-button-hidden',\n lockClass: 'swiper-button-lock',\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n navigation: {\n init: Navigation.init.bind(swiper),\n update: Navigation.update.bind(swiper),\n destroy: Navigation.destroy.bind(swiper),\n onNextClick: Navigation.onNextClick.bind(swiper),\n onPrevClick: Navigation.onPrevClick.bind(swiper),\n },\n });\n },\n on: {\n init: function init() {\n var swiper = this;\n swiper.navigation.init();\n swiper.navigation.update();\n },\n toEdge: function toEdge() {\n var swiper = this;\n swiper.navigation.update();\n },\n fromEdge: function fromEdge() {\n var swiper = this;\n swiper.navigation.update();\n },\n destroy: function destroy() {\n var swiper = this;\n swiper.navigation.destroy();\n },\n click: function click(e) {\n var swiper = this;\n var ref = swiper.navigation;\n var $nextEl = ref.$nextEl;\n var $prevEl = ref.$prevEl;\n if (\n swiper.params.navigation.hideOnClick\n && !$(e.target).is($prevEl)\n && !$(e.target).is($nextEl)\n ) {\n var isHidden;\n if ($nextEl) {\n isHidden = $nextEl.hasClass(swiper.params.navigation.hiddenClass);\n } else if ($prevEl) {\n isHidden = $prevEl.hasClass(swiper.params.navigation.hiddenClass);\n }\n if (isHidden === true) {\n swiper.emit('navigationShow', swiper);\n } else {\n swiper.emit('navigationHide', swiper);\n }\n if ($nextEl) {\n $nextEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n if ($prevEl) {\n $prevEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n }\n },\n },\n };\n\n var Pagination = {\n update: function update() {\n // Render || Update Pagination bullets/items\n var swiper = this;\n var rtl = swiper.rtl;\n var params = swiper.params.pagination;\n if (!params.el || !swiper.pagination.el || !swiper.pagination.$el || swiper.pagination.$el.length === 0) { return; }\n var slidesLength = swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n var $el = swiper.pagination.$el;\n // Current/Total\n var current;\n var total = swiper.params.loop ? Math.ceil((slidesLength - (swiper.loopedSlides * 2)) / swiper.params.slidesPerGroup) : swiper.snapGrid.length;\n if (swiper.params.loop) {\n current = Math.ceil((swiper.activeIndex - swiper.loopedSlides) / swiper.params.slidesPerGroup);\n if (current > slidesLength - 1 - (swiper.loopedSlides * 2)) {\n current -= (slidesLength - (swiper.loopedSlides * 2));\n }\n if (current > total - 1) { current -= total; }\n if (current < 0 && swiper.params.paginationType !== 'bullets') { current = total + current; }\n } else if (typeof swiper.snapIndex !== 'undefined') {\n current = swiper.snapIndex;\n } else {\n current = swiper.activeIndex || 0;\n }\n // Types\n if (params.type === 'bullets' && swiper.pagination.bullets && swiper.pagination.bullets.length > 0) {\n var bullets = swiper.pagination.bullets;\n var firstIndex;\n var lastIndex;\n var midIndex;\n if (params.dynamicBullets) {\n swiper.pagination.bulletSize = bullets.eq(0)[swiper.isHorizontal() ? 'outerWidth' : 'outerHeight'](true);\n $el.css(swiper.isHorizontal() ? 'width' : 'height', ((swiper.pagination.bulletSize * (params.dynamicMainBullets + 4)) + \"px\"));\n if (params.dynamicMainBullets > 1 && swiper.previousIndex !== undefined) {\n swiper.pagination.dynamicBulletIndex += (current - swiper.previousIndex);\n if (swiper.pagination.dynamicBulletIndex > (params.dynamicMainBullets - 1)) {\n swiper.pagination.dynamicBulletIndex = params.dynamicMainBullets - 1;\n } else if (swiper.pagination.dynamicBulletIndex < 0) {\n swiper.pagination.dynamicBulletIndex = 0;\n }\n }\n firstIndex = current - swiper.pagination.dynamicBulletIndex;\n lastIndex = firstIndex + (Math.min(bullets.length, params.dynamicMainBullets) - 1);\n midIndex = (lastIndex + firstIndex) / 2;\n }\n bullets.removeClass(((params.bulletActiveClass) + \" \" + (params.bulletActiveClass) + \"-next \" + (params.bulletActiveClass) + \"-next-next \" + (params.bulletActiveClass) + \"-prev \" + (params.bulletActiveClass) + \"-prev-prev \" + (params.bulletActiveClass) + \"-main\"));\n if ($el.length > 1) {\n bullets.each(function (index, bullet) {\n var $bullet = $(bullet);\n var bulletIndex = $bullet.index();\n if (bulletIndex === current) {\n $bullet.addClass(params.bulletActiveClass);\n }\n if (params.dynamicBullets) {\n if (bulletIndex >= firstIndex && bulletIndex <= lastIndex) {\n $bullet.addClass(((params.bulletActiveClass) + \"-main\"));\n }\n if (bulletIndex === firstIndex) {\n $bullet\n .prev()\n .addClass(((params.bulletActiveClass) + \"-prev\"))\n .prev()\n .addClass(((params.bulletActiveClass) + \"-prev-prev\"));\n }\n if (bulletIndex === lastIndex) {\n $bullet\n .next()\n .addClass(((params.bulletActiveClass) + \"-next\"))\n .next()\n .addClass(((params.bulletActiveClass) + \"-next-next\"));\n }\n }\n });\n } else {\n var $bullet = bullets.eq(current);\n $bullet.addClass(params.bulletActiveClass);\n if (params.dynamicBullets) {\n var $firstDisplayedBullet = bullets.eq(firstIndex);\n var $lastDisplayedBullet = bullets.eq(lastIndex);\n for (var i = firstIndex; i <= lastIndex; i += 1) {\n bullets.eq(i).addClass(((params.bulletActiveClass) + \"-main\"));\n }\n $firstDisplayedBullet\n .prev()\n .addClass(((params.bulletActiveClass) + \"-prev\"))\n .prev()\n .addClass(((params.bulletActiveClass) + \"-prev-prev\"));\n $lastDisplayedBullet\n .next()\n .addClass(((params.bulletActiveClass) + \"-next\"))\n .next()\n .addClass(((params.bulletActiveClass) + \"-next-next\"));\n }\n }\n if (params.dynamicBullets) {\n var dynamicBulletsLength = Math.min(bullets.length, params.dynamicMainBullets + 4);\n var bulletsOffset = (((swiper.pagination.bulletSize * dynamicBulletsLength) - (swiper.pagination.bulletSize)) / 2) - (midIndex * swiper.pagination.bulletSize);\n var offsetProp = rtl ? 'right' : 'left';\n bullets.css(swiper.isHorizontal() ? offsetProp : 'top', (bulletsOffset + \"px\"));\n }\n }\n if (params.type === 'fraction') {\n $el.find((\".\" + (params.currentClass))).text(params.formatFractionCurrent(current + 1));\n $el.find((\".\" + (params.totalClass))).text(params.formatFractionTotal(total));\n }\n if (params.type === 'progressbar') {\n var progressbarDirection;\n if (params.progressbarOpposite) {\n progressbarDirection = swiper.isHorizontal() ? 'vertical' : 'horizontal';\n } else {\n progressbarDirection = swiper.isHorizontal() ? 'horizontal' : 'vertical';\n }\n var scale = (current + 1) / total;\n var scaleX = 1;\n var scaleY = 1;\n if (progressbarDirection === 'horizontal') {\n scaleX = scale;\n } else {\n scaleY = scale;\n }\n $el.find((\".\" + (params.progressbarFillClass))).transform((\"translate3d(0,0,0) scaleX(\" + scaleX + \") scaleY(\" + scaleY + \")\")).transition(swiper.params.speed);\n }\n if (params.type === 'custom' && params.renderCustom) {\n $el.html(params.renderCustom(swiper, current + 1, total));\n swiper.emit('paginationRender', swiper, $el[0]);\n } else {\n swiper.emit('paginationUpdate', swiper, $el[0]);\n }\n $el[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n },\n render: function render() {\n // Render Container\n var swiper = this;\n var params = swiper.params.pagination;\n if (!params.el || !swiper.pagination.el || !swiper.pagination.$el || swiper.pagination.$el.length === 0) { return; }\n var slidesLength = swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n\n var $el = swiper.pagination.$el;\n var paginationHTML = '';\n if (params.type === 'bullets') {\n var numberOfBullets = swiper.params.loop ? Math.ceil((slidesLength - (swiper.loopedSlides * 2)) / swiper.params.slidesPerGroup) : swiper.snapGrid.length;\n for (var i = 0; i < numberOfBullets; i += 1) {\n if (params.renderBullet) {\n paginationHTML += params.renderBullet.call(swiper, i, params.bulletClass);\n } else {\n paginationHTML += \"<\" + (params.bulletElement) + \" class=\\\"\" + (params.bulletClass) + \"\\\">\";\n }\n }\n $el.html(paginationHTML);\n swiper.pagination.bullets = $el.find((\".\" + (params.bulletClass)));\n }\n if (params.type === 'fraction') {\n if (params.renderFraction) {\n paginationHTML = params.renderFraction.call(swiper, params.currentClass, params.totalClass);\n } else {\n paginationHTML = \"\"\n + ' / '\n + \"\";\n }\n $el.html(paginationHTML);\n }\n if (params.type === 'progressbar') {\n if (params.renderProgressbar) {\n paginationHTML = params.renderProgressbar.call(swiper, params.progressbarFillClass);\n } else {\n paginationHTML = \"\";\n }\n $el.html(paginationHTML);\n }\n if (params.type !== 'custom') {\n swiper.emit('paginationRender', swiper.pagination.$el[0]);\n }\n },\n init: function init() {\n var swiper = this;\n var params = swiper.params.pagination;\n if (!params.el) { return; }\n\n var $el = $(params.el);\n if ($el.length === 0) { return; }\n\n if (\n swiper.params.uniqueNavElements\n && typeof params.el === 'string'\n && $el.length > 1\n && swiper.$el.find(params.el).length === 1\n ) {\n $el = swiper.$el.find(params.el);\n }\n\n if (params.type === 'bullets' && params.clickable) {\n $el.addClass(params.clickableClass);\n }\n\n $el.addClass(params.modifierClass + params.type);\n\n if (params.type === 'bullets' && params.dynamicBullets) {\n $el.addClass((\"\" + (params.modifierClass) + (params.type) + \"-dynamic\"));\n swiper.pagination.dynamicBulletIndex = 0;\n if (params.dynamicMainBullets < 1) {\n params.dynamicMainBullets = 1;\n }\n }\n if (params.type === 'progressbar' && params.progressbarOpposite) {\n $el.addClass(params.progressbarOppositeClass);\n }\n\n if (params.clickable) {\n $el.on('click', (\".\" + (params.bulletClass)), function onClick(e) {\n e.preventDefault();\n var index = $(this).index() * swiper.params.slidesPerGroup;\n if (swiper.params.loop) { index += swiper.loopedSlides; }\n swiper.slideTo(index);\n });\n }\n\n Utils.extend(swiper.pagination, {\n $el: $el,\n el: $el[0],\n });\n },\n destroy: function destroy() {\n var swiper = this;\n var params = swiper.params.pagination;\n if (!params.el || !swiper.pagination.el || !swiper.pagination.$el || swiper.pagination.$el.length === 0) { return; }\n var $el = swiper.pagination.$el;\n\n $el.removeClass(params.hiddenClass);\n $el.removeClass(params.modifierClass + params.type);\n if (swiper.pagination.bullets) { swiper.pagination.bullets.removeClass(params.bulletActiveClass); }\n if (params.clickable) {\n $el.off('click', (\".\" + (params.bulletClass)));\n }\n },\n };\n\n var Pagination$1 = {\n name: 'pagination',\n params: {\n pagination: {\n el: null,\n bulletElement: 'span',\n clickable: false,\n hideOnClick: false,\n renderBullet: null,\n renderProgressbar: null,\n renderFraction: null,\n renderCustom: null,\n progressbarOpposite: false,\n type: 'bullets', // 'bullets' or 'progressbar' or 'fraction' or 'custom'\n dynamicBullets: false,\n dynamicMainBullets: 1,\n formatFractionCurrent: function (number) { return number; },\n formatFractionTotal: function (number) { return number; },\n bulletClass: 'swiper-pagination-bullet',\n bulletActiveClass: 'swiper-pagination-bullet-active',\n modifierClass: 'swiper-pagination-', // NEW\n currentClass: 'swiper-pagination-current',\n totalClass: 'swiper-pagination-total',\n hiddenClass: 'swiper-pagination-hidden',\n progressbarFillClass: 'swiper-pagination-progressbar-fill',\n progressbarOppositeClass: 'swiper-pagination-progressbar-opposite',\n clickableClass: 'swiper-pagination-clickable', // NEW\n lockClass: 'swiper-pagination-lock',\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n pagination: {\n init: Pagination.init.bind(swiper),\n render: Pagination.render.bind(swiper),\n update: Pagination.update.bind(swiper),\n destroy: Pagination.destroy.bind(swiper),\n dynamicBulletIndex: 0,\n },\n });\n },\n on: {\n init: function init() {\n var swiper = this;\n swiper.pagination.init();\n swiper.pagination.render();\n swiper.pagination.update();\n },\n activeIndexChange: function activeIndexChange() {\n var swiper = this;\n if (swiper.params.loop) {\n swiper.pagination.update();\n } else if (typeof swiper.snapIndex === 'undefined') {\n swiper.pagination.update();\n }\n },\n snapIndexChange: function snapIndexChange() {\n var swiper = this;\n if (!swiper.params.loop) {\n swiper.pagination.update();\n }\n },\n slidesLengthChange: function slidesLengthChange() {\n var swiper = this;\n if (swiper.params.loop) {\n swiper.pagination.render();\n swiper.pagination.update();\n }\n },\n snapGridLengthChange: function snapGridLengthChange() {\n var swiper = this;\n if (!swiper.params.loop) {\n swiper.pagination.render();\n swiper.pagination.update();\n }\n },\n destroy: function destroy() {\n var swiper = this;\n swiper.pagination.destroy();\n },\n click: function click(e) {\n var swiper = this;\n if (\n swiper.params.pagination.el\n && swiper.params.pagination.hideOnClick\n && swiper.pagination.$el.length > 0\n && !$(e.target).hasClass(swiper.params.pagination.bulletClass)\n ) {\n var isHidden = swiper.pagination.$el.hasClass(swiper.params.pagination.hiddenClass);\n if (isHidden === true) {\n swiper.emit('paginationShow', swiper);\n } else {\n swiper.emit('paginationHide', swiper);\n }\n swiper.pagination.$el.toggleClass(swiper.params.pagination.hiddenClass);\n }\n },\n },\n };\n\n var Scrollbar = {\n setTranslate: function setTranslate() {\n var swiper = this;\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) { return; }\n var scrollbar = swiper.scrollbar;\n var rtl = swiper.rtlTranslate;\n var progress = swiper.progress;\n var dragSize = scrollbar.dragSize;\n var trackSize = scrollbar.trackSize;\n var $dragEl = scrollbar.$dragEl;\n var $el = scrollbar.$el;\n var params = swiper.params.scrollbar;\n\n var newSize = dragSize;\n var newPos = (trackSize - dragSize) * progress;\n if (rtl) {\n newPos = -newPos;\n if (newPos > 0) {\n newSize = dragSize - newPos;\n newPos = 0;\n } else if (-newPos + dragSize > trackSize) {\n newSize = trackSize + newPos;\n }\n } else if (newPos < 0) {\n newSize = dragSize + newPos;\n newPos = 0;\n } else if (newPos + dragSize > trackSize) {\n newSize = trackSize - newPos;\n }\n if (swiper.isHorizontal()) {\n if (Support.transforms3d) {\n $dragEl.transform((\"translate3d(\" + newPos + \"px, 0, 0)\"));\n } else {\n $dragEl.transform((\"translateX(\" + newPos + \"px)\"));\n }\n $dragEl[0].style.width = newSize + \"px\";\n } else {\n if (Support.transforms3d) {\n $dragEl.transform((\"translate3d(0px, \" + newPos + \"px, 0)\"));\n } else {\n $dragEl.transform((\"translateY(\" + newPos + \"px)\"));\n }\n $dragEl[0].style.height = newSize + \"px\";\n }\n if (params.hide) {\n clearTimeout(swiper.scrollbar.timeout);\n $el[0].style.opacity = 1;\n swiper.scrollbar.timeout = setTimeout(function () {\n $el[0].style.opacity = 0;\n $el.transition(400);\n }, 1000);\n }\n },\n setTransition: function setTransition(duration) {\n var swiper = this;\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) { return; }\n swiper.scrollbar.$dragEl.transition(duration);\n },\n updateSize: function updateSize() {\n var swiper = this;\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) { return; }\n\n var scrollbar = swiper.scrollbar;\n var $dragEl = scrollbar.$dragEl;\n var $el = scrollbar.$el;\n\n $dragEl[0].style.width = '';\n $dragEl[0].style.height = '';\n var trackSize = swiper.isHorizontal() ? $el[0].offsetWidth : $el[0].offsetHeight;\n\n var divider = swiper.size / swiper.virtualSize;\n var moveDivider = divider * (trackSize / swiper.size);\n var dragSize;\n if (swiper.params.scrollbar.dragSize === 'auto') {\n dragSize = trackSize * divider;\n } else {\n dragSize = parseInt(swiper.params.scrollbar.dragSize, 10);\n }\n\n if (swiper.isHorizontal()) {\n $dragEl[0].style.width = dragSize + \"px\";\n } else {\n $dragEl[0].style.height = dragSize + \"px\";\n }\n\n if (divider >= 1) {\n $el[0].style.display = 'none';\n } else {\n $el[0].style.display = '';\n }\n if (swiper.params.scrollbar.hide) {\n $el[0].style.opacity = 0;\n }\n Utils.extend(scrollbar, {\n trackSize: trackSize,\n divider: divider,\n moveDivider: moveDivider,\n dragSize: dragSize,\n });\n scrollbar.$el[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](swiper.params.scrollbar.lockClass);\n },\n getPointerPosition: function getPointerPosition(e) {\n var swiper = this;\n if (swiper.isHorizontal()) {\n return ((e.type === 'touchstart' || e.type === 'touchmove') ? e.targetTouches[0].pageX : e.pageX || e.clientX);\n }\n return ((e.type === 'touchstart' || e.type === 'touchmove') ? e.targetTouches[0].pageY : e.pageY || e.clientY);\n },\n setDragPosition: function setDragPosition(e) {\n var swiper = this;\n var scrollbar = swiper.scrollbar;\n var rtl = swiper.rtlTranslate;\n var $el = scrollbar.$el;\n var dragSize = scrollbar.dragSize;\n var trackSize = scrollbar.trackSize;\n var dragStartPos = scrollbar.dragStartPos;\n\n var positionRatio;\n positionRatio = ((scrollbar.getPointerPosition(e)) - $el.offset()[swiper.isHorizontal() ? 'left' : 'top']\n - (dragStartPos !== null ? dragStartPos : dragSize / 2)) / (trackSize - dragSize);\n positionRatio = Math.max(Math.min(positionRatio, 1), 0);\n if (rtl) {\n positionRatio = 1 - positionRatio;\n }\n\n var position = swiper.minTranslate() + ((swiper.maxTranslate() - swiper.minTranslate()) * positionRatio);\n\n swiper.updateProgress(position);\n swiper.setTranslate(position);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n },\n onDragStart: function onDragStart(e) {\n var swiper = this;\n var params = swiper.params.scrollbar;\n var scrollbar = swiper.scrollbar;\n var $wrapperEl = swiper.$wrapperEl;\n var $el = scrollbar.$el;\n var $dragEl = scrollbar.$dragEl;\n swiper.scrollbar.isTouched = true;\n swiper.scrollbar.dragStartPos = (e.target === $dragEl[0] || e.target === $dragEl)\n ? scrollbar.getPointerPosition(e) - e.target.getBoundingClientRect()[swiper.isHorizontal() ? 'left' : 'top'] : null;\n e.preventDefault();\n e.stopPropagation();\n\n $wrapperEl.transition(100);\n $dragEl.transition(100);\n scrollbar.setDragPosition(e);\n\n clearTimeout(swiper.scrollbar.dragTimeout);\n\n $el.transition(0);\n if (params.hide) {\n $el.css('opacity', 1);\n }\n swiper.emit('scrollbarDragStart', e);\n },\n onDragMove: function onDragMove(e) {\n var swiper = this;\n var scrollbar = swiper.scrollbar;\n var $wrapperEl = swiper.$wrapperEl;\n var $el = scrollbar.$el;\n var $dragEl = scrollbar.$dragEl;\n\n if (!swiper.scrollbar.isTouched) { return; }\n if (e.preventDefault) { e.preventDefault(); }\n else { e.returnValue = false; }\n scrollbar.setDragPosition(e);\n $wrapperEl.transition(0);\n $el.transition(0);\n $dragEl.transition(0);\n swiper.emit('scrollbarDragMove', e);\n },\n onDragEnd: function onDragEnd(e) {\n var swiper = this;\n\n var params = swiper.params.scrollbar;\n var scrollbar = swiper.scrollbar;\n var $el = scrollbar.$el;\n\n if (!swiper.scrollbar.isTouched) { return; }\n swiper.scrollbar.isTouched = false;\n if (params.hide) {\n clearTimeout(swiper.scrollbar.dragTimeout);\n swiper.scrollbar.dragTimeout = Utils.nextTick(function () {\n $el.css('opacity', 0);\n $el.transition(400);\n }, 1000);\n }\n swiper.emit('scrollbarDragEnd', e);\n if (params.snapOnRelease) {\n swiper.slideToClosest();\n }\n },\n enableDraggable: function enableDraggable() {\n var swiper = this;\n if (!swiper.params.scrollbar.el) { return; }\n var scrollbar = swiper.scrollbar;\n var touchEventsTouch = swiper.touchEventsTouch;\n var touchEventsDesktop = swiper.touchEventsDesktop;\n var params = swiper.params;\n var $el = scrollbar.$el;\n var target = $el[0];\n var activeListener = Support.passiveListener && params.passiveListeners ? { passive: false, capture: false } : false;\n var passiveListener = Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;\n if (!Support.touch) {\n target.addEventListener(touchEventsDesktop.start, swiper.scrollbar.onDragStart, activeListener);\n doc.addEventListener(touchEventsDesktop.move, swiper.scrollbar.onDragMove, activeListener);\n doc.addEventListener(touchEventsDesktop.end, swiper.scrollbar.onDragEnd, passiveListener);\n } else {\n target.addEventListener(touchEventsTouch.start, swiper.scrollbar.onDragStart, activeListener);\n target.addEventListener(touchEventsTouch.move, swiper.scrollbar.onDragMove, activeListener);\n target.addEventListener(touchEventsTouch.end, swiper.scrollbar.onDragEnd, passiveListener);\n }\n },\n disableDraggable: function disableDraggable() {\n var swiper = this;\n if (!swiper.params.scrollbar.el) { return; }\n var scrollbar = swiper.scrollbar;\n var touchEventsTouch = swiper.touchEventsTouch;\n var touchEventsDesktop = swiper.touchEventsDesktop;\n var params = swiper.params;\n var $el = scrollbar.$el;\n var target = $el[0];\n var activeListener = Support.passiveListener && params.passiveListeners ? { passive: false, capture: false } : false;\n var passiveListener = Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;\n if (!Support.touch) {\n target.removeEventListener(touchEventsDesktop.start, swiper.scrollbar.onDragStart, activeListener);\n doc.removeEventListener(touchEventsDesktop.move, swiper.scrollbar.onDragMove, activeListener);\n doc.removeEventListener(touchEventsDesktop.end, swiper.scrollbar.onDragEnd, passiveListener);\n } else {\n target.removeEventListener(touchEventsTouch.start, swiper.scrollbar.onDragStart, activeListener);\n target.removeEventListener(touchEventsTouch.move, swiper.scrollbar.onDragMove, activeListener);\n target.removeEventListener(touchEventsTouch.end, swiper.scrollbar.onDragEnd, passiveListener);\n }\n },\n init: function init() {\n var swiper = this;\n if (!swiper.params.scrollbar.el) { return; }\n var scrollbar = swiper.scrollbar;\n var $swiperEl = swiper.$el;\n var params = swiper.params.scrollbar;\n\n var $el = $(params.el);\n if (swiper.params.uniqueNavElements && typeof params.el === 'string' && $el.length > 1 && $swiperEl.find(params.el).length === 1) {\n $el = $swiperEl.find(params.el);\n }\n\n var $dragEl = $el.find((\".\" + (swiper.params.scrollbar.dragClass)));\n if ($dragEl.length === 0) {\n $dragEl = $((\"
\"));\n $el.append($dragEl);\n }\n\n Utils.extend(scrollbar, {\n $el: $el,\n el: $el[0],\n $dragEl: $dragEl,\n dragEl: $dragEl[0],\n });\n\n if (params.draggable) {\n scrollbar.enableDraggable();\n }\n },\n destroy: function destroy() {\n var swiper = this;\n swiper.scrollbar.disableDraggable();\n },\n };\n\n var Scrollbar$1 = {\n name: 'scrollbar',\n params: {\n scrollbar: {\n el: null,\n dragSize: 'auto',\n hide: false,\n draggable: false,\n snapOnRelease: true,\n lockClass: 'swiper-scrollbar-lock',\n dragClass: 'swiper-scrollbar-drag',\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n scrollbar: {\n init: Scrollbar.init.bind(swiper),\n destroy: Scrollbar.destroy.bind(swiper),\n updateSize: Scrollbar.updateSize.bind(swiper),\n setTranslate: Scrollbar.setTranslate.bind(swiper),\n setTransition: Scrollbar.setTransition.bind(swiper),\n enableDraggable: Scrollbar.enableDraggable.bind(swiper),\n disableDraggable: Scrollbar.disableDraggable.bind(swiper),\n setDragPosition: Scrollbar.setDragPosition.bind(swiper),\n getPointerPosition: Scrollbar.getPointerPosition.bind(swiper),\n onDragStart: Scrollbar.onDragStart.bind(swiper),\n onDragMove: Scrollbar.onDragMove.bind(swiper),\n onDragEnd: Scrollbar.onDragEnd.bind(swiper),\n isTouched: false,\n timeout: null,\n dragTimeout: null,\n },\n });\n },\n on: {\n init: function init() {\n var swiper = this;\n swiper.scrollbar.init();\n swiper.scrollbar.updateSize();\n swiper.scrollbar.setTranslate();\n },\n update: function update() {\n var swiper = this;\n swiper.scrollbar.updateSize();\n },\n resize: function resize() {\n var swiper = this;\n swiper.scrollbar.updateSize();\n },\n observerUpdate: function observerUpdate() {\n var swiper = this;\n swiper.scrollbar.updateSize();\n },\n setTranslate: function setTranslate() {\n var swiper = this;\n swiper.scrollbar.setTranslate();\n },\n setTransition: function setTransition(duration) {\n var swiper = this;\n swiper.scrollbar.setTransition(duration);\n },\n destroy: function destroy() {\n var swiper = this;\n swiper.scrollbar.destroy();\n },\n },\n };\n\n var Parallax = {\n setTransform: function setTransform(el, progress) {\n var swiper = this;\n var rtl = swiper.rtl;\n\n var $el = $(el);\n var rtlFactor = rtl ? -1 : 1;\n\n var p = $el.attr('data-swiper-parallax') || '0';\n var x = $el.attr('data-swiper-parallax-x');\n var y = $el.attr('data-swiper-parallax-y');\n var scale = $el.attr('data-swiper-parallax-scale');\n var opacity = $el.attr('data-swiper-parallax-opacity');\n\n if (x || y) {\n x = x || '0';\n y = y || '0';\n } else if (swiper.isHorizontal()) {\n x = p;\n y = '0';\n } else {\n y = p;\n x = '0';\n }\n\n if ((x).indexOf('%') >= 0) {\n x = (parseInt(x, 10) * progress * rtlFactor) + \"%\";\n } else {\n x = (x * progress * rtlFactor) + \"px\";\n }\n if ((y).indexOf('%') >= 0) {\n y = (parseInt(y, 10) * progress) + \"%\";\n } else {\n y = (y * progress) + \"px\";\n }\n\n if (typeof opacity !== 'undefined' && opacity !== null) {\n var currentOpacity = opacity - ((opacity - 1) * (1 - Math.abs(progress)));\n $el[0].style.opacity = currentOpacity;\n }\n if (typeof scale === 'undefined' || scale === null) {\n $el.transform((\"translate3d(\" + x + \", \" + y + \", 0px)\"));\n } else {\n var currentScale = scale - ((scale - 1) * (1 - Math.abs(progress)));\n $el.transform((\"translate3d(\" + x + \", \" + y + \", 0px) scale(\" + currentScale + \")\"));\n }\n },\n setTranslate: function setTranslate() {\n var swiper = this;\n var $el = swiper.$el;\n var slides = swiper.slides;\n var progress = swiper.progress;\n var snapGrid = swiper.snapGrid;\n $el.children('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]')\n .each(function (index, el) {\n swiper.parallax.setTransform(el, progress);\n });\n slides.each(function (slideIndex, slideEl) {\n var slideProgress = slideEl.progress;\n if (swiper.params.slidesPerGroup > 1 && swiper.params.slidesPerView !== 'auto') {\n slideProgress += Math.ceil(slideIndex / 2) - (progress * (snapGrid.length - 1));\n }\n slideProgress = Math.min(Math.max(slideProgress, -1), 1);\n $(slideEl).find('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]')\n .each(function (index, el) {\n swiper.parallax.setTransform(el, slideProgress);\n });\n });\n },\n setTransition: function setTransition(duration) {\n if ( duration === void 0 ) duration = this.params.speed;\n\n var swiper = this;\n var $el = swiper.$el;\n $el.find('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]')\n .each(function (index, parallaxEl) {\n var $parallaxEl = $(parallaxEl);\n var parallaxDuration = parseInt($parallaxEl.attr('data-swiper-parallax-duration'), 10) || duration;\n if (duration === 0) { parallaxDuration = 0; }\n $parallaxEl.transition(parallaxDuration);\n });\n },\n };\n\n var Parallax$1 = {\n name: 'parallax',\n params: {\n parallax: {\n enabled: false,\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n parallax: {\n setTransform: Parallax.setTransform.bind(swiper),\n setTranslate: Parallax.setTranslate.bind(swiper),\n setTransition: Parallax.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit: function beforeInit() {\n var swiper = this;\n if (!swiper.params.parallax.enabled) { return; }\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n },\n init: function init() {\n var swiper = this;\n if (!swiper.params.parallax.enabled) { return; }\n swiper.parallax.setTranslate();\n },\n setTranslate: function setTranslate() {\n var swiper = this;\n if (!swiper.params.parallax.enabled) { return; }\n swiper.parallax.setTranslate();\n },\n setTransition: function setTransition(duration) {\n var swiper = this;\n if (!swiper.params.parallax.enabled) { return; }\n swiper.parallax.setTransition(duration);\n },\n },\n };\n\n var Zoom = {\n // Calc Scale From Multi-touches\n getDistanceBetweenTouches: function getDistanceBetweenTouches(e) {\n if (e.targetTouches.length < 2) { return 1; }\n var x1 = e.targetTouches[0].pageX;\n var y1 = e.targetTouches[0].pageY;\n var x2 = e.targetTouches[1].pageX;\n var y2 = e.targetTouches[1].pageY;\n var distance = Math.sqrt((Math.pow( (x2 - x1), 2 )) + (Math.pow( (y2 - y1), 2 )));\n return distance;\n },\n // Events\n onGestureStart: function onGestureStart(e) {\n var swiper = this;\n var params = swiper.params.zoom;\n var zoom = swiper.zoom;\n var gesture = zoom.gesture;\n zoom.fakeGestureTouched = false;\n zoom.fakeGestureMoved = false;\n if (!Support.gestures) {\n if (e.type !== 'touchstart' || (e.type === 'touchstart' && e.targetTouches.length < 2)) {\n return;\n }\n zoom.fakeGestureTouched = true;\n gesture.scaleStart = Zoom.getDistanceBetweenTouches(e);\n }\n if (!gesture.$slideEl || !gesture.$slideEl.length) {\n gesture.$slideEl = $(e.target).closest('.swiper-slide');\n if (gesture.$slideEl.length === 0) { gesture.$slideEl = swiper.slides.eq(swiper.activeIndex); }\n gesture.$imageEl = gesture.$slideEl.find('img, svg, canvas');\n gesture.$imageWrapEl = gesture.$imageEl.parent((\".\" + (params.containerClass)));\n gesture.maxRatio = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n if (gesture.$imageWrapEl.length === 0) {\n gesture.$imageEl = undefined;\n return;\n }\n }\n gesture.$imageEl.transition(0);\n swiper.zoom.isScaling = true;\n },\n onGestureChange: function onGestureChange(e) {\n var swiper = this;\n var params = swiper.params.zoom;\n var zoom = swiper.zoom;\n var gesture = zoom.gesture;\n if (!Support.gestures) {\n if (e.type !== 'touchmove' || (e.type === 'touchmove' && e.targetTouches.length < 2)) {\n return;\n }\n zoom.fakeGestureMoved = true;\n gesture.scaleMove = Zoom.getDistanceBetweenTouches(e);\n }\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }\n if (Support.gestures) {\n zoom.scale = e.scale * zoom.currentScale;\n } else {\n zoom.scale = (gesture.scaleMove / gesture.scaleStart) * zoom.currentScale;\n }\n if (zoom.scale > gesture.maxRatio) {\n zoom.scale = (gesture.maxRatio - 1) + (Math.pow( ((zoom.scale - gesture.maxRatio) + 1), 0.5 ));\n }\n if (zoom.scale < params.minRatio) {\n zoom.scale = (params.minRatio + 1) - (Math.pow( ((params.minRatio - zoom.scale) + 1), 0.5 ));\n }\n gesture.$imageEl.transform((\"translate3d(0,0,0) scale(\" + (zoom.scale) + \")\"));\n },\n onGestureEnd: function onGestureEnd(e) {\n var swiper = this;\n var params = swiper.params.zoom;\n var zoom = swiper.zoom;\n var gesture = zoom.gesture;\n if (!Support.gestures) {\n if (!zoom.fakeGestureTouched || !zoom.fakeGestureMoved) {\n return;\n }\n if (e.type !== 'touchend' || (e.type === 'touchend' && e.changedTouches.length < 2 && !Device.android)) {\n return;\n }\n zoom.fakeGestureTouched = false;\n zoom.fakeGestureMoved = false;\n }\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }\n zoom.scale = Math.max(Math.min(zoom.scale, gesture.maxRatio), params.minRatio);\n gesture.$imageEl.transition(swiper.params.speed).transform((\"translate3d(0,0,0) scale(\" + (zoom.scale) + \")\"));\n zoom.currentScale = zoom.scale;\n zoom.isScaling = false;\n if (zoom.scale === 1) { gesture.$slideEl = undefined; }\n },\n onTouchStart: function onTouchStart(e) {\n var swiper = this;\n var zoom = swiper.zoom;\n var gesture = zoom.gesture;\n var image = zoom.image;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }\n if (image.isTouched) { return; }\n if (Device.android) { e.preventDefault(); }\n image.isTouched = true;\n image.touchesStart.x = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesStart.y = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n },\n onTouchMove: function onTouchMove(e) {\n var swiper = this;\n var zoom = swiper.zoom;\n var gesture = zoom.gesture;\n var image = zoom.image;\n var velocity = zoom.velocity;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }\n swiper.allowClick = false;\n if (!image.isTouched || !gesture.$slideEl) { return; }\n\n if (!image.isMoved) {\n image.width = gesture.$imageEl[0].offsetWidth;\n image.height = gesture.$imageEl[0].offsetHeight;\n image.startX = Utils.getTranslate(gesture.$imageWrapEl[0], 'x') || 0;\n image.startY = Utils.getTranslate(gesture.$imageWrapEl[0], 'y') || 0;\n gesture.slideWidth = gesture.$slideEl[0].offsetWidth;\n gesture.slideHeight = gesture.$slideEl[0].offsetHeight;\n gesture.$imageWrapEl.transition(0);\n if (swiper.rtl) {\n image.startX = -image.startX;\n image.startY = -image.startY;\n }\n }\n // Define if we need image drag\n var scaledWidth = image.width * zoom.scale;\n var scaledHeight = image.height * zoom.scale;\n\n if (scaledWidth < gesture.slideWidth && scaledHeight < gesture.slideHeight) { return; }\n\n image.minX = Math.min(((gesture.slideWidth / 2) - (scaledWidth / 2)), 0);\n image.maxX = -image.minX;\n image.minY = Math.min(((gesture.slideHeight / 2) - (scaledHeight / 2)), 0);\n image.maxY = -image.minY;\n\n image.touchesCurrent.x = e.type === 'touchmove' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesCurrent.y = e.type === 'touchmove' ? e.targetTouches[0].pageY : e.pageY;\n\n if (!image.isMoved && !zoom.isScaling) {\n if (\n swiper.isHorizontal()\n && (\n (Math.floor(image.minX) === Math.floor(image.startX) && image.touchesCurrent.x < image.touchesStart.x)\n || (Math.floor(image.maxX) === Math.floor(image.startX) && image.touchesCurrent.x > image.touchesStart.x)\n )\n ) {\n image.isTouched = false;\n return;\n } if (\n !swiper.isHorizontal()\n && (\n (Math.floor(image.minY) === Math.floor(image.startY) && image.touchesCurrent.y < image.touchesStart.y)\n || (Math.floor(image.maxY) === Math.floor(image.startY) && image.touchesCurrent.y > image.touchesStart.y)\n )\n ) {\n image.isTouched = false;\n return;\n }\n }\n e.preventDefault();\n e.stopPropagation();\n\n image.isMoved = true;\n image.currentX = (image.touchesCurrent.x - image.touchesStart.x) + image.startX;\n image.currentY = (image.touchesCurrent.y - image.touchesStart.y) + image.startY;\n\n if (image.currentX < image.minX) {\n image.currentX = (image.minX + 1) - (Math.pow( ((image.minX - image.currentX) + 1), 0.8 ));\n }\n if (image.currentX > image.maxX) {\n image.currentX = (image.maxX - 1) + (Math.pow( ((image.currentX - image.maxX) + 1), 0.8 ));\n }\n\n if (image.currentY < image.minY) {\n image.currentY = (image.minY + 1) - (Math.pow( ((image.minY - image.currentY) + 1), 0.8 ));\n }\n if (image.currentY > image.maxY) {\n image.currentY = (image.maxY - 1) + (Math.pow( ((image.currentY - image.maxY) + 1), 0.8 ));\n }\n\n // Velocity\n if (!velocity.prevPositionX) { velocity.prevPositionX = image.touchesCurrent.x; }\n if (!velocity.prevPositionY) { velocity.prevPositionY = image.touchesCurrent.y; }\n if (!velocity.prevTime) { velocity.prevTime = Date.now(); }\n velocity.x = (image.touchesCurrent.x - velocity.prevPositionX) / (Date.now() - velocity.prevTime) / 2;\n velocity.y = (image.touchesCurrent.y - velocity.prevPositionY) / (Date.now() - velocity.prevTime) / 2;\n if (Math.abs(image.touchesCurrent.x - velocity.prevPositionX) < 2) { velocity.x = 0; }\n if (Math.abs(image.touchesCurrent.y - velocity.prevPositionY) < 2) { velocity.y = 0; }\n velocity.prevPositionX = image.touchesCurrent.x;\n velocity.prevPositionY = image.touchesCurrent.y;\n velocity.prevTime = Date.now();\n\n gesture.$imageWrapEl.transform((\"translate3d(\" + (image.currentX) + \"px, \" + (image.currentY) + \"px,0)\"));\n },\n onTouchEnd: function onTouchEnd() {\n var swiper = this;\n var zoom = swiper.zoom;\n var gesture = zoom.gesture;\n var image = zoom.image;\n var velocity = zoom.velocity;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }\n if (!image.isTouched || !image.isMoved) {\n image.isTouched = false;\n image.isMoved = false;\n return;\n }\n image.isTouched = false;\n image.isMoved = false;\n var momentumDurationX = 300;\n var momentumDurationY = 300;\n var momentumDistanceX = velocity.x * momentumDurationX;\n var newPositionX = image.currentX + momentumDistanceX;\n var momentumDistanceY = velocity.y * momentumDurationY;\n var newPositionY = image.currentY + momentumDistanceY;\n\n // Fix duration\n if (velocity.x !== 0) { momentumDurationX = Math.abs((newPositionX - image.currentX) / velocity.x); }\n if (velocity.y !== 0) { momentumDurationY = Math.abs((newPositionY - image.currentY) / velocity.y); }\n var momentumDuration = Math.max(momentumDurationX, momentumDurationY);\n\n image.currentX = newPositionX;\n image.currentY = newPositionY;\n\n // Define if we need image drag\n var scaledWidth = image.width * zoom.scale;\n var scaledHeight = image.height * zoom.scale;\n image.minX = Math.min(((gesture.slideWidth / 2) - (scaledWidth / 2)), 0);\n image.maxX = -image.minX;\n image.minY = Math.min(((gesture.slideHeight / 2) - (scaledHeight / 2)), 0);\n image.maxY = -image.minY;\n image.currentX = Math.max(Math.min(image.currentX, image.maxX), image.minX);\n image.currentY = Math.max(Math.min(image.currentY, image.maxY), image.minY);\n\n gesture.$imageWrapEl.transition(momentumDuration).transform((\"translate3d(\" + (image.currentX) + \"px, \" + (image.currentY) + \"px,0)\"));\n },\n onTransitionEnd: function onTransitionEnd() {\n var swiper = this;\n var zoom = swiper.zoom;\n var gesture = zoom.gesture;\n if (gesture.$slideEl && swiper.previousIndex !== swiper.activeIndex) {\n gesture.$imageEl.transform('translate3d(0,0,0) scale(1)');\n gesture.$imageWrapEl.transform('translate3d(0,0,0)');\n\n zoom.scale = 1;\n zoom.currentScale = 1;\n\n gesture.$slideEl = undefined;\n gesture.$imageEl = undefined;\n gesture.$imageWrapEl = undefined;\n }\n },\n // Toggle Zoom\n toggle: function toggle(e) {\n var swiper = this;\n var zoom = swiper.zoom;\n\n if (zoom.scale && zoom.scale !== 1) {\n // Zoom Out\n zoom.out();\n } else {\n // Zoom In\n zoom.in(e);\n }\n },\n in: function in$1(e) {\n var swiper = this;\n\n var zoom = swiper.zoom;\n var params = swiper.params.zoom;\n var gesture = zoom.gesture;\n var image = zoom.image;\n\n if (!gesture.$slideEl) {\n gesture.$slideEl = swiper.clickedSlide ? $(swiper.clickedSlide) : swiper.slides.eq(swiper.activeIndex);\n gesture.$imageEl = gesture.$slideEl.find('img, svg, canvas');\n gesture.$imageWrapEl = gesture.$imageEl.parent((\".\" + (params.containerClass)));\n }\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }\n\n gesture.$slideEl.addClass((\"\" + (params.zoomedSlideClass)));\n\n var touchX;\n var touchY;\n var offsetX;\n var offsetY;\n var diffX;\n var diffY;\n var translateX;\n var translateY;\n var imageWidth;\n var imageHeight;\n var scaledWidth;\n var scaledHeight;\n var translateMinX;\n var translateMinY;\n var translateMaxX;\n var translateMaxY;\n var slideWidth;\n var slideHeight;\n\n if (typeof image.touchesStart.x === 'undefined' && e) {\n touchX = e.type === 'touchend' ? e.changedTouches[0].pageX : e.pageX;\n touchY = e.type === 'touchend' ? e.changedTouches[0].pageY : e.pageY;\n } else {\n touchX = image.touchesStart.x;\n touchY = image.touchesStart.y;\n }\n\n zoom.scale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n zoom.currentScale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n if (e) {\n slideWidth = gesture.$slideEl[0].offsetWidth;\n slideHeight = gesture.$slideEl[0].offsetHeight;\n offsetX = gesture.$slideEl.offset().left;\n offsetY = gesture.$slideEl.offset().top;\n diffX = (offsetX + (slideWidth / 2)) - touchX;\n diffY = (offsetY + (slideHeight / 2)) - touchY;\n\n imageWidth = gesture.$imageEl[0].offsetWidth;\n imageHeight = gesture.$imageEl[0].offsetHeight;\n scaledWidth = imageWidth * zoom.scale;\n scaledHeight = imageHeight * zoom.scale;\n\n translateMinX = Math.min(((slideWidth / 2) - (scaledWidth / 2)), 0);\n translateMinY = Math.min(((slideHeight / 2) - (scaledHeight / 2)), 0);\n translateMaxX = -translateMinX;\n translateMaxY = -translateMinY;\n\n translateX = diffX * zoom.scale;\n translateY = diffY * zoom.scale;\n\n if (translateX < translateMinX) {\n translateX = translateMinX;\n }\n if (translateX > translateMaxX) {\n translateX = translateMaxX;\n }\n\n if (translateY < translateMinY) {\n translateY = translateMinY;\n }\n if (translateY > translateMaxY) {\n translateY = translateMaxY;\n }\n } else {\n translateX = 0;\n translateY = 0;\n }\n gesture.$imageWrapEl.transition(300).transform((\"translate3d(\" + translateX + \"px, \" + translateY + \"px,0)\"));\n gesture.$imageEl.transition(300).transform((\"translate3d(0,0,0) scale(\" + (zoom.scale) + \")\"));\n },\n out: function out() {\n var swiper = this;\n\n var zoom = swiper.zoom;\n var params = swiper.params.zoom;\n var gesture = zoom.gesture;\n\n if (!gesture.$slideEl) {\n gesture.$slideEl = swiper.clickedSlide ? $(swiper.clickedSlide) : swiper.slides.eq(swiper.activeIndex);\n gesture.$imageEl = gesture.$slideEl.find('img, svg, canvas');\n gesture.$imageWrapEl = gesture.$imageEl.parent((\".\" + (params.containerClass)));\n }\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) { return; }\n\n zoom.scale = 1;\n zoom.currentScale = 1;\n gesture.$imageWrapEl.transition(300).transform('translate3d(0,0,0)');\n gesture.$imageEl.transition(300).transform('translate3d(0,0,0) scale(1)');\n gesture.$slideEl.removeClass((\"\" + (params.zoomedSlideClass)));\n gesture.$slideEl = undefined;\n },\n // Attach/Detach Events\n enable: function enable() {\n var swiper = this;\n var zoom = swiper.zoom;\n if (zoom.enabled) { return; }\n zoom.enabled = true;\n\n var passiveListener = swiper.touchEvents.start === 'touchstart' && Support.passiveListener && swiper.params.passiveListeners ? { passive: true, capture: false } : false;\n\n // Scale image\n if (Support.gestures) {\n swiper.$wrapperEl.on('gesturestart', '.swiper-slide', zoom.onGestureStart, passiveListener);\n swiper.$wrapperEl.on('gesturechange', '.swiper-slide', zoom.onGestureChange, passiveListener);\n swiper.$wrapperEl.on('gestureend', '.swiper-slide', zoom.onGestureEnd, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.on(swiper.touchEvents.start, '.swiper-slide', zoom.onGestureStart, passiveListener);\n swiper.$wrapperEl.on(swiper.touchEvents.move, '.swiper-slide', zoom.onGestureChange, passiveListener);\n swiper.$wrapperEl.on(swiper.touchEvents.end, '.swiper-slide', zoom.onGestureEnd, passiveListener);\n }\n\n // Move image\n swiper.$wrapperEl.on(swiper.touchEvents.move, (\".\" + (swiper.params.zoom.containerClass)), zoom.onTouchMove);\n },\n disable: function disable() {\n var swiper = this;\n var zoom = swiper.zoom;\n if (!zoom.enabled) { return; }\n\n swiper.zoom.enabled = false;\n\n var passiveListener = swiper.touchEvents.start === 'touchstart' && Support.passiveListener && swiper.params.passiveListeners ? { passive: true, capture: false } : false;\n\n // Scale image\n if (Support.gestures) {\n swiper.$wrapperEl.off('gesturestart', '.swiper-slide', zoom.onGestureStart, passiveListener);\n swiper.$wrapperEl.off('gesturechange', '.swiper-slide', zoom.onGestureChange, passiveListener);\n swiper.$wrapperEl.off('gestureend', '.swiper-slide', zoom.onGestureEnd, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.off(swiper.touchEvents.start, '.swiper-slide', zoom.onGestureStart, passiveListener);\n swiper.$wrapperEl.off(swiper.touchEvents.move, '.swiper-slide', zoom.onGestureChange, passiveListener);\n swiper.$wrapperEl.off(swiper.touchEvents.end, '.swiper-slide', zoom.onGestureEnd, passiveListener);\n }\n\n // Move image\n swiper.$wrapperEl.off(swiper.touchEvents.move, (\".\" + (swiper.params.zoom.containerClass)), zoom.onTouchMove);\n },\n };\n\n var Zoom$1 = {\n name: 'zoom',\n params: {\n zoom: {\n enabled: false,\n maxRatio: 3,\n minRatio: 1,\n toggle: true,\n containerClass: 'swiper-zoom-container',\n zoomedSlideClass: 'swiper-slide-zoomed',\n },\n },\n create: function create() {\n var swiper = this;\n var zoom = {\n enabled: false,\n scale: 1,\n currentScale: 1,\n isScaling: false,\n gesture: {\n $slideEl: undefined,\n slideWidth: undefined,\n slideHeight: undefined,\n $imageEl: undefined,\n $imageWrapEl: undefined,\n maxRatio: 3,\n },\n image: {\n isTouched: undefined,\n isMoved: undefined,\n currentX: undefined,\n currentY: undefined,\n minX: undefined,\n minY: undefined,\n maxX: undefined,\n maxY: undefined,\n width: undefined,\n height: undefined,\n startX: undefined,\n startY: undefined,\n touchesStart: {},\n touchesCurrent: {},\n },\n velocity: {\n x: undefined,\n y: undefined,\n prevPositionX: undefined,\n prevPositionY: undefined,\n prevTime: undefined,\n },\n };\n\n ('onGestureStart onGestureChange onGestureEnd onTouchStart onTouchMove onTouchEnd onTransitionEnd toggle enable disable in out').split(' ').forEach(function (methodName) {\n zoom[methodName] = Zoom[methodName].bind(swiper);\n });\n Utils.extend(swiper, {\n zoom: zoom,\n });\n\n var scale = 1;\n Object.defineProperty(swiper.zoom, 'scale', {\n get: function get() {\n return scale;\n },\n set: function set(value) {\n if (scale !== value) {\n var imageEl = swiper.zoom.gesture.$imageEl ? swiper.zoom.gesture.$imageEl[0] : undefined;\n var slideEl = swiper.zoom.gesture.$slideEl ? swiper.zoom.gesture.$slideEl[0] : undefined;\n swiper.emit('zoomChange', value, imageEl, slideEl);\n }\n scale = value;\n },\n });\n },\n on: {\n init: function init() {\n var swiper = this;\n if (swiper.params.zoom.enabled) {\n swiper.zoom.enable();\n }\n },\n destroy: function destroy() {\n var swiper = this;\n swiper.zoom.disable();\n },\n touchStart: function touchStart(e) {\n var swiper = this;\n if (!swiper.zoom.enabled) { return; }\n swiper.zoom.onTouchStart(e);\n },\n touchEnd: function touchEnd(e) {\n var swiper = this;\n if (!swiper.zoom.enabled) { return; }\n swiper.zoom.onTouchEnd(e);\n },\n doubleTap: function doubleTap(e) {\n var swiper = this;\n if (swiper.params.zoom.enabled && swiper.zoom.enabled && swiper.params.zoom.toggle) {\n swiper.zoom.toggle(e);\n }\n },\n transitionEnd: function transitionEnd() {\n var swiper = this;\n if (swiper.zoom.enabled && swiper.params.zoom.enabled) {\n swiper.zoom.onTransitionEnd();\n }\n },\n },\n };\n\n var Lazy = {\n loadInSlide: function loadInSlide(index, loadInDuplicate) {\n if ( loadInDuplicate === void 0 ) loadInDuplicate = true;\n\n var swiper = this;\n var params = swiper.params.lazy;\n if (typeof index === 'undefined') { return; }\n if (swiper.slides.length === 0) { return; }\n var isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n\n var $slideEl = isVirtual\n ? swiper.$wrapperEl.children((\".\" + (swiper.params.slideClass) + \"[data-swiper-slide-index=\\\"\" + index + \"\\\"]\"))\n : swiper.slides.eq(index);\n\n var $images = $slideEl.find((\".\" + (params.elementClass) + \":not(.\" + (params.loadedClass) + \"):not(.\" + (params.loadingClass) + \")\"));\n if ($slideEl.hasClass(params.elementClass) && !$slideEl.hasClass(params.loadedClass) && !$slideEl.hasClass(params.loadingClass)) {\n $images = $images.add($slideEl[0]);\n }\n if ($images.length === 0) { return; }\n\n $images.each(function (imageIndex, imageEl) {\n var $imageEl = $(imageEl);\n $imageEl.addClass(params.loadingClass);\n\n var background = $imageEl.attr('data-background');\n var src = $imageEl.attr('data-src');\n var srcset = $imageEl.attr('data-srcset');\n var sizes = $imageEl.attr('data-sizes');\n\n swiper.loadImage($imageEl[0], (src || background), srcset, sizes, false, function () {\n if (typeof swiper === 'undefined' || swiper === null || !swiper || (swiper && !swiper.params) || swiper.destroyed) { return; }\n if (background) {\n $imageEl.css('background-image', (\"url(\\\"\" + background + \"\\\")\"));\n $imageEl.removeAttr('data-background');\n } else {\n if (srcset) {\n $imageEl.attr('srcset', srcset);\n $imageEl.removeAttr('data-srcset');\n }\n if (sizes) {\n $imageEl.attr('sizes', sizes);\n $imageEl.removeAttr('data-sizes');\n }\n if (src) {\n $imageEl.attr('src', src);\n $imageEl.removeAttr('data-src');\n }\n }\n\n $imageEl.addClass(params.loadedClass).removeClass(params.loadingClass);\n $slideEl.find((\".\" + (params.preloaderClass))).remove();\n if (swiper.params.loop && loadInDuplicate) {\n var slideOriginalIndex = $slideEl.attr('data-swiper-slide-index');\n if ($slideEl.hasClass(swiper.params.slideDuplicateClass)) {\n var originalSlide = swiper.$wrapperEl.children((\"[data-swiper-slide-index=\\\"\" + slideOriginalIndex + \"\\\"]:not(.\" + (swiper.params.slideDuplicateClass) + \")\"));\n swiper.lazy.loadInSlide(originalSlide.index(), false);\n } else {\n var duplicatedSlide = swiper.$wrapperEl.children((\".\" + (swiper.params.slideDuplicateClass) + \"[data-swiper-slide-index=\\\"\" + slideOriginalIndex + \"\\\"]\"));\n swiper.lazy.loadInSlide(duplicatedSlide.index(), false);\n }\n }\n swiper.emit('lazyImageReady', $slideEl[0], $imageEl[0]);\n });\n\n swiper.emit('lazyImageLoad', $slideEl[0], $imageEl[0]);\n });\n },\n load: function load() {\n var swiper = this;\n var $wrapperEl = swiper.$wrapperEl;\n var swiperParams = swiper.params;\n var slides = swiper.slides;\n var activeIndex = swiper.activeIndex;\n var isVirtual = swiper.virtual && swiperParams.virtual.enabled;\n var params = swiperParams.lazy;\n\n var slidesPerView = swiperParams.slidesPerView;\n if (slidesPerView === 'auto') {\n slidesPerView = 0;\n }\n\n function slideExist(index) {\n if (isVirtual) {\n if ($wrapperEl.children((\".\" + (swiperParams.slideClass) + \"[data-swiper-slide-index=\\\"\" + index + \"\\\"]\")).length) {\n return true;\n }\n } else if (slides[index]) { return true; }\n return false;\n }\n function slideIndex(slideEl) {\n if (isVirtual) {\n return $(slideEl).attr('data-swiper-slide-index');\n }\n return $(slideEl).index();\n }\n\n if (!swiper.lazy.initialImageLoaded) { swiper.lazy.initialImageLoaded = true; }\n if (swiper.params.watchSlidesVisibility) {\n $wrapperEl.children((\".\" + (swiperParams.slideVisibleClass))).each(function (elIndex, slideEl) {\n var index = isVirtual ? $(slideEl).attr('data-swiper-slide-index') : $(slideEl).index();\n swiper.lazy.loadInSlide(index);\n });\n } else if (slidesPerView > 1) {\n for (var i = activeIndex; i < activeIndex + slidesPerView; i += 1) {\n if (slideExist(i)) { swiper.lazy.loadInSlide(i); }\n }\n } else {\n swiper.lazy.loadInSlide(activeIndex);\n }\n if (params.loadPrevNext) {\n if (slidesPerView > 1 || (params.loadPrevNextAmount && params.loadPrevNextAmount > 1)) {\n var amount = params.loadPrevNextAmount;\n var spv = slidesPerView;\n var maxIndex = Math.min(activeIndex + spv + Math.max(amount, spv), slides.length);\n var minIndex = Math.max(activeIndex - Math.max(spv, amount), 0);\n // Next Slides\n for (var i$1 = activeIndex + slidesPerView; i$1 < maxIndex; i$1 += 1) {\n if (slideExist(i$1)) { swiper.lazy.loadInSlide(i$1); }\n }\n // Prev Slides\n for (var i$2 = minIndex; i$2 < activeIndex; i$2 += 1) {\n if (slideExist(i$2)) { swiper.lazy.loadInSlide(i$2); }\n }\n } else {\n var nextSlide = $wrapperEl.children((\".\" + (swiperParams.slideNextClass)));\n if (nextSlide.length > 0) { swiper.lazy.loadInSlide(slideIndex(nextSlide)); }\n\n var prevSlide = $wrapperEl.children((\".\" + (swiperParams.slidePrevClass)));\n if (prevSlide.length > 0) { swiper.lazy.loadInSlide(slideIndex(prevSlide)); }\n }\n }\n },\n };\n\n var Lazy$1 = {\n name: 'lazy',\n params: {\n lazy: {\n enabled: false,\n loadPrevNext: false,\n loadPrevNextAmount: 1,\n loadOnTransitionStart: false,\n\n elementClass: 'swiper-lazy',\n loadingClass: 'swiper-lazy-loading',\n loadedClass: 'swiper-lazy-loaded',\n preloaderClass: 'swiper-lazy-preloader',\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n lazy: {\n initialImageLoaded: false,\n load: Lazy.load.bind(swiper),\n loadInSlide: Lazy.loadInSlide.bind(swiper),\n },\n });\n },\n on: {\n beforeInit: function beforeInit() {\n var swiper = this;\n if (swiper.params.lazy.enabled && swiper.params.preloadImages) {\n swiper.params.preloadImages = false;\n }\n },\n init: function init() {\n var swiper = this;\n if (swiper.params.lazy.enabled && !swiper.params.loop && swiper.params.initialSlide === 0) {\n swiper.lazy.load();\n }\n },\n scroll: function scroll() {\n var swiper = this;\n if (swiper.params.freeMode && !swiper.params.freeModeSticky) {\n swiper.lazy.load();\n }\n },\n resize: function resize() {\n var swiper = this;\n if (swiper.params.lazy.enabled) {\n swiper.lazy.load();\n }\n },\n scrollbarDragMove: function scrollbarDragMove() {\n var swiper = this;\n if (swiper.params.lazy.enabled) {\n swiper.lazy.load();\n }\n },\n transitionStart: function transitionStart() {\n var swiper = this;\n if (swiper.params.lazy.enabled) {\n if (swiper.params.lazy.loadOnTransitionStart || (!swiper.params.lazy.loadOnTransitionStart && !swiper.lazy.initialImageLoaded)) {\n swiper.lazy.load();\n }\n }\n },\n transitionEnd: function transitionEnd() {\n var swiper = this;\n if (swiper.params.lazy.enabled && !swiper.params.lazy.loadOnTransitionStart) {\n swiper.lazy.load();\n }\n },\n },\n };\n\n /* eslint no-bitwise: [\"error\", { \"allow\": [\">>\"] }] */\n\n var Controller = {\n LinearSpline: function LinearSpline(x, y) {\n var binarySearch = (function search() {\n var maxIndex;\n var minIndex;\n var guess;\n return function (array, val) {\n minIndex = -1;\n maxIndex = array.length;\n while (maxIndex - minIndex > 1) {\n guess = maxIndex + minIndex >> 1;\n if (array[guess] <= val) {\n minIndex = guess;\n } else {\n maxIndex = guess;\n }\n }\n return maxIndex;\n };\n }());\n this.x = x;\n this.y = y;\n this.lastIndex = x.length - 1;\n // Given an x value (x2), return the expected y2 value:\n // (x1,y1) is the known point before given value,\n // (x3,y3) is the known point after given value.\n var i1;\n var i3;\n\n this.interpolate = function interpolate(x2) {\n if (!x2) { return 0; }\n\n // Get the indexes of x1 and x3 (the array indexes before and after given x2):\n i3 = binarySearch(this.x, x2);\n i1 = i3 - 1;\n\n // We have our indexes i1 & i3, so we can calculate already:\n // y2 := ((x2−x1) × (y3−y1)) ÷ (x3−x1) + y1\n return (((x2 - this.x[i1]) * (this.y[i3] - this.y[i1])) / (this.x[i3] - this.x[i1])) + this.y[i1];\n };\n return this;\n },\n // xxx: for now i will just save one spline function to to\n getInterpolateFunction: function getInterpolateFunction(c) {\n var swiper = this;\n if (!swiper.controller.spline) {\n swiper.controller.spline = swiper.params.loop\n ? new Controller.LinearSpline(swiper.slidesGrid, c.slidesGrid)\n : new Controller.LinearSpline(swiper.snapGrid, c.snapGrid);\n }\n },\n setTranslate: function setTranslate(setTranslate$1, byController) {\n var swiper = this;\n var controlled = swiper.controller.control;\n var multiplier;\n var controlledTranslate;\n function setControlledTranslate(c) {\n // this will create an Interpolate function based on the snapGrids\n // x is the Grid of the scrolled scroller and y will be the controlled scroller\n // it makes sense to create this only once and recall it for the interpolation\n // the function does a lot of value caching for performance\n var translate = swiper.rtlTranslate ? -swiper.translate : swiper.translate;\n if (swiper.params.controller.by === 'slide') {\n swiper.controller.getInterpolateFunction(c);\n // i am not sure why the values have to be multiplicated this way, tried to invert the snapGrid\n // but it did not work out\n controlledTranslate = -swiper.controller.spline.interpolate(-translate);\n }\n\n if (!controlledTranslate || swiper.params.controller.by === 'container') {\n multiplier = (c.maxTranslate() - c.minTranslate()) / (swiper.maxTranslate() - swiper.minTranslate());\n controlledTranslate = ((translate - swiper.minTranslate()) * multiplier) + c.minTranslate();\n }\n\n if (swiper.params.controller.inverse) {\n controlledTranslate = c.maxTranslate() - controlledTranslate;\n }\n c.updateProgress(controlledTranslate);\n c.setTranslate(controlledTranslate, swiper);\n c.updateActiveIndex();\n c.updateSlidesClasses();\n }\n if (Array.isArray(controlled)) {\n for (var i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTranslate(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTranslate(controlled);\n }\n },\n setTransition: function setTransition(duration, byController) {\n var swiper = this;\n var controlled = swiper.controller.control;\n var i;\n function setControlledTransition(c) {\n c.setTransition(duration, swiper);\n if (duration !== 0) {\n c.transitionStart();\n if (c.params.autoHeight) {\n Utils.nextTick(function () {\n c.updateAutoHeight();\n });\n }\n c.$wrapperEl.transitionEnd(function () {\n if (!controlled) { return; }\n if (c.params.loop && swiper.params.controller.by === 'slide') {\n c.loopFix();\n }\n c.transitionEnd();\n });\n }\n }\n if (Array.isArray(controlled)) {\n for (i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTransition(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTransition(controlled);\n }\n },\n };\n var Controller$1 = {\n name: 'controller',\n params: {\n controller: {\n control: undefined,\n inverse: false,\n by: 'slide', // or 'container'\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n controller: {\n control: swiper.params.controller.control,\n getInterpolateFunction: Controller.getInterpolateFunction.bind(swiper),\n setTranslate: Controller.setTranslate.bind(swiper),\n setTransition: Controller.setTransition.bind(swiper),\n },\n });\n },\n on: {\n update: function update() {\n var swiper = this;\n if (!swiper.controller.control) { return; }\n if (swiper.controller.spline) {\n swiper.controller.spline = undefined;\n delete swiper.controller.spline;\n }\n },\n resize: function resize() {\n var swiper = this;\n if (!swiper.controller.control) { return; }\n if (swiper.controller.spline) {\n swiper.controller.spline = undefined;\n delete swiper.controller.spline;\n }\n },\n observerUpdate: function observerUpdate() {\n var swiper = this;\n if (!swiper.controller.control) { return; }\n if (swiper.controller.spline) {\n swiper.controller.spline = undefined;\n delete swiper.controller.spline;\n }\n },\n setTranslate: function setTranslate(translate, byController) {\n var swiper = this;\n if (!swiper.controller.control) { return; }\n swiper.controller.setTranslate(translate, byController);\n },\n setTransition: function setTransition(duration, byController) {\n var swiper = this;\n if (!swiper.controller.control) { return; }\n swiper.controller.setTransition(duration, byController);\n },\n },\n };\n\n var a11y = {\n makeElFocusable: function makeElFocusable($el) {\n $el.attr('tabIndex', '0');\n return $el;\n },\n addElRole: function addElRole($el, role) {\n $el.attr('role', role);\n return $el;\n },\n addElLabel: function addElLabel($el, label) {\n $el.attr('aria-label', label);\n return $el;\n },\n disableEl: function disableEl($el) {\n $el.attr('aria-disabled', true);\n return $el;\n },\n enableEl: function enableEl($el) {\n $el.attr('aria-disabled', false);\n return $el;\n },\n onEnterKey: function onEnterKey(e) {\n var swiper = this;\n var params = swiper.params.a11y;\n if (e.keyCode !== 13) { return; }\n var $targetEl = $(e.target);\n if (swiper.navigation && swiper.navigation.$nextEl && $targetEl.is(swiper.navigation.$nextEl)) {\n if (!(swiper.isEnd && !swiper.params.loop)) {\n swiper.slideNext();\n }\n if (swiper.isEnd) {\n swiper.a11y.notify(params.lastSlideMessage);\n } else {\n swiper.a11y.notify(params.nextSlideMessage);\n }\n }\n if (swiper.navigation && swiper.navigation.$prevEl && $targetEl.is(swiper.navigation.$prevEl)) {\n if (!(swiper.isBeginning && !swiper.params.loop)) {\n swiper.slidePrev();\n }\n if (swiper.isBeginning) {\n swiper.a11y.notify(params.firstSlideMessage);\n } else {\n swiper.a11y.notify(params.prevSlideMessage);\n }\n }\n if (swiper.pagination && $targetEl.is((\".\" + (swiper.params.pagination.bulletClass)))) {\n $targetEl[0].click();\n }\n },\n notify: function notify(message) {\n var swiper = this;\n var notification = swiper.a11y.liveRegion;\n if (notification.length === 0) { return; }\n notification.html('');\n notification.html(message);\n },\n updateNavigation: function updateNavigation() {\n var swiper = this;\n\n if (swiper.params.loop) { return; }\n var ref = swiper.navigation;\n var $nextEl = ref.$nextEl;\n var $prevEl = ref.$prevEl;\n\n if ($prevEl && $prevEl.length > 0) {\n if (swiper.isBeginning) {\n swiper.a11y.disableEl($prevEl);\n } else {\n swiper.a11y.enableEl($prevEl);\n }\n }\n if ($nextEl && $nextEl.length > 0) {\n if (swiper.isEnd) {\n swiper.a11y.disableEl($nextEl);\n } else {\n swiper.a11y.enableEl($nextEl);\n }\n }\n },\n updatePagination: function updatePagination() {\n var swiper = this;\n var params = swiper.params.a11y;\n if (swiper.pagination && swiper.params.pagination.clickable && swiper.pagination.bullets && swiper.pagination.bullets.length) {\n swiper.pagination.bullets.each(function (bulletIndex, bulletEl) {\n var $bulletEl = $(bulletEl);\n swiper.a11y.makeElFocusable($bulletEl);\n swiper.a11y.addElRole($bulletEl, 'button');\n swiper.a11y.addElLabel($bulletEl, params.paginationBulletMessage.replace(/{{index}}/, $bulletEl.index() + 1));\n });\n }\n },\n init: function init() {\n var swiper = this;\n\n swiper.$el.append(swiper.a11y.liveRegion);\n\n // Navigation\n var params = swiper.params.a11y;\n var $nextEl;\n var $prevEl;\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n if ($nextEl) {\n swiper.a11y.makeElFocusable($nextEl);\n swiper.a11y.addElRole($nextEl, 'button');\n swiper.a11y.addElLabel($nextEl, params.nextSlideMessage);\n $nextEl.on('keydown', swiper.a11y.onEnterKey);\n }\n if ($prevEl) {\n swiper.a11y.makeElFocusable($prevEl);\n swiper.a11y.addElRole($prevEl, 'button');\n swiper.a11y.addElLabel($prevEl, params.prevSlideMessage);\n $prevEl.on('keydown', swiper.a11y.onEnterKey);\n }\n\n // Pagination\n if (swiper.pagination && swiper.params.pagination.clickable && swiper.pagination.bullets && swiper.pagination.bullets.length) {\n swiper.pagination.$el.on('keydown', (\".\" + (swiper.params.pagination.bulletClass)), swiper.a11y.onEnterKey);\n }\n },\n destroy: function destroy() {\n var swiper = this;\n if (swiper.a11y.liveRegion && swiper.a11y.liveRegion.length > 0) { swiper.a11y.liveRegion.remove(); }\n\n var $nextEl;\n var $prevEl;\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n if ($nextEl) {\n $nextEl.off('keydown', swiper.a11y.onEnterKey);\n }\n if ($prevEl) {\n $prevEl.off('keydown', swiper.a11y.onEnterKey);\n }\n\n // Pagination\n if (swiper.pagination && swiper.params.pagination.clickable && swiper.pagination.bullets && swiper.pagination.bullets.length) {\n swiper.pagination.$el.off('keydown', (\".\" + (swiper.params.pagination.bulletClass)), swiper.a11y.onEnterKey);\n }\n },\n };\n var A11y = {\n name: 'a11y',\n params: {\n a11y: {\n enabled: true,\n notificationClass: 'swiper-notification',\n prevSlideMessage: 'Previous slide',\n nextSlideMessage: 'Next slide',\n firstSlideMessage: 'This is the first slide',\n lastSlideMessage: 'This is the last slide',\n paginationBulletMessage: 'Go to slide {{index}}',\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n a11y: {\n liveRegion: $((\"\")),\n },\n });\n Object.keys(a11y).forEach(function (methodName) {\n swiper.a11y[methodName] = a11y[methodName].bind(swiper);\n });\n },\n on: {\n init: function init() {\n var swiper = this;\n if (!swiper.params.a11y.enabled) { return; }\n swiper.a11y.init();\n swiper.a11y.updateNavigation();\n },\n toEdge: function toEdge() {\n var swiper = this;\n if (!swiper.params.a11y.enabled) { return; }\n swiper.a11y.updateNavigation();\n },\n fromEdge: function fromEdge() {\n var swiper = this;\n if (!swiper.params.a11y.enabled) { return; }\n swiper.a11y.updateNavigation();\n },\n paginationUpdate: function paginationUpdate() {\n var swiper = this;\n if (!swiper.params.a11y.enabled) { return; }\n swiper.a11y.updatePagination();\n },\n destroy: function destroy() {\n var swiper = this;\n if (!swiper.params.a11y.enabled) { return; }\n swiper.a11y.destroy();\n },\n },\n };\n\n var History = {\n init: function init() {\n var swiper = this;\n if (!swiper.params.history) { return; }\n if (!win.history || !win.history.pushState) {\n swiper.params.history.enabled = false;\n swiper.params.hashNavigation.enabled = true;\n return;\n }\n var history = swiper.history;\n history.initialized = true;\n history.paths = History.getPathValues();\n if (!history.paths.key && !history.paths.value) { return; }\n history.scrollToSlide(0, history.paths.value, swiper.params.runCallbacksOnInit);\n if (!swiper.params.history.replaceState) {\n win.addEventListener('popstate', swiper.history.setHistoryPopState);\n }\n },\n destroy: function destroy() {\n var swiper = this;\n if (!swiper.params.history.replaceState) {\n win.removeEventListener('popstate', swiper.history.setHistoryPopState);\n }\n },\n setHistoryPopState: function setHistoryPopState() {\n var swiper = this;\n swiper.history.paths = History.getPathValues();\n swiper.history.scrollToSlide(swiper.params.speed, swiper.history.paths.value, false);\n },\n getPathValues: function getPathValues() {\n var pathArray = win.location.pathname.slice(1).split('/').filter(function (part) { return part !== ''; });\n var total = pathArray.length;\n var key = pathArray[total - 2];\n var value = pathArray[total - 1];\n return { key: key, value: value };\n },\n setHistory: function setHistory(key, index) {\n var swiper = this;\n if (!swiper.history.initialized || !swiper.params.history.enabled) { return; }\n var slide = swiper.slides.eq(index);\n var value = History.slugify(slide.attr('data-history'));\n if (!win.location.pathname.includes(key)) {\n value = key + \"/\" + value;\n }\n var currentState = win.history.state;\n if (currentState && currentState.value === value) {\n return;\n }\n if (swiper.params.history.replaceState) {\n win.history.replaceState({ value: value }, null, value);\n } else {\n win.history.pushState({ value: value }, null, value);\n }\n },\n slugify: function slugify(text) {\n return text.toString()\n .replace(/\\s+/g, '-')\n .replace(/[^\\w-]+/g, '')\n .replace(/--+/g, '-')\n .replace(/^-+/, '')\n .replace(/-+$/, '');\n },\n scrollToSlide: function scrollToSlide(speed, value, runCallbacks) {\n var swiper = this;\n if (value) {\n for (var i = 0, length = swiper.slides.length; i < length; i += 1) {\n var slide = swiper.slides.eq(i);\n var slideHistory = History.slugify(slide.attr('data-history'));\n if (slideHistory === value && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n var index = slide.index();\n swiper.slideTo(index, speed, runCallbacks);\n }\n }\n } else {\n swiper.slideTo(0, speed, runCallbacks);\n }\n },\n };\n\n var History$1 = {\n name: 'history',\n params: {\n history: {\n enabled: false,\n replaceState: false,\n key: 'slides',\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n history: {\n init: History.init.bind(swiper),\n setHistory: History.setHistory.bind(swiper),\n setHistoryPopState: History.setHistoryPopState.bind(swiper),\n scrollToSlide: History.scrollToSlide.bind(swiper),\n destroy: History.destroy.bind(swiper),\n },\n });\n },\n on: {\n init: function init() {\n var swiper = this;\n if (swiper.params.history.enabled) {\n swiper.history.init();\n }\n },\n destroy: function destroy() {\n var swiper = this;\n if (swiper.params.history.enabled) {\n swiper.history.destroy();\n }\n },\n transitionEnd: function transitionEnd() {\n var swiper = this;\n if (swiper.history.initialized) {\n swiper.history.setHistory(swiper.params.history.key, swiper.activeIndex);\n }\n },\n },\n };\n\n var HashNavigation = {\n onHashCange: function onHashCange() {\n var swiper = this;\n var newHash = doc.location.hash.replace('#', '');\n var activeSlideHash = swiper.slides.eq(swiper.activeIndex).attr('data-hash');\n if (newHash !== activeSlideHash) {\n var newIndex = swiper.$wrapperEl.children((\".\" + (swiper.params.slideClass) + \"[data-hash=\\\"\" + newHash + \"\\\"]\")).index();\n if (typeof newIndex === 'undefined') { return; }\n swiper.slideTo(newIndex);\n }\n },\n setHash: function setHash() {\n var swiper = this;\n if (!swiper.hashNavigation.initialized || !swiper.params.hashNavigation.enabled) { return; }\n if (swiper.params.hashNavigation.replaceState && win.history && win.history.replaceState) {\n win.history.replaceState(null, null, ((\"#\" + (swiper.slides.eq(swiper.activeIndex).attr('data-hash'))) || ''));\n } else {\n var slide = swiper.slides.eq(swiper.activeIndex);\n var hash = slide.attr('data-hash') || slide.attr('data-history');\n doc.location.hash = hash || '';\n }\n },\n init: function init() {\n var swiper = this;\n if (!swiper.params.hashNavigation.enabled || (swiper.params.history && swiper.params.history.enabled)) { return; }\n swiper.hashNavigation.initialized = true;\n var hash = doc.location.hash.replace('#', '');\n if (hash) {\n var speed = 0;\n for (var i = 0, length = swiper.slides.length; i < length; i += 1) {\n var slide = swiper.slides.eq(i);\n var slideHash = slide.attr('data-hash') || slide.attr('data-history');\n if (slideHash === hash && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n var index = slide.index();\n swiper.slideTo(index, speed, swiper.params.runCallbacksOnInit, true);\n }\n }\n }\n if (swiper.params.hashNavigation.watchState) {\n $(win).on('hashchange', swiper.hashNavigation.onHashCange);\n }\n },\n destroy: function destroy() {\n var swiper = this;\n if (swiper.params.hashNavigation.watchState) {\n $(win).off('hashchange', swiper.hashNavigation.onHashCange);\n }\n },\n };\n var HashNavigation$1 = {\n name: 'hash-navigation',\n params: {\n hashNavigation: {\n enabled: false,\n replaceState: false,\n watchState: false,\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n hashNavigation: {\n initialized: false,\n init: HashNavigation.init.bind(swiper),\n destroy: HashNavigation.destroy.bind(swiper),\n setHash: HashNavigation.setHash.bind(swiper),\n onHashCange: HashNavigation.onHashCange.bind(swiper),\n },\n });\n },\n on: {\n init: function init() {\n var swiper = this;\n if (swiper.params.hashNavigation.enabled) {\n swiper.hashNavigation.init();\n }\n },\n destroy: function destroy() {\n var swiper = this;\n if (swiper.params.hashNavigation.enabled) {\n swiper.hashNavigation.destroy();\n }\n },\n transitionEnd: function transitionEnd() {\n var swiper = this;\n if (swiper.hashNavigation.initialized) {\n swiper.hashNavigation.setHash();\n }\n },\n },\n };\n\n /* eslint no-underscore-dangle: \"off\" */\n\n var Autoplay = {\n run: function run() {\n var swiper = this;\n var $activeSlideEl = swiper.slides.eq(swiper.activeIndex);\n var delay = swiper.params.autoplay.delay;\n if ($activeSlideEl.attr('data-swiper-autoplay')) {\n delay = $activeSlideEl.attr('data-swiper-autoplay') || swiper.params.autoplay.delay;\n }\n clearTimeout(swiper.autoplay.timeout);\n swiper.autoplay.timeout = Utils.nextTick(function () {\n if (swiper.params.autoplay.reverseDirection) {\n if (swiper.params.loop) {\n swiper.loopFix();\n swiper.slidePrev(swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else if (!swiper.isBeginning) {\n swiper.slidePrev(swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n swiper.slideTo(swiper.slides.length - 1, swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else {\n swiper.autoplay.stop();\n }\n } else if (swiper.params.loop) {\n swiper.loopFix();\n swiper.slideNext(swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else if (!swiper.isEnd) {\n swiper.slideNext(swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n swiper.slideTo(0, swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else {\n swiper.autoplay.stop();\n }\n }, delay);\n },\n start: function start() {\n var swiper = this;\n if (typeof swiper.autoplay.timeout !== 'undefined') { return false; }\n if (swiper.autoplay.running) { return false; }\n swiper.autoplay.running = true;\n swiper.emit('autoplayStart');\n swiper.autoplay.run();\n return true;\n },\n stop: function stop() {\n var swiper = this;\n if (!swiper.autoplay.running) { return false; }\n if (typeof swiper.autoplay.timeout === 'undefined') { return false; }\n\n if (swiper.autoplay.timeout) {\n clearTimeout(swiper.autoplay.timeout);\n swiper.autoplay.timeout = undefined;\n }\n swiper.autoplay.running = false;\n swiper.emit('autoplayStop');\n return true;\n },\n pause: function pause(speed) {\n var swiper = this;\n if (!swiper.autoplay.running) { return; }\n if (swiper.autoplay.paused) { return; }\n if (swiper.autoplay.timeout) { clearTimeout(swiper.autoplay.timeout); }\n swiper.autoplay.paused = true;\n if (speed === 0 || !swiper.params.autoplay.waitForTransition) {\n swiper.autoplay.paused = false;\n swiper.autoplay.run();\n } else {\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.autoplay.onTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.autoplay.onTransitionEnd);\n }\n },\n };\n\n var Autoplay$1 = {\n name: 'autoplay',\n params: {\n autoplay: {\n enabled: false,\n delay: 3000,\n waitForTransition: true,\n disableOnInteraction: true,\n stopOnLastSlide: false,\n reverseDirection: false,\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n autoplay: {\n running: false,\n paused: false,\n run: Autoplay.run.bind(swiper),\n start: Autoplay.start.bind(swiper),\n stop: Autoplay.stop.bind(swiper),\n pause: Autoplay.pause.bind(swiper),\n onTransitionEnd: function onTransitionEnd(e) {\n if (!swiper || swiper.destroyed || !swiper.$wrapperEl) { return; }\n if (e.target !== this) { return; }\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.autoplay.onTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.autoplay.onTransitionEnd);\n swiper.autoplay.paused = false;\n if (!swiper.autoplay.running) {\n swiper.autoplay.stop();\n } else {\n swiper.autoplay.run();\n }\n },\n },\n });\n },\n on: {\n init: function init() {\n var swiper = this;\n if (swiper.params.autoplay.enabled) {\n swiper.autoplay.start();\n }\n },\n beforeTransitionStart: function beforeTransitionStart(speed, internal) {\n var swiper = this;\n if (swiper.autoplay.running) {\n if (internal || !swiper.params.autoplay.disableOnInteraction) {\n swiper.autoplay.pause(speed);\n } else {\n swiper.autoplay.stop();\n }\n }\n },\n sliderFirstMove: function sliderFirstMove() {\n var swiper = this;\n if (swiper.autoplay.running) {\n if (swiper.params.autoplay.disableOnInteraction) {\n swiper.autoplay.stop();\n } else {\n swiper.autoplay.pause();\n }\n }\n },\n destroy: function destroy() {\n var swiper = this;\n if (swiper.autoplay.running) {\n swiper.autoplay.stop();\n }\n },\n },\n };\n\n var Fade = {\n setTranslate: function setTranslate() {\n var swiper = this;\n var slides = swiper.slides;\n for (var i = 0; i < slides.length; i += 1) {\n var $slideEl = swiper.slides.eq(i);\n var offset = $slideEl[0].swiperSlideOffset;\n var tx = -offset;\n if (!swiper.params.virtualTranslate) { tx -= swiper.translate; }\n var ty = 0;\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n }\n var slideOpacity = swiper.params.fadeEffect.crossFade\n ? Math.max(1 - Math.abs($slideEl[0].progress), 0)\n : 1 + Math.min(Math.max($slideEl[0].progress, -1), 0);\n $slideEl\n .css({\n opacity: slideOpacity,\n })\n .transform((\"translate3d(\" + tx + \"px, \" + ty + \"px, 0px)\"));\n }\n },\n setTransition: function setTransition(duration) {\n var swiper = this;\n var slides = swiper.slides;\n var $wrapperEl = swiper.$wrapperEl;\n slides.transition(duration);\n if (swiper.params.virtualTranslate && duration !== 0) {\n var eventTriggered = false;\n slides.transitionEnd(function () {\n if (eventTriggered) { return; }\n if (!swiper || swiper.destroyed) { return; }\n eventTriggered = true;\n swiper.animating = false;\n var triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n for (var i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n },\n };\n\n var EffectFade = {\n name: 'effect-fade',\n params: {\n fadeEffect: {\n crossFade: false,\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n fadeEffect: {\n setTranslate: Fade.setTranslate.bind(swiper),\n setTransition: Fade.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit: function beforeInit() {\n var swiper = this;\n if (swiper.params.effect !== 'fade') { return; }\n swiper.classNames.push(((swiper.params.containerModifierClass) + \"fade\"));\n var overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: true,\n };\n Utils.extend(swiper.params, overwriteParams);\n Utils.extend(swiper.originalParams, overwriteParams);\n },\n setTranslate: function setTranslate() {\n var swiper = this;\n if (swiper.params.effect !== 'fade') { return; }\n swiper.fadeEffect.setTranslate();\n },\n setTransition: function setTransition(duration) {\n var swiper = this;\n if (swiper.params.effect !== 'fade') { return; }\n swiper.fadeEffect.setTransition(duration);\n },\n },\n };\n\n var Cube = {\n setTranslate: function setTranslate() {\n var swiper = this;\n var $el = swiper.$el;\n var $wrapperEl = swiper.$wrapperEl;\n var slides = swiper.slides;\n var swiperWidth = swiper.width;\n var swiperHeight = swiper.height;\n var rtl = swiper.rtlTranslate;\n var swiperSize = swiper.size;\n var params = swiper.params.cubeEffect;\n var isHorizontal = swiper.isHorizontal();\n var isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n var wrapperRotate = 0;\n var $cubeShadowEl;\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl = $wrapperEl.find('.swiper-cube-shadow');\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
');\n $wrapperEl.append($cubeShadowEl);\n }\n $cubeShadowEl.css({ height: (swiperWidth + \"px\") });\n } else {\n $cubeShadowEl = $el.find('.swiper-cube-shadow');\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
');\n $el.append($cubeShadowEl);\n }\n }\n }\n for (var i = 0; i < slides.length; i += 1) {\n var $slideEl = slides.eq(i);\n var slideIndex = i;\n if (isVirtual) {\n slideIndex = parseInt($slideEl.attr('data-swiper-slide-index'), 10);\n }\n var slideAngle = slideIndex * 90;\n var round = Math.floor(slideAngle / 360);\n if (rtl) {\n slideAngle = -slideAngle;\n round = Math.floor(-slideAngle / 360);\n }\n var progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n var tx = 0;\n var ty = 0;\n var tz = 0;\n if (slideIndex % 4 === 0) {\n tx = -round * 4 * swiperSize;\n tz = 0;\n } else if ((slideIndex - 1) % 4 === 0) {\n tx = 0;\n tz = -round * 4 * swiperSize;\n } else if ((slideIndex - 2) % 4 === 0) {\n tx = swiperSize + (round * 4 * swiperSize);\n tz = swiperSize;\n } else if ((slideIndex - 3) % 4 === 0) {\n tx = -swiperSize;\n tz = (3 * swiperSize) + (swiperSize * 4 * round);\n }\n if (rtl) {\n tx = -tx;\n }\n\n if (!isHorizontal) {\n ty = tx;\n tx = 0;\n }\n\n var transform = \"rotateX(\" + (isHorizontal ? 0 : -slideAngle) + \"deg) rotateY(\" + (isHorizontal ? slideAngle : 0) + \"deg) translate3d(\" + tx + \"px, \" + ty + \"px, \" + tz + \"px)\";\n if (progress <= 1 && progress > -1) {\n wrapperRotate = (slideIndex * 90) + (progress * 90);\n if (rtl) { wrapperRotate = (-slideIndex * 90) - (progress * 90); }\n }\n $slideEl.transform(transform);\n if (params.slideShadows) {\n // Set shadows\n var shadowBefore = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n var shadowAfter = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if (shadowBefore.length === 0) {\n shadowBefore = $((\"
\"));\n $slideEl.append(shadowBefore);\n }\n if (shadowAfter.length === 0) {\n shadowAfter = $((\"
\"));\n $slideEl.append(shadowAfter);\n }\n if (shadowBefore.length) { shadowBefore[0].style.opacity = Math.max(-progress, 0); }\n if (shadowAfter.length) { shadowAfter[0].style.opacity = Math.max(progress, 0); }\n }\n }\n $wrapperEl.css({\n '-webkit-transform-origin': (\"50% 50% -\" + (swiperSize / 2) + \"px\"),\n '-moz-transform-origin': (\"50% 50% -\" + (swiperSize / 2) + \"px\"),\n '-ms-transform-origin': (\"50% 50% -\" + (swiperSize / 2) + \"px\"),\n 'transform-origin': (\"50% 50% -\" + (swiperSize / 2) + \"px\"),\n });\n\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl.transform((\"translate3d(0px, \" + ((swiperWidth / 2) + params.shadowOffset) + \"px, \" + (-swiperWidth / 2) + \"px) rotateX(90deg) rotateZ(0deg) scale(\" + (params.shadowScale) + \")\"));\n } else {\n var shadowAngle = Math.abs(wrapperRotate) - (Math.floor(Math.abs(wrapperRotate) / 90) * 90);\n var multiplier = 1.5 - (\n (Math.sin((shadowAngle * 2 * Math.PI) / 360) / 2)\n + (Math.cos((shadowAngle * 2 * Math.PI) / 360) / 2)\n );\n var scale1 = params.shadowScale;\n var scale2 = params.shadowScale / multiplier;\n var offset = params.shadowOffset;\n $cubeShadowEl.transform((\"scale3d(\" + scale1 + \", 1, \" + scale2 + \") translate3d(0px, \" + ((swiperHeight / 2) + offset) + \"px, \" + (-swiperHeight / 2 / scale2) + \"px) rotateX(-90deg)\"));\n }\n }\n var zFactor = (Browser.isSafari || Browser.isUiWebView) ? (-swiperSize / 2) : 0;\n $wrapperEl\n .transform((\"translate3d(0px,0,\" + zFactor + \"px) rotateX(\" + (swiper.isHorizontal() ? 0 : wrapperRotate) + \"deg) rotateY(\" + (swiper.isHorizontal() ? -wrapperRotate : 0) + \"deg)\"));\n },\n setTransition: function setTransition(duration) {\n var swiper = this;\n var $el = swiper.$el;\n var slides = swiper.slides;\n slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n if (swiper.params.cubeEffect.shadow && !swiper.isHorizontal()) {\n $el.find('.swiper-cube-shadow').transition(duration);\n }\n },\n };\n\n var EffectCube = {\n name: 'effect-cube',\n params: {\n cubeEffect: {\n slideShadows: true,\n shadow: true,\n shadowOffset: 20,\n shadowScale: 0.94,\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n cubeEffect: {\n setTranslate: Cube.setTranslate.bind(swiper),\n setTransition: Cube.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit: function beforeInit() {\n var swiper = this;\n if (swiper.params.effect !== 'cube') { return; }\n swiper.classNames.push(((swiper.params.containerModifierClass) + \"cube\"));\n swiper.classNames.push(((swiper.params.containerModifierClass) + \"3d\"));\n var overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n resistanceRatio: 0,\n spaceBetween: 0,\n centeredSlides: false,\n virtualTranslate: true,\n };\n Utils.extend(swiper.params, overwriteParams);\n Utils.extend(swiper.originalParams, overwriteParams);\n },\n setTranslate: function setTranslate() {\n var swiper = this;\n if (swiper.params.effect !== 'cube') { return; }\n swiper.cubeEffect.setTranslate();\n },\n setTransition: function setTransition(duration) {\n var swiper = this;\n if (swiper.params.effect !== 'cube') { return; }\n swiper.cubeEffect.setTransition(duration);\n },\n },\n };\n\n var Flip = {\n setTranslate: function setTranslate() {\n var swiper = this;\n var slides = swiper.slides;\n var rtl = swiper.rtlTranslate;\n for (var i = 0; i < slides.length; i += 1) {\n var $slideEl = slides.eq(i);\n var progress = $slideEl[0].progress;\n if (swiper.params.flipEffect.limitRotation) {\n progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n }\n var offset = $slideEl[0].swiperSlideOffset;\n var rotate = -180 * progress;\n var rotateY = rotate;\n var rotateX = 0;\n var tx = -offset;\n var ty = 0;\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n rotateX = -rotateY;\n rotateY = 0;\n } else if (rtl) {\n rotateY = -rotateY;\n }\n\n $slideEl[0].style.zIndex = -Math.abs(Math.round(progress)) + slides.length;\n\n if (swiper.params.flipEffect.slideShadows) {\n // Set shadows\n var shadowBefore = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n var shadowAfter = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if (shadowBefore.length === 0) {\n shadowBefore = $((\"
\"));\n $slideEl.append(shadowBefore);\n }\n if (shadowAfter.length === 0) {\n shadowAfter = $((\"
\"));\n $slideEl.append(shadowAfter);\n }\n if (shadowBefore.length) { shadowBefore[0].style.opacity = Math.max(-progress, 0); }\n if (shadowAfter.length) { shadowAfter[0].style.opacity = Math.max(progress, 0); }\n }\n $slideEl\n .transform((\"translate3d(\" + tx + \"px, \" + ty + \"px, 0px) rotateX(\" + rotateX + \"deg) rotateY(\" + rotateY + \"deg)\"));\n }\n },\n setTransition: function setTransition(duration) {\n var swiper = this;\n var slides = swiper.slides;\n var activeIndex = swiper.activeIndex;\n var $wrapperEl = swiper.$wrapperEl;\n slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n if (swiper.params.virtualTranslate && duration !== 0) {\n var eventTriggered = false;\n // eslint-disable-next-line\n slides.eq(activeIndex).transitionEnd(function onTransitionEnd() {\n if (eventTriggered) { return; }\n if (!swiper || swiper.destroyed) { return; }\n // if (!$(this).hasClass(swiper.params.slideActiveClass)) return;\n eventTriggered = true;\n swiper.animating = false;\n var triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n for (var i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n },\n };\n\n var EffectFlip = {\n name: 'effect-flip',\n params: {\n flipEffect: {\n slideShadows: true,\n limitRotation: true,\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n flipEffect: {\n setTranslate: Flip.setTranslate.bind(swiper),\n setTransition: Flip.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit: function beforeInit() {\n var swiper = this;\n if (swiper.params.effect !== 'flip') { return; }\n swiper.classNames.push(((swiper.params.containerModifierClass) + \"flip\"));\n swiper.classNames.push(((swiper.params.containerModifierClass) + \"3d\"));\n var overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: true,\n };\n Utils.extend(swiper.params, overwriteParams);\n Utils.extend(swiper.originalParams, overwriteParams);\n },\n setTranslate: function setTranslate() {\n var swiper = this;\n if (swiper.params.effect !== 'flip') { return; }\n swiper.flipEffect.setTranslate();\n },\n setTransition: function setTransition(duration) {\n var swiper = this;\n if (swiper.params.effect !== 'flip') { return; }\n swiper.flipEffect.setTransition(duration);\n },\n },\n };\n\n var Coverflow = {\n setTranslate: function setTranslate() {\n var swiper = this;\n var swiperWidth = swiper.width;\n var swiperHeight = swiper.height;\n var slides = swiper.slides;\n var $wrapperEl = swiper.$wrapperEl;\n var slidesSizesGrid = swiper.slidesSizesGrid;\n var params = swiper.params.coverflowEffect;\n var isHorizontal = swiper.isHorizontal();\n var transform = swiper.translate;\n var center = isHorizontal ? -transform + (swiperWidth / 2) : -transform + (swiperHeight / 2);\n var rotate = isHorizontal ? params.rotate : -params.rotate;\n var translate = params.depth;\n // Each slide offset from center\n for (var i = 0, length = slides.length; i < length; i += 1) {\n var $slideEl = slides.eq(i);\n var slideSize = slidesSizesGrid[i];\n var slideOffset = $slideEl[0].swiperSlideOffset;\n var offsetMultiplier = ((center - slideOffset - (slideSize / 2)) / slideSize) * params.modifier;\n\n var rotateY = isHorizontal ? rotate * offsetMultiplier : 0;\n var rotateX = isHorizontal ? 0 : rotate * offsetMultiplier;\n // var rotateZ = 0\n var translateZ = -translate * Math.abs(offsetMultiplier);\n\n var translateY = isHorizontal ? 0 : params.stretch * (offsetMultiplier);\n var translateX = isHorizontal ? params.stretch * (offsetMultiplier) : 0;\n\n // Fix for ultra small values\n if (Math.abs(translateX) < 0.001) { translateX = 0; }\n if (Math.abs(translateY) < 0.001) { translateY = 0; }\n if (Math.abs(translateZ) < 0.001) { translateZ = 0; }\n if (Math.abs(rotateY) < 0.001) { rotateY = 0; }\n if (Math.abs(rotateX) < 0.001) { rotateX = 0; }\n\n var slideTransform = \"translate3d(\" + translateX + \"px,\" + translateY + \"px,\" + translateZ + \"px) rotateX(\" + rotateX + \"deg) rotateY(\" + rotateY + \"deg)\";\n\n $slideEl.transform(slideTransform);\n $slideEl[0].style.zIndex = -Math.abs(Math.round(offsetMultiplier)) + 1;\n if (params.slideShadows) {\n // Set shadows\n var $shadowBeforeEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n var $shadowAfterEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if ($shadowBeforeEl.length === 0) {\n $shadowBeforeEl = $((\"
\"));\n $slideEl.append($shadowBeforeEl);\n }\n if ($shadowAfterEl.length === 0) {\n $shadowAfterEl = $((\"
\"));\n $slideEl.append($shadowAfterEl);\n }\n if ($shadowBeforeEl.length) { $shadowBeforeEl[0].style.opacity = offsetMultiplier > 0 ? offsetMultiplier : 0; }\n if ($shadowAfterEl.length) { $shadowAfterEl[0].style.opacity = (-offsetMultiplier) > 0 ? -offsetMultiplier : 0; }\n }\n }\n\n // Set correct perspective for IE10\n if (Support.pointerEvents || Support.prefixedPointerEvents) {\n var ws = $wrapperEl[0].style;\n ws.perspectiveOrigin = center + \"px 50%\";\n }\n },\n setTransition: function setTransition(duration) {\n var swiper = this;\n swiper.slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n },\n };\n\n var EffectCoverflow = {\n name: 'effect-coverflow',\n params: {\n coverflowEffect: {\n rotate: 50,\n stretch: 0,\n depth: 100,\n modifier: 1,\n slideShadows: true,\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n coverflowEffect: {\n setTranslate: Coverflow.setTranslate.bind(swiper),\n setTransition: Coverflow.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit: function beforeInit() {\n var swiper = this;\n if (swiper.params.effect !== 'coverflow') { return; }\n\n swiper.classNames.push(((swiper.params.containerModifierClass) + \"coverflow\"));\n swiper.classNames.push(((swiper.params.containerModifierClass) + \"3d\"));\n\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n },\n setTranslate: function setTranslate() {\n var swiper = this;\n if (swiper.params.effect !== 'coverflow') { return; }\n swiper.coverflowEffect.setTranslate();\n },\n setTransition: function setTransition(duration) {\n var swiper = this;\n if (swiper.params.effect !== 'coverflow') { return; }\n swiper.coverflowEffect.setTransition(duration);\n },\n },\n };\n\n var Thumbs = {\n init: function init() {\n var swiper = this;\n var ref = swiper.params;\n var thumbsParams = ref.thumbs;\n var SwiperClass = swiper.constructor;\n if (thumbsParams.swiper instanceof SwiperClass) {\n swiper.thumbs.swiper = thumbsParams.swiper;\n Utils.extend(swiper.thumbs.swiper.originalParams, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n Utils.extend(swiper.thumbs.swiper.params, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n } else if (Utils.isObject(thumbsParams.swiper)) {\n swiper.thumbs.swiper = new SwiperClass(Utils.extend({}, thumbsParams.swiper, {\n watchSlidesVisibility: true,\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n }));\n swiper.thumbs.swiperCreated = true;\n }\n swiper.thumbs.swiper.$el.addClass(swiper.params.thumbs.thumbsContainerClass);\n swiper.thumbs.swiper.on('tap', swiper.thumbs.onThumbClick);\n },\n onThumbClick: function onThumbClick() {\n var swiper = this;\n var thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) { return; }\n var clickedIndex = thumbsSwiper.clickedIndex;\n var clickedSlide = thumbsSwiper.clickedSlide;\n if (clickedSlide && $(clickedSlide).hasClass(swiper.params.thumbs.slideThumbActiveClass)) { return; }\n if (typeof clickedIndex === 'undefined' || clickedIndex === null) { return; }\n var slideToIndex;\n if (thumbsSwiper.params.loop) {\n slideToIndex = parseInt($(thumbsSwiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n } else {\n slideToIndex = clickedIndex;\n }\n if (swiper.params.loop) {\n var currentIndex = swiper.activeIndex;\n if (swiper.slides.eq(currentIndex).hasClass(swiper.params.slideDuplicateClass)) {\n swiper.loopFix();\n // eslint-disable-next-line\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n currentIndex = swiper.activeIndex;\n }\n var prevIndex = swiper.slides.eq(currentIndex).prevAll((\"[data-swiper-slide-index=\\\"\" + slideToIndex + \"\\\"]\")).eq(0).index();\n var nextIndex = swiper.slides.eq(currentIndex).nextAll((\"[data-swiper-slide-index=\\\"\" + slideToIndex + \"\\\"]\")).eq(0).index();\n if (typeof prevIndex === 'undefined') { slideToIndex = nextIndex; }\n else if (typeof nextIndex === 'undefined') { slideToIndex = prevIndex; }\n else if (nextIndex - currentIndex < currentIndex - prevIndex) { slideToIndex = nextIndex; }\n else { slideToIndex = prevIndex; }\n }\n swiper.slideTo(slideToIndex);\n },\n update: function update(initial) {\n var swiper = this;\n var thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) { return; }\n\n var slidesPerView = thumbsSwiper.params.slidesPerView === 'auto'\n ? thumbsSwiper.slidesPerViewDynamic()\n : thumbsSwiper.params.slidesPerView;\n\n if (swiper.realIndex !== thumbsSwiper.realIndex) {\n var currentThumbsIndex = thumbsSwiper.activeIndex;\n var newThumbsIndex;\n if (thumbsSwiper.params.loop) {\n if (thumbsSwiper.slides.eq(currentThumbsIndex).hasClass(thumbsSwiper.params.slideDuplicateClass)) {\n thumbsSwiper.loopFix();\n // eslint-disable-next-line\n thumbsSwiper._clientLeft = thumbsSwiper.$wrapperEl[0].clientLeft;\n currentThumbsIndex = thumbsSwiper.activeIndex;\n }\n // Find actual thumbs index to slide to\n var prevThumbsIndex = thumbsSwiper.slides.eq(currentThumbsIndex).prevAll((\"[data-swiper-slide-index=\\\"\" + (swiper.realIndex) + \"\\\"]\")).eq(0).index();\n var nextThumbsIndex = thumbsSwiper.slides.eq(currentThumbsIndex).nextAll((\"[data-swiper-slide-index=\\\"\" + (swiper.realIndex) + \"\\\"]\")).eq(0).index();\n if (typeof prevThumbsIndex === 'undefined') { newThumbsIndex = nextThumbsIndex; }\n else if (typeof nextThumbsIndex === 'undefined') { newThumbsIndex = prevThumbsIndex; }\n else if (nextThumbsIndex - currentThumbsIndex === currentThumbsIndex - prevThumbsIndex) { newThumbsIndex = currentThumbsIndex; }\n else if (nextThumbsIndex - currentThumbsIndex < currentThumbsIndex - prevThumbsIndex) { newThumbsIndex = nextThumbsIndex; }\n else { newThumbsIndex = prevThumbsIndex; }\n } else {\n newThumbsIndex = swiper.realIndex;\n }\n if (thumbsSwiper.visibleSlidesIndexes && thumbsSwiper.visibleSlidesIndexes.indexOf(newThumbsIndex) < 0) {\n if (thumbsSwiper.params.centeredSlides) {\n if (newThumbsIndex > currentThumbsIndex) {\n newThumbsIndex = newThumbsIndex - Math.floor(slidesPerView / 2) + 1;\n } else {\n newThumbsIndex = newThumbsIndex + Math.floor(slidesPerView / 2) - 1;\n }\n } else if (newThumbsIndex > currentThumbsIndex) {\n newThumbsIndex = newThumbsIndex - slidesPerView + 1;\n }\n thumbsSwiper.slideTo(newThumbsIndex, initial ? 0 : undefined);\n }\n }\n\n // Activate thumbs\n var thumbsToActivate = 1;\n var thumbActiveClass = swiper.params.thumbs.slideThumbActiveClass;\n\n if (swiper.params.slidesPerView > 1 && !swiper.params.centeredSlides) {\n thumbsToActivate = swiper.params.slidesPerView;\n }\n\n thumbsSwiper.slides.removeClass(thumbActiveClass);\n if (thumbsSwiper.params.loop || thumbsSwiper.params.virtual) {\n for (var i = 0; i < thumbsToActivate; i += 1) {\n thumbsSwiper.$wrapperEl.children((\"[data-swiper-slide-index=\\\"\" + (swiper.realIndex + i) + \"\\\"]\")).addClass(thumbActiveClass);\n }\n } else {\n for (var i$1 = 0; i$1 < thumbsToActivate; i$1 += 1) {\n thumbsSwiper.slides.eq(swiper.realIndex + i$1).addClass(thumbActiveClass);\n }\n }\n },\n };\n var Thumbs$1 = {\n name: 'thumbs',\n params: {\n thumbs: {\n swiper: null,\n slideThumbActiveClass: 'swiper-slide-thumb-active',\n thumbsContainerClass: 'swiper-container-thumbs',\n },\n },\n create: function create() {\n var swiper = this;\n Utils.extend(swiper, {\n thumbs: {\n swiper: null,\n init: Thumbs.init.bind(swiper),\n update: Thumbs.update.bind(swiper),\n onThumbClick: Thumbs.onThumbClick.bind(swiper),\n },\n });\n },\n on: {\n beforeInit: function beforeInit() {\n var swiper = this;\n var ref = swiper.params;\n var thumbs = ref.thumbs;\n if (!thumbs || !thumbs.swiper) { return; }\n swiper.thumbs.init();\n swiper.thumbs.update(true);\n },\n slideChange: function slideChange() {\n var swiper = this;\n if (!swiper.thumbs.swiper) { return; }\n swiper.thumbs.update();\n },\n update: function update() {\n var swiper = this;\n if (!swiper.thumbs.swiper) { return; }\n swiper.thumbs.update();\n },\n resize: function resize() {\n var swiper = this;\n if (!swiper.thumbs.swiper) { return; }\n swiper.thumbs.update();\n },\n observerUpdate: function observerUpdate() {\n var swiper = this;\n if (!swiper.thumbs.swiper) { return; }\n swiper.thumbs.update();\n },\n setTransition: function setTransition(duration) {\n var swiper = this;\n var thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) { return; }\n thumbsSwiper.setTransition(duration);\n },\n beforeDestroy: function beforeDestroy() {\n var swiper = this;\n var thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) { return; }\n if (swiper.thumbs.swiperCreated && thumbsSwiper) {\n thumbsSwiper.destroy();\n }\n },\n },\n };\n\n // Swiper Class\n\n var components = [\n Device$1,\n Support$1,\n Browser$1,\n Resize,\n Observer$1,\n Virtual$1,\n Keyboard$1,\n Mousewheel$1,\n Navigation$1,\n Pagination$1,\n Scrollbar$1,\n Parallax$1,\n Zoom$1,\n Lazy$1,\n Controller$1,\n A11y,\n History$1,\n HashNavigation$1,\n Autoplay$1,\n EffectFade,\n EffectCube,\n EffectFlip,\n EffectCoverflow,\n Thumbs$1\n ];\n\n if (typeof Swiper.use === 'undefined') {\n Swiper.use = Swiper.Class.use;\n Swiper.installModule = Swiper.Class.installModule;\n }\n\n Swiper.use(components);\n\n return Swiper;\n\n}));\n"],"sourceRoot":""}