import 'package:english_learning/core/utils/styles/theme.dart';
import 'package:english_learning/core/widgets/global_button.dart';
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';

class LogoutConfirmation extends StatelessWidget {
  final VoidCallback onSubmit;

  const LogoutConfirmation({
    super.key,
    required this.onSubmit,
  });

  @override
  Widget build(BuildContext context) {
    return Dialog(
      shape: RoundedRectangleBorder(
        borderRadius: BorderRadius.circular(20),
      ),
      child: Container(
        decoration: BoxDecoration(
          color: Colors.white,
          borderRadius: BorderRadius.circular(20),
        ),
        child: Padding(
          padding: const EdgeInsets.all(24.0),
          child: Column(
            mainAxisSize: MainAxisSize.min,
            children: [
              RichText(
                text: TextSpan(
                  children: [
                    TextSpan(
                      text: 'Time to',
                      style: AppTextStyles.blackTextStyle.copyWith(
                        fontSize: 18,
                        fontWeight: FontWeight.w900,
                      ),
                    ),
                    TextSpan(
                      text: ' logout',
                      style: AppTextStyles.redTextStyle.copyWith(
                        fontSize: 18,
                        fontWeight: FontWeight.w900,
                      ),
                    ),
                    TextSpan(
                      text: '?',
                      style: AppTextStyles.blackTextStyle.copyWith(
                        fontSize: 18,
                        fontWeight: FontWeight.w900,
                      ),
                    ),
                  ],
                ),
              ),
              const SizedBox(height: 16),
              SvgPicture.asset(
                'lib/features/settings/modules/logout/assets/images/logout_illustration.svg',
                width: 160,
              ),
              const SizedBox(height: 16),
              Text(
                'Confirm logout? We\'ll be here when you return.',
                textAlign: TextAlign.center,
                style: AppTextStyles.disableTextStyle.copyWith(
                  fontSize: 12,
                  fontWeight: FontWeight.w500,
                ),
              ),
              const SizedBox(height: 13),
              Row(
                children: [
                  Expanded(
                    child: GlobalButton(
                        text: 'No',
                        textColor: AppColors.disableColor,
                        borderColor: AppColors.disableColor,
                        backgroundColor: Colors.transparent,
                        onPressed: () {
                          Navigator.of(context).pop();
                        }),
                  ),
                  const SizedBox(width: 10),
                  Expanded(
                    child: GlobalButton(
                      text: 'Yes, logout!',
                      onPressed: onSubmit,
                      textColor: AppColors.whiteColor,
                      backgroundColor: AppColors.redColor,
                    ),
                  ),
                ],
              )
            ],
          ),
        ),
      ),
    );
  }
}
