o
    ­Ôj"  ã                   @   s”   d Z ddlZddlmZ ddlmZ ddlmZ ddlm	Z	m
Z
mZ dZd	efd
d„Zd	edefdd„Zd	efdd„ZedkrHeejd ƒ dS dS )zULogin OAuth das contas Google. Uso: uv run python -m agente.google_auth <pessoal|ita>é    N)ÚRequest)ÚCredentials)ÚInstalledAppFlowé   )ÚCLIENTE_OAUTHÚCONTAS_GOOGLEÚSEGREDOSi•  Úcontac                 C   s   t d| › d� S )Nzgoogle-z.json)r   )r	   © r
   ú:/home/ubuntu/projetos/agente-tarefas/agente/google_auth.pyÚarquivo_token   s   r   Úreturnc                 C   s<   t | ƒ}t |t|  ¡}|js| tƒ ¡ | | ¡ ¡ |S )z7Carrega o token salvo da conta, renovando-o se expirou.)	r   r   Úfrom_authorized_user_filer   ÚvalidÚrefreshr   Ú
write_textÚto_json)r	   ÚcaminhoÚcredr
   r
   r   Úcredenciais   s   r   c                 C   sX   t  tt|  ¡}|jdtddddd�}t| ƒ}| | ¡ ¡ | 	d¡ t
d| › �ƒ d S )	Nz	127.0.0.1FzAbra este link: {url}ÚconsentÚoffline)ÚhostÚportÚopen_browserÚauthorization_prompt_messageÚpromptÚaccess_typei€  zok: token salvo para a conta )r   Úfrom_client_secrets_filer   r   Úrun_local_serverÚPORTAr   r   r   ÚchmodÚprint)r	   Úflowr   r   r
   r
   r   Úlogin   s   
þ
r$   Ú__main__)Ú__doc__ÚsysÚgoogle.auth.transport.requestsr   Úgoogle.oauth2.credentialsr   Úgoogle_auth_oauthlib.flowr   Úconfigr   r   r   r    Ústrr   r   r$   Ú__name__Úargvr
   r
   r
   r   Ú<module>   s    
ÿ