
    e#
                     v    d dl mZmZmZ d dlmZ d dlmZmZm	Z	m
Z
 g dZdedefdZdedeeef         fd	Zd
S )    )Headerdecode_headermake_header)Message)AnyDictListUnion))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)
ClassifierT)zRequires-DistT)zRequires-PythonF)zRequires-ExternalT)zProject-URLT)zProvides-ExtraT)zProvides-DistT)zObsoletes-DistTfieldreturnc                 R    |                                                      dd          S )N-_)lowerreplace)r   s    S/var/www/html/api/venv/lib/python3.11/site-packages/pip/_internal/metadata/_json.py	json_namer   %   s     ;;==  c***    msgc                    dt           t          t          f         dt          fdi }t          D ]\  }}|| vr
t	          |          }|r"fd|                     |          D             }n\ |                     |                    }|dk    r8d|v r d |                    d          D             }n|                                }|||<   |                                 }|r||d<   |S )	z;Convert a Message object into a JSON-compatible dictionary.hr   c                 @   t          | t                    r{g }t          |           D ]M\  }}|dk    r+	 |                    d           d}n# t          $ r d}Y nw xY w|                    ||f           Nt          t          |                    S t          |           S )Nzunknown-8bitzutf-8latin1)
isinstancer   r   decodeUnicodeDecodeErrorappendstrr   )r"   chunksbytesencodings       r   sanitise_headerz$msg_to_json.<locals>.sanitise_header,   s    a   	,F#0#3#3 	1 	1x~--,W---#*- , , ,#+, uh/0000{6**+++1vvs   AAAc                 &    g | ]} |          S  r/   ).0vr-   s     r   
<listcomp>zmsg_to_json.<locals>.<listcomp>B   s0     , , ,'("", , ,r   keywords,c                 6    g | ]}|                                 S r/   )strip)r0   r1   s     r   r2   zmsg_to_json.<locals>.<listcomp>K   s     AAA1QWWYYAAAr   description)	r
   r   r)   METADATA_FIELDSr   get_allgetsplitget_payload)r    resultr   multikeyvaluepayloadr-   s          @r   msg_to_jsonrB   )   s1   5- #      F'  u 	*, , , ,,/KK,>,>, , ,EE $OCGGENN33Ej   %<<AAC0@0@AAAEE!KKMMEsooG ( '}Mr   N)email.headerr   r   r   email.messager   typingr   r   r	   r
   r8   r)   r   rB   r/   r   r   <module>rF      s    < ; ; ; ; ; ; ; ; ; ! ! ! ! ! ! ) ) ) ) ) ) ) ) ) ) ) )  <+S +S + + + ++W +c3h + + + + + +r   