import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';

import 'package:random/cubit/settings_cubit.dart';
import 'package:random/models/interface_type.dart';

class AppHeader extends StatelessWidget {
  const AppHeader({super.key, required this.text});

  final String text;

  @override
  Widget build(BuildContext context) {
    print('AppHeader - build (' + this.text + ')');

    return BlocProvider<SettingsCubit>(
      create: (BuildContext context) => SettingsCubit(),
      child: BlocBuilder<SettingsCubit, SettingsState>(
        builder: (BuildContext context, SettingsState state) {
          SettingsCubit settings = BlocProvider.of<SettingsCubit>(context);

          bool isExpert = settings.getInterfaceType() == InterfaceType.expert;
          String titleSuffix = isExpert ? ' ⭐' : '';

          return Text(
            tr(text) + titleSuffix,
            textAlign: TextAlign.start,
            style: Theme.of(context).textTheme.headlineMedium!.apply(fontWeightDelta: 2),
          );
        },
      ),
    );
  }
}