import 'package:eatvio_app/core/theme/custom_text_style.dart'; import 'package:eatvio_app/core/theme/theme_helper.dart'; import 'package:eatvio_app/core/widgets/loader.dart'; import 'package:eatvio_app/core/widgets/main_background_bouble.dart'; import 'package:eatvio_app/features/consultant_rating/models/statistics_model.dart'; import 'package:eatvio_app/features/consultant_rating/presentation/widgets/period_filter_widget.dart'; import 'package:eatvio_app/features/consultant_rating/presentation/widgets/statistic_bouble.dart'; import 'package:eatvio_app/generated/l10n.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/svg.dart'; class StatisticWidget extends StatelessWidget { const StatisticWidget({super.key, required this.isLoading, required this.statistics}); final bool isLoading; final StatisticsModel? statistics; @override Widget build(BuildContext context) { final s = S.of(context); return MainBackgroundBouble( padding: const EdgeInsets.all(16), child: isLoading ? const Center(child: Loader()) : Column( children: [ Row( children: [ Text( s.statistic, style: TextStyles.headingXLSemibold.copyWith(color: appTheme.black), ), const Spacer(), SvgPicture.asset( 'assets/icons/question_mark.svg', height: 22, width: 22, colorFilter: ColorFilter.mode( appTheme.blueA400, BlendMode.srcIn, ), ), ], ), const SizedBox( height: 16, ), const PeriodFilterWidget( isStatistic: true, ), const SizedBox( height: 12, ), Row( children: [ Expanded(child: StatisticBouble(number: statistics?.countReferal ?? 0, title: s.invited_people_count)), const SizedBox(width: 8), Expanded(child: StatisticBouble(number: statistics?.blogPostsCount ?? 0, title: s.published_posts_count)), ], ), const SizedBox( height: 8, ), Row( children: [ Expanded(child: StatisticBouble(number: statistics?.recipesCount ?? 0, title: s.published_recipes_count)), const SizedBox(width: 8), Expanded(child: StatisticBouble(number: statistics?.dietsCount ?? 0, title: s.published_diets_count)), ], ), const SizedBox( height: 8, ), Row( children: [ Expanded(child: StatisticBouble(number: statistics?.consultationsCount ?? 0, title: s.consultations_count)), const SizedBox(width: 8), Expanded(child: StatisticBouble(number: statistics?.qwe ?? 0, title: s.added_products_in_glossary)), ], ), const SizedBox( height: 8, ), ], ), ); } }