
    VPi                         d dl mZ d dlmZ d dlmZmZmZmZm	Z	m
Z
mZ d dlmZ d dlmZmZmZ d dlmZ d dlmZ d dlmZ d	ed
edefdZdee         d
edefdZdS )    )Iterable)Path)PackagePackageArchivePackageDirectoryPackageSdist
PackageVcsPackageWheelPylock)Version)ArchiveInfoDirInfoVcsInfo)Link)InstallRequirement)url_to_pathireqbase_dirreturnc           	         |                                 }|                                 }| j        }|sJ d }d }d }d }d }d }	| j        rdt	          |j        t                    r?t          |j        j        |j	        d |j        j
        |j        j        |j                  }nt	          |j        t                    rt          t          t!          |j	                                                                                 |                                          |j        j        r|j        j        nd |j                  }nt	          |j        t(                    rB|j        j        st-                      t/          |j	        d |j        j        |j                  }nt-                      |j        }t	          |j        t(                    r|j        j        st-                      t3          |j	                  }
|
j        r(t7          |
j        |j	        |j        j                  g}	n5t;          |
j        |j	        |j        j                  }nt-                      t=          |j        ||||||	          S )N)typeurlpathrequested_revision	commit_idsubdirectory)r   editabler   )r   r   hashesr   )namer   r   )r   versionvcs	directoryarchivesdistwheels) resolveget_distdownload_info	is_direct
isinstanceinfor   r	   r!   r   r   r   r   r   r   r   r   relative_toas_posixr   r   r   NotImplementedErrorr   r    r   is_wheelr
   filenamer   r   canonical_name)r   r   distr(   package_versionpackage_vcspackage_directorypackage_archivepackage_sdistpackage_wheelslinks              n/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/pip/_internal/utils/pylock.py(_pylock_package_from_install_requirementr;      s    !!H==??D&M=OKOMN~ 9(m('22 !	($"'+!%#0#5#H',6*7  KK *G44 	( 0]%67788WYY [**XZZ 4A3E3NXM&//TX*7! ! ! *K88 	( %, ,)+++,!%$)0*7	  OO &''',m(+66 	( %, ,)+++)**D}  !])-,18  " !-%)(-4! ! ! &''' #       install_requirementsc                 z    t          t          d          dt          fd| D             d                     S )Nz1.0pipc              3   8   K   | ]}t          |          V  d S N)r;   ).0r   r   s     r:   	<genexpr>z3pylock_from_install_requirements.<locals>.<genexpr>n   sA         9xHH     r<   c                     | j         S rA   )r   )ps    r:   <lambda>z2pylock_from_install_requirements.<locals>.<lambda>r   s    !& r<   )key)lock_version
created_bypackages)r   r   sorted)r=   r   s    `r:    pylock_from_install_requirementsrL   g   sh     U^^   0   ! 
 
 

 
 
 
r<   N)collections.abcr   pathlibr   pip._vendor.packaging.pylockr   r   r   r   r	   r
   r   pip._vendor.packaging.versionr   pip._internal.models.direct_urlr   r   r   pip._internal.models.linkr   pip._internal.req.req_installr   pip._internal.utils.urlsr   r;   rL    r<   r:   <module>rV      s[   $ $ $ $ $ $                        2 1 1 1 1 1 I I I I I I I I I I * * * * * * < < < < < < 0 0 0 0 0 0O
O(,OO O O Od"#56BF     r<   