Merge commit '156f0f515019515dcb45e2218e6197568caaf3e5' into feature/new-setting-system

This commit is contained in:
harukin-expo-dev-env
2024-03-26 13:21:08 +00:00
20 changed files with 576 additions and 649 deletions

View File

@@ -13,13 +13,16 @@ import { optionData } from "./lib/stackOption.js";
import CurrentTrainListView from "./components/CurrentTrainListView.js";
import AllTrainDiagramView from "./components/AllTrainDiagramView.js";
import { useCurrentTrain } from "./stateBox/useCurrentTrain.js";
import { useNavigation } from "@react-navigation/native";
const Stack = createStackNavigator();
export function MenuPage({ navigation }) {
export function MenuPage() {
const { favoriteStation, setFavoriteStation } = useFavoriteStation();
const { getCurrentTrain } = useCurrentTrain();
const navigation = useNavigation();
const { addListener } = navigation;
useEffect(() => {
const unsubscribe = navigation.addListener("tabPress", (e) => {
const unsubscribe = addListener("tabPress", (e) => {
AS.getItem("favoriteStation")
.then((d) => {
const returnData = JSON.parse(d);
@@ -41,9 +44,8 @@ export function MenuPage({ navigation }) {
gestureEnabled: true,
headerTransparent: true,
}}
>
{(props) => <Menu {...props} getCurrentTrain={getCurrentTrain} />}
</Stack.Screen>
children={() => <Menu getCurrentTrain={getCurrentTrain} />}
/>
<Stack.Screen
name="setting"
options={{
@@ -51,54 +53,28 @@ export function MenuPage({ navigation }) {
gestureEnabled: false,
cardOverlayEnabled: true,
}}
>
{(props) => <Setting {...props} />}
</Stack.Screen>
component={Setting}
/>
<Stack.Screen
name="trainbase"
options={{
...TransitionPresets.ModalPresentationIOS,
cardOverlayEnabled: true,
headerShown: false,
gestureEnabled: true,
headerTransparent: true,
gestureResponseDistance: { vertical: 300 },
}}
>
{(props) => <TrainBase {...props} />}
</Stack.Screen>
options={{ ...optionData, gestureResponseDistance: { vertical: 300 } }}
children={(props) => <TrainBase {...props} />}
/>
<Stack.Screen
name="currentTrainIDList"
options={{
...TransitionPresets.ModalPresentationIOS,
cardOverlayEnabled: true,
headerShown: false,
gestureEnabled: true,
headerTransparent: true,
gestureResponseDistance: { vertical: 300 },
}}
>
{(props) => <CurrentTrainListView {...props} />}
</Stack.Screen>
options={{ ...optionData, gestureResponseDistance: { vertical: 300 } }}
component={CurrentTrainListView}
/>
<Stack.Screen
name="AllTrainIDList"
options={{
...TransitionPresets.ModalPresentationIOS,
cardOverlayEnabled: true,
headerShown: false,
headerTransparent: true,
}}
>
{(props) => <AllTrainDiagramView {...props} />}
</Stack.Screen>
options={{ ...optionData, gestureEnabled: false }}
component={AllTrainDiagramView}
/>
<Stack.Screen
name="howto"
options={{
...optionData,
}}
>
{(props) => <HowTo {...props} />}
</Stack.Screen>
options={optionData}
children={(props) => <HowTo {...props} />}
/>
</Stack.Navigator>
);
}