import 'package:flutter/material.dart'; import 'package:lucide_icons/lucide_icons.dart'; import 'package:flutter/services.dart'; // Riveアニメーション用のウィジェット(v1.2: フォールバックモード) // 注意: .rivファイルが存在しないため、現在はLucideIconsで表示されます // TODO: assets/rive/munyun_heart.riv を配置すればアニメーション有効化 class MunyunLikeButton extends StatefulWidget { final bool isLiked; final VoidCallback onTap; final double size; const MunyunLikeButton({ super.key, required this.isLiked, required this.onTap, this.size = 24.0, }); @override State createState() => _MunyunLikeButtonState(); } class _MunyunLikeButtonState extends State { // v1.2: Riveパッケージのバージョン問題により、一旦フォールバックのみで実装 // .rivファイルの配置 + Riveパッケージ更新後に再度実装予定 @override Widget build(BuildContext context) { // 現在はフォールバック表示のみ return _buildFallback(); } Widget _buildFallback() { return IconButton( icon: Icon( LucideIcons.heart, // Lucideには塗りつぶしハートがないため、色で区別 ), color: widget.isLiked ? Colors.pink : Colors.white, tooltip: 'お気に入り', onPressed: widget.onTap, ); } }