
    ~h                         d dl mZ d dlmZ ddlmZ  G d d      Z G d de      Z G d	 d
e      Z G d d      Z	 G d d      Z
y)    )defaultdict)	deprecate   )InsecureTransportErrorc                       e Zd Zed        Zedeeef   fd       Zedefd       Z	edefd       Z
edefd       Zed        Zedefd       Zed	        Zy
)OAuth2Payloadc                     t               NNotImplementedErrorselfs    [/opt/mcp/mcp-sentiment/venv/lib/python3.12/site-packages/authlib/oauth2/rfc6749/requests.pydatazOAuth2Payload.data	       !##    returnc                     t               r
   r   r   s    r   datalistzOAuth2Payload.datalist   r   r   c                 8    | j                   j                  d      S )zThe authorization server issues the registered client a client
        identifier -- a unique string representing the registration
        information provided by the client. The value is extracted from
        request.

        :return: string
        	client_idr   getr   s    r   r   zOAuth2Payload.client_id   s     yy}}[))r   c                     | j                   j                  d      }|r,d|v r(dj                  t        |j	                                     S |S )Nresponse_type )r   r   joinsortedsplit)r   rts     r   r   zOAuth2Payload.response_type   s<    YY]]?+#)88F288:.//	r   c                 8    | j                   j                  d      S )N
grant_typer   r   s    r   r"   zOAuth2Payload.grant_type$   s    yy}}\**r   c                 8    | j                   j                  d      S )Nredirect_urir   r   s    r   r$   zOAuth2Payload.redirect_uri(   s    yy}}^,,r   c                 8    | j                   j                  d      S )Nscoper   r   s    r   r&   zOAuth2Payload.scope,       yy}}W%%r   c                 8    | j                   j                  d      S )Nstater   r   s    r   r)   zOAuth2Payload.state0   r'   r   N)__name__
__module____qualname__propertyr   r   strlistr   r   r   r"   r$   r&   r)    r   r   r   r      s    $ $ $+c4i0 $ $ *3 * * s   +C + + - - &s & & & &r   r   c                   B    e Zd Zd Zed        Zedeeef   fd       Z	y)BasicOAuth2Payloadc                 r    || _         |j                         D ci c]	  \  }}||g c}}| _        y c c}}w r
   )_dataitems	_datalist)r   payloadkeyvalues       r   __init__zBasicOAuth2Payload.__init__6   s.    
9@I:3#w,IIs   3c                     | j                   S r
   )r4   r   s    r   r   zBasicOAuth2Payload.data:   s    zzr   r   c                     | j                   S r
   )r6   r   s    r   r   zBasicOAuth2Payload.datalist>   s    ~~r   N)
r*   r+   r,   r:   r-   r   r   r.   r/   r   r0   r   r   r2   r2   5   s@    J   +c4i0  r   r2   c                       e Zd ZddedefdZed        Zed        Zed        Zede	ee
f   fd	       Zedefd
       Zedefd       Zedefd       Zed        Zedefd       Zed        Zy)OAuth2RequestNmethoduric                     t        j                  |       || _        || _        |xs i | _        d | _        d | _        d | _        d | _        d | _	        d | _
        d | _        y r
   )r   checkr?   r@   headersr7   clientauth_methoduserauthorization_coderefresh_token
credentialr   r?   r@   rC   s       r   r:   zOAuth2Request.__init__D   s]    $$S)}"	"&!r   c                     t               r
   r   r   s    r   argszOAuth2Request.argsU   r   r   c                     t               r
   r   r   s    r   formzOAuth2Request.formY   r   r   c                 H    t        dd       | j                  j                  S Nz?'request.data' is deprecated in favor of 'request.payload.data'1.8versionr   r7   r   r   s    r   r   zOAuth2Request.data]   "    M	
 ||   r   r   c                 H    t        dd       | j                  j                  S )NzG'request.datalist' is deprecated in favor of 'request.payload.datalist'rQ   rR   )r   r7   r   r   s    r   r   zOAuth2Request.dataliste   s"    U	
 ||$$$r   c                 H    t        dd       | j                  j                  S )NzI'request.client_id' is deprecated in favor of 'request.payload.client_id'rQ   rR   )r   r7   r   r   s    r   r   zOAuth2Request.client_idm   s"    W	
 ||%%%r   c                 H    t        dd       | j                  j                  S )NzQ'request.response_type' is deprecated in favor of 'request.payload.response_type'rQ   rR   )r   r7   r   r   s    r   r   zOAuth2Request.response_typeu   s"    _	
 ||)))r   c                 H    t        dd       | j                  j                  S )NzK'request.grant_type' is deprecated in favor of 'request.payload.grant_type'rQ   rR   )r   r7   r"   r   s    r   r"   zOAuth2Request.grant_type}   s"    Y	
 ||&&&r   c                 H    t        dd       | j                  j                  S )NzO'request.redirect_uri' is deprecated in favor of 'request.payload.redirect_uri'rQ   rR   )r   r7   r$   r   s    r   r$   zOAuth2Request.redirect_uri   s"    ]	
 ||(((r   c                 H    t        dd       | j                  j                  S )NzA'request.scope' is deprecated in favor of 'request.payload.scope'rQ   rR   )r   r7   r&   r   s    r   r&   zOAuth2Request.scope   "    O	
 ||!!!r   c                 H    t        dd       | j                  j                  S )NzA'request.state' is deprecated in favor of 'request.payload.state'rQ   rR   )r   r7   r)   r   s    r   r)   zOAuth2Request.state   r\   r   r
   )r*   r+   r,   r.   r:   r-   rL   rN   r   r   r/   r   r   r   r"   r$   r&   r)   r0   r   r   r>   r>   C   s	   s  " $ $ $ $ ! ! %+c4i0 % % &3 & & *s * * 'C ' ' ) ) "s " " " "r   r>   c                       e Zd Zed        Zy)JsonPayloadc                     t               r
   r   r   s    r   r   zJsonPayload.data   r   r   N)r*   r+   r,   r-   r   r0   r   r   r_   r_      s    $ $r   r_   c                   $    e Zd ZddZed        Zy)JsonRequestNc                 D    || _         || _        |xs i | _        d | _        y r
   )r?   r@   rC   r7   rJ   s       r   r:   zJsonRequest.__init__   s"    }"r   c                 H    t        dd       | j                  j                  S rP   rT   r   s    r   r   zJsonRequest.data   rU   r   r
   )r*   r+   r,   r:   r-   r   r0   r   r   rb   rb      s     ! !r   rb   N)collectionsr   authlib.deprecater   errorsr   r   r2   r>   r_   rb   r0   r   r   <module>rh      sH    # ' **& *&Z X"M X"v$ $! !r   