UNPKG

react-native-turbo-haptics

Version:
56 lines (52 loc) 1.85 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.internalTrigger = exports.initTurboHaptics = void 0; var _reactNative = require("react-native"); var _NativeTurboHaptics = _interopRequireDefault(require("./NativeTurboHaptics")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } const noop = () => { 'worklet'; return; }; const initTurboHaptics = () => { // Check if already initialized if (global.createHapticFeedback == null) { try { let success = false; const module = _reactNative.NativeModules.TurboHaptics; // [Pre-0.74] Check for JSI environment and install bindings if (global.nativeCallSyncHook != null && module !== null && module !== void 0 && module.install) { success = module.install(); } // [RN 0.74+] Check for JSI environment and install bindings else if (global.__turboModuleProxy != null && _NativeTurboHaptics.default !== null) { try { success = _NativeTurboHaptics.default.install(); } catch (e) { console.warn('TurboHaptics: TurboModule not available:', e); } } if (!success) { console.warn('TurboHaptics: Failed to initialize'); return null; } if (global.createHapticFeedback == null) { console.warn('TurboHaptics: Failed to create haptic feedback'); return null; } } catch (e) { console.warn('TurboHaptics: Initialization failed:', e); return null; } } return global.createHapticFeedback ? global.createHapticFeedback() : null; }; // Initialize module exports.initTurboHaptics = initTurboHaptics; const haptics = initTurboHaptics() || { trigger: noop }; const internalTrigger = exports.internalTrigger = haptics.trigger; //# sourceMappingURL=initModule.js.map