diff --git a/Libraries/Utilities/HMRLoadingView.ios.js b/Libraries/Utilities/HMRLoadingView.ios.js index 77105bcc1f1..76979539eca 100644 --- a/Libraries/Utilities/HMRLoadingView.ios.js +++ b/Libraries/Utilities/HMRLoadingView.ios.js @@ -11,19 +11,23 @@ 'use strict'; const processColor = require('../StyleSheet/processColor'); -const {DevLoadingView} = require('../BatchedBridge/NativeModules'); +import NativeDevLoadingView from './NativeDevLoadingView'; class HMRLoadingView { static showMessage(message: string) { - DevLoadingView.showMessage( - message, - processColor('#000000'), - processColor('#aaaaaa'), - ); + if (NativeDevLoadingView != null) { + NativeDevLoadingView.showMessage( + message, + processColor('#000000'), + processColor('#aaaaaa'), + ); + } } static hide() { - DevLoadingView.hide(); + if (NativeDevLoadingView != null) { + NativeDevLoadingView.hide(); + } } } diff --git a/Libraries/Utilities/NativeDevLoadingView.js b/Libraries/Utilities/NativeDevLoadingView.js new file mode 100644 index 00000000000..b22399bea27 --- /dev/null +++ b/Libraries/Utilities/NativeDevLoadingView.js @@ -0,0 +1,25 @@ +/** + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + * + * @flow + * @format + */ + +'use strict'; + +import type {TurboModule} from 'RCTExport'; +import * as TurboModuleRegistry from 'TurboModuleRegistry'; + +export interface Spec extends TurboModule { + +showMessage: ( + message: string, + color: Object, + backgroundColor: Object, + ) => void; + +hide: () => void; +} + +export default TurboModuleRegistry.get('DevLoadingView');