Current File : /home/tradevaly/www/fresh/lib/helper/date_converter.dart |
import 'package:flutter/material.dart';
import 'package:flutter_grocery/provider/splash_provider.dart';
import 'package:intl/intl.dart';
import 'package:provider/provider.dart';
class DateConverter {
static String formatDate(DateTime dateTime) {
return DateFormat('yyyy-MM-dd hh:mm:ss').format(dateTime);
}
static String estimatedDate(DateTime dateTime) {
return DateFormat('dd MMM yyyy').format(dateTime);
}
static String slotDate(DateTime dateTime) {
return DateFormat('yyyy-MM-dd').format(dateTime);
}
static DateTime convertStringToDatetime(String dateTime) {
return DateFormat("yyyy-MM-ddTHH:mm:ss.SSS").parse(dateTime);
}
static String localDateToIsoStringAMPM(DateTime dateTime, BuildContext context) {
return DateFormat('${_timeFormatter(context)} | d-MMM-yyyy ').format(dateTime.toLocal());
}
static DateTime isoStringToLocalDate(String dateTime) {
return DateFormat('yyyy-MM-ddTHH:mm:ss.SSS').parse(dateTime, true).toLocal();
}
static String isoStringToLocalTimeOnly(String dateTime) {
return DateFormat('HH:mm').format(isoStringToLocalDate(dateTime));
}
static String isoStringToLocalTimeWithAMPMOnly(String dateTime) {
return DateFormat('hh:mm a').format(isoStringToLocalDate(dateTime));
}
static String isoStringToLocalTimeWithAmPmAndDay(String dateTime) {
return DateFormat('hh:mm a, EEE').format(isoStringToLocalDate(dateTime));
}
static String stringToStringTime(String dateTime, BuildContext context) {
DateTime inputDate = DateFormat('HH:mm:ss').parse(dateTime);
return DateFormat(_timeFormatter(context)).format(inputDate);
}
static String isoStringToLocalAMPM(String dateTime) {
return DateFormat('a').format(isoStringToLocalDate(dateTime));
}
static String isoStringToLocalDateOnly(String dateTime) {
return DateFormat('dd MMM yyyy').format(isoStringToLocalDate(dateTime));
}
static String localDateToIsoString(DateTime dateTime) {
return DateFormat('yyyy-MM-ddTHH:mm:ss.SSS').format(dateTime.toUtc());
}
static String isoDayWithDateString(String dateTime) {
return DateFormat('EEE, MMM d, yyyy').format(isoStringToLocalDate(dateTime));
}
static String convertTimeRange(String start, String end, BuildContext context) {
DateTime _startTime = DateFormat('HH:mm:ss').parse(start);
DateTime _endTime = DateFormat('HH:mm:ss').parse(end);
return '${DateFormat('${_timeFormatter(context)}').format(_startTime)} - ${DateFormat('${_timeFormatter(context)}').format(_endTime)}';
}
static DateTime stringTimeToDateTime(String time) {
return DateFormat('HH:mm:ss').parse(time);
}
static String _timeFormatter(BuildContext context) {
return Provider.of<SplashProvider>(context, listen: false).configModel.timeFormat == '24' ? 'HH:mm' : 'hh:mm a';
}
}