Files
jrshikoku/lib/getCurrentTrainData.ts
2025-11-29 13:09:47 +00:00

30 lines
1.1 KiB
TypeScript

import { customTrainDataDetector } from "@/components/custom-train-data";
import { CustomTrainData, trainTypeID } from "./CommonTypes";
import { trainDataType } from "./trainPositionTextArray";
export const getCurrentTrainData = (
trainNum: string,
currentTrain: trainDataType[],
allCustomTrainData: CustomTrainData[] | undefined
) => {
const customTrainData = customTrainDataDetector(trainNum, allCustomTrainData);
switch (customTrainData.type) {
case "Normal":
case "OneMan":
const currentTrainData = currentTrain.filter((a) => a.num == trainNum);
if (currentTrainData.length == 0) return customTrainData;
else if (currentTrainData[0].Type?.includes("rapid:")) {
const typeText = currentTrainData[0].Type?.split(":");
const returnData: CustomTrainData = {
...{...customTrainData, ...currentTrainData[0]},
type: "Rapid" as trainTypeID,
train_name: typeText[1].replace("\r", ""),
};
return returnData;
}
return customTrainData;
default:
return customTrainData;
}
};