ó
    ‚¤j¢  ã                  ó¨   • S r SSKJr  SSKrSSKrSSKrSSKJr  \R                  " S5      r	Sr
Sr " S S	5      rSS
 jrSS jrS rS rS rSS jrg)zÛShims for `huggingface_hub` inference-provider client fragility.

Client methods hardcode task + response-key paths; provider drift breaks
callers until upstream cuts a release. Prefer fixing upstream over adding here.
é    )ÚannotationsN)Úsynchronize_asynczPis not supported for task (\S+) and provider (\S+)\. Supported task: ([^.\s]+)\.i  @)zimage/zaudio/zvideo/zapplication/octet-streamc                  ó    • \ rS rSrS rS rSrg)Ú_ResponseRecorderé   c                ó\   ^ • UT l         S T l        UR                  T l        U 4S jnX!l        g )Nc                óH   >• TR                  U 5      Tl        TR                  $ ©N)Ú_origÚlast_response)ÚreqÚselfs    €Ú¬C:\Users\johnn\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.13_qbz5n2kfra8p0\LocalCache\local-packages\Python313\site-packages\gradio/workflow_provider_shims.pyÚwrapperÚ+_ResponseRecorder.__init__.<locals>.wrapper#   s   ø€ Ø!%§¡¨C£ˆDÔØ×%Ñ%Ð%ó    )Úclientr   Ú_inner_postr   )r   r   r   s   `  r   Ú__init__Ú_ResponseRecorder.__init__   s,   ø€ ØˆŒØ!ˆÔØ×'Ñ'ˆŒ
õ	&ð %Õr   c                ó:   • U R                   U R                  l        g r
   )r   r   r   )r   s    r   ÚrestoreÚ_ResponseRecorder.restore)   s   € Ø"&§*¡*ˆ�‰Õr   )r   r   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   Ú__static_attributes__© r   r   r   r      s   † ò	%õ-r   r   c                ód  • SSK Jn  [        U 5      n  U" S0 UD6UR                  5         $ ! [         a’  n[
        R                  [        U5      5      nU(       d  e U" UR                  S5      UR                  S5      U R                  S9nUR                  S5      Ul
        [        XX5      s S nAUR                  5         $ S nAf[        [        4 aD    [        [        UR                   5      5      nU(       d  e [#        U5      s UR                  5         $ f = f! UR                  5         f = f)Nr   )Úget_provider_helperé   é   )ÚtaskÚmodelé   r   )Ú$huggingface_hub.inference._providersr!   r   r   Ú
ValueErrorÚPROVIDER_TASK_MISMATCH_REÚsearchÚstrÚgroupr%   r$   Ú_run_via_helperÚKeyErrorÚ	TypeErrorÚ_extract_urlÚ_decoder   Ú_fetch_media_bytes)	r   ÚfnÚcleanr!   ÚrecorderÚexcÚmÚhelperÚurls	            r   Úcall_with_recoveryr:   -   sÿ   € ÝHä  Ó(€Hðð	+Ù‘;˜‘;ð$ 	×ÑÕøô# ó 
	>Ü)×0Ñ0´°S³Ó:ˆAÞØÙ(Ø—‘˜“
Ø—W‘W˜Q“ZØ—l‘lñˆFð
 Ÿ'™' !›*ˆFŒKÜ" 6°2Ó=Ô=ð 	×ÑÕûô œ)Ð$ó 	+Üœw x×'=Ñ'=Ó>Ó?ˆCÞØÜ% cÓ*Ñ*à×ÑÕð	+ûð 	×ÑÕús:   ”, ¬
D¶A7CÂ-DÂ.D ÃADÄD ÄDÄD ÄD/c                ó$  • [        [        [        R                  " U5      R                  5      S5      nUR                  UR                  US 5      UU R                  U R                  U R                  S9nU R                  U5      n[        XaU5      $ )NÚinputs)r<   Ú
parametersÚheadersr%   Úapi_key)ÚnextÚiterÚinspectÚ	signaturer=   Úprepare_requestÚpopr>   r%   Útokenr   Ú_parse_or_fetch_url)r   r8   r3   r4   Ú	input_keyr   Úresponses          r   r-   r-   H   s~   € Ü”Tœ'×+Ò+¨BÓ/×:Ñ:Ó;¸XÓF€IØ
×
 Ñ
 Ø�y‰y˜ DÓ)ØØ—‘Ø�l‰lØ—‘ð !ð €Cð ×!Ñ! #Ó&€HÜ˜x°Ó5Ð5r   c                ó    •  UR                  X5      $ ! [        [        4 a*    [        [	        U 5      5      nU(       d  e [        U5      s $ f = fr
   )Úget_responser.   r/   r0   r1   r2   )rI   r8   r   r9   s       r   rG   rG   U   sL   € ð'Ø×"Ñ" 8Ó1Ð1øÜ”iÐ ó 'Üœ7 8Ó,Ó-ˆÞØÜ! #Ó&Ò&ð	'ús   ‚ “7AÁAc                óˆ   • [        U [        [        45      (       a   [        R                  " U 5      $ g ! [
         a     g f = fr
   )Ú
isinstanceÚbytesÚ	bytearrayÚjsonÚloadsÚ	Exception)rI   s    r   r1   r1   _   sA   € Ü�(œU¤IÐ.×/Ñ/ð	Ü—:’:˜hÓ'Ð'ð øô ó 	Ùð	ús   �4 ´
AÁ Ac                óX  • [        U [        5      (       d  g S HV  nU R                  U5      n[        U[        5      (       d  M+  [        UR                  S5      [        5      (       d  MQ  US   s  $    S H  nU R                  U5      n[        U[        5      (       d  M+  U(       d  M4  [        US   [        5      (       d  MN  [        US   R                  S5      [        5      (       d  Mw  US   S   s  $    S H-  nU R                  U5      n[        U[        5      (       d  M+  Us  $    g )N)ÚvideoÚimageÚaudioÚfiler9   )ÚvideosÚimagesÚaudiosÚfilesr   )Ú	video_urlÚ	image_urlÚ	audio_urlr9   )rM   ÚdictÚgetr+   Úlist)ÚoutputÚkeyÚvs      r   r0   r0   h   sæ   € Ü�fœd×#Ñ#ØÛ2ˆØ�J‰J�s‹OˆÜ�aœ×Ó¤:¨a¯e©e°E«l¼C×#@Ó#@Ø�U‘8ŠOñ 3ó 7ˆØ�J‰J�s‹Oˆä�qœ$×Óß�Ü˜1˜Q™4¤×&Ó&Ü˜1˜Q™4Ÿ8™8 E›?¬C×0Ó0à�Q‘4˜‘;Òñ 7ó >ˆØ�J‰J�s‹OˆÜ�aœ×ÓØŠHñ >ð r   c                ó:   ^ ^• SSK Jm  SUU 4S jjn[        U5      $ )Nr   )Úasync_ssrf_protected_getc               “  óŒ  >#   • T" T5      I S h  v•N n U R                   S:w  a  [        SU R                    35      eU R                  R                  S5      nU(       a;  UR	                  5       (       a&  [        U5      [        :”  a  [        S[         S35      eU R                  R                  SS5      R                  SS	5      S
   R                  5       R                  5       nUR                  [        5      (       d  [        SU< 35      eU R                  n[        U5      [        :”  a  [        S[         S35      eU$  GN27f)NéÈ   zprovider URL returned zcontent-lengthzprovider URL exceeds z	-byte capzcontent-typeÚ Ú;r#   r   z'unexpected content-type from provider: )Ústatus_coder(   r>   r`   ÚisdigitÚintÚ_MAX_MEDIA_BYTESÚsplitÚstripÚlowerÚ
startswithÚ_ALLOWED_MEDIA_PREFIXESÚcontentÚlen)rI   ÚdeclaredÚctÚdatarf   r9   s       €€r   Ú_getÚ _fetch_media_bytes.<locals>._get‚   s  øé € Ù1°#Ó6×6ˆØ×Ñ 3Ó&ÜÐ5°h×6JÑ6JÐ5KÐLÓMÐMØ×#Ñ#×'Ñ'Ð(8Ó9ˆÞ˜×(Ñ(×*Ñ*¬s°8«}Ô?OÓ/OÜÐ4Ô5EÐ4FÀiÐPÓQÐQØ×Ñ×!Ñ! .°"Ó5×;Ñ;¸CÀÓCÀAÑF×LÑLÓN×TÑTÓVˆØ�}‰}Ô4×5Ñ5ÜÐFÀrÁfÐMÓNÐNà×ÑˆÜˆt‹9Ô'Ó'ÜÐ4Ô5EÐ4FÀiÐPÓQÐQØˆò 7ùs   ƒE�E�D2E)ÚreturnrN   )Úgradio.processing_utilsrf   r   )r9   ry   rf   s   ` @r   r2   r2      s   ù€ Ý@÷ð ô  ˜TÓ"Ð"r   )r4   r_   )r9   r+   r{   rN   )Ú__doc__Ú
__future__r   rB   rP   ÚreÚgradio_client.utilsr   Úcompiler)   rn   rs   r   r:   r-   rG   r1   r0   r2   r   r   r   Ú<module>r‚      sg   ðñõ #ã Û Û 	å 1àŸJšJð#óÐ ð
 %Ð ðÐ ÷-ñ -ô ô6
6ò'òòõ.#r   