import 'package:auto_route/auto_route.dart';
import 'package:flutter/material.dart';
import 'package:line_icons/line_icons.dart';

import '../../../../common/extension/extension.dart';
import '../../../../common/theme/theme.dart';
import '../../../../domain/user/user.dart';
import '../../../router/app_router.gr.dart';
import 'divider.dart';
import 'profile_tile.dart';

class ProfileAccountInfo extends StatelessWidget {
  final User user;
  const ProfileAccountInfo({super.key, required this.user});

  @override
  Widget build(BuildContext context) {
    return Container(
      margin: EdgeInsets.symmetric(horizontal: AppValue.margin),
      decoration: BoxDecoration(
        color: AppColor.surface,
        borderRadius: BorderRadius.circular(12),
        boxShadow: [
          BoxShadow(
            color: Colors.black.withOpacity(0.05),
            blurRadius: 10,
            offset: const Offset(0, 2),
          ),
        ],
      ),
      child: Column(
        crossAxisAlignment: CrossAxisAlignment.start,
        children: [
          Padding(
            padding: EdgeInsets.all(16),
            child: Text(
              context.lang.account_information,
              style: AppStyle.xl.copyWith(
                fontSize: 18,
                fontWeight: FontWeight.bold,
                color: AppColor.textPrimary,
              ),
            ),
          ),

          ProfileTile(
            icon: LineIcons.userEdit,
            title: context.lang.edit_profile,
            subtitle: context.lang.edit_profile_desc,
            onTap: () => context.router.push(ProfileEditRoute(user: user)),
          ),
          ProfileDivider(),
          ProfileTile(
            icon: LineIcons.lock,
            title: context.lang.change_password,
            subtitle: context.lang.change_password_desc,
            onTap: () => context.router.push(ProfileChangePasswordRoute()),
          ),
        ],
      ),
    );
  }
}
