39 lines
958 B
TypeScript
39 lines
958 B
TypeScript
import React, { useEffect } from 'react';
|
|
import { StyleSheet, StatusBar } from 'react-native';
|
|
import { SafeAreaProvider } from 'react-native-safe-area-context';
|
|
import { RootNavigator } from './navigation/rootNavigator';
|
|
import { ThemeProvider, useTheme } from './theme';
|
|
|
|
const ThemedStatusBar = () => {
|
|
const { theme: colors, isDark } = useTheme();
|
|
|
|
useEffect(() => {
|
|
StatusBar.setBarStyle(isDark ? 'light-content' : 'dark-content', true);
|
|
StatusBar.setBackgroundColor(colors.background, true);
|
|
}, [colors, isDark]);
|
|
|
|
return (
|
|
<StatusBar
|
|
barStyle={isDark ? 'light-content' : 'dark-content'}
|
|
backgroundColor={colors.background}
|
|
/>
|
|
);
|
|
};
|
|
|
|
const App = () => {
|
|
return (
|
|
<SafeAreaProvider>
|
|
<ThemeProvider>
|
|
<ThemedStatusBar />
|
|
<RootNavigator />
|
|
</ThemeProvider>
|
|
</SafeAreaProvider>
|
|
);
|
|
};
|
|
|
|
export default App;
|
|
|
|
const styles = StyleSheet.create({
|
|
root: { flex: 1 },
|
|
});
|