o
    i}                     @   sP   d Z ddlmZmZmZmZ ddlmZmZm	Z	 erddl
Z
G dd de	ZdS )zNaver SSO Oauth Helper class.    )TYPE_CHECKINGClassVarListOptional)DiscoveryDocumentOpenIDSSOBaseNc                   @   sd   e Zd ZU dZdZg Zeee  e	d< ddiZ
ee	d< defdd	Zddeded defddZd
S )NaverSSOz(Class providing login using Naver OAuth.Znaverscopeacceptzapplication/jsonadditional_headersreturnc                    s   ddddS )Nz(https://nid.naver.com/oauth2.0/authorizez$https://nid.naver.com/oauth2.0/tokenz#https://openapi.naver.com/v1/nid/me)Zauthorization_endpointZtoken_endpointZuserinfo_endpoint )selfr   r   L/home/app/Keep/.python/lib/python3.10/site-packages/fastapi_sso/sso/naver.pyget_discovery_document   s
   zNaverSSO.get_discovery_documentNresponsesessionzhttpx.AsyncClientc                    s<   t |d d |d d|d d|d d| jdS )Nr   idemailZnicknameZprofile_image)r   r   Zdisplay_nameZpictureprovider)r   getr   )r   r   r   r   r   r   openid_from_response   s   
zNaverSSO.openid_from_response)N)__name__
__module____qualname____doc__r   r
   r   r   str__annotations__r   r   r   dictr   r   r   r   r   r   r   r	      s   
  r	   )r   typingr   r   r   r   Zfastapi_sso.sso.baser   r   r   Zhttpxr	   r   r   r   r   <module>   s    