timeAgo property

String timeAgo

Time Ago

Returns string of time difference between given DateTime and DateTime.now() in the format 1d, 2h, 4s or Just now

Implementation

String get timeAgo {
  final currentTime = DateTime.now();
  final difference = currentTime.difference(this);

  if (difference.inDays < 0) {
    return '${difference.inDays.abs()}d remaining';
  }

  if (difference.inDays >= 1) {
    return '${difference.inDays}d';
  } else if (difference.inHours >= 1) {
    return '${difference.inHours}h';
  } else if (difference.inMinutes >= 1) {
    return '${difference.inMinutes}m';
  } else if (difference.inSeconds >= 1) {
    return '${difference.inSeconds}s';
  } else {
    return 'Just now';
  }
}