UNPKG

create-expo-cljs-app

Version:

Create a react native application with Expo and Shadow-CLJS!

124 lines (96 loc) 6.28 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.startListening = startListening; exports.stopListening = stopListening; var _reactNative = require("react-native"); var _State = require("../../State"); var _EventType = require("../../EventType"); var _handlersRegistry = require("../handlersRegistry"); let gestureHandlerEventSubscription = null; let gestureHandlerStateChangeEventSubscription = null; const dummyStateManager = { begin: () => { console.warn('You have to use react-native-reanimated in order to control the state of the gesture.'); }, activate: () => { console.warn('You have to use react-native-reanimated in order to control the state of the gesture.'); }, end: () => { console.warn('You have to use react-native-reanimated in order to control the state of the gesture.'); }, fail: () => { console.warn('You have to use react-native-reanimated in order to control the state of the gesture.'); } }; function isStateChangeEvent(event) { // @ts-ignore oldState doesn't exist on GestureTouchEvent and that's the point return event.oldState != null; } function isTouchEvent(event) { return event.eventType != null; } function onGestureHandlerEvent(event) { var _handler$handlers7, _handler$handlers7$on, _handler$handlers8, _handler$handlers8$on, _handler$handlers9, _handler$handlers9$on, _handler$handlers10, _handler$handlers10$o; const handler = (0, _handlersRegistry.findHandler)(event.handlerTag); if (handler) { if (isStateChangeEvent(event)) { if (event.oldState === _State.State.UNDETERMINED && event.state === _State.State.BEGAN) { var _handler$handlers$onB, _handler$handlers; (_handler$handlers$onB = (_handler$handlers = handler.handlers).onBegin) === null || _handler$handlers$onB === void 0 ? void 0 : _handler$handlers$onB.call(_handler$handlers, event); } else if ((event.oldState === _State.State.BEGAN || event.oldState === _State.State.UNDETERMINED) && event.state === _State.State.ACTIVE) { var _handler$handlers$onS, _handler$handlers2; (_handler$handlers$onS = (_handler$handlers2 = handler.handlers).onStart) === null || _handler$handlers$onS === void 0 ? void 0 : _handler$handlers$onS.call(_handler$handlers2, event); } else if (event.oldState !== event.state && event.state === _State.State.END) { var _handler$handlers$onF, _handler$handlers4; if (event.oldState === _State.State.ACTIVE) { var _handler$handlers$onE, _handler$handlers3; (_handler$handlers$onE = (_handler$handlers3 = handler.handlers).onEnd) === null || _handler$handlers$onE === void 0 ? void 0 : _handler$handlers$onE.call(_handler$handlers3, event, true); } (_handler$handlers$onF = (_handler$handlers4 = handler.handlers).onFinalize) === null || _handler$handlers$onF === void 0 ? void 0 : _handler$handlers$onF.call(_handler$handlers4, event, true); } else if ((event.state === _State.State.FAILED || event.state === _State.State.CANCELLED) && event.oldState !== event.state) { var _handler$handlers$onF2, _handler$handlers6; if (event.oldState === _State.State.ACTIVE) { var _handler$handlers$onE2, _handler$handlers5; (_handler$handlers$onE2 = (_handler$handlers5 = handler.handlers).onEnd) === null || _handler$handlers$onE2 === void 0 ? void 0 : _handler$handlers$onE2.call(_handler$handlers5, event, false); } (_handler$handlers$onF2 = (_handler$handlers6 = handler.handlers).onFinalize) === null || _handler$handlers$onF2 === void 0 ? void 0 : _handler$handlers$onF2.call(_handler$handlers6, event, false); } } else if (isTouchEvent(event)) { switch (event.eventType) { case _EventType.EventType.TOUCHES_DOWN: (_handler$handlers7 = handler.handlers) === null || _handler$handlers7 === void 0 ? void 0 : (_handler$handlers7$on = _handler$handlers7.onTouchesDown) === null || _handler$handlers7$on === void 0 ? void 0 : _handler$handlers7$on.call(_handler$handlers7, event, dummyStateManager); break; case _EventType.EventType.TOUCHES_MOVE: (_handler$handlers8 = handler.handlers) === null || _handler$handlers8 === void 0 ? void 0 : (_handler$handlers8$on = _handler$handlers8.onTouchesMove) === null || _handler$handlers8$on === void 0 ? void 0 : _handler$handlers8$on.call(_handler$handlers8, event, dummyStateManager); break; case _EventType.EventType.TOUCHES_UP: (_handler$handlers9 = handler.handlers) === null || _handler$handlers9 === void 0 ? void 0 : (_handler$handlers9$on = _handler$handlers9.onTouchesUp) === null || _handler$handlers9$on === void 0 ? void 0 : _handler$handlers9$on.call(_handler$handlers9, event, dummyStateManager); break; case _EventType.EventType.TOUCHES_CANCELLED: (_handler$handlers10 = handler.handlers) === null || _handler$handlers10 === void 0 ? void 0 : (_handler$handlers10$o = _handler$handlers10.onTouchesCancelled) === null || _handler$handlers10$o === void 0 ? void 0 : _handler$handlers10$o.call(_handler$handlers10, event, dummyStateManager); break; } } else { var _handler$handlers$onU, _handler$handlers11; (_handler$handlers$onU = (_handler$handlers11 = handler.handlers).onUpdate) === null || _handler$handlers$onU === void 0 ? void 0 : _handler$handlers$onU.call(_handler$handlers11, event); } } } function startListening() { stopListening(); gestureHandlerEventSubscription = _reactNative.DeviceEventEmitter.addListener('onGestureHandlerEvent', onGestureHandlerEvent); gestureHandlerStateChangeEventSubscription = _reactNative.DeviceEventEmitter.addListener('onGestureHandlerStateChange', onGestureHandlerEvent); } function stopListening() { if (gestureHandlerEventSubscription) { _reactNative.DeviceEventEmitter.removeSubscription(gestureHandlerEventSubscription); gestureHandlerEventSubscription = null; } if (gestureHandlerStateChangeEventSubscription) { _reactNative.DeviceEventEmitter.removeSubscription(gestureHandlerStateChangeEventSubscription); gestureHandlerStateChangeEventSubscription = null; } } //# sourceMappingURL=eventReceiver.js.map