
    dh
                    X    d dl mZ d dlmZmZmZ d dlmZ d dlm	Z	m
Z
 g dZd	dZd
dZy)    )annotations)Headerdecode_headermake_header)Message)Anycast))zMetadata-VersionF)NameF)VersionF)DynamicT)PlatformT)zSupported-PlatformT)SummaryF)DescriptionF)zDescription-Content-TypeF)KeywordsF)z	Home-pageF)zDownload-URLF)AuthorF)zAuthor-emailF)
MaintainerF)zMaintainer-emailF)LicenseF)zLicense-ExpressionF)zLicense-FileT)
ClassifierT)zRequires-DistT)zRequires-PythonF)zRequires-ExternalT)zProject-URLT)zProvides-ExtraT)zProvides-DistT)zObsoletes-DistTc                B    | j                         j                  dd      S )N-_)lowerreplace)fields    ^/var/www/html/vivango/api/ia/venv/lib/python3.12/site-packages/pip/_internal/metadata/_json.py	json_namer   (   s    ;;=  c**    c                   dd}i }t         D ]  \  }}|| vrt        |      }|r%| j                  |      D cg c]
  } ||       }}n] || j                  |            }|dk(  rAd|v r-|j	                  d      D cg c]  }|j                          }}n|j	                         }|||<    t        t        | j                               }|r||d<   |S c c}w c c}w )z;Convert a Message object into a JSON-compatible dictionary.c                   t        | t              rUg }t        |       D ]1  \  }}|dk(  r	 |j                  d       d}|j                  ||f       3 t        t        |            S t        |       S # t        $ r d}Y Aw xY w)Nzunknown-8bitzutf-8latin1)
isinstancer   r   decodeUnicodeDecodeErrorappendstrr   )hchunksbytesencodings       r   sanitise_headerz$msg_to_json.<locals>.sanitise_header/   s    a F#0#3 	1x~-,W-#* uh/0	1 {6*++1v . ,#+,s   A11A?>A?keywords,description)r&   zHeader | strreturnr%   )	METADATA_FIELDSr   get_allgetsplitstripr	   r%   get_payload)	msgr*   resultr   multikeyvvaluepayloads	            r   msg_to_jsonr<   ,   s      F' u,/KK,>&'("&E & $CGGEN3Ej  %<05C0@A1QWWYAEA!KKMEs#& 3)*G '}M%& Bs   C=CN)r   r%   r.   r%   )r5   r   r.   zdict[str, Any])
__future__r   email.headerr   r   r   email.messager   typingr   r	   r/   r   r<    r   r   <module>rB      s&    " ; ; ! @++r   