import 'package:flutter/material.dart'; /// Error display widget class ErrorDisplay extends StatelessWidget { final String message; final VoidCallback? onRetry; final IconData? icon; const ErrorDisplay({ super.key, required this.message, this.onRetry, this.icon, }); @override Widget build(BuildContext context) { return Center( child: Padding( padding: const EdgeInsets.all(16.0), child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ Icon( icon ?? Icons.error_outline, size: 64, color: Theme.of(context).colorScheme.error, ), const SizedBox(height: 16), Text( message, style: Theme.of(context).textTheme.titleMedium, textAlign: TextAlign.center, ), if (onRetry != null) ...[ const SizedBox(height: 24), ElevatedButton.icon( onPressed: onRetry, icon: const Icon(Icons.refresh), label: const Text('Retry'), ), ], ], ), ), ); } }