
    ܖih              	           d dl Z d dlZd dlZd dlmZmZmZ d dlZd dlm	Z	 d dl
mZ d dlmZ  G d d      Zdefd	Zded
eej"                     fdZdg fded
eej"                     deeef   fdZy)    N)DictOptionalList)call)PipError)parsec            
       <    e Zd Z	 	 ddededee   dee   fdZd Zy)	DistributionNnameversionlocationeditable_project_locationc                     || _         t        |      | _        || _        || _        t
        j                  t        d      k\  rt        | j                        | _        y t        | j                        | _        y )Nz21.3)	r   r   r   r   r   pip_apiPIP_VERSIONbooleditable)selfr   r   r   r   s        d/var/www/html/content-pipeline/venv/lib/python3.12/site-packages/pip_api/_installed_distributions.py__init__zDistribution.__init__   sY     	W~ )B&%-/ !?!?@DM /DM    c                     dj                  | j                  | j                  | j                  rdj                  | j                        nd| j                  rdj                  | j                              S d      S )Nz+<Distribution(name='{}', version='{}'{}{})>z, location='{}' z , editable_project_location='{}')formatr   r   r   r   )r   s    r   __repr__zDistribution.__repr__   sq    <CCIILL7;}}$$T]]3"
 11 39922
 	
 
 	
r   )NN)__name__
__module____qualname__strr   r   r    r   r   r
   r
      sB    
 #'3700 0 3-	0
 $,C=0"
r   r
   localc                 f   dg}| r|j                  d       t        | }i }t        j                  d      }|j	                         j                  d      D ]Y  }t        j                  ||      }|r?|j                         \  }}|j                  d      d gz   d d \  }	}
t        ||	|
      ||<   Z[ |S )Nlist--localz(.*) \((.*)\)
z,    )	appendr   recompilestripsplitmatchgroupsr
   )r!   	list_argsresultretpatternliner,   r   parenr   r   s              r   _old_installed_distributionsr4   .   s    I#9F Cjj)*G$$T* 
$',,.KD%!&T!2dV!;Ra @GX$T7H=CI 
 Jr   pathsc           	      D   g d}| r|j                  d       |D ]  }|j                  dt        |      g         t        | }i }t	        j
                  |      D ]C  }t        |d   |d   |j                  d      |j                  d            }|||j                  <   E |S )N)r#   z-vz--format=jsonr$   z--pathr   r   r   r   )	r'   extendr   r   jsonloadsr
   getr   )r!   r5   r.   pathr/   r0   raw_distdists           r   _new_installed_distributionsr>   O   s    /I# 0(CI./09F
C JJv& VYLL$LL45	
 DII Jr   Freturnc                     t         j                  t        d      k  r|rt        dt         j                   d      t         j                  t        d      k  rt	        |       S t        | |      S )Nz19.2zpip z& does not support the `paths` argumentz9.0.0)r   r   r   r   r4   r>   )r!   r5   s     r   installed_distributionsrA   j   se     U6]*u7&&''MN
 	
 U7^++E22'u55r   )r8   r(   ostypingr   r   r   r   pip_api._callr   pip_api.exceptionsr   !pip_api._vendor.packaging.versionr   r
   r   r4   PathLiker>   r   rA   r    r   r   <module>rH      s     	 	 ' '   ' 3
 
B B T"++5F 8 B
6
6 $R[[ 1
6	#|

6r   