
    ~h                         d dl mZ d dlmZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dlm
Z
  G d d	e	      Z G d
 de
      Z G d de      Z G d de      Zy)    )defaultdict)cached_property)Request)JsonPayload)JsonRequest)OAuth2Payload)OAuth2Requestc                   8    e Zd ZdefdZed        Zed        Zy)FlaskOAuth2Payloadrequestc                     || _         y N_requestselfr   s     f/opt/mcp/mcp-sentiment/venv/lib/python3.12/site-packages/authlib/integrations/flask_oauth2/requests.py__init__zFlaskOAuth2Payload.__init__   	        c                 .    | j                   j                  S r   )r   valuesr   s    r   datazFlaskOAuth2Payload.data   s    }}###r   c                     t        t              }| j                  D ]/  }||   j                  | j                  j	                  |             1 |S r   )r   listr   extendgetlist)r   r   ks      r   datalistzFlaskOAuth2Payload.datalist   sE    T" 	3A1ITYY..q12	3r   N)	__name__
__module____qualname__r   r   propertyr   r   r     r   r   r   r      s6        $ $  r   r   c                   D     e Zd Zdef fdZed        Zed        Z xZS )FlaskOAuth2Requestr   c                     t         |   |j                  |j                  |j                         || _        t        |      | _        y r   )superr   methodurlheadersr   r   payloadr   r   	__class__s     r   r   zFlaskOAuth2Request.__init__   s3    gooF)'2r   c                 .    | j                   j                  S r   )r   argsr   s    r   r1   zFlaskOAuth2Request.args"       }}!!!r   c                 .    | j                   j                  S r   )r   formr   s    r   r4   zFlaskOAuth2Request.form&   r2   r   )	r!   r"   r#   r   r   r$   r1   r4   __classcell__r/   s   @r   r'   r'      s7    3 3
 " " " "r   r'   c                   (    e Zd ZdefdZed        Zy)FlaskJsonPayloadr   c                     || _         y r   r   r   s     r   r   zFlaskJsonPayload.__init__,   r   r   c                 6    | j                   j                         S r   )r   get_jsonr   s    r   r   zFlaskJsonPayload.data/   s    }}%%''r   N)r!   r"   r#   r   r   r$   r   r%   r   r   r8   r8   +   s"        ( (r   r8   c                   $     e Zd Zdef fdZ xZS )FlaskJsonRequestr   c                     t         |   |j                  |j                  |j                         t        |      | _        y r   )r)   r   r*   r+   r,   r8   r-   r.   s     r   r   zFlaskJsonRequest.__init__5   s,    gooF'0r   )r!   r"   r#   r   r   r5   r6   s   @r   r=   r=   4   s    1 1 1r   r=   N)collectionsr   	functoolsr   flask.wrappersr   authlib.oauth2.rfc6749r   r   r   r	   r   r'   r8   r=   r%   r   r   <module>rC      sJ    # % " . . 0 0  " "({ (1{ 1r   