import 'package:flutter/material.dart'; import 'package:go_router/go_router.dart'; import 'package:provider/provider.dart'; import '../../constants/app_colors.dart'; import '../../providers/auth_provider.dart'; import '../../widgets/primary_button.dart'; class ProfileScreen extends StatelessWidget { const ProfileScreen({super.key}); @override Widget build(BuildContext context) { final authProvider = Provider.of(context); final isAuthenticated = authProvider.isAuthenticated; return Scaffold( backgroundColor: const Color(0xFF0B0F14), appBar: AppBar( backgroundColor: const Color(0xFF0B0F14), foregroundColor: Colors.white, title: const Text('Profile'), automaticallyImplyLeading: false, ), body: Center( child: Padding( padding: const EdgeInsets.all(24), child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ const Icon(Icons.person, size: 64, color: AppColors.primary), const SizedBox(height: 24), Text( isAuthenticated ? 'Your Profile' : 'Profile', style: const TextStyle( fontSize: 28, color: Colors.white, fontWeight: FontWeight.bold, ), ), const SizedBox(height: 16), if (isAuthenticated && authProvider.did != null) ...[ Text( 'Signed in as:', style: TextStyle( fontSize: 14, color: Colors.white.withValues(alpha: 0.6), ), ), const SizedBox(height: 4), Text( authProvider.did!, style: const TextStyle( fontSize: 16, color: Color(0xFFB6C2D2), fontFamily: 'monospace', ), textAlign: TextAlign.center, ), const SizedBox(height: 48), PrimaryButton( title: 'Sign Out', onPressed: () async { await authProvider.signOut(); if (context.mounted) { context.go('/'); } }, variant: ButtonVariant.outline, ), ] else ...[ const Text( 'Sign in to view your profile', style: TextStyle(fontSize: 16, color: Color(0xFFB6C2D2)), textAlign: TextAlign.center, ), const SizedBox(height: 48), PrimaryButton( title: 'Sign in', onPressed: () => context.go('/login'), ), ], ], ), ), ), ); } }