
    `iN              	          d dl Z d dl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 dd
l	mZ ddl	mZ  e j&                  d      Z	 d dedeeef   dee   defdZ	 d dedeeef   dee   defdZ	 d dedeeef   dee   defdZ	 d dedeeef   dee   defdZ	 d dedeeef   dee   defdZ	 d dedeeef   dee   defdZ	 d dedeeef   dee   defdZ	 d dedeeef   dee   defdZ	 d dedeeef   dee   defdZ	 d dedeeef   dee   defdZ 	 d dedeeef   dee   defdZ! G d dejD                        Z# G d dejD                        Z$y)!    N)AnyOptionalUnion)	urlencode   )_api_module)_common)_transformers)types)BaseApiClient)get_value_by_path)set_value_by_pathzgoogle_genai.operations
api_clientfrom_objectparent_objectreturnc                     i }t        |dg      t        |ddgt        |dg             t        |dg      t        |dgt        |dg             |S Noperation_name_urloperationNameconfiggetvsetvr   r   r   	to_objects       \/var/www/html/ts-aiml.yecor.com/venv/lib/python3.12/site-packages/google/genai/operations.py _GetOperationParameters_to_mldevr       i    
 !)	+()*6	![+,- 
+z".XJ[8* =>	    c                     i }t        |dg      t        |ddgt        |dg             t        |dg      t        |dgt        |dg             |S r   r   r   s       r   !_GetOperationParameters_to_vertexr#   3   r    r!   c                     i }t        |dg      t        |dgt        |dg             t        |dg      t        |ddgt        |dg             t        |dg      t        |dgt        |dg             |S )Nr   r   resource_namer   resourceNamer   r   r   s       r   *_FetchPredictOperationParameters_to_vertexr'   F   s    
 !)	+()*6_%tK:J9K'LM	+()5	 [?+, 
+z".XJ[8* =>	r!   c                    i }t        |ddg      t        |dgt        |ddg             t        |ddg      .t        |dgt        j                  | t        |ddg                   t        |dg      t        |dgt        |dg             |S )NvideouriencodedVideovideo_bytesencoding	mime_typer   r   tt_bytesr   s       r   _Video_from_mldevr2   \   s    
 !)	+'(4UGT+/?@A	+01=				*d;.0IJK 
+
|$0[M4j\#BC	r!   c                 l    i }t        |dg      $t        |dgt        | t        |dg      |             |S N_selfr)   )r   r   r2   r   s       r   _GeneratedVideo_from_mldevr6   r   sE    
 !)	+y!-		*d;	&BIN 
r!   c                 *   i }t        |dg      2t        |dgt        |dg      D cg c]  }t        | ||       c}       t        |dg      t        |dgt        |dg             t        |dg      t        |dgt        |dg             |S c c}w )NgeneratedSamplesgenerated_videosraiMediaFilteredCountrai_media_filtered_countraiMediaFilteredReasonsrai_media_filtered_reasons)r   r   r6   r   r   r   r   items        r   "_GenerateVideosResponse_from_mldevr@      s    
 !)	+*+,8	 [+=*>?	
 'z4C	
 
+/01=	#$[234 
+123?	%&[456 
)	
   Bc                    i }t        |dg      t        |dgt        |dg             t        |dg      t        |dgt        |dg             t        |dg      t        |dgt        |dg             t        |dg      t        |dgt        |dg             t        |ddg      %t        |dgt        | t        |ddg      |             t        |ddg      %t        |dgt        | t        |ddg      |             |S )NnamemetadatadoneerrorresponsegenerateVideoResponseresult)r   r   r@   r   s       r   #_GenerateVideosOperation_from_mldevrJ      s-   
 !)	+x ,VHd;9:	+
|$0ZL${ZL"AB	+x ,VHd;9:	+y!-WItK';<	+
$;<=I	*z+BCD	
 
+
$;<=I	
*z+BCD	
 
r!   c                    i }t        |dg      t        |dgt        |dg             t        |dg      -t        |dgt        j                  | t        |dg                   t        |dg      t        |dgt        |dg             |S )NgcsUrir*   bytesBase64Encodedr,   mimeTyper.   r/   r   s       r   _Video_from_vertexrO      s    
 !)	+z".UGT+z:;	+,-.:				*d;1E0FGH 
+
|$0[M4j\#BC	r!   c                 l    i }t        |dg      $t        |dgt        | t        |dg      |             |S r4   )r   r   rO   r   s       r   _GeneratedVideo_from_vertexrQ      sE    
 !)	+y!-		:tK''CYO 
r!   c                 *   i }t        |dg      2t        |dgt        |dg      D cg c]  }t        | ||       c}       t        |dg      t        |dgt        |dg             t        |dg      t        |dgt        |dg             |S c c}w )Nvideosr9   r:   r;   r<   r=   )r   r   rQ   r>   s        r   #_GenerateVideosResponse_from_vertexrT      s    
 !)	+z".	 [8*5	
 (
D)D	
 
+/01=	#$[234 
+123?	%&[456 
)	
rA   c                    i }t        |dg      t        |dgt        |dg             t        |dg      t        |dgt        |dg             t        |dg      t        |dgt        |dg             t        |dg      t        |dgt        |dg             t        |dg      $t        |dgt        | t        |dg      |             t        |dg      $t        |dgt        | t        |dg      |             |S )NrC   rD   rE   rF   rG   rI   )r   r   rT   r   s       r   $_GenerateVideosOperation_from_vertexrV     s   
 !)	+x ,VHd;9:	+
|$0ZL${ZL"AB	+x ,VHd;9:	+y!-WItK';<	+
|$0	+[:,7	
 
+
|$0	
+[:,7	
 
r!   c            	           e Zd Zdddedeej                     dej                  fdZdddededeej                     dej                  fdZ
ddd	ej                  deej                     dej                  fd
Zy)
OperationsNr   r   r   r   c                   t        j                  ||      }| j                  j                  r>t	        | j                  |      }|j                  d      }|rdj                  |      }n@d}n=t        | j                  |      }|j                  d      }|rdj                  |      }nd}|j                  d      }|r| dt        |       }|j                  dd        d }|j                  ,|j                  j                  |j                  j                  }t        j                  |      }t        j                  |      }| j                  j                  d|||      }	| j                  j                  rt!        | j                  |	      }	nt#        | j                  |	      }	t         j$                  j'                  |	|j)                               }
| j                  j+                  |
       |
S 	Nr   r   r   z{operationName}_query?r   getrG   kwargs)r   _GetOperationParameters_api_clientvertexair#   r_   
format_mapr   r   popr   http_optionsr	   convert_to_dictencode_unserializable_typesrequestrV   rJ   GenerateVideosOperation_from_response
model_dump_verify_responseselfr   r   parameter_modelrequest_dictrequest_url_dictpathquery_paramsrg   response_dictreturn_values              r   _get_videos_operationz Operations._get_videos_operation>  s    33%O   6


Ol &))&1	 ++,<= 5


Ol &))&1	 ++,<= ##H-LvQy./0dXt$04L*""//;$++88l**<8L66|DL$$,,t\<M   :


Mm
 :


Mm 00??'A'A'C @ L 	%%l3r!   r%   c                L   t        j                  |||      }| j                  j                  st	        d      t        | j                  |      }|j                  d      }|rdj                  |      }nd}|j                  d      }|r| dt        |       }|j                  dd        d }	|j                  ,|j                  j                  |j                  j                  }	t        j                  |      }t        j                  |      }| j                  j                  d|||	      }
| j                  j                  rt!        | j                  |
      }
t         j"                  j%                  |
|j'                         	      }| j                  j)                  |       |S 
Nr   r%   r   z6This method is only supported in the Vertex AI client.r   z${resourceName}:fetchPredictOperationr]   r^   r   postr`   )r    _FetchPredictOperationParametersrc   rd   
ValueErrorr'   r_   re   r   rf   r   rg   r	   rh   ri   rj   rV   rk   rl   rm   rn   rp   r   r%   r   rq   rr   rs   rt   ru   rg   rv   rw   s               r   _fetch_predict_videos_operationz*Operations._fetch_predict_videos_operation  s    <<%#O $$OPP?


Ol &))&1	5@@
 6##H-LvQy./0dXt$04L*""//;$++88l**<8L66|DL$$,,lLM   :


Mm 00??'A'A'C @ L 	%%l3r!   	operationc                @   |j                   }|st        d      | j                  j                  r|j	                  d      d   }t        j                         }t        |t              r3|j                  dd      }|gt        j                  d	i t        |      }nHt        |t
        j                        r.|,|j                  |j                  nt        j                         }t        j                  |      }| j                  |||      S | j                  ||      S 
z Gets the status of an operation.zOperation name is empty.z/operations/r   rg   N)rg   r{   r\    rC   r~   rc   rd   
rpartitionr   HttpOptions
isinstancedictr_   GetOperationConfigrg   FetchPredictOperationConfigr   rx   rp   r   r   r   r%   rg   dict_optionsfetch_operation_configs           r   r_   zOperations.get  s     ^^N122   $//?Bm&&(l	FD	!zz.$7#**@T,-?@,fe667F<N "". ""$ 	
  %@@#  11'%' 2   ''' (  r!   __name__
__module____qualname__strr   r   GetOperationConfigOrDictrk   rx   !FetchPredictOperationConfigOrDictr   r_   r   r!   r   rX   rX   <  s     :>	A A u556	A
 $$AP CG9 9 	9
 u>>?9 $$9~ :>	'..' u556	'
 $$'r!   rX   c            	           e Zd Zdddedeej                     dej                  fdZdddededeej                     dej                  fdZ
ddd	ej                  deej                     dej                  fd
Zy)AsyncOperationsNrY   r   r   r   c                  K   t        j                  ||      }| j                  j                  r>t	        | j                  |      }|j                  d      }|rdj                  |      }n@d}n=t        | j                  |      }|j                  d      }|rdj                  |      }nd}|j                  d      }|r| dt        |       }|j                  dd        d }|j                  ,|j                  j                  |j                  j                  }t        j                  |      }t        j                  |      }| j                  j                  d|||       d {   }	| j                  j                  rt!        | j                  |	      }	nt#        | j                  |	      }	t         j$                  j'                  |	|j)                               }
| j                  j+                  |
       |
S 7 wr[   )r   rb   rc   rd   r#   r_   re   r   r   rf   r   rg   r	   rh   ri   async_requestrV   rJ   rk   rl   rm   rn   ro   s              r   rx   z%AsyncOperations._get_videos_operation  s     33%O   6


Ol &))&1	 ++,<= 5


Ol &))&1	 ++,<= ##H-LvQy./0dXt$04L*""//;$++88l**<8L66|DL**88t\< M   :


Mm
 :


Mm 00??'A'A'C @ L 	%%l3%s   E#G;%G9&BG;r%   c                h  K   t        j                  |||      }| j                  j                  st	        d      t        | j                  |      }|j                  d      }|rdj                  |      }nd}|j                  d      }|r| dt        |       }|j                  dd        d }	|j                  ,|j                  j                  |j                  j                  }	t        j                  |      }t        j                  |      }| j                  j                  d|||	       d {   }
| j                  j                  rt!        | j                  |
      }
t         j"                  j%                  |
|j'                         	      }| j                  j)                  |       |S 7 |wrz   )r   r}   rc   rd   r~   r'   r_   re   r   rf   r   rg   r	   rh   ri   r   rV   rk   rl   rm   rn   r   s               r   r   z/AsyncOperations._fetch_predict_videos_operation+  s     <<%#O $$OPP?


Ol &))&1	5@@
 6##H-LvQy./0dXt$04L*""//;$++88l**<8L66|DL**88lL M   :


Mm 00??'A'A'C @ L 	%%l3s   D1F23F04A=F2r   c                p  K   |j                   }|st        d      | j                  j                  r|j	                  d      d   }t        j                         }t        |t              r3|j                  dd      }|gt        j                  d	i t        |      }nHt        |t
        j                        r.|,|j                  |j                  nt        j                         }t        j                  |      }| j                  |||       d{   S | j                  ||       d{   S 7 7 wr   r   r   s           r   r_   zAsyncOperations.getf  s7     ^^N122  $//?Bm&&(l	FD	!zz.$7#**@T,-?@,fe667F<N "". ""$ 	
  %@@#  77'%' 8    --' .   s$   DD6D2D6-D4.D64D6r   r   r!   r   r   r     s     :>	A A u556	A
 $$AP CG9 9 	9
 u>>?9 $$9~ :>	%..% u556	%
 $$%r!   r   )N)%loggingtypingr   r   r   urllib.parser    r   r	   r
   r0   r   rc   r   r   r   r   r   	getLoggerloggerr   objectr   r#   r'   r2   r6   r@   rJ   rO   rQ   rT   rV   
BaseModulerX   r   r   r!   r   <module>r      s  $  ' ' "      & . .			4	5 %)tV|$ D> 
	, %)tV|$ D> 
	, %)tV|$ D> 
	2 %)tV|$ D> 
	2 %)tV|$ D> 
	& %)tV|$ D> 
	H %)((tV|$( D>( 
	(\ %)tV|$ D> 
	2 %)tV|$ D> 
	& %)tV|$ D> 
	H %)$$tV|$$ D>$ 
	$Ng'' gTek,, er!   