
    f                     Z    d dl mZ d dlmZ d dlmZ  G d de      Z G d de      ZegZy)	    )ProviderAccount)BasecampOAuth2Adapter)OAuth2Providerc                       e Zd Zd Zd Zy)BasecampAccountc                      y )N selfs    l/var/www/cs2snipe.com/venv/lib/python3.12/site-packages/allauth/socialaccount/providers/basecamp/provider.pyget_avatar_urlzBasecampAccount.get_avatar_url	   s        c                 N    | j                   j                  j                  di       S )Nidentity)account
extra_datagetr
   s    r   get_user_datazBasecampAccount.get_user_data   s    ||&&**:r::r   N)__name__
__module____qualname__r   r   r	   r   r   r   r      s    ;r   r   c                   :     e Zd ZdZdZeZeZ fdZ	d Z
d Z xZS )BasecampProviderbasecampBasecampc                 2    t         |   ||      }d|d<   |S )N
web_servertype)superget_auth_params_from_request)r   requestactiondata	__class__s       r   r    z-BasecampProvider.get_auth_params_from_request   s"    w3GVD#Vr   c                 (    |d   }t        |d         S )Nr   id)strr   r#   s     r   extract_uidzBasecampProvider.extract_uid   s    J4:r   c                     |d   }t        |j                  d      |j                  d      |j                  d      |j                  d      |j                  d      d|j                  d            S )Nr   email_address
first_name	last_name )emailusernamer,   r-   name)dictr   r(   s     r   extract_common_fieldsz&BasecampProvider.extract_common_fields   sc    J((?+XXo.xx-hh{+ HH\2DHH[4IJ
 	
r   )r   r   r   r&   r1   r   account_classr   oauth2_adapter_classr    r)   r3   __classcell__)r$   s   @r   r   r      s'    	BD#M0

r   r   N)	$allauth.socialaccount.providers.baser   .allauth.socialaccount.providers.basecamp.viewsr   /allauth.socialaccount.providers.oauth2.providerr   r   r   provider_classesr	   r   r   <module>r;      s6    @ K;o ;
~ 
4 %% r   