
    b6i                         d dl Z d dlmZ ddlmZ ddlmZ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dlmZ ddlmZ  e j.                  e j0                  d      Z G d d      Z G d d      Zy)    N)JSONDecodeError   )ApiError)AsyncClientWrapperSyncClientWrapper)AsyncHttpResponseHttpResponse)jsonable_encoder)RequestOptions)construct_type)UnprocessableEntityError)HttpValidationError)LanguageAddedResponse.c            
       r    e Zd ZdefdZedddedej                  e   dej                  e	   de
e   fd	Zy)
RawLanguageClientclient_wrapperc                    || _         y N_client_wrapperselfr   s     z/root/.openclaw/workspace/visionaryfx/venv/lib/python3.12/site-packages/elevenlabs/dubbing/resource/language/raw_client.py__init__zRawLanguageClient.__init__   
    -    Nlanguagerequest_options
dubbing_idr   r   returnc                   | j                   j                  j                  dt        |       ddd|iddi|t              }	 d|j
                  cxk  rd	k  rGn nDt        j                  t        t        t        |j                         
            }t        ||      S |j
                  dk(  rUt        t        |j                        t        j                  t        t        t        |j                         
                  |j                         }t#        |j
                  t        |j                        |      # t         $ r6 t#        |j
                  t        |j                        |j$                        w xY w)a  
        Adds the given ElevenLab Turbo V2/V2.5 language code to the resource. Does not automatically generate transcripts/translations/audio.

        Parameters
        ----------
        dubbing_id : str
            ID of the dubbing project.

        language : typing.Optional[str]
            The Target language.

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        HttpResponse[LanguageAddedResponse]
            Successful Response
        v1/dubbing/resource/	/languagePOSTr   content-typeapplication/jsonmethodjsonheadersr   omit   ,  type_object_responsedata  r+   bodystatus_coder+   r7   )r   httpx_clientrequestr
   OMITr9   typingcastr   r   r*   r	   r   dictr+   r   r   r   textr   r    r   r   	_response_data_response_jsons          r   addzRawLanguageClient.add   s`   4 ((55=="#3J#?"@	JH  2 , > 
		ti++1c1)"3 ) 0 $YUCC$$+. !2!23+&"5$-NN$4	 	 '^^-N 9#8#8$yGXGXBY`noo  	ty'<'<d9K\K\F]dmdrdrss	ts   AD= A4D= =?E<)__name__
__module____qualname__r   r   r<   strr=   Optionalr   r	   r   rE    r   r   r   r      s_    .*; . *.;?>p>p //#&	>p
  8>p 
+	,>pr   r   c            
       r    e Zd ZdefdZedddedej                  e   dej                  e	   de
e   fd	Zy)
AsyncRawLanguageClientr   c                    || _         y r   r   r   s     r   r   zAsyncRawLanguageClient.__init__Z   r   r   Nr   r    r   r   r!   c                  K   | j                   j                  j                  dt        |       ddd|iddi|t               d{   }	 d	|j
                  cxk  rd
k  rGn nDt        j                  t        t        t        |j                                     }t        ||      S |j
                  dk(  rUt        t        |j                        t        j                  t        t        t        |j                                           |j                         }t#        |j
                  t        |j                        |      7 # t         $ r6 t#        |j
                  t        |j                        |j$                        w xY ww)a!  
        Adds the given ElevenLab Turbo V2/V2.5 language code to the resource. Does not automatically generate transcripts/translations/audio.

        Parameters
        ----------
        dubbing_id : str
            ID of the dubbing project.

        language : typing.Optional[str]
            The Target language.

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        AsyncHttpResponse[LanguageAddedResponse]
            Successful Response
        r#   r$   r%   r   r&   r'   r(   Nr-   r.   r/   r2   r5   r6   r8   )r   r:   r;   r
   r<   r9   r=   r>   r   r   r*   r   r   r?   r+   r   r   r   r@   rA   s          r   rE   zAsyncRawLanguageClient.add]   sp    4 ..;;CC"#3J#?"@	JH  2 , D 
 
		ti++1c1)"3 ) 0 ))%HH$$+. !2!23+&"5$-NN$4	 	 '^^-N 9#8#8$yGXGXBY`nooI
D  	ty'<'<d9K\K\F]dmdrdrss	ts8   AFEFAE
 'F(A4E
 ,F
?F		F)rF   rG   rH   r   r   r<   rI   r=   rJ   r   r   r   rE   rK   r   r   rM   rM   Y   s_    .*< . *.;?>p>p //#&	>p
  8>p 
0	1>pr   rM   )r=   json.decoderr   core.api_errorr   core.client_wrapperr   r   core.http_responser   r	   core.jsonable_encoderr
   core.request_optionsr   core.unchecked_base_modelr   !errors.unprocessable_entity_errorr   types.http_validation_errorr   types.language_added_responser   r>   Anyr<   r   rM   rK   r   r   <module>r[      s]     ( ' I B 6 3 8 J ? C v{{6::s#Bp BpJBp Bpr   