
    Kui                         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y)    )Iterable)Path)PackagePackageArchivePackageDirectoryPackageSdist
PackageVcsPackageWheelPylock)Version)ArchiveInfoDirInfoVcsInfo)Link)InstallRequirement)url_to_pathireqbase_dirreturnc           	         |j                         }| j                         }| j                  }|sJ d }d }d }d }d }d }	| j                  rt	        |j
                  t              rct        |j
                  j                  |j                  d |j
                  j                  |j
                  j                  |j                        }nt	        |j
                  t              rt        t        t!        |j                              j                         j#                  |      j%                         |j
                  j&                  r|j
                  j&                  nd |j                        }n\t	        |j
                  t(              rX|j
                  j*                  s
t-               t/        |j                  d |j
                  j*                  |j                        }nt-               |j0                  }t	        |j
                  t(              r|j
                  j*                  s
t-               t3        |j                        }
|
j4                  r8t7        |
j8                  |j                  |j
                  j*                        g}	nAt;        |
j8                  |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              d/root/.openclaw/workspace/chatterbox_venv/lib/python3.12/site-packages/pip/_internal/utils/pylock.py(_pylock_package_from_install_requirementr;      s]    !H==?D&&M=OKOMN~~m(('2$"''++!%%#0#5#5#H#H',,66*77K **G4 0]%6%678WY [*XZ 4A3E3E3N3NM&&//TX*77! **K8 %%,,)++,!%%$))00*77	O &'',,m((+6 %%,,)++))*D}} !]])--,1188" !-%))(--44! &''  #     install_requirementsc                 \    t        t        d      dt        fd| D        d             S )Nz1.0pipc              3   6   K   | ]  }t        |        y wN)r;   ).0r   r   s     r:   	<genexpr>z3pylock_from_install_requirements.<locals>.<genexpr>n   s        9xHs   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   s6     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      ss    $    2 I I * < 0O
O(,OOd"#56BFr<   