§
    iÝ[f;  ã                   ó>   — d dl mZ d dlmZmZ  G d„ de¦  «        ZdS )é   )ÚTokenValidator)ÚInvalidTokenErrorÚInsufficientScopeErrorc                   ó$   — e Zd ZdZd„ Zd„ Zd„ ZdS )ÚIntrospectTokenValidatorÚbearerc                 ó   — t          ¦   «         ‚)a‹  Request introspection token endpoint with the given token string,
        authorization server will return token information in JSON format.
        Developers MUST implement this method before using it::

            def introspect_token(self, token_string):
                # for example, introspection token endpoint has limited
                # internal IPs to access, so there is no need to add
                # authentication.
                url = 'https://example.com/oauth/introspect'
                resp = requests.post(url, data={'token': token_string})
                resp.raise_for_status()
                return resp.json()
        )ÚNotImplementedError©ÚselfÚtoken_strings     úZ/var/www/piapp/venv/lib/python3.11/site-packages/authlib/oauth2/rfc7662/token_validator.pyÚintrospect_tokenz)IntrospectTokenValidator.introspect_token   s   € õ "Ñ#Ô#Ð#ó    c                 ó,   — |                       |¦  «        S )N)r   r   s     r   Úauthenticate_tokenz+IntrospectTokenValidator.authenticate_token   s   € Ø×$Ò$ \Ñ2Ô2Ð2r   c                 ó¾   — |r|d         st          | j        | j        ¬¦  «        ‚|                      |                     d¦  «        |¦  «        rt          ¦   «         ‚d S )NÚactive)ÚrealmÚextra_attributesÚscope)r   r   r   Úscope_insufficientÚgetr   )r   ÚtokenÚscopesÚrequests       r   Úvalidate_tokenz'IntrospectTokenValidator.validate_token   si   € Øð 	^˜E (œOð 	^Ý#¨$¬*ÀtÔG\Ð]Ñ]Ô]Ð]Ø×"Ò" 5§9¢9¨WÑ#5Ô#5°vÑ>Ô>ð 	+Ý(Ñ*Ô*Ð*ð	+ð 	+r   N)Ú__name__Ú
__module__Ú__qualname__Ú
TOKEN_TYPEr   r   r   © r   r   r   r      sF   € € € € € Ø€Jð$ð $ð $ð 3ð 3ð 3ð+ð +ð +ð +ð +r   r   N)Úrfc6749r   Úrfc6750r   r   r   r"   r   r   ú<module>r%      ss   ðØ $Ð $Ð $Ð $Ð $Ð $ðð ð ð ð ð ð ð ð+ð +ð +ð +ð +˜~ñ +ô +ð +ð +ð +r   