Socket
Socket
Sign inDemoInstall

@use-gesture/core

Package Overview
Dependencies
Maintainers
1
Versions
67
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@use-gesture/core - npm Package Compare versions

Comparing version 10.0.0-beta.3 to 10.0.0-beta.4

12

dist/use-gesture-core.cjs.d.ts

@@ -1,1 +0,11 @@

export * from "./declarations/src/index";
// are you seeing an error that a default export doesn't exist but your source file has a default export?
// you should run `yarn` or `yarn preconstruct dev` if preconstruct dev isn't in your postinstall hook
// curious why you need to?
// this file exists so that you can import from the entrypoint normally
// except that it points to your source file and you don't need to run build constantly
// which means we need to re-export all of the modules from your source file
// and since export * doesn't include default exports, we need to read your source file
// to check for a default export and re-export it if it exists
// it's not ideal, but it works pretty well ¯\_(ツ)_/¯
export * from "../src/index";

21

dist/use-gesture-core.cjs.js

@@ -1,7 +0,16 @@

'use strict';
"use strict";
// this file might look strange and you might be wondering what it's for
// it's lets you import your source files by importing this entrypoint
// as you would import it if it was built with preconstruct build
// this file is slightly different to some others though
// it has a require hook which compiles your code with Babel
// this means that you don't have to set up @babel/register or anything like that
// but you can still require this module and it'll be compiled
if (process.env.NODE_ENV === "production") {
module.exports = require("./use-gesture-core.cjs.prod.js");
} else {
module.exports = require("./use-gesture-core.cjs.dev.js");
}
// this bit of code imports the require hook and registers it
let unregister = require("../../../node_modules/.pnpm/@preconstruct+hook@0.4.0/node_modules/@preconstruct/hook").___internalHook(typeof __dirname === 'undefined' ? undefined : __dirname, "../../..", "..");
// this re-exports the source file
module.exports = require("../src/index.ts");
unregister();
{
"name": "@use-gesture/core",
"version": "10.0.0-beta.3",
"version": "10.0.0-beta.4",
"description": "Core engine for receiving gestures",

@@ -5,0 +5,0 @@ "license": "MIT",

import { EngineMap } from './imports'
import { parse } from './config/resolver'
import { Touches, isTouch, toReactHandlerProp } from './utils/events'
import { isTouch, toReactHandlerProp, touchIds } from './utils/events'
import { EventStore } from './EventStore'

@@ -46,3 +46,3 @@ import { TimeoutStore } from './TimeoutStore'

if (isTouch(event)) {
this.touchIds = new Set(Touches.ids(event as TouchEvent))
this.touchIds = new Set(touchIds(event as TouchEvent))
} else if ('pointerId' in event) {

@@ -49,0 +49,0 @@ if (event.type === 'pointerup') this.pointerIds.delete(event.pointerId)

import { CoordinatesEngine } from './CoordinatesEngine'
import { coordinatesConfigResolver } from '../config/coordinatesConfigResolver'
import { Pointer } from '../utils/events'
import { pointerId, pointerValues } from '../utils/events'
import { V } from '../utils/maths'

@@ -90,6 +90,6 @@ import { Vector2 } from '../types'

state._pointerId = Pointer.id(event)
state._pointerId = pointerId(event)
state._pointerActive = true
state.values = Pointer.values(event)
state.values = pointerValues(event)
state.initial = state.values

@@ -121,6 +121,6 @@

if (!state._pointerActive) return
const id = Pointer.id(event)
const id = pointerId(event)
if (state._pointerId && id !== state._pointerId) return
const values = Pointer.values(event)
const values = pointerValues(event)

@@ -171,2 +171,3 @@ if (document.pointerLockElement === event.target) {

if (process.env.NODE_ENV === 'development') {
// eslint-disable-next-line no-console
console.warn(

@@ -182,3 +183,3 @@ `[@use-gesture]: If you see this message, it's likely that you're using an outdated version of \`@react-three/fiber\`. \n\nPlease upgrade to the latest version.`

if (!state._pointerActive) return
const id = Pointer.id(event)
const id = pointerId(event)
if (state._pointerId && id !== state._pointerId) return

@@ -267,5 +268,3 @@

pointerClean() {
const state = this.state
if (!state._pointerActive) return
if (this.config.pointerLock && document.pointerLockElement === state.target) {
if (this.config.pointerLock && document.pointerLockElement === this.state.target) {
document.exitPointerLock()

@@ -272,0 +271,0 @@ }

@@ -7,2 +7,3 @@ import { Controller } from '../Controller'

// eslint-disable-next-line @typescript-eslint/no-unused-vars
export interface Engine<Key extends GestureKey> {

@@ -9,0 +10,0 @@ /**

import { CoordinatesEngine } from './CoordinatesEngine'
import { Pointer } from '../utils/events'
import { pointerValues } from '../utils/events'
import { V } from '../utils/maths'

@@ -10,3 +10,3 @@

this.start(event)
this.state.values = Pointer.values(event)
this.state.values = pointerValues(event)

@@ -21,3 +21,3 @@ this.compute(event)

state._active = false
const values = Pointer.values(event)
const values = pointerValues(event)
state._movement = state._delta = V.sub(values, state.values)

@@ -24,0 +24,0 @@ state.values = values

import { CoordinatesEngine } from './CoordinatesEngine'
import { Pointer } from '../utils/events'
import { pointerValues } from '../utils/events'
import { V } from '../utils/maths'

@@ -17,3 +17,3 @@

const state = this.state
state.values = Pointer.values(event)
state.values = pointerValues(event)
this.compute(event)

@@ -26,3 +26,3 @@ state.initial = state.values

if (!this.state._active) return
const values = Pointer.values(event)
const values = pointerValues(event)
const state = this.state

@@ -29,0 +29,0 @@ state._delta = V.sub(values, state.values)

import { Engine } from './Engine'
import { Touches, Wheel, distanceAngle } from '../utils/events'
import { touchDistanceAngle, distanceAngle, wheelValues } from '../utils/events'
import { V } from '../utils/maths'

@@ -87,3 +87,3 @@ import { Vector2, WebKitGestureEvent } from '../types'

const payload = Touches.distanceAngle(event, state._touchIds)
const payload = touchDistanceAngle(event, state._touchIds)
this.pinchStart(event, payload)

@@ -129,3 +129,3 @@ }

if (!this.state._active) return
const payload = Touches.distanceAngle(event, this.state._touchIds)
const payload = touchDistanceAngle(event, this.state._touchIds)
this.pinchMove(event, payload)

@@ -253,3 +253,3 @@ }

const state = this.state
state._delta = [-Wheel.values(event)[1] / PINCH_WHEEL_RATIO, 0]
state._delta = [-wheelValues(event)[1] / PINCH_WHEEL_RATIO, 0]
V.addTo(state._movement, state._delta)

@@ -256,0 +256,0 @@

import { CoordinatesEngine } from './CoordinatesEngine'
import { Scroll } from '../utils/events'
import { scrollValues } from '../utils/events'
import { V } from '../utils/maths'

@@ -17,3 +17,3 @@

const state = this.state
const values = Scroll.values(event)
const values = scrollValues(event)
state._delta = V.sub(values, state.values)

@@ -20,0 +20,0 @@ V.addTo(state._movement, state._delta)

import { CoordinatesEngine } from './CoordinatesEngine'
import { Wheel } from '../utils/events'
import { wheelValues } from '../utils/events'
import { V } from '../utils/maths'

@@ -23,3 +23,3 @@

const state = this.state
state._delta = Wheel.values(event)
state._delta = wheelValues(event)
V.addTo(this.state._movement, state._delta)

@@ -26,0 +26,0 @@

@@ -57,24 +57,22 @@ import { Vector2 } from '../types'

export const Touches = {
ids(event: TouchEvent) {
return getCurrentTargetTouchList(event).map((touch) => touch.identifier)
},
distanceAngle(event: TouchEvent, ids: number[]) {
const [P1, P2] = Array.from(event.touches).filter((touch) => ids.includes(touch.identifier))
return distanceAngle(P1, P2)
}
export function touchIds(event: TouchEvent) {
return getCurrentTargetTouchList(event).map((touch) => touch.identifier)
}
export const Pointer = {
id(event: PointerEvent | TouchEvent) {
const valueEvent = getValueEvent(event)
return isTouch(event) ? (valueEvent as Touch).identifier : (valueEvent as PointerEvent).pointerId
},
values(event: PointerEvent | TouchEvent): Vector2 {
// if ('spaceX' in event) return [event.spaceX, event.spaceY]
const valueEvent = getValueEvent(event)
return [valueEvent.clientX, valueEvent.clientY]
}
export function touchDistanceAngle(event: TouchEvent, ids: number[]) {
const [P1, P2] = Array.from(event.touches).filter((touch) => ids.includes(touch.identifier))
return distanceAngle(P1, P2)
}
export function pointerId(event: PointerEvent | TouchEvent) {
const valueEvent = getValueEvent(event)
return isTouch(event) ? (valueEvent as Touch).identifier : (valueEvent as PointerEvent).pointerId
}
export function pointerValues(event: PointerEvent | TouchEvent): Vector2 {
// if ('spaceX' in event) return [event.spaceX, event.spaceY]
const valueEvent = getValueEvent(event)
return [valueEvent.clientX, valueEvent.clientY]
}
// wheel delta defaults from https://github.com/facebookarchive/fixed-data-table/blob/master/src/vendor_upstream/dom/normalizeWheel.js

@@ -84,24 +82,20 @@ const LINE_HEIGHT = 40

export const Wheel = {
values(event: WheelEvent): Vector2 {
let { deltaX, deltaY, deltaMode } = event
// normalize wheel values, especially for Firefox
if (deltaMode === 1) {
deltaX *= LINE_HEIGHT
deltaY *= LINE_HEIGHT
} else if (deltaMode === 2) {
deltaX *= PAGE_HEIGHT
deltaY *= PAGE_HEIGHT
}
return [deltaX, deltaY]
export function wheelValues(event: WheelEvent): Vector2 {
let { deltaX, deltaY, deltaMode } = event
// normalize wheel values, especially for Firefox
if (deltaMode === 1) {
deltaX *= LINE_HEIGHT
deltaY *= LINE_HEIGHT
} else if (deltaMode === 2) {
deltaX *= PAGE_HEIGHT
deltaY *= PAGE_HEIGHT
}
return [deltaX, deltaY]
}
export const Scroll = {
values(event: UIEvent): Vector2 {
// If the currentTarget is the window then we return the scrollX/Y position.
// If not (ie the currentTarget is a DOM element), then we return scrollLeft/Top
const { scrollX, scrollY, scrollLeft, scrollTop } = event.currentTarget as Element & Window
return [scrollX ?? scrollLeft ?? 0, scrollY ?? scrollTop ?? 0]
}
export function scrollValues(event: UIEvent): Vector2 {
// If the currentTarget is the window then we return the scrollX/Y position.
// If not (ie the currentTarget is a DOM element), then we return scrollLeft/Top
const { scrollX, scrollY, scrollLeft, scrollTop } = event.currentTarget as Element & Window
return [scrollX ?? scrollLeft ?? 0, scrollY ?? scrollTop ?? 0]
}

@@ -108,0 +102,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc