import 'package:easy_localization/easy_localization.dart'; import 'package:flutter/material.dart'; import 'package:lottie/lottie.dart'; import 'package:mohem_flutter_app/classes/colors.dart'; import 'package:mohem_flutter_app/classes/decorations_helper.dart'; import 'package:mohem_flutter_app/classes/lottie_consts.dart'; import 'package:mohem_flutter_app/extensions/int_extensions.dart'; import 'package:mohem_flutter_app/extensions/string_extensions.dart'; import 'package:mohem_flutter_app/generated/locale_keys.g.dart'; import 'package:mohem_flutter_app/ui/marathon/marathon_provider.dart'; class QualifiersContainer extends StatefulWidget { final MarathonProvider provider; const QualifiersContainer({Key? key, required this.provider}) : super(key: key); @override State createState() => _QualifiersContainerState(); } class _QualifiersContainerState extends State { @override void initState() { widget.provider.startTimerForWinnerSelection(); super.initState(); } @override Widget build(BuildContext context) { return Container( width: double.infinity, decoration: MyDecorations.shadowDecoration, padding: const EdgeInsets.only(top: 14, left: 18, right: 14, bottom: 18), child: Column( mainAxisSize: MainAxisSize.min, children: [ Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ LocaleKeys.winnerSelection.tr().toText21(color: MyColors.grey3AColor), "00:${widget.provider.totalSecondsToWaitForWinner < 10 ? "0${widget.provider.totalSecondsToWaitForWinner}" : widget.provider.totalSecondsToWaitForWinner}" .toText18(color: MyColors.redColor), ], ), 10.height, widget.provider.isGettingQualifiers ? Container( alignment: Alignment.centerLeft, child: Lottie.asset( MyLottieConsts.loadingLottie, width: 60, fit: BoxFit.fill, ), ) : Row( crossAxisAlignment: CrossAxisAlignment.end, children: [ widget.provider.totalQualifiers != null ? widget.provider.totalQualifiers.toString().toText30(color: MyColors.greenColor, isBold: true) : const SizedBox(), 2.width, LocaleKeys.qualifiers.tr().toText16(color: MyColors.greenColor), ], ), ], ), ); } }