o
    õÁh|  ã                   @   sZ   d dl mZ d dlmZ d dlmZ d dlmZ G dd„ deƒZG dd„ deƒZ	e	gZ
d	S )
é    )ÚEmailAddress)ÚProviderAccount)ÚKakaoOAuth2Adapter)ÚOAuth2Providerc                   @   s4   e Zd Zedd„ ƒZedd„ ƒZdd„ Zdd„ Zd	S )
ÚKakaoAccountc                 C   s   | j j di ¡S )NÚ
properties©ÚaccountÚ
extra_dataÚget©Úself© r   úe/var/www/html/pos/venv/lib/python3.10/site-packages/allauth/socialaccount/providers/kakao/provider.pyr      s   zKakaoAccount.propertiesc                 C   s   | j j di ¡ di ¡S )NÚkakao_accountÚprofiler   r   r   r   r   r      s   zKakaoAccount.profilec                 C   s   | j  d| j d¡¡S )NÚprofile_image_urlÚprofile_image)r   r   r   r   r   r   r   Úget_avatar_url   s   ÿzKakaoAccount.get_avatar_urlc                 C   s   | j j d¡S )Nr   r   r   r   r   r   Úget_user_data   s   zKakaoAccount.get_user_dataN)Ú__name__Ú
__module__Ú__qualname__Úpropertyr   r   r   r   r   r   r   r   r      s    

r   c                   @   s4   e Zd ZdZdZeZeZdd„ Z	dd„ Z
dd„ Zd	S )
ÚKakaoProviderÚkakaoÚKakaoc                 C   s   t |d ƒS )NÚid)Ústr)r   Údatar   r   r   Úextract_uid   s   zKakaoProvider.extract_uidc                 C   s8   |  di ¡  d¡}|  di ¡  di ¡  d¡}t||dS )Nr   Úemailr   Únickname)r!   Úusername)r   Údict)r   r   r!   r"   r   r   r   Úextract_common_fields"   s   z#KakaoProvider.extract_common_fieldsc                 C   s@   g }|  di ¡}|  d¡}|r|  d¡}| t||dd¡ |S )Nr   r!   Úis_email_verifiedT)r!   ÚverifiedÚprimary)r   Úappendr   )r   r   Úretr!   r'   r   r   r   Úextract_email_addresses(   s   

z%KakaoProvider.extract_email_addressesN)r   r   r   r   Únamer   Úaccount_classr   Úoauth2_adapter_classr    r%   r+   r   r   r   r   r      s    r   N)Úallauth.account.modelsr   Ú$allauth.socialaccount.providers.baser   Ú+allauth.socialaccount.providers.kakao.viewsr   Ú/allauth.socialaccount.providers.oauth2.providerr   r   r   Úprovider_classesr   r   r   r   Ú<module>   s    
