Ë
    ûûàgy  ã                   óÂ   — d dl mZ d dlmZ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
 d dlmZ d dlmZ  G d	„ d
«      Zd„ Zed„ «       Zdeeeef      fd„Zy)é    )Úcontextmanager)ÚAnyÚDictÚOptional)ÚSimpleLazyObjectÚempty)Úapp_settings)Úget_pending_stage)ÚImmediateHttpResponse)ÚClient)Ú
sessionkitc                   ó8   — e Zd Zd„ Zed„ «       Zd„ Zed„ «       Zy)ÚAuthenticationStatusc                 ó   — || _         y ©N)Úrequest)Úselfr   s     ú_/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/allauth/headless/internal/authkit.pyÚ__init__zAuthenticationStatus.__init__   s	   € Øˆ�ó    c                 óB   — | j                   j                  j                  S r   )r   ÚuserÚis_authenticated©r   s    r   r   z%AuthenticationStatus.is_authenticated   s   € à�|‰|× Ñ ×1Ñ1Ð1r   c                 ó,   — t        | j                  «      S r   )r
   r   r   s    r   r
   z&AuthenticationStatus.get_pending_stage   s   € Ü  §¡Ó.Ð.r   c                 óŒ   — t         j                  syddlm} t	        |j
                  j                  | j                  «      «      S )NFr   )Úflows)Úallauth_settingsÚSOCIALACCOUNT_ENABLEDÚallauth.socialaccount.internalr   ÚboolÚsignupÚget_pending_signupr   )r   r   s     r   Úhas_pending_signupz'AuthenticationStatus.has_pending_signup   s/   € ä×5Ò5ØÝ8ä�E—L‘L×3Ñ3°D·L±LÓAÓBÐBr   N)Ú__name__Ú
__module__Ú__qualname__r   Úpropertyr   r
   r$   © r   r   r   r      s6   „ òð ñ2ó ð2ò/ð ñCó ñCr   r   c                 ó¤   — dD ]  }t        | |«      sŒt        | |«       Œ t        | j                  t        «      rt
        | j                  _        y y )N)Ú_cached_userÚ_acached_user)ÚhasattrÚdelattrÚ
isinstancer   r   r   Ú_wrapped)r   Úattrs     r   Úpurge_request_user_cacher2   "   sG   € Ø1ò #ˆÜ�7˜DÕ!Ü�G˜TÕ"ð#ô �'—,‘,Ô 0Ô1Ü %ˆ�‰Õð 2r   c              #   ó”  K  — ddl m} | j                  }| j                  }	 t	        j
                  «       | _        t        | «       t        j                  }|j                  | «      }|r8|j                  |«      }|st         || d¬«      «      ‚|| _        t        | «       | j                  | j                  j                  _        | j                  j                  j                  j                   d –— | j                  j                   r4| j                  j#                  «       s| j                  j%                  «        || _        || _        d| j&                  d<   y # | j                  j                   r4| j                  j#                  «       s| j                  j%                  «        || _        || _        d| j&                  d<   w xY w­w)Nr   )ÚUnauthorizedResponseiš  )ÚstatusFÚCSRF_COOKIE_NEEDS_UPDATE)Úallauth.headless.base.responser4   r   Úsessionr   Únew_sessionr2   r	   ÚTOKEN_STRATEGYÚget_session_tokenÚlookup_sessionr   ÚallauthÚheadlessÚ	_pre_userÚpkÚmodifiedÚis_emptyÚsaveÚMETA)r   r4   Úold_userÚold_sessionÚstrategyÚsession_tokenr8   s          r   Úauthentication_contextrI   *   sS  è ø€ åCà�|‰|€HØ—/‘/€Kð9Ü$×0Ñ0Ó2ˆŒÜ  Ô)ä×.Ñ.ˆØ ×2Ñ2°7Ó;ˆÙØ×-Ñ-¨mÓ<ˆGÙÜ+Ñ,@ÀÐQTÔ,UÓVÐVØ%ˆGŒOÜ$ WÔ-Ø-4¯\©\ˆ�‰× Ñ Ô*à�‰× Ñ ×*Ñ*×-Ò-Ûà�?‰?×#Ò#¨G¯O©O×,DÑ,DÔ,FØ�O‰O× Ñ Ô"ØˆŒØ%ˆŒà38ˆ�‰Ð/Ò0øð �?‰?×#Ò#¨G¯O©O×,DÑ,DÔ,FØ�O‰O× Ñ Ô"ØˆŒØ%ˆŒà38ˆ�‰Ð/Ò0üs   ‚G¢CE Ã4A(GÅA)GÇGÚreturnc                 óv  — | j                   j                  j                  t        j                  k7  ry| j
                  j                  sy| j                   j                  j                  }|j                  r$|j                  | j
                  j                  k(  ryt        j                  }|j                  | «      S )z?
    Determines if a new access token needs to be exposed.
    N)r=   r>   Úclientr   ÚAPPr   r   r?   r@   r	   r:   Úcreate_access_token_payload)r   Úpre_userrG   s      r   Úexpose_access_tokenrP   I   sƒ   € ð ‡�×Ñ×&Ñ&¬&¯*©*Ò4ØØ�<‰<×(Ò(ØØ�‰×'Ñ'×1Ñ1€HØ× Ò  X§[¡[°G·L±L·O±OÒ%CØÜ×*Ñ*€HØ×/Ñ/°Ó8Ð8r   N)Ú
contextlibr   Útypingr   r   r   Údjango.utils.functionalr   r   r=   r	   r   Ú!allauth.account.internal.stagekitr
   Úallauth.core.exceptionsr   Úallauth.headlessÚallauth.headless.constantsr   Úallauth.headless.internalr   r   r2   rI   ÚstrrP   r)   r   r   ú<module>rZ      sa   ðÝ %ß &Ñ &ç ;å 4Ý ?Ý 9Ý )Ý -Ý 0÷Cñ Cò(&ð ñ9ó ð9ð<9 H¨T°#°s°(©^Ñ$<ô 9r   