§
    >xÅjä  ã                   óÀ  — d dl mZ d dlmZmZmZ d dlZd dlmZm	Z	 d dl
mZ d dlmZ d dlmZmZ d dlmZ d d	lmZ d d
lmZ d dlmZ dZ G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Zdededz  defd„Zdededz  defd„Z dededede!def
d„Z"dededdfd „Z#d!ededdfd"„Z$ ej%        d#e¬$¦  «        ddedd%fd&ej&        deedz   ej'        d'd(¬)¦  «        f         deedz   ej'        d*d+¬)¦  «        f         dee! ej'        d,d-d.¬/¦  «        f         deedz   ej'        d0d1¬)¦  «        f         d2edefd3„¦   «         Z(dS )4é    )ÚPath)Ú	AnnotatedÚAnyÚLiteralN)Ú	BaseModelÚField)ÚRichToolkit)Ú	APIClient)ÚUserCommandÚget_user_command_context)Ú
tokens_app)Úresolve_app_id_or_fail)ÚFastAPIRichToolkit)ÚJsonOutputOptionim  c                   ó.   — e Zd ZU eed<   eed<   eed<   dS )ÚCreatedDeployTokenÚidÚnameÚ
expired_atN©Ú__name__Ú
__module__Ú__qualname__ÚstrÚ__annotations__© ó    úYC:\Projects\Historical\venv\Lib\site-packages\fastapi_cloud_cli/commands/tokens/create.pyr   r      s+   € € € € € € Ø€G€G�GØ
€I€I�IØ€O€O�O€O€Or   r   c                   ó   — e Zd ZU eed<   dS )ÚDeployTokenCreateAPIResponseÚvalueNr   r   r   r   r    r       s   € € € € € € Ø€J€J�J€J€Jr   r    c                   ó4   — e Zd ZU dZed         ed<   eed<   dS )ÚStoredDeployTokenSecretÚfileÚproviderÚpathN)r   r   r   r%   r   r   r   r   r   r   r#   r#      s-   € € € € € € Ø &€Hˆg�fŒoÐ&Ð&Ñ&Ø
€J€J�J€J€Jr   r#   c                   ó\   — e Zd ZU eed<   eed<   eed<   ee e	d¬¦  «        f         ed<   dS )ÚDeployTokenCreateOutputÚapp_idÚtokenÚstored_secretT)ÚexcludeÚoutput_fileN)
r   r   r   r   r   r   r#   r   r   r   r   r   r   r(   r(   !   sV   € € € € € € Ø€K€K�KØÐÐÑØ*Ð*Ð*Ñ*Ø˜4  ¨tÐ!4Ñ!4Ô!4Ð4Ô5Ð5Ð5Ñ5Ð5Ð5r   r(   Útoolkitr   Úreturnc                ó€   — |�|S | j         dk    r|                      ddd¬¦  «         |                      ddd¬	¦  «        S )
NÚjsonÚmissing_required_inputzDeploy token name is required.z*Pass --name to choose a deploy token name.©ÚhintzWhat's the deploy token name?zDeploy tokenF)ÚdefaultÚbullet)ÚmodeÚfailÚinput)r.   r   s     r   Ú_resolve_token_namer:   (   sd   € ØÐØˆà„|�vÒÐØ�ŠØ$Ø,Ø=ð 	ñ 	
ô 	
ð 	
ð �=Š=Ø'ØØð ñ ô ð r   r-   c                ó>   — |�|S |                       ddd¬¦  «         d S )Nr2   zOutput file is required.z3Pass --output-file to store the deploy token value.r3   )r8   )r.   r-   s     r   Ú_resolve_output_filer<   :   s>   € ð ÐØÐà‡L‚LØ Ø"ØBð ñ ô ð ð ð r   Úclientr)   Úexpires_in_daysc                ó¾   — |                       d|› d�||dœ¬¦  «        }|                     ¦   «          t                               |                     ¦   «         ¦  «        S )Nz/apps/z/tokens)r   r>   )r1   )ÚpostÚraise_for_statusr    Úmodel_validater1   )r=   r)   r   r>   Úresponses        r   Ú_create_deploy_tokenrD   G   se   € ð �{Š{Ø �Ð Ð Ð Ø¨Ð?Ð?ð ñ ô €Hð ×ÒÑÔÐå'×6Ò6°x·}²}±´ÑGÔGÐGr   r!   c                 ó–   — | j                              dd¬¦  «         |                      |d¬¦  «         |                      d¦  «         d S )NT)ÚparentsÚexist_okzutf-8)Úencodingi€  )ÚparentÚmkdirÚ
write_textÚchmod)r-   r!   s     r   Ú_write_token_valuerM   S   sQ   € ØÔ×Ò T°DÐÑ9Ô9Ð9Ø×Ò˜5¨7ÐÑ3Ô3Ð3Ø×Ò�eÑÔÐÐÐr   Údatac                 ó�   — |                      d| j        j        › d�d¬¦  «         |                      d| j        › d�d¬¦  «         d S )NzCreated deploy token [bold]z[/bold]F)r6   z#Stored deploy token value in [bold])Úprintr*   r   r-   )rN   r.   s     r   Ú"_render_deploy_token_create_outputrQ   Y   sd   € ð ‡M‚MÐH°´
´ÐHÐHÐHÐQV€MÑWÔWÐWØ‡M‚MØG¨dÔ.>ÐGÐGÐGØð ñ ô ð ð ð r   Úcreate)ÚclsFÚctxz--app-idz3ID of the app whose deploy token should be created.)Úhelpz--namez#Name of the deploy token to create.z--expires-in-daysz/Number of days before the deploy token expires.é   )rU   Úminz--output-filez8File path where the deploy token value should be stored.Újson_outputc           	      ó  — t          | ¦  «        j        }t          ||¬¦  «        }|                     d¦  «         |                     ¦   «          t          ||¬¦  «        }|du }t          ||¬¦  «        }|r|                     ¦   «          t          ¦   «         5 }	|                     dd¬¦  «        5 }
|	 	                    |
d	d
|¬¦  «        5  t          |	|||¬¦  «        }ddd¦  «         n# 1 swxY w Y   ddd¦  «         n# 1 swxY w Y   ddd¦  «         n# 1 swxY w Y   t          ||j        ¦  «         |                     t          |t                               |¦  «        t#          |¬¦  «        |¬¦  «        t$          ¬¦  «         dS )z+
    Create a deploy token for an app.
    )r)   zdeploy tokens)r-   N)r   zCreating deploy tokenT)ÚtitleÚ	transientz4Error creating deploy token. Please try again later.zApp not found.)Údefault_messageÚnot_found_messager.   )r)   r   r>   )r&   )r)   r*   r+   r-   )Úrender_output)r   r.   r   Úprint_titleÚ
print_liner<   r:   r
   ÚprogressÚhandle_http_errorsrD   rM   r!   Úsuccessr(   r   rB   r#   rQ   )rT   r)   r   r>   r-   rX   r.   Útarget_app_idÚname_needs_promptr=   ra   r*   s               r   Úcreate_tokenrf   c   sz  € õL ' sÑ+Ô+Ô3€Gå*¨7¸6ÐBÑBÔB€Mà×Ò˜Ñ(Ô(Ð(Ø×ÒÑÔÐå& w¸KÐHÑHÔH€KØ ˜ÐÝ˜w¨TÐ2Ñ2Ô2€DØð Ø×ÒÑÔÐå	‰Œð ˜Ø×ÒØ)Øð ñ 
ô 
ð 	ð Ø×*Ò*ØØ VØ"2Øð	 +ñ ô ð ð õ -ØØ(ØØ$3ð	ñ ô �ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð		ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ$ �{ E¤KÑ0Ô0Ð0à‡O‚OÝØ Ý$×3Ò3°EÑ:Ô:Ý1°{ÐCÑCÔCØ#ð		
ñ 	
ô 	
õ 9ð ñ ô ð ð ð sZ   ÂDÂ1DÃC+ÃDÃ+C/Ã/DÃ2C/Ã3DÃ6DÄD	ÄDÄ	D	Ä
DÄDÄ D))Úpathlibr   Útypingr   r   r   ÚtyperÚpydanticr   r   Úrich_toolkitr	   Úfastapi_cloud_cli.apir
   Ú fastapi_cloud_cli.commands._authr   r   Ú&fastapi_cloud_cli.commands.tokens._appr   Úfastapi_cloud_cli.utils.appsr   Úfastapi_cloud_cli.utils.clir   Ú!fastapi_cloud_cli.utils.executionr   ÚDEFAULT_EXPIRES_IN_DAYSr   r    r#   r(   r   r:   r<   ÚintrD   rM   rQ   ÚcommandÚContextÚOptionrf   r   r   r   ú<module>rw      sá  ðØ Ð Ð Ð Ð Ð Ø *Ð *Ð *Ð *Ð *Ð *Ð *Ð *Ð *Ð *à €€€Ø %Ð %Ð %Ð %Ð %Ð %Ð %Ð %Ø $Ð $Ð $Ð $Ð $Ð $à +Ð +Ð +Ð +Ð +Ð +Ø RÐ RÐ RÐ RÐ RÐ RÐ RÐ RØ =Ð =Ð =Ð =Ð =Ð =Ø ?Ð ?Ð ?Ð ?Ð ?Ð ?Ø :Ð :Ð :Ð :Ð :Ð :Ø >Ð >Ð >Ð >Ð >Ð >àÐ ðð ð ð ð ˜ñ ô ð ðð ð ð ð Ð#5ñ ô ð ðð ð ð ð ˜iñ ô ð ð
6ð 6ð 6ð 6ð 6˜iñ 6ô 6ð 6ðÐ!3ð ¸cÀD¹jð ÈSð ð ð ð ð$
Øð
Ø15¸±ð
à	ð
ð 
ð 
ð 
ð	HØð	HØ"%ð	HØ-0ð	HØCFð	Hà!ð	Hð 	Hð 	Hð 	Hð Dð °ð ¸ð ð ð ð ðØ
!ðØ,7ðà	ðð ð ð ð €Ô�H +Ð.Ñ.Ô.ð 	ð 	ð 	 ð 	Ø$)ð?Nð NØ	ŒðNàØˆd‰
ØˆŒØØFð	
ñ 	
ô 	
ð	ôðNð Øˆd‰
ØˆŒØØ6ð	
ñ 	
ô 	
ð	ôðNð  ØØˆŒØØBØð	
ñ 	
ô 	
ð	ôð!Nð0 Øˆt‰ØˆŒØØKð	
ñ 	
ô 	
ð	ôð1Nð> "ð?Nð@ 	ðANð Nð Nñ /Ô.ðNð Nð Nr   