{"version":3,"file":"hammer.min.js","sources":["hammer.js"],"names":["window","document","exportName","undefined","setTimeoutContext","fn","timeout","context","setTimeout","bindFn","invokeArrayArg","arg","Array","isArray","each","obj","iterator","i","len","forEach","length","call","hasOwnProperty","extend","dest","src","merge","keys","Object","inherit","child","base","properties","childP","baseP","prototype","create","constructor","_super","apply","arguments","boolOrFn","val","args","TYPE_FUNCTION","ifUndefined","val1","val2","addEventListeners","element","types","handler","splitStr","type","addEventListener","removeEventListeners","removeEventListener","hasParent","node","parent","parentNode","inStr","str","find","indexOf","trim","split","inArray","findByKey","toArray","slice","uniqueArray","key","sort","results","values","push","a","b","prefixed","property","prefix","prop","camelProp","toUpperCase","VENDOR_PREFIXES","uniqueId","_uniqueId","Input","manager","callback","self","this","target","options","inputTarget","domHandler","ev","enable","evEl","evTarget","evWin","createInputInstance","Type","SUPPORT_POINTER_EVENTS","PointerEventInput","SUPPORT_ONLY_TOUCH","TouchInput","SUPPORT_TOUCH","TouchMouseInput","MouseInput","inputHandler","eventType","input","pointersLen","pointers","changedPointersLen","changedPointers","isFirst","INPUT_START","isFinal","INPUT_END","INPUT_CANCEL","session","computeInputData","emit","recognize","prevInput","pointersLength","firstInput","simpleCloneInputData","firstMultiple","offsetCenter","center","getCenter","timeStamp","now","deltaTime","angle","getAngle","distance","getDistance","computeDeltaXY","offsetDirection","getDirection","deltaX","deltaY","scale","getScale","rotation","getRotation","computeIntervalInputData","srcEvent","offset","offsetDelta","prevDelta","x","y","velocity","velocityX","velocityY","direction","last","lastInterval","COMPUTE_INTERVAL","v","getVelocity","abs","clientX","round","clientY","DIRECTION_NONE","DIRECTION_LEFT","DIRECTION_RIGHT","DIRECTION_UP","DIRECTION_DOWN","p1","p2","props","PROPS_XY","Math","sqrt","atan2","PI","start","end","PROPS_CLIENT_XY","MOUSE_ELEMENT_EVENTS","MOUSE_WINDOW_EVENTS","allow","pressed","POINTER_ELEMENT_EVENTS","POINTER_WINDOW_EVENTS","store","pointerEvents","TOUCH_TARGET_EVENTS","targetIds","getTouches","allTouches","touches","INPUT_MOVE","identifier","targetTouches","changedTouches","changedTargetTouches","concat","touch","mouse","TouchAction","value","set","cleanTouchActions","actions","TOUCH_ACTION_NONE","hasPanX","TOUCH_ACTION_PAN_X","hasPanY","TOUCH_ACTION_PAN_Y","TOUCH_ACTION_MANIPULATION","TOUCH_ACTION_AUTO","Recognizer","id","defaults","state","STATE_POSSIBLE","simultaneous","requireFail","stateStr","STATE_CANCELLED","STATE_ENDED","STATE_CHANGED","STATE_BEGAN","directionStr","getRecognizerByNameIfManager","otherRecognizer","recognizer","get","AttrRecognizer","PanRecognizer","pX","pY","PinchRecognizer","PressRecognizer","_timer","_input","RotateRecognizer","SwipeRecognizer","TapRecognizer","pTime","pCenter","count","Hammer","recognizers","preset","Manager","handlers","touchAction","toggleCssProps","item","add","recognizeWith","requireFailure","cssProps","name","style","triggerDomEvent","event","data","gestureEvent","createEvent","initEvent","gesture","dispatchEvent","TEST_ELEMENT","createElement","Date","MOBILE_REGEX","test","navigator","userAgent","INPUT_TYPE_TOUCH","INPUT_TYPE_PEN","INPUT_TYPE_MOUSE","INPUT_TYPE_KINECT","DIRECTION_HORIZONTAL","DIRECTION_VERTICAL","DIRECTION_ALL","destroy","MOUSE_INPUT_MAP","mousedown","mousemove","mouseup","button","which","pointerType","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM",2,3,4,5,"MSPointerEvent","removePointer","eventTypeNormalized","toLowerCase","replace","isTouch","storeIndex","pointerId","splice","TOUCH_INPUT_MAP","touchstart","touchmove","touchend","touchcancel","inputEvent","inputData","isMouse","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_COMPUTE","compute","update","getTouchAction","join","preventDefaults","prevented","preventDefault","hasNone","preventSrc","STATE_RECOGNIZED","STATE_FAILED","dropRecognizeWith","dropRequireFailure","index","hasRequireFailures","canRecognizeWith","withState","tryEmit","canEmit","inputDataClone","process","reset","attrTest","optionPointers","isRecognized","isValid","threshold","directionTest","hasMoved","inOut","time","validPointers","validMovement","validTime","clearTimeout","taps","interval","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","STOP","FORCED_STOP","stop","force","stopped","curRecognizer","existing","remove","on","events","off","Tap","Pan","Swipe","Pinch","Rotate","Press","define","amd","module","exports"],"mappings":"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"}