import 'package:ernaehrung/android/config/statistics.dart';
import 'package:flutter/material.dart';
import 'package:percent_indicator/circular_percent_indicator.dart';

class CircularLoadingComponent extends StatelessWidget {
  final int totalCalories;
  const CircularLoadingComponent(this.totalCalories, {Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return ValueListenableBuilder(
      valueListenable: StatisticsService.instance.eatenCalories,
      builder: (context, value, child) {
        double progress =
            double.parse((value / totalCalories).toStringAsFixed(1));
        progress = progress > 1.0 ? 1.0 : progress;

        return Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            CircularPercentIndicator(
              animation: true,
              radius: 60.0,
              lineWidth: 5.0,
              percent: progress,
              center: Text(
                "$value/$totalCalories Kcal",
                textAlign: TextAlign.center,
              ),
              progressColor: Colors.lightGreen,
            ),
          ],
        );
      },
    );
  }
}
