import 'package:intl/intl.dart'; import 'package:marco/helpers/services/app_logger.dart'; class DateTimeUtils { static String convertUtcToLocal(String utcTimeString, {String format = 'dd-MM-yyyy'}) { try { logSafe('convertUtcToLocal: input="$utcTimeString", format="$format"'); final parsed = DateTime.parse(utcTimeString); final utcDateTime = DateTime.utc( parsed.year, parsed.month, parsed.day, parsed.hour, parsed.minute, parsed.second, parsed.millisecond, parsed.microsecond, ); logSafe('Parsed (assumed UTC): $utcDateTime'); final localDateTime = utcDateTime.toLocal(); logSafe('Converted to Local: $localDateTime'); final formatted = _formatDateTime(localDateTime, format: format); logSafe('Formatted Local Time: $formatted'); return formatted; } catch (e, stackTrace) { logSafe('DateTime conversion failed: $e', error: e, stackTrace: stackTrace); return 'Invalid Date'; } } static String _formatDateTime(DateTime dateTime, {String format = 'dd-MM-yyyy'}) { return DateFormat(format).format(dateTime); } }