import 'package:intl/intl.dart'; /// Label rentang periode ringkas, contoh: "27 Jul - 2 Agu 2026". String formatPeriodLabel(DateTime from, DateTime to) { final dayMonth = DateFormat('d MMM', 'id_ID'); final dayMonthYear = DateFormat('d MMM yyyy', 'id_ID'); if (from.year == to.year && from.month == to.month && from.day == to.day) { return dayMonthYear.format(from); } if (from.year == to.year) { return '${dayMonth.format(from)} - ${dayMonthYear.format(to)}'; } return '${dayMonthYear.format(from)} - ${dayMonthYear.format(to)}'; } /// Label bulan dari format API "2026-08" menjadi "Agustus 2026". String formatMonthLabel(String month, DateTime fallback) { final parts = month.split('-'); if (parts.length == 2) { final year = int.tryParse(parts[0]); final monthNumber = int.tryParse(parts[1]); if (year != null && monthNumber != null) { return DateFormat( 'MMMM yyyy', 'id_ID', ).format(DateTime(year, monthNumber)); } } return DateFormat('MMMM yyyy', 'id_ID').format(fallback); }