
    -i                        d dl Z d dlmZ dZdZ G d de          Z G d de          Z G d	 d
e          Z G d de          Z	 G d de          Z
 G d de
          Z G d de
          Z G d de
          Z e j                    Z e j                    Ze                    e j                   e                    e j                   e                    e           ddeeef         deddfdZdS )    N)Union)	IncorrectColorInvalidOptionError	HTTPError
ImageErrorImageValueErrorImageOSErrorPILError	log_errorz	errors.pyc                   *     e Zd ZdZddef fdZ xZS )r   zIncorrect colorNwrong_colorc                 R    t                                          d| d           d S )NzIncorrect color given: "z-" is not an html hex code! (example: #ffffff)super__init__)selfr   	__class__s     M/var/www/html/speakWrite/venv/lib/python3.11/site-packages/dicebear/errors.pyr   zIncorrectColor.__init__+   s-    nKnnnooooo    N__name__
__module____qualname____doc__strr   __classcell__r   s   @r   r   r   (   s[        p pC p p p p p p p p p pr   r   c                   *     e Zd ZdZddef fdZ xZS )r   zInvalid optionNwrong_optionc                 R    t                                          d| d           d S )NzInvalid option given: "zO" is not an existing option! (use `Avatar.options` to get all possible options)r   )r   r!   r   s     r   r   zInvalidOption.__init__2   sC     Dl  D  D  D	
 	
 	
 	
 	
r   r   r   r   s   @r   r   r   /   sO        
 
S 
 
 
 
 
 
 
 
 
 
r   r   c                   .     e Zd ZdZddedef fdZ xZS )r   zGeneral error 
error_typemessagec                 `    t                                          ||rdndz    |            d S )Nz: r$   r   )r   r%   r&   r   s      r   r   zError.__init__;   s:    J**D$$"EPwPPQQQQQr   )r$   r$   r   r   s   @r   r   r   8   sc        R R3 Rc R R R R R R R R R Rr   r   c                   (     e Zd ZdZdef fdZ xZS )r   z
HTTP errordc                 f    t                                          t          |                     d S )N)r&   )r   r   r   )r   r)   r   s     r   r   zHTTPError.__init__B   s*    Q(((((r   )r   r   r   r   dictr   r   r   s   @r   r   r   ?   sJ        )$ ) ) ) ) ) ) ) ) ) )r   r   c                   *     e Zd ZdZddef fdZ xZS )r   zGeneral image errorNr&   c                 J    t                                          |           d S r   r   r   r&   r   s     r   r   zImageError.__init__I   s!    !!!!!r   r   r   r   s   @r   r   r   F   sO        " " " " " " " " " " " "r   r   c                   *     e Zd ZdZddef fdZ xZS )r	   zImage value errorN	file_namec                 R    t                                          d| d           d S )Nz,The output format could not be determined ("")r   )r   r0   r   s     r   r   zImageValueError.__init__P   s-    U	UUUVVVVVr   r   r   r   s   @r   r	   r	   M   s[        W W# W W W W W W W W W Wr   r	   c                   *     e Zd ZdZddef fdZ xZS )r
   zImage OS errorNr&   c                 R    t                                          d| d           d S )Nz_The file could not be written. The file may have been created, and may contain partial data. ("r2   r   r.   s     r   r   zImageOSError.__init__W   s8    ynuyyy	
 	
 	
 	
 	
r   r   r   r   s   @r   r
   r
   T   sO        
 
 
 
 
 
 
 
 
 
 
 
r   r
   c                   *     e Zd ZdZddef fdZ xZS )r   zPillow error0To use this function you need to install Pillow.r&   c                 P    t                                          d|            d S )Nz%Module "PIL (=Pillow)" is not found! r   r.   s     r   r   zPILError.__init__`   s*    JJJKKKKKr   )r6   r   r   s   @r   r   r   ]   s[        L L L L L L L L L L L Lr   r   F	exceptionraise_errorreturnc                 4   |du rot          | t                    r| j        j        nd}t                              t          j        d| d                     t          	                    |            dS t          | t                    rt          |           n| )a  
    Log an error.

    :param exception: class `Exception` | `str` :: the exception or string to log as error
    :type exception: Union[Exception, str]
    :param raise_error: class `bool` :: whether to raise this exception or not (default: False)
    :type raise_error: bool
    Fr   z%(levelname)s: z: %(message)sN)
isinstance	Exceptionr   r   _error_handlersetFormatterlogging	Formatter_loggererrorr   RuntimeError)r8   r9   exception_names      r   r   r   k   s     e9CIy9Y9Yf,55_f##G$56e6e6e6e$f$fgggi   %/	3%?%?
N,y
!
!
!YNr   )F)r@   typingr   __all____filename__r=   r   r   r   r   r   r	   r
   r   	getLoggerrB   StreamHandlerr>   setLevelERROR
addHandlerr   boolr    r   r   <module>rP      sM  .       
 p p p p pY p p p
 
 
 
 
I 
 
 
R R R R RI R R R) ) ) ) ) ) ) )" " " " " " " "W W W W Wj W W W
 
 
 
 
: 
 
 
L L L L Lz L L L '


&&((          & & &   > " " "O Oy#~. OT Od O O O O O Or   