
    qh2                    X    S SK Jr  S SKJr  SSKJrJr   " S S\5      r " S S\5      rg	)
    )annotations)cast   )
BaseOAuth1
BaseOAuth2c                  :    \ rS rSrSrSrSrSrSrS r	S r
S	 rS
rg)VimeoOAuth1   z"Vimeo OAuth authentication backendvimeoz!https://vimeo.com/oauth/authorizez%https://vimeo.com/oauth/request_tokenz$https://vimeo.com/oauth/access_tokenc                D    UR                  S0 5      R                  S5      $ )Npersonid)get)selfdetailsresponses      L/var/www/html/env/lib/python3.13/site-packages/social_core/backends/vimeo.pyget_user_idVimeoOAuth1.get_user_id   s    ||Hb)--d33    c                    UR                  S0 5      nU R                  UR                  SS5      5      u  p4nUR                  SS5      SUUUS.$ )z(Return user details from Twitter accountr   display_name username)r   emailfullname
first_name	last_namer   get_user_names)r   r   r   r   r   r   s         r   get_user_detailsVimeoOAuth1.get_user_details   s[    h+*.*=*=JJ~r*+
'i 

:r2 $"
 	
r   c                H    U R                  SSSS.U R                  U5      S9$ )Return user data providedzhttps://vimeo.com/api/rest/v2jsonzvimeo.people.getInfo)formatmethod)paramsauth)get_json
oauth_authr   access_tokenargskwargss       r   	user_dataVimeoOAuth1.user_data!   s0    }}+$0FG.  
 	
r    N)__name__
__module____qualname____firstlineno____doc__nameAUTHORIZATION_URLREQUEST_TOKEN_URLACCESS_TOKEN_URLr   r!   r0   __static_attributes__r2   r   r   r	   r	      s+    ,D;?=4

r   r	   c                  T    \ rS rSrSrSrSrSrSrSr	SS	0r
SSS jjrS rS rS rSrg
)VimeoOAuth2*   z#Vimeo OAuth2 authentication backendzvimeo-oauth2z%https://api.vimeo.com/oauth/authorizez(https://api.vimeo.com/oauth/access_tokenz)https://api.vimeo.com/oauth/request_token,Acceptz(application/vnd.vimeo.*+json;version=3.0Nc                .    [        SU R                  5      $ )z
Build redirect with redirect_state parameter.

@Vimeo API 3 requires exact redirect uri without additional
additional state parameter included
str)r   redirect_uri)r   states     r   get_redirect_uriVimeoOAuth2.get_redirect_uri4   s     E4,,--r   c                |     UR                  S0 5      S   R                  S5      S   nU$ ! [         a    Sn U$ f = f)zReturn user iduseruri/N)r   splitKeyError)r   r   r   user_ids       r   r   VimeoOAuth2.get_user_id=   sN    	ll62.u5;;C@DG   	G	s   '+ ;;c                |    UR                  S0 5      nU R                  UR                  SS5      5      u  p4nUUUUS.$ )z Return user details from accountrI   r8   r   )r   r   r   r   r   )r   r   rI   r   r   r   s         r   r!   VimeoOAuth2.get_user_detailsE   sH    ||FB'*.*=*=dhhvr>R*S'i  $"	
 	
r   c                D    U R                  SSU0[        R                  S9$ )r$   zhttps://api.vimeo.com/mer-   )r(   headers)r*   r>   API_ACCEPT_HEADERr,   s       r   r0   VimeoOAuth2.user_dataP   s,    }}&"L111  
 	
r   r2   )N)rE   z
str | NonereturnrC   )r3   r4   r5   r6   r7   r8   r9   r;   REFRESH_TOKEN_URLSCOPE_SEPARATORrU   rF   r   r!   r0   r<   r2   r   r   r>   r>   *   sA    -D?ACO!#MN.	

r   r>   N)	
__future__r   typingr   oauthr   r   r	   r>   r2   r   r   <module>r]      s'    "  )
* 
D,
* ,
r   