51 lines
1.1 KiB
TypeScript
51 lines
1.1 KiB
TypeScript
import { StatusBar, StyleSheet, useColorScheme, View } from 'react-native';
|
|
import {
|
|
SafeAreaProvider,
|
|
useSafeAreaInsets,
|
|
} from 'react-native-safe-area-context';
|
|
import RootNavigator from '@navigation/rootNavigator';
|
|
import { Provider } from 'react-redux';
|
|
import { store } from '@store';
|
|
import { useAppTheme } from '@theme';
|
|
|
|
function App() {
|
|
const isDarkMode = useColorScheme() === 'dark';
|
|
|
|
return (
|
|
<Provider store={store}>
|
|
<SafeAreaProvider>
|
|
<StatusBar barStyle={isDarkMode ? 'light-content' : 'dark-content'} />
|
|
<AppContent />
|
|
</SafeAreaProvider>
|
|
</Provider>
|
|
);
|
|
}
|
|
|
|
function AppContent() {
|
|
const safeAreaInsets = useSafeAreaInsets();
|
|
const { colors } = useAppTheme();
|
|
|
|
return (
|
|
<View
|
|
style={[
|
|
styles.container,
|
|
{
|
|
paddingTop: safeAreaInsets.top,
|
|
paddingBottom: safeAreaInsets.bottom,
|
|
backgroundColor: colors.background,
|
|
},
|
|
]}
|
|
>
|
|
<RootNavigator />
|
|
</View>
|
|
);
|
|
}
|
|
|
|
const styles = StyleSheet.create({
|
|
container: {
|
|
flex: 1,
|
|
},
|
|
});
|
|
|
|
export default App;
|