!function(t,e,n,i){"use strict";function r(t,e,n){return setTimeout(h(t,n),e)}function s(t,e,n){return Array.isArray(t)?(o(t,n[e],n),!0):!1}function o(t,e,n){var r;if(t)if(t.forEach)t.forEach(e,n);else if(t.length!==i)for(r=0;r\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=t.console&&(t.console.warn||t.console.log);return s&&s.call(t.console,r,i),e.apply(this,arguments)}}function u(t,e,n){var i,r=e.prototype;i=t.prototype=Object.create(r),i.constructor=t,i._super=r,n&&le(i,n)}function h(t,e){return function(){return t.apply(e,arguments)}}function c(t,e){return typeof t==de?t.apply(e?e[0]||i:i,e):t}function l(t,e){return t===i?e:t}function p(t,e,n){o(m(e),function(e){t.addEventListener(e,n,!1)})}function f(t,e,n){o(m(e),function(e){t.removeEventListener(e,n,!1)})}function d(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function v(t,e){return t.indexOf(e)>-1}function m(t){return t.trim().split(/\s+/g)}function g(t,e,n){if(t.indexOf&&!n)return t.indexOf(e);for(var i=0;in[e]}):i.sort()),i}function E(t,e){for(var n,r,s=e[0].toUpperCase()+e.slice(1),o=0;o1&&!n.firstMultiple?n.firstMultiple=x(e):1===r&&(n.firstMultiple=!1);var s=n.firstInput,o=n.firstMultiple,a=o?o.center:s.center,u=e.center=w(i);e.timeStamp=ge(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=z(a,u),e.distance=M(a,u),S(n,e),e.offsetDirection=R(e.deltaX,e.deltaY);var h=O(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=h.x,e.overallVelocityY=h.y,e.overallVelocity=me(h.x)>me(h.y)?h.x:h.y,e.scale=o?X(o.pointers,i):1,e.rotation=o?N(o.pointers,i):0,e.maxPointers=n.prevInput?e.pointers.length>n.prevInput.maxPointers?e.pointers.length:n.prevInput.maxPointers:e.pointers.length,P(n,e);var c=t.element;d(e.srcEvent.target,c)&&(c=e.srcEvent.target),e.target=c}function S(t,e){var n=e.center,i=t.offsetDelta||{},r=t.prevDelta||{},s=t.prevInput||{};(e.eventType===Oe||s.eventType===Me)&&(r=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},i=t.offsetDelta={x:n.x,y:n.y}),e.deltaX=r.x+(n.x-i.x),e.deltaY=r.y+(n.y-i.y)}function P(t,e){var n,r,s,o,a=t.lastInterval||e,u=e.timeStamp-a.timeStamp;if(e.eventType!=ze&&(u>we||a.velocity===i)){var h=e.deltaX-a.deltaX,c=e.deltaY-a.deltaY,l=O(u,h,c);r=l.x,s=l.y,n=me(l.x)>me(l.y)?l.x:l.y,o=R(h,c),t.lastInterval=e}else n=a.velocity,r=a.velocityX,s=a.velocityY,o=a.direction;e.velocity=n,e.velocityX=r,e.velocityY=s,e.direction=o}function x(t){for(var e=[],n=0;nr;)n+=t[r].clientX,i+=t[r].clientY,r++;return{x:ve(n/e),y:ve(i/e)}}function O(t,e,n){return{x:e/t||0,y:n/t||0}}function R(t,e){return t===e?Ne:me(t)>=me(e)?0>t?Xe:Ye:0>e?Fe:We}function M(t,e,n){n||(n=Le);var i=e[n[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return Math.sqrt(i*i+r*r)}function z(t,e,n){n||(n=Le);var i=e[n[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return 180*Math.atan2(r,i)/Math.PI}function N(t,e){return z(e[1],e[0],Ue)+z(t[1],t[0],Ue)}function X(t,e){return M(e[0],e[1],Ue)/M(t[0],t[1],Ue)}function Y(){this.evEl=je,this.evWin=Ge,this.pressed=!1,_.apply(this,arguments)}function F(){this.evEl=$e,this.evWin=Je,_.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function W(){this.evTarget=Qe,this.evWin=tn,this.started=!1,_.apply(this,arguments)}function q(t,e){var n=T(t.touches),i=T(t.changedTouches);return e&(Me|ze)&&(n=y(n.concat(i),"identifier",!0)),[n,i]}function k(){this.evTarget=nn,this.targetIds={},_.apply(this,arguments)}function H(t,e){var n=T(t.touches),i=this.targetIds;if(e&(Oe|Re)&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,s,o=T(t.changedTouches),a=[],u=this.target;if(s=n.filter(function(t){return d(t.target,u)}),e===Oe)for(r=0;r-1&&i.splice(t,1)};setTimeout(r,rn)}}function j(t){for(var e=t.srcEvent.clientX,n=t.srcEvent.clientY,i=0;i=s&&sn>=o)return!0}return!1}function G(t,e){this.manager=t,this.set(e)}function Z(t){if(v(t,ln))return ln;var e=v(t,pn),n=v(t,fn);return e&&n?ln:e||n?e?pn:fn:v(t,cn)?cn:hn}function B(){if(!an)return!1;var e={},n=t.CSS&&t.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach(function(i){e[i]=n?t.CSS.supports("touch-action",i):!0}),e}function $(t){this.options=le({},this.defaults,t||{}),this.id=I(),this.manager=null,this.options.enable=l(this.options.enable,!0),this.state=vn,this.simultaneous={},this.requireFail=[]}function J(t){return t&En?"cancel":t&Tn?"end":t&gn?"move":t&mn?"start":""}function K(t){return t==We?"down":t==Fe?"up":t==Xe?"left":t==Ye?"right":""}function Q(t,e){var n=e.manager;return n?n.get(t):t}function te(){$.apply(this,arguments)}function ee(){te.apply(this,arguments),this.pX=null,this.pY=null}function ne(){te.apply(this,arguments)}function ie(){$.apply(this,arguments),this._timer=null,this._input=null}function re(){te.apply(this,arguments)}function se(){te.apply(this,arguments)}function oe(){$.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function ae(t,e){return e=e||{},e.recognizers=l(e.recognizers,ae.defaults.preset),new ue(t,e)}function ue(t,e){this.options=le({},ae.defaults,e||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=b(this),this.touchAction=new G(this,this.options.touchAction),he(this,!0),o(this.options.recognizers,function(t){var e=this.add(new t[0](t[1]));t[2]&&e.recognizeWith(t[2]),t[3]&&e.requireFailure(t[3])},this)}function he(t,e){var n=t.element;if(n.style){var i;o(t.options.cssProps,function(r,s){i=E(n.style,s),e?(t.oldCssProps[i]=n.style[i],n.style[i]=r):n.style[i]=t.oldCssProps[i]||""}),e||(t.oldCssProps={})}}function ce(t,n){var i=e.createEvent("Event");i.initEvent(t,!0,!0),i.gesture=n,n.target.dispatchEvent(i)}var le,pe=["","webkit","Moz","MS","ms","o"],fe=e.createElement("div"),de="function",ve=Math.round,me=Math.abs,ge=Date.now;le="function"!=typeof Object.assign?function(t){if(t===i||null===t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),n=1;na&&(e.push(t),a=e.length-1):r&(Me|ze)&&(n=!0),0>a||(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),n&&e.splice(a,1))}});var Ke={touchstart:Oe,touchmove:Re,touchend:Me,touchcancel:ze},Qe="touchstart",tn="touchstart touchmove touchend touchcancel";u(W,_,{handler:function(t){var e=Ke[t.type];if(e===Oe&&(this.started=!0),this.started){var n=q.call(this,t,e);e&(Me|ze)&&n[0].length-n[1].length===0&&(this.started=!1),this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:De,srcEvent:t})}}});var en={touchstart:Oe,touchmove:Re,touchend:Me,touchcancel:ze},nn="touchstart touchmove touchend touchcancel";u(k,_,{handler:function(t){var e=en[t.type],n=H.call(this,t,e);n&&this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:De,srcEvent:t})}});var rn=2500,sn=25;u(L,_,{handler:function(t,e,n){var i=n.pointerType==De,r=n.pointerType==Pe;if(!(r&&n.sourceCapabilities&&n.sourceCapabilities.firesTouchEvents)){if(i)U.call(this,e,n);else if(r&&j.call(this,n))return;this.callback(t,e,n)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var on=E(fe.style,"touchAction"),an=on!==i,un="compute",hn="auto",cn="manipulation",ln="none",pn="pan-x",fn="pan-y",dn=B();G.prototype={set:function(t){t==un&&(t=this.compute()),an&&this.manager.element.style&&dn[t]&&(this.manager.element.style[on]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return o(this.manager.recognizers,function(e){c(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))}),Z(t.join(" "))},preventDefaults:function(t){var e=t.srcEvent,n=t.offsetDirection;if(this.manager.session.prevented)return e.preventDefault(),void 0;var i=this.actions,r=v(i,ln)&&!dn[ln],s=v(i,fn)&&!dn[fn],o=v(i,pn)&&!dn[pn];if(r){var a=1===t.pointers.length,u=t.distance<2,h=t.deltaTime<250;if(a&&u&&h)return}return o&&s?void 0:r||s&&n&qe||o&&n&ke?this.preventSrc(e):void 0},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var vn=1,mn=2,gn=4,Tn=8,yn=Tn,En=16,In=32;$.prototype={defaults:{},set:function(t){return le(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(s(t,"recognizeWith",this))return this;var e=this.simultaneous;return t=Q(t,this),e[t.id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return s(t,"dropRecognizeWith",this)?this:(t=Q(t,this),delete this.simultaneous[t.id],this)},requireFailure:function(t){if(s(t,"requireFailure",this))return this;var e=this.requireFail;return t=Q(t,this),-1===g(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(s(t,"dropRequireFailure",this))return this;t=Q(t,this);var e=g(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){function e(e){n.manager.emit(e,t)}var n=this,i=this.state;Tn>i&&e(n.options.event+J(i)),e(n.options.event),t.additionalEvent&&e(t.additionalEvent),i>=Tn&&e(n.options.event+J(i))},tryEmit:function(t){return this.canEmit()?this.emit(t):(this.state=In,void 0)},canEmit:function(){for(var t=0;ts?Xe:Ye,n=s!=this.pX,i=Math.abs(t.deltaX)):(r=0===o?Ne:0>o?Fe:We,n=o!=this.pY,i=Math.abs(t.deltaY))),t.direction=r,n&&i>e.threshold&&r&e.direction},attrTest:function(t){return te.prototype.attrTest.call(this,t)&&(this.state&mn||!(this.state&mn)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=K(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),u(ne,te,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[ln]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&mn)},emit:function(t){if(1!==t.scale){var e=t.scale<1?"in":"out";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),u(ie,$,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[hn]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distancee.time;if(this._input=t,!i||!n||t.eventType&(Me|ze)&&!s)this.reset();else if(t.eventType&Oe)this.reset(),this._timer=r(function(){this.state=yn,this.tryEmit()},e.time,this);else if(t.eventType&Me)return yn;return In},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===yn&&(t&&t.eventType&Me?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=ge(),this.manager.emit(this.options.event,this._input)))}}),u(re,te,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[ln]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&mn)}}),u(se,te,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:qe|ke,pointers:1},getTouchAction:function(){return ee.prototype.getTouchAction.call(this)},attrTest:function(t){var e,n=this.options.direction;return n&(qe|ke)?e=t.overallVelocity:n&qe?e=t.overallVelocityX:n&ke&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&n&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&me(e)>this.options.velocity&&t.eventType&Me},emit:function(t){var e=K(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),u(oe,$,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[cn]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distance