UNPKG

@chayns-components/date

Version:

A set of beautiful React components for developing your own applications with chayns.

63 lines 1.85 kB
import { isAfter, isBefore, startOfMonth } from './date'; export const getMonthAndYear = date => { const month = date.getMonth() + 1; const year = date.getFullYear(); return { month, year }; }; export const isDateInRange = _ref => { let { minDate, maxDate, currentDate } = _ref; const monthStartOfCurrentDate = startOfMonth(currentDate); const monthStartOfMaxDate = startOfMonth(maxDate); const monthStartOfMinDate = startOfMonth(minDate); switch (true) { case isAfter(monthStartOfCurrentDate, monthStartOfMaxDate): return monthStartOfMaxDate; case isBefore(monthStartOfCurrentDate, monthStartOfMinDate): return monthStartOfMinDate; default: return monthStartOfCurrentDate; } }; export const getNewDate = (index, currentDate) => { const newDate = new Date(currentDate); newDate.setMonth(currentDate.getMonth() + index); if (currentDate.getMonth() === 11 && newDate.getMonth() === 0) { newDate.setFullYear(currentDate.getFullYear() + 1); } if (currentDate.getMonth() === 0 && newDate.getMonth() === 11) { newDate.setFullYear(currentDate.getFullYear() - 1); } return newDate; }; export const formatMonth = _ref2 => { let { month, locale } = _ref2; const date = new Date(2022, month - 1, 1); return date.toLocaleString(locale, { month: 'long' }); }; export const findNextDate = (date, dateArray) => { const futureDates = dateArray.filter(d => d > date); futureDates.sort((a, b) => a.getTime() - b.getTime()); return futureDates[0]; }; export const getYearsBetween = (startDate, endDate) => { const startYear = startDate.getFullYear(); const endYear = endDate.getFullYear(); const years = []; for (let year = startYear; year <= endYear; year++) { years.push(year); } return years; }; //# sourceMappingURL=calendar.js.map