import 'package:flutter/material.dart'; import '../../../core/contracts/library.dart'; class QualityBadge extends StatelessWidget { const QualityBadge({super.key, required this.quality}); final MediaQualityInfo? quality; @override Widget build(BuildContext context) { final label = _buildLabel(); if (label == null) return const SizedBox.shrink(); return Container( padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 4), decoration: BoxDecoration( color: Colors.black54, borderRadius: BorderRadius.circular(4), ), child: Text( label, style: const TextStyle(color: Colors.white70, fontSize: 12), ), ); } String? _buildLabel() { final q = quality; if (q == null) return null; final res = q.resolutionLabel; if (res.isEmpty) return null; final range = q.dynamicRangeLabel; if (range == 'SDR' || range.isEmpty) return res; final shortRange = range == 'Dolby Vision' ? 'DV' : range; return '$res $shortRange'; } }