Merge commit 'bb89149876e720f8d3152e8d2e2116a942436e4a' into develop

This commit is contained in:
harukin-DeskMini 2023-02-01 17:17:25 +09:00
commit 32fb402126
4 changed files with 85 additions and 23 deletions

6
App.js
View File

@ -19,6 +19,12 @@ import News from "./components/news.js";
import Setting from "./components/settings.js";
import TrainMenu from "./components/trainMenu.js";
import FavoriteList from "./components/FavoriteList.js";
import { LogBox } from "react-native";
LogBox.ignoreLogs([
"ViewPropTypes will be removed",
"ColorPropType will be removed",
]);
const Stack = createStackNavigator();
const Tab = createBottomTabNavigator();
if (Platform.OS === "android") {

View File

@ -5,6 +5,10 @@ import ActionSheet from "react-native-actions-sheet";
import Sign from "../../components/駅名表/Sign";
import { TicketBox } from "../atom/TicketBox";
import {
widthPercentageToDP as wp,
heightPercentageToDP as hp,
} from "react-native-responsive-screen";
export const StationDeteilView = (props) => {
const {
@ -44,13 +48,20 @@ export const StationDeteilView = (props) => {
</View>
<View>
{currentStation && (
<Sign
currentStation={currentStation}
originalStationList={originalStationList}
favoriteStation={favoriteStation}
setFavoriteStation={setFavoriteStation}
oP={() => Linking.openURL(currentStation[0].StationTimeTable)}
/>
<View
style={{
margin: 10,
marginHorizontal: wp("10%"),
}}
>
<Sign
currentStation={currentStation}
originalStationList={originalStationList}
favoriteStation={favoriteStation}
setFavoriteStation={setFavoriteStation}
oP={() => Linking.openURL(currentStation[0].StationTimeTable)}
/>
</View>
)}
{currentStation && (
<View style={{ flexDirection: "row" }}>

View File

@ -40,7 +40,6 @@ export default function Sign(props) {
return false;
}
});
console.log(isFavorite.length);
setTestButtonStatus(isFavorite.length != 0);
}, [favoriteStation, currentStation]);
@ -260,8 +259,6 @@ const styleSheet = {
height: (wp("80%") / 20) * 9,
borderColor: "#2E94BB",
borderWidth: 1,
margin: 10,
marginHorizontal: wp("10%"),
backgroundColor: "white",
},
下帯: {

74
menu.js
View File

@ -1,4 +1,5 @@
import React, { useRef, useState, useEffect } from "react";
import Carousel from "react-native-snap-carousel";
import {
Platform,
View,
@ -73,6 +74,14 @@ export default function Menu(props) {
useEffect(() => {
getStationList().then(setOriginalStationList);
}, []);
const [locationAndFavorite, setLocationAndFavorite] = useState([]);
useEffect(() => {
if (!favoriteStation) return () => {};
const data = favoriteStation.filter((d) =>
JSON.stringify(d) === JSON.stringify(currentStation) ? false : true
);
setLocationAndFavorite(data);
}, [currentStation, favoriteStation]);
const [stationName, setStationName] = useState(undefined);
const [currentStation, setCurrentStation] = useState(undefined);
@ -119,6 +128,10 @@ export default function Menu(props) {
const [delayData, setDelayData] = useState(undefined);
const [getTime, setGetTime] = useState(new Date());
const [loadingDelayData, setLoadingDelayData] = useState(true);
const carouselRef = useRef();
const scrollRef = useRef();
const [isScroll, setIsScroll] = useState(true);
const [selectedCurrentStation, setSelectedCurrentStation] = useState(0);
useEffect(() => {
fetch(
@ -141,7 +154,7 @@ export default function Menu(props) {
>
<StatusbarDetect />
<TitleBar />
<ScrollView>
<ScrollView ref={scrollRef} scrollEnabled={isScroll}>
<TopMenuButton />
<TextBox
backgroundColor="#0099CC"
@ -159,17 +172,47 @@ export default function Menu(props) {
列車の運行計画混雑状況感染症対策への取り組み
</Text>
</TextBox>
{currentStation && (
<>
<Sign
currentStation={currentStation}
originalStationList={originalStationList}
favoriteStation={favoriteStation}
setFavoriteStation={setFavoriteStation}
oP={StationBoardAcSR.current?.setModalVisible}
/>
<LED_vision station={currentStation[0]} navigate={navigate} />
</>
<Carousel
ref={carouselRef}
layout={"default"}
data={
originalStationList &&
(currentStation
? [currentStation, ...locationAndFavorite]
: locationAndFavorite)
}
sliderWidth={wp("100%")}
itemWidth={wp("80%")}
enableMomentum
callbackOffsetMargin={1000}
activeAnimationOptions={0.3}
onSnapToItem={(d) => {
setSelectedCurrentStation(d);
}}
renderItem={({ item, index }) => {
return (
<View style={{ marginVertical: 10 }} key={item[0].StationNumber}>
<Sign
currentStation={item}
originalStationList={originalStationList}
favoriteStation={favoriteStation}
setFavoriteStation={setFavoriteStation}
oP={StationBoardAcSR.current?.setModalVisible}
/>
</View>
);
}}
/>
{(currentStation || originalStationList) && (
<LED_vision
station={
originalStationList &&
(currentStation
? [currentStation, ...locationAndFavorite]
: locationAndFavorite)[selectedCurrentStation][0]
}
navigate={navigate}
/>
)}
<JRSTraInfoBox
JRSTraInfoEXAcSR={JRSTraInfoEXAcSR}
@ -460,7 +503,12 @@ export default function Menu(props) {
</ScrollView>
<StationDeteilView
StationBoardAcSR={StationBoardAcSR}
currentStation={currentStation}
currentStation={
originalStationList &&
(currentStation
? [currentStation, ...locationAndFavorite]
: locationAndFavorite)[selectedCurrentStation]
}
originalStationList={originalStationList}
favoriteStation={favoriteStation}
setFavoriteStation={setFavoriteStation}