Source code for easy_time_tracker.util.schemas
"""
Data schemas
"""
from typing import List, Optional
from pydantic import BaseModel, Field # pylint: disable=no-name-in-module
[docs]class StartTimeRecordSchema(BaseModel): # pylint: disable=too-few-public-methods
"""Class schema to start a record"""
description: str
people: list
project: Optional[str] = Field(default='na')
time_zone: str
start_time: str
[docs]class EndTimeRecordSchema(StartTimeRecordSchema): # pylint: disable=too-few-public-methods
"""Class schema to end a record"""
end_time: str
ending_comments: Optional[str] = Field(default='no comments added')
total_time_worked: str
[docs]class CompletedTimeRecordsSchema(BaseModel): # pylint: disable=too-few-public-methods
"""Class schema for records archive"""
records: List[EndTimeRecordSchema]