formattedTimeRemaining property

String get formattedTimeRemaining

Formatted time until expiry.

receipt.formattedTimeRemaining; // '15 days'
receipt.formattedTimeRemaining; // '3 hours'

Implementation

String get formattedTimeRemaining {
  if (expiresAt == null) return 'Unlimited';
  if (isExpired) return 'Expired';

  final remaining = timeUntilExpiry;
  if (remaining.inDays > 0) {
    return '${remaining.inDays} day${remaining.inDays == 1 ? '' : 's'}';
  }
  if (remaining.inHours > 0) {
    return '${remaining.inHours} hour${remaining.inHours == 1 ? '' : 's'}';
  }
  if (remaining.inMinutes > 0) {
    return '${remaining.inMinutes} minute${remaining.inMinutes == 1 ? '' : 's'}';
  }
  return 'Less than a minute';
}