mirror of
https://github.com/darkmoonight/Rain.git
synced 2025-06-28 20:19:58 +00:00
added dewpoint_2m,precipitation_probability,shortwave_radiation
This commit is contained in:
parent
0306dbbc6c
commit
53a47b3f90
15 changed files with 1691 additions and 275 deletions
BIN
assets/images/dew.png
Normal file
BIN
assets/images/dew.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 33 KiB |
BIN
assets/images/precipitation_probability.png
Normal file
BIN
assets/images/precipitation_probability.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 25 KiB |
BIN
assets/images/shortwave_radiation.png
Normal file
BIN
assets/images/shortwave_radiation.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 24 KiB |
|
@ -13,7 +13,7 @@ class WeatherAPI {
|
|||
|
||||
Future<MainWeatherCache> getWeatherData(double? lat, double? lon) async {
|
||||
String url =
|
||||
'latitude=$lat&longitude=$lon&hourly=temperature_2m,relativehumidity_2m,apparent_temperature,precipitation,rain,weathercode,surface_pressure,visibility,evapotranspiration,windspeed_10m,winddirection_10m,windgusts_10m,cloudcover,uv_index&daily=weathercode,temperature_2m_max,temperature_2m_min,apparent_temperature_max,apparent_temperature_min,sunrise,sunset,precipitation_sum,precipitation_probability_max,windspeed_10m_max,windgusts_10m_max,uv_index_max,rain_sum,winddirection_10m_dominant&forecast_days=12&timezone=auto';
|
||||
'latitude=$lat&longitude=$lon&hourly=temperature_2m,relativehumidity_2m,apparent_temperature,precipitation,rain,weathercode,surface_pressure,visibility,evapotranspiration,windspeed_10m,winddirection_10m,windgusts_10m,cloudcover,uv_index,dewpoint_2m,precipitation_probability,shortwave_radiation&daily=weathercode,temperature_2m_max,temperature_2m_min,apparent_temperature_max,apparent_temperature_min,sunrise,sunset,precipitation_sum,precipitation_probability_max,windspeed_10m_max,windgusts_10m_max,uv_index_max,rain_sum,winddirection_10m_dominant&forecast_days=12&timezone=auto';
|
||||
String urlWeather;
|
||||
settings.measurements == 'imperial' && settings.degrees == 'fahrenheit'
|
||||
? urlWeather =
|
||||
|
@ -42,6 +42,9 @@ class WeatherAPI {
|
|||
windgusts10M: weatherData.hourly.windgusts10M,
|
||||
cloudcover: weatherData.hourly.cloudcover,
|
||||
uvIndex: weatherData.hourly.uvIndex,
|
||||
dewpoint2M: weatherData.hourly.dewpoint2M,
|
||||
precipitationProbability: weatherData.hourly.precipitationProbability,
|
||||
shortwaveRadiation: weatherData.hourly.shortwaveRadiation,
|
||||
timeDaily: weatherData.daily.time,
|
||||
weathercodeDaily: weatherData.daily.weathercode,
|
||||
temperature2MMax: weatherData.daily.temperature2MMax,
|
||||
|
@ -72,7 +75,7 @@ class WeatherAPI {
|
|||
Future<WeatherCard> getWeatherCard(double? lat, double? lon, String city,
|
||||
String district, String timezone) async {
|
||||
String url =
|
||||
'latitude=$lat&longitude=$lon&hourly=temperature_2m,relativehumidity_2m,apparent_temperature,precipitation,rain,weathercode,surface_pressure,visibility,evapotranspiration,windspeed_10m,winddirection_10m,windgusts_10m,cloudcover,uv_index&daily=weathercode,temperature_2m_max,temperature_2m_min,apparent_temperature_max,apparent_temperature_min,sunrise,sunset,precipitation_sum,precipitation_probability_max,windspeed_10m_max,windgusts_10m_max,uv_index_max,rain_sum,winddirection_10m_dominant&forecast_days=12&timezone=auto';
|
||||
'latitude=$lat&longitude=$lon&hourly=temperature_2m,relativehumidity_2m,apparent_temperature,precipitation,rain,weathercode,surface_pressure,visibility,evapotranspiration,windspeed_10m,winddirection_10m,windgusts_10m,cloudcover,uv_index,dewpoint_2m,precipitation_probability,shortwave_radiation&daily=weathercode,temperature_2m_max,temperature_2m_min,apparent_temperature_max,apparent_temperature_min,sunrise,sunset,precipitation_sum,precipitation_probability_max,windspeed_10m_max,windgusts_10m_max,uv_index_max,rain_sum,winddirection_10m_dominant&forecast_days=12&timezone=auto';
|
||||
String urlWeather;
|
||||
settings.measurements == 'imperial' && settings.degrees == 'fahrenheit'
|
||||
? urlWeather =
|
||||
|
@ -101,6 +104,9 @@ class WeatherAPI {
|
|||
windgusts10M: weatherData.hourly.windgusts10M,
|
||||
cloudcover: weatherData.hourly.cloudcover,
|
||||
uvIndex: weatherData.hourly.uvIndex,
|
||||
dewpoint2M: weatherData.hourly.dewpoint2M,
|
||||
precipitationProbability: weatherData.hourly.precipitationProbability,
|
||||
shortwaveRadiation: weatherData.hourly.shortwaveRadiation,
|
||||
timeDaily: weatherData.daily.time,
|
||||
weathercodeDaily: weatherData.daily.weathercode,
|
||||
temperature2MMax: weatherData.daily.temperature2MMax,
|
||||
|
|
|
@ -32,6 +32,9 @@ class Hourly {
|
|||
List<double?>? windgusts10M;
|
||||
List<int?>? cloudcover;
|
||||
List<double?>? uvIndex;
|
||||
List<double?>? dewpoint2M;
|
||||
List<int?>? precipitationProbability;
|
||||
List<double?>? shortwaveRadiation;
|
||||
|
||||
Hourly({
|
||||
this.time,
|
||||
|
@ -49,6 +52,9 @@ class Hourly {
|
|||
this.windgusts10M,
|
||||
this.cloudcover,
|
||||
this.uvIndex,
|
||||
this.dewpoint2M,
|
||||
this.precipitationProbability,
|
||||
this.shortwaveRadiation,
|
||||
});
|
||||
|
||||
factory Hourly.fromJson(Map<String, dynamic> json) => Hourly(
|
||||
|
@ -72,6 +78,11 @@ class Hourly {
|
|||
windgusts10M: List<double?>.from(json['windgusts_10m'].map((x) => x)),
|
||||
cloudcover: List<int?>.from(json['cloudcover'].map((x) => x)),
|
||||
uvIndex: List<double?>.from(json['uv_index'].map((x) => x)),
|
||||
dewpoint2M: List<double?>.from(json['dewpoint_2m'].map((x) => x)),
|
||||
precipitationProbability:
|
||||
List<int?>.from(json['precipitation_probability'].map((x) => x)),
|
||||
shortwaveRadiation:
|
||||
List<double?>.from(json['shortwave_radiation'].map((x) => x)),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -39,6 +39,9 @@ class MainWeatherCache {
|
|||
List<double?>? windgusts10M;
|
||||
List<int?>? cloudcover;
|
||||
List<double?>? uvIndex;
|
||||
List<double?>? dewpoint2M;
|
||||
List<int?>? precipitationProbability;
|
||||
List<double?>? shortwaveRadiation;
|
||||
List<DateTime>? timeDaily;
|
||||
List<int?>? weathercodeDaily;
|
||||
List<double?>? temperature2MMax;
|
||||
|
@ -73,6 +76,9 @@ class MainWeatherCache {
|
|||
this.windgusts10M,
|
||||
this.cloudcover,
|
||||
this.uvIndex,
|
||||
this.dewpoint2M,
|
||||
this.precipitationProbability,
|
||||
this.shortwaveRadiation,
|
||||
this.timeDaily,
|
||||
this.weathercodeDaily,
|
||||
this.temperature2MMax,
|
||||
|
@ -109,6 +115,9 @@ class MainWeatherCache {
|
|||
'windgusts10M': windgusts10M,
|
||||
'cloudcover': cloudcover,
|
||||
'uvIndex': uvIndex,
|
||||
'dewpoint2M': dewpoint2M,
|
||||
'precipitationProbability': precipitationProbability,
|
||||
'shortwaveRadiation': shortwaveRadiation,
|
||||
'timeDaily': timeDaily,
|
||||
'weathercodeDaily': weathercodeDaily,
|
||||
'temperature2MMax': temperature2MMax,
|
||||
|
@ -163,6 +172,9 @@ class WeatherCard {
|
|||
List<double?>? windgusts10M;
|
||||
List<int?>? cloudcover;
|
||||
List<double?>? uvIndex;
|
||||
List<double?>? dewpoint2M;
|
||||
List<int?>? precipitationProbability;
|
||||
List<double?>? shortwaveRadiation;
|
||||
List<DateTime>? timeDaily;
|
||||
List<int?>? weathercodeDaily;
|
||||
List<double?>? temperature2MMax;
|
||||
|
@ -202,6 +214,9 @@ class WeatherCard {
|
|||
this.windgusts10M,
|
||||
this.cloudcover,
|
||||
this.uvIndex,
|
||||
this.dewpoint2M,
|
||||
this.precipitationProbability,
|
||||
this.shortwaveRadiation,
|
||||
this.timeDaily,
|
||||
this.weathercodeDaily,
|
||||
this.temperature2MMax,
|
||||
|
@ -243,6 +258,9 @@ class WeatherCard {
|
|||
'windgusts10M': windgusts10M,
|
||||
'cloudcover': cloudcover,
|
||||
'uvIndex': uvIndex,
|
||||
'dewpoint2M': dewpoint2M,
|
||||
'precipitationProbability': precipitationProbability,
|
||||
'shortwaveRadiation': shortwaveRadiation,
|
||||
'timeDaily': timeDaily,
|
||||
'weathercodeDaily': weathercodeDaily,
|
||||
'temperature2MMax': temperature2MMax,
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -164,6 +164,10 @@ class _InfoWeatherCardState extends State<InfoWeatherCard> {
|
|||
cloudcover: weatherCard.cloudcover?[timeNow],
|
||||
windgusts: weatherCard.windgusts10M?[timeNow],
|
||||
uvIndex: weatherCard.uvIndex?[timeNow],
|
||||
dewpoint2M: weatherCard.dewpoint2M?[timeNow],
|
||||
precipitationProbability:
|
||||
weatherCard.precipitationProbability?[timeNow],
|
||||
shortwaveRadiation: weatherCard.shortwaveRadiation?[timeNow],
|
||||
),
|
||||
WeatherDaily(
|
||||
weatherData: weatherCard.toJson(),
|
||||
|
|
|
@ -151,6 +151,11 @@ class _WeatherPageState extends State<WeatherPage> {
|
|||
cloudcover: mainWeather.cloudcover![hourOfDay],
|
||||
windgusts: mainWeather.windgusts10M![hourOfDay],
|
||||
uvIndex: mainWeather.uvIndex![hourOfDay],
|
||||
dewpoint2M: mainWeather.dewpoint2M![hourOfDay],
|
||||
precipitationProbability:
|
||||
mainWeather.precipitationProbability![hourOfDay],
|
||||
shortwaveRadiation:
|
||||
mainWeather.shortwaveRadiation![hourOfDay],
|
||||
),
|
||||
WeatherDaily(
|
||||
weatherData: mainWeather.toJson(),
|
||||
|
|
|
@ -67,7 +67,8 @@ class _InfoDailyCardState extends State<InfoDailyCard> {
|
|||
highlightColor: Colors.transparent,
|
||||
),
|
||||
title: Text(
|
||||
DateFormat.MMMMEEEEd(locale.languageCode).format(timeDaily[pageIndex]),
|
||||
DateFormat.MMMMEEEEd(locale.languageCode)
|
||||
.format(timeDaily[pageIndex]),
|
||||
style: textTheme.titleMedium?.copyWith(
|
||||
fontWeight: FontWeight.w600,
|
||||
fontSize: 18,
|
||||
|
@ -85,13 +86,17 @@ class _InfoDailyCardState extends State<InfoDailyCard> {
|
|||
itemCount: timeDaily.length,
|
||||
itemBuilder: (context, index) {
|
||||
final indexedWeatherCodeDaily = weatherCodeDaily[index];
|
||||
final apparentTemperatureMin = weatherData['apparentTemperatureMin'][index];
|
||||
final apparentTemperatureMax = weatherData['apparentTemperatureMax'][index];
|
||||
final apparentTemperatureMin =
|
||||
weatherData['apparentTemperatureMin'][index];
|
||||
final apparentTemperatureMax =
|
||||
weatherData['apparentTemperatureMax'][index];
|
||||
final uvIndexMax = weatherData['uvIndexMax'][index];
|
||||
final windDirection10MDominant = weatherData['winddirection10MDominant'][index];
|
||||
final windDirection10MDominant =
|
||||
weatherData['winddirection10MDominant'][index];
|
||||
final windSpeed10MMax = weatherData['windspeed10MMax'][index];
|
||||
final windGusts10MMax = weatherData['windgusts10MMax'][index];
|
||||
final precipitationProbabilityMax = weatherData['precipitationProbabilityMax'][index];
|
||||
final precipitationProbabilityMax =
|
||||
weatherData['precipitationProbabilityMax'][index];
|
||||
final rainSum = weatherData['rainSum'][index];
|
||||
final precipitationSum = weatherData['precipitationSum'][index];
|
||||
|
||||
|
@ -131,7 +136,8 @@ class _InfoDailyCardState extends State<InfoDailyCard> {
|
|||
),
|
||||
const SizedBox(height: 5),
|
||||
Text(
|
||||
DateFormat.MMMMEEEEd(locale.languageCode).format(timeDaily[index]),
|
||||
DateFormat.MMMMEEEEd(locale.languageCode)
|
||||
.format(timeDaily[index]),
|
||||
style: textTheme.labelLarge?.copyWith(
|
||||
color: Colors.grey,
|
||||
fontSize: 16,
|
||||
|
@ -158,14 +164,16 @@ class _InfoDailyCardState extends State<InfoDailyCard> {
|
|||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/cold.png',
|
||||
value: statusData.getDegree(apparentTemperatureMin.round()),
|
||||
value: statusData.getDegree(
|
||||
apparentTemperatureMin.round()),
|
||||
desc: 'apparentTemperatureMin'.tr,
|
||||
),
|
||||
apparentTemperatureMax == null
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/hot.png',
|
||||
value: statusData.getDegree(apparentTemperatureMax.round()),
|
||||
value: statusData.getDegree(
|
||||
apparentTemperatureMax.round()),
|
||||
desc: 'apparentTemperatureMax'.tr,
|
||||
),
|
||||
uvIndexMax == null
|
||||
|
@ -174,7 +182,8 @@ class _InfoDailyCardState extends State<InfoDailyCard> {
|
|||
imageName: 'assets/images/uv.png',
|
||||
value: '${uvIndexMax.round()}',
|
||||
desc: 'uvIndex'.tr,
|
||||
message: message.getUvIndex(uvIndexMax.round()),
|
||||
message: message
|
||||
.getUvIndex(uvIndexMax.round()),
|
||||
),
|
||||
windDirection10MDominant == null
|
||||
? const Offstage()
|
||||
|
@ -182,26 +191,31 @@ class _InfoDailyCardState extends State<InfoDailyCard> {
|
|||
imageName: 'assets/images/windsock.png',
|
||||
value: '$windDirection10MDominant°',
|
||||
desc: 'direction'.tr,
|
||||
message: message.getDirection(windDirection10MDominant),
|
||||
message: message.getDirection(
|
||||
windDirection10MDominant),
|
||||
),
|
||||
windSpeed10MMax == null
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/wind.png',
|
||||
value: statusData.getSpeed(windSpeed10MMax.round()),
|
||||
value: statusData
|
||||
.getSpeed(windSpeed10MMax.round()),
|
||||
desc: 'wind'.tr,
|
||||
),
|
||||
windGusts10MMax == null
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/windgusts.png',
|
||||
value: statusData.getSpeed(windGusts10MMax.round()),
|
||||
imageName:
|
||||
'assets/images/windgusts.png',
|
||||
value: statusData
|
||||
.getSpeed(windGusts10MMax.round()),
|
||||
desc: 'windgusts'.tr,
|
||||
),
|
||||
precipitationProbabilityMax == null
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/humidity.png',
|
||||
imageName:
|
||||
'assets/images/precipitation_probability.png',
|
||||
value: '$precipitationProbabilityMax%',
|
||||
desc: 'precipitationProbabilit'.tr,
|
||||
),
|
||||
|
@ -209,14 +223,16 @@ class _InfoDailyCardState extends State<InfoDailyCard> {
|
|||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/water.png',
|
||||
value: statusData.getPrecipitation(rainSum),
|
||||
value: statusData
|
||||
.getPrecipitation(rainSum),
|
||||
desc: 'rain'.tr,
|
||||
),
|
||||
precipitationSum == null
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/rainfall.png',
|
||||
value: statusData.getPrecipitation(precipitationSum),
|
||||
value: statusData
|
||||
.getPrecipitation(precipitationSum),
|
||||
desc: 'precipitation'.tr,
|
||||
),
|
||||
],
|
||||
|
|
|
@ -19,6 +19,9 @@ class DescContainer extends StatefulWidget {
|
|||
required this.cloudcover,
|
||||
required this.windgusts,
|
||||
required this.uvIndex,
|
||||
required this.dewpoint2M,
|
||||
required this.precipitationProbability,
|
||||
required this.shortwaveRadiation,
|
||||
});
|
||||
final int? humidity;
|
||||
final double? wind;
|
||||
|
@ -32,6 +35,9 @@ class DescContainer extends StatefulWidget {
|
|||
final int? cloudcover;
|
||||
final double? windgusts;
|
||||
final double? uvIndex;
|
||||
final double? dewpoint2M;
|
||||
final int? precipitationProbability;
|
||||
final double? shortwaveRadiation;
|
||||
|
||||
@override
|
||||
State<DescContainer> createState() => _DescContainerState();
|
||||
|
@ -51,29 +57,29 @@ class _DescContainerState extends State<DescContainer> {
|
|||
alignment: WrapAlignment.spaceEvenly,
|
||||
spacing: 5,
|
||||
children: [
|
||||
widget.humidity == null
|
||||
? Container()
|
||||
widget.dewpoint2M == null
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/humidity.png',
|
||||
value: '${widget.humidity}%',
|
||||
desc: 'humidity'.tr,
|
||||
imageName: 'assets/images/dew.png',
|
||||
value: statusData.getDegree(widget.dewpoint2M?.round()),
|
||||
desc: 'dewpoint'.tr,
|
||||
),
|
||||
widget.feels == null
|
||||
? Container()
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/temperature.png',
|
||||
value: statusData.getDegree(widget.feels?.round()),
|
||||
desc: 'feels'.tr,
|
||||
),
|
||||
widget.visibility == null
|
||||
? Container()
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/fog.png',
|
||||
value: statusData.getVisibility(widget.visibility),
|
||||
desc: 'visibility'.tr,
|
||||
),
|
||||
widget.direction == null
|
||||
? Container()
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/windsock.png',
|
||||
value: '${widget.direction}°',
|
||||
|
@ -81,21 +87,21 @@ class _DescContainerState extends State<DescContainer> {
|
|||
message: message.getDirection(widget.direction),
|
||||
),
|
||||
widget.wind == null
|
||||
? Container()
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/wind.png',
|
||||
value: statusData.getSpeed(widget.wind?.round()),
|
||||
desc: 'wind'.tr,
|
||||
),
|
||||
widget.windgusts == null
|
||||
? Container()
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/windgusts.png',
|
||||
value: statusData.getSpeed(widget.windgusts?.round()),
|
||||
desc: 'windgusts'.tr,
|
||||
),
|
||||
widget.evaporation == null
|
||||
? Container()
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/evaporation.png',
|
||||
value:
|
||||
|
@ -103,28 +109,42 @@ class _DescContainerState extends State<DescContainer> {
|
|||
desc: 'evaporation'.tr,
|
||||
),
|
||||
widget.precipitation == null
|
||||
? Container()
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/rainfall.png',
|
||||
value: statusData.getPrecipitation(widget.precipitation),
|
||||
desc: 'precipitation'.tr,
|
||||
),
|
||||
widget.rain == null
|
||||
? Container()
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/water.png',
|
||||
value: statusData.getPrecipitation(widget.rain),
|
||||
desc: 'rain'.tr,
|
||||
),
|
||||
widget.precipitationProbability == null
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/precipitation_probability.png',
|
||||
value: '${widget.precipitationProbability}%',
|
||||
desc: 'precipitationProbabilit'.tr,
|
||||
),
|
||||
widget.humidity == null
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/humidity.png',
|
||||
value: '${widget.humidity}%',
|
||||
desc: 'humidity'.tr,
|
||||
),
|
||||
widget.cloudcover == null
|
||||
? Container()
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/cloudy.png',
|
||||
value: '${widget.cloudcover}%',
|
||||
desc: 'cloudcover'.tr,
|
||||
),
|
||||
widget.pressure == null
|
||||
? Container()
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/atmospheric.png',
|
||||
value: '${widget.pressure?.round()} ${'hPa'.tr}',
|
||||
|
@ -132,13 +152,20 @@ class _DescContainerState extends State<DescContainer> {
|
|||
message: message.getPressure(widget.pressure?.round()),
|
||||
),
|
||||
widget.uvIndex == null
|
||||
? Container()
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/uv.png',
|
||||
value: '${widget.uvIndex?.round()}',
|
||||
desc: 'uvIndex'.tr,
|
||||
message: message.getUvIndex(widget.uvIndex?.round()),
|
||||
),
|
||||
widget.shortwaveRadiation == null
|
||||
? const Offstage()
|
||||
: DescWeather(
|
||||
imageName: 'assets/images/shortwave_radiation.png',
|
||||
value: '${widget.shortwaveRadiation?.round()} ${'W/m2'.tr}',
|
||||
desc: 'shortwaveRadiation'.tr,
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
|
|
|
@ -115,6 +115,9 @@ class Translation extends Translations {
|
|||
'widget': 'Виджет',
|
||||
'widgetBackground': 'Фон виджета',
|
||||
'widgetText': 'Текст виджета',
|
||||
'dewpoint': 'Точка росы',
|
||||
'shortwaveRadiation': 'Коротковолновое излучение',
|
||||
'W/m2': 'Вт/м2',
|
||||
},
|
||||
'en_US': {
|
||||
'start': 'Get Started',
|
||||
|
@ -228,6 +231,9 @@ class Translation extends Translations {
|
|||
'widget': 'Widget',
|
||||
'widgetBackground': 'Widget background',
|
||||
'widgetText': 'Widget text',
|
||||
'dewpoint': 'Dewpoint',
|
||||
'shortwaveRadiation': 'Shortwave radiation',
|
||||
'W/m2': 'W/m2',
|
||||
},
|
||||
'fr_FR': {
|
||||
'start': 'Démarrer',
|
||||
|
@ -342,6 +348,8 @@ class Translation extends Translations {
|
|||
'widget': 'Widget',
|
||||
'widgetBackground': 'Fond du widget',
|
||||
'widgetText': 'Texte du widget',
|
||||
'dewpoint': 'Point de rosée',
|
||||
'shortwaveRadiation': 'Rayonnement à ondes courtes',
|
||||
},
|
||||
'it_IT': {
|
||||
'start': 'Clicca per iniziare',
|
||||
|
@ -456,6 +464,8 @@ class Translation extends Translations {
|
|||
'widget': 'Widget',
|
||||
'widgetBackground': 'Sfondo del widget',
|
||||
'widgetText': 'Testo del widget',
|
||||
'dewpoint': 'Punto di rugiada',
|
||||
'shortwaveRadiation': 'Radiazione a onde corte',
|
||||
},
|
||||
'de_DE': {
|
||||
'start': 'Los gehts',
|
||||
|
@ -570,6 +580,8 @@ class Translation extends Translations {
|
|||
'widget': 'Widget',
|
||||
'widgetBackground': 'Widget-Hintergrund',
|
||||
'widgetText': 'Widget-Text',
|
||||
'dewpoint': 'Taupunkt',
|
||||
'shortwaveRadiation': 'Kurzwellenstrahlung',
|
||||
},
|
||||
'tr_TR': {
|
||||
'start': 'Başlat',
|
||||
|
@ -683,6 +695,8 @@ class Translation extends Translations {
|
|||
'widget': 'Araç',
|
||||
'widgetBackground': 'Araç Arka Planı',
|
||||
'widgetText': 'Araç metni',
|
||||
'dewpoint': 'Çiğ noktası',
|
||||
'shortwaveRadiation': 'Kısa dalga radyasyonu',
|
||||
},
|
||||
'pt_BR': {
|
||||
'start': 'Iniciar',
|
||||
|
@ -796,6 +810,8 @@ class Translation extends Translations {
|
|||
'widget': 'Widget',
|
||||
'widgetBackground': 'Fundo do widget',
|
||||
'widgetText': 'Texto do widget',
|
||||
'dewpoint': 'Ponto de orvalho',
|
||||
'shortwaveRadiation': 'Radiação de ondas curtas',
|
||||
},
|
||||
'es_ES': {
|
||||
'start': 'Empezar',
|
||||
|
@ -814,7 +830,7 @@ class Translation extends Translations {
|
|||
'direction': 'Dirección',
|
||||
'pressure': 'Presión',
|
||||
'rain': 'Lluvia',
|
||||
'clear_sky': 'Soleado',
|
||||
'clear_sky': 'Cielo despejado',
|
||||
'cloudy': 'Nuboso',
|
||||
'overcast': 'Cubierto de nubes',
|
||||
'fog': 'Niebla',
|
||||
|
@ -910,6 +926,8 @@ class Translation extends Translations {
|
|||
'widget': 'Widget',
|
||||
'widgetBackground': 'Fondo del widget',
|
||||
'widgetText': 'Texto del widget',
|
||||
'dewpoint': 'Punto de rocío',
|
||||
'shortwaveRadiation': 'Radiación de onda corta',
|
||||
},
|
||||
'sk_SK': {
|
||||
'start': 'Začať',
|
||||
|
@ -1023,6 +1041,8 @@ class Translation extends Translations {
|
|||
'widget': 'Widget',
|
||||
'widgetBackground': 'Pozadie widgetu',
|
||||
'widgetText': 'Text widgetu',
|
||||
'dewpoint': 'Rosný bod',
|
||||
'shortwaveRadiation': 'Krátka vlnová radiácia',
|
||||
},
|
||||
'nl_NL': {
|
||||
'start': 'Beginnen',
|
||||
|
@ -1137,6 +1157,8 @@ class Translation extends Translations {
|
|||
'widget': 'Widget',
|
||||
'widgetBackground': 'Widget-achtergrond',
|
||||
'widgetText': 'Tekst van widget',
|
||||
'dewpoint': 'Dauwpunt',
|
||||
'shortwaveRadiation': 'Korte golfstraling',
|
||||
},
|
||||
'hi_IN': {
|
||||
'start': 'शुरू करें',
|
||||
|
@ -1248,6 +1270,8 @@ class Translation extends Translations {
|
|||
'widget': 'विजेट',
|
||||
'widgetBackground': 'विजेट का पृष्ठभूमि',
|
||||
'widgetText': 'विजेट पाठ',
|
||||
'dewpoint': 'बर्फ़ के बिंदु',
|
||||
'shortwaveRadiation': 'शॉर्टवेव विकिरण',
|
||||
},
|
||||
'ro_RO': {
|
||||
'start': 'Începe',
|
||||
|
@ -1360,6 +1384,8 @@ class Translation extends Translations {
|
|||
'widget': 'Widget',
|
||||
'widgetBackground': 'Fundal widget',
|
||||
'widgetText': 'Text widget',
|
||||
'dewpoint': 'Punct de rouă',
|
||||
'shortwaveRadiation': 'Radiație cu unde scurte',
|
||||
},
|
||||
'zh_CN': {
|
||||
'start': '开始',
|
||||
|
@ -1470,6 +1496,8 @@ class Translation extends Translations {
|
|||
'widget': '小部件',
|
||||
'widgetBackground': '小部件背景',
|
||||
'widgetText': '小部件文本',
|
||||
'dewpoint': '露点',
|
||||
'shortwaveRadiation': '短波辐射',
|
||||
},
|
||||
'pl_PL': {
|
||||
'start': 'Rozpocznij',
|
||||
|
@ -1581,7 +1609,9 @@ class Translation extends Translations {
|
|||
'license': 'Licencje',
|
||||
'widget': 'Widget',
|
||||
'widgetBackground': 'Tło widżetu',
|
||||
'widgetText': 'Tekst widżetu'
|
||||
'widgetText': 'Tekst widżetu',
|
||||
'dewpoint': 'Punkt rosy',
|
||||
'shortwaveRadiation': 'Promieniowanie krótkofalowe',
|
||||
},
|
||||
};
|
||||
}
|
||||
|
|
|
@ -22,7 +22,7 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
|
|||
FlutterTimezonePlugin.register(with: registry.registrar(forPlugin: "FlutterTimezonePlugin"))
|
||||
GeolocatorPlugin.register(with: registry.registrar(forPlugin: "GeolocatorPlugin"))
|
||||
IsarFlutterLibsPlugin.register(with: registry.registrar(forPlugin: "IsarFlutterLibsPlugin"))
|
||||
FLTPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FLTPackageInfoPlusPlugin"))
|
||||
FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin"))
|
||||
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
|
||||
UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin"))
|
||||
}
|
||||
|
|
12
pubspec.lock
12
pubspec.lock
|
@ -165,10 +165,10 @@ packages:
|
|||
dependency: "direct main"
|
||||
description:
|
||||
name: connectivity_plus
|
||||
sha256: "94d51c6f1299133a2baa4c5c3d2c11ec7d7fb4768dee5c52a56f7d7522fcf70e"
|
||||
sha256: b502a681ba415272ecc41400bd04fe543ed1a62632137dc84d25a91e7746f55f
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "5.0.0"
|
||||
version: "5.0.1"
|
||||
connectivity_plus_platform_interface:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -364,10 +364,10 @@ packages:
|
|||
dependency: "direct main"
|
||||
description:
|
||||
name: flutter_timezone
|
||||
sha256: "4508018aba499c837f723e2e718259eb677410490638b7ea669b11113d083e68"
|
||||
sha256: "06b35132c98fa188db3c4b654b7e1af7ccd01dfe12a004d58be423357605fb24"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.0.7"
|
||||
version: "1.0.8"
|
||||
flutter_web_plugins:
|
||||
dependency: transitive
|
||||
description: flutter
|
||||
|
@ -681,10 +681,10 @@ packages:
|
|||
dependency: "direct main"
|
||||
description:
|
||||
name: package_info_plus
|
||||
sha256: "6ff267fcd9d48cb61c8df74a82680e8b82e940231bb5f68356672fde0397334a"
|
||||
sha256: "7e76fad405b3e4016cd39d08f455a4eb5199723cf594cd1b8916d47140d93017"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.1.0"
|
||||
version: "4.2.0"
|
||||
package_info_plus_platform_interface:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
|
@ -30,9 +30,9 @@ dependencies:
|
|||
url_launcher: ^6.1.14
|
||||
dynamic_color: ^1.6.7
|
||||
path_provider: ^2.1.1
|
||||
flutter_timezone: ^1.0.7
|
||||
package_info_plus: ^4.1.0
|
||||
connectivity_plus: ^5.0.0
|
||||
flutter_timezone: ^1.0.8
|
||||
package_info_plus: ^4.2.0
|
||||
connectivity_plus: ^5.0.1
|
||||
isar_flutter_libs: ^3.1.0+1
|
||||
flutter_displaymode: ^0.6.0
|
||||
lat_lng_to_timezone: ^0.2.0
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue