Rain/lib/app/widgets/list_daily_card.dart
2023-07-10 21:33:43 +03:00

73 lines
2.3 KiB
Dart

import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:intl/intl.dart';
import 'package:rain/app/widgets/status.dart';
import 'package:rain/app/widgets/status_im_fa.dart';
class ListCardDaily extends StatelessWidget {
const ListCardDaily({
super.key,
required this.timeDaily,
required this.weathercodeDaily,
required this.temperature2MMax,
required this.temperature2MMin,
});
final DateTime timeDaily;
final int weathercodeDaily;
final double temperature2MMax;
final double temperature2MMin;
@override
Widget build(BuildContext context) {
final locale = Get.locale;
final status = Status();
final statusImFa = StatusImFa();
return Card(
margin: const EdgeInsets.symmetric(horizontal: 10, vertical: 8),
child: Padding(
padding: const EdgeInsets.symmetric(vertical: 15, horizontal: 20),
child: Row(
children: [
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
'${statusImFa.getDegree(temperature2MMin.round())} / ${statusImFa.getDegree(temperature2MMax.round())}',
style: context.textTheme.titleLarge?.copyWith(
fontSize: 22,
fontWeight: FontWeight.w600,
),
),
const SizedBox(height: 5),
Text(
DateFormat.MMMMEEEEd(locale?.languageCode)
.format(timeDaily),
style: context.textTheme.titleMedium?.copyWith(
color: Colors.grey,
fontWeight: FontWeight.w400,
),
),
const SizedBox(height: 5),
Text(
status.getText(weathercodeDaily),
style: context.textTheme.titleMedium?.copyWith(
color: Colors.grey,
fontWeight: FontWeight.w400,
),
),
],
),
),
const SizedBox(width: 5),
Image.asset(
status.getImageNowDaily(weathercodeDaily, timeDaily),
scale: 6.5,
),
],
),
),
);
}
}