PageSourceSearch

https://m.wingu.se/packs/use-gesture-react.esm-DuPMJbBX.js

js wingu.se collected 2026-09-29 15:11:05 UTC 25,870 bytes, 2 lines download raw bytes

1import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{t}from"./react-C21x__mS.js";var n=e(t());function r(e,t,n){return Math.max(t,Math.min(e,n))}var i={toVector(e,t){return e===void 0&&(e=t),Array.isArray(e)?e:[e,e]},add(e,t){return[e[0]+t[0],e[1]+t[1]]},sub(e,t){return[e[0]-t[0],e[1]-t[1]]},addTo(e,t){e[0]+=t[0],e[1]+=t[1]},subTo(e,t){e[0]-=t[0],e[1]-=t[1]}};function a(e,t,n){return t===0||Math.abs(t)===1/0?e**(n*5):e*t*n/(t+n*e)}function o(e,t,n,i=.15){return i===0?r(e,t,n):e<t?-a(t-e,n-t,i)+t:e>n?+a(e-n,n-t,i)+n:e}function s(e,[t,n],[r,i]){let[[a,s],[c,l]]=e;return[o(t,a,s,r),o(n,c,l,i)]}function c(e,t){if(typeof e!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(typeof r!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function l(e){var t=c(e,`string`);return typeof t==`symbol`?t:String(t)}function u(e,t,n){return t=l(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function d(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function f(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?d(Object(n),!0).forEach(function(t){u(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):d(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var p={pointer:{start:`down`,change:`move`,end:`up`},mouse:{start:`down`,change:`move`,end:`up`},touch:{start:`start`,change:`move`,end:`end`},gesture:{start:`start`,change:`change`,end:`end`}};function m(e){return e?e[0].toUpperCase()+e.slice(1):``}var h=[`enter`,`leave`];function g(e=!1,t){return e&&!h.includes(t)}function _(e,t=``,n=!1){let r=p[e],i=r&&r[t]||t;return`on`+m(e)+m(i)+(g(n,i)?`Capture`:``)}var v=[`gotpointercapture`,`lostpointercapture`];function y(e){let t=e.substring(2).toLowerCase(),n=!!~t.indexOf(`passive`);n&&(t=t.replace(`passive`,``));let r=v.includes(t)?`capturecapture`:`capture`,i=!!~t.indexOf(r);return i&&(t=t.replace(`capture`,``)),{device:t,capture:i,passive:n}}function b(e,t=``){let n=p[e];return e+(n&&n[t]||t)}function x(e){return`touches`in e}function S(e){return x(e)?`touch`:`pointerType`in e?e.pointerType:`mouse`}function ee(e){return Array.from(e.touches).filter(t=>{var n,r;return t.target===e.currentTarget||((n=e.currentTarget)==null||(r=n.contains)==null?void 0:r.call(n,t.target))})}function te(e){return e.type===`touchend`||e.type===`touchcancel`?e.changedTouches:e.targetTouches}function C(e){return x(e)?te(e)[0]:e}function w(e,t){try{let n=t.clientX-e.clientX,r=t.clientY-e.clientY,i=(t.clientX+e.clientX)/2,a=(t.clientY+e.clientY)/2,o=Math.hypot(n,r);return{angle:-(Math.atan2(n,r)*180)/Math.PI,distance:o,origin:[i,a]}}catch{}return null}function ne(e){return ee(e).map(e=>e.identifier)}function T(e,t){let[n,r]=Array.from(e.touches).filter(e=>t.includes(e.identifier));return w(n,r)}function E(e){let t=C(e);return x(e)?t.identifier:t.pointerId}function D(e){let t=C(e);return[t.clientX,t.clientY]}var O=40,k=800;function re(e){let{deltaX:t,deltaY:n,deltaMode:r}=e;return r===1?(t*=O,n*=O):r===2&&(t*=k,n*=k),[t,n]}function ie(e){let t={};if(`buttons`in e&&(t.buttons=e.buttons),`shiftKey`in e){let{shiftKey:n,altKey:r,metaKey:i,ctrlKey:a}=e;Object.assign(t,{shiftKey:n,altKey:r,metaKey:i,ctrlKey:a})}return t}function A(e,...t){return typeof e==`function`?e(...t):e}function ae(){}function oe(...e){return e.length===0?ae:e.length===1?e[0]:function(){let t;for(let n of e)t=n.apply(this,arguments)||t;return t}}function j(e,t){return Object.assign({},t,e||{})}var se=32,M=class{constructor(e,t,n){this.ctrl=e,this.args=t,this.key=n,this.state||(this.state={},this.computeValues([0,0]),this.computeInitial(),this.init&&this.init(),this.reset())}get state(){return this.ctrl.state[this.key]}
1set state(e){this.ctrl.state[this.key]=e}get shared(){return this.ctrl.state.shared}get eventStore(){return this.ctrl.gestureEventStores[this.key]}get timeoutStore(){return this.ctrl.gestureTimeoutStores[this.key]}get config(){return this.ctrl.config[this.key]}get sharedConfig(){return this.ctrl.config.shared}get handler(){return this.ctrl.handlers[this.key]}reset(){let{state:e,shared:t,ingKey:n,args:r}=this;t[n]=e._active=e.active=e._blocked=e._force=!1,e._step=[!1,!1],e.intentional=!1,e._movement=[0,0],e._distance=[0,0],e._direction=[0,0],e._delta=[0,0],e._bounds=[[-1/0,1/0],[-1/0,1/0]],e.args=r,e.axis=void 0,e.memo=void 0,e.elapsedTime=e.timeDelta=0,e.direction=[0,0],e.distance=[0,0],e.overflow=[0,0],e._movementBound=[!1,!1],e.velocity=[0,0],e.movement=[0,0],e.delta=[0,0],e.timeStamp=0}start(e){let t=this.state,n=this.config;t._active||(this.reset(),this.computeInitial(),t._active=!0,t.target=e.target,t.currentTarget=e.currentTarget,t.lastOffset=n.from?A(n.from,t):t.offset,t.offset=t.lastOffset,t.startTime=t.timeStamp=e.timeStamp)}computeValues(e){let t=this.state;t._values=e,t.values=this.config.transform(e)}computeInitial(){let e=this.state;e._initial=e._values,e.initial=e.values}compute(e){let{state:t,config:n,shared:r}=this;t.args=this.args;let a=0;if(e&&(t.event=e,n.preventDefault&&e.cancelable&&t.event.preventDefault(),t.type=e.type,r.touches=this.ctrl.pointerIds.size||this.ctrl.touchIds.size,r.locked=!!document.pointerLockElement,Object.assign(r,ie(e)),r.down=r.pressed=r.buttons%2==1||r.touches>0,a=e.timeStamp-t.timeStamp,t.timeStamp=e.timeStamp,t.elapsedTime=t.timeStamp-t.startTime),t._active){let e=t._delta.map(Math.abs);i.addTo(t._distance,e)}this.axisIntent&&this.axisIntent(e);let[o,c]=t._movement,[l,u]=n.threshold,{_step:d,values:f}=t;if(n.hasCustomTransform?(d[0]===!1&&(d[0]=Math.abs(o)>=l&&f[0]),d[1]===!1&&(d[1]=Math.abs(c)>=u&&f[1])):(d[0]===!1&&(d[0]=Math.abs(o)>=l&&Math.sign(o)*l),d[1]===!1&&(d[1]=Math.abs(c)>=u&&Math.sign(c)*u)),t.intentional=d[0]!==!1||d[1]!==!1,!t.intentional)return;let p=[0,0];if(n.hasCustomTransform){let[e,t]=f;p[0]=d[0]===!1?0:e-d[0],p[1]=d[1]===!1?0:t-d[1]}else p[0]=d[0]===!1?0:o-d[0],p[1]=d[1]===!1?0:c-d[1];this.restrictToAxis&&!t._blocked&&this.restrictToAxis(p);let m=t.offset,h=t._active&&!t._blocked||t.active;h&&(t.first=t._active&&!t.active,t.last=!t._active&&t.active,t.active=r[this.ingKey]=t._active,e&&(t.first&&(`bounds`in n&&(t._bounds=A(n.bounds,t)),this.setup&&this.setup()),t.movement=p,this.computeOffset()));let[g,_]=t.offset,[[v,y],[b,x]]=t._bounds;t.overflow=[g<v?-1:+(g>y),_<b?-1:+(_>x)],t._movementBound[0]=t.overflow[0]?t._movementBound[0]===!1?t._movement[0]:t._movementBound[0]:!1,t._movementBound[1]=t.overflow[1]?t._movementBound[1]===!1?t._movement[1]:t._movementBound[1]:!1;let S=t._active&&n.rubberband||[0,0];if(t.offset=s(t._bounds,t.offset,S),t.delta=i.sub(t.offset,m),this.computeMovement(),h&&(!t.last||a>se)){t.delta=i.sub(t.offset,m);let e=t.delta.map(Math.abs);i.addTo(t.distance,e),t.direction=t.delta.map(Math.sign),t._direction=t._delta.map(Math.sign),!t.first&&a>0&&(t.velocity=[e[0]/a,e[1]/a],t.timeDelta=a)}}emit(){let e=this.state,t=this.shared,n=this.config;if(e._active||this.clean(),(e._blocked||!e.intentional)&&!e._force&&!n.triggerAllEvents)return;let r=this.handler(f(f(f({},t),e),{},{[this.aliasKey]:e.values}));r!==void 0&&(e.memo=r)}clean(){this.eventStore.clean(),this.timeoutStore.clean()}};function ce([e,t],n){let r=Math.abs(e),i=Math.abs(t);if(r>i&&r>n)return`x`;if(i>r&&i>n)return`y`}var le=class extends M{constructor(...e){super(...e),u(this,`aliasKey`,`xy`)}reset(){super.reset(),this.state.axis=void 0}init(){this.state.offset=[0,0],this.state.lastOffset=[0,0]}computeOffset(){this.state.offset=i.add(this.state.lastOffset,this.state.movement)}computeMovement(){this.state.movement=i.sub(this.state.offset,this.state.lastOffset)}axisIntent(e){let t=this.state,n=this.config;if(!t.axis&&e){let r=typeof n.axisThreshold==`object`?n.axisThreshold[S(e)]:n.axisThreshold;t.axis=ce(t._movement,r)}t._blocked=(n.lockDirection||!!n.axis)&&!t.axis||!!n.axis&&n.axis!==t.axis}restrictToAxis(e){if(this.config.axis||this.config.lockDirection)switch(this.state.axis){case`x`:e[1]=0;break;case`y`:e[0]=0}}},ue=e=>e,N=.15,P={enabled(e=!0){return e},eventOptions(e,t,n){return f(f({},n.shared.eventOptions),e)},preventDefault(e=!1){return e},triggerAllEvents(e=!1){return e},rubberband(e=0){switch(e){case!0:return[N,N];case!1:return[0,0];default:return i.toVector(e)}},from(e){if(typeof e==`function`)return e;if(e!=null)return i.toVector(e)},transform(e,t,n){let r=e||n.shared.transform;return this.hasCustomTransform=!!r,r||ue},threshold(e){return i.toVector(e,0)}},de=0,F=f(f({},P),{},{axis(e,t,{axis:n}){if(this.lockDirection=n===`lock`,!this.lockDirection)return n},axisThreshold(e=de){return e},bounds(e={}){if(typeof e==`function`)return t=>F.bounds(e(t));if(`current`in e)return()=>e.current;if(typeof HTMLElement==`function`&&e instanceof HTMLElement)return e;let{left:t=-1/0,right:n=1/0,top:r=-1/0,bottom:i=1/0}=e;return[[t,n],[r,i]]}}),I={ArrowRight:(e,t=1)=>[e*t,0],ArrowLeft:(e,t=1)=>[-1*e*t,0],ArrowUp:(e,t=1)=>[0,-1*e*t],ArrowDown:(e,t=1)=>[0,e*t]},fe=class extends le{constructor(...e){super(...e),u(this,`ingKey`,`dragging`)}reset(){super.reset();let e=this.state;e._pointerId=void 0,e._pointerActive=!1,e._keyboardActive=!1,e._preventScroll=!1,e._delayed=!1,e.swipe=[0,0],e.tap=!1,e.canceled=!1,e.cancel=this.cancel.bind(this)}setup(){let e=this.state;if(e._bounds instanceof HTMLElement){let t=e._bounds.getBoundingClientRect(),n=e.currentTarget.getBoundingClientRect(),r={left:t.left-n.left+e.offset[0],right:t.right-n.right+e.offset[0],top:t.top-n.top+e.offset[1],bottom:t.bottom-n.bottom+e.offset[1]};e._bounds=F.bounds(r)}}cancel(){let e=this.state;e.canceled||(e.canceled=!0,e._active=!1,setTimeout(()=>
1{this.compute(),this.emit()},0))}setActive(){this.state._active=this.state._pointerActive||this.state._keyboardActive}clean(){this.pointerClean(),this.state._pointerActive=!1,this.state._keyboardActive=!1,super.clean()}pointerDown(e){let t=this.config,n=this.state;if(e.buttons!=null&&(Array.isArray(t.pointerButtons)?!t.pointerButtons.includes(e.buttons):t.pointerButtons!==-1&&t.pointerButtons!==e.buttons))return;let r=this.ctrl.setEventIds(e);t.pointerCapture&&e.target.setPointerCapture(e.pointerId),!(r&&r.size>1&&n._pointerActive)&&(this.start(e),this.setupPointer(e),n._pointerId=E(e),n._pointerActive=!0,this.computeValues(D(e)),this.computeInitial(),t.preventScrollAxis&&S(e)!==`mouse`?(n._active=!1,this.setupScrollPrevention(e)):t.delay>0?(this.setupDelayTrigger(e),t.triggerAllEvents&&(this.compute(e),this.emit())):this.startPointerDrag(e))}startPointerDrag(e){let t=this.state;t._active=!0,t._preventScroll=!0,t._delayed=!1,this.compute(e),this.emit()}pointerMove(e){let t=this.state,n=this.config;if(!t._pointerActive)return;let r=E(e);if(t._pointerId!==void 0&&r!==t._pointerId)return;let a=D(e);if(document.pointerLockElement===e.target?t._delta=[e.movementX,e.movementY]:(t._delta=i.sub(a,t._values),this.computeValues(a)),i.addTo(t._movement,t._delta),this.compute(e),t._delayed&&t.intentional){this.timeoutStore.remove(`dragDelay`),t.active=!1,this.startPointerDrag(e);return}if(n.preventScrollAxis&&!t._preventScroll){if(t.axis){if(t.axis===n.preventScrollAxis||n.preventScrollAxis===`xy`){t._active=!1,this.clean();return}this.timeoutStore.remove(`startPointerDrag`),this.startPointerDrag(e);return}return}this.emit()}pointerUp(e){this.ctrl.setEventIds(e);try{this.config.pointerCapture&&e.target.hasPointerCapture(e.pointerId)&&e.target.releasePointerCapture(e.pointerId)}catch{}let t=this.state,n=this.config;if(!t._active||!t._pointerActive)return;let r=E(e);if(t._pointerId!==void 0&&r!==t._pointerId)return;this.state._pointerActive=!1,this.setActive(),this.compute(e);let[i,a]=t._distance;if(t.tap=i<=n.tapsThreshold&&a<=n.tapsThreshold,t.tap&&n.filterTaps)t._force=!0;else{let[e,r]=t._delta,[i,a]=t._movement,[o,s]=n.swipe.velocity,[c,l]=n.swipe.distance,u=n.swipe.duration;if(t.elapsedTime<u){let n=Math.abs(e/t.timeDelta),u=Math.abs(r/t.timeDelta);n>o&&Math.abs(i)>c&&(t.swipe[0]=Math.sign(e)),u>s&&Math.abs(a)>l&&(t.swipe[1]=Math.sign(r))}}this.emit()}pointerClick(e){!this.state.tap&&e.detail>0&&(e.preventDefault(),e.stopPropagation())}setupPointer(e){let t=this.config,n=t.device;t.pointerLock&&e.currentTarget.requestPointerLock(),t.pointerCapture||(this.eventStore.add(this.sharedConfig.window,n,`change`,this.pointerMove.bind(this)),this.eventStore.add(this.sharedConfig.window,n,`end`,this.pointerUp.bind(this)),this.eventStore.add(this.sharedConfig.window,n,`cancel`,this.pointerUp.bind(this)))}pointerClean(){this.config.pointerLock&&document.pointerLockElement===this.state.currentTarget&&document.exitPointerLock()}preventScroll(e){this.state._preventScroll&&e.cancelable&&e.preventDefault()}setupScrollPrevention(e){this.state._preventScroll=!1,pe(e);let t=this.eventStore.add(this.sharedConfig.window,`touch`,`change`,this.preventScroll.bind(this),{passive:!1});this.eventStore.add(this.sharedConfig.window,`touch`,`end`,t),this.eventStore.add(this.sharedConfig.window,`touch`,`cancel`,t),this.timeoutStore.add(`startPointerDrag`,this.startPointerDrag.bind(this),this.config.preventScrollDelay,e)}setupDelayTrigger(e){this.state._delayed=!0,this.timeoutStore.add(`dragDelay`,()=>{this.state._step=[0,0],this.startPointerDrag(e)},this.config.delay)}keyDown(e){let t=I[e.key];if(t){let n=this.state,r=e.shiftKey?10:e.altKey?.1:1;this.start(e),n._delta=t(this.config.keyboardDisplacement,r),n._keyboardActive=!0,i.addTo(n._movement,n._delta),this.compute(e),this.emit()}}keyUp(e){e.key in I&&(this.state._keyboardActive=!1,this.setActive(),this.compute(e),this.emit())}bind(e){let t=this.config.device;e(t,`start`,this.pointerDown.bind(this)),this.config.pointerCapture&&(e(t,`change`,this.pointerMove.bind(this)),e(t,`end`,this.pointerUp.bind(this)),e(t,`cancel`,this.pointerUp.bind(this)),e(`lostPointerCapture`,``,this.pointerUp.bind(this))),this.config.keys&&(e(`key`,`down`,this.keyDown.bind(this)),e(`key`,`up`,this.keyUp.bind(this))),this.config.filterTaps&&e(`click`,``,this.pointerClick.bind(this),{capture:!0,passive:!1})}};function pe(e){`persist`in e&&typeof e.persist==`function`&&e.persist()}var L=typeof window<`u`&&window.document&&window.document.createElement;function R(){return L&&`ontouchstart`in window}function z(){return R()||L&&window.navigator.maxTouchPoints>1}function B(){return L&&`onpointerdown`in window}function me(){return L&&`exitPointerLock`in window.document}function he(){try{return`constructor`in GestureEvent}catch{return!1}}var V={isBrowser:L,gesture:he(),touch:R(),touchscreen:z(),pointer:B(),pointerLock:me()},ge=250,_e=180,ve=.5,ye=50,be=250,xe=10,H={mouse:0,touch:0,pen:8},Se=f(f({},F),{},{device(e,t,{pointer:{touch:n=!1,lock:r=!1,mouse:i=!1}={}}){return this.pointerLock=r&&V.pointerLock,V.touch&&n?`touch`:this.pointerLock?`mouse`:V.pointer&&!i?`pointer`:V.touch?`touch`:`mouse`},preventScrollAxis(e,t,{preventScroll:n}
1){if(this.preventScrollDelay=typeof n==`number`?n:n||n===void 0&&e?ge:void 0,!(!V.touchscreen||n===!1))return e||(n===void 0?void 0:`y`)},pointerCapture(e,t,{pointer:{capture:n=!0,buttons:r=1,keys:i=!0}={}}){return this.pointerButtons=r,this.keys=i,!this.pointerLock&&this.device===`pointer`&&n},threshold(e,t,{filterTaps:n=!1,tapsThreshold:r=3,axis:a=void 0}){let o=i.toVector(e,n?r:+!!a);return this.filterTaps=n,this.tapsThreshold=r,o},swipe({velocity:e=ve,distance:t=ye,duration:n=be}={}){return{velocity:this.transform(i.toVector(e)),distance:this.transform(i.toVector(t)),duration:n}},delay(e=0){switch(e){case!0:return _e;case!1:return 0;default:return e}},axisThreshold(e){return e?f(f({},H),e):H},keyboardDisplacement(e=xe){return e}});function Ce(e){let[t,n]=e.overflow,[r,i]=e._delta,[a,o]=e._direction;(t<0&&r>0&&a<0||t>0&&r<0&&a>0)&&(e._movement[0]=e._movementBound[0]),(n<0&&i>0&&o<0||n>0&&i<0&&o>0)&&(e._movement[1]=e._movementBound[1])}var we=30,Te=100,Ee=class extends M{constructor(...e){super(...e),u(this,`ingKey`,`pinching`),u(this,`aliasKey`,`da`)}init(){this.state.offset=[1,0],this.state.lastOffset=[1,0],this.state._pointerEvents=new Map}reset(){super.reset();let e=this.state;e._touchIds=[],e.canceled=!1,e.cancel=this.cancel.bind(this),e.turns=0}computeOffset(){let{type:e,movement:t,lastOffset:n}=this.state;e===`wheel`?this.state.offset=i.add(t,n):this.state.offset=[(1+t[0])*n[0],t[1]+n[1]]}computeMovement(){let{offset:e,lastOffset:t}=this.state;this.state.movement=[e[0]/t[0],e[1]-t[1]]}axisIntent(){let e=this.state,[t,n]=e._movement;if(!e.axis){let r=Math.abs(t)*we-Math.abs(n);r<0?e.axis=`angle`:r>0&&(e.axis=`scale`)}}restrictToAxis(e){this.config.lockDirection&&(this.state.axis===`scale`?e[1]=0:this.state.axis===`angle`&&(e[0]=0))}cancel(){let e=this.state;e.canceled||setTimeout(()=>{e.canceled=!0,e._active=!1,this.compute(),this.emit()},0)}touchStart(e){this.ctrl.setEventIds(e);let t=this.state,n=this.ctrl.touchIds;if(t._active&&t._touchIds.every(e=>n.has(e))||n.size<2)return;this.start(e),t._touchIds=Array.from(n).slice(0,2);let r=T(e,t._touchIds);r&&this.pinchStart(e,r)}pointerStart(e){if(e.buttons!=null&&e.buttons%2!=1)return;this.ctrl.setEventIds(e),e.target.setPointerCapture(e.pointerId);let t=this.state,n=t._pointerEvents,r=this.ctrl.pointerIds;if(t._active&&Array.from(n.keys()).every(e=>r.has(e))||(n.size<2&&n.set(e.pointerId,e),t._pointerEvents.size<2))return;this.start(e);let i=w(...Array.from(n.values()));i&&this.pinchStart(e,i)}pinchStart(e,t){let n=this.state;n.origin=t.origin,this.computeValues([t.distance,t.angle]),this.computeInitial(),this.compute(e),this.emit()}touchMove(e){if(!this.state._active)return;let t=T(e,this.state._touchIds);t&&this.pinchMove(e,t)}pointerMove(e){let t=this.state._pointerEvents;if(t.has(e.pointerId)&&t.set(e.pointerId,e),!this.state._active)return;let n=w(...Array.from(t.values()));n&&this.pinchMove(e,n)}pinchMove(e,t){let n=this.state,r=n._values[1],i=t.angle-r,a=0;Math.abs(i)>270&&(a+=Math.sign(i)),this.computeValues([t.distance,t.angle-360*a]),n.origin=t.origin,n.turns=a,n._movement=[n._values[0]/n._initial[0]-1,n._values[1]-n._initial[1]],this.compute(e),this.emit()}touchEnd(e){this.ctrl.setEventIds(e),this.state._active&&this.state._touchIds.some(e=>!this.ctrl.touchIds.has(e))&&(this.state._active=!1,this.compute(e),this.emit())}pointerEnd(e){let t=this.state;this.ctrl.setEventIds(e);try{e.target.releasePointerCapture(e.pointerId)}catch{}t._pointerEvents.has(e.pointerId)&&t._pointerEvents.delete(e.pointerId),t._active&&t._pointerEvents.size<2&&(t._active=!1,this.compute(e),this.emit())}gestureStart(e){e.cancelable&&e.preventDefault();let t=this.state;t._active||(this.start(e),this.computeValues([e.scale,e.rotation]),t.origin=[e.clientX,e.clientY],this.compute(e),this.emit())}gestureMove(e){if(e.cancelable&&e.preventDefault(),!this.state._active)return;let t=this.state;this.computeValues([e.scale,e.rotation]),t.origin=[e.clientX,e.clientY];let n=t._movement;t._movement=[e.scale-1,e.rotation],t._delta=i.sub(t._movement,n),this.compute(e),this.emit()}gestureEnd(e){this.state._active&&(this.state._active=!1,this.compute(e),this.emit
1())}wheel(e){let t=this.config.modifierKey;t&&(Array.isArray(t)?!t.find(t=>e[t]):!e[t])||(this.state._active?this.wheelChange(e):this.wheelStart(e),this.timeoutStore.add(`wheelEnd`,this.wheelEnd.bind(this)))}wheelStart(e){this.start(e),this.wheelChange(e)}wheelChange(e){`uv`in e||e.cancelable&&e.preventDefault();let t=this.state;t._delta=[-re(e)[1]/Te*t.offset[0],0],i.addTo(t._movement,t._delta),Ce(t),this.state.origin=[e.clientX,e.clientY],this.compute(e),this.emit()}wheelEnd(){this.state._active&&(this.state._active=!1,this.compute(),this.emit())}bind(e){let t=this.config.device;t&&(e(t,`start`,this[t+`Start`].bind(this)),e(t,`change`,this[t+`Move`].bind(this)),e(t,`end`,this[t+`End`].bind(this)),e(t,`cancel`,this[t+`End`].bind(this)),e(`lostPointerCapture`,``,this[t+`End`].bind(this))),this.config.pinchOnWheel&&e(`wheel`,``,this.wheel.bind(this),{passive:!1})}},De=f(f({},P),{},{device(e,t,{shared:n,pointer:{touch:r=!1}={}}){if(n.target&&!V.touch&&V.gesture)return`gesture`;if(V.touch&&r)return`touch`;if(V.touchscreen){if(V.pointer)return`pointer`;if(V.touch)return`touch`}},bounds(e,t,{scaleBounds:n={},angleBounds:r={}}){let i=e=>{let t=j(A(n,e),{min:-1/0,max:1/0});return[t.min,t.max]},a=e=>{let t=j(A(r,e),{min:-1/0,max:1/0});return[t.min,t.max]};return typeof n!=`function`&&typeof r!=`function`?[i(),a()]:e=>[i(e),a(e)]},threshold(e,t,n){return this.lockDirection=n.axis===`lock`,i.toVector(e,this.lockDirection?[.1,3]:0)},modifierKey(e){return e===void 0?`ctrlKey`:e},pinchOnWheel(e=!0){return e}});f(f({},F),{},{mouseOnly:(e=!0)=>e}),f(f({},F),{},{mouseOnly:(e=!0)=>e});var U=new Map,W=new Map;function G(e){U.set(e.key,e.engine),W.set(e.key,e.resolver)}var K={key:`drag`,engine:fe,resolver:Se},Oe={key:`pinch`,engine:Ee,resolver:De};function ke(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,a;for(a=0;a<r.length;a++)i=r[a],!(t.indexOf(i)>=0)&&(n[i]=e[i]);return n}function Ae(e,t){if(e==null)return{};var n=ke(e,t),r,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i<a.length;i++)r=a[i],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var je={target(e){if(e)return()=>`current`in e?e.current:e},enabled(e=!0){return e},window(e=V.isBrowser?window:void 0){return e},eventOptions({passive:e=!0,capture:t=!1}={}){return{passive:e,capture:t}},transform(e){return e}},Me=[`target`,`eventOptions`,`window`,`enabled`,`transform`];function q(e={},t){let n={};for(let[r,i]of Object.entries(t))switch(typeof i){case`function`:n[r]=i.call(n,e[r],r,e);break;case`object`:n[r]=q(e[r],i);break;case`boolean`:i&&(n[r]=e[r])}return n}function J(e,t,n={}){let r=e,{target:i,eventOptions:a,window:o,enabled:s,transform:c}=r,l=Ae(r,Me);if(n.shared=q({target:i,eventOptions:a,window:o,enabled:s,transform:c},je),t){let e=W.get(t);n[t]=q(f({shared:n.shared},l),e)}else for(let e in l){let t=W.get(e);t&&(n[e]=q(f({shared:n.shared},l[e]),t))}return n}var Y=class{constructor(e,t){u(this,`_listeners`,new Set),this._ctrl=e,this._gestureKey=t}add(e,t,n,r,i){let a=this._listeners,o=b(t,n),s=f(f({},this._gestureKey?this._ctrl.config[this._gestureKey].eventOptions:{}),i);e.addEventListener(o,r,s);let c=()=>{e.removeEventListener(o,r,s),a.delete(c)};return a.add(c),c}clean(){this._listeners.forEach(e=>e()),this._listeners.clear()}},Ne=class{constructor(){u(this,`_timeouts`,new Map)}add(e,t,n=140,...r){this.remove(e),this._timeouts.set(e,window.setTimeout(t,n,...r))}remove(e){let t=this._timeouts.get(e);t&&window.clearTimeout(t)}clean(){this._timeouts.forEach(e=>void window.clearTimeout(e)),this._timeouts.clear()}},Pe=class{constructor(e){u(this,`gestures`,new Set),u(this,`_targetEventStore`,new Y(this)),u(this,`gestureEventStores`,{}),u(this,`gestureTimeoutStores`,{}),u(this,`handlers`,{}),u(this,`config`,{}),u(this,`pointerIds`,new Set),u(this,`touchIds`,new Set),u(this,`state`,{shared:{shiftKey:!1,metaKey:!1,ctrlKey:!1,altKey:!1}}),Fe(this,e)}setEventIds(e){if(x(e))return this.touchIds=new Set(ne(e)),this.touchIds;if(`pointerId`in e)return e.type===`pointerup`||e.type===`pointercancel`?this.pointerIds.delete(e.pointerId):e.type===`pointerdown`&&this.pointerIds.add(e.pointerId),this.pointerIds}applyHandlers(e,t){this.handlers=e,this.nativeHandlers=t}applyConfig(e,t){this.config=J(e,t,this.config)}clean(){this._targetEventStore.clean();for(let e of this.gestures)this.gestureEventStores[e].clean(),this.gestureTimeoutStores[e].clean()}effect(){return this.config.shared.target&&this.bind(),()=>this._targetEventStore.clean()}bind(...e){let t=this.config.shared,n={},r;if(!(t.target&&(r=t.target(),!r))){if(t.enabled){for(let t of this.gestures){let i=this.config[t],a=Z(n,i.eventOptions,!!r);i.enabled&&new(U.get(t))(this,e,t).bind(a)}let i=Z(n,t.eventOptions,!!r);for(let t in this.nativeHandlers)i(t,``,n=>this.nativeHandlers[t](f(f({},this.state.shared),{},{event:n,args:e})),void 0,!0)}for(let e in n)n[e]=oe(...n[e]);if(!r)return n;for(let e in n){let{device:t,capture:i,passive:a}=y(e);this._targetEventStore.add(r,t,``,n[e],{capture:i,passive:a})}}}};function X(e,t){e.gestures.add(t),e.gestureEventStores[t]=new Y(e,t),e.gestureTimeoutStores[t]=new Ne}function Fe(e,t){t.drag&&X(e,`drag`),t.wheel&&X(e,`wheel`),t.scroll&&X(e,`scroll`),t.move&&X(e,`move`),t.pinch&&X(e,`pinch`),t.hover&&X(e,`hover`)}var Z=(e,t,n)=>(r,i,a,o={},s=!1)=>{let c=o.capture??t.capture,l=o.passive??t.passive,u=s?r:_(r,i,c);n&&l&&(u+=`Passive`),e[u]=e[u]||[],e[u].push(a)},Ie=/^on(Drag|Wheel|Scroll|Move|Pinch|Hover)/;function Le(e){let t={},n={},r=new Set;for(let i in e)Ie.test(i)?(r.add(RegExp.lastMatch),n[i]=e[i]):t[i]=e[i];return[n,t,r]}function Q(e,t,n,r,i,a){if(!e.has(n)||!U.has(r))return;let o=n+`Start`,s=n+`End`;i[r]=e=>{let r;return e.first&&o in t&&t[o](e),n in t&&(r=t[n](e)),e.last&&s in t&&t[s](e),r},a[r]=a[r]||{}}function Re(e,t){let[n,r,i]=Le(e),a={};return Q(i,n,`onDrag`,`drag`,a,t),Q(i,n,`onWheel`,`wheel`,a,t),Q(i,n,`onScroll`,`scroll`,a,t),Q(i,n,`onPinch`,`pinch`,a,t),Q(i,n,`onMove`,`move`,a,t),Q(i,n,`onHover`,`hover`,a,t),{handlers:a,config:t,nativeHandlers:r}}function $(e,t={},r,i){let a=n.useMemo(()=>new Pe(e),[]);if(a.applyHandlers(e,i),a.applyConfig(t,r),n.useEffect(a.effect.bind(a)),n.useEffect(()=>a.clean.bind(a),[]),t.target===void 0)return a.bind.bind(a)}function ze(e,t){return G(K),$({drag:e},t||{},`drag`)}function Be(e){return e.forEach(G),function(e,t){let{handlers:n,nativeHandlers:r,config:i}=Re(e,t||{});return $(n,i,void 0,r)}}
1export{Oe as i,ze as n,K as r,Be as t};
2//# sourceMappingURL=use-gesture-react.esm-DuPMJbBX.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.