Files
jrshikoku/lib/trainDataIcon.ts
harukin-expo-dev-env ab2061b2bd unyohubアイコン対応
2026-06-23 16:40:44 +00:00

29 lines
804 B
TypeScript

import type { CustomTrainData } from "@/lib/CommonTypes";
import {
normalizeIconDisplayMode,
type IconDisplayMode,
} from "@/lib/iconDisplayMode";
export const resolveTrainDataIcon = (
trainData: Pick<CustomTrainData, "train_info_img" | "train_info_img_hub">,
iconDisplayMode: IconDisplayMode,
fallback = "",
): string => {
if (iconDisplayMode === "hub") {
return trainData.train_info_img_hub || trainData.train_info_img || fallback;
}
return trainData.train_info_img || fallback;
};
export const resolveTrainDataIconFromValue = (
trainData: Pick<CustomTrainData, "train_info_img" | "train_info_img_hub">,
iconDisplayModeValue: unknown,
fallback = "",
): string =>
resolveTrainDataIcon(
trainData,
normalizeIconDisplayMode(iconDisplayModeValue),
fallback,
);