§
    $ÂiªE  ã            	       ór  — d dl Z d dlZd dlmZmZ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dlmZ dd	lmZ  ej        d
¦  «        Z	 ddeeeef         ef         deeeef                  deeef         fd„Z	 ddeeeef         ef         deeeef                  deeef         fd„Z	 ddeeeef         ef         deeeef                  deeef         fd„Z	 ddeeeef         ef         deeeef                  deeef         fd„Z G d„ de
j        ¦  «        Z G d„ de
j        ¦  «        ZdS )é    N)ÚAnyÚOptionalÚTypeVarÚUnion)Ú	urlencodeé   )Ú_api_module)Ú_common)Útypes)Úget_value_by_path)Úset_value_by_pathzgoogle_genai.operationsÚfrom_objectÚparent_objectÚreturnc                 óÔ   — i }t          | dg¦  «        �!t          |dgt          | dg¦  «        ¦  «         t          | dg¦  «        �"t          |ddgt          | dg¦  «        ¦  «         |S )NÚoperation_nameÚoperationNameÚresource_nameÚ_urlÚresourceName©ÚgetvÚsetv©r   r   Ú	to_objects      úa/var/www/html/jarvis.com/web/backend/venv/lib/python3.11/site-packages/google/genai/operations.pyÚ*_FetchPredictOperationParameters_to_vertexr   !   sˆ   € ð !€)Ý	ˆ+Ð(Ð)Ñ*Ô*Ð6Ýˆ�_Ð%¥t¨KÐ:JÐ9KÑ'LÔ'LÑMÔMÐMå	ˆ+˜Ð(Ñ)Ô)Ð5ÝØØ	�Ð Ýˆ[˜?Ð+Ñ,Ô,ñô ð ð 
Ðó    c                 óp   — i }t          | dg¦  «        �"t          |ddgt          | dg¦  «        ¦  «         |S ©Nr   r   r   r   r   s      r   Ú _GetOperationParameters_to_mldevr!   3   óS   € ð !€)Ý	ˆ+Ð(Ð)Ñ*Ô*Ð6ÝØØ	�Ð!Ýˆ[Ð+Ð,Ñ-Ô-ñô ð ð 
Ðr   c                 óp   — i }t          | dg¦  «        �"t          |ddgt          | dg¦  «        ¦  «         |S r    r   r   s      r   Ú!_GetOperationParameters_to_vertexr$   B   r"   r   c                 óp   — i }t          | dg¦  «        �"t          |ddgt          | dg¦  «        ¦  «         |S )NÚoperation_idr   r   r   s      r   Ú(_GetProjectOperationParameters_to_vertexr'   Q   sO   € ð !€)Ý	ˆ+˜Ð'Ñ(Ô(Ð4ÝØ�F˜NÐ+­T°+ÀÐ?OÑ-PÔ-Pñô ð ð 
Ðr   c            	       ó   — e Zd Zddœdedeej                 defd„Zddœdededeej	                 defd„Z
ddœd	edeej                 dej        fd
„Z edej        ¬¦  «        Zddœdedeej                 defd„ZdS )Ú
OperationsN©Úconfigr   r+   r   c                óÖ  — t          j        ||¬¦  «        }| j        j        r?t	          |¦  «        }|                     d¦  «        }|rd                     |¦  «        }nAd}n>t          |¦  «        }|                     d¦  «        }|rd                     |¦  «        }nd}|                     d¦  «        }|r|› dt          |¦  «        › �}| 	                    dd ¦  «         d }|j
        �|j
        j        �|j
        j        }t          j        |¦  «        }t          j        |¦  «        }| j                             d|||¦  «        }	|	j        si nt#          j        |	j        ¦  «        }
|
S ©N©r   r+   r   z{operationName}Ú_queryú?r+   Úget)r   Ú_GetOperationParametersÚ_api_clientÚvertexair$   r1   Ú
format_mapr!   r   Úpopr+   Úhttp_optionsr
   Úconvert_to_dictÚencode_unserializable_typesÚrequestÚbodyÚjsonÚloads©Úselfr   r+   Úparameter_modelÚrequest_dictÚrequest_url_dictÚpathÚquery_paramsr7   ÚresponseÚresponse_dicts              r   Ú_get_videos_operationz Operations._get_videos_operation`   sŠ  € õ Ô3Ø%Øðñ ô €Oð ÔÔ ð !Ý6°ÑGÔG€lØ%×)Ò)¨&Ñ1Ô1ÐØ	ð !Ø ×+Ò+Ð,<Ñ=Ô=ˆˆà ˆˆå5°oÑFÔF€lØ%×)Ò)¨&Ñ1Ô1ÐØ	ð !Ø ×+Ò+Ð,<Ñ=Ô=ˆˆà ˆØ×#Ò# HÑ-Ô-€LØð 1ØÐ0Ð0•y Ñ.Ô.Ð0Ð0€dà×Ò�X˜tÑ$Ô$Ð$à04€LàÔÐ*ØÔ"Ô/Ð;à$Ô+Ô8€låÔ*¨<Ñ8Ô8€LÝÔ6°|ÑDÔD€LàÔ×'Ò'¨¨t°\À<ÑPÔP€Hà&œmÐJ�B�Bµ´¸H¼MÑ1JÔ1J€MàÐr   r   c                óx  — t          j        |||¬¦  «        }| j        j        st	          d¦  «        ‚t          |¦  «        }|                     d¦  «        }|rd                     |¦  «        }nd}|                     d¦  «        }|r|› dt          |¦  «        › �}| 	                    dd ¦  «         d }	|j
        �|j
        j        �|j
        j        }	t          j        |¦  «        }t          j        |¦  «        }| j                             d|||	¦  «        }
|
j        si nt#          j        |
j        ¦  «        }|S ©	N©r   r   r+   ú6This method is only supported in the Vertex AI client.r   z${resourceName}:fetchPredictOperationr/   r0   r+   Úpost)r   Ú _FetchPredictOperationParametersr3   r4   Ú
ValueErrorr   r1   r5   r   r6   r+   r7   r
   r8   r9   r:   r;   r<   r=   ©r?   r   r   r+   r@   rA   rB   rC   rD   r7   rE   rF   s               r   Ú_fetch_predict_videos_operationz*Operations._fetch_predict_videos_operation‘   sc  € õ Ô<Ø%Ø#Øðñ ô €Oð ÔÔ$ð 
6ÝÐOÑPÔPÐPå?ÀÑPÔP€lØ%×)Ò)¨&Ñ1Ô1ÐØ	ð 6Ø5×@Ò@Øñ
ô 
ˆˆð 6ˆà×#Ò# HÑ-Ô-€LØð 1ØÐ0Ð0•y Ñ.Ô.Ð0Ð0€dà×Ò�X˜tÑ$Ô$Ð$à04€LàÔÐ*ØÔ"Ô/Ð;à$Ô+Ô8€låÔ*¨<Ñ8Ô8€LÝÔ6°|ÑDÔD€LàÔ×'Ò'Ø��l Lñô €Hð 'œmÐJ�B�Bµ´¸H¼MÑ1JÔ1J€MàÐr   r&   c                ó  — t          j        ||¬¦  «        }| j        j        st	          d¦  «        ‚t          |¦  «        }|                     d¦  «        }|rd                     |¦  «        }nd}|                     d¦  «        }|r|› dt          |¦  «        › �}| 	                    dd ¦  «         d }|j
        �|j
        j        �|j
        j        }t          j        |¦  «        }t          j        |¦  «        }| j                             d|||¦  «        }	|	j        si nt#          j        |	j        ¦  «        }
t           j                             |
|                     ¦   «         ¬	¦  «        }| j                             |¦  «         |S ©
N)r&   r+   rK   r   zoperations/{operation_id}r/   r0   r+   r1   )rE   Úkwargs)r   Ú_GetProjectOperationParametersr3   r4   rN   r'   r1   r5   r   r6   r+   r7   r
   r8   r9   r:   r;   r<   r=   ÚProjectOperationÚ_from_responseÚ
model_dumpÚ_verify_response©r?   r&   r+   r@   rA   rB   rC   rD   r7   rE   rF   Úreturn_values               r   Ú_getzOperations._getÃ   sš  € õ Ô:Ø!Øðñ ô €Oð ÔÔ$ð +ÝÐOÑPÔPÐPå=¸oÑNÔN€lØ%×)Ò)¨&Ñ1Ô1ÐØ	ð +Ø*×5Ò5Ð6FÑGÔGˆˆà*ˆà×#Ò# HÑ-Ô-€LØð 1ØÐ0Ð0•y Ñ.Ô.Ð0Ð0€dà×Ò�X˜tÑ$Ô$Ð$à04€LàÔÐ*ØÔ"Ô/Ð;à$Ô+Ô8€låÔ*¨<Ñ8Ô8€LÝÔ6°|ÑDÔD€LàÔ×'Ò'¨¨t°\À<ÑPÔP€Hà&œmÐJ�B�Bµ´¸H¼MÑ1JÔ1J€MåÔ)×8Ò8Ø ×'AÒ'AÑ'CÔ'Cð 9ñ ô €Lð 	Ô×%Ò% lÑ3Ô3Ð3ØÐr   ÚT©ÚboundÚ	operationc                ó  — |j         }|st          d¦  «        ‚| j        j        �r|                     d¦  «        d         }t          j        ¦   «         }t          |t          ¦  «        r7| 	                    dd¦  «        }|�t          j        di t          |¦  «        ¤Ž}n=t          |t
          j
        ¦  «        r#|�!|j        �|j        nt          j        ¦   «         }t          j        |¬¦  «        }|                      |||¬¦  «        }|                     |d¬	¦  «        }	| j                             |	¦  «         |	S |                      ||¬
¦  «        }|                     |d¬	¦  «        }	| j                             |	¦  «         |	S )aå  Gets the status of a long-running operation.

    Args:
      operation (Operation): The operation instance to get the status for.
      config (GetOperationConfig): Configuration for getting the operation.

    Returns:
      Operation: The updated operation instance with the latest status or
      result.

    Usage:

    .. code-block:: python

      import time

      operation = client.models.generate_videos(
          model="veo-2.0-generate-001",
          source=types.GenerateVideosSource(
              prompt="A neon hologram of a cat driving at top speed",
          ),
      )
      while not operation.done:
          time.sleep(10)
          operation = client.operations.get(operation)

      print(operation.result)
    úOperation name is empty.ú/operations/r   r7   N©r7   rJ   T©Úis_vertex_air.   F© )ÚnamerN   r3   r4   Ú
rpartitionr   ÚHttpOptionsÚ
isinstanceÚdictr1   ÚGetOperationConfigr7   ÚFetchPredictOperationConfigrP   Úfrom_api_responserX   rG   ©
r?   r_   r+   r   r   r7   Údict_optionsÚfetch_operation_configrF   Úresponse_operations
             r   r1   zOperations.getö   sÊ  € ðH ”^€NØð 3ÝÐ1Ñ2Ô2Ð2ð ÔÔ ñ & Ø$×/Ò/°Ñ?Ô?ÀÔB€mÝÔ&Ñ(Ô(€lÝ	�F�DÑ	!Ô	!ð 	
Ø—z’z .°$Ñ7Ô7ˆØÐ#ÝÔ*Ð@Ð@­T°,Ñ-?Ô-?Ð@Ð@ˆ,øÝ�f�eÔ6Ñ7Ô7ð 
¸FÐ<Nð Ô"Ð.ð ÔÐåÔ"Ñ$Ô$ð 	õ
  %Ô@Ø#ð ñ  ô  Ðð ×:Ò:Ø'Ø%Ø'ð ;ñ ô €mð %×6Ò6Ø
 dð 7ñ ô Ðð Ô×'Ò'Ð(:Ñ;Ô;Ð;ØÐà×0Ò0Ø'Øð 1ñ ô €mð %×6Ò6Ø
 eð 7ñ ô Ðð Ô×'Ò'Ð(:Ñ;Ô;Ð;ØÐr   ©Ú__name__Ú
__module__Ú__qualname__Ústrr   r   ÚGetOperationConfigOrDictr   rG   Ú!FetchPredictOperationConfigOrDictrP   rU   r[   r   Ú	Operationr\   r1   rf   r   r   r)   r)   ^   sk  € € € € € ð :>ð	/ð /ð /ð ð/ð �uÔ5Ô6ð	/ð
 ð/ð /ð /ð /ðl CGð0ð 0ð 0ð ð0ð ð	0ð
 �uÔ>Ô?ð0ð ð0ð 0ð 0ð 0ðl :>ð	/ð /ð /ð ð/ð �uÔ5Ô6ð	/ð
 Ôð/ð /ð /ð /ðb €gˆc˜œÐ)Ñ)Ô)€!ð :>ð	O ð O ð O àðO ð �uÔ5Ô6ð	O ð
 	ðO ð O ð O ð O ð O ð O r   r)   c            	       ó   — e Zd Zddœdedeej                 defd„Zddœdededeej	                 defd„Z
ddœd	edeej                 dej        fd
„Z edej        ¬¦  «        Zddœdedeej                 defd„ZdS )ÚAsyncOperationsNr*   r   r+   r   c             ƒ   óæ  K  — t          j        ||¬¦  «        }| j        j        r?t	          |¦  «        }|                     d¦  «        }|rd                     |¦  «        }nAd}n>t          |¦  «        }|                     d¦  «        }|rd                     |¦  «        }nd}|                     d¦  «        }|r|› dt          |¦  «        › �}| 	                    dd ¦  «         d }|j
        �|j
        j        �|j
        j        }t          j        |¦  «        }t          j        |¦  «        }| j                             d|||¦  «        ƒ d {V —†}	|	j        si nt#          j        |	j        ¦  «        }
|
S r-   )r   r2   r3   r4   r$   r1   r5   r!   r   r6   r+   r7   r
   r8   r9   Úasync_requestr;   r<   r=   r>   s              r   rG   z%AsyncOperations._get_videos_operationJ  s³  è è € õ Ô3Ø%Øðñ ô €Oð ÔÔ ð !Ý6°ÑGÔG€lØ%×)Ò)¨&Ñ1Ô1ÐØ	ð !Ø ×+Ò+Ð,<Ñ=Ô=ˆˆà ˆˆå5°oÑFÔF€lØ%×)Ò)¨&Ñ1Ô1ÐØ	ð !Ø ×+Ò+Ð,<Ñ=Ô=ˆˆà ˆØ×#Ò# HÑ-Ô-€LØð 1ØÐ0Ð0•y Ñ.Ô.Ð0Ð0€dà×Ò�X˜tÑ$Ô$Ð$à04€LàÔÐ*ØÔ"Ô/Ð;à$Ô+Ô8€låÔ*¨<Ñ8Ô8€LÝÔ6°|ÑDÔD€LàÔ%×3Ò3Øˆt�\ <ñô ð ð ð ð ð ð €Hð 'œmÐJ�B�Bµ´¸H¼MÑ1JÔ1J€MàÐr   r   c             ƒ   óˆ  K  — t          j        |||¬¦  «        }| j        j        st	          d¦  «        ‚t          |¦  «        }|                     d¦  «        }|rd                     |¦  «        }nd}|                     d¦  «        }|r|› dt          |¦  «        › �}| 	                    dd ¦  «         d }	|j
        �|j
        j        �|j
        j        }	t          j        |¦  «        }t          j        |¦  «        }| j                             d|||	¦  «        ƒ d {V —†}
|
j        si nt#          j        |
j        ¦  «        }|S rI   )r   rM   r3   r4   rN   r   r1   r5   r   r6   r+   r7   r
   r8   r9   r~   r;   r<   r=   rO   s               r   rP   z/AsyncOperations._fetch_predict_videos_operation}  s…  è è € õ Ô<Ø%Ø#Øðñ ô €Oð ÔÔ$ð 
6ÝÐOÑPÔPÐPå?ÀÑPÔP€lØ%×)Ò)¨&Ñ1Ô1ÐØ	ð 6Ø5×@Ò@Øñ
ô 
ˆˆð 6ˆà×#Ò# HÑ-Ô-€LØð 1ØÐ0Ð0•y Ñ.Ô.Ð0Ð0€dà×Ò�X˜tÑ$Ô$Ð$à04€LàÔÐ*ØÔ"Ô/Ð;à$Ô+Ô8€låÔ*¨<Ñ8Ô8€LÝÔ6°|ÑDÔD€LàÔ%×3Ò3Ø��l Lñô ð ð ð ð ð ð €Hð 'œmÐJ�B�Bµ´¸H¼MÑ1JÔ1J€MàÐr   r&   c             ƒ   ó   K  — t          j        ||¬¦  «        }| j        j        st	          d¦  «        ‚t          |¦  «        }|                     d¦  «        }|rd                     |¦  «        }nd}|                     d¦  «        }|r|› dt          |¦  «        › �}| 	                    dd ¦  «         d }|j
        �|j
        j        �|j
        j        }t          j        |¦  «        }t          j        |¦  «        }| j                             d|||¦  «        ƒ d {V —†}	|	j        si nt#          j        |	j        ¦  «        }
t           j                             |
|                     ¦   «         ¬	¦  «        }| j                             |¦  «         |S rR   )r   rT   r3   r4   rN   r'   r1   r5   r   r6   r+   r7   r
   r8   r9   r~   r;   r<   r=   rU   rV   rW   rX   rY   s               r   r[   zAsyncOperations._get¯  sÃ  è è € õ Ô:Ø!Øðñ ô €Oð ÔÔ$ð +ÝÐOÑPÔPÐPå=¸oÑNÔN€lØ%×)Ò)¨&Ñ1Ô1ÐØ	ð +Ø*×5Ò5Ð6FÑGÔGˆˆà*ˆà×#Ò# HÑ-Ô-€LØð 1ØÐ0Ð0•y Ñ.Ô.Ð0Ð0€dà×Ò�X˜tÑ$Ô$Ð$à04€LàÔÐ*ØÔ"Ô/Ð;à$Ô+Ô8€låÔ*¨<Ñ8Ô8€LÝÔ6°|ÑDÔD€LàÔ%×3Ò3Øˆt�\ <ñô ð ð ð ð ð ð €Hð 'œmÐJ�B�Bµ´¸H¼MÑ1JÔ1J€MåÔ)×8Ò8Ø ×'AÒ'AÑ'CÔ'Cð 9ñ ô €Lð 	Ô×%Ò% lÑ3Ô3Ð3ØÐr   r\   r]   r_   c             ƒ   óÂ  K  — |j         }|st          d¦  «        ‚| j        j        �r|                     d¦  «        d         }t          j        ¦   «         }t          |t          ¦  «        r7| 	                    dd¦  «        }|�t          j        di t          |¦  «        ¤Ž}n=t          |t
          j
        ¦  «        r#|�!|j        �|j        nt          j        ¦   «         }t          j        |¬¦  «        }|                      |||¬¦  «        ƒ d{V —†}|                     |d¬	¦  «        }	|	S |                      ||¬
¦  «        ƒ d{V —†}|                     |d¬	¦  «        }	|	S )a  Gets the status of a long-running operation.

    Args:
      operation (Operation): The operation instance to get the status for.
      config (GetOperationConfig): Configuration for getting the operation.

    Returns:
      Operation: The updated operation instance with the latest status or
      result.

    Usage:

    .. code-block:: python

      import asyncio

      operation = await client.aio.models.generate_videos(
          model="veo-2.0-generate-001",
          source=types.GenerateVideosSource(
              prompt="A neon hologram of a cat driving at top speed",
          ),
      )
      while not operation.done:
          await asyncio.sleep(10)
          operation = await client.aio.operations.get(operation)

      print(operation.result)
    ra   rb   r   r7   Nrc   rJ   Trd   r.   Frf   )rg   rN   r3   r4   rh   r   ri   rj   rk   r1   rl   r7   rm   rP   rn   rG   ro   s
             r   r1   zAsyncOperations.getä  sÙ  è è € ðF ”^€NØð 3ÝÐ1Ñ2Ô2Ð2àÔÔ ñ ! Ø$×/Ò/°Ñ?Ô?ÀÔB€mÝÔ&Ñ(Ô(€lÝ	�F�DÑ	!Ô	!ð 	
Ø—z’z .°$Ñ7Ô7ˆØÐ#ÝÔ*Ð@Ð@­T°,Ñ-?Ô-?Ð@Ð@ˆ,øÝ�f�eÔ6Ñ7Ô7ð 
¸FÐ<Nð Ô"Ð.ð ÔÐåÔ"Ñ$Ô$ð 	õ
  %Ô@Ø#ð ñ  ô  Ðð !×@Ò@Ø'Ø%Ø'ð Añ ô ð ð ð ð ð ð €mð
 %×6Ò6Ø
 dð 7ñ ô Ðð  Ðà ×6Ò6Ø'Øð 7ñ ô ð ð ð ð ð ð €mð %×6Ò6Ø
 eð 7ñ ô Ðð  Ðr   rs   rf   r   r   r|   r|   H  sk  € € € € € ð :>ð	1ð 1ð 1ð ð1ð �uÔ5Ô6ð	1ð
 ð1ð 1ð 1ð 1ðp CGð0ð 0ð 0ð ð0ð ð	0ð
 �uÔ>Ô?ð0ð ð0ð 0ð 0ð 0ðl :>ð	1ð 1ð 1ð ð1ð �uÔ5Ô6ð	1ð
 Ôð1ð 1ð 1ð 1ðf €gˆc˜œÐ)Ñ)Ô)€!ð :>ð	H ð H ð H àðH ð �uÔ5Ô6ð	H ð
 	ðH ð H ð H ð H ð H ð H r   r|   )N)r<   ÚloggingÚtypingr   r   r   r   Úurllib.parser   Ú r	   r
   r   r   r   r   r   Ú	getLoggerÚloggerrk   rw   Úobjectr   r!   r$   r'   Ú
BaseModuler)   r|   rf   r   r   ú<module>rŠ      s±  ðð$ €€€Ø €€€Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø "Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø .Ð .Ð .Ð .Ð .Ð .Ø .Ð .Ð .Ð .Ð .Ð .ð 
ˆÔ	Ð4Ñ	5Ô	5€ð
 /3ðð Ø�t˜C ˜H”~ vÐ-Ô.ðà˜D  c œNÔ+ðð 
ˆ#ˆsˆ(„^ðð ð ð ð( /3ðð Ø�t˜C ˜H”~ vÐ-Ô.ðà˜D  c œNÔ+ðð 
ˆ#ˆsˆ(„^ðð ð ð ð" /3ðð Ø�t˜C ˜H”~ vÐ-Ô.ðà˜D  c œNÔ+ðð 
ˆ#ˆsˆ(„^ðð ð ð ð" /3ð
ð 
Ø�t˜C ˜H”~ vÐ-Ô.ð
à˜D  c œNÔ+ð
ð 
ˆ#ˆsˆ(„^ð
ð 
ð 
ð 
ðg ð g ð g ð g ð g �Ô'ñ g ô g ð g ðTd ð d ð d ð d ð d �kÔ,ñ d ô d ð d ð d ð d r   