-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathApp.js
103 lines (95 loc) · 3.05 KB
/
App.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
// App.js
import React from 'react';
import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';
import { ThemeProvider } from './contexts/ThemeContext';
import HomeScreen from './src/screens/HomeScreen';
import TruthTableScreen from './src/screens/TruthTableScreen';
import TruthTableResultScreen from './src/screens/TruthTableResultScreen';
import InstructionsScreen from './src/screens/InstructionsScreen';
import EquivalenceRulesScreen from './src/screens/EquivalenceRulesScreen';
import EquivalenceScreen from './src/screens/EquivalenceScreen';
import ApplyLawsScreen from './src/screens/ApplyLawsScreen';
import XKCDScreen from './src/screens/XKCDScreen'; // Existing screen
// Import new screens
import StringGeneratorScreen from './src/screens/StringGeneratorScreen';
import StringCheckerScreen from './src/screens/StringCheckerScreen';
const Stack = createStackNavigator();
const AppContent = () => {
return (
<NavigationContainer>
<Stack.Navigator
initialRouteName="Home"
screenOptions={{
headerStyle: {
backgroundColor: '#6200ee', // Adjust based on your theme if necessary
},
headerTintColor: '#fff',
headerTitleStyle: {
fontWeight: 'bold',
},
}}
>
<Stack.Screen
name="Home"
component={HomeScreen}
options={{ title: 'Logic Learner' }}
/>
<Stack.Screen
name="TruthTable"
component={TruthTableScreen}
options={{ title: 'Generate Truth Table' }}
/>
<Stack.Screen
name="TruthTableResult"
component={TruthTableResultScreen}
options={{ title: 'Truth Table Result' }}
/>
<Stack.Screen
name="Instructions"
component={InstructionsScreen}
options={{ title: 'How It Works' }}
/>
<Stack.Screen
name="Equivalence"
component={EquivalenceScreen}
options={{ title: 'Check Equivalence' }}
/>
<Stack.Screen
name="EquivalenceRules"
component={EquivalenceRulesScreen}
options={{ title: 'Equivalence Rules' }}
/>
<Stack.Screen
name="ApplyLaws"
component={ApplyLawsScreen}
options={{ title: 'Apply Logical Laws' }}
/>
<Stack.Screen
name="XKCD"
component={XKCDScreen}
options={{ title: 'XKCD Comics' }}
/>
{/* New Screens */}
<Stack.Screen
name="StringGenerator"
component={StringGeneratorScreen}
options={{ title: 'String Generator' }}
/>
<Stack.Screen
name="StringChecker"
component={StringCheckerScreen}
options={{ title: 'String Checker' }}
/>
</Stack.Navigator>
</NavigationContainer>
);
};
const App = () => {
return (
<ThemeProvider>
<AppContent />
</ThemeProvider>
);
};
export default App;