from flask_login import UserMixin from db.SQLiteClient import create_user, get_user, get_user_by_email class User(UserMixin): def __init__(self, id: int, name: str, email: str, password: str | None = None): self.id = id self.name = name self.email = email self.password = password @staticmethod def create(name: str, email: str, password: str): id = create_user(name, email, password) return User(id, name, email) @staticmethod def get(id: int): user = get_user(id) return User(user[0], user[1], user[2], user[3]) if user else None @staticmethod def get_by_email(email: str): user = get_user_by_email(email) return User(user[0], user[1], user[2], user[3]) if user else None