import { trainPosition } from "@/lib/trainPositionTextArray"; import React, { FC } from "react"; import { View, Text, TextStyle, ViewStyle } from "react-native"; type stateBox = { currentTrainData: any; platformNumber: any; title: string; style?: ViewStyle; mode?: number; platformDescription: string; lineNumber: string; }; export const PositionBox: FC = (props) => { const { currentTrainData, platformNumber, title, style, mode, platformDescription, lineNumber, } = props; let firstText = ""; let secondText = ""; let marginText = ""; let externalText = ""; const { isBetween, Pos: PosData } = trainPosition(currentTrainData); if (isBetween === true) { const { from, to } = PosData; firstText = from; secondText = to; marginText = mode == 2 ? "→" : "↓"; } else { const { Pos } = PosData; if (Pos !== "") { firstText = Pos; if (platformNumber) { secondText = `${platformNumber}番乗り場`; if (lineNumber) { externalText = `${lineNumber}番線`; } } else if (lineNumber) { secondText = `${lineNumber}番線`; } } } return ( {title} {firstText && ( {firstText} )} {marginText && ( {marginText} )} {secondText && ( {secondText} )} {(platformDescription || externalText) && ( {" " + externalText} {" " + platformDescription} )} ); }; const boxStyle: ViewStyle = { flex: 1, backgroundColor: "white", borderRadius: 10, padding: 10, margin: 10, }; const boxStyle2: ViewStyle = { flex: 1, backgroundColor: "white", borderRadius: 10, padding: 5, margin: 5, }; const boxTextStyle2: TextStyle = { fontSize: 18, color: "#0099CC", textAlign: "right", }; const boxTextStyleBig: TextStyle = { fontSize: 28, color: "#0099CC", textAlign: "right", }; const boxTextStyleMini: TextStyle = { fontSize: 16, color: "#0099CC", textAlign: "right", }; const boxTextStyle: TextStyle = { fontSize: 25, color: "#0099CC", textAlign: "right", };