import 'package:flutter/material.dart'; import 'package:maibu_satabot_v2/core/localization/app_localizations.dart'; import 'package:maibu_satabot_v2/core/theme/AppTheme.dart'; import 'package:maibu_satabot_v2/features/v2/home/domain/entities/home_entity.dart'; class PlantOverviewCard extends StatelessWidget { final PlantOverview overview; const PlantOverviewCard({super.key, required this.overview}); @override Widget build(BuildContext context) { return Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( AppLocalizations.of(context).translate('home_v2.plant_overview'), style: TextStyle( fontSize: 18, fontWeight: FontWeight.bold, color: context.appColors.textPrimary, ), ), const SizedBox(height: 12), Container( height: 120, decoration: BoxDecoration( borderRadius: BorderRadius.circular(16), image: DecorationImage( image: AssetImage(overview.backgroundImage), fit: BoxFit.cover, ), boxShadow: [ BoxShadow( color: context.appColors.cardShadow, blurRadius: 4, offset: const Offset(0, 2), ), ], ), child: Container( decoration: BoxDecoration( borderRadius: BorderRadius.circular(16), gradient: LinearGradient( begin: Alignment.topCenter, end: Alignment.bottomCenter, colors: [Colors.transparent, Colors.black.withOpacity(0.6)], ), ), child: Padding( padding: const EdgeInsets.all(16), child: Column( mainAxisAlignment: MainAxisAlignment.end, crossAxisAlignment: CrossAxisAlignment.start, children: [ Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Flexible( flex: 1, child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( AppLocalizations.of( context, ).translate('home_v2.installed_capacity'), style: const TextStyle( color: Colors.white70, fontSize: 12, ), maxLines: 1, overflow: TextOverflow.ellipsis, ), const SizedBox(height: 4), Text( '${overview.installedCapacity} MWp', style: const TextStyle( color: Colors.white, fontSize: 20, fontWeight: FontWeight.bold, ), maxLines: 1, overflow: TextOverflow.ellipsis, ), ], ), ), const SizedBox(width: 16), Flexible( flex: 1, child: Column( crossAxisAlignment: CrossAxisAlignment.end, children: [ Text( AppLocalizations.of( context, ).translate('home_v2.commission_date'), style: const TextStyle( color: Colors.white70, fontSize: 12, ), maxLines: 1, overflow: TextOverflow.ellipsis, ), const SizedBox(height: 4), Text( overview.commissionDate, style: const TextStyle( color: Colors.white, fontSize: 14, fontWeight: FontWeight.w500, ), maxLines: 1, overflow: TextOverflow.ellipsis, ), ], ), ), ], ), ], ), ), ), ), ], ); } }