File size: 641 Bytes
33f435b | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | from typing import Optional, Dict, Any
from dataclasses import dataclass
@dataclass
class ProviderError(Exception):
"""Base class for Provider-related exceptions"""
message: str
details: Optional[Dict[str, Any]] = None
def __str__(self):
return f"{self.message} - Details: {self.details}" if self.details else self.message
class ResponseTimeoutError(ProviderError):
pass
class ContentFilterError(ProviderError):
pass
class BrowserError(ProviderError):
pass
class MessageTooLongError(ProviderError):
pass
class LoginPromptError(ProviderError):
pass
class AuthError(ProviderError):
pass
|