Compare commits
41 Commits
2f76e3776f
...
e6fab84393
Author | SHA1 | Date | |
---|---|---|---|
|
e6fab84393 | ||
|
de2b94292d | ||
|
ff41948f14 | ||
|
403466d4fa | ||
|
390acdeab7 | ||
|
8c75e06ac1 | ||
|
f0c5402050 | ||
|
1f0f1a0ed3 | ||
|
20ab13bcaa | ||
|
e16783ecfb | ||
|
9b1fee75c7 | ||
|
a2b37f4f35 | ||
|
1ff2f234e8 | ||
|
842b724103 | ||
|
7f148c17e4 | ||
|
e604df3e6a | ||
|
8bc048523e | ||
|
ea39f00515 | ||
|
3e12371b16 | ||
|
f6a571bcfe | ||
|
3d75ab149f | ||
|
9fe53f55e9 | ||
|
ff7a5624e6 | ||
|
db53878385 | ||
|
45500e7a4a | ||
|
740815704e | ||
|
795e535e23 | ||
|
6a888e6e12 | ||
|
b5b650695a | ||
|
9b79f224d3 | ||
|
5725e2645d | ||
|
2c5023568a | ||
|
88b1a892e4 | ||
|
7f364adde9 | ||
|
a9e9a5cb3b | ||
|
15be3eaab2 | ||
|
fa07287da0 | ||
|
281a816673 | ||
|
ff4a24e07a | ||
|
2ed67389c0 | ||
|
047848ed1a |
3
Apps.js
3
Apps.js
@ -27,15 +27,16 @@ export function AppContainer() {
|
|||||||
const [fontLoaded, error] = useFonts({
|
const [fontLoaded, error] = useFonts({
|
||||||
"JR-Nishi": require("./assets/fonts/jr-nishi.otf"),
|
"JR-Nishi": require("./assets/fonts/jr-nishi.otf"),
|
||||||
Zou: require("./assets/fonts/DelaGothicOne-Regular.ttf"),
|
Zou: require("./assets/fonts/DelaGothicOne-Regular.ttf"),
|
||||||
|
"JNR-font": require("./assets/fonts/JNRfont_pict.ttf"),
|
||||||
});
|
});
|
||||||
return (
|
return (
|
||||||
<NavigationContainer ref={navigationRef}>
|
<NavigationContainer ref={navigationRef}>
|
||||||
<Tab.Navigator
|
<Tab.Navigator
|
||||||
tabBarOptions={{ keyboardHidesTabBar: Platform.OS === "android" }}
|
|
||||||
initialRouteName="topMenu"
|
initialRouteName="topMenu"
|
||||||
screenOptions={{
|
screenOptions={{
|
||||||
lazy: false,
|
lazy: false,
|
||||||
animation: "shift",
|
animation: "shift",
|
||||||
|
tabBarHideOnKeyboard: Platform.OS === "android",
|
||||||
}}
|
}}
|
||||||
detachInactiveScreens={false}
|
detachInactiveScreens={false}
|
||||||
lazy={false}
|
lazy={false}
|
||||||
|
2
Top.js
2
Top.js
@ -6,7 +6,7 @@ import TrainBase from "./components/trainbaseview";
|
|||||||
import HowTo from "./howto";
|
import HowTo from "./howto";
|
||||||
import News from "./components/news";
|
import News from "./components/news";
|
||||||
import TrainMenu from "./components/trainMenu";
|
import TrainMenu from "./components/trainMenu";
|
||||||
import FavoriteList from "./components/FavoriteList";
|
import { FavoriteList } from "./components/FavoriteList";
|
||||||
import { optionData } from "./lib/stackOption";
|
import { optionData } from "./lib/stackOption";
|
||||||
import { useCurrentTrain } from "./stateBox/useCurrentTrain";
|
import { useCurrentTrain } from "./stateBox/useCurrentTrain";
|
||||||
import { useTrainMenu } from "./stateBox/useTrainMenu";
|
import { useTrainMenu } from "./stateBox/useTrainMenu";
|
||||||
|
BIN
assets/fonts/JNRfont_pict.ttf
Normal file
BIN
assets/fonts/JNRfont_pict.ttf
Normal file
Binary file not shown.
94
assets/fonts/JNRfont_readme.txt
Normal file
94
assets/fonts/JNRfont_readme.txt
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
◆国鉄っぽいフォント(ぽいフォント)ピクトfor Win(xp)
|
||||||
|
かつて日本国有鉄道(国鉄)の吊り下げ式駅名標や駅の案内で使用されていたもピクトグラム
|
||||||
|
(プラスアルファ)を搭載したフォントです。
|
||||||
|
東海地方~四国で広く使用されていたものを見本としています。
|
||||||
|
|
||||||
|
◆作成ソフト
|
||||||
|
TTEditにより作成しています。
|
||||||
|
|
||||||
|
◆インストールの方法
|
||||||
|
「スタート」から設定、コントロールパネルを開き、さらに「フォント」フォルダを開きます。
|
||||||
|
ファイルメニューから「新しいフォントのインストール」で、フォントを選択のうえインストール
|
||||||
|
してください。
|
||||||
|
また、フォントファイルを適宜の場所に解凍し、上記「フォント」フォルダを開いたうえで、
|
||||||
|
ドラッグアンドドロップする方法でもインストールできます。
|
||||||
|
|
||||||
|
◆収録文字・記号一覧
|
||||||
|
左側が入力文字、右側が表示されるピクト類です。
|
||||||
|
0…公衆電話
|
||||||
|
1…エスカレーター(のぼり)
|
||||||
|
2…エスカレーター(くだり)
|
||||||
|
3…階段(おり)
|
||||||
|
4…階段(のぼり)
|
||||||
|
B…国鉄バスつばめマーク(つばめ左向き)
|
||||||
|
C…国鉄バスつばめマーク(つばめ右向き)
|
||||||
|
G…グリーン車マーク
|
||||||
|
J…国鉄「JNR」ロゴ
|
||||||
|
L…L特急マーク
|
||||||
|
M…公衆便所(男性)
|
||||||
|
S…シルバーシート
|
||||||
|
W…公衆便所(女性)
|
||||||
|
い…手荷物一時預かり
|
||||||
|
お…大阪市内の駅マーク
|
||||||
|
き…京都市内の駅マーク
|
||||||
|
く…北九州市内の駅マーク
|
||||||
|
け…禁煙マーク
|
||||||
|
こ…神戸市内の駅マーク
|
||||||
|
さ…札幌市内の駅マーク
|
||||||
|
し…新幹線
|
||||||
|
せ…仙台市内の駅マーク
|
||||||
|
た…タクシー
|
||||||
|
つ…つばめマーク(つばめ左向き)
|
||||||
|
ツ…つばめマーク(つばめ右向き)
|
||||||
|
て…手荷物預かり
|
||||||
|
で…国電
|
||||||
|
と…東京都区内の駅マーク
|
||||||
|
な…名古屋市内の駅マーク
|
||||||
|
は…国鉄ハイウェイバス
|
||||||
|
ば…路線バス
|
||||||
|
ひ…広島市内の駅マーク
|
||||||
|
ふ…福岡市内の駅マーク
|
||||||
|
ぶ…寝台急行マーク
|
||||||
|
ブ…寝台特急マーク
|
||||||
|
や…東京山手線内の駅マーク
|
||||||
|
ゆ…温泉マーク
|
||||||
|
よ…横浜市内の駅マーク
|
||||||
|
れ…レール
|
||||||
|
ろ…コインロッカー
|
||||||
|
←…矢印(左向き)
|
||||||
|
→…矢印(右向き)
|
||||||
|
↑…矢印(上向き)
|
||||||
|
↓…矢印(下向き)
|
||||||
|
|
||||||
|
◆ご使用に当たってのお願い
|
||||||
|
フォントは無料にて配布しています。商用利用には耐えられない出来だと思いますが、ご自身
|
||||||
|
の責任においてご自由にお使いください。
|
||||||
|
インストール及び使用にあたっても、ご自身の責任においてご使用ください。インストールや
|
||||||
|
使用によって蒙る損害については、当方は一切責任を負いかねます。
|
||||||
|
|
||||||
|
◆Windows Vistaをお使いの方へ
|
||||||
|
Windows Vistaをお使いの方で、フォントのエッジ(縁)を滑らかにしたい方は、スクリーンフ
|
||||||
|
ォントの縁を滑らかにする方法を「標準」にしてください。Clear Typeだと滑らかに表示されない
|
||||||
|
場合があります。
|
||||||
|
・標準への変更方法
|
||||||
|
1.ウィンドウ上で右クリックをします。
|
||||||
|
2.現れたメニュー中の「個人設定」を選択。
|
||||||
|
3.続いて「ウィンドウの色とデザイン」を選択。
|
||||||
|
4.一番下の「「デザイン」プロパティを開きます」をクリックします。
|
||||||
|
5.現れた別ウィンドウの「効果」ボタンをクリック。
|
||||||
|
6.「次の方法でスクリーンフォントの縁を滑らかにする」のところを「Clear Type」から「標
|
||||||
|
準」にします。
|
||||||
|
※これでこのフォントについてはより滑らかに表示されますが、他のフォントが滑らかに表示さ
|
||||||
|
れない場合が多くなります。
|
||||||
|
|
||||||
|
◆フォント自体についての若干のご説明
|
||||||
|
このフォントは、前述のとおり、国鉄において東海地区から四国地区の吊り下げ式駅名標や各種
|
||||||
|
案内表示で使用されたものを見本としています。もともとは、「鉄道掲示基準規程」という通達に
|
||||||
|
定められているピクトグラムです。
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
--------------------------------------
|
||||||
|
作成者:Yokochan
|
||||||
|
ホームページ:「旅と鉄の盲腸」http://travelcecum.xsrv.jp/font.htm
|
||||||
|
連絡先:travel_cecum@yahoo.co.jp
|
@ -847,5 +847,83 @@
|
|||||||
"5481D":"徳島,発,19:22#佐古,発,19:26#蔵本,発,19:30#鮎喰,発,19:33#府中,発,19:37#石井,発,19:43#下浦,発,19:47#牛島,発,19:51#麻植塚,発,19:54#鴨島,発,19:57#西麻植,発,20:00#阿波川島,発,20:04#学,発,20:13#山瀬,発,20:18#阿波山川,発,20:22#川田,発,20:26#穴吹,着,20:34#",
|
"5481D":"徳島,発,19:22#佐古,発,19:26#蔵本,発,19:30#鮎喰,発,19:33#府中,発,19:37#石井,発,19:43#下浦,発,19:47#牛島,発,19:51#麻植塚,発,19:54#鴨島,発,19:57#西麻植,発,20:00#阿波川島,発,20:04#学,発,20:13#山瀬,発,20:18#阿波山川,発,20:22#川田,発,20:26#穴吹,着,20:34#",
|
||||||
"5483D":"徳島,発,19:52#佐古,発,19:55#蔵本,発,19:58#鮎喰,発,20:01#府中,発,20:05#石井,発,20:09#下浦,発,20:13#牛島,発,20:17#麻植塚,発,20:21#鴨島,発,20:27#西麻植,発,20:31#阿波川島,発,20:44#学,発,20:48#山瀬,発,21:00#阿波山川,発,21:04#川田,発,21:08#穴吹,着,21:18#",
|
"5483D":"徳島,発,19:52#佐古,発,19:55#蔵本,発,19:58#鮎喰,発,20:01#府中,発,20:05#石井,発,20:09#下浦,発,20:13#牛島,発,20:17#麻植塚,発,20:21#鴨島,発,20:27#西麻植,発,20:31#阿波川島,発,20:44#学,発,20:48#山瀬,発,21:00#阿波山川,発,21:04#川田,発,21:08#穴吹,着,21:18#",
|
||||||
"5489D":"徳島,発,22:52#佐古,発,22:55#蔵本,発,22:58#鮎喰,発,23:01#府中,発,23:05#石井,発,23:09#下浦,発,23:13#牛島,発,23:17#麻植塚,発,23:21#鴨島,発,23:24#西麻植,発,23:27#阿波川島,発,23:30#学,発,23:35#山瀬,発,23:39#阿波山川,発,23:43#川田,発,23:47#穴吹,着,23:54#",
|
"5489D":"徳島,発,22:52#佐古,発,22:55#蔵本,発,22:58#鮎喰,発,23:01#府中,発,23:05#石井,発,23:09#下浦,発,23:13#牛島,発,23:17#麻植塚,発,23:21#鴨島,発,23:24#西麻植,発,23:27#阿波川島,発,23:30#学,発,23:35#山瀬,発,23:39#阿波山川,発,23:43#川田,発,23:47#穴吹,着,23:54#",
|
||||||
"8451D":"徳島,発,10:35#蔵本,発,10:42#石井,発,10:54#鴨島,発,11:11#阿波川島,発,11:22#穴吹,発,11:50#貞光,発,12:18#阿波加茂,発,12:39#阿波池田,着,12:59#"
|
"8451D":"徳島,発,10:35#蔵本,発,10:42#石井,発,10:54#鴨島,発,11:11#阿波川島,発,11:22#穴吹,発,11:50#貞光,発,12:18#阿波加茂,発,12:39#阿波池田,着,12:59#",
|
||||||
|
// 牟岐線運用
|
||||||
|
// 上り
|
||||||
|
"4520D":"阿南,発,05:44#阿波中島,発,05:48#西原,発,05:52#羽ノ浦,発,05:56#立江,発,06:00#阿波赤石,発,06:03#南小松島,発,06:08#中田,発,06:11#地蔵橋,発,06:16#文化の森,発,06:20#二軒屋,発,06:22#阿波富田,発,06:26#徳島,着,06:28#",
|
||||||
|
"522D":"牟岐,発,05:40#辺川,発,05:44#山河内,発,05:52#日和佐,発,05:58#北河内,発,06:01#木岐,発,06:06#由岐,発,06:10#阿波福井,発,06:17#新野,発,06:21#桑野,発,06:26#阿波橘,発,06:31#見能林,発,06:34#阿南,発,06:47#阿波中島,発,06:51#西原,発,06:54#羽ノ浦,発,06:57#立江,発,07:01#阿波赤石,発,07:03#南小松島,発,07:08#中田,発,07:11#地蔵橋,発,07:15#文化の森,発,07:18#二軒屋,発,07:23#阿波富田,発,07:26#徳島,着,07:28#",
|
||||||
|
"524D":"阿南,発,07:01#阿波中島,発,07:05#西原,発,07:09#羽ノ浦,発,07:13#立江,発,07:17#阿波赤石,発,07:20#南小松島,発,07:25#中田,発,07:34#地蔵橋,発,07:38#文化の森,発,07:42#二軒屋,発,07:44#阿波富田,発,07:48#徳島,着,07:50#",
|
||||||
|
"526D":"桑野,発,07:02#阿波橘,発,07:07#見能林,発,07:11#阿南,発,07:15#阿波中島,発,07:19#西原,発,07:22#羽ノ浦,発,07:28#立江,発,07:32#阿波赤石,発,07:35#南小松島,発,07:41#中田,発,07:45#地蔵橋,発,07:49#文化の森,発,07:52#二軒屋,発,08:00#阿波富田,発,08:04#徳島,着,08:06#",
|
||||||
|
"528D":"牟岐,発,06:32#辺川,発,06:36#山河内,発,06:43#日和佐,発,06:50#北河内,発,06:53#木岐,発,06:58#由岐,発,07:04#阿波福井,発,07:11#新野,発,07:16#桑野,発,07:21#阿波橘,発,07:26#見能林,発,07:30#阿南,発,07:36#阿波中島,発,07:40#西原,発,07:43#羽ノ浦,発,07:47#立江,発,07:51#阿波赤石,発,07:54#南小松島,発,08:00#中田,発,08:07#地蔵橋,発,08:11#文化の森,発,08:15#二軒屋,発,08:17#阿波富田,発,08:20#徳島,着,08:22#",
|
||||||
|
"530D":"阿波海南,発,06:57#浅川,発,07:01#鯖瀬,発,07:05#牟岐,発,07:12#辺川,発,07:17#山河内,発,07:24#日和佐,発,07:31#北河内,発,07:34#木岐,発,07:39#由岐,発,07:43#阿波福井,発,07:50#新野,発,07:54#桑野,発,07:59#阿波橘,発,08:04#見能林,発,08:07#阿南,発,08:14#阿波中島,発,08:18#西原,発,08:21#羽ノ浦,発,08:25#立江,発,08:28#阿波赤石,発,08:31#南小松島,発,08:39#中田,発,08:42#地蔵橋,発,08:46#文化の森,発,08:49#二軒屋,発,08:52#阿波富田,発,08:55#徳島,着,08:57#",
|
||||||
|
"532D":"桑野,発,08:31#阿波橘,発,08:36#見能林,発,08:40#阿南,発,08:44#阿波中島,発,08:48#西原,発,08:51#羽ノ浦,発,08:57#立江,発,09:01#阿波赤石,発,09:03#南小松島,発,09:08#中田,発,09:12#地蔵橋,発,09:16#文化の森,発,09:20#二軒屋,発,09:23#阿波富田,発,09:26#徳島,着,09:29#",
|
||||||
|
"534D":"阿南,発,09:26#阿波中島,発,09:30#西原,発,09:33#羽ノ浦,発,09:37#立江,発,09:40#阿波赤石,発,09:43#南小松島,発,09:50#中田,発,09:53#地蔵橋,発,09:57#文化の森,発,10:00#二軒屋,発,10:06#阿波富田,発,10:09#徳島,着,10:12#",
|
||||||
|
"4536D":"阿波海南,発,08:25#浅川,発,08:29#鯖瀬,発,08:33#牟岐,発,08:54#辺川,発,08:58#山河内,発,09:06#日和佐,発,09:13#北河内,発,09:16#木岐,発,09:21#由岐,発,09:25#阿波福井,発,09:32#新野,発,09:36#桑野,発,09:41#阿波橘,発,09:46#見能林,発,09:49#阿南,着,09:52#",
|
||||||
|
"536D":"阿南,発,09:56#阿波中島,発,10:00#西原,発,10:03#羽ノ浦,発,10:07#立江,発,10:10#阿波赤石,発,10:13#南小松島,発,10:20#中田,発,10:23#地蔵橋,発,10:27#文化の森,発,10:30#二軒屋,発,10:36#阿波富田,発,10:39#徳島,着,10:42#",
|
||||||
|
"538D":"阿南,発,10:26#阿波中島,発,10:30#西原,発,10:33#羽ノ浦,発,10:37#立江,発,10:40#阿波赤石,発,10:43#南小松島,発,10:50#中田,発,10:53#地蔵橋,発,10:57#文化の森,発,11:00#二軒屋,発,11:06#阿波富田,発,11:09#徳島,着,11:12#",
|
||||||
|
"540D":"阿南,発,10:56#阿波中島,発,11:00#西原,発,11:03#羽ノ浦,発,11:07#立江,発,11:10#阿波赤石,発,11:13#南小松島,発,11:20#中田,発,11:23#地蔵橋,発,11:27#文化の森,発,11:30#二軒屋,発,11:36#阿波富田,発,11:39#徳島,着,11:42#",
|
||||||
|
"542D":"牟岐,発,10:24#辺川,発,10:28#山河内,発,10:36#日和佐,発,10:43#北河内,発,10:46#木岐,発,10:51#由岐,発,10:55#阿波福井,発,11:02#新野,発,11:06#桑野,発,11:11#阿波橘,発,11:16#見能林,発,11:19#阿南,発,11:26#阿波中島,発,11:30#西原,発,11:33#羽ノ浦,発,11:37#立江,発,11:40#阿波赤石,発,11:43#南小松島,発,11:50#中田,発,11:53#地蔵橋,発,11:57#文化の森,発,12:00#二軒屋,発,12:06#阿波富田,発,12:09#徳島,着,12:12#",
|
||||||
|
"4544D":"阿南,発,11:56#阿波中島,発,12:00#西原,発,12:03#羽ノ浦,発,12:07#立江,発,12:10#阿波赤石,発,12:13#南小松島,発,12:20#中田,発,12:23#地蔵橋,発,12:27#文化の森,発,12:30#二軒屋,発,12:36#阿波富田,発,12:39#徳島,着,12:42#",
|
||||||
|
"4546D":"阿南,発,12:26#阿波中島,発,12:30#西原,発,12:33#羽ノ浦,発,12:37#立江,発,12:40#阿波赤石,発,12:43#南小松島,発,12:50#中田,発,12:53#地蔵橋,発,12:57#文化の森,発,13:00#二軒屋,発,13:06#阿波富田,発,13:09#徳島,着,13:12#",
|
||||||
|
"4548D":"阿南,発,12:56#阿波中島,発,13:00#西原,発,13:03#羽ノ浦,発,13:07#立江,発,13:10#阿波赤石,発,13:13#南小松島,発,13:20#中田,発,13:23#地蔵橋,発,13:27#文化の森,発,13:30#二軒屋,発,13:36#阿波富田,発,13:39#徳島,着,13:42#",
|
||||||
|
"4550D":"阿波海南,発,12:08#浅川,発,12:12#鯖瀬,発,12:16#牟岐,発,12:24#辺川,発,12:28#山河内,発,12:36#日和佐,発,12:43#北河内,発,12:46#木岐,発,12:51#由岐,発,12:55#阿波福井,発,13:02#新野,発,13:06#桑野,発,13:11#阿波橘,発,13:16#見能林,発,13:19#阿南,発,13:26#阿波中島,発,13:30#西原,発,13:33#羽ノ浦,発,13:37#立江,発,13:40#阿波赤石,発,13:43#南小松島,発,13:50#中田,発,13:53#地蔵橋,発,13:57#文化の森,発,14:00#二軒屋,発,14:06#阿波富田,発,14:09#徳島,着,14:12#",
|
||||||
|
"552D":"阿南,発,13:56#阿波中島,発,14:00#西原,発,14:03#羽ノ浦,発,14:07#立江,発,14:10#阿波赤石,発,14:13#南小松島,発,14:20#中田,発,14:23#地蔵橋,発,14:27#文化の森,発,14:30#二軒屋,発,14:36#阿波富田,発,14:39#徳島,着,14:42#",
|
||||||
|
"4554D":"阿南,発,14:26#阿波中島,発,14:30#西原,発,14:33#羽ノ浦,発,14:37#立江,発,14:40#阿波赤石,発,14:43#南小松島,発,14:50#中田,発,14:53#地蔵橋,発,14:57#文化の森,発,15:00#二軒屋,発,15:06#阿波富田,発,15:09#徳島,着,15:12#",
|
||||||
|
"4556D":"阿南,発,14:56#阿波中島,発,15:00#西原,発,15:03#羽ノ浦,発,15:07#立江,発,15:10#阿波赤石,発,15:13#南小松島,発,15:20#中田,発,15:23#地蔵橋,発,15:27#文化の森,発,15:30#二軒屋,発,15:36#阿波富田,発,15:39#徳島,着,15:41#",
|
||||||
|
"4558D":"阿波海南,発,14:08#浅川,発,14:12#鯖瀬,発,14:16#牟岐,発,14:24#辺川,発,14:28#山河内,発,14:36#日和佐,発,14:43#北河内,発,14:46#木岐,発,14:51#由岐,発,14:55#阿波福井,発,15:02#新野,発,15:06#桑野,発,15:11#阿波橘,発,15:16#見能林,発,15:19#阿南,発,15:26#阿波中島,発,15:30#西原,発,15:33#羽ノ浦,発,15:37#立江,発,15:40#阿波赤石,発,15:43#南小松島,発,15:50#中田,発,15:53#地蔵橋,発,15:57#文化の森,発,16:00#二軒屋,発,16:06#阿波富田,発,16:09#徳島,着,16:12#",
|
||||||
|
"560D":"阿南,発,15:56#阿波中島,発,16:00#西原,発,16:03#羽ノ浦,発,16:07#立江,発,16:10#阿波赤石,発,16:13#南小松島,発,16:20#中田,発,16:23#地蔵橋,発,16:27#文化の森,発,16:30#二軒屋,発,16:36#阿波富田,発,16:39#徳島,着,16:42#",
|
||||||
|
"562D":"桑野,発,16:11#阿波橘,発,16:16#見能林,発,16:19#阿南,発,16:26#阿波中島,発,16:30#西原,発,16:33#羽ノ浦,発,16:37#立江,発,16:40#阿波赤石,発,16:43#南小松島,発,16:50#中田,発,16:53#地蔵橋,発,16:57#文化の森,発,17:00#二軒屋,発,17:06#阿波富田,発,17:09#徳島,着,17:12#",
|
||||||
|
"564D":"阿南,発,16:56#阿波中島,発,17:00#西原,発,17:03#羽ノ浦,発,17:07#立江,発,17:10#阿波赤石,発,17:13#南小松島,発,17:20#中田,発,17:23#地蔵橋,発,17:27#文化の森,発,17:30#二軒屋,発,17:36#阿波富田,発,17:39#徳島,着,17:42#",
|
||||||
|
"4566D":"阿波海南,発,16:08#浅川,発,16:12#鯖瀬,発,16:16#牟岐,発,16:24#辺川,発,16:28#山河内,発,16:36#日和佐,発,16:43#北河内,発,16:46#木岐,発,16:51#由岐,発,16:55#阿波福井,発,17:02#新野,発,17:06#桑野,発,17:11#阿波橘,発,17:16#見能林,発,17:19#阿南,着,17:22#",
|
||||||
|
"566D":"阿南,発,17:26#阿波中島,発,17:30#西原,発,17:33#羽ノ浦,発,17:37#立江,発,17:40#阿波赤石,発,17:43#南小松島,発,17:50#中田,発,17:53#地蔵橋,発,17:57#文化の森,発,18:00#二軒屋,発,18:06#阿波富田,発,18:09#徳島,着,18:12#",
|
||||||
|
"568D":"阿南,発,17:56#阿波中島,発,18:00#西原,発,18:03#羽ノ浦,発,18:07#立江,発,18:10#阿波赤石,発,18:13#南小松島,発,18:20#中田,発,18:23#地蔵橋,発,18:27#文化の森,発,18:30#二軒屋,発,18:36#阿波富田,発,18:39#徳島,着,18:42#",
|
||||||
|
"570D":"阿南,発,18:26#阿波中島,発,18:30#西原,発,18:33#羽ノ浦,発,18:37#立江,発,18:40#阿波赤石,発,18:43#南小松島,発,18:50#中田,発,18:53#地蔵橋,発,18:57#文化の森,発,19:00#二軒屋,発,19:06#阿波富田,発,19:09#徳島,着,19:12#",
|
||||||
|
"4572D":"阿波海南,発,17:26#浅川,発,17:29#鯖瀬,発,17:33#牟岐,発,17:41#辺川,発,17:45#山河内,発,17:53#日和佐,発,18:02#北河内,発,18:05#木岐,発,18:10#由岐,発,18:14#阿波福井,発,18:22#新野,発,18:26#桑野,発,18:38#阿波橘,発,18:43#見能林,発,18:46#阿南,発,18:56#阿波中島,発,19:00#西原,発,19:03#羽ノ浦,発,19:07#立江,発,19:10#阿波赤石,発,19:13#南小松島,発,19:20#中田,発,19:23#地蔵橋,発,19:27#文化の森,発,19:30#二軒屋,発,19:36#阿波富田,発,19:39#徳島,着,19:42#",
|
||||||
|
"574D":"阿南,発,19:26#阿波中島,発,19:30#西原,発,19:33#羽ノ浦,発,19:37#立江,発,19:40#阿波赤石,発,19:43#南小松島,発,19:50#中田,発,19:53#地蔵橋,発,19:57#文化の森,発,20:00#二軒屋,発,20:06#阿波富田,発,20:09#徳島,着,20:12#",
|
||||||
|
"4576D":"阿波海南,発,18:26#浅川,発,18:29#鯖瀬,発,18:33#牟岐,発,18:41#辺川,発,18:45#山河内,発,18:53#日和佐,発,19:02#北河内,発,19:05#木岐,発,19:10#由岐,発,19:14#阿波福井,発,19:22#新野,発,19:26#桑野,発,19:30#阿波橘,発,19:35#見能林,発,19:38#阿南,着,19:41#",
|
||||||
|
"576D":"阿南,発,19:56#阿波中島,発,20:00#西原,発,20:03#羽ノ浦,発,20:07#立江,発,20:10#阿波赤石,発,20:13#南小松島,発,20:20#中田,発,20:23#地蔵橋,発,20:27#文化の森,発,20:30#二軒屋,発,20:36#阿波富田,発,20:39#徳島,着,20:42#",
|
||||||
|
"578D":"阿南,発,20:56#阿波中島,発,21:00#西原,発,21:03#羽ノ浦,発,21:07#立江,発,21:10#阿波赤石,発,21:13#南小松島,発,21:20#中田,発,21:23#地蔵橋,発,21:27#文化の森,発,21:30#二軒屋,発,21:36#阿波富田,発,21:39#徳島,着,21:42#",
|
||||||
|
"4580D":"阿波海南,発,20:34#浅川,発,20:38#鯖瀬,発,20:44#牟岐,発,20:57#辺川,発,21:03#山河内,発,21:12#日和佐,発,21:20#北河内,発,21:23#木岐,発,21:28#由岐,発,21:32#阿波福井,発,21:41#新野,発,21:45#桑野,発,21:50#阿波橘,発,21:55#見能林,発,21:58#阿南,着,22:00#",
|
||||||
|
"580D":"阿南,発,22:03#阿波中島,発,22:07#西原,発,22:10#羽ノ浦,発,22:14#立江,発,22:18#阿波赤石,発,22:20#南小松島,発,22:25#中田,発,22:28#地蔵橋,発,22:32#文化の森,発,22:36#二軒屋,発,22:39#阿波富田,発,22:42#徳島,着,22:44#",
|
||||||
|
//下り
|
||||||
|
"521D":"牟岐,発,06:34#鯖瀬,発,06:39#浅川,発,06:43#阿波海南,着,06:47#",
|
||||||
|
"4523D":"徳島,発,05:45#阿波富田,発,05:48#二軒屋,発,05:51#文化の森,発,05:53#地蔵橋,発,05:57#中田,発,06:01#南小松島,発,06:07#阿波赤石,発,06:12#立江,発,06:15#羽ノ浦,発,06:18#西原,発,06:22#阿波中島,発,06:25#阿南,発,06:37#見能林,発,06:40#阿波橘,発,06:43#桑野,発,06:48#新野,発,06:53#阿波福井,発,06:56#由岐,発,07:12#木岐,発,07:15#北河内,発,07:21#日和佐,発,07:31#山河内,発,07:38#辺川,発,07:44#牟岐,発,07:51#鯖瀬,発,07:56#浅川,発,08:00#阿波海南,着,08:03#",
|
||||||
|
"525D":"徳島,発,06:46#阿波富田,発,06:49#二軒屋,発,06:52#文化の森,発,06:54#地蔵橋,発,06:57#中田,発,07:02#南小松島,発,07:07#阿波赤石,発,07:12#立江,発,07:17#羽ノ浦,発,07:25#西原,発,07:29#阿波中島,発,07:32#阿南,発,07:45#見能林,発,07:49#阿波橘,発,07:52#桑野,発,07:59#新野,発,08:03#阿波福井,発,08:07#由岐,発,08:14#木岐,発,08:17#北河内,発,08:22#日和佐,発,08:25#山河内,発,08:32#辺川,発,08:39#牟岐,着,08:43#",
|
||||||
|
"527D":"徳島,発,07:17#阿波富田,発,07:20#二軒屋,発,07:23#文化の森,発,07:25#地蔵橋,発,07:29#中田,発,07:34#南小松島,発,07:39#阿波赤石,発,07:44#立江,発,07:51#羽ノ浦,発,07:54#西原,発,07:58#阿波中島,発,08:01#阿南,発,08:10#見能林,発,08:14#阿波橘,発,08:18#桑野,着,08:23#",
|
||||||
|
"529D":"徳島,発,07:51#阿波富田,発,07:55#二軒屋,発,07:58#文化の森,発,08:00#地蔵橋,発,08:03#中田,発,08:08#南小松島,発,08:12#阿波赤石,発,08:16#立江,発,08:19#羽ノ浦,発,08:25#西原,発,08:28#阿波中島,発,08:31#阿南,着,08:35#",
|
||||||
|
"531D":"徳島,発,08:24#阿波富田,発,08:27#二軒屋,発,08:30#文化の森,発,08:32#地蔵橋,発,08:36#中田,発,08:42#南小松島,発,08:45#阿波赤石,発,08:50#立江,発,08:54#羽ノ浦,発,08:58#西原,発,09:01#阿波中島,発,09:04#阿南,着,09:08#",
|
||||||
|
"4533D":"徳島,発,09:30#阿波富田,発,09:33#二軒屋,発,09:36#文化の森,発,09:38#地蔵橋,発,09:42#中田,発,09:46#南小松島,発,09:50#阿波赤石,発,09:54#立江,発,09:57#羽ノ浦,発,10:07#西原,発,10:10#阿波中島,発,10:13#阿南,発,10:24#見能林,発,10:27#阿波橘,発,10:30#桑野,発,10:35#新野,発,10:39#阿波福井,発,10:43#由岐,発,10:54#木岐,発,10:58#北河内,発,11:03#日和佐,発,11:06#山河内,発,11:13#辺川,発,11:20#牟岐,発,11:29#鯖瀬,発,11:34#浅川,発,11:38#阿波海南,着,11:42#",
|
||||||
|
"535D":"徳島,発,10:00#阿波富田,発,10:03#二軒屋,発,10:06#文化の森,発,10:08#地蔵橋,発,10:12#中田,発,10:16#南小松島,発,10:20#阿波赤石,発,10:24#立江,発,10:27#羽ノ浦,発,10:37#西原,発,10:40#阿波中島,発,10:43#阿南,着,10:46#",
|
||||||
|
"4537D":"徳島,発,10:30#阿波富田,発,10:33#二軒屋,発,10:36#文化の森,発,10:38#地蔵橋,発,10:42#中田,発,10:46#南小松島,発,10:50#阿波赤石,発,10:54#立江,発,10:57#羽ノ浦,発,11:07#西原,発,11:10#阿波中島,発,11:13#阿南,着,11:16#",
|
||||||
|
"4539D":"徳島,発,11:00#阿波富田,発,11:03#二軒屋,発,11:06#文化の森,発,11:08#地蔵橋,発,11:12#中田,発,11:16#南小松島,発,11:20#阿波赤石,発,11:24#立江,発,11:27#羽ノ浦,発,11:37#西原,発,11:40#阿波中島,発,11:43#阿南,着,11:46#",
|
||||||
|
"4541D":"徳島,発,11:30#阿波富田,発,11:33#二軒屋,発,11:36#文化の森,発,11:38#地蔵橋,発,11:42#中田,発,11:46#南小松島,発,11:50#阿波赤石,発,11:54#立江,発,11:57#羽ノ浦,発,12:07#西原,発,12:10#阿波中島,発,12:13#阿南,発,12:24#見能林,発,12:27#阿波橘,発,12:30#桑野,発,12:35#新野,発,12:39#阿波福井,発,12:43#由岐,発,12:54#木岐,発,12:58#北河内,発,13:03#日和佐,発,13:06#山河内,発,13:13#辺川,発,13:20#牟岐,発,13:29#鯖瀬,発,13:34#浅川,発,13:38#阿波海南,着,13:42#",
|
||||||
|
"4543D":"徳島,発,12:00#阿波富田,発,12:03#二軒屋,発,12:06#文化の森,発,12:08#地蔵橋,発,12:12#中田,発,12:16#南小松島,発,12:20#阿波赤石,発,12:24#立江,発,12:27#羽ノ浦,発,12:37#西原,発,12:40#阿波中島,発,12:43#阿南,着,12:46#",
|
||||||
|
"4545D":"徳島,発,12:30#阿波富田,発,12:33#二軒屋,発,12:36#文化の森,発,12:38#地蔵橋,発,12:42#中田,発,12:46#南小松島,発,12:50#阿波赤石,発,12:54#立江,発,12:57#羽ノ浦,発,13:07#西原,発,13:10#阿波中島,発,13:13#阿南,着,13:16#",
|
||||||
|
"547D":"徳島,発,13:00#阿波富田,発,13:03#二軒屋,発,13:06#文化の森,発,13:08#地蔵橋,発,13:12#中田,発,13:16#南小松島,発,13:20#阿波赤石,発,13:24#立江,発,13:27#羽ノ浦,発,13:37#西原,発,13:40#阿波中島,発,13:43#阿南,着,13:46#",
|
||||||
|
"4549D":"徳島,発,13:30#阿波富田,発,13:33#二軒屋,発,13:36#文化の森,発,13:38#地蔵橋,発,13:42#中田,発,13:46#南小松島,発,13:50#阿波赤石,発,13:54#立江,発,13:57#羽ノ浦,発,14:07#西原,発,14:10#阿波中島,発,14:13#阿南,発,14:24#見能林,発,14:27#阿波橘,発,14:30#桑野,発,14:35#新野,発,14:39#阿波福井,発,14:43#由岐,発,14:54#木岐,発,14:58#北河内,発,15:03#日和佐,発,15:06#山河内,発,15:13#辺川,発,15:20#牟岐,発,15:29#鯖瀬,発,15:34#浅川,発,15:38#阿波海南,着,15:42#",
|
||||||
|
"4551D":"徳島,発,14:00#阿波富田,発,14:03#二軒屋,発,14:06#文化の森,発,14:08#地蔵橋,発,14:12#中田,発,14:16#南小松島,発,14:20#阿波赤石,発,14:24#立江,発,14:27#羽ノ浦,発,14:37#西原,発,14:40#阿波中島,発,14:43#阿南,着,14:46#",
|
||||||
|
"4557D":"牟岐,発,16:49#鯖瀬,発,16:54#浅川,発,16:58#阿波海南,着,17:02#",
|
||||||
|
"553D":"徳島,発,14:30#阿波富田,発,14:33#二軒屋,発,14:36#文化の森,発,14:38#地蔵橋,発,14:42#中田,発,14:46#南小松島,発,14:50#阿波赤石,発,14:54#立江,発,14:57#羽ノ浦,発,15:07#西原,発,15:10#阿波中島,発,15:13#阿南,着,15:16#",
|
||||||
|
"555D":"徳島,発,15:00#阿波富田,発,15:03#二軒屋,発,15:06#文化の森,発,15:08#地蔵橋,発,15:12#中田,発,15:16#南小松島,発,15:20#阿波赤石,発,15:24#立江,発,15:27#羽ノ浦,発,15:37#西原,発,15:40#阿波中島,発,15:43#阿南,発,15:54#見能林,発,15:57#阿波橘,発,16:00#桑野,発,16:04#",
|
||||||
|
"559D":"徳島,発,15:30#阿波富田,発,15:33#二軒屋,発,15:36#文化の森,発,15:38#地蔵橋,発,15:42#中田,発,15:46#南小松島,発,15:50#阿波赤石,発,15:54#立江,発,15:57#羽ノ浦,発,16:07#西原,発,16:10#阿波中島,発,16:13#阿南,着,16:16#",
|
||||||
|
"4559D":"阿南,発,16:24#見能林,発,16:27#阿波橘,発,16:30#桑野,発,16:35#新野,発,16:39#阿波福井,発,16:43#由岐,発,16:54#木岐,発,16:58#北河内,発,17:03#日和佐,発,17:06#山河内,発,17:13#辺川,発,17:20#牟岐,発,17:39#鯖瀬,発,17:44#浅川,発,17:48#阿波海南,着,17:52#",
|
||||||
|
"561D":"徳島,発,16:00#阿波富田,発,16:03#二軒屋,発,16:06#文化の森,発,16:08#地蔵橋,発,16:12#中田,発,16:16#南小松島,発,16:20#阿波赤石,発,16:24#立江,発,16:27#羽ノ浦,発,16:37#西原,発,16:40#阿波中島,発,16:43#阿南,着,16:46#",
|
||||||
|
"563D":"徳島,発,16:30#阿波富田,発,16:33#二軒屋,発,16:36#文化の森,発,16:38#地蔵橋,発,16:42#中田,発,16:46#南小松島,発,16:50#阿波赤石,発,16:54#立江,発,16:57#羽ノ浦,発,17:07#西原,発,17:10#阿波中島,発,17:13#阿南,着,17:16#",
|
||||||
|
"4563D":"阿南,発,17:24#見能林,発,17:27#阿波橘,発,17:30#桑野,発,17:35#新野,発,17:39#阿波福井,発,17:43#由岐,発,17:50#木岐,発,17:54#北河内,発,17:59#日和佐,発,18:02#山河内,発,18:09#辺川,発,18:16#牟岐,着,18:20#",
|
||||||
|
"565D":"徳島,発,17:00#阿波富田,発,17:03#二軒屋,発,17:06#文化の森,発,17:08#地蔵橋,発,17:12#中田,発,17:16#南小松島,発,17:20#阿波赤石,発,17:24#立江,発,17:27#羽ノ浦,発,17:37#西原,発,17:40#阿波中島,発,17:43#阿南,着,17:46#",
|
||||||
|
"567D":"徳島,発,17:30#阿波富田,発,17:33#二軒屋,発,17:36#文化の森,発,17:38#地蔵橋,発,17:42#中田,発,17:46#南小松島,発,17:50#阿波赤石,発,17:54#立江,発,17:57#羽ノ浦,発,18:07#西原,発,18:10#阿波中島,発,18:13#阿南,発,18:24#見能林,発,18:27#阿波橘,発,18:30#桑野,発,18:35#新野,発,18:39#阿波福井,発,18:43#由岐,発,18:50#木岐,発,18:54#北河内,発,18:59#日和佐,発,19:02#山河内,発,19:09#辺川,発,19:16#牟岐,着,19:20#",
|
||||||
|
"4571D":"牟岐,発,19:33#鯖瀬,発,19:40#浅川,発,19:46#阿波海南,着,19:50#",
|
||||||
|
"569D":"徳島,発,18:00#阿波富田,発,18:03#二軒屋,発,18:06#文化の森,発,18:08#地蔵橋,発,18:12#中田,発,18:16#南小松島,発,18:20#阿波赤石,発,18:24#立江,発,18:27#羽ノ浦,発,18:37#西原,発,18:40#阿波中島,発,18:43#阿南,着,18:46#",
|
||||||
|
"573D":"徳島,発,18:30#阿波富田,発,18:33#二軒屋,発,18:36#文化の森,発,18:38#地蔵橋,発,18:42#中田,発,18:46#南小松島,発,18:50#阿波赤石,発,18:54#立江,発,18:57#羽ノ浦,発,19:07#西原,発,19:10#阿波中島,発,19:13#阿南,着,19:16#",
|
||||||
|
"575D":"徳島,発,19:00#阿波富田,発,19:03#二軒屋,発,19:06#文化の森,発,19:08#地蔵橋,発,19:12#中田,発,19:16#南小松島,発,19:20#阿波赤石,発,19:24#立江,発,19:27#羽ノ浦,発,19:37#西原,発,19:40#阿波中島,発,19:43#阿南,発,19:54#見能林,発,19:57#阿波橘,発,20:00#桑野,発,20:05#新野,発,20:09#阿波福井,発,20:13#由岐,発,20:22#木岐,発,20:26#北河内,発,20:31#日和佐,発,20:34#山河内,発,20:42#辺川,発,20:52#牟岐,着,20:57#",
|
||||||
|
"577D":"徳島,発,19:30#阿波富田,発,19:33#二軒屋,発,19:36#文化の森,発,19:38#地蔵橋,発,19:42#中田,発,19:46#南小松島,発,19:50#阿波赤石,発,19:54#立江,発,19:57#羽ノ浦,発,20:07#西原,発,20:10#阿波中島,発,20:13#阿南,着,20:16#",
|
||||||
|
"579D":"徳島,発,20:00#阿波富田,発,20:03#二軒屋,発,20:06#文化の森,発,20:08#地蔵橋,発,20:12#中田,発,20:16#南小松島,発,20:20#阿波赤石,発,20:24#立江,発,20:27#羽ノ浦,発,20:30#西原,発,20:34#阿波中島,発,20:37#阿南,着,20:40#",
|
||||||
|
"581D":"徳島,発,20:30#阿波富田,発,20:33#二軒屋,発,20:36#文化の森,発,20:39#地蔵橋,発,20:42#中田,発,20:47#南小松島,発,20:51#阿波赤石,発,20:55#立江,発,20:58#羽ノ浦,発,21:07#西原,発,21:10#阿波中島,発,21:14#阿南,着,21:18#",
|
||||||
|
"583D":"徳島,発,21:30#阿波富田,発,21:33#二軒屋,発,21:36#文化の森,発,21:38#地蔵橋,発,21:42#中田,発,21:46#南小松島,発,21:50#阿波赤石,発,21:54#立江,発,21:57#羽ノ浦,発,22:14#西原,発,22:17#阿波中島,発,22:20#阿南,発,22:26#見能林,発,22:29#阿波橘,発,22:32#桑野,発,22:37#新野,発,22:41#阿波福井,発,22:45#由岐,発,22:54#木岐,発,22:58#北河内,発,23:03#日和佐,発,23:06#山河内,発,23:14#辺川,発,23:23#牟岐,着,23:29#",
|
||||||
|
"585D":"徳島,発,22:55#阿波富田,発,22:58#二軒屋,発,23:01#文化の森,発,23:03#地蔵橋,発,23:07#中田,発,23:11#南小松島,発,23:15#阿波赤石,発,23:19#立江,発,23:22#羽ノ浦,発,23:26#西原,発,23:29#阿波中島,発,23:32#阿南,着,23:36#",
|
||||||
|
|
||||||
|
// 臨時列車
|
||||||
|
"9395D":"WEST LIVE TOUR 2025臨,提,https://www.jr-shikoku.co.jp/03_news/pdf/20250228_20250323_west-live-tour-2025.pdf#高松,発,22:10#昭和町,発,22:12#栗林公園北口,発,22:15#栗林,発,22:18#木太町,発,22:22#屋島,発,22:26#古高松南,発,22:38#八栗口,発,22:41#讃岐牟礼,発,22:44#志度,発,22:48#オレンジタウン,発,22:52#造田,発,22:56#神前,発,22:59#讃岐津田,発,23:05#鶴羽,発,23:09#丹生,発,23:14#三本松,着,23:18#",
|
||||||
|
"9174M":"WEST LIVE TOUR 2025臨,提,https://www.jr-shikoku.co.jp/03_news/pdf/20250228_20250323_west-live-tour-2025.pdf#高松,発,22:00#坂出,発,22:16#児島,発,22:39#茶屋町,発,22:55#早島,発,22:59#妹尾,発,23:03#岡山,着,23:12#",
|
||||||
|
|
||||||
}
|
}
|
@ -189,7 +189,8 @@ export const EachTrainInfoCore = ({
|
|||||||
const count = position * 44 - 50;
|
const count = position * 44 - 50;
|
||||||
// 0.5秒待機してからスクロール
|
// 0.5秒待機してからスクロール
|
||||||
setTimeout(
|
setTimeout(
|
||||||
() => scrollHandlers.ref.current?.scrollTo({ y: count, animated: true }),
|
() =>
|
||||||
|
scrollHandlers.ref.current?.scrollTo({ y: count, animated: true }),
|
||||||
400
|
400
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@ -291,7 +292,7 @@ export const EachTrainInfoCore = ({
|
|||||||
} else if (pos[1] == "児島" && pos[0] == "宇多津") {
|
} else if (pos[1] == "児島" && pos[0] == "宇多津") {
|
||||||
setCurrentPosition(["Y09", "M12"]);
|
setCurrentPosition(["Y09", "M12"]);
|
||||||
return;
|
return;
|
||||||
}else if (pos[0] == "伊予若宮" && pos[1] == "伊予白滝") {
|
} else if (pos[0] == "伊予若宮" && pos[1] == "伊予白滝") {
|
||||||
setCurrentPosition(["S18", "S14"]);
|
setCurrentPosition(["S18", "S14"]);
|
||||||
return;
|
return;
|
||||||
} else if (pos[0] == "伊予白滝" && pos[1] == "伊予若宮") {
|
} else if (pos[0] == "伊予白滝" && pos[1] == "伊予若宮") {
|
||||||
@ -380,13 +381,6 @@ export const EachTrainInfoCore = ({
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const headerItem = {
|
|
||||||
currentTrainData,
|
|
||||||
currentPosition,
|
|
||||||
nearTrainIDList,
|
|
||||||
openTrainInfo,
|
|
||||||
navigate,
|
|
||||||
};
|
|
||||||
return (
|
return (
|
||||||
<View
|
<View
|
||||||
style={{
|
style={{
|
||||||
@ -419,6 +413,7 @@ export const EachTrainInfoCore = ({
|
|||||||
tailStation={tailStation}
|
tailStation={tailStation}
|
||||||
navigate={navigate}
|
navigate={navigate}
|
||||||
from={from}
|
from={from}
|
||||||
|
scrollHandlers={scrollHandlers}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<DynamicHeaderScrollView
|
<DynamicHeaderScrollView
|
||||||
@ -431,8 +426,28 @@ export const EachTrainInfoCore = ({
|
|||||||
maxHeight: isLandscape ? height - 94 : (height / 100) * 70,
|
maxHeight: isLandscape ? height - 94 : (height / 100) * 70,
|
||||||
},
|
},
|
||||||
}}
|
}}
|
||||||
shortHeader={<ShortHeader {...headerItem} />}
|
shortHeader={
|
||||||
longHeader={<LongHeader {...headerItem} />}
|
<ShortHeader
|
||||||
|
{...{
|
||||||
|
currentTrainData,
|
||||||
|
currentPosition,
|
||||||
|
nearTrainIDList,
|
||||||
|
openTrainInfo,
|
||||||
|
navigate,
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
}
|
||||||
|
longHeader={
|
||||||
|
<LongHeader
|
||||||
|
{...{
|
||||||
|
currentTrainData,
|
||||||
|
currentPosition,
|
||||||
|
nearTrainIDList,
|
||||||
|
openTrainInfo,
|
||||||
|
navigate,
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
}
|
||||||
topStickyContent={
|
topStickyContent={
|
||||||
<ScrollStickyContent
|
<ScrollStickyContent
|
||||||
{...{ currentTrainData, showThrew, setShowThrew, haveThrough }}
|
{...{ currentTrainData, showThrew, setShowThrew, haveThrough }}
|
||||||
|
@ -7,6 +7,8 @@ import { migrateTrainName } from "../../../lib/eachTrainInfoCoreLib/migrateTrain
|
|||||||
import { TrainIconStatus } from "./trainIconStatus";
|
import { TrainIconStatus } from "./trainIconStatus";
|
||||||
import { TrainViewIcon } from "./trainViewIcon";
|
import { TrainViewIcon } from "./trainViewIcon";
|
||||||
import { OneManText } from "./HeaderTextParts/OneManText";
|
import { OneManText } from "./HeaderTextParts/OneManText";
|
||||||
|
import { customTrainDataDetector } from "@/components/custom-train-data";
|
||||||
|
import { InfogramText } from "@/components/ActionSheetComponents/EachTrainInfoCore/HeaderTextParts/InfogramText";
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
data: { trainNum: string; limited: string };
|
data: { trainNum: string; limited: string };
|
||||||
@ -18,10 +20,11 @@ type Props = {
|
|||||||
navigate: any;
|
navigate: any;
|
||||||
from: string;
|
from: string;
|
||||||
fontLoaded: boolean;
|
fontLoaded: boolean;
|
||||||
|
scrollHandlers: any;
|
||||||
};
|
};
|
||||||
|
|
||||||
const textConfig: TextStyle = {
|
const textConfig: TextStyle = {
|
||||||
fontSize: 18,
|
fontSize: 17,
|
||||||
fontWeight: "bold",
|
fontWeight: "bold",
|
||||||
color: "white",
|
color: "white",
|
||||||
};
|
};
|
||||||
@ -35,105 +38,87 @@ export const HeaderText: FC<Props> = ({
|
|||||||
tailStation,
|
tailStation,
|
||||||
navigate,
|
navigate,
|
||||||
from,
|
from,
|
||||||
|
scrollHandlers
|
||||||
}) => {
|
}) => {
|
||||||
const { limited, trainNum } = data;
|
const { limited, trainNum } = data;
|
||||||
|
|
||||||
// 貨物の判定
|
|
||||||
const freightDetect = (num:string)=>{
|
|
||||||
switch(num){
|
|
||||||
case "71":
|
|
||||||
return "貨物 東京(タ)→高松(タ)";
|
|
||||||
case "73":
|
|
||||||
case "75":
|
|
||||||
return "貨物 大阪(タ)→高松(タ)";
|
|
||||||
case "3079":
|
|
||||||
return "貨物 高松(タ)→伊予三島";
|
|
||||||
case "3071":
|
|
||||||
case "3077":
|
|
||||||
return "貨物 高松(タ)→新居浜";
|
|
||||||
case "3073":
|
|
||||||
return "貨物 高松(タ)→松山貨物";
|
|
||||||
case "70":
|
|
||||||
return "貨物 高松(タ)→東京(タ)";
|
|
||||||
case "74":
|
|
||||||
case "76":
|
|
||||||
return "貨物 高松(タ)→大阪(タ)";
|
|
||||||
case "3078":
|
|
||||||
return "貨物 伊予三島→高松(タ)";
|
|
||||||
case "3070":
|
|
||||||
return "貨物 新居浜→高松(タ)";
|
|
||||||
case "3076":
|
|
||||||
return "貨物 新居浜→高松(タ)";
|
|
||||||
case "3072":
|
|
||||||
return "貨物 松山貨物→高松(タ)";
|
|
||||||
case "9070":
|
|
||||||
return "貨物 臨時";
|
|
||||||
default:
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// 列車名、種別、フォントの取得
|
// 列車名、種別、フォントの取得
|
||||||
const [typeName, trainName, fontAvailable] = useMemo(() => {
|
const [typeName, trainName, fontAvailable, isOneMan, infogram] =
|
||||||
if (!limited) return "";
|
useMemo(() => {
|
||||||
const limitedArray = limited.split(":");
|
const customTrainData = customTrainDataDetector(trainNum);
|
||||||
const [type, fontAvailable] = (() => {
|
const [type, fontAvailable, isOneMan] = (() => {
|
||||||
const d = getType(limitedArray[0]);
|
switch (customTrainData.type) {
|
||||||
|
case "LTDEXP":
|
||||||
|
return ["特急", true, false];
|
||||||
|
case "Rapid":
|
||||||
|
return ["快速", true, false];
|
||||||
|
case "Normal":
|
||||||
|
return ["普通", true, false];
|
||||||
|
case "OneManRapid":
|
||||||
|
return ["快速", true, true];
|
||||||
|
case "OneMan":
|
||||||
|
return ["普通", true, true];
|
||||||
|
case "NightLTDEXP":
|
||||||
|
return ["特急", true, false];
|
||||||
|
case "SPCL":
|
||||||
|
return ["臨時", false, false];
|
||||||
|
case "SPCL_EXP":
|
||||||
|
return ["臨時特急", false, false];
|
||||||
|
case "SPCL_Rapid":
|
||||||
|
return ["臨時快速", true, false];
|
||||||
|
case "SPCL_Normal":
|
||||||
|
return ["臨時", true, false];
|
||||||
|
case "Freight":
|
||||||
|
return ["貨物", false, false];
|
||||||
|
case "Other":
|
||||||
|
switch (true) {
|
||||||
|
case !!trainNum.includes("T"):
|
||||||
|
return ["単機回送", false, false];
|
||||||
|
case !!trainNum.includes("R"):
|
||||||
|
case !!trainNum.includes("E"):
|
||||||
|
case !!trainNum.includes("L"):
|
||||||
|
case !!trainNum.includes("A"):
|
||||||
|
case !!trainNum.includes("B"):
|
||||||
|
return ["回送", false, false];
|
||||||
|
case !!trainNum.includes("H"):
|
||||||
|
return ["試運転", false, false];
|
||||||
|
}
|
||||||
|
return ["", false, false];
|
||||||
|
}
|
||||||
|
})();
|
||||||
switch (true) {
|
switch (true) {
|
||||||
case !!d:
|
case customTrainData.trainName !== "":
|
||||||
return [d, true];
|
// 特急の場合は、列車名を取得
|
||||||
case !!trainNum.includes("T"):
|
// 列番対称データがある場合はそれから列車番号を取得
|
||||||
return ["単機回送", false];
|
const distance = customTrainData.trainNumDistance;
|
||||||
case !!trainNum.includes("R"):
|
const number =
|
||||||
case !!trainNum.includes("E"):
|
distance !== null ? ` ${parseInt(trainNum) - distance}号` : "";
|
||||||
case !!trainNum.includes("L"):
|
const trainName = customTrainData.trainName + number;
|
||||||
case !!trainNum.includes("A"):
|
return [
|
||||||
case !!trainNum.includes("B"):
|
type,
|
||||||
return ["回送", false];
|
trainName,
|
||||||
case !!trainNum.includes("H"):
|
fontAvailable,
|
||||||
return ["試運転", false];
|
isOneMan,
|
||||||
case !!trainNum.match("D"):
|
customTrainData.infogram,
|
||||||
case !!trainNum.match("M"):
|
];
|
||||||
return ["普通", true];
|
case trainData[trainData.length - 1] === undefined:
|
||||||
case !!freightDetect(trainNum):
|
return [type, "", fontAvailable, isOneMan, customTrainData.infogram];
|
||||||
return [freightDetect(trainNum), false];
|
|
||||||
default:
|
default:
|
||||||
return ["", false];
|
// 行先がある場合は、行先を取得
|
||||||
|
return [
|
||||||
|
type,
|
||||||
|
migrateTrainName(
|
||||||
|
trainData[trainData.length - 1].split(",")[0] + "行き"
|
||||||
|
),
|
||||||
|
fontAvailable,
|
||||||
|
isOneMan,
|
||||||
|
customTrainData.infogram,
|
||||||
|
];
|
||||||
}
|
}
|
||||||
})();
|
}, [trainData]);
|
||||||
switch (true) {
|
|
||||||
case !!limitedArray[1]:
|
|
||||||
// 特急の場合は、列車名を取得
|
|
||||||
return [type, migrateTrainName(limitedArray[1]), fontAvailable];
|
|
||||||
case trainData.length == 0:
|
|
||||||
// 特急以外の場合は、列車番号を取得
|
|
||||||
|
|
||||||
return [type, "", fontAvailable];
|
|
||||||
default:
|
|
||||||
// 行先がある場合は、行先を取得
|
|
||||||
return [
|
|
||||||
type,
|
|
||||||
migrateTrainName(
|
|
||||||
trainData[trainData.length - 1].split(",")[0] + "行き"
|
|
||||||
),
|
|
||||||
fontAvailable,
|
|
||||||
];
|
|
||||||
}
|
|
||||||
}, [limited, trainData]);
|
|
||||||
|
|
||||||
// 1人運転の判定
|
|
||||||
const isOneMan = useMemo(() => {
|
|
||||||
const OneManRegex = new RegExp(/^4[1-9]\d\d[DM]$/);
|
|
||||||
const OneManRegex2 = new RegExp(/^5[1-7]\d\d[DM]$/);
|
|
||||||
return !!(
|
|
||||||
OneManRegex.test(trainNum) ||
|
|
||||||
OneManRegex2.test(trainNum) ||
|
|
||||||
trainNum === "3621D"
|
|
||||||
);
|
|
||||||
}, [trainNum]);
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<View style={{ padding: 10, flexDirection: "row", alignItems: "center" }}>
|
<View style={{ padding: 10, flexDirection: "row", alignItems: "center" }} onTouchStart={()=>scrollHandlers.ref.current?.scrollTo({ y: 0, animated: true })}>
|
||||||
<TrainIconStatus {...{ data, navigate, from }} />
|
<TrainIconStatus {...{ data, navigate, from }} />
|
||||||
<View
|
<View
|
||||||
style={{ borderRadius: 5, flexDirection: "row", alignItems: "center" }}
|
style={{ borderRadius: 5, flexDirection: "row", alignItems: "center" }}
|
||||||
@ -143,7 +128,7 @@ export const HeaderText: FC<Props> = ({
|
|||||||
fontSize: 20,
|
fontSize: 20,
|
||||||
color: "white",
|
color: "white",
|
||||||
fontFamily: fontAvailable ? "JR-Nishi" : undefined,
|
fontFamily: fontAvailable ? "JR-Nishi" : undefined,
|
||||||
fontWeight: !fontAvailable ?"bold":undefined,
|
fontWeight: !fontAvailable ? "bold" : undefined,
|
||||||
marginRight: 5,
|
marginRight: 5,
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
@ -151,6 +136,7 @@ export const HeaderText: FC<Props> = ({
|
|||||||
</Text>
|
</Text>
|
||||||
{isOneMan && <OneManText />}
|
{isOneMan && <OneManText />}
|
||||||
<Text style={textConfig}>{trainName}</Text>
|
<Text style={textConfig}>{trainName}</Text>
|
||||||
|
<InfogramText infogram={infogram} />
|
||||||
</View>
|
</View>
|
||||||
|
|
||||||
<View style={{ flex: 1 }} />
|
<View style={{ flex: 1 }} />
|
||||||
|
@ -0,0 +1,18 @@
|
|||||||
|
import React, { FC } from "react";
|
||||||
|
import { Text } from "react-native";
|
||||||
|
type props = {
|
||||||
|
infogram: string;
|
||||||
|
}
|
||||||
|
export const InfogramText: FC<props> = ({infogram}) => {
|
||||||
|
return (
|
||||||
|
<Text
|
||||||
|
style={{
|
||||||
|
fontSize: 20,
|
||||||
|
color: "white",
|
||||||
|
fontFamily: "JNR-font",
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
{infogram}
|
||||||
|
</Text>
|
||||||
|
);
|
||||||
|
};
|
@ -49,6 +49,11 @@ export const AppsWebView = ({ openStationACFromEachTrainInfo }) => {
|
|||||||
|
|
||||||
const onMessage = (event) => {
|
const onMessage = (event) => {
|
||||||
const { data } = event.nativeEvent;
|
const { data } = event.nativeEvent;
|
||||||
|
/**
|
||||||
|
* {type,trainNum,limited}
|
||||||
|
* {type,currentLines}
|
||||||
|
* {type,event,id,name,pdf,map,url,chk}
|
||||||
|
*/
|
||||||
if (data.includes("train.html")) {
|
if (data.includes("train.html")) {
|
||||||
navigate("trainbase", { info: data, from: "Train" });
|
navigate("trainbase", { info: data, from: "Train" });
|
||||||
return;
|
return;
|
||||||
|
@ -17,7 +17,7 @@ import { SwitchArea } from "../atom/SwitchArea";
|
|||||||
import { useNotification } from "../../stateBox/useNotifications";
|
import { useNotification } from "../../stateBox/useNotifications";
|
||||||
import { SheetHeaderItem } from "@/components/atom/SheetHeaderItem";
|
import { SheetHeaderItem } from "@/components/atom/SheetHeaderItem";
|
||||||
|
|
||||||
const versionCode = "6.0";
|
const versionCode = "6.0.1";
|
||||||
|
|
||||||
export const SettingTopPage = ({
|
export const SettingTopPage = ({
|
||||||
testNFC,
|
testNFC,
|
||||||
|
@ -25,9 +25,10 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
trainName: "しおかぜ",
|
trainName: "しおかぜ",
|
||||||
trainIcon: "https://storage.haruk.in/s8000nr.png",
|
trainIcon: "https://storage.haruk.in/s8000nr.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/shiokaze.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/shiokaze.html",
|
||||||
trainNumDistance: 0,
|
trainNumDistance: 0,
|
||||||
info: "いしづちと併結 / 8000系で運転",
|
info: "いしづちと併結 / 8000系で運転",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
case "2M":
|
case "2M":
|
||||||
return {
|
return {
|
||||||
@ -35,9 +36,10 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
trainName: "しおかぜ",
|
trainName: "しおかぜ",
|
||||||
trainIcon: "https://storage.haruk.in/s8000nr.png",
|
trainIcon: "https://storage.haruk.in/s8000nr.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/shiokaze.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/shiokaze.html",
|
||||||
trainNumDistance: 0,
|
trainNumDistance: 0,
|
||||||
info: "8000系で運転",
|
info: "8000系で運転",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
//8000 アンパン
|
//8000 アンパン
|
||||||
case "10M":
|
case "10M":
|
||||||
@ -51,6 +53,7 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
infoUrl: "https://www.jr-eki.com/aptrain/naani/yosan/train.html",
|
infoUrl: "https://www.jr-eki.com/aptrain/naani/yosan/train.html",
|
||||||
trainNumDistance: 0,
|
trainNumDistance: 0,
|
||||||
info: "いしづちと併結 / アンパンマン列車で運転",
|
info: "いしづちと併結 / アンパンマン列車で運転",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
//8600
|
//8600
|
||||||
case "8M":
|
case "8M":
|
||||||
@ -66,9 +69,10 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
trainName: "しおかぜ",
|
trainName: "しおかぜ",
|
||||||
trainIcon: "https://storage.haruk.in/s8600.png",
|
trainIcon: "https://storage.haruk.in/s8600.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/shiokaze.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/shiokaze.html",
|
||||||
trainNumDistance: 0,
|
trainNumDistance: 0,
|
||||||
info: "いしづちと併結 / 8600系で運転",
|
info: "いしづちと併結 / 8600系で運転",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
|
|
||||||
//いしづちメイン
|
//いしづちメイン
|
||||||
@ -96,9 +100,10 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
trainName: "いしづち",
|
trainName: "いしづち",
|
||||||
trainIcon: "https://storage.haruk.in/s8000no.png",
|
trainIcon: "https://storage.haruk.in/s8000no.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/ishizuchi.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/ishizuchi.html",
|
||||||
trainNumDistance: 1000,
|
trainNumDistance: 1000,
|
||||||
info: "しおかぜと併結 / 8000系で運転",
|
info: "しおかぜと併結 / 8000系で運転",
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
|
|
||||||
//8000 アンパン
|
//8000 アンパン
|
||||||
@ -113,6 +118,7 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
infoUrl: "https://www.jr-eki.com/aptrain/naani/yosan/train.html",
|
infoUrl: "https://www.jr-eki.com/aptrain/naani/yosan/train.html",
|
||||||
trainNumDistance: 1000,
|
trainNumDistance: 1000,
|
||||||
info: "しおかぜと併結 / アンパンマン列車で運転",
|
info: "しおかぜと併結 / アンパンマン列車で運転",
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
|
|
||||||
//8600
|
//8600
|
||||||
@ -129,9 +135,10 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
trainName: "いしづち",
|
trainName: "いしづち",
|
||||||
trainIcon: "https://storage.haruk.in/s8600_isz.png",
|
trainIcon: "https://storage.haruk.in/s8600_isz.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/ishizuchi.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/ishizuchi.html",
|
||||||
trainNumDistance: 1000,
|
trainNumDistance: 1000,
|
||||||
info: "しおかぜと併結 / 8600系で運転",
|
info: "しおかぜと併結 / 8600系で運転",
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
|
|
||||||
//MEXP
|
//MEXP
|
||||||
@ -142,9 +149,10 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
trainName: "モーニングEXP高松",
|
trainName: "モーニングEXP高松",
|
||||||
trainIcon: "https://storage.haruk.in/s8000nr.png",
|
trainIcon: "https://storage.haruk.in/s8000nr.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/morning.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/morning.html",
|
||||||
trainNumDistance: null,
|
trainNumDistance: null,
|
||||||
info: "8000系で運転",
|
info: "8000系で運転",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
//8600
|
//8600
|
||||||
case "1091M":
|
case "1091M":
|
||||||
@ -153,9 +161,10 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
trainName: "モーニングEXP松山",
|
trainName: "モーニングEXP松山",
|
||||||
trainIcon: "https://storage.haruk.in/s8600_isz.png",
|
trainIcon: "https://storage.haruk.in/s8600_isz.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/morning.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/morning.html",
|
||||||
trainNumDistance: null,
|
trainNumDistance: null,
|
||||||
info: "8600系で運転",
|
info: "8600系で運転",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
//三桁いしづち
|
//三桁いしづち
|
||||||
//8000 アンパン
|
//8000 アンパン
|
||||||
@ -168,19 +177,31 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
infoUrl: "https://www.jr-eki.com/aptrain/naani/yosan/train.html",
|
infoUrl: "https://www.jr-eki.com/aptrain/naani/yosan/train.html",
|
||||||
trainNumDistance: 940,
|
trainNumDistance: 940,
|
||||||
info: "アンパンマン列車で運転",
|
info: "アンパンマン列車で運転",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
//8600
|
//8600
|
||||||
case "1043M":
|
case "1043M":
|
||||||
case "1042M":
|
case "1042M":
|
||||||
|
return {
|
||||||
|
type: "LTDEXP",
|
||||||
|
trainName: "いしづち",
|
||||||
|
trainIcon: "https://storage.haruk.in/s8600_isz.png",
|
||||||
|
infoUrl:
|
||||||
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/ishizuchi.html",
|
||||||
|
trainNumDistance: 940,
|
||||||
|
info: "8600系で運転",
|
||||||
|
infogram: ""
|
||||||
|
};
|
||||||
case "1046M":
|
case "1046M":
|
||||||
return {
|
return {
|
||||||
type: "LTDEXP",
|
type: "LTDEXP",
|
||||||
trainName: "いしづち",
|
trainName: "いしづち",
|
||||||
trainIcon: "https://storage.haruk.in/s8600_isz.png",
|
trainIcon: "https://storage.haruk.in/s8600_isz.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/ishizuchi.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/ishizuchi.html",
|
||||||
trainNumDistance: 940,
|
trainNumDistance: 940,
|
||||||
info: "8600系で運転",
|
info: "8600系で運転",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
|
|
||||||
//南風 2700ノーマル
|
//南風 2700ノーマル
|
||||||
@ -206,9 +227,10 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
type: "LTDEXP",
|
type: "LTDEXP",
|
||||||
trainName: "南風",
|
trainName: "南風",
|
||||||
trainIcon: "https://storage.haruk.in/s2700.png",
|
trainIcon: "https://storage.haruk.in/s2700.png",
|
||||||
infoUrl: "http://jr-shikoku.co.jp/01_trainbus/vehicle-info/nanpu.html",
|
infoUrl: "https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/nanpu.html",
|
||||||
trainNumDistance: 30,
|
trainNumDistance: 30,
|
||||||
info: "2700系で運転",
|
info: "2700系で運転",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
|
|
||||||
//2700アンパン
|
//2700アンパン
|
||||||
@ -231,6 +253,7 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
infoUrl: "https://www.jr-eki.com/aptrain/naani/dosan/train.html",
|
infoUrl: "https://www.jr-eki.com/aptrain/naani/dosan/train.html",
|
||||||
trainNumDistance: 30,
|
trainNumDistance: 30,
|
||||||
info: "アンパンマン列車で運転",
|
info: "アンパンマン列車で運転",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
|
|
||||||
//うずしお
|
//うずしお
|
||||||
@ -245,36 +268,40 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
case "3003D":
|
case "3003D":
|
||||||
case "3007D":
|
case "3007D":
|
||||||
case "3013D":
|
case "3013D":
|
||||||
|
case "3019D":
|
||||||
case "3025D":
|
case "3025D":
|
||||||
case "3029D":
|
|
||||||
case "3031D":
|
case "3031D":
|
||||||
return {
|
return {
|
||||||
type: "LTDEXP",
|
type: "LTDEXP",
|
||||||
trainName: "うずしお",
|
trainName: "うずしお",
|
||||||
trainIcon: "https://storage.haruk.in/s2700_uzu.png",
|
trainIcon: "https://storage.haruk.in/s2700_uzu.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/uzushio.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/uzushio.html",
|
||||||
trainNumDistance: 3000,
|
trainNumDistance: 3000,
|
||||||
info: "2700系で運転",
|
info: "2700系で運転",
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
|
|
||||||
//2700 二両編成
|
//2700 二両編成
|
||||||
|
|
||||||
|
case "3008D":
|
||||||
case "3020D":
|
case "3020D":
|
||||||
case "3026D":
|
case "3026D":
|
||||||
|
case "3001D":
|
||||||
case "3005D":
|
case "3005D":
|
||||||
case "3011D":
|
case "3011D":
|
||||||
case "3017D":
|
case "3017D":
|
||||||
case "3019D":
|
|
||||||
case "3023D":
|
case "3023D":
|
||||||
|
case "3029D":
|
||||||
return {
|
return {
|
||||||
type: "LTDEXP",
|
type: "LTDEXP",
|
||||||
trainName: "うずしお",
|
trainName: "うずしお",
|
||||||
trainIcon: "https://storage.haruk.in/s2700_uzu.png",
|
trainIcon: "https://storage.haruk.in/s2700_uzu.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/uzushio.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/uzushio.html",
|
||||||
trainNumDistance: 3000,
|
trainNumDistance: 3000,
|
||||||
info: "2700系で運転",
|
info: "2700系で運転",
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
|
|
||||||
//2600
|
//2600
|
||||||
@ -293,23 +320,12 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
trainName: "うずしお",
|
trainName: "うずしお",
|
||||||
trainIcon: "https://storage.haruk.in/s2600.png",
|
trainIcon: "https://storage.haruk.in/s2600.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/uzushio.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/uzushio.html",
|
||||||
trainNumDistance: 3000,
|
trainNumDistance: 3000,
|
||||||
info: "2600系で運転",
|
info: "2600系で運転",
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
|
|
||||||
//キハ185
|
|
||||||
case "3001D":
|
|
||||||
case "3008D":
|
|
||||||
return {
|
|
||||||
type: "LTDEXP",
|
|
||||||
trainName: "うずしお",
|
|
||||||
trainIcon: "https://storage.haruk.in/s185tu_uzu.png",
|
|
||||||
infoUrl:
|
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/uzushio.html",
|
|
||||||
trainNumDistance: 3000,
|
|
||||||
info: "キハ185系で運転",
|
|
||||||
};
|
|
||||||
|
|
||||||
//マリンライナー
|
//マリンライナー
|
||||||
case "3104M":
|
case "3104M":
|
||||||
@ -384,9 +400,10 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
type: "Rapid",
|
type: "Rapid",
|
||||||
trainName: "マリンライナー",
|
trainName: "マリンライナー",
|
||||||
trainIcon: "https://storage.haruk.in/s5001.png",
|
trainIcon: "https://storage.haruk.in/s5001.png",
|
||||||
infoUrl: "http://jr-shikoku.co.jp/01_trainbus/vehicle-info/marine.html",
|
infoUrl: "https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/marine.html",
|
||||||
trainNumDistance: 3100,
|
trainNumDistance: 3100,
|
||||||
info: "",
|
info: "",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
case "3102M":
|
case "3102M":
|
||||||
case "3101M":
|
case "3101M":
|
||||||
@ -397,9 +414,106 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
type: "Rapid",
|
type: "Rapid",
|
||||||
trainName: "マリンライナー",
|
trainName: "マリンライナー",
|
||||||
trainIcon: "https://storage.haruk.in/s5001k.png",
|
trainIcon: "https://storage.haruk.in/s5001k.png",
|
||||||
infoUrl: "http://jr-shikoku.co.jp/01_trainbus/vehicle-info/marine.html",
|
infoUrl: "https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/marine.html",
|
||||||
trainNumDistance: 3100,
|
trainNumDistance: 3100,
|
||||||
info: "",
|
info: "",
|
||||||
|
infogram: ""
|
||||||
|
};
|
||||||
|
//下りサンポート
|
||||||
|
case "1219M":
|
||||||
|
return {
|
||||||
|
type: "Normal",
|
||||||
|
trainName: "南風リレー",
|
||||||
|
trainIcon: "",
|
||||||
|
infoUrl: "",
|
||||||
|
trainNumDistance: null,
|
||||||
|
info: " 土曜・休日は多度津-琴平間運休",
|
||||||
|
infogram: ""
|
||||||
|
};
|
||||||
|
|
||||||
|
case "111M":
|
||||||
|
case "115M":
|
||||||
|
case "117M":
|
||||||
|
case "121M":
|
||||||
|
case "123M":
|
||||||
|
case "127M":
|
||||||
|
case "131M":
|
||||||
|
case "139M":
|
||||||
|
case "147M":
|
||||||
|
case "151M":
|
||||||
|
return {
|
||||||
|
type: "Rapid",
|
||||||
|
trainName: "サンポート南風リレー",
|
||||||
|
trainIcon: null,
|
||||||
|
infoUrl: null,
|
||||||
|
trainNumDistance: null,
|
||||||
|
info: null,
|
||||||
|
infogram: ""
|
||||||
|
};
|
||||||
|
case "5109M":
|
||||||
|
case "5135M":
|
||||||
|
case "5251M":
|
||||||
|
return {
|
||||||
|
type: "OneManRapid",
|
||||||
|
trainName: "サンポート南風リレー",
|
||||||
|
trainIcon: null,
|
||||||
|
infoUrl: null,
|
||||||
|
trainNumDistance: null,
|
||||||
|
info: null,
|
||||||
|
infogram: ""
|
||||||
|
};
|
||||||
|
case "137M":
|
||||||
|
return {
|
||||||
|
type: "Rapid",
|
||||||
|
trainName: "サンポート",
|
||||||
|
trainIcon: null,
|
||||||
|
infoUrl: null,
|
||||||
|
trainNumDistance: null,
|
||||||
|
info: "土曜・休日運休",
|
||||||
|
infogram: ""
|
||||||
|
};
|
||||||
|
//上りサンポート
|
||||||
|
case "116M":
|
||||||
|
return {
|
||||||
|
type: "Normal",
|
||||||
|
trainName: "南風リレー",
|
||||||
|
trainIcon: null,
|
||||||
|
infoUrl: null,
|
||||||
|
trainNumDistance: null,
|
||||||
|
info: null,
|
||||||
|
infogram: ""
|
||||||
|
};
|
||||||
|
|
||||||
|
case "130M":
|
||||||
|
case "132M":
|
||||||
|
case "136M":
|
||||||
|
case "140M":
|
||||||
|
case "144M":
|
||||||
|
case "146M":
|
||||||
|
case "150M":
|
||||||
|
case "156M":
|
||||||
|
return {
|
||||||
|
type: "Rapid",
|
||||||
|
trainName: "サンポート南風リレー",
|
||||||
|
trainIcon: "",
|
||||||
|
infoUrl: "",
|
||||||
|
trainNumDistance: null,
|
||||||
|
info: "",
|
||||||
|
infogram: ""
|
||||||
|
};
|
||||||
|
case "5118M":
|
||||||
|
case "5120M":
|
||||||
|
case "5124M":
|
||||||
|
case "5126M":
|
||||||
|
case "5252M":
|
||||||
|
return {
|
||||||
|
type: "OneManRapid",
|
||||||
|
trainName: "サンポート南風リレー",
|
||||||
|
trainIcon: null,
|
||||||
|
infoUrl: null,
|
||||||
|
trainNumDistance: null,
|
||||||
|
info: null,
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
|
|
||||||
//サンライズ瀬戸
|
//サンライズ瀬戸
|
||||||
@ -413,6 +527,7 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
"https://www.jr-odekake.net/train/sunriseseto_izumo/index.html",
|
"https://www.jr-odekake.net/train/sunriseseto_izumo/index.html",
|
||||||
trainNumDistance: null,
|
trainNumDistance: null,
|
||||||
info: "",
|
info: "",
|
||||||
|
infogram: "ブ"
|
||||||
};
|
};
|
||||||
case "8041M": //琴平延長高松迄
|
case "8041M": //琴平延長高松迄
|
||||||
case "8031M": //琴平延長高松以降
|
case "8031M": //琴平延長高松以降
|
||||||
@ -424,6 +539,7 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
"https://www.jr-odekake.net/train/sunriseseto_izumo/index.html",
|
"https://www.jr-odekake.net/train/sunriseseto_izumo/index.html",
|
||||||
trainNumDistance: null,
|
trainNumDistance: null,
|
||||||
info: "琴平延長運転日",
|
info: "琴平延長運転日",
|
||||||
|
infogram: "ブ"
|
||||||
};
|
};
|
||||||
|
|
||||||
//宇和海
|
//宇和海
|
||||||
@ -458,9 +574,10 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
type: "LTDEXP",
|
type: "LTDEXP",
|
||||||
trainName: "宇和海",
|
trainName: "宇和海",
|
||||||
trainIcon: "https://storage.haruk.in/s2000_uwa.png",
|
trainIcon: "https://storage.haruk.in/s2000_uwa.png",
|
||||||
infoUrl: "http://jr-shikoku.co.jp/01_trainbus/vehicle-info/uwakai.html",
|
infoUrl: "https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/uwakai.html",
|
||||||
trainNumDistance: 1050,
|
trainNumDistance: 1050,
|
||||||
info: "2000系で運転",
|
info: "2000系で運転",
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
//2000 アンパン込み
|
//2000 アンパン込み
|
||||||
case "1058D":
|
case "1058D":
|
||||||
@ -476,6 +593,7 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
infoUrl: "https://www.jr-eki.com/aptrain/naani/yosan/train.html",
|
infoUrl: "https://www.jr-eki.com/aptrain/naani/yosan/train.html",
|
||||||
trainNumDistance: 1050,
|
trainNumDistance: 1050,
|
||||||
info: "アンパン列車で運転",
|
info: "アンパン列車で運転",
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
//しまんと
|
//しまんと
|
||||||
case "2002D":
|
case "2002D":
|
||||||
@ -487,9 +605,10 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
trainName: "しまんと",
|
trainName: "しまんと",
|
||||||
trainIcon: "https://storage.haruk.in/s2700_smn.png",
|
trainIcon: "https://storage.haruk.in/s2700_smn.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/shimanto.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/shimanto.html",
|
||||||
trainNumDistance: 2000,
|
trainNumDistance: 2000,
|
||||||
info: "2700系で運転",
|
info: "2700系で運転",
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
|
|
||||||
//あしずり 2000
|
//あしずり 2000
|
||||||
@ -506,26 +625,38 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
trainName: "あしずり",
|
trainName: "あしずり",
|
||||||
trainIcon: "https://storage.haruk.in/s2000_asi.png",
|
trainIcon: "https://storage.haruk.in/s2000_asi.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/ashizuri.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/ashizuri.html",
|
||||||
trainNumDistance: 2070,
|
trainNumDistance: 2070,
|
||||||
info: "2000系で運転",
|
info: "2000系で運転",
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
|
|
||||||
//あしずり 2700
|
//あしずり 2700
|
||||||
case "2072D":
|
|
||||||
case "2078D":
|
case "2078D":
|
||||||
case "2084D":
|
case "2084D":
|
||||||
case "2075D":
|
case "2075D":
|
||||||
case "2077D":
|
case "2077D":
|
||||||
|
return {
|
||||||
|
type: "LTDEXP",
|
||||||
|
trainName: "あしずり",
|
||||||
|
trainIcon: "https://storage.haruk.in/s2700_asi.png",
|
||||||
|
infoUrl:
|
||||||
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/ashizuri.html",
|
||||||
|
trainNumDistance: 2070,
|
||||||
|
info: "2700系で運転",
|
||||||
|
infogram: ""
|
||||||
|
};
|
||||||
|
case "2072D":
|
||||||
case "2083D":
|
case "2083D":
|
||||||
return {
|
return {
|
||||||
type: "LTDEXP",
|
type: "LTDEXP",
|
||||||
trainName: "あしずり",
|
trainName: "あしずり",
|
||||||
trainIcon: "https://storage.haruk.in/s2700_asi.png",
|
trainIcon: "https://storage.haruk.in/s2700_asi.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/ashizuri.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/ashizuri.html",
|
||||||
trainNumDistance: 2070,
|
trainNumDistance: 2070,
|
||||||
info: "2700系で運転",
|
info: "2700系で運転",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
|
|
||||||
//剣山
|
//剣山
|
||||||
@ -541,9 +672,10 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
trainName: "剣山",
|
trainName: "剣山",
|
||||||
trainIcon: "https://storage.haruk.in/s185tu.png",
|
trainIcon: "https://storage.haruk.in/s185tu.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/vehicle-info/tsurugisan.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/tsurugisan.html",
|
||||||
trainNumDistance: 4000,
|
trainNumDistance: 4000,
|
||||||
info: "キハ185系で運転",
|
info: "キハ185系で運転",
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
|
|
||||||
//よしのがわトロッコ
|
//よしのがわトロッコ
|
||||||
@ -554,9 +686,10 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
trainName: "よしのがわトロッコ",
|
trainName: "よしのがわトロッコ",
|
||||||
trainIcon: "https://storage.haruk.in/s185to_ai.png",
|
trainIcon: "https://storage.haruk.in/s185to_ai.png",
|
||||||
infoUrl:
|
infoUrl:
|
||||||
"http://jr-shikoku.co.jp/01_trainbus/event_train/yoshino_torokko.html",
|
"https://www.jr-shikoku.co.jp/01_trainbus/event_train/yoshino_torokko.html",
|
||||||
trainNumDistance: null,
|
trainNumDistance: null,
|
||||||
info: "",
|
info: "",
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
|
|
||||||
//岡山高松アントロ
|
//岡山高松アントロ
|
||||||
@ -573,6 +706,7 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
"https://www.jr-eki.com/aptrain/naani/torokko_seto/jikoku.html",
|
"https://www.jr-eki.com/aptrain/naani/torokko_seto/jikoku.html",
|
||||||
trainNumDistance: null,
|
trainNumDistance: null,
|
||||||
info: "",
|
info: "",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
|
|
||||||
//伊予灘ものがたり
|
//伊予灘ものがたり
|
||||||
@ -585,6 +719,7 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
infoUrl: "https://iyonadamonogatari.com/",
|
infoUrl: "https://iyonadamonogatari.com/",
|
||||||
trainNumDistance: null,
|
trainNumDistance: null,
|
||||||
info: "",
|
info: "",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
case "8092D":
|
case "8092D":
|
||||||
case "8094D":
|
case "8094D":
|
||||||
@ -595,6 +730,7 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
infoUrl: "https://iyonadamonogatari.com/",
|
infoUrl: "https://iyonadamonogatari.com/",
|
||||||
trainNumDistance: null,
|
trainNumDistance: null,
|
||||||
info: "",
|
info: "",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
|
|
||||||
//千年ものがたり
|
//千年ものがたり
|
||||||
@ -607,6 +743,7 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
infoUrl: "https://www.jr-shikoku.co.jp/sennenmonogatari/",
|
infoUrl: "https://www.jr-shikoku.co.jp/sennenmonogatari/",
|
||||||
trainNumDistance: null,
|
trainNumDistance: null,
|
||||||
info: "",
|
info: "",
|
||||||
|
infogram: "G"
|
||||||
};
|
};
|
||||||
|
|
||||||
//夜明けものがたり
|
//夜明けものがたり
|
||||||
@ -621,10 +758,41 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
infoUrl: "https://www.jr-shikoku.co.jp/yoakenomonogatari/index.html",
|
infoUrl: "https://www.jr-shikoku.co.jp/yoakenomonogatari/index.html",
|
||||||
trainNumDistance: null,
|
trainNumDistance: null,
|
||||||
info: "",
|
info: "",
|
||||||
|
infogram: "G"
|
||||||
|
};
|
||||||
|
case "9174M":
|
||||||
|
return {
|
||||||
|
type: "SPCL_Rapid",
|
||||||
|
trainName: "マリンライナー94号",
|
||||||
|
trainIcon: "https://storage.haruk.in/s5001.png",
|
||||||
|
infoUrl: "https://www.jr-shikoku.co.jp/01_trainbus/vehicle-info/marine.html",
|
||||||
|
trainNumDistance: null,
|
||||||
|
info: "WEST LIVE TOUR 2025臨 3/21,22のみ運転",
|
||||||
|
infogram: "G"
|
||||||
|
};
|
||||||
|
case "9395D":
|
||||||
|
return {
|
||||||
|
type: "SPCL_Normal",
|
||||||
|
trainName: "",
|
||||||
|
trainIcon: null,
|
||||||
|
infoUrl: null,
|
||||||
|
trainNumDistance: null,
|
||||||
|
info: "WEST LIVE TOUR 2025臨 3/21,22のみ運転",
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
|
|
||||||
default:
|
default:
|
||||||
if (
|
if(getJRF(TrainNumber) !== null){
|
||||||
|
return {
|
||||||
|
type: "Freight",
|
||||||
|
trainName: getJRF(TrainNumber),
|
||||||
|
trainIcon: "https://storage.haruk.in/ef210a.png",
|
||||||
|
infoUrl: null,
|
||||||
|
trainNumDistance: null,
|
||||||
|
info: "",
|
||||||
|
infogram: "",
|
||||||
|
};
|
||||||
|
}
|
||||||
|
else if (
|
||||||
new RegExp(/^4[1-9]\d\d[DM]$/).test(TrainNumber) ||
|
new RegExp(/^4[1-9]\d\d[DM]$/).test(TrainNumber) ||
|
||||||
new RegExp(/^5[1-7]\d\d[DM]$/).test(TrainNumber) ||
|
new RegExp(/^5[1-7]\d\d[DM]$/).test(TrainNumber) ||
|
||||||
new RegExp(/^3[2-9]\d\d[DM]$/).test(TrainNumber)
|
new RegExp(/^3[2-9]\d\d[DM]$/).test(TrainNumber)
|
||||||
@ -636,48 +804,65 @@ export const customTrainDataDetector = (TrainNumber: string) => {
|
|||||||
infoUrl: null,
|
infoUrl: null,
|
||||||
trainNumDistance: null,
|
trainNumDistance: null,
|
||||||
info: null,
|
info: null,
|
||||||
|
infogram: ""
|
||||||
};
|
};
|
||||||
else
|
else if (
|
||||||
return {
|
new RegExp(/^[1-9]\d\d[DM]$/).test(TrainNumber) ||
|
||||||
type: "Normal",
|
new RegExp(/^1[26]\d\d[DM]$/).test(TrainNumber) ||
|
||||||
trainName: "",
|
new RegExp(/^58\d\d[DM]$/).test(TrainNumber) ||
|
||||||
trainIcon: null,
|
new RegExp(/^6\d\d\d[DM]$/).test(TrainNumber)
|
||||||
infoUrl: null,
|
){
|
||||||
trainNumDistance: null,
|
return {
|
||||||
info: null,
|
type: "Normal",
|
||||||
};
|
trainName: "",
|
||||||
break;
|
trainIcon: null,
|
||||||
|
infoUrl: null,
|
||||||
|
trainNumDistance: null,
|
||||||
|
info: null,
|
||||||
|
infogram: ""
|
||||||
|
};
|
||||||
|
} else {
|
||||||
|
return {
|
||||||
|
type: "Other",
|
||||||
|
trainName: "",
|
||||||
|
trainIcon: null,
|
||||||
|
infoUrl: null,
|
||||||
|
trainNumDistance: null,
|
||||||
|
info: null,
|
||||||
|
infogram: ""
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
export const getJRF = (num: string) => {
|
export const getJRF = (num: string) => {
|
||||||
switch (num) {
|
switch (num) {
|
||||||
case "71":
|
case "71":
|
||||||
return "東京(タ)→高松(タ)\\n";
|
return "東京(タ)→高松(タ)";
|
||||||
case "73":
|
case "73":
|
||||||
case "75":
|
case "75":
|
||||||
return "大阪(タ)→高松(タ)\\n";
|
return "大阪(タ)→高松(タ)";
|
||||||
case "3079":
|
case "3079":
|
||||||
return "高松(タ)→伊予三島\\n";
|
return "高松(タ)→伊予三島";
|
||||||
case "3071":
|
case "3071":
|
||||||
case "3077":
|
case "3077":
|
||||||
return "高松(タ)→新居浜\\n";
|
return "高松(タ)→新居浜";
|
||||||
case "3073":
|
case "3073":
|
||||||
return "高松(タ)→松山貨物\\n";
|
return "高松(タ)→松山貨物";
|
||||||
case "70":
|
case "70":
|
||||||
return "高松(タ)→東京(タ)\\n";
|
return "高松(タ)→東京(タ)";
|
||||||
case "74":
|
case "74":
|
||||||
case "76":
|
case "76":
|
||||||
return "高松(タ)→大阪(タ)\\n";
|
return "高松(タ)→大阪(タ)";
|
||||||
case "3078":
|
case "3078":
|
||||||
return "伊予三島→高松(タ)\\n";
|
return "伊予三島→高松(タ)";
|
||||||
case "3070":
|
case "3070":
|
||||||
return "新居浜→高松(タ)\\n";
|
return "新居浜→高松(タ)";
|
||||||
case "3076":
|
case "3076":
|
||||||
return "新居浜→高松(タ)\\n";
|
return "新居浜→高松(タ)";
|
||||||
case "3072":
|
case "3072":
|
||||||
return "松山貨物→高松(タ)\\n";
|
return "松山貨物→高松(タ)";
|
||||||
case "9070":
|
case "9070":
|
||||||
return "臨時貨物\\n";
|
return "臨時";
|
||||||
default:
|
default:
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
@ -23,12 +23,16 @@ type getTrainType = (d: nameString) => {
|
|||||||
export const getTrainType: getTrainType = (nameString) => {
|
export const getTrainType: getTrainType = (nameString) => {
|
||||||
switch (nameString) {
|
switch (nameString) {
|
||||||
case "Rapid":
|
case "Rapid":
|
||||||
|
case "OneManRapid":
|
||||||
return { color: "aqua", name: "快速", data: "rapid" };
|
return { color: "aqua", name: "快速", data: "rapid" };
|
||||||
case "LTDEXP":
|
case "LTDEXP":
|
||||||
return { color: "red", name: "特急", data: "express" };
|
return { color: "red", name: "特急", data: "express" };
|
||||||
case "NightLTDEXP":
|
case "NightLTDEXP":
|
||||||
return { color: "red", name: "寝台特急", data: "express" };
|
return { color: "red", name: "寝台特急", data: "express" };
|
||||||
case "SPCL":
|
case "SPCL":
|
||||||
|
case "SPCL_Rapid":
|
||||||
|
case "SPCL_EXP":
|
||||||
|
case "SPCL_Normal":
|
||||||
return { color: "#297bff", name: "臨時", data: "normal" };
|
return { color: "#297bff", name: "臨時", data: "normal" };
|
||||||
case "OneMan":
|
case "OneMan":
|
||||||
return { color: "white", name: "普通列車(ワンマン)", data: "normal" };
|
return { color: "white", name: "普通列車(ワンマン)", data: "normal" };
|
||||||
|
@ -208,21 +208,23 @@ export const injectJavascriptData: InjectJavascriptData = (
|
|||||||
case "3003D":
|
case "3003D":
|
||||||
case "3007D":
|
case "3007D":
|
||||||
case "3013D":
|
case "3013D":
|
||||||
|
case "3019D":
|
||||||
case "3025D":
|
case "3025D":
|
||||||
case "3029D":
|
|
||||||
case "3031D":
|
case "3031D":
|
||||||
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s2700_uzu.png');
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s2700_uzu.png');
|
||||||
break;
|
break;
|
||||||
|
|
||||||
//2700 二両編成
|
//2700 二両編成
|
||||||
|
|
||||||
|
case "3008D":
|
||||||
case "3020D":
|
case "3020D":
|
||||||
case "3026D":
|
case "3026D":
|
||||||
|
case "3001D":
|
||||||
case "3005D":
|
case "3005D":
|
||||||
case "3011D":
|
case "3011D":
|
||||||
case "3017D":
|
case "3017D":
|
||||||
case "3019D":
|
|
||||||
case "3023D":
|
case "3023D":
|
||||||
|
case "3029D":
|
||||||
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s2700_uzu.png');
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s2700_uzu.png');
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -240,12 +242,6 @@ export const injectJavascriptData: InjectJavascriptData = (
|
|||||||
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s2600.png');
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s2600.png');
|
||||||
break;
|
break;
|
||||||
|
|
||||||
//キハ185
|
|
||||||
case "3001D":
|
|
||||||
case "3008D":
|
|
||||||
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s185tu_uzu.png');
|
|
||||||
break;
|
|
||||||
|
|
||||||
//マリンライナー
|
//マリンライナー
|
||||||
case "3104M":
|
case "3104M":
|
||||||
case "3106M":
|
case "3106M":
|
||||||
@ -398,6 +394,7 @@ export const injectJavascriptData: InjectJavascriptData = (
|
|||||||
case "2084D":
|
case "2084D":
|
||||||
case "2075D":
|
case "2075D":
|
||||||
case "2077D":
|
case "2077D":
|
||||||
|
case "2083D":
|
||||||
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s2700_asi.png');
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s2700_asi.png');
|
||||||
break;
|
break;
|
||||||
//剣山
|
//剣山
|
||||||
@ -469,53 +466,53 @@ export const injectJavascriptData: InjectJavascriptData = (
|
|||||||
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/ef210a.png');
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/ef210a.png');
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// 普通列車系統、6000系運用
|
// // 普通列車系統、6000系運用
|
||||||
//61運用
|
// //61運用
|
||||||
case "1213M":
|
// case "1213M":
|
||||||
case "1214M":
|
// case "1214M":
|
||||||
case "143M":
|
// case "143M":
|
||||||
case "147M":
|
// case "147M":
|
||||||
//62運用
|
// //62運用
|
||||||
case "114M":
|
// case "114M":
|
||||||
//961運用
|
// //961運用
|
||||||
case "143M":
|
// case "143M":
|
||||||
case "147M":
|
// case "147M":
|
||||||
//962運用
|
// //962運用
|
||||||
case "114M":
|
// case "114M":
|
||||||
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s6000p.png');
|
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s6000p.png');
|
||||||
break;
|
// break;
|
||||||
|
|
||||||
|
|
||||||
// 土讃線普通列車系統(include ごな線)
|
// // 土讃線普通列車系統(include ごな線)
|
||||||
// ごな線
|
// // ごな線
|
||||||
case "5851D": //219D併結 [ToDo: 219Dとの分割対策]
|
// case "5851D": //219D併結 [ToDo: 219Dとの分割対策]
|
||||||
case "5854D":
|
// case "5854D":
|
||||||
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/tosa9640jgr.png');
|
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/tosa9640jgr.png');
|
||||||
break;
|
// break;
|
||||||
|
|
||||||
//JR車両乗り入れ運用
|
// //JR車両乗り入れ運用
|
||||||
case "5858D":
|
// case "5858D":
|
||||||
case "5869D":
|
// case "5869D":
|
||||||
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1000.png');
|
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1000.png');
|
||||||
break;
|
// break;
|
||||||
//併結運用の併結される側 [ToDo: 分割対策]
|
// //併結運用の併結される側 [ToDo: 分割対策]
|
||||||
case "5845D":
|
// case "5845D":
|
||||||
case "5851D":
|
// case "5851D":
|
||||||
case "5818D":
|
// case "5818D":
|
||||||
case "5820D":
|
// case "5820D":
|
||||||
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/tosa9640.png');
|
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/tosa9640.png');
|
||||||
break;
|
// break;
|
||||||
// 土讃線単体列車のキハ32運用
|
// // 土讃線単体列車のキハ32運用
|
||||||
case "715D":
|
// case "715D":
|
||||||
case "718D":
|
// case "718D":
|
||||||
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s32ns.png');
|
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s32ns.png');
|
||||||
break;
|
// break;
|
||||||
|
|
||||||
// サンライズに伴う気動車代走
|
// // サンライズに伴う気動車代走
|
||||||
case "6219D":
|
// case "6219D":
|
||||||
case "6222D":
|
// case "6222D":
|
||||||
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1000.png');
|
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1000.png');
|
||||||
break;
|
// break;
|
||||||
// // それ以外の土讃線ごな線直通列車
|
// // それ以外の土讃線ごな線直通列車
|
||||||
// case "5811D":
|
// case "5811D":
|
||||||
// case "5813D":
|
// case "5813D":
|
||||||
@ -906,97 +903,89 @@ export const injectJavascriptData: InjectJavascriptData = (
|
|||||||
// case "8094D":
|
// case "8094D":
|
||||||
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s185iyoy.png');
|
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s185iyoy.png');
|
||||||
// break;
|
// break;
|
||||||
// // 高徳線、徳島線、牟岐線、鳴門線普通列車系統
|
|
||||||
// // キハ40・47
|
// 高徳線、徳島線、牟岐線、鳴門線普通列車系統
|
||||||
// case "4303D":
|
// キハ40・47
|
||||||
// case "363D":
|
case "4303D":
|
||||||
// case "369D":
|
case "371D":
|
||||||
// case "314D":
|
case "316D":
|
||||||
// case "316D":
|
case "362D":
|
||||||
// case "368D":
|
case "4376D":
|
||||||
// case "4382D":
|
case "951D":
|
||||||
// case "951D":
|
case "953D":
|
||||||
// case "953D":
|
case "955D":
|
||||||
// case "955D":
|
case "973D":
|
||||||
// case "973D":
|
case "975D":
|
||||||
// case "975D":
|
case "977D":
|
||||||
// case "977D":
|
case "979D":
|
||||||
// case "979D":
|
case "981D":
|
||||||
// case "981D":
|
case "950D":
|
||||||
// case "950D":
|
case "968D":
|
||||||
// case "968D":
|
case "970D":
|
||||||
// case "970D":
|
case "972D":
|
||||||
// case "972D":
|
case "974D":
|
||||||
// case "974D":
|
case "976D":
|
||||||
// case "976D":
|
case "980D":
|
||||||
// case "980D":
|
case "982D":
|
||||||
// case "982D":
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s40.png');
|
||||||
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s40.png');
|
break;
|
||||||
// break;
|
// 1000形
|
||||||
// // 1000形
|
case "4311D":
|
||||||
// case "4309D":
|
case "363D":
|
||||||
// case "4311D":
|
case "356D":
|
||||||
// case "371D":
|
case "4374D":
|
||||||
// case "4318D":
|
case "433D":
|
||||||
// case "358D":
|
case "4447D":
|
||||||
// case "4380D":
|
case "451D":
|
||||||
// case "433D":
|
case "450D":
|
||||||
// case "473D":
|
case "4458D":
|
||||||
// case "450D":
|
case "474D":
|
||||||
// case "480D":
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1000.png');
|
||||||
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1000.png');
|
break;
|
||||||
// break;
|
// 1200形
|
||||||
// // 1200形
|
case "4301D":
|
||||||
// case "4301D":
|
case "4327D":
|
||||||
// case "4327D":
|
case "4329D":
|
||||||
// case "4329D":
|
case "4343D":
|
||||||
// case "4343D":
|
case "353D":
|
||||||
// case "351D":
|
case "355D":
|
||||||
// case "353D":
|
case "367D":
|
||||||
// case "355D":
|
case "310D":
|
||||||
// case "4355D":
|
case "4326D":
|
||||||
// case "4361D":
|
case "4334D":
|
||||||
// case "367D":
|
case "4342D":
|
||||||
// case "4330D":
|
case "358D":
|
||||||
// case "4336D":
|
case "364D":
|
||||||
// case "4346D":
|
case "4453D":
|
||||||
// case "360D":
|
case "4455D":
|
||||||
// case "362D":
|
case "4457D":
|
||||||
// case "4370D":
|
case "463D":
|
||||||
// case "374D":
|
case "475D":
|
||||||
// case "4378D":
|
case "477D":
|
||||||
// case "451D":
|
case "485D":
|
||||||
// case "4453D":
|
case "4430D":
|
||||||
// case "4455D":
|
case "434D":
|
||||||
// case "4459D":
|
case "438D":
|
||||||
// case "471D":
|
case "4460D":
|
||||||
// case "475D":
|
case "4464D":
|
||||||
// case "485D":
|
case "4466D":
|
||||||
// case "4430D":
|
case "478D":
|
||||||
// case "434D":
|
case "484D":
|
||||||
// case "438D":
|
case "957D":
|
||||||
// case "4460D":
|
case "4959D":
|
||||||
// case "4466D":
|
case "4963D":
|
||||||
// case "4470D":
|
case "4967D":
|
||||||
// case "474D":
|
case "4971D":
|
||||||
// case "484D":
|
case "952D":
|
||||||
// case "957D":
|
case "4954D":
|
||||||
// case "4959D":
|
case "4958D":
|
||||||
// case "4963D":
|
case "4962D":
|
||||||
// case "4967D":
|
case "4966D":
|
||||||
// case "4971D":
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1200n.png');
|
||||||
// case "4983D":
|
break;
|
||||||
// case "952D":
|
|
||||||
// case "4954D":
|
|
||||||
// case "4958D":
|
|
||||||
// case "4962D":
|
|
||||||
// case "4966D":
|
|
||||||
// case "4978D":
|
|
||||||
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1200n.png');
|
|
||||||
// break;
|
|
||||||
|
|
||||||
|
|
||||||
// default: //指定車両でなく、Regexでの指定に移動
|
default: //指定車両でなく、Regexでの指定に移動
|
||||||
// // 琴平直通系普通電車
|
// // 琴平直通系普通電車
|
||||||
// if(new RegExp(/^(1|4|5)2\\d\\dM$/).test(列番データ)){
|
// if(new RegExp(/^(1|4|5)2\\d\\dM$/).test(列番データ)){
|
||||||
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s7200.png');
|
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s7200.png');
|
||||||
@ -1010,30 +999,31 @@ export const injectJavascriptData: InjectJavascriptData = (
|
|||||||
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s7000.png');
|
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s7000.png');
|
||||||
// break;
|
// break;
|
||||||
// }// 高徳線 普通列車系統
|
// }// 高徳線 普通列車系統
|
||||||
// else if(new RegExp(/^(4|5)3\\d\\dD$/).test(列番データ)){
|
// else
|
||||||
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1500.png');
|
if(new RegExp(/^(4|5)3\\d\\dD$/).test(列番データ)){
|
||||||
// break;
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1500.png');
|
||||||
// }
|
break;
|
||||||
// else if(new RegExp(/^3\\d\\dD$/).test(列番データ)){
|
}
|
||||||
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1500.png');
|
else if(new RegExp(/^3\\d\\dD$/).test(列番データ)){
|
||||||
// break;
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1500.png');
|
||||||
// }// 徳島線 普通列車系統
|
break;
|
||||||
// else if(new RegExp(/^(4|5)4\\d\\dD$/).test(列番データ)){
|
}// 徳島線 普通列車系統
|
||||||
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1500.png');
|
else if(new RegExp(/^(4|5)4\\d\\dD$/).test(列番データ)){
|
||||||
// break;
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1500.png');
|
||||||
// }
|
break;
|
||||||
// else if(new RegExp(/^4\\d\\dD$/).test(列番データ)){
|
}
|
||||||
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1500.png');
|
else if(new RegExp(/^4\\d\\dD$/).test(列番データ)){
|
||||||
// break;
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1500.png');
|
||||||
// }// 鳴門線普通列車系統
|
break;
|
||||||
// else if(new RegExp(/^(4|5)9(5|6|7|8)\\dD$/).test(列番データ)){
|
}// 鳴門線普通列車系統
|
||||||
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1500.png');
|
else if(new RegExp(/^(4|5)9(5|6|7|8)\\dD$/).test(列番データ)){
|
||||||
// break;
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1500.png');
|
||||||
// }
|
break;
|
||||||
// else if(new RegExp(/^9(5|6|7|8)\\dD$/).test(列番データ)){
|
}
|
||||||
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1500.png');
|
else if(new RegExp(/^9(5|6|7|8)\\dD$/).test(列番データ)){
|
||||||
// break;
|
setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s1500.png');
|
||||||
// }
|
break;
|
||||||
|
}
|
||||||
// 牟岐線普通列車系統 一旦閉鎖
|
// 牟岐線普通列車系統 一旦閉鎖
|
||||||
// else if(new RegExp(/^(4|5)5\\d\\dD$/).test(列番データ)){
|
// else if(new RegExp(/^(4|5)5\\d\\dD$/).test(列番データ)){
|
||||||
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s7200.png');
|
// setStationIcon(e.querySelector("img"),'https://storage.haruk.in/s7200.png');
|
||||||
@ -1136,72 +1126,132 @@ export const injectJavascriptData: InjectJavascriptData = (
|
|||||||
|
|
||||||
switch(num){
|
switch(num){
|
||||||
//牟岐線直通列車情報
|
//牟岐線直通列車情報
|
||||||
case "351D":
|
//徳島線発牟岐線行き
|
||||||
case "468D":
|
case "468D":
|
||||||
|
case "478D":
|
||||||
case "484D":
|
case "484D":
|
||||||
viaData = "牟岐線直通";
|
viaData = "牟岐線直通";
|
||||||
ToData = "牟岐";
|
ToData = "牟岐";
|
||||||
case "951D":
|
break;
|
||||||
viaData = "牟岐線直通";
|
|
||||||
ToData = "桑野";
|
|
||||||
case "4430D":
|
case "4430D":
|
||||||
case "4472D":
|
case "4472D":
|
||||||
viaData = "牟岐線直通";
|
viaData = "牟岐線直通";
|
||||||
isWanman = true;
|
isWanman = true;
|
||||||
ToData = "牟岐";
|
ToData = "牟岐";
|
||||||
|
break;
|
||||||
case "434D":
|
case "434D":
|
||||||
case "474D":
|
case "474D":
|
||||||
case "478D":
|
case "476D":
|
||||||
case "480D":
|
case "480D":
|
||||||
viaData = "牟岐線直通";
|
viaData = "牟岐線直通";
|
||||||
ToData = "阿南";
|
ToData = "阿南";
|
||||||
case "5444D":
|
break;
|
||||||
case "4452D":
|
case "4452D":
|
||||||
case "4458D":
|
|
||||||
case "4460D":
|
|
||||||
case "4466D":
|
case "4466D":
|
||||||
|
case "4470D":
|
||||||
viaData = "牟岐線直通";
|
viaData = "牟岐線直通";
|
||||||
isWanman = true;
|
isWanman = true;
|
||||||
ToData = "阿南";
|
ToData = "阿南";
|
||||||
case "4464D":
|
break;
|
||||||
|
case "4456D":
|
||||||
viaData = "牟岐線直通";
|
viaData = "牟岐線直通";
|
||||||
isWanman = true;
|
isWanman = true;
|
||||||
ToData = "阿波海南"
|
ToData = "阿波海南"
|
||||||
|
break;
|
||||||
|
//鳴門線発牟岐線行き
|
||||||
|
case "951D":
|
||||||
|
viaData = "牟岐線直通";
|
||||||
|
ToData = "桑野";
|
||||||
|
break;
|
||||||
|
|
||||||
|
//牟岐線発高徳線行き
|
||||||
|
case "358D":
|
||||||
|
viaData = "牟岐線直通";
|
||||||
|
break;
|
||||||
|
case "4314D":
|
||||||
|
case "4326D":
|
||||||
|
case "4334D":
|
||||||
|
case "4342D":
|
||||||
|
case "4350D":
|
||||||
|
case "4368D":
|
||||||
|
viaData = "牟岐線直通";
|
||||||
|
isWanman = true;
|
||||||
|
break;
|
||||||
|
|
||||||
|
//牟岐線発徳島線行き
|
||||||
|
case "451D":
|
||||||
|
case "475D":
|
||||||
|
viaData = "牟岐線直通";
|
||||||
|
break;
|
||||||
|
case "4447D":
|
||||||
|
case "4455D":
|
||||||
|
case "5467D":
|
||||||
|
case "5471D":
|
||||||
|
case "5479D":
|
||||||
|
viaData = "牟岐線直通";
|
||||||
|
isWanman = true;
|
||||||
|
break;
|
||||||
|
//牟岐線発鳴門線行き
|
||||||
|
|
||||||
|
case "952D":
|
||||||
|
viaData = "牟岐線直通";
|
||||||
|
break;
|
||||||
|
case "4954D":
|
||||||
|
case "4978D":
|
||||||
|
viaData = "牟岐線直通";
|
||||||
|
isWanman = true;
|
||||||
|
break;
|
||||||
|
|
||||||
//安芸行と併結列車を個別に表示、それ以外をdefaultで下りなら既定の行き先を、上りなら奈半利行を設定
|
//安芸行と併結列車を個別に表示、それ以外をdefaultで下りなら既定の行き先を、上りなら奈半利行を設定
|
||||||
case "5814D":
|
case "5814D":
|
||||||
case "5816D":
|
case "5816D":
|
||||||
viaData = "ごめん・なはり線[快速]";
|
viaData = "ごめん・なはり線[快速]";
|
||||||
ToData = "奈半利";
|
ToData = "奈半利";
|
||||||
|
break;
|
||||||
case "5812D":
|
case "5812D":
|
||||||
viaData = "ごめん・なはり線[快速]";
|
viaData = "ごめん・なはり線[快速]";
|
||||||
ToData = "安芸";
|
ToData = "安芸";
|
||||||
|
break;
|
||||||
case "5874D":
|
case "5874D":
|
||||||
case "5882D":
|
case "5882D":
|
||||||
case "5878D":
|
|
||||||
viaData = "ごめん・なはり線[各停]";
|
viaData = "ごめん・なはり線[各停]";
|
||||||
ToData = "安芸";
|
ToData = "安芸";
|
||||||
case "246D":
|
break;
|
||||||
case "750D":
|
case "248D":
|
||||||
|
case "250D":
|
||||||
viaData = "ごめん・なはり線[快速]";
|
viaData = "ごめん・なはり線[快速]";
|
||||||
ToData = "(後免にて解結)土佐山田/奈半利";
|
ToData = "(後免にて解結)土佐山田/奈半利";
|
||||||
|
break;
|
||||||
|
case "9395D":
|
||||||
|
viaData = "[臨時]普通";
|
||||||
|
ToData = "三本松";
|
||||||
|
break;
|
||||||
|
case "9174M":
|
||||||
|
viaData = "[臨時]マリンライナー94号";
|
||||||
|
ToData = "岡山";
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
if(new RegExp(/^58[1-3][1,3,5,7,9][DM]$/).test(列番データ)){
|
if(new RegExp(/^58[1-3][1,3,5,7,9][DM]$/).test(列番データ)){
|
||||||
viaData = "ごめん・なはり線[快速]";
|
viaData = "ごめん・なはり線[快速]";
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
else if(new RegExp(/^58[4-9][1,3,5,7,9][DM]$/).test(列番データ)){
|
else if(new RegExp(/^58[4-9][1,3,5,7,9][DM]$/).test(列番データ)){
|
||||||
viaData = "ごめん・なはり線[各停]";
|
viaData = "ごめん・なはり線[各停]";
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
else if(new RegExp(/^58[3-4][0,2,4,6,8][DM]$/).test(列番データ)){
|
else if(new RegExp(/^58[3-4][0,2,4,6,8][DM]$/).test(列番データ)){
|
||||||
viaData = "ごめん・なはり線[快速]";
|
viaData = "ごめん・なはり線[快速]";
|
||||||
ToData = "奈半利";
|
ToData = "奈半利";
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
else if(new RegExp(/^58[5-9][0,2,4,6,8][DM]$/).test(列番データ)){
|
else if(new RegExp(/^58[5-9][0,2,4,6,8][DM]$/).test(列番データ)){
|
||||||
viaData = "ごめん・なはり線[各停]";
|
viaData = "ごめん・なはり線[各停]";
|
||||||
ToData = "奈半利";
|
ToData = "奈半利";
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
getThrew(列番データ);
|
||||||
//列番付与
|
//列番付与
|
||||||
const returnText1 = (isWanman ? "ワンマン " : "") + trainName + viaData;
|
const returnText1 = (isWanman ? "ワンマン " : "") + trainName + viaData;
|
||||||
const returnText2 = (ToData ? ToData+"行 " : ToData)+ TrainNumber;
|
const returnText2 = (ToData ? ToData+"行 " : ToData)+ TrainNumber;
|
||||||
|
@ -15,7 +15,11 @@ export const AllTrainDiagramProvider = ({ children }) => {
|
|||||||
() => allTrainDiagram && setKeyList(Object.keys(allTrainDiagram)),
|
() => allTrainDiagram && setKeyList(Object.keys(allTrainDiagram)),
|
||||||
[allTrainDiagram]
|
[allTrainDiagram]
|
||||||
);
|
);
|
||||||
const customData = {};
|
const customData = {
|
||||||
|
"9395D":"WEST LIVE TOUR 2025臨,提,https://www.jr-shikoku.co.jp/03_news/pdf/20250228_20250323_west-live-tour-2025.pdf#高松,発,22:10#昭和町,発,22:12#栗林公園北口,発,22:15#栗林,発,22:18#木太町,発,22:22#屋島,発,22:26#古高松南,発,22:38#八栗口,発,22:41#讃岐牟礼,発,22:44#志度,発,22:48#オレンジタウン,発,22:52#造田,発,22:56#神前,発,22:59#讃岐津田,発,23:05#鶴羽,発,23:09#丹生,発,23:14#三本松,着,23:18#",
|
||||||
|
"9174M":"WEST LIVE TOUR 2025臨,提,https://www.jr-shikoku.co.jp/03_news/pdf/20250228_20250323_west-live-tour-2025.pdf#高松,発,22:00#坂出,発,22:16#児島,発,22:39#茶屋町,発,22:55#早島,発,22:59#妹尾,発,23:03#岡山,着,23:12#",
|
||||||
|
|
||||||
|
};
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
fetch(
|
fetch(
|
||||||
"https://n8n.haruk.in/webhook/CrowdTh%E2%82%AC71m3Ra7!ngLead%E2%82%ACr$"
|
"https://n8n.haruk.in/webhook/CrowdTh%E2%82%AC71m3Ra7!ngLead%E2%82%ACr$"
|
||||||
|
@ -72,206 +72,212 @@ export const BusAndTrainDataProvider = ({ children }) => {
|
|||||||
if (trainPairList[trainNum]) {
|
if (trainPairList[trainNum]) {
|
||||||
returnArray.push(Object.keys(trainPairList[trainNum])[0]);
|
returnArray.push(Object.keys(trainPairList[trainNum])[0]);
|
||||||
}
|
}
|
||||||
// switch (trainNum) {
|
switch (trainNum) {
|
||||||
// case "143M":
|
case "143M":
|
||||||
// returnArray.push("147M");
|
returnArray.push("139M");
|
||||||
// break;
|
break;
|
||||||
// case "147M":
|
case "139M":
|
||||||
// returnArray.push("143M");
|
returnArray.push("143M");
|
||||||
// break;
|
break;
|
||||||
// // 徳島界隈接続一覧
|
// 土讃線琴平界隈
|
||||||
// //下り
|
case "1263M":
|
||||||
// case "4430D":
|
returnArray.push("4263M");
|
||||||
// returnArray.push("525D");
|
break;
|
||||||
// break;
|
case "4263M":
|
||||||
// case "951D":
|
returnArray.push("1263M");
|
||||||
// returnArray.push("527D");
|
break;
|
||||||
// break;
|
// 徳島界隈接続一覧
|
||||||
// case "434D":
|
//下り
|
||||||
// returnArray.push("529D");
|
case "4430D":
|
||||||
// break;
|
returnArray.push("525D");
|
||||||
// case "5444D":
|
break;
|
||||||
// returnArray.push("4537D");
|
case "951D":
|
||||||
// break;
|
returnArray.push("527D");
|
||||||
// case "4452D":
|
break;
|
||||||
// returnArray.push("4545D");
|
case "434D":
|
||||||
// break;
|
returnArray.push("529D");
|
||||||
// case "4458D":
|
break;
|
||||||
// returnArray.push("4551D");
|
case "4452D":
|
||||||
// break;
|
returnArray.push("4545D");
|
||||||
// case "4460D":
|
break;
|
||||||
// returnArray.push("553D");
|
case "4456D":
|
||||||
// break;
|
returnArray.push("4549D");
|
||||||
// case "4464D":
|
break;
|
||||||
// returnArray.push("559D");
|
case "4466D":
|
||||||
// break;
|
returnArray.push("561D");
|
||||||
// case "4466D":
|
break;
|
||||||
// returnArray.push("561D");
|
case "468D":
|
||||||
// break;
|
returnArray.push("563D");
|
||||||
// case "468D":
|
break;
|
||||||
// returnArray.push("563D");
|
case "4470D":
|
||||||
// break;
|
returnArray.push("565D");
|
||||||
// case "4472D":
|
break;
|
||||||
// returnArray.push("567D");
|
case "4472D":
|
||||||
// break;
|
returnArray.push("567D");
|
||||||
// case "474D":
|
break;
|
||||||
// returnArray.push("569D");
|
case "474D":
|
||||||
// break;
|
returnArray.push("569D");
|
||||||
// case "351D":
|
break;
|
||||||
// returnArray.push("573D");
|
case "476D":
|
||||||
// break;
|
returnArray.push("573D");
|
||||||
// case "478D":
|
break;
|
||||||
// returnArray.push("575D");
|
case "478D":
|
||||||
// break;
|
returnArray.push("575D");
|
||||||
// case "480D":
|
break;
|
||||||
// returnArray.push("577D");
|
case "480D":
|
||||||
// break;
|
returnArray.push("579D");
|
||||||
// case "484D":
|
break;
|
||||||
// returnArray.push("581D");
|
case "484D":
|
||||||
// break;
|
returnArray.push("583D");
|
||||||
// // reverse.
|
break;
|
||||||
// case "525D":
|
// reverse.
|
||||||
// returnArray.push("4430D");
|
case "525D":
|
||||||
// break;
|
returnArray.push("4430D");
|
||||||
// case "527D":
|
break;
|
||||||
// returnArray.push("951D");
|
case "527D":
|
||||||
// break;
|
returnArray.push("951D");
|
||||||
// case "529D":
|
break;
|
||||||
// returnArray.push("434D");
|
case "529D":
|
||||||
// break;
|
returnArray.push("434D");
|
||||||
// case "4537D":
|
break;
|
||||||
// returnArray.push("5444D");
|
case "4545D":
|
||||||
// break;
|
returnArray.push("4452D");
|
||||||
// case "4545D":
|
break;
|
||||||
// returnArray.push("4452D");
|
case "4549D":
|
||||||
// break;
|
returnArray.push("4456D");
|
||||||
// case "4551D":
|
break;
|
||||||
// returnArray.push("4458D");
|
case "561D":
|
||||||
// break;
|
returnArray.push("4466D");
|
||||||
// case "553D":
|
break;
|
||||||
// returnArray.push("4460D");
|
case "563D":
|
||||||
// break;
|
returnArray.push("468D");
|
||||||
// case "559D":
|
break;
|
||||||
// returnArray.push("4464D");
|
case "565D":
|
||||||
// break;
|
returnArray.push("4470D");
|
||||||
// case "561D":
|
break;
|
||||||
// returnArray.push("4466D");
|
case "567D":
|
||||||
// break;
|
returnArray.push("4472D");
|
||||||
// case "563D":
|
break;
|
||||||
// returnArray.push("468D");
|
case "569D":
|
||||||
// break;
|
returnArray.push("474D");
|
||||||
// case "567D":
|
break;
|
||||||
// returnArray.push("4472D");
|
case "573D":
|
||||||
// break;
|
returnArray.push("476D");
|
||||||
// case "569D":
|
break;
|
||||||
// returnArray.push("474D");
|
case "575D":
|
||||||
// break;
|
returnArray.push("478D");
|
||||||
// case "573D":
|
break;
|
||||||
// returnArray.push("351D");
|
case "579D":
|
||||||
// break;
|
returnArray.push("480D");
|
||||||
// case "575D":
|
break;
|
||||||
// returnArray.push("478D");
|
case "583D":
|
||||||
// break;
|
returnArray.push("484D");
|
||||||
// case "577D":
|
break;
|
||||||
// returnArray.push("480D");
|
//上り
|
||||||
// break;
|
case "4520D":
|
||||||
// case "581D":
|
returnArray.push("4314D");
|
||||||
// returnArray.push("484D");
|
break;
|
||||||
// break;
|
case "522D":
|
||||||
// //上りむろと
|
returnArray.push("952D");
|
||||||
// case "530D":
|
break;
|
||||||
// returnArray.push("8052D");
|
case "526D":
|
||||||
// break;
|
returnArray.push("4954D");
|
||||||
// case "8052D":
|
break;
|
||||||
// returnArray.push("530D");
|
case "534D":
|
||||||
// break;
|
returnArray.push("4326D");
|
||||||
// //上り
|
break;
|
||||||
// case "522D":
|
case "536D":
|
||||||
// returnArray.push("952D");
|
returnArray.push("4447D");
|
||||||
// break;
|
break;
|
||||||
// case "526D":
|
case "538D":
|
||||||
// returnArray.push("4954D");
|
returnArray.push("4334D");
|
||||||
// break;
|
break;
|
||||||
// case "536D":
|
case "540D":
|
||||||
// returnArray.push("4330D");
|
returnArray.push("451D");
|
||||||
// break;
|
break;
|
||||||
// case "538D":
|
case "4544D":
|
||||||
// returnArray.push("4447D");
|
returnArray.push("4455D");
|
||||||
// break;
|
break;
|
||||||
// case "540D":
|
case "4550D":
|
||||||
// returnArray.push("4336D");
|
returnArray.push("4342D");
|
||||||
// break;
|
break;
|
||||||
// case "542D":
|
case "4554D":
|
||||||
// returnArray.push("451D");
|
returnArray.push("4350D");
|
||||||
// break;
|
break;
|
||||||
// case "4546D":
|
case "4556D":
|
||||||
// returnArray.push("4455D");
|
returnArray.push("5467D");
|
||||||
// break;
|
break;
|
||||||
// case "4552D":
|
case "560D":
|
||||||
// returnArray.push("4346D");
|
returnArray.push("5471D");
|
||||||
// break;
|
break;
|
||||||
// case "4556D":
|
case "562D":
|
||||||
// returnArray.push("4352D");
|
returnArray.push("358D");
|
||||||
// break;
|
break;
|
||||||
// case "4558D":
|
case "564D":
|
||||||
// returnArray.push("5467D");
|
returnArray.push("475D");
|
||||||
// break;
|
break;
|
||||||
// case "562D":
|
case "568D":
|
||||||
// returnArray.push("360D");
|
returnArray.push("5479D");
|
||||||
// break;
|
break;
|
||||||
// case "564D":
|
case "4572D":
|
||||||
// returnArray.push("362D");
|
returnArray.push("4978D");
|
||||||
// break;
|
break;
|
||||||
// case "566D":
|
case "576D":
|
||||||
// returnArray.push("475D");
|
returnArray.push("4368D");
|
||||||
// break;
|
break;
|
||||||
// case "570D":
|
// reverse.
|
||||||
// returnArray.push("5479D");
|
case "4314D":
|
||||||
// break;
|
returnArray.push("4520D");
|
||||||
// // reverse.
|
break;
|
||||||
// case "952D":
|
case "952D":
|
||||||
// returnArray.push("522D");
|
returnArray.push("522D");
|
||||||
// break;
|
break;
|
||||||
// case "4954D":
|
case "4954D":
|
||||||
// returnArray.push("526D");
|
returnArray.push("526D");
|
||||||
// break;
|
break;
|
||||||
// case "4330D":
|
case "4326D":
|
||||||
// returnArray.push("536D");
|
returnArray.push("534D");
|
||||||
// break;
|
break;
|
||||||
// case "4447D":
|
case "4447D":
|
||||||
// returnArray.push("538D");
|
returnArray.push("536D");
|
||||||
// break;
|
break;
|
||||||
// case "4336D":
|
case "4334D":
|
||||||
// returnArray.push("540D");
|
returnArray.push("538D");
|
||||||
// break;
|
break;
|
||||||
// case "451D":
|
case "451D":
|
||||||
// returnArray.push("542D");
|
returnArray.push("540D");
|
||||||
// break;
|
break;
|
||||||
// case "4455D":
|
case "4455D":
|
||||||
// returnArray.push("4546D");
|
returnArray.push("4544D");
|
||||||
// break;
|
break;
|
||||||
// case "4346D":
|
case "4342D":
|
||||||
// returnArray.push("4552D");
|
returnArray.push("4550D");
|
||||||
// break;
|
break;
|
||||||
// case "4352D":
|
case "4350D":
|
||||||
// returnArray.push("4556D");
|
returnArray.push("4554D");
|
||||||
// break;
|
break;
|
||||||
// case "5467D":
|
case "5467D":
|
||||||
// returnArray.push("4558D");
|
returnArray.push("4556D");
|
||||||
// break;
|
break;
|
||||||
// case "360D":
|
case "5471D":
|
||||||
// returnArray.push("562D");
|
returnArray.push("560D");
|
||||||
// break;
|
break;
|
||||||
// case "362D":
|
case "358D":
|
||||||
// returnArray.push("564D");
|
returnArray.push("562D");
|
||||||
// break;
|
break;
|
||||||
// case "475D":
|
case "475D":
|
||||||
// returnArray.push("566D");
|
returnArray.push("564D");
|
||||||
// break;
|
break;
|
||||||
// case "5479D":
|
case "5479D":
|
||||||
// returnArray.push("570D");
|
returnArray.push("568D");
|
||||||
// break;
|
break;
|
||||||
// }
|
case "4978D":
|
||||||
|
returnArray.push("4572D");
|
||||||
|
break;
|
||||||
|
case "4368D":
|
||||||
|
returnArray.push("576D");
|
||||||
|
break;
|
||||||
|
}
|
||||||
if(new RegExp(/^4[1-9]\d\d[DM]$/).test(trainNum)){
|
if(new RegExp(/^4[1-9]\d\d[DM]$/).test(trainNum)){
|
||||||
if (trainList["5" + trainNum.substring(1)])
|
if (trainList["5" + trainNum.substring(1)])
|
||||||
returnArray.push("5" + trainNum.substring(1));
|
returnArray.push("5" + trainNum.substring(1));
|
||||||
|
Loading…
Reference in New Issue
Block a user