formatTimeReadable static method

String formatTimeReadable(
  1. String time, {
  2. TimeFormat? timeFormat,
})

Convert type TIME database to String

const string = "10:10:10"

final result = GlobalFunction.formatTimeReadable(string);

print(result) // 10 Jam 10 Menit 10 Detik

Implementation

static String formatTimeReadable(
  String time, {
  TimeFormat? timeFormat,
}) {
  final hour = time.replaceAll(':', '').substring(0, 2);
  final minute = time.replaceAll(':', '').substring(2, 4);
  final second = time.replaceAll(':', '').substring(4, 6);

  String resultHour;
  String resultMinute;
  String resultSecond;

  if (hour.startsWith('0')) {
    resultHour = hour.substring(1);
  } else {
    resultHour = hour;
  }
  if (minute.startsWith('0')) {
    resultMinute = minute.substring(1);
  } else {
    resultMinute = minute;
  }
  if (second.startsWith('0')) {
    resultSecond = second.substring(1);
  } else {
    resultSecond = second;
  }

  switch (timeFormat) {
    case TimeFormat.jam:
      return '$resultHour Jam ';

    case TimeFormat.jamMenit:
      return '$resultHour Jam $resultMinute Menit';

    case TimeFormat.jamMenitDetik:
      return '$resultHour Jam $resultMinute Menit $resultSecond Detik';

    case TimeFormat.menit:
      return '$resultMinute Menit';

    case TimeFormat.menitDetik:
      return '$resultMinute Menit $resultSecond Detik';

    case TimeFormat.detik:
      return '$resultSecond Detik';

    default:
      return '$resultHour Jam $resultMinute Menit $resultSecond Detik';
  }
}