holidays 0.72__py3-none-any.whl → 0.74__py3-none-any.whl

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.
Files changed (93) hide show
  1. holidays/calendars/hindu.py +147 -3
  2. holidays/constants.py +8 -1
  3. holidays/countries/__init__.py +10 -0
  4. holidays/countries/aland_islands.py +63 -0
  5. holidays/countries/andorra.py +130 -46
  6. holidays/countries/angola.py +2 -2
  7. holidays/countries/argentina.py +12 -2
  8. holidays/countries/azerbaijan.py +1 -1
  9. holidays/countries/belgium.py +1 -1
  10. holidays/countries/benin.py +199 -0
  11. holidays/countries/bermuda.py +141 -0
  12. holidays/countries/british_virgin_islands.py +205 -0
  13. holidays/countries/chile.py +1 -1
  14. holidays/countries/cocos_islands.py +259 -0
  15. holidays/countries/curacao.py +1 -1
  16. holidays/countries/dominican_republic.py +1 -1
  17. holidays/countries/ecuador.py +1 -1
  18. holidays/countries/equatorial_guinea.py +150 -0
  19. holidays/countries/ethiopia.py +1 -1
  20. holidays/countries/finland.py +200 -36
  21. holidays/countries/grenada.py +143 -0
  22. holidays/countries/italy.py +1 -1
  23. holidays/countries/ivory_coast.py +1 -1
  24. holidays/countries/kazakhstan.py +23 -23
  25. holidays/countries/malaysia.py +0 -8
  26. holidays/countries/mexico.py +1 -1
  27. holidays/countries/morocco.py +1 -1
  28. holidays/countries/nepal.py +441 -0
  29. holidays/countries/north_macedonia.py +267 -15
  30. holidays/countries/norway.py +1 -1
  31. holidays/countries/panama.py +1 -1
  32. holidays/countries/paraguay.py +1 -1
  33. holidays/countries/philippines.py +2 -0
  34. holidays/countries/slovenia.py +1 -1
  35. holidays/countries/sweden.py +1 -1
  36. holidays/countries/thailand.py +2 -2
  37. holidays/countries/togo.py +182 -0
  38. holidays/countries/trinidad_and_tobago.py +1 -1
  39. holidays/countries/tuvalu.py +1 -1
  40. holidays/countries/ukraine.py +44 -44
  41. holidays/countries/united_states.py +1 -1
  42. holidays/countries/vatican_city.py +29 -31
  43. holidays/countries/venezuela.py +1 -1
  44. holidays/countries/yemen.py +207 -0
  45. holidays/groups/chinese.py +3 -3
  46. holidays/groups/christian.py +7 -7
  47. holidays/groups/hindu.py +121 -1
  48. holidays/groups/international.py +9 -9
  49. holidays/groups/islamic.py +3 -3
  50. holidays/locale/ar/LC_MESSAGES/YE.mo +0 -0
  51. holidays/locale/ca/LC_MESSAGES/AD.mo +0 -0
  52. holidays/locale/coa_CC/LC_MESSAGES/CC.mo +0 -0
  53. holidays/locale/en_CC/LC_MESSAGES/CC.mo +0 -0
  54. holidays/locale/en_GD/LC_MESSAGES/GD.mo +0 -0
  55. holidays/locale/en_US/LC_MESSAGES/AD.mo +0 -0
  56. holidays/locale/en_US/LC_MESSAGES/AR.mo +0 -0
  57. holidays/locale/en_US/LC_MESSAGES/AX.mo +0 -0
  58. holidays/locale/en_US/LC_MESSAGES/BJ.mo +0 -0
  59. holidays/locale/en_US/LC_MESSAGES/CC.mo +0 -0
  60. holidays/locale/en_US/LC_MESSAGES/FI.mo +0 -0
  61. holidays/locale/en_US/LC_MESSAGES/GD.mo +0 -0
  62. holidays/locale/en_US/LC_MESSAGES/GQ.mo +0 -0
  63. holidays/locale/en_US/LC_MESSAGES/MK.mo +0 -0
  64. holidays/locale/en_US/LC_MESSAGES/TG.mo +0 -0
  65. holidays/locale/en_US/LC_MESSAGES/TH.mo +0 -0
  66. holidays/locale/en_US/LC_MESSAGES/VG.mo +0 -0
  67. holidays/locale/en_US/LC_MESSAGES/YE.mo +0 -0
  68. holidays/locale/en_VG/LC_MESSAGES/VG.mo +0 -0
  69. holidays/locale/es/LC_MESSAGES/AR.mo +0 -0
  70. holidays/locale/es/LC_MESSAGES/GQ.mo +0 -0
  71. holidays/locale/fi/LC_MESSAGES/AX.mo +0 -0
  72. holidays/locale/fi/LC_MESSAGES/FI.mo +0 -0
  73. holidays/locale/fr/LC_MESSAGES/TG.mo +0 -0
  74. holidays/locale/fr_BJ/LC_MESSAGES/BJ.mo +0 -0
  75. holidays/locale/mk/LC_MESSAGES/MK.mo +0 -0
  76. holidays/locale/sv_FI/LC_MESSAGES/AX.mo +0 -0
  77. holidays/locale/sv_FI/LC_MESSAGES/FI.mo +0 -0
  78. holidays/locale/th/LC_MESSAGES/AX.mo +0 -0
  79. holidays/locale/th/LC_MESSAGES/FI.mo +0 -0
  80. holidays/locale/uk/LC_MESSAGES/AD.mo +0 -0
  81. holidays/locale/uk/LC_MESSAGES/AR.mo +0 -0
  82. holidays/locale/uk/LC_MESSAGES/AX.mo +0 -0
  83. holidays/locale/uk/LC_MESSAGES/FI.mo +0 -0
  84. holidays/locale/uk/LC_MESSAGES/MK.mo +0 -0
  85. holidays/locale/uk/LC_MESSAGES/TH.mo +0 -0
  86. holidays/registry.py +10 -0
  87. holidays/version.py +1 -1
  88. {holidays-0.72.dist-info → holidays-0.74.dist-info}/METADATA +80 -10
  89. {holidays-0.72.dist-info → holidays-0.74.dist-info}/RECORD +93 -55
  90. {holidays-0.72.dist-info → holidays-0.74.dist-info}/WHEEL +1 -1
  91. {holidays-0.72.dist-info → holidays-0.74.dist-info}/licenses/CONTRIBUTORS +2 -0
  92. {holidays-0.72.dist-info → holidays-0.74.dist-info}/licenses/LICENSE +0 -0
  93. {holidays-0.72.dist-info → holidays-0.74.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,259 @@
1
+ # holidays
2
+ # --------
3
+ # A fast, efficient Python library for generating country, province and state
4
+ # specific sets of holidays on the fly. It aims to make determining whether a
5
+ # specific date is a holiday as fast and flexible as possible.
6
+ #
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
+ # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
+ # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
+ # Website: https://github.com/vacanza/holidays
11
+ # License: MIT (see LICENSE file)
12
+
13
+ from gettext import gettext as tr
14
+
15
+ from holidays.calendars import _CustomIslamicHolidays
16
+ from holidays.calendars.gregorian import JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC
17
+ from holidays.groups import (
18
+ ChristianHolidays,
19
+ InternationalHolidays,
20
+ IslamicHolidays,
21
+ StaticHolidays,
22
+ )
23
+ from holidays.observed_holiday_base import (
24
+ ObservedHolidayBase,
25
+ MON_TO_NEXT_TUE,
26
+ SAT_SUN_TO_NEXT_MON,
27
+ SAT_SUN_TO_NEXT_MON_TUE,
28
+ )
29
+
30
+
31
+ class CocosIslands(
32
+ ObservedHolidayBase, ChristianHolidays, InternationalHolidays, IslamicHolidays, StaticHolidays
33
+ ):
34
+ """Cocos (Keeling) Islands holidays.
35
+
36
+ References:
37
+ * <https://en.wikipedia.org/wiki/Public_holidays_in_the_Cocos_(Keeling)_Islands>
38
+ * <https://www.infrastructure.gov.au/territories-regions-cities/territories/indian-ocean-territories/community-bulletins>
39
+ * <https://www.infrastructure.gov.au/territories-regions-cities/territories/indian-ocean-territories/gazettes-bulletins>
40
+
41
+ * [2007](https://www.infrastructure.gov.au/sites/default/files/migrated/territories/indian_ocean/iot_gazette/files/2006/02_2006_Public_Holidays_2007_CKI.doc)
42
+ * [2008](https://web.archive.org/web/20240718120923/https://www.infrastructure.gov.au/sites/default/files/migrated/territories/indian_ocean/iot_gazette/files/2007/06-2007_Public_Holidays_CKI.pdf)
43
+ * [2008 Eid al-Fitr](https://web.archive.org/web/20240331104649/https://www.infrastructure.gov.au/sites/default/files/migrated/territories/indian_ocean/iot_gazette/files/2008/03_2008_Observance_of_Hari_Raya_Puasa_2008.pdf)
44
+ * [2009](https://web.archive.org/web/20231208153529/https://www.infrastructure.gov.au/sites/default/files/migrated/territories/indian_ocean/iot_gazette/files/2008/01-2008-2009-public-holiday-CKI-gazette.pdf)
45
+ * [2010](https://www.infrastructure.gov.au/sites/default/files/migrated/territories/indian_ocean/iot_gazette/files/2009/2009-Gazette_6-2009-CKI-Proclamation_of_2010_Special_Public_Bank_Holidays.pdf)
46
+ * [2013](https://web.archive.org/web/20240805055409/https://www.infrastructure.gov.au/sites/default/files/migrated/territories/indian_ocean/iot_gazette/files/2012/2012-Gazette_8-2012-CKI-Proclamation_of_2013_Public_Holidays_for_Cocos_(Keeling)_Islands.pdf)
47
+ * [2014](https://web.archive.org/web/20240718123844/https://www.infrastructure.gov.au/sites/default/files/migrated/territories/indian_ocean/iot_gazette/files/2013/2013-Gazette_3-2013-Cocos_K_Islands_2014_Public_Holidays.pdf)
48
+ * [2016](https://www.infrastructure.gov.au/sites/default/files/migrated/territories/indian_ocean/iot_gazette/files/2015/2015-Gazette_4-2015-CKI-Proclamation_of_2016_Special_Public_Bank_Holidays.pdf)
49
+ * [2016 Eid al-Fitr](https://web.archive.org/web/20231208203746/https://www.infrastructure.gov.au/sites/default/files/migrated/territories/indian_ocean/iot_gazette/files/2016/2016-Gazette_3-2016-CKI-Proclamation_Special_Public_and_Bank_Holidays_2016.pdf)
50
+ * [2017](https://web.archive.org/web/20240303203132/https://www.infrastructure.gov.au/sites/default/files/migrated/territories/indian_ocean/iot_gazette/files/2016/2016-Gazette_2-2016-CKI-Proclamation_Special_Public_and_Bank_Holidays_2017.pdf)
51
+ * [2019](https://web.archive.org/web/20241123131420/https://www.infrastructure.gov.au/sites/default/files/migrated/territories/indian_ocean/iot_bulletins/2018/files/A38-2018.pdf)
52
+ * [2019 Act of Self Determination Day](https://web.archive.org/web/20220518200522/https://www.infrastructure.gov.au/sites/default/files/migrated/territories/indian_ocean/iot_bulletins/2019/files/A10-2019-bank-holidays.pdf)
53
+ * [2020](https://web.archive.org/web/20240521203357/https://www.infrastructure.gov.au/sites/default/files/migrated/territories/indian_ocean/iot_bulletins/2019/files/A53-2019.pdf)
54
+ * [2021](https://web.archive.org/web/20250502204052/https://www.infrastructure.gov.au/territories-regions-cities/territories/indian_ocean/iot_bulletins/2020/A041-2020-cki-public-holidays)
55
+ * [2022](https://web.archive.org/web/20250429071240/https://www.infrastructure.gov.au/sites/default/files/documents/a33-2021-2022-public-holidays-cocos-keeling-islands.pdf)
56
+ * [2022 Eid al-Fitr](https://web.archive.org/web/20220810061351/https://www.infrastructure.gov.au/sites/default/files/documents/Gazette-Change-to-CKI-Hari-Raya-Puasa-2022.pdf)
57
+ * [2023](https://web.archive.org/web/20240711221156/https://www.infrastructure.gov.au/sites/default/files/documents/a19-2022-community-bulletin-2023-kings-birthday-cocos-keeling-islands.pdf)
58
+ * [2023 Eid al-Adha](https://web.archive.org/web/20240804112114/https://www.infrastructure.gov.au/sites/default/files/documents/a06-2023_community_bulletin_-_change_of_public_holiday_date_for_hari_raya_haji_2023.pdf)
59
+ * [2024](https://web.archive.org/web/20250207203100/https://www.infrastructure.gov.au/sites/default/files/documents/a12-2023-2024-public-holidays-cocos-k-islands.pdf)
60
+ * [2025](https://web.archive.org/web/20250413083314/https://www.infrastructure.gov.au/sites/default/files/documents/a21-2024-administrator-community-bulletin-cki-public-holidays-2025.pdf)
61
+ """
62
+
63
+ country = "CC"
64
+ default_language = "en_CC"
65
+ # %s (observed).
66
+ observed_label = tr("%s (observed)")
67
+ # %s (estimated).
68
+ estimated_label = tr("%s (estimated)")
69
+ # %s (observed, estimated).
70
+ observed_estimated_label = tr("%s (observed, estimated)")
71
+ supported_languages = ("coa_CC", "en_CC", "en_US")
72
+ # Act of Self Determination 1984.
73
+ start_year = 1985
74
+
75
+ def __init__(self, islamic_show_estimated: bool = True, *args, **kwargs):
76
+ """
77
+ Args:
78
+ islamic_show_estimated:
79
+ Whether to add "estimated" label to Islamic holidays name
80
+ if holiday date is estimated.
81
+ """
82
+ ChristianHolidays.__init__(self)
83
+ InternationalHolidays.__init__(self)
84
+ IslamicHolidays.__init__(
85
+ self, cls=CocosIslandsIslamicHolidays, show_estimated=islamic_show_estimated
86
+ )
87
+ StaticHolidays.__init__(self, CocosIslandsStaticHolidays)
88
+ kwargs.setdefault("observed_rule", SAT_SUN_TO_NEXT_MON)
89
+ super().__init__(*args, **kwargs)
90
+
91
+ def _populate_public_holidays(self):
92
+ # New Year's Day.
93
+ self._add_observed(self._add_new_years_day(tr("New Year's Day")))
94
+
95
+ # Australia Day.
96
+ self._add_observed(self._add_holiday_jan_26(tr("Australia Day")))
97
+
98
+ act_of_self_determination_dates = {
99
+ 2007: (APR, 5),
100
+ }
101
+ # Act of Self Determination Day.
102
+ name = tr("Act of Self Determination Day")
103
+ if self._year in act_of_self_determination_dates:
104
+ self._add_holiday(name, act_of_self_determination_dates[self._year])
105
+ else:
106
+ dt = self._add_holiday_apr_6(name)
107
+ if self._year != 2019:
108
+ self._add_observed(dt)
109
+
110
+ # Good Friday.
111
+ self._add_good_friday(tr("Good Friday"))
112
+
113
+ # Easter Monday.
114
+ self._add_easter_monday(tr("Easter Monday"))
115
+
116
+ # ANZAC Day.
117
+ self._add_observed(self._add_holiday_apr_25(tr("ANZAC Day")))
118
+
119
+ queens_kings_birthday_dates = {
120
+ 2021: (JUN, 7),
121
+ 2022: (JUN, 6),
122
+ 2023: (JUN, 6),
123
+ 2024: (JUN, 6),
124
+ }
125
+ name = (
126
+ # King's Birthday.
127
+ tr("King's Birthday")
128
+ if self._year >= 2023
129
+ # Queen's Birthday.
130
+ else tr("Queen's Birthday")
131
+ )
132
+ if self._year in queens_kings_birthday_dates:
133
+ self._add_holiday(name, queens_kings_birthday_dates[self._year])
134
+ else:
135
+ self._add_holiday_2nd_mon_of_jun(name)
136
+
137
+ # Placed before Christmas Day for proper observed calculation.
138
+ self._add_observed(
139
+ # Boxing Day.
140
+ self._add_christmas_day_two(tr("Boxing Day")),
141
+ rule=SAT_SUN_TO_NEXT_MON_TUE + MON_TO_NEXT_TUE,
142
+ )
143
+
144
+ # Christmas Day.
145
+ self._add_observed(self._add_christmas_day(tr("Christmas Day")))
146
+
147
+ # Islamic holidays.
148
+
149
+ if self._year <= 2019:
150
+ # Islamic New Year.
151
+ for dt in self._add_islamic_new_year_day(tr("Islamic New Year")):
152
+ self._add_observed(dt)
153
+
154
+ # Prophet's Birthday.
155
+ for dt in self._add_mawlid_day(tr("Prophet's Birthday")):
156
+ self._add_observed(dt)
157
+
158
+ # Eid al-Fitr.
159
+ for dt in self._add_eid_al_fitr_day(tr("Eid al-Fitr")):
160
+ self._add_observed(dt)
161
+
162
+ # Eid al-Adha.
163
+ for dt in self._add_eid_al_adha_day(tr("Eid al-Adha")):
164
+ if self._year != 2025:
165
+ self._add_observed(dt)
166
+
167
+
168
+ class CocosIslandsIslamicHolidays(_CustomIslamicHolidays):
169
+ EID_AL_ADHA_DATES = {
170
+ 2007: (DEC, 20),
171
+ 2008: (DEC, 8),
172
+ 2009: (NOV, 30),
173
+ 2010: (NOV, 16),
174
+ 2013: (OCT, 15),
175
+ 2014: (OCT, 4),
176
+ 2016: (SEP, 13),
177
+ 2017: (SEP, 1),
178
+ 2019: (AUG, 11),
179
+ 2020: (JUL, 31),
180
+ 2021: (JUL, 20),
181
+ 2022: (JUL, 9),
182
+ 2023: (JUN, 28),
183
+ 2024: (JUN, 17),
184
+ 2025: (JUN, 7),
185
+ }
186
+
187
+ EID_AL_FITR_DATES = {
188
+ 2007: (OCT, 15),
189
+ 2008: (OCT, 1),
190
+ 2009: (SEP, 21),
191
+ 2010: (SEP, 10),
192
+ 2013: (AUG, 8),
193
+ 2014: (JUL, 28),
194
+ 2016: (JUL, 6),
195
+ 2017: (JUN, 24),
196
+ 2019: (JUN, 5),
197
+ 2020: (MAY, 24),
198
+ 2021: (MAY, 13),
199
+ 2022: (MAY, 3),
200
+ 2023: (APR, 22),
201
+ 2024: (APR, 10),
202
+ 2025: (MAR, 31),
203
+ }
204
+
205
+ HIJRI_NEW_YEAR_DATES = {
206
+ 2007: (JAN, 22),
207
+ 2008: (JAN, 10),
208
+ 2009: (DEC, 18),
209
+ 2010: (DEC, 7),
210
+ 2013: (NOV, 4),
211
+ 2014: (OCT, 25),
212
+ 2016: (OCT, 3),
213
+ 2017: (SEP, 22),
214
+ 2019: (SEP, 1),
215
+ }
216
+
217
+ MAWLID_DATES = {
218
+ 2007: (APR, 2),
219
+ 2008: (MAR, 20),
220
+ 2009: (MAR, 9),
221
+ 2010: (FEB, 26),
222
+ 2013: (JAN, 24),
223
+ 2014: (JAN, 13),
224
+ 2016: (DEC, 12),
225
+ 2017: (DEC, 1),
226
+ 2019: (NOV, 9),
227
+ 2020: (OCT, 29),
228
+ 2021: (OCT, 19),
229
+ 2022: (OCT, 8),
230
+ 2023: (SEP, 27),
231
+ 2024: (SEP, 16),
232
+ 2025: (SEP, 5),
233
+ }
234
+
235
+
236
+ class CC(CocosIslands):
237
+ pass
238
+
239
+
240
+ class CCK(CocosIslands):
241
+ pass
242
+
243
+
244
+ class CocosIslandsStaticHolidays:
245
+ """Cocos (Keeling) Islands special holidays.
246
+
247
+ References:
248
+ * [National Day of Mourning 2022](https://web.archive.org/web/20240712213751/https://www.infrastructure.gov.au/sites/default/files/documents/04-2022-proclamation-cki-day-of-mourning.pdf)
249
+ """
250
+
251
+ special_public_holidays = {
252
+ # National Day of Mourning for Queen Elizabeth II.
253
+ 2022: (SEP, 22, tr("National Day of Mourning for Queen Elizabeth II")),
254
+ }
255
+
256
+ special_public_holidays_observed = {
257
+ 2019: (APR, 10, tr("Act of Self Determination Day")),
258
+ 2025: (JUN, 6, tr("Eid al-Adha")),
259
+ }
@@ -24,7 +24,7 @@ class Curacao(HolidayBase, ChristianHolidays, InternationalHolidays):
24
24
 
25
25
  References:
26
26
  * <https://loketdigital.gobiernu.cw/Loket/product/571960bbe1e5fe8712b10a1323630e70>
27
- * <https://en.wikipedia.org/wiki/Public_holidays_in_Cura%C3%A7ao>
27
+ * <https://en.wikipedia.org/wiki/Public_holidays_in_Curaçao>
28
28
  """
29
29
 
30
30
  country = "CW"
@@ -26,7 +26,7 @@ class DominicanRepublic(ObservedHolidayBase, ChristianHolidays, InternationalHol
26
26
 
27
27
  References:
28
28
  * <http://ojd.org.do/Normativas/LABORAL/Leyes/Ley%20No.%20%20139-97.pdf>
29
- * <https://es.wikipedia.org/wiki/Rep%C3%BAblica_Dominicana#D%C3%ADas_festivos_nacionales>
29
+ * <https://es.wikipedia.org/wiki/República_Dominicana#Días_festivos_nacionales>
30
30
  """
31
31
 
32
32
  country = "DO"
@@ -28,7 +28,7 @@ class Ecuador(ObservedHolidayBase, ChristianHolidays, InternationalHolidays):
28
28
 
29
29
  References:
30
30
  * <https://en.wikipedia.org/wiki/Public_holidays_in_Ecuador>
31
- * [Código del Trabajo](https://biblioteca.defensoria.gob.ec/bitstream/37000/3364/1/C%C3%B3digo%20de%20Trabajo%20%2804-11-2021%29.pdf)
31
+ * [Código del Trabajo](https://biblioteca.defensoria.gob.ec/bitstream/37000/3364/1/Código%20de%20Trabajo%20(04-11-2021).pdf)
32
32
  """
33
33
 
34
34
  country = "EC"
@@ -0,0 +1,150 @@
1
+ # holidays
2
+ # --------
3
+ # A fast, efficient Python library for generating country, province and state
4
+ # specific sets of holidays on the fly. It aims to make determining whether a
5
+ # specific date is a holiday as fast and flexible as possible.
6
+ #
7
+ # Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
8
+ # dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
9
+ # ryanss <ryanssdev@icloud.com> (c) 2014-2017
10
+ # Website: https://github.com/vacanza/holidays
11
+ # License: MIT (see LICENSE file)
12
+
13
+ from gettext import gettext as tr
14
+
15
+ from holidays.calendars.gregorian import JAN
16
+ from holidays.groups import ChristianHolidays, InternationalHolidays, StaticHolidays
17
+ from holidays.observed_holiday_base import ObservedHolidayBase, SAT_SUN_TO_NEXT_MON
18
+
19
+
20
+ class EquatorialGuinea(
21
+ ObservedHolidayBase, ChristianHolidays, InternationalHolidays, StaticHolidays
22
+ ):
23
+ """Equatorial Guinea holidays.
24
+
25
+ References:
26
+ * [Decree 9/2007](https://web.archive.org/web/20250518185011/https://boe.gob.gq/files/Decreto%20de%20Fijación%20de%20los%20Días%20Feriados%20en%20Guinea%20Ecuatorial.pdf)
27
+ * <https://en.wikipedia.org/wiki/Public_holidays_in_Equatorial_Guinea>
28
+ * <https://web.archive.org/web/20250503042253/https://www.timeanddate.com/holidays/guineaecuatorial/>
29
+ * <https://web.archive.org/web/20250503042610/https://gq.usembassy.gov/holiday-calendar/>
30
+ * [2015](https://web.archive.org/web/20250421105147/https://www.guineainfomarket.com/gobierno/2015/01/01/calendario-laboral-de-guinea-ecuatorial-2015/)
31
+ * [2016](https://web.archive.org/web/20250212174334/https://www.guineainfomarket.com/libros/2015/12/06/calendario-laboral-de-guinea-ecuatorial-2016/)
32
+ * [2018](https://web.archive.org/web/20241005004303/https://www.guineainfomarket.com/economia/2017/12/29/calendario-laboral-guinea-ecuatorial-2018/)
33
+ * [2019](https://web.archive.org/web/20220526022213/https://www.guineainfomarket.com/economia/2019/01/01/calendario-laboral-guinea-ecuatorial-2019/)
34
+ * [2020](https://web.archive.org/web/20250503044753/https://www.guineainfomarket.com/cultura/2020/01/01/calendario-laboral-de-guinea-ecuatorial-2020/)
35
+ * [2021](https://web.archive.org/web/20250503044727/https://www.guineainfomarket.com/cultura/2021/01/29/calendario-laboral-de-guinea-ecuatorial-2021/)
36
+ * [2022](https://web.archive.org/web/20250503044746/https://www.guineainfomarket.com/cultura/2021/01/29/calendario-laboral-de-guinea-ecuatorial-2021-2/)
37
+ * [2024](https://web.archive.org/web/20250504175804/https://www.guineainfomarket.com/business/2024/03/29/calendario-laboral-de-guinea-ecuatorial-2024/)
38
+ """
39
+
40
+ country = "GQ"
41
+ default_language = "es"
42
+ supported_languages = ("en_US", "es")
43
+ # %s observed.
44
+ observed_label = tr("%s (observado)")
45
+ # Decree 9/2007.
46
+ start_year = 2007
47
+ subdivisions = (
48
+ "AN", # Annobón (Annobon).
49
+ "BN", # Bioko Norte (North Bioko).
50
+ "BS", # Bioko Sur (South Bioko).
51
+ "CS", # Centro Sur (South Center).
52
+ "DJ", # Djibloho.
53
+ "KN", # Kié-Ntem (Kie-Ntem).
54
+ "LI", # Litoral (Coast).
55
+ "WN", # Wele-Nzas.
56
+ )
57
+ subdivisions_aliases = {
58
+ "Annobón": "AN",
59
+ "Annobon": "AN",
60
+ "Bioko Norte": "BN",
61
+ "North Bioko": "BN",
62
+ "Bioko Sur": "BS",
63
+ "South Bioko": "BS",
64
+ "Centro Sur": "CS",
65
+ "South Center": "CS",
66
+ "Djibloho": "DJ",
67
+ "Kié-Ntem": "KN",
68
+ "Kie-Ntem": "KN",
69
+ "Litoral": "LI",
70
+ "Coast": "LI",
71
+ "Wele-Nzas": "WN",
72
+ }
73
+
74
+ def __init__(self, *args, **kwargs):
75
+ ChristianHolidays.__init__(self)
76
+ InternationalHolidays.__init__(self)
77
+ StaticHolidays.__init__(self, cls=EquatorialGuineaStaticHolidays)
78
+ kwargs.setdefault("observed_rule", SAT_SUN_TO_NEXT_MON)
79
+ super().__init__(*args, **kwargs)
80
+
81
+ def _populate_public_holidays(self):
82
+ # New Year's Day.
83
+ self._add_observed(self._add_new_years_day(tr("Año Nuevo")))
84
+
85
+ # International Women's Day.
86
+ self._add_womens_day(tr("Día Internacional de la Mujer"))
87
+
88
+ # Maundy Thursday.
89
+ self._add_holy_thursday(tr("Jueves Santo"))
90
+
91
+ # Good Friday.
92
+ self._add_good_friday(tr("Viernes Santo"))
93
+
94
+ # International Labor Day.
95
+ self._add_observed(self._add_labor_day(tr("Día Internacional del Trabajo")))
96
+
97
+ # African Liberation Day.
98
+ self._add_africa_day(tr("Día de la liberación Africana"))
99
+
100
+ self._add_observed(
101
+ # President's Day.
102
+ self._add_holiday_jun_5(tr("Natalicio de Su Excelencia el Presidente de la República"))
103
+ )
104
+
105
+ # Corpus Christi.
106
+ self._add_corpus_christi_day(tr("Corpus Christi"))
107
+
108
+ # Armed Forces Day.
109
+ self._add_observed(self._add_holiday_aug_3(tr("Día de las Fuerzas Armadas")))
110
+
111
+ # Constitution Day.
112
+ self._add_observed(self._add_holiday_aug_15(tr("Día de la Constitución")))
113
+
114
+ # Independence Day.
115
+ self._add_observed(self._add_holiday_oct_12(tr("Día de la Independencia Nacional")))
116
+
117
+ self._add_observed(
118
+ self._add_immaculate_conception_day(
119
+ # Immaculate Conception.
120
+ tr("Festividad de la Inmaculada Concepción de María")
121
+ )
122
+ )
123
+
124
+ # Christmas Day.
125
+ self._add_observed(self._add_christmas_day(tr("Día de Navidad")))
126
+
127
+ def _populate_subdiv_an_public_holidays(self):
128
+ # Patron Saint Festival of Annobón.
129
+ self._add_holiday_jun_13(tr("Fiesta Patronal de Annobón"))
130
+
131
+
132
+ class GQ(EquatorialGuinea):
133
+ pass
134
+
135
+
136
+ class GNQ(EquatorialGuinea):
137
+ pass
138
+
139
+
140
+ class EquatorialGuineaStaticHolidays:
141
+ """Equatorial Guinea special holidays.
142
+
143
+ References:
144
+ * [AFCON Victory Holiday](https://web.archive.org/web/20240124021813/https://www.monitor.co.ug/uganda/sports/soccer/equatorial-guinea-president-awards-team-1-million-for-afcon-victory-4500644)
145
+ """
146
+
147
+ special_public_holidays = {
148
+ # AFCON Victory Against Ivory Coast.
149
+ 2024: (JAN, 23, tr("Victoria de la AFCON contra Costa de Marfil")),
150
+ }
@@ -29,7 +29,7 @@ class Ethiopia(HolidayBase, ChristianHolidays, InternationalHolidays, IslamicHol
29
29
  * [Proclamation No. 1334/2024](https://lawethiopiacomment.wordpress.com/wp-content/uploads/2024/08/public-holiday-stamped.pdf)
30
30
  * <https://www.edarabia.com/ethiopia/public-holidays/>
31
31
  * <https://en.wikipedia.org/wiki/Public_holidays_in_Ethiopia>
32
- * <https://en.wikipedia.org/wiki/Nations,_Nationalities_and_Peoples%27_Day>
32
+ * <https://en.wikipedia.org/wiki/Nations,_Nationalities_and_Peoples'_Day>
33
33
  * <https://www.timeanddate.com/holidays/ethiopia/>
34
34
  """
35
35