Source code for derobertis_cv.pldata.timelineable

import datetime
from typing import Optional


[docs] class Timelineable: begin_date: datetime.date end_date: Optional[datetime.date] = None date_format: str = "%B %Y" @property def begin_date_str(self) -> str: return self.begin_date.strftime(self.date_format) @property def end_date_str(self) -> str: if self.end_date is None: return "Present" return self.end_date.strftime(self.date_format) @property def date_str(self) -> str: return f"{self.begin_date_str} - {self.end_date_str}"