import React, { useState, useEffect } from "react"; import { View, TouchableOpacity, useWindowDimensions } from "react-native"; import { StateBox } from "./StateBox"; import { useDeviceOrientationChange } from "../../../stateBox/useDeviceOrientationChange"; import { getStationList2 } from "../../../lib/getStationList2"; import { useCurrentTrain } from "../../../stateBox/useCurrentTrain"; import { SheetManager } from "react-native-actions-sheet"; export const TrainDataView = ({ currentTrainData, currentPosition, nearTrainIDList, openTrainInfo, mode = 0, navigate, }) => { const { width, height } = useWindowDimensions(); const { isLandscape } = useDeviceOrientationChange(); const { webview, getCurrentTrain } = useCurrentTrain(); const [mapsStationData, setMapsStationData] = useState(undefined); useEffect(() => { getStationList2().then(setMapsStationData); }, []); const onLine = !!currentPosition?.toString().length; return ( { const test = []; Object.keys(mapsStationData).forEach((d) => { mapsStationData[d].forEach((x) => { if (x.StationNumber == currentPosition[0]) test.push({ line: d, station: x }); }); if (currentPosition[0] == "M12") { test.push({ line: "seto", station: { Station_JP: "児島", MyStation: "0" }, }); } }); if (!test.length) return; webview.current?.injectJavaScript( `MoveDisplayStation('${test[0].line}_${test[0].station.MyStation}_${test[0].station.Station_JP}');setStrings();` ); navigate("Apps"); SheetManager.hide("EachTrainInfo"); }} > { if (nearTrainIDList.length == 0) return; openTrainInfo(nearTrainIDList[0]); }} > {nearTrainIDList.length == 0 ? ( ) : ( )} ); };