import 'package:flutter/material.dart';

import '../Misc/monthly_balance_chart.dart';
import 'current_balance.dart';
import 'recent_transactions_list.dart';

/// Eine Seite, die das Dashboard der App darstellt.
///
/// Diese Seite zeigt eine Übersicht über den aktuellen Kontostand,
/// die Entwicklung des Kontostands der letzten Monate sowie
/// die letzten Transaktionen.
class Dashboard extends StatelessWidget {
  /// Erstellt eine neue Instanz der Dashboard-Seite.
  const Dashboard({super.key});

  /// Baut das Dashboard-Widget auf.
  /// [context] ist der Build-Kontext
  @override
  Widget build(final BuildContext context) => const Scaffold(
    body: SafeArea(
      child: Padding(
        padding: EdgeInsets.symmetric(horizontal: 16, vertical: 24),
        child: SingleChildScrollView(
          child: Column(
            crossAxisAlignment: CrossAxisAlignment.start,
            children: <Widget>[
              CurrentBalance(),
              SizedBox(height: 32),

              Text(
                'Kontostand pro Monat',
                style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold),
              ),
              SizedBox(height: 12),
              MonthlyBalanceChart(),

              SizedBox(height: 32),
              Text(
                'Letzte Transaktionen',
                style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold),
              ),
              SizedBox(height: 12),
              RecentTransactionsList(),
            ],
          ),
        ),
      ),
    ),
  );
}
