o
    Vh\                     @  s   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 erDd d	lmZ d d
lmZ d dlmZ G dd deZdS )    )annotations)TYPE_CHECKING)ClassVar)argument)option)	Verbosity)InitCommand)ShowCommand)Argument)Option)Rowsc                   @  s   e Zd ZU dZdZedddddgZded< ed	d
ddddedddddedddedddgZ	ded< ddgZ
ded< d ddZdS )!DebugResolveCommandzdebug resolvezDebugs dependency resolution.packagezThe packages to resolve.T)optionalmultiplezClassVar[list[Argument]]	argumentsextrasEz&Extras to activate for the dependency.F)flagr   pythonNz(Python version(s) to use for resolution.)r   treezDisplay the dependency tree.installz4Show what would be installed for the current system.zClassVar[list[Option]]optionsz#poetry.repositories.pypi_repositoryzpoetry.inspection.infozClassVar[list[str]]loggersreturnintc                 C  s,  ddl m} ddlm} ddlm} ddlm} ddlm	} ddl
m} ddlm} | d	}|s6| jj}	nW| jj| _|| jjj| jjj}	| jjj}
| jjtj | |}| jj|
 |D ]+}|d
}t|tsoJ g }| dD ]}||  7 }qv||d< |	!|"|| qa| dp| jjj#|	_#| jj}||	|g g | j}|$ % }| &d | &d | &d | dr| ' (d}t|t)sJ |*| j dd |D }|	j+}|D ]}|D ]}|j|jkr|,| j||  nqqdS | j-dd}|j./dd g }| drV|| j0 }|| jj1d}|d}|D ]	}|2|j q"|3| ||	|g g | }|4| |$ % }W d    n	1 sQw   Y  |D ]2}| drf|j5rfqX|j}d|j6 dd|j dg}|j78 st|j7|d< |9| qX|:| |;  dS )Nr   )NullIO)ProjectPackage)Factory)Solver)
Repository)RepositoryPool)
EnvManagerr   namer   r    zResolution results:r   showc                 S  s   g | ]}|j qS  )r   ).0opr&   r&   y/var/www/html/construction_image-detection-poc/venv/lib/python3.10/site-packages/poetry/console/commands/debug/resolve.py
<listcomp>i   s    z.DebugResolveCommand.handle.<locals>.<listcomp>compact)style r   )configzpoetry-lockedz<c1>z</c1>z<b>z</b>   )<cleo.io.null_ior   $poetry.core.packages.project_packager   poetry.factoryr   poetry.puzzle.solverr   poetry.repositories.repositoryr    #poetry.repositories.repository_poolr!   poetry.utils.envr"   r   poetryr   pool_poolr#   versioniooutput	verbosityset_verbosityr   QUIET_determine_requirementspop
isinstancestrr   splitadd_dependencycreate_dependencypython_versionssolvecalculate_operationslineget_applicationfindr	   init_stylesall_requiresdisplay_package_treetabler,   set_vertical_border_charsgetr.   add_packageadd_repositoryuse_environmentskippedcomplete_namemarkeris_anyappendset_rowsrender)selfr   r   r   r   r    r!   r"   packagesr   r=   requirements
constraintr#   r   extrar8   solveropsshow_commandrequirespkgrequirerP   rowsenvlocked_repositoryr(   rowr&   r&   r)   handle-   s   












zDebugResolveCommand.handle)r   r   )__name__
__module____qualname__r#   descriptionr   r   __annotations__r   r   r   rl   r&   r&   r&   r)   r      s(   
 

r   N)
__future__r   typingr   r   cleo.helpersr   r   cleo.io.outputs.outputr   poetry.console.commands.initr   poetry.console.commands.showr	   cleo.io.inputs.argumentr
   cleo.io.inputs.optionr   cleo.ui.tabler   r   r&   r&   r&   r)   <module>   s    