smartfarming-mobile/agrilink_vocpro/lib/core/extension/extention.dart

66 lines
1.8 KiB
Dart

import 'package:intl/intl.dart';
String capitalize(String s) {
return s[0].toUpperCase() + s.substring(1);
}
String dateFormater(String date) {
final DateTime dateTime = DateTime.parse(date);
final DateFormat formatter = DateFormat('dd MMM yyyy');
return formatter.format(dateTime);
}
String dateFormatterShort(String date) {
final DateTime dateTime = DateTime.parse(date);
final DateFormat formatter = DateFormat('yyyy-MM-dd');
return formatter.format(dateTime);
}
String setTwoDigitAfterComma(double number) {
return number.toStringAsFixed(2);
}
String getGreeting(String time) {
DateTime parsedTime = DateTime.parse(time);
int hour = parsedTime.hour;
if (hour >= 5 && hour < 12) {
return 'Selamat Pagi';
} else if (hour >= 12 && hour < 15) {
return 'Selamat Siang';
} else if (hour >= 15 && hour < 18) {
return 'Selamat Sore';
} else {
return 'Selamat Malam';
}
}
String timeAgo(String? dateString) {
if (dateString == null) {
return '';
}
DateTime date = DateTime.parse(dateString);
DateTime now = DateTime.now();
Duration difference = now.difference(date);
if (difference.inMinutes < 1) {
return "Baru saja";
} else if (difference.inMinutes < 60) {
return "${difference.inMinutes} menit yang lalu";
} else if (difference.inHours < 24) {
return "${difference.inHours} jam yang lalu";
} else if (difference.inDays < 7) {
return "${difference.inDays} hari yang lalu";
} else if (difference.inDays < 30) {
int weeks = (difference.inDays / 7).floor();
return "$weeks minggu yang lalu";
} else if (difference.inDays < 365) {
int months = (difference.inDays / 30).floor();
return "$months bulan yang lalu";
} else {
int years = (difference.inDays / 365).floor();
return "$years tahun yang lalu";
}
}