indian-date-utils-suratwala
Version:
Date utilities for Indian calendar such as formatted IST, holiday checking, and more.
52 lines (47 loc) • 1.62 kB
JavaScript
import { format, parseISO, isSunday } from 'date-fns';
export const gazettedHolidays = [
"2025-01-26", // Republic Day
"2025-03-17", // Holi
"2025-04-10", // Mahavir Jayanti
"2025-04-18", // Good Friday
"2025-05-01", // Maharashtra Day
"2025-08-15", // Independence Day
"2025-10-02", // Gandhi Jayanti
"2025-10-20", // Diwali
"2025-11-06", // Bhai Dooj
"2025-12-25" // Christmas
];
export const restrictedHolidays = [
"2025-01-01", // New Year's Day
"2025-01-06", // Guru Gobind Singh Jayanti
"2025-02-14", // Vasant Panchami
"2025-03-01", // Shivaji Jayanti
"2025-03-08", // International Women's Day
"2025-04-01", // Bank Closing
"2025-05-09", // Rabindranath Tagore Jayanti
"2025-07-06", // Rath Yatra
"2025-08-19", // Parsi New Year
"2025-09-23", // Anant Chaturdashi
"2025-10-02", // Dussehra
"2025-11-01", // Kannada Rajyotsava
"2025-12-24" // Christmas Eve
];
export function analyzeHolidays(holidays, title) {
console.log(`\n${title} Holidays in 2025:`);
holidays.forEach(dateStr => {
const date = parseISO(dateStr);
const day = format(date, 'EEEE');
const note = isSunday(date) ? ' (Sunday)' : '';
console.log(`• ${dateStr} (${day})${note}`);
});
const sundays = holidays.filter(d => isSunday(parseISO(d)));
if (sundays.length) {
console.log(`\n${title} Holidays on Sunday:`);
sundays.forEach(d => {
const day = format(parseISO(d), 'EEEE');
console.log(`• ${d} (${day})`);
});
} else {
console.log(`No ${title} holidays fall on Sunday.`);
}
}