import React, { useRef } from "react"; import { View, Text, TouchableOpacity, Linking } from "react-native"; import MapView, { Marker } from "react-native-maps"; import { MaterialCommunityIcons } from "@expo/vector-icons"; import { useCurrentTrain } from "../stateBox/useCurrentTrain"; import { useNavigation } from "@react-navigation/native"; export default function TrainMenu({ stationData, style }) { const { webview } = useCurrentTrain(); const mapRef = useRef(); const { navigate } = useNavigation(); return ( {stationData && Object.keys(stationData).map((d) => stationData[d].map((D, index) => { if (!D.StationMap) return null; const latlng = D.StationMap.replace( "https://www.google.co.jp/maps/place/", "" ).split(","); if (latlng.length == 0) return null; return ( { webview.current?.injectJavaScript( `MoveDisplayStation('${d}_${D.MyStation}_${D.Station_JP}')` ); if (navigate) navigate("Apps"); }} > ); }) )} {navigate && ( navigate("howto", { info: "https://train.jr-shikoku.co.jp/usage.htm", }) } > 使い方 navigate("favoriteList")} > お気に入り Linking.openURL( "https://nexcloud.haruk.in/apps/forms/ZRHjWFF7znr5Xjr2" ) } > フィードバック )} {navigate && ( navigate("Apps")} > 閉じる )} ); } const UsefulBox = (props) => { const { icon, backgroundColor, flex, onPressButton, children } = props; return ( {children} ); };