Select Git revision
timeline_content.dart
timeline_content.dart 1.66 KiB
import 'dart:convert';
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';
import '../../../models/timeline.dart';
import 'timeline_chart_counts.dart';
import 'timeline_chart_eclecticism.dart';
class ChartTimelineCardContent extends StatelessWidget {
final int daysCount;
final TimelineData chartData;
final bool isLoading;
const ChartTimelineCardContent(
{super.key, required this.daysCount, required this.chartData, required this.isLoading});
@override
Widget build(BuildContext context) {
final TextTheme textTheme = Theme.of(context).primaryTextTheme;
final String placeholder = '⏳';
return Column(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Text(
'timeline_title',
style: textTheme.titleLarge!.apply(fontWeightDelta: 2),
).tr(
namedArgs: {
'daysCount': this.daysCount.toString(),
},
),
const SizedBox(height: 8),
this.isLoading
? Text(placeholder)
: Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
ChartTimelineCounts(
chartData: TimelineData.fromJson(jsonDecode(this.chartData.toString())),
),
const SizedBox(height: 8),
ChartTimelineEclecticism(
chartData: TimelineData.fromJson(jsonDecode(this.chartData.toString())),
),
],
),
],
);
}
}