packages/@fbcmobile-ui/Components/OfflineBanner.js (37 lines of code) (raw):

/** * Copyright (c) Facebook, Inc. and its affiliates. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. * * @flow strict-local * @format */ 'use strict'; import React from 'react'; import Text from '@fbcmobile/ui/Components/Core/Text'; import fbt from 'fbt'; import {Colors} from '@fbcmobile/ui/Theme'; import {StyleSheet, View} from 'react-native'; import {useNetInfo} from '@react-native-community/netinfo'; const OfflineBanner = () => { const netInfo = useNetInfo(); return ( <> {netInfo.isConnected ? null : ( <View style={styles.root}> <Text color={'regular'} style={styles.text}> <fbt desc="Text saying the device has no connectivity so it is using cached data"> No Connectivity - using cached data </fbt> </Text> </View> )} </> ); }; const styles = StyleSheet.create({ root: { top: 0, left: 0, right: 0, paddingVertical: 5, backgroundColor: Colors.Gray85, }, text: { marginLeft: 10, textAlign: 'center', }, }); export default OfflineBanner;