import 'package:flutter/material.dart'; class DetailHeader extends StatelessWidget { final String name; final String type; final String color; const DetailHeader({ super.key, required this.name, required this.type, required this.color, }); Color _getColorFromString(String colorName) { final colorMap = { 'red': Colors.red, 'blue': Colors.blue, 'green': Colors.green, 'yellow': Colors.yellow, 'black': Colors.black, 'white': Colors.white, 'orange': Colors.orange, 'purple': Colors.purple, 'pink': Colors.pink, 'grey': Colors.grey, 'brown': Colors.brown, }; return colorMap[colorName.toLowerCase()] ?? Colors.grey; } @override Widget build(BuildContext context) { return Container( padding: EdgeInsets.all(24), decoration: BoxDecoration( gradient: LinearGradient( begin: Alignment.topLeft, end: Alignment.bottomRight, colors: [ _getColorFromString(color).withAlpha(100), _getColorFromString(color).withAlpha(50), ], ), borderRadius: BorderRadius.only( bottomLeft: Radius.circular(32), bottomRight: Radius.circular(32), ), ), child: Column( children: [ // Color circle Container( width: 100, height: 100, decoration: BoxDecoration( color: _getColorFromString(color), shape: BoxShape.circle, border: Border.all( color: Colors.white, width: 4, ), boxShadow: [ BoxShadow( color: _getColorFromString(color).withAlpha(120), blurRadius: 20, spreadRadius: 5, ), ], ), ), SizedBox(height: 16), // Name Text( name, style: TextStyle( fontSize: 28, fontWeight: FontWeight.bold, color: Colors.grey.shade800, ), textAlign: TextAlign.center, ), SizedBox(height: 8), // Type badge Container( padding: EdgeInsets.symmetric(horizontal: 16, vertical: 6), decoration: BoxDecoration( color: _getColorFromString(color).withAlpha(120), borderRadius: BorderRadius.circular(20), ), child: Text( type, style: TextStyle( fontSize: 16, fontWeight: FontWeight.w600, color: _getColorFromString(color).withAlpha(180), ), ), ), ], ), ); } }