UNPKG

dtable-utils

Version:

dtable common utils

54 lines (51 loc) 1.78 kB
import dayjs from 'dayjs'; /** * Get formatted date * @param {string} date e.g. "2023-07-06 11:30" * @param {string} format e.g. "YYYY-MM-DD" * @returns formatted date, string */ var getDateDisplayString = function getDateDisplayString(date, format) { if (!date || typeof date !== 'string') { return ''; } var dateObj = dayjs(date); if (!dateObj.isValid()) return date; switch (format) { case 'D/M/YYYY': case 'DD/MM/YYYY': { var formatValue = dateObj.format('YYYY-MM-DD'); var formatValueList = formatValue.split('-'); return "".concat(formatValueList[2], "/").concat(formatValueList[1], "/").concat(formatValueList[0]); } case 'D/M/YYYY HH:mm': case 'DD/MM/YYYY HH:mm': { var formatValues = dateObj.format('YYYY-MM-DD HH:mm'); var formatValuesList = formatValues.split(' '); var formatDateList = formatValuesList[0].split('-'); return "".concat(formatDateList[2], "/").concat(formatDateList[1], "/").concat(formatDateList[0], " ").concat(formatValuesList[1]); } case 'M/D/YYYY': return dateObj.format('M/D/YYYY'); case 'M/D/YYYY HH:mm': return dateObj.format('M/D/YYYY HH:mm'); case 'YYYY-MM-DD': return dateObj.format('YYYY-MM-DD'); case 'YYYY-MM-DD HH:mm': return dateObj.format('YYYY-MM-DD HH:mm'); case 'YYYY-MM-DD HH:mm:ss': { return dateObj.format('YYYY-MM-DD HH:mm:ss'); } case 'DD.MM.YYYY': return dateObj.format('DD.MM.YYYY'); case 'DD.MM.YYYY HH:mm': return dateObj.format('DD.MM.YYYY HH:mm'); default: // Compatible with older versions: if format is null, use defaultFormat return dateObj.format('YYYY-MM-DD'); } }; export { getDateDisplayString };