()
| 19 | | 'native-stack'; |
| 20 | |
| 21 | export default function App() { |
| 22 | const [currentExample, setCurrentExample] = React.useState<Example | null>( |
| 23 | null, |
| 24 | ); |
| 25 | const [statusBarHidden, setStatusBarHidden] = React.useState(false); |
| 26 | |
| 27 | React.useEffect(() => { |
| 28 | async function loadCurrentExample() { |
| 29 | const example = await AsyncStorage.getItem(STORAGE_KEY); |
| 30 | setCurrentExample((example as Example | null) ?? null); |
| 31 | } |
| 32 | loadCurrentExample(); |
| 33 | }, []); |
| 34 | |
| 35 | React.useEffect(() => { |
| 36 | async function saveCurrentExample() { |
| 37 | if (currentExample != null) { |
| 38 | await AsyncStorage.setItem(STORAGE_KEY, currentExample); |
| 39 | } |
| 40 | } |
| 41 | saveCurrentExample(); |
| 42 | }, [currentExample]); |
| 43 | |
| 44 | React.useEffect(() => { |
| 45 | DevSettings.addMenuItem('Toggle Status Bar', () => { |
| 46 | setStatusBarHidden((s) => !s); |
| 47 | }); |
| 48 | DevSettings.addMenuItem('Show SafeAreaView Example', () => { |
| 49 | setCurrentExample('safe-area-view'); |
| 50 | }); |
| 51 | DevSettings.addMenuItem('Show SafeAreaView Edges Example', () => { |
| 52 | setCurrentExample('safe-area-view-edges'); |
| 53 | }); |
| 54 | DevSettings.addMenuItem('Show Hooks Example', () => { |
| 55 | setCurrentExample('hooks'); |
| 56 | }); |
| 57 | DevSettings.addMenuItem('Show Listener Example', () => { |
| 58 | setCurrentExample('listener'); |
| 59 | }); |
| 60 | DevSettings.addMenuItem('Show React Navigation Example', () => { |
| 61 | setCurrentExample('react-navigation'); |
| 62 | }); |
| 63 | DevSettings.addMenuItem('Show Native Stack Example', () => { |
| 64 | setCurrentExample('native-stack'); |
| 65 | }); |
| 66 | }, []); |
| 67 | |
| 68 | let content: React.ReactElement<unknown>; |
| 69 | switch (currentExample) { |
| 70 | case 'safe-area-view': |
| 71 | content = <SafeAreaViewExample />; |
| 72 | break; |
| 73 | case 'safe-area-view-edges': |
| 74 | content = <SafeAreaViewEdgesExample />; |
| 75 | break; |
| 76 | case 'hooks': |
| 77 | content = <HooksExample />; |
| 78 | break; |
nothing calls this directly
no test coverage detected