o
    ˷e&                     @   sB   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 )    )ProviderAccount)OAuth2Providerc                       s$   e Zd Zdd Z fddZ  ZS )WeixinAccountc                 C   s   | j jdS )N
headimgurl)account
extra_datagetself r   f/var/www/ideatree/venv/lib/python3.10/site-packages/allauth/socialaccount/providers/weixin/provider.pyget_avatar_url   s   zWeixinAccount.get_avatar_urlc                    s   | j jdtt|  S )Nnickname)r   r   r   superr   to_strr	   	__class__r   r   r   	   s   zWeixinAccount.to_str)__name__
__module____qualname__r   r   __classcell__r   r   r   r   r      s    r   c                   @   s0   e Zd ZdZdZeZdd Zdd Zdd Z	d	S )
WeixinProviderweixinWeixinc                 C   s   |d S )Nopenidr   r
   datar   r   r   extract_uid   s   zWeixinProvider.extract_uidc                 C   s   dgS )Nsnsapi_loginr   r	   r   r   r   get_default_scope   s   z WeixinProvider.get_default_scopec                 C   s   t |d|ddS )Nr   )usernamename)dictr   r   r   r   r   extract_common_fields   s   z$WeixinProvider.extract_common_fieldsN)
r   r   r   idr!   r   account_classr   r   r#   r   r   r   r   r      s    r   N)$allauth.socialaccount.providers.baser   /allauth.socialaccount.providers.oauth2.providerr   r   r   provider_classesr   r   r   r   <module>   s
    

