Ë
    -Œ:j�  ã                  óÈ   — d dl mZ d dlZd dlmZmZmZmZmZ d dl	m
Z
 d dlZddlmZ erddlmZmZ  G d„ d	ee   «      Z G d
„ dee   «      Z G d„ d«      Z G d„ d«      Zy)é    )ÚannotationsN)ÚTYPE_CHECKINGÚAnyÚGenericÚIteratorÚAsyncIterator)Úoverrideé   )Ú	ResponseT)ÚSyncAPIClientÚAsyncAPIClientc                  óT   — e Zd ZU dZded<   	 	 	 	 	 	 	 	 d
d„Zdd„Zdd„Zdd„Zdd„Z	y	)ÚStreamzJProvides the core interface to iterate over a synchronous stream response.úhttpx.ResponseÚresponsec               óv   — || _         || _        || _        t        «       | _        | j                  «       | _        y ©N©r   Ú_cast_toÚ_clientÚ
SSEDecoderÚ_decoderÚ
__stream__Ú	_iterator©ÚselfÚcast_tor   Úclients       úV/var/www/html/tokenscope/api/venv/lib/python3.12/site-packages/anthropic/_streaming.pyÚ__init__zStream.__init__   ó0   € ð !ˆŒØˆŒØˆŒÜ"›ˆŒØŸ™Ó*ˆ�ó    c                ó6   — | j                   j                  «       S r   )r   Ú__next__©r   s    r   r$   zStream.__next__"   s   € Ø�~‰~×&Ñ&Ó(Ð(r"   c              #  ó6   K  — | j                   D ]  }|–— Œ y ­wr   ©r   ©r   Úitems     r   Ú__iter__zStream.__iter__%   s   è ø€ Ø—N‘Nò 	ˆDØ‹Jñ	ùs   ‚c              #  ó†   K  — | j                   j                  | j                  j                  «       «      E d {  –—†  y 7 Œ­wr   )r   Úiterr   Ú
iter_linesr%   s    r   Ú_iter_eventszStream._iter_events)   s+   è ø€ Ø—=‘=×%Ñ% d§m¡m×&>Ñ&>Ó&@ÓA×AÒAús   ‚7A¹?ºAc              #  ó  K  — | j                   }| j                  }| j                  j                  }| j	                  «       }|D ]“  }|j
                  dk(  r ||j                  «       ||¬«      –— |j
                  dk(  rŒ=|j
                  dk(  sŒM|j                  }	 |j                  «       }|› }| j                  j                  ||| j                  ¬«      ‚ |D ]  }Œ y # t        $ r  |j                  xs d|j                  › �}Y ŒYw xY w­w©NÚ
completion)Údatar   r   ÚpingÚerrorzError code: )Úbodyr   ©r   r   r   Ú_process_response_datar.   ÚeventÚjsonr2   Ú	ExceptionÚstatus_codeÚ_make_status_error©r   r   r   Úprocess_dataÚiteratorÚsser5   Úerr_msgs           r   r   zStream.__stream__,   s  è ø€ Ø—-‘-ˆØ—=‘=ˆØ—|‘|×:Ñ:ˆØ×$Ñ$Ó&ˆàò 	ˆCØ�y‰y˜LÒ(Ù"¨¯©«
¸GÈhÔWÒWà�y‰y˜FÒ"Øà�y‰y˜GÓ#Ø—x‘x�ðPØŸ8™8›:�DØ!% �Gð —l‘l×5Ñ5ØØØ!Ÿ]™]ð 6ó ð ð!	ð. ò 	ˆCØñ	øô !ò PØ!Ÿh™hÒO¨L¸×9MÑ9MÐ8NÐ*O’GðPüs0   ‚BDÂDÂC!Â01DÃ!&D
ÄDÄ	D
Ä
DN)r   útype[ResponseT]r   r   r   r   ÚreturnÚNone©rC   r   )rC   zIterator[ResponseT])rC   úIterator[ServerSentEvent])
Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú__annotations__r    r$   r*   r.   r   © r"   r   r   r      sM   … ÙTàÓð+ð !ð+ð !ð	+ð
 ð+ð 
ó+ó)óóBôr"   r   c                  óT   — e Zd ZU dZded<   	 	 	 	 	 	 	 	 d
d„Zdd„Zdd„Zdd„Zdd„Z	y	)ÚAsyncStreamzLProvides the core interface to iterate over an asynchronous stream response.r   r   c               óv   — || _         || _        || _        t        «       | _        | j                  «       | _        y r   r   r   s       r   r    zAsyncStream.__init__R   r!   r"   c              ƒ  óR   K  — | j                   j                  «       ƒ d {  –—† S 7 Œ­wr   )r   Ú	__anext__r%   s    r   rQ   zAsyncStream.__anext___   s   è ø€ Ø—^‘^×-Ñ-Ó/×/Ð/Ð/ús   ‚' %¡'c               óH   K  — | j                   2 3 d {  –—† }|­–— Œ7 Œ
6 y ­wr   r'   r(   s     r   Ú	__aiter__zAsyncStream.__aiter__b   s&   è ø€ ØŸ.™.÷ 	ð 	�$ØŒJð	ø™.ùs   ‚"� “” —"ž  "c               ó–   K  — | j                   j                  | j                  j                  «       «      2 3 d {  –—† }|­–— Œ7 Œ
6 y ­wr   )r   Úaiterr   Úaiter_lines)r   r@   s     r   r.   zAsyncStream._iter_eventsf   s?   è ø€ ØŸ™×,Ñ,¨T¯]©]×-FÑ-FÓ-HÓI÷ 	ð 	�#ØŒIð	øÑIùs%   ‚4A	¶AºA»A¾A	ÁAÁA	c               ó>  K  — | j                   }| j                  }| j                  j                  }| j	                  «       }|2 3 d {  –—† }|j
                  dk(  r ||j                  «       ||¬«      ­–— |j
                  dk(  rŒD|j
                  dk(  sŒT|j                  }	 |j                  «       }|› }| j                  j                  ||| j                  ¬«      ‚7 Œ—# t        $ r  |j                  xs d|j                  › �}Y ŒRw xY w6 |2 3 d {  –—†7  }Œ6 y ­wr0   r6   r=   s           r   r   zAsyncStream.__stream__j   s  è ø€ Ø—-‘-ˆØ—=‘=ˆØ—|‘|×:Ñ:ˆØ×$Ñ$Ó&ˆà!÷ 	ð 	�#Ø�y‰y˜LÒ(Ù"¨¯©«
¸GÈhÔWÓWà�y‰y˜FÒ"Øà�y‰y˜GÓ#Ø—x‘x�ðPØŸ8™8›:�DØ!% �Gð —l‘l×5Ñ5ØØØ!Ÿ]™]ð 6ó ð ð!	ùô !ò PØ!Ÿh™hÒO¨L¸×9MÑ9MÐ8NÐ*O’GðPúð "ð. "÷ 	ñ 	�#Øñ "ùsg   ‚ADÁDÁCÁDÁADÂDÂ$C!Â7(DÃDÃ!&D
ÄDÄ	D
Ä
DÄDÄDÄDÄDN)r   rB   r   r   r   r   rC   rD   rE   )rC   zAsyncIterator[ResponseT])rC   úAsyncIterator[ServerSentEvent])
rG   rH   rI   rJ   rK   r    rQ   rS   r.   r   rL   r"   r   rN   rN   M   sL   … ÙVàÓð+ð !ð+ð !ð	+ð
 ð+ð 
ó+ó0óóôr"   rN   c                  ó”   — e Zd Zdddddœ	 	 	 	 	 	 	 	 	 d
d„Zedd„«       Zedd„«       Zedd„«       Zedd„«       Zdd„Z	e
dd	„«       Zy)ÚServerSentEventN©r8   r2   ÚidÚretryc               óL   — |€d}|| _         || _        |xs d | _        || _        y )NÚ )Ú_idÚ_dataÚ_eventÚ_retry)r   r8   r2   r\   r]   s        r   r    zServerSentEvent.__init__Œ   s.   € ð ˆ<ØˆDàˆŒØˆŒ
Ø’m˜tˆŒØˆ�r"   c                ó   — | j                   S r   )rb   r%   s    r   r8   zServerSentEvent.eventœ   ó   € à�{‰{Ðr"   c                ó   — | j                   S r   )r`   r%   s    r   r\   zServerSentEvent.id    s   € à�x‰xˆr"   c                ó   — | j                   S r   )rc   r%   s    r   r]   zServerSentEvent.retry¤   re   r"   c                ó   — | j                   S r   )ra   r%   s    r   r2   zServerSentEvent.data¨   s   € à�z‰zÐr"   c                ó@   — t        j                  | j                  «      S r   )r9   Úloadsr2   r%   s    r   r9   zServerSentEvent.json¬   s   € Ü�z‰z˜$Ÿ)™)Ó$Ð$r"   c           	     óp   — d| j                   › d| j                  › d| j                  › d| j                  › d�	S )NzServerSentEvent(event=z, data=z, id=z, retry=ú)r[   r%   s    r   Ú__repr__zServerSentEvent.__repr__¯   s9   € à'¨¯
©
 |°7¸4¿9¹9¸+ÀUÈ4Ï7É7È)ÐS[Ð\`×\fÑ\fÐ[gÐghÐiÐir"   )
r8   ú
str | Noner2   rn   r\   rn   r]   ú
int | NonerC   rD   )rC   rn   )rC   ro   )rC   Ústr)rC   r   )rG   rH   rI   r    Úpropertyr8   r\   r]   r2   r9   r	   rm   rL   r"   r   rZ   rZ   ‹   s²   „ ð !ØØØ ñð ðð ð	ð
 ðð ðð 
óð  òó ðð òó ðð òó ðð òó ðó%ð òjó ñjr"   rZ   c                  óV   — e Zd ZU ded<   ded<   ded<   ded<   dd„Zdd	„Zdd
„Zdd„Zy)r   z	list[str]ra   rn   rb   ro   rc   Ú_last_event_idc                ó<   — d | _         g | _        d | _        d | _        y r   )rb   ra   rs   rc   r%   s    r   r    zSSEDecoder.__init__º   s   € ØˆŒØˆŒ
Ø"ˆÔØˆ�r"   c              #  ól   K  — |D ]+  }|j                  d«      }| j                  |«      }|€Œ(|–— Œ- y­w)zTGiven an iterator that yields lines, iterate over it & yield every event encounteredú
N©ÚrstripÚdecode©r   r?   Úliner@   s       r   r,   zSSEDecoder.iterÀ   s;   è ø€ àò 	ˆDØ—;‘;˜tÓ$ˆDØ—+‘+˜dÓ#ˆCØ‰Ø“	ñ		ùs   ‚*4­4c               ó~   K  — |2 3 d{  –—† }|j                  d«      }| j                  |«      }|€Œ.|­–— Œ47 Œ/6 y­w)zZGiven an async iterator that yields lines, iterate over it & yield every event encounteredNrv   rw   rz   s       r   rU   zSSEDecoder.aiterÈ   sC   è ø€ à"÷ 	ð 	�$Ø—;‘;˜tÓ$ˆDØ—+‘+˜dÓ#ˆCØ‰Ø”	ð		ø™(ùs    ‚=…;‰9Š;�%=³=¹;»=c                óz  — |sŽ| j                   s%| j                  s| j                  s| j                  €y t	        | j                   dj                  | j                  «      | j                  | j                  ¬«      }d | _         g | _        d | _        |S |j                  d«      ry |j                  d«      \  }}}|j                  d«      r|dd  }|dk(  r|| _         y |dk(  r| j                  j                  |«       y |dk(  rd	|v r	 y || _        y |d
k(  r	 t        |«      | _        y 	 y # t        t        f$ r Y y w xY w)Nrv   r[   ú:ú r
   r8   r2   r\   ú r]   )rb   ra   rs   rc   rZ   ÚjoinÚ
startswithÚ	partitionÚappendÚintÚ	TypeErrorÚ
ValueError)r   r{   r@   Ú	fieldnameÚ_Úvalues         r   ry   zSSEDecoder.decodeÐ   sW  € ñ Ø—;’; t§z¢z¸$×:MÒ:MÐRV×R]ÑR]ÐReØä!Ø—k‘kØ—Y‘Y˜tŸz™zÓ*Ø×&Ñ&Ø—k‘kô	ˆCð ˆDŒKØˆDŒJØˆDŒKàˆJà�?‰?˜3ÔØà"Ÿn™n¨SÓ1Ñˆ	�1�eà×Ñ˜CÔ Ø˜!˜"�IˆEà˜ÒØˆDŒKð  ð ˜&Ò Ø�J‰J×Ñ˜eÔ$ð ð ˜$ÒØ�u‰}Øð ð ',�Ô#ð ð ˜'Ò!ðÜ! %›j�”ð ð àøô œzÐ*ò Øð ðús   ÄD( Ä(D:Ä9D:N)rC   rD   )r?   zIterator[str]rC   rF   )r?   zAsyncIterator[str]rC   rX   )r{   rp   rC   zServerSentEvent | None)rG   rH   rI   rK   r    r,   rU   ry   rL   r"   r   r   r   ´   s.   … ØÓØÓØÓØÓóóóô.r"   r   )Ú
__future__r   r9   Útypingr   r   r   r   r   Útyping_extensionsr	   ÚhttpxÚ_typesr   Ú_base_clientr   r   r   rN   rZ   r   rL   r"   r   ú<module>r‘      s]   ðå "ã ß GÕ GÝ &ã å áß;ô:ˆW�YÑô :ôz;�'˜)Ñ$ô ;÷|&jñ &j÷RJò Jr"   