import 'package:wonders/common_libs.dart'; import 'package:wonders/ui/common/collectible_item.dart'; /// Shows a [CollectibleItem], for a specific set of wonders. /// The item is looked up via index, and expects that 3 items always exist for each wonder. /// If `wonders` is empty, then the collectible is always shown. class HiddenCollectible extends StatelessWidget with GetItMixin { HiddenCollectible(this.currentWonder, {Key? key, required this.index, this.matches = const [], this.size = 64}) : assert(index <= 2, 'index should not exceed 2'), super(key: key); final int index; final double size; final List matches; final WonderType currentWonder; @override Widget build(BuildContext context) { final data = collectiblesLogic.forWonder(currentWonder); assert(data.length == 3, 'Each wonder should have exactly 3 collectibles'); if (matches.isNotEmpty && matches.contains(currentWonder) == false) { return SizedBox.shrink(); } return CollectibleItem(data[index], size: size); } }