@trycourier/courier-react-native
Version:
Inbox, Push Notifications, and Preferences for React Native
31 lines (30 loc) • 1.51 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.Modules = void 0;
var _reactNative = require("react-native");
class Modules {
static LINKING_ERROR = `The package '@trycourier/courier-react-native' 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';
static Client = Modules.getNativeModule('CourierClientModule', _reactNative.NativeModules.CourierClientModule);
static Shared = Modules.getNativeModule('CourierSharedModule', _reactNative.NativeModules.CourierSharedModule);
static System = Modules.getNativeModule('CourierSystemModule', _reactNative.NativeModules.CourierSystemModule);
static getNativeModule(moduleName, bridgeModule) {
const resolved = (_reactNative.TurboModuleRegistry === null || _reactNative.TurboModuleRegistry === void 0 ? void 0 : _reactNative.TurboModuleRegistry.get(moduleName)) ?? bridgeModule ?? undefined;
return resolved ? resolved : new Proxy({}, {
get() {
throw new Error(Modules.LINKING_ERROR);
}
});
}
static getNativeComponent(componentName) {
return _reactNative.UIManager.getViewManagerConfig(componentName) != null ? (0, _reactNative.requireNativeComponent)(componentName) : () => {
throw new Error(Modules.LINKING_ERROR);
};
}
}
exports.Modules = Modules;
//# sourceMappingURL=Modules.js.map