holidays 0.75__py3-none-any.whl → 0.77__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.
- holidays/calendars/__init__.py +1 -0
- holidays/calendars/mongolian.py +342 -0
- holidays/countries/__init__.py +41 -0
- holidays/countries/aland_islands.py +3 -19
- holidays/countries/algeria.py +1 -1
- holidays/countries/american_samoa.py +8 -20
- holidays/countries/aruba.py +42 -36
- holidays/countries/australia.py +6 -8
- holidays/countries/bahrain.py +1 -1
- holidays/countries/bonaire_sint_eustatius_and_saba.py +134 -0
- holidays/countries/british_virgin_islands.py +6 -6
- holidays/countries/cabo_verde.py +293 -0
- holidays/countries/cayman_islands.py +162 -0
- holidays/countries/central_african_republic.py +143 -0
- holidays/countries/christmas_island.py +215 -0
- holidays/countries/cocos_islands.py +7 -6
- holidays/countries/curacao.py +64 -38
- holidays/countries/dr_congo.py +139 -0
- holidays/countries/egypt.py +1 -1
- holidays/countries/falkland_islands.py +141 -0
- holidays/countries/faroe_islands.py +102 -0
- holidays/countries/france.py +224 -127
- holidays/countries/french_guiana.py +44 -0
- holidays/countries/french_polynesia.py +43 -0
- holidays/countries/french_southern_territories.py +3 -4
- holidays/countries/georgia.py +11 -5
- holidays/countries/gibraltar.py +219 -0
- holidays/countries/guadeloupe.py +44 -0
- holidays/countries/guam.py +8 -20
- holidays/countries/guernsey.py +6 -6
- holidays/countries/hongkong.py +1 -1
- holidays/countries/hungary.py +2 -1
- holidays/countries/iran.py +1 -1
- holidays/countries/isle_of_man.py +4 -0
- holidays/countries/israel.py +1 -1
- holidays/countries/japan.py +6 -8
- holidays/countries/jersey.py +2 -2
- holidays/countries/jordan.py +1 -1
- holidays/countries/kuwait.py +1 -1
- holidays/countries/lebanon.py +448 -0
- holidays/countries/libya.py +227 -0
- holidays/countries/mali.py +151 -0
- holidays/countries/martinique.py +44 -0
- holidays/countries/mauritius.py +197 -0
- holidays/countries/mayotte.py +44 -0
- holidays/countries/mongolia.py +202 -0
- holidays/countries/montserrat.py +177 -0
- holidays/countries/morocco.py +1 -1
- holidays/countries/nepal.py +8 -8
- holidays/countries/netherlands.py +7 -11
- holidays/countries/new_caledonia.py +43 -0
- holidays/countries/new_zealand.py +2 -2
- holidays/countries/niue.py +115 -0
- holidays/countries/norfolk_island.py +129 -0
- holidays/countries/northern_mariana_islands.py +8 -20
- holidays/countries/oman.py +1 -1
- holidays/countries/palau.py +1 -1
- holidays/countries/palestine.py +177 -0
- holidays/countries/peru.py +12 -0
- holidays/countries/puerto_rico.py +8 -20
- holidays/countries/reunion.py +44 -0
- holidays/countries/saint_barthelemy.py +43 -0
- holidays/countries/saint_martin.py +43 -0
- holidays/countries/saint_pierre_and_miquelon.py +43 -0
- holidays/countries/saint_vincent_and_the_grenadines.py +130 -0
- holidays/countries/san_marino.py +49 -26
- holidays/countries/saudi_arabia.py +3 -3
- holidays/countries/seychelles.py +1 -1
- holidays/countries/sint_maarten.py +118 -0
- holidays/countries/solomon_islands.py +2 -2
- holidays/countries/svalbard_and_jan_mayen.py +3 -9
- holidays/countries/taiwan.py +31 -9
- holidays/countries/tokelau.py +66 -0
- holidays/countries/tunisia.py +1 -1
- holidays/countries/turks_and_caicos_islands.py +3 -3
- holidays/countries/united_arab_emirates.py +1 -1
- holidays/countries/united_kingdom.py +2 -2
- holidays/countries/united_states.py +579 -403
- holidays/countries/united_states_minor_outlying_islands.py +8 -20
- holidays/countries/united_states_virgin_islands.py +8 -20
- holidays/countries/uzbekistan.py +19 -2
- holidays/countries/wallis_and_futuna.py +43 -0
- holidays/countries/yemen.py +2 -2
- holidays/groups/__init__.py +1 -0
- holidays/groups/chinese.py +11 -0
- holidays/groups/christian.py +10 -10
- holidays/groups/eastern.py +1 -1
- holidays/groups/hebrew.py +2 -2
- holidays/groups/islamic.py +17 -0
- holidays/groups/mongolian.py +103 -0
- holidays/holiday_base.py +11 -6
- holidays/locale/am/LC_MESSAGES/ET.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/AE.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/BH.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/DJ.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/DZ.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/EG.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/ET.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/JO.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/KW.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/LB.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/LY.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/MA.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/OM.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/PS.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/SA.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/TN.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/UA.mo +0 -0
- holidays/locale/ar/LC_MESSAGES/YE.mo +0 -0
- holidays/locale/az/LC_MESSAGES/AZ.mo +0 -0
- holidays/locale/be/LC_MESSAGES/BY.mo +0 -0
- holidays/locale/bg/LC_MESSAGES/BG.mo +0 -0
- holidays/locale/bs/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/cnr/LC_MESSAGES/ME.mo +0 -0
- holidays/locale/cs/LC_MESSAGES/CZ.mo +0 -0
- holidays/locale/da/LC_MESSAGES/DK.mo +0 -0
- holidays/locale/da/LC_MESSAGES/FO.mo +0 -0
- holidays/locale/da/LC_MESSAGES/GL.mo +0 -0
- holidays/locale/de/LC_MESSAGES/AT.mo +0 -0
- holidays/locale/de/LC_MESSAGES/BE.mo +0 -0
- holidays/locale/de/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/de/LC_MESSAGES/CV.mo +0 -0
- holidays/locale/de/LC_MESSAGES/DE.mo +0 -0
- holidays/locale/de/LC_MESSAGES/LI.mo +0 -0
- holidays/locale/de/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/de/LC_MESSAGES/PL.mo +0 -0
- holidays/locale/el/LC_MESSAGES/CY.mo +0 -0
- holidays/locale/el/LC_MESSAGES/GR.mo +0 -0
- holidays/locale/en_AU/LC_MESSAGES/AU.mo +0 -0
- holidays/locale/en_BQ/LC_MESSAGES/BQ.mo +0 -0
- holidays/locale/en_CA/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/en_CX/LC_MESSAGES/CX.mo +0 -0
- holidays/locale/en_CY/LC_MESSAGES/CY.mo +0 -0
- holidays/locale/en_GB/LC_MESSAGES/FK.mo +0 -0
- holidays/locale/en_GB/LC_MESSAGES/GB.mo +0 -0
- holidays/locale/en_GB/LC_MESSAGES/GI.mo +0 -0
- holidays/locale/en_GB/LC_MESSAGES/IM.mo +0 -0
- holidays/locale/en_GB/LC_MESSAGES/KY.mo +0 -0
- holidays/locale/en_GB/LC_MESSAGES/TV.mo +0 -0
- holidays/locale/en_HK/LC_MESSAGES/HK.mo +0 -0
- holidays/locale/en_IN/LC_MESSAGES/IN.mo +0 -0
- holidays/locale/en_LC/LC_MESSAGES/LC.mo +0 -0
- holidays/locale/en_MO/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/en_MS/LC_MESSAGES/MS.mo +0 -0
- holidays/locale/en_MU/LC_MESSAGES/MU.mo +0 -0
- holidays/locale/en_NF/LC_MESSAGES/NF.mo +0 -0
- holidays/locale/en_NU/LC_MESSAGES/NU.mo +0 -0
- holidays/locale/en_PH/LC_MESSAGES/PH.mo +0 -0
- holidays/locale/en_SC/LC_MESSAGES/SC.mo +0 -0
- holidays/locale/en_SG/LC_MESSAGES/SG.mo +0 -0
- holidays/locale/en_SL/LC_MESSAGES/SL.mo +0 -0
- holidays/locale/en_TK/LC_MESSAGES/TK.mo +0 -0
- holidays/locale/en_TL/LC_MESSAGES/TL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AF.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AM.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AS.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AW.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AX.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/AZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BN.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BQ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BVMF.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/BY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CD.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CF.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CN.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CV.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CW.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CX.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/CZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/DE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/DJ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/DK.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/DO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/DZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/EC.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/EE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/EG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/ET.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/FI.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/FK.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/FO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/FR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GB.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GF.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GI.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GP.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/GU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/HK.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/HN.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/HR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/HT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/HU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/ID.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/IL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/IM.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/IR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/IS.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/JO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/JP.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/KH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/KR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/KW.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/KY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/KZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LB.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LC.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LI.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LK.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LV.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/LY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MC.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MD.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/ME.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MF.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/ML.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MN.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MP.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MQ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MS.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MX.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/MZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/NC.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/NF.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/NI.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/NL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/NO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/NU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/OM.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PF.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PM.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PS.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PT.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/PY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/RE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/RO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/RS.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/RU.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SC.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SG.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SI.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SK.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SM.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SV.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/SX.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TC.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TF.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TH.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TK.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TL.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TN.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TO.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TR.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TV.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TW.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/TZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/UA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/UM.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/US.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/UY.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/UZ.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/VA.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/VC.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/VE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/VI.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/VN.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/WF.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/YE.mo +0 -0
- holidays/locale/en_US/LC_MESSAGES/YT.mo +0 -0
- holidays/locale/en_VC/LC_MESSAGES/VC.mo +0 -0
- holidays/locale/es/LC_MESSAGES/BO.mo +0 -0
- holidays/locale/es/LC_MESSAGES/CL.mo +0 -0
- holidays/locale/es/LC_MESSAGES/CO.mo +0 -0
- holidays/locale/es/LC_MESSAGES/CR.mo +0 -0
- holidays/locale/es/LC_MESSAGES/CU.mo +0 -0
- holidays/locale/es/LC_MESSAGES/CV.mo +0 -0
- holidays/locale/es/LC_MESSAGES/DO.mo +0 -0
- holidays/locale/es/LC_MESSAGES/EC.mo +0 -0
- holidays/locale/es/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/es/LC_MESSAGES/GT.mo +0 -0
- holidays/locale/es/LC_MESSAGES/HN.mo +0 -0
- holidays/locale/es/LC_MESSAGES/HT.mo +0 -0
- holidays/locale/es/LC_MESSAGES/MX.mo +0 -0
- holidays/locale/es/LC_MESSAGES/NI.mo +0 -0
- holidays/locale/es/LC_MESSAGES/PA.mo +0 -0
- holidays/locale/es/LC_MESSAGES/PE.mo +0 -0
- holidays/locale/es/LC_MESSAGES/PY.mo +0 -0
- holidays/locale/es/LC_MESSAGES/SV.mo +0 -0
- holidays/locale/es/LC_MESSAGES/UY.mo +0 -0
- holidays/locale/es/LC_MESSAGES/VE.mo +0 -0
- holidays/locale/et/LC_MESSAGES/EE.mo +0 -0
- holidays/locale/fa_AF/LC_MESSAGES/AF.mo +0 -0
- holidays/locale/fa_IR/LC_MESSAGES/IR.mo +0 -0
- holidays/locale/fi/LC_MESSAGES/AX.mo +0 -0
- holidays/locale/fi/LC_MESSAGES/FI.mo +0 -0
- holidays/locale/fi/LC_MESSAGES/GL.mo +0 -0
- holidays/locale/fil/LC_MESSAGES/PH.mo +0 -0
- holidays/locale/fo/LC_MESSAGES/FO.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/BE.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/BL.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/CD.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/CF.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/CG.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/CV.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/DJ.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/DZ.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/FR.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/GF.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/GP.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/MA.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/MC.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/MF.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/ML.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/MQ.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/NC.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/PF.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/PM.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/RE.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/TF.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/WF.mo +0 -0
- holidays/locale/fr/LC_MESSAGES/YT.mo +0 -0
- holidays/locale/fr_HT/LC_MESSAGES/HT.mo +0 -0
- holidays/locale/fy/LC_MESSAGES/NL.mo +0 -0
- holidays/locale/he/LC_MESSAGES/IL.mo +0 -0
- holidays/locale/hi/LC_MESSAGES/IN.mo +0 -0
- holidays/locale/hr/LC_MESSAGES/HR.mo +0 -0
- holidays/locale/ht/LC_MESSAGES/HT.mo +0 -0
- holidays/locale/hu/LC_MESSAGES/HU.mo +0 -0
- holidays/locale/hy/LC_MESSAGES/AM.mo +0 -0
- holidays/locale/id/LC_MESSAGES/ID.mo +0 -0
- holidays/locale/is/LC_MESSAGES/FO.mo +0 -0
- holidays/locale/is/LC_MESSAGES/GL.mo +0 -0
- holidays/locale/is/LC_MESSAGES/IS.mo +0 -0
- holidays/locale/it/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/it/LC_MESSAGES/SM.mo +0 -0
- holidays/locale/it/LC_MESSAGES/VA.mo +0 -0
- holidays/locale/ja/LC_MESSAGES/JP.mo +0 -0
- holidays/locale/ka/LC_MESSAGES/GE.mo +0 -0
- holidays/locale/kk/LC_MESSAGES/KZ.mo +0 -0
- holidays/locale/kl/LC_MESSAGES/GL.mo +0 -0
- holidays/locale/km/LC_MESSAGES/KH.mo +0 -0
- holidays/locale/ko/LC_MESSAGES/KR.mo +0 -0
- holidays/locale/lb/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/lo/LC_MESSAGES/LA.mo +0 -0
- holidays/locale/lt/LC_MESSAGES/LT.mo +0 -0
- holidays/locale/lv/LC_MESSAGES/LV.mo +0 -0
- holidays/locale/mg/LC_MESSAGES/MG.mo +0 -0
- holidays/locale/mn/LC_MESSAGES/MN.mo +0 -0
- holidays/locale/ms/LC_MESSAGES/BN.mo +0 -0
- holidays/locale/ms_MY/LC_MESSAGES/MY.mo +0 -0
- holidays/locale/mt/LC_MESSAGES/MT.mo +0 -0
- holidays/locale/nl/LC_MESSAGES/AW.mo +0 -0
- holidays/locale/nl/LC_MESSAGES/BE.mo +0 -0
- holidays/locale/nl/LC_MESSAGES/BQ.mo +0 -0
- holidays/locale/nl/LC_MESSAGES/CW.mo +0 -0
- holidays/locale/nl/LC_MESSAGES/NL.mo +0 -0
- holidays/locale/nl/LC_MESSAGES/SX.mo +0 -0
- holidays/locale/no/LC_MESSAGES/FO.mo +0 -0
- holidays/locale/no/LC_MESSAGES/GL.mo +0 -0
- holidays/locale/no/LC_MESSAGES/NO.mo +0 -0
- holidays/locale/pap_AW/LC_MESSAGES/AW.mo +0 -0
- holidays/locale/pap_BQ/LC_MESSAGES/BQ.mo +0 -0
- holidays/locale/pap_CW/LC_MESSAGES/CW.mo +0 -0
- holidays/locale/pl/LC_MESSAGES/PL.mo +0 -0
- holidays/locale/ps_AF/LC_MESSAGES/AF.mo +0 -0
- holidays/locale/pt_AO/LC_MESSAGES/AO.mo +0 -0
- holidays/locale/pt_BR/LC_MESSAGES/BR.mo +0 -0
- holidays/locale/pt_BR/LC_MESSAGES/BVMF.mo +0 -0
- holidays/locale/pt_CV/LC_MESSAGES/CV.mo +0 -0
- holidays/locale/pt_MO/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/pt_MZ/LC_MESSAGES/MZ.mo +0 -0
- holidays/locale/pt_PT/LC_MESSAGES/PT.mo +0 -0
- holidays/locale/pt_TL/LC_MESSAGES/TL.mo +0 -0
- holidays/locale/ro/LC_MESSAGES/MD.mo +0 -0
- holidays/locale/ro/LC_MESSAGES/RO.mo +0 -0
- holidays/locale/ru/LC_MESSAGES/BY.mo +0 -0
- holidays/locale/ru/LC_MESSAGES/RU.mo +0 -0
- holidays/locale/si_LK/LC_MESSAGES/LK.mo +0 -0
- holidays/locale/sk/LC_MESSAGES/CZ.mo +0 -0
- holidays/locale/sk/LC_MESSAGES/SK.mo +0 -0
- holidays/locale/sl/LC_MESSAGES/SI.mo +0 -0
- holidays/locale/sq/LC_MESSAGES/AL.mo +0 -0
- holidays/locale/sr/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/sr/LC_MESSAGES/RS.mo +0 -0
- holidays/locale/sv/LC_MESSAGES/FO.mo +0 -0
- holidays/locale/sv/LC_MESSAGES/GL.mo +0 -0
- holidays/locale/sv/LC_MESSAGES/SE.mo +0 -0
- holidays/locale/sv_FI/LC_MESSAGES/AX.mo +0 -0
- holidays/locale/sv_FI/LC_MESSAGES/FI.mo +0 -0
- holidays/locale/sw/LC_MESSAGES/TZ.mo +0 -0
- holidays/locale/ta_LK/LC_MESSAGES/LK.mo +0 -0
- holidays/locale/tet/LC_MESSAGES/TL.mo +0 -0
- holidays/locale/th/LC_MESSAGES/AE.mo +0 -0
- holidays/locale/th/LC_MESSAGES/AS.mo +0 -0
- holidays/locale/th/LC_MESSAGES/AU.mo +0 -0
- holidays/locale/th/LC_MESSAGES/AX.mo +0 -0
- holidays/locale/th/LC_MESSAGES/BL.mo +0 -0
- holidays/locale/th/LC_MESSAGES/BN.mo +0 -0
- holidays/locale/th/LC_MESSAGES/BY.mo +0 -0
- holidays/locale/th/LC_MESSAGES/CA.mo +0 -0
- holidays/locale/th/LC_MESSAGES/CN.mo +0 -0
- holidays/locale/th/LC_MESSAGES/DE.mo +0 -0
- holidays/locale/th/LC_MESSAGES/FI.mo +0 -0
- holidays/locale/th/LC_MESSAGES/FR.mo +0 -0
- holidays/locale/th/LC_MESSAGES/GB.mo +0 -0
- holidays/locale/th/LC_MESSAGES/GF.mo +0 -0
- holidays/locale/th/LC_MESSAGES/GP.mo +0 -0
- holidays/locale/th/LC_MESSAGES/GU.mo +0 -0
- holidays/locale/th/LC_MESSAGES/HK.mo +0 -0
- holidays/locale/th/LC_MESSAGES/ID.mo +0 -0
- holidays/locale/th/LC_MESSAGES/IL.mo +0 -0
- holidays/locale/th/LC_MESSAGES/IM.mo +0 -0
- holidays/locale/th/LC_MESSAGES/JP.mo +0 -0
- holidays/locale/th/LC_MESSAGES/KH.mo +0 -0
- holidays/locale/th/LC_MESSAGES/KR.mo +0 -0
- holidays/locale/th/LC_MESSAGES/LA.mo +0 -0
- holidays/locale/th/LC_MESSAGES/MF.mo +0 -0
- holidays/locale/th/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/th/LC_MESSAGES/MP.mo +0 -0
- holidays/locale/th/LC_MESSAGES/MQ.mo +0 -0
- holidays/locale/th/LC_MESSAGES/MY.mo +0 -0
- holidays/locale/th/LC_MESSAGES/NC.mo +0 -0
- holidays/locale/th/LC_MESSAGES/NO.mo +0 -0
- holidays/locale/th/LC_MESSAGES/PF.mo +0 -0
- holidays/locale/th/LC_MESSAGES/PH.mo +0 -0
- holidays/locale/th/LC_MESSAGES/PM.mo +0 -0
- holidays/locale/th/LC_MESSAGES/PR.mo +0 -0
- holidays/locale/th/LC_MESSAGES/RE.mo +0 -0
- holidays/locale/th/LC_MESSAGES/RU.mo +0 -0
- holidays/locale/th/LC_MESSAGES/SE.mo +0 -0
- holidays/locale/th/LC_MESSAGES/SG.mo +0 -0
- holidays/locale/th/LC_MESSAGES/TF.mo +0 -0
- holidays/locale/th/LC_MESSAGES/TH.mo +0 -0
- holidays/locale/th/LC_MESSAGES/TL.mo +0 -0
- holidays/locale/th/LC_MESSAGES/TW.mo +0 -0
- holidays/locale/th/LC_MESSAGES/UA.mo +0 -0
- holidays/locale/th/LC_MESSAGES/UM.mo +0 -0
- holidays/locale/th/LC_MESSAGES/US.mo +0 -0
- holidays/locale/th/LC_MESSAGES/VA.mo +0 -0
- holidays/locale/th/LC_MESSAGES/VI.mo +0 -0
- holidays/locale/th/LC_MESSAGES/VN.mo +0 -0
- holidays/locale/th/LC_MESSAGES/WF.mo +0 -0
- holidays/locale/th/LC_MESSAGES/YT.mo +0 -0
- holidays/locale/tkl/LC_MESSAGES/TK.mo +0 -0
- holidays/locale/to/LC_MESSAGES/TO.mo +0 -0
- holidays/locale/tr/LC_MESSAGES/TR.mo +0 -0
- holidays/locale/tvl/LC_MESSAGES/TV.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AO.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AT.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AW.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AX.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/AZ.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/BA.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/BE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/BG.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/BL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/BO.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/BR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/BVMF.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CH.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CO.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CU.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CW.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CY.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/CZ.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/DE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/DK.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/DO.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/EC.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/EE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/ES.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/FI.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/FR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/GE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/GF.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/GL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/GP.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/GR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/HN.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/HR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/HU.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/ID.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/IL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/IS.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/KZ.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/LI.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/LT.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/LU.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/LV.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/MC.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/MD.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/ME.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/MF.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/MG.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/MQ.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/MX.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/MZ.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/NC.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/NI.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/NL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/NO.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/PA.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/PE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/PF.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/PL.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/PM.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/PT.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/PY.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/RE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/RO.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/SE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/SI.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/SK.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/SM.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/SV.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/TF.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/TR.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/UA.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/UY.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/UZ.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/VE.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/WF.mo +0 -0
- holidays/locale/uk/LC_MESSAGES/YT.mo +0 -0
- holidays/locale/uz/LC_MESSAGES/UZ.mo +0 -0
- holidays/locale/vi/LC_MESSAGES/VN.mo +0 -0
- holidays/locale/zh_CN/LC_MESSAGES/CN.mo +0 -0
- holidays/locale/zh_CN/LC_MESSAGES/HK.mo +0 -0
- holidays/locale/zh_CN/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/zh_CN/LC_MESSAGES/TW.mo +0 -0
- holidays/locale/zh_HK/LC_MESSAGES/HK.mo +0 -0
- holidays/locale/zh_MO/LC_MESSAGES/MO.mo +0 -0
- holidays/locale/zh_TW/LC_MESSAGES/CN.mo +0 -0
- holidays/locale/zh_TW/LC_MESSAGES/TW.mo +0 -0
- holidays/mixins/__init__.py +18 -0
- holidays/mixins/child_entity.py +43 -0
- holidays/observed_holiday_base.py +4 -1
- holidays/registry.py +32 -0
- holidays/version.py +1 -1
- {holidays-0.75.dist-info → holidays-0.77.dist-info}/METADATA +239 -15
- holidays-0.77.dist-info/RECORD +838 -0
- {holidays-0.75.dist-info → holidays-0.77.dist-info}/licenses/CONTRIBUTORS +4 -0
- holidays-0.75.dist-info/RECORD +0 -687
- /holidays/{mixins.py → mixins/preferred_discretionary_holidays.py} +0 -0
- {holidays-0.75.dist-info → holidays-0.77.dist-info}/WHEEL +0 -0
- {holidays-0.75.dist-info → holidays-0.77.dist-info}/licenses/LICENSE +0 -0
- {holidays-0.75.dist-info → holidays-0.77.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,177 @@
|
|
|
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 GREGORIAN_CALENDAR, SEP
|
|
17
|
+
from holidays.calendars.julian import JULIAN_CALENDAR
|
|
18
|
+
from holidays.constants import CATHOLIC, ORTHODOX, PUBLIC
|
|
19
|
+
from holidays.groups import ChristianHolidays, InternationalHolidays, IslamicHolidays
|
|
20
|
+
from holidays.holiday_base import HolidayBase
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class Palestine(HolidayBase, ChristianHolidays, InternationalHolidays, IslamicHolidays):
|
|
24
|
+
"""Palestine holidays.
|
|
25
|
+
|
|
26
|
+
References:
|
|
27
|
+
* <https://en.wikipedia.org/wiki/Public_holidays_in_Palestine>
|
|
28
|
+
* <https://web.archive.org/web/20250705114216/https://info.wafa.ps/pages/details/29601>
|
|
29
|
+
* [Declaration of Palestine independence](https://en.wikipedia.org/wiki/Palestine#Uprising,_declaration_and_peace_treaty)
|
|
30
|
+
"""
|
|
31
|
+
|
|
32
|
+
country = "PS"
|
|
33
|
+
default_language = "ar"
|
|
34
|
+
# %s (estimated).
|
|
35
|
+
estimated_label = tr("%s (المقدرة)")
|
|
36
|
+
# State of Palestine declared in November 1988.
|
|
37
|
+
start_year = 1989
|
|
38
|
+
supported_categories = (CATHOLIC, ORTHODOX, PUBLIC)
|
|
39
|
+
supported_languages = ("ar", "en_US")
|
|
40
|
+
|
|
41
|
+
def __init__(self, *args, islamic_show_estimated: bool = False, **kwargs):
|
|
42
|
+
"""
|
|
43
|
+
Args:
|
|
44
|
+
islamic_show_estimated:
|
|
45
|
+
Whether to add "estimated" label to Islamic holidays name
|
|
46
|
+
if holiday date is estimated.
|
|
47
|
+
"""
|
|
48
|
+
ChristianHolidays.__init__(self, calendar=JULIAN_CALENDAR)
|
|
49
|
+
InternationalHolidays.__init__(self)
|
|
50
|
+
IslamicHolidays.__init__(
|
|
51
|
+
self, cls=PalestineIslamicHolidays, show_estimated=islamic_show_estimated
|
|
52
|
+
)
|
|
53
|
+
super().__init__(*args, **kwargs)
|
|
54
|
+
|
|
55
|
+
def _populate_public_holidays(self):
|
|
56
|
+
# New Year's Day.
|
|
57
|
+
self._add_new_years_day(tr("رأس السنة الميلادي"))
|
|
58
|
+
|
|
59
|
+
# Orthodox Christmas Day.
|
|
60
|
+
self._add_christmas_day(tr("عيد الميلاد المجيد الشرقي"))
|
|
61
|
+
|
|
62
|
+
# International Women's Day.
|
|
63
|
+
self._add_womens_day(tr("يوم المراة العالمي"))
|
|
64
|
+
|
|
65
|
+
# Easter.
|
|
66
|
+
self._add_easter_sunday(tr("عيد الفصح المجيد"), GREGORIAN_CALENDAR)
|
|
67
|
+
|
|
68
|
+
# Easter.
|
|
69
|
+
self._add_easter_sunday(tr("عيد الفصح المجيد"))
|
|
70
|
+
|
|
71
|
+
# Labor Day.
|
|
72
|
+
self._add_labor_day(tr("عيد العمال"))
|
|
73
|
+
|
|
74
|
+
# Independence Day.
|
|
75
|
+
self._add_holiday_nov_15(tr("عيد الإستقلال"))
|
|
76
|
+
|
|
77
|
+
# Catholic Christmas Day.
|
|
78
|
+
self._add_christmas_day(tr("عيد الميلاد المجيد الغربي"), GREGORIAN_CALENDAR)
|
|
79
|
+
|
|
80
|
+
# Hijri New Year.
|
|
81
|
+
self._add_islamic_new_year_day(tr("رأس السنة الهجرية"))
|
|
82
|
+
|
|
83
|
+
# Prophet's Birthday.
|
|
84
|
+
self._add_mawlid_day(tr("ذكرى المولد النبوي الشريف"))
|
|
85
|
+
|
|
86
|
+
# Isra' and Mi'raj.
|
|
87
|
+
self._add_isra_and_miraj_day(tr("ذكرى الإسراء والمعراج"))
|
|
88
|
+
|
|
89
|
+
# Eid al-Fitr.
|
|
90
|
+
name = tr("عيد الفطر السعيد")
|
|
91
|
+
self._add_eid_al_fitr_day(name)
|
|
92
|
+
self._add_eid_al_fitr_day_two(name)
|
|
93
|
+
self._add_eid_al_fitr_day_three(name)
|
|
94
|
+
|
|
95
|
+
# Eid al-Adha.
|
|
96
|
+
name = tr("عيد الأضحى المبارك")
|
|
97
|
+
self._add_eid_al_adha_day(name)
|
|
98
|
+
self._add_eid_al_adha_day_two(name)
|
|
99
|
+
self._add_eid_al_adha_day_three(name)
|
|
100
|
+
self._add_eid_al_adha_day_four(name)
|
|
101
|
+
|
|
102
|
+
def _populate_catholic_holidays(self):
|
|
103
|
+
# New Year's Day.
|
|
104
|
+
self._add_new_years_day(tr("رأس السنة الميلادي"))
|
|
105
|
+
|
|
106
|
+
# Epiphany.
|
|
107
|
+
self._add_epiphany_day(tr("عيد الغطاس"), GREGORIAN_CALENDAR)
|
|
108
|
+
|
|
109
|
+
# Palm Sunday.
|
|
110
|
+
self._add_palm_sunday(tr("أحد الشعانين"), GREGORIAN_CALENDAR)
|
|
111
|
+
|
|
112
|
+
# Holy Thursday.
|
|
113
|
+
self._add_holy_thursday(tr("خميس الغسل"), GREGORIAN_CALENDAR)
|
|
114
|
+
|
|
115
|
+
# Good Friday.
|
|
116
|
+
self._add_good_friday(tr("الجمعة العظيمة"), GREGORIAN_CALENDAR)
|
|
117
|
+
|
|
118
|
+
# Holy Saturday.
|
|
119
|
+
self._add_holy_saturday(tr("سبت النور"), GREGORIAN_CALENDAR)
|
|
120
|
+
|
|
121
|
+
# Easter.
|
|
122
|
+
self._add_easter_monday(tr("عيد الفصح المجيد"), GREGORIAN_CALENDAR)
|
|
123
|
+
|
|
124
|
+
# Ascension Day.
|
|
125
|
+
self._add_ascension_thursday(tr("خميس الصعود"), GREGORIAN_CALENDAR)
|
|
126
|
+
|
|
127
|
+
# Pentecost.
|
|
128
|
+
self._add_whit_sunday(tr("أحد العنصرة"), GREGORIAN_CALENDAR)
|
|
129
|
+
|
|
130
|
+
# Catholic Christmas Day.
|
|
131
|
+
self._add_christmas_day_two(tr("عيد الميلاد المجيد الغربي"), GREGORIAN_CALENDAR)
|
|
132
|
+
|
|
133
|
+
def _populate_orthodox_holidays(self):
|
|
134
|
+
# Orthodox New Year's Day.
|
|
135
|
+
self._add_holiday_jan_14(tr("عيد رأس السنة الشرقي"))
|
|
136
|
+
|
|
137
|
+
# Orthodox Christmas Day.
|
|
138
|
+
self._add_christmas_day_two(tr("عيد الميلاد المجيد الشرقي"))
|
|
139
|
+
|
|
140
|
+
# Epiphany.
|
|
141
|
+
self._add_epiphany_day(tr("عيد الغطاس"))
|
|
142
|
+
|
|
143
|
+
# Palm Sunday.
|
|
144
|
+
self._add_palm_sunday(tr("أحد الشعانين"))
|
|
145
|
+
|
|
146
|
+
# Holy Thursday.
|
|
147
|
+
self._add_holy_thursday(tr("خميس الغسل"))
|
|
148
|
+
|
|
149
|
+
# Good Friday.
|
|
150
|
+
self._add_good_friday(tr("الجمعة العظيمة"))
|
|
151
|
+
|
|
152
|
+
# Holy Saturday.
|
|
153
|
+
self._add_holy_saturday(tr("سبت النور"))
|
|
154
|
+
|
|
155
|
+
# Easter.
|
|
156
|
+
self._add_easter_monday(tr("عيد الفصح المجيد"))
|
|
157
|
+
|
|
158
|
+
# Ascension Day.
|
|
159
|
+
self._add_ascension_thursday(tr("خميس الصعود"))
|
|
160
|
+
|
|
161
|
+
# Pentecost.
|
|
162
|
+
self._add_whit_sunday(tr("أحد العنصرة"))
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
class PS(Palestine):
|
|
166
|
+
pass
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
class PSE(Palestine):
|
|
170
|
+
pass
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
class PalestineIslamicHolidays(_CustomIslamicHolidays):
|
|
174
|
+
# All other dates follow Umm al-Qura calendar.
|
|
175
|
+
MAWLID_DATES = {
|
|
176
|
+
2023: (SEP, 27),
|
|
177
|
+
}
|
holidays/countries/peru.py
CHANGED
|
@@ -22,6 +22,8 @@ class Peru(HolidayBase, ChristianHolidays, InternationalHolidays):
|
|
|
22
22
|
References:
|
|
23
23
|
* <https://web.archive.org/web/20250414165243/https://www.gob.pe/feriados/>
|
|
24
24
|
* <https://es.wikipedia.org/wiki/Anexo:Días_feriados_en_el_Perú>
|
|
25
|
+
* [Ley N° 31788](https://web.archive.org/web/20250716164223/https://img.lpderecho.pe/wp-content/uploads/2023/06/Ley-31788-LPDerecho.pdf)
|
|
26
|
+
* [Ley N° 31822](https://web.archive.org/web/20250716164455/https://img.lpderecho.pe/wp-content/uploads/2023/07/Ley-31822-LPDerecho.pdf)
|
|
25
27
|
"""
|
|
26
28
|
|
|
27
29
|
country = "PE"
|
|
@@ -49,9 +51,19 @@ class Peru(HolidayBase, ChristianHolidays, InternationalHolidays):
|
|
|
49
51
|
# Labor Day.
|
|
50
52
|
self._add_labor_day(tr("Día del Trabajo"))
|
|
51
53
|
|
|
54
|
+
# Added via Ley N° 31788 on June 15th, 2023.
|
|
55
|
+
if self._year >= 2024:
|
|
56
|
+
# Battle of Arica and Flag Day.
|
|
57
|
+
self._add_holiday_jun_7(tr("Batalla de Arica y Día de la Bandera"))
|
|
58
|
+
|
|
52
59
|
# Saint Peter and Saint Paul's Day.
|
|
53
60
|
self._add_saints_peter_and_paul_day(tr("San Pedro y San Pablo"))
|
|
54
61
|
|
|
62
|
+
# Added via Ley N° 31822 on July 8th, 2023.
|
|
63
|
+
if self._year >= 2023:
|
|
64
|
+
# Peruvian Air Force Day.
|
|
65
|
+
self._add_holiday_jul_23(tr("Día de la Fuerza Aérea del Perú"))
|
|
66
|
+
|
|
55
67
|
# Independence Day.
|
|
56
68
|
self._add_holiday_jul_28(tr("Día de la Independencia"))
|
|
57
69
|
|
|
@@ -10,11 +10,11 @@
|
|
|
10
10
|
# Website: https://github.com/vacanza/holidays
|
|
11
11
|
# License: MIT (see LICENSE file)
|
|
12
12
|
|
|
13
|
-
from holidays.
|
|
14
|
-
from holidays.
|
|
13
|
+
from holidays.countries.united_states import UnitedStates
|
|
14
|
+
from holidays.mixins.child_entity import ChildEntity
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
class HolidaysPR(
|
|
17
|
+
class HolidaysPR(ChildEntity, UnitedStates):
|
|
18
18
|
"""Puerto Rico holidays.
|
|
19
19
|
|
|
20
20
|
Alias of a US subdivision that is also officially assigned its own country code in ISO 3166-1.
|
|
@@ -22,21 +22,13 @@ class HolidaysPR(US):
|
|
|
22
22
|
"""
|
|
23
23
|
|
|
24
24
|
country = "PR"
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
parent_entity = UnitedStates
|
|
26
|
+
# Became a U.S. Territory on April 11th, 1899.
|
|
27
|
+
start_year = 1900
|
|
28
28
|
|
|
29
|
-
def _populate_public_holidays(self) -> None:
|
|
30
|
-
self.subdiv = "PR"
|
|
31
|
-
super()._populate_public_holidays()
|
|
32
29
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
super()._populate_government_holidays()
|
|
36
|
-
|
|
37
|
-
def _populate_unofficial_holidays(self) -> None:
|
|
38
|
-
self.subdiv = "PR"
|
|
39
|
-
super()._populate_unofficial_holidays()
|
|
30
|
+
class PuertoRico(HolidaysPR):
|
|
31
|
+
pass
|
|
40
32
|
|
|
41
33
|
|
|
42
34
|
class PR(HolidaysPR):
|
|
@@ -45,7 +37,3 @@ class PR(HolidaysPR):
|
|
|
45
37
|
|
|
46
38
|
class PRI(HolidaysPR):
|
|
47
39
|
pass
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
class PuertoRico(HolidaysPR):
|
|
51
|
-
pass
|
|
@@ -0,0 +1,44 @@
|
|
|
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 holidays.countries.france import France
|
|
14
|
+
from holidays.mixins.child_entity import ChildEntity
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class HolidaysRE(ChildEntity, France):
|
|
18
|
+
"""Réunion holidays.
|
|
19
|
+
|
|
20
|
+
Alias of a French subdivision that is also officially assigned
|
|
21
|
+
its own country code in ISO 3166-1.
|
|
22
|
+
|
|
23
|
+
References:
|
|
24
|
+
* <https://en.wikipedia.org/wiki/Réunion>
|
|
25
|
+
* <https://en.wikipedia.org/wiki/Public_holidays_in_France>
|
|
26
|
+
"""
|
|
27
|
+
|
|
28
|
+
country = "RE"
|
|
29
|
+
parent_entity = France
|
|
30
|
+
parent_entity_subdivision_code = "974"
|
|
31
|
+
# Cession from the UK on May 30th, 1814.
|
|
32
|
+
start_year = 1815
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
class Reunion(HolidaysRE):
|
|
36
|
+
pass
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
class RE(HolidaysRE):
|
|
40
|
+
pass
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
class REU(HolidaysRE):
|
|
44
|
+
pass
|
|
@@ -0,0 +1,43 @@
|
|
|
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 holidays.countries.france import France
|
|
14
|
+
from holidays.mixins.child_entity import ChildEntity
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class HolidaysBL(ChildEntity, France):
|
|
18
|
+
"""Saint Barthélemy holidays.
|
|
19
|
+
|
|
20
|
+
Alias of a French subdivision that is also officially assigned
|
|
21
|
+
its own country code in ISO 3166-1.
|
|
22
|
+
|
|
23
|
+
References:
|
|
24
|
+
* <https://en.wikipedia.org/wiki/Saint_Barthélemy>
|
|
25
|
+
* <https://en.wikipedia.org/wiki/Public_holidays_in_France>
|
|
26
|
+
"""
|
|
27
|
+
|
|
28
|
+
country = "BL"
|
|
29
|
+
parent_entity = France
|
|
30
|
+
# Cession from Guadeloupe on July 15th, 2007.
|
|
31
|
+
start_year = 2008
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
class SaintBarthelemy(HolidaysBL):
|
|
35
|
+
pass
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
class BL(HolidaysBL):
|
|
39
|
+
pass
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class BLM(HolidaysBL):
|
|
43
|
+
pass
|
|
@@ -0,0 +1,43 @@
|
|
|
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 holidays.countries.france import France
|
|
14
|
+
from holidays.mixins.child_entity import ChildEntity
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class HolidaysMF(ChildEntity, France):
|
|
18
|
+
"""Saint Martin holidays.
|
|
19
|
+
|
|
20
|
+
Alias of a French subdivision that is also officially assigned
|
|
21
|
+
its own country code in ISO 3166-1.
|
|
22
|
+
|
|
23
|
+
References:
|
|
24
|
+
* <https://en.wikipedia.org/wiki/Collectivity_of_Saint_Martin>
|
|
25
|
+
* <https://en.wikipedia.org/wiki/Public_holidays_in_France>
|
|
26
|
+
"""
|
|
27
|
+
|
|
28
|
+
country = "MF"
|
|
29
|
+
parent_entity = France
|
|
30
|
+
# Cession from Guadeloupe on July 15th, 2007.
|
|
31
|
+
start_year = 2008
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
class SaintMartin(HolidaysMF):
|
|
35
|
+
pass
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
class MF(HolidaysMF):
|
|
39
|
+
pass
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class MAF(HolidaysMF):
|
|
43
|
+
pass
|
|
@@ -0,0 +1,43 @@
|
|
|
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 holidays.countries.france import France
|
|
14
|
+
from holidays.mixins.child_entity import ChildEntity
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class HolidaysPM(ChildEntity, France):
|
|
18
|
+
"""Saint Pierre and Miquelon holidays.
|
|
19
|
+
|
|
20
|
+
Alias of a French subdivision that is also officially assigned
|
|
21
|
+
its own country code in ISO 3166-1.
|
|
22
|
+
|
|
23
|
+
References:
|
|
24
|
+
* <https://en.wikipedia.org/wiki/Saint_Pierre_and_Miquelon>
|
|
25
|
+
* <https://en.wikipedia.org/wiki/Public_holidays_in_France>
|
|
26
|
+
"""
|
|
27
|
+
|
|
28
|
+
country = "PM"
|
|
29
|
+
parent_entity = France
|
|
30
|
+
# Cession from the UK on May 30th, 1814.
|
|
31
|
+
start_year = 1815
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
class SaintPierreAndMiquelon(HolidaysPM):
|
|
35
|
+
pass
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
class PM(HolidaysPM):
|
|
39
|
+
pass
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class SPM(HolidaysPM):
|
|
43
|
+
pass
|
|
@@ -0,0 +1,130 @@
|
|
|
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, JUL, AUG, SEP, _timedelta
|
|
16
|
+
from holidays.groups import ChristianHolidays, InternationalHolidays, StaticHolidays
|
|
17
|
+
from holidays.observed_holiday_base import ObservedHolidayBase, SUN_TO_NEXT_MON, SUN_TO_NEXT_TUE
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class SaintVincentAndTheGrenadines(
|
|
21
|
+
ObservedHolidayBase, ChristianHolidays, InternationalHolidays, StaticHolidays
|
|
22
|
+
):
|
|
23
|
+
"""Saint Vincent and the Grenadines holidays.
|
|
24
|
+
|
|
25
|
+
References:
|
|
26
|
+
* <https://en.wikipedia.org/wiki/Public_holidays_in_Saint_Vincent_and_the_Grenadines>
|
|
27
|
+
* [2013](https://web.archive.org/web/20240225145904/https://www.bosvg.com/wp-content/uploads/2021/10/bosvg_calendar2013-9x12_ver2-2.pdf)
|
|
28
|
+
* [2014](https://web.archive.org/web/20250610053913/https://www.bosvg.com/wp-content/uploads/2021/10/BOSVG-Calendar-2014-5th-draft.pdf)
|
|
29
|
+
* [2015](https://web.archive.org/web/20240225145904/https://www.bosvg.com/wp-content/uploads/2021/10/BOSVG-Bklet-Calendar-2015_21_11-3.pdf)
|
|
30
|
+
* [2016](https://web.archive.org/web/20240225145903/https://www.bosvg.com/wp-content/uploads/2021/10/BOSVG-2016_pgs_sm_fin.pdf)
|
|
31
|
+
* [2022](https://web.archive.org/web/20230426000952/https://www.bosvg.com/wp-content/uploads/2022/05/Tent-Calendar.pdf)
|
|
32
|
+
* [2023](https://web.archive.org/web/20240225145904/https://www.bosvg.com/wp-content/uploads/2023/03/BOSVG-CALENDAR-TENT_F_REPRINT_TENT-EXCLUDED-FINAL.pdf)
|
|
33
|
+
* [2019-2025](https://web.archive.org/web/20250214232128/https://pmoffice.gov.vc/pmoffice/index.php/public-holidays)
|
|
34
|
+
* [2020 Carnival Monday](https://web.archive.org/web/20250607111242/https://www.stvincenttimes.com/august-3rd-and-4th-2020-declared-public-holidays-in-svg/)
|
|
35
|
+
* [2025 National Spiritual Baptist Day](https://web.archive.org/web/20250513011200/https://www.gov.vc/images/pdf_documents/VINCENTIANS-PREPARE-FOR-MAY-21--SPIRITUAL-BAPTIST-LIBERATION-DAY-NATIONAL-HOLIDAY.pdf)
|
|
36
|
+
"""
|
|
37
|
+
|
|
38
|
+
country = "VC"
|
|
39
|
+
default_language = "en_VC"
|
|
40
|
+
# %s (observed).
|
|
41
|
+
observed_label = tr("%s (observed)")
|
|
42
|
+
supported_languages = ("en_US", "en_VC")
|
|
43
|
+
start_year = 1979
|
|
44
|
+
|
|
45
|
+
def __init__(self, *args, **kwargs):
|
|
46
|
+
ChristianHolidays.__init__(self)
|
|
47
|
+
InternationalHolidays.__init__(self)
|
|
48
|
+
StaticHolidays.__init__(self, cls=SaintVincentAndTheGrenadinesStaticHolidays)
|
|
49
|
+
kwargs.setdefault("observed_rule", SUN_TO_NEXT_MON)
|
|
50
|
+
super().__init__(*args, **kwargs)
|
|
51
|
+
|
|
52
|
+
def _populate_public_holidays(self):
|
|
53
|
+
# New Year's Day.
|
|
54
|
+
self._add_observed(self._add_new_years_day(tr("New Year's Day")))
|
|
55
|
+
|
|
56
|
+
# National Heroes' Day.
|
|
57
|
+
self._add_observed(self._add_holiday_mar_14(tr("National Heroes' Day")))
|
|
58
|
+
|
|
59
|
+
# Good Friday.
|
|
60
|
+
self._add_good_friday(tr("Good Friday"))
|
|
61
|
+
|
|
62
|
+
# Easter Monday.
|
|
63
|
+
self._add_easter_monday(tr("Easter Monday"))
|
|
64
|
+
|
|
65
|
+
# National Workers' Day.
|
|
66
|
+
self._add_observed(self._add_labor_day(tr("National Workers' Day")))
|
|
67
|
+
|
|
68
|
+
if self._year >= 2025:
|
|
69
|
+
# National Spiritual Baptist Day.
|
|
70
|
+
self._add_holiday_may_21(tr("National Spiritual Baptist Day"))
|
|
71
|
+
|
|
72
|
+
# Whit Monday.
|
|
73
|
+
self._add_whit_monday(tr("Whit Monday"))
|
|
74
|
+
|
|
75
|
+
# Carnival Monday.
|
|
76
|
+
name = tr("Carnival Monday")
|
|
77
|
+
carnival_monday_dates = {
|
|
78
|
+
2013: (JUL, 8),
|
|
79
|
+
2018: (JUL, 9),
|
|
80
|
+
2019: (JUL, 8),
|
|
81
|
+
2020: (AUG, 3),
|
|
82
|
+
2021: (SEP, 6),
|
|
83
|
+
2023: (JUL, 10),
|
|
84
|
+
2024: (JUL, 8),
|
|
85
|
+
}
|
|
86
|
+
dt = (
|
|
87
|
+
self._add_holiday(name, dt)
|
|
88
|
+
if (dt := carnival_monday_dates.get(self._year))
|
|
89
|
+
else self._add_holiday_1st_mon_of_jul(name)
|
|
90
|
+
)
|
|
91
|
+
|
|
92
|
+
# Carnival Tuesday.
|
|
93
|
+
self._add_holiday(tr("Carnival Tuesday"), _timedelta(dt, +1))
|
|
94
|
+
|
|
95
|
+
# Emancipation Day.
|
|
96
|
+
self._add_observed(self._add_holiday_aug_1(tr("Emancipation Day")))
|
|
97
|
+
|
|
98
|
+
# Independence Day.
|
|
99
|
+
self._add_observed(self._add_holiday_oct_27(tr("Independence Day")))
|
|
100
|
+
|
|
101
|
+
# Christmas Day.
|
|
102
|
+
self._add_observed(self._add_christmas_day(tr("Christmas Day")), rule=SUN_TO_NEXT_TUE)
|
|
103
|
+
|
|
104
|
+
# Boxing Day.
|
|
105
|
+
self._add_observed(self._add_christmas_day_two(tr("Boxing Day")))
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
class VC(SaintVincentAndTheGrenadines):
|
|
109
|
+
pass
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
class VCT(SaintVincentAndTheGrenadines):
|
|
113
|
+
pass
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
class SaintVincentAndTheGrenadinesStaticHolidays:
|
|
117
|
+
"""Saint Vincent and the Grenadines special holidays.
|
|
118
|
+
|
|
119
|
+
References:
|
|
120
|
+
* [Statutory Rules and Orders 2021 No.1](https://web.archive.org/web/20250613051716/https://pmoffice.gov.vc/pmoffice/images/PDF/Gazettes/No_1_Proclamation_Delcaring_Friday_the_22nd_and_Monday_25th_day_of_January_2021_to_be_Public_Holidays_in_Saint_Vincent_and_the_Grenadines_19th_January_2021.pdf)
|
|
121
|
+
"""
|
|
122
|
+
|
|
123
|
+
# Public Health Holiday.
|
|
124
|
+
name = tr("Public Health Holiday")
|
|
125
|
+
special_public_holidays = {
|
|
126
|
+
2021: (
|
|
127
|
+
(JAN, 22, name),
|
|
128
|
+
(JAN, 25, name),
|
|
129
|
+
),
|
|
130
|
+
}
|