This commit is contained in:
parent
9876641ff6
commit
9e985d05f1
11 changed files with 1011 additions and 70 deletions
|
|
@ -1,32 +1,59 @@
|
|||
/**
|
||||
* Holiday data for terminal calendar
|
||||
* Includes both Indian national holidays and international holidays
|
||||
* Includes Indian, American, Canadian, Australian, UK, Russian, and international holidays
|
||||
*/
|
||||
|
||||
/**
|
||||
* Fixed holidays - same date every year
|
||||
* Format: { month: 0-11, day: 1-31, name: string, type: 'indian' | 'international' }
|
||||
* Format: { month: 0-11, day: 1-31, name: string, type: string }
|
||||
*/
|
||||
export const fixedHolidays = [
|
||||
// Indian National Holidays (Fixed)
|
||||
{ month: 0, day: 26, name: 'Republic Day', type: 'indian' },
|
||||
{ month: 7, day: 15, name: 'Independence Day', type: 'indian' },
|
||||
{ month: 7, day: 15, name: 'Independence Day (India)', type: 'indian' },
|
||||
{ month: 9, day: 2, name: 'Gandhi Jayanti', type: 'indian' },
|
||||
|
||||
// American Holidays (Fixed)
|
||||
{ month: 6, day: 4, name: 'Independence Day (USA)', type: 'american' },
|
||||
{ month: 10, day: 11, name: 'Veterans Day', type: 'american' },
|
||||
|
||||
// Canadian Holidays (Fixed)
|
||||
{ month: 6, day: 1, name: 'Canada Day', type: 'canadian' },
|
||||
{ month: 10, day: 11, name: 'Remembrance Day', type: 'canadian' },
|
||||
|
||||
// Australian Holidays (Fixed)
|
||||
{ month: 0, day: 26, name: 'Australia Day', type: 'australian' },
|
||||
{ month: 3, day: 25, name: 'ANZAC Day', type: 'australian' },
|
||||
|
||||
// UK Holidays (Fixed)
|
||||
{ month: 10, day: 5, name: 'Guy Fawkes Night', type: 'uk' },
|
||||
|
||||
// Russian Holidays (Fixed)
|
||||
{ month: 0, day: 7, name: 'Orthodox Christmas', type: 'russian' },
|
||||
{ month: 1, day: 23, name: 'Defender of the Fatherland Day', type: 'russian' },
|
||||
{ month: 2, day: 8, name: "International Women's Day", type: 'russian' },
|
||||
{ month: 4, day: 1, name: 'Spring and Labour Day', type: 'russian' },
|
||||
{ month: 4, day: 9, name: 'Victory Day', type: 'russian' },
|
||||
{ month: 5, day: 12, name: 'Russia Day', type: 'russian' },
|
||||
{ month: 10, day: 4, name: 'Unity Day', type: 'russian' },
|
||||
|
||||
// International Holidays (Fixed)
|
||||
{ month: 0, day: 1, name: "New Year's Day", type: 'international' },
|
||||
{ month: 1, day: 14, name: "Valentine's Day", type: 'international' },
|
||||
{ month: 2, day: 17, name: "St. Patrick's Day", type: 'international' },
|
||||
{ month: 9, day: 31, name: 'Halloween', type: 'international' },
|
||||
{ month: 11, day: 25, name: 'Christmas', type: 'international' },
|
||||
{ month: 11, day: 26, name: 'Boxing Day', type: 'international' },
|
||||
{ month: 11, day: 31, name: "New Year's Eve", type: 'international' },
|
||||
];
|
||||
|
||||
/**
|
||||
* Variable holidays - different date each year (lunar calendar based)
|
||||
* Variable holidays - different date each year (based on lunar calendar or day of week)
|
||||
* Format: { [year]: Array<{ month: 0-11, day: 1-31, name: string, type: string }> }
|
||||
*/
|
||||
export const variableHolidays = {
|
||||
2024: [
|
||||
// Indian
|
||||
{ month: 2, day: 25, name: 'Holi', type: 'indian' },
|
||||
{ month: 3, day: 10, name: 'Eid ul-Fitr', type: 'indian' },
|
||||
{ month: 5, day: 17, name: 'Eid ul-Adha', type: 'indian' },
|
||||
|
|
@ -35,8 +62,27 @@ export const variableHolidays = {
|
|||
{ month: 8, day: 7, name: 'Ganesh Chaturthi', type: 'indian' },
|
||||
{ month: 9, day: 12, name: 'Dussehra', type: 'indian' },
|
||||
{ month: 10, day: 1, name: 'Diwali', type: 'indian' },
|
||||
// American
|
||||
{ month: 0, day: 15, name: 'MLK Day', type: 'american' },
|
||||
{ month: 1, day: 19, name: "Presidents' Day", type: 'american' },
|
||||
{ month: 4, day: 27, name: 'Memorial Day', type: 'american' },
|
||||
{ month: 8, day: 2, name: 'Labor Day', type: 'american' },
|
||||
{ month: 9, day: 14, name: 'Columbus Day', type: 'american' },
|
||||
{ month: 10, day: 28, name: 'Thanksgiving (USA)', type: 'american' },
|
||||
// Canadian
|
||||
{ month: 4, day: 20, name: 'Victoria Day', type: 'canadian' },
|
||||
{ month: 9, day: 14, name: 'Thanksgiving (Canada)', type: 'canadian' },
|
||||
// Australian
|
||||
{ month: 5, day: 10, name: "Queen's Birthday", type: 'australian' },
|
||||
// UK
|
||||
{ month: 2, day: 29, name: 'Good Friday', type: 'uk' },
|
||||
{ month: 3, day: 1, name: 'Easter Monday', type: 'uk' },
|
||||
{ month: 4, day: 6, name: 'Early May Bank Holiday', type: 'uk' },
|
||||
{ month: 4, day: 27, name: 'Spring Bank Holiday', type: 'uk' },
|
||||
{ month: 7, day: 26, name: 'Summer Bank Holiday', type: 'uk' },
|
||||
],
|
||||
2025: [
|
||||
// Indian
|
||||
{ month: 2, day: 14, name: 'Holi', type: 'indian' },
|
||||
{ month: 2, day: 31, name: 'Eid ul-Fitr', type: 'indian' },
|
||||
{ month: 5, day: 7, name: 'Eid ul-Adha', type: 'indian' },
|
||||
|
|
@ -45,8 +91,27 @@ export const variableHolidays = {
|
|||
{ month: 7, day: 27, name: 'Ganesh Chaturthi', type: 'indian' },
|
||||
{ month: 9, day: 2, name: 'Dussehra', type: 'indian' },
|
||||
{ month: 9, day: 20, name: 'Diwali', type: 'indian' },
|
||||
// American
|
||||
{ month: 0, day: 20, name: 'MLK Day', type: 'american' },
|
||||
{ month: 1, day: 17, name: "Presidents' Day", type: 'american' },
|
||||
{ month: 4, day: 26, name: 'Memorial Day', type: 'american' },
|
||||
{ month: 8, day: 1, name: 'Labor Day', type: 'american' },
|
||||
{ month: 9, day: 13, name: 'Columbus Day', type: 'american' },
|
||||
{ month: 10, day: 27, name: 'Thanksgiving (USA)', type: 'american' },
|
||||
// Canadian
|
||||
{ month: 4, day: 19, name: 'Victoria Day', type: 'canadian' },
|
||||
{ month: 9, day: 13, name: 'Thanksgiving (Canada)', type: 'canadian' },
|
||||
// Australian
|
||||
{ month: 5, day: 9, name: "Queen's Birthday", type: 'australian' },
|
||||
// UK
|
||||
{ month: 3, day: 18, name: 'Good Friday', type: 'uk' },
|
||||
{ month: 3, day: 21, name: 'Easter Monday', type: 'uk' },
|
||||
{ month: 4, day: 5, name: 'Early May Bank Holiday', type: 'uk' },
|
||||
{ month: 4, day: 26, name: 'Spring Bank Holiday', type: 'uk' },
|
||||
{ month: 7, day: 25, name: 'Summer Bank Holiday', type: 'uk' },
|
||||
],
|
||||
2026: [
|
||||
// Indian
|
||||
{ month: 2, day: 4, name: 'Holi', type: 'indian' },
|
||||
{ month: 2, day: 20, name: 'Eid ul-Fitr', type: 'indian' },
|
||||
{ month: 4, day: 27, name: 'Eid ul-Adha', type: 'indian' },
|
||||
|
|
@ -55,8 +120,27 @@ export const variableHolidays = {
|
|||
{ month: 8, day: 17, name: 'Ganesh Chaturthi', type: 'indian' },
|
||||
{ month: 8, day: 20, name: 'Dussehra', type: 'indian' },
|
||||
{ month: 10, day: 8, name: 'Diwali', type: 'indian' },
|
||||
// American
|
||||
{ month: 0, day: 19, name: 'MLK Day', type: 'american' },
|
||||
{ month: 1, day: 16, name: "Presidents' Day", type: 'american' },
|
||||
{ month: 4, day: 25, name: 'Memorial Day', type: 'american' },
|
||||
{ month: 8, day: 7, name: 'Labor Day', type: 'american' },
|
||||
{ month: 9, day: 12, name: 'Columbus Day', type: 'american' },
|
||||
{ month: 10, day: 26, name: 'Thanksgiving (USA)', type: 'american' },
|
||||
// Canadian
|
||||
{ month: 4, day: 18, name: 'Victoria Day', type: 'canadian' },
|
||||
{ month: 9, day: 12, name: 'Thanksgiving (Canada)', type: 'canadian' },
|
||||
// Australian
|
||||
{ month: 5, day: 8, name: "Queen's Birthday", type: 'australian' },
|
||||
// UK
|
||||
{ month: 3, day: 3, name: 'Good Friday', type: 'uk' },
|
||||
{ month: 3, day: 6, name: 'Easter Monday', type: 'uk' },
|
||||
{ month: 4, day: 4, name: 'Early May Bank Holiday', type: 'uk' },
|
||||
{ month: 4, day: 25, name: 'Spring Bank Holiday', type: 'uk' },
|
||||
{ month: 7, day: 31, name: 'Summer Bank Holiday', type: 'uk' },
|
||||
],
|
||||
2027: [
|
||||
// Indian
|
||||
{ month: 2, day: 22, name: 'Holi', type: 'indian' },
|
||||
{ month: 2, day: 10, name: 'Eid ul-Fitr', type: 'indian' },
|
||||
{ month: 4, day: 17, name: 'Eid ul-Adha', type: 'indian' },
|
||||
|
|
@ -65,6 +149,24 @@ export const variableHolidays = {
|
|||
{ month: 8, day: 6, name: 'Ganesh Chaturthi', type: 'indian' },
|
||||
{ month: 9, day: 9, name: 'Dussehra', type: 'indian' },
|
||||
{ month: 9, day: 28, name: 'Diwali', type: 'indian' },
|
||||
// American
|
||||
{ month: 0, day: 18, name: 'MLK Day', type: 'american' },
|
||||
{ month: 1, day: 15, name: "Presidents' Day", type: 'american' },
|
||||
{ month: 4, day: 31, name: 'Memorial Day', type: 'american' },
|
||||
{ month: 8, day: 6, name: 'Labor Day', type: 'american' },
|
||||
{ month: 9, day: 11, name: 'Columbus Day', type: 'american' },
|
||||
{ month: 10, day: 25, name: 'Thanksgiving (USA)', type: 'american' },
|
||||
// Canadian
|
||||
{ month: 4, day: 24, name: 'Victoria Day', type: 'canadian' },
|
||||
{ month: 9, day: 11, name: 'Thanksgiving (Canada)', type: 'canadian' },
|
||||
// Australian
|
||||
{ month: 5, day: 14, name: "Queen's Birthday", type: 'australian' },
|
||||
// UK
|
||||
{ month: 2, day: 26, name: 'Good Friday', type: 'uk' },
|
||||
{ month: 2, day: 29, name: 'Easter Monday', type: 'uk' },
|
||||
{ month: 4, day: 3, name: 'Early May Bank Holiday', type: 'uk' },
|
||||
{ month: 4, day: 31, name: 'Spring Bank Holiday', type: 'uk' },
|
||||
{ month: 7, day: 30, name: 'Summer Bank Holiday', type: 'uk' },
|
||||
],
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue