@egjs/flicking
Version:
Everyday 30 million people experience. It's reliable, flexible and extendable carousel.
9 lines • 107 kB
JavaScript
/*
Copyright (c) 2015-present NAVER Corp.
name: @egjs/flicking
license: MIT
author: NAVER Corp.
repository: https://github.com/naver/egjs-flicking
version: 3.7.1
*/
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((t=t||self).eg=t.eg||{},t.eg.Flicking=e())}(this,function(){"use strict";var i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function r(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}function P(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;for(var i=Array(t),r=0,e=0;e<n;e++)for(var o=arguments[e],s=0,a=o.length;s<a;s++,r++)i[r]=o[s];return i}function h(t){return void 0===t}var t=function(){function t(){this.options={},this._eventHandler={}}var e=t.prototype;return e.trigger=function(t){for(var e=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];if(!(0<(s=this._eventHandler[t]||[]).length))return!0;var r=n[0]||{},o=n.slice(1),s=s.concat(),a=!1;r.eventType=t,r.stop=function(){a=!0},r.currentTarget=this;var l=[r];return 1<=o.length&&(l=l.concat(o)),s.forEach(function(t){t.apply(e,l)}),!a},e.once=function(n,i){var r,o=this;if("object"==typeof n&&h(i)){var t=n;for(var e in t)this.once(e,t[e]);return this}return"string"==typeof n&&"function"==typeof i&&(r=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];i.apply(o,t),o.off(n,r)},this.on(n,r)),this},e.hasOn=function(t){return!!this._eventHandler[t]},e.on=function(t,e){if("object"==typeof t&&h(e)){var n=t;for(var i in n)this.on(i,n[i]);return this}var r;return"string"==typeof t&&"function"==typeof e&&(h(r=this._eventHandler[t])&&(this._eventHandler[t]=[],r=this._eventHandler[t]),r.push(e)),this},e.off=function(t,e){var n,i;if(h(t))return this._eventHandler={},this;if(h(e)){if("string"==typeof t)return delete this._eventHandler[t],this;var r=t;for(var o in r)this.off(o,r[o]);return this}var s=this._eventHandler[t];if(s){var a=0;try{for(var l=function(t){var e="function"==typeof Symbol&&Symbol.iterator,n=e&&t[e],i=0;if(n)return n.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}(s),u=l.next();!u.done;u=l.next()){if(u.value===e){s.splice(a,1);break}a++}}catch(t){n={error:t}}finally{try{u&&!u.done&&(i=l.return)&&i.call(l)}finally{if(n)throw n.error}}}return this},t.VERSION="2.2.2",t}(),o=function(t,e){return(o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])})(t,e)};function s(t,e){function n(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var l=function(){return(l=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};var e="undefined"!=typeof window,n=e?window.navigator.userAgent:"",a=e&&!!("getComputedStyle"in window),u=/MSIE|Trident|Windows Phone|Edge/.test(n),c=e&&!!("addEventListener"in document),d="width",f="height";function p(t,e){return t.getAttribute(e)||""}function g(t){return[].slice.call(t)}function v(t){return"loading"in t&&"lazy"===t.getAttribute("loading")}function m(t,e,n){c?t.addEventListener(e,n,!1):t.attachEvent?t.attachEvent("on"+e,n):t["on"+e]=n}function y(t,e,n){t.removeEventListener?t.removeEventListener(e,n,!1):t.detachEvent?t.detachEvent("on"+e,n):t["on"+e]=null}function x(t,e){var n,i=t["client"+e]||t["offset"+e];return parseFloat(i||(n=t,((a?window.getComputedStyle(n):n.currentStyle)||{})[e.toLowerCase()]))||0}function E(t,e,n){var i=g(t.querySelectorAll(function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;for(var i=Array(t),r=0,e=0;e<n;e++)for(var o=arguments[e],s=0,a=o.length;s<a;s++,r++)i[r]=o[s];return i}(["["+n+"skip] ["+n+"width]"],e.map(function(t){return["["+n+"skip] "+t,t+"["+n+"skip]","["+n+"width] "+t].join(", ")})).join(", ")));return g(t.querySelectorAll("["+n+"width], "+e.join(", "))).filter(function(t){return-1===i.indexOf(t)})}var C=[];function b(t,e){C.length||m(window,"resize",S),t.__PREFIX__=e,C.push(t),w(t)}function w(t,e){void 0===e&&(e="data-");var n,i=t.__PREFIX__||e,r=parseInt(p(t,""+i+d),10)||0,o=parseInt(p(t,""+i+f),10)||0;p(t,i+"fixed")===f?(n=x(t,"Height")||o,t.style[d]=r/o*n+"px"):(n=x(t,"Width")||r,t.style[f]=o/r*n+"px")}function S(){C.forEach(function(t){w(t)})}var I=function(a){function t(t,e){void 0===e&&(e={});var n,i,r,o,s=a.call(this)||this;return s.isReady=!1,s.isPreReady=!1,s.hasDataSize=!1,s.hasLoading=!1,s.isSkip=!1,s.onCheck=function(t){s.clear(),t&&"error"===t.type&&s.onError(s.element);var e=!s.hasDataSize&&!s.hasLoading;s.onReady(e)},s.options=l({prefix:"data-"},e),s.element=t,s.hasDataSize=(n=t,void 0===(i=s.options.prefix)&&(i="data-"),!!n.getAttribute(i+"width")),s.hasLoading=v(t),s.isSkip=(r=s.element,void 0===o&&(o="data-"),!!r.getAttribute(o+"skip")),s}s(t,a);var e=t.prototype;return e.check=function(){return this.isSkip||!this.checkElement()?(this.onAlreadyReady(!0),!1):(this.hasDataSize&&b(this.element,this.options.prefix),(this.hasDataSize||this.hasLoading)&&this.onAlreadyPreReady(),!0)},e.addEvents=function(){var e=this,n=this.element;this.constructor.EVENTS.forEach(function(t){m(n,t,e.onCheck)})},e.clear=function(){var e=this,n=this.element;this.constructor.EVENTS.forEach(function(t){y(n,t,e.onCheck)}),this.removeAutoSizer()},e.destroy=function(){this.clear(),this.off()},e.removeAutoSizer=function(){var t,e,n,i,r;this.hasDataSize&&(t=this.options.prefix,e=this.element,n=t,(r=C.indexOf(e))<0||(i=p(e,n+"fixed"),delete e.__PREFIX__,e.style[i===f?d:f]="",C.splice(r,1),C.length||y(window,"resize",S)))},e.onError=function(t){this.trigger("error",{element:this.element,target:t})},e.onPreReady=function(){this.isPreReady||(this.isPreReady=!0,this.trigger("preReady",{element:this.element,hasLoading:this.hasLoading,isSkip:this.isSkip}))},e.onReady=function(t){this.isReady||(t&&(this.isPreReady=!0),this.removeAutoSizer(),this.isReady=!0,this.trigger("ready",{element:this.element,withPreReady:t,hasLoading:this.hasLoading,isSkip:this.isSkip}))},e.onAlreadyError=function(t){var e=this;setTimeout(function(){e.onError(t)})},e.onAlreadyPreReady=function(){var t=this;setTimeout(function(){t.onPreReady()})},e.onAlreadyReady=function(t){var e=this;setTimeout(function(){e.onReady(t)})},t.EVENTS=[],t}(t),T=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}s(e,t);var n=e.prototype;return n.setHasLoading=function(t){this.hasLoading=t},n.check=function(){return this.isSkip?(this.onAlreadyReady(!0),!1):(this.hasDataSize?(b(this.element,this.options.prefix),this.onAlreadyPreReady()):this.trigger("requestChildren"),!0)},n.checkElement=function(){return!0},n.destroy=function(){this.clear(),this.trigger("requestDestroy"),this.off()},n.onAlreadyPreReady=function(){t.prototype.onAlreadyPreReady.call(this),this.trigger("reqeustReadyChildren")},e.EVENTS=[],e}(I),A=function(n){function t(t){void 0===t&&(t={});var e=n.call(this)||this;return e.readyCount=0,e.preReadyCount=0,e.totalCount=0,e.totalErrorCount=0,e.isPreReadyOver=!0,e.elementInfos=[],e.options=l({loaders:{},prefix:"data-"},t),e}s(t,n);var e=t.prototype;return e.check=function(t){var l=this,n=this.options.prefix;this.clear(),this.elementInfos=g(t).map(function(t,a){var e=l.getLoader(t,{prefix:n});return e.check(),e.on("error",function(t){l.onError(a,t.target)}).on("preReady",function(t){var e=l.elementInfos[a];e.hasLoading=t.hasLoading,e.isSkip=t.isSkip;var n=l.checkPreReady(a);l.onPreReadyElement(a),n&&l.onPreReady()}).on("ready",function(t){var e=t.withPreReady,n=t.hasLoading,i=t.isSkip,r=l.elementInfos[a];r.hasLoading=n,r.isSkip=i;var o=e&&l.checkPreReady(a),s=l.checkReady(a);e&&l.onPreReadyElement(a),l.onReadyElement(a),o&&l.onPreReady(),s&&l.onReady()}),{loader:e,element:t,hasLoading:!1,hasError:!1,isPreReady:!1,isReady:!1,isSkip:!1}});var e=this.elementInfos.length;return(this.totalCount=e)||setTimeout(function(){l.onPreReady(),l.onReady()}),this},e.getTotalCount=function(){return this.totalCount},e.isPreReady=function(){return this.elementInfos.every(function(t){return t.isPreReady})},e.isReady=function(){return this.elementInfos.every(function(t){return t.isReady})},e.hasError=function(){return 0<this.totalErrorCount},e.clear=function(){this.isPreReadyOver=!1,this.totalCount=0,this.preReadyCount=0,this.readyCount=0,this.totalErrorCount=0,this.elementInfos.forEach(function(t){!t.isReady&&t.loader&&t.loader.destroy()}),this.elementInfos=[]},e.destroy=function(){this.clear(),this.off()},e.getLoader=function(e,t){var n=this,i=e.tagName.toLowerCase(),r=this.options.loaders,o=Object.keys(r);if(r[i])return new r[i](e,t);var s=new T(e,t),a=g(e.querySelectorAll(o.join(", ")));s.setHasLoading(a.some(v));var l=!1,u=this.clone().on("error",function(t){s.onError(t.target)}).on("ready",function(){s.onReady(l)});return s.on("requestChildren",function(){var t=E(e,o,n.options.prefix);u.check(t).on("preReady",function(t){(l=t.isReady)||s.onPreReady()})}).on("reqeustReadyChildren",function(){u.check(a)}).on("requestDestroy",function(){u.destroy()}),s},e.clone=function(){return new t(l({},this.options))},e.checkPreReady=function(t){return this.elementInfos[t].isPreReady=!0,++this.preReadyCount,!(this.preReadyCount<this.totalCount)},e.checkReady=function(t){return this.elementInfos[t].isReady=!0,++this.readyCount,!(this.readyCount<this.totalCount)},e.onError=function(t,e){var n=this.elementInfos[t];n.hasError=!0,this.trigger("error",{element:n.element,index:t,target:e,errorCount:this.getErrorCount(),totalErrorCount:++this.totalErrorCount})},e.onPreReadyElement=function(t){var e=this.elementInfos[t];this.trigger("preReadyElement",{element:e.element,index:t,preReadyCount:this.preReadyCount,readyCount:this.readyCount,totalCount:this.totalCount,isPreReady:this.isPreReady(),isReady:this.isReady(),hasLoading:e.hasLoading,isSkip:e.isSkip})},e.onPreReady=function(){this.isPreReadyOver=!0,this.trigger("preReady",{readyCount:this.readyCount,totalCount:this.totalCount,isReady:this.isReady(),hasLoading:this.hasLoading()})},e.onReadyElement=function(t){var e=this.elementInfos[t];this.trigger("readyElement",{index:t,element:e.element,hasError:e.hasError,errorCount:this.getErrorCount(),totalErrorCount:this.totalErrorCount,preReadyCount:this.preReadyCount,readyCount:this.readyCount,totalCount:this.totalCount,isPreReady:this.isPreReady(),isReady:this.isReady(),hasLoading:e.hasLoading,isPreReadyOver:this.isPreReadyOver,isSkip:e.isSkip})},e.onReady=function(){this.trigger("ready",{errorCount:this.getErrorCount(),totalErrorCount:this.totalErrorCount,totalCount:this.totalCount})},e.getErrorCount=function(){return this.elementInfos.filter(function(t){return t.hasError}).length},e.hasLoading=function(){return this.elementInfos.some(function(t){return t.hasLoading})},t}(t),R=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return s(e,t),e.prototype.checkElement=function(){var t=this.element,e=t.getAttribute("src");return t.complete&&e?(t.naturalWidth||this.onAlreadyError(t),!1):(this.addEvents(),u&&t.setAttribute("src",e),!0)},e.EVENTS=["load","error"],e}(I),O=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return s(e,t),e.prototype.checkElement=function(){var t=this.element;return!(1<=t.readyState)&&(t.error?(this.onAlreadyError(t),!1):(this.addEvents(),!0))},e.EVENTS=["loadedmetadata","error"],e}(I),M=function(e){function t(t){return void 0===t&&(t={}),e.call(this,l({loaders:{img:R,video:O}},t))||this}return s(t,e),t}(A);function z(){return(z=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t}).apply(this,arguments)}function k(t,e){t.prototype=Object.create(e.prototype),(t.prototype.constructor=t).__proto__=e}function N(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}var _,D="function"!=typeof Object.assign?function(t){if(null==t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),n=1;n<arguments.length;n++){var i=arguments[n];if(null!=i)for(var r in i)i.hasOwnProperty(r)&&(e[r]=i[r])}return e}:Object.assign,H=["","webkit","Moz","MS","ms","o"],L="undefined"==typeof document?{style:{}}:document.createElement("div"),V="function",B=Math.round,F=Math.abs,j=Date.now;function X(t,e){for(var n,i,r=e[0].toUpperCase()+e.slice(1),o=0;o<H.length;){if((i=(n=H[o])?n+r:e)in t)return i;o++}}_="undefined"==typeof window?{}:window;var Y=X(L.style,"touchAction"),q=void 0!==Y;var W="compute",G="manipulation",U="none",Q="pan-x",Z="pan-y",J=function(){if(!q)return!1;var e={},n=_.CSS&&_.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach(function(t){return e[t]=!n||_.CSS.supports("touch-action",t)}),e}(),K="ontouchstart"in _,$=void 0!==X(_,"PointerEvent"),tt=K&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),et="touch",nt="mouse",it=25,rt=1,ot=4,st=8,at=1,lt=2,ut=4,ht=8,ct=16,dt=lt|ut,ft=ht|ct,pt=dt|ft,gt=["x","y"],vt=["clientX","clientY"];function mt(t,e,n){var i;if(t)if(t.forEach)t.forEach(e,n);else if(void 0!==t.length)for(i=0;i<t.length;)e.call(n,t[i],i,t),i++;else for(i in t)t.hasOwnProperty(i)&&e.call(n,t[i],i,t)}function Pt(t,e){return typeof t===V?t.apply(e&&e[0]||void 0,e):t}function yt(t,e){return-1<t.indexOf(e)}var xt=function(){function t(t,e){this.manager=t,this.set(e)}var e=t.prototype;return e.set=function(t){t===W&&(t=this.compute()),q&&this.manager.element.style&&J[t]&&(this.manager.element.style[Y]=t),this.actions=t.toLowerCase().trim()},e.update=function(){this.set(this.manager.options.touchAction)},e.compute=function(){var e=[];return mt(this.manager.recognizers,function(t){Pt(t.options.enable,[t])&&(e=e.concat(t.getTouchAction()))}),function(t){if(yt(t,U))return U;var e=yt(t,Q),n=yt(t,Z);return e&&n?U:e||n?e?Q:Z:yt(t,G)?G:"auto"}(e.join(" "))},e.preventDefaults=function(t){var e=t.srcEvent,n=t.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var i=this.actions,r=yt(i,U)&&!J[U],o=yt(i,Z)&&!J[Z],s=yt(i,Q)&&!J[Q];if(r){var a=1===t.pointers.length,l=t.distance<2,u=t.deltaTime<250;if(a&&l&&u)return}if(!s||!o)return r||o&&n&dt||s&&n&ft?this.preventSrc(e):void 0}},e.preventSrc=function(t){this.manager.session.prevented=!0,t.preventDefault()},t}();function Et(t,e){for(;t;){if(t===e)return!0;t=t.parentNode}return!1}function Ct(t){var e=t.length;if(1===e)return{x:B(t[0].clientX),y:B(t[0].clientY)};for(var n=0,i=0,r=0;r<e;)n+=t[r].clientX,i+=t[r].clientY,r++;return{x:B(n/e),y:B(i/e)}}function bt(t){for(var e=[],n=0;n<t.pointers.length;)e[n]={clientX:B(t.pointers[n].clientX),clientY:B(t.pointers[n].clientY)},n++;return{timeStamp:j(),pointers:e,center:Ct(e),deltaX:t.deltaX,deltaY:t.deltaY}}function wt(t,e,n){var i=e[(n=n||gt)[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return Math.sqrt(i*i+r*r)}function St(t,e,n){var i=e[(n=n||gt)[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return 180*Math.atan2(r,i)/Math.PI}function It(t,e){return t===e?at:F(t)>=F(e)?t<0?lt:ut:e<0?ht:ct}function Tt(t,e,n){return{x:e/t||0,y:n/t||0}}function At(t,e){var n=t.session,i=e.pointers,r=i.length;n.firstInput||(n.firstInput=bt(e)),1<r&&!n.firstMultiple?n.firstMultiple=bt(e):1===r&&(n.firstMultiple=!1);var o,s,a,l,u,h,c=n.firstInput,d=n.firstMultiple,f=d?d.center:c.center,p=e.center=Ct(i);e.timeStamp=j(),e.deltaTime=e.timeStamp-c.timeStamp,e.angle=St(f,p),e.distance=wt(f,p),o=n,a=(s=e).center,l=o.offsetDelta||{},u=o.prevDelta||{},h=o.prevInput||{},s.eventType!==rt&&h.eventType!==ot||(u=o.prevDelta={x:h.deltaX||0,y:h.deltaY||0},l=o.offsetDelta={x:a.x,y:a.y}),s.deltaX=u.x+(a.x-l.x),s.deltaY=u.y+(a.y-l.y),e.offsetDirection=It(e.deltaX,e.deltaY);var g,v,m,P,y,x,E,C,b,w,S,I,T,A,R,O=Tt(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=O.x,e.overallVelocityY=O.y,e.overallVelocity=F(O.x)>F(O.y)?O.x:O.y,e.scale=d?(g=d.pointers,wt((v=i)[0],v[1],vt)/wt(g[0],g[1],vt)):1,e.rotation=d?(m=d.pointers,St((P=i)[1],P[0],vt)+St(m[1],m[0],vt)):0,e.maxPointers=!n.prevInput||e.pointers.length>n.prevInput.maxPointers?e.pointers.length:n.prevInput.maxPointers,x=e,A=(y=n).lastInterval||x,R=x.timeStamp-A.timeStamp,x.eventType!==st&&(it<R||void 0===A.velocity)?(w=(b=Tt(R,E=x.deltaX-A.deltaX,C=x.deltaY-A.deltaY)).x,S=b.y,I=F(b.x)>F(b.y)?b.x:b.y,T=It(E,C),y.lastInterval=x):(I=A.velocity,w=A.velocityX,S=A.velocityY,T=A.direction),x.velocity=I,x.velocityX=w,x.velocityY=S,x.direction=T;var M=t.element,z=e.srcEvent,k=z.composedPath?z.composedPath()[0]:z.path?z.path[0]:z.target;Et(k,M)&&(M=k),e.target=M}function Rt(t,e,n){var i=n.pointers.length,r=n.changedPointers.length,o=e&rt&&i-r==0,s=e&(ot|st)&&i-r==0;n.isFirst=!!o,n.isFinal=!!s,o&&(t.session={}),n.eventType=e,At(t,n),t.emit("hammer.input",n),t.recognize(n),t.session.prevInput=n}function Ot(t){return t.trim().split(/\s+/g)}function Mt(e,t,n){mt(Ot(t),function(t){e.addEventListener(t,n,!1)})}function zt(e,t,n){mt(Ot(t),function(t){e.removeEventListener(t,n,!1)})}function kt(t){var e=t.ownerDocument||t;return e.defaultView||e.parentWindow||window}var Nt=function(){function t(e,t){var n=this;this.manager=e,this.callback=t,this.element=e.element,this.target=e.options.inputTarget,this.domHandler=function(t){Pt(e.options.enable,[e])&&n.handler(t)},this.init()}var e=t.prototype;return e.handler=function(){},e.init=function(){this.evEl&&Mt(this.element,this.evEl,this.domHandler),this.evTarget&&Mt(this.target,this.evTarget,this.domHandler),this.evWin&&Mt(kt(this.element),this.evWin,this.domHandler)},e.destroy=function(){this.evEl&&zt(this.element,this.evEl,this.domHandler),this.evTarget&&zt(this.target,this.evTarget,this.domHandler),this.evWin&&zt(kt(this.element),this.evWin,this.domHandler)},t}();function _t(t,e,n){if(t.indexOf&&!n)return t.indexOf(e);for(var i=0;i<t.length;){if(n&&t[i][n]==e||!n&&t[i]===e)return i;i++}return-1}var Dt={pointerdown:rt,pointermove:2,pointerup:ot,pointercancel:st,pointerout:st},Ht={2:et,3:"pen",4:nt,5:"kinect"},Lt="pointerdown",Vt="pointermove pointerup pointercancel";_.MSPointerEvent&&!_.PointerEvent&&(Lt="MSPointerDown",Vt="MSPointerMove MSPointerUp MSPointerCancel");var Bt=function(n){function i(){var t,e=i.prototype;return e.evEl=Lt,e.evWin=Vt,(t=n.apply(this,arguments)||this).store=t.manager.session.pointerEvents=[],t}return k(i,n),i.prototype.handler=function(t){var e=this.store,n=!1,i=t.type.toLowerCase().replace("ms",""),r=Dt[i],o=Ht[t.pointerType]||t.pointerType,s=o===et,a=_t(e,t.pointerId,"pointerId");r&rt&&(0===t.button||s)?a<0&&(e.push(t),a=e.length-1):r&(ot|st)&&(n=!0),a<0||(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:o,srcEvent:t}),n&&e.splice(a,1))},i}(Nt);function Ft(t){return Array.prototype.slice.call(t,0)}var jt={touchstart:rt,touchmove:2,touchend:ot,touchcancel:st},Xt="touchstart touchmove touchend touchcancel",Yt=function(e){function n(){var t;return n.prototype.evTarget=Xt,(t=e.apply(this,arguments)||this).targetIds={},t}return k(n,e),n.prototype.handler=function(t){var e=jt[t.type],n=function(t,e){var n,i,r=Ft(t.touches),o=this.targetIds;if(e&(2|rt)&&1===r.length)return o[r[0].identifier]=!0,[r,r];var s=Ft(t.changedTouches),a=[],l=this.target;if(i=r.filter(function(t){return Et(t.target,l)}),e===rt)for(n=0;n<i.length;)o[i[n].identifier]=!0,n++;n=0;for(;n<s.length;)o[s[n].identifier]&&a.push(s[n]),e&(ot|st)&&delete o[s[n].identifier],n++;return a.length?[function(t,n,e){for(var i=[],r=[],o=0;o<t.length;){var s=n?t[o][n]:t[o];_t(r,s)<0&&i.push(t[o]),r[o]=s,o++}return e&&(i=n?i.sort(function(t,e){return t[n]>e[n]}):i.sort()),i}(i.concat(a),"identifier",!0),a]:void 0}.call(this,t,e);n&&this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:et,srcEvent:t})},n}(Nt);var qt={mousedown:rt,mousemove:2,mouseup:ot},Wt="mousedown",Gt="mousemove mouseup",Ut=function(n){function i(){var t,e=i.prototype;return e.evEl=Wt,e.evWin=Gt,(t=n.apply(this,arguments)||this).pressed=!1,t}return k(i,n),i.prototype.handler=function(t){var e=qt[t.type];e&rt&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=ot),this.pressed&&(e&ot&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:nt,srcEvent:t}))},i}(Nt),Qt=2500,Zt=25;function Jt(t){var e,n,i=t.changedPointers[0];i.identifier===this.primaryTouch&&(e={x:i.clientX,y:i.clientY},n=this.lastTouches,this.lastTouches.push(e),setTimeout(function(){var t=n.indexOf(e);-1<t&&n.splice(t,1)},Qt))}var Kt=function(){return function(n){function t(t,e){var o=n.call(this,t,e)||this;return o.handler=function(t,e,n){var i=n.pointerType===et,r=n.pointerType===nt;if(!(r&&n.sourceCapabilities&&n.sourceCapabilities.firesTouchEvents)){if(i)(function(t,e){t&rt?(this.primaryTouch=e.changedPointers[0].identifier,Jt.call(this,e)):t&(ot|st)&&Jt.call(this,e)}).call(N(N(o)),e,n);else if(r&&function(t){for(var e=t.srcEvent.clientX,n=t.srcEvent.clientY,i=0;i<this.lastTouches.length;i++){var r=this.lastTouches[i],o=Math.abs(e-r.x),s=Math.abs(n-r.y);if(o<=Zt&&s<=Zt)return!0}return!1}.call(N(N(o)),n))return;o.callback(t,e,n)}},o.touch=new Yt(o.manager,o.handler),o.mouse=new Ut(o.manager,o.handler),o.primaryTouch=null,o.lastTouches=[],o}return k(t,n),t.prototype.destroy=function(){this.touch.destroy(),this.mouse.destroy()},t}(Nt)}();function $t(t,e,n){return Array.isArray(t)&&(mt(t,n[e],n),1)}var te=1;function ee(t,e){var n=e.manager;return n?n.get(t):t}function ne(t){return 16&t?"cancel":8&t?"end":4&t?"move":2&t?"start":""}var ie=function(){function t(t){void 0===t&&(t={}),this.options=z({enable:!0},t),this.id=te++,this.manager=null,this.state=1,this.simultaneous={},this.requireFail=[]}var e=t.prototype;return e.set=function(t){return D(this.options,t),this.manager&&this.manager.touchAction.update(),this},e.recognizeWith=function(t){if($t(t,"recognizeWith",this))return this;var e=this.simultaneous;return e[(t=ee(t,this)).id]||(e[t.id]=t).recognizeWith(this),this},e.dropRecognizeWith=function(t){return $t(t,"dropRecognizeWith",this)||(t=ee(t,this),delete this.simultaneous[t.id]),this},e.requireFailure=function(t){if($t(t,"requireFailure",this))return this;var e=this.requireFail;return-1===_t(e,t=ee(t,this))&&(e.push(t),t.requireFailure(this)),this},e.dropRequireFailure=function(t){if($t(t,"dropRequireFailure",this))return this;t=ee(t,this);var e=_t(this.requireFail,t);return-1<e&&this.requireFail.splice(e,1),this},e.hasRequireFailures=function(){return 0<this.requireFail.length},e.canRecognizeWith=function(t){return!!this.simultaneous[t.id]},e.emit=function(e){var n=this,t=this.state;function i(t){n.manager.emit(t,e)}t<8&&i(n.options.event+ne(t)),i(n.options.event),e.additionalEvent&&i(e.additionalEvent),8<=t&&i(n.options.event+ne(t))},e.tryEmit=function(t){if(this.canEmit())return this.emit(t);this.state=32},e.canEmit=function(){for(var t=0;t<this.requireFail.length;){if(!(33&this.requireFail[t].state))return!1;t++}return!0},e.recognize=function(t){var e=D({},t);if(!Pt(this.options.enable,[this,e]))return this.reset(),void(this.state=32);56&this.state&&(this.state=1),this.state=this.process(e),30&this.state&&this.tryEmit(e)},e.process=function(){},e.getTouchAction=function(){},e.reset=function(){},t}(),re=function(e){function t(t){return void 0===t&&(t={}),e.call(this,z({pointers:1},t))||this}k(t,e);var n=t.prototype;return n.attrTest=function(t){var e=this.options.pointers;return 0===e||t.pointers.length===e},n.process=function(t){var e=this.state,n=t.eventType,i=6&e,r=this.attrTest(t);return i&&(n&st||!r)?16|e:i||r?n&ot?8|e:2&e?4|e:2:32},t}(ie);var oe=function(i){function t(t){var e;return void 0===t&&(t={}),(e=i.call(this,z({event:"pan",threshold:10,pointers:1,direction:pt},t))||this).pX=null,e.pY=null,e}k(t,i);var e=t.prototype;return e.getTouchAction=function(){var t=this.options.direction,e=[];return t&dt&&e.push(Z),t&ft&&e.push(Q),e},e.directionTest=function(t){var e=this.options,n=!0,i=t.distance,r=t.direction,o=t.deltaX,s=t.deltaY;return r&e.direction||(i=e.direction&dt?(r=0===o?at:o<0?lt:ut,n=o!==this.pX,Math.abs(t.deltaX)):(r=0===s?at:s<0?ht:ct,n=s!==this.pY,Math.abs(t.deltaY))),t.direction=r,n&&i>e.threshold&&r&e.direction},e.attrTest=function(t){return re.prototype.attrTest.call(this,t)&&(2&this.state||!(2&this.state)&&this.directionTest(t))},e.emit=function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e,n=(e=t.direction)===ct?"down":e===ht?"up":e===lt?"left":e===ut?"right":"";n&&(t.additionalEvent=this.options.event+n),i.prototype.emit.call(this,t)},t}(re),se={domEvents:!1,touchAction:W,enable:!0,inputTarget:null,inputClass:null,cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};function ae(n,i){var r,o=n.element;o.style&&(mt(n.options.cssProps,function(t,e){r=X(o.style,e),i?(n.oldCssProps[r]=o.style[r],o.style[r]=t):o.style[r]=n.oldCssProps[r]||""}),i||(n.oldCssProps={}))}var le=function(){function t(t,e){var n,i,r=this;this.options=D({},se,e||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=(i=(n=this).options.inputClass,new(i||($?Bt:tt?Yt:K?Kt:Ut))(n,Rt)),this.touchAction=new xt(this,this.options.touchAction),ae(this,!0),mt(this.options.recognizers,function(t){var e=r.add(new t[0](t[1]));t[2]&&e.recognizeWith(t[2]),t[3]&&e.requireFailure(t[3])},this)}var e=t.prototype;return e.set=function(t){return D(this.options,t),t.touchAction&&this.touchAction.update(),t.inputTarget&&(this.input.destroy(),this.input.target=t.inputTarget,this.input.init()),this},e.stop=function(t){this.session.stopped=t?2:1},e.recognize=function(t){var e,n=this.session;if(!n.stopped){this.touchAction.preventDefaults(t);var i=this.recognizers,r=n.curRecognizer;(!r||r&&8&r.state)&&(r=n.curRecognizer=null);for(var o=0;o<i.length;)e=i[o],2===n.stopped||r&&e!==r&&!e.canRecognizeWith(r)?e.reset():e.recognize(t),!r&&14&e.state&&(r=n.curRecognizer=e),o++}},e.get=function(t){if(t instanceof ie)return t;for(var e=this.recognizers,n=0;n<e.length;n++)if(e[n].options.event===t)return e[n];return null},e.add=function(t){if($t(t,"add",this))return this;var e=this.get(t.options.event);return e&&this.remove(e),this.recognizers.push(t),(t.manager=this).touchAction.update(),t},e.remove=function(t){if($t(t,"remove",this))return this;var e,n,i=this.get(t);return!t||-1!==(n=_t(e=this.recognizers,i))&&(e.splice(n,1),this.touchAction.update()),this},e.on=function(t,e){if(void 0===t||void 0===e)return this;var n=this.handlers;return mt(Ot(t),function(t){n[t]=n[t]||[],n[t].push(e)}),this},e.off=function(t,e){if(void 0===t)return this;var n=this.handlers;return mt(Ot(t),function(t){e?n[t]&&n[t].splice(_t(n[t],e),1):delete n[t]}),this},e.emit=function(t,e){var n,i,r;this.options.domEvents&&(n=t,i=e,(r=document.createEvent("Event")).initEvent(n,!0,!0),(r.gesture=i).target.dispatchEvent(r));var o=this.handlers[t]&&this.handlers[t].slice();if(o&&o.length){e.type=t,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var s=0;s<o.length;)o[s](e),s++}},e.destroy=function(){this.element&&ae(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null},t}();function ue(t,e){for(var n=t.length,i=0;i<n;++i)if(e(t[i],i))return!0;return!1}function he(t,e){for(var n=t.length,i=0;i<n;++i)if(e(t[i],i))return t[i];return null}function ce(t,e){try{return new RegExp(t,"g").exec(e)}catch(t){return null}}function de(t){return t.replace(/_/g,".")}function fe(t,r){var o=null,s="-1";return ue(t,function(t){var e,n,i=ce("("+t.test+")((?:\\/|\\s|:)([0-9|\\.|_]+))?",r);return i&&!t.brand&&(o=t,s=i[3]||"-1",t.versionAlias?s=t.versionAlias:t.versionTest&&(e=t.versionTest.toLowerCase(),n=ce("("+e+")((?:\\/|\\s|:)([0-9|\\.|_]+))?",r),s=(n?n[3]:"")||s),s=de(s),1)}),{preset:o,version:s}}function pe(t,n){return he(t,function(t){var e=t.brand;return ce(""+n.test,e.toLowerCase())})}var ge=[{test:"phantomjs",id:"phantomjs"},{test:"whale",id:"whale"},{test:"edgios|edge|edg",id:"edge"},{test:"msie|trident|windows phone",id:"ie",versionTest:"iemobile|msie|rv"},{test:"miuibrowser",id:"miui browser"},{test:"samsungbrowser",id:"samsung internet"},{test:"samsung",id:"samsung internet",versionTest:"version"},{test:"chrome|crios",id:"chrome"},{test:"firefox|fxios",id:"firefox"},{test:"android",id:"android browser",versionTest:"version"},{test:"safari|iphone|ipad|ipod",id:"safari",versionTest:"version"}],ve=[{test:"(?=.*applewebkit/(53[0-7]|5[0-2]|[0-4]))(?=.*\\schrome)",id:"chrome"},{test:"chromium",id:"chrome"},{test:"whale",id:"chrome",brand:!0}],me=[{test:"applewebkit",id:"webkit"}],Pe=[{test:"(?=(iphone|ipad))(?!(.*version))",id:"webview"},{test:"(?=(android|iphone|ipad))(?=.*(naver|daum|; wv))",id:"webview"},{test:"webview",id:"webview"}],ye=[{test:"windows phone",id:"windows phone"},{test:"windows 2000",id:"window",versionAlias:"5.0"},{test:"windows nt",id:"window"},{test:"iphone|ipad|ipod",id:"ios",versionTest:"iphone os|cpu os"},{test:"mac os x",id:"mac"},{test:"android",id:"android"},{test:"tizen",id:"tizen"},{test:"webos|web0s",id:"webos"}];function xe(t){var e=function(t){var e=t;if(void 0===e){if("undefined"==typeof navigator||!navigator)return"";e=navigator.userAgent||""}return e.toLowerCase()}(t),n=!!/mobi/g.exec(e),i={name:"unknown",version:"-1",majorVersion:-1,webview:!!fe(Pe,e).preset,chromium:!!fe(ve,e).preset,webkit:!1},r={name:"unknown",version:"-1",majorVersion:-1},o=fe(ge,e),s=o.preset,a=o.version,l=fe(ye,e),u=l.preset,h=l.version;return i.webkit=!i.chromium&&!!fe(me,e).preset,u&&(r.name=u.id,r.version=h,r.majorVersion=parseInt(h,10)),s&&(i.name=s.id,i.version=a,i.webview&&"ios"===r.name&&"safari"!==i.name&&(i.webview=!1)),i.majorVersion=parseInt(i.version,10),{browser:i,os:r,isMobile:n,isHints:!1}}var Ee=function(t,e){return(Ee=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};var Ce,be=function(){return(be=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function we(t,e,n,i){var r=t,o=[!n[0]&&i?e[0]-i[0]:e[0],!n[1]&&i?e[1]+i[1]:e[1]],r=Math.max(o[0],r);return Math.min(o[1],r)}function Se(t,e){return t<e[0]||t>e[1]}function Ie(t,e,n){return n[1]&&t>e[1]||n[0]&&t<e[0]}function Te(t,e,n){var i=t,r=e[0],o=e[1],s=o-r;return n[1]&&o<t&&(i=(i-o)%s+r),n[0]&&t<r&&(i=(i-r)%s+o),i}function Ae(t){for(var e=[],n=0,i=t.length;n<i;n++)e.push(t[n]);return e}var Re,Oe,Me=(Ce="undefined"==typeof window?{navigator:{userAgent:""}}:window).requestAnimationFrame||Ce.webkitRequestAnimationFrame,ze=Ce.cancelAnimationFrame||Ce.webkitCancelAnimationFrame;function ke(t,e){var n={};for(var i in t)i&&(n[i]=e(t[i],i));return n}function Ne(t,e){var n={};for(var i in t)i&&e(t[i],i)&&(n[i]=t[i]);return n}function _e(t,e){for(var n in t)if(n&&!e(t[n],n))return!1;return!0}function De(t,n){return _e(t,function(t,e){return t===n[e]})}Me&&!ze?(Re={},Oe=Me,Me=function(e){var n=Oe(function(t){Re[n]&&e(t)});return Re[n]=!0,n},ze=function(t){delete Re[t]}):Me&&ze||(Me=function(t){return Ce.setTimeout(function(){t(Ce.performance&&Ce.performance.now&&Ce.performance.now()||(new Date).getTime())},16)},ze=Ce.clearTimeout);var He={};function Le(t,e){var n,i;return He[e]||(He[e]=(i=(n=e)<1?Math.pow(10,Be(n)):1,function(t){return 0===n?0:Math.round(Math.round(t/n)*n*i)/i})),He[e](t)}function Ve(t,n){if(!t||!n)return t;var i="number"==typeof n;return ke(t,function(t,e){return Le(t,i?n:n[e])})}function Be(t){if(!isFinite(t))return 0;var e=t+"";if(0<=e.indexOf("e")){for(var n=0,i=1;Math.round(t*i)/i!==t;)i*=10,n++;return n}return 0<=e.indexOf(".")?e.length-e.indexOf(".")-1:0}function Fe(t,e,n){return Math.max(Math.min(t,n),e)}var je,Xe,Ye,qe,We,Ge,Ue,Qe,Ze,Je,Ke=function(){function t(t){var e=t.options,n=t.itm,i=t.em,r=t.axm;this.options=e,this.itm=n,this.em=i,this.axm=r,this.animationEnd=this.animationEnd.bind(this)}var e=t.prototype;return e.getDuration=function(o,t,e){var n,s=this;return Fe(void 0!==e?e:(n=ke(t,function(t,e){return n=Math.abs(t-o[e]),i=s.options.deceleration,(r=Math.sqrt(n/i*2))<100?0:r;var n,i,r}),Object.keys(n).reduce(function(t,e){return Math.max(t,n[e])},-1/0)),this.options.minimumDuration,this.options.maximumDuration)},e.createAnimationParam=function(t,e,n){var i=this.axm.get(),r=t,o=n&&n.event||null;return{depaPos:i,destPos:r,duration:Fe(e,this.options.minimumDuration,this.options.maximumDuration),delta:this.axm.getDelta(i,r),inputEvent:o,input:n&&n.input||null,isTrusted:!!o,done:this.animationEnd}},e.grab=function(t,e){var n,i,r;this._animateParam&&t.length&&(n=this.axm.get(t),_e(i=this.axm.map(n,function(t,e){return Te(t,e.range,e.circular)}),function(t,e){return n[e]===t})||this.em.triggerChange(i,!1,n,e,!!e),this._animateParam=null,this._raf&&(r=this._raf,ze(r)),this._raf=null,this.em.triggerAnimationEnd(!(!e||!e.event)))},e.getEventInfo=function(){return this._animateParam&&this._animateParam.input&&this._animateParam.inputEvent?{input:this._animateParam.input,event:this._animateParam.inputEvent}:null},e.restore=function(t){var e=this.axm.get(),n=this.axm.map(e,function(t,e){return Math.min(e.range[1],Math.max(e.range[0],t))});this.animateTo(n,this.getDuration(e,n),t)},e.animationEnd=function(){var t=this.getEventInfo();this._animateParam=null;var e=this.axm.filter(this.axm.get(),function(t,e){return Ie(t,e.range,e.circular)});0<Object.keys(e).length&&this.setTo(this.axm.map(e,function(t,e){return Te(t,e.range,e.circular)})),this.itm.setInterrupt(!1),this.em.triggerAnimationEnd(!!t),this.axm.isOutside()?this.restore(t):this.finish(!!t)},e.finish=function(t){this._animateParam=null,this.itm.setInterrupt(!1),this.em.triggerFinish(t)},e.animateLoop=function(r,o){var l,u,h,c,d,f,p,g;r.duration?(this._animateParam=be({},r),l=this._animateParam,u=this,h=l.destPos,c=l.depaPos,d=0,f=ke(c,function(t,e){return t<=h[e]?1:-1}),p=ke(h,function(t){return t}),g=(new Date).getTime(),l.startTime=g,function t(){u._raf=null;var e=(new Date).getTime(),s=(e-l.startTime)/r.duration,a=u.easing(s),n=u.axm.map(c,function(t,e,n){var i,r=1<=s?h[n]:t+l.delta[n]*(a-d),o=Te(r,e.range,e.circular);return r!==o&&(i=f[n]*(e.range[1]-e.range[0]),h[n]-=i,c[n]-=i),o}),i=!u.em.triggerChange(n,!1,c);if(c=n,g=e,1<=(d=a))return De(h=u.getFinalPos(h,p),u.axm.get(Object.keys(h)))||u.em.triggerChange(h,!0,c),void o();i?u.finish(!1):u._raf=Me(t)}()):(this.em.triggerChange(r.destPos,!0),o())},e.getFinalPos=function(t,n){var i=this;return ke(t,function(t,e){return t>=n[e]-1e-6&&t<=n[e]+1e-6?n[e]:Le(t,i.getRoundUnit(t,e))})},e.getRoundUnit=function(t,e){var n,i,r=this.options.round,o=null;return r||(n=this.axm.getAxisOptions(e),i=Math.max(Be(n.range[0]),Be(n.range[1]),Be(t)),o=1/Math.pow(10,i)),o||r},e.getUserControll=function(t){var e=t.setTo();return e.destPos=this.axm.get(e.destPos),e.duration=Fe(e.duration,this.options.minimumDuration,this.options.maximumDuration),e},e.animateTo=function(t,e,n){var i,r=this,o=this.createAnimationParam(t,e,n),s=be({},o.depaPos),a=this.em.triggerAnimationStart(o),l=this.getUserControll(o);!a&&this.axm.every(l.destPos,function(t,e){return Ie(t,e.range,e.circular)})&&console.warn("You can't stop the 'animation' event when 'circular' is true."),a&&!De(l.destPos,s)&&(i=n&&n.event||null,this.animateLoop({depaPos:s,destPos:l.destPos,duration:l.duration,delta:this.axm.getDelta(s,l.destPos),isTrusted:!!i,inputEvent:i,input:n&&n.input||null},function(){return r.animationEnd()}))},e.easing=function(t){return 1<t?1:this.options.easing(t)},e.setTo=function(t,e){void 0===e&&(e=0);var n=Object.keys(t);this.grab(n);var i=this.axm.get(n);if(De(t,i))return this;this.itm.setInterrupt(!0);var r=Ne(t,function(t,e){return i[e]!==t});return Object.keys(r).length&&(De(r=this.axm.map(r,function(t,e){var n=e.range,i=e.circular;return i&&(i[0]||i[1])?t:we(t,n,i)}),i)||(0<e?this.animateTo(r,e):(this.em.triggerChange(r),this.finish(!1)))),this},e.setBy=function(n,t){return void 0===t&&(t=0),this.setTo(ke(this.axm.get(Object.keys(n)),function(t,e){return t+n[e]}),t)},t}(),$e=function(){function t(t){this.axes=t}var e=t.prototype;return e.triggerHold=function(t,e){var n=this.getRoundPos(t).roundPos;this.axes.trigger("hold",{pos:n,input:e.input||null,inputEvent:e.event||null,isTrusted:!0})},e.triggerRelease=function(t){var e=this.getRoundPos(t.destPos,t.depaPos),n=e.roundPos,i=e.roundDepa;t.destPos=n,t.depaPos=i,t.setTo=this.createUserControll(t.destPos,t.duration),this.axes.trigger("release",t)},e.triggerChange=function(t,e,n,i,r){void 0===r&&(r=!1);var o=this.am,s=o.axm,a=o.getEventInfo(),l=this.getRoundPos(t,n),u=l.roundPos,h=l.roundDepa,c=s.moveTo(u,h),d=i&&i.event||a&&a.event||null,f={pos:c.pos,delta:c.delta,holding:r,inputEvent:d,isTrusted:!!d,input:i&&i.input||a&&a.input||null,set:d?this.createUserControll(c.pos):function(){}},p=this.axes.trigger("change",f);return d&&s.set(f.set().destPos),p},e.triggerAnimationStart=function(t){var e=this.getRoundPos(t.destPos,t.depaPos),n=e.roundPos,i=e.roundDepa;return t.destPos=n,t.depaPos=i,t.setTo=this.createUserControll(t.destPos,t.duration),this.axes.trigger("animationStart",t)},e.triggerAnimationEnd=function(t){void 0===t&&(t=!1),this.axes.trigger("animationEnd",{isTrusted:t})},e.triggerFinish=function(t){void 0===t&&(t=!1),this.axes.trigger("finish",{isTrusted:t})},e.createUserControll=function(t,e){void 0===e&&(e=0);var n={destPos:be({},t),duration:e};return function(t,e){return t&&(n.destPos=be({},t)),void 0!==e&&(n.duration=e),n}},e.setAnimationManager=function(t){this.am=t},e.destroy=function(){this.axes.off()},e.getRoundPos=function(t,e){var n=this.axes.options.round;return{roundPos:Ve(t,n),roundDepa:Ve(e,n)}},t}(),tn=function(){function t(t){this.options=t,this._prevented=!1}var e=t.prototype;return e.isInterrupting=function(){return this.options.interruptable||this._prevented},e.isInterrupted=function(){return!this.options.interruptable&&this._prevented},e.setInterrupt=function(t){this.options.interruptable||(this._prevented=t)},t}(),en=function(){function t(t,e){var n=this;this.axis=t,this.options=e,this._complementOptions(),this._pos=Object.keys(this.axis).reduce(function(t,e){return t[e]=n.axis[e].range[0],t},{})}var e=t.prototype;return e._complementOptions=function(){var r=this;Object.keys(this.axis).forEach(function(i){r.axis[i]=be({range:[0,100],bounce:[0,0],circular:[!1,!1]},r.axis[i]),["bounce","circular"].forEach(function(t){var e=r.axis,n=e[i][t];/string|number|boolean/.test(typeof n)&&(e[i][t]=[n,n])})})},e.getDelta=function(t,e){var n=this.get(t);return ke(this.get(e),function(t,e){return t-n[e]})},e.get=function(t){var n=this;return t&&Array.isArray(t)?t.reduce(function(t,e){return e&&e in n._pos&&(t[e]=n._pos[e]),t},{}):be({},this._pos,t||{})},e.moveTo=function(n,i){void 0===i&&(i=this._pos);var t=ke(this._pos,function(t,e){return e in n&&e in i?n[e]-i[e]:0});return this.set(this.map(n,function(t,e){return e?Te(t,e.range,e.circular):0})),{pos:be({},this._pos),delta:t}},e.set=function(t){for(var e in t)e&&e in this._pos&&(this._pos[e]=t[e])},e.every=function(t,n){var i=this.axis;return _e(t,function(t,e){return n(t,i[e],e)})},e.filter=function(t,n){var i=this.axis;return Ne(t,function(t,e){return n(t,i[e],e)})},e.map=function(t,n){var i=this.axis;return ke(t,function(t,e){return n(t,i[e],e)})},e.isOutside=function(t){return!this.every(t?this.get(t):this._pos,function(t,e){return!Se(t,e.range)})},e.getAxisOptions=function(t){return this.axis[t]},t}(),nn=function(){function t(t){var e=t.options,n=t.itm,i=t.em,r=t.axm,o=t.am;this.isOutside=!1,this.moveDistance=null,this.isStopped=!1,this.options=e,this.itm=n,this.em=i,this.axm=r,this.am=o}var e=t.prototype;return e.atOutside=function(t){var s=this;if(this.isOutside)return this.axm.map(t,function(t,e){var n=e.range[0]-e.bounce[0],i=e.range[1]+e.bounce[1];return i<t?i:t<n?n:t});var a=this.am.easing(1e-5)/1e-5;return this.axm.map(t,function(t,e){var n=e.range[0],i=e.range[1],r=e.bounce,o=e.circular;return o&&(o[0]||o[1])?t:t<n?n-s.am.easing((n-t)/(r[0]*a))*r[0]:i<t?i+s.am.easing((t-i)/(r[1]*a))*r[1]:t})},e.get=function(t){return this.axm.get(t.axes)},e.hold=function(t,e){var n;!this.itm.isInterrupted()&&t.axes.length&&(n={input:t,event:e},this.isStopped=!1,this.itm.setInterrupt(!0),this.am.grab(t.axes,n),this.moveDistance||this.em.triggerHold(this.axm.get(),n),this.isOutside=this.axm.isOutside(t.axes),this.moveDistance=this.axm.get(t.axes))},e.change=function(t,e,n){var i,r;this.isStopped||!this.itm.isInterrupting()||this.axm.every(n,function(t){return 0===t})||(r=ke(i=this.moveDistance||this.axm.get(t.axes),function(t,e){return t+(n[e]||0)}),this.moveDistance&&(this.moveDistance=r),this.isOutside&&this.axm.every(i,function(t,e){return!Se(t,e.range)})&&(this.isOutside=!1),i=this.atOutside(i),r=this.atOutside(r),this.em.triggerChange(r,!1,i,{input:t,event:e},!0)||(this.isStopped=!0,this.moveDistance=null,this.am.finish(!1)))},e.release=function(t,e,n,i){var r,o,s,a,l,u,h,c;!this.isStopped&&this.itm.isInterrupting()&&this.moveDistance&&(r=this.axm.get(t.axes),o=this.axm.get(),s=this.axm.get(this.axm.map(n,function(t,e,n){return e.circular&&(e.circular[0]||e.circular[1])?r[n]+t:we(r[n]+t,e.range,e.circular,e.bounce)})),0===(a=this.am.getDuration(s,r,i))&&(s=be({},o)),l={depaPos:o,destPos:s,duration:a,delta:this.axm.getDelta(o,s),inputEvent:e,input:t,isTrusted:!0},this.em.triggerRelease(l),this.moveDistance=null,c={input:t,event:e},(h=De((u=this.am.getUserControll(l)).destPos,o))||0===u.duration?(h||this.em.triggerChange(u.destPos,!1,o,c,!0),this.itm.setInterrupt(!1),this.axm.isOutside()?this.am.restore(c):this.em.triggerFinish(!0)):this.am.animateTo(u.destPos,u.duration,c))},t}(),rn="ontouchstart"in Ce&&-1<(void 0===(je=Ce.navigator.userAgent)&&function(){if("undefined"!=typeof navigator&&navigator&&navigator.userAgentData){var t=navigator.userAgentData,e=t.brands||t.uaList;return e&&e.length}}()?(We=navigator.userAgentData,Ge=(We.uaList||We.brands).slice(),Ue=We.mobile||!1,Qe=Ge[0],Ze={name:Qe.brand,version:Qe.version,majorVersion:-1,webkit:!1,webview:ue(Pe,function(t){return pe(Ge,t)}),chromium:ue(ve,function(t){return pe(Ge,t)})},Je={name:"unknown",version:"-1",majorVersion:-1},Ze.webkit=!Ze.chromium&&ue(me,function(t){return pe(Ge,t)}),Xe&&(Ye=Xe.platform.toLowerCase(),qe=he(ye,function(t){return new RegExp(""+t.test,"g").exec(Ye)}),Je.name=qe?qe.id:Ye,Je.version=Xe.platformVersion),ue(ge,function(t){var e=pe(Ge,t);return e&&(Ze.name=t.id,Ze.version=Xe?Xe.uaFullVersion:e.version,1)}),"Linux armv8l"===navigator.platform?Je.name="android":Ze.webkit&&(Je.name=Ue?"ios":"mac"),"ios"===Je.name&&Ze.webview&&(Ze.version="-1"),Je.version=de(Je.version),Ze.version=de(Ze.version),Je.majorVersion=parseInt(Je.version,10),Ze.majorVersion=parseInt(Ze.version,10),{browser:Ze,os:Je,isMobile:Ue,isHints:!0}):xe(je)).browser.name.indexOf("safari"),on=function(){if("undefined"==typeof document)return"";for(var t=(document.head||document.getElementsByTagName("head")[0]).style,e=["transform","webkitTransform","msTransform","mozTransform"],n=0,i=e.length;n<i;n++)if(e[n]in t)return e[n];return""}(),sn=function(r){function t(){this.constructor=e}var e,n;function i(t,e,n){void 0===t&&(t={}),void 0===e&&(e={});var i=r.call(this)||this;return i.axis=t,i._inputs=[],i.options=be({easing:function(t){return 1-Math.pow(1-t,3)},interruptable:!0,maximumDuration:1/0,minimumDuration:0,deceleration:6e-4,round:null},e),i.itm=new tn(i.options),i.axm=new en(i.axis,i.options),i.em=new $e(i),i.am=new Ke(i),i.io=new nn(i),i.em.setAnimationManager(i.am),n&&i.em.triggerChange(n),i}Ee(e=i,n=r),e.prototype=null===n?Object.create(n):(t.prototype=n.prototype,new t);var o=i.prototype;return o.connect=function(t,e){var n,i="string"==typeof t?t.split(" "):t.concat();return~this._inputs.indexOf(e)&&this.disconnect(e),"hammer"in e&&((n=this._inputs.filter(function(t){return t.hammer&&t.element===e.element})).length&&(e.hammer=n[0].hammer)),e.mapAxes(i),e.connect(this.io),this._inputs.push(e),this},o.disconnect=function(t){var e;return t?0<=(e=this._inputs.indexOf(t))&&(this._inputs[e].disconnect(),this._inputs.splice(e,1)):(this._inputs.forEach(function(t){return t.disconnect()}),this._inputs=[]),this},o.get=function(t){return this.axm.get(t)},o.setTo=function(t,e){return void 0===e&&(e=0),this.am.setTo(t,e),this},o.setBy=function(t,e){return void 0===e&&(e=0),this.am.setBy(t,e),this},o.isBounceArea=function(t){return this.axm.isOutside(t)},o.destroy=function(){this.disconnect(),this.em.destroy()},i.VERSION="2.7.0",i.TRANSFORM=on,i.DIRECTION_NONE=at,i.DIRECTION_LEFT=lt,i.DIRECTION_RIGHT=ut,i.DIRECTION_UP=ht,i.DIRECTION_DOWN=ct,i.DIRECTION_HORIZONTAL=dt,i.DIRECTION_VERTICAL=ft,i.DIRECTION_ALL=pt,i}(t),an="PointerEvent"in Ce||"MSPointerEvent"in Ce,ln="ontouchstart"in Ce,un="_EGJS_AXES_INPUTTYPE_";function hn(i,t){return t.reduce(function(t,e,n){return i[n]&&(t[i[n]]=e),t},{})}function cn(t,e,n){return n?!!(e===pt||e&t&&n&t):!!(e&t)}var dn=function(){function t(t,e){if(this.axes=[],this.hammer=null,this.element=null,this.panRecognizer=null,this.isRightEdge=!1,this.rightEdgeTimer=0,this.panFlag=!1,void 0===le)throw new Error("The Hammerjs must be loaded before eg.Axes.PanInput.\nhttp://hammerjs.github.io/");this.element=function e(t,n){var i,r;return void 0===n&&(n=!1),"string"==typeof t?(r=t.match(/^<([a-z]+)\s*([^>]*)>/)?((i=document.createElement("div")).innerHTML=t,Ae(i.childNodes)):Ae(document.querySelectorAll(t)),n||(r=1<=r.length?r[0]:void 0)):t===Ce||t.nodeName&&(1===t.nodeType||9===t.nodeType)?r=t:"jQuery"in Ce&&t instanceof jQuery||t.constructor.prototype.jquery?r=n?t.toArray():t.get(0):Array.isArray(t)&&(r=t.map(function(t){return e(t)}),n||(r=1<=r.length?r[0]:void 0)),r}(t),this.options=be({inputType:["touch","mouse","pointer"],scale:[1,1],thresholdAngle:45,threshold:0,iOSEdgeSwipeThreshold:30,hammerManagerOptions:{cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",userDrag:"none"}}},e),this.onHammerInput=this.onHammerInput.bind(this),this.onPanmove=this.onPanmove.bind(this),this.onPanend=this.onPanend.bind(this)}var e=t.prototype;return e.mapAxes=function(t){var e=!!t[0],n=!!t[1];this._direction=e&&n?pt:e?dt:n?ft:at,this.axes=t},e.connect=function(t){var e={direction:this._direction,threshold:this.options.threshold};if(this.hammer)this.removeRecognizer(),this.dettachEvent();else{var n=(n=this.element[un])||String(Math.round(Math.random()*(new Date).getTime())),i=function(t){void 0===t&&(t=[]);var e=!1,n=!1,i=!1;return t.forEach(function(t){switch(t){case"mouse":n=!0;break;case"touch":e=ln;break;case"pointer":i=an}}),i?Bt:e&&n?Kt:e?Yt:n?Ut:null}(this.options.inputType);if(!i)throw new Error("Wrong inputType parameter!");this.hammer=function(t,e){try{return new le(t,be({},e))}catch(t){return null}}(this.element,be({inputClass:i},this.options.hammerManagerOptions)),this.element[un]=n}return this.panRecognizer=new oe(e),this.hammer.add(this.panRecognizer),this.attachEvent(t),this},e.disconnect=function(){return this.removeRecognizer(),this.hammer&&this.dettachEvent(),this._direction=at,this},e.destroy=function(){this.disconnect(),this.hammer&&0===this.hammer.recognizers.length&&this.hammer.destroy(),delete this.element[un],this.element=null,this.hammer=null},e.enable=function(){return this.hammer&&(this.hammer.get("pan").options.enable=!0),this},e.disable=function(){return this.hammer&&(this.hammer.get("pan").options.enable=!1),this},e.isEnable=function(){return!(!this.hammer||!this.hammer.get("pan").options.enable)},e.removeRecognizer=function(){this.hammer&&this.panRecognizer&&(this.hammer.remove(this.panRecognizer),this.panRecognizer=null)},e.onHammerInput=function(t){var e;this.isEnable()&&(t.isFirst?(this.panFlag=!1)!==t.srcEvent.cancelable&&(e=this.options.iOSEdgeSwipeThreshold,this.observer.hold(this,t),this.isRightEdge=rn&&t.center.x>window.innerWidth-e,this.panFlag=!0):t.isFinal&&this.onPanend(t))},e.onPanmove=function(t){var e=this;if(this.panFlag){var n,i=function(t,e){if(e<0||90<e)return at;var n=Math.abs(t);return e<n&&n<180-e?ft:dt}(t.angle,this.options.thresholdAngle),r=this.hammer.session.prevInput;if(r&&rn){if(t.center.x<0)return void this.onPanend(be({},r,{velocityX:0,velocityY:0,offsetX:0,offsetY:0}));this.isRightEdge&&(clearTimeout(this.rightEdgeTimer),n=this.options.iOSEdgeSwipeThreshold,t.deltaX<-n?this.isRightEdge=!1:this.rightEdgeTimer=window.setTimeout(function(){e.onPanend(be({},r,{velocityX:0,velocityY:0,offsetX:0,offsetY:0}))},100))}r?(t.offsetX=t.deltaX-r.deltaX,t.offsetY=t.deltaY-r.deltaY):(t.offsetX=0,t.offsetY=0);var o,s=this.getOffset([t.offsetX,t.offsetY],[cn(dt,this._direction,i),cn(ft,this._direction,i)]),a=s.some(function(t){return 0!==t});a&&(!1!==(o=t.srcEvent).cancelable&&o.preventDefault(),o.stopPropagation()),(t.preventSystemEvent=a)&&this.observer.change(this,t,hn(this.axes,s))}},e.onPanend=function(t){var e,n,i,r,o;this.panFlag&&(clearTimeout(this.rightEdgeTimer),this.panFlag=!1,e=this.getOffset([Math.abs(t.velocityX)*(t.deltaX<0?-1:1),Math.abs(t.velocityY)*(t.deltaY<0?-1:1)],[cn(dt,this._direction),cn(ft,this._direction)]),n=e,i=this.observer.options.deceleration,r=Math.sqrt(n[0]*n[0]+n[1]*n[1]),o=Math.abs(r/-i),e=[n[0]/2*o,n[1]/2*o],this.observer.release(this,t,hn(this.axes,e)))},e.attachEvent=function(t){this.observer=t,this.hammer.on("hammer.input",this.onHammerInput).on("panstart panmove",this.onPanmove)},e.dettachEvent=function(){this.hammer.off("hammer.input",this.onHammerInput).off("panstart panmove",this.onP