UNPKG

@trycourier/courier-react-native

Version:

Inbox, Push Notifications, and Preferences for React Native

32 lines (30 loc) 950 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _reactNative = require("react-native"); var _Modules = require("./Modules"); class Broadcaster { constructor(module) { this.emitter = new _reactNative.NativeEventEmitter(module); } /** * Creates an event listener for the native function * @param key Key for the listener * @param callback Value returned for the listener callback * @returns Subscription */ async addListener(id, callback) { await _Modules.Modules.Shared.attachEmitter(id); if (_reactNative.Platform.OS === 'android') { return _reactNative.DeviceEventEmitter.addListener(id, event => callback(event)); } if (_reactNative.Platform.OS === 'ios') { return this.emitter.addListener(id, event => callback(event)); } return undefined; } } exports.default = Broadcaster; //# sourceMappingURL=Broadcaster.js.map