
    f                     f    d dl m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	)
    )EmailAddress)ProviderAccount)OAuth2Provider)OktaOAuth2Adapterc                       e Zd Zy)OktaAccountN)__name__
__module____qualname__     h/var/www/cs2snipe.com/venv/lib/python3.12/site-packages/allauth/socialaccount/providers/okta/provider.pyr   r      s    r   r   c                   :    e Zd ZdZdZeZeZd Z	d Z
d Zd Zd Zy)	OktaProvideroktaOktac                 
    g dS )N)openidprofileemailoffline_accessr   )selfs    r   get_default_scopezOktaProvider.get_default_scope   s    ??r   c                     t        |d         S )Npreferred_username)strr   datas     r   extract_uidzOktaProvider.extract_uid   s    4,-..r   c                     |S )Nr   r   s     r   extract_extra_datazOktaProvider.extract_extra_data   s    r   c                 >    t        |d   t        |d         d      gS )Nr   email_verifiedT)r   verifiedprimary)r   boolr   s     r   extract_email_addressesz$OktaProvider.extract_email_addresses   s+    7md48H3I.JTX
 	
r   c                     t        |d   |d   |d         }|j                  d      }|r|j                  d      d   |d<   |S )	Nr   family_name
given_name)r   	last_name
first_namer   @r   username)dictget	partition)r   r   retr   s       r   extract_common_fieldsz"OktaProvider.extract_common_fields!   sV    w-=)L)

 "XX&:;0::3?BC
O
r   N)r	   r
   r   idnamer   account_classr   oauth2_adapter_classr   r   r!   r'   r3   r   r   r   r   r      s1    	BDM,@/
	r   r   N)allauth.account.modelsr   $allauth.socialaccount.providers.baser   /allauth.socialaccount.providers.oauth2.providerr   *allauth.socialaccount.providers.okta.viewsr   r   r   provider_classesr   r   r   <module>r=      s4    / @ J H	/ 	> D !> r   