32 lines
937 B
Python
32 lines
937 B
Python
"""Authentication related exceptions."""
|
|
|
|
from typing import override
|
|
|
|
from .models import LoginError
|
|
|
|
|
|
class AuthenticationFailedError(Exception):
|
|
"""Authentication failed."""
|
|
|
|
@override
|
|
def __init__(self, message: str | None = None) -> None:
|
|
"""Initialize exception class."""
|
|
if not message:
|
|
message = "Invalid user or password."
|
|
super().__init__(message)
|
|
self.login_error: LoginError = LoginError(
|
|
title="Authentication Failed", message=message
|
|
)
|
|
|
|
|
|
class AuthenticationNeededError(Exception):
|
|
"""Authentication needed error."""
|
|
|
|
@override
|
|
def __init__(self, message: str | None = None) -> None:
|
|
"""Initialize exception class."""
|
|
if not message:
|
|
message = "You need to be logged in to continue."
|
|
super().__init__(message)
|
|
self.login_error: LoginError = LoginError(title="Unauthorized", message=message)
|