
    bCi4              	          % S SK r S SKrS SKrS SKrS SKrS SKrS SKrS SKJrJ	r	  S SK
Jr  S SKJrJrJrJrJrJrJrJrJrJrJrJr  S SKJr  SSKJr  SSKJr  SS	KJrJ r J!r!J"r"J#r#  SS
K$J%r%  SSK&J'r'J(r(  Sr)Sr*\\+   \,S'   \(       a  S SKJ-r-   " S S\.5      r/ " S S\0\Rb                  5      r2S\S\S\SS4S jr3\2Rh                  S.S\S   S\S\2SS4S jjr5 " S S 5      r6\S   r7\\7\4   r8 " S! S"5      r9 " S# S\5      r: " S$ S%\:5      r; " S& S'\;5      r< " S( S)\<5      r= " S* S+\:5      r> " S, S-\>5      r? " S. S/\>5      r@ " S0 S1\>5      rA " S2 S3\;5      rB\(       a  S S4KJCrCJDrD  \D\E   rF\C\E   rGOS S4KHJCrCJDrD  \DrF\CrG " S5 S6\:5      rI " S7 S8\I5      rJ\9" 5       rK\KR                  \;\E\M\N45        \KR                  \<\05        \KR                  \=\R                  5        \KR                  \?\R                  5        \KR                  \@\R                  5        \KR                  \A\R                  \R                  45        \KR                  \>\R                  5        \KR                  \J\%5        \KR                  \I\C\2R                  S9  g)9    N)ABCabstractmethod)chain)IOTYPE_CHECKINGAny
ByteStringDictFinalIterableOptionalTextIOTupleTypeUnion)CIMultiDict   )hdrs)AbstractStreamWriter)	_SENTINELcontent_disposition_headerguess_filenameparse_mimetypesentinel)StreamReader)JSONEncoder_CIMultiDict)PAYLOAD_REGISTRYget_payloadpayload_typePayloadBytesPayloadStringPayloadIOBasePayloadBytesIOPayloadBufferedReaderPayloadTextIOPayloadStringIOPayloadJsonPayloadAsyncIterablePayloadi   TOO_LARGE_BYTES_BODY)Listc                       \ rS rSrSrg)LookupError=    N)__name__
__module____qualname____firstlineno____static_attributes__r0       I/home/james-whalen/.local/lib/python3.13/site-packages/aiohttp/payload.pyr.   r.   =   s    r6   r.   c                        \ rS rSrSrSrSrSrg)OrderA   normal	try_firsttry_lastr0   N)r1   r2   r3   r4   r;   r<   r=   r5   r0   r6   r7   r9   r9   A   s    FIHr6   r9   dataargskwargsreturnr!   c                 6    [         R                  " U /UQ70 UD6$ N)r   get)r>   r?   r@   s      r7   r   r   G   s    6t6v66r6   orderfactorytyperF   c                ,    [         R                  XUS9  g NrE   )r   register)rG   rH   rF   s      r7   register_payloadrL   K   s     g59r6   c                   d    \ rS rSr\R
                  S.S\S\SS4S jjrS\S	   S\S	   4S
 jr	Sr
g)r    Q   rE   rH   rF   rA   Nc                    Xl         X l        g rC   )rH   rF   )selfrH   rF   s      r7   __init__payload_type.__init__R   s    	
r6   rG   r!   c                 B    [        XR                  U R                  S9  U$ rJ   )rL   rH   rF   )rP   rG   s     r7   __call__payload_type.__call__V   s    ))4::>r6   )rF   rH   )r1   r2   r3   r4   r9   r;   r   rQ   r   rT   r5   r0   r6   r7   r    r    Q   s>    49LL S E T Y DO r6   r    c                   ~    \ rS rSrSrSS jr\S.S\S\S	S
S\SS4
S jjr\	R                  S.S\S\S\	SS4S jjrSrg)PayloadRegistry_   zRPayload registry.

note: we need zope.interface for more efficient adapter search
rA   Nc                 .    / U l         / U l        / U l        g rC   )_first_normal_lastrP   s    r7   rQ   PayloadRegistry.__init__e   s    243513
r6   )_CHAINr>   r?   r_   z!Type[chain[_PayloadRegistryItem]]r@   r!   c                    [        U[        5      (       a  U$ U" U R                  U R                  U R                  5       H#  u  pV[        X5      (       d  M  U" U/UQ70 UD6s  $    [        5       erC   )
isinstancer!   rZ   r[   r\   r.   )rP   r>   r_   r?   r@   rG   rH   s          r7   rD   PayloadRegistry.getj   sb     dG$$K#DKKtzzJMG$%%t5d5f55 K mr6   rE   rG   rH   rF   c                @   U[         R                  L a  U R                  R                  X45        g U[         R                  L a  U R
                  R                  X45        g U[         R                  L a  U R                  R                  X45        g [        SU< 35      e)NzUnsupported order )	r9   r<   rZ   appendr;   r[   r=   r\   
ValueError)rP   rG   rH   rF   s       r7   rK   PayloadRegistry.registery   sw     EOO#KK/ell"LL0enn$JJwo.1%;<<r6   )rZ   r\   r[   )rA   N)r1   r2   r3   r4   __doc__rQ   r   r   rD   r9   r;   PayloadTyperK   r5   r0   r6   r7   rW   rW   _   s{    
4 7<	  4	
  
  BG
="
=*-
=9>
=	
= 
=r6   rW   c                      \ rS rSr% Sr\\S'   Sr\\	   \S'   S\
SS4S\S\\\\\\4   \\\\4      4      S\\S\4   S	\\   S
\\   S\SS4S jjr\S\\	   4S j5       r\S\\   4S j5       r\S\4S j5       r\S\4S j5       r\S\\   4S j5       r\S\4S j5       r  SS\S\S\S\SS4
S jjr\S\SS4S j5       rSr g)r!      application/octet-stream_default_content_typeN_sizevalueheaderscontent_typefilenameencodingr@   rA   c                    XPl         X@l        [        5       U l        Xl        U[
        La   Ub  X0R                  [        R                  '   OU R                  bO  [        R                  " U R                  5      S   nUc  U R                  nX0R                  [        R                  '   O'U R                  U R                  [        R                  '   U R                  R                  U=(       d    0 5        g Nr   )	_encoding	_filenamer   _headers_valuer   r   CONTENT_TYPE	mimetypes
guess_typerl   update)rP   rn   ro   rp   rq   rr   r@   s          r7   rQ   Payload.__init__   s     "!&1mx'L,D/;MM$++,^^'$//?BL##99/;MM$++,/3/I/IDMM$++,W]+r6   c                     U R                   $ )zSize of the payload.rm   r]   s    r7   sizePayload.size   s     zzr6   c                     U R                   $ )zFilename of the payload.)rv   r]   s    r7   rq   Payload.filename        ~~r6   c                     U R                   $ )zCustom item headers)rw   r]   s    r7   ro   Payload.headers   s     }}r6   c                     SR                  U R                  R                  5        VVs/ s H  u  pUS-   U-   S-   PM     snn5      R                  S5      S-   $ s  snnf )N z: z
utf-8s   
)joinro   itemsencode)rP   kvs      r7   _binary_headersPayload._binary_headers   s]     GGt||7I7I7KL7KtqQX\F*7KLMTT 	
Ls   A
c                     U R                   $ )zPayload encoding)ru   r]   s    r7   rr   Payload.encoding   r   r6   c                 <    U R                   [        R                     $ )zContent type)rw   r   ry   r]   s    r7   rp   Payload.content_type   s     }}T..//r6   disptypequote_fields_charsetparamsc                 V    [        U4X#S.UD6U R                  [        R                  '   g)z$Sets ``Content-Disposition`` header.)r   r   N)r   rw   r   CONTENT_DISPOSITION)rP   r   r   r   r   s        r7   set_content_dispositionPayload.set_content_disposition   s1     3M3
#/3
FL3
d../r6   writerc                    #    g7f)z<Write payload.

writer is an AbstractStreamWriter instance:
Nr0   rP   r   s     r7   writePayload.write   s     s   )ru   rv   rw   rx   )Tr   )!r1   r2   r3   r4   rl   str__annotations__rm   r   intr   r   r   r   r
   r   r   r   rQ   propertyr   rq   ro   bytesr   rr   rp   boolr   r   r   r   r5   r0   r6   r7   r!   r!      s   !;3;E8C= 4<"&"&,, ,S#XsCx0IIJ
, Cy01, 3-, 3-, , 
,4 hsm   (3-      
 
 
 (3-   0c 0 0 "	



 

 	


 

 


 "6 4  r6   c                   N   ^  \ rS rSrS\S\S\SS4U 4S jjrS\SS4S	 jrS
r	U =r
$ )r"      rn   r?   r@   rA   Nc                   > [        U[        [        [        45      (       d  [	        S[        U5      < 35      eSU;  a  SUS'   [        TU ]  " U/UQ70 UD6  [        U[        5      (       a  UR                  U l	        O[        U5      U l	        U R                  [        :  a!  SU 0n[        R                  " S[        40 UD6  g g )Nz%value argument must be byte-ish, not rp   rk   sourcez}Sending a large body directly with raw bytes might lock the event loop. You should probably pass an io.BytesIO object instead)ra   r   	bytearray
memoryview	TypeErrorrH   superrQ   nbytesrm   lenr+   warningswarnResourceWarningrP   rn   r?   r@   	__class__s       r7   rQ   BytesPayload.__init__   s    %%J!?@@CDK?STT'%?F>"000eZ((DJUDJ::,,%FMM,  	
  -r6   r   c                 V   #    UR                  U R                  5      I S h  vN   g  N7frC   )r   rx   r   s     r7   r   BytesPayload.write   s     ll4;;'''s   )')r   )r1   r2   r3   r4   r	   r   rQ   r   r   r5   __classcell__r   s   @r7   r"   r"      s=    j    0("6 (4 ( (r6   r"   c                   Z   ^  \ rS rSrSSS.S\S\S\\   S\\   S\S	S4U 4S
 jjjrSrU =r	$ )r#      Nrr   rp   rn   r?   rr   rp   r@   rA   c                   > Uc0  Uc  SnSnO2[        U5      nUR                  R                  SS5      nO
Uc  SU-  nUn[        TU ]  " UR                  U5      /UQ7UUS.UD6  g )Nr   text/plain; charset=utf-8charsettext/plain; charset=%sr   )r   
parametersrD   r   rQ   r   )	rP   rn   rr   rp   r?   r@   real_encodingmimetyper   s	           r7   rQ   StringPayload.__init__   s     # ':),7 ( 3 3 7 7	7 K#7(B$MLL'	
 		
"%	

 	
r6   r0   )
r1   r2   r3   r4   r   r   r   rQ   r5   r   r   s   @r7   r#   r#      sW    
 #'&*

 
 3-	

 sm
 
 

 
r6   r#   c                   B   ^  \ rS rSrS\\   S\S\SS4U 4S jjrSrU =r	$ )	r(   i  rn   r?   r@   rA   Nc                 J   > [         TU ]  " UR                  5       /UQ70 UD6  g rC   )r   rQ   readr   s       r7   rQ   StringIOPayload.__init__  s     777r6   r0   )
r1   r2   r3   r4   r   r   r   rQ   r5   r   r   s   @r7   r(   r(     s-    8bg 8c 8S 8T 8 8r6   r(   c                   p   ^  \ rS rSr% \\   \S'    SS\\   S\S\S\SS4
U 4S	 jjjrS
\	SS4S jr
SrU =r$ )r$   i  rx   rn   dispositionr?   r@   rA   Nc                    > SU;  a  [        U5      US'   [        TU ]  " U/UQ70 UD6  U R                  b=  Ub9  [        R
                  U R                  ;  a  U R                  X R                  S9  g g g g )Nrq   )rq   )r   r   rQ   rv   r   r   ro   r   )rP   rn   r   r?   r@   r   s        r7   rQ   IOBasePayload.__init__  sw     V#!/!6F:000>>%+*A''t||;,,[>>,R < +B%r6   r   c                   #    [         R                  " 5       n UR                  S U R                  R                  S5      I S h  vN nU(       aQ  UR                  U5      I S h  vN   UR                  S U R                  R                  S5      I S h  vN nU(       a  MQ  UR                  S U R                  R                  5      I S h  vN   g  N Nm N@ N! UR                  S U R                  R                  5      I S h  vN    f = f7f)N   )asyncioget_event_looprun_in_executorrx   r   r   close)rP   r   loopchunks       r7   r   IOBasePayload.write+  s     %%'	@..tT[[5E5EuMMEll5)))"2249I9I5QQ % &&tT[[->->??? N)Q?$&&tT[[->->???sp   D*C CC #C$.C CC  )D	C
DC C C D*DDDDr0   )
attachment)r1   r2   r3   r4   r   r   r   r   rQ   r   r   r5   r   r   s   @r7   r$   r$     sk    sGO 2>
SW
S+.
SFI
SUX
S	
S 
S@"6 @4 @ @r6   r$   c                      ^  \ rS rSr% \\S'   SSS.S\S\S\\   S\\   S	\S
S4U 4S jjjr	\
S
\\   4S j5       rS\S
S4S jrSrU =r$ )r'   i6  rx   Nr   rn   r?   rr   rp   r@   rA   c                   > Uc0  Uc  SnSnO0[        U5      nUR                  R                  SS5      nOUc  SU-  n[        TU ]  " U/UQ7UUS.UD6  g )Nr   r   r   r   rp   rr   )r   r   rD   r   rQ   )rP   rn   rr   rp   r?   r@   r   r   s          r7   rQ   TextIOPayload.__init__9  s|     #":),7#..229gF#7(B	
 		
%	

 	
r6   c                      [         R                  " U R                  R                  5       5      R                  U R                  R                  5       -
  $ ! [         a     g f = frC   osfstatrx   filenost_sizetellOSErrorr]   s    r7   r   TextIOPayload.sizeU  sM    	88DKK..0199DKK<L<L<NNN 		   AA 
A"!A"r   c                   #    [         R                  " 5       n UR                  S U R                  R                  S5      I S h  vN nU(       a  U R
                  (       a  UR                  U R
                  S9OUR                  5       nUR                  U5      I S h  vN   UR                  S U R                  R                  S5      I S h  vN nU(       a  M  UR                  S U R                  R                  5      I S h  vN   g  N Nm N@ N! UR                  S U R                  R                  5      I S h  vN    f = f7f)Nr   )rr   )	r   r   r   rx   r   ru   r   r   r   )rP   r   r   r   r>   s        r7   r   TextIOPayload.write\  s     %%'	@..tT[[5E5EuMME ~~ LL$..L9 
 ll4((("2249I9I5QQ % &&tT[[->->??? N )Q?$&&tT[[->->???sq   E*D D	AD D.D DD )EDE	D D D E*E;D><EEr0   )r1   r2   r3   r4   r   r   r   r   r   rQ   r   r   r   r   r   r5   r   r   s   @r7   r'   r'   6  s    N #'&*

 
 3-	

 sm
 
 

 
8 hsm  @"6 @4 @ @r6   r'   c                   ,    \ rS rSr\S\4S j5       rSrg)r%   il  rA   c                     U R                   R                  5       nU R                   R                  S[        R                  5      nU R                   R                  U5        X!-
  $ rt   )rx   r   seekr   SEEK_END)rP   positionends      r7   r   BytesIOPayload.sizem  sH    ;;##%kkq"++."~r6   r0   N)r1   r2   r3   r4   r   r   r   r5   r0   r6   r7   r%   r%   l  s    c  r6   r%   c                   2    \ rS rSr\S\\   4S j5       rSrg)r&   iu  rA   c                      [         R                  " U R                  R                  5       5      R                  U R                  R                  5       -
  $ ! [         a     g f = frC   r   r]   s    r7   r   BufferedReaderPayload.sizev  sO    	88DKK..0199DKK<L<L<NNN 	 	r   r0   N)	r1   r2   r3   r4   r   r   r   r   r5   r0   r6   r7   r&   r&   u  s    hsm  r6   r&   c                   f   ^  \ rS rSrSS\R
                  4S\S\S\S\S\S	\S
S4U 4S jjjr	Sr
U =r$ )r)   i  r   zapplication/jsonrn   rr   rp   dumpsr?   r@   rA   Nc                 ^   > [         TU ]  " U" U5      R                  U5      /UQ7UUS.UD6  g )Nr   )r   rQ   r   )rP   rn   rr   rp   r   r?   r@   r   s          r7   rQ   JsonPayload.__init__  sC     	%L)	
 		
%	

 	
r6   r0   )r1   r2   r3   r4   jsonr   r   r   r   rQ   r5   r   r   s   @r7   r)   r)     s`      .!ZZ

 
 	

 
 
 
 

 
r6   r)   )AsyncIterableAsyncIteratorc                   d   ^  \ rS rSr% Sr\\   \S'   S\S\	S\	SS4U 4S jjr
S	\SS4S
 jrSrU =r$ )r*   i  N_iterrn   r?   r@   rA   c                    > [        U[        5      (       d#  [        SR                  [	        U5      5      5      eSU;  a  SUS'   [
        TU ]  " U/UQ70 UD6  UR                  5       U l        g )NzMvalue argument must support collections.abc.AsyncIterable interface, got {!r}rp   rk   )	ra   r   r   formatrH   r   rQ   	__aiter__r   r   s       r7   rQ   AsyncIterablePayload.__init__  si    %//!6$u+.  '%?F>"000__&
r6   r   c                    #    U R                   (       a?    U R                   R                  5       I S h  vN nUR                  U5      I S h  vN   M=  g  N  N	! [         a
    S U l          g f = f7frC   )r   	__anext__r   StopAsyncIteration)rP   r   r   s      r7   r   AsyncIterablePayload.write  sd     ::" "&**"6"6"88E ,,u--- 	 
 9-% "!
"sJ   A/A AA AA A/A A A,)A/+A,,A/)r   )r1   r2   r3   r4   r   r   _AsyncIteratorr   _AsyncIterabler   rQ   r   r   r5   r   r   s   @r7   r*   r*     sL    &*E8N#*'n 'S 'C 'D '	""6 	"4 	" 	"r6   r*   c                   <   ^  \ rS rSrS\S\S\SS4U 4S jjrSrU =r$ )	StreamReaderPayloadi  rn   r?   r@   rA   Nc                 J   > [         TU ]  " UR                  5       /UQ70 UD6  g rC   )r   rQ   iter_anyr   s       r7   rQ   StreamReaderPayload.__init__  s!    );D;F;r6   r0   )	r1   r2   r3   r4   r   r   rQ   r5   r   r   s   @r7   r  r    s)    <l <3 <# <$ < <r6   r  )Vr   enumior   rz   r   r   abcr   r   	itertoolsr   typingr   r   r   r	   r
   r   r   r   r   r   r   r   	multidictr   r   r   r   helpersr   r   r   r   r   streamsr   typedefsr   r   __all__r+   r   r   r,   	Exceptionr.   r   Enumr9   r   r;   rL   r    rh   _PayloadRegistryItemrW   r!   r"   r#   r(   r$   r'   r%   r&   r)   r   r   r   r  r  collections.abcr*   r  r   rK   r   r   StringIO
TextIOBaseBytesIOBufferedReaderBufferedRandomIOBaser=   r0   r6   r7   <module>r     s     	   	  #     "  %  " /  $) eCj (	) 	C 7c 7# 7 7 7
 <A<<:)_:$':38:	:  9o[#-. $= $=NRc Rj(7 (:
L 
>8m 8
@G @43@M 3@l] M 
, 
( 3"5)N"5)N<"N"N"7 "><. <
 #$    ,	:(F G   - -   /2;; 7   - 7   ."** 5   /"2C2CREVEV1W X   - 3   -| <   .U^^  Tr6   