import 'package:flutter/material.dart'; class AnimatorWidget extends StatefulWidget { final String authorName; final String authorImageUrl; final DateTime? publishDate; final List? imageUrls; final int likesCount; final int commentsCount; final int sharesCount; final VoidCallback? onLike; final VoidCallback? onComment; final VoidCallback? onShare; final double? aspectRatio; // Nouveau paramètre pour le ratio (largeur/hauteur) const AnimatorWidget({ Key? key, required this.authorName, required this.authorImageUrl, this.publishDate, this.imageUrls, this.likesCount = 0, this.commentsCount = 0, this.sharesCount = 0, this.onLike, this.onComment, this.onShare, this.aspectRatio, // null = ratio naturel de l'image, ex: 16/9, 4/3, 1/1 }) : super(key: key); @override State createState() => _AnimatorWidgetWidgetState(); } class _AnimatorWidgetWidgetState extends State { @override Widget build(BuildContext context) { return Row( children: [ CircleAvatar( backgroundImage: NetworkImage(widget.authorImageUrl), ), const SizedBox(width: 8), Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text(widget.authorName, style: Theme.of(context).textTheme.bodyLarge?.copyWith(color: Colors.black)), //Text('${widget.publishDate.toLocal()}'.split(' ')[0], style: const TextStyle(color: Colors.grey, fontSize: 12)), ], ), ], ); } }