@bothive/helpers
Version:
Collection of helper functions mainly used inside bothive-core project
74 lines • 2.3 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
function addDays({ days, to }) {
const newDate = new Date(to);
newDate.setDate(newDate.getDate() + days);
return newDate;
}
function subtractDate({ from, by }) {
const newDate = new Date(from);
newDate.setDate(newDate.getDate() - by);
return newDate;
}
function areDatesEqual(date1, date2) {
return date1.toDateString() === date2.toDateString();
}
function getDifference(date1, date2) {
const _date2 = date2 ? Date.parse(date2) : Date.now();
return Math.floor((_date2 - Date.parse(date1)) / 86400000);
}
function subtractMinutes(minute) {
const dateRange = new Date();
dateRange.setTime(dateRange.getTime() - minute * 60 * 1000);
return dateRange;
}
function getEarliestDate(...dates) {
const list = dates.reduce((prev, date) => (date ? [...prev, new Date(date).getTime()] : prev), []);
return new Date(Math.min(...list));
}
function getLatestDate(...dates) {
const list = dates.reduce((prev, date) => (date ? [...prev, new Date(date).getTime()] : prev), []);
return new Date(Math.max(...list));
}
function getPastSeconds(date) {
const now = new Date().getTime();
const pastDate = new Date(date).getTime();
return Math.floor(now - pastDate) / 1000;
}
function isDatePast(date) {
const now = new Date().toString();
const inputDate = new Date(date).toString();
return Date.parse(inputDate) < Date.parse(now);
}
function getDateFromDateTime(date) {
return `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()}`;
}
function padDigits(digits) {
return digits.toString().padStart(2, "0");
}
function formateMinutesToHours(minutes) {
const hour = Math.floor(+minutes / 60);
const minute = +minutes % 60;
return `${padDigits(hour)}:${padDigits(minute)}`;
}
function getPastYear(subtraction = 1) {
const date = new Date();
date.setFullYear(date.getFullYear() - subtraction);
return date;
}
exports.default = {
addDays,
subtractDate,
areDatesEqual,
getDifference,
subtractMinutes,
getEarliestDate,
getLatestDate,
getPastYear,
getPastSeconds,
isDatePast,
getDateFromDateTime,
padDigits,
formateMinutesToHours,
};
//# sourceMappingURL=date.helpers.js.map