1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293
|
# holidays
# --------
# A fast, efficient Python library for generating country, province and state
# specific sets of holidays on the fly. It aims to make determining whether a
# specific date is a holiday as fast and flexible as possible.
#
# Authors: Vacanza Team and individual contributors (see CONTRIBUTORS file)
# dr-prodigy <dr.prodigy.github@gmail.com> (c) 2017-2023
# ryanss <ryanssdev@icloud.com> (c) 2014-2017
# Website: https://github.com/vacanza/holidays
# License: MIT (see LICENSE file)
from gettext import gettext as tr
from holidays.constants import OPTIONAL, PUBLIC
from holidays.groups import ChristianHolidays, InternationalHolidays
from holidays.holiday_base import HolidayBase
class CaboVerde(HolidayBase, ChristianHolidays, InternationalHolidays):
"""Cabo Verde holidays.
References:
* [Public holidays in Cape Verde](https://en.wikipedia.org/wiki/Public_holidays_in_Cape_Verde)
* [Legislação Municipal Cabo-Verdiana](https://web.archive.org/web/20180820172827/http://www.interface.gov.cv/index.php?option=com_docman&task=doc_download&gid=12&Itemid=314)
* [Feriados Bancários - Banco de Cabo Verde](https://web.archive.org/web/20250629042854/https://www.bcv.cv/pt/SistemadePagamentos/feriados_bancarios/Paginas/FeriadosBancarios.aspx)
* [Feriados Públicos - Feel Cabo Verde](https://web.archive.org/web/20250419201823/https://feelcaboverde.com/feriados-publicos/)
* [Public Holidays - Feel Cape Verde](https://web.archive.org/web/20250419202739/https://feelcaboverde.com/en/public-holidays-cape-verde/)
* [Democracy Day](https://web.archive.org/web/20250420093850/https://cmsv.cv/dia-da-liberdade-e-democracia-de-cabo-verde/)
"""
country = "CV"
default_language = "pt_CV"
start_year = 1976
subdivisions = (
"BR", # Brava.
"BV", # Boa Vista.
"CA", # Santa Catarina.
"CF", # Santa Catarina do Fogo.
"CR", # Santa Cruz.
"MA", # Maio.
"MO", # Mosteiros.
"PA", # Paul.
"PN", # Porto Novo.
"PR", # Praia.
"RB", # Ribeira Brava
"RG", # Ribeira Grande.
"RS", # Ribeira Grande de Santiago.
"SD", # São Domingos.
"SF", # São Filipe.
"SL", # Sal.
"SM", # São Miguel.
"SO", # São Lourenço dos Órgãos.
"SS", # São Salvador do Mundo.
"SV", # São Vicente.
"TA", # Tarrafal.
"TS", # Tarrafal de São Nicolau.
)
subdivisions_aliases = {
"Brava": "BR",
"Boa Vista": "BV",
"Santa Catarina": "CA",
"Santa Catarina do Fogo": "CF",
"Santa Cruz": "CR",
"Maio": "MA",
"Mosteiros": "MO",
"Paul": "PA",
"Porto Novo": "PN",
"Praia": "PR",
"Ribeira Brava": "RB",
"Ribeira Grande": "RG",
"Ribeira Grande de Santiago": "RS",
"São Domingos": "SD",
"São Filipe": "SF",
"Sal": "SL",
"São Miguel": "SM",
"São Lourenço dos Órgãos": "SO",
"São Salvador do Mundo": "SS",
"São Vicente": "SV",
"Tarrafal": "TA",
"Tarrafal de São Nicolau": "TS",
}
supported_categories = (OPTIONAL, PUBLIC)
supported_languages = ("de", "en_US", "es", "fr", "pt_CV")
def __init__(self, *args, **kwargs) -> None:
ChristianHolidays.__init__(self)
InternationalHolidays.__init__(self)
super().__init__(*args, **kwargs)
def _populate_public_holidays(self):
# New Year's Day.
self._add_new_years_day(tr("Ano Novo"))
# Law # 95/V/99 of March 22nd.
if self._year >= 2000:
# Democracy and Freedom Day.
self._add_holiday_jan_13(tr("Dia da Liberdade e da Democracia"))
# National Heroes Day.
self._add_holiday_jan_20(tr("Dia da Nacionalidade e dos Heróis Nacionais"))
# Ash Wednesday.
self._add_ash_wednesday(tr("Quarta-feira de Cinzas"))
# Good Friday.
self._add_good_friday(tr("Sexta-feira Santa"))
# Easter Sunday.
self._add_easter_sunday(tr("Páscoa"))
# Worker's Day.
self._add_labor_day(tr("Dia do Trabalhador"))
# Law # 69/VI/2005 of May 31st.
if self._year >= 2005:
# International Children's Day.
self._add_childrens_day(tr("Dia Mundial da Criança"))
# Independence Day.
self._add_holiday_jul_5(tr("Dia da Independência Nacional"))
# Assumption Day.
self._add_assumption_of_mary_day(tr("Dia da Assunção"))
# All Saints' Day.
self._add_all_saints_day(tr("Dia de Todos os Santos"))
# Christmas Day.
self._add_christmas_day(tr("Dia do Natal"))
def _populate_optional_holidays(self):
# Holy Thursday.
self._add_holy_thursday(tr("Quinta-Feira Santa"))
# Mother's Day.
self._add_holiday_2nd_sun_of_may(tr("Dia das Mães"))
# Father's Day.
self._add_holiday_3rd_sun_of_jun(tr("Dia dos Pais"))
def _populate_subdiv_br_public_holidays(self):
# Law # 93/82 of November 6th.
if self._year >= 1983:
# Brava Municipality Day.
self._add_holiday_jun_24(tr("Dia do Município da Brava"))
def _populate_subdiv_bv_public_holidays(self):
# Law # 93/82 of November 6th.
if self._year >= 1983:
# Boa Vista Municipality Day.
self._add_holiday_jul_4(tr("Dia do Município da Boa Vista"))
def _populate_subdiv_ca_public_holidays(self):
# Law # 93/82 of November 6th.
if self._year >= 1982:
# Santa Catarina de Santiago Municipality Day.
self._add_holiday_nov_25(tr("Dia do Município de Santa Catarina de Santiago"))
def _populate_subdiv_cf_public_holidays(self):
# Law # 66/VI/2005 of May 9th.
if self._year >= 2005:
# Santa Catarina do Fogo Municipality Day.
self._add_holiday_nov_25(tr("Dia do Município de Santa Catarina do Fogo"))
def _populate_subdiv_cr_public_holidays(self):
# Law # 93/82 of November 6th.
if self._year >= 1983:
# Santa Cruz Municipality Day.
self._add_holiday_jul_25(tr("Dia do Município de Santa Cruz"))
def _populate_subdiv_ma_public_holidays(self):
# Law # 93/82 of November 6th.
if self._year >= 1983:
# Maio Municipality Day.
self._add_holiday_sep_8(tr("Dia do Município do Maio"))
def _populate_subdiv_mo_public_holidays(self):
# Law # 23/IV/91 of December 30th.
if self._year >= 1992:
# Mosteiros Municipality Day.
self._add_holiday_aug_15(tr("Dia do Município dos Mosteiros"))
def _populate_subdiv_pa_public_holidays(self):
# Law # 93/82 of November 6th.
if self._year >= 1983:
# Santo Antão Island Day.
self._add_holiday_jan_17(tr("Dia da Ilha de Santo Antão"))
# Paúl Municipality Day.
self._add_holiday_jun_13(tr("Dia do Município do Paúl"))
def _populate_subdiv_pn_public_holidays(self):
# Law # 93/82 of November 6th.
if self._year >= 1983:
# Santo Antão Island Day.
self._add_holiday_jan_17(tr("Dia da Ilha de Santo Antão"))
# Porto Novo Municipality Day.
self._add_holiday_sep_2(tr("Dia do Município do Porto Novo"))
def _populate_subdiv_pr_public_holidays(self):
# Law # 93/82 of November 6th.
if self._year >= 1983:
# Praia Municipality Day.
self._add_holiday_may_19(tr("Dia do Município da Praia"))
def _populate_subdiv_rb_public_holidays(self):
# Law # 67/VI/2005 of May 9th.
if self._year >= 2005:
# Ribeira Brava Municipality Day.
self._add_holiday_dec_6(tr("Dia do Município de Ribeira Brava"))
def _populate_subdiv_rg_public_holidays(self):
# Law # 93/82 of November 6th.
if self._year >= 1983:
# Santo Antão Island Day.
self._add_holiday_jan_17(tr("Dia da Ilha de Santo Antão"))
# Ribeira Grande Municipality Day.
self._add_holiday_may_7(tr("Dia do Município de Ribeira Grande"))
def _populate_subdiv_rs_public_holidays(self):
# Law # 63/VI/2005 of May 9th.
if self._year >= 2006:
# Ribeira Grande de Santiago Municipality Day.
self._add_holiday_jan_31(tr("Dia do Município de Ribeira Grande de Santiago"))
def _populate_subdiv_sd_public_holidays(self):
# Law # 96/IV/93 of December 31st.
if self._year >= 1994:
# São Domingos Municipality Day.
self._add_holiday_mar_13(tr("Dia do Município de São Domingos"))
def _populate_subdiv_sf_public_holidays(self):
# Law # 23/IV/91 of December 30th.
if self._year >= 1992:
# São Filipe Municipality Day.
self._add_holiday_may_1(tr("Dia do Município de São Filipe"))
def _populate_subdiv_sl_public_holidays(self):
# Law # 93/82 of November 6th.
if self._year >= 1983:
# Sal Municipality Day.
self._add_holiday_sep_15(tr("Dia do Município do Sal"))
def _populate_subdiv_sm_public_holidays(self):
# Law # 11/V/96 of November 11th.
if self._year >= 1997:
# São Miguel Municipality Day.
self._add_holiday_sep_29(tr("Dia do Município de São Miguel"))
def _populate_subdiv_so_public_holidays(self):
# Law # 64/VI/2005 of May 9th.
if self._year >= 2005:
# São Lourenço dos Órgãos Municipality Day.
self._add_holiday_may_9(tr("Dia do Município de São Lourenço dos Órgãos"))
def _populate_subdiv_ss_public_holidays(self):
# Law # 65/VI/2005 of May 9th.
if self._year >= 2005:
# São Salvador do Mundo Municipality Day.
self._add_holiday_jul_19(tr("Dia do Município de São Salvador do Mundo"))
def _populate_subdiv_sv_public_holidays(self):
# Law # 93/82 of November 6th.
if self._year >= 1983:
# São Vicente Municipality Day.
self._add_holiday_jan_22(tr("Dia do Município de São Vicente"))
# Carnival Tuesday.
self._add_carnival_tuesday(tr("Terça-feira de Carnaval"))
def _populate_subdiv_ta_public_holidays(self):
# Law # 93/82 of November 6th.
if self._year >= 1983:
# Tarrafal de Santiago Municipality Day.
self._add_holiday_jan_15(tr("Dia do Município do Tarrafal de Santiago"))
def _populate_subdiv_ts_public_holidays(self):
# Law # 67/VI/2005 of May 9th.
if self._year >= 2005:
# Tarrafal de São Nicolau Municipality Day.
self._add_holiday_aug_2(tr("Dia do Município do Tarrafal de São Nicolau"))
class CV(CaboVerde):
pass
class CPV(CaboVerde):
pass
|