
    E6i                        S SK Jr  S SK Jr  S SK Jr  S SK Jr   " S S\5      r " S S\5      r " S	 S
\5      r " S S\5      r	 " S S\5      r
 " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S \5      r " S! S"\5      r " S# S$\5      r " S% S&\5      rS+S( jr\\	\
\\\\\\\\\\\S).r\\\\\\
\\\S*.	rg'),    )absolute_import)division)print_function)unicode_literalsc                       \ rS rSrSrSrg)CoinbaseError   zBase error class for all exceptions raised in this library.

Will never be raised naked; more specific subclasses of this exception will
be raised when appropriate. N)__name__
__module____qualname____firstlineno____doc____static_attributes__r
       O/home/james-whalen/.local/lib/python3.13/site-packages/coinbase/wallet/error.pyr   r      s    !r   r   c                   (    \ rS rSrSrSS jrS rSrg)APIError   zFRaised for errors related to interacting with the Coinbase API server.Nc                     UR                   U l         Xl        U=(       d    SU l        U=(       d    SU l        [	        USS 5      U l        U=(       d    / U l        g )N request)status_coderesponseidmessagegetattrr   errors)selfr   r   r   r   s        r   __init__APIError.__init__   sF    ++DMhBDG=bDL8Y5DL,BDKr   c                 >    SU R                   < SU R                  < 3$ )NzAPIError(id=z): )r   r   )r   s    r   __str__APIError.__str__   s    $(GGT\\::r   )r   r   r   r   r   r   N)r   r   r   r   r   r    r#   r   r
   r   r   r   r      s    N;r   r   c                       \ rS rSrSrg)TwoFactorRequiredError   r
   Nr   r   r   r   r   r
   r   r   r'   r'          r   r'   c                       \ rS rSrSrg)ParamRequiredError   r
   Nr)   r
   r   r   r,   r,      s    Dr   r,   c                       \ rS rSrSrg)ValidationError   r
   Nr)   r
   r   r   r/   r/      s    r   r/   c                       \ rS rSrSrg)InvalidRequestError   r
   Nr)   r
   r   r   r2   r2          Tr   r2   c                       \ rS rSrSrg)PersonalDetailsRequiredError    r
   Nr)   r
   r   r   r6   r6       s    dr   r6   c                       \ rS rSrSrg)AuthenticationError!   r
   Nr)   r
   r   r   r9   r9   !   r4   r   r9   c                       \ rS rSrSrg)UnverifiedEmailError"   r
   Nr)   r
   r   r   r<   r<   "   s    dr   r<   c                       \ rS rSrSrg)InvalidTokenError#   r
   Nr)   r
   r   r   r?   r?   #       4r   r?   c                       \ rS rSrSrg)RevokedTokenError$   r
   Nr)   r
   r   r   rC   rC   $   rA   r   rC   c                       \ rS rSrSrg)ExpiredTokenError%   r
   Nr)   r
   r   r   rF   rF   %   rA   r   rF   c                       \ rS rSrSrg)InvalidScopeError&   r
   Nr)   r
   r   r   rI   rI   &   rA   r   rI   c                       \ rS rSrSrg)NotFoundError'   r
   Nr)   r
   r   r   rL   rL   '   s    tr   rL   c                       \ rS rSrSrg)RateLimitExceededError(   r
   Nr)   r
   r   r   rO   rO   (   r*   r   rO   c                       \ rS rSrSrg)InternalServerError)   r
   Nr)   r
   r   r   rR   rR   )   r4   r   rR   c                       \ rS rSrSrg)ServiceUnavailableError*   r
   Nr)   r
   r   r   rU   rU   *   s    r   rU   Nc                    U=(       d    U R                  5       nUR                  SS5      nU(       a  US   O0 nU(       a%  UR                  SS5      nUR                  SS5      nO"UR                  S5      nUR                  S5      n[        R                  US5      =(       d$    [        R                  U R                  [
        5      nU" XXR5      $ )	zWHelper method for creating errors and attaching HTTP response/request
details to them.
r   Nr   r   r   r   errorerror_description)jsonget_error_id_to_class_status_code_to_classr   r   )r   blob
error_listrX   error_iderror_messageerror_classs          r   build_api_errorrc   -   s     
	 $xx$'*&:a=B%
yyr"HIIi,M
 xx HHH01MXt, @ 4 4h?  
X	CCr   )two_factor_requiredparam_requiredvalidation_errorinvalid_requestpersonal_details_requiredauthentication_errorunverified_emailinvalid_tokenrevoked_tokenexpired_tokeninvalid_scope	not_foundrate_limit_exceededinternal_server_error)	i  i  i  i  i  i  i  i  i  r%   )
__future__r   r   r   r   	Exceptionr   r   r'   r,   r/   r2   r6   r9   r<   r?   rC   rF   rI   rL   rO   rR   rU   rc   r\   r]   r
   r   r   <module>rt      s   &  % '!I !
;} 
; -X , ( ( %h % )( ) 28 2 )( ) *8 * ' ' ' ' ' ' ' ' #H # ,X , )( ) -h -D. 0&%(;-*$$$$/. $ 
								 
 r   