@egjs/axes
Advanced tools
Comparing version 3.7.0 to 3.8.0
@@ -13,3 +13,3 @@ import { ExtendedEvent, InputEventType } from "../types"; | ||
abstract onRelease(event: InputEventType): void; | ||
abstract getTouches(event: InputEventType): number; | ||
abstract getTouches(event: InputEventType, inputButton?: string[]): number; | ||
protected abstract _getScale(event: InputEventType): number; | ||
@@ -16,0 +16,0 @@ protected abstract _getCenter(event: InputEventType): { |
@@ -11,3 +11,3 @@ import { InputEventType, ExtendedEvent } from "../types"; | ||
onRelease(): void; | ||
getTouches(): number; | ||
getTouches(event: InputEventType, inputButton?: string[]): number; | ||
protected _getScale(): number; | ||
@@ -14,0 +14,0 @@ protected _getCenter(event: MouseEvent): { |
@@ -9,2 +9,3 @@ import { ActiveEvent, ElementType, InputEventType } from "../types"; | ||
threshold?: number; | ||
preventClickOnDrag?: boolean; | ||
iOSEdgeSwipeThreshold?: number; | ||
@@ -26,2 +27,3 @@ releaseOnScroll?: boolean; | ||
private _rightEdgeTimer; | ||
private _dragged; | ||
constructor(el: ElementType, options?: PanInputOption); | ||
@@ -44,3 +46,4 @@ mapAxes(axes: string[]): void; | ||
private _detachElementEvent; | ||
private _preventClickWhenDragged; | ||
private _voidFunction; | ||
} |
@@ -7,5 +7,5 @@ /* | ||
repository: https://github.com/naver/egjs-axes | ||
version: 3.7.0 | ||
version: 3.8.0 | ||
*/ | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@egjs/agent"),require("@egjs/component"),require("@cfcs/core")):"function"==typeof define&&define.amd?define(["@egjs/agent","@egjs/component","@cfcs/core"],e):(t.eg=t.eg||{},t.eg.Axes=e(t.eg.agent,t.eg.Component,t.core))}(this,function(t,u,h){"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)}var c=function(){return(c=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var s in e=arguments[n])Object.prototype.hasOwnProperty.call(e,s)&&(t[s]=e[s]);return t}).apply(this,arguments)};function l(t,e){var n,i={};for(n in t)n&&(i[n]=e(t[n],n));return i}function s(t,e){var n,i={};for(n in t)n&&e(t[n],n)&&(i[n]=t[n]);return i}function o(t,e){for(var n in t)if(n&&!e(t[n],n))return!1;return!0}function _(t,n){return o(t,function(t,e){return t===n[e]})}function a(t,e){return R[e]||(R[e]=q(e)),R[e](t)}function v(t,n){return t&&n?l(t,function(t,e){return a(t,"number"==typeof n?n:n[e])}):t}function d(t){if(!isFinite(t))return 0;var e="".concat(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 f(t,e){return 180*Math.atan2(e,t)/Math.PI}function n(e){var n=!0;return Object.keys(D).forEach(function(t){e&&e[t]===D[t]||(n=!1)}),n}function g(t,e){return t&&e?30:t?6:e?w:1}function p(t,e,n){return n?!!(30===e||e&t&&n&t):!!(e&t)}function m(e,t,n){var i,s={1:"auto",30:"none",24:"pan-x",6:"pan-y"},r={};return e&&e.style&&(t=t.touchAction||s[n],i=c(c({},D),{"touch-action":"none"===e.style["touch-action"]?"none":t}),Object.keys(i).forEach(function(t){r[t]=e.style[t],e.style[t]=i[t]})),r}function E(e,n){e&&e.style&&n&&Object.keys(n).forEach(function(t){e.style[t]=n[t]})}function x(t,e,n,i){return n=[!n[0]&&i?e[0]-i[0]:e[0],!n[1]&&i?e[1]+i[1]:e[1]],i=Math.max(n[0],t),Math.min(n[1],i)}function b(t,e){return t<e[0]||t>e[1]}function k(t,e,n){return n[1]&&t>e[1]||n[0]&&t<e[0]}function M(t,e,n){var i=t,s=e[0],r=(e=e[1])-s;return n[1]&&e<t&&(i=(i-e)%r+s),i=n[0]&&t<s?(i-s)%r+e:i}function y(i,t){return t.reduce(function(t,e,n){return i[n]&&(t[i[n]]=e),t},{})}function X(t){var e=!1,n=!1,i=!1;return(t=void 0===t?[]:t).forEach(function(t){switch(t){case"mouse":n=!0;break;case"touch":e=G;break;case"pointer":i=Z}}),i?new tt:e&&n?new et:e?new $:n?new J:null}function P(t,e,n){return Math.max(Math.min(t,n),e)}var T,j,e,O="undefined"==typeof window?{navigator:{userAgent:""}}:window,w=24,A="left",Y="right",F="middle",N=["connect","disconnect","get","setTo","setBy","setOptions","setAxis","stopAnimation","updateAnimation","isBounceArea"],W=["hold","release","change","animationStart","animationEnd","finish"],V="ontouchstart"in O&&"safari"===t().browser.name,K=function(){if("undefined"!=typeof document)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""}(),D={"user-select":"none","-webkit-user-drag":"none"},U=function(t){for(var e=[],n=0,i=t.length;n<i;n++)e.push(t[n]);return e},I=function(t,e){var n;return void 0===e&&(e=!1),"string"==typeof t?(n=t.match(/^<([a-z]+)\s*([^>]*)>/)?((n=document.createElement("div")).innerHTML=t,U(n.childNodes)):U(document.querySelectorAll(t)),e||(n=1<=n.length?n[0]:void 0)):t===O?n=t:"value"in t||"current"in t?n=t.value||t.current:!t.nodeName||1!==t.nodeType&&9!==t.nodeType?"jQuery"in O&&t instanceof jQuery||t.constructor.prototype.jquery?n=e?t.toArray():t.get(0):Array.isArray(t)&&(n=t.map(function(t){return I(t)}),e||(n=1<=n.length?n[0]:void 0)):n=t,n},C=O.requestAnimationFrame||O.webkitRequestAnimationFrame,S=O.cancelAnimationFrame||O.webkitCancelAnimationFrame,R=(C&&!S?(T={},j=C,C=function(e){var n=j(function(t){T[n]&&e(t)});return T[n]=!0,n},S=function(t){delete T[t]}):C&&S||(C=function(t){return O.setTimeout(function(){t(O.performance&&O.performance.now&&O.performance.now()||(new Date).getTime())},16)},S=O.clearTimeout),{}),q=function(e){var n=e<1?Math.pow(10,d(e)):1;return function(t){return 0===e?0:Math.round(Math.round(t/e)*e*n)/n}},Q=function(){function t(t){this._axes=t}var e=t.prototype;return e.hold=function(t,e){t=this._getRoundPos(t).roundPos;this._axes.trigger(new u.ComponentEvent("hold",{pos:t,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,e=e.roundDepa;t.destPos=n,t.depaPos=e,t.setTo=this._createUserControll(t.destPos,t.duration),this._axes.trigger(new u.ComponentEvent("release",c(c({},t),{bounceRatio:this._getBounceRatio(n)})))},e.triggerChange=function(t,e,n,i){var s=this,r=(void 0===i&&(i=!1),this.animationManager),o=r.axisManager,r=r.getEventInfo(),t=this._getRoundPos(t,e),e=t.roundPos,t=t.roundDepa,a=o.moveTo(e,t),e=(null==n?void 0:n.event)||(null==r?void 0:r.event)||null,t={pos:a.pos,delta:a.delta,bounceRatio:this._getBounceRatio(a.pos),holding:i,inputEvent:e,isTrusted:!!e,input:(null==n?void 0:n.input)||(null==r?void 0:r.input)||null,set:e?this._createUserControll(a.pos):function(){}},i=new u.ComponentEvent("change",t);return this._axes.trigger(i),Object.keys(a.pos).forEach(function(t){var e=a.pos[t];h.getObserver(s._axes,t,e).current=e}),e&&o.set(t.set().destPos),!i.isCanceled()},e.triggerAnimationStart=function(t){var e=this._getRoundPos(t.destPos,t.depaPos),n=e.roundPos,e=e.roundDepa,n=(t.destPos=n,t.depaPos=e,t.setTo=this._createUserControll(t.destPos,t.duration),new u.ComponentEvent("animationStart",t));return this._axes.trigger(n),!n.isCanceled()},e.triggerAnimationEnd=function(t){this._axes.trigger(new u.ComponentEvent("animationEnd",{isTrusted:t=void 0===t?!1:t}))},e.triggerFinish=function(t){this._axes.trigger(new u.ComponentEvent("finish",{isTrusted:t=void 0===t?!1:t}))},e.setAnimationManager=function(t){this.animationManager=t},e.destroy=function(){this._axes.off()},e._createUserControll=function(t,e){void 0===e&&(e=0);var n={destPos:c({},t),duration:e};return function(t,e){return t&&(n.destPos=c({},t)),void 0!==e&&(n.duration=e),n}},e._getRoundPos=function(t,e){var n=this._axes.options.round;return{roundPos:v(t,n),roundDepa:v(e,n)}},e._getBounceRatio=function(t){return this._axes.axisManager.map(t,function(t,e){return t<e.range[0]&&0!==e.bounce[0]?(e.range[0]-t)/e.bounce[0]:t>e.range[1]&&0!==e.bounce[1]?(t-e.range[1])/e.bounce[1]:0})},t}(),z=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}(),H=function(){function t(t){var n=this;this._axis=t,this._complementOptions(),this._pos=Object.keys(this._axis).reduce(function(t,e){return t[e]=n._axis[e].startPos,t},{})}var e=t.prototype;return e.getDelta=function(t,e){var n=this.get(t);return l(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},{}):c(c({},this._pos),t||{})},e.moveTo=function(n,i){void 0===i&&(i=this._pos);var t=l(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?M(t,e.range,e.circular):0})),{pos:c({},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 o(t,function(t,e){return n(t,i[e],e)})},e.filter=function(t,n){var i=this._axis;return s(t,function(t,e){return n(t,i[e],e)})},e.map=function(t,n){var i=this._axis;return l(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!b(t,e.range)})},e.getAxisOptions=function(t){return this._axis[t]},e.setAxis=function(e){var n=this;Object.keys(e).forEach(function(t){if(!n._axis[t])throw new Error("Axis ".concat(t," does not exist in Axes instance"));n._axis[t]=c(c({},n._axis[t]),e[t])}),this._complementOptions()},e._complementOptions=function(){var s=this;Object.keys(this._axis).forEach(function(i){s._axis[i]=c({range:[0,100],startPos:s._axis[i].range[0],bounce:[0,0],circular:[!1,!1]},s._axis[i]),["bounce","circular"].forEach(function(t){var e=s._axis,n=e[i][t];/string|number|boolean/.test(typeof n)&&(e[i][t]=[n,n])})})},t}(),G="ontouchstart"in O,B="PointerEvent"in O,t="MSPointerEvent"in O,Z=B||t,t=function(){function t(){var e=this;this._stopContextMenu=function(t){t.preventDefault(),O.removeEventListener("contextmenu",e._stopContextMenu)}}var e=t.prototype;return e.extendEvent=function(t){var e=this.prevEvent,n=this._getCenter(t),i=e?this._getMovement(t):{x:0,y:0},s=e?this._getScale(t):1,r=e?f(n.x-e.center.x,n.y-e.center.y):0,o=e?e.deltaX+i.x:i.x,a=e?e.deltaY+i.y:i.y,u=i.x,i=i.y,h=this._latestInterval,c=Date.now(),l=h?c-h.timestamp:0,_=e?e.velocityX:0,e=e?e.velocityY:0;return(!h||16<=l)&&(h&&(_=(h=[(o-h.deltaX)/l,(a-h.deltaY)/l])[0],e=h[1]),this._latestInterval={timestamp:c,deltaX:o,deltaY:a}),{srcEvent:t,scale:s,angle:r,center:n,deltaX:o,deltaY:a,offsetX:u,offsetY:i,velocityX:_,velocityY:e,preventSystemEvent:!0}},e._getDistance=function(t,e){var n=e.clientX-t.clientX,e=e.clientY-t.clientY;return Math.sqrt(n*n+e*e)},e._getButton=function(t){var e={1:A,2:Y,4:F},e=this._isTouchEvent(t)?A:e[t.buttons];return e||null},e._isTouchEvent=function(t){return-1<t.type.indexOf("touch")},e._isValidButton=function(t,e){return-1<e.indexOf(t)},e._preventMouseButton=function(t,e){e===Y?O.addEventListener("contextmenu",this._stopContextMenu):e===F&&t.preventDefault()},t}(),J=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["mousedown"],t.move=["mousemove"],t.end=["mouseup"],t}r(t,e);var n=t.prototype;return n.onEventStart=function(t,e){var n=this._getButton(t);return e&&!this._isValidButton(n,e)?null:(this._preventMouseButton(t,n),this.extendEvent(t))},n.onEventMove=function(t,e){return e&&!this._isValidButton(this._getButton(t),e)?null:this.extendEvent(t)},n.onEventEnd=function(){},n.onRelease=function(){this.prevEvent=null},n.getTouches=function(){return 0},n._getScale=function(){return 1},n._getCenter=function(t){return{x:t.clientX,y:t.clientY}},n._getMovement=function(t){var e=this.prevEvent.srcEvent;return{x:t.clientX-e.clientX,y:t.clientY-e.clientY}},t}(t),$=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["touchstart"],t.move=["touchmove"],t.end=["touchend","touchcancel"],t}r(t,e);var n=t.prototype;return n.onEventStart=function(t){return this._baseTouches=t.touches,this.extendEvent(t)},n.onEventMove=function(t){return this.extendEvent(t)},n.onEventEnd=function(t){this._baseTouches=t.touches},n.onRelease=function(){this.prevEvent=null,this._baseTouches=null},n.getTouches=function(t){return t.touches.length},n._getScale=function(t){return 2!==t.touches.length||this._baseTouches.length<2?null:this._getDistance(t.touches[0],t.touches[1])/this._getDistance(this._baseTouches[0],this._baseTouches[1])},n._getCenter=function(t){return{x:t.touches[0].clientX,y:t.touches[0].clientY}},n._getMovement=function(t){var e=this.prevEvent.srcEvent;return t.touches[0].identifier!==e.touches[0].identifier?{x:0,y:0}:{x:t.touches[0].clientX-e.touches[0].clientX,y:t.touches[0].clientY-e.touches[0].clientY}},t}(t),tt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=B?["pointerdown"]:["MSPointerDown"],t.move=B?["pointermove"]:["MSPointerMove"],t.end=B?["pointerup","pointercancel"]:["MSPointerUp","MSPointerCancel"],t._firstInputs=[],t._recentInputs=[],t}r(t,e);var n=t.prototype;return n.onEventStart=function(t,e){var n=this._getButton(t);return e&&!this._isValidButton(n,e)?null:(this._preventMouseButton(t,n),this._updatePointerEvent(t),this.extendEvent(t))},n.onEventMove=function(t,e){return e&&!this._isValidButton(this._getButton(t),e)?null:(this._updatePointerEvent(t),this.extendEvent(t))},n.onEventEnd=function(t){this._removePointerEvent(t)},n.onRelease=function(){this.prevEvent=null,this._firstInputs=[],this._recentInputs=[]},n.getTouches=function(){return this._recentInputs.length},n._getScale=function(){return 2!==this._recentInputs.length?null:this._getDistance(this._recentInputs[0],this._recentInputs[1])/this._getDistance(this._firstInputs[0],this._firstInputs[1])},n._getCenter=function(t){return{x:t.clientX,y:t.clientY}},n._getMovement=function(t){var e=this.prevEvent.srcEvent;return t.pointerId!==e.pointerId?{x:0,y:0}:{x:t.clientX-e.clientX,y:t.clientY-e.clientY}},n._updatePointerEvent=function(n){var i=this,s=!1;this._recentInputs.forEach(function(t,e){t.pointerId===n.pointerId&&(s=!0,i._recentInputs[e]=n)}),s||(this._firstInputs.push(n),this._recentInputs.push(n))},n._removePointerEvent=function(e){this._firstInputs=this._firstInputs.filter(function(t){return t.pointerId!==e.pointerId}),this._recentInputs=this._recentInputs.filter(function(t){return t.pointerId!==e.pointerId})},t}(t),et=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["mousedown","touchstart"],t.move=["mousemove","touchmove"],t.end=["mouseup","touchend","touchcancel"],t}r(t,e);var n=t.prototype;return n.onEventStart=function(t,e){var n=this._getButton(t);return this._isTouchEvent(t)&&(this._baseTouches=t.touches),e&&!this._isValidButton(n,e)?null:(this._preventMouseButton(t,n),this.extendEvent(t))},n.onEventMove=function(t,e){return e&&!this._isValidButton(this._getButton(t),e)?null:this.extendEvent(t)},n.onEventEnd=function(t){this._isTouchEvent(t)&&(this._baseTouches=t.touches)},n.onRelease=function(){this.prevEvent=null,this._baseTouches=null},n.getTouches=function(t){return this._isTouchEvent(t)?t.touches.length:0},n._getScale=function(t){return this._isTouchEvent(t)?2!==t.touches.length||this._baseTouches.length<2?1:this._getDistance(t.touches[0],t.touches[1])/this._getDistance(this._baseTouches[0],this._baseTouches[1]):this.prevEvent.scale},n._getCenter=function(t){return this._isTouchEvent(t)?{x:t.touches[0].clientX,y:t.touches[0].clientY}:{x:t.clientX,y:t.clientY}},n._getMovement=function(t){var e=this,t=[t,this.prevEvent.srcEvent].map(function(t){return e._isTouchEvent(t)?{id:t.touches[0].identifier,x:t.touches[0].clientX,y:t.touches[0].clientY}:{id:null,x:t.clientX,y:t.clientY}}),n=t[0],t=t[1];return n.id===t.id?{x:n.x-t.x,y:n.y-t.y}:{x:0,y:0}},t}(t),nt=function(){function t(t){var e=t.options,n=t.interruptManager,i=t.eventManager,s=t.axisManager,t=t.animationManager;this._isOutside=!1,this._moveDistance=null,this._isStopped=!1,this.options=e,this._interruptManager=n,this._eventManager=i,this._axisManager=s,this._animationManager=t}var e=t.prototype;return e.get=function(t){return this._axisManager.get(t.axes)},e.hold=function(t,e){!this._interruptManager.isInterrupted()&&t.axes.length&&(this._isStopped=!(e={input:t,event:e}),this._interruptManager.setInterrupt(!0),this._animationManager.stopAnimation(e),this._moveDistance||this._eventManager.hold(this._axisManager.get(),e),this._isOutside=this._axisManager.isOutside(t.axes),this._moveDistance=this._axisManager.get(t.axes))},e.change=function(t,e,n,i){var s,r,o;this._isStopped||!this._interruptManager.isInterrupting()||this._axisManager.every(n,function(t){return 0===t})||((o=e.srcEvent||e).__childrenAxesAlreadyChanged||(s=this._moveDistance||this._axisManager.get(t.axes),r=l(s,function(t,e){return t+(n[e]||0)}),this._moveDistance&&(this._moveDistance=this._axisManager.map(r,function(t,e){var n=e.circular,e=e.range;return n&&(n[0]||n[1])?M(t,e,n):t})),this._isOutside&&this._axisManager.every(s,function(t,e){return!b(t,e.range)})&&(this._isOutside=!1),s=this._atOutside(s),r=this._atOutside(r),this.options.nested&&this._isEndofAxis(n,s,r)||(o.__childrenAxesAlreadyChanged=!0),o={input:t,event:e},i?(t=this._animationManager.getDuration(r,s),this._animationManager.animateTo(r,t,o)):this._eventManager.triggerChange(r,s,o,!0)||(this._isStopped=!0,this._moveDistance=null,this._animationManager.finish(!1))))},e.release=function(t,e,n,i){var s,r,o;!this._isStopped&&this._interruptManager.isInterrupting()&&this._moveDistance&&((o=e.srcEvent||e).__childrenAxesAlreadyReleased&&(n=n.map(function(){return 0})),s=this._axisManager.get(t.axes),r=this._axisManager.get(),n=this._animationManager.getDisplacement(n),n=y(t.axes,n),n=this._axisManager.get(this._axisManager.map(n,function(t,e,n){return e.circular&&(e.circular[0]||e.circular[1])?s[n]+t:x(s[n]+t,e.range,e.circular,e.bounce)})),o.__childrenAxesAlreadyReleased=!0,i={depaPos:r,destPos:n=0===(o=this._animationManager.getDuration(n,s,i))?c({},r):n,duration:o,delta:this._axisManager.getDelta(r,n),inputEvent:e,input:t,isTrusted:!0},this._eventManager.triggerRelease(i),this._moveDistance=null,o=this._animationManager.getUserControl(i),n={input:t,event:e},(i=_(o.destPos,r))||0===o.duration?(i||this._eventManager.triggerChange(o.destPos,r,n,!0),this._interruptManager.setInterrupt(!1),this._axisManager.isOutside()?this._animationManager.restore(n):this._eventManager.triggerFinish(!0)):this._animationManager.animateTo(o.destPos,o.duration,n))},e._atOutside=function(t){var r=this;return this._isOutside?this._axisManager.map(t,function(t,e){var n=e.range[0]-e.bounce[0],e=e.range[1]+e.bounce[1];return e<t?e:t<n?n:t}):this._axisManager.map(t,function(t,e){var n=e.range[0],i=e.range[1],s=e.bounce,e=e.circular;return e&&(e[0]||e[1])?t:t<n?n-r._animationManager.interpolate(n-t,s[0]):i<t?i+r._animationManager.interpolate(t-i,s[1]):t})},e._isEndofAxis=function(s,r,o){return this._axisManager.every(r,function(t,e,n){return 0===s[n]||r[n]===o[n]&&(n=t,t=e.range,i=e.bounce,!(e=e.circular)[0]&&n===t[0]-i[0]||!e[1]&&n===t[1]+i[1]);var i})},t}(),it=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._useDuration=!0,t}r(t,e);var n=t.prototype;return n.interpolate=function(t,e){var n=this._easing(1e-5)/1e-5;return this._easing(t/(e*n))*e},n.updateAnimation=function(t){var e,n,i,s,r=this._animateParam;r&&(e=(new Date).getTime()-r.startTime,n=(null==t?void 0:t.destPos)||r.destPos,i=(null==t?void 0:t.duration)||r.duration,null!=t&&t.restart||i<=e?this.setTo(n,i-e):(null!=t&&t.destPos&&(s=this.axisManager.get(),this._initialEasingPer=this._prevEasingPer,r.delta=this.axisManager.getDelta(s,n),r.destPos=n),null!=t&&t.duration&&(s=(e+this._durationOffset)/r.duration,this._durationOffset=s*i-e,r.duration=i)))},n._initState=function(t){return this._initialEasingPer=0,this._prevEasingPer=0,this._durationOffset=0,{pos:t.depaPos,easingPer:0,finished:!1}},n._getNextState=function(t){var s=this,r=this._animateParam,o=t.pos,a=r.destPos,u=l(o,function(t,e){return t<=a[e]?1:-1}),h=((new Date).getTime()-r.startTime+this._durationOffset)/r.duration,c=this._easing(h);return{pos:this.axisManager.map(o,function(t,e,n){var t=1<=h?a[n]:t+r.delta[n]*(c-s._prevEasingPer)/(1-s._initialEasingPer),i=M(t,e.range,e.circular);return t!==i&&(t=u[n]*(e.range[1]-e.range[0]),a[n]-=t,o[n]-=t),i}),easingPer:this._prevEasingPer=c,finished:1<=c}},n._easing=function(t){return 1<t?1:this._options.easing(t)},t}(function(){function t(t){var e=t.options,n=t.interruptManager,i=t.eventManager,t=t.axisManager;this._options=e,this.interruptManager=n,this.eventManager=i,this.axisManager=t,this.animationEnd=this.animationEnd.bind(this)}var e=t.prototype;return e.getDuration=function(n,t,e){var i,s=this;return e=void 0!==e?e:(i=l(t,function(t,e){t=Math.abs(t-n[e]),e=s._options.deceleration;return(t=Math.sqrt(t/e*2))<100?0:t}),Object.keys(i).reduce(function(t,e){return Math.max(t,i[e])},-1/0)),P(e,this._options.minimumDuration,this._options.maximumDuration)},e.getDisplacement=function(t){var e=Math.pow(t.reduce(function(t,e){return t+e*e},0),1/t.length),n=Math.abs(e/-this._options.deceleration);return t.map(function(t){return t/2*n})},e.stopAnimation=function(t){var n,e;this._animateParam&&(n=this.axisManager.get(),e=this.axisManager.map(n,function(t,e){return M(t,e.range,e.circular)}),o(e,function(t,e){return n[e]===t})||this.eventManager.triggerChange(e,n,t,!!t),this._animateParam=null,this._raf&&(e=this._raf,S(e)),this._raf=null,this.eventManager.triggerAnimationEnd(!(null==t||!t.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.axisManager.get(),n=this.axisManager.map(e,function(t,e){return Math.min(e.range[1],Math.max(e.range[0],t))});this.stopAnimation(),this.animateTo(n,this.getDuration(e,n),t)},e.animationEnd=function(){var t=this.getEventInfo(),e=(this._animateParam=null,this.axisManager.filter(this.axisManager.get(),function(t,e){return k(t,e.range,e.circular)}));0<Object.keys(e).length&&this.setTo(this.axisManager.map(e,function(t,e){return M(t,e.range,e.circular)})),this.interruptManager.setInterrupt(!1),this.eventManager.triggerAnimationEnd(!!t),this.axisManager.isOutside()?this.restore(t):this.finish(!!t)},e.finish=function(t){this._animateParam=null,this.interruptManager.setInterrupt(!1),this.eventManager.triggerFinish(t)},e.getUserControl=function(t){t=t.setTo();return t.destPos=this.axisManager.get(t.destPos),t.duration=P(t.duration,this._options.minimumDuration,this._options.maximumDuration),t},e.animateTo=function(t,e,n){var i=this,t=(this.stopAnimation(),this._createAnimationParam(t,e,n)),e=c({},t.depaPos),s=this.eventManager.triggerAnimationStart(t),t=this.getUserControl(t);!s&&this.axisManager.every(t.destPos,function(t,e){return k(t,e.range,e.circular)})&&console.warn("You can't stop the 'animation' event when 'circular' is true."),s&&!_(t.destPos,e)&&(s=(null==n?void 0:n.event)||null,this._animateLoop({depaPos:e,destPos:t.destPos,duration:t.duration,delta:this.axisManager.getDelta(e,t.destPos),isTrusted:!!s,inputEvent:s,input:(null==n?void 0:n.input)||null},function(){return i.animationEnd()}))},e.setTo=function(t,e){void 0===e&&(e=0);var n=Object.keys(t),i=this.axisManager.get(n);return _(t,i)||(this.interruptManager.setInterrupt(!0),n=s(t,function(t,e){return i[e]!==t}),Object.keys(n).length&&(n=this.axisManager.map(n,function(t,e){var n=e.range,e=e.circular;return e&&(e[0]||e[1])?t:x(t,n,e)}),_(n,i)||(0<e?this.animateTo(n,e):(this.stopAnimation(),this.eventManager.triggerChange(n),this.finish(!1))))),this},e.setBy=function(n,t){return void 0===t&&(t=0),this.setTo(l(this.axisManager.get(Object.keys(n)),function(t,e){return t+n[e]}),t)},e._createAnimationParam=function(t,e,n){var i=this.axisManager.get(),s=(null==n?void 0:n.event)||null;return{depaPos:i,destPos:t,duration:P(e,this._options.minimumDuration,this._options.maximumDuration),delta:this.axisManager.getDelta(i,t),inputEvent:s,input:(null==n?void 0:n.input)||null,isTrusted:!!s,done:this.animationEnd}},e._animateLoop=function(t,i){var s,r,o,a=this;t.duration?(this._animateParam=c(c({},t),{startTime:(new Date).getTime()}),s=l(t.destPos,function(t){return t}),r=this._initState(this._animateParam),(o=function(){a._raf=null;var t=a._animateParam,e=a._getNextState(r),n=!a.eventManager.triggerChange(e.pos,r.pos);(r=e).finished?(t.destPos=a._getFinalPos(t.destPos,s),_(t.destPos,a.axisManager.get(Object.keys(t.destPos)))||a.eventManager.triggerChange(t.destPos,e.pos),i()):n?a.finish(!1):a._raf=C(o)})()):(this.eventManager.triggerChange(t.destPos),i())},e._getFinalPos=function(t,n){var i=this;return l(t,function(t,e){return t>=n[e]-1e-6&&t<=n[e]+1e-6?n[e]:(e=i._getRoundUnit(t,e),a(t,e))})},e._getRoundUnit=function(t,e){var n=this._options.round,i=null;return n||(e=this.axisManager.getAxisOptions(e),e=Math.max(d(e.range[0]),d(e.range[1]),d(t)),i=1/Math.pow(10,e)),i||n},t}()),L=function(s){function t(t,e,n){void 0===t&&(t={}),void 0===e&&(e={}),void 0===n&&(n={});var i=s.call(this)||this;return i.axis=t,i._inputs=[],i.options=c({easing:function(t){return 1-Math.pow(1-t,3)},interruptable:!0,maximumDuration:1/0,minimumDuration:0,deceleration:6e-4,round:null,nested:!1},e),Object.keys(n).forEach(function(t){i.axis[t].startPos=n[t]}),i.interruptManager=new z(i.options),i.axisManager=new H(i.axis),i.eventManager=new Q(i),i.animationManager=new it(i),i.inputObserver=new nt(i),i.eventManager.setAnimationManager(i.animationManager),i.eventManager.triggerChange(i.axisManager.get()),i}r(t,s);var e=t.prototype;return e.connect=function(t,e){t="string"==typeof t?t.split(" "):t.concat();return~this._inputs.indexOf(e)&&this.disconnect(e),e.mapAxes(t),e.connect(this.inputObserver),this._inputs.push(e),this},e.disconnect=function(t){return t?0<=(t=this._inputs.indexOf(t))&&(this._inputs[t].disconnect(),this._inputs.splice(t,1)):(this._inputs.forEach(function(t){return t.disconnect()}),this._inputs=[]),this},e.get=function(t){return this.axisManager.get(t)},e.setTo=function(t,e){return this.animationManager.setTo(t,e=void 0===e?0:e),this},e.setBy=function(t,e){return this.animationManager.setBy(t,e=void 0===e?0:e),this},e.setOptions=function(t){return this.options=c(c({},this.options),t),this},e.setAxis=function(t){return this.axisManager.setAxis(t),this},e.stopAnimation=function(){return this.animationManager.stopAnimation(),this},e.updateAnimation=function(t){return this.animationManager.updateAnimation(t),this},e.isBounceArea=function(t){return this.axisManager.isOutside(t)},e.destroy=function(){this.disconnect(),this.eventManager.destroy()},t.VERSION="3.7.0",t.TRANSFORM=K,t.DIRECTION_NONE=1,t.DIRECTION_LEFT=2,t.DIRECTION_RIGHT=4,t.DIRECTION_UP=8,t.DIRECTION_DOWN=16,t.DIRECTION_HORIZONTAL=6,t.DIRECTION_VERTICAL=w,t.DIRECTION_ALL=30,function(t,e,n,i){var s,r=arguments.length,o=r<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,n,i);else for(var a=t.length-1;0<=a;a--)(s=t[a])&&(o=(r<3?s(o):3<r?s(e,n,o):s(e,n))||o);return 3<r&&o&&Object.defineProperty(e,n,o),o}([h.ReactiveSubscribe],t)}(u),t=function(){function t(t,e){this.axes=[],this.element=null,this._enabled=!1,this._activeEvent=null,this._atRightEdge=!1,this._rightEdgeTimer=0,this._voidFunction=function(){},this.element=I(t),this.options=c({inputType:["touch","mouse","pointer"],inputButton:[A],scale:[1,1],thresholdAngle:45,threshold:0,iOSEdgeSwipeThreshold:30,releaseOnScroll:!1,touchAction:null},e),this._onPanstart=this._onPanstart.bind(this),this._onPanmove=this._onPanmove.bind(this),this._onPanend=this._onPanend.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this._direction=g(!!t[0],!!t[1]),this.axes=t},e.connect=function(t){return this._activeEvent&&(this._detachElementEvent(),this._detachWindowEvent(this._activeEvent)),this._attachElementEvent(t),this._originalCssProps=m(this.element,this.options,this._direction),this},e.disconnect=function(){return this._detachElementEvent(),this._detachWindowEvent(this._activeEvent),n(this._originalCssProps)||E(this.element,this._originalCssProps),this._direction=1,this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e.release=function(){var t=this._activeEvent,e=t.prevEvent;return t.onRelease(),this._observer.release(this,e,[0,0]),this._detachWindowEvent(t),this},e._onPanstart=function(t){var e=this._activeEvent,n=e.onEventStart(t,this.options.inputButton);!n||!this._enabled||1<e.getTouches(t)||!1!==n.srcEvent.cancelable&&(t=this.options.iOSEdgeSwipeThreshold,this._observer.hold(this,n),this._atRightEdge=V&&n.center.x>window.innerWidth-t,this._attachWindowEvent(e),e.prevEvent=n)},e._onPanmove=function(t){var e=this,n=this._activeEvent,i=n.onEventMove(t,this.options.inputButton);if(i&&this._enabled&&!(1<n.getTouches(t))){var s=this.options,r=s.iOSEdgeSwipeThreshold,s=s.releaseOnScroll,o=function(t,e){if(e<0||90<e)return 1;t=Math.abs(t);return e<t&&t<180-e?w:6}(i.angle,this.options.thresholdAngle);if(s&&!i.srcEvent.cancelable)this._onPanend(t);else{if(n.prevEvent&&V){if(i.center.x<0)return void this.release();this._atRightEdge&&(clearTimeout(this._rightEdgeTimer),i.deltaX<-r?this._atRightEdge=!1:this._rightEdgeTimer=window.setTimeout(function(){return e.release()},100))}s=this._getOffset([i.offsetX,i.offsetY],[p(6,this._direction,o),p(w,this._direction,o)]),t=s.some(function(t){return 0!==t});t&&(!1!==i.srcEvent.cancelable&&i.srcEvent.preventDefault(),i.srcEvent.stopPropagation()),(i.preventSystemEvent=t)&&this._observer.change(this,i,y(this.axes,s)),n.prevEvent=i}}},e._onPanend=function(t){var e,n=this._activeEvent;n.onEventEnd(t),this._enabled&&0===n.getTouches(t)&&(this._detachWindowEvent(n),clearTimeout(this._rightEdgeTimer),t=n.prevEvent,e=this._getOffset([Math.abs(t.velocityX)*(t.offsetX<0?-1:1),Math.abs(t.velocityY)*(t.offsetY<0?-1:1)],[p(6,this._direction),p(w,this._direction)]),n.onRelease(),this._observer.release(this,t,e))},e._attachWindowEvent=function(t){var e=this;null!=t&&t.move.forEach(function(t){window.addEventListener(t,e._onPanmove,{passive:!1})}),null!=t&&t.end.forEach(function(t){window.addEventListener(t,e._onPanend,{passive:!1})})},e._detachWindowEvent=function(t){var e=this;null!=t&&t.move.forEach(function(t){window.removeEventListener(t,e._onPanmove)}),null!=t&&t.end.forEach(function(t){window.removeEventListener(t,e._onPanend)})},e._getOffset=function(t,e){var n=this.options.scale;return[e[0]?t[0]*n[0]:0,e[1]?t[1]*n[1]:0]},e._attachElementEvent=function(t){var n=this,e=X(this.options.inputType);e&&(this._observer=t,this._enabled=!0,(this._activeEvent=e).start.forEach(function(t){var e;null!=(e=n.element)&&e.addEventListener(t,n._onPanstart)}),e.move.forEach(function(t){var e;null!=(e=n.element)&&e.addEventListener(t,n._voidFunction)}))},e._detachElementEvent=function(){var n=this,t=this._activeEvent;null!=t&&t.start.forEach(function(t){var e;null!=(e=n.element)&&e.removeEventListener(t,n._onPanstart)}),null!=t&&t.move.forEach(function(t){var e;null!=(e=n.element)&&e.removeEventListener(t,n._voidFunction)}),this._enabled=!1,this._observer=null},t}(),st={default:L,PanInput:t,RotatePanInput:function(n){function t(t,e){t=n.call(this,t,e)||this;return t._prevQuadrant=null,t._lastDiff=0,t}r(t,n);var e=t.prototype;return e.mapAxes=function(t){this._direction=L.DIRECTION_ALL,this.axes=t},e._onPanstart=function(t){var e,n=this._activeEvent,t=n.onEventStart(t,this.options.inputButton);t&&this.isEnabled()&&(e=this.element.getBoundingClientRect(),this._observer.hold(this,t),this._attachWindowEvent(n),this._coefficientForDistanceToAngle=360/(e.width*Math.PI),this._rotateOrigin=[e.left+(e.width-1)/2,e.top+(e.height-1)/2],this._prevAngle=null,this._triggerChange(t),n.prevEvent=t)},e._onPanmove=function(t){var e=this._activeEvent,t=e.onEventMove(t,this.options.inputButton);t&&this.isEnabled()&&(!1!==t.srcEvent.cancelable&&t.srcEvent.preventDefault(),t.srcEvent.stopPropagation(),this._triggerChange(t),e.prevEvent=t)},e._onPanend=function(t){var e,n,i=this._activeEvent;i.onEventEnd(t),this.isEnabled()&&(t=i.prevEvent,this._triggerChange(t),n=t.velocityX,e=t.velocityY,n=Math.sqrt(n*n+e*e)*(0<this._lastDiff?-1:1),i.onRelease(),this._observer.release(this,t,[n*this._coefficientForDistanceToAngle]),this._detachWindowEvent(i))},e._triggerChange=function(t){var e=this._getPosFromOrigin(t.center.x,t.center.y),n=e.x,e=e.y,n=f(n,e),e=n<0?360+n:n,n=this._getQuadrant(t.center.x,t.center.y),i=this._getDifference(this._prevAngle,e,this._prevQuadrant,n);this._prevAngle=e,this._prevQuadrant=n,0!==i&&(this._lastDiff=i,this._observer.change(this,t,y(this.axes,[-i])))},e._getDifference=function(t,e,n,i){n=null===t?0:1===n&&4===i?-t-(360-e):4===n&&1===i?360-t+e:e-t;return n},e._getPosFromOrigin=function(t,e){return{x:t-this._rotateOrigin[0],y:this._rotateOrigin[1]-e}},e._getQuadrant=function(t,e){var t=this._getPosFromOrigin(t,e),e=t.x,t=t.y,n=0;return 0<=e&&0<=t?n=1:e<0&&0<=t?n=2:e<0&&t<0?n=3:0<=e&&t<0&&(n=4),n},t}(t),PinchInput:function(){function t(t,e){this.axes=[],this.element=null,this._pinchFlag=!1,this._enabled=!1,this._activeEvent=null,this.element=I(t),this.options=c({scale:1,threshold:0,inputType:["touch","pointer"],touchAction:"none"},e),this._onPinchStart=this._onPinchStart.bind(this),this._onPinchMove=this._onPinchMove.bind(this),this._onPinchEnd=this._onPinchEnd.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this.axes=t},e.connect=function(t){return this._activeEvent&&this._detachEvent(),this._attachEvent(t),this._originalCssProps=m(this.element,this.options,30),this},e.disconnect=function(){return this._detachEvent(),n(this._originalCssProps)||E(this.element,this._originalCssProps),this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e._onPinchStart=function(t){var e=this._activeEvent,n=e.onEventStart(t);n&&this._enabled&&2===e.getTouches(t)&&(this._baseValue=this._observer.get(this)[this.axes[0]],this._observer.hold(this,t),this._pinchFlag=!0,e.prevEvent=n)},e._onPinchMove=function(t){var e,n=this._activeEvent,i=n.onEventMove(t);i&&this._pinchFlag&&this._enabled&&2===n.getTouches(t)&&(e=this._getOffset(i.scale,n.prevEvent.scale),this._observer.change(this,t,y(this.axes,[e])),n.prevEvent=i)},e._onPinchEnd=function(t){var e=this._activeEvent;e.onEventEnd(t),!this._pinchFlag||!this._enabled||2<=e.getTouches(t)||(e.onRelease(),this._observer.release(this,t,[0],0),this._baseValue=null,this._pinchFlag=!1)},e._attachEvent=function(t){var e=this,n=X(this.options.inputType);n&&(this._observer=t,this._enabled=!0,(this._activeEvent=n).start.forEach(function(t){e.element.addEventListener(t,e._onPinchStart,!1)}),n.move.forEach(function(t){e.element.addEventListener(t,e._onPinchMove,!1)}),n.end.forEach(function(t){e.element.addEventListener(t,e._onPinchEnd,!1)}))},e._detachEvent=function(){var e=this,t=this._activeEvent;null!=t&&t.start.forEach(function(t){e.element.removeEventListener(t,e._onPinchStart,!1)}),null!=t&&t.move.forEach(function(t){e.element.removeEventListener(t,e._onPinchMove,!1)}),null!=t&&t.end.forEach(function(t){e.element.removeEventListener(t,e._onPinchEnd,!1)}),this._enabled=!1,this._observer=null},e._getOffset=function(t,e){return this._baseValue*(t-(e=void 0===e?1:e))*this.options.scale},t}(),WheelInput:function(){function t(t,e){this.axes=[],this.element=null,this._enabled=!1,this._holding=!1,this._timer=null,this.element=I(t),this.options=c({scale:1,releaseDelay:300,useNormalized:!0,useAnimation:!1},e),this._onWheel=this._onWheel.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this._direction=g(!!t[1],!!t[0]),this.axes=t},e.connect=function(t){return this._detachEvent(),this._attachEvent(t),this},e.disconnect=function(){return this._detachEvent(),this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e._onWheel=function(t){var e,n=this;!this._enabled||0===(e=this._getOffset([t.deltaY,t.deltaX],[p(w,this._direction),p(6,this._direction)]))[0]&&0===e[1]||(t.preventDefault(),this._holding||(this._observer.hold(this,t),this._holding=!0),this._observer.change(this,t,y(this.axes,e),this.options.useAnimation),clearTimeout(this._timer),this._timer=setTimeout(function(){n._holding&&(n._holding=!1,n._observer.release(n,t,[0]))},this.options.releaseDelay))},e._getOffset=function(t,e){var n=this.options.scale,i=this.options.useNormalized;return[e[0]&&t[0]?(0<t[0]?-1:1)*(i?1:Math.abs(t[0]))*n:0,e[1]&&t[1]?(0<t[1]?-1:1)*(i?1:Math.abs(t[1]))*n:0]},e._attachEvent=function(t){this._observer=t,this.element.addEventListener("wheel",this._onWheel),this._enabled=!0},e._detachEvent=function(){this.element.removeEventListener("wheel",this._onWheel),this._enabled=!1,this._observer=null,this._timer&&(clearTimeout(this._timer),this._timer=null)},t}(),MoveKeyInput:function(){function t(t,e){this.axes=[],this.element=null,this._enabled=!1,this._holding=!1,this._timer=null,this.element=I(t),this.options=c({scale:[1,1]},e),this._onKeydown=this._onKeydown.bind(this),this._onKeyup=this._onKeyup.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this.axes=t},e.connect=function(t){return this._detachEvent(),"0"!==this.element.getAttribute("tabindex")&&this.element.setAttribute("tabindex","0"),this._attachEvent(t),this},e.disconnect=function(){return this._detachEvent(),this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e._onKeydown=function(t){if(this._enabled){var e,n=!0,i=1,s=-1;switch(t.keyCode){case 37:case 65:i=-1;break;case 39:case 68:break;case 40:case 83:i=-1,s=1;break;case 38:case 87:s=1;break;default:n=!1}(n=-1===s&&!this.axes[0]||1===s&&!this.axes[1]?!1:n)&&(t.preventDefault(),e=-1===s?[+this.options.scale[0]*i,0]:[0,+this.options.scale[1]*i],this._holding||(this._observer.hold(this,t),this._holding=!0),clearTimeout(this._timer),this._observer.change(this,t,y(this.axes,e)))}},e._onKeyup=function(t){var e=this;this._holding&&(clearTimeout(this._timer),this._timer=setTimeout(function(){e._observer.release(e,t,[0,0]),e._holding=!1},80))},e._attachEvent=function(t){this._observer=t,this.element.addEventListener("keydown",this._onKeydown,!1),this.element.addEventListener("keypress",this._onKeydown,!1),this.element.addEventListener("keyup",this._onKeyup,!1),this._enabled=!0},e._detachEvent=function(){this.element.removeEventListener("keydown",this._onKeydown,!1),this.element.removeEventListener("keypress",this._onKeydown,!1),this.element.removeEventListener("keyup",this._onKeyup,!1),this._enabled=!1,this._observer=null},t}(),AXES_METHODS:N,AXES_EVENTS:W,REACTIVE_AXES:{methods:N,events:W,created:function(t){return new L(t.axis,t.options)},on:function(t,e,n){t.on(e,n)},off:function(t,e,n){t.off(e,n)},destroy:function(t){t.destroy()}}};for(e in st)L[e]=st[e];return L}); | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("@egjs/agent"),require("@egjs/component"),require("@cfcs/core")):"function"==typeof define&&define.amd?define(["@egjs/agent","@egjs/component","@cfcs/core"],e):(t.eg=t.eg||{},t.eg.Axes=e(t.eg.agent,t.eg.Component,t.core))}(this,function(t,u,h){"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)}var c=function(){return(c=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var s in e=arguments[n])Object.prototype.hasOwnProperty.call(e,s)&&(t[s]=e[s]);return t}).apply(this,arguments)};function l(t,e){var n,i={};for(n in t)n&&(i[n]=e(t[n],n));return i}function s(t,e){var n,i={};for(n in t)n&&e(t[n],n)&&(i[n]=t[n]);return i}function o(t,e){for(var n in t)if(n&&!e(t[n],n))return!1;return!0}function _(t,n){return o(t,function(t,e){return t===n[e]})}function a(t,e){return R[e]||(R[e]=q(e)),R[e](t)}function v(t,n){return t&&n?l(t,function(t,e){return a(t,"number"==typeof n?n:n[e])}):t}function d(t){if(!isFinite(t))return 0;var e="".concat(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 f(t,e){return 180*Math.atan2(e,t)/Math.PI}function n(e){var n=!0;return Object.keys(D).forEach(function(t){e&&e[t]===D[t]||(n=!1)}),n}function g(t,e){return t&&e?30:t?6:e?T:1}function p(t,e,n){return n?!!(30===e||e&t&&n&t):!!(e&t)}function m(e,t,n){var i,s={1:"auto",30:"none",24:"pan-x",6:"pan-y"},r={};return e&&e.style&&(t=t.touchAction||s[n],i=c(c({},D),{"touch-action":"none"===e.style["touch-action"]?"none":t}),Object.keys(i).forEach(function(t){r[t]=e.style[t],e.style[t]=i[t]})),r}function E(e,n){e&&e.style&&n&&Object.keys(n).forEach(function(t){e.style[t]=n[t]})}function L(t,e,n,i){return n=[!n[0]&&i?e[0]-i[0]:e[0],!n[1]&&i?e[1]+i[1]:e[1]],i=Math.max(n[0],t),Math.min(n[1],i)}function X(t,e){return t<e[0]||t>e[1]}function j(t,e,n){return n[1]&&t>e[1]||n[0]&&t<e[0]}function x(t,e,n){var i=t,s=e[0],r=(e=e[1])-s;return n[1]&&e<t&&(i=(i-e)%r+s),i=n[0]&&t<s?(i-s)%r+e:i}function b(i,t){return t.reduce(function(t,e,n){return i[n]&&(t[i[n]]=e),t},{})}function Y(t){var e=!1,n=!1,i=!1;return(t=void 0===t?[]:t).forEach(function(t){switch(t){case"mouse":n=!0;break;case"touch":e=G;break;case"pointer":i=Z}}),i?new tt:e&&n?new et:e?new $:n?new J:null}function M(t,e,n){return Math.max(Math.min(t,n),e)}var y,F,e,P="undefined"==typeof window?{navigator:{userAgent:""}}:window,T=24,w="left",O="right",A="middle",N=["connect","disconnect","get","setTo","setBy","setOptions","setAxis","stopAnimation","updateAnimation","isBounceArea"],W=["hold","release","change","animationStart","animationEnd","finish"],V="ontouchstart"in P&&"safari"===t().browser.name,K=function(){if("undefined"!=typeof document)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""}(),D={"user-select":"none","-webkit-user-drag":"none"},U=function(t){for(var e=[],n=0,i=t.length;n<i;n++)e.push(t[n]);return e},I=function(t,e){var n;return void 0===e&&(e=!1),"string"==typeof t?(n=t.match(/^<([a-z]+)\s*([^>]*)>/)?((n=document.createElement("div")).innerHTML=t,U(n.childNodes)):U(document.querySelectorAll(t)),e||(n=1<=n.length?n[0]:void 0)):t===P?n=t:"value"in t||"current"in t?n=t.value||t.current:!t.nodeName||1!==t.nodeType&&9!==t.nodeType?"jQuery"in P&&t instanceof jQuery||t.constructor.prototype.jquery?n=e?t.toArray():t.get(0):Array.isArray(t)&&(n=t.map(function(t){return I(t)}),e||(n=1<=n.length?n[0]:void 0)):n=t,n},C=P.requestAnimationFrame||P.webkitRequestAnimationFrame,S=P.cancelAnimationFrame||P.webkitCancelAnimationFrame,R=(C&&!S?(y={},F=C,C=function(e){var n=F(function(t){y[n]&&e(t)});return y[n]=!0,n},S=function(t){delete y[t]}):C&&S||(C=function(t){return P.setTimeout(function(){t(P.performance&&P.performance.now&&P.performance.now()||(new Date).getTime())},16)},S=P.clearTimeout),{}),q=function(e){var n=e<1?Math.pow(10,d(e)):1;return function(t){return 0===e?0:Math.round(Math.round(t/e)*e*n)/n}},Q=function(){function t(t){this._axes=t}var e=t.prototype;return e.hold=function(t,e){t=this._getRoundPos(t).roundPos;this._axes.trigger(new u.ComponentEvent("hold",{pos:t,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,e=e.roundDepa;t.destPos=n,t.depaPos=e,t.setTo=this._createUserControll(t.destPos,t.duration),this._axes.trigger(new u.ComponentEvent("release",c(c({},t),{bounceRatio:this._getBounceRatio(n)})))},e.triggerChange=function(t,e,n,i){var s=this,r=(void 0===i&&(i=!1),this.animationManager),o=r.axisManager,r=r.getEventInfo(),t=this._getRoundPos(t,e),e=t.roundPos,t=t.roundDepa,a=o.moveTo(e,t),e=(null==n?void 0:n.event)||(null==r?void 0:r.event)||null,t={pos:a.pos,delta:a.delta,bounceRatio:this._getBounceRatio(a.pos),holding:i,inputEvent:e,isTrusted:!!e,input:(null==n?void 0:n.input)||(null==r?void 0:r.input)||null,set:e?this._createUserControll(a.pos):function(){}},i=new u.ComponentEvent("change",t);return this._axes.trigger(i),Object.keys(a.pos).forEach(function(t){var e=a.pos[t];h.getObserver(s._axes,t,e).current=e}),e&&o.set(t.set().destPos),!i.isCanceled()},e.triggerAnimationStart=function(t){var e=this._getRoundPos(t.destPos,t.depaPos),n=e.roundPos,e=e.roundDepa,n=(t.destPos=n,t.depaPos=e,t.setTo=this._createUserControll(t.destPos,t.duration),new u.ComponentEvent("animationStart",t));return this._axes.trigger(n),!n.isCanceled()},e.triggerAnimationEnd=function(t){this._axes.trigger(new u.ComponentEvent("animationEnd",{isTrusted:t=void 0===t?!1:t}))},e.triggerFinish=function(t){this._axes.trigger(new u.ComponentEvent("finish",{isTrusted:t=void 0===t?!1:t}))},e.setAnimationManager=function(t){this.animationManager=t},e.destroy=function(){this._axes.off()},e._createUserControll=function(t,e){void 0===e&&(e=0);var n={destPos:c({},t),duration:e};return function(t,e){return t&&(n.destPos=c({},t)),void 0!==e&&(n.duration=e),n}},e._getRoundPos=function(t,e){var n=this._axes.options.round;return{roundPos:v(t,n),roundDepa:v(e,n)}},e._getBounceRatio=function(t){return this._axes.axisManager.map(t,function(t,e){return t<e.range[0]&&0!==e.bounce[0]?(e.range[0]-t)/e.bounce[0]:t>e.range[1]&&0!==e.bounce[1]?(t-e.range[1])/e.bounce[1]:0})},t}(),z=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}(),H=function(){function t(t){var n=this;this._axis=t,this._complementOptions(),this._pos=Object.keys(this._axis).reduce(function(t,e){return t[e]=n._axis[e].startPos,t},{})}var e=t.prototype;return e.getDelta=function(t,e){var n=this.get(t);return l(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},{}):c(c({},this._pos),t||{})},e.moveTo=function(n,i){void 0===i&&(i=this._pos);var t=l(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?x(t,e.range,e.circular):0})),{pos:c({},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 o(t,function(t,e){return n(t,i[e],e)})},e.filter=function(t,n){var i=this._axis;return s(t,function(t,e){return n(t,i[e],e)})},e.map=function(t,n){var i=this._axis;return l(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!X(t,e.range)})},e.getAxisOptions=function(t){return this._axis[t]},e.setAxis=function(e){var n=this;Object.keys(e).forEach(function(t){if(!n._axis[t])throw new Error("Axis ".concat(t," does not exist in Axes instance"));n._axis[t]=c(c({},n._axis[t]),e[t])}),this._complementOptions()},e._complementOptions=function(){var s=this;Object.keys(this._axis).forEach(function(i){s._axis[i]=c({range:[0,100],startPos:s._axis[i].range[0],bounce:[0,0],circular:[!1,!1]},s._axis[i]),["bounce","circular"].forEach(function(t){var e=s._axis,n=e[i][t];/string|number|boolean/.test(typeof n)&&(e[i][t]=[n,n])})})},t}(),G="ontouchstart"in P,k="PointerEvent"in P,t="MSPointerEvent"in P,Z=k||t,t=function(){function t(){var e=this;this._stopContextMenu=function(t){t.preventDefault(),P.removeEventListener("contextmenu",e._stopContextMenu)}}var e=t.prototype;return e.extendEvent=function(t){var e=this.prevEvent,n=this._getCenter(t),i=e?this._getMovement(t):{x:0,y:0},s=e?this._getScale(t):1,r=e?f(n.x-e.center.x,n.y-e.center.y):0,o=e?e.deltaX+i.x:i.x,a=e?e.deltaY+i.y:i.y,u=i.x,i=i.y,h=this._latestInterval,c=Date.now(),l=h?c-h.timestamp:0,_=e?e.velocityX:0,e=e?e.velocityY:0;return(!h||16<=l)&&(h&&(_=(h=[(o-h.deltaX)/l,(a-h.deltaY)/l])[0],e=h[1]),this._latestInterval={timestamp:c,deltaX:o,deltaY:a}),{srcEvent:t,scale:s,angle:r,center:n,deltaX:o,deltaY:a,offsetX:u,offsetY:i,velocityX:_,velocityY:e,preventSystemEvent:!0}},e._getDistance=function(t,e){var n=e.clientX-t.clientX,e=e.clientY-t.clientY;return Math.sqrt(n*n+e*e)},e._getButton=function(t){var e={1:w,2:O,4:A},e=this._isTouchEvent(t)?w:e[t.buttons];return e||null},e._isTouchEvent=function(t){return-1<t.type.indexOf("touch")},e._isValidButton=function(t,e){return-1<e.indexOf(t)},e._preventMouseButton=function(t,e){e===O?P.addEventListener("contextmenu",this._stopContextMenu):e===A&&t.preventDefault()},t}(),J=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["mousedown"],t.move=["mousemove"],t.end=["mouseup"],t}r(t,e);var n=t.prototype;return n.onEventStart=function(t,e){var n=this._getButton(t);return e&&!this._isValidButton(n,e)?null:(this._preventMouseButton(t,n),this.extendEvent(t))},n.onEventMove=function(t,e){return e&&!this._isValidButton(this._getButton(t),e)?null:this.extendEvent(t)},n.onEventEnd=function(){},n.onRelease=function(){this.prevEvent=null},n.getTouches=function(t,e){return e&&this._isValidButton({1:w,2:A,3:O}[t.which],e)&&-1===this.end.indexOf(t.type)?1:0},n._getScale=function(){return 1},n._getCenter=function(t){return{x:t.clientX,y:t.clientY}},n._getMovement=function(t){var e=this.prevEvent.srcEvent;return{x:t.clientX-e.clientX,y:t.clientY-e.clientY}},t}(t),$=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["touchstart"],t.move=["touchmove"],t.end=["touchend","touchcancel"],t}r(t,e);var n=t.prototype;return n.onEventStart=function(t){return this._baseTouches=t.touches,this.extendEvent(t)},n.onEventMove=function(t){return this.extendEvent(t)},n.onEventEnd=function(t){this._baseTouches=t.touches},n.onRelease=function(){this.prevEvent=null,this._baseTouches=null},n.getTouches=function(t){return t.touches.length},n._getScale=function(t){return 2!==t.touches.length||this._baseTouches.length<2?null:this._getDistance(t.touches[0],t.touches[1])/this._getDistance(this._baseTouches[0],this._baseTouches[1])},n._getCenter=function(t){return{x:t.touches[0].clientX,y:t.touches[0].clientY}},n._getMovement=function(t){var e=this.prevEvent.srcEvent;return t.touches[0].identifier!==e.touches[0].identifier?{x:0,y:0}:{x:t.touches[0].clientX-e.touches[0].clientX,y:t.touches[0].clientY-e.touches[0].clientY}},t}(t),tt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=k?["pointerdown"]:["MSPointerDown"],t.move=k?["pointermove"]:["MSPointerMove"],t.end=k?["pointerup","pointercancel"]:["MSPointerUp","MSPointerCancel"],t._firstInputs=[],t._recentInputs=[],t}r(t,e);var n=t.prototype;return n.onEventStart=function(t,e){var n=this._getButton(t);return e&&!this._isValidButton(n,e)?null:(this._preventMouseButton(t,n),this._updatePointerEvent(t),this.extendEvent(t))},n.onEventMove=function(t,e){return e&&!this._isValidButton(this._getButton(t),e)?null:(this._updatePointerEvent(t),this.extendEvent(t))},n.onEventEnd=function(t){this._removePointerEvent(t)},n.onRelease=function(){this.prevEvent=null,this._firstInputs=[],this._recentInputs=[]},n.getTouches=function(){return this._recentInputs.length},n._getScale=function(){return 2!==this._recentInputs.length?null:this._getDistance(this._recentInputs[0],this._recentInputs[1])/this._getDistance(this._firstInputs[0],this._firstInputs[1])},n._getCenter=function(t){return{x:t.clientX,y:t.clientY}},n._getMovement=function(t){var e=this.prevEvent.srcEvent;return t.pointerId!==e.pointerId?{x:0,y:0}:{x:t.clientX-e.clientX,y:t.clientY-e.clientY}},n._updatePointerEvent=function(n){var i=this,s=!1;this._recentInputs.forEach(function(t,e){t.pointerId===n.pointerId&&(s=!0,i._recentInputs[e]=n)}),s||(this._firstInputs.push(n),this._recentInputs.push(n))},n._removePointerEvent=function(e){this._firstInputs=this._firstInputs.filter(function(t){return t.pointerId!==e.pointerId}),this._recentInputs=this._recentInputs.filter(function(t){return t.pointerId!==e.pointerId})},t}(t),et=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["mousedown","touchstart"],t.move=["mousemove","touchmove"],t.end=["mouseup","touchend","touchcancel"],t}r(t,e);var n=t.prototype;return n.onEventStart=function(t,e){var n=this._getButton(t);return this._isTouchEvent(t)&&(this._baseTouches=t.touches),e&&!this._isValidButton(n,e)?null:(this._preventMouseButton(t,n),this.extendEvent(t))},n.onEventMove=function(t,e){return e&&!this._isValidButton(this._getButton(t),e)?null:this.extendEvent(t)},n.onEventEnd=function(t){this._isTouchEvent(t)&&(this._baseTouches=t.touches)},n.onRelease=function(){this.prevEvent=null,this._baseTouches=null},n.getTouches=function(t){return this._isTouchEvent(t)?t.touches.length:0},n._getScale=function(t){return this._isTouchEvent(t)?2!==t.touches.length||this._baseTouches.length<2?1:this._getDistance(t.touches[0],t.touches[1])/this._getDistance(this._baseTouches[0],this._baseTouches[1]):this.prevEvent.scale},n._getCenter=function(t){return this._isTouchEvent(t)?{x:t.touches[0].clientX,y:t.touches[0].clientY}:{x:t.clientX,y:t.clientY}},n._getMovement=function(t){var e=this,t=[t,this.prevEvent.srcEvent].map(function(t){return e._isTouchEvent(t)?{id:t.touches[0].identifier,x:t.touches[0].clientX,y:t.touches[0].clientY}:{id:null,x:t.clientX,y:t.clientY}}),n=t[0],t=t[1];return n.id===t.id?{x:n.x-t.x,y:n.y-t.y}:{x:0,y:0}},t}(t),nt=function(){function t(t){var e=t.options,n=t.interruptManager,i=t.eventManager,s=t.axisManager,t=t.animationManager;this._isOutside=!1,this._moveDistance=null,this._isStopped=!1,this.options=e,this._interruptManager=n,this._eventManager=i,this._axisManager=s,this._animationManager=t}var e=t.prototype;return e.get=function(t){return this._axisManager.get(t.axes)},e.hold=function(t,e){!this._interruptManager.isInterrupted()&&t.axes.length&&(this._isStopped=!(e={input:t,event:e}),this._interruptManager.setInterrupt(!0),this._animationManager.stopAnimation(e),this._moveDistance||this._eventManager.hold(this._axisManager.get(),e),this._isOutside=this._axisManager.isOutside(t.axes),this._moveDistance=this._axisManager.get(t.axes))},e.change=function(t,e,n,i){var s,r,o;this._isStopped||!this._interruptManager.isInterrupting()||this._axisManager.every(n,function(t){return 0===t})||((o=e.srcEvent||e).__childrenAxesAlreadyChanged||(s=this._moveDistance||this._axisManager.get(t.axes),r=l(s,function(t,e){return t+(n[e]||0)}),this._moveDistance&&(this._moveDistance=this._axisManager.map(r,function(t,e){var n=e.circular,e=e.range;return n&&(n[0]||n[1])?x(t,e,n):t})),this._isOutside&&this._axisManager.every(s,function(t,e){return!X(t,e.range)})&&(this._isOutside=!1),s=this._atOutside(s),r=this._atOutside(r),this.options.nested&&this._isEndofAxis(n,s,r)||(o.__childrenAxesAlreadyChanged=!0),o={input:t,event:e},i?(t=this._animationManager.getDuration(r,s),this._animationManager.animateTo(r,t,o)):this._eventManager.triggerChange(r,s,o,!0)||(this._isStopped=!0,this._moveDistance=null,this._animationManager.finish(!1))))},e.release=function(t,e,n,i){var s,r,o;!this._isStopped&&this._interruptManager.isInterrupting()&&this._moveDistance&&((o=e.srcEvent||e).__childrenAxesAlreadyReleased&&(n=n.map(function(){return 0})),s=this._axisManager.get(t.axes),r=this._axisManager.get(),n=this._animationManager.getDisplacement(n),n=b(t.axes,n),n=this._axisManager.get(this._axisManager.map(n,function(t,e,n){return e.circular&&(e.circular[0]||e.circular[1])?s[n]+t:L(s[n]+t,e.range,e.circular,e.bounce)})),o.__childrenAxesAlreadyReleased=!0,i={depaPos:r,destPos:n=0===(o=this._animationManager.getDuration(n,s,i))?c({},r):n,duration:o,delta:this._axisManager.getDelta(r,n),inputEvent:e,input:t,isTrusted:!0},this._eventManager.triggerRelease(i),this._moveDistance=null,o=this._animationManager.getUserControl(i),n={input:t,event:e},(i=_(o.destPos,r))||0===o.duration?(i||this._eventManager.triggerChange(o.destPos,r,n,!0),this._interruptManager.setInterrupt(!1),this._axisManager.isOutside()?this._animationManager.restore(n):this._eventManager.triggerFinish(!0)):this._animationManager.animateTo(o.destPos,o.duration,n))},e._atOutside=function(t){var r=this;return this._isOutside?this._axisManager.map(t,function(t,e){var n=e.range[0]-e.bounce[0],e=e.range[1]+e.bounce[1];return e<t?e:t<n?n:t}):this._axisManager.map(t,function(t,e){var n=e.range[0],i=e.range[1],s=e.bounce,e=e.circular;return e&&(e[0]||e[1])?t:t<n?n-r._animationManager.interpolate(n-t,s[0]):i<t?i+r._animationManager.interpolate(t-i,s[1]):t})},e._isEndofAxis=function(s,r,o){return this._axisManager.every(r,function(t,e,n){return 0===s[n]||r[n]===o[n]&&(n=t,t=e.range,i=e.bounce,!(e=e.circular)[0]&&n===t[0]-i[0]||!e[1]&&n===t[1]+i[1]);var i})},t}(),it=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._useDuration=!0,t}r(t,e);var n=t.prototype;return n.interpolate=function(t,e){var n=this._easing(1e-5)/1e-5;return this._easing(t/(e*n))*e},n.updateAnimation=function(t){var e,n,i,s,r=this._animateParam;r&&(e=(new Date).getTime()-r.startTime,n=(null==t?void 0:t.destPos)||r.destPos,i=(null==t?void 0:t.duration)||r.duration,null!=t&&t.restart||i<=e?this.setTo(n,i-e):(null!=t&&t.destPos&&(s=this.axisManager.get(),this._initialEasingPer=this._prevEasingPer,r.delta=this.axisManager.getDelta(s,n),r.destPos=n),null!=t&&t.duration&&(s=(e+this._durationOffset)/r.duration,this._durationOffset=s*i-e,r.duration=i)))},n._initState=function(t){return this._initialEasingPer=0,this._prevEasingPer=0,this._durationOffset=0,{pos:t.depaPos,easingPer:0,finished:!1}},n._getNextState=function(t){var s=this,r=this._animateParam,o=t.pos,a=r.destPos,u=l(o,function(t,e){return t<=a[e]?1:-1}),h=((new Date).getTime()-r.startTime+this._durationOffset)/r.duration,c=this._easing(h);return{pos:this.axisManager.map(o,function(t,e,n){var t=1<=h?a[n]:t+r.delta[n]*(c-s._prevEasingPer)/(1-s._initialEasingPer),i=x(t,e.range,e.circular);return t!==i&&(t=u[n]*(e.range[1]-e.range[0]),a[n]-=t,o[n]-=t),i}),easingPer:this._prevEasingPer=c,finished:1<=c}},n._easing=function(t){return 1<t?1:this._options.easing(t)},t}(function(){function t(t){var e=t.options,n=t.interruptManager,i=t.eventManager,t=t.axisManager;this._options=e,this.interruptManager=n,this.eventManager=i,this.axisManager=t,this.animationEnd=this.animationEnd.bind(this)}var e=t.prototype;return e.getDuration=function(n,t,e){var i,s=this;return e=void 0!==e?e:(i=l(t,function(t,e){t=Math.abs(t-n[e]),e=s._options.deceleration;return(t=Math.sqrt(t/e*2))<100?0:t}),Object.keys(i).reduce(function(t,e){return Math.max(t,i[e])},-1/0)),M(e,this._options.minimumDuration,this._options.maximumDuration)},e.getDisplacement=function(t){var e=Math.pow(t.reduce(function(t,e){return t+e*e},0),1/t.length),n=Math.abs(e/-this._options.deceleration);return t.map(function(t){return t/2*n})},e.stopAnimation=function(t){var n,e;this._animateParam&&(n=this.axisManager.get(),e=this.axisManager.map(n,function(t,e){return x(t,e.range,e.circular)}),o(e,function(t,e){return n[e]===t})||this.eventManager.triggerChange(e,n,t,!!t),this._animateParam=null,this._raf&&(e=this._raf,S(e)),this._raf=null,this.eventManager.triggerAnimationEnd(!(null==t||!t.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.axisManager.get(),n=this.axisManager.map(e,function(t,e){return Math.min(e.range[1],Math.max(e.range[0],t))});this.stopAnimation(),this.animateTo(n,this.getDuration(e,n),t)},e.animationEnd=function(){var t=this.getEventInfo(),e=(this._animateParam=null,this.axisManager.filter(this.axisManager.get(),function(t,e){return j(t,e.range,e.circular)}));0<Object.keys(e).length&&this.setTo(this.axisManager.map(e,function(t,e){return x(t,e.range,e.circular)})),this.interruptManager.setInterrupt(!1),this.eventManager.triggerAnimationEnd(!!t),this.axisManager.isOutside()?this.restore(t):this.finish(!!t)},e.finish=function(t){this._animateParam=null,this.interruptManager.setInterrupt(!1),this.eventManager.triggerFinish(t)},e.getUserControl=function(t){t=t.setTo();return t.destPos=this.axisManager.get(t.destPos),t.duration=M(t.duration,this._options.minimumDuration,this._options.maximumDuration),t},e.animateTo=function(t,e,n){var i=this,t=(this.stopAnimation(),this._createAnimationParam(t,e,n)),e=c({},t.depaPos),s=this.eventManager.triggerAnimationStart(t),t=this.getUserControl(t);!s&&this.axisManager.every(t.destPos,function(t,e){return j(t,e.range,e.circular)})&&console.warn("You can't stop the 'animation' event when 'circular' is true."),s&&!_(t.destPos,e)&&(s=(null==n?void 0:n.event)||null,this._animateLoop({depaPos:e,destPos:t.destPos,duration:t.duration,delta:this.axisManager.getDelta(e,t.destPos),isTrusted:!!s,inputEvent:s,input:(null==n?void 0:n.input)||null},function(){return i.animationEnd()}))},e.setTo=function(t,e){void 0===e&&(e=0);var n=Object.keys(t),i=this.axisManager.get(n);return _(t,i)||(this.interruptManager.setInterrupt(!0),n=s(t,function(t,e){return i[e]!==t}),Object.keys(n).length&&(n=this.axisManager.map(n,function(t,e){var n=e.range,e=e.circular;return e&&(e[0]||e[1])?t:L(t,n,e)}),_(n,i)||(0<e?this.animateTo(n,e):(this.stopAnimation(),this.eventManager.triggerChange(n),this.finish(!1))))),this},e.setBy=function(n,t){return void 0===t&&(t=0),this.setTo(l(this.axisManager.get(Object.keys(n)),function(t,e){return t+n[e]}),t)},e._createAnimationParam=function(t,e,n){var i=this.axisManager.get(),s=(null==n?void 0:n.event)||null;return{depaPos:i,destPos:t,duration:M(e,this._options.minimumDuration,this._options.maximumDuration),delta:this.axisManager.getDelta(i,t),inputEvent:s,input:(null==n?void 0:n.input)||null,isTrusted:!!s,done:this.animationEnd}},e._animateLoop=function(t,i){var s,r,o,a=this;t.duration?(this._animateParam=c(c({},t),{startTime:(new Date).getTime()}),s=l(t.destPos,function(t){return t}),r=this._initState(this._animateParam),(o=function(){a._raf=null;var t=a._animateParam,e=a._getNextState(r),n=!a.eventManager.triggerChange(e.pos,r.pos);(r=e).finished?(t.destPos=a._getFinalPos(t.destPos,s),_(t.destPos,a.axisManager.get(Object.keys(t.destPos)))||a.eventManager.triggerChange(t.destPos,e.pos),i()):n?a.finish(!1):a._raf=C(o)})()):(this.eventManager.triggerChange(t.destPos),i())},e._getFinalPos=function(t,n){var i=this;return l(t,function(t,e){return t>=n[e]-1e-6&&t<=n[e]+1e-6?n[e]:(e=i._getRoundUnit(t,e),a(t,e))})},e._getRoundUnit=function(t,e){var n=this._options.round,i=null;return n||(e=this.axisManager.getAxisOptions(e),e=Math.max(d(e.range[0]),d(e.range[1]),d(t)),i=1/Math.pow(10,e)),i||n},t}()),B=function(s){function t(t,e,n){void 0===t&&(t={}),void 0===e&&(e={}),void 0===n&&(n={});var i=s.call(this)||this;return i.axis=t,i._inputs=[],i.options=c({easing:function(t){return 1-Math.pow(1-t,3)},interruptable:!0,maximumDuration:1/0,minimumDuration:0,deceleration:6e-4,round:null,nested:!1},e),Object.keys(n).forEach(function(t){i.axis[t].startPos=n[t]}),i.interruptManager=new z(i.options),i.axisManager=new H(i.axis),i.eventManager=new Q(i),i.animationManager=new it(i),i.inputObserver=new nt(i),i.eventManager.setAnimationManager(i.animationManager),i.eventManager.triggerChange(i.axisManager.get()),i}r(t,s);var e=t.prototype;return e.connect=function(t,e){t="string"==typeof t?t.split(" "):t.concat();return~this._inputs.indexOf(e)&&this.disconnect(e),e.mapAxes(t),e.connect(this.inputObserver),this._inputs.push(e),this},e.disconnect=function(t){return t?0<=(t=this._inputs.indexOf(t))&&(this._inputs[t].disconnect(),this._inputs.splice(t,1)):(this._inputs.forEach(function(t){return t.disconnect()}),this._inputs=[]),this},e.get=function(t){return this.axisManager.get(t)},e.setTo=function(t,e){return this.animationManager.setTo(t,e=void 0===e?0:e),this},e.setBy=function(t,e){return this.animationManager.setBy(t,e=void 0===e?0:e),this},e.setOptions=function(t){return this.options=c(c({},this.options),t),this},e.setAxis=function(t){return this.axisManager.setAxis(t),this},e.stopAnimation=function(){return this.animationManager.stopAnimation(),this},e.updateAnimation=function(t){return this.animationManager.updateAnimation(t),this},e.isBounceArea=function(t){return this.axisManager.isOutside(t)},e.destroy=function(){this.disconnect(),this.eventManager.destroy()},t.VERSION="3.8.0",t.TRANSFORM=K,t.DIRECTION_NONE=1,t.DIRECTION_LEFT=2,t.DIRECTION_RIGHT=4,t.DIRECTION_UP=8,t.DIRECTION_DOWN=16,t.DIRECTION_HORIZONTAL=6,t.DIRECTION_VERTICAL=T,t.DIRECTION_ALL=30,function(t,e,n,i){var s,r=arguments.length,o=r<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,n,i);else for(var a=t.length-1;0<=a;a--)(s=t[a])&&(o=(r<3?s(o):3<r?s(e,n,o):s(e,n))||o);return 3<r&&o&&Object.defineProperty(e,n,o),o}([h.ReactiveSubscribe],t)}(u),t=function(){function t(t,e){var n=this;this.axes=[],this.element=null,this._enabled=!1,this._activeEvent=null,this._atRightEdge=!1,this._rightEdgeTimer=0,this._dragged=!1,this._preventClickWhenDragged=function(t){n._dragged&&(t.preventDefault(),t.stopPropagation()),n._dragged=!1},this._voidFunction=function(){},this.element=I(t),this.options=c({inputType:["touch","mouse","pointer"],inputButton:[w],scale:[1,1],thresholdAngle:45,threshold:0,preventClickOnDrag:!1,iOSEdgeSwipeThreshold:30,releaseOnScroll:!1,touchAction:null},e),this._onPanstart=this._onPanstart.bind(this),this._onPanmove=this._onPanmove.bind(this),this._onPanend=this._onPanend.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this._direction=g(!!t[0],!!t[1]),this.axes=t},e.connect=function(t){return this._activeEvent&&(this._detachElementEvent(),this._detachWindowEvent(this._activeEvent)),this._attachElementEvent(t),this._originalCssProps=m(this.element,this.options,this._direction),this},e.disconnect=function(){return this._detachElementEvent(),this._detachWindowEvent(this._activeEvent),n(this._originalCssProps)||E(this.element,this._originalCssProps),this._direction=1,this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e.release=function(){var t=this._activeEvent,e=t.prevEvent;return t.onRelease(),this._observer.release(this,e,[0,0]),this._detachWindowEvent(t),this},e._onPanstart=function(t){var e=this.options.inputButton,n=this._activeEvent,i=n.onEventStart(t,e);!i||!this._enabled||1<n.getTouches(t,e)||!1!==i.srcEvent.cancelable&&(t=this.options.iOSEdgeSwipeThreshold,this._dragged=!1,this._observer.hold(this,i),this._atRightEdge=V&&i.center.x>window.innerWidth-t,this._attachWindowEvent(n),n.prevEvent=i)},e._onPanmove=function(t){var e=this,n=this.options,i=n.iOSEdgeSwipeThreshold,s=n.releaseOnScroll,r=n.inputButton,n=n.thresholdAngle,o=this._activeEvent,a=o.onEventMove(t,r),r=o.getTouches(t,r);if(0===r||s&&a&&!a.srcEvent.cancelable)this._onPanend(t);else if(a&&this._enabled&&!(1<r)){s=function(t,e){if(e<0||90<e)return 1;t=Math.abs(t);return e<t&&t<180-e?T:6}(a.angle,n);if(o.prevEvent&&V){if(a.center.x<0)return void this.release();this._atRightEdge&&(clearTimeout(this._rightEdgeTimer),a.deltaX<-i?this._atRightEdge=!1:this._rightEdgeTimer=window.setTimeout(function(){return e.release()},100))}t=this._getOffset([a.offsetX,a.offsetY],[p(6,this._direction,s),p(T,this._direction,s)]),r=t.some(function(t){return 0!==t});r&&(!1!==a.srcEvent.cancelable&&a.srcEvent.preventDefault(),a.srcEvent.stopPropagation()),(a.preventSystemEvent=r)&&(this._dragged=!0,this._observer.change(this,a,b(this.axes,t))),o.prevEvent=a}},e._onPanend=function(t){var e=this.options.inputButton,n=this._activeEvent;n.onEventEnd(t),this._enabled&&0===n.getTouches(t,e)&&(this._detachWindowEvent(n),clearTimeout(this._rightEdgeTimer),t=n.prevEvent,e=this._getOffset([Math.abs(t.velocityX)*(t.offsetX<0?-1:1),Math.abs(t.velocityY)*(t.offsetY<0?-1:1)],[p(6,this._direction),p(T,this._direction)]),n.onRelease(),this._observer.release(this,t,e))},e._attachWindowEvent=function(t){var e=this;null!=t&&t.move.forEach(function(t){window.addEventListener(t,e._onPanmove,{passive:!1})}),null!=t&&t.end.forEach(function(t){window.addEventListener(t,e._onPanend,{passive:!1})})},e._detachWindowEvent=function(t){var e=this;null!=t&&t.move.forEach(function(t){window.removeEventListener(t,e._onPanmove)}),null!=t&&t.end.forEach(function(t){window.removeEventListener(t,e._onPanend)})},e._getOffset=function(t,e){var n=this.options.scale;return[e[0]?t[0]*n[0]:0,e[1]?t[1]*n[1]:0]},e._attachElementEvent=function(t){var e=this,n=Y(this.options.inputType),i=this.element;if(n){if(!i)throw new Error("Element to connect input does not exist.");this._observer=t,this._enabled=!0,this._activeEvent=n,this.options.preventClickOnDrag&&i.addEventListener("click",this._preventClickWhenDragged,!0),n.start.forEach(function(t){i.addEventListener(t,e._onPanstart)}),n.move.forEach(function(t){i.addEventListener(t,e._voidFunction)})}},e._detachElementEvent=function(){var e=this,t=this._activeEvent,n=this.element;n&&(this.options.preventClickOnDrag&&n.removeEventListener("click",this._preventClickWhenDragged,!0),null!=t&&t.start.forEach(function(t){n.removeEventListener(t,e._onPanstart)}),null!=t&&t.move.forEach(function(t){n.removeEventListener(t,e._voidFunction)})),this._enabled=!1,this._observer=null},t}(),st={default:B,PanInput:t,RotatePanInput:function(n){function t(t,e){t=n.call(this,t,e)||this;return t._prevQuadrant=null,t._lastDiff=0,t}r(t,n);var e=t.prototype;return e.mapAxes=function(t){this._direction=B.DIRECTION_ALL,this.axes=t},e._onPanstart=function(t){var e,n=this._activeEvent,t=n.onEventStart(t,this.options.inputButton);t&&this.isEnabled()&&(e=this.element.getBoundingClientRect(),this._observer.hold(this,t),this._attachWindowEvent(n),this._coefficientForDistanceToAngle=360/(e.width*Math.PI),this._rotateOrigin=[e.left+(e.width-1)/2,e.top+(e.height-1)/2],this._prevAngle=null,this._triggerChange(t),n.prevEvent=t)},e._onPanmove=function(t){var e=this._activeEvent,t=e.onEventMove(t,this.options.inputButton);t&&this.isEnabled()&&(!1!==t.srcEvent.cancelable&&t.srcEvent.preventDefault(),t.srcEvent.stopPropagation(),this._triggerChange(t),e.prevEvent=t)},e._onPanend=function(t){var e,n,i=this._activeEvent;i.onEventEnd(t),this.isEnabled()&&(t=i.prevEvent,this._triggerChange(t),n=t.velocityX,e=t.velocityY,n=Math.sqrt(n*n+e*e)*(0<this._lastDiff?-1:1),i.onRelease(),this._observer.release(this,t,[n*this._coefficientForDistanceToAngle]),this._detachWindowEvent(i))},e._triggerChange=function(t){var e=this._getPosFromOrigin(t.center.x,t.center.y),n=e.x,e=e.y,n=f(n,e),e=n<0?360+n:n,n=this._getQuadrant(t.center.x,t.center.y),i=this._getDifference(this._prevAngle,e,this._prevQuadrant,n);this._prevAngle=e,this._prevQuadrant=n,0!==i&&(this._lastDiff=i,this._observer.change(this,t,b(this.axes,[-i])))},e._getDifference=function(t,e,n,i){n=null===t?0:1===n&&4===i?-t-(360-e):4===n&&1===i?360-t+e:e-t;return n},e._getPosFromOrigin=function(t,e){return{x:t-this._rotateOrigin[0],y:this._rotateOrigin[1]-e}},e._getQuadrant=function(t,e){var t=this._getPosFromOrigin(t,e),e=t.x,t=t.y,n=0;return 0<=e&&0<=t?n=1:e<0&&0<=t?n=2:e<0&&t<0?n=3:0<=e&&t<0&&(n=4),n},t}(t),PinchInput:function(){function t(t,e){this.axes=[],this.element=null,this._pinchFlag=!1,this._enabled=!1,this._activeEvent=null,this.element=I(t),this.options=c({scale:1,threshold:0,inputType:["touch","pointer"],touchAction:"none"},e),this._onPinchStart=this._onPinchStart.bind(this),this._onPinchMove=this._onPinchMove.bind(this),this._onPinchEnd=this._onPinchEnd.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this.axes=t},e.connect=function(t){return this._activeEvent&&this._detachEvent(),this._attachEvent(t),this._originalCssProps=m(this.element,this.options,30),this},e.disconnect=function(){return this._detachEvent(),n(this._originalCssProps)||E(this.element,this._originalCssProps),this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e._onPinchStart=function(t){var e=this._activeEvent,n=e.onEventStart(t);n&&this._enabled&&2===e.getTouches(t)&&(this._baseValue=this._observer.get(this)[this.axes[0]],this._observer.hold(this,t),this._pinchFlag=!0,e.prevEvent=n)},e._onPinchMove=function(t){var e,n=this._activeEvent,i=n.onEventMove(t);i&&this._pinchFlag&&this._enabled&&2===n.getTouches(t)&&(e=this._getOffset(i.scale,n.prevEvent.scale),this._observer.change(this,t,b(this.axes,[e])),n.prevEvent=i)},e._onPinchEnd=function(t){var e=this._activeEvent;e.onEventEnd(t),!this._pinchFlag||!this._enabled||2<=e.getTouches(t)||(e.onRelease(),this._observer.release(this,t,[0],0),this._baseValue=null,this._pinchFlag=!1)},e._attachEvent=function(t){var e=this,n=Y(this.options.inputType),i=this.element;if(n){if(!i)throw new Error("Element to connect input does not exist.");this._observer=t,this._enabled=!0,(this._activeEvent=n).start.forEach(function(t){i.addEventListener(t,e._onPinchStart,!1)}),n.move.forEach(function(t){i.addEventListener(t,e._onPinchMove,!1)}),n.end.forEach(function(t){i.addEventListener(t,e._onPinchEnd,!1)})}},e._detachEvent=function(){var e=this,t=this._activeEvent,n=this.element;n&&(null!=t&&t.start.forEach(function(t){n.removeEventListener(t,e._onPinchStart,!1)}),null!=t&&t.move.forEach(function(t){n.removeEventListener(t,e._onPinchMove,!1)}),null!=t&&t.end.forEach(function(t){n.removeEventListener(t,e._onPinchEnd,!1)})),this._enabled=!1,this._observer=null},e._getOffset=function(t,e){return this._baseValue*(t-(e=void 0===e?1:e))*this.options.scale},t}(),WheelInput:function(){function t(t,e){this.axes=[],this.element=null,this._enabled=!1,this._holding=!1,this._timer=null,this.element=I(t),this.options=c({scale:1,releaseDelay:300,useNormalized:!0,useAnimation:!1},e),this._onWheel=this._onWheel.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this._direction=g(!!t[1],!!t[0]),this.axes=t},e.connect=function(t){return this._detachEvent(),this._attachEvent(t),this},e.disconnect=function(){return this._detachEvent(),this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e._onWheel=function(t){var e,n=this;!this._enabled||0===(e=this._getOffset([t.deltaY,t.deltaX],[p(T,this._direction),p(6,this._direction)]))[0]&&0===e[1]||(t.preventDefault(),this._holding||(this._observer.hold(this,t),this._holding=!0),this._observer.change(this,t,b(this.axes,e),this.options.useAnimation),clearTimeout(this._timer),this._timer=setTimeout(function(){n._holding&&(n._holding=!1,n._observer.release(n,t,[0]))},this.options.releaseDelay))},e._getOffset=function(t,e){var n=this.options.scale,i=this.options.useNormalized;return[e[0]&&t[0]?(0<t[0]?-1:1)*(i?1:Math.abs(t[0]))*n:0,e[1]&&t[1]?(0<t[1]?-1:1)*(i?1:Math.abs(t[1]))*n:0]},e._attachEvent=function(t){var e=this.element;if(!e)throw new Error("Element to connect input does not exist.");this._observer=t,e.addEventListener("wheel",this._onWheel),this._enabled=!0},e._detachEvent=function(){this.element&&this.element.removeEventListener("wheel",this._onWheel),this._enabled=!1,this._observer=null,this._timer&&(clearTimeout(this._timer),this._timer=null)},t}(),MoveKeyInput:function(){function t(t,e){this.axes=[],this.element=null,this._enabled=!1,this._holding=!1,this._timer=null,this.element=I(t),this.options=c({scale:[1,1]},e),this._onKeydown=this._onKeydown.bind(this),this._onKeyup=this._onKeyup.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this.axes=t},e.connect=function(t){return this._detachEvent(),"0"!==this.element.getAttribute("tabindex")&&this.element.setAttribute("tabindex","0"),this._attachEvent(t),this},e.disconnect=function(){return this._detachEvent(),this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e._onKeydown=function(t){if(this._enabled){var e,n=!0,i=1,s=-1;switch(t.keyCode){case 37:case 65:i=-1;break;case 39:case 68:break;case 40:case 83:i=-1,s=1;break;case 38:case 87:s=1;break;default:n=!1}(n=-1===s&&!this.axes[0]||1===s&&!this.axes[1]?!1:n)&&(t.preventDefault(),e=-1===s?[+this.options.scale[0]*i,0]:[0,+this.options.scale[1]*i],this._holding||(this._observer.hold(this,t),this._holding=!0),clearTimeout(this._timer),this._observer.change(this,t,b(this.axes,e)))}},e._onKeyup=function(t){var e=this;this._holding&&(clearTimeout(this._timer),this._timer=setTimeout(function(){e._observer.release(e,t,[0,0]),e._holding=!1},80))},e._attachEvent=function(t){var e=this.element;if(!e)throw new Error("Element to connect input does not exist.");this._observer=t,e.addEventListener("keydown",this._onKeydown,!1),e.addEventListener("keypress",this._onKeydown,!1),e.addEventListener("keyup",this._onKeyup,!1),this._enabled=!0},e._detachEvent=function(){var t=this.element;t&&(t.removeEventListener("keydown",this._onKeydown,!1),t.removeEventListener("keypress",this._onKeydown,!1),t.removeEventListener("keyup",this._onKeyup,!1)),this._enabled=!1,this._observer=null},t}(),AXES_METHODS:N,AXES_EVENTS:W,REACTIVE_AXES:{methods:N,events:W,created:function(t){return new B(t.axis,t.options)},on:function(t,e,n){t.on(e,n)},off:function(t,e,n){t.off(e,n)},destroy:function(t){t.destroy()}}};for(e in st)B[e]=st[e];return B}); | ||
//# sourceMappingURL=axes.min.js.map |
@@ -7,5 +7,5 @@ /* | ||
repository: https://github.com/naver/egjs-axes | ||
version: 3.7.0 | ||
version: 3.8.0 | ||
*/ | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t.eg=t.eg||{},t.eg.Axes=e())}(this,function(){"use strict";var L=function(t,e){return(L=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 i(t,e){function n(){this.constructor=t}L(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var u=function(){return(u=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 B(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{value:(t=t&&i>=t.length?void 0:t)&&t[i++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function o(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(function(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var i,r,s=n.call(t),o=[];try{for(;(void 0===e||0<e--)&&!(i=s.next()).done;)o.push(i.value)}catch(t){r={error:t}}finally{try{i&&!i.done&&(n=s.return)&&n.call(s)}finally{if(r)throw r.error}}return o}(arguments[e]));return t}function c(t){return void 0===t}var r=function(){function t(t,e){var n,i;if(this._canceled=!1,e)try{for(var r=B(Object.keys(e)),s=r.next();!s.done;s=r.next()){var o=s.value;this[o]=e[o]}}catch(t){n={error:t}}finally{try{s&&!s.done&&(i=r.return)&&i.call(r)}finally{if(n)throw n.error}}this.eventType=t}var e=t.prototype;return e.stop=function(){this._canceled=!0},e.isCanceled=function(){return this._canceled},t}(),V=function(){function t(){this._eventHandler={}}var e=t.prototype;return e.trigger=function(e){for(var n=[],t=1;t<arguments.length;t++)n[t-1]=arguments[t];var i=e instanceof r?e.eventType:e,i=o(this._eventHandler[i]||[]);return i.length<=0||(e instanceof r?(e.currentTarget=this,i.forEach(function(t){t(e)})):i.forEach(function(t){t.apply(void 0,o(n))})),this},e.once=function(n,i){var r,s=this;if("object"==typeof n&&c(i)){var t,e=n;for(t in e)this.once(t,e[t])}else"string"==typeof n&&"function"==typeof i&&(r=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];i.apply(void 0,o(t)),s.off(n,r)},this.on(n,r));return this},e.hasOn=function(t){return!!this._eventHandler[t]},e.on=function(t,e){if("object"==typeof t&&c(e)){var n,i=t;for(n in i)this.on(n,i[n])}else{var r;"string"==typeof t&&"function"==typeof e&&(r=this._eventHandler[t],c(r)&&(this._eventHandler[t]=[],r=this._eventHandler[t]),r.push(e))}return this},e.off=function(t,e){var n,i;if(c(t))this._eventHandler={};else if(c(e))if("string"==typeof t)delete this._eventHandler[t];else{var r,s=t;for(r in s)this.off(r,s[r])}else{var o=this._eventHandler[t];if(o){var a=0;try{for(var u=B(o),h=u.next();!h.done;h=u.next()){if(h.value===e){o.splice(a,1),o.length<=0&&delete this._eventHandler[t];break}a++}}catch(t){n={error:t}}finally{try{h&&!h.done&&(i=u.return)&&i.call(u)}finally{if(n)throw n.error}}}}return this},t.VERSION="3.0.2",t}(),h=r;var e="__observers__",X=function(){function t(t){this._emitter=new V,this._current=t}var e=t.prototype;return Object.defineProperty(e,"current",{get:function(){return this._current},set:function(t){var e=t!==this._current;this._current=t,e&&this._emitter.trigger("update",t)},enumerable:!1,configurable:!0}),e.subscribe=function(t){this._emitter.on("update",t)},e.unsubscribe=function(t){this._emitter.off("update",t)},t}();function Y(t){return t[e]||(t[e]={}),t[e]}function l(t,e,n){t=Y(t);return t[e]||(t[e]=new X(n)),t[e]}function F(t){t.subscribe=function(t,e){l(this,t).subscribe(e)},t.unsubscribe=function(t,e){var n=this;t?t in this&&l(this,t).unsubscribe(e):(t=Y(this),Object.keys(t).forEach(function(t){n.unsubscribe(t)}))}}function N(t){F(t.prototype)}function s(t,e){for(var n=t.length,i=0;i<n;++i)if(e(t[i],i))return!0;return!1}function W(t,e){for(var n=t.length,i=0;i<n;++i)if(e(t[i],i))return t[i];return null}function H(t){if(void 0===t){if("undefined"==typeof navigator||!navigator)return"";t=navigator.userAgent||""}return t.toLowerCase()}function K(t,e){try{return new RegExp(t,"g").exec(e)}catch(t){return null}}function U(t){return t.replace(/_/g,".")}function n(t,n){var i=null,r="-1";return s(t,function(t){var e=K("("+t.test+")((?:\\/|\\s|:)([0-9|\\.|_]+))?",n);if(e&&!t.brand)return i=t,r=e[3]||"-1",t.versionAlias?r=t.versionAlias:t.versionTest&&(e=t.versionTest.toLowerCase(),r=((e=K("("+e+")((?:\\/|\\s|:)([0-9|\\.|_]+))",n))?e[3]:"")||r),r=U(r),1}),{preset:i,version:r}}function t(t,n){var i={brand:"",version:"-1"};return s(t,function(t){var e=q(n,t);return e&&(i.brand=t.id,i.version=t.versionAlias||e.version,"-1"!==i.version)}),i}function q(t,e){return W(t,function(t){t=t.brand;return K(""+e.test,t.toLowerCase())})}var a="undefined"==typeof window?{navigator:{userAgent:""}}:window,v=[{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"}],Q=[{test:"(?=.*applewebkit/(53[0-7]|5[0-2]|[0-4]))(?=.*\\schrome)",id:"chrome",versionTest:"chrome"},{test:"chromium",id:"chrome"},{test:"whale",id:"chrome",versionAlias:"-1",brand:!0}],d=[{test:"applewebkit",id:"webkit",versionTest:"applewebkit|safari"}],z=[{test:"(?=(iphone|ipad))(?!(.*version))",id:"webview"},{test:"(?=(android|iphone|ipad))(?=.*(naver|daum|; wv))",id:"webview"},{test:"webview",id:"webview"}],f=[{test:"windows phone",id:"windows phone"},{test:"windows 2000",id:"window",versionAlias:"5.0"},{test:"windows nt",id:"window"},{test:"win32|windows",id:"window"},{test:"iphone|ipad|ipod",id:"ios",versionTest:"iphone os|cpu os"},{test:"macos|macintel|mac os x",id:"mac"},{test:"android|linux armv81",id:"android"},{test:"tizen",id:"tizen"},{test:"webos|web0s",id:"webos"}];function G(t){return!!n(z,t).preset}function _(t,e){var n,i={};for(n in t)n&&(i[n]=e(t[n],n));return i}function Z(t,e){var n,i={};for(n in t)n&&e(t[n],n)&&(i[n]=t[n]);return i}function J(t,e){for(var n in t)if(n&&!e(t[n],n))return!1;return!0}function p(t,n){return J(t,function(t,e){return t===n[e]})}function $(t,e){return Mt[e]||(Mt[e]=wt(e)),Mt[e](t)}function tt(t,n){return t&&n?_(t,function(t,e){return $(t,"number"==typeof n?n:n[e])}):t}function g(t){if(!isFinite(t))return 0;var e="".concat(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 et(t,e){return 180*Math.atan2(e,t)/Math.PI}function nt(e){var n=!0;return Object.keys(yt).forEach(function(t){e&&e[t]===yt[t]||(n=!1)}),n}function it(t,e){return t&&e?30:t?6:e?D:1}function m(t,e,n){return n?!!(30===e||e&t&&n&t):!!(e&t)}function rt(e,t,n){var i,r={1:"auto",30:"none",24:"pan-x",6:"pan-y"},s={};return e&&e.style&&(t=t.touchAction||r[n],i=u(u({},yt),{"touch-action":"none"===e.style["touch-action"]?"none":t}),Object.keys(i).forEach(function(t){s[t]=e.style[t],e.style[t]=i[t]})),s}function st(e,n){e&&e.style&&n&&Object.keys(n).forEach(function(t){e.style[t]=n[t]})}function ot(t,e,n,i){return n=[!n[0]&&i?e[0]-i[0]:e[0],!n[1]&&i?e[1]+i[1]:e[1]],i=Math.max(n[0],t),Math.min(n[1],i)}function at(t,e){return t<e[0]||t>e[1]}function ut(t,e,n){return n[1]&&t>e[1]||n[0]&&t<e[0]}function E(t,e,n){var i=t,r=e[0],s=(e=e[1])-r;return n[1]&&e<t&&(i=(i-e)%s+r),i=n[0]&&t<r?(i-r)%s+e:i}function b(i,t){return t.reduce(function(t,e,n){return i[n]&&(t[i[n]]=e),t},{})}function ht(t){var e=!1,n=!1,i=!1;return(t=void 0===t?[]:t).forEach(function(t){switch(t){case"mouse":n=!0;break;case"touch":e=At;break;case"pointer":i=It}}),i?new Ct:e&&n?new Rt:e?new St:n?new Dt:null}function ct(t,e,n){return Math.max(Math.min(t,n),e)}var y,x,M,w,P,T,lt,O,A,I,vt,dt,D=24,ft="left",_t="right",pt="middle",gt=["connect","disconnect","get","setTo","setBy","setOptions","setAxis","stopAnimation","updateAnimation","isBounceArea"],mt=["hold","release","change","animationStart","animationEnd","finish"],Et="ontouchstart"in a&&"safari"===(void 0===y&&function(){var t;if("undefined"!=typeof navigator&&navigator&&navigator.userAgentData)return(t=(t=navigator.userAgentData).brands||t.uaList)&&t.length}()?(M=((O=navigator.userAgentData).uaList||O.brands).slice(),w=x&&x.fullVersionList,P=O.mobile||!1,T=M[0],lt=(x&&x.platform||O.platform||navigator.platform).toLowerCase(),O={name:T.brand,version:T.version,majorVersion:-1,webkit:!1,webkitVersion:"-1",chromium:!1,chromiumVersion:"-1",webview:!!t(z,M).brand||G(H())},T={name:"unknown",version:"-1",majorVersion:-1},O.webkit=!O.chromium&&s(d,function(t){return q(M,t)}),A=t(Q,M),O.chromium=!!A.brand,O.chromiumVersion=A.version,O.chromium||(A=t(d,M),O.webkit=!!A.brand,O.webkitVersion=A.version),A=W(f,function(t){return new RegExp(""+t.test,"g").exec(lt)}),T.name=A?A.id:"",x&&(T.version=x.platformVersion),w&&w.length?(A=t(v,w),O.name=A.brand||O.name,O.version=A.version||O.version):(w=t(v,M),O.name=w.brand||O.name,O.version=w.brand&&x?x.uaFullVersion:w.version),O.webkit&&(T.name=P?"ios":"mac"),"ios"===T.name&&O.webview&&(O.version="-1"),T.version=U(T.version),O.version=U(O.version),T.majorVersion=parseInt(T.version,10),O.majorVersion=parseInt(O.version,10),{browser:O,os:T,isMobile:P,isHints:!0}):(A=H(A=y),x=!!/mobi/g.exec(A),w={name:"unknown",version:"-1",majorVersion:-1,webview:G(A),chromium:!1,chromiumVersion:"-1",webkit:!1,webkitVersion:"-1"},O={name:"unknown",version:"-1",majorVersion:-1},P=(T=n(v,A)).preset,T=T.version,v=(y=n(f,A)).preset,y=y.version,f=n(Q,A),w.chromium=!!f.preset,w.chromiumVersion=f.version,w.chromium||(f=n(d,A),w.webkit=!!f.preset,w.webkitVersion=f.version),v&&(O.name=v.id,O.version=y,O.majorVersion=parseInt(y,10)),P&&(w.name=P.id,w.version=T,w.webview&&"ios"===O.name&&"safari"!==w.name&&(w.webview=!1)),w.majorVersion=parseInt(w.version,10),{browser:w,os:O,isMobile:x,isHints:!1})).browser.name,bt=function(){if("undefined"!=typeof document)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""}(),yt={"user-select":"none","-webkit-user-drag":"none"},xt=function(t){for(var e=[],n=0,i=t.length;n<i;n++)e.push(t[n]);return e},S=function(t,e){var n;return void 0===e&&(e=!1),"string"==typeof t?(n=t.match(/^<([a-z]+)\s*([^>]*)>/)?((n=document.createElement("div")).innerHTML=t,xt(n.childNodes)):xt(document.querySelectorAll(t)),e||(n=1<=n.length?n[0]:void 0)):t===a?n=t:"value"in t||"current"in t?n=t.value||t.current:!t.nodeName||1!==t.nodeType&&9!==t.nodeType?"jQuery"in a&&t instanceof jQuery||t.constructor.prototype.jquery?n=e?t.toArray():t.get(0):Array.isArray(t)&&(n=t.map(function(t){return S(t)}),e||(n=1<=n.length?n[0]:void 0)):n=t,n},C=a.requestAnimationFrame||a.webkitRequestAnimationFrame,R=a.cancelAnimationFrame||a.webkitCancelAnimationFrame,Mt=(C&&!R?(I={},vt=C,C=function(e){var n=vt(function(t){I[n]&&e(t)});return I[n]=!0,n},R=function(t){delete I[t]}):C&&R||(C=function(t){return a.setTimeout(function(){t(a.performance&&a.performance.now&&a.performance.now()||(new Date).getTime())},16)},R=a.clearTimeout),{}),wt=function(e){var n=e<1?Math.pow(10,g(e)):1;return function(t){return 0===e?0:Math.round(Math.round(t/e)*e*n)/n}},Pt=function(){function t(t){this._axes=t}var e=t.prototype;return e.hold=function(t,e){t=this._getRoundPos(t).roundPos;this._axes.trigger(new h("hold",{pos:t,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,e=e.roundDepa;t.destPos=n,t.depaPos=e,t.setTo=this._createUserControll(t.destPos,t.duration),this._axes.trigger(new h("release",u(u({},t),{bounceRatio:this._getBounceRatio(n)})))},e.triggerChange=function(t,e,n,i){var r=this,s=(void 0===i&&(i=!1),this.animationManager),o=s.axisManager,s=s.getEventInfo(),t=this._getRoundPos(t,e),e=t.roundPos,t=t.roundDepa,a=o.moveTo(e,t),e=(null==n?void 0:n.event)||(null==s?void 0:s.event)||null,t={pos:a.pos,delta:a.delta,bounceRatio:this._getBounceRatio(a.pos),holding:i,inputEvent:e,isTrusted:!!e,input:(null==n?void 0:n.input)||(null==s?void 0:s.input)||null,set:e?this._createUserControll(a.pos):function(){}},i=new h("change",t);return this._axes.trigger(i),Object.keys(a.pos).forEach(function(t){var e=a.pos[t];l(r._axes,t,e).current=e}),e&&o.set(t.set().destPos),!i.isCanceled()},e.triggerAnimationStart=function(t){var e=this._getRoundPos(t.destPos,t.depaPos),n=e.roundPos,e=e.roundDepa,n=(t.destPos=n,t.depaPos=e,t.setTo=this._createUserControll(t.destPos,t.duration),new h("animationStart",t));return this._axes.trigger(n),!n.isCanceled()},e.triggerAnimationEnd=function(t){this._axes.trigger(new h("animationEnd",{isTrusted:t=void 0===t?!1:t}))},e.triggerFinish=function(t){this._axes.trigger(new h("finish",{isTrusted:t=void 0===t?!1:t}))},e.setAnimationManager=function(t){this.animationManager=t},e.destroy=function(){this._axes.off()},e._createUserControll=function(t,e){void 0===e&&(e=0);var n={destPos:u({},t),duration:e};return function(t,e){return t&&(n.destPos=u({},t)),void 0!==e&&(n.duration=e),n}},e._getRoundPos=function(t,e){var n=this._axes.options.round;return{roundPos:tt(t,n),roundDepa:tt(e,n)}},e._getBounceRatio=function(t){return this._axes.axisManager.map(t,function(t,e){return t<e.range[0]&&0!==e.bounce[0]?(e.range[0]-t)/e.bounce[0]:t>e.range[1]&&0!==e.bounce[1]?(t-e.range[1])/e.bounce[1]:0})},t}(),Tt=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}(),Ot=function(){function t(t){var n=this;this._axis=t,this._complementOptions(),this._pos=Object.keys(this._axis).reduce(function(t,e){return t[e]=n._axis[e].startPos,t},{})}var e=t.prototype;return e.getDelta=function(t,e){var n=this.get(t);return _(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},{}):u(u({},this._pos),t||{})},e.moveTo=function(n,i){void 0===i&&(i=this._pos);var t=_(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?E(t,e.range,e.circular):0})),{pos:u({},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 J(t,function(t,e){return n(t,i[e],e)})},e.filter=function(t,n){var i=this._axis;return Z(t,function(t,e){return n(t,i[e],e)})},e.map=function(t,n){var i=this._axis;return _(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!at(t,e.range)})},e.getAxisOptions=function(t){return this._axis[t]},e.setAxis=function(e){var n=this;Object.keys(e).forEach(function(t){if(!n._axis[t])throw new Error("Axis ".concat(t," does not exist in Axes instance"));n._axis[t]=u(u({},n._axis[t]),e[t])}),this._complementOptions()},e._complementOptions=function(){var r=this;Object.keys(this._axis).forEach(function(i){r._axis[i]=u({range:[0,100],startPos:r._axis[i].range[0],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])})})},t}(),At="ontouchstart"in a,k="PointerEvent"in a,Q="MSPointerEvent"in a,It=k||Q,d=function(){function t(){var e=this;this._stopContextMenu=function(t){t.preventDefault(),a.removeEventListener("contextmenu",e._stopContextMenu)}}var e=t.prototype;return e.extendEvent=function(t){var e=this.prevEvent,n=this._getCenter(t),i=e?this._getMovement(t):{x:0,y:0},r=e?this._getScale(t):1,s=e?et(n.x-e.center.x,n.y-e.center.y):0,o=e?e.deltaX+i.x:i.x,a=e?e.deltaY+i.y:i.y,u=i.x,i=i.y,h=this._latestInterval,c=Date.now(),l=h?c-h.timestamp:0,v=e?e.velocityX:0,e=e?e.velocityY:0;return(!h||16<=l)&&(h&&(v=(h=[(o-h.deltaX)/l,(a-h.deltaY)/l])[0],e=h[1]),this._latestInterval={timestamp:c,deltaX:o,deltaY:a}),{srcEvent:t,scale:r,angle:s,center:n,deltaX:o,deltaY:a,offsetX:u,offsetY:i,velocityX:v,velocityY:e,preventSystemEvent:!0}},e._getDistance=function(t,e){var n=e.clientX-t.clientX,e=e.clientY-t.clientY;return Math.sqrt(n*n+e*e)},e._getButton=function(t){var e={1:ft,2:_t,4:pt},e=this._isTouchEvent(t)?ft:e[t.buttons];return e||null},e._isTouchEvent=function(t){return-1<t.type.indexOf("touch")},e._isValidButton=function(t,e){return-1<e.indexOf(t)},e._preventMouseButton=function(t,e){e===_t?a.addEventListener("contextmenu",this._stopContextMenu):e===pt&&t.preventDefault()},t}(),Dt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["mousedown"],t.move=["mousemove"],t.end=["mouseup"],t}i(t,e);var n=t.prototype;return n.onEventStart=function(t,e){var n=this._getButton(t);return e&&!this._isValidButton(n,e)?null:(this._preventMouseButton(t,n),this.extendEvent(t))},n.onEventMove=function(t,e){return e&&!this._isValidButton(this._getButton(t),e)?null:this.extendEvent(t)},n.onEventEnd=function(){},n.onRelease=function(){this.prevEvent=null},n.getTouches=function(){return 0},n._getScale=function(){return 1},n._getCenter=function(t){return{x:t.clientX,y:t.clientY}},n._getMovement=function(t){var e=this.prevEvent.srcEvent;return{x:t.clientX-e.clientX,y:t.clientY-e.clientY}},t}(d),St=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["touchstart"],t.move=["touchmove"],t.end=["touchend","touchcancel"],t}i(t,e);var n=t.prototype;return n.onEventStart=function(t){return this._baseTouches=t.touches,this.extendEvent(t)},n.onEventMove=function(t){return this.extendEvent(t)},n.onEventEnd=function(t){this._baseTouches=t.touches},n.onRelease=function(){this.prevEvent=null,this._baseTouches=null},n.getTouches=function(t){return t.touches.length},n._getScale=function(t){return 2!==t.touches.length||this._baseTouches.length<2?null:this._getDistance(t.touches[0],t.touches[1])/this._getDistance(this._baseTouches[0],this._baseTouches[1])},n._getCenter=function(t){return{x:t.touches[0].clientX,y:t.touches[0].clientY}},n._getMovement=function(t){var e=this.prevEvent.srcEvent;return t.touches[0].identifier!==e.touches[0].identifier?{x:0,y:0}:{x:t.touches[0].clientX-e.touches[0].clientX,y:t.touches[0].clientY-e.touches[0].clientY}},t}(d),Ct=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=k?["pointerdown"]:["MSPointerDown"],t.move=k?["pointermove"]:["MSPointerMove"],t.end=k?["pointerup","pointercancel"]:["MSPointerUp","MSPointerCancel"],t._firstInputs=[],t._recentInputs=[],t}i(t,e);var n=t.prototype;return n.onEventStart=function(t,e){var n=this._getButton(t);return e&&!this._isValidButton(n,e)?null:(this._preventMouseButton(t,n),this._updatePointerEvent(t),this.extendEvent(t))},n.onEventMove=function(t,e){return e&&!this._isValidButton(this._getButton(t),e)?null:(this._updatePointerEvent(t),this.extendEvent(t))},n.onEventEnd=function(t){this._removePointerEvent(t)},n.onRelease=function(){this.prevEvent=null,this._firstInputs=[],this._recentInputs=[]},n.getTouches=function(){return this._recentInputs.length},n._getScale=function(){return 2!==this._recentInputs.length?null:this._getDistance(this._recentInputs[0],this._recentInputs[1])/this._getDistance(this._firstInputs[0],this._firstInputs[1])},n._getCenter=function(t){return{x:t.clientX,y:t.clientY}},n._getMovement=function(t){var e=this.prevEvent.srcEvent;return t.pointerId!==e.pointerId?{x:0,y:0}:{x:t.clientX-e.clientX,y:t.clientY-e.clientY}},n._updatePointerEvent=function(n){var i=this,r=!1;this._recentInputs.forEach(function(t,e){t.pointerId===n.pointerId&&(r=!0,i._recentInputs[e]=n)}),r||(this._firstInputs.push(n),this._recentInputs.push(n))},n._removePointerEvent=function(e){this._firstInputs=this._firstInputs.filter(function(t){return t.pointerId!==e.pointerId}),this._recentInputs=this._recentInputs.filter(function(t){return t.pointerId!==e.pointerId})},t}(d),Rt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["mousedown","touchstart"],t.move=["mousemove","touchmove"],t.end=["mouseup","touchend","touchcancel"],t}i(t,e);var n=t.prototype;return n.onEventStart=function(t,e){var n=this._getButton(t);return this._isTouchEvent(t)&&(this._baseTouches=t.touches),e&&!this._isValidButton(n,e)?null:(this._preventMouseButton(t,n),this.extendEvent(t))},n.onEventMove=function(t,e){return e&&!this._isValidButton(this._getButton(t),e)?null:this.extendEvent(t)},n.onEventEnd=function(t){this._isTouchEvent(t)&&(this._baseTouches=t.touches)},n.onRelease=function(){this.prevEvent=null,this._baseTouches=null},n.getTouches=function(t){return this._isTouchEvent(t)?t.touches.length:0},n._getScale=function(t){return this._isTouchEvent(t)?2!==t.touches.length||this._baseTouches.length<2?1:this._getDistance(t.touches[0],t.touches[1])/this._getDistance(this._baseTouches[0],this._baseTouches[1]):this.prevEvent.scale},n._getCenter=function(t){return this._isTouchEvent(t)?{x:t.touches[0].clientX,y:t.touches[0].clientY}:{x:t.clientX,y:t.clientY}},n._getMovement=function(t){var e=this,t=[t,this.prevEvent.srcEvent].map(function(t){return e._isTouchEvent(t)?{id:t.touches[0].identifier,x:t.touches[0].clientX,y:t.touches[0].clientY}:{id:null,x:t.clientX,y:t.clientY}}),n=t[0],t=t[1];return n.id===t.id?{x:n.x-t.x,y:n.y-t.y}:{x:0,y:0}},t}(d),kt=function(){function t(t){var e=t.options,n=t.interruptManager,i=t.eventManager,r=t.axisManager,t=t.animationManager;this._isOutside=!1,this._moveDistance=null,this._isStopped=!1,this.options=e,this._interruptManager=n,this._eventManager=i,this._axisManager=r,this._animationManager=t}var e=t.prototype;return e.get=function(t){return this._axisManager.get(t.axes)},e.hold=function(t,e){!this._interruptManager.isInterrupted()&&t.axes.length&&(this._isStopped=!(e={input:t,event:e}),this._interruptManager.setInterrupt(!0),this._animationManager.stopAnimation(e),this._moveDistance||this._eventManager.hold(this._axisManager.get(),e),this._isOutside=this._axisManager.isOutside(t.axes),this._moveDistance=this._axisManager.get(t.axes))},e.change=function(t,e,n,i){var r,s,o;this._isStopped||!this._interruptManager.isInterrupting()||this._axisManager.every(n,function(t){return 0===t})||((o=e.srcEvent||e).__childrenAxesAlreadyChanged||(r=this._moveDistance||this._axisManager.get(t.axes),s=_(r,function(t,e){return t+(n[e]||0)}),this._moveDistance&&(this._moveDistance=this._axisManager.map(s,function(t,e){var n=e.circular,e=e.range;return n&&(n[0]||n[1])?E(t,e,n):t})),this._isOutside&&this._axisManager.every(r,function(t,e){return!at(t,e.range)})&&(this._isOutside=!1),r=this._atOutside(r),s=this._atOutside(s),this.options.nested&&this._isEndofAxis(n,r,s)||(o.__childrenAxesAlreadyChanged=!0),o={input:t,event:e},i?(t=this._animationManager.getDuration(s,r),this._animationManager.animateTo(s,t,o)):this._eventManager.triggerChange(s,r,o,!0)||(this._isStopped=!0,this._moveDistance=null,this._animationManager.finish(!1))))},e.release=function(t,e,n,i){var r,s,o;!this._isStopped&&this._interruptManager.isInterrupting()&&this._moveDistance&&((o=e.srcEvent||e).__childrenAxesAlreadyReleased&&(n=n.map(function(){return 0})),r=this._axisManager.get(t.axes),s=this._axisManager.get(),n=this._animationManager.getDisplacement(n),n=b(t.axes,n),n=this._axisManager.get(this._axisManager.map(n,function(t,e,n){return e.circular&&(e.circular[0]||e.circular[1])?r[n]+t:ot(r[n]+t,e.range,e.circular,e.bounce)})),o.__childrenAxesAlreadyReleased=!0,i={depaPos:s,destPos:n=0===(o=this._animationManager.getDuration(n,r,i))?u({},s):n,duration:o,delta:this._axisManager.getDelta(s,n),inputEvent:e,input:t,isTrusted:!0},this._eventManager.triggerRelease(i),this._moveDistance=null,o=this._animationManager.getUserControl(i),n={input:t,event:e},(i=p(o.destPos,s))||0===o.duration?(i||this._eventManager.triggerChange(o.destPos,s,n,!0),this._interruptManager.setInterrupt(!1),this._axisManager.isOutside()?this._animationManager.restore(n):this._eventManager.triggerFinish(!0)):this._animationManager.animateTo(o.destPos,o.duration,n))},e._atOutside=function(t){var s=this;return this._isOutside?this._axisManager.map(t,function(t,e){var n=e.range[0]-e.bounce[0],e=e.range[1]+e.bounce[1];return e<t?e:t<n?n:t}):this._axisManager.map(t,function(t,e){var n=e.range[0],i=e.range[1],r=e.bounce,e=e.circular;return e&&(e[0]||e[1])?t:t<n?n-s._animationManager.interpolate(n-t,r[0]):i<t?i+s._animationManager.interpolate(t-i,r[1]):t})},e._isEndofAxis=function(r,s,o){return this._axisManager.every(s,function(t,e,n){return 0===r[n]||s[n]===o[n]&&(n=t,t=e.range,i=e.bounce,!(e=e.circular)[0]&&n===t[0]-i[0]||!e[1]&&n===t[1]+i[1]);var i})},t}(),jt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._useDuration=!0,t}i(t,e);var n=t.prototype;return n.interpolate=function(t,e){var n=this._easing(1e-5)/1e-5;return this._easing(t/(e*n))*e},n.updateAnimation=function(t){var e,n,i,r,s=this._animateParam;s&&(e=(new Date).getTime()-s.startTime,n=(null==t?void 0:t.destPos)||s.destPos,i=(null==t?void 0:t.duration)||s.duration,null!=t&&t.restart||i<=e?this.setTo(n,i-e):(null!=t&&t.destPos&&(r=this.axisManager.get(),this._initialEasingPer=this._prevEasingPer,s.delta=this.axisManager.getDelta(r,n),s.destPos=n),null!=t&&t.duration&&(r=(e+this._durationOffset)/s.duration,this._durationOffset=r*i-e,s.duration=i)))},n._initState=function(t){return this._initialEasingPer=0,this._prevEasingPer=0,this._durationOffset=0,{pos:t.depaPos,easingPer:0,finished:!1}},n._getNextState=function(t){var r=this,s=this._animateParam,o=t.pos,a=s.destPos,u=_(o,function(t,e){return t<=a[e]?1:-1}),h=((new Date).getTime()-s.startTime+this._durationOffset)/s.duration,c=this._easing(h);return{pos:this.axisManager.map(o,function(t,e,n){var t=1<=h?a[n]:t+s.delta[n]*(c-r._prevEasingPer)/(1-r._initialEasingPer),i=E(t,e.range,e.circular);return t!==i&&(t=u[n]*(e.range[1]-e.range[0]),a[n]-=t,o[n]-=t),i}),easingPer:this._prevEasingPer=c,finished:1<=c}},n._easing=function(t){return 1<t?1:this._options.easing(t)},t}(function(){function t(t){var e=t.options,n=t.interruptManager,i=t.eventManager,t=t.axisManager;this._options=e,this.interruptManager=n,this.eventManager=i,this.axisManager=t,this.animationEnd=this.animationEnd.bind(this)}var e=t.prototype;return e.getDuration=function(n,t,e){var i,r=this;return e=void 0!==e?e:(i=_(t,function(t,e){t=Math.abs(t-n[e]),e=r._options.deceleration;return(t=Math.sqrt(t/e*2))<100?0:t}),Object.keys(i).reduce(function(t,e){return Math.max(t,i[e])},-1/0)),ct(e,this._options.minimumDuration,this._options.maximumDuration)},e.getDisplacement=function(t){var e=Math.pow(t.reduce(function(t,e){return t+e*e},0),1/t.length),n=Math.abs(e/-this._options.deceleration);return t.map(function(t){return t/2*n})},e.stopAnimation=function(t){var n,e;this._animateParam&&(n=this.axisManager.get(),e=this.axisManager.map(n,function(t,e){return E(t,e.range,e.circular)}),J(e,function(t,e){return n[e]===t})||this.eventManager.triggerChange(e,n,t,!!t),this._animateParam=null,this._raf&&(e=this._raf,R(e)),this._raf=null,this.eventManager.triggerAnimationEnd(!(null==t||!t.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.axisManager.get(),n=this.axisManager.map(e,function(t,e){return Math.min(e.range[1],Math.max(e.range[0],t))});this.stopAnimation(),this.animateTo(n,this.getDuration(e,n),t)},e.animationEnd=function(){var t=this.getEventInfo(),e=(this._animateParam=null,this.axisManager.filter(this.axisManager.get(),function(t,e){return ut(t,e.range,e.circular)}));0<Object.keys(e).length&&this.setTo(this.axisManager.map(e,function(t,e){return E(t,e.range,e.circular)})),this.interruptManager.setInterrupt(!1),this.eventManager.triggerAnimationEnd(!!t),this.axisManager.isOutside()?this.restore(t):this.finish(!!t)},e.finish=function(t){this._animateParam=null,this.interruptManager.setInterrupt(!1),this.eventManager.triggerFinish(t)},e.getUserControl=function(t){t=t.setTo();return t.destPos=this.axisManager.get(t.destPos),t.duration=ct(t.duration,this._options.minimumDuration,this._options.maximumDuration),t},e.animateTo=function(t,e,n){var i=this,t=(this.stopAnimation(),this._createAnimationParam(t,e,n)),e=u({},t.depaPos),r=this.eventManager.triggerAnimationStart(t),t=this.getUserControl(t);!r&&this.axisManager.every(t.destPos,function(t,e){return ut(t,e.range,e.circular)})&&console.warn("You can't stop the 'animation' event when 'circular' is true."),r&&!p(t.destPos,e)&&(r=(null==n?void 0:n.event)||null,this._animateLoop({depaPos:e,destPos:t.destPos,duration:t.duration,delta:this.axisManager.getDelta(e,t.destPos),isTrusted:!!r,inputEvent:r,input:(null==n?void 0:n.input)||null},function(){return i.animationEnd()}))},e.setTo=function(t,e){void 0===e&&(e=0);var n=Object.keys(t),i=this.axisManager.get(n);return p(t,i)||(this.interruptManager.setInterrupt(!0),n=Z(t,function(t,e){return i[e]!==t}),Object.keys(n).length&&(n=this.axisManager.map(n,function(t,e){var n=e.range,e=e.circular;return e&&(e[0]||e[1])?t:ot(t,n,e)}),p(n,i)||(0<e?this.animateTo(n,e):(this.stopAnimation(),this.eventManager.triggerChange(n),this.finish(!1))))),this},e.setBy=function(n,t){return void 0===t&&(t=0),this.setTo(_(this.axisManager.get(Object.keys(n)),function(t,e){return t+n[e]}),t)},e._createAnimationParam=function(t,e,n){var i=this.axisManager.get(),r=(null==n?void 0:n.event)||null;return{depaPos:i,destPos:t,duration:ct(e,this._options.minimumDuration,this._options.maximumDuration),delta:this.axisManager.getDelta(i,t),inputEvent:r,input:(null==n?void 0:n.input)||null,isTrusted:!!r,done:this.animationEnd}},e._animateLoop=function(t,i){var r,s,o,a=this;t.duration?(this._animateParam=u(u({},t),{startTime:(new Date).getTime()}),r=_(t.destPos,function(t){return t}),s=this._initState(this._animateParam),(o=function(){a._raf=null;var t=a._animateParam,e=a._getNextState(s),n=!a.eventManager.triggerChange(e.pos,s.pos);(s=e).finished?(t.destPos=a._getFinalPos(t.destPos,r),p(t.destPos,a.axisManager.get(Object.keys(t.destPos)))||a.eventManager.triggerChange(t.destPos,e.pos),i()):n?a.finish(!1):a._raf=C(o)})()):(this.eventManager.triggerChange(t.destPos),i())},e._getFinalPos=function(t,n){var i=this;return _(t,function(t,e){return t>=n[e]-1e-6&&t<=n[e]+1e-6?n[e]:(e=i._getRoundUnit(t,e),$(t,e))})},e._getRoundUnit=function(t,e){var n=this._options.round,i=null;return n||(e=this.axisManager.getAxisOptions(e),e=Math.max(g(e.range[0]),g(e.range[1]),g(t)),i=1/Math.pow(10,e)),i||n},t}()),j=function(r){function t(t,e,n){void 0===t&&(t={}),void 0===e&&(e={}),void 0===n&&(n={});var i=r.call(this)||this;return i.axis=t,i._inputs=[],i.options=u({easing:function(t){return 1-Math.pow(1-t,3)},interruptable:!0,maximumDuration:1/0,minimumDuration:0,deceleration:6e-4,round:null,nested:!1},e),Object.keys(n).forEach(function(t){i.axis[t].startPos=n[t]}),i.interruptManager=new Tt(i.options),i.axisManager=new Ot(i.axis),i.eventManager=new Pt(i),i.animationManager=new jt(i),i.inputObserver=new kt(i),i.eventManager.setAnimationManager(i.animationManager),i.eventManager.triggerChange(i.axisManager.get()),i}i(t,r);var e=t.prototype;return e.connect=function(t,e){t="string"==typeof t?t.split(" "):t.concat();return~this._inputs.indexOf(e)&&this.disconnect(e),e.mapAxes(t),e.connect(this.inputObserver),this._inputs.push(e),this},e.disconnect=function(t){return t?0<=(t=this._inputs.indexOf(t))&&(this._inputs[t].disconnect(),this._inputs.splice(t,1)):(this._inputs.forEach(function(t){return t.disconnect()}),this._inputs=[]),this},e.get=function(t){return this.axisManager.get(t)},e.setTo=function(t,e){return this.animationManager.setTo(t,e=void 0===e?0:e),this},e.setBy=function(t,e){return this.animationManager.setBy(t,e=void 0===e?0:e),this},e.setOptions=function(t){return this.options=u(u({},this.options),t),this},e.setAxis=function(t){return this.axisManager.setAxis(t),this},e.stopAnimation=function(){return this.animationManager.stopAnimation(),this},e.updateAnimation=function(t){return this.animationManager.updateAnimation(t),this},e.isBounceArea=function(t){return this.axisManager.isOutside(t)},e.destroy=function(){this.disconnect(),this.eventManager.destroy()},t.VERSION="3.7.0",t.TRANSFORM=bt,t.DIRECTION_NONE=1,t.DIRECTION_LEFT=2,t.DIRECTION_RIGHT=4,t.DIRECTION_UP=8,t.DIRECTION_DOWN=16,t.DIRECTION_HORIZONTAL=6,t.DIRECTION_VERTICAL=D,t.DIRECTION_ALL=30,function(t,e,n,i){var r,s=arguments.length,o=s<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,n,i);else for(var a=t.length-1;0<=a;a--)(r=t[a])&&(o=(s<3?r(o):3<s?r(e,n,o):r(e,n))||o);return 3<s&&o&&Object.defineProperty(e,n,o),o}([N],t)}(V),f=function(){function t(t,e){this.axes=[],this.element=null,this._enabled=!1,this._activeEvent=null,this._atRightEdge=!1,this._rightEdgeTimer=0,this._voidFunction=function(){},this.element=S(t),this.options=u({inputType:["touch","mouse","pointer"],inputButton:[ft],scale:[1,1],thresholdAngle:45,threshold:0,iOSEdgeSwipeThreshold:30,releaseOnScroll:!1,touchAction:null},e),this._onPanstart=this._onPanstart.bind(this),this._onPanmove=this._onPanmove.bind(this),this._onPanend=this._onPanend.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this._direction=it(!!t[0],!!t[1]),this.axes=t},e.connect=function(t){return this._activeEvent&&(this._detachElementEvent(),this._detachWindowEvent(this._activeEvent)),this._attachElementEvent(t),this._originalCssProps=rt(this.element,this.options,this._direction),this},e.disconnect=function(){return this._detachElementEvent(),this._detachWindowEvent(this._activeEvent),nt(this._originalCssProps)||st(this.element,this._originalCssProps),this._direction=1,this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e.release=function(){var t=this._activeEvent,e=t.prevEvent;return t.onRelease(),this._observer.release(this,e,[0,0]),this._detachWindowEvent(t),this},e._onPanstart=function(t){var e=this._activeEvent,n=e.onEventStart(t,this.options.inputButton);!n||!this._enabled||1<e.getTouches(t)||!1!==n.srcEvent.cancelable&&(t=this.options.iOSEdgeSwipeThreshold,this._observer.hold(this,n),this._atRightEdge=Et&&n.center.x>window.innerWidth-t,this._attachWindowEvent(e),e.prevEvent=n)},e._onPanmove=function(t){var e=this,n=this._activeEvent,i=n.onEventMove(t,this.options.inputButton);if(i&&this._enabled&&!(1<n.getTouches(t))){var r=this.options,s=r.iOSEdgeSwipeThreshold,r=r.releaseOnScroll,o=function(t,e){if(e<0||90<e)return 1;t=Math.abs(t);return e<t&&t<180-e?D:6}(i.angle,this.options.thresholdAngle);if(r&&!i.srcEvent.cancelable)this._onPanend(t);else{if(n.prevEvent&&Et){if(i.center.x<0)return void this.release();this._atRightEdge&&(clearTimeout(this._rightEdgeTimer),i.deltaX<-s?this._atRightEdge=!1:this._rightEdgeTimer=window.setTimeout(function(){return e.release()},100))}r=this._getOffset([i.offsetX,i.offsetY],[m(6,this._direction,o),m(D,this._direction,o)]),t=r.some(function(t){return 0!==t});t&&(!1!==i.srcEvent.cancelable&&i.srcEvent.preventDefault(),i.srcEvent.stopPropagation()),(i.preventSystemEvent=t)&&this._observer.change(this,i,b(this.axes,r)),n.prevEvent=i}}},e._onPanend=function(t){var e,n=this._activeEvent;n.onEventEnd(t),this._enabled&&0===n.getTouches(t)&&(this._detachWindowEvent(n),clearTimeout(this._rightEdgeTimer),t=n.prevEvent,e=this._getOffset([Math.abs(t.velocityX)*(t.offsetX<0?-1:1),Math.abs(t.velocityY)*(t.offsetY<0?-1:1)],[m(6,this._direction),m(D,this._direction)]),n.onRelease(),this._observer.release(this,t,e))},e._attachWindowEvent=function(t){var e=this;null!=t&&t.move.forEach(function(t){window.addEventListener(t,e._onPanmove,{passive:!1})}),null!=t&&t.end.forEach(function(t){window.addEventListener(t,e._onPanend,{passive:!1})})},e._detachWindowEvent=function(t){var e=this;null!=t&&t.move.forEach(function(t){window.removeEventListener(t,e._onPanmove)}),null!=t&&t.end.forEach(function(t){window.removeEventListener(t,e._onPanend)})},e._getOffset=function(t,e){var n=this.options.scale;return[e[0]?t[0]*n[0]:0,e[1]?t[1]*n[1]:0]},e._attachElementEvent=function(t){var n=this,e=ht(this.options.inputType);e&&(this._observer=t,this._enabled=!0,(this._activeEvent=e).start.forEach(function(t){var e;null!=(e=n.element)&&e.addEventListener(t,n._onPanstart)}),e.move.forEach(function(t){var e;null!=(e=n.element)&&e.addEventListener(t,n._voidFunction)}))},e._detachElementEvent=function(){var n=this,t=this._activeEvent;null!=t&&t.start.forEach(function(t){var e;null!=(e=n.element)&&e.removeEventListener(t,n._onPanstart)}),null!=t&&t.move.forEach(function(t){var e;null!=(e=n.element)&&e.removeEventListener(t,n._voidFunction)}),this._enabled=!1,this._observer=null},t}(),Lt={default:j,PanInput:f,RotatePanInput:function(n){function t(t,e){t=n.call(this,t,e)||this;return t._prevQuadrant=null,t._lastDiff=0,t}i(t,n);var e=t.prototype;return e.mapAxes=function(t){this._direction=j.DIRECTION_ALL,this.axes=t},e._onPanstart=function(t){var e,n=this._activeEvent,t=n.onEventStart(t,this.options.inputButton);t&&this.isEnabled()&&(e=this.element.getBoundingClientRect(),this._observer.hold(this,t),this._attachWindowEvent(n),this._coefficientForDistanceToAngle=360/(e.width*Math.PI),this._rotateOrigin=[e.left+(e.width-1)/2,e.top+(e.height-1)/2],this._prevAngle=null,this._triggerChange(t),n.prevEvent=t)},e._onPanmove=function(t){var e=this._activeEvent,t=e.onEventMove(t,this.options.inputButton);t&&this.isEnabled()&&(!1!==t.srcEvent.cancelable&&t.srcEvent.preventDefault(),t.srcEvent.stopPropagation(),this._triggerChange(t),e.prevEvent=t)},e._onPanend=function(t){var e,n,i=this._activeEvent;i.onEventEnd(t),this.isEnabled()&&(t=i.prevEvent,this._triggerChange(t),n=t.velocityX,e=t.velocityY,n=Math.sqrt(n*n+e*e)*(0<this._lastDiff?-1:1),i.onRelease(),this._observer.release(this,t,[n*this._coefficientForDistanceToAngle]),this._detachWindowEvent(i))},e._triggerChange=function(t){var e=this._getPosFromOrigin(t.center.x,t.center.y),n=e.x,e=e.y,n=et(n,e),e=n<0?360+n:n,n=this._getQuadrant(t.center.x,t.center.y),i=this._getDifference(this._prevAngle,e,this._prevQuadrant,n);this._prevAngle=e,this._prevQuadrant=n,0!==i&&(this._lastDiff=i,this._observer.change(this,t,b(this.axes,[-i])))},e._getDifference=function(t,e,n,i){n=null===t?0:1===n&&4===i?-t-(360-e):4===n&&1===i?360-t+e:e-t;return n},e._getPosFromOrigin=function(t,e){return{x:t-this._rotateOrigin[0],y:this._rotateOrigin[1]-e}},e._getQuadrant=function(t,e){var t=this._getPosFromOrigin(t,e),e=t.x,t=t.y,n=0;return 0<=e&&0<=t?n=1:e<0&&0<=t?n=2:e<0&&t<0?n=3:0<=e&&t<0&&(n=4),n},t}(f),PinchInput:function(){function t(t,e){this.axes=[],this.element=null,this._pinchFlag=!1,this._enabled=!1,this._activeEvent=null,this.element=S(t),this.options=u({scale:1,threshold:0,inputType:["touch","pointer"],touchAction:"none"},e),this._onPinchStart=this._onPinchStart.bind(this),this._onPinchMove=this._onPinchMove.bind(this),this._onPinchEnd=this._onPinchEnd.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this.axes=t},e.connect=function(t){return this._activeEvent&&this._detachEvent(),this._attachEvent(t),this._originalCssProps=rt(this.element,this.options,30),this},e.disconnect=function(){return this._detachEvent(),nt(this._originalCssProps)||st(this.element,this._originalCssProps),this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e._onPinchStart=function(t){var e=this._activeEvent,n=e.onEventStart(t);n&&this._enabled&&2===e.getTouches(t)&&(this._baseValue=this._observer.get(this)[this.axes[0]],this._observer.hold(this,t),this._pinchFlag=!0,e.prevEvent=n)},e._onPinchMove=function(t){var e,n=this._activeEvent,i=n.onEventMove(t);i&&this._pinchFlag&&this._enabled&&2===n.getTouches(t)&&(e=this._getOffset(i.scale,n.prevEvent.scale),this._observer.change(this,t,b(this.axes,[e])),n.prevEvent=i)},e._onPinchEnd=function(t){var e=this._activeEvent;e.onEventEnd(t),!this._pinchFlag||!this._enabled||2<=e.getTouches(t)||(e.onRelease(),this._observer.release(this,t,[0],0),this._baseValue=null,this._pinchFlag=!1)},e._attachEvent=function(t){var e=this,n=ht(this.options.inputType);n&&(this._observer=t,this._enabled=!0,(this._activeEvent=n).start.forEach(function(t){e.element.addEventListener(t,e._onPinchStart,!1)}),n.move.forEach(function(t){e.element.addEventListener(t,e._onPinchMove,!1)}),n.end.forEach(function(t){e.element.addEventListener(t,e._onPinchEnd,!1)}))},e._detachEvent=function(){var e=this,t=this._activeEvent;null!=t&&t.start.forEach(function(t){e.element.removeEventListener(t,e._onPinchStart,!1)}),null!=t&&t.move.forEach(function(t){e.element.removeEventListener(t,e._onPinchMove,!1)}),null!=t&&t.end.forEach(function(t){e.element.removeEventListener(t,e._onPinchEnd,!1)}),this._enabled=!1,this._observer=null},e._getOffset=function(t,e){return this._baseValue*(t-(e=void 0===e?1:e))*this.options.scale},t}(),WheelInput:function(){function t(t,e){this.axes=[],this.element=null,this._enabled=!1,this._holding=!1,this._timer=null,this.element=S(t),this.options=u({scale:1,releaseDelay:300,useNormalized:!0,useAnimation:!1},e),this._onWheel=this._onWheel.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this._direction=it(!!t[1],!!t[0]),this.axes=t},e.connect=function(t){return this._detachEvent(),this._attachEvent(t),this},e.disconnect=function(){return this._detachEvent(),this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e._onWheel=function(t){var e,n=this;!this._enabled||0===(e=this._getOffset([t.deltaY,t.deltaX],[m(D,this._direction),m(6,this._direction)]))[0]&&0===e[1]||(t.preventDefault(),this._holding||(this._observer.hold(this,t),this._holding=!0),this._observer.change(this,t,b(this.axes,e),this.options.useAnimation),clearTimeout(this._timer),this._timer=setTimeout(function(){n._holding&&(n._holding=!1,n._observer.release(n,t,[0]))},this.options.releaseDelay))},e._getOffset=function(t,e){var n=this.options.scale,i=this.options.useNormalized;return[e[0]&&t[0]?(0<t[0]?-1:1)*(i?1:Math.abs(t[0]))*n:0,e[1]&&t[1]?(0<t[1]?-1:1)*(i?1:Math.abs(t[1]))*n:0]},e._attachEvent=function(t){this._observer=t,this.element.addEventListener("wheel",this._onWheel),this._enabled=!0},e._detachEvent=function(){this.element.removeEventListener("wheel",this._onWheel),this._enabled=!1,this._observer=null,this._timer&&(clearTimeout(this._timer),this._timer=null)},t}(),MoveKeyInput:function(){function t(t,e){this.axes=[],this.element=null,this._enabled=!1,this._holding=!1,this._timer=null,this.element=S(t),this.options=u({scale:[1,1]},e),this._onKeydown=this._onKeydown.bind(this),this._onKeyup=this._onKeyup.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this.axes=t},e.connect=function(t){return this._detachEvent(),"0"!==this.element.getAttribute("tabindex")&&this.element.setAttribute("tabindex","0"),this._attachEvent(t),this},e.disconnect=function(){return this._detachEvent(),this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e._onKeydown=function(t){if(this._enabled){var e,n=!0,i=1,r=-1;switch(t.keyCode){case 37:case 65:i=-1;break;case 39:case 68:break;case 40:case 83:i=-1,r=1;break;case 38:case 87:r=1;break;default:n=!1}(n=-1===r&&!this.axes[0]||1===r&&!this.axes[1]?!1:n)&&(t.preventDefault(),e=-1===r?[+this.options.scale[0]*i,0]:[0,+this.options.scale[1]*i],this._holding||(this._observer.hold(this,t),this._holding=!0),clearTimeout(this._timer),this._observer.change(this,t,b(this.axes,e)))}},e._onKeyup=function(t){var e=this;this._holding&&(clearTimeout(this._timer),this._timer=setTimeout(function(){e._observer.release(e,t,[0,0]),e._holding=!1},80))},e._attachEvent=function(t){this._observer=t,this.element.addEventListener("keydown",this._onKeydown,!1),this.element.addEventListener("keypress",this._onKeydown,!1),this.element.addEventListener("keyup",this._onKeyup,!1),this._enabled=!0},e._detachEvent=function(){this.element.removeEventListener("keydown",this._onKeydown,!1),this.element.removeEventListener("keypress",this._onKeydown,!1),this.element.removeEventListener("keyup",this._onKeyup,!1),this._enabled=!1,this._observer=null},t}(),AXES_METHODS:gt,AXES_EVENTS:mt,REACTIVE_AXES:{methods:gt,events:mt,created:function(t){return new j(t.axis,t.options)},on:function(t,e,n){t.on(e,n)},off:function(t,e,n){t.off(e,n)},destroy:function(t){t.destroy()}}};for(dt in Lt)j[dt]=Lt[dt];return j}); | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t.eg=t.eg||{},t.eg.Axes=e())}(this,function(){"use strict";var j=function(t,e){return(j=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 i(t,e){function n(){this.constructor=t}j(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var u=function(){return(u=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 B(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{value:(t=t&&i>=t.length?void 0:t)&&t[i++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function o(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(function(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var i,r,s=n.call(t),o=[];try{for(;(void 0===e||0<e--)&&!(i=s.next()).done;)o.push(i.value)}catch(t){r={error:t}}finally{try{i&&!i.done&&(n=s.return)&&n.call(s)}finally{if(r)throw r.error}}return o}(arguments[e]));return t}function c(t){return void 0===t}var r=function(){function t(t,e){var n,i;if(this._canceled=!1,e)try{for(var r=B(Object.keys(e)),s=r.next();!s.done;s=r.next()){var o=s.value;this[o]=e[o]}}catch(t){n={error:t}}finally{try{s&&!s.done&&(i=r.return)&&i.call(r)}finally{if(n)throw n.error}}this.eventType=t}var e=t.prototype;return e.stop=function(){this._canceled=!0},e.isCanceled=function(){return this._canceled},t}(),V=function(){function t(){this._eventHandler={}}var e=t.prototype;return e.trigger=function(e){for(var n=[],t=1;t<arguments.length;t++)n[t-1]=arguments[t];var i=e instanceof r?e.eventType:e,i=o(this._eventHandler[i]||[]);return i.length<=0||(e instanceof r?(e.currentTarget=this,i.forEach(function(t){t(e)})):i.forEach(function(t){t.apply(void 0,o(n))})),this},e.once=function(n,i){var r,s=this;if("object"==typeof n&&c(i)){var t,e=n;for(t in e)this.once(t,e[t])}else"string"==typeof n&&"function"==typeof i&&(r=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];i.apply(void 0,o(t)),s.off(n,r)},this.on(n,r));return this},e.hasOn=function(t){return!!this._eventHandler[t]},e.on=function(t,e){if("object"==typeof t&&c(e)){var n,i=t;for(n in i)this.on(n,i[n])}else{var r;"string"==typeof t&&"function"==typeof e&&(r=this._eventHandler[t],c(r)&&(this._eventHandler[t]=[],r=this._eventHandler[t]),r.push(e))}return this},e.off=function(t,e){var n,i;if(c(t))this._eventHandler={};else if(c(e))if("string"==typeof t)delete this._eventHandler[t];else{var r,s=t;for(r in s)this.off(r,s[r])}else{var o=this._eventHandler[t];if(o){var a=0;try{for(var u=B(o),h=u.next();!h.done;h=u.next()){if(h.value===e){o.splice(a,1),o.length<=0&&delete this._eventHandler[t];break}a++}}catch(t){n={error:t}}finally{try{h&&!h.done&&(i=u.return)&&i.call(u)}finally{if(n)throw n.error}}}}return this},t.VERSION="3.0.2",t}(),h=r;var e="__observers__",X=function(){function t(t){this._emitter=new V,this._current=t}var e=t.prototype;return Object.defineProperty(e,"current",{get:function(){return this._current},set:function(t){var e=t!==this._current;this._current=t,e&&this._emitter.trigger("update",t)},enumerable:!1,configurable:!0}),e.subscribe=function(t){this._emitter.on("update",t)},e.unsubscribe=function(t){this._emitter.off("update",t)},t}();function Y(t){return t[e]||(t[e]={}),t[e]}function l(t,e,n){t=Y(t);return t[e]||(t[e]=new X(n)),t[e]}function F(t){t.subscribe=function(t,e){l(this,t).subscribe(e)},t.unsubscribe=function(t,e){var n=this;t?t in this&&l(this,t).unsubscribe(e):(t=Y(this),Object.keys(t).forEach(function(t){n.unsubscribe(t)}))}}function N(t){F(t.prototype)}function W(t,e){for(var n=t.length,i=0;i<n;++i)if(e(t[i],i))return!0;return!1}function H(t,e){for(var n=t.length,i=0;i<n;++i)if(e(t[i],i))return t[i];return null}function K(t){if(void 0===t){if("undefined"==typeof navigator||!navigator)return"";t=navigator.userAgent||""}return t.toLowerCase()}function U(t,e){try{return new RegExp(t,"g").exec(e)}catch(t){return null}}function q(t){return t.replace(/_/g,".")}function n(t,n){var i=null,r="-1";return W(t,function(t){var e=U("("+t.test+")((?:\\/|\\s|:)([0-9|\\.|_]+))?",n);if(e&&!t.brand)return i=t,r=e[3]||"-1",t.versionAlias?r=t.versionAlias:t.versionTest&&(e=t.versionTest.toLowerCase(),r=((e=U("("+e+")((?:\\/|\\s|:)([0-9|\\.|_]+))",n))?e[3]:"")||r),r=q(r),1}),{preset:i,version:r}}function t(t,n){var i={brand:"",version:"-1"};return W(t,function(t){var e=Q(n,t);return e&&(i.brand=t.id,i.version=t.versionAlias||e.version,"-1"!==i.version)}),i}function Q(t,e){return H(t,function(t){t=t.brand;return U(""+e.test,t.toLowerCase())})}var s="undefined"==typeof window?{navigator:{userAgent:""}}:window,a=[{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"}],z=[{test:"(?=.*applewebkit/(53[0-7]|5[0-2]|[0-4]))(?=.*\\schrome)",id:"chrome",versionTest:"chrome"},{test:"chromium",id:"chrome"},{test:"whale",id:"chrome",versionAlias:"-1",brand:!0}],v=[{test:"applewebkit",id:"webkit",versionTest:"applewebkit|safari"}],G=[{test:"(?=(iphone|ipad))(?!(.*version))",id:"webview"},{test:"(?=(android|iphone|ipad))(?=.*(naver|daum|; wv))",id:"webview"},{test:"webview",id:"webview"}],d=[{test:"windows phone",id:"windows phone"},{test:"windows 2000",id:"window",versionAlias:"5.0"},{test:"windows nt",id:"window"},{test:"win32|windows",id:"window"},{test:"iphone|ipad|ipod",id:"ios",versionTest:"iphone os|cpu os"},{test:"macos|macintel|mac os x",id:"mac"},{test:"android|linux armv81",id:"android"},{test:"tizen",id:"tizen"},{test:"webos|web0s",id:"webos"}];function Z(t){return!!n(G,t).preset}function f(t,e){var n,i={};for(n in t)n&&(i[n]=e(t[n],n));return i}function J(t,e){var n,i={};for(n in t)n&&e(t[n],n)&&(i[n]=t[n]);return i}function $(t,e){for(var n in t)if(n&&!e(t[n],n))return!1;return!0}function _(t,n){return $(t,function(t,e){return t===n[e]})}function tt(t,e){return wt[e]||(wt[e]=Mt(e)),wt[e](t)}function et(t,n){return t&&n?f(t,function(t,e){return tt(t,"number"==typeof n?n:n[e])}):t}function p(t){if(!isFinite(t))return 0;var e="".concat(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 nt(t,e){return 180*Math.atan2(e,t)/Math.PI}function it(e){var n=!0;return Object.keys(xt).forEach(function(t){e&&e[t]===xt[t]||(n=!1)}),n}function rt(t,e){return t&&e?30:t?6:e?D:1}function g(t,e,n){return n?!!(30===e||e&t&&n&t):!!(e&t)}function st(e,t,n){var i,r={1:"auto",30:"none",24:"pan-x",6:"pan-y"},s={};return e&&e.style&&(t=t.touchAction||r[n],i=u(u({},xt),{"touch-action":"none"===e.style["touch-action"]?"none":t}),Object.keys(i).forEach(function(t){s[t]=e.style[t],e.style[t]=i[t]})),s}function ot(e,n){e&&e.style&&n&&Object.keys(n).forEach(function(t){e.style[t]=n[t]})}function at(t,e,n,i){return n=[!n[0]&&i?e[0]-i[0]:e[0],!n[1]&&i?e[1]+i[1]:e[1]],i=Math.max(n[0],t),Math.min(n[1],i)}function ut(t,e){return t<e[0]||t>e[1]}function ht(t,e,n){return n[1]&&t>e[1]||n[0]&&t<e[0]}function m(t,e,n){var i=t,r=e[0],s=(e=e[1])-r;return n[1]&&e<t&&(i=(i-e)%s+r),i=n[0]&&t<r?(i-r)%s+e:i}function E(i,t){return t.reduce(function(t,e,n){return i[n]&&(t[i[n]]=e),t},{})}function ct(t){var e=!1,n=!1,i=!1;return(t=void 0===t?[]:t).forEach(function(t){switch(t){case"mouse":n=!0;break;case"touch":e=At;break;case"pointer":i=Dt}}),i?new kt:e&&n?new St:e?new Ct:n?new It:null}function lt(t,e,n){return Math.max(Math.min(t,n),e)}var b,x,y,w,M,P,vt,T,O,A,dt,ft,D=24,I="left",_t="right",pt="middle",gt=["connect","disconnect","get","setTo","setBy","setOptions","setAxis","stopAnimation","updateAnimation","isBounceArea"],mt=["hold","release","change","animationStart","animationEnd","finish"],Et="ontouchstart"in s&&"safari"===(void 0===b&&function(){var t;if("undefined"!=typeof navigator&&navigator&&navigator.userAgentData)return(t=(t=navigator.userAgentData).brands||t.uaList)&&t.length}()?(y=((T=navigator.userAgentData).uaList||T.brands).slice(),w=x&&x.fullVersionList,M=T.mobile||!1,P=y[0],vt=(x&&x.platform||T.platform||navigator.platform).toLowerCase(),T={name:P.brand,version:P.version,majorVersion:-1,webkit:!1,webkitVersion:"-1",chromium:!1,chromiumVersion:"-1",webview:!!t(G,y).brand||Z(K())},P={name:"unknown",version:"-1",majorVersion:-1},T.webkit=!T.chromium&&W(v,function(t){return Q(y,t)}),O=t(z,y),T.chromium=!!O.brand,T.chromiumVersion=O.version,T.chromium||(O=t(v,y),T.webkit=!!O.brand,T.webkitVersion=O.version),O=H(d,function(t){return new RegExp(""+t.test,"g").exec(vt)}),P.name=O?O.id:"",x&&(P.version=x.platformVersion),w&&w.length?(O=t(a,w),T.name=O.brand||T.name,T.version=O.version||T.version):(w=t(a,y),T.name=w.brand||T.name,T.version=w.brand&&x?x.uaFullVersion:w.version),T.webkit&&(P.name=M?"ios":"mac"),"ios"===P.name&&T.webview&&(T.version="-1"),P.version=q(P.version),T.version=q(T.version),P.majorVersion=parseInt(P.version,10),T.majorVersion=parseInt(T.version,10),{browser:T,os:P,isMobile:M,isHints:!0}):(O=K(O=b),x=!!/mobi/g.exec(O),w={name:"unknown",version:"-1",majorVersion:-1,webview:Z(O),chromium:!1,chromiumVersion:"-1",webkit:!1,webkitVersion:"-1"},T={name:"unknown",version:"-1",majorVersion:-1},M=(P=n(a,O)).preset,P=P.version,a=(b=n(d,O)).preset,b=b.version,d=n(z,O),w.chromium=!!d.preset,w.chromiumVersion=d.version,w.chromium||(d=n(v,O),w.webkit=!!d.preset,w.webkitVersion=d.version),a&&(T.name=a.id,T.version=b,T.majorVersion=parseInt(b,10)),M&&(w.name=M.id,w.version=P,w.webview&&"ios"===T.name&&"safari"!==w.name&&(w.webview=!1)),w.majorVersion=parseInt(w.version,10),{browser:w,os:T,isMobile:x,isHints:!1})).browser.name,bt=function(){if("undefined"!=typeof document)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""}(),xt={"user-select":"none","-webkit-user-drag":"none"},yt=function(t){for(var e=[],n=0,i=t.length;n<i;n++)e.push(t[n]);return e},C=function(t,e){var n;return void 0===e&&(e=!1),"string"==typeof t?(n=t.match(/^<([a-z]+)\s*([^>]*)>/)?((n=document.createElement("div")).innerHTML=t,yt(n.childNodes)):yt(document.querySelectorAll(t)),e||(n=1<=n.length?n[0]:void 0)):t===s?n=t:"value"in t||"current"in t?n=t.value||t.current:!t.nodeName||1!==t.nodeType&&9!==t.nodeType?"jQuery"in s&&t instanceof jQuery||t.constructor.prototype.jquery?n=e?t.toArray():t.get(0):Array.isArray(t)&&(n=t.map(function(t){return C(t)}),e||(n=1<=n.length?n[0]:void 0)):n=t,n},k=s.requestAnimationFrame||s.webkitRequestAnimationFrame,S=s.cancelAnimationFrame||s.webkitCancelAnimationFrame,wt=(k&&!S?(A={},dt=k,k=function(e){var n=dt(function(t){A[n]&&e(t)});return A[n]=!0,n},S=function(t){delete A[t]}):k&&S||(k=function(t){return s.setTimeout(function(){t(s.performance&&s.performance.now&&s.performance.now()||(new Date).getTime())},16)},S=s.clearTimeout),{}),Mt=function(e){var n=e<1?Math.pow(10,p(e)):1;return function(t){return 0===e?0:Math.round(Math.round(t/e)*e*n)/n}},Pt=function(){function t(t){this._axes=t}var e=t.prototype;return e.hold=function(t,e){t=this._getRoundPos(t).roundPos;this._axes.trigger(new h("hold",{pos:t,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,e=e.roundDepa;t.destPos=n,t.depaPos=e,t.setTo=this._createUserControll(t.destPos,t.duration),this._axes.trigger(new h("release",u(u({},t),{bounceRatio:this._getBounceRatio(n)})))},e.triggerChange=function(t,e,n,i){var r=this,s=(void 0===i&&(i=!1),this.animationManager),o=s.axisManager,s=s.getEventInfo(),t=this._getRoundPos(t,e),e=t.roundPos,t=t.roundDepa,a=o.moveTo(e,t),e=(null==n?void 0:n.event)||(null==s?void 0:s.event)||null,t={pos:a.pos,delta:a.delta,bounceRatio:this._getBounceRatio(a.pos),holding:i,inputEvent:e,isTrusted:!!e,input:(null==n?void 0:n.input)||(null==s?void 0:s.input)||null,set:e?this._createUserControll(a.pos):function(){}},i=new h("change",t);return this._axes.trigger(i),Object.keys(a.pos).forEach(function(t){var e=a.pos[t];l(r._axes,t,e).current=e}),e&&o.set(t.set().destPos),!i.isCanceled()},e.triggerAnimationStart=function(t){var e=this._getRoundPos(t.destPos,t.depaPos),n=e.roundPos,e=e.roundDepa,n=(t.destPos=n,t.depaPos=e,t.setTo=this._createUserControll(t.destPos,t.duration),new h("animationStart",t));return this._axes.trigger(n),!n.isCanceled()},e.triggerAnimationEnd=function(t){this._axes.trigger(new h("animationEnd",{isTrusted:t=void 0===t?!1:t}))},e.triggerFinish=function(t){this._axes.trigger(new h("finish",{isTrusted:t=void 0===t?!1:t}))},e.setAnimationManager=function(t){this.animationManager=t},e.destroy=function(){this._axes.off()},e._createUserControll=function(t,e){void 0===e&&(e=0);var n={destPos:u({},t),duration:e};return function(t,e){return t&&(n.destPos=u({},t)),void 0!==e&&(n.duration=e),n}},e._getRoundPos=function(t,e){var n=this._axes.options.round;return{roundPos:et(t,n),roundDepa:et(e,n)}},e._getBounceRatio=function(t){return this._axes.axisManager.map(t,function(t,e){return t<e.range[0]&&0!==e.bounce[0]?(e.range[0]-t)/e.bounce[0]:t>e.range[1]&&0!==e.bounce[1]?(t-e.range[1])/e.bounce[1]:0})},t}(),Tt=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}(),Ot=function(){function t(t){var n=this;this._axis=t,this._complementOptions(),this._pos=Object.keys(this._axis).reduce(function(t,e){return t[e]=n._axis[e].startPos,t},{})}var e=t.prototype;return e.getDelta=function(t,e){var n=this.get(t);return f(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},{}):u(u({},this._pos),t||{})},e.moveTo=function(n,i){void 0===i&&(i=this._pos);var t=f(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?m(t,e.range,e.circular):0})),{pos:u({},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 $(t,function(t,e){return n(t,i[e],e)})},e.filter=function(t,n){var i=this._axis;return J(t,function(t,e){return n(t,i[e],e)})},e.map=function(t,n){var i=this._axis;return f(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!ut(t,e.range)})},e.getAxisOptions=function(t){return this._axis[t]},e.setAxis=function(e){var n=this;Object.keys(e).forEach(function(t){if(!n._axis[t])throw new Error("Axis ".concat(t," does not exist in Axes instance"));n._axis[t]=u(u({},n._axis[t]),e[t])}),this._complementOptions()},e._complementOptions=function(){var r=this;Object.keys(this._axis).forEach(function(i){r._axis[i]=u({range:[0,100],startPos:r._axis[i].range[0],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])})})},t}(),At="ontouchstart"in s,R="PointerEvent"in s,z="MSPointerEvent"in s,Dt=R||z,v=function(){function t(){var e=this;this._stopContextMenu=function(t){t.preventDefault(),s.removeEventListener("contextmenu",e._stopContextMenu)}}var e=t.prototype;return e.extendEvent=function(t){var e=this.prevEvent,n=this._getCenter(t),i=e?this._getMovement(t):{x:0,y:0},r=e?this._getScale(t):1,s=e?nt(n.x-e.center.x,n.y-e.center.y):0,o=e?e.deltaX+i.x:i.x,a=e?e.deltaY+i.y:i.y,u=i.x,i=i.y,h=this._latestInterval,c=Date.now(),l=h?c-h.timestamp:0,v=e?e.velocityX:0,e=e?e.velocityY:0;return(!h||16<=l)&&(h&&(v=(h=[(o-h.deltaX)/l,(a-h.deltaY)/l])[0],e=h[1]),this._latestInterval={timestamp:c,deltaX:o,deltaY:a}),{srcEvent:t,scale:r,angle:s,center:n,deltaX:o,deltaY:a,offsetX:u,offsetY:i,velocityX:v,velocityY:e,preventSystemEvent:!0}},e._getDistance=function(t,e){var n=e.clientX-t.clientX,e=e.clientY-t.clientY;return Math.sqrt(n*n+e*e)},e._getButton=function(t){var e={1:I,2:_t,4:pt},e=this._isTouchEvent(t)?I:e[t.buttons];return e||null},e._isTouchEvent=function(t){return-1<t.type.indexOf("touch")},e._isValidButton=function(t,e){return-1<e.indexOf(t)},e._preventMouseButton=function(t,e){e===_t?s.addEventListener("contextmenu",this._stopContextMenu):e===pt&&t.preventDefault()},t}(),It=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["mousedown"],t.move=["mousemove"],t.end=["mouseup"],t}i(t,e);var n=t.prototype;return n.onEventStart=function(t,e){var n=this._getButton(t);return e&&!this._isValidButton(n,e)?null:(this._preventMouseButton(t,n),this.extendEvent(t))},n.onEventMove=function(t,e){return e&&!this._isValidButton(this._getButton(t),e)?null:this.extendEvent(t)},n.onEventEnd=function(){},n.onRelease=function(){this.prevEvent=null},n.getTouches=function(t,e){return e&&this._isValidButton({1:I,2:pt,3:_t}[t.which],e)&&-1===this.end.indexOf(t.type)?1:0},n._getScale=function(){return 1},n._getCenter=function(t){return{x:t.clientX,y:t.clientY}},n._getMovement=function(t){var e=this.prevEvent.srcEvent;return{x:t.clientX-e.clientX,y:t.clientY-e.clientY}},t}(v),Ct=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["touchstart"],t.move=["touchmove"],t.end=["touchend","touchcancel"],t}i(t,e);var n=t.prototype;return n.onEventStart=function(t){return this._baseTouches=t.touches,this.extendEvent(t)},n.onEventMove=function(t){return this.extendEvent(t)},n.onEventEnd=function(t){this._baseTouches=t.touches},n.onRelease=function(){this.prevEvent=null,this._baseTouches=null},n.getTouches=function(t){return t.touches.length},n._getScale=function(t){return 2!==t.touches.length||this._baseTouches.length<2?null:this._getDistance(t.touches[0],t.touches[1])/this._getDistance(this._baseTouches[0],this._baseTouches[1])},n._getCenter=function(t){return{x:t.touches[0].clientX,y:t.touches[0].clientY}},n._getMovement=function(t){var e=this.prevEvent.srcEvent;return t.touches[0].identifier!==e.touches[0].identifier?{x:0,y:0}:{x:t.touches[0].clientX-e.touches[0].clientX,y:t.touches[0].clientY-e.touches[0].clientY}},t}(v),kt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=R?["pointerdown"]:["MSPointerDown"],t.move=R?["pointermove"]:["MSPointerMove"],t.end=R?["pointerup","pointercancel"]:["MSPointerUp","MSPointerCancel"],t._firstInputs=[],t._recentInputs=[],t}i(t,e);var n=t.prototype;return n.onEventStart=function(t,e){var n=this._getButton(t);return e&&!this._isValidButton(n,e)?null:(this._preventMouseButton(t,n),this._updatePointerEvent(t),this.extendEvent(t))},n.onEventMove=function(t,e){return e&&!this._isValidButton(this._getButton(t),e)?null:(this._updatePointerEvent(t),this.extendEvent(t))},n.onEventEnd=function(t){this._removePointerEvent(t)},n.onRelease=function(){this.prevEvent=null,this._firstInputs=[],this._recentInputs=[]},n.getTouches=function(){return this._recentInputs.length},n._getScale=function(){return 2!==this._recentInputs.length?null:this._getDistance(this._recentInputs[0],this._recentInputs[1])/this._getDistance(this._firstInputs[0],this._firstInputs[1])},n._getCenter=function(t){return{x:t.clientX,y:t.clientY}},n._getMovement=function(t){var e=this.prevEvent.srcEvent;return t.pointerId!==e.pointerId?{x:0,y:0}:{x:t.clientX-e.clientX,y:t.clientY-e.clientY}},n._updatePointerEvent=function(n){var i=this,r=!1;this._recentInputs.forEach(function(t,e){t.pointerId===n.pointerId&&(r=!0,i._recentInputs[e]=n)}),r||(this._firstInputs.push(n),this._recentInputs.push(n))},n._removePointerEvent=function(e){this._firstInputs=this._firstInputs.filter(function(t){return t.pointerId!==e.pointerId}),this._recentInputs=this._recentInputs.filter(function(t){return t.pointerId!==e.pointerId})},t}(v),St=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["mousedown","touchstart"],t.move=["mousemove","touchmove"],t.end=["mouseup","touchend","touchcancel"],t}i(t,e);var n=t.prototype;return n.onEventStart=function(t,e){var n=this._getButton(t);return this._isTouchEvent(t)&&(this._baseTouches=t.touches),e&&!this._isValidButton(n,e)?null:(this._preventMouseButton(t,n),this.extendEvent(t))},n.onEventMove=function(t,e){return e&&!this._isValidButton(this._getButton(t),e)?null:this.extendEvent(t)},n.onEventEnd=function(t){this._isTouchEvent(t)&&(this._baseTouches=t.touches)},n.onRelease=function(){this.prevEvent=null,this._baseTouches=null},n.getTouches=function(t){return this._isTouchEvent(t)?t.touches.length:0},n._getScale=function(t){return this._isTouchEvent(t)?2!==t.touches.length||this._baseTouches.length<2?1:this._getDistance(t.touches[0],t.touches[1])/this._getDistance(this._baseTouches[0],this._baseTouches[1]):this.prevEvent.scale},n._getCenter=function(t){return this._isTouchEvent(t)?{x:t.touches[0].clientX,y:t.touches[0].clientY}:{x:t.clientX,y:t.clientY}},n._getMovement=function(t){var e=this,t=[t,this.prevEvent.srcEvent].map(function(t){return e._isTouchEvent(t)?{id:t.touches[0].identifier,x:t.touches[0].clientX,y:t.touches[0].clientY}:{id:null,x:t.clientX,y:t.clientY}}),n=t[0],t=t[1];return n.id===t.id?{x:n.x-t.x,y:n.y-t.y}:{x:0,y:0}},t}(v),Rt=function(){function t(t){var e=t.options,n=t.interruptManager,i=t.eventManager,r=t.axisManager,t=t.animationManager;this._isOutside=!1,this._moveDistance=null,this._isStopped=!1,this.options=e,this._interruptManager=n,this._eventManager=i,this._axisManager=r,this._animationManager=t}var e=t.prototype;return e.get=function(t){return this._axisManager.get(t.axes)},e.hold=function(t,e){!this._interruptManager.isInterrupted()&&t.axes.length&&(this._isStopped=!(e={input:t,event:e}),this._interruptManager.setInterrupt(!0),this._animationManager.stopAnimation(e),this._moveDistance||this._eventManager.hold(this._axisManager.get(),e),this._isOutside=this._axisManager.isOutside(t.axes),this._moveDistance=this._axisManager.get(t.axes))},e.change=function(t,e,n,i){var r,s,o;this._isStopped||!this._interruptManager.isInterrupting()||this._axisManager.every(n,function(t){return 0===t})||((o=e.srcEvent||e).__childrenAxesAlreadyChanged||(r=this._moveDistance||this._axisManager.get(t.axes),s=f(r,function(t,e){return t+(n[e]||0)}),this._moveDistance&&(this._moveDistance=this._axisManager.map(s,function(t,e){var n=e.circular,e=e.range;return n&&(n[0]||n[1])?m(t,e,n):t})),this._isOutside&&this._axisManager.every(r,function(t,e){return!ut(t,e.range)})&&(this._isOutside=!1),r=this._atOutside(r),s=this._atOutside(s),this.options.nested&&this._isEndofAxis(n,r,s)||(o.__childrenAxesAlreadyChanged=!0),o={input:t,event:e},i?(t=this._animationManager.getDuration(s,r),this._animationManager.animateTo(s,t,o)):this._eventManager.triggerChange(s,r,o,!0)||(this._isStopped=!0,this._moveDistance=null,this._animationManager.finish(!1))))},e.release=function(t,e,n,i){var r,s,o;!this._isStopped&&this._interruptManager.isInterrupting()&&this._moveDistance&&((o=e.srcEvent||e).__childrenAxesAlreadyReleased&&(n=n.map(function(){return 0})),r=this._axisManager.get(t.axes),s=this._axisManager.get(),n=this._animationManager.getDisplacement(n),n=E(t.axes,n),n=this._axisManager.get(this._axisManager.map(n,function(t,e,n){return e.circular&&(e.circular[0]||e.circular[1])?r[n]+t:at(r[n]+t,e.range,e.circular,e.bounce)})),o.__childrenAxesAlreadyReleased=!0,i={depaPos:s,destPos:n=0===(o=this._animationManager.getDuration(n,r,i))?u({},s):n,duration:o,delta:this._axisManager.getDelta(s,n),inputEvent:e,input:t,isTrusted:!0},this._eventManager.triggerRelease(i),this._moveDistance=null,o=this._animationManager.getUserControl(i),n={input:t,event:e},(i=_(o.destPos,s))||0===o.duration?(i||this._eventManager.triggerChange(o.destPos,s,n,!0),this._interruptManager.setInterrupt(!1),this._axisManager.isOutside()?this._animationManager.restore(n):this._eventManager.triggerFinish(!0)):this._animationManager.animateTo(o.destPos,o.duration,n))},e._atOutside=function(t){var s=this;return this._isOutside?this._axisManager.map(t,function(t,e){var n=e.range[0]-e.bounce[0],e=e.range[1]+e.bounce[1];return e<t?e:t<n?n:t}):this._axisManager.map(t,function(t,e){var n=e.range[0],i=e.range[1],r=e.bounce,e=e.circular;return e&&(e[0]||e[1])?t:t<n?n-s._animationManager.interpolate(n-t,r[0]):i<t?i+s._animationManager.interpolate(t-i,r[1]):t})},e._isEndofAxis=function(r,s,o){return this._axisManager.every(s,function(t,e,n){return 0===r[n]||s[n]===o[n]&&(n=t,t=e.range,i=e.bounce,!(e=e.circular)[0]&&n===t[0]-i[0]||!e[1]&&n===t[1]+i[1]);var i})},t}(),Lt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._useDuration=!0,t}i(t,e);var n=t.prototype;return n.interpolate=function(t,e){var n=this._easing(1e-5)/1e-5;return this._easing(t/(e*n))*e},n.updateAnimation=function(t){var e,n,i,r,s=this._animateParam;s&&(e=(new Date).getTime()-s.startTime,n=(null==t?void 0:t.destPos)||s.destPos,i=(null==t?void 0:t.duration)||s.duration,null!=t&&t.restart||i<=e?this.setTo(n,i-e):(null!=t&&t.destPos&&(r=this.axisManager.get(),this._initialEasingPer=this._prevEasingPer,s.delta=this.axisManager.getDelta(r,n),s.destPos=n),null!=t&&t.duration&&(r=(e+this._durationOffset)/s.duration,this._durationOffset=r*i-e,s.duration=i)))},n._initState=function(t){return this._initialEasingPer=0,this._prevEasingPer=0,this._durationOffset=0,{pos:t.depaPos,easingPer:0,finished:!1}},n._getNextState=function(t){var r=this,s=this._animateParam,o=t.pos,a=s.destPos,u=f(o,function(t,e){return t<=a[e]?1:-1}),h=((new Date).getTime()-s.startTime+this._durationOffset)/s.duration,c=this._easing(h);return{pos:this.axisManager.map(o,function(t,e,n){var t=1<=h?a[n]:t+s.delta[n]*(c-r._prevEasingPer)/(1-r._initialEasingPer),i=m(t,e.range,e.circular);return t!==i&&(t=u[n]*(e.range[1]-e.range[0]),a[n]-=t,o[n]-=t),i}),easingPer:this._prevEasingPer=c,finished:1<=c}},n._easing=function(t){return 1<t?1:this._options.easing(t)},t}(function(){function t(t){var e=t.options,n=t.interruptManager,i=t.eventManager,t=t.axisManager;this._options=e,this.interruptManager=n,this.eventManager=i,this.axisManager=t,this.animationEnd=this.animationEnd.bind(this)}var e=t.prototype;return e.getDuration=function(n,t,e){var i,r=this;return e=void 0!==e?e:(i=f(t,function(t,e){t=Math.abs(t-n[e]),e=r._options.deceleration;return(t=Math.sqrt(t/e*2))<100?0:t}),Object.keys(i).reduce(function(t,e){return Math.max(t,i[e])},-1/0)),lt(e,this._options.minimumDuration,this._options.maximumDuration)},e.getDisplacement=function(t){var e=Math.pow(t.reduce(function(t,e){return t+e*e},0),1/t.length),n=Math.abs(e/-this._options.deceleration);return t.map(function(t){return t/2*n})},e.stopAnimation=function(t){var n,e;this._animateParam&&(n=this.axisManager.get(),e=this.axisManager.map(n,function(t,e){return m(t,e.range,e.circular)}),$(e,function(t,e){return n[e]===t})||this.eventManager.triggerChange(e,n,t,!!t),this._animateParam=null,this._raf&&(e=this._raf,S(e)),this._raf=null,this.eventManager.triggerAnimationEnd(!(null==t||!t.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.axisManager.get(),n=this.axisManager.map(e,function(t,e){return Math.min(e.range[1],Math.max(e.range[0],t))});this.stopAnimation(),this.animateTo(n,this.getDuration(e,n),t)},e.animationEnd=function(){var t=this.getEventInfo(),e=(this._animateParam=null,this.axisManager.filter(this.axisManager.get(),function(t,e){return ht(t,e.range,e.circular)}));0<Object.keys(e).length&&this.setTo(this.axisManager.map(e,function(t,e){return m(t,e.range,e.circular)})),this.interruptManager.setInterrupt(!1),this.eventManager.triggerAnimationEnd(!!t),this.axisManager.isOutside()?this.restore(t):this.finish(!!t)},e.finish=function(t){this._animateParam=null,this.interruptManager.setInterrupt(!1),this.eventManager.triggerFinish(t)},e.getUserControl=function(t){t=t.setTo();return t.destPos=this.axisManager.get(t.destPos),t.duration=lt(t.duration,this._options.minimumDuration,this._options.maximumDuration),t},e.animateTo=function(t,e,n){var i=this,t=(this.stopAnimation(),this._createAnimationParam(t,e,n)),e=u({},t.depaPos),r=this.eventManager.triggerAnimationStart(t),t=this.getUserControl(t);!r&&this.axisManager.every(t.destPos,function(t,e){return ht(t,e.range,e.circular)})&&console.warn("You can't stop the 'animation' event when 'circular' is true."),r&&!_(t.destPos,e)&&(r=(null==n?void 0:n.event)||null,this._animateLoop({depaPos:e,destPos:t.destPos,duration:t.duration,delta:this.axisManager.getDelta(e,t.destPos),isTrusted:!!r,inputEvent:r,input:(null==n?void 0:n.input)||null},function(){return i.animationEnd()}))},e.setTo=function(t,e){void 0===e&&(e=0);var n=Object.keys(t),i=this.axisManager.get(n);return _(t,i)||(this.interruptManager.setInterrupt(!0),n=J(t,function(t,e){return i[e]!==t}),Object.keys(n).length&&(n=this.axisManager.map(n,function(t,e){var n=e.range,e=e.circular;return e&&(e[0]||e[1])?t:at(t,n,e)}),_(n,i)||(0<e?this.animateTo(n,e):(this.stopAnimation(),this.eventManager.triggerChange(n),this.finish(!1))))),this},e.setBy=function(n,t){return void 0===t&&(t=0),this.setTo(f(this.axisManager.get(Object.keys(n)),function(t,e){return t+n[e]}),t)},e._createAnimationParam=function(t,e,n){var i=this.axisManager.get(),r=(null==n?void 0:n.event)||null;return{depaPos:i,destPos:t,duration:lt(e,this._options.minimumDuration,this._options.maximumDuration),delta:this.axisManager.getDelta(i,t),inputEvent:r,input:(null==n?void 0:n.input)||null,isTrusted:!!r,done:this.animationEnd}},e._animateLoop=function(t,i){var r,s,o,a=this;t.duration?(this._animateParam=u(u({},t),{startTime:(new Date).getTime()}),r=f(t.destPos,function(t){return t}),s=this._initState(this._animateParam),(o=function(){a._raf=null;var t=a._animateParam,e=a._getNextState(s),n=!a.eventManager.triggerChange(e.pos,s.pos);(s=e).finished?(t.destPos=a._getFinalPos(t.destPos,r),_(t.destPos,a.axisManager.get(Object.keys(t.destPos)))||a.eventManager.triggerChange(t.destPos,e.pos),i()):n?a.finish(!1):a._raf=k(o)})()):(this.eventManager.triggerChange(t.destPos),i())},e._getFinalPos=function(t,n){var i=this;return f(t,function(t,e){return t>=n[e]-1e-6&&t<=n[e]+1e-6?n[e]:(e=i._getRoundUnit(t,e),tt(t,e))})},e._getRoundUnit=function(t,e){var n=this._options.round,i=null;return n||(e=this.axisManager.getAxisOptions(e),e=Math.max(p(e.range[0]),p(e.range[1]),p(t)),i=1/Math.pow(10,e)),i||n},t}()),L=function(r){function t(t,e,n){void 0===t&&(t={}),void 0===e&&(e={}),void 0===n&&(n={});var i=r.call(this)||this;return i.axis=t,i._inputs=[],i.options=u({easing:function(t){return 1-Math.pow(1-t,3)},interruptable:!0,maximumDuration:1/0,minimumDuration:0,deceleration:6e-4,round:null,nested:!1},e),Object.keys(n).forEach(function(t){i.axis[t].startPos=n[t]}),i.interruptManager=new Tt(i.options),i.axisManager=new Ot(i.axis),i.eventManager=new Pt(i),i.animationManager=new Lt(i),i.inputObserver=new Rt(i),i.eventManager.setAnimationManager(i.animationManager),i.eventManager.triggerChange(i.axisManager.get()),i}i(t,r);var e=t.prototype;return e.connect=function(t,e){t="string"==typeof t?t.split(" "):t.concat();return~this._inputs.indexOf(e)&&this.disconnect(e),e.mapAxes(t),e.connect(this.inputObserver),this._inputs.push(e),this},e.disconnect=function(t){return t?0<=(t=this._inputs.indexOf(t))&&(this._inputs[t].disconnect(),this._inputs.splice(t,1)):(this._inputs.forEach(function(t){return t.disconnect()}),this._inputs=[]),this},e.get=function(t){return this.axisManager.get(t)},e.setTo=function(t,e){return this.animationManager.setTo(t,e=void 0===e?0:e),this},e.setBy=function(t,e){return this.animationManager.setBy(t,e=void 0===e?0:e),this},e.setOptions=function(t){return this.options=u(u({},this.options),t),this},e.setAxis=function(t){return this.axisManager.setAxis(t),this},e.stopAnimation=function(){return this.animationManager.stopAnimation(),this},e.updateAnimation=function(t){return this.animationManager.updateAnimation(t),this},e.isBounceArea=function(t){return this.axisManager.isOutside(t)},e.destroy=function(){this.disconnect(),this.eventManager.destroy()},t.VERSION="3.8.0",t.TRANSFORM=bt,t.DIRECTION_NONE=1,t.DIRECTION_LEFT=2,t.DIRECTION_RIGHT=4,t.DIRECTION_UP=8,t.DIRECTION_DOWN=16,t.DIRECTION_HORIZONTAL=6,t.DIRECTION_VERTICAL=D,t.DIRECTION_ALL=30,function(t,e,n,i){var r,s=arguments.length,o=s<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,n,i);else for(var a=t.length-1;0<=a;a--)(r=t[a])&&(o=(s<3?r(o):3<s?r(e,n,o):r(e,n))||o);return 3<s&&o&&Object.defineProperty(e,n,o),o}([N],t)}(V),d=function(){function t(t,e){var n=this;this.axes=[],this.element=null,this._enabled=!1,this._activeEvent=null,this._atRightEdge=!1,this._rightEdgeTimer=0,this._dragged=!1,this._preventClickWhenDragged=function(t){n._dragged&&(t.preventDefault(),t.stopPropagation()),n._dragged=!1},this._voidFunction=function(){},this.element=C(t),this.options=u({inputType:["touch","mouse","pointer"],inputButton:[I],scale:[1,1],thresholdAngle:45,threshold:0,preventClickOnDrag:!1,iOSEdgeSwipeThreshold:30,releaseOnScroll:!1,touchAction:null},e),this._onPanstart=this._onPanstart.bind(this),this._onPanmove=this._onPanmove.bind(this),this._onPanend=this._onPanend.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this._direction=rt(!!t[0],!!t[1]),this.axes=t},e.connect=function(t){return this._activeEvent&&(this._detachElementEvent(),this._detachWindowEvent(this._activeEvent)),this._attachElementEvent(t),this._originalCssProps=st(this.element,this.options,this._direction),this},e.disconnect=function(){return this._detachElementEvent(),this._detachWindowEvent(this._activeEvent),it(this._originalCssProps)||ot(this.element,this._originalCssProps),this._direction=1,this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e.release=function(){var t=this._activeEvent,e=t.prevEvent;return t.onRelease(),this._observer.release(this,e,[0,0]),this._detachWindowEvent(t),this},e._onPanstart=function(t){var e=this.options.inputButton,n=this._activeEvent,i=n.onEventStart(t,e);!i||!this._enabled||1<n.getTouches(t,e)||!1!==i.srcEvent.cancelable&&(t=this.options.iOSEdgeSwipeThreshold,this._dragged=!1,this._observer.hold(this,i),this._atRightEdge=Et&&i.center.x>window.innerWidth-t,this._attachWindowEvent(n),n.prevEvent=i)},e._onPanmove=function(t){var e=this,n=this.options,i=n.iOSEdgeSwipeThreshold,r=n.releaseOnScroll,s=n.inputButton,n=n.thresholdAngle,o=this._activeEvent,a=o.onEventMove(t,s),s=o.getTouches(t,s);if(0===s||r&&a&&!a.srcEvent.cancelable)this._onPanend(t);else if(a&&this._enabled&&!(1<s)){r=function(t,e){if(e<0||90<e)return 1;t=Math.abs(t);return e<t&&t<180-e?D:6}(a.angle,n);if(o.prevEvent&&Et){if(a.center.x<0)return void this.release();this._atRightEdge&&(clearTimeout(this._rightEdgeTimer),a.deltaX<-i?this._atRightEdge=!1:this._rightEdgeTimer=window.setTimeout(function(){return e.release()},100))}t=this._getOffset([a.offsetX,a.offsetY],[g(6,this._direction,r),g(D,this._direction,r)]),s=t.some(function(t){return 0!==t});s&&(!1!==a.srcEvent.cancelable&&a.srcEvent.preventDefault(),a.srcEvent.stopPropagation()),(a.preventSystemEvent=s)&&(this._dragged=!0,this._observer.change(this,a,E(this.axes,t))),o.prevEvent=a}},e._onPanend=function(t){var e=this.options.inputButton,n=this._activeEvent;n.onEventEnd(t),this._enabled&&0===n.getTouches(t,e)&&(this._detachWindowEvent(n),clearTimeout(this._rightEdgeTimer),t=n.prevEvent,e=this._getOffset([Math.abs(t.velocityX)*(t.offsetX<0?-1:1),Math.abs(t.velocityY)*(t.offsetY<0?-1:1)],[g(6,this._direction),g(D,this._direction)]),n.onRelease(),this._observer.release(this,t,e))},e._attachWindowEvent=function(t){var e=this;null!=t&&t.move.forEach(function(t){window.addEventListener(t,e._onPanmove,{passive:!1})}),null!=t&&t.end.forEach(function(t){window.addEventListener(t,e._onPanend,{passive:!1})})},e._detachWindowEvent=function(t){var e=this;null!=t&&t.move.forEach(function(t){window.removeEventListener(t,e._onPanmove)}),null!=t&&t.end.forEach(function(t){window.removeEventListener(t,e._onPanend)})},e._getOffset=function(t,e){var n=this.options.scale;return[e[0]?t[0]*n[0]:0,e[1]?t[1]*n[1]:0]},e._attachElementEvent=function(t){var e=this,n=ct(this.options.inputType),i=this.element;if(n){if(!i)throw new Error("Element to connect input does not exist.");this._observer=t,this._enabled=!0,this._activeEvent=n,this.options.preventClickOnDrag&&i.addEventListener("click",this._preventClickWhenDragged,!0),n.start.forEach(function(t){i.addEventListener(t,e._onPanstart)}),n.move.forEach(function(t){i.addEventListener(t,e._voidFunction)})}},e._detachElementEvent=function(){var e=this,t=this._activeEvent,n=this.element;n&&(this.options.preventClickOnDrag&&n.removeEventListener("click",this._preventClickWhenDragged,!0),null!=t&&t.start.forEach(function(t){n.removeEventListener(t,e._onPanstart)}),null!=t&&t.move.forEach(function(t){n.removeEventListener(t,e._voidFunction)})),this._enabled=!1,this._observer=null},t}(),jt={default:L,PanInput:d,RotatePanInput:function(n){function t(t,e){t=n.call(this,t,e)||this;return t._prevQuadrant=null,t._lastDiff=0,t}i(t,n);var e=t.prototype;return e.mapAxes=function(t){this._direction=L.DIRECTION_ALL,this.axes=t},e._onPanstart=function(t){var e,n=this._activeEvent,t=n.onEventStart(t,this.options.inputButton);t&&this.isEnabled()&&(e=this.element.getBoundingClientRect(),this._observer.hold(this,t),this._attachWindowEvent(n),this._coefficientForDistanceToAngle=360/(e.width*Math.PI),this._rotateOrigin=[e.left+(e.width-1)/2,e.top+(e.height-1)/2],this._prevAngle=null,this._triggerChange(t),n.prevEvent=t)},e._onPanmove=function(t){var e=this._activeEvent,t=e.onEventMove(t,this.options.inputButton);t&&this.isEnabled()&&(!1!==t.srcEvent.cancelable&&t.srcEvent.preventDefault(),t.srcEvent.stopPropagation(),this._triggerChange(t),e.prevEvent=t)},e._onPanend=function(t){var e,n,i=this._activeEvent;i.onEventEnd(t),this.isEnabled()&&(t=i.prevEvent,this._triggerChange(t),n=t.velocityX,e=t.velocityY,n=Math.sqrt(n*n+e*e)*(0<this._lastDiff?-1:1),i.onRelease(),this._observer.release(this,t,[n*this._coefficientForDistanceToAngle]),this._detachWindowEvent(i))},e._triggerChange=function(t){var e=this._getPosFromOrigin(t.center.x,t.center.y),n=e.x,e=e.y,n=nt(n,e),e=n<0?360+n:n,n=this._getQuadrant(t.center.x,t.center.y),i=this._getDifference(this._prevAngle,e,this._prevQuadrant,n);this._prevAngle=e,this._prevQuadrant=n,0!==i&&(this._lastDiff=i,this._observer.change(this,t,E(this.axes,[-i])))},e._getDifference=function(t,e,n,i){n=null===t?0:1===n&&4===i?-t-(360-e):4===n&&1===i?360-t+e:e-t;return n},e._getPosFromOrigin=function(t,e){return{x:t-this._rotateOrigin[0],y:this._rotateOrigin[1]-e}},e._getQuadrant=function(t,e){var t=this._getPosFromOrigin(t,e),e=t.x,t=t.y,n=0;return 0<=e&&0<=t?n=1:e<0&&0<=t?n=2:e<0&&t<0?n=3:0<=e&&t<0&&(n=4),n},t}(d),PinchInput:function(){function t(t,e){this.axes=[],this.element=null,this._pinchFlag=!1,this._enabled=!1,this._activeEvent=null,this.element=C(t),this.options=u({scale:1,threshold:0,inputType:["touch","pointer"],touchAction:"none"},e),this._onPinchStart=this._onPinchStart.bind(this),this._onPinchMove=this._onPinchMove.bind(this),this._onPinchEnd=this._onPinchEnd.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this.axes=t},e.connect=function(t){return this._activeEvent&&this._detachEvent(),this._attachEvent(t),this._originalCssProps=st(this.element,this.options,30),this},e.disconnect=function(){return this._detachEvent(),it(this._originalCssProps)||ot(this.element,this._originalCssProps),this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e._onPinchStart=function(t){var e=this._activeEvent,n=e.onEventStart(t);n&&this._enabled&&2===e.getTouches(t)&&(this._baseValue=this._observer.get(this)[this.axes[0]],this._observer.hold(this,t),this._pinchFlag=!0,e.prevEvent=n)},e._onPinchMove=function(t){var e,n=this._activeEvent,i=n.onEventMove(t);i&&this._pinchFlag&&this._enabled&&2===n.getTouches(t)&&(e=this._getOffset(i.scale,n.prevEvent.scale),this._observer.change(this,t,E(this.axes,[e])),n.prevEvent=i)},e._onPinchEnd=function(t){var e=this._activeEvent;e.onEventEnd(t),!this._pinchFlag||!this._enabled||2<=e.getTouches(t)||(e.onRelease(),this._observer.release(this,t,[0],0),this._baseValue=null,this._pinchFlag=!1)},e._attachEvent=function(t){var e=this,n=ct(this.options.inputType),i=this.element;if(n){if(!i)throw new Error("Element to connect input does not exist.");this._observer=t,this._enabled=!0,(this._activeEvent=n).start.forEach(function(t){i.addEventListener(t,e._onPinchStart,!1)}),n.move.forEach(function(t){i.addEventListener(t,e._onPinchMove,!1)}),n.end.forEach(function(t){i.addEventListener(t,e._onPinchEnd,!1)})}},e._detachEvent=function(){var e=this,t=this._activeEvent,n=this.element;n&&(null!=t&&t.start.forEach(function(t){n.removeEventListener(t,e._onPinchStart,!1)}),null!=t&&t.move.forEach(function(t){n.removeEventListener(t,e._onPinchMove,!1)}),null!=t&&t.end.forEach(function(t){n.removeEventListener(t,e._onPinchEnd,!1)})),this._enabled=!1,this._observer=null},e._getOffset=function(t,e){return this._baseValue*(t-(e=void 0===e?1:e))*this.options.scale},t}(),WheelInput:function(){function t(t,e){this.axes=[],this.element=null,this._enabled=!1,this._holding=!1,this._timer=null,this.element=C(t),this.options=u({scale:1,releaseDelay:300,useNormalized:!0,useAnimation:!1},e),this._onWheel=this._onWheel.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this._direction=rt(!!t[1],!!t[0]),this.axes=t},e.connect=function(t){return this._detachEvent(),this._attachEvent(t),this},e.disconnect=function(){return this._detachEvent(),this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e._onWheel=function(t){var e,n=this;!this._enabled||0===(e=this._getOffset([t.deltaY,t.deltaX],[g(D,this._direction),g(6,this._direction)]))[0]&&0===e[1]||(t.preventDefault(),this._holding||(this._observer.hold(this,t),this._holding=!0),this._observer.change(this,t,E(this.axes,e),this.options.useAnimation),clearTimeout(this._timer),this._timer=setTimeout(function(){n._holding&&(n._holding=!1,n._observer.release(n,t,[0]))},this.options.releaseDelay))},e._getOffset=function(t,e){var n=this.options.scale,i=this.options.useNormalized;return[e[0]&&t[0]?(0<t[0]?-1:1)*(i?1:Math.abs(t[0]))*n:0,e[1]&&t[1]?(0<t[1]?-1:1)*(i?1:Math.abs(t[1]))*n:0]},e._attachEvent=function(t){var e=this.element;if(!e)throw new Error("Element to connect input does not exist.");this._observer=t,e.addEventListener("wheel",this._onWheel),this._enabled=!0},e._detachEvent=function(){this.element&&this.element.removeEventListener("wheel",this._onWheel),this._enabled=!1,this._observer=null,this._timer&&(clearTimeout(this._timer),this._timer=null)},t}(),MoveKeyInput:function(){function t(t,e){this.axes=[],this.element=null,this._enabled=!1,this._holding=!1,this._timer=null,this.element=C(t),this.options=u({scale:[1,1]},e),this._onKeydown=this._onKeydown.bind(this),this._onKeyup=this._onKeyup.bind(this)}var e=t.prototype;return e.mapAxes=function(t){this.axes=t},e.connect=function(t){return this._detachEvent(),"0"!==this.element.getAttribute("tabindex")&&this.element.setAttribute("tabindex","0"),this._attachEvent(t),this},e.disconnect=function(){return this._detachEvent(),this},e.destroy=function(){this.disconnect(),this.element=null},e.enable=function(){return this._enabled=!0,this},e.disable=function(){return this._enabled=!1,this},e.isEnabled=function(){return this._enabled},e._onKeydown=function(t){if(this._enabled){var e,n=!0,i=1,r=-1;switch(t.keyCode){case 37:case 65:i=-1;break;case 39:case 68:break;case 40:case 83:i=-1,r=1;break;case 38:case 87:r=1;break;default:n=!1}(n=-1===r&&!this.axes[0]||1===r&&!this.axes[1]?!1:n)&&(t.preventDefault(),e=-1===r?[+this.options.scale[0]*i,0]:[0,+this.options.scale[1]*i],this._holding||(this._observer.hold(this,t),this._holding=!0),clearTimeout(this._timer),this._observer.change(this,t,E(this.axes,e)))}},e._onKeyup=function(t){var e=this;this._holding&&(clearTimeout(this._timer),this._timer=setTimeout(function(){e._observer.release(e,t,[0,0]),e._holding=!1},80))},e._attachEvent=function(t){var e=this.element;if(!e)throw new Error("Element to connect input does not exist.");this._observer=t,e.addEventListener("keydown",this._onKeydown,!1),e.addEventListener("keypress",this._onKeydown,!1),e.addEventListener("keyup",this._onKeyup,!1),this._enabled=!0},e._detachEvent=function(){var t=this.element;t&&(t.removeEventListener("keydown",this._onKeydown,!1),t.removeEventListener("keypress",this._onKeydown,!1),t.removeEventListener("keyup",this._onKeyup,!1)),this._enabled=!1,this._observer=null},t}(),AXES_METHODS:gt,AXES_EVENTS:mt,REACTIVE_AXES:{methods:gt,events:mt,created:function(t){return new L(t.axis,t.options)},on:function(t,e,n){t.on(e,n)},off:function(t,e,n){t.off(e,n)},destroy:function(t){t.destroy()}}};for(ft in jt)L[ft]=jt[ft];return L}); | ||
//# sourceMappingURL=axes.pkgd.min.js.map |
@@ -16,2 +16,3 @@ var __extends = (this && this.__extends) || (function () { | ||
})(); | ||
import { MOUSE_LEFT, MOUSE_MIDDLE, MOUSE_RIGHT } from "../const"; | ||
import { EventInput } from "./EventInput"; | ||
@@ -49,3 +50,10 @@ var MouseEventInput = (function (_super) { | ||
}; | ||
MouseEventInput.prototype.getTouches = function () { | ||
MouseEventInput.prototype.getTouches = function (event, inputButton) { | ||
if (inputButton) { | ||
var buttonCodeMap = { 1: MOUSE_LEFT, 2: MOUSE_MIDDLE, 3: MOUSE_RIGHT }; | ||
return this._isValidButton(buttonCodeMap[event.which], inputButton) && | ||
this.end.indexOf(event.type) === -1 | ||
? 1 | ||
: 0; | ||
} | ||
return 0; | ||
@@ -52,0 +60,0 @@ }; |
@@ -128,12 +128,19 @@ var __assign = (this && this.__assign) || function () { | ||
MoveKeyInput.prototype._attachEvent = function (observer) { | ||
var element = this.element; | ||
if (!element) { | ||
throw new Error("Element to connect input does not exist."); | ||
} | ||
this._observer = observer; | ||
this.element.addEventListener("keydown", this._onKeydown, false); | ||
this.element.addEventListener("keypress", this._onKeydown, false); | ||
this.element.addEventListener("keyup", this._onKeyup, false); | ||
element.addEventListener("keydown", this._onKeydown, false); | ||
element.addEventListener("keypress", this._onKeydown, false); | ||
element.addEventListener("keyup", this._onKeyup, false); | ||
this._enabled = true; | ||
}; | ||
MoveKeyInput.prototype._detachEvent = function () { | ||
this.element.removeEventListener("keydown", this._onKeydown, false); | ||
this.element.removeEventListener("keypress", this._onKeydown, false); | ||
this.element.removeEventListener("keyup", this._onKeyup, false); | ||
var element = this.element; | ||
if (element) { | ||
element.removeEventListener("keydown", this._onKeydown, false); | ||
element.removeEventListener("keypress", this._onKeydown, false); | ||
element.removeEventListener("keyup", this._onKeyup, false); | ||
} | ||
this._enabled = false; | ||
@@ -140,0 +147,0 @@ this._observer = null; |
@@ -26,2 +26,3 @@ var __assign = (this && this.__assign) || function () { | ||
function PanInput(el, options) { | ||
var _this = this; | ||
this.axes = []; | ||
@@ -33,5 +34,13 @@ this.element = null; | ||
this._rightEdgeTimer = 0; | ||
this._dragged = false; | ||
this._preventClickWhenDragged = function (e) { | ||
if (_this._dragged) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
} | ||
_this._dragged = false; | ||
}; | ||
this._voidFunction = function () { }; | ||
this.element = $(el); | ||
this.options = __assign({ inputType: ["touch", "mouse", "pointer"], inputButton: [MOUSE_LEFT], scale: [1, 1], thresholdAngle: 45, threshold: 0, iOSEdgeSwipeThreshold: IOS_EDGE_THRESHOLD, releaseOnScroll: false, touchAction: null }, options); | ||
this.options = __assign({ inputType: ["touch", "mouse", "pointer"], inputButton: [MOUSE_LEFT], scale: [1, 1], thresholdAngle: 45, threshold: 0, preventClickOnDrag: false, iOSEdgeSwipeThreshold: IOS_EDGE_THRESHOLD, releaseOnScroll: false, touchAction: null }, options); | ||
this._onPanstart = this._onPanstart.bind(this); | ||
@@ -87,5 +96,6 @@ this._onPanmove = this._onPanmove.bind(this); | ||
PanInput.prototype._onPanstart = function (event) { | ||
var inputButton = this.options.inputButton; | ||
var activeEvent = this._activeEvent; | ||
var panEvent = activeEvent.onEventStart(event, this.options.inputButton); | ||
if (!panEvent || !this._enabled || activeEvent.getTouches(event) > 1) { | ||
var panEvent = activeEvent.onEventStart(event, inputButton); | ||
if (!panEvent || !this._enabled || activeEvent.getTouches(event, inputButton) > 1) { | ||
return; | ||
@@ -95,2 +105,3 @@ } | ||
var edgeThreshold = this.options.iOSEdgeSwipeThreshold; | ||
this._dragged = false; | ||
this._observer.hold(this, panEvent); | ||
@@ -105,13 +116,15 @@ this._atRightEdge = | ||
var _this = this; | ||
var _a = this.options, iOSEdgeSwipeThreshold = _a.iOSEdgeSwipeThreshold, releaseOnScroll = _a.releaseOnScroll, inputButton = _a.inputButton, thresholdAngle = _a.thresholdAngle; | ||
var activeEvent = this._activeEvent; | ||
var panEvent = activeEvent.onEventMove(event, this.options.inputButton); | ||
if (!panEvent || !this._enabled || activeEvent.getTouches(event) > 1) { | ||
var panEvent = activeEvent.onEventMove(event, inputButton); | ||
var touches = activeEvent.getTouches(event, inputButton); | ||
if (touches === 0 || | ||
(releaseOnScroll && panEvent && !panEvent.srcEvent.cancelable)) { | ||
this._onPanend(event); | ||
return; | ||
} | ||
var _a = this.options, iOSEdgeSwipeThreshold = _a.iOSEdgeSwipeThreshold, releaseOnScroll = _a.releaseOnScroll; | ||
var userDirection = getDirectionByAngle(panEvent.angle, this.options.thresholdAngle); | ||
if (releaseOnScroll && !panEvent.srcEvent.cancelable) { | ||
this._onPanend(event); | ||
if (!panEvent || !this._enabled || touches > 1) { | ||
return; | ||
} | ||
var userDirection = getDirectionByAngle(panEvent.angle, thresholdAngle); | ||
if (activeEvent.prevEvent && IS_IOS_SAFARI) { | ||
@@ -147,2 +160,3 @@ var swipeLeftToRight = panEvent.center.x < 0; | ||
if (prevent) { | ||
this._dragged = true; | ||
this._observer.change(this, panEvent, toAxis(this.axes, offset)); | ||
@@ -153,5 +167,6 @@ } | ||
PanInput.prototype._onPanend = function (event) { | ||
var inputButton = this.options.inputButton; | ||
var activeEvent = this._activeEvent; | ||
activeEvent.onEventEnd(event); | ||
if (!this._enabled || activeEvent.getTouches(event) !== 0) { | ||
if (!this._enabled || activeEvent.getTouches(event, inputButton) !== 0) { | ||
return; | ||
@@ -200,15 +215,20 @@ } | ||
var activeEvent = convertInputType(this.options.inputType); | ||
var element = this.element; | ||
if (!activeEvent) { | ||
return; | ||
} | ||
if (!element) { | ||
throw new Error("Element to connect input does not exist."); | ||
} | ||
this._observer = observer; | ||
this._enabled = true; | ||
this._activeEvent = activeEvent; | ||
if (this.options.preventClickOnDrag) { | ||
element.addEventListener("click", this._preventClickWhenDragged, true); | ||
} | ||
activeEvent.start.forEach(function (event) { | ||
var _a; | ||
(_a = _this.element) === null || _a === void 0 ? void 0 : _a.addEventListener(event, _this._onPanstart); | ||
element.addEventListener(event, _this._onPanstart); | ||
}); | ||
activeEvent.move.forEach(function (event) { | ||
var _a; | ||
(_a = _this.element) === null || _a === void 0 ? void 0 : _a.addEventListener(event, _this._voidFunction); | ||
element.addEventListener(event, _this._voidFunction); | ||
}); | ||
@@ -219,10 +239,14 @@ }; | ||
var activeEvent = this._activeEvent; | ||
activeEvent === null || activeEvent === void 0 ? void 0 : activeEvent.start.forEach(function (event) { | ||
var _a; | ||
(_a = _this.element) === null || _a === void 0 ? void 0 : _a.removeEventListener(event, _this._onPanstart); | ||
}); | ||
activeEvent === null || activeEvent === void 0 ? void 0 : activeEvent.move.forEach(function (event) { | ||
var _a; | ||
(_a = _this.element) === null || _a === void 0 ? void 0 : _a.removeEventListener(event, _this._voidFunction); | ||
}); | ||
var element = this.element; | ||
if (element) { | ||
if (this.options.preventClickOnDrag) { | ||
element.removeEventListener("click", this._preventClickWhenDragged, true); | ||
} | ||
activeEvent === null || activeEvent === void 0 ? void 0 : activeEvent.start.forEach(function (event) { | ||
element.removeEventListener(event, _this._onPanstart); | ||
}); | ||
activeEvent === null || activeEvent === void 0 ? void 0 : activeEvent.move.forEach(function (event) { | ||
element.removeEventListener(event, _this._voidFunction); | ||
}); | ||
} | ||
this._enabled = false; | ||
@@ -229,0 +253,0 @@ this._observer = null; |
@@ -101,5 +101,9 @@ var __assign = (this && this.__assign) || function () { | ||
var activeEvent = convertInputType(this.options.inputType); | ||
var element = this.element; | ||
if (!activeEvent) { | ||
return; | ||
} | ||
if (!element) { | ||
throw new Error("Element to connect input does not exist."); | ||
} | ||
this._observer = observer; | ||
@@ -109,9 +113,9 @@ this._enabled = true; | ||
activeEvent.start.forEach(function (event) { | ||
_this.element.addEventListener(event, _this._onPinchStart, false); | ||
element.addEventListener(event, _this._onPinchStart, false); | ||
}); | ||
activeEvent.move.forEach(function (event) { | ||
_this.element.addEventListener(event, _this._onPinchMove, false); | ||
element.addEventListener(event, _this._onPinchMove, false); | ||
}); | ||
activeEvent.end.forEach(function (event) { | ||
_this.element.addEventListener(event, _this._onPinchEnd, false); | ||
element.addEventListener(event, _this._onPinchEnd, false); | ||
}); | ||
@@ -122,11 +126,14 @@ }; | ||
var activeEvent = this._activeEvent; | ||
activeEvent === null || activeEvent === void 0 ? void 0 : activeEvent.start.forEach(function (event) { | ||
_this.element.removeEventListener(event, _this._onPinchStart, false); | ||
}); | ||
activeEvent === null || activeEvent === void 0 ? void 0 : activeEvent.move.forEach(function (event) { | ||
_this.element.removeEventListener(event, _this._onPinchMove, false); | ||
}); | ||
activeEvent === null || activeEvent === void 0 ? void 0 : activeEvent.end.forEach(function (event) { | ||
_this.element.removeEventListener(event, _this._onPinchEnd, false); | ||
}); | ||
var element = this.element; | ||
if (element) { | ||
activeEvent === null || activeEvent === void 0 ? void 0 : activeEvent.start.forEach(function (event) { | ||
element.removeEventListener(event, _this._onPinchStart, false); | ||
}); | ||
activeEvent === null || activeEvent === void 0 ? void 0 : activeEvent.move.forEach(function (event) { | ||
element.removeEventListener(event, _this._onPinchMove, false); | ||
}); | ||
activeEvent === null || activeEvent === void 0 ? void 0 : activeEvent.end.forEach(function (event) { | ||
element.removeEventListener(event, _this._onPinchEnd, false); | ||
}); | ||
} | ||
this._enabled = false; | ||
@@ -133,0 +140,0 @@ this._observer = null; |
@@ -102,8 +102,15 @@ var __assign = (this && this.__assign) || function () { | ||
WheelInput.prototype._attachEvent = function (observer) { | ||
var element = this.element; | ||
if (!element) { | ||
throw new Error("Element to connect input does not exist."); | ||
} | ||
this._observer = observer; | ||
this.element.addEventListener("wheel", this._onWheel); | ||
element.addEventListener("wheel", this._onWheel); | ||
this._enabled = true; | ||
}; | ||
WheelInput.prototype._detachEvent = function () { | ||
this.element.removeEventListener("wheel", this._onWheel); | ||
var element = this.element; | ||
if (element) { | ||
this.element.removeEventListener("wheel", this._onWheel); | ||
} | ||
this._enabled = false; | ||
@@ -110,0 +117,0 @@ this._observer = null; |
{ | ||
"name": "@egjs/axes", | ||
"version": "3.7.0", | ||
"version": "3.8.0", | ||
"description": "A module used to change the information of user action entered by various input devices such as touch screen or mouse into the logical virtual coordinates. You can easily create a UI that responds to user actions.", | ||
@@ -5,0 +5,0 @@ "sideEffects": false, |
@@ -38,3 +38,3 @@ /* | ||
public abstract getTouches(event: InputEventType): number; | ||
public abstract getTouches(event: InputEventType, inputButton?: string[]): number; | ||
@@ -41,0 +41,0 @@ protected abstract _getScale(event: InputEventType): number; |
@@ -6,2 +6,3 @@ /* | ||
import { InputEventType, ExtendedEvent } from "../types"; | ||
import { MOUSE_LEFT, MOUSE_MIDDLE, MOUSE_RIGHT } from "../const"; | ||
@@ -49,3 +50,10 @@ import { EventInput } from "./EventInput"; | ||
public getTouches(): number { | ||
public getTouches(event: InputEventType, inputButton?: string[]): number { | ||
if (inputButton) { | ||
const buttonCodeMap = { 1: MOUSE_LEFT, 2: MOUSE_MIDDLE, 3: MOUSE_RIGHT }; | ||
return this._isValidButton(buttonCodeMap[event.which], inputButton) && | ||
this.end.indexOf(event.type) === -1 | ||
? 1 | ||
: 0; | ||
} | ||
return 0; | ||
@@ -52,0 +60,0 @@ } |
@@ -46,3 +46,3 @@ /* | ||
* const moveKey = new eg.Axes.MoveKeyInput("#area", { | ||
* scale: [1, 1] | ||
* scale: [1, 1] | ||
* }); | ||
@@ -203,6 +203,10 @@ * | ||
private _attachEvent(observer: InputTypeObserver) { | ||
const element = this.element; | ||
if (!element) { | ||
throw new Error("Element to connect input does not exist."); | ||
} | ||
this._observer = observer; | ||
this.element.addEventListener("keydown", this._onKeydown, false); | ||
this.element.addEventListener("keypress", this._onKeydown, false); | ||
this.element.addEventListener("keyup", this._onKeyup, false); | ||
element.addEventListener("keydown", this._onKeydown, false); | ||
element.addEventListener("keypress", this._onKeydown, false); | ||
element.addEventListener("keyup", this._onKeyup, false); | ||
this._enabled = true; | ||
@@ -212,5 +216,8 @@ } | ||
private _detachEvent() { | ||
this.element.removeEventListener("keydown", this._onKeydown, false); | ||
this.element.removeEventListener("keypress", this._onKeydown, false); | ||
this.element.removeEventListener("keyup", this._onKeyup, false); | ||
const element = this.element; | ||
if (element) { | ||
element.removeEventListener("keydown", this._onKeydown, false); | ||
element.removeEventListener("keypress", this._onKeydown, false); | ||
element.removeEventListener("keyup", this._onKeyup, false); | ||
} | ||
this._enabled = false; | ||
@@ -217,0 +224,0 @@ this._observer = null; |
@@ -38,2 +38,3 @@ /* | ||
threshold?: number; | ||
preventClickOnDrag?: boolean; | ||
iOSEdgeSwipeThreshold?: number; | ||
@@ -81,2 +82,3 @@ releaseOnScroll?: boolean; | ||
* @param {Number} [threshold=0] Minimal pan distance required before recognizing <ko>사용자의 Pan 동작을 인식하기 위해산 최소한의 거리</ko> | ||
* @param {Boolean} [preventClickOnDrag=false] Whether to cancel the {@link https://developer.mozilla.org/en/docs/Web/API/Element/click_event click} event when the user finishes dragging more than 1 pixel <ko>사용자가 1픽셀 이상 드래그를 마쳤을 때 {@link https://developer.mozilla.org/ko/docs/Web/API/Element/click_event click} 이벤트 취소 여부/ko> | ||
* @param {Number} [iOSEdgeSwipeThreshold=30] Area (px) that can go to the next page when swiping the right edge in iOS safari <ko>iOS Safari에서 오른쪽 엣지를 스와이프 하는 경우 다음 페이지로 넘어갈 수 있는 영역(px)</ko> | ||
@@ -120,2 +122,3 @@ * @param {String} [touchAction=null] Value that overrides the element's "touch-action" css property. If set to null, it is automatically set to prevent scrolling in the direction of the connected axis. <ko>엘리먼트의 "touch-action" CSS 속성을 덮어쓰는 값. 만약 null로 설정된 경우, 연결된 축 방향으로의 스크롤을 방지하게끔 자동으로 설정된다.</ko> | ||
private _rightEdgeTimer = 0; | ||
private _dragged = false; | ||
@@ -133,2 +136,3 @@ /** | ||
threshold: 0, | ||
preventClickOnDrag: false, | ||
iOSEdgeSwipeThreshold: IOS_EDGE_THRESHOLD, | ||
@@ -226,5 +230,6 @@ releaseOnScroll: false, | ||
protected _onPanstart(event: InputEventType) { | ||
const inputButton = this.options.inputButton; | ||
const activeEvent = this._activeEvent; | ||
const panEvent = activeEvent.onEventStart(event, this.options.inputButton); | ||
if (!panEvent || !this._enabled || activeEvent.getTouches(event) > 1) { | ||
const panEvent = activeEvent.onEventStart(event, inputButton); | ||
if (!panEvent || !this._enabled || activeEvent.getTouches(event, inputButton) > 1) { | ||
return; | ||
@@ -235,2 +240,3 @@ } | ||
this._dragged = false; | ||
this._observer.hold(this, panEvent); | ||
@@ -245,19 +251,26 @@ this._atRightEdge = | ||
protected _onPanmove(event: InputEventType) { | ||
const { | ||
iOSEdgeSwipeThreshold, | ||
releaseOnScroll, | ||
inputButton, | ||
thresholdAngle, | ||
} = this.options; | ||
const activeEvent = this._activeEvent; | ||
const panEvent = activeEvent.onEventMove(event, this.options.inputButton); | ||
if (!panEvent || !this._enabled || activeEvent.getTouches(event) > 1) { | ||
const panEvent = activeEvent.onEventMove(event, inputButton); | ||
const touches = activeEvent.getTouches(event, inputButton); | ||
if ( | ||
touches === 0 || | ||
(releaseOnScroll && panEvent && !panEvent.srcEvent.cancelable) | ||
) { | ||
this._onPanend(event); | ||
return; | ||
} | ||
const { iOSEdgeSwipeThreshold, releaseOnScroll } = this.options; | ||
const userDirection = getDirectionByAngle( | ||
panEvent.angle, | ||
this.options.thresholdAngle | ||
); | ||
if (releaseOnScroll && !panEvent.srcEvent.cancelable) { | ||
this._onPanend(event); | ||
if (!panEvent || !this._enabled || touches > 1) { | ||
return; | ||
} | ||
const userDirection = getDirectionByAngle(panEvent.angle, thresholdAngle); | ||
if (activeEvent.prevEvent && IS_IOS_SAFARI) { | ||
@@ -301,2 +314,3 @@ const swipeLeftToRight = panEvent.center.x < 0; | ||
if (prevent) { | ||
this._dragged = true; | ||
this._observer.change(this, panEvent, toAxis(this.axes, offset)); | ||
@@ -308,5 +322,6 @@ } | ||
protected _onPanend(event: InputEventType) { | ||
const inputButton = this.options.inputButton; | ||
const activeEvent = this._activeEvent; | ||
activeEvent.onEventEnd(event); | ||
if (!this._enabled || activeEvent.getTouches(event) !== 0) { | ||
if (!this._enabled || activeEvent.getTouches(event, inputButton) !== 0) { | ||
return; | ||
@@ -359,14 +374,21 @@ } | ||
const activeEvent = convertInputType(this.options.inputType); | ||
const element = this.element; | ||
if (!activeEvent) { | ||
return; | ||
} | ||
if (!element) { | ||
throw new Error("Element to connect input does not exist."); | ||
} | ||
this._observer = observer; | ||
this._enabled = true; | ||
this._activeEvent = activeEvent; | ||
if (this.options.preventClickOnDrag) { | ||
element.addEventListener("click", this._preventClickWhenDragged, true); | ||
} | ||
activeEvent.start.forEach((event) => { | ||
this.element?.addEventListener(event, this._onPanstart); | ||
element.addEventListener(event, this._onPanstart); | ||
}); | ||
// adding event listener to element prevents invalid behavior in iOS Safari | ||
activeEvent.move.forEach((event) => { | ||
this.element?.addEventListener(event, this._voidFunction); | ||
element.addEventListener(event, this._voidFunction); | ||
}); | ||
@@ -377,8 +399,14 @@ } | ||
const activeEvent = this._activeEvent; | ||
activeEvent?.start.forEach((event) => { | ||
this.element?.removeEventListener(event, this._onPanstart); | ||
}); | ||
activeEvent?.move.forEach((event) => { | ||
this.element?.removeEventListener(event, this._voidFunction); | ||
}); | ||
const element = this.element; | ||
if (element) { | ||
if (this.options.preventClickOnDrag) { | ||
element.removeEventListener("click", this._preventClickWhenDragged, true); | ||
} | ||
activeEvent?.start.forEach((event) => { | ||
element.removeEventListener(event, this._onPanstart); | ||
}); | ||
activeEvent?.move.forEach((event) => { | ||
element.removeEventListener(event, this._voidFunction); | ||
}); | ||
} | ||
this._enabled = false; | ||
@@ -388,3 +416,11 @@ this._observer = null; | ||
private _preventClickWhenDragged = (e: PointerEvent | MouseEvent) => { | ||
if (this._dragged) { | ||
e.preventDefault(); | ||
e.stopPropagation(); | ||
} | ||
this._dragged = false; | ||
}; | ||
private _voidFunction = () => {}; | ||
} |
@@ -42,3 +42,3 @@ /* | ||
* const pinch = new eg.Axes.PinchInput("#area", { | ||
* scale: 1 | ||
* scale: 1 | ||
* }); | ||
@@ -195,5 +195,9 @@ * | ||
const activeEvent = convertInputType(this.options.inputType); | ||
const element = this.element; | ||
if (!activeEvent) { | ||
return; | ||
} | ||
if (!element) { | ||
throw new Error("Element to connect input does not exist."); | ||
} | ||
this._observer = observer; | ||
@@ -203,9 +207,9 @@ this._enabled = true; | ||
activeEvent.start.forEach((event) => { | ||
this.element.addEventListener(event, this._onPinchStart, false); | ||
element.addEventListener(event, this._onPinchStart, false); | ||
}); | ||
activeEvent.move.forEach((event) => { | ||
this.element.addEventListener(event, this._onPinchMove, false); | ||
element.addEventListener(event, this._onPinchMove, false); | ||
}); | ||
activeEvent.end.forEach((event) => { | ||
this.element.addEventListener(event, this._onPinchEnd, false); | ||
element.addEventListener(event, this._onPinchEnd, false); | ||
}); | ||
@@ -216,11 +220,14 @@ } | ||
const activeEvent = this._activeEvent; | ||
activeEvent?.start.forEach((event) => { | ||
this.element.removeEventListener(event, this._onPinchStart, false); | ||
}); | ||
activeEvent?.move.forEach((event) => { | ||
this.element.removeEventListener(event, this._onPinchMove, false); | ||
}); | ||
activeEvent?.end.forEach((event) => { | ||
this.element.removeEventListener(event, this._onPinchEnd, false); | ||
}); | ||
const element = this.element; | ||
if (element) { | ||
activeEvent?.start.forEach((event) => { | ||
element.removeEventListener(event, this._onPinchStart, false); | ||
}); | ||
activeEvent?.move.forEach((event) => { | ||
element.removeEventListener(event, this._onPinchMove, false); | ||
}); | ||
activeEvent?.end.forEach((event) => { | ||
element.removeEventListener(event, this._onPinchEnd, false); | ||
}); | ||
} | ||
this._enabled = false; | ||
@@ -227,0 +234,0 @@ this._observer = null; |
@@ -34,3 +34,3 @@ /* | ||
* const wheel = new eg.Axes.WheelInput("#area", { | ||
* scale: 1 | ||
* scale: 1 | ||
* }); | ||
@@ -190,4 +190,8 @@ * | ||
private _attachEvent(observer: InputTypeObserver) { | ||
const element = this.element; | ||
if (!element) { | ||
throw new Error("Element to connect input does not exist."); | ||
} | ||
this._observer = observer; | ||
this.element.addEventListener("wheel", this._onWheel); | ||
element.addEventListener("wheel", this._onWheel); | ||
this._enabled = true; | ||
@@ -197,3 +201,6 @@ } | ||
private _detachEvent() { | ||
this.element.removeEventListener("wheel", this._onWheel); | ||
const element = this.element; | ||
if (element) { | ||
this.element.removeEventListener("wheel", this._onWheel); | ||
} | ||
this._enabled = false; | ||
@@ -200,0 +207,0 @@ this._observer = null; |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
1943104
19144