@tamagui/react-native-use-pressable 2.7.7 → 3.0.0-beta.643.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"names":["DELAY","ERROR","LONG_PRESS_DETECTED","NOT_RESPONDER","RESPONDER_ACTIVE_LONG_PRESS_START","RESPONDER_ACTIVE_PRESS_START","RESPONDER_INACTIVE_PRESS_START","RESPONDER_GRANT","RESPONDER_RELEASE","RESPONDER_TERMINATED","Transitions","Object","freeze","isActiveSignal","signal","isButtonRole","element","getAttribute","isPressStartSignal","isTerminalSignal","isValidKeyPress","event","key","target","role","isSpacebar","DEFAULT_LONG_PRESS_DELAY_MS","DEFAULT_PRESS_DELAY_MS","PressResponder","_touchActivatePosition","_pressDelayTimeout","_selectionTerminated","_isPointerTouch","_longPressDelayTimeout","_longPressDispatched","_pressOutDelayTimeout","_touchState","_config","_eventHandlers","constructor","config","configure","reset","_cancelLongPressDelayTimeout","_cancelPressDelayTimeout","_cancelPressOutDelayTimeout","getEventHandlers","_createEventHandlers","start","shouldDelay","persist","nativeEvent","type","_receiveSignal","delayPressStart","normalizeDelay","setTimeout","delayLongPress","_handleLongPress","end","keyupHandler","onPress","document","removeEventListener","elementType","tagName","toLowerCase","isNativeInteractiveElement","onStartShouldSetResponder","disabled","currentTarget","stopPropagation","onKeyDown","addEventListener","isSpacebarKey","_isButtonRole","preventDefault","onResponderGrant","onResponderMove","onPressMove","touch","getTouchFromResponderEvent","deltaX","pageX","deltaY","pageY","Math","hypot","onResponderRelease","onResponderTerminate","onResponderTerminationRequest","_this$_config","cancelable","onLongPress","onClick","_this$_config2","altKey","onContextMenu","_this$_config3","defaultPrevented","prevState","nextState","console","error","_performTransitionSideEffects","isPrevActive","isNextActive","_activate","_deactivate","_this$_config4","_onLongPress","isPressCanceledByLongPress","_this$_config5","onPressChange","onPressStart","_this$_config6","onPressEnd","delayPressEnd","clearTimeout","delay","min","fallback","max","_event$nativeEvent","changedTouches","touches","length"],"sources":["../../src/PressResponder.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PressResponder.js","names":[],"sources":["esm/PressResponder.js"],"sourcesContent":["const DELAY = \"DELAY\";\nconst ERROR = \"ERROR\";\nconst LONG_PRESS_DETECTED = \"LONG_PRESS_DETECTED\";\nconst NOT_RESPONDER = \"NOT_RESPONDER\";\nconst RESPONDER_ACTIVE_LONG_PRESS_START = \"RESPONDER_ACTIVE_LONG_PRESS_START\";\nconst RESPONDER_ACTIVE_PRESS_START = \"RESPONDER_ACTIVE_PRESS_START\";\nconst RESPONDER_INACTIVE_PRESS_START = \"RESPONDER_INACTIVE_PRESS_START\";\nconst RESPONDER_GRANT = \"RESPONDER_GRANT\";\nconst RESPONDER_RELEASE = \"RESPONDER_RELEASE\";\nconst RESPONDER_TERMINATED = \"RESPONDER_TERMINATED\";\nconst Transitions = Object.freeze({\n NOT_RESPONDER: {\n DELAY: ERROR,\n RESPONDER_GRANT: RESPONDER_INACTIVE_PRESS_START,\n RESPONDER_RELEASE: ERROR,\n RESPONDER_TERMINATED: ERROR,\n LONG_PRESS_DETECTED: ERROR\n },\n RESPONDER_INACTIVE_PRESS_START: {\n DELAY: RESPONDER_ACTIVE_PRESS_START,\n RESPONDER_GRANT: ERROR,\n RESPONDER_RELEASE: NOT_RESPONDER,\n RESPONDER_TERMINATED: NOT_RESPONDER,\n LONG_PRESS_DETECTED: ERROR\n },\n RESPONDER_ACTIVE_PRESS_START: {\n DELAY: ERROR,\n RESPONDER_GRANT: ERROR,\n RESPONDER_RELEASE: NOT_RESPONDER,\n RESPONDER_TERMINATED: NOT_RESPONDER,\n LONG_PRESS_DETECTED: RESPONDER_ACTIVE_LONG_PRESS_START\n },\n RESPONDER_ACTIVE_LONG_PRESS_START: {\n DELAY: ERROR,\n RESPONDER_GRANT: ERROR,\n RESPONDER_RELEASE: NOT_RESPONDER,\n RESPONDER_TERMINATED: NOT_RESPONDER,\n LONG_PRESS_DETECTED: RESPONDER_ACTIVE_LONG_PRESS_START\n },\n ERROR: {\n DELAY: NOT_RESPONDER,\n RESPONDER_GRANT: RESPONDER_INACTIVE_PRESS_START,\n RESPONDER_RELEASE: NOT_RESPONDER,\n RESPONDER_TERMINATED: NOT_RESPONDER,\n LONG_PRESS_DETECTED: NOT_RESPONDER\n }\n});\nconst isActiveSignal = (signal) => signal === RESPONDER_ACTIVE_PRESS_START || signal === RESPONDER_ACTIVE_LONG_PRESS_START;\nconst isButtonRole = (element) => element.getAttribute(\"role\") === \"button\";\nconst isPressStartSignal = (signal) => signal === RESPONDER_INACTIVE_PRESS_START || signal === RESPONDER_ACTIVE_PRESS_START || signal === RESPONDER_ACTIVE_LONG_PRESS_START;\nconst isTerminalSignal = (signal) => signal === RESPONDER_TERMINATED || signal === RESPONDER_RELEASE;\nconst isValidKeyPress = (event) => {\n const key = event.key;\n const target = event.target;\n const role = target.getAttribute(\"role\");\n const isSpacebar = key === \" \" || key === \"Spacebar\";\n return key === \"Enter\" || isSpacebar && role === \"button\";\n};\nconst DEFAULT_LONG_PRESS_DELAY_MS = 450;\nconst DEFAULT_PRESS_DELAY_MS = 50;\nclass PressResponder {\n _touchActivatePosition = null;\n _pressDelayTimeout = 0;\n _selectionTerminated = false;\n _isPointerTouch = false;\n _longPressDelayTimeout = 0;\n _longPressDispatched = false;\n _pressOutDelayTimeout = 0;\n _touchState = NOT_RESPONDER;\n _config = null;\n _eventHandlers = null;\n constructor(config) {\n this.configure(config);\n }\n configure(config) {\n this._config = config;\n }\n /**\n * Resets any pending timers. This should be called on unmount.\n */\n reset() {\n this._cancelLongPressDelayTimeout();\n this._cancelPressDelayTimeout();\n this._cancelPressOutDelayTimeout();\n }\n /**\n * Returns a set of props to spread into the interactive element.\n */\n getEventHandlers() {\n if (this._eventHandlers == null) {\n this._eventHandlers = this._createEventHandlers();\n }\n return this._eventHandlers;\n }\n _createEventHandlers() {\n const start = (event, shouldDelay) => {\n event.persist();\n this._cancelPressOutDelayTimeout();\n this._longPressDispatched = false;\n this._selectionTerminated = false;\n this._touchState = NOT_RESPONDER;\n this._isPointerTouch = event.nativeEvent.type === \"touchstart\";\n this._receiveSignal(RESPONDER_GRANT, event);\n const delayPressStart = normalizeDelay(\n this._config.delayPressStart,\n 0,\n DEFAULT_PRESS_DELAY_MS\n );\n if (shouldDelay !== false && delayPressStart > 0) {\n this._pressDelayTimeout = setTimeout(() => {\n this._receiveSignal(DELAY, event);\n }, delayPressStart);\n } else {\n this._receiveSignal(DELAY, event);\n }\n const delayLongPress = normalizeDelay(\n this._config.delayLongPress,\n 10,\n DEFAULT_LONG_PRESS_DELAY_MS\n );\n this._longPressDelayTimeout = setTimeout(() => {\n this._handleLongPress(event);\n }, delayLongPress + delayPressStart);\n };\n const end = (event) => {\n this._receiveSignal(RESPONDER_RELEASE, event);\n };\n const keyupHandler = (event) => {\n const onPress = this._config.onPress;\n const target = event.target;\n if (this._touchState !== NOT_RESPONDER && isValidKeyPress(event)) {\n end(event);\n document.removeEventListener(\"keyup\", keyupHandler);\n const role = target.getAttribute(\"role\");\n const elementType = target.tagName.toLowerCase();\n const isNativeInteractiveElement = role === \"link\" || elementType === \"a\" || elementType === \"button\" || elementType === \"input\" || elementType === \"select\" || elementType === \"textarea\";\n if (onPress != null && !isNativeInteractiveElement) {\n onPress(event);\n }\n }\n };\n return {\n onStartShouldSetResponder: (event) => {\n const disabled = this._config.disabled;\n if (disabled && isButtonRole(event.currentTarget)) {\n event.stopPropagation();\n }\n if (disabled == null) {\n return true;\n }\n return !disabled;\n },\n onKeyDown: (event) => {\n const disabled = this._config.disabled;\n const key = event.key;\n const target = event.target;\n if (!disabled && isValidKeyPress(event)) {\n if (this._touchState === NOT_RESPONDER) {\n start(event, false);\n document.addEventListener(\"keyup\", keyupHandler);\n }\n const role = target.getAttribute(\"role\");\n const isSpacebarKey = key === \" \" || key === \"Spacebar\";\n const _isButtonRole = role === \"button\" || role === \"menuitem\";\n if (isSpacebarKey && _isButtonRole) {\n event.preventDefault();\n }\n event.stopPropagation();\n }\n },\n onResponderGrant: (event) => start(event),\n onResponderMove: (event) => {\n if (this._config.onPressMove != null) {\n this._config.onPressMove(event);\n }\n const touch = getTouchFromResponderEvent(event);\n if (this._touchActivatePosition != null) {\n const deltaX = this._touchActivatePosition.pageX - touch.pageX;\n const deltaY = this._touchActivatePosition.pageY - touch.pageY;\n if (Math.hypot(deltaX, deltaY) > 10) {\n this._cancelLongPressDelayTimeout();\n }\n }\n },\n onResponderRelease: (event) => end(event),\n onResponderTerminate: (event) => {\n if (event.nativeEvent.type === \"selectionchange\") {\n this._selectionTerminated = true;\n }\n this._receiveSignal(RESPONDER_TERMINATED, event);\n },\n onResponderTerminationRequest: (event) => {\n const _this$_config = this._config;\n const cancelable = _this$_config.cancelable;\n const disabled = _this$_config.disabled;\n const onLongPress = _this$_config.onLongPress;\n if (!disabled && onLongPress != null && this._isPointerTouch && event.nativeEvent.type === \"contextmenu\") {\n return false;\n }\n if (cancelable == null) {\n return true;\n }\n return cancelable;\n },\n // NOTE: this diverges from react-native in 3 significant ways:\n // * The `onPress` callback is not connected to the responder system (the native\n // `click` event must be used but is dispatched in many scenarios where no pointers\n // are on the screen.) Therefore, it's possible for `onPress` to be called without\n // `onPress{Start,End}` being called first.\n // * The `onPress` callback is only be called on the first ancestor of the native\n // `click` target that is using the PressResponder.\n // * The event's `nativeEvent` is a `MouseEvent` not a `TouchEvent`.\n onClick: (event) => {\n const _this$_config2 = this._config;\n const disabled = _this$_config2.disabled;\n const onPress = _this$_config2.onPress;\n if (!disabled) {\n event.stopPropagation();\n if (this._longPressDispatched || this._selectionTerminated) {\n event.preventDefault();\n } else if (onPress != null && event.altKey === false) {\n onPress(event);\n }\n } else {\n if (isButtonRole(event.currentTarget)) {\n event.stopPropagation();\n }\n }\n },\n // If `onLongPress` is provided and a touch pointer is being used, prevent the\n // default context menu from opening.\n onContextMenu: (event) => {\n const _this$_config3 = this._config;\n const disabled = _this$_config3.disabled;\n const onLongPress = _this$_config3.onLongPress;\n if (!disabled) {\n if (onLongPress != null && this._isPointerTouch && !event.defaultPrevented) {\n event.preventDefault();\n event.stopPropagation();\n }\n } else {\n if (isButtonRole(event.currentTarget)) {\n event.stopPropagation();\n }\n }\n }\n };\n }\n /**\n * Receives a state machine signal, performs side effects of the transition\n * and stores the new state. Validates the transition as well.\n */\n _receiveSignal(signal, event) {\n const prevState = this._touchState;\n let nextState = null;\n if (Transitions[prevState] != null) {\n nextState = Transitions[prevState][signal];\n }\n if (this._touchState === NOT_RESPONDER && signal === RESPONDER_RELEASE) {\n return;\n }\n if (nextState == null || nextState === ERROR) {\n console.error(\n `PressResponder: Invalid signal ${signal} for state ${prevState} on responder`\n );\n } else if (prevState !== nextState) {\n this._performTransitionSideEffects(prevState, nextState, signal, event);\n this._touchState = nextState;\n }\n }\n /**\n * Performs a transition between touchable states and identify any activations\n * or deactivations (and callback invocations).\n */\n _performTransitionSideEffects(prevState, nextState, signal, event) {\n if (isTerminalSignal(signal)) {\n setTimeout(() => {\n this._isPointerTouch = false;\n }, 0);\n this._touchActivatePosition = null;\n this._cancelLongPressDelayTimeout();\n }\n if (isPressStartSignal(prevState) && signal === LONG_PRESS_DETECTED) {\n const onLongPress = this._config.onLongPress;\n if (onLongPress != null && event.nativeEvent.key == null) {\n onLongPress(event);\n this._longPressDispatched = true;\n }\n }\n const isPrevActive = isActiveSignal(prevState);\n const isNextActive = isActiveSignal(nextState);\n if (!isPrevActive && isNextActive) {\n this._activate(event);\n } else if (isPrevActive && !isNextActive) {\n this._deactivate(event);\n }\n if (isPressStartSignal(prevState) && signal === RESPONDER_RELEASE) {\n const _this$_config4 = this._config;\n const _onLongPress = _this$_config4.onLongPress;\n const onPress = _this$_config4.onPress;\n if (onPress != null) {\n const isPressCanceledByLongPress = _onLongPress != null && prevState === RESPONDER_ACTIVE_LONG_PRESS_START;\n if (!isPressCanceledByLongPress) {\n if (!(isNextActive || isPrevActive)) {\n this._activate(event);\n this._deactivate(event);\n }\n }\n }\n }\n this._cancelPressDelayTimeout();\n }\n _activate(event) {\n const _this$_config5 = this._config;\n const onPressChange = _this$_config5.onPressChange;\n const onPressStart = _this$_config5.onPressStart;\n const touch = getTouchFromResponderEvent(event);\n this._touchActivatePosition = {\n pageX: touch.pageX,\n pageY: touch.pageY\n };\n if (onPressStart != null) {\n onPressStart(event);\n }\n if (onPressChange != null) {\n onPressChange(true);\n }\n }\n _deactivate(event) {\n const _this$_config6 = this._config;\n const onPressChange = _this$_config6.onPressChange;\n const onPressEnd = _this$_config6.onPressEnd;\n function end() {\n if (onPressEnd != null) {\n onPressEnd(event);\n }\n if (onPressChange != null) {\n onPressChange(false);\n }\n }\n const delayPressEnd = normalizeDelay(this._config.delayPressEnd);\n if (delayPressEnd > 0) {\n this._pressOutDelayTimeout = setTimeout(() => {\n end();\n }, delayPressEnd);\n } else {\n end();\n }\n }\n _handleLongPress(event) {\n if (this._touchState === RESPONDER_ACTIVE_PRESS_START || this._touchState === RESPONDER_ACTIVE_LONG_PRESS_START) {\n this._receiveSignal(LONG_PRESS_DETECTED, event);\n }\n }\n _cancelLongPressDelayTimeout() {\n if (this._longPressDelayTimeout != null) {\n clearTimeout(this._longPressDelayTimeout);\n this._longPressDelayTimeout = null;\n }\n }\n _cancelPressDelayTimeout() {\n if (this._pressDelayTimeout != null) {\n clearTimeout(this._pressDelayTimeout);\n this._pressDelayTimeout = null;\n }\n }\n _cancelPressOutDelayTimeout() {\n if (this._pressOutDelayTimeout != null) {\n clearTimeout(this._pressOutDelayTimeout);\n this._pressOutDelayTimeout = null;\n }\n }\n}\nfunction normalizeDelay(delay, min, fallback) {\n if (min === void 0) {\n min = 0;\n }\n if (fallback === void 0) {\n fallback = 0;\n }\n return Math.max(min, delay !== null && delay !== void 0 ? delay : fallback);\n}\nfunction getTouchFromResponderEvent(event) {\n const _event$nativeEvent = event.nativeEvent;\n const changedTouches = _event$nativeEvent.changedTouches;\n const touches = _event$nativeEvent.touches;\n if (touches != null && touches.length > 0) {\n return touches[0];\n }\n if (changedTouches != null && changedTouches.length > 0) {\n return changedTouches[0];\n }\n return event.nativeEvent;\n}\nexport {\n PressResponder\n};\n//# sourceMappingURL=PressResponder.js.map\n"],"mappings":"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"}