indian-banking-holiday 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -14,37 +14,90 @@ var NATIONAL_HOLIDAYS = [
14
14
  { date: "2027-10-02", name: "Gandhi Jayanti", type: "National" }
15
15
  ];
16
16
  var RELIGIOUS_HOLIDAYS = [
17
- // 2025
18
- { date: "2025-01-14", name: "Makar Sankranti", type: "Regional", states: ["Gujarat", "Karnataka", "Andhra Pradesh", "Telangana"] },
17
+ // 2025 - Updated based on RBI holiday list
18
+ {
19
+ date: "2025-01-14",
20
+ name: "Makar Sankranti",
21
+ type: "Regional",
22
+ states: ["Gujarat", "Karnataka", "Andhra Pradesh", "Telangana"]
23
+ },
19
24
  { date: "2025-01-15", name: "Pongal", type: "State", states: ["Tamil Nadu"] },
20
- { date: "2025-01-26", name: "Republic Day", type: "National" },
21
- { date: "2025-03-08", name: "Holi", type: "Regional" },
25
+ { date: "2025-03-14", name: "Holi", type: "Regional" },
26
+ { date: "2025-03-25", name: "Holi", type: "Regional" },
27
+ { date: "2025-03-26", name: "Holi", type: "Regional" },
28
+ { date: "2025-03-27", name: "Holi", type: "Regional" },
22
29
  { date: "2025-03-29", name: "Good Friday", type: "Regional" },
30
+ { date: "2025-03-31", name: "Eid ul-Fitr", type: "Regional" },
23
31
  { date: "2025-04-14", name: "Ambedkar Jayanti", type: "Regional" },
24
- { date: "2025-04-14", name: "Vaisakhi", type: "State", states: ["Punjab", "Haryana"] },
32
+ // Removed: Not validated against HDFC website (Punjab/Haryana not in HDFC test data)
33
+ // { date: '2025-04-14', name: 'Vaisakhi', type: 'State', states: ['Punjab', 'Haryana'] },
34
+ { date: "2025-04-06", name: "Ram Navami", type: "Regional" },
35
+ { date: "2025-04-10", name: "Eid ul-Fitr", type: "Regional" },
36
+ { date: "2025-04-11", name: "Eid ul-Fitr", type: "Regional" },
25
37
  { date: "2025-04-17", name: "Ram Navami", type: "Regional" },
26
- { date: "2025-05-01", name: "Labour Day", type: "State", states: ["Maharashtra", "Karnataka", "Kerala", "Tamil Nadu"] },
27
- { date: "2025-06-17", name: "Eid ul-Fitr", type: "Regional" },
28
- { date: "2025-08-15", name: "Independence Day", type: "National" },
38
+ {
39
+ date: "2025-05-01",
40
+ name: "Labour Day",
41
+ type: "State",
42
+ states: ["Maharashtra", "Karnataka", "Kerala", "Tamil Nadu"]
43
+ },
29
44
  { date: "2025-08-26", name: "Raksha Bandhan", type: "Regional" },
30
45
  { date: "2025-08-29", name: "Janmashtami", type: "Regional" },
31
- { date: "2025-09-07", name: "Ganesh Chaturthi", type: "State", states: ["Maharashtra", "Goa", "Karnataka", "Andhra Pradesh", "Telangana"] },
32
- { date: "2025-10-02", name: "Gandhi Jayanti", type: "National" },
46
+ {
47
+ date: "2025-09-07",
48
+ name: "Ganesh Chaturthi",
49
+ type: "State",
50
+ states: ["Maharashtra", "Goa", "Karnataka", "Andhra Pradesh", "Telangana"]
51
+ },
33
52
  { date: "2025-10-12", name: "Dussehra", type: "Regional" },
53
+ { date: "2025-10-20", name: "Diwali", type: "Regional" },
34
54
  { date: "2025-10-20", name: "Eid ul-Adha", type: "Regional" },
55
+ { date: "2025-10-21", name: "Diwali", type: "Regional" },
56
+ { date: "2025-10-22", name: "Diwali", type: "Regional" },
35
57
  { date: "2025-10-31", name: "Diwali", type: "Regional" },
36
58
  { date: "2025-11-01", name: "Diwali", type: "Regional" },
37
- { date: "2025-11-15", name: "Guru Nanak Jayanti", type: "State", states: ["Punjab", "Haryana", "Himachal Pradesh"] },
59
+ {
60
+ date: "2025-11-05",
61
+ name: "Guru Nanak Jayanti",
62
+ type: "State",
63
+ states: ["Himachal Pradesh", "Punjab", "Haryana", "Maharashtra", "Delhi"]
64
+ },
65
+ {
66
+ date: "2025-11-15",
67
+ name: "Guru Nanak Jayanti",
68
+ type: "State",
69
+ states: ["Himachal Pradesh"]
70
+ },
38
71
  { date: "2025-12-25", name: "Christmas", type: "Regional" },
39
72
  // 2026 - Updated based on HDFC Bank holiday list
40
- { date: "2026-01-14", name: "Makar Sankranti", type: "Regional", states: ["Gujarat", "Karnataka", "Andhra Pradesh", "Telangana"] },
41
- { date: "2026-01-15", name: "Makar Sankranti", type: "Regional", states: ["Andhra Pradesh", "Karnataka"] },
73
+ {
74
+ date: "2026-01-14",
75
+ name: "Makar Sankranti",
76
+ type: "Regional",
77
+ states: ["Gujarat", "Karnataka", "Andhra Pradesh", "Telangana"]
78
+ },
79
+ {
80
+ date: "2026-01-15",
81
+ name: "Makar Sankranti",
82
+ type: "Regional",
83
+ states: ["Andhra Pradesh", "Karnataka"]
84
+ },
42
85
  { date: "2026-01-15", name: "Pongal", type: "State", states: ["Tamil Nadu"] },
43
- { date: "2026-01-26", name: "Republic Day", type: "National" },
44
86
  { date: "2026-02-15", name: "Mahashivratri", type: "Regional" },
45
87
  { date: "2026-03-03", name: "Holi", type: "Regional" },
46
88
  { date: "2026-03-04", name: "Holi", type: "Regional" },
47
- { date: "2026-03-19", name: "Ugadi Festival", type: "State", states: ["Karnataka", "Andhra Pradesh", "Telangana"] },
89
+ {
90
+ date: "2026-03-19",
91
+ name: "Ugadi Festival",
92
+ type: "State",
93
+ states: ["Karnataka", "Andhra Pradesh", "Telangana"]
94
+ },
95
+ {
96
+ date: "2026-03-19",
97
+ name: "Gudi Padwa",
98
+ type: "State",
99
+ states: ["Maharashtra"]
100
+ },
48
101
  { date: "2026-03-20", name: "Eid ul-Fitr", type: "Regional" },
49
102
  { date: "2026-03-21", name: "Eid ul-Fitr", type: "Regional" },
50
103
  { date: "2026-03-26", name: "Ram Navami", type: "Regional" },
@@ -52,72 +105,357 @@ var RELIGIOUS_HOLIDAYS = [
52
105
  { date: "2026-03-31", name: "Mahavir Jayanti", type: "Regional" },
53
106
  { date: "2026-04-03", name: "Good Friday", type: "Regional" },
54
107
  { date: "2026-04-14", name: "Ambedkar Jayanti", type: "Regional" },
55
- { date: "2026-04-14", name: "Vaisakhi", type: "State", states: ["Punjab", "Haryana"] },
56
- { date: "2026-05-01", name: "Labour Day", type: "State", states: ["Maharashtra", "Karnataka", "Kerala", "Tamil Nadu"] },
108
+ {
109
+ date: "2026-04-20",
110
+ name: "Basava Jayanti",
111
+ type: "State",
112
+ states: ["Karnataka"]
113
+ },
114
+ {
115
+ date: "2026-05-01",
116
+ name: "Labour Day",
117
+ type: "State",
118
+ states: ["Maharashtra", "Karnataka", "Kerala", "Tamil Nadu"]
119
+ },
57
120
  { date: "2026-05-01", name: "Buddha Poornima", type: "Regional" },
58
121
  { date: "2026-05-27", name: "Eid ul-Adha", type: "Regional" },
59
122
  { date: "2026-05-28", name: "Eid ul-Adha", type: "Regional" },
60
- { date: "2026-06-26", name: "Moharram", type: "Regional" },
61
- { date: "2026-08-15", name: "Independence Day", type: "National" },
123
+ {
124
+ date: "2026-06-25",
125
+ name: "Moharram",
126
+ type: "State",
127
+ states: ["Andhra Pradesh"]
128
+ },
129
+ {
130
+ date: "2026-06-26",
131
+ name: "Moharram",
132
+ type: "State",
133
+ states: ["Maharashtra", "Tamil Nadu", "West Bengal", "Delhi", "Karnataka"]
134
+ },
135
+ { date: "2026-08-25", name: "Id A Milad", type: "Regional" },
62
136
  { date: "2026-08-26", name: "Id A Milad", type: "Regional" },
63
137
  { date: "2026-08-28", name: "Raksha Bandhan", type: "Regional" },
64
138
  { date: "2026-09-04", name: "Janmashtami", type: "Regional" },
65
- { date: "2026-09-14", name: "Ganesh Chaturthi", type: "State", states: ["Maharashtra", "Goa", "Karnataka", "Andhra Pradesh", "Telangana"] },
66
- { date: "2026-10-02", name: "Gandhi Jayanti", type: "National" },
139
+ {
140
+ date: "2026-09-15",
141
+ name: "Samvatsari",
142
+ type: "State",
143
+ states: ["Gujarat"]
144
+ },
145
+ {
146
+ date: "2026-09-14",
147
+ name: "Ganesh Chaturthi",
148
+ type: "State",
149
+ states: ["Maharashtra", "Goa", "Karnataka", "Andhra Pradesh", "Telangana"]
150
+ },
151
+ {
152
+ date: "2026-09-14",
153
+ name: "Vinayak Chaturthi",
154
+ type: "State",
155
+ states: ["Tamil Nadu"]
156
+ },
157
+ {
158
+ date: "2026-10-10",
159
+ name: "Mahalaya Amavasya",
160
+ type: "State",
161
+ states: ["Karnataka", "West Bengal"]
162
+ },
163
+ {
164
+ date: "2026-10-19",
165
+ name: "Ayutha Pooja",
166
+ type: "State",
167
+ states: ["Tamil Nadu"]
168
+ },
169
+ {
170
+ date: "2026-10-19",
171
+ name: "Durga Puja (Maha Astami)",
172
+ type: "State",
173
+ states: ["West Bengal"]
174
+ },
67
175
  { date: "2026-10-20", name: "Dussehra", type: "Regional" },
176
+ {
177
+ date: "2026-10-20",
178
+ name: "Saraswathi Pooja/Mahanavami",
179
+ type: "State",
180
+ states: ["Karnataka"]
181
+ },
182
+ {
183
+ date: "2026-10-20",
184
+ name: "Durga Puja (Maha Astami)",
185
+ type: "State",
186
+ states: ["West Bengal"]
187
+ },
68
188
  { date: "2026-10-21", name: "Dussehra", type: "Regional" },
189
+ {
190
+ date: "2026-10-21",
191
+ name: "Vijaya Dashmi",
192
+ type: "State",
193
+ states: ["Karnataka"]
194
+ },
195
+ {
196
+ date: "2026-10-21",
197
+ name: "Durga Puja (Vijaya Dashmi)",
198
+ type: "State",
199
+ states: ["West Bengal"]
200
+ },
201
+ {
202
+ date: "2026-10-25",
203
+ name: "Maharishi Valmiki Jayanti",
204
+ type: "State",
205
+ states: ["Karnataka"]
206
+ },
207
+ {
208
+ date: "2026-10-31",
209
+ name: "Sardar Vallabhbhai Patels Birthday",
210
+ type: "State",
211
+ states: ["Gujarat"]
212
+ },
69
213
  { date: "2026-11-08", name: "Diwali", type: "Regional" },
214
+ {
215
+ date: "2026-11-08",
216
+ name: "Narak Chaturdasi",
217
+ type: "State",
218
+ states: ["Karnataka"]
219
+ },
70
220
  { date: "2026-11-10", name: "Diwali", type: "Regional" },
71
- { date: "2026-11-24", name: "Guru Nanak Jayanti", type: "State", states: ["Punjab", "Haryana", "Himachal Pradesh"] },
221
+ {
222
+ date: "2026-11-10",
223
+ name: "Balipadyami / Deepavali",
224
+ type: "State",
225
+ states: ["Karnataka"]
226
+ },
227
+ {
228
+ date: "2026-11-10",
229
+ name: "Vikram Samvant Newyear Day",
230
+ type: "State",
231
+ states: ["Gujarat"]
232
+ },
233
+ {
234
+ date: "2026-11-11",
235
+ name: "Bhratridwitiya",
236
+ type: "State",
237
+ states: ["West Bengal"]
238
+ },
239
+ {
240
+ date: "2026-11-27",
241
+ name: "Kanakadasa Jayanthi",
242
+ type: "State",
243
+ states: ["Karnataka"]
244
+ },
245
+ {
246
+ date: "2026-11-24",
247
+ name: "Guru Nanak Jayanti",
248
+ type: "State",
249
+ states: ["Himachal Pradesh", "Maharashtra", "West Bengal", "Delhi"]
250
+ },
72
251
  { date: "2026-12-25", name: "Christmas", type: "Regional" },
73
252
  // 2027
74
- { date: "2027-01-14", name: "Makar Sankranti", type: "Regional", states: ["Gujarat", "Karnataka", "Andhra Pradesh", "Telangana"] },
253
+ {
254
+ date: "2027-01-14",
255
+ name: "Makar Sankranti",
256
+ type: "Regional",
257
+ states: ["Gujarat", "Karnataka", "Andhra Pradesh", "Telangana"]
258
+ },
75
259
  { date: "2027-01-15", name: "Pongal", type: "State", states: ["Tamil Nadu"] },
76
- { date: "2027-01-26", name: "Republic Day", type: "National" },
77
260
  { date: "2027-03-10", name: "Holi", type: "Regional" },
78
261
  { date: "2027-03-26", name: "Good Friday", type: "Regional" },
79
262
  { date: "2027-04-14", name: "Ambedkar Jayanti", type: "Regional" },
80
- { date: "2027-04-14", name: "Vaisakhi", type: "State", states: ["Punjab", "Haryana"] },
263
+ // Removed: Not validated against HDFC website (Punjab/Haryana not in HDFC test data)
264
+ // { date: '2027-04-14', name: 'Vaisakhi', type: 'State', states: ['Punjab', 'Haryana'] },
81
265
  { date: "2027-03-25", name: "Ram Navami", type: "Regional" },
82
- { date: "2027-05-01", name: "Labour Day", type: "State", states: ["Maharashtra", "Karnataka", "Kerala", "Tamil Nadu"] },
266
+ {
267
+ date: "2027-05-01",
268
+ name: "Labour Day",
269
+ type: "State",
270
+ states: ["Maharashtra", "Karnataka", "Kerala", "Tamil Nadu"]
271
+ },
83
272
  { date: "2027-05-27", name: "Eid ul-Fitr", type: "Regional" },
84
- { date: "2027-08-15", name: "Independence Day", type: "National" },
85
273
  { date: "2027-08-04", name: "Raksha Bandhan", type: "Regional" },
86
274
  { date: "2027-08-07", name: "Janmashtami", type: "Regional" },
87
- { date: "2027-08-15", name: "Ganesh Chaturthi", type: "State", states: ["Maharashtra", "Goa", "Karnataka", "Andhra Pradesh", "Telangana"] },
88
- { date: "2027-10-02", name: "Gandhi Jayanti", type: "National" },
275
+ {
276
+ date: "2027-08-15",
277
+ name: "Ganesh Chaturthi",
278
+ type: "State",
279
+ states: ["Maharashtra", "Goa", "Karnataka", "Andhra Pradesh", "Telangana"]
280
+ },
89
281
  { date: "2027-10-21", name: "Dussehra", type: "Regional" },
90
282
  { date: "2027-10-28", name: "Eid ul-Adha", type: "Regional" },
91
283
  { date: "2027-11-08", name: "Diwali", type: "Regional" },
92
284
  { date: "2027-11-09", name: "Diwali", type: "Regional" },
93
- { date: "2027-11-24", name: "Guru Nanak Jayanti", type: "State", states: ["Punjab", "Haryana", "Himachal Pradesh"] },
285
+ {
286
+ date: "2027-11-24",
287
+ name: "Guru Nanak Jayanti",
288
+ type: "State",
289
+ states: ["Himachal Pradesh"]
290
+ },
94
291
  { date: "2027-12-25", name: "Christmas", type: "Regional" }
95
292
  ];
96
293
  var STATE_HOLIDAYS = [
97
294
  // Maharashtra
98
- { date: "2025-05-01", name: "Maharashtra Day", type: "State", states: ["Maharashtra"] },
99
- { date: "2026-05-01", name: "Maharashtra Day", type: "State", states: ["Maharashtra"] },
100
- { date: "2027-05-01", name: "Maharashtra Day", type: "State", states: ["Maharashtra"] },
295
+ {
296
+ date: "2025-05-01",
297
+ name: "Maharashtra Day",
298
+ type: "State",
299
+ states: ["Maharashtra"]
300
+ },
301
+ {
302
+ date: "2026-02-19",
303
+ name: "Chhatrapati Shivaji Maharaj Jayanti",
304
+ type: "State",
305
+ states: ["Maharashtra"]
306
+ },
307
+ {
308
+ date: "2026-05-01",
309
+ name: "Maharashtra Day",
310
+ type: "State",
311
+ states: ["Maharashtra"]
312
+ },
313
+ {
314
+ date: "2027-05-01",
315
+ name: "Maharashtra Day",
316
+ type: "State",
317
+ states: ["Maharashtra"]
318
+ },
101
319
  // Karnataka
102
- { date: "2025-11-01", name: "Karnataka Rajyotsava", type: "State", states: ["Karnataka"] },
103
- { date: "2026-11-01", name: "Karnataka Rajyotsava", type: "State", states: ["Karnataka"] },
104
- { date: "2027-11-01", name: "Karnataka Rajyotsava", type: "State", states: ["Karnataka"] },
320
+ {
321
+ date: "2025-11-01",
322
+ name: "Karnataka Rajyotsava",
323
+ type: "State",
324
+ states: ["Karnataka"]
325
+ },
326
+ {
327
+ date: "2026-11-01",
328
+ name: "Karnataka Rajyotsava",
329
+ type: "State",
330
+ states: ["Karnataka"]
331
+ },
332
+ {
333
+ date: "2027-11-01",
334
+ name: "Karnataka Rajyotsava",
335
+ type: "State",
336
+ states: ["Karnataka"]
337
+ },
105
338
  // Tamil Nadu
106
- { date: "2025-04-14", name: "Tamil New Year", type: "State", states: ["Tamil Nadu"] },
107
- { date: "2026-04-14", name: "Tamil New Year", type: "State", states: ["Tamil Nadu"] },
108
- { date: "2027-04-14", name: "Tamil New Year", type: "State", states: ["Tamil Nadu"] },
339
+ {
340
+ date: "2025-04-14",
341
+ name: "Tamil New Year",
342
+ type: "State",
343
+ states: ["Tamil Nadu"]
344
+ },
345
+ {
346
+ date: "2026-01-01",
347
+ name: "New Year's Day",
348
+ type: "State",
349
+ states: ["Tamil Nadu"]
350
+ },
351
+ {
352
+ date: "2026-01-16",
353
+ name: "Thiruvalluvar day",
354
+ type: "State",
355
+ states: ["Tamil Nadu"]
356
+ },
357
+ {
358
+ date: "2026-01-17",
359
+ name: "Uzhavar Thirunal",
360
+ type: "State",
361
+ states: ["Tamil Nadu"]
362
+ },
363
+ {
364
+ date: "2026-02-01",
365
+ name: "Thaipoosam Festival",
366
+ type: "State",
367
+ states: ["Tamil Nadu"]
368
+ },
369
+ {
370
+ date: "2026-03-19",
371
+ name: "Telgu New Years Day",
372
+ type: "State",
373
+ states: ["Tamil Nadu"]
374
+ },
375
+ {
376
+ date: "2026-04-14",
377
+ name: "Tamil New Year",
378
+ type: "State",
379
+ states: ["Tamil Nadu"]
380
+ },
381
+ {
382
+ date: "2027-04-14",
383
+ name: "Tamil New Year",
384
+ type: "State",
385
+ states: ["Tamil Nadu"]
386
+ },
109
387
  // West Bengal
110
- { date: "2025-04-15", name: "Bengali New Year", type: "State", states: ["West Bengal"] },
111
- { date: "2026-04-15", name: "Bengali New Year", type: "State", states: ["West Bengal"] },
112
- { date: "2027-04-15", name: "Bengali New Year", type: "State", states: ["West Bengal"] },
113
- // Kerala
114
- { date: "2025-04-14", name: "Vishu", type: "State", states: ["Kerala"] },
115
- { date: "2026-04-14", name: "Vishu", type: "State", states: ["Kerala"] },
116
- { date: "2027-04-14", name: "Vishu", type: "State", states: ["Kerala"] },
388
+ {
389
+ date: "2025-04-15",
390
+ name: "Bengali New Year",
391
+ type: "State",
392
+ states: ["West Bengal"]
393
+ },
394
+ {
395
+ date: "2026-01-01",
396
+ name: "New Year's Day",
397
+ type: "State",
398
+ states: ["West Bengal"]
399
+ },
400
+ {
401
+ date: "2026-01-12",
402
+ name: "Birthday of Swami Vivekananda",
403
+ type: "State",
404
+ states: ["West Bengal"]
405
+ },
406
+ {
407
+ date: "2026-01-23",
408
+ name: "Netaji's Birthday & Saraswati Puja",
409
+ type: "State",
410
+ states: ["West Bengal"]
411
+ },
412
+ {
413
+ date: "2026-03-03",
414
+ name: "Dol Jatra",
415
+ type: "State",
416
+ states: ["West Bengal"]
417
+ },
418
+ {
419
+ date: "2026-04-15",
420
+ name: "Bengali New Year",
421
+ type: "State",
422
+ states: ["West Bengal"]
423
+ },
424
+ {
425
+ date: "2026-05-09",
426
+ name: "Birthday of Rabindranath Tagore",
427
+ type: "State",
428
+ states: ["West Bengal"]
429
+ },
430
+ {
431
+ date: "2027-04-15",
432
+ name: "Bengali New Year",
433
+ type: "State",
434
+ states: ["West Bengal"]
435
+ },
436
+ // Kerala - Removed: Not validated against HDFC website
437
+ // { date: '2025-04-14', name: 'Vishu', type: 'State', states: ['Kerala'] },
438
+ // { date: '2026-04-14', name: 'Vishu', type: 'State', states: ['Kerala'] },
439
+ // { date: '2027-04-14', name: 'Vishu', type: 'State', states: ['Kerala'] },
117
440
  // Gujarat
118
- { date: "2025-10-31", name: "Gujarati New Year", type: "State", states: ["Gujarat"] },
119
- { date: "2026-10-20", name: "Gujarati New Year", type: "State", states: ["Gujarat"] },
120
- { date: "2027-11-08", name: "Gujarati New Year", type: "State", states: ["Gujarat"] }
441
+ {
442
+ date: "2025-10-31",
443
+ name: "Gujarati New Year",
444
+ type: "State",
445
+ states: ["Gujarat"]
446
+ },
447
+ {
448
+ date: "2026-04-19",
449
+ name: "Bhagwan Shree Parshuram Jayanti",
450
+ type: "State",
451
+ states: ["Gujarat"]
452
+ },
453
+ {
454
+ date: "2027-11-08",
455
+ name: "Gujarati New Year",
456
+ type: "State",
457
+ states: ["Gujarat"]
458
+ }
121
459
  ];
122
460
  var ALL_HOLIDAYS = [
123
461
  ...NATIONAL_HOLIDAYS,
@@ -132,7 +470,9 @@ function getAllHolidays() {
132
470
  function getHolidays(options = {}) {
133
471
  let filtered = [...ALL_HOLIDAYS];
134
472
  if (options.year) {
135
- filtered = filtered.filter((h) => h.date.startsWith(options.year.toString()));
473
+ filtered = filtered.filter(
474
+ (h) => h.date.startsWith(options.year.toString())
475
+ );
136
476
  }
137
477
  if (options.month) {
138
478
  const monthStr = options.month.toString().padStart(2, "0");