列車アイコンの追加

This commit is contained in:
harukin-expo-dev-env
2024-12-27 02:41:46 +00:00
parent 80df2ba040
commit d1be37e3be
2 changed files with 124 additions and 47 deletions

View File

@@ -5,6 +5,7 @@ import dayjs from "dayjs";
import { useInterval } from "../../../lib/useInterval";
import { Icon } from "@expo/vector-icons/build/createIconSet";
import { SheetManager } from "react-native-actions-sheet";
import { customTrainDataDetector } from "../../custom-train-data";
type GlyphNames = ComponentProps<typeof Ionicons>["name"];
@@ -20,8 +21,14 @@ type apt = {
export const TrainIconStatus: FC<Props> = ({ data, navigate, from }) => {
const [trainIcon, setTrainIcon] = useState(null);
const [anpanmanStatus, setAnpanmanStatus] = useState<apt>();
const [address, setAddress] = useState("");
useEffect(() => {
if (!data.trainNum) return;
const { trainIcon, infoUrl } = customTrainDataDetector(data.trainNum);
if (trainIcon) setTrainIcon(trainIcon);
if (infoUrl) setAddress(infoUrl);
switch (data.trainNum) {
case "32D":
case "36D":
@@ -33,11 +40,6 @@ export const TrainIconStatus: FC<Props> = ({ data, navigate, from }) => {
case "45D":
case "49D":
case "57D":
setTrainIcon(
`https://n8n.haruk.in/webhook/dosan-anpanman-pictures.png?trainNum=${
data.trainNum
}&day=${dayjs().format("yyyy-MM-DD")}`
);
fetch(
`https://n8n.haruk.in/webhook/dosan-anpanman?trainNum=${
data.trainNum
@@ -72,7 +74,7 @@ export const TrainIconStatus: FC<Props> = ({ data, navigate, from }) => {
<TouchableOpacity
onPress={() => {
navigate("howto", {
info: "https://www.jr-eki.com/aptrain/naani/dosan/jikoku.html",
info: address,
goTo: from == "LED" ? "menu" : from,
});
SheetManager.hide("EachTrainInfo");
@@ -81,8 +83,8 @@ export const TrainIconStatus: FC<Props> = ({ data, navigate, from }) => {
{move ? (
<Image
source={{ uri: trainIcon }}
style={{ height: 30, width: 30, margin: 5 }}
resizeMethod="resize"
style={{ height: 30, width: 25, margin: 5 }}
resizeMethod="scale"
/>
) : (
<Ionicons {...anpanmanStatus} size={30} style={{ margin: 5 }} />