diff --git a/Libraries/Linking/Linking.js b/Libraries/Linking/Linking.js index 00f737ae48a..27998010171 100644 --- a/Libraries/Linking/Linking.js +++ b/Libraries/Linking/Linking.js @@ -16,6 +16,7 @@ import Platform from '../Utilities/Platform'; import NativeLinkingManager from './NativeLinkingManager'; import NativeIntentAndroid from './NativeIntentAndroid'; import invariant from 'invariant'; +import nullthrows from 'nullthrows'; /** * `Linking` gives you a general interface to interact with both incoming @@ -25,7 +26,7 @@ import invariant from 'invariant'; */ class Linking extends NativeEventEmitter { constructor() { - super(Platform.OS === 'ios' ? NativeLinkingManager : undefined); + super(Platform.OS === 'ios' ? nullthrows(NativeLinkingManager) : undefined); } /** @@ -55,9 +56,9 @@ class Linking extends NativeEventEmitter { openURL(url: string): Promise { this._validateURL(url); if (Platform.OS === 'android') { - return NativeIntentAndroid.openURL(url); + return nullthrows(NativeIntentAndroid).openURL(url); } else { - return NativeLinkingManager.openURL(url); + return nullthrows(NativeLinkingManager).openURL(url); } } @@ -69,9 +70,9 @@ class Linking extends NativeEventEmitter { canOpenURL(url: string): Promise { this._validateURL(url); if (Platform.OS === 'android') { - return NativeIntentAndroid.canOpenURL(url); + return nullthrows(NativeIntentAndroid).canOpenURL(url); } else { - return NativeLinkingManager.canOpenURL(url); + return nullthrows(NativeLinkingManager).canOpenURL(url); } } @@ -82,9 +83,9 @@ class Linking extends NativeEventEmitter { */ openSettings(): Promise { if (Platform.OS === 'android') { - return NativeIntentAndroid.openSettings(); + return nullthrows(NativeIntentAndroid).openSettings(); } else { - return NativeLinkingManager.openSettings(); + return nullthrows(NativeLinkingManager).openSettings(); } } @@ -97,9 +98,9 @@ class Linking extends NativeEventEmitter { getInitialURL(): Promise { return Platform.OS === 'android' ? InteractionManager.runAfterInteractions().then(() => - NativeIntentAndroid.getInitialURL(), + nullthrows(NativeIntentAndroid).getInitialURL(), ) - : NativeLinkingManager.getInitialURL(); + : nullthrows(NativeLinkingManager).getInitialURL(); } /* @@ -118,7 +119,7 @@ class Linking extends NativeEventEmitter { }>, ): Promise { if (Platform.OS === 'android') { - return NativeIntentAndroid.sendIntent(action, extras); + return nullthrows(NativeIntentAndroid).sendIntent(action, extras); } else { return new Promise((resolve, reject) => reject(new Error('Unsupported'))); } diff --git a/Libraries/Linking/NativeIntentAndroid.js b/Libraries/Linking/NativeIntentAndroid.js index 807c999ef9c..b5d61e975d4 100644 --- a/Libraries/Linking/NativeIntentAndroid.js +++ b/Libraries/Linking/NativeIntentAndroid.js @@ -28,4 +28,4 @@ export interface Spec extends TurboModule { ) => Promise; } -export default (TurboModuleRegistry.getEnforcing('IntentAndroid'): Spec); +export default (TurboModuleRegistry.get('IntentAndroid'): ?Spec); diff --git a/Libraries/Linking/NativeLinkingManager.js b/Libraries/Linking/NativeLinkingManager.js index 7e744b8bf6e..95a93817c32 100644 --- a/Libraries/Linking/NativeLinkingManager.js +++ b/Libraries/Linking/NativeLinkingManager.js @@ -25,4 +25,4 @@ export interface Spec extends TurboModule { +removeListeners: (count: number) => void; } -export default (TurboModuleRegistry.getEnforcing('LinkingManager'): Spec); +export default (TurboModuleRegistry.get('LinkingManager'): ?Spec);