Ë
    îñþiŽ  ã                  ó>  — d dl mZ d dlZd dlZd dlmZmZ d dlmZm	Z	 d dl
mZ d dlmZ d dlmZ d dlmZmZ d d	lmZ d d
lmZ  e	d«      Zdd„Z	 	 d	 	 	 	 	 	 	 dd„Z G d„ de«      Z G d„ d«      Z G d„ d«      Z G d„ d«      Z G d„ de«      Z G d„ de«      Z y)é    )ÚannotationsN)ÚCallableÚSequence)ÚAnyÚ	ParamSpec)Ú	urlencode)Úis_async_callable)ÚHTTPException)ÚHTTPConnectionÚRequest)ÚRedirectResponse)Ú	WebSocketÚ_Pc                óF   — |D ]  }|| j                   j                  vsŒ y y)NFT)ÚauthÚscopes)Úconnr   Úscopes      úX/root/aria/mcps/aria-brain/venv/lib/python3.12/site-packages/starlette/authentication.pyÚhas_required_scoper      s+   € Øò ˆØ˜Ÿ	™	×(Ñ(Ò(Ùðð ó    c                ó`   ‡‡‡— t        | t        «      r| gn
t        | «      Š	 	 	 	 dˆˆˆfd„}|S )Nc                óò  •‡ ‡— t        j                  ‰ «      }t        |j                  j	                  «       «      D ]1  \  Š}|j
                  dk(  s|j
                  dk(  sŒ%|j
                  } n t        d‰ › d�«      ‚|dk(  r"t        j                  ‰ «      dˆ ˆˆ	fd„«       }|S t        ‰ «      r$t        j                  ‰ «      d	ˆ ˆˆˆ	ˆ
fd„«       }|S t        j                  ‰ «      d	ˆ ˆˆˆ	ˆ
fd„«       }|S )
NÚrequestÚ	websocketz2No "request" or "websocket" argument on function "ú"c               Ÿ  óî   •K  — |j                  d‰t        | «      k  r| ‰   nd «      }t        |t        «      sJ ‚t	        |‰«      s|j                  «       ƒ d {  –—†  y  ‰| i |¤Žƒ d {  –—†  y 7 Œ7 Œ­w)Nr   )ÚgetÚlenÚ
isinstancer   r   Úclose)ÚargsÚkwargsr   ÚfuncÚidxÚscopes_lists      €€€r   Úwebsocket_wrapperz6requires.<locals>.decorator.<locals>.websocket_wrapper-   sn   øè ø€ à"ŸJ™J {ÀÄsÈ4ÃyÂ°D¸²IÐVZÓ[�	Ü! )¬YÔ7Ð7Ð7ä)¨)°[ÔAØ#Ÿ/™/Ó+×+Ñ+á Ð/¨Ñ/×/Ñ/ð ,øà/ús$   ƒAA5ÁA1ÁA5Á+A3Á,A5Á3A5c               Ÿ  óX  •K  — |j                  d‰t        | «      k  r| ‰   nd «      }t        |t        «      sJ ‚t	        |‰«      sQ‰�Ct        dt        |j                  «      i«      }|j                  ‰«      › d|› �}t        |d¬«      S t        ‰	¬«      ‚ ‰| i |¤Žƒ d {  –—† S 7 Œ­w©Nr   Únextú?i/  )ÚurlÚstatus_code)r-   ©r   r   r    r   r   r   Ústrr,   Úurl_forr   r
   ©
r"   r#   r   Úorig_request_qparamÚnext_urlr$   r%   Úredirectr&   r-   s
        €€€€€r   Úasync_wrapperz2requires.<locals>.decorator.<locals>.async_wrapper;   s«   øè ø€ à Ÿ*™* Y¸SÄ3ÀtÃ9º_°°S²	ÐRVÓW�Ü! '¬7Ô3Ð3Ð3ä)¨'°;Ô?ØÐ+Ü.7¸ÄÀWÇ[Á[ÓAQÐ8RÓ.SÐ+Ø&-§o¡o°hÓ&?Ð%@ÀÐBUÐAVÐ#W˜Ü/°HÈ#ÔNÐNÜ'°KÔ@Ð@Ù! 4Ð2¨6Ñ2×2Ð2Ð2ús   ƒB B*Â#B(Â$B*c                 ó<  •— |j                  d‰t        | «      k  r| ‰   nd «      }t        |t        «      sJ ‚t	        |‰«      sQ‰�Ct        dt        |j                  «      i«      }|j                  ‰«      › d|› �}t        |d¬«      S t        ‰	¬«      ‚ ‰| i |¤ŽS r)   r.   r1   s
        €€€€€r   Úsync_wrapperz1requires.<locals>.decorator.<locals>.sync_wrapperL   s¡   ø€ à Ÿ*™* Y¸SÄ3ÀtÃ9º_°°S²	ÐRVÓW�Ü! '¬7Ô3Ð3Ð3ä)¨'°;Ô?ØÐ+Ü.7¸ÄÀWÇ[Á[ÓAQÐ8RÓ.SÐ+Ø&-§o¡o°hÓ&?Ð%@ÀÐBUÐAVÐ#W˜Ü/°HÈ#ÔNÐNÜ'°KÔ@Ð@Ù˜TÐ, VÑ,Ð,r   )r"   ú_P.argsr#   ú	_P.kwargsÚreturnÚNone)r"   r8   r#   r9   r:   r   )
ÚinspectÚ	signatureÚ	enumerateÚ
parametersÚvaluesÚnameÚ	ExceptionÚ	functoolsÚwrapsr	   )r$   ÚsigÚ	parameterÚtype_r'   r5   r7   r%   r4   r&   r-   s   `      @€€€r   Ú	decoratorzrequires.<locals>.decorator    sþ   ú€ ô ×Ñ Ó%ˆÜ'¨¯©×(=Ñ(=Ó(?Ó@ò 	Z‰NˆC�Ø�~‰~ Ò*¨i¯n©nÀÓ.KØ!Ÿ™�Ùð	Zô
 ÐPÐQUÐPVÐVWÐXÓYÐYà�KÒä�_‰_˜TÓ"ö0ó #ð0ð %Ð$ä˜tÔ$ä�_‰_˜TÓ"÷
3ð 
3ó #ð
3ð !Ð ô �_‰_˜TÓ"÷
-ð 
-ó #ð
-ð  Ðr   )r$   úCallable[_P, Any]r:   rI   )r    r/   Úlist)r   r-   r4   rH   r&   s    `` @r   ÚrequiresrK      s9   ú€ ô
 )¨´Ô5�6‘(¼4À»<€Kð9 Øð9 à	÷9 ðv Ðr   c                  ó   — e Zd Zy)ÚAuthenticationErrorN)Ú__name__Ú
__module__Ú__qualname__© r   r   rM   rM   ^   s   „ Ør   rM   c                  ó   — e Zd Zdd„Zy)ÚAuthenticationBackendc              ƒ  ó   K  — t        «       ‚­w©N©ÚNotImplementedError)Úselfr   s     r   Úauthenticatez"AuthenticationBackend.authenticatec   s   è ø€ Ü!Ó#Ð#ùs   ‚N)r   r   r:   z'tuple[AuthCredentials, BaseUser] | None)rN   rO   rP   rY   rQ   r   r   rS   rS   b   s   „ ô$r   rS   c                  ó   — e Zd Zddd„Zy)ÚAuthCredentialsNc                ó8   — |€g | _        y t        |«      | _        y rU   )rJ   r   )rX   r   s     r   Ú__init__zAuthCredentials.__init__h   s   € Ø"˜N�bˆ�´°V³ˆ�r   rU   )r   zSequence[str] | None)rN   rO   rP   r]   rQ   r   r   r[   r[   g   s   „ õ=r   r[   c                  óB   — e Zd Zedd„«       Zedd„«       Zedd„«       Zy)ÚBaseUserc                ó   — t        «       ‚rU   rV   ©rX   s    r   Úis_authenticatedzBaseUser.is_authenticatedm   ó   € ä!Ó#Ð#r   c                ó   — t        «       ‚rU   rV   ra   s    r   Údisplay_namezBaseUser.display_nameq   rc   r   c                ó   — t        «       ‚rU   rV   ra   s    r   ÚidentityzBaseUser.identityu   rc   r   N©r:   Úbool©r:   r/   )rN   rO   rP   Úpropertyrb   re   rg   rQ   r   r   r_   r_   l   s<   „ Øò$ó ð$ð ò$ó ð$ð ò$ó ñ$r   r_   c                  ó8   — e Zd Zdd„Zedd„«       Zedd„«       Zy)Ú
SimpleUserc                ó   — || _         y rU   ©Úusername)rX   rp   s     r   r]   zSimpleUser.__init__{   s	   € Ø ˆ�r   c                 ó   — y)NTrQ   ra   s    r   rb   zSimpleUser.is_authenticated~   s   € àr   c                ó   — | j                   S rU   ro   ra   s    r   re   zSimpleUser.display_name‚   s   € à�}‰}Ðr   N)rp   r/   r:   r;   rh   rj   )rN   rO   rP   r]   rk   rb   re   rQ   r   r   rm   rm   z   s/   „ ó!ð òó ðð òó ñr   rm   c                  ó0   — e Zd Zedd„«       Zedd„«       Zy)ÚUnauthenticatedUserc                 ó   — y)NFrQ   ra   s    r   rb   z$UnauthenticatedUser.is_authenticatedˆ   s   € àr   c                 ó   — y)NÚ rQ   ra   s    r   re   z UnauthenticatedUser.display_nameŒ   s   € àr   Nrh   rj   )rN   rO   rP   rk   rb   re   rQ   r   r   rt   rt   ‡   s(   „ Øòó ðð òó ñr   rt   )r   r   r   zSequence[str]r:   ri   )i“  N)r   zstr | Sequence[str]r-   Úintr4   z
str | Noner:   z0Callable[[Callable[_P, Any]], Callable[_P, Any]])!Ú
__future__r   rC   r<   Úcollections.abcr   r   Útypingr   r   Úurllib.parser   Ústarlette._utilsr	   Ústarlette.exceptionsr
   Ústarlette.requestsr   r   Ústarlette.responsesr   Ústarlette.websocketsr   r   r   rK   rB   rM   rS   r[   r_   rm   rt   rQ   r   r   ú<module>r‚      s­   ðÝ "ã Û ß .ß !Ý "å .Ý .ß 6Ý 0Ý *áˆtƒ_€óð ØðBØðBàðBð ðBð 6ó	BôJ	˜)ô 	÷$ñ $÷
=ñ =÷
$ñ $ô
�ô 
ô˜(õ r   