@kadconsulting/dry
Version:
KAD Reusable Component Library
45 lines • 1.41 kB
JavaScript
const formatDateFromIso = ({ dateString, timeOnly, noTime, }) => {
if (!dateString ||
typeof dateString !== 'string' ||
!dateString.includes('T'))
return null;
const [datePart, timePart] = dateString?.split('T');
const [year, month, day] = datePart?.split('-');
const [hour, minute] = timePart?.slice(0, -5)?.split(':');
const monthNames = [
'January',
'February',
'March',
'April',
'May',
'June',
'July',
'August',
'September',
'October',
'November',
'December',
];
const monthName = monthNames[parseInt(month) - 1];
const formattedDay = parseInt(day);
const formattedYear = parseInt(year);
let formattedHour = parseInt(hour);
const formattedMinute = parseInt(minute);
let period = 'AM';
if (formattedHour >= 12) {
period = 'PM';
if (formattedHour > 12) {
formattedHour -= 12;
}
}
const formattedTime = `${formattedHour}:${formattedMinute
.toString()
.padStart(2, '0')} ${period}`;
if (timeOnly)
return formattedTime;
if (noTime)
return `${monthName} ${formattedDay}, ${formattedYear}`;
return `${monthName} ${formattedDay}, ${formattedYear} - ${formattedTime}`;
};
export default formatDateFromIso;
//# sourceMappingURL=formatDateFromIso.js.map