a
    Qx_                     @   sF   d 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 )	z0Customise Provider classes for MailChimp API v3.    )ProviderAccount)OAuth2Providerc                   @   s    e Zd ZdZdd Zdd ZdS )MailChimpAccountz'ProviderAccount subclass for MailChimp.c                 C   s   | j jd S )zReturn base profile url.api_endpointZaccount
extra_dataself r
   j/var/www/html/Ranjet/env/lib/python3.9/site-packages/allauth/socialaccount/providers/mailchimp/provider.pyget_profile_url
   s    z MailChimpAccount.get_profile_urlc                 C   s   | j jd d S )zReturn avatar url.loginZavatarr   r   r
   r
   r   get_avatar_url   s    zMailChimpAccount.get_avatar_urlN)__name__
__module____qualname____doc__r   r   r
   r
   r
   r   r      s   r   c                   @   s4   e Zd ZdZdZdZeZdd Zdd Z	dd	 Z
d
S )MailChimpProviderz)OAuth2Provider subclass for MailChimp v3.Z	mailchimpZ	MailChimpc                 C   s   t |d S )z.Extract uid ('user_id') and ensure it's a str.user_id)strr	   datar
   r
   r   extract_uid   s    zMailChimpProvider.extract_uidc                 C   s   dgS )z&Ensure scope is null to fit their API. r
   r   r
   r
   r   get_default_scope   s    z#MailChimpProvider.get_default_scopec              
   C   s@   t |d|d|d|d|d|d|ddS )	z%Extract fields from a metadata query.dcroleZaccountnamer   r   	login_urlr   )r   r   Zaccount_namer   r   r   r   )dictgetr   r
   r
   r   extract_common_fields#   s    z'MailChimpProvider.extract_common_fieldsN)r   r   r   r   idnamer   Zaccount_classr   r   r    r
   r
   r
   r   r      s   r   N)r   Z$allauth.socialaccount.providers.baser   Z/allauth.socialaccount.providers.oauth2.providerr   r   r   Zprovider_classesr
   r
   r
   r   <module>   s
   