o
    hi                     @   s   d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ d dlmZ d d	lmZ d d
lmZmZ d dlmZ d dlmZ e eZG dd deZdS )    N)Values)Any)default_environment)
print_json)__version__)
cmdoptions)Command)SUCCESS)BaseDistributionget_environment)stdlib_pkgs)path_to_urlc                   @   sV   e Zd ZdZdZdZdddZded	ee	 de
fd
dZdedee	ef fddZdS )InspectCommandzZ
    Inspect the content of a Python environment and produce a report in JSON format.
    Tz
      %prog [options]returnNc                 C   sN   | j jddddd | j jdddddd	 | j t  | jd
| j  d S )Nz--local
store_trueFzSIf in a virtualenv that has global access, do not list globally-installed packages.)actiondefaulthelpz--useruserz,Only output packages installed in user-site.)destr   r   r   r   )cmd_opts
add_optionr   	list_pathparserinsert_option_groupself r   Q/var/www/html/venv/lib/python3.10/site-packages/pip/_internal/commands/inspect.pyadd_options   s   	zInspectCommand.add_optionsoptionsargsc                    sT   t | t|jj|j|jttd}dt	 fdd|D t
 d}t|d tS )N)
local_only	user_onlyskip1c                    s   g | ]}  |qS r   )_dist_to_dict).0distr   r   r   
<listcomp>:   s    z&InspectCommand.run.<locals>.<listcomp>)versionpip_version	installedenvironment)data)r   check_list_path_optionr   pathiter_installed_distributionslocalr   setr   r   r   r   r	   )r   r    r!   distsoutputr   r   r   run0   s   


zInspectCommand.runr(   c                 C   sv   |j |jd}|j}|d ur| |d< n|j}|d ur't|ddid|d< |j}|jr1||d< |jr9|j|d< |S )N)metadatametadata_location
direct_urleditableT)urldir_info	installer	requested)	metadata_dictinfo_locationr9   to_dicteditable_project_locationr   r=   installed_with_dist_infor>   )r   r(   resr9   rB   r=   r   r   r   r&   A   s$   

zInspectCommand._dist_to_dict)r   N)__name__
__module____qualname____doc__ignore_require_venvusager   r   liststrintr6   r
   dictr   r&   r   r   r   r   r      s    
r   )loggingoptparser   typingr   pip._vendor.packaging.markersr   pip._vendor.richr   pipr   pip._internal.clir   pip._internal.cli.base_commandr   pip._internal.cli.status_codesr	   pip._internal.metadatar
   r   pip._internal.utils.compatr   pip._internal.utils.urlsr   	getLoggerrE   loggerr   r   r   r   r   <module>   s    
