UNPKG

react-native-wear-connectivity

Version:
61 lines (57 loc) 2.15 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.WearConnectivity = void 0; exports.monitorFileTransfers = monitorFileTransfers; Object.defineProperty(exports, "sendMessage", { enumerable: true, get: function () { return _messages.sendMessage; } }); exports.startFileTransfer = void 0; Object.defineProperty(exports, "watchEvents", { enumerable: true, get: function () { return _subscriptions.watchEvents; } }); var _reactNative = require("react-native"); var _subscriptions = require("./subscriptions"); var _messages = require("./messages"); const LINKING_ERROR = `The package 'react-native-wear-connectivity' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({ ios: "- You have run 'pod install'\n", default: '' }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n'; // @ts-expect-error const isTurboModuleEnabled = global.__turboModuleProxy != null; const WearConnectivityModule = isTurboModuleEnabled ? require('./NativeWearConnectivity').default : _reactNative.NativeModules.WearConnectivity; const WearConnectivity = exports.WearConnectivity = WearConnectivityModule ? WearConnectivityModule : new Proxy({}, { get() { throw new Error(LINKING_ERROR); } }); const startFileTransfer = (file, _metadata) => { return WearConnectivity.sendFile(file, _metadata); }; exports.startFileTransfer = startFileTransfer; // Define the headless task const WearConnectivityTask = async taskData => { // Emit an event or process the message as needed _reactNative.DeviceEventEmitter.emit('message', taskData); }; /** * Monitors file transfer events. * @param callback Function to receive transfer events. * @returns Unsubscribe function. */ function monitorFileTransfers(callback) { const subscription = _reactNative.DeviceEventEmitter.addListener('FileTransferEvent', callback); return () => { subscription.remove(); }; } // Register the headless task with React Native _reactNative.AppRegistry.registerHeadlessTask('WearConnectivityTask', () => WearConnectivityTask); //# sourceMappingURL=index.js.map