import 'package:flutter/material.dart'; import '../../../services/social/rider_profile_models.dart'; import 'avatar_badge.dart'; /// Grid selector for choosing a preset rider avatar. class AvatarSelector extends StatelessWidget { final String? selectedPresetId; final ValueChanged onSelected; const AvatarSelector({ super.key, required this.selectedPresetId, required this.onSelected, }); @override Widget build(BuildContext context) { return Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ const Text( 'SELECT AVATAR PRESET', style: TextStyle( color: Colors.white70, fontSize: 11, fontWeight: FontWeight.w800, letterSpacing: 0.8, fontFamily: 'Inter', ), ), const SizedBox(height: 10), Wrap( spacing: 12, runSpacing: 12, children: PresetAvatar.availablePresets.map((preset) { final isSelected = (selectedPresetId ?? PresetAvatar.availablePresets.first.id) == preset.id; return Tooltip( message: preset.label, child: AvatarBadge( avatarPreset: preset.id, displayName: preset.label, radius: 22, isSelected: isSelected, onTap: () => onSelected(preset.id), ), ); }).toList(), ), ], ); } }