import 'package:eatvio_app/features/diets/presentation/widgets/info_bouble.dart'; import 'package:eatvio_app/features/feed/models/diets_pagination_model.dart'; import 'package:eatvio_app/generated/l10n.dart'; import 'package:eatvio_app/theme/theme_helper.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/svg.dart'; import 'package:go_router/go_router.dart'; class AuthorCard extends StatelessWidget { const AuthorCard({super.key, required this.author}); final Author author; @override Widget build(BuildContext context) { final s = S.of(context); return Container( width: MediaQuery.sizeOf(context).width, decoration: BoxDecoration(borderRadius: BorderRadius.circular(12), color: appTheme.cardBackground), child: Stack( children: [ Padding( padding: const EdgeInsets.only(left: 16, top: 16, bottom: 24), child: Column( children: [ ListTile( contentPadding: EdgeInsets.zero, leading: Container( width: 64, height: 64, decoration: BoxDecoration( shape: BoxShape.circle, image: DecorationImage( image: NetworkImage(author.authorProfileIcon), fit: BoxFit.cover, ), ), ), subtitle: Text( author.authorName, style: TextStyle( fontSize: 18, fontWeight: FontWeight.w600, color: appTheme.blueGray800, ), ), title: Text( s.diet_author, style: TextStyle( fontSize: 14, fontWeight: FontWeight.w600, color: Color(0xFF6D6F71), ), ), ), Row( children: [ Text( 'Конслуьтант', style: TextStyle( color: appTheme.blueGray800, fontSize: 16, fontWeight: FontWeight.w500, ), ), SizedBox(width: 10), InfoBouble(radius: 12, backgroundColor: appTheme.whiteA700, children: [ Text( '128-й в рейтинге', style: TextStyle( color: appTheme.blueA400, fontSize: 16, fontWeight: FontWeight.w500, ), ), ],), ], ), ], ), ), Positioned( right: 8, top: 8, child: GestureDetector( onTap: () => GoRouter.of(context).pushNamed('profileScreen', extra: author), child: Container( width: 28, height: 28, decoration: BoxDecoration( color: appTheme.whiteA700, borderRadius: BorderRadius.circular(8), ), child: Center( child: SvgPicture.asset( 'assets/icons/arrow.svg', width: 12, height: 12, fit: BoxFit.none, ), ), ), ), ), ], ), ); } }