a
    Qx_                     @   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 )KeycloakAccountc                 C   s   | j jdS )Npicture)account
extra_datagetself r   i/var/www/html/Ranjet/env/lib/python3.9/site-packages/allauth/socialaccount/providers/keycloak/provider.pyget_avatar_url   s    zKeycloakAccount.get_avatar_urlc                    s   t t|  }| jjd|S )Nname)superr   to_strr   r   r   )r
   Zdflt	__class__r   r   r   
   s    zKeycloakAccount.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 )
KeycloakProviderZkeycloakZKeycloakc                 C   s   g dS )N)ZopenidZprofileemailr   r	   r   r   r   get_default_scope   s    z"KeycloakProvider.get_default_scopec                 C   s   t |d S )Nid)strr
   datar   r   r   extract_uid   s    zKeycloakProvider.extract_uidc                 C   s0   t |d|d|d|d|ddS )Nr   Zpreferred_usernamer   user_idr   )r   usernamer   r   r   )dictr   r   r   r   r   extract_common_fields   s    z&KeycloakProvider.extract_common_fieldsN)
r   r   r   r   r   r   Zaccount_classr   r   r"   r   r   r   r   r      s   r   N)Z$allauth.socialaccount.providers.baser   Z/allauth.socialaccount.providers.oauth2.providerr   r   r   Zprovider_classesr   r   r   r   <module>   s   	