import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; class CollectionContainer extends StatelessWidget { final String? label; final String? imagesrc; final String? imageSvg; final double? width; final double? height; final VoidCallback onTapAc; final Color? textColor; const CollectionContainer({ Key? key, this.label, this.imagesrc, this.imageSvg, this.width, this.height, required this.onTapAc, this.textColor, }) : super(key: key); @override Widget build(BuildContext context) { return GestureDetector( onTap: onTapAc, child: Container( width: width ?? 130, height: height ?? 150, decoration: BoxDecoration( color: Colors.transparent, borderRadius: BorderRadius.circular(10), ), child: Card( // shape: RoundedRectangleBorder( // borderRadius: BorderRadius.circular(10.0), // ), elevation: 5, color: const Color.fromARGB(255, 255, 255, 255).withOpacity(0.5), child: Stack( children: [ Center( child: Padding( padding: const EdgeInsets.only(bottom: 30.0), child: imageSvg != null && imageSvg!.isNotEmpty ? SvgPicture.asset( imageSvg!, width: 60, height: 60, colorFilter: const ColorFilter.mode( Colors.white, BlendMode.srcIn, ), ) : imagesrc != null && imagesrc!.isNotEmpty ? Image.asset(imagesrc!, width: 60, fit: BoxFit.cover) : const SizedBox( width: 60, height: 60, child: Center( child: Icon( Icons.image_not_supported, color: Colors.white, ), ), ), ), ), Positioned( bottom: 10, left: 0, right: 0, child: Text( label ?? '', textAlign: TextAlign.center, style: TextStyle( fontSize: 14, fontWeight: FontWeight.bold, color: textColor ?? Colors.black, ), ), ), ], ), ), ), ); } }