Source code for schemes.scheme_user

""" Contains all classes for the user """
import datetime
from typing import Optional

from pydantic import BaseModel


[docs]class UserBase(BaseModel): """Base Class for all User Attributes: email (str): Email of the User """ email: str
[docs]class UserCreate(UserBase): """ Class to create an User. Attributes: password (str): Plaintext password """ password: str
[docs]class User(UserBase): """ User with mail an last_login Attributes: last_login (datetime.datetime): Timestamp of last login """ last_login: datetime.datetime class Config: orm_mode = True
[docs]class UserLogin(UserBase): """ User if he try to login Attributes: hashed_password (str): Hashed user password last_login (Optional[datetime.datetime]): Defaults to None """ hashed_password: str last_login: Optional[datetime.datetime] = None class Config: orm_mode = True