|
|
|
@ -1,8 +1,8 @@
|
|
|
|
|
import React from "react";
|
|
|
|
|
import { View, Text } from "react-native";
|
|
|
|
|
import { View, Text, StyleSheet, TouchableHighlight, Image } from "react-native";
|
|
|
|
|
import { useSafeAreaInsets } from "react-native-safe-area-context";
|
|
|
|
|
import { TopBar } from "../components/TopBar";
|
|
|
|
|
import { getCurrentWeather } from "../data/stub";
|
|
|
|
|
import { FAVORITE_CITY_DATA, getCurrentWeather, WEATHER_DATA } from "../data/stub";
|
|
|
|
|
|
|
|
|
|
export default function CityDetails({route}){
|
|
|
|
|
const insets = useSafeAreaInsets();
|
|
|
|
@ -11,10 +11,87 @@ export default function CityDetails({route}){
|
|
|
|
|
const city = route.params.city;
|
|
|
|
|
const weather = getCurrentWeather(city.name)
|
|
|
|
|
|
|
|
|
|
var meteo = getCurrentWeather(city.name);
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<View style={{alignItems: "center"}}>
|
|
|
|
|
<View style={{alignItems: "center", backgroundColor: "darksalmon"}}>
|
|
|
|
|
<TopBar/>
|
|
|
|
|
<Text>{city.name}</Text>
|
|
|
|
|
<Text style={styles.name}>{city.name}</Text>
|
|
|
|
|
<View style={styles.place}>
|
|
|
|
|
<Text style={styles.petitText}>{city.longitude} - {city.latitude}</Text>
|
|
|
|
|
</View>
|
|
|
|
|
<TouchableHighlight>
|
|
|
|
|
<Image style={styles.image} source={ meteo?.weatherType=="Nuageux" ? require('../assets/Nuageux.png') : require('../assets/Soleil.png')}/>
|
|
|
|
|
</TouchableHighlight>
|
|
|
|
|
<Text style={styles.weatherType}>{meteo?.weatherType}</Text>
|
|
|
|
|
<View style={styles.supertruc}>
|
|
|
|
|
<Image style={styles.petitImage} source={require('../assets/temperature.png')}/>
|
|
|
|
|
<View style={styles.supertrucencore}>
|
|
|
|
|
<Text style={styles.temperature}>{meteo?.temperature}°C</Text>
|
|
|
|
|
<Text style={styles.petitTemp}>Ressenti {meteo?.temperatureFeelsLike}°C</Text>
|
|
|
|
|
</View>
|
|
|
|
|
</View>
|
|
|
|
|
<Text style={styles.title}>{meteo?.at}</Text>
|
|
|
|
|
<Text style={styles.title}>{meteo?.humidity}</Text>
|
|
|
|
|
<Text style={styles.title}>{meteo?.pressure}</Text>
|
|
|
|
|
<Text style={styles.title}>{meteo?.visibility}</Text>
|
|
|
|
|
<Text style={styles.title}>{meteo?.visibility}</Text>
|
|
|
|
|
<Text style={styles.title}>{meteo?.weatherDescription}</Text>
|
|
|
|
|
<Text style={styles.title}>{meteo?.windSpeed}</Text>
|
|
|
|
|
</View>
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const styles = StyleSheet.create({
|
|
|
|
|
name: {
|
|
|
|
|
marginTop: 30,
|
|
|
|
|
fontSize: 35,
|
|
|
|
|
fontWeight: "bold"
|
|
|
|
|
},
|
|
|
|
|
place: {
|
|
|
|
|
marginBottom: 20,
|
|
|
|
|
},
|
|
|
|
|
petitText: {
|
|
|
|
|
fontSize: 15
|
|
|
|
|
},
|
|
|
|
|
image: {
|
|
|
|
|
height: 100,
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
title: {
|
|
|
|
|
fontWeight: "bold",
|
|
|
|
|
fontSize: 18
|
|
|
|
|
},
|
|
|
|
|
temperature: {
|
|
|
|
|
marginTop: 10,
|
|
|
|
|
fontSize: 25,
|
|
|
|
|
fontWeight: "600"
|
|
|
|
|
},
|
|
|
|
|
petitTemp: {
|
|
|
|
|
fontSize: 16,
|
|
|
|
|
marginBottom: 35
|
|
|
|
|
},
|
|
|
|
|
weatherType: {
|
|
|
|
|
fontSize: 17,
|
|
|
|
|
marginBottom: 20
|
|
|
|
|
},
|
|
|
|
|
button: {
|
|
|
|
|
height: 30,
|
|
|
|
|
width: 30,
|
|
|
|
|
marginTop: 13,
|
|
|
|
|
alignSelf: "flex-end",
|
|
|
|
|
margin: 5
|
|
|
|
|
},
|
|
|
|
|
supertruc: {
|
|
|
|
|
flexDirection: "row"
|
|
|
|
|
},
|
|
|
|
|
supertrucencore: {
|
|
|
|
|
flexDirection: "column"
|
|
|
|
|
},
|
|
|
|
|
petitImage: {
|
|
|
|
|
height: 40,
|
|
|
|
|
width: 40,
|
|
|
|
|
marginRight: 7,
|
|
|
|
|
marginTop: 15
|
|
|
|
|
}
|
|
|
|
|
});
|