a
    Uz_j                     @   sN   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)OAuth2Providerc                       s   e Zd Z fddZ  ZS )OktaAccountc                    s   t t|  }| jjd|S )Nname)superr   to_strZaccount
extra_dataget)selfZdflt	__class__ e/var/www/html/Ranjet/env/lib/python3.9/site-packages/allauth/socialaccount/providers/okta/provider.pyr      s    zOktaAccount.to_str)__name__
__module____qualname__r   __classcell__r   r   r   r   r      s   r   c                   @   s@   e Zd ZdZdZeZdd Zdd Zdd Z	d	d
 Z
dd ZdS )OktaProviderZoktaZOktac                 C   s   g dS )N)ZopenidZprofileemailZoffline_accessr   )r   r   r   r   get_default_scope   s    zOktaProvider.get_default_scopec                 C   s   t |d S )NZpreferred_username)strr   datar   r   r   extract_uid   s    zOktaProvider.extract_uidc                 C   s   |S )Nr   r   r   r   r   extract_extra_data   s    zOktaProvider.extract_extra_datac                 C   s   t |d t|d ddgS )Nr   Zemail_verifiedT)r   ZverifiedZprimary)r   boolr   r   r   r   extract_email_addresses   s    z$OktaProvider.extract_email_addressesc                 C   s   t |d |d |d dS )Nr   Zfamily_nameZ
given_name)r   	last_nameZ
first_name)dictr   r   r   r   extract_common_fields!   s
    z"OktaProvider.extract_common_fieldsN)r   r   r   idr   r   Zaccount_classr   r   r   r   r    r   r   r   r   r      s   r   N)	Zallauth.account.modelsr   Z$allauth.socialaccount.providers.baser   Z/allauth.socialaccount.providers.oauth2.providerr   r   r   Zprovider_classesr   r   r   r   <module>   s
   