from fastapi import HTTPException, status class BlackPhoenixException(HTTPException): status_code = 500 detail = "Внутренняя ошибка сервера" def __init__(self): super().__init__(status_code=self.status_code, detail=self.detail) class IncorrectTokenFormatException(BlackPhoenixException): status_code = status.HTTP_401_UNAUTHORIZED detail = "Некорректный формат токена" class TokenAbsentException(BlackPhoenixException): status_code = status.HTTP_401_UNAUTHORIZED detail = "Токен отсутствует" class TokenExpiredException(BlackPhoenixException): status_code = status.HTTP_401_UNAUTHORIZED detail = "Токен истёк" class UserNotFoundException(BlackPhoenixException): status_code = status.HTTP_404_NOT_FOUND detail = "Юзер не найден" class PasswordAlreadyInUseException(BlackPhoenixException): status_code = status.HTTP_409_CONFLICT detail = "Пароль уже занят" class UserMustConfirmEmailException(BlackPhoenixException): status_code = status.HTTP_409_CONFLICT detail = "Сначала подтвердите почту" class IncorrectDataException(BlackPhoenixException): status_code = status.HTTP_409_CONFLICT detail = "Ты передал какую-то хуйню"